/* cyrillic-ext */
@font-face {
  font-family: 'Roboto';
  font-style: normal;
  font-weight: 100;
  src: local('Roboto Thin'), local('Roboto-Thin'), url(/assets/fonts/Roboto-100-cyrillic-ext1.d41d8cd9.woff2) format('woff2');
  unicode-range: U+0460-052F, U+1C80-1C88, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}
/* cyrillic */
@font-face {
  font-family: 'Roboto';
  font-style: normal;
  font-weight: 100;
  src: local('Roboto Thin'), local('Roboto-Thin'), url(/assets/fonts/Roboto-100-cyrillic2.d41d8cd9.woff2) format('woff2');
  unicode-range: U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
/* greek-ext */
@font-face {
  font-family: 'Roboto';
  font-style: normal;
  font-weight: 100;
  src: local('Roboto Thin'), local('Roboto-Thin'), url(/assets/fonts/Roboto-100-greek-ext3.d41d8cd9.woff2) format('woff2');
  unicode-range: U+1F00-1FFF;
}
/* greek */
@font-face {
  font-family: 'Roboto';
  font-style: normal;
  font-weight: 100;
  src: local('Roboto Thin'), local('Roboto-Thin'), url(/assets/fonts/Roboto-100-greek4.d41d8cd9.woff2) format('woff2');
  unicode-range: U+0370-03FF;
}
/* vietnamese */
@font-face {
  font-family: 'Roboto';
  font-style: normal;
  font-weight: 100;
  src: local('Roboto Thin'), local('Roboto-Thin'), url(/assets/fonts/Roboto-100-vietnamese5.d41d8cd9.woff2) format('woff2');
  unicode-range: U+0102-0103, U+0110-0111, U+1EA0-1EF9, U+20AB;
}
/* latin-ext */
@font-face {
  font-family: 'Roboto';
  font-style: normal;
  font-weight: 100;
  src: local('Roboto Thin'), local('Roboto-Thin'), url(/assets/fonts/Roboto-100-latin-ext6.d41d8cd9.woff2) format('woff2');
  unicode-range: U+0100-024F, U+0259, U+1E00-1EFF, U+2020, U+20A0-20AB, U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Roboto';
  font-style: normal;
  font-weight: 100;
  src: local('Roboto Thin'), local('Roboto-Thin'), url(/assets/fonts/Roboto-100-latin7.d41d8cd9.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* cyrillic-ext */
@font-face {
  font-family: 'Roboto';
  font-style: normal;
  font-weight: 300;
  src: local('Roboto Light'), local('Roboto-Light'), url(/assets/fonts/Roboto-300-cyrillic-ext8.d41d8cd9.woff2) format('woff2');
  unicode-range: U+0460-052F, U+1C80-1C88, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}
/* cyrillic */
@font-face {
  font-family: 'Roboto';
  font-style: normal;
  font-weight: 300;
  src: local('Roboto Light'), local('Roboto-Light'), url(/assets/fonts/Roboto-300-cyrillic9.d41d8cd9.woff2) format('woff2');
  unicode-range: U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
/* greek-ext */
@font-face {
  font-family: 'Roboto';
  font-style: normal;
  font-weight: 300;
  src: local('Roboto Light'), local('Roboto-Light'), url(/assets/fonts/Roboto-300-greek-ext10.d41d8cd9.woff2) format('woff2');
  unicode-range: U+1F00-1FFF;
}
/* greek */
@font-face {
  font-family: 'Roboto';
  font-style: normal;
  font-weight: 300;
  src: local('Roboto Light'), local('Roboto-Light'), url(/assets/fonts/Roboto-300-greek11.d41d8cd9.woff2) format('woff2');
  unicode-range: U+0370-03FF;
}
/* vietnamese */
@font-face {
  font-family: 'Roboto';
  font-style: normal;
  font-weight: 300;
  src: local('Roboto Light'), local('Roboto-Light'), url(/assets/fonts/Roboto-300-vietnamese12.d41d8cd9.woff2) format('woff2');
  unicode-range: U+0102-0103, U+0110-0111, U+1EA0-1EF9, U+20AB;
}
/* latin-ext */
@font-face {
  font-family: 'Roboto';
  font-style: normal;
  font-weight: 300;
  src: local('Roboto Light'), local('Roboto-Light'), url(/assets/fonts/Roboto-300-latin-ext13.d41d8cd9.woff2) format('woff2');
  unicode-range: U+0100-024F, U+0259, U+1E00-1EFF, U+2020, U+20A0-20AB, U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Roboto';
  font-style: normal;
  font-weight: 300;
  src: local('Roboto Light'), local('Roboto-Light'), url(/assets/fonts/Roboto-300-latin14.d41d8cd9.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* cyrillic-ext */
@font-face {
  font-family: 'Roboto';
  font-style: normal;
  font-weight: 400;
  src: local('Roboto'), local('Roboto-Regular'), url(/assets/fonts/Roboto-400-cyrillic-ext15.d41d8cd9.woff2) format('woff2');
  unicode-range: U+0460-052F, U+1C80-1C88, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}
/* cyrillic */
@font-face {
  font-family: 'Roboto';
  font-style: normal;
  font-weight: 400;
  src: local('Roboto'), local('Roboto-Regular'), url(/assets/fonts/Roboto-400-cyrillic16.d41d8cd9.woff2) format('woff2');
  unicode-range: U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
/* greek-ext */
@font-face {
  font-family: 'Roboto';
  font-style: normal;
  font-weight: 400;
  src: local('Roboto'), local('Roboto-Regular'), url(/assets/fonts/Roboto-400-greek-ext17.d41d8cd9.woff2) format('woff2');
  unicode-range: U+1F00-1FFF;
}
/* greek */
@font-face {
  font-family: 'Roboto';
  font-style: normal;
  font-weight: 400;
  src: local('Roboto'), local('Roboto-Regular'), url(/assets/fonts/Roboto-400-greek18.d41d8cd9.woff2) format('woff2');
  unicode-range: U+0370-03FF;
}
/* vietnamese */
@font-face {
  font-family: 'Roboto';
  font-style: normal;
  font-weight: 400;
  src: local('Roboto'), local('Roboto-Regular'), url(/assets/fonts/Roboto-400-vietnamese19.d41d8cd9.woff2) format('woff2');
  unicode-range: U+0102-0103, U+0110-0111, U+1EA0-1EF9, U+20AB;
}
/* latin-ext */
@font-face {
  font-family: 'Roboto';
  font-style: normal;
  font-weight: 400;
  src: local('Roboto'), local('Roboto-Regular'), url(/assets/fonts/Roboto-400-latin-ext20.d41d8cd9.woff2) format('woff2');
  unicode-range: U+0100-024F, U+0259, U+1E00-1EFF, U+2020, U+20A0-20AB, U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Roboto';
  font-style: normal;
  font-weight: 400;
  src: local('Roboto'), local('Roboto-Regular'), url(/assets/fonts/Roboto-400-latin21.d41d8cd9.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* cyrillic-ext */
@font-face {
  font-family: 'Roboto';
  font-style: normal;
  font-weight: 500;
  src: local('Roboto Medium'), local('Roboto-Medium'), url(/assets/fonts/Roboto-500-cyrillic-ext22.d41d8cd9.woff2) format('woff2');
  unicode-range: U+0460-052F, U+1C80-1C88, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}
/* cyrillic */
@font-face {
  font-family: 'Roboto';
  font-style: normal;
  font-weight: 500;
  src: local('Roboto Medium'), local('Roboto-Medium'), url(/assets/fonts/Roboto-500-cyrillic23.d41d8cd9.woff2) format('woff2');
  unicode-range: U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
/* greek-ext */
@font-face {
  font-family: 'Roboto';
  font-style: normal;
  font-weight: 500;
  src: local('Roboto Medium'), local('Roboto-Medium'), url(/assets/fonts/Roboto-500-greek-ext24.d41d8cd9.woff2) format('woff2');
  unicode-range: U+1F00-1FFF;
}
/* greek */
@font-face {
  font-family: 'Roboto';
  font-style: normal;
  font-weight: 500;
  src: local('Roboto Medium'), local('Roboto-Medium'), url(/assets/fonts/Roboto-500-greek25.d41d8cd9.woff2) format('woff2');
  unicode-range: U+0370-03FF;
}
/* vietnamese */
@font-face {
  font-family: 'Roboto';
  font-style: normal;
  font-weight: 500;
  src: local('Roboto Medium'), local('Roboto-Medium'), url(/assets/fonts/Roboto-500-vietnamese26.d41d8cd9.woff2) format('woff2');
  unicode-range: U+0102-0103, U+0110-0111, U+1EA0-1EF9, U+20AB;
}
/* latin-ext */
@font-face {
  font-family: 'Roboto';
  font-style: normal;
  font-weight: 500;
  src: local('Roboto Medium'), local('Roboto-Medium'), url(/assets/fonts/Roboto-500-latin-ext27.d41d8cd9.woff2) format('woff2');
  unicode-range: U+0100-024F, U+0259, U+1E00-1EFF, U+2020, U+20A0-20AB, U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Roboto';
  font-style: normal;
  font-weight: 500;
  src: local('Roboto Medium'), local('Roboto-Medium'), url(/assets/fonts/Roboto-500-latin28.d41d8cd9.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* cyrillic-ext */
@font-face {
  font-family: 'Roboto';
  font-style: normal;
  font-weight: 700;
  src: local('Roboto Bold'), local('Roboto-Bold'), url(/assets/fonts/Roboto-700-cyrillic-ext29.d41d8cd9.woff2) format('woff2');
  unicode-range: U+0460-052F, U+1C80-1C88, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}
/* cyrillic */
@font-face {
  font-family: 'Roboto';
  font-style: normal;
  font-weight: 700;
  src: local('Roboto Bold'), local('Roboto-Bold'), url(/assets/fonts/Roboto-700-cyrillic30.d41d8cd9.woff2) format('woff2');
  unicode-range: U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
/* greek-ext */
@font-face {
  font-family: 'Roboto';
  font-style: normal;
  font-weight: 700;
  src: local('Roboto Bold'), local('Roboto-Bold'), url(/assets/fonts/Roboto-700-greek-ext31.d41d8cd9.woff2) format('woff2');
  unicode-range: U+1F00-1FFF;
}
/* greek */
@font-face {
  font-family: 'Roboto';
  font-style: normal;
  font-weight: 700;
  src: local('Roboto Bold'), local('Roboto-Bold'), url(/assets/fonts/Roboto-700-greek32.d41d8cd9.woff2) format('woff2');
  unicode-range: U+0370-03FF;
}
/* vietnamese */
@font-face {
  font-family: 'Roboto';
  font-style: normal;
  font-weight: 700;
  src: local('Roboto Bold'), local('Roboto-Bold'), url(/assets/fonts/Roboto-700-vietnamese33.d41d8cd9.woff2) format('woff2');
  unicode-range: U+0102-0103, U+0110-0111, U+1EA0-1EF9, U+20AB;
}
/* latin-ext */
@font-face {
  font-family: 'Roboto';
  font-style: normal;
  font-weight: 700;
  src: local('Roboto Bold'), local('Roboto-Bold'), url(/assets/fonts/Roboto-700-latin-ext34.d41d8cd9.woff2) format('woff2');
  unicode-range: U+0100-024F, U+0259, U+1E00-1EFF, U+2020, U+20A0-20AB, U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Roboto';
  font-style: normal;
  font-weight: 700;
  src: local('Roboto Bold'), local('Roboto-Bold'), url(/assets/fonts/Roboto-700-latin35.d41d8cd9.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* cyrillic-ext */
@font-face {
  font-family: 'Roboto';
  font-style: normal;
  font-weight: 900;
  src: local('Roboto Black'), local('Roboto-Black'), url(/assets/fonts/Roboto-900-cyrillic-ext36.d41d8cd9.woff2) format('woff2');
  unicode-range: U+0460-052F, U+1C80-1C88, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}
/* cyrillic */
@font-face {
  font-family: 'Roboto';
  font-style: normal;
  font-weight: 900;
  src: local('Roboto Black'), local('Roboto-Black'), url(/assets/fonts/Roboto-900-cyrillic37.d41d8cd9.woff2) format('woff2');
  unicode-range: U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
/* greek-ext */
@font-face {
  font-family: 'Roboto';
  font-style: normal;
  font-weight: 900;
  src: local('Roboto Black'), local('Roboto-Black'), url(/assets/fonts/Roboto-900-greek-ext38.d41d8cd9.woff2) format('woff2');
  unicode-range: U+1F00-1FFF;
}
/* greek */
@font-face {
  font-family: 'Roboto';
  font-style: normal;
  font-weight: 900;
  src: local('Roboto Black'), local('Roboto-Black'), url(/assets/fonts/Roboto-900-greek39.d41d8cd9.woff2) format('woff2');
  unicode-range: U+0370-03FF;
}
/* vietnamese */
@font-face {
  font-family: 'Roboto';
  font-style: normal;
  font-weight: 900;
  src: local('Roboto Black'), local('Roboto-Black'), url(/assets/fonts/Roboto-900-vietnamese40.d41d8cd9.woff2) format('woff2');
  unicode-range: U+0102-0103, U+0110-0111, U+1EA0-1EF9, U+20AB;
}
/* latin-ext */
@font-face {
  font-family: 'Roboto';
  font-style: normal;
  font-weight: 900;
  src: local('Roboto Black'), local('Roboto-Black'), url(/assets/fonts/Roboto-900-latin-ext41.d41d8cd9.woff2) format('woff2');
  unicode-range: U+0100-024F, U+0259, U+1E00-1EFF, U+2020, U+20A0-20AB, U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Roboto';
  font-style: normal;
  font-weight: 900;
  src: local('Roboto Black'), local('Roboto-Black'), url(/assets/fonts/Roboto-900-latin42.d41d8cd9.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

@charset "UTF-8";
/*
 * App Style v0.0.1
 * Copyright 2019 The Home Authors (https://devkit-sio.net)
 *
 * We do not want anyone to see our source code, but if for any reason our code is stolen or otherwise obtained, we want to have a license that does not allow disclosure of any kind.
 */
/*!
 *  Font Awesome 4.7.0 by @davegandy - http://fontawesome.io - @fontawesome
 *  License - http://fontawesome.io/license (Font: SIL OFL 1.1, CSS: MIT License)
 */
/* FONT PATH
 * -------------------------- */
@font-face {
  font-family: 'FontAwesome';
  src: url(/assets/fonts/fontawesome-webfont.674f50d2.eot);
  src: url(/assets/fonts/fontawesome-webfont.674f50d2.eot) format("embedded-opentype"), url(/assets/fonts/fontawesome-webfont.af7ae505.woff2) format("woff2"), url(/assets/fonts/fontawesome-webfont.fee66e71.woff) format("woff"), url(/assets/fonts/fontawesome-webfont.b06871f2.ttf) format("truetype"), url(/assets/images/fontawesome-webfont.912ec66d.svg) format("svg");
  font-weight: normal;
  font-style: normal;
}

.fa {
  display: inline-block;
  font: normal normal normal 14px/1 FontAwesome;
  font-size: inherit;
  text-rendering: auto;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

/* makes the font 33% larger relative to the icon container */
.fa-lg {
  font-size: 1.33333333em;
  line-height: 0.75em;
  vertical-align: -15%;
}

.fa-2x {
  font-size: 2em;
}

.fa-3x {
  font-size: 3em;
}

.fa-4x {
  font-size: 4em;
}

.fa-5x {
  font-size: 5em;
}

.fa-fw {
  width: 1.28571429em;
  text-align: center;
}

.fa-ul {
  padding-left: 0;
  margin-left: 2.14285714em;
  list-style-type: none;
}

.fa-ul > li {
  position: relative;
}

.fa-li {
  position: absolute;
  left: -2.14285714em;
  width: 2.14285714em;
  top: 0.14285714em;
  text-align: center;
}

.fa-li.fa-lg {
  left: -1.85714286em;
}

.fa-border {
  padding: .2em .25em .15em;
  border: solid 0.08em #eeeeee;
  border-radius: .1em;
}

.fa-pull-left {
  float: left;
}

.fa-pull-right {
  float: right;
}

.fa.fa-pull-left {
  margin-right: .3em;
}

.fa.fa-pull-right {
  margin-left: .3em;
}

/* Deprecated as of 4.4.0 */
.pull-right {
  float: right;
}

.pull-left {
  float: left;
}

.fa.pull-left {
  margin-right: .3em;
}

.fa.pull-right {
  margin-left: .3em;
}

.fa-spin {
  -webkit-animation: fa-spin 2s infinite linear;
  animation: fa-spin 2s infinite linear;
}

.fa-pulse {
  -webkit-animation: fa-spin 1s infinite steps(8);
  animation: fa-spin 1s infinite steps(8);
}

@-webkit-keyframes fa-spin {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(359deg);
  }
}

@keyframes fa-spin {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(359deg);
  }
}

.fa-rotate-90 {
  -ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=1)";
  transform: rotate(90deg);
}

.fa-rotate-180 {
  -ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=2)";
  transform: rotate(180deg);
}

.fa-rotate-270 {
  -ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=3)";
  transform: rotate(270deg);
}

.fa-flip-horizontal {
  -ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=0, mirror=1)";
  transform: scale(-1, 1);
}

.fa-flip-vertical {
  -ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=2, mirror=1)";
  transform: scale(1, -1);
}

:root .fa-rotate-90,
:root .fa-rotate-180,
:root .fa-rotate-270,
:root .fa-flip-horizontal,
:root .fa-flip-vertical {
  -webkit-filter: none;
          filter: none;
}

.fa-stack {
  position: relative;
  display: inline-block;
  width: 2em;
  height: 2em;
  line-height: 2em;
  vertical-align: middle;
}

.fa-stack-1x,
.fa-stack-2x {
  position: absolute;
  left: 0;
  width: 100%;
  text-align: center;
}

.fa-stack-1x {
  line-height: inherit;
}

.fa-stack-2x {
  font-size: 2em;
}

.fa-inverse {
  color: #ffffff;
}

/* Font Awesome uses the Unicode Private Use Area (PUA) to ensure screen
   readers do not read off random characters that represent icons */
.fa-glass:before {
  content: "\f000";
}

.fa-music:before {
  content: "\f001";
}

.fa-search:before {
  content: "\f002";
}

.fa-envelope-o:before {
  content: "\f003";
}

.fa-heart:before {
  content: "\f004";
}

.fa-star:before {
  content: "\f005";
}

.fa-star-o:before {
  content: "\f006";
}

.fa-user:before {
  content: "\f007";
}

.fa-film:before {
  content: "\f008";
}

.fa-th-large:before {
  content: "\f009";
}

.fa-th:before {
  content: "\f00a";
}

.fa-th-list:before {
  content: "\f00b";
}

.fa-check:before {
  content: "\f00c";
}

.fa-remove:before,
.fa-close:before,
.fa-times:before {
  content: "\f00d";
}

.fa-search-plus:before {
  content: "\f00e";
}

.fa-search-minus:before {
  content: "\f010";
}

.fa-power-off:before {
  content: "\f011";
}

.fa-signal:before {
  content: "\f012";
}

.fa-gear:before,
.fa-cog:before {
  content: "\f013";
}

.fa-trash-o:before {
  content: "\f014";
}

.fa-home:before {
  content: "\f015";
}

.fa-file-o:before {
  content: "\f016";
}

.fa-clock-o:before {
  content: "\f017";
}

.fa-road:before {
  content: "\f018";
}

.fa-download:before {
  content: "\f019";
}

.fa-arrow-circle-o-down:before {
  content: "\f01a";
}

.fa-arrow-circle-o-up:before {
  content: "\f01b";
}

.fa-inbox:before {
  content: "\f01c";
}

.fa-play-circle-o:before {
  content: "\f01d";
}

.fa-rotate-right:before,
.fa-repeat:before {
  content: "\f01e";
}

.fa-refresh:before {
  content: "\f021";
}

.fa-list-alt:before {
  content: "\f022";
}

.fa-lock:before {
  content: "\f023";
}

.fa-flag:before {
  content: "\f024";
}

.fa-headphones:before {
  content: "\f025";
}

.fa-volume-off:before {
  content: "\f026";
}

.fa-volume-down:before {
  content: "\f027";
}

.fa-volume-up:before {
  content: "\f028";
}

.fa-qrcode:before {
  content: "\f029";
}

.fa-barcode:before {
  content: "\f02a";
}

.fa-tag:before {
  content: "\f02b";
}

.fa-tags:before {
  content: "\f02c";
}

.fa-book:before {
  content: "\f02d";
}

.fa-bookmark:before {
  content: "\f02e";
}

.fa-print:before {
  content: "\f02f";
}

.fa-camera:before {
  content: "\f030";
}

.fa-font:before {
  content: "\f031";
}

.fa-bold:before {
  content: "\f032";
}

.fa-italic:before {
  content: "\f033";
}

.fa-text-height:before {
  content: "\f034";
}

.fa-text-width:before {
  content: "\f035";
}

.fa-align-left:before {
  content: "\f036";
}

.fa-align-center:before {
  content: "\f037";
}

.fa-align-right:before {
  content: "\f038";
}

.fa-align-justify:before {
  content: "\f039";
}

.fa-list:before {
  content: "\f03a";
}

.fa-dedent:before,
.fa-outdent:before {
  content: "\f03b";
}

.fa-indent:before {
  content: "\f03c";
}

.fa-video-camera:before {
  content: "\f03d";
}

.fa-photo:before,
.fa-image:before,
.fa-picture-o:before {
  content: "\f03e";
}

.fa-pencil:before {
  content: "\f040";
}

.fa-map-marker:before {
  content: "\f041";
}

.fa-adjust:before {
  content: "\f042";
}

.fa-tint:before {
  content: "\f043";
}

.fa-edit:before,
.fa-pencil-square-o:before {
  content: "\f044";
}

.fa-share-square-o:before {
  content: "\f045";
}

.fa-check-square-o:before {
  content: "\f046";
}

.fa-arrows:before {
  content: "\f047";
}

.fa-step-backward:before {
  content: "\f048";
}

.fa-fast-backward:before {
  content: "\f049";
}

.fa-backward:before {
  content: "\f04a";
}

.fa-play:before {
  content: "\f04b";
}

.fa-pause:before {
  content: "\f04c";
}

.fa-stop:before {
  content: "\f04d";
}

.fa-forward:before {
  content: "\f04e";
}

.fa-fast-forward:before {
  content: "\f050";
}

.fa-step-forward:before {
  content: "\f051";
}

.fa-eject:before {
  content: "\f052";
}

.fa-chevron-left:before {
  content: "\f053";
}

.fa-chevron-right:before {
  content: "\f054";
}

.fa-plus-circle:before {
  content: "\f055";
}

.fa-minus-circle:before {
  content: "\f056";
}

.fa-times-circle:before {
  content: "\f057";
}

.fa-check-circle:before {
  content: "\f058";
}

.fa-question-circle:before {
  content: "\f059";
}

.fa-info-circle:before {
  content: "\f05a";
}

.fa-crosshairs:before {
  content: "\f05b";
}

.fa-times-circle-o:before {
  content: "\f05c";
}

.fa-check-circle-o:before {
  content: "\f05d";
}

.fa-ban:before {
  content: "\f05e";
}

.fa-arrow-left:before {
  content: "\f060";
}

.fa-arrow-right:before {
  content: "\f061";
}

.fa-arrow-up:before {
  content: "\f062";
}

.fa-arrow-down:before {
  content: "\f063";
}

.fa-mail-forward:before,
.fa-share:before {
  content: "\f064";
}

.fa-expand:before {
  content: "\f065";
}

.fa-compress:before {
  content: "\f066";
}

.fa-plus:before {
  content: "\f067";
}

.fa-minus:before {
  content: "\f068";
}

.fa-asterisk:before {
  content: "\f069";
}

.fa-exclamation-circle:before {
  content: "\f06a";
}

.fa-gift:before {
  content: "\f06b";
}

.fa-leaf:before {
  content: "\f06c";
}

.fa-fire:before {
  content: "\f06d";
}

.fa-eye:before {
  content: "\f06e";
}

.fa-eye-slash:before {
  content: "\f070";
}

.fa-warning:before,
.fa-exclamation-triangle:before {
  content: "\f071";
}

.fa-plane:before {
  content: "\f072";
}

.fa-calendar:before {
  content: "\f073";
}

.fa-random:before {
  content: "\f074";
}

.fa-comment:before {
  content: "\f075";
}

.fa-magnet:before {
  content: "\f076";
}

.fa-chevron-up:before {
  content: "\f077";
}

.fa-chevron-down:before {
  content: "\f078";
}

.fa-retweet:before {
  content: "\f079";
}

.fa-shopping-cart:before {
  content: "\f07a";
}

.fa-folder:before {
  content: "\f07b";
}

.fa-folder-open:before {
  content: "\f07c";
}

.fa-arrows-v:before {
  content: "\f07d";
}

.fa-arrows-h:before {
  content: "\f07e";
}

.fa-bar-chart-o:before,
.fa-bar-chart:before {
  content: "\f080";
}

.fa-twitter-square:before {
  content: "\f081";
}

.fa-facebook-square:before {
  content: "\f082";
}

.fa-camera-retro:before {
  content: "\f083";
}

.fa-key:before {
  content: "\f084";
}

.fa-gears:before,
.fa-cogs:before {
  content: "\f085";
}

.fa-comments:before {
  content: "\f086";
}

.fa-thumbs-o-up:before {
  content: "\f087";
}

.fa-thumbs-o-down:before {
  content: "\f088";
}

.fa-star-half:before {
  content: "\f089";
}

.fa-heart-o:before {
  content: "\f08a";
}

.fa-sign-out:before {
  content: "\f08b";
}

.fa-linkedin-square:before {
  content: "\f08c";
}

.fa-thumb-tack:before {
  content: "\f08d";
}

.fa-external-link:before {
  content: "\f08e";
}

.fa-sign-in:before {
  content: "\f090";
}

.fa-trophy:before {
  content: "\f091";
}

.fa-github-square:before {
  content: "\f092";
}

.fa-upload:before {
  content: "\f093";
}

.fa-lemon-o:before {
  content: "\f094";
}

.fa-phone:before {
  content: "\f095";
}

.fa-square-o:before {
  content: "\f096";
}

.fa-bookmark-o:before {
  content: "\f097";
}

.fa-phone-square:before {
  content: "\f098";
}

.fa-twitter:before {
  content: "\f099";
}

.fa-facebook-f:before,
.fa-facebook:before {
  content: "\f09a";
}

.fa-github:before {
  content: "\f09b";
}

.fa-unlock:before {
  content: "\f09c";
}

.fa-credit-card:before {
  content: "\f09d";
}

.fa-feed:before,
.fa-rss:before {
  content: "\f09e";
}

.fa-hdd-o:before {
  content: "\f0a0";
}

.fa-bullhorn:before {
  content: "\f0a1";
}

.fa-bell:before {
  content: "\f0f3";
}

.fa-certificate:before {
  content: "\f0a3";
}

.fa-hand-o-right:before {
  content: "\f0a4";
}

.fa-hand-o-left:before {
  content: "\f0a5";
}

.fa-hand-o-up:before {
  content: "\f0a6";
}

.fa-hand-o-down:before {
  content: "\f0a7";
}

.fa-arrow-circle-left:before {
  content: "\f0a8";
}

.fa-arrow-circle-right:before {
  content: "\f0a9";
}

.fa-arrow-circle-up:before {
  content: "\f0aa";
}

.fa-arrow-circle-down:before {
  content: "\f0ab";
}

.fa-globe:before {
  content: "\f0ac";
}

.fa-wrench:before {
  content: "\f0ad";
}

.fa-tasks:before {
  content: "\f0ae";
}

.fa-filter:before {
  content: "\f0b0";
}

.fa-briefcase:before {
  content: "\f0b1";
}

.fa-arrows-alt:before {
  content: "\f0b2";
}

.fa-group:before,
.fa-users:before {
  content: "\f0c0";
}

.fa-chain:before,
.fa-link:before {
  content: "\f0c1";
}

.fa-cloud:before {
  content: "\f0c2";
}

.fa-flask:before {
  content: "\f0c3";
}

.fa-cut:before,
.fa-scissors:before {
  content: "\f0c4";
}

.fa-copy:before,
.fa-files-o:before {
  content: "\f0c5";
}

.fa-paperclip:before {
  content: "\f0c6";
}

.fa-save:before,
.fa-floppy-o:before {
  content: "\f0c7";
}

.fa-square:before {
  content: "\f0c8";
}

.fa-navicon:before,
.fa-reorder:before,
.fa-bars:before {
  content: "\f0c9";
}

.fa-list-ul:before {
  content: "\f0ca";
}

.fa-list-ol:before {
  content: "\f0cb";
}

.fa-strikethrough:before {
  content: "\f0cc";
}

.fa-underline:before {
  content: "\f0cd";
}

.fa-table:before {
  content: "\f0ce";
}

.fa-magic:before {
  content: "\f0d0";
}

.fa-truck:before {
  content: "\f0d1";
}

.fa-pinterest:before {
  content: "\f0d2";
}

.fa-pinterest-square:before {
  content: "\f0d3";
}

.fa-google-plus-square:before {
  content: "\f0d4";
}

.fa-google-plus:before {
  content: "\f0d5";
}

.fa-money:before {
  content: "\f0d6";
}

.fa-caret-down:before {
  content: "\f0d7";
}

.fa-caret-up:before {
  content: "\f0d8";
}

.fa-caret-left:before {
  content: "\f0d9";
}

.fa-caret-right:before {
  content: "\f0da";
}

.fa-columns:before {
  content: "\f0db";
}

.fa-unsorted:before,
.fa-sort:before {
  content: "\f0dc";
}

.fa-sort-down:before,
.fa-sort-desc:before {
  content: "\f0dd";
}

.fa-sort-up:before,
.fa-sort-asc:before {
  content: "\f0de";
}

.fa-envelope:before {
  content: "\f0e0";
}

.fa-linkedin:before {
  content: "\f0e1";
}

.fa-rotate-left:before,
.fa-undo:before {
  content: "\f0e2";
}

.fa-legal:before,
.fa-gavel:before {
  content: "\f0e3";
}

.fa-dashboard:before,
.fa-tachometer:before {
  content: "\f0e4";
}

.fa-comment-o:before {
  content: "\f0e5";
}

.fa-comments-o:before {
  content: "\f0e6";
}

.fa-flash:before,
.fa-bolt:before {
  content: "\f0e7";
}

.fa-sitemap:before {
  content: "\f0e8";
}

.fa-umbrella:before {
  content: "\f0e9";
}

.fa-paste:before,
.fa-clipboard:before {
  content: "\f0ea";
}

.fa-lightbulb-o:before {
  content: "\f0eb";
}

.fa-exchange:before {
  content: "\f0ec";
}

.fa-cloud-download:before {
  content: "\f0ed";
}

.fa-cloud-upload:before {
  content: "\f0ee";
}

.fa-user-md:before {
  content: "\f0f0";
}

.fa-stethoscope:before {
  content: "\f0f1";
}

.fa-suitcase:before {
  content: "\f0f2";
}

.fa-bell-o:before {
  content: "\f0a2";
}

.fa-coffee:before {
  content: "\f0f4";
}

.fa-cutlery:before {
  content: "\f0f5";
}

.fa-file-text-o:before {
  content: "\f0f6";
}

.fa-building-o:before {
  content: "\f0f7";
}

.fa-hospital-o:before {
  content: "\f0f8";
}

.fa-ambulance:before {
  content: "\f0f9";
}

.fa-medkit:before {
  content: "\f0fa";
}

.fa-fighter-jet:before {
  content: "\f0fb";
}

.fa-beer:before {
  content: "\f0fc";
}

.fa-h-square:before {
  content: "\f0fd";
}

.fa-plus-square:before {
  content: "\f0fe";
}

.fa-angle-double-left:before {
  content: "\f100";
}

.fa-angle-double-right:before {
  content: "\f101";
}

.fa-angle-double-up:before {
  content: "\f102";
}

.fa-angle-double-down:before {
  content: "\f103";
}

.fa-angle-left:before {
  content: "\f104";
}

.fa-angle-right:before {
  content: "\f105";
}

.fa-angle-up:before {
  content: "\f106";
}

.fa-angle-down:before {
  content: "\f107";
}

.fa-desktop:before {
  content: "\f108";
}

.fa-laptop:before {
  content: "\f109";
}

.fa-tablet:before {
  content: "\f10a";
}

.fa-mobile-phone:before,
.fa-mobile:before {
  content: "\f10b";
}

.fa-circle-o:before {
  content: "\f10c";
}

.fa-quote-left:before {
  content: "\f10d";
}

.fa-quote-right:before {
  content: "\f10e";
}

.fa-spinner:before {
  content: "\f110";
}

.fa-circle:before {
  content: "\f111";
}

.fa-mail-reply:before,
.fa-reply:before {
  content: "\f112";
}

.fa-github-alt:before {
  content: "\f113";
}

.fa-folder-o:before {
  content: "\f114";
}

.fa-folder-open-o:before {
  content: "\f115";
}

.fa-smile-o:before {
  content: "\f118";
}

.fa-frown-o:before {
  content: "\f119";
}

.fa-meh-o:before {
  content: "\f11a";
}

.fa-gamepad:before {
  content: "\f11b";
}

.fa-keyboard-o:before {
  content: "\f11c";
}

.fa-flag-o:before {
  content: "\f11d";
}

.fa-flag-checkered:before {
  content: "\f11e";
}

.fa-terminal:before {
  content: "\f120";
}

.fa-code:before {
  content: "\f121";
}

.fa-mail-reply-all:before,
.fa-reply-all:before {
  content: "\f122";
}

.fa-star-half-empty:before,
.fa-star-half-full:before,
.fa-star-half-o:before {
  content: "\f123";
}

.fa-location-arrow:before {
  content: "\f124";
}

.fa-crop:before {
  content: "\f125";
}

.fa-code-fork:before {
  content: "\f126";
}

.fa-unlink:before,
.fa-chain-broken:before {
  content: "\f127";
}

.fa-question:before {
  content: "\f128";
}

.fa-info:before {
  content: "\f129";
}

.fa-exclamation:before {
  content: "\f12a";
}

.fa-superscript:before {
  content: "\f12b";
}

.fa-subscript:before {
  content: "\f12c";
}

.fa-eraser:before {
  content: "\f12d";
}

.fa-puzzle-piece:before {
  content: "\f12e";
}

.fa-microphone:before {
  content: "\f130";
}

.fa-microphone-slash:before {
  content: "\f131";
}

.fa-shield:before {
  content: "\f132";
}

.fa-calendar-o:before {
  content: "\f133";
}

.fa-fire-extinguisher:before {
  content: "\f134";
}

.fa-rocket:before {
  content: "\f135";
}

.fa-maxcdn:before {
  content: "\f136";
}

.fa-chevron-circle-left:before {
  content: "\f137";
}

.fa-chevron-circle-right:before {
  content: "\f138";
}

.fa-chevron-circle-up:before {
  content: "\f139";
}

.fa-chevron-circle-down:before {
  content: "\f13a";
}

.fa-html5:before {
  content: "\f13b";
}

.fa-css3:before {
  content: "\f13c";
}

.fa-anchor:before {
  content: "\f13d";
}

.fa-unlock-alt:before {
  content: "\f13e";
}

.fa-bullseye:before {
  content: "\f140";
}

.fa-ellipsis-h:before {
  content: "\f141";
}

.fa-ellipsis-v:before {
  content: "\f142";
}

.fa-rss-square:before {
  content: "\f143";
}

.fa-play-circle:before {
  content: "\f144";
}

.fa-ticket:before {
  content: "\f145";
}

.fa-minus-square:before {
  content: "\f146";
}

.fa-minus-square-o:before {
  content: "\f147";
}

.fa-level-up:before {
  content: "\f148";
}

.fa-level-down:before {
  content: "\f149";
}

.fa-check-square:before {
  content: "\f14a";
}

.fa-pencil-square:before {
  content: "\f14b";
}

.fa-external-link-square:before {
  content: "\f14c";
}

.fa-share-square:before {
  content: "\f14d";
}

.fa-compass:before {
  content: "\f14e";
}

.fa-toggle-down:before,
.fa-caret-square-o-down:before {
  content: "\f150";
}

.fa-toggle-up:before,
.fa-caret-square-o-up:before {
  content: "\f151";
}

.fa-toggle-right:before,
.fa-caret-square-o-right:before {
  content: "\f152";
}

.fa-euro:before,
.fa-eur:before {
  content: "\f153";
}

.fa-gbp:before {
  content: "\f154";
}

.fa-dollar:before,
.fa-usd:before {
  content: "\f155";
}

.fa-rupee:before,
.fa-inr:before {
  content: "\f156";
}

.fa-cny:before,
.fa-rmb:before,
.fa-yen:before,
.fa-jpy:before {
  content: "\f157";
}

.fa-ruble:before,
.fa-rouble:before,
.fa-rub:before {
  content: "\f158";
}

.fa-won:before,
.fa-krw:before {
  content: "\f159";
}

.fa-bitcoin:before,
.fa-btc:before {
  content: "\f15a";
}

.fa-file:before {
  content: "\f15b";
}

.fa-file-text:before {
  content: "\f15c";
}

.fa-sort-alpha-asc:before {
  content: "\f15d";
}

.fa-sort-alpha-desc:before {
  content: "\f15e";
}

.fa-sort-amount-asc:before {
  content: "\f160";
}

.fa-sort-amount-desc:before {
  content: "\f161";
}

.fa-sort-numeric-asc:before {
  content: "\f162";
}

.fa-sort-numeric-desc:before {
  content: "\f163";
}

.fa-thumbs-up:before {
  content: "\f164";
}

.fa-thumbs-down:before {
  content: "\f165";
}

.fa-youtube-square:before {
  content: "\f166";
}

.fa-youtube:before {
  content: "\f167";
}

.fa-xing:before {
  content: "\f168";
}

.fa-xing-square:before {
  content: "\f169";
}

.fa-youtube-play:before {
  content: "\f16a";
}

.fa-dropbox:before {
  content: "\f16b";
}

.fa-stack-overflow:before {
  content: "\f16c";
}

.fa-instagram:before {
  content: "\f16d";
}

.fa-flickr:before {
  content: "\f16e";
}

.fa-adn:before {
  content: "\f170";
}

.fa-bitbucket:before {
  content: "\f171";
}

.fa-bitbucket-square:before {
  content: "\f172";
}

.fa-tumblr:before {
  content: "\f173";
}

.fa-tumblr-square:before {
  content: "\f174";
}

.fa-long-arrow-down:before {
  content: "\f175";
}

.fa-long-arrow-up:before {
  content: "\f176";
}

.fa-long-arrow-left:before {
  content: "\f177";
}

.fa-long-arrow-right:before {
  content: "\f178";
}

.fa-apple:before {
  content: "\f179";
}

.fa-windows:before {
  content: "\f17a";
}

.fa-android:before {
  content: "\f17b";
}

.fa-linux:before {
  content: "\f17c";
}

.fa-dribbble:before {
  content: "\f17d";
}

.fa-skype:before {
  content: "\f17e";
}

.fa-foursquare:before {
  content: "\f180";
}

.fa-trello:before {
  content: "\f181";
}

.fa-female:before {
  content: "\f182";
}

.fa-male:before {
  content: "\f183";
}

.fa-gittip:before,
.fa-gratipay:before {
  content: "\f184";
}

.fa-sun-o:before {
  content: "\f185";
}

.fa-moon-o:before {
  content: "\f186";
}

.fa-archive:before {
  content: "\f187";
}

.fa-bug:before {
  content: "\f188";
}

.fa-vk:before {
  content: "\f189";
}

.fa-weibo:before {
  content: "\f18a";
}

.fa-renren:before {
  content: "\f18b";
}

.fa-pagelines:before {
  content: "\f18c";
}

.fa-stack-exchange:before {
  content: "\f18d";
}

.fa-arrow-circle-o-right:before {
  content: "\f18e";
}

.fa-arrow-circle-o-left:before {
  content: "\f190";
}

.fa-toggle-left:before,
.fa-caret-square-o-left:before {
  content: "\f191";
}

.fa-dot-circle-o:before {
  content: "\f192";
}

.fa-wheelchair:before {
  content: "\f193";
}

.fa-vimeo-square:before {
  content: "\f194";
}

.fa-turkish-lira:before,
.fa-try:before {
  content: "\f195";
}

.fa-plus-square-o:before {
  content: "\f196";
}

.fa-space-shuttle:before {
  content: "\f197";
}

.fa-slack:before {
  content: "\f198";
}

.fa-envelope-square:before {
  content: "\f199";
}

.fa-wordpress:before {
  content: "\f19a";
}

.fa-openid:before {
  content: "\f19b";
}

.fa-institution:before,
.fa-bank:before,
.fa-university:before {
  content: "\f19c";
}

.fa-mortar-board:before,
.fa-graduation-cap:before {
  content: "\f19d";
}

.fa-yahoo:before {
  content: "\f19e";
}

.fa-google:before {
  content: "\f1a0";
}

.fa-reddit:before {
  content: "\f1a1";
}

.fa-reddit-square:before {
  content: "\f1a2";
}

.fa-stumbleupon-circle:before {
  content: "\f1a3";
}

.fa-stumbleupon:before {
  content: "\f1a4";
}

.fa-delicious:before {
  content: "\f1a5";
}

.fa-digg:before {
  content: "\f1a6";
}

.fa-pied-piper-pp:before {
  content: "\f1a7";
}

.fa-pied-piper-alt:before {
  content: "\f1a8";
}

.fa-drupal:before {
  content: "\f1a9";
}

.fa-joomla:before {
  content: "\f1aa";
}

.fa-language:before {
  content: "\f1ab";
}

.fa-fax:before {
  content: "\f1ac";
}

.fa-building:before {
  content: "\f1ad";
}

.fa-child:before {
  content: "\f1ae";
}

.fa-paw:before {
  content: "\f1b0";
}

.fa-spoon:before {
  content: "\f1b1";
}

.fa-cube:before {
  content: "\f1b2";
}

.fa-cubes:before {
  content: "\f1b3";
}

.fa-behance:before {
  content: "\f1b4";
}

.fa-behance-square:before {
  content: "\f1b5";
}

.fa-steam:before {
  content: "\f1b6";
}

.fa-steam-square:before {
  content: "\f1b7";
}

.fa-recycle:before {
  content: "\f1b8";
}

.fa-automobile:before,
.fa-car:before {
  content: "\f1b9";
}

.fa-cab:before,
.fa-taxi:before {
  content: "\f1ba";
}

.fa-tree:before {
  content: "\f1bb";
}

.fa-spotify:before {
  content: "\f1bc";
}

.fa-deviantart:before {
  content: "\f1bd";
}

.fa-soundcloud:before {
  content: "\f1be";
}

.fa-database:before {
  content: "\f1c0";
}

.fa-file-pdf-o:before {
  content: "\f1c1";
}

.fa-file-word-o:before {
  content: "\f1c2";
}

.fa-file-excel-o:before {
  content: "\f1c3";
}

.fa-file-powerpoint-o:before {
  content: "\f1c4";
}

.fa-file-photo-o:before,
.fa-file-picture-o:before,
.fa-file-image-o:before {
  content: "\f1c5";
}

.fa-file-zip-o:before,
.fa-file-archive-o:before {
  content: "\f1c6";
}

.fa-file-sound-o:before,
.fa-file-audio-o:before {
  content: "\f1c7";
}

.fa-file-movie-o:before,
.fa-file-video-o:before {
  content: "\f1c8";
}

.fa-file-code-o:before {
  content: "\f1c9";
}

.fa-vine:before {
  content: "\f1ca";
}

.fa-codepen:before {
  content: "\f1cb";
}

.fa-jsfiddle:before {
  content: "\f1cc";
}

.fa-life-bouy:before,
.fa-life-buoy:before,
.fa-life-saver:before,
.fa-support:before,
.fa-life-ring:before {
  content: "\f1cd";
}

.fa-circle-o-notch:before {
  content: "\f1ce";
}

.fa-ra:before,
.fa-resistance:before,
.fa-rebel:before {
  content: "\f1d0";
}

.fa-ge:before,
.fa-empire:before {
  content: "\f1d1";
}

.fa-git-square:before {
  content: "\f1d2";
}

.fa-git:before {
  content: "\f1d3";
}

.fa-y-combinator-square:before,
.fa-yc-square:before,
.fa-hacker-news:before {
  content: "\f1d4";
}

.fa-tencent-weibo:before {
  content: "\f1d5";
}

.fa-qq:before {
  content: "\f1d6";
}

.fa-wechat:before,
.fa-weixin:before {
  content: "\f1d7";
}

.fa-send:before,
.fa-paper-plane:before {
  content: "\f1d8";
}

.fa-send-o:before,
.fa-paper-plane-o:before {
  content: "\f1d9";
}

.fa-history:before {
  content: "\f1da";
}

.fa-circle-thin:before {
  content: "\f1db";
}

.fa-header:before {
  content: "\f1dc";
}

.fa-paragraph:before {
  content: "\f1dd";
}

.fa-sliders:before {
  content: "\f1de";
}

.fa-share-alt:before {
  content: "\f1e0";
}

.fa-share-alt-square:before {
  content: "\f1e1";
}

.fa-bomb:before {
  content: "\f1e2";
}

.fa-soccer-ball-o:before,
.fa-futbol-o:before {
  content: "\f1e3";
}

.fa-tty:before {
  content: "\f1e4";
}

.fa-binoculars:before {
  content: "\f1e5";
}

.fa-plug:before {
  content: "\f1e6";
}

.fa-slideshare:before {
  content: "\f1e7";
}

.fa-twitch:before {
  content: "\f1e8";
}

.fa-yelp:before {
  content: "\f1e9";
}

.fa-newspaper-o:before {
  content: "\f1ea";
}

.fa-wifi:before {
  content: "\f1eb";
}

.fa-calculator:before {
  content: "\f1ec";
}

.fa-paypal:before {
  content: "\f1ed";
}

.fa-google-wallet:before {
  content: "\f1ee";
}

.fa-cc-visa:before {
  content: "\f1f0";
}

.fa-cc-mastercard:before {
  content: "\f1f1";
}

.fa-cc-discover:before {
  content: "\f1f2";
}

.fa-cc-amex:before {
  content: "\f1f3";
}

.fa-cc-paypal:before {
  content: "\f1f4";
}

.fa-cc-stripe:before {
  content: "\f1f5";
}

.fa-bell-slash:before {
  content: "\f1f6";
}

.fa-bell-slash-o:before {
  content: "\f1f7";
}

.fa-trash:before {
  content: "\f1f8";
}

.fa-copyright:before {
  content: "\f1f9";
}

.fa-at:before {
  content: "\f1fa";
}

.fa-eyedropper:before {
  content: "\f1fb";
}

.fa-paint-brush:before {
  content: "\f1fc";
}

.fa-birthday-cake:before {
  content: "\f1fd";
}

.fa-area-chart:before {
  content: "\f1fe";
}

.fa-pie-chart:before {
  content: "\f200";
}

.fa-line-chart:before {
  content: "\f201";
}

.fa-lastfm:before {
  content: "\f202";
}

.fa-lastfm-square:before {
  content: "\f203";
}

.fa-toggle-off:before {
  content: "\f204";
}

.fa-toggle-on:before {
  content: "\f205";
}

.fa-bicycle:before {
  content: "\f206";
}

.fa-bus:before {
  content: "\f207";
}

.fa-ioxhost:before {
  content: "\f208";
}

.fa-angellist:before {
  content: "\f209";
}

.fa-cc:before {
  content: "\f20a";
}

.fa-shekel:before,
.fa-sheqel:before,
.fa-ils:before {
  content: "\f20b";
}

.fa-meanpath:before {
  content: "\f20c";
}

.fa-buysellads:before {
  content: "\f20d";
}

.fa-connectdevelop:before {
  content: "\f20e";
}

.fa-dashcube:before {
  content: "\f210";
}

.fa-forumbee:before {
  content: "\f211";
}

.fa-leanpub:before {
  content: "\f212";
}

.fa-sellsy:before {
  content: "\f213";
}

.fa-shirtsinbulk:before {
  content: "\f214";
}

.fa-simplybuilt:before {
  content: "\f215";
}

.fa-skyatlas:before {
  content: "\f216";
}

.fa-cart-plus:before {
  content: "\f217";
}

.fa-cart-arrow-down:before {
  content: "\f218";
}

.fa-diamond:before {
  content: "\f219";
}

.fa-ship:before {
  content: "\f21a";
}

.fa-user-secret:before {
  content: "\f21b";
}

.fa-motorcycle:before {
  content: "\f21c";
}

.fa-street-view:before {
  content: "\f21d";
}

.fa-heartbeat:before {
  content: "\f21e";
}

.fa-venus:before {
  content: "\f221";
}

.fa-mars:before {
  content: "\f222";
}

.fa-mercury:before {
  content: "\f223";
}

.fa-intersex:before,
.fa-transgender:before {
  content: "\f224";
}

.fa-transgender-alt:before {
  content: "\f225";
}

.fa-venus-double:before {
  content: "\f226";
}

.fa-mars-double:before {
  content: "\f227";
}

.fa-venus-mars:before {
  content: "\f228";
}

.fa-mars-stroke:before {
  content: "\f229";
}

.fa-mars-stroke-v:before {
  content: "\f22a";
}

.fa-mars-stroke-h:before {
  content: "\f22b";
}

.fa-neuter:before {
  content: "\f22c";
}

.fa-genderless:before {
  content: "\f22d";
}

.fa-facebook-official:before {
  content: "\f230";
}

.fa-pinterest-p:before {
  content: "\f231";
}

.fa-whatsapp:before {
  content: "\f232";
}

.fa-server:before {
  content: "\f233";
}

.fa-user-plus:before {
  content: "\f234";
}

.fa-user-times:before {
  content: "\f235";
}

.fa-hotel:before,
.fa-bed:before {
  content: "\f236";
}

.fa-viacoin:before {
  content: "\f237";
}

.fa-train:before {
  content: "\f238";
}

.fa-subway:before {
  content: "\f239";
}

.fa-medium:before {
  content: "\f23a";
}

.fa-yc:before,
.fa-y-combinator:before {
  content: "\f23b";
}

.fa-optin-monster:before {
  content: "\f23c";
}

.fa-opencart:before {
  content: "\f23d";
}

.fa-expeditedssl:before {
  content: "\f23e";
}

.fa-battery-4:before,
.fa-battery:before,
.fa-battery-full:before {
  content: "\f240";
}

.fa-battery-3:before,
.fa-battery-three-quarters:before {
  content: "\f241";
}

.fa-battery-2:before,
.fa-battery-half:before {
  content: "\f242";
}

.fa-battery-1:before,
.fa-battery-quarter:before {
  content: "\f243";
}

.fa-battery-0:before,
.fa-battery-empty:before {
  content: "\f244";
}

.fa-mouse-pointer:before {
  content: "\f245";
}

.fa-i-cursor:before {
  content: "\f246";
}

.fa-object-group:before {
  content: "\f247";
}

.fa-object-ungroup:before {
  content: "\f248";
}

.fa-sticky-note:before {
  content: "\f249";
}

.fa-sticky-note-o:before {
  content: "\f24a";
}

.fa-cc-jcb:before {
  content: "\f24b";
}

.fa-cc-diners-club:before {
  content: "\f24c";
}

.fa-clone:before {
  content: "\f24d";
}

.fa-balance-scale:before {
  content: "\f24e";
}

.fa-hourglass-o:before {
  content: "\f250";
}

.fa-hourglass-1:before,
.fa-hourglass-start:before {
  content: "\f251";
}

.fa-hourglass-2:before,
.fa-hourglass-half:before {
  content: "\f252";
}

.fa-hourglass-3:before,
.fa-hourglass-end:before {
  content: "\f253";
}

.fa-hourglass:before {
  content: "\f254";
}

.fa-hand-grab-o:before,
.fa-hand-rock-o:before {
  content: "\f255";
}

.fa-hand-stop-o:before,
.fa-hand-paper-o:before {
  content: "\f256";
}

.fa-hand-scissors-o:before {
  content: "\f257";
}

.fa-hand-lizard-o:before {
  content: "\f258";
}

.fa-hand-spock-o:before {
  content: "\f259";
}

.fa-hand-pointer-o:before {
  content: "\f25a";
}

.fa-hand-peace-o:before {
  content: "\f25b";
}

.fa-trademark:before {
  content: "\f25c";
}

.fa-registered:before {
  content: "\f25d";
}

.fa-creative-commons:before {
  content: "\f25e";
}

.fa-gg:before {
  content: "\f260";
}

.fa-gg-circle:before {
  content: "\f261";
}

.fa-tripadvisor:before {
  content: "\f262";
}

.fa-odnoklassniki:before {
  content: "\f263";
}

.fa-odnoklassniki-square:before {
  content: "\f264";
}

.fa-get-pocket:before {
  content: "\f265";
}

.fa-wikipedia-w:before {
  content: "\f266";
}

.fa-safari:before {
  content: "\f267";
}

.fa-chrome:before {
  content: "\f268";
}

.fa-firefox:before {
  content: "\f269";
}

.fa-opera:before {
  content: "\f26a";
}

.fa-internet-explorer:before {
  content: "\f26b";
}

.fa-tv:before,
.fa-television:before {
  content: "\f26c";
}

.fa-contao:before {
  content: "\f26d";
}

.fa-500px:before {
  content: "\f26e";
}

.fa-amazon:before {
  content: "\f270";
}

.fa-calendar-plus-o:before {
  content: "\f271";
}

.fa-calendar-minus-o:before {
  content: "\f272";
}

.fa-calendar-times-o:before {
  content: "\f273";
}

.fa-calendar-check-o:before {
  content: "\f274";
}

.fa-industry:before {
  content: "\f275";
}

.fa-map-pin:before {
  content: "\f276";
}

.fa-map-signs:before {
  content: "\f277";
}

.fa-map-o:before {
  content: "\f278";
}

.fa-map:before {
  content: "\f279";
}

.fa-commenting:before {
  content: "\f27a";
}

.fa-commenting-o:before {
  content: "\f27b";
}

.fa-houzz:before {
  content: "\f27c";
}

.fa-vimeo:before {
  content: "\f27d";
}

.fa-black-tie:before {
  content: "\f27e";
}

.fa-fonticons:before {
  content: "\f280";
}

.fa-reddit-alien:before {
  content: "\f281";
}

.fa-edge:before {
  content: "\f282";
}

.fa-credit-card-alt:before {
  content: "\f283";
}

.fa-codiepie:before {
  content: "\f284";
}

.fa-modx:before {
  content: "\f285";
}

.fa-fort-awesome:before {
  content: "\f286";
}

.fa-usb:before {
  content: "\f287";
}

.fa-product-hunt:before {
  content: "\f288";
}

.fa-mixcloud:before {
  content: "\f289";
}

.fa-scribd:before {
  content: "\f28a";
}

.fa-pause-circle:before {
  content: "\f28b";
}

.fa-pause-circle-o:before {
  content: "\f28c";
}

.fa-stop-circle:before {
  content: "\f28d";
}

.fa-stop-circle-o:before {
  content: "\f28e";
}

.fa-shopping-bag:before {
  content: "\f290";
}

.fa-shopping-basket:before {
  content: "\f291";
}

.fa-hashtag:before {
  content: "\f292";
}

.fa-bluetooth:before {
  content: "\f293";
}

.fa-bluetooth-b:before {
  content: "\f294";
}

.fa-percent:before {
  content: "\f295";
}

.fa-gitlab:before {
  content: "\f296";
}

.fa-wpbeginner:before {
  content: "\f297";
}

.fa-wpforms:before {
  content: "\f298";
}

.fa-envira:before {
  content: "\f299";
}

.fa-universal-access:before {
  content: "\f29a";
}

.fa-wheelchair-alt:before {
  content: "\f29b";
}

.fa-question-circle-o:before {
  content: "\f29c";
}

.fa-blind:before {
  content: "\f29d";
}

.fa-audio-description:before {
  content: "\f29e";
}

.fa-volume-control-phone:before {
  content: "\f2a0";
}

.fa-braille:before {
  content: "\f2a1";
}

.fa-assistive-listening-systems:before {
  content: "\f2a2";
}

.fa-asl-interpreting:before,
.fa-american-sign-language-interpreting:before {
  content: "\f2a3";
}

.fa-deafness:before,
.fa-hard-of-hearing:before,
.fa-deaf:before {
  content: "\f2a4";
}

.fa-glide:before {
  content: "\f2a5";
}

.fa-glide-g:before {
  content: "\f2a6";
}

.fa-signing:before,
.fa-sign-language:before {
  content: "\f2a7";
}

.fa-low-vision:before {
  content: "\f2a8";
}

.fa-viadeo:before {
  content: "\f2a9";
}

.fa-viadeo-square:before {
  content: "\f2aa";
}

.fa-snapchat:before {
  content: "\f2ab";
}

.fa-snapchat-ghost:before {
  content: "\f2ac";
}

.fa-snapchat-square:before {
  content: "\f2ad";
}

.fa-pied-piper:before {
  content: "\f2ae";
}

.fa-first-order:before {
  content: "\f2b0";
}

.fa-yoast:before {
  content: "\f2b1";
}

.fa-themeisle:before {
  content: "\f2b2";
}

.fa-google-plus-circle:before,
.fa-google-plus-official:before {
  content: "\f2b3";
}

.fa-fa:before,
.fa-font-awesome:before {
  content: "\f2b4";
}

.fa-handshake-o:before {
  content: "\f2b5";
}

.fa-envelope-open:before {
  content: "\f2b6";
}

.fa-envelope-open-o:before {
  content: "\f2b7";
}

.fa-linode:before {
  content: "\f2b8";
}

.fa-address-book:before {
  content: "\f2b9";
}

.fa-address-book-o:before {
  content: "\f2ba";
}

.fa-vcard:before,
.fa-address-card:before {
  content: "\f2bb";
}

.fa-vcard-o:before,
.fa-address-card-o:before {
  content: "\f2bc";
}

.fa-user-circle:before {
  content: "\f2bd";
}

.fa-user-circle-o:before {
  content: "\f2be";
}

.fa-user-o:before {
  content: "\f2c0";
}

.fa-id-badge:before {
  content: "\f2c1";
}

.fa-drivers-license:before,
.fa-id-card:before {
  content: "\f2c2";
}

.fa-drivers-license-o:before,
.fa-id-card-o:before {
  content: "\f2c3";
}

.fa-quora:before {
  content: "\f2c4";
}

.fa-free-code-camp:before {
  content: "\f2c5";
}

.fa-telegram:before {
  content: "\f2c6";
}

.fa-thermometer-4:before,
.fa-thermometer:before,
.fa-thermometer-full:before {
  content: "\f2c7";
}

.fa-thermometer-3:before,
.fa-thermometer-three-quarters:before {
  content: "\f2c8";
}

.fa-thermometer-2:before,
.fa-thermometer-half:before {
  content: "\f2c9";
}

.fa-thermometer-1:before,
.fa-thermometer-quarter:before {
  content: "\f2ca";
}

.fa-thermometer-0:before,
.fa-thermometer-empty:before {
  content: "\f2cb";
}

.fa-shower:before {
  content: "\f2cc";
}

.fa-bathtub:before,
.fa-s15:before,
.fa-bath:before {
  content: "\f2cd";
}

.fa-podcast:before {
  content: "\f2ce";
}

.fa-window-maximize:before {
  content: "\f2d0";
}

.fa-window-minimize:before {
  content: "\f2d1";
}

.fa-window-restore:before {
  content: "\f2d2";
}

.fa-times-rectangle:before,
.fa-window-close:before {
  content: "\f2d3";
}

.fa-times-rectangle-o:before,
.fa-window-close-o:before {
  content: "\f2d4";
}

.fa-bandcamp:before {
  content: "\f2d5";
}

.fa-grav:before {
  content: "\f2d6";
}

.fa-etsy:before {
  content: "\f2d7";
}

.fa-imdb:before {
  content: "\f2d8";
}

.fa-ravelry:before {
  content: "\f2d9";
}

.fa-eercast:before {
  content: "\f2da";
}

.fa-microchip:before {
  content: "\f2db";
}

.fa-snowflake-o:before {
  content: "\f2dc";
}

.fa-superpowers:before {
  content: "\f2dd";
}

.fa-wpexplorer:before {
  content: "\f2de";
}

.fa-meetup:before {
  content: "\f2e0";
}

.sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  border: 0;
}

.sr-only-focusable:active,
.sr-only-focusable:focus {
  position: static;
  width: auto;
  height: auto;
  margin: 0;
  overflow: visible;
  clip: auto;
}

@font-face {
  font-family: 'icomoon';
  src: url(/assets/fonts/icomoon.ad579ff1.eot);
  src: url(/assets/fonts/icomoon.ad579ff1.eot) format("embedded-opentype"), url(/assets/fonts/icomoon.c068d37f.woff) format("woff"), url(/assets/fonts/icomoon.34fdc413.ttf) format("truetype"), url(/assets/images/icomoon.9fc4031c.svg) format("svg");
  font-weight: normal;
  font-style: normal;
}

[class^="icon-"], [class*=" icon-"] {
  /* Use !important to prevent issues with browser extensions that change fonts */
  font-family: 'icomoon' !important;
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  min-width: 1em;
  display: inline-block;
  text-align: center;
  font-size: 16px;
  vertical-align: middle;
  position: relative;
  top: -1px;
  /* Better Font Rendering =========== */
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.icon-2x {
  font-size: 32px;
}

.icon-3x {
  font-size: 48px;
}

.icon-home:before {
  content: "\e900";
}

.icon-home2:before {
  content: "\e901";
}

.icon-home5:before {
  content: "\e904";
}

.icon-home7:before {
  content: "\e906";
}

.icon-home8:before {
  content: "\e907";
}

.icon-home9:before {
  content: "\e908";
}

.icon-office:before {
  content: "\e909";
}

.icon-city:before {
  content: "\e90a";
}

.icon-newspaper:before {
  content: "\e90b";
}

.icon-magazine:before {
  content: "\e90c";
}

.icon-design:before {
  content: "\e90d";
}

.icon-pencil:before {
  content: "\e90e";
}

.icon-pencil3:before {
  content: "\e910";
}

.icon-pencil4:before {
  content: "\e911";
}

.icon-pencil5:before {
  content: "\e912";
}

.icon-pencil6:before {
  content: "\e913";
}

.icon-pencil7:before {
  content: "\e914";
}

.icon-eraser:before {
  content: "\e915";
}

.icon-eraser2:before {
  content: "\e916";
}

.icon-eraser3:before {
  content: "\e917";
}

.icon-quill2:before {
  content: "\e919";
}

.icon-quill4:before {
  content: "\e91b";
}

.icon-pen:before {
  content: "\e91c";
}

.icon-pen-plus:before {
  content: "\e91d";
}

.icon-pen-minus:before {
  content: "\e91e";
}

.icon-pen2:before {
  content: "\e91f";
}

.icon-blog:before {
  content: "\e925";
}

.icon-pen6:before {
  content: "\e927";
}

.icon-brush:before {
  content: "\e928";
}

.icon-spray:before {
  content: "\e929";
}

.icon-color-sampler:before {
  content: "\e92c";
}

.icon-toggle:before {
  content: "\e92d";
}

.icon-bucket:before {
  content: "\e92e";
}

.icon-gradient:before {
  content: "\e930";
}

.icon-eyedropper:before {
  content: "\e931";
}

.icon-eyedropper2:before {
  content: "\e932";
}

.icon-eyedropper3:before {
  content: "\e933";
}

.icon-droplet:before {
  content: "\e934";
}

.icon-droplet2:before {
  content: "\e935";
}

.icon-color-clear:before {
  content: "\e937";
}

.icon-paint-format:before {
  content: "\e938";
}

.icon-stamp:before {
  content: "\e939";
}

.icon-image2:before {
  content: "\e93c";
}

.icon-image-compare:before {
  content: "\e93d";
}

.icon-images2:before {
  content: "\e93e";
}

.icon-image3:before {
  content: "\e93f";
}

.icon-images3:before {
  content: "\e940";
}

.icon-image4:before {
  content: "\e941";
}

.icon-image5:before {
  content: "\e942";
}

.icon-camera:before {
  content: "\e944";
}

.icon-shutter:before {
  content: "\e947";
}

.icon-headphones:before {
  content: "\e948";
}

.icon-headset:before {
  content: "\e949";
}

.icon-music:before {
  content: "\e94a";
}

.icon-album:before {
  content: "\e950";
}

.icon-tape:before {
  content: "\e952";
}

.icon-piano:before {
  content: "\e953";
}

.icon-speakers:before {
  content: "\e956";
}

.icon-play:before {
  content: "\e957";
}

.icon-clapboard-play:before {
  content: "\e959";
}

.icon-clapboard:before {
  content: "\e95a";
}

.icon-media:before {
  content: "\e95b";
}

.icon-presentation:before {
  content: "\e95c";
}

.icon-movie:before {
  content: "\e95d";
}

.icon-film:before {
  content: "\e95e";
}

.icon-film2:before {
  content: "\e95f";
}

.icon-film3:before {
  content: "\e960";
}

.icon-film4:before {
  content: "\e961";
}

.icon-video-camera:before {
  content: "\e962";
}

.icon-video-camera2:before {
  content: "\e963";
}

.icon-video-camera-slash:before {
  content: "\e964";
}

.icon-video-camera3:before {
  content: "\e965";
}

.icon-dice:before {
  content: "\e96a";
}

.icon-chess-king:before {
  content: "\e972";
}

.icon-chess-queen:before {
  content: "\e973";
}

.icon-chess:before {
  content: "\e978";
}

.icon-megaphone:before {
  content: "\e97a";
}

.icon-new:before {
  content: "\e97b";
}

.icon-connection:before {
  content: "\e97c";
}

.icon-station:before {
  content: "\e981";
}

.icon-satellite-dish2:before {
  content: "\e98a";
}

.icon-feed:before {
  content: "\e9b3";
}

.icon-mic2:before {
  content: "\e9ce";
}

.icon-mic-off2:before {
  content: "\e9e0";
}

.icon-book:before {
  content: "\e9e1";
}

.icon-book2:before {
  content: "\e9e9";
}

.icon-book-play:before {
  content: "\e9fd";
}

.icon-book3:before {
  content: "\ea01";
}

.icon-bookmark:before {
  content: "\ea02";
}

.icon-books:before {
  content: "\ea03";
}

.icon-archive:before {
  content: "\ea04";
}

.icon-reading:before {
  content: "\ea05";
}

.icon-library2:before {
  content: "\ea06";
}

.icon-graduation2:before {
  content: "\ea07";
}

.icon-file-text:before {
  content: "\ea08";
}

.icon-profile:before {
  content: "\ea09";
}

.icon-file-empty:before {
  content: "\ea0a";
}

.icon-file-empty2:before {
  content: "\ea0b";
}

.icon-files-empty:before {
  content: "\ea0c";
}

.icon-files-empty2:before {
  content: "\ea0d";
}

.icon-file-plus:before {
  content: "\ea0e";
}

.icon-file-plus2:before {
  content: "\ea0f";
}

.icon-file-minus:before {
  content: "\ea10";
}

.icon-file-minus2:before {
  content: "\ea11";
}

.icon-file-download:before {
  content: "\ea12";
}

.icon-file-download2:before {
  content: "\ea13";
}

.icon-file-upload:before {
  content: "\ea14";
}

.icon-file-upload2:before {
  content: "\ea15";
}

.icon-file-check:before {
  content: "\ea16";
}

.icon-file-check2:before {
  content: "\ea17";
}

.icon-file-eye:before {
  content: "\ea18";
}

.icon-file-eye2:before {
  content: "\ea19";
}

.icon-file-text2:before {
  content: "\ea1a";
}

.icon-file-text3:before {
  content: "\ea1b";
}

.icon-file-picture:before {
  content: "\ea1c";
}

.icon-file-picture2:before {
  content: "\ea1d";
}

.icon-file-music:before {
  content: "\ea1e";
}

.icon-file-music2:before {
  content: "\ea1f";
}

.icon-file-play:before {
  content: "\ea20";
}

.icon-file-play2:before {
  content: "\ea21";
}

.icon-file-video:before {
  content: "\ea22";
}

.icon-file-video2:before {
  content: "\ea23";
}

.icon-copy:before {
  content: "\ea24";
}

.icon-copy2:before {
  content: "\ea25";
}

.icon-file-zip:before {
  content: "\ea26";
}

.icon-file-zip2:before {
  content: "\ea27";
}

.icon-file-xml:before {
  content: "\ea28";
}

.icon-file-xml2:before {
  content: "\ea29";
}

.icon-file-css:before {
  content: "\ea2a";
}

.icon-file-css2:before {
  content: "\ea2b";
}

.icon-file-presentation:before {
  content: "\ea2c";
}

.icon-file-presentation2:before {
  content: "\ea2d";
}

.icon-file-stats:before {
  content: "\ea2e";
}

.icon-file-stats2:before {
  content: "\ea2f";
}

.icon-file-locked:before {
  content: "\ea30";
}

.icon-file-locked2:before {
  content: "\ea31";
}

.icon-file-spreadsheet:before {
  content: "\ea32";
}

.icon-file-spreadsheet2:before {
  content: "\ea33";
}

.icon-copy3:before {
  content: "\ea34";
}

.icon-copy4:before {
  content: "\ea35";
}

.icon-paste:before {
  content: "\ea36";
}

.icon-paste2:before {
  content: "\ea37";
}

.icon-paste3:before {
  content: "\ea38";
}

.icon-paste4:before {
  content: "\ea39";
}

.icon-stack:before {
  content: "\ea3a";
}

.icon-stack2:before {
  content: "\ea3b";
}

.icon-stack3:before {
  content: "\ea3c";
}

.icon-folder:before {
  content: "\ea3d";
}

.icon-folder-search:before {
  content: "\ea3e";
}

.icon-folder-download:before {
  content: "\ea3f";
}

.icon-folder-upload:before {
  content: "\ea40";
}

.icon-folder-plus:before {
  content: "\ea41";
}

.icon-folder-plus2:before {
  content: "\ea42";
}

.icon-folder-minus:before {
  content: "\ea43";
}

.icon-folder-minus2:before {
  content: "\ea44";
}

.icon-folder-check:before {
  content: "\ea45";
}

.icon-folder-heart:before {
  content: "\ea46";
}

.icon-folder-remove:before {
  content: "\ea47";
}

.icon-folder2:before {
  content: "\ea48";
}

.icon-folder-open:before {
  content: "\ea49";
}

.icon-folder3:before {
  content: "\ea4a";
}

.icon-folder4:before {
  content: "\ea4b";
}

.icon-folder-plus3:before {
  content: "\ea4c";
}

.icon-folder-minus3:before {
  content: "\ea4d";
}

.icon-folder-plus4:before {
  content: "\ea4e";
}

.icon-folder-minus4:before {
  content: "\ea4f";
}

.icon-folder-download2:before {
  content: "\ea50";
}

.icon-folder-upload2:before {
  content: "\ea51";
}

.icon-folder-download3:before {
  content: "\ea52";
}

.icon-folder-upload3:before {
  content: "\ea53";
}

.icon-folder5:before {
  content: "\ea54";
}

.icon-folder-open2:before {
  content: "\ea55";
}

.icon-folder6:before {
  content: "\ea56";
}

.icon-folder-open3:before {
  content: "\ea57";
}

.icon-certificate:before {
  content: "\ea58";
}

.icon-cc:before {
  content: "\ea59";
}

.icon-price-tag:before {
  content: "\ea5a";
}

.icon-price-tag2:before {
  content: "\ea5b";
}

.icon-price-tags:before {
  content: "\ea5c";
}

.icon-price-tag3:before {
  content: "\ea5d";
}

.icon-price-tags2:before {
  content: "\ea5e";
}

.icon-barcode2:before {
  content: "\ea5f";
}

.icon-qrcode:before {
  content: "\ea60";
}

.icon-ticket:before {
  content: "\ea61";
}

.icon-theater:before {
  content: "\ea62";
}

.icon-store:before {
  content: "\ea63";
}

.icon-store2:before {
  content: "\ea64";
}

.icon-cart:before {
  content: "\ea65";
}

.icon-cart2:before {
  content: "\ea66";
}

.icon-cart4:before {
  content: "\ea67";
}

.icon-cart5:before {
  content: "\ea68";
}

.icon-cart-add:before {
  content: "\ea69";
}

.icon-cart-add2:before {
  content: "\ea6a";
}

.icon-cart-remove:before {
  content: "\ea6b";
}

.icon-basket:before {
  content: "\ea6c";
}

.icon-bag:before {
  content: "\ea6d";
}

.icon-percent:before {
  content: "\ea6f";
}

.icon-coins:before {
  content: "\ea70";
}

.icon-coin-dollar:before {
  content: "\ea71";
}

.icon-coin-euro:before {
  content: "\ea72";
}

.icon-coin-pound:before {
  content: "\ea73";
}

.icon-coin-yen:before {
  content: "\ea74";
}

.icon-piggy-bank:before {
  content: "\ea75";
}

.icon-wallet:before {
  content: "\ea76";
}

.icon-cash:before {
  content: "\ea77";
}

.icon-cash2:before {
  content: "\ea78";
}

.icon-cash3:before {
  content: "\ea79";
}

.icon-cash4:before {
  content: "\ea7a";
}

.icon-credit-card:before {
  content: "\ea6e";
}

.icon-credit-card2:before {
  content: "\ea7b";
}

.icon-calculator4:before {
  content: "\ea7c";
}

.icon-calculator2:before {
  content: "\ea7d";
}

.icon-calculator3:before {
  content: "\ea7e";
}

.icon-chip:before {
  content: "\ea7f";
}

.icon-lifebuoy:before {
  content: "\ea80";
}

.icon-phone:before {
  content: "\ea81";
}

.icon-phone2:before {
  content: "\ea82";
}

.icon-phone-slash:before {
  content: "\ea83";
}

.icon-phone-wave:before {
  content: "\ea84";
}

.icon-phone-plus:before {
  content: "\ea85";
}

.icon-phone-minus:before {
  content: "\ea86";
}

.icon-phone-plus2:before {
  content: "\ea87";
}

.icon-phone-minus2:before {
  content: "\ea88";
}

.icon-phone-incoming:before {
  content: "\ea89";
}

.icon-phone-outgoing:before {
  content: "\ea8a";
}

.icon-phone-hang-up:before {
  content: "\ea8e";
}

.icon-address-book:before {
  content: "\ea90";
}

.icon-address-book2:before {
  content: "\ea91";
}

.icon-address-book3:before {
  content: "\ea92";
}

.icon-notebook:before {
  content: "\ea93";
}

.icon-envelop:before {
  content: "\ea94";
}

.icon-envelop2:before {
  content: "\ea95";
}

.icon-envelop3:before {
  content: "\ea96";
}

.icon-envelop4:before {
  content: "\ea97";
}

.icon-envelop5:before {
  content: "\ea98";
}

.icon-mailbox:before {
  content: "\ea99";
}

.icon-pushpin:before {
  content: "\ea9a";
}

.icon-location3:before {
  content: "\ea9d";
}

.icon-location4:before {
  content: "\ea9e";
}

.icon-compass4:before {
  content: "\ea9f";
}

.icon-map:before {
  content: "\eaa0";
}

.icon-map4:before {
  content: "\eaa1";
}

.icon-map5:before {
  content: "\eaa2";
}

.icon-direction:before {
  content: "\eaa3";
}

.icon-reset:before {
  content: "\eaa4";
}

.icon-history:before {
  content: "\eaa5";
}

.icon-watch:before {
  content: "\eaa6";
}

.icon-watch2:before {
  content: "\eaa7";
}

.icon-alarm:before {
  content: "\eaa8";
}

.icon-alarm-add:before {
  content: "\eaa9";
}

.icon-alarm-check:before {
  content: "\eaaa";
}

.icon-alarm-cancel:before {
  content: "\eaab";
}

.icon-bell2:before {
  content: "\eaac";
}

.icon-bell3:before {
  content: "\eaad";
}

.icon-bell-plus:before {
  content: "\eaae";
}

.icon-bell-minus:before {
  content: "\eaaf";
}

.icon-bell-check:before {
  content: "\eab0";
}

.icon-bell-cross:before {
  content: "\eab1";
}

.icon-calendar:before {
  content: "\eab2";
}

.icon-calendar2:before {
  content: "\eab3";
}

.icon-calendar3:before {
  content: "\eab4";
}

.icon-calendar52:before {
  content: "\eab6";
}

.icon-printer:before {
  content: "\eab7";
}

.icon-printer2:before {
  content: "\eab8";
}

.icon-printer4:before {
  content: "\eab9";
}

.icon-shredder:before {
  content: "\eaba";
}

.icon-mouse:before {
  content: "\eabb";
}

.icon-mouse-left:before {
  content: "\eabc";
}

.icon-mouse-right:before {
  content: "\eabd";
}

.icon-keyboard:before {
  content: "\eabe";
}

.icon-typewriter:before {
  content: "\eabf";
}

.icon-display:before {
  content: "\eac0";
}

.icon-display4:before {
  content: "\eac1";
}

.icon-laptop:before {
  content: "\eac2";
}

.icon-mobile:before {
  content: "\eac3";
}

.icon-mobile2:before {
  content: "\eac4";
}

.icon-tablet:before {
  content: "\eac5";
}

.icon-mobile3:before {
  content: "\eac6";
}

.icon-tv:before {
  content: "\eac7";
}

.icon-radio:before {
  content: "\eac8";
}

.icon-cabinet:before {
  content: "\eac9";
}

.icon-drawer:before {
  content: "\eaca";
}

.icon-drawer2:before {
  content: "\eacb";
}

.icon-drawer-out:before {
  content: "\eacc";
}

.icon-drawer-in:before {
  content: "\eacd";
}

.icon-drawer3:before {
  content: "\eace";
}

.icon-box:before {
  content: "\eacf";
}

.icon-box-add:before {
  content: "\ead0";
}

.icon-box-remove:before {
  content: "\ead1";
}

.icon-download:before {
  content: "\ead2";
}

.icon-upload:before {
  content: "\ead3";
}

.icon-floppy-disk:before {
  content: "\ead4";
}

.icon-floppy-disks:before {
  content: "\ead5";
}

.icon-usb-stick:before {
  content: "\ead6";
}

.icon-drive:before {
  content: "\ead7";
}

.icon-server:before {
  content: "\ead8";
}

.icon-database:before {
  content: "\ead9";
}

.icon-database2:before {
  content: "\eada";
}

.icon-database4:before {
  content: "\eadb";
}

.icon-database-menu:before {
  content: "\eadc";
}

.icon-database-add:before {
  content: "\eadd";
}

.icon-database-remove:before {
  content: "\eade";
}

.icon-database-insert:before {
  content: "\eadf";
}

.icon-database-export:before {
  content: "\eae0";
}

.icon-database-upload:before {
  content: "\eae1";
}

.icon-database-refresh:before {
  content: "\eae2";
}

.icon-database-diff:before {
  content: "\eae3";
}

.icon-database-edit2:before {
  content: "\eae5";
}

.icon-database-check:before {
  content: "\eae6";
}

.icon-database-arrow:before {
  content: "\eae7";
}

.icon-database-time2:before {
  content: "\eae9";
}

.icon-undo:before {
  content: "\eaea";
}

.icon-redo:before {
  content: "\eaeb";
}

.icon-rotate-ccw:before {
  content: "\eaec";
}

.icon-rotate-cw:before {
  content: "\eaed";
}

.icon-rotate-ccw2:before {
  content: "\eaee";
}

.icon-rotate-cw2:before {
  content: "\eaef";
}

.icon-rotate-ccw3:before {
  content: "\eaf0";
}

.icon-rotate-cw3:before {
  content: "\eaf1";
}

.icon-flip-vertical2:before {
  content: "\eaf2";
}

.icon-flip-horizontal2:before {
  content: "\eaf3";
}

.icon-flip-vertical3:before {
  content: "\eaf4";
}

.icon-flip-vertical4:before {
  content: "\eaf5";
}

.icon-angle:before {
  content: "\eaf6";
}

.icon-shear:before {
  content: "\eaf7";
}

.icon-align-left:before {
  content: "\eafc";
}

.icon-align-center-horizontal:before {
  content: "\eafd";
}

.icon-align-right:before {
  content: "\eafe";
}

.icon-align-top:before {
  content: "\eaff";
}

.icon-align-center-vertical:before {
  content: "\eb00";
}

.icon-align-bottom:before {
  content: "\eb01";
}

.icon-undo2:before {
  content: "\eb02";
}

.icon-redo2:before {
  content: "\eb03";
}

.icon-forward:before {
  content: "\eb04";
}

.icon-reply:before {
  content: "\eb05";
}

.icon-reply-all:before {
  content: "\eb06";
}

.icon-bubble:before {
  content: "\eb07";
}

.icon-bubbles:before {
  content: "\eb08";
}

.icon-bubbles2:before {
  content: "\eb09";
}

.icon-bubble2:before {
  content: "\eb0a";
}

.icon-bubbles3:before {
  content: "\eb0b";
}

.icon-bubbles4:before {
  content: "\eb0c";
}

.icon-bubble-notification:before {
  content: "\eb0d";
}

.icon-bubbles5:before {
  content: "\eb0e";
}

.icon-bubbles6:before {
  content: "\eb0f";
}

.icon-bubble6:before {
  content: "\eb10";
}

.icon-bubbles7:before {
  content: "\eb11";
}

.icon-bubble7:before {
  content: "\eb12";
}

.icon-bubbles8:before {
  content: "\eb13";
}

.icon-bubble8:before {
  content: "\eb14";
}

.icon-bubble-dots3:before {
  content: "\eb15";
}

.icon-bubble-lines3:before {
  content: "\eb16";
}

.icon-bubble9:before {
  content: "\eb17";
}

.icon-bubble-dots4:before {
  content: "\eb18";
}

.icon-bubble-lines4:before {
  content: "\eb19";
}

.icon-bubbles9:before {
  content: "\eb1a";
}

.icon-bubbles10:before {
  content: "\eb1b";
}

.icon-user:before {
  content: "\eb33";
}

.icon-users:before {
  content: "\eb34";
}

.icon-user-plus:before {
  content: "\eb35";
}

.icon-user-minus:before {
  content: "\eb36";
}

.icon-user-cancel:before {
  content: "\eb37";
}

.icon-user-block:before {
  content: "\eb38";
}

.icon-user-lock:before {
  content: "\eb39";
}

.icon-user-check:before {
  content: "\eb3a";
}

.icon-users2:before {
  content: "\eb3b";
}

.icon-users4:before {
  content: "\eb44";
}

.icon-user-tie:before {
  content: "\eb45";
}

.icon-collaboration:before {
  content: "\eb46";
}

.icon-vcard:before {
  content: "\eb47";
}

.icon-hat:before {
  content: "\ebb8";
}

.icon-bowtie:before {
  content: "\ebb9";
}

.icon-quotes-left:before {
  content: "\eb49";
}

.icon-quotes-right:before {
  content: "\eb4a";
}

.icon-quotes-left2:before {
  content: "\eb4b";
}

.icon-quotes-right2:before {
  content: "\eb4c";
}

.icon-hour-glass:before {
  content: "\eb4d";
}

.icon-hour-glass2:before {
  content: "\eb4e";
}

.icon-hour-glass3:before {
  content: "\eb4f";
}

.icon-spinner:before {
  content: "\eb50";
}

.icon-spinner2:before {
  content: "\eb51";
}

.icon-spinner3:before {
  content: "\eb52";
}

.icon-spinner4:before {
  content: "\eb53";
}

.icon-spinner6:before {
  content: "\eb54";
}

.icon-spinner9:before {
  content: "\eb55";
}

.icon-spinner10:before {
  content: "\eb56";
}

.icon-spinner11:before {
  content: "\eb57";
}

.icon-microscope:before {
  content: "\eb58";
}

.icon-enlarge:before {
  content: "\eb59";
}

.icon-shrink:before {
  content: "\eb5a";
}

.icon-enlarge3:before {
  content: "\eb5b";
}

.icon-shrink3:before {
  content: "\eb5c";
}

.icon-enlarge5:before {
  content: "\eb5d";
}

.icon-shrink5:before {
  content: "\eb5e";
}

.icon-enlarge6:before {
  content: "\eb5f";
}

.icon-shrink6:before {
  content: "\eb60";
}

.icon-enlarge7:before {
  content: "\eb61";
}

.icon-shrink7:before {
  content: "\eb62";
}

.icon-key:before {
  content: "\eb63";
}

.icon-lock:before {
  content: "\eb65";
}

.icon-lock2:before {
  content: "\eb66";
}

.icon-lock4:before {
  content: "\eb67";
}

.icon-unlocked:before {
  content: "\eb68";
}

.icon-lock5:before {
  content: "\eb69";
}

.icon-unlocked2:before {
  content: "\eb6a";
}

.icon-safe:before {
  content: "\eb6b";
}

.icon-wrench:before {
  content: "\eb6c";
}

.icon-wrench2:before {
  content: "\eb6d";
}

.icon-wrench3:before {
  content: "\eb6e";
}

.icon-equalizer:before {
  content: "\eb6f";
}

.icon-equalizer2:before {
  content: "\eb70";
}

.icon-equalizer3:before {
  content: "\eb71";
}

.icon-equalizer4:before {
  content: "\eb72";
}

.icon-cog:before {
  content: "\eb73";
}

.icon-cogs:before {
  content: "\eb74";
}

.icon-cog2:before {
  content: "\eb75";
}

.icon-cog3:before {
  content: "\eb76";
}

.icon-cog4:before {
  content: "\eb77";
}

.icon-cog52:before {
  content: "\eb78";
}

.icon-cog6:before {
  content: "\eb79";
}

.icon-cog7:before {
  content: "\eb7a";
}

.icon-hammer:before {
  content: "\eb7c";
}

.icon-hammer-wrench:before {
  content: "\eb7d";
}

.icon-magic-wand:before {
  content: "\eb7e";
}

.icon-magic-wand2:before {
  content: "\eb7f";
}

.icon-pulse2:before {
  content: "\eb80";
}

.icon-aid-kit:before {
  content: "\eb81";
}

.icon-bug2:before {
  content: "\eb83";
}

.icon-construction:before {
  content: "\eb85";
}

.icon-traffic-cone:before {
  content: "\eb86";
}

.icon-traffic-lights:before {
  content: "\eb87";
}

.icon-pie-chart:before {
  content: "\eb88";
}

.icon-pie-chart2:before {
  content: "\eb89";
}

.icon-pie-chart3:before {
  content: "\eb8a";
}

.icon-pie-chart4:before {
  content: "\eb8b";
}

.icon-pie-chart5:before {
  content: "\eb8c";
}

.icon-pie-chart6:before {
  content: "\eb8d";
}

.icon-pie-chart7:before {
  content: "\eb8e";
}

.icon-stats-dots:before {
  content: "\eb8f";
}

.icon-stats-bars:before {
  content: "\eb90";
}

.icon-pie-chart8:before {
  content: "\eb91";
}

.icon-stats-bars2:before {
  content: "\eb92";
}

.icon-stats-bars3:before {
  content: "\eb93";
}

.icon-stats-bars4:before {
  content: "\eb94";
}

.icon-chart:before {
  content: "\eb97";
}

.icon-stats-growth:before {
  content: "\eb98";
}

.icon-stats-decline:before {
  content: "\eb99";
}

.icon-stats-growth2:before {
  content: "\eb9a";
}

.icon-stats-decline2:before {
  content: "\eb9b";
}

.icon-stairs-up:before {
  content: "\eb9c";
}

.icon-stairs-down:before {
  content: "\eb9d";
}

.icon-stairs:before {
  content: "\eb9e";
}

.icon-ladder:before {
  content: "\eba0";
}

.icon-rating:before {
  content: "\eba1";
}

.icon-rating2:before {
  content: "\eba2";
}

.icon-rating3:before {
  content: "\eba3";
}

.icon-podium:before {
  content: "\eba5";
}

.icon-stars:before {
  content: "\eba6";
}

.icon-medal-star:before {
  content: "\eba7";
}

.icon-medal:before {
  content: "\eba8";
}

.icon-medal2:before {
  content: "\eba9";
}

.icon-medal-first:before {
  content: "\ebaa";
}

.icon-medal-second:before {
  content: "\ebab";
}

.icon-medal-third:before {
  content: "\ebac";
}

.icon-crown:before {
  content: "\ebad";
}

.icon-trophy2:before {
  content: "\ebaf";
}

.icon-trophy3:before {
  content: "\ebb0";
}

.icon-diamond:before {
  content: "\ebb1";
}

.icon-trophy4:before {
  content: "\ebb2";
}

.icon-gift:before {
  content: "\ebb3";
}

.icon-pipe:before {
  content: "\ebb6";
}

.icon-mustache:before {
  content: "\ebb7";
}

.icon-cup2:before {
  content: "\ebc6";
}

.icon-coffee:before {
  content: "\ebc8";
}

.icon-paw:before {
  content: "\ebd5";
}

.icon-footprint:before {
  content: "\ebd6";
}

.icon-rocket:before {
  content: "\ebda";
}

.icon-meter2:before {
  content: "\ebdc";
}

.icon-meter-slow:before {
  content: "\ebdd";
}

.icon-meter-fast:before {
  content: "\ebdf";
}

.icon-hammer2:before {
  content: "\ebe1";
}

.icon-balance:before {
  content: "\ebe2";
}

.icon-fire:before {
  content: "\ebe5";
}

.icon-fire2:before {
  content: "\ebe6";
}

.icon-lab:before {
  content: "\ebe7";
}

.icon-atom:before {
  content: "\ebe8";
}

.icon-atom2:before {
  content: "\ebe9";
}

.icon-bin:before {
  content: "\ebfa";
}

.icon-bin2:before {
  content: "\ebfb";
}

.icon-briefcase:before {
  content: "\ebff";
}

.icon-briefcase3:before {
  content: "\ec01";
}

.icon-airplane2:before {
  content: "\ec03";
}

.icon-airplane3:before {
  content: "\ec04";
}

.icon-airplane4:before {
  content: "\ec05";
}

.icon-paperplane:before {
  content: "\ec06";
}

.icon-car:before {
  content: "\ec07";
}

.icon-steering-wheel:before {
  content: "\ec08";
}

.icon-car2:before {
  content: "\ec09";
}

.icon-gas:before {
  content: "\ec0a";
}

.icon-bus:before {
  content: "\ec0b";
}

.icon-truck:before {
  content: "\ec0c";
}

.icon-bike:before {
  content: "\ec0d";
}

.icon-road:before {
  content: "\ec0e";
}

.icon-train:before {
  content: "\ec0f";
}

.icon-train2:before {
  content: "\ec10";
}

.icon-ship:before {
  content: "\ec11";
}

.icon-boat:before {
  content: "\ec12";
}

.icon-chopper:before {
  content: "\ec13";
}

.icon-cube:before {
  content: "\ec15";
}

.icon-cube2:before {
  content: "\ec16";
}

.icon-cube3:before {
  content: "\ec17";
}

.icon-cube4:before {
  content: "\ec18";
}

.icon-pyramid:before {
  content: "\ec19";
}

.icon-pyramid2:before {
  content: "\ec1a";
}

.icon-package:before {
  content: "\ec1b";
}

.icon-puzzle:before {
  content: "\ec1c";
}

.icon-puzzle2:before {
  content: "\ec1d";
}

.icon-puzzle3:before {
  content: "\ec1e";
}

.icon-puzzle4:before {
  content: "\ec1f";
}

.icon-glasses-3d2:before {
  content: "\ec21";
}

.icon-brain:before {
  content: "\ec24";
}

.icon-accessibility:before {
  content: "\ec25";
}

.icon-accessibility2:before {
  content: "\ec26";
}

.icon-strategy:before {
  content: "\ec27";
}

.icon-target:before {
  content: "\ec28";
}

.icon-target2:before {
  content: "\ec29";
}

.icon-shield-check:before {
  content: "\ec2f";
}

.icon-shield-notice:before {
  content: "\ec30";
}

.icon-shield2:before {
  content: "\ec31";
}

.icon-racing:before {
  content: "\ec40";
}

.icon-finish:before {
  content: "\ec41";
}

.icon-power2:before {
  content: "\ec46";
}

.icon-power3:before {
  content: "\ec47";
}

.icon-switch:before {
  content: "\ec48";
}

.icon-switch22:before {
  content: "\ec49";
}

.icon-power-cord:before {
  content: "\ec4a";
}

.icon-clipboard:before {
  content: "\ec4d";
}

.icon-clipboard2:before {
  content: "\ec4e";
}

.icon-clipboard3:before {
  content: "\ec4f";
}

.icon-clipboard4:before {
  content: "\ec50";
}

.icon-clipboard5:before {
  content: "\ec51";
}

.icon-clipboard6:before {
  content: "\ec52";
}

.icon-playlist:before {
  content: "\ec53";
}

.icon-playlist-add:before {
  content: "\ec54";
}

.icon-list-numbered:before {
  content: "\ec55";
}

.icon-list:before {
  content: "\ec56";
}

.icon-list2:before {
  content: "\ec57";
}

.icon-more:before {
  content: "\ec58";
}

.icon-more2:before {
  content: "\ec59";
}

.icon-grid:before {
  content: "\ec5a";
}

.icon-grid2:before {
  content: "\ec5b";
}

.icon-grid3:before {
  content: "\ec5c";
}

.icon-grid4:before {
  content: "\ec5d";
}

.icon-grid52:before {
  content: "\ec5e";
}

.icon-grid6:before {
  content: "\ec5f";
}

.icon-grid7:before {
  content: "\ec60";
}

.icon-tree5:before {
  content: "\ec61";
}

.icon-tree6:before {
  content: "\ec62";
}

.icon-tree7:before {
  content: "\ec63";
}

.icon-lan:before {
  content: "\ec64";
}

.icon-lan2:before {
  content: "\ec65";
}

.icon-lan3:before {
  content: "\ec66";
}

.icon-menu:before {
  content: "\ec67";
}

.icon-circle-small:before {
  content: "\ec68";
}

.icon-menu2:before {
  content: "\ec69";
}

.icon-menu3:before {
  content: "\ec6a";
}

.icon-menu4:before {
  content: "\ec6b";
}

.icon-menu5:before {
  content: "\ec6c";
}

.icon-menu62:before {
  content: "\ec6d";
}

.icon-menu7:before {
  content: "\ec6e";
}

.icon-menu8:before {
  content: "\ec6f";
}

.icon-menu9:before {
  content: "\ec70";
}

.icon-menu10:before {
  content: "\ec71";
}

.icon-cloud:before {
  content: "\ec72";
}

.icon-cloud-download:before {
  content: "\ec73";
}

.icon-cloud-upload:before {
  content: "\ec74";
}

.icon-cloud-check:before {
  content: "\ec75";
}

.icon-cloud2:before {
  content: "\ec76";
}

.icon-cloud-download2:before {
  content: "\ec77";
}

.icon-cloud-upload2:before {
  content: "\ec78";
}

.icon-cloud-check2:before {
  content: "\ec79";
}

.icon-import:before {
  content: "\ec7e";
}

.icon-download4:before {
  content: "\ec80";
}

.icon-upload4:before {
  content: "\ec81";
}

.icon-download7:before {
  content: "\ec86";
}

.icon-upload7:before {
  content: "\ec87";
}

.icon-download10:before {
  content: "\ec8c";
}

.icon-upload10:before {
  content: "\ec8d";
}

.icon-sphere:before {
  content: "\ec8e";
}

.icon-sphere3:before {
  content: "\ec90";
}

.icon-earth:before {
  content: "\ec93";
}

.icon-link:before {
  content: "\ec96";
}

.icon-unlink:before {
  content: "\ec97";
}

.icon-link2:before {
  content: "\ec98";
}

.icon-unlink2:before {
  content: "\ec99";
}

.icon-anchor:before {
  content: "\eca0";
}

.icon-flag3:before {
  content: "\eca3";
}

.icon-flag4:before {
  content: "\eca4";
}

.icon-flag7:before {
  content: "\eca7";
}

.icon-flag8:before {
  content: "\eca8";
}

.icon-attachment:before {
  content: "\eca9";
}

.icon-attachment2:before {
  content: "\ecaa";
}

.icon-eye:before {
  content: "\ecab";
}

.icon-eye-plus:before {
  content: "\ecac";
}

.icon-eye-minus:before {
  content: "\ecad";
}

.icon-eye-blocked:before {
  content: "\ecae";
}

.icon-eye2:before {
  content: "\ecaf";
}

.icon-eye-blocked2:before {
  content: "\ecb0";
}

.icon-eye4:before {
  content: "\ecb3";
}

.icon-bookmark2:before {
  content: "\ecb4";
}

.icon-bookmark3:before {
  content: "\ecb5";
}

.icon-bookmarks:before {
  content: "\ecb6";
}

.icon-bookmark4:before {
  content: "\ecb7";
}

.icon-spotlight2:before {
  content: "\ecb8";
}

.icon-starburst:before {
  content: "\ecb9";
}

.icon-snowflake:before {
  content: "\ecba";
}

.icon-weather-windy:before {
  content: "\ecd0";
}

.icon-fan:before {
  content: "\ecd1";
}

.icon-umbrella:before {
  content: "\ecd2";
}

.icon-sun3:before {
  content: "\ecd3";
}

.icon-contrast:before {
  content: "\ecd4";
}

.icon-bed2:before {
  content: "\ecda";
}

.icon-furniture:before {
  content: "\ecdb";
}

.icon-chair:before {
  content: "\ecdc";
}

.icon-star-empty3:before {
  content: "\ece0";
}

.icon-star-half:before {
  content: "\ece1";
}

.icon-star-full2:before {
  content: "\ece2";
}

.icon-heart5:before {
  content: "\ece9";
}

.icon-heart6:before {
  content: "\ecea";
}

.icon-heart-broken2:before {
  content: "\eceb";
}

.icon-thumbs-up2:before {
  content: "\ecf2";
}

.icon-thumbs-down2:before {
  content: "\ecf4";
}

.icon-thumbs-up3:before {
  content: "\ecf5";
}

.icon-thumbs-down3:before {
  content: "\ecf6";
}

.icon-height:before {
  content: "\ecf7";
}

.icon-man:before {
  content: "\ecf8";
}

.icon-woman:before {
  content: "\ecf9";
}

.icon-man-woman:before {
  content: "\ecfa";
}

.icon-yin-yang:before {
  content: "\ecfe";
}

.icon-cursor:before {
  content: "\ed23";
}

.icon-cursor2:before {
  content: "\ed24";
}

.icon-lasso2:before {
  content: "\ed26";
}

.icon-select2:before {
  content: "\ed28";
}

.icon-point-up:before {
  content: "\ed29";
}

.icon-point-right:before {
  content: "\ed2a";
}

.icon-point-down:before {
  content: "\ed2b";
}

.icon-point-left:before {
  content: "\ed2c";
}

.icon-pointer:before {
  content: "\ed2d";
}

.icon-reminder:before {
  content: "\ed2e";
}

.icon-drag-left-right:before {
  content: "\ed2f";
}

.icon-drag-left:before {
  content: "\ed30";
}

.icon-drag-right:before {
  content: "\ed31";
}

.icon-touch:before {
  content: "\ed32";
}

.icon-multitouch:before {
  content: "\ed33";
}

.icon-touch-zoom:before {
  content: "\ed34";
}

.icon-touch-pinch:before {
  content: "\ed35";
}

.icon-hand:before {
  content: "\ed36";
}

.icon-grab:before {
  content: "\ed37";
}

.icon-stack-empty:before {
  content: "\ed38";
}

.icon-stack-plus:before {
  content: "\ed39";
}

.icon-stack-minus:before {
  content: "\ed3a";
}

.icon-stack-star:before {
  content: "\ed3b";
}

.icon-stack-picture:before {
  content: "\ed3c";
}

.icon-stack-down:before {
  content: "\ed3d";
}

.icon-stack-up:before {
  content: "\ed3e";
}

.icon-stack-cancel:before {
  content: "\ed3f";
}

.icon-stack-check:before {
  content: "\ed40";
}

.icon-stack-text:before {
  content: "\ed41";
}

.icon-stack4:before {
  content: "\ed47";
}

.icon-stack-music:before {
  content: "\ed48";
}

.icon-stack-play:before {
  content: "\ed49";
}

.icon-move:before {
  content: "\ed4a";
}

.icon-dots:before {
  content: "\ed4b";
}

.icon-warning:before {
  content: "\ed4c";
}

.icon-warning22:before {
  content: "\ed4d";
}

.icon-notification2:before {
  content: "\ed4f";
}

.icon-question3:before {
  content: "\ed52";
}

.icon-question4:before {
  content: "\ed53";
}

.icon-plus3:before {
  content: "\ed5a";
}

.icon-minus3:before {
  content: "\ed5b";
}

.icon-plus-circle2:before {
  content: "\ed5e";
}

.icon-minus-circle2:before {
  content: "\ed5f";
}

.icon-cancel-circle2:before {
  content: "\ed63";
}

.icon-blocked:before {
  content: "\ed64";
}

.icon-cancel-square:before {
  content: "\ed65";
}

.icon-cancel-square2:before {
  content: "\ed66";
}

.icon-spam:before {
  content: "\ed68";
}

.icon-cross2:before {
  content: "\ed6a";
}

.icon-cross3:before {
  content: "\ed6b";
}

.icon-checkmark:before {
  content: "\ed6c";
}

.icon-checkmark3:before {
  content: "\ed6e";
}

.icon-checkmark2:before {
  content: "\e372";
}

.icon-checkmark4:before {
  content: "\ed6f";
}

.icon-spell-check:before {
  content: "\ed71";
}

.icon-spell-check2:before {
  content: "\ed72";
}

.icon-enter:before {
  content: "\ed73";
}

.icon-exit:before {
  content: "\ed74";
}

.icon-enter2:before {
  content: "\ed75";
}

.icon-exit2:before {
  content: "\ed76";
}

.icon-enter3:before {
  content: "\ed77";
}

.icon-exit3:before {
  content: "\ed78";
}

.icon-wall:before {
  content: "\ed79";
}

.icon-fence:before {
  content: "\ed7a";
}

.icon-play3:before {
  content: "\ed7b";
}

.icon-pause:before {
  content: "\ed7c";
}

.icon-stop:before {
  content: "\ed7d";
}

.icon-previous:before {
  content: "\ed7e";
}

.icon-next:before {
  content: "\ed7f";
}

.icon-backward:before {
  content: "\ed80";
}

.icon-forward2:before {
  content: "\ed81";
}

.icon-play4:before {
  content: "\ed82";
}

.icon-pause2:before {
  content: "\ed83";
}

.icon-stop2:before {
  content: "\ed84";
}

.icon-backward2:before {
  content: "\ed85";
}

.icon-forward3:before {
  content: "\ed86";
}

.icon-first:before {
  content: "\ed87";
}

.icon-last:before {
  content: "\ed88";
}

.icon-previous2:before {
  content: "\ed89";
}

.icon-next2:before {
  content: "\ed8a";
}

.icon-eject:before {
  content: "\ed8b";
}

.icon-volume-high:before {
  content: "\ed8c";
}

.icon-volume-medium:before {
  content: "\ed8d";
}

.icon-volume-low:before {
  content: "\ed8e";
}

.icon-volume-mute:before {
  content: "\ed8f";
}

.icon-speaker-left:before {
  content: "\ed90";
}

.icon-speaker-right:before {
  content: "\ed91";
}

.icon-volume-mute2:before {
  content: "\ed92";
}

.icon-volume-increase:before {
  content: "\ed93";
}

.icon-volume-decrease:before {
  content: "\ed94";
}

.icon-volume-mute5:before {
  content: "\eda4";
}

.icon-loop:before {
  content: "\eda5";
}

.icon-loop3:before {
  content: "\eda7";
}

.icon-infinite-square:before {
  content: "\eda8";
}

.icon-infinite:before {
  content: "\eda9";
}

.icon-loop4:before {
  content: "\edab";
}

.icon-shuffle:before {
  content: "\edac";
}

.icon-wave:before {
  content: "\edae";
}

.icon-wave2:before {
  content: "\edaf";
}

.icon-split:before {
  content: "\edb0";
}

.icon-merge:before {
  content: "\edb1";
}

.icon-arrow-up5:before {
  content: "\edc4";
}

.icon-arrow-right5:before {
  content: "\edc5";
}

.icon-arrow-down5:before {
  content: "\edc6";
}

.icon-arrow-left5:before {
  content: "\edc7";
}

.icon-arrow-up-left2:before {
  content: "\edd0";
}

.icon-arrow-up7:before {
  content: "\edd1";
}

.icon-arrow-up-right2:before {
  content: "\edd2";
}

.icon-arrow-right7:before {
  content: "\edd3";
}

.icon-arrow-down-right2:before {
  content: "\edd4";
}

.icon-arrow-down7:before {
  content: "\edd5";
}

.icon-arrow-down-left2:before {
  content: "\edd6";
}

.icon-arrow-left7:before {
  content: "\edd7";
}

.icon-arrow-up-left3:before {
  content: "\edd8";
}

.icon-arrow-up8:before {
  content: "\edd9";
}

.icon-arrow-up-right3:before {
  content: "\edda";
}

.icon-arrow-right8:before {
  content: "\eddb";
}

.icon-arrow-down-right3:before {
  content: "\eddc";
}

.icon-arrow-down8:before {
  content: "\eddd";
}

.icon-arrow-down-left3:before {
  content: "\edde";
}

.icon-arrow-left8:before {
  content: "\eddf";
}

.icon-circle-up2:before {
  content: "\ede4";
}

.icon-circle-right2:before {
  content: "\ede5";
}

.icon-circle-down2:before {
  content: "\ede6";
}

.icon-circle-left2:before {
  content: "\ede7";
}

.icon-arrow-resize7:before {
  content: "\edfe";
}

.icon-arrow-resize8:before {
  content: "\edff";
}

.icon-square-up-left:before {
  content: "\ee00";
}

.icon-square-up:before {
  content: "\ee01";
}

.icon-square-up-right:before {
  content: "\ee02";
}

.icon-square-right:before {
  content: "\ee03";
}

.icon-square-down-right:before {
  content: "\ee04";
}

.icon-square-down:before {
  content: "\ee05";
}

.icon-square-down-left:before {
  content: "\ee06";
}

.icon-square-left:before {
  content: "\ee07";
}

.icon-arrow-up15:before {
  content: "\ee30";
}

.icon-arrow-right15:before {
  content: "\ee31";
}

.icon-arrow-down15:before {
  content: "\ee32";
}

.icon-arrow-left15:before {
  content: "\ee33";
}

.icon-arrow-up16:before {
  content: "\ee34";
}

.icon-arrow-right16:before {
  content: "\ee35";
}

.icon-arrow-down16:before {
  content: "\ee36";
}

.icon-arrow-left16:before {
  content: "\ee37";
}

.icon-menu-open:before {
  content: "\ee38";
}

.icon-menu-open2:before {
  content: "\ee39";
}

.icon-menu-close:before {
  content: "\ee3a";
}

.icon-menu-close2:before {
  content: "\ee3b";
}

.icon-enter5:before {
  content: "\ee3d";
}

.icon-esc:before {
  content: "\ee3e";
}

.icon-enter6:before {
  content: "\ee3f";
}

.icon-backspace:before {
  content: "\ee40";
}

.icon-backspace2:before {
  content: "\ee41";
}

.icon-tab:before {
  content: "\ee42";
}

.icon-transmission:before {
  content: "\ee43";
}

.icon-sort:before {
  content: "\ee45";
}

.icon-move-up2:before {
  content: "\ee47";
}

.icon-move-down2:before {
  content: "\ee48";
}

.icon-sort-alpha-asc:before {
  content: "\ee49";
}

.icon-sort-alpha-desc:before {
  content: "\ee4a";
}

.icon-sort-numeric-asc:before {
  content: "\ee4b";
}

.icon-sort-numberic-desc:before {
  content: "\ee4c";
}

.icon-sort-amount-asc:before {
  content: "\ee4d";
}

.icon-sort-amount-desc:before {
  content: "\ee4e";
}

.icon-sort-time-asc:before {
  content: "\ee4f";
}

.icon-sort-time-desc:before {
  content: "\ee50";
}

.icon-battery-6:before {
  content: "\ee51";
}

.icon-battery-0:before {
  content: "\ee57";
}

.icon-battery-charging:before {
  content: "\ee58";
}

.icon-command:before {
  content: "\ee5f";
}

.icon-shift:before {
  content: "\ee60";
}

.icon-ctrl:before {
  content: "\ee61";
}

.icon-opt:before {
  content: "\ee62";
}

.icon-checkbox-checked:before {
  content: "\ee63";
}

.icon-checkbox-unchecked:before {
  content: "\ee64";
}

.icon-checkbox-partial:before {
  content: "\ee65";
}

.icon-square:before {
  content: "\ee66";
}

.icon-triangle:before {
  content: "\ee67";
}

.icon-triangle2:before {
  content: "\ee68";
}

.icon-diamond3:before {
  content: "\ee69";
}

.icon-diamond4:before {
  content: "\ee6a";
}

.icon-checkbox-checked2:before {
  content: "\ee6b";
}

.icon-checkbox-unchecked2:before {
  content: "\ee6c";
}

.icon-checkbox-partial2:before {
  content: "\ee6d";
}

.icon-radio-checked:before {
  content: "\ee6e";
}

.icon-radio-checked2:before {
  content: "\ee6f";
}

.icon-radio-unchecked:before {
  content: "\ee70";
}

.icon-checkmark-circle:before {
  content: "\ee73";
}

.icon-circle:before {
  content: "\ee74";
}

.icon-circle2:before {
  content: "\ee75";
}

.icon-circles:before {
  content: "\ee76";
}

.icon-circles2:before {
  content: "\ee77";
}

.icon-crop:before {
  content: "\ee78";
}

.icon-crop2:before {
  content: "\ee79";
}

.icon-make-group:before {
  content: "\ee7a";
}

.icon-ungroup:before {
  content: "\ee7b";
}

.icon-vector:before {
  content: "\ee7c";
}

.icon-vector2:before {
  content: "\ee7d";
}

.icon-rulers:before {
  content: "\ee7e";
}

.icon-pencil-ruler:before {
  content: "\ee80";
}

.icon-scissors:before {
  content: "\ee81";
}

.icon-filter3:before {
  content: "\ee88";
}

.icon-filter4:before {
  content: "\ee89";
}

.icon-font:before {
  content: "\ee8a";
}

.icon-ampersand2:before {
  content: "\ee8b";
}

.icon-ligature:before {
  content: "\ee8c";
}

.icon-font-size:before {
  content: "\ee8e";
}

.icon-typography:before {
  content: "\ee8f";
}

.icon-text-height:before {
  content: "\ee90";
}

.icon-text-width:before {
  content: "\ee91";
}

.icon-height2:before {
  content: "\ee92";
}

.icon-width:before {
  content: "\ee93";
}

.icon-strikethrough2:before {
  content: "\ee98";
}

.icon-font-size2:before {
  content: "\ee99";
}

.icon-bold2:before {
  content: "\ee9a";
}

.icon-underline2:before {
  content: "\ee9b";
}

.icon-italic2:before {
  content: "\ee9c";
}

.icon-strikethrough3:before {
  content: "\ee9d";
}

.icon-omega:before {
  content: "\ee9e";
}

.icon-sigma:before {
  content: "\ee9f";
}

.icon-nbsp:before {
  content: "\eea0";
}

.icon-page-break:before {
  content: "\eea1";
}

.icon-page-break2:before {
  content: "\eea2";
}

.icon-superscript:before {
  content: "\eea3";
}

.icon-subscript:before {
  content: "\eea4";
}

.icon-superscript2:before {
  content: "\eea5";
}

.icon-subscript2:before {
  content: "\eea6";
}

.icon-text-color:before {
  content: "\eea7";
}

.icon-highlight:before {
  content: "\eea8";
}

.icon-pagebreak:before {
  content: "\eea9";
}

.icon-clear-formatting:before {
  content: "\eeaa";
}

.icon-table:before {
  content: "\eeab";
}

.icon-table2:before {
  content: "\eeac";
}

.icon-insert-template:before {
  content: "\eead";
}

.icon-pilcrow:before {
  content: "\eeae";
}

.icon-ltr:before {
  content: "\eeaf";
}

.icon-rtl:before {
  content: "\eeb0";
}

.icon-ltr2:before {
  content: "\eeb1";
}

.icon-rtl2:before {
  content: "\eeb2";
}

.icon-section:before {
  content: "\eeb3";
}

.icon-paragraph-left2:before {
  content: "\eeb8";
}

.icon-paragraph-center2:before {
  content: "\eeb9";
}

.icon-paragraph-right2:before {
  content: "\eeba";
}

.icon-paragraph-justify2:before {
  content: "\eebb";
}

.icon-indent-increase:before {
  content: "\eebc";
}

.icon-indent-decrease:before {
  content: "\eebd";
}

.icon-paragraph-left3:before {
  content: "\eebe";
}

.icon-paragraph-center3:before {
  content: "\eebf";
}

.icon-paragraph-right3:before {
  content: "\eec0";
}

.icon-paragraph-justify3:before {
  content: "\eec1";
}

.icon-indent-increase2:before {
  content: "\eec2";
}

.icon-indent-decrease2:before {
  content: "\eec3";
}

.icon-share:before {
  content: "\eec4";
}

.icon-share2:before {
  content: "\eec5";
}

.icon-new-tab:before {
  content: "\eec6";
}

.icon-new-tab2:before {
  content: "\eec7";
}

.icon-popout:before {
  content: "\eec8";
}

.icon-embed:before {
  content: "\eec9";
}

.icon-embed2:before {
  content: "\eeca";
}

.icon-markup:before {
  content: "\eecb";
}

.icon-regexp:before {
  content: "\eecc";
}

.icon-regexp2:before {
  content: "\eecd";
}

.icon-code:before {
  content: "\eece";
}

.icon-circle-css:before {
  content: "\eecf";
}

.icon-circle-code:before {
  content: "\eed0";
}

.icon-terminal:before {
  content: "\eed1";
}

.icon-unicode:before {
  content: "\eed2";
}

.icon-seven-segment-0:before {
  content: "\eed3";
}

.icon-seven-segment-1:before {
  content: "\eed4";
}

.icon-seven-segment-2:before {
  content: "\eed5";
}

.icon-seven-segment-3:before {
  content: "\eed6";
}

.icon-seven-segment-4:before {
  content: "\eed7";
}

.icon-seven-segment-5:before {
  content: "\eed8";
}

.icon-seven-segment-6:before {
  content: "\eed9";
}

.icon-seven-segment-7:before {
  content: "\eeda";
}

.icon-seven-segment-8:before {
  content: "\eedb";
}

.icon-seven-segment-9:before {
  content: "\eedc";
}

.icon-share3:before {
  content: "\eedd";
}

.icon-share4:before {
  content: "\eede";
}

.icon-google:before {
  content: "\eee3";
}

.icon-google-plus:before {
  content: "\eee4";
}

.icon-google-plus2:before {
  content: "\eee5";
}

.icon-google-drive:before {
  content: "\eee7";
}

.icon-facebook:before {
  content: "\eee8";
}

.icon-facebook2:before {
  content: "\eee9";
}

.icon-instagram:before {
  content: "\eeec";
}

.icon-twitter:before {
  content: "\eeed";
}

.icon-twitter2:before {
  content: "\eeee";
}

.icon-feed2:before {
  content: "\eef0";
}

.icon-feed3:before {
  content: "\eef1";
}

.icon-youtube:before {
  content: "\eef3";
}

.icon-youtube2:before {
  content: "\eef4";
}

.icon-youtube3:before {
  content: "\eef5";
}

.icon-vimeo:before {
  content: "\eef8";
}

.icon-vimeo2:before {
  content: "\eef9";
}

.icon-lanyrd:before {
  content: "\eefb";
}

.icon-flickr:before {
  content: "\eefc";
}

.icon-flickr2:before {
  content: "\eefd";
}

.icon-flickr3:before {
  content: "\eefe";
}

.icon-picassa:before {
  content: "\ef00";
}

.icon-picassa2:before {
  content: "\ef01";
}

.icon-dribbble:before {
  content: "\ef02";
}

.icon-dribbble2:before {
  content: "\ef03";
}

.icon-dribbble3:before {
  content: "\ef04";
}

.icon-forrst:before {
  content: "\ef05";
}

.icon-forrst2:before {
  content: "\ef06";
}

.icon-deviantart:before {
  content: "\ef07";
}

.icon-deviantart2:before {
  content: "\ef08";
}

.icon-steam:before {
  content: "\ef09";
}

.icon-steam2:before {
  content: "\ef0a";
}

.icon-dropbox:before {
  content: "\ef0b";
}

.icon-onedrive:before {
  content: "\ef0c";
}

.icon-github:before {
  content: "\ef0d";
}

.icon-github4:before {
  content: "\ef10";
}

.icon-github5:before {
  content: "\ef11";
}

.icon-wordpress:before {
  content: "\ef12";
}

.icon-wordpress2:before {
  content: "\ef13";
}

.icon-joomla:before {
  content: "\ef14";
}

.icon-blogger:before {
  content: "\ef15";
}

.icon-blogger2:before {
  content: "\ef16";
}

.icon-tumblr:before {
  content: "\ef17";
}

.icon-tumblr2:before {
  content: "\ef18";
}

.icon-yahoo:before {
  content: "\ef19";
}

.icon-tux:before {
  content: "\ef1a";
}

.icon-apple2:before {
  content: "\ef1b";
}

.icon-finder:before {
  content: "\ef1c";
}

.icon-android:before {
  content: "\ef1d";
}

.icon-windows:before {
  content: "\ef1e";
}

.icon-windows8:before {
  content: "\ef1f";
}

.icon-soundcloud:before {
  content: "\ef20";
}

.icon-soundcloud2:before {
  content: "\ef21";
}

.icon-skype:before {
  content: "\ef22";
}

.icon-reddit:before {
  content: "\ef23";
}

.icon-linkedin:before {
  content: "\ef24";
}

.icon-linkedin2:before {
  content: "\ef25";
}

.icon-lastfm:before {
  content: "\ef26";
}

.icon-lastfm2:before {
  content: "\ef27";
}

.icon-delicious:before {
  content: "\ef28";
}

.icon-stumbleupon:before {
  content: "\ef29";
}

.icon-stumbleupon2:before {
  content: "\ef2a";
}

.icon-stackoverflow:before {
  content: "\ef2b";
}

.icon-pinterest2:before {
  content: "\ef2d";
}

.icon-xing:before {
  content: "\ef2e";
}

.icon-flattr:before {
  content: "\ef30";
}

.icon-foursquare:before {
  content: "\ef31";
}

.icon-paypal:before {
  content: "\ef32";
}

.icon-paypal2:before {
  content: "\ef33";
}

.icon-yelp:before {
  content: "\ef35";
}

.icon-file-pdf:before {
  content: "\ef36";
}

.icon-file-openoffice:before {
  content: "\ef37";
}

.icon-file-word:before {
  content: "\ef38";
}

.icon-file-excel:before {
  content: "\ef39";
}

.icon-libreoffice:before {
  content: "\ef3a";
}

.icon-html5:before {
  content: "\ef3b";
}

.icon-html52:before {
  content: "\ef3c";
}

.icon-css3:before {
  content: "\ef3d";
}

.icon-git:before {
  content: "\ef3e";
}

.icon-svg:before {
  content: "\ef3f";
}

.icon-codepen:before {
  content: "\ef40";
}

.icon-chrome:before {
  content: "\ef41";
}

.icon-firefox:before {
  content: "\ef42";
}

.icon-IE:before {
  content: "\ef43";
}

.icon-opera:before {
  content: "\ef44";
}

.icon-safari:before {
  content: "\ef45";
}

.icon-check2:before {
  content: "\e601";
}

.icon-home4:before {
  content: "\e603";
}

.icon-people:before {
  content: "\e81b";
}

.icon-checkmark-circle2:before {
  content: "\e853";
}

.icon-arrow-up-left32:before {
  content: "\e8ae";
}

.icon-arrow-up52:before {
  content: "\e8af";
}

.icon-arrow-up-right32:before {
  content: "\e8b0";
}

.icon-arrow-right6:before {
  content: "\e8b1";
}

.icon-arrow-down-right32:before {
  content: "\e8b2";
}

.icon-arrow-down52:before {
  content: "\e8b3";
}

.icon-arrow-down-left32:before {
  content: "\e8b4";
}

.icon-arrow-left52:before {
  content: "\e8b5";
}

.icon-calendar5:before {
  content: "\e985";
}

.icon-move-alt1:before {
  content: "\e986";
}

.icon-reload-alt:before {
  content: "\e987";
}

.icon-move-vertical:before {
  content: "\e988";
}

.icon-move-horizontal:before {
  content: "\e989";
}

.icon-hash:before {
  content: "\e98b";
}

.icon-bars-alt:before {
  content: "\e98c";
}

.icon-eye8:before {
  content: "\e98d";
}

.icon-search4:before {
  content: "\e98e";
}

.icon-zoomin3:before {
  content: "\e98f";
}

.icon-zoomout3:before {
  content: "\e990";
}

.icon-add:before {
  content: "\e991";
}

.icon-subtract:before {
  content: "\e992";
}

.icon-exclamation:before {
  content: "\e993";
}

.icon-question6:before {
  content: "\e994";
}

.icon-close2:before {
  content: "\e995";
}

.icon-task:before {
  content: "\e996";
}

.icon-inbox:before {
  content: "\e997";
}

.icon-inbox-alt:before {
  content: "\e998";
}

.icon-envelope:before {
  content: "\e999";
}

.icon-compose:before {
  content: "\e99a";
}

.icon-newspaper2:before {
  content: "\e99b";
}

.icon-calendar22:before {
  content: "\e99c";
}

.icon-hyperlink:before {
  content: "\e99d";
}

.icon-trash:before {
  content: "\e99e";
}

.icon-trash-alt:before {
  content: "\e99f";
}

.icon-grid5:before {
  content: "\e9a0";
}

.icon-grid-alt:before {
  content: "\e9a1";
}

.icon-menu6:before {
  content: "\e9a2";
}

.icon-list3:before {
  content: "\e9a3";
}

.icon-gallery:before {
  content: "\e9a4";
}

.icon-calculator:before {
  content: "\e9a5";
}

.icon-windows2:before {
  content: "\e9a6";
}

.icon-browser:before {
  content: "\e9a7";
}

.icon-portfolio:before {
  content: "\e9a8";
}

.icon-comments:before {
  content: "\e9a9";
}

.icon-screen3:before {
  content: "\e9aa";
}

.icon-iphone:before {
  content: "\e9ab";
}

.icon-ipad:before {
  content: "\e9ac";
}

.icon-googleplus5:before {
  content: "\e9ad";
}

.icon-pin:before {
  content: "\e9ae";
}

.icon-pin-alt:before {
  content: "\e9af";
}

.icon-cog5:before {
  content: "\e9b0";
}

.icon-graduation:before {
  content: "\e9b1";
}

.icon-air:before {
  content: "\e9b2";
}

.icon-droplets:before {
  content: "\e7ee";
}

.icon-statistics:before {
  content: "\e9b4";
}

.icon-pie5:before {
  content: "\e7ef";
}

.icon-cross:before {
  content: "\e9b6";
}

.icon-minus2:before {
  content: "\e9b7";
}

.icon-plus2:before {
  content: "\e9b8";
}

.icon-info3:before {
  content: "\e9b9";
}

.icon-info22:before {
  content: "\e9ba";
}

.icon-question7:before {
  content: "\e9bb";
}

.icon-help:before {
  content: "\e9bc";
}

.icon-warning2:before {
  content: "\e9bd";
}

.icon-add-to-list:before {
  content: "\e9bf";
}

.icon-arrow-left12:before {
  content: "\e9c0";
}

.icon-arrow-down12:before {
  content: "\e9c1";
}

.icon-arrow-up12:before {
  content: "\e9c2";
}

.icon-arrow-right13:before {
  content: "\e9c3";
}

.icon-arrow-left22:before {
  content: "\e9c4";
}

.icon-arrow-down22:before {
  content: "\e9c5";
}

.icon-arrow-up22:before {
  content: "\e9c6";
}

.icon-arrow-right22:before {
  content: "\e9c7";
}

.icon-arrow-left32:before {
  content: "\e9c8";
}

.icon-arrow-down32:before {
  content: "\e9c9";
}

.icon-arrow-up32:before {
  content: "\e9ca";
}

.icon-arrow-right32:before {
  content: "\e9cb";
}

.icon-switch2:before {
  content: "\e647";
}

.icon-checkmark5:before {
  content: "\e600";
}

.icon-ampersand:before {
  content: "\e9cc";
}

.icon-alert:before {
  content: "\e9cf";
}

.icon-alignment-align:before {
  content: "\e9d0";
}

.icon-alignment-aligned-to:before {
  content: "\e9d1";
}

.icon-alignment-unalign:before {
  content: "\e9d2";
}

.icon-arrow-down132:before {
  content: "\e9d3";
}

.icon-arrow-up13:before {
  content: "\e9da";
}

.icon-arrow-left13:before {
  content: "\e9d4";
}

.icon-arrow-right14:before {
  content: "\e9d5";
}

.icon-arrow-small-down:before {
  content: "\e9d6";
}

.icon-arrow-small-left:before {
  content: "\e9d7";
}

.icon-arrow-small-right:before {
  content: "\e9d8";
}

.icon-arrow-small-up:before {
  content: "\e9d9";
}

.icon-check:before {
  content: "\e9db";
}

.icon-chevron-down:before {
  content: "\e9dc";
}

.icon-chevron-left:before {
  content: "\e9dd";
}

.icon-chevron-right:before {
  content: "\e9de";
}

.icon-chevron-up:before {
  content: "\e9df";
}

.icon-clippy:before {
  content: "\f035";
}

.icon-comment:before {
  content: "\f02b";
}

.icon-comment-discussion:before {
  content: "\f04f";
}

.icon-dash:before {
  content: "\e9e2";
}

.icon-diff:before {
  content: "\e9e3";
}

.icon-diff-added:before {
  content: "\e9e4";
}

.icon-diff-ignored:before {
  content: "\e9e5";
}

.icon-diff-modified:before {
  content: "\e9e6";
}

.icon-diff-removed:before {
  content: "\e9e7";
}

.icon-diff-renamed:before {
  content: "\e9e8";
}

.icon-file-media:before {
  content: "\f012";
}

.icon-fold:before {
  content: "\e9ea";
}

.icon-gear:before {
  content: "\e9eb";
}

.icon-git-branch:before {
  content: "\e9ec";
}

.icon-git-commit:before {
  content: "\e9ed";
}

.icon-git-compare:before {
  content: "\e9ee";
}

.icon-git-merge:before {
  content: "\e9ef";
}

.icon-git-pull-request:before {
  content: "\e9f0";
}

.icon-graph:before {
  content: "\f043";
}

.icon-law:before {
  content: "\e9f1";
}

.icon-list-ordered:before {
  content: "\e9f2";
}

.icon-list-unordered:before {
  content: "\e9f3";
}

.icon-mail5:before {
  content: "\e9f4";
}

.icon-mail-read:before {
  content: "\e9f5";
}

.icon-mention:before {
  content: "\e9f6";
}

.icon-mirror:before {
  content: "\f024";
}

.icon-move-down:before {
  content: "\f0a8";
}

.icon-move-left:before {
  content: "\f074";
}

.icon-move-right:before {
  content: "\f0a9";
}

.icon-move-up:before {
  content: "\f0a7";
}

.icon-person:before {
  content: "\f018";
}

.icon-plus22:before {
  content: "\e9f7";
}

.icon-primitive-dot:before {
  content: "\f052";
}

.icon-primitive-square:before {
  content: "\f053";
}

.icon-repo-forked:before {
  content: "\e9f8";
}

.icon-screen-full:before {
  content: "\e9f9";
}

.icon-screen-normal:before {
  content: "\e9fa";
}

.icon-sync:before {
  content: "\e9fb";
}

.icon-three-bars:before {
  content: "\e9fc";
}

.icon-unfold:before {
  content: "\e9fe";
}

.icon-versions:before {
  content: "\e9ff";
}

.icon-x:before {
  content: "\ea00";
}

/*!
 * Bootstrap v4.4.1 (https://getbootstrap.com/)
 * Copyright 2011-2019 The Bootstrap Authors
 * Copyright 2011-2019 Twitter, Inc.
 * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
 */
:root {
  --blue: #007bff;
  --indigo: #6610f2;
  --purple: #6f42c1;
  --pink: #e83e8c;
  --red: #dc3545;
  --orange: #fd7e14;
  --yellow: #ffc107;
  --green: #28a745;
  --teal: #20c997;
  --cyan: #17a2b8;
  --white: #fff;
  --gray: #6c757d;
  --gray-dark: #343a40;
  --primary: #007bff;
  --secondary: #6c757d;
  --success: #28a745;
  --info: #17a2b8;
  --warning: #ffc107;
  --danger: #dc3545;
  --light: #f8f9fa;
  --dark: #343a40;
  --breakpoint-xs: 0;
  --breakpoint-sm: 576px;
  --breakpoint-md: 768px;
  --breakpoint-lg: 992px;
  --breakpoint-xl: 1200px;
  --font-family-sans-serif: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
  --font-family-monospace: SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
}

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

html {
  font-family: sans-serif;
  line-height: 1.15;
  -webkit-text-size-adjust: 100%;
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
}

article, aside, figcaption, figure, footer, header, hgroup, main, nav, section {
  display: block;
}

body {
  margin: 0;
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.5;
  color: #212529;
  text-align: left;
  background-color: #fff;
}

[tabindex="-1"]:focus:not(:focus-visible) {
  outline: 0 !important;
}

hr {
  box-sizing: content-box;
  height: 0;
  overflow: visible;
}

h1, h2, h3, h4, h5, h6 {
  margin-top: 0;
  margin-bottom: 0.5rem;
}

p {
  margin-top: 0;
  margin-bottom: 1rem;
}

abbr[title],
abbr[data-original-title] {
  text-decoration: underline;
  -webkit-text-decoration: underline dotted;
          text-decoration: underline dotted;
  cursor: help;
  border-bottom: 0;
  -webkit-text-decoration-skip-ink: none;
          text-decoration-skip-ink: none;
}

address {
  margin-bottom: 1rem;
  font-style: normal;
  line-height: inherit;
}

ol,
ul,
dl {
  margin-top: 0;
  margin-bottom: 1rem;
}

ol ol,
ul ul,
ol ul,
ul ol {
  margin-bottom: 0;
}

dt {
  font-weight: 700;
}

dd {
  margin-bottom: .5rem;
  margin-left: 0;
}

blockquote {
  margin: 0 0 1rem;
}

b,
strong {
  font-weight: bolder;
}

small {
  font-size: 80%;
}

sub,
sup {
  position: relative;
  font-size: 75%;
  line-height: 0;
  vertical-align: baseline;
}

sub {
  bottom: -.25em;
}

sup {
  top: -.5em;
}

a {
  color: #007bff;
  text-decoration: none;
  background-color: transparent;
}

a:hover {
  color: #0056b3;
  text-decoration: underline;
}

a:not([href]) {
  color: inherit;
  text-decoration: none;
}

a:not([href]):hover {
  color: inherit;
  text-decoration: none;
}

pre,
code,
kbd,
samp {
  font-family: SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
  font-size: 1em;
}

pre {
  margin-top: 0;
  margin-bottom: 1rem;
  overflow: auto;
}

figure {
  margin: 0 0 1rem;
}

img {
  vertical-align: middle;
  border-style: none;
}

svg {
  overflow: hidden;
  vertical-align: middle;
}

table {
  border-collapse: collapse;
}

caption {
  padding-top: 0.75rem;
  padding-bottom: 0.75rem;
  color: #6c757d;
  text-align: left;
  caption-side: bottom;
}

th {
  text-align: inherit;
}

label {
  display: inline-block;
  margin-bottom: 0.5rem;
}

button {
  border-radius: 0;
}

button:focus {
  outline: 1px dotted;
  outline: 5px auto -webkit-focus-ring-color;
}

input,
button,
select,
optgroup,
textarea {
  margin: 0;
  font-family: inherit;
  font-size: inherit;
  line-height: inherit;
}

button,
input {
  overflow: visible;
}

button,
select {
  text-transform: none;
}

select {
  word-wrap: normal;
}

button,
[type="button"],
[type="reset"],
[type="submit"] {
  -webkit-appearance: button;
}

button:not(:disabled),
[type="button"]:not(:disabled),
[type="reset"]:not(:disabled),
[type="submit"]:not(:disabled) {
  cursor: pointer;
}

button::-moz-focus-inner,
[type="button"]::-moz-focus-inner,
[type="reset"]::-moz-focus-inner,
[type="submit"]::-moz-focus-inner {
  padding: 0;
  border-style: none;
}

input[type="radio"],
input[type="checkbox"] {
  box-sizing: border-box;
  padding: 0;
}

input[type="date"],
input[type="time"],
input[type="datetime-local"],
input[type="month"] {
  -webkit-appearance: listbox;
}

textarea {
  overflow: auto;
  resize: vertical;
}

fieldset {
  min-width: 0;
  padding: 0;
  margin: 0;
  border: 0;
}

legend {
  display: block;
  width: 100%;
  max-width: 100%;
  padding: 0;
  margin-bottom: .5rem;
  font-size: 1.5rem;
  line-height: inherit;
  color: inherit;
  white-space: normal;
}

progress {
  vertical-align: baseline;
}

[type="number"]::-webkit-inner-spin-button,
[type="number"]::-webkit-outer-spin-button {
  height: auto;
}

[type="search"] {
  outline-offset: -2px;
  -webkit-appearance: none;
}

[type="search"]::-webkit-search-decoration {
  -webkit-appearance: none;
}

::-webkit-file-upload-button {
  font: inherit;
  -webkit-appearance: button;
}

output {
  display: inline-block;
}

summary {
  display: list-item;
  cursor: pointer;
}

template {
  display: none;
}

[hidden] {
  display: none !important;
}

h1, h2, h3, h4, h5, h6,
.h1, .h2, .h3, .h4, .h5, .h6 {
  margin-bottom: 0.5rem;
  font-weight: 500;
  line-height: 1.2;
}

h1, .h1 {
  font-size: 2.5rem;
}

h2, .h2 {
  font-size: 2rem;
}

h3, .h3 {
  font-size: 1.75rem;
}

h4, .h4 {
  font-size: 1.5rem;
}

h5, .h5 {
  font-size: 1.25rem;
}

h6, .h6 {
  font-size: 1rem;
}

.lead {
  font-size: 1.25rem;
  font-weight: 300;
}

.display-1 {
  font-size: 6rem;
  font-weight: 300;
  line-height: 1.2;
}

.display-2 {
  font-size: 5.5rem;
  font-weight: 300;
  line-height: 1.2;
}

.display-3 {
  font-size: 4.5rem;
  font-weight: 300;
  line-height: 1.2;
}

.display-4 {
  font-size: 3.5rem;
  font-weight: 300;
  line-height: 1.2;
}

hr {
  margin-top: 1rem;
  margin-bottom: 1rem;
  border: 0;
  border-top: 1px solid rgba(0, 0, 0, 0.1);
}

small,
.small {
  font-size: 80%;
  font-weight: 400;
}

mark,
.mark {
  padding: 0.2em;
  background-color: #fcf8e3;
}

.list-unstyled {
  padding-left: 0;
  list-style: none;
}

.list-inline {
  padding-left: 0;
  list-style: none;
}

.list-inline-item {
  display: inline-block;
}

.list-inline-item:not(:last-child) {
  margin-right: 0.5rem;
}

.initialism {
  font-size: 90%;
  text-transform: uppercase;
}

.blockquote {
  margin-bottom: 1rem;
  font-size: 1.25rem;
}

.blockquote-footer {
  display: block;
  font-size: 80%;
  color: #6c757d;
}

.blockquote-footer::before {
  content: "\2014\00A0";
}

.img-fluid {
  max-width: 100%;
  height: auto;
}

.img-thumbnail {
  padding: 0.25rem;
  background-color: #fff;
  border: 1px solid #dee2e6;
  border-radius: 0.25rem;
  max-width: 100%;
  height: auto;
}

.figure {
  display: inline-block;
}

.figure-img {
  margin-bottom: 0.5rem;
  line-height: 1;
}

.figure-caption {
  font-size: 90%;
  color: #6c757d;
}

code {
  font-size: 87.5%;
  color: #e83e8c;
  word-wrap: break-word;
}

a > code {
  color: inherit;
}

kbd {
  padding: 0.2rem 0.4rem;
  font-size: 87.5%;
  color: #fff;
  background-color: #212529;
  border-radius: 0.2rem;
}

kbd kbd {
  padding: 0;
  font-size: 100%;
  font-weight: 700;
}

pre {
  display: block;
  font-size: 87.5%;
  color: #212529;
}

pre code {
  font-size: inherit;
  color: inherit;
  word-break: normal;
}

.pre-scrollable {
  max-height: 340px;
  overflow-y: scroll;
}

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

@media (min-width: 576px) {
  .container {
    max-width: 540px;
  }
}

@media (min-width: 768px) {
  .container {
    max-width: 720px;
  }
}

@media (min-width: 992px) {
  .container {
    max-width: 960px;
  }
}

@media (min-width: 1200px) {
  .container {
    max-width: 1140px;
  }
}

.container-fluid, .container-sm, .container-md, .container-lg, .container-xl {
  width: 100%;
  padding-right: 15px;
  padding-left: 15px;
  margin-right: auto;
  margin-left: auto;
}

@media (min-width: 576px) {
  .container, .container-sm {
    max-width: 540px;
  }
}

@media (min-width: 768px) {
  .container, .container-sm, .container-md {
    max-width: 720px;
  }
}

@media (min-width: 992px) {
  .container, .container-sm, .container-md, .container-lg {
    max-width: 960px;
  }
}

@media (min-width: 1200px) {
  .container, .container-sm, .container-md, .container-lg, .container-xl {
    max-width: 1140px;
  }
}

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

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

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

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

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

.row-cols-1 > * {
  flex: 0 0 100%;
  max-width: 100%;
}

.row-cols-2 > * {
  flex: 0 0 50%;
  max-width: 50%;
}

.row-cols-3 > * {
  flex: 0 0 33.33333%;
  max-width: 33.33333%;
}

.row-cols-4 > * {
  flex: 0 0 25%;
  max-width: 25%;
}

.row-cols-5 > * {
  flex: 0 0 20%;
  max-width: 20%;
}

.row-cols-6 > * {
  flex: 0 0 16.66667%;
  max-width: 16.66667%;
}

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

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

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

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

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

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

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

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

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

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

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

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

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

.order-first {
  order: -1;
}

.order-last {
  order: 13;
}

.order-0 {
  order: 0;
}

.order-1 {
  order: 1;
}

.order-2 {
  order: 2;
}

.order-3 {
  order: 3;
}

.order-4 {
  order: 4;
}

.order-5 {
  order: 5;
}

.order-6 {
  order: 6;
}

.order-7 {
  order: 7;
}

.order-8 {
  order: 8;
}

.order-9 {
  order: 9;
}

.order-10 {
  order: 10;
}

.order-11 {
  order: 11;
}

.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: 576px) {
  .col-sm {
    flex-basis: 0;
    flex-grow: 1;
    max-width: 100%;
  }
  .row-cols-sm-1 > * {
    flex: 0 0 100%;
    max-width: 100%;
  }
  .row-cols-sm-2 > * {
    flex: 0 0 50%;
    max-width: 50%;
  }
  .row-cols-sm-3 > * {
    flex: 0 0 33.33333%;
    max-width: 33.33333%;
  }
  .row-cols-sm-4 > * {
    flex: 0 0 25%;
    max-width: 25%;
  }
  .row-cols-sm-5 > * {
    flex: 0 0 20%;
    max-width: 20%;
  }
  .row-cols-sm-6 > * {
    flex: 0 0 16.66667%;
    max-width: 16.66667%;
  }
  .col-sm-auto {
    flex: 0 0 auto;
    width: auto;
    max-width: 100%;
  }
  .col-sm-1 {
    flex: 0 0 8.33333%;
    max-width: 8.33333%;
  }
  .col-sm-2 {
    flex: 0 0 16.66667%;
    max-width: 16.66667%;
  }
  .col-sm-3 {
    flex: 0 0 25%;
    max-width: 25%;
  }
  .col-sm-4 {
    flex: 0 0 33.33333%;
    max-width: 33.33333%;
  }
  .col-sm-5 {
    flex: 0 0 41.66667%;
    max-width: 41.66667%;
  }
  .col-sm-6 {
    flex: 0 0 50%;
    max-width: 50%;
  }
  .col-sm-7 {
    flex: 0 0 58.33333%;
    max-width: 58.33333%;
  }
  .col-sm-8 {
    flex: 0 0 66.66667%;
    max-width: 66.66667%;
  }
  .col-sm-9 {
    flex: 0 0 75%;
    max-width: 75%;
  }
  .col-sm-10 {
    flex: 0 0 83.33333%;
    max-width: 83.33333%;
  }
  .col-sm-11 {
    flex: 0 0 91.66667%;
    max-width: 91.66667%;
  }
  .col-sm-12 {
    flex: 0 0 100%;
    max-width: 100%;
  }
  .order-sm-first {
    order: -1;
  }
  .order-sm-last {
    order: 13;
  }
  .order-sm-0 {
    order: 0;
  }
  .order-sm-1 {
    order: 1;
  }
  .order-sm-2 {
    order: 2;
  }
  .order-sm-3 {
    order: 3;
  }
  .order-sm-4 {
    order: 4;
  }
  .order-sm-5 {
    order: 5;
  }
  .order-sm-6 {
    order: 6;
  }
  .order-sm-7 {
    order: 7;
  }
  .order-sm-8 {
    order: 8;
  }
  .order-sm-9 {
    order: 9;
  }
  .order-sm-10 {
    order: 10;
  }
  .order-sm-11 {
    order: 11;
  }
  .order-sm-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: 768px) {
  .col-md {
    flex-basis: 0;
    flex-grow: 1;
    max-width: 100%;
  }
  .row-cols-md-1 > * {
    flex: 0 0 100%;
    max-width: 100%;
  }
  .row-cols-md-2 > * {
    flex: 0 0 50%;
    max-width: 50%;
  }
  .row-cols-md-3 > * {
    flex: 0 0 33.33333%;
    max-width: 33.33333%;
  }
  .row-cols-md-4 > * {
    flex: 0 0 25%;
    max-width: 25%;
  }
  .row-cols-md-5 > * {
    flex: 0 0 20%;
    max-width: 20%;
  }
  .row-cols-md-6 > * {
    flex: 0 0 16.66667%;
    max-width: 16.66667%;
  }
  .col-md-auto {
    flex: 0 0 auto;
    width: auto;
    max-width: 100%;
  }
  .col-md-1 {
    flex: 0 0 8.33333%;
    max-width: 8.33333%;
  }
  .col-md-2 {
    flex: 0 0 16.66667%;
    max-width: 16.66667%;
  }
  .col-md-3 {
    flex: 0 0 25%;
    max-width: 25%;
  }
  .col-md-4 {
    flex: 0 0 33.33333%;
    max-width: 33.33333%;
  }
  .col-md-5 {
    flex: 0 0 41.66667%;
    max-width: 41.66667%;
  }
  .col-md-6 {
    flex: 0 0 50%;
    max-width: 50%;
  }
  .col-md-7 {
    flex: 0 0 58.33333%;
    max-width: 58.33333%;
  }
  .col-md-8 {
    flex: 0 0 66.66667%;
    max-width: 66.66667%;
  }
  .col-md-9 {
    flex: 0 0 75%;
    max-width: 75%;
  }
  .col-md-10 {
    flex: 0 0 83.33333%;
    max-width: 83.33333%;
  }
  .col-md-11 {
    flex: 0 0 91.66667%;
    max-width: 91.66667%;
  }
  .col-md-12 {
    flex: 0 0 100%;
    max-width: 100%;
  }
  .order-md-first {
    order: -1;
  }
  .order-md-last {
    order: 13;
  }
  .order-md-0 {
    order: 0;
  }
  .order-md-1 {
    order: 1;
  }
  .order-md-2 {
    order: 2;
  }
  .order-md-3 {
    order: 3;
  }
  .order-md-4 {
    order: 4;
  }
  .order-md-5 {
    order: 5;
  }
  .order-md-6 {
    order: 6;
  }
  .order-md-7 {
    order: 7;
  }
  .order-md-8 {
    order: 8;
  }
  .order-md-9 {
    order: 9;
  }
  .order-md-10 {
    order: 10;
  }
  .order-md-11 {
    order: 11;
  }
  .order-md-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: 992px) {
  .col-lg {
    flex-basis: 0;
    flex-grow: 1;
    max-width: 100%;
  }
  .row-cols-lg-1 > * {
    flex: 0 0 100%;
    max-width: 100%;
  }
  .row-cols-lg-2 > * {
    flex: 0 0 50%;
    max-width: 50%;
  }
  .row-cols-lg-3 > * {
    flex: 0 0 33.33333%;
    max-width: 33.33333%;
  }
  .row-cols-lg-4 > * {
    flex: 0 0 25%;
    max-width: 25%;
  }
  .row-cols-lg-5 > * {
    flex: 0 0 20%;
    max-width: 20%;
  }
  .row-cols-lg-6 > * {
    flex: 0 0 16.66667%;
    max-width: 16.66667%;
  }
  .col-lg-auto {
    flex: 0 0 auto;
    width: auto;
    max-width: 100%;
  }
  .col-lg-1 {
    flex: 0 0 8.33333%;
    max-width: 8.33333%;
  }
  .col-lg-2 {
    flex: 0 0 16.66667%;
    max-width: 16.66667%;
  }
  .col-lg-3 {
    flex: 0 0 25%;
    max-width: 25%;
  }
  .col-lg-4 {
    flex: 0 0 33.33333%;
    max-width: 33.33333%;
  }
  .col-lg-5 {
    flex: 0 0 41.66667%;
    max-width: 41.66667%;
  }
  .col-lg-6 {
    flex: 0 0 50%;
    max-width: 50%;
  }
  .col-lg-7 {
    flex: 0 0 58.33333%;
    max-width: 58.33333%;
  }
  .col-lg-8 {
    flex: 0 0 66.66667%;
    max-width: 66.66667%;
  }
  .col-lg-9 {
    flex: 0 0 75%;
    max-width: 75%;
  }
  .col-lg-10 {
    flex: 0 0 83.33333%;
    max-width: 83.33333%;
  }
  .col-lg-11 {
    flex: 0 0 91.66667%;
    max-width: 91.66667%;
  }
  .col-lg-12 {
    flex: 0 0 100%;
    max-width: 100%;
  }
  .order-lg-first {
    order: -1;
  }
  .order-lg-last {
    order: 13;
  }
  .order-lg-0 {
    order: 0;
  }
  .order-lg-1 {
    order: 1;
  }
  .order-lg-2 {
    order: 2;
  }
  .order-lg-3 {
    order: 3;
  }
  .order-lg-4 {
    order: 4;
  }
  .order-lg-5 {
    order: 5;
  }
  .order-lg-6 {
    order: 6;
  }
  .order-lg-7 {
    order: 7;
  }
  .order-lg-8 {
    order: 8;
  }
  .order-lg-9 {
    order: 9;
  }
  .order-lg-10 {
    order: 10;
  }
  .order-lg-11 {
    order: 11;
  }
  .order-lg-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: 1200px) {
  .col-xl {
    flex-basis: 0;
    flex-grow: 1;
    max-width: 100%;
  }
  .row-cols-xl-1 > * {
    flex: 0 0 100%;
    max-width: 100%;
  }
  .row-cols-xl-2 > * {
    flex: 0 0 50%;
    max-width: 50%;
  }
  .row-cols-xl-3 > * {
    flex: 0 0 33.33333%;
    max-width: 33.33333%;
  }
  .row-cols-xl-4 > * {
    flex: 0 0 25%;
    max-width: 25%;
  }
  .row-cols-xl-5 > * {
    flex: 0 0 20%;
    max-width: 20%;
  }
  .row-cols-xl-6 > * {
    flex: 0 0 16.66667%;
    max-width: 16.66667%;
  }
  .col-xl-auto {
    flex: 0 0 auto;
    width: auto;
    max-width: 100%;
  }
  .col-xl-1 {
    flex: 0 0 8.33333%;
    max-width: 8.33333%;
  }
  .col-xl-2 {
    flex: 0 0 16.66667%;
    max-width: 16.66667%;
  }
  .col-xl-3 {
    flex: 0 0 25%;
    max-width: 25%;
  }
  .col-xl-4 {
    flex: 0 0 33.33333%;
    max-width: 33.33333%;
  }
  .col-xl-5 {
    flex: 0 0 41.66667%;
    max-width: 41.66667%;
  }
  .col-xl-6 {
    flex: 0 0 50%;
    max-width: 50%;
  }
  .col-xl-7 {
    flex: 0 0 58.33333%;
    max-width: 58.33333%;
  }
  .col-xl-8 {
    flex: 0 0 66.66667%;
    max-width: 66.66667%;
  }
  .col-xl-9 {
    flex: 0 0 75%;
    max-width: 75%;
  }
  .col-xl-10 {
    flex: 0 0 83.33333%;
    max-width: 83.33333%;
  }
  .col-xl-11 {
    flex: 0 0 91.66667%;
    max-width: 91.66667%;
  }
  .col-xl-12 {
    flex: 0 0 100%;
    max-width: 100%;
  }
  .order-xl-first {
    order: -1;
  }
  .order-xl-last {
    order: 13;
  }
  .order-xl-0 {
    order: 0;
  }
  .order-xl-1 {
    order: 1;
  }
  .order-xl-2 {
    order: 2;
  }
  .order-xl-3 {
    order: 3;
  }
  .order-xl-4 {
    order: 4;
  }
  .order-xl-5 {
    order: 5;
  }
  .order-xl-6 {
    order: 6;
  }
  .order-xl-7 {
    order: 7;
  }
  .order-xl-8 {
    order: 8;
  }
  .order-xl-9 {
    order: 9;
  }
  .order-xl-10 {
    order: 10;
  }
  .order-xl-11 {
    order: 11;
  }
  .order-xl-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%;
  }
}

.table {
  width: 100%;
  margin-bottom: 1rem;
  color: #212529;
}

.table th,
.table td {
  padding: 0.75rem;
  vertical-align: top;
  border-top: 1px solid #dee2e6;
}

.table thead th {
  vertical-align: bottom;
  border-bottom: 2px solid #dee2e6;
}

.table tbody + tbody {
  border-top: 2px solid #dee2e6;
}

.table-sm th,
.table-sm td {
  padding: 0.3rem;
}

.table-bordered {
  border: 1px solid #dee2e6;
}

.table-bordered th,
.table-bordered td {
  border: 1px solid #dee2e6;
}

.table-bordered thead th,
.table-bordered thead td {
  border-bottom-width: 2px;
}

.table-borderless th,
.table-borderless td,
.table-borderless thead th,
.table-borderless tbody + tbody {
  border: 0;
}

.table-striped tbody tr:nth-of-type(odd) {
  background-color: rgba(0, 0, 0, 0.05);
}

.table-hover tbody tr:hover {
  color: #212529;
  background-color: rgba(0, 0, 0, 0.075);
}

.table-primary,
.table-primary > th,
.table-primary > td {
  background-color: #b8daff;
}

.table-primary th,
.table-primary td,
.table-primary thead th,
.table-primary tbody + tbody {
  border-color: #7abaff;
}

.table-hover .table-primary:hover {
  background-color: #9fcdff;
}

.table-hover .table-primary:hover > td,
.table-hover .table-primary:hover > th {
  background-color: #9fcdff;
}

.table-secondary,
.table-secondary > th,
.table-secondary > td {
  background-color: #d6d8db;
}

.table-secondary th,
.table-secondary td,
.table-secondary thead th,
.table-secondary tbody + tbody {
  border-color: #b3b7bb;
}

.table-hover .table-secondary:hover {
  background-color: #c8cbcf;
}

.table-hover .table-secondary:hover > td,
.table-hover .table-secondary:hover > th {
  background-color: #c8cbcf;
}

.table-success,
.table-success > th,
.table-success > td {
  background-color: #c3e6cb;
}

.table-success th,
.table-success td,
.table-success thead th,
.table-success tbody + tbody {
  border-color: #8fd19e;
}

.table-hover .table-success:hover {
  background-color: #b1dfbb;
}

.table-hover .table-success:hover > td,
.table-hover .table-success:hover > th {
  background-color: #b1dfbb;
}

.table-info,
.table-info > th,
.table-info > td {
  background-color: #bee5eb;
}

.table-info th,
.table-info td,
.table-info thead th,
.table-info tbody + tbody {
  border-color: #86cfda;
}

.table-hover .table-info:hover {
  background-color: #abdde5;
}

.table-hover .table-info:hover > td,
.table-hover .table-info:hover > th {
  background-color: #abdde5;
}

.table-warning,
.table-warning > th,
.table-warning > td {
  background-color: #ffeeba;
}

.table-warning th,
.table-warning td,
.table-warning thead th,
.table-warning tbody + tbody {
  border-color: #ffdf7e;
}

.table-hover .table-warning:hover {
  background-color: #ffe8a1;
}

.table-hover .table-warning:hover > td,
.table-hover .table-warning:hover > th {
  background-color: #ffe8a1;
}

.table-danger,
.table-danger > th,
.table-danger > td {
  background-color: #f5c6cb;
}

.table-danger th,
.table-danger td,
.table-danger thead th,
.table-danger tbody + tbody {
  border-color: #ed969e;
}

.table-hover .table-danger:hover {
  background-color: #f1b0b7;
}

.table-hover .table-danger:hover > td,
.table-hover .table-danger:hover > th {
  background-color: #f1b0b7;
}

.table-light,
.table-light > th,
.table-light > td {
  background-color: #fdfdfe;
}

.table-light th,
.table-light td,
.table-light thead th,
.table-light tbody + tbody {
  border-color: #fbfcfc;
}

.table-hover .table-light:hover {
  background-color: #ececf6;
}

.table-hover .table-light:hover > td,
.table-hover .table-light:hover > th {
  background-color: #ececf6;
}

.table-dark,
.table-dark > th,
.table-dark > td {
  background-color: #c6c8ca;
}

.table-dark th,
.table-dark td,
.table-dark thead th,
.table-dark tbody + tbody {
  border-color: #95999c;
}

.table-hover .table-dark:hover {
  background-color: #b9bbbe;
}

.table-hover .table-dark:hover > td,
.table-hover .table-dark:hover > th {
  background-color: #b9bbbe;
}

.table-active,
.table-active > th,
.table-active > td {
  background-color: rgba(0, 0, 0, 0.075);
}

.table-hover .table-active:hover {
  background-color: rgba(0, 0, 0, 0.075);
}

.table-hover .table-active:hover > td,
.table-hover .table-active:hover > th {
  background-color: rgba(0, 0, 0, 0.075);
}

.table .thead-dark th {
  color: #fff;
  background-color: #343a40;
  border-color: #454d55;
}

.table .thead-light th {
  color: #495057;
  background-color: #e9ecef;
  border-color: #dee2e6;
}

.table-dark {
  color: #fff;
  background-color: #343a40;
}

.table-dark th,
.table-dark td,
.table-dark thead th {
  border-color: #454d55;
}

.table-dark.table-bordered {
  border: 0;
}

.table-dark.table-striped tbody tr:nth-of-type(odd) {
  background-color: rgba(255, 255, 255, 0.05);
}

.table-dark.table-hover tbody tr:hover {
  color: #fff;
  background-color: rgba(255, 255, 255, 0.075);
}

@media (max-width: 575.98px) {
  .table-responsive-sm {
    display: block;
    width: 100%;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
  }
  .table-responsive-sm > .table-bordered {
    border: 0;
  }
}

@media (max-width: 767.98px) {
  .table-responsive-md {
    display: block;
    width: 100%;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
  }
  .table-responsive-md > .table-bordered {
    border: 0;
  }
}

@media (max-width: 991.98px) {
  .table-responsive-lg {
    display: block;
    width: 100%;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
  }
  .table-responsive-lg > .table-bordered {
    border: 0;
  }
}

@media (max-width: 1199.98px) {
  .table-responsive-xl {
    display: block;
    width: 100%;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
  }
  .table-responsive-xl > .table-bordered {
    border: 0;
  }
}

.table-responsive {
  display: block;
  width: 100%;
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
}

.table-responsive > .table-bordered {
  border: 0;
}

.form-control {
  display: block;
  width: 100%;
  height: calc(1.5em + 0.75rem + 2px);
  padding: 0.375rem 0.75rem;
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.5;
  color: #495057;
  background-color: #fff;
  background-clip: padding-box;
  border: 1px solid #ced4da;
  border-radius: 0.25rem;
  transition: border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
}

@media (prefers-reduced-motion: reduce) {
  .form-control {
    transition: none;
  }
}

.form-control::-ms-expand {
  background-color: transparent;
  border: 0;
}

.form-control:-moz-focusring {
  color: transparent;
  text-shadow: 0 0 0 #495057;
}

.form-control:focus {
  color: #495057;
  background-color: #fff;
  border-color: #80bdff;
  outline: 0;
  box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.25);
}

.form-control::-webkit-input-placeholder {
  color: #6c757d;
  opacity: 1;
}

.form-control::-moz-placeholder {
  color: #6c757d;
  opacity: 1;
}

.form-control:-ms-input-placeholder {
  color: #6c757d;
  opacity: 1;
}

.form-control::-ms-input-placeholder {
  color: #6c757d;
  opacity: 1;
}

.form-control::placeholder {
  color: #6c757d;
  opacity: 1;
}

.form-control:disabled, .form-control[readonly] {
  background-color: #e9ecef;
  opacity: 1;
}

select.form-control:focus::-ms-value {
  color: #495057;
  background-color: #fff;
}

.form-control-file,
.form-control-range {
  display: block;
  width: 100%;
}

.col-form-label {
  padding-top: calc(0.375rem + 1px);
  padding-bottom: calc(0.375rem + 1px);
  margin-bottom: 0;
  font-size: inherit;
  line-height: 1.5;
}

.col-form-label-lg {
  padding-top: calc(0.5rem + 1px);
  padding-bottom: calc(0.5rem + 1px);
  font-size: 1.25rem;
  line-height: 1.5;
}

.col-form-label-sm {
  padding-top: calc(0.25rem + 1px);
  padding-bottom: calc(0.25rem + 1px);
  font-size: 0.875rem;
  line-height: 1.5;
}

.form-control-plaintext {
  display: block;
  width: 100%;
  padding: 0.375rem 0;
  margin-bottom: 0;
  font-size: 1rem;
  line-height: 1.5;
  color: #212529;
  background-color: transparent;
  border: solid transparent;
  border-width: 1px 0;
}

.form-control-plaintext.form-control-sm, .form-control-plaintext.form-control-lg {
  padding-right: 0;
  padding-left: 0;
}

.form-control-sm {
  height: calc(1.5em + 0.5rem + 2px);
  padding: 0.25rem 0.5rem;
  font-size: 0.875rem;
  line-height: 1.5;
  border-radius: 0.2rem;
}

.form-control-lg {
  height: calc(1.5em + 1rem + 2px);
  padding: 0.5rem 1rem;
  font-size: 1.25rem;
  line-height: 1.5;
  border-radius: 0.3rem;
}

select.form-control[size], select.form-control[multiple] {
  height: auto;
}

textarea.form-control {
  height: auto;
}

.form-group {
  margin-bottom: 1rem;
}

.form-text {
  display: block;
  margin-top: 0.25rem;
}

.form-row {
  display: flex;
  flex-wrap: wrap;
  margin-right: -5px;
  margin-left: -5px;
}

.form-row > .col,
.form-row > [class*="col-"] {
  padding-right: 5px;
  padding-left: 5px;
}

.form-check {
  position: relative;
  display: block;
  padding-left: 1.25rem;
}

.form-check-input {
  position: absolute;
  margin-top: 0.3rem;
  margin-left: -1.25rem;
}

.form-check-input[disabled] ~ .form-check-label,
.form-check-input:disabled ~ .form-check-label {
  color: #6c757d;
}

.form-check-label {
  margin-bottom: 0;
}

.form-check-inline {
  display: inline-flex;
  align-items: center;
  padding-left: 0;
  margin-right: 0.75rem;
}

.form-check-inline .form-check-input {
  position: static;
  margin-top: 0;
  margin-right: 0.3125rem;
  margin-left: 0;
}

.valid-feedback {
  display: none;
  width: 100%;
  margin-top: 0.25rem;
  font-size: 80%;
  color: #28a745;
}

.valid-tooltip {
  position: absolute;
  top: 100%;
  z-index: 5;
  display: none;
  max-width: 100%;
  padding: 0.25rem 0.5rem;
  margin-top: .1rem;
  font-size: 0.875rem;
  line-height: 1.5;
  color: #fff;
  background-color: rgba(40, 167, 69, 0.9);
  border-radius: 0.25rem;
}

.was-validated :valid ~ .valid-feedback,
.was-validated :valid ~ .valid-tooltip,
.is-valid ~ .valid-feedback,
.is-valid ~ .valid-tooltip {
  display: block;
}

.was-validated .form-control:valid, .form-control.is-valid {
  border-color: #28a745;
  padding-right: calc(1.5em + 0.75rem);
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='8' height='8' viewBox='0 0 8 8'%3e%3cpath fill='%2328a745' d='M2.3 6.73L.6 4.53c-.4-1.04.46-1.4 1.1-.8l1.1 1.4 3.4-3.8c.6-.63 1.6-.27 1.2.7l-4 4.6c-.43.5-.8.4-1.1.1z'/%3e%3c/svg%3e");
  background-repeat: no-repeat;
  background-position: right calc(0.375em + 0.1875rem) center;
  background-size: calc(0.75em + 0.375rem) calc(0.75em + 0.375rem);
}

.was-validated .form-control:valid:focus, .form-control.is-valid:focus {
  border-color: #28a745;
  box-shadow: 0 0 0 0.2rem rgba(40, 167, 69, 0.25);
}

.was-validated textarea.form-control:valid, textarea.form-control.is-valid {
  padding-right: calc(1.5em + 0.75rem);
  background-position: top calc(0.375em + 0.1875rem) right calc(0.375em + 0.1875rem);
}

.was-validated .custom-select:valid, .custom-select.is-valid {
  border-color: #28a745;
  padding-right: calc(0.75em + 2.3125rem);
  background: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='4' height='5' viewBox='0 0 4 5'%3e%3cpath fill='%23343a40' d='M2 0L0 2h4zm0 5L0 3h4z'/%3e%3c/svg%3e") no-repeat right 0.75rem center/8px 10px, url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='8' height='8' viewBox='0 0 8 8'%3e%3cpath fill='%2328a745' d='M2.3 6.73L.6 4.53c-.4-1.04.46-1.4 1.1-.8l1.1 1.4 3.4-3.8c.6-.63 1.6-.27 1.2.7l-4 4.6c-.43.5-.8.4-1.1.1z'/%3e%3c/svg%3e") #fff no-repeat center right 1.75rem/calc(0.75em + 0.375rem) calc(0.75em + 0.375rem);
}

.was-validated .custom-select:valid:focus, .custom-select.is-valid:focus {
  border-color: #28a745;
  box-shadow: 0 0 0 0.2rem rgba(40, 167, 69, 0.25);
}

.was-validated .form-check-input:valid ~ .form-check-label, .form-check-input.is-valid ~ .form-check-label {
  color: #28a745;
}

.was-validated .form-check-input:valid ~ .valid-feedback,
.was-validated .form-check-input:valid ~ .valid-tooltip, .form-check-input.is-valid ~ .valid-feedback,
.form-check-input.is-valid ~ .valid-tooltip {
  display: block;
}

.was-validated .custom-control-input:valid ~ .custom-control-label, .custom-control-input.is-valid ~ .custom-control-label {
  color: #28a745;
}

.was-validated .custom-control-input:valid ~ .custom-control-label::before, .custom-control-input.is-valid ~ .custom-control-label::before {
  border-color: #28a745;
}

.was-validated .custom-control-input:valid:checked ~ .custom-control-label::before, .custom-control-input.is-valid:checked ~ .custom-control-label::before {
  border-color: #34ce57;
  background-color: #34ce57;
}

.was-validated .custom-control-input:valid:focus ~ .custom-control-label::before, .custom-control-input.is-valid:focus ~ .custom-control-label::before {
  box-shadow: 0 0 0 0.2rem rgba(40, 167, 69, 0.25);
}

.was-validated .custom-control-input:valid:focus:not(:checked) ~ .custom-control-label::before, .custom-control-input.is-valid:focus:not(:checked) ~ .custom-control-label::before {
  border-color: #28a745;
}

.was-validated .custom-file-input:valid ~ .custom-file-label, .custom-file-input.is-valid ~ .custom-file-label {
  border-color: #28a745;
}

.was-validated .custom-file-input:valid:focus ~ .custom-file-label, .custom-file-input.is-valid:focus ~ .custom-file-label {
  border-color: #28a745;
  box-shadow: 0 0 0 0.2rem rgba(40, 167, 69, 0.25);
}

.invalid-feedback {
  display: none;
  width: 100%;
  margin-top: 0.25rem;
  font-size: 80%;
  color: #dc3545;
}

.invalid-tooltip {
  position: absolute;
  top: 100%;
  z-index: 5;
  display: none;
  max-width: 100%;
  padding: 0.25rem 0.5rem;
  margin-top: .1rem;
  font-size: 0.875rem;
  line-height: 1.5;
  color: #fff;
  background-color: rgba(220, 53, 69, 0.9);
  border-radius: 0.25rem;
}

.was-validated :invalid ~ .invalid-feedback,
.was-validated :invalid ~ .invalid-tooltip,
.is-invalid ~ .invalid-feedback,
.is-invalid ~ .invalid-tooltip {
  display: block;
}

.was-validated .form-control:invalid, .form-control.is-invalid {
  border-color: #dc3545;
  padding-right: calc(1.5em + 0.75rem);
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' fill='none' stroke='%23dc3545' viewBox='0 0 12 12'%3e%3ccircle cx='6' cy='6' r='4.5'/%3e%3cpath stroke-linejoin='round' d='M5.8 3.6h.4L6 6.5z'/%3e%3ccircle cx='6' cy='8.2' r='.6' fill='%23dc3545' stroke='none'/%3e%3c/svg%3e");
  background-repeat: no-repeat;
  background-position: right calc(0.375em + 0.1875rem) center;
  background-size: calc(0.75em + 0.375rem) calc(0.75em + 0.375rem);
}

.was-validated .form-control:invalid:focus, .form-control.is-invalid:focus {
  border-color: #dc3545;
  box-shadow: 0 0 0 0.2rem rgba(220, 53, 69, 0.25);
}

.was-validated textarea.form-control:invalid, textarea.form-control.is-invalid {
  padding-right: calc(1.5em + 0.75rem);
  background-position: top calc(0.375em + 0.1875rem) right calc(0.375em + 0.1875rem);
}

.was-validated .custom-select:invalid, .custom-select.is-invalid {
  border-color: #dc3545;
  padding-right: calc(0.75em + 2.3125rem);
  background: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='4' height='5' viewBox='0 0 4 5'%3e%3cpath fill='%23343a40' d='M2 0L0 2h4zm0 5L0 3h4z'/%3e%3c/svg%3e") no-repeat right 0.75rem center/8px 10px, url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' fill='none' stroke='%23dc3545' viewBox='0 0 12 12'%3e%3ccircle cx='6' cy='6' r='4.5'/%3e%3cpath stroke-linejoin='round' d='M5.8 3.6h.4L6 6.5z'/%3e%3ccircle cx='6' cy='8.2' r='.6' fill='%23dc3545' stroke='none'/%3e%3c/svg%3e") #fff no-repeat center right 1.75rem/calc(0.75em + 0.375rem) calc(0.75em + 0.375rem);
}

.was-validated .custom-select:invalid:focus, .custom-select.is-invalid:focus {
  border-color: #dc3545;
  box-shadow: 0 0 0 0.2rem rgba(220, 53, 69, 0.25);
}

.was-validated .form-check-input:invalid ~ .form-check-label, .form-check-input.is-invalid ~ .form-check-label {
  color: #dc3545;
}

.was-validated .form-check-input:invalid ~ .invalid-feedback,
.was-validated .form-check-input:invalid ~ .invalid-tooltip, .form-check-input.is-invalid ~ .invalid-feedback,
.form-check-input.is-invalid ~ .invalid-tooltip {
  display: block;
}

.was-validated .custom-control-input:invalid ~ .custom-control-label, .custom-control-input.is-invalid ~ .custom-control-label {
  color: #dc3545;
}

.was-validated .custom-control-input:invalid ~ .custom-control-label::before, .custom-control-input.is-invalid ~ .custom-control-label::before {
  border-color: #dc3545;
}

.was-validated .custom-control-input:invalid:checked ~ .custom-control-label::before, .custom-control-input.is-invalid:checked ~ .custom-control-label::before {
  border-color: #e4606d;
  background-color: #e4606d;
}

.was-validated .custom-control-input:invalid:focus ~ .custom-control-label::before, .custom-control-input.is-invalid:focus ~ .custom-control-label::before {
  box-shadow: 0 0 0 0.2rem rgba(220, 53, 69, 0.25);
}

.was-validated .custom-control-input:invalid:focus:not(:checked) ~ .custom-control-label::before, .custom-control-input.is-invalid:focus:not(:checked) ~ .custom-control-label::before {
  border-color: #dc3545;
}

.was-validated .custom-file-input:invalid ~ .custom-file-label, .custom-file-input.is-invalid ~ .custom-file-label {
  border-color: #dc3545;
}

.was-validated .custom-file-input:invalid:focus ~ .custom-file-label, .custom-file-input.is-invalid:focus ~ .custom-file-label {
  border-color: #dc3545;
  box-shadow: 0 0 0 0.2rem rgba(220, 53, 69, 0.25);
}

.form-inline {
  display: flex;
  flex-flow: row wrap;
  align-items: center;
}

.form-inline .form-check {
  width: 100%;
}

@media (min-width: 576px) {
  .form-inline label {
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 0;
  }
  .form-inline .form-group {
    display: flex;
    flex: 0 0 auto;
    flex-flow: row wrap;
    align-items: center;
    margin-bottom: 0;
  }
  .form-inline .form-control {
    display: inline-block;
    width: auto;
    vertical-align: middle;
  }
  .form-inline .form-control-plaintext {
    display: inline-block;
  }
  .form-inline .input-group,
  .form-inline .custom-select {
    width: auto;
  }
  .form-inline .form-check {
    display: flex;
    align-items: center;
    justify-content: center;
    width: auto;
    padding-left: 0;
  }
  .form-inline .form-check-input {
    position: relative;
    flex-shrink: 0;
    margin-top: 0;
    margin-right: 0.25rem;
    margin-left: 0;
  }
  .form-inline .custom-control {
    align-items: center;
    justify-content: center;
  }
  .form-inline .custom-control-label {
    margin-bottom: 0;
  }
}

.btn {
  display: inline-block;
  font-weight: 400;
  color: #212529;
  text-align: center;
  vertical-align: middle;
  cursor: pointer;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
  background-color: transparent;
  border: 1px solid transparent;
  padding: 0.375rem 0.75rem;
  font-size: 1rem;
  line-height: 1.5;
  border-radius: 0.25rem;
  transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
}

@media (prefers-reduced-motion: reduce) {
  .btn {
    transition: none;
  }
}

.btn:hover {
  color: #212529;
  text-decoration: none;
}

.btn:focus, .btn.focus {
  outline: 0;
  box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.25);
}

.btn.disabled, .btn:disabled {
  opacity: 0.65;
}

a.btn.disabled,
fieldset:disabled a.btn {
  pointer-events: none;
}

.btn-primary {
  color: #fff;
  background-color: #007bff;
  border-color: #007bff;
}

.btn-primary:hover {
  color: #fff;
  background-color: #0069d9;
  border-color: #0062cc;
}

.btn-primary:focus, .btn-primary.focus {
  color: #fff;
  background-color: #0069d9;
  border-color: #0062cc;
  box-shadow: 0 0 0 0.2rem rgba(38, 143, 255, 0.5);
}

.btn-primary.disabled, .btn-primary:disabled {
  color: #fff;
  background-color: #007bff;
  border-color: #007bff;
}

.btn-primary:not(:disabled):not(.disabled):active, .btn-primary:not(:disabled):not(.disabled).active,
.show > .btn-primary.dropdown-toggle {
  color: #fff;
  background-color: #0062cc;
  border-color: #005cbf;
}

.btn-primary:not(:disabled):not(.disabled):active:focus, .btn-primary:not(:disabled):not(.disabled).active:focus,
.show > .btn-primary.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(38, 143, 255, 0.5);
}

.btn-secondary {
  color: #fff;
  background-color: #6c757d;
  border-color: #6c757d;
}

.btn-secondary:hover {
  color: #fff;
  background-color: #5a6268;
  border-color: #545b62;
}

.btn-secondary:focus, .btn-secondary.focus {
  color: #fff;
  background-color: #5a6268;
  border-color: #545b62;
  box-shadow: 0 0 0 0.2rem rgba(130, 138, 145, 0.5);
}

.btn-secondary.disabled, .btn-secondary:disabled {
  color: #fff;
  background-color: #6c757d;
  border-color: #6c757d;
}

.btn-secondary:not(:disabled):not(.disabled):active, .btn-secondary:not(:disabled):not(.disabled).active,
.show > .btn-secondary.dropdown-toggle {
  color: #fff;
  background-color: #545b62;
  border-color: #4e555b;
}

.btn-secondary:not(:disabled):not(.disabled):active:focus, .btn-secondary:not(:disabled):not(.disabled).active:focus,
.show > .btn-secondary.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(130, 138, 145, 0.5);
}

.btn-success {
  color: #fff;
  background-color: #28a745;
  border-color: #28a745;
}

.btn-success:hover {
  color: #fff;
  background-color: #218838;
  border-color: #1e7e34;
}

.btn-success:focus, .btn-success.focus {
  color: #fff;
  background-color: #218838;
  border-color: #1e7e34;
  box-shadow: 0 0 0 0.2rem rgba(72, 180, 97, 0.5);
}

.btn-success.disabled, .btn-success:disabled {
  color: #fff;
  background-color: #28a745;
  border-color: #28a745;
}

.btn-success:not(:disabled):not(.disabled):active, .btn-success:not(:disabled):not(.disabled).active,
.show > .btn-success.dropdown-toggle {
  color: #fff;
  background-color: #1e7e34;
  border-color: #1c7430;
}

.btn-success:not(:disabled):not(.disabled):active:focus, .btn-success:not(:disabled):not(.disabled).active:focus,
.show > .btn-success.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(72, 180, 97, 0.5);
}

.btn-info {
  color: #fff;
  background-color: #17a2b8;
  border-color: #17a2b8;
}

.btn-info:hover {
  color: #fff;
  background-color: #138496;
  border-color: #117a8b;
}

.btn-info:focus, .btn-info.focus {
  color: #fff;
  background-color: #138496;
  border-color: #117a8b;
  box-shadow: 0 0 0 0.2rem rgba(58, 176, 195, 0.5);
}

.btn-info.disabled, .btn-info:disabled {
  color: #fff;
  background-color: #17a2b8;
  border-color: #17a2b8;
}

.btn-info:not(:disabled):not(.disabled):active, .btn-info:not(:disabled):not(.disabled).active,
.show > .btn-info.dropdown-toggle {
  color: #fff;
  background-color: #117a8b;
  border-color: #10707f;
}

.btn-info:not(:disabled):not(.disabled):active:focus, .btn-info:not(:disabled):not(.disabled).active:focus,
.show > .btn-info.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(58, 176, 195, 0.5);
}

.btn-warning {
  color: #212529;
  background-color: #ffc107;
  border-color: #ffc107;
}

.btn-warning:hover {
  color: #212529;
  background-color: #e0a800;
  border-color: #d39e00;
}

.btn-warning:focus, .btn-warning.focus {
  color: #212529;
  background-color: #e0a800;
  border-color: #d39e00;
  box-shadow: 0 0 0 0.2rem rgba(222, 170, 12, 0.5);
}

.btn-warning.disabled, .btn-warning:disabled {
  color: #212529;
  background-color: #ffc107;
  border-color: #ffc107;
}

.btn-warning:not(:disabled):not(.disabled):active, .btn-warning:not(:disabled):not(.disabled).active,
.show > .btn-warning.dropdown-toggle {
  color: #212529;
  background-color: #d39e00;
  border-color: #c69500;
}

.btn-warning:not(:disabled):not(.disabled):active:focus, .btn-warning:not(:disabled):not(.disabled).active:focus,
.show > .btn-warning.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(222, 170, 12, 0.5);
}

.btn-danger {
  color: #fff;
  background-color: #dc3545;
  border-color: #dc3545;
}

.btn-danger:hover {
  color: #fff;
  background-color: #c82333;
  border-color: #bd2130;
}

.btn-danger:focus, .btn-danger.focus {
  color: #fff;
  background-color: #c82333;
  border-color: #bd2130;
  box-shadow: 0 0 0 0.2rem rgba(225, 83, 97, 0.5);
}

.btn-danger.disabled, .btn-danger:disabled {
  color: #fff;
  background-color: #dc3545;
  border-color: #dc3545;
}

.btn-danger:not(:disabled):not(.disabled):active, .btn-danger:not(:disabled):not(.disabled).active,
.show > .btn-danger.dropdown-toggle {
  color: #fff;
  background-color: #bd2130;
  border-color: #b21f2d;
}

.btn-danger:not(:disabled):not(.disabled):active:focus, .btn-danger:not(:disabled):not(.disabled).active:focus,
.show > .btn-danger.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(225, 83, 97, 0.5);
}

.btn-light {
  color: #212529;
  background-color: #f8f9fa;
  border-color: #f8f9fa;
}

.btn-light:hover {
  color: #212529;
  background-color: #e2e6ea;
  border-color: #dae0e5;
}

.btn-light:focus, .btn-light.focus {
  color: #212529;
  background-color: #e2e6ea;
  border-color: #dae0e5;
  box-shadow: 0 0 0 0.2rem rgba(216, 217, 219, 0.5);
}

.btn-light.disabled, .btn-light:disabled {
  color: #212529;
  background-color: #f8f9fa;
  border-color: #f8f9fa;
}

.btn-light:not(:disabled):not(.disabled):active, .btn-light:not(:disabled):not(.disabled).active,
.show > .btn-light.dropdown-toggle {
  color: #212529;
  background-color: #dae0e5;
  border-color: #d3d9df;
}

.btn-light:not(:disabled):not(.disabled):active:focus, .btn-light:not(:disabled):not(.disabled).active:focus,
.show > .btn-light.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(216, 217, 219, 0.5);
}

.btn-dark {
  color: #fff;
  background-color: #343a40;
  border-color: #343a40;
}

.btn-dark:hover {
  color: #fff;
  background-color: #23272b;
  border-color: #1d2124;
}

.btn-dark:focus, .btn-dark.focus {
  color: #fff;
  background-color: #23272b;
  border-color: #1d2124;
  box-shadow: 0 0 0 0.2rem rgba(82, 88, 93, 0.5);
}

.btn-dark.disabled, .btn-dark:disabled {
  color: #fff;
  background-color: #343a40;
  border-color: #343a40;
}

.btn-dark:not(:disabled):not(.disabled):active, .btn-dark:not(:disabled):not(.disabled).active,
.show > .btn-dark.dropdown-toggle {
  color: #fff;
  background-color: #1d2124;
  border-color: #171a1d;
}

.btn-dark:not(:disabled):not(.disabled):active:focus, .btn-dark:not(:disabled):not(.disabled).active:focus,
.show > .btn-dark.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(82, 88, 93, 0.5);
}

.btn-outline-primary {
  color: #007bff;
  border-color: #007bff;
}

.btn-outline-primary:hover {
  color: #fff;
  background-color: #007bff;
  border-color: #007bff;
}

.btn-outline-primary:focus, .btn-outline-primary.focus {
  box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.5);
}

.btn-outline-primary.disabled, .btn-outline-primary:disabled {
  color: #007bff;
  background-color: transparent;
}

.btn-outline-primary:not(:disabled):not(.disabled):active, .btn-outline-primary:not(:disabled):not(.disabled).active,
.show > .btn-outline-primary.dropdown-toggle {
  color: #fff;
  background-color: #007bff;
  border-color: #007bff;
}

.btn-outline-primary:not(:disabled):not(.disabled):active:focus, .btn-outline-primary:not(:disabled):not(.disabled).active:focus,
.show > .btn-outline-primary.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.5);
}

.btn-outline-secondary {
  color: #6c757d;
  border-color: #6c757d;
}

.btn-outline-secondary:hover {
  color: #fff;
  background-color: #6c757d;
  border-color: #6c757d;
}

.btn-outline-secondary:focus, .btn-outline-secondary.focus {
  box-shadow: 0 0 0 0.2rem rgba(108, 117, 125, 0.5);
}

.btn-outline-secondary.disabled, .btn-outline-secondary:disabled {
  color: #6c757d;
  background-color: transparent;
}

.btn-outline-secondary:not(:disabled):not(.disabled):active, .btn-outline-secondary:not(:disabled):not(.disabled).active,
.show > .btn-outline-secondary.dropdown-toggle {
  color: #fff;
  background-color: #6c757d;
  border-color: #6c757d;
}

.btn-outline-secondary:not(:disabled):not(.disabled):active:focus, .btn-outline-secondary:not(:disabled):not(.disabled).active:focus,
.show > .btn-outline-secondary.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(108, 117, 125, 0.5);
}

.btn-outline-success {
  color: #28a745;
  border-color: #28a745;
}

.btn-outline-success:hover {
  color: #fff;
  background-color: #28a745;
  border-color: #28a745;
}

.btn-outline-success:focus, .btn-outline-success.focus {
  box-shadow: 0 0 0 0.2rem rgba(40, 167, 69, 0.5);
}

.btn-outline-success.disabled, .btn-outline-success:disabled {
  color: #28a745;
  background-color: transparent;
}

.btn-outline-success:not(:disabled):not(.disabled):active, .btn-outline-success:not(:disabled):not(.disabled).active,
.show > .btn-outline-success.dropdown-toggle {
  color: #fff;
  background-color: #28a745;
  border-color: #28a745;
}

.btn-outline-success:not(:disabled):not(.disabled):active:focus, .btn-outline-success:not(:disabled):not(.disabled).active:focus,
.show > .btn-outline-success.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(40, 167, 69, 0.5);
}

.btn-outline-info {
  color: #17a2b8;
  border-color: #17a2b8;
}

.btn-outline-info:hover {
  color: #fff;
  background-color: #17a2b8;
  border-color: #17a2b8;
}

.btn-outline-info:focus, .btn-outline-info.focus {
  box-shadow: 0 0 0 0.2rem rgba(23, 162, 184, 0.5);
}

.btn-outline-info.disabled, .btn-outline-info:disabled {
  color: #17a2b8;
  background-color: transparent;
}

.btn-outline-info:not(:disabled):not(.disabled):active, .btn-outline-info:not(:disabled):not(.disabled).active,
.show > .btn-outline-info.dropdown-toggle {
  color: #fff;
  background-color: #17a2b8;
  border-color: #17a2b8;
}

.btn-outline-info:not(:disabled):not(.disabled):active:focus, .btn-outline-info:not(:disabled):not(.disabled).active:focus,
.show > .btn-outline-info.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(23, 162, 184, 0.5);
}

.btn-outline-warning {
  color: #ffc107;
  border-color: #ffc107;
}

.btn-outline-warning:hover {
  color: #212529;
  background-color: #ffc107;
  border-color: #ffc107;
}

.btn-outline-warning:focus, .btn-outline-warning.focus {
  box-shadow: 0 0 0 0.2rem rgba(255, 193, 7, 0.5);
}

.btn-outline-warning.disabled, .btn-outline-warning:disabled {
  color: #ffc107;
  background-color: transparent;
}

.btn-outline-warning:not(:disabled):not(.disabled):active, .btn-outline-warning:not(:disabled):not(.disabled).active,
.show > .btn-outline-warning.dropdown-toggle {
  color: #212529;
  background-color: #ffc107;
  border-color: #ffc107;
}

.btn-outline-warning:not(:disabled):not(.disabled):active:focus, .btn-outline-warning:not(:disabled):not(.disabled).active:focus,
.show > .btn-outline-warning.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(255, 193, 7, 0.5);
}

.btn-outline-danger {
  color: #dc3545;
  border-color: #dc3545;
}

.btn-outline-danger:hover {
  color: #fff;
  background-color: #dc3545;
  border-color: #dc3545;
}

.btn-outline-danger:focus, .btn-outline-danger.focus {
  box-shadow: 0 0 0 0.2rem rgba(220, 53, 69, 0.5);
}

.btn-outline-danger.disabled, .btn-outline-danger:disabled {
  color: #dc3545;
  background-color: transparent;
}

.btn-outline-danger:not(:disabled):not(.disabled):active, .btn-outline-danger:not(:disabled):not(.disabled).active,
.show > .btn-outline-danger.dropdown-toggle {
  color: #fff;
  background-color: #dc3545;
  border-color: #dc3545;
}

.btn-outline-danger:not(:disabled):not(.disabled):active:focus, .btn-outline-danger:not(:disabled):not(.disabled).active:focus,
.show > .btn-outline-danger.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(220, 53, 69, 0.5);
}

.btn-outline-light {
  color: #f8f9fa;
  border-color: #f8f9fa;
}

.btn-outline-light:hover {
  color: #212529;
  background-color: #f8f9fa;
  border-color: #f8f9fa;
}

.btn-outline-light:focus, .btn-outline-light.focus {
  box-shadow: 0 0 0 0.2rem rgba(248, 249, 250, 0.5);
}

.btn-outline-light.disabled, .btn-outline-light:disabled {
  color: #f8f9fa;
  background-color: transparent;
}

.btn-outline-light:not(:disabled):not(.disabled):active, .btn-outline-light:not(:disabled):not(.disabled).active,
.show > .btn-outline-light.dropdown-toggle {
  color: #212529;
  background-color: #f8f9fa;
  border-color: #f8f9fa;
}

.btn-outline-light:not(:disabled):not(.disabled):active:focus, .btn-outline-light:not(:disabled):not(.disabled).active:focus,
.show > .btn-outline-light.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(248, 249, 250, 0.5);
}

.btn-outline-dark {
  color: #343a40;
  border-color: #343a40;
}

.btn-outline-dark:hover {
  color: #fff;
  background-color: #343a40;
  border-color: #343a40;
}

.btn-outline-dark:focus, .btn-outline-dark.focus {
  box-shadow: 0 0 0 0.2rem rgba(52, 58, 64, 0.5);
}

.btn-outline-dark.disabled, .btn-outline-dark:disabled {
  color: #343a40;
  background-color: transparent;
}

.btn-outline-dark:not(:disabled):not(.disabled):active, .btn-outline-dark:not(:disabled):not(.disabled).active,
.show > .btn-outline-dark.dropdown-toggle {
  color: #fff;
  background-color: #343a40;
  border-color: #343a40;
}

.btn-outline-dark:not(:disabled):not(.disabled):active:focus, .btn-outline-dark:not(:disabled):not(.disabled).active:focus,
.show > .btn-outline-dark.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(52, 58, 64, 0.5);
}

.btn-link {
  font-weight: 400;
  color: #007bff;
  text-decoration: none;
}

.btn-link:hover {
  color: #0056b3;
  text-decoration: underline;
}

.btn-link:focus, .btn-link.focus {
  text-decoration: underline;
  box-shadow: none;
}

.btn-link:disabled, .btn-link.disabled {
  color: #6c757d;
  pointer-events: none;
}

.btn-lg, .btn-group-lg > .btn {
  padding: 0.5rem 1rem;
  font-size: 1.25rem;
  line-height: 1.5;
  border-radius: 0.3rem;
}

.btn-sm, .btn-group-sm > .btn {
  padding: 0.25rem 0.5rem;
  font-size: 0.875rem;
  line-height: 1.5;
  border-radius: 0.2rem;
}

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

.btn-block + .btn-block {
  margin-top: 0.5rem;
}

input[type="submit"].btn-block,
input[type="reset"].btn-block,
input[type="button"].btn-block {
  width: 100%;
}

.fade {
  transition: opacity 0.15s linear;
}

@media (prefers-reduced-motion: reduce) {
  .fade {
    transition: none;
  }
}

.fade:not(.show) {
  opacity: 0;
}

.collapse:not(.show) {
  display: none;
}

.collapsing {
  position: relative;
  height: 0;
  overflow: hidden;
  transition: height 0.35s ease;
}

@media (prefers-reduced-motion: reduce) {
  .collapsing {
    transition: none;
  }
}

.dropup,
.dropright,
.dropdown,
.dropleft {
  position: relative;
}

.dropdown-toggle {
  white-space: nowrap;
}

.dropdown-toggle::after {
  display: inline-block;
  margin-left: 0.255em;
  vertical-align: 0.255em;
  content: "";
  border-top: 0.3em solid;
  border-right: 0.3em solid transparent;
  border-bottom: 0;
  border-left: 0.3em solid transparent;
}

.dropdown-toggle:empty::after {
  margin-left: 0;
}

.dropdown-menu {
  position: absolute;
  top: 100%;
  left: 0;
  z-index: 1000;
  display: none;
  float: left;
  min-width: 10rem;
  padding: 0.5rem 0;
  margin: 0.125rem 0 0;
  font-size: 1rem;
  color: #212529;
  text-align: left;
  list-style: none;
  background-color: #fff;
  background-clip: padding-box;
  border: 1px solid rgba(0, 0, 0, 0.15);
  border-radius: 0.25rem;
}

.dropdown-menu-left {
  right: auto;
  left: 0;
}

.dropdown-menu-right {
  right: 0;
  left: auto;
}

@media (min-width: 576px) {
  .dropdown-menu-sm-left {
    right: auto;
    left: 0;
  }
  .dropdown-menu-sm-right {
    right: 0;
    left: auto;
  }
}

@media (min-width: 768px) {
  .dropdown-menu-md-left {
    right: auto;
    left: 0;
  }
  .dropdown-menu-md-right {
    right: 0;
    left: auto;
  }
}

@media (min-width: 992px) {
  .dropdown-menu-lg-left {
    right: auto;
    left: 0;
  }
  .dropdown-menu-lg-right {
    right: 0;
    left: auto;
  }
}

@media (min-width: 1200px) {
  .dropdown-menu-xl-left {
    right: auto;
    left: 0;
  }
  .dropdown-menu-xl-right {
    right: 0;
    left: auto;
  }
}

.dropup .dropdown-menu {
  top: auto;
  bottom: 100%;
  margin-top: 0;
  margin-bottom: 0.125rem;
}

.dropup .dropdown-toggle::after {
  display: inline-block;
  margin-left: 0.255em;
  vertical-align: 0.255em;
  content: "";
  border-top: 0;
  border-right: 0.3em solid transparent;
  border-bottom: 0.3em solid;
  border-left: 0.3em solid transparent;
}

.dropup .dropdown-toggle:empty::after {
  margin-left: 0;
}

.dropright .dropdown-menu {
  top: 0;
  right: auto;
  left: 100%;
  margin-top: 0;
  margin-left: 0.125rem;
}

.dropright .dropdown-toggle::after {
  display: inline-block;
  margin-left: 0.255em;
  vertical-align: 0.255em;
  content: "";
  border-top: 0.3em solid transparent;
  border-right: 0;
  border-bottom: 0.3em solid transparent;
  border-left: 0.3em solid;
}

.dropright .dropdown-toggle:empty::after {
  margin-left: 0;
}

.dropright .dropdown-toggle::after {
  vertical-align: 0;
}

.dropleft .dropdown-menu {
  top: 0;
  right: 100%;
  left: auto;
  margin-top: 0;
  margin-right: 0.125rem;
}

.dropleft .dropdown-toggle::after {
  display: inline-block;
  margin-left: 0.255em;
  vertical-align: 0.255em;
  content: "";
}

.dropleft .dropdown-toggle::after {
  display: none;
}

.dropleft .dropdown-toggle::before {
  display: inline-block;
  margin-right: 0.255em;
  vertical-align: 0.255em;
  content: "";
  border-top: 0.3em solid transparent;
  border-right: 0.3em solid;
  border-bottom: 0.3em solid transparent;
}

.dropleft .dropdown-toggle:empty::after {
  margin-left: 0;
}

.dropleft .dropdown-toggle::before {
  vertical-align: 0;
}

.dropdown-menu[x-placement^="top"], .dropdown-menu[x-placement^="right"], .dropdown-menu[x-placement^="bottom"], .dropdown-menu[x-placement^="left"] {
  right: auto;
  bottom: auto;
}

.dropdown-divider {
  height: 0;
  margin: 0.5rem 0;
  overflow: hidden;
  border-top: 1px solid #e9ecef;
}

.dropdown-item {
  display: block;
  width: 100%;
  padding: 0.25rem 1.5rem;
  clear: both;
  font-weight: 400;
  color: #212529;
  text-align: inherit;
  white-space: nowrap;
  background-color: transparent;
  border: 0;
}

.dropdown-item:hover, .dropdown-item:focus {
  color: #16181b;
  text-decoration: none;
  background-color: #f8f9fa;
}

.dropdown-item.active, .dropdown-item:active {
  color: #fff;
  text-decoration: none;
  background-color: #007bff;
}

.dropdown-item.disabled, .dropdown-item:disabled {
  color: #6c757d;
  pointer-events: none;
  background-color: transparent;
}

.dropdown-menu.show {
  display: block;
}

.dropdown-header {
  display: block;
  padding: 0.5rem 1.5rem;
  margin-bottom: 0;
  font-size: 0.875rem;
  color: #6c757d;
  white-space: nowrap;
}

.dropdown-item-text {
  display: block;
  padding: 0.25rem 1.5rem;
  color: #212529;
}

.btn-group,
.btn-group-vertical {
  position: relative;
  display: inline-flex;
  vertical-align: middle;
}

.btn-group > .btn,
.btn-group-vertical > .btn {
  position: relative;
  flex: 1 1 auto;
}

.btn-group > .btn:hover,
.btn-group-vertical > .btn:hover {
  z-index: 1;
}

.btn-group > .btn:focus, .btn-group > .btn:active, .btn-group > .btn.active,
.btn-group-vertical > .btn:focus,
.btn-group-vertical > .btn:active,
.btn-group-vertical > .btn.active {
  z-index: 1;
}

.btn-toolbar {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
}

.btn-toolbar .input-group {
  width: auto;
}

.btn-group > .btn:not(:first-child),
.btn-group > .btn-group:not(:first-child) {
  margin-left: -1px;
}

.btn-group > .btn:not(:last-child):not(.dropdown-toggle),
.btn-group > .btn-group:not(:last-child) > .btn {
  border-top-right-radius: 0;
  border-bottom-right-radius: 0;
}

.btn-group > .btn:not(:first-child),
.btn-group > .btn-group:not(:first-child) > .btn {
  border-top-left-radius: 0;
  border-bottom-left-radius: 0;
}

.dropdown-toggle-split {
  padding-right: 0.5625rem;
  padding-left: 0.5625rem;
}

.dropdown-toggle-split::after,
.dropup .dropdown-toggle-split::after,
.dropright .dropdown-toggle-split::after {
  margin-left: 0;
}

.dropleft .dropdown-toggle-split::before {
  margin-right: 0;
}

.btn-sm + .dropdown-toggle-split, .btn-group-sm > .btn + .dropdown-toggle-split {
  padding-right: 0.375rem;
  padding-left: 0.375rem;
}

.btn-lg + .dropdown-toggle-split, .btn-group-lg > .btn + .dropdown-toggle-split {
  padding-right: 0.75rem;
  padding-left: 0.75rem;
}

.btn-group-vertical {
  flex-direction: column;
  align-items: flex-start;
  justify-content: center;
}

.btn-group-vertical > .btn,
.btn-group-vertical > .btn-group {
  width: 100%;
}

.btn-group-vertical > .btn:not(:first-child),
.btn-group-vertical > .btn-group:not(:first-child) {
  margin-top: -1px;
}

.btn-group-vertical > .btn:not(:last-child):not(.dropdown-toggle),
.btn-group-vertical > .btn-group:not(:last-child) > .btn {
  border-bottom-right-radius: 0;
  border-bottom-left-radius: 0;
}

.btn-group-vertical > .btn:not(:first-child),
.btn-group-vertical > .btn-group:not(:first-child) > .btn {
  border-top-left-radius: 0;
  border-top-right-radius: 0;
}

.btn-group-toggle > .btn,
.btn-group-toggle > .btn-group > .btn {
  margin-bottom: 0;
}

.btn-group-toggle > .btn input[type="radio"],
.btn-group-toggle > .btn input[type="checkbox"],
.btn-group-toggle > .btn-group > .btn input[type="radio"],
.btn-group-toggle > .btn-group > .btn input[type="checkbox"] {
  position: absolute;
  clip: rect(0, 0, 0, 0);
  pointer-events: none;
}

.input-group {
  position: relative;
  display: flex;
  flex-wrap: wrap;
  align-items: stretch;
  width: 100%;
}

.input-group > .form-control,
.input-group > .form-control-plaintext,
.input-group > .custom-select,
.input-group > .custom-file {
  position: relative;
  flex: 1 1 0%;
  min-width: 0;
  margin-bottom: 0;
}

.input-group > .form-control + .form-control,
.input-group > .form-control + .custom-select,
.input-group > .form-control + .custom-file,
.input-group > .form-control-plaintext + .form-control,
.input-group > .form-control-plaintext + .custom-select,
.input-group > .form-control-plaintext + .custom-file,
.input-group > .custom-select + .form-control,
.input-group > .custom-select + .custom-select,
.input-group > .custom-select + .custom-file,
.input-group > .custom-file + .form-control,
.input-group > .custom-file + .custom-select,
.input-group > .custom-file + .custom-file {
  margin-left: -1px;
}

.input-group > .form-control:focus,
.input-group > .custom-select:focus,
.input-group > .custom-file .custom-file-input:focus ~ .custom-file-label {
  z-index: 3;
}

.input-group > .custom-file .custom-file-input:focus {
  z-index: 4;
}

.input-group > .form-control:not(:last-child),
.input-group > .custom-select:not(:last-child) {
  border-top-right-radius: 0;
  border-bottom-right-radius: 0;
}

.input-group > .form-control:not(:first-child),
.input-group > .custom-select:not(:first-child) {
  border-top-left-radius: 0;
  border-bottom-left-radius: 0;
}

.input-group > .custom-file {
  display: flex;
  align-items: center;
}

.input-group > .custom-file:not(:last-child) .custom-file-label,
.input-group > .custom-file:not(:last-child) .custom-file-label::after {
  border-top-right-radius: 0;
  border-bottom-right-radius: 0;
}

.input-group > .custom-file:not(:first-child) .custom-file-label {
  border-top-left-radius: 0;
  border-bottom-left-radius: 0;
}

.input-group-prepend,
.input-group-append {
  display: flex;
}

.input-group-prepend .btn,
.input-group-append .btn {
  position: relative;
  z-index: 2;
}

.input-group-prepend .btn:focus,
.input-group-append .btn:focus {
  z-index: 3;
}

.input-group-prepend .btn + .btn,
.input-group-prepend .btn + .input-group-text,
.input-group-prepend .input-group-text + .input-group-text,
.input-group-prepend .input-group-text + .btn,
.input-group-append .btn + .btn,
.input-group-append .btn + .input-group-text,
.input-group-append .input-group-text + .input-group-text,
.input-group-append .input-group-text + .btn {
  margin-left: -1px;
}

.input-group-prepend {
  margin-right: -1px;
}

.input-group-append {
  margin-left: -1px;
}

.input-group-text {
  display: flex;
  align-items: center;
  padding: 0.375rem 0.75rem;
  margin-bottom: 0;
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.5;
  color: #495057;
  text-align: center;
  white-space: nowrap;
  background-color: #e9ecef;
  border: 1px solid #ced4da;
  border-radius: 0.25rem;
}

.input-group-text input[type="radio"],
.input-group-text input[type="checkbox"] {
  margin-top: 0;
}

.input-group-lg > .form-control:not(textarea),
.input-group-lg > .custom-select {
  height: calc(1.5em + 1rem + 2px);
}

.input-group-lg > .form-control,
.input-group-lg > .custom-select,
.input-group-lg > .input-group-prepend > .input-group-text,
.input-group-lg > .input-group-append > .input-group-text,
.input-group-lg > .input-group-prepend > .btn,
.input-group-lg > .input-group-append > .btn {
  padding: 0.5rem 1rem;
  font-size: 1.25rem;
  line-height: 1.5;
  border-radius: 0.3rem;
}

.input-group-sm > .form-control:not(textarea),
.input-group-sm > .custom-select {
  height: calc(1.5em + 0.5rem + 2px);
}

.input-group-sm > .form-control,
.input-group-sm > .custom-select,
.input-group-sm > .input-group-prepend > .input-group-text,
.input-group-sm > .input-group-append > .input-group-text,
.input-group-sm > .input-group-prepend > .btn,
.input-group-sm > .input-group-append > .btn {
  padding: 0.25rem 0.5rem;
  font-size: 0.875rem;
  line-height: 1.5;
  border-radius: 0.2rem;
}

.input-group-lg > .custom-select,
.input-group-sm > .custom-select {
  padding-right: 1.75rem;
}

.input-group > .input-group-prepend > .btn,
.input-group > .input-group-prepend > .input-group-text,
.input-group > .input-group-append:not(:last-child) > .btn,
.input-group > .input-group-append:not(:last-child) > .input-group-text,
.input-group > .input-group-append:last-child > .btn:not(:last-child):not(.dropdown-toggle),
.input-group > .input-group-append:last-child > .input-group-text:not(:last-child) {
  border-top-right-radius: 0;
  border-bottom-right-radius: 0;
}

.input-group > .input-group-append > .btn,
.input-group > .input-group-append > .input-group-text,
.input-group > .input-group-prepend:not(:first-child) > .btn,
.input-group > .input-group-prepend:not(:first-child) > .input-group-text,
.input-group > .input-group-prepend:first-child > .btn:not(:first-child),
.input-group > .input-group-prepend:first-child > .input-group-text:not(:first-child) {
  border-top-left-radius: 0;
  border-bottom-left-radius: 0;
}

.custom-control {
  position: relative;
  display: block;
  min-height: 1.5rem;
  padding-left: 1.5rem;
}

.custom-control-inline {
  display: inline-flex;
  margin-right: 1rem;
}

.custom-control-input {
  position: absolute;
  left: 0;
  z-index: -1;
  width: 1rem;
  height: 1.25rem;
  opacity: 0;
}

.custom-control-input:checked ~ .custom-control-label::before {
  color: #fff;
  border-color: #007bff;
  background-color: #007bff;
}

.custom-control-input:focus ~ .custom-control-label::before {
  box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.25);
}

.custom-control-input:focus:not(:checked) ~ .custom-control-label::before {
  border-color: #80bdff;
}

.custom-control-input:not(:disabled):active ~ .custom-control-label::before {
  color: #fff;
  background-color: #b3d7ff;
  border-color: #b3d7ff;
}

.custom-control-input[disabled] ~ .custom-control-label, .custom-control-input:disabled ~ .custom-control-label {
  color: #6c757d;
}

.custom-control-input[disabled] ~ .custom-control-label::before, .custom-control-input:disabled ~ .custom-control-label::before {
  background-color: #e9ecef;
}

.custom-control-label {
  position: relative;
  margin-bottom: 0;
  vertical-align: top;
}

.custom-control-label::before {
  position: absolute;
  top: 0.25rem;
  left: -1.5rem;
  display: block;
  width: 1rem;
  height: 1rem;
  pointer-events: none;
  content: "";
  background-color: #fff;
  border: #adb5bd solid 1px;
}

.custom-control-label::after {
  position: absolute;
  top: 0.25rem;
  left: -1.5rem;
  display: block;
  width: 1rem;
  height: 1rem;
  content: "";
  background: no-repeat 50% / 50% 50%;
}

.custom-checkbox .custom-control-label::before {
  border-radius: 0.25rem;
}

.custom-checkbox .custom-control-input:checked ~ .custom-control-label::after {
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='8' height='8' viewBox='0 0 8 8'%3e%3cpath fill='%23fff' d='M6.564.75l-3.59 3.612-1.538-1.55L0 4.26l2.974 2.99L8 2.193z'/%3e%3c/svg%3e");
}

.custom-checkbox .custom-control-input:indeterminate ~ .custom-control-label::before {
  border-color: #007bff;
  background-color: #007bff;
}

.custom-checkbox .custom-control-input:indeterminate ~ .custom-control-label::after {
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='4' height='4' viewBox='0 0 4 4'%3e%3cpath stroke='%23fff' d='M0 2h4'/%3e%3c/svg%3e");
}

.custom-checkbox .custom-control-input:disabled:checked ~ .custom-control-label::before {
  background-color: rgba(0, 123, 255, 0.5);
}

.custom-checkbox .custom-control-input:disabled:indeterminate ~ .custom-control-label::before {
  background-color: rgba(0, 123, 255, 0.5);
}

.custom-radio .custom-control-label::before {
  border-radius: 50%;
}

.custom-radio .custom-control-input:checked ~ .custom-control-label::after {
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='-4 -4 8 8'%3e%3ccircle r='3' fill='%23fff'/%3e%3c/svg%3e");
}

.custom-radio .custom-control-input:disabled:checked ~ .custom-control-label::before {
  background-color: rgba(0, 123, 255, 0.5);
}

.custom-switch {
  padding-left: 2.25rem;
}

.custom-switch .custom-control-label::before {
  left: -2.25rem;
  width: 1.75rem;
  pointer-events: all;
  border-radius: 0.5rem;
}

.custom-switch .custom-control-label::after {
  top: calc(0.25rem + 2px);
  left: calc(-2.25rem + 2px);
  width: calc(1rem - 4px);
  height: calc(1rem - 4px);
  background-color: #adb5bd;
  border-radius: 0.5rem;
  transition: transform 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
}

@media (prefers-reduced-motion: reduce) {
  .custom-switch .custom-control-label::after {
    transition: none;
  }
}

.custom-switch .custom-control-input:checked ~ .custom-control-label::after {
  background-color: #fff;
  transform: translateX(0.75rem);
}

.custom-switch .custom-control-input:disabled:checked ~ .custom-control-label::before {
  background-color: rgba(0, 123, 255, 0.5);
}

.custom-select {
  display: inline-block;
  width: 100%;
  height: calc(1.5em + 0.75rem + 2px);
  padding: 0.375rem 1.75rem 0.375rem 0.75rem;
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.5;
  color: #495057;
  vertical-align: middle;
  background: #fff url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='4' height='5' viewBox='0 0 4 5'%3e%3cpath fill='%23343a40' d='M2 0L0 2h4zm0 5L0 3h4z'/%3e%3c/svg%3e") no-repeat right 0.75rem center/8px 10px;
  border: 1px solid #ced4da;
  border-radius: 0.25rem;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
}

.custom-select:focus {
  border-color: #80bdff;
  outline: 0;
  box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.25);
}

.custom-select:focus::-ms-value {
  color: #495057;
  background-color: #fff;
}

.custom-select[multiple], .custom-select[size]:not([size="1"]) {
  height: auto;
  padding-right: 0.75rem;
  background-image: none;
}

.custom-select:disabled {
  color: #6c757d;
  background-color: #e9ecef;
}

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

.custom-select:-moz-focusring {
  color: transparent;
  text-shadow: 0 0 0 #495057;
}

.custom-select-sm {
  height: calc(1.5em + 0.5rem + 2px);
  padding-top: 0.25rem;
  padding-bottom: 0.25rem;
  padding-left: 0.5rem;
  font-size: 0.875rem;
}

.custom-select-lg {
  height: calc(1.5em + 1rem + 2px);
  padding-top: 0.5rem;
  padding-bottom: 0.5rem;
  padding-left: 1rem;
  font-size: 1.25rem;
}

.custom-file {
  position: relative;
  display: inline-block;
  width: 100%;
  height: calc(1.5em + 0.75rem + 2px);
  margin-bottom: 0;
}

.custom-file-input {
  position: relative;
  z-index: 2;
  width: 100%;
  height: calc(1.5em + 0.75rem + 2px);
  margin: 0;
  opacity: 0;
}

.custom-file-input:focus ~ .custom-file-label {
  border-color: #80bdff;
  box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.25);
}

.custom-file-input[disabled] ~ .custom-file-label,
.custom-file-input:disabled ~ .custom-file-label {
  background-color: #e9ecef;
}

.custom-file-input:lang(en) ~ .custom-file-label::after {
  content: "Browse";
}

.custom-file-input ~ .custom-file-label[data-browse]::after {
  content: attr(data-browse);
}

.custom-file-label {
  position: absolute;
  top: 0;
  right: 0;
  left: 0;
  z-index: 1;
  height: calc(1.5em + 0.75rem + 2px);
  padding: 0.375rem 0.75rem;
  font-weight: 400;
  line-height: 1.5;
  color: #495057;
  background-color: #fff;
  border: 1px solid #ced4da;
  border-radius: 0.25rem;
}

.custom-file-label::after {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  z-index: 3;
  display: block;
  height: calc(1.5em + 0.75rem);
  padding: 0.375rem 0.75rem;
  line-height: 1.5;
  color: #495057;
  content: "Browse";
  background-color: #e9ecef;
  border-left: inherit;
  border-radius: 0 0.25rem 0.25rem 0;
}

.custom-range {
  width: 100%;
  height: 1.4rem;
  padding: 0;
  background-color: transparent;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
}

.custom-range:focus {
  outline: none;
}

.custom-range:focus::-webkit-slider-thumb {
  box-shadow: 0 0 0 1px #fff, 0 0 0 0.2rem rgba(0, 123, 255, 0.25);
}

.custom-range:focus::-moz-range-thumb {
  box-shadow: 0 0 0 1px #fff, 0 0 0 0.2rem rgba(0, 123, 255, 0.25);
}

.custom-range:focus::-ms-thumb {
  box-shadow: 0 0 0 1px #fff, 0 0 0 0.2rem rgba(0, 123, 255, 0.25);
}

.custom-range::-moz-focus-outer {
  border: 0;
}

.custom-range::-webkit-slider-thumb {
  width: 1rem;
  height: 1rem;
  margin-top: -0.25rem;
  background-color: #007bff;
  border: 0;
  border-radius: 1rem;
  -webkit-transition: background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
  transition: background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
  -webkit-appearance: none;
          appearance: none;
}

@media (prefers-reduced-motion: reduce) {
  .custom-range::-webkit-slider-thumb {
    -webkit-transition: none;
    transition: none;
  }
}

.custom-range::-webkit-slider-thumb:active {
  background-color: #b3d7ff;
}

.custom-range::-webkit-slider-runnable-track {
  width: 100%;
  height: 0.5rem;
  color: transparent;
  cursor: pointer;
  background-color: #dee2e6;
  border-color: transparent;
  border-radius: 1rem;
}

.custom-range::-moz-range-thumb {
  width: 1rem;
  height: 1rem;
  background-color: #007bff;
  border: 0;
  border-radius: 1rem;
  -moz-transition: background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
  transition: background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
  -moz-appearance: none;
       appearance: none;
}

@media (prefers-reduced-motion: reduce) {
  .custom-range::-moz-range-thumb {
    -moz-transition: none;
    transition: none;
  }
}

.custom-range::-moz-range-thumb:active {
  background-color: #b3d7ff;
}

.custom-range::-moz-range-track {
  width: 100%;
  height: 0.5rem;
  color: transparent;
  cursor: pointer;
  background-color: #dee2e6;
  border-color: transparent;
  border-radius: 1rem;
}

.custom-range::-ms-thumb {
  width: 1rem;
  height: 1rem;
  margin-top: 0;
  margin-right: 0.2rem;
  margin-left: 0.2rem;
  background-color: #007bff;
  border: 0;
  border-radius: 1rem;
  -ms-transition: background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
  transition: background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
  appearance: none;
}

@media (prefers-reduced-motion: reduce) {
  .custom-range::-ms-thumb {
    -ms-transition: none;
    transition: none;
  }
}

.custom-range::-ms-thumb:active {
  background-color: #b3d7ff;
}

.custom-range::-ms-track {
  width: 100%;
  height: 0.5rem;
  color: transparent;
  cursor: pointer;
  background-color: transparent;
  border-color: transparent;
  border-width: 0.5rem;
}

.custom-range::-ms-fill-lower {
  background-color: #dee2e6;
  border-radius: 1rem;
}

.custom-range::-ms-fill-upper {
  margin-right: 15px;
  background-color: #dee2e6;
  border-radius: 1rem;
}

.custom-range:disabled::-webkit-slider-thumb {
  background-color: #adb5bd;
}

.custom-range:disabled::-webkit-slider-runnable-track {
  cursor: default;
}

.custom-range:disabled::-moz-range-thumb {
  background-color: #adb5bd;
}

.custom-range:disabled::-moz-range-track {
  cursor: default;
}

.custom-range:disabled::-ms-thumb {
  background-color: #adb5bd;
}

.custom-control-label::before,
.custom-file-label,
.custom-select {
  transition: background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
}

@media (prefers-reduced-motion: reduce) {
  .custom-control-label::before,
  .custom-file-label,
  .custom-select {
    transition: none;
  }
}

.nav {
  display: flex;
  flex-wrap: wrap;
  padding-left: 0;
  margin-bottom: 0;
  list-style: none;
}

.nav-link {
  display: block;
  padding: 0.5rem 1rem;
}

.nav-link:hover, .nav-link:focus {
  text-decoration: none;
}

.nav-link.disabled {
  color: #6c757d;
  pointer-events: none;
  cursor: default;
}

.nav-tabs {
  border-bottom: 1px solid #dee2e6;
}

.nav-tabs .nav-item {
  margin-bottom: -1px;
}

.nav-tabs .nav-link {
  border: 1px solid transparent;
  border-top-left-radius: 0.25rem;
  border-top-right-radius: 0.25rem;
}

.nav-tabs .nav-link:hover, .nav-tabs .nav-link:focus {
  border-color: #e9ecef #e9ecef #dee2e6;
}

.nav-tabs .nav-link.disabled {
  color: #6c757d;
  background-color: transparent;
  border-color: transparent;
}

.nav-tabs .nav-link.active,
.nav-tabs .nav-item.show .nav-link {
  color: #495057;
  background-color: #fff;
  border-color: #dee2e6 #dee2e6 #fff;
}

.nav-tabs .dropdown-menu {
  margin-top: -1px;
  border-top-left-radius: 0;
  border-top-right-radius: 0;
}

.nav-pills .nav-link {
  border-radius: 0.25rem;
}

.nav-pills .nav-link.active,
.nav-pills .show > .nav-link {
  color: #fff;
  background-color: #007bff;
}

.nav-fill .nav-item {
  flex: 1 1 auto;
  text-align: center;
}

.nav-justified .nav-item {
  flex-basis: 0;
  flex-grow: 1;
  text-align: center;
}

.tab-content > .tab-pane {
  display: none;
}

.tab-content > .active {
  display: block;
}

.navbar {
  position: relative;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  padding: 0.5rem 1rem;
}

.navbar .container,
.navbar .container-fluid, .navbar .container-sm, .navbar .container-md, .navbar .container-lg, .navbar .container-xl {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
}

.navbar-brand {
  display: inline-block;
  padding-top: 0.3125rem;
  padding-bottom: 0.3125rem;
  margin-right: 1rem;
  font-size: 1.25rem;
  line-height: inherit;
  white-space: nowrap;
}

.navbar-brand:hover, .navbar-brand:focus {
  text-decoration: none;
}

.navbar-nav {
  display: flex;
  flex-direction: column;
  padding-left: 0;
  margin-bottom: 0;
  list-style: none;
}

.navbar-nav .nav-link {
  padding-right: 0;
  padding-left: 0;
}

.navbar-nav .dropdown-menu {
  position: static;
  float: none;
}

.navbar-text {
  display: inline-block;
  padding-top: 0.5rem;
  padding-bottom: 0.5rem;
}

.navbar-collapse {
  flex-basis: 100%;
  flex-grow: 1;
  align-items: center;
}

.navbar-toggler {
  padding: 0.25rem 0.75rem;
  font-size: 1.25rem;
  line-height: 1;
  background-color: transparent;
  border: 1px solid transparent;
  border-radius: 0.25rem;
}

.navbar-toggler:hover, .navbar-toggler:focus {
  text-decoration: none;
}

.navbar-toggler-icon {
  display: inline-block;
  width: 1.5em;
  height: 1.5em;
  vertical-align: middle;
  content: "";
  background: no-repeat center center;
  background-size: 100% 100%;
}

@media (max-width: 575.98px) {
  .navbar-expand-sm > .container,
  .navbar-expand-sm > .container-fluid, .navbar-expand-sm > .container-sm, .navbar-expand-sm > .container-md, .navbar-expand-sm > .container-lg, .navbar-expand-sm > .container-xl {
    padding-right: 0;
    padding-left: 0;
  }
}

@media (min-width: 576px) {
  .navbar-expand-sm {
    flex-flow: row nowrap;
    justify-content: flex-start;
  }
  .navbar-expand-sm .navbar-nav {
    flex-direction: row;
  }
  .navbar-expand-sm .navbar-nav .dropdown-menu {
    position: absolute;
  }
  .navbar-expand-sm .navbar-nav .nav-link {
    padding-right: 0.5rem;
    padding-left: 0.5rem;
  }
  .navbar-expand-sm > .container,
  .navbar-expand-sm > .container-fluid, .navbar-expand-sm > .container-sm, .navbar-expand-sm > .container-md, .navbar-expand-sm > .container-lg, .navbar-expand-sm > .container-xl {
    flex-wrap: nowrap;
  }
  .navbar-expand-sm .navbar-collapse {
    display: flex !important;
    flex-basis: auto;
  }
  .navbar-expand-sm .navbar-toggler {
    display: none;
  }
}

@media (max-width: 767.98px) {
  .navbar-expand-md > .container,
  .navbar-expand-md > .container-fluid, .navbar-expand-md > .container-sm, .navbar-expand-md > .container-md, .navbar-expand-md > .container-lg, .navbar-expand-md > .container-xl {
    padding-right: 0;
    padding-left: 0;
  }
}

@media (min-width: 768px) {
  .navbar-expand-md {
    flex-flow: row nowrap;
    justify-content: flex-start;
  }
  .navbar-expand-md .navbar-nav {
    flex-direction: row;
  }
  .navbar-expand-md .navbar-nav .dropdown-menu {
    position: absolute;
  }
  .navbar-expand-md .navbar-nav .nav-link {
    padding-right: 0.5rem;
    padding-left: 0.5rem;
  }
  .navbar-expand-md > .container,
  .navbar-expand-md > .container-fluid, .navbar-expand-md > .container-sm, .navbar-expand-md > .container-md, .navbar-expand-md > .container-lg, .navbar-expand-md > .container-xl {
    flex-wrap: nowrap;
  }
  .navbar-expand-md .navbar-collapse {
    display: flex !important;
    flex-basis: auto;
  }
  .navbar-expand-md .navbar-toggler {
    display: none;
  }
}

@media (max-width: 991.98px) {
  .navbar-expand-lg > .container,
  .navbar-expand-lg > .container-fluid, .navbar-expand-lg > .container-sm, .navbar-expand-lg > .container-md, .navbar-expand-lg > .container-lg, .navbar-expand-lg > .container-xl {
    padding-right: 0;
    padding-left: 0;
  }
}

@media (min-width: 992px) {
  .navbar-expand-lg {
    flex-flow: row nowrap;
    justify-content: flex-start;
  }
  .navbar-expand-lg .navbar-nav {
    flex-direction: row;
  }
  .navbar-expand-lg .navbar-nav .dropdown-menu {
    position: absolute;
  }
  .navbar-expand-lg .navbar-nav .nav-link {
    padding-right: 0.5rem;
    padding-left: 0.5rem;
  }
  .navbar-expand-lg > .container,
  .navbar-expand-lg > .container-fluid, .navbar-expand-lg > .container-sm, .navbar-expand-lg > .container-md, .navbar-expand-lg > .container-lg, .navbar-expand-lg > .container-xl {
    flex-wrap: nowrap;
  }
  .navbar-expand-lg .navbar-collapse {
    display: flex !important;
    flex-basis: auto;
  }
  .navbar-expand-lg .navbar-toggler {
    display: none;
  }
}

@media (max-width: 1199.98px) {
  .navbar-expand-xl > .container,
  .navbar-expand-xl > .container-fluid, .navbar-expand-xl > .container-sm, .navbar-expand-xl > .container-md, .navbar-expand-xl > .container-lg, .navbar-expand-xl > .container-xl {
    padding-right: 0;
    padding-left: 0;
  }
}

@media (min-width: 1200px) {
  .navbar-expand-xl {
    flex-flow: row nowrap;
    justify-content: flex-start;
  }
  .navbar-expand-xl .navbar-nav {
    flex-direction: row;
  }
  .navbar-expand-xl .navbar-nav .dropdown-menu {
    position: absolute;
  }
  .navbar-expand-xl .navbar-nav .nav-link {
    padding-right: 0.5rem;
    padding-left: 0.5rem;
  }
  .navbar-expand-xl > .container,
  .navbar-expand-xl > .container-fluid, .navbar-expand-xl > .container-sm, .navbar-expand-xl > .container-md, .navbar-expand-xl > .container-lg, .navbar-expand-xl > .container-xl {
    flex-wrap: nowrap;
  }
  .navbar-expand-xl .navbar-collapse {
    display: flex !important;
    flex-basis: auto;
  }
  .navbar-expand-xl .navbar-toggler {
    display: none;
  }
}

.navbar-expand {
  flex-flow: row nowrap;
  justify-content: flex-start;
}

.navbar-expand > .container,
.navbar-expand > .container-fluid, .navbar-expand > .container-sm, .navbar-expand > .container-md, .navbar-expand > .container-lg, .navbar-expand > .container-xl {
  padding-right: 0;
  padding-left: 0;
}

.navbar-expand .navbar-nav {
  flex-direction: row;
}

.navbar-expand .navbar-nav .dropdown-menu {
  position: absolute;
}

.navbar-expand .navbar-nav .nav-link {
  padding-right: 0.5rem;
  padding-left: 0.5rem;
}

.navbar-expand > .container,
.navbar-expand > .container-fluid, .navbar-expand > .container-sm, .navbar-expand > .container-md, .navbar-expand > .container-lg, .navbar-expand > .container-xl {
  flex-wrap: nowrap;
}

.navbar-expand .navbar-collapse {
  display: flex !important;
  flex-basis: auto;
}

.navbar-expand .navbar-toggler {
  display: none;
}

.navbar-light .navbar-brand {
  color: rgba(0, 0, 0, 0.9);
}

.navbar-light .navbar-brand:hover, .navbar-light .navbar-brand:focus {
  color: rgba(0, 0, 0, 0.9);
}

.navbar-light .navbar-nav .nav-link {
  color: rgba(0, 0, 0, 0.5);
}

.navbar-light .navbar-nav .nav-link:hover, .navbar-light .navbar-nav .nav-link:focus {
  color: rgba(0, 0, 0, 0.7);
}

.navbar-light .navbar-nav .nav-link.disabled {
  color: rgba(0, 0, 0, 0.3);
}

.navbar-light .navbar-nav .show > .nav-link,
.navbar-light .navbar-nav .active > .nav-link,
.navbar-light .navbar-nav .nav-link.show,
.navbar-light .navbar-nav .nav-link.active {
  color: rgba(0, 0, 0, 0.9);
}

.navbar-light .navbar-toggler {
  color: rgba(0, 0, 0, 0.5);
  border-color: rgba(0, 0, 0, 0.1);
}

.navbar-light .navbar-toggler-icon {
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='30' height='30' viewBox='0 0 30 30'%3e%3cpath stroke='rgba(0, 0, 0, 0.5)' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e");
}

.navbar-light .navbar-text {
  color: rgba(0, 0, 0, 0.5);
}

.navbar-light .navbar-text a {
  color: rgba(0, 0, 0, 0.9);
}

.navbar-light .navbar-text a:hover, .navbar-light .navbar-text a:focus {
  color: rgba(0, 0, 0, 0.9);
}

.navbar-dark .navbar-brand {
  color: #fff;
}

.navbar-dark .navbar-brand:hover, .navbar-dark .navbar-brand:focus {
  color: #fff;
}

.navbar-dark .navbar-nav .nav-link {
  color: rgba(255, 255, 255, 0.5);
}

.navbar-dark .navbar-nav .nav-link:hover, .navbar-dark .navbar-nav .nav-link:focus {
  color: rgba(255, 255, 255, 0.75);
}

.navbar-dark .navbar-nav .nav-link.disabled {
  color: rgba(255, 255, 255, 0.25);
}

.navbar-dark .navbar-nav .show > .nav-link,
.navbar-dark .navbar-nav .active > .nav-link,
.navbar-dark .navbar-nav .nav-link.show,
.navbar-dark .navbar-nav .nav-link.active {
  color: #fff;
}

.navbar-dark .navbar-toggler {
  color: rgba(255, 255, 255, 0.5);
  border-color: rgba(255, 255, 255, 0.1);
}

.navbar-dark .navbar-toggler-icon {
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='30' height='30' viewBox='0 0 30 30'%3e%3cpath stroke='rgba(255, 255, 255, 0.5)' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e");
}

.navbar-dark .navbar-text {
  color: rgba(255, 255, 255, 0.5);
}

.navbar-dark .navbar-text a {
  color: #fff;
}

.navbar-dark .navbar-text a:hover, .navbar-dark .navbar-text a:focus {
  color: #fff;
}

.card {
  position: relative;
  display: flex;
  flex-direction: column;
  min-width: 0;
  word-wrap: break-word;
  background-color: #fff;
  background-clip: border-box;
  border: 1px solid rgba(0, 0, 0, 0.125);
  border-radius: 0.25rem;
}

.card > hr {
  margin-right: 0;
  margin-left: 0;
}

.card > .list-group:first-child .list-group-item:first-child {
  border-top-left-radius: 0.25rem;
  border-top-right-radius: 0.25rem;
}

.card > .list-group:last-child .list-group-item:last-child {
  border-bottom-right-radius: 0.25rem;
  border-bottom-left-radius: 0.25rem;
}

.card-body {
  flex: 1 1 auto;
  min-height: 1px;
  padding: 1.25rem;
}

.card-title {
  margin-bottom: 0.75rem;
}

.card-subtitle {
  margin-top: -0.375rem;
  margin-bottom: 0;
}

.card-text:last-child {
  margin-bottom: 0;
}

.card-link:hover {
  text-decoration: none;
}

.card-link + .card-link {
  margin-left: 1.25rem;
}

.card-header {
  padding: 0.75rem 1.25rem;
  margin-bottom: 0;
  background-color: rgba(0, 0, 0, 0.03);
  border-bottom: 1px solid rgba(0, 0, 0, 0.125);
}

.card-header:first-child {
  border-radius: calc(0.25rem - 1px) calc(0.25rem - 1px) 0 0;
}

.card-header + .list-group .list-group-item:first-child {
  border-top: 0;
}

.card-footer {
  padding: 0.75rem 1.25rem;
  background-color: rgba(0, 0, 0, 0.03);
  border-top: 1px solid rgba(0, 0, 0, 0.125);
}

.card-footer:last-child {
  border-radius: 0 0 calc(0.25rem - 1px) calc(0.25rem - 1px);
}

.card-header-tabs {
  margin-right: -0.625rem;
  margin-bottom: -0.75rem;
  margin-left: -0.625rem;
  border-bottom: 0;
}

.card-header-pills {
  margin-right: -0.625rem;
  margin-left: -0.625rem;
}

.card-img-overlay {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  padding: 1.25rem;
}

.card-img,
.card-img-top,
.card-img-bottom {
  flex-shrink: 0;
  width: 100%;
}

.card-img,
.card-img-top {
  border-top-left-radius: calc(0.25rem - 1px);
  border-top-right-radius: calc(0.25rem - 1px);
}

.card-img,
.card-img-bottom {
  border-bottom-right-radius: calc(0.25rem - 1px);
  border-bottom-left-radius: calc(0.25rem - 1px);
}

.card-deck .card {
  margin-bottom: 15px;
}

@media (min-width: 576px) {
  .card-deck {
    display: flex;
    flex-flow: row wrap;
    margin-right: -15px;
    margin-left: -15px;
  }
  .card-deck .card {
    flex: 1 0 0%;
    margin-right: 15px;
    margin-bottom: 0;
    margin-left: 15px;
  }
}

.card-group > .card {
  margin-bottom: 15px;
}

@media (min-width: 576px) {
  .card-group {
    display: flex;
    flex-flow: row wrap;
  }
  .card-group > .card {
    flex: 1 0 0%;
    margin-bottom: 0;
  }
  .card-group > .card + .card {
    margin-left: 0;
    border-left: 0;
  }
  .card-group > .card:not(:last-child) {
    border-top-right-radius: 0;
    border-bottom-right-radius: 0;
  }
  .card-group > .card:not(:last-child) .card-img-top,
  .card-group > .card:not(:last-child) .card-header {
    border-top-right-radius: 0;
  }
  .card-group > .card:not(:last-child) .card-img-bottom,
  .card-group > .card:not(:last-child) .card-footer {
    border-bottom-right-radius: 0;
  }
  .card-group > .card:not(:first-child) {
    border-top-left-radius: 0;
    border-bottom-left-radius: 0;
  }
  .card-group > .card:not(:first-child) .card-img-top,
  .card-group > .card:not(:first-child) .card-header {
    border-top-left-radius: 0;
  }
  .card-group > .card:not(:first-child) .card-img-bottom,
  .card-group > .card:not(:first-child) .card-footer {
    border-bottom-left-radius: 0;
  }
}

.card-columns .card {
  margin-bottom: 0.75rem;
}

@media (min-width: 576px) {
  .card-columns {
    -moz-column-count: 3;
         column-count: 3;
    -moz-column-gap: 1.25rem;
         column-gap: 1.25rem;
    orphans: 1;
    widows: 1;
  }
  .card-columns .card {
    display: inline-block;
    width: 100%;
  }
}

.accordion > .card {
  overflow: hidden;
}

.accordion > .card:not(:last-of-type) {
  border-bottom: 0;
  border-bottom-right-radius: 0;
  border-bottom-left-radius: 0;
}

.accordion > .card:not(:first-of-type) {
  border-top-left-radius: 0;
  border-top-right-radius: 0;
}

.accordion > .card > .card-header {
  border-radius: 0;
  margin-bottom: -1px;
}

.breadcrumb {
  display: flex;
  flex-wrap: wrap;
  padding: 0.75rem 1rem;
  margin-bottom: 1rem;
  list-style: none;
  background-color: #e9ecef;
  border-radius: 0.25rem;
}

.breadcrumb-item + .breadcrumb-item {
  padding-left: 0.5rem;
}

.breadcrumb-item + .breadcrumb-item::before {
  display: inline-block;
  padding-right: 0.5rem;
  color: #6c757d;
  content: "/";
}

.breadcrumb-item + .breadcrumb-item:hover::before {
  text-decoration: underline;
}

.breadcrumb-item + .breadcrumb-item:hover::before {
  text-decoration: none;
}

.breadcrumb-item.active {
  color: #6c757d;
}

.pagination {
  display: flex;
  padding-left: 0;
  list-style: none;
  border-radius: 0.25rem;
}

.page-link {
  position: relative;
  display: block;
  padding: 0.5rem 0.75rem;
  margin-left: -1px;
  line-height: 1.25;
  color: #007bff;
  background-color: #fff;
  border: 1px solid #dee2e6;
}

.page-link:hover {
  z-index: 2;
  color: #0056b3;
  text-decoration: none;
  background-color: #e9ecef;
  border-color: #dee2e6;
}

.page-link:focus {
  z-index: 3;
  outline: 0;
  box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.25);
}

.page-item:first-child .page-link {
  margin-left: 0;
  border-top-left-radius: 0.25rem;
  border-bottom-left-radius: 0.25rem;
}

.page-item:last-child .page-link {
  border-top-right-radius: 0.25rem;
  border-bottom-right-radius: 0.25rem;
}

.page-item.active .page-link {
  z-index: 3;
  color: #fff;
  background-color: #007bff;
  border-color: #007bff;
}

.page-item.disabled .page-link {
  color: #6c757d;
  pointer-events: none;
  cursor: auto;
  background-color: #fff;
  border-color: #dee2e6;
}

.pagination-lg .page-link {
  padding: 0.75rem 1.5rem;
  font-size: 1.25rem;
  line-height: 1.5;
}

.pagination-lg .page-item:first-child .page-link {
  border-top-left-radius: 0.3rem;
  border-bottom-left-radius: 0.3rem;
}

.pagination-lg .page-item:last-child .page-link {
  border-top-right-radius: 0.3rem;
  border-bottom-right-radius: 0.3rem;
}

.pagination-sm .page-link {
  padding: 0.25rem 0.5rem;
  font-size: 0.875rem;
  line-height: 1.5;
}

.pagination-sm .page-item:first-child .page-link {
  border-top-left-radius: 0.2rem;
  border-bottom-left-radius: 0.2rem;
}

.pagination-sm .page-item:last-child .page-link {
  border-top-right-radius: 0.2rem;
  border-bottom-right-radius: 0.2rem;
}

.badge {
  display: inline-block;
  padding: 0.25em 0.4em;
  font-size: 75%;
  font-weight: 700;
  line-height: 1;
  text-align: center;
  white-space: nowrap;
  vertical-align: baseline;
  border-radius: 0.25rem;
  transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
}

@media (prefers-reduced-motion: reduce) {
  .badge {
    transition: none;
  }
}

a.badge:hover, a.badge:focus {
  text-decoration: none;
}

.badge:empty {
  display: none;
}

.btn .badge {
  position: relative;
  top: -1px;
}

.badge-pill {
  padding-right: 0.6em;
  padding-left: 0.6em;
  border-radius: 10rem;
}

.badge-primary {
  color: #fff;
  background-color: #007bff;
}

a.badge-primary:hover, a.badge-primary:focus {
  color: #fff;
  background-color: #0062cc;
}

a.badge-primary:focus, a.badge-primary.focus {
  outline: 0;
  box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.5);
}

.badge-secondary {
  color: #fff;
  background-color: #6c757d;
}

a.badge-secondary:hover, a.badge-secondary:focus {
  color: #fff;
  background-color: #545b62;
}

a.badge-secondary:focus, a.badge-secondary.focus {
  outline: 0;
  box-shadow: 0 0 0 0.2rem rgba(108, 117, 125, 0.5);
}

.badge-success {
  color: #fff;
  background-color: #28a745;
}

a.badge-success:hover, a.badge-success:focus {
  color: #fff;
  background-color: #1e7e34;
}

a.badge-success:focus, a.badge-success.focus {
  outline: 0;
  box-shadow: 0 0 0 0.2rem rgba(40, 167, 69, 0.5);
}

.badge-info {
  color: #fff;
  background-color: #17a2b8;
}

a.badge-info:hover, a.badge-info:focus {
  color: #fff;
  background-color: #117a8b;
}

a.badge-info:focus, a.badge-info.focus {
  outline: 0;
  box-shadow: 0 0 0 0.2rem rgba(23, 162, 184, 0.5);
}

.badge-warning {
  color: #212529;
  background-color: #ffc107;
}

a.badge-warning:hover, a.badge-warning:focus {
  color: #212529;
  background-color: #d39e00;
}

a.badge-warning:focus, a.badge-warning.focus {
  outline: 0;
  box-shadow: 0 0 0 0.2rem rgba(255, 193, 7, 0.5);
}

.badge-danger {
  color: #fff;
  background-color: #dc3545;
}

a.badge-danger:hover, a.badge-danger:focus {
  color: #fff;
  background-color: #bd2130;
}

a.badge-danger:focus, a.badge-danger.focus {
  outline: 0;
  box-shadow: 0 0 0 0.2rem rgba(220, 53, 69, 0.5);
}

.badge-light {
  color: #212529;
  background-color: #f8f9fa;
}

a.badge-light:hover, a.badge-light:focus {
  color: #212529;
  background-color: #dae0e5;
}

a.badge-light:focus, a.badge-light.focus {
  outline: 0;
  box-shadow: 0 0 0 0.2rem rgba(248, 249, 250, 0.5);
}

.badge-dark {
  color: #fff;
  background-color: #343a40;
}

a.badge-dark:hover, a.badge-dark:focus {
  color: #fff;
  background-color: #1d2124;
}

a.badge-dark:focus, a.badge-dark.focus {
  outline: 0;
  box-shadow: 0 0 0 0.2rem rgba(52, 58, 64, 0.5);
}

.jumbotron {
  padding: 2rem 1rem;
  margin-bottom: 2rem;
  background-color: #e9ecef;
  border-radius: 0.3rem;
}

@media (min-width: 576px) {
  .jumbotron {
    padding: 4rem 2rem;
  }
}

.jumbotron-fluid {
  padding-right: 0;
  padding-left: 0;
  border-radius: 0;
}

.alert {
  position: relative;
  padding: 0.75rem 1.25rem;
  margin-bottom: 1rem;
  border: 1px solid transparent;
  border-radius: 0.25rem;
}

.alert-heading {
  color: inherit;
}

.alert-link {
  font-weight: 700;
}

.alert-dismissible {
  padding-right: 4rem;
}

.alert-dismissible .close {
  position: absolute;
  top: 0;
  right: 0;
  padding: 0.75rem 1.25rem;
  color: inherit;
}

.alert-primary {
  color: #004085;
  background-color: #cce5ff;
  border-color: #b8daff;
}

.alert-primary hr {
  border-top-color: #9fcdff;
}

.alert-primary .alert-link {
  color: #002752;
}

.alert-secondary {
  color: #383d41;
  background-color: #e2e3e5;
  border-color: #d6d8db;
}

.alert-secondary hr {
  border-top-color: #c8cbcf;
}

.alert-secondary .alert-link {
  color: #202326;
}

.alert-success {
  color: #155724;
  background-color: #d4edda;
  border-color: #c3e6cb;
}

.alert-success hr {
  border-top-color: #b1dfbb;
}

.alert-success .alert-link {
  color: #0b2e13;
}

.alert-info {
  color: #0c5460;
  background-color: #d1ecf1;
  border-color: #bee5eb;
}

.alert-info hr {
  border-top-color: #abdde5;
}

.alert-info .alert-link {
  color: #062c33;
}

.alert-warning {
  color: #856404;
  background-color: #fff3cd;
  border-color: #ffeeba;
}

.alert-warning hr {
  border-top-color: #ffe8a1;
}

.alert-warning .alert-link {
  color: #533f03;
}

.alert-danger {
  color: #721c24;
  background-color: #f8d7da;
  border-color: #f5c6cb;
}

.alert-danger hr {
  border-top-color: #f1b0b7;
}

.alert-danger .alert-link {
  color: #491217;
}

.alert-light {
  color: #818182;
  background-color: #fefefe;
  border-color: #fdfdfe;
}

.alert-light hr {
  border-top-color: #ececf6;
}

.alert-light .alert-link {
  color: #686868;
}

.alert-dark {
  color: #1b1e21;
  background-color: #d6d8d9;
  border-color: #c6c8ca;
}

.alert-dark hr {
  border-top-color: #b9bbbe;
}

.alert-dark .alert-link {
  color: #040505;
}

@-webkit-keyframes progress-bar-stripes {
  from {
    background-position: 1rem 0;
  }
  to {
    background-position: 0 0;
  }
}

@keyframes progress-bar-stripes {
  from {
    background-position: 1rem 0;
  }
  to {
    background-position: 0 0;
  }
}

.progress {
  display: flex;
  height: 1rem;
  overflow: hidden;
  font-size: 0.75rem;
  background-color: #e9ecef;
  border-radius: 0.25rem;
}

.progress-bar {
  display: flex;
  flex-direction: column;
  justify-content: center;
  overflow: hidden;
  color: #fff;
  text-align: center;
  white-space: nowrap;
  background-color: #007bff;
  transition: width 0.6s ease;
}

@media (prefers-reduced-motion: reduce) {
  .progress-bar {
    transition: none;
  }
}

.progress-bar-striped {
  background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
  background-size: 1rem 1rem;
}

.progress-bar-animated {
  -webkit-animation: progress-bar-stripes 1s linear infinite;
          animation: progress-bar-stripes 1s linear infinite;
}

@media (prefers-reduced-motion: reduce) {
  .progress-bar-animated {
    -webkit-animation: none;
            animation: none;
  }
}

.media {
  display: flex;
  align-items: flex-start;
}

.media-body {
  flex: 1;
}

.list-group {
  display: flex;
  flex-direction: column;
  padding-left: 0;
  margin-bottom: 0;
}

.list-group-item-action {
  width: 100%;
  color: #495057;
  text-align: inherit;
}

.list-group-item-action:hover, .list-group-item-action:focus {
  z-index: 1;
  color: #495057;
  text-decoration: none;
  background-color: #f8f9fa;
}

.list-group-item-action:active {
  color: #212529;
  background-color: #e9ecef;
}

.list-group-item {
  position: relative;
  display: block;
  padding: 0.75rem 1.25rem;
  background-color: #fff;
  border: 1px solid rgba(0, 0, 0, 0.125);
}

.list-group-item:first-child {
  border-top-left-radius: 0.25rem;
  border-top-right-radius: 0.25rem;
}

.list-group-item:last-child {
  border-bottom-right-radius: 0.25rem;
  border-bottom-left-radius: 0.25rem;
}

.list-group-item.disabled, .list-group-item:disabled {
  color: #6c757d;
  pointer-events: none;
  background-color: #fff;
}

.list-group-item.active {
  z-index: 2;
  color: #fff;
  background-color: #007bff;
  border-color: #007bff;
}

.list-group-item + .list-group-item {
  border-top-width: 0;
}

.list-group-item + .list-group-item.active {
  margin-top: -1px;
  border-top-width: 1px;
}

.list-group-horizontal {
  flex-direction: row;
}

.list-group-horizontal .list-group-item:first-child {
  border-bottom-left-radius: 0.25rem;
  border-top-right-radius: 0;
}

.list-group-horizontal .list-group-item:last-child {
  border-top-right-radius: 0.25rem;
  border-bottom-left-radius: 0;
}

.list-group-horizontal .list-group-item.active {
  margin-top: 0;
}

.list-group-horizontal .list-group-item + .list-group-item {
  border-top-width: 1px;
  border-left-width: 0;
}

.list-group-horizontal .list-group-item + .list-group-item.active {
  margin-left: -1px;
  border-left-width: 1px;
}

@media (min-width: 576px) {
  .list-group-horizontal-sm {
    flex-direction: row;
  }
  .list-group-horizontal-sm .list-group-item:first-child {
    border-bottom-left-radius: 0.25rem;
    border-top-right-radius: 0;
  }
  .list-group-horizontal-sm .list-group-item:last-child {
    border-top-right-radius: 0.25rem;
    border-bottom-left-radius: 0;
  }
  .list-group-horizontal-sm .list-group-item.active {
    margin-top: 0;
  }
  .list-group-horizontal-sm .list-group-item + .list-group-item {
    border-top-width: 1px;
    border-left-width: 0;
  }
  .list-group-horizontal-sm .list-group-item + .list-group-item.active {
    margin-left: -1px;
    border-left-width: 1px;
  }
}

@media (min-width: 768px) {
  .list-group-horizontal-md {
    flex-direction: row;
  }
  .list-group-horizontal-md .list-group-item:first-child {
    border-bottom-left-radius: 0.25rem;
    border-top-right-radius: 0;
  }
  .list-group-horizontal-md .list-group-item:last-child {
    border-top-right-radius: 0.25rem;
    border-bottom-left-radius: 0;
  }
  .list-group-horizontal-md .list-group-item.active {
    margin-top: 0;
  }
  .list-group-horizontal-md .list-group-item + .list-group-item {
    border-top-width: 1px;
    border-left-width: 0;
  }
  .list-group-horizontal-md .list-group-item + .list-group-item.active {
    margin-left: -1px;
    border-left-width: 1px;
  }
}

@media (min-width: 992px) {
  .list-group-horizontal-lg {
    flex-direction: row;
  }
  .list-group-horizontal-lg .list-group-item:first-child {
    border-bottom-left-radius: 0.25rem;
    border-top-right-radius: 0;
  }
  .list-group-horizontal-lg .list-group-item:last-child {
    border-top-right-radius: 0.25rem;
    border-bottom-left-radius: 0;
  }
  .list-group-horizontal-lg .list-group-item.active {
    margin-top: 0;
  }
  .list-group-horizontal-lg .list-group-item + .list-group-item {
    border-top-width: 1px;
    border-left-width: 0;
  }
  .list-group-horizontal-lg .list-group-item + .list-group-item.active {
    margin-left: -1px;
    border-left-width: 1px;
  }
}

@media (min-width: 1200px) {
  .list-group-horizontal-xl {
    flex-direction: row;
  }
  .list-group-horizontal-xl .list-group-item:first-child {
    border-bottom-left-radius: 0.25rem;
    border-top-right-radius: 0;
  }
  .list-group-horizontal-xl .list-group-item:last-child {
    border-top-right-radius: 0.25rem;
    border-bottom-left-radius: 0;
  }
  .list-group-horizontal-xl .list-group-item.active {
    margin-top: 0;
  }
  .list-group-horizontal-xl .list-group-item + .list-group-item {
    border-top-width: 1px;
    border-left-width: 0;
  }
  .list-group-horizontal-xl .list-group-item + .list-group-item.active {
    margin-left: -1px;
    border-left-width: 1px;
  }
}

.list-group-flush .list-group-item {
  border-right-width: 0;
  border-left-width: 0;
  border-radius: 0;
}

.list-group-flush .list-group-item:first-child {
  border-top-width: 0;
}

.list-group-flush:last-child .list-group-item:last-child {
  border-bottom-width: 0;
}

.list-group-item-primary {
  color: #004085;
  background-color: #b8daff;
}

.list-group-item-primary.list-group-item-action:hover, .list-group-item-primary.list-group-item-action:focus {
  color: #004085;
  background-color: #9fcdff;
}

.list-group-item-primary.list-group-item-action.active {
  color: #fff;
  background-color: #004085;
  border-color: #004085;
}

.list-group-item-secondary {
  color: #383d41;
  background-color: #d6d8db;
}

.list-group-item-secondary.list-group-item-action:hover, .list-group-item-secondary.list-group-item-action:focus {
  color: #383d41;
  background-color: #c8cbcf;
}

.list-group-item-secondary.list-group-item-action.active {
  color: #fff;
  background-color: #383d41;
  border-color: #383d41;
}

.list-group-item-success {
  color: #155724;
  background-color: #c3e6cb;
}

.list-group-item-success.list-group-item-action:hover, .list-group-item-success.list-group-item-action:focus {
  color: #155724;
  background-color: #b1dfbb;
}

.list-group-item-success.list-group-item-action.active {
  color: #fff;
  background-color: #155724;
  border-color: #155724;
}

.list-group-item-info {
  color: #0c5460;
  background-color: #bee5eb;
}

.list-group-item-info.list-group-item-action:hover, .list-group-item-info.list-group-item-action:focus {
  color: #0c5460;
  background-color: #abdde5;
}

.list-group-item-info.list-group-item-action.active {
  color: #fff;
  background-color: #0c5460;
  border-color: #0c5460;
}

.list-group-item-warning {
  color: #856404;
  background-color: #ffeeba;
}

.list-group-item-warning.list-group-item-action:hover, .list-group-item-warning.list-group-item-action:focus {
  color: #856404;
  background-color: #ffe8a1;
}

.list-group-item-warning.list-group-item-action.active {
  color: #fff;
  background-color: #856404;
  border-color: #856404;
}

.list-group-item-danger {
  color: #721c24;
  background-color: #f5c6cb;
}

.list-group-item-danger.list-group-item-action:hover, .list-group-item-danger.list-group-item-action:focus {
  color: #721c24;
  background-color: #f1b0b7;
}

.list-group-item-danger.list-group-item-action.active {
  color: #fff;
  background-color: #721c24;
  border-color: #721c24;
}

.list-group-item-light {
  color: #818182;
  background-color: #fdfdfe;
}

.list-group-item-light.list-group-item-action:hover, .list-group-item-light.list-group-item-action:focus {
  color: #818182;
  background-color: #ececf6;
}

.list-group-item-light.list-group-item-action.active {
  color: #fff;
  background-color: #818182;
  border-color: #818182;
}

.list-group-item-dark {
  color: #1b1e21;
  background-color: #c6c8ca;
}

.list-group-item-dark.list-group-item-action:hover, .list-group-item-dark.list-group-item-action:focus {
  color: #1b1e21;
  background-color: #b9bbbe;
}

.list-group-item-dark.list-group-item-action.active {
  color: #fff;
  background-color: #1b1e21;
  border-color: #1b1e21;
}

.close {
  float: right;
  font-size: 1.5rem;
  font-weight: 700;
  line-height: 1;
  color: #000;
  text-shadow: 0 1px 0 #fff;
  opacity: .5;
}

.close:hover {
  color: #000;
  text-decoration: none;
}

.close:not(:disabled):not(.disabled):hover, .close:not(:disabled):not(.disabled):focus {
  opacity: .75;
}

button.close {
  padding: 0;
  background-color: transparent;
  border: 0;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
}

a.close.disabled {
  pointer-events: none;
}

.toast {
  max-width: 350px;
  overflow: hidden;
  font-size: 0.875rem;
  background-color: rgba(255, 255, 255, 0.85);
  background-clip: padding-box;
  border: 1px solid rgba(0, 0, 0, 0.1);
  box-shadow: 0 0.25rem 0.75rem rgba(0, 0, 0, 0.1);
  -webkit-backdrop-filter: blur(10px);
          backdrop-filter: blur(10px);
  opacity: 0;
  border-radius: 0.25rem;
}

.toast:not(:last-child) {
  margin-bottom: 0.75rem;
}

.toast.showing {
  opacity: 1;
}

.toast.show {
  display: block;
  opacity: 1;
}

.toast.hide {
  display: none;
}

.toast-header {
  display: flex;
  align-items: center;
  padding: 0.25rem 0.75rem;
  color: #6c757d;
  background-color: rgba(255, 255, 255, 0.85);
  background-clip: padding-box;
  border-bottom: 1px solid rgba(0, 0, 0, 0.05);
}

.toast-body {
  padding: 0.75rem;
}

.modal-open {
  overflow: hidden;
}

.modal-open .modal {
  overflow-x: hidden;
  overflow-y: auto;
}

.modal {
  position: fixed;
  top: 0;
  left: 0;
  z-index: 1050;
  display: none;
  width: 100%;
  height: 100%;
  overflow: hidden;
  outline: 0;
}

.modal-dialog {
  position: relative;
  width: auto;
  margin: 0.5rem;
  pointer-events: none;
}

.modal.fade .modal-dialog {
  transition: transform 0.3s ease-out;
  transform: translate(0, -50px);
}

@media (prefers-reduced-motion: reduce) {
  .modal.fade .modal-dialog {
    transition: none;
  }
}

.modal.show .modal-dialog {
  transform: none;
}

.modal.modal-static .modal-dialog {
  transform: scale(1.02);
}

.modal-dialog-scrollable {
  display: flex;
  max-height: calc(100% - 1rem);
}

.modal-dialog-scrollable .modal-content {
  max-height: calc(100vh - 1rem);
  overflow: hidden;
}

.modal-dialog-scrollable .modal-header,
.modal-dialog-scrollable .modal-footer {
  flex-shrink: 0;
}

.modal-dialog-scrollable .modal-body {
  overflow-y: auto;
}

.modal-dialog-centered {
  display: flex;
  align-items: center;
  min-height: calc(100% - 1rem);
}

.modal-dialog-centered::before {
  display: block;
  height: calc(100vh - 1rem);
  content: "";
}

.modal-dialog-centered.modal-dialog-scrollable {
  flex-direction: column;
  justify-content: center;
  height: 100%;
}

.modal-dialog-centered.modal-dialog-scrollable .modal-content {
  max-height: none;
}

.modal-dialog-centered.modal-dialog-scrollable::before {
  content: none;
}

.modal-content {
  position: relative;
  display: flex;
  flex-direction: column;
  width: 100%;
  pointer-events: auto;
  background-color: #fff;
  background-clip: padding-box;
  border: 1px solid rgba(0, 0, 0, 0.2);
  border-radius: 0.3rem;
  outline: 0;
}

.modal-backdrop {
  position: fixed;
  top: 0;
  left: 0;
  z-index: 1040;
  width: 100vw;
  height: 100vh;
  background-color: #000;
}

.modal-backdrop.fade {
  opacity: 0;
}

.modal-backdrop.show {
  opacity: 0.5;
}

.modal-header {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  padding: 1rem 1rem;
  border-bottom: 1px solid #dee2e6;
  border-top-left-radius: calc(0.3rem - 1px);
  border-top-right-radius: calc(0.3rem - 1px);
}

.modal-header .close {
  padding: 1rem 1rem;
  margin: -1rem -1rem -1rem auto;
}

.modal-title {
  margin-bottom: 0;
  line-height: 1.5;
}

.modal-body {
  position: relative;
  flex: 1 1 auto;
  padding: 1rem;
}

.modal-footer {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: flex-end;
  padding: 0.75rem;
  border-top: 1px solid #dee2e6;
  border-bottom-right-radius: calc(0.3rem - 1px);
  border-bottom-left-radius: calc(0.3rem - 1px);
}

.modal-footer > * {
  margin: 0.25rem;
}

.modal-scrollbar-measure {
  position: absolute;
  top: -9999px;
  width: 50px;
  height: 50px;
  overflow: scroll;
}

@media (min-width: 576px) {
  .modal-dialog {
    max-width: 500px;
    margin: 1.75rem auto;
  }
  .modal-dialog-scrollable {
    max-height: calc(100% - 3.5rem);
  }
  .modal-dialog-scrollable .modal-content {
    max-height: calc(100vh - 3.5rem);
  }
  .modal-dialog-centered {
    min-height: calc(100% - 3.5rem);
  }
  .modal-dialog-centered::before {
    height: calc(100vh - 3.5rem);
  }
  .modal-sm {
    max-width: 300px;
  }
}

@media (min-width: 992px) {
  .modal-lg,
  .modal-xl {
    max-width: 800px;
  }
}

@media (min-width: 1200px) {
  .modal-xl {
    max-width: 1140px;
  }
}

.tooltip {
  position: absolute;
  z-index: 1070;
  display: block;
  margin: 0;
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
  font-style: normal;
  font-weight: 400;
  line-height: 1.5;
  text-align: left;
  text-align: start;
  text-decoration: none;
  text-shadow: none;
  text-transform: none;
  letter-spacing: normal;
  word-break: normal;
  word-spacing: normal;
  white-space: normal;
  line-break: auto;
  font-size: 0.875rem;
  word-wrap: break-word;
  opacity: 0;
}

.tooltip.show {
  opacity: 0.9;
}

.tooltip .arrow {
  position: absolute;
  display: block;
  width: 0.8rem;
  height: 0.4rem;
}

.tooltip .arrow::before {
  position: absolute;
  content: "";
  border-color: transparent;
  border-style: solid;
}

.bs-tooltip-top, .bs-tooltip-auto[x-placement^="top"] {
  padding: 0.4rem 0;
}

.bs-tooltip-top .arrow, .bs-tooltip-auto[x-placement^="top"] .arrow {
  bottom: 0;
}

.bs-tooltip-top .arrow::before, .bs-tooltip-auto[x-placement^="top"] .arrow::before {
  top: 0;
  border-width: 0.4rem 0.4rem 0;
  border-top-color: #000;
}

.bs-tooltip-right, .bs-tooltip-auto[x-placement^="right"] {
  padding: 0 0.4rem;
}

.bs-tooltip-right .arrow, .bs-tooltip-auto[x-placement^="right"] .arrow {
  left: 0;
  width: 0.4rem;
  height: 0.8rem;
}

.bs-tooltip-right .arrow::before, .bs-tooltip-auto[x-placement^="right"] .arrow::before {
  right: 0;
  border-width: 0.4rem 0.4rem 0.4rem 0;
  border-right-color: #000;
}

.bs-tooltip-bottom, .bs-tooltip-auto[x-placement^="bottom"] {
  padding: 0.4rem 0;
}

.bs-tooltip-bottom .arrow, .bs-tooltip-auto[x-placement^="bottom"] .arrow {
  top: 0;
}

.bs-tooltip-bottom .arrow::before, .bs-tooltip-auto[x-placement^="bottom"] .arrow::before {
  bottom: 0;
  border-width: 0 0.4rem 0.4rem;
  border-bottom-color: #000;
}

.bs-tooltip-left, .bs-tooltip-auto[x-placement^="left"] {
  padding: 0 0.4rem;
}

.bs-tooltip-left .arrow, .bs-tooltip-auto[x-placement^="left"] .arrow {
  right: 0;
  width: 0.4rem;
  height: 0.8rem;
}

.bs-tooltip-left .arrow::before, .bs-tooltip-auto[x-placement^="left"] .arrow::before {
  left: 0;
  border-width: 0.4rem 0 0.4rem 0.4rem;
  border-left-color: #000;
}

.tooltip-inner {
  max-width: 200px;
  padding: 0.25rem 0.5rem;
  color: #fff;
  text-align: center;
  background-color: #000;
  border-radius: 0.25rem;
}

.popover {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1060;
  display: block;
  max-width: 276px;
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
  font-style: normal;
  font-weight: 400;
  line-height: 1.5;
  text-align: left;
  text-align: start;
  text-decoration: none;
  text-shadow: none;
  text-transform: none;
  letter-spacing: normal;
  word-break: normal;
  word-spacing: normal;
  white-space: normal;
  line-break: auto;
  font-size: 0.875rem;
  word-wrap: break-word;
  background-color: #fff;
  background-clip: padding-box;
  border: 1px solid rgba(0, 0, 0, 0.2);
  border-radius: 0.3rem;
}

.popover .arrow {
  position: absolute;
  display: block;
  width: 1rem;
  height: 0.5rem;
  margin: 0 0.3rem;
}

.popover .arrow::before, .popover .arrow::after {
  position: absolute;
  display: block;
  content: "";
  border-color: transparent;
  border-style: solid;
}

.bs-popover-top, .bs-popover-auto[x-placement^="top"] {
  margin-bottom: 0.5rem;
}

.bs-popover-top > .arrow, .bs-popover-auto[x-placement^="top"] > .arrow {
  bottom: calc(-0.5rem - 1px);
}

.bs-popover-top > .arrow::before, .bs-popover-auto[x-placement^="top"] > .arrow::before {
  bottom: 0;
  border-width: 0.5rem 0.5rem 0;
  border-top-color: rgba(0, 0, 0, 0.25);
}

.bs-popover-top > .arrow::after, .bs-popover-auto[x-placement^="top"] > .arrow::after {
  bottom: 1px;
  border-width: 0.5rem 0.5rem 0;
  border-top-color: #fff;
}

.bs-popover-right, .bs-popover-auto[x-placement^="right"] {
  margin-left: 0.5rem;
}

.bs-popover-right > .arrow, .bs-popover-auto[x-placement^="right"] > .arrow {
  left: calc(-0.5rem - 1px);
  width: 0.5rem;
  height: 1rem;
  margin: 0.3rem 0;
}

.bs-popover-right > .arrow::before, .bs-popover-auto[x-placement^="right"] > .arrow::before {
  left: 0;
  border-width: 0.5rem 0.5rem 0.5rem 0;
  border-right-color: rgba(0, 0, 0, 0.25);
}

.bs-popover-right > .arrow::after, .bs-popover-auto[x-placement^="right"] > .arrow::after {
  left: 1px;
  border-width: 0.5rem 0.5rem 0.5rem 0;
  border-right-color: #fff;
}

.bs-popover-bottom, .bs-popover-auto[x-placement^="bottom"] {
  margin-top: 0.5rem;
}

.bs-popover-bottom > .arrow, .bs-popover-auto[x-placement^="bottom"] > .arrow {
  top: calc(-0.5rem - 1px);
}

.bs-popover-bottom > .arrow::before, .bs-popover-auto[x-placement^="bottom"] > .arrow::before {
  top: 0;
  border-width: 0 0.5rem 0.5rem 0.5rem;
  border-bottom-color: rgba(0, 0, 0, 0.25);
}

.bs-popover-bottom > .arrow::after, .bs-popover-auto[x-placement^="bottom"] > .arrow::after {
  top: 1px;
  border-width: 0 0.5rem 0.5rem 0.5rem;
  border-bottom-color: #fff;
}

.bs-popover-bottom .popover-header::before, .bs-popover-auto[x-placement^="bottom"] .popover-header::before {
  position: absolute;
  top: 0;
  left: 50%;
  display: block;
  width: 1rem;
  margin-left: -0.5rem;
  content: "";
  border-bottom: 1px solid #f7f7f7;
}

.bs-popover-left, .bs-popover-auto[x-placement^="left"] {
  margin-right: 0.5rem;
}

.bs-popover-left > .arrow, .bs-popover-auto[x-placement^="left"] > .arrow {
  right: calc(-0.5rem - 1px);
  width: 0.5rem;
  height: 1rem;
  margin: 0.3rem 0;
}

.bs-popover-left > .arrow::before, .bs-popover-auto[x-placement^="left"] > .arrow::before {
  right: 0;
  border-width: 0.5rem 0 0.5rem 0.5rem;
  border-left-color: rgba(0, 0, 0, 0.25);
}

.bs-popover-left > .arrow::after, .bs-popover-auto[x-placement^="left"] > .arrow::after {
  right: 1px;
  border-width: 0.5rem 0 0.5rem 0.5rem;
  border-left-color: #fff;
}

.popover-header {
  padding: 0.5rem 0.75rem;
  margin-bottom: 0;
  font-size: 1rem;
  background-color: #f7f7f7;
  border-bottom: 1px solid #ebebeb;
  border-top-left-radius: calc(0.3rem - 1px);
  border-top-right-radius: calc(0.3rem - 1px);
}

.popover-header:empty {
  display: none;
}

.popover-body {
  padding: 0.5rem 0.75rem;
  color: #212529;
}

.carousel {
  position: relative;
}

.carousel.pointer-event {
  touch-action: pan-y;
}

.carousel-inner {
  position: relative;
  width: 100%;
  overflow: hidden;
}

.carousel-inner::after {
  display: block;
  clear: both;
  content: "";
}

.carousel-item {
  position: relative;
  display: none;
  float: left;
  width: 100%;
  margin-right: -100%;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  transition: transform 0.6s ease-in-out;
}

@media (prefers-reduced-motion: reduce) {
  .carousel-item {
    transition: none;
  }
}

.carousel-item.active,
.carousel-item-next,
.carousel-item-prev {
  display: block;
}

.carousel-item-next:not(.carousel-item-left),
.active.carousel-item-right {
  transform: translateX(100%);
}

.carousel-item-prev:not(.carousel-item-right),
.active.carousel-item-left {
  transform: translateX(-100%);
}

.carousel-fade .carousel-item {
  opacity: 0;
  transition-property: opacity;
  transform: none;
}

.carousel-fade .carousel-item.active,
.carousel-fade .carousel-item-next.carousel-item-left,
.carousel-fade .carousel-item-prev.carousel-item-right {
  z-index: 1;
  opacity: 1;
}

.carousel-fade .active.carousel-item-left,
.carousel-fade .active.carousel-item-right {
  z-index: 0;
  opacity: 0;
  transition: opacity 0s 0.6s;
}

@media (prefers-reduced-motion: reduce) {
  .carousel-fade .active.carousel-item-left,
  .carousel-fade .active.carousel-item-right {
    transition: none;
  }
}

.carousel-control-prev,
.carousel-control-next {
  position: absolute;
  top: 0;
  bottom: 0;
  z-index: 1;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 15%;
  color: #fff;
  text-align: center;
  opacity: 0.5;
  transition: opacity 0.15s ease;
}

@media (prefers-reduced-motion: reduce) {
  .carousel-control-prev,
  .carousel-control-next {
    transition: none;
  }
}

.carousel-control-prev:hover, .carousel-control-prev:focus,
.carousel-control-next:hover,
.carousel-control-next:focus {
  color: #fff;
  text-decoration: none;
  outline: 0;
  opacity: 0.9;
}

.carousel-control-prev {
  left: 0;
}

.carousel-control-next {
  right: 0;
}

.carousel-control-prev-icon,
.carousel-control-next-icon {
  display: inline-block;
  width: 20px;
  height: 20px;
  background: no-repeat 50% / 100% 100%;
}

.carousel-control-prev-icon {
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='%23fff' width='8' height='8' viewBox='0 0 8 8'%3e%3cpath d='M5.25 0l-4 4 4 4 1.5-1.5L4.25 4l2.5-2.5L5.25 0z'/%3e%3c/svg%3e");
}

.carousel-control-next-icon {
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='%23fff' width='8' height='8' viewBox='0 0 8 8'%3e%3cpath d='M2.75 0l-1.5 1.5L3.75 4l-2.5 2.5L2.75 8l4-4-4-4z'/%3e%3c/svg%3e");
}

.carousel-indicators {
  position: absolute;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 15;
  display: flex;
  justify-content: center;
  padding-left: 0;
  margin-right: 15%;
  margin-left: 15%;
  list-style: none;
}

.carousel-indicators li {
  box-sizing: content-box;
  flex: 0 1 auto;
  width: 30px;
  height: 3px;
  margin-right: 3px;
  margin-left: 3px;
  text-indent: -999px;
  cursor: pointer;
  background-color: #fff;
  background-clip: padding-box;
  border-top: 10px solid transparent;
  border-bottom: 10px solid transparent;
  opacity: .5;
  transition: opacity 0.6s ease;
}

@media (prefers-reduced-motion: reduce) {
  .carousel-indicators li {
    transition: none;
  }
}

.carousel-indicators .active {
  opacity: 1;
}

.carousel-caption {
  position: absolute;
  right: 15%;
  bottom: 20px;
  left: 15%;
  z-index: 10;
  padding-top: 20px;
  padding-bottom: 20px;
  color: #fff;
  text-align: center;
}

@-webkit-keyframes spinner-border {
  to {
    transform: rotate(360deg);
  }
}

@keyframes spinner-border {
  to {
    transform: rotate(360deg);
  }
}

.spinner-border {
  display: inline-block;
  width: 2rem;
  height: 2rem;
  vertical-align: text-bottom;
  border: 0.25em solid currentColor;
  border-right-color: transparent;
  border-radius: 50%;
  -webkit-animation: spinner-border .75s linear infinite;
          animation: spinner-border .75s linear infinite;
}

.spinner-border-sm {
  width: 1rem;
  height: 1rem;
  border-width: 0.2em;
}

@-webkit-keyframes spinner-grow {
  0% {
    transform: scale(0);
  }
  50% {
    opacity: 1;
  }
}

@keyframes spinner-grow {
  0% {
    transform: scale(0);
  }
  50% {
    opacity: 1;
  }
}

.spinner-grow {
  display: inline-block;
  width: 2rem;
  height: 2rem;
  vertical-align: text-bottom;
  background-color: currentColor;
  border-radius: 50%;
  opacity: 0;
  -webkit-animation: spinner-grow .75s linear infinite;
          animation: spinner-grow .75s linear infinite;
}

.spinner-grow-sm {
  width: 1rem;
  height: 1rem;
}

.align-baseline {
  vertical-align: baseline !important;
}

.align-top {
  vertical-align: top !important;
}

.align-middle {
  vertical-align: middle !important;
}

.align-bottom {
  vertical-align: bottom !important;
}

.align-text-bottom {
  vertical-align: text-bottom !important;
}

.align-text-top {
  vertical-align: text-top !important;
}

.bg-primary {
  background-color: #007bff !important;
}

a.bg-primary:hover, a.bg-primary:focus,
button.bg-primary:hover,
button.bg-primary:focus {
  background-color: #0062cc !important;
}

.bg-secondary {
  background-color: #6c757d !important;
}

a.bg-secondary:hover, a.bg-secondary:focus,
button.bg-secondary:hover,
button.bg-secondary:focus {
  background-color: #545b62 !important;
}

.bg-success {
  background-color: #28a745 !important;
}

a.bg-success:hover, a.bg-success:focus,
button.bg-success:hover,
button.bg-success:focus {
  background-color: #1e7e34 !important;
}

.bg-info {
  background-color: #17a2b8 !important;
}

a.bg-info:hover, a.bg-info:focus,
button.bg-info:hover,
button.bg-info:focus {
  background-color: #117a8b !important;
}

.bg-warning {
  background-color: #ffc107 !important;
}

a.bg-warning:hover, a.bg-warning:focus,
button.bg-warning:hover,
button.bg-warning:focus {
  background-color: #d39e00 !important;
}

.bg-danger {
  background-color: #dc3545 !important;
}

a.bg-danger:hover, a.bg-danger:focus,
button.bg-danger:hover,
button.bg-danger:focus {
  background-color: #bd2130 !important;
}

.bg-light {
  background-color: #f8f9fa !important;
}

a.bg-light:hover, a.bg-light:focus,
button.bg-light:hover,
button.bg-light:focus {
  background-color: #dae0e5 !important;
}

.bg-dark {
  background-color: #343a40 !important;
}

a.bg-dark:hover, a.bg-dark:focus,
button.bg-dark:hover,
button.bg-dark:focus {
  background-color: #1d2124 !important;
}

.bg-white {
  background-color: #fff !important;
}

.bg-transparent {
  background-color: transparent !important;
}

.border {
  border: 1px solid #dee2e6 !important;
}

.border-top {
  border-top: 1px solid #dee2e6 !important;
}

.border-right {
  border-right: 1px solid #dee2e6 !important;
}

.border-bottom {
  border-bottom: 1px solid #dee2e6 !important;
}

.border-left {
  border-left: 1px solid #dee2e6 !important;
}

.border-0 {
  border: 0 !important;
}

.border-top-0 {
  border-top: 0 !important;
}

.border-right-0 {
  border-right: 0 !important;
}

.border-bottom-0 {
  border-bottom: 0 !important;
}

.border-left-0 {
  border-left: 0 !important;
}

.border-primary {
  border-color: #007bff !important;
}

.border-secondary {
  border-color: #6c757d !important;
}

.border-success {
  border-color: #28a745 !important;
}

.border-info {
  border-color: #17a2b8 !important;
}

.border-warning {
  border-color: #ffc107 !important;
}

.border-danger {
  border-color: #dc3545 !important;
}

.border-light {
  border-color: #f8f9fa !important;
}

.border-dark {
  border-color: #343a40 !important;
}

.border-white {
  border-color: #fff !important;
}

.rounded-sm {
  border-radius: 0.2rem !important;
}

.rounded {
  border-radius: 0.25rem !important;
}

.rounded-top {
  border-top-left-radius: 0.25rem !important;
  border-top-right-radius: 0.25rem !important;
}

.rounded-right {
  border-top-right-radius: 0.25rem !important;
  border-bottom-right-radius: 0.25rem !important;
}

.rounded-bottom {
  border-bottom-right-radius: 0.25rem !important;
  border-bottom-left-radius: 0.25rem !important;
}

.rounded-left {
  border-top-left-radius: 0.25rem !important;
  border-bottom-left-radius: 0.25rem !important;
}

.rounded-lg {
  border-radius: 0.3rem !important;
}

.rounded-circle {
  border-radius: 50% !important;
}

.rounded-pill {
  border-radius: 50rem !important;
}

.rounded-0 {
  border-radius: 0 !important;
}

.clearfix::after {
  display: block;
  clear: both;
  content: "";
}

.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: flex !important;
}

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

@media (min-width: 576px) {
  .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: flex !important;
  }
  .d-sm-inline-flex {
    display: inline-flex !important;
  }
}

@media (min-width: 768px) {
  .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: flex !important;
  }
  .d-md-inline-flex {
    display: inline-flex !important;
  }
}

@media (min-width: 992px) {
  .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: flex !important;
  }
  .d-lg-inline-flex {
    display: inline-flex !important;
  }
}

@media (min-width: 1200px) {
  .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: flex !important;
  }
  .d-xl-inline-flex {
    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: flex !important;
  }
  .d-print-inline-flex {
    display: inline-flex !important;
  }
}

.embed-responsive {
  position: relative;
  display: block;
  width: 100%;
  padding: 0;
  overflow: hidden;
}

.embed-responsive::before {
  display: block;
  content: "";
}

.embed-responsive .embed-responsive-item,
.embed-responsive iframe,
.embed-responsive embed,
.embed-responsive object,
.embed-responsive video {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 100%;
  border: 0;
}

.embed-responsive-21by9::before {
  padding-top: 42.85714%;
}

.embed-responsive-16by9::before {
  padding-top: 56.25%;
}

.embed-responsive-4by3::before {
  padding-top: 75%;
}

.embed-responsive-1by1::before {
  padding-top: 100%;
}

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

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

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

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

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

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

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

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

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

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

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

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

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

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

.justify-content-center {
  justify-content: center !important;
}

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

.justify-content-around {
  justify-content: space-around !important;
}

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

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

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

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

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

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

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

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

.align-content-between {
  align-content: space-between !important;
}

.align-content-around {
  align-content: space-around !important;
}

.align-content-stretch {
  align-content: stretch !important;
}

.align-self-auto {
  align-self: auto !important;
}

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

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

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

.align-self-baseline {
  align-self: baseline !important;
}

.align-self-stretch {
  align-self: stretch !important;
}

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

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

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

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

.float-left {
  float: left !important;
}

.float-right {
  float: right !important;
}

.float-none {
  float: none !important;
}

@media (min-width: 576px) {
  .float-sm-left {
    float: left !important;
  }
  .float-sm-right {
    float: right !important;
  }
  .float-sm-none {
    float: none !important;
  }
}

@media (min-width: 768px) {
  .float-md-left {
    float: left !important;
  }
  .float-md-right {
    float: right !important;
  }
  .float-md-none {
    float: none !important;
  }
}

@media (min-width: 992px) {
  .float-lg-left {
    float: left !important;
  }
  .float-lg-right {
    float: right !important;
  }
  .float-lg-none {
    float: none !important;
  }
}

@media (min-width: 1200px) {
  .float-xl-left {
    float: left !important;
  }
  .float-xl-right {
    float: right !important;
  }
  .float-xl-none {
    float: none !important;
  }
}

.overflow-auto {
  overflow: auto !important;
}

.overflow-hidden {
  overflow: hidden !important;
}

.position-static {
  position: static !important;
}

.position-relative {
  position: relative !important;
}

.position-absolute {
  position: absolute !important;
}

.position-fixed {
  position: fixed !important;
}

.position-sticky {
  position: -webkit-sticky !important;
  position: sticky !important;
}

.fixed-top {
  position: fixed;
  top: 0;
  right: 0;
  left: 0;
  z-index: 1030;
}

.fixed-bottom {
  position: fixed;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 1030;
}

@supports ((position: -webkit-sticky) or (position: sticky)) {
  .sticky-top {
    position: -webkit-sticky;
    position: sticky;
    top: 0;
    z-index: 1020;
  }
}

.sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}

.sr-only-focusable:active,
.sr-only-focusable:focus {
  position: static;
  width: auto;
  height: auto;
  overflow: visible;
  clip: auto;
  white-space: normal;
}

.shadow-sm {
  box-shadow: 0 0.125rem 0.25rem rgba(0, 0, 0, 0.075) !important;
}

.shadow {
  box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15) !important;
}

.shadow-lg {
  box-shadow: 0 1rem 3rem rgba(0, 0, 0, 0.175) !important;
}

.shadow-none {
  box-shadow: none !important;
}

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

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

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

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

.w-auto {
  width: auto !important;
}

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

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

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

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

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

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

.mh-100 {
  max-height: 100% !important;
}

.min-vw-100 {
  min-width: 100vw !important;
}

.min-vh-100 {
  min-height: 100vh !important;
}

.vw-100 {
  width: 100vw !important;
}

.vh-100 {
  height: 100vh !important;
}

.stretched-link::after {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 1;
  pointer-events: auto;
  content: "";
  background-color: rgba(0, 0, 0, 0);
}

.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-n1 {
  margin: -0.25rem !important;
}

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

.ml-n5,
.mx-n5 {
  margin-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: 576px) {
  .m-sm-0 {
    margin: 0 !important;
  }
  .mt-sm-0,
  .my-sm-0 {
    margin-top: 0 !important;
  }
  .mr-sm-0,
  .mx-sm-0 {
    margin-right: 0 !important;
  }
  .mb-sm-0,
  .my-sm-0 {
    margin-bottom: 0 !important;
  }
  .ml-sm-0,
  .mx-sm-0 {
    margin-left: 0 !important;
  }
  .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-n1 {
    margin: -0.25rem !important;
  }
  .mt-sm-n1,
  .my-sm-n1 {
    margin-top: -0.25rem !important;
  }
  .mr-sm-n1,
  .mx-sm-n1 {
    margin-right: -0.25rem !important;
  }
  .mb-sm-n1,
  .my-sm-n1 {
    margin-bottom: -0.25rem !important;
  }
  .ml-sm-n1,
  .mx-sm-n1 {
    margin-left: -0.25rem !important;
  }
  .m-sm-n2 {
    margin: -0.5rem !important;
  }
  .mt-sm-n2,
  .my-sm-n2 {
    margin-top: -0.5rem !important;
  }
  .mr-sm-n2,
  .mx-sm-n2 {
    margin-right: -0.5rem !important;
  }
  .mb-sm-n2,
  .my-sm-n2 {
    margin-bottom: -0.5rem !important;
  }
  .ml-sm-n2,
  .mx-sm-n2 {
    margin-left: -0.5rem !important;
  }
  .m-sm-n3 {
    margin: -1rem !important;
  }
  .mt-sm-n3,
  .my-sm-n3 {
    margin-top: -1rem !important;
  }
  .mr-sm-n3,
  .mx-sm-n3 {
    margin-right: -1rem !important;
  }
  .mb-sm-n3,
  .my-sm-n3 {
    margin-bottom: -1rem !important;
  }
  .ml-sm-n3,
  .mx-sm-n3 {
    margin-left: -1rem !important;
  }
  .m-sm-n4 {
    margin: -1.5rem !important;
  }
  .mt-sm-n4,
  .my-sm-n4 {
    margin-top: -1.5rem !important;
  }
  .mr-sm-n4,
  .mx-sm-n4 {
    margin-right: -1.5rem !important;
  }
  .mb-sm-n4,
  .my-sm-n4 {
    margin-bottom: -1.5rem !important;
  }
  .ml-sm-n4,
  .mx-sm-n4 {
    margin-left: -1.5rem !important;
  }
  .m-sm-n5 {
    margin: -3rem !important;
  }
  .mt-sm-n5,
  .my-sm-n5 {
    margin-top: -3rem !important;
  }
  .mr-sm-n5,
  .mx-sm-n5 {
    margin-right: -3rem !important;
  }
  .mb-sm-n5,
  .my-sm-n5 {
    margin-bottom: -3rem !important;
  }
  .ml-sm-n5,
  .mx-sm-n5 {
    margin-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: 768px) {
  .m-md-0 {
    margin: 0 !important;
  }
  .mt-md-0,
  .my-md-0 {
    margin-top: 0 !important;
  }
  .mr-md-0,
  .mx-md-0 {
    margin-right: 0 !important;
  }
  .mb-md-0,
  .my-md-0 {
    margin-bottom: 0 !important;
  }
  .ml-md-0,
  .mx-md-0 {
    margin-left: 0 !important;
  }
  .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-n1 {
    margin: -0.25rem !important;
  }
  .mt-md-n1,
  .my-md-n1 {
    margin-top: -0.25rem !important;
  }
  .mr-md-n1,
  .mx-md-n1 {
    margin-right: -0.25rem !important;
  }
  .mb-md-n1,
  .my-md-n1 {
    margin-bottom: -0.25rem !important;
  }
  .ml-md-n1,
  .mx-md-n1 {
    margin-left: -0.25rem !important;
  }
  .m-md-n2 {
    margin: -0.5rem !important;
  }
  .mt-md-n2,
  .my-md-n2 {
    margin-top: -0.5rem !important;
  }
  .mr-md-n2,
  .mx-md-n2 {
    margin-right: -0.5rem !important;
  }
  .mb-md-n2,
  .my-md-n2 {
    margin-bottom: -0.5rem !important;
  }
  .ml-md-n2,
  .mx-md-n2 {
    margin-left: -0.5rem !important;
  }
  .m-md-n3 {
    margin: -1rem !important;
  }
  .mt-md-n3,
  .my-md-n3 {
    margin-top: -1rem !important;
  }
  .mr-md-n3,
  .mx-md-n3 {
    margin-right: -1rem !important;
  }
  .mb-md-n3,
  .my-md-n3 {
    margin-bottom: -1rem !important;
  }
  .ml-md-n3,
  .mx-md-n3 {
    margin-left: -1rem !important;
  }
  .m-md-n4 {
    margin: -1.5rem !important;
  }
  .mt-md-n4,
  .my-md-n4 {
    margin-top: -1.5rem !important;
  }
  .mr-md-n4,
  .mx-md-n4 {
    margin-right: -1.5rem !important;
  }
  .mb-md-n4,
  .my-md-n4 {
    margin-bottom: -1.5rem !important;
  }
  .ml-md-n4,
  .mx-md-n4 {
    margin-left: -1.5rem !important;
  }
  .m-md-n5 {
    margin: -3rem !important;
  }
  .mt-md-n5,
  .my-md-n5 {
    margin-top: -3rem !important;
  }
  .mr-md-n5,
  .mx-md-n5 {
    margin-right: -3rem !important;
  }
  .mb-md-n5,
  .my-md-n5 {
    margin-bottom: -3rem !important;
  }
  .ml-md-n5,
  .mx-md-n5 {
    margin-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: 992px) {
  .m-lg-0 {
    margin: 0 !important;
  }
  .mt-lg-0,
  .my-lg-0 {
    margin-top: 0 !important;
  }
  .mr-lg-0,
  .mx-lg-0 {
    margin-right: 0 !important;
  }
  .mb-lg-0,
  .my-lg-0 {
    margin-bottom: 0 !important;
  }
  .ml-lg-0,
  .mx-lg-0 {
    margin-left: 0 !important;
  }
  .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-n1 {
    margin: -0.25rem !important;
  }
  .mt-lg-n1,
  .my-lg-n1 {
    margin-top: -0.25rem !important;
  }
  .mr-lg-n1,
  .mx-lg-n1 {
    margin-right: -0.25rem !important;
  }
  .mb-lg-n1,
  .my-lg-n1 {
    margin-bottom: -0.25rem !important;
  }
  .ml-lg-n1,
  .mx-lg-n1 {
    margin-left: -0.25rem !important;
  }
  .m-lg-n2 {
    margin: -0.5rem !important;
  }
  .mt-lg-n2,
  .my-lg-n2 {
    margin-top: -0.5rem !important;
  }
  .mr-lg-n2,
  .mx-lg-n2 {
    margin-right: -0.5rem !important;
  }
  .mb-lg-n2,
  .my-lg-n2 {
    margin-bottom: -0.5rem !important;
  }
  .ml-lg-n2,
  .mx-lg-n2 {
    margin-left: -0.5rem !important;
  }
  .m-lg-n3 {
    margin: -1rem !important;
  }
  .mt-lg-n3,
  .my-lg-n3 {
    margin-top: -1rem !important;
  }
  .mr-lg-n3,
  .mx-lg-n3 {
    margin-right: -1rem !important;
  }
  .mb-lg-n3,
  .my-lg-n3 {
    margin-bottom: -1rem !important;
  }
  .ml-lg-n3,
  .mx-lg-n3 {
    margin-left: -1rem !important;
  }
  .m-lg-n4 {
    margin: -1.5rem !important;
  }
  .mt-lg-n4,
  .my-lg-n4 {
    margin-top: -1.5rem !important;
  }
  .mr-lg-n4,
  .mx-lg-n4 {
    margin-right: -1.5rem !important;
  }
  .mb-lg-n4,
  .my-lg-n4 {
    margin-bottom: -1.5rem !important;
  }
  .ml-lg-n4,
  .mx-lg-n4 {
    margin-left: -1.5rem !important;
  }
  .m-lg-n5 {
    margin: -3rem !important;
  }
  .mt-lg-n5,
  .my-lg-n5 {
    margin-top: -3rem !important;
  }
  .mr-lg-n5,
  .mx-lg-n5 {
    margin-right: -3rem !important;
  }
  .mb-lg-n5,
  .my-lg-n5 {
    margin-bottom: -3rem !important;
  }
  .ml-lg-n5,
  .mx-lg-n5 {
    margin-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: 1200px) {
  .m-xl-0 {
    margin: 0 !important;
  }
  .mt-xl-0,
  .my-xl-0 {
    margin-top: 0 !important;
  }
  .mr-xl-0,
  .mx-xl-0 {
    margin-right: 0 !important;
  }
  .mb-xl-0,
  .my-xl-0 {
    margin-bottom: 0 !important;
  }
  .ml-xl-0,
  .mx-xl-0 {
    margin-left: 0 !important;
  }
  .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-n1 {
    margin: -0.25rem !important;
  }
  .mt-xl-n1,
  .my-xl-n1 {
    margin-top: -0.25rem !important;
  }
  .mr-xl-n1,
  .mx-xl-n1 {
    margin-right: -0.25rem !important;
  }
  .mb-xl-n1,
  .my-xl-n1 {
    margin-bottom: -0.25rem !important;
  }
  .ml-xl-n1,
  .mx-xl-n1 {
    margin-left: -0.25rem !important;
  }
  .m-xl-n2 {
    margin: -0.5rem !important;
  }
  .mt-xl-n2,
  .my-xl-n2 {
    margin-top: -0.5rem !important;
  }
  .mr-xl-n2,
  .mx-xl-n2 {
    margin-right: -0.5rem !important;
  }
  .mb-xl-n2,
  .my-xl-n2 {
    margin-bottom: -0.5rem !important;
  }
  .ml-xl-n2,
  .mx-xl-n2 {
    margin-left: -0.5rem !important;
  }
  .m-xl-n3 {
    margin: -1rem !important;
  }
  .mt-xl-n3,
  .my-xl-n3 {
    margin-top: -1rem !important;
  }
  .mr-xl-n3,
  .mx-xl-n3 {
    margin-right: -1rem !important;
  }
  .mb-xl-n3,
  .my-xl-n3 {
    margin-bottom: -1rem !important;
  }
  .ml-xl-n3,
  .mx-xl-n3 {
    margin-left: -1rem !important;
  }
  .m-xl-n4 {
    margin: -1.5rem !important;
  }
  .mt-xl-n4,
  .my-xl-n4 {
    margin-top: -1.5rem !important;
  }
  .mr-xl-n4,
  .mx-xl-n4 {
    margin-right: -1.5rem !important;
  }
  .mb-xl-n4,
  .my-xl-n4 {
    margin-bottom: -1.5rem !important;
  }
  .ml-xl-n4,
  .mx-xl-n4 {
    margin-left: -1.5rem !important;
  }
  .m-xl-n5 {
    margin: -3rem !important;
  }
  .mt-xl-n5,
  .my-xl-n5 {
    margin-top: -3rem !important;
  }
  .mr-xl-n5,
  .mx-xl-n5 {
    margin-right: -3rem !important;
  }
  .mb-xl-n5,
  .my-xl-n5 {
    margin-bottom: -3rem !important;
  }
  .ml-xl-n5,
  .mx-xl-n5 {
    margin-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;
  }
}

.text-monospace {
  font-family: SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace !important;
}

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

.text-wrap {
  white-space: normal !important;
}

.text-nowrap {
  white-space: nowrap !important;
}

.text-truncate {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

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

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

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

@media (min-width: 576px) {
  .text-sm-left {
    text-align: left !important;
  }
  .text-sm-right {
    text-align: right !important;
  }
  .text-sm-center {
    text-align: center !important;
  }
}

@media (min-width: 768px) {
  .text-md-left {
    text-align: left !important;
  }
  .text-md-right {
    text-align: right !important;
  }
  .text-md-center {
    text-align: center !important;
  }
}

@media (min-width: 992px) {
  .text-lg-left {
    text-align: left !important;
  }
  .text-lg-right {
    text-align: right !important;
  }
  .text-lg-center {
    text-align: center !important;
  }
}

@media (min-width: 1200px) {
  .text-xl-left {
    text-align: left !important;
  }
  .text-xl-right {
    text-align: right !important;
  }
  .text-xl-center {
    text-align: center !important;
  }
}

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

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

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

.font-weight-light {
  font-weight: 300 !important;
}

.font-weight-lighter {
  font-weight: lighter !important;
}

.font-weight-normal {
  font-weight: 400 !important;
}

.font-weight-bold {
  font-weight: 700 !important;
}

.font-weight-bolder {
  font-weight: bolder !important;
}

.font-italic {
  font-style: italic !important;
}

.text-white {
  color: #fff !important;
}

.text-primary {
  color: #007bff !important;
}

a.text-primary:hover, a.text-primary:focus {
  color: #0056b3 !important;
}

.text-secondary {
  color: #6c757d !important;
}

a.text-secondary:hover, a.text-secondary:focus {
  color: #494f54 !important;
}

.text-success {
  color: #28a745 !important;
}

a.text-success:hover, a.text-success:focus {
  color: #19692c !important;
}

.text-info {
  color: #17a2b8 !important;
}

a.text-info:hover, a.text-info:focus {
  color: #0f6674 !important;
}

.text-warning {
  color: #ffc107 !important;
}

a.text-warning:hover, a.text-warning:focus {
  color: #ba8b00 !important;
}

.text-danger {
  color: #dc3545 !important;
}

a.text-danger:hover, a.text-danger:focus {
  color: #a71d2a !important;
}

.text-light {
  color: #f8f9fa !important;
}

a.text-light:hover, a.text-light:focus {
  color: #cbd3da !important;
}

.text-dark {
  color: #343a40 !important;
}

a.text-dark:hover, a.text-dark:focus {
  color: #121416 !important;
}

.text-body {
  color: #212529 !important;
}

.text-muted {
  color: #6c757d !important;
}

.text-black-50 {
  color: rgba(0, 0, 0, 0.5) !important;
}

.text-white-50 {
  color: rgba(255, 255, 255, 0.5) !important;
}

.text-hide {
  font: 0/0 a;
  color: transparent;
  text-shadow: none;
  background-color: transparent;
  border: 0;
}

.text-decoration-none {
  text-decoration: none !important;
}

.text-break {
  word-break: break-word !important;
  overflow-wrap: break-word !important;
}

.text-reset {
  color: inherit !important;
}

.visible {
  visibility: visible !important;
}

.invisible {
  visibility: hidden !important;
}

@media print {
  *,
  *::before,
  *::after {
    text-shadow: none !important;
    box-shadow: none !important;
  }
  a:not(.btn) {
    text-decoration: underline;
  }
  abbr[title]::after {
    content: " (" attr(title) ")";
  }
  pre {
    white-space: pre-wrap !important;
  }
  pre,
  blockquote {
    border: 1px solid #adb5bd;
    page-break-inside: avoid;
  }
  thead {
    display: table-header-group;
  }
  tr,
  img {
    page-break-inside: avoid;
  }
  p,
  h2,
  h3 {
    orphans: 3;
    widows: 3;
  }
  h2,
  h3 {
    page-break-after: avoid;
  }
  @page {
    size: a3;
  }
  body {
    min-width: 992px !important;
  }
  .container {
    min-width: 992px !important;
  }
  .navbar {
    display: none;
  }
  .badge {
    border: 1px solid #000;
  }
  .table {
    border-collapse: collapse !important;
  }
  .table td,
  .table th {
    background-color: #fff !important;
  }
  .table-bordered th,
  .table-bordered td {
    border: 1px solid #dee2e6 !important;
  }
  .table-dark {
    color: inherit;
  }
  .table-dark th,
  .table-dark td,
  .table-dark thead th,
  .table-dark tbody + tbody {
    border-color: #dee2e6;
  }
  .table .thead-dark th {
    color: inherit;
    border-color: #dee2e6;
  }
}

/* ------------------------------------------------------------------------------
 *
 *  # Bootstrap v4.1.1 (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)
 *
 * ---------------------------------------------------------------------------- */
/* ------------------------------------------------------------------------------
 *
 *  # Global configuration
 *
 *  Here you can change main theme, enable or disable certain components and
 *  optional styles. This allows you to include only components that you need.
 *
 *  'true'  - enables component and includes it to main CSS file.
 *  'false' - disables component and excludes it from main CSS file.
 *
 *  Layout helper: @if $layout == 'base' {...}
 *  Theme helper: @if $theme == 'material' {...}
 *  Component helper: @if $enable-* {...}
 *
 * ---------------------------------------------------------------------------- */
/* ------------------------------------------------------------------------------
 *
 *  # Custom Limitless functions
 *
 *  Utility mixins and functions for evalutating source code across our variables, maps, and mixins.
 *
 * ---------------------------------------------------------------------------- */
/* ------------------------------------------------------------------------------
 *
 *  # Custom template mixins
 *
 *  All custom mixins are prefixed with "ll-" to avoid conflicts
 *
 * ---------------------------------------------------------------------------- */
/* ------------------------------------------------------------------------------
 *
 *  # Main colors
 *
 *  List of the template main color palettes
 *
 * ---------------------------------------------------------------------------- */
/* ------------------------------------------------------------------------------
 *
 *  # Default Bootstrap variable overrides
 *
 *  Variables should follow the `$component-state-property-size` formula for
 *  consistent naming. Ex: $nav-link-disabled-color and $modal-content-box-shadow-xs.
 *  Also includes custom variables, all marked with "!default" flag.
 *
 * ---------------------------------------------------------------------------- */
/* ------------------------------------------------------------------------------
 *
 *  # Additional variables
 *
 *  Mainly 3rd party libraries and additional variables for default
 *  Bootstrap components.
 *
 * ---------------------------------------------------------------------------- */
/* ------------------------------------------------------------------------------
 *
 *  # Mixins
 *
 *  Import Bootstrap mixins with overrides
 *
 * ---------------------------------------------------------------------------- */
/* ------------------------------------------------------------------------------
 *
 *  # Badge mixin
 *
 *  Override and extend default badge mixin.
 *
 * ---------------------------------------------------------------------------- */
/* ------------------------------------------------------------------------------
 *
 *  # Buttons mixin
 *
 *  Override and extend default buttons mixin.
 *
 * ---------------------------------------------------------------------------- */
/* ------------------------------------------------------------------------------
 *
 *  # Caret mixin
 *
 *  Override and extend default cared mixin.
 *
 * ---------------------------------------------------------------------------- */
/* ------------------------------------------------------------------------------
 *
 *  # Forms mixin
 *
 *  Override and extend default forms mixin.
 *
 * ---------------------------------------------------------------------------- */
/* ------------------------------------------------------------------------------
 *
 *  # Background mixin
 *
 *  Override and extend default background mixin.
 *
 * ---------------------------------------------------------------------------- */
/* ------------------------------------------------------------------------------
 *
 *  # Reboot
 *
 *  Normalization of HTML elements - overrides of default Bootstrap styles
 *
 * ---------------------------------------------------------------------------- */
body {
  position: relative;
}

dt {
  margin-bottom: 0.3125rem;
}

dd {
  margin-bottom: 1.25rem;
}

dd:last-child {
  margin-bottom: 0;
}

dl:last-child {
  margin-bottom: 0;
}

pre {
  -moz-tab-size: 4;
    -o-tab-size: 4;
       tab-size: 4;
  border: 1px solid #ddd;
  padding: 1.25rem 1.25rem;
  margin-bottom: 0;
  -webkit-hyphens: none;
      -ms-hyphens: none;
          hyphens: none;
}

svg {
  display: block;
}

.svg-inline svg {
  display: inline-block;
}

.svg-center svg {
  margin: auto;
}

input[type="file"] {
  display: block;
}

/* ------------------------------------------------------------------------------
 *
 *  # Text styling
 *
 *  Override and extend default Bootstrap styles.
 *
 * ---------------------------------------------------------------------------- */
h1, h2, h3, h4, h5, h6,
.h1, .h2, .h3, .h4, .h5, .h6 {
  letter-spacing: -0.015em;
}

.list > li,
.list > li .list > li {
  margin-top: 0.3125rem;
}

.list > li:first-child {
  margin-top: 0;
}

.list-extended > li,
.list-extended > li .list > li {
  margin-top: 0.625rem;
}

ul.list-square {
  list-style-type: square;
}

ul.list-circle {
  list-style-type: circle;
}

.list-inline-item {
  position: relative;
}

.list-inline-condensed .list-inline-item:not(:last-child) {
  margin-right: 0.625rem;
}

.list-inline-dotted .list-inline-item:not(:last-child) {
  margin-right: 0.625rem;
}

.list-inline-dotted .list-inline-item:not(:last-child):after {
  content: '\f052';
  font-family: "icomoon";
  font-size: 0.5rem;
  width: 0.4rem;
  text-align: center;
  display: inline-block;
  margin-left: 0.825rem;
  opacity: 0.25;
}

.list-inline-dotted.list-inline-condensed .list-inline-item:not(:last-child) {
  margin-right: 0.41667rem;
}

.list-inline-dotted.list-inline-condensed .list-inline-item:not(:last-child):after {
  margin-left: 0.54167rem;
}

.list-icons {
  display: inline-flex;
  align-items: center;
}

.list-icons > *:not(:last-child) {
  margin-right: 0.375rem;
}

.list-icons-extended > *:not(:last-child) {
  margin-right: 0.75rem;
}

.list-icons-item {
  display: inline-block;
  line-height: 1;
}

a.list-icons-item {
  transition: all ease-in-out 0.15s;
}

@media (prefers-reduced-motion: reduce) {
  a.list-icons-item {
    transition: none;
  }
}

a.list-icons-item:not([class*=text-]) {
  color: inherit;
}

a.list-icons-item:hover, a.list-icons-item:focus,
.show > a.list-icons-item {
  outline: 0;
  opacity: 0.75;
}

.font-weight-black {
  font-weight: 900;
}

.font-weight-semibold {
  font-weight: 500;
}

.font-weight-thin {
  font-weight: 100;
}

.text-white {
  color: #fff;
}

a.text-white:not(.btn) {
  transition: color ease-in-out 0.15s;
}

@media (prefers-reduced-motion: reduce) {
  a.text-white:not(.btn) {
    transition: none;
  }
}

a.text-white:hover, a.text-white:focus {
  color: rgba(255, 255, 255, 0.75);
}

.text-default {
  color: #333;
}

a.text-default:not(.btn) {
  transition: color ease-in-out 0.15s;
}

@media (prefers-reduced-motion: reduce) {
  a.text-default:not(.btn) {
    transition: none;
  }
}

a.text-default:hover, a.text-default:focus {
  color: rgba(51, 51, 51, 0.75);
}

.blockquote-bordered {
  border-left: 5px solid #eee;
}

.blockquote-bordered-reverse {
  border-left: 0;
  border-right: 5px solid #eee;
}

.blockquote-footer {
  font-size: 0.8125rem;
}

.blockquote-footer::before {
  content: "\2014 \00A0 \00A0 \00A0";
}

.list-feed-item {
  position: relative;
  padding-bottom: 1.25rem;
  padding-left: 1.75rem;
}

.list-feed-item:before {
  content: '';
  position: absolute;
  left: 0;
  top: 0.31252rem;
  background-color: #fff;
  display: inline-block;
  border: 2px solid #607D8B;
  z-index: 3;
  width: 0.5rem;
  height: 0.5rem;
  border-radius: 50%;
}

.list-feed-item:after {
  content: '';
  position: absolute;
  top: 0.31252rem;
  left: 0.1875rem;
  bottom: -0.43752rem;
  width: 0;
  border-left: 1px solid #607D8B;
  border-right: 1px solid #607D8B;
  z-index: 2;
}

.list-feed-item:first-child:after {
  top: 0.5rem;
}

.list-feed-item:last-child {
  padding-bottom: 0;
}

.list-feed-item:last-child:after {
  content: none;
}

.list-feed-item[class*=border-]:before, .list-feed-item[class*=border-]:after {
  border-color: inherit;
}

.list-feed-solid .list-feed-item:before {
  content: '';
  border-width: 0.25rem;
  width: 0;
  height: 0;
}

.list-feed-square .list-feed-item:before {
  content: '';
  border-radius: 0;
}

.list-feed-rhombus .list-feed-item:before {
  content: '';
  transform: rotate(45deg);
  border-radius: 0;
}

.list-feed-time .list-feed-item {
  margin-left: 3.25rem;
}

.list-feed-time .list-feed-item .feed-time {
  position: absolute;
  left: -3.25rem;
  top: 0;
}

.content-divider {
  text-align: center;
  position: relative;
  z-index: 1;
}

.content-divider > span {
  background-color: #f5f5f5;
  display: inline-block;
}

.card .content-divider > span,
.tab-content-bordered .content-divider > span {
  background-color: #fff;
}

.modal .content-divider > span {
  background-color: #fff;
}

.content-divider > span:before {
  content: "";
  position: absolute;
  top: 50%;
  left: 0;
  height: 1px;
  background-color: #ddd;
  width: 100%;
  z-index: -1;
}

.letter-icon {
  width: 1rem;
  height: 1.25003rem;
  display: block;
}

.btn-lg .letter-icon, .btn-group-lg > .btn .letter-icon {
  height: 1.25003rem;
}

.btn-sm .letter-icon, .btn-group-sm > .btn .letter-icon {
  height: 1.25002rem;
}

/* ------------------------------------------------------------------------------
 *
 *  # Code blocks
 *
 *  Overrides of default code block styles
 *
 * ---------------------------------------------------------------------------- */
code {
  padding: 0.2rem 0.4rem;
  background-color: #fafafa;
}

pre {
  white-space: pre-wrap;
  /*rtl:ignore*/
  text-align: left;
  border-radius: 0.1875rem;
}

/* ------------------------------------------------------------------------------
 *
 *  # Table styling
 *
 *  Override and extend default Bootstrap styles.
 *
 * ---------------------------------------------------------------------------- */
.table {
  margin-bottom: 0;
}

.table th,
.table td {
  vertical-align: middle;
}

.table th {
  font-weight: 500;
}

.table thead th {
  vertical-align: middle;
  border-bottom: 1px solid #b7b7b7;
}

.table tfoot th {
  border-top-color: #b7b7b7;
}

.table caption + thead tr:first-child th,
.table caption + thead tr:first-child td,
.table colgroup + thead tr:first-child th,
.table colgroup + thead tr:first-child td,
.table thead:first-child tr:first-child th,
.table thead:first-child tr:first-child td {
  border-top-width: 0;
}

.table tr,
.table th,
.table td {
  transition: background-color ease-in-out 0.15s;
}

@media (prefers-reduced-motion: reduce) {
  .table tr,
  .table th,
  .table td {
    transition: none;
  }
}

.table-primary,
.table-primary > th,
.table-primary > td {
  background-color: #e4f2fe;
}

.table-hover .table-primary:hover {
  background-color: #cbe6fd;
}

.table-hover .table-primary:hover > td,
.table-hover .table-primary:hover > th {
  background-color: #cbe6fd;
}

.table-secondary,
.table-secondary > th,
.table-secondary > td {
  background-color: #efefef;
}

.table-hover .table-secondary:hover {
  background-color: #e2e2e2;
}

.table-hover .table-secondary:hover > td,
.table-hover .table-secondary:hover > th {
  background-color: #e2e2e2;
}

.table-success,
.table-success > th,
.table-success > td {
  background-color: #eaf5ea;
}

.table-hover .table-success:hover {
  background-color: #d9edd9;
}

.table-hover .table-success:hover > td,
.table-hover .table-success:hover > th {
  background-color: #d9edd9;
}

.table-info,
.table-info > th,
.table-info > td {
  background-color: #e0f7fa;
}

.table-hover .table-info:hover {
  background-color: #caf1f6;
}

.table-hover .table-info:hover > td,
.table-hover .table-info:hover > th {
  background-color: #caf1f6;
}

.table-warning,
.table-warning > th,
.table-warning > td {
  background-color: #ffeee8;
}

.table-hover .table-warning:hover {
  background-color: #ffdbcf;
}

.table-hover .table-warning:hover > td,
.table-hover .table-warning:hover > th {
  background-color: #ffdbcf;
}

.table-danger,
.table-danger > th,
.table-danger > td {
  background-color: #fee8e7;
}

.table-hover .table-danger:hover {
  background-color: #fdd1cf;
}

.table-hover .table-danger:hover > td,
.table-hover .table-danger:hover > th {
  background-color: #fdd1cf;
}

.table-light,
.table-light > th,
.table-light > td {
  background-color: #fefefe;
}

.table-hover .table-light:hover {
  background-color: #f1f1f1;
}

.table-hover .table-light:hover > td,
.table-hover .table-light:hover > th {
  background-color: #f1f1f1;
}

.table-dark,
.table-dark > th,
.table-dark > td {
  background-color: #e6e8e9;
}

.table-hover .table-dark:hover {
  background-color: #d8dcdd;
}

.table-hover .table-dark:hover > td,
.table-hover .table-dark:hover > th {
  background-color: #d8dcdd;
}

.table-dark thead th,
.table-dark thead td {
  border-color: rgba(255, 255, 255, 0.5);
}

@media (max-width: 575.98px) {
  .table-responsive-sm > .table-bordered {
    border: 1px solid #ddd;
  }
}

@media (max-width: 767.98px) {
  .table-responsive-md > .table-bordered {
    border: 1px solid #ddd;
  }
}

@media (max-width: 991.98px) {
  .table-responsive-lg > .table-bordered {
    border: 1px solid #ddd;
  }
}

@media (max-width: 1199.98px) {
  .table-responsive-xl > .table-bordered {
    border: 1px solid #ddd;
  }
}

.table-responsive > .table-bordered {
  border: 1px solid #ddd;
}

.table-scrollable {
  max-height: 22.5rem;
  overflow: auto;
}

.table-columned tbody td,
.table-columned tbody th,
.table-columned tfoot td,
.table-columned tfoot th {
  border: 0;
  border-left: 1px solid #ddd;
}

.table-columned tbody td:first-child,
.table-columned tbody th:first-child,
.table-columned tfoot td:first-child,
.table-columned tfoot th:first-child {
  border-left: 0;
}

.table-columned thead th,
.table-columned thead td {
  border-left: 1px solid #ddd;
}

.table-columned thead th:first-child,
.table-columned thead td:first-child {
  border-left: 0;
}

.table-borderless td,
.table-borderless th {
  border: 0;
}

.table-xl th,
.table-xl td {
  padding: 1.25rem 1.25rem;
}

.table-lg th,
.table-lg td {
  padding: 1rem 1.25rem;
}

.table-xs th,
.table-xs td {
  padding: 0.5rem 1.25rem;
}

thead .table-border-solid th,
thead .table-border-solid td {
  border-bottom-width: 2px;
}

tbody .table-border-solid td,
tbody .table-border-solid th,
tfoot .table-border-solid td,
tfoot .table-border-solid th {
  border-top-width: 2px;
}

thead .table-border-double th,
thead .table-border-double td {
  border-bottom-width: 3px;
  border-bottom-style: double;
}

.table-bordered thead .table-border-double:first-child th,
.table-bordered thead .table-border-double:first-child td {
  border-bottom-width: 3px;
  border-bottom-style: double;
}

tbody .table-border-double td,
tbody .table-border-double th,
tfoot .table-border-double td,
tfoot .table-border-double th {
  border-top-width: 3px;
  border-top-style: double;
}

.table-border-dashed td,
.table-border-dashed th {
  border-top-style: dashed;
}

.table thead tr[class*=border-bottom-] th,
.table thead tr[class*=border-bottom-] td {
  border-bottom-color: inherit;
}

.table tbody tr[class*=border-top-] th,
.table tbody tr[class*=border-top-] td,
.table tfoot tr[class*=border-top-] th,
.table tfoot tr[class*=border-top-] td {
  border-top-color: inherit;
}

.card > .table:first-child caption + thead tr:first-child th,
.card > .table:first-child caption + thead tr:first-child td,
.card > .table:first-child colgroup + thead tr:first-child th,
.card > .table:first-child colgroup + thead tr:first-child td,
.card > .table:first-child thead:first-child tr:first-child th,
.card > .table:first-child thead:first-child tr:first-child td,
.card > [class*=table-responsive]:first-child > .table:first-child caption + thead tr:first-child th,
.card > [class*=table-responsive]:first-child > .table:first-child caption + thead tr:first-child td,
.card > [class*=table-responsive]:first-child > .table:first-child colgroup + thead tr:first-child th,
.card > [class*=table-responsive]:first-child > .table:first-child colgroup + thead tr:first-child td,
.card > [class*=table-responsive]:first-child > .table:first-child thead:first-child tr:first-child th,
.card > [class*=table-responsive]:first-child > .table:first-child thead:first-child tr:first-child td {
  border-top-width: 0;
}

.card.card-table {
  border-width: 1px;
  border-color: #ddd;
}

.card > .table caption,
.card > [class*=table-responsive] > .table caption {
  padding-left: 1.25rem;
  padding-right: 1.25rem;
}

.card > .table:first-child,
.card > [class*=table-responsive]:first-child > .table:first-child {
  border-top-left-radius: 0.125rem;
  border-top-right-radius: 0.125rem;
}

.card > .table:first-child thead:first-child tr:first-child,
.card > .table:first-child tbody:first-child tr:first-child,
.card > [class*=table-responsive]:first-child > .table:first-child thead:first-child tr:first-child,
.card > [class*=table-responsive]:first-child > .table:first-child tbody:first-child tr:first-child {
  border-top-left-radius: 0.125rem;
  border-top-right-radius: 0.125rem;
}

.card > .table:first-child thead:first-child tr:first-child td:first-child,
.card > .table:first-child thead:first-child tr:first-child th:first-child,
.card > .table:first-child tbody:first-child tr:first-child td:first-child,
.card > .table:first-child tbody:first-child tr:first-child th:first-child,
.card > [class*=table-responsive]:first-child > .table:first-child thead:first-child tr:first-child td:first-child,
.card > [class*=table-responsive]:first-child > .table:first-child thead:first-child tr:first-child th:first-child,
.card > [class*=table-responsive]:first-child > .table:first-child tbody:first-child tr:first-child td:first-child,
.card > [class*=table-responsive]:first-child > .table:first-child tbody:first-child tr:first-child th:first-child {
  border-top-left-radius: 0.125rem;
}

.card > .table:first-child thead:first-child tr:first-child td:last-child,
.card > .table:first-child thead:first-child tr:first-child th:last-child,
.card > .table:first-child tbody:first-child tr:first-child td:last-child,
.card > .table:first-child tbody:first-child tr:first-child th:last-child,
.card > [class*=table-responsive]:first-child > .table:first-child thead:first-child tr:first-child td:last-child,
.card > [class*=table-responsive]:first-child > .table:first-child thead:first-child tr:first-child th:last-child,
.card > [class*=table-responsive]:first-child > .table:first-child tbody:first-child tr:first-child td:last-child,
.card > [class*=table-responsive]:first-child > .table:first-child tbody:first-child tr:first-child th:last-child {
  border-top-right-radius: 0.125rem;
}

.card > .table:last-child,
.card > [class*=table-responsive]:last-child > .table:last-child {
  border-bottom-right-radius: 0.125rem;
  border-bottom-left-radius: 0.125rem;
}

.card > .table:last-child tbody:last-child tr:last-child,
.card > .table:last-child tfoot:last-child tr:last-child,
.card > [class*=table-responsive]:last-child > .table:last-child tbody:last-child tr:last-child,
.card > [class*=table-responsive]:last-child > .table:last-child tfoot:last-child tr:last-child {
  border-bottom-left-radius: 0.125rem;
  border-bottom-right-radius: 0.125rem;
}

.card > .table:last-child tbody:last-child tr:last-child td:first-child,
.card > .table:last-child tbody:last-child tr:last-child th:first-child,
.card > .table:last-child tfoot:last-child tr:last-child td:first-child,
.card > .table:last-child tfoot:last-child tr:last-child th:first-child,
.card > [class*=table-responsive]:last-child > .table:last-child tbody:last-child tr:last-child td:first-child,
.card > [class*=table-responsive]:last-child > .table:last-child tbody:last-child tr:last-child th:first-child,
.card > [class*=table-responsive]:last-child > .table:last-child tfoot:last-child tr:last-child td:first-child,
.card > [class*=table-responsive]:last-child > .table:last-child tfoot:last-child tr:last-child th:first-child {
  border-bottom-left-radius: 0.125rem;
}

.card > .table:last-child tbody:last-child tr:last-child td:last-child,
.card > .table:last-child tbody:last-child tr:last-child th:last-child,
.card > .table:last-child tfoot:last-child tr:last-child td:last-child,
.card > .table:last-child tfoot:last-child tr:last-child th:last-child,
.card > [class*=table-responsive]:last-child > .table:last-child tbody:last-child tr:last-child td:last-child,
.card > [class*=table-responsive]:last-child > .table:last-child tbody:last-child tr:last-child th:last-child,
.card > [class*=table-responsive]:last-child > .table:last-child tfoot:last-child tr:last-child td:last-child,
.card > [class*=table-responsive]:last-child > .table:last-child tfoot:last-child tr:last-child th:last-child {
  border-bottom-right-radius: 0.125rem;
}

.card > .table-bordered,
.card > [class*=table-responsive] > .table-bordered {
  border: 0;
}

.card > .table-bordered thead th:first-child,
.card > .table-bordered thead td:first-child,
.card > .table-bordered tbody th:first-child,
.card > .table-bordered tbody td:first-child,
.card > .table-bordered tfoot th:first-child,
.card > .table-bordered tfoot td:first-child,
.card > [class*=table-responsive] > .table-bordered thead th:first-child,
.card > [class*=table-responsive] > .table-bordered thead td:first-child,
.card > [class*=table-responsive] > .table-bordered tbody th:first-child,
.card > [class*=table-responsive] > .table-bordered tbody td:first-child,
.card > [class*=table-responsive] > .table-bordered tfoot th:first-child,
.card > [class*=table-responsive] > .table-bordered tfoot td:first-child {
  border-left: 0;
}

.card > .table-bordered thead th:last-child,
.card > .table-bordered thead td:last-child,
.card > .table-bordered tbody th:last-child,
.card > .table-bordered tbody td:last-child,
.card > .table-bordered tfoot th:last-child,
.card > .table-bordered tfoot td:last-child,
.card > [class*=table-responsive] > .table-bordered thead th:last-child,
.card > [class*=table-responsive] > .table-bordered thead td:last-child,
.card > [class*=table-responsive] > .table-bordered tbody th:last-child,
.card > [class*=table-responsive] > .table-bordered tbody td:last-child,
.card > [class*=table-responsive] > .table-bordered tfoot th:last-child,
.card > [class*=table-responsive] > .table-bordered tfoot td:last-child {
  border-right: 0;
}

.card-header:not([class*=bg-]) + .table,
.card-header:not([class*=bg-]) + div[class*=table-responsive],
.card-body + .table,
.card-body + div[class*=table-responsive],
.table + .card-body,
div[class*=table-responsive] + .card-body,
.navbar-light + div[class*=table-responsive],
.navbar-light + .table {
  border-top: 1px solid #ddd;
}

.table tbody:first-child tr:first-child th,
div[class*=table-responsive] > .table tbody:first-child tr:first-child th,
.table tbody:first-child tr:first-child td,
div[class*=table-responsive] > .table tbody:first-child tr:first-child td {
  border-top: 0;
}

.card-footer + [class*=table-responsive],
.card-footer + .table {
  border-top: 1px solid #ddd;
}

/* ------------------------------------------------------------------------------
 *
 *  # Form styles
 *
 *  Basic form styles and overrides of default Bootstrap styles
 *
 * ---------------------------------------------------------------------------- */
legend {
  padding-top: 0.625rem;
  padding-bottom: 0.625rem;
  margin-bottom: 1.25rem;
  border-bottom: 1px solid #ddd;
  font-size: 0.8125rem;
}

fieldset:first-child legend:first-child {
  padding-top: 0;
}

select[multiple],
select[size] {
  height: 200px;
  padding: 0.875rem;
}

select[multiple] option,
select[size] option {
  padding: 0.5rem 1rem;
  border-radius: 0.1875rem;
}

select[multiple] option + option,
select[size] option + option {
  margin-top: 1px;
}

.form-control {
  background-clip: border-box;
}

.form-control:disabled {
  color: #999;
}

.form-control[class*=bg-]:not(.bg-white):not(.bg-light):not(.bg-transparent):disabled, .form-control[class*=bg-]:not(.bg-white):not(.bg-light):not(.bg-transparent)[readonly] {
  background-color: #8c8c8c;
  color: rgba(255, 255, 255, 0.5);
  border-color: #8c8c8c;
}

.form-control[class*=bg-]:not(.bg-white):not(.bg-light):not(.bg-transparent)::-webkit-input-placeholder {
  color: #fff;
}

.form-control[class*=bg-]:not(.bg-white):not(.bg-light):not(.bg-transparent)::-moz-placeholder {
  color: #fff;
}

.form-control[class*=bg-]:not(.bg-white):not(.bg-light):not(.bg-transparent):-ms-input-placeholder {
  color: #fff;
}

.form-control[class*=bg-]:not(.bg-white):not(.bg-light):not(.bg-transparent)::-ms-input-placeholder {
  color: #fff;
}

.form-control[class*=bg-]:not(.bg-white):not(.bg-light):not(.bg-transparent)::placeholder {
  color: #fff;
}

.form-group .form-group:last-child {
  margin-bottom: 0;
}

@media (max-width: 767.98px) {
  .form-group [class*="col-md-"]:not([class*=col-form-label]) + [class*="col-md-"] {
    margin-top: 1.25rem;
  }
}

@media (max-width: 991.98px) {
  .form-group [class*="col-lg-"]:not([class*=col-form-label]) + [class*="col-lg-"] {
    margin-top: 1.25rem;
  }
}

@media (max-width: 1199.98px) {
  .form-group [class*="col-xl-"]:not([class*=col-form-label]) + [class*="col-xl-"] {
    margin-top: 1.25rem;
  }
}

@media (max-width: 767.98px) {
  [class*=col-form-label][class*="col-md-"] {
    padding-top: 0;
  }
}

@media (max-width: 991.98px) {
  [class*=col-form-label][class*="col-lg-"] {
    padding-top: 0;
  }
}

@media (max-width: 1199.98px) {
  [class*=col-form-label][class*="col-xl-"] {
    padding-top: 0;
  }
}

.form-check:not(.form-check-inline) {
  margin-bottom: 0.5rem;
}

.form-check:not(.form-check-inline):last-child {
  margin-bottom: 0;
}

.form-group.row .form-check:not(.dropdown-item) {
  margin-top: 0.5rem;
}

.form-check.disabled {
  color: #999;
}

.form-check.disabled .form-check-label {
  cursor: default;
}

.form-check-input:disabled ~ .form-check-label {
  cursor: default;
}

.form-check-label {
  cursor: pointer;
}

.form-check-inline .form-check-label {
  display: inline-flex;
  align-items: flex-start;
}

.form-check-inline .form-check-input {
  margin-top: 0.3rem;
}

.form-check-inline:last-child {
  margin-right: 0;
}

.form-check-inline input {
  position: static;
}

.form-check-right {
  padding-left: 0;
  padding-right: 1.875rem;
}

.form-check-right .form-check-input,
.form-check-right input {
  left: auto;
  right: 0;
}

.form-check-right.form-check-inline {
  padding: 0;
}

.form-check-right.form-check-inline .form-check-input {
  margin-right: 0;
  margin-left: 0.625rem;
}

.form-group-feedback {
  position: relative;
}

.form-group-feedback-left .form-control-feedback {
  left: 0;
}

.form-group-feedback-left .form-control {
  padding-left: 2.75rem;
}

.form-group-feedback-left .form-control-lg {
  padding-left: 3rem;
}

.form-group-feedback-left .form-control-sm {
  padding-left: 2.5rem;
}

.form-group-feedback-right .form-control-feedback {
  right: 0;
}

.form-group-feedback-right .form-control {
  padding-right: 2.75rem;
}

.form-group-feedback-right .form-control-lg {
  padding-right: 3rem;
}

.form-group-feedback-right .form-control-sm {
  padding-right: 2.5rem;
}

.form-control-feedback {
  position: absolute;
  top: 0;
  color: #333;
  padding-left: 0.875rem;
  padding-right: 0.875rem;
  line-height: 2.25003rem;
  min-width: 1rem;
}

.form-control-feedback-lg {
  padding-left: 1rem;
  padding-right: 1rem;
  line-height: 2.50002rem;
}

.form-control-feedback-sm {
  padding-left: 0.75rem;
  padding-right: 0.75rem;
  line-height: 2.00002rem;
}

input[class*=bg-]:not(.bg-light):not(.bg-white):not(.bg-transparent) + .form-control-feedback {
  color: #fff;
}

/* ------------------------------------------------------------------------------
 *
 *  # Button component
 *
 *  Overrides for button bootstrap component
 *
 * ---------------------------------------------------------------------------- */
.btn {
  position: relative;
}

.btn:not(.bg-transparent):not([class*=btn-outline]):not(.btn-light):not(.btn-link):not([class*=alpha-]):not(.fab-menu-btn):hover, .btn:not(.bg-transparent):not([class*=btn-outline]):not(.btn-light):not(.btn-link):not([class*=alpha-]):not(.fab-menu-btn):focus, .btn:not(.bg-transparent):not([class*=btn-outline]):not(.btn-light):not(.btn-link):not([class*=alpha-]):not(.fab-menu-btn).focus, .btn:not(.bg-transparent):not([class*=btn-outline]):not(.btn-light):not(.btn-link):not([class*=alpha-]):not(.fab-menu-btn):active, .btn:not(.bg-transparent):not([class*=btn-outline]):not(.btn-light):not(.btn-link):not([class*=alpha-]):not(.fab-menu-btn).active,
.show > .btn:not(.bg-transparent):not([class*=btn-outline]):not(.btn-light):not(.btn-link):not([class*=alpha-]):not(.fab-menu-btn).dropdown-toggle {
  box-shadow: 0 0 0 62.5rem rgba(0, 0, 0, 0.075) inset;
}

.btn:not(.bg-transparent):not([class*=btn-outline]):not(.btn-light):not(.btn-link):not([class*=alpha-]):not(.fab-menu-btn).disabled, .btn:not(.bg-transparent):not([class*=btn-outline]):not(.btn-light):not(.btn-link):not([class*=alpha-]):not(.fab-menu-btn):disabled {
  box-shadow: none;
}

.btn.disabled, .btn:disabled {
  cursor: default;
}

.btn-light {
  color: #333;
  background-color: #fafafa;
  border-color: #ddd;
}

.btn-light:hover, .btn-light:focus, .btn-light.focus, .btn-light:not([disabled]):not(.disabled):active, .btn-light:not([disabled]):not(.disabled).active,
.show > .btn-light.dropdown-toggle {
  color: #333;
  background-color: #f5f5f5;
  border-color: #ddd;
}

.btn-light.disabled, .btn-light:disabled {
  background-color: #fafafa;
  border-color: #ddd;
}

.btn-outline:not(:hover):not(:active):not(.active):not([aria-expanded=true]), .btn-outline.disabled, .btn-outline:disabled {
  background-color: transparent !important;
}

.btn-outline:not(.disabled):not(:disabled):not([class*=alpha-]):hover, .btn-outline:not(.disabled):not(:disabled):not([class*=alpha-]):not([disabled]):not(.disabled):active, .btn-outline:not(.disabled):not(:disabled):not([class*=alpha-]):not([disabled]):not(.disabled).active,
.show > .btn-outline:not(.disabled):not(:disabled):not([class*=alpha-]).dropdown-toggle {
  color: #fff !important;
}

.btn-outline.bg-white:not(.disabled):not(:disabled):hover, .btn-outline.bg-white:not(.disabled):not(:disabled):not([disabled]):not(.disabled):active, .btn-outline.bg-white:not(.disabled):not(:disabled):not([disabled]):not(.disabled).active,
.show > .btn-outline.bg-white:not(.disabled):not(:disabled).dropdown-toggle {
  color: #333 !important;
}

.show > .btn-link.dropdown-toggle {
  color: #0a6ebd;
}

.btn-icon {
  padding-left: 0.56252rem;
  padding-right: 0.56252rem;
}

.btn-icon input[type=checkbox],
.btn-icon input[type=radio] {
  display: block;
}

.btn-icon.btn-sm, .btn-group-sm > .btn-icon.btn {
  padding-left: 0.43752rem;
  padding-right: 0.43752rem;
}

.btn-icon.btn-lg, .btn-group-lg > .btn-icon.btn {
  padding-left: 0.68752rem;
  padding-right: 0.68752rem;
}

.btn-float {
  padding: 1rem;
  border-radius: 0.1875rem;
}

.btn-float.btn-link {
  padding: 0.8rem;
}

.btn-float i {
  display: block;
  top: 0;
}

.btn-float > span {
  display: block;
  padding-top: 0.625rem;
  margin-bottom: -0.40625rem;
  overflow: hidden;
  text-overflow: ellipsis;
}

.btn.border-2 {
  padding-top: 0.375rem;
  padding-bottom: 0.375rem;
}

.btn.border-2.btn-lg, .btn-group-lg > .btn.border-2 {
  padding-top: 0.5rem;
  padding-bottom: 0.5rem;
}

.btn.border-2.btn-sm, .btn-group-sm > .btn.border-2 {
  padding-top: 0.25rem;
  padding-bottom: 0.25rem;
}

.btn.border-2.btn-icon {
  padding-left: 0.50002rem;
  padding-right: 0.50002rem;
}

.btn.border-2.btn-icon.btn-lg, .btn-group-lg > .btn.border-2.btn-icon {
  padding-left: 0.62502rem;
  padding-right: 0.62502rem;
}

.btn.border-2.btn-icon.btn-sm, .btn-group-sm > .btn.border-2.btn-icon {
  padding-left: 0.37502rem;
  padding-right: 0.37502rem;
}

.btn.border-2.btn-float {
  padding: 0.9375rem;
}

.btn-labeled > b {
  position: absolute;
  top: -1px;
  background-color: rgba(0, 0, 0, 0.15);
  display: block;
  line-height: 1;
  padding: 0.62503rem;
}

.btn-labeled > b > i {
  top: 0;
}

.btn-labeled.rounded-round > b {
  border-radius: 100px;
}

.btn-labeled.btn-lg > b, .btn-group-lg > .btn-labeled.btn > b {
  padding: 0.75003rem;
}

.btn-labeled.btn-sm > b, .btn-group-sm > .btn-labeled.btn > b {
  padding: 0.50003rem;
}

.btn-labeled-left {
  padding-left: 3.12506rem;
}

.btn-labeled-left > b {
  left: -1px;
  border-top-left-radius: 0.1875rem;
  border-bottom-left-radius: 0.1875rem;
}

.btn-labeled-left.btn-lg, .btn-group-lg > .btn-labeled-left.btn {
  padding-left: 3.50005rem;
}

.btn-labeled-left.btn-lg > b, .btn-group-lg > .btn-labeled-left.btn > b {
  border-top-left-radius: 0.25rem;
  border-bottom-left-radius: 0.25rem;
}

.btn-labeled-left.btn-sm, .btn-group-sm > .btn-labeled-left.btn {
  padding-left: 2.75006rem;
}

.btn-labeled-left.btn-sm > b, .btn-group-sm > .btn-labeled-left.btn > b {
  border-top-left-radius: 0.125rem;
  border-bottom-left-radius: 0.125rem;
}

.btn-labeled-right {
  padding-right: 3.12506rem;
}

.btn-labeled-right > b {
  right: -1px;
  border-top-right-radius: 0.1875rem;
  border-bottom-right-radius: 0.1875rem;
}

/* ------------------------------------------------------------------------------
 *
 *  # Dropdown menu component
 *
 *  Overrides for dropdown menu bootstrap component
 *
 * ---------------------------------------------------------------------------- */
.dropdown-item {
  display: flex;
  align-items: center;
  position: relative;
  outline: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  cursor: pointer;
  margin-bottom: 0;
  transition: background-color ease-in-out 0.15s, color ease-in-out 0.15s;
}

@media (prefers-reduced-motion: reduce) {
  .dropdown-item {
    transition: none;
  }
}

.dropdown-item + .dropdown-item,
.dropdown-submenu + .dropdown-item,
.dropdown-item + .dropdown-submenu {
  margin-top: 1px;
}

.dropdown-item:active {
  color: #333;
  background-color: #f5f5f5;
}

.dropdown-item.active {
  color: #fff;
  background-color: #2196F3;
}

.dropdown-item.active .badge:not(.badge-mark) {
  background-color: #fff !important;
  color: #333 !important;
}

.dropdown-item.active .badge-mark[class*=bg-] {
  background-color: #fff !important;
  border-color: #fff !important;
}

.dropdown-item.active .badge-mark[class*=border-] {
  border-color: #fff !important;
}

.dropdown-item.disabled, .dropdown-item:disabled {
  color: #999;
  background-color: transparent;
  cursor: default;
}

.dropdown-item.disabled > .badge,
.dropdown-item.disabled > img, .dropdown-item:disabled > .badge,
.dropdown-item:disabled > img {
  opacity: 0.8;
}

.dropdown-item-open {
  background-color: #f5f5f5;
  color: #333;
}

.dropdown-header {
  display: flex;
  align-items: center;
  margin-top: 0.25rem;
  margin-bottom: 0.25rem;
  line-height: 1.6667;
}

.dropdown-header-highlight {
  margin-top: 0;
  background-color: #f8f8f8;
}

.dropdown-item + .dropdown-header-highlight,
.dropdown-header-highlight + .dropdown-item {
  margin-top: 0.5rem;
}

.dropdown-header-highlight:first-child {
  margin-top: 0;
}

.dropdown-item > i,
.dropdown-item > img,
.dropdown-header > i,
.dropdown-header > img {
  margin-right: 1rem;
}

.dropdown-item > i,
.dropdown-header > i {
  top: 0;
}

.dropdown-item > img,
.dropdown-header > img {
  max-height: 1.25003rem;
}

.dropdown-divider {
  margin: 0.5rem 0;
}

.dropdown-item.form-check {
  padding: 0;
  margin-bottom: 0;
}

.dropdown-item.form-check .form-check-label {
  flex: 1;
  padding: 0.5rem 1rem;
}

.dropdown-item.form-check.form-check-right .form-check-label {
  padding-left: 1rem;
}

.dropdown-scrollable {
  max-height: 340px;
  overflow-y: auto;
}

.dropdown-menu > .dropdown-submenu {
  position: relative;
}

.dropdown-menu > .dropdown-submenu > .dropdown-item {
  padding-right: 2.5rem;
}

.dropdown-menu > .dropdown-submenu > .dropdown-item:after {
  content: '\e9c7';
  font-family: "icomoon";
  position: absolute;
  top: 50%;
  margin-top: -0.5rem;
  right: 1rem;
  font-size: 1rem;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.dropdown-menu > .dropdown-submenu.show > .dropdown-item, .dropdown-menu > .dropdown-submenu:hover > .dropdown-item {
  background-color: #f5f5f5;
  color: #333;
}

.dropdown-menu > .dropdown-submenu:hover > .dropdown-item:not(.dropdown-toggle) ~ .dropdown-menu,
.dropdown-menu > .dropdown-submenu:focus > .dropdown-item:not(.dropdown-toggle) ~ .dropdown-menu {
  display: block;
}

.dropdown-menu > .dropdown-submenu.disabled > .dropdown-menu {
  display: none;
}

.dropdown-menu > .dropdown-submenu.disabled > .dropdown-item {
  background-color: transparent;
  color: #999;
  cursor: default;
}

.dropdown-menu > .dropdown-submenu > .dropdown-menu {
  top: 0;
  left: 100%;
  margin-top: -0.5625rem;
}

.dropdown-menu > .dropdown-submenu.dropdown-submenu-left > .dropdown-menu {
  left: auto;
  right: 100%;
}

@media (max-width: 991.98px) {
  .dropdown-menu > .dropdown-submenu .dropdown-toggle:after {
    content: '\e9c5';
  }
  .dropdown-menu > .dropdown-submenu .dropdown-menu, .dropdown-menu > .dropdown-submenu.dropdown-submenu-left .dropdown-menu {
    position: static;
    margin: 0 !important;
    border-width: 0;
    box-shadow: none;
    border-radius: 0;
  }
  .dropdown-menu > .dropdown-submenu > .dropdown-menu > .dropdown-item,
  .dropdown-menu > .dropdown-submenu > .dropdown-menu > .dropdown-submenu > .dropdown-item {
    padding-left: 2rem;
  }
  .dropdown-menu > .dropdown-submenu > .dropdown-menu > .dropdown-submenu > .dropdown-menu > .dropdown-item,
  .dropdown-menu > .dropdown-submenu > .dropdown-menu > .dropdown-submenu > .dropdown-menu > .dropdown-submenu > .dropdown-item {
    padding-left: 3rem;
  }
}

.dropdown-menu .dropup > .dropdown-menu {
  top: auto;
  bottom: 0;
  margin-top: 0;
  margin-bottom: -0.5625rem;
}

.dropdown-menu .dropdown-submenu + .dropdown-submenu {
  margin-top: 1px;
}

.dropright .dropdown-toggle::after {
  vertical-align: middle;
}

.dropleft .dropdown-toggle::before {
  vertical-align: middle;
}

.dropleft .dropdown-submenu .dropdown-toggle::before {
  content: none;
}

.dropdown-menu-lg .dropdown-item {
  padding-top: 0.5625rem;
  padding-bottom: 0.5625rem;
  font-size: 0.875rem;
  line-height: 1.4286;
}

.dropdown-menu-sm .dropdown-item {
  padding-top: 0.3125rem;
  padding-bottom: 0.3125rem;
  font-size: 0.75rem;
  line-height: 1.6667;
}

.dropdown-menu[class*=bg-]:not(.bg-white):not(.bg-light) > .dropdown-item,
.dropdown-menu[class*=bg-]:not(.bg-white):not(.bg-light) > .dropdown-submenu > .dropdown-item {
  color: #fff;
}

.dropdown-menu[class*=bg-]:not(.bg-white):not(.bg-light) > .dropdown-item:hover, .dropdown-menu[class*=bg-]:not(.bg-white):not(.bg-light) > .dropdown-item:focus,
.dropdown-menu[class*=bg-]:not(.bg-white):not(.bg-light) > .dropdown-submenu > .dropdown-item:hover,
.dropdown-menu[class*=bg-]:not(.bg-white):not(.bg-light) > .dropdown-submenu > .dropdown-item:focus {
  background-color: rgba(0, 0, 0, 0.1);
}

.dropdown-menu[class*=bg-]:not(.bg-white):not(.bg-light) > .dropdown-item.active,
.dropdown-menu[class*=bg-]:not(.bg-white):not(.bg-light) > .dropdown-submenu > .dropdown-item.active {
  background-color: rgba(0, 0, 0, 0.2);
}

.dropdown-menu[class*=bg-]:not(.bg-white):not(.bg-light) > .dropdown-item.disabled,
.dropdown-menu[class*=bg-]:not(.bg-white):not(.bg-light) > .dropdown-submenu > .dropdown-item.disabled {
  background-color: transparent;
  color: rgba(255, 255, 255, 0.6);
}

.dropdown-menu[class*=bg-]:not(.bg-white):not(.bg-light) > .dropdown-submenu.show > .dropdown-item, .dropdown-menu[class*=bg-]:not(.bg-white):not(.bg-light) > .dropdown-submenu:hover > .dropdown-item {
  background-color: rgba(0, 0, 0, 0.1);
  color: #fff;
}

.dropdown-menu[class*=bg-]:not(.bg-white):not(.bg-light) > .dropdown-submenu.disabled > .dropdown-item {
  background-color: transparent;
  color: rgba(255, 255, 255, 0.6);
}

.dropdown-menu[class*=bg-]:not(.bg-white):not(.bg-light) > .dropdown-header {
  color: rgba(255, 255, 255, 0.6);
}

.dropdown-menu[class*=bg-]:not(.bg-white):not(.bg-light) > .dropdown-header-highlight {
  background-color: rgba(0, 0, 0, 0.1);
}

.dropdown-menu[class*=bg-]:not(.bg-white):not(.bg-light) > .dropdown-divider {
  border-top-color: rgba(255, 255, 255, 0.4);
}

/* ------------------------------------------------------------------------------
 *
 *  # Button group component
 *
 *  Overrides for button group bootstrap component
 *
 * ---------------------------------------------------------------------------- */
.btn-group .btn + .btn.border-2,
.btn-group .btn.border-2 + .btn-group,
.btn-group .btn-group + .btn.border-2,
.btn-group-vertical .btn + .btn.border-2,
.btn-group-vertical .btn.border-2 + .btn-group,
.btn-group-vertical .btn-group + .btn.border-2 {
  margin-left: -2px;
}

.btn-group .btn + .btn.border-3,
.btn-group .btn.border-3 + .btn-group,
.btn-group .btn-group + .btn.border-3,
.btn-group-vertical .btn + .btn.border-3,
.btn-group-vertical .btn.border-3 + .btn-group,
.btn-group-vertical .btn-group + .btn.border-3 {
  margin-left: -3px;
}

.btn-group-justified {
  display: flex;
}

.btn-group-justified .btn,
.btn-group-justified .btn-group {
  flex: 1;
}

/* ------------------------------------------------------------------------------
 *
 *  # Input group component
 *
 *  Overrides for input group component
 *
 * ---------------------------------------------------------------------------- */
.input-group .form-group-feedback {
  position: relative;
  flex: 1 1 auto;
  width: 1%;
  z-index: 4;
}

.input-group .form-group-feedback:not(:last-child) .form-control {
  border-top-right-radius: 0;
  border-bottom-right-radius: 0;
}

.input-group .form-group-feedback:not(:first-child) .form-control {
  border-top-left-radius: 0;
  border-bottom-left-radius: 0;
}

.input-group + .form-control-feedback,
.form-control-feedback + .input-group {
  z-index: 4;
}

.input-group-text i {
  display: block;
  top: 0;
}

/* ------------------------------------------------------------------------------
 *
 *  # Custom form inputs
 *
 *  Custom checkboxes, radios, selects and file inputs
 *
 * ---------------------------------------------------------------------------- */
.custom-control {
  min-height: 1.25003rem;
  margin-bottom: 0.5rem;
}

.custom-control:last-child {
  margin-bottom: 0;
}

.custom-control-inline {
  margin-bottom: 0;
}

.custom-control-inline:last-child {
  margin-right: 0;
}

.custom-control-input:active ~ .custom-control-label::before {
  transition: all ease-in-out 0.15s;
}

@media (prefers-reduced-motion: reduce) {
  .custom-control-input:active ~ .custom-control-label::before {
    transition: none;
  }
}

.custom-control-input:disabled ~ .custom-control-label {
  cursor: default;
}

.custom-control-label {
  cursor: pointer;
}

.custom-control-label::before {
  top: 0.00002rem;
}

.custom-control-label::after {
  top: 0.00002rem;
}

.custom-control-right {
  padding-left: 0;
  padding-right: 1.875rem;
}

.custom-control-right .custom-control-input {
  right: 0;
}

.custom-control-right .custom-control-label:before, .custom-control-right .custom-control-label:after {
  left: auto;
  right: 0;
}

.custom-select {
  cursor: pointer;
  transition: all ease-in-out 0.15s;
}

@media (prefers-reduced-motion: reduce) {
  .custom-select {
    transition: none;
  }
}

.custom-select:hover, .custom-select:focus {
  box-shadow: 0 0 0 62.5rem rgba(0, 0, 0, 0.01) inset;
}

.custom-select:disabled {
  cursor: default;
}

.custom-select:disabled:hover, .custom-select:disabled:focus {
  box-shadow: none;
}

.custom-file-label {
  margin-bottom: 0;
}

/* ------------------------------------------------------------------------------
 *
 *  # Nav components
 *
 *  Overrides for nav components
 *
 * ---------------------------------------------------------------------------- */
.nav-link {
  position: relative;
  transition: all ease-in-out 0.15s;
}

@media (prefers-reduced-motion: reduce) {
  .nav-link {
    transition: none;
  }
}

.nav-link.disabled {
  cursor: default;
}

.nav-tabs {
  margin-bottom: 1.25rem;
}

.nav-tabs .nav-link {
  border-top-left-radius: 0;
  border-top-right-radius: 0;
  color: #777;
}

.nav-tabs .nav-link:hover, .nav-tabs .nav-link:focus {
  color: #333;
}

.nav-tabs .nav-link.disabled {
  color: #999;
}

.nav-tabs .nav-item.show .nav-link:not(.active) {
  border-color: transparent;
  background-color: transparent;
}

.nav-tabs.border-top-1 {
  border-top-color: #ddd;
}

.nav-tabs-responsive {
  overflow-x: auto;
  box-shadow: 0 -1px 0 #ddd inset;
}

.nav-tabs-highlight .nav-link,
.nav-tabs-top .nav-link,
.nav-tabs-bottom .nav-link {
  position: relative;
}

.nav-tabs-highlight .nav-link:before,
.nav-tabs-top .nav-link:before,
.nav-tabs-bottom .nav-link:before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  transition: background-color ease-in-out 0.15s;
}

@media (prefers-reduced-motion: reduce) {
  .nav-tabs-highlight .nav-link:before,
  .nav-tabs-top .nav-link:before,
  .nav-tabs-bottom .nav-link:before {
    transition: none;
  }
}

.nav-tabs-highlight .nav-link {
  border-top-color: transparent;
  border-top-left-radius: 0;
  border-top-right-radius: 0;
}

.nav-tabs-highlight .nav-link:before {
  height: 2px;
  top: -1px;
  left: -1px;
  right: -1px;
}

.nav-tabs-highlight .nav-link.active:before {
  background-color: #2196F3;
}

.nav-tabs-top .nav-item {
  margin-bottom: 0;
}

.nav-tabs-top .nav-link {
  border-width: 0;
  border-top-left-radius: 0;
  border-top-right-radius: 0;
}

.nav-tabs-top .nav-link:hover:before, .nav-tabs-top .nav-link:focus:before {
  background-color: #ddd;
}

.nav-tabs-top .nav-link:before {
  height: 2px;
}

.nav-tabs-top .nav-link.disabled:before {
  content: none;
}

.nav-tabs-top .nav-item.show .nav-link:not(.active):before {
  background-color: #ddd;
}

.nav-tabs-top .nav-link.active:before {
  background-color: #EC407A;
}

.nav-tabs-top .nav-link.active,
.nav-tabs-top .nav-item.show .nav-link {
  background-color: transparent;
}

.nav-tabs-top .dropdown-menu {
  margin-top: 0;
}

.nav-tabs-top.border-top-1 .nav-item {
  margin-top: -1px;
}

.nav-tabs-bottom .nav-item {
  margin-bottom: 0;
}

.nav-tabs-bottom .nav-link {
  border-width: 0;
}

.nav-tabs-bottom .nav-link:before {
  height: 2px;
  top: auto;
  bottom: -1px;
}

.nav-tabs-bottom .nav-link.active:before {
  background-color: #EC407A;
}

.nav-tabs-bottom .nav-link.active,
.nav-tabs-bottom .nav-item.show .nav-link {
  background-color: transparent;
}

.nav-tabs-bottom .dropdown-menu {
  margin-top: 0;
}

.nav-tabs-solid {
  background-color: #f5f5f5;
  border: 1px solid #ddd;
}

.nav-tabs-solid .nav-item {
  margin-bottom: 0;
}

.nav-tabs-solid .nav-link {
  border-width: 0;
}

.nav-tabs-solid .nav-item.show .nav-link {
  background-color: transparent;
}

.nav-tabs-solid .nav-link.active,
.nav-tabs-solid .nav-item.show .nav-link.active {
  color: #fff;
  background-color: #2196F3;
}

.nav-tabs-solid[class*=bg-]:not(.bg-light):not(.bg-white):not(.bg-transparent) .nav-link {
  color: rgba(255, 255, 255, 0.9);
}

.nav-tabs-solid[class*=bg-]:not(.bg-light):not(.bg-white):not(.bg-transparent) .nav-link:hover, .nav-tabs-solid[class*=bg-]:not(.bg-light):not(.bg-white):not(.bg-transparent) .nav-link:focus {
  color: #fff;
}

.nav-tabs-solid[class*=bg-]:not(.bg-light):not(.bg-white):not(.bg-transparent) .nav-link.disabled {
  color: rgba(255, 255, 255, 0.6);
}

.nav-tabs-solid[class*=bg-]:not(.bg-light):not(.bg-white):not(.bg-transparent) .nav-item.show .nav-link {
  color: #fff;
}

.nav-tabs-solid[class*=bg-]:not(.bg-light):not(.bg-white):not(.bg-transparent) .nav-link.active,
.nav-tabs-solid[class*=bg-]:not(.bg-light):not(.bg-white):not(.bg-transparent) .nav-item.show .nav-link.active {
  color: #fff;
  background-color: rgba(0, 0, 0, 0.1);
}

.nav-tabs-solid[class*=bg-]:not(.bg-light):not(.bg-white):not(.bg-transparent) + .tab-content[class*=bg-] {
  border-top-color: rgba(255, 255, 255, 0.5);
}

.nav-tabs-vertical .nav-link {
  justify-content: flex-start;
}

.nav-tabs-vertical .nav-link, .nav-tabs-vertical .nav-link:hover, .nav-tabs-vertical .nav-link:focus, .nav-tabs-vertical .nav-link.disabled {
  border-color: transparent #ddd transparent transparent;
}

.nav-tabs-vertical .nav-link:before {
  content: '';
  position: absolute;
  top: -1px;
  bottom: -1px;
  left: -1px;
  width: 2px;
  transition: background-color ease-in-out 0.15s;
}

@media (prefers-reduced-motion: reduce) {
  .nav-tabs-vertical .nav-link:before {
    transition: none;
  }
}

.nav-tabs-vertical .nav-item.show .nav-link:not(.active) {
  border-right-color: #ddd;
  border-bottom-color: transparent;
}

.nav-tabs-vertical-right .nav-link, .nav-tabs-vertical-right .nav-link:hover, .nav-tabs-vertical-right .nav-link:focus, .nav-tabs-vertical-right .nav-link.disabled {
  border-color: transparent transparent transparent #ddd;
}

.nav-tabs-vertical-right .nav-link:before {
  left: auto;
  right: -1px;
}

.nav-tabs-vertical-right .nav-item.show .nav-link:not(.active) {
  border-right-color: transparent;
  border-left-color: #ddd;
}

.nav-tabs-vertical .nav-link.active:before {
  background-color: #2196F3;
}

.nav-tabs-vertical .nav-link.active,
.nav-tabs-vertical .nav-item.show .nav-link {
  background-color: transparent;
  border-color: #ddd transparent;
}

.nav-pills {
  margin-bottom: 1.25rem;
}

.nav-pills .nav-link {
  color: #777;
}

.nav-pills .nav-link:not(.active):hover, .nav-pills .nav-link:not(.active):focus {
  color: #333;
}

.nav-pills .nav-link.active .badge:not(.bg-transparent):not(.bg-light):not(.bg-white) {
  background-color: #fff;
  color: #333;
  transition: all ease-in-out 0.15s;
}

@media (prefers-reduced-motion: reduce) {
  .nav-pills .nav-link.active .badge:not(.bg-transparent):not(.bg-light):not(.bg-white) {
    transition: none;
  }
}

.nav-pills .nav-link.disabled, .nav-pills .nav-link.disabled:hover, .nav-pills .nav-link.disabled:focus {
  color: #999;
}

.nav-pills .nav-item.show .nav-link:not(.active) {
  color: #333;
  background-color: transparent;
}

.nav-pills.flex-column .nav-link {
  justify-content: flex-start;
}

.nav-pills-bordered .nav-item + .nav-item {
  margin-left: 0.625rem;
}

.nav-pills-bordered .nav-link {
  border: 1px solid #ddd;
}

.nav-pills-bordered .nav-link:not(.active):hover,
.nav-pills-bordered .nav-link:not(.active):focus,
.nav-pills-bordered .nav-item.show .nav-link:not(.active) {
  background-color: #f5f5f5;
}

.nav-pills-bordered .nav-link.active {
  border-color: #2196F3;
}

.nav-pills-bordered .nav-link.disabled, .nav-pills-bordered .nav-link.disabled:hover, .nav-pills-bordered .nav-link.disabled:focus {
  background-color: #fafafa;
}

.nav-pills-bordered.flex-column .nav-item + .nav-item {
  margin-left: 0;
  margin-top: 0.625rem;
}

.nav-pills-toolbar .nav-item + .nav-item {
  margin-left: -1px;
}

.nav-pills-toolbar .nav-link {
  border-radius: 0;
}

.nav-pills-toolbar .nav-link.active {
  z-index: 3;
}

.nav-pills-toolbar .nav-item:first-child .nav-link {
  border-top-left-radius: 0.1875rem;
  border-bottom-left-radius: 0.1875rem;
}

.nav-pills-toolbar .nav-item:last-child .nav-link {
  border-top-right-radius: 0.1875rem;
  border-bottom-right-radius: 0.1875rem;
}

.nav-pills-toolbar.flex-column .nav-item:first-child .nav-link {
  border-top-left-radius: 0;
  border-bottom-left-radius: 0;
  border-top-left-radius: 0.1875rem;
  border-top-right-radius: 0.1875rem;
}

.nav-pills-toolbar.flex-column .nav-item:last-child .nav-link {
  border-top-right-radius: 0;
  border-bottom-right-radius: 0;
  border-bottom-right-radius: 0.1875rem;
  border-bottom-left-radius: 0.1875rem;
}

.nav-pills-toolbar.flex-column .nav-item + .nav-item {
  margin-left: 0;
  margin-top: -1px;
}

/* ------------------------------------------------------------------------------
 *
 *  # Navbar component
 *
 *  Overrides for navbar component
 *
 * ---------------------------------------------------------------------------- */
.navbar {
  border-top: 1px solid transparent;
  border-bottom: 1px solid transparent;
  align-items: stretch;
}

.page-content ~ .navbar:not(.navbar-component):last-of-type,
.content ~ .navbar:not(.navbar-component):last-of-type {
  border-bottom-color: transparent;
}

.navbar-component {
  border: 1px solid transparent;
  margin-bottom: 1.25rem;
}

.page-header .navbar-component {
  margin-left: 1.25rem;
  margin-right: 1.25rem;
}

.navbar-component.navbar-dark {
  border-color: rgba(255, 255, 255, 0.1);
}

.navbar-component.navbar-light {
  border-color: rgba(0, 0, 0, 0.125);
}

.navbar-brand img {
  height: 1rem;
  display: block;
}

.navbar-text {
  padding-top: 0.875rem;
  padding-bottom: 0.875rem;
}

.navbar-nav .nav-link {
  padding-left: 1.25rem;
  padding-right: 1.25rem;
}

.navbar-nav-link {
  position: relative;
  display: block;
  cursor: pointer;
  padding: 0.875rem 1rem;
  outline: 0;
  transition: all ease-in-out 0.15s;
}

@media (prefers-reduced-motion: reduce) {
  .navbar-nav-link {
    transition: none;
  }
}

.navbar-nav-link.disabled {
  cursor: default;
}

.navbar-nav-link.disabled .badge,
.navbar-nav-link.disabled img {
  opacity: 0.5;
}

.navbar-nav-link .badge {
  position: absolute;
  top: 0;
  right: 0;
}

.navbar-nav-link .badge-mark {
  top: 0.4375rem;
  right: 0.5rem;
}

.navbar-nav-highlight .navbar-nav-link:before {
  content: '';
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  background-color: transparent;
  width: 2px;
}

.navbar-light .navbar-nav-highlight .navbar-nav-link.active:before {
  background-color: #EC407A;
}

.navbar-dark .navbar-nav-highlight .navbar-nav-link.active:before {
  background-color: #fff;
}

.navbar-collapse {
  margin-left: -1.25rem;
  margin-right: -1.25rem;
  padding-left: 1.25rem;
  padding-right: 1.25rem;
}

.navbar-toggler {
  border: 0;
  line-height: 1.5385;
  cursor: pointer;
  transition: all ease-in-out 0.15s;
}

@media (prefers-reduced-motion: reduce) {
  .navbar-toggler {
    transition: none;
  }
}

.navbar-toggler + .navbar-toggler {
  margin-left: 1.25rem;
}

.navbar-toggler:hover, .navbar-toggler:focus {
  outline: 0;
}

.navbar-dark .navbar-toggler:hover, .navbar-dark .navbar-toggler:focus {
  color: #fff;
}

.navbar-light .navbar-toggler {
  color: rgba(51, 51, 51, 0.85);
}

.navbar-light .navbar-toggler:hover, .navbar-light .navbar-toggler:focus, .navbar-light .navbar-toggler[aria-expanded=true] {
  color: #333;
}

@media (max-width: 575.98px) {
  .navbar-expand-sm .navbar-nav:first-child > .nav-item:first-child {
    margin-top: 0.625rem;
  }
  .navbar-expand-sm .navbar-nav:last-child > .nav-item:not(.show):last-child {
    margin-bottom: 0.625rem;
  }
  .navbar-expand-sm .navbar-nav-link {
    display: flex;
    align-items: center;
    margin-left: -1.25rem;
    margin-right: -1.25rem;
    padding-left: 1.25rem;
    padding-right: 1.25rem;
  }
  .navbar-expand-sm .navbar-nav-link .badge:not(.position-static) {
    position: static;
  }
  .navbar-expand-sm .navbar-nav-link.dropdown-toggle:not(.caret-0) {
    padding-right: 2.5rem;
  }
  .navbar-expand-sm .navbar-nav-link.dropdown-toggle:not(.caret-0):after {
    position: absolute;
    top: 50%;
    right: 1.25rem;
    margin: 0;
    transform: translateY(-50%);
  }
  .navbar-expand-sm.navbar-dark .navbar-collapse {
    border-top: 1px solid rgba(255, 255, 255, 0.1);
  }
  .navbar-expand-sm.navbar-light .navbar-collapse {
    border-top: 1px solid #ddd;
  }
  .navbar-expand-sm .navbar-nav > .nav-item > .dropdown-menu {
    margin-top: 1.25rem;
    margin-bottom: 1.25rem;
  }
  .navbar-expand-sm .dropdown-submenu .dropdown-toggle:after {
    content: '\e9c5';
  }
  .navbar-expand-sm .dropdown-submenu .dropdown-menu, .navbar-expand-sm .dropdown-submenu.dropdown-submenu-left .dropdown-menu {
    margin: 0;
    border-width: 0;
    box-shadow: none;
    border-radius: 0;
  }
  .navbar-expand-sm .dropdown-submenu > .dropdown-menu > .dropdown-item,
  .navbar-expand-sm .dropdown-submenu > .dropdown-menu > .dropdown-submenu > .dropdown-item {
    padding-left: 2rem;
  }
  .navbar-expand-sm .dropdown-submenu > .dropdown-menu > .dropdown-submenu > .dropdown-menu > .dropdown-item,
  .navbar-expand-sm .dropdown-submenu > .dropdown-menu > .dropdown-submenu > .dropdown-menu > .dropdown-submenu > .dropdown-item {
    padding-left: 3rem;
  }
  .navbar-expand-sm.fixed-top .navbar-collapse,
  .navbar-expand-sm.fixed-bottom .navbar-collapse {
    max-height: 440px;
    overflow-y: auto;
  }
}

@media (min-width: 576px) {
  .navbar-expand-sm .navbar-brand {
    min-width: 15.625rem;
  }
  .navbar-expand-sm .navbar-nav-link:before {
    top: auto;
    right: 0;
    width: auto;
    height: 2px;
  }
}

@media (max-width: 767.98px) {
  .navbar-expand-md .navbar-nav:first-child > .nav-item:first-child {
    margin-top: 0.625rem;
  }
  .navbar-expand-md .navbar-nav:last-child > .nav-item:not(.show):last-child {
    margin-bottom: 0.625rem;
  }
  .navbar-expand-md .navbar-nav-link {
    display: flex;
    align-items: center;
    margin-left: -1.25rem;
    margin-right: -1.25rem;
    padding-left: 1.25rem;
    padding-right: 1.25rem;
  }
  .navbar-expand-md .navbar-nav-link .badge:not(.position-static) {
    position: static;
  }
  .navbar-expand-md .navbar-nav-link.dropdown-toggle:not(.caret-0) {
    padding-right: 2.5rem;
  }
  .navbar-expand-md .navbar-nav-link.dropdown-toggle:not(.caret-0):after {
    position: absolute;
    top: 50%;
    right: 1.25rem;
    margin: 0;
    transform: translateY(-50%);
  }
  .navbar-expand-md.navbar-dark .navbar-collapse {
    border-top: 1px solid rgba(255, 255, 255, 0.1);
  }
  .navbar-expand-md.navbar-light .navbar-collapse {
    border-top: 1px solid #ddd;
  }
  .navbar-expand-md .navbar-nav > .nav-item > .dropdown-menu {
    margin-top: 1.25rem;
    margin-bottom: 1.25rem;
  }
  .navbar-expand-md .dropdown-submenu .dropdown-toggle:after {
    content: '\e9c5';
  }
  .navbar-expand-md .dropdown-submenu .dropdown-menu, .navbar-expand-md .dropdown-submenu.dropdown-submenu-left .dropdown-menu {
    margin: 0;
    border-width: 0;
    box-shadow: none;
    border-radius: 0;
  }
  .navbar-expand-md .dropdown-submenu > .dropdown-menu > .dropdown-item,
  .navbar-expand-md .dropdown-submenu > .dropdown-menu > .dropdown-submenu > .dropdown-item {
    padding-left: 2rem;
  }
  .navbar-expand-md .dropdown-submenu > .dropdown-menu > .dropdown-submenu > .dropdown-menu > .dropdown-item,
  .navbar-expand-md .dropdown-submenu > .dropdown-menu > .dropdown-submenu > .dropdown-menu > .dropdown-submenu > .dropdown-item {
    padding-left: 3rem;
  }
  .navbar-expand-md.fixed-top .navbar-collapse,
  .navbar-expand-md.fixed-bottom .navbar-collapse {
    max-height: 440px;
    overflow-y: auto;
  }
}

@media (min-width: 768px) {
  .navbar-expand-md .navbar-brand {
    min-width: 15.625rem;
  }
  .navbar-expand-md .navbar-nav-link:before {
    top: auto;
    right: 0;
    width: auto;
    height: 2px;
  }
}

@media (max-width: 991.98px) {
  .navbar-expand-lg .navbar-nav:first-child > .nav-item:first-child {
    margin-top: 0.625rem;
  }
  .navbar-expand-lg .navbar-nav:last-child > .nav-item:not(.show):last-child {
    margin-bottom: 0.625rem;
  }
  .navbar-expand-lg .navbar-nav-link {
    display: flex;
    align-items: center;
    margin-left: -1.25rem;
    margin-right: -1.25rem;
    padding-left: 1.25rem;
    padding-right: 1.25rem;
  }
  .navbar-expand-lg .navbar-nav-link .badge:not(.position-static) {
    position: static;
  }
  .navbar-expand-lg .navbar-nav-link.dropdown-toggle:not(.caret-0) {
    padding-right: 2.5rem;
  }
  .navbar-expand-lg .navbar-nav-link.dropdown-toggle:not(.caret-0):after {
    position: absolute;
    top: 50%;
    right: 1.25rem;
    margin: 0;
    transform: translateY(-50%);
  }
  .navbar-expand-lg.navbar-dark .navbar-collapse {
    border-top: 1px solid rgba(255, 255, 255, 0.1);
  }
  .navbar-expand-lg.navbar-light .navbar-collapse {
    border-top: 1px solid #ddd;
  }
  .navbar-expand-lg .navbar-nav > .nav-item > .dropdown-menu {
    margin-top: 1.25rem;
    margin-bottom: 1.25rem;
  }
  .navbar-expand-lg .dropdown-submenu .dropdown-toggle:after {
    content: '\e9c5';
  }
  .navbar-expand-lg .dropdown-submenu .dropdown-menu, .navbar-expand-lg .dropdown-submenu.dropdown-submenu-left .dropdown-menu {
    margin: 0;
    border-width: 0;
    box-shadow: none;
    border-radius: 0;
  }
  .navbar-expand-lg .dropdown-submenu > .dropdown-menu > .dropdown-item,
  .navbar-expand-lg .dropdown-submenu > .dropdown-menu > .dropdown-submenu > .dropdown-item {
    padding-left: 2rem;
  }
  .navbar-expand-lg .dropdown-submenu > .dropdown-menu > .dropdown-submenu > .dropdown-menu > .dropdown-item,
  .navbar-expand-lg .dropdown-submenu > .dropdown-menu > .dropdown-submenu > .dropdown-menu > .dropdown-submenu > .dropdown-item {
    padding-left: 3rem;
  }
  .navbar-expand-lg.fixed-top .navbar-collapse,
  .navbar-expand-lg.fixed-bottom .navbar-collapse {
    max-height: 440px;
    overflow-y: auto;
  }
}

@media (min-width: 992px) {
  .navbar-expand-lg .navbar-brand {
    min-width: 15.625rem;
  }
  .navbar-expand-lg .navbar-nav-link:before {
    top: auto;
    right: 0;
    width: auto;
    height: 2px;
  }
}

@media (max-width: 1199.98px) {
  .navbar-expand-xl .navbar-nav:first-child > .nav-item:first-child {
    margin-top: 0.625rem;
  }
  .navbar-expand-xl .navbar-nav:last-child > .nav-item:not(.show):last-child {
    margin-bottom: 0.625rem;
  }
  .navbar-expand-xl .navbar-nav-link {
    display: flex;
    align-items: center;
    margin-left: -1.25rem;
    margin-right: -1.25rem;
    padding-left: 1.25rem;
    padding-right: 1.25rem;
  }
  .navbar-expand-xl .navbar-nav-link .badge:not(.position-static) {
    position: static;
  }
  .navbar-expand-xl .navbar-nav-link.dropdown-toggle:not(.caret-0) {
    padding-right: 2.5rem;
  }
  .navbar-expand-xl .navbar-nav-link.dropdown-toggle:not(.caret-0):after {
    position: absolute;
    top: 50%;
    right: 1.25rem;
    margin: 0;
    transform: translateY(-50%);
  }
  .navbar-expand-xl.navbar-dark .navbar-collapse {
    border-top: 1px solid rgba(255, 255, 255, 0.1);
  }
  .navbar-expand-xl.navbar-light .navbar-collapse {
    border-top: 1px solid #ddd;
  }
  .navbar-expand-xl .navbar-nav > .nav-item > .dropdown-menu {
    margin-top: 1.25rem;
    margin-bottom: 1.25rem;
  }
  .navbar-expand-xl .dropdown-submenu .dropdown-toggle:after {
    content: '\e9c5';
  }
  .navbar-expand-xl .dropdown-submenu .dropdown-menu, .navbar-expand-xl .dropdown-submenu.dropdown-submenu-left .dropdown-menu {
    margin: 0;
    border-width: 0;
    box-shadow: none;
    border-radius: 0;
  }
  .navbar-expand-xl .dropdown-submenu > .dropdown-menu > .dropdown-item,
  .navbar-expand-xl .dropdown-submenu > .dropdown-menu > .dropdown-submenu > .dropdown-item {
    padding-left: 2rem;
  }
  .navbar-expand-xl .dropdown-submenu > .dropdown-menu > .dropdown-submenu > .dropdown-menu > .dropdown-item,
  .navbar-expand-xl .dropdown-submenu > .dropdown-menu > .dropdown-submenu > .dropdown-menu > .dropdown-submenu > .dropdown-item {
    padding-left: 3rem;
  }
  .navbar-expand-xl.fixed-top .navbar-collapse,
  .navbar-expand-xl.fixed-bottom .navbar-collapse {
    max-height: 440px;
    overflow-y: auto;
  }
}

@media (min-width: 1200px) {
  .navbar-expand-xl .navbar-brand {
    min-width: 15.625rem;
  }
  .navbar-expand-xl .navbar-nav-link:before {
    top: auto;
    right: 0;
    width: auto;
    height: 2px;
  }
}

.navbar-expand .navbar-nav:first-child > .nav-item:first-child {
  margin-top: 0.625rem;
}

.navbar-expand .navbar-nav:last-child > .nav-item:not(.show):last-child {
  margin-bottom: 0.625rem;
}

.navbar-expand .navbar-nav-link {
  display: flex;
  align-items: center;
  margin-left: -1.25rem;
  margin-right: -1.25rem;
  padding-left: 1.25rem;
  padding-right: 1.25rem;
}

.navbar-expand .navbar-nav-link .badge:not(.position-static) {
  position: static;
}

.navbar-expand .navbar-nav-link.dropdown-toggle:not(.caret-0) {
  padding-right: 2.5rem;
}

.navbar-expand .navbar-nav-link.dropdown-toggle:not(.caret-0):after {
  position: absolute;
  top: 50%;
  right: 1.25rem;
  margin: 0;
  transform: translateY(-50%);
}

.navbar-expand.navbar-dark .navbar-collapse {
  border-top: 1px solid rgba(255, 255, 255, 0.1);
}

.navbar-expand.navbar-light .navbar-collapse {
  border-top: 1px solid #ddd;
}

.navbar-expand .navbar-nav > .nav-item > .dropdown-menu {
  margin-top: 1.25rem;
  margin-bottom: 1.25rem;
}

.navbar-expand .dropdown-submenu .dropdown-toggle:after {
  content: '\e9c5';
}

.navbar-expand .dropdown-submenu .dropdown-menu, .navbar-expand .dropdown-submenu.dropdown-submenu-left .dropdown-menu {
  margin: 0;
  border-width: 0;
  box-shadow: none;
  border-radius: 0;
}

.navbar-expand .dropdown-submenu > .dropdown-menu > .dropdown-item,
.navbar-expand .dropdown-submenu > .dropdown-menu > .dropdown-submenu > .dropdown-item {
  padding-left: 2rem;
}

.navbar-expand .dropdown-submenu > .dropdown-menu > .dropdown-submenu > .dropdown-menu > .dropdown-item,
.navbar-expand .dropdown-submenu > .dropdown-menu > .dropdown-submenu > .dropdown-menu > .dropdown-submenu > .dropdown-item {
  padding-left: 3rem;
}

.navbar-expand.fixed-top .navbar-collapse,
.navbar-expand.fixed-bottom .navbar-collapse {
  max-height: 440px;
  overflow-y: auto;
}

.navbar-expand .navbar-brand {
  min-width: 15.625rem;
}

.navbar-expand .navbar-nav-link:before {
  top: auto;
  right: 0;
  width: auto;
  height: 2px;
}

.navbar-light {
  color: rgba(51, 51, 51, 0.85);
  background-color: #fff;
  border-bottom-color: rgba(0, 0, 0, 0.125);
}

.page-header-content + .navbar-light,
.content + .navbar-light,
.page-content + .navbar-light,
.fixed-bottom > .navbar-light:first-child {
  border-top-color: rgba(0, 0, 0, 0.125);
}

.navbar-light .navbar-nav .nav-link {
  color: #333;
}

.navbar-light .navbar-nav .nav-link:hover, .navbar-light .navbar-nav .nav-link:focus {
  color: #333;
}

.navbar-light .navbar-nav .nav-link.disabled {
  color: #999;
}

.navbar-light .navbar-nav .show > .nav-link,
.navbar-light .navbar-nav .active > .nav-link,
.navbar-light .navbar-nav .nav-link.show,
.navbar-light .navbar-nav .nav-link.active {
  color: #333;
}

.navbar-light .navbar-nav-link {
  color: rgba(51, 51, 51, 0.85);
}

.navbar-light .navbar-nav-link:hover, .navbar-light .navbar-nav-link:focus {
  color: #333;
  background-color: rgba(0, 0, 0, 0.04);
}

.navbar-light .navbar-nav-link.disabled {
  color: rgba(0, 0, 0, 0.5);
  background-color: transparent;
}

.navbar-light .show > .navbar-nav-link,
.navbar-light .active > .navbar-nav-link,
.navbar-light .navbar-nav-link.show,
.navbar-light .navbar-nav-link.active {
  color: #333;
  background-color: rgba(0, 0, 0, 0.04);
}

.navbar-light .navbar-text a {
  color: #2196F3;
}

.navbar-light .navbar-text a:hover, .navbar-light .navbar-text a:focus {
  color: #0a6ebd;
}

.navbar-dark {
  color: rgba(255, 255, 255, 0.9);
  background-color: #324148;
  border-bottom-color: rgba(255, 255, 255, 0.1);
}

.page-header-content + .navbar-dark,
.content + .navbar-dark,
.page-content + .navbar-dark,
.fixed-bottom > .navbar-dark:first-child {
  border-top-color: rgba(255, 255, 255, 0.1);
}

.navbar-dark .navbar-nav .nav-link {
  color: #333;
}

.navbar-dark .navbar-nav .nav-link:hover, .navbar-dark .navbar-nav .nav-link:focus {
  color: #333;
}

.navbar-dark .navbar-nav .nav-link.disabled {
  color: #999;
}

.navbar-dark .navbar-nav .show > .nav-link,
.navbar-dark .navbar-nav .active > .nav-link,
.navbar-dark .navbar-nav .nav-link.show,
.navbar-dark .navbar-nav .nav-link.active {
  color: #333;
}

.navbar-dark .navbar-nav-link {
  color: rgba(255, 255, 255, 0.9);
}

.navbar-dark .navbar-nav-link:hover, .navbar-dark .navbar-nav-link:focus {
  color: #fff;
  background-color: rgba(0, 0, 0, 0.15);
}

.navbar-dark .navbar-nav-link.disabled {
  color: rgba(255, 255, 255, 0.5);
  background-color: transparent;
}

.navbar-dark .show > .navbar-nav-link,
.navbar-dark .active > .navbar-nav-link,
.navbar-dark .navbar-nav-link.show,
.navbar-dark .navbar-nav-link.active {
  color: #fff;
  background-color: rgba(0, 0, 0, 0.15);
}

.navbar-nav .nav-tabs .nav-link {
  color: #777;
}

.navbar-nav .nav-tabs .nav-link:hover, .navbar-nav .nav-tabs .nav-link:focus {
  color: #333;
}

.navbar-nav .nav-tabs .nav-link.disabled {
  color: #999;
}

.navbar-nav .nav-tabs .show > .nav-link,
.navbar-nav .nav-tabs .active > .nav-link,
.navbar-nav .nav-tabs .nav-link.show,
.navbar-nav .nav-tabs .nav-link.active {
  color: #333;
}

.navbar-nav .nav-pills .nav-link {
  color: #777;
}

.navbar-nav .nav-pills .nav-link:not(.active):hover, .navbar-nav .nav-pills .nav-link:not(.active):focus {
  color: #333;
}

.navbar-nav .nav-pills .nav-link.active .badge:not(.badge-mark) {
  background-color: #fff !important;
  color: #333 !important;
}

.navbar-nav .nav-pills .nav-link.active .badge-mark[class*=bg-] {
  background-color: #fff !important;
  border-color: #fff !important;
}

.navbar-nav .nav-pills .nav-link.active .badge-mark[class*=border-] {
  border-color: #fff !important;
}

.navbar-nav .nav-pills .nav-link.active,
.show:not(.navbar-collapse) > .navbar-nav .nav-pills .nav-link {
  color: #fff;
}

.navbar-nav .nav-pills .nav-link.disabled:hover, .navbar-nav .nav-pills .nav-link.disabled:focus {
  color: #999;
}

.navbar .btn-group .dropdown-menu-right {
  right: 0;
  left: auto;
}

.dropdown-user .navbar-nav-link,
.dropdown-user .navbar-nav-link > span {
  padding-top: 0.4375rem;
  padding-bottom: 0.4375rem;
}

.dropdown-user .navbar-nav-link > span {
  display: inline-block;
  padding-left: 0.625rem;
}

.dropdown-user .navbar-nav-link > img {
  max-height: 2.12503rem;
  vertical-align: top;
}

.img-flag {
  height: 0.875rem;
  margin-top: 0.18752rem;
  vertical-align: top;
  align-self: flex-start;
}

.mega-menu-left > .dropdown-menu {
  /*rtl:ignore*/
  left: auto;
}

.mega-menu-right > .dropdown-menu {
  left: auto;
  right: 0;
}

.mega-menu-full > .dropdown-menu {
  left: 1.25rem;
  right: 1.25rem;
}

.navbar-component .mega-menu-full > .dropdown-menu {
  left: 0;
  right: 0;
}

.dropdown-content-header {
  display: flex;
  justify-content: space-between;
  padding-left: 1.25rem;
  padding-right: 1.25rem;
  border-top-left-radius: 0.125rem;
  border-top-right-radius: 0.125rem;
}

.dropdown-content-header:not([class*=bg-]) {
  padding-top: 1.25rem;
  padding-bottom: 1.25rem;
}

.dropdown-content-header[class*=bg-] {
  padding-top: 1rem;
  padding-bottom: 1rem;
}

.dropdown-content-header + .table-responsive,
.dropdown-content-header + .table {
  border-top: 1px solid #ddd;
}

.dropdown-content:not(ul) {
  padding-top: 0;
  padding-bottom: 0;
}

.dropdown-content-body {
  padding: 1.25rem 1.25rem;
}

.dropdown-content-header:not([class*=bg-]) + .dropdown-content-body {
  padding-top: 0;
}

.dropdown-content-footer {
  display: flex;
  align-items: center;
  padding: 0.75rem 1.25rem;
  border-top: 1px solid #ddd;
  border-bottom-right-radius: 0.125rem;
  border-bottom-left-radius: 0.125rem;
}

.navbar-top {
  padding-top: 3.12503rem;
}

.navbar-lg-top {
  padding-top: 3.37503rem;
}

.navbar-sm-top {
  padding-top: 2.87503rem;
}

.navbar-lg-md-top {
  padding-top: 6.50006rem;
}

.navbar-md-md-top {
  padding-top: 6.25006rem;
}

.navbar-sm-md-top {
  padding-top: 6.00006rem;
}

.navbar-lg-sm-top {
  padding-top: 6.25006rem;
}

.navbar-bottom {
  padding-bottom: 3.12503rem;
}

.navbar-lg-md-bottom {
  padding-bottom: 6.50006rem;
}

.navbar-md-md-bottom {
  padding-bottom: 6.25006rem;
}

.navbar-sm-md-bottom {
  padding-bottom: 6.00006rem;
}

.navbar-lg-sm-bottom {
  padding-bottom: 6.25006rem;
}

.navbar-lg .navbar-brand {
  padding-top: 1.12502rem;
  padding-bottom: 1.12502rem;
}

.navbar-lg .navbar-nav-link {
  padding: 1rem 1.25rem;
}

.navbar-lg .navbar-nav-link .badge-mark {
  top: 0.5rem;
  right: 0.625rem;
}

.navbar-lg .navbar-text {
  padding-top: 1rem;
  padding-bottom: 1rem;
}

.navbar-lg .dropdown-user > .navbar-nav-link,
.navbar-lg .dropdown-user > .navbar-nav-link > span {
  padding-top: 0.5rem;
  padding-bottom: 0.5rem;
}

.navbar-lg .dropdown-user > .navbar-nav-link > img {
  max-height: 2.25003rem;
}

.navbar-sm .navbar-brand {
  padding-top: 0.87502rem;
  padding-bottom: 0.87502rem;
}

.navbar-sm .navbar-nav-link {
  padding: 0.75rem 0.875rem;
}

.navbar-sm .navbar-nav-link .badge-mark {
  top: 0.375rem;
  right: 0.4375rem;
}

.navbar-sm .navbar-text {
  padding-top: 0.75rem;
  padding-bottom: 0.75rem;
}

.navbar-sm .dropdown-user > .navbar-nav-link,
.navbar-sm .dropdown-user > .navbar-nav-link > span {
  padding-top: 0.375rem;
  padding-bottom: 0.375rem;
}

.navbar-sm .dropdown-user > .navbar-nav-link > img {
  max-height: 2.00003rem;
}

.navbar-header {
  margin-top: -1px;
  margin-bottom: -1px;
  margin-left: -1.25rem;
  margin-right: 1.25rem;
  border-top: 1px solid transparent;
  border-bottom: 1px solid transparent;
}

.navbar-header.navbar-dark {
  border-bottom-color: rgba(255, 255, 255, 0.1);
}

.navbar-header.navbar-light {
  border-bottom-color: rgba(0, 0, 0, 0.125);
}

.navbar-header .navbar-brand {
  margin-left: 1.25rem;
  margin-right: 0;
}

.navbar-header .navbar-brand-xs {
  display: none;
}

.sidebar-xs .navbar-header .navbar-brand-md {
  display: none;
}

.sidebar-xs .navbar-header .navbar-brand-xs {
  display: inline-block;
  min-width: 3.5rem;
  margin-left: 0;
  text-align: center;
}

.navbar-static {
  z-index: 100;
}

/* ------------------------------------------------------------------------------
 *
 *  # Card component
 *
 *  Overrides for card bootstrap component
 *
 * ---------------------------------------------------------------------------- */
.card {
  margin-bottom: 1.25rem;
  box-shadow: 0 1px 2px rgba(0, 0, 0, 0.05);
}

.card.fixed-top {
  overflow: auto;
  max-height: 100%;
}

.card-body:not(.card) + .card-body:not(.card) {
  border-top: 1px solid rgba(0, 0, 0, 0.125);
}

.card-title {
  position: relative;
}

.card-header .card-title {
  margin-bottom: 0;
}

.card[class*=bg-]:not(.bg-light):not(.bg-white):not(.bg-transparent) .card-header {
  border-bottom-color: rgba(255, 255, 255, 0.1);
}

.card-header:not([class*=bg-]):not([class*=alpha-]) {
  background-color: transparent;
  padding-top: 1.25rem;
  padding-bottom: 1.25rem;
  border-bottom-width: 0;
}

.card-header:not([class*=bg-]):not([class*=alpha-]) + .card-body,
.card-header:not([class*=bg-]):not([class*=alpha-]) + * > .card-body:first-child {
  padding-top: 0;
}

.card-footer:first-child,
.card-header + .card-footer,
.card-header + * > .card-footer:first-child {
  border-top: 0;
  border-bottom: 1px solid rgba(0, 0, 0, 0.125);
}

.card-footer.border-bottom-1 {
  border-bottom: 1px solid rgba(0, 0, 0, 0.125);
}

.card-header-tabs {
  margin-bottom: 0;
}

.card-header-tabs .nav-link {
  border-top-width: 0;
}

.card-body .card-img {
  border-radius: 0.1875rem;
}

.card-img-actions {
  position: relative;
}

.card-img-actions:hover .card-img-actions-overlay, .card-img-actions:focus .card-img-actions-overlay {
  opacity: 1;
  visibility: visible;
}

.card-img-actions-overlay {
  display: flex;
  align-items: center;
  justify-content: center;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  background-color: rgba(0, 0, 0, 0.75);
  color: #fff;
  opacity: 0;
  visibility: hidden;
  transition: all ease-in-out 0.15s;
}

@media (prefers-reduced-motion: reduce) {
  .card-img-actions-overlay {
    transition: none;
  }
}

[data-action] {
  cursor: pointer;
}

[data-action]:after {
  font-family: "icomoon";
  font-size: 1rem;
  min-width: 1rem;
  text-align: center;
  display: inline-block;
  vertical-align: middle;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

[data-action="collapse"]:after {
  content: '\e9c1';
}

[data-action="reload"]:after {
  content: '\e9fb';
}

[data-action="remove"]:after {
  content: '\ed6a';
  font-size: 0.8125rem;
}

[data-action="move"] {
  cursor: default;
}

[data-action="move"]:after {
  content: '\e986';
}

[data-action="fullscreen"]:after {
  content: '\e9f9';
}

[data-action="fullscreen"][data-fullscreen="active"]:after {
  content: '\e9fa';
}

[data-action="modal"]:after {
  content: '\e9eb';
}

.card-group-control .card-title > a {
  display: inline-block;
}

.card-group-control .card-title > a:before {
  content: '\ed5b';
  font-family: "icomoon";
  position: absolute;
  top: 50%;
  margin-top: -0.5rem;
  font-size: 1rem;
  font-weight: 400;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.card-group-control .card-title > a.collapsed:before {
  content: '\ed5a';
}

.card-group-control-left .card-title > a {
  padding-left: 1.625rem;
}

.card-group-control-left .card-title > a:before {
  left: 0;
}

.card-group-control-right .card-title > a {
  padding-right: 1.625rem;
}

.card-group-control-right .card-title > a:before {
  right: 0;
}

/* ------------------------------------------------------------------------------
 *
 *  # Breadcrumb component
 *
 *  Overrides for breadcrumb bootstrap component
 *
 * ---------------------------------------------------------------------------- */
.breadcrumb {
  padding: 0;
}

.breadcrumb-item {
  padding: 0.625rem 0;
  color: inherit;
}

.breadcrumb-item i {
  font-size: 0.75rem;
}

a.breadcrumb-item, a.breadcrumb-elements-item {
  display: inline-block;
  color: inherit;
  transition: opacity ease-in-out 0.15s;
}

@media (prefers-reduced-motion: reduce) {
  a.breadcrumb-item, a.breadcrumb-elements-item {
    transition: none;
  }
}

a.breadcrumb-item:hover, a.breadcrumb-elements-item:hover, a.breadcrumb-item:focus, a.breadcrumb-elements-item:focus,
.show > a.breadcrumb-item,
.show > a.breadcrumb-elements-item {
  opacity: 0.75;
}

.page-header-content > .breadcrumb {
  padding-top: 0;
  padding-bottom: 1.25rem;
}

.page-header-content > .breadcrumb:first-child {
  padding-bottom: 0;
  padding-top: 1.25rem;
}

.breadcrumb-dash > .breadcrumb-item + .breadcrumb-item:before {
  content: '\2013\00a0';
}

.breadcrumb-arrow > .breadcrumb-item + .breadcrumb-item:before {
  content: '\2192\00a0';
}

.breadcrumb-arrows > .breadcrumb-item + .breadcrumb-item:before {
  content: '\00bb\00a0';
}

.breadcrumb-caret > .breadcrumb-item + .breadcrumb-item:before {
  content: '\203A\00a0';
}

.breadcrumb-line {
  position: relative;
  padding-left: 1.25rem;
  padding-right: 1.25rem;
  border-top: 1px solid transparent;
  border-bottom: 1px solid transparent;
}

.breadcrumb-line:not(.breadcrumb-line-component):first-child {
  border-top-width: 0;
}

.breadcrumb-line:last-child {
  margin-bottom: 1.25rem;
}

.page-header-light .breadcrumb-line:last-child,
.page-header-dark .breadcrumb-line:last-child {
  margin-bottom: 0;
}

.breadcrumb-line-light {
  background-color: #fafafa;
  border-color: #ddd;
  color: #333;
}

.page-header-light .breadcrumb-line-light:not(.breadcrumb-line-component):last-child {
  border-bottom-width: 0;
}

.page-header-dark .breadcrumb-line-light:not(.breadcrumb-line-component) {
  border-top-width: 0;
}

.page-header-dark .breadcrumb-line-light:not(.breadcrumb-line-component):first-child {
  border-bottom-width: 0;
}

.breadcrumb-line-light.breadcrumb-line-component {
  border-color: #ddd;
}

.breadcrumb-line-dark {
  background-color: #273246;
  border-color: transparent;
  color: #fff;
}

.page-header-dark .breadcrumb-line-dark:not(.breadcrumb-line-component):last-child {
  border-bottom-width: 0;
}

.breadcrumb-line-dark .breadcrumb-item.active {
  color: inherit;
}

.page-header-dark .breadcrumb-line-dark {
  border-color: rgba(255, 255, 255, 0.25);
}

.breadcrumb-line-component {
  border: 1px solid transparent;
  border-radius: 0.1875rem;
}

.page-header .breadcrumb-line-component {
  margin-left: 1.25rem;
  margin-right: 1.25rem;
}

.breadcrumb-elements-item {
  padding: 0.625rem 0;
}

.breadcrumb-elements-item + .breadcrumb-elements-item {
  margin-left: 1.25rem;
}

/* ------------------------------------------------------------------------------
 *
 *  # Pagination component
 *
 *  Overrides for pagination component
 *
 * ---------------------------------------------------------------------------- */
.pagination {
  margin-bottom: 0;
}

.page-link {
  text-align: center;
  min-width: 2.25003rem;
  transition: all ease-in-out 0.15s;
}

@media (prefers-reduced-motion: reduce) {
  .page-link {
    transition: none;
  }
}

.pagination-lg .page-link {
  min-width: 2.50002rem;
}

.pagination-sm .page-link {
  min-width: 2.00002rem;
}

.pagination-rounded .page-item:first-child .page-link {
  border-top-left-radius: 100px;
  border-bottom-left-radius: 100px;
}

.pagination-rounded .page-item:last-child .page-link {
  border-top-right-radius: 100px;
  border-bottom-right-radius: 100px;
}

.pagination-flat .page-item.active .page-link {
  background-color: #2196F3;
}

.pagination-flat .page-item.disabled .page-link {
  border-color: transparent;
}

.pagination-flat .page-link {
  background-color: transparent;
  border-color: transparent;
  margin-left: 2px;
  border-radius: 0.1875rem;
}

.pagination-flat .page-link:hover, .pagination-flat .page-link:focus {
  background-color: #f5f5f5;
}

.pagination-flat.pagination-rounded .page-link {
  border-radius: 100px;
}

.pagination-separated .page-link {
  margin-left: 0.625rem;
  border-radius: 0.1875rem;
}

.pagination-separated.pagination-rounded .page-link {
  border-radius: 100px;
}

.pagination-pager .page-item {
  border-radius: 0.1875rem;
}

.pagination-pager .page-link {
  margin-left: 1.25rem;
  border-radius: 0.1875rem;
}

.pagination-pager.pagination-rounded .page-link {
  border-radius: 100px;
}

.pagination-pager-linked .page-item.disabled .page-link {
  background-color: transparent;
  border-color: transparent;
}

.pagination-pager-linked .page-link {
  color: #2196F3;
  background-color: transparent;
  border-color: transparent;
}

.pagination-pager-linked .page-link:hover, .pagination-pager-linked .page-link:focus {
  color: #fff;
  background-color: #2196F3;
  border-color: #2196F3;
}

.pagination-pager:not(.pagination-rounded).pagination-lg .page-link {
  border-radius: 0.25rem;
}

.pagination-pager:not(.pagination-rounded).pagination-sm .page-link {
  border-radius: 0.125rem;
}

/* ------------------------------------------------------------------------------
 *
 *  # Badge component
 *
 *  Overrides for badge bootstrap component
 *
 * ---------------------------------------------------------------------------- */
.badge.dropdown-toggle:after {
  font-size: 85%;
  vertical-align: baseline;
}

.badge-light {
  background-color: #f5f5f5;
}

a.badge {
  transition: all ease-in-out 0.15s;
}

@media (prefers-reduced-motion: reduce) {
  a.badge {
    transition: none;
  }
}

a.badge[class*=bg-]:not(.bg-transparent):not(.bg-white):not(.bg-light):hover, a.badge[class*=bg-]:not(.bg-transparent):not(.bg-white):not(.bg-light):focus,
.show > a.badge[class*=bg-]:not(.bg-transparent):not(.bg-white):not(.bg-light).dropdown-toggle {
  box-shadow: 0 0 0 62.5rem rgba(0, 0, 0, 0.075) inset;
}

.btn .badge {
  top: 0;
}

.badge-flat {
  background-color: transparent;
  border: 1px solid transparent;
  padding: calc(0.3125rem - 1px) calc(0.375rem - 1px);
}

.badge-flat[href]:hover, .badge-flat[href]:focus {
  background-color: transparent;
  box-shadow: none;
}

.badge-flat.badge-pill {
  padding-left: calc(0.4375rem - 1px);
  padding-right: calc(0.4375rem - 1px);
}

.badge-striped {
  padding: 0.4375rem 0.5rem;
  position: relative;
}

.badge-striped:before {
  content: '';
  width: 0;
  position: absolute;
  top: 0;
  bottom: 0;
}

.badge-striped-left {
  padding-left: calc(0.375rem + 2px);
  border-top-left-radius: 0;
  border-bottom-left-radius: 0;
}

.badge-striped-left:before {
  left: 0;
  border-left: 2px solid;
  border-left-color: inherit;
}

.badge-striped-right {
  padding-right: calc(0.375rem + 2px);
  border-top-right-radius: 0;
  border-bottom-right-radius: 0;
}

.badge-striped-right:before {
  right: 0;
  border-right: 2px solid;
  border-right-color: inherit;
}

.badge-icon {
  padding: 0.375rem;
  line-height: 1;
}

.badge-icon > i {
  top: 0;
}

.badge-float {
  position: absolute;
  right: -0.5rem;
  top: -0.5rem;
}

.badge-mark {
  padding: 0;
  border: 2px solid;
  width: 0.5rem;
  height: 0.5rem;
  border-radius: 100px;
}

.badge-mark:empty {
  display: inline-block;
}

/* ------------------------------------------------------------------------------
 *
 *  # Alert component
 *
 *  Overrides for alert bootstrap component
 *
 * ---------------------------------------------------------------------------- */
.alert-dismissible .close:hover, .alert-dismissible .close:focus {
  color: inherit;
}

.alert[class*=bg-]:not(.bg-transparent):not(.bg-white):not(.bg-light) .alert-link {
  color: inherit;
  border-bottom-color: rgba(255, 255, 255, 0.85);
}

.alert-rounded {
  padding-left: 1.875rem;
  padding-right: 1.875rem;
  border-radius: 100px;
}

.alert-rounded.alert-dismissible .close {
  border-top-right-radius: 100px;
  border-bottom-right-radius: 100px;
}

.alert[class*=alert-styled-]:after {
  content: '\e9a2';
  font-family: "icomoon";
  color: #fff;
  width: 2.875rem;
  left: -2.875rem;
  text-align: center;
  position: absolute;
  top: 50%;
  margin-top: -0.5rem;
  font-size: 1rem;
  font-weight: 400;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.alert[class*=alert-styled-].alert-danger:after, .alert[class*=alert-styled-][class*=bg-danger]:after {
  content: '\ed64';
}

.alert[class*=alert-styled-].alert-success:after, .alert[class*=alert-styled-][class*=bg-success]:after {
  content: '\ed6e';
}

.alert[class*=alert-styled-].alert-warning:after, .alert[class*=alert-styled-][class*=bg-warning]:after {
  content: '\e9bd';
}

.alert[class*=alert-styled-].alert-info:after, .alert[class*=alert-styled-][class*=bg-info]:after {
  content: '\e9b9';
}

.alert.alert-styled-left {
  border-left-width: 2.875rem;
}

.alert.alert-styled-left[class*=bg-]:not(.bg-white):not(.bg-light) {
  border-left-color: rgba(0, 0, 0, 0.15) !important;
}

.alert.alert-styled-right {
  border-right-width: 2.875rem;
}

.alert.alert-styled-right:after {
  left: auto;
  right: -2.875rem;
}

.alert.alert-styled-right[class*=bg-]:not(.bg-white):not(.bg-light) {
  border-right-color: rgba(0, 0, 0, 0.15) !important;
}

.alert.alert-styled-custom:after {
  content: "\e81b";
}

.alert:not(.ui-pnotify)[class*=alert-arrow-]:before,
.alert.ui-pnotify[class*=alert-arrow-] > .brighttheme:before {
  content: "";
  display: inline-block;
  position: absolute;
  top: 50%;
  left: 0;
  border-left: 5px solid;
  border-top: 5px solid transparent;
  border-bottom: 5px solid transparent;
  border-left-color: inherit;
  margin-top: -5px;
}

.alert:not(.ui-pnotify).alert-arrow-right:before,
.alert.ui-pnotify.alert-arrow-right > .brighttheme:before {
  left: auto;
  right: 0;
  border-left: 0;
  border-right: 5px solid;
  border-right-color: inherit;
}

/* ------------------------------------------------------------------------------
 *
 *  # Progress bar component
 *
 *  Overrides for progress bar component
 *
 * ---------------------------------------------------------------------------- */
.progress {
  position: relative;
}

.progress-bar {
  width: 0;
  overflow: hidden;
  white-space: nowrap;
}

.progress .progressbar-back-text,
.progress .progressbar-front-text {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  text-align: center;
  font-size: 0.60938rem;
}

.progress .progressbar-back-text {
  align-self: center;
}

.progress.right {
  justify-content: flex-end;
}

.progress.vertical {
  width: 3rem;
  height: 100%;
  display: inline-block;
}

.progress.vertical + .progress.vertical {
  margin-left: 0.625rem;
}

.progress.vertical .progress-bar {
  width: 100%;
  height: 0;
  transition: height 0.6s ease;
}

@media (prefers-reduced-motion: reduce) {
  .progress.vertical .progress-bar {
    transition: none;
  }
}

.progress.vertical.bottom .progressbar-back-text,
.progress.vertical.bottom .progressbar-front-text {
  top: auto;
  bottom: 0;
}

.progress.vertical.bottom .progress-bar {
  position: absolute;
  bottom: 0;
}

/* ------------------------------------------------------------------------------
 *
 *  # Media object component
 *
 *  Overrides for media object component
 *
 * ---------------------------------------------------------------------------- */
.media {
  margin-top: 1.25rem;
}

.media.card-body, .media:first-child {
  margin-top: 0;
}

.media-list {
  list-style: none;
  padding-left: 0;
  margin-bottom: 0;
}

.media-title {
  margin-bottom: 0.125rem;
}

.img-preview {
  max-height: 5rem;
}

.media-list-bordered .media {
  margin-top: 0;
  padding: 1rem 1.25rem;
  border-top: 1px solid #ddd;
}

.media-list-linked .media {
  padding: 1rem 1.25rem;
}

.media-list-linked li.media {
  margin-top: 0;
  border-top: 1px solid #ddd;
  border-bottom: 1px solid #ddd;
}

.media-list-linked.media-list-bordered li.media {
  border-bottom: 0;
}

.media-list-linked a.media {
  color: inherit;
  transition: all ease-in-out 0.15s;
}

@media (prefers-reduced-motion: reduce) {
  .media-list-linked a.media {
    transition: none;
  }
}

.media-list-linked a.media:hover {
  background-color: rgba(0, 0, 0, 0.04);
}

/* ------------------------------------------------------------------------------
 *
 *  # List group component
 *
 *  Overrides for list group component
 *
 * ---------------------------------------------------------------------------- */
.list-group {
  background-color: #fff;
  border: 1px solid rgba(0, 0, 0, 0.125);
  padding: 0.5rem 0;
  background-clip: padding-box;
  border-radius: 0.1875rem;
}

.list-group-item {
  display: flex;
  align-items: center;
  margin-bottom: 0;
  border-width: 0;
  background-color: transparent;
  transition: all ease-in-out 0.15s;
}

@media (prefers-reduced-motion: reduce) {
  .list-group-item {
    transition: none;
  }
}

.list-group-item:first-child {
  border-top-left-radius: 0;
  border-top-right-radius: 0;
}

.list-group-item:last-child {
  border-bottom-right-radius: 0;
  border-bottom-left-radius: 0;
}

.list-group-item.active .badge:not(.badge-mark) {
  background-color: #fff !important;
  color: #333 !important;
}

.list-group-item.active .badge-mark[class*=bg-] {
  background-color: #fff !important;
  border-color: #fff !important;
}

.list-group-item.active .badge-mark[class*=border-] {
  border-color: #fff !important;
}

.list-group-item.disabled, .list-group-item:disabled {
  cursor: default;
}

.list-group-flush {
  border: 0;
  border-radius: 0;
  box-shadow: none;
}

.list-group-divider {
  padding: 0;
  margin: 0.5rem 0;
  border-top-width: 1px;
}

.list-group-bordered {
  padding: 0;
}

.list-group-bordered .list-group-item {
  border-top-width: 1px;
  border-bottom-width: 1px;
  margin-bottom: -1px;
}

.list-group-bordered .list-group-item:first-child {
  border-top-width: 0;
  border-top-left-radius: 0.1875rem;
  border-top-right-radius: 0.1875rem;
}

.list-group-bordered .list-group-item:last-child {
  border-bottom-right-radius: 0.1875rem;
  border-bottom-left-radius: 0.1875rem;
}

.list-group-bordered[class*=bg-]:not(.bg-light):not(.bg-white):not(.bg-transparent) .list-group-item {
  border-top-color: rgba(255, 255, 255, 0.1);
  border-bottom-color: rgba(255, 255, 255, 0.1);
}

.list-group[class*=bg-]:not(.bg-light):not(.bg-transparent):not(.bg-white) {
  border-radius: 0.1875rem;
}

.list-group[class*=bg-]:not(.bg-light):not(.bg-transparent):not(.bg-white) .list-group-item-action:not(.active):not(.disabled) {
  color: rgba(255, 255, 255, 0.9);
}

.list-group[class*=bg-]:not(.bg-light):not(.bg-transparent):not(.bg-white) .list-group-item-action:not(.active):not(.disabled):hover, .list-group[class*=bg-]:not(.bg-light):not(.bg-transparent):not(.bg-white) .list-group-item-action:not(.active):not(.disabled):focus {
  background-color: rgba(0, 0, 0, 0.1);
  color: #fff;
}

.list-group[class*=bg-]:not(.bg-light):not(.bg-transparent):not(.bg-white) .list-group-item {
  color: #fff;
}

.list-group[class*=bg-]:not(.bg-light):not(.bg-transparent):not(.bg-white) .list-group-item.active {
  background-color: rgba(0, 0, 0, 0.2);
}

.list-group[class*=bg-]:not(.bg-light):not(.bg-transparent):not(.bg-white) .list-group-item.disabled, .list-group[class*=bg-]:not(.bg-light):not(.bg-transparent):not(.bg-white) .list-group-item:disabled {
  color: rgba(255, 255, 255, 0.6);
  background-color: transparent;
}

.list-group[class*=bg-]:not(.bg-light):not(.bg-transparent):not(.bg-white) .list-group-divider {
  border-top-color: rgba(255, 255, 255, 0.4);
}

.list-group-item-primary {
  color: #114e7e;
  background-color: #E3F2FD;
}

.list-group-item-primary.list-group-item-action:hover, .list-group-item-primary.list-group-item-action:focus {
  color: #114e7e;
  background-color: #cbe7fb;
}

.list-group-item-primary.list-group-item-action.active {
  color: #fff;
  background-color: #114e7e;
  border-color: #114e7e;
}

.list-group-item-secondary {
  color: #3e3e3e;
  background-color: #eee;
}

.list-group-item-secondary.list-group-item-action:hover, .list-group-item-secondary.list-group-item-action:focus {
  color: #3e3e3e;
  background-color: #e1e1e1;
}

.list-group-item-secondary.list-group-item-action.active {
  color: #fff;
  background-color: #3e3e3e;
  border-color: #3e3e3e;
}

.list-group-item-success {
  color: #285b2a;
  background-color: #E8F5E9;
}

.list-group-item-success.list-group-item-action:hover, .list-group-item-success.list-group-item-action:focus {
  color: #285b2a;
  background-color: #d6edd8;
}

.list-group-item-success.list-group-item-action.active {
  color: #fff;
  background-color: #285b2a;
  border-color: #285b2a;
}

.list-group-item-info {
  color: #00626e;
  background-color: #E0F7FA;
}

.list-group-item-info.list-group-item-action:hover, .list-group-item-info.list-group-item-action:focus {
  color: #00626e;
  background-color: #caf1f6;
}

.list-group-item-info.list-group-item-action.active {
  color: #fff;
  background-color: #00626e;
  border-color: #00626e;
}

.list-group-item-warning {
  color: #853a23;
  background-color: #FFF3E0;
}

.list-group-item-warning.list-group-item-action:hover, .list-group-item-warning.list-group-item-action:focus {
  color: #853a23;
  background-color: #ffe9c7;
}

.list-group-item-warning.list-group-item-action.active {
  color: #fff;
  background-color: #853a23;
  border-color: #853a23;
}

.list-group-item-danger {
  color: #7f231c;
  background-color: #FFEBEE;
}

.list-group-item-danger.list-group-item-action:hover, .list-group-item-danger.list-group-item-action:focus {
  color: #7f231c;
  background-color: #ffd2d8;
}

.list-group-item-danger.list-group-item-action.active {
  color: #fff;
  background-color: #7f231c;
  border-color: #7f231c;
}

.list-group-item-light {
  color: #828282;
  background-color: #f5f5f5;
}

.list-group-item-light.list-group-item-action:hover, .list-group-item-light.list-group-item-action:focus {
  color: #828282;
  background-color: #e8e8e8;
}

.list-group-item-light.list-group-item-action.active {
  color: #fff;
  background-color: #828282;
  border-color: #828282;
}

.list-group-item-dark {
  color: #1a2225;
  background-color: #ECEFF1;
}

.list-group-item-dark.list-group-item-action:hover, .list-group-item-dark.list-group-item-action:focus {
  color: #1a2225;
  background-color: #dde3e6;
}

.list-group-item-dark.list-group-item-action.active {
  color: #fff;
  background-color: #1a2225;
  border-color: #1a2225;
}

/* ------------------------------------------------------------------------------
 *
 *  # Close button
 *
 *  Overrides of default close button styles
 *
 * ---------------------------------------------------------------------------- */
.close {
  cursor: pointer;
  opacity: .75;
  transition: color ease-in-out 0.15s, opacity ease-in-out 0.15s;
}

@media (prefers-reduced-motion: reduce) {
  .close {
    transition: none;
  }
}

.close:hover, .close:focus {
  outline: 0;
  opacity: 1;
}

/* ------------------------------------------------------------------------------
 *
 *  # Modal component
 *
 *  Overrides for modal dialog component
 *
 * ---------------------------------------------------------------------------- */
.modal-header {
  position: relative;
  border-top-left-radius: 0.1875rem;
  border-top-right-radius: 0.1875rem;
}

.modal-header .close {
  color: inherit;
}

.modal-header:not([class*=bg-]) {
  padding-bottom: 0;
  border-bottom-width: 0;
}

.modal-footer:not([class*=bg-]) {
  padding-top: 0;
  border-top-width: 0;
}

[class*=table-responsive] + .modal-footer,
.table + .modal-footer {
  border-top-width: 1px;
  border-top-color: #ddd;
}

@media (min-width: 576px) {
  .modal-xs {
    max-width: 300px;
  }
  .modal-full {
    max-width: 94%;
    margin-left: 3%;
    margin-right: 3%;
  }
}

/* ------------------------------------------------------------------------------
 *
 *  # Tooltip component
 *
 *  Override and extend default tooltip styles.
 *
 * ---------------------------------------------------------------------------- */
.bs-tooltip-top .arrow[class*=border-]:before, .bs-tooltip-auto[x-placement^="top"] .arrow[class*=border-]:before {
  border-top-color: inherit;
}

.bs-tooltip-right .arrow[class*=border-]:before, .bs-tooltip-auto[x-placement^="right"] .arrow[class*=border-]:before {
  border-right-color: inherit;
}

.bs-tooltip-bottom .arrow[class*=border-]:before, .bs-tooltip-auto[x-placement^="bottom"] .arrow[class*=border-]:before {
  border-bottom-color: inherit;
}

.bs-tooltip-left .arrow[class*=border-]:before, .bs-tooltip-auto[x-placement^="left"] .arrow[class*=border-]:before {
  border-left-color: inherit;
}

/* ------------------------------------------------------------------------------
 *
 *  # Popover component
 *
 *  Overrides for popover component
 *
 * ---------------------------------------------------------------------------- */
.popover-header {
  font-weight: 500;
  padding-bottom: 0;
  border-bottom-width: 0;
}

.popover-header[class*=bg-]:not(.bg-white):not(.bg-light) {
  padding-top: 0.75rem;
  padding-bottom: 0.75rem;
  border-bottom-width: 1px;
}

.bs-popover-top[class*=bg-]:not(.bg-white):not(.bg-light) .arrow, .bs-popover-auto[class*=bg-]:not(.bg-white):not(.bg-light)[x-placement^="top"] .arrow, .bs-popover-top[class*=bg-]:not(.bg-white):not(.bg-light) .arrow:after, .bs-popover-auto[class*=bg-]:not(.bg-white):not(.bg-light)[x-placement^="top"] .arrow:after, .bs-popover-top[class*=bg-]:not(.bg-white):not(.bg-light) .arrow:before, .bs-popover-auto[class*=bg-]:not(.bg-white):not(.bg-light)[x-placement^="top"] .arrow:before, .bs-popover-top[class*=border-] .arrow, .bs-popover-auto[class*=border-][x-placement^="top"] .arrow, .bs-popover-top[class*=border-] .arrow:after, .bs-popover-auto[class*=border-][x-placement^="top"] .arrow:after, .bs-popover-top[class*=border-] .arrow:before, .bs-popover-auto[class*=border-][x-placement^="top"] .arrow:before {
  border-top-color: inherit;
}

.bs-popover-right[class*=bg-]:not(.bg-white):not(.bg-light) .arrow, .bs-popover-auto[class*=bg-]:not(.bg-white):not(.bg-light)[x-placement^="right"] .arrow, .bs-popover-right[class*=bg-]:not(.bg-white):not(.bg-light) .arrow:after, .bs-popover-auto[class*=bg-]:not(.bg-white):not(.bg-light)[x-placement^="right"] .arrow:after, .bs-popover-right[class*=bg-]:not(.bg-white):not(.bg-light) .arrow:before, .bs-popover-auto[class*=bg-]:not(.bg-white):not(.bg-light)[x-placement^="right"] .arrow:before, .bs-popover-right[class*=border-] .arrow, .bs-popover-auto[class*=border-][x-placement^="right"] .arrow, .bs-popover-right[class*=border-] .arrow:after, .bs-popover-auto[class*=border-][x-placement^="right"] .arrow:after, .bs-popover-right[class*=border-] .arrow:before, .bs-popover-auto[class*=border-][x-placement^="right"] .arrow:before {
  border-right-color: inherit;
}

.bs-popover-bottom[class*=bg-]:not(.bg-white):not(.bg-light) .arrow, .bs-popover-auto[class*=bg-]:not(.bg-white):not(.bg-light)[x-placement^="bottom"] .arrow, .bs-popover-bottom[class*=bg-]:not(.bg-white):not(.bg-light) .arrow:after, .bs-popover-auto[class*=bg-]:not(.bg-white):not(.bg-light)[x-placement^="bottom"] .arrow:after, .bs-popover-bottom[class*=bg-]:not(.bg-white):not(.bg-light) .arrow:before, .bs-popover-auto[class*=bg-]:not(.bg-white):not(.bg-light)[x-placement^="bottom"] .arrow:before, .bs-popover-bottom[class*=border-] .arrow, .bs-popover-auto[class*=border-][x-placement^="bottom"] .arrow, .bs-popover-bottom[class*=border-] .arrow:after, .bs-popover-auto[class*=border-][x-placement^="bottom"] .arrow:after, .bs-popover-bottom[class*=border-] .arrow:before, .bs-popover-auto[class*=border-][x-placement^="bottom"] .arrow:before {
  border-bottom-color: inherit;
}

.bs-popover-left[class*=bg-]:not(.bg-white):not(.bg-light) .arrow, .bs-popover-auto[class*=bg-]:not(.bg-white):not(.bg-light)[x-placement^="left"] .arrow, .bs-popover-left[class*=bg-]:not(.bg-white):not(.bg-light) .arrow:after, .bs-popover-auto[class*=bg-]:not(.bg-white):not(.bg-light)[x-placement^="left"] .arrow:after, .bs-popover-left[class*=bg-]:not(.bg-white):not(.bg-light) .arrow:before, .bs-popover-auto[class*=bg-]:not(.bg-white):not(.bg-light)[x-placement^="left"] .arrow:before, .bs-popover-left[class*=border-] .arrow, .bs-popover-auto[class*=border-][x-placement^="left"] .arrow, .bs-popover-left[class*=border-] .arrow:after, .bs-popover-auto[class*=border-][x-placement^="left"] .arrow:after, .bs-popover-left[class*=border-] .arrow:before, .bs-popover-auto[class*=border-][x-placement^="left"] .arrow:before {
  border-left-color: inherit;
}

/* ------------------------------------------------------------------------------
 *
 *  # Utilities
 *
 *  Import Bootstrap utilities with overrides
 *
 * ---------------------------------------------------------------------------- */
/* ------------------------------------------------------------------------------
 *
 *  # Background utility
 *
 *  Override and extend default background utility.
 *
 * ---------------------------------------------------------------------------- */
[class*=bg-]:not(.bg-transparent):not(.bg-light):not(.bg-white):not(.btn-outline):not(body) {
  color: #fff;
}

/* ------------------------------------------------------------------------------
 *
 *  # Core layout
 *
 *  Content area, sidebar, page header and boxed layout styles
 *
 * ---------------------------------------------------------------------------- */
/* ------------------------------------------------------------------------------
 *
 *  # Global configuration
 *
 *  Here you can change main theme, enable or disable certain components and
 *  optional styles. This allows you to include only components that you need.
 *
 *  'true'  - enables component and includes it to main CSS file.
 *  'false' - disables component and excludes it from main CSS file.
 *
 *  Layout helper: @if $layout == 'base' {...}
 *  Theme helper: @if $theme == 'material' {...}
 *  Component helper: @if $enable-* {...}
 *
 * ---------------------------------------------------------------------------- */
/* ------------------------------------------------------------------------------
 *
 *  # Custom Limitless functions
 *
 *  Utility mixins and functions for evalutating source code across our variables, maps, and mixins.
 *
 * ---------------------------------------------------------------------------- */
/* ------------------------------------------------------------------------------
 *
 *  # Custom template mixins
 *
 *  All custom mixins are prefixed with "ll-" to avoid conflicts
 *
 * ---------------------------------------------------------------------------- */
/* ------------------------------------------------------------------------------
 *
 *  # Main colors
 *
 *  List of the template main color palettes
 *
 * ---------------------------------------------------------------------------- */
/* ------------------------------------------------------------------------------
 *
 *  # Default Bootstrap variable overrides
 *
 *  Variables should follow the `$component-state-property-size` formula for
 *  consistent naming. Ex: $nav-link-disabled-color and $modal-content-box-shadow-xs.
 *  Also includes custom variables, all marked with "!default" flag.
 *
 * ---------------------------------------------------------------------------- */
/* ------------------------------------------------------------------------------
 *
 *  # Additional variables
 *
 *  Mainly 3rd party libraries and additional variables for default
 *  Bootstrap components.
 *
 * ---------------------------------------------------------------------------- */
/* ------------------------------------------------------------------------------
 *
 *  # Mixins
 *
 *  Import Bootstrap mixins with overrides
 *
 * ---------------------------------------------------------------------------- */
/* ------------------------------------------------------------------------------
 *
 *  # Badge mixin
 *
 *  Override and extend default badge mixin.
 *
 * ---------------------------------------------------------------------------- */
/* ------------------------------------------------------------------------------
 *
 *  # Buttons mixin
 *
 *  Override and extend default buttons mixin.
 *
 * ---------------------------------------------------------------------------- */
/* ------------------------------------------------------------------------------
 *
 *  # Caret mixin
 *
 *  Override and extend default cared mixin.
 *
 * ---------------------------------------------------------------------------- */
/* ------------------------------------------------------------------------------
 *
 *  # Forms mixin
 *
 *  Override and extend default forms mixin.
 *
 * ---------------------------------------------------------------------------- */
/* ------------------------------------------------------------------------------
 *
 *  # Background mixin
 *
 *  Override and extend default background mixin.
 *
 * ---------------------------------------------------------------------------- */
/* ------------------------------------------------------------------------------
 *
 *  # Main content layout
 *
 *  Styles for main structure of content area
 *
 * ---------------------------------------------------------------------------- */
html {
  display: flex;
  flex-direction: column;
}

body {
  min-height: 100vh;
  display: flex;
  flex-direction: column;
  flex: 1;
}

.page-content {
  display: flex;
  flex-grow: 1;
}

.content-wrapper {
  display: flex;
  flex-direction: column;
  flex: 1;
  overflow: auto;
}

.content {
  padding: 1.25rem 1.25rem;
  flex-grow: 1;
}

.content::after {
  display: block;
  clear: both;
  content: "";
}

/* ------------------------------------------------------------------------------
 *
 *  # Page header
 *
 *  Page header components and color options
 *
 * ---------------------------------------------------------------------------- */
.page-title {
  padding: 2rem 0;
  position: relative;
}

.page-title small {
  display: inline-block;
  margin-left: 0.625rem;
}

.page-title small:before {
  content: '/';
  margin-right: 0.875rem;
}

.page-title small.d-block {
  margin-left: 0;
}

.page-title small.d-block:before {
  content: none;
}

.page-title small.d-block,
.page-title .breadcrumb {
  margin-left: 1.875rem;
}

.page-title h1, .page-title h2, .page-title h3, .page-title h4, .page-title h5, .page-title h6 {
  margin: 0;
}

.page-header-content {
  position: relative;
  padding: 0 1.25rem;
}

.page-header-content[class*=border-bottom-] + .breadcrumb-line {
  border-top: 0;
}

.page-header-light {
  background-color: #fff;
  border-bottom: 1px solid #ddd;
}

.page-header-light.has-cover {
  background: url(/themeImages/backgrounds/seamless.png);
}

.page-header-dark {
  background-color: #273246;
  color: #fff;
  margin-bottom: 1.25rem;
}

.page-header-dark > .breadcrumb > li > a,
.page-header-dark > .breadcrumb > li + li:before,
.page-header-dark .page-header-content .breadcrumb > li > a,
.page-header-dark .page-header-content .breadcrumb > li + li:before {
  color: rgba(255, 255, 255, 0.9);
}

.page-header-dark > .breadcrumb > li > a:hover, .page-header-dark > .breadcrumb > li > a:focus,
.page-header-dark .page-header-content .breadcrumb > li > a:hover,
.page-header-dark .page-header-content .breadcrumb > li > a:focus {
  color: #fff;
  opacity: 1;
}

.page-header-dark > .breadcrumb > .active,
.page-header-dark .page-header-content .breadcrumb > .active {
  color: rgba(255, 255, 255, 0.5);
}

.page-header-dark.has-cover {
  background: url(/themeImages/login_cover.jpg);
  background-size: cover;
}

/* ------------------------------------------------------------------------------
 *
 *  # Sidebar layouts
 *
 *  Sidebar components, main navigation and sidebar itself
 *
 * ---------------------------------------------------------------------------- */
.sidebar {
  flex: 0 0 auto;
  width: 16.875rem;
  z-index: 1040;
}

.sidebar:not(.sidebar-component) {
  position: fixed;
  top: 0;
  bottom: 0;
  box-sizing: content-box;
  transition: all ease-in-out 0.15s;
}

@media (prefers-reduced-motion: reduce) {
  .sidebar:not(.sidebar-component) {
    transition: none;
  }
}

.sidebar-main,
.sidebar-main .sidebar-content, .sidebar-secondary,
.sidebar-secondary .sidebar-content {
  left: -18.5625rem;
}

.sidebar-right,
.sidebar-right .sidebar-content {
  right: -18.5625rem;
}

.sidebar.sidebar-fullscreen {
  width: 100%;
}

.sidebar:not(.sidebar-component) .sidebar-content {
  position: fixed;
  top: 3.12503rem;
  bottom: 0;
  width: inherit;
  overflow-y: scroll;
  -webkit-overflow-scrolling: touch;
  transition: left ease-in-out 0.15s, right ease-in-out 0.15s;
}

@media (prefers-reduced-motion: reduce) {
  .sidebar:not(.sidebar-component) .sidebar-content {
    transition: none;
  }
}

.navbar-lg:first-child ~ .page-content .sidebar:not(.sidebar-component) .sidebar-content {
  top: 3.37503rem;
}

.navbar-sm:first-child ~ .page-content .sidebar:not(.sidebar-component) .sidebar-content {
  top: 2.87503rem;
}

.sidebar-mobile-main .sidebar-main {
  box-shadow: 0.25rem 0 1rem rgba(0, 0, 0, 0.35);
}

.sidebar-mobile-main .sidebar-main,
.sidebar-mobile-main .sidebar-main .sidebar-content {
  left: 0;
}

.sidebar-mobile-secondary .sidebar-secondary {
  box-shadow: 0.25rem 0 1rem rgba(0, 0, 0, 0.35);
}

.sidebar-mobile-secondary .sidebar-secondary,
.sidebar-mobile-secondary .sidebar-secondary .sidebar-content {
  left: 0;
}

.sidebar-mobile-right .sidebar-right {
  display: block;
  box-shadow: -0.25rem 0 1rem rgba(0, 0, 0, 0.35);
}

.sidebar-mobile-right .sidebar-right,
.sidebar-mobile-right .sidebar-right .sidebar-content {
  right: 0;
}

.sidebar-mobile-component .sidebar-component {
  display: block;
}

.nav-sidebar {
  flex-direction: column;
}

.nav-sidebar .nav-item:not(.nav-item-header):first-child {
  padding-top: 0.5rem;
}

.nav-sidebar .nav-item:not(.nav-item-header):last-child {
  padding-bottom: 0.5rem;
}

.nav-sidebar .nav-item:not(.nav-item-divider) {
  margin-bottom: 1px;
}

.nav-sidebar .nav-item:not(.nav-item-divider):last-child {
  margin-bottom: 0;
}

.nav-sidebar > .nav-item > .nav-link {
  font-weight: 500;
}

.nav-sidebar .nav-link {
  position: relative;
  display: flex;
  align-items: flex-start;
  padding: 0.75rem 1.25rem;
  transition: background-color ease-in-out 0.15s, color ease-in-out 0.15s;
}

@media (prefers-reduced-motion: reduce) {
  .nav-sidebar .nav-link {
    transition: none;
  }
}

.nav-sidebar .nav-link i {
  margin-right: 1.25rem;
  margin-top: 0.12502rem;
  margin-bottom: 0.12502rem;
  top: 0;
}

.nav-sidebar .nav-link .badge {
  transition: background-color ease-in-out 0.15s, border-color ease-in-out 0.15s;
}

@media (prefers-reduced-motion: reduce) {
  .nav-sidebar .nav-link .badge {
    transition: none;
  }
}

.nav-sidebar .nav-link.disabled, .nav-sidebar .nav-link.disabled:hover, .nav-sidebar .nav-link.disabled:focus {
  background-color: transparent;
  opacity: 0.5;
}

.nav-sidebar .nav-item-header {
  padding: 0.75rem 1.25rem;
  margin-top: 0.5rem;
}

.nav-sidebar .nav-item-header > i {
  display: none;
}

.nav-sidebar .nav-item-divider {
  margin: 0.5rem 0;
  height: 1px;
}

.nav-item-submenu > .nav-link {
  padding-right: 2.75rem;
}

.nav-item-submenu > .nav-link:after {
  content: '\e9c7';
  font-family: "icomoon";
  display: inline-block;
  font-size: 1rem;
  vertical-align: middle;
  line-height: 1;
  position: absolute;
  top: 0.75rem;
  margin-top: 0.12502rem;
  right: 1.25rem;
  transition: transform 0.25s ease-in-out;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

@media (prefers-reduced-motion: reduce) {
  .nav-item-submenu > .nav-link:after {
    transition: none;
  }
}

.nav-item-submenu.nav-item-open > .nav-link:after {
  transform: rotate(90deg);
}

.nav-group-sub {
  display: none;
}

.nav-group-sub .nav-link {
  padding: 0.625rem 1.25rem 0.625rem 3.5rem;
}

.nav-group-sub .nav-group-sub .nav-link {
  padding-left: 4.75rem;
}

.nav-group-sub .nav-group-sub .nav-group-sub .nav-link {
  padding-left: 6rem;
}

.nav-group-sub .nav-item-submenu > .nav-link:after {
  top: 0.625rem;
}

.nav-item-expanded > .nav-group-sub {
  display: block;
}

.nav-scrollspy .nav-link.active + .nav,
.nav-scrollspy .nav-item-open .nav-link:not(.active) + .nav {
  display: block;
}

.nav-scrollspy .nav-link.active:after {
  transform: rotate(90deg);
}

.nav-sidebar-icons-reverse .nav-link {
  padding-right: 3.5rem;
}

.nav-sidebar-icons-reverse .nav-link i {
  position: absolute;
  top: 0.75rem;
  right: 1.25rem;
  margin-right: 0;
}

.nav-sidebar-icons-reverse .nav-item-submenu .nav-link {
  padding-right: 4.5rem;
}

.nav-sidebar-icons-reverse .nav-item-submenu .nav-link:after {
  right: 3.25rem;
}

.nav-sidebar-icons-reverse .nav-group-sub .nav-link {
  padding-left: 2.5rem;
}

.nav-sidebar-icons-reverse .nav-group-sub .nav-link i {
  top: 0.625rem;
}

.nav-sidebar-icons-reverse .nav-group-sub .nav-group-sub .nav-link {
  padding-left: 3.75rem;
}

.nav-sidebar-icons-reverse .nav-group-sub .nav-group-sub .nav-group-sub .nav-link {
  padding-left: 5rem;
}

.nav-sidebar-bordered > .nav-item + .nav-item:not(.nav-item-divider) {
  margin-bottom: 0;
}

.sidebar .card:first-child .nav-sidebar-bordered {
  padding-top: 0;
}

.sidebar .card:first-child .nav-sidebar-bordered > .nav-item:first-child,
.sidebar .card:first-child .nav-sidebar-bordered > .nav-item-header:first-child {
  border-top: 0;
}

.sidebar .card:last-child .nav-sidebar-bordered {
  padding-bottom: 0;
}

.sidebar .card:last-child .nav-sidebar-bordered > .nav-item:last-child,
.sidebar .card:last-child .nav-sidebar-bordered > .nav-item-header:last-child {
  border-bottom: 0;
}

.sidebar-dark .nav-sidebar-bordered > .nav-item {
  border-top: 1px solid rgba(255, 255, 255, 0.1);
}

.sidebar-dark .nav-sidebar-bordered > .nav-item:last-child {
  border-bottom: 1px solid rgba(255, 255, 255, 0.1);
}

.sidebar-dark .nav-sidebar-bordered > .nav-item-header {
  background-color: rgba(0, 0, 0, 0.1);
  border-top: 1px solid rgba(255, 255, 255, 0.1);
  margin: 0;
}

.sidebar-light .nav-sidebar-bordered > .nav-item {
  border-top: 1px solid #eee;
}

.sidebar-light .nav-sidebar-bordered > .nav-item:last-child {
  border-bottom: 1px solid #eee;
}

.sidebar-light .nav-sidebar-bordered > .nav-item-header {
  background-color: #fafafa;
  border-top: 1px solid #eee;
  margin: 0;
}

.sidebar-mobile-toggler {
  display: flex;
  justify-content: space-between;
  align-items: center;
  border-top: 1px solid transparent;
  border-bottom: 1px solid transparent;
}

.sidebar-mobile-toggler a {
  padding: 0.875rem 1.25rem;
  transition: all ease-in-out 0.15s;
}

@media (prefers-reduced-motion: reduce) {
  .sidebar-mobile-toggler a {
    transition: none;
  }
}

.navbar-lg:first-child ~ .page-content .sidebar-mobile-toggler a {
  padding: 1rem 1.25rem;
}

.navbar-sm:first-child ~ .page-content .sidebar-mobile-toggler a {
  padding: 0.75rem 1.25rem;
}

.sidebar-mobile-expand i:last-child:not(:first-child) {
  display: none;
}

.sidebar-fullscreen .sidebar-mobile-expand i:first-child {
  display: none;
}

.sidebar-fullscreen .sidebar-mobile-expand i:last-child {
  display: inline-block;
}

.sidebar-dark {
  background-color: #263238;
  color: #fff;
}

.sidebar-dark .sidebar-mobile-toggler {
  color: rgba(255, 255, 255, 0.9);
  border-bottom-color: rgba(255, 255, 255, 0.1);
}

.sidebar-dark .sidebar-mobile-toggler:not([class*=bg-]) {
  background-color: #1e272c;
}

.sidebar-dark .sidebar-mobile-toggler a {
  color: rgba(255, 255, 255, 0.9);
}

.sidebar-dark .sidebar-mobile-toggler a:hover {
  color: #fff;
  background-color: transparent;
}

.sidebar-dark .card-header {
  border-color: rgba(255, 255, 255, 0.1);
}

.sidebar-dark .nav-sidebar .nav-link,
.sidebar-light .card[class*=bg-]:not(.bg-light):not(.bg-white):not(.bg-transparent) .nav-sidebar .nav-link {
  color: rgba(255, 255, 255, 0.9);
}

.sidebar-dark .nav-sidebar .nav-link:not(.disabled):hover,
.sidebar-light .card[class*=bg-]:not(.bg-light):not(.bg-white):not(.bg-transparent) .nav-sidebar .nav-link:not(.disabled):hover {
  color: #fff;
  background-color: rgba(0, 0, 0, 0.15);
}

.sidebar-dark .nav-sidebar .nav-item > .nav-link.active,
.sidebar-light .card[class*=bg-]:not(.bg-light):not(.bg-white):not(.bg-transparent) .nav-sidebar .nav-item > .nav-link.active {
  background-color: rgba(0, 0, 0, 0.15);
  color: #fff;
}

.sidebar-dark .nav-sidebar .nav-item-open > .nav-link:not(.disabled),
.sidebar-dark .nav-sidebar > .nav-item-expanded:not(.nav-item-open) > .nav-link,
.sidebar-light .card[class*=bg-]:not(.bg-light):not(.bg-white):not(.bg-transparent) .nav-sidebar .nav-item-open > .nav-link:not(.disabled),
.sidebar-light .card[class*=bg-]:not(.bg-light):not(.bg-white):not(.bg-transparent) .nav-sidebar > .nav-item-expanded:not(.nav-item-open) > .nav-link {
  background-color: rgba(0, 0, 0, 0.15);
  color: #fff;
}

.sidebar-dark .nav-sidebar > .nav-item-open > .nav-link:not(.disabled),
.sidebar-dark .nav-sidebar > .nav-item > .nav-link.active,
.sidebar-light .card[class*=bg-]:not(.bg-light):not(.bg-white):not(.bg-transparent) .nav-sidebar > .nav-item-open > .nav-link:not(.disabled),
.sidebar-light .card[class*=bg-]:not(.bg-light):not(.bg-white):not(.bg-transparent) .nav-sidebar > .nav-item > .nav-link.active {
  background-color: #26A69A;
  color: #fff;
}

.sidebar-dark .nav-sidebar .nav-item-header,
.sidebar-light .card[class*=bg-]:not(.bg-light):not(.bg-white):not(.bg-transparent) .nav-sidebar .nav-item-header {
  color: rgba(255, 255, 255, 0.5);
}

.sidebar-dark .nav-sidebar .nav-item-divider,
.sidebar-light .card[class*=bg-]:not(.bg-light):not(.bg-white):not(.bg-transparent) .nav-sidebar .nav-item-divider {
  background-color: rgba(255, 255, 255, 0.1);
}

.sidebar-dark .nav-sidebar > .nav-item-submenu > .nav-group-sub,
.sidebar-light .card[class*=bg-]:not(.bg-light):not(.bg-white):not(.bg-transparent) .nav-sidebar > .nav-item-submenu > .nav-group-sub {
  background-color: rgba(0, 0, 0, 0.15);
}

.sidebar-dark[class*=bg-] .nav-sidebar > .nav-item-open > .nav-link:not(.disabled),
.sidebar-dark[class*=bg-] .nav-sidebar > .nav-item > .nav-link.active,
.sidebar .card[class*=bg-]:not(.bg-light):not(.bg-white):not(.bg-transparent) .nav-sidebar > .nav-item-open > .nav-link:not(.disabled),
.sidebar .card[class*=bg-]:not(.bg-light):not(.bg-white):not(.bg-transparent) .nav-sidebar > .nav-item > .nav-link.active {
  background-color: rgba(0, 0, 0, 0.3);
}

.sidebar-light {
  background-color: #fff;
  color: #333;
  border-right: 1px solid rgba(0, 0, 0, 0.125);
  background-clip: content-box;
}

.sidebar-light.sidebar-right {
  border-right: 0;
  border-left: 1px solid rgba(0, 0, 0, 0.125);
}

.sidebar-light .nav-sidebar .nav-link {
  color: rgba(51, 51, 51, 0.85);
}

.sidebar-light .nav-sidebar .nav-link:not(.disabled):hover {
  color: #333;
  background-color: #f5f5f5;
}

.sidebar-light .nav-sidebar .nav-item > .nav-link.active {
  background-color: #f5f5f5;
  color: #333;
}

.sidebar-light .nav-sidebar .nav-item-open > .nav-link:not(.disabled),
.sidebar-light .nav-sidebar > .nav-item-expanded:not(.nav-item-open) > .nav-link {
  background-color: #f5f5f5;
  color: #333;
}

.sidebar-light .nav-sidebar > .nav-item-open > .nav-link:not(.disabled),
.sidebar-light .nav-sidebar > .nav-item > .nav-link.active {
  background-color: #f5f5f5;
  color: #333;
}

.sidebar-light .nav-sidebar .nav-item-header {
  color: rgba(51, 51, 51, 0.5);
}

.sidebar-light .nav-sidebar .nav-item-divider {
  background-color: rgba(0, 0, 0, 0.125);
}

.sidebar-light .nav-sidebar > .nav-item-submenu > .nav-group-sub {
  background-color: transparent;
}

.sidebar-light .sidebar-mobile-toggler {
  color: rgba(51, 51, 51, 0.8);
  border-bottom-color: rgba(0, 0, 0, 0.125);
}

.sidebar-light .sidebar-mobile-toggler:not([class*=bg-]) {
  background-color: whitesmoke;
}

.sidebar-light .sidebar-mobile-toggler a {
  color: rgba(51, 51, 51, 0.8);
}

.sidebar-light .sidebar-mobile-toggler a:hover {
  color: #333;
  background-color: transparent;
}

.sidebar-light .sidebar-mobile-toggler[class*=bg-]:not(.bg-white):not(.bg-light):not(.bg-transparent) {
  color: rgba(255, 255, 255, 0.9);
  border-bottom-color: rgba(255, 255, 255, 0.1);
}

.sidebar-light .sidebar-mobile-toggler[class*=bg-]:not(.bg-white):not(.bg-light):not(.bg-transparent) a {
  color: rgba(255, 255, 255, 0.9);
}

.sidebar-light .sidebar-mobile-toggler[class*=bg-]:not(.bg-white):not(.bg-light):not(.bg-transparent) a:hover {
  color: #fff;
  background-color: transparent;
}

.sidebar-component {
  display: none;
  width: 100%;
  border: 1px solid transparent;
  border-radius: 0.1875rem;
  box-shadow: 0 1px 2px rgba(0, 0, 0, 0.05);
}

.sidebar-component.sidebar-dark {
  border-color: rgba(255, 255, 255, 0.1);
}

.sidebar-component.sidebar-light {
  border-color: rgba(0, 0, 0, 0.125);
}

@media (min-width: 768px) {
  .sidebar-xs .sidebar-main {
    width: 3.5rem;
  }
  .sidebar-xs .sidebar-main .sidebar-content::-webkit-scrollbar {
    width: 0 !important;
  }
  .sidebar-xs .sidebar-main .card:not(.card-sidebar-mobile),
  .sidebar-xs .sidebar-main .card-title {
    display: none;
  }
  .sidebar-xs .sidebar-main .card-header h6 + .header-elements {
    padding-top: 0.22117rem;
    padding-bottom: 0.22117rem;
  }
  .sidebar-xs .sidebar-main .card-header h5 + .header-elements {
    padding-top: 0.31733rem;
    padding-bottom: 0.31733rem;
  }
  .sidebar-xs .sidebar-main .nav-sidebar > .nav-item {
    position: relative;
    margin: 0;
  }
  .sidebar-xs .sidebar-main .nav-sidebar > .nav-item > .nav-link {
    justify-content: center;
    padding-left: 0;
    padding-right: 0;
  }
  .sidebar-xs .sidebar-main .nav-sidebar > .nav-item > .nav-link > i {
    position: static;
    margin-left: 0;
    margin-right: 0;
    display: block;
    padding-bottom: 1px;
  }
  .sidebar-xs .sidebar-main .nav-sidebar > .nav-item > .nav-link > span {
    display: none;
  }
  .sidebar-xs .sidebar-main .nav-sidebar > .nav-item-submenu:hover > .nav-group-sub, .sidebar-xs .sidebar-main .nav-sidebar > .nav-item-submenu:focus > .nav-group-sub {
    display: block !important;
  }
  .sidebar-xs .sidebar-main .nav-sidebar > .nav-item-submenu > .nav-group-sub {
    position: absolute;
    top: -0.5rem;
    right: -16.875rem;
    width: 16.875rem;
    display: none;
    z-index: 1000;
    box-shadow: 0 0.25rem 0.5rem rgba(0, 0, 0, 0.1);
    border-top-right-radius: 0.1875rem;
    border-bottom-right-radius: 0.1875rem;
  }
  .sidebar-xs .sidebar-main .nav-sidebar > .nav-item-submenu > .nav-group-sub[data-submenu-title]:before {
    content: attr(data-submenu-title);
    display: block;
    padding: 0.75rem 1.25rem;
    padding-bottom: 0;
    margin-top: 0.5rem;
    opacity: 0.5;
  }
  .sidebar-xs .sidebar-main .nav-sidebar > .nav-item-submenu > .nav-link:after {
    content: none;
  }
  .sidebar-xs .sidebar-main .nav-sidebar .nav-group-sub .nav-link {
    padding-left: 1.25rem;
  }
  .sidebar-xs .sidebar-main .nav-sidebar .nav-group-sub .nav-group-sub .nav-link {
    padding-left: 2.25rem;
  }
  .sidebar-xs .sidebar-main .nav-sidebar .nav-group-sub .nav-group-sub .nav-group-sub .nav-link {
    padding-left: 3.5rem;
  }
  .sidebar-xs .sidebar-main .nav-sidebar > .nav-item-header {
    padding: 0;
    text-align: center;
  }
  .sidebar-xs .sidebar-main .nav-sidebar > .nav-item-header > i {
    display: block;
    top: 0;
    padding: 0.75rem 1.25rem;
    margin-top: 0.12502rem;
    margin-bottom: 0.12502rem;
  }
  .sidebar-xs .sidebar-main .nav-sidebar > .nav-item-header > div {
    display: none;
  }
  .sidebar-xs .sidebar-main .nav-sidebar > .nav-item-open > .nav-group-sub {
    display: none !important;
  }
  .sidebar-xs .sidebar-main .nav-sidebar > .nav-item:hover > .nav-link.disabled + .nav-group-sub,
  .sidebar-xs .sidebar-main .nav-sidebar > .nav-item:hover > .nav-link.disabled > span, .sidebar-xs .sidebar-main .nav-sidebar > .nav-item:focus > .nav-link.disabled + .nav-group-sub,
  .sidebar-xs .sidebar-main .nav-sidebar > .nav-item:focus > .nav-link.disabled > span {
    display: none !important;
  }
  .sidebar-xs .sidebar-main .sidebar-user .card-body {
    padding-left: 0;
    padding-right: 0;
  }
  .sidebar-xs .sidebar-main .sidebar-user .media {
    justify-content: center;
  }
  .sidebar-xs .sidebar-main .sidebar-user .media > div:not(:first-child) {
    display: none !important;
  }
  .sidebar-xs .sidebar-main .sidebar-user .media > div:first-child {
    margin: 0 !important;
  }
  .sidebar-xs .sidebar-main .nav-item-submenu-reversed .nav-group-sub {
    top: auto !important;
    bottom: 0;
  }
  .sidebar-xs .sidebar-main.sidebar-dark .nav-sidebar > .nav-item:not(.nav-item-open):hover > .nav-link:not(.active):not(.disabled) {
    color: #fff;
    background-color: rgba(0, 0, 0, 0.15);
  }
  .sidebar-xs .sidebar-main.sidebar-dark .nav-sidebar > .nav-item-submenu > .nav-group-sub {
    background-color: #304047;
    border-left: 1px solid rgba(255, 255, 255, 0.1);
  }
  .sidebar-xs .sidebar-main.sidebar-light .nav-sidebar > .nav-item:not(.nav-item-open):hover > .nav-link:not(.active):not(.disabled) {
    color: #333;
    background-color: #f5f5f5;
  }
  .sidebar-xs .sidebar-main.sidebar-light .nav-sidebar > .nav-item-submenu > .nav-group-sub {
    background-color: #fcfcfc;
    border: 1px solid rgba(0, 0, 0, 0.125);
  }
  .sidebar-xs .sidebar-main.sidebar-fixed {
    z-index: 1029;
  }
  .sidebar-xs .sidebar-main.sidebar-fixed .nav-sidebar > .nav-item-submenu:hover > .nav-group-sub, .sidebar-xs .sidebar-main.sidebar-fixed .nav-sidebar > .nav-item-submenu:focus > .nav-group-sub {
    position: fixed;
    left: 3.5rem;
    top: 3.12503rem;
    bottom: 0;
    width: 16.875rem;
    overflow-y: auto;
    border-radius: 0;
  }
  .sidebar-xs .navbar-lg:first-child ~ .page-content .sidebar-fixed.sidebar-main .nav-sidebar > .nav-item-submenu:hover > .nav-group-sub, .sidebar-xs .navbar-lg:first-child ~ .page-content .sidebar-fixed.sidebar-main .nav-sidebar > .nav-item-submenu:focus > .nav-group-sub {
    top: 3.37503rem;
  }
  .sidebar-xs .navbar-sm:first-child ~ .page-content .sidebar-fixed.sidebar-main .nav-sidebar > .nav-item-submenu:hover > .nav-group-sub, .sidebar-xs .navbar-sm:first-child ~ .page-content .sidebar-fixed.sidebar-main .nav-sidebar > .nav-item-submenu:focus > .nav-group-sub {
    top: 2.87503rem;
  }
}

@media (min-width: 576px) {
  .sidebar-expand-sm.sidebar-main {
    z-index: 99;
    box-shadow: none;
  }
  .sidebar-expand-sm.sidebar-main .sidebar-content {
    left: 0;
  }
  .sidebar-expand-sm.sidebar-secondary {
    z-index: 98;
    box-shadow: none;
  }
  .sidebar-expand-sm.sidebar-secondary .sidebar-content {
    left: 0;
  }
  .sidebar-expand-sm.sidebar-right {
    z-index: 97;
    box-shadow: none;
  }
  .sidebar-expand-sm.sidebar-right .sidebar-content {
    right: 0;
  }
  .sidebar-expand-sm.sidebar-component {
    z-index: 96;
  }
  .sidebar-expand-sm:not(.sidebar-component) {
    position: static;
    transition: none;
  }
}

@media (min-width: 576px) and (prefers-reduced-motion: reduce) {
  .sidebar-expand-sm:not(.sidebar-component) {
    transition: none;
  }
}

@media (min-width: 576px) {
  .sidebar-expand-sm:not(.sidebar-component):not(.sidebar-fixed) .sidebar-content {
    position: static;
    overflow: visible;
    width: auto;
  }
  .sidebar-expand-sm.sidebar-dark:not(.sidebar-component) + .sidebar-dark:not(.sidebar-component) {
    border-left: 1px solid rgba(255, 255, 255, 0.1);
  }
  .sidebar-expand-sm .sidebar-mobile-toggler {
    display: none;
  }
  .sidebar-expand-sm.sidebar-fullscreen {
    width: 16.875rem;
  }
  .sidebar-main-hidden .sidebar-expand-sm.sidebar-main,
  .sidebar-component-hidden .sidebar-expand-sm.sidebar-component,
  .sidebar-secondary-hidden .sidebar-expand-sm.sidebar-secondary,
  .sidebar-mobile-right .sidebar-expand-sm.sidebar-right {
    display: none;
  }
  .sidebar-expand-sm.sidebar-right {
    display: none;
  }
  .sidebar-right-visible .sidebar-expand-sm.sidebar-right {
    display: block;
  }
  .sidebar-expand-sm.sidebar-component {
    display: block;
    width: 16.875rem;
  }
  .sidebar-expand-sm.sidebar-component-left {
    margin-right: 1.25rem;
  }
  .sidebar-expand-sm.sidebar-component-right {
    margin-left: 1.25rem;
  }
}

@media (max-width: 575.98px) {
  .sidebar-expand-sm:not(.sidebar-component) {
    border: 0;
  }
}

@media (min-width: 768px) {
  .sidebar-expand-md.sidebar-main {
    z-index: 99;
    box-shadow: none;
  }
  .sidebar-expand-md.sidebar-main .sidebar-content {
    left: 0;
  }
  .sidebar-expand-md.sidebar-secondary {
    z-index: 98;
    box-shadow: none;
  }
  .sidebar-expand-md.sidebar-secondary .sidebar-content {
    left: 0;
  }
  .sidebar-expand-md.sidebar-right {
    z-index: 97;
    box-shadow: none;
  }
  .sidebar-expand-md.sidebar-right .sidebar-content {
    right: 0;
  }
  .sidebar-expand-md.sidebar-component {
    z-index: 96;
  }
  .sidebar-expand-md:not(.sidebar-component) {
    position: static;
    transition: none;
  }
}

@media (min-width: 768px) and (prefers-reduced-motion: reduce) {
  .sidebar-expand-md:not(.sidebar-component) {
    transition: none;
  }
}

@media (min-width: 768px) {
  .sidebar-expand-md:not(.sidebar-component):not(.sidebar-fixed) .sidebar-content {
    position: static;
    overflow: visible;
    width: auto;
  }
  .sidebar-expand-md.sidebar-dark:not(.sidebar-component) + .sidebar-dark:not(.sidebar-component) {
    border-left: 1px solid rgba(255, 255, 255, 0.1);
  }
  .sidebar-expand-md .sidebar-mobile-toggler {
    display: none;
  }
  .sidebar-expand-md.sidebar-fullscreen {
    width: 16.875rem;
  }
  .sidebar-main-hidden .sidebar-expand-md.sidebar-main,
  .sidebar-component-hidden .sidebar-expand-md.sidebar-component,
  .sidebar-secondary-hidden .sidebar-expand-md.sidebar-secondary,
  .sidebar-mobile-right .sidebar-expand-md.sidebar-right {
    display: none;
  }
  .sidebar-expand-md.sidebar-right {
    display: none;
  }
  .sidebar-right-visible .sidebar-expand-md.sidebar-right {
    display: block;
  }
  .sidebar-expand-md.sidebar-component {
    display: block;
    width: 16.875rem;
  }
  .sidebar-expand-md.sidebar-component-left {
    margin-right: 1.25rem;
  }
  .sidebar-expand-md.sidebar-component-right {
    margin-left: 1.25rem;
  }
}

@media (max-width: 767.98px) {
  .sidebar-expand-md:not(.sidebar-component) {
    border: 0;
  }
}

@media (min-width: 992px) {
  .sidebar-expand-lg.sidebar-main {
    z-index: 99;
    box-shadow: none;
  }
  .sidebar-expand-lg.sidebar-main .sidebar-content {
    left: 0;
  }
  .sidebar-expand-lg.sidebar-secondary {
    z-index: 98;
    box-shadow: none;
  }
  .sidebar-expand-lg.sidebar-secondary .sidebar-content {
    left: 0;
  }
  .sidebar-expand-lg.sidebar-right {
    z-index: 97;
    box-shadow: none;
  }
  .sidebar-expand-lg.sidebar-right .sidebar-content {
    right: 0;
  }
  .sidebar-expand-lg.sidebar-component {
    z-index: 96;
  }
  .sidebar-expand-lg:not(.sidebar-component) {
    position: static;
    transition: none;
  }
}

@media (min-width: 992px) and (prefers-reduced-motion: reduce) {
  .sidebar-expand-lg:not(.sidebar-component) {
    transition: none;
  }
}

@media (min-width: 992px) {
  .sidebar-expand-lg:not(.sidebar-component):not(.sidebar-fixed) .sidebar-content {
    position: static;
    overflow: visible;
    width: auto;
  }
  .sidebar-expand-lg.sidebar-dark:not(.sidebar-component) + .sidebar-dark:not(.sidebar-component) {
    border-left: 1px solid rgba(255, 255, 255, 0.1);
  }
  .sidebar-expand-lg .sidebar-mobile-toggler {
    display: none;
  }
  .sidebar-expand-lg.sidebar-fullscreen {
    width: 16.875rem;
  }
  .sidebar-main-hidden .sidebar-expand-lg.sidebar-main,
  .sidebar-component-hidden .sidebar-expand-lg.sidebar-component,
  .sidebar-secondary-hidden .sidebar-expand-lg.sidebar-secondary,
  .sidebar-mobile-right .sidebar-expand-lg.sidebar-right {
    display: none;
  }
  .sidebar-expand-lg.sidebar-right {
    display: none;
  }
  .sidebar-right-visible .sidebar-expand-lg.sidebar-right {
    display: block;
  }
  .sidebar-expand-lg.sidebar-component {
    display: block;
    width: 16.875rem;
  }
  .sidebar-expand-lg.sidebar-component-left {
    margin-right: 1.25rem;
  }
  .sidebar-expand-lg.sidebar-component-right {
    margin-left: 1.25rem;
  }
}

@media (max-width: 991.98px) {
  .sidebar-expand-lg:not(.sidebar-component) {
    border: 0;
  }
}

@media (min-width: 1200px) {
  .sidebar-expand-xl.sidebar-main {
    z-index: 99;
    box-shadow: none;
  }
  .sidebar-expand-xl.sidebar-main .sidebar-content {
    left: 0;
  }
  .sidebar-expand-xl.sidebar-secondary {
    z-index: 98;
    box-shadow: none;
  }
  .sidebar-expand-xl.sidebar-secondary .sidebar-content {
    left: 0;
  }
  .sidebar-expand-xl.sidebar-right {
    z-index: 97;
    box-shadow: none;
  }
  .sidebar-expand-xl.sidebar-right .sidebar-content {
    right: 0;
  }
  .sidebar-expand-xl.sidebar-component {
    z-index: 96;
  }
  .sidebar-expand-xl:not(.sidebar-component) {
    position: static;
    transition: none;
  }
}

@media (min-width: 1200px) and (prefers-reduced-motion: reduce) {
  .sidebar-expand-xl:not(.sidebar-component) {
    transition: none;
  }
}

@media (min-width: 1200px) {
  .sidebar-expand-xl:not(.sidebar-component):not(.sidebar-fixed) .sidebar-content {
    position: static;
    overflow: visible;
    width: auto;
  }
  .sidebar-expand-xl.sidebar-dark:not(.sidebar-component) + .sidebar-dark:not(.sidebar-component) {
    border-left: 1px solid rgba(255, 255, 255, 0.1);
  }
  .sidebar-expand-xl .sidebar-mobile-toggler {
    display: none;
  }
  .sidebar-expand-xl.sidebar-fullscreen {
    width: 16.875rem;
  }
  .sidebar-main-hidden .sidebar-expand-xl.sidebar-main,
  .sidebar-component-hidden .sidebar-expand-xl.sidebar-component,
  .sidebar-secondary-hidden .sidebar-expand-xl.sidebar-secondary,
  .sidebar-mobile-right .sidebar-expand-xl.sidebar-right {
    display: none;
  }
  .sidebar-expand-xl.sidebar-right {
    display: none;
  }
  .sidebar-right-visible .sidebar-expand-xl.sidebar-right {
    display: block;
  }
  .sidebar-expand-xl.sidebar-component {
    display: block;
    width: 16.875rem;
  }
  .sidebar-expand-xl.sidebar-component-left {
    margin-right: 1.25rem;
  }
  .sidebar-expand-xl.sidebar-component-right {
    margin-left: 1.25rem;
  }
}

@media (max-width: 1199.98px) {
  .sidebar-expand-xl:not(.sidebar-component) {
    border: 0;
  }
}

.sidebar-expand.sidebar-main {
  z-index: 99;
  box-shadow: none;
}

.sidebar-expand.sidebar-main .sidebar-content {
  left: 0;
}

.sidebar-expand.sidebar-secondary {
  z-index: 98;
  box-shadow: none;
}

.sidebar-expand.sidebar-secondary .sidebar-content {
  left: 0;
}

.sidebar-expand.sidebar-right {
  z-index: 97;
  box-shadow: none;
}

.sidebar-expand.sidebar-right .sidebar-content {
  right: 0;
}

.sidebar-expand.sidebar-component {
  z-index: 96;
}

.sidebar-expand:not(.sidebar-component) {
  position: static;
  transition: none;
}

@media (prefers-reduced-motion: reduce) {
  .sidebar-expand:not(.sidebar-component) {
    transition: none;
  }
}

.sidebar-expand:not(.sidebar-component):not(.sidebar-fixed) .sidebar-content {
  position: static;
  overflow: visible;
  width: auto;
}

.sidebar-expand.sidebar-dark:not(.sidebar-component) + .sidebar-dark:not(.sidebar-component) {
  border-left: 1px solid rgba(255, 255, 255, 0.1);
}

.sidebar-expand .sidebar-mobile-toggler {
  display: none;
}

.sidebar-expand.sidebar-fullscreen {
  width: 16.875rem;
}

.sidebar-main-hidden .sidebar-expand.sidebar-main,
.sidebar-component-hidden .sidebar-expand.sidebar-component,
.sidebar-secondary-hidden .sidebar-expand.sidebar-secondary,
.sidebar-mobile-right .sidebar-expand.sidebar-right {
  display: none;
}

.sidebar-expand.sidebar-right {
  display: none;
}

.sidebar-right-visible .sidebar-expand.sidebar-right {
  display: block;
}

.sidebar-expand.sidebar-component {
  display: block;
  width: 16.875rem;
}

.sidebar-expand.sidebar-component-left {
  margin-right: 1.25rem;
}

.sidebar-expand.sidebar-component-right {
  margin-left: 1.25rem;
}

.sidebar-expand:not(.sidebar-component) {
  border: 0;
}

.sidebar:not(.bg-transparent) .card {
  border-width: 0;
  margin-bottom: 0;
  border-radius: 0;
  box-shadow: none;
}

.sidebar:not(.bg-transparent) .card .card {
  border-width: 1px;
}

.sidebar:not(.bg-transparent) .card:not([class*=bg-]):not(.fixed-top) {
  background-color: transparent;
}

.sidebar .card-footer {
  border-bottom: 1px solid rgba(0, 0, 0, 0.125);
}

.sidebar .row:not(.no-gutters) {
  margin-left: -0.3125rem;
  margin-right: -0.3125rem;
}

.sidebar .row:not(.no-gutters) [class*=col] {
  padding-left: 0.3125rem;
  padding-right: 0.3125rem;
}

.sidebar .form-group:last-child {
  margin-bottom: 0;
}

.sidebar .nav-tabs .nav-item:first-child .nav-link {
  border-left: 0;
}

.sidebar .nav-tabs .nav-item:last-child .nav-link {
  border-right: 0;
}

.sidebar .nav-tabs .nav-link {
  border-top: 0;
  border-bottom-width: 0;
}

.sidebar .nav-tabs .nav-link.active {
  border-bottom-color: transparent;
}

.sidebar-dark .nav-tabs {
  background-color: #1e272c;
  border-bottom-color: rgba(255, 255, 255, 0.1);
}

.sidebar-dark .nav-tabs .nav-link {
  color: rgba(255, 255, 255, 0.9);
}

.sidebar-dark .nav-tabs .nav-link:hover, .sidebar-dark .nav-tabs .nav-link:focus {
  color: #fff;
}

.sidebar-dark .nav-tabs .nav-link.active {
  color: #fff;
}

.sidebar-dark .nav-tabs:not(.nav-tabs-bottom) .nav-link.active {
  background-color: #263238;
  border-color: rgba(255, 255, 255, 0.1);
}

.sidebar-dark .nav-tabs .nav-item.show .nav-link:not(.active) {
  color: #fff;
}

.sidebar-light .nav-tabs {
  background-color: whitesmoke;
  border-bottom-color: rgba(0, 0, 0, 0.125);
}

.sidebar-light .nav-tabs .nav-link:hover, .sidebar-light .nav-tabs .nav-link:focus {
  color: #333;
}

.sidebar-light .nav-tabs .nav-link.active {
  color: #333;
}

.sidebar-light .nav-tabs:not(.nav-tabs-bottom) .nav-link.active {
  background-color: #fff;
}

.row-tile div[class*=col] .btn {
  border-radius: 0;
}

.row-tile div[class*=col]:first-child .btn:first-child {
  border-top-left-radius: 0.1875rem;
}

.row-tile div[class*=col]:first-child .btn:last-child {
  border-bottom-left-radius: 0.1875rem;
}

.row-tile div[class*=col]:last-child .btn:first-child {
  border-top-right-radius: 0.1875rem;
}

.row-tile div[class*=col]:last-child .btn:last-child {
  border-bottom-right-radius: 0.1875rem;
}

.row-tile div[class*=col] .btn + .btn {
  border-top: 0;
}

.row-tile div[class*=col] + div[class*=col] .btn {
  border-left: 0;
}

/* ------------------------------------------------------------------------------
 *
 *  # Boxed layout
 *
 *  Styles for main structure of content area in boxed layout
 *
 * ---------------------------------------------------------------------------- */
.layout-boxed-bg {
  background: url(/themeImages/backgrounds/boxed_bg.png) repeat;
}

.layout-boxed {
  box-shadow: -4px 2px 4px rgba(0, 0, 0, 0.15), 4px 2px 4px rgba(0, 0, 0, 0.15);
}

@media (min-width: 992px) {
  .layout-boxed,
  .layout-boxed > .navbar {
    width: 992px;
    margin-left: auto;
    margin-right: auto;
  }
}

@media (min-width: 1200px) {
  .layout-boxed,
  .layout-boxed > .navbar {
    width: 1200px;
  }
}

.layout-boxed .page-content {
  background-color: #f5f5f5;
}

@media (min-width: 992px) {
  .content-boxed:not(.navbar-collapse) {
    margin-left: 6%;
    margin-right: 6%;
  }
  .navbar > .content-boxed > *:first-child {
    margin-left: 6%;
  }
  .navbar > .content-boxed > *:last-child {
    margin-right: 6%;
  }
  .breadcrumb-line > .content-boxed > *:first-child {
    margin-left: 1.25rem;
  }
  .breadcrumb-line > .content-boxed > *:last-child {
    margin-right: 1.25rem;
  }
}

/* ------------------------------------------------------------------------------
 *
 *  # Components
 *
 *  Components import. Ordering matters. See _config.scss for more options
 *
 * ---------------------------------------------------------------------------- */
/* ------------------------------------------------------------------------------
 *
 *  # Global configuration
 *
 *  Here you can change main theme, enable or disable certain components and
 *  optional styles. This allows you to include only components that you need.
 *
 *  'true'  - enables component and includes it to main CSS file.
 *  'false' - disables component and excludes it from main CSS file.
 *
 *  Layout helper: @if $layout == 'base' {...}
 *  Theme helper: @if $theme == 'material' {...}
 *  Component helper: @if $enable-* {...}
 *
 * ---------------------------------------------------------------------------- */
/* ------------------------------------------------------------------------------
 *
 *  # Custom Limitless functions
 *
 *  Utility mixins and functions for evalutating source code across our variables, maps, and mixins.
 *
 * ---------------------------------------------------------------------------- */
/* ------------------------------------------------------------------------------
 *
 *  # Custom template mixins
 *
 *  All custom mixins are prefixed with "ll-" to avoid conflicts
 *
 * ---------------------------------------------------------------------------- */
/* ------------------------------------------------------------------------------
 *
 *  # Main colors
 *
 *  List of the template main color palettes
 *
 * ---------------------------------------------------------------------------- */
/* ------------------------------------------------------------------------------
 *
 *  # Default Bootstrap variable overrides
 *
 *  Variables should follow the `$component-state-property-size` formula for
 *  consistent naming. Ex: $nav-link-disabled-color and $modal-content-box-shadow-xs.
 *  Also includes custom variables, all marked with "!default" flag.
 *
 * ---------------------------------------------------------------------------- */
/* ------------------------------------------------------------------------------
 *
 *  # Additional variables
 *
 *  Mainly 3rd party libraries and additional variables for default
 *  Bootstrap components.
 *
 * ---------------------------------------------------------------------------- */
/* ------------------------------------------------------------------------------
 *
 *  # Mixins
 *
 *  Import Bootstrap mixins with overrides
 *
 * ---------------------------------------------------------------------------- */
/* ------------------------------------------------------------------------------
 *
 *  # Badge mixin
 *
 *  Override and extend default badge mixin.
 *
 * ---------------------------------------------------------------------------- */
/* ------------------------------------------------------------------------------
 *
 *  # Buttons mixin
 *
 *  Override and extend default buttons mixin.
 *
 * ---------------------------------------------------------------------------- */
/* ------------------------------------------------------------------------------
 *
 *  # Caret mixin
 *
 *  Override and extend default cared mixin.
 *
 * ---------------------------------------------------------------------------- */
/* ------------------------------------------------------------------------------
 *
 *  # Forms mixin
 *
 *  Override and extend default forms mixin.
 *
 * ---------------------------------------------------------------------------- */
/* ------------------------------------------------------------------------------
 *
 *  # Background mixin
 *
 *  Override and extend default background mixin.
 *
 * ---------------------------------------------------------------------------- */
/* ------------------------------------------------------------------------------
 *
 *  # Flash of unstyled content (FOUC)
 *
 *  CSS fix for FOUC issue, which pops up in latest jQuery version. These styles
 *  are optional, but enabled by default. Feel free to turn them off in configuration.
 *
 * ---------------------------------------------------------------------------- */
input[type=checkbox][data-fouc],
input[type=radio][data-fouc] {
  visibility: hidden;
  width: 1.25rem;
  height: 1.25rem;
}

.form-check input[type=checkbox][data-fouc], .form-check
input[type=radio][data-fouc] {
  position: absolute;
}

.form-check-inline:not(.form-check-switchery) input[type=checkbox][data-fouc], .form-check-inline:not(.form-check-switchery)
input[type=radio][data-fouc] {
  position: relative;
  margin-top: 0.00002rem;
  margin-right: 0.625rem;
}

.form-check-inline.form-check-right .form-check-inline:not(.form-check-switchery) input[type=checkbox][data-fouc], .form-check-inline.form-check-right .form-check-inline:not(.form-check-switchery)
input[type=radio][data-fouc] {
  margin-right: 0;
  margin-left: 0.625rem;
}

.form-check-switchery input[data-fouc] {
  width: 2.375rem;
  height: 1.25rem;
}

.form-check-switchery-double.form-check input[data-fouc] {
  position: static;
}

.form-check-switch input {
  height: 2.25003rem;
  visibility: hidden;
  display: inline-block;
  vertical-align: middle;
  margin: 0;
}

.form-check-switch input[data-size=large] {
  height: 2.50002rem;
}

.form-check-switch input[data-size=small] {
  height: 2.00002rem;
}

input[type=text][data-fouc] {
  height: 2.25003rem;
  opacity: 0;
}

input[type=text].form-control-lg[data-fouc] {
  height: 2.50002rem;
}

input[type=text].form-control-sm[data-fouc] {
  height: 2.00002rem;
}

select[data-fouc]:not([aria-hidden=false]) {
  height: 2.25003rem;
  opacity: 0;
}

select.form-control-lg[data-fouc]:not([aria-hidden=false]) {
  height: 2.50002rem;
}

select.form-control-sm[data-fouc]:not([aria-hidden=false]) {
  height: 2.00002rem;
}

input[type=file][data-fouc] {
  height: 2.25003rem;
  opacity: 0;
}

input[type=file].form-control-lg[data-fouc] {
  height: 2.50002rem;
}

input[type=file].form-control-sm[data-fouc] {
  height: 2.00002rem;
}

.wizard-form[data-fouc] {
  opacity: 0;
}

.wizard-form[data-fouc].wizard {
  opacity: 1;
}

.wizard-form[data-fouc]:not(.wizard) {
  padding-top: 6.75003rem;
  padding-bottom: 3.50003rem;
}

.wizard-form[data-fouc]:not(.wizard) fieldset:not(:first-of-type),
.wizard-form[data-fouc]:not(.wizard) h6 {
  display: none;
}

input[type=text].colorpicker-flat-full[data-fouc] {
  height: 285px;
}

pre[data-fouc]:not(.ace_editor) {
  height: 450px;
}

pre[data-fouc].ace_editor {
  visibility: visible;
}

.noui-pips-height-helper:not(.noUi-target)[data-fouc] {
  height: 2.62503rem;
}

.noui-pips-height-helper.noui-slider-lg:not(.noUi-target)[data-fouc] {
  height: 2.75003rem;
}

.noui-pips-height-helper.noui-slider-sm:not(.noUi-target)[data-fouc] {
  height: 2.50003rem;
}

.noui-vertical-height-helper:not(.noUi-target)[data-fouc] {
  display: inline-block;
  height: 10rem;
}

input[type=text].ion-height-helper[data-fouc] {
  height: 3.4375rem;
}

input[type=text].ion-pips-height-helper[data-fouc] {
  height: 5.5625rem;
}

input[type=text].noui-height-helper:not(.noUi-target)[data-fouc] {
  height: 0.375rem;
}

/* ------------------------------------------------------------------------------
 *
 *  # Pace. Default theme
 *
 *  Minimal preloader theme, used as a default theme
 *
 * ---------------------------------------------------------------------------- */
.pace {
  pointer-events: none;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
}

.pace .pace-progress {
  background: #4FC3F7;
  position: fixed;
  z-index: 2000;
  top: 0;
  left: 0;
  width: 0;
  height: 0.125rem;
}

.pace-inactive {
  display: none;
}

/* ------------------------------------------------------------------------------
 *
 *  # Progress (loading) bars
 *
 *  Static demo of Pace themes. For demonstration purposes only. DO NOT use it in production
 *
 * ---------------------------------------------------------------------------- */
.pace-demo {
  display: inline-block;
  background-color: #37474F;
  vertical-align: middle;
  position: relative;
  line-height: 1;
  border-radius: 0.1875rem;
  width: 88px;
  height: 88px;
}

.pace-demo .pace_progress {
  display: none;
  white-space: nowrap;
}

.theme_xbox, .theme_xbox_sm, .theme_xbox_lg {
  position: absolute;
  top: 50%;
  left: 0;
  right: 0;
  margin-top: -24px;
}

.theme_xbox .pace_activity, .theme_xbox_sm .pace_activity, .theme_xbox_lg .pace_activity {
  -webkit-animation: rotation 1.5s ease-in-out infinite;
          animation: rotation 1.5s ease-in-out infinite;
  margin: auto;
  width: 48px;
  height: 48px;
}

.theme_xbox .pace_activity, .theme_xbox_sm .pace_activity, .theme_xbox_lg .pace_activity, .theme_xbox .pace_activity:before, .theme_xbox_sm .pace_activity:before, .theme_xbox_lg .pace_activity:before, .theme_xbox .pace_activity:after, .theme_xbox_sm .pace_activity:after, .theme_xbox_lg .pace_activity:after {
  border: 2px solid transparent;
  border-top-color: #fff;
  border-radius: 50%;
}

.theme_xbox .pace_activity:before, .theme_xbox_sm .pace_activity:before, .theme_xbox_lg .pace_activity:before {
  content: "";
  position: absolute;
  top: 5px;
  left: 5px;
  right: 5px;
  bottom: 5px;
  -webkit-animation: rotation ease-in-out 2s infinite;
          animation: rotation ease-in-out 2s infinite;
}

.theme_xbox .pace_activity:after, .theme_xbox_sm .pace_activity:after, .theme_xbox_lg .pace_activity:after {
  content: "";
  position: absolute;
  top: 12px;
  left: 12px;
  right: 12px;
  bottom: 12px;
  -webkit-animation: rotation ease-in-out 1s infinite;
          animation: rotation ease-in-out 1s infinite;
}

.theme_xbox_with_text .pace_activity {
  margin-top: -10px;
}

.theme_xbox_with_text span {
  display: block;
  margin-top: 10px;
  color: #fff;
  white-space: nowrap;
}

.theme_xbox_sm .pace_activity, .theme_xbox_sm .pace_activity:before, .theme_xbox_sm .pace_activity:after {
  border-width: 1px;
}

.theme_xbox_lg .pace_activity, .theme_xbox_lg .pace_activity:before, .theme_xbox_lg .pace_activity:after {
  border-width: 3px;
}

.theme_perspective {
  position: absolute;
  top: 50%;
  left: 0;
  right: 0;
  margin-top: -15px;
}

.theme_perspective .pace_activity {
  display: inline-block;
  background-color: #fff;
  -webkit-animation: perspective ease-in-out 1.2s infinite;
          animation: perspective ease-in-out 1.2s infinite;
  width: 30px;
  height: 30px;
}

@keyframes perspective {
  0% {
    transform: perspective(120px);
  }
  50% {
    transform: perspective(120px) rotateY(180deg);
  }
  100% {
    transform: perspective(120px) rotateY(180deg) rotateX(180deg);
  }
}

@-webkit-keyframes perspective {
  0% {
    -webkit-transform: perspective(120px);
  }
  50% {
    -webkit-transform: perspective(120px) rotateY(180deg);
  }
  100% {
    -webkit-transform: perspective(120px) rotateY(180deg) rotateX(180deg);
  }
}

.theme_perspective_with_text .pace_activity {
  margin-top: -12px;
}

.theme_perspective_with_text span {
  display: block;
  margin-top: 15px;
  color: #fff;
  white-space: nowrap;
}

.theme_squares {
  position: absolute;
  top: 50%;
  left: 0;
  right: 0;
  margin-top: -15px;
}

.theme_squares .pace_activity {
  width: 30px;
  height: 30px;
  margin: auto;
}

.theme_squares .pace_activity:before, .theme_squares .pace_activity:after {
  position: absolute;
  content: "";
  border: 2px solid #fff;
}

.theme_squares .pace_activity:before {
  width: 30px;
  height: 30px;
  margin-left: -15px;
  -webkit-animation: rotation_reverse linear 2s infinite;
          animation: rotation_reverse linear 2s infinite;
}

.theme_squares .pace_activity:after {
  width: 20px;
  height: 20px;
  margin-left: -10px;
  margin-top: 5px;
  -webkit-animation: rotation linear 2s infinite;
          animation: rotation linear 2s infinite;
}

.theme_squares_with_text .pace_activity {
  margin-top: -12px;
}

.theme_squares_with_text span {
  display: block;
  margin-top: 15px;
  color: #fff;
  white-space: nowrap;
}

.theme_tail {
  position: absolute;
  top: 50%;
  left: 0;
  right: 0;
  margin-top: -15px;
}

.theme_tail .pace_activity {
  margin: auto;
  width: 30px;
  height: 30px;
  border: 3px solid transparent;
  border-left-color: #fff;
  border-radius: 50%;
  -webkit-animation: rotation linear 1.1s infinite;
          animation: rotation linear 1.1s infinite;
}

.theme_tail_circle .pace_activity {
  border-color: rgba(0, 0, 0, 0.15);
  border-left-color: #fff;
}

.theme_tail_with_text .pace_activity {
  margin-top: -12px;
}

.theme_tail_with_text span {
  display: block;
  margin-top: 15px;
  color: #fff;
  white-space: nowrap;
}

.theme_corners {
  position: absolute;
  top: 50%;
  left: 0;
  right: 0;
  margin-top: -7px;
}

.theme_corners .pace_activity {
  display: inline-block;
  background-color: #fff;
  vertical-align: middle;
  border-radius: 50%;
  -webkit-animation: corners ease 1.5s infinite;
          animation: corners ease 1.5s infinite;
  width: 14px;
  height: 14px;
}

@keyframes corners {
  0% {
    transform: scale(1) rotate(0deg);
  }
  50% {
    border-radius: 0;
    transform: scale(2) rotate(-180deg);
  }
  100% {
    transform: scale(1) rotate(-360deg);
  }
}

@-webkit-keyframes corners {
  0% {
    -webkit-transform: scale(1) rotate(0deg);
  }
  50% {
    border-radius: 0;
    -webkit-transform: scale(2) rotate(-180deg);
  }
  100% {
    -webkit-transform: scale(1) rotate(-360deg);
  }
}

.theme_corners_with_text .pace_activity {
  margin-top: -28px;
}

.theme_corners_with_text span {
  display: block;
  margin-top: 15px;
  color: #fff;
  white-space: nowrap;
}

.theme_radar {
  position: absolute;
  top: 50%;
  left: 0;
  right: 0;
  margin-top: -15px;
}

.theme_radar .pace_activity {
  display: inline-block;
  width: 30px;
  height: 30px;
  border-radius: 50%;
  border: 2px solid transparent;
  border-top-color: #fff;
  border-bottom-color: #fff;
  -webkit-animation: rotation linear 1.1s infinite;
          animation: rotation linear 1.1s infinite;
}

.theme_radar_with_text .pace_activity {
  margin-top: -12px;
}

.theme_radar_with_text span {
  display: block;
  margin-top: 15px;
  color: #fff;
  white-space: nowrap;
}

.theme_bar, .theme_bar_lg, .theme_bar_sm {
  position: relative;
  width: 200px;
  height: 5px;
  background-color: rgba(0, 0, 0, 0.4);
  border-radius: 100px;
  box-shadow: 0 0 5px rgba(255, 255, 255, 0.1);
}

.theme_bar .pace_progress, .theme_bar_lg .pace_progress, .theme_bar_sm .pace_progress {
  max-width: 198px;
  display: block;
  position: absolute;
  left: 1px;
  top: 1px;
  height: 3px;
  background: #3FCF96;
  color: #fff;
  line-height: 36px;
  border-radius: 100px;
}

.theme_bar_lg {
  height: 6px;
}

.theme_bar_lg .pace_progress {
  height: 4px;
}

.theme_bar_sm {
  height: 4px;
}

.theme_bar_sm .pace_progress {
  height: 2px;
}

/* ------------------------------------------------------------------------------
 *
 *  # Uniform.js
 *
 *  Styles for uniform.min.js - form components styling
 *
 * ---------------------------------------------------------------------------- */
.uniform-checker,
.uniform-choice {
  position: relative;
  cursor: pointer;
  vertical-align: middle;
}

.uniform-checker,
.uniform-checker span,
.uniform-checker input,
.uniform-choice,
.uniform-choice span,
.uniform-choice input {
  width: 1.25rem;
  height: 1.25rem;
}

.uniform-checker span,
.uniform-choice span {
  border: 0.125rem solid #455A64;
  display: inline-block;
  text-align: center;
  position: relative;
}

.uniform-checker span.checked:after,
.uniform-choice span.checked:after {
  opacity: 1;
}

.uniform-checker input[type=checkbox],
.uniform-checker input[type=radio],
.uniform-choice input[type=checkbox],
.uniform-choice input[type=radio] {
  border: 0;
  background: none;
  display: inline-block;
  margin: 0;
  cursor: pointer;
  position: absolute;
  top: -0.125rem;
  left: -0.125rem;
  visibility: visible;
  opacity: 0;
  z-index: 2;
}

.form-check.form-check-inline .uniform-checker input[type=checkbox], .form-check.form-check-inline
.uniform-checker input[type=radio], .form-check.form-check-inline
.uniform-choice input[type=checkbox], .form-check.form-check-inline
.uniform-choice input[type=radio] {
  margin-left: 0;
  margin-right: 0;
}

.form-check .uniform-checker, .form-check
.uniform-choice {
  position: absolute;
  top: 0.00002rem;
  left: 0;
}

.form-check-right .uniform-checker, .form-check-right
.uniform-choice {
  left: auto;
  right: 0;
}

.form-check-inline .uniform-checker, .form-check-inline
.uniform-choice {
  position: static;
  margin-right: 0.625rem;
  margin-top: 0.00002rem;
}

.form-check-inline.form-check-right .uniform-checker, .form-check-inline.form-check-right
.uniform-choice {
  margin-right: 0;
  margin-left: 0.625rem;
}

.uniform-checker.disabled,
.uniform-choice.disabled {
  opacity: 0.5;
}

.uniform-checker.disabled,
.uniform-checker.disabled input,
.uniform-choice.disabled,
.uniform-choice.disabled input {
  cursor: default;
}

.uniform-checker span {
  color: #455A64;
  border-radius: 0.125rem;
  transition: border-color ease-in-out 0.15s, color ease-in-out 0.15s;
}

@media (prefers-reduced-motion: reduce) {
  .uniform-checker span {
    transition: none;
  }
}

.uniform-checker span:after {
  content: "\e600";
  font-family: "icomoon";
  font-size: 1rem;
  position: absolute;
  top: 0rem;
  left: 0rem;
  line-height: 1;
  opacity: 0;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  transition: opacity ease-in-out 0.15s;
}

@media (prefers-reduced-motion: reduce) {
  .uniform-checker span:after {
    transition: none;
  }
}

.form-check-light .uniform-checker span {
  border-color: #fff;
  color: #fff;
}

.uniform-checker[class*=border-] span {
  border-color: inherit;
  color: inherit;
}

.uniform-choice {
  border-radius: 100px;
}

.uniform-choice span {
  border-radius: 100px;
  transition: border-color ease-in-out 0.15s;
}

@media (prefers-reduced-motion: reduce) {
  .uniform-choice span {
    transition: none;
  }
}

.uniform-choice span:after {
  content: "";
  position: absolute;
  top: 0.1875rem;
  left: 0.1875rem;
  border: 0.3125rem solid;
  border-color: inherit;
  width: 0;
  height: 0;
  border-radius: 100px;
  opacity: 0;
  transition: all ease-in-out 0.15s;
}

@media (prefers-reduced-motion: reduce) {
  .uniform-choice span:after {
    transition: none;
  }
}

.form-check-light .uniform-choice span {
  border-color: #fff;
}

.uniform-choice[class*=border-] span {
  border-color: inherit;
}

.uniform-choice[class*=border-] span:after {
  border-color: inherit;
}

.dropdown-menu:not([class*=bg-]) .dropdown-item.active:not(.disabled) .uniform-checker span {
  border-color: #fff;
  color: #fff;
}

.dropdown-menu:not([class*=bg-]) .dropdown-item.active:not(.disabled) .uniform-choice span {
  border-color: #fff;
}

.dropdown-item.form-check .form-check-label {
  padding-left: 3.25rem;
}

.dropdown-item.form-check .uniform-checker,
.dropdown-item.form-check .uniform-choice {
  margin-top: 0.50002rem;
  left: 1rem;
}

.dropdown-item.form-check.form-check-right .form-check-label {
  padding-right: 3.25rem;
}

.dropdown-item.form-check.form-check-right .uniform-checker,
.dropdown-item.form-check.form-check-right .uniform-choice {
  left: auto;
  right: 1rem;
}

.dropdown-menu[class*=bg-]:not(.bg-white):not(.bg-transparent):not(.bg-light) .uniform-checker span {
  border-color: #fff;
  color: #fff;
}

.dropdown-menu[class*=bg-]:not(.bg-white):not(.bg-transparent):not(.bg-light) .uniform-choice span {
  border-color: #fff;
}

.uniform-uploader {
  position: relative;
  display: flex;
  align-items: stretch;
}

.uniform-uploader .filename {
  color: #999;
  padding: 0.4375rem 0.875rem;
  flex: 1;
  border: 1px solid #ddd;
  border-right: 0;
  background-color: #fff;
  text-align: left;
  word-break: break-word;
  border-top-left-radius: 0.1875rem;
  border-bottom-left-radius: 0.1875rem;
}

.uniform-uploader .action {
  z-index: 1;
  border-radius: 0;
  border-top-right-radius: 0.1875rem;
  border-bottom-right-radius: 0.1875rem;
}

.uniform-uploader input[type=file] {
  width: 100%;
  margin-top: 0;
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  min-height: 2.25003rem;
  border: 0;
  cursor: pointer;
  z-index: 10;
  opacity: 0;
}

.uniform-uploader.disabled .filename {
  background-color: #fafafa;
}

.uniform-uploader.disabled .filename,
.uniform-uploader.disabled input[type=file] {
  cursor: default;
}

.form-control-styled-lg input[type=file] {
  min-height: 2.50002rem;
}

.form-control-styled-lg .filename {
  padding: 0.5625rem 1rem;
  font-size: 0.875rem;
  line-height: 1.4286;
}

.form-control-styled-sm input[type=file] {
  min-height: 2.00002rem;
}

.form-control-styled-sm .filename {
  padding: 0.3125rem 0.75rem;
  font-size: 0.75rem;
  line-height: 1.6667;
}

.uniform-select {
  position: relative;
  display: block;
  width: 100%;
  height: 2.25003rem;
  padding: 0.4375rem 0.875rem;
  font-size: 0.8125rem;
  line-height: 1.5385;
  color: #333;
  background-color: #fff;
  border: 1px solid #ddd;
  border-radius: 0.1875rem;
  transition: all ease-in-out 0.15s;
}

@media (prefers-reduced-motion: reduce) {
  .uniform-select {
    transition: none;
  }
}

.uniform-select:hover, .uniform-select:focus {
  box-shadow: 0 0 0 62.5rem rgba(0, 0, 0, 0.01) inset;
}

.uniform-select[class*=bg-]:not(.bg-white):not(.bg-light):not(.bg-transparent) {
  color: #fff;
}

.uniform-select[class*=bg-]:not(.bg-white):not(.bg-light):not(.bg-transparent):hover, .uniform-select[class*=bg-]:not(.bg-white):not(.bg-light):not(.bg-transparent):focus {
  box-shadow: 0 0 0 62.5rem rgba(0, 0, 0, 0.04) inset;
}

.uniform-select span {
  display: block;
  position: relative;
  text-align: left;
  padding-right: 1.875rem;
  width: 100%;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.uniform-select span:after {
  content: '\e9c5';
  font-family: "icomoon";
  display: inline-block;
  position: absolute;
  top: 0;
  right: 0;
  font-size: 1rem;
  margin-top: -0.12502rem;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.uniform-select select {
  width: 100%;
  margin-top: 0;
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  height: 2.25003rem;
  border: 0;
  cursor: pointer;
  z-index: 10;
  opacity: 0;
}

.uniform-select.disabled:not([class*=bg-]) {
  color: #999;
  background-color: #fafafa;
}

.uniform-select.disabled:hover, .uniform-select.disabled:focus {
  box-shadow: none !important;
}

.uniform-select.disabled select {
  cursor: default;
}

.uniform-select.disabled[class*=bg-]:not(.bg-white):not(.bg-light):not(.bg-transparent) {
  opacity: 0.75;
}

.form-control-styled-lg select:not([size]):not([multiple]) {
  height: 2.50002rem;
}

.form-control-styled-lg .uniform-select {
  height: 2.50002rem;
  padding: 0.5625rem 1rem;
  font-size: 0.875rem;
  line-height: 1.4286;
}

.form-control-styled-sm select:not([size]):not([multiple]) {
  height: 2.00002rem;
}

.form-control-styled-sm .uniform-select {
  height: 2.00002rem;
  padding: 0.3125rem 0.75rem;
  font-size: 0.75rem;
  line-height: 1.6667;
}

/* ------------------------------------------------------------------------------
 *
 *  # Switchery
 *
 *  Styles for switchery.min.js - toggle switches
 *
 * ---------------------------------------------------------------------------- */
.switchery {
  background-color: #fff;
  border: 1px solid #ddd;
  cursor: pointer;
  display: block;
  line-height: 1;
  width: 2.25rem;
  height: 1.125rem;
  position: relative;
  box-sizing: content-box;
  border-radius: 100px;
}

.form-check-switchery .switchery {
  position: absolute;
  top: 0;
  left: 0;
  margin-top: 0.00002rem;
}

.form-check-switchery.disabled .switchery {
  cursor: default;
}

.switchery > small {
  background-color: #fff;
  width: 1.125rem;
  height: 1.125rem;
  position: absolute;
  top: 0;
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.4);
  border-radius: 100px;
}

.form-check-switchery:not(.dropdown-item) {
  padding-left: 3rem;
}

.form-check-switchery:not(.dropdown-item).form-check-right {
  padding-left: 0;
  padding-right: 3rem;
}

.form-check-switchery:not(.dropdown-item).form-check-right .switchery {
  left: auto;
  right: 0;
}

.form-check-switchery-double.form-check-switchery {
  padding-left: 0;
  padding-right: 0;
}

.form-check-switchery-double.form-check-switchery .switchery {
  margin-top: 0;
}

.form-check-switchery-double .form-check-label {
  display: inline-flex;
  align-items: center;
}

.form-check-switchery-double .switchery {
  position: relative;
  margin-left: 0.625rem;
  margin-right: 0.625rem;
}

.form-check-switchery-double input {
  margin-left: 0.625rem;
  margin-right: 0.625rem;
}

.dropdown-item.form-check-switchery .form-check-label {
  padding-left: 4.375rem;
}

.dropdown-item.form-check-switchery .switchery {
  top: 50%;
  left: 1rem;
  margin-top: -0.625rem;
}

.dropdown-item.form-check-right.form-check-switchery .form-check-label {
  padding-right: 4.375rem;
}

.dropdown-item.form-check-right.form-check-switchery .switchery {
  left: auto;
  right: 1rem;
}

/* ------------------------------------------------------------------------------
*
*  # Bootstrap switches
*
*  Styles for switch.min.js - checkbox/radio toggle switches
*
* ---------------------------------------------------------------------------- */
.bootstrap-switch {
  display: inline-block;
  border: 1px solid transparent;
  position: relative;
  overflow: hidden;
  vertical-align: middle;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
  /*rtl:begin:ignore*/
  direction: ltr;
  text-align: left;
  /*rtl:end:ignore*/
  border-radius: 0.1875rem;
  transition: all ease-in-out 0.15s;
}

@media (prefers-reduced-motion: reduce) {
  .bootstrap-switch {
    transition: none;
  }
}

.bootstrap-switch .bootstrap-switch-container {
  display: inline-block;
  top: 0;
  transform: translate3d(0, 0, 0);
  border-radius: 0.1875rem;
}

.bootstrap-switch .bootstrap-switch-handle-on,
.bootstrap-switch .bootstrap-switch-handle-off,
.bootstrap-switch .bootstrap-switch-label {
  cursor: pointer;
  display: inline-block;
  height: 100%;
  padding: 0.4375rem 0.875rem;
}

.bootstrap-switch input {
  position: absolute;
  top: 0;
  left: 0;
  z-index: -1;
  opacity: 0;
}

.form-check-switch {
  padding: 0;
}

.form-group.row .form-check-switch {
  margin-top: 0;
}

.form-check-switch-left .bootstrap-switch {
  margin-right: 0.625rem;
}

.form-check-switch-right .bootstrap-switch {
  margin-left: 0.625rem;
}

.bootstrap-switch-focused {
  outline: 0;
}

.bootstrap-switch-disabled .bootstrap-switch-handle-on,
.bootstrap-switch-disabled .bootstrap-switch-handle-off,
.bootstrap-switch-disabled .bootstrap-switch-label {
  cursor: default;
  opacity: 0.5;
}

.bootstrap-switch-readonly .bootstrap-switch-handle-on,
.bootstrap-switch-readonly .bootstrap-switch-handle-off,
.bootstrap-switch-readonly .bootstrap-switch-label,
.bootstrap-switch-indeterminate .bootstrap-switch-handle-on,
.bootstrap-switch-indeterminate .bootstrap-switch-handle-off,
.bootstrap-switch-indeterminate .bootstrap-switch-label {
  cursor: default !important;
  opacity: 0.5;
}

.bootstrap-switch-animate .bootstrap-switch-container {
  transition: margin 0.15s;
}

@media (prefers-reduced-motion: reduce) {
  .bootstrap-switch-animate .bootstrap-switch-container {
    transition: none;
  }
}

/*rtl:begin:ignore*/
.bootstrap-switch-inverse .bootstrap-switch-handle-on {
  border-top-left-radius: 0;
  border-bottom-left-radius: 0;
  border-top-right-radius: calc(0.1875rem - 1px);
  border-bottom-right-radius: calc(0.1875rem - 1px);
}

.bootstrap-switch-inverse .bootstrap-switch-handle-off {
  border-top-right-radius: 0;
  border-bottom-right-radius: 0;
  border-top-left-radius: calc(0.1875rem - 1px);
  border-bottom-left-radius: calc(0.1875rem - 1px);
}

.bootstrap-switch-on .bootstrap-switch-label,
.bootstrap-switch-inverse.bootstrap-switch-off .bootstrap-switch-label {
  border-top-right-radius: calc(0.1875rem - 1px);
  border-bottom-right-radius: calc(0.1875rem - 1px);
}

.bootstrap-switch-off .bootstrap-switch-label,
.bootstrap-switch-inverse.bootstrap-switch-on .bootstrap-switch-label {
  border-top-left-radius: calc(0.1875rem - 1px);
  border-bottom-left-radius: calc(0.1875rem - 1px);
}

/*rtl:end:ignore*/
.bootstrap-switch-handle-on,
.bootstrap-switch-handle-off {
  text-align: center;
  white-space: nowrap;
  z-index: 1;
}

.bootstrap-switch-default {
  color: #333;
  background-color: #eee;
}

.bootstrap-switch-primary {
  color: #fff;
  background-color: #2196F3;
}

.bootstrap-switch-danger {
  color: #fff;
  background-color: #F44336;
}

.bootstrap-switch-success {
  color: #fff;
  background-color: #4CAF50;
}

.bootstrap-switch-warning {
  color: #fff;
  background-color: #FF7043;
}

.bootstrap-switch-info {
  color: #fff;
  background-color: #00BCD4;
}

/*rtl:begin:ignore*/
.bootstrap-switch-handle-on {
  border-top-left-radius: calc(0.1875rem - 1px);
  border-bottom-left-radius: calc(0.1875rem - 1px);
}

.bootstrap-switch-handle-off {
  border-top-right-radius: calc(0.1875rem - 1px);
  border-bottom-right-radius: calc(0.1875rem - 1px);
}

/*rtl:end:ignore*/
.bootstrap-switch-label {
  text-align: center;
  z-index: 100;
  background-color: #fff;
  position: relative;
  box-shadow: 0 0 0 1px rgba(0, 0, 0, 0.15) inset;
  transition: background-color ease-in-out 0.15s;
}

@media (prefers-reduced-motion: reduce) {
  .bootstrap-switch-label {
    transition: none;
  }
}

.bootstrap-switch-label:hover, .bootstrap-switch-label:active {
  background-color: #fafafa;
}

.bootstrap-switch-label:after {
  content: '';
  position: absolute;
  top: 50%;
  left: 50%;
  width: 0.25rem;
  height: 0.625rem;
  margin-top: -0.3125rem;
  margin-left: -0.125rem;
  display: inline-block;
  border-left: 1px solid rgba(0, 0, 0, 0.15);
  border-right: 1px solid rgba(0, 0, 0, 0.15);
}

.bootstrap-switch-large .bootstrap-switch-handle-on,
.bootstrap-switch-large .bootstrap-switch-handle-off,
.bootstrap-switch-large .bootstrap-switch-label {
  padding: 0.5625rem 1rem;
}

.bootstrap-switch-small .bootstrap-switch-handle-on,
.bootstrap-switch-small .bootstrap-switch-handle-off,
.bootstrap-switch-small .bootstrap-switch-label {
  padding: 0.3125rem 0.75rem;
}

.form-check-right .bootstrap-switch {
  margin-right: 0;
  margin-left: 0.625rem;
}

/* ------------------------------------------------------------------------------
*
*  # Select2 selects
*
*  Styles for select2.js - custom select plugin
*
* ---------------------------------------------------------------------------- */
.select2-container {
  outline: 0;
  position: relative;
  display: inline-block;
  vertical-align: middle;
  text-align: left;
}

.select2-selection--single {
  cursor: pointer;
  outline: 0;
  display: block;
  padding: 0.4375rem 0;
  line-height: 1.5385;
  color: #333;
  position: relative;
  border: 1px solid transparent;
  white-space: nowrap;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
  border-radius: 0.1875rem;
  transition: all ease-in-out 0.15s;
}

@media (prefers-reduced-motion: reduce) {
  .select2-selection--single {
    transition: none;
  }
}

.select2-selection--single:hover, .select2-selection--single:focus,
.select2-container--open .select2-selection--single {
  box-shadow: 0 0 0 62.5rem rgba(0, 0, 0, 0.01) inset;
}

.select2-selection--single:not([class*=bg-]) {
  background-color: #fff;
}

.select2-selection--single:not([class*=bg-]):not([class*=border-]) {
  border-color: #ddd;
}

.select2-selection--single[class*=bg-]:hover, .select2-selection--single[class*=bg-]:focus,
.select2-container--open .select2-selection--single[class*=bg-] {
  box-shadow: 0 0 0 62.5rem rgba(0, 0, 0, 0.04) inset;
}

.select2-selection--single[class*=bg-] .select2-selection__placeholder {
  color: #fff;
}

.select2-container--disabled .select2-selection--single[class*=bg-] .select2-selection__placeholder {
  color: rgba(255, 255, 255, 0.75);
}

.select2-selection--single .select2-selection__rendered {
  display: block;
  padding-left: 0.875rem;
  padding-right: 2.375rem;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.select2-selection--single .select2-selection__rendered > i {
  margin-right: 0.625rem;
}

.select2-selection--single .select2-selection__clear {
  position: relative;
  cursor: pointer;
  float: right;
  font-size: 0;
  line-height: 1;
  margin-top: 0.12502rem;
  margin-left: 0.625rem;
  opacity: 0.75;
  transition: opacity ease-in-out 0.15s;
}

@media (prefers-reduced-motion: reduce) {
  .select2-selection--single .select2-selection__clear {
    transition: none;
  }
}

.select2-selection--single .select2-selection__clear:hover {
  opacity: 1;
}

.select2-selection--single .select2-selection__clear:after {
  content: '\ed6b';
  font-family: "icomoon";
  display: inline-block;
  font-size: 1rem;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.select2-selection--single .select2-selection__placeholder {
  color: #999;
}

.select2-selection--single .select2-selection__arrow:after {
  content: '\e9c5';
  font-family: "icomoon";
  display: inline-block;
  position: absolute;
  top: 50%;
  right: 0.875rem;
  margin-top: -0.5rem;
  font-size: 1rem;
  line-height: 1;
  color: inherit;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.select2-selection--single .select2-selection__arrow b {
  display: none;
}

.select2-container--disabled .select2-selection--single {
  cursor: default;
  box-shadow: none;
}

.select2-container--disabled .select2-selection--single:not([class*=bg-]) {
  color: #999;
  background-color: #fafafa;
}

.select2-container--disabled .select2-selection--single[class*=bg-] {
  opacity: 0.75;
  box-shadow: none;
}

.select2-container--disabled .select2-selection--single .select2-selection__clear {
  display: none;
}

.select2-selection--multiple {
  display: block;
  border: 1px solid transparent;
  cursor: text;
  outline: 0;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
  border-radius: 0.1875rem;
}

.select2-selection--multiple:not([class*=bg-]) {
  background-color: #fff;
}

.select2-selection--multiple:not([class*=bg-]):not([class*=border-]) {
  border-color: #ddd;
}

.select2-selection--multiple .select2-selection__rendered {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  list-style: none;
  margin: 0;
  padding: 0 0.125rem 0.125rem 0.125rem;
  width: 100%;
}

.select2-selection--multiple .select2-selection__placeholder {
  color: #999;
}

.select2-container--disabled .select2-selection--multiple:not([class*=bg-]) {
  background-color: #fafafa;
}

.select2-container--disabled .select2-selection--multiple[class*=bg-] {
  opacity: 0.75;
  box-shadow: none;
}

.select2-container--disabled .select2-selection--multiple[class*=bg-] .select2-selection__choice {
  opacity: 1;
}

.select2-container--disabled .select2-selection--multiple,
.select2-container--disabled .select2-selection--multiple .select2-selection__choice,
.select2-container--disabled .select2-selection--multiple .select2-search__field {
  cursor: default;
}

.select2-selection--multiple .select2-selection__choice {
  background-color: #455A64;
  color: #fff;
  cursor: default;
  float: left;
  margin-right: 0.125rem;
  margin-top: 0.125rem;
  padding: 0.3125rem 0.875rem;
  border-radius: 0.1875rem;
  transition: color ease-in-out 0.15s, background-color ease-in-out 0.15s;
}

@media (prefers-reduced-motion: reduce) {
  .select2-selection--multiple .select2-selection__choice {
    transition: none;
  }
}

.select2-selection--multiple .select2-selection__choice:hover, .select2-selection--multiple .select2-selection__choice:focus {
  background-color: #455A64;
  color: #fff;
}

.select2-selection--multiple .select2-selection__choice > i {
  margin-right: 0.625rem;
}

.select2-selection--multiple .select2-selection__choice .select2-selection__choice__remove {
  cursor: pointer;
  float: right;
  font-size: 0.875rem;
  margin-top: 0.18752rem;
  line-height: 1;
  margin-left: 0.625rem;
  opacity: 0.75;
  transition: opacity ease-in-out 0.15s;
}

@media (prefers-reduced-motion: reduce) {
  .select2-selection--multiple .select2-selection__choice .select2-selection__choice__remove {
    transition: none;
  }
}

.select2-selection--multiple .select2-selection__choice .select2-selection__choice__remove:hover {
  opacity: 1;
}

.select2-container--disabled .select2-selection--multiple .select2-selection__choice {
  opacity: 0.6;
}

.select2-container--disabled .select2-selection--multiple .select2-selection__choice:hover, .select2-container--disabled .select2-selection--multiple .select2-selection__choice:focus {
  background-color: #455A64;
  color: #fff;
}

.select2-container--disabled .select2-selection--multiple .select2-selection__choice .select2-selection__choice__remove {
  display: none;
}

.select2-selection--multiple .select2-search--inline {
  float: left;
}

.select2-selection--multiple .select2-search--inline .select2-search__field {
  font-size: 100%;
  margin-top: 0.125rem;
  padding: 0.3125rem 0;
  background-color: transparent;
  border-width: 0;
  outline: 0;
  color: inherit;
  margin-left: 0.25rem;
  -webkit-appearance: textfield;
}

.select2-selection--multiple .select2-search--inline .select2-search__field::-webkit-search-cancel-button {
  -webkit-appearance: none;
}

.select2-selection--multiple .select2-search--inline:first-child .select2-search__field {
  margin-left: 0;
  padding-left: 0.75rem;
}

.select2-dropdown {
  background-color: #fff;
  color: #333;
  border: 1px solid rgba(0, 0, 0, 0.15);
  display: block;
  position: absolute;
  /*rtl:ignore*/
  left: -100000px;
  width: 100%;
  z-index: 1070;
  border-radius: 0.1875rem;
  box-shadow: 0 0.25rem 0.5rem rgba(0, 0, 0, 0.1);
}

.select2-results {
  display: block;
}

.select2-results__options {
  list-style: none;
  margin: 0;
  padding: 0;
}

.select2-results > .select2-results__options {
  padding-bottom: 0.5rem;
  max-height: 280px;
  overflow-y: auto;
}

.select2-search--hide + .select2-results > .select2-results__options {
  padding-top: 0.5rem;
}

.select2-results:first-child > .select2-results__options {
  padding-top: 0.5rem;
}

.select2-results__option {
  padding: 0.5rem 1rem;
  cursor: pointer;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
  transition: all ease-in-out 0.15s;
}

@media (prefers-reduced-motion: reduce) {
  .select2-results__option {
    transition: none;
  }
}

.select2-results__option + .select2-results__option {
  margin-top: 1px;
}

.select2-results__option i {
  margin-right: 0.625rem;
}

.select2-results__option i.icon-undefined {
  display: none;
}

.select2-results__option[role=group] {
  padding: 0;
}

.select2-results__option.select2-results__option--highlighted {
  background-color: #f5f5f5;
  color: #333;
}

.select2-results__option[aria-disabled=true] {
  color: #999;
  cursor: default;
}

.select2-dropdown[class*=bg-] .select2-results__option[aria-disabled=true] {
  color: rgba(255, 255, 255, 0.6);
}

.select2-results__option[aria-selected=true] {
  color: #fff;
  background-color: #2196F3;
}

.select2-results__options--nested > .select2-results__option {
  padding-left: 2rem;
  padding-right: 2rem;
}

.select2-results__group {
  display: block;
  padding: 0.5rem 1rem;
  cursor: default;
  font-weight: 500;
  margin-top: 0.5rem;
  margin-bottom: 0.5rem;
}

.select2-results__option:first-child > .select2-results__group {
  margin-top: 0;
}

.select2-results__message {
  color: #999;
  cursor: default;
}

.select2-dropdown[class*=bg-] .select2-results__message {
  color: rgba(255, 255, 255, 0.75);
}

.select2-results__option.loading-results {
  padding-top: 0;
}

.select2-results__option.loading-results + .select2-results__option {
  margin-top: 0.5rem;
}

.select2-results__option--load-more {
  text-align: center;
  margin-top: 0.5rem;
  cursor: default;
}

.select2-container--open .select2-dropdown {
  /*rtl:ignore*/
  left: 0;
}

.select2-container--open .select2-dropdown--above {
  border-bottom: 0;
  border-bottom-right-radius: 0;
  border-bottom-left-radius: 0;
}

.select2-container--open .select2-dropdown--above[class*=bg-] {
  border-bottom: 1px solid rgba(255, 255, 255, 0.2);
}

.select2-container--open.select2-container--above .select2-selection--single,
.select2-container--open.select2-container--above .select2-selection--multiple {
  border-top-left-radius: 0;
  border-top-right-radius: 0;
}

.select2-container--open .select2-dropdown--below {
  border-top: none;
  border-top-left-radius: 0;
  border-top-right-radius: 0;
}

.select2-container--open .select2-dropdown--below[class*=bg-] {
  border-top: 1px solid rgba(255, 255, 255, 0.2);
}

.select2-container--open.select2-container--below .select2-selection--single,
.select2-container--open.select2-container--below .select2-selection--multiple {
  border-bottom-right-radius: 0;
  border-bottom-left-radius: 0;
}

.select2-search--dropdown {
  display: block;
  position: relative;
  padding: 1rem;
}

.select2-search--dropdown:after {
  content: '\e98e';
  font-family: "icomoon";
  position: absolute;
  top: 50%;
  left: 1.875rem;
  color: inherit;
  display: block;
  font-size: 0.8125rem;
  margin-top: -0.40625rem;
  line-height: 1;
  opacity: 0.6;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.select2-search--dropdown + .select2-results .select2-results__message:first-child {
  padding-top: 0;
}

.select2-search--dropdown .select2-search__field {
  padding: 0.4375rem 0.875rem;
  padding-left: 2.5625rem;
  border: 1px solid #ddd;
  outline: 0;
  width: 100%;
  border-radius: 0.1875rem;
}

.select2-search--dropdown .select2-search__field::-webkit-search-cancel-button {
  -webkit-appearance: none;
}

.select2-search--dropdown.select2-search--hide {
  display: none;
}

.select-lg.select2-selection--single {
  padding: 0.5625rem 0;
  font-size: 0.875rem;
  line-height: 1.4286;
}

.select-lg.select2-selection--single .select2-selection__rendered {
  padding-left: 1rem;
  padding-right: 2.5rem;
}

.select-lg.select2-selection--single .select2-selection__arrow:after {
  right: 1rem;
}

.select-lg.select2-selection--multiple .select2-selection__choice {
  padding: 0.4375rem 1rem;
  font-size: 0.875rem;
  line-height: 1.4286;
}

.select-lg.select2-selection--multiple .select2-search--inline .select2-search__field {
  padding: 0.4375rem 0;
  font-size: 0.875rem;
  line-height: 1.4286;
}

.select-sm.select2-selection--single {
  padding: 0.3125rem 0;
  font-size: 0.75rem;
  line-height: 1.6667;
}

.select-sm.select2-selection--single .select2-selection__rendered {
  padding-left: 0.75rem;
  padding-right: 2.375rem;
}

.select-sm.select2-selection--single .select2-selection__arrow:after {
  right: 0.75rem;
}

.select-sm.select2-selection--multiple .select2-selection__choice {
  padding: 0.1875rem 0.75rem;
  font-size: 0.75rem;
  line-height: 1.6667;
}

.select-sm.select2-selection--multiple .select2-search--inline .select2-search__field {
  padding: 0.1875rem 0;
  font-size: 0.75rem;
  line-height: 1.6667;
}

.select2-selection--multiple[class*=bg-] .select2-selection__choice {
  background-color: rgba(0, 0, 0, 0.2);
}

.select2-dropdown[class*=bg-] .select2-search--dropdown .select2-search__field {
  background-color: rgba(0, 0, 0, 0.2);
  border-color: transparent;
  color: #fff;
}

.select2-dropdown[class*=bg-] .select2-results__option[aria-selected=true] {
  background-color: rgba(0, 0, 0, 0.2);
  color: #fff;
}

.select2-dropdown[class*=bg-] .select2-results__option--highlighted {
  background-color: rgba(0, 0, 0, 0.1);
  color: #fff;
}

.select2-close-mask {
  border: 0;
  margin: 0;
  padding: 0;
  display: block;
  position: fixed;
  left: 0;
  top: 0;
  min-height: 100%;
  min-width: 100%;
  height: auto;
  width: auto;
  z-index: 99;
  background-color: #fff;
  opacity: 0;
}

.select2-hidden-accessible {
  border: 0 !important;
  clip: rect(0 0 0 0) !important;
  height: 1px !important;
  margin: -1px !important;
  overflow: hidden !important;
  padding: 0 !important;
  position: fixed !important;
  width: 1px !important;
}

.select2-result-repository {
  padding-top: 0.4375rem;
  padding-bottom: 0.4375rem;
}

.select2-result-repository__avatar {
  float: left;
  width: 60px;
  margin-right: 0.9375rem;
}

.select2-result-repository__avatar img {
  width: 100%;
  height: auto;
  border-radius: 100px;
}

.select2-result-repository__meta {
  margin-left: 70px;
}

.select2-result-repository__title {
  font-weight: 500;
  word-wrap: break-word;
  margin-bottom: 2px;
}

.select2-result-repository__forks,
.select2-result-repository__stargazers,
.select2-result-repository__watchers {
  display: inline-block;
  font-size: 0.75rem;
}

.select2-result-repository__description {
  font-size: 0.75rem;
}

.select2-result-repository__forks,
.select2-result-repository__stargazers {
  margin-right: 0.9375rem;
}

/* ------------------------------------------------------------------------------
*
*  # Bootstrap multiselect
*
*  Styles for multiselect.js - custom multiple select plugin
*
* ---------------------------------------------------------------------------- */
.multiselect-native-select {
  position: relative;
}

.multiselect-native-select select {
  border: 0 !important;
  clip: rect(0 0 0 0) !important;
  height: 0 !important;
  margin: 0 !important;
  overflow: hidden !important;
  padding: 0 !important;
  position: absolute !important;
  width: 0 !important;
  left: 0;
  top: 0;
}

.multiselect {
  width: 100%;
  text-align: left;
  padding-left: 0.875rem;
  padding-right: 2.375rem;
  text-transform: none;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.multiselect:after {
  position: absolute;
  top: 50%;
  right: 0.875rem;
  margin-top: -0.34375rem;
  text-align: right;
}

.multiselect:not([class*=font-weight-]) {
  font-weight: 400;
}

.multiselect.btn-light {
  background-color: #fff;
  border-color: #ddd;
}

.multiselect.btn-light:hover, .multiselect.btn-light:focus, .multiselect.btn-light:not([disabled]):not(.disabled):active,
.btn-group.show .multiselect.btn-light {
  background-color: #fff;
  box-shadow: 0 0 0 62.5rem rgba(0, 0, 0, 0.01) inset;
}

.multiselect.btn-light.disabled {
  background-color: #fafafa;
}

.multiselect.btn-lg, .btn-group-lg > .multiselect.btn {
  padding-left: 1rem;
  padding-right: 2.5rem;
}

.multiselect.btn-lg:after, .btn-group-lg > .multiselect.btn:after {
  right: 1rem;
}

.multiselect.btn-sm, .btn-group-sm > .multiselect.btn {
  padding-left: 0.75rem;
  padding-right: 2.25rem;
}

.multiselect.btn-sm:after, .btn-group-sm > .multiselect.btn:after {
  right: 0.75rem;
}

.multiselect-container {
  max-height: 280px;
  overflow-y: auto;
  width: 100%;
}

.multiselect-item input[type=checkbox],
.multiselect-item input[type=radio] {
  border: 0;
  background: none;
  display: block;
  margin: 0;
  cursor: pointer;
  position: absolute;
  top: 50%;
  left: 1rem;
  margin-top: -0.625rem;
  opacity: 0;
  z-index: 2;
  width: 1.25rem;
  height: 1.25rem;
}

.multiselect-item input[type=checkbox]:disabled,
.multiselect-item input[type=radio]:disabled {
  cursor: default;
}

.multiselect-item input[type=checkbox] ~ .form-check-control-indicator,
.multiselect-item input[type=radio] ~ .form-check-control-indicator {
  position: absolute;
  left: 1rem;
  top: 50%;
  margin-top: -0.625rem;
  border: 0.125rem solid #455A64;
  width: 1.25rem;
  height: 1.25rem;
}

.multiselect-item input[type=checkbox] ~ .form-check-control-indicator {
  color: #455A64;
  border-radius: 0.125rem;
  transition: border-color ease-in-out 0.15s, color ease-in-out 0.15s;
}

@media (prefers-reduced-motion: reduce) {
  .multiselect-item input[type=checkbox] ~ .form-check-control-indicator {
    transition: none;
  }
}

.multiselect-item input[type=checkbox] ~ .form-check-control-indicator:after {
  content: "\e600";
  font-family: "icomoon";
  font-size: 1rem;
  position: absolute;
  top: 0rem;
  left: 0rem;
  line-height: 1;
  opacity: 0;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  transition: opacity ease-in-out 0.15s;
}

@media (prefers-reduced-motion: reduce) {
  .multiselect-item input[type=checkbox] ~ .form-check-control-indicator:after {
    transition: none;
  }
}

.multiselect-item input[type=radio] ~ .form-check-control-indicator {
  border-radius: 100px;
  transition: border-color ease-in-out 0.15s;
}

@media (prefers-reduced-motion: reduce) {
  .multiselect-item input[type=radio] ~ .form-check-control-indicator {
    transition: none;
  }
}

.multiselect-item input[type=radio] ~ .form-check-control-indicator:after {
  content: "";
  position: absolute;
  top: 0.1875rem;
  left: 0.1875rem;
  border: 0.3125rem solid;
  border-color: inherit;
  width: 0;
  height: 0;
  border-radius: 100px;
  opacity: 0;
  transition: all ease-in-out 0.15s;
}

@media (prefers-reduced-motion: reduce) {
  .multiselect-item input[type=radio] ~ .form-check-control-indicator:after {
    transition: none;
  }
}

.multiselect-item input[type=checkbox]:checked ~ .form-check-control-indicator:after,
.multiselect-item input[type=radio]:checked ~ .form-check-control-indicator:after {
  opacity: 1;
}

.multiselect-item.active:not(.disabled) input[type=checkbox] ~ .form-check-control-indicator {
  border-color: #fff;
  color: #fff;
}

.multiselect-item.active:not(.disabled) input[type=radio] ~ .form-check-control-indicator {
  border-color: #fff;
}

.multiselect-item.disabled .form-check-control-indicator {
  opacity: 0.5;
}

.dropdown-menu[class*=bg-] .multiselect-item .form-check-control-indicator {
  border-color: #fff;
  color: #fff;
}

.multiselect-group {
  padding: 0.5rem 1rem;
  font-weight: 500;
  margin-top: 0.5rem;
  margin-bottom: 0.5rem;
}

.multiselect-group:first-child {
  margin-top: 0;
}

.multiselect-group label {
  margin-bottom: 0;
}

.multiselect-group.disabled {
  color: #999;
  cursor: default;
}

.multiselect-all {
  font-weight: 500;
}

.multiselect-group-clickable label {
  cursor: pointer;
}

.multiselect-filter {
  position: relative;
  padding: 0.5rem 1rem;
  margin-bottom: 0.5rem;
}

.multiselect-filter .input-group > i {
  font-size: 0.8125rem;
  position: absolute;
  left: 0.9375rem;
  top: 50%;
  margin-top: -0.40625rem;
  opacity: 0.5;
  z-index: 4;
}

.multiselect-filter .form-control {
  padding-left: 2.5625rem;
}

.input-group .multiselect-native-select {
  display: flex;
  align-items: center;
  flex: 1 1 auto;
}

.input-group .multiselect-native-select:not(:first-child) .multiselect {
  border-top-left-radius: 0;
  border-bottom-left-radius: 0;
}

.input-group .multiselect-native-select:not(:last-child) .multiselect {
  border-top-right-radius: 0;
  border-bottom-right-radius: 0;
}

/* ------------------------------------------------------------------------------
*
*  # Passy
*
*  Styles for passy.min.js - password length checker and password generator
*
* ---------------------------------------------------------------------------- */
.badge-indicator-absolute {
  position: relative;
}

.badge-indicator-absolute .password-indicator-badge-absolute {
  position: absolute;
  top: 50%;
  margin-top: -0.62502rem;
  right: 0.875rem;
  transition: all ease-in-out 0.15s;
}

@media (prefers-reduced-motion: reduce) {
  .badge-indicator-absolute .password-indicator-badge-absolute {
    transition: none;
  }
}

/* ------------------------------------------------------------------------------
*
*  # Twiter Typeahead
*
*  Styles for typeahead.bundle.min.js - input suggestion engine
*
* ---------------------------------------------------------------------------- */
.twitter-typeahead {
  width: 100%;
}

.tt-hint {
  color: #999;
}

.tt-menu {
  width: 100%;
  margin-top: 0.125rem;
  min-width: 11.25rem;
  padding: 0.5rem 0;
  background-color: #fff;
  border: 1px solid rgba(0, 0, 0, 0.15);
  max-height: 350px;
  overflow-y: auto;
  border-radius: 0.1875rem;
  box-shadow: 0 0.25rem 0.5rem rgba(0, 0, 0, 0.1);
}

.typeahead-scrollable .tt-menu {
  max-height: 250px;
}

.tt-suggestion {
  color: #333;
  padding: 0.5rem 1rem;
  cursor: pointer;
  transition: all ease-in-out 0.15s;
}

@media (prefers-reduced-motion: reduce) {
  .tt-suggestion {
    transition: none;
  }
}

.tt-suggestion:hover, .tt-suggestion:focus, .tt-suggestion.tt-cursor {
  color: #333;
  background-color: #f5f5f5;
}

.tt-heading {
  padding: 0.5rem 1rem;
  display: block;
  font-weight: 700;
  margin-top: 0.5rem;
  margin-bottom: 0.5rem;
}

.tt-dataset-group:first-child .tt-heading:first-child {
  margin-top: 0;
}

.typeahead-template .empty-message {
  padding: 0.5rem 1rem;
  text-align: center;
}

/* ------------------------------------------------------------------------------
*
*  # Form Validation
*
*  Styles for validate.min.js - jQuery plugin for simple clientside form validation
*
* ---------------------------------------------------------------------------- */
.validation-invalid-label,
.validation-valid-label {
  margin-top: 0.5rem;
  margin-bottom: 0.5rem;
  display: block;
  color: #F44336;
  position: relative;
  padding-left: 1.625rem;
}

.validation-valid-label {
  color: #4CAF50;
}

.validation-invalid-label:before,
.validation-valid-label:before {
  font-family: "icomoon";
  font-size: 1rem;
  position: absolute;
  top: 0.12502rem;
  left: 0;
  display: inline-block;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.validation-invalid-label:empty,
.validation-valid-label:empty {
  display: none;
}

.validation-invalid-label:before {
  content: '\ed63';
}

.validation-valid-label:before {
  content: '\ee73';
}

/* ------------------------------------------------------------------------------
*
*  # Floating labels
*
*  Styles for custom Floating Labels extensions
*
* ---------------------------------------------------------------------------- */
.form-group-float-label {
  position: relative;
  top: 0.4375rem;
  opacity: 0;
}

.form-group-float-label.is-visible {
  top: 0;
  opacity: 1;
}

.form-group-float-label.animate {
  transition: all linear 0.15s;
}

@media (prefers-reduced-motion: reduce) {
  .form-group-float-label.animate {
    transition: none;
  }
}

/* ------------------------------------------------------------------------------
*
*  # Alpaca forms
*
*  Styles for alpaca.min.js - the easiest way to generate interactive HTML5 forms for web applications
*
* ---------------------------------------------------------------------------- */
.alpaca-hidden {
  display: none;
}

.alpaca-field .help-block,
.alpaca-field .alpaca-field-text-max-length-indicator {
  color: #999;
  margin-top: 0.5rem;
  margin-bottom: 0.5rem;
}

.has-error .multiselect-container > .active .form-check {
  color: #fff;
}

.has-error .btn-group.show .multiselect.btn,
.has-error .multiselect.btn-light:active {
  color: #F44336;
  border-color: #F44336;
}

.alpaca-disabled .form-check label,
.alpaca-disabled .form-check .switchery {
  cursor: default;
  color: #999;
}

.alpaca-invalid .alpaca-control-label,
.alpaca-invalid .alpaca-message {
  color: #F44336;
}

.alpaca-invalid .form-control {
  color: #F44336;
}

.alpaca-invalid .form-control, .alpaca-invalid .form-control:hover, .alpaca-invalid .form-control:focus {
  border-color: #F44336;
}

.alpaca-clear {
  clear: both;
}

.alpaca-float-right {
  float: right;
}

.alpaca-field .glyphicon {
  font-family: "icomoon";
  font-size: 1rem;
  vertical-align: middle;
  margin-top: -0.09375rem;
  font-style: normal;
  line-height: 1;
  display: inline-block;
  margin-right: 0.625rem;
}

.alpaca-field .glyphicon-info-sign {
  display: none;
}

.alpaca-field .glyphicon-exclamation-sign:before {
  content: '\ed63';
}

.alpaca-icon-required {
  font-family: "Roboto", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";
  float: right;
  margin-right: 0;
  margin-left: 0.625rem;
}

.alpaca-icon-required:before {
  content: '*';
}

.alpaca-controlfield-editor {
  position: relative;
  width: 100%;
  height: 300px;
  border: 1px solid #ddd;
}

.alpaca-controlfield-editor .control-field-editor-el {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
}

.ace_editor {
  border: 1px solid #cccccc;
}

.alpaca-field-ckeditor.alpaca-invalid > .cke {
  border-color: #D84315;
}

.alpaca-field-optiontree .optiontree + .form-control {
  margin-left: 0.625rem;
}

.alpaca-field-optiontree.optiontree-horizontal .optiontree {
  display: inline-block;
}

.alpaca-field-optiontree.optiontree-horizontal .optiontree .optiontree-selector {
  display: inline-block;
  margin-top: 0.3125rem;
  margin-bottom: 0.3125rem;
}

.alpaca-field-optiontree.optiontree-horizontal .optiontree .optiontree-selector:empty {
  display: none;
}

.alpaca-field-optiontree.optiontree-horizontal .optiontree .optiontree-selector + .optiontree-selector {
  margin-left: 0.625rem;
}

.alpaca-field-optiontree.optiontree-horizontal input {
  display: inline-block;
  width: auto;
}

.alpaca-field-optiontree.optiontree-horizontal label {
  display: block;
}

.has-error .multiselect {
  border-color: #F44336;
  color: #F44336;
}

.alpaca-container-label:not(legend) {
  margin-top: 1.25rem;
}

.alpaca-array-toolbar {
  margin-bottom: 0.625rem;
}

.alpaca-array-actionbar {
  overflow: hidden;
}

.alpaca-array-actionbar.alpaca-array-actionbar-top {
  padding-bottom: 0.625rem;
}

.alpaca-array-actionbar.alpaca-array-actionbar-bottom {
  padding-top: 0.625rem;
}

.alpaca-array-actionbar, .alpaca-array-actionbar.btn-group {
  width: 100%;
}

.alpaca-field-object .alpaca-top,
.alpaca-field-object .alpaca-top .alpaca-container,
.alpaca-field-array .alpaca-top,
.alpaca-field-array .alpaca-top .alpaca-container {
  border: 0;
}

.alpaca-container {
  border: 0;
}

.alpaca-control-buttons-container {
  margin-top: 0.625rem;
}

.alpaca-container-item > .alpaca-container > .alpaca-field-object {
  border: 0;
}

.alpaca-form-buttons-container {
  margin-top: 1.25rem;
  text-align: right;
}

.alpaca-container > .form-group {
  margin-left: 0;
  margin-right: 0;
}

.alpaca-field-hidden {
  display: none;
}

.alpaca-container-item:not(:first-child) {
  margin-top: 0.625rem;
}

.alpaca-container .alpaca-container-item:last-child {
  margin-bottom: 0;
}

.alpaca-field-select .btn-group {
  width: 100%;
}

.alpaca-field.alpaca-field-upload .fileupload-active-zone {
  margin-top: 2.5rem;
  margin-bottom: 2.5rem;
}

.alpaca-field.alpaca-field-upload .template-download td.error,
.alpaca-field.alpaca-field-upload .template-upload td.error {
  color: #D84315;
  word-break: break-all;
}

.alpaca-field.alpaca-field-address .alpaca-field-address-mapcanvas {
  height: 250px;
}

.alpaca-field.alpaca-field-image .alpaca-image-display {
  margin-top: 1.25rem;
}

/* ------------------------------------------------------------------------------
*
*  # Tokenfield for Bootstrap
*
*  Styles for tokenfield.js - Advanced tagging/tokenizing plugin for Bootstrap
*
* ---------------------------------------------------------------------------- */
.tokenfield {
  height: auto;
}

.tokenfield::after {
  display: block;
  clear: both;
  content: "";
}

.tokenfield.form-control:not(input) {
  padding: 0 0 0.125rem 0;
}

.tokenfield .token {
  margin: 0.125rem 0 0 0.125rem;
  cursor: default;
  float: left;
  position: relative;
  border-radius: 0.1875rem;
  transition: all ease-in-out 0.15s;
}

@media (prefers-reduced-motion: reduce) {
  .tokenfield .token {
    transition: none;
  }
}

.tokenfield .token:not([class*=bg-]) {
  background-color: #eee;
  color: #333;
}

.tokenfield .token:not([class*=bg-]):hover, .tokenfield .token:not([class*=bg-]):focus {
  background-color: #03A9F4;
  color: #fff;
}

.tokenfield .token .token-label {
  display: block;
  max-width: none !important;
  padding: 0.3125rem 0.875rem;
  padding-right: 2.375rem;
}

.tokenfield .token > .close {
  font-size: 0;
  cursor: pointer;
  position: absolute;
  top: 50%;
  color: inherit;
  right: 0.875rem;
  line-height: 1;
  margin-top: -0.34375rem;
  transition: opacity ease-in-out 0.15s;
}

@media (prefers-reduced-motion: reduce) {
  .tokenfield .token > .close {
    transition: none;
  }
}

.tokenfield .token > .close:after {
  content: '\ed6a';
  font-family: "icomoon";
  display: block;
  font-size: 0.6875rem;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.tokenfield .token > .close:hover {
  opacity: 1;
}

.tokenfield .twitter-typeahead {
  width: auto;
}

.tokenfield .token-input {
  direction: ltr;
  background: none;
  width: 5.625rem !important;
  max-width: 50%;
  min-width: 4rem;
  padding: 0.3125rem 0.875rem;
  margin-top: 0.125rem;
  margin-left: 0.125rem;
  border: 0;
  outline: 0;
}

.tokenfield.readonly .token .token-label {
  padding-right: 0.875rem;
}

.tokenfield.readonly .token .close {
  display: none;
}

.tokenfield.disabled {
  cursor: default;
}

.tokenfield.disabled .token,
.tokenfield.disabled .token .close {
  opacity: 0.5;
}

.tokenfield.disabled .token:hover, .tokenfield.disabled .token:focus {
  background-color: #eee;
  color: #333;
}

.tokenfield.disabled,
.tokenfield.disabled .token-input,
.tokenfield.disabled .token,
.tokenfield.disabled .token .close {
  cursor: default;
}

.input-group-lg .token > .token-label,
.input-group-lg .token > span,
.tokenfield.form-control-lg .token > .token-label,
.tokenfield.form-control-lg .token > span {
  padding: 0.4375rem 1rem;
  padding-right: 2.03125rem;
}

.input-group-lg .token-input,
.tokenfield.form-control-lg .token-input {
  padding: 0.4375rem 1rem;
}

.input-group-lg .token > .close,
.tokenfield.form-control-lg .token > .close {
  right: 1rem;
}

.input-group-lg.readonly .token > .token-label,
.tokenfield.form-control-lg.readonly .token > .token-label {
  padding-right: 1rem;
}

.input-group-sm .token > .token-label,
.input-group-sm .token > span,
.tokenfield.form-control-sm .token > .token-label,
.tokenfield.form-control-sm .token > span {
  padding: 0.1875rem 0.75rem;
  padding-right: 1.78125rem;
}

.input-group-sm .token-input,
.tokenfield.form-control-sm .token-input {
  padding: 0.1875rem 0.75rem;
}

.input-group-sm .token > .close,
.tokenfield.form-control-sm .token > .close {
  right: 0.75rem;
}

.input-group-sm.readonly .token > .token-label,
.tokenfield.form-control-sm.readonly .token > .token-label {
  padding-right: 0.75rem;
}

/* ------------------------------------------------------------------------------
*
*  # Bootstrap tags input
*
*  Styles for tagsinput.js - tags input for Bootstrap
*
* ---------------------------------------------------------------------------- */
.bootstrap-tagsinput {
  background-color: #fff;
  border: 1px solid #ddd;
  display: inline-block;
  padding: 0 0 0.125rem 0;
  vertical-align: middle;
  width: 100%;
  border-radius: 0.1875rem;
}

.bootstrap-tagsinput input {
  direction: ltr;
  border: 0;
  outline: 0;
  background-color: transparent;
  padding: 0.3125rem 0.875rem;
  margin-top: 0.125rem;
  margin-left: 0.125rem;
  width: auto !important;
  max-width: 50%;
  min-width: 4rem;
  box-shadow: none;
}

.input-group .bootstrap-tagsinput {
  width: 1%;
  flex: 1 1 auto;
}

.bootstrap-tagsinput .twitter-typeahead {
  width: auto;
}

.bootstrap-tagsinput .tt-dropdown-menu {
  margin-top: 0.25rem;
  min-width: 11.25rem;
}

.bootstrap-tagsinput .tag {
  margin: 0.125rem 0 0 0.125rem;
  padding: 0.3125rem 0.875rem;
  padding-right: 2.375rem;
  float: left;
  position: relative;
  border-radius: 0.1875rem;
  transition: all ease-in-out 0.15s;
}

@media (prefers-reduced-motion: reduce) {
  .bootstrap-tagsinput .tag {
    transition: none;
  }
}

.bootstrap-tagsinput .tag:not([class*=bg-]) {
  background-color: #eee;
  color: #333;
}

.bootstrap-tagsinput .tag:not([class*=bg-]):hover, .bootstrap-tagsinput .tag:not([class*=bg-]):focus {
  background-color: #03A9F4;
  color: #fff;
}

.bootstrap-tagsinput .tag [data-role="remove"] {
  cursor: pointer;
  position: absolute;
  top: 50%;
  right: 0.875rem;
  line-height: 1;
  margin-top: -0.34375rem;
  opacity: 0.7;
  transition: opacity ease-in-out 0.15s;
}

@media (prefers-reduced-motion: reduce) {
  .bootstrap-tagsinput .tag [data-role="remove"] {
    transition: none;
  }
}

.bootstrap-tagsinput .tag [data-role="remove"]:hover {
  opacity: 1;
}

.bootstrap-tagsinput .tag [data-role="remove"]:after {
  content: '\ed6a';
  font-family: "icomoon";
  display: block;
  font-size: 0.6875rem;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

/* ------------------------------------------------------------------------------
*
*  # Touchspin spinners
*
*  Styles for touchspin.min.js - spinner form control library
*
* ---------------------------------------------------------------------------- */
.bootstrap-touchspin .input-group-btn-vertical {
  white-space: nowrap;
}

.bootstrap-touchspin .input-group-btn-vertical > .btn {
  width: 2.125rem;
  margin-left: -1px;
  border-radius: 0;
}

.bootstrap-touchspin .input-group-btn-vertical i {
  position: absolute;
  top: 50%;
  left: 50%;
  margin-left: -0.5rem;
  margin-top: -0.5rem;
  font-weight: normal;
}

.bootstrap-touchspin .input-group-btn-vertical .bootstrap-touchspin-up {
  border: 1px solid #ddd;
  border-radius: 0;
}

.bootstrap-touchspin .input-group-btn-vertical .bootstrap-touchspin-down {
  border: 1px solid #ddd;
  border-top-right-radius: 0.1875rem;
  border-bottom-right-radius: 0.1875rem;
}

.bootstrap-touchspin.input-group-lg .input-group-btn-vertical > .btn {
  width: 2.375rem;
}

.bootstrap-touchspin.input-group-lg .input-group-btn-vertical .bootstrap-touchspin-down {
  border-top-right-radius: 0.25rem;
  border-bottom-right-radius: 0.25rem;
}

.bootstrap-touchspin.input-group-sm .input-group-btn-vertical > .btn {
  width: 1.875rem;
}

.bootstrap-touchspin.input-group-sm .input-group-btn-vertical .bootstrap-touchspin-down {
  border-top-right-radius: 0.125rem;
  border-bottom-right-radius: 0.125rem;
}

.input-group .input-group-prepend.d-none:first-child + .form-control {
  border-top-left-radius: 0.1875rem;
  border-bottom-left-radius: 0.1875rem;
}

.input-group-lg .input-group-prepend.d-none:first-child + .form-control {
  border-top-left-radius: 0.25rem;
  border-bottom-left-radius: 0.25rem;
}

.input-group-sm .input-group-prepend.d-none:first-child + .form-control {
  border-top-left-radius: 0.125rem;
  border-bottom-left-radius: 0.125rem;
}

/* ------------------------------------------------------------------------------
*
*  # Bootstrap Duallistbox
*
*  Styles for listbox.js - A responsive dual listbox widget optimized for Bootstrap
*
* ---------------------------------------------------------------------------- */
.bootstrap-duallistbox-container .box1 {
  margin-bottom: 1.25rem;
}

.bootstrap-duallistbox-container select.form-control {
  padding: 0.4375rem;
  border-top-left-radius: 0;
  border-top-right-radius: 0;
}

.bootstrap-duallistbox-container option {
  display: block;
  padding: 0.4375rem 0.875rem;
  border-radius: 0.1875rem;
}

.bootstrap-duallistbox-container.moveonselect .move,
.bootstrap-duallistbox-container.moveonselect .remove {
  display: none;
}

.bootstrap-duallistbox-container.moveonselect .btn-group .moveall,
.bootstrap-duallistbox-container.moveonselect .btn-group .removeall {
  width: 100%;
  border-top-left-radius: 0.1875rem;
  border-top-right-radius: 0.1875rem;
}

.bootstrap-duallistbox-container.moveonselect .btn-group .btn + .btn {
  border-left-width: 1px;
}

.bootstrap-duallistbox-container .buttons {
  width: 100%;
  margin-bottom: -1px;
}

.bootstrap-duallistbox-container .clear1,
.bootstrap-duallistbox-container .clear2 {
  display: none;
  margin-top: 1.25rem;
}

.bootstrap-duallistbox-container .clear1, .bootstrap-duallistbox-container .clear1:hover, .bootstrap-duallistbox-container .clear1:focus,
.bootstrap-duallistbox-container .clear2,
.bootstrap-duallistbox-container .clear2:hover,
.bootstrap-duallistbox-container .clear2:focus {
  background-color: transparent;
  border: 0;
  color: #2196F3;
  padding: 0;
  box-shadow: none;
}

.bootstrap-duallistbox-container .box1.filtered .clear1,
.bootstrap-duallistbox-container .box2.filtered .clear2 {
  display: inline-block;
}

.bootstrap-duallistbox-container .move,
.bootstrap-duallistbox-container .remove,
.bootstrap-duallistbox-container .moveall,
.bootstrap-duallistbox-container .removeall {
  width: 50%;
}

.bootstrap-duallistbox-container .btn-group .btn {
  margin: 0;
  border-bottom-right-radius: 0;
  border-bottom-left-radius: 0;
}

.bootstrap-duallistbox-container .btn-group .btn + .btn {
  border-left-width: 0;
}

.bootstrap-duallistbox-container .btn-group .btn > i {
  float: none;
  text-align: center;
}

.bootstrap-duallistbox-container .btn-group .btn > i + i {
  margin-left: -1rem;
}

.bootstrap-duallistbox-container .filter {
  margin-bottom: 1.25rem;
  position: relative;
}

.bootstrap-duallistbox-container .filter.placeholder {
  color: #999;
}

.bootstrap-duallistbox-container .info-container .info {
  display: inline-block;
  margin-top: 1.25rem;
}

.bootstrap-duallistbox-container .info-container .info .badge {
  margin-right: 0.625rem;
}

.sidebar .bootstrap-duallistbox-container {
  text-align: center;
}

.sidebar .bootstrap-duallistbox-container .box1,
.sidebar .bootstrap-duallistbox-container .box2 {
  flex: auto;
  width: 100%;
  max-width: none;
}

.sidebar .bootstrap-duallistbox-container .box1 {
  padding-bottom: 0.3125rem;
}

.sidebar .bootstrap-duallistbox-container .box1:after {
  content: '\e9c9';
  font-size: 1rem;
  font-family: "icomoon";
  display: block;
  text-align: center;
  line-height: 1;
  margin: 0.625rem 0;
  opacity: 0.5;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

@media (min-width: 768px) {
  .bootstrap-duallistbox-container .box1 {
    margin-bottom: 0;
  }
  .sidebar .bootstrap-duallistbox-container .box1 {
    margin-bottom: 0;
  }
}

/* ------------------------------------------------------------------------------
*
*  # Steps wizard
*
*  Styles for steps.min.js - An all-in-one wizard plugin that is extremely flexible, compact and feature-rich
*
* ---------------------------------------------------------------------------- */
.wizard {
  width: 100%;
}

.wizard > .steps .current-info,
.wizard > .content > .title {
  display: none;
}

.wizard > .content {
  position: relative;
  width: auto;
  padding: 0;
}

.wizard > .content > .body {
  padding: 0 1.25rem;
}

.wizard > .content > iframe {
  border: 0;
  width: 100%;
  height: 100%;
}

.wizard > .steps {
  position: relative;
  display: block;
  width: 100%;
}

.wizard > .steps > ul {
  display: table;
  width: 100%;
  table-layout: fixed;
  margin: 0;
  padding: 0;
  list-style: none;
}

.wizard > .steps > ul > li {
  display: table-cell;
  width: auto;
  vertical-align: top;
  text-align: center;
  position: relative;
}

.wizard > .steps > ul > li a {
  position: relative;
  padding-top: 3rem;
  margin-top: 1.25rem;
  margin-bottom: 1.25rem;
  display: block;
  outline: 0;
  color: #999;
}

.wizard > .steps > ul > li:before, .wizard > .steps > ul > li:after {
  content: '';
  display: block;
  position: absolute;
  top: 2.375rem;
  width: 50%;
  height: 2px;
  background-color: #00BCD4;
  z-index: 9;
}

.wizard > .steps > ul > li:before {
  left: 0;
}

.wizard > .steps > ul > li:after {
  right: 0;
}

.wizard > .steps > ul > li:first-child:before, .wizard > .steps > ul > li:last-child:after {
  content: none;
}

.wizard > .steps > ul > li.current:after,
.wizard > .steps > ul > li.current ~ li:before,
.wizard > .steps > ul > li.current ~ li:after {
  background-color: #eee;
}

.wizard > .steps > ul > li.current > a {
  color: #333;
  cursor: default;
}

.wizard > .steps > ul > li.current .number {
  font-size: 0;
  border-color: #00BCD4;
  background-color: #fff;
  color: #00BCD4;
}

.wizard > .steps > ul > li.current .number:after {
  content: '\e913';
  font-family: "icomoon";
  display: inline-block;
  font-size: 1rem;
  line-height: 2.125rem;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  transition: all ease-in-out 0.15s;
}

@media (prefers-reduced-motion: reduce) {
  .wizard > .steps > ul > li.current .number:after {
    transition: none;
  }
}

.wizard > .steps > ul > li.disabled a {
  cursor: default;
}

.wizard > .steps > ul > li.done a, .wizard > .steps > ul > li.done a:hover, .wizard > .steps > ul > li.done a:focus {
  color: #999;
}

.wizard > .steps > ul > li.done .number {
  font-size: 0;
  background-color: #00BCD4;
  border-color: #00BCD4;
  color: #fff;
}

.wizard > .steps > ul > li.done .number:after {
  content: '\ed6f';
  font-family: "icomoon";
  display: inline-block;
  font-size: 1rem;
  line-height: 2.125rem;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  transition: all ease-in-out 0.15s;
}

@media (prefers-reduced-motion: reduce) {
  .wizard > .steps > ul > li.done .number:after {
    transition: none;
  }
}

.wizard > .steps > ul > li.error .number {
  border-color: #F44336;
  color: #F44336;
}

.card > .card-header:not([class*=bg-]) > .wizard > .steps > ul {
  border-top: 1px solid rgba(0, 0, 0, 0.125);
}

@media (max-width: 991.98px) {
  .wizard > .steps > ul {
    margin-bottom: 1.25rem;
  }
  .wizard > .steps > ul > li {
    display: block;
    float: left;
    width: 50%;
  }
  .wizard > .steps > ul > li > a {
    margin-bottom: 0;
  }
  .wizard > .steps > ul > li:first-child:before, .wizard > .steps > ul > li:last-child:after {
    content: '';
  }
  .wizard > .steps > ul > li:last-child:after {
    background-color: #00BCD4;
  }
}

@media (max-width: 767.98px) {
  .wizard > .steps > ul > li {
    width: 100%;
  }
  .wizard > .steps > ul > li.current:after {
    background-color: #00BCD4;
  }
}

.wizard > .steps .number {
  background-color: #fff;
  color: #ccc;
  display: inline-block;
  position: absolute;
  top: 0;
  left: 50%;
  margin-left: -1.1875rem;
  border: 2px solid #eee;
  font-size: 0.875rem;
  z-index: 10;
  line-height: 2.125rem;
  text-align: center;
  width: 2.375rem;
  height: 2.375rem;
  border-radius: 50%;
}

.wizard > .actions {
  position: relative;
  text-align: right;
  padding: 1.25rem;
  padding-top: 0;
}

.wizard > .actions > ul {
  list-style: none;
  padding: 0;
  margin: 0;
}

.wizard > .actions > ul::after {
  display: block;
  clear: both;
  content: "";
}

.wizard > .actions > ul > li {
  display: inline-block;
}

.wizard > .actions > ul > li + li {
  margin-left: 1.25rem;
}

/* ------------------------------------------------------------------------------
*
*  # Summernote editor
*
*  Styles for summernote.min.js - super simple WYSIWYG Editor for Bootstrap framework
*
* ---------------------------------------------------------------------------- */
@font-face {
  font-family: 'summernote';
  font-style: normal;
  font-weight: normal;
  src: url(/assets/fonts/summernote.372a2830.eot);
  src: url(/assets/fonts/summernote.372a2830.eot) format("embedded-opentype"), url(/assets/fonts/summernote.608fd106.woff) format("woff"), url(/assets/fonts/summernote.ce9ce49a.ttf) format("truetype");
}

[class^="note-icon-"]:before,
[class*=" note-icon-"]:before {
  display: inline-block;
  font-family: 'summernote';
  font-style: normal;
  font-size: inherit;
  text-decoration: inherit;
  vertical-align: middle;
  line-height: normal;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.note-icon-align-center:before {
  content: "\f101";
}

.note-icon-align-indent:before {
  content: "\f102";
}

.note-icon-align-justify:before {
  content: "\f103";
}

.note-icon-align-left:before {
  content: "\f104";
}

.note-icon-align-outdent:before {
  content: "\f105";
}

.note-icon-align-right:before {
  content: "\f106";
}

.note-icon-align:before {
  content: "\f107";
}

.note-icon-arrow-circle-down:before {
  content: "\f108";
}

.note-icon-arrow-circle-left:before {
  content: "\f109";
}

.note-icon-arrow-circle-right:before {
  content: "\f10a";
}

.note-icon-arrow-circle-up:before {
  content: "\f10b";
}

.note-icon-arrows-alt:before {
  content: "\f10c";
}

.note-icon-arrows-h:before {
  content: "\f10d";
}

.note-icon-arrows-v:before {
  content: "\f10e";
}

.note-icon-bold:before {
  content: "\f10f";
}

.note-icon-caret:before {
  content: "\f110";
}

.note-icon-chain-broken:before {
  content: "\f111";
}

.note-icon-circle:before {
  content: "\f112";
}

.note-icon-close:before {
  content: "\f113";
}

.note-icon-code:before {
  content: "\f114";
}

.note-icon-col-after:before {
  content: "\f115";
}

.note-icon-col-before:before {
  content: "\f116";
}

.note-icon-col-remove:before {
  content: "\f117";
}

.note-icon-eraser:before {
  content: "\f118";
}

.note-icon-font:before {
  content: "\f119";
}

.note-icon-frame:before {
  content: "\f11a";
}

.note-icon-italic:before {
  content: "\f11b";
}

.note-icon-link:before {
  content: "\f11c";
}

.note-icon-magic:before {
  content: "\f11d";
}

.note-icon-menu-check:before {
  content: "\f11e";
}

.note-icon-minus:before {
  content: "\f11f";
}

.note-icon-orderedlist:before {
  content: "\f120";
}

.note-icon-pencil:before {
  content: "\f121";
}

.note-icon-picture:before {
  content: "\f122";
}

.note-icon-question:before {
  content: "\f123";
}

.note-icon-redo:before {
  content: "\f124";
}

.note-icon-row-above:before {
  content: "\f125";
}

.note-icon-row-below:before {
  content: "\f126";
}

.note-icon-row-remove:before {
  content: "\f127";
}

.note-icon-special-character:before {
  content: "\f128";
}

.note-icon-square:before {
  content: "\f129";
}

.note-icon-strikethrough:before {
  content: "\f12a";
}

.note-icon-subscript:before {
  content: "\f12b";
}

.note-icon-summernote:before {
  content: "\f12c";
}

.note-icon-superscript:before {
  content: "\f12d";
}

.note-icon-table:before {
  content: "\f12e";
}

.note-icon-text-height:before {
  content: "\f12f";
}

.note-icon-trash:before {
  content: "\f130";
}

.note-icon-underline:before {
  content: "\f131";
}

.note-icon-undo:before {
  content: "\f132";
}

.note-icon-unorderedlist:before {
  content: "\f133";
}

.note-icon-video:before {
  content: "\f134";
}

.note-editor {
  position: relative;
}

.note-editor .note-dropzone {
  position: absolute;
  z-index: 100;
  display: none;
  color: #2196F3;
  background-color: #fff;
  pointer-events: none;
  border: 2px dashed #2196F3;
  opacity: .95;
}

.note-editor .note-dropzone.hover {
  color: #2196F3;
  border: 2px dashed #2196F3;
}

.note-editor .note-dropzone .note-dropzone-message {
  display: table-cell;
  font-size: 1.0625rem;
  font-weight: 500;
  text-align: center;
  vertical-align: middle;
}

.card .note-editor {
  border-color: #ddd;
  box-shadow: none;
}

.note-editor.dragover .note-dropzone {
  display: table;
}

.note-editor .note-form-group:last-child {
  margin-bottom: 0;
}

.note-editor .note-group-image-url:last-child {
  margin-bottom: 0;
}

.note-editor .modal-title {
  font-size: 1.0625rem;
}

.note-editor .dropdown-style pre {
  background-color: #fff;
  padding: 0.5rem 1rem;
}

.summernote-borderless ~ .note-editor {
  border: 0;
  margin: 0;
  border-radius: 0;
}

.note-air-editor {
  outline: 0;
}

@-moz-document url-prefix() {
  .note-image-input {
    height: auto;
  }
}

.note-placeholder {
  position: absolute;
  display: none;
  color: #999;
}

.note-toolbar:not([class*=bg-]):not([class*=alpha-]) {
  background-color: rgba(0, 0, 0, 0.02);
  border-bottom: 1px solid rgba(0, 0, 0, 0.125);
  padding: 0.9375rem 1.25rem;
  padding-top: 0;
  margin: 0;
}

.dropdown-fontname,
.dropdown-style {
  max-height: 20rem;
  overflow: auto;
}

.dropdown-style a > p {
  margin-bottom: 0;
}

.note-editing-area {
  position: relative;
}

.note-editing-area .note-editable {
  outline: 0;
}

.note-editing-area .note-editable sup {
  vertical-align: super;
}

.note-editing-area .note-editable sub {
  vertical-align: sub;
}

.note-editing-area img.note-float-left {
  margin-right: 0.625rem;
}

.note-editing-area img.note-float-right {
  margin-left: 0.625rem;
}

.note-frame.codeview .note-editing-area .note-editable {
  display: none;
}

.note-frame.codeview .note-editing-area .note-codable {
  display: block;
}

.note-frame .note-editing-area {
  overflow: hidden;
}

.note-frame .note-editing-area .note-editable {
  padding: 1.25rem;
  overflow: auto;
  color: #333;
  background-color: #fff;
  min-height: 9.375rem;
}

.note-frame .note-editing-area .note-editable[contenteditable="false"] {
  background-color: #eee;
}

.note-frame .note-editing-area .note-codable {
  display: none;
  width: 100%;
  padding: 1.25rem;
  margin-bottom: 0;
  font-family: SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
  color: #fff;
  background-color: #333;
  border: 0;
  resize: none;
  box-shadow: none;
  border-radius: 0;
}

.note-frame.fullscreen {
  position: fixed;
  top: 0;
  left: 0;
  z-index: 1080;
  width: 100% !important;
  border: 0;
  border-radius: 0;
}

.note-frame.fullscreen .note-resizebar {
  display: none;
}

.note-frame .note-placeholder {
  position: absolute;
  display: none;
  color: #999;
}

.note-statusbar {
  background-color: rgba(0, 0, 0, 0.02);
}

.note-statusbar .note-resizebar {
  width: 100%;
  padding: 2px 0;
  cursor: ns-resize;
  border-top: 1px solid #ddd;
}

.note-statusbar .note-resizebar .note-icon-bar {
  width: 1.25rem;
  margin: 1px auto;
  border-top: 1px solid #ddd;
}

.note-popover.popover {
  display: none;
  max-width: none;
}

.note-popover.popover .popover-content a {
  display: inline-block;
  max-width: 276px;
  vertical-align: middle;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.note-popover.popover .arrow {
  left: 1.25rem !important;
}

.note-popover .popover-content {
  display: inline-flex;
  padding: 0.9375rem 0 0 0.9375rem;
  align-items: center;
  flex-wrap: wrap;
}

.note-popover .popover-content > span {
  margin-right: 0.9375rem;
  margin-bottom: 0.9375rem;
}

.note-popover .popover-content > .btn-group {
  margin-right: 0.9375rem;
  margin-bottom: 0.9375rem;
}

.note-style h1, .note-style h2, .note-style h3, .note-style h4, .note-style h5, .note-style h6, .note-style blockquote {
  margin: 0;
}

.note-hint-popover {
  min-width: 11.25rem;
  padding: 0.5rem 0;
}

.note-hint-popover .popover-content {
  max-height: 10rem;
  overflow: auto;
}

.note-hint-popover .popover-content .note-hint-group .note-hint-item {
  display: block !important;
  padding: 0.5rem 1rem;
  color: #333;
  clear: both;
}

.note-hint-popover .popover-content .note-hint-group .note-hint-item:hover, .note-hint-popover .popover-content .note-hint-group .note-hint-item:focus {
  color: #333;
  background-color: #f5f5f5;
  text-decoration: none;
}

.note-hint-popover .popover-content .note-hint-group .note-hint-item.active {
  color: #fff;
  text-decoration: none;
  background-color: #2196F3;
}

.card-header.note-toolbar > .btn-group {
  margin-top: 0.9375rem;
  margin-right: 0.9375rem;
}

.card-header.note-toolbar > .btn-group:last-child {
  margin-right: 0;
}

.card-header.note-toolbar .dropdown-menu.note-check a i {
  display: none;
}

.card-header.note-toolbar .dropdown-menu.note-check a.checked {
  color: #fff;
  background-color: #2196F3;
}

.card-header.note-toolbar .note-color-palette {
  line-height: 1;
}

.card-header.note-toolbar .note-color-palette div .note-color-btn {
  padding: 0;
  margin: 0;
  border: 1px solid #fff;
  width: 1.25rem;
  height: 1.25rem;
}

.card-header.note-toolbar .note-color-palette div .note-color-btn:hover {
  border-color: #333;
}

.note-popover .btn-group .note-table,
.note-toolbar .btn-group .note-table {
  min-width: 0;
  padding: 0.5rem;
}

.note-popover .btn-group .note-table .note-dimension-picker,
.note-toolbar .btn-group .note-table .note-dimension-picker {
  font-size: 1.125rem;
}

.note-popover .btn-group .note-table .note-dimension-picker .note-dimension-picker-mousecatcher,
.note-toolbar .btn-group .note-table .note-dimension-picker .note-dimension-picker-mousecatcher {
  position: absolute !important;
  z-index: 3;
  width: 10em;
  height: 10em;
  cursor: pointer;
}

.note-popover .btn-group .note-table .note-dimension-picker .note-dimension-picker-unhighlighted,
.note-toolbar .btn-group .note-table .note-dimension-picker .note-dimension-picker-unhighlighted {
  position: relative !important;
  z-index: 1;
  width: 5em;
  height: 5em;
  background: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABIAAAASAgMAAAAroGbEAAAACVBMVEUAAIj4+Pjp6ekKlAqjAAAAAXRSTlMAQObYZgAAAAFiS0dEAIgFHUgAAAAJcEhZcwAACxMAAAsTAQCanBgAAAAHdElNRQfYAR0BKhmnaJzPAAAAG0lEQVQI12NgAAOtVatWMTCohoaGUY+EmIkEAEruEzK2J7tvAAAAAElFTkSuQmCC") repeat;
}

.note-popover .btn-group .note-table .note-dimension-picker .note-dimension-picker-highlighted,
.note-toolbar .btn-group .note-table .note-dimension-picker .note-dimension-picker-highlighted {
  position: absolute !important;
  z-index: 2;
  width: 1em;
  height: 1em;
  background: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABIAAAASAgMAAAAroGbEAAAACVBMVEUAAIjd6vvD2f9LKLW+AAAAAXRSTlMAQObYZgAAAAFiS0dEAIgFHUgAAAAJcEhZcwAACxMAAAsTAQCanBgAAAAHdElNRQfYAR0BKwNDEVT0AAAAG0lEQVQI12NgAAOtVatWMTCohoaGUY+EmIkEAEruEzK2J7tvAAAAAElFTkSuQmCC") repeat;
}

.note-popover .btn-group .note-table .note-dimension-display,
.note-toolbar .btn-group .note-table .note-dimension-display {
  text-align: center;
  margin-top: 0.5rem;
}

.note-color .note-color-row {
  font-size: 0;
}

.note-color .dropdown-menu.show {
  display: flex;
}

.note-color .dropdown-menu .note-palette {
  display: inline-block;
  width: 10rem;
  margin: 0.4375rem 0.875rem;
}

.note-color .dropdown-menu .note-palette .note-palette-title {
  margin-bottom: 0.625rem;
  font-weight: 500;
}

.note-color .dropdown-menu .note-palette .note-color-reset {
  width: 100%;
  padding: 0.3125rem 0.75rem;
  margin-bottom: 0.875rem;
}

.note-para .dropdown-menu {
  padding: 0.5rem;
  white-space: nowrap;
}

.note-para .dropdown-menu > div:first-child {
  margin-right: 0.625rem;
}

.note-handle {
  position: relative;
}

.note-handle .note-control-selection {
  position: absolute;
  display: none;
  border: 1px solid #333;
  z-index: 10;
}

.note-handle .note-control-selection > div {
  position: absolute;
}

.note-handle .note-control-selection .note-control-selection-bg {
  background-color: #333;
  opacity: 0.3;
  width: 100%;
  height: 100%;
}

.note-handle .note-control-selection .note-control-handle,
.note-handle .note-control-selection .note-control-holder,
.note-handle .note-control-selection .note-control-sizing {
  border: 1px solid #333;
  width: 0.5rem;
  height: 0.5rem;
}

.note-handle .note-control-selection .note-control-sizing {
  background-color: #fff;
}

.note-handle .note-control-selection .note-control-nw {
  top: -0.3125rem;
  left: -0.3125rem;
  border-right: 0;
  border-bottom: 0;
}

.note-handle .note-control-selection .note-control-ne {
  top: -0.3125rem;
  right: -0.3125rem;
  border-bottom: 0;
  border-left: 0;
}

.note-handle .note-control-selection .note-control-sw {
  bottom: -0.3125rem;
  left: -0.3125rem;
  border-top: 0;
  border-right: 0;
}

.note-handle .note-control-selection .note-control-se {
  right: -0.3125rem;
  bottom: -0.3125rem;
  cursor: se-resize;
}

.note-handle .note-control-selection .note-control-selection-info {
  right: 0;
  bottom: 0;
  padding: 0.3125rem;
  margin: 0.3125rem;
  color: #fff;
  background-color: #333;
  opacity: 0.7;
  border-radius: 0.1875rem;
}

/* ------------------------------------------------------------------------------
*
*  # Trumbowyg editor
*
*  Styles for trumbowyg.min.js - a lightweight WYSIWYG editor
*
* ---------------------------------------------------------------------------- */
#trumbowyg-icons {
  overflow: hidden;
  visibility: hidden;
  height: 0;
  width: 0;
}

#trumbowyg-icons svg {
  height: 0;
  width: 0;
}

.trumbowyg-box {
  position: relative;
  border: 1px solid #ddd;
  border-radius: 0.1875rem;
}

.trumbowyg-box svg {
  fill: #333;
  display: block;
  margin: 0.12502rem 0;
  width: 1rem;
  height: 1rem;
}

.trumbowyg-box.trumbowyg-fullscreen {
  background: #fff;
  border-width: 0;
}

.trumbowyg-editor {
  position: relative;
}

.trumbowyg-editor[contenteditable=true]:empty:not(:focus)::before {
  content: attr(placeholder);
  color: #999;
  pointer-events: none;
}

.trumbowyg-editor,
.trumbowyg-textarea {
  position: relative;
  padding: 1.25rem;
  min-height: 350px;
  background-color: #fff;
  width: 100%;
  border-style: none;
  resize: none;
  outline: none;
  overflow: auto;
}

.trumbowyg-editor.trumbowyg-autogrow-on-enter,
.trumbowyg-textarea.trumbowyg-autogrow-on-enter {
  transition: height ease-in-out 0.3s;
}

@media (prefers-reduced-motion: reduce) {
  .trumbowyg-editor.trumbowyg-autogrow-on-enter,
  .trumbowyg-textarea.trumbowyg-autogrow-on-enter {
    transition: none;
  }
}

.trumbowyg-box-blur .trumbowyg-editor img,
.trumbowyg-box-blur .trumbowyg-editor hr {
  opacity: 0.2;
}

.trumbowyg-textarea {
  position: relative;
  display: block;
  overflow: auto;
  border: 0;
  white-space: normal;
}

.trumbowyg-box.trumbowyg-editor-visible .trumbowyg-textarea {
  height: 1px !important;
  width: 25%;
  min-height: 0 !important;
  padding: 0 !important;
  background: none;
  opacity: 0 !important;
}

.trumbowyg-box.trumbowyg-editor-hidden .trumbowyg-textarea {
  display: block;
}

.trumbowyg-box.trumbowyg-editor-hidden .trumbowyg-editor {
  display: none;
}

.trumbowyg-box.trumbowyg-disabled .trumbowyg-textarea {
  opacity: 0.8;
  background-color: transparent;
}

.trumbowyg-button-pane {
  width: 100%;
  background-color: #fafafa;
  border-bottom: 1px solid #ddd;
  margin: 0;
  position: relative;
  list-style: none;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  z-index: 11;
  border-top-left-radius: 0.1875rem;
  border-top-right-radius: 0.1875rem;
}

.trumbowyg-button-pane .trumbowyg-button-group {
  display: inline-block;
  position: relative;
}

.trumbowyg-button-pane .trumbowyg-button-group .trumbowyg-fullscreen-button svg {
  color: transparent;
}

.trumbowyg-button-pane .trumbowyg-button-group:not(:empty) + .trumbowyg-button-group {
  padding-left: 1px;
}

.trumbowyg-button-pane .trumbowyg-button-group:not(:empty) + .trumbowyg-button-group:before {
  content: " ";
  display: inline-block;
  width: 1px;
  background-color: #eaeaea;
  position: absolute;
  left: 0;
  top: 0;
  bottom: 0;
}

.trumbowyg-box:not(.trumbowyg-fullscreen) .trumbowyg-button-pane .trumbowyg-button-group:first-child button {
  border-radius: 0.125rem 0 0 0;
}

.trumbowyg-box:not(.trumbowyg-fullscreen) .trumbowyg-button-pane .trumbowyg-button-group:last-child button {
  border-radius: 0 0.125rem 0 0;
}

.trumbowyg-button-pane button {
  display: inline-block;
  position: relative;
  padding: 0.875rem;
  overflow: hidden;
  border: none;
  cursor: pointer;
  background-color: transparent;
  vertical-align: middle;
  transition: background-color ease-in-out 0.15s, opacity ease-in-out 0.15s;
}

@media (prefers-reduced-motion: reduce) {
  .trumbowyg-button-pane button {
    transition: none;
  }
}

.trumbowyg-button-pane button.trumbowyg-textual-button {
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
}

.trumbowyg-button-pane button:not(.trumbowyg-disable):hover, .trumbowyg-button-pane button:not(.trumbowyg-disable):focus, .trumbowyg-button-pane button.trumbowyg-active {
  background-color: #eee;
  outline: 0;
}

.trumbowyg-button-pane.trumbowyg-disable button:not(.trumbowyg-not-disable):not(.trumbowyg-active), .trumbowyg-button-pane.trumbowyg-disable button:not(.trumbowyg-not-disable):not(.trumbowyg-viewHTML-button),
.trumbowyg-disabled .trumbowyg-button-pane button:not(.trumbowyg-not-disable):not(.trumbowyg-active),
.trumbowyg-disabled .trumbowyg-button-pane button:not(.trumbowyg-not-disable):not(.trumbowyg-viewHTML-button) {
  opacity: 0.2;
  cursor: default;
}

.trumbowyg-button-pane .trumbowyg-open-dropdown {
  padding-right: 1.75rem;
}

.trumbowyg-button-pane .trumbowyg-open-dropdown:after {
  content: " ";
  display: block;
  position: absolute;
  top: 50%;
  right: 0.875rem;
  height: 0;
  width: 0;
  margin-top: -0.15em;
  border: 0.3em solid transparent;
  border-top-color: #333;
}

.trumbowyg-button-pane .trumbowyg-right {
  float: right;
}

.trumbowyg-dropdown {
  min-width: 11.25rem;
  padding: 0.5rem 0;
  background-color: #fff;
  border: 1px solid rgba(0, 0, 0, 0.15);
  border-top: 0;
  margin-top: 1px;
  margin-left: -1px;
  z-index: 1000;
  box-shadow: 0 0.25rem 0.5rem rgba(0, 0, 0, 0.1);
  border-bottom-right-radius: 0.1875rem;
  border-bottom-left-radius: 0.1875rem;
}

.trumbowyg-dropdown button {
  display: block;
  width: 100%;
  padding: 0.5rem 1rem;
  color: #333;
  white-space: nowrap;
  background: none;
  border: 0;
  text-align: inherit;
  cursor: pointer;
  transition: background-color ease-in-out 0.15s, color ease-in-out 0.15s;
}

@media (prefers-reduced-motion: reduce) {
  .trumbowyg-dropdown button {
    transition: none;
  }
}

.trumbowyg-dropdown button:hover, .trumbowyg-dropdown button:focus {
  color: #333;
  text-decoration: none;
  background-color: #f5f5f5;
}

.trumbowyg-dropdown button svg {
  display: inline-block;
  vertical-align: middle;
  margin-right: 1rem;
  margin-top: -0.09375rem;
}

.trumbowyg-modal {
  position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
  max-width: 33rem;
  width: 100%;
  z-index: 11;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
}

.trumbowyg-modal-box {
  position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
  max-width: 30rem;
  width: calc(100% - 3rem);
  background-color: #fff;
  border: 1px solid rgba(0, 0, 0, 0.15);
  z-index: 1;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  border-bottom-right-radius: 0.1875rem;
  border-bottom-left-radius: 0.1875rem;
  box-shadow: 0 0.25rem 0.5rem rgba(0, 0, 0, 0.1);
}

.trumbowyg-modal-box .trumbowyg-modal-title {
  font-size: 0.9375rem;
  font-weight: 500;
  padding: 1.25rem;
  padding-bottom: 0;
  display: block;
}

.trumbowyg-modal-box .trumbowyg-progress {
  width: 100%;
  height: 0.1875rem;
  position: absolute;
  top: 2.875rem;
}

.trumbowyg-modal-box .trumbowyg-progress .trumbowyg-progress-bar {
  background-color: #4CAF50;
  width: 0;
  height: 100%;
  transition: width linear 0.15s;
}

@media (prefers-reduced-motion: reduce) {
  .trumbowyg-modal-box .trumbowyg-progress .trumbowyg-progress-bar {
    transition: none;
  }
}

.trumbowyg-modal-box form {
  padding: 1.25rem;
  text-align: right;
}

.trumbowyg-modal-box form > label {
  display: block;
  position: relative;
  margin-bottom: 1.25rem;
}

.trumbowyg-modal-box form > label .trumbowyg-input-infos {
  display: block;
  text-align: left;
  transition: all ease-in-out 0.15s;
}

@media (prefers-reduced-motion: reduce) {
  .trumbowyg-modal-box form > label .trumbowyg-input-infos {
    transition: none;
  }
}

.trumbowyg-modal-box form > label .trumbowyg-input-infos span {
  display: block;
  padding-top: 0.5rem;
  padding-bottom: 0.5rem;
  line-height: 1.5385;
}

.trumbowyg-modal-box form > label .trumbowyg-input-infos span.trumbowyg-msg-error {
  color: #F44336;
  margin-left: 30%;
  padding-bottom: 0;
}

.trumbowyg-modal-box form > label input {
  padding: 0.4375rem 0.875rem;
  font-size: 0.8125rem;
  line-height: 1.5385;
  color: #333;
  background-color: #fff;
  border: 1px solid #ddd;
  float: right;
  width: 70%;
  border-radius: 0.1875rem;
}

.trumbowyg-modal-box form > label input:focus {
  outline: 0;
}

.trumbowyg-modal-box form > label.trumbowyg-input-error input,
.trumbowyg-modal-box form > label.trumbowyg-input-error textarea {
  border-color: #F44336;
}

.trumbowyg-modal-box .error {
  display: block;
  color: #F44336;
}

.trumbowyg-modal-button {
  color: #fff;
  display: inline-block;
  text-decoration: none;
  background-color: #324148;
  border: none;
  cursor: pointer;
  margin-left: 0.625rem;
  border: 1px solid transparent;
  padding: 0.4375rem 0.875rem;
  font-size: 0.8125rem;
  line-height: 1.5385;
  border-radius: 0.1875rem;
  transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
}

@media (prefers-reduced-motion: reduce) {
  .trumbowyg-modal-button {
    transition: none;
  }
}

.trumbowyg-modal-button.trumbowyg-modal-submit {
  background-color: #66BB6A;
}

.trumbowyg-modal-button.trumbowyg-modal-submit:hover, .trumbowyg-modal-button.trumbowyg-modal-submit:focus {
  outline: 0;
  box-shadow: 0 0 0 62.5rem rgba(0, 0, 0, 0.075) inset;
}

.trumbowyg-modal-button.trumbowyg-modal-reset {
  color: #333;
  background-color: #fafafa;
  border-color: #ddd;
}

.trumbowyg-modal-button.trumbowyg-modal-reset:hover, .trumbowyg-modal-button.trumbowyg-modal-reset:focus {
  outline: 0;
  color: #333;
  background-color: #f5f5f5;
  border-color: #ddd;
}

.trumbowyg-overlay {
  position: absolute;
  background-color: rgba(255, 255, 255, 0.5);
  height: 100%;
  width: 100%;
  left: 0;
  display: none;
  top: 0;
  z-index: 10;
}

body.trumbowyg-body-fullscreen {
  overflow: hidden;
}

.trumbowyg-fullscreen {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  margin: 0;
  padding: 0;
  z-index: 99999;
}

.trumbowyg-fullscreen.trumbowyg-box,
.trumbowyg-fullscreen .trumbowyg-editor {
  border: 0;
  border-radius: 0;
}

.trumbowyg-fullscreen .trumbowyg-editor,
.trumbowyg-fullscreen .trumbowyg-textarea {
  height: calc(100% - 2.875rem) !important;
  overflow: auto;
}

.trumbowyg-fullscreen .trumbowyg-overlay {
  height: 100% !important;
}

.trumbowyg-fullscreen .trumbowyg-button-group .trumbowyg-fullscreen-button svg {
  color: #333;
  fill: transparent;
}

.trumbowyg-dropdown-foreColor,
.trumbowyg-dropdown-backColor {
  padding: 0.5rem;
  width: 15rem;
}

.trumbowyg-dropdown-foreColor svg,
.trumbowyg-dropdown-backColor svg {
  display: none !important;
}

.trumbowyg-dropdown-foreColor button,
.trumbowyg-dropdown-backColor button {
  display: block;
  position: relative;
  float: left;
  text-indent: -9999px;
  border: 1px solid #fff;
  padding: 0;
  width: 1.25rem;
  height: 1.25rem;
  transition: transform ease-in-out 0.15s;
}

@media (prefers-reduced-motion: reduce) {
  .trumbowyg-dropdown-foreColor button,
  .trumbowyg-dropdown-backColor button {
    transition: none;
  }
}

.trumbowyg-dropdown-foreColor button:hover, .trumbowyg-dropdown-foreColor button:focus,
.trumbowyg-dropdown-backColor button:hover,
.trumbowyg-dropdown-backColor button:focus {
  transform: scale(1.25);
  z-index: 10;
}

/* ------------------------------------------------------------------------------
*
*  # Ace code editor
*
*  Styles Ace - an embeddable code editor written in JavaScript
*
* ---------------------------------------------------------------------------- */
.ace_editor {
  height: 450px;
  position: relative;
}

/* ------------------------------------------------------------------------------
*
*  # Daterange picker
*
*  Date range picker component for Bootstrap
*
* ---------------------------------------------------------------------------- */
.daterangepicker {
  position: absolute;
  left: 0;
  margin-top: 0.125rem;
  width: auto;
  padding: 0;
  z-index: 1070;
}

.daterangepicker.dropdown-menu {
  max-width: none;
  background-color: transparent;
  border: 0;
  box-shadow: none;
}

.daterangepicker.dropup {
  margin-top: -0.5rem;
}

.daterangepicker .ranges,
.daterangepicker .calendar {
  float: left;
}

.daterangepicker.opensleft .calendars {
  /*rtl:ignore*/
  float: left;
}

.daterangepicker.opensleft .calendar {
  /*rtl:ignore*/
  margin-right: 0.9375rem;
}

.daterangepicker.opensright .calendars {
  /*rtl:ignore*/
  float: right;
}

.daterangepicker.opensright .calendar {
  /*rtl:ignore*/
  margin-left: 0.9375rem;
}

.daterangepicker.single .calendar {
  float: none;
  margin-left: 0;
  margin-right: 0;
}

.daterangepicker.single .ranges {
  display: none;
}

.daterangepicker.show-calendar .calendar {
  display: block;
}

.daterangepicker .calendar {
  display: none;
  background-color: #fff;
  border: 1px solid rgba(0, 0, 0, 0.15);
  margin: 0.46875rem 0;
  padding: 0.9375rem;
  border-radius: 0.1875rem;
  box-shadow: 0 0.25rem 0.5rem rgba(0, 0, 0, 0.1);
}

.daterangepicker table {
  width: 100%;
  margin: 0;
}

.daterangepicker table tbody th,
.daterangepicker table tbody td {
  cursor: pointer;
}

.daterangepicker th,
.daterangepicker td {
  white-space: nowrap;
  text-align: center;
}

.daterangepicker th.week,
.daterangepicker td.week {
  font-size: 80%;
  color: #999;
}

.daterangepicker th {
  color: #999;
  font-weight: 400;
  font-size: 0.75rem;
}

.daterangepicker th > i {
  top: 0;
}

.daterangepicker th.prev, .daterangepicker th.next {
  cursor: pointer;
}

.daterangepicker th.available:hover, .daterangepicker th.available:focus {
  color: #333;
}

.daterangepicker td.available {
  border-radius: 0.1875rem;
}

.daterangepicker td.available:hover, .daterangepicker td.available:focus {
  color: #333;
  background-color: #f5f5f5;
}

.daterangepicker td.off, .daterangepicker td.disabled {
  color: #ccc;
}

.daterangepicker td.disabled {
  cursor: default;
}

.daterangepicker td.in-range {
  color: #333;
  background-color: #f5f5f5;
  border-radius: 0;
}

.daterangepicker td.active, .daterangepicker td.active:hover, .daterangepicker td.active:focus {
  color: #fff;
  background-color: #26A69A;
  border-radius: 0.1875rem;
}

.daterangepicker .table-condensed tr > th,
.daterangepicker .table-condensed tr > td {
  padding: 0.4375rem;
  min-width: 2.12503rem;
  transition: all ease-in-out 0.15s;
}

@media (prefers-reduced-motion: reduce) {
  .daterangepicker .table-condensed tr > th,
  .daterangepicker .table-condensed tr > td {
    transition: none;
  }
}

.daterangepicker .table-condensed thead tr:last-child th {
  padding-top: 0.9375rem;
}

.daterangepicker .table-condensed .month {
  font-size: 0.9375rem;
  color: #333;
  padding-top: 0.46875rem;
  padding-bottom: 0.46875rem;
  font-weight: 500;
}

.daterangepicker select {
  display: inline-block;
}

.daterangepicker select.monthselect {
  margin-right: 2%;
  width: 56%;
}

.daterangepicker select.yearselect {
  width: 40%;
}

.daterangepicker select.hourselect, .daterangepicker select.minuteselect, .daterangepicker select.secondselect, .daterangepicker select.ampmselect {
  width: 3.75rem;
  padding-left: 0;
  padding-right: 0;
  margin-bottom: 0;
}

.daterangepicker .daterangepicker_input {
  position: relative;
}

.daterangepicker .daterangepicker_input i {
  position: absolute;
  right: 0.75rem;
  top: auto;
  bottom: 0.62502rem;
  color: #999;
}

.daterangepicker .daterangepicker_input input {
  padding-left: 0.75rem;
  padding-right: 2.1875rem;
}

.daterangepicker .calendar-time {
  text-align: center;
  margin: 0.4375rem 0;
}

.daterangepicker .calendar-time select.disabled {
  color: #999;
  cursor: default;
}

.ranges {
  background-color: #fff;
  position: relative;
  margin-top: 0.46875rem;
  border: 1px solid rgba(0, 0, 0, 0.15);
  border-radius: 0.1875rem;
  box-shadow: 0 0.25rem 0.5rem rgba(0, 0, 0, 0.1);
}

.ranges ul {
  list-style: none;
  margin: 0;
  padding: 0.5rem 0;
}

.ranges ul + .daterangepicker-inputs {
  border-top: 1px solid #ddd;
}

.ranges ul li {
  color: #333;
  padding: 0.5rem 1rem;
  cursor: pointer;
  margin-top: 1px;
  transition: all ease-in-out 0.15s;
}

@media (prefers-reduced-motion: reduce) {
  .ranges ul li {
    transition: none;
  }
}

.ranges ul li:first-child {
  margin-top: 0;
}

.ranges ul li:hover, .ranges ul li:focus {
  color: #333;
  background-color: #f5f5f5;
}

.ranges ul li.active {
  color: #fff;
  background-color: #26A69A;
}

.ranges .daterangepicker-inputs {
  padding: 0.9375rem;
  padding-top: 1.1875rem;
}

.ranges .daterangepicker-inputs .daterangepicker_input + .daterangepicker_input {
  margin-top: 1.1875rem;
}

.ranges .daterangepicker-inputs .daterangepicker_input > span {
  display: block;
  margin-bottom: 0.625rem;
  color: #999;
}

.ranges .daterangepicker-inputs + .range_inputs {
  border-top: 1px solid #ddd;
}

.ranges .range_inputs {
  padding: 0.9375rem;
}

.ranges .range_inputs .btn {
  display: block;
  width: 100%;
}

.ranges .range_inputs .btn + .btn {
  margin-top: 0.9375rem;
}

.ranges ul + .daterangepicker-inputs {
  padding-left: 1rem;
  padding-right: 1rem;
}

@media (min-width: 576px) {
  .ranges {
    margin-top: 0.46875rem;
    margin-bottom: 0.46875rem;
  }
}

.daterange-custom {
  cursor: pointer;
}

.daterange-custom-display {
  display: inline-flex;
  align-items: center;
  flex-wrap: nowrap;
  position: relative;
  padding-left: 1.5rem;
  height: 2.69238rem;
}

.daterange-custom-display:after {
  content: '\e9c1';
  font-family: "icomoon";
  display: block;
  font-size: 1rem;
  position: absolute;
  top: 50%;
  left: 0;
  margin-top: -0.5rem;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.daterange-custom-display > i {
  display: block;
  font-size: 1.875rem;
  font-weight: normal;
  font-style: normal;
  letter-spacing: -0.015em;
}

.daterange-custom-display b {
  margin-left: 0.5rem;
  font-weight: 400;
  text-align: center;
}

.daterange-custom-display b > i {
  font-size: 0.6875rem;
  display: block;
  line-height: 0.75rem;
  text-transform: uppercase;
  font-style: normal;
  font-weight: 400;
}

.daterange-custom-display em {
  margin: 0 0.5rem;
}

@media (max-width: 767.98px) {
  .opensleft,
  .opensright {
    left: 0 !important;
    right: 0;
  }
  .opensleft .calendars,
  .opensright .calendars {
    float: none;
  }
  .daterangepicker.opensleft .ranges,
  .daterangepicker.opensleft .calendar,
  .daterangepicker.opensleft .calendars,
  .daterangepicker.opensright .ranges,
  .daterangepicker.opensright .calendar,
  .daterangepicker.opensright .calendars {
    float: none;
  }
  .daterangepicker {
    width: 100%;
    padding-left: 1.25rem;
    padding-right: 1.25rem;
  }
  .daterangepicker .calendar {
    margin-left: 0;
    margin-right: 0;
  }
  .daterangepicker .ranges {
    width: 100%;
  }
}

/* ------------------------------------------------------------------------------
*
*  # Pick-a-date - Picker base
*
*  The mobile-friendly, responsive, and lightweight jQuery date & time input picker
*
* ---------------------------------------------------------------------------- */
.picker {
  width: 100%;
  text-align: left;
  position: absolute;
  top: 100%;
  margin-top: -1px;
  z-index: 1070;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
}

.picker__input {
  cursor: default;
}

.picker__holder {
  width: 100%;
  overflow-y: auto;
  position: absolute;
  display: none;
  background-color: #fff;
  border: 1px solid rgba(0, 0, 0, 0.15);
  border-top-width: 0;
  border-bottom-width: 0;
  max-width: 18.13rem;
  outline: 0;
  -webkit-overflow-scrolling: touch;
  border-bottom-right-radius: 0.1875rem;
  border-bottom-left-radius: 0.1875rem;
  box-shadow: 0 0.25rem 0.5rem rgba(0, 0, 0, 0.1);
}

.picker--opened .picker__holder {
  max-height: 480px;
  border-top-width: 1px;
  border-bottom-width: 1px;
  display: block;
}

/* ------------------------------------------------------------------------------
*
*  # Pick-a-date - Date picker
*
*  The mobile-friendly, responsive, and lightweight jQuery date & time input picker
*
* ---------------------------------------------------------------------------- */
.picker__box {
  padding: 0.9375rem;
}

.picker__header {
  text-align: center;
  position: relative;
  font-size: 0.9375rem;
  line-height: 1;
  padding-top: 0.9375rem;
  padding-bottom: 0.9375rem;
}

.picker__month,
.picker__year {
  font-weight: 500;
  display: inline-block;
  margin-left: 0.3125rem;
  margin-right: 0.3125rem;
}

.picker__year {
  color: #999;
  font-size: 0.75rem;
  font-weight: normal;
}

.picker__select--month,
.picker__select--year {
  border-color: #ddd;
  height: 2.25003rem;
  font-size: 0.8125rem;
  line-height: 1.5385;
  margin-left: 0.3125rem;
  margin-right: 0.3125rem;
  outline: 0;
  white-space: nowrap;
}

.picker__nav--prev,
.picker__nav--next {
  position: absolute;
  padding: 0.5rem;
  top: 50%;
  margin-top: -1rem;
  line-height: 1;
  border-radius: 0.1875rem;
  transition: all ease-in-out 0.15s;
}

@media (prefers-reduced-motion: reduce) {
  .picker__nav--prev,
  .picker__nav--next {
    transition: none;
  }
}

.picker__nav--prev:before,
.picker__nav--next:before {
  font-family: "icomoon";
  display: block;
  font-size: 1rem;
  width: 1rem;
  text-align: center;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.picker__nav--prev:hover,
.picker__nav--next:hover {
  cursor: pointer;
  color: #333;
  background-color: #f5f5f5;
}

.picker__nav--prev {
  left: 0;
}

.picker__nav--prev:before {
  content: '\e9c8';
}

.picker__nav--next {
  right: 0;
}

.picker__nav--next:before {
  content: '\e9cb';
}

.picker__nav--disabled, .picker__nav--disabled:hover, .picker__nav--disabled:before, .picker__nav--disabled:before:hover {
  cursor: default;
  background-color: transparent;
}

.picker__table {
  text-align: center;
  border-collapse: collapse;
  border-spacing: 0;
  table-layout: fixed;
  font-size: inherit;
  width: 100%;
  margin-bottom: 0.9375rem;
}

.picker__table td {
  margin: 0;
  padding: 0;
}

.picker__weekday {
  width: 14.285714286%;
  text-align: center;
  padding-bottom: 0.46875rem;
  padding-top: 0.9375rem;
  color: #999;
  font-weight: 400;
}

.picker__day {
  padding: 0.4375rem;
  min-width: 2.12503rem;
  border-radius: 0.1875rem;
}

.picker__day--today {
  position: relative;
  background-color: #f5f5f5;
}

.picker__day--today:before {
  content: "";
  position: absolute;
  top: 0.125rem;
  right: 0.125rem;
  width: 0;
  height: 0;
  border-top: 0.375rem solid #26A69A;
  border-left: 0.375rem solid transparent;
}

.picker__day--outfocus {
  color: #ccc;
}

.picker__day--infocus,
.picker__day--outfocus {
  transition: all ease-in-out 0.15s;
}

@media (prefers-reduced-motion: reduce) {
  .picker__day--infocus,
  .picker__day--outfocus {
    transition: none;
  }
}

.picker__day--infocus:hover,
.picker__day--outfocus:hover {
  cursor: pointer;
  color: #333;
  background-color: #f5f5f5;
}

.picker__day--highlighted:before {
  border-top-color: #fff;
}

.picker__day--highlighted,
.picker__day--highlighted:hover,
.picker--focused .picker__day--highlighted {
  cursor: pointer;
  color: #fff;
  background-color: #26A69A;
}

.picker__day--selected,
.picker__day--selected:hover,
.picker--focused .picker__day--selected {
  background-color: #26A69A;
  color: #fff;
}

.picker__day--disabled, .picker__day--disabled:hover {
  background-color: transparent;
  color: #999;
  cursor: default;
}

.picker__day--disabled:before {
  border-top-color: #999;
}

.picker__day--highlighted .picker__day--disabled, .picker__day--highlighted .picker__day--disabled:hover {
  background-color: transparent;
}

.picker__footer {
  text-align: center;
}

.picker__footer button {
  border: 0;
  padding: 0.4375rem 0.875rem;
  font-weight: 500;
  cursor: pointer;
  display: inline-block;
  border-radius: 0.1875rem;
  transition: all ease-in-out 0.15s;
}

@media (prefers-reduced-motion: reduce) {
  .picker__footer button {
    transition: none;
  }
}

.picker__footer button:hover, .picker__footer button:focus {
  outline: 0;
  color: #333;
  background-color: #f5f5f5;
}

.picker__footer button:before {
  height: 0;
}

.picker__footer button:disabled, .picker__footer button:disabled:hover, .picker__footer button:disabled:focus {
  background-color: transparent;
  color: #999;
  cursor: default;
}

.picker__button--today:before {
  content: '';
  margin-right: 0.625rem;
  position: relative;
  display: inline-block;
  top: -0.0625rem;
  width: 0;
  border-top: 0.375rem solid #2196F3;
  border-left: 0.375rem solid transparent;
}

.picker__button--close:before {
  content: '\D7';
  display: inline-block;
  position: relative;
  margin-right: 0.625rem;
  top: 0.0625rem;
  line-height: 1;
  font-size: 1rem;
}

.picker__button--clear:before {
  content: '';
  display: inline-block;
  position: relative;
  top: -0.1875rem;
  width: 0.5rem;
  margin-right: 0.625rem;
  border-top: 0.125rem solid #F44336;
}

/* ------------------------------------------------------------------------------
*
*  # Pick-a-date - Time picker
*
*  The mobile-friendly, responsive, and lightweight jQuery date & time input picker
*
* ---------------------------------------------------------------------------- */
.picker--time {
  min-width: 16rem;
  max-width: 20rem;
}

.picker--time .picker__box {
  padding: 0;
}

.picker__list {
  list-style: none;
  padding: 0.5rem 0;
  margin: 0;
  max-height: 250px;
  overflow-y: auto;
}

.picker__list-item {
  position: relative;
  padding: 0.5rem 1rem;
  transition: all ease-in-out 0.15s;
}

@media (prefers-reduced-motion: reduce) {
  .picker__list-item {
    transition: none;
  }
}

.picker__list-item:hover, .picker__list-item:focus {
  cursor: pointer;
  color: #333;
  background-color: #f5f5f5;
  z-index: 10;
}

.picker--time .picker__button--clear {
  display: block;
  width: 100%;
  margin: 0;
  padding: 0.4375rem 0.875rem;
  background-color: #fafafa;
  outline: 0;
  border: 0;
  border-top: 1px solid #ddd;
  text-align: center;
  cursor: pointer;
  margin-bottom: -0.5rem;
  margin-top: 0.5rem;
  transition: all ease-in-out 0.15s;
}

@media (prefers-reduced-motion: reduce) {
  .picker--time .picker__button--clear {
    transition: none;
  }
}

.picker--time .picker__button--clear:hover, .picker--time .picker__button--clear:focus {
  background-color: #f5f5f5;
}

.picker__list-item--highlighted {
  z-index: 10;
}

.picker__list-item--highlighted,
.picker__list-item--highlighted:hover,
.picker--focused .picker__list-item--highlighted {
  cursor: pointer;
  color: #333;
  background-color: #f5f5f5;
}

.picker__list-item--selected,
.picker__list-item--selected:hover,
.picker--focused .picker__list-item--selected {
  color: #fff;
  background-color: #2196F3;
  z-index: 10;
}

.picker__list-item--disabled,
.picker__list-item--disabled:hover,
.picker--focused .picker__list-item--disabled {
  color: #999;
  background-color: transparent;
  cursor: default;
  z-index: auto;
}

/* ------------------------------------------------------------------------------
*
*  # Anytime picker
*
*  jQuery datepicker/timepicker and a Date/String parse/format utility
*
* ---------------------------------------------------------------------------- */
.AnyTime-pkr {
  text-align: center;
}

.AnyTime-pkr * {
  margin: 0;
  padding: 0;
  list-style: none;
}

.AnyTime-pkr .AnyTime-date {
  float: left;
}

.AnyTime-pkr .AnyTime-date + .AnyTime-time {
  margin-left: 3.125rem;
  float: left;
}

.AnyTime-win {
  padding: 0.9375rem;
  background-color: #fff;
  border: 1px solid rgba(0, 0, 0, 0.15);
  display: inline-block;
  z-index: 1070;
  border-radius: 0.1875rem;
  box-shadow: 0 0.25rem 0.5rem rgba(0, 0, 0, 0.1);
}

.AnyTime-cloak {
  position: absolute;
  opacity: 0.7;
}

.AnyTime-hdr {
  font-size: 0.9375rem;
  margin: 0.9375rem;
  line-height: 1;
}

.AnyTime-x-btn {
  display: none;
  font-size: 0;
  cursor: pointer;
  float: right;
  opacity: 0.6;
  border-radius: 0.1875rem;
}

.AnyTime-x-btn:hover {
  opacity: 1;
}

.AnyTime-x-btn:after {
  content: '\ed6b';
  font-family: "icomoon";
  font-size: 1rem;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.AnyTime-lbl {
  font-size: 0.8125rem;
  margin-bottom: 0.625rem;
  font-weight: 500;
  margin-top: 1.25rem;
}

.AnyTime-lbl:first-child {
  margin-top: 0.5rem;
}

.AnyTime-yrs .AnyTime-cur-btn, .AnyTime-yrs .AnyTime-cur-btn:hover {
  background-color: #F44336;
  color: #fff;
}

.AnyTime-mons .AnyTime-cur-btn, .AnyTime-mons .AnyTime-cur-btn:hover {
  background-color: #26A69A;
  color: #fff;
}

.AnyTime-time .AnyTime-cur-btn, .AnyTime-time .AnyTime-cur-btn:hover {
  background-color: #607D8B;
  color: #fff;
}

.AnyTime-dom-table .AnyTime-cur-btn, .AnyTime-dom-table .AnyTime-cur-btn:hover,
.AnyTime-body-yr-selector .AnyTime-cur-btn,
.AnyTime-body-yr-selector .AnyTime-cur-btn:hover {
  background-color: #26A69A;
  color: #fff;
}

.AnyTime-yrs-past-btn,
.AnyTime-yrs-ahead-btn {
  display: inline-block;
}

.AnyTime-yr-prior-btn,
.AnyTime-yr-cur-btn,
.AnyTime-yr-next-btn {
  display: inline-block;
  min-width: 3rem;
}

.AnyTime-mons::after {
  display: block;
  clear: both;
  content: "";
}

.AnyTime-dom-table {
  width: 100%;
}

.AnyTime-pkr th.AnyTime-dow {
  color: #999;
  padding: 0.4375rem;
  font-weight: 400;
}

.AnyTime-mon-btn {
  float: left;
  width: 16.66667%;
}

.AnyTime-mon7-btn {
  clear: left;
}

.AnyTime-time,
.AnyTime-hrs-am,
.AnyTime-hrs-pm,
.AnyTime-mins-tens,
.AnyTime-mins-ones,
.AnyTime-secs-tens,
.AnyTime-secs-ones,
.AnyTime-hrs,
.AnyTime-mins,
.AnyTime-secs,
.AnyTime-offs {
  display: inline-block;
}

.AnyTime-btn {
  padding: 0.4375rem;
  cursor: pointer;
  border-radius: 0.1875rem;
  transition: all ease-in-out 0.15s;
}

@media (prefers-reduced-motion: reduce) {
  .AnyTime-btn {
    transition: none;
  }
}

.AnyTime-btn:hover {
  color: #333;
  background-color: #f5f5f5;
}

.AnyTime-btn.ui-state-disabled {
  cursor: default;
  color: #999;
  background-color: transparent;
}

.AnyTime-hr-btn,
.AnyTime-min-ten-btn,
.AnyTime-min-one-btn,
.AnyTime-sec-ten-btn,
.AnyTime-sec-one-btn {
  min-width: 2.5rem;
}

.AnyTime-hrs-pm,
.AnyTime-mins-ones,
.AnyTime-secs-ones {
  margin-left: 0.125rem;
}

.AnyTime-mins-tens,
.AnyTime-secs-tens {
  margin-left: 1.25rem;
}

.AnyTime-off-cur-btn {
  display: inline-block;
  overflow: hidden;
}

.AnyTime-off-select-btn {
  display: inline-block;
  vertical-align: top;
}

.AnyTime-off-selector {
  margin: 0.625rem;
  position: absolute;
}

.AnyTime-body-off-selector {
  margin: 0;
  overflow-x: hidden;
  overflow-y: auto;
  white-space: nowrap;
}

.AnyTime-off-off-btn {
  text-align: left;
}

.AnyTime-yr-selector {
  position: absolute;
  width: 90%;
}

.AnyTime-body-yr-selector {
  margin: 0;
}

.AnyTime-yr-mil,
.AnyTime-yr-cent,
.AnyTime-yr-dec,
.AnyTime-yr-yr,
.AnyTime-yr-era {
  display: inline-block;
  vertical-align: top;
  width: 20%;
}

@media (max-width: 575.98px) {
  .AnyTime-pkr .AnyTime-date {
    float: none;
  }
  .AnyTime-mon-btn {
    float: none;
    display: inline-block;
  }
  .AnyTime-date + .AnyTime-time {
    margin-left: 0;
    margin-top: 1.25rem;
    float: none;
  }
}

/* ------------------------------------------------------------------------------
*
*  # Spectrum color picker
*
*  Flexible and powerful jQuery colorpicker library
*
* ---------------------------------------------------------------------------- */
.sp-sat,
.sp-val,
.sp-top-inner,
.sp-color,
.sp-hue,
.sp-clear-enabled .sp-clear,
.sp-preview-inner,
.sp-alpha-inner,
.sp-thumb-inner {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
}

.sp-container.sp-input-disabled .sp-input-container,
.sp-container.sp-buttons-disabled .sp-button-container,
.sp-container.sp-palette-buttons-disabled .sp-palette-button-container,
.sp-palette-only .sp-picker-container,
.sp-palette-disabled .sp-palette-container,
.sp-initial-disabled .sp-initial {
  display: none;
}

.sp-hidden {
  display: none !important;
}

.sp-cf::after {
  display: block;
  clear: both;
  content: "";
}

.sp-preview,
.sp-alpha,
.sp-thumb-el {
  position: relative;
  background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAwAAAAMCAIAAADZF8uwAAAAGUlEQVQYV2M4gwH+YwCGIasIUwhT25BVBADtzYNYrHvv4gAAAABJRU5ErkJggg==);
}

.sp-preview-inner,
.sp-alpha-inner,
.sp-thumb-inner {
  display: block;
}

.sp-container {
  position: absolute;
  top: 0;
  /*rtl:ignore*/
  left: 0;
  display: inline-block;
  z-index: 1000;
  background-color: #fff;
  border: 1px solid rgba(0, 0, 0, 0.15);
  overflow: hidden;
  box-sizing: content-box;
  border-radius: 0.1875rem;
  box-shadow: 0 0.25rem 0.5rem rgba(0, 0, 0, 0.1);
}

.sp-container.sp-flat {
  position: relative;
  overflow-x: auto;
  max-width: 100%;
  white-space: nowrap;
  box-shadow: 0 1px 2px rgba(0, 0, 0, 0.05);
}

.sp-picker-container,
.sp-palette-container {
  display: block;
  white-space: nowrap;
  vertical-align: top;
  position: relative;
  padding: 0.625rem;
}

@media (min-width: 576px) {
  .sp-picker-container,
  .sp-palette-container {
    display: inline-block;
  }
}

.sp-picker-container {
  width: 13.75rem;
}

.sp-container,
.sp-replacer,
.sp-preview,
.sp-dragger,
.sp-slider,
.sp-alpha,
.sp-clear,
.sp-alpha-handle,
.sp-container.sp-dragging .sp-input,
.sp-container button {
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
}

.sp-top {
  position: relative;
  width: 100%;
  display: block;
}

.sp-color {
  right: 20%;
}

.sp-hue {
  left: 85%;
  height: 100%;
}

.sp-clear-enabled .sp-hue {
  top: 2.5rem;
  height: 75%;
}

.sp-fill {
  padding-top: 80%;
}

.sp-alpha-enabled .sp-top {
  margin-bottom: 1.625rem;
}

.sp-alpha-enabled .sp-alpha {
  display: block;
}

.sp-alpha-handle {
  position: absolute;
  top: -0.25rem;
  bottom: -0.25rem;
  width: 0.3125rem;
  /*rtl:ignore*/
  left: 50%;
  cursor: pointer;
  border: 1px solid #ccc;
  background-color: #fff;
  border-radius: 0.25rem;
}

.sp-alpha {
  display: none;
  position: absolute;
  bottom: -1rem;
  right: 0;
  left: 0;
  height: 0.375rem;
}

.sp-clear {
  display: none;
}

.sp-clear-display {
  cursor: pointer;
}

.sp-clear-display:after {
  content: '\ee6e';
  display: block;
  font-family: "icomoon";
  font-size: 1rem;
  line-height: 1.875rem;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.sp-preview .sp-clear-display:after,
.sp-initial .sp-clear-display:after {
  content: none;
}

.sp-clear-enabled .sp-clear {
  display: block;
  left: 85%;
  height: 1.875rem;
  text-align: center;
  color: #999;
  box-shadow: 0 0 0 1px #ddd inset;
}

.sp-input-container {
  margin-top: 0.625rem;
}

.sp-initial-disabled .sp-input-container {
  width: 100%;
}

.sp-input {
  border: 1px solid #ddd;
  padding: 0.4375rem 0.875rem;
  width: 100%;
  background-color: #fff;
  outline: 0;
  color: #333;
  border-radius: 0.1875rem;
}

.sp-initial {
  margin-top: 0.625rem;
}

.sp-initial span {
  width: 50%;
  height: 1.563rem;
  display: block;
  float: left;
}

.sp-initial span .sp-thumb-inner {
  height: 1.563rem;
  width: 100%;
  display: block;
}

.sp-dragger {
  border: 1px solid #fff;
  background-color: #333;
  cursor: pointer;
  position: absolute;
  top: 0;
  /*rtl:ignore*/
  left: 0;
  border-radius: 50%;
  width: 0.375rem;
  height: 0.375rem;
}

.sp-slider {
  position: absolute;
  top: 0;
  cursor: pointer;
  height: 0.25rem;
  left: -0.125rem;
  right: -0.125rem;
  border: 1px solid #ccc;
  background-color: #fff;
  border-radius: 0.1875rem;
}

.sp-replacer {
  overflow: hidden;
  cursor: pointer;
  padding: 0.3125rem;
  display: inline-block;
  border: 1px solid #ddd;
  background-color: #fafafa;
  color: #999;
  vertical-align: middle;
  border-radius: 0.1875rem;
  transition: all ease-in-out 0.15s;
}

@media (prefers-reduced-motion: reduce) {
  .sp-replacer {
    transition: none;
  }
}

.sp-replacer:not([class*=bg-]):hover, .sp-replacer:not([class*=bg-]).sp-active {
  background-color: #f5f5f5;
  color: #333;
}

.sp-replacer[class*=bg-], .sp-replacer[class*=bg-]:hover, .sp-replacer[class*=bg-]:focus {
  border-color: transparent;
}

.sp-replacer.sp-disabled {
  cursor: default;
  opacity: 0.8;
}

.sp-replacer.sp-disabled:hover, .sp-replacer.sp-disabled:focus {
  background-color: #fafafa;
  color: #999;
}

.sp-preview {
  position: relative;
  width: 1.625rem;
  height: 1.5rem;
  margin-right: 0.3125rem;
  float: left;
  z-index: 0;
}

.sp-preview,
.sp-preview .sp-preview-inner {
  border-radius: 0.1875rem;
}

.sp-preview .sp-preview-inner,
.sp-preview .sp-clear-display {
  box-shadow: 0 0 0 1px rgba(0, 0, 0, 0.05);
}

.sp-replacer[class*=bg-] .sp-preview .sp-preview-inner {
  box-shadow: 0 0 0 1px rgba(0, 0, 0, 0.5);
}

.sp-dd {
  float: left;
  font-size: 0;
  position: relative;
  margin: 0.25rem;
}

.sp-dd:after {
  content: '\e9c5';
  display: block;
  font-family: "icomoon";
  font-size: 1rem;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

/*rtl:begin:ignore*/
.sp-sat {
  background-image: linear-gradient(to right, #fff, rgba(204, 154, 129, 0));
  -ms-filter: "progid:DXImageTransform.Microsoft.gradient(GradientType = 1, startColorstr=#FFFFFFFF, endColorstr=#00CC9A81)";
  filter: progid:DXImageTransform.Microsoft.gradient(GradientType = 1, startColorstr='#FFFFFFFF', endColorstr='#00CC9A81');
  box-shadow: 0 0 0 1px #ccc inset;
}

.sp-val {
  background-image: linear-gradient(to top, #000, rgba(204, 154, 129, 0));
  -ms-filter: "progid:DXImageTransform.Microsoft.gradient(startColorstr=#00CC9A81, endColorstr=#FF000000)";
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#00CC9A81', endColorstr='#FF000000');
}

.sp-hue {
  background: linear-gradient(to bottom, #ff0000 0%, #ffff00 17%, #00ff00 33%, #00ffff 50%, #0000ff 67%, #ff00ff 83%, #ff0000 100%);
}

/*rtl:end:ignore*/
/*rtl:begin:ignore*/
.sp-1 {
  height: 17%;
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff0000', endColorstr='#ffff00');
}

.sp-2 {
  height: 16%;
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffff00', endColorstr='#00ff00');
}

.sp-3 {
  height: 17%;
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#00ff00', endColorstr='#00ffff');
}

.sp-4 {
  height: 17%;
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#00ffff', endColorstr='#0000ff');
}

.sp-5 {
  height: 16%;
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#0000ff', endColorstr='#ff00ff');
}

.sp-6 {
  height: 17%;
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff00ff', endColorstr='#ff0000');
}

/*rtl:end:ignore*/
.sp-palette {
  max-width: 13.75rem;
}

.sp-thumb-el {
  position: relative;
}

.sp-palette .sp-thumb-el {
  display: inline-block;
  position: relative;
  cursor: pointer;
}

.sp-thumb-el .sp-thumb-inner {
  box-shadow: 0 0 0 1px rgba(0, 0, 0, 0.1) inset;
}

.sp-thumb-el .sp-thumb-inner:hover {
  box-shadow: 0 0 0 1px rgba(0, 0, 0, 0.25) inset;
}

.sp-palette .sp-thumb-el {
  width: 1rem;
  height: 1rem;
}

.sp-palette .sp-thumb-el + .sp-thumb-el {
  margin-left: 0.3125rem;
}

.sp-palette .sp-thumb-el.sp-thumb-active {
  box-shadow: 0 0 0 2px rgba(0, 0, 0, 0.1) inset;
}

.sp-palette .sp-thumb-el.sp-thumb-active .sp-thumb-inner {
  box-shadow: 0 0 0 1px rgba(0, 0, 0, 0.25) inset;
}

.sp-palette .sp-thumb-active.sp-thumb-dark .sp-thumb-inner:after, .sp-palette .sp-thumb-active.sp-thumb-light .sp-thumb-inner:after {
  content: '\e600';
  display: block;
  font-family: "icomoon";
  font-size: 1rem;
  line-height: 1;
  color: #fff;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.sp-palette .sp-thumb-active.sp-thumb-light .sp-thumb-inner:after {
  color: #333;
}

.sp-palette-row {
  font-size: 0;
}

.sp-palette-row + .sp-palette-row {
  margin-top: 0.3125rem;
}

.sp-palette-row:empty {
  margin-top: 0;
}

.sp-cancel,
.sp-choose,
.sp-palette-toggle {
  border: 0;
  padding: 0.4375rem 0.875rem;
  float: left;
  width: 48%;
  text-align: center;
  cursor: pointer;
  border-radius: 0.1875rem;
  transition: all ease-in-out 0.15s;
}

@media (prefers-reduced-motion: reduce) {
  .sp-cancel,
  .sp-choose,
  .sp-palette-toggle {
    transition: none;
  }
}

.sp-cancel:focus,
.sp-choose:focus,
.sp-palette-toggle:focus {
  outline: 0;
}

.sp-palette-button-container,
.sp-button-container {
  margin-top: 0.625rem;
  text-align: center;
}

.sp-container[class*=bg-] .sp-palette-button-container a,
.sp-container[class*=bg-] .sp-palette-button-container button, .sp-container[class*=bg-]
.sp-button-container a,
.sp-container[class*=bg-]
.sp-button-container button {
  background-color: rgba(0, 0, 0, 0.25);
  color: #fff;
  border-color: transparent;
}

.sp-container[class*=bg-] .sp-palette-button-container .sp-cancel:hover, .sp-container[class*=bg-] .sp-palette-button-container .sp-cancel:focus,
.sp-container[class*=bg-] .sp-palette-button-container .sp-palette-toggle:hover,
.sp-container[class*=bg-] .sp-palette-button-container .sp-palette-toggle:focus, .sp-container[class*=bg-]
.sp-button-container .sp-cancel:hover, .sp-container[class*=bg-]
.sp-button-container .sp-cancel:focus,
.sp-container[class*=bg-]
.sp-button-container .sp-palette-toggle:hover,
.sp-container[class*=bg-]
.sp-button-container .sp-palette-toggle:focus {
  box-shadow: 0 0 0 62.5rem rgba(0, 0, 0, 0.075) inset;
}

.sp-cancel,
.sp-palette-toggle {
  border: 1px solid transparent;
}

.sp-cancel:hover, .sp-cancel:focus,
.sp-palette-toggle:hover,
.sp-palette-toggle:focus {
  color: #333;
  background-color: #f5f5f5;
  border-color: #ddd;
}

.sp-choose {
  border: 1px solid transparent;
}

.sp-choose:hover, .sp-choose:focus {
  box-shadow: 0 0 0 62.5rem rgba(0, 0, 0, 0.075) inset;
}

.sp-cancel,
.sp-palette-toggle {
  color: #333;
  margin-right: 0.3125rem;
  background-color: #fafafa;
  margin-right: 4%;
  border-color: #ddd;
}

.sp-cancel:hover, .sp-cancel:focus,
.sp-palette-toggle:hover,
.sp-palette-toggle:focus {
  color: #333;
}

.sp-palette-toggle {
  margin-right: 0;
  width: auto;
  float: none;
}

.sp-choose {
  color: #fff;
  background-color: #607D8B;
}

/* ------------------------------------------------------------------------------
 *
 *  # Plupload multiple file uploader
 *
 *  Styles for plupload.min.js - multi runtime single and multiple file uploader
 *
 * ---------------------------------------------------------------------------- */
.plupload_wrapper {
  background-color: #fcfcfc;
  border: 2px dashed #ddd;
  border-radius: 0.1875rem;
}

.plupload_header:after,
.plupload_filelist:empty:before,
.plupload_filelist li.plupload_droptext:before,
.plupload_file_action:after,
.plupload_delete a:after,
.plupload_failed a:after,
.plupload_done a:after {
  font-family: "icomoon";
  display: block;
  font-size: 1rem;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.plupload_header {
  display: none;
  position: relative;
  background-color: #37474F;
  color: #fff;
  margin: -4px -2px;
  border-top-left-radius: 0.1875rem;
  border-top-right-radius: 0.1875rem;
}

.plupload_header:after {
  content: '\ec78';
  font-size: 2rem;
  position: absolute;
  top: 50%;
  left: 1.25rem;
  margin-top: -1rem;
}

.plupload_header_content {
  padding: 0.9375rem 1.25rem;
  padding-left: 4.5rem;
}

.plupload_header_title {
  font-size: 0.9375rem;
  font-weight: 500;
}

.plupload_header_text {
  font-size: 0.75rem;
  line-height: 1.6667;
}

.plupload_clear,
.plupload_clearer {
  clear: both;
}

.plupload_clearer,
.plupload_progress_bar {
  display: block;
  font-size: 0;
  line-height: 0;
}

.plupload_button {
  display: inline-block;
  border: 1px solid transparent;
  font-weight: 400;
  padding: 0.4375rem 0.875rem;
  font-size: 0.8125rem;
  line-height: 1.5385;
  border-radius: 0.1875rem;
  transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
}

@media (prefers-reduced-motion: reduce) {
  .plupload_button {
    transition: none;
  }
}

.plupload_button:not(:last-child) {
  margin-right: 0.625rem;
}

.plupload_add {
  color: #333;
  background-color: #fafafa;
  border-color: #ddd;
}

.plupload_add:hover {
  color: #333;
  background-color: #f5f5f5;
  border-color: #ddd;
}

.plupload_start {
  color: #fff;
  background-color: #2196F3;
  border-color: #2196F3;
}

.plupload_start:hover {
  color: #fff;
  box-shadow: 0 0 0 62.5rem rgba(0, 0, 0, 0.075) inset;
}

a.plupload_disabled {
  cursor: default;
  opacity: 0.65;
}

a.plupload_disabled:hover {
  box-shadow: none;
}

.plupload_filelist {
  position: relative;
  margin: 0;
  padding: 0;
  list-style: none;
}

.plupload_scroll .plupload_filelist {
  height: 250px;
  overflow-y: auto;
}

.plupload_filelist li {
  display: flex;
  align-items: center;
  padding: 0.5rem 1.25rem;
  transition: all ease-in-out 0.15s;
}

@media (prefers-reduced-motion: reduce) {
  .plupload_filelist li {
    transition: none;
  }
}

.plupload_filelist li:hover {
  background-color: #f5f5f5;
}

.plupload_filelist li .plupload_file_name {
  margin-right: auto;
}

.plupload_filelist li .plupload_file_action {
  order: 12;
}

.plupload_filelist li .plupload_file_status {
  order: 11;
}

.plupload_filelist li .plupload_file_size {
  order: 10;
}

.plupload_filelist:empty,
.plupload_filelist li.plupload_droptext {
  background-color: transparent;
  font-size: 0;
}

.plupload_filelist:empty:before,
.plupload_filelist li.plupload_droptext:before {
  content: '\ea0e';
  font-size: 5rem;
  position: absolute;
  top: 50%;
  left: 50%;
  margin-top: -1.25rem;
  z-index: 2;
  color: #ccc;
  text-indent: 0;
  font-weight: normal;
  transform: translate(-50%, -50%);
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.plupload_filelist:empty:after,
.plupload_filelist li.plupload_droptext:after {
  content: 'Drag files to upload';
  font-size: 1.0625rem;
  position: absolute;
  top: 50%;
  left: 50%;
  margin-top: 3.75rem;
  color: #777;
  text-indent: 0;
  transform: translate(-50%, -50%);
}

.plupload_filelist:empty:after {
  content: 'Add files to upload';
}

@media (max-width: 767.98px) {
  .plupload_filelist {
    padding: 0.625rem 0;
  }
  .plupload_filelist li .plupload_file_size {
    display: none;
  }
}

.plupload_filelist_header {
  padding: 0.9375rem 1.25rem;
}

.plupload_filelist_header .plupload_file_name,
.plupload_filelist_header .plupload_file_size,
.plupload_filelist_header .plupload_file_status,
.plupload_filelist_header .plupload_file_action {
  font-weight: 500;
}

@media (max-width: 767.98px) {
  .plupload_filelist_header {
    display: none;
  }
}

.plupload_filelist_footer {
  padding: 0.9375rem 1.25rem;
}

.plupload_filelist_footer .plupload_file_size,
.plupload_filelist_footer .plupload_file_status,
.plupload_filelist_footer .plupload_upload_status {
  padding: 0.4375rem 0;
  font-weight: 500;
}

@media (max-width: 767.98px) {
  .plupload_filelist_footer {
    text-align: center;
  }
  .plupload_filelist_footer .plupload_file_action,
  .plupload_filelist_footer .plupload_file_status,
  .plupload_filelist_footer .plupload_file_size {
    display: none;
  }
  .plupload_filelist_footer .plupload_progress {
    margin: auto;
  }
}

@media (min-width: 576px) {
  .plupload_filelist_header,
  .plupload_filelist_footer {
    display: flex;
    align-items: center;
  }
  .plupload_filelist_header .plupload_file_name,
  .plupload_filelist_footer .plupload_file_name {
    margin-right: auto;
  }
  .plupload_filelist_header .plupload_file_action,
  .plupload_filelist_footer .plupload_file_action {
    order: 12;
  }
  .plupload_filelist_header .plupload_file_status,
  .plupload_filelist_footer .plupload_file_status {
    order: 11;
  }
  .plupload_filelist_header .plupload_file_size,
  .plupload_filelist_footer .plupload_file_size {
    order: 10;
  }
}

.plupload_file_action {
  margin-left: 1.875rem;
  line-height: 1;
  font-size: 0;
  text-align: right;
}

.plupload_file_action * {
  display: none;
}

.plupload_file_action:after {
  content: '\ec67';
}

.plupload_filelist .plupload_file_action:after {
  content: none;
}

.plupload_delete .plupload_file_action > a {
  color: #333;
  line-height: 1;
  opacity: 0.5;
  transition: opacity ease-in-out 0.15s;
}

@media (prefers-reduced-motion: reduce) {
  .plupload_delete .plupload_file_action > a {
    transition: none;
  }
}

.plupload_delete .plupload_file_action > a:hover {
  opacity: 1;
}

.plupload_uploading {
  background-color: #E8F5E9;
}

.plupload_delete a:after {
  content: '\ed6b';
}

.plupload_failed a {
  color: #F44336;
  cursor: default;
}

.plupload_failed a:after {
  content: '\e9cf';
}

.plupload_done {
  color: #999;
}

.plupload_done a {
  color: #4CAF50;
  cursor: default;
}

.plupload_done a:after {
  content: '\e9db';
}

.plupload_progress,
.plupload_upload_status {
  display: none;
}

.plupload_progress_container {
  background-color: rgba(0, 0, 0, 0.1);
  border-radius: 0.1875rem;
}

.plupload_progress_bar {
  width: 0;
  height: 0.25rem;
  background: #4CAF50;
  border-radius: 0.1875rem;
}

.plupload_file_size,
.plupload_file_status,
.plupload_progress {
  width: 5rem;
  text-align: right;
}

/* ------------------------------------------------------------------------------
 *
 *  # Bootstrap file input
 *
 *  Styles for fileinput.min.js - an enhanced HTML 5 file input for Bootstrap
 *
 * ---------------------------------------------------------------------------- */
.btn-file {
  position: relative;
  overflow: hidden;
}

.btn-file input[type=file] {
  position: absolute;
  top: 0;
  right: 0;
  min-width: 100%;
  min-height: 100%;
  text-align: right;
  opacity: 0;
  background: none repeat scroll 0 0 transparent;
  cursor: inherit;
  display: block;
  visibility: visible;
}

.file-caption-name {
  display: inline-block;
  overflow: hidden;
  word-break: break-all;
  font-family: "Roboto", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";
  width: 100%;
  margin: 0;
  padding: 0;
  box-shadow: none;
  border: 0;
  background: none;
  outline: 0;
  pointer-events: none;
}

.file-input-new .file-caption-name,
.file-input-ajax-new .file-caption-name {
  color: #999;
}

.file-error-message {
  position: relative;
  background-color: #FFEBEE;
  color: #C62828;
  text-align: center;
  padding: 0.4375rem 0.875rem;
  margin: 0.5rem;
  margin-top: 0;
  border-radius: 0.1875rem;
}

.file-drop-zone .file-error-message {
  margin-top: 0.4375rem;
}

.file-error-message .close {
  color: #C62828;
}

.file-error-message pre {
  background-color: #fff;
  margin-top: 0.4375rem;
  text-align: left;
}

.file-error-message ul {
  list-style: none;
  padding: 0;
  margin: 0;
}

.file-caption-disabled {
  background-color: #fafafa;
  cursor: default;
}

.file-preview-detail-modal {
  text-align: left;
}

.file-preview {
  border: 1px solid #ddd;
  width: 100%;
  margin-bottom: 1.25rem;
  position: relative;
  text-align: center;
  border-radius: 0.1875rem;
}

.file-preview .close {
  font-size: 1.25003rem;
  font-weight: 400;
  position: absolute;
  top: 0;
  right: 0;
  padding: 0.5rem;
  line-height: 1;
  color: #333;
  text-shadow: none;
  opacity: 0.75;
  border-radius: 0.1875rem;
}

.file-preview .close:hover, .file-preview .close:focus {
  color: #333;
  text-decoration: none;
  opacity: 1;
}

.file-preview-thumbnails {
  display: flex;
  flex-wrap: wrap;
  position: relative;
}

@media (max-width: 767.98px) {
  .file-preview-thumbnails {
    justify-content: center;
  }
}

.file-preview-frame {
  margin: 0.5rem;
  margin-right: 0;
  border: 1px solid #ddd;
  background-color: #fff;
  border-radius: 0.1875rem;
}

.file-preview-frame .kv-file-content {
  position: relative;
  height: 10rem;
}

.file-preview-image {
  border-top-left-radius: 0.125rem;
  border-top-right-radius: 0.125rem;
}

.file-thumbnail-footer {
  position: relative;
  background-color: #fafafa;
  border-top: 1px solid #ddd;
}

.file-preview-text {
  color: #2196F3;
  border: 0;
  overflow-x: hidden;
}

.file-preview-other {
  width: 10rem;
}

.file-preview-other:after {
  content: '\ea0c';
  font-family: "icomoon";
  line-height: 1;
  position: absolute;
  top: 50%;
  left: 50%;
  font-size: 4rem;
  transform: translate(-50%, -50%);
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.file-preview-status {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  background-color: #fafafa;
  border-top: 1px solid #ddd;
  font-size: 0.75rem;
  line-height: 1.6667;
  padding: 0.4375rem 0.875rem;
  z-index: 1070;
  border-bottom-right-radius: 0.1875rem;
  border-bottom-left-radius: 0.1875rem;
}

.file-preview-status:empty {
  padding: 0;
  background-color: transparent;
  border: 0;
}

.file-thumb-loading {
  min-height: 6.62503rem;
}

.file-thumb-loading:before,
.file-uploading:before {
  content: '';
  display: inline-block;
  background-color: #263238;
  position: absolute;
  top: 50%;
  left: 50%;
  z-index: 1069;
  margin-top: -2.06252rem;
  margin-left: -1rem;
  width: 2rem;
  height: 2rem;
  border-radius: 0.1875rem;
}

.file-thumb-loading:after,
.file-uploading:after {
  content: '\eb55';
  font-family: "icomoon";
  display: inline-block;
  position: absolute;
  color: #fff;
  top: 50%;
  left: 50%;
  margin-top: -1.56252rem;
  margin-left: -0.5rem;
  font-size: 1rem;
  line-height: 1;
  z-index: 1070;
  -webkit-animation: rotation 1s linear infinite;
          animation: rotation 1s linear infinite;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.file-upload-indicator {
  cursor: default;
  float: left;
  padding: 0.625rem;
  line-height: 1;
}

.file-upload-indicator i {
  top: 0;
}

.file-input-new .file-preview,
.file-input-new .close,
.file-input-new .glyphicon-file,
.file-input-new .fileinput-remove-button,
.file-input-new .fileinput-upload-button {
  display: none;
}

.file-input-ajax-new .fileinput-remove-button,
.file-input-ajax-new .fileinput-upload-button,
.file-input-ajax-new .close {
  display: none;
}

.kv-hidden,
.file-caption-icon,
.file-zoom-dialog .modal-header:before,
.file-zoom-dialog .modal-header:after,
.hide-content .kv-file-content {
  display: none;
}

.file-footer-buttons {
  float: right;
}

.file-footer-buttons button {
  padding: 0.625rem;
  background-color: transparent;
  border: 0;
  line-height: 1;
  cursor: pointer;
  opacity: 0.6;
  outline: 0;
  transition: opacity ease-in-out 0.15s;
}

@media (prefers-reduced-motion: reduce) {
  .file-footer-buttons button {
    transition: none;
  }
}

.file-footer-buttons button:hover {
  opacity: 1;
}

.file-footer-buttons button i {
  top: 0;
}

.file-footer-caption {
  display: block;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  text-align: center;
  padding: 0.75rem;
  background-color: #fff;
  border-bottom: 1px solid #ddd;
  margin-left: auto;
  margin-right: auto;
}

.file-size-info samp {
  font-size: 0.6875rem;
}

.file-drop-zone {
  border: 1px dashed #ddd;
  height: 100%;
  vertical-align: middle;
  margin: 0.5rem;
  padding: 0.5rem;
  border-radius: 0.1875rem;
}

.file-drop-zone-title {
  font-size: 1.1875rem;
  font-weight: 300;
  padding: 5rem;
  opacity: 0.5;
}

.kv-upload-progress {
  margin-bottom: 1.25rem;
}

.file-thumb-progress {
  position: absolute;
  top: -0.375rem;
  left: 0;
  right: 0;
}

.file-thumb-progress .progress,
.file-thumb-progress .progress-bar {
  height: 0.375rem;
  border-radius: 0;
  font-size: 0;
}

.btn-file ::-ms-browse {
  width: 100%;
  height: 100%;
}

.file-zoom-fullscreen .modal-dialog {
  position: fixed;
  margin: 0;
  width: 100%;
  height: 100%;
  padding: 0;
  max-width: 100%;
}

.file-zoom-fullscreen .modal-content {
  border-radius: 0;
}

.file-zoom-fullscreen .modal-body {
  overflow-y: auto;
}

.file-zoom-dialog .btn-navigate {
  position: absolute;
  top: 50%;
  padding: 0;
  border: 0;
  background-color: transparent;
  outline: none;
  color: #fff;
  opacity: 0.7;
  transform: translateY(-50%);
  transition: opacity ease-in-out 0.15s;
}

@media (prefers-reduced-motion: reduce) {
  .file-zoom-dialog .btn-navigate {
    transition: none;
  }
}

.file-zoom-dialog .btn-navigate > i {
  display: block;
  font-size: 2rem;
}

.file-zoom-dialog .btn-navigate:not([disabled]):hover, .file-zoom-dialog .btn-navigate:not([disabled]):focus {
  outline: none;
  box-shadow: none !important;
  opacity: 1;
}

.file-zoom-dialog .btn-navigate[disabled] {
  opacity: 0.3;
}

.file-zoom-dialog .btn-prev {
  left: -3.25rem;
}

.file-zoom-dialog .btn-next {
  right: -3.25rem;
}

.file-zoom-dialog .floating-buttons {
  position: absolute;
  top: 1.25rem;
  right: 1.25rem;
  background-color: #fff;
}

.file-zoom-dialog .kv-zoom-title {
  color: #999;
  margin-left: 0.625rem;
}

.file-zoom-content {
  text-align: center;
}

.file-drag-handle {
  cursor: move;
  float: left;
  line-height: 1;
  opacity: 0.6;
  transition: opacity ease-in-out 0.15s;
}

@media (prefers-reduced-motion: reduce) {
  .file-drag-handle {
    transition: none;
  }
}

.file-drag-handle:hover {
  opacity: 1;
}

.file-drag-handle i {
  top: 0;
}

/* ------------------------------------------------------------------------------
 *
 *  # Dropzone file uploader
 *
 *  Styles for dropzone.min.js - open source library that provides drag’n’drop file uploads with image previews
 *
 * ---------------------------------------------------------------------------- */
.dropzone {
  position: relative;
  border: 2px dashed rgba(0, 0, 0, 0.125);
  min-height: 18rem;
  background-color: #fff;
  padding: 0.3125rem;
  border-radius: 0.1875rem;
}

.card .dropzone {
  background-color: #fcfcfc;
  border-color: #ddd;
}

.dropzone .dz-message {
  opacity: 1;
}

.dropzone.dz-started .dz-message {
  display: none;
}

.dropzone.dz-drag-hover {
  border-color: #999;
  background-color: #f5f5f5;
  color: #ddd;
}

.sidebar .dropzone {
  text-align: center;
}

.sidebar .dropzone .dz-default.dz-message:before {
  font-size: 4rem;
  width: 4rem;
  height: 4rem;
  margin-left: -2rem;
  top: 50%;
  transform: translateY(-50%);
}

.sidebar .dropzone .dz-default.dz-message span {
  font-size: 0.9375rem;
}

.dropzone .dz-default.dz-message {
  height: 18rem;
  width: 100%;
  position: absolute;
  top: 0;
  left: 0;
  text-align: center;
  opacity: 1;
  border-radius: 0.1875rem;
  transition: opacity ease-in-out 0.15s;
}

@media (prefers-reduced-motion: reduce) {
  .dropzone .dz-default.dz-message {
    transition: none;
  }
}

.dropzone .dz-default.dz-message:before {
  content: '\ea0e';
  font-family: "icomoon";
  font-size: 4rem;
  display: inline-block;
  position: absolute;
  top: 5rem;
  left: 50%;
  transform: translateX(-50%);
  line-height: 1;
  z-index: 2;
  color: #ccc;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.dropzone .dz-default.dz-message > span {
  font-size: 1.0625rem;
  color: #777;
  display: block;
  margin-top: 10.25rem;
}

.dropzone .dz-default.dz-message > span span {
  display: block;
  color: #9d9d9d;
  font-size: 0.9375rem;
}

.dropzone.dz-drag-hover .dz-message {
  opacity: 0.75;
}

.dropzone.dz-started .dz-message {
  display: block;
  opacity: 0;
}

.dropzone .dz-preview,
.dropzone-previews .dz-preview {
  background-color: #fff;
  position: relative;
  display: inline-block;
  margin: 0.5rem;
  min-width: 10rem;
  border: 1px solid rgba(0, 0, 0, 0.125);
  padding: 0.5rem;
  border-radius: 0.1875rem;
  box-shadow: 0 1px 2px rgba(0, 0, 0, 0.05);
}

.dropzone .dz-preview.dz-file-preview [data-dz-thumbnail],
.dropzone-previews .dz-preview.dz-file-preview [data-dz-thumbnail] {
  display: none;
}

.dropzone .dz-preview .dz-details,
.dropzone-previews .dz-preview .dz-details {
  position: relative;
}

.dropzone .dz-preview .dz-details .dz-filename,
.dropzone-previews .dz-preview .dz-details .dz-filename {
  overflow: hidden;
  margin-top: 0.625rem;
}

.dropzone .dz-preview .dz-details img,
.dropzone-previews .dz-preview .dz-details img {
  position: absolute;
  top: 0;
  left: 0;
}

.dropzone .dz-preview .dz-details .dz-size,
.dropzone-previews .dz-preview .dz-details .dz-size {
  margin-top: 0.625rem;
}

.dropzone .dz-preview:hover .dz-details img,
.dropzone-previews .dz-preview:hover .dz-details img {
  display: none;
}

.dropzone .dz-preview .dz-error-mark,
.dropzone .dz-preview .dz-success-mark,
.dropzone-previews .dz-preview .dz-error-mark,
.dropzone-previews .dz-preview .dz-success-mark {
  display: none;
  position: absolute;
  z-index: 9;
  top: 0;
  right: 0;
  padding: 0.25rem;
  background-color: #fff;
  border-left: 1px solid rgba(0, 0, 0, 0.125);
  border-bottom: 1px solid rgba(0, 0, 0, 0.125);
  border-radius: 0 0 0 0.1875rem;
}

.dropzone .dz-preview .dz-error-mark:after,
.dropzone .dz-preview .dz-success-mark:after,
.dropzone-previews .dz-preview .dz-error-mark:after,
.dropzone-previews .dz-preview .dz-success-mark:after {
  font-family: "icomoon";
  display: block;
  font-size: 0.8125rem;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.dropzone .dz-preview .dz-error-mark span,
.dropzone .dz-preview .dz-error-mark svg,
.dropzone .dz-preview .dz-success-mark span,
.dropzone .dz-preview .dz-success-mark svg,
.dropzone-previews .dz-preview .dz-error-mark span,
.dropzone-previews .dz-preview .dz-error-mark svg,
.dropzone-previews .dz-preview .dz-success-mark span,
.dropzone-previews .dz-preview .dz-success-mark svg {
  display: none;
}

.dropzone .dz-preview .dz-error-mark,
.dropzone-previews .dz-preview .dz-error-mark {
  color: #F44336;
}

.dropzone .dz-preview .dz-error-mark:after,
.dropzone-previews .dz-preview .dz-error-mark:after {
  content: '\ed6a';
}

.dropzone .dz-preview .dz-success-mark,
.dropzone-previews .dz-preview .dz-success-mark {
  color: #4CAF50;
}

.dropzone .dz-preview .dz-success-mark:after,
.dropzone-previews .dz-preview .dz-success-mark:after {
  content: '\ed6e';
}

.dropzone .dz-preview.dz-error .dz-error-mark,
.dropzone .dz-preview.dz-success .dz-success-mark,
.dropzone-previews .dz-preview.dz-error .dz-error-mark,
.dropzone-previews .dz-preview.dz-success .dz-success-mark {
  display: block;
  opacity: 1;
}

.dropzone .dz-preview .dz-progress,
.dropzone-previews .dz-preview .dz-progress {
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  height: 0.25rem;
  display: none;
}

.dropzone .dz-preview .dz-progress .dz-upload,
.dropzone-previews .dz-preview .dz-progress .dz-upload {
  display: block;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  width: 0%;
  height: 100%;
  background-color: #4CAF50;
  transition: width ease-in-out 0.15s;
  border-bottom-right-radius: 0.125rem;
  border-bottom-left-radius: 0.125rem;
}

@media (prefers-reduced-motion: reduce) {
  .dropzone .dz-preview .dz-progress .dz-upload,
  .dropzone-previews .dz-preview .dz-progress .dz-upload {
    transition: none;
  }
}

.dropzone .dz-preview.dz-processing .dz-progress,
.dropzone-previews .dz-preview.dz-processing .dz-progress {
  display: block;
}

.dropzone .dz-preview.dz-success .dz-progress,
.dropzone-previews .dz-preview.dz-success .dz-progress {
  display: block;
  opacity: 0;
  transition: opacity ease-in-out 0.15s;
}

@media (prefers-reduced-motion: reduce) {
  .dropzone .dz-preview.dz-success .dz-progress,
  .dropzone-previews .dz-preview.dz-success .dz-progress {
    transition: none;
  }
}

.dropzone .dz-preview .dz-error-message,
.dropzone-previews .dz-preview .dz-error-message {
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  background-color: rgba(255, 255, 255, 0.9);
  margin: 0.5rem;
  padding: 0.5rem;
  color: #F44336;
  max-width: 100%;
  z-index: 5;
  opacity: 0;
  transition: opacity ease-in-out 0.15s;
}

@media (prefers-reduced-motion: reduce) {
  .dropzone .dz-preview .dz-error-message,
  .dropzone-previews .dz-preview .dz-error-message {
    transition: none;
  }
}

.dropzone .dz-preview.dz-error:hover .dz-error-message,
.dropzone-previews .dz-preview.dz-error:hover .dz-error-message {
  display: block;
  opacity: 1;
}

.dropzone .dz-preview.dz-error .dz-progress .dz-upload,
.dropzone-previews .dz-preview.dz-error .dz-progress .dz-upload {
  background: #F44336;
}

.dropzone .dz-preview.dz-image-preview:hover .dz-details img,
.dropzone-previews .dz-preview.dz-image-preview:hover .dz-details img {
  display: block;
  opacity: 0.1;
}

.dropzone .dz-preview .dz-image img,
.dropzone-previews .dz-preview .dz-image img {
  width: 100%;
}

.dropzone .dz-preview a.dz-remove,
.dropzone-previews .dz-preview a.dz-remove {
  background-color: #fafafa;
  border: 1px solid #ddd;
  display: block;
  padding: 0.3125rem 0.75rem;
  text-align: center;
  color: #333;
  margin-top: 0.625rem;
  cursor: pointer;
  border-radius: 0.1875rem;
  transition: all ease-in-out 0.15s;
}

@media (prefers-reduced-motion: reduce) {
  .dropzone .dz-preview a.dz-remove,
  .dropzone-previews .dz-preview a.dz-remove {
    transition: none;
  }
}

.dropzone .dz-preview a.dz-remove:hover,
.dropzone-previews .dz-preview a.dz-remove:hover {
  color: #333;
  background-color: #f5f5f5;
  border-color: #ddd;
}

/* ------------------------------------------------------------------------------
*
*  # Noty notifications
*
*  Styles for noty.min.js - A dependency-free notification library
*
* ---------------------------------------------------------------------------- */
.noty_bar {
  position: relative;
  -webkit-backface-visibility: hidden;
  transform: translate(0, 0) scale(1, 1);
  -webkit-font-smoothing: subpixel-antialiased;
  box-shadow: 0 0.25rem 0.5rem rgba(0, 0, 0, 0.1);
}

.noty_body {
  padding: 0.9375rem 1.25rem;
}

.noty_close_with_button .noty_body {
  padding-right: 2.5rem;
}

.noty_buttons {
  padding: 0.9375rem 1.25rem;
  padding-top: 0;
  text-align: right;
}

.noty_layout_mixin, #noty_layout__top, #noty_layout__topLeft, #noty_layout__topCenter, #noty_layout__topRight, #noty_layout__center, #noty_layout__centerLeft, #noty_layout__centerRight, #noty_layout__bottom, #noty_layout__bottomLeft, #noty_layout__bottomCenter, #noty_layout__bottomRight {
  position: fixed;
  margin: 0;
  padding: 0;
  z-index: 1050;
  transform: translateZ(0) scale(1, 1);
  -webkit-filter: blur(0);
          filter: blur(0);
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  -webkit-font-smoothing: subpixel-antialiased;
  max-width: 90%;
}

#noty_layout__top {
  top: 0;
  left: 5%;
  width: 90%;
}

#noty_layout__top .noty_bar:first-child {
  margin-top: 1.25rem;
}

#noty_layout__topLeft {
  top: 1.25rem;
  left: 1.25rem;
  width: 20rem;
}

#noty_layout__topCenter {
  top: 5%;
  left: 50%;
  width: 20rem;
  transform: translate(-50%) translateZ(0) scale(1, 1);
}

#noty_layout__topRight {
  top: 1.25rem;
  right: 1.25rem;
  width: 20rem;
}

#noty_layout__center {
  top: 50%;
  left: 50%;
  width: 20rem;
  transform: translate(-50%, -50%) translateZ(0) scale(1, 1);
}

#noty_layout__centerLeft {
  top: 50%;
  left: 1.25rem;
  width: 20rem;
  transform: translate(0, -50%) translateZ(0) scale(1, 1);
}

#noty_layout__centerRight {
  top: 50%;
  right: 1.25rem;
  width: 20rem;
  transform: translate(0, -50%) translateZ(0) scale(1, 1);
}

#noty_layout__bottom {
  bottom: 0;
  left: 5%;
  width: 90%;
}

#noty_layout__bottom .noty_bar:last-child {
  margin-bottom: 1.25rem;
}

#noty_layout__bottomLeft {
  bottom: 1.25rem;
  left: 1.25rem;
  width: 20rem;
}

#noty_layout__bottomCenter {
  bottom: 5%;
  left: 50%;
  width: 20rem;
  transform: translate(calc(-50% - 1px)) translateZ(0) scale(1, 1);
}

#noty_layout__bottomRight {
  bottom: 1.25rem;
  right: 1.25rem;
  width: 20rem;
}

.noty_progressbar {
  display: none;
}

.noty_has_timeout.noty_has_progressbar .noty_progressbar {
  display: block;
  position: absolute;
  left: 0;
  bottom: 0;
  height: 0.1875rem;
  width: 100%;
  background-color: rgba(0, 0, 0, 0.25);
}

.noty_effects_open {
  opacity: 0;
  transform: translate(50%);
  -webkit-animation: noty_anim_in 0.5s cubic-bezier(0.68, -0.55, 0.265, 1.55);
          animation: noty_anim_in 0.5s cubic-bezier(0.68, -0.55, 0.265, 1.55);
  -webkit-animation-fill-mode: forwards;
          animation-fill-mode: forwards;
}

.noty_effects_close {
  -webkit-animation: noty_anim_out 0.5s cubic-bezier(0.68, -0.55, 0.265, 1.55);
          animation: noty_anim_out 0.5s cubic-bezier(0.68, -0.55, 0.265, 1.55);
  -webkit-animation-fill-mode: forwards;
          animation-fill-mode: forwards;
}

.noty_fix_effects_height {
  -webkit-animation: noty_anim_height 75ms ease-out;
          animation: noty_anim_height 75ms ease-out;
}

.noty_close_with_click {
  cursor: pointer;
}

.noty_close_button {
  position: absolute;
  top: 0.9375rem;
  right: 1.25rem;
  background-color: transparent;
  font-size: 1.25003rem;
  font-weight: 400;
  color: inherit;
  text-align: center;
  line-height: 1;
  cursor: pointer;
  opacity: 0.75;
  transition: opacity ease-in-out 0.15s;
}

@media (prefers-reduced-motion: reduce) {
  .noty_close_button {
    transition: none;
  }
}

.noty_close_button:hover {
  opacity: 1;
}

.noty_modal {
  position: fixed;
  width: 100%;
  height: 100%;
  background-color: #000;
  z-index: 1040;
  opacity: 0.5;
  left: 0;
  top: 0;
}

.noty_modal.noty_modal_open {
  opacity: 0;
  -webkit-animation: noty_modal_in .3s ease-out;
          animation: noty_modal_in .3s ease-out;
}

.noty_modal.noty_modal_close {
  -webkit-animation: noty_modal_out .3s ease-out;
          animation: noty_modal_out .3s ease-out;
  -webkit-animation-fill-mode: forwards;
          animation-fill-mode: forwards;
}

@-webkit-keyframes noty_modal_in {
  100% {
    opacity: 0.5;
  }
}

@keyframes noty_modal_in {
  100% {
    opacity: 0.5;
  }
}

@-webkit-keyframes noty_modal_out {
  100% {
    opacity: 0;
  }
}

@keyframes noty_modal_out {
  100% {
    opacity: 0;
  }
}

@-webkit-keyframes noty_anim_in {
  100% {
    transform: translate(0);
    opacity: 1;
  }
}

@keyframes noty_anim_in {
  100% {
    transform: translate(0);
    opacity: 1;
  }
}

@-webkit-keyframes noty_anim_out {
  100% {
    transform: translate(50%);
    opacity: 0;
  }
}

@keyframes noty_anim_out {
  100% {
    transform: translate(50%);
    opacity: 0;
  }
}

@-webkit-keyframes noty_anim_height {
  100% {
    height: 0;
  }
}

@keyframes noty_anim_height {
  100% {
    height: 0;
  }
}

.noty_theme__limitless.noty_bar {
  margin: 0.25rem 0;
  position: relative;
  border: 1px solid transparent;
  border-radius: 0.1875rem;
}

.noty_theme__limitless.noty_type__alert {
  background-color: #546E7A;
  color: #fff;
  border-color: #546E7A;
}

.noty_theme__limitless.noty_type__warning {
  background-color: #FF7043;
  color: #fff;
  border-color: #FF7043;
}

.noty_theme__limitless.noty_type__error {
  background-color: #EF5350;
  color: #fff;
  border-color: #EF5350;
}

.noty_theme__limitless.noty_type__info {
  background-color: #03A9F4;
  color: #fff;
  border-color: #03A9F4;
}

.noty_theme__limitless.noty_type__success {
  background-color: #4CAF50;
  color: #fff;
  border-color: #4CAF50;
}

.noty_theme__limitless.noty_type__confirm {
  background-color: #fff;
  border-color: rgba(0, 0, 0, 0.2);
  box-shadow: 0 0.25rem 0.5rem rgba(0, 0, 0, 0.1);
}

.noty_theme__limitless.noty_type__confirm .noty_body {
  padding: 1.25rem;
}

.noty_theme__limitless.noty_type__confirm .noty_close_button {
  top: 1.25rem;
}

/* ------------------------------------------------------------------------------
*
*  # PNotify notifications
*
*  Styles for pnotify.min.js - a flexible JavaScript notification plugin
*
* ---------------------------------------------------------------------------- */
.ui-pnotify {
  top: 1.25rem;
  right: 1.25rem;
  position: absolute;
  height: auto;
  z-index: 2;
  border-radius: 0.1875rem;
  box-shadow: 0 0.25rem 0.5rem rgba(0, 0, 0, 0.1);
}

body > .ui-pnotify {
  position: fixed;
  z-index: 1070;
}

.ui-pnotify.alert-rounded > .ui-pnotify-container {
  border-radius: 100px;
}

.ui-pnotify[class*=bg-] > .ui-pnotify-container {
  background-color: inherit;
  border-color: transparent;
  color: #fff;
}

.ui-pnotify[class*=text-] > .ui-pnotify-container,
.ui-pnotify[class*=alpha-] > .ui-pnotify-container {
  background-color: inherit;
  border-color: inherit;
  color: inherit;
}

.ui-pnotify.stack-top-left, .ui-pnotify.stack-bottom-left {
  left: 1.25rem;
  right: auto;
}

.ui-pnotify.stack-bottom-right, .ui-pnotify.stack-bottom-left {
  bottom: 1.25rem;
  top: auto;
}

.ui-pnotify.stack-modal {
  left: 50%;
  right: auto;
  margin-left: -10rem;
}

.ui-pnotify.stack-custom-right {
  top: auto;
  left: auto;
  bottom: 15rem;
  right: 15rem;
}

.ui-pnotify.stack-custom-left {
  top: 15rem;
  left: 15rem;
  right: auto;
  bottom: auto;
}

.ui-pnotify.stack-custom-top {
  right: 0;
  left: 0;
  top: 0;
}

.ui-pnotify.stack-custom-bottom {
  right: 0;
  left: 0;
  bottom: 0;
  top: auto;
}

.ui-pnotify.ui-pnotify-in {
  display: block !important;
}

.ui-pnotify.ui-pnotify-move {
  transition: left .5s ease, top .5s ease, right .5s ease, bottom .5s ease;
}

.ui-pnotify.ui-pnotify-fade-slow {
  opacity: 0;
  transition: opacity linear 0.6s;
}

.ui-pnotify.ui-pnotify-fade-slow.ui-pnotify.ui-pnotify-move {
  transition: opacity .6s linear, left .5s ease, top .5s ease, right .5s ease, bottom .5s ease;
}

.ui-pnotify.ui-pnotify-fade-normal {
  opacity: 0;
  transition: opacity linear 0.4s;
}

.ui-pnotify.ui-pnotify-fade-normal.ui-pnotify.ui-pnotify-move {
  transition: opacity .4s linear, left .5s ease, top .5s ease, right .5s ease, bottom .5s ease;
}

.ui-pnotify.ui-pnotify-fade-fast {
  transition: opacity .2s linear;
  opacity: 0;
}

.ui-pnotify.ui-pnotify-fade-fast.ui-pnotify.ui-pnotify-move {
  transition: opacity .2s linear, left .5s ease, top .5s ease, right .5s ease, bottom .5s ease;
}

.ui-pnotify.ui-pnotify-fade-in {
  opacity: 1;
}

.ui-pnotify-container {
  padding: 0.9375rem 1.25rem;
  height: 100%;
  position: relative;
  left: 0;
  margin: 0;
  border-radius: 0.1875rem;
}

.ui-pnotify-container::after {
  display: block;
  clear: both;
  content: "";
}

.ui-pnotify-container.ui-pnotify-sharp {
  border-radius: 0;
}

.ui-pnotify-title {
  display: block;
  margin-top: 0;
  margin-bottom: 0.3125rem;
  font-size: 0.9375rem;
}

.ui-pnotify-text {
  display: block;
}

.ui-pnotify-icon {
  display: block;
  float: left;
  line-height: 1;
}

.ui-pnotify-icon > [class^=icon-] {
  margin-top: 0.25003rem;
  margin-right: 0.625rem;
}

.ui-pnotify-closer,
.ui-pnotify-sticker {
  float: right;
  margin-left: 0.625rem;
  margin-top: 0.25003rem;
  line-height: 1;
  outline: 0;
}

.ui-pnotify-modal-overlay {
  background-color: rgba(0, 0, 0, 0.5);
  top: 0;
  left: 0;
  position: absolute;
  z-index: 1;
  width: 100%;
  height: 100%;
}

body > .ui-pnotify-modal-overlay {
  position: fixed;
  z-index: 1040;
}

.brighttheme {
  border: 1px solid;
}

.ui-pnotify[class*=bg-] > .brighttheme {
  background-color: inherit;
  border-color: inherit;
  color: inherit;
}

.brighttheme-notice {
  background-color: #FFF3E0;
  border-color: #FF9800;
  color: #BF360C;
}

.brighttheme-info {
  background-color: #E1F5FE;
  border-color: #03A9F4;
  color: #01579B;
}

.brighttheme-success {
  background-color: #E8F5E9;
  border-color: #4CAF50;
  color: #1B5E20;
}

.brighttheme-error {
  background-color: #FFEBEE;
  border-color: #F44336;
  color: #B71C1C;
}

.brighttheme-icon-closer,
.brighttheme-icon-sticker {
  position: relative;
  display: inline-block;
  outline: 0;
  width: 0.75rem;
  height: 0.75rem;
}

.brighttheme-icon-closer:after,
.brighttheme-icon-sticker:after {
  content: '';
  font-family: "icomoon";
  font-size: 0.75rem;
  display: block;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.brighttheme-icon-closer:after {
  content: "\ed6a";
}

.brighttheme-icon-sticker:after {
  content: "\ee70";
}

.brighttheme-icon-sticker.brighttheme-icon-stuck:after {
  content: "\ee75";
}

.ui-pnotify[class*=alert-styled-] {
  border-width: 0;
  padding: 0;
}

.ui-pnotify.alert-styled-left .brighttheme {
  border-left-width: 2.875rem;
}

.ui-pnotify.alert-styled-left:after {
  left: 0;
}

.ui-pnotify.alert-styled-right .brighttheme {
  border-right-width: 2.875rem;
}

.ui-pnotify.alert-styled-right:after {
  right: 0;
}

.brighttheme .ui-pnotify-action-bar textarea,
.brighttheme .ui-pnotify-action-bar input {
  display: block;
  width: 100%;
  border: 1px solid #ddd;
  background-color: #fff;
  margin-bottom: 1.25rem !important;
  color: #333;
  padding: 0.4375rem 0.875rem;
  outline: 0;
}

.ui-pnotify[class*=bg-] .brighttheme .ui-pnotify-action-bar textarea, .ui-pnotify[class*=bg-]
.brighttheme .ui-pnotify-action-bar input {
  border-color: transparent;
  color: #fff;
}

.ui-pnotify[class*=bg-] .brighttheme .ui-pnotify-action-bar textarea::-webkit-input-placeholder, .ui-pnotify[class*=bg-]
.brighttheme .ui-pnotify-action-bar input::-webkit-input-placeholder {
  color: #fff;
  opacity: 1;
}

.ui-pnotify[class*=bg-] .brighttheme .ui-pnotify-action-bar textarea::-moz-placeholder, .ui-pnotify[class*=bg-]
.brighttheme .ui-pnotify-action-bar input::-moz-placeholder {
  color: #fff;
  opacity: 1;
}

.ui-pnotify[class*=bg-] .brighttheme .ui-pnotify-action-bar textarea:-ms-input-placeholder, .ui-pnotify[class*=bg-]
.brighttheme .ui-pnotify-action-bar input:-ms-input-placeholder {
  color: #fff;
  opacity: 1;
}

.ui-pnotify[class*=bg-] .brighttheme .ui-pnotify-action-bar textarea::-ms-input-placeholder, .ui-pnotify[class*=bg-]
.brighttheme .ui-pnotify-action-bar input::-ms-input-placeholder {
  color: #fff;
  opacity: 1;
}

.ui-pnotify[class*=bg-] .brighttheme .ui-pnotify-action-bar textarea::placeholder, .ui-pnotify[class*=bg-]
.brighttheme .ui-pnotify-action-bar input::placeholder {
  color: #fff;
  opacity: 1;
}

.ui-pnotify-history-container {
  position: absolute;
  top: 0;
  right: 1.25rem;
  border-top: none;
  padding: 0;
  z-index: 1070;
  border-top-left-radius: 0;
  border-top-right-radius: 0;
}

.ui-pnotify-history-container.ui-pnotify-history-fixed {
  position: fixed;
}

.ui-pnotify-history-container .ui-pnotify-history-header {
  text-align: center;
  margin-bottom: 0.3125rem;
}

.ui-pnotify-history-container button {
  cursor: pointer;
  display: block;
  width: 100%;
}

.ui-pnotify-history-container .ui-pnotify-history-pulldown {
  display: block;
  margin: 0 auto;
}

@media (max-width: 767.98px) {
  .ui-pnotify-mobile-able.ui-pnotify {
    position: fixed;
    top: 0;
    right: 0;
    left: 0;
    width: auto !important;
    font-smoothing: antialiased;
  }
  .ui-pnotify-mobile-able.ui-pnotify .ui-pnotify-shadow {
    border-bottom-width: 5px;
    box-shadow: none;
  }
  .ui-pnotify-mobile-able.ui-pnotify.stack-top-left, .ui-pnotify-mobile-able.ui-pnotify.stack-bottom-left {
    left: 0;
    right: 0;
  }
  .ui-pnotify-mobile-able.ui-pnotify.stack-bottom-right, .ui-pnotify-mobile-able.ui-pnotify.stack-bottom-left {
    left: 0;
    right: 0;
    bottom: 0;
    top: auto;
  }
  .ui-pnotify-mobile-able.ui-pnotify.stack-bottom-right .ui-pnotify-shadow,
  .ui-pnotify-mobile-able.ui-pnotify.stack-bottom-right .ui-pnotify-shadow, .ui-pnotify-mobile-able.ui-pnotify.stack-bottom-left .ui-pnotify-shadow,
  .ui-pnotify-mobile-able.ui-pnotify.stack-bottom-left .ui-pnotify-shadow {
    border-top-width: 5px;
    border-bottom-width: 1px;
  }
  .ui-pnotify-mobile-able.ui-pnotify.ui-pnotify-nonblock-fade {
    opacity: 0.2;
  }
  .ui-pnotify-mobile-able.ui-pnotify.ui-pnotify-nonblock-hide {
    display: none !important;
  }
  .ui-pnotify-mobile-able .ui-pnotify-container {
    border-radius: 0;
  }
}

/* ------------------------------------------------------------------------------
*
*  # jGrowl notifications
*
*  Styles for jgrowl.min.js - an unobtrusive notification system for web applications
*
* ---------------------------------------------------------------------------- */
.jGrowl {
  z-index: 1070;
  position: absolute;
}

body > .jGrowl {
  position: fixed;
}

.jGrowl.top-left {
  left: 1.25rem;
  top: 1.25rem;
}

.jGrowl.top-center {
  left: 50%;
  top: 1.25rem;
  margin-left: -10rem;
}

.jGrowl.top-right {
  right: 1.25rem;
  top: 1.25rem;
}

.jGrowl.center {
  top: 40%;
  width: 20rem;
  left: 50%;
  margin-left: -10rem;
  margin-top: -1.87502rem;
}

.jGrowl.center .jGrowl-notification,
.jGrowl.center .jGrowl-closer {
  margin-left: auto;
  margin-right: auto;
}

.jGrowl.bottom-left {
  left: 1.25rem;
  bottom: 1.25rem;
}

.jGrowl.bottom-center {
  left: 50%;
  bottom: 1.25rem;
  margin-left: -10rem;
}

.jGrowl.bottom-right {
  right: 1.25rem;
  bottom: 1.25rem;
}

@media print {
  .jGrowl {
    display: none;
  }
}

.jGrowl-notification {
  margin-bottom: 0.625rem;
  width: 20rem;
  text-align: left;
  display: none;
  box-shadow: 0 0.25rem 0.5rem rgba(0, 0, 0, 0.1);
}

.jGrowl-notification .jGrowl-header {
  font-size: 0.9375rem;
  margin-bottom: 0.3125rem;
}

.jGrowl-notification .jGrowl-header:empty {
  margin: 0;
}

.jGrowl-notification .jGrowl-close {
  font-weight: 400;
  background: none;
  border: 0;
  font-size: 1.25003rem;
  cursor: pointer;
  line-height: 1;
  padding: 0;
  float: right;
  color: inherit;
  outline: 0;
  margin-left: 0.625rem;
  opacity: 0.75;
  transition: opacity ease-in-out 0.15s;
}

@media (prefers-reduced-motion: reduce) {
  .jGrowl-notification .jGrowl-close {
    transition: none;
  }
}

.jGrowl-notification .jGrowl-close:hover {
  opacity: 1;
}

.jGrowl-closer {
  padding: 0.3125rem 0;
  cursor: pointer;
  margin-top: 0.3125rem;
  text-align: center;
  background-color: #fff;
  width: 20rem;
  border: 1px solid #ddd;
  border-radius: 0.1875rem;
}

/* ------------------------------------------------------------------------------
*
*  # Sweet Alerts component
*
*  Styles for sweet_alert.min.js - notification library
*
* ---------------------------------------------------------------------------- */
.swal2-shown:not(.swal2-no-backdrop) {
  overflow-y: hidden;
}

.swal2-shown.swal2-iosfix {
  position: fixed;
  left: 0;
  right: 0;
}

.swal2-shown.swal2-no-backdrop .swal2-shown {
  background-color: transparent;
  box-shadow: 0 0.25rem 0.5rem rgba(0, 0, 0, 0.1);
}

.swal2-container {
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: center;
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-color: transparent;
  z-index: 1070;
}

.swal2-container.swal2-top {
  align-items: flex-start;
}

.swal2-container.swal2-top .swal2-modal {
  margin-top: 1.25rem;
}

.swal2-container.swal2-top-left {
  align-items: flex-start;
  justify-content: flex-start;
}

.swal2-container.swal2-top-left .swal2-modal {
  margin-top: 1.25rem;
  margin-left: 1.25rem;
}

.swal2-container.swal2-top-right {
  align-items: flex-start;
  justify-content: flex-end;
}

.swal2-container.swal2-top-right .swal2-modal {
  margin-top: 1.25rem;
  margin-right: 1.25rem;
}

.swal2-container.swal2-center {
  align-items: center;
  margin: auto;
}

.swal2-container.swal2-center-left {
  align-items: center;
  justify-content: flex-start;
}

.swal2-container.swal2-center-left .swal2-modal {
  margin-left: 1.25rem;
}

.swal2-container.swal2-center-right {
  align-items: center;
  justify-content: flex-end;
}

.swal2-container.swal2-center-right .swal2-modal {
  margin-right: 1.25rem;
}

.swal2-container.swal2-bottom {
  align-items: flex-end;
}

.swal2-container.swal2-bottom .swal2-modal {
  margin-bottom: 1.25rem;
}

.swal2-container.swal2-bottom-left {
  align-items: flex-end;
  justify-content: flex-start;
}

.swal2-container.swal2-bottom-left .swal2-modal {
  margin-bottom: 1.25rem;
  margin-left: 1.25rem;
}

.swal2-container.swal2-bottom-right {
  align-items: flex-end;
  justify-content: flex-end;
}

.swal2-container.swal2-bottom-right .swal2-modal {
  margin-bottom: 1.25rem;
  margin-right: 1.25rem;
}

@media all and (-ms-high-contrast: none), (-ms-high-contrast: active) {
  .swal2-container .swal2-modal {
    margin: 0 !important;
  }
}

.swal2-container.swal2-fade {
  transition: background-color 0.15s;
}

@media (prefers-reduced-motion: reduce) {
  .swal2-container.swal2-fade {
    transition: none;
  }
}

body:not(.swal2-no-backdrop) .swal2-container.swal2-shown {
  background-color: rgba(0, 0, 0, 0.5);
}

.swal2-grow-fullscreen .swal2-modal {
  display: flex !important;
  flex: 1;
  align-self: stretch;
  justify-content: center;
  margin: 1.25rem 1.25rem;
}

.swal2-grow-row .swal2-modal {
  display: flex !important;
  flex: 1;
  align-content: center;
  justify-content: center;
  margin-left: 1.25rem;
  margin-right: 1.25rem;
}

.swal2-grow-column {
  flex: 1;
  flex-direction: column;
  align-items: center;
}

.swal2-grow-column.swal2-center-left {
  align-items: flex-start;
}

.swal2-grow-column.swal2-center-right {
  align-items: flex-end;
}

.swal2-grow-column .swal2-modal {
  display: flex !important;
  flex: 1;
  align-content: center;
  justify-content: center;
  margin-top: 1.25rem;
  margin-bottom: 1.25rem;
}

.swal2-popup {
  flex-direction: column;
  background-color: #fff;
  text-align: center;
  display: none;
  position: relative;
  max-width: 100%;
  padding: 1.25rem;
  width: 31.25rem;
  margin-left: 1.25rem;
  margin-right: 1.25rem;
  border-radius: 0.25rem;
  box-shadow: 0 0.25rem 0.5rem rgba(0, 0, 0, 0.1);
}

.swal2-popup:focus {
  outline: none;
}

.swal2-popup.swal2-loading {
  overflow-y: hidden;
}

@media (min-width: 576px) {
  .swal2-popup {
    margin-left: 0;
    margin-right: 0;
  }
}

.swal2-header {
  display: flex;
  flex-direction: column;
  align-items: center;
}

.swal2-title {
  font-size: 1.0625rem;
  font-weight: 500;
  line-height: 1.5385;
  text-align: center;
  position: relative;
  word-wrap: break-word;
  margin-top: 0.3125rem;
  margin-bottom: 0;
}

.swal2-content {
  text-align: center;
  position: relative;
  word-wrap: break-word;
}

.swal2-actions {
  align-items: center;
  justify-content: center;
  margin-top: 1.25rem;
}

.swal2-actions > button + button {
  margin-left: 0.625rem;
}

.swal2-actions:not(.swal2-loading) .swal2-styled[disabled] {
  cursor: no-drop;
  opacity: 0.4;
}

.swal2-loading .swal2-confirm:before {
  content: '\eb55';
  font-family: "icomoon";
  display: inline-block;
  font-size: 1rem;
  align-self: center;
  vertical-align: middle;
  position: relative;
  line-height: 1;
  margin-right: 0.625rem;
  -webkit-animation: rotation 1s linear infinite;
          animation: rotation 1s linear infinite;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.swal2-close {
  background: transparent;
  border: 0;
  margin: 0;
  padding: 0;
  font-size: 1.5rem;
  line-height: 1;
  position: absolute;
  top: 1rem;
  right: 1rem;
  cursor: pointer;
  opacity: .5;
  width: 1.5rem;
  height: 1.5rem;
  transition: opacity ease-in-out 0.15s;
}

@media (prefers-reduced-motion: reduce) {
  .swal2-close {
    transition: none;
  }
}

.swal2-close:hover, .swal2-close:focus {
  opacity: 1;
  outline: 0;
}

.swal2-input,
.swal2-file,
.swal2-textarea,
.swal2-select,
.swal2-radio,
.swal2-checkbox {
  display: none;
  margin: 1.25rem auto 0 auto;
}

.swal2-popup .select2-container,
.swal2-popup .btn-group,
.swal2-popup .uniform-uploader {
  margin: 1.25rem auto 0 auto;
}

.swal2-checkbox {
  align-items: center;
  justify-content: center;
}

.swal2-checkbox > span:not(.switchery) {
  margin-left: 0.625rem;
}

.swal2-radio {
  justify-content: center;
}

.swal2-radio label {
  display: inline-flex;
  align-items: center;
}

.swal2-radio label + label {
  margin-left: 1.25rem;
}

.swal2-radio label input,
.swal2-radio label .uniform-choice {
  margin-right: 0.625rem;
}

.swal2-range {
  margin-top: 1.25rem;
  justify-content: center;
  flex-wrap: wrap;
}

.swal2-range input {
  display: block;
  width: 100%;
}

.swal2-range output {
  font-size: 0.9375rem;
  font-weight: 500;
  margin-top: 0.625rem;
}

.swal2-inputerror, .swal2-inputerror:hover, .swal2-inputerror:focus {
  border-color: #F44336;
}

.swal2-validationerror {
  background-color: #f5f5f5;
  overflow: hidden;
  padding: 0.4375rem 0.875rem;
  display: none;
  margin-top: 1.25rem;
  margin-left: 0 !important;
  margin-right: 0 !important;
  border-radius: 0.1875rem;
}

.swal2-validationerror:before {
  content: '\ed68';
  font-family: "icomoon";
  display: inline-block;
  font-size: 1rem;
  vertical-align: middle;
  align-self: center;
  line-height: 1;
  margin-right: 0.625rem;
  color: #F44336;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.swal2-image {
  margin: 0.625rem auto;
  max-width: 100%;
  height: auto;
}

.swal2-icon {
  border: 0.25rem solid transparent;
  margin: 0.625rem auto 1.25rem auto;
  padding: 0;
  position: relative;
  box-sizing: content-box;
  cursor: default;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
  width: 5rem;
  height: 5rem;
  border-radius: 50%;
}

.swal2-icon.swal2-success {
  border-color: #66BB6A;
}

.swal2-icon.swal2-success [class^='swal2-success-line'][class$='tip'] {
  height: 2.5rem;
  width: 1.25rem;
  /*rtl:ignore*/
  border-right: 0.25rem solid #66BB6A;
  border-top: 0.25rem solid #66BB6A;
  position: absolute;
  /*rtl:ignore*/
  left: 1.25rem;
  top: 2.625rem;
  opacity: 1;
  -webkit-animation: animate-checkmark ease 0.75s;
          animation: animate-checkmark ease 0.75s;
  /*rtl:begin:ignore*/
  transform: scaleX(-1) rotate(135deg);
  transform-origin: left top;
  /*rtl:end:ignore*/
}

.swal2-icon.swal2-error {
  border-color: #EF5350;
}

.swal2-icon.swal2-error .swal2-x-mark {
  position: relative;
  display: block;
  flex: 1;
}

.swal2-icon.swal2-error [class^='swal2-x-mark-line'] {
  position: absolute;
  height: 0.25rem;
  width: 3rem;
  background-color: #EF5350;
  display: block;
  top: 2.375rem;
}

.swal2-icon.swal2-error [class^='swal2-x-mark-line'][class$='left'] {
  transform: rotate(45deg);
  left: 1rem;
}

.swal2-icon.swal2-error [class^='swal2-x-mark-line'][class$='right'] {
  transform: rotate(-45deg);
  right: 1rem;
}

.swal2-icon.swal2-warning {
  color: #FF7043;
  border-color: #FF7043;
  font-size: 4rem;
  line-height: 5rem;
  justify-content: center;
}

.swal2-icon.swal2-info {
  color: #03A9F4;
  border-color: #03A9F4;
  font-size: 4rem;
  line-height: 5rem;
  justify-content: center;
}

.swal2-icon.swal2-question {
  color: #455A64;
  border-color: #455A64;
  font-size: 4rem;
  line-height: calc(5rem + 0.25rem);
  justify-content: center;
}

.swal2-progresssteps {
  font-weight: 500;
  margin: 0 0 1.25rem;
  padding: 0;
}

.swal2-progresssteps li {
  display: inline-block;
  position: relative;
}

.swal2-progresscircle {
  color: #2196F3;
  text-align: center;
  margin-left: 0.625rem;
  margin-right: 0.625rem;
}

.swal2-progresscircle.swal2-activeprogressstep {
  color: #2196F3;
}

.swal2-progresscircle.swal2-activeprogressstep ~ .swal2-progresscircle {
  color: #999;
}

.swal2-progresscircle.swal2-activeprogressstep ~ .swal2-progressline {
  background-color: #ddd;
}

.swal2-progressline {
  background-color: #2196F3;
  height: 0.0625rem;
  vertical-align: middle;
}

[class^='swal2'] {
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
}

.swal2-show {
  -webkit-animation: show-notification 0.15s;
          animation: show-notification 0.15s;
}

.swal2-show.swal2-noanimation {
  -webkit-animation: none;
          animation: none;
}

.swal2-hide {
  -webkit-animation: hide-notification 0.15s forwards;
          animation: hide-notification 0.15s forwards;
}

.swal2-hide.swal2-noanimation {
  -webkit-animation: none;
          animation: none;
}

.swal2-animate-success-icon,
.swal2-animate-error-icon,
.swal2-warning,
.swal2-info,
.swal2-question {
  -webkit-animation: animate-circle 0.5s;
          animation: animate-circle 0.5s;
}

.swal2-animate-x-mark {
  -webkit-animation: animate-x-mark 0.5s;
          animation: animate-x-mark 0.5s;
}

@-webkit-keyframes show-notification {
  0% {
    transform: scale(0.5);
  }
  100% {
    transform: scale(1);
  }
}

@keyframes show-notification {
  0% {
    transform: scale(0.5);
  }
  100% {
    transform: scale(1);
  }
}

@-webkit-keyframes hide-notification {
  0% {
    transform: scale(1);
    opacity: 1;
  }
  100% {
    transform: scale(0.5);
    opacity: 0;
  }
}

@keyframes hide-notification {
  0% {
    transform: scale(1);
    opacity: 1;
  }
  100% {
    transform: scale(0.5);
    opacity: 0;
  }
}

@-webkit-keyframes animate-checkmark {
  0% {
    height: 0;
    width: 0;
    opacity: 0;
  }
  30% {
    height: 0;
    width: 1.25rem;
    opacity: 0;
  }
  60% {
    height: 2.5rem;
    width: 1.25rem;
    opacity: 1;
  }
  100% {
    height: 2.5rem;
    width: 1.25rem;
    opacity: 1;
  }
}

@keyframes animate-checkmark {
  0% {
    height: 0;
    width: 0;
    opacity: 0;
  }
  30% {
    height: 0;
    width: 1.25rem;
    opacity: 0;
  }
  60% {
    height: 2.5rem;
    width: 1.25rem;
    opacity: 1;
  }
  100% {
    height: 2.5rem;
    width: 1.25rem;
    opacity: 1;
  }
}

@-webkit-keyframes animate-circle {
  0% {
    color: transparent;
    border-color: transparent;
  }
  25% {
    color: transparent;
  }
}

@keyframes animate-circle {
  0% {
    color: transparent;
    border-color: transparent;
  }
  25% {
    color: transparent;
  }
}

@-webkit-keyframes animate-x-mark {
  0% {
    opacity: 0;
  }
  25% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}

@keyframes animate-x-mark {
  0% {
    opacity: 0;
  }
  25% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}

/* ------------------------------------------------------------------------------
 *
 *  # jQuery UI slider pips
 *
 *  Styles for jQuery UI slider pips extension
 *
 * ---------------------------------------------------------------------------- */
.ui-slider-pips.ui-slider-horizontal {
  margin-bottom: 2.0625rem;
  margin-left: 0.625rem;
  margin-right: 0.625rem;
}

.ui-slider-pips .ui-slider-label,
.ui-slider-pips .ui-slider-pip-hide {
  display: none;
}

.ui-slider-pips .ui-slider-pip-label .ui-slider-label {
  display: block;
}

.ui-slider-pips .ui-slider-pip {
  height: 0.6875rem;
  line-height: 1;
  font-size: 0.6875rem;
  width: 1.25rem;
  margin-left: -0.6875rem;
  position: absolute;
  overflow: visible;
  text-align: center;
  top: 1rem;
  left: 1rem;
  cursor: pointer;
  -webkit-touch-callout: none;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
}

.ui-slider-pips .ui-slider-line {
  background-color: #777;
  width: 0.0625rem;
  height: 0.1875rem;
  position: absolute;
  left: 50%;
}

.ui-slider-pips .ui-slider-label {
  position: absolute;
  top: 0.66667rem;
  left: 50%;
  width: 1.25rem;
  margin-left: -0.625rem;
  white-space: nowrap;
  color: #777;
}

.ui-slider-pips.ui-slider-vertical {
  margin-left: 1.75rem;
  margin-right: 1.75rem;
}

.ui-slider-pips.ui-slider-vertical .ui-slider-pip {
  text-align: left;
  top: auto;
  left: 1rem;
  margin-left: 0;
  height: auto;
}

.ui-slider-pips.ui-slider-vertical .ui-slider-line {
  width: 0.1875rem;
  height: 0.0625rem;
  position: absolute;
  top: 50%;
  left: 0;
}

.ui-slider-pips.ui-slider-vertical .ui-slider-label {
  top: 50%;
  margin-left: 0;
  margin-top: -0.34375rem;
  left: 0.66667rem;
}

.ui-slider-float .ui-slider-handle:focus,
.ui-slider-float .ui-slider-handle:focus .ui-slider-tip,
.ui-slider-float .ui-slider-handle:focus .ui-slider-tip-label {
  outline: 0;
}

.ui-slider-float .ui-slider-tip,
.ui-slider-float .ui-slider-tip-label {
  position: absolute;
  visibility: hidden;
  top: -3rem;
  display: block;
  left: 50%;
  background-color: #000;
  text-align: center;
  font-size: 0.8125rem;
  color: #fff;
  padding: 0.5rem 0.75rem;
  opacity: 0;
  transform: translateX(-50%);
  border-radius: 0.1875rem;
  transition: all ease-in-out 0.15s 0.15s;
}

@media (prefers-reduced-motion: reduce) {
  .ui-slider-float .ui-slider-tip,
  .ui-slider-float .ui-slider-tip-label {
    transition: none;
  }
}

.ui-slider-float .ui-slider-handle:hover .ui-slider-tip,
.ui-slider-float .ui-slider-handle:focus .ui-slider-tip {
  visibility: visible;
  opacity: 1;
  transition-delay: 0.15s;
}

.ui-slider-float .ui-slider-tip:after,
.ui-slider-float .ui-slider-pip .ui-slider-tip-label:after {
  content: '';
  border: 0.25rem solid transparent;
  border-top-color: #000;
  position: absolute;
  bottom: -0.5rem;
  left: 50%;
  margin-left: -0.25rem;
  width: 0;
  height: 0;
}

/* ------------------------------------------------------------------------------
 *
 *  # NoUI slider
 *
 *  Styles for nouislider.min.js - range slider plugin
 *
 * ---------------------------------------------------------------------------- */
.noUi-target {
  position: relative;
  background-color: #eee;
  border-radius: 100px;
  box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.1);
}

.noUi-target,
.noUi-target * {
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
}

.noUi-base,
.noUi-connects {
  position: relative;
  z-index: 1;
  width: 100%;
  height: 100%;
}

.noUi-connects {
  overflow: hidden;
  z-index: 0;
  border-radius: 100px;
}

.noUi-connect,
.noUi-origin {
  will-change: transform;
  position: absolute;
  z-index: 1;
  top: 0;
  /*rtl:begin:ignore*/
  left: 0;
  transform-origin: 0 0;
  /*rtl:end:ignore*/
  width: 100%;
  height: 100%;
}

.noUi-state-drag * {
  cursor: inherit !important;
}

.noUi-connect {
  background-color: #607D8B;
}

[disabled] .noUi-target {
  opacity: 0.75;
}

[disabled] .noUi-handle {
  cursor: default;
}

.noUi-horizontal {
  height: 0.375rem;
}

.noUi-horizontal .noUi-handle {
  top: -0.375rem;
  right: -0.5625rem;
}

.noUi-horizontal .noUi-origin {
  height: 0;
  left: auto;
  right: 0;
}

.noUi-horizontal.has-pips {
  margin-bottom: 2.25003rem;
}

.noUi-vertical {
  display: inline-block;
  width: 0.375rem;
  height: 10rem;
}

.noUi-vertical + .noUi-vertical {
  margin-left: 1.875rem;
}

.noUi-vertical .noUi-handle {
  top: -0.5625rem;
  /*rtl:ignore*/
  left: -0.375rem;
}

.noUi-vertical .noUi-origin {
  width: 0;
}

.noUi-vertical.has-pips {
  margin-right: 2.25003rem;
}

.noUi-draggable {
  cursor: w-resize;
}

.noUi-vertical .noUi-draggable {
  cursor: n-resize;
}

.noUi-handle {
  background-color: #fff;
  cursor: pointer;
  top: -0.375rem;
  position: absolute;
  z-index: 1;
  border: 1px solid #ccc;
  outline: 0;
  width: 1.125rem;
  height: 1.125rem;
  border-radius: 50%;
}

.noUi-handle, .noUi-handle:after {
  transition: all ease-in-out 0.15s;
}

@media (prefers-reduced-motion: reduce) {
  .noUi-handle, .noUi-handle:after {
    transition: none;
  }
}

.noUi-stacking .noUi-handle {
  z-index: 10;
}

.noUi-handle:after {
  content: '';
  display: inline-block;
  position: absolute;
  top: 50%;
  left: 50%;
  margin-top: -0.1875rem;
  margin-left: -0.1875rem;
  background-color: #333;
  width: 0.375rem;
  height: 0.375rem;
  border-radius: 50%;
}

.noUi-handle:hover, .noUi-handle:focus {
  background-color: #fafafa;
}

.noUi-handle:hover:after, .noUi-handle:focus:after {
  background-color: #555;
}

.noui-slider-white .noUi-handle:after {
  content: none;
}

.noUi-state-tap .noUi-connect,
.noUi-state-tap .noUi-origin {
  transition: transform 0.15s;
}

@media (prefers-reduced-motion: reduce) {
  .noUi-state-tap .noUi-connect,
  .noUi-state-tap .noUi-origin {
    transition: none;
  }
}

.noui-slider-lg .noUi-handle {
  top: -0.5rem;
  width: 1.5rem;
  height: 1.5rem;
}

.noui-slider-lg .noUi-handle:after {
  margin-top: -0.25rem;
  margin-left: -0.25rem;
  width: 0.5rem;
  height: 0.5rem;
}

.noui-slider-lg.noUi-horizontal {
  height: 0.5rem;
}

.noui-slider-lg.noUi-horizontal .noUi-handle {
  right: -0.75rem;
}

.noui-slider-lg.noUi-vertical {
  width: 0.5rem;
}

.noui-slider-lg.noUi-vertical .noUi-handle {
  top: -0.75rem;
  right: -0.5rem;
}

.noui-slider-sm .noUi-handle {
  top: -0.25rem;
  width: 0.75rem;
  height: 0.75rem;
}

.noui-slider-sm .noUi-handle:after {
  margin-top: -0.125rem;
  margin-left: -0.125rem;
  width: 0.25rem;
  height: 0.25rem;
}

.noui-slider-sm.noUi-horizontal {
  height: 0.25rem;
}

.noui-slider-sm.noUi-horizontal .noUi-handle {
  top: -0.25rem;
  right: -0.375rem;
}

.noui-slider-sm.noUi-vertical {
  width: 0.25rem;
}

.noui-slider-sm.noUi-vertical .noUi-handle {
  top: -0.375rem;
  right: -0.25rem;
}

.noui-slider-solid .noUi-handle:after {
  background-color: #fff;
}

.noui-slider-solid .noUi-handle:hover:after, .noui-slider-solid .noUi-handle:focus:after {
  opacity: 0.75;
}

.noui-slider-solid.noui-slider-primary .noUi-handle {
  background-color: #2196F3;
  border-color: #2196F3;
}

.noui-slider-solid.noui-slider-danger .noUi-handle {
  background-color: #F44336;
  border-color: #F44336;
}

.noui-slider-solid.noui-slider-success .noUi-handle {
  background-color: #4CAF50;
  border-color: #4CAF50;
}

.noui-slider-solid.noui-slider-warning .noUi-handle {
  background-color: #FF7043;
  border-color: #FF7043;
}

.noui-slider-solid.noui-slider-info .noUi-handle {
  background-color: #00BCD4;
  border-color: #00BCD4;
}

.noui-slider-primary .noUi-connect {
  background-color: #2196F3;
}

.noui-slider-danger .noUi-connect {
  background-color: #F44336;
}

.noui-slider-success .noUi-connect {
  background-color: #4CAF50;
}

.noui-slider-warning .noUi-connect {
  background-color: #FF7043;
}

.noui-slider-info .noUi-connect {
  background-color: #00BCD4;
}

.noUi-tooltip {
  position: absolute;
  background-color: #000;
  color: #fff;
  padding: 0.5rem 0.75rem;
  bottom: 0.25rem;
  left: 50%;
  transform: translate3d(-50%, -50%, 0);
  opacity: 0;
  visibility: hidden;
  border-radius: 0.1875rem;
  transition: all ease-in-out 0.15s;
}

@media (prefers-reduced-motion: reduce) {
  .noUi-tooltip {
    transition: none;
  }
}

.noUi-tooltip:after {
  content: '';
  border: 0.25rem solid transparent;
  border-top-color: #000;
  position: absolute;
  left: 50%;
  bottom: -0.5rem;
  transform: translate3d(-50%, 0, 0);
  width: 0;
  height: 0;
}

.noUi-handle:hover .noUi-tooltip {
  opacity: 1;
  visibility: visible;
}

.noUi-pips {
  position: absolute;
  color: #777;
}

.noUi-value {
  width: 2.5rem;
  position: absolute;
  text-align: center;
  font-size: 0.6875rem;
  line-height: 1.82;
}

.noUi-value-sub {
  color: #aaaaaa;
}

.noUi-marker {
  position: absolute;
  background-color: #777;
}

.noUi-pips-horizontal {
  padding-top: 0.66667rem;
  height: 2.25003rem;
  top: 100%;
  left: 0;
  width: 100%;
}

.noUi-value-horizontal {
  margin-left: -1.25rem;
  padding-top: 1rem;
}

.noUi-value-horizontal.noUi-value-sub {
  padding-top: 0.66667rem;
}

.noUi-marker-horizontal.noUi-marker {
  width: 0.0625rem;
  height: 0.1875rem;
}

.noUi-marker-horizontal.noUi-marker-sub {
  height: 0.375rem;
}

.noUi-marker-horizontal.noUi-marker-large {
  height: 0.5625rem;
}

.noUi-pips-vertical {
  padding-left: 0.66667rem;
  height: 100%;
  top: 0;
  left: 100%;
}

.noUi-value-vertical {
  margin-top: -0.62502rem;
  padding-left: 0.5rem;
}

.noUi-rtl .noUi-value-vertical {
  margin-top: 0;
  margin-bottom: -0.62502rem;
}

.noUi-marker-vertical.noUi-marker {
  width: 0.1875rem;
  height: 0.0625rem;
}

.noUi-marker-vertical.noUi-marker-sub {
  width: 0.375rem;
}

.noUi-marker-vertical.noUi-marker-large {
  width: 0.5625rem;
}

/* ------------------------------------------------------------------------------
*
*  # ION Range Slider
*
*  Styles for ion_rangeslider.min.js - range slider plugin
*
* ---------------------------------------------------------------------------- */
.irs {
  position: relative;
  display: block;
  height: 3.4375rem;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
  /*rtl:ignore*/
  direction: ltr;
}

.irs-hidden-input {
  position: absolute !important;
  display: block !important;
  top: 0 !important;
  left: 0 !important;
  width: 0 !important;
  height: 0 !important;
  font-size: 0 !important;
  line-height: 0 !important;
  padding: 0 !important;
  margin: 0 !important;
  outline: none !important;
  z-index: -9999 !important;
  background: none !important;
  border-style: solid !important;
  border-color: transparent !important;
}

.irs-line {
  position: relative;
  display: block;
  overflow: hidden;
  outline: none;
  height: 0.375rem;
  top: 2.6875rem;
  background-color: #eee;
  border-radius: 100px;
}

.irs-line-left,
.irs-line-mid,
.irs-line-right {
  position: absolute;
  display: block;
  top: 0;
}

.irs-line-left {
  /*rtl:ignore*/
  left: 0;
  width: 11%;
}

.irs-line-mid {
  /*rtl:ignore*/
  left: 9%;
  width: 82%;
}

.irs-line-right {
  /*rtl:ignore*/
  right: 0;
  width: 11%;
}

.irs-bar {
  position: absolute;
  display: block;
  top: 2.6875rem;
  /*rtl:ignore*/
  left: 0;
  width: 0;
  height: 0.375rem;
  background-color: #607D8B;
  border-radius: 100px;
}

.irs-bar-edge {
  position: absolute;
  display: block;
  top: 2.6875rem;
  /*rtl:ignore*/
  left: 0;
  height: 0.75rem;
  width: 0.5625rem;
}

.irs-shadow {
  position: absolute;
  display: none;
  top: 2.6875rem;
  /*rtl:ignore*/
  left: 0;
  width: 0;
  height: 0.375rem;
  background-color: #333;
  opacity: 0.25;
  border-radius: 100px;
}

.irs-slider {
  position: absolute;
  display: block;
  background-color: #fff;
  border: 1px solid #ccc;
  cursor: pointer;
  top: 2.3125rem;
  cursor: pointer;
  z-index: 1;
  width: 1.125rem;
  height: 1.125rem;
  border-radius: 100px;
}

.irs-slider:after {
  content: '';
  display: inline-block;
  position: absolute;
  top: 50%;
  left: 50%;
  margin-top: -0.1875rem;
  margin-left: -0.1875rem;
  background-color: #333;
  width: 0.375rem;
  height: 0.375rem;
  border-radius: 100px;
}

.irs-slider, .irs-slider:after {
  transition: background-color ease-in-out 0.15s;
}

@media (prefers-reduced-motion: reduce) {
  .irs-slider, .irs-slider:after {
    transition: none;
  }
}

.irs-slider:hover, .irs-slider:focus {
  background-color: #fafafa;
}

.irs-slider:hover:after, .irs-slider:focus:after {
  background-color: #555;
}

.irs-slider.type_last {
  z-index: 2;
}

.irs-min,
.irs-max,
.irs-from,
.irs-to,
.irs-single {
  position: absolute;
  display: block;
  cursor: default;
}

.irs-min,
.irs-max {
  color: #777;
  font-size: 0.6875rem;
  line-height: 1;
  top: 0;
  padding: 0.5rem;
  background-color: #eee;
  border-radius: 0.1875rem;
}

.irs-min {
  /*rtl:ignore*/
  left: 0;
}

.irs-max {
  /*rtl:ignore*/
  right: 0;
}

.irs-from,
.irs-to,
.irs-single {
  top: 0;
  /*rtl:ignore*/
  left: 0;
  white-space: nowrap;
  color: #fff;
  font-size: 0.6875rem;
  line-height: 1;
  padding: 0.5rem;
  top: 0;
  background-color: #000;
  border-radius: 0.1875rem;
}

.irs-from:after,
.irs-to:after,
.irs-single:after {
  content: "";
  position: absolute;
  display: block;
  bottom: -0.5rem;
  left: 50%;
  margin-left: -0.25rem;
  overflow: hidden;
  border: 0.25rem solid transparent;
  border-top-color: #000;
  width: 0;
  height: 0;
}

.irs-grid {
  position: absolute;
  display: none;
  bottom: 0;
  /*rtl:ignore*/
  left: 0;
  width: 100%;
  height: 1.6875rem;
}

.irs-with-grid {
  height: 5.5625rem;
}

.irs-with-grid .irs-grid {
  display: block;
}

.irs-grid-pol {
  position: absolute;
  top: 0;
  /*rtl:ignore*/
  left: 0;
  width: 0.0625rem;
  height: 0.375rem;
  background-color: #777;
}

.irs-grid-pol.small {
  height: 0.1875rem;
}

.irs-grid-text {
  position: absolute;
  bottom: 0;
  /*rtl:ignore*/
  left: 0;
  white-space: nowrap;
  text-align: center;
  font-size: 0.6875rem;
  color: #777;
  line-height: 1;
  padding: 0 0.1875rem;
}

.irs-disable-mask {
  position: absolute;
  display: block;
  top: 0;
  /*rtl:ignore*/
  left: -1%;
  width: 102%;
  height: 100%;
  cursor: default;
  background: transparent;
  z-index: 2;
}

.irs-disabled {
  opacity: 0.75;
}

/* ------------------------------------------------------------------------------
 *
 *  # jQuery UI Interactions
 *
 *  Separate styles for jQuery UI library. Component's interactions
 *
 * ---------------------------------------------------------------------------- */
.ui-draggable-handle,
.ui-sortable-handle {
  touch-action: none;
}

.ui-sortable .ui-state-disabled {
  color: #999;
  cursor: default;
  opacity: 0.75;
}

.sortable-placeholder {
  position: relative;
}

.sortable-placeholder:before {
  content: '';
  display: inline-block;
  background-color: rgba(255, 255, 255, 0.8);
  position: absolute;
  left: 0;
  top: 0;
  border: 1px dashed rgba(0, 0, 0, 0.2);
  width: 100%;
  height: 100%;
}

.card + .sortable-placeholder {
  margin-bottom: 1.25rem;
}

.sidebar .card + .sortable-placeholder {
  margin-bottom: 0;
}

.sortable-placeholder + .card {
  margin-top: 1.25rem;
}

.sidebar .sortable-placeholder + .card {
  margin-top: 0;
}

.card-group > .sortable-placeholder:before {
  border-radius: 0.1875rem;
}

.sidebar .sortable-placeholder:before {
  border-left: 0;
  border-right: 0;
}

.sidebar-dark .sortable-placeholder:before {
  background-color: rgba(0, 0, 0, 0.5);
}

.sidebar-dark .card:not([class*=bg-]):not(.fixed-top).ui-sortable-helper {
  background-color: rgba(0, 0, 0, 0.5);
}

.sidebar-light .sortable-placeholder:before {
  background-color: #fafafa;
}

.sidebar-light .card:not([class*=bg-]):not(.fixed-top).ui-sortable-helper {
  background-color: #fff;
}

.table .ui-sortable-helper {
  width: 100%;
  background-color: transparent;
  display: table;
}

.table .sortable-placeholder {
  margin: 0;
}

.table .sortable-placeholder:before {
  content: none;
}

.table.ui-sortable {
  position: relative;
}

.ui-resizable-handle {
  position: absolute;
  font-size: 0;
  display: block;
  touch-action: none;
}

.ui-resizable-handle.ui-icon {
  display: inline-block;
  border-style: solid;
  border-width: 0 0 0.375rem 0.375rem;
  border-color: transparent transparent #333 transparent;
}

.ui-resizable-disabled .ui-resizable-handle,
.ui-resizable-autohide .ui-resizable-handle {
  display: none;
}

.ui-resizable-n {
  cursor: n-resize;
  height: 0.4375rem;
  width: 100%;
  top: -0.3125rem;
  left: 0;
}

.ui-resizable-s {
  cursor: s-resize;
  height: 0.4375rem;
  width: 100%;
  bottom: -0.3125rem;
  left: 0;
}

.ui-resizable-e {
  cursor: e-resize;
  width: 0.4375rem;
  right: -0.3125rem;
  top: 0;
  height: 100%;
}

.ui-resizable-w {
  cursor: w-resize;
  width: 0.4375rem;
  left: -0.3125rem;
  top: 0;
  height: 100%;
}

.ui-resizable-se {
  cursor: se-resize;
  right: 0.0625rem;
  bottom: 0.0625rem;
}

.ui-resizable-sw {
  cursor: sw-resize;
  width: 0.5625rem;
  height: 0.5625rem;
  left: -0.3125rem;
  bottom: -0.3125rem;
}

.ui-resizable-nw {
  cursor: nw-resize;
  width: 0.5625rem;
  height: 0.5625rem;
  left: -0.3125rem;
  top: -0.3125rem;
}

.ui-resizable-ne {
  cursor: ne-resize;
  width: 0.5625rem;
  height: 0.5625rem;
  right: -0.3125rem;
  top: -0.3125rem;
}

.ui-selectable {
  touch-action: none;
}

.ui-selectable-helper {
  position: absolute;
  z-index: 100;
  border: 1px dashed #333;
}

/* ------------------------------------------------------------------------------
 *
 *  # jQuery UI Widgets
 *
 *  Styles for jQuery UI widgets
 *
 * ---------------------------------------------------------------------------- */
.ui-accordion .ui-accordion-header {
  display: block;
  cursor: pointer;
  margin: 0;
  outline: 0;
  position: relative;
  background-color: #fff;
  padding: 0.9375rem 1.25rem;
  border: 1px solid rgba(0, 0, 0, 0.125);
  margin-top: 0.5rem;
  border-radius: 0.1875rem;
}

.ui-accordion .ui-accordion-header:first-child {
  margin-top: 0;
}

.ui-accordion .ui-accordion-header.ui-accordion-header-active {
  border-bottom-right-radius: 0;
  border-bottom-left-radius: 0;
}

.ui-accordion .ui-accordion-header .ui-accordion-header-icon {
  position: absolute;
  top: 50%;
  right: 1.25rem;
  margin-top: -0.5rem;
}

.ui-accordion .ui-accordion-header .ui-accordion-header-icon:before {
  content: '\e9b8';
  font-family: "icomoon";
  display: block;
  width: 1rem;
  font-size: 1rem;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.ui-accordion .ui-accordion-header-active .ui-accordion-header-icon:before {
  content: '\e9b7';
}

.ui-accordion .ui-accordion-icons {
  padding-right: 3.5rem;
}

.ui-accordion .ui-accordion-content {
  padding: 1.25rem;
  background-color: #fff;
  border: 1px solid rgba(0, 0, 0, 0.125);
  border-top: 0;
  overflow: auto;
  border-bottom-right-radius: 0.1875rem;
  border-bottom-left-radius: 0.1875rem;
}

.accordion-sortable-group + .accordion-sortable-group {
  margin-top: 0.5rem;
}

.ui-autocomplete {
  position: absolute;
  display: none;
  padding: 0.5rem 0;
  z-index: 1000;
  max-height: 250px;
  overflow: auto;
}

.ui-autocomplete .ui-autocomplete-category {
  padding: 0.5rem 1rem;
  font-size: 0.75rem;
  line-height: 1.6667;
  text-transform: uppercase;
  font-weight: 700;
}

.ui-autocomplete .ui-autocomplete-category ~ .ui-menu-item .ui-menu-item-wrapper {
  padding-left: 2rem;
}

.ui-autocomplete-processing:after {
  content: '\eb51';
  font-family: "icomoon";
  display: inline-block;
  position: absolute;
  top: 50%;
  right: 0.875rem;
  width: 1rem;
  text-align: right;
  margin-top: -0.5rem;
  font-size: 1rem;
  line-height: 1;
  color: inherit;
  -webkit-animation: rotation 1s linear infinite;
          animation: rotation 1s linear infinite;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.input-group .ui-autocomplete-input + .input-group-append > .btn,
.input-group .ui-autocomplete-input + .input-group-append > .ui-button,
.input-group .ui-datepicker-buttonpane .ui-autocomplete-input + .input-group-append > button,
.ui-datepicker-buttonpane .input-group .ui-autocomplete-input + .input-group-append > button {
  border-left: 0;
  border-top-left-radius: 0;
  border-bottom-left-radius: 0;
}

.ui-button, .ui-datepicker-buttonpane button {
  position: relative;
  display: inline-block;
  font-weight: 400;
  text-align: center;
  white-space: nowrap;
  vertical-align: middle;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
  cursor: pointer;
  background-color: #fafafa;
  border: 1px solid #ddd;
  color: #333;
  padding: 0.4375rem 0.875rem;
  font-size: 0.8125rem;
  line-height: 1.5385;
  border-radius: 0.1875rem;
  transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
}

@media (prefers-reduced-motion: reduce) {
  .ui-button, .ui-datepicker-buttonpane button {
    transition: none;
  }
}

.ui-button:focus, .ui-datepicker-buttonpane button:focus {
  outline: 0;
}

.ui-button:not([class*=bg-]):hover, .ui-datepicker-buttonpane button:not([class*=bg-]):hover, .ui-button:not([class*=bg-]):focus, .ui-datepicker-buttonpane button:not([class*=bg-]):focus, .ui-button:not([class*=bg-]):active, .ui-datepicker-buttonpane button:not([class*=bg-]):active {
  color: #333;
  background-color: #f5f5f5;
  border-color: #ddd;
}

.ui-button.ui-state-disabled, .ui-datepicker-buttonpane button.ui-state-disabled {
  cursor: default;
  opacity: 0.65;
  box-shadow: none;
}

.ui-button[class*=bg-]:not(.bg-transparent):not(.bg-white):not(.bg-light):hover, .ui-datepicker-buttonpane button[class*=bg-]:not(.bg-transparent):not(.bg-white):not(.bg-light):hover, .ui-button[class*=bg-]:not(.bg-transparent):not(.bg-white):not(.bg-light):focus, .ui-datepicker-buttonpane button[class*=bg-]:not(.bg-transparent):not(.bg-white):not(.bg-light):focus {
  color: #fff;
  box-shadow: 0 0 0 62.5rem rgba(0, 0, 0, 0.075) inset;
}

.ui-button[class*=bg-]:not(.bg-transparent):not(.bg-white):not(.bg-light):active, .ui-datepicker-buttonpane button[class*=bg-]:not(.bg-transparent):not(.bg-white):not(.bg-light):active {
  box-shadow: 0 0 0 62.5rem rgba(0, 0, 0, 0.075) inset;
}

.ui-button.ui-button-link, .ui-datepicker-buttonpane button.ui-button-link {
  background-color: transparent;
  border-color: transparent;
}

.ui-button.ui-button-link:hover, .ui-datepicker-buttonpane button.ui-button-link:hover, .ui-button.ui-button-link:focus, .ui-datepicker-buttonpane button.ui-button-link:focus {
  color: #0a6ebd;
}

.ui-button.ui-button-link:hover, .ui-datepicker-buttonpane button.ui-button-link:hover, .ui-button.ui-button-link:focus, .ui-datepicker-buttonpane button.ui-button-link:focus, .ui-button.ui-button-link:active, .ui-datepicker-buttonpane button.ui-button-link:active {
  box-shadow: none;
}

.ui-button::-moz-focus-inner, .ui-datepicker-buttonpane button::-moz-focus-inner {
  border: 0;
  padding: 0;
}

.ui-button .ui-button-icon-space, .ui-datepicker-buttonpane button .ui-button-icon-space {
  display: inline-block;
  width: 0.625rem;
}

.ui-button-icon-only {
  text-indent: -9999px;
  padding-left: 1.06252rem;
  padding-right: 1.06252rem;
  overflow: hidden;
}

.ui-button-icon-only .ui-icon {
  position: absolute;
  left: 50%;
  top: 50%;
  text-indent: 0;
  transform: translate(-50%, -50%);
}

.ui-button-icon-only .ui-button-icon-space,
.ui-button-icon-only .ui-button-text {
  display: none;
}

.ui-controlgroup {
  display: inline-block;
  vertical-align: middle;
  position: relative;
}

.ui-controlgroup .ui-button, .ui-controlgroup .ui-datepicker-buttonpane button, .ui-datepicker-buttonpane .ui-controlgroup button {
  border-radius: 0;
  margin-left: -1px;
  float: left;
}

.ui-controlgroup .ui-button:first-child, .ui-controlgroup .ui-datepicker-buttonpane button:first-child, .ui-datepicker-buttonpane .ui-controlgroup button:first-child,
.ui-controlgroup .ui-helper-hidden-accessible:first-child + .ui-button,
.ui-controlgroup .ui-datepicker-buttonpane .ui-helper-hidden-accessible:first-child + button,
.ui-datepicker-buttonpane .ui-controlgroup .ui-helper-hidden-accessible:first-child + button {
  margin-left: 0;
}

.ui-controlgroup .ui-button:first-child, .ui-controlgroup .ui-datepicker-buttonpane button:first-child, .ui-datepicker-buttonpane .ui-controlgroup button:first-child,
.ui-controlgroup .ui-helper-hidden-accessible:first-child + .ui-button:not(:last-child),
.ui-controlgroup .ui-datepicker-buttonpane .ui-helper-hidden-accessible:first-child + button:not(:last-child),
.ui-datepicker-buttonpane .ui-controlgroup .ui-helper-hidden-accessible:first-child + button:not(:last-child) {
  border-top-left-radius: 0.1875rem;
  border-bottom-left-radius: 0.1875rem;
}

.ui-controlgroup .ui-button:last-of-type, .ui-controlgroup .ui-datepicker-buttonpane button:last-of-type, .ui-datepicker-buttonpane .ui-controlgroup button:last-of-type {
  border-top-right-radius: 0.1875rem;
  border-bottom-right-radius: 0.1875rem;
}

.ui-checkboxradio-label.ui-checkboxradio-checked {
  background-color: #f5f5f5;
  color: #333;
  border-color: #ddd;
}

.ui-checkboxradio-label.ui-checkboxradio-checked[class*=bg-]:not(.bg-white):not(.bg-light):not(.bg-transparent) {
  box-shadow: 0 0 0 62.5rem rgba(0, 0, 0, 0.125) inset;
}

.ui-checkboxradio-label.ui-checkboxradio-disabled {
  pointer-events: none;
}

.ui-datepicker {
  min-width: 270px;
  padding: 0.9375rem;
}

.ui-datepicker:not(.ui-datepicker-inline) {
  display: none;
  background-color: #fff;
  border: 1px solid rgba(0, 0, 0, 0.15);
  z-index: 1070 !important;
  border-radius: 0.1875rem;
  box-shadow: 0 0.25rem 0.5rem rgba(0, 0, 0, 0.1);
}

.sidebar .ui-datepicker {
  min-width: 0;
}

.ui-datepicker a {
  transition: all ease-in-out 0.15s;
}

@media (prefers-reduced-motion: reduce) {
  .ui-datepicker a {
    transition: none;
  }
}

.ui-datepicker .ui-datepicker-header {
  position: relative;
}

.ui-datepicker .ui-datepicker-title {
  display: flex;
  justify-content: center;
  align-items: center;
  padding-top: 0.46875rem;
  padding-bottom: 0.46875rem;
  font-size: 0.9375rem;
  margin-left: 2.8125rem;
  margin-right: 2.8125rem;
}

.ui-datepicker .ui-datepicker-title .ui-datepicker-month {
  font-weight: 500;
}

.ui-datepicker .ui-datepicker-title .ui-datepicker-year {
  font-size: 85%;
  color: #999;
  margin-left: 0.46875rem;
}

.ui-datepicker .ui-datepicker-title select {
  outline: 0;
  height: 2.00002rem;
  border-color: #ddd;
  flex: 1;
}

.ui-datepicker .ui-datepicker-title select.ui-datepicker-month, .ui-datepicker .ui-datepicker-title select.ui-datepicker-year {
  font-size: 0.8125rem;
  font-weight: 400;
  color: #333;
}

.ui-datepicker .ui-datepicker-prev,
.ui-datepicker .ui-datepicker-next {
  position: absolute;
  top: 50%;
  margin-top: -0.9375rem;
  line-height: 1;
  color: #333;
  padding: 0.4375rem;
  cursor: pointer;
  border-radius: 0.1875rem;
}

.ui-datepicker .ui-datepicker-prev:after,
.ui-datepicker .ui-datepicker-next:after {
  font-family: "icomoon";
  display: block;
  font-size: 1rem;
  width: 1rem;
  text-align: center;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.ui-datepicker .ui-datepicker-prev span,
.ui-datepicker .ui-datepicker-next span {
  display: none;
}

.ui-datepicker .ui-datepicker-prev {
  left: 0;
}

.ui-datepicker .ui-datepicker-prev:after {
  content: '\e9c8';
}

.ui-datepicker .ui-datepicker-next {
  right: 0;
}

.ui-datepicker .ui-datepicker-next:after {
  content: '\e9cb';
}

.ui-datepicker .ui-datepicker-prev-hover,
.ui-datepicker .ui-datepicker-next-hover {
  color: #333;
  background-color: #f5f5f5;
}

.ui-datepicker .ui-datepicker-calendar {
  width: 100%;
  border-collapse: collapse;
  margin: 0;
}

.ui-datepicker .ui-datepicker-calendar th {
  text-align: center;
  font-weight: 400;
  padding-top: 0.9375rem;
  padding-bottom: 0.4375rem;
  font-size: 0.75rem;
  color: #999;
}

.ui-datepicker .ui-datepicker-calendar td {
  text-align: center;
}

.ui-datepicker .ui-datepicker-calendar td span,
.ui-datepicker .ui-datepicker-calendar td a {
  display: block;
  position: relative;
  text-decoration: none;
  min-width: 2.12503rem;
  color: #333;
  padding: 0.4375rem;
  border-radius: 0.1875rem;
}

.ui-datepicker .ui-datepicker-calendar td .ui-state-hover {
  color: #333;
  background-color: #f5f5f5;
}

.ui-datepicker .ui-datepicker-calendar td.ui-state-disabled a,
.ui-datepicker .ui-datepicker-calendar td.ui-state-disabled span {
  color: #999;
  background-color: transparent;
}

.ui-datepicker .ui-datepicker-calendar td.ui-datepicker-week-col {
  min-width: 2.12503rem;
  padding: 0.4375rem;
  color: #999;
}

.ui-datepicker .ui-datepicker-calendar td.ui-datepicker-current-day .ui-state-active {
  color: #fff;
  background-color: #26A69A;
}

.ui-datepicker .ui-datepicker-calendar td.ui-datepicker-today .ui-state-highlight {
  color: #333;
  background-color: #f5f5f5;
}

.ui-datepicker .ui-datepicker-calendar td.ui-datepicker-today .ui-state-highlight:after {
  content: "";
  position: absolute;
  top: 0.14583rem;
  right: 0.14583rem;
  border-top: 0.4375rem solid #767676;
  border-left: 0.4375rem solid transparent;
  width: 0;
  height: 0;
}

.ui-datepicker .ui-datepicker-calendar .ui-datepicker-other-month .ui-priority-secondary {
  color: #999;
}

.ui-datepicker .ui-datepicker-calendar .ui-datepicker-week-col {
  text-align: left;
}

.ui-datepicker.ui-datepicker-multi {
  width: auto !important;
}

.ui-datepicker-buttonpane {
  display: flex;
  justify-content: space-between;
  padding-top: 0.9375rem;
}

.ui-datepicker-inline {
  max-width: 100%;
  overflow-x: auto;
}

.ui-datepicker-trigger {
  position: absolute;
  top: 4px;
  right: 5px;
  z-index: 4;
  padding: 6px;
  cursor: pointer;
}

.ui-datepicker-row-break {
  clear: both;
  width: 100%;
}

.ui-datepicker-multi .ui-datepicker-group {
  float: left;
}

.ui-datepicker-multi .ui-datepicker-group + .ui-datepicker-group {
  padding-left: 0.9375rem;
}

.ui-datepicker-multi-2 .ui-datepicker-group {
  width: 46%;
}

.ui-datepicker-multi-3 .ui-datepicker-group {
  width: 33.3%;
}

.ui-datepicker-multi-4 .ui-datepicker-group {
  width: 25%;
}

.ui-dialog {
  position: fixed;
  top: 0;
  /*rtl:ignore*/
  left: 0;
  background-color: #fff;
  background-clip: padding-box;
  border: 1px solid rgba(0, 0, 0, 0.2);
  z-index: 1050;
  display: none;
  overflow: hidden;
  outline: 0;
  border-radius: 0.25rem;
  box-shadow: 0 0.25rem 0.5rem rgba(0, 0, 0, 0.1);
}

@media (max-width: 767.98px) {
  .ui-dialog {
    width: 90% !important;
  }
}

.ui-dialog-titlebar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 1.25rem;
  padding-bottom: 0;
}

.ui-draggable .ui-dialog-titlebar {
  cursor: move;
}

.ui-dialog-title {
  display: block;
  font-size: 0.9375rem;
  line-height: 1.5385;
}

.ui-dialog-titlebar-close {
  margin-left: auto;
  background-color: transparent;
  padding: 0;
  border: 0;
  font-size: 0;
  text-indent: 0;
}

.ui-dialog-titlebar-close:after {
  content: '\ed6a';
  font-family: "icomoon";
  display: block;
  width: 0.8125rem;
  font-size: 0.8125rem;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.ui-dialog-titlebar-close:hover, .ui-dialog-titlebar-close:focus {
  background-color: transparent !important;
  box-shadow: none;
}

.ui-dialog-content {
  position: relative;
  overflow: auto;
  padding: 1.25rem;
}

.ui-dialog-content .form-group:last-child,
.ui-dialog-content p:last-child {
  margin-bottom: 0;
}

.ui-dialog-buttonpane {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  padding: 1.25rem;
  padding-top: 0;
}

.ui-dialog-buttonpane button + button {
  margin-left: 0.625rem;
}

.ui-menu {
  list-style: none;
  padding: 0.5rem 0;
  margin: 0;
  display: block;
  outline: none;
  min-width: 11.25rem;
  white-space: nowrap;
  background-color: #fff;
  border: 1px solid rgba(0, 0, 0, 0.15);
  z-index: 1000;
  border-radius: 0.1875rem;
  box-shadow: 0 0.25rem 0.5rem rgba(0, 0, 0, 0.1);
}

.ui-menu .ui-menu {
  position: absolute;
  top: -0.4375rem !important;
}

.ui-menu .ui-menu-item {
  margin: 0;
  position: relative;
}

.ui-menu .ui-menu-item i {
  margin-right: 1rem;
}

.ui-menu .ui-menu-item-wrapper {
  position: relative;
  display: flex;
  align-items: flex-start;
  cursor: pointer;
  padding: 0.5rem 1rem;
  outline: 0;
  color: #333;
  overflow: hidden;
  transition: all ease-in-out 0.15s;
}

@media (prefers-reduced-motion: reduce) {
  .ui-menu .ui-menu-item-wrapper {
    transition: none;
  }
}

.ui-menu .ui-menu-item-wrapper > .ui-menu-icon {
  position: absolute;
  top: 50%;
  margin-top: -0.5rem;
  right: 1rem;
}

.ui-menu .ui-menu-item-wrapper > .ui-menu-icon:after {
  content: '\e9c7';
  font-family: "icomoon";
  font-size: 1rem;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.ui-menu .ui-menu-header {
  display: flex;
  align-items: flex-start;
  padding: 0.5rem 1rem;
  font-size: 0.75rem;
  line-height: 1.6667;
  text-transform: uppercase;
  color: #999;
  margin-top: 0.25rem;
  margin-bottom: 0.25rem;
}

.ui-menu .ui-menu-header.highlight {
  margin-top: 0;
  background-color: #f8f8f8;
}

.ui-menu .ui-menu-item + .highlight,
.ui-menu .highlight + .ui-menu-item {
  margin-top: 0.5rem;
}

.ui-menu .ui-menu-item-wrapper > i,
.ui-menu .ui-menu-header > i {
  top: 0;
  margin-top: 0.12502rem;
  margin-right: 1rem;
}

.ui-menu .ui-menu-divider {
  margin: 0.5rem 0;
  height: 0;
  font-size: 0;
  overflow: hidden;
  border-top: 1px solid #ddd;
}

.ui-menu .ui-state-disabled .ui-menu-item-wrapper {
  color: #999;
  background-color: transparent;
  cursor: default;
}

.ui-menu .ui-state-focus,
.ui-menu .ui-state-active {
  color: #333;
  background-color: #f5f5f5;
}

.ui-progressbar {
  display: flex;
  height: 1.125rem;
  overflow: hidden;
  font-size: 0.60938rem;
  background-color: #eee;
  border-radius: 0.1875rem;
  box-shadow: inset 0 0.0625rem 0.0625rem rgba(0, 0, 0, 0.1);
}

.ui-progressbar-value {
  display: flex;
  flex-direction: column;
  justify-content: center;
  color: #fff;
  text-align: center;
  background-color: #2196F3;
  background-size: 1.125rem 1.125rem;
  transition: width 0.6s ease;
}

@media (prefers-reduced-motion: reduce) {
  .ui-progressbar-value {
    transition: none;
  }
}

.ui-progressbar-striped .ui-progressbar-value {
  background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
}

.ui-progressbar-active .ui-progressbar-value {
  -webkit-animation: progress-bar-stripes 1s linear infinite;
          animation: progress-bar-stripes 1s linear infinite;
}

.ui-progressbar-indeterminate .ui-progressbar-value {
  background-image: none;
}

.ui-selectmenu-menu {
  padding: 0;
  margin: 0;
  position: absolute;
  top: 0;
  /*rtl:ignore*/
  left: 0;
  display: none;
}

.ui-selectmenu-menu .ui-menu {
  max-height: 340px;
  overflow-y: auto;
  overflow-x: hidden;
}

.ui-selectmenu-menu .ui-menu .ui-selectmenu-optgroup {
  font-size: 0.75rem;
  font-weight: 500;
  line-height: 1.6667;
  padding: 0.5rem 1rem;
  text-transform: uppercase;
  height: auto;
  border: 0;
}

.ui-selectmenu-menu .ui-menu .ui-selectmenu-optgroup ~ .ui-menu-item .ui-menu-item-wrapper {
  padding-left: 2rem;
}

.ui-selectmenu-open {
  display: block;
}

.ui-selectmenu-button {
  text-decoration: none;
  text-align: left;
  outline: 0;
}

.ui-selectmenu-button:not(.ui-controlgroup-item) {
  display: inline-block;
  position: relative;
  background-color: #fff;
  border: 1px solid #ddd;
  cursor: pointer;
  border-radius: 0.1875rem;
}

.ui-selectmenu-button:not(.ui-button-icon-only) {
  padding: 0.4375rem 0.875rem;
  padding-right: 2.75rem;
}

.ui-selectmenu-button:hover, .ui-selectmenu-button:focus {
  box-shadow: 0 0 0 62.5rem rgba(0, 0, 0, 0.01) inset;
}

.ui-selectmenu-button:not([class*=bg-]):hover, .ui-selectmenu-button:not([class*=bg-]):focus {
  background-color: #fff;
}

.ui-selectmenu-button:after {
  content: '\e9c5';
  font-family: "icomoon";
  display: inline-block;
  position: absolute;
  top: 50%;
  right: 0.875rem;
  text-align: right;
  margin-top: -0.5rem;
  font-size: 1rem;
  line-height: 1;
  color: inherit;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.ui-selectmenu-button .ui-selectmenu-text {
  display: block;
  text-transform: none;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.ui-selectmenu-button.ui-selectmenu-button-open {
  box-shadow: 0 0 0 62.5rem rgba(0, 0, 0, 0.01) inset;
}

.ui-selectmenu-disabled {
  cursor: default;
  background-color: #fafafa;
}

.ui-selectmenu-disabled:hover, .ui-selectmenu-disabled:focus {
  box-shadow: none;
}

.ui-selectmenu-lg .ui-selectmenu-button .ui-selectmenu-text {
  padding: 0.5625rem 1rem;
  padding-right: 3rem;
  font-size: 0.875rem;
  line-height: 1.4286;
}

.ui-selectmenu-sm .ui-selectmenu-button .ui-selectmenu-text {
  padding: 0.3125rem 0.75rem;
  padding-right: 2.5rem;
  font-size: 0.75rem;
  line-height: 1.6667;
}

.ui-selectmenu-images .ui-menu-item span {
  display: inline-block;
  margin-right: 1rem;
  background-size: 1.25003rem 1.25003rem;
  float: left;
  width: 1.25003rem;
  height: 1.25003rem;
  border-radius: 0.1875rem;
}

.ui-selectmenu-images .demo-img-amazon {
  background: url("/themeImages/brands/amazon.png") no-repeat;
}

.ui-selectmenu-images .demo-img-youtube {
  background: url("/themeImages/brands/youtube.png") no-repeat;
}

.ui-selectmenu-images .demo-img-twitter {
  background: url("/themeImages/brands/twitter.png") no-repeat;
}

.ui-selectmenu-images .demo-img-bing {
  background: url("/themeImages/brands/bing.png") no-repeat;
}

.ui-selectmenu-images .demo-img-spotify {
  background: url("/themeImages/brands/spotify.png") no-repeat;
}

.ui-slider {
  position: relative;
  text-align: left;
  background-color: #eee;
  border-radius: 100px;
  box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.1);
}

.ui-slider .ui-slider-handle {
  position: absolute;
  z-index: 2;
  cursor: pointer;
  background-color: #fff;
  border: 1px solid #ccc;
  outline: 0;
  width: 1.125rem;
  height: 1.125rem;
  border-radius: 100px;
  transition: background-color ease-in-out 0.15s;
}

@media (prefers-reduced-motion: reduce) {
  .ui-slider .ui-slider-handle {
    transition: none;
  }
}

.ui-slider .ui-slider-handle.ui-state-hover, .ui-slider .ui-slider-handle.ui-state-focus {
  background-color: #fafafa;
}

.ui-slider .ui-slider-handle.ui-state-hover:after, .ui-slider .ui-slider-handle.ui-state-focus:after {
  background-color: #555;
}

.ui-slider .ui-slider-handle:after {
  content: '';
  display: inline-block;
  position: absolute;
  top: 50%;
  left: 50%;
  margin-top: -0.1875rem;
  margin-left: -0.1875rem;
  background-color: #333;
  width: 0.375rem;
  height: 0.375rem;
  border-radius: 100px;
  transition: background-color ease-in-out 0.15s;
}

@media (prefers-reduced-motion: reduce) {
  .ui-slider .ui-slider-handle:after {
    transition: none;
  }
}

.ui-slider .ui-slider-range {
  position: absolute;
  z-index: 1;
  display: block;
  background-color: #607D8B;
  border-radius: 100px;
}

.ui-slider.ui-slider-disabled {
  opacity: 0.75;
}

.ui-slider.ui-slider-disabled .ui-slider-handle {
  cursor: default;
}

.ui-slider-horizontal {
  height: 0.375rem;
}

.ui-slider-horizontal .ui-slider-handle {
  top: -0.375rem;
  /*rtl:ignore*/
  margin-left: -0.5625rem;
}

.ui-slider-horizontal .ui-slider-range {
  top: 0;
  height: 100%;
}

.ui-slider-horizontal .ui-slider-range-min {
  left: 0;
}

.ui-slider-horizontal .ui-slider-range-max {
  right: 0;
}

.ui-slider-vertical {
  width: 0.375rem;
  height: 150px;
  display: inline-block;
  margin: 0 0.625rem;
}

.ui-slider-vertical .ui-slider-handle {
  left: -0.375rem;
  margin-bottom: -0.5625rem;
}

.ui-slider-vertical .ui-slider-range {
  left: 0;
  width: 100%;
}

.ui-slider-vertical .ui-slider-range-min {
  bottom: 0;
}

.ui-slider-vertical .ui-slider-range-max {
  top: 0;
}

.ui-slider-solid .ui-slider-handle:after {
  background-color: #fff;
  transition: opacity ease-in-out 0.15s;
}

@media (prefers-reduced-motion: reduce) {
  .ui-slider-solid .ui-slider-handle:after {
    transition: none;
  }
}

.ui-slider-solid .ui-slider-handle.ui-state-hover:after, .ui-slider-solid .ui-slider-handle.ui-state-active:after {
  background-color: #fff;
  opacity: 0.75;
}

.ui-handle-white .ui-slider-handle:after {
  content: none;
}

.ui-slider-lg .ui-slider-handle {
  width: 1.5rem;
  height: 1.5rem;
}

.ui-slider-lg .ui-slider-handle:after {
  margin-top: -0.25rem;
  margin-left: -0.25rem;
  width: 0.5rem;
  height: 0.5rem;
}

.ui-slider-lg.ui-slider-horizontal {
  height: 0.5rem;
}

.ui-slider-lg.ui-slider-horizontal .ui-slider-handle {
  top: -0.5rem;
  /*rtl:ignore*/
  margin-left: -0.75rem;
}

.ui-slider-lg.ui-slider-vertical {
  width: 0.5rem;
}

.ui-slider-lg.ui-slider-vertical .ui-slider-handle {
  left: -0.5rem;
  margin-bottom: -0.75rem;
}

.ui-slider-sm .ui-slider-handle {
  width: 0.75rem;
  height: 0.75rem;
}

.ui-slider-sm .ui-slider-handle:after {
  margin-top: -0.125rem;
  margin-left: -0.125rem;
  width: 0.25rem;
  height: 0.25rem;
}

.ui-slider-sm.ui-slider-horizontal {
  height: 0.25rem;
}

.ui-slider-sm.ui-slider-horizontal .ui-slider-handle {
  top: -0.25rem;
  /*rtl:ignore*/
  margin-left: -0.375rem;
}

.ui-slider-sm.ui-slider-vertical {
  width: 0.25rem;
}

.ui-slider-sm.ui-slider-vertical .ui-slider-handle {
  left: -0.25rem;
  margin-bottom: -0.375rem;
}

.ui-slider-primary .ui-slider-range,
.ui-slider-solid.ui-slider-primary .ui-slider-handle {
  background-color: #2196F3;
  border-color: #2196F3;
}

.ui-slider-danger .ui-slider-range,
.ui-slider-solid.ui-slider-danger .ui-slider-handle {
  background-color: #F44336;
  border-color: #F44336;
}

.ui-slider-success .ui-slider-range,
.ui-slider-solid.ui-slider-success .ui-slider-handle {
  background-color: #4CAF50;
  border-color: #4CAF50;
}

.ui-slider-warning .ui-slider-range,
.ui-slider-solid.ui-slider-warning .ui-slider-handle {
  background-color: #FF7043;
  border-color: #FF7043;
}

.ui-slider-info .ui-slider-range,
.ui-slider-solid.ui-slider-info .ui-slider-handle {
  background-color: #00BCD4;
  border-color: #00BCD4;
}

.ui-spinner {
  position: relative;
  display: flex;
  width: 100%;
}

.ui-spinner-input {
  border-right: 0;
  border-top-right-radius: 0;
  border-bottom-right-radius: 0;
}

.ui-spinner-button {
  display: flex;
  align-items: center;
  border-radius: 0;
}

.ui-spinner-button:after {
  font-family: "icomoon";
  position: absolute;
  left: 50%;
  top: 50%;
  width: 1rem;
  font-size: 1rem;
  line-height: 1;
  text-indent: 0;
  transform: translate(-50%, -50%);
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.ui-spinner-button:last-child {
  border-top-right-radius: 0.1875rem;
  border-bottom-right-radius: 0.1875rem;
}

.ui-spinner-button > span {
  display: none;
}

.ui-spinner-button + .ui-spinner-button {
  border-left: 0;
}

.ui-spinner-up:after {
  content: '\e9f7';
}

.ui-spinner-down:after {
  content: '\e9e2';
}

.ui-tabs {
  position: relative;
}

.ui-tabs .ui-tabs-nav {
  display: flex;
  flex-wrap: wrap;
  margin-bottom: 1.25rem;
  border-bottom: 1px solid #ddd;
}

.ui-tabs .ui-tabs-tab {
  list-style: none;
  position: relative;
  padding: 0;
  margin-bottom: -1px;
}

.ui-tabs .ui-tabs-anchor {
  position: relative;
  display: flex;
  justify-content: center;
  align-items: flex-start;
  color: #777;
  padding: 0.625rem 1.25rem;
  border: 1px solid transparent;
  transition: all ease-in-out 0.15s;
}

@media (prefers-reduced-motion: reduce) {
  .ui-tabs .ui-tabs-anchor {
    transition: none;
  }
}

.ui-tabs .ui-tabs-anchor:before {
  content: '';
  position: absolute;
  height: 2px;
  top: -1px;
  left: -1px;
  right: -1px;
  transition: background-color ease-in-out 0.15s;
}

@media (prefers-reduced-motion: reduce) {
  .ui-tabs .ui-tabs-anchor:before {
    transition: none;
  }
}

.ui-tabs .ui-tabs-anchor i {
  top: 0;
  margin-top: 0.12502rem;
}

.ui-tabs .ui-state-hover .ui-tabs-anchor:not(.ui-state-disabled),
.ui-tabs .ui-state-focus .ui-tabs-anchor:not(.ui-state-disabled) {
  color: #333;
}

.ui-tabs .ui-tabs-active .ui-tabs-anchor {
  color: #333;
  background-color: #fff;
  border-color: #ddd #ddd #fff;
}

.ui-tabs .ui-tabs-active .ui-tabs-anchor:before {
  background-color: #2196F3;
}

.ui-tabs .ui-state-disabled {
  color: #999;
  background-color: transparent;
  border-color: transparent;
  cursor: default;
}

.ui-tabs .ui-sortable-helper:not(.ui-tabs-active) .ui-tabs-anchor {
  border-color: #ddd;
}

.ui-tabs .ui-tabs-panel {
  display: block;
}

.ui-tooltip {
  position: absolute;
  z-index: 1070;
  max-width: 200px;
  padding: 0.5rem 0.75rem;
  color: #fff;
  text-align: center;
  background-color: #000;
  border-radius: 0.1875rem;
}

.ui-widget-overlay {
  position: fixed;
  top: 0;
  /*rtl:ignore*/
  left: 0;
  z-index: 1040;
  background-color: #000;
  opacity: 0.5;
  width: 100%;
  height: 100%;
}

.ui-helper-hidden {
  display: none;
}

.ui-helper-hidden-accessible {
  border: 0;
  clip: rect(0 0 0 0);
  height: 1px;
  margin: -1px;
  overflow: hidden;
  padding: 0;
  position: absolute;
  width: 1px;
}

.ui-helper-reset {
  margin: 0;
  padding: 0;
  border: 0;
  outline: 0;
  list-style: none;
}

.ui-helper-clearfix::after {
  display: block;
  clear: both;
  content: "";
}

.ui-helper-zfix {
  top: 0;
  left: 0;
  position: absolute;
  opacity: 0;
  width: 100%;
  height: 100%;
}

.ui-front {
  z-index: 1040;
}

/* ------------------------------------------------------------------------------
 *
 *  # Prism
 *
 *  Styles for prism.min.js - lightweight, extensible syntax highlighter
 *
 * ---------------------------------------------------------------------------- */
code[class*="language-"],
pre[class*="language-"] {
  text-shadow: 0 1px #fff;
  word-break: break-all;
  line-height: 1.5;
  background-color: transparent;
  /*rtl:ignore*/
  direction: ltr;
}

@media print {
  code[class*="language-"],
  pre[class*="language-"] {
    text-shadow: none;
  }
}

.token.comment, .token.prolog, .token.doctype, .token.cdata, .token.punctuation {
  color: #999;
}

.token.property, .token.tag, .token.boolean, .token.number, .token.constant, .token.symbol {
  color: #905;
}

.token.selector, .token.attr-name, .token.string, .token.builtin {
  color: #690;
}

.token.operator, .token.entity, .token.url,
.language-css .token.string,
.style .token.string, .token.variable {
  color: #a67f59;
  background: rgba(255, 255, 255, 0.5);
}

.token.atrule, .token.attr-value, .token.keyword {
  color: #07a;
}

.token.function {
  color: #DD4A68;
}

.token.regex, .token.important {
  color: #e90;
}

.token.important {
  font-weight: bold;
}

.token.entity {
  cursor: help;
}

.namespace {
  opacity: 0.7;
}

.line-highlight {
  position: absolute;
  left: 0;
  right: 0;
  margin-top: 1.25rem;
  background: rgba(103, 139, 220, 0.12);
  pointer-events: none;
  white-space: pre;
  line-height: inherit;
}

.line-highlight:before, .line-highlight:after {
  content: attr(data-start);
  position: absolute;
  top: 0px;
  /*rtl:ignore*/
  left: 10px;
  padding: 2px;
  text-align: center;
  font-size: 10px;
  color: #999;
}

.line-highlight[data-end]:after {
  content: attr(data-end);
  top: auto;
  bottom: 0;
}

.line-numbers .line-numbers-rows {
  position: absolute;
  pointer-events: none;
  top: 0;
  font-size: 100%;
  width: 36px;
  letter-spacing: -1px;
  /*rtl:begin:ignore*/
  left: -50px;
  border-right: 1px solid #999;
  /*rtl:end:ignore*/
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
}

.line-numbers .line-numbers-rows > span {
  pointer-events: none;
  display: block;
  counter-increment: linenumber;
}

.line-numbers .line-numbers-rows > span:before {
  content: counter(linenumber);
  color: #999;
  display: block;
  /*rtl:begin:ignore*/
  padding-right: 10px;
  text-align: right;
  /*rtl:end:ignore*/
}

pre.line-numbers {
  position: relative;
  /*rtl:ignore*/
  padding-left: 50px;
  counter-reset: linenumber;
}

pre.line-numbers > code {
  position: relative;
}

pre[class*="language-"] {
  overflow: auto;
  position: relative;
  background-color: #fdfdfd;
  background-image: linear-gradient(transparent 50%, rgba(25, 118, 210, 0.025) 50%);
  background-size: 3em 3em;
  background-origin: content-box;
  /*rtl:begin:ignore*/
  border-left-width: 0;
  box-shadow: 3px 0 0 0 #2196F3 inset;
  border-top-left-radius: 0;
  border-bottom-left-radius: 0;
  /*rtl:end:ignore*/
}

pre[data-line] {
  position: relative;
  /*rtl:ignore*/
  padding-left: 36px;
}

pre.code-toolbar {
  position: relative;
}

pre.code-toolbar > .toolbar {
  background-color: #f8f8f8;
  display: inline-block;
  position: absolute;
  top: 0;
  text-shadow: none;
  color: #333;
  border-bottom: 1px solid #ddd;
  /*rtl:begin:ignore*/
  border-left: 1px solid #ddd;
  right: 0;
  border-radius: 0 0 0 0.1875rem;
  /*rtl:end:ignore*/
}

pre.code-toolbar > .toolbar span,
pre.code-toolbar > .toolbar .toolbar-item {
  display: inline-block;
}

pre.code-toolbar > .toolbar a {
  cursor: pointer;
}

pre.code-toolbar > .toolbar button {
  background: none;
  border: 0;
  color: inherit;
  font: inherit;
  line-height: normal;
  overflow: visible;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
}

pre.code-toolbar > .toolbar a,
pre.code-toolbar > .toolbar button,
pre.code-toolbar > .toolbar span {
  padding: 0.25rem 0.5rem;
  font-size: 0.6875rem;
  outline: 0;
}

pre.code-toolbar > .toolbar a:hover, pre.code-toolbar > .toolbar a:focus,
pre.code-toolbar > .toolbar button:hover,
pre.code-toolbar > .toolbar button:focus,
pre.code-toolbar > .toolbar span:hover,
pre.code-toolbar > .toolbar span:focus {
  color: inherit;
  text-decoration: none;
}

/* ------------------------------------------------------------------------------
 *
 *  # Slinky
 *
 *  Styles for slinky.min.js - animated multi level navigation
 *
 * ---------------------------------------------------------------------------- */
.slinky-menu {
  position: relative;
  overflow: hidden;
  transform: translateZ(0);
}

.slinky-menu > ul {
  /*rtl:ignore*/
  left: 0;
  position: relative;
  transform: translateZ(0);
}

.slinky-menu ul {
  width: 100%;
}

.slinky-menu ul.active {
  max-height: 340px;
  overflow-y: auto;
}

.slinky-menu li + li:not(.dropdown-item):not(.dropdown-divider) {
  margin-top: 1px;
}

.slinky-menu li ul {
  display: none;
  /*rtl:ignore*/
  left: 100%;
  position: absolute;
  top: 0;
}

.slinky-menu .header {
  display: flex;
  position: relative;
  color: #2196F3;
  transition: all ease-in-out 0.15s;
}

@media (prefers-reduced-motion: reduce) {
  .slinky-menu .header {
    transition: none;
  }
}

.slinky-menu .header:hover, .slinky-menu .header:focus {
  color: #0a6ebd;
}

.slinky-menu .header .title {
  flex: 1;
  padding: 0.5rem 1rem;
  padding-left: 3rem;
}

.slinky-menu .next:after, .slinky-menu .next:before,
.slinky-menu .back:after,
.slinky-menu .back:before {
  font-family: "icomoon";
  position: absolute;
  top: 50%;
  margin-top: -0.5rem;
  font-size: 1rem;
  line-height: 1;
  opacity: 0.75;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.slinky-menu .next {
  padding-right: 2.5rem;
}

.slinky-menu .next:after {
  content: '\e9c7';
  right: 1rem;
}

.slinky-menu .back {
  position: absolute;
  padding: 0.5rem 1rem;
  color: inherit;
  width: 100%;
  height: 100%;
}

.slinky-menu .back:before {
  content: '\ede7';
  left: 1rem;
}

/* ------------------------------------------------------------------------------
 *
 *  # Sticky kit
 *
 *  Styles for sticky.min.js - extension that makes elements sticky
 *
 * ---------------------------------------------------------------------------- */
.is_stuck {
  z-index: 1030 !important;
}

.navbar-top .navbar.is_stuck {
  margin-top: 3.12503rem;
}

/* ------------------------------------------------------------------------------
 *
 *  # Headroom
 *
 *  Styles for headroom.min.js - hides BS navbar component on page scroll
 *
 * ---------------------------------------------------------------------------- */
.headroom {
  transition: transform ease-in-out 0.2s, box-shadow ease-in-out 0.2s;
  will-change: transform;
}

.navbar-slide-top.headroom--pinned {
  transform: translateY(0);
}

.navbar-slide-top.headroom--unpinned {
  transform: translateY(-100%);
  box-shadow: none;
}

.navbar-slide-bottom.headroom--pinned {
  transform: translateY(100%);
  box-shadow: none;
}

.navbar-slide-bottom.headroom--unpinned {
  transform: translateY(0);
}

/* ------------------------------------------------------------------------------
 *
 *  # Dragula - drag and drop library
 *
 *  Styles for Dragula Drag and drop plugin
 *
 * ---------------------------------------------------------------------------- */
.gu-mirror {
  position: fixed !important;
  margin: 0 !important;
  z-index: 9999 !important;
  opacity: 0.8;
}

.gu-unselectable.dropdown-menu li:nth-last-child(2) {
  margin-bottom: 0;
}

.nav-pills-toolbar > li.gu-mirror:not(.active) > a {
  border: 0;
}

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

.gu-unselectable {
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
}

.gu-transit {
  opacity: 0.5;
}

.dragula-handle {
  color: #999;
  cursor: pointer;
}

.dragula-handle:hover, .dragula-handle:focus {
  color: #333;
}

/* ------------------------------------------------------------------------------
 *
 *  # Perfect Scrollbar
 *
 *  Styles for perfect_scrollbar.min.js - custom scrollbar extension
 *
 * ---------------------------------------------------------------------------- */
.ps {
  overflow: hidden !important;
  overflow-anchor: none;
  touch-action: auto;
}

.ps__rail-y,
.ps__rail-x {
  opacity: 0;
  position: absolute;
  transition: opacity 0.15s linear;
}

@media (prefers-reduced-motion: reduce) {
  .ps__rail-y,
  .ps__rail-x {
    transition: none;
  }
}

.ps__rail-x {
  bottom: 0;
}

.ps__rail-y {
  /*rtl:ignore*/
  right: 0;
}

.ps:hover > .ps__rail-x,
.ps:hover > .ps__rail-y,
.ps--focus > .ps__rail-x,
.ps--focus > .ps__rail-y,
.ps--scrolling-x > .ps__rail-x,
.ps--scrolling-y > .ps__rail-y {
  opacity: 0.75;
}

.ps__thumb-y,
.ps__thumb-x {
  background-color: #999;
  position: absolute;
  pointer-events: none;
  border-radius: 100px;
}

.ps__thumb-y {
  width: 0.25rem;
  right: 0.125rem;
}

.ps__thumb-x {
  height: 0.25rem;
  bottom: 0.125rem;
}

@supports (-ms-overflow-style: none) {
  .ps {
    overflow: auto !important;
  }
}

@media screen and (-ms-high-contrast: active), (-ms-high-contrast: none) {
  .ps {
    overflow: auto !important;
  }
}

/* ------------------------------------------------------------------------------
*
*  # Floating action buttons
*
*  Styles for fab.min.js - material design floating action button with menu
*
* ---------------------------------------------------------------------------- */
.fab-menu {
  position: relative;
  display: inline-block;
  white-space: nowrap;
  padding: 0;
  margin: 0;
  list-style: none;
  z-index: 1029;
  transform: scale(0.85);
}

.page-header > .fab-menu {
  position: absolute;
  bottom: -1.5rem;
}

@media (min-width: 768px) {
  .fab-menu {
    transform: scale(1);
  }
}

.fab-menu-absolute {
  position: absolute;
}

.fab-menu-fixed {
  position: fixed;
  z-index: 1030;
}

.content-wrapper > .fab-menu-top-left, .content-wrapper >
.fab-menu-top-right {
  top: -1.5rem;
}

.fab-menu-bottom-left,
.fab-menu-bottom-right {
  bottom: 1.25rem;
  transition: bottom ease-in-out 0.15s;
}

.fab-menu-bottom-left.reached-bottom,
.fab-menu-bottom-right.reached-bottom {
  bottom: 5.62503rem;
}

.fab-menu-top-right,
.fab-menu-bottom-right {
  right: 1.25rem;
}

.fab-menu-inner {
  list-style: none;
  margin: 0;
  padding: 0;
}

.fab-menu-inner > li {
  display: block;
  position: absolute;
  top: 0.125rem;
  left: 0;
  right: 0;
  text-align: center;
  padding-top: 1.25rem;
  margin-top: -1.25rem;
}

.fab-menu-inner > li .btn {
  border-width: 0;
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.12), 0 1px 2px rgba(0, 0, 0, 0.24);
}

.fab-menu-inner > li .btn:hover, .fab-menu-inner > li .btn:focus, .fab-menu-inner > li .btn.focus, .fab-menu-inner > li .btn:not(:disabled):not(.disabled):active, .fab-menu-inner > li .btn:not(:disabled):not(.disabled).active {
  box-shadow: 0 3px 6px rgba(0, 0, 0, 0.16), 0 3px 6px rgba(0, 0, 0, 0.23) !important;
}

.fab-menu-inner > li .btn-float {
  padding: 0;
  width: 2.75rem;
  height: 2.75rem;
}

.fab-menu-inner > li .btn-float > i {
  margin: 0.875rem;
}

.fab-menu-inner > li .show > .btn-float.dropdown-toggle {
  box-shadow: 0 3px 6px rgba(0, 0, 0, 0.16), 0 3px 6px rgba(0, 0, 0, 0.23);
}

.fab-menu-inner > li .dropleft .btn:before,
.fab-menu-inner > li .dropleft .btn:after,
.fab-menu-inner > li .dropright .btn:before,
.fab-menu-inner > li .dropright .btn:after {
  content: none;
}

.fab-menu-inner > li .badge {
  position: absolute;
  top: 0.75rem;
  right: -0.25rem;
}

.fab-menu-inner > li .badge-mark {
  top: 1.25rem;
  right: 0rem;
}

.fab-menu-bottom-left .fab-menu-inner > li,
.fab-menu-bottom-right .fab-menu-inner > li {
  padding-top: 0;
  margin-top: 0;
  padding-bottom: 1.25rem;
  margin-bottom: -1.25rem;
}

.fab-menu-bottom-left .fab-menu-inner > li .badge,
.fab-menu-bottom-right .fab-menu-inner > li .badge {
  top: -0.5rem;
}

.fab-menu-bottom-left .fab-menu-inner > li .badge-mark,
.fab-menu-bottom-right .fab-menu-inner > li .badge-mark {
  top: 0rem;
}

.fab-menu-btn {
  z-index: 1031;
  border-width: 0;
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.12), 0 1px 2px rgba(0, 0, 0, 0.24);
}

.fab-menu-btn.btn-float {
  padding: 1.5rem;
}

.fab-menu-btn.btn-float > i {
  position: absolute;
  top: 50%;
  left: 50%;
  margin-top: -0.5rem;
  margin-left: -0.5rem;
}

.fab-menu-btn:hover, .fab-menu-btn:focus, .fab-menu-btn:not(:disabled):not(.disabled):active, .fab-menu-btn:not(:disabled):not(.disabled).active, .fab-menu-btn:not(:disabled):not(.disabled):active:focus,
.fab-menu[data-fab-toggle="hover"]:hover .fab-menu-btn,
.fab-menu[data-fab-state="open"] .fab-menu-btn {
  box-shadow: 0 3px 6px rgba(0, 0, 0, 0.16), 0 3px 6px rgba(0, 0, 0, 0.23);
}

.fab-menu-btn:disabled, .fab-menu-btn.disabled {
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.12), 0 1px 2px rgba(0, 0, 0, 0.24);
}

.fab-icon-close,
.fab-icon-open {
  transform: rotate(360deg);
  transition: all ease-in-out 0.3s;
}

.fab-menu[data-fab-toggle="hover"]:hover .fab-icon-close,
.fab-menu[data-fab-state="open"] .fab-icon-close, .fab-menu[data-fab-toggle="hover"]:hover
.fab-icon-open,
.fab-menu[data-fab-state="open"]
.fab-icon-open {
  transform: rotate(0deg);
}

.fab-menu[data-fab-toggle="hover"]:hover .fab-icon-open,
.fab-menu[data-fab-state="open"] .fab-icon-open {
  opacity: 0;
}

.fab-icon-close {
  opacity: 0;
}

.fab-menu[data-fab-toggle="hover"]:hover .fab-icon-close,
.fab-menu[data-fab-state="open"] .fab-icon-close {
  opacity: 1;
}

.fab-menu .fab-menu-inner > li {
  visibility: hidden;
  opacity: 0;
  transition: all ease-in-out 0.3s;
}

.fab-menu .fab-menu-inner > li:nth-child(1) {
  transition-delay: 0.05s;
}

.fab-menu .fab-menu-inner > li:nth-child(2) {
  transition-delay: 0.1s;
}

.fab-menu .fab-menu-inner > li:nth-child(3) {
  transition-delay: 0.15s;
}

.fab-menu .fab-menu-inner > li:nth-child(4) {
  transition-delay: 0.2s;
}

.fab-menu .fab-menu-inner > li:nth-child(5) {
  transition-delay: 0.25s;
}

.fab-menu[data-fab-toggle="hover"]:hover .fab-menu-inner > li, .fab-menu[data-fab-state="open"] .fab-menu-inner > li {
  visibility: visible;
  opacity: 1;
}

.fab-menu-top[data-fab-toggle="hover"]:hover .fab-menu-inner > li:nth-child(1), .fab-menu-top[data-fab-state="open"] .fab-menu-inner > li:nth-child(1),
.fab-menu-top-left[data-fab-toggle="hover"]:hover .fab-menu-inner > li:nth-child(1),
.fab-menu-top-left[data-fab-state="open"] .fab-menu-inner > li:nth-child(1),
.fab-menu-top-right[data-fab-toggle="hover"]:hover .fab-menu-inner > li:nth-child(1),
.fab-menu-top-right[data-fab-state="open"] .fab-menu-inner > li:nth-child(1) {
  top: 4.25rem;
}

.fab-menu-top[data-fab-toggle="hover"]:hover .fab-menu-inner > li:nth-child(2), .fab-menu-top[data-fab-state="open"] .fab-menu-inner > li:nth-child(2),
.fab-menu-top-left[data-fab-toggle="hover"]:hover .fab-menu-inner > li:nth-child(2),
.fab-menu-top-left[data-fab-state="open"] .fab-menu-inner > li:nth-child(2),
.fab-menu-top-right[data-fab-toggle="hover"]:hover .fab-menu-inner > li:nth-child(2),
.fab-menu-top-right[data-fab-state="open"] .fab-menu-inner > li:nth-child(2) {
  top: 8.25rem;
}

.fab-menu-top[data-fab-toggle="hover"]:hover .fab-menu-inner > li:nth-child(3), .fab-menu-top[data-fab-state="open"] .fab-menu-inner > li:nth-child(3),
.fab-menu-top-left[data-fab-toggle="hover"]:hover .fab-menu-inner > li:nth-child(3),
.fab-menu-top-left[data-fab-state="open"] .fab-menu-inner > li:nth-child(3),
.fab-menu-top-right[data-fab-toggle="hover"]:hover .fab-menu-inner > li:nth-child(3),
.fab-menu-top-right[data-fab-state="open"] .fab-menu-inner > li:nth-child(3) {
  top: 12.25rem;
}

.fab-menu-top[data-fab-toggle="hover"]:hover .fab-menu-inner > li:nth-child(4), .fab-menu-top[data-fab-state="open"] .fab-menu-inner > li:nth-child(4),
.fab-menu-top-left[data-fab-toggle="hover"]:hover .fab-menu-inner > li:nth-child(4),
.fab-menu-top-left[data-fab-state="open"] .fab-menu-inner > li:nth-child(4),
.fab-menu-top-right[data-fab-toggle="hover"]:hover .fab-menu-inner > li:nth-child(4),
.fab-menu-top-right[data-fab-state="open"] .fab-menu-inner > li:nth-child(4) {
  top: 16.25rem;
}

.fab-menu-top[data-fab-toggle="hover"]:hover .fab-menu-inner > li:nth-child(5), .fab-menu-top[data-fab-state="open"] .fab-menu-inner > li:nth-child(5),
.fab-menu-top-left[data-fab-toggle="hover"]:hover .fab-menu-inner > li:nth-child(5),
.fab-menu-top-left[data-fab-state="open"] .fab-menu-inner > li:nth-child(5),
.fab-menu-top-right[data-fab-toggle="hover"]:hover .fab-menu-inner > li:nth-child(5),
.fab-menu-top-right[data-fab-state="open"] .fab-menu-inner > li:nth-child(5) {
  top: 20.25rem;
}

.fab-menu-bottom[data-fab-toggle="hover"]:hover .fab-menu-inner > li:nth-child(1), .fab-menu-bottom[data-fab-state="open"] .fab-menu-inner > li:nth-child(1),
.fab-menu-bottom-left[data-fab-toggle="hover"]:hover .fab-menu-inner > li:nth-child(1),
.fab-menu-bottom-left[data-fab-state="open"] .fab-menu-inner > li:nth-child(1),
.fab-menu-bottom-right[data-fab-toggle="hover"]:hover .fab-menu-inner > li:nth-child(1),
.fab-menu-bottom-right[data-fab-state="open"] .fab-menu-inner > li:nth-child(1) {
  top: -3.75rem;
}

.fab-menu-bottom[data-fab-toggle="hover"]:hover .fab-menu-inner > li:nth-child(2), .fab-menu-bottom[data-fab-state="open"] .fab-menu-inner > li:nth-child(2),
.fab-menu-bottom-left[data-fab-toggle="hover"]:hover .fab-menu-inner > li:nth-child(2),
.fab-menu-bottom-left[data-fab-state="open"] .fab-menu-inner > li:nth-child(2),
.fab-menu-bottom-right[data-fab-toggle="hover"]:hover .fab-menu-inner > li:nth-child(2),
.fab-menu-bottom-right[data-fab-state="open"] .fab-menu-inner > li:nth-child(2) {
  top: -7.75rem;
}

.fab-menu-bottom[data-fab-toggle="hover"]:hover .fab-menu-inner > li:nth-child(3), .fab-menu-bottom[data-fab-state="open"] .fab-menu-inner > li:nth-child(3),
.fab-menu-bottom-left[data-fab-toggle="hover"]:hover .fab-menu-inner > li:nth-child(3),
.fab-menu-bottom-left[data-fab-state="open"] .fab-menu-inner > li:nth-child(3),
.fab-menu-bottom-right[data-fab-toggle="hover"]:hover .fab-menu-inner > li:nth-child(3),
.fab-menu-bottom-right[data-fab-state="open"] .fab-menu-inner > li:nth-child(3) {
  top: -11.75rem;
}

.fab-menu-bottom[data-fab-toggle="hover"]:hover .fab-menu-inner > li:nth-child(4), .fab-menu-bottom[data-fab-state="open"] .fab-menu-inner > li:nth-child(4),
.fab-menu-bottom-left[data-fab-toggle="hover"]:hover .fab-menu-inner > li:nth-child(4),
.fab-menu-bottom-left[data-fab-state="open"] .fab-menu-inner > li:nth-child(4),
.fab-menu-bottom-right[data-fab-toggle="hover"]:hover .fab-menu-inner > li:nth-child(4),
.fab-menu-bottom-right[data-fab-state="open"] .fab-menu-inner > li:nth-child(4) {
  top: -15.75rem;
}

.fab-menu-bottom[data-fab-toggle="hover"]:hover .fab-menu-inner > li:nth-child(5), .fab-menu-bottom[data-fab-state="open"] .fab-menu-inner > li:nth-child(5),
.fab-menu-bottom-left[data-fab-toggle="hover"]:hover .fab-menu-inner > li:nth-child(5),
.fab-menu-bottom-left[data-fab-state="open"] .fab-menu-inner > li:nth-child(5),
.fab-menu-bottom-right[data-fab-toggle="hover"]:hover .fab-menu-inner > li:nth-child(5),
.fab-menu-bottom-right[data-fab-state="open"] .fab-menu-inner > li:nth-child(5) {
  top: -19.75rem;
}

.fab-menu-inner div[data-fab-label]:after {
  content: attr(data-fab-label);
  position: absolute;
  top: 50%;
  margin-top: -0.5rem;
  right: 4.125rem;
  color: #fff;
  background-color: #000;
  padding: 0.5rem 0.75rem;
  visibility: hidden;
  opacity: 0;
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.12), 0 1px 2px rgba(0, 0, 0, 0.24);
  transition: all ease-in-out 0.3s;
  border-radius: 0.1875rem;
}

.fab-menu-bottom-left .fab-menu-inner div[data-fab-label]:after,
.fab-menu-bottom-right .fab-menu-inner div[data-fab-label]:after {
  margin-top: -1.75rem;
}

.fab-menu-top-left .fab-menu-inner div[data-fab-label]:after,
.fab-menu-bottom-left .fab-menu-inner div[data-fab-label]:after, .fab-menu-inner div[data-fab-label].fab-label-right:after {
  right: auto;
  left: 4.125rem;
}

.fab-menu[data-fab-toggle="hover"] .fab-menu-inner div[data-fab-label]:hover:after,
.fab-menu[data-fab-state="open"] .fab-menu-inner div[data-fab-label]:hover:after {
  visibility: visible;
  opacity: 1;
}

.fab-menu-inner div[data-fab-label].fab-label-light:after {
  background-color: #fff;
  color: #333;
}

.fab-menu-inner div[data-fab-label].fab-label-visible:after {
  visibility: visible;
  opacity: 1;
}

/* ------------------------------------------------------------------------------
*
*  # Fancytree
*
*  Styles for fancytree_all.min.js - tree plugin for jQuery
*
* ---------------------------------------------------------------------------- */
.fancytree-container {
  list-style: none;
  white-space: nowrap;
  padding: 0;
  margin: 0;
  overflow: auto;
  position: relative;
}

.fancytree-container:focus {
  outline: 0;
}

.fancytree-container ul {
  list-style: none;
  padding-left: 1rem;
  margin: 0;
}

.ui-fancytree-disabled .fancytree-container {
  opacity: 0.6;
}

.ui-fancytree-disabled .fancytree-container,
.ui-fancytree-disabled .fancytree-title,
.ui-fancytree-disabled .fancytree-expander {
  cursor: default;
}

.ui-fancytree-disabled .fancytree-treefocus .fancytree-selected .fancytree-title {
  background-color: #eee;
  color: #333;
}

.fancytree-expander:after,
.fancytree-icon:after,
.fancytree-checkbox:after,
.fancytree-drag-helper-img:after,
.fancytree-drop-before:after,
.fancytree-drop-after:after,
.fancytree-loading .fancytree-expander:after,
.fancytree-statusnode-wait .fancytree-icon:after {
  font-family: "icomoon";
  display: inline-block;
  font-size: 1rem;
  line-height: 1;
  vertical-align: top;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.fancytree-icon,
.fancytree-custom-icon,
.fancytree-expander {
  display: inline-block;
  vertical-align: top;
  margin-left: 0.5rem;
  margin-top: 0.37502rem;
  width: 1rem;
  height: 1rem;
}

.fancytree-checkbox {
  vertical-align: top;
  margin-top: 0.25002rem;
  margin-left: 0.5rem;
}

img.fancytree-icon {
  border: 0;
}

.fancytree-expander {
  cursor: pointer;
}

.fancytree-exp-c .fancytree-expander:after {
  content: '\e9c7';
}

.fancytree-exp-cl .fancytree-expander:after {
  content: '\e9c7';
}

.fancytree-exp-cd .fancytree-expander:after,
.fancytree-exp-cdl .fancytree-expander:after {
  content: '\e9c7';
}

.fancytree-exp-e .fancytree-expander:after,
.fancytree-exp-ed .fancytree-expander:after {
  content: '\e9c5';
}

.fancytree-exp-el .fancytree-expander:after,
.fancytree-exp-edl .fancytree-expander:after {
  content: '\e9c5';
}

.fancytree-statusnode-error .fancytree-icon:after {
  content: '\ed63';
}

.fancytree-loading .fancytree-expander,
.fancytree-statusnode-wait .fancytree-icon {
  margin-left: auto;
  margin-right: auto;
  display: inline-block;
  text-align: center;
  width: 1rem;
  height: 1rem;
}

.fancytree-loading .fancytree-expander:after,
.fancytree-statusnode-wait .fancytree-icon:after {
  content: '\ed6c';
  transition: all ease-in-out 0.15s;
}

@media (prefers-reduced-motion: reduce) {
  .fancytree-loading .fancytree-expander:after,
  .fancytree-statusnode-wait .fancytree-icon:after {
    transition: none;
  }
}

.fancytree-ico-c .fancytree-icon:after,
.fancytree-ico-e .fancytree-icon:after {
  content: '\ea1a';
}

.fancytree-has-children.fancytree-ico-c .fancytree-icon:after {
  content: '\ea0f';
}

.fancytree-has-children.fancytree-ico-e .fancytree-icon:after {
  content: '\ea11';
}

.fancytree-ico-cf .fancytree-icon:after,
.fancytree-ico-ef .fancytree-icon:after {
  content: '\ea3d';
}

.fancytree-has-children.fancytree-ico-cf .fancytree-icon:after {
  content: '\ea41';
}

.fancytree-has-children.fancytree-ico-ef .fancytree-icon:after {
  content: '\ea43';
}

.fancytree-checkbox {
  width: 1.25rem;
  height: 1.25rem;
  border: 0.125rem solid #455A64;
  display: inline-block;
  text-align: center;
  position: relative;
  cursor: pointer;
  border-radius: 0.125rem;
}

.fancytree-checkbox:after {
  content: '';
  position: absolute;
}

.fancytree-partsel .fancytree-checkbox:after,
.fancytree-radio .fancytree-selected .fancytree-checkbox:after {
  content: "";
  top: 0.1875rem;
  left: 0.1875rem;
  border: 0.3125rem solid;
  border-color: inherit;
  width: 0;
  height: 0;
}

.fancytree-selected .fancytree-checkbox:after {
  content: "\e600";
  border: 0;
  top: 0rem;
  left: 0rem;
}

.fancytree-radio .fancytree-checkbox,
.fancytree-radio .fancytree-checkbox:after {
  border-radius: 50%;
}

.fancytree-drag-helper .fancytree-title {
  padding-right: 2rem;
  border: 1px solid #ddd;
  background-color: #fff;
  opacity: 0.8;
  margin: 0;
}

.fancytree-drag-helper-img:after {
  position: absolute;
  top: 50%;
  margin-top: -0.5rem;
  right: 0.5rem;
  z-index: 10;
}

.fancytree-drop-accept .fancytree-drag-helper-img:after {
  content: '\ee73';
  color: #4CAF50;
}

.fancytree-drop-reject .fancytree-drag-helper-img:after {
  content: '\ed63';
  color: #F44336;
}

#fancytree-drop-marker.fancytree-drop-before, #fancytree-drop-marker.fancytree-drop-after {
  width: 15rem;
  border-top: 1px solid #999;
  position: absolute !important;
}

.fancytree-drag-source {
  opacity: 0.5;
}

.fancytree-drop-target.fancytree-drop-accept a {
  background-color: #2196F3 !important;
  color: #fff !important;
  text-decoration: none;
}

.fancytree-node {
  display: inherit;
  width: 100%;
  position: relative;
  margin-bottom: 1px;
}

.fancytree-title {
  border: 0;
  padding: 0.25rem 0.5rem;
  margin-left: 0.625rem;
  display: inline-block;
  cursor: pointer;
  border-radius: 0.1875rem;
  transition: all ease-in-out 0.15s;
}

@media (prefers-reduced-motion: reduce) {
  .fancytree-title {
    transition: none;
  }
}

.fancytree-title > input {
  border: 0;
  outline: 0;
  padding: 0;
  background-color: transparent;
}

.fancytree-selected .fancytree-title,
.fancytree-active .fancytree-title {
  background-color: #eee;
  color: #333;
}

.fancytree-treefocus .fancytree-selected .fancytree-title {
  background-color: #2196F3;
  color: #fff;
}

.sidebar:not(.sidebar-light) .fancytree-selected .fancytree-title,
.sidebar:not(.sidebar-light) .fancytree-active .fancytree-title {
  background-color: rgba(255, 255, 255, 0.2);
  color: #fff;
}

.sidebar:not(.sidebar-light) .fancytree-treefocus .fancytree-selected .fancytree-title {
  background-color: #fff;
  color: #333;
}

.fancytree-ext-table .fancytree-node {
  display: inline-block;
  width: auto;
  margin: 0;
}

.fancytree-ext-table .fancytree-title {
  display: inline;
}

.fancytree-ext-table.fancytree-container {
  white-space: normal;
}

.fancytree-ext-table .fancytree-expander,
.fancytree-ext-table .fancytree-icon,
.fancytree-ext-table .fancytree-custom-icon {
  margin-top: 0.09375rem;
}

.fancytree-ext-table .fancytree-checkbox {
  margin: 0 auto;
  float: none;
}

.fancytree-ext-table .uniform-checker {
  display: block;
  margin: 0 auto;
}

.fancytree-ext-table tbody tr {
  transition: all ease-in-out 0.15s;
}

@media (prefers-reduced-motion: reduce) {
  .fancytree-ext-table tbody tr {
    transition: none;
  }
}

.fancytree-ext-table tbody tr td:first-child {
  text-align: center;
}

.fancytree-ext-table tbody tr .fancytree-title {
  background-color: transparent;
  color: inherit !important;
  padding: 0;
  transition: none;
}

@media (prefers-reduced-motion: reduce) {
  .fancytree-ext-table tbody tr .fancytree-title {
    transition: none;
  }
}

.fancytree-ext-table tbody tr.fancytree-focused, .fancytree-ext-table tbody tr.fancytree-active {
  background-color: rgba(0, 0, 0, 0.02);
}

.fancytree-ext-table tbody tr.fancytree-selected {
  background-color: #2196F3;
  color: #fff;
}

.fancytree-ext-table tbody tr.fancytree-selected .fancytree-checkbox,
.fancytree-ext-table tbody tr.fancytree-selected .uniform-checker span {
  color: #fff;
  border-color: #fff;
}

.fancytree-ext-table tbody tr.fancytree-selected .fancytree-title {
  background-color: transparent;
}

.fancytree-treefocus .fancytree-ext-table tbody tr.fancytree-selected .fancytree-title {
  transition: color ease-in-out 0.15s;
}

@media (prefers-reduced-motion: reduce) {
  .fancytree-treefocus .fancytree-ext-table tbody tr.fancytree-selected .fancytree-title {
    transition: none;
  }
}

.fancytree-ext-childcounter .fancytree-childcounter {
  position: absolute;
  right: 0;
  top: 0.25rem;
  color: #999;
}

.fancytree-helper-hidden {
  display: none;
}

.fancytree-helper-indeterminate-cb {
  color: #777;
}

.fancytree-helper-disabled {
  color: #333;
}

.fancytree-helper-spin {
  -webkit-animation: rotation 1s linear infinite;
          animation: rotation 1s linear infinite;
}

/* ------------------------------------------------------------------------------
 *
 *  # Ladda progress buttons
 *
 *  Styles for ladda.min.js - buttons with built-in loading indicators
 *
 * ---------------------------------------------------------------------------- */
.btn-ladda,
.btn-ladda .ladda-spinner,
.btn-ladda .ladda-label {
  transition: all cubic-bezier(0.175, 0.885, 0.32, 1.275) 0.3s;
}

@media (prefers-reduced-motion: reduce) {
  .btn-ladda,
  .btn-ladda .ladda-spinner,
  .btn-ladda .ladda-label {
    transition: none;
  }
}

.btn-ladda .ladda-spinner {
  position: absolute;
  z-index: 2;
  display: inline-block;
  top: 50%;
  pointer-events: none;
  opacity: 0;
}

.btn-ladda .ladda-label {
  z-index: 3;
}

.btn-ladda .ladda-progress {
  position: absolute;
  width: 0;
  height: 100%;
  left: 0;
  top: 0;
  background-color: rgba(0, 0, 0, 0.2);
  visibility: hidden;
  opacity: 0;
  transition: all linear 0.3s;
}

@media (prefers-reduced-motion: reduce) {
  .btn-ladda .ladda-progress {
    transition: none;
  }
}

.btn-ladda[data-loading] .ladda-progress {
  visibility: visible;
  opacity: 1;
}

.btn-ladda[data-style=zoom-in], .btn-ladda[data-style=zoom-out] {
  overflow: hidden;
}

.btn-ladda[data-style=zoom-in],
.btn-ladda[data-style=zoom-in] .ladda-spinner,
.btn-ladda[data-style=zoom-in] .ladda-label, .btn-ladda[data-style=zoom-out],
.btn-ladda[data-style=zoom-out] .ladda-spinner,
.btn-ladda[data-style=zoom-out] .ladda-label {
  transition: 0.3s ease all;
}

@media (prefers-reduced-motion: reduce) {
  .btn-ladda[data-style=zoom-in],
  .btn-ladda[data-style=zoom-in] .ladda-spinner,
  .btn-ladda[data-style=zoom-in] .ladda-label, .btn-ladda[data-style=zoom-out],
  .btn-ladda[data-style=zoom-out] .ladda-spinner,
  .btn-ladda[data-style=zoom-out] .ladda-label {
    transition: none;
  }
}

.btn-ladda[data-style=zoom-in] .ladda-label, .btn-ladda[data-style=zoom-out] .ladda-label {
  position: relative;
  display: inline-block;
}

.btn-ladda[data-style=zoom-in] .ladda-spinner, .btn-ladda[data-style=zoom-out] .ladda-spinner {
  left: 50%;
}

.btn-ladda[data-style=zoom-in][data-loading] .ladda-label, .btn-ladda[data-style=zoom-out][data-loading] .ladda-label {
  opacity: 0;
}

.btn-ladda[data-style=zoom-in][data-loading] .ladda-spinner, .btn-ladda[data-style=zoom-out][data-loading] .ladda-spinner {
  transform: none;
  opacity: 1;
}

.btn-ladda[data-style=zoom-in] .ladda-spinner {
  transform: scale(0.2);
}

.btn-ladda[data-style=zoom-in][data-loading] .ladda-label {
  transform: scale(2.2);
}

.btn-ladda[data-style=zoom-out] .ladda-spinner {
  transform: scale(2.5);
}

.btn-ladda[data-style=zoom-out][data-loading] .ladda-label {
  transform: scale(0.5);
}

.btn-ladda[data-style=expand-left] {
  overflow: hidden;
}

.btn-ladda[data-style=expand-left] .ladda-spinner {
  left: 20px;
}

.btn-ladda[data-style=expand-left][data-loading] {
  padding-left: 35px;
}

.btn-ladda[data-style=expand-left][data-loading] .ladda-spinner {
  opacity: 1;
}

.btn-ladda[data-style=expand-right] {
  overflow: hidden;
}

.btn-ladda[data-style=expand-right] .ladda-spinner {
  right: 20px;
}

.btn-ladda[data-style=expand-right][data-loading] {
  padding-right: 35px;
}

.btn-ladda[data-style=expand-right][data-loading] .ladda-spinner {
  opacity: 1;
}

.btn-ladda[data-style=expand-up] {
  overflow: hidden;
}

.btn-ladda[data-style=expand-up] .ladda-spinner {
  top: -16px;
  left: 50%;
}

.btn-ladda[data-style=expand-up][data-loading] {
  padding-top: 40px;
}

.btn-ladda[data-style=expand-up][data-loading] .ladda-spinner {
  top: 12px;
  margin-top: 8px;
  opacity: 1;
}

.btn-ladda[data-style=expand-down] {
  overflow: hidden;
}

.btn-ladda[data-style=expand-down] .ladda-spinner {
  top: 44px;
  left: 50%;
}

.btn-ladda[data-style=expand-down][data-loading] {
  padding-bottom: 40px;
}

.btn-ladda[data-style=expand-down][data-loading] .ladda-spinner {
  opacity: 1;
}

.btn-ladda[data-style=slide-left] {
  overflow: hidden;
}

.btn-ladda[data-style=slide-left] .ladda-label {
  left: 0;
  position: relative;
}

.btn-ladda[data-style=slide-left] .ladda-spinner {
  right: 0;
}

.btn-ladda[data-style=slide-left][data-loading] .ladda-label {
  left: -100%;
  opacity: 0;
}

.btn-ladda[data-style=slide-left][data-loading] .ladda-spinner {
  right: 50%;
  opacity: 1;
}

.btn-ladda[data-style=slide-right] {
  overflow: hidden;
}

.btn-ladda[data-style=slide-right] .ladda-label {
  right: 0;
  position: relative;
}

.btn-ladda[data-style=slide-right] .ladda-spinner {
  left: 0;
}

.btn-ladda[data-style=slide-right][data-loading] .ladda-label {
  right: -100%;
  opacity: 0;
}

.btn-ladda[data-style=slide-right][data-loading] .ladda-spinner {
  left: 50%;
  opacity: 1;
}

.btn-ladda[data-style=slide-up] {
  overflow: hidden;
}

.btn-ladda[data-style=slide-up] .ladda-label {
  top: 0;
  position: relative;
}

.btn-ladda[data-style=slide-up] .ladda-spinner {
  top: 100%;
  left: 50%;
}

.btn-ladda[data-style=slide-up][data-loading] .ladda-label {
  top: -16px;
  opacity: 0;
}

.btn-ladda[data-style=slide-up][data-loading] .ladda-spinner {
  top: 16px;
  opacity: 1;
}

.btn-ladda[data-style=slide-down] {
  overflow: hidden;
}

.btn-ladda[data-style=slide-down] .ladda-label {
  top: 0;
  position: relative;
}

.btn-ladda[data-style=slide-down] .ladda-spinner {
  top: -100%;
  left: 50%;
}

.btn-ladda[data-style=slide-down][data-loading] .ladda-label {
  top: 16px;
  opacity: 0;
}

.btn-ladda[data-style=slide-down][data-loading] .ladda-spinner {
  top: 16px;
  opacity: 1;
}

.btn-ladda[data-style=fade] {
  overflow: hidden;
}

.btn-ladda[data-style=fade] .ladda-spinner {
  left: 50%;
}

.btn-ladda[data-style=fade][data-loading] .ladda-label {
  opacity: 0;
}

.btn-ladda[data-style=fade][data-loading] .ladda-spinner {
  opacity: 1;
}

.btn-ladda[data-style=radius] {
  overflow: hidden;
  transition: all ease-in-out 0.5s;
}

@media (prefers-reduced-motion: reduce) {
  .btn-ladda[data-style=radius] {
    transition: none;
  }
}

.btn-ladda[data-style=radius] .ladda-spinner {
  left: 50%;
}

.btn-ladda[data-style=radius][data-loading] {
  border-radius: 100px;
}

.btn-ladda[data-style=radius][data-loading] .ladda-label {
  opacity: 0;
}

.btn-ladda[data-style=radius][data-loading] .ladda-spinner {
  opacity: 1;
}

/* ------------------------------------------------------------------------------
 *
 *  # FullCalendar
 *
 *  Styles for fullcalendar.min.js - JavaScript event calendar
 *
 * ---------------------------------------------------------------------------- */
.fc {
  direction: ltr;
  text-align: left;
}

.fc-events-container {
  background-color: #fafafa;
  border: 1px solid #ddd;
  padding: 0.625rem;
  border-radius: 0.1875rem;
}

.fc-events-container .fc-event {
  padding: 0.25rem 0.5rem;
}

.fc-events-container .fc-event + .fc-event {
  margin-top: 0.625rem;
}

.fc-unthemed th,
.fc-unthemed td,
.fc-unthemed thead,
.fc-unthemed tbody,
.fc-unthemed .fc-divider,
.fc-unthemed .fc-row,
.fc-unthemed .fc-content,
.fc-unthemed .fc-popover,
.fc-unthemed .fc-list-view,
.fc-unthemed .fc-list-heading td {
  border-color: #ddd;
}

.fc-unthemed thead,
.fc-unthemed thead td,
.fc-unthemed thead th {
  border-bottom-color: #b7b7b7;
}

.fc-unthemed .fc-popover {
  background-color: #fff;
  border-radius: 0.1875rem;
}

.fc-unthemed td.fc-today {
  background-color: #E8F5E9;
}

.fc-highlight {
  background-color: rgba(221, 221, 221, 0.3);
}

.fc-bgevent {
  background-color: rgba(129, 199, 132, 0.3);
  opacity: 0.3;
}

.fc-nonbusiness {
  background-color: rgba(221, 221, 221, 0.3);
}

.fc-icon {
  display: block;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
  transition: all ease-in-out 0.15s;
}

@media (prefers-reduced-motion: reduce) {
  .fc-icon {
    transition: none;
  }
}

.fc-icon:after {
  display: inline-block;
  font-family: "icomoon";
  line-height: 1;
  font-size: 1rem;
  vertical-align: middle;
  position: relative;
  top: -0.09375rem;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.fc-icon-left-single-arrow:after {
  content: '\e9c0';
}

.fc-rtl .fc-icon-left-single-arrow:after {
  content: '\e9c0';
}

.fc-icon-right-single-arrow:after {
  content: '\e9c3';
}

.fc-rtl .fc-icon-right-single-arrow:after {
  content: '\e9c3';
}

.fc-icon-left-double-arrow:after {
  content: '\000AB';
}

.fc-rtl .fc-icon-left-double-arrow:after {
  content: '\000AB';
}

.fc-icon-right-double-arrow:after {
  content: '\000BB';
}

.fc-rtl .fc-icon-right-double-arrow:after {
  content: '\000BB';
}

.fc-icon-x:after {
  content: '\ed6a';
  font-size: 0.8125rem;
  display: block;
  margin-top: 0.21877rem;
  top: 0;
}

.fc-button {
  margin: 0;
  padding: 0.4375rem 0.875rem;
  white-space: nowrap;
  cursor: pointer;
  transition: all ease-in-out 0.15s;
}

@media (prefers-reduced-motion: reduce) {
  .fc-button {
    transition: none;
  }
}

.fc-button:focus {
  outline: 0;
}

.fc-button::-moz-focus-inner {
  margin: 0;
  padding: 0;
}

.fc-state-default {
  color: #333;
  background-color: #fafafa;
  border: 1px solid #ddd;
}

.fc-state-default.fc-corner-left {
  border-top-left-radius: 0.1875rem;
  border-bottom-left-radius: 0.1875rem;
}

.fc-state-default.fc-corner-right {
  border-top-right-radius: 0.1875rem;
  border-bottom-right-radius: 0.1875rem;
}

.fc-state-down,
.fc-state-hover {
  color: #333;
  background-color: #f5f5f5;
  border-color: #ddd;
}

.fc-state-active {
  background-image: none;
  color: #333;
  background-color: #f5f5f5;
  border-color: #ddd;
}

.fc-state-disabled {
  cursor: default;
  opacity: 0.65;
}

.fc-button-group {
  display: inline-block;
}

.fc .fc-button-group > * {
  float: left;
  margin: 0;
  margin-left: -1px;
}

.fc .fc-button-group > :first-child {
  margin-left: 0;
}

.fc-popover {
  position: absolute;
  border: 1px solid rgba(0, 0, 0, 0.15);
  z-index: 1060;
  box-shadow: 0 0.25rem 0.5rem rgba(0, 0, 0, 0.1);
}

.fc-popover .fc-header {
  padding: 0.9375rem 0.9375rem;
}

.fc-popover .fc-header .fc-title {
  float: left;
}

.fc-popover .fc-header .fc-close {
  cursor: pointer;
  float: right;
  margin-left: 0.625rem;
}

.fc-unthemed .fc-popover .fc-header .fc-close {
  opacity: 0.6;
  transition: opacity ease-in-out 0.15s;
}

@media (prefers-reduced-motion: reduce) {
  .fc-unthemed .fc-popover .fc-header .fc-close {
    transition: none;
  }
}

.fc-unthemed .fc-popover .fc-header .fc-close:hover {
  opacity: 1;
}

.fc-divider {
  border-style: solid;
  border-width: 1px;
}

hr.fc-divider {
  height: 0;
  margin: 0;
  padding: 0;
  border-width: 1px 0;
}

.fc-clear {
  clear: both;
}

.fc-bg,
.fc-bgevent-skeleton,
.fc-highlight-skeleton,
.fc-helper-skeleton {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
}

.fc-bg {
  bottom: 0;
}

.fc-bg table {
  height: 100%;
}

.fc table {
  width: 100%;
  table-layout: fixed;
  border-collapse: collapse;
  border-spacing: 0;
  box-sizing: border-box;
}

.fc th,
.fc td {
  border-style: solid;
  border-width: 1px;
  padding: 0;
  vertical-align: top;
}

.fc th {
  padding: 0.75rem 1.25rem;
  padding-left: 0;
  padding-right: 0;
  font-weight: 500;
  text-align: center;
}

.fc td.fc-today {
  border-style: double;
}

a[data-goto] {
  cursor: pointer;
  color: #333;
}

.fc-row {
  border-style: solid;
  border-width: 0;
  position: relative;
}

.fc-row table {
  border-left: 0;
  border-right: 0;
  border-bottom: 0;
}

.fc-row:first-child table {
  border-top: 0;
}

.fc-row .fc-bg {
  z-index: 1;
}

.fc-row .fc-bgevent-skeleton,
.fc-row .fc-highlight-skeleton {
  bottom: 0;
}

.fc-row .fc-bgevent-skeleton table,
.fc-row .fc-highlight-skeleton table {
  height: 100%;
}

.fc-row .fc-bgevent-skeleton td,
.fc-row .fc-highlight-skeleton td {
  border-color: transparent;
  border: 0;
}

.fc-row .fc-bgevent-skeleton {
  z-index: 2;
}

.fc-row .fc-highlight-skeleton {
  z-index: 3;
}

.fc-row .fc-content-skeleton td,
.fc-row .fc-helper-skeleton td {
  background: none;
  border-bottom: 0;
}

.fc-row .fc-content-skeleton tbody td,
.fc-row .fc-helper-skeleton tbody td {
  border-top: 0;
}

.fc-row .fc-content-skeleton {
  position: relative;
  z-index: 4;
}

.fc-row .fc-helper-skeleton {
  z-index: 5;
}

.fc-scroller {
  -webkit-overflow-scrolling: touch;
}

.fc-scroller > .fc-day-grid,
.fc-scroller > .fc-time-grid {
  position: relative;
  width: 100%;
}

.fc-event {
  position: relative;
  display: block;
  border: 1px solid #039BE5;
  color: #fff !important;
  border-radius: 0.1875rem;
}

.fc-event[href], .fc-event.fc-draggable {
  cursor: pointer;
}

.fc-event .fc-bg {
  z-index: 1;
}

.fc-event .fc-content {
  position: relative;
  z-index: 2;
}

.fc-event .fc-resizer {
  position: absolute;
  z-index: 4;
  display: none;
}

.fc-event.fc-allow-mouse-resize .fc-resizer,
.fc-event.fc-selected .fc-resizer {
  display: block;
}

.fc-event.fc-selected .fc-resizer:before {
  content: "";
  position: absolute;
  z-index: 1070;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 1.75003rem;
  height: 1.75003rem;
}

.fc-event .fc-event.fc-selected {
  z-index: 1070 !important;
}

.fc-event,
.fc-event-dot {
  background-color: #039BE5;
}

.fc-not-allowed,
.fc-not-allowed .fc-event {
  cursor: default;
}

.fc-h-event .fc-end-resizer {
  cursor: e-resize;
  right: -1px;
}

.fc-h-event.fc-selected .fc-end-resizer {
  margin-right: calc(-0.25rem - 1px);
}

.fc-h-event.fc-allow-mouse-resize .fc-resizer {
  width: 0.5rem;
  top: -1px;
  bottom: -1px;
}

.fc-h-event.fc-selected .fc-resizer {
  border-width: 1px;
  border-style: solid;
  border-color: inherit;
  background-color: #fff;
  top: 50%;
  transform: translateY(-50%);
  border-radius: 50%;
  width: 0.5rem;
  height: 0.5rem;
}

.fc-day-grid-event {
  margin: 0.5rem;
  margin-top: 0;
  padding: 0.25rem 0.5rem;
}

.fc-day-grid-event.fc-selected:after {
  content: "";
  position: absolute;
  z-index: 1;
  top: -1px;
  right: -1px;
  bottom: -1px;
  left: -1px;
  background-color: rgba(0, 0, 0, 0.15);
  border-radius: 0.1875rem;
}

.fc-day-grid-event > .fc-content {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.fc-day-grid-event .fc-time {
  font-weight: 500;
}

.fc-day-grid-event.fc-allow-mouse-resize .fc-end-resizer {
  margin-right: -1px;
}

@media (min-width: 768px) {
  .fc-day-grid-event .fc-time {
    float: right;
    padding-left: 0.625rem;
    display: inline-block;
    z-index: 2;
    position: relative;
    background-color: inherit;
  }
  .fc-day-grid-event .fc-title {
    z-index: 1;
    position: relative;
  }
}

a.fc-more {
  margin: 0 0.5rem;
  background-color: #f5f5f5;
  display: block;
  padding: 0.25rem 0.5rem;
  text-align: center;
  font-size: 0.75rem;
  line-height: 1.6667;
  cursor: pointer;
  border-radius: 0.1875rem;
  transition: all ease-in-out 0.15s;
}

@media (prefers-reduced-motion: reduce) {
  a.fc-more {
    transition: none;
  }
}

a.fc-more:hover {
  background-color: #eee;
}

.fc-limited {
  display: none;
}

.fc-day-grid .fc-row {
  z-index: 1;
}

.fc-more-popover {
  z-index: 2;
  width: 15rem;
}

.fc-more-popover .fc-event-container {
  padding: 0.9375rem 0.9375rem;
  padding-top: 0;
}

.fc-now-indicator {
  position: absolute;
}

.fc-unselectable {
  -webkit-touch-callout: none;
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
}

.fc-toolbar {
  text-align: center;
}

.fc-toolbar.fc-header-toolbar {
  margin-bottom: 1.25rem;
}

.fc-toolbar.fc-footer-toolbar {
  margin-top: 1.25rem;
}

.fc-toolbar h2 {
  margin: 0.30769rem 0;
  font-size: 1.0625rem;
}

.fc-toolbar .fc-left {
  float: left;
  width: 33%;
}

.fc-toolbar .fc-right {
  float: right;
  width: 33%;
}

.fc-toolbar .fc-right .fc-button-group {
  float: right;
}

.fc-toolbar .fc-left > .fc-button,
.fc-toolbar .fc-right > .fc-button {
  margin-left: 0.625rem;
}

.fc-toolbar .fc-center {
  display: inline-block;
  vertical-align: middle;
}

.fc-toolbar > * > * {
  float: left;
}

.fc-toolbar > * > :first-child {
  margin-left: 0;
}

.fc-toolbar button {
  position: relative;
}

.fc-toolbar button:focus {
  z-index: 5;
}

.fc-toolbar .fc-state-hover,
.fc-toolbar .ui-state-hover {
  z-index: 2;
}

.fc-toolbar .fc-state-down {
  z-index: 3;
}

.fc-toolbar .fc-state-active,
.fc-toolbar .ui-state-active {
  z-index: 4;
}

.fc-view-container {
  border: 1px solid rgba(0, 0, 0, 0.125);
  border-radius: 0.1875rem;
}

.fc-view-container .fc-view > table th,
.fc-view-container .fc-view > table td {
  border-right-width: 0;
}

.fc-view-container .fc-view > table tr:first-child th:first-child,
.fc-view-container .fc-view > table tr:first-child td:first-child {
  border-left-width: 0;
}

.fc-view-container .fc-view > table .fc-head tr:first-child > th,
.fc-view-container .fc-view > table .fc-head tr:first-child > td {
  border-top: 0;
}

.fc-view-container .fc-view > table .fc-head-container {
  border-top: 0;
  border-bottom: 0;
}

.fc-view-container .fc-view > table .fc-head-container .fc-widget-header {
  border-top: 0;
}

.fc-view-container .fc-view > table .fc-body > tr:first-child > th,
.fc-view-container .fc-view > table .fc-body > tr:first-child > td {
  border-top: 0;
}

.fc-view-container .fc-view > table .fc-body > tr:last-child > th,
.fc-view-container .fc-view > table .fc-body > tr:last-child > td {
  border-bottom: 0;
}

.fc-view-container .fc-view > table .fc-body .fc-row:first-child tr:first-child td,
.fc-view-container .fc-view > table .fc-body .fc-row:first-child tr:first-child th {
  border-top: 0;
}

.fc-view-container *, .fc-view-container *:before, .fc-view-container *:after {
  box-sizing: content-box;
}

.fc-view,
.fc-view > table {
  position: relative;
  z-index: 1;
}

.fc-basicWeek-view .fc-content-skeleton,
.fc-basicDay-view .fc-content-skeleton {
  padding-top: 0.5rem;
  padding-bottom: 0.5rem;
}

.fc-basic-view tbody .fc-row {
  min-height: 6em;
}

.fc-row.fc-rigid {
  overflow: hidden;
}

.fc-row.fc-rigid .fc-content-skeleton {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
}

.fc-basic-view .fc-day-number {
  padding: 0.5rem;
}

.fc-basic-view .fc-week-number {
  color: rgba(51, 51, 51, 0.5);
}

.fc-basic-view td.fc-week-number,
.fc-basic-view th.fc-week-number {
  padding: 0.75rem 1.25rem;
  background-color: #fafafa;
}

.fc-basic-view td.fc-week-number {
  font-size: 0.75rem;
  padding-top: 0.5rem;
  padding-bottom: 0.5rem;
}

.fc-basic-view span.fc-week-number {
  display: inline-block;
  font-size: 0.75rem;
  padding: 0.5rem;
}

.fc-basic-view .fc-day-number {
  text-align: right;
}

.fc-basic-view .fc-day-top .fc-day-number {
  float: right;
}

.fc-other-month.fc-day-top, .fc-other-month.fc-day-number {
  opacity: 0.3;
}

.fc-agenda-view .fc-day-grid {
  position: relative;
  z-index: 2;
}

.fc-agenda-view .fc-day-grid .fc-row {
  min-height: 3em;
}

.fc-agenda-view .fc-day-grid .fc-row .fc-content-skeleton {
  padding-top: 0.5rem;
  padding-bottom: 0;
}

.fc-axis {
  text-align: right;
}

.fc .fc-axis {
  vertical-align: middle;
  padding: 0 0.5rem;
  height: 2.25003rem;
  white-space: nowrap;
}

.fc-time-grid-container,
.fc-time-grid {
  position: relative;
  z-index: 1;
}

.fc-time-grid {
  min-height: 100%;
}

.fc-time-grid table {
  border: 0 hidden transparent;
}

.fc-time-grid > .fc-bg {
  z-index: 1;
}

.fc-time-grid .fc-slats,
.fc-time-grid > hr {
  position: relative;
  z-index: 2;
}

.fc-time-grid .fc-content-col {
  position: relative;
}

.fc-time-grid .fc-content-skeleton {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  z-index: 3;
}

.fc-time-grid .fc-business-container {
  position: relative;
  z-index: 1;
}

.fc-time-grid .fc-bgevent-container {
  position: relative;
  z-index: 2;
}

.fc-time-grid .fc-highlight-container {
  position: relative;
  z-index: 3;
}

.fc-time-grid .fc-event-container {
  position: relative;
  z-index: 4;
}

.fc-time-grid .fc-now-indicator-line {
  z-index: 5;
}

.fc-time-grid .fc-helper-container {
  position: relative;
  z-index: 6;
}

.fc-time-grid .fc-slats td {
  border-bottom: 0;
}

.fc-time-grid .fc-slats .fc-minor td {
  border-top-style: dotted;
}

.fc-time-grid .fc-highlight-container {
  position: relative;
}

.fc-time-grid .fc-highlight {
  position: absolute;
  left: 0;
  right: 0;
}

.fc-time-grid .fc-event-container,
.fc-time-grid .fc-bgevent-container {
  position: relative;
}

.fc-time-grid .fc-event {
  box-shadow: 0 0 0 1px #fff;
}

.fc-time-grid .fc-event,
.fc-time-grid .fc-bgevent {
  position: absolute;
  z-index: 1;
  padding: 0.5rem;
}

.fc-time-grid .fc-bgevent {
  left: 0;
  right: 0;
}

.fc-v-event.fc-not-start {
  border-top-left-radius: 0;
  border-top-right-radius: 0;
}

.fc-v-event.fc-not-end {
  border-bottom-right-radius: 0;
  border-bottom-left-radius: 0;
}

.fc-time-grid-event {
  overflow: hidden;
}

.fc-time-grid-event.fc-selected {
  overflow: visible;
}

.fc-time-grid-event.fc-selected .fc-bg {
  display: none;
}

.fc-time-grid-event .fc-content {
  position: relative;
  overflow: hidden;
}

.fc-time-grid-event .fc-time {
  font-weight: 500;
}

.fc-time-grid-event.fc-short .fc-content {
  white-space: nowrap;
}

.fc-time-grid-event.fc-short .fc-time,
.fc-time-grid-event.fc-short .fc-title {
  display: inline-block;
  vertical-align: top;
}

.fc-time-grid-event.fc-short .fc-time:before {
  content: attr(data-start);
}

.fc-time-grid-event.fc-short .fc-time:after {
  content: "\000A0-\000A0";
}

.fc-time-grid-event.fc-short .fc-time span {
  display: none;
}

.fc-time-grid-event.fc-short .fc-title {
  font-size: 0.75rem;
  padding: 0;
}

.fc-time-grid-event.fc-allow-mouse-resize .fc-resizer {
  z-index: 3;
  left: 0;
  right: 0;
  bottom: 0;
  overflow: hidden;
  line-height: 1;
  text-align: center;
  cursor: s-resize;
  background-color: rgba(0, 0, 0, 0.1);
}

.fc-time-grid-event.fc-allow-mouse-resize .fc-resizer:after {
  content: "=";
  display: inline-block;
  vertical-align: middle;
}

.fc-time-grid-event.fc-selected .fc-resizer {
  border-width: 1px;
  border-style: solid;
  border-color: inherit;
  background-color: #fff;
  left: 50%;
  bottom: 0;
  margin-bottom: calc(-0.25rem - 1px);
  transform: translateX(-50%);
  width: 0.5rem;
  height: 0.5rem;
  border-radius: 50%;
}

.fc-time-grid .fc-now-indicator-line {
  border-top-width: 1px;
  left: 0;
  right: 0;
}

.fc-time-grid .fc-now-indicator-arrow {
  left: 0;
  margin-top: -0.5rem;
  border-width: 0.5rem 0 0.5rem 0.5rem;
  border-top-color: transparent;
  border-bottom-color: transparent;
}

.fc-event-dot {
  display: inline-block;
  width: 0.5rem;
  height: 0.5rem;
  border-radius: 50%;
}

.fc-list-view {
  border-width: 0;
  border-style: solid;
  direction: ltr;
}

.fc .fc-list-table {
  table-layout: auto;
}

.fc-list-table td {
  border-width: 1px 0 0;
  padding: 0.75rem 1.25rem;
}

.fc-list-table tr:first-child td {
  border-top-width: 0;
}

.fc-list-heading {
  border-bottom-width: 1px;
}

.fc-list-heading td {
  font-weight: 500;
}

.fc-list-heading-main {
  float: left;
}

.fc-list-heading-alt {
  float: right;
}

.fc-list-item td {
  transition: all ease-in-out 0.15s;
}

@media (prefers-reduced-motion: reduce) {
  .fc-list-item td {
    transition: none;
  }
}

.fc-list-item.fc-has-url {
  cursor: pointer;
}

.fc-list-item:hover td {
  background-color: rgba(0, 0, 0, 0.03);
}

.fc-list-item-marker,
.fc-list-item-time {
  white-space: nowrap;
  width: 1px;
}

.fc-list-item-marker {
  padding-right: 0;
}

.fc-list-item-title a {
  text-decoration: none;
  color: inherit;
}

.fc-list-empty-wrap2 {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
}

.fc-list-empty-wrap1 {
  display: table;
  width: 100%;
  height: 100%;
}

.fc-list-empty {
  display: table-cell;
  vertical-align: middle;
  text-align: center;
}

.fc-unthemed .fc-list-empty {
  /* theme will provide own background */
  background-color: rgba(221, 221, 221, 0.3);
}

@media (max-width: 767.98px) {
  .fc-toolbar .fc-left,
  .fc-toolbar .fc-left > .fc-button,
  .fc-toolbar .fc-right,
  .fc-toolbar .fc-right > .fc-button,
  .fc-toolbar .fc-left .fc-button-group,
  .fc-toolbar .fc-right .fc-button-group {
    float: none;
    width: auto;
    vertical-align: top;
  }
  .fc-toolbar .fc-left,
  .fc-toolbar .fc-right {
    display: block;
    margin-bottom: 0.625rem;
  }
}

/* ------------------------------------------------------------------------------
 *
 *  # Image cropper
 *
 *  Styles for cropper.min.js - a simple jQuery image cropping plugin
 *
 * ---------------------------------------------------------------------------- */
.image-cropper-container {
  /*rtl:ignore*/
  direction: ltr;
  height: 400px;
  width: 100%;
  overflow: hidden;
  background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQAQMAAAAlPW0iAAAAA3NCSVQICAjb4U/gAAAABlBMVEXMzMz////TjRV2AAAACXBIWXMAAArrAAAK6wGCiw1aAAAAHHRFWHRTb2Z0d2FyZQBBZG9iZSBGaXJld29ya3MgQ1M26LyyjAAAABFJREFUCJlj+M/AgBVhF/0PAH6/D/HkDxOGAAAAAElFTkSuQmCC");
}

.eg-preview .preview {
  /*rtl:ignore*/
  direction: ltr;
}

.eg-preview .preview-lg {
  width: 150px;
  height: 150px;
}

.eg-preview .preview-md {
  width: 120px;
  height: 120px;
}

.eg-preview .preview-sm {
  width: 90px;
  height: 90px;
}

.eg-preview .preview-xs {
  width: 60px;
  height: 60px;
}

.eg-preview .preview-xxs {
  width: 40px;
  height: 40px;
}

.cropper-container {
  /*rtl:ignore*/
  direction: ltr !important;
  font-size: 0;
  line-height: 0;
  position: relative;
  touch-action: none;
  -webkit-tap-highlight-color: transparent;
  -webkit-touch-callout: none;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
}

.cropper-container img {
  display: block;
  width: 100%;
  min-width: 0 !important;
  max-width: none !important;
  height: 100%;
  min-height: 0 !important;
  max-height: none !important;
  image-orientation: 0deg !important;
}

.cropper-wrap-box,
.cropper-canvas,
.cropper-drag-box,
.cropper-crop-box,
.cropper-modal {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
}

.cropper-wrap-box {
  overflow: hidden;
}

.cropper-drag-box {
  background-color: #fff;
  opacity: 0;
}

.cropper-modal {
  background-color: #000;
  opacity: 0.5;
}

.cropper-view-box {
  display: block;
  overflow: hidden;
  width: 100%;
  height: 100%;
}

.cropper-dashed {
  position: absolute;
  display: block;
  border: 0 dashed #eee;
  opacity: 0.5;
}

.cropper-dashed.dashed-h {
  top: 33.33333%;
  /*rtl:ignore*/
  left: 0;
  left: 0;
  width: 100%;
  height: 33.33333%;
  border-top-width: 1px;
  border-bottom-width: 1px;
}

.cropper-dashed.dashed-v {
  top: 0;
  /*rtl:ignore*/
  left: 33.33333%;
  width: 33.33333%;
  height: 100%;
  border-right-width: 1px;
  border-left-width: 1px;
}

.cropper-center {
  position: absolute;
  top: 50%;
  /*rtl:ignore*/
  left: 50%;
  display: block;
  width: 0;
  height: 0;
  opacity: 0.75;
  transform: translate(-50%, -50%);
}

.cropper-center:before, .cropper-center:after {
  content: ' ';
  position: absolute;
  display: block;
  background-color: #eee;
}

.cropper-center:before {
  top: 0;
  /*rtl:ignore*/
  left: -4px;
  width: 9px;
  height: 1px;
}

.cropper-center:after {
  top: -4px;
  /*rtl:ignore*/
  left: 0;
  width: 1px;
  height: 9px;
}

.cropper-face,
.cropper-line,
.cropper-point {
  position: absolute;
  display: block;
  width: 100%;
  height: 100%;
  opacity: 0.1;
}

.cropper-face {
  top: 0;
  /*rtl:ignore*/
  left: 0;
  background-color: #fff;
}

.cropper-line {
  background-color: #2196F3;
}

.cropper-line.line-e {
  top: 0;
  /*rtl:ignore*/
  right: -0.1875rem;
  width: 0.375rem;
  cursor: e-resize;
}

.cropper-line.line-n {
  top: -0.1875rem;
  /*rtl:ignore*/
  left: 0;
  height: 0.375rem;
  cursor: n-resize;
}

.cropper-line.line-w {
  top: 0;
  /*rtl:ignore*/
  left: -0.1875rem;
  width: 0.375rem;
  cursor: w-resize;
}

.cropper-line.line-s {
  bottom: -0.1875rem;
  /*rtl:ignore*/
  left: 0;
  height: 0.375rem;
  cursor: s-resize;
}

.cropper-point {
  background-color: #2196F3;
  opacity: 0.75;
  width: 0.375rem;
  height: 0.375rem;
}

.cropper-point.point-e {
  top: 50%;
  /*rtl:ignore*/
  right: -0.1875rem;
  margin-top: -0.1875rem;
  cursor: e-resize;
}

.cropper-point.point-n {
  top: -0.1875rem;
  /*rtl:ignore*/
  left: 50%;
  margin-left: -0.1875rem;
  cursor: n-resize;
}

.cropper-point.point-w {
  top: 50%;
  /*rtl:ignore*/
  left: -0.1875rem;
  margin-top: -0.1875rem;
  cursor: w-resize;
}

.cropper-point.point-s {
  bottom: -0.1875rem;
  /*rtl:ignore*/
  left: 50%;
  margin-left: -0.1875rem;
  cursor: s-resize;
}

.cropper-point.point-ne {
  top: -0.1875rem;
  /*rtl:ignore*/
  right: -0.1875rem;
  cursor: ne-resize;
}

.cropper-point.point-nw {
  top: -0.1875rem;
  /*rtl:ignore*/
  left: -0.1875rem;
  cursor: nw-resize;
}

.cropper-point.point-sw {
  bottom: -0.1875rem;
  /*rtl:ignore*/
  left: -0.1875rem;
  cursor: sw-resize;
}

.cropper-point.point-se {
  /*rtl:ignore*/
  right: -0.1875rem;
  bottom: -0.1875rem;
  cursor: se-resize;
  opacity: 1;
  width: 0.375rem;
  height: 0.375rem;
}

.cropper-point.point-se:before {
  content: ' ';
  position: absolute;
  /*rtl:ignore*/
  right: -50%;
  bottom: -50%;
  display: block;
  background-color: #2196F3;
  opacity: 0;
  width: 200%;
  height: 200%;
}

.cropper-bg {
  background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQAQMAAAAlPW0iAAAAA3NCSVQICAjb4U/gAAAABlBMVEXMzMz////TjRV2AAAACXBIWXMAAArrAAAK6wGCiw1aAAAAHHRFWHRTb2Z0d2FyZQBBZG9iZSBGaXJld29ya3MgQ1M26LyyjAAAABFJREFUCJlj+M/AgBVhF/0PAH6/D/HkDxOGAAAAAElFTkSuQmCC");
}

.cropper-invisible {
  opacity: 0;
}

.cropper-hide {
  position: absolute;
  display: block;
  width: 0;
  height: 0;
}

.cropper-hidden {
  display: none !important;
}

.cropper-disabled .cropper-drag-box,
.cropper-disabled .cropper-face,
.cropper-disabled .cropper-line,
.cropper-disabled .cropper-point {
  cursor: default;
}

.cropper-move {
  cursor: move;
}

.cropper-crop {
  cursor: crosshair;
}

/* ------------------------------------------------------------------------------
 *
 *  # Fancybox lightbox
 *
 *  Styles for fancybox.min.js - Mac-style "lightbox" plugin
 *
 * ---------------------------------------------------------------------------- */
.fancybox-wrap,
.fancybox-skin,
.fancybox-outer,
.fancybox-inner,
.fancybox-image,
.fancybox-wrap iframe,
.fancybox-wrap object,
.fancybox-nav,
.fancybox-nav span,
.fancybox-tmp {
  padding: 0;
  margin: 0;
  border: 0;
  outline: none;
  vertical-align: top;
}

.fancybox-wrap {
  position: absolute;
  top: 0;
  /*rtl:ignore*/
  left: 0;
  z-index: 8020;
}

.fancybox-skin {
  position: relative;
  background-color: #fff;
  border-radius: 0.1875rem;
}

.fancybox-opened {
  z-index: 8030;
}

.fancybox-opened .fancybox-skin {
  box-shadow: 0 0.25rem 0.5rem rgba(0, 0, 0, 0.1);
}

.fancybox-outer,
.fancybox-inner {
  position: relative;
}

.fancybox-inner {
  overflow: hidden;
}

.fancybox-type-iframe .fancybox-inner {
  -webkit-overflow-scrolling: touch;
}

.fancybox-image,
.fancybox-iframe {
  display: block;
  width: 100%;
  height: 100%;
}

.fancybox-image {
  max-width: 100%;
  max-height: 100%;
}

#fancybox-loading {
  position: fixed;
  top: 50%;
  left: 50%;
  cursor: pointer;
  z-index: 8060;
  color: #fff;
  opacity: 0.8;
}

#fancybox-loading div:after {
  content: '\eb55';
  font-family: "icomoon";
  font-size: 1rem;
  margin-top: -0.5rem;
  margin-left: -0.5rem;
  display: block;
  line-height: 1;
  -webkit-animation: rotation 1s ease infinite;
          animation: rotation 1s ease infinite;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  width: 1rem;
  height: 1rem;
}

.fancybox-close {
  position: absolute;
  right: 0.625rem;
  top: 0.625rem;
  padding: 0.375rem;
  z-index: 8061;
  cursor: pointer;
  line-height: 1;
  color: #fff;
  background-color: rgba(0, 0, 0, 0.5);
  border-radius: 0.1875rem;
  transition: all ease-in-out 0.15s;
}

@media (prefers-reduced-motion: reduce) {
  .fancybox-close {
    transition: none;
  }
}

.fancybox-close:hover, .fancybox-close:focus {
  background-color: #333;
  color: #fff;
}

.fancybox-close:after {
  content: '\ed6a';
  font-family: "icomoon";
  font-size: 1rem;
  display: block;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.fancybox-error {
  color: #F44336;
  font-weight: 500;
  margin: 0;
  padding: 1.25rem;
  white-space: nowrap;
}

.fancybox-title {
  visibility: hidden;
  position: relative;
  z-index: 8050;
}

.fancybox-opened .fancybox-title {
  visibility: visible;
}

.fancybox-title-float-wrap {
  position: absolute;
  bottom: 0;
  right: 50%;
  margin-bottom: -2.25003rem;
  z-index: 8050;
  text-align: center;
  border-bottom-right-radius: 0.1875rem;
  border-bottom-left-radius: 0.1875rem;
}

.fancybox-title-float-wrap .child {
  display: inline-block;
  margin-right: -100%;
  padding: 0.5rem 0.625rem;
  background-color: rgba(0, 0, 0, 0.5);
  color: #fff;
  white-space: nowrap;
}

.fancybox-title-outside-wrap {
  text-align: center;
  margin-top: 0.625rem;
  color: #fff;
}

.fancybox-title-inside-wrap {
  padding: 0.5rem 0.625rem;
}

.fancybox-title-over-wrap {
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  color: #fff;
  padding: 0.5rem 0.625rem;
  background-color: rgba(0, 0, 0, 0.5);
}

.fancybox-nav {
  position: absolute;
  top: 0;
  width: 40%;
  height: 100%;
  cursor: pointer;
  background-color: transparent;
  -webkit-tap-highlight-color: transparent;
  z-index: 8040;
}

.fancybox-nav span {
  position: absolute;
  top: 50%;
  margin-top: -0.875rem;
  cursor: pointer;
  padding: 0.375rem;
  color: #fff;
  background-color: rgba(0, 0, 0, 0.5);
  display: block;
  line-height: 1;
  min-width: 1.75rem;
  text-align: center;
  visibility: hidden;
  opacity: 0;
  z-index: 8040;
  border-radius: 0.1875rem;
  transition: all ease-in-out 0.15s;
}

@media (prefers-reduced-motion: reduce) {
  .fancybox-nav span {
    transition: none;
  }
}

.fancybox-nav span:after {
  font-family: "icomoon";
  display: inline-block;
  font-size: 1rem;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.fancybox-nav span:hover, .fancybox-nav span:focus {
  background-color: #333;
  color: #fff;
}

.fancybox-nav:hover span {
  visibility: visible;
  opacity: 1;
}

.fancybox-prev {
  left: 0;
}

.fancybox-prev span {
  left: 0.625rem;
}

.fancybox-prev span:after {
  content: '\e9c8';
}

.fancybox-next {
  right: 0;
}

.fancybox-next span {
  right: 0.625rem;
}

.fancybox-next span:after {
  content: '\e9cb';
}

.fancybox-lock {
  overflow: visible !important;
  width: auto;
}

.fancybox-lock .fancybox-overlay {
  overflow: auto;
  overflow-y: scroll;
}

.fancybox-lock body {
  overflow: hidden !important;
}

.fancybox-lock-test {
  overflow-y: hidden !important;
}

.fancybox-overlay {
  position: absolute;
  top: 0;
  left: 0;
  overflow: hidden;
  display: none;
  z-index: 8010;
  background-color: rgba(0, 0, 0, 0.8);
}

.fancybox-overlay-fixed {
  position: fixed;
  bottom: 0;
  right: 0;
}

/* ------------------------------------------------------------------------------
 *
 *  # Footable
 *
 *  jQuery plugin that aims to make HTML tables on smaller devices look awesome.
 *
 * ---------------------------------------------------------------------------- */
.footable {
  width: 100%;
}

.footable > thead > tr > th {
  -webkit-touch-callout: none;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
}

.footable.breakpoint > tbody > tr.footable-detail-show > td {
  border-bottom: 0;
}

.footable.breakpoint > tbody > tr.footable-row-detail:hover {
  background-color: transparent;
}

.footable.breakpoint > tbody > tr:hover:not(.footable-row-detail) {
  cursor: pointer;
}

.footable.breakpoint > tbody > tr > .footable-cell-detail {
  background-color: #fafafa;
  border-top: 0;
}

.footable.breakpoint > tbody > tr .footable-toggle:before {
  content: "\e9e4";
  display: inline-block;
  font-family: "icomoon";
  font-size: 1rem;
  vertical-align: middle;
  position: relative;
  top: -0.09375rem;
  line-height: 1;
  padding-right: 0.625rem;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.footable.breakpoint > tbody > tr.footable-detail-show .footable-toggle:before {
  content: "\e9e7";
}

.footable-row-detail-inner {
  display: table;
  table-layout: fixed;
  width: 100%;
}

.footable-row-detail-row {
  display: table-row;
}

.footable-row-detail-group {
  display: block;
  font-weight: 500;
  margin-top: 1.25rem;
  margin-bottom: 0.5rem;
}

.footable-row-detail-group:first-child {
  margin-top: 0.5rem;
}

.footable-row-detail-name {
  display: table-cell;
  font-weight: 500;
  padding-right: 2.5rem;
}

.footable-row-detail-value {
  display: table-cell;
  padding: 0.5rem 0;
}

/* ------------------------------------------------------------------------------
 *
 *  # Handsontable
 *
 *  Styles for handsontable.min.js - JavaScript Spreadsheet library
 *
 * ---------------------------------------------------------------------------- */
/*rtl:begin:ignore*/
.hot-container {
  position: relative;
  box-shadow: 0 0 0 1px #ddd;
  overflow: hidden;
  text-align: left;
}

.hot-container.hot-scrollable {
  height: 22.5rem;
}

.hot-container:not(.hot-scrollable) > .handsontable > .ht_master > .wtHolder {
  height: 100% !important;
}

@media (max-width: 767.98px) {
  .hot-container {
    overflow-x: hidden;
    overflow-y: auto;
  }
  .hot-container .ht_master .wtHolder {
    max-width: 100%;
    min-width: auto;
  }
  .hot-container:not(.hot-scrollable) .wtHolder {
    height: 100% !important;
  }
}

.handsontable {
  position: relative;
  direction: ltr;
}

.handsontable .hide {
  display: none;
}

.handsontable .relative {
  position: relative;
}

.handsontable.htAutoSize {
  visibility: hidden;
  left: -99000px;
  position: absolute;
  top: -99000px;
}

.handsontable .wtHider {
  position: relative;
  width: 0;
}

.handsontable .wtSpreader {
  position: relative;
  width: 0;
  height: auto;
}

.handsontable .htDimmed {
  color: #999;
}

.handsontable table,
.handsontable tbody,
.handsontable thead,
.handsontable td,
.handsontable th,
.handsontable input,
.handsontable textarea,
.handsontable div {
  box-sizing: content-box;
}

.handsontable input,
.handsontable textarea {
  min-height: initial;
}

.handsontable table.htCore {
  border-collapse: separate;
  border-spacing: 0;
  margin: 0;
  border-width: 0;
  table-layout: fixed;
  width: 0;
  outline-width: 0;
  max-width: none;
  max-height: none;
}

.handsontable col, .handsontable col.rowHeader {
  width: 5rem;
}

.handsontable th,
.handsontable td {
  position: relative;
  border-top-width: 0;
  border-left-width: 0;
  border-right: 1px solid #ddd;
  border-bottom: 1px solid #ddd;
  height: 1.875rem;
  empty-cells: show;
  padding: 0 0.25rem;
  overflow: hidden;
  outline-width: 0;
  white-space: pre-line;
}

.handsontable td:not([class*=bg-]) {
  background-color: #fff;
}

.handsontable td.htInvalid {
  background-color: #FFEBEE !important;
}

.handsontable td.htNoWrap {
  white-space: nowrap;
}

.handsontable td.active {
  background-color: rgba(0, 0, 0, 0.015);
}

.handsontable td.area {
  background-color: #E3F2FD;
}

.handsontable th {
  text-align: center;
  font-weight: normal;
  white-space: nowrap;
}

.handsontable th:not([class*=bg-]) {
  background-color: #f5f5f5;
}

.handsontable thead th {
  padding: 0;
}

.handsontable thead th .relative {
  padding: 0 0.25rem;
}

.handsontable tbody th.ht__highlight,
.handsontable thead th.ht__highlight {
  background-color: #efefef;
}

.handsontable.ht__selection--columns thead th.ht__highlight,
.handsontable.ht__selection--rows tbody th.ht__highlight {
  background-color: #E3F2FD;
}

.handsontable tr:first-child th.htNoFrame,
.handsontable th:first-child.htNoFrame,
.handsontable th.htNoFrame {
  border-left-width: 0;
  background-color: #fff;
  border-color: #fff;
}

.handsontable th:first-child,
.handsontable th:nth-child(2),
.handsontable td:first-of-type,
.handsontable .htNoFrame + th,
.handsontable .htNoFrame + td {
  border-left: 1px solid #ddd;
}

.handsontable.htRowHeaders thead tr th:nth-child(2) {
  border-left: 1px solid #ddd;
}

.handsontable tr:first-child th,
.handsontable tr:first-child td {
  border-top: 1px solid #ddd;
}

.ht_master:not(.innerBorderLeft):not(.emptyColumns) ~ .handsontable tbody tr th,
.ht_master:not(.innerBorderLeft):not(.emptyColumns) ~ .handsontable:not(.ht_clone_top) thead tr th:first-child {
  border-right-width: 0;
}

.ht_master:not(.innerBorderTop) thead tr:last-child th,
.ht_master:not(.innerBorderTop) thead tr.lastChild th,
.ht_master:not(.innerBorderTop) ~ .handsontable thead tr:last-child th,
.ht_master:not(.innerBorderTop) ~ .handsontable thead tr.lastChild th {
  border-bottom-width: 0;
}

.htRowHeaders .ht_master.innerBorderLeft ~ .ht_clone_top_left_corner th:nth-child(2),
.htRowHeaders .ht_master.innerBorderLeft ~ .ht_clone_left td:first-of-type {
  border-left-width: 0;
}

.ht_master tbody tr:first-child td {
  border-top-color: transparent;
}

.ht_clone_top tr:first-child th,
.ht_clone_top tr:first-child td {
  border-top-color: transparent;
}

.ht_clone_left thead tr:first-child th,
.ht_clone_left tbody tr:first-child td,
.ht_clone_left tbody tr:first-child th,
.ht_clone_top_left_corner thead tr:first-child th,
.ht_clone_top_left_corner tbody tr:first-child td,
.ht_clone_top_left_corner tbody tr:first-child th {
  border-top-color: transparent;
}

.handsontable th:first-child,
.handsontable td:first-child {
  border-left-color: transparent;
}

.ht_master td:last-child,
.ht_clone_top th:last-child,
.ht_clone_top td:last-child {
  border-right-color: transparent;
}

.ht_master tbody tr:last-child th,
.ht_master tbody tr:last-child td,
.ht_clone_left tbody tr:last-child th,
.ht_clone_left tbody tr:last-child td {
  border-bottom-color: transparent;
}

.htRowHeaders.htColumnHeaders .ht_clone_top_left_corner tbody tr:first-child th,
.htRowHeaders.htColumnHeaders .ht_clone_left tbody tr:first-child th {
  border-top-color: #ddd;
}

.htColumnHeaders .handsontable tr:first-child td {
  border-top-color: #ddd;
}

.manualColumnResizer.active,
.manualRowResizer.active {
  display: block;
  z-index: 199;
}

.manualColumnResizer:hover, .manualColumnResizer.active,
.manualRowResizer:hover,
.manualRowResizer.active {
  background-color: rgba(0, 0, 0, 0.015);
}

.manualColumnResizer {
  position: fixed;
  top: 0;
  cursor: col-resize;
  z-index: 110;
  width: 0.3125rem;
  height: 1.875rem;
}

.manualRowResizer {
  position: fixed;
  left: 0;
  cursor: row-resize;
  z-index: 110;
  height: 0.3125rem;
  width: 3.75rem;
}

.manualColumnResizerGuide {
  position: fixed;
  right: 0;
  top: 0;
  background-color: rgba(0, 0, 0, 0.015);
  display: none;
  width: 0;
  border-right: 1px dashed #ddd;
  margin-left: 0.3125rem;
}

.manualRowResizerGuide {
  position: fixed;
  left: 0;
  bottom: 0;
  background-color: rgba(0, 0, 0, 0.015);
  display: none;
  height: 0;
  border-bottom: 1px dashed #ddd;
  margin-top: 0.3125rem;
}

.handsontable .columnSorting {
  position: relative;
  cursor: pointer;
}

.handsontable .columnSorting:before, .handsontable .columnSorting:after {
  font-family: "icomoon";
  font-size: 0.75rem;
  position: absolute;
  display: inline-block;
  top: 50%;
  transform: translateY(-50%);
  right: -1.625rem;
  line-height: 1;
  opacity: 0.5;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  transition: opacity ease-in-out 0.15s;
}

@media (prefers-reduced-motion: reduce) {
  .handsontable .columnSorting:before, .handsontable .columnSorting:after {
    transition: none;
  }
}

.handsontable .columnSorting:before {
  content: '\e9c1';
  margin-top: 0.25rem;
}

.handsontable .columnSorting:after {
  content: '\e9c2';
  margin-top: -0.25rem;
}

.handsontable .columnSorting.ascending:before {
  content: none;
}

.handsontable .columnSorting.ascending:after {
  margin-top: 0;
}

.handsontable .columnSorting.descending:before {
  margin-top: 0;
}

.handsontable .columnSorting.descending:after {
  content: none;
}

.handsontable .columnSorting:hover:before, .handsontable .columnSorting:hover:after {
  opacity: 1;
}

.wtBorder {
  position: absolute;
  font-size: 0;
}

.wtBorder.hidden {
  display: none !important;
}

.wtBorder.corner {
  font-size: 0;
  cursor: crosshair;
}

.htBorder.htFillBorder {
  background-color: #2196F3;
  width: 1px;
  height: 1px;
}

.handsontableInput {
  border: 0;
  outline-width: 0;
  margin: 0;
  padding: 0 0.3125rem;
  padding-top: 0.0625rem;
  font-family: inherit;
  height: 1.875rem;
  line-height: 1.875rem;
  font-size: inherit;
  resize: none;
  display: block;
  width: auto !important;
  background-color: #fff;
  box-shadow: 0 0 0 2px #2196F3 inset;
}

.handsontableInputHolder {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 100;
}

.htSelectEditor {
  -webkit-appearance: menulist-button !important;
  position: absolute;
  width: auto;
  outline: 0;
  border-radius: 0;
}

.htSubmenu {
  position: relative;
}

.htSubmenu > div:after {
  content: '\e9c7';
  font-family: "icomoon";
  position: absolute;
  top: 50%;
  margin-top: -0.5rem;
  right: 1rem;
  font-size: 1rem;
  line-height: 1;
  opacity: 0.8;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.handsontable .htLeft {
  text-align: left;
}

.handsontable .htCenter {
  text-align: center;
}

.handsontable .htRight {
  text-align: right;
}

.handsontable .htJustify {
  text-align: justify;
}

.handsontable .htTop {
  vertical-align: top;
}

.handsontable .htMiddle {
  vertical-align: middle;
}

.handsontable .htBottom {
  vertical-align: bottom;
}

.htPlaceholder {
  color: #999;
}

.htAutocompleteArrow {
  cursor: default;
  text-indent: -9999999px;
  line-height: 1;
  position: absolute;
  top: 50%;
  right: 0.3em;
  margin-top: -0.15em;
  display: inline-block;
  margin-right: 0.3em;
  border-top: 0.3em dashed;
  border-right: 0.3em solid transparent;
  border-left: 0.3em solid transparent;
  opacity: 0.75;
}

.handsontable td:hover .htAutocompleteArrow,
.handsontable th:hover .htAutocompleteArrow {
  opacity: 1;
}

.handsontable td.area .htAutocompleteArrow {
  color: #E3F2FD;
}

.htCheckboxRendererInput {
  display: inline-block;
  vertical-align: middle;
}

.htCheckboxRendererInput.noValue {
  opacity: 0.5;
}

.htCheckboxRendererLabel {
  cursor: pointer;
  display: inline-block;
  width: 100%;
  margin-bottom: 0;
}

.htCheckboxRendererLabel > .htCheckboxRendererInput {
  margin-right: 0.625rem;
}

.handsontable.hide-tween {
  -webkit-animation: opacity-hide 0.3s;
          animation: opacity-hide 0.3s;
  -webkit-animation-fill-mode: forwards;
          animation-fill-mode: forwards;
}

.handsontable.show-tween {
  -webkit-animation: opacity-show 0.3s;
          animation: opacity-show 0.3s;
  -webkit-animation-fill-mode: forwards;
          animation-fill-mode: forwards;
}

@-webkit-keyframes opacity-hide {
  from {
    opacity: 1;
  }
  to {
    opacity: 0;
  }
}

@keyframes opacity-hide {
  from {
    opacity: 1;
  }
  to {
    opacity: 0;
  }
}

@-webkit-keyframes opacity-show {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}

@keyframes opacity-show {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}

.handsontable.listbox {
  margin: 0;
}

.handsontable.listbox .ht_master table {
  border-collapse: separate;
  border: 1px solid #ddd;
  background-color: #fff;
}

.handsontable.listbox th,
.handsontable.listbox tr:first-child th,
.handsontable.listbox tr:last-child th,
.handsontable.listbox tr:first-child td,
.handsontable.listbox td {
  border: 0;
}

.handsontable.listbox tr,
.handsontable.listbox th,
.handsontable.listbox td {
  transition: all ease-in-out 0.15s;
}

@media (prefers-reduced-motion: reduce) {
  .handsontable.listbox tr,
  .handsontable.listbox th,
  .handsontable.listbox td {
    transition: none;
  }
}

.handsontable.listbox th,
.handsontable.listbox td {
  white-space: nowrap;
  text-overflow: ellipsis;
}

.handsontable.listbox td.htDimmed {
  cursor: pointer;
  color: inherit;
  font-style: inherit;
}

.handsontable.listbox .wtBorder {
  visibility: hidden;
}

.handsontable.listbox tr td.current,
.handsontable.listbox tr:hover td {
  background-color: #f5f5f5;
}

.changeType {
  border: 0;
  background-color: transparent;
  padding: 0;
  float: right;
  margin-right: 0.25rem;
  line-height: 1rem;
  margin-top: 0.12502rem;
  cursor: pointer;
  opacity: 0.75;
}

.changeType:hover {
  opacity: 1;
}

.changeTypeMenu {
  position: absolute;
  border: 1px solid rgba(0, 0, 0, 0.15);
  background-color: #fff;
  padding: 0.5rem 0;
  display: none;
  width: 11.25rem;
  z-index: 1000;
}

.changeTypeMenu li {
  list-style: none;
  padding: 0.5rem 1rem;
  padding-right: 2.5rem;
  cursor: pointer;
  position: relative;
  transition: all ease-in-out 0.15s;
}

@media (prefers-reduced-motion: reduce) {
  .changeTypeMenu li {
    transition: none;
  }
}

.changeTypeMenu li:hover {
  background-color: #f5f5f5;
}

.changeTypeMenu li.active:after {
  content: '\e600';
  font-family: "icomoon";
  position: absolute;
  right: 1rem;
  top: 50%;
  margin-top: -0.5rem;
  display: inline-block;
  font-size: 1rem;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.ht_clone_top {
  z-index: 101;
}

.ht_clone_left {
  z-index: 102;
}

.ht_clone_top_left_corner,
.ht_clone_bottom_left_corner {
  z-index: 103;
}

.ht_clone_debug {
  z-index: 103;
}

.handsontable td.htSearchResult {
  background-color: #FFF3E0;
}

.htBordered {
  border-width: 1px;
}

.htBordered.htTopBorderSolid {
  border-top-style: solid;
  border-top-color: #ddd;
}

.htBordered.htRightBorderSolid {
  border-right-style: solid;
  border-right-color: #ddd;
}

.htBordered.htBottomBorderSolid {
  border-bottom-style: solid;
  border-bottom-color: #ddd;
}

.htBordered.htLeftBorderSolid {
  border-left-style: solid;
  border-left-color: #ddd;
}

.handsontable thead tr:nth-last-child(2) th.htGroupIndicatorContainer {
  border-bottom: 1px solid #ddd;
  padding-bottom: 0.3125rem;
}

.handsontable tbody tr th:nth-last-child(2),
.ht_clone_top_left_corner thead tr th:nth-last-child(2) {
  border-right: 1px solid #ddd;
}

.htCollapseButton {
  line-height: 0.625rem;
  text-align: center;
  border: 0;
  cursor: pointer;
  margin-bottom: 0.1875rem;
  position: relative;
  width: 0.625rem;
  height: 0.625rem;
  border-radius: 0.1875rem;
}

.htCollapseButton:after {
  content: "";
  height: 300%;
  width: 1px;
  display: block;
  background-color: #ccc;
  margin-left: 0.25rem;
  position: absolute;
  bottom: 0.625rem;
}

thead .htCollapseButton {
  position: absolute;
  top: 0.3125rem;
  right: 0.3125rem;
  background-color: #fff;
}

thead .htCollapseButton:after {
  height: 1px;
  width: 700%;
  right: 0.625rem;
  top: 0.25rem;
}

.handsontable th .htExpandButton {
  position: absolute;
  line-height: 0.625rem;
  text-align: center;
  border: 0;
  cursor: pointer;
  top: 0;
  display: none;
  width: 0.625rem;
  height: 0.625rem;
  border-radius: 0.1875rem;
}

.handsontable th .htExpandButton.clickable {
  display: block;
}

.handsontable thead th .htExpandButton {
  top: 0.3125rem;
}

.collapsibleIndicator {
  position: absolute;
  top: 50%;
  transform: translate(0%, -50%);
  right: 0.3125rem;
  border: 0;
  line-height: 0.625rem;
  color: #333;
  font-size: 0.8125rem;
  cursor: pointer;
  background-color: #eee;
  width: 0.625rem;
  height: 0.625rem;
  border-radius: 100px;
}

.handsontable col.hidden {
  width: 0 !important;
}

.handsontable table tr th.lightRightBorder {
  border-right: 1px solid white;
}

.handsontable tr.hidden,
.handsontable tr.hidden td,
.handsontable tr.hidden th {
  display: none;
}

.ht_master,
.ht_clone_left,
.ht_clone_top,
.ht_clone_bottom {
  overflow: hidden;
}

.ht_master .wtHolder {
  overflow: auto;
}

.ht_clone_left .wtHolder {
  overflow-x: hidden;
  overflow-y: auto;
}

.ht_clone_top .wtHolder,
.ht_clone_bottom .wtHolder {
  overflow-x: hidden;
  overflow-y: hidden;
}

.wtDebugHidden {
  display: none;
}

.wtDebugVisible {
  display: block;
  -webkit-animation-duration: 0.5s;
          animation-duration: 0.5s;
  -webkit-animation-name: wtFadeInFromNone;
          animation-name: wtFadeInFromNone;
}

@keyframes wtFadeInFromNone {
  0% {
    display: none;
    opacity: 0;
  }
  1% {
    display: block;
    opacity: 0;
  }
  100% {
    display: block;
    opacity: 1;
  }
}

@-webkit-keyframes wtFadeInFromNone {
  0% {
    display: none;
    opacity: 0;
  }
  1% {
    display: block;
    opacity: 0;
  }
  100% {
    display: block;
    opacity: 1;
  }
}

.handsontable.mobile,
.handsontable.mobile .wtHolder {
  -webkit-touch-callout: none;
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
  -webkit-overflow-scrolling: touch;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
}

.htMobileEditorContainer {
  display: none;
  position: absolute;
  top: 0;
  width: 70%;
  height: 3.375rem;
  background-color: #f5f5f5;
  border: 1px solid #ddd;
  z-index: 999;
  -webkit-text-size-adjust: none;
  box-sizing: border-box;
  border-radius: 100px;
}

.htMobileEditorContainer.active {
  display: block;
}

.htMobileEditorContainer .inputs {
  position: absolute;
  right: 13.13rem;
  bottom: 0.625rem;
  top: 0.625rem;
  left: 0.875rem;
  height: 2.25003rem;
}

.htMobileEditorContainer .inputs textarea {
  font-size: 0.8125rem;
  border: 1px solid #ddd;
  -webkit-appearance: none;
  position: absolute;
  left: 0.875rem;
  right: 0.875rem;
  top: 0;
  bottom: 0;
  padding: 0.4375rem;
  box-shadow: none;
}

.htMobileEditorContainer .cellPointer {
  position: absolute;
  top: -0.8125rem;
  height: 0;
  width: 0;
  left: 1.875rem;
  border-left: 0.8125rem solid transparent;
  border-right: 0.8125rem solid transparent;
  border-bottom: 0.8125rem solid #eee;
}

.htMobileEditorContainer .cellPointer.hidden {
  display: none;
}

.htMobileEditorContainer .cellPointer:before {
  content: '';
  display: block;
  position: absolute;
  top: 0.125rem;
  height: 0;
  width: 0;
  left: -0.8125rem;
  border-left: 0.8125rem solid transparent;
  border-right: 0.8125rem solid transparent;
  border-bottom: 0.8125rem solid #f5f5f5;
}

.htMobileEditorContainer .moveHandle {
  position: absolute;
  top: 0.625rem;
  left: 0.3125rem;
  width: 1.875rem;
  bottom: 0px;
  cursor: move;
  z-index: 9999;
}

.htMobileEditorContainer .moveHandle:after {
  content: "..\a..\a..\a..";
  white-space: pre;
  line-height: 0.625rem;
  font-size: 1.25rem;
  display: inline-block;
  margin-top: -0.5rem;
  color: #eee;
}

.htMobileEditorContainer .positionControls {
  width: 12.81rem;
  position: absolute;
  right: 0.3125rem;
  top: 0;
  bottom: 0;
}

.htMobileEditorContainer .positionControls > div {
  width: 3.125rem;
  height: 100%;
  float: left;
}

.htMobileEditorContainer .positionControls > div:after {
  content: " ";
  display: block;
  width: 1rem;
  height: 1rem;
  text-align: center;
  line-height: 3.125rem;
}

.htMobileEditorContainer .leftButton:after,
.htMobileEditorContainer .rightButton:after,
.htMobileEditorContainer .upButton:after,
.htMobileEditorContainer .downButton:after {
  margin: 1.313rem 0 0 1.313rem;
  transform-origin: 0.3125rem;
}

.htMobileEditorContainer .leftButton:after {
  border-top: 0.125rem solid #2196F3;
  border-left: 0.125rem solid #2196F3;
  transform: rotate(-45deg);
}

.htMobileEditorContainer .leftButton:active:after {
  border-color: #ddd;
}

.htMobileEditorContainer .rightButton:after {
  border-top: 0.125rem solid #2196F3;
  border-left: 0.125rem solid #2196F3;
  transform: rotate(135deg);
}

.htMobileEditorContainer .rightButton:active:after {
  border-color: #ddd;
}

.htMobileEditorContainer .upButton:after {
  border-top: 0.125rem solid #2196F3;
  border-left: 0.125rem solid #2196F3;
  transform: rotate(45deg);
}

.htMobileEditorContainer .upButton:active:after {
  border-color: #ddd;
}

.htMobileEditorContainer .downButton:after {
  border-top: 0.125rem solid #2196F3;
  border-left: 0.125rem solid #2196F3;
  transform: rotate(225deg);
}

.htMobileEditorContainer .downButton:active:after {
  border-color: #ddd;
}

.topLeftSelectionHandle:not(.ht_master .topLeftSelectionHandle),
.topLeftSelectionHandle-HitArea:not(.ht_master .topLeftSelectionHandle-HitArea) {
  z-index: 9999;
}

.topLeftSelectionHandle,
.topLeftSelectionHandle-HitArea,
.bottomRightSelectionHandle,
.bottomRightSelectionHandle-HitArea {
  left: -10000px;
  top: -10000px;
}

.htCommentCell {
  position: relative;
}

.htCommentCell:after {
  content: '';
  position: absolute;
  top: 0;
  right: 0;
  border-left: 0.375rem solid transparent;
  border-top: 0.375rem solid red;
}

.htComments {
  display: none;
  z-index: 1070;
  position: absolute;
}

.htCommentTextArea {
  background-color: #fff;
  border: 1px solid rgba(0, 0, 0, 0.15);
  padding: 0.4375rem 0.875rem;
  box-sizing: border-box;
  -webkit-appearance: none;
  box-shadow: 0 0.25rem 0.5rem rgba(0, 0, 0, 0.1);
  border-bottom-right-radius: 0.1875rem;
  border-bottom-left-radius: 0.1875rem;
}

.htCommentTextArea:focus {
  outline: 0;
}

.htContextMenu {
  display: none;
  position: absolute;
  z-index: 1051;
}

.htContextMenu .ht_clone_top,
.htContextMenu .ht_clone_left,
.htContextMenu .ht_clone_corner,
.htContextMenu .ht_clone_debug {
  display: none;
}

.htContextMenu table.htCore {
  border: 1px solid rgba(0, 0, 0, 0.15);
  background-color: #fff;
  padding: 0.5rem 0;
  border-radius: 0.1875rem;
  box-shadow: 0 0.25rem 0.5rem rgba(0, 0, 0, 0.1);
}

.htContextMenu .wtBorder {
  visibility: hidden;
}

.htContextMenu table tbody tr td {
  position: relative;
  border-width: 0;
  padding: 0.25rem 1rem;
  cursor: pointer;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  transition: all ease-in-out 0.15s;
}

@media (prefers-reduced-motion: reduce) {
  .htContextMenu table tbody tr td {
    transition: none;
  }
}

.htContextMenu table tbody tr td:first-child {
  border: 0;
}

.htContextMenu table tbody tr td.htDimmed {
  color: #333;
}

.htContextMenu table tbody tr td.current, .htContextMenu table tbody tr td.zeroclipboard-is-hover {
  background-color: #f5f5f5;
}

.htContextMenu table tbody tr td.htSeparator {
  height: 0;
  padding: 0;
  background-color: transparent;
  cursor: default;
}

.htContextMenu table tbody tr td.htSeparator > div {
  height: 1px;
  background-color: rgba(0, 0, 0, 0.15);
  margin: 0.5rem 0;
}

.htContextMenu table tbody tr td.htDisabled {
  color: #999;
}

.htContextMenu table tbody tr td.htDisabled, .htContextMenu table tbody tr td.htDisabled:hover {
  cursor: default;
}

.htContextMenu table tbody tr td div span.selected {
  position: absolute;
  right: 1rem;
  top: 50%;
  margin-top: -0.5rem;
  font-size: 0;
  color: #777;
}

.htContextMenu table tbody tr td div span.selected:after {
  content: '\e600';
  font-family: "icomoon";
  display: inline-block;
  font-size: 1rem;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.htContextMenu table tbody tr.htHidden {
  display: none;
}

.htContextMenu .ht_master .wtHolder {
  overflow: hidden;
}

.htContextMenuSub_Alignment {
  margin-top: -0.5rem;
  margin-left: -1px;
}

.global-zeroclipboard-container,
.global-zeroclipboard-flash-bridge {
  cursor: pointer;
}

textarea#HandsontableCopyPaste {
  position: fixed !important;
  top: 0 !important;
  right: 100% !important;
  overflow: hidden;
  opacity: 0;
  outline: 0 none !important;
}

.ht__manualColumnMove.after-selection--columns thead th.ht__highlight,
.ht__manualColumnMove.on-moving--columns,
.ht__manualColumnMove.on-moving--columns thead th.ht__highlight,
.ht__manualRowMove.after-selection--rows tbody th.ht__highlight,
.ht__manualRowMove.on-moving--rows,
.ht__manualRowMove.on-moving--rows tbody th.ht__highlight {
  cursor: move;
}

.ht__manualColumnMove.on-moving--columns .manualColumnResizer,
.ht__manualRowMove.on-moving--rows .manualRowResizer {
  display: none;
}

.ht__manualColumnMove--guideline,
.ht__manualColumnMove--backlight,
.ht__manualRowMove--guideline,
.ht__manualRowMove--backlight {
  position: absolute;
  height: 100%;
  display: none;
}

.ht__manualColumnMove--guideline,
.ht__manualRowMove--guideline {
  background-color: rgba(0, 0, 0, 0.015);
  z-index: 105;
}

.ht__manualColumnMove--guideline {
  width: 2px;
  margin-left: -1px;
  top: 0;
}

.ht__manualRowMove--guideline {
  height: 2px;
  margin-top: -1px;
  left: 0;
}

.ht__manualColumnMove--backlight,
.ht__manualRowMove--backlight {
  background-color: rgba(0, 0, 0, 0.015);
  display: none;
  z-index: 105;
  pointer-events: none;
}

.on-moving--columns.show-ui .ht__manualColumnMove--guideline,
.on-moving--columns .ht__manualColumnMove--backlight,
.on-moving--rows.show-ui .ht__manualRowMove--guideline,
.on-moving--rows .ht__manualRowMove--backlight {
  display: block;
}

.pika-single {
  z-index: 1000;
  display: block;
  position: relative;
  background-color: #fff;
  border: 1px solid rgba(0, 0, 0, 0.15);
  margin-top: -1px;
  margin-left: -1px;
  background-clip: padding-box;
  border-radius: 0.1875rem;
  box-shadow: 0 0.25rem 0.5rem rgba(0, 0, 0, 0.1);
}

.pika-single::after {
  display: block;
  clear: both;
  content: "";
}

.pika-single.is-hidden {
  display: none;
}

.pika-single.is-bound {
  position: absolute;
}

.pika-lendar {
  float: left;
  max-width: 15.63rem;
  margin: 0.9375rem;
}

.pika-title {
  position: relative;
  text-align: center;
}

.pika-title select {
  cursor: pointer;
  position: absolute;
  z-index: 999;
  margin: 0;
  left: 0;
  height: 2.25003rem;
  padding: 0.4375rem 0.875rem;
  border: 1px solid #ddd;
  opacity: 0;
}

.pika-label {
  display: inline-block;
  position: relative;
  z-index: 1000;
  overflow: hidden;
  margin: 0;
  padding-top: 0.46875rem;
  padding-bottom: 0.46875rem;
  font-size: 0.9375rem;
  line-height: 1;
}

.pika-label + .pika-label {
  margin-left: 0.46875rem;
  top: -0.0625rem;
  font-size: 0.8125rem;
  color: #999;
}

.pika-prev,
.pika-next {
  display: block;
  position: relative;
  border: 0;
  padding: 0.4375rem;
  font-size: 0;
  background-color: transparent;
  cursor: pointer;
  border-radius: 0.1875rem;
  transition: all ease-in-out 0.15s;
}

@media (prefers-reduced-motion: reduce) {
  .pika-prev,
  .pika-next {
    transition: none;
  }
}

.pika-prev:after,
.pika-next:after {
  font-family: "icomoon";
  display: block;
  font-size: 1rem;
  width: 1rem;
  text-align: center;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.pika-prev:hover,
.pika-next:hover {
  color: #333;
  background-color: #f5f5f5;
}

.pika-prev.is-disabled,
.pika-next.is-disabled {
  cursor: default;
  opacity: .2;
}

.pika-prev {
  float: left;
}

.pika-prev:after {
  content: '\e9c8';
}

.pika-next {
  float: right;
}

.pika-next:after {
  content: '\e9cb';
}

.pika-table {
  width: 100%;
  border-collapse: collapse;
  border-spacing: 0;
  border: 0;
  table-layout: fixed;
}

.pika-table th,
.pika-table td {
  position: relative;
}

.pika-table th {
  text-align: center;
  font-weight: 400;
  padding-top: 0.9375rem;
  padding-bottom: 0.4375rem;
  font-size: 0.75rem;
  color: #999;
}

.pika-table abbr {
  border-bottom: 0;
  cursor: default;
  text-decoration: none;
}

.pika-button {
  display: block;
  border: 0;
  margin: 0;
  width: 100%;
  padding: 0.4375rem;
  text-align: center;
  background-color: transparent;
  cursor: pointer;
  border-radius: 0.1875rem;
  transition: all ease-in-out 0.15s;
}

@media (prefers-reduced-motion: reduce) {
  .pika-button {
    transition: none;
  }
}

.pika-button:hover {
  color: #333;
  background-color: #f5f5f5;
}

.is-today .pika-button {
  color: #333;
  background-color: #f5f5f5;
}

.is-selected .pika-button {
  color: #fff;
  background-color: #26A69A;
}

.is-today .pika-button:before,
.is-selected .pika-button:before,
.is-today.is-selected .pika-button:before {
  content: "";
  position: absolute;
  top: 0.14583rem;
  right: 0.14583rem;
  border-top: 0.4375rem solid #fff;
  border-left: 0.4375rem solid transparent;
  width: 0;
  height: 0;
}

.is-startrange .pika-button,
.is-endrange .pika-button {
  color: #fff;
  background-color: #26A69A;
}

.is-inrange .pika-button {
  color: #333;
  background-color: #f5f5f5;
}

.is-disabled .pika-button {
  pointer-events: none;
  cursor: default;
  opacity: 0.5;
}

.pika-select {
  display: inline-block;
}

.pika-week {
  font-size: 0.75rem;
  color: #999;
}

/*rtl:end:ignore*/
/* ------------------------------------------------------------------------------
 *
 *  # Datatables library
 *
 *  Add advanced interaction controls to any HTML table
 *
 * ---------------------------------------------------------------------------- */
.dataTable {
  margin: 0;
  max-width: none;
}

.dataTable thead th,
.dataTable thead td {
  outline: 0;
  position: relative;
}

.dataTable thead .sorting_asc,
.dataTable thead .sorting_desc,
.dataTable thead .sorting {
  cursor: pointer;
}

.dataTable thead .sorting,
.dataTable thead .sorting_asc,
.dataTable thead .sorting_desc,
.dataTable thead .sorting_asc_disabled,
.dataTable thead .sorting_desc_disabled {
  padding-right: 2.5rem;
}

.dataTable thead .sorting:before,
.dataTable thead .sorting:after,
.dataTable thead .sorting_asc:after,
.dataTable thead .sorting_desc:after,
.dataTable thead .sorting_asc_disabled:after,
.dataTable thead .sorting_desc_disabled:after {
  content: '';
  font-family: "icomoon";
  position: absolute;
  top: 50%;
  right: 1.25rem;
  font-size: 0.75rem;
  margin-top: -0.375rem;
  display: inline-block;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.dataTable thead .sorting:before {
  content: '\e9c1';
  margin-top: -0.125rem;
  opacity: 0.5;
}

.dataTable thead .sorting:after {
  content: '\e9c2';
  margin-top: -0.625rem;
  opacity: 0.5;
}

.dataTable thead .sorting_asc:after {
  content: '\e9c2';
  opacity: 1;
}

.dataTable thead .sorting_desc:after {
  content: '\e9c1';
  opacity: 1;
}

.dataTable thead .sorting_asc_disabled:after {
  content: '\e9c2';
  opacity: 0.25;
}

.dataTable thead .sorting_desc_disabled:after {
  content: '\e9c1';
  opacity: 0.25;
}

.dataTable tbody + thead > tr:first-child > th,
.dataTable tbody + thead > tr:first-child > td,
.dataTable tbody + tfoot + thead > tr:first-child > th,
.dataTable tbody + tfoot + thead > tr:first-child > td {
  border-top: 0;
}

.dataTable tbody th,
.dataTable tbody td {
  outline: 0;
}

.dataTable tbody th.active,
.dataTable tbody td.active {
  background-color: rgba(0, 0, 0, 0.03);
}

.dataTable .dataTables_empty {
  text-align: center;
}

.dataTable.table-bordered {
  border-collapse: collapse;
}

.dataTables_wrapper {
  position: relative;
  clear: both;
}

.dataTables_wrapper::after {
  display: block;
  clear: both;
  content: "";
}

.dataTables_wrapper .table-bordered {
  border-top: 0;
}

.dataTables_wrapper + .card-body {
  border-top: 1px solid #ddd;
}

.dataTables_processing {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 100%;
  height: 40px;
  margin-left: -50%;
  margin-top: -25px;
  padding-top: 20px;
  text-align: center;
  background-color: #fff;
  background: linear-gradient(to right, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0.9) 25%, rgba(255, 255, 255, 0.9) 75%, rgba(255, 255, 255, 0) 100%);
}

.datatable-header,
.datatable-footer {
  padding: 1.25rem 1.25rem 0 1.25rem;
}

.datatable-header::after,
.datatable-footer::after {
  display: block;
  clear: both;
  content: "";
}

.datatable-header > div:first-child,
.datatable-footer > div:first-child {
  margin-left: 0;
}

.card-body .datatable-header, .card-body
.datatable-footer {
  padding-left: 0;
  padding-right: 0;
}

.datatable-header-accent,
.datatable-footer-accent {
  background-color: rgba(0, 0, 0, 0.02);
}

.datatable-header {
  border-bottom: 1px solid #ddd;
}

.datatable-footer {
  border-top: 1px solid #b7b7b7;
}

.dataTables_length {
  float: right;
  display: inline-block;
  margin: 0 0 1.25rem 1.25rem;
}

.dataTables_length > label {
  margin-bottom: 0;
}

.dataTables_length > label > span:first-child {
  float: left;
  margin: 0.5rem 0.83333rem;
  margin-left: 0;
}

.dataTables_length select {
  height: 2.25003rem;
  padding: 0.4375rem 0.875rem;
  font-size: 0.8125rem;
  line-height: 1.5385;
  color: #333;
  background-color: #fff;
  border: 1px solid #ddd;
  outline: 0;
}

.length-left .dataTables_length {
  float: left;
}

.dataTables_length .select2-container {
  width: auto;
}

.dataTables_length .select2-choice {
  min-width: 3.75rem;
}

.dataTables_filter {
  position: relative;
  display: block;
  float: left;
  margin: 0 0 1.25rem 1.25rem;
}

.dataTables_filter > label {
  margin-bottom: 0;
  position: relative;
}

.dataTables_filter > label:after {
  content: "\e98e";
  font-family: "icomoon";
  font-size: 0.75rem;
  display: inline-block;
  position: absolute;
  top: 50%;
  right: 0.875rem;
  margin-top: -0.375rem;
  line-height: 1;
  opacity: 0.5;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.dataTables_filter > label > span {
  float: left;
  margin: 0.5rem 0.83333rem;
  margin-left: 0;
}

.dataTables_filter input {
  outline: 0;
  width: 12.5rem;
  padding: 0.4375rem 0.875rem;
  padding-right: 2rem;
  font-size: 0.8125rem;
  line-height: 1.5385;
  color: #333;
  background-color: #fff;
  border: 1px solid #ddd;
  border-radius: 0.1875rem;
}

.dataTables_filter input::-webkit-input-placeholder {
  color: #999;
  opacity: 1;
}

.dataTables_filter input::-moz-placeholder {
  color: #999;
  opacity: 1;
}

.dataTables_filter input:-ms-input-placeholder {
  color: #999;
  opacity: 1;
}

.dataTables_filter input::-ms-input-placeholder {
  color: #999;
  opacity: 1;
}

.dataTables_filter input::placeholder {
  color: #999;
  opacity: 1;
}

.filter-right .dataTables_filter {
  float: right;
}

.dataTables_info {
  float: left;
  padding: 0.4375rem 0;
  margin-bottom: 1.25rem;
}

.info-right .dataTables_info {
  float: right;
}

.dataTables_paginate {
  float: right;
  text-align: right;
  margin: 0 0 1.25rem 1.25rem;
}

.dataTables_paginate .paginate_button {
  display: inline-block;
  padding: 0.4375rem;
  min-width: 2.25003rem;
  margin-left: 0.125rem;
  text-align: center;
  text-decoration: none;
  cursor: pointer;
  color: #333;
  outline: 0;
  border: 1px solid transparent;
  border-radius: 0.1875rem;
  transition: all ease-in-out 0.15s;
}

@media (prefers-reduced-motion: reduce) {
  .dataTables_paginate .paginate_button {
    transition: none;
  }
}

.dataTables_paginate .paginate_button:first-child {
  margin-left: 0;
}

.dataTables_paginate .paginate_button:hover, .dataTables_paginate .paginate_button:focus {
  background-color: #f5f5f5;
}

.dataTables_paginate .paginate_button.current, .dataTables_paginate .paginate_button.current:hover, .dataTables_paginate .paginate_button.current:focus {
  color: #fff;
  background-color: #37474F;
}

.dataTables_paginate .paginate_button.disabled, .dataTables_paginate .paginate_button.disabled:hover, .dataTables_paginate .paginate_button.disabled:focus {
  cursor: default;
  background-color: #fff;
  color: #999;
}

.dataTables_paginate.paging_simple .paginate_button {
  padding-left: 0.875rem;
  padding-right: 0.875rem;
}

.dataTables_paginate.paging_simple .paginate_button:not(.disabled):hover, .dataTables_paginate.paging_simple .paginate_button:not(.disabled):focus {
  color: #fff;
  background-color: #37474F;
}

.paginate-left .dataTables_paginate {
  float: left;
}

.paging_simple .paginate_button:hover, .paging_simple .paginate_button:focus {
  color: #fff;
  background-color: #2196F3;
}

.dataTables_scroll {
  clear: both;
}

.dataTables_scroll .dataTables_scrollHead table {
  border-bottom: 0;
}

.dataTables_scroll .dataTables_scrollHead th,
.dataTables_scroll .dataTables_scrollHead td {
  white-space: nowrap;
}

.dataTables_scroll .dataTables_scrollBody {
  -webkit-overflow-scrolling: touch;
}

.dataTables_scroll .dataTables_scrollBody table {
  border-bottom: 0;
}

.dataTables_scroll .dataTables_scrollBody table thead th[class*=sorting]:before, .dataTables_scroll .dataTables_scrollBody table thead th[class*=sorting]:after {
  content: none;
}

.dataTables_scroll .dataTables_scrollBody table tbody tr:first-child > td {
  border-top: 0;
}

.dataTables_scroll .dataTables_scrollBody th,
.dataTables_scroll .dataTables_scrollBody td {
  white-space: nowrap;
}

.dataTables_scroll .dataTables_scrollBody th > .dataTables_sizing,
.dataTables_scroll .dataTables_scrollBody td > .dataTables_sizing {
  height: 0;
  overflow: hidden;
  margin: 0;
  padding: 0;
}

.card-body + .dataTables_wrapper,
.card-body + * > .dataTables_wrapper {
  border-top: 1px solid #ddd;
}

.card-body > .dataTables_wrapper .datatable-footer {
  border-top: 0;
}

.card-body > .dataTables_wrapper .datatable-footer .dataTables_length,
.card-body > .dataTables_wrapper .datatable-footer .dataTables_filter,
.card-body > .dataTables_wrapper .datatable-footer .dataTables_info,
.card-body > .dataTables_wrapper .datatable-footer .dataTables_paginate {
  margin-bottom: 0;
}

.card-header:not([class*=bg-]) + .dataTables_wrapper > .datatable-header {
  padding-top: 0;
}

.card > .dataTables_wrapper .table-bordered {
  border: 0;
}

.card > .dataTables_wrapper .table-bordered > thead > tr > td:first-child,
.card > .dataTables_wrapper .table-bordered > thead > tr > th:first-child,
.card > .dataTables_wrapper .table-bordered > tbody > tr > td:first-child,
.card > .dataTables_wrapper .table-bordered > tbody > tr > th:first-child,
.card > .dataTables_wrapper .table-bordered > tfoot > tr > td:first-child,
.card > .dataTables_wrapper .table-bordered > tfoot > tr > th:first-child {
  border-left: 0;
}

.card > .dataTables_wrapper .table-bordered > thead > tr > td:last-child,
.card > .dataTables_wrapper .table-bordered > thead > tr > th:last-child,
.card > .dataTables_wrapper .table-bordered > tbody > tr > td:last-child,
.card > .dataTables_wrapper .table-bordered > tbody > tr > th:last-child,
.card > .dataTables_wrapper .table-bordered > tfoot > tr > td:last-child,
.card > .dataTables_wrapper .table-bordered > tfoot > tr > th:last-child {
  border-right: 0;
}

.card > .dataTables_wrapper .table-bordered > tbody > tr:last-child > th,
.card > .dataTables_wrapper .table-bordered > tbody > tr:last-child > td {
  border-bottom: 0;
}

.datatable-scroll-lg,
.datatable-scroll,
.datatable-scroll-sm {
  min-height: .01%;
}

.datatable-scroll-wrap {
  width: 100%;
  min-height: .01%;
  overflow-x: auto;
}

@media (max-width: 767.98px) {
  .datatable-scroll-sm {
    width: 100%;
    overflow-x: scroll;
  }
  .datatable-scroll-sm th,
  .datatable-scroll-sm td {
    white-space: nowrap;
  }
}

@media (max-width: 991.98px) {
  .datatable-scroll {
    width: 100%;
    overflow-x: scroll;
  }
  .datatable-scroll th,
  .datatable-scroll td {
    white-space: nowrap;
  }
}

@media (max-width: 1199.98px) {
  .datatable-scroll-lg {
    width: 100%;
    overflow-x: scroll;
  }
  .datatable-scroll-lg th,
  .datatable-scroll-lg td {
    white-space: nowrap;
  }
}

@media (max-width: 767.98px) {
  .dataTables_info,
  .dataTables_paginate,
  .dataTables_length,
  .dataTables_filter,
  .DTTT_container,
  .ColVis {
    float: none !important;
    text-align: center;
    margin-left: 0;
  }
  .dataTables_info,
  .dataTables_paginate {
    margin-top: 0;
  }
  .datatable-header {
    text-align: center;
  }
}

/* ------------------------------------------------------------------------------
 *
 *  # Columns reorder
 *
 *  Easily modify the column order of a table through drop-and-drag of column headers
 *
 * ---------------------------------------------------------------------------- */
.DTCR_clonedTable {
  background-color: rgba(255, 255, 255, 0.8);
  z-index: 202;
  cursor: move;
}

.DTCR_clonedTable th,
.DTCR_clonedTable td {
  border: 1px solid #ddd !important;
}

.DTCR_pointer {
  width: 1px;
  background-color: #2196F3;
  z-index: 201;
}

/* ------------------------------------------------------------------------------
 *
 *  # Row Reorder extension
 *
 *  RowReorder adds the ability for rows in a DataTable to be reordered through
 *  user interaction with the table.
 *
 * ---------------------------------------------------------------------------- */
.dt-rowReorder-float {
  position: absolute !important;
  table-layout: static;
  outline: 1px dashed #777;
  outline-offset: -1px;
  background-color: #fff;
  z-index: 1030;
  cursor: move;
  opacity: 0.9;
}

.dt-rowReorder-moving {
  outline: 1px solid #777;
  outline-offset: -1px;
}

.dt-rowReorder-noOverflow {
  overflow-x: hidden;
}

.dataTable td.reorder {
  text-align: center;
  cursor: move;
}

/* ------------------------------------------------------------------------------
 *
 *  # Fixed columns
 *
 *  Extension that "freezes" in place the left most columns in a scrolling DataTable
 *
 * ---------------------------------------------------------------------------- */
.DTFC_ScrollWrapper thead th {
  white-space: nowrap;
}

.DTFC_Cloned {
  background-color: #fff;
  border-bottom: 0;
}

.DTFC_LeftWrapper .DTFC_LeftHeadWrapper,
.DTFC_LeftWrapper .DTFC_LeftBodyWrapper,
.DTFC_LeftWrapper .DTFC_LeftFootWrapper {
  border-right: 1px solid #ddd;
}

.DTFC_RightWrapper .DTFC_RightHeadWrapper,
.DTFC_RightWrapper .DTFC_RightBodyWrapper,
.DTFC_RightWrapper .DTFC_RightFootWrapper {
  border-left: 1px solid #ddd;
}

.DTFC_LeftBodyWrapper .DTFC_Cloned thead th:before, .DTFC_LeftBodyWrapper .DTFC_Cloned thead th:after,
.DTFC_RightBodyWrapper .DTFC_Cloned thead th:before,
.DTFC_RightBodyWrapper .DTFC_Cloned thead th:after {
  content: none;
}

.DTFC_LeftBodyWrapper .DTFC_Cloned tbody > tr:first-child > td,
.DTFC_LeftBodyWrapper .DTFC_Cloned tbody > tr:first-child > th,
.DTFC_RightBodyWrapper .DTFC_Cloned tbody > tr:first-child > td,
.DTFC_RightBodyWrapper .DTFC_Cloned tbody > tr:first-child > th {
  border-top: 0;
}

.DTFC_Blocker {
  background-color: white;
}

/* ------------------------------------------------------------------------------
 *
 *  # Fixed Header extension
 *
 *  This extension lets your users quickly determine what each column refers to
 *  rather than needing to scroll back to the top of the table.
 *
 * ---------------------------------------------------------------------------- */
.fixedHeader-floating,
.fixedHeader-locked {
  background-color: #fff;
  margin-top: 0;
  margin-bottom: 0;
}

.fixedHeader-floating {
  position: fixed;
}

.fixedHeader-floating + .fixedHeader-floating,
.fixedHeader-locked + .fixedHeader-floating {
  border-top: 0 !important;
}

@media (max-width: 767.98px) {
  .fixedHeader-floating {
    display: none;
  }
}

.fixedHeader-locked {
  position: absolute;
}

@media (max-width: 767.98px) {
  .fixedHeader-locked {
    display: none;
  }
}

@media print {
  table.fixedHeader-floating {
    display: none;
  }
}

/* ------------------------------------------------------------------------------
 *
 *  # Autofill extension
 *
 *  Spreadsheets such as Excel and Google Docs have a very handy data duplication
 *  option of an auto fill tool
 *
 * ---------------------------------------------------------------------------- */
.dt-autofill-handle {
  position: absolute;
  z-index: 102;
  border: 1px solid #2196F3;
  background-color: #2196F3;
  width: 0.5rem;
  height: 0.5rem;
}

.dt-autofill-select {
  position: absolute;
  z-index: 1001;
  background-color: #2196F3;
  background-image: repeating-linear-gradient(45deg, transparent, transparent 0.3125rem, rgba(255, 255, 255, 0.75) 0.3125rem, rgba(255, 255, 255, 0.75) 0.625rem);
}

.dt-autofill-select.top, .dt-autofill-select.bottom {
  height: 1px;
}

.dt-autofill-select.left, .dt-autofill-select.right {
  width: 1px;
}

.dt-autofill-list {
  position: fixed;
  top: 50%;
  left: 50%;
  width: 31.25rem;
  margin-left: -15.63rem;
  background-color: #fff;
  border: 1px solid rgba(0, 0, 0, 0.2);
  z-index: 1050;
  padding: 0.5rem 0;
  border-radius: 0.1875rem;
}

.dt-autofill-list ul {
  display: table;
  margin: 0;
  padding: 0;
  list-style: none;
  width: 100%;
}

.dt-autofill-list ul li {
  display: table-row;
  transition: all ease-in-out 0.15s;
}

@media (prefers-reduced-motion: reduce) {
  .dt-autofill-list ul li {
    transition: none;
  }
}

.dt-autofill-list ul li:hover {
  color: #333;
  background-color: #f5f5f5;
}

.dt-autofill-list .dt-autofill-question {
  display: table-cell;
  padding: 0.5rem 1rem;
}

.dt-autofill-list .dt-autofill-question input[type=number] {
  padding: 0.375rem;
  width: 1.875rem;
  margin: -0.125rem 0;
}

.dt-autofill-list .dt-autofill-button {
  display: table-cell;
  padding: 0.5rem 1rem;
  text-align: right;
}

.dt-autofill-list .dt-autofill-button .btn {
  padding: 0.1875rem;
  background-color: #2196F3;
  color: #fff;
  font-size: 0;
}

.dt-autofill-list .dt-autofill-button .btn:after {
  content: '\e9c3';
  font-family: "icomoon";
  display: block;
  font-size: 1rem;
  width: 1rem;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.dt-autofill-list .dt-autofill-button .btn:hover {
  opacity: 0.85;
}

.dt-autofill-background {
  position: fixed;
  top: 0;
  left: 0;
  background-color: #000;
  z-index: 1040;
  opacity: 0.5;
  width: 100%;
  height: 100%;
}

/* ------------------------------------------------------------------------------
 *
 *  # Select extension
 *
 *  Adds item selection capabilities to a DataTable
 *
 * ---------------------------------------------------------------------------- */
.dataTable tbody > tr.selected,
.dataTable tbody > tr > .selected {
  background-color: #E8F5E9;
}

.dataTables_wrapper .select-info,
.dataTables_wrapper .select-item {
  margin-left: 0.625rem;
}

@media (max-width: 767.98px) {
  .dataTables_wrapper .select-info,
  .dataTables_wrapper .select-item {
    margin-left: 0;
    display: block;
  }
}

.dataTable tbody .select-checkbox {
  position: relative;
}

.dataTable tbody .select-checkbox:before, .dataTable tbody .select-checkbox:after {
  display: inline-block;
  color: #455A64;
  position: absolute;
  top: 50%;
  left: 50%;
  cursor: pointer;
}

.dataTable tbody .select-checkbox:before {
  content: '';
  background-color: #fff;
  width: 1.25rem;
  height: 1.25rem;
  margin-top: -0.625rem;
  margin-left: -0.625rem;
  border: 0.125rem solid #455A64;
  border-radius: 0.125rem;
}

.dataTable tbody .selected .select-checkbox:after {
  content: "\e600";
  font-family: "icomoon";
  font-size: 1rem;
  line-height: 1;
  margin-top: -0.5rem;
  margin-left: -0.5rem;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

/* ------------------------------------------------------------------------------
 *
 *  # Buttons extension
 *
 *  The Buttons extension for DataTables provides a common set of options, API
 *  methods and styling to display buttons that will interact with a DataTable
 *
 * ---------------------------------------------------------------------------- */
.dt-buttons-full .dt-buttons {
  float: none;
  display: flex;
  justify-content: center;
  margin: 0;
  border-bottom: 1px solid #ddd;
  padding-top: 1.25rem;
  padding-bottom: 0.625rem;
  background-color: rgba(0, 0, 0, 0.02);
}

.dt-buttons-full .dt-buttons > .btn {
  margin-bottom: 0.625rem;
  float: none;
}

.dt-buttons {
  position: relative;
  float: right;
  display: flex;
  flex-wrap: wrap;
  margin: 0 0 1.25rem 1.25rem;
}

.dt-buttons-left .dt-buttons {
  float: left;
}

.dt-buttons > .btn {
  border-radius: 0;
}

.dt-buttons > .btn:first-child {
  border-top-left-radius: 0.1875rem;
  border-bottom-left-radius: 0.1875rem;
}

.dt-buttons > .btn:last-of-type {
  border-top-right-radius: 0.1875rem;
  border-bottom-right-radius: 0.1875rem;
}

.dt-buttons > .btn + .btn {
  margin-left: -1px;
}

@media (max-width: 767.98px) {
  .dt-buttons {
    float: none;
    text-align: center;
    display: block;
  }
  .dt-buttons .btn {
    float: none;
  }
}

.dt-button-background {
  position: fixed;
  top: 0;
  left: 0;
  height: 100%;
  width: 100%;
  background-color: #000;
  z-index: 1040;
  opacity: 0.5;
}

.dt-button-collection {
  position: absolute;
  background-color: #fff;
  display: block;
  z-index: 1050;
  padding: 0.5rem 0;
  overflow: hidden;
  min-width: 11.25rem;
  -moz-column-gap: 0.125rem;
       column-gap: 0.125rem;
  border-radius: 0.1875rem;
  box-shadow: 0 0.25rem 0.5rem rgba(0, 0, 0, 0.1);
}

.dt-button-collection:not(.fixed) {
  top: 100% !important;
  left: auto !important;
  right: 0 !important;
}

.dt-button-collection > .dt-button {
  padding: 0.5rem 1rem;
  color: #333;
  background-color: transparent;
  border: 0;
  display: block;
  outline: 0;
  width: 100%;
  text-align: left;
  cursor: pointer;
  transition: all ease-in-out 0.15s;
}

@media (prefers-reduced-motion: reduce) {
  .dt-button-collection > .dt-button {
    transition: none;
  }
}

.dt-button-collection > .dt-button + .dt-button {
  margin-top: 1px;
}

.dt-button-collection > .dt-button:hover, .dt-button-collection > .dt-button:focus {
  color: #333;
  background-color: #f5f5f5;
}

.dt-button-collection > .dt-button.active {
  color: #fff;
  background-color: #2196F3;
}

.dt-button-collection.fixed {
  position: fixed;
  top: 50%;
  left: 50%;
  margin-left: -4.6875rem;
  padding-left: 0.5rem;
  padding-right: 0.5rem;
}

.dt-button-collection.fixed.two-column {
  margin-left: -9.375rem;
}

.dt-button-collection.fixed.three-column {
  margin-left: -14.065rem;
}

.dt-button-collection.fixed.four-column {
  margin-left: -18.75rem;
}

.dt-button-collection > * {
  -moz-column-break-inside: avoid;
       break-inside: avoid;
}

.dt-button-collection.two-column {
  width: 18.75rem;
  -moz-column-count: 2;
       column-count: 2;
}

.dt-button-collection.three-column {
  width: 28.13rem;
  -moz-column-count: 3;
       column-count: 3;
}

.dt-button-collection.four-column {
  width: 37.5rem;
  -moz-column-count: 4;
       column-count: 4;
}

/* ------------------------------------------------------------------------------
 *
 *  # Key Table extension
 *
 *  KeyTable provides Excel like cell navigation on any table. Events (focus, blur,
 *  action etc) can be assigned to individual cells, columns, rows or all cells.
 *
 * ---------------------------------------------------------------------------- */
.dataTable th.focus,
.dataTable td.focus {
  outline: 2px solid #2196F3;
  outline-offset: -1px;
}

.dataTable th.focus-success,
.dataTable td.focus-success {
  background-color: #E8F5E9;
  outline-color: #4CAF50;
}

.dataTable th.focus-info,
.dataTable td.focus-info {
  background-color: #E3F2FD;
  outline-color: #2196F3;
}

.dataTable th.focus-warning,
.dataTable td.focus-warning {
  background-color: #FBE9E7;
  outline-color: #FF5722;
}

.dataTable th.focus-danger,
.dataTable td.focus-danger {
  background-color: #FFEBEE;
  outline-color: #F44336;
}

/* ------------------------------------------------------------------------------
 *
 *  # Datatables Scroller
 *
 *  Drawing the rows required for the current display only, for fast operation
 *
 * ---------------------------------------------------------------------------- */
.DTS tbody th,
.DTS tbody td {
  white-space: nowrap;
}

.DTS .DTS_Loading {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 12.5rem;
  height: 1.25rem;
  margin-top: -1.25rem;
  margin-left: -6.25rem;
  z-index: 1;
  border: 1px solid #ddd;
  padding: 1.25rem 0;
  text-align: center;
  background-color: rgba(255, 255, 255, 0.5);
}

.DTS .dataTables_scrollHead,
.DTS .dataTables_scrollFoot {
  background-color: #fff;
}

.DTS .dataTables_scrollBody {
  z-index: 2;
}

/* ------------------------------------------------------------------------------
 *
 *  # Responsive extension
 *
 *  Optimise the table's layout for different screen sizes through the dynamic 
 *  insertion and removal of columns from the table
 *
 * ---------------------------------------------------------------------------- */
.dtr-inline.collapsed tbody tr td:before,
.dtr-inline.collapsed tbody tr th:before {
  margin-right: 0.625rem;
}

.dtr-inline.collapsed tbody tr td:first-child,
.dtr-inline.collapsed tbody tr th:first-child {
  position: relative;
  cursor: pointer;
  white-space: nowrap;
}

.dtr-inline.collapsed tbody tr td:first-child.dataTables_empty:before,
.dtr-inline.collapsed tbody tr th:first-child.dataTables_empty:before {
  display: none;
}

.dtr-column tbody td.control,
.dtr-column tbody th.control {
  position: relative;
  cursor: pointer;
}

.dtr-inline.collapsed tbody tr td:first-child:before,
.dtr-inline.collapsed tbody tr th:first-child:before,
.dtr-column tbody tr td.control:before,
.dtr-column tbody tr th.control:before {
  content: '\e9e4';
  font-family: "icomoon";
  display: inline-block;
  font-size: 1rem;
  width: 1rem;
  line-height: 1;
  position: relative;
  top: -0.09375rem;
  vertical-align: middle;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.dataTable.dtr-inline.collapsed tbody tr.parent td:first-child:before,
.dataTable.dtr-inline.collapsed tbody tr.parent th:first-child:before,
.dataTable.dtr-column tbody tr.parent td.control:before,
.dataTable.dtr-column tbody tr.parent th.control:before {
  content: '\e9e7';
}

.dtr-inline.collapsed tbody tr.child td:before {
  display: none;
}

.dataTable tr.child:hover {
  background-color: transparent;
}

.dataTable tr.child .dtr-title {
  display: table-cell;
  font-weight: 500;
  padding-right: 2.5rem;
}

.dataTable tr.child .dtr-data {
  display: table-cell;
  padding: 0.5rem 0;
}

.dataTable tr td.child {
  white-space: normal;
  position: relative;
}

.dataTable tr td.child > ul {
  display: table;
  table-layout: fixed;
  width: 100%;
  list-style: none;
  margin: 0;
  padding: 0;
}

.dataTable tr td.child > ul > li {
  display: table-row;
}

/* ------------------------------------------------------------------------------
*
*  # Google Maps overrides
*
*  Override Google Maps default styles
*
* ---------------------------------------------------------------------------- */
.map-container {
  height: 500px;
}

.gm-style {
  font-size: 0.8125rem;
}

.gm-style .gm-style-iw {
  font-size: 0.8125rem;
  font-weight: 400;
}

/* ------------------------------------------------------------------------------
*
*  # Vector maps
*
*  Vector map container, tooltip and zooming
*
* ---------------------------------------------------------------------------- */
.vector-map-container {
  height: 500px;
}

.jvectormap-label {
  position: absolute;
  display: none;
  background-color: #000;
  color: #fff;
  padding: 0.5rem 0.75rem;
  border-radius: 0.1875rem;
}

.jvectormap-zoomin,
.jvectormap-zoomout {
  position: absolute;
  left: 1.25rem;
  padding: 0.5rem;
  color: white;
  cursor: pointer;
  font-size: 1rem;
  font-weight: 300;
  line-height: 0.625rem;
  background-color: #455A64;
  text-align: center;
  border-radius: 0.1875rem;
  transition: all ease-in-out 0.15s;
}

@media (prefers-reduced-motion: reduce) {
  .jvectormap-zoomin,
  .jvectormap-zoomout {
    transition: none;
  }
}

.jvectormap-zoomin:hover,
.jvectormap-zoomout:hover {
  background-color: #37474F;
}

.jvectormap-zoomin {
  top: 0.625rem;
}

.jvectormap-zoomout {
  top: 2.5rem;
}

/* ------------------------------------------------------------------------------
*
*  # Chart styling
*
*  Charts base - container and sizing setup
*
* ---------------------------------------------------------------------------- */
.chart-container {
  position: relative;
  width: 100%;
}

.chart-container.has-scroll {
  overflow-x: scroll;
  overflow-y: visible;
  max-width: 100%;
}

@media (max-width: 767.98px) {
  .chart-container {
    overflow-x: scroll;
    overflow-y: visible;
    max-width: 100%;
  }
}

.chart {
  position: relative;
  display: block;
  width: 100%;
}

.chart.has-minimum-width {
  min-width: 37.5rem;
}

.has-fixed-height {
  height: 400px;
}

.chart-pie {
  width: 100%;
  height: 400px;
  min-width: 31.25rem;
}

/* ------------------------------------------------------------------------------
*
*  # C3 charts
*
*  Styles for C3.js visualization library
*
* ---------------------------------------------------------------------------- */
.c3 svg {
  font-size: 0.75rem;
}

.c3 path,
.c3 line {
  fill: none;
  stroke: #999;
}

.c3 path.domain {
  shape-rendering: crispEdges;
}

.c3 text {
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
}

.c3-legend-item-tile,
.c3-xgrid-focus,
.c3-ygrid,
.c3-event-rect,
.c3-bars path {
  shape-rendering: crispEdges;
}

.c3-chart-arc path {
  stroke: #fff;
}

.c3-chart-arc text {
  fill: #fff;
  font-size: 0.8125rem;
}

.c3-grid line {
  stroke: #ccc;
}

.c3-grid text {
  fill: #ccc;
}

.c3-xgrid,
.c3-ygrid {
  stroke-dasharray: 3 3;
}

.c3-text {
  font-weight: 500;
}

.c3-text.c3-empty {
  fill: #777;
  font-size: 2em;
}

.c3-line {
  stroke-width: 2px;
}

.c3-area {
  stroke-width: 0;
  opacity: 0.4;
}

.c3-circle._expanded_ {
  stroke-width: 1.5px;
  stroke: #fff;
}

.c3-selected-circle {
  fill: #fff;
  stroke-width: 2px;
}

.c3-bar {
  stroke-width: 0;
}

.c3-bar._expanded_ {
  fill-opacity: 0.75;
}

.c3-chart-arcs-title {
  font-size: 0.9375rem;
}

.c3-chart-arcs .c3-chart-arcs-background {
  fill: #eee;
  stroke: none;
}

.c3-chart-arcs .c3-chart-arcs-gauge-unit {
  fill: #333;
  font-size: 0.9375rem;
}

.c3-chart-arcs .c3-chart-arcs-gauge-max,
.c3-chart-arcs .c3-chart-arcs-gauge-min {
  fill: #f5f5f5;
}

.c3-chart-arc .c3-gauge-value {
  fill: #333;
  font-size: 1.5625rem;
}

.c3-target.c3-focused {
  opacity: 1;
}

.c3-target.c3-focused path.c3-line,
.c3-target.c3-focused path.c3-step {
  stroke-width: 2px;
}

.c3-target.c3-defocused {
  opacity: 0.3 !important;
}

.c3-region {
  fill: #546E7A;
  fill-opacity: .1;
}

.c3-brush .extent {
  fill-opacity: .1;
}

.c3-legend-item {
  font-size: 0.75rem;
}

.c3-legend-background {
  fill: #fff;
  stroke: lightgray;
  stroke-width: 1;
  opacity: 0.75;
}

.c3-tooltip {
  border-collapse: collapse;
  border-spacing: 0;
  background-color: #fff;
  empty-cells: show;
  opacity: 0.95;
}

.c3-tooltip th {
  background-color: #333;
  padding: 0.5rem 1.25rem;
  text-align: center;
  color: #fff;
  border: 1px solid #333;
  font-weight: 500;
}

.c3-tooltip td {
  padding: 0.5rem 1.25rem;
  background-color: #fff;
  border: 1px solid #ddd;
}

.c3-tooltip td > span {
  display: inline-block;
  margin-right: 0.625rem;
  width: 0.5rem;
  height: 0.5rem;
}

.c3-tooltip td.value {
  text-align: right;
}

/* ------------------------------------------------------------------------------
*
*  # D3.js library
*
*  Basic styles for D3.js visualization library
*
* ---------------------------------------------------------------------------- */
.d3-axis path {
  fill: none;
  stroke: #999;
  shape-rendering: crispEdges;
}

.d3-axis line {
  stroke: #f5f5f5;
  shape-rendering: crispEdges;
}

.d3-axis .tick,
.d3-axis .tick text {
  font-size: 0.75rem;
  fill: #333;
}

.d3-axis-solid path,
.d3-axis-solid line {
  stroke: #ccc;
}

.d3-axis-solid .tick {
  fill: #999;
}

.d3-axis-solid .tick text {
  fill: #999;
}

.d3-axis-strong path,
.d3-axis-strong line {
  stroke: #ccc;
}

.d3-axis-strong .tick {
  fill: #333;
}

.d3-axis-strong .tick text {
  fill: #333;
}

.d3-axis-transparent path {
  stroke: none;
}

.d3-axis-transparent line {
  stroke: #eee;
}

.d3-axis-transparent .tick {
  fill: #999;
}

.d3-axis-transparent .tick text {
  fill: #999;
}

.d3-tip {
  position: absolute;
  padding: 0.5rem 0.75rem;
  background-color: #000;
  color: #fff;
  margin-bottom: -0.25rem;
  font-size: 0.8125rem;
  z-index: 1070;
  border-radius: 0.1875rem;
}

.d3-tip .d3-tip-arrow {
  position: absolute;
  width: 0;
  height: 0;
  border-color: transparent;
  border-style: solid;
}

.d3-tip.n .d3-tip-arrow {
  bottom: -0.25rem;
  left: 50%;
  margin-left: -0.25rem;
  border-width: 0.25rem 0.25rem 0;
  border-top-color: #000;
}

.d3-tip.e .d3-tip-arrow {
  top: 50%;
  margin-top: -0.25rem;
  /*rtl:begin:ignore*/
  left: -0.25rem;
  border-width: 0.25rem 0.25rem 0.25rem 0;
  border-right-color: #000;
  /*rtl:end:ignore*/
}

.d3-tip.w .d3-tip-arrow {
  top: 50%;
  margin-top: -0.25rem;
  /*rtl:begin:ignore*/
  right: -0.25rem;
  border-width: 0.25rem 0 0.25rem 0.25rem;
  border-left-color: #000;
  /*rtl:end:ignore*/
}

.d3-tip.s .d3-tip-arrow {
  top: 0;
  left: 50%;
  margin-left: -0.25rem;
  border-width: 0 0.25rem 0.25rem;
  border-bottom-color: #000;
}

.venntooltip {
  position: absolute;
  text-align: center;
  white-space: nowrap;
  background-color: #000;
  color: #fff;
  padding: 0.5rem 0.75rem;
  display: none;
  border-radius: 0.1875rem;
}

.d3-line {
  fill: none;
}

.d3-line-thin {
  stroke-width: 1px;
}

.d3-line-medium {
  stroke-width: 1.5px;
}

.d3-line-strong {
  stroke-width: 2px;
}

.d3-line-circle {
  fill: none;
  cursor: pointer;
}

.d3-line-circle-thin {
  stroke-width: 1px;
}

.d3-line-circle-medium {
  stroke-width: 1.5px;
}

.d3-line-circle-strong {
  stroke-width: 2px;
}

.d3-grid .tick line {
  stroke-width: 1px;
  stroke: #eee;
  shape-rendering: crispEdges;
}

.d3-grid .tick text {
  fill: #333;
  stroke: none;
}

.d3-grid-dashed .tick {
  stroke-dasharray: 4,2;
  stroke-width: 1px;
  stroke: #eee;
  shape-rendering: crispEdges;
}

.d3-grid-dashed path {
  stroke-width: 0;
}

.d3-crosshair-overlay {
  fill: none;
  pointer-events: all;
}

.bullet-tick line {
  stroke: #999;
  stroke-width: 1px;
  shape-rendering: crispEdges;
}

.bullet-tick text {
  fill: #999;
  font-size: 0.75rem;
}

.bullet-marker {
  stroke-width: 2px;
  shape-rendering: crispEdges;
}

.bullet-title {
  font-size: 0.8125rem;
  font-weight: 500;
}

.bullet-subtitle {
  fill: #999;
}

.bullet-1 .bullet-range-1 {
  fill: rgba(96, 125, 139, 0.8);
}

.bullet-1 .bullet-range-2 {
  fill: rgba(96, 125, 139, 0.4);
}

.bullet-1 .bullet-range-3 {
  fill: #607D8B;
}

.bullet-1 .bullet-measure-1 {
  fill: rgba(84, 110, 122, 0.9);
}

.bullet-1 .bullet-measure-2 {
  fill: #fff;
}

.bullet-1 .bullet-marker {
  stroke: #37474F;
}

.bullet-2 .bullet-range-1 {
  fill: rgba(255, 112, 67, 0.6);
}

.bullet-2 .bullet-range-2 {
  fill: rgba(255, 112, 67, 0.3);
}

.bullet-2 .bullet-range-3 {
  fill: #FF7043;
}

.bullet-2 .bullet-measure-1 {
  fill: rgba(244, 81, 30, 0.9);
}

.bullet-2 .bullet-measure-2 {
  fill: #fff;
}

.bullet-2 .bullet-marker {
  stroke: #D84315;
}

.bullet-3 .bullet-range-1 {
  fill: rgba(102, 187, 106, 0.7);
}

.bullet-3 .bullet-range-2 {
  fill: rgba(102, 187, 106, 0.35);
}

.bullet-3 .bullet-range-3 {
  fill: #66BB6A;
}

.bullet-3 .bullet-measure-1 {
  fill: rgba(67, 160, 71, 0.9);
}

.bullet-3 .bullet-measure-2 {
  fill: #fff;
}

.bullet-3 .bullet-marker {
  stroke: #2E7D32;
}

.counter-icon {
  font-size: 2rem;
  position: absolute;
  left: 50%;
  margin-left: -1rem;
}

.chart-widget-legend {
  margin: 0.625rem 0 0 0;
  padding: 0;
  font-size: 0.75rem;
  text-align: center;
}

.chart-widget-legend li {
  margin: 0.3125rem 0.625rem 0;
  padding: 0.4375rem 0.5rem 0.3125rem;
  display: inline-block;
}

/* ------------------------------------------------------------------------------
 *
 *  # Ecommerce stuff
 *
 *  Styles for Ecommerce set of pages
 *
 * ---------------------------------------------------------------------------- */
.color-selector-active {
  position: relative;
}

.color-selector-active i {
  position: absolute;
  top: 50%;
  left: 50%;
  margin-top: -0.5rem;
  margin-left: -0.5rem;
}

.pricing-table-price {
  font-size: 2.625rem;
}

.pricing-table-price > span {
  font-size: 1.875rem;
}

.pricing-table-list li {
  padding-top: 1rem;
  padding-bottom: 1rem;
  border-bottom: 1px solid rgba(0, 0, 0, 0.1);
}

.card[class*=bg-]:not(.bg-transparent):not(.bg-white):not(.bg-light) .pricing-table-list li {
  border-bottom-color: rgba(255, 255, 255, 0.2);
}

.ribbon-container {
  width: 6.5rem;
  height: 6.625rem;
  overflow: hidden;
  position: absolute;
  top: -1px;
  right: -1px;
}

.ribbon {
  text-align: center;
  font-size: 0.75rem;
  line-height: 1.6667;
  font-weight: 500;
  text-transform: uppercase;
  position: relative;
  padding: 0.3125rem 0;
  left: -0.6875rem;
  top: 1.563rem;
  width: 9.375rem;
  background-color: #4CAF50;
  color: #fff;
  z-index: 10;
  transform: rotate(45deg);
  box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
}

/* ------------------------------------------------------------------------------
 *
 *  # Blog layouts
 *
 *  Blog layouts with various blog layouts
 *
 * ---------------------------------------------------------------------------- */
.blog-horizontal .card-img-actions {
  width: 100%;
}

@media (min-width: 576px) {
  .blog-horizontal .card-img-actions {
    width: 45%;
    float: left;
    max-width: 25rem;
    z-index: 10;
  }
}

@media (min-width: 576px) {
  .blog-horizontal-xs .card-img-actions {
    width: 35%;
    max-width: 12.5rem;
  }
}

@media (min-width: 576px) {
  .blog-horizontal-sm .card-img-actions {
    width: 40%;
    max-width: 18.75rem;
  }
}

@media (min-width: 576px) {
  .blog-horizontal-lg .card-img-actions {
    width: 50%;
    max-width: 31.25rem;
  }
}

/* ------------------------------------------------------------------------------
 *
 *  # Task manager
 *
 *  Styles related to task manager - detailed task, list and grid
 *
 * ---------------------------------------------------------------------------- */
.timer-number {
  font-size: 2.875rem;
  line-height: 1;
}

.timer-dots {
  font-size: 1.4375rem;
  padding: 0.71875rem 0;
  line-height: 1;
}

/* ------------------------------------------------------------------------------
 *
 *  # Mail list
 *
 *  Inbox page - list, read and write
 *
 * ---------------------------------------------------------------------------- */
.table-inbox {
  table-layout: fixed;
  min-width: 768px;
}

.table-inbox tr {
  cursor: pointer;
  transition: all ease-in-out 0.15s;
}

@media (prefers-reduced-motion: reduce) {
  .table-inbox tr {
    transition: none;
  }
}

.table-inbox tr:not([class*=alpha-]):not([class*=bg-]) {
  background-color: #fafafa;
}

.table-inbox tr td:not(:first-child) {
  padding-left: 0;
}

.table-inbox tr.unread {
  font-weight: 700;
}

.table-inbox tr.unread:not([class*=alpha-]):not([class*=bg-]) {
  background-color: #fff;
}

.table-inbox-checkbox {
  width: 3.75rem;
}

.table-inbox-star,
.table-inbox-attachment {
  width: 2.25rem;
}

.table-inbox-image {
  width: 3.25006rem;
}

.table-inbox-name {
  width: 11.25rem;
}

@media (max-width: 767.98px) {
  .table-inbox-subject {
    display: block;
    overflow: hidden;
    text-overflow: ellipsis;
  }
}

.table-inbox-message {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.table-inbox-time {
  text-align: right;
  width: 5rem;
}

/* ------------------------------------------------------------------------------
 *
 *  # User profile
 *
 *  Styles for all user profile layouts
 *
 * ---------------------------------------------------------------------------- */
.profile-cover {
  position: relative;
}

.profile-cover .media {
  position: absolute;
  left: 1.25rem;
  right: 1.25rem;
  bottom: 50%;
  transform: translateY(50%);
}

.profile-cover .media .btn {
  box-shadow: 0 0 0.1875rem rgba(0, 0, 0, 0.5) !important;
}

@media (min-width: 768px) {
  .profile-cover .media {
    bottom: 1.25rem;
    transform: none;
  }
}

.profile-cover .media-body {
  text-shadow: 0 0 0.1875rem rgba(0, 0, 0, 0.5);
}

.profile-cover-img {
  background-position: 50% 50%;
  background-repeat: no-repeat;
  background-size: cover;
  height: 21.88rem;
}

.profile-thumb img {
  border: 3px solid #fff;
  box-shadow: 0 0 0.1875rem rgba(0, 0, 0, 0.5);
  width: 6.25rem;
  height: 6.25rem;
}

/* ------------------------------------------------------------------------------
 *
 *  # Login and related forms
 *
 *  Styles related to user login - logins, registration, password revovery, unlock etc.
 *
 * ---------------------------------------------------------------------------- */
.login-cover {
  background: url(/themeImages/login_cover.jpg) no-repeat;
  background-size: cover;
}

.login-form {
  width: 100%;
}

.login-form .nav-item:first-child .nav-link {
  border-top-left-radius: 0.125rem;
}

.login-form .nav-item:last-child .nav-link {
  border-top-right-radius: 0.125rem;
}

@media (min-width: 576px) {
  .login-form {
    width: 20rem;
  }
}

/* ------------------------------------------------------------------------------
 *
 *  # Timeline
 *
 *  Styles for timeline in 3 layouts: left, right and centered
 *
 * ---------------------------------------------------------------------------- */
.timeline {
  position: relative;
}

.timeline:before, .timeline:after {
  content: "";
  position: absolute;
  left: 50%;
  margin-left: -2px;
  background-color: #ccc;
  z-index: 1;
  width: 4px;
  height: 4px;
  border-radius: 50%;
}

.timeline:before {
  top: 0;
}

.timeline:after {
  bottom: 0;
}

.timeline-container {
  position: relative;
  padding-top: 0.625rem;
  margin-top: -0.625rem;
  padding-bottom: 1px;
}

.timeline-container:after {
  content: "";
  position: absolute;
  top: 0;
  left: 50%;
  margin-left: -1px;
  background-color: #ccc;
  height: 100%;
  width: 2px;
  z-index: -1;
}

.timeline-row {
  position: relative;
}

.timeline-date {
  text-align: center;
  background-color: #f5f5f5;
  position: relative;
  z-index: 1;
  padding-top: 1.25rem;
  padding-bottom: 1.25rem;
  margin-bottom: 1.25rem;
}

.timeline-date:before, .timeline-date:after {
  content: "";
  position: absolute;
  left: 50%;
  margin-left: -2px;
  background-color: #ccc;
  z-index: 1;
  width: 4px;
  height: 4px;
  border-radius: 50%;
}

.timeline-date:before {
  top: 0;
}

.timeline-date:after {
  bottom: 0;
}

.card .timeline-date {
  background-color: #fff;
}

.timeline-time {
  text-align: center;
  padding-top: 1.25rem;
  padding-bottom: 1.25rem;
  background-color: #f5f5f5;
  position: relative;
  margin-bottom: 1.25rem;
}

.timeline-time:before, .timeline-time:after {
  content: "";
  position: absolute;
  left: 50%;
  margin-left: -2px;
  background-color: #ccc;
  width: 4px;
  height: 4px;
  border-radius: 50%;
}

.timeline-time:before {
  top: 0;
}

.timeline-time:after {
  bottom: 0;
}

.card .timeline-time {
  background-color: #fff;
}

@media (min-width: 768px) {
  .timeline-time:before, .timeline-time:after {
    content: none;
  }
}

.timeline-icon {
  margin: 0 auto 1.25rem auto;
  background-color: #fff;
  border: 4px solid #f5f5f5;
  width: 3rem;
  height: 3rem;
  border-radius: 50%;
}

.card .timeline-icon {
  border-color: #fff;
}

.timeline-icon div {
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  box-shadow: 0 0 0 2px #ccc inset;
  border-radius: 50%;
}

.timeline-icon div[class*=bg-]:not(.bg-white):not(.bg-light):not(.bg-transparent) {
  box-shadow: none;
}

.timeline-icon div > i {
  top: 0;
}

.timeline-icon img {
  width: 2.5rem;
  height: 2.5rem;
  border-radius: 50%;
}

@media (min-width: 768px) {
  .timeline-center .timeline-row-left {
    margin-right: 50%;
    padding-right: 2.75rem;
  }
  .timeline-center .timeline-row-right {
    margin-left: 50%;
    padding-left: 2.75rem;
  }
  .timeline-left .timeline-container:after, .timeline-left:before, .timeline-left:after,
  .timeline-left .timeline-date:before,
  .timeline-left .timeline-date:after {
    left: 1.5rem;
  }
  .timeline-left .timeline-row,
  .timeline-left .timeline-date {
    padding-left: 4.25rem;
  }
  .timeline-right .timeline-container:after, .timeline-right:before, .timeline-right:after,
  .timeline-right .timeline-date:before,
  .timeline-right .timeline-date:after {
    left: auto;
    right: 1.5rem;
    margin-left: 0;
    margin-right: -2px;
  }
  .timeline-right .timeline-container:after {
    margin-right: -1px;
  }
  .timeline-right .timeline-row,
  .timeline-right .timeline-date {
    padding-right: 4.25rem;
  }
  .timeline-left .timeline-date,
  .timeline-right .timeline-date {
    padding-top: 0.625rem;
    padding-bottom: 0.625rem;
  }
  .timeline-icon {
    position: absolute;
    top: 0.625rem;
  }
  .timeline-icon:after {
    content: "";
    position: absolute;
    top: 50%;
    margin-top: -1px;
    height: 2px;
    width: 1rem;
    background-color: #ccc;
    z-index: 1;
  }
  .timeline-left .timeline-icon {
    left: 0;
  }
  .timeline-left .timeline-icon:after {
    left: 100%;
    margin-left: 4px;
  }
  .timeline-right .timeline-icon {
    right: 0;
  }
  .timeline-right .timeline-icon:after {
    right: 100%;
    margin-right: 4px;
  }
  .timeline-center .timeline-row-left .timeline-icon {
    left: 100%;
    margin-left: -1.5rem;
  }
  .timeline-center .timeline-row-left .timeline-icon:after {
    right: 100%;
    margin-right: 4px;
  }
  .timeline-center .timeline-row-right .timeline-icon {
    right: 100%;
    margin-right: -1.5rem;
  }
  .timeline-center .timeline-row-right .timeline-icon:after {
    left: 100%;
    margin-left: 4px;
  }
  .timeline-center .timeline-row-full .timeline-icon {
    position: static;
  }
  .timeline-center .timeline-row-full .timeline-icon:after {
    content: none;
  }
  .timeline-time {
    padding: 0;
    text-align: inherit;
    background-color: transparent;
  }
  .timeline-time:before {
    content: none;
  }
  .timeline-left .timeline-time,
  .timeline-right .timeline-time {
    padding-top: 0.625rem;
    margin-bottom: 1.25rem;
    padding-left: 0.625rem;
  }
  .timeline-right .timeline-time {
    text-align: right;
    padding-left: 0;
    padding-right: 0.625rem;
  }
  .timeline-center .timeline-time,
  .timeline-center .timeline-row-full .timeline-time {
    position: absolute;
    left: 100%;
    top: 0.875rem;
    width: 100%;
    padding-left: 2.75rem;
  }
  .timeline-center .timeline-row-right .timeline-time,
  .timeline-center .timeline-row-full .timeline-time {
    left: auto;
    right: 100%;
    padding-left: 0;
    padding-right: 2.75rem;
    text-align: right;
  }
  .timeline-center .timeline-row-full .timeline-time {
    right: 50%;
    top: 4px;
  }
}

/* ------------------------------------------------------------------------------
 *
 *  # Chat layouts
 *
 *  Conversation chat styles - layouts, chat elements, colors, options
 *
 * ---------------------------------------------------------------------------- */
.media-chat-scrollable {
  max-height: 520px;
  overflow: auto;
}

@media (min-width: 576px) {
  .media-chat .media {
    margin-right: 20%;
  }
  .media-chat .media.media-chat-item-reverse {
    margin-right: 0;
    margin-left: 20%;
  }
}

.media-chat-item {
  position: relative;
  padding: 0.625rem 1rem;
  width: auto;
  display: inline-block;
  color: #333;
  border-radius: 0.1875rem;
}

.media-chat-item:not([class*=bg-]) {
  background-color: #eee;
  border-color: #eee;
}

.media-chat-item:before {
  content: '';
  left: -5px;
  top: 0.93752rem;
  position: absolute;
  margin-left: 0;
  border-top: 5px solid transparent;
  border-right: 5px solid;
  border-right-color: inherit;
  border-bottom: 5px solid transparent;
}

.media-chat-item-reverse .media-chat-item:before {
  left: auto;
  right: -5px;
  border-right: 0;
  border-left: 5px solid;
  border-left-color: inherit;
}

.media-chat-item-reverse .media-chat-item {
  text-align: left;
  color: #fff;
}

.media-chat-item-reverse .media-chat-item:not([class*=bg-]) {
  background-color: #42A5F5;
  border-color: #42A5F5;
}

.media-chat-item-reverse .media-body {
  text-align: right;
}

.media-chat-inverse .media-chat-item {
  color: #fff;
}

.media-chat-inverse .media-chat-item:not([class*=bg-]) {
  background-color: #42A5F5;
  border-color: #42A5F5;
}

.media-chat-inverse .media-chat-item-reverse .media-chat-item {
  color: #333;
}

.media-chat-inverse .media-chat-item-reverse .media-chat-item:not([class*=bg-]) {
  background-color: #eee;
  border-color: #eee;
}

/* ------------------------------------------------------------------------------
 *
 *  # Error pages
 *
 *  Styles for error and offline pages
 *
 * ---------------------------------------------------------------------------- */
.error-title {
  color: #fff;
  font-size: 8.125rem;
  line-height: 1;
  margin-bottom: 2.5rem;
  font-weight: 300;
  text-stroke: 1px transparent;
  display: block;
  text-shadow: 0 1px 0 #ccc, 0 2px 0 #c9c9c9, 0 3px 0 #bbb, 0 4px 0 #b9b9b9, 0 5px 0 #aaa, 0 6px 1px rgba(0, 0, 0, 0.1), 0 0 5px rgba(0, 0, 0, 0.1), 0 1px 3px rgba(0, 0, 0, 0.3), 0 3px 5px rgba(0, 0, 0, 0.2), 0 5px 10px rgba(0, 0, 0, 0.25), 0 10px 10px rgba(0, 0, 0, 0.2), 0 20px 20px rgba(0, 0, 0, 0.15);
}

@media (min-width: 576px) {
  .error-title {
    font-size: 12.5rem;
  }
}

.offline-title {
  font-size: 6.875rem;
}

@media (min-width: 576px) {
  .offline-title {
    font-size: 10rem;
  }
}

/* ------------------------------------------------------------------------------
*
*  # Header elements
*
*  Display default and custom components in page header, card header and breadcrumbs
*
* ---------------------------------------------------------------------------- */
.card-header .header-elements {
  padding-top: 0.9375rem;
}

.page-header-content .header-elements {
  margin-left: -1.25rem;
  margin-right: -1.25rem;
  padding: 1.25rem 1.25rem;
  border-top: 1px solid #cfcfcf;
  border-bottom: 1px solid #cfcfcf;
  background-color: #efefef;
}

.page-header-light .header-elements {
  background-color: #fafafa;
  border-color: #ddd;
  border-bottom: 0;
}

.page-header-dark .header-elements {
  background-color: rgba(0, 0, 0, 0.1);
  border-color: rgba(255, 255, 255, 0.2);
  border-bottom: 0;
}

.breadcrumb-line .header-elements {
  margin-left: -1.25rem;
  margin-right: -1.25rem;
  padding: 0 1.25rem;
  border-top: 1px solid transparent;
}

.breadcrumb-line-light .header-elements {
  background-color: transparent;
  border-color: #ddd;
}

.breadcrumb-line-dark .header-elements {
  background-color: rgba(0, 0, 0, 0.1);
  border-color: rgba(255, 255, 255, 0.25);
}

.header-elements .form-group:last-child {
  margin-bottom: 0;
}

.header-elements-toggle,
.footer-elements-toggle {
  margin-left: auto;
  align-self: center;
}

.header-elements-inline {
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-wrap: nowrap;
}

.header-elements-inline .header-elements {
  display: flex !important;
  align-items: center;
  flex-wrap: wrap;
  padding: 0;
  background-color: transparent;
  border: 0;
  margin-left: 0;
  margin-right: 0;
}

.header-elements-inline .card-header-tabs .nav-link {
  padding-top: 1rem;
  padding-bottom: 1rem;
}

@media (min-width: 576px) {
  .header-elements-sm-inline {
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-wrap: nowrap;
  }
  .header-elements-sm-inline .header-elements {
    display: flex !important;
    align-items: center;
    flex-wrap: wrap;
    padding: 0;
    background-color: transparent;
    border: 0;
    margin-left: 0;
    margin-right: 0;
  }
  .header-elements-sm-inline .card-header-tabs .nav-link {
    padding-top: 1rem;
    padding-bottom: 1rem;
  }
}

@media (min-width: 768px) {
  .header-elements-md-inline {
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-wrap: nowrap;
  }
  .header-elements-md-inline .header-elements {
    display: flex !important;
    align-items: center;
    flex-wrap: wrap;
    padding: 0;
    background-color: transparent;
    border: 0;
    margin-left: 0;
    margin-right: 0;
  }
  .header-elements-md-inline .card-header-tabs .nav-link {
    padding-top: 1rem;
    padding-bottom: 1rem;
  }
}

@media (min-width: 992px) {
  .header-elements-lg-inline {
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-wrap: nowrap;
  }
  .header-elements-lg-inline .header-elements {
    display: flex !important;
    align-items: center;
    flex-wrap: wrap;
    padding: 0;
    background-color: transparent;
    border: 0;
    margin-left: 0;
    margin-right: 0;
  }
  .header-elements-lg-inline .card-header-tabs .nav-link {
    padding-top: 1rem;
    padding-bottom: 1rem;
  }
}

@media (min-width: 1200px) {
  .header-elements-xl-inline {
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-wrap: nowrap;
  }
  .header-elements-xl-inline .header-elements {
    display: flex !important;
    align-items: center;
    flex-wrap: wrap;
    padding: 0;
    background-color: transparent;
    border: 0;
    margin-left: 0;
    margin-right: 0;
  }
  .header-elements-xl-inline .card-header-tabs .nav-link {
    padding-top: 1rem;
    padding-bottom: 1rem;
  }
}

/* ------------------------------------------------------------------------------
 *
 *  # Helper classes
 *
 *  Custom helper classes used in the template.
 *
 * ---------------------------------------------------------------------------- */
.font-size-lg {
  font-size: 0.875rem;
}

.font-size-base {
  font-size: 0.8125rem;
}

.font-size-sm {
  font-size: 0.75rem;
}

.font-size-xs {
  font-size: 0.6875rem;
}

.line-height-lg {
  line-height: 1.4286;
}

.line-height-base {
  line-height: 1.5385;
}

.line-height-sm {
  line-height: 1.6667;
}

.line-height-xs {
  line-height: 1.82;
}

.line-height-1 {
  line-height: 1;
}

.opacity-75 {
  opacity: 0.75;
}

.opacity-50 {
  opacity: 0.5;
}

.opacity-25 {
  opacity: 0.25;
}

.opacity-0 {
  opacity: 0;
}

.top-0 {
  top: 0;
}

.top-auto {
  top: auto;
}

.bottom-0 {
  bottom: 0;
}

.bottom-auto {
  bottom: auto;
}

.left-0 {
  left: 0;
}

.left-auto {
  left: auto;
}

.right-0 {
  right: 0;
}

.right-auto {
  right: auto;
}

.cursor-pointer {
  cursor: pointer;
}

.cursor-move {
  cursor: move;
}

.cursor-default {
  cursor: default;
}

.cursor-disabled {
  cursor: default;
}

.overflow-hidden {
  overflow: hidden;
}

.overflow-visible {
  overflow: visible;
}

.overflow-auto {
  overflow: auto;
}

.border-width-0 {
  border-width: 0;
}

.border-y-0 {
  border-top: 0 !important;
  border-bottom: 0 !important;
}

.border-x-0 {
  border-left: 0 !important;
  border-right: 0 !important;
}

.border-1 {
  border: 1px solid;
}

.border-top-1 {
  border-top: 1px solid;
}

.border-bottom-1 {
  border-bottom: 1px solid;
}

.border-left-1 {
  border-left: 1px solid;
}

.border-right-1 {
  border-right: 1px solid;
}

.border-y-1 {
  border-top: 1px solid;
  border-bottom: 1px solid;
}

.border-x-1 {
  border-left: 1px solid;
  border-right: 1px solid;
}

.border-2 {
  border: 2px solid;
}

.border-top-2 {
  border-top: 2px solid;
}

.border-bottom-2 {
  border-bottom: 2px solid;
}

.border-left-2 {
  border-left: 2px solid;
}

.border-right-2 {
  border-right: 2px solid;
}

.border-y-2 {
  border-top: 2px solid;
  border-bottom: 2px solid;
}

.border-x-2 {
  border-left: 2px solid;
  border-right: 2px solid;
}

.border-3 {
  border: 3px solid;
}

.border-top-3 {
  border-top: 3px solid;
}

.border-bottom-3 {
  border-bottom: 3px solid;
}

.border-left-3 {
  border-left: 3px solid;
}

.border-right-3 {
  border-right: 3px solid;
}

.border-y-3 {
  border-top: 3px solid;
  border-bottom: 3px solid;
}

.border-x-3 {
  border-left: 3px solid;
  border-right: 3px solid;
}

.border-dashed {
  border-style: dashed;
}

.border-top-dashed {
  border-top-style: dashed;
}

.border-bottom-dashed {
  border-bottom-style: dashed;
}

.border-left-dashed {
  border-left-style: dashed;
}

.border-right-dashed {
  border-right-style: dashed;
}

.border-dotted {
  border-style: dotted;
}

.rounded-round {
  border-radius: 100px !important;
}

.rounded-top-round {
  border-top-left-radius: 100px !important;
  border-top-right-radius: 100px !important;
}

.rounded-bottom-round {
  border-bottom-right-radius: 100px !important;
  border-bottom-left-radius: 100px !important;
}

.rounded-left-round {
  border-top-left-radius: 100px !important;
  border-bottom-left-radius: 100px !important;
}

.rounded-right-round {
  border-top-right-radius: 100px !important;
  border-bottom-right-radius: 100px !important;
}

.rounded-top-0 {
  border-top-left-radius: 0 !important;
  border-top-right-radius: 0 !important;
}

.rounded-bottom-0 {
  border-bottom-right-radius: 0 !important;
  border-bottom-left-radius: 0 !important;
}

.rounded-left-0 {
  border-top-left-radius: 0 !important;
  border-bottom-left-radius: 0 !important;
}

.rounded-right-0 {
  border-top-right-radius: 0 !important;
  border-bottom-right-radius: 0 !important;
}

.rotate-45 {
  transform: rotate(45deg);
}

.rotate-90 {
  transform: rotate(90deg);
}

.rotate-180 {
  transform: rotate(180deg);
}

.rotate-45-inverse {
  transform: rotate(-45deg);
}

.rotate-90-inverse {
  transform: rotate(-90deg);
}

.rotate-180-inverse {
  transform: rotate(-180deg);
}

.spinner {
  display: inline-block;
  -webkit-animation: rotation 1s linear infinite;
          animation: rotation 1s linear infinite;
}

.spinner-reverse {
  display: inline-block;
  -webkit-animation: rotation 1s linear infinite;
          animation: rotation 1s linear infinite;
}

@-webkit-keyframes rotation {
  0% {
    -webkit-transform: rotate(0deg);
  }
  100% {
    -webkit-transform: rotate(360deg);
  }
}

@keyframes rotation {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(360deg);
  }
}

@-webkit-keyframes rotation_reverse {
  0% {
    -webkit-transform: rotate(0deg);
  }
  100% {
    -webkit-transform: rotate(-360deg);
  }
}

@keyframes rotation_reverse {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(-360deg);
  }
}

.h-auto {
  height: auto;
}

.w-auto {
  width: auto !important;
}

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

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

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

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

.wmin-0 {
  min-width: 0 !important;
}

.wmin-200 {
  min-width: 200px !important;
}

.wmin-250 {
  min-width: 250px !important;
}

.wmin-300 {
  min-width: 300px !important;
}

.wmin-350 {
  min-width: 350px !important;
}

.wmin-400 {
  min-width: 400px !important;
}

.wmin-450 {
  min-width: 450px !important;
}

.wmin-500 {
  min-width: 500px !important;
}

.wmin-550 {
  min-width: 550px !important;
}

.wmin-600 {
  min-width: 600px !important;
}

.flex-1 {
  flex: 1;
}

@media (min-width: 576px) {
  .w-sm-auto {
    width: auto !important;
  }
  .w-sm-25 {
    width: 25% !important;
  }
  .w-sm-50 {
    width: 50% !important;
  }
  .w-sm-75 {
    width: 75% !important;
  }
  .w-sm-100 {
    width: 100% !important;
  }
  .wmin-sm-0 {
    min-width: 0 !important;
  }
  .wmin-sm-200 {
    min-width: 200px !important;
  }
  .wmin-sm-250 {
    min-width: 250px !important;
  }
  .wmin-sm-300 {
    min-width: 300px !important;
  }
  .wmin-sm-350 {
    min-width: 350px !important;
  }
  .wmin-sm-400 {
    min-width: 400px !important;
  }
  .wmin-sm-450 {
    min-width: 450px !important;
  }
  .wmin-sm-500 {
    min-width: 500px !important;
  }
  .wmin-sm-550 {
    min-width: 550px !important;
  }
  .wmin-sm-600 {
    min-width: 600px !important;
  }
  .flex-sm-1 {
    flex: 1;
  }
}

@media (min-width: 768px) {
  .w-md-auto {
    width: auto !important;
  }
  .w-md-25 {
    width: 25% !important;
  }
  .w-md-50 {
    width: 50% !important;
  }
  .w-md-75 {
    width: 75% !important;
  }
  .w-md-100 {
    width: 100% !important;
  }
  .wmin-md-0 {
    min-width: 0 !important;
  }
  .wmin-md-200 {
    min-width: 200px !important;
  }
  .wmin-md-250 {
    min-width: 250px !important;
  }
  .wmin-md-300 {
    min-width: 300px !important;
  }
  .wmin-md-350 {
    min-width: 350px !important;
  }
  .wmin-md-400 {
    min-width: 400px !important;
  }
  .wmin-md-450 {
    min-width: 450px !important;
  }
  .wmin-md-500 {
    min-width: 500px !important;
  }
  .wmin-md-550 {
    min-width: 550px !important;
  }
  .wmin-md-600 {
    min-width: 600px !important;
  }
  .flex-md-1 {
    flex: 1;
  }
}

@media (min-width: 992px) {
  .w-lg-auto {
    width: auto !important;
  }
  .w-lg-25 {
    width: 25% !important;
  }
  .w-lg-50 {
    width: 50% !important;
  }
  .w-lg-75 {
    width: 75% !important;
  }
  .w-lg-100 {
    width: 100% !important;
  }
  .wmin-lg-0 {
    min-width: 0 !important;
  }
  .wmin-lg-200 {
    min-width: 200px !important;
  }
  .wmin-lg-250 {
    min-width: 250px !important;
  }
  .wmin-lg-300 {
    min-width: 300px !important;
  }
  .wmin-lg-350 {
    min-width: 350px !important;
  }
  .wmin-lg-400 {
    min-width: 400px !important;
  }
  .wmin-lg-450 {
    min-width: 450px !important;
  }
  .wmin-lg-500 {
    min-width: 500px !important;
  }
  .wmin-lg-550 {
    min-width: 550px !important;
  }
  .wmin-lg-600 {
    min-width: 600px !important;
  }
  .flex-lg-1 {
    flex: 1;
  }
}

@media (min-width: 1200px) {
  .w-xl-auto {
    width: auto !important;
  }
  .w-xl-25 {
    width: 25% !important;
  }
  .w-xl-50 {
    width: 50% !important;
  }
  .w-xl-75 {
    width: 75% !important;
  }
  .w-xl-100 {
    width: 100% !important;
  }
  .wmin-xl-0 {
    min-width: 0 !important;
  }
  .wmin-xl-200 {
    min-width: 200px !important;
  }
  .wmin-xl-250 {
    min-width: 250px !important;
  }
  .wmin-xl-300 {
    min-width: 300px !important;
  }
  .wmin-xl-350 {
    min-width: 350px !important;
  }
  .wmin-xl-400 {
    min-width: 400px !important;
  }
  .wmin-xl-450 {
    min-width: 450px !important;
  }
  .wmin-xl-500 {
    min-width: 500px !important;
  }
  .wmin-xl-550 {
    min-width: 550px !important;
  }
  .wmin-xl-600 {
    min-width: 600px !important;
  }
  .flex-xl-1 {
    flex: 1;
  }
}

.no-transitions *, .no-transitions *:before, .no-transitions *:after {
  transition: none !important;
}

@media (prefers-reduced-motion: reduce) {
  .no-transitions *, .no-transitions *:before, .no-transitions *:after {
    transition: none;
  }
}

.caret-0::before, .caret-0::after {
  content: none;
}

.shadow-0 {
  box-shadow: none !important;
}

.outline-0, .outline-0:hover, .outline-0:focus {
  outline: 0;
}

.text-shadow-dark {
  text-shadow: 0 0 0.1875rem rgba(0, 0, 0, 0.5);
}

.text-shadow-light {
  text-shadow: 0 0 0.1875rem rgba(255, 255, 255, 0.5);
}

/* ------------------------------
 *
 *  Theme specific styles
 *
 * ------------------------------ */
/* ------------------------------------------------------------------------------
 *
 *  # Demo styles
 *
 *  Styles used for demostration purposes only
 *
 * ---------------------------------------------------------------------------- */
.jqueryui-demo-element {
  background-color: #fafafa;
  border: 2px dashed #ddd;
  color: #777;
  position: relative;
  z-index: 10;
  width: 90px;
  height: 90px;
}

.jqueryui-demo-element > span {
  position: absolute;
  top: 50%;
  left: 0;
  right: 0;
  transform: translateY(-50%);
}

.selectable-demo-list {
  list-style: none;
  display: inline-block;
  margin: 0;
  padding: 0;
  width: 100%;
  max-width: 200px;
}

.selectable-demo-list > .ui-sortable-handle,
.selectable-demo-list > .ui-selectee {
  background-color: #fafafa;
  border: 1px solid #ddd;
}

.selectable-demo-list > .ui-sortable-handle.ui-selecting, .selectable-demo-list > .ui-sortable-handle.ui-selected,
.selectable-demo-list > .ui-selectee.ui-selecting,
.selectable-demo-list > .ui-selectee.ui-selected {
  background-color: #03A9F4 !important;
  border-color: #0288D1 !important;
  color: #fff;
}

.selectable-demo-list > .ui-sortable-helper:first-child + li {
  margin-top: 0;
}

.selectable-demo-connected + .selectable-demo-connected {
  margin-top: 1.25rem;
}

@media (min-width: 576px) {
  .selectable-demo-connected + .selectable-demo-connected {
    margin-top: 0;
    margin-left: 1.25rem;
  }
}

.droppable-demo-target {
  width: 110px;
  height: 110px;
  background-color: #E3F2FD;
  border-color: #2196F3;
  color: #1565C0;
  z-index: 9;
}

.droppable-demo-drop {
  background-color: #E8F5E9;
  border-color: #4CAF50;
  color: #2E7D32;
}

.demo-color {
  height: 10rem;
  position: relative;
  border-top-left-radius: 0.1875rem;
  border-top-right-radius: 0.1875rem;
}

.demo-color > span {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  text-align: center;
  padding: 0.375rem;
  background-color: rgba(0, 0, 0, 0.2);
  font-size: 0.75rem;
  color: #fff;
}

.glyphs > div > div {
  padding: 0.5rem 1rem;
  transition: all ease-in-out 0.15s;
}

@media (prefers-reduced-motion: reduce) {
  .glyphs > div > div {
    transition: none;
  }
}

.glyphs > div > div:hover {
  background-color: #324148;
  color: #fff;
  border-radius: 0.1875rem;
}

.glyphs > div > div:hover .text-muted {
  color: rgba(255, 255, 255, 0.75);
}

.demo-velocity-box {
  padding: 0.75rem 1rem;
  margin-bottom: 1.25rem;
  position: relative;
  display: flex;
  justify-content: space-between;
  align-items: center;
  border: 1px solid #ccc;
  text-align: center;
  background-color: #fafafa;
  border-radius: 0.1875rem;
  box-shadow: 0 0 0 0 #2196F3;
}

/* ------------------------------------------------------------------------------
 *
 *  # Custom color system
 *
 *  Custom color system styles, includes background, border and text colors
 *
 * ---------------------------------------------------------------------------- */
/* ------------------------------------------------------------------------------
 *
 *  # Global configuration
 *
 *  Here you can change main theme, enable or disable certain components and
 *  optional styles. This allows you to include only components that you need.
 *
 *  'true'  - enables component and includes it to main CSS file.
 *  'false' - disables component and excludes it from main CSS file.
 *
 *  Layout helper: @if $layout == 'base' {...}
 *  Theme helper: @if $theme == 'material' {...}
 *  Component helper: @if $enable-* {...}
 *
 * ---------------------------------------------------------------------------- */
/* ------------------------------------------------------------------------------
 *
 *  # Custom Limitless functions
 *
 *  Utility mixins and functions for evalutating source code across our variables, maps, and mixins.
 *
 * ---------------------------------------------------------------------------- */
/* ------------------------------------------------------------------------------
 *
 *  # Custom template mixins
 *
 *  All custom mixins are prefixed with "ll-" to avoid conflicts
 *
 * ---------------------------------------------------------------------------- */
/* ------------------------------------------------------------------------------
 *
 *  # Main colors
 *
 *  List of the template main color palettes
 *
 * ---------------------------------------------------------------------------- */
/* ------------------------------------------------------------------------------
 *
 *  # Default Bootstrap variable overrides
 *
 *  Variables should follow the `$component-state-property-size` formula for
 *  consistent naming. Ex: $nav-link-disabled-color and $modal-content-box-shadow-xs.
 *  Also includes custom variables, all marked with "!default" flag.
 *
 * ---------------------------------------------------------------------------- */
/* ------------------------------------------------------------------------------
 *
 *  # Additional variables
 *
 *  Mainly 3rd party libraries and additional variables for default
 *  Bootstrap components.
 *
 * ---------------------------------------------------------------------------- */
/* ------------------------------------------------------------------------------
 *
 *  # Mixins
 *
 *  Import Bootstrap mixins with overrides
 *
 * ---------------------------------------------------------------------------- */
/* ------------------------------------------------------------------------------
 *
 *  # Badge mixin
 *
 *  Override and extend default badge mixin.
 *
 * ---------------------------------------------------------------------------- */
/* ------------------------------------------------------------------------------
 *
 *  # Buttons mixin
 *
 *  Override and extend default buttons mixin.
 *
 * ---------------------------------------------------------------------------- */
/* ------------------------------------------------------------------------------
 *
 *  # Caret mixin
 *
 *  Override and extend default cared mixin.
 *
 * ---------------------------------------------------------------------------- */
/* ------------------------------------------------------------------------------
 *
 *  # Forms mixin
 *
 *  Override and extend default forms mixin.
 *
 * ---------------------------------------------------------------------------- */
/* ------------------------------------------------------------------------------
 *
 *  # Background mixin
 *
 *  Override and extend default background mixin.
 *
 * ---------------------------------------------------------------------------- */
/* ------------------------------------------------------------------------------
 *
 *  # Custom color system
 *
 *  Custom color system styles. Includes background, border and text colors
 *
 * ---------------------------------------------------------------------------- */
.alpha-primary {
  background-color: #E3F2FD;
}

.text-primary {
  color: #2196F3;
}

.text-primary[href]:hover, .text-primary[href]:focus {
  color: #0c83e2;
}

.bg-primary {
  background-color: #2196F3;
}

.border-primary {
  border-color: #2196F3;
}

.border-top-primary {
  border-top-color: #2196F3;
}

.border-bottom-primary {
  border-bottom-color: #2196F3;
}

.border-left-primary {
  border-left-color: #2196F3;
}

.border-right-primary {
  border-right-color: #2196F3;
}

.text-primary-300 {
  color: #64B5F6;
}

.text-primary-300[href]:hover, .text-primary-300[href]:focus {
  color: #40a4f4;
}

.bg-primary-300 {
  background-color: #64B5F6;
}

.border-primary-300 {
  border-color: #64B5F6;
}

.border-top-primary-300 {
  border-top-color: #64B5F6;
}

.border-bottom-primary-300 {
  border-bottom-color: #64B5F6;
}

.border-left-primary-300 {
  border-left-color: #64B5F6;
}

.border-right-primary-300 {
  border-right-color: #64B5F6;
}

.text-primary-400 {
  color: #42A5F5;
}

.text-primary-400[href]:hover, .text-primary-400[href]:focus {
  color: #1e94f3;
}

.bg-primary-400 {
  background-color: #42A5F5;
}

.border-primary-400 {
  border-color: #42A5F5;
}

.border-top-primary-400 {
  border-top-color: #42A5F5;
}

.border-bottom-primary-400 {
  border-bottom-color: #42A5F5;
}

.border-left-primary-400 {
  border-left-color: #42A5F5;
}

.border-right-primary-400 {
  border-right-color: #42A5F5;
}

.text-primary-600 {
  color: #1E88E5;
}

.text-primary-600[href]:hover, .text-primary-600[href]:focus {
  color: #1774c6;
}

.bg-primary-600 {
  background-color: #1E88E5;
}

.border-primary-600 {
  border-color: #1E88E5;
}

.border-top-primary-600 {
  border-top-color: #1E88E5;
}

.border-bottom-primary-600 {
  border-bottom-color: #1E88E5;
}

.border-left-primary-600 {
  border-left-color: #1E88E5;
}

.border-right-primary-600 {
  border-right-color: #1E88E5;
}

.text-primary-700 {
  color: #1976D2;
}

.text-primary-700[href]:hover, .text-primary-700[href]:focus {
  color: #1563b0;
}

.bg-primary-700 {
  background-color: #1976D2;
}

.border-primary-700 {
  border-color: #1976D2;
}

.border-top-primary-700 {
  border-top-color: #1976D2;
}

.border-bottom-primary-700 {
  border-bottom-color: #1976D2;
}

.border-left-primary-700 {
  border-left-color: #1976D2;
}

.border-right-primary-700 {
  border-right-color: #1976D2;
}

.text-primary-800 {
  color: #1565C0;
}

.text-primary-800[href]:hover, .text-primary-800[href]:focus {
  color: #11539e;
}

.bg-primary-800 {
  background-color: #1565C0;
}

.border-primary-800 {
  border-color: #1565C0;
}

.border-top-primary-800 {
  border-top-color: #1565C0;
}

.border-bottom-primary-800 {
  border-bottom-color: #1565C0;
}

.border-left-primary-800 {
  border-left-color: #1565C0;
}

.border-right-primary-800 {
  border-right-color: #1565C0;
}

.alpha-danger {
  background-color: #FFEBEE;
}

.text-danger {
  color: #F44336;
}

.text-danger[href]:hover, .text-danger[href]:focus {
  color: #f22112;
}

.bg-danger {
  background-color: #F44336;
}

.border-danger {
  border-color: #F44336;
}

.border-top-danger {
  border-top-color: #F44336;
}

.border-bottom-danger {
  border-bottom-color: #F44336;
}

.border-left-danger {
  border-left-color: #F44336;
}

.border-right-danger {
  border-right-color: #F44336;
}

.text-danger-300 {
  color: #E57373;
}

.text-danger-300[href]:hover, .text-danger-300[href]:focus {
  color: #df5353;
}

.bg-danger-300 {
  background-color: #E57373;
}

.border-danger-300 {
  border-color: #E57373;
}

.border-top-danger-300 {
  border-top-color: #E57373;
}

.border-bottom-danger-300 {
  border-bottom-color: #E57373;
}

.border-left-danger-300 {
  border-left-color: #E57373;
}

.border-right-danger-300 {
  border-right-color: #E57373;
}

.text-danger-400 {
  color: #EF5350;
}

.text-danger-400[href]:hover, .text-danger-400[href]:focus {
  color: #ec312d;
}

.bg-danger-400 {
  background-color: #EF5350;
}

.border-danger-400 {
  border-color: #EF5350;
}

.border-top-danger-400 {
  border-top-color: #EF5350;
}

.border-bottom-danger-400 {
  border-bottom-color: #EF5350;
}

.border-left-danger-400 {
  border-left-color: #EF5350;
}

.border-right-danger-400 {
  border-right-color: #EF5350;
}

.text-danger-600 {
  color: #E53935;
}

.text-danger-600[href]:hover, .text-danger-600[href]:focus {
  color: #d8201c;
}

.bg-danger-600 {
  background-color: #E53935;
}

.border-danger-600 {
  border-color: #E53935;
}

.border-top-danger-600 {
  border-top-color: #E53935;
}

.border-bottom-danger-600 {
  border-bottom-color: #E53935;
}

.border-left-danger-600 {
  border-left-color: #E53935;
}

.border-right-danger-600 {
  border-right-color: #E53935;
}

.text-danger-700 {
  color: #D32F2F;
}

.text-danger-700[href]:hover, .text-danger-700[href]:focus {
  color: #b52626;
}

.bg-danger-700 {
  background-color: #D32F2F;
}

.border-danger-700 {
  border-color: #D32F2F;
}

.border-top-danger-700 {
  border-top-color: #D32F2F;
}

.border-bottom-danger-700 {
  border-bottom-color: #D32F2F;
}

.border-left-danger-700 {
  border-left-color: #D32F2F;
}

.border-right-danger-700 {
  border-right-color: #D32F2F;
}

.text-danger-800 {
  color: #C62828;
}

.text-danger-800[href]:hover, .text-danger-800[href]:focus {
  color: #a62222;
}

.bg-danger-800 {
  background-color: #C62828;
}

.border-danger-800 {
  border-color: #C62828;
}

.border-top-danger-800 {
  border-top-color: #C62828;
}

.border-bottom-danger-800 {
  border-bottom-color: #C62828;
}

.border-left-danger-800 {
  border-left-color: #C62828;
}

.border-right-danger-800 {
  border-right-color: #C62828;
}

.alpha-success {
  background-color: #E8F5E9;
}

.text-success {
  color: #4CAF50;
}

.text-success[href]:hover, .text-success[href]:focus {
  color: #409444;
}

.bg-success {
  background-color: #4CAF50;
}

.border-success {
  border-color: #4CAF50;
}

.border-top-success {
  border-top-color: #4CAF50;
}

.border-bottom-success {
  border-bottom-color: #4CAF50;
}

.border-left-success {
  border-left-color: #4CAF50;
}

.border-right-success {
  border-right-color: #4CAF50;
}

.text-success-300 {
  color: #81C784;
}

.text-success-300[href]:hover, .text-success-300[href]:focus {
  color: #67bb6a;
}

.bg-success-300 {
  background-color: #81C784;
}

.border-success-300 {
  border-color: #81C784;
}

.border-top-success-300 {
  border-top-color: #81C784;
}

.border-bottom-success-300 {
  border-bottom-color: #81C784;
}

.border-left-success-300 {
  border-left-color: #81C784;
}

.border-right-success-300 {
  border-right-color: #81C784;
}

.text-success-400 {
  color: #66BB6A;
}

.text-success-400[href]:hover, .text-success-400[href]:focus {
  color: #4dae52;
}

.bg-success-400 {
  background-color: #66BB6A;
}

.border-success-400 {
  border-color: #66BB6A;
}

.border-top-success-400 {
  border-top-color: #66BB6A;
}

.border-bottom-success-400 {
  border-bottom-color: #66BB6A;
}

.border-left-success-400 {
  border-left-color: #66BB6A;
}

.border-right-success-400 {
  border-right-color: #66BB6A;
}

.text-success-600 {
  color: #43A047;
}

.text-success-600[href]:hover, .text-success-600[href]:focus {
  color: #38853b;
}

.bg-success-600 {
  background-color: #43A047;
}

.border-success-600 {
  border-color: #43A047;
}

.border-top-success-600 {
  border-top-color: #43A047;
}

.border-bottom-success-600 {
  border-bottom-color: #43A047;
}

.border-left-success-600 {
  border-left-color: #43A047;
}

.border-right-success-600 {
  border-right-color: #43A047;
}

.text-success-700 {
  color: #388E3C;
}

.text-success-700[href]:hover, .text-success-700[href]:focus {
  color: #2d7330;
}

.bg-success-700 {
  background-color: #388E3C;
}

.border-success-700 {
  border-color: #388E3C;
}

.border-top-success-700 {
  border-top-color: #388E3C;
}

.border-bottom-success-700 {
  border-bottom-color: #388E3C;
}

.border-left-success-700 {
  border-left-color: #388E3C;
}

.border-right-success-700 {
  border-right-color: #388E3C;
}

.text-success-800 {
  color: #2E7D32;
}

.text-success-800[href]:hover, .text-success-800[href]:focus {
  color: #246127;
}

.bg-success-800 {
  background-color: #2E7D32;
}

.border-success-800 {
  border-color: #2E7D32;
}

.border-top-success-800 {
  border-top-color: #2E7D32;
}

.border-bottom-success-800 {
  border-bottom-color: #2E7D32;
}

.border-left-success-800 {
  border-left-color: #2E7D32;
}

.border-right-success-800 {
  border-right-color: #2E7D32;
}

.alpha-warning {
  background-color: #FBE9E7;
}

.text-warning {
  color: #FF5722;
}

.text-warning[href]:hover, .text-warning[href]:focus {
  color: #fb3c00;
}

.bg-warning {
  background-color: #FF5722;
}

.border-warning {
  border-color: #FF5722;
}

.border-top-warning {
  border-top-color: #FF5722;
}

.border-bottom-warning {
  border-bottom-color: #FF5722;
}

.border-left-warning {
  border-left-color: #FF5722;
}

.border-right-warning {
  border-right-color: #FF5722;
}

.text-warning-300 {
  color: #FF8A65;
}

.text-warning-300[href]:hover, .text-warning-300[href]:focus {
  color: #ff6d3f;
}

.bg-warning-300 {
  background-color: #FF8A65;
}

.border-warning-300 {
  border-color: #FF8A65;
}

.border-top-warning-300 {
  border-top-color: #FF8A65;
}

.border-bottom-warning-300 {
  border-bottom-color: #FF8A65;
}

.border-left-warning-300 {
  border-left-color: #FF8A65;
}

.border-right-warning-300 {
  border-right-color: #FF8A65;
}

.text-warning-400 {
  color: #FF7043;
}

.text-warning-400[href]:hover, .text-warning-400[href]:focus {
  color: #ff531d;
}

.bg-warning-400 {
  background-color: #FF7043;
}

.border-warning-400 {
  border-color: #FF7043;
}

.border-top-warning-400 {
  border-top-color: #FF7043;
}

.border-bottom-warning-400 {
  border-bottom-color: #FF7043;
}

.border-left-warning-400 {
  border-left-color: #FF7043;
}

.border-right-warning-400 {
  border-right-color: #FF7043;
}

.text-warning-600 {
  color: #F4511E;
}

.text-warning-600[href]:hover, .text-warning-600[href]:focus {
  color: #e13e0b;
}

.bg-warning-600 {
  background-color: #F4511E;
}

.border-warning-600 {
  border-color: #F4511E;
}

.border-top-warning-600 {
  border-top-color: #F4511E;
}

.border-bottom-warning-600 {
  border-bottom-color: #F4511E;
}

.border-left-warning-600 {
  border-left-color: #F4511E;
}

.border-right-warning-600 {
  border-right-color: #F4511E;
}

.text-warning-700 {
  color: #E64A19;
}

.text-warning-700[href]:hover, .text-warning-700[href]:focus {
  color: #c43f15;
}

.bg-warning-700 {
  background-color: #E64A19;
}

.border-warning-700 {
  border-color: #E64A19;
}

.border-top-warning-700 {
  border-top-color: #E64A19;
}

.border-bottom-warning-700 {
  border-bottom-color: #E64A19;
}

.border-left-warning-700 {
  border-left-color: #E64A19;
}

.border-right-warning-700 {
  border-right-color: #E64A19;
}

.text-warning-800 {
  color: #D84315;
}

.text-warning-800[href]:hover, .text-warning-800[href]:focus {
  color: #b53812;
}

.bg-warning-800 {
  background-color: #D84315;
}

.border-warning-800 {
  border-color: #D84315;
}

.border-top-warning-800 {
  border-top-color: #D84315;
}

.border-bottom-warning-800 {
  border-bottom-color: #D84315;
}

.border-left-warning-800 {
  border-left-color: #D84315;
}

.border-right-warning-800 {
  border-right-color: #D84315;
}

.alpha-info {
  background-color: #E0F7FA;
}

.text-info {
  color: #00BCD4;
}

.text-info[href]:hover, .text-info[href]:focus {
  color: #009aae;
}

.bg-info {
  background-color: #00BCD4;
}

.border-info {
  border-color: #00BCD4;
}

.border-top-info {
  border-top-color: #00BCD4;
}

.border-bottom-info {
  border-bottom-color: #00BCD4;
}

.border-left-info {
  border-left-color: #00BCD4;
}

.border-right-info {
  border-right-color: #00BCD4;
}

.text-info-300 {
  color: #4DD0E1;
}

.text-info-300[href]:hover, .text-info-300[href]:focus {
  color: #2cc7db;
}

.bg-info-300 {
  background-color: #4DD0E1;
}

.border-info-300 {
  border-color: #4DD0E1;
}

.border-top-info-300 {
  border-top-color: #4DD0E1;
}

.border-bottom-info-300 {
  border-bottom-color: #4DD0E1;
}

.border-left-info-300 {
  border-left-color: #4DD0E1;
}

.border-right-info-300 {
  border-right-color: #4DD0E1;
}

.text-info-400 {
  color: #26C6DA;
}

.text-info-400[href]:hover, .text-info-400[href]:focus {
  color: #20a9ba;
}

.bg-info-400 {
  background-color: #26C6DA;
}

.border-info-400 {
  border-color: #26C6DA;
}

.border-top-info-400 {
  border-top-color: #26C6DA;
}

.border-bottom-info-400 {
  border-bottom-color: #26C6DA;
}

.border-left-info-400 {
  border-left-color: #26C6DA;
}

.border-right-info-400 {
  border-right-color: #26C6DA;
}

.text-info-600 {
  color: #00ACC1;
}

.text-info-600[href]:hover, .text-info-600[href]:focus {
  color: #008a9b;
}

.bg-info-600 {
  background-color: #00ACC1;
}

.border-info-600 {
  border-color: #00ACC1;
}

.border-top-info-600 {
  border-top-color: #00ACC1;
}

.border-bottom-info-600 {
  border-bottom-color: #00ACC1;
}

.border-left-info-600 {
  border-left-color: #00ACC1;
}

.border-right-info-600 {
  border-right-color: #00ACC1;
}

.text-info-700 {
  color: #0097A7;
}

.text-info-700[href]:hover, .text-info-700[href]:focus {
  color: #007481;
}

.bg-info-700 {
  background-color: #0097A7;
}

.border-info-700 {
  border-color: #0097A7;
}

.border-top-info-700 {
  border-top-color: #0097A7;
}

.border-bottom-info-700 {
  border-bottom-color: #0097A7;
}

.border-left-info-700 {
  border-left-color: #0097A7;
}

.border-right-info-700 {
  border-right-color: #0097A7;
}

.text-info-800 {
  color: #00838F;
}

.text-info-800[href]:hover, .text-info-800[href]:focus {
  color: #006069;
}

.bg-info-800 {
  background-color: #00838F;
}

.border-info-800 {
  border-color: #00838F;
}

.border-top-info-800 {
  border-top-color: #00838F;
}

.border-bottom-info-800 {
  border-bottom-color: #00838F;
}

.border-left-info-800 {
  border-left-color: #00838F;
}

.border-right-info-800 {
  border-right-color: #00838F;
}

.alpha-pink {
  background-color: #FCE4EC;
}

.text-pink {
  color: #E91E63;
}

.text-pink[href]:hover, .text-pink[href]:focus {
  color: #cd1453;
}

.bg-pink {
  background-color: #E91E63;
}

.border-pink {
  border-color: #E91E63;
}

.border-top-pink {
  border-top-color: #E91E63;
}

.border-bottom-pink {
  border-bottom-color: #E91E63;
}

.border-left-pink {
  border-left-color: #E91E63;
}

.border-right-pink {
  border-right-color: #E91E63;
}

.text-pink-300 {
  color: #F06292;
}

.text-pink-300[href]:hover, .text-pink-300[href]:focus {
  color: #ed3f7a;
}

.bg-pink-300 {
  background-color: #F06292;
}

.border-pink-300 {
  border-color: #F06292;
}

.border-top-pink-300 {
  border-top-color: #F06292;
}

.border-bottom-pink-300 {
  border-bottom-color: #F06292;
}

.border-left-pink-300 {
  border-left-color: #F06292;
}

.border-right-pink-300 {
  border-right-color: #F06292;
}

.text-pink-400 {
  color: #EC407A;
}

.text-pink-400[href]:hover, .text-pink-400[href]:focus {
  color: #e91d62;
}

.bg-pink-400 {
  background-color: #EC407A;
}

.border-pink-400 {
  border-color: #EC407A;
}

.border-top-pink-400 {
  border-top-color: #EC407A;
}

.border-bottom-pink-400 {
  border-bottom-color: #EC407A;
}

.border-left-pink-400 {
  border-left-color: #EC407A;
}

.border-right-pink-400 {
  border-right-color: #EC407A;
}

.text-pink-600 {
  color: #D81B60;
}

.text-pink-600[href]:hover, .text-pink-600[href]:focus {
  color: #b61751;
}

.bg-pink-600 {
  background-color: #D81B60;
}

.border-pink-600 {
  border-color: #D81B60;
}

.border-top-pink-600 {
  border-top-color: #D81B60;
}

.border-bottom-pink-600 {
  border-bottom-color: #D81B60;
}

.border-left-pink-600 {
  border-left-color: #D81B60;
}

.border-right-pink-600 {
  border-right-color: #D81B60;
}

.text-pink-700 {
  color: #C2185B;
}

.text-pink-700[href]:hover, .text-pink-700[href]:focus {
  color: #a0144b;
}

.bg-pink-700 {
  background-color: #C2185B;
}

.border-pink-700 {
  border-color: #C2185B;
}

.border-top-pink-700 {
  border-top-color: #C2185B;
}

.border-bottom-pink-700 {
  border-bottom-color: #C2185B;
}

.border-left-pink-700 {
  border-left-color: #C2185B;
}

.border-right-pink-700 {
  border-right-color: #C2185B;
}

.text-pink-800 {
  color: #AD1457;
}

.text-pink-800[href]:hover, .text-pink-800[href]:focus {
  color: #8b1046;
}

.bg-pink-800 {
  background-color: #AD1457;
}

.border-pink-800 {
  border-color: #AD1457;
}

.border-top-pink-800 {
  border-top-color: #AD1457;
}

.border-bottom-pink-800 {
  border-bottom-color: #AD1457;
}

.border-left-pink-800 {
  border-left-color: #AD1457;
}

.border-right-pink-800 {
  border-right-color: #AD1457;
}

.alpha-violet {
  background-color: #F3E5F5;
}

.text-violet {
  color: #9C27B0;
}

.text-violet[href]:hover, .text-violet[href]:focus {
  color: #802091;
}

.bg-violet {
  background-color: #9C27B0;
}

.border-violet {
  border-color: #9C27B0;
}

.border-top-violet {
  border-top-color: #9C27B0;
}

.border-bottom-violet {
  border-bottom-color: #9C27B0;
}

.border-left-violet {
  border-left-color: #9C27B0;
}

.border-right-violet {
  border-right-color: #9C27B0;
}

.text-violet-300 {
  color: #BA68C8;
}

.text-violet-300[href]:hover, .text-violet-300[href]:focus {
  color: #ad4cbe;
}

.bg-violet-300 {
  background-color: #BA68C8;
}

.border-violet-300 {
  border-color: #BA68C8;
}

.border-top-violet-300 {
  border-top-color: #BA68C8;
}

.border-bottom-violet-300 {
  border-bottom-color: #BA68C8;
}

.border-left-violet-300 {
  border-left-color: #BA68C8;
}

.border-right-violet-300 {
  border-right-color: #BA68C8;
}

.text-violet-400 {
  color: #AB47BC;
}

.text-violet-400[href]:hover, .text-violet-400[href]:focus {
  color: #933ba2;
}

.bg-violet-400 {
  background-color: #AB47BC;
}

.border-violet-400 {
  border-color: #AB47BC;
}

.border-top-violet-400 {
  border-top-color: #AB47BC;
}

.border-bottom-violet-400 {
  border-bottom-color: #AB47BC;
}

.border-left-violet-400 {
  border-left-color: #AB47BC;
}

.border-right-violet-400 {
  border-right-color: #AB47BC;
}

.text-violet-600 {
  color: #8E24AA;
}

.text-violet-600[href]:hover, .text-violet-600[href]:focus {
  color: #741d8a;
}

.bg-violet-600 {
  background-color: #8E24AA;
}

.border-violet-600 {
  border-color: #8E24AA;
}

.border-top-violet-600 {
  border-top-color: #8E24AA;
}

.border-bottom-violet-600 {
  border-bottom-color: #8E24AA;
}

.border-left-violet-600 {
  border-left-color: #8E24AA;
}

.border-right-violet-600 {
  border-right-color: #8E24AA;
}

.text-violet-700 {
  color: #7B1FA2;
}

.text-violet-700[href]:hover, .text-violet-700[href]:focus {
  color: #631982;
}

.bg-violet-700 {
  background-color: #7B1FA2;
}

.border-violet-700 {
  border-color: #7B1FA2;
}

.border-top-violet-700 {
  border-top-color: #7B1FA2;
}

.border-bottom-violet-700 {
  border-bottom-color: #7B1FA2;
}

.border-left-violet-700 {
  border-left-color: #7B1FA2;
}

.border-right-violet-700 {
  border-right-color: #7B1FA2;
}

.text-violet-800 {
  color: #6A1B9A;
}

.text-violet-800[href]:hover, .text-violet-800[href]:focus {
  color: #541579;
}

.bg-violet-800 {
  background-color: #6A1B9A;
}

.border-violet-800 {
  border-color: #6A1B9A;
}

.border-top-violet-800 {
  border-top-color: #6A1B9A;
}

.border-bottom-violet-800 {
  border-bottom-color: #6A1B9A;
}

.border-left-violet-800 {
  border-left-color: #6A1B9A;
}

.border-right-violet-800 {
  border-right-color: #6A1B9A;
}

.alpha-purple {
  background-color: #EDE7F6;
}

.text-purple {
  color: #673AB7;
}

.text-purple[href]:hover, .text-purple[href]:focus {
  color: #57319a;
}

.bg-purple {
  background-color: #673AB7;
}

.border-purple {
  border-color: #673AB7;
}

.border-top-purple {
  border-top-color: #673AB7;
}

.border-bottom-purple {
  border-bottom-color: #673AB7;
}

.border-left-purple {
  border-left-color: #673AB7;
}

.border-right-purple {
  border-right-color: #673AB7;
}

.text-purple-300 {
  color: #9575CD;
}

.text-purple-300[href]:hover, .text-purple-300[href]:focus {
  color: #7f59c3;
}

.bg-purple-300 {
  background-color: #9575CD;
}

.border-purple-300 {
  border-color: #9575CD;
}

.border-top-purple-300 {
  border-top-color: #9575CD;
}

.border-bottom-purple-300 {
  border-bottom-color: #9575CD;
}

.border-left-purple-300 {
  border-left-color: #9575CD;
}

.border-right-purple-300 {
  border-right-color: #9575CD;
}

.text-purple-400 {
  color: #7E57C2;
}

.text-purple-400[href]:hover, .text-purple-400[href]:focus {
  color: #6a41b2;
}

.bg-purple-400 {
  background-color: #7E57C2;
}

.border-purple-400 {
  border-color: #7E57C2;
}

.border-top-purple-400 {
  border-top-color: #7E57C2;
}

.border-bottom-purple-400 {
  border-bottom-color: #7E57C2;
}

.border-left-purple-400 {
  border-left-color: #7E57C2;
}

.border-right-purple-400 {
  border-right-color: #7E57C2;
}

.text-purple-600 {
  color: #5E35B1;
}

.text-purple-600[href]:hover, .text-purple-600[href]:focus {
  color: #4e2c94;
}

.bg-purple-600 {
  background-color: #5E35B1;
}

.border-purple-600 {
  border-color: #5E35B1;
}

.border-top-purple-600 {
  border-top-color: #5E35B1;
}

.border-bottom-purple-600 {
  border-bottom-color: #5E35B1;
}

.border-left-purple-600 {
  border-left-color: #5E35B1;
}

.border-right-purple-600 {
  border-right-color: #5E35B1;
}

.text-purple-700 {
  color: #512DA8;
}

.text-purple-700[href]:hover, .text-purple-700[href]:focus {
  color: #42258a;
}

.bg-purple-700 {
  background-color: #512DA8;
}

.border-purple-700 {
  border-color: #512DA8;
}

.border-top-purple-700 {
  border-top-color: #512DA8;
}

.border-bottom-purple-700 {
  border-bottom-color: #512DA8;
}

.border-left-purple-700 {
  border-left-color: #512DA8;
}

.border-right-purple-700 {
  border-right-color: #512DA8;
}

.text-purple-800 {
  color: #4527A0;
}

.text-purple-800[href]:hover, .text-purple-800[href]:focus {
  color: #382081;
}

.bg-purple-800 {
  background-color: #4527A0;
}

.border-purple-800 {
  border-color: #4527A0;
}

.border-top-purple-800 {
  border-top-color: #4527A0;
}

.border-bottom-purple-800 {
  border-bottom-color: #4527A0;
}

.border-left-purple-800 {
  border-left-color: #4527A0;
}

.border-right-purple-800 {
  border-right-color: #4527A0;
}

.alpha-indigo {
  background-color: #E8EAF6;
}

.text-indigo {
  color: #3F51B5;
}

.text-indigo[href]:hover, .text-indigo[href]:focus {
  color: #354499;
}

.bg-indigo {
  background-color: #3F51B5;
}

.border-indigo {
  border-color: #3F51B5;
}

.border-top-indigo {
  border-top-color: #3F51B5;
}

.border-bottom-indigo {
  border-bottom-color: #3F51B5;
}

.border-left-indigo {
  border-left-color: #3F51B5;
}

.border-right-indigo {
  border-right-color: #3F51B5;
}

.text-indigo-300 {
  color: #7986CB;
}

.text-indigo-300[href]:hover, .text-indigo-300[href]:focus {
  color: #5d6dc0;
}

.bg-indigo-300 {
  background-color: #7986CB;
}

.border-indigo-300 {
  border-color: #7986CB;
}

.border-top-indigo-300 {
  border-top-color: #7986CB;
}

.border-bottom-indigo-300 {
  border-bottom-color: #7986CB;
}

.border-left-indigo-300 {
  border-left-color: #7986CB;
}

.border-right-indigo-300 {
  border-right-color: #7986CB;
}

.text-indigo-400 {
  color: #5C6BC0;
}

.text-indigo-400[href]:hover, .text-indigo-400[href]:focus {
  color: #4555b1;
}

.bg-indigo-400 {
  background-color: #5C6BC0;
}

.border-indigo-400 {
  border-color: #5C6BC0;
}

.border-top-indigo-400 {
  border-top-color: #5C6BC0;
}

.border-bottom-indigo-400 {
  border-bottom-color: #5C6BC0;
}

.border-left-indigo-400 {
  border-left-color: #5C6BC0;
}

.border-right-indigo-400 {
  border-right-color: #5C6BC0;
}

.text-indigo-600 {
  color: #3949AB;
}

.text-indigo-600[href]:hover, .text-indigo-600[href]:focus {
  color: #2f3d8e;
}

.bg-indigo-600 {
  background-color: #3949AB;
}

.border-indigo-600 {
  border-color: #3949AB;
}

.border-top-indigo-600 {
  border-top-color: #3949AB;
}

.border-bottom-indigo-600 {
  border-bottom-color: #3949AB;
}

.border-left-indigo-600 {
  border-left-color: #3949AB;
}

.border-right-indigo-600 {
  border-right-color: #3949AB;
}

.text-indigo-700 {
  color: #303F9F;
}

.text-indigo-700[href]:hover, .text-indigo-700[href]:focus {
  color: #273382;
}

.bg-indigo-700 {
  background-color: #303F9F;
}

.border-indigo-700 {
  border-color: #303F9F;
}

.border-top-indigo-700 {
  border-top-color: #303F9F;
}

.border-bottom-indigo-700 {
  border-bottom-color: #303F9F;
}

.border-left-indigo-700 {
  border-left-color: #303F9F;
}

.border-right-indigo-700 {
  border-right-color: #303F9F;
}

.text-indigo-800 {
  color: #283593;
}

.text-indigo-800[href]:hover, .text-indigo-800[href]:focus {
  color: #202a75;
}

.bg-indigo-800 {
  background-color: #283593;
}

.border-indigo-800 {
  border-color: #283593;
}

.border-top-indigo-800 {
  border-top-color: #283593;
}

.border-bottom-indigo-800 {
  border-bottom-color: #283593;
}

.border-left-indigo-800 {
  border-left-color: #283593;
}

.border-right-indigo-800 {
  border-right-color: #283593;
}

.alpha-blue {
  background-color: #E1F5FE;
}

.text-blue {
  color: #03A9F4;
}

.text-blue[href]:hover, .text-blue[href]:focus {
  color: #038fce;
}

.bg-blue {
  background-color: #03A9F4;
}

.border-blue {
  border-color: #03A9F4;
}

.border-top-blue {
  border-top-color: #03A9F4;
}

.border-bottom-blue {
  border-bottom-color: #03A9F4;
}

.border-left-blue {
  border-left-color: #03A9F4;
}

.border-right-blue {
  border-right-color: #03A9F4;
}

.text-blue-300 {
  color: #4FC3F7;
}

.text-blue-300[href]:hover, .text-blue-300[href]:focus {
  color: #2ab7f5;
}

.bg-blue-300 {
  background-color: #4FC3F7;
}

.border-blue-300 {
  border-color: #4FC3F7;
}

.border-top-blue-300 {
  border-top-color: #4FC3F7;
}

.border-bottom-blue-300 {
  border-bottom-color: #4FC3F7;
}

.border-left-blue-300 {
  border-left-color: #4FC3F7;
}

.border-right-blue-300 {
  border-right-color: #4FC3F7;
}

.text-blue-400 {
  color: #29B6F6;
}

.text-blue-400[href]:hover, .text-blue-400[href]:focus {
  color: #0aa7ef;
}

.bg-blue-400 {
  background-color: #29B6F6;
}

.border-blue-400 {
  border-color: #29B6F6;
}

.border-top-blue-400 {
  border-top-color: #29B6F6;
}

.border-bottom-blue-400 {
  border-bottom-color: #29B6F6;
}

.border-left-blue-400 {
  border-left-color: #29B6F6;
}

.border-right-blue-400 {
  border-right-color: #29B6F6;
}

.text-blue-600 {
  color: #039BE5;
}

.text-blue-600[href]:hover, .text-blue-600[href]:focus {
  color: #0381bf;
}

.bg-blue-600 {
  background-color: #039BE5;
}

.border-blue-600 {
  border-color: #039BE5;
}

.border-top-blue-600 {
  border-top-color: #039BE5;
}

.border-bottom-blue-600 {
  border-bottom-color: #039BE5;
}

.border-left-blue-600 {
  border-left-color: #039BE5;
}

.border-right-blue-600 {
  border-right-color: #039BE5;
}

.text-blue-700 {
  color: #0288D1;
}

.text-blue-700[href]:hover, .text-blue-700[href]:focus {
  color: #026fab;
}

.bg-blue-700 {
  background-color: #0288D1;
}

.border-blue-700 {
  border-color: #0288D1;
}

.border-top-blue-700 {
  border-top-color: #0288D1;
}

.border-bottom-blue-700 {
  border-bottom-color: #0288D1;
}

.border-left-blue-700 {
  border-left-color: #0288D1;
}

.border-right-blue-700 {
  border-right-color: #0288D1;
}

.text-blue-800 {
  color: #0277BD;
}

.text-blue-800[href]:hover, .text-blue-800[href]:focus {
  color: #025f97;
}

.bg-blue-800 {
  background-color: #0277BD;
}

.border-blue-800 {
  border-color: #0277BD;
}

.border-top-blue-800 {
  border-top-color: #0277BD;
}

.border-bottom-blue-800 {
  border-bottom-color: #0277BD;
}

.border-left-blue-800 {
  border-left-color: #0277BD;
}

.border-right-blue-800 {
  border-right-color: #0277BD;
}

.alpha-teal {
  background-color: #E0F2F1;
}

.text-teal {
  color: #009688;
}

.text-teal[href]:hover, .text-teal[href]:focus {
  color: #007065;
}

.bg-teal {
  background-color: #009688;
}

.border-teal {
  border-color: #009688;
}

.border-top-teal {
  border-top-color: #009688;
}

.border-bottom-teal {
  border-bottom-color: #009688;
}

.border-left-teal {
  border-left-color: #009688;
}

.border-right-teal {
  border-right-color: #009688;
}

.text-teal-300 {
  color: #4DB6AC;
}

.text-teal-300[href]:hover, .text-teal-300[href]:focus {
  color: #409d94;
}

.bg-teal-300 {
  background-color: #4DB6AC;
}

.border-teal-300 {
  border-color: #4DB6AC;
}

.border-top-teal-300 {
  border-top-color: #4DB6AC;
}

.border-bottom-teal-300 {
  border-bottom-color: #4DB6AC;
}

.border-left-teal-300 {
  border-left-color: #4DB6AC;
}

.border-right-teal-300 {
  border-right-color: #4DB6AC;
}

.text-teal-400 {
  color: #26A69A;
}

.text-teal-400[href]:hover, .text-teal-400[href]:focus {
  color: #1f877d;
}

.bg-teal-400 {
  background-color: #26A69A;
}

.border-teal-400 {
  border-color: #26A69A;
}

.border-top-teal-400 {
  border-top-color: #26A69A;
}

.border-bottom-teal-400 {
  border-bottom-color: #26A69A;
}

.border-left-teal-400 {
  border-left-color: #26A69A;
}

.border-right-teal-400 {
  border-right-color: #26A69A;
}

.text-teal-600 {
  color: #00897B;
}

.text-teal-600[href]:hover, .text-teal-600[href]:focus {
  color: #006359;
}

.bg-teal-600 {
  background-color: #00897B;
}

.border-teal-600 {
  border-color: #00897B;
}

.border-top-teal-600 {
  border-top-color: #00897B;
}

.border-bottom-teal-600 {
  border-bottom-color: #00897B;
}

.border-left-teal-600 {
  border-left-color: #00897B;
}

.border-right-teal-600 {
  border-right-color: #00897B;
}

.text-teal-700 {
  color: #00796B;
}

.text-teal-700[href]:hover, .text-teal-700[href]:focus {
  color: #005349;
}

.bg-teal-700 {
  background-color: #00796B;
}

.border-teal-700 {
  border-color: #00796B;
}

.border-top-teal-700 {
  border-top-color: #00796B;
}

.border-bottom-teal-700 {
  border-bottom-color: #00796B;
}

.border-left-teal-700 {
  border-left-color: #00796B;
}

.border-right-teal-700 {
  border-right-color: #00796B;
}

.text-teal-800 {
  color: #00695C;
}

.text-teal-800[href]:hover, .text-teal-800[href]:focus {
  color: #00433a;
}

.bg-teal-800 {
  background-color: #00695C;
}

.border-teal-800 {
  border-color: #00695C;
}

.border-top-teal-800 {
  border-top-color: #00695C;
}

.border-bottom-teal-800 {
  border-bottom-color: #00695C;
}

.border-left-teal-800 {
  border-left-color: #00695C;
}

.border-right-teal-800 {
  border-right-color: #00695C;
}

.alpha-green {
  background-color: #F1F8E9;
}

.text-green {
  color: #8BC34A;
}

.text-green[href]:hover, .text-green[href]:focus {
  color: #78ad39;
}

.bg-green {
  background-color: #8BC34A;
}

.border-green {
  border-color: #8BC34A;
}

.border-top-green {
  border-top-color: #8BC34A;
}

.border-bottom-green {
  border-bottom-color: #8BC34A;
}

.border-left-green {
  border-left-color: #8BC34A;
}

.border-right-green {
  border-right-color: #8BC34A;
}

.text-green-300 {
  color: #AED581;
}

.text-green-300[href]:hover, .text-green-300[href]:focus {
  color: #9ccb64;
}

.bg-green-300 {
  background-color: #AED581;
}

.border-green-300 {
  border-color: #AED581;
}

.border-top-green-300 {
  border-top-color: #AED581;
}

.border-bottom-green-300 {
  border-bottom-color: #AED581;
}

.border-left-green-300 {
  border-left-color: #AED581;
}

.border-right-green-300 {
  border-right-color: #AED581;
}

.text-green-400 {
  color: #9CCC65;
}

.text-green-400[href]:hover, .text-green-400[href]:focus {
  color: #8ac248;
}

.bg-green-400 {
  background-color: #9CCC65;
}

.border-green-400 {
  border-color: #9CCC65;
}

.border-top-green-400 {
  border-top-color: #9CCC65;
}

.border-bottom-green-400 {
  border-bottom-color: #9CCC65;
}

.border-left-green-400 {
  border-left-color: #9CCC65;
}

.border-right-green-400 {
  border-right-color: #9CCC65;
}

.text-green-600 {
  color: #7CB342;
}

.text-green-600[href]:hover, .text-green-600[href]:focus {
  color: #699738;
}

.bg-green-600 {
  background-color: #7CB342;
}

.border-green-600 {
  border-color: #7CB342;
}

.border-top-green-600 {
  border-top-color: #7CB342;
}

.border-bottom-green-600 {
  border-bottom-color: #7CB342;
}

.border-left-green-600 {
  border-left-color: #7CB342;
}

.border-right-green-600 {
  border-right-color: #7CB342;
}

.text-green-700 {
  color: #689F38;
}

.text-green-700[href]:hover, .text-green-700[href]:focus {
  color: #55832e;
}

.bg-green-700 {
  background-color: #689F38;
}

.border-green-700 {
  border-color: #689F38;
}

.border-top-green-700 {
  border-top-color: #689F38;
}

.border-bottom-green-700 {
  border-bottom-color: #689F38;
}

.border-left-green-700 {
  border-left-color: #689F38;
}

.border-right-green-700 {
  border-right-color: #689F38;
}

.text-green-800 {
  color: #558B2F;
}

.text-green-800[href]:hover, .text-green-800[href]:focus {
  color: #446e25;
}

.bg-green-800 {
  background-color: #558B2F;
}

.border-green-800 {
  border-color: #558B2F;
}

.border-top-green-800 {
  border-top-color: #558B2F;
}

.border-bottom-green-800 {
  border-bottom-color: #558B2F;
}

.border-left-green-800 {
  border-left-color: #558B2F;
}

.border-right-green-800 {
  border-right-color: #558B2F;
}

.alpha-orange {
  background-color: #FFF3E0;
}

.text-orange {
  color: #FF9800;
}

.text-orange[href]:hover, .text-orange[href]:focus {
  color: #d98100;
}

.bg-orange {
  background-color: #FF9800;
}

.border-orange {
  border-color: #FF9800;
}

.border-top-orange {
  border-top-color: #FF9800;
}

.border-bottom-orange {
  border-bottom-color: #FF9800;
}

.border-left-orange {
  border-left-color: #FF9800;
}

.border-right-orange {
  border-right-color: #FF9800;
}

.text-orange-300 {
  color: #FFB74D;
}

.text-orange-300[href]:hover, .text-orange-300[href]:focus {
  color: #ffa827;
}

.bg-orange-300 {
  background-color: #FFB74D;
}

.border-orange-300 {
  border-color: #FFB74D;
}

.border-top-orange-300 {
  border-top-color: #FFB74D;
}

.border-bottom-orange-300 {
  border-bottom-color: #FFB74D;
}

.border-left-orange-300 {
  border-left-color: #FFB74D;
}

.border-right-orange-300 {
  border-right-color: #FFB74D;
}

.text-orange-400 {
  color: #FFA726;
}

.text-orange-400[href]:hover, .text-orange-400[href]:focus {
  color: #ff9700;
}

.bg-orange-400 {
  background-color: #FFA726;
}

.border-orange-400 {
  border-color: #FFA726;
}

.border-top-orange-400 {
  border-top-color: #FFA726;
}

.border-bottom-orange-400 {
  border-bottom-color: #FFA726;
}

.border-left-orange-400 {
  border-left-color: #FFA726;
}

.border-right-orange-400 {
  border-right-color: #FFA726;
}

.text-orange-600 {
  color: #FB8C00;
}

.text-orange-600[href]:hover, .text-orange-600[href]:focus {
  color: #d57700;
}

.bg-orange-600 {
  background-color: #FB8C00;
}

.border-orange-600 {
  border-color: #FB8C00;
}

.border-top-orange-600 {
  border-top-color: #FB8C00;
}

.border-bottom-orange-600 {
  border-bottom-color: #FB8C00;
}

.border-left-orange-600 {
  border-left-color: #FB8C00;
}

.border-right-orange-600 {
  border-right-color: #FB8C00;
}

.text-orange-700 {
  color: #F57C00;
}

.text-orange-700[href]:hover, .text-orange-700[href]:focus {
  color: #cf6900;
}

.bg-orange-700 {
  background-color: #F57C00;
}

.border-orange-700 {
  border-color: #F57C00;
}

.border-top-orange-700 {
  border-top-color: #F57C00;
}

.border-bottom-orange-700 {
  border-bottom-color: #F57C00;
}

.border-left-orange-700 {
  border-left-color: #F57C00;
}

.border-right-orange-700 {
  border-right-color: #F57C00;
}

.text-orange-800 {
  color: #EF6C00;
}

.text-orange-800[href]:hover, .text-orange-800[href]:focus {
  color: #c95b00;
}

.bg-orange-800 {
  background-color: #EF6C00;
}

.border-orange-800 {
  border-color: #EF6C00;
}

.border-top-orange-800 {
  border-top-color: #EF6C00;
}

.border-bottom-orange-800 {
  border-bottom-color: #EF6C00;
}

.border-left-orange-800 {
  border-left-color: #EF6C00;
}

.border-right-orange-800 {
  border-right-color: #EF6C00;
}

.alpha-brown {
  background-color: #EFEBE9;
}

.text-brown {
  color: #795548;
}

.text-brown[href]:hover, .text-brown[href]:focus {
  color: #61443a;
}

.bg-brown {
  background-color: #795548;
}

.border-brown {
  border-color: #795548;
}

.border-top-brown {
  border-top-color: #795548;
}

.border-bottom-brown {
  border-bottom-color: #795548;
}

.border-left-brown {
  border-left-color: #795548;
}

.border-right-brown {
  border-right-color: #795548;
}

.text-brown-300 {
  color: #A1887F;
}

.text-brown-300[href]:hover, .text-brown-300[href]:focus {
  color: #90746a;
}

.bg-brown-300 {
  background-color: #A1887F;
}

.border-brown-300 {
  border-color: #A1887F;
}

.border-top-brown-300 {
  border-top-color: #A1887F;
}

.border-bottom-brown-300 {
  border-bottom-color: #A1887F;
}

.border-left-brown-300 {
  border-left-color: #A1887F;
}

.border-right-brown-300 {
  border-right-color: #A1887F;
}

.text-brown-400 {
  color: #8D6E63;
}

.text-brown-400[href]:hover, .text-brown-400[href]:focus {
  color: #775c53;
}

.bg-brown-400 {
  background-color: #8D6E63;
}

.border-brown-400 {
  border-color: #8D6E63;
}

.border-top-brown-400 {
  border-top-color: #8D6E63;
}

.border-bottom-brown-400 {
  border-bottom-color: #8D6E63;
}

.border-left-brown-400 {
  border-left-color: #8D6E63;
}

.border-right-brown-400 {
  border-right-color: #8D6E63;
}

.text-brown-600 {
  color: #6D4C41;
}

.text-brown-600[href]:hover, .text-brown-600[href]:focus {
  color: #553b33;
}

.bg-brown-600 {
  background-color: #6D4C41;
}

.border-brown-600 {
  border-color: #6D4C41;
}

.border-top-brown-600 {
  border-top-color: #6D4C41;
}

.border-bottom-brown-600 {
  border-bottom-color: #6D4C41;
}

.border-left-brown-600 {
  border-left-color: #6D4C41;
}

.border-right-brown-600 {
  border-right-color: #6D4C41;
}

.text-brown-700 {
  color: #5D4037;
}

.text-brown-700[href]:hover, .text-brown-700[href]:focus {
  color: #452f29;
}

.bg-brown-700 {
  background-color: #5D4037;
}

.border-brown-700 {
  border-color: #5D4037;
}

.border-top-brown-700 {
  border-top-color: #5D4037;
}

.border-bottom-brown-700 {
  border-bottom-color: #5D4037;
}

.border-left-brown-700 {
  border-left-color: #5D4037;
}

.border-right-brown-700 {
  border-right-color: #5D4037;
}

.text-brown-800 {
  color: #4E342E;
}

.text-brown-800[href]:hover, .text-brown-800[href]:focus {
  color: #362420;
}

.bg-brown-800 {
  background-color: #4E342E;
}

.border-brown-800 {
  border-color: #4E342E;
}

.border-top-brown-800 {
  border-top-color: #4E342E;
}

.border-bottom-brown-800 {
  border-bottom-color: #4E342E;
}

.border-left-brown-800 {
  border-left-color: #4E342E;
}

.border-right-brown-800 {
  border-right-color: #4E342E;
}

.alpha-grey {
  background-color: #FAFAFA;
}

.text-grey {
  color: #777;
}

.text-grey[href]:hover, .text-grey[href]:focus {
  color: #646464;
}

.bg-grey {
  background-color: #777;
}

.border-grey {
  border-color: #777;
}

.border-top-grey {
  border-top-color: #777;
}

.border-bottom-grey {
  border-bottom-color: #777;
}

.border-left-grey {
  border-left-color: #777;
}

.border-right-grey {
  border-right-color: #777;
}

.text-grey-300 {
  color: #999;
}

.text-grey-300[href]:hover, .text-grey-300[href]:focus {
  color: #868686;
}

.bg-grey-300 {
  background-color: #999;
}

.border-grey-300 {
  border-color: #999;
}

.border-top-grey-300 {
  border-top-color: #999;
}

.border-bottom-grey-300 {
  border-bottom-color: #999;
}

.border-left-grey-300 {
  border-left-color: #999;
}

.border-right-grey-300 {
  border-right-color: #999;
}

.text-grey-400 {
  color: #888;
}

.text-grey-400[href]:hover, .text-grey-400[href]:focus {
  color: #757575;
}

.bg-grey-400 {
  background-color: #888;
}

.border-grey-400 {
  border-color: #888;
}

.border-top-grey-400 {
  border-top-color: #888;
}

.border-bottom-grey-400 {
  border-bottom-color: #888;
}

.border-left-grey-400 {
  border-left-color: #888;
}

.border-right-grey-400 {
  border-right-color: #888;
}

.text-grey-600 {
  color: #666;
}

.text-grey-600[href]:hover, .text-grey-600[href]:focus {
  color: #535353;
}

.bg-grey-600 {
  background-color: #666;
}

.border-grey-600 {
  border-color: #666;
}

.border-top-grey-600 {
  border-top-color: #666;
}

.border-bottom-grey-600 {
  border-bottom-color: #666;
}

.border-left-grey-600 {
  border-left-color: #666;
}

.border-right-grey-600 {
  border-right-color: #666;
}

.text-grey-700 {
  color: #555;
}

.text-grey-700[href]:hover, .text-grey-700[href]:focus {
  color: #424242;
}

.bg-grey-700 {
  background-color: #555;
}

.border-grey-700 {
  border-color: #555;
}

.border-top-grey-700 {
  border-top-color: #555;
}

.border-bottom-grey-700 {
  border-bottom-color: #555;
}

.border-left-grey-700 {
  border-left-color: #555;
}

.border-right-grey-700 {
  border-right-color: #555;
}

.text-grey-800 {
  color: #444;
}

.text-grey-800[href]:hover, .text-grey-800[href]:focus {
  color: #313131;
}

.bg-grey-800 {
  background-color: #444;
}

.border-grey-800 {
  border-color: #444;
}

.border-top-grey-800 {
  border-top-color: #444;
}

.border-bottom-grey-800 {
  border-bottom-color: #444;
}

.border-left-grey-800 {
  border-left-color: #444;
}

.border-right-grey-800 {
  border-right-color: #444;
}

.alpha-slate {
  background-color: #ECEFF1;
}

.text-slate {
  color: #607D8B;
}

.text-slate[href]:hover, .text-slate[href]:focus {
  color: #506974;
}

.bg-slate {
  background-color: #607D8B;
}

.border-slate {
  border-color: #607D8B;
}

.border-top-slate {
  border-top-color: #607D8B;
}

.border-bottom-slate {
  border-bottom-color: #607D8B;
}

.border-left-slate {
  border-left-color: #607D8B;
}

.border-right-slate {
  border-right-color: #607D8B;
}

.text-slate-300 {
  color: #90A4AE;
}

.text-slate-300[href]:hover, .text-slate-300[href]:focus {
  color: #7a929e;
}

.bg-slate-300 {
  background-color: #90A4AE;
}

.border-slate-300 {
  border-color: #90A4AE;
}

.border-top-slate-300 {
  border-top-color: #90A4AE;
}

.border-bottom-slate-300 {
  border-bottom-color: #90A4AE;
}

.border-left-slate-300 {
  border-left-color: #90A4AE;
}

.border-right-slate-300 {
  border-right-color: #90A4AE;
}

.text-slate-400 {
  color: #78909C;
}

.text-slate-400[href]:hover, .text-slate-400[href]:focus {
  color: #657d89;
}

.bg-slate-400 {
  background-color: #78909C;
}

.border-slate-400 {
  border-color: #78909C;
}

.border-top-slate-400 {
  border-top-color: #78909C;
}

.border-bottom-slate-400 {
  border-bottom-color: #78909C;
}

.border-left-slate-400 {
  border-left-color: #78909C;
}

.border-right-slate-400 {
  border-right-color: #78909C;
}

.text-slate-600 {
  color: #546E7A;
}

.text-slate-600[href]:hover, .text-slate-600[href]:focus {
  color: #445a63;
}

.bg-slate-600 {
  background-color: #546E7A;
}

.border-slate-600 {
  border-color: #546E7A;
}

.border-top-slate-600 {
  border-top-color: #546E7A;
}

.border-bottom-slate-600 {
  border-bottom-color: #546E7A;
}

.border-left-slate-600 {
  border-left-color: #546E7A;
}

.border-right-slate-600 {
  border-right-color: #546E7A;
}

.text-slate-700 {
  color: #455A64;
}

.text-slate-700[href]:hover, .text-slate-700[href]:focus {
  color: #35464d;
}

.bg-slate-700 {
  background-color: #455A64;
}

.border-slate-700 {
  border-color: #455A64;
}

.border-top-slate-700 {
  border-top-color: #455A64;
}

.border-bottom-slate-700 {
  border-bottom-color: #455A64;
}

.border-left-slate-700 {
  border-left-color: #455A64;
}

.border-right-slate-700 {
  border-right-color: #455A64;
}

.text-slate-800 {
  color: #37474F;
}

.text-slate-800[href]:hover, .text-slate-800[href]:focus {
  color: #273338;
}

.bg-slate-800 {
  background-color: #37474F;
}

.border-slate-800 {
  border-color: #37474F;
}

.border-top-slate-800 {
  border-top-color: #37474F;
}

.border-bottom-slate-800 {
  border-bottom-color: #37474F;
}

.border-left-slate-800 {
  border-left-color: #37474F;
}

.border-right-slate-800 {
  border-right-color: #37474F;
}

.border-transparent {
  border-color: transparent !important;
}

.border-top-transparent {
  border-top-color: transparent !important;
}

.border-bottom-transparent {
  border-bottom-color: transparent !important;
}

.border-left-transparent {
  border-left-color: transparent !important;
}

.border-right-transparent {
  border-right-color: transparent !important;
}

.border-light-alpha {
  border-color: rgba(255, 255, 255, 0.1);
}

.border-top-light-alpha {
  border-top-color: rgba(255, 255, 255, 0.1);
}

.border-bottom-light-alpha {
  border-bottom-color: rgba(255, 255, 255, 0.1);
}

.border-left-light-alpha {
  border-left-color: rgba(255, 255, 255, 0.1);
}

.border-right-light-alpha {
  border-right-color: rgba(255, 255, 255, 0.1);
}

.border-dark-alpha {
  border-color: rgba(0, 0, 0, 0.1);
}

.border-top-dark-alpha {
  border-top-color: rgba(0, 0, 0, 0.1);
}

.border-bottom-dark-alpha {
  border-bottom-color: rgba(0, 0, 0, 0.1);
}

.border-left-dark-alpha {
  border-left-color: rgba(0, 0, 0, 0.1);
}

.border-right-dark-alpha {
  border-right-color: rgba(0, 0, 0, 0.1);
}

.bg-dark-alpha {
  background-color: rgba(0, 0, 0, 0.2);
}

.bg-light-alpha {
  background-color: rgba(255, 255, 255, 0.1);
}

.breadcrumb {
  background-color: transparent;
}

.custom-file-label::after {
  content: "Choisir un fichier" !important;
}

label.required::before {
  content: "*";
  color: #ff2845;
}


/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vZm9udHMuY3NzIiwid2VicGFjazovLy9hcHAuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vbm9kZV9tb2R1bGVzL2ZvbnQtYXdlc29tZS9jc3MvZm9udC1hd2Vzb21lLmNzcyIsIndlYnBhY2s6Ly8vaWNvbnMvaWNvbW9vbi9zdHlsZXMuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL2Jvb3RzdHJhcC5zY3NzIiwid2VicGFjazovLy8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX3Jvb3Quc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19yZWJvb3Quc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL192YXJpYWJsZXMuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL3ZlbmRvci9fcmZzLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX2hvdmVyLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fdHlwZS5zY3NzIiwid2VicGFjazovLy8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL19saXN0cy5zY3NzIiwid2VicGFjazovLy8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX2ltYWdlcy5zY3NzIiwid2VicGFjazovLy8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL19pbWFnZS5zY3NzIiwid2VicGFjazovLy8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL19ib3JkZXItcmFkaXVzLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fY29kZS5zY3NzIiwid2VicGFjazovLy8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX2dyaWQuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fZ3JpZC5zY3NzIiwid2VicGFjazovLy8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL19icmVha3BvaW50cy5zY3NzIiwid2VicGFjazovLy8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL19ncmlkLWZyYW1ld29yay5zY3NzIiwid2VicGFjazovLy8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX3RhYmxlcy5zY3NzIiwid2VicGFjazovLy8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL190YWJsZS1yb3cuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19mdW5jdGlvbnMuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19mb3Jtcy5zY3NzIiwid2VicGFjazovLy8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL190cmFuc2l0aW9uLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX2Zvcm1zLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX2dyYWRpZW50cy5zY3NzIiwid2VicGFjazovLy8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX2J1dHRvbnMuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fYnV0dG9ucy5zY3NzIiwid2VicGFjazovLy8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX3RyYW5zaXRpb25zLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fZHJvcGRvd24uc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fY2FyZXQuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fbmF2LWRpdmlkZXIuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19idXR0b24tZ3JvdXAuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19pbnB1dC1ncm91cC5zY3NzIiwid2VicGFjazovLy8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX2N1c3RvbS1mb3Jtcy5zY3NzIiwid2VicGFjazovLy8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX25hdi5zY3NzIiwid2VicGFjazovLy8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX25hdmJhci5zY3NzIiwid2VicGFjazovLy8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX2NhcmQuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19icmVhZGNydW1iLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fcGFnaW5hdGlvbi5zY3NzIiwid2VicGFjazovLy8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL19wYWdpbmF0aW9uLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fYmFkZ2Uuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fYmFkZ2Uuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19qdW1ib3Ryb24uc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19hbGVydC5zY3NzIiwid2VicGFjazovLy8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL19hbGVydC5zY3NzIiwid2VicGFjazovLy8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX3Byb2dyZXNzLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fbWVkaWEuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19saXN0LWdyb3VwLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX2xpc3QtZ3JvdXAuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19jbG9zZS5zY3NzIiwid2VicGFjazovLy8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX3RvYXN0cy5zY3NzIiwid2VicGFjazovLy8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX21vZGFsLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fdG9vbHRpcC5zY3NzIiwid2VicGFjazovLy8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL19yZXNldC10ZXh0LnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fcG9wb3Zlci5zY3NzIiwid2VicGFjazovLy8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX2Nhcm91c2VsLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX2NsZWFyZml4LnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fc3Bpbm5lcnMuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL3V0aWxpdGllcy9fYWxpZ24uc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fYmFja2dyb3VuZC12YXJpYW50LnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy91dGlsaXRpZXMvX2JhY2tncm91bmQuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL3V0aWxpdGllcy9fYm9yZGVycy5zY3NzIiwid2VicGFjazovLy8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvdXRpbGl0aWVzL19kaXNwbGF5LnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy91dGlsaXRpZXMvX2VtYmVkLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy91dGlsaXRpZXMvX2ZsZXguc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL3V0aWxpdGllcy9fZmxvYXQuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL3V0aWxpdGllcy9fb3ZlcmZsb3cuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL3V0aWxpdGllcy9fcG9zaXRpb24uc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fc2NyZWVuLXJlYWRlci5zY3NzIiwid2VicGFjazovLy8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvdXRpbGl0aWVzL19zaGFkb3dzLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy91dGlsaXRpZXMvX3NpemluZy5zY3NzIiwid2VicGFjazovLy8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvdXRpbGl0aWVzL19zdHJldGNoZWQtbGluay5zY3NzIiwid2VicGFjazovLy8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvdXRpbGl0aWVzL19zcGFjaW5nLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy91dGlsaXRpZXMvX3RleHQuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fdGV4dC10cnVuY2F0ZS5zY3NzIiwid2VicGFjazovLy8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL190ZXh0LWVtcGhhc2lzLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX3RleHQtaGlkZS5zY3NzIiwid2VicGFjazovLy8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvdXRpbGl0aWVzL192aXNpYmlsaXR5LnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fcHJpbnQuc2NzcyIsIndlYnBhY2s6Ly8vbGF5b3V0cy9sYXlvdXRfMS9kZWZhdWx0L2NvbXBpbGUvYm9vdHN0cmFwX2xpbWl0bGVzcy5zY3NzIiwid2VicGFjazovLy9fY29uZmlnLnNjc3MiLCJ3ZWJwYWNrOi8vL3NoYXJlZC91dGlscy9fbGwtZnVuY3Rpb25zLnNjc3MiLCJ3ZWJwYWNrOi8vL3NoYXJlZC91dGlscy9fbGwtbWl4aW5zLnNjc3MiLCJ3ZWJwYWNrOi8vL3RoZW1lcy9kZWZhdWx0L2NvbG9ycy9fcGFsZXR0ZS5zY3NzIiwid2VicGFjazovLy9sYXlvdXRzL2xheW91dF8xL2RlZmF1bHQvdmFyaWFibGVzL192YXJpYWJsZXMtY29yZS5zY3NzIiwid2VicGFjazovLy9sYXlvdXRzL2xheW91dF8xL2RlZmF1bHQvdmFyaWFibGVzL192YXJpYWJsZXMtY3VzdG9tLnNjc3MiLCJ3ZWJwYWNrOi8vL3RoZW1lcy9kZWZhdWx0L2Jvb3RzdHJhcF9saW1pdGxlc3MvX21peGlucy5zY3NzIiwid2VicGFjazovLy90aGVtZXMvZGVmYXVsdC9ib290c3RyYXBfbGltaXRsZXNzL21peGlucy9fYmFkZ2Uuc2NzcyIsIndlYnBhY2s6Ly8vdGhlbWVzL2RlZmF1bHQvYm9vdHN0cmFwX2xpbWl0bGVzcy9taXhpbnMvX2J1dHRvbnMuc2NzcyIsIndlYnBhY2s6Ly8vdGhlbWVzL2RlZmF1bHQvYm9vdHN0cmFwX2xpbWl0bGVzcy9taXhpbnMvX2NhcmV0LnNjc3MiLCJ3ZWJwYWNrOi8vL3RoZW1lcy9kZWZhdWx0L2Jvb3RzdHJhcF9saW1pdGxlc3MvbWl4aW5zL19mb3Jtcy5zY3NzIiwid2VicGFjazovLy90aGVtZXMvZGVmYXVsdC9ib290c3RyYXBfbGltaXRsZXNzL21peGlucy9fYmFja2dyb3VuZC12YXJpYW50LnNjc3MiLCJ3ZWJwYWNrOi8vL3RoZW1lcy9kZWZhdWx0L2Jvb3RzdHJhcF9saW1pdGxlc3MvX3JlYm9vdC5zY3NzIiwid2VicGFjazovLy90aGVtZXMvZGVmYXVsdC9ib290c3RyYXBfbGltaXRsZXNzL190eXBlLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX3NpemUuc2NzcyIsIndlYnBhY2s6Ly8vdGhlbWVzL2RlZmF1bHQvYm9vdHN0cmFwX2xpbWl0bGVzcy9fY29kZS5zY3NzIiwid2VicGFjazovLy90aGVtZXMvZGVmYXVsdC9ib290c3RyYXBfbGltaXRsZXNzL190YWJsZXMuc2NzcyIsIndlYnBhY2s6Ly8vdGhlbWVzL2RlZmF1bHQvYm9vdHN0cmFwX2xpbWl0bGVzcy9fZm9ybXMuc2NzcyIsIndlYnBhY2s6Ly8vdGhlbWVzL2RlZmF1bHQvYm9vdHN0cmFwX2xpbWl0bGVzcy9fYnV0dG9ucy5zY3NzIiwid2VicGFjazovLy90aGVtZXMvZGVmYXVsdC9ib290c3RyYXBfbGltaXRsZXNzL19kcm9wZG93bi5zY3NzIiwid2VicGFjazovLy90aGVtZXMvZGVmYXVsdC9ib290c3RyYXBfbGltaXRsZXNzL19idXR0b24tZ3JvdXAuc2NzcyIsIndlYnBhY2s6Ly8vdGhlbWVzL2RlZmF1bHQvYm9vdHN0cmFwX2xpbWl0bGVzcy9faW5wdXQtZ3JvdXAuc2NzcyIsIndlYnBhY2s6Ly8vdGhlbWVzL2RlZmF1bHQvYm9vdHN0cmFwX2xpbWl0bGVzcy9fY3VzdG9tLWZvcm1zLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX2JveC1zaGFkb3cuc2NzcyIsIndlYnBhY2s6Ly8vdGhlbWVzL2RlZmF1bHQvYm9vdHN0cmFwX2xpbWl0bGVzcy9fbmF2LnNjc3MiLCJ3ZWJwYWNrOi8vL3RoZW1lcy9kZWZhdWx0L2Jvb3RzdHJhcF9saW1pdGxlc3MvX25hdmJhci5zY3NzIiwid2VicGFjazovLy90aGVtZXMvZGVmYXVsdC9ib290c3RyYXBfbGltaXRsZXNzL19jYXJkLnNjc3MiLCJ3ZWJwYWNrOi8vL3RoZW1lcy9kZWZhdWx0L2Jvb3RzdHJhcF9saW1pdGxlc3MvX2JyZWFkY3J1bWIuc2NzcyIsIndlYnBhY2s6Ly8vdGhlbWVzL2RlZmF1bHQvYm9vdHN0cmFwX2xpbWl0bGVzcy9fcGFnaW5hdGlvbi5zY3NzIiwid2VicGFjazovLy90aGVtZXMvZGVmYXVsdC9ib290c3RyYXBfbGltaXRsZXNzL19iYWRnZS5zY3NzIiwid2VicGFjazovLy90aGVtZXMvZGVmYXVsdC9ib290c3RyYXBfbGltaXRsZXNzL19hbGVydC5zY3NzIiwid2VicGFjazovLy90aGVtZXMvZGVmYXVsdC9ib290c3RyYXBfbGltaXRsZXNzL19wcm9ncmVzcy5zY3NzIiwid2VicGFjazovLy90aGVtZXMvZGVmYXVsdC9ib290c3RyYXBfbGltaXRsZXNzL19tZWRpYS5zY3NzIiwid2VicGFjazovLy90aGVtZXMvZGVmYXVsdC9ib290c3RyYXBfbGltaXRsZXNzL19saXN0LWdyb3VwLnNjc3MiLCJ3ZWJwYWNrOi8vL3RoZW1lcy9kZWZhdWx0L2Jvb3RzdHJhcF9saW1pdGxlc3MvX2Nsb3NlLnNjc3MiLCJ3ZWJwYWNrOi8vL3RoZW1lcy9kZWZhdWx0L2Jvb3RzdHJhcF9saW1pdGxlc3MvX21vZGFsLnNjc3MiLCJ3ZWJwYWNrOi8vL3RoZW1lcy9kZWZhdWx0L2Jvb3RzdHJhcF9saW1pdGxlc3MvX3Rvb2x0aXAuc2NzcyIsIndlYnBhY2s6Ly8vdGhlbWVzL2RlZmF1bHQvYm9vdHN0cmFwX2xpbWl0bGVzcy9fcG9wb3Zlci5zY3NzIiwid2VicGFjazovLy90aGVtZXMvZGVmYXVsdC9ib290c3RyYXBfbGltaXRsZXNzL191dGlsaXRpZXMuc2NzcyIsIndlYnBhY2s6Ly8vdGhlbWVzL2RlZmF1bHQvYm9vdHN0cmFwX2xpbWl0bGVzcy91dGlsaXRpZXMvX2JhY2tncm91bmQuc2NzcyIsIndlYnBhY2s6Ly8vbGF5b3V0cy9sYXlvdXRfMS9kZWZhdWx0L2NvbXBpbGUvbGF5b3V0LnNjc3MiLCJ3ZWJwYWNrOi8vL2xheW91dHMvbGF5b3V0XzEvZGVmYXVsdC9sYXlvdXQvX2NvbnRlbnQuc2NzcyIsIndlYnBhY2s6Ly8vbGF5b3V0cy9sYXlvdXRfMS9kZWZhdWx0L2xheW91dC9faGVhZGVyLnNjc3MiLCJ3ZWJwYWNrOi8vL2xheW91dHMvbGF5b3V0XzEvZGVmYXVsdC9sYXlvdXQvX3NpZGViYXIuc2NzcyIsIndlYnBhY2s6Ly8vbGF5b3V0cy9sYXlvdXRfMS9kZWZhdWx0L2xheW91dC9fYm94ZWQuc2NzcyIsIndlYnBhY2s6Ly8vbGF5b3V0cy9sYXlvdXRfMS9kZWZhdWx0L2NvbXBpbGUvY29tcG9uZW50cy5zY3NzIiwid2VicGFjazovLy9zaGFyZWQvdXRpbHMvX2ZvdWMuc2NzcyIsIndlYnBhY2s6Ly8vc2hhcmVkL3BhY2UvX3RoZW1lLWRlZmF1bHQuc2NzcyIsIndlYnBhY2s6Ly8vc2hhcmVkL3BhY2UvX3BhY2UtZGVtby5zY3NzIiwid2VicGFjazovLy90aGVtZXMvZGVmYXVsdC9jb21wb25lbnRzL2Zvcm1zL191bmlmb3JtLnNjc3MiLCJ3ZWJwYWNrOi8vL3RoZW1lcy9kZWZhdWx0L2NvbXBvbmVudHMvZm9ybXMvX3N3aXRjaGVyeS5zY3NzIiwid2VicGFjazovLy90aGVtZXMvZGVmYXVsdC9jb21wb25lbnRzL2Zvcm1zL19ib290c3RyYXAtc3dpdGNoLnNjc3MiLCJ3ZWJwYWNrOi8vL3RoZW1lcy9kZWZhdWx0L2NvbXBvbmVudHMvZm9ybXMvX3NlbGVjdDIuc2NzcyIsIndlYnBhY2s6Ly8vdGhlbWVzL2RlZmF1bHQvY29tcG9uZW50cy9mb3Jtcy9fbXVsdGlzZWxlY3Quc2NzcyIsIndlYnBhY2s6Ly8vdGhlbWVzL2RlZmF1bHQvY29tcG9uZW50cy9mb3Jtcy9fcGFzc3kuc2NzcyIsIndlYnBhY2s6Ly8vdGhlbWVzL2RlZmF1bHQvY29tcG9uZW50cy9mb3Jtcy9fdHlwZWFoZWFkLnNjc3MiLCJ3ZWJwYWNrOi8vL3RoZW1lcy9kZWZhdWx0L2NvbXBvbmVudHMvZm9ybXMvX3ZhbGlkYXRpb24uc2NzcyIsIndlYnBhY2s6Ly8vdGhlbWVzL2RlZmF1bHQvY29tcG9uZW50cy9mb3Jtcy9fZmxvYXRpbmctbGFiZWxzLnNjc3MiLCJ3ZWJwYWNrOi8vL3RoZW1lcy9kZWZhdWx0L2NvbXBvbmVudHMvZm9ybXMvX2FscGFjYS5zY3NzIiwid2VicGFjazovLy90aGVtZXMvZGVmYXVsdC9jb21wb25lbnRzL2Zvcm1zL190b2tlbmZpZWxkLnNjc3MiLCJ3ZWJwYWNrOi8vL3RoZW1lcy9kZWZhdWx0L2NvbXBvbmVudHMvZm9ybXMvX3RhZ3MtaW5wdXQuc2NzcyIsIndlYnBhY2s6Ly8vdGhlbWVzL2RlZmF1bHQvY29tcG9uZW50cy9mb3Jtcy9fdG91Y2hzcGluLnNjc3MiLCJ3ZWJwYWNrOi8vL3RoZW1lcy9kZWZhdWx0L2NvbXBvbmVudHMvZm9ybXMvX2R1YWwtbGlzdGJveC5zY3NzIiwid2VicGFjazovLy90aGVtZXMvZGVmYXVsdC9jb21wb25lbnRzL2Zvcm1zL193aXphcmQuc2NzcyIsIndlYnBhY2s6Ly8vdGhlbWVzL2RlZmF1bHQvY29tcG9uZW50cy9mb3Jtcy9lZGl0b3JzL19zdW1tZXJub3RlLnNjc3MiLCJ3ZWJwYWNrOi8vL3RoZW1lcy9kZWZhdWx0L2NvbXBvbmVudHMvZm9ybXMvZWRpdG9ycy9fdHJ1bWJvd3lnLnNjc3MiLCJ3ZWJwYWNrOi8vL3RoZW1lcy9kZWZhdWx0L2NvbXBvbmVudHMvZm9ybXMvZWRpdG9ycy9fYWNlLnNjc3MiLCJ3ZWJwYWNrOi8vL3RoZW1lcy9kZWZhdWx0L2NvbXBvbmVudHMvcGlja2Vycy9fZGF0ZXJhbmdlLnNjc3MiLCJ3ZWJwYWNrOi8vL3RoZW1lcy9kZWZhdWx0L2NvbXBvbmVudHMvcGlja2Vycy9waWNrYWRhdGUvX2Jhc2Uuc2NzcyIsIndlYnBhY2s6Ly8vdGhlbWVzL2RlZmF1bHQvY29tcG9uZW50cy9waWNrZXJzL3BpY2thZGF0ZS9fZGF0ZS5zY3NzIiwid2VicGFjazovLy90aGVtZXMvZGVmYXVsdC9jb21wb25lbnRzL3BpY2tlcnMvcGlja2FkYXRlL190aW1lLnNjc3MiLCJ3ZWJwYWNrOi8vL3RoZW1lcy9kZWZhdWx0L2NvbXBvbmVudHMvcGlja2Vycy9fYW55dGltZS5zY3NzIiwid2VicGFjazovLy90aGVtZXMvZGVmYXVsdC9jb21wb25lbnRzL3BpY2tlcnMvX3NwZWN0cnVtLnNjc3MiLCJ3ZWJwYWNrOi8vL3RoZW1lcy9kZWZhdWx0L2NvbXBvbmVudHMvZm9ybXMvdXBsb2FkZXJzL19wbHVwbG9hZC5zY3NzIiwid2VicGFjazovLy90aGVtZXMvZGVmYXVsdC9jb21wb25lbnRzL2Zvcm1zL3VwbG9hZGVycy9fZmlsZS1pbnB1dC5zY3NzIiwid2VicGFjazovLy90aGVtZXMvZGVmYXVsdC9jb21wb25lbnRzL2Zvcm1zL3VwbG9hZGVycy9fZHJvcHpvbmUuc2NzcyIsIndlYnBhY2s6Ly8vdGhlbWVzL2RlZmF1bHQvY29tcG9uZW50cy9ub3RpZmljYXRpb25zL19ub3R5LnNjc3MiLCJ3ZWJwYWNrOi8vL3RoZW1lcy9kZWZhdWx0L2NvbXBvbmVudHMvbm90aWZpY2F0aW9ucy9fcG5vdGlmeS5zY3NzIiwid2VicGFjazovLy90aGVtZXMvZGVmYXVsdC9jb21wb25lbnRzL25vdGlmaWNhdGlvbnMvX2pncm93bC5zY3NzIiwid2VicGFjazovLy90aGVtZXMvZGVmYXVsdC9jb21wb25lbnRzL25vdGlmaWNhdGlvbnMvX3N3ZWV0LWFsZXJ0cy5zY3NzIiwid2VicGFjazovLy90aGVtZXMvZGVmYXVsdC9jb21wb25lbnRzL3NsaWRlcnMvX3NsaWRlci1waXBzLnNjc3MiLCJ3ZWJwYWNrOi8vL3RoZW1lcy9kZWZhdWx0L2NvbXBvbmVudHMvc2xpZGVycy9fbm91aS1zbGlkZXIuc2NzcyIsIndlYnBhY2s6Ly8vdGhlbWVzL2RlZmF1bHQvY29tcG9uZW50cy9zbGlkZXJzL19pb24tcmFuZ2Utc2xpZGVyLnNjc3MiLCJ3ZWJwYWNrOi8vL3RoZW1lcy9kZWZhdWx0L2NvbXBvbmVudHMvanF1ZXJ5X3VpL19pbnRlcmFjdGlvbnMuc2NzcyIsIndlYnBhY2s6Ly8vdGhlbWVzL2RlZmF1bHQvY29tcG9uZW50cy9qcXVlcnlfdWkvX3dpZGdldHMuc2NzcyIsIndlYnBhY2s6Ly8vdGhlbWVzL2RlZmF1bHQvY29tcG9uZW50cy91aS9fcHJpc20uc2NzcyIsIndlYnBhY2s6Ly8vdGhlbWVzL2RlZmF1bHQvY29tcG9uZW50cy91aS9fc2xpbmt5LnNjc3MiLCJ3ZWJwYWNrOi8vL3RoZW1lcy9kZWZhdWx0L2NvbXBvbmVudHMvdWkvX3N0aWNreS5zY3NzIiwid2VicGFjazovLy90aGVtZXMvZGVmYXVsdC9jb21wb25lbnRzL3VpL19oZWFkcm9vbS5zY3NzIiwid2VicGFjazovLy90aGVtZXMvZGVmYXVsdC9jb21wb25lbnRzL3VpL19kcmFndWxhLnNjc3MiLCJ3ZWJwYWNrOi8vL3RoZW1lcy9kZWZhdWx0L2NvbXBvbmVudHMvdWkvX3BlcmZlY3Qtc2Nyb2xsYmFyLnNjc3MiLCJ3ZWJwYWNrOi8vL3RoZW1lcy9kZWZhdWx0L2NvbXBvbmVudHMvbWlzYy9fZmFiLnNjc3MiLCJ3ZWJwYWNrOi8vL3RoZW1lcy9kZWZhdWx0L2NvbXBvbmVudHMvbWlzYy9fZmFuY3l0cmVlLnNjc3MiLCJ3ZWJwYWNrOi8vL3RoZW1lcy9kZWZhdWx0L2NvbXBvbmVudHMvbWlzYy9fcHJvZ3Jlc3MtYnV0dG9ucy5zY3NzIiwid2VicGFjazovLy90aGVtZXMvZGVmYXVsdC9jb21wb25lbnRzL21pc2MvX2Z1bGxjYWxlbmRhci5zY3NzIiwid2VicGFjazovLy90aGVtZXMvZGVmYXVsdC9jb21wb25lbnRzL21pc2MvX2ltYWdlLWNyb3BwZXIuc2NzcyIsIndlYnBhY2s6Ly8vdGhlbWVzL2RlZmF1bHQvY29tcG9uZW50cy9taXNjL19mYW5jeWJveC5zY3NzIiwid2VicGFjazovLy90aGVtZXMvZGVmYXVsdC9jb21wb25lbnRzL3RhYmxlcy9fZm9vdGFibGUuc2NzcyIsIndlYnBhY2s6Ly8vdGhlbWVzL2RlZmF1bHQvY29tcG9uZW50cy90YWJsZXMvX2hhbmRzb250YWJsZS5zY3NzIiwid2VicGFjazovLy90aGVtZXMvZGVmYXVsdC9jb21wb25lbnRzL3RhYmxlcy9kYXRhdGFibGVzL19kYXRhdGFibGVzLnNjc3MiLCJ3ZWJwYWNrOi8vL3RoZW1lcy9kZWZhdWx0L2NvbXBvbmVudHMvdGFibGVzL2RhdGF0YWJsZXMvX2RhdGF0YWJsZS1jb2x1bW5zLXJlb3JkZXIuc2NzcyIsIndlYnBhY2s6Ly8vdGhlbWVzL2RlZmF1bHQvY29tcG9uZW50cy90YWJsZXMvZGF0YXRhYmxlcy9fZGF0YXRhYmxlLXJvd3MtcmVvcmRlci5zY3NzIiwid2VicGFjazovLy90aGVtZXMvZGVmYXVsdC9jb21wb25lbnRzL3RhYmxlcy9kYXRhdGFibGVzL19kYXRhdGFibGUtZml4ZWQtY29sdW1ucy5zY3NzIiwid2VicGFjazovLy90aGVtZXMvZGVmYXVsdC9jb21wb25lbnRzL3RhYmxlcy9kYXRhdGFibGVzL19kYXRhdGFibGUtZml4ZWQtaGVhZGVyLnNjc3MiLCJ3ZWJwYWNrOi8vL3RoZW1lcy9kZWZhdWx0L2NvbXBvbmVudHMvdGFibGVzL2RhdGF0YWJsZXMvX2RhdGF0YWJsZS1hdXRvZmlsbC5zY3NzIiwid2VicGFjazovLy90aGVtZXMvZGVmYXVsdC9jb21wb25lbnRzL3RhYmxlcy9kYXRhdGFibGVzL19kYXRhdGFibGUtc2VsZWN0LnNjc3MiLCJ3ZWJwYWNrOi8vL3RoZW1lcy9kZWZhdWx0L2NvbXBvbmVudHMvdGFibGVzL2RhdGF0YWJsZXMvX2RhdGF0YWJsZS1idXR0b25zLnNjc3MiLCJ3ZWJwYWNrOi8vL3RoZW1lcy9kZWZhdWx0L2NvbXBvbmVudHMvdGFibGVzL2RhdGF0YWJsZXMvX2RhdGF0YWJsZS1rZXl0YWJsZS5zY3NzIiwid2VicGFjazovLy90aGVtZXMvZGVmYXVsdC9jb21wb25lbnRzL3RhYmxlcy9kYXRhdGFibGVzL19kYXRhdGFibGUtc2Nyb2xsZXIuc2NzcyIsIndlYnBhY2s6Ly8vdGhlbWVzL2RlZmF1bHQvY29tcG9uZW50cy90YWJsZXMvZGF0YXRhYmxlcy9fZGF0YXRhYmxlLXJlc3BvbnNpdmUuc2NzcyIsIndlYnBhY2s6Ly8vc2hhcmVkL21hcHMvX2dvb2dsZS1tYXBzLnNjc3MiLCJ3ZWJwYWNrOi8vL3NoYXJlZC9tYXBzL19qdmVjdG9ybWFwLnNjc3MiLCJ3ZWJwYWNrOi8vL3NoYXJlZC9jaGFydHMvX2NoYXJ0cy5zY3NzIiwid2VicGFjazovLy9zaGFyZWQvY2hhcnRzL19jMy5zY3NzIiwid2VicGFjazovLy9zaGFyZWQvY2hhcnRzL19kMy5zY3NzIiwid2VicGFjazovLy9zaGFyZWQvcGFnZXMvX2Vjb21tZXJjZS5zY3NzIiwid2VicGFjazovLy9zaGFyZWQvcGFnZXMvX2Jsb2cuc2NzcyIsIndlYnBhY2s6Ly8vc2hhcmVkL3BhZ2VzL190YXNrLW1hbmFnZXIuc2NzcyIsIndlYnBhY2s6Ly8vc2hhcmVkL3BhZ2VzL19pbmJveC5zY3NzIiwid2VicGFjazovLy9zaGFyZWQvcGFnZXMvX3Byb2ZpbGUuc2NzcyIsIndlYnBhY2s6Ly8vc2hhcmVkL3BhZ2VzL19sb2dpbi5zY3NzIiwid2VicGFjazovLy9zaGFyZWQvcGFnZXMvX3RpbWVsaW5lcy5zY3NzIiwid2VicGFjazovLy9zaGFyZWQvcGFnZXMvX2NoYXRzLnNjc3MiLCJ3ZWJwYWNrOi8vL3NoYXJlZC9wYWdlcy9fZXJyb3Iuc2NzcyIsIndlYnBhY2s6Ly8vdGhlbWVzL2RlZmF1bHQvY29tcG9uZW50cy91aS9faGVhZGVyLWVsZW1lbnRzLnNjc3MiLCJ3ZWJwYWNrOi8vL3NoYXJlZC91dGlscy9faGVscGVycy5zY3NzIiwid2VicGFjazovLy90aGVtZXMvZGVmYXVsdC9jb21wb25lbnRzL19kZW1vLnNjc3MiLCJ3ZWJwYWNrOi8vL2xheW91dHMvbGF5b3V0XzEvZGVmYXVsdC9jb21waWxlL2NvbG9ycy5zY3NzIiwid2VicGFjazovLy90aGVtZXMvZGVmYXVsdC9jb2xvcnMvX2NvbG9ycy5zY3NzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGlCQUFpQjtBQUNqQjtFQUNFLHFCQUFxQjtFQUNyQixrQkFBa0I7RUFDbEIsZ0JBQWdCO0VBQ2hCLDhGQUFzRztFQUN0RyxzRkFBc0Y7QUFDeEY7QUFDQSxhQUFhO0FBQ2I7RUFDRSxxQkFBcUI7RUFDckIsa0JBQWtCO0VBQ2xCLGdCQUFnQjtFQUNoQiw4RkFBa0c7RUFDbEcsNERBQTREO0FBQzlEO0FBQ0EsY0FBYztBQUNkO0VBQ0UscUJBQXFCO0VBQ3JCLGtCQUFrQjtFQUNsQixnQkFBZ0I7RUFDaEIsOEZBQW1HO0VBQ25HLDBCQUEwQjtBQUM1QjtBQUNBLFVBQVU7QUFDVjtFQUNFLHFCQUFxQjtFQUNyQixrQkFBa0I7RUFDbEIsZ0JBQWdCO0VBQ2hCLDhGQUErRjtFQUMvRiwwQkFBMEI7QUFDNUI7QUFDQSxlQUFlO0FBQ2Y7RUFDRSxxQkFBcUI7RUFDckIsa0JBQWtCO0VBQ2xCLGdCQUFnQjtFQUNoQiw4RkFBb0c7RUFDcEcsNERBQTREO0FBQzlEO0FBQ0EsY0FBYztBQUNkO0VBQ0UscUJBQXFCO0VBQ3JCLGtCQUFrQjtFQUNsQixnQkFBZ0I7RUFDaEIsOEZBQW1HO0VBQ25HLG1IQUFtSDtBQUNySDtBQUNBLFVBQVU7QUFDVjtFQUNFLHFCQUFxQjtFQUNyQixrQkFBa0I7RUFDbEIsZ0JBQWdCO0VBQ2hCLDhGQUErRjtFQUMvRix5S0FBeUs7QUFDM0s7QUFDQSxpQkFBaUI7QUFDakI7RUFDRSxxQkFBcUI7RUFDckIsa0JBQWtCO0VBQ2xCLGdCQUFnQjtFQUNoQixnR0FBd0c7RUFDeEcsc0ZBQXNGO0FBQ3hGO0FBQ0EsYUFBYTtBQUNiO0VBQ0UscUJBQXFCO0VBQ3JCLGtCQUFrQjtFQUNsQixnQkFBZ0I7RUFDaEIsZ0dBQW9HO0VBQ3BHLDREQUE0RDtBQUM5RDtBQUNBLGNBQWM7QUFDZDtFQUNFLHFCQUFxQjtFQUNyQixrQkFBa0I7RUFDbEIsZ0JBQWdCO0VBQ2hCLGdHQUFzRztFQUN0RywwQkFBMEI7QUFDNUI7QUFDQSxVQUFVO0FBQ1Y7RUFDRSxxQkFBcUI7RUFDckIsa0JBQWtCO0VBQ2xCLGdCQUFnQjtFQUNoQixpR0FBa0c7RUFDbEcsMEJBQTBCO0FBQzVCO0FBQ0EsZUFBZTtBQUNmO0VBQ0UscUJBQXFCO0VBQ3JCLGtCQUFrQjtFQUNsQixnQkFBZ0I7RUFDaEIsaUdBQXVHO0VBQ3ZHLDREQUE0RDtBQUM5RDtBQUNBLGNBQWM7QUFDZDtFQUNFLHFCQUFxQjtFQUNyQixrQkFBa0I7RUFDbEIsZ0JBQWdCO0VBQ2hCLGlHQUFzRztFQUN0RyxtSEFBbUg7QUFDckg7QUFDQSxVQUFVO0FBQ1Y7RUFDRSxxQkFBcUI7RUFDckIsa0JBQWtCO0VBQ2xCLGdCQUFnQjtFQUNoQixpR0FBa0c7RUFDbEcseUtBQXlLO0FBQzNLO0FBQ0EsaUJBQWlCO0FBQ2pCO0VBQ0UscUJBQXFCO0VBQ3JCLGtCQUFrQjtFQUNsQixnQkFBZ0I7RUFDaEIsNkZBQXFHO0VBQ3JHLHNGQUFzRjtBQUN4RjtBQUNBLGFBQWE7QUFDYjtFQUNFLHFCQUFxQjtFQUNyQixrQkFBa0I7RUFDbEIsZ0JBQWdCO0VBQ2hCLDZGQUFpRztFQUNqRyw0REFBNEQ7QUFDOUQ7QUFDQSxjQUFjO0FBQ2Q7RUFDRSxxQkFBcUI7RUFDckIsa0JBQWtCO0VBQ2xCLGdCQUFnQjtFQUNoQiw2RkFBa0c7RUFDbEcsMEJBQTBCO0FBQzVCO0FBQ0EsVUFBVTtBQUNWO0VBQ0UscUJBQXFCO0VBQ3JCLGtCQUFrQjtFQUNsQixnQkFBZ0I7RUFDaEIsNkZBQThGO0VBQzlGLDBCQUEwQjtBQUM1QjtBQUNBLGVBQWU7QUFDZjtFQUNFLHFCQUFxQjtFQUNyQixrQkFBa0I7RUFDbEIsZ0JBQWdCO0VBQ2hCLDZGQUFtRztFQUNuRyw0REFBNEQ7QUFDOUQ7QUFDQSxjQUFjO0FBQ2Q7RUFDRSxxQkFBcUI7RUFDckIsa0JBQWtCO0VBQ2xCLGdCQUFnQjtFQUNoQiw2RkFBa0c7RUFDbEcsbUhBQW1IO0FBQ3JIO0FBQ0EsVUFBVTtBQUNWO0VBQ0UscUJBQXFCO0VBQ3JCLGtCQUFrQjtFQUNsQixnQkFBZ0I7RUFDaEIsNkZBQThGO0VBQzlGLHlLQUF5SztBQUMzSztBQUNBLGlCQUFpQjtBQUNqQjtFQUNFLHFCQUFxQjtFQUNyQixrQkFBa0I7RUFDbEIsZ0JBQWdCO0VBQ2hCLG1HQUEyRztFQUMzRyxzRkFBc0Y7QUFDeEY7QUFDQSxhQUFhO0FBQ2I7RUFDRSxxQkFBcUI7RUFDckIsa0JBQWtCO0VBQ2xCLGdCQUFnQjtFQUNoQixtR0FBdUc7RUFDdkcsNERBQTREO0FBQzlEO0FBQ0EsY0FBYztBQUNkO0VBQ0UscUJBQXFCO0VBQ3JCLGtCQUFrQjtFQUNsQixnQkFBZ0I7RUFDaEIsbUdBQXdHO0VBQ3hHLDBCQUEwQjtBQUM1QjtBQUNBLFVBQVU7QUFDVjtFQUNFLHFCQUFxQjtFQUNyQixrQkFBa0I7RUFDbEIsZ0JBQWdCO0VBQ2hCLG1HQUFvRztFQUNwRywwQkFBMEI7QUFDNUI7QUFDQSxlQUFlO0FBQ2Y7RUFDRSxxQkFBcUI7RUFDckIsa0JBQWtCO0VBQ2xCLGdCQUFnQjtFQUNoQixtR0FBeUc7RUFDekcsNERBQTREO0FBQzlEO0FBQ0EsY0FBYztBQUNkO0VBQ0UscUJBQXFCO0VBQ3JCLGtCQUFrQjtFQUNsQixnQkFBZ0I7RUFDaEIsbUdBQXdHO0VBQ3hHLG1IQUFtSDtBQUNySDtBQUNBLFVBQVU7QUFDVjtFQUNFLHFCQUFxQjtFQUNyQixrQkFBa0I7RUFDbEIsZ0JBQWdCO0VBQ2hCLG1HQUFvRztFQUNwRyx5S0FBeUs7QUFDM0s7QUFDQSxpQkFBaUI7QUFDakI7RUFDRSxxQkFBcUI7RUFDckIsa0JBQWtCO0VBQ2xCLGdCQUFnQjtFQUNoQiwrRkFBdUc7RUFDdkcsc0ZBQXNGO0FBQ3hGO0FBQ0EsYUFBYTtBQUNiO0VBQ0UscUJBQXFCO0VBQ3JCLGtCQUFrQjtFQUNsQixnQkFBZ0I7RUFDaEIsK0ZBQW1HO0VBQ25HLDREQUE0RDtBQUM5RDtBQUNBLGNBQWM7QUFDZDtFQUNFLHFCQUFxQjtFQUNyQixrQkFBa0I7RUFDbEIsZ0JBQWdCO0VBQ2hCLCtGQUFvRztFQUNwRywwQkFBMEI7QUFDNUI7QUFDQSxVQUFVO0FBQ1Y7RUFDRSxxQkFBcUI7RUFDckIsa0JBQWtCO0VBQ2xCLGdCQUFnQjtFQUNoQiwrRkFBZ0c7RUFDaEcsMEJBQTBCO0FBQzVCO0FBQ0EsZUFBZTtBQUNmO0VBQ0UscUJBQXFCO0VBQ3JCLGtCQUFrQjtFQUNsQixnQkFBZ0I7RUFDaEIsK0ZBQXFHO0VBQ3JHLDREQUE0RDtBQUM5RDtBQUNBLGNBQWM7QUFDZDtFQUNFLHFCQUFxQjtFQUNyQixrQkFBa0I7RUFDbEIsZ0JBQWdCO0VBQ2hCLCtGQUFvRztFQUNwRyxtSEFBbUg7QUFDckg7QUFDQSxVQUFVO0FBQ1Y7RUFDRSxxQkFBcUI7RUFDckIsa0JBQWtCO0VBQ2xCLGdCQUFnQjtFQUNoQiwrRkFBZ0c7RUFDaEcseUtBQXlLO0FBQzNLO0FBQ0EsaUJBQWlCO0FBQ2pCO0VBQ0UscUJBQXFCO0VBQ3JCLGtCQUFrQjtFQUNsQixnQkFBZ0I7RUFDaEIsaUdBQXlHO0VBQ3pHLHNGQUFzRjtBQUN4RjtBQUNBLGFBQWE7QUFDYjtFQUNFLHFCQUFxQjtFQUNyQixrQkFBa0I7RUFDbEIsZ0JBQWdCO0VBQ2hCLGlHQUFxRztFQUNyRyw0REFBNEQ7QUFDOUQ7QUFDQSxjQUFjO0FBQ2Q7RUFDRSxxQkFBcUI7RUFDckIsa0JBQWtCO0VBQ2xCLGdCQUFnQjtFQUNoQixpR0FBc0c7RUFDdEcsMEJBQTBCO0FBQzVCO0FBQ0EsVUFBVTtBQUNWO0VBQ0UscUJBQXFCO0VBQ3JCLGtCQUFrQjtFQUNsQixnQkFBZ0I7RUFDaEIsaUdBQWtHO0VBQ2xHLDBCQUEwQjtBQUM1QjtBQUNBLGVBQWU7QUFDZjtFQUNFLHFCQUFxQjtFQUNyQixrQkFBa0I7RUFDbEIsZ0JBQWdCO0VBQ2hCLGlHQUF1RztFQUN2Ryw0REFBNEQ7QUFDOUQ7QUFDQSxjQUFjO0FBQ2Q7RUFDRSxxQkFBcUI7RUFDckIsa0JBQWtCO0VBQ2xCLGdCQUFnQjtFQUNoQixpR0FBc0c7RUFDdEcsbUhBQW1IO0FBQ3JIO0FBQ0EsVUFBVTtBQUNWO0VBQ0UscUJBQXFCO0VBQ3JCLGtCQUFrQjtFQUNsQixnQkFBZ0I7RUFDaEIsaUdBQWtHO0VBQ2xHLHlLQUF5SztBQUMzSzs7QUMvVUEsZ0JBQWdCO0FBQWhCOzs7OztFQU1FO0FDTkY7OztFRFdFO0FDUEY7K0JEUytCO0FDUC9CO0VBQ0UsMEJBQTBCO0VBQzFCLGtDQUFvRDtFQUNwRCwwUEFBaVg7RUFDalgsbUJBQW1CO0VBQ25CLGtCQUFrQjtBRFNwQjs7QUNQQTtFQUNFLHFCQUFxQjtFQUNyQiw2Q0FBNkM7RUFDN0Msa0JBQWtCO0VBQ2xCLG9CQUFvQjtFQUNwQixtQ0FBbUM7RUFDbkMsa0NBQWtDO0FEVXBDOztBQ1JBO0FBQ0E7RUFDRSx1QkFBdUI7RUFDdkIsbUJBQW1CO0VBQ25CLG9CQUFvQjtBRFd0Qjs7QUNUQTtFQUNFLGNBQWM7QURZaEI7O0FDVkE7RUFDRSxjQUFjO0FEYWhCOztBQ1hBO0VBQ0UsY0FBYztBRGNoQjs7QUNaQTtFQUNFLGNBQWM7QURlaEI7O0FDYkE7RUFDRSxtQkFBbUI7RUFDbkIsa0JBQWtCO0FEZ0JwQjs7QUNkQTtFQUNFLGVBQWU7RUFDZix5QkFBeUI7RUFDekIscUJBQXFCO0FEaUJ2Qjs7QUNmQTtFQUNFLGtCQUFrQjtBRGtCcEI7O0FDaEJBO0VBQ0Usa0JBQWtCO0VBQ2xCLG1CQUFtQjtFQUNuQixtQkFBbUI7RUFDbkIsaUJBQWlCO0VBQ2pCLGtCQUFrQjtBRG1CcEI7O0FDakJBO0VBQ0UsbUJBQW1CO0FEb0JyQjs7QUNsQkE7RUFDRSx5QkFBeUI7RUFDekIsNEJBQTRCO0VBQzVCLG1CQUFtQjtBRHFCckI7O0FDbkJBO0VBQ0UsV0FBVztBRHNCYjs7QUNwQkE7RUFDRSxZQUFZO0FEdUJkOztBQ3JCQTtFQUNFLGtCQUFrQjtBRHdCcEI7O0FDdEJBO0VBQ0UsaUJBQWlCO0FEeUJuQjs7QUN2QkE7QUFDQTtFQUNFLFlBQVk7QUQwQmQ7O0FDeEJBO0VBQ0UsV0FBVztBRDJCYjs7QUN6QkE7RUFDRSxrQkFBa0I7QUQ0QnBCOztBQzFCQTtFQUNFLGlCQUFpQjtBRDZCbkI7O0FDM0JBO0VBQ0UsNkNBQTZDO0VBQzdDLHFDQUFxQztBRDhCdkM7O0FDNUJBO0VBQ0UsK0NBQStDO0VBQy9DLHVDQUF1QztBRCtCekM7O0FDN0JBO0VBQ0U7SUFFRSx1QkFBdUI7RURnQ3pCO0VDOUJBO0lBRUUseUJBQXlCO0VEZ0MzQjtBQUNGOztBQzlCQTtFQUNFO0lBRUUsdUJBQXVCO0VEaUN6QjtFQy9CQTtJQUVFLHlCQUF5QjtFRGlDM0I7QUFDRjs7QUMvQkE7RUFDRSxzRUFBc0U7RUFHdEUsd0JBQXdCO0FEa0MxQjs7QUNoQ0E7RUFDRSxzRUFBc0U7RUFHdEUseUJBQXlCO0FEbUMzQjs7QUNqQ0E7RUFDRSxzRUFBc0U7RUFHdEUseUJBQXlCO0FEb0MzQjs7QUNsQ0E7RUFDRSxnRkFBZ0Y7RUFHaEYsdUJBQXVCO0FEcUN6Qjs7QUNuQ0E7RUFDRSxnRkFBZ0Y7RUFHaEYsdUJBQXVCO0FEc0N6Qjs7QUNwQ0E7Ozs7O0VBS0Usb0JBQVk7VUFBWixZQUFZO0FEdUNkOztBQ3JDQTtFQUNFLGtCQUFrQjtFQUNsQixxQkFBcUI7RUFDckIsVUFBVTtFQUNWLFdBQVc7RUFDWCxnQkFBZ0I7RUFDaEIsc0JBQXNCO0FEd0N4Qjs7QUN0Q0E7O0VBRUUsa0JBQWtCO0VBQ2xCLE9BQU87RUFDUCxXQUFXO0VBQ1gsa0JBQWtCO0FEeUNwQjs7QUN2Q0E7RUFDRSxvQkFBb0I7QUQwQ3RCOztBQ3hDQTtFQUNFLGNBQWM7QUQyQ2hCOztBQ3pDQTtFQUNFLGNBQWM7QUQ0Q2hCOztBQzFDQTttRUQ2Q21FO0FDM0NuRTtFQUNFLGdCQUFnQjtBRDZDbEI7O0FDM0NBO0VBQ0UsZ0JBQWdCO0FEOENsQjs7QUM1Q0E7RUFDRSxnQkFBZ0I7QUQrQ2xCOztBQzdDQTtFQUNFLGdCQUFnQjtBRGdEbEI7O0FDOUNBO0VBQ0UsZ0JBQWdCO0FEaURsQjs7QUMvQ0E7RUFDRSxnQkFBZ0I7QURrRGxCOztBQ2hEQTtFQUNFLGdCQUFnQjtBRG1EbEI7O0FDakRBO0VBQ0UsZ0JBQWdCO0FEb0RsQjs7QUNsREE7RUFDRSxnQkFBZ0I7QURxRGxCOztBQ25EQTtFQUNFLGdCQUFnQjtBRHNEbEI7O0FDcERBO0VBQ0UsZ0JBQWdCO0FEdURsQjs7QUNyREE7RUFDRSxnQkFBZ0I7QUR3RGxCOztBQ3REQTtFQUNFLGdCQUFnQjtBRHlEbEI7O0FDdkRBOzs7RUFHRSxnQkFBZ0I7QUQwRGxCOztBQ3hEQTtFQUNFLGdCQUFnQjtBRDJEbEI7O0FDekRBO0VBQ0UsZ0JBQWdCO0FENERsQjs7QUMxREE7RUFDRSxnQkFBZ0I7QUQ2RGxCOztBQzNEQTtFQUNFLGdCQUFnQjtBRDhEbEI7O0FDNURBOztFQUVFLGdCQUFnQjtBRCtEbEI7O0FDN0RBO0VBQ0UsZ0JBQWdCO0FEZ0VsQjs7QUM5REE7RUFDRSxnQkFBZ0I7QURpRWxCOztBQy9EQTtFQUNFLGdCQUFnQjtBRGtFbEI7O0FDaEVBO0VBQ0UsZ0JBQWdCO0FEbUVsQjs7QUNqRUE7RUFDRSxnQkFBZ0I7QURvRWxCOztBQ2xFQTtFQUNFLGdCQUFnQjtBRHFFbEI7O0FDbkVBO0VBQ0UsZ0JBQWdCO0FEc0VsQjs7QUNwRUE7RUFDRSxnQkFBZ0I7QUR1RWxCOztBQ3JFQTtFQUNFLGdCQUFnQjtBRHdFbEI7O0FDdEVBO0VBQ0UsZ0JBQWdCO0FEeUVsQjs7QUN2RUE7O0VBRUUsZ0JBQWdCO0FEMEVsQjs7QUN4RUE7RUFDRSxnQkFBZ0I7QUQyRWxCOztBQ3pFQTtFQUNFLGdCQUFnQjtBRDRFbEI7O0FDMUVBO0VBQ0UsZ0JBQWdCO0FENkVsQjs7QUMzRUE7RUFDRSxnQkFBZ0I7QUQ4RWxCOztBQzVFQTtFQUNFLGdCQUFnQjtBRCtFbEI7O0FDN0VBO0VBQ0UsZ0JBQWdCO0FEZ0ZsQjs7QUM5RUE7RUFDRSxnQkFBZ0I7QURpRmxCOztBQy9FQTtFQUNFLGdCQUFnQjtBRGtGbEI7O0FDaEZBO0VBQ0UsZ0JBQWdCO0FEbUZsQjs7QUNqRkE7RUFDRSxnQkFBZ0I7QURvRmxCOztBQ2xGQTtFQUNFLGdCQUFnQjtBRHFGbEI7O0FDbkZBO0VBQ0UsZ0JBQWdCO0FEc0ZsQjs7QUNwRkE7RUFDRSxnQkFBZ0I7QUR1RmxCOztBQ3JGQTtFQUNFLGdCQUFnQjtBRHdGbEI7O0FDdEZBO0VBQ0UsZ0JBQWdCO0FEeUZsQjs7QUN2RkE7RUFDRSxnQkFBZ0I7QUQwRmxCOztBQ3hGQTtFQUNFLGdCQUFnQjtBRDJGbEI7O0FDekZBO0VBQ0UsZ0JBQWdCO0FENEZsQjs7QUMxRkE7RUFDRSxnQkFBZ0I7QUQ2RmxCOztBQzNGQTtFQUNFLGdCQUFnQjtBRDhGbEI7O0FDNUZBO0VBQ0UsZ0JBQWdCO0FEK0ZsQjs7QUM3RkE7RUFDRSxnQkFBZ0I7QURnR2xCOztBQzlGQTtFQUNFLGdCQUFnQjtBRGlHbEI7O0FDL0ZBO0VBQ0UsZ0JBQWdCO0FEa0dsQjs7QUNoR0E7RUFDRSxnQkFBZ0I7QURtR2xCOztBQ2pHQTtFQUNFLGdCQUFnQjtBRG9HbEI7O0FDbEdBOztFQUVFLGdCQUFnQjtBRHFHbEI7O0FDbkdBO0VBQ0UsZ0JBQWdCO0FEc0dsQjs7QUNwR0E7RUFDRSxnQkFBZ0I7QUR1R2xCOztBQ3JHQTs7O0VBR0UsZ0JBQWdCO0FEd0dsQjs7QUN0R0E7RUFDRSxnQkFBZ0I7QUR5R2xCOztBQ3ZHQTtFQUNFLGdCQUFnQjtBRDBHbEI7O0FDeEdBO0VBQ0UsZ0JBQWdCO0FEMkdsQjs7QUN6R0E7RUFDRSxnQkFBZ0I7QUQ0R2xCOztBQzFHQTs7RUFFRSxnQkFBZ0I7QUQ2R2xCOztBQzNHQTtFQUNFLGdCQUFnQjtBRDhHbEI7O0FDNUdBO0VBQ0UsZ0JBQWdCO0FEK0dsQjs7QUM3R0E7RUFDRSxnQkFBZ0I7QURnSGxCOztBQzlHQTtFQUNFLGdCQUFnQjtBRGlIbEI7O0FDL0dBO0VBQ0UsZ0JBQWdCO0FEa0hsQjs7QUNoSEE7RUFDRSxnQkFBZ0I7QURtSGxCOztBQ2pIQTtFQUNFLGdCQUFnQjtBRG9IbEI7O0FDbEhBO0VBQ0UsZ0JBQWdCO0FEcUhsQjs7QUNuSEE7RUFDRSxnQkFBZ0I7QURzSGxCOztBQ3BIQTtFQUNFLGdCQUFnQjtBRHVIbEI7O0FDckhBO0VBQ0UsZ0JBQWdCO0FEd0hsQjs7QUN0SEE7RUFDRSxnQkFBZ0I7QUR5SGxCOztBQ3ZIQTtFQUNFLGdCQUFnQjtBRDBIbEI7O0FDeEhBO0VBQ0UsZ0JBQWdCO0FEMkhsQjs7QUN6SEE7RUFDRSxnQkFBZ0I7QUQ0SGxCOztBQzFIQTtFQUNFLGdCQUFnQjtBRDZIbEI7O0FDM0hBO0VBQ0UsZ0JBQWdCO0FEOEhsQjs7QUM1SEE7RUFDRSxnQkFBZ0I7QUQrSGxCOztBQzdIQTtFQUNFLGdCQUFnQjtBRGdJbEI7O0FDOUhBO0VBQ0UsZ0JBQWdCO0FEaUlsQjs7QUMvSEE7RUFDRSxnQkFBZ0I7QURrSWxCOztBQ2hJQTtFQUNFLGdCQUFnQjtBRG1JbEI7O0FDaklBO0VBQ0UsZ0JBQWdCO0FEb0lsQjs7QUNsSUE7RUFDRSxnQkFBZ0I7QURxSWxCOztBQ25JQTtFQUNFLGdCQUFnQjtBRHNJbEI7O0FDcElBO0VBQ0UsZ0JBQWdCO0FEdUlsQjs7QUNySUE7RUFDRSxnQkFBZ0I7QUR3SWxCOztBQ3RJQTtFQUNFLGdCQUFnQjtBRHlJbEI7O0FDdklBO0VBQ0UsZ0JBQWdCO0FEMElsQjs7QUN4SUE7O0VBRUUsZ0JBQWdCO0FEMklsQjs7QUN6SUE7RUFDRSxnQkFBZ0I7QUQ0SWxCOztBQzFJQTtFQUNFLGdCQUFnQjtBRDZJbEI7O0FDM0lBO0VBQ0UsZ0JBQWdCO0FEOElsQjs7QUM1SUE7RUFDRSxnQkFBZ0I7QUQrSWxCOztBQzdJQTtFQUNFLGdCQUFnQjtBRGdKbEI7O0FDOUlBO0VBQ0UsZ0JBQWdCO0FEaUpsQjs7QUMvSUE7RUFDRSxnQkFBZ0I7QURrSmxCOztBQ2hKQTtFQUNFLGdCQUFnQjtBRG1KbEI7O0FDakpBO0VBQ0UsZ0JBQWdCO0FEb0psQjs7QUNsSkE7RUFDRSxnQkFBZ0I7QURxSmxCOztBQ25KQTtFQUNFLGdCQUFnQjtBRHNKbEI7O0FDcEpBOztFQUVFLGdCQUFnQjtBRHVKbEI7O0FDckpBO0VBQ0UsZ0JBQWdCO0FEd0psQjs7QUN0SkE7RUFDRSxnQkFBZ0I7QUR5SmxCOztBQ3ZKQTtFQUNFLGdCQUFnQjtBRDBKbEI7O0FDeEpBO0VBQ0UsZ0JBQWdCO0FEMkpsQjs7QUN6SkE7RUFDRSxnQkFBZ0I7QUQ0SmxCOztBQzFKQTtFQUNFLGdCQUFnQjtBRDZKbEI7O0FDM0pBO0VBQ0UsZ0JBQWdCO0FEOEpsQjs7QUM1SkE7RUFDRSxnQkFBZ0I7QUQrSmxCOztBQzdKQTtFQUNFLGdCQUFnQjtBRGdLbEI7O0FDOUpBO0VBQ0UsZ0JBQWdCO0FEaUtsQjs7QUMvSkE7RUFDRSxnQkFBZ0I7QURrS2xCOztBQ2hLQTtFQUNFLGdCQUFnQjtBRG1LbEI7O0FDaktBO0VBQ0UsZ0JBQWdCO0FEb0tsQjs7QUNsS0E7O0VBRUUsZ0JBQWdCO0FEcUtsQjs7QUNuS0E7RUFDRSxnQkFBZ0I7QURzS2xCOztBQ3BLQTtFQUNFLGdCQUFnQjtBRHVLbEI7O0FDcktBO0VBQ0UsZ0JBQWdCO0FEd0tsQjs7QUN0S0E7RUFDRSxnQkFBZ0I7QUR5S2xCOztBQ3ZLQTs7RUFFRSxnQkFBZ0I7QUQwS2xCOztBQ3hLQTtFQUNFLGdCQUFnQjtBRDJLbEI7O0FDektBO0VBQ0UsZ0JBQWdCO0FENEtsQjs7QUMxS0E7RUFDRSxnQkFBZ0I7QUQ2S2xCOztBQzNLQTtFQUNFLGdCQUFnQjtBRDhLbEI7O0FDNUtBO0VBQ0UsZ0JBQWdCO0FEK0tsQjs7QUM3S0E7RUFDRSxnQkFBZ0I7QURnTGxCOztBQzlLQTtFQUNFLGdCQUFnQjtBRGlMbEI7O0FDL0tBO0VBQ0UsZ0JBQWdCO0FEa0xsQjs7QUNoTEE7RUFDRSxnQkFBZ0I7QURtTGxCOztBQ2pMQTtFQUNFLGdCQUFnQjtBRG9MbEI7O0FDbExBO0VBQ0UsZ0JBQWdCO0FEcUxsQjs7QUNuTEE7RUFDRSxnQkFBZ0I7QURzTGxCOztBQ3BMQTtFQUNFLGdCQUFnQjtBRHVMbEI7O0FDckxBO0VBQ0UsZ0JBQWdCO0FEd0xsQjs7QUN0TEE7RUFDRSxnQkFBZ0I7QUR5TGxCOztBQ3ZMQTtFQUNFLGdCQUFnQjtBRDBMbEI7O0FDeExBO0VBQ0UsZ0JBQWdCO0FEMkxsQjs7QUN6TEE7RUFDRSxnQkFBZ0I7QUQ0TGxCOztBQzFMQTtFQUNFLGdCQUFnQjtBRDZMbEI7O0FDM0xBOztFQUVFLGdCQUFnQjtBRDhMbEI7O0FDNUxBO0VBQ0UsZ0JBQWdCO0FEK0xsQjs7QUM3TEE7RUFDRSxnQkFBZ0I7QURnTWxCOztBQzlMQTtFQUNFLGdCQUFnQjtBRGlNbEI7O0FDL0xBOztFQUVFLGdCQUFnQjtBRGtNbEI7O0FDaE1BO0VBQ0UsZ0JBQWdCO0FEbU1sQjs7QUNqTUE7RUFDRSxnQkFBZ0I7QURvTWxCOztBQ2xNQTtFQUNFLGdCQUFnQjtBRHFNbEI7O0FDbk1BO0VBQ0UsZ0JBQWdCO0FEc01sQjs7QUNwTUE7RUFDRSxnQkFBZ0I7QUR1TWxCOztBQ3JNQTtFQUNFLGdCQUFnQjtBRHdNbEI7O0FDdE1BO0VBQ0UsZ0JBQWdCO0FEeU1sQjs7QUN2TUE7RUFDRSxnQkFBZ0I7QUQwTWxCOztBQ3hNQTtFQUNFLGdCQUFnQjtBRDJNbEI7O0FDek1BO0VBQ0UsZ0JBQWdCO0FENE1sQjs7QUMxTUE7RUFDRSxnQkFBZ0I7QUQ2TWxCOztBQzNNQTtFQUNFLGdCQUFnQjtBRDhNbEI7O0FDNU1BO0VBQ0UsZ0JBQWdCO0FEK01sQjs7QUM3TUE7RUFDRSxnQkFBZ0I7QURnTmxCOztBQzlNQTtFQUNFLGdCQUFnQjtBRGlObEI7O0FDL01BO0VBQ0UsZ0JBQWdCO0FEa05sQjs7QUNoTkE7RUFDRSxnQkFBZ0I7QURtTmxCOztBQ2pOQTtFQUNFLGdCQUFnQjtBRG9ObEI7O0FDbE5BOztFQUVFLGdCQUFnQjtBRHFObEI7O0FDbk5BOztFQUVFLGdCQUFnQjtBRHNObEI7O0FDcE5BO0VBQ0UsZ0JBQWdCO0FEdU5sQjs7QUNyTkE7RUFDRSxnQkFBZ0I7QUR3TmxCOztBQ3ROQTs7RUFFRSxnQkFBZ0I7QUR5TmxCOztBQ3ZOQTs7RUFFRSxnQkFBZ0I7QUQwTmxCOztBQ3hOQTtFQUNFLGdCQUFnQjtBRDJObEI7O0FDek5BOztFQUVFLGdCQUFnQjtBRDRObEI7O0FDMU5BO0VBQ0UsZ0JBQWdCO0FENk5sQjs7QUMzTkE7OztFQUdFLGdCQUFnQjtBRDhObEI7O0FDNU5BO0VBQ0UsZ0JBQWdCO0FEK05sQjs7QUM3TkE7RUFDRSxnQkFBZ0I7QURnT2xCOztBQzlOQTtFQUNFLGdCQUFnQjtBRGlPbEI7O0FDL05BO0VBQ0UsZ0JBQWdCO0FEa09sQjs7QUNoT0E7RUFDRSxnQkFBZ0I7QURtT2xCOztBQ2pPQTtFQUNFLGdCQUFnQjtBRG9PbEI7O0FDbE9BO0VBQ0UsZ0JBQWdCO0FEcU9sQjs7QUNuT0E7RUFDRSxnQkFBZ0I7QURzT2xCOztBQ3BPQTtFQUNFLGdCQUFnQjtBRHVPbEI7O0FDck9BO0VBQ0UsZ0JBQWdCO0FEd09sQjs7QUN0T0E7RUFDRSxnQkFBZ0I7QUR5T2xCOztBQ3ZPQTtFQUNFLGdCQUFnQjtBRDBPbEI7O0FDeE9BO0VBQ0UsZ0JBQWdCO0FEMk9sQjs7QUN6T0E7RUFDRSxnQkFBZ0I7QUQ0T2xCOztBQzFPQTtFQUNFLGdCQUFnQjtBRDZPbEI7O0FDM09BO0VBQ0UsZ0JBQWdCO0FEOE9sQjs7QUM1T0E7RUFDRSxnQkFBZ0I7QUQrT2xCOztBQzdPQTs7RUFFRSxnQkFBZ0I7QURnUGxCOztBQzlPQTs7RUFFRSxnQkFBZ0I7QURpUGxCOztBQy9PQTs7RUFFRSxnQkFBZ0I7QURrUGxCOztBQ2hQQTtFQUNFLGdCQUFnQjtBRG1QbEI7O0FDalBBO0VBQ0UsZ0JBQWdCO0FEb1BsQjs7QUNsUEE7O0VBRUUsZ0JBQWdCO0FEcVBsQjs7QUNuUEE7O0VBRUUsZ0JBQWdCO0FEc1BsQjs7QUNwUEE7O0VBRUUsZ0JBQWdCO0FEdVBsQjs7QUNyUEE7RUFDRSxnQkFBZ0I7QUR3UGxCOztBQ3RQQTtFQUNFLGdCQUFnQjtBRHlQbEI7O0FDdlBBOztFQUVFLGdCQUFnQjtBRDBQbEI7O0FDeFBBO0VBQ0UsZ0JBQWdCO0FEMlBsQjs7QUN6UEE7RUFDRSxnQkFBZ0I7QUQ0UGxCOztBQzFQQTs7RUFFRSxnQkFBZ0I7QUQ2UGxCOztBQzNQQTtFQUNFLGdCQUFnQjtBRDhQbEI7O0FDNVBBO0VBQ0UsZ0JBQWdCO0FEK1BsQjs7QUM3UEE7RUFDRSxnQkFBZ0I7QURnUWxCOztBQzlQQTtFQUNFLGdCQUFnQjtBRGlRbEI7O0FDL1BBO0VBQ0UsZ0JBQWdCO0FEa1FsQjs7QUNoUUE7RUFDRSxnQkFBZ0I7QURtUWxCOztBQ2pRQTtFQUNFLGdCQUFnQjtBRG9RbEI7O0FDbFFBO0VBQ0UsZ0JBQWdCO0FEcVFsQjs7QUNuUUE7RUFDRSxnQkFBZ0I7QURzUWxCOztBQ3BRQTtFQUNFLGdCQUFnQjtBRHVRbEI7O0FDclFBO0VBQ0UsZ0JBQWdCO0FEd1FsQjs7QUN0UUE7RUFDRSxnQkFBZ0I7QUR5UWxCOztBQ3ZRQTtFQUNFLGdCQUFnQjtBRDBRbEI7O0FDeFFBO0VBQ0UsZ0JBQWdCO0FEMlFsQjs7QUN6UUE7RUFDRSxnQkFBZ0I7QUQ0UWxCOztBQzFRQTtFQUNFLGdCQUFnQjtBRDZRbEI7O0FDM1FBO0VBQ0UsZ0JBQWdCO0FEOFFsQjs7QUM1UUE7RUFDRSxnQkFBZ0I7QUQrUWxCOztBQzdRQTtFQUNFLGdCQUFnQjtBRGdSbEI7O0FDOVFBO0VBQ0UsZ0JBQWdCO0FEaVJsQjs7QUMvUUE7RUFDRSxnQkFBZ0I7QURrUmxCOztBQ2hSQTtFQUNFLGdCQUFnQjtBRG1SbEI7O0FDalJBO0VBQ0UsZ0JBQWdCO0FEb1JsQjs7QUNsUkE7RUFDRSxnQkFBZ0I7QURxUmxCOztBQ25SQTtFQUNFLGdCQUFnQjtBRHNSbEI7O0FDcFJBO0VBQ0UsZ0JBQWdCO0FEdVJsQjs7QUNyUkE7RUFDRSxnQkFBZ0I7QUR3UmxCOztBQ3RSQTtFQUNFLGdCQUFnQjtBRHlSbEI7O0FDdlJBO0VBQ0UsZ0JBQWdCO0FEMFJsQjs7QUN4UkE7RUFDRSxnQkFBZ0I7QUQyUmxCOztBQ3pSQTs7RUFFRSxnQkFBZ0I7QUQ0UmxCOztBQzFSQTtFQUNFLGdCQUFnQjtBRDZSbEI7O0FDM1JBO0VBQ0UsZ0JBQWdCO0FEOFJsQjs7QUM1UkE7RUFDRSxnQkFBZ0I7QUQrUmxCOztBQzdSQTtFQUNFLGdCQUFnQjtBRGdTbEI7O0FDOVJBO0VBQ0UsZ0JBQWdCO0FEaVNsQjs7QUMvUkE7O0VBRUUsZ0JBQWdCO0FEa1NsQjs7QUNoU0E7RUFDRSxnQkFBZ0I7QURtU2xCOztBQ2pTQTtFQUNFLGdCQUFnQjtBRG9TbEI7O0FDbFNBO0VBQ0UsZ0JBQWdCO0FEcVNsQjs7QUNuU0E7RUFDRSxnQkFBZ0I7QURzU2xCOztBQ3BTQTtFQUNFLGdCQUFnQjtBRHVTbEI7O0FDclNBO0VBQ0UsZ0JBQWdCO0FEd1NsQjs7QUN0U0E7RUFDRSxnQkFBZ0I7QUR5U2xCOztBQ3ZTQTtFQUNFLGdCQUFnQjtBRDBTbEI7O0FDeFNBO0VBQ0UsZ0JBQWdCO0FEMlNsQjs7QUN6U0E7RUFDRSxnQkFBZ0I7QUQ0U2xCOztBQzFTQTtFQUNFLGdCQUFnQjtBRDZTbEI7O0FDM1NBO0VBQ0UsZ0JBQWdCO0FEOFNsQjs7QUM1U0E7O0VBRUUsZ0JBQWdCO0FEK1NsQjs7QUM3U0E7OztFQUdFLGdCQUFnQjtBRGdUbEI7O0FDOVNBO0VBQ0UsZ0JBQWdCO0FEaVRsQjs7QUMvU0E7RUFDRSxnQkFBZ0I7QURrVGxCOztBQ2hUQTtFQUNFLGdCQUFnQjtBRG1UbEI7O0FDalRBOztFQUVFLGdCQUFnQjtBRG9UbEI7O0FDbFRBO0VBQ0UsZ0JBQWdCO0FEcVRsQjs7QUNuVEE7RUFDRSxnQkFBZ0I7QURzVGxCOztBQ3BUQTtFQUNFLGdCQUFnQjtBRHVUbEI7O0FDclRBO0VBQ0UsZ0JBQWdCO0FEd1RsQjs7QUN0VEE7RUFDRSxnQkFBZ0I7QUR5VGxCOztBQ3ZUQTtFQUNFLGdCQUFnQjtBRDBUbEI7O0FDeFRBO0VBQ0UsZ0JBQWdCO0FEMlRsQjs7QUN6VEE7RUFDRSxnQkFBZ0I7QUQ0VGxCOztBQzFUQTtFQUNFLGdCQUFnQjtBRDZUbEI7O0FDM1RBO0VBQ0UsZ0JBQWdCO0FEOFRsQjs7QUM1VEE7RUFDRSxnQkFBZ0I7QUQrVGxCOztBQzdUQTtFQUNFLGdCQUFnQjtBRGdVbEI7O0FDOVRBO0VBQ0UsZ0JBQWdCO0FEaVVsQjs7QUMvVEE7RUFDRSxnQkFBZ0I7QURrVWxCOztBQ2hVQTtFQUNFLGdCQUFnQjtBRG1VbEI7O0FDalVBO0VBQ0UsZ0JBQWdCO0FEb1VsQjs7QUNsVUE7RUFDRSxnQkFBZ0I7QURxVWxCOztBQ25VQTtFQUNFLGdCQUFnQjtBRHNVbEI7O0FDcFVBO0VBQ0UsZ0JBQWdCO0FEdVVsQjs7QUNyVUE7RUFDRSxnQkFBZ0I7QUR3VWxCOztBQ3RVQTtFQUNFLGdCQUFnQjtBRHlVbEI7O0FDdlVBO0VBQ0UsZ0JBQWdCO0FEMFVsQjs7QUN4VUE7RUFDRSxnQkFBZ0I7QUQyVWxCOztBQ3pVQTtFQUNFLGdCQUFnQjtBRDRVbEI7O0FDMVVBO0VBQ0UsZ0JBQWdCO0FENlVsQjs7QUMzVUE7RUFDRSxnQkFBZ0I7QUQ4VWxCOztBQzVVQTtFQUNFLGdCQUFnQjtBRCtVbEI7O0FDN1VBO0VBQ0UsZ0JBQWdCO0FEZ1ZsQjs7QUM5VUE7RUFDRSxnQkFBZ0I7QURpVmxCOztBQy9VQTtFQUNFLGdCQUFnQjtBRGtWbEI7O0FDaFZBO0VBQ0UsZ0JBQWdCO0FEbVZsQjs7QUNqVkE7RUFDRSxnQkFBZ0I7QURvVmxCOztBQ2xWQTtFQUNFLGdCQUFnQjtBRHFWbEI7O0FDblZBO0VBQ0UsZ0JBQWdCO0FEc1ZsQjs7QUNwVkE7RUFDRSxnQkFBZ0I7QUR1VmxCOztBQ3JWQTtFQUNFLGdCQUFnQjtBRHdWbEI7O0FDdFZBO0VBQ0UsZ0JBQWdCO0FEeVZsQjs7QUN2VkE7O0VBRUUsZ0JBQWdCO0FEMFZsQjs7QUN4VkE7O0VBRUUsZ0JBQWdCO0FEMlZsQjs7QUN6VkE7O0VBRUUsZ0JBQWdCO0FENFZsQjs7QUMxVkE7O0VBRUUsZ0JBQWdCO0FENlZsQjs7QUMzVkE7RUFDRSxnQkFBZ0I7QUQ4VmxCOztBQzVWQTs7RUFFRSxnQkFBZ0I7QUQrVmxCOztBQzdWQTs7RUFFRSxnQkFBZ0I7QURnV2xCOztBQzlWQTs7OztFQUlFLGdCQUFnQjtBRGlXbEI7O0FDL1ZBOzs7RUFHRSxnQkFBZ0I7QURrV2xCOztBQ2hXQTs7RUFFRSxnQkFBZ0I7QURtV2xCOztBQ2pXQTs7RUFFRSxnQkFBZ0I7QURvV2xCOztBQ2xXQTtFQUNFLGdCQUFnQjtBRHFXbEI7O0FDbldBO0VBQ0UsZ0JBQWdCO0FEc1dsQjs7QUNwV0E7RUFDRSxnQkFBZ0I7QUR1V2xCOztBQ3JXQTtFQUNFLGdCQUFnQjtBRHdXbEI7O0FDdFdBO0VBQ0UsZ0JBQWdCO0FEeVdsQjs7QUN2V0E7RUFDRSxnQkFBZ0I7QUQwV2xCOztBQ3hXQTtFQUNFLGdCQUFnQjtBRDJXbEI7O0FDeldBO0VBQ0UsZ0JBQWdCO0FENFdsQjs7QUMxV0E7RUFDRSxnQkFBZ0I7QUQ2V2xCOztBQzNXQTtFQUNFLGdCQUFnQjtBRDhXbEI7O0FDNVdBO0VBQ0UsZ0JBQWdCO0FEK1dsQjs7QUM3V0E7RUFDRSxnQkFBZ0I7QURnWGxCOztBQzlXQTtFQUNFLGdCQUFnQjtBRGlYbEI7O0FDL1dBO0VBQ0UsZ0JBQWdCO0FEa1hsQjs7QUNoWEE7RUFDRSxnQkFBZ0I7QURtWGxCOztBQ2pYQTtFQUNFLGdCQUFnQjtBRG9YbEI7O0FDbFhBO0VBQ0UsZ0JBQWdCO0FEcVhsQjs7QUNuWEE7RUFDRSxnQkFBZ0I7QURzWGxCOztBQ3BYQTtFQUNFLGdCQUFnQjtBRHVYbEI7O0FDclhBO0VBQ0UsZ0JBQWdCO0FEd1hsQjs7QUN0WEE7RUFDRSxnQkFBZ0I7QUR5WGxCOztBQ3ZYQTtFQUNFLGdCQUFnQjtBRDBYbEI7O0FDeFhBO0VBQ0UsZ0JBQWdCO0FEMlhsQjs7QUN6WEE7RUFDRSxnQkFBZ0I7QUQ0WGxCOztBQzFYQTtFQUNFLGdCQUFnQjtBRDZYbEI7O0FDM1hBO0VBQ0UsZ0JBQWdCO0FEOFhsQjs7QUM1WEE7RUFDRSxnQkFBZ0I7QUQrWGxCOztBQzdYQTtFQUNFLGdCQUFnQjtBRGdZbEI7O0FDOVhBO0VBQ0UsZ0JBQWdCO0FEaVlsQjs7QUMvWEE7RUFDRSxnQkFBZ0I7QURrWWxCOztBQ2hZQTtFQUNFLGdCQUFnQjtBRG1ZbEI7O0FDallBO0VBQ0UsZ0JBQWdCO0FEb1lsQjs7QUNsWUE7RUFDRSxnQkFBZ0I7QURxWWxCOztBQ25ZQTtFQUNFLGdCQUFnQjtBRHNZbEI7O0FDcFlBO0VBQ0UsZ0JBQWdCO0FEdVlsQjs7QUNyWUE7RUFDRSxnQkFBZ0I7QUR3WWxCOztBQ3RZQTtFQUNFLGdCQUFnQjtBRHlZbEI7O0FDdllBO0VBQ0UsZ0JBQWdCO0FEMFlsQjs7QUN4WUE7O0VBRUUsZ0JBQWdCO0FEMllsQjs7QUN6WUE7RUFDRSxnQkFBZ0I7QUQ0WWxCOztBQzFZQTtFQUNFLGdCQUFnQjtBRDZZbEI7O0FDM1lBO0VBQ0UsZ0JBQWdCO0FEOFlsQjs7QUM1WUE7RUFDRSxnQkFBZ0I7QUQrWWxCOztBQzdZQTtFQUNFLGdCQUFnQjtBRGdabEI7O0FDOVlBO0VBQ0UsZ0JBQWdCO0FEaVpsQjs7QUMvWUE7RUFDRSxnQkFBZ0I7QURrWmxCOztBQ2haQTtFQUNFLGdCQUFnQjtBRG1abEI7O0FDalpBO0VBQ0UsZ0JBQWdCO0FEb1psQjs7QUNsWkE7RUFDRSxnQkFBZ0I7QURxWmxCOztBQ25aQTtFQUNFLGdCQUFnQjtBRHNabEI7O0FDcFpBOztFQUVFLGdCQUFnQjtBRHVabEI7O0FDclpBO0VBQ0UsZ0JBQWdCO0FEd1psQjs7QUN0WkE7RUFDRSxnQkFBZ0I7QUR5WmxCOztBQ3ZaQTtFQUNFLGdCQUFnQjtBRDBabEI7O0FDeFpBOztFQUVFLGdCQUFnQjtBRDJabEI7O0FDelpBO0VBQ0UsZ0JBQWdCO0FENFpsQjs7QUMxWkE7RUFDRSxnQkFBZ0I7QUQ2WmxCOztBQzNaQTtFQUNFLGdCQUFnQjtBRDhabEI7O0FDNVpBO0VBQ0UsZ0JBQWdCO0FEK1psQjs7QUM3WkE7RUFDRSxnQkFBZ0I7QURnYWxCOztBQzlaQTtFQUNFLGdCQUFnQjtBRGlhbEI7O0FDL1pBOzs7RUFHRSxnQkFBZ0I7QURrYWxCOztBQ2hhQTs7RUFFRSxnQkFBZ0I7QURtYWxCOztBQ2phQTtFQUNFLGdCQUFnQjtBRG9hbEI7O0FDbGFBO0VBQ0UsZ0JBQWdCO0FEcWFsQjs7QUNuYUE7RUFDRSxnQkFBZ0I7QURzYWxCOztBQ3BhQTtFQUNFLGdCQUFnQjtBRHVhbEI7O0FDcmFBO0VBQ0UsZ0JBQWdCO0FEd2FsQjs7QUN0YUE7RUFDRSxnQkFBZ0I7QUR5YWxCOztBQ3ZhQTtFQUNFLGdCQUFnQjtBRDBhbEI7O0FDeGFBO0VBQ0UsZ0JBQWdCO0FEMmFsQjs7QUN6YUE7RUFDRSxnQkFBZ0I7QUQ0YWxCOztBQzFhQTtFQUNFLGdCQUFnQjtBRDZhbEI7O0FDM2FBO0VBQ0UsZ0JBQWdCO0FEOGFsQjs7QUM1YUE7RUFDRSxnQkFBZ0I7QUQrYWxCOztBQzdhQTtFQUNFLGdCQUFnQjtBRGdibEI7O0FDOWFBO0VBQ0UsZ0JBQWdCO0FEaWJsQjs7QUMvYUE7RUFDRSxnQkFBZ0I7QURrYmxCOztBQ2hiQTtFQUNFLGdCQUFnQjtBRG1ibEI7O0FDamJBO0VBQ0UsZ0JBQWdCO0FEb2JsQjs7QUNsYkE7RUFDRSxnQkFBZ0I7QURxYmxCOztBQ25iQTtFQUNFLGdCQUFnQjtBRHNibEI7O0FDcGJBO0VBQ0UsZ0JBQWdCO0FEdWJsQjs7QUNyYkE7RUFDRSxnQkFBZ0I7QUR3YmxCOztBQ3RiQTtFQUNFLGdCQUFnQjtBRHlibEI7O0FDdmJBO0VBQ0UsZ0JBQWdCO0FEMGJsQjs7QUN4YkE7RUFDRSxnQkFBZ0I7QUQyYmxCOztBQ3piQTtFQUNFLGdCQUFnQjtBRDRibEI7O0FDMWJBOztFQUVFLGdCQUFnQjtBRDZibEI7O0FDM2JBOztFQUVFLGdCQUFnQjtBRDhibEI7O0FDNWJBO0VBQ0UsZ0JBQWdCO0FEK2JsQjs7QUM3YkE7RUFDRSxnQkFBZ0I7QURnY2xCOztBQzliQTtFQUNFLGdCQUFnQjtBRGljbEI7O0FDL2JBO0VBQ0UsZ0JBQWdCO0FEa2NsQjs7QUNoY0E7RUFDRSxnQkFBZ0I7QURtY2xCOztBQ2pjQTtFQUNFLGdCQUFnQjtBRG9jbEI7O0FDbGNBO0VBQ0UsZ0JBQWdCO0FEcWNsQjs7QUNuY0E7RUFDRSxnQkFBZ0I7QURzY2xCOztBQ3BjQTtFQUNFLGdCQUFnQjtBRHVjbEI7O0FDcmNBOzs7RUFHRSxnQkFBZ0I7QUR3Y2xCOztBQ3RjQTs7RUFFRSxnQkFBZ0I7QUR5Y2xCOztBQ3ZjQTs7RUFFRSxnQkFBZ0I7QUQwY2xCOztBQ3hjQTs7RUFFRSxnQkFBZ0I7QUQyY2xCOztBQ3pjQTtFQUNFLGdCQUFnQjtBRDRjbEI7O0FDMWNBO0VBQ0UsZ0JBQWdCO0FENmNsQjs7QUMzY0E7RUFDRSxnQkFBZ0I7QUQ4Y2xCOztBQzVjQTtFQUNFLGdCQUFnQjtBRCtjbEI7O0FDN2NBOzs7OztFQUtFLGdCQUFnQjtBRGdkbEI7O0FDOWNBO0VBQ0UsZ0JBQWdCO0FEaWRsQjs7QUMvY0E7OztFQUdFLGdCQUFnQjtBRGtkbEI7O0FDaGRBOztFQUVFLGdCQUFnQjtBRG1kbEI7O0FDamRBO0VBQ0UsZ0JBQWdCO0FEb2RsQjs7QUNsZEE7RUFDRSxnQkFBZ0I7QURxZGxCOztBQ25kQTs7O0VBR0UsZ0JBQWdCO0FEc2RsQjs7QUNwZEE7RUFDRSxnQkFBZ0I7QUR1ZGxCOztBQ3JkQTtFQUNFLGdCQUFnQjtBRHdkbEI7O0FDdGRBOztFQUVFLGdCQUFnQjtBRHlkbEI7O0FDdmRBOztFQUVFLGdCQUFnQjtBRDBkbEI7O0FDeGRBOztFQUVFLGdCQUFnQjtBRDJkbEI7O0FDemRBO0VBQ0UsZ0JBQWdCO0FENGRsQjs7QUMxZEE7RUFDRSxnQkFBZ0I7QUQ2ZGxCOztBQzNkQTtFQUNFLGdCQUFnQjtBRDhkbEI7O0FDNWRBO0VBQ0UsZ0JBQWdCO0FEK2RsQjs7QUM3ZEE7RUFDRSxnQkFBZ0I7QURnZWxCOztBQzlkQTtFQUNFLGdCQUFnQjtBRGllbEI7O0FDL2RBO0VBQ0UsZ0JBQWdCO0FEa2VsQjs7QUNoZUE7RUFDRSxnQkFBZ0I7QURtZWxCOztBQ2plQTs7RUFFRSxnQkFBZ0I7QURvZWxCOztBQ2xlQTtFQUNFLGdCQUFnQjtBRHFlbEI7O0FDbmVBO0VBQ0UsZ0JBQWdCO0FEc2VsQjs7QUNwZUE7RUFDRSxnQkFBZ0I7QUR1ZWxCOztBQ3JlQTtFQUNFLGdCQUFnQjtBRHdlbEI7O0FDdGVBO0VBQ0UsZ0JBQWdCO0FEeWVsQjs7QUN2ZUE7RUFDRSxnQkFBZ0I7QUQwZWxCOztBQ3hlQTtFQUNFLGdCQUFnQjtBRDJlbEI7O0FDemVBO0VBQ0UsZ0JBQWdCO0FENGVsQjs7QUMxZUE7RUFDRSxnQkFBZ0I7QUQ2ZWxCOztBQzNlQTtFQUNFLGdCQUFnQjtBRDhlbEI7O0FDNWVBO0VBQ0UsZ0JBQWdCO0FEK2VsQjs7QUM3ZUE7RUFDRSxnQkFBZ0I7QURnZmxCOztBQzllQTtFQUNFLGdCQUFnQjtBRGlmbEI7O0FDL2VBO0VBQ0UsZ0JBQWdCO0FEa2ZsQjs7QUNoZkE7RUFDRSxnQkFBZ0I7QURtZmxCOztBQ2pmQTtFQUNFLGdCQUFnQjtBRG9mbEI7O0FDbGZBO0VBQ0UsZ0JBQWdCO0FEcWZsQjs7QUNuZkE7RUFDRSxnQkFBZ0I7QURzZmxCOztBQ3BmQTtFQUNFLGdCQUFnQjtBRHVmbEI7O0FDcmZBO0VBQ0UsZ0JBQWdCO0FEd2ZsQjs7QUN0ZkE7RUFDRSxnQkFBZ0I7QUR5ZmxCOztBQ3ZmQTtFQUNFLGdCQUFnQjtBRDBmbEI7O0FDeGZBO0VBQ0UsZ0JBQWdCO0FEMmZsQjs7QUN6ZkE7RUFDRSxnQkFBZ0I7QUQ0ZmxCOztBQzFmQTtFQUNFLGdCQUFnQjtBRDZmbEI7O0FDM2ZBO0VBQ0UsZ0JBQWdCO0FEOGZsQjs7QUM1ZkE7RUFDRSxnQkFBZ0I7QUQrZmxCOztBQzdmQTtFQUNFLGdCQUFnQjtBRGdnQmxCOztBQzlmQTtFQUNFLGdCQUFnQjtBRGlnQmxCOztBQy9mQTtFQUNFLGdCQUFnQjtBRGtnQmxCOztBQ2hnQkE7RUFDRSxnQkFBZ0I7QURtZ0JsQjs7QUNqZ0JBO0VBQ0UsZ0JBQWdCO0FEb2dCbEI7O0FDbGdCQTtFQUNFLGdCQUFnQjtBRHFnQmxCOztBQ25nQkE7RUFDRSxnQkFBZ0I7QURzZ0JsQjs7QUNwZ0JBO0VBQ0UsZ0JBQWdCO0FEdWdCbEI7O0FDcmdCQTtFQUNFLGdCQUFnQjtBRHdnQmxCOztBQ3RnQkE7RUFDRSxnQkFBZ0I7QUR5Z0JsQjs7QUN2Z0JBOzs7RUFHRSxnQkFBZ0I7QUQwZ0JsQjs7QUN4Z0JBO0VBQ0UsZ0JBQWdCO0FEMmdCbEI7O0FDemdCQTtFQUNFLGdCQUFnQjtBRDRnQmxCOztBQzFnQkE7RUFDRSxnQkFBZ0I7QUQ2Z0JsQjs7QUMzZ0JBO0VBQ0UsZ0JBQWdCO0FEOGdCbEI7O0FDNWdCQTtFQUNFLGdCQUFnQjtBRCtnQmxCOztBQzdnQkE7RUFDRSxnQkFBZ0I7QURnaEJsQjs7QUM5Z0JBO0VBQ0UsZ0JBQWdCO0FEaWhCbEI7O0FDL2dCQTtFQUNFLGdCQUFnQjtBRGtoQmxCOztBQ2hoQkE7RUFDRSxnQkFBZ0I7QURtaEJsQjs7QUNqaEJBO0VBQ0UsZ0JBQWdCO0FEb2hCbEI7O0FDbGhCQTtFQUNFLGdCQUFnQjtBRHFoQmxCOztBQ25oQkE7RUFDRSxnQkFBZ0I7QURzaEJsQjs7QUNwaEJBO0VBQ0UsZ0JBQWdCO0FEdWhCbEI7O0FDcmhCQTtFQUNFLGdCQUFnQjtBRHdoQmxCOztBQ3RoQkE7RUFDRSxnQkFBZ0I7QUR5aEJsQjs7QUN2aEJBO0VBQ0UsZ0JBQWdCO0FEMGhCbEI7O0FDeGhCQTtFQUNFLGdCQUFnQjtBRDJoQmxCOztBQ3poQkE7RUFDRSxnQkFBZ0I7QUQ0aEJsQjs7QUMxaEJBO0VBQ0UsZ0JBQWdCO0FENmhCbEI7O0FDM2hCQTtFQUNFLGdCQUFnQjtBRDhoQmxCOztBQzVoQkE7RUFDRSxnQkFBZ0I7QUQraEJsQjs7QUM3aEJBOztFQUVFLGdCQUFnQjtBRGdpQmxCOztBQzloQkE7RUFDRSxnQkFBZ0I7QURpaUJsQjs7QUMvaEJBO0VBQ0UsZ0JBQWdCO0FEa2lCbEI7O0FDaGlCQTtFQUNFLGdCQUFnQjtBRG1pQmxCOztBQ2ppQkE7RUFDRSxnQkFBZ0I7QURvaUJsQjs7QUNsaUJBO0VBQ0UsZ0JBQWdCO0FEcWlCbEI7O0FDbmlCQTtFQUNFLGdCQUFnQjtBRHNpQmxCOztBQ3BpQkE7RUFDRSxnQkFBZ0I7QUR1aUJsQjs7QUNyaUJBO0VBQ0UsZ0JBQWdCO0FEd2lCbEI7O0FDdGlCQTtFQUNFLGdCQUFnQjtBRHlpQmxCOztBQ3ZpQkE7RUFDRSxnQkFBZ0I7QUQwaUJsQjs7QUN4aUJBO0VBQ0UsZ0JBQWdCO0FEMmlCbEI7O0FDemlCQTtFQUNFLGdCQUFnQjtBRDRpQmxCOztBQzFpQkE7RUFDRSxnQkFBZ0I7QUQ2aUJsQjs7QUMzaUJBO0VBQ0UsZ0JBQWdCO0FEOGlCbEI7O0FDNWlCQTtFQUNFLGdCQUFnQjtBRCtpQmxCOztBQzdpQkE7O0VBRUUsZ0JBQWdCO0FEZ2pCbEI7O0FDOWlCQTtFQUNFLGdCQUFnQjtBRGlqQmxCOztBQy9pQkE7RUFDRSxnQkFBZ0I7QURrakJsQjs7QUNoakJBO0VBQ0UsZ0JBQWdCO0FEbWpCbEI7O0FDampCQTtFQUNFLGdCQUFnQjtBRG9qQmxCOztBQ2xqQkE7O0VBRUUsZ0JBQWdCO0FEcWpCbEI7O0FDbmpCQTtFQUNFLGdCQUFnQjtBRHNqQmxCOztBQ3BqQkE7RUFDRSxnQkFBZ0I7QUR1akJsQjs7QUNyakJBO0VBQ0UsZ0JBQWdCO0FEd2pCbEI7O0FDdGpCQTs7O0VBR0UsZ0JBQWdCO0FEeWpCbEI7O0FDdmpCQTs7RUFFRSxnQkFBZ0I7QUQwakJsQjs7QUN4akJBOztFQUVFLGdCQUFnQjtBRDJqQmxCOztBQ3pqQkE7O0VBRUUsZ0JBQWdCO0FENGpCbEI7O0FDMWpCQTs7RUFFRSxnQkFBZ0I7QUQ2akJsQjs7QUMzakJBO0VBQ0UsZ0JBQWdCO0FEOGpCbEI7O0FDNWpCQTtFQUNFLGdCQUFnQjtBRCtqQmxCOztBQzdqQkE7RUFDRSxnQkFBZ0I7QURna0JsQjs7QUM5akJBO0VBQ0UsZ0JBQWdCO0FEaWtCbEI7O0FDL2pCQTtFQUNFLGdCQUFnQjtBRGtrQmxCOztBQ2hrQkE7RUFDRSxnQkFBZ0I7QURta0JsQjs7QUNqa0JBO0VBQ0UsZ0JBQWdCO0FEb2tCbEI7O0FDbGtCQTtFQUNFLGdCQUFnQjtBRHFrQmxCOztBQ25rQkE7RUFDRSxnQkFBZ0I7QURza0JsQjs7QUNwa0JBO0VBQ0UsZ0JBQWdCO0FEdWtCbEI7O0FDcmtCQTtFQUNFLGdCQUFnQjtBRHdrQmxCOztBQ3RrQkE7O0VBRUUsZ0JBQWdCO0FEeWtCbEI7O0FDdmtCQTs7RUFFRSxnQkFBZ0I7QUQwa0JsQjs7QUN4a0JBOztFQUVFLGdCQUFnQjtBRDJrQmxCOztBQ3prQkE7RUFDRSxnQkFBZ0I7QUQ0a0JsQjs7QUMxa0JBOztFQUVFLGdCQUFnQjtBRDZrQmxCOztBQzNrQkE7O0VBRUUsZ0JBQWdCO0FEOGtCbEI7O0FDNWtCQTtFQUNFLGdCQUFnQjtBRCtrQmxCOztBQzdrQkE7RUFDRSxnQkFBZ0I7QURnbEJsQjs7QUM5a0JBO0VBQ0UsZ0JBQWdCO0FEaWxCbEI7O0FDL2tCQTtFQUNFLGdCQUFnQjtBRGtsQmxCOztBQ2hsQkE7RUFDRSxnQkFBZ0I7QURtbEJsQjs7QUNqbEJBO0VBQ0UsZ0JBQWdCO0FEb2xCbEI7O0FDbGxCQTtFQUNFLGdCQUFnQjtBRHFsQmxCOztBQ25sQkE7RUFDRSxnQkFBZ0I7QURzbEJsQjs7QUNwbEJBO0VBQ0UsZ0JBQWdCO0FEdWxCbEI7O0FDcmxCQTtFQUNFLGdCQUFnQjtBRHdsQmxCOztBQ3RsQkE7RUFDRSxnQkFBZ0I7QUR5bEJsQjs7QUN2bEJBO0VBQ0UsZ0JBQWdCO0FEMGxCbEI7O0FDeGxCQTtFQUNFLGdCQUFnQjtBRDJsQmxCOztBQ3psQkE7RUFDRSxnQkFBZ0I7QUQ0bEJsQjs7QUMxbEJBO0VBQ0UsZ0JBQWdCO0FENmxCbEI7O0FDM2xCQTtFQUNFLGdCQUFnQjtBRDhsQmxCOztBQzVsQkE7RUFDRSxnQkFBZ0I7QUQrbEJsQjs7QUM3bEJBO0VBQ0UsZ0JBQWdCO0FEZ21CbEI7O0FDOWxCQTtFQUNFLGdCQUFnQjtBRGltQmxCOztBQy9sQkE7RUFDRSxnQkFBZ0I7QURrbUJsQjs7QUNobUJBOztFQUVFLGdCQUFnQjtBRG1tQmxCOztBQ2ptQkE7RUFDRSxnQkFBZ0I7QURvbUJsQjs7QUNsbUJBO0VBQ0UsZ0JBQWdCO0FEcW1CbEI7O0FDbm1CQTtFQUNFLGdCQUFnQjtBRHNtQmxCOztBQ3BtQkE7RUFDRSxnQkFBZ0I7QUR1bUJsQjs7QUNybUJBO0VBQ0UsZ0JBQWdCO0FEd21CbEI7O0FDdG1CQTtFQUNFLGdCQUFnQjtBRHltQmxCOztBQ3ZtQkE7RUFDRSxnQkFBZ0I7QUQwbUJsQjs7QUN4bUJBO0VBQ0UsZ0JBQWdCO0FEMm1CbEI7O0FDem1CQTtFQUNFLGdCQUFnQjtBRDRtQmxCOztBQzFtQkE7RUFDRSxnQkFBZ0I7QUQ2bUJsQjs7QUMzbUJBO0VBQ0UsZ0JBQWdCO0FEOG1CbEI7O0FDNW1CQTtFQUNFLGdCQUFnQjtBRCttQmxCOztBQzdtQkE7RUFDRSxnQkFBZ0I7QURnbkJsQjs7QUM5bUJBO0VBQ0UsZ0JBQWdCO0FEaW5CbEI7O0FDL21CQTtFQUNFLGdCQUFnQjtBRGtuQmxCOztBQ2huQkE7RUFDRSxnQkFBZ0I7QURtbkJsQjs7QUNqbkJBO0VBQ0UsZ0JBQWdCO0FEb25CbEI7O0FDbG5CQTtFQUNFLGdCQUFnQjtBRHFuQmxCOztBQ25uQkE7RUFDRSxnQkFBZ0I7QURzbkJsQjs7QUNwbkJBO0VBQ0UsZ0JBQWdCO0FEdW5CbEI7O0FDcm5CQTtFQUNFLGdCQUFnQjtBRHduQmxCOztBQ3RuQkE7RUFDRSxnQkFBZ0I7QUR5bkJsQjs7QUN2bkJBO0VBQ0UsZ0JBQWdCO0FEMG5CbEI7O0FDeG5CQTtFQUNFLGdCQUFnQjtBRDJuQmxCOztBQ3puQkE7RUFDRSxnQkFBZ0I7QUQ0bkJsQjs7QUMxbkJBO0VBQ0UsZ0JBQWdCO0FENm5CbEI7O0FDM25CQTtFQUNFLGdCQUFnQjtBRDhuQmxCOztBQzVuQkE7RUFDRSxnQkFBZ0I7QUQrbkJsQjs7QUM3bkJBO0VBQ0UsZ0JBQWdCO0FEZ29CbEI7O0FDOW5CQTtFQUNFLGdCQUFnQjtBRGlvQmxCOztBQy9uQkE7RUFDRSxnQkFBZ0I7QURrb0JsQjs7QUNob0JBO0VBQ0UsZ0JBQWdCO0FEbW9CbEI7O0FDam9CQTtFQUNFLGdCQUFnQjtBRG9vQmxCOztBQ2xvQkE7RUFDRSxnQkFBZ0I7QURxb0JsQjs7QUNub0JBO0VBQ0UsZ0JBQWdCO0FEc29CbEI7O0FDcG9CQTtFQUNFLGdCQUFnQjtBRHVvQmxCOztBQ3JvQkE7RUFDRSxnQkFBZ0I7QUR3b0JsQjs7QUN0b0JBO0VBQ0UsZ0JBQWdCO0FEeW9CbEI7O0FDdm9CQTtFQUNFLGdCQUFnQjtBRDBvQmxCOztBQ3hvQkE7RUFDRSxnQkFBZ0I7QUQyb0JsQjs7QUN6b0JBO0VBQ0UsZ0JBQWdCO0FENG9CbEI7O0FDMW9CQTtFQUNFLGdCQUFnQjtBRDZvQmxCOztBQzNvQkE7RUFDRSxnQkFBZ0I7QUQ4b0JsQjs7QUM1b0JBO0VBQ0UsZ0JBQWdCO0FEK29CbEI7O0FDN29CQTtFQUNFLGdCQUFnQjtBRGdwQmxCOztBQzlvQkE7RUFDRSxnQkFBZ0I7QURpcEJsQjs7QUMvb0JBO0VBQ0UsZ0JBQWdCO0FEa3BCbEI7O0FDaHBCQTtFQUNFLGdCQUFnQjtBRG1wQmxCOztBQ2pwQkE7RUFDRSxnQkFBZ0I7QURvcEJsQjs7QUNscEJBO0VBQ0UsZ0JBQWdCO0FEcXBCbEI7O0FDbnBCQTs7RUFFRSxnQkFBZ0I7QURzcEJsQjs7QUNwcEJBOzs7RUFHRSxnQkFBZ0I7QUR1cEJsQjs7QUNycEJBO0VBQ0UsZ0JBQWdCO0FEd3BCbEI7O0FDdHBCQTtFQUNFLGdCQUFnQjtBRHlwQmxCOztBQ3ZwQkE7O0VBRUUsZ0JBQWdCO0FEMHBCbEI7O0FDeHBCQTtFQUNFLGdCQUFnQjtBRDJwQmxCOztBQ3pwQkE7RUFDRSxnQkFBZ0I7QUQ0cEJsQjs7QUMxcEJBO0VBQ0UsZ0JBQWdCO0FENnBCbEI7O0FDM3BCQTtFQUNFLGdCQUFnQjtBRDhwQmxCOztBQzVwQkE7RUFDRSxnQkFBZ0I7QUQrcEJsQjs7QUM3cEJBO0VBQ0UsZ0JBQWdCO0FEZ3FCbEI7O0FDOXBCQTtFQUNFLGdCQUFnQjtBRGlxQmxCOztBQy9wQkE7RUFDRSxnQkFBZ0I7QURrcUJsQjs7QUNocUJBO0VBQ0UsZ0JBQWdCO0FEbXFCbEI7O0FDanFCQTtFQUNFLGdCQUFnQjtBRG9xQmxCOztBQ2xxQkE7O0VBRUUsZ0JBQWdCO0FEcXFCbEI7O0FDbnFCQTs7RUFFRSxnQkFBZ0I7QURzcUJsQjs7QUNwcUJBO0VBQ0UsZ0JBQWdCO0FEdXFCbEI7O0FDcnFCQTtFQUNFLGdCQUFnQjtBRHdxQmxCOztBQ3RxQkE7RUFDRSxnQkFBZ0I7QUR5cUJsQjs7QUN2cUJBO0VBQ0UsZ0JBQWdCO0FEMHFCbEI7O0FDeHFCQTtFQUNFLGdCQUFnQjtBRDJxQmxCOztBQ3pxQkE7RUFDRSxnQkFBZ0I7QUQ0cUJsQjs7QUMxcUJBOztFQUVFLGdCQUFnQjtBRDZxQmxCOztBQzNxQkE7O0VBRUUsZ0JBQWdCO0FEOHFCbEI7O0FDNXFCQTtFQUNFLGdCQUFnQjtBRCtxQmxCOztBQzdxQkE7RUFDRSxnQkFBZ0I7QURnckJsQjs7QUM5cUJBO0VBQ0UsZ0JBQWdCO0FEaXJCbEI7O0FDL3FCQTtFQUNFLGdCQUFnQjtBRGtyQmxCOztBQ2hyQkE7O0VBRUUsZ0JBQWdCO0FEbXJCbEI7O0FDanJCQTs7RUFFRSxnQkFBZ0I7QURvckJsQjs7QUNsckJBO0VBQ0UsZ0JBQWdCO0FEcXJCbEI7O0FDbnJCQTtFQUNFLGdCQUFnQjtBRHNyQmxCOztBQ3ByQkE7RUFDRSxnQkFBZ0I7QUR1ckJsQjs7QUNyckJBOzs7RUFHRSxnQkFBZ0I7QUR3ckJsQjs7QUN0ckJBOztFQUVFLGdCQUFnQjtBRHlyQmxCOztBQ3ZyQkE7O0VBRUUsZ0JBQWdCO0FEMHJCbEI7O0FDeHJCQTs7RUFFRSxnQkFBZ0I7QUQyckJsQjs7QUN6ckJBOztFQUVFLGdCQUFnQjtBRDRyQmxCOztBQzFyQkE7RUFDRSxnQkFBZ0I7QUQ2ckJsQjs7QUMzckJBOzs7RUFHRSxnQkFBZ0I7QUQ4ckJsQjs7QUM1ckJBO0VBQ0UsZ0JBQWdCO0FEK3JCbEI7O0FDN3JCQTtFQUNFLGdCQUFnQjtBRGdzQmxCOztBQzlyQkE7RUFDRSxnQkFBZ0I7QURpc0JsQjs7QUMvckJBO0VBQ0UsZ0JBQWdCO0FEa3NCbEI7O0FDaHNCQTs7RUFFRSxnQkFBZ0I7QURtc0JsQjs7QUNqc0JBOztFQUVFLGdCQUFnQjtBRG9zQmxCOztBQ2xzQkE7RUFDRSxnQkFBZ0I7QURxc0JsQjs7QUNuc0JBO0VBQ0UsZ0JBQWdCO0FEc3NCbEI7O0FDcHNCQTtFQUNFLGdCQUFnQjtBRHVzQmxCOztBQ3JzQkE7RUFDRSxnQkFBZ0I7QUR3c0JsQjs7QUN0c0JBO0VBQ0UsZ0JBQWdCO0FEeXNCbEI7O0FDdnNCQTtFQUNFLGdCQUFnQjtBRDBzQmxCOztBQ3hzQkE7RUFDRSxnQkFBZ0I7QUQyc0JsQjs7QUN6c0JBO0VBQ0UsZ0JBQWdCO0FENHNCbEI7O0FDMXNCQTtFQUNFLGdCQUFnQjtBRDZzQmxCOztBQzNzQkE7RUFDRSxnQkFBZ0I7QUQ4c0JsQjs7QUM1c0JBO0VBQ0UsZ0JBQWdCO0FEK3NCbEI7O0FDN3NCQTtFQUNFLGtCQUFrQjtFQUNsQixVQUFVO0VBQ1YsV0FBVztFQUNYLFVBQVU7RUFDVixZQUFZO0VBQ1osZ0JBQWdCO0VBQ2hCLHNCQUFzQjtFQUN0QixTQUFTO0FEZ3RCWDs7QUM5c0JBOztFQUVFLGdCQUFnQjtFQUNoQixXQUFXO0VBQ1gsWUFBWTtFQUNaLFNBQVM7RUFDVCxpQkFBaUI7RUFDakIsVUFBVTtBRGl0Qlo7O0FFaC9GQTtFQUNDLHNCQUFzQjtFQUN0QixrQ0FBbUM7RUFDbkMsMk1BR3NEO0VBQ3RELG1CQUFtQjtFQUNuQixrQkFBa0I7QUZnL0ZuQjs7QUFFQTtFRTkrRkk7RUFDSCxpQ0FBaUM7RUFDakMsV0FBVztFQUNYLGtCQUFrQjtFQUNsQixtQkFBbUI7RUFDbkIsb0JBQW9CO0VBQ3BCLG9CQUFvQjtFQUNwQixjQUFjO0VBQ2QsY0FBYztFQUNkLHFCQUFxQjtFQUNyQixrQkFBa0I7RUFDbEIsZUFBZTtFQUNmLHNCQUFzQjtFQUN0QixrQkFBa0I7RUFDbEIsU0FBUztFQUVUO0VBQ0EsbUNBQW1DO0VBQ25DLGtDQUFrQztBRisrRm5DOztBRTUrRkE7RUFDQyxlQUFlO0FGKytGaEI7O0FFNytGQTtFQUNDLGVBQWU7QUZnL0ZoQjs7QUV2K0ZBO0VBQWtCLGdCQUFlO0FGMitGakM7O0FFMStGQTtFQUFtQixnQkFBZTtBRjgrRmxDOztBRTcrRkE7RUFBbUIsZ0JBQWU7QUZpL0ZsQzs7QUVoL0ZBO0VBQW1CLGdCQUFlO0FGby9GbEM7O0FFbi9GQTtFQUFtQixnQkFBZTtBRnUvRmxDOztBRXQvRkE7RUFBbUIsZ0JBQWU7QUYwL0ZsQzs7QUV6L0ZBO0VBQW9CLGdCQUFlO0FGNi9GbkM7O0FFNS9GQTtFQUFrQixnQkFBZTtBRmdnR2pDOztBRS8vRkE7RUFBdUIsZ0JBQWU7QUZtZ0d0Qzs7QUVsZ0dBO0VBQXNCLGdCQUFlO0FGc2dHckM7O0FFcmdHQTtFQUFvQixnQkFBZTtBRnlnR25DOztBRXhnR0E7RUFBb0IsZ0JBQWU7QUY0Z0duQzs7QUUzZ0dBO0VBQXFCLGdCQUFlO0FGK2dHcEM7O0FFOWdHQTtFQUFxQixnQkFBZTtBRmtoR3BDOztBRWpoR0E7RUFBcUIsZ0JBQWU7QUZxaEdwQzs7QUVwaEdBO0VBQXFCLGdCQUFlO0FGd2hHcEM7O0FFdmhHQTtFQUFxQixnQkFBZTtBRjJoR3BDOztBRTFoR0E7RUFBb0IsZ0JBQWU7QUY4aEduQzs7QUU3aEdBO0VBQXFCLGdCQUFlO0FGaWlHcEM7O0FFaGlHQTtFQUFxQixnQkFBZTtBRm9pR3BDOztBRW5pR0E7RUFBb0IsZ0JBQWU7QUZ1aUduQzs7QUV0aUdBO0VBQW9CLGdCQUFlO0FGMGlHbkM7O0FFemlHQTtFQUFpQixnQkFBZTtBRjZpR2hDOztBRTVpR0E7RUFBc0IsZ0JBQWU7QUZnakdyQzs7QUUvaUdBO0VBQXVCLGdCQUFlO0FGbWpHdEM7O0FFbGpHQTtFQUFrQixnQkFBZTtBRnNqR2pDOztBRXJqR0E7RUFBa0IsZ0JBQWU7QUZ5akdqQzs7QUV4akdBO0VBQWtCLGdCQUFlO0FGNGpHakM7O0FFM2pHQTtFQUFtQixnQkFBZTtBRitqR2xDOztBRTlqR0E7RUFBbUIsZ0JBQWU7QUZra0dsQzs7QUVqa0dBO0VBQTJCLGdCQUFlO0FGcWtHMUM7O0FFcGtHQTtFQUFvQixnQkFBZTtBRndrR25DOztBRXZrR0E7RUFBb0IsZ0JBQWU7QUYya0duQzs7QUUxa0dBO0VBQXNCLGdCQUFlO0FGOGtHckM7O0FFN2tHQTtFQUF3QixnQkFBZTtBRmlsR3ZDOztBRWhsR0E7RUFBeUIsZ0JBQWU7QUZvbEd4Qzs7QUVubEdBO0VBQXlCLGdCQUFlO0FGdWxHeEM7O0FFdGxHQTtFQUFxQixnQkFBZTtBRjBsR3BDOztBRXpsR0E7RUFBc0IsZ0JBQWU7QUY2bEdyQzs7QUU1bEdBO0VBQXlCLGdCQUFlO0FGZ21HeEM7O0FFL2xHQTtFQUEwQixnQkFBZTtBRm1tR3pDOztBRWxtR0E7RUFBbUIsZ0JBQWU7QUZzbUdsQzs7QUVybUdBO0VBQW9CLGdCQUFlO0FGeW1HbkM7O0FFeG1HQTtFQUEyQixnQkFBZTtBRjRtRzFDOztBRTNtR0E7RUFBcUIsZ0JBQWU7QUYrbUdwQzs7QUU5bUdBO0VBQW9CLGdCQUFlO0FGa25HbkM7O0FFam5HQTtFQUFxQixnQkFBZTtBRnFuR3BDOztBRXBuR0E7RUFBb0IsZ0JBQWU7QUZ3bkduQzs7QUV2bkdBO0VBQW9CLGdCQUFlO0FGMm5HbkM7O0FFMW5HQTtFQUFvQixnQkFBZTtBRjhuR25DOztBRTduR0E7RUFBcUIsZ0JBQWU7QUZpb0dwQzs7QUVob0dBO0VBQXdCLGdCQUFlO0FGb29HdkM7O0FFbm9HQTtFQUFxQixnQkFBZTtBRnVvR3BDOztBRXRvR0E7RUFBbUIsZ0JBQWU7QUYwb0dsQzs7QUV6b0dBO0VBQW1CLGdCQUFlO0FGNm9HbEM7O0FFNW9HQTtFQUFrQixnQkFBZTtBRmdwR2pDOztBRS9vR0E7RUFBbUIsZ0JBQWU7QUZtcEdsQzs7QUVscEdBO0VBQXNCLGdCQUFlO0FGc3BHckM7O0FFcnBHQTtFQUFrQixnQkFBZTtBRnlwR2pDOztBRXhwR0E7RUFBNEIsZ0JBQWU7QUY0cEczQzs7QUUzcEdBO0VBQXVCLGdCQUFlO0FGK3BHdEM7O0FFOXBHQTtFQUFtQixnQkFBZTtBRmtxR2xDOztBRWpxR0E7RUFBMEIsZ0JBQWU7QUZxcUd6Qzs7QUVwcUdBO0VBQW1CLGdCQUFlO0FGd3FHbEM7O0FFdnFHQTtFQUFrQixnQkFBZTtBRjJxR2pDOztBRTFxR0E7RUFBbUIsZ0JBQWU7QUY4cUdsQzs7QUU3cUdBO0VBQW1CLGdCQUFlO0FGaXJHbEM7O0FFaHJHQTtFQUFtQixnQkFBZTtBRm9yR2xDOztBRW5yR0E7RUFBMEIsZ0JBQWU7QUZ1ckd6Qzs7QUV0ckdBO0VBQTJCLGdCQUFlO0FGMHJHMUM7O0FFenJHQTtFQUFnQyxnQkFBZTtBRjZyRy9DOztBRTVyR0E7RUFBMkIsZ0JBQWU7QUZnc0cxQzs7QUUvckdBO0VBQWtCLGdCQUFlO0FGbXNHakM7O0FFbHNHQTtFQUF3QixnQkFBZTtBRnNzR3ZDOztBRXJzR0E7RUFBeUIsZ0JBQWU7QUZ5c0d4Qzs7QUV4c0dBO0VBQW1CLGdCQUFlO0FGNHNHbEM7O0FFM3NHQTtFQUF1QixnQkFBZTtBRitzR3RDOztBRTlzR0E7RUFBaUIsZ0JBQWU7QUZrdEdoQzs7QUVqdEdBO0VBQXdCLGdCQUFlO0FGcXRHdkM7O0FFcHRHQTtFQUFxQixnQkFBZTtBRnd0R3BDOztBRXZ0R0E7RUFBNkIsZ0JBQWU7QUYydEc1Qzs7QUUxdEdBO0VBQWtCLGdCQUFlO0FGOHRHakM7O0FFN3RHQTtFQUFrQixnQkFBZTtBRml1R2pDOztBRWh1R0E7RUFBc0IsZ0JBQWU7QUZvdUdyQzs7QUVudUdBO0VBQWtCLGdCQUFlO0FGdXVHakM7O0FFdHVHQTtFQUFtQixnQkFBZTtBRjB1R2xDOztBRXp1R0E7RUFBdUIsZ0JBQWU7QUY2dUd0Qzs7QUU1dUdBO0VBQW1CLGdCQUFlO0FGZ3ZHbEM7O0FFL3VHQTtFQUFzQixnQkFBZTtBRm12R3JDOztBRWx2R0E7RUFBbUIsZ0JBQWU7QUZzdkdsQzs7QUVydkdBO0VBQXFCLGdCQUFlO0FGeXZHcEM7O0FFeHZHQTtFQUFxQixnQkFBZTtBRjR2R3BDOztBRTN2R0E7RUFBc0IsZ0JBQWU7QUYrdkdyQzs7QUU5dkdBO0VBQXlCLGdCQUFlO0FGa3dHeEM7O0FFandHQTtFQUF1QixnQkFBZTtBRnF3R3RDOztBRXB3R0E7RUFBcUIsZ0JBQWU7QUZ3d0dwQzs7QUV2d0dBO0VBQXdCLGdCQUFlO0FGMndHdkM7O0FFMXdHQTtFQUF5QixnQkFBZTtBRjh3R3hDOztBRTd3R0E7RUFBeUIsZ0JBQWU7QUZpeEd4Qzs7QUVoeEdBO0VBQTBCLGdCQUFlO0FGb3hHekM7O0FFbnhHQTtFQUF1QixnQkFBZTtBRnV4R3RDOztBRXR4R0E7RUFBd0IsZ0JBQWU7QUYweEd2Qzs7QUV6eEdBO0VBQXdCLGdCQUFlO0FGNnhHdkM7O0FFNXhHQTtFQUF5QixnQkFBZTtBRmd5R3hDOztBRS94R0E7RUFBMkIsZ0JBQWU7QUZteUcxQzs7QUVseUdBO0VBQTRCLGdCQUFlO0FGc3lHM0M7O0FFcnlHQTtFQUF5QixnQkFBZTtBRnl5R3hDOztBRXh5R0E7RUFBMEIsZ0JBQWU7QUY0eUd6Qzs7QUUzeUdBO0VBQXdCLGdCQUFlO0FGK3lHdkM7O0FFOXlHQTtFQUF5QixnQkFBZTtBRmt6R3hDOztBRWp6R0E7RUFBc0IsZ0JBQWU7QUZxekdyQzs7QUVwekdBO0VBQXVCLGdCQUFlO0FGd3pHdEM7O0FFdnpHQTtFQUF3QixnQkFBZTtBRjJ6R3ZDOztBRTF6R0E7RUFBd0IsZ0JBQWU7QUY4ekd2Qzs7QUU3ekdBO0VBQTBCLGdCQUFlO0FGaTBHekM7O0FFaDBHQTtFQUEyQixnQkFBZTtBRm8wRzFDOztBRW4wR0E7RUFBd0IsZ0JBQWU7QUZ1MEd2Qzs7QUV0MEdBO0VBQXlCLGdCQUFlO0FGMDBHeEM7O0FFejBHQTtFQUF1QixnQkFBZTtBRjYwR3RDOztBRTUwR0E7RUFBd0IsZ0JBQWU7QUZnMUd2Qzs7QUUvMEdBO0VBQXdCLGdCQUFlO0FGbTFHdkM7O0FFbDFHQTtFQUF5QixnQkFBZTtBRnMxR3hDOztBRXIxR0E7RUFBa0IsZ0JBQWU7QUZ5MUdqQzs7QUV4MUdBO0VBQW1CLGdCQUFlO0FGNDFHbEM7O0FFMzFHQTtFQUFzQixnQkFBZTtBRisxR3JDOztBRTkxR0E7RUFBdUIsZ0JBQWU7QUZrMkd0Qzs7QUVqMkdBO0VBQXNCLGdCQUFlO0FGcTJHckM7O0FFcDJHQTtFQUF1QixnQkFBZTtBRncyR3RDOztBRXYyR0E7RUFBc0IsZ0JBQWU7QUYyMkdyQzs7QUUxMkdBO0VBQXVCLGdCQUFlO0FGODJHdEM7O0FFNzJHQTtFQUErQixnQkFBZTtBRmkzRzlDOztBRWgzR0E7RUFBZ0MsZ0JBQWU7QUZvM0cvQzs7QUVuM0dBO0VBQXdCLGdCQUFlO0FGdTNHdkM7O0FFdDNHQTtFQUF5QixnQkFBZTtBRjAzR3hDOztBRXozR0E7RUFBeUIsZ0JBQWU7QUY2M0d4Qzs7QUU1M0dBO0VBQTBCLGdCQUFlO0FGZzRHekM7O0FFLzNHQTtFQUE4QixnQkFBZTtBRm00RzdDOztBRWw0R0E7RUFBK0IsZ0JBQWU7QUZzNEc5Qzs7QUVyNEdBO0VBQW1CLGdCQUFlO0FGeTRHbEM7O0FFeDRHQTtFQUFtQixnQkFBZTtBRjQ0R2xDOztBRTM0R0E7RUFBbUIsZ0JBQWU7QUYrNEdsQzs7QUU5NEdBO0VBQW9CLGdCQUFlO0FGazVHbkM7O0FFajVHQTtFQUFvQixnQkFBZTtBRnE1R25DOztBRXA1R0E7RUFBb0IsZ0JBQWU7QUZ3NUduQzs7QUV2NUdBO0VBQW1CLGdCQUFlO0FGMjVHbEM7O0FFMTVHQTtFQUFvQixnQkFBZTtBRjg1R25DOztBRTc1R0E7RUFBb0IsZ0JBQWU7QUZpNkduQzs7QUVoNkdBO0VBQW9CLGdCQUFlO0FGbzZHbkM7O0FFbjZHQTtFQUEyQixnQkFBZTtBRnU2RzFDOztBRXQ2R0E7RUFBNkIsZ0JBQWU7QUYwNkc1Qzs7QUV6NkdBO0VBQTJCLGdCQUFlO0FGNjZHMUM7O0FFNTZHQTtFQUF5QixnQkFBZTtBRmc3R3hDOztBRS82R0E7RUFBMEIsZ0JBQWU7QUZtN0d6Qzs7QUVsN0dBO0VBQTBCLGdCQUFlO0FGczdHekM7O0FFcjdHQTtFQUEyQixnQkFBZTtBRnk3RzFDOztBRXg3R0E7RUFBMEIsZ0JBQWU7QUY0N0d6Qzs7QUUzN0dBO0VBQTBCLGdCQUFlO0FGKzdHekM7O0FFOTdHQTtFQUEyQixnQkFBZTtBRms4RzFDOztBRWo4R0E7RUFBcUIsZ0JBQWU7QUZxOEdwQzs7QUVwOEdBO0VBQXlCLGdCQUFlO0FGdzhHeEM7O0FFdjhHQTtFQUFxQixnQkFBZTtBRjI4R3BDOztBRTE4R0E7RUFBcUIsZ0JBQWU7QUY4OEdwQzs7QUU3OEdBO0VBQTBCLGdCQUFlO0FGaTlHekM7O0FFaDlHQTtFQUEyQixnQkFBZTtBRm85RzFDOztBRW45R0E7RUFBMEIsZ0JBQWU7QUZ1OUd6Qzs7QUV0OUdBO0VBQTJCLGdCQUFlO0FGMDlHMUM7O0FFejlHQTtFQUE4QixnQkFBZTtBRjY5RzdDOztBRTU5R0E7RUFBNEIsZ0JBQWU7QUZnK0czQzs7QUUvOUdBO0VBQThCLGdCQUFlO0FGbStHN0M7O0FFbCtHQTtFQUE0QixnQkFBZTtBRnMrRzNDOztBRXIrR0E7RUFBcUIsZ0JBQWU7QUZ5K0dwQzs7QUV4K0dBO0VBQTBCLGdCQUFlO0FGNCtHekM7O0FFMytHQTtFQUFxQixnQkFBZTtBRisrR3BDOztBRTkrR0E7RUFBMEIsZ0JBQWU7QUZrL0d6Qzs7QUVqL0dBO0VBQXlCLGdCQUFlO0FGcS9HeEM7O0FFcC9HQTtFQUFnQixnQkFBZTtBRncvRy9COztBRXYvR0E7RUFBdUIsZ0JBQWU7QUYyL0d0Qzs7QUUxL0dBO0VBQXdCLGdCQUFlO0FGOC9HdkM7O0FFNy9HQTtFQUF3QixnQkFBZTtBRmlnSHZDOztBRWhnSEE7RUFBd0IsZ0JBQWU7QUZvZ0h2Qzs7QUVuZ0hBO0VBQXlCLGdCQUFlO0FGdWdIeEM7O0FFdGdIQTtFQUFzQixnQkFBZTtBRjBnSHJDOztBRXpnSEE7RUFBb0IsZ0JBQWU7QUY2Z0huQzs7QUU1Z0hBO0VBQW9CLGdCQUFlO0FGZ2hIbkM7O0FFL2dIQTtFQUFxQixnQkFBZTtBRm1oSHBDOztBRWxoSEE7RUFBbUIsZ0JBQWU7QUZzaEhsQzs7QUVyaEhBO0VBQW9CLGdCQUFlO0FGeWhIbkM7O0FFeGhIQTtFQUFrQixnQkFBZTtBRjRoSGpDOztBRTNoSEE7RUFBbUIsZ0JBQWU7QUYraEhsQzs7QUU5aEhBO0VBQW1CLGdCQUFlO0FGa2lIbEM7O0FFamlIQTtFQUFtQixnQkFBZTtBRnFpSGxDOztBRXBpSEE7RUFBc0IsZ0JBQWU7QUZ3aUhyQzs7QUV2aUhBO0VBQXVCLGdCQUFlO0FGMmlIdEM7O0FFMWlIQTtFQUF5QixnQkFBZTtBRjhpSHhDOztBRTdpSEE7RUFBb0IsZ0JBQWU7QUZpakhuQzs7QUVoakhBO0VBQWlCLGdCQUFlO0FGb2pIaEM7O0FFbmpIQTtFQUFxQixnQkFBZTtBRnVqSHBDOztBRXRqSEE7RUFBbUIsZ0JBQWU7QUYwakhsQzs7QUV6akhBO0VBQXlCLGdCQUFlO0FGNmpIeEM7O0FFNWpIQTtFQUF1QixnQkFBZTtBRmdrSHRDOztBRS9qSEE7RUFBd0IsZ0JBQWU7QUZta0h2Qzs7QUVsa0hBO0VBQXNCLGdCQUFlO0FGc2tIckM7O0FFcmtIQTtFQUF3QixnQkFBZTtBRnlrSHZDOztBRXhrSEE7RUFBb0IsZ0JBQWU7QUY0a0huQzs7QUUza0hBO0VBQWtCLGdCQUFlO0FGK2tIakM7O0FFOWtIQTtFQUFtQixnQkFBZTtBRmtsSGxDOztBRWpsSEE7RUFBbUIsZ0JBQWU7QUZxbEhsQzs7QUVwbEhBO0VBQW1CLGdCQUFlO0FGd2xIbEM7O0FFdmxIQTtFQUF5QixnQkFBZTtBRjJsSHhDOztBRTFsSEE7RUFBMEIsZ0JBQWU7QUY4bEh6Qzs7QUU3bEhBO0VBQXlCLGdCQUFlO0FGaW1IeEM7O0FFaG1IQTtFQUF5QixnQkFBZTtBRm9tSHhDOztBRW5tSEE7RUFBeUIsZ0JBQWU7QUZ1bUh4Qzs7QUV0bUhBO0VBQWtCLGdCQUFlO0FGMG1IakM7O0FFem1IQTtFQUFzQixnQkFBZTtBRjZtSHJDOztBRTVtSEE7RUFBbUIsZ0JBQWU7QUZnbkhsQzs7QUUvbUhBO0VBQW9CLGdCQUFlO0FGbW5IbkM7O0FFbG5IQTtFQUF5QixnQkFBZTtBRnNuSHhDOztBRXJuSEE7RUFBd0IsZ0JBQWU7QUZ5bkh2Qzs7QUV4bkhBO0VBQXdCLGdCQUFlO0FGNG5IdkM7O0FFM25IQTtFQUF5QixnQkFBZTtBRituSHhDOztBRTluSEE7RUFBeUIsZ0JBQWU7QUZrb0h4Qzs7QUVqb0hBO0VBQTBCLGdCQUFlO0FGcW9IekM7O0FFcG9IQTtFQUE0QixnQkFBZTtBRndvSDNDOztBRXZvSEE7RUFBNEIsZ0JBQWU7QUYyb0gzQzs7QUUxb0hBO0VBQTJCLGdCQUFlO0FGOG9IMUM7O0FFN29IQTtFQUEwQixnQkFBZTtBRmlwSHpDOztBRWhwSEE7RUFBMkIsZ0JBQWU7QUZvcEgxQzs7QUVucEhBO0VBQTJCLGdCQUFlO0FGdXBIMUM7O0FFdHBIQTtFQUFzQixnQkFBZTtBRjBwSHJDOztBRXpwSEE7RUFBcUIsZ0JBQWU7QUY2cEhwQzs7QUU1cEhBO0VBQXNCLGdCQUFlO0FGZ3FIckM7O0FFL3BIQTtFQUFzQixnQkFBZTtBRm1xSHJDOztBRWxxSEE7RUFBc0IsZ0JBQWU7QUZzcUhyQzs7QUVycUhBO0VBQXNCLGdCQUFlO0FGeXFIckM7O0FFeHFIQTtFQUFxQixnQkFBZTtBRjRxSHBDOztBRTNxSEE7RUFBcUIsZ0JBQWU7QUYrcUhwQzs7QUU5cUhBO0VBQXVCLGdCQUFlO0FGa3JIdEM7O0FFanJIQTtFQUF1QixnQkFBZTtBRnFySHRDOztBRXBySEE7RUFBc0IsZ0JBQWU7QUZ3ckhyQzs7QUV2ckhBO0VBQWlCLGdCQUFlO0FGMnJIaEM7O0FFMXJIQTtFQUFrQixnQkFBZTtBRjhySGpDOztBRTdySEE7RUFBa0IsZ0JBQWU7QUZpc0hqQzs7QUVoc0hBO0VBQXVCLGdCQUFlO0FGb3NIdEM7O0FFbnNIQTtFQUFtQixnQkFBZTtBRnVzSGxDOztBRXRzSEE7RUFBcUIsZ0JBQWU7QUYwc0hwQzs7QUV6c0hBO0VBQW1CLGdCQUFlO0FGNnNIbEM7O0FFNXNIQTtFQUFvQixnQkFBZTtBRmd0SG5DOztBRS9zSEE7RUFBbUIsZ0JBQWU7QUZtdEhsQzs7QUVsdEhBO0VBQXVCLGdCQUFlO0FGc3RIdEM7O0FFcnRIQTtFQUF5QixnQkFBZTtBRnl0SHhDOztBRXh0SEE7RUFBMEIsZ0JBQWU7QUY0dEh6Qzs7QUUzdEhBO0VBQW1CLGdCQUFlO0FGK3RIbEM7O0FFOXRIQTtFQUFtQixnQkFBZTtBRmt1SGxDOztBRWp1SEE7RUFBdUIsZ0JBQWU7QUZxdUh0Qzs7QUVwdUhBO0VBQXdCLGdCQUFlO0FGd3VIdkM7O0FFdnVIQTtFQUF3QixnQkFBZTtBRjJ1SHZDOztBRTF1SEE7RUFBd0IsZ0JBQWU7QUY4dUh2Qzs7QUU3dUhBO0VBQXNCLGdCQUFlO0FGaXZIckM7O0FFaHZIQTtFQUF1QixnQkFBZTtBRm92SHRDOztBRW52SEE7RUFBdUIsZ0JBQWU7QUZ1dkh0Qzs7QUV0dkhBO0VBQXdCLGdCQUFlO0FGMHZIdkM7O0FFenZIQTtFQUFxQixnQkFBZTtBRjZ2SHBDOztBRTV2SEE7RUFBc0IsZ0JBQWU7QUZnd0hyQzs7QUUvdkhBO0VBQXNCLGdCQUFlO0FGbXdIckM7O0FFbHdIQTtFQUFzQixnQkFBZTtBRnN3SHJDOztBRXJ3SEE7RUFBbUIsZ0JBQWU7QUZ5d0hsQzs7QUV4d0hBO0VBQXdCLGdCQUFlO0FGNHdIdkM7O0FFM3dIQTtFQUF5QixnQkFBZTtBRit3SHhDOztBRTl3SEE7RUFBc0IsZ0JBQWU7QUZreEhyQzs7QUVqeEhBO0VBQXdCLGdCQUFlO0FGcXhIdkM7O0FFcHhIQTtFQUFxQixnQkFBZTtBRnd4SHBDOztBRXZ4SEE7RUFBc0IsZ0JBQWU7QUYyeEhyQzs7QUUxeEhBO0VBQW9CLGdCQUFlO0FGOHhIbkM7O0FFN3hIQTtFQUFvQixnQkFBZTtBRml5SG5DOztBRWh5SEE7RUFBcUIsZ0JBQWU7QUZveUhwQzs7QUVueUhBO0VBQW9CLGdCQUFlO0FGdXlIbkM7O0FFdHlIQTtFQUFxQixnQkFBZTtBRjB5SHBDOztBRXp5SEE7RUFBZ0IsZ0JBQWU7QUY2eUgvQjs7QUU1eUhBO0VBQW1CLGdCQUFlO0FGZ3pIbEM7O0FFL3lIQTtFQUFxQixnQkFBZTtBRm16SHBDOztBRWx6SEE7RUFBb0IsZ0JBQWU7QUZzekhuQzs7QUVyekhBO0VBQXFCLGdCQUFlO0FGeXpIcEM7O0FFeHpIQTtFQUF3QixnQkFBZTtBRjR6SHZDOztBRTN6SEE7RUFBdUIsZ0JBQWU7QUYrekh0Qzs7QUU5ekhBO0VBQXFCLGdCQUFlO0FGazBIcEM7O0FFajBIQTtFQUFpQixnQkFBZTtBRnEwSGhDOztBRXAwSEE7RUFBcUIsZ0JBQWU7QUZ3MEhwQzs7QUV2MEhBO0VBQXdCLGdCQUFlO0FGMjBIdkM7O0FFMTBIQTtFQUFzQixnQkFBZTtBRjgwSHJDOztBRTcwSEE7RUFBb0IsZ0JBQWU7QUZpMUhuQzs7QUVoMUhBO0VBQXlCLGdCQUFlO0FGbzFIeEM7O0FFbjFIQTtFQUEwQixnQkFBZTtBRnUxSHpDOztBRXQxSEE7RUFBdUIsZ0JBQWU7QUYwMUh0Qzs7QUV6MUhBO0VBQW1CLGdCQUFlO0FGNjFIbEM7O0FFNTFIQTtFQUFvQixnQkFBZTtBRmcySG5DOztBRS8xSEE7RUFBc0IsZ0JBQWU7QUZtMkhyQzs7QUVsMkhBO0VBQXVCLGdCQUFlO0FGczJIdEM7O0FFcjJIQTtFQUF1QixnQkFBZTtBRnkySHRDOztBRXgySEE7RUFBMkIsZ0JBQWU7QUY0MkgxQzs7QUUzMkhBO0VBQTBCLGdCQUFlO0FGKzJIekM7O0FFOTJIQTtFQUE2QixnQkFBZTtBRmszSDVDOztBRWozSEE7RUFBNkIsZ0JBQWU7QUZxM0g1Qzs7QUVwM0hBO0VBQTZCLGdCQUFlO0FGdzNINUM7O0FFdjNIQTtFQUE2QixnQkFBZTtBRjIzSDVDOztBRTEzSEE7RUFBOEIsZ0JBQWU7QUY4M0g3Qzs7QUU3M0hBO0VBQTJCLGdCQUFlO0FGaTRIMUM7O0FFaDRIQTtFQUE0QixnQkFBZTtBRm80SDNDOztBRW40SEE7RUFBNEIsZ0JBQWU7QUZ1NEgzQzs7QUV0NEhBO0VBQTRCLGdCQUFlO0FGMDRIM0M7O0FFejRIQTtFQUE0QixnQkFBZTtBRjY0SDNDOztBRTU0SEE7RUFBa0IsZ0JBQWU7QUZnNUhqQzs7QUUvNEhBO0VBQWtCLGdCQUFlO0FGbTVIakM7O0FFbDVIQTtFQUF3QixnQkFBZTtBRnM1SHZDOztBRXI1SEE7RUFBdUIsZ0JBQWU7QUZ5NUh0Qzs7QUV4NUhBO0VBQXlCLGdCQUFlO0FGNDVIeEM7O0FFMzVIQTtFQUF3QixnQkFBZTtBRis1SHZDOztBRTk1SEE7RUFBeUIsZ0JBQWU7QUZrNkh4Qzs7QUVqNkhBO0VBQXdCLGdCQUFlO0FGcTZIdkM7O0FFcDZIQTtFQUE0QixnQkFBZTtBRnc2SDNDOztBRXY2SEE7RUFBOEIsZ0JBQWU7QUYyNkg3Qzs7QUUxNkhBO0VBQTRCLGdCQUFlO0FGODZIM0M7O0FFNzZIQTtFQUE0QixnQkFBZTtBRmk3SDNDOztBRWg3SEE7RUFBbUIsZ0JBQWU7QUZvN0hsQzs7QUVuN0hBO0VBQW1CLGdCQUFlO0FGdTdIbEM7O0FFdDdIQTtFQUF3QixnQkFBZTtBRjA3SHZDOztBRXo3SEE7RUFBcUMsZ0JBQWU7QUY2N0hwRDs7QUU1N0hBO0VBQXlCLGdCQUFlO0FGZzhIeEM7O0FFLzdIQTtFQUF1QixnQkFBZTtBRm04SHRDOztBRWw4SEE7RUFBbUMsZ0JBQWU7QUZzOEhsRDs7QUVyOEhBO0VBQTBCLGdCQUFlO0FGeThIekM7O0FFeDhIQTtFQUFtQixnQkFBZTtBRjQ4SGxDOztBRTM4SEE7RUFBbUIsZ0JBQWU7QUYrOEhsQzs7QUU5OEhBO0VBQXFCLGdCQUFlO0FGazlIcEM7O0FFajlIQTtFQUFtQixnQkFBZTtBRnE5SGxDOztBRXA5SEE7RUFBdUIsZ0JBQWU7QUZ3OUh0Qzs7QUV2OUhBO0VBQW9CLGdCQUFlO0FGMjlIbkM7O0FFMTlIQTtFQUFxQixnQkFBZTtBRjg5SHBDOztBRTc5SEE7RUFBc0IsZ0JBQWU7QUZpK0hyQzs7QUVoK0hBO0VBQXFCLGdCQUFlO0FGbytIcEM7O0FFbitIQTtFQUFzQixnQkFBZTtBRnUrSHJDOztBRXQrSEE7RUFBc0IsZ0JBQWU7QUYwK0hyQzs7QUV6K0hBO0VBQWlDLGdCQUFlO0FGNitIaEQ7O0FFNStIQTtFQUFzQixnQkFBZTtBRmcvSHJDOztBRS8rSEE7RUFBc0IsZ0JBQWU7QUZtL0hyQzs7QUVsL0hBO0VBQXFCLGdCQUFlO0FGcy9IcEM7O0FFci9IQTtFQUFzQixnQkFBZTtBRnkvSHJDOztBRXgvSEE7RUFBcUIsZ0JBQWU7QUY0L0hwQzs7QUUzL0hBO0VBQXNCLGdCQUFlO0FGKy9IckM7O0FFOS9IQTtFQUFxQixnQkFBZTtBRmtnSXBDOztBRWpnSUE7RUFBMEIsZ0JBQWU7QUZxZ0l6Qzs7QUVwZ0lBO0VBQTJCLGdCQUFlO0FGd2dJMUM7O0FFdmdJQTtFQUFxQixnQkFBZTtBRjJnSXBDOztBRTFnSUE7RUFBMEIsZ0JBQWU7QUY4Z0l6Qzs7QUU3Z0lBO0VBQTJCLGdCQUFlO0FGaWhJMUM7O0FFaGhJQTtFQUFzQixnQkFBZTtBRm9oSXJDOztBRW5oSUE7RUFBdUIsZ0JBQWU7QUZ1aEl0Qzs7QUV0aElBO0VBQWtCLGdCQUFlO0FGMGhJakM7O0FFemhJQTtFQUFtQixnQkFBZTtBRjZoSWxDOztBRTVoSUE7RUFBdUIsZ0JBQWU7QUZnaUl0Qzs7QUUvaElBO0VBQXdCLGdCQUFlO0FGbWlJdkM7O0FFbGlJQTtFQUF5QixnQkFBZTtBRnNpSXhDOztBRXJpSUE7RUFBd0IsZ0JBQWU7QUZ5aUl2Qzs7QUV4aUlBO0VBQXVCLGdCQUFlO0FGNGlJdEM7O0FFM2lJQTtFQUF3QixnQkFBZTtBRitpSXZDOztBRTlpSUE7RUFBb0IsZ0JBQWU7QUZrakluQzs7QUVqaklBO0VBQW9CLGdCQUFlO0FGcWpJbkM7O0FFcGpJQTtFQUFzQixnQkFBZTtBRndqSXJDOztBRXZqSUE7RUFBMkIsZ0JBQWU7QUYyakkxQzs7QUUxaklBO0VBQW1CLGdCQUFlO0FGOGpJbEM7O0FFN2pJQTtFQUFpQixnQkFBZTtBRmlrSWhDOztBRWhrSUE7RUFBb0IsZ0JBQWU7QUZva0luQzs7QUVua0lBO0VBQXlCLGdCQUFlO0FGdWtJeEM7O0FFdGtJQTtFQUEwQixnQkFBZTtBRjBrSXpDOztBRXprSUE7RUFBMEIsZ0JBQWU7QUY2a0l6Qzs7QUU1a0lBO0VBQTJCLGdCQUFlO0FGZ2xJMUM7O0FFL2tJQTtFQUF3QixnQkFBZTtBRm1sSXZDOztBRWxsSUE7RUFBeUIsZ0JBQWU7QUZzbEl4Qzs7QUVybElBO0VBQXlCLGdCQUFlO0FGeWxJeEM7O0FFeGxJQTtFQUFxQixnQkFBZTtBRjRsSXBDOztBRTNsSUE7RUFBc0IsZ0JBQWU7QUYrbElyQzs7QUU5bElBO0VBQXNCLGdCQUFlO0FGa21JckM7O0FFam1JQTtFQUFzQixnQkFBZTtBRnFtSXJDOztBRXBtSUE7RUFBc0IsZ0JBQWU7QUZ3bUlyQzs7QUV2bUlBO0VBQXNCLGdCQUFlO0FGMm1JckM7O0FFMW1JQTtFQUF1QixnQkFBZTtBRjhtSXRDOztBRTdtSUE7RUFBdUIsZ0JBQWU7QUZpbkl0Qzs7QUVobklBO0VBQXdCLGdCQUFlO0FGb25JdkM7O0FFbm5JQTtFQUFxQixnQkFBZTtBRnVuSXBDOztBRXRuSUE7RUFBb0IsZ0JBQWU7QUYwbkluQzs7QUV6bklBO0VBQXNCLGdCQUFlO0FGNm5JckM7O0FFNW5JQTtFQUFxQixnQkFBZTtBRmdvSXBDOztBRS9uSUE7RUFBc0IsZ0JBQWU7QUZtb0lyQzs7QUVsb0lBO0VBQXFCLGdCQUFlO0FGc29JcEM7O0FFcm9JQTtFQUFzQixnQkFBZTtBRnlvSXJDOztBRXhvSUE7RUFBcUIsZ0JBQWU7QUY0b0lwQzs7QUUzb0lBO0VBQXNCLGdCQUFlO0FGK29JckM7O0FFOW9JQTtFQUFxQixnQkFBZTtBRmtwSXBDOztBRWpwSUE7RUFBaUIsZ0JBQWU7QUZxcEloQzs7QUVwcElBO0VBQWtCLGdCQUFlO0FGd3BJakM7O0FFdnBJQTtFQUFtQixnQkFBZTtBRjJwSWxDOztBRTFwSUE7RUFBbUIsZ0JBQWU7QUY4cElsQzs7QUU3cElBO0VBQXNCLGdCQUFlO0FGaXFJckM7O0FFaHFJQTtFQUFtQixnQkFBZTtBRm9xSWxDOztBRW5xSUE7RUFBdUIsZ0JBQWU7QUZ1cUl0Qzs7QUV0cUlBO0VBQWtCLGdCQUFlO0FGMHFJakM7O0FFenFJQTtFQUFvQixnQkFBZTtBRjZxSW5DOztBRTVxSUE7RUFBcUIsZ0JBQWU7QUZncklwQzs7QUUvcUlBO0VBQXFCLGdCQUFlO0FGbXJJcEM7O0FFbHJJQTtFQUF1QixnQkFBZTtBRnNySXRDOztBRXJySUE7RUFBd0IsZ0JBQWU7QUZ5ckl2Qzs7QUV4cklBO0VBQXdCLGdCQUFlO0FGNHJJdkM7O0FFM3JJQTtFQUF3QixnQkFBZTtBRitySXZDOztBRTlySUE7RUFBaUIsZ0JBQWU7QUZrc0loQzs7QUVqc0lBO0VBQWtCLGdCQUFlO0FGcXNJakM7O0FFcHNJQTtFQUFrQixnQkFBZTtBRndzSWpDOztBRXZzSUE7RUFBa0IsZ0JBQWU7QUYyc0lqQzs7QUUxc0lBO0VBQWtCLGdCQUFlO0FGOHNJakM7O0FFN3NJQTtFQUFtQixnQkFBZTtBRml0SWxDOztBRWh0SUE7RUFBa0IsZ0JBQWU7QUZvdElqQzs7QUVudElBO0VBQWtCLGdCQUFlO0FGdXRJakM7O0FFdHRJQTtFQUFvQixnQkFBZTtBRjB0SW5DOztBRXp0SUE7RUFBMkIsZ0JBQWU7QUY2dEkxQzs7QUU1dElBO0VBQXdCLGdCQUFlO0FGZ3VJdkM7O0FFL3RJQTtFQUF5QixnQkFBZTtBRm11SXhDOztBRWx1SUE7RUFBb0IsZ0JBQWU7QUZzdUluQzs7QUVydUlBO0VBQXFCLGdCQUFlO0FGeXVJcEM7O0FFeHVJQTtFQUFrQixnQkFBZTtBRjR1SWpDOztBRTN1SUE7RUFBMEIsZ0JBQWU7QUYrdUl6Qzs7QUU5dUlBO0VBQTBCLGdCQUFlO0FGa3ZJekM7O0FFanZJQTtFQUE0QixnQkFBZTtBRnF2STNDOztBRXB2SUE7RUFBdUIsZ0JBQWU7QUZ3dkl0Qzs7QUV2dklBO0VBQXdCLGdCQUFlO0FGMnZJdkM7O0FFMXZJQTtFQUF3QixnQkFBZTtBRjh2SXZDOztBRTd2SUE7RUFBd0IsZ0JBQWU7QUZpd0l2Qzs7QUVod0lBO0VBQXdCLGdCQUFlO0FGb3dJdkM7O0FFbndJQTtFQUF3QixnQkFBZTtBRnV3SXZDOztBRXR3SUE7RUFBd0IsZ0JBQWU7QUYwd0l2Qzs7QUV6d0lBO0VBQXdCLGdCQUFlO0FGNndJdkM7O0FFNXdJQTtFQUF3QixnQkFBZTtBRmd4SXZDOztBRS93SUE7RUFBd0IsZ0JBQWU7QUZteEl2Qzs7QUVseElBO0VBQXlCLGdCQUFlO0FGc3hJeEM7O0FFcnhJQTtFQUF5QixnQkFBZTtBRnl4SXhDOztBRXh4SUE7RUFBeUIsZ0JBQWU7QUY0eEl4Qzs7QUUzeElBO0VBQW1CLGdCQUFlO0FGK3hJbEM7O0FFOXhJQTtFQUEwQixnQkFBZTtBRmt5SXpDOztBRWp5SUE7RUFBMkIsZ0JBQWU7QUZxeUkxQzs7QUVweUlBO0VBQTJCLGdCQUFlO0FGd3lJMUM7O0FFdnlJQTtFQUE0QixnQkFBZTtBRjJ5STNDOztBRTF5SUE7RUFBdUIsZ0JBQWU7QUY4eUl0Qzs7QUU3eUlBO0VBQXlCLGdCQUFlO0FGaXpJeEM7O0FFaHpJQTtFQUFvQixnQkFBZTtBRm96SW5DOztBRW56SUE7RUFBb0IsZ0JBQWU7QUZ1ekluQzs7QUV0eklBO0VBQW9CLGdCQUFlO0FGMHpJbkM7O0FFenpJQTtFQUFxQixnQkFBZTtBRjZ6SXBDOztBRTV6SUE7RUFBcUIsZ0JBQWU7QUZnMElwQzs7QUUveklBO0VBQW9CLGdCQUFlO0FGbTBJbkM7O0FFbDBJQTtFQUFtQixnQkFBZTtBRnMwSWxDOztBRXIwSUE7RUFBd0IsZ0JBQWU7QUZ5MEl2Qzs7QUV4MElBO0VBQW1CLGdCQUFlO0FGNDBJbEM7O0FFMzBJQTtFQUFvQixnQkFBZTtBRiswSW5DOztBRTkwSUE7RUFBeUIsZ0JBQWU7QUZrMUl4Qzs7QUVqMUlBO0VBQTBCLGdCQUFlO0FGcTFJekM7O0FFcDFJQTtFQUF5QixnQkFBZTtBRncxSXhDOztBRXYxSUE7RUFBbUIsZ0JBQWU7QUYyMUlsQzs7QUUxMUlBO0VBQXFCLGdCQUFlO0FGODFJcEM7O0FFNzFJQTtFQUFxQixnQkFBZTtBRmkySXBDOztBRWgySUE7RUFBcUIsZ0JBQWU7QUZvMklwQzs7QUVuMklBO0VBQXFCLGdCQUFlO0FGdTJJcEM7O0FFdDJJQTtFQUFrQixnQkFBZTtBRjAySWpDOztBRXoySUE7RUFBa0IsZ0JBQWU7QUY2MklqQzs7QUU1MklBO0VBQXNCLGdCQUFlO0FGZzNJckM7O0FFLzJJQTtFQUFrQixnQkFBZTtBRm0zSWpDOztBRWwzSUE7RUFBb0IsZ0JBQWU7QUZzM0luQzs7QUVyM0lBO0VBQWlCLGdCQUFlO0FGeTNJaEM7O0FFeDNJQTtFQUF1QixnQkFBZTtBRjQzSXRDOztBRTMzSUE7RUFBb0IsZ0JBQWU7QUYrM0luQzs7QUU5M0lBO0VBQW9CLGdCQUFlO0FGazRJbkM7O0FFajRJQTtFQUF3QixnQkFBZTtBRnE0SXZDOztBRXA0SUE7RUFBd0IsZ0JBQWU7QUZ3NEl2Qzs7QUV2NElBO0VBQXFCLGdCQUFlO0FGMjRJcEM7O0FFMTRJQTtFQUFxQixnQkFBZTtBRjg0SXBDOztBRTc0SUE7RUFBa0IsZ0JBQWU7QUZpNUlqQzs7QUVoNUlBO0VBQW1CLGdCQUFlO0FGbzVJbEM7O0FFbjVJQTtFQUFpQixnQkFBZTtBRnU1SWhDOztBRXQ1SUE7RUFBa0IsZ0JBQWU7QUYwNUlqQzs7QUV6NUlBO0VBQW1CLGdCQUFlO0FGNjVJbEM7O0FFNTVJQTtFQUFpQixnQkFBZTtBRmc2SWhDOztBRS81SUE7RUFBa0IsZ0JBQWU7QUZtNklqQzs7QUVsNklBO0VBQXVCLGdCQUFlO0FGczZJdEM7O0FFcjZJQTtFQUF3QixnQkFBZTtBRnk2SXZDOztBRXg2SUE7RUFBdUIsZ0JBQWU7QUY0Nkl0Qzs7QUUzNklBO0VBQXVCLGdCQUFlO0FGKzZJdEM7O0FFOTZJQTtFQUF1QixnQkFBZTtBRms3SXRDOztBRWo3SUE7RUFBd0IsZ0JBQWU7QUZxN0l2Qzs7QUVwN0lBO0VBQWlCLGdCQUFlO0FGdzdJaEM7O0FFdjdJQTtFQUE0QixnQkFBZTtBRjI3STNDOztBRTE3SUE7RUFBa0IsZ0JBQWU7QUY4N0lqQzs7QUU3N0lBO0VBQWlCLGdCQUFlO0FGaThJaEM7O0FFaDhJQTtFQUFpQixnQkFBZTtBRm84SWhDOztBRW44SUE7RUFBbUIsZ0JBQWU7QUZ1OElsQzs7QUV0OElBO0VBQWtCLGdCQUFlO0FGMDhJakM7O0FFejhJQTtFQUFrQixnQkFBZTtBRjY4SWpDOztBRTU4SUE7RUFBbUIsZ0JBQWU7QUZnOUlsQzs7QUUvOElBO0VBQW9CLGdCQUFlO0FGbTlJbkM7O0FFbDlJQTtFQUFrQixnQkFBZTtBRnM5SWpDOztBRXI5SUE7RUFBa0IsZ0JBQWU7QUZ5OUlqQzs7QUV4OUlBO0VBQXFCLGdCQUFlO0FGNDlJcEM7O0FFMzlJQTtFQUFrQixnQkFBZTtBRis5SWpDOztBRTk5SUE7RUFBbUIsZ0JBQWU7QUZrK0lsQzs7QUVqK0lBO0VBQW1CLGdCQUFlO0FGcStJbEM7O0FFcCtJQTtFQUFtQixnQkFBZTtBRncrSWxDOztBRXYrSUE7RUFBcUIsZ0JBQWU7QUYyK0lwQzs7QUUxK0lBO0VBQXNCLGdCQUFlO0FGOCtJckM7O0FFNytJQTtFQUFxQixnQkFBZTtBRmkvSXBDOztBRWgvSUE7RUFBb0IsZ0JBQWU7QUZvL0luQzs7QUVuL0lBO0VBQXFCLGdCQUFlO0FGdS9JcEM7O0FFdC9JQTtFQUFxQixnQkFBZTtBRjAvSXBDOztBRXovSUE7RUFBcUIsZ0JBQWU7QUY2L0lwQzs7QUU1L0lBO0VBQXlCLGdCQUFlO0FGZ2dKeEM7O0FFLy9JQTtFQUFtQixnQkFBZTtBRm1nSmxDOztBRWxnSkE7RUFBMkIsZ0JBQWU7QUZzZ0oxQzs7QUVyZ0pBO0VBQTRCLGdCQUFlO0FGeWdKM0M7O0FFeGdKQTtFQUFzQixnQkFBZTtBRjRnSnJDOztBRTNnSkE7RUFBb0IsZ0JBQWU7QUYrZ0puQzs7QUU5Z0pBO0VBQXFCLGdCQUFlO0FGa2hKcEM7O0FFamhKQTtFQUEwQixnQkFBZTtBRnFoSnpDOztBRXBoSkE7RUFBMkIsZ0JBQWU7QUZ3aEoxQzs7QUV2aEpBO0VBQXFCLGdCQUFlO0FGMmhKcEM7O0FFMWhKQTtFQUFvQixnQkFBZTtBRjhoSm5DOztBRTdoSkE7RUFBb0IsZ0JBQWU7QUZpaUpuQzs7QUVoaUpBO0VBQW9CLGdCQUFlO0FGb2lKbkM7O0FFbmlKQTtFQUFvQixnQkFBZTtBRnVpSm5DOztBRXRpSkE7RUFBb0IsZ0JBQWU7QUYwaUpuQzs7QUV6aUpBO0VBQXNCLGdCQUFlO0FGNmlKckM7O0FFNWlKQTtFQUF3QixnQkFBZTtBRmdqSnZDOztBRS9pSkE7RUFBdUIsZ0JBQWU7QUZtakp0Qzs7QUVsakpBO0VBQXdCLGdCQUFlO0FGc2pKdkM7O0FFcmpKQTtFQUF3QixnQkFBZTtBRnlqSnZDOztBRXhqSkE7RUFBd0IsZ0JBQWU7QUY0akp2Qzs7QUUzakpBO0VBQXdCLGdCQUFlO0FGK2pKdkM7O0FFOWpKQTtFQUF3QixnQkFBZTtBRmtrSnZDOztBRWprSkE7RUFBc0IsZ0JBQWU7QUZxa0pyQzs7QUVwa0pBO0VBQTBCLGdCQUFlO0FGd2tKekM7O0FFdmtKQTtFQUEyQixnQkFBZTtBRjJrSjFDOztBRTFrSkE7RUFBa0IsZ0JBQWU7QUY4a0pqQzs7QUU3a0pBO0VBQW1CLGdCQUFlO0FGaWxKbEM7O0FFaGxKQTtFQUFrQixnQkFBZTtBRm9sSmpDOztBRW5sSkE7RUFBbUIsZ0JBQWU7QUZ1bEpsQzs7QUV0bEpBO0VBQWtCLGdCQUFlO0FGMGxKakM7O0FFemxKQTtFQUFtQixnQkFBZTtBRjZsSmxDOztBRTVsSkE7RUFBbUIsZ0JBQWU7QUZnbUpsQzs7QUUvbEpBO0VBQW1CLGdCQUFlO0FGbW1KbEM7O0FFbG1KQTtFQUFvQixnQkFBZTtBRnNtSm5DOztBRXJtSkE7RUFBbUIsZ0JBQWU7QUZ5bUpsQzs7QUV4bUpBO0VBQW1CLGdCQUFlO0FGNG1KbEM7O0FFM21KQTtFQUFtQixnQkFBZTtBRittSmxDOztBRTltSkE7RUFBbUIsZ0JBQWU7QUZrbkpsQzs7QUVqbkpBO0VBQW1CLGdCQUFlO0FGcW5KbEM7O0FFcG5KQTtFQUFpQixnQkFBZTtBRnduSmhDOztBRXZuSkE7RUFBa0IsZ0JBQWU7QUYybkpqQzs7QUUxbkpBO0VBQWtCLGdCQUFlO0FGOG5KakM7O0FFN25KQTtFQUFrQixnQkFBZTtBRmlvSmpDOztBRWhvSkE7RUFBMEIsZ0JBQWU7QUZvb0p6Qzs7QUVub0pBO0VBQW1CLGdCQUFlO0FGdW9KbEM7O0FFdG9KQTtFQUFtQixnQkFBZTtBRjBvSmxDOztBRXpvSkE7RUFBbUIsZ0JBQWU7QUY2b0psQzs7QUU1b0pBO0VBQW1CLGdCQUFlO0FGZ3BKbEM7O0FFL29KQTtFQUFvQixnQkFBZTtBRm1wSm5DOztBRWxwSkE7RUFBbUIsZ0JBQWU7QUZzcEpsQzs7QUVycEpBO0VBQW1CLGdCQUFlO0FGeXBKbEM7O0FFeHBKQTtFQUFtQixnQkFBZTtBRjRwSmxDOztBRTNwSkE7RUFBb0IsZ0JBQWU7QUYrcEpuQzs7QUU5cEpBO0VBQW1CLGdCQUFlO0FGa3FKbEM7O0FFanFKQTtFQUE0QixnQkFBZTtBRnFxSjNDOztBRXBxSkE7RUFBMEIsZ0JBQWU7QUZ3cUp6Qzs7QUV2cUpBO0VBQXlCLGdCQUFlO0FGMnFKeEM7O0FFMXFKQTtFQUFvQixnQkFBZTtBRjhxSm5DOztBRTdxSkE7RUFBNkIsZ0JBQWU7QUZpcko1Qzs7QUVockpBO0VBQTJCLGdCQUFlO0FGb3JKMUM7O0FFbnJKQTtFQUEwQixnQkFBZTtBRnVySnpDOztBRXRySkE7RUFBb0IsZ0JBQWU7QUYwckpuQzs7QUV6ckpBO0VBQXVCLGdCQUFlO0FGNnJKdEM7O0FFNXJKQTtFQUFxQixnQkFBZTtBRmdzSnBDOztBRS9ySkE7RUFBdUIsZ0JBQWU7QUZtc0p0Qzs7QUVsc0pBO0VBQXFCLGdCQUFlO0FGc3NKcEM7O0FFcnNKQTtFQUF3QixnQkFBZTtBRnlzSnZDOztBRXhzSkE7RUFBc0IsZ0JBQWU7QUY0c0pyQzs7QUUzc0pBO0VBQW9CLGdCQUFlO0FGK3NKbkM7O0FFOXNKQTtFQUFxQixnQkFBZTtBRmt0SnBDOztBRWp0SkE7RUFBbUIsZ0JBQWU7QUZxdEpsQzs7QUVwdEpBO0VBQWtCLGdCQUFlO0FGd3RKakM7O0FFdnRKQTtFQUFvQixnQkFBZTtBRjJ0Sm5DOztBRTF0SkE7RUFBbUIsZ0JBQWU7QUY4dEpsQzs7QUU3dEpBO0VBQXFCLGdCQUFlO0FGaXVKcEM7O0FFaHVKQTtFQUFvQixnQkFBZTtBRm91Sm5DOztBRW51SkE7RUFBbUIsZ0JBQWU7QUZ1dUpsQzs7QUV0dUpBO0VBQW1CLGdCQUFlO0FGMHVKbEM7O0FFenVKQTtFQUFtQixnQkFBZTtBRjZ1SmxDOztBRTV1SkE7RUFBbUIsZ0JBQWU7QUZndkpsQzs7QUUvdUpBO0VBQXdCLGdCQUFlO0FGbXZKdkM7O0FFbHZKQTtFQUF5QixnQkFBZTtBRnN2SnhDOztBRXJ2SkE7RUFBaUIsZ0JBQWU7QUZ5dkpoQzs7QUV4dkpBO0VBQXNCLGdCQUFlO0FGNHZKckM7O0FFM3ZKQTtFQUF1QixnQkFBZTtBRit2SnRDOztBRTl2SkE7RUFBeUIsZ0JBQWU7QUZrd0p4Qzs7QUVqd0pBO0VBQWtCLGdCQUFlO0FGcXdKakM7O0FFcHdKQTtFQUEwQixnQkFBZTtBRnd3SnpDOztBRXZ3SkE7RUFBa0IsZ0JBQWU7QUYyd0pqQzs7QUUxd0pBO0VBQXVCLGdCQUFlO0FGOHdKdEM7O0FFN3dKQTtFQUF1QixnQkFBZTtBRml4SnRDOztBRWh4SkE7RUFBdUIsZ0JBQWU7QUZveEp0Qzs7QUVueEpBO0VBQXVCLGdCQUFlO0FGdXhKdEM7O0FFdHhKQTtFQUF3QixnQkFBZTtBRjB4SnZDOztBRXp4SkE7RUFBdUIsZ0JBQWU7QUY2eEp0Qzs7QUU1eEpBO0VBQXVCLGdCQUFlO0FGZ3lKdEM7O0FFL3hKQTtFQUEyQixnQkFBZTtBRm15SjFDOztBRWx5SkE7RUFBaUIsZ0JBQWU7QUZzeUpoQzs7QUVyeUpBO0VBQXNCLGdCQUFlO0FGeXlKckM7O0FFeHlKQTtFQUFrQixnQkFBZTtBRjR5SmpDOztBRTN5SkE7RUFBc0IsZ0JBQWU7QUYreUpyQzs7QUU5eUpBO0VBQWtCLGdCQUFlO0FGa3pKakM7O0FFanpKQTtFQUF1QixnQkFBZTtBRnF6SnRDOztBRXB6SkE7RUFBbUIsZ0JBQWU7QUZ3ekpsQzs7QUV2ekpBO0VBQXlCLGdCQUFlO0FGMnpKeEM7O0FFMXpKQTtFQUF1QixnQkFBZTtBRjh6SnRDOztBRTd6SkE7RUFBd0IsZ0JBQWU7QUZpMEp2Qzs7QUVoMEpBO0VBQW9CLGdCQUFlO0FGbzBKbkM7O0FFbjBKQTtFQUFvQixnQkFBZTtBRnUwSm5DOztBRXQwSkE7RUFBMkIsZ0JBQWU7QUYwMEoxQzs7QUV6MEpBO0VBQXdCLGdCQUFlO0FGNjBKdkM7O0FFNTBKQTtFQUEwQixnQkFBZTtBRmcxSnpDOztBRS8wSkE7RUFBd0IsZ0JBQWU7QUZtMUp2Qzs7QUVsMUpBO0VBQTBCLGdCQUFlO0FGczFKekM7O0FFcjFKQTtFQUFvQixnQkFBZTtBRnkxSm5DOztBRXgxSkE7RUFBaUIsZ0JBQWU7QUY0MUpoQzs7QUUzMUpBO0VBQW1CLGdCQUFlO0FGKzFKbEM7O0FFOTFKQTtFQUF1QixnQkFBZTtBRmsySnRDOztBRWoySkE7RUFBc0IsZ0JBQWU7QUZxMkpyQzs7QUVwMkpBO0VBQW9CLGdCQUFlO0FGdzJKbkM7O0FFdjJKQTtFQUFxQixnQkFBZTtBRjIySnBDOztBRTEySkE7RUFBb0IsZ0JBQWU7QUY4MkpuQzs7QUU3MkpBO0VBQXFCLGdCQUFlO0FGaTNKcEM7O0FFaDNKQTtFQUFzQixnQkFBZTtBRm8zSnJDOztBRW4zSkE7RUFBeUIsZ0JBQWU7QUZ1M0p4Qzs7QUV0M0pBO0VBQXdCLGdCQUFlO0FGMDNKdkM7O0FFejNKQTtFQUF3QixnQkFBZTtBRjYzSnZDOztBRTUzSkE7RUFBcUIsZ0JBQWU7QUZnNEpwQzs7QUUvM0pBO0VBQXNCLGdCQUFlO0FGbTRKckM7O0FFbDRKQTtFQUE2QixnQkFBZTtBRnM0SjVDOztBRXI0SkE7RUFBdUIsZ0JBQWU7QUZ5NEp0Qzs7QUV4NEpBO0VBQXdCLGdCQUFlO0FGNDRKdkM7O0FFMzRKQTtFQUFtQixnQkFBZTtBRis0SmxDOztBRTk0SkE7RUFBd0IsZ0JBQWU7QUZrNUp2Qzs7QUVqNUpBO0VBQXdCLGdCQUFlO0FGcTVKdkM7O0FFcDVKQTtFQUF5QixnQkFBZTtBRnc1SnhDOztBRXY1SkE7RUFBa0IsZ0JBQWU7QUYyNUpqQzs7QUUxNUpBO0VBQWtCLGdCQUFlO0FGODVKakM7O0FFNzVKQTtFQUF5QixnQkFBZTtBRmk2SnhDOztBRWg2SkE7RUFBd0IsZ0JBQWU7QUZvNkp2Qzs7QUVuNkpBO0VBQXlCLGdCQUFlO0FGdTZKeEM7O0FFdDZKQTtFQUF3QixnQkFBZTtBRjA2SnZDOztBRXo2SkE7RUFBMkIsZ0JBQWU7QUY2NkoxQzs7QUU1NkpBO0VBQXdCLGdCQUFlO0FGZzdKdkM7O0FFLzZKQTtFQUFzQixnQkFBZTtBRm03SnJDOztBRWw3SkE7RUFBMEIsZ0JBQWU7QUZzN0p6Qzs7QUVyN0pBO0VBQXlCLGdCQUFlO0FGeTdKeEM7O0FFeDdKQTtFQUF3QixnQkFBZTtBRjQ3SnZDOztBRTM3SkE7RUFBb0IsZ0JBQWU7QUYrN0puQzs7QUU5N0pBO0VBQXlCLGdCQUFlO0FGazhKeEM7O0FFajhKQTtFQUF3QixnQkFBZTtBRnE4SnZDOztBRXA4SkE7RUFBa0IsZ0JBQWU7QUZ3OEpqQzs7QUV2OEpBO0VBQWtCLGdCQUFlO0FGMjhKakM7O0FFMThKQTtFQUFxQixnQkFBZTtBRjg4SnBDOztBRTc4SkE7RUFBdUIsZ0JBQWU7QUZpOUp0Qzs7QUVoOUpBO0VBQTJCLGdCQUFlO0FGbzlKMUM7O0FFbjlKQTtFQUF1QixnQkFBZTtBRnU5SnRDOztBRXQ5SkE7RUFBdUIsZ0JBQWU7QUYwOUp0Qzs7QUV6OUpBO0VBQW1CLGdCQUFlO0FGNjlKbEM7O0FFNTlKQTtFQUFvQixnQkFBZTtBRmcrSm5DOztBRS85SkE7RUFBMEIsZ0JBQWU7QUZtK0p6Qzs7QUVsK0pBO0VBQTJCLGdCQUFlO0FGcytKMUM7O0FFcitKQTtFQUE0QixnQkFBZTtBRnkrSjNDOztBRXgrSkE7RUFBcUIsZ0JBQWU7QUY0K0pwQzs7QUUzK0pBO0VBQTJCLGdCQUFlO0FGKytKMUM7O0FFOStKQTtFQUE0QixnQkFBZTtBRmsvSjNDOztBRWovSkE7RUFBa0IsZ0JBQWU7QUZxL0pqQzs7QUVwL0pBO0VBQW9CLGdCQUFlO0FGdy9KbkM7O0FFdi9KQTtFQUFvQixnQkFBZTtBRjIvSm5DOztBRTEvSkE7RUFBdUIsZ0JBQWU7QUY4L0p0Qzs7QUU3L0pBO0VBQXdCLGdCQUFlO0FGaWdLdkM7O0FFaGdLQTtFQUF3QixnQkFBZTtBRm9nS3ZDOztBRW5nS0E7RUFBd0IsZ0JBQWU7QUZ1Z0t2Qzs7QUV0Z0tBO0VBQXlCLGdCQUFlO0FGMGdLeEM7O0FFemdLQTtFQUEwQixnQkFBZTtBRjZnS3pDOztBRTVnS0E7RUFBbUIsZ0JBQWU7QUZnaEtsQzs7QUUvZ0tBO0VBQWtCLGdCQUFlO0FGbWhLakM7O0FFbGhLQTtFQUFvQixnQkFBZTtBRnNoS25DOztBRXJoS0E7RUFBbUIsZ0JBQWU7QUZ5aEtsQzs7QUV4aEtBO0VBQW9CLGdCQUFlO0FGNGhLbkM7O0FFM2hLQTtFQUFtQixnQkFBZTtBRitoS2xDOztBRTloS0E7RUFBa0IsZ0JBQWU7QUZraUtqQzs7QUVqaUtBO0VBQW1CLGdCQUFlO0FGcWlLbEM7O0FFcGlLQTtFQUFtQixnQkFBZTtBRndpS2xDOztBRXZpS0E7RUFBbUIsZ0JBQWU7QUYyaUtsQzs7QUUxaUtBO0VBQWtCLGdCQUFlO0FGOGlLakM7O0FFN2lLQTtFQUFzQixnQkFBZTtBRmlqS3JDOztBRWhqS0E7RUFBa0IsZ0JBQWU7QUZvaktqQzs7QUVuaktBO0VBQXNCLGdCQUFlO0FGdWpLckM7O0FFdGpLQTtFQUFzQixnQkFBZTtBRjBqS3JDOztBRXpqS0E7RUFBbUIsZ0JBQWU7QUY2aktsQzs7QUU1aktBO0VBQW9CLGdCQUFlO0FGZ2tLbkM7O0FFL2pLQTtFQUFtQixnQkFBZTtBRm1rS2xDOztBRWxrS0E7RUFBdUIsZ0JBQWU7QUZza0t0Qzs7QUVya0tBO0VBQXNCLGdCQUFlO0FGeWtLckM7O0FFeGtLQTtFQUFtQixnQkFBZTtBRjRrS2xDOztBRTNrS0E7RUFBa0IsZ0JBQWU7QUYra0tqQzs7QUU5a0tBO0VBQXVCLGdCQUFlO0FGa2xLdEM7O0FFamxLQTtFQUFtQixnQkFBZTtBRnFsS2xDOztBRXBsS0E7RUFBbUIsZ0JBQWU7QUZ3bEtsQzs7QUV2bEtBO0VBQXlCLGdCQUFlO0FGMmxLeEM7O0FFMWxLQTtFQUEyQixnQkFBZTtBRjhsSzFDOztBRTdsS0E7RUFBd0IsZ0JBQWU7QUZpbUt2Qzs7QUVobUtBO0VBQXlCLGdCQUFlO0FGb21LeEM7O0FFbm1LQTtFQUEwQixnQkFBZTtBRnVtS3pDOztBRXRtS0E7RUFBMkIsZ0JBQWU7QUYwbUsxQzs7QUV6bUtBO0VBQTBCLGdCQUFlO0FGNm1LekM7O0FFNW1LQTtFQUE2QixnQkFBZTtBRmduSzVDOztBRS9tS0E7RUFBNkIsZ0JBQWU7QUZtbks1Qzs7QUVsbktBO0VBQTBCLGdCQUFlO0FGc25LekM7O0FFcm5LQTtFQUFrQixnQkFBZTtBRnluS2pDOztBRXhuS0E7RUFBbUIsZ0JBQWU7QUY0bktsQzs7QUUzbktBO0VBQTZCLGdCQUFlO0FGK25LNUM7O0FFOW5LQTtFQUFzQixnQkFBZTtBRmtvS3JDOztBRWpvS0E7RUFBbUIsZ0JBQWU7QUZxb0tsQzs7QUVwb0tBO0VBQXFCLGdCQUFlO0FGd29LcEM7O0FFdm9LQTtFQUFrQixnQkFBZTtBRjJvS2pDOztBRTFvS0E7RUFBbUIsZ0JBQWU7QUY4b0tsQzs7QUU3b0tBO0VBQW1CLGdCQUFlO0FGaXBLbEM7O0FFaHBLQTtFQUFtQixnQkFBZTtBRm9wS2xDOztBRW5wS0E7RUFBdUIsZ0JBQWU7QUZ1cEt0Qzs7QUV0cEtBO0VBQTBCLGdCQUFlO0FGMHBLekM7O0FFenBLQTtFQUF5QixnQkFBZTtBRjZwS3hDOztBRTVwS0E7RUFBeUIsZ0JBQWU7QUZncUt4Qzs7QUUvcEtBO0VBQTRCLGdCQUFlO0FGbXFLM0M7O0FFbHFLQTtFQUF1QixnQkFBZTtBRnNxS3RDOztBRXJxS0E7RUFBNkIsZ0JBQWU7QUZ5cUs1Qzs7QUV4cUtBO0VBQTBCLGdCQUFlO0FGNHFLekM7O0FFM3FLQTtFQUErQixnQkFBZTtBRitxSzlDOztBRTlxS0E7RUFBeUIsZ0JBQWU7QUZrckt4Qzs7QUVqcktBO0VBQThCLGdCQUFlO0FGcXJLN0M7O0FFcHJLQTtFQUF5QixnQkFBZTtBRndyS3hDOztBRXZyS0E7RUFBNEIsZ0JBQWU7QUYyckszQzs7QUUxcktBO0VBQXVCLGdCQUFlO0FGOHJLdEM7O0FFN3JLQTtFQUE2QixnQkFBZTtBRmlzSzVDOztBRWhzS0E7RUFBMEIsZ0JBQWU7QUZvc0t6Qzs7QUVuc0tBO0VBQStCLGdCQUFlO0FGdXNLOUM7O0FFdHNLQTtFQUF5QixnQkFBZTtBRjBzS3hDOztBRXpzS0E7RUFBOEIsZ0JBQWU7QUY2c0s3Qzs7QUU1c0tBO0VBQXlCLGdCQUFlO0FGZ3RLeEM7O0FFL3NLQTtFQUF3QixnQkFBZTtBRm10S3ZDOztBRWx0S0E7RUFBMkIsZ0JBQWU7QUZzdEsxQzs7QUVydEtBO0VBQTBCLGdCQUFlO0FGeXRLekM7O0FFeHRLQTtFQUEwQixnQkFBZTtBRjR0S3pDOztBRTN0S0E7RUFBMkIsZ0JBQWU7QUYrdEsxQzs7QUU5dEtBO0VBQTJCLGdCQUFlO0FGa3VLMUM7O0FFanVLQTtFQUE0QixnQkFBZTtBRnF1SzNDOztBRXB1S0E7RUFBdUIsZ0JBQWU7QUZ3dUt0Qzs7QUV2dUtBO0VBQTZCLGdCQUFlO0FGMnVLNUM7O0FFMXVLQTtFQUEwQixnQkFBZTtBRjh1S3pDOztBRTd1S0E7RUFBK0IsZ0JBQWU7QUZpdks5Qzs7QUVodktBO0VBQXlCLGdCQUFlO0FGb3ZLeEM7O0FFbnZLQTtFQUE4QixnQkFBZTtBRnV2SzdDOztBRXR2S0E7RUFBeUIsZ0JBQWU7QUYwdkt4Qzs7QUV6dktBO0VBQXdCLGdCQUFlO0FGNnZLdkM7O0FFNXZLQTtFQUEyQixnQkFBZTtBRmd3SzFDOztBRS92S0E7RUFBMEIsZ0JBQWU7QUZtd0t6Qzs7QUVsd0tBO0VBQTBCLGdCQUFlO0FGc3dLekM7O0FFcndLQTtFQUF3QixnQkFBZTtBRnl3S3ZDOztBRXh3S0E7RUFBMkIsZ0JBQWU7QUY0d0sxQzs7QUUzd0tBO0VBQTBCLGdCQUFlO0FGK3dLekM7O0FFOXdLQTtFQUEwQixnQkFBZTtBRmt4S3pDOztBRWp4S0E7RUFBdUIsZ0JBQWU7QUZxeEt0Qzs7QUVweEtBO0VBQXdCLGdCQUFlO0FGd3hLdkM7O0FFdnhLQTtFQUF3QixnQkFBZTtBRjJ4S3ZDOztBRTF4S0E7RUFBeUIsZ0JBQWU7QUY4eEt4Qzs7QUU3eEtBO0VBQW9CLGdCQUFlO0FGaXlLbkM7O0FFaHlLQTtFQUFpQixnQkFBZTtBRm95S2hDOztBRW55S0E7RUFBb0IsZ0JBQWU7QUZ1eUtuQzs7QUV0eUtBO0VBQXVCLGdCQUFlO0FGMHlLdEM7O0FFenlLQTtFQUF3QixnQkFBZTtBRjZ5S3ZDOztBRTV5S0E7RUFBaUIsZ0JBQWU7QUZnektoQzs7QUUveUtBO0VBQTBCLGdCQUFlO0FGbXpLekM7O0FFbHpLQTtFQUFrQixnQkFBZTtBRnN6S2pDOztBRXJ6S0E7RUFBc0IsZ0JBQWU7QUZ5ektyQzs7QUV4ektBO0VBQXdCLGdCQUFlO0FGNHpLdkM7O0FFM3pLQTtFQUE0QixnQkFBZTtBRit6SzNDOztBRTl6S0E7RUFBNkIsZ0JBQWU7QUZrMEs1Qzs7QUVqMEtBO0VBQThCLGdCQUFlO0FGcTBLN0M7O0FFcDBLQTtFQUFnQyxnQkFBZTtBRncwSy9DOztBRXYwS0E7RUFBNkIsZ0JBQWU7QUYyMEs1Qzs7QUUxMEtBO0VBQThCLGdCQUFlO0FGODBLN0M7O0FFNzBLQTtFQUEyQixnQkFBZTtBRmkxSzFDOztBRWgxS0E7RUFBNEIsZ0JBQWU7QUZvMUszQzs7QUVuMUtBO0VBQXVCLGdCQUFlO0FGdTFLdEM7O0FFdDFLQTtFQUF1QixnQkFBZTtBRjAxS3RDOztBRXoxS0E7RUFBOEIsZ0JBQWU7QUY2MUs3Qzs7QUU1MUtBO0VBQXFCLGdCQUFlO0FGZzJLcEM7O0FFLzFLQTtFQUFtQixnQkFBZTtBRm0yS2xDOztBRWwyS0E7RUFBa0IsZ0JBQWU7QUZzMktqQzs7QUVyMktBO0VBQWlCLGdCQUFlO0FGeTJLaEM7O0FFeDJLQTtFQUE4QixnQkFBZTtBRjQySzdDOztBRTMyS0E7RUFBZ0MsZ0JBQWU7QUYrMksvQzs7QUU5MktBO0VBQThCLGdCQUFlO0FGazNLN0M7O0FFajNLQTtFQUFvQixnQkFBZTtBRnEzS25DOztBRXAzS0E7RUFBc0IsZ0JBQWU7QUZ3M0tyQzs7QUV2M0tBO0VBQXVCLGdCQUFlO0FGMjNLdEM7O0FFMTNLQTtFQUFzQixnQkFBZTtBRjgzS3JDOztBRTczS0E7RUFBc0IsZ0JBQWU7QUZpNEtyQzs7QUVoNEtBO0VBQStCLGdCQUFlO0FGbzRLOUM7O0FFbjRLQTtFQUFpQyxnQkFBZTtBRnU0S2hEOztBRXQ0S0E7RUFBK0IsZ0JBQWU7QUYwNEs5Qzs7QUV6NEtBO0VBQTJCLGdCQUFlO0FGNjRLMUM7O0FFNTRLQTtFQUE0QixnQkFBZTtBRmc1SzNDOztBRS80S0E7RUFBNkIsZ0JBQWU7QUZtNUs1Qzs7QUVsNUtBO0VBQThCLGdCQUFlO0FGczVLN0M7O0FFcjVLQTtFQUFvQixnQkFBZTtBRnk1S25DOztBRXg1S0E7RUFBcUIsZ0JBQWU7QUY0NUtwQzs7QUUzNUtBO0VBQXFCLGdCQUFlO0FGKzVLcEM7O0FFOTVLQTtFQUFzQixnQkFBZTtBRms2S3JDOztBRWo2S0E7RUFBa0IsZ0JBQWU7QUZxNktqQzs7QUVwNktBO0VBQW1CLGdCQUFlO0FGdzZLbEM7O0FFdjZLQTtFQUF3QixnQkFBZTtBRjI2S3ZDOztBRTE2S0E7RUFBcUIsZ0JBQWU7QUY4NktwQzs7QUU3NktBO0VBQW9CLGdCQUFlO0FGaTdLbkM7O0FFaDdLQTtFQUFxQixnQkFBZTtBRm83S3BDOztBRW43S0E7RUFBb0IsZ0JBQWU7QUZ1N0tuQzs7QUV0N0tBO0VBQTBCLGdCQUFlO0FGMDdLekM7O0FFejdLQTtFQUFzQixnQkFBZTtBRjY3S3JDOztBRTU3S0E7RUFBcUIsZ0JBQWU7QUZnOEtwQzs7QUUvN0tBO0VBQXFCLGdCQUFlO0FGbThLcEM7O0FFbDhLQTtFQUFrQixnQkFBZTtBRnM4S2pDOztBRXI4S0E7RUFBd0IsZ0JBQWU7QUZ5OEt2Qzs7QUV4OEtBO0VBQXNCLGdCQUFlO0FGNDhLckM7O0FFMzhLQTtFQUF1QixnQkFBZTtBRis4S3RDOztBRTk4S0E7RUFBd0IsZ0JBQWU7QUZrOUt2Qzs7QUVqOUtBO0VBQXlCLGdCQUFlO0FGcTlLeEM7O0FFcDlLQTtFQUF3QixnQkFBZTtBRnc5S3ZDOztBRXY5S0E7RUFBcUIsZ0JBQWU7QUYyOUtwQzs7QUUxOUtBO0VBQW1CLGdCQUFlO0FGODlLbEM7O0FFNzlLQTtFQUE0QixnQkFBZTtBRmkrSzNDOztBRWgrS0E7RUFBd0IsZ0JBQWU7QUZvK0t2Qzs7QUVuK0tBO0VBQW1CLGdCQUFlO0FGdStLbEM7O0FFdCtLQTtFQUF3QixnQkFBZTtBRjArS3ZDOztBRXorS0E7RUFBcUIsZ0JBQWU7QUY2K0twQzs7QUU1K0tBO0VBQTRCLGdCQUFlO0FGZy9LM0M7O0FFLytLQTtFQUFtQixnQkFBZTtBRm0vS2xDOztBRWwvS0E7RUFBbUIsZ0JBQWU7QUZzL0tsQzs7QUVyL0tBO0VBQWtCLGdCQUFlO0FGeS9LakM7O0FFeC9LQTtFQUF3QixnQkFBZTtBRjQvS3ZDOztBRTMvS0E7RUFBeUIsZ0JBQWU7QUYrL0t4Qzs7QUU5L0tBO0VBQXlCLGdCQUFlO0FGa2dMeEM7O0FFamdMQTtFQUF1QixnQkFBZTtBRnFnTHRDOztBRXBnTEE7RUFBMEIsZ0JBQWU7QUZ3Z0x6Qzs7QUV2Z0xBO0VBQXdCLGdCQUFlO0FGMmdMdkM7O0FFMWdMQTtFQUF3QixnQkFBZTtBRjhnTHZDOztBRTdnTEE7RUFBdUIsZ0JBQWU7QUZpaEx0Qzs7QUVoaExBO0VBQXVCLGdCQUFlO0FGb2hMdEM7O0FFbmhMQTtFQUE4QixnQkFBZTtBRnVoTDdDOztBRXRoTEE7RUFBbUIsZ0JBQWU7QUYwaExsQzs7QUV6aExBO0VBQW9CLGdCQUFlO0FGNmhMbkM7O0FFNWhMQTtFQUE2QixnQkFBZTtBRmdpTDVDOztBRS9oTEE7RUFBcUIsZ0JBQWU7QUZtaUxwQzs7QUVsaUxBO0VBQWlCLGdCQUFlO0FGc2lMaEM7O0FFcmlMQTtFQUFpQixnQkFBZTtBRnlpTGhDOztBRXhpTEE7RUFBa0IsZ0JBQWU7QUY0aUxqQzs7QUUzaUxBO0VBQWtCLGdCQUFlO0FGK2lMakM7O0FFOWlMQTtFQUFxQixnQkFBZTtBRmtqTHBDOztBRWpqTEE7RUFBNkIsZ0JBQWU7QUZxakw1Qzs7QUVwakxBO0VBQStCLGdCQUFlO0FGd2pMOUM7O0FFdmpMQTtFQUE4QixnQkFBZTtBRjJqTDdDOztBRTFqTEE7RUFBZ0MsZ0JBQWU7QUY4akwvQzs7QUU3akxBO0VBQTZCLGdCQUFlO0FGaWtMNUM7O0FFaGtMQTtFQUE2QixnQkFBZTtBRm9rTDVDOztBRW5rTEE7RUFBNkIsZ0JBQWU7QUZ1a0w1Qzs7QUV0a0xBO0VBQStCLGdCQUFlO0FGMGtMOUM7O0FFemtMQTtFQUE4QixnQkFBZTtBRjZrTDdDOztBRTVrTEE7RUFBZ0MsZ0JBQWU7QUZnbEwvQzs7QUUva0xBO0VBQThCLGdCQUFlO0FGbWxMN0M7O0FFbGxMQTtFQUE4QixnQkFBZTtBRnNsTDdDOztBRXJsTEE7RUFBbUIsZ0JBQWU7QUZ5bExsQzs7QUV4bExBO0VBQW9CLGdCQUFlO0FGNGxMbkM7O0FFM2xMQTtFQUFxQixnQkFBZTtBRitsTHBDOztBRTlsTEE7RUFBc0IsZ0JBQWU7QUZrbUxyQzs7QUVqbUxBO0VBQW9CLGdCQUFlO0FGcW1MbkM7O0FFcG1MQTtFQUFtQixnQkFBZTtBRndtTGxDOztBRXZtTEE7RUFBb0IsZ0JBQWU7QUYybUxuQzs7QUUxbUxBO0VBQW9CLGdCQUFlO0FGOG1MbkM7O0FFN21MQTtFQUFvQixnQkFBZTtBRmluTG5DOztBRWhuTEE7RUFBcUIsZ0JBQWU7QUZvbkxwQzs7QUVubkxBO0VBQWtCLGdCQUFlO0FGdW5MakM7O0FFdG5MQTtFQUF3QixnQkFBZTtBRjBuTHZDOztBRXpuTEE7RUFBeUIsZ0JBQWU7QUY2bkx4Qzs7QUU1bkxBO0VBQXNCLGdCQUFlO0FGZ29MckM7O0FFL25MQTtFQUFxQixnQkFBZTtBRm1vTHBDOztBRWxvTEE7RUFBNkIsZ0JBQWU7QUZzb0w1Qzs7QUVyb0xBO0VBQTZCLGdCQUFlO0FGeW9MNUM7O0FFeG9MQTtFQUE2QixnQkFBZTtBRjRvTDVDOztBRTNvTEE7RUFBNkIsZ0JBQWU7QUYrb0w1Qzs7QUU5b0xBO0VBQTZCLGdCQUFlO0FGa3BMNUM7O0FFanBMQTtFQUE2QixnQkFBZTtBRnFwTDVDOztBRXBwTEE7RUFBNkIsZ0JBQWU7QUZ3cEw1Qzs7QUV2cExBO0VBQTZCLGdCQUFlO0FGMnBMNUM7O0FFMXBMQTtFQUE2QixnQkFBZTtBRjhwTDVDOztBRTdwTEE7RUFBNkIsZ0JBQWU7QUZpcUw1Qzs7QUVocUxBO0VBQW9CLGdCQUFlO0FGb3FMbkM7O0FFbnFMQTtFQUFvQixnQkFBZTtBRnVxTG5DOztBRXRxTEE7RUFBb0IsZ0JBQWU7QUYwcUxuQzs7QUV6cUxBO0VBQXlCLGdCQUFlO0FGNnFMeEM7O0FFNXFMQTtFQUEwQixnQkFBZTtBRmdyTHpDOztBRS9xTEE7RUFBMEIsZ0JBQWU7QUZtckx6Qzs7QUVsckxBO0VBQXNCLGdCQUFlO0FGc3JMckM7O0FFcnJMQTtFQUF1QixnQkFBZTtBRnlyTHRDOztBRXhyTEE7RUFBdUIsZ0JBQWU7QUY0ckx0Qzs7QUUzckxBO0VBQXFCLGdCQUFlO0FGK3JMcEM7O0FFOXJMQTtFQUFzQixnQkFBZTtBRmtzTHJDOztBRWpzTEE7RUFBbUIsZ0JBQWU7QUZxc0xsQzs7QUVwc0xBO0VBQW1CLGdCQUFlO0FGd3NMbEM7O0FFdnNMQTtFQUFxQixnQkFBZTtBRjJzTHBDOztBRTFzTEE7RUFBc0IsZ0JBQWU7QUY4c0xyQzs7QUU3c0xBO0VBQXNCLGdCQUFlO0FGaXRMckM7O0FFaHRMQTtFQUFtQixnQkFBZTtBRm90TGxDOztBRW50TEE7RUFBb0IsZ0JBQWU7QUZ1dExuQzs7QUV0dExBO0VBQW9CLGdCQUFlO0FGMHRMbkM7O0FFenRMQTtFQUFvQixnQkFBZTtBRjZ0TG5DOztBRTV0TEE7RUFBcUIsZ0JBQWU7QUZndUxwQzs7QUUvdExBO0VBQXFCLGdCQUFlO0FGbXVMcEM7O0FFbHVMQTtFQUFxQixnQkFBZTtBRnN1THBDOztBRXJ1TEE7RUFBc0IsZ0JBQWU7QUZ5dUxyQzs7QUV4dUxBO0VBQXNCLGdCQUFlO0FGNHVMckM7O0FFM3VMQTtFQUF1QixnQkFBZTtBRit1THRDOztBRTl1TEE7RUFBdUIsZ0JBQWU7QUZrdkx0Qzs7QUVqdkxBO0VBQW9CLGdCQUFlO0FGcXZMbkM7O0FFcHZMQTtFQUFxQixnQkFBZTtBRnd2THBDOztBRXZ2TEE7RUFBd0IsZ0JBQWU7QUYydkx2Qzs7QUUxdkxBO0VBQXlCLGdCQUFlO0FGOHZMeEM7O0FFN3ZMQTtFQUFtQixnQkFBZTtBRml3TGxDOztBRWh3TEE7RUFBb0IsZ0JBQWU7QUZvd0xuQzs7QUVud0xBO0VBQXFCLGdCQUFlO0FGdXdMcEM7O0FFdHdMQTtFQUFzQixnQkFBZTtBRjB3THJDOztBRXp3TEE7RUFBb0IsZ0JBQWU7QUY2d0xuQzs7QUU1d0xBO0VBQXFCLGdCQUFlO0FGZ3hMcEM7O0FFL3dMQTtFQUFxQixnQkFBZTtBRm14THBDOztBRWx4TEE7RUFBdUIsZ0JBQWU7QUZzeEx0Qzs7QUVyeExBO0VBQXdCLGdCQUFlO0FGeXhMdkM7O0FFeHhMQTtFQUFvQixnQkFBZTtBRjR4TG5DOztBRTN4TEE7RUFBcUIsZ0JBQWU7QUYreExwQzs7QUU5eExBO0VBQXNCLGdCQUFlO0FGa3lMckM7O0FFanlMQTtFQUFvQixnQkFBZTtBRnF5TG5DOztBRXB5TEE7RUFBcUIsZ0JBQWU7QUZ3eUxwQzs7QUV2eUxBO0VBQW1CLGdCQUFlO0FGMnlMbEM7O0FFMXlMQTtFQUFpQixnQkFBZTtBRjh5TGhDOztBRTd5TEE7RUFBb0IsZ0JBQWU7QUZpekxuQzs7QUVoekxBO0VBQW9CLGdCQUFlO0FGb3pMbkM7O0FFbnpMQTtFQUFxQixnQkFBZTtBRnV6THBDOztBRXR6TEE7RUFBcUIsZ0JBQWU7QUYwekxwQzs7QUV6ekxBO0VBQXNCLGdCQUFlO0FGNnpMckM7O0FFNXpMQTtFQUF3QixnQkFBZTtBRmcwTHZDOztBRS96TEE7RUFBeUIsZ0JBQWU7QUZtMEx4Qzs7QUVsMExBO0VBQW1CLGdCQUFlO0FGczBMbEM7O0FFcjBMQTtFQUFvQixnQkFBZTtBRnkwTG5DOztBRXgwTEE7RUFBc0IsZ0JBQWU7QUY0MExyQzs7QUUzMExBO0VBQXVCLGdCQUFlO0FGKzBMdEM7O0FFOTBMQTtFQUFvQixnQkFBZTtBRmsxTG5DOztBRWoxTEE7RUFBcUIsZ0JBQWU7QUZxMUxwQzs7QUVwMUxBO0VBQXVCLGdCQUFlO0FGdzFMdEM7O0FFdjFMQTtFQUF5QixnQkFBZTtBRjIxTHhDOztBRTExTEE7RUFBMEIsZ0JBQWU7QUY4MUx6Qzs7QUU3MUxBO0VBQTJCLGdCQUFlO0FGaTJMMUM7O0FFaDJMQTtFQUF3QixnQkFBZTtBRm8yTHZDOztBRW4yTEE7RUFBa0IsZ0JBQWU7QUZ1MkxqQzs7QUV0MkxBO0VBQW9CLGdCQUFlO0FGMDJMbkM7O0FFejJMQTtFQUF3QixnQkFBZTtBRjYyTHZDOztBRTUyTEE7RUFBb0IsZ0JBQWU7QUZnM0xuQzs7QUUvMkxBO0VBQXFCLGdCQUFlO0FGbTNMcEM7O0FFbDNMQTtFQUFrQixnQkFBZTtBRnMzTGpDOztBRXIzTEE7RUFBc0IsZ0JBQWU7QUZ5M0xyQzs7QUV4M0xBO0VBQTZCLGdCQUFlO0FGNDNMNUM7O0FFMzNMQTtFQUF1QixnQkFBZTtBRiszTHRDOztBRTkzTEE7RUFBd0IsZ0JBQWU7QUZrNEx2Qzs7QUVqNExBO0VBQXlCLGdCQUFlO0FGcTRMeEM7O0FFcDRMQTtFQUFtQixnQkFBZTtBRnc0TGxDOztBRXY0TEE7RUFBb0IsZ0JBQWU7QUYyNExuQzs7QUUxNExBO0VBQWtCLGdCQUFlO0FGODRMakM7O0FFNzRMQTtFQUFpQixnQkFBZTtBRmk1TGhDOztBRWg1TEE7RUFBaUIsZ0JBQWU7QUZvNUxoQzs7QUVuNUxBO0VBQXFCLGdCQUFlO0FGdTVMcEM7O0FFdDVMQTtFQUFvQixnQkFBZTtBRjA1TG5DOztBRXo1TEE7RUFBcUIsZ0JBQWU7QUY2NUxwQzs7QUU1NUxBO0VBQWdCLGdCQUFlO0FGZzZML0I7O0FFLzVMQTtFQUFtQixnQkFBZTtBRm02TGxDOztBRWw2TEE7RUFBb0IsZ0JBQWU7QUZzNkxuQzs7QUVyNkxBO0VBQW9CLGdCQUFlO0FGeTZMbkM7O0FFeDZMQTtFQUFtQixnQkFBZTtBRjQ2TGxDOztBRTM2TEE7RUFBb0IsZ0JBQWU7QUYrNkxuQzs7QUU5NkxBO0VBQStCLGdCQUFlO0FGazdMOUM7O0FFajdMQTtFQUE2QixnQkFBZTtBRnE3TDVDOztBRXA3TEE7RUFBd0IsZ0JBQWU7QUZ3N0x2Qzs7QUV2N0xBO0VBQThCLGdCQUFlO0FGMjdMN0M7O0FFMTdMQTtFQUEwQixnQkFBZTtBRjg3THpDOztBRTc3TEE7RUFBZ0MsZ0JBQWU7QUZpOEwvQzs7QUVoOExBO0VBQTBCLGdCQUFlO0FGbzhMekM7O0FFbjhMQTtFQUErQixnQkFBZTtBRnU4TDlDOztBRXQ4TEE7RUFBMEIsZ0JBQWU7QUYwOEx6Qzs7QUV6OExBO0VBQXVCLGdCQUFlO0FGNjhMdEM7O0FFNThMQTtFQUF1QixnQkFBZTtBRmc5THRDOztBRS84TEE7RUFBd0IsZ0JBQWU7QUZtOUx2Qzs7QUVsOUxBO0VBQTJCLGdCQUFlO0FGczlMMUM7O0FFcjlMQTtFQUE2QixnQkFBZTtBRnk5TDVDOztBRXg5TEE7RUFBa0IsZ0JBQWU7QUY0OUxqQzs7QUUzOUxBO0VBQXNCLGdCQUFlO0FGKzlMckM7O0FFOTlMQTtFQUFrQixnQkFBZTtBRmsrTGpDOztBRWorTEE7RUFBcUIsZ0JBQWU7QUZxK0xwQzs7QUVwK0xBO0VBQXFCLGdCQUFlO0FGdytMcEM7O0FFditMQTtFQUFzQixnQkFBZTtBRjIrTHJDOztBRTErTEE7RUFBaUIsZ0JBQWU7QUY4K0xoQzs7QUU3K0xBO0VBQXNCLGdCQUFlO0FGaS9MckM7O0FFaC9MQTtFQUF5QixnQkFBZTtBRm8vTHhDOztBRW4vTEE7RUFBdUIsZ0JBQWU7QUZ1L0x0Qzs7QUV0L0xBO0VBQW9CLGdCQUFlO0FGMC9MbkM7O0FFei9MQTtFQUFrQixnQkFBZTtBRjYvTGpDOztBRTUvTEE7RUFBbUIsZ0JBQWU7QUZnZ01sQzs7QUUvL0xBO0VBQXVCLGdCQUFlO0FGbWdNdEM7O0FFbGdNQTtFQUFzQixnQkFBZTtBRnNnTXJDOztBRXJnTUE7RUFBcUIsZ0JBQWU7QUZ5Z01wQzs7QUV4Z01BO0VBQXdCLGdCQUFlO0FGNGdNdkM7O0FFM2dNQTtFQUF3QixnQkFBZTtBRitnTXZDOztBRTlnTUE7RUFBdUIsZ0JBQWU7QUZraE10Qzs7QUVqaE1BO0VBQW1CLGdCQUFlO0FGcWhNbEM7O0FFcGhNQTtFQUF1QixnQkFBZTtBRndoTXRDOztBRXZoTUE7RUFBbUIsZ0JBQWU7QUYyaE1sQzs7QUUxaE1BO0VBQXNCLGdCQUFlO0FGOGhNckM7O0FFN2hNQTtFQUFtQixnQkFBZTtBRmlpTWxDOztBRWhpTUE7RUFBbUIsZ0JBQWU7QUZvaU1sQzs7QUVuaU1BO0VBQXFCLGdCQUFlO0FGdWlNcEM7O0FFdGlNQTtFQUF3QixnQkFBZTtBRjBpTXZDOztBRXppTUE7RUFBc0IsZ0JBQWU7QUY2aU1yQzs7QUU1aU1BO0VBQXFCLGdCQUFlO0FGZ2pNcEM7O0FFL2lNQTtFQUF1QixnQkFBZTtBRm1qTXRDOztBRWxqTUE7RUFBc0IsZ0JBQWU7QUZzak1yQzs7QUVyak1BO0VBQXFCLGdCQUFlO0FGeWpNcEM7O0FFeGpNQTtFQUFvQixnQkFBZTtBRjRqTW5DOztBRTNqTUE7RUFBa0IsZ0JBQWU7QUYrak1qQzs7QUU5ak1BO0VBQXlCLGdCQUFlO0FGa2tNeEM7O0FFamtNQTtFQUFpQixnQkFBZTtBRnFrTWhDOztBRXBrTUE7RUFBcUIsZ0JBQWU7QUZ3a01wQzs7QUV2a01BO0VBQWtCLGdCQUFlO0FGMmtNakM7O0FFMWtNQTtFQUF3QixnQkFBZTtBRjhrTXZDOztBRTdrTUE7RUFBaUIsZ0JBQWU7QUZpbE1oQzs7QUVobE1BO0VBQXNCLGdCQUFlO0FGb2xNckM7O0FFbmxNQTtFQUF3QixnQkFBZTtBRnVsTXZDOztBRXRsTUE7RUFBa0IsZ0JBQWU7QUYwbE1qQzs7QUV6bE1BO0VBQW1CLGdCQUFlO0FGNmxNbEM7O0FFNWxNQTtFQUFvQixnQkFBZTtBRmdtTW5DOztBRS9sTUE7RUFBbUIsZ0JBQWU7QUZtbU1sQzs7QUVsbU1BO0VBQW1CLGdCQUFlO0FGc21NbEM7O0FFcm1NQTtFQUFvQixnQkFBZTtBRnltTW5DOztBRXhtTUE7RUFBdUIsZ0JBQWU7QUY0bU10Qzs7QUUzbU1BO0VBQWtCLGdCQUFlO0FGK21NakM7O0FFOW1NQTtFQUFzQixnQkFBZTtBRmtuTXJDOztBRWpuTUE7RUFBeUIsZ0JBQWU7QUZxbk14Qzs7QUVwbk1BO0VBQTBCLGdCQUFlO0FGd25NekM7O0FFdm5NQTtFQUEwQixnQkFBZTtBRjJuTXpDOztBRTFuTUE7RUFBd0IsZ0JBQWU7QUY4bk12Qzs7QUU3bk1BO0VBQTJCLGdCQUFlO0FGaW9NMUM7O0FFaG9NQTtFQUEwQixnQkFBZTtBRm9vTXpDOztBRW5vTUE7RUFBMEIsZ0JBQWU7QUZ1b016Qzs7QUV0b01BO0VBQXdCLGdCQUFlO0FGMG9NdkM7O0FFem9NQTtFQUEyQixnQkFBZTtBRjZvTTFDOztBRTVvTUE7RUFBMEIsZ0JBQWU7QUZncE16Qzs7QUUvb01BO0VBQTBCLGdCQUFlO0FGbXBNekM7O0FFbHBNQTtFQUF3QixnQkFBZTtBRnNwTXZDOztBRXJwTUE7RUFBMkIsZ0JBQWU7QUZ5cE0xQzs7QUV4cE1BO0VBQXFCLGdCQUFlO0FGNHBNcEM7O0FFM3BNQTtFQUF3QixnQkFBZTtBRitwTXZDOztBRTlwTUE7RUFBdUIsZ0JBQWU7QUZrcU10Qzs7QUVqcU1BO0VBQW1CLGdCQUFlO0FGcXFNbEM7O0FFcHFNQTtFQUE2QixnQkFBZTtBRndxTTVDOztBRXZxTUE7RUFBa0MsZ0JBQWU7QUYycU1qRDs7QUUxcU1BO0VBQStCLGdCQUFlO0FGOHFNOUM7O0FFN3FNQTtFQUEyQixnQkFBZTtBRmlyTTFDOztBRWhyTUE7RUFBd0IsZ0JBQWU7QUZvck12Qzs7QUVuck1BO0VBQTBCLGdCQUFlO0FGdXJNekM7O0FFdHJNQTtFQUEyQixnQkFBZTtBRjByTTFDOztBRXpyTUE7RUFBOEIsZ0JBQWU7QUY2ck03Qzs7QUU1ck1BO0VBQThCLGdCQUFlO0FGZ3NNN0M7O0FFL3JNQTtFQUErQixnQkFBZTtBRm1zTTlDOztBRWxzTUE7RUFBNEIsZ0JBQWU7QUZzc00zQzs7QUVyc01BO0VBQW1CLGdCQUFlO0FGeXNNbEM7O0FFeHNNQTtFQUEwQixnQkFBZTtBRjRzTXpDOztBRTNzTUE7RUFBMEIsZ0JBQWU7QUYrc016Qzs7QUU5c01BO0VBQTJCLGdCQUFlO0FGa3RNMUM7O0FFanRNQTtFQUF3QixnQkFBZTtBRnF0TXZDOztBRXB0TUE7RUFBb0IsZ0JBQWU7QUZ3dE1uQzs7QUV2dE1BO0VBQXFCLGdCQUFlO0FGMnRNcEM7O0FFMXRNQTtFQUFnQyxnQkFBZTtBRjh0TS9DOztBRTd0TUE7RUFBa0IsZ0JBQWU7QUZpdU1qQzs7QUVodU1BO0VBQWtCLGdCQUFlO0FGb3VNakM7O0FFbnVNQTtFQUF3QixnQkFBZTtBRnV1TXZDOztBRXR1TUE7RUFBMEIsZ0JBQWU7QUYwdU16Qzs7QUV6dU1BO0VBQTJCLGdCQUFlO0FGNnVNMUM7O0FFNXVNQTtFQUEwQixnQkFBZTtBRmd2TXpDOztBRS91TUE7RUFBMEIsZ0JBQWU7QUZtdk16Qzs7QUVsdk1BO0VBQXdCLGdCQUFlO0FGc3ZNdkM7O0FFcnZNQTtFQUFrQixnQkFBZTtBRnl2TWpDOztBRXh2TUE7RUFBa0IsZ0JBQWU7QUY0dk1qQzs7QUUzdk1BO0VBQXdCLGdCQUFlO0FGK3ZNdkM7O0FFOXZNQTtFQUF3QixnQkFBZTtBRmt3TXZDOztBRWp3TUE7RUFBeUIsZ0JBQWU7QUZxd014Qzs7QUVwd01BO0VBQXVCLGdCQUFlO0FGd3dNdEM7O0FFdndNQTtFQUE4QixnQkFBZTtBRjJ3TTdDOztBRTF3TUE7RUFBbUIsZ0JBQWU7QUY4d01sQzs7QUU3d01BO0VBQWlCLGdCQUFlO0FGaXhNaEM7O0FFaHhNQTtFQUEwQixnQkFBZTtBRm94TXpDOztBRW54TUE7RUFBNEIsZ0JBQWU7QUZ1eE0zQzs7QUV0eE1BO0VBQW1CLGdCQUFlO0FGMHhNbEM7O0FFenhNQTtFQUF1QixnQkFBZTtBRjZ4TXRDOztBRTV4TUE7RUFBcUIsZ0JBQWU7QUZneU1wQzs7QUUveE1BO0VBQW9CLGdCQUFlO0FGbXlNbkM7O0FFbHlNQTtFQUF1QixnQkFBZTtBRnN5TXRDOztBRXJ5TUE7RUFBdUIsZ0JBQWU7QUZ5eU10Qzs7QUV4eU1BO0VBQXdCLGdCQUFlO0FGNHlNdkM7O0FFM3lNQTtFQUFxQixnQkFBZTtBRit5TXBDOztBRTl5TUE7RUFBb0IsZ0JBQWU7QUZrek1uQzs7QUVqek1BO0VBQW9CLGdCQUFlO0FGcXpNbkM7O0FFcHpNQTtFQUEyQixnQkFBZTtBRnd6TTFDOztBRXZ6TUE7RUFBOEIsZ0JBQWU7QUYyek03Qzs7QUUxek1BO0VBQXlCLGdCQUFlO0FGOHpNeEM7O0FFN3pNQTtFQUF5QixnQkFBZTtBRmkwTXhDOztBRWgwTUE7RUFBMkIsZ0JBQWU7QUZvME0xQzs7QUVuME1BO0VBQWtCLGdCQUFlO0FGdTBNakM7O0FFdDBNQTtFQUF3QixnQkFBZTtBRjAwTXZDOztBRXowTUE7RUFBb0IsZ0JBQWU7QUY2ME1uQzs7QUU1ME1BO0VBQXNCLGdCQUFlO0FGZzFNckM7O0FFLzBNQTtFQUFlLGdCQUFlO0FGbTFNOUI7O0FHei9PQTs7Ozs7RUhnZ1BFO0FJLy9PRjtFQUdJLGVBQWM7RUFBZCxpQkFBYztFQUFkLGlCQUFjO0VBQWQsZUFBYztFQUFkLGNBQWM7RUFBZCxpQkFBYztFQUFkLGlCQUFjO0VBQWQsZ0JBQWM7RUFBZCxlQUFjO0VBQWQsZUFBYztFQUFkLGFBQWM7RUFBZCxlQUFjO0VBQWQsb0JBQWM7RUFJZCxrQkFBYztFQUFkLG9CQUFjO0VBQWQsa0JBQWM7RUFBZCxlQUFjO0VBQWQsa0JBQWM7RUFBZCxpQkFBYztFQUFkLGdCQUFjO0VBQWQsZUFBYztFQUlkLGtCQUFpQztFQUFqQyxzQkFBaUM7RUFBakMsc0JBQWlDO0VBQWpDLHNCQUFpQztFQUFqQyx1QkFBaUM7RUFLbkMsK01BQXlCO0VBQ3pCLDZHQUF3QjtBSjRnUDFCOztBSzVnUEE7OztFQUdFLHNCQUFzQjtBTCtnUHhCOztBSzVnUEE7RUFDRSx1QkFBdUI7RUFDdkIsaUJBQWlCO0VBQ2pCLDhCQUE4QjtFQUM5Qiw2Q0NYYTtBTjBoUGY7O0FLemdQQTtFQUNFLGNBQWM7QUw0Z1BoQjs7QUtsZ1BBO0VBQ0UsU0FBUztFQUNULGtNQ3lPaU47RUN6SjdNLGVBdENZO0VGeENoQixnQkNrUCtCO0VEalAvQixnQkNzUCtCO0VEclAvQixjQ25DZ0I7RURvQ2hCLGdCQUFnQjtFQUNoQixzQkM5Q2E7QU5talBmOztBQUVBO0VLMS9PRSxxQkFBcUI7QUw0L092Qjs7QUtuL09BO0VBQ0UsdUJBQXVCO0VBQ3ZCLFNBQVM7RUFDVCxpQkFBaUI7QUxzL09uQjs7QUt6K09BO0VBQ0UsYUFBYTtFQUNiLHFCQ29OdUM7QU53eE96Qzs7QUtyK09BO0VBQ0UsYUFBYTtFQUNiLG1CQ3VGOEI7QU5pNU9oQzs7QUs3OU9BOztFQUVFLDBCQUEwQjtFQUMxQix5Q0FBaUM7VUFBakMsaUNBQWlDO0VBQ2pDLFlBQVk7RUFDWixnQkFBZ0I7RUFDaEIsc0NBQThCO1VBQTlCLDhCQUE4QjtBTGcrT2hDOztBSzc5T0E7RUFDRSxtQkFBbUI7RUFDbkIsa0JBQWtCO0VBQ2xCLG9CQUFvQjtBTGcrT3RCOztBSzc5T0E7OztFQUdFLGFBQWE7RUFDYixtQkFBbUI7QUxnK09yQjs7QUs3OU9BOzs7O0VBSUUsZ0JBQWdCO0FMZytPbEI7O0FLNzlPQTtFQUNFLGdCQ3FKK0I7QU4yME9qQzs7QUs3OU9BO0VBQ0Usb0JBQW9CO0VBQ3BCLGNBQWM7QUxnK09oQjs7QUs3OU9BO0VBQ0UsZ0JBQWdCO0FMZytPbEI7O0FLNzlPQTs7RUFFRSxtQkN3SWtDO0FOdzFPcEM7O0FLNzlPQTtFRXhGSSxjQUFXO0FQeWpQZjs7QUt4OU9BOztFQUVFLGtCQUFrQjtFRW5HaEIsY0FBVztFRnFHYixjQUFjO0VBQ2Qsd0JBQXdCO0FMMjlPMUI7O0FLeDlPQTtFQUFNLGNBQWM7QUw0OU9wQjs7QUszOU9BO0VBQU0sVUFBVTtBTCs5T2hCOztBS3g5T0E7RUFDRSxjQ3RKZTtFRHVKZixxQkNSNEM7RURTNUMsNkJBQTZCO0FMMjlPL0I7O0FRM29QRTtFSG1MRSxjQ1g4RDtFRFk5RCwwQkNYK0M7QU51K09uRDs7QUtuOU9BO0VBQ0UsY0FBYztFQUNkLHFCQUFxQjtBTHM5T3ZCOztBUXJwUEU7RUhrTUUsY0FBYztFQUNkLHFCQUFxQjtBTHU5T3pCOztBSzk4T0E7Ozs7RUFJRSxpR0M2RGdIO0VDak45RyxjQUFXO0FQc21QZjs7QUs5OE9BO0VBRUUsYUFBYTtFQUViLG1CQUFtQjtFQUVuQixjQUFjO0FMODhPaEI7O0FLdDhPQTtFQUVFLGdCQUFnQjtBTHc4T2xCOztBS2g4T0E7RUFDRSxzQkFBc0I7RUFDdEIsa0JBQWtCO0FMbThPcEI7O0FLaDhPQTtFQUdFLGdCQUFnQjtFQUNoQixzQkFBc0I7QUxpOE94Qjs7QUt6N09BO0VBQ0UseUJBQXlCO0FMNDdPM0I7O0FLejdPQTtFQUNFLG9CQ29Ga0M7RURuRmxDLHVCQ21Ga0M7RURsRmxDLGNDblFnQjtFRG9RaEIsZ0JBQWdCO0VBQ2hCLG9CQUFvQjtBTDQ3T3RCOztBS3o3T0E7RUFHRSxtQkFBbUI7QUwwN09yQjs7QUtsN09BO0VBRUUscUJBQXFCO0VBQ3JCLHFCQ3FLMkM7QU4rd083Qzs7QUs5Nk9BO0VBRUUsZ0JBQWdCO0FMZzdPbEI7O0FLejZPQTtFQUNFLG1CQUFtQjtFQUNuQiwwQ0FBMEM7QUw0Nk81Qzs7QUt6Nk9BOzs7OztFQUtFLFNBQVM7RUFDVCxvQkFBb0I7RUVyUGxCLGtCQUFXO0VGdVBiLG9CQUFvQjtBTDQ2T3RCOztBS3o2T0E7O0VBRUUsaUJBQWlCO0FMNDZPbkI7O0FLejZPQTs7RUFFRSxvQkFBb0I7QUw0Nk90Qjs7QUt0Nk9BO0VBQ0UsaUJBQWlCO0FMeTZPbkI7O0FLbDZPQTs7OztFQUlFLDBCQUEwQjtBTHE2TzVCOztBS2g2T0U7Ozs7RUFLSSxlQUFlO0FMazZPckI7O0FLNTVPQTs7OztFQUlFLFVBQVU7RUFDVixrQkFBa0I7QUwrNU9wQjs7QUs1NU9BOztFQUVFLHNCQUFzQjtFQUN0QixVQUFVO0FMKzVPWjs7QUszNU9BOzs7O0VBU0UsMkJBQTJCO0FMeTVPN0I7O0FLdDVPQTtFQUNFLGNBQWM7RUFFZCxnQkFBZ0I7QUx3NU9sQjs7QUtyNU9BO0VBTUUsWUFBWTtFQUVaLFVBQVU7RUFDVixTQUFTO0VBQ1QsU0FBUztBTGs1T1g7O0FLNzRPQTtFQUNFLGNBQWM7RUFDZCxXQUFXO0VBQ1gsZUFBZTtFQUNmLFVBQVU7RUFDVixvQkFBb0I7RUVqU2hCLGlCQXRDWTtFRnlVaEIsb0JBQW9CO0VBQ3BCLGNBQWM7RUFDZCxtQkFBbUI7QUxnNU9yQjs7QUs3NE9BO0VBQ0Usd0JBQXdCO0FMZzVPMUI7O0FBRUE7O0VLNTRPRSxZQUFZO0FMKzRPZDs7QUFFQTtFS3o0T0Usb0JBQW9CO0VBQ3BCLHdCQUF3QjtBTDI0TzFCOztBQUVBO0VLcjRPRSx3QkFBd0I7QUx1NE8xQjs7QUsvM09BO0VBQ0UsYUFBYTtFQUNiLDBCQUEwQjtBTGs0TzVCOztBSzMzT0E7RUFDRSxxQkFBcUI7QUw4M092Qjs7QUszM09BO0VBQ0Usa0JBQWtCO0VBQ2xCLGVBQWU7QUw4M09qQjs7QUszM09BO0VBQ0UsYUFBYTtBTDgzT2Y7O0FBRUE7RUsxM09FLHdCQUF3QjtBTDQzTzFCOztBU3QxUEE7O0VBRUUscUJIeVN1QztFR3ZTdkMsZ0JIeVMrQjtFR3hTL0IsZ0JIeVMrQjtBTitpUGpDOztBU3AxUEE7RUZnSE0saUJBdENZO0FQOHdQbEI7O0FTdjFQQTtFRitHTSxlQXRDWTtBUGt4UGxCOztBUzExUEE7RUY4R00sa0JBdENZO0FQc3hQbEI7O0FTNzFQQTtFRjZHTSxpQkF0Q1k7QVAweFBsQjs7QVNoMlBBO0VGNEdNLGtCQXRDWTtBUDh4UGxCOztBU24yUEE7RUYyR00sZUF0Q1k7QVBreVBsQjs7QVNyMlBBO0VGeUdNLGtCQXRDWTtFRWpFaEIsZ0JIMlMrQjtBTjZqUGpDOztBU3AyUEE7RUZtR00sZUF0Q1k7RUUzRGhCLGdCSDhSK0I7RUc3Ui9CLGdCSHFSK0I7QU5rbFBqQzs7QVNyMlBBO0VGOEZNLGlCQXRDWTtFRXREaEIsZ0JIMFIrQjtFR3pSL0IsZ0JIZ1IrQjtBTndsUGpDOztBU3QyUEE7RUZ5Rk0saUJBdENZO0VFakRoQixnQkhzUitCO0VHclIvQixnQkgyUStCO0FOOGxQakM7O0FTdjJQQTtFRm9GTSxpQkF0Q1k7RUU1Q2hCLGdCSGtSK0I7RUdqUi9CLGdCSHNRK0I7QU5vbVBqQzs7QUs3MFBBO0VJcEJFLGdCSGlGVztFR2hGWCxtQkhnRlc7RUcvRVgsU0FBUztFQUNULHdDSHpDYTtBTjg0UGY7O0FTNzFQQTs7RUZNSSxjQUFXO0VFSGIsZ0JIOE4rQjtBTmtvUGpDOztBUzcxUEE7O0VBRUUsY0hzUWdDO0VHclFoQyx5Qkg4UW1DO0FOa2xQckM7O0FTeDFQQTtFQy9FRSxlQUFlO0VBQ2YsZ0JBQWdCO0FWMjZQbEI7O0FTeDFQQTtFQ3BGRSxlQUFlO0VBQ2YsZ0JBQWdCO0FWZzdQbEI7O0FTMTFQQTtFQUNFLHFCQUFxQjtBVDYxUHZCOztBUzkxUEE7RUFJSSxvQkh3UCtCO0FOc21QbkM7O0FTcDFQQTtFRmpDSSxjQUFXO0VFbUNiLHlCQUF5QjtBVHUxUDNCOztBU24xUEE7RUFDRSxtQkh3Qlc7RUNUUCxrQkF0Q1k7QVA4MlBsQjs7QVNuMVBBO0VBQ0UsY0FBYztFRjdDWixjQUFXO0VFK0NiLGNIMUdnQjtBTmc4UGxCOztBU3oxUEE7RUFNSSxxQkFBcUI7QVR1MVB6Qjs7QVcxOFBBO0VDSUUsZUFBZTtFQUdmLFlBQVk7QVp3OFBkOztBV3o4UEE7RUFDRSxnQkxpZ0N3QztFS2hnQ3hDLHNCTFJhO0VLU2IseUJMTmdCO0VPTGQsc0JQNk9nQztFTXZPbEMsZUFBZTtFQUdmLFlBQVk7QVppOVBkOztBV244UEE7RUFFRSxxQkFBcUI7QVhxOFB2Qjs7QVdsOFBBO0VBQ0UscUJBQTBCO0VBQzFCLGNBQWM7QVhxOFBoQjs7QVdsOFBBO0VKa0NJLGNBQVc7RUloQ2IsY0wzQmdCO0FOZytQbEI7O0FjNStQQTtFUHVFSSxnQkFBVztFT3JFYixjUm9DZTtFUW5DZixxQkFBcUI7QWQrK1B2Qjs7QWM1K1BFO0VBQ0UsY0FBYztBZCsrUGxCOztBYzErUEE7RUFDRSxzQlJxbEN1QztFQzNoQ3JDLGdCQUFXO0VPeERiLFdSVGE7RVFVYix5QlJEZ0I7RU9YZCxxQlArTytCO0FOMndQbkM7O0FjbC9QQTtFQVNJLFVBQVU7RVBrRFYsZUFBVztFT2hEWCxnQlI0UTZCO0FOaXVQakM7O0FLcnlQQTtFU2pNRSxjQUFjO0VQeUNaLGdCQUFXO0VPdkNiLGNSakJnQjtBTjIvUGxCOztBYzcrUEE7RVAwQ0ksa0JBQVc7RU9sQ1gsY0FBYztFQUNkLGtCQUFrQjtBZDArUHRCOztBY3IrUEE7RUFDRSxpQlI0akN1QztFUTNqQ3ZDLGtCQUFrQjtBZHcrUHBCOztBZWhoUUU7RUNEQSxXQUFXO0VBQ1gsbUJBQTBCO0VBQzFCLGtCQUF5QjtFQUN6QixrQkFBa0I7RUFDbEIsaUJBQWlCO0FoQnFoUW5COztBaUJsK1BJO0VGdERGO0lDV0ksZ0JWcU1LO0VONjBQVDtBQUNGOztBaUJ4K1BJO0VGdERGO0lDV0ksZ0JWc01LO0VOazFQVDtBQUNGOztBaUI5K1BJO0VGdERGO0lDV0ksZ0JWdU1LO0VOdTFQVDtBQUNGOztBaUJwL1BJO0VGdERGO0lDV0ksaUJWd01NO0VONDFQVjtBQUNGOztBZTFpUUU7RUNQQSxXQUFXO0VBQ1gsbUJBQTBCO0VBQzFCLGtCQUF5QjtFQUN6QixrQkFBa0I7RUFDbEIsaUJBQWlCO0FoQnFqUW5COztBaUJsZ1FJO0VGckNFO0lBQ0UsZ0JUOExHO0VONjJQVDtBQUNGOztBaUJ4Z1FJO0VGckNFO0lBQ0UsZ0JUK0xHO0VOazNQVDtBQUNGOztBaUI5Z1FJO0VGckNFO0lBQ0UsZ0JUZ01HO0VOdTNQVDtBQUNGOztBaUJwaFFJO0VGckNFO0lBQ0UsaUJUaU1JO0VONDNQVjtBQUNGOztBZTFpUUU7RUNyQkEsYUFBYTtFQUNiLGVBQWU7RUFDZixtQkFBMEI7RUFDMUIsa0JBQXlCO0FoQm1rUTNCOztBZTNpUUU7RUFDRSxlQUFlO0VBQ2YsY0FBYztBZjhpUWxCOztBZWhqUUU7O0VBTUksZ0JBQWdCO0VBQ2hCLGVBQWU7QWYraVFyQjs7QWtCam1RRTs7Ozs7O0VBQ0Usa0JBQWtCO0VBQ2xCLFdBQVc7RUFDWCxtQkFBMEI7RUFDMUIsa0JBQXlCO0FsQnltUTdCOztBa0J0bFFNO0VBQ0UsYUFBYTtFQUNiLFlBQVk7RUFDWixlQUFlO0FsQnlsUXZCOztBa0JybFFRO0VGNEJKLGNBQXVCO0VBQ3ZCLGVBQXdCO0FoQjZqUTVCOztBa0IxbFFRO0VGNEJKLGFBQXVCO0VBQ3ZCLGNBQXdCO0FoQmtrUTVCOztBa0IvbFFRO0VGNEJKLG1CQUF1QjtFQUN2QixvQkFBd0I7QWhCdWtRNUI7O0FrQnBtUVE7RUY0QkosYUFBdUI7RUFDdkIsY0FBd0I7QWhCNGtRNUI7O0FrQnptUVE7RUY0QkosYUFBdUI7RUFDdkIsY0FBd0I7QWhCaWxRNUI7O0FrQjltUVE7RUY0QkosbUJBQXVCO0VBQ3ZCLG9CQUF3QjtBaEJzbFE1Qjs7QWtCOW1RTTtFRk1KLGNBQWM7RUFDZCxXQUFXO0VBQ1gsZUFBZTtBaEI0bVFqQjs7QWtCL21RUTtFRlBOLGtCQUFzQztFQUl0QyxtQkFBdUM7QWhCdW5RekM7O0FrQnBuUVE7RUZQTixtQkFBc0M7RUFJdEMsb0JBQXVDO0FoQjRuUXpDOztBa0J6blFRO0VGUE4sYUFBc0M7RUFJdEMsY0FBdUM7QWhCaW9RekM7O0FrQjluUVE7RUZQTixtQkFBc0M7RUFJdEMsb0JBQXVDO0FoQnNvUXpDOztBa0Jub1FRO0VGUE4sbUJBQXNDO0VBSXRDLG9CQUF1QztBaEIyb1F6Qzs7QWtCeG9RUTtFRlBOLGFBQXNDO0VBSXRDLGNBQXVDO0FoQmdwUXpDOztBa0I3b1FRO0VGUE4sbUJBQXNDO0VBSXRDLG9CQUF1QztBaEJxcFF6Qzs7QWtCbHBRUTtFRlBOLG1CQUFzQztFQUl0QyxvQkFBdUM7QWhCMHBRekM7O0FrQnZwUVE7RUZQTixhQUFzQztFQUl0QyxjQUF1QztBaEIrcFF6Qzs7QWtCNXBRUTtFRlBOLG1CQUFzQztFQUl0QyxvQkFBdUM7QWhCb3FRekM7O0FrQmpxUVE7RUZQTixtQkFBc0M7RUFJdEMsb0JBQXVDO0FoQnlxUXpDOztBa0J0cVFRO0VGUE4sY0FBc0M7RUFJdEMsZUFBdUM7QWhCOHFRekM7O0FrQnRxUU07RUFBd0IsU0FBUztBbEIwcVF2Qzs7QWtCeHFRTTtFQUF1QixTWjZLRztBTisvUGhDOztBa0J6cVFRO0VBQXdCLFFBRFo7QWxCOHFRcEI7O0FrQjdxUVE7RUFBd0IsUUFEWjtBbEJrclFwQjs7QWtCanJRUTtFQUF3QixRQURaO0FsQnNyUXBCOztBa0JyclFRO0VBQXdCLFFBRFo7QWxCMHJRcEI7O0FrQnpyUVE7RUFBd0IsUUFEWjtBbEI4clFwQjs7QWtCN3JRUTtFQUF3QixRQURaO0FsQmtzUXBCOztBa0Jqc1FRO0VBQXdCLFFBRFo7QWxCc3NRcEI7O0FrQnJzUVE7RUFBd0IsUUFEWjtBbEIwc1FwQjs7QWtCenNRUTtFQUF3QixRQURaO0FsQjhzUXBCOztBa0I3c1FRO0VBQXdCLFFBRFo7QWxCa3RRcEI7O0FrQmp0UVE7RUFBd0IsU0FEWjtBbEJzdFFwQjs7QWtCcnRRUTtFQUF3QixTQURaO0FsQjB0UXBCOztBa0J6dFFRO0VBQXdCLFNBRFo7QWxCOHRRcEI7O0FrQnZ0UVU7RUZSUixxQkFBOEM7QWhCbXVRaEQ7O0FrQjN0UVU7RUZSUixzQkFBOEM7QWhCdXVRaEQ7O0FrQi90UVU7RUZSUixnQkFBOEM7QWhCMnVRaEQ7O0FrQm51UVU7RUZSUixzQkFBOEM7QWhCK3VRaEQ7O0FrQnZ1UVU7RUZSUixzQkFBOEM7QWhCbXZRaEQ7O0FrQjN1UVU7RUZSUixnQkFBOEM7QWhCdXZRaEQ7O0FrQi91UVU7RUZSUixzQkFBOEM7QWhCMnZRaEQ7O0FrQm52UVU7RUZSUixzQkFBOEM7QWhCK3ZRaEQ7O0FrQnZ2UVU7RUZSUixnQkFBOEM7QWhCbXdRaEQ7O0FrQjN2UVU7RUZSUixzQkFBOEM7QWhCdXdRaEQ7O0FrQi92UVU7RUZSUixzQkFBOEM7QWhCMndRaEQ7O0FpQnR3UUk7RUM5QkU7SUFDRSxhQUFhO0lBQ2IsWUFBWTtJQUNaLGVBQWU7RWxCd3lRckI7RWtCcHlRTTtJRjRCSixjQUF1QjtJQUN2QixlQUF3QjtFaEIyd1ExQjtFa0J4eVFNO0lGNEJKLGFBQXVCO0lBQ3ZCLGNBQXdCO0VoQit3UTFCO0VrQjV5UU07SUY0QkosbUJBQXVCO0lBQ3ZCLG9CQUF3QjtFaEJteFExQjtFa0JoelFNO0lGNEJKLGFBQXVCO0lBQ3ZCLGNBQXdCO0VoQnV4UTFCO0VrQnB6UU07SUY0QkosYUFBdUI7SUFDdkIsY0FBd0I7RWhCMnhRMUI7RWtCeHpRTTtJRjRCSixtQkFBdUI7SUFDdkIsb0JBQXdCO0VoQit4UTFCO0VrQnZ6UUk7SUZNSixjQUFjO0lBQ2QsV0FBVztJQUNYLGVBQWU7RWhCb3pRZjtFa0J2elFNO0lGUE4sa0JBQXNDO0lBSXRDLG1CQUF1QztFaEI4elF2QztFa0IzelFNO0lGUE4sbUJBQXNDO0lBSXRDLG9CQUF1QztFaEJrMFF2QztFa0IvelFNO0lGUE4sYUFBc0M7SUFJdEMsY0FBdUM7RWhCczBRdkM7RWtCbjBRTTtJRlBOLG1CQUFzQztJQUl0QyxvQkFBdUM7RWhCMDBRdkM7RWtCdjBRTTtJRlBOLG1CQUFzQztJQUl0QyxvQkFBdUM7RWhCODBRdkM7RWtCMzBRTTtJRlBOLGFBQXNDO0lBSXRDLGNBQXVDO0VoQmsxUXZDO0VrQi8wUU07SUZQTixtQkFBc0M7SUFJdEMsb0JBQXVDO0VoQnMxUXZDO0VrQm4xUU07SUZQTixtQkFBc0M7SUFJdEMsb0JBQXVDO0VoQjAxUXZDO0VrQnYxUU07SUZQTixhQUFzQztJQUl0QyxjQUF1QztFaEI4MVF2QztFa0IzMVFNO0lGUE4sbUJBQXNDO0lBSXRDLG9CQUF1QztFaEJrMlF2QztFa0IvMVFNO0lGUE4sbUJBQXNDO0lBSXRDLG9CQUF1QztFaEJzMlF2QztFa0JuMlFNO0lGUE4sY0FBc0M7SUFJdEMsZUFBdUM7RWhCMDJRdkM7RWtCbDJRSTtJQUF3QixTQUFTO0VsQnEyUXJDO0VrQm4yUUk7SUFBdUIsU1o2S0c7RU55clE5QjtFa0JuMlFNO0lBQXdCLFFBRFo7RWxCdTJRbEI7RWtCdDJRTTtJQUF3QixRQURaO0VsQjAyUWxCO0VrQnoyUU07SUFBd0IsUUFEWjtFbEI2MlFsQjtFa0I1MlFNO0lBQXdCLFFBRFo7RWxCZzNRbEI7RWtCLzJRTTtJQUF3QixRQURaO0VsQm0zUWxCO0VrQmwzUU07SUFBd0IsUUFEWjtFbEJzM1FsQjtFa0JyM1FNO0lBQXdCLFFBRFo7RWxCeTNRbEI7RWtCeDNRTTtJQUF3QixRQURaO0VsQjQzUWxCO0VrQjMzUU07SUFBd0IsUUFEWjtFbEIrM1FsQjtFa0I5M1FNO0lBQXdCLFFBRFo7RWxCazRRbEI7RWtCajRRTTtJQUF3QixTQURaO0VsQnE0UWxCO0VrQnA0UU07SUFBd0IsU0FEWjtFbEJ3NFFsQjtFa0J2NFFNO0lBQXdCLFNBRFo7RWxCMjRRbEI7RWtCcDRRUTtJRlJSLGNBQTRCO0VoQis0UTVCO0VrQnY0UVE7SUZSUixxQkFBOEM7RWhCazVROUM7RWtCMTRRUTtJRlJSLHNCQUE4QztFaEJxNVE5QztFa0I3NFFRO0lGUlIsZ0JBQThDO0VoQnc1UTlDO0VrQmg1UVE7SUZSUixzQkFBOEM7RWhCMjVROUM7RWtCbjVRUTtJRlJSLHNCQUE4QztFaEI4NVE5QztFa0J0NVFRO0lGUlIsZ0JBQThDO0VoQmk2UTlDO0VrQno1UVE7SUZSUixzQkFBOEM7RWhCbzZROUM7RWtCNTVRUTtJRlJSLHNCQUE4QztFaEJ1NlE5QztFa0IvNVFRO0lGUlIsZ0JBQThDO0VoQjA2UTlDO0VrQmw2UVE7SUZSUixzQkFBOEM7RWhCNjZROUM7RWtCcjZRUTtJRlJSLHNCQUE4QztFaEJnN1E5QztBQUNGOztBaUI1NlFJO0VDOUJFO0lBQ0UsYUFBYTtJQUNiLFlBQVk7SUFDWixlQUFlO0VsQjg4UXJCO0VrQjE4UU07SUY0QkosY0FBdUI7SUFDdkIsZUFBd0I7RWhCaTdRMUI7RWtCOThRTTtJRjRCSixhQUF1QjtJQUN2QixjQUF3QjtFaEJxN1ExQjtFa0JsOVFNO0lGNEJKLG1CQUF1QjtJQUN2QixvQkFBd0I7RWhCeTdRMUI7RWtCdDlRTTtJRjRCSixhQUF1QjtJQUN2QixjQUF3QjtFaEI2N1ExQjtFa0IxOVFNO0lGNEJKLGFBQXVCO0lBQ3ZCLGNBQXdCO0VoQmk4UTFCO0VrQjk5UU07SUY0QkosbUJBQXVCO0lBQ3ZCLG9CQUF3QjtFaEJxOFExQjtFa0I3OVFJO0lGTUosY0FBYztJQUNkLFdBQVc7SUFDWCxlQUFlO0VoQjA5UWY7RWtCNzlRTTtJRlBOLGtCQUFzQztJQUl0QyxtQkFBdUM7RWhCbytRdkM7RWtCaitRTTtJRlBOLG1CQUFzQztJQUl0QyxvQkFBdUM7RWhCdytRdkM7RWtCcitRTTtJRlBOLGFBQXNDO0lBSXRDLGNBQXVDO0VoQjQrUXZDO0VrQnorUU07SUZQTixtQkFBc0M7SUFJdEMsb0JBQXVDO0VoQmcvUXZDO0VrQjcrUU07SUZQTixtQkFBc0M7SUFJdEMsb0JBQXVDO0VoQm8vUXZDO0VrQmovUU07SUZQTixhQUFzQztJQUl0QyxjQUF1QztFaEJ3L1F2QztFa0JyL1FNO0lGUE4sbUJBQXNDO0lBSXRDLG9CQUF1QztFaEI0L1F2QztFa0J6L1FNO0lGUE4sbUJBQXNDO0lBSXRDLG9CQUF1QztFaEJnZ1J2QztFa0I3L1FNO0lGUE4sYUFBc0M7SUFJdEMsY0FBdUM7RWhCb2dSdkM7RWtCamdSTTtJRlBOLG1CQUFzQztJQUl0QyxvQkFBdUM7RWhCd2dSdkM7RWtCcmdSTTtJRlBOLG1CQUFzQztJQUl0QyxvQkFBdUM7RWhCNGdSdkM7RWtCemdSTTtJRlBOLGNBQXNDO0lBSXRDLGVBQXVDO0VoQmdoUnZDO0VrQnhnUkk7SUFBd0IsU0FBUztFbEIyZ1JyQztFa0J6Z1JJO0lBQXVCLFNaNktHO0VOKzFROUI7RWtCemdSTTtJQUF3QixRQURaO0VsQjZnUmxCO0VrQjVnUk07SUFBd0IsUUFEWjtFbEJnaFJsQjtFa0IvZ1JNO0lBQXdCLFFBRFo7RWxCbWhSbEI7RWtCbGhSTTtJQUF3QixRQURaO0VsQnNoUmxCO0VrQnJoUk07SUFBd0IsUUFEWjtFbEJ5aFJsQjtFa0J4aFJNO0lBQXdCLFFBRFo7RWxCNGhSbEI7RWtCM2hSTTtJQUF3QixRQURaO0VsQitoUmxCO0VrQjloUk07SUFBd0IsUUFEWjtFbEJraVJsQjtFa0JqaVJNO0lBQXdCLFFBRFo7RWxCcWlSbEI7RWtCcGlSTTtJQUF3QixRQURaO0VsQndpUmxCO0VrQnZpUk07SUFBd0IsU0FEWjtFbEIyaVJsQjtFa0IxaVJNO0lBQXdCLFNBRFo7RWxCOGlSbEI7RWtCN2lSTTtJQUF3QixTQURaO0VsQmlqUmxCO0VrQjFpUlE7SUZSUixjQUE0QjtFaEJxalI1QjtFa0I3aVJRO0lGUlIscUJBQThDO0VoQndqUjlDO0VrQmhqUlE7SUZSUixzQkFBOEM7RWhCMmpSOUM7RWtCbmpSUTtJRlJSLGdCQUE4QztFaEI4alI5QztFa0J0alJRO0lGUlIsc0JBQThDO0VoQmlrUjlDO0VrQnpqUlE7SUZSUixzQkFBOEM7RWhCb2tSOUM7RWtCNWpSUTtJRlJSLGdCQUE4QztFaEJ1a1I5QztFa0IvalJRO0lGUlIsc0JBQThDO0VoQjBrUjlDO0VrQmxrUlE7SUZSUixzQkFBOEM7RWhCNmtSOUM7RWtCcmtSUTtJRlJSLGdCQUE4QztFaEJnbFI5QztFa0J4a1JRO0lGUlIsc0JBQThDO0VoQm1sUjlDO0VrQjNrUlE7SUZSUixzQkFBOEM7RWhCc2xSOUM7QUFDRjs7QWlCbGxSSTtFQzlCRTtJQUNFLGFBQWE7SUFDYixZQUFZO0lBQ1osZUFBZTtFbEJvblJyQjtFa0JoblJNO0lGNEJKLGNBQXVCO0lBQ3ZCLGVBQXdCO0VoQnVsUjFCO0VrQnBuUk07SUY0QkosYUFBdUI7SUFDdkIsY0FBd0I7RWhCMmxSMUI7RWtCeG5STTtJRjRCSixtQkFBdUI7SUFDdkIsb0JBQXdCO0VoQitsUjFCO0VrQjVuUk07SUY0QkosYUFBdUI7SUFDdkIsY0FBd0I7RWhCbW1SMUI7RWtCaG9STTtJRjRCSixhQUF1QjtJQUN2QixjQUF3QjtFaEJ1bVIxQjtFa0Jwb1JNO0lGNEJKLG1CQUF1QjtJQUN2QixvQkFBd0I7RWhCMm1SMUI7RWtCbm9SSTtJRk1KLGNBQWM7SUFDZCxXQUFXO0lBQ1gsZUFBZTtFaEJnb1JmO0VrQm5vUk07SUZQTixrQkFBc0M7SUFJdEMsbUJBQXVDO0VoQjBvUnZDO0VrQnZvUk07SUZQTixtQkFBc0M7SUFJdEMsb0JBQXVDO0VoQjhvUnZDO0VrQjNvUk07SUZQTixhQUFzQztJQUl0QyxjQUF1QztFaEJrcFJ2QztFa0Ivb1JNO0lGUE4sbUJBQXNDO0lBSXRDLG9CQUF1QztFaEJzcFJ2QztFa0JucFJNO0lGUE4sbUJBQXNDO0lBSXRDLG9CQUF1QztFaEIwcFJ2QztFa0J2cFJNO0lGUE4sYUFBc0M7SUFJdEMsY0FBdUM7RWhCOHBSdkM7RWtCM3BSTTtJRlBOLG1CQUFzQztJQUl0QyxvQkFBdUM7RWhCa3FSdkM7RWtCL3BSTTtJRlBOLG1CQUFzQztJQUl0QyxvQkFBdUM7RWhCc3FSdkM7RWtCbnFSTTtJRlBOLGFBQXNDO0lBSXRDLGNBQXVDO0VoQjBxUnZDO0VrQnZxUk07SUZQTixtQkFBc0M7SUFJdEMsb0JBQXVDO0VoQjhxUnZDO0VrQjNxUk07SUZQTixtQkFBc0M7SUFJdEMsb0JBQXVDO0VoQmtyUnZDO0VrQi9xUk07SUZQTixjQUFzQztJQUl0QyxlQUF1QztFaEJzclJ2QztFa0I5cVJJO0lBQXdCLFNBQVM7RWxCaXJSckM7RWtCL3FSSTtJQUF1QixTWjZLRztFTnFnUjlCO0VrQi9xUk07SUFBd0IsUUFEWjtFbEJtclJsQjtFa0JsclJNO0lBQXdCLFFBRFo7RWxCc3JSbEI7RWtCcnJSTTtJQUF3QixRQURaO0VsQnlyUmxCO0VrQnhyUk07SUFBd0IsUUFEWjtFbEI0clJsQjtFa0IzclJNO0lBQXdCLFFBRFo7RWxCK3JSbEI7RWtCOXJSTTtJQUF3QixRQURaO0VsQmtzUmxCO0VrQmpzUk07SUFBd0IsUUFEWjtFbEJxc1JsQjtFa0Jwc1JNO0lBQXdCLFFBRFo7RWxCd3NSbEI7RWtCdnNSTTtJQUF3QixRQURaO0VsQjJzUmxCO0VrQjFzUk07SUFBd0IsUUFEWjtFbEI4c1JsQjtFa0I3c1JNO0lBQXdCLFNBRFo7RWxCaXRSbEI7RWtCaHRSTTtJQUF3QixTQURaO0VsQm90UmxCO0VrQm50Uk07SUFBd0IsU0FEWjtFbEJ1dFJsQjtFa0JodFJRO0lGUlIsY0FBNEI7RWhCMnRSNUI7RWtCbnRSUTtJRlJSLHFCQUE4QztFaEI4dFI5QztFa0J0dFJRO0lGUlIsc0JBQThDO0VoQml1UjlDO0VrQnp0UlE7SUZSUixnQkFBOEM7RWhCb3VSOUM7RWtCNXRSUTtJRlJSLHNCQUE4QztFaEJ1dVI5QztFa0IvdFJRO0lGUlIsc0JBQThDO0VoQjB1UjlDO0VrQmx1UlE7SUZSUixnQkFBOEM7RWhCNnVSOUM7RWtCcnVSUTtJRlJSLHNCQUE4QztFaEJndlI5QztFa0J4dVJRO0lGUlIsc0JBQThDO0VoQm12UjlDO0VrQjN1UlE7SUZSUixnQkFBOEM7RWhCc3ZSOUM7RWtCOXVSUTtJRlJSLHNCQUE4QztFaEJ5dlI5QztFa0JqdlJRO0lGUlIsc0JBQThDO0VoQjR2UjlDO0FBQ0Y7O0FpQnh2Ukk7RUM5QkU7SUFDRSxhQUFhO0lBQ2IsWUFBWTtJQUNaLGVBQWU7RWxCMHhSckI7RWtCdHhSTTtJRjRCSixjQUF1QjtJQUN2QixlQUF3QjtFaEI2dlIxQjtFa0IxeFJNO0lGNEJKLGFBQXVCO0lBQ3ZCLGNBQXdCO0VoQml3UjFCO0VrQjl4Uk07SUY0QkosbUJBQXVCO0lBQ3ZCLG9CQUF3QjtFaEJxd1IxQjtFa0JseVJNO0lGNEJKLGFBQXVCO0lBQ3ZCLGNBQXdCO0VoQnl3UjFCO0VrQnR5Uk07SUY0QkosYUFBdUI7SUFDdkIsY0FBd0I7RWhCNndSMUI7RWtCMXlSTTtJRjRCSixtQkFBdUI7SUFDdkIsb0JBQXdCO0VoQml4UjFCO0VrQnp5Ukk7SUZNSixjQUFjO0lBQ2QsV0FBVztJQUNYLGVBQWU7RWhCc3lSZjtFa0J6eVJNO0lGUE4sa0JBQXNDO0lBSXRDLG1CQUF1QztFaEJnelJ2QztFa0I3eVJNO0lGUE4sbUJBQXNDO0lBSXRDLG9CQUF1QztFaEJvelJ2QztFa0JqelJNO0lGUE4sYUFBc0M7SUFJdEMsY0FBdUM7RWhCd3pSdkM7RWtCcnpSTTtJRlBOLG1CQUFzQztJQUl0QyxvQkFBdUM7RWhCNHpSdkM7RWtCenpSTTtJRlBOLG1CQUFzQztJQUl0QyxvQkFBdUM7RWhCZzBSdkM7RWtCN3pSTTtJRlBOLGFBQXNDO0lBSXRDLGNBQXVDO0VoQm8wUnZDO0VrQmowUk07SUZQTixtQkFBc0M7SUFJdEMsb0JBQXVDO0VoQncwUnZDO0VrQnIwUk07SUZQTixtQkFBc0M7SUFJdEMsb0JBQXVDO0VoQjQwUnZDO0VrQnowUk07SUZQTixhQUFzQztJQUl0QyxjQUF1QztFaEJnMVJ2QztFa0I3MFJNO0lGUE4sbUJBQXNDO0lBSXRDLG9CQUF1QztFaEJvMVJ2QztFa0JqMVJNO0lGUE4sbUJBQXNDO0lBSXRDLG9CQUF1QztFaEJ3MVJ2QztFa0JyMVJNO0lGUE4sY0FBc0M7SUFJdEMsZUFBdUM7RWhCNDFSdkM7RWtCcDFSSTtJQUF3QixTQUFTO0VsQnUxUnJDO0VrQnIxUkk7SUFBdUIsU1o2S0c7RU4ycVI5QjtFa0JyMVJNO0lBQXdCLFFBRFo7RWxCeTFSbEI7RWtCeDFSTTtJQUF3QixRQURaO0VsQjQxUmxCO0VrQjMxUk07SUFBd0IsUUFEWjtFbEIrMVJsQjtFa0I5MVJNO0lBQXdCLFFBRFo7RWxCazJSbEI7RWtCajJSTTtJQUF3QixRQURaO0VsQnEyUmxCO0VrQnAyUk07SUFBd0IsUUFEWjtFbEJ3MlJsQjtFa0J2MlJNO0lBQXdCLFFBRFo7RWxCMjJSbEI7RWtCMTJSTTtJQUF3QixRQURaO0VsQjgyUmxCO0VrQjcyUk07SUFBd0IsUUFEWjtFbEJpM1JsQjtFa0JoM1JNO0lBQXdCLFFBRFo7RWxCbzNSbEI7RWtCbjNSTTtJQUF3QixTQURaO0VsQnUzUmxCO0VrQnQzUk07SUFBd0IsU0FEWjtFbEIwM1JsQjtFa0J6M1JNO0lBQXdCLFNBRFo7RWxCNjNSbEI7RWtCdDNSUTtJRlJSLGNBQTRCO0VoQmk0UjVCO0VrQnozUlE7SUZSUixxQkFBOEM7RWhCbzRSOUM7RWtCNTNSUTtJRlJSLHNCQUE4QztFaEJ1NFI5QztFa0IvM1JRO0lGUlIsZ0JBQThDO0VoQjA0UjlDO0VrQmw0UlE7SUZSUixzQkFBOEM7RWhCNjRSOUM7RWtCcjRSUTtJRlJSLHNCQUE4QztFaEJnNVI5QztFa0J4NFJRO0lGUlIsZ0JBQThDO0VoQm01UjlDO0VrQjM0UlE7SUZSUixzQkFBOEM7RWhCczVSOUM7RWtCOTRSUTtJRlJSLHNCQUE4QztFaEJ5NVI5QztFa0JqNVJRO0lGUlIsZ0JBQThDO0VoQjQ1UjlDO0VrQnA1UlE7SUZSUixzQkFBOEM7RWhCKzVSOUM7RWtCdjVSUTtJRlJSLHNCQUE4QztFaEJrNlI5QztBQUNGOztBbUJ0OVJBO0VBQ0UsV0FBVztFQUNYLG1CYmtJVztFYWpJWCxjYlNnQjtBTmc5UmxCOztBbUI1OVJBOztFQVFJLGdCYnNWZ0M7RWFyVmhDLG1CQUFtQjtFQUNuQiw2QmJKYztBTjY5UmxCOztBbUJuK1JBO0VBY0ksc0JBQXNCO0VBQ3RCLGdDYlRjO0FOaytSbEI7O0FtQngrUkE7RUFtQkksNkJiYmM7QU5zK1JsQjs7QW1CaDlSQTs7RUFHSSxlYmdVK0I7QU5rcFJuQzs7QW1CejhSQTtFQUNFLHlCYm5DZ0I7QU4rK1JsQjs7QW1CNzhSQTs7RUFLSSx5QmJ2Q2M7QU5vL1JsQjs7QW1CbDlSQTs7RUFXTSx3QkFBNEM7QW5CNDhSbEQ7O0FtQnY4UkE7Ozs7RUFLSSxTQUFTO0FuQnk4UmI7O0FtQmo4UkE7RUFFSSxxQ2IxRFc7QU42L1JmOztBUWxnU0U7RVcyRUksY2J2RVk7RWF3RVosc0NidkVTO0FOa2dTZjs7QW9COWdTRTs7O0VBSUkseUJDc0Y0RDtBckIwN1JsRTs7QW9CcGhTRTs7OztFQVlNLHFCQzhFMEQ7QXJCaThSbEU7O0FRcGhTRTtFWWlCTSx5QkFKc0M7QXBCMmdTOUM7O0FvQjVnU0U7O0VBU1EseUJBUm9DO0FwQmdoUzlDOztBb0JwaVNFOzs7RUFJSSx5QkNzRjREO0FyQmc5UmxFOztBb0IxaVNFOzs7O0VBWU0scUJDOEUwRDtBckJ1OVJsRTs7QVExaVNFO0VZaUJNLHlCQUpzQztBcEJpaVM5Qzs7QW9CbGlTRTs7RUFTUSx5QkFSb0M7QXBCc2lTOUM7O0FvQjFqU0U7OztFQUlJLHlCQ3NGNEQ7QXJCcytSbEU7O0FvQmhrU0U7Ozs7RUFZTSxxQkM4RTBEO0FyQjYrUmxFOztBUWhrU0U7RVlpQk0seUJBSnNDO0FwQnVqUzlDOztBb0J4alNFOztFQVNRLHlCQVJvQztBcEI0alM5Qzs7QW9CaGxTRTs7O0VBSUkseUJDc0Y0RDtBckI0L1JsRTs7QW9CdGxTRTs7OztFQVlNLHFCQzhFMEQ7QXJCbWdTbEU7O0FRdGxTRTtFWWlCTSx5QkFKc0M7QXBCNmtTOUM7O0FvQjlrU0U7O0VBU1EseUJBUm9DO0FwQmtsUzlDOztBb0J0bVNFOzs7RUFJSSx5QkNzRjREO0FyQmtoU2xFOztBb0I1bVNFOzs7O0VBWU0scUJDOEUwRDtBckJ5aFNsRTs7QVE1bVNFO0VZaUJNLHlCQUpzQztBcEJtbVM5Qzs7QW9CcG1TRTs7RUFTUSx5QkFSb0M7QXBCd21TOUM7O0FvQjVuU0U7OztFQUlJLHlCQ3NGNEQ7QXJCd2lTbEU7O0FvQmxvU0U7Ozs7RUFZTSxxQkM4RTBEO0FyQitpU2xFOztBUWxvU0U7RVlpQk0seUJBSnNDO0FwQnluUzlDOztBb0IxblNFOztFQVNRLHlCQVJvQztBcEI4blM5Qzs7QW9CbHBTRTs7O0VBSUkseUJDc0Y0RDtBckI4alNsRTs7QW9CeHBTRTs7OztFQVlNLHFCQzhFMEQ7QXJCcWtTbEU7O0FReHBTRTtFWWlCTSx5QkFKc0M7QXBCK29TOUM7O0FvQmhwU0U7O0VBU1EseUJBUm9DO0FwQm9wUzlDOztBb0J4cVNFOzs7RUFJSSx5QkNzRjREO0FyQm9sU2xFOztBb0I5cVNFOzs7O0VBWU0scUJDOEUwRDtBckIybFNsRTs7QVE5cVNFO0VZaUJNLHlCQUpzQztBcEJxcVM5Qzs7QW9CdHFTRTs7RUFTUSx5QkFSb0M7QXBCMHFTOUM7O0FvQjlyU0U7OztFQUlJLHNDZFFTO0FOd3JTZjs7QVE3clNFO0VZaUJNLHNDQUpzQztBcEJvclM5Qzs7QW9CcnJTRTs7RUFTUSxzQ0FSb0M7QXBCeXJTOUM7O0FtQm5tU0E7RUFHTSxXYjNHUztFYTRHVCx5QmJwR1k7RWFxR1oscUJibVFxRDtBTmkyUjNEOztBbUJ6bVNBO0VBV00sY2I1R1k7RWE2R1oseUJibEhZO0VhbUhaLHFCYmxIWTtBTm90U2xCOztBbUI3bFNBO0VBQ0UsV2IzSGE7RWE0SGIseUJicEhnQjtBTm90U2xCOztBbUJsbVNBOzs7RUFPSSxxQmIrT3VEO0FOazNSM0Q7O0FtQnhtU0E7RUFXSSxTQUFTO0FuQmltU2I7O0FtQjVtU0E7RUFnQk0sMkNiMUlTO0FOMHVTZjs7QVFydVNFO0VXNElNLFdiakpPO0Vha0pQLDRDYmxKTztBTit1U2Y7O0FpQjdxU0k7RUVpR0E7SUFFSSxjQUFjO0lBQ2QsV0FBVztJQUNYLGdCQUFnQjtJQUNoQixpQ0FBaUM7RW5CK2tTdkM7RW1CcGxTRztJQVNLLFNBQVM7RW5COGtTakI7QUFDRjs7QWlCenJTSTtFRWlHQTtJQUVJLGNBQWM7SUFDZCxXQUFXO0lBQ1gsZ0JBQWdCO0lBQ2hCLGlDQUFpQztFbkIybFN2QztFbUJobVNHO0lBU0ssU0FBUztFbkIwbFNqQjtBQUNGOztBaUJyc1NJO0VFaUdBO0lBRUksY0FBYztJQUNkLFdBQVc7SUFDWCxnQkFBZ0I7SUFDaEIsaUNBQWlDO0VuQnVtU3ZDO0VtQjVtU0c7SUFTSyxTQUFTO0VuQnNtU2pCO0FBQ0Y7O0FpQmp0U0k7RUVpR0E7SUFFSSxjQUFjO0lBQ2QsV0FBVztJQUNYLGdCQUFnQjtJQUNoQixpQ0FBaUM7RW5CbW5TdkM7RW1CeG5TRztJQVNLLFNBQVM7RW5Ca25TakI7QUFDRjs7QW1Cam9TQTtFQU9RLGNBQWM7RUFDZCxXQUFXO0VBQ1gsZ0JBQWdCO0VBQ2hCLGlDQUFpQztBbkI4blN6Qzs7QW1CeG9TQTtFQWNVLFNBQVM7QW5COG5TbkI7O0FzQjN5U0E7RUFDRSxjQUFjO0VBQ2QsV0FBVztFQUNYLG1DRHVHOEQ7RUN0RzlELHlCaEI0WGtDO0VDdlE5QixlQXRDWTtFZTVFaEIsZ0JoQnNSK0I7RWdCclIvQixnQmhCMFIrQjtFZ0J6Ui9CLGNoQkRnQjtFZ0JFaEIsc0JoQlRhO0VnQlViLDRCQUE0QjtFQUM1Qix5QmhCUGdCO0VPTmQsc0JQNk9nQztFaUI1TzlCLHdFakJvZjRGO0FOdTBSbEc7O0F1QnR6U0k7RURMSjtJQ01NLGdCQUFnQjtFdkIwelNwQjtBQUNGOztBc0JqMFNBO0VBc0JJLDZCQUE2QjtFQUM3QixTQUFTO0F0Qit5U2I7O0FzQnQwU0E7RUE0Qkksa0JBQWtCO0VBQ2xCLDBCaEJyQmM7QU5tMFNsQjs7QXdCcDBTRTtFQUNFLGNsQkFjO0VrQkNkLHNCbEJSVztFa0JTWCxxQmxCd2RzRTtFa0J2ZHRFLFVBQVU7RUFLUixnRGxCY1c7QU5xelNqQjs7QXNCbjFTQTtFQXFDSSxjaEI5QmM7RWdCZ0NkLFVBQVU7QXRCaXpTZDs7QXNCeDFTQTtFQXFDSSxjaEI5QmM7RWdCZ0NkLFVBQVU7QXRCaXpTZDs7QXNCeDFTQTtFQXFDSSxjaEI5QmM7RWdCZ0NkLFVBQVU7QXRCaXpTZDs7QXNCeDFTQTtFQXFDSSxjaEI5QmM7RWdCZ0NkLFVBQVU7QXRCaXpTZDs7QXNCeDFTQTtFQXFDSSxjaEI5QmM7RWdCZ0NkLFVBQVU7QXRCaXpTZDs7QXNCeDFTQTtFQWlESSx5QmhCOUNjO0VnQmdEZCxVQUFVO0F0QjB5U2Q7O0FzQnR5U0E7RUFPSSxjaEJ0RGM7RWdCdURkLHNCaEI5RFc7QU5pMlNmOztBc0I5eFNBOztFQUVFLGNBQWM7RUFDZCxXQUFXO0F0Qml5U2I7O0FzQnZ4U0E7RUFDRSxpQ0R3QjhEO0VDdkI5RCxvQ0R1QjhEO0VDdEI5RCxnQkFBZ0I7RWZsQmQsa0JBQVc7RWVvQmIsZ0JoQjRNK0I7QU44a1NqQzs7QXNCdnhTQTtFQUNFLCtCRGdCOEQ7RUNmOUQsa0NEZThEO0VkZTFELGtCQXRDWTtFZVVoQixnQmhCeUkrQjtBTmlwU2pDOztBc0J2eFNBO0VBQ0UsZ0NEUzhEO0VDUjlELG1DRFE4RDtFZGUxRCxtQkF0Q1k7RWVpQmhCLGdCaEJtSStCO0FOdXBTakM7O0FzQmp4U0E7RUFDRSxjQUFjO0VBQ2QsV0FBVztFQUNYLG1CQUEyQjtFQUMzQixnQkFBZ0I7RWZRWixlQXRDWTtFZWdDaEIsZ0JoQitLK0I7RWdCOUsvQixjaEIxR2dCO0VnQjJHaEIsNkJBQTZCO0VBQzdCLHlCQUF5QjtFQUN6QixtQkFBbUM7QXRCb3hTckM7O0FzQjl4U0E7RUFjSSxnQkFBZ0I7RUFDaEIsZUFBZTtBdEJveFNuQjs7QXNCeHdTQTtFQUNFLGtDRC9COEQ7RUNnQzlELHVCaEJnUWlDO0VDalI3QixtQkF0Q1k7RWV5RGhCLGdCaEIyRitCO0VPeE83QixxQlArTytCO0FOMHFTbkM7O0FzQnh3U0E7RUFDRSxnQ0R2QzhEO0VDd0M5RCxvQmhCNlBnQztFQ3RSNUIsa0JBdENZO0VlaUVoQixnQmhCa0YrQjtFT3ZPN0IscUJQOE8rQjtBTm1yU25DOztBc0J2d1NBO0VBR0ksWUFBWTtBdEJ3d1NoQjs7QXNCcHdTQTtFQUNFLFlBQVk7QXRCdXdTZDs7QXNCL3ZTQTtFQUNFLG1CaEJzVjBDO0FONDZSNUM7O0FzQi92U0E7RUFDRSxjQUFjO0VBQ2QsbUJoQnVVNEM7QU4yN1I5Qzs7QXNCMXZTQTtFQUNFLGFBQWE7RUFDYixlQUFlO0VBQ2Ysa0JBQTBDO0VBQzFDLGlCQUF5QztBdEI2dlMzQzs7QXNCandTQTs7RUFRSSxrQkFBMEM7RUFDMUMsaUJBQXlDO0F0Qjh2UzdDOztBc0JydlNBO0VBQ0Usa0JBQWtCO0VBQ2xCLGNBQWM7RUFDZCxxQmhCNFM2QztBTjQ4Ui9DOztBc0JydlNBO0VBQ0Usa0JBQWtCO0VBQ2xCLGtCaEJ3UzJDO0VnQnZTM0MscUJoQnNTNkM7QU5rOVIvQzs7QXNCM3ZTQTs7RUFRSSxjaEJoTmM7QU53OFNsQjs7QXNCcHZTQTtFQUNFLGdCQUFnQjtBdEJ1dlNsQjs7QXNCcHZTQTtFQUNFLG9CQUFvQjtFQUNwQixtQkFBbUI7RUFDbkIsZUFBZTtFQUNmLHFCaEJ5UjRDO0FOODlSOUM7O0FzQjN2U0E7RUFRSSxnQkFBZ0I7RUFDaEIsYUFBYTtFQUNiLHVCaEJvUjRDO0VnQm5SNUMsY0FBYztBdEJ1dlNsQjs7QXdCMzdTRTtFQUNFLGFBQWE7RUFDYixXQUFXO0VBQ1gsbUJsQjZjMEM7RUNwYjFDLGNBQVc7RWlCdkJYLGNsQk5hO0FObzhTakI7O0F3QjM3U0U7RUFDRSxrQkFBa0I7RUFDbEIsU0FBUztFQUNULFVBQVU7RUFDVixhQUFhO0VBQ2IsZUFBZTtFQUNmLHVCbEJteUJxQztFa0JseUJyQyxpQkFBaUI7RWpCb0VmLG1CQXRDWTtFaUI1QmQsZ0JsQjJPNkI7RWtCMU83QixXbEJ2RFc7RWtCd0RYLHdDbEJwQmE7RU90Q2Isc0JQNk9nQztBTjR3U3BDOztBd0I5OVNJOzs7O0VBc0NFLGNBQWM7QXhCKzdTcEI7O0F3QnIrU0k7RUE0Q0UscUJsQmpDVztFa0JvQ1Qsb0NIaUN3RDtFR2hDeEQsaVJIcENtSTtFR3FDbkksNEJBQTRCO0VBQzVCLDJEQUE2RDtFQUM3RCxnRUg2QndEO0FyQjg1U2hFOztBd0I5K1NJO0VBdURJLHFCbEI1Q1M7RWtCNkNULGdEbEI3Q1M7QU53K1NqQjs7QXdCbi9TSTtFQWlFSSxvQ0hld0Q7RUdkeEQsa0ZIY3dEO0FyQnc2U2hFOztBd0J4L1NJO0VBeUVFLHFCbEI5RFc7RWtCaUVULHVDSEl3RDtFR0h4RCx1akJBQThKO0F4Qmk3U3RLOztBd0I5L1NJO0VBaUZJLHFCbEJ0RVM7RWtCdUVULGdEbEJ2RVM7QU53L1NqQjs7QXdCbmdUSTtFQTBGSSxjbEIvRVM7QU40L1NqQjs7QXdCdmdUSTs7O0VBK0ZJLGNBQWM7QXhCODZTdEI7O0F3QjdnVEk7RUF1R0ksY2xCNUZTO0FOc2dUakI7O0F3QmpoVEk7RUEwR00scUJsQi9GTztBTjBnVGpCOztBd0JyaFRJO0VBZ0hNLHFCQUFrQztFQzFJeEMseUJEMkkrQztBeEJ5NlNuRDs7QXdCMWhUSTtFQXVITSxnRGxCNUdPO0FObWhUakI7O0F3QjloVEk7RUEySE0scUJsQmhITztBTnVoVGpCOztBd0JsaVRJO0VBcUlJLHFCbEIxSFM7QU4yaFRqQjs7QXdCdGlUSTtFQTBJTSxxQmxCL0hPO0VrQmdJUCxnRGxCaElPO0FOZ2lUakI7O0F3Qi9oVEU7RUFDRSxhQUFhO0VBQ2IsV0FBVztFQUNYLG1CbEI2YzBDO0VDcGIxQyxjQUFXO0VpQnZCWCxjbEJUYTtBTjJpVGpCOztBd0IvaFRFO0VBQ0Usa0JBQWtCO0VBQ2xCLFNBQVM7RUFDVCxVQUFVO0VBQ1YsYUFBYTtFQUNiLGVBQWU7RUFDZix1QmxCbXlCcUM7RWtCbHlCckMsaUJBQWlCO0VqQm9FZixtQkF0Q1k7RWlCNUJkLGdCbEIyTzZCO0VrQjFPN0IsV2xCdkRXO0VrQndEWCx3Q2xCdkJhO0VPbkNiLHNCUDZPZ0M7QU5nM1NwQzs7QXdCbGtUSTs7OztFQXNDRSxjQUFjO0F4Qm1pVHBCOztBd0J6a1RJO0VBNENFLHFCbEJwQ1c7RWtCdUNULG9DSGlDd0Q7RUdoQ3hELDRVSHBDbUk7RUdxQ25JLDRCQUE0QjtFQUM1QiwyREFBNkQ7RUFDN0QsZ0VINkJ3RDtBckJrZ1RoRTs7QXdCbGxUSTtFQXVESSxxQmxCL0NTO0VrQmdEVCxnRGxCaERTO0FOK2tUakI7O0F3QnZsVEk7RUFpRUksb0NIZXdEO0VHZHhELGtGSGN3RDtBckI0Z1RoRTs7QXdCNWxUSTtFQXlFRSxxQmxCakVXO0VrQm9FVCx1Q0hJd0Q7RUdIeEQsa25CQUE4SjtBeEJxaFR0Szs7QXdCbG1USTtFQWlGSSxxQmxCekVTO0VrQjBFVCxnRGxCMUVTO0FOK2xUakI7O0F3QnZtVEk7RUEwRkksY2xCbEZTO0FObW1UakI7O0F3QjNtVEk7OztFQStGSSxjQUFjO0F4QmtoVHRCOztBd0JqblRJO0VBdUdJLGNsQi9GUztBTjZtVGpCOztBd0JyblRJO0VBMEdNLHFCbEJsR087QU5pblRqQjs7QXdCem5USTtFQWdITSxxQkFBa0M7RUMxSXhDLHlCRDJJK0M7QXhCNmdUbkQ7O0F3QjluVEk7RUF1SE0sZ0RsQi9HTztBTjBuVGpCOztBd0Jsb1RJO0VBMkhNLHFCbEJuSE87QU44blRqQjs7QXdCdG9USTtFQXFJSSxxQmxCN0hTO0FOa29UakI7O0F3QjFvVEk7RUEwSU0scUJsQmxJTztFa0JtSVAsZ0RsQm5JTztBTnVvVGpCOztBc0J0NlNBO0VBQ0UsYUFBYTtFQUNiLG1CQUFtQjtFQUNuQixtQkFBbUI7QXRCeTZTckI7O0FzQjU2U0E7RUFTSSxXQUFXO0F0QnU2U2Y7O0FpQjduVEk7RUs2TUo7SUFlTSxhQUFhO0lBQ2IsbUJBQW1CO0lBQ25CLHVCQUF1QjtJQUN2QixnQkFBZ0I7RXRCczZTcEI7RXNCeDdTRjtJQXVCTSxhQUFhO0lBQ2IsY0FBYztJQUNkLG1CQUFtQjtJQUNuQixtQkFBbUI7SUFDbkIsZ0JBQWdCO0V0Qm82U3BCO0VzQi83U0Y7SUFnQ00scUJBQXFCO0lBQ3JCLFdBQVc7SUFDWCxzQkFBc0I7RXRCazZTMUI7RXNCcDhTRjtJQXVDTSxxQkFBcUI7RXRCZzZTekI7RXNCdjhTRjs7SUE0Q00sV0FBVztFdEIrNVNmO0VzQjM4U0Y7SUFrRE0sYUFBYTtJQUNiLG1CQUFtQjtJQUNuQix1QkFBdUI7SUFDdkIsV0FBVztJQUNYLGVBQWU7RXRCNDVTbkI7RXNCbDlTRjtJQXlETSxrQkFBa0I7SUFDbEIsY0FBYztJQUNkLGFBQWE7SUFDYixxQmhCMkx3QztJZ0IxTHhDLGNBQWM7RXRCNDVTbEI7RXNCejlTRjtJQWlFTSxtQkFBbUI7SUFDbkIsdUJBQXVCO0V0QjI1UzNCO0VzQjc5U0Y7SUFxRU0sZ0JBQWdCO0V0QjI1U3BCO0FBQ0Y7O0EwQnB1VEE7RUFDRSxxQkFBcUI7RUFFckIsZ0JwQjBSK0I7RW9CelIvQixjcEJNZ0I7RW9CTGhCLGtCQUFrQjtFQUVsQixzQkFBc0I7RUFDdEIsZUFBc0Q7RUFDdEQseUJBQWlCO0tBQWpCLHNCQUFpQjtNQUFqQixxQkFBaUI7VUFBakIsaUJBQWlCO0VBQ2pCLDZCQUE2QjtFQUM3Qiw2QkFBMkM7RUN1RjNDLHlCckI4UmtDO0VDdlE5QixlQXRDWTtFb0JpQmhCLGdCckI4TCtCO0VPblM3QixzQlA2T2dDO0VpQjVPOUIscUlqQjZiNkk7QU53elNuSjs7QXVCaHZUSTtFR0xKO0lITU0sZ0JBQWdCO0V2Qm92VHBCO0FBQ0Y7O0FRcnZURTtFa0JVRSxjcEJOYztFb0JPZCxxQkFBcUI7QTFCK3VUekI7O0EwQmh3VEE7RUFzQkksVUFBVTtFQUNWLGdEcEJPYTtBTnV1VGpCOztBMEJyd1RBO0VBNkJJLGFwQm9aNkI7QU53MVNqQzs7QTBCN3RUQTs7RUFFRSxvQkFBb0I7QTFCZ3VUdEI7O0EwQnZ0VEU7RUN2REEsV3JCQ2E7RW1CRFgseUJuQjhCYTtFcUI1QmYscUJyQjRCZTtBTnN2VGpCOztBUTl3VEU7RW1CQUUsV3JCTFc7RW1CRFgseUJFRG9GO0VBU3BGLHFCQVR5SDtBM0IyeFQ3SDs7QTJCL3dURTtFQUVFLFdyQlpXO0VtQkRYLHlCRURvRjtFQWdCcEYscUJBaEJ5SDtFQXFCdkgsZ0RBQWlGO0EzQjZ3VHZGOztBMkJ4d1RFO0VBRUUsV3JCMUJXO0VxQjJCWCx5QnJCRWE7RXFCRGIscUJyQkNhO0FOeXdUakI7O0EyQm53VEU7O0VBR0UsV3JCdENXO0VxQnVDWCx5QkF6Q3VLO0VBNkN2SyxxQkE3QytNO0EzQit5VG5OOztBMkJod1RJOztFQUtJLGdEQUFpRjtBM0Jnd1R6Rjs7QTBCNXZURTtFQ3ZEQSxXckJDYTtFbUJEWCx5Qm5CT2M7RXFCTGhCLHFCckJLZ0I7QU5relRsQjs7QVFuelRFO0VtQkFFLFdyQkxXO0VtQkRYLHlCRURvRjtFQVNwRixxQkFUeUg7QTNCZzBUN0g7O0EyQnB6VEU7RUFFRSxXckJaVztFbUJEWCx5QkVEb0Y7RUFnQnBGLHFCQWhCeUg7RUFxQnZILGlEQUFpRjtBM0JrelR2Rjs7QTJCN3lURTtFQUVFLFdyQjFCVztFcUIyQlgseUJyQnJCYztFcUJzQmQscUJyQnRCYztBTnEwVGxCOztBMkJ4eVRFOztFQUdFLFdyQnRDVztFcUJ1Q1gseUJBekN1SztFQTZDdksscUJBN0MrTTtBM0JvMVRuTjs7QTJCcnlUSTs7RUFLSSxpREFBaUY7QTNCcXlUekY7O0EwQmp5VEU7RUN2REEsV3JCQ2E7RW1CRFgseUJuQnFDYTtFcUJuQ2YscUJyQm1DZTtBTnl6VGpCOztBUXgxVEU7RW1CQUUsV3JCTFc7RW1CRFgseUJFRG9GO0VBU3BGLHFCQVR5SDtBM0JxMlQ3SDs7QTJCejFURTtFQUVFLFdyQlpXO0VtQkRYLHlCRURvRjtFQWdCcEYscUJBaEJ5SDtFQXFCdkgsK0NBQWlGO0EzQnUxVHZGOztBMkJsMVRFO0VBRUUsV3JCMUJXO0VxQjJCWCx5QnJCU2E7RXFCUmIscUJyQlFhO0FONDBUakI7O0EyQjcwVEU7O0VBR0UsV3JCdENXO0VxQnVDWCx5QkF6Q3VLO0VBNkN2SyxxQkE3QytNO0EzQnkzVG5OOztBMkIxMFRJOztFQUtJLCtDQUFpRjtBM0IwMFR6Rjs7QTBCdDBURTtFQ3ZEQSxXckJDYTtFbUJEWCx5Qm5CdUNhO0VxQnJDZixxQnJCcUNlO0FONDFUakI7O0FRNzNURTtFbUJBRSxXckJMVztFbUJEWCx5QkVEb0Y7RUFTcEYscUJBVHlIO0EzQjA0VDdIOztBMkI5M1RFO0VBRUUsV3JCWlc7RW1CRFgseUJFRG9GO0VBZ0JwRixxQkFoQnlIO0VBcUJ2SCxnREFBaUY7QTNCNDNUdkY7O0EyQnYzVEU7RUFFRSxXckIxQlc7RXFCMkJYLHlCckJXYTtFcUJWYixxQnJCVWE7QU4rMlRqQjs7QTJCbDNURTs7RUFHRSxXckJ0Q1c7RXFCdUNYLHlCQXpDdUs7RUE2Q3ZLLHFCQTdDK007QTNCODVUbk47O0EyQi8yVEk7O0VBS0ksZ0RBQWlGO0EzQisyVHpGOztBMEIzMlRFO0VDdkRBLGNyQlVnQjtFbUJWZCx5Qm5Cb0NhO0VxQmxDZixxQnJCa0NlO0FObzRUakI7O0FRbDZURTtFbUJBRSxjckJJYztFbUJWZCx5QkVEb0Y7RUFTcEYscUJBVHlIO0EzQis2VDdIOztBMkJuNlRFO0VBRUUsY3JCSGM7RW1CVmQseUJFRG9GO0VBZ0JwRixxQkFoQnlIO0VBcUJ2SCxnREFBaUY7QTNCaTZUdkY7O0EyQjU1VEU7RUFFRSxjckJqQmM7RXFCa0JkLHlCckJRYTtFcUJQYixxQnJCT2E7QU51NVRqQjs7QTJCdjVURTs7RUFHRSxjckI3QmM7RXFCOEJkLHlCQXpDdUs7RUE2Q3ZLLHFCQTdDK007QTNCbThUbk47O0EyQnA1VEk7O0VBS0ksZ0RBQWlGO0EzQm81VHpGOztBMEJoNVRFO0VDdkRBLFdyQkNhO0VtQkRYLHlCbkJrQ2E7RXFCaENmLHFCckJnQ2U7QU4yNlRqQjs7QVF2OFRFO0VtQkFFLFdyQkxXO0VtQkRYLHlCRURvRjtFQVNwRixxQkFUeUg7QTNCbzlUN0g7O0EyQng4VEU7RUFFRSxXckJaVztFbUJEWCx5QkVEb0Y7RUFnQnBGLHFCQWhCeUg7RUFxQnZILCtDQUFpRjtBM0JzOFR2Rjs7QTJCajhURTtFQUVFLFdyQjFCVztFcUIyQlgseUJyQk1hO0VxQkxiLHFCckJLYTtBTjg3VGpCOztBMkI1N1RFOztFQUdFLFdyQnRDVztFcUJ1Q1gseUJBekN1SztFQTZDdksscUJBN0MrTTtBM0J3K1RuTjs7QTJCejdUSTs7RUFLSSwrQ0FBaUY7QTNCeTdUekY7O0EwQnI3VEU7RUN2REEsY3JCVWdCO0VtQlZkLHlCbkJFYztFcUJBaEIscUJyQkFnQjtBTmcvVGxCOztBUTUrVEU7RW1CQUUsY3JCSWM7RW1CVmQseUJFRG9GO0VBU3BGLHFCQVR5SDtBM0J5L1Q3SDs7QTJCNytURTtFQUVFLGNyQkhjO0VtQlZkLHlCRURvRjtFQWdCcEYscUJBaEJ5SDtFQXFCdkgsaURBQWlGO0EzQjIrVHZGOztBMkJ0K1RFO0VBRUUsY3JCakJjO0VxQmtCZCx5QnJCMUJjO0VxQjJCZCxxQnJCM0JjO0FObWdVbEI7O0EyQmorVEU7O0VBR0UsY3JCN0JjO0VxQjhCZCx5QkF6Q3VLO0VBNkN2SyxxQkE3QytNO0EzQjZnVW5OOztBMkI5OVRJOztFQUtJLGlEQUFpRjtBM0I4OVR6Rjs7QTBCMTlURTtFQ3ZEQSxXckJDYTtFbUJEWCx5Qm5CU2M7RXFCUGhCLHFCckJPZ0I7QU44Z1VsQjs7QVFqaFVFO0VtQkFFLFdyQkxXO0VtQkRYLHlCRURvRjtFQVNwRixxQkFUeUg7QTNCOGhVN0g7O0EyQmxoVUU7RUFFRSxXckJaVztFbUJEWCx5QkVEb0Y7RUFnQnBGLHFCQWhCeUg7RUFxQnZILDhDQUFpRjtBM0JnaFV2Rjs7QTJCM2dVRTtFQUVFLFdyQjFCVztFcUIyQlgseUJyQm5CYztFcUJvQmQscUJyQnBCYztBTmlpVWxCOztBMkJ0Z1VFOztFQUdFLFdyQnRDVztFcUJ1Q1gseUJBekN1SztFQTZDdksscUJBN0MrTTtBM0JralVuTjs7QTJCbmdVSTs7RUFLSSw4Q0FBaUY7QTNCbWdVekY7O0EwQnovVEU7RUNIQSxjckI1QmU7RXFCNkJmLHFCckI3QmU7QU42aFVqQjs7QVFyalVFO0VtQndERSxXckI3RFc7RXFCOERYLHlCckJqQ2E7RXFCa0NiLHFCckJsQ2E7QU5taVVqQjs7QTJCOS9URTtFQUVFLCtDckJ2Q2E7QU51aVVqQjs7QTJCNy9URTtFQUVFLGNyQjVDYTtFcUI2Q2IsNkJBQTZCO0EzQisvVGpDOztBMkI1L1RFOztFQUdFLFdyQmhGVztFcUJpRlgseUJyQnBEYTtFcUJxRGIscUJyQnJEYTtBTm1qVWpCOztBMkI1L1RJOztFQUtJLCtDckI1RFM7QU53alVqQjs7QTBCemhVRTtFQ0hBLGNyQm5EZ0I7RXFCb0RoQixxQnJCcERnQjtBTm9sVWxCOztBUXJsVUU7RW1Cd0RFLFdyQjdEVztFcUI4RFgseUJyQnhEYztFcUJ5RGQscUJyQnpEYztBTjBsVWxCOztBMkI5aFVFO0VBRUUsaURyQjlEYztBTjhsVWxCOztBMkI3aFVFO0VBRUUsY3JCbkVjO0VxQm9FZCw2QkFBNkI7QTNCK2hVakM7O0EyQjVoVUU7O0VBR0UsV3JCaEZXO0VxQmlGWCx5QnJCM0VjO0VxQjRFZCxxQnJCNUVjO0FOMG1VbEI7O0EyQjVoVUk7O0VBS0ksaURyQm5GVTtBTittVWxCOztBMEJ6alVFO0VDSEEsY3JCckJlO0VxQnNCZixxQnJCdEJlO0FOc2xVakI7O0FRcm5VRTtFbUJ3REUsV3JCN0RXO0VxQjhEWCx5QnJCMUJhO0VxQjJCYixxQnJCM0JhO0FONGxVakI7O0EyQjlqVUU7RUFFRSwrQ3JCaENhO0FOZ21VakI7O0EyQjdqVUU7RUFFRSxjckJyQ2E7RXFCc0NiLDZCQUE2QjtBM0IralVqQzs7QTJCNWpVRTs7RUFHRSxXckJoRlc7RXFCaUZYLHlCckI3Q2E7RXFCOENiLHFCckI5Q2E7QU40bVVqQjs7QTJCNWpVSTs7RUFLSSwrQ3JCckRTO0FOaW5VakI7O0EwQnpsVUU7RUNIQSxjckJuQmU7RXFCb0JmLHFCckJwQmU7QU5vblVqQjs7QVFycFVFO0VtQndERSxXckI3RFc7RXFCOERYLHlCckJ4QmE7RXFCeUJiLHFCckJ6QmE7QU4wblVqQjs7QTJCOWxVRTtFQUVFLGdEckI5QmE7QU44blVqQjs7QTJCN2xVRTtFQUVFLGNyQm5DYTtFcUJvQ2IsNkJBQTZCO0EzQitsVWpDOztBMkI1bFVFOztFQUdFLFdyQmhGVztFcUJpRlgseUJyQjNDYTtFcUI0Q2IscUJyQjVDYTtBTjBvVWpCOztBMkI1bFVJOztFQUtJLGdEckJuRFM7QU4rb1VqQjs7QTBCem5VRTtFQ0hBLGNyQnRCZTtFcUJ1QmYscUJyQnZCZTtBTnVwVWpCOztBUXJyVUU7RW1Cd0RFLGNyQnBEYztFcUJxRGQseUJyQjNCYTtFcUI0QmIscUJyQjVCYTtBTjZwVWpCOztBMkI5blVFO0VBRUUsK0NyQmpDYTtBTmlxVWpCOztBMkI3blVFO0VBRUUsY3JCdENhO0VxQnVDYiw2QkFBNkI7QTNCK25VakM7O0EyQjVuVUU7O0VBR0UsY3JCdkVjO0VxQndFZCx5QnJCOUNhO0VxQitDYixxQnJCL0NhO0FONnFVakI7O0EyQjVuVUk7O0VBS0ksK0NyQnREUztBTmtyVWpCOztBMEJ6cFVFO0VDSEEsY3JCeEJlO0VxQnlCZixxQnJCekJlO0FOeXJVakI7O0FRcnRVRTtFbUJ3REUsV3JCN0RXO0VxQjhEWCx5QnJCN0JhO0VxQjhCYixxQnJCOUJhO0FOK3JVakI7O0EyQjlwVUU7RUFFRSwrQ3JCbkNhO0FObXNVakI7O0EyQjdwVUU7RUFFRSxjckJ4Q2E7RXFCeUNiLDZCQUE2QjtBM0IrcFVqQzs7QTJCNXBVRTs7RUFHRSxXckJoRlc7RXFCaUZYLHlCckJoRGE7RXFCaURiLHFCckJqRGE7QU4rc1VqQjs7QTJCNXBVSTs7RUFLSSwrQ3JCeERTO0FOb3RVakI7O0EwQnpyVUU7RUNIQSxjckJ4RGdCO0VxQnlEaEIscUJyQnpEZ0I7QU55dlVsQjs7QVFydlVFO0VtQndERSxjckJwRGM7RXFCcURkLHlCckI3RGM7RXFCOERkLHFCckI5RGM7QU4rdlVsQjs7QTJCOXJVRTtFQUVFLGlEckJuRWM7QU5td1VsQjs7QTJCN3JVRTtFQUVFLGNyQnhFYztFcUJ5RWQsNkJBQTZCO0EzQityVWpDOztBMkI1clVFOztFQUdFLGNyQnZFYztFcUJ3RWQseUJyQmhGYztFcUJpRmQscUJyQmpGYztBTit3VWxCOztBMkI1clVJOztFQUtJLGlEckJ4RlU7QU5veFVsQjs7QTBCenRVRTtFQ0hBLGNyQmpEZ0I7RXFCa0RoQixxQnJCbERnQjtBTmt4VWxCOztBUXJ4VUU7RW1Cd0RFLFdyQjdEVztFcUI4RFgseUJyQnREYztFcUJ1RGQscUJyQnZEYztBTnd4VWxCOztBMkI5dFVFO0VBRUUsOENyQjVEYztBTjR4VWxCOztBMkI3dFVFO0VBRUUsY3JCakVjO0VxQmtFZCw2QkFBNkI7QTNCK3RVakM7O0EyQjV0VUU7O0VBR0UsV3JCaEZXO0VxQmlGWCx5QnJCekVjO0VxQjBFZCxxQnJCMUVjO0FOd3lVbEI7O0EyQjV0VUk7O0VBS0ksOENyQmpGVTtBTjZ5VWxCOztBMEI5dVVBO0VBQ0UsZ0JwQm9OK0I7RW9Cbk4vQixjcEI1Q2U7RW9CNkNmLHFCcEJrRzRDO0FOK29VOUM7O0FRdHpVRTtFa0J3RUUsY3BCZ0c4RDtFb0IvRjlELDBCcEJnRytDO0FOa3BVbkQ7O0EwQnp2VUE7RUFZSSwwQnBCMkYrQztFb0IxRi9DLGdCQUFnQjtBMUJpdlVwQjs7QTBCOXZVQTtFQWtCSSxjcEJuRmM7RW9Cb0ZkLG9CQUFvQjtBMUJndlV4Qjs7QTBCcnVVQTtFQ0pFLG9CckI2U2dDO0VDdFI1QixrQkF0Q1k7RW9CaUJoQixnQnJCa0krQjtFT3ZPN0IscUJQOE8rQjtBTnFtVW5DOztBMEJ4dVVBO0VDUkUsdUJyQndTaUM7RUNqUjdCLG1CQXRDWTtFb0JpQmhCLGdCckJtSStCO0VPeE83QixxQlArTytCO0FOMm1VbkM7O0EwQnR1VUE7RUFDRSxjQUFjO0VBQ2QsV0FBVztBMUJ5dVViOztBMEIzdVVBO0VBTUksa0JwQjZUK0I7QU40NlRuQzs7QTBCcHVVQTs7O0VBSUksV0FBVztBMUJzdVVmOztBNEI5MlVBO0VMTU0sZ0NqQjhQMkM7QU44bVVqRDs7QXVCdjJVSTtFS1hKO0lMWU0sZ0JBQWdCO0V2QjIyVXBCO0FBQ0Y7O0E0QngzVUE7RUFJSSxVQUFVO0E1QnczVWQ7O0E0QnAzVUE7RUFFSSxhQUFhO0E1QnMzVWpCOztBNEJsM1VBO0VBQ0Usa0JBQWtCO0VBQ2xCLFNBQVM7RUFDVCxnQkFBZ0I7RUxYWiw2QmpCK1B3QztBTmtvVTlDOztBdUI1M1VJO0VLR0o7SUxGTSxnQkFBZ0I7RXZCZzRVcEI7QUFDRjs7QTZCNTRVQTs7OztFQUlFLGtCQUFrQjtBN0IrNFVwQjs7QTZCNTRVQTtFQUNFLG1CQUFtQjtBN0IrNFVyQjs7QThCMzNVSTtFQUNFLHFCQUFxQjtFQUNyQixvQnhCa08wQztFd0JqTzFDLHVCeEJnTzBDO0V3Qi9OMUMsV0FBVztFQWhDZix1QkFBOEI7RUFDOUIscUNBQTRDO0VBQzVDLGdCQUFnQjtFQUNoQixvQ0FBMkM7QTlCKzVVN0M7O0E4QjEyVUk7RUFDRSxjQUFjO0E5QjYyVXBCOztBNkJ2NVVBO0VBQ0Usa0JBQWtCO0VBQ2xCLFNBQVM7RUFDVCxPQUFPO0VBQ1AsYXZCNHBCc0M7RXVCM3BCdEMsYUFBYTtFQUNiLFdBQVc7RUFDWCxnQnZCa3VCdUM7RXVCanVCdkMsaUJBQThCO0VBQzlCLG9CQUE0QjtFdEJzR3hCLGVBdENZO0VzQjlEaEIsY3ZCWGdCO0V1QlloQixnQkFBZ0I7RUFDaEIsZ0JBQWdCO0VBQ2hCLHNCdkJ2QmE7RXVCd0JiLDRCQUE0QjtFQUM1QixxQ3ZCZmE7RU9aWCxzQlA2T2dDO0FOeXNVcEM7O0E2Qmw1VUk7RUFDRSxXQUFXO0VBQ1gsT0FBTztBN0JxNVViOztBNkJsNVVJO0VBQ0UsUUFBUTtFQUNSLFVBQVU7QTdCcTVVaEI7O0FpQno0VUk7RVluQkE7SUFDRSxXQUFXO0lBQ1gsT0FBTztFN0JnNlVYO0U2Qjc1VUU7SUFDRSxRQUFRO0lBQ1IsVUFBVTtFN0IrNVVkO0FBQ0Y7O0FpQnA1VUk7RVluQkE7SUFDRSxXQUFXO0lBQ1gsT0FBTztFN0IyNlVYO0U2Qng2VUU7SUFDRSxRQUFRO0lBQ1IsVUFBVTtFN0IwNlVkO0FBQ0Y7O0FpQi81VUk7RVluQkE7SUFDRSxXQUFXO0lBQ1gsT0FBTztFN0JzN1VYO0U2Qm43VUU7SUFDRSxRQUFRO0lBQ1IsVUFBVTtFN0JxN1VkO0FBQ0Y7O0FpQjE2VUk7RVluQkE7SUFDRSxXQUFXO0lBQ1gsT0FBTztFN0JpOFVYO0U2Qjk3VUU7SUFDRSxRQUFRO0lBQ1IsVUFBVTtFN0JnOFVkO0FBQ0Y7O0E2QjE3VUE7RUFFSSxTQUFTO0VBQ1QsWUFBWTtFQUNaLGFBQWE7RUFDYix1QnZCK3JCdUM7QU42dlQzQzs7QThCMzlVSTtFQUNFLHFCQUFxQjtFQUNyQixvQnhCa08wQztFd0JqTzFDLHVCeEJnTzBDO0V3Qi9OMUMsV0FBVztFQXpCZixhQUFhO0VBQ2IscUNBQTRDO0VBQzVDLDBCQUFpQztFQUNqQyxvQ0FBMkM7QTlCdy9VN0M7O0E4QjE4VUk7RUFDRSxjQUFjO0E5QjY4VXBCOztBNkJuOFVBO0VBRUksTUFBTTtFQUNOLFdBQVc7RUFDWCxVQUFVO0VBQ1YsYUFBYTtFQUNiLHFCdkJpckJ1QztBTm94VDNDOztBOEJsL1VJO0VBQ0UscUJBQXFCO0VBQ3JCLG9CeEJrTzBDO0V3QmpPMUMsdUJ4QmdPMEM7RXdCL04xQyxXQUFXO0VBbEJmLG1DQUEwQztFQUMxQyxlQUFlO0VBQ2Ysc0NBQTZDO0VBQzdDLHdCQUErQjtBOUJ3Z1ZqQzs7QThCaitVSTtFQUNFLGNBQWM7QTlCbytVcEI7O0E4QmpnVkk7RURtREUsaUJBQWlCO0E3Qms5VXZCOztBNkI3OFVBO0VBRUksTUFBTTtFQUNOLFdBQVc7RUFDWCxVQUFVO0VBQ1YsYUFBYTtFQUNiLHNCdkJncUJ1QztBTit5VDNDOztBOEI3Z1ZJO0VBQ0UscUJBQXFCO0VBQ3JCLG9CeEJrTzBDO0V3QmpPMUMsdUJ4QmdPMEM7RXdCL04xQyxXQUFXO0E5QmdoVmpCOztBOEJwaFZJO0VBZ0JJLGFBQWE7QTlCd2dWckI7O0E4QnJnVk07RUFDRSxxQkFBcUI7RUFDckIscUJ4QitNd0M7RXdCOU14Qyx1QnhCNk13QztFd0I1TXhDLFdBQVc7RUE5QmpCLG1DQUEwQztFQUMxQyx5QkFBZ0M7RUFDaEMsc0NBQTZDO0E5QnVpVi9DOztBOEJ0Z1ZJO0VBQ0UsY0FBYztBOUJ5Z1ZwQjs7QThCbmhWTTtFRGlEQSxpQkFBaUI7QTdCcytVdkI7O0E2Qi85VUE7RUFLSSxXQUFXO0VBQ1gsWUFBWTtBN0I4OVVoQjs7QTZCejlVQTtFRTlHRSxTQUFTO0VBQ1QsZ0JBQW1CO0VBQ25CLGdCQUFnQjtFQUNoQiw2QnpCQ2dCO0FOMGtWbEI7O0E2Qno5VUE7RUFDRSxjQUFjO0VBQ2QsV0FBVztFQUNYLHVCdkJvcEJ3QztFdUJucEJ4QyxXQUFXO0VBQ1gsZ0J2Qm9LK0I7RXVCbksvQixjdkJoSGdCO0V1QmlIaEIsbUJBQW1CO0VBQ25CLG1CQUFtQjtFQUNuQiw2QkFBNkI7RUFDN0IsU0FBUztBN0I0OVVYOztBUWhsVkU7RXFCbUlFLGN2QnFuQnFEO0V1QnBuQnJELHFCQUFxQjtFSjlJckIseUJuQkVjO0FOOGxWbEI7O0E2QjUrVUE7RUFnQ0ksV3ZCbkpXO0V1Qm9KWCxxQkFBcUI7RUpySnJCLHlCbkI4QmE7QU53a1ZqQjs7QTZCbC9VQTtFQXVDSSxjdkJwSmM7RXVCcUpkLG9CQUFvQjtFQUNwQiw2QkFBNkI7QTdCKzhVakM7O0E2QnY4VUE7RUFDRSxjQUFjO0E3QjA4VWhCOztBNkJ0OFVBO0VBQ0UsY0FBYztFQUNkLHNCdkIrbEJ3QztFdUI5bEJ4QyxnQkFBZ0I7RXRCcERaLG1CQXRDWTtFc0I0RmhCLGN2QnhLZ0I7RXVCeUtoQixtQkFBbUI7QTdCeThVckI7O0E2QnI4VUE7RUFDRSxjQUFjO0VBQ2QsdUJ2QnFsQndDO0V1QnBsQnhDLGN2QjdLZ0I7QU5xblZsQjs7QWdDbG9WQTs7RUFFRSxrQkFBa0I7RUFDbEIsb0JBQW9CO0VBQ3BCLHNCQUFzQjtBaENxb1Z4Qjs7QWdDem9WQTs7RUFPSSxrQkFBa0I7RUFDbEIsY0FBYztBaEN1b1ZsQjs7QVF0b1ZFOztFd0JJSSxVQUFVO0FoQ3VvVmhCOztBZ0NwcFZBOzs7O0VBa0JNLFVBQVU7QWhDeW9WaEI7O0FnQ25vVkE7RUFDRSxhQUFhO0VBQ2IsZUFBZTtFQUNmLDJCQUEyQjtBaENzb1Y3Qjs7QWdDem9WQTtFQU1JLFdBQVc7QWhDdW9WZjs7QWdDbm9WQTs7RUFJSSxpQjFCc002QjtBTjg3VWpDOztBZ0N4b1ZBOztFbkJoQkksMEJtQjBCOEI7RW5CekI5Qiw2Qm1CeUI4QjtBaENvb1ZsQzs7QWdDOW9WQTs7RW5CRkkseUJtQmlCNkI7RW5CaEI3Qiw0Qm1CZ0I2QjtBaENxb1ZqQzs7QWdDcm5WQTtFQUNFLHdCQUFtQztFQUNuQyx1QkFBa0M7QWhDd25WcEM7O0FnQzFuVkE7OztFQU9JLGNBQWM7QWhDeW5WbEI7O0FnQ3RuVkU7RUFDRSxlQUFlO0FoQ3luVm5COztBZ0NyblZBO0VBQ0UsdUJBQXNDO0VBQ3RDLHNCQUFxQztBaEN3blZ2Qzs7QWdDcm5WQTtFQUNFLHNCQUFzQztFQUN0QyxxQkFBcUM7QWhDd25WdkM7O0FnQ3BtVkE7RUFDRSxzQkFBc0I7RUFDdEIsdUJBQXVCO0VBQ3ZCLHVCQUF1QjtBaEN1bVZ6Qjs7QWdDMW1WQTs7RUFPSSxXQUFXO0FoQ3dtVmY7O0FnQy9tVkE7O0VBWUksZ0IxQnFINkI7QU5tL1VqQzs7QWdDcG5WQTs7RW5CbEZJLDZCbUJvRytCO0VuQm5HL0IsNEJtQm1HK0I7QWhDd21WbkM7O0FnQzFuVkE7O0VuQmhHSSx5Qm1CdUg0QjtFbkJ0SDVCLDBCbUJzSDRCO0FoQ3ltVmhDOztBZ0N4bFZBOztFQUdJLGdCQUFnQjtBaEMwbFZwQjs7QWdDN2xWQTs7OztFQU9NLGtCQUFrQjtFQUNsQixzQkFBc0I7RUFDdEIsb0JBQW9CO0FoQzZsVjFCOztBaUN0dlZBO0VBQ0Usa0JBQWtCO0VBQ2xCLGFBQWE7RUFDYixlQUFlO0VBQ2Ysb0JBQW9CO0VBQ3BCLFdBQVc7QWpDeXZWYjs7QWlDOXZWQTs7OztFQVdJLGtCQUFrQjtFQUNsQixZQUFZO0VBQ1osWUFBWTtFQUNaLGdCQUFnQjtBakMwdlZwQjs7QWlDeHdWQTs7Ozs7Ozs7Ozs7O0VBbUJNLGlCM0JzTjJCO0FOOGlWakM7O0FpQ3Z4VkE7OztFQTJCSSxVQUFVO0FqQ2t3VmQ7O0FpQzd4VkE7RUFnQ0ksVUFBVTtBakNpd1ZkOztBaUNqeVZBOztFcEJlSSwwQm9Cc0JtRDtFcEJyQm5ELDZCb0JxQm1EO0FqQ2t3VnZEOztBaUN2eVZBOztFcEI2QkkseUJvQlNtRDtFcEJSbkQsNEJvQlFtRDtBakN1d1Z2RDs7QWlDN3lWQTtFQTRDSSxhQUFhO0VBQ2IsbUJBQW1CO0FqQ3F3VnZCOztBaUNselZBOztFcEJlSSwwQm9CaUM2RTtFcEJoQzdFLDZCb0JnQzZFO0FqQ3d3VmpGOztBaUN4elZBO0VwQjZCSSx5Qm9Cb0JzRTtFcEJuQnRFLDRCb0JtQnNFO0FqQzR3VjFFOztBaUNqd1ZBOztFQUVFLGFBQWE7QWpDb3dWZjs7QWlDdHdWQTs7RUFRSSxrQkFBa0I7RUFDbEIsVUFBVTtBakNtd1ZkOztBaUM1d1ZBOztFQVlNLFVBQVU7QWpDcXdWaEI7O0FpQ2p4VkE7Ozs7Ozs7O0VBb0JJLGlCM0J5SjZCO0FOK21WakM7O0FpQ3B3VkE7RUFBdUIsa0IzQnFKVTtBTm1uVmpDOztBaUN2d1ZBO0VBQXNCLGlCM0JvSlc7QU51blZqQzs7QWlDbndWQTtFQUNFLGFBQWE7RUFDYixtQkFBbUI7RUFDbkIseUIzQmdTa0M7RTJCL1JsQyxnQkFBZ0I7RTFCd0JaLGVBdENZO0UwQmdCaEIsZ0IzQjBMK0I7RTJCekwvQixnQjNCOEwrQjtFMkI3TC9CLGMzQjdGZ0I7RTJCOEZoQixrQkFBa0I7RUFDbEIsbUJBQW1CO0VBQ25CLHlCM0JyR2dCO0UyQnNHaEIseUIzQnBHZ0I7RU9OZCxzQlA2T2dDO0FOb29WcEM7O0FpQ254VkE7O0VBa0JJLGFBQWE7QWpDc3dWakI7O0FpQzV2VkE7O0VBRUUsZ0NaakI4RDtBckJneFZoRTs7QWlDNXZWQTs7Ozs7O0VBTUUsb0IzQjJRZ0M7RUN0UjVCLGtCQXRDWTtFMEJtRGhCLGdCM0JnRytCO0VPdk83QixxQlA4TytCO0FOeXBWbkM7O0FpQzV2VkE7O0VBRUUsa0NabEM4RDtBckJpeVZoRTs7QWlDNXZWQTs7Ozs7O0VBTUUsdUIzQnFQaUM7RUNqUjdCLG1CQXRDWTtFMEJvRWhCLGdCM0JnRitCO0VPeE83QixxQlArTytCO0FOeXFWbkM7O0FpQzV2VkE7O0VBRUUsc0JBQTBFO0FqQyt2VjVFOztBaUNwdlZBOzs7Ozs7RXBCekpJLDBCb0IrSjRCO0VwQjlKNUIsNkJvQjhKNEI7QWpDd3ZWaEM7O0FpQ3J2VkE7Ozs7OztFcEJwSkkseUJvQjBKMkI7RXBCekozQiw0Qm9CeUoyQjtBakN5dlYvQjs7QWtDNzZWQTtFQUNFLGtCQUFrQjtFQUNsQixjQUFjO0VBQ2Qsa0JBQStDO0VBQy9DLG9CQUFxRTtBbENnN1Z2RTs7QWtDNzZWQTtFQUNFLG9CQUFvQjtFQUNwQixrQjVCNmYwQztBTm03VTVDOztBa0M3NlZBO0VBQ0Usa0JBQWtCO0VBQ2xCLE9BQU87RUFDUCxXQUFXO0VBQ1gsVzVCeWYwQztFNEJ4ZjFDLGVBQWtGO0VBQ2xGLFVBQVU7QWxDZzdWWjs7QWtDdDdWQTtFQVNJLFc1QnZCVztFNEJ3QlgscUI1QkthO0VtQjlCYix5Qm5COEJhO0FONjZWakI7O0FrQzU3VkE7RUFvQk0sZ0Q1QkxXO0FOaTdWakI7O0FrQ2g4VkE7RUF5QkkscUI1QjBic0U7QU5pL1UxRTs7QWtDcDhWQTtFQTZCSSxXNUIzQ1c7RTRCNENYLHlCNUJzZjhFO0U0QnJmOUUscUI1QnFmOEU7QU5zN1VsRjs7QWtDMThWQTtFQXVDTSxjNUIvQ1k7QU5zOVZsQjs7QWtDOThWQTtFQTBDUSx5QjVCdERVO0FOODlWbEI7O0FrQzk1VkE7RUFDRSxrQkFBa0I7RUFDbEIsZ0JBQWdCO0VBRWhCLG1CQUFtQjtBbENnNlZyQjs7QWtDcDZWQTtFQVNJLGtCQUFrQjtFQUNsQixZQUErRTtFQUMvRSxhQUErRDtFQUMvRCxjQUFjO0VBQ2QsVzVCNGJ3QztFNEIzYnhDLFk1QjJid0M7RTRCMWJ4QyxvQkFBb0I7RUFDcEIsV0FBVztFQUNYLHNCNUJuRlc7RTRCb0ZYLHlCNUJvSjZCO0FOMndWakM7O0FrQ2o3VkE7RUF3Qkksa0JBQWtCO0VBQ2xCLFlBQStFO0VBQy9FLGFBQStEO0VBQy9ELGNBQWM7RUFDZCxXNUI2YXdDO0U0QjVheEMsWTVCNGF3QztFNEIzYXhDLFdBQVc7RUFDWCxtQ0FBZ0U7QWxDNjVWcEU7O0FrQ3A1VkE7RXJCNUdJLHNCUDZPZ0M7QU51eFZwQzs7QWtDeDVWQTtFQU9NLGtPYjVFcUk7QXJCaStWM0k7O0FrQzU1VkE7RUFhTSxxQjVCMUZXO0VtQjlCYix5Qm5COEJhO0FOOCtWakI7O0FrQ2o2VkE7RUFrQk0sK0tidkZxSTtBckIwK1YzSTs7QWtDcjZWQTtFQXdCTSx3QzVCckdXO0FOcy9WakI7O0FrQ3o2VkE7RUEyQk0sd0M1QnhHVztBTjAvVmpCOztBa0N6NFZBO0VBR0ksa0I1QjhaK0M7QU40K1VuRDs7QWtDNzRWQTtFQVFNLDhLYmpIcUk7QXJCMC9WM0k7O0FrQ2o1VkE7RUFjTSx3QzVCL0hXO0FOc2dXakI7O0FrQzczVkE7RUFDRSxxQkFBMkQ7QWxDZzRWN0Q7O0FrQ2o0VkE7RUFLTSxjQUFxRDtFQUNyRCxjNUJzWStFO0U0QnJZL0UsbUJBQW1CO0VBRW5CLHFCNUJvWTRFO0FOMi9VbEY7O0FrQ3g0VkE7RUFhTSx3QmIxRTBEO0VhMkUxRCwwQmIzRTBEO0VhNEUxRCx1QmJ4RDBEO0VheUQxRCx3QmJ6RDBEO0VhMEQxRCx5QjVCbExZO0U0Qm9MWixxQjVCMFg0RTtFaUJwakI1RSx5SWpCc2dCK0g7QU5talZySTs7QXVCcGpXSTtFV2tLSjtJWGpLTSxnQkFBZ0I7RXZCd2pXcEI7QUFDRjs7QWtDeDVWQTtFQTBCTSxzQjVCaE1TO0U0QmlNVCw4QkFBNEU7QWxDazRWbEY7O0FrQzc1VkE7RUFpQ00sd0M1QjFLVztBTjBpV2pCOztBa0NwM1ZBO0VBQ0UscUJBQXFCO0VBQ3JCLFdBQVc7RUFDWCxtQ2I3RzhEO0VhOEc5RCwwQzVCd0trQztFQ3ZROUIsZUF0Q1k7RTJCd0loQixnQjVCa0UrQjtFNEJqRS9CLGdCNUJzRStCO0U0QnJFL0IsYzVCck5nQjtFNEJzTmhCLHNCQUFzQjtFQUN0Qix1TzVCdVcrSTtFNEJ0Vy9JLHlCNUIzTmdCO0VPTmQsc0JQNk9nQztFNEJUbEMsd0JBQWdCO0tBQWhCLHFCQUFnQjtVQUFoQixnQkFBZ0I7QWxDcTNWbEI7O0FrQ3A0VkE7RUFrQkkscUI1QjRQc0U7RTRCM1B0RSxVQUFVO0VBSVIsZ0Q1QjdNVztBTmdrV2pCOztBa0MxNFZBO0VBZ0NNLGM1QjVPWTtFNEI2T1osc0I1QnBQUztBTmttV2Y7O0FrQy80VkE7RUF1Q0ksWUFBWTtFQUNaLHNCNUJvSWdDO0U0Qm5JaEMsc0JBQXNCO0FsQzQyVjFCOztBa0NyNVZBO0VBNkNJLGM1QjFQYztFNEIyUGQseUI1Qi9QYztBTjJtV2xCOztBa0MxNVZBO0VBbURJLGFBQWE7QWxDMjJWakI7O0FrQzk1VkE7RUF3REksa0JBQWtCO0VBQ2xCLDBCNUJyUWM7QU4rbVdsQjs7QWtDdDJWQTtFQUNFLGtDYnhLOEQ7RWF5SzlELG9CNUJzSGtDO0U0QnJIbEMsdUI1QnFIa0M7RTRCcEhsQyxvQjVCcUhpQztFQ2pSN0IsbUJBdENZO0FQNGlXbEI7O0FrQ3QyVkE7RUFDRSxnQ2JoTDhEO0VhaUw5RCxtQjVCbUhpQztFNEJsSGpDLHNCNUJrSGlDO0U0QmpIakMsa0I1QmtIZ0M7RUN0UjVCLGtCQXRDWTtBUG9qV2xCOztBa0NqMlZBO0VBQ0Usa0JBQWtCO0VBQ2xCLHFCQUFxQjtFQUNyQixXQUFXO0VBQ1gsbUNiaE04RDtFYWlNOUQsZ0JBQWdCO0FsQ28yVmxCOztBa0NqMlZBO0VBQ0Usa0JBQWtCO0VBQ2xCLFVBQVU7RUFDVixXQUFXO0VBQ1gsbUNieE04RDtFYXlNOUQsU0FBUztFQUNULFVBQVU7QWxDbzJWWjs7QWtDMTJWQTtFQVNJLHFCNUIyS3NFO0U0QjFLdEUsZ0Q1QjFSYTtBTituV2pCOztBa0MvMlZBOztFQWdCSSx5QjVCM1RjO0FOK3BXbEI7O0FrQ3AzVkE7RUFxQk0saUI1QmtVUTtBTmlpVmQ7O0FrQ3gzVkE7RUEwQkksMEJBQTBCO0FsQ2syVjlCOztBa0M5MVZBO0VBQ0Usa0JBQWtCO0VBQ2xCLE1BQU07RUFDTixRQUFRO0VBQ1IsT0FBTztFQUNQLFVBQVU7RUFDVixtQ2J4TzhEO0VheU85RCx5QjVCNkNrQztFNEIzQ2xDLGdCNUJ4RCtCO0U0QnlEL0IsZ0I1QnBEK0I7RTRCcUQvQixjNUIvVWdCO0U0QmdWaEIsc0I1QnZWYTtFNEJ3VmIseUI1QnBWZ0I7RU9OZCxzQlA2T2dDO0FOODhWcEM7O0FrQzkyVkE7RUFrQkksa0JBQWtCO0VBQ2xCLE1BQU07RUFDTixRQUFRO0VBQ1IsU0FBUztFQUNULFVBQVU7RUFDVixjQUFjO0VBQ2QsNkJiMVA0RDtFYTJQNUQseUI1QjJCZ0M7RTRCMUJoQyxnQjVCcEU2QjtFNEJxRTdCLGM1Qi9WYztFNEJnV2QsaUJBQWlCO0VUeFdqQix5Qm5CR2M7RTRCdVdkLG9CQUFvQjtFckIzV3BCLGtDcUI0V2dGO0FsQ2cyVnBGOztBa0N0MVZBO0VBQ0UsV0FBVztFQUNYLGNiaFIyQjtFYWlSM0IsVUFBVTtFQUNWLDZCQUE2QjtFQUM3Qix3QkFBZ0I7S0FBaEIscUJBQWdCO1VBQWhCLGdCQUFnQjtBbEN5MVZsQjs7QWtDOTFWQTtFQVFJLGFBQWE7QWxDMDFWakI7O0FrQ2wyVkE7RUFZOEIsZ0U1Qm5XYjtBTjZyV2pCOztBa0N0MlZBO0VBYThCLGdFNUJwV2I7QU5pc1dqQjs7QWtDMTJWQTtFQWM4QixnRTVCcldiO0FOcXNXakI7O0FrQzkyVkE7RUFrQkksU0FBUztBbENnMlZiOztBa0NsM1ZBO0VBc0JJLFc1QjJONkM7RTRCMU43QyxZNUIwTjZDO0U0QnpON0Msb0JBQXlFO0VUN1l6RSx5Qm5COEJhO0U0QmlYYixTNUIwTjBDO0VPMW1CMUMsbUJQMm1CNkM7RWlCMW1CM0Msb0hqQnNnQitIO0VpQnRnQi9ILDRHakJzZ0IrSDtFNEJuSGpJLHdCQUFnQjtVQUFoQixnQkFBZ0I7QWxDKzFWcEI7O0F1Qjd1V0k7RVdnWEo7SVgvV00sd0JBQWdCO0lBQWhCLGdCQUFnQjtFdkJpdldwQjtBQUNGOztBa0NuNFZBO0VUclhJLHlCbkI4bUIyRTtBTjhvVi9FOztBa0N2NFZBO0VBc0NJLFc1Qm9Nb0M7RTRCbk1wQyxjNUJvTXFDO0U0Qm5NckMsa0JBQWtCO0VBQ2xCLGU1Qm1NdUM7RTRCbE12Qyx5QjVCM1pjO0U0QjRaZCx5QkFBeUI7RXJCamF6QixtQlBvbUJvQztBTm1xVnhDOztBa0NqNVZBO0VBaURJLFc1QmdNNkM7RTRCL0w3QyxZNUIrTDZDO0VtQnRtQjdDLHlCbkI4QmE7RTRCMlliLFM1QmdNMEM7RU8xbUIxQyxtQlAybUI2QztFaUIxbUIzQyxpSGpCc2dCK0g7RWlCdGdCL0gsNEdqQnNnQitIO0U0QnpGakkscUJBQWdCO09BQWhCLGdCQUFnQjtBbENtMlZwQjs7QXVCM3dXSTtFV2dYSjtJWC9XTSxxQkFBZ0I7SUFBaEIsZ0JBQWdCO0V2Qit3V3BCO0FBQ0Y7O0FrQ2o2VkE7RVRyWEkseUJuQjhtQjJFO0FONHFWL0U7O0FrQ3I2VkE7RUFnRUksVzVCMEtvQztFNEJ6S3BDLGM1QjBLcUM7RTRCektyQyxrQkFBa0I7RUFDbEIsZTVCeUt1QztFNEJ4S3ZDLHlCNUJyYmM7RTRCc2JkLHlCQUF5QjtFckIzYnpCLG1CUG9tQm9DO0FOaXNWeEM7O0FrQy82VkE7RUEyRUksVzVCc0s2QztFNEJySzdDLFk1QnFLNkM7RTRCcEs3QyxhQUFhO0VBQ2Isb0I1QjlEK0I7RTRCK0QvQixtQjVCL0QrQjtFbUJyWS9CLHlCbkI4QmE7RTRCd2FiLFM1Qm1LMEM7RU8xbUIxQyxtQlAybUI2QztFaUIxbUIzQyxnSGpCc2dCK0g7RWlCdGdCL0gsNEdqQnNnQitIO0U0QjVEakksZ0JBQWdCO0FsQ3UyVnBCOztBdUI1eVdJO0VXZ1hKO0lYL1dNLG9CQUFnQjtJQUFoQixnQkFBZ0I7RXZCZ3pXcEI7QUFDRjs7QWtDbDhWQTtFVHJYSSx5Qm5COG1CMkU7QU42c1YvRTs7QWtDdDhWQTtFQTZGSSxXNUI2SW9DO0U0QjVJcEMsYzVCNklxQztFNEI1SXJDLGtCQUFrQjtFQUNsQixlNUI0SXVDO0U0QjNJdkMsNkJBQTZCO0VBQzdCLHlCQUF5QjtFQUN6QixvQkFBNEM7QWxDNjJWaEQ7O0FrQ2g5VkE7RUF3R0kseUI1QnpkYztFT0xkLG1CUG9tQm9DO0FOdXVWeEM7O0FrQ3I5VkE7RUE2R0ksa0JBQWtCO0VBQ2xCLHlCNUIvZGM7RU9MZCxtQlBvbUJvQztBTjZ1VnhDOztBa0MzOVZBO0VBb0hNLHlCNUJuZVk7QU44MFdsQjs7QWtDLzlWQTtFQXdITSxlQUFlO0FsQzIyVnJCOztBa0NuK1ZBO0VBNEhNLHlCNUIzZVk7QU5zMVdsQjs7QWtDditWQTtFQWdJTSxlQUFlO0FsQzIyVnJCOztBa0MzK1ZBO0VBb0lNLHlCNUJuZlk7QU44MVdsQjs7QWtDdDJWQTs7O0VYOWZNLDRHakJzZ0IrSDtBTm8yVnJJOztBdUJyMldJO0VXeWZKOzs7SVh4Zk0sZ0JBQWdCO0V2QjIyV3BCO0FBQ0Y7O0FtQ24zV0E7RUFDRSxhQUFhO0VBQ2IsZUFBZTtFQUNmLGVBQWU7RUFDZixnQkFBZ0I7RUFDaEIsZ0JBQWdCO0FuQ3MzV2xCOztBbUNuM1dBO0VBQ0UsY0FBYztFQUNkLG9CN0I2cUJzQztBTnlzVnhDOztBUXIzV0U7RTJCRUUscUJBQXFCO0FuQ3UzV3pCOztBbUM1M1dBO0VBVUksYzdCVmM7RTZCV2Qsb0JBQW9CO0VBQ3BCLGVBQWU7QW5DczNXbkI7O0FtQzkyV0E7RUFDRSxnQzdCeEJnQjtBTnk0V2xCOztBbUNsM1dBO0VBSUksbUI3QjBNNkI7QU53cVdqQzs7QW1DdDNXQTtFQVFJLDZCQUFnRDtFdEIzQmhELCtCUG9PZ0M7RU9uT2hDLGdDUG1PZ0M7QU4ycVdwQzs7QVE3NFdFO0UyQjZCSSxxQzdCbkNZO0FOdTVXbEI7O0FtQ2g0V0E7RUFnQk0sYzdCcENZO0U2QnFDWiw2QkFBNkI7RUFDN0IseUJBQXlCO0FuQ28zVy9COztBbUN0NFdBOztFQXdCSSxjN0IzQ2M7RTZCNENkLHNCN0JuRFc7RTZCb0RYLGtDN0JwRFc7QU51NldmOztBbUM3NFdBO0VBK0JJLGdCN0IrSzZCO0VPak83Qix5QnNCb0Q0QjtFdEJuRDVCLDBCc0JtRDRCO0FuQ2szV2hDOztBbUN6MldBO0V0QnRFSSxzQlA2T2dDO0FOc3NXcEM7O0FtQzcyV0E7O0VBT0ksVzdCM0VXO0U2QjRFWCx5QjdCL0NhO0FOMDVXakI7O0FtQ2wyV0E7RUFFSSxjQUFjO0VBQ2Qsa0JBQWtCO0FuQ28yV3RCOztBbUNoMldBO0VBRUksYUFBYTtFQUNiLFlBQVk7RUFDWixrQkFBa0I7QW5DazJXdEI7O0FtQ3oxV0E7RUFFSSxhQUFhO0FuQzIxV2pCOztBbUM3MVdBO0VBS0ksY0FBYztBbkM0MVdsQjs7QW9DaDhXQTtFQUNFLGtCQUFrQjtFQUNsQixhQUFhO0VBQ2IsZUFBZTtFQUNmLG1CQUFtQjtFQUNuQiw4QkFBOEI7RUFDOUIsb0I5QmlIVztBTmsxV2I7O0FvQ3o4V0E7O0VBV0ksYUFBYTtFQUNiLGVBQWU7RUFDZixtQkFBbUI7RUFDbkIsOEJBQThCO0FwQ204V2xDOztBb0MvNldBO0VBQ0UscUJBQXFCO0VBQ3JCLHNCOUJxcUIrRTtFOEJwcUIvRSx5QjlCb3FCK0U7RThCbnFCL0Usa0I5QmlGVztFQ1RQLGtCQXRDWTtFNkJoQ2hCLG9CQUFvQjtFQUNwQixtQkFBbUI7QXBDazdXckI7O0FRNTlXRTtFNEI2Q0UscUJBQXFCO0FwQ203V3pCOztBb0MxNldBO0VBQ0UsYUFBYTtFQUNiLHNCQUFzQjtFQUN0QixlQUFlO0VBQ2YsZ0JBQWdCO0VBQ2hCLGdCQUFnQjtBcEM2NldsQjs7QW9DbDdXQTtFQVFJLGdCQUFnQjtFQUNoQixlQUFlO0FwQzg2V25COztBb0N2N1dBO0VBYUksZ0JBQWdCO0VBQ2hCLFdBQVc7QXBDODZXZjs7QW9DcjZXQTtFQUNFLHFCQUFxQjtFQUNyQixtQjlCNGxCdUM7RThCM2xCdkMsc0I5QjJsQnVDO0FONjBWekM7O0FvQzU1V0E7RUFDRSxnQkFBZ0I7RUFDaEIsWUFBWTtFQUdaLG1CQUFtQjtBcEM2NVdyQjs7QW9DejVXQTtFQUNFLHdCOUJ1bUJ3QztFQzlsQnBDLGtCQXRDWTtFNkIrQmhCLGNBQWM7RUFDZCw2QkFBNkI7RUFDN0IsNkJBQXVDO0V2QnJIckMsc0JQNk9nQztBTnF5V3BDOztBUXZnWEU7RTRCOEdFLHFCQUFxQjtBcEM2NVd6Qjs7QW9DdjVXQTtFQUNFLHFCQUFxQjtFQUNyQixZQUFZO0VBQ1osYUFBYTtFQUNiLHNCQUFzQjtFQUN0QixXQUFXO0VBQ1gsbUNBQW1DO0VBQ25DLDBCQUEwQjtBcEMwNVc1Qjs7QWlCNTlXSTtFbUI0RUM7O0lBR0ssZ0JBQWdCO0lBQ2hCLGVBQWU7RXBDbTVXdkI7QUFDRjs7QWlCai9XSTtFbUJ5RkE7SUFvQkkscUJBQXFCO0lBQ3JCLDJCQUEyQjtFcEN5NFdqQztFb0M5NVdHO0lBd0JLLG1CQUFtQjtFcEN5NFczQjtFb0NqNldHO0lBMkJPLGtCQUFrQjtFcEN5NFc1QjtFb0NwNldHO0lBK0JPLHFCOUJnaUI2QjtJOEIvaEI3QixvQjlCK2hCNkI7RU55MlZ2QztFb0N4NldHOztJQXNDSyxpQkFBaUI7RXBDczRXekI7RW9DNTZXRztJQXFESyx3QkFBd0I7SUFHeEIsZ0JBQWdCO0VwQ3czV3hCO0VvQ2g3V0c7SUE0REssYUFBYTtFcEN1M1dyQjtBQUNGOztBaUJoZ1hJO0VtQjRFQzs7SUFHSyxnQkFBZ0I7SUFDaEIsZUFBZTtFcEN1N1d2QjtBQUNGOztBaUJyaFhJO0VtQnlGQTtJQW9CSSxxQkFBcUI7SUFDckIsMkJBQTJCO0VwQzY2V2pDO0VvQ2w4V0c7SUF3QkssbUJBQW1CO0VwQzY2VzNCO0VvQ3I4V0c7SUEyQk8sa0JBQWtCO0VwQzY2VzVCO0VvQ3g4V0c7SUErQk8scUI5QmdpQjZCO0k4Qi9oQjdCLG9COUIraEI2QjtFTjY0VnZDO0VvQzU4V0c7O0lBc0NLLGlCQUFpQjtFcEMwNld6QjtFb0NoOVdHO0lBcURLLHdCQUF3QjtJQUd4QixnQkFBZ0I7RXBDNDVXeEI7RW9DcDlXRztJQTRESyxhQUFhO0VwQzI1V3JCO0FBQ0Y7O0FpQnBpWEk7RW1CNEVDOztJQUdLLGdCQUFnQjtJQUNoQixlQUFlO0VwQzI5V3ZCO0FBQ0Y7O0FpQnpqWEk7RW1CeUZBO0lBb0JJLHFCQUFxQjtJQUNyQiwyQkFBMkI7RXBDaTlXakM7RW9DdCtXRztJQXdCSyxtQkFBbUI7RXBDaTlXM0I7RW9DeitXRztJQTJCTyxrQkFBa0I7RXBDaTlXNUI7RW9DNStXRztJQStCTyxxQjlCZ2lCNkI7SThCL2hCN0Isb0I5QitoQjZCO0VOaTdWdkM7RW9DaC9XRzs7SUFzQ0ssaUJBQWlCO0VwQzg4V3pCO0VvQ3AvV0c7SUFxREssd0JBQXdCO0lBR3hCLGdCQUFnQjtFcENnOFd4QjtFb0N4L1dHO0lBNERLLGFBQWE7RXBDKzdXckI7QUFDRjs7QWlCeGtYSTtFbUI0RUM7O0lBR0ssZ0JBQWdCO0lBQ2hCLGVBQWU7RXBDKy9XdkI7QUFDRjs7QWlCN2xYSTtFbUJ5RkE7SUFvQkkscUJBQXFCO0lBQ3JCLDJCQUEyQjtFcENxL1dqQztFb0MxZ1hHO0lBd0JLLG1CQUFtQjtFcENxL1czQjtFb0M3Z1hHO0lBMkJPLGtCQUFrQjtFcENxL1c1QjtFb0NoaFhHO0lBK0JPLHFCOUJnaUI2QjtJOEIvaEI3QixvQjlCK2hCNkI7RU5xOVZ2QztFb0NwaFhHOztJQXNDSyxpQkFBaUI7RXBDay9XekI7RW9DeGhYRztJQXFESyx3QkFBd0I7SUFHeEIsZ0JBQWdCO0VwQ28rV3hCO0VvQzVoWEc7SUE0REssYUFBYTtFcENtK1dyQjtBQUNGOztBb0NyaVhBO0VBeUJRLHFCQUFxQjtFQUNyQiwyQkFBMkI7QXBDZ2hYbkM7O0FvQzFpWEE7O0VBUVUsZ0JBQWdCO0VBQ2hCLGVBQWU7QXBDdWlYekI7O0FvQ2hqWEE7RUE2QlUsbUJBQW1CO0FwQ3VoWDdCOztBb0NwalhBO0VBZ0NZLGtCQUFrQjtBcEN3aFg5Qjs7QW9DeGpYQTtFQW9DWSxxQjlCZ2lCNkI7RThCL2hCN0Isb0I5QitoQjZCO0FOeS9WekM7O0FvQzdqWEE7O0VBMkNVLGlCQUFpQjtBcEN1aFgzQjs7QW9DbGtYQTtFQTBEVSx3QkFBd0I7RUFHeEIsZ0JBQWdCO0FwQzBnWDFCOztBb0N2a1hBO0VBaUVVLGFBQWE7QXBDMGdYdkI7O0FvQzcvV0E7RUFFSSx5QjlCL01XO0FOOHNYZjs7QVEvc1hFO0U0Qm1OSSx5QjlCbE5TO0FOa3RYZjs7QW9DcmdYQTtFQVdNLHlCOUJ4TlM7QU5zdFhmOztBUXZ0WEU7RTRCNE5NLHlCOUIzTk87QU4wdFhmOztBb0M3Z1hBO0VBa0JRLHlCOUIvTk87QU44dFhmOztBb0NqaFhBOzs7O0VBMEJNLHlCOUJ2T1M7QU5xdVhmOztBb0N4aFhBO0VBK0JJLHlCOUI1T1c7RThCNk9YLGdDOUI3T1c7QU4wdVhmOztBb0M3aFhBO0VBb0NJLCtRZnROdUk7QXJCbXRYM0k7O0FvQ2ppWEE7RUF3Q0kseUI5QnJQVztBTmt2WGY7O0FvQ3JpWEE7RUEwQ00seUI5QnZQUztBTnN2WGY7O0FRdnZYRTtFNEIyUE0seUI5QjFQTztBTjB2WGY7O0FvQ3ovV0E7RUFFSSxXOUI3UVc7QU53d1hmOztBUS92WEU7RTRCdVFJLFc5QmhSUztBTjR3WGY7O0FvQ2pnWEE7RUFXTSwrQjlCdFJTO0FOZ3hYZjs7QVF2d1hFO0U0QmdSTSxnQzlCelJPO0FOb3hYZjs7QW9DemdYQTtFQWtCUSxnQzlCN1JPO0FOd3hYZjs7QW9DN2dYQTs7OztFQTBCTSxXOUJyU1M7QU4reFhmOztBb0NwaFhBO0VBK0JJLCtCOUIxU1c7RThCMlNYLHNDOUIzU1c7QU5veVhmOztBb0N6aFhBO0VBb0NJLHFSZjFRdUk7QXJCbXdYM0k7O0FvQzdoWEE7RUF3Q0ksK0I5Qm5UVztBTjR5WGY7O0FvQ2ppWEE7RUEwQ00sVzlCclRTO0FOZ3pYZjs7QVF2eVhFO0U0QitTTSxXOUJ4VE87QU5velhmOztBcUN2elhBO0VBQ0Usa0JBQWtCO0VBQ2xCLGFBQWE7RUFDYixzQkFBc0I7RUFDdEIsWUFBWTtFQUVaLHFCQUFxQjtFQUNyQixzQi9CSmE7RStCS2IsMkJBQTJCO0VBQzNCLHNDL0JJYTtFT1pYLHNCUDZPZ0M7QU5xbFhwQzs7QXFDbjBYQTtFQWFJLGVBQWU7RUFDZixjQUFjO0FyQzB6WGxCOztBcUN4MFhBO0V4QlVJLCtCUG9PZ0M7RU9uT2hDLGdDUG1PZ0M7QU4rbFhwQzs7QXFDNzBYQTtFeEJ3QkksbUNQc05nQztFT3JOaEMsa0NQcU5nQztBTm9tWHBDOztBcUNwelhBO0VBR0UsY0FBYztFQUdkLGVBQWU7RUFDZixnQi9Cc3hCeUM7QU42aFczQzs7QXFDL3lYQTtFQUNFLHNCL0JneEJ3QztBTmtpVzFDOztBcUMveVhBO0VBQ0UscUJBQStCO0VBQy9CLGdCQUFnQjtBckNrelhsQjs7QXFDL3lYQTtFQUNFLGdCQUFnQjtBckNrelhsQjs7QVE3MVhFO0U2QmdERSxxQkFBcUI7QXJDaXpYekI7O0FxQ256WEE7RUFNSSxvQi9CK3ZCdUM7QU5ralczQzs7QXFDenlYQTtFQUNFLHdCL0JzdkJ5QztFK0JydkJ6QyxnQkFBZ0I7RUFFaEIscUMvQjNEYTtFK0I0RGIsNkMvQjVEYTtBTnUyWGY7O0FxQ2h6WEE7RXhCbkVJLDBEd0IyRThFO0FyQzR5WGxGOztBcUNwelhBO0VBYU0sYUFBYTtBckMyeVhuQjs7QXFDdHlYQTtFQUNFLHdCL0JvdUJ5QztFK0JudUJ6QyxxQy9CM0VhO0UrQjRFYiwwQy9CNUVhO0FOcTNYZjs7QXFDNXlYQTtFeEJyRkksMERRK0g0RDtBckJzd1hoRTs7QXFDanlYQTtFQUNFLHVCQUFpQztFQUNqQyx1Qi9CbXRCd0M7RStCbHRCeEMsc0JBQWdDO0VBQ2hDLGdCQUFnQjtBckNveVhsQjs7QXFDanlYQTtFQUNFLHVCQUFpQztFQUNqQyxzQkFBZ0M7QXJDb3lYbEM7O0FxQ2h5WEE7RUFDRSxrQkFBa0I7RUFDbEIsTUFBTTtFQUNOLFFBQVE7RUFDUixTQUFTO0VBQ1QsT0FBTztFQUNQLGdCL0I4c0J5QztBTnFsVzNDOztBcUNoeVhBOzs7RUFHRSxjQUFjO0VBQ2QsV0FBVztBckNteVhiOztBcUNoeVhBOztFeEJ4SEksMkNRc0g0RDtFUnJINUQsNENRcUg0RDtBckJ3eVhoRTs7QXFDanlYQTs7RXhCL0dJLCtDUXdHNEQ7RVJ2RzVELDhDUXVHNEQ7QXJCOHlYaEU7O0FxQy94WEE7RUFFSSxtQi9CdXJCc0Q7QU4wbVcxRDs7QWlCMTNYSTtFb0J1Rko7SUFNSSxhQUFhO0lBQ2IsbUJBQW1CO0lBQ25CLG1CL0JpckJzRDtJK0JockJ0RCxrQi9CZ3JCc0Q7RU5rbld4RDtFcUMzeVhGO0lBYU0sWUFBWTtJQUNaLGtCL0IycUJvRDtJK0IxcUJwRCxnQkFBZ0I7SUFDaEIsaUIvQnlxQm9EO0VOd25XeEQ7QUFDRjs7QXFDeHhYQTtFQUlJLG1CL0IycEJzRDtBTjZuVzFEOztBaUI3NFhJO0VvQmlISjtJQVFJLGFBQWE7SUFDYixtQkFBbUI7RXJDeXhYckI7RXFDbHlYRjtJQWNNLFlBQVk7SUFDWixnQkFBZ0I7RXJDdXhYcEI7RXFDdHlYRjtJQWtCUSxjQUFjO0lBQ2QsY0FBYztFckN1eFhwQjtFcUMxeVhGO0l4QnhKSSwwQndCaUxvQztJeEJoTHBDLDZCd0JnTG9DO0VyQ3F4WHRDO0VxQzl5WEY7O0lBOEJZLDBCQUEwQjtFckNveFhwQztFcUNselhGOztJQW1DWSw2QkFBNkI7RXJDbXhYdkM7RXFDdHpYRjtJeEIxSUkseUJ3QmtMbUM7SXhCakxuQyw0QndCaUxtQztFckNreFhyQztFcUMxelhGOztJQTZDWSx5QkFBeUI7RXJDaXhYbkM7RXFDOXpYRjs7SUFrRFksNEJBQTRCO0VyQ2d4WHRDO0FBQ0Y7O0FxQ3B3WEE7RUFFSSxzQi9CZ2xCc0M7QU5zclcxQzs7QWlCeDdYSTtFb0JnTEo7SUFNSSxvQi9CNmxCaUM7UytCN2xCakMsZS9CNmxCaUM7SStCNWxCakMsd0IvQjZsQnVDO1MrQjdsQnZDLG1CL0I2bEJ1QztJK0I1bEJ2QyxVQUFVO0lBQ1YsU0FBUztFckN1d1hYO0VxQ2h4WEY7SUFZTSxxQkFBcUI7SUFDckIsV0FBVztFckN1d1hmO0FBQ0Y7O0FxQzl2WEE7RUFFSSxnQkFBZ0I7QXJDZ3dYcEI7O0FxQ2x3WEE7RUFLTSxnQkFBZ0I7RXhCNU9sQiw2QndCNk9pQztFeEI1T2pDLDRCd0I0T2lDO0FyQ2t3WHJDOztBcUN4d1hBO0V4QnJQSSx5QndCK1A4QjtFeEI5UDlCLDBCd0I4UDhCO0FyQ213WGxDOztBcUM3d1hBO0V4QjlQSSxnQndCNFEwQjtFQUN4QixtQi9CbkMyQjtBTnN5WGpDOztBc0NyaFlBO0VBQ0UsYUFBYTtFQUNiLGVBQWU7RUFDZixxQmhDK2hDc0M7RWdDOWhDdEMsbUJoQ2lpQ3NDO0VnQy9oQ3RDLGdCQUFnQjtFQUNoQix5QmhDRWdCO0VPSmQsc0JQNk9nQztBTjZ5WHBDOztBc0NwaFlBO0VBR0ksb0JoQ3FoQ3FDO0FOZ2dXekM7O0FzQ3hoWUE7RUFNTSxxQkFBcUI7RUFDckIscUJoQ2loQ21DO0VnQ2hoQ25DLGNoQ05ZO0VnQ09aLFloQ3NoQ3VDO0FOZ2dXN0M7O0FzQy9oWUE7RUFvQkksMEJBQTBCO0F0QytnWTlCOztBc0NuaVlBO0VBd0JJLHFCQUFxQjtBdEMrZ1l6Qjs7QXNDdmlZQTtFQTRCSSxjaEMxQmM7QU55aVlsQjs7QXVDdGpZQTtFQUNFLGFBQWE7RTdCR2IsZUFBZTtFQUNmLGdCQUFnQjtFR0FkLHNCUDZPZ0M7QU4yMFhwQzs7QXVDdmpZQTtFQUNFLGtCQUFrQjtFQUNsQixjQUFjO0VBQ2QsdUJqQ2d4QndDO0VpQy93QnhDLGlCakNxTytCO0VpQ3BPL0IsaUJqQ214QnNDO0VpQ2x4QnRDLGNqQ3dCZTtFaUN2QmYsc0JqQ05hO0VpQ09iLHlCakNKZ0I7QU44allsQjs7QXVDbGtZQTtFQVdJLFVBQVU7RUFDVixjakNrSzhEO0VpQ2pLOUQscUJBQXFCO0VBQ3JCLHlCakNYYztFaUNZZCxxQmpDWGM7QU5za1lsQjs7QXVDMWtZQTtFQW1CSSxVQUFVO0VBQ1YsVWpDNHdCaUM7RWlDM3dCakMsZ0RqQ1NhO0FOa2pZakI7O0F1Q3ZqWUE7RUFHTSxjQUFjO0UxQkNoQiwrQlArTWdDO0VPOU1oQyxrQ1A4TWdDO0FOMDJYcEM7O0F1QzdqWUE7RTFCVkksZ0NQNk5nQztFTzVOaEMsbUNQNE5nQztBTisyWHBDOztBdUNsa1lBO0VBY0ksVUFBVTtFQUNWLFdqQ3ZDVztFaUN3Q1gseUJqQ1hhO0VpQ1liLHFCakNaYTtBTm9rWWpCOztBdUN6a1lBO0VBcUJJLGNqQ3ZDYztFaUN3Q2Qsb0JBQW9CO0VBRXBCLFlBQVk7RUFDWixzQmpDakRXO0VpQ2tEWCxxQmpDL0NjO0FOc21ZbEI7O0F3QzdtWUU7RUFDRSx1QmxDeXhCc0M7RUM5cEJwQyxrQkF0Q1k7RWlDbkZkLGdCbENzTzZCO0FOMDRYakM7O0F3QzNtWU07RTNCd0JGLDhCUGdOK0I7RU8vTS9CLGlDUCtNK0I7QU53NFhuQzs7QXdDM21ZTTtFM0JLRiwrQlA4TitCO0VPN04vQixrQ1A2TitCO0FONjRYbkM7O0F3QzduWUU7RUFDRSx1QmxDdXhCcUM7RUM1cEJuQyxtQkF0Q1k7RWlDbkZkLGdCbEN1TzZCO0FOeTVYakM7O0F3QzNuWU07RTNCd0JGLDhCUGlOK0I7RU9oTi9CLGlDUGdOK0I7QU51NVhuQzs7QXdDM25ZTTtFM0JLRiwrQlArTitCO0VPOU4vQixrQ1A4TitCO0FONDVYbkM7O0F5QzNvWUE7RUFDRSxxQkFBcUI7RUFDckIscUJuQ3c1QnNDO0VDdjFCcEMsY0FBVztFa0MvRGIsZ0JuQzJSK0I7RW1DMVIvQixjQUFjO0VBQ2Qsa0JBQWtCO0VBQ2xCLG1CQUFtQjtFQUNuQix3QkFBd0I7RTVCUnRCLHNCUDZPZ0M7RWlCNU85QixxSWpCNmI2STtBTjB0WG5KOztBdUJscFlJO0VrQk5KO0lsQk9NLGdCQUFnQjtFdkJzcFlwQjtBQUNGOztBUW5wWUU7RWlDR0kscUJBQXFCO0F6Q29wWTNCOztBeUNscVlBO0VBb0JJLGFBQWE7QXpDa3BZakI7O0F5QzdvWUE7RUFDRSxrQkFBa0I7RUFDbEIsU0FBUztBekNncFlYOztBeUN6b1lBO0VBQ0Usb0JuQzYzQnNDO0VtQzUzQnRDLG1CbkM0M0JzQztFT2g2QnBDLG9CUG02QnFDO0FOOHdXekM7O0F5Q3BvWUU7RUNqREEsV3BDTWE7RW9DTGIseUJwQ2tDZTtBTnVwWWpCOztBUTNxWUU7RWtDVkksV3BDQ1M7RW9DQVQseUJBQWtDO0ExQ3lyWXhDOztBMEM1cllVO0VBUUosVUFBVTtFQUNWLCtDcEN1Qlc7QU5pcVlqQjs7QXlDbnBZRTtFQ2pEQSxXcENNYTtFb0NMYix5QnBDV2dCO0FONnJZbEI7O0FRMXJZRTtFa0NWSSxXcENDUztFb0NBVCx5QkFBa0M7QTFDd3NZeEM7O0EwQzNzWVU7RUFRSixVQUFVO0VBQ1YsaURwQ0FZO0FOdXNZbEI7O0F5Q2xxWUU7RUNqREEsV3BDTWE7RW9DTGIseUJwQ3lDZTtBTjhxWWpCOztBUXpzWUU7RWtDVkksV3BDQ1M7RW9DQVQseUJBQWtDO0ExQ3V0WXhDOztBMEMxdFlVO0VBUUosVUFBVTtFQUNWLCtDcEM4Qlc7QU53cllqQjs7QXlDanJZRTtFQ2pEQSxXcENNYTtFb0NMYix5QnBDMkNlO0FOMnJZakI7O0FReHRZRTtFa0NWSSxXcENDUztFb0NBVCx5QkFBa0M7QTFDc3VZeEM7O0EwQ3p1WVU7RUFRSixVQUFVO0VBQ1YsZ0RwQ2dDVztBTnFzWWpCOztBeUNoc1lFO0VDakRBLGNwQ2VnQjtFb0NkaEIseUJwQ3dDZTtBTjZzWWpCOztBUXZ1WUU7RWtDVkksY3BDVVk7RW9DVFoseUJBQWtDO0ExQ3F2WXhDOztBMEN4dllVO0VBUUosVUFBVTtFQUNWLCtDcEM2Qlc7QU51dFlqQjs7QXlDL3NZRTtFQ2pEQSxXcENNYTtFb0NMYix5QnBDc0NlO0FOOHRZakI7O0FRdHZZRTtFa0NWSSxXcENDUztFb0NBVCx5QkFBa0M7QTFDb3dZeEM7O0EwQ3Z3WVU7RUFRSixVQUFVO0VBQ1YsK0NwQzJCVztBTnd1WWpCOztBeUM5dFlFO0VDakRBLGNwQ2VnQjtFb0NkaEIseUJwQ01nQjtBTjZ3WWxCOztBUXJ3WUU7RWtDVkksY3BDVVk7RW9DVFoseUJBQWtDO0ExQ214WXhDOztBMEN0eFlVO0VBUUosVUFBVTtFQUNWLGlEcENMWTtBTnV4WWxCOztBeUM3dVlFO0VDakRBLFdwQ01hO0VvQ0xiLHlCcENhZ0I7QU5xeFlsQjs7QVFweFlFO0VrQ1ZJLFdwQ0NTO0VvQ0FULHlCQUFrQztBMUNreVl4Qzs7QTBDcnlZVTtFQVFKLFVBQVU7RUFDViw4Q3BDRVk7QU4reFlsQjs7QTJDOXlZQTtFQUNFLGtCQUFvRDtFQUNwRCxtQnJDcXpCc0M7RXFDbnpCdEMseUJyQ0tnQjtFT0pkLHFCUDhPK0I7QU5ra1luQzs7QWlCenZZSTtFMEI1REo7SUFRSSxrQnJDK3lCb0M7RU5tZ1h0QztBQUNGOztBMkMveVlBO0VBQ0UsZ0JBQWdCO0VBQ2hCLGVBQWU7RTlCVGIsZ0I4QlVzQjtBM0NrelkxQjs7QTRDN3pZQTtFQUNFLGtCQUFrQjtFQUNsQix3QnRDcTlCeUM7RXNDcDlCekMsbUJ0Q3E5QnNDO0VzQ3A5QnRDLDZCQUE2QztFL0JIM0Msc0JQNk9nQztBTnVsWXBDOztBNEM1ellBO0VBRUUsY0FBYztBNUM4elloQjs7QTRDMXpZQTtFQUNFLGdCdENnUitCO0FONmlZakM7O0E0Q3J6WUE7RUFDRSxtQkFBc0Q7QTVDd3pZeEQ7O0E0Q3p6WUE7RUFLSSxrQkFBa0I7RUFDbEIsTUFBTTtFQUNOLFFBQVE7RUFDUix3QnRDdTdCdUM7RXNDdDdCdkMsY0FBYztBNUN3ellsQjs7QTRDOXlZRTtFQzlDQSxjeEI4RmdFO0VJekY5RCx5Qkp5RjhEO0V3QjVGaEUscUJ4QjRGZ0U7QXJCb3dZbEU7O0E2QzkxWUU7RUFDRSx5QkFBcUM7QTdDaTJZekM7O0E2QzkxWUU7RUFDRSxjQUEwQjtBN0NpMlk5Qjs7QTRDNXpZRTtFQzlDQSxjeEI4RmdFO0VJekY5RCx5Qkp5RjhEO0V3QjVGaEUscUJ4QjRGZ0U7QXJCa3hZbEU7O0E2QzUyWUU7RUFDRSx5QkFBcUM7QTdDKzJZekM7O0E2QzUyWUU7RUFDRSxjQUEwQjtBN0MrMlk5Qjs7QTRDMTBZRTtFQzlDQSxjeEI4RmdFO0VJekY5RCx5Qkp5RjhEO0V3QjVGaEUscUJ4QjRGZ0U7QXJCZ3lZbEU7O0E2QzEzWUU7RUFDRSx5QkFBcUM7QTdDNjNZekM7O0E2QzEzWUU7RUFDRSxjQUEwQjtBN0M2M1k5Qjs7QTRDeDFZRTtFQzlDQSxjeEI4RmdFO0VJekY5RCx5Qkp5RjhEO0V3QjVGaEUscUJ4QjRGZ0U7QXJCOHlZbEU7O0E2Q3g0WUU7RUFDRSx5QkFBcUM7QTdDMjRZekM7O0E2Q3g0WUU7RUFDRSxjQUEwQjtBN0MyNFk5Qjs7QTRDdDJZRTtFQzlDQSxjeEI4RmdFO0VJekY5RCx5Qkp5RjhEO0V3QjVGaEUscUJ4QjRGZ0U7QXJCNHpZbEU7O0E2Q3Q1WUU7RUFDRSx5QkFBcUM7QTdDeTVZekM7O0E2Q3Q1WUU7RUFDRSxjQUEwQjtBN0N5NVk5Qjs7QTRDcDNZRTtFQzlDQSxjeEI4RmdFO0VJekY5RCx5Qkp5RjhEO0V3QjVGaEUscUJ4QjRGZ0U7QXJCMDBZbEU7O0E2Q3A2WUU7RUFDRSx5QkFBcUM7QTdDdTZZekM7O0E2Q3A2WUU7RUFDRSxjQUEwQjtBN0N1Nlk5Qjs7QTRDbDRZRTtFQzlDQSxjeEI4RmdFO0VJekY5RCx5Qkp5RjhEO0V3QjVGaEUscUJ4QjRGZ0U7QXJCdzFZbEU7O0E2Q2w3WUU7RUFDRSx5QkFBcUM7QTdDcTdZekM7O0E2Q2w3WUU7RUFDRSxjQUEwQjtBN0NxN1k5Qjs7QTRDaDVZRTtFQzlDQSxjeEI4RmdFO0VJekY5RCx5Qkp5RjhEO0V3QjVGaEUscUJ4QjRGZ0U7QXJCczJZbEU7O0E2Q2g4WUU7RUFDRSx5QkFBcUM7QTdDbThZekM7O0E2Q2g4WUU7RUFDRSxjQUEwQjtBN0NtOFk5Qjs7QThDMzhZRTtFQUNFO0lBQU8sMkJBQXVDO0U5Qys4WWhEO0U4Qzk4WUU7SUFBSyx3QkFBd0I7RTlDaTlZL0I7QUFDRjs7QThDcDlZRTtFQUNFO0lBQU8sMkJBQXVDO0U5Qys4WWhEO0U4Qzk4WUU7SUFBSyx3QkFBd0I7RTlDaTlZL0I7QUFDRjs7QThDOThZQTtFQUNFLGFBQWE7RUFDYixZeEM4OUJzQztFd0M3OUJ0QyxnQkFBZ0I7RXZDb0haLGtCQXRDWTtFdUM1RWhCLHlCeENKZ0I7RU9KZCxzQlA2T2dDO0FONnVZcEM7O0E4Qzc4WUE7RUFDRSxhQUFhO0VBQ2Isc0JBQXNCO0VBQ3RCLHVCQUF1QjtFQUN2QixnQkFBZ0I7RUFDaEIsV3hDaEJhO0V3Q2lCYixrQkFBa0I7RUFDbEIsbUJBQW1CO0VBQ25CLHlCeENVZTtFaUI5QlgsMkJqQjArQjRDO0FOMi9XbEQ7O0F1QmgrWUk7RXVCT0o7SXZCTk0sZ0JBQWdCO0V2Qm8rWXBCO0FBQ0Y7O0E4Q245WUE7RXJCYUUscU1BQTZJO0VxQlg3SSwwQnhDdzhCc0M7QU44Z1h4Qzs7QThDbDlZRTtFQUNFLDBEeEMwOEJrRDtVd0MxOEJsRCxrRHhDMDhCa0Q7QU4yZ1h0RDs7QThDbDlZTTtFQUpKO0lBS00sdUJBQWU7WUFBZixlQUFlO0U5Q3M5WXJCO0FBQ0Y7O0ErQ2hnWkE7RUFDRSxhQUFhO0VBQ2IsdUJBQXVCO0EvQ21nWnpCOztBK0NoZ1pBO0VBQ0UsT0FBTztBL0NtZ1pUOztBZ0RyZ1pBO0VBQ0UsYUFBYTtFQUNiLHNCQUFzQjtFQUd0QixlQUFlO0VBQ2YsZ0JBQWdCO0FoRHNnWmxCOztBZ0Q3L1lBO0VBQ0UsV0FBVztFQUNYLGMxQ1BnQjtFMENRaEIsbUJBQW1CO0FoRGdnWnJCOztBUXRnWkU7RXdDVUUsVUFBVTtFQUNWLGMxQ2JjO0UwQ2NkLHFCQUFxQjtFQUNyQix5QjFDckJjO0FOcWhabEI7O0FnRDFnWkE7RUFjSSxjMUNqQmM7RTBDa0JkLHlCMUN6QmM7QU55aFpsQjs7QWdEdi9ZQTtFQUNFLGtCQUFrQjtFQUNsQixjQUFjO0VBQ2Qsd0IxQzg4QnlDO0UwQzU4QnpDLHNCMUN6Q2E7RTBDMENiLHNDMUNoQ2E7QU55aFpmOztBZ0QvL1lBO0VuQzdCSSwrQlBvT2dDO0VPbk9oQyxnQ1BtT2dDO0FONnpZcEM7O0FnRHBnWkE7RW5DZkksbUNQc05nQztFT3JOaEMsa0NQcU5nQztBTmswWXBDOztBZ0R6Z1pBO0VBa0JJLGMxQ2hEYztFMENpRGQsb0JBQW9CO0VBQ3BCLHNCMUN4RFc7QU5talpmOztBZ0QvZ1pBO0VBeUJJLFVBQVU7RUFDVixXMUM5RFc7RTBDK0RYLHlCMUNsQ2E7RTBDbUNiLHFCMUNuQ2E7QU42aFpqQjs7QWdEdGhaQTtFQWdDSSxtQkFBbUI7QWhEMC9ZdkI7O0FnRDFoWkE7RUFtQ00sZ0IxQ2lLMkI7RTBDaEszQixxQjFDZ0syQjtBTjIxWWpDOztBZ0Q3K1lJO0VBQ0UsbUJBQW1CO0FoRGcvWXpCOztBZ0RqL1lJO0VuQ2pDQSxrQ1BzTGdDO0VPbE1oQywwQm1DbUR3QztBaERnL1k1Qzs7QWdEdC9ZSTtFbkM3Q0EsZ0NQa01nQztFT3RMaEMsNEJtQzRDMEM7QWhEZy9ZOUM7O0FnRDMvWUk7RUFlTSxhQUFhO0FoRGcvWXZCOztBZ0QvL1lJO0VBbUJNLHFCMUMrSHVCO0UwQzlIdkIsb0JBQW9CO0FoRGcvWTlCOztBZ0RwZ1pJO0VBdUJRLGlCMUMySHFCO0UwQzFIckIsc0IxQzBIcUI7QU51M1lqQzs7QWlCMWlaSTtFK0JpQ0E7SUFDRSxtQkFBbUI7RWhENmdadkI7RWdEOWdaRTtJbkNqQ0Esa0NQc0xnQztJT2xNaEMsMEJtQ21Ed0M7RWhENGdaMUM7RWdEbGhaRTtJbkM3Q0EsZ0NQa01nQztJT3RMaEMsNEJtQzRDMEM7RWhEMmdaNUM7RWdEdGhaRTtJQWVNLGFBQWE7RWhEMGdackI7RWdEemhaRTtJQW1CTSxxQjFDK0h1QjtJMEM5SHZCLG9CQUFvQjtFaER5Z1o1QjtFZ0Q3aFpFO0lBdUJRLGlCMUMySHFCO0kwQzFIckIsc0IxQzBIcUI7RU4rNFkvQjtBQUNGOztBaUJua1pJO0UrQmlDQTtJQUNFLG1CQUFtQjtFaERzaVp2QjtFZ0R2aVpFO0luQ2pDQSxrQ1BzTGdDO0lPbE1oQywwQm1DbUR3QztFaERxaVoxQztFZ0QzaVpFO0luQzdDQSxnQ1BrTWdDO0lPdExoQyw0Qm1DNEMwQztFaERvaVo1QztFZ0QvaVpFO0lBZU0sYUFBYTtFaERtaVpyQjtFZ0RsalpFO0lBbUJNLHFCMUMrSHVCO0kwQzlIdkIsb0JBQW9CO0VoRGtpWjVCO0VnRHRqWkU7SUF1QlEsaUIxQzJIcUI7STBDMUhyQixzQjFDMEhxQjtFTnc2WS9CO0FBQ0Y7O0FpQjVsWkk7RStCaUNBO0lBQ0UsbUJBQW1CO0VoRCtqWnZCO0VnRGhrWkU7SW5DakNBLGtDUHNMZ0M7SU9sTWhDLDBCbUNtRHdDO0VoRDhqWjFDO0VnRHBrWkU7SW5DN0NBLGdDUGtNZ0M7SU90TGhDLDRCbUM0QzBDO0VoRDZqWjVDO0VnRHhrWkU7SUFlTSxhQUFhO0VoRDRqWnJCO0VnRDNrWkU7SUFtQk0scUIxQytIdUI7STBDOUh2QixvQkFBb0I7RWhEMmpaNUI7RWdEL2taRTtJQXVCUSxpQjFDMkhxQjtJMEMxSHJCLHNCMUMwSHFCO0VOaThZL0I7QUFDRjs7QWlCcm5aSTtFK0JpQ0E7SUFDRSxtQkFBbUI7RWhEd2xadkI7RWdEemxaRTtJbkNqQ0Esa0NQc0xnQztJT2xNaEMsMEJtQ21Ed0M7RWhEdWxaMUM7RWdEN2xaRTtJbkM3Q0EsZ0NQa01nQztJT3RMaEMsNEJtQzRDMEM7RWhEc2xaNUM7RWdEam1aRTtJQWVNLGFBQWE7RWhEcWxackI7RWdEcG1aRTtJQW1CTSxxQjFDK0h1QjtJMEM5SHZCLG9CQUFvQjtFaERvbFo1QjtFZ0R4bVpFO0lBdUJRLGlCMUMySHFCO0kwQzFIckIsc0IxQzBIcUI7RU4wOVkvQjtBQUNGOztBZ0R2a1pBO0VBRUkscUJBQXFCO0VBQ3JCLG9CQUFvQjtFbkNqSXBCLGdCbUNrSXdCO0FoRHlrWjVCOztBZ0Q3a1pBO0VBT00sbUJBQW1CO0FoRDBrWnpCOztBZ0RqbFpBO0VBYU0sc0JBQXNCO0FoRHdrWjVCOztBaURydFpFO0VBQ0UsYzVCMkY4RDtFNEIxRjlELHlCNUIwRjhEO0FyQjhuWmxFOztBUTdzWkU7RXlDUE0sYzVCc0YwRDtFNEJyRjFELHlCQUF5QztBakR3dFpqRDs7QWlEL3RaRTtFQVdNLFczQ1BPO0UyQ1FQLHlCNUJnRjBEO0U0Qi9FMUQscUI1QitFMEQ7QXJCeW9abEU7O0FpRHJ1WkU7RUFDRSxjNUIyRjhEO0U0QjFGOUQseUI1QjBGOEQ7QXJCOG9abEU7O0FRN3RaRTtFeUNQTSxjNUJzRjBEO0U0QnJGMUQseUJBQXlDO0FqRHd1WmpEOztBaUQvdVpFO0VBV00sVzNDUE87RTJDUVAseUI1QmdGMEQ7RTRCL0UxRCxxQjVCK0UwRDtBckJ5cFpsRTs7QWlEcnZaRTtFQUNFLGM1QjJGOEQ7RTRCMUY5RCx5QjVCMEY4RDtBckI4cFpsRTs7QVE3dVpFO0V5Q1BNLGM1QnNGMEQ7RTRCckYxRCx5QkFBeUM7QWpEd3ZaakQ7O0FpRC92WkU7RUFXTSxXM0NQTztFMkNRUCx5QjVCZ0YwRDtFNEIvRTFELHFCNUIrRTBEO0FyQnlxWmxFOztBaURyd1pFO0VBQ0UsYzVCMkY4RDtFNEIxRjlELHlCNUIwRjhEO0FyQjhxWmxFOztBUTd2WkU7RXlDUE0sYzVCc0YwRDtFNEJyRjFELHlCQUF5QztBakR3d1pqRDs7QWlEL3daRTtFQVdNLFczQ1BPO0UyQ1FQLHlCNUJnRjBEO0U0Qi9FMUQscUI1QitFMEQ7QXJCeXJabEU7O0FpRHJ4WkU7RUFDRSxjNUIyRjhEO0U0QjFGOUQseUI1QjBGOEQ7QXJCOHJabEU7O0FRN3daRTtFeUNQTSxjNUJzRjBEO0U0QnJGMUQseUJBQXlDO0FqRHd4WmpEOztBaUQveFpFO0VBV00sVzNDUE87RTJDUVAseUI1QmdGMEQ7RTRCL0UxRCxxQjVCK0UwRDtBckJ5c1psRTs7QWlEcnlaRTtFQUNFLGM1QjJGOEQ7RTRCMUY5RCx5QjVCMEY4RDtBckI4c1psRTs7QVE3eFpFO0V5Q1BNLGM1QnNGMEQ7RTRCckYxRCx5QkFBeUM7QWpEd3laakQ7O0FpRC95WkU7RUFXTSxXM0NQTztFMkNRUCx5QjVCZ0YwRDtFNEIvRTFELHFCNUIrRTBEO0FyQnl0WmxFOztBaURyelpFO0VBQ0UsYzVCMkY4RDtFNEIxRjlELHlCNUIwRjhEO0FyQjh0WmxFOztBUTd5WkU7RXlDUE0sYzVCc0YwRDtFNEJyRjFELHlCQUF5QztBakR3elpqRDs7QWlEL3paRTtFQVdNLFczQ1BPO0UyQ1FQLHlCNUJnRjBEO0U0Qi9FMUQscUI1QitFMEQ7QXJCeXVabEU7O0FpRHIwWkU7RUFDRSxjNUIyRjhEO0U0QjFGOUQseUI1QjBGOEQ7QXJCOHVabEU7O0FRN3paRTtFeUNQTSxjNUJzRjBEO0U0QnJGMUQseUJBQXlDO0FqRHcwWmpEOztBaUQvMFpFO0VBV00sVzNDUE87RTJDUVAseUI1QmdGMEQ7RTRCL0UxRCxxQjVCK0UwRDtBckJ5dlpsRTs7QWtEeDFaQTtFQUNFLFlBQVk7RTNDOEhSLGlCQXRDWTtFMkN0RmhCLGdCNUNpUytCO0U0Q2hTL0IsY0FBYztFQUNkLFc1Q1lhO0U0Q1hiLHlCNUNDYTtFNENBYixXQUFXO0FsRDIxWmI7O0FRdDFaRTtFMENERSxXNUNNVztFNENMWCxxQkFBcUI7QWxEMjFaekI7O0FRdjFaRTtFMENDSSxZQUFZO0FsRDAxWmxCOztBa0QvMFpBO0VBQ0UsVUFBVTtFQUNWLDZCQUE2QjtFQUM3QixTQUFTO0VBQ1Qsd0JBQWdCO0tBQWhCLHFCQUFnQjtVQUFoQixnQkFBZ0I7QWxEazFabEI7O0FrRDUwWkE7RUFDRSxvQkFBb0I7QWxEKzBadEI7O0FtRHQzWkE7RUFDRSxnQjdDeTRCdUM7RTZDeDRCdkMsZ0JBQWdCO0U1QzZIWixtQkF0Q1k7RTRDcEZoQiwyQzdDRWE7RTZDRGIsNEJBQTRCO0VBQzVCLG9DN0MwNEJtRDtFNkN6NEJuRCxnRDdDU2E7RTZDUmIsbUNBQTJCO1VBQTNCLDJCQUEyQjtFQUMzQixVQUFVO0V0Q0xSLHNCUDY0QnNDO0FOaS9YMUM7O0FtRG40WkE7RUFjSSxzQjdDNjNCc0M7QU40L1gxQzs7QW1EdjRaQTtFQWtCSSxVQUFVO0FuRHkzWmQ7O0FtRDM0WkE7RUFzQkksY0FBYztFQUNkLFVBQVU7QW5EeTNaZDs7QW1EaDVaQTtFQTJCSSxhQUFhO0FuRHkzWmpCOztBbURyM1pBO0VBQ0UsYUFBYTtFQUNiLG1CQUFtQjtFQUNuQix3QjdDeTJCd0M7RTZDeDJCeEMsYzdDdEJnQjtFNkN1QmhCLDJDN0M3QmE7RTZDOEJiLDRCQUE0QjtFQUM1Qiw0QzdDaTNCb0Q7QU51Z1l0RDs7QW1EcjNaQTtFQUNFLGdCN0NpMkJ3QztBTnVoWTFDOztBb0Q1NVpBO0VBRUUsZ0JBQWdCO0FwRDg1WmxCOztBb0RoNlpBO0VBS0ksa0JBQWtCO0VBQ2xCLGdCQUFnQjtBcEQrNVpwQjs7QW9EMTVaQTtFQUNFLGVBQWU7RUFDZixNQUFNO0VBQ04sT0FBTztFQUNQLGE5QytwQnNDO0U4QzlwQnRDLGFBQWE7RUFDYixXQUFXO0VBQ1gsWUFBWTtFQUNaLGdCQUFnQjtFQUdoQixVQUFVO0FwRDI1Wlo7O0FvRHA1WkE7RUFDRSxrQkFBa0I7RUFDbEIsV0FBVztFQUNYLGM5QzY0QnVDO0U4QzM0QnZDLG9CQUFvQjtBcERzNVp0Qjs7QW9EbjVaRTtFN0JyQ0ksbUNqQjQ4Qm9EO0U4Q3I2QnRELDhCOUNtNkJtRDtBTm0vWHZEOztBdUJ4N1pJO0U2QmdDRjtJN0IvQkksZ0JBQWdCO0V2QjQ3WnBCO0FBQ0Y7O0FvRDE1WkU7RUFDRSxlOUNpNkJvQztBTjQvWHhDOztBb0R6NVpFO0VBQ0Usc0I5Qzg1QjJDO0FOOC9YL0M7O0FvRHg1WkE7RUFDRSxhQUFhO0VBQ2IsNkIvQnlFOEQ7QXJCazFaaEU7O0FvRDc1WkE7RUFLSSw4Qi9Cc0U0RDtFK0JyRTVELGdCQUFnQjtBcEQ0NVpwQjs7QW9EbDZaQTs7RUFXSSxjQUFjO0FwRDQ1WmxCOztBb0R2NlpBO0VBZUksZ0JBQWdCO0FwRDQ1WnBCOztBb0R4NVpBO0VBQ0UsYUFBYTtFQUNiLG1CQUFtQjtFQUNuQiw2Qi9CcUQ4RDtBckJzMlpoRTs7QW9EOTVaQTtFQU9JLGNBQWM7RUFDZCwwQi9CZ0Q0RDtFK0IvQzVELFdBQVc7QXBEMjVaZjs7QW9EcDZaQTtFQWNJLHNCQUFzQjtFQUN0Qix1QkFBdUI7RUFDdkIsWUFBWTtBcEQwNVpoQjs7QW9EMTZaQTtFQW1CTSxnQkFBZ0I7QXBEMjVadEI7O0FvRDk2WkE7RUF1Qk0sYUFBYTtBcEQyNVpuQjs7QW9EcjVaQTtFQUNFLGtCQUFrQjtFQUNsQixhQUFhO0VBQ2Isc0JBQXNCO0VBQ3RCLFdBQVc7RUFHWCxvQkFBb0I7RUFDcEIsc0I5QzFHYTtFOEMyR2IsNEJBQTRCO0VBQzVCLG9DOUNsR2E7RU9aWCxxQlA4TytCO0U4QzVIakMsVUFBVTtBcERvNVpaOztBb0RoNVpBO0VBQ0UsZUFBZTtFQUNmLE1BQU07RUFDTixPQUFPO0VBQ1AsYTlDb2pCc0M7RThDbmpCdEMsWUFBWTtFQUNaLGFBQWE7RUFDYixzQjlDakhhO0FOb2dhZjs7QW9EMTVaQTtFQVVXLFVBQVU7QXBEbzVackI7O0FvRDk1WkE7RUFXVyxZOUM0ekIyQjtBTjJsWXRDOztBb0RsNVpBO0VBQ0UsYUFBYTtFQUNiLHVCQUF1QjtFQUN2Qiw4QkFBOEI7RUFDOUIsa0I5Q3l6QnNDO0U4Q3h6QnRDLGdDOUN0SWdCO0VPSWQsMENRc0g0RDtFUnJINUQsMkNRcUg0RDtBckJtNlpoRTs7QW9ENTVaQTtFQVNJLGtCOUNvekJvQztFOENsekJwQyw4QkFBNkY7QXBEczVaakc7O0FvRGo1WkE7RUFDRSxnQkFBZ0I7RUFDaEIsZ0I5QzJJK0I7QU55d1pqQzs7QW9ELzRaQTtFQUNFLGtCQUFrQjtFQUdsQixjQUFjO0VBQ2QsYTlDdXdCc0M7QU55b1l4Qzs7QW9ENTRaQTtFQUNFLGFBQWE7RUFDYixlQUFlO0VBQ2YsbUJBQW1CO0VBQ25CLHlCQUF5QjtFQUN6QixnQkFBZ0U7RUFDaEUsNkI5Q3ZLZ0I7RU9rQmQsOENRd0c0RDtFUnZHNUQsNkNRdUc0RDtBckI4N1poRTs7QW9EdjVaQTtFQWNJLGVBQXdDO0FwRDY0WjVDOztBb0R4NFpBO0VBQ0Usa0JBQWtCO0VBQ2xCLFlBQVk7RUFDWixXQUFXO0VBQ1gsWUFBWTtFQUNaLGdCQUFnQjtBcEQyNFpsQjs7QWlCbGhhSTtFbUN6Qko7SUF1S0ksZ0I5Q213QnFDO0k4Q2x3QnJDLG9CQUF5QztFcER5NFozQztFb0QzaGFGO0lBc0pJLCtCL0IzRTREO0VyQm05WjlEO0VvRDloYUY7SUF5Sk0sZ0MvQjlFMEQ7RXJCczlaOUQ7RW9EOWdhRjtJQTJJSSwrQi9CbkY0RDtFckJ5OVo5RDtFb0RqaGFGO0lBOElNLDRCL0J0RjBEO0VyQjQ5WjlEO0VvRDkzWkE7SUFBWSxnQjlDNHVCMkI7RU5xcFl2QztBQUNGOztBaUJ4aWFJO0VtQzBLRjs7SUFFRSxnQjlDb3VCcUM7RU44cFl2QztBQUNGOztBaUIvaWFJO0VtQ2lMRjtJQUFZLGlCOUM4dEI0QjtFTnFxWXhDO0FBQ0Y7O0FxRGhuYUE7RUFDRSxrQkFBa0I7RUFDbEIsYS9DbXJCc0M7RStDbHJCdEMsY0FBYztFQUNkLFMvQ3kxQm1DO0VnRDcxQm5DLGtNaER1UmlOO0VnRHJSak4sa0JBQWtCO0VBQ2xCLGdCaEQrUitCO0VnRDlSL0IsZ0JoRG1TK0I7RWdEbFMvQixnQkFBZ0I7RUFDaEIsaUJBQWlCO0VBQ2pCLHFCQUFxQjtFQUNyQixpQkFBaUI7RUFDakIsb0JBQW9CO0VBQ3BCLHNCQUFzQjtFQUN0QixrQkFBa0I7RUFDbEIsb0JBQW9CO0VBQ3BCLG1CQUFtQjtFQUNuQixnQkFBZ0I7RS9DZ0haLG1CQXRDWTtFOEM5RWhCLHFCQUFxQjtFQUNyQixVQUFVO0FyRDZuYVo7O0FxRHhvYUE7RUFhVyxZL0M2MEIyQjtBTmt6WXRDOztBcUQ1b2FBO0VBZ0JJLGtCQUFrQjtFQUNsQixjQUFjO0VBQ2QsYS9DNjBCcUM7RStDNTBCckMsYy9DNjBCcUM7QU5tell6Qzs7QXFEbnBhQTtFQXNCTSxrQkFBa0I7RUFDbEIsV0FBVztFQUNYLHlCQUF5QjtFQUN6QixtQkFBbUI7QXJEaW9hekI7O0FxRDVuYUE7RUFDRSxpQkFBZ0M7QXJEK25hbEM7O0FxRGhvYUE7RUFJSSxTQUFTO0FyRGdvYWI7O0FxRHBvYUE7RUFPTSxNQUFNO0VBQ04sNkJBQWdFO0VBQ2hFLHNCL0N2QlM7QU53cGFmOztBcUQ1bmFBO0VBQ0UsaUIvQ216QnVDO0FONDBZekM7O0FxRGhvYUE7RUFJSSxPQUFPO0VBQ1AsYS9DK3lCcUM7RStDOXlCckMsYy9DNnlCcUM7QU5tMVl6Qzs7QXFEdG9hQTtFQVNNLFFBQVE7RUFDUixvQ0FBMkY7RUFDM0Ysd0IvQ3ZDUztBTndxYWY7O0FxRDVuYUE7RUFDRSxpQkFBZ0M7QXJEK25hbEM7O0FxRGhvYUE7RUFJSSxNQUFNO0FyRGdvYVY7O0FxRHBvYUE7RUFPTSxTQUFTO0VBQ1QsNkIvQzR4Qm1DO0UrQzN4Qm5DLHlCL0NyRFM7QU5zcmFmOztBcUQ1bmFBO0VBQ0UsaUIvQ3F4QnVDO0FOMDJZekM7O0FxRGhvYUE7RUFJSSxRQUFRO0VBQ1IsYS9DaXhCcUM7RStDaHhCckMsYy9DK3dCcUM7QU5pM1l6Qzs7QXFEdG9hQTtFQVNNLE9BQU87RUFDUCxvQy9DNHdCbUM7RStDM3dCbkMsdUIvQ3JFUztBTnNzYWY7O0FxRDVtYUE7RUFDRSxnQi9DMnVCdUM7RStDMXVCdkMsdUIvQ2d2QnVDO0UrQy91QnZDLFcvQ3ZHYTtFK0N3R2Isa0JBQWtCO0VBQ2xCLHNCL0MvRmE7RU9aWCxzQlA2T2dDO0FOOCtacEM7O0F1RGh1YUE7RUFDRSxrQkFBa0I7RUFDbEIsTUFBTTtFQUNOLE9BQU87RUFDUCxhakRpckJzQztFaURockJ0QyxjQUFjO0VBQ2QsZ0JqRDIyQnVDO0VnRGgzQnZDLGtNaER1UmlOO0VnRHJSak4sa0JBQWtCO0VBQ2xCLGdCaEQrUitCO0VnRDlSL0IsZ0JoRG1TK0I7RWdEbFMvQixnQkFBZ0I7RUFDaEIsaUJBQWlCO0VBQ2pCLHFCQUFxQjtFQUNyQixpQkFBaUI7RUFDakIsb0JBQW9CO0VBQ3BCLHNCQUFzQjtFQUN0QixrQkFBa0I7RUFDbEIsb0JBQW9CO0VBQ3BCLG1CQUFtQjtFQUNuQixnQkFBZ0I7RS9DZ0haLG1CQXRDWTtFZ0Q3RWhCLHFCQUFxQjtFQUNyQixzQmpETmE7RWlET2IsNEJBQTRCO0VBQzVCLG9DakRFYTtFT1pYLHFCUDhPK0I7QU4wZ2FuQzs7QXVEN3ZhQTtFQW9CSSxrQkFBa0I7RUFDbEIsY0FBYztFQUNkLFdqRDIyQm9DO0VpRDEyQnBDLGNqRDIyQnFDO0VpRDEyQnJDLGdCakQyTitCO0FOa2hhbkM7O0F1RHJ3YUE7RUE0Qk0sa0JBQWtCO0VBQ2xCLGNBQWM7RUFDZCxXQUFXO0VBQ1gseUJBQXlCO0VBQ3pCLG1CQUFtQjtBdkQ2dWF6Qjs7QXVEeHVhQTtFQUNFLHFCakQ0MUJ1QztBTis0WXpDOztBdUQ1dWFBO0VBSUksMkJsQzJGNEQ7QXJCaXBhaEU7O0F1RGh2YUE7RUFPTSxTQUFTO0VBQ1QsNkJBQWdFO0VBQ2hFLHFDakR1MUJpRTtBTnM1WXZFOztBdUR0dmFBO0VBYU0sV2pENkwyQjtFaUQ1TDNCLDZCQUFnRTtFQUNoRSxzQmpEN0NTO0FOMHhhZjs7QXVEeHVhQTtFQUNFLG1CakR3MEJ1QztBTm02WXpDOztBdUQ1dWFBO0VBSUkseUJsQ3VFNEQ7RWtDdEU1RCxhakRvMEJxQztFaURuMEJyQyxZakRrMEJvQztFaURqMEJwQyxnQkFBZ0M7QXZENHVhcEM7O0F1RG52YUE7RUFVTSxPQUFPO0VBQ1Asb0NBQTJGO0VBQzNGLHVDakRnMEJpRTtBTjY2WXZFOztBdUR6dmFBO0VBZ0JNLFNqRHNLMkI7RWlEckszQixvQ0FBMkY7RUFDM0Ysd0JqRHBFUztBTml6YWY7O0F1RHh1YUE7RUFDRSxrQmpEaXpCdUM7QU4wN1l6Qzs7QXVENXVhQTtFQUlJLHdCbENnRDREO0FyQjRyYWhFOztBdURodmFBO0VBT00sTUFBTTtFQUNOLG9DQUEyRjtFQUMzRix3Q2pENHlCaUU7QU5pOFl2RTs7QXVEdHZhQTtFQWFNLFFqRGtKMkI7RWlEakozQixvQ0FBMkY7RUFDM0YseUJqRHhGUztBTnEwYWY7O0F1RDV2YUE7RUFxQkksa0JBQWtCO0VBQ2xCLE1BQU07RUFDTixTQUFTO0VBQ1QsY0FBYztFQUNkLFdqRHd4Qm9DO0VpRHZ4QnBDLG9CQUFzQztFQUN0QyxXQUFXO0VBQ1gsZ0NqRDR3QnVEO0FOKzlZM0Q7O0F1RHZ1YUE7RUFDRSxvQmpEaXhCdUM7QU55OVl6Qzs7QXVEM3VhQTtFQUlJLDBCbENnQjREO0VrQ2Y1RCxhakQ2d0JxQztFaUQ1d0JyQyxZakQyd0JvQztFaUQxd0JwQyxnQkFBZ0M7QXZEMnVhcEM7O0F1RGx2YUE7RUFVTSxRQUFRO0VBQ1Isb0NqRHV3Qm1DO0VpRHR3Qm5DLHNDakR5d0JpRTtBTm0rWXZFOztBdUR4dmFBO0VBZ0JNLFVqRCtHMkI7RWlEOUczQixvQ2pEaXdCbUM7RWlEaHdCbkMsdUJqRDNIUztBTnUyYWY7O0F1RHR0YUE7RUFDRSx1QmpEa3VCd0M7RWlEanVCeEMsZ0JBQWdCO0VoRDNCWixlQXRDWTtFZ0RvRWhCLHlCakQydEJ5RDtFaUQxdEJ6RCxnQ0FBeUU7RTFDaEp2RSwwQ1FzSDREO0VSckg1RCwyQ1FxSDREO0FyQm92YWhFOztBdURodWFBO0VBVUksYUFBYTtBdkQwdGFqQjs7QXVEdHRhQTtFQUNFLHVCakRvdEJ3QztFaURudEJ4QyxjakR4SmdCO0FOaTNhbEI7O0F3RHAzYUE7RUFDRSxrQkFBa0I7QXhEdTNhcEI7O0F3RHAzYUE7RUFDRSxtQkFBbUI7QXhEdTNhckI7O0F3RHAzYUE7RUFDRSxrQkFBa0I7RUFDbEIsV0FBVztFQUNYLGdCQUFnQjtBeER1M2FsQjs7QXlEOTRhRTtFQUNFLGNBQWM7RUFDZCxXQUFXO0VBQ1gsV0FBVztBekRpNWFmOztBd0R6M2FBO0VBQ0Usa0JBQWtCO0VBQ2xCLGFBQWE7RUFDYixXQUFXO0VBQ1gsV0FBVztFQUNYLG1CQUFtQjtFQUNuQixtQ0FBMkI7VUFBM0IsMkJBQTJCO0VqQzVCdkIsc0NqQmlrQ2tGO0FOdzFZeEY7O0F1QnA1YUk7RWlDaUJKO0lqQ2hCTSxnQkFBZ0I7RXZCdzVhcEI7QUFDRjs7QXdELzNhQTs7O0VBR0UsY0FBYztBeERrNGFoQjs7QXdELzNhQTs7RUFFRSwyQkFBMkI7QXhEazRhN0I7O0F3RC8zYUE7O0VBRUUsNEJBQTRCO0F4RGs0YTlCOztBd0QxM2FBO0VBRUksVUFBVTtFQUNWLDRCQUE0QjtFQUM1QixlQUFlO0F4RDQzYW5COztBd0RoNGFBOzs7RUFVSSxVQUFVO0VBQ1YsVUFBVTtBeEQ0M2FkOztBd0R2NGFBOztFQWdCSSxVQUFVO0VBQ1YsVUFBVTtFakN0RVIsMkJqQmdrQ2tDO0FObTRZeEM7O0F1Qjk3YUk7RWlDZ0RKOztJakMvQ00sZ0JBQWdCO0V2Qm04YXBCO0FBQ0Y7O0F3RDEzYUE7O0VBRUUsa0JBQWtCO0VBQ2xCLE1BQU07RUFDTixTQUFTO0VBQ1QsVUFBVTtFQUVWLGFBQWE7RUFDYixtQkFBbUI7RUFDbkIsdUJBQXVCO0VBQ3ZCLFVsRGs5QnNDO0VrRGo5QnRDLFdsRDFGYTtFa0QyRmIsa0JBQWtCO0VBQ2xCLFlsRGc5QnFDO0VpQjdpQ2pDLDhCakIraUNnRDtBTjI2WXREOztBdUJyOWFJO0VpQzJFSjs7SWpDMUVNLGdCQUFnQjtFdkIwOWFwQjtBQUNGOztBUXY5YUU7OztFZ0R3RkUsV2xEakdXO0VrRGtHWCxxQkFBcUI7RUFDckIsVUFBVTtFQUNWLFlsRHk4Qm1DO0FONDdZdkM7O0F3RGw0YUE7RUFDRSxPQUFPO0F4RHE0YVQ7O0F3RGg0YUE7RUFDRSxRQUFRO0F4RG00YVY7O0F3RDUzYUE7O0VBRUUscUJBQXFCO0VBQ3JCLFdsRGs4QnVDO0VrRGo4QnZDLFlsRGk4QnVDO0VrRGg4QnZDLHFDQUFxQztBeEQrM2F2Qzs7QXdENzNhQTtFQUNFLHNObkN4RnlJO0FyQnc5YTNJOztBd0Q5M2FBO0VBQ0UsdU5uQzNGeUk7QXJCNDlhM0k7O0F3RHgzYUE7RUFDRSxrQkFBa0I7RUFDbEIsUUFBUTtFQUNSLFNBQVM7RUFDVCxPQUFPO0VBQ1AsV0FBVztFQUNYLGFBQWE7RUFDYix1QkFBdUI7RUFDdkIsZUFBZTtFQUVmLGlCbER3NUJzQztFa0R2NUJ0QyxnQmxEdTVCc0M7RWtEdDVCdEMsZ0JBQWdCO0F4RDAzYWxCOztBd0R0NGFBO0VBZUksdUJBQXVCO0VBQ3ZCLGNBQWM7RUFDZCxXbERzNUJxQztFa0RyNUJyQyxXbERzNUJvQztFa0RyNUJwQyxpQmxEdTVCb0M7RWtEdDVCcEMsZ0JsRHM1Qm9DO0VrRHI1QnBDLG1CQUFtQjtFQUNuQixlQUFlO0VBQ2Ysc0JsRGhLVztFa0RpS1gsNEJBQTRCO0VBRTVCLGtDQUFpRTtFQUNqRSxxQ0FBb0U7RUFDcEUsV0FBVztFakN0S1QsNkJqQnNqQytDO0FOMitZckQ7O0F1QjVoYkk7RWlDcUlKO0lqQ3BJTSxnQkFBZ0I7RXZCZ2licEI7QUFDRjs7QXdENzVhQTtFQWlDSSxVQUFVO0F4RGc0YWQ7O0F3RHYzYUE7RUFDRSxrQkFBa0I7RUFDbEIsVUFBMkM7RUFDM0MsWUFBWTtFQUNaLFNBQTBDO0VBQzFDLFdBQVc7RUFDWCxpQkFBaUI7RUFDakIsb0JBQW9CO0VBQ3BCLFdsRDNMYTtFa0Q0TGIsa0JBQWtCO0F4RDAzYXBCOztBMER6amJBO0VBQ0U7SUFBSyx5QkFBeUI7RTFENmpiOUI7QUFDRjs7QTBEL2piQTtFQUNFO0lBQUsseUJBQXlCO0UxRDZqYjlCO0FBQ0Y7O0EwRDNqYkE7RUFDRSxxQkFBcUI7RUFDckIsV3BEa2tDMEI7RW9EamtDMUIsWXBEaWtDMEI7RW9EaGtDMUIsMkJBQTJCO0VBQzNCLGlDQUFnRDtFQUNoRCwrQkFBK0I7RUFFL0Isa0JBQWtCO0VBQ2xCLHNEQUE4QztVQUE5Qyw4Q0FBOEM7QTFENmpiaEQ7O0EwRDFqYkE7RUFDRSxXcEQyakM0QjtFb0QxakM1QixZcEQwakM0QjtFb0R6akM1QixtQnBEMmpDNEI7QU5rZ1o5Qjs7QTBEdGpiQTtFQUNFO0lBQ0UsbUJBQW1CO0UxRHlqYnJCO0UwRHZqYkE7SUFDRSxVQUFVO0UxRHlqYlo7QUFDRjs7QTBEL2piQTtFQUNFO0lBQ0UsbUJBQW1CO0UxRHlqYnJCO0UwRHZqYkE7SUFDRSxVQUFVO0UxRHlqYlo7QUFDRjs7QTBEdGpiQTtFQUNFLHFCQUFxQjtFQUNyQixXcERtaUMwQjtFb0RsaUMxQixZcERraUMwQjtFb0RqaUMxQiwyQkFBMkI7RUFDM0IsOEJBQThCO0VBRTlCLGtCQUFrQjtFQUNsQixVQUFVO0VBQ1Ysb0RBQTRDO1VBQTVDLDRDQUE0QztBMUR3amI5Qzs7QTBEcmpiQTtFQUNFLFdwRDRoQzRCO0VvRDNoQzVCLFlwRDJoQzRCO0FONmhaOUI7O0EyRDNtYkE7RUFBcUIsbUNBQW1DO0EzRCttYnhEOztBMkQ5bWJBO0VBQXFCLDhCQUE4QjtBM0RrbmJuRDs7QTJEam5iQTtFQUFxQixpQ0FBaUM7QTNEcW5idEQ7O0EyRHBuYkE7RUFBcUIsaUNBQWlDO0EzRHduYnREOztBMkR2bmJBO0VBQXFCLHNDQUFzQztBM0QybmIzRDs7QTJEMW5iQTtFQUFxQixtQ0FBbUM7QTNEOG5ieEQ7O0E0RGhvYkU7RUFDRSxvQ0FBbUM7QTVEbW9idkM7O0FRem5iRTs7O0VvRExJLG9DQUFnRDtBNURvb2J0RDs7QTREMW9iRTtFQUNFLG9DQUFtQztBNUQ2b2J2Qzs7QVFub2JFOzs7RW9ETEksb0NBQWdEO0E1RDhvYnREOztBNERwcGJFO0VBQ0Usb0NBQW1DO0E1RHVwYnZDOztBUTdvYkU7OztFb0RMSSxvQ0FBZ0Q7QTVEd3BidEQ7O0E0RDlwYkU7RUFDRSxvQ0FBbUM7QTVEaXFidkM7O0FRdnBiRTs7O0VvRExJLG9DQUFnRDtBNURrcWJ0RDs7QTREeHFiRTtFQUNFLG9DQUFtQztBNUQycWJ2Qzs7QVFqcWJFOzs7RW9ETEksb0NBQWdEO0E1RDRxYnREOztBNERscmJFO0VBQ0Usb0NBQW1DO0E1RHFyYnZDOztBUTNxYkU7OztFb0RMSSxvQ0FBZ0Q7QTVEc3JidEQ7O0E0RDVyYkU7RUFDRSxvQ0FBbUM7QTVEK3JidkM7O0FRcnJiRTs7O0VvRExJLG9DQUFnRDtBNURnc2J0RDs7QTREdHNiRTtFQUNFLG9DQUFtQztBNUR5c2J2Qzs7QVEvcmJFOzs7RW9ETEksb0NBQWdEO0E1RDBzYnREOztBNkR6c2JBO0VBQ0UsaUNBQW1DO0E3RDRzYnJDOztBNkR6c2JBO0VBQ0Usd0NBQXdDO0E3RDRzYjFDOztBOER2dGJBO0VBQWtCLG9DQUFvRDtBOUQydGJ0RTs7QThEMXRiQTtFQUFrQix3Q0FBd0Q7QTlEOHRiMUU7O0E4RDd0YkE7RUFBa0IsMENBQTBEO0E5RGl1YjVFOztBOERodWJBO0VBQWtCLDJDQUEyRDtBOURvdWI3RTs7QThEbnViQTtFQUFrQix5Q0FBeUQ7QTlEdXViM0U7O0E4RHJ1YkE7RUFBbUIsb0JBQW9CO0E5RHl1YnZDOztBOER4dWJBO0VBQW1CLHdCQUF3QjtBOUQ0dWIzQzs7QThEM3ViQTtFQUFtQiwwQkFBMEI7QTlEK3ViN0M7O0E4RDl1YkE7RUFBbUIsMkJBQTJCO0E5RGt2YjlDOztBOERqdmJBO0VBQW1CLHlCQUF5QjtBOURxdmI1Qzs7QThEbHZiRTtFQUNFLGdDQUErQjtBOURxdmJuQzs7QThEdHZiRTtFQUNFLGdDQUErQjtBOUR5dmJuQzs7QThEMXZiRTtFQUNFLGdDQUErQjtBOUQ2dmJuQzs7QThEOXZiRTtFQUNFLGdDQUErQjtBOURpd2JuQzs7QThEbHdiRTtFQUNFLGdDQUErQjtBOURxd2JuQzs7QThEdHdiRTtFQUNFLGdDQUErQjtBOUR5d2JuQzs7QThEMXdiRTtFQUNFLGdDQUErQjtBOUQ2d2JuQzs7QThEOXdiRTtFQUNFLGdDQUErQjtBOURpeGJuQzs7QThEN3diQTtFQUNFLDZCQUErQjtBOURneGJqQzs7QThEendiQTtFQUNFLGdDQUEyQztBOUQ0d2I3Qzs7QThEendiQTtFQUNFLGlDQUF3QztBOUQ0d2IxQzs7QThEendiQTtFQUNFLDBDQUFpRDtFQUNqRCwyQ0FBa0Q7QTlENHdicEQ7O0E4RHp3YkE7RUFDRSwyQ0FBa0Q7RUFDbEQsOENBQXFEO0E5RDR3YnZEOztBOER6d2JBO0VBQ0UsOENBQXFEO0VBQ3JELDZDQUFvRDtBOUQ0d2J0RDs7QThEendiQTtFQUNFLDBDQUFpRDtFQUNqRCw2Q0FBb0Q7QTlENHdidEQ7O0E4RHp3YkE7RUFDRSxnQ0FBMkM7QTlENHdiN0M7O0E4RHp3YkE7RUFDRSw2QkFBNkI7QTlENHdiL0I7O0E4RHp3YkE7RUFDRSwrQkFBdUM7QTlENHdiekM7O0E4RHp3YkE7RUFDRSwyQkFBMkI7QTlENHdiN0I7O0F5RHAxYkU7RUFDRSxjQUFjO0VBQ2QsV0FBVztFQUNYLFdBQVc7QXpEdTFiZjs7QStEaDFiTTtFQUF3Qix3QkFBMEI7QS9EbzFieEQ7O0ErRHAxYk07RUFBd0IsMEJBQTBCO0EvRHcxYnhEOztBK0R4MWJNO0VBQXdCLGdDQUEwQjtBL0Q0MWJ4RDs7QStENTFiTTtFQUF3Qix5QkFBMEI7QS9EZzJieEQ7O0ErRGgyYk07RUFBd0IseUJBQTBCO0EvRG8yYnhEOztBK0RwMmJNO0VBQXdCLDZCQUEwQjtBL0R3MmJ4RDs7QStEeDJiTTtFQUF3Qiw4QkFBMEI7QS9ENDJieEQ7O0ErRDUyYk07RUFBd0Isd0JBQTBCO0EvRGczYnhEOztBK0RoM2JNO0VBQXdCLCtCQUEwQjtBL0RvM2J4RDs7QWlCbjBiSTtFOENqREU7SUFBd0Isd0JBQTBCO0UvRHkzYnREO0UrRHozYkk7SUFBd0IsMEJBQTBCO0UvRDQzYnREO0UrRDUzYkk7SUFBd0IsZ0NBQTBCO0UvRCszYnREO0UrRC8zYkk7SUFBd0IseUJBQTBCO0UvRGs0YnREO0UrRGw0Ykk7SUFBd0IseUJBQTBCO0UvRHE0YnREO0UrRHI0Ykk7SUFBd0IsNkJBQTBCO0UvRHc0YnREO0UrRHg0Ykk7SUFBd0IsOEJBQTBCO0UvRDI0YnREO0UrRDM0Ykk7SUFBd0Isd0JBQTBCO0UvRDg0YnREO0UrRDk0Ykk7SUFBd0IsK0JBQTBCO0UvRGk1YnREO0FBQ0Y7O0FpQmoyYkk7RThDakRFO0lBQXdCLHdCQUEwQjtFL0R1NWJ0RDtFK0R2NWJJO0lBQXdCLDBCQUEwQjtFL0QwNWJ0RDtFK0QxNWJJO0lBQXdCLGdDQUEwQjtFL0Q2NWJ0RDtFK0Q3NWJJO0lBQXdCLHlCQUEwQjtFL0RnNmJ0RDtFK0RoNmJJO0lBQXdCLHlCQUEwQjtFL0RtNmJ0RDtFK0RuNmJJO0lBQXdCLDZCQUEwQjtFL0RzNmJ0RDtFK0R0NmJJO0lBQXdCLDhCQUEwQjtFL0R5NmJ0RDtFK0R6NmJJO0lBQXdCLHdCQUEwQjtFL0Q0NmJ0RDtFK0Q1NmJJO0lBQXdCLCtCQUEwQjtFL0QrNmJ0RDtBQUNGOztBaUIvM2JJO0U4Q2pERTtJQUF3Qix3QkFBMEI7RS9EcTdidEQ7RStEcjdiSTtJQUF3QiwwQkFBMEI7RS9EdzdidEQ7RStEeDdiSTtJQUF3QixnQ0FBMEI7RS9EMjdidEQ7RStEMzdiSTtJQUF3Qix5QkFBMEI7RS9EODdidEQ7RStEOTdiSTtJQUF3Qix5QkFBMEI7RS9EaThidEQ7RStEajhiSTtJQUF3Qiw2QkFBMEI7RS9EbzhidEQ7RStEcDhiSTtJQUF3Qiw4QkFBMEI7RS9EdThidEQ7RStEdjhiSTtJQUF3Qix3QkFBMEI7RS9EMDhidEQ7RStEMThiSTtJQUF3QiwrQkFBMEI7RS9ENjhidEQ7QUFDRjs7QWlCNzViSTtFOENqREU7SUFBd0Isd0JBQTBCO0UvRG05YnREO0UrRG45Ykk7SUFBd0IsMEJBQTBCO0UvRHM5YnREO0UrRHQ5Ykk7SUFBd0IsZ0NBQTBCO0UvRHk5YnREO0UrRHo5Ykk7SUFBd0IseUJBQTBCO0UvRDQ5YnREO0UrRDU5Ykk7SUFBd0IseUJBQTBCO0UvRCs5YnREO0UrRC85Ykk7SUFBd0IsNkJBQTBCO0UvRGsrYnREO0UrRGwrYkk7SUFBd0IsOEJBQTBCO0UvRHErYnREO0UrRHIrYkk7SUFBd0Isd0JBQTBCO0UvRHcrYnREO0UrRHgrYkk7SUFBd0IsK0JBQTBCO0UvRDIrYnREO0FBQ0Y7O0ErRGwrYkE7RUFFSTtJQUFxQix3QkFBMEI7RS9EcStiakQ7RStEcitiRTtJQUFxQiwwQkFBMEI7RS9EdytiakQ7RStEeCtiRTtJQUFxQixnQ0FBMEI7RS9EMitiakQ7RStEMytiRTtJQUFxQix5QkFBMEI7RS9EOCtiakQ7RStEOStiRTtJQUFxQix5QkFBMEI7RS9EaS9iakQ7RStEai9iRTtJQUFxQiw2QkFBMEI7RS9Eby9iakQ7RStEcC9iRTtJQUFxQiw4QkFBMEI7RS9EdS9iakQ7RStEdi9iRTtJQUFxQix3QkFBMEI7RS9EMC9iakQ7RStEMS9iRTtJQUFxQiwrQkFBMEI7RS9ENi9iakQ7QUFDRjs7QWdFbmhjQTtFQUNFLGtCQUFrQjtFQUNsQixjQUFjO0VBQ2QsV0FBVztFQUNYLFVBQVU7RUFDVixnQkFBZ0I7QWhFc2hjbEI7O0FnRTNoY0E7RUFRSSxjQUFjO0VBQ2QsV0FBVztBaEV1aGNmOztBZ0VoaWNBOzs7OztFQWlCSSxrQkFBa0I7RUFDbEIsTUFBTTtFQUNOLFNBQVM7RUFDVCxPQUFPO0VBQ1AsV0FBVztFQUNYLFlBQVk7RUFDWixTQUFTO0FoRXVoY2I7O0FnRS9nY0U7RUFFSSxzQkFBNEY7QWhFaWhjbEc7O0FnRW5oY0U7RUFFSSxtQkFBNEY7QWhFcWhjbEc7O0FnRXZoY0U7RUFFSSxnQkFBNEY7QWhFeWhjbEc7O0FnRTNoY0U7RUFFSSxpQkFBNEY7QWhFNmhjbEc7O0FpRXRqY0k7RUFBZ0MsOEJBQThCO0FqRTBqY2xFOztBaUV6amNJO0VBQWdDLGlDQUFpQztBakU2amNyRTs7QWlFNWpjSTtFQUFnQyxzQ0FBc0M7QWpFZ2tjMUU7O0FpRS9qY0k7RUFBZ0MseUNBQXlDO0FqRW1rYzdFOztBaUVqa2NJO0VBQThCLDBCQUEwQjtBakVxa2M1RDs7QWlFcGtjSTtFQUE4Qiw0QkFBNEI7QWpFd2tjOUQ7O0FpRXZrY0k7RUFBOEIsa0NBQWtDO0FqRTJrY3BFOztBaUUxa2NJO0VBQThCLHlCQUF5QjtBakU4a2MzRDs7QWlFN2tjSTtFQUE4Qix1QkFBdUI7QWpFaWxjekQ7O0FpRWhsY0k7RUFBOEIsdUJBQXVCO0FqRW9sY3pEOztBaUVubGNJO0VBQThCLHlCQUF5QjtBakV1bGMzRDs7QWlFdGxjSTtFQUE4Qix5QkFBeUI7QWpFMGxjM0Q7O0FpRXhsY0k7RUFBb0Msc0NBQXNDO0FqRTRsYzlFOztBaUUzbGNJO0VBQW9DLG9DQUFvQztBakUrbGM1RTs7QWlFOWxjSTtFQUFvQyxrQ0FBa0M7QWpFa21jMUU7O0FpRWptY0k7RUFBb0MseUNBQXlDO0FqRXFtY2pGOztBaUVwbWNJO0VBQW9DLHdDQUF3QztBakV3bWNoRjs7QWlFdG1jSTtFQUFpQyxrQ0FBa0M7QWpFMG1jdkU7O0FpRXptY0k7RUFBaUMsZ0NBQWdDO0FqRTZtY3JFOztBaUU1bWNJO0VBQWlDLDhCQUE4QjtBakVnbmNuRTs7QWlFL21jSTtFQUFpQyxnQ0FBZ0M7QWpFbW5jckU7O0FpRWxuY0k7RUFBaUMsK0JBQStCO0FqRXNuY3BFOztBaUVwbmNJO0VBQWtDLG9DQUFvQztBakV3bmMxRTs7QWlFdm5jSTtFQUFrQyxrQ0FBa0M7QWpFMm5jeEU7O0FpRTFuY0k7RUFBa0MsZ0NBQWdDO0FqRThuY3RFOztBaUU3bmNJO0VBQWtDLHVDQUF1QztBakVpb2M3RTs7QWlFaG9jSTtFQUFrQyxzQ0FBc0M7QWpFb29jNUU7O0FpRW5vY0k7RUFBa0MsaUNBQWlDO0FqRXVvY3ZFOztBaUVyb2NJO0VBQWdDLDJCQUEyQjtBakV5b2MvRDs7QWlFeG9jSTtFQUFnQyxpQ0FBaUM7QWpFNG9jckU7O0FpRTNvY0k7RUFBZ0MsK0JBQStCO0FqRStvY25FOztBaUU5b2NJO0VBQWdDLDZCQUE2QjtBakVrcGNqRTs7QWlFanBjSTtFQUFnQywrQkFBK0I7QWpFcXBjbkU7O0FpRXBwY0k7RUFBZ0MsOEJBQThCO0FqRXdwY2xFOztBaUI1b2NJO0VnRGxEQTtJQUFnQyw4QkFBOEI7RWpFbXNjaEU7RWlFbHNjRTtJQUFnQyxpQ0FBaUM7RWpFcXNjbkU7RWlFcHNjRTtJQUFnQyxzQ0FBc0M7RWpFdXNjeEU7RWlFdHNjRTtJQUFnQyx5Q0FBeUM7RWpFeXNjM0U7RWlFdnNjRTtJQUE4QiwwQkFBMEI7RWpFMHNjMUQ7RWlFenNjRTtJQUE4Qiw0QkFBNEI7RWpFNHNjNUQ7RWlFM3NjRTtJQUE4QixrQ0FBa0M7RWpFOHNjbEU7RWlFN3NjRTtJQUE4Qix5QkFBeUI7RWpFZ3RjekQ7RWlFL3NjRTtJQUE4Qix1QkFBdUI7RWpFa3RjdkQ7RWlFanRjRTtJQUE4Qix1QkFBdUI7RWpFb3RjdkQ7RWlFbnRjRTtJQUE4Qix5QkFBeUI7RWpFc3RjekQ7RWlFcnRjRTtJQUE4Qix5QkFBeUI7RWpFd3RjekQ7RWlFdHRjRTtJQUFvQyxzQ0FBc0M7RWpFeXRjNUU7RWlFeHRjRTtJQUFvQyxvQ0FBb0M7RWpFMnRjMUU7RWlFMXRjRTtJQUFvQyxrQ0FBa0M7RWpFNnRjeEU7RWlFNXRjRTtJQUFvQyx5Q0FBeUM7RWpFK3RjL0U7RWlFOXRjRTtJQUFvQyx3Q0FBd0M7RWpFaXVjOUU7RWlFL3RjRTtJQUFpQyxrQ0FBa0M7RWpFa3VjckU7RWlFanVjRTtJQUFpQyxnQ0FBZ0M7RWpFb3VjbkU7RWlFbnVjRTtJQUFpQyw4QkFBOEI7RWpFc3VjakU7RWlFcnVjRTtJQUFpQyxnQ0FBZ0M7RWpFd3VjbkU7RWlFdnVjRTtJQUFpQywrQkFBK0I7RWpFMHVjbEU7RWlFeHVjRTtJQUFrQyxvQ0FBb0M7RWpFMnVjeEU7RWlFMXVjRTtJQUFrQyxrQ0FBa0M7RWpFNnVjdEU7RWlFNXVjRTtJQUFrQyxnQ0FBZ0M7RWpFK3VjcEU7RWlFOXVjRTtJQUFrQyx1Q0FBdUM7RWpFaXZjM0U7RWlFaHZjRTtJQUFrQyxzQ0FBc0M7RWpFbXZjMUU7RWlFbHZjRTtJQUFrQyxpQ0FBaUM7RWpFcXZjckU7RWlFbnZjRTtJQUFnQywyQkFBMkI7RWpFc3ZjN0Q7RWlFcnZjRTtJQUFnQyxpQ0FBaUM7RWpFd3ZjbkU7RWlFdnZjRTtJQUFnQywrQkFBK0I7RWpFMHZjakU7RWlFenZjRTtJQUFnQyw2QkFBNkI7RWpFNHZjL0Q7RWlFM3ZjRTtJQUFnQywrQkFBK0I7RWpFOHZjakU7RWlFN3ZjRTtJQUFnQyw4QkFBOEI7RWpFZ3djaEU7QUFDRjs7QWlCcnZjSTtFZ0RsREE7SUFBZ0MsOEJBQThCO0VqRTR5Y2hFO0VpRTN5Y0U7SUFBZ0MsaUNBQWlDO0VqRTh5Y25FO0VpRTd5Y0U7SUFBZ0Msc0NBQXNDO0VqRWd6Y3hFO0VpRS95Y0U7SUFBZ0MseUNBQXlDO0VqRWt6YzNFO0VpRWh6Y0U7SUFBOEIsMEJBQTBCO0VqRW16YzFEO0VpRWx6Y0U7SUFBOEIsNEJBQTRCO0VqRXF6YzVEO0VpRXB6Y0U7SUFBOEIsa0NBQWtDO0VqRXV6Y2xFO0VpRXR6Y0U7SUFBOEIseUJBQXlCO0VqRXl6Y3pEO0VpRXh6Y0U7SUFBOEIsdUJBQXVCO0VqRTJ6Y3ZEO0VpRTF6Y0U7SUFBOEIsdUJBQXVCO0VqRTZ6Y3ZEO0VpRTV6Y0U7SUFBOEIseUJBQXlCO0VqRSt6Y3pEO0VpRTl6Y0U7SUFBOEIseUJBQXlCO0VqRWkwY3pEO0VpRS96Y0U7SUFBb0Msc0NBQXNDO0VqRWswYzVFO0VpRWowY0U7SUFBb0Msb0NBQW9DO0VqRW8wYzFFO0VpRW4wY0U7SUFBb0Msa0NBQWtDO0VqRXMwY3hFO0VpRXIwY0U7SUFBb0MseUNBQXlDO0VqRXcwYy9FO0VpRXYwY0U7SUFBb0Msd0NBQXdDO0VqRTAwYzlFO0VpRXgwY0U7SUFBaUMsa0NBQWtDO0VqRTIwY3JFO0VpRTEwY0U7SUFBaUMsZ0NBQWdDO0VqRTYwY25FO0VpRTUwY0U7SUFBaUMsOEJBQThCO0VqRSswY2pFO0VpRTkwY0U7SUFBaUMsZ0NBQWdDO0VqRWkxY25FO0VpRWgxY0U7SUFBaUMsK0JBQStCO0VqRW0xY2xFO0VpRWoxY0U7SUFBa0Msb0NBQW9DO0VqRW8xY3hFO0VpRW4xY0U7SUFBa0Msa0NBQWtDO0VqRXMxY3RFO0VpRXIxY0U7SUFBa0MsZ0NBQWdDO0VqRXcxY3BFO0VpRXYxY0U7SUFBa0MsdUNBQXVDO0VqRTAxYzNFO0VpRXoxY0U7SUFBa0Msc0NBQXNDO0VqRTQxYzFFO0VpRTMxY0U7SUFBa0MsaUNBQWlDO0VqRTgxY3JFO0VpRTUxY0U7SUFBZ0MsMkJBQTJCO0VqRSsxYzdEO0VpRTkxY0U7SUFBZ0MsaUNBQWlDO0VqRWkyY25FO0VpRWgyY0U7SUFBZ0MsK0JBQStCO0VqRW0yY2pFO0VpRWwyY0U7SUFBZ0MsNkJBQTZCO0VqRXEyYy9EO0VpRXAyY0U7SUFBZ0MsK0JBQStCO0VqRXUyY2pFO0VpRXQyY0U7SUFBZ0MsOEJBQThCO0VqRXkyY2hFO0FBQ0Y7O0FpQjkxY0k7RWdEbERBO0lBQWdDLDhCQUE4QjtFakVxNWNoRTtFaUVwNWNFO0lBQWdDLGlDQUFpQztFakV1NWNuRTtFaUV0NWNFO0lBQWdDLHNDQUFzQztFakV5NWN4RTtFaUV4NWNFO0lBQWdDLHlDQUF5QztFakUyNWMzRTtFaUV6NWNFO0lBQThCLDBCQUEwQjtFakU0NWMxRDtFaUUzNWNFO0lBQThCLDRCQUE0QjtFakU4NWM1RDtFaUU3NWNFO0lBQThCLGtDQUFrQztFakVnNmNsRTtFaUUvNWNFO0lBQThCLHlCQUF5QjtFakVrNmN6RDtFaUVqNmNFO0lBQThCLHVCQUF1QjtFakVvNmN2RDtFaUVuNmNFO0lBQThCLHVCQUF1QjtFakVzNmN2RDtFaUVyNmNFO0lBQThCLHlCQUF5QjtFakV3NmN6RDtFaUV2NmNFO0lBQThCLHlCQUF5QjtFakUwNmN6RDtFaUV4NmNFO0lBQW9DLHNDQUFzQztFakUyNmM1RTtFaUUxNmNFO0lBQW9DLG9DQUFvQztFakU2NmMxRTtFaUU1NmNFO0lBQW9DLGtDQUFrQztFakUrNmN4RTtFaUU5NmNFO0lBQW9DLHlDQUF5QztFakVpN2MvRTtFaUVoN2NFO0lBQW9DLHdDQUF3QztFakVtN2M5RTtFaUVqN2NFO0lBQWlDLGtDQUFrQztFakVvN2NyRTtFaUVuN2NFO0lBQWlDLGdDQUFnQztFakVzN2NuRTtFaUVyN2NFO0lBQWlDLDhCQUE4QjtFakV3N2NqRTtFaUV2N2NFO0lBQWlDLGdDQUFnQztFakUwN2NuRTtFaUV6N2NFO0lBQWlDLCtCQUErQjtFakU0N2NsRTtFaUUxN2NFO0lBQWtDLG9DQUFvQztFakU2N2N4RTtFaUU1N2NFO0lBQWtDLGtDQUFrQztFakUrN2N0RTtFaUU5N2NFO0lBQWtDLGdDQUFnQztFakVpOGNwRTtFaUVoOGNFO0lBQWtDLHVDQUF1QztFakVtOGMzRTtFaUVsOGNFO0lBQWtDLHNDQUFzQztFakVxOGMxRTtFaUVwOGNFO0lBQWtDLGlDQUFpQztFakV1OGNyRTtFaUVyOGNFO0lBQWdDLDJCQUEyQjtFakV3OGM3RDtFaUV2OGNFO0lBQWdDLGlDQUFpQztFakUwOGNuRTtFaUV6OGNFO0lBQWdDLCtCQUErQjtFakU0OGNqRTtFaUUzOGNFO0lBQWdDLDZCQUE2QjtFakU4OGMvRDtFaUU3OGNFO0lBQWdDLCtCQUErQjtFakVnOWNqRTtFaUUvOGNFO0lBQWdDLDhCQUE4QjtFakVrOWNoRTtBQUNGOztBaUJ2OGNJO0VnRGxEQTtJQUFnQyw4QkFBOEI7RWpFOC9jaEU7RWlFNy9jRTtJQUFnQyxpQ0FBaUM7RWpFZ2dkbkU7RWlFLy9jRTtJQUFnQyxzQ0FBc0M7RWpFa2dkeEU7RWlFamdkRTtJQUFnQyx5Q0FBeUM7RWpFb2dkM0U7RWlFbGdkRTtJQUE4QiwwQkFBMEI7RWpFcWdkMUQ7RWlFcGdkRTtJQUE4Qiw0QkFBNEI7RWpFdWdkNUQ7RWlFdGdkRTtJQUE4QixrQ0FBa0M7RWpFeWdkbEU7RWlFeGdkRTtJQUE4Qix5QkFBeUI7RWpFMmdkekQ7RWlFMWdkRTtJQUE4Qix1QkFBdUI7RWpFNmdkdkQ7RWlFNWdkRTtJQUE4Qix1QkFBdUI7RWpFK2dkdkQ7RWlFOWdkRTtJQUE4Qix5QkFBeUI7RWpFaWhkekQ7RWlFaGhkRTtJQUE4Qix5QkFBeUI7RWpFbWhkekQ7RWlFamhkRTtJQUFvQyxzQ0FBc0M7RWpFb2hkNUU7RWlFbmhkRTtJQUFvQyxvQ0FBb0M7RWpFc2hkMUU7RWlFcmhkRTtJQUFvQyxrQ0FBa0M7RWpFd2hkeEU7RWlFdmhkRTtJQUFvQyx5Q0FBeUM7RWpFMGhkL0U7RWlFemhkRTtJQUFvQyx3Q0FBd0M7RWpFNGhkOUU7RWlFMWhkRTtJQUFpQyxrQ0FBa0M7RWpFNmhkckU7RWlFNWhkRTtJQUFpQyxnQ0FBZ0M7RWpFK2hkbkU7RWlFOWhkRTtJQUFpQyw4QkFBOEI7RWpFaWlkakU7RWlFaGlkRTtJQUFpQyxnQ0FBZ0M7RWpFbWlkbkU7RWlFbGlkRTtJQUFpQywrQkFBK0I7RWpFcWlkbEU7RWlFbmlkRTtJQUFrQyxvQ0FBb0M7RWpFc2lkeEU7RWlFcmlkRTtJQUFrQyxrQ0FBa0M7RWpFd2lkdEU7RWlFdmlkRTtJQUFrQyxnQ0FBZ0M7RWpFMGlkcEU7RWlFemlkRTtJQUFrQyx1Q0FBdUM7RWpFNGlkM0U7RWlFM2lkRTtJQUFrQyxzQ0FBc0M7RWpFOGlkMUU7RWlFN2lkRTtJQUFrQyxpQ0FBaUM7RWpFZ2pkckU7RWlFOWlkRTtJQUFnQywyQkFBMkI7RWpFaWpkN0Q7RWlFaGpkRTtJQUFnQyxpQ0FBaUM7RWpFbWpkbkU7RWlFbGpkRTtJQUFnQywrQkFBK0I7RWpFcWpkakU7RWlFcGpkRTtJQUFnQyw2QkFBNkI7RWpFdWpkL0Q7RWlFdGpkRTtJQUFnQywrQkFBK0I7RWpFeWpkakU7RWlFeGpkRTtJQUFnQyw4QkFBOEI7RWpFMmpkaEU7QUFDRjs7QWtFdG1kSTtFQUF3QixzQkFBc0I7QWxFMG1kbEQ7O0FrRXptZEk7RUFBd0IsdUJBQXVCO0FsRTZtZG5EOztBa0U1bWRJO0VBQXdCLHNCQUFzQjtBbEVnbmRsRDs7QWlCNWpkSTtFaUR0REE7SUFBd0Isc0JBQXNCO0VsRXVuZGhEO0VrRXRuZEU7SUFBd0IsdUJBQXVCO0VsRXluZGpEO0VrRXhuZEU7SUFBd0Isc0JBQXNCO0VsRTJuZGhEO0FBQ0Y7O0FpQnhrZEk7RWlEdERBO0lBQXdCLHNCQUFzQjtFbEVtb2RoRDtFa0Vsb2RFO0lBQXdCLHVCQUF1QjtFbEVxb2RqRDtFa0Vwb2RFO0lBQXdCLHNCQUFzQjtFbEV1b2RoRDtBQUNGOztBaUJwbGRJO0VpRHREQTtJQUF3QixzQkFBc0I7RWxFK29kaEQ7RWtFOW9kRTtJQUF3Qix1QkFBdUI7RWxFaXBkakQ7RWtFaHBkRTtJQUF3QixzQkFBc0I7RWxFbXBkaEQ7QUFDRjs7QWlCaG1kSTtFaUR0REE7SUFBd0Isc0JBQXNCO0VsRTJwZGhEO0VrRTFwZEU7SUFBd0IsdUJBQXVCO0VsRTZwZGpEO0VrRTVwZEU7SUFBd0Isc0JBQXNCO0VsRStwZGhEO0FBQ0Y7O0FtRXJxZEU7RUFBc0IseUJBQTJCO0FuRXlxZG5EOztBbUV6cWRFO0VBQXNCLDJCQUEyQjtBbkU2cWRuRDs7QW9FNXFkRTtFQUF5QiwyQkFBOEI7QXBFZ3JkekQ7O0FvRWhyZEU7RUFBeUIsNkJBQThCO0FwRW9yZHpEOztBb0VwcmRFO0VBQXlCLDZCQUE4QjtBcEV3cmR6RDs7QW9FeHJkRTtFQUF5QiwwQkFBOEI7QXBFNHJkekQ7O0FvRTVyZEU7RUFBeUIsbUNBQThCO0VBQTlCLDJCQUE4QjtBcEVnc2R6RDs7QW9FM3JkQTtFQUNFLGVBQWU7RUFDZixNQUFNO0VBQ04sUUFBUTtFQUNSLE9BQU87RUFDUCxhOURvcUJzQztBTjBoY3hDOztBb0UzcmRBO0VBQ0UsZUFBZTtFQUNmLFFBQVE7RUFDUixTQUFTO0VBQ1QsT0FBTztFQUNQLGE5RDRwQnNDO0FOa2ljeEM7O0FvRTFyZDhCO0VBRDlCO0lBRUksd0JBQWdCO0lBQWhCLGdCQUFnQjtJQUNoQixNQUFNO0lBQ04sYTlEb3BCb0M7RU4waWN0QztBQUNGOztBQzk4WUE7RW9FeHdFRSxrQkFBa0I7RUFDbEIsVUFBVTtFQUNWLFdBQVc7RUFDWCxVQUFVO0VBQ1YsWUFBWTtFQUNaLGdCQUFnQjtFQUNoQixzQkFBc0I7RUFDdEIsbUJBQW1CO0VBQ25CLFNBQVM7QXJFMHRkWDs7QUNoOVlBOztFb0U5dkVJLGdCQUFnQjtFQUNoQixXQUFXO0VBQ1gsWUFBWTtFQUNaLGlCQUFpQjtFQUNqQixVQUFVO0VBQ1YsbUJBQW1CO0FyRW10ZHZCOztBc0VodmRBO0VBQWEsOERBQXFDO0F0RW92ZGxEOztBc0VudmRBO0VBQVUsd0RBQWtDO0F0RXV2ZDVDOztBc0V0dmRBO0VBQWEsdURBQXFDO0F0RTB2ZGxEOztBc0V6dmRBO0VBQWUsMkJBQTJCO0F0RTZ2ZDFDOztBdUU1dmRJO0VBQXVCLHFCQUE0QjtBdkVnd2R2RDs7QXVFaHdkSTtFQUF1QixxQkFBNEI7QXZFb3dkdkQ7O0F1RXB3ZEk7RUFBdUIscUJBQTRCO0F2RXd3ZHZEOztBdUV4d2RJO0VBQXVCLHNCQUE0QjtBdkU0d2R2RDs7QXVFNXdkSTtFQUF1QixzQkFBNEI7QXZFZ3hkdkQ7O0F1RWh4ZEk7RUFBdUIsc0JBQTRCO0F2RW94ZHZEOztBdUVweGRJO0VBQXVCLHNCQUE0QjtBdkV3eGR2RDs7QXVFeHhkSTtFQUF1QixzQkFBNEI7QXZFNHhkdkQ7O0F1RTV4ZEk7RUFBdUIsdUJBQTRCO0F2RWd5ZHZEOztBdUVoeWRJO0VBQXVCLHVCQUE0QjtBdkVveWR2RDs7QXVFaHlkQTtFQUFVLDBCQUEwQjtBdkVveWRwQzs7QXVFbnlkQTtFQUFVLDJCQUEyQjtBdkV1eWRyQzs7QXVFbnlkQTtFQUFjLDJCQUEyQjtBdkV1eWR6Qzs7QXVFdHlkQTtFQUFjLDRCQUE0QjtBdkUweWQxQzs7QXVFeHlkQTtFQUFVLHVCQUF1QjtBdkU0eWRqQzs7QXVFM3lkQTtFQUFVLHdCQUF3QjtBdkUreWRsQzs7QXdFOXpkQTtFQUVJLGtCQUFrQjtFQUNsQixNQUFNO0VBQ04sUUFBUTtFQUNSLFNBQVM7RUFDVCxPQUFPO0VBQ1AsVUFBVTtFQUVWLG9CQUFvQjtFQUNwQixXQUFXO0VBRVgsa0NBQWtDO0F4RTh6ZHRDOztBeUVwMGRRO0VBQWdDLG9CQUE0QjtBekV3MGRwRTs7QXlFdjBkUTs7RUFFRSx3QkFBb0M7QXpFMDBkOUM7O0F5RXgwZFE7O0VBRUUsMEJBQXdDO0F6RTIwZGxEOztBeUV6MGRROztFQUVFLDJCQUEwQztBekU0MGRwRDs7QXlFMTBkUTs7RUFFRSx5QkFBc0M7QXpFNjBkaEQ7O0F5RTUxZFE7RUFBZ0MsMEJBQTRCO0F6RWcyZHBFOztBeUUvMWRROztFQUVFLDhCQUFvQztBekVrMmQ5Qzs7QXlFaDJkUTs7RUFFRSxnQ0FBd0M7QXpFbTJkbEQ7O0F5RWoyZFE7O0VBRUUsaUNBQTBDO0F6RW8yZHBEOztBeUVsMmRROztFQUVFLCtCQUFzQztBekVxMmRoRDs7QXlFcDNkUTtFQUFnQyx5QkFBNEI7QXpFdzNkcEU7O0F5RXYzZFE7O0VBRUUsNkJBQW9DO0F6RTAzZDlDOztBeUV4M2RROztFQUVFLCtCQUF3QztBekUyM2RsRDs7QXlFejNkUTs7RUFFRSxnQ0FBMEM7QXpFNDNkcEQ7O0F5RTEzZFE7O0VBRUUsOEJBQXNDO0F6RTYzZGhEOztBeUU1NGRRO0VBQWdDLHVCQUE0QjtBekVnNWRwRTs7QXlFLzRkUTs7RUFFRSwyQkFBb0M7QXpFazVkOUM7O0F5RWg1ZFE7O0VBRUUsNkJBQXdDO0F6RW01ZGxEOztBeUVqNWRROztFQUVFLDhCQUEwQztBekVvNWRwRDs7QXlFbDVkUTs7RUFFRSw0QkFBc0M7QXpFcTVkaEQ7O0F5RXA2ZFE7RUFBZ0MseUJBQTRCO0F6RXc2ZHBFOztBeUV2NmRROztFQUVFLDZCQUFvQztBekUwNmQ5Qzs7QXlFeDZkUTs7RUFFRSwrQkFBd0M7QXpFMjZkbEQ7O0F5RXo2ZFE7O0VBRUUsZ0NBQTBDO0F6RTQ2ZHBEOztBeUUxNmRROztFQUVFLDhCQUFzQztBekU2NmRoRDs7QXlFNTdkUTtFQUFnQyx1QkFBNEI7QXpFZzhkcEU7O0F5RS83ZFE7O0VBRUUsMkJBQW9DO0F6RWs4ZDlDOztBeUVoOGRROztFQUVFLDZCQUF3QztBekVtOGRsRDs7QXlFajhkUTs7RUFFRSw4QkFBMEM7QXpFbzhkcEQ7O0F5RWw4ZFE7O0VBRUUsNEJBQXNDO0F6RXE4ZGhEOztBeUVwOWRRO0VBQWdDLHFCQUE0QjtBekV3OWRwRTs7QXlFdjlkUTs7RUFFRSx5QkFBb0M7QXpFMDlkOUM7O0F5RXg5ZFE7O0VBRUUsMkJBQXdDO0F6RTI5ZGxEOztBeUV6OWRROztFQUVFLDRCQUEwQztBekU0OWRwRDs7QXlFMTlkUTs7RUFFRSwwQkFBc0M7QXpFNjlkaEQ7O0F5RTUrZFE7RUFBZ0MsMkJBQTRCO0F6RWcvZHBFOztBeUUvK2RROztFQUVFLCtCQUFvQztBekVrL2Q5Qzs7QXlFaC9kUTs7RUFFRSxpQ0FBd0M7QXpFbS9kbEQ7O0F5RWovZFE7O0VBRUUsa0NBQTBDO0F6RW8vZHBEOztBeUVsL2RROztFQUVFLGdDQUFzQztBekVxL2RoRDs7QXlFcGdlUTtFQUFnQywwQkFBNEI7QXpFd2dlcEU7O0F5RXZnZVE7O0VBRUUsOEJBQW9DO0F6RTBnZTlDOztBeUV4Z2VROztFQUVFLGdDQUF3QztBekUyZ2VsRDs7QXlFemdlUTs7RUFFRSxpQ0FBMEM7QXpFNGdlcEQ7O0F5RTFnZVE7O0VBRUUsK0JBQXNDO0F6RTZnZWhEOztBeUU1aGVRO0VBQWdDLHdCQUE0QjtBekVnaWVwRTs7QXlFL2hlUTs7RUFFRSw0QkFBb0M7QXpFa2llOUM7O0F5RWhpZVE7O0VBRUUsOEJBQXdDO0F6RW1pZWxEOztBeUVqaWVROztFQUVFLCtCQUEwQztBekVvaWVwRDs7QXlFbGllUTs7RUFFRSw2QkFBc0M7QXpFcWllaEQ7O0F5RXBqZVE7RUFBZ0MsMEJBQTRCO0F6RXdqZXBFOztBeUV2amVROztFQUVFLDhCQUFvQztBekUwamU5Qzs7QXlFeGplUTs7RUFFRSxnQ0FBd0M7QXpFMmplbEQ7O0F5RXpqZVE7O0VBRUUsaUNBQTBDO0F6RTRqZXBEOztBeUUxamVROztFQUVFLCtCQUFzQztBekU2amVoRDs7QXlFNWtlUTtFQUFnQyx3QkFBNEI7QXpFZ2xlcEU7O0F5RS9rZVE7O0VBRUUsNEJBQW9DO0F6RWtsZTlDOztBeUVobGVROztFQUVFLDhCQUF3QztBekVtbGVsRDs7QXlFamxlUTs7RUFFRSwrQkFBMEM7QXpFb2xlcEQ7O0F5RWxsZVE7O0VBRUUsNkJBQXNDO0F6RXFsZWhEOztBeUU3a2VRO0VBQXdCLDJCQUEyQjtBekVpbGUzRDs7QXlFaGxlUTs7RUFFRSwrQkFBK0I7QXpFbWxlekM7O0F5RWpsZVE7O0VBRUUsaUNBQWlDO0F6RW9sZTNDOztBeUVsbGVROztFQUVFLGtDQUFrQztBekVxbGU1Qzs7QXlFbmxlUTs7RUFFRSxnQ0FBZ0M7QXpFc2xlMUM7O0F5RXJtZVE7RUFBd0IsMEJBQTJCO0F6RXltZTNEOztBeUV4bWVROztFQUVFLDhCQUErQjtBekUybWV6Qzs7QXlFem1lUTs7RUFFRSxnQ0FBaUM7QXpFNG1lM0M7O0F5RTFtZVE7O0VBRUUsaUNBQWtDO0F6RTZtZTVDOztBeUUzbWVROztFQUVFLCtCQUFnQztBekU4bWUxQzs7QXlFN25lUTtFQUF3Qix3QkFBMkI7QXpFaW9lM0Q7O0F5RWhvZVE7O0VBRUUsNEJBQStCO0F6RW1vZXpDOztBeUVqb2VROztFQUVFLDhCQUFpQztBekVvb2UzQzs7QXlFbG9lUTs7RUFFRSwrQkFBa0M7QXpFcW9lNUM7O0F5RW5vZVE7O0VBRUUsNkJBQWdDO0F6RXNvZTFDOztBeUVycGVRO0VBQXdCLDBCQUEyQjtBekV5cGUzRDs7QXlFeHBlUTs7RUFFRSw4QkFBK0I7QXpFMnBlekM7O0F5RXpwZVE7O0VBRUUsZ0NBQWlDO0F6RTRwZTNDOztBeUUxcGVROztFQUVFLGlDQUFrQztBekU2cGU1Qzs7QXlFM3BlUTs7RUFFRSwrQkFBZ0M7QXpFOHBlMUM7O0F5RTdxZVE7RUFBd0Isd0JBQTJCO0F6RWlyZTNEOztBeUVocmVROztFQUVFLDRCQUErQjtBekVtcmV6Qzs7QXlFanJlUTs7RUFFRSw4QkFBaUM7QXpFb3JlM0M7O0F5RWxyZVE7O0VBRUUsK0JBQWtDO0F6RXFyZTVDOztBeUVucmVROztFQUVFLDZCQUFnQztBekVzcmUxQzs7QXlFaHJlSTtFQUFtQix1QkFBdUI7QXpFb3JlOUM7O0F5RW5yZUk7O0VBRUUsMkJBQTJCO0F6RXNyZWpDOztBeUVwcmVJOztFQUVFLDZCQUE2QjtBekV1cmVuQzs7QXlFcnJlSTs7RUFFRSw4QkFBOEI7QXpFd3JlcEM7O0F5RXRyZUk7O0VBRUUsNEJBQTRCO0F6RXlyZWxDOztBaUJsc2VJO0V3RGxESTtJQUFnQyxvQkFBNEI7RXpFeXZlbEU7RXlFeHZlTTs7SUFFRSx3QkFBb0M7RXpFMHZlNUM7RXlFeHZlTTs7SUFFRSwwQkFBd0M7RXpFMHZlaEQ7RXlFeHZlTTs7SUFFRSwyQkFBMEM7RXpFMHZlbEQ7RXlFeHZlTTs7SUFFRSx5QkFBc0M7RXpFMHZlOUM7RXlFendlTTtJQUFnQywwQkFBNEI7RXpFNHdlbEU7RXlFM3dlTTs7SUFFRSw4QkFBb0M7RXpFNndlNUM7RXlFM3dlTTs7SUFFRSxnQ0FBd0M7RXpFNndlaEQ7RXlFM3dlTTs7SUFFRSxpQ0FBMEM7RXpFNndlbEQ7RXlFM3dlTTs7SUFFRSwrQkFBc0M7RXpFNndlOUM7RXlFNXhlTTtJQUFnQyx5QkFBNEI7RXpFK3hlbEU7RXlFOXhlTTs7SUFFRSw2QkFBb0M7RXpFZ3llNUM7RXlFOXhlTTs7SUFFRSwrQkFBd0M7RXpFZ3llaEQ7RXlFOXhlTTs7SUFFRSxnQ0FBMEM7RXpFZ3llbEQ7RXlFOXhlTTs7SUFFRSw4QkFBc0M7RXpFZ3llOUM7RXlFL3llTTtJQUFnQyx1QkFBNEI7RXpFa3plbEU7RXlFanplTTs7SUFFRSwyQkFBb0M7RXpFbXplNUM7RXlFanplTTs7SUFFRSw2QkFBd0M7RXpFbXplaEQ7RXlFanplTTs7SUFFRSw4QkFBMEM7RXpFbXplbEQ7RXlFanplTTs7SUFFRSw0QkFBc0M7RXpFbXplOUM7RXlFbDBlTTtJQUFnQyx5QkFBNEI7RXpFcTBlbEU7RXlFcDBlTTs7SUFFRSw2QkFBb0M7RXpFczBlNUM7RXlFcDBlTTs7SUFFRSwrQkFBd0M7RXpFczBlaEQ7RXlFcDBlTTs7SUFFRSxnQ0FBMEM7RXpFczBlbEQ7RXlFcDBlTTs7SUFFRSw4QkFBc0M7RXpFczBlOUM7RXlFcjFlTTtJQUFnQyx1QkFBNEI7RXpFdzFlbEU7RXlFdjFlTTs7SUFFRSwyQkFBb0M7RXpFeTFlNUM7RXlFdjFlTTs7SUFFRSw2QkFBd0M7RXpFeTFlaEQ7RXlFdjFlTTs7SUFFRSw4QkFBMEM7RXpFeTFlbEQ7RXlFdjFlTTs7SUFFRSw0QkFBc0M7RXpFeTFlOUM7RXlFeDJlTTtJQUFnQyxxQkFBNEI7RXpFMjJlbEU7RXlFMTJlTTs7SUFFRSx5QkFBb0M7RXpFNDJlNUM7RXlFMTJlTTs7SUFFRSwyQkFBd0M7RXpFNDJlaEQ7RXlFMTJlTTs7SUFFRSw0QkFBMEM7RXpFNDJlbEQ7RXlFMTJlTTs7SUFFRSwwQkFBc0M7RXpFNDJlOUM7RXlFMzNlTTtJQUFnQywyQkFBNEI7RXpFODNlbEU7RXlFNzNlTTs7SUFFRSwrQkFBb0M7RXpFKzNlNUM7RXlFNzNlTTs7SUFFRSxpQ0FBd0M7RXpFKzNlaEQ7RXlFNzNlTTs7SUFFRSxrQ0FBMEM7RXpFKzNlbEQ7RXlFNzNlTTs7SUFFRSxnQ0FBc0M7RXpFKzNlOUM7RXlFOTRlTTtJQUFnQywwQkFBNEI7RXpFaTVlbEU7RXlFaDVlTTs7SUFFRSw4QkFBb0M7RXpFazVlNUM7RXlFaDVlTTs7SUFFRSxnQ0FBd0M7RXpFazVlaEQ7RXlFaDVlTTs7SUFFRSxpQ0FBMEM7RXpFazVlbEQ7RXlFaDVlTTs7SUFFRSwrQkFBc0M7RXpFazVlOUM7RXlFajZlTTtJQUFnQyx3QkFBNEI7RXpFbzZlbEU7RXlFbjZlTTs7SUFFRSw0QkFBb0M7RXpFcTZlNUM7RXlFbjZlTTs7SUFFRSw4QkFBd0M7RXpFcTZlaEQ7RXlFbjZlTTs7SUFFRSwrQkFBMEM7RXpFcTZlbEQ7RXlFbjZlTTs7SUFFRSw2QkFBc0M7RXpFcTZlOUM7RXlFcDdlTTtJQUFnQywwQkFBNEI7RXpFdTdlbEU7RXlFdDdlTTs7SUFFRSw4QkFBb0M7RXpFdzdlNUM7RXlFdDdlTTs7SUFFRSxnQ0FBd0M7RXpFdzdlaEQ7RXlFdDdlTTs7SUFFRSxpQ0FBMEM7RXpFdzdlbEQ7RXlFdDdlTTs7SUFFRSwrQkFBc0M7RXpFdzdlOUM7RXlFdjhlTTtJQUFnQyx3QkFBNEI7RXpFMDhlbEU7RXlFejhlTTs7SUFFRSw0QkFBb0M7RXpFMjhlNUM7RXlFejhlTTs7SUFFRSw4QkFBd0M7RXpFMjhlaEQ7RXlFejhlTTs7SUFFRSwrQkFBMEM7RXpFMjhlbEQ7RXlFejhlTTs7SUFFRSw2QkFBc0M7RXpFMjhlOUM7RXlFbjhlTTtJQUF3QiwyQkFBMkI7RXpFczhlekQ7RXlFcjhlTTs7SUFFRSwrQkFBK0I7RXpFdThldkM7RXlFcjhlTTs7SUFFRSxpQ0FBaUM7RXpFdThlekM7RXlFcjhlTTs7SUFFRSxrQ0FBa0M7RXpFdThlMUM7RXlFcjhlTTs7SUFFRSxnQ0FBZ0M7RXpFdThleEM7RXlFdDllTTtJQUF3QiwwQkFBMkI7RXpFeTllekQ7RXlFeDllTTs7SUFFRSw4QkFBK0I7RXpFMDlldkM7RXlFeDllTTs7SUFFRSxnQ0FBaUM7RXpFMDllekM7RXlFeDllTTs7SUFFRSxpQ0FBa0M7RXpFMDllMUM7RXlFeDllTTs7SUFFRSwrQkFBZ0M7RXpFMDlleEM7RXlFeitlTTtJQUF3Qix3QkFBMkI7RXpFNCtlekQ7RXlFMytlTTs7SUFFRSw0QkFBK0I7RXpFNitldkM7RXlFMytlTTs7SUFFRSw4QkFBaUM7RXpFNitlekM7RXlFMytlTTs7SUFFRSwrQkFBa0M7RXpFNitlMUM7RXlFMytlTTs7SUFFRSw2QkFBZ0M7RXpFNitleEM7RXlFNS9lTTtJQUF3QiwwQkFBMkI7RXpFKy9lekQ7RXlFOS9lTTs7SUFFRSw4QkFBK0I7RXpFZ2dmdkM7RXlFOS9lTTs7SUFFRSxnQ0FBaUM7RXpFZ2dmekM7RXlFOS9lTTs7SUFFRSxpQ0FBa0M7RXpFZ2dmMUM7RXlFOS9lTTs7SUFFRSwrQkFBZ0M7RXpFZ2dmeEM7RXlFL2dmTTtJQUF3Qix3QkFBMkI7RXpFa2hmekQ7RXlFamhmTTs7SUFFRSw0QkFBK0I7RXpFbWhmdkM7RXlFamhmTTs7SUFFRSw4QkFBaUM7RXpFbWhmekM7RXlFamhmTTs7SUFFRSwrQkFBa0M7RXpFbWhmMUM7RXlFamhmTTs7SUFFRSw2QkFBZ0M7RXpFbWhmeEM7RXlFN2dmRTtJQUFtQix1QkFBdUI7RXpFZ2hmNUM7RXlFL2dmRTs7SUFFRSwyQkFBMkI7RXpFaWhmL0I7RXlFL2dmRTs7SUFFRSw2QkFBNkI7RXpFaWhmakM7RXlFL2dmRTs7SUFFRSw4QkFBOEI7RXpFaWhmbEM7RXlFL2dmRTs7SUFFRSw0QkFBNEI7RXpFaWhmaEM7QUFDRjs7QWlCM2hmSTtFd0RsREk7SUFBZ0Msb0JBQTRCO0V6RWtsZmxFO0V5RWpsZk07O0lBRUUsd0JBQW9DO0V6RW1sZjVDO0V5RWpsZk07O0lBRUUsMEJBQXdDO0V6RW1sZmhEO0V5RWpsZk07O0lBRUUsMkJBQTBDO0V6RW1sZmxEO0V5RWpsZk07O0lBRUUseUJBQXNDO0V6RW1sZjlDO0V5RWxtZk07SUFBZ0MsMEJBQTRCO0V6RXFtZmxFO0V5RXBtZk07O0lBRUUsOEJBQW9DO0V6RXNtZjVDO0V5RXBtZk07O0lBRUUsZ0NBQXdDO0V6RXNtZmhEO0V5RXBtZk07O0lBRUUsaUNBQTBDO0V6RXNtZmxEO0V5RXBtZk07O0lBRUUsK0JBQXNDO0V6RXNtZjlDO0V5RXJuZk07SUFBZ0MseUJBQTRCO0V6RXduZmxFO0V5RXZuZk07O0lBRUUsNkJBQW9DO0V6RXluZjVDO0V5RXZuZk07O0lBRUUsK0JBQXdDO0V6RXluZmhEO0V5RXZuZk07O0lBRUUsZ0NBQTBDO0V6RXluZmxEO0V5RXZuZk07O0lBRUUsOEJBQXNDO0V6RXluZjlDO0V5RXhvZk07SUFBZ0MsdUJBQTRCO0V6RTJvZmxFO0V5RTFvZk07O0lBRUUsMkJBQW9DO0V6RTRvZjVDO0V5RTFvZk07O0lBRUUsNkJBQXdDO0V6RTRvZmhEO0V5RTFvZk07O0lBRUUsOEJBQTBDO0V6RTRvZmxEO0V5RTFvZk07O0lBRUUsNEJBQXNDO0V6RTRvZjlDO0V5RTNwZk07SUFBZ0MseUJBQTRCO0V6RThwZmxFO0V5RTdwZk07O0lBRUUsNkJBQW9DO0V6RStwZjVDO0V5RTdwZk07O0lBRUUsK0JBQXdDO0V6RStwZmhEO0V5RTdwZk07O0lBRUUsZ0NBQTBDO0V6RStwZmxEO0V5RTdwZk07O0lBRUUsOEJBQXNDO0V6RStwZjlDO0V5RTlxZk07SUFBZ0MsdUJBQTRCO0V6RWlyZmxFO0V5RWhyZk07O0lBRUUsMkJBQW9DO0V6RWtyZjVDO0V5RWhyZk07O0lBRUUsNkJBQXdDO0V6RWtyZmhEO0V5RWhyZk07O0lBRUUsOEJBQTBDO0V6RWtyZmxEO0V5RWhyZk07O0lBRUUsNEJBQXNDO0V6RWtyZjlDO0V5RWpzZk07SUFBZ0MscUJBQTRCO0V6RW9zZmxFO0V5RW5zZk07O0lBRUUseUJBQW9DO0V6RXFzZjVDO0V5RW5zZk07O0lBRUUsMkJBQXdDO0V6RXFzZmhEO0V5RW5zZk07O0lBRUUsNEJBQTBDO0V6RXFzZmxEO0V5RW5zZk07O0lBRUUsMEJBQXNDO0V6RXFzZjlDO0V5RXB0Zk07SUFBZ0MsMkJBQTRCO0V6RXV0ZmxFO0V5RXR0Zk07O0lBRUUsK0JBQW9DO0V6RXd0ZjVDO0V5RXR0Zk07O0lBRUUsaUNBQXdDO0V6RXd0ZmhEO0V5RXR0Zk07O0lBRUUsa0NBQTBDO0V6RXd0ZmxEO0V5RXR0Zk07O0lBRUUsZ0NBQXNDO0V6RXd0ZjlDO0V5RXZ1Zk07SUFBZ0MsMEJBQTRCO0V6RTB1ZmxFO0V5RXp1Zk07O0lBRUUsOEJBQW9DO0V6RTJ1ZjVDO0V5RXp1Zk07O0lBRUUsZ0NBQXdDO0V6RTJ1ZmhEO0V5RXp1Zk07O0lBRUUsaUNBQTBDO0V6RTJ1ZmxEO0V5RXp1Zk07O0lBRUUsK0JBQXNDO0V6RTJ1ZjlDO0V5RTF2Zk07SUFBZ0Msd0JBQTRCO0V6RTZ2ZmxFO0V5RTV2Zk07O0lBRUUsNEJBQW9DO0V6RTh2ZjVDO0V5RTV2Zk07O0lBRUUsOEJBQXdDO0V6RTh2ZmhEO0V5RTV2Zk07O0lBRUUsK0JBQTBDO0V6RTh2ZmxEO0V5RTV2Zk07O0lBRUUsNkJBQXNDO0V6RTh2ZjlDO0V5RTd3Zk07SUFBZ0MsMEJBQTRCO0V6RWd4ZmxFO0V5RS93Zk07O0lBRUUsOEJBQW9DO0V6RWl4ZjVDO0V5RS93Zk07O0lBRUUsZ0NBQXdDO0V6RWl4ZmhEO0V5RS93Zk07O0lBRUUsaUNBQTBDO0V6RWl4ZmxEO0V5RS93Zk07O0lBRUUsK0JBQXNDO0V6RWl4ZjlDO0V5RWh5Zk07SUFBZ0Msd0JBQTRCO0V6RW15ZmxFO0V5RWx5Zk07O0lBRUUsNEJBQW9DO0V6RW95ZjVDO0V5RWx5Zk07O0lBRUUsOEJBQXdDO0V6RW95ZmhEO0V5RWx5Zk07O0lBRUUsK0JBQTBDO0V6RW95ZmxEO0V5RWx5Zk07O0lBRUUsNkJBQXNDO0V6RW95ZjlDO0V5RTV4Zk07SUFBd0IsMkJBQTJCO0V6RSt4ZnpEO0V5RTl4Zk07O0lBRUUsK0JBQStCO0V6RWd5ZnZDO0V5RTl4Zk07O0lBRUUsaUNBQWlDO0V6RWd5ZnpDO0V5RTl4Zk07O0lBRUUsa0NBQWtDO0V6RWd5ZjFDO0V5RTl4Zk07O0lBRUUsZ0NBQWdDO0V6RWd5ZnhDO0V5RS95Zk07SUFBd0IsMEJBQTJCO0V6RWt6ZnpEO0V5RWp6Zk07O0lBRUUsOEJBQStCO0V6RW16ZnZDO0V5RWp6Zk07O0lBRUUsZ0NBQWlDO0V6RW16ZnpDO0V5RWp6Zk07O0lBRUUsaUNBQWtDO0V6RW16ZjFDO0V5RWp6Zk07O0lBRUUsK0JBQWdDO0V6RW16ZnhDO0V5RWwwZk07SUFBd0Isd0JBQTJCO0V6RXEwZnpEO0V5RXAwZk07O0lBRUUsNEJBQStCO0V6RXMwZnZDO0V5RXAwZk07O0lBRUUsOEJBQWlDO0V6RXMwZnpDO0V5RXAwZk07O0lBRUUsK0JBQWtDO0V6RXMwZjFDO0V5RXAwZk07O0lBRUUsNkJBQWdDO0V6RXMwZnhDO0V5RXIxZk07SUFBd0IsMEJBQTJCO0V6RXcxZnpEO0V5RXYxZk07O0lBRUUsOEJBQStCO0V6RXkxZnZDO0V5RXYxZk07O0lBRUUsZ0NBQWlDO0V6RXkxZnpDO0V5RXYxZk07O0lBRUUsaUNBQWtDO0V6RXkxZjFDO0V5RXYxZk07O0lBRUUsK0JBQWdDO0V6RXkxZnhDO0V5RXgyZk07SUFBd0Isd0JBQTJCO0V6RTIyZnpEO0V5RTEyZk07O0lBRUUsNEJBQStCO0V6RTQyZnZDO0V5RTEyZk07O0lBRUUsOEJBQWlDO0V6RTQyZnpDO0V5RTEyZk07O0lBRUUsK0JBQWtDO0V6RTQyZjFDO0V5RTEyZk07O0lBRUUsNkJBQWdDO0V6RTQyZnhDO0V5RXQyZkU7SUFBbUIsdUJBQXVCO0V6RXkyZjVDO0V5RXgyZkU7O0lBRUUsMkJBQTJCO0V6RTAyZi9CO0V5RXgyZkU7O0lBRUUsNkJBQTZCO0V6RTAyZmpDO0V5RXgyZkU7O0lBRUUsOEJBQThCO0V6RTAyZmxDO0V5RXgyZkU7O0lBRUUsNEJBQTRCO0V6RTAyZmhDO0FBQ0Y7O0FpQnAzZkk7RXdEbERJO0lBQWdDLG9CQUE0QjtFekUyNmZsRTtFeUUxNmZNOztJQUVFLHdCQUFvQztFekU0NmY1QztFeUUxNmZNOztJQUVFLDBCQUF3QztFekU0NmZoRDtFeUUxNmZNOztJQUVFLDJCQUEwQztFekU0NmZsRDtFeUUxNmZNOztJQUVFLHlCQUFzQztFekU0NmY5QztFeUUzN2ZNO0lBQWdDLDBCQUE0QjtFekU4N2ZsRTtFeUU3N2ZNOztJQUVFLDhCQUFvQztFekUrN2Y1QztFeUU3N2ZNOztJQUVFLGdDQUF3QztFekUrN2ZoRDtFeUU3N2ZNOztJQUVFLGlDQUEwQztFekUrN2ZsRDtFeUU3N2ZNOztJQUVFLCtCQUFzQztFekUrN2Y5QztFeUU5OGZNO0lBQWdDLHlCQUE0QjtFekVpOWZsRTtFeUVoOWZNOztJQUVFLDZCQUFvQztFekVrOWY1QztFeUVoOWZNOztJQUVFLCtCQUF3QztFekVrOWZoRDtFeUVoOWZNOztJQUVFLGdDQUEwQztFekVrOWZsRDtFeUVoOWZNOztJQUVFLDhCQUFzQztFekVrOWY5QztFeUVqK2ZNO0lBQWdDLHVCQUE0QjtFekVvK2ZsRTtFeUVuK2ZNOztJQUVFLDJCQUFvQztFekVxK2Y1QztFeUVuK2ZNOztJQUVFLDZCQUF3QztFekVxK2ZoRDtFeUVuK2ZNOztJQUVFLDhCQUEwQztFekVxK2ZsRDtFeUVuK2ZNOztJQUVFLDRCQUFzQztFekVxK2Y5QztFeUVwL2ZNO0lBQWdDLHlCQUE0QjtFekV1L2ZsRTtFeUV0L2ZNOztJQUVFLDZCQUFvQztFekV3L2Y1QztFeUV0L2ZNOztJQUVFLCtCQUF3QztFekV3L2ZoRDtFeUV0L2ZNOztJQUVFLGdDQUEwQztFekV3L2ZsRDtFeUV0L2ZNOztJQUVFLDhCQUFzQztFekV3L2Y5QztFeUV2Z2dCTTtJQUFnQyx1QkFBNEI7RXpFMGdnQmxFO0V5RXpnZ0JNOztJQUVFLDJCQUFvQztFekUyZ2dCNUM7RXlFemdnQk07O0lBRUUsNkJBQXdDO0V6RTJnZ0JoRDtFeUV6Z2dCTTs7SUFFRSw4QkFBMEM7RXpFMmdnQmxEO0V5RXpnZ0JNOztJQUVFLDRCQUFzQztFekUyZ2dCOUM7RXlFMWhnQk07SUFBZ0MscUJBQTRCO0V6RTZoZ0JsRTtFeUU1aGdCTTs7SUFFRSx5QkFBb0M7RXpFOGhnQjVDO0V5RTVoZ0JNOztJQUVFLDJCQUF3QztFekU4aGdCaEQ7RXlFNWhnQk07O0lBRUUsNEJBQTBDO0V6RThoZ0JsRDtFeUU1aGdCTTs7SUFFRSwwQkFBc0M7RXpFOGhnQjlDO0V5RTdpZ0JNO0lBQWdDLDJCQUE0QjtFekVnamdCbEU7RXlFL2lnQk07O0lBRUUsK0JBQW9DO0V6RWlqZ0I1QztFeUUvaWdCTTs7SUFFRSxpQ0FBd0M7RXpFaWpnQmhEO0V5RS9pZ0JNOztJQUVFLGtDQUEwQztFekVpamdCbEQ7RXlFL2lnQk07O0lBRUUsZ0NBQXNDO0V6RWlqZ0I5QztFeUVoa2dCTTtJQUFnQywwQkFBNEI7RXpFbWtnQmxFO0V5RWxrZ0JNOztJQUVFLDhCQUFvQztFekVva2dCNUM7RXlFbGtnQk07O0lBRUUsZ0NBQXdDO0V6RW9rZ0JoRDtFeUVsa2dCTTs7SUFFRSxpQ0FBMEM7RXpFb2tnQmxEO0V5RWxrZ0JNOztJQUVFLCtCQUFzQztFekVva2dCOUM7RXlFbmxnQk07SUFBZ0Msd0JBQTRCO0V6RXNsZ0JsRTtFeUVybGdCTTs7SUFFRSw0QkFBb0M7RXpFdWxnQjVDO0V5RXJsZ0JNOztJQUVFLDhCQUF3QztFekV1bGdCaEQ7RXlFcmxnQk07O0lBRUUsK0JBQTBDO0V6RXVsZ0JsRDtFeUVybGdCTTs7SUFFRSw2QkFBc0M7RXpFdWxnQjlDO0V5RXRtZ0JNO0lBQWdDLDBCQUE0QjtFekV5bWdCbEU7RXlFeG1nQk07O0lBRUUsOEJBQW9DO0V6RTBtZ0I1QztFeUV4bWdCTTs7SUFFRSxnQ0FBd0M7RXpFMG1nQmhEO0V5RXhtZ0JNOztJQUVFLGlDQUEwQztFekUwbWdCbEQ7RXlFeG1nQk07O0lBRUUsK0JBQXNDO0V6RTBtZ0I5QztFeUV6bmdCTTtJQUFnQyx3QkFBNEI7RXpFNG5nQmxFO0V5RTNuZ0JNOztJQUVFLDRCQUFvQztFekU2bmdCNUM7RXlFM25nQk07O0lBRUUsOEJBQXdDO0V6RTZuZ0JoRDtFeUUzbmdCTTs7SUFFRSwrQkFBMEM7RXpFNm5nQmxEO0V5RTNuZ0JNOztJQUVFLDZCQUFzQztFekU2bmdCOUM7RXlFcm5nQk07SUFBd0IsMkJBQTJCO0V6RXduZ0J6RDtFeUV2bmdCTTs7SUFFRSwrQkFBK0I7RXpFeW5nQnZDO0V5RXZuZ0JNOztJQUVFLGlDQUFpQztFekV5bmdCekM7RXlFdm5nQk07O0lBRUUsa0NBQWtDO0V6RXluZ0IxQztFeUV2bmdCTTs7SUFFRSxnQ0FBZ0M7RXpFeW5nQnhDO0V5RXhvZ0JNO0lBQXdCLDBCQUEyQjtFekUyb2dCekQ7RXlFMW9nQk07O0lBRUUsOEJBQStCO0V6RTRvZ0J2QztFeUUxb2dCTTs7SUFFRSxnQ0FBaUM7RXpFNG9nQnpDO0V5RTFvZ0JNOztJQUVFLGlDQUFrQztFekU0b2dCMUM7RXlFMW9nQk07O0lBRUUsK0JBQWdDO0V6RTRvZ0J4QztFeUUzcGdCTTtJQUF3Qix3QkFBMkI7RXpFOHBnQnpEO0V5RTdwZ0JNOztJQUVFLDRCQUErQjtFekUrcGdCdkM7RXlFN3BnQk07O0lBRUUsOEJBQWlDO0V6RStwZ0J6QztFeUU3cGdCTTs7SUFFRSwrQkFBa0M7RXpFK3BnQjFDO0V5RTdwZ0JNOztJQUVFLDZCQUFnQztFekUrcGdCeEM7RXlFOXFnQk07SUFBd0IsMEJBQTJCO0V6RWlyZ0J6RDtFeUVocmdCTTs7SUFFRSw4QkFBK0I7RXpFa3JnQnZDO0V5RWhyZ0JNOztJQUVFLGdDQUFpQztFekVrcmdCekM7RXlFaHJnQk07O0lBRUUsaUNBQWtDO0V6RWtyZ0IxQztFeUVocmdCTTs7SUFFRSwrQkFBZ0M7RXpFa3JnQnhDO0V5RWpzZ0JNO0lBQXdCLHdCQUEyQjtFekVvc2dCekQ7RXlFbnNnQk07O0lBRUUsNEJBQStCO0V6RXFzZ0J2QztFeUVuc2dCTTs7SUFFRSw4QkFBaUM7RXpFcXNnQnpDO0V5RW5zZ0JNOztJQUVFLCtCQUFrQztFekVxc2dCMUM7RXlFbnNnQk07O0lBRUUsNkJBQWdDO0V6RXFzZ0J4QztFeUUvcmdCRTtJQUFtQix1QkFBdUI7RXpFa3NnQjVDO0V5RWpzZ0JFOztJQUVFLDJCQUEyQjtFekVtc2dCL0I7RXlFanNnQkU7O0lBRUUsNkJBQTZCO0V6RW1zZ0JqQztFeUVqc2dCRTs7SUFFRSw4QkFBOEI7RXpFbXNnQmxDO0V5RWpzZ0JFOztJQUVFLDRCQUE0QjtFekVtc2dCaEM7QUFDRjs7QWlCN3NnQkk7RXdEbERJO0lBQWdDLG9CQUE0QjtFekVvd2dCbEU7RXlFbndnQk07O0lBRUUsd0JBQW9DO0V6RXF3Z0I1QztFeUVud2dCTTs7SUFFRSwwQkFBd0M7RXpFcXdnQmhEO0V5RW53Z0JNOztJQUVFLDJCQUEwQztFekVxd2dCbEQ7RXlFbndnQk07O0lBRUUseUJBQXNDO0V6RXF3Z0I5QztFeUVweGdCTTtJQUFnQywwQkFBNEI7RXpFdXhnQmxFO0V5RXR4Z0JNOztJQUVFLDhCQUFvQztFekV3eGdCNUM7RXlFdHhnQk07O0lBRUUsZ0NBQXdDO0V6RXd4Z0JoRDtFeUV0eGdCTTs7SUFFRSxpQ0FBMEM7RXpFd3hnQmxEO0V5RXR4Z0JNOztJQUVFLCtCQUFzQztFekV3eGdCOUM7RXlFdnlnQk07SUFBZ0MseUJBQTRCO0V6RTB5Z0JsRTtFeUV6eWdCTTs7SUFFRSw2QkFBb0M7RXpFMnlnQjVDO0V5RXp5Z0JNOztJQUVFLCtCQUF3QztFekUyeWdCaEQ7RXlFenlnQk07O0lBRUUsZ0NBQTBDO0V6RTJ5Z0JsRDtFeUV6eWdCTTs7SUFFRSw4QkFBc0M7RXpFMnlnQjlDO0V5RTF6Z0JNO0lBQWdDLHVCQUE0QjtFekU2emdCbEU7RXlFNXpnQk07O0lBRUUsMkJBQW9DO0V6RTh6Z0I1QztFeUU1emdCTTs7SUFFRSw2QkFBd0M7RXpFOHpnQmhEO0V5RTV6Z0JNOztJQUVFLDhCQUEwQztFekU4emdCbEQ7RXlFNXpnQk07O0lBRUUsNEJBQXNDO0V6RTh6Z0I5QztFeUU3MGdCTTtJQUFnQyx5QkFBNEI7RXpFZzFnQmxFO0V5RS8wZ0JNOztJQUVFLDZCQUFvQztFekVpMWdCNUM7RXlFLzBnQk07O0lBRUUsK0JBQXdDO0V6RWkxZ0JoRDtFeUUvMGdCTTs7SUFFRSxnQ0FBMEM7RXpFaTFnQmxEO0V5RS8wZ0JNOztJQUVFLDhCQUFzQztFekVpMWdCOUM7RXlFaDJnQk07SUFBZ0MsdUJBQTRCO0V6RW0yZ0JsRTtFeUVsMmdCTTs7SUFFRSwyQkFBb0M7RXpFbzJnQjVDO0V5RWwyZ0JNOztJQUVFLDZCQUF3QztFekVvMmdCaEQ7RXlFbDJnQk07O0lBRUUsOEJBQTBDO0V6RW8yZ0JsRDtFeUVsMmdCTTs7SUFFRSw0QkFBc0M7RXpFbzJnQjlDO0V5RW4zZ0JNO0lBQWdDLHFCQUE0QjtFekVzM2dCbEU7RXlFcjNnQk07O0lBRUUseUJBQW9DO0V6RXUzZ0I1QztFeUVyM2dCTTs7SUFFRSwyQkFBd0M7RXpFdTNnQmhEO0V5RXIzZ0JNOztJQUVFLDRCQUEwQztFekV1M2dCbEQ7RXlFcjNnQk07O0lBRUUsMEJBQXNDO0V6RXUzZ0I5QztFeUV0NGdCTTtJQUFnQywyQkFBNEI7RXpFeTRnQmxFO0V5RXg0Z0JNOztJQUVFLCtCQUFvQztFekUwNGdCNUM7RXlFeDRnQk07O0lBRUUsaUNBQXdDO0V6RTA0Z0JoRDtFeUV4NGdCTTs7SUFFRSxrQ0FBMEM7RXpFMDRnQmxEO0V5RXg0Z0JNOztJQUVFLGdDQUFzQztFekUwNGdCOUM7RXlFejVnQk07SUFBZ0MsMEJBQTRCO0V6RTQ1Z0JsRTtFeUUzNWdCTTs7SUFFRSw4QkFBb0M7RXpFNjVnQjVDO0V5RTM1Z0JNOztJQUVFLGdDQUF3QztFekU2NWdCaEQ7RXlFMzVnQk07O0lBRUUsaUNBQTBDO0V6RTY1Z0JsRDtFeUUzNWdCTTs7SUFFRSwrQkFBc0M7RXpFNjVnQjlDO0V5RTU2Z0JNO0lBQWdDLHdCQUE0QjtFekUrNmdCbEU7RXlFOTZnQk07O0lBRUUsNEJBQW9DO0V6RWc3Z0I1QztFeUU5NmdCTTs7SUFFRSw4QkFBd0M7RXpFZzdnQmhEO0V5RTk2Z0JNOztJQUVFLCtCQUEwQztFekVnN2dCbEQ7RXlFOTZnQk07O0lBRUUsNkJBQXNDO0V6RWc3Z0I5QztFeUUvN2dCTTtJQUFnQywwQkFBNEI7RXpFazhnQmxFO0V5RWo4Z0JNOztJQUVFLDhCQUFvQztFekVtOGdCNUM7RXlFajhnQk07O0lBRUUsZ0NBQXdDO0V6RW04Z0JoRDtFeUVqOGdCTTs7SUFFRSxpQ0FBMEM7RXpFbThnQmxEO0V5RWo4Z0JNOztJQUVFLCtCQUFzQztFekVtOGdCOUM7RXlFbDlnQk07SUFBZ0Msd0JBQTRCO0V6RXE5Z0JsRTtFeUVwOWdCTTs7SUFFRSw0QkFBb0M7RXpFczlnQjVDO0V5RXA5Z0JNOztJQUVFLDhCQUF3QztFekVzOWdCaEQ7RXlFcDlnQk07O0lBRUUsK0JBQTBDO0V6RXM5Z0JsRDtFeUVwOWdCTTs7SUFFRSw2QkFBc0M7RXpFczlnQjlDO0V5RTk4Z0JNO0lBQXdCLDJCQUEyQjtFekVpOWdCekQ7RXlFaDlnQk07O0lBRUUsK0JBQStCO0V6RWs5Z0J2QztFeUVoOWdCTTs7SUFFRSxpQ0FBaUM7RXpFazlnQnpDO0V5RWg5Z0JNOztJQUVFLGtDQUFrQztFekVrOWdCMUM7RXlFaDlnQk07O0lBRUUsZ0NBQWdDO0V6RWs5Z0J4QztFeUVqK2dCTTtJQUF3QiwwQkFBMkI7RXpFbytnQnpEO0V5RW4rZ0JNOztJQUVFLDhCQUErQjtFekVxK2dCdkM7RXlFbitnQk07O0lBRUUsZ0NBQWlDO0V6RXErZ0J6QztFeUVuK2dCTTs7SUFFRSxpQ0FBa0M7RXpFcStnQjFDO0V5RW4rZ0JNOztJQUVFLCtCQUFnQztFekVxK2dCeEM7RXlFcC9nQk07SUFBd0Isd0JBQTJCO0V6RXUvZ0J6RDtFeUV0L2dCTTs7SUFFRSw0QkFBK0I7RXpFdy9nQnZDO0V5RXQvZ0JNOztJQUVFLDhCQUFpQztFekV3L2dCekM7RXlFdC9nQk07O0lBRUUsK0JBQWtDO0V6RXcvZ0IxQztFeUV0L2dCTTs7SUFFRSw2QkFBZ0M7RXpFdy9nQnhDO0V5RXZnaEJNO0lBQXdCLDBCQUEyQjtFekUwZ2hCekQ7RXlFemdoQk07O0lBRUUsOEJBQStCO0V6RTJnaEJ2QztFeUV6Z2hCTTs7SUFFRSxnQ0FBaUM7RXpFMmdoQnpDO0V5RXpnaEJNOztJQUVFLGlDQUFrQztFekUyZ2hCMUM7RXlFemdoQk07O0lBRUUsK0JBQWdDO0V6RTJnaEJ4QztFeUUxaGhCTTtJQUF3Qix3QkFBMkI7RXpFNmhoQnpEO0V5RTVoaEJNOztJQUVFLDRCQUErQjtFekU4aGhCdkM7RXlFNWhoQk07O0lBRUUsOEJBQWlDO0V6RThoaEJ6QztFeUU1aGhCTTs7SUFFRSwrQkFBa0M7RXpFOGhoQjFDO0V5RTVoaEJNOztJQUVFLDZCQUFnQztFekU4aGhCeEM7RXlFeGhoQkU7SUFBbUIsdUJBQXVCO0V6RTJoaEI1QztFeUUxaGhCRTs7SUFFRSwyQkFBMkI7RXpFNGhoQi9CO0V5RTFoaEJFOztJQUVFLDZCQUE2QjtFekU0aGhCakM7RXlFMWhoQkU7O0lBRUUsOEJBQThCO0V6RTRoaEJsQztFeUUxaGhCRTs7SUFFRSw0QkFBNEI7RXpFNGhoQmhDO0FBQ0Y7O0EwRTVsaEJBO0VBQWtCLDRHQUE4QztBMUVnbWhCaEU7O0EwRTVsaEJBO0VBQWlCLDhCQUE4QjtBMUVnbWhCL0M7O0EwRS9saEJBO0VBQWlCLDhCQUE4QjtBMUVtbWhCL0M7O0EwRWxtaEJBO0VBQWlCLDhCQUE4QjtBMUVzbWhCL0M7O0EwRXJtaEJBO0VDVEUsZ0JBQWdCO0VBQ2hCLHVCQUF1QjtFQUN2QixtQkFBbUI7QTNFa25oQnJCOztBMEVubWhCSTtFQUF3QiwyQkFBMkI7QTFFdW1oQnZEOztBMEV0bWhCSTtFQUF3Qiw0QkFBNEI7QTFFMG1oQnhEOztBMEV6bWhCSTtFQUF3Qiw2QkFBNkI7QTFFNm1oQnpEOztBaUJ4a2hCSTtFeUR2Q0E7SUFBd0IsMkJBQTJCO0UxRW9uaEJyRDtFMEVubmhCRTtJQUF3Qiw0QkFBNEI7RTFFc25oQnREO0UwRXJuaEJFO0lBQXdCLDZCQUE2QjtFMUV3bmhCdkQ7QUFDRjs7QWlCcGxoQkk7RXlEdkNBO0lBQXdCLDJCQUEyQjtFMUVnb2hCckQ7RTBFL25oQkU7SUFBd0IsNEJBQTRCO0UxRWtvaEJ0RDtFMEVqb2hCRTtJQUF3Qiw2QkFBNkI7RTFFb29oQnZEO0FBQ0Y7O0FpQmhtaEJJO0V5RHZDQTtJQUF3QiwyQkFBMkI7RTFFNG9oQnJEO0UwRTNvaEJFO0lBQXdCLDRCQUE0QjtFMUU4b2hCdEQ7RTBFN29oQkU7SUFBd0IsNkJBQTZCO0UxRWdwaEJ2RDtBQUNGOztBaUI1bWhCSTtFeUR2Q0E7SUFBd0IsMkJBQTJCO0UxRXdwaEJyRDtFMEV2cGhCRTtJQUF3Qiw0QkFBNEI7RTFFMHBoQnREO0UwRXpwaEJFO0lBQXdCLDZCQUE2QjtFMUU0cGhCdkQ7QUFDRjs7QTBFdnBoQkE7RUFBbUIsb0NBQW9DO0ExRTJwaEJ2RDs7QTBFMXBoQkE7RUFBbUIsb0NBQW9DO0ExRThwaEJ2RDs7QTBFN3BoQkE7RUFBbUIscUNBQXFDO0ExRWlxaEJ4RDs7QTBFN3BoQkE7RUFBdUIsMkJBQTBDO0ExRWlxaEJqRTs7QTBFaHFoQkE7RUFBdUIsK0JBQTRDO0ExRW9xaEJuRTs7QTBFbnFoQkE7RUFBdUIsMkJBQTJDO0ExRXVxaEJsRTs7QTBFdHFoQkE7RUFBdUIsMkJBQXlDO0ExRTBxaEJoRTs7QTBFenFoQkE7RUFBdUIsOEJBQTJDO0ExRTZxaEJsRTs7QTBFNXFoQkE7RUFBdUIsNkJBQTZCO0ExRWdyaEJwRDs7QTBFNXFoQkE7RUFBYyxzQkFBd0I7QTFFZ3JoQnRDOztBNEV2dGhCRTtFQUNFLHlCQUF3QjtBNUUwdGhCNUI7O0FRaHRoQkU7RW9FTE0seUJBQTBFO0E1RXl0aEJsRjs7QTRFL3RoQkU7RUFDRSx5QkFBd0I7QTVFa3VoQjVCOztBUXh0aEJFO0VvRUxNLHlCQUEwRTtBNUVpdWhCbEY7O0E0RXZ1aEJFO0VBQ0UseUJBQXdCO0E1RTB1aEI1Qjs7QVFodWhCRTtFb0VMTSx5QkFBMEU7QTVFeXVoQmxGOztBNEUvdWhCRTtFQUNFLHlCQUF3QjtBNUVrdmhCNUI7O0FReHVoQkU7RW9FTE0seUJBQTBFO0E1RWl2aEJsRjs7QTRFdnZoQkU7RUFDRSx5QkFBd0I7QTVFMHZoQjVCOztBUWh2aEJFO0VvRUxNLHlCQUEwRTtBNUV5dmhCbEY7O0E0RS92aEJFO0VBQ0UseUJBQXdCO0E1RWt3aEI1Qjs7QVF4dmhCRTtFb0VMTSx5QkFBMEU7QTVFaXdoQmxGOztBNEV2d2hCRTtFQUNFLHlCQUF3QjtBNUUwd2hCNUI7O0FRaHdoQkU7RW9FTE0seUJBQTBFO0E1RXl3aEJsRjs7QTRFL3doQkU7RUFDRSx5QkFBd0I7QTVFa3hoQjVCOztBUXh3aEJFO0VvRUxNLHlCQUEwRTtBNUVpeGhCbEY7O0EwRTF1aEJBO0VBQWEseUJBQTZCO0ExRTh1aEIxQzs7QTBFN3VoQkE7RUFBYyx5QkFBNkI7QTFFaXZoQjNDOztBMEUvdWhCQTtFQUFpQixvQ0FBa0M7QTFFbXZoQm5EOztBMEVsdmhCQTtFQUFpQiwwQ0FBa0M7QTFFc3ZoQm5EOztBMEVsdmhCQTtFR3ZERSxXQUFXO0VBQ1gsa0JBQWtCO0VBQ2xCLGlCQUFpQjtFQUNqQiw2QkFBNkI7RUFDN0IsU0FBUztBN0U2eWhCWDs7QTBFdHZoQkE7RUFBd0IsZ0NBQWdDO0ExRTB2aEJ4RDs7QTBFeHZoQkE7RUFDRSxpQ0FBaUM7RUFDakMsb0NBQW9DO0ExRTJ2aEJ0Qzs7QTBFdHZoQkE7RUFBYyx5QkFBeUI7QTFFMHZoQnZDOztBOEUzemhCQTtFQUNFLDhCQUE4QjtBOUU4emhCaEM7O0E4RTN6aEJBO0VBQ0UsNkJBQTZCO0E5RTh6aEIvQjs7QStFOXpoQkU7RTFFT0Y7OztJMEVETSw0QkFBNEI7SUFFNUIsMkJBQTJCO0UvRTh6aEIvQjtFK0UzemhCRTtJQUVJLDBCQUEwQjtFL0U0emhCaEM7RStFbnpoQkU7SUFDRSw2QkFBNkI7RS9FcXpoQmpDO0VLdm5oQkY7STBFL0tNLGdDQUFnQztFL0V5eWhCcEM7RStFdnloQkU7O0lBRUUseUJ6RXpDWTtJeUUwQ1osd0JBQXdCO0UvRXl5aEI1QjtFK0VqeWhCRTtJQUNFLDJCQUEyQjtFL0VteWhCL0I7RStFaHloQkU7O0lBRUUsd0JBQXdCO0UvRWt5aEI1QjtFK0UveGhCRTs7O0lBR0UsVUFBVTtJQUNWLFNBQVM7RS9FaXloQmI7RStFOXhoQkU7O0lBRUUsdUJBQXVCO0UvRWd5aEIzQjtFK0V4eGhCRTtJQUNFLFF6RTRoQ2dDO0VOOHZmcEM7RUt0MGhCRjtJMEUrQ00sMkJBQTJDO0UvRTB4aEIvQztFZWgzaEJBO0lnRXlGSSwyQkFBMkM7RS9FMHhoQi9DO0VvQ3gyaEJGO0kyQ21GTSxhQUFhO0UvRXd4aEJqQjtFeUN2M2hCRjtJc0NrR00sc0J6RXRGUztFTjgyaEJiO0VtQjMzaEJGO0k0RHVHTSxvQ0FBb0M7RS9FdXhoQnhDO0UrRXh4aEJFOztJQUtJLGlDQUFtQztFL0V1eGhCekM7RW1CMTFoQkY7O0k0RDBFUSxvQ0FBc0M7RS9Fb3hoQjVDO0VtQnp3aEJGO0k0RE5NLGNBQWM7RS9Fa3hoQmxCO0VvQng0aEJBOzs7O0kyRDRITSxxQnpFdkhVO0VOeTRoQmhCO0VtQnB5aEJGO0k0RHVCTSxjQUFjO0lBQ2QscUJ6RTdIWTtFTjY0aEJoQjtBQUNGOztBZ0Z4NWhCQTs7Ozs7Ozs7aUZoRms2aEJpRjtBaUZsNmhCakY7Ozs7Ozs7Ozs7Ozs7O2lGakZpN2hCaUY7QWtGajdoQmpGOzs7Ozs7aUZsRnc3aEJpRjtBbUZ4N2hCakY7Ozs7OztpRm5GKzdoQmlGO0FvRi83aEJqRjs7Ozs7O2lGcEZzOGhCaUY7QXFGdDhoQmpGOzs7Ozs7OztpRnJGKzhoQmlGO0FzRi84aEJqRjs7Ozs7OztpRnRGdTloQmlGO0F1RnY5aEJqRjs7Ozs7O2lGdkY4OWhCaUY7QXdGOTloQmpGOzs7Ozs7aUZ4RnEraEJpRjtBeUZyK2hCakY7Ozs7OztpRnpGNCtoQmlGO0EwRjUraEJqRjs7Ozs7O2lGMUZtL2hCaUY7QTJGbi9oQmpGOzs7Ozs7aUYzRjAvaEJpRjtBNEYxL2hCakY7Ozs7OztpRjVGaWdpQmlGO0E2RmpnaUJqRjs7Ozs7O2lGN0Z3Z2lCaUY7QUszOWhCakY7RXdGOUJJLGtCQUFrQjtBN0Y0L2hCdEI7O0FLNzNoQkE7RXdGdEhJLHdCUjhHcUI7QXJGeTRoQnpCOztBSzczaEJBO0V3RnRISSxzQlJzR2U7QXJGaTVoQm5COztBNkZ4L2hCQTtFQUlRLGdCQUFnQjtBN0Z3L2hCeEI7O0E2RnAvaEJBO0VBRVEsZ0JBQWdCO0E3RnMvaEJ4Qjs7QUszemhCQTtFd0ZqTEksZ0JBQVc7SUFBWCxjQUFXO09BQVgsV0FBVztFQUNYLHNCUjNCYztFUTRCZCx3QlJ3cENrQztFUXZwQ2xDLGdCQUFnQjtFQUNoQixxQkFBYTtNQUFiLGlCQUFhO1VBQWIsYUFBYTtBN0ZnL2hCakI7O0FLdHloQkE7RXdGaE1JLGNBQWM7QTdGMCtoQmxCOztBNkZ2K2hCSTtFQUNJLHFCQUFxQjtBN0YwK2hCN0I7O0E2RnQraEJJO0VBQ0ksWUFBWTtBN0Z5K2hCcEI7O0E2Ri85aEJBO0VBQ0ksY0FBYztBN0ZrK2hCbEI7O0E4Rm5qaUJBOzs7Ozs7aUY5RjJqaUJpRjtBU3JqaUJqRjs7RXFGU0ksd0JUMlNpQztBckZxd2hCckM7O0E4RnZpaUJBOztFQU1ZLHFCVHdHYTtBckY4N2hCekI7O0E4RjVpaUJBO0VBV1ksYUFBYTtBOUZxaWlCekI7O0E4RmhpaUJLOztFQUlXLG9CQUF5QjtBOUZpaWlCekM7O0E4RjFoaUJBO0VBRVEsdUJBQXVCO0E5RjRoaUIvQjs7QThGOWhpQkE7RUFNUSx1QkFBdUI7QTlGNGhpQi9COztBUzEvaEJBO0VxRjVCSSxrQkFBa0I7QTlGMGhpQnRCOztBOEZ0aGlCQTtFQUdZLHNCQUF3QztBOUZ1aGlCcEQ7O0E4RmpoaUJBO0VBR1ksc0JBQXdDO0E5RmtoaUJwRDs7QThGcmhpQkE7RUFPZ0IsZ0JBQWdCO0VBQ2hCLHNCUjVCbUM7RVE2Qm5DLGlCQUFnQztFQUNoQyxhQUE4QjtFQUM5QixrQkFBa0I7RUFDbEIscUJBQXFCO0VBQ3JCLHFCQUF1RTtFQUN2RSxhQUFhO0E5RmtoaUI3Qjs7QThGaGlpQkE7RUF1QmdCLHdCQUF3QztBOUY2Z2lCeEQ7O0E4RnBpaUJBO0VBMEJvQix1QkFBcUU7QTlGOGdpQnpGOztBOEZqZ2lCQTtFQUNJLG9CQUFvQjtFQUNwQixtQkFBbUI7QTlGb2dpQnZCOztBOEZ0Z2lCQTtFQU1RLHNCUi9EMEM7QXRGbWtpQmxEOztBOEZoZ2lCSztFQUVPLHFCQUFvQztBOUZrZ2lCaEQ7O0E4RjUvaEJBO0VBQ0kscUJBQXFCO0VBQ3JCLGNBQWM7QTlGKy9oQmxCOztBOEYzL2hCQTtFdkVySU0saUMrRHVEeUM7QXRGNmtpQi9DOztBdUIvbmlCSTtFdUVnSUo7SXZFL0hNLGdCQUFnQjtFdkJtb2lCcEI7QUFDRjs7QThGcmdpQkE7RUFLUSxjQUFjO0E5Rm9naUJ0Qjs7QThGemdpQkE7O0VBWVEsVUFBVTtFQUNWLGFBQWE7QTlGa2dpQnJCOztBOEZ4L2hCQTtFQUNJLGdCVDJINEI7QXJGZzRoQmhDOztBOEZ6L2hCQTtFQUNJLGdCVHNINEI7QXJGczRoQmhDOztBOEYxL2hCQTtFQUNJLGdCVGdINEI7QXJGNjRoQmhDOztBMEUxbmlCQTtFb0JrSUksV1Q3SmM7QXJGeXBpQmxCOztBOEYxL2hCQTtFdkUxS00sbUMrRHVEeUM7QXRGaW5pQi9DOztBdUJucWlCSTtFdUVxS0o7SXZFcEtNLGdCQUFnQjtFdkJ1cWlCcEI7QUFDRjs7QVFwcWlCRTtFc0Z1S00sZ0NUdEtVO0FyRnVxaUJsQjs7QThGNS9oQkE7RUFDSSxXVG5LYztBckZrcWlCbEI7O0E4RjcvaEJBO0V2RXpMTSxtQytEdUR5QztBdEZtb2lCL0M7O0F1QnJyaUJJO0V1RW9MSjtJdkVuTE0sZ0JBQWdCO0V2QnlyaUJwQjtBQUNGOztBUXRyaUJFO0VzRnNMTSw2QlQ1S1U7QXJGZ3JpQmxCOztBOEYxL2hCQTtFQUNJLDJCVDdMYztBckYwcmlCbEI7O0E4RjEvaEJJO0VBQ0ksY0FBYztFQUNkLDRCVGxNVTtBckYrcmlCbEI7O0FTL2xpQkE7RXFGd0dJLG9CVHVEa0M7QXJGbzhoQnRDOztBU25taUJBO0VxRjRHUSxrQ0FBa0M7QTlGMi9oQjFDOztBOEZqL2hCQTtFQUNJLGtCQUFrQjtFQUNsQix1QlJ3ZHNDO0VRdmR0QyxxQlJ3ZDBFO0F0RjRoaEI5RTs7QThGdi9oQkE7RUFPUSxXQUFXO0VBQ1gsa0JBQWtCO0VBQ2xCLE9BQU87RUFDUCxlUjhjK0g7RVE3Yy9ILHNCVHBPVTtFU3FPVixxQkFBcUI7RUFDckIseUJWMUVpQjtFVTJFakIsVUFBVTtFQ3JQaEIsYVQ0ckJ1QztFUzNyQnZDLGNUMnJCdUM7RXpFMXJCckMsa0J3RXNPMkI7QXJGb2dpQi9COztBOEZyZ2lCQTtFQXFCUSxXQUFXO0VBQ1gsa0JBQWtCO0VBQ2xCLGVSaWMrSDtFUWhjL0gsZUFBcUY7RUFDckYsbUJBQStFO0VBQy9FLFFBQVE7RUFDUiw4QlZ4RmlCO0VVeUZqQiwrQlZ6RmlCO0VVMEZqQixVQUFVO0E5Rm8vaEJsQjs7QThGamhpQkE7RUFtQ1ksV1JrYjZCO0F0RmdraEJ6Qzs7QThGcmhpQkE7RUF5Q1EsaUJBQWlCO0E5RmcvaEJ6Qjs7QThGemhpQkE7RUE0Q1ksYUFBYTtBOUZpL2hCekI7O0E4RjdoaUJBO0VBb0RZLHFCQUFxQjtBOUY2K2hCakM7O0E4RnYraEJBO0VBRVEsV0FBVztFQUNYLHFCQUE0QztFQ3BTbEQsUURxU3FCO0VDcFNyQixTRG9TcUI7QTlGMCtoQnZCOztBOEZyK2hCQTtFQUVRLFdBQVc7RWpGMVNmLGdCaUYyUzRCO0E5RnUraEJoQzs7QThGbCtoQkE7RUFFUSxXQUFXO0VBQ1gsd0JBQXdCO0VqRm5UNUIsZ0JpRm9UNEI7QTlGbytoQmhDOztBOEYvOWhCQTtFQUVRLG9CQUErRTtBOUZpK2hCdkY7O0E4Rm4raEJBO0VBS1ksa0JBQWtCO0VBQ2xCLGNBQXdFO0VBQ3hFLE1BQU07QTlGaytoQmxCOztBOEZ2OWhCQTtFQUNJLGtCQUFrQjtFQUNsQixrQkFBa0I7RUFDbEIsVUFBVTtBOUYwOWhCZDs7QThGNzloQkE7RUFPUSx5QlQxTGU7RVMyTGYscUJBQXFCO0E5RjA5aEI3Qjs7QThGdjloQlE7O0VBRUksc0JUNVVNO0FyRnN5aUJsQjs7QThGeDloQlE7RUFDSSxzQlQvVU07QXJGMHlpQmxCOztBOEYzK2hCQTtFQXFCWSxXQUFXO0VBQ1gsa0JBQWtCO0VBQ2xCLFFBQVE7RUFDUixPQUFPO0VBQ1AsV1R0SW1CO0VTdUluQixzQlRyVk07RVNzVk4sV0FBVztFQUNYLFdBQVc7QTlGMDloQnZCOztBOEZwOWhCQTtFQUNJLFdSMVQwQztFUTJUMUMsa0JUNUU0RDtFUzZFNUQsY0FBYztBOUZ1OWhCbEI7O0E4RnA5aEJJO0VBQ0ksa0JUaEZvRDtBckZ1aWlCNUQ7O0E4RnI5aEJJO0VBQ0ksa0JUbEZvRDtBckYwaWlCNUQ7O0FnR3AxaUJBOzs7Ozs7aUZoRzQxaUJpRjtBYzMxaUJqRjtFa0ZTSSxzQlhtckNpQztFV2xyQ2pDLHlCWE9pQjtBckY4MGlCckI7O0FLaG9pQkE7RTJGaE5JLHFCQUFxQjtFQUN4QjtFQUNBLGdCQUFnQjtFbkZiYix3QndFa09pQztBckZnb2lCckM7O0FpR3YyaUJBOzs7Ozs7aUZqRysyaUJpRjtBbUIzMmlCakY7RThFT0ksZ0JBQWdCO0FqR3UyaUJwQjs7QW1COTJpQkE7O0U4RVlRLHNCQUFzQjtBakd1MmlCOUI7O0FpRzcyaUJBO0VBU1EsZ0JaeVF3QjtBckYrbGlCaEM7O0FtQnYzaUJBO0U4RW9CUSxzQkFBc0I7RUFDdEIsZ0Nab1cwRDtBckZtZ2lCbEU7O0FpR3QzaUJBO0VBb0JRLHlCWitWMEQ7QXJGdWdpQmxFOztBaUcxM2lCQTs7Ozs7O0VBOEJnQixtQkFBbUI7QWpHcTJpQm5DOztBaUduNGlCQTs7O0UxRUpNLDhDK0R1RHlDO0F0RnMxaUIvQzs7QXVCeDRpQkk7RTBFREo7OztJMUVFTSxnQkFBZ0I7RXZCODRpQnBCO0FBQ0Y7O0FvQnQ1aUJFOzs7RUFJSSx5QkNzRjREO0FyQmswaUJsRTs7QVFyNWlCRTtFWWlCTSx5QkFKc0M7QXBCNDRpQjlDOztBb0I3NGlCRTs7RUFTUSx5QkFSb0M7QXBCaTVpQjlDOztBb0JyNmlCRTs7O0VBSUkseUJDc0Y0RDtBckJpMWlCbEU7O0FRcDZpQkU7RVlpQk0seUJBSnNDO0FwQjI1aUI5Qzs7QW9CNTVpQkU7O0VBU1EseUJBUm9DO0FwQmc2aUI5Qzs7QW9CcDdpQkU7OztFQUlJLHlCQ3NGNEQ7QXJCZzJpQmxFOztBUW43aUJFO0VZaUJNLHlCQUpzQztBcEIwNmlCOUM7O0FvQjM2aUJFOztFQVNRLHlCQVJvQztBcEIrNmlCOUM7O0FvQm44aUJFOzs7RUFJSSx5QkNzRjREO0FyQisyaUJsRTs7QVFsOGlCRTtFWWlCTSx5QkFKc0M7QXBCeTdpQjlDOztBb0IxN2lCRTs7RUFTUSx5QkFSb0M7QXBCODdpQjlDOztBb0JsOWlCRTs7O0VBSUkseUJDc0Y0RDtBckI4M2lCbEU7O0FRajlpQkU7RVlpQk0seUJBSnNDO0FwQnc4aUI5Qzs7QW9CejhpQkU7O0VBU1EseUJBUm9DO0FwQjY4aUI5Qzs7QW9CaitpQkU7OztFQUlJLHlCQ3NGNEQ7QXJCNjRpQmxFOztBUWgraUJFO0VZaUJNLHlCQUpzQztBcEJ1OWlCOUM7O0FvQng5aUJFOztFQVNRLHlCQVJvQztBcEI0OWlCOUM7O0FvQmgvaUJFOzs7RUFJSSx5QkNzRjREO0FyQjQ1aUJsRTs7QVEvK2lCRTtFWWlCTSx5QkFKc0M7QXBCcytpQjlDOztBb0J2K2lCRTs7RUFTUSx5QkFSb0M7QXBCMitpQjlDOztBb0IvL2lCRTs7O0VBSUkseUJDc0Y0RDtBckIyNmlCbEU7O0FROS9pQkU7RVlpQk0seUJBSnNDO0FwQnEvaUI5Qzs7QW9CdC9pQkU7O0VBU1EseUJBUm9DO0FwQjAvaUI5Qzs7QWlHeDlpQkE7O0VBSVksc0NaOUNNO0FyRnVnakJsQjs7QWlCLzhpQkk7RUVpR0M7SThFN0ZlLHNCWnhERjtFckZ3Z2pCaEI7QUFDRjs7QWlCcjlpQkk7RUVpR0M7SThFN0ZlLHNCWnhERjtFckY4Z2pCaEI7QUFDRjs7QWlCMzlpQkk7RUVpR0M7SThFN0ZlLHNCWnhERjtFckZvaGpCaEI7QUFDRjs7QWlCaitpQkk7RUVpR0M7SThFN0ZlLHNCWnhERjtFckYwaGpCaEI7QUFDRjs7QW1CMzRpQkE7RThFeEZvQixzQlp4REY7QXJGK2hqQmxCOztBaUcxOWlCQTtFQUNJLG1CWmdScUM7RVkvUXJDLGNBQWM7QWpHNjlpQmxCOztBaUd6OWlCQTs7OztFQUtZLFNBQVM7RUFDVCwyQlpqRk07QXJGNGlqQmxCOztBaUdqK2lCQTs7OztFQVNnQixjQUFjO0FqRys5aUI5Qjs7QWlHeCtpQkE7O0VBaUJZLDJCWjVGTTtBckZ3ampCbEI7O0FpRzcraUJBOztFQW9CZ0IsY0FBYztBakc4OWlCOUI7O0FpR3Y5aUJBOztFQUdRLFNBQVM7QWpHeTlpQmpCOztBaUcvOGlCQTs7RUFHUSx3QjNGb3JCbUM7QU42eGhCM0M7O0FpRzU4aUJBOztFQUdRLHFCM0Y0cUJtQztBTmt5aEIzQzs7QWlHejhpQkE7O0VBR1EsdUIzRm9xQm1DO0FOdXloQjNDOztBaUdoOGlCSTs7RUFHUSx3QkFBOEM7QWpHazhpQjFEOztBaUc5N2lCSTs7OztFQUlRLHFCQUEyQztBakdpOGlCdkQ7O0FpRzE3aUJJOztFQUdRLHdCQUE4QztFQUM5QywyQkFBMkI7QWpHNDdpQnZDOztBaUd6N2lCUTs7RUFHUSx3QkFBOEM7RUFDOUMsMkJBQTJCO0FqRzI3aUIzQzs7QWlHdDdpQkk7Ozs7RUFJUSxxQkFBMkM7RUFDM0Msd0JBQXdCO0FqR3k3aUJwQzs7QWlHbjdpQkE7O0VBR1Esd0JBQXdCO0FqR3E3aUJoQzs7QWlHaDdpQkE7O0VBS2dCLDRCQUE0QjtBakdnN2lCNUM7O0FpR3I3aUJBOzs7O0VBZ0JnQix5QkFBeUI7QWpHNDZpQnpDOztBaUdoNmlCQTs7Ozs7Ozs7Ozs7O0VBU29CLG1CQUFtQjtBakdzNmlCdkM7O0FpRzk1aUJBO0VBRVEsaUJadkN1QjtFWXdDdkIsa0JadFBVO0FyRnNwakJsQjs7QWlHMzVpQkE7O0VBTVkscUJaaW9CeUI7RVlob0J6QixzQlpnb0J5QjtBckYweGhCckM7O0FpR2o2aUJBOztFcEZsUUksZ0N3RTY0QjRFO0V4RTU0QjVFLGlDd0U0NEI0RTtBckY0eGhCaEY7O0FpR3Y2aUJBOzs7O0VBbUJnQixnQ1p3bkJnRTtFWXZuQmhFLGlDWnVuQmdFO0FyRm95aEJoRjs7QWlHLzZpQkE7Ozs7Ozs7O0VBd0JvQixnQ1ptbkI0RDtBckYreWhCaEY7O0FpRzE3aUJBOzs7Ozs7OztFQTRCb0IsaUNaK21CNEQ7QXJGMHpoQmhGOztBaUdyOGlCQTs7RXBGcFBJLG9Dd0UrM0I0RTtFeEU5M0I1RSxtQ3dFODNCNEU7QXJGZzBoQmhGOztBaUczOGlCQTs7OztFQXlDZ0IsbUNaa21CZ0U7RVlqbUJoRSxvQ1ppbUJnRTtBckZ3MGhCaEY7O0FpR245aUJBOzs7Ozs7OztFQThDb0IsbUNaNmxCNEQ7QXJGbTFoQmhGOztBaUc5OWlCQTs7Ozs7Ozs7RUFrRG9CLG9DWnlsQjREO0FyRjgxaEJoRjs7QWlHeitpQkE7O0VBMkRRLFNBQVM7QWpHbTdpQmpCOztBaUc5K2lCQTs7Ozs7Ozs7Ozs7O0VBa0VnQixjQUFjO0FqRzI3aUI5Qjs7QWlHNy9pQkE7Ozs7Ozs7Ozs7OztFQXNFZ0IsZUFBZTtBakdzOGlCL0I7O0FpRy83aUJBOzs7Ozs7OztFQVFJLDBCWmhWYztBckZreGpCbEI7O0FpRzk3aUJBOzs7O0VBSUksYUFBYTtBakdpOGlCakI7O0FpRzc3aUJBOztFQUdRLDBCWi9WVTtBckY4eGpCbEI7O0FrR256akJBOzs7Ozs7aUZsRzJ6akJpRjtBS2g2aUJqRjtFNkY1WUkscUJBQTBCO0VBQzFCLHdCQUE2QjtFQUM3QixzQmJpSGU7RWFoSGYsNkJiR2M7RWFGZCxvQmJnUWtDO0FyRitpakJ0Qzs7QWtHNXlqQkk7RUFFUSxjQUFjO0FsRzh5akIxQjs7QWtHeHlqQkE7O0VBRUksYUFBYTtFQUNiLGlCYmdYb0M7QXJGMjdpQnhDOztBa0c5eWpCQTs7RUFPUSxvQmJvcEJnQztFeEVwckJwQyx3QndFa09pQztBckYybWpCckM7O0FrR3B6akJBOztFQVdZLGViaXBCMkI7QXJGNnBpQnZDOztBc0JqMWpCQTtFNEUwQ0ksMkJBQTJCO0FsRzJ5akIvQjs7QWtHNXlqQkE7RUFLUSxXYjdCVTtBckZ3MGpCbEI7O0FrR2h6akJBO0VBY1kseUJiMmRvRDtFYTFkcEQsK0JiN0NNO0VhOENOLHFCYnlkb0Q7QXJGNjBpQmhFOztBa0d0empCQTtFQXFCWSxXYm5ETTtBckZ3MWpCbEI7O0FrRzF6akJBO0VBcUJZLFdibkRNO0FyRncxakJsQjs7QWtHMXpqQkE7RUFxQlksV2JuRE07QXJGdzFqQmxCOztBa0cxempCQTtFQXFCWSxXYm5ETTtBckZ3MWpCbEI7O0FrRzF6akJBO0VBcUJZLFdibkRNO0FyRncxakJsQjs7QWtHL3hqQkE7RUFJUSxnQkFBZ0I7QWxHK3hqQnhCOztBaUJweWpCSTtFaUZDSjtJQVVZLG1CYjhDTztFckZndmpCakI7QUFDRjs7QWlCMXlqQkk7RWlGQ0o7SUFlWSxtQmJ5Q087RXJGc3ZqQmpCO0FBQ0Y7O0FpQmh6akJJO0VpRkNKO0lBb0JZLG1CYm9DTztFckY0dmpCakI7QUFDRjs7QWlCdHpqQkk7RWpCeXpqQkY7SWtHMXhqQlUsY0FBYztFbEc0eGpCeEI7QUFDRjs7QWlCNXpqQkk7RWpCK3pqQkY7SWtHM3hqQlUsY0FBYztFbEc2eGpCeEI7QUFDRjs7QWlCbDBqQkk7RWpCcTBqQkY7SWtHNXhqQlUsY0FBYztFbEc4eGpCeEI7QUFDRjs7QWtHcHhqQkE7RUFJUSxxQmJvYW9DO0FyRmczaUI1Qzs7QWtHeHhqQkE7RUFRWSxnQkFBZ0I7QWxHb3hqQjVCOztBa0cvd2pCSTtFQUNJLGtCQUE4RDtBbEdreGpCdEU7O0FrR2h5akJBO0VBbUJRLFdiekhVO0FyRjA0akJsQjs7QWtHcHlqQkE7RUFzQlksZVo3Q3FDO0F0Rit6akJqRDs7QWtHNXdqQkE7RUFFUSxlWnJEeUM7QXRGbTBqQmpEOztBc0J4c2pCQTtFNEVoRUksZUFBZTtBbEc0d2pCbkI7O0FrR3h3akJBO0VBSVEsb0JBQW9CO0VBQ3BCLHVCQUF1QjtBbEd3d2pCL0I7O0FzQjdzakJBO0U0RXREUSxrQmJnWG9DO0FyRnU1aUI1Qzs7QWtHanhqQkE7RUFlUSxlQUFlO0FsR3N3akJ2Qjs7QWtHcnhqQkE7RUFvQlEsZ0JBQWdCO0FsR3F3akJ4Qjs7QWtHaHdqQkE7RUFDSSxlQUFlO0VBQ2YsdUJiOFZnRTtBckZxNmlCcEU7O0FrR3J3akJBOztFQU9RLFVBQVU7RUFDVixRQUFRO0FsR213akJoQjs7QWtHM3dqQkE7RUFhUSxVQUFVO0FsR2t3akJsQjs7QWtHL3dqQkE7RUFpQlksZUFBZTtFQUNmLHFCYm1Wa0M7QXJGKzZpQjlDOztBa0d2dmpCQTtFQUNJLGtCQUFrQjtBbEcwdmpCdEI7O0FrR3Z2akJLO0VBSU8sT0FBTztBbEd1dmpCbkI7O0FrRzN2akJLO0VBU08scUJBQXVFO0FsR3N2akJuRjs7QWtHL3ZqQks7RUFhVyxrQkFBNkU7QWxHc3ZqQjdGOztBa0dud2pCSztFQWdCVyxvQkFBNkU7QWxHdXZqQjdGOztBa0dqdmpCSztFQUlPLFFBQVE7QWxHaXZqQnBCOztBa0dydmpCSztFQVNPLHNCQUF3RTtBbEdndmpCcEY7O0FrR3p2akJLO0VBYVcsbUJBQThFO0FsR2d2akI5Rjs7QWtHN3ZqQks7RUFnQlcscUJBQThFO0FsR2l2akI5Rjs7QWtHMXVqQkE7RUFDSSxrQkFBa0I7RUFDbEIsTUFBTTtFQUNOLFdiclBjO0Vhc1BkLHNCYmlJb0M7RWFoSXBDLHVCYmdJb0M7RWEvSHBDLHVCYndQc0Y7RWF2UHRGLGVaMU4wQztBdEZ1OGpCOUM7O0FrRzF1akJJO0VBQ0ksa0Jic0k0QjtFYXJJNUIsbUJicUk0QjtFYXBJNUIsdUJidVBxRjtBckZzL2lCN0Y7O0FrR3p1akJJO0VBQ0kscUJiMkgrQjtFYTFIL0Isc0JiMEgrQjtFYXpIL0IsdUJiNk9xRjtBckYrL2lCN0Y7O0FrR3h1akJJO0VBQ0ksV2JwUlU7QXJGKy9qQmxCOztBbUdoaGtCQTs7Ozs7O2lGbkd3aGtCaUY7QTBCbGhrQmpGO0V5RUlJLGtCQUFrQjtBbkdpaGtCdEI7O0FtR2xoa0JBOztFQWFZLG9EZGdjOEQ7QXJGMGtqQjFFOztBbUd2aGtCQTtFQW1CWSxnQkFBZ0I7QW5Hd2drQjVCOztBMEI5aGtCQTtFeUU2QlEsZWJtRXlDO0F0Rms4akJqRDs7QTBCMytqQkU7RXlFcEJFLFdkZmM7RWNnQmQseUJkeEJpQjtFY3lCakIsa0JkdEJjO0FyRnloa0JsQjs7QW1HdGdrQkE7O0VBWVEsV2QxQlU7RWMyQlYseUJkbENhO0VjbUNiLGtCZGpDVTtBckZnaWtCbEI7O0EyQnRoa0JFO0V3RTZCTSx5QmQxQ2E7RWMyQ2Isa0JkeENVO0FyRnFpa0JsQjs7QW1Hbi9qQkE7RUFJUSx3Q0FBdUM7QW5HbS9qQi9DOztBbUd2L2pCQTs7RUFhWSxzQkFBdUI7QW5HKytqQm5DOztBbUc1L2pCQTs7RUF1Qlksc0JBQTRCO0FuRzArakJ4Qzs7QW1HaitqQkk7RUFDSSxjZGdFMkM7QXJGbzZqQm5EOztBbUcvOWpCQTtFQUNJLHdCQUE4RTtFQUM5RSx5QkFBK0U7QW5HaytqQm5GOztBbUdwK2pCQTs7RUFPUSxjQUFjO0FuR2srakJ0Qjs7QW1HeitqQkE7RUFZUSx3QkFBaUY7RUFDakYseUJBQWtGO0FuR2krakIxRjs7QW1HOStqQkE7RUFnQlEsd0JBQWlGO0VBQ2pGLHlCQUFrRjtBbkdrK2pCMUY7O0FtRzc5akJBO0VBQ0ksYWRvVW1DO0V4RW5jbkMsd0J3RWtPaUM7QXJGODNqQnJDOztBbUdsK2pCQTtFQU1RLGVBQW9DO0FuR2crakI1Qzs7QW1HdCtqQkE7RUFXUSxjQUFjO0VBQ2QsTUFBTTtBbkcrOWpCZDs7QW1HMytqQkE7RUFpQlEsY0FBYztFQUNkLHFCQUEwQjtFQUMxQiwwQkFBb0M7RUFDcEMsZ0JBQWdCO0VBQ2hCLHVCQUF1QjtBbkc4OWpCL0I7O0FtR3o5akJBO0VBRVEscUJBQXVEO0VBQ3ZELHdCQUEwRDtBbkcyOWpCbEU7O0FtRzk5akJBO0VBT1ksbUJBQTBEO0VBQzFELHNCQUE2RDtBbkcyOWpCekU7O0FtR24rakJBO0VBV1ksb0JBQTBEO0VBQzFELHVCQUE2RDtBbkc0OWpCekU7O0FtR3grakJBO0VBaUJZLHdCQUF3RztFQUN4Ryx5QkFBeUc7QW5HMjlqQnJIOztBbUc3K2pCQTtFQXNCZ0Isd0JBQTJHO0VBQzNHLHlCQUE0RztBbkcyOWpCNUg7O0FtR2wvakJBO0VBMEJnQix3QkFBMkc7RUFDM0cseUJBQTRHO0FuRzQ5akI1SDs7QW1Hdi9qQkE7RUFpQ1ksa0JBQXVEO0FuRzA5akJuRTs7QW1HLzhqQkE7RUFJUSxrQkFBa0I7RUFDbEIsU2RxQnVCO0VjcEJ2QixxQ2RwTFU7RWNxTFYsY0FBYztFQUNkLGNBQWM7RUFDZCxtQkFBaUc7QW5HKzhqQnpHOztBbUd4OWpCQTtFQWFZLE1BQU07QW5HKzhqQmxCOztBbUc1OWpCQTtFdEZwTUksb0J3RXFPNkI7QXJGKzdqQmpDOztBbUdoK2pCQTtFQTBCUSxtQkFBb0c7QW5HMDhqQjVHOztBbUdwK2pCQTtFQTZCUSxtQkFBb0c7QW5HMjhqQjVHOztBbUd0OGpCQTtFQUNJLHdCQUFpSjtBbkd5OGpCcko7O0FtRzE4akJBO0VBS1EsVWRidUI7RXhFaE0zQixpQ3dFb01pQztFeEVuTWpDLG9Dd0VtTWlDO0FyRm85akJyQzs7QW1HaDlqQkE7RUFXUSx3QkFBMEo7QW5HeThqQmxLOztBbUdwOWpCQTtFdEZ4TUksK0J3RXFNK0I7RXhFcE0vQixrQ3dFb00rQjtBckY0OWpCbkM7O0FtR3o5akJBO0VBa0JRLHdCQUF1SjtBbkcyOGpCL0o7O0FtRzc5akJBO0V0RnhNSSxnQ3dFc01nQztFeEVyTWhDLG1Dd0VxTWdDO0FyRm8rakJwQzs7QW1HdjhqQkE7RUFDSSx5QkFBa0o7QW5HMDhqQnRKOztBbUczOGpCQTtFQUtRLFdkeEN1QjtFeEU5TTNCLGtDd0VrTmlDO0V4RWpOakMscUN3RWlOaUM7QXJGZy9qQnJDOztBb0d2dGtCQTs7Ozs7O2lGcEcrdGtCaUY7QTZCcm1rQmpGO0V1RTNHSSxhQUFhO0VBQ2IsbUJBQW1CO0VBQ25CLGtCQUFrQjtFQUNsQixVQUFVO0VBQ1YsZ0JBQWdCO0VBQ2hCLHVCQUF1QjtFQUN2QixlQUFlO0VBQ2YsZ0JBQWdCO0U3RWhCZCx1RStEdUR5QztBdEY2cWtCL0M7O0F1Qi90a0JJO0VNK0dKO0lOOUdNLGdCQUFnQjtFdkJtdWtCcEI7QUFDRjs7QW9HbHVrQkE7OztFQWVRLGVmNnBCK0I7QXJGNGpqQnZDOztBb0d4dWtCQTtFQXFCUSxXZlRVO0U1RHBCZCx5QjREYWlCO0FyRnd1a0JyQjs7QW9HN3VrQkE7RUF5QlEsV2Z0QlU7RTVEWGQseUIyRFV1QjtBcEZndmtCM0I7O0FvR2x2a0JBO0VBa0NnQixpQ0FBa0M7RUFDbEMsc0JBQTRCO0FwR290a0I1Qzs7QW9HdnZrQkE7RUF3Q2dCLGlDQUFrQztFQUNsQyw2QkFBOEI7QXBHbXRrQjlDOztBb0c1dmtCQTtFQThDZ0IsNkJBQThCO0FwR2t0a0I5Qzs7QTZCcHBrQkE7RXVFdERRLFdmN0NVO0VlOENWLDZCQUE2QjtFQUM3QixlZGdDeUM7QXRGOHFrQmpEOztBb0d0d2tCQTs7O0VBNkRZLFlBQVk7QXBHK3NrQnhCOztBb0d6c2tCQTtFQUNJLHlCZi9EaUI7RWVnRWpCLFdmekRjO0FyRnF3a0JsQjs7QTZCL21rQkE7RXVFeEZJLGFBQWE7RUFDYixtQkFBbUI7RUFDbkIsbUJBQXFDO0VBQ3JDLHNCQUF3QztFQUN4QyxtQmZ3TStCO0FyRm1na0JuQzs7QW9HeHNrQkk7RUFDSSxhQUFhO0VBQ2IseUJmOGxCbUM7QXJGNm1qQjNDOztBb0d4c2tCUTs7RUFFSSxrQmZna0I4QjtBckYyb2pCMUM7O0FvR2x0a0JLO0VBWU8sYUFBYTtBcEcwc2tCekI7O0FvR3Bza0JBOzs7O0VBTVEsa0Jma2tCZ0M7QXJGbW9qQnhDOztBb0czc2tCQTs7RUFXUSxNQUFNO0FwR3Fza0JkOztBb0dodGtCQTs7RUFnQlEsc0JmdUt3RDtBckY4aGtCaEU7O0E2Qm50a0JBO0V1RW9CSSxnQkFBa0M7QXBHbXNrQnRDOztBb0cvcmtCQTtFQUVRLFVBQVU7RUFDVixnQkFBZ0I7QXBHaXNrQnhCOztBb0dwc2tCQTtFQU9ZLE9BQU87RUFDUCxvQmZzaUI0QjtBckYycGpCeEM7O0FvR3pza0JBO0VBY2dCLGtCZmdpQndCO0FyRitwakJ4Qzs7QW9HeHJrQkE7RUFDSSxpQmZrZ0JxQztFZWpnQnJDLGdCQUFnQjtBcEcycmtCcEI7O0FvR25ya0JBO0VBRVEsa0JBQWtCO0FwR3Fya0IxQjs7QW9HdnJrQkE7RUFNWSxxQkFBbUU7QXBHcXJrQi9FOztBb0czcmtCQTtFQVdvQixnQkFBZ0I7RUFLcEIsc0JkbEltQztFY21JbkMsa0JBQWtCO0VBQ2xCLFFBQVE7RUFDUixtQkFBaUM7RUFDakMsV2YyZndCO0VlMWZ4QixlZHRJOEI7RWN1STlCLGNBQWM7RWpCbEwxQixtQ0FBbUM7RUFDbkMsa0NBQWtDO0FuRm0ya0J0Qzs7QW9HeHNrQkE7RUErQmdCLHlCZnRMSztFZXVMTCxXZmhMRTtBckY2MWtCbEI7O0FvRzdza0JBOztFQXVDWSxjQUFjO0FwRzJxa0IxQjs7QW9HbHRrQkE7RUE2Q2dCLGFBQWE7QXBHeXFrQjdCOztBb0d0dGtCQTtFQWlEZ0IsNkJBQTZCO0VBQzdCLFdmck1FO0Vlc01GLGVkdkhpQztBdEZneWtCakQ7O0FvRzV0a0JBO0VBeURZLE1BQU07RUFDTixVQUFVO0VBQ1Ysc0JBQW9FO0FwR3Vxa0JoRjs7QW9HbHVrQkE7RUFnRVksVUFBVTtFQUNWLFdBQVc7QXBHc3FrQnZCOztBaUJ4MGtCSTtFbUZpR0o7SUF5RWdCLGdCQUFnQjtFcEdtcWtCOUI7RW9HNXVrQkY7SUFnRm9CLGdCQUFnQjtJQUNoQixvQkFBbUI7SUFDbkIsZUFBZTtJQUNmLGdCQUFnQjtJdkZ4UGhDLGdCdUZ5UHdDO0VwRytwa0IxQztFb0dudmtCRjs7SUEyRmdCLGtCQUE0QztFcEc0cGtCMUQ7RW9HdnZrQkY7O0lBaUdnQixrQkFBNEM7RXBHMHBrQjFEO0FBQ0Y7O0FvRzV2a0JBO0VBd0dRLFNBQVM7RUFDVCxTQUFTO0VBQ1QsYUFBYTtFQUNiLHlCQUF1RTtBcEd3cGtCL0U7O0FvR253a0JBO0VBZ0hRLGVmZ2ErQjtBckZ1dmpCdkM7O0E4QnA1a0JJO0VzRW9TUSxzQkFBc0I7QXBHb25rQmxDOztBOEJyNGtCTTtFc0UwUk0sc0JBQXNCO0FwRytta0JsQzs7QW9HbG5rQkE7RUFTUSxhQUFhO0FwRzZta0JyQjs7QW9Hbm1rQkE7RUFFUSxzQmZnRWlDO0VlL0RqQyx5QmYrRGlDO0VlOURqQyxtQmYxRWtEO0VlMkVsRCxtQmY1RDJCO0FyRmlxa0JuQzs7QW9HaG1rQkE7RUFFUSxzQmZrRGlDO0VlakRqQyx5QmZpRGlDO0VlaERqQyxrQmZuRmtEO0Vlb0ZsRCxtQmZyRTJCO0FyRnVxa0JuQzs7QW9HemxrQkE7O0VBS1EsV2Z0V1U7QXJGKzdrQmxCOztBUWg4a0JFOzs7RTRGMldVLG9DZmhXTTtBckYyN2tCbEI7O0FvR3Bta0JBOztFQWNZLG9DZnJXTTtBckZnOGtCbEI7O0FvR3pta0JBOztFQW1CWSw2QkFBNkI7RUFDN0IsK0JmclhNO0FyRmc5a0JsQjs7QW9HL21rQkE7RUE2QmdCLG9DZnBYRTtFZXFYRixXZi9YRTtBckZxOWtCbEI7O0FvR3Bua0JBO0VBcUNnQiw2QkFBNkI7RUFDN0IsK0JmdllFO0FyRjA5a0JsQjs7QW9Hem5rQkE7RUE2Q1EsK0JmOVlVO0FyRjg5a0JsQjs7QW9HN25rQkE7RUFnRFksb0NmdllNO0FyRnc5a0JsQjs7QW9Ham9rQkE7RUFzRFEsMENmdlpVO0FyRnMra0JsQjs7QXFHdi9rQkE7Ozs7OztpRnJHKy9rQmlGO0FxR3Qva0JqRjs7Ozs7O0VBT1EsaUJBQW9DO0FyR3Uva0I1Qzs7QXFHOS9rQkE7Ozs7OztFQWNRLGlCQUFvQztBckd5L2tCNUM7O0FxR3Ava0JBO0VBQ0ksYUFBYTtBckd1L2tCakI7O0FxR3gva0JBOztFQU1RLE9BQU87QXJHdS9rQmY7O0FzR3pobEJBOzs7Ozs7aUZ0R2lpbEJpRjtBc0d2aGxCakY7RUFJUSxrQkFBa0I7RUFDbEIsY0FBYztFQUNkLFNBQVM7RUFDVCxVQUFVO0F0R3NobEJsQjs7QXNHN2hsQkE7RXpGV0ksMEJ5RkMwQztFekZBMUMsNkJ5RkEwQztBdEdzaGxCOUM7O0FzR2xpbEJBO0V6RnlCSSx5QnlGUnlDO0V6RlN6Qyw0QnlGVHlDO0F0R3NobEI3Qzs7QXNHdmlsQkE7O0VBeUJRLFVBQVU7QXRHbWhsQmxCOztBc0c5Z2xCQTtFQUlRLGNBQWM7RUFDZCxNQUFNO0F0RzhnbEJkOztBdUczamxCQTs7Ozs7O2lGdkdta2xCaUY7QWtDMWpsQmpGO0VxRU1JLHNCbEJ5UjREO0VrQnhSNUQscUJsQnFoQndDO0FyRmtpa0I1Qzs7QXVHempsQkE7RUFNUSxnQkFBZ0I7QXZHdWpsQnhCOztBa0MzamxCQTtFcUVVSSxnQkFBZ0I7QXZHcWpsQnBCOztBdUd0amxCQTtFQUtRLGVBQWU7QXZHcWpsQnZCOztBdUdoamxCQTtFaEY3Qk0saUMrRHVEeUM7QXRGMGhsQi9DOztBdUI1a2xCSTtFZ0Z3Qko7SWhGdkJNLGdCQUFnQjtFdkJnbGxCcEI7QUFDRjs7QXVHMWpsQkE7RUFVWSxlakJ5RHFDO0F0RjIva0JqRDs7QWtDeGhsQkE7RXFFckJJLGVBQWU7QXZHaWpsQm5COztBa0M1aGxCQTtFcUVqQlEsZUFBbUU7QXZHaWpsQjNFOztBa0NoaWxCQTtFcUVaUSxlQUFtRTtBdkdnamxCM0U7O0F1RzNpbEJBO0VBQ0ksZUFBZTtFQUNmLHVCbEJ3ZmtGO0FyRnNqa0J0Rjs7QXVHaGpsQkE7RUFNUSxRQUFRO0F2RzhpbEJoQjs7QXVHcGpsQkE7RUFhWSxVQUFVO0VBQ1YsUUFBUTtBdkcyaWxCcEI7O0FrQ2o2a0JBO0VxRS9ISSxlQUFlO0VoRnJGYixpQytEdUR5QztBdEZta2xCL0M7O0F1QnJubEJJO0VXK01KO0lYOU1NLGdCQUFnQjtFdkJ5bmxCcEI7QUFDRjs7QVF0bmxCRTtFZ0dBSSxtRGxCdUIwRTtBdEZtbWxCaEY7O0FrQ2g3a0JBO0VxRXJIUSxlakJDeUM7QXRGd2lsQmpEOztBUTlubEJFO0VnR0FJLGdCRHlGOEI7QXZHeWlsQnBDOztBa0NoMGtCQTtFcUU5TkksZ0JBQWdCO0F2R2tpbEJwQjs7QXlHdHBsQkE7Ozs7OztpRnpHOHBsQmlGO0FtQ2pwbEJqRjtFc0VDSSxrQkFBa0I7RWxGUmhCLGlDK0R1RHlDO0F0RnFtbEIvQzs7QXVCdnBsQkk7RVlFSjtJWkRNLGdCQUFnQjtFdkIycGxCcEI7QUFDRjs7QW1DM3BsQkE7RXNFTVEsZW5CbUZ5QztBdEZza2xCakQ7O0FtQzNvbEJBO0VzRUpJLHNCcEJxR2U7QXJGOGlsQm5COztBbUMvb2xCQTtFc0VBUSx5QkFBeUI7RUFDekIsMEJBQTBCO0VBQzFCLFdwQm10QnFDO0FyRmc4akI3Qzs7QVF0cWxCRTtFaUd1QlUsV3BCYk07QXJGZ3FsQmxCOztBbUN6cGxCQTtFc0VXWSxXcEJyQk07QXJGdXFsQmxCOztBeUdscWxCQTtFQXNCUSx5QkFBeUI7RUFDekIsNkJBQTZCO0F6R2dwbEJyQzs7QXlHdnFsQkE7RUE0QlEsc0JwQm5DVTtBckZrcmxCbEI7O0F5R3pvbEJBO0VBQ0ksZ0JBQWdCO0VBQ2hCLCtCQUFzRTtBekc0b2xCMUU7O0F5R25vbEJBOzs7RUFJUSxrQkFBa0I7QXpHcW9sQjFCOztBeUd6b2xCQTs7O0VBUVksV0FBVztFQUNYLGtCQUFrQjtFQUNsQixNQUFNO0VBQ04sT0FBTztFQUNQLFFBQVE7RWxGL0VkLDhDK0R1RHlDO0F0RmdxbEIvQzs7QXVCbHRsQkk7RWtGOERKOzs7SWxGN0RNLGdCQUFnQjtFdkJ3dGxCcEI7QUFDRjs7QXlHem9sQkE7RUFJUSw2QkFBNkI7RTVGbEZqQyx5QjRGbUZnQztFNUZsRmhDLDBCNEZrRmdDO0F6RzBvbEJwQzs7QXlHL29sQkE7RUFTWSxXcEJvcEJnQztFb0JucEJoQyxTcEI2SG1CO0VvQjVIbkIsVXBCNEhtQjtFb0IzSG5CLFdwQjJIbUI7QXJGK2dsQi9COztBeUd0cGxCQTtFQW1CWSx5QnJCL0ZlO0FwRnN1bEIzQjs7QXlHam9sQkE7RUFJUSxnQkFBZ0I7QXpHaW9sQnhCOztBeUdyb2xCQTtFQVNRLGVBQWU7RTVGaEhuQix5QjRGaUhnQztFNUZoSGhDLDBCNEZnSGdDO0F6R2lvbEJwQzs7QXlHM29sQkE7RUFlZ0Isc0JwQi9HRTtBckYrdWxCbEI7O0F5Ry9vbEJBO0VBcUJZLFdwQmtuQmdDO0FyRjRna0I1Qzs7QXlHbnBsQkE7RUEyQmdCLGFBQWE7QXpHNG5sQjdCOztBeUd2cGxCQTtFQW1DWSxzQnBCbklNO0FyRjJ2bEJsQjs7QXlHM3BsQkE7RUEwQ1kseUJyQnZGWTtBcEY0c2xCeEI7O0F5Ry9wbEJBOztFQStDUSw2QkFBNkI7QXpHcW5sQnJDOztBeUdwcWxCQTtFQW9EUSxhQUFhO0F6R29ubEJyQjs7QXlHeHFsQkE7RUEwRFksZ0JwQm9EbUI7QXJGOGpsQi9COztBeUc1bWxCQTtFQUlRLGdCQUFnQjtBekc0bWxCeEI7O0F5R2hubEJBO0VBU1EsZUFBZTtBekcybWxCdkI7O0F5R3BubEJBO0VBYVksV3BCNmpCZ0M7RW9CNWpCaEMsU0FBUztFQUNULFlwQitCbUI7QXJGNGtsQi9COztBeUcxbmxCQTtFQXNCWSx5QnJCbklZO0FwRjJ1bEJ4Qjs7QXlHOW5sQkE7O0VBMkJRLDZCQUE2QjtBekd3bWxCckM7O0F5R25vbEJBO0VBZ0NRLGFBQWE7QXpHdW1sQnJCOztBeUdsbWxCQTtFQUNJLHlCcEJ4TWlCO0VvQnlNakIsc0JwQnZNYztBckY0eWxCbEI7O0F5R3ZtbEJBO0VBTVEsZ0JBQWdCO0F6R3FtbEJ4Qjs7QXlHM21sQkE7RUFXUSxlQUFlO0F6R29tbEJ2Qjs7QXlHL21sQkE7RUFnQlEsNkJBQTZCO0F6R21tbEJyQzs7QXlHbm5sQkE7O0VBc0JRLFdwQi9OVTtFb0JnT1YseUJyQmpPbUI7QXBGbTBsQjNCOztBeUd6bmxCQTtFQTZCWSwrQnBCdE9NO0FyRnMwbEJsQjs7QVF2MGxCRTtFaUcwT2MsV3BCek9FO0FyRjAwbEJsQjs7QXlHam9sQkE7RUFvQ2dCLCtCcEI3T0U7QXJGODBsQmxCOztBeUdyb2xCQTtFQXlDWSxXcEJsUE07QXJGazFsQmxCOztBeUd6b2xCQTs7RUE4Q1ksV3BCdlBNO0VvQndQTixvQ3BCOU9NO0FyRjgwbEJsQjs7QXlHL29sQkE7RUFtRFksMENwQjVQTTtBckY0MWxCbEI7O0F5RzFsbEJBO0VBSVEsMkJBQTJCO0F6RzBsbEJuQzs7QXlHOWxsQkE7RUFXWSxzREFBd0U7QXpHdWxsQnBGOztBeUdsbWxCQTtFQWdCWSxXQUFXO0VBQ1gsa0JBQWtCO0VBQ2xCLFNwQmxFbUI7RW9CbUVuQixZcEJuRW1CO0VvQm9FbkIsVXBCcEVtQjtFb0JxRW5CLFVwQmlkZ0M7RTlEbnZCdEMsOEMrRHVEeUM7QXRGazBsQi9DOztBdUJwM2xCSTtFa0Z3UUo7SWxGdlFNLGdCQUFnQjtFdkJ3M2xCcEI7QUFDRjs7QXlHbG5sQkE7RUE0QlEsd0JwQjFSVTtFb0IyUlYsZ0NBQWdDO0F6RzBsbEJ4Qzs7QXlHdGxsQks7RUFNVyxzRHBCclNFO0FyRnkzbEJsQjs7QXlHMWxsQks7RUFXVyxVQUFVO0VBQ1YsV3BCN0ZlO0FyRmdybEIvQjs7QXlHL2xsQks7RUFrQk8sK0JBQStCO0VBQy9CLHVCcEJsVE07QXJGbTRsQmxCOztBeUdyb2xCQTtFQTJEWSx5QnJCOVRlO0FwRjQ0bEIzQjs7QXlHem9sQkE7O0VBZ0VRLDZCQUE2QjtFQUM3Qiw4QkFBZ0Q7QXpHOGtsQnhEOztBeUdwa2xCQTtFQUNJLHNCcEI3TmU7QXJGb3lsQm5COztBbUMzMWxCQTtFc0V3UlEsV3BCM1VVO0FyRms1bEJsQjs7QVExNWxCRTtFaUd3VmMsV3BCOVVFO0FyRm81bEJsQjs7QXlHaGxsQkE7RUFtQm9CLHNCcEJoV0Y7RW9CaVdFLFdwQnhWRjtFOURwQlosaUMrRHVEeUM7QXRGdTNsQi9DOztBdUJ6NmxCSTtFa0ZtVko7SWxGbFZNLGdCQUFnQjtFdkI2NmxCcEI7QUFDRjs7QVFuNmxCRTtFaUdvV2MsV3BCcFdFO0FyRnU2bEJsQjs7QXlHaG1sQkE7RUFvQ1EsV3BCeFdVO0VvQnlXViw2QkFBNkI7QXpHZ2tsQnJDOztBeUdybWxCQTtFQTJDWSwyQkFBMkI7QXpHOGpsQnZDOztBeUduamxCQTtFQUlRLHFCQUEwQjtBekdtamxCbEM7O0F5R3ZqbEJBO0VBU1Esc0JwQnhZVTtBckYwN2xCbEI7O0F5RzNqbEJBOzs7RUFnQlEseUJwQmpaYTtBckZrOGxCckI7O0F5R2prbEJBO0VBcUJRLHFCckJ6Wm1CO0FwRnk4bEIzQjs7QVFsOGxCRTtFaUd3WlUseUJwQjdaUztBckYyOGxCckI7O0F5R3prbEJBO0VBa0NZLGNBQWM7RUFDZCxvQkFBeUI7QXpHMmlsQnJDOztBeUdyaWxCQTtFQUlRLGlCcEI5TnVCO0FyRm13bEIvQjs7QXlHemlsQkE7RUFTUSxnQkFBZ0I7QXpHb2lsQnhCOztBeUc3aWxCQTtFQWFZLFVBQVU7QXpHb2lsQnRCOztBeUdqamxCQTtFNUYxWkksaUN3RW9NaUM7RXhFbk1qQyxvQ3dFbU1pQztBckY0d2xCckM7O0F5R3RqbEJBO0U1RnhhSSxrQ3dFa05pQztFeEVqTmpDLHFDd0VpTmlDO0FyRml4bEJyQzs7QXlHM2psQkE7RTVGMVpJLHlCNEY4YjZDO0U1RjdiN0MsNEI0RjZiNkM7RTVGbmQ3QyxpQ3dFeU5pQztFeEV4TmpDLGtDd0V3TmlDO0FyRnd4bEJyQzs7QXlHbGtsQkE7RTVGeGFJLDBCNEZrZDhDO0U1RmpkOUMsNkI0RmlkOEM7RTVGM2M5QyxxQ3dFMk1pQztFeEUxTWpDLG9Dd0UwTWlDO0FyRit4bEJyQzs7QXlHemtsQkE7RUErQ2dCLGNBQWM7RUFDZCxnQnBCMVFlO0FyRnd5bEIvQjs7QTBHM2dtQkE7Ozs7OztpRjFHbWhtQmlGO0FvQ2xnbUJqRjtFc0VISSxpQ0FBa0Q7RUFDbEQsb0NBQXFEO0VBQ3JELG9CQUFvQjtBMUd3Z21CeEI7O0EwR3JnbUJJOztFQUVJLGdDQUFnQztBMUd3Z21CeEM7O0EwRzFnbUJxQjtFQVFqQiw2QkFBOEM7RUFDOUMsc0JyQnNHZTtBckZnNmxCbkI7O0EwR25nbUJJO0VBQ0ksb0JyQjJMMkI7RXFCMUwzQixxQnJCMEwyQjtBckY0MGxCbkM7O0EwRzdnbUJBO0VBWVEsc0NyQnJCVTtBckYwaG1CbEI7O0EwR2pobUJBO0VBaUJRLGtDckJoQlU7QXJGb2htQmxCOztBMEcxL2xCQTtFQUlRLFlyQm12Qm9DO0VxQmx2QnBDLGNBQWM7QTFHMC9sQnRCOztBb0N2OWxCQTtFc0U3QkkscUJyQit0QjRDO0VxQjl0QjVDLHdCckI4dEI0QztBckYweGtCaEQ7O0FvQ24vbEJBO0VzRVNRLHFCckIrb0I0QjtFcUI5b0I1QixzQnJCOG9CNEI7QXJGZzJrQnBDOztBMEd6K2xCQTtFQUNJLGtCQUFrQjtFQUNsQixjQUFjO0VBQ2QsZUFBZTtFQUNmLHNCckJ1c0J3QztFcUJ0c0J4QyxVQUFVO0VuRnBGUixpQytEdUR5QztBdEYwZ21CL0M7O0F1QjVqbUJJO0VtRjBFSjtJbkZ6RU0sZ0JBQWdCO0V2QmdrbUJwQjtBQUNGOztBMEd4L2xCQTtFQVVRLGVwQk95QztBdEYyK2xCakQ7O0EwRzUvbEJBOztFQWVZLFlBQVk7QTFHay9sQnhCOztBMEdqZ21CQTtFQXFCUSxrQkFBa0I7RUFDbEIsTUFBTTtFQUNOLFFBQVE7QTFHZy9sQmhCOztBMEd2Z21CQTtFQTJCWSxjQUErQjtFQUMvQixhQUFpQztBMUdnL2xCN0M7O0EwRzMrbEJJO0VBSVEsV0FBVztFQUNYLGtCQUFrQjtFQUNsQixNQUFNO0VBQ04sU0FBUztFQUNULE9BQU87RUFDUCw2QkFBNkI7RUFDN0IsVXJCd3FCK0I7QXJGbTBrQjNDOztBMEd2K2xCUTtFQUNJLHlCdEI3RFk7QXBGdWltQnhCOztBMEd4K2xCUTtFQUNJLHNCckJ2SE07QXJGa21tQmxCOztBb0N2Z21CQTtFc0V3Q0kscUJyQnVFK0I7RXFCdEUvQixzQnJCc0UrQjtFcUJyRS9CLHFCckJxRStCO0VxQnBFL0Isc0JyQm9FK0I7QXJGKzVsQm5DOztBb0NyZ21CQTtFc0V1Q0ksU0FBUztFQUNULG1CckJxSStCO0VxQnBJL0IsZUFBZTtFbkZ4SmIsaUMrRHVEeUM7QXRGb2ttQi9DOztBdUJ0bm1CSTtFYTBHSjtJYnpHTSxnQkFBZ0I7RXZCMG5tQnBCO0FBQ0Y7O0EwRzUrbEJBO0VBUVEsb0JyQndEMkI7QXJGZzdsQm5DOztBUTNubUJFO0VrR3dKTSxVQUFVO0ExR3UrbEJsQjs7QVEvbm1CRTtFa0c4SlUsV3JCN0pNO0FyRmtvbUJsQjs7QW9DcjdsQkE7RXNFMUNRLDZCckIxSlU7QXJGNm5tQmxCOztBMEdwK2xCSTtFQU9RLFdyQmhLTTtBckZpb21CbEI7O0FpQmxsbUJJO0V5RjZISztJQUtXLG9CQUFtQztFMUdxOWxCckQ7RTBHMTlsQk87SUFVVyx1QkFBc0M7RTFHbTlsQnhEO0UwRzc5bEJPO0lBZVcsYUFBYTtJQUNiLG1CQUFtQjtJQUNuQixxQnJCSWU7SXFCSGYsc0JyQkdlO0lxQkZmLHFCckJFZTtJcUJEZixzQnJCQ2U7RXJGZzlsQmpDO0UwR3IrbEJPO0lBeUJtQixnQkFBZ0I7RTFHKzhsQjFDO0UwR3grbEJPO0lBK0JlLHFCQUFzQztFMUc0OGxCNUQ7RTBHMytsQk87SUFtQ21CLGtCQUFrQjtJQUNsQixRQUFRO0lBQ1IsY3JCaEJPO0lxQmlCUCxTQUFTO0lBQ1QsMkJBQTJCO0UxRzI4bEJyRDtFMEdsL2xCTztJQThDVyw4Q3JCbk9GO0VyRjBxbUJoQjtFMEdyL2xCTztJQWlEVywwQnJCbE9GO0VyRnlxbUJoQjtFMEd4L2xCTztJQXVEZSxtQnJCbENXO0lxQm1DWCxzQnJCbkNXO0VyRnUrbEJqQztFMEc1L2xCTztJQWlFZSxnQkFBZ0I7RTFHODdsQnRDO0UwRy8vbEJPO0lBd0VtQixTQUFTO0lBQ1QsZUFBZTtJQUNmLGdCQUFnQjtJN0YzUXhDLGdCNkY0UWdEO0UxRzA3bEJsRDtFMEdyZ21CTzs7SUFrRmUsa0JBQTRDO0UxR3U3bEJsRTtFMEd6Z21CTzs7SUF3RmUsa0JBQTRDO0UxR3E3bEJsRTtFMEc3Z21CTzs7SUErRlcsaUJBQWlCO0lBQ2pCLGdCQUFnQjtFMUdrN2xCbEM7QUFDRjs7QWlCN3BtQkk7RXlGMElLO0lBd0dXLG9CQUFrRDtFMUdnN2xCcEU7RTBHeGhtQk87SUE4R2UsU0FBUztJQUNULFFBQVE7SUFDUixXQUFXO0lBQ1gsV3JCaWZtQjtFckY0N2tCekM7QUFDRjs7QWlCNXBtQkk7RXlGNkhLO0lBS1csb0JBQW1DO0UxRytobUJyRDtFMEdwaW1CTztJQVVXLHVCQUFzQztFMUc2aG1CeEQ7RTBHdmltQk87SUFlVyxhQUFhO0lBQ2IsbUJBQW1CO0lBQ25CLHFCckJJZTtJcUJIZixzQnJCR2U7SXFCRmYscUJyQkVlO0lxQkRmLHNCckJDZTtFckYwaG1CakM7RTBHL2ltQk87SUF5Qm1CLGdCQUFnQjtFMUd5aG1CMUM7RTBHbGptQk87SUErQmUscUJBQXNDO0UxR3NobUI1RDtFMEdyam1CTztJQW1DbUIsa0JBQWtCO0lBQ2xCLFFBQVE7SUFDUixjckJoQk87SXFCaUJQLFNBQVM7SUFDVCwyQkFBMkI7RTFHcWhtQnJEO0UwRzVqbUJPO0lBOENXLDhDckJuT0Y7RXJGb3ZtQmhCO0UwRy9qbUJPO0lBaURXLDBCckJsT0Y7RXJGbXZtQmhCO0UwR2xrbUJPO0lBdURlLG1CckJsQ1c7SXFCbUNYLHNCckJuQ1c7RXJGaWptQmpDO0UwR3RrbUJPO0lBaUVlLGdCQUFnQjtFMUd3Z21CdEM7RTBHemttQk87SUF3RW1CLFNBQVM7SUFDVCxlQUFlO0lBQ2YsZ0JBQWdCO0k3RjNReEMsZ0I2RjRRZ0Q7RTFHb2dtQmxEO0UwRy9rbUJPOztJQWtGZSxrQkFBNEM7RTFHaWdtQmxFO0UwR25sbUJPOztJQXdGZSxrQkFBNEM7RTFHKy9sQmxFO0UwR3ZsbUJPOztJQStGVyxpQkFBaUI7SUFDakIsZ0JBQWdCO0UxRzQvbEJsQztBQUNGOztBaUJ2dW1CSTtFeUYwSUs7SUF3R1csb0JBQWtEO0UxRzAvbEJwRTtFMEdsbW1CTztJQThHZSxTQUFTO0lBQ1QsUUFBUTtJQUNSLFdBQVc7SUFDWCxXckJpZm1CO0VyRnNnbEJ6QztBQUNGOztBaUJ0dW1CSTtFeUY2SEs7SUFLVyxvQkFBbUM7RTFHeW1tQnJEO0UwRzltbUJPO0lBVVcsdUJBQXNDO0UxR3VtbUJ4RDtFMEdqbm1CTztJQWVXLGFBQWE7SUFDYixtQkFBbUI7SUFDbkIscUJyQkllO0lxQkhmLHNCckJHZTtJcUJGZixxQnJCRWU7SXFCRGYsc0JyQkNlO0VyRm9tbUJqQztFMEd6bm1CTztJQXlCbUIsZ0JBQWdCO0UxR21tbUIxQztFMEc1bm1CTztJQStCZSxxQkFBc0M7RTFHZ21tQjVEO0UwRy9ubUJPO0lBbUNtQixrQkFBa0I7SUFDbEIsUUFBUTtJQUNSLGNyQmhCTztJcUJpQlAsU0FBUztJQUNULDJCQUEyQjtFMUcrbG1CckQ7RTBHdG9tQk87SUE4Q1csOENyQm5PRjtFckY4em1CaEI7RTBHem9tQk87SUFpRFcsMEJyQmxPRjtFckY2em1CaEI7RTBHNW9tQk87SUF1RGUsbUJyQmxDVztJcUJtQ1gsc0JyQm5DVztFckYybm1CakM7RTBHaHBtQk87SUFpRWUsZ0JBQWdCO0UxR2tsbUJ0QztFMEducG1CTztJQXdFbUIsU0FBUztJQUNULGVBQWU7SUFDZixnQkFBZ0I7STdGM1F4QyxnQjZGNFFnRDtFMUc4a21CbEQ7RTBHenBtQk87O0lBa0ZlLGtCQUE0QztFMUcya21CbEU7RTBHN3BtQk87O0lBd0ZlLGtCQUE0QztFMUd5a21CbEU7RTBHanFtQk87O0lBK0ZXLGlCQUFpQjtJQUNqQixnQkFBZ0I7RTFHc2ttQmxDO0FBQ0Y7O0FpQmp6bUJJO0V5RjBJSztJQXdHVyxvQkFBa0Q7RTFHb2ttQnBFO0UwRzVxbUJPO0lBOEdlLFNBQVM7SUFDVCxRQUFRO0lBQ1IsV0FBVztJQUNYLFdyQmlmbUI7RXJGZ2xsQnpDO0FBQ0Y7O0FpQmh6bUJJO0V5RjZISztJQUtXLG9CQUFtQztFMUdtcm1CckQ7RTBHeHJtQk87SUFVVyx1QkFBc0M7RTFHaXJtQnhEO0UwRzNybUJPO0lBZVcsYUFBYTtJQUNiLG1CQUFtQjtJQUNuQixxQnJCSWU7SXFCSGYsc0JyQkdlO0lxQkZmLHFCckJFZTtJcUJEZixzQnJCQ2U7RXJGOHFtQmpDO0UwR25zbUJPO0lBeUJtQixnQkFBZ0I7RTFHNnFtQjFDO0UwR3RzbUJPO0lBK0JlLHFCQUFzQztFMUcwcW1CNUQ7RTBHenNtQk87SUFtQ21CLGtCQUFrQjtJQUNsQixRQUFRO0lBQ1IsY3JCaEJPO0lxQmlCUCxTQUFTO0lBQ1QsMkJBQTJCO0UxR3lxbUJyRDtFMEdodG1CTztJQThDVyw4Q3JCbk9GO0VyRnc0bUJoQjtFMEdudG1CTztJQWlEVywwQnJCbE9GO0VyRnU0bUJoQjtFMEd0dG1CTztJQXVEZSxtQnJCbENXO0lxQm1DWCxzQnJCbkNXO0VyRnFzbUJqQztFMEcxdG1CTztJQWlFZSxnQkFBZ0I7RTFHNHBtQnRDO0UwRzd0bUJPO0lBd0VtQixTQUFTO0lBQ1QsZUFBZTtJQUNmLGdCQUFnQjtJN0YzUXhDLGdCNkY0UWdEO0UxR3dwbUJsRDtFMEdudW1CTzs7SUFrRmUsa0JBQTRDO0UxR3FwbUJsRTtFMEd2dW1CTzs7SUF3RmUsa0JBQTRDO0UxR21wbUJsRTtFMEczdW1CTzs7SUErRlcsaUJBQWlCO0lBQ2pCLGdCQUFnQjtFMUdncG1CbEM7QUFDRjs7QWlCMzNtQkk7RXlGMElLO0lBd0dXLG9CQUFrRDtFMUc4b21CcEU7RTBHdHZtQk87SUE4R2UsU0FBUztJQUNULFFBQVE7SUFDUixXQUFXO0lBQ1gsV3JCaWZtQjtFckYwcGxCekM7QUFDRjs7QTBHbHdtQkE7RUFVb0Isb0JBQW1DO0ExRzR2bUJ2RDs7QTBHdHdtQkE7RUFlb0IsdUJBQXNDO0ExRzJ2bUIxRDs7QTBHMXdtQkE7RUFvQm9CLGFBQWE7RUFDYixtQkFBbUI7RUFDbkIscUJyQkllO0VxQkhmLHNCckJHZTtFcUJGZixxQnJCRWU7RXFCRGYsc0JyQkNlO0FyRnl2bUJuQzs7QTBHbnhtQkE7RUE4QjRCLGdCQUFnQjtBMUd5dm1CNUM7O0EwR3Z4bUJBO0VBb0N3QixxQkFBc0M7QTFHdXZtQjlEOztBMEczeG1CQTtFQXdDNEIsa0JBQWtCO0VBQ2xCLFFBQVE7RUFDUixjckJoQk87RXFCaUJQLFNBQVM7RUFDVCwyQkFBMkI7QTFHdXZtQnZEOztBMEdueW1CQTtFQW1Eb0IsOENyQm5PRjtBckZ1OW1CbEI7O0EwR3Z5bUJBO0VBc0RvQiwwQnJCbE9GO0FyRnU5bUJsQjs7QTBHM3ltQkE7RUE0RHdCLG1CckJsQ1c7RXFCbUNYLHNCckJuQ1c7QXJGc3htQm5DOztBMEdoem1CQTtFQXNFd0IsZ0JBQWdCO0ExRzh1bUJ4Qzs7QTBHcHptQkE7RUE2RTRCLFNBQVM7RUFDVCxlQUFlO0VBQ2YsZ0JBQWdCO0U3RjNReEMsZ0I2RjRRZ0Q7QTFHMnVtQnBEOztBMEczem1CQTs7RUF1RndCLGtCQUE0QztBMUd5dW1CcEU7O0EwR2gwbUJBOztFQTZGd0Isa0JBQTRDO0ExR3d1bUJwRTs7QTBHcjBtQkE7O0VBb0dvQixpQkFBaUI7RUFDakIsZ0JBQWdCO0ExR3N1bUJwQzs7QTBHMzBtQkE7RUE2R29CLG9CQUFrRDtBMUdrdW1CdEU7O0EwRy8wbUJBO0VBbUh3QixTQUFTO0VBQ1QsUUFBUTtFQUNSLFdBQVc7RUFDWCxXckJpZm1CO0FyRit1bEIzQzs7QTBHbHRtQkE7RUFDSSw2QnJCNVNjO0VxQjZTZCxzQnJCdFRjO0VxQnVUZCx5Q3JCN1NjO0FyRmtnbkJsQjs7QTBHbHRtQkk7Ozs7RUFJSSxzQ3JCcFRVO0FyRnlnbkJsQjs7QW9DdDBtQkE7RXNFeUhZLFdyQjdUTTtBckY4Z25CbEI7O0FReGhuQkU7RWtHMlVjLFdyQmpVRTtBckZraG5CbEI7O0FvQzkwbUJBO0VzRWtJZ0IsV3JCelVFO0FyRnlobkJsQjs7QW9DbDFtQkE7Ozs7RXNFMklZLFdyQi9VTTtBckY2aG5CbEI7O0EwR2x2bUJBO0VBMENRLDZCckJyVlU7QXJGaWluQmxCOztBUTNpbkJFO0VrR21XVSxXckJ6Vk07RXFCMFZOLHFDckJ6Vk07QXJGcWluQmxCOztBMEczdm1CQTtFQW9EWSx5QnJCOVZNO0VxQitWTiw2QnJCa2V1QztBckZ5dWxCbkQ7O0EwR2h3bUJBOzs7O0VBOERRLFdyQnpXVTtFcUIwV1YscUNyQnpXVTtBckZram5CbEI7O0FvQy8ybUJBO0VzRTRLWSxjdEIxWGU7QXBGaWtuQjNCOztBUWprbkJFO0VrRzhYYyxjckJ0T21DO0FyRjY2bUJuRDs7QTBHaHNtQkE7RUFDSSwrQnJCclljO0VxQnNZZCx5QnRCeFZvQjtFc0J5VnBCLDZDckJ2WWM7QXJGMGtuQmxCOztBMEcvcm1CSTs7OztFQUlJLDBDckIvWVU7QXJGaWxuQmxCOztBb0NoMW1CQTtFc0VzSlksV3JCOVlNO0FyRjRrbkJsQjs7QVF0bG5CRTtFa0c0WmMsV3JCbFpFO0FyRmdsbkJsQjs7QW9DeDFtQkE7RXNFK0pnQixXckIxWkU7QXJGdWxuQmxCOztBb0M1MW1CQTs7OztFc0V3S1ksV3JCaGFNO0FyRjJsbkJsQjs7QTBHaHVtQkE7RUEyQ1EsK0JyQi9hVTtBckZ3bW5CbEI7O0FRem1uQkU7RWtHb2JVLFdyQm5iTTtFcUJvYk4scUNyQjFhTTtBckZtbW5CbEI7O0EwR3p1bUJBO0VBcURZLCtCckJ6Yk07RXFCMGJOLDZCckJtWXVDO0FyRnF6bEJuRDs7QTBHOXVtQkE7Ozs7RUErRFEsV3JCbmNVO0VxQm9jVixxQ3JCMWJVO0FyRmdubkJsQjs7QTBHNXFtQkE7RUFPWSxXckJnUmlDO0FyRnk1bEI3Qzs7QVEvbm5CRTtFa0cwZGMsV3JCaGRFO0FyRnlubkJsQjs7QTBHcHJtQkE7RUFnQmdCLFdyQnhkRTtBckZnb25CbEI7O0EwR3hybUJBOzs7O0VBeUJZLFdyQjlkTTtBckZvb25CbEI7O0EwRy9ybUJBO0VBaUNZLFdyQnhlTTtBckYwb25CbEI7O0FRbHBuQkU7RWtHcWZrQixXckIzZUY7QXJGNG9uQmxCOztBMEd2c21CQTtFQWlEd0IsaUNBQWtDO0VBQ2xDLHNCQUE0QjtBMUcwcG1CcEQ7O0EwRzVzbUJBO0VBdUR3QixpQ0FBa0M7RUFDbEMsNkJBQThCO0ExR3lwbUJ0RDs7QTBHanRtQkE7RUE2RHdCLDZCQUE4QjtBMUd3cG1CdEQ7O0EwR3J0bUJBOztFQXFFZ0IsV3JCbmhCRTtBckZ3cW5CbEI7O0FRenFuQkU7RWtHMGhCa0IsV3JCbmhCRjtBckZzcW5CbEI7O0EwRzNvbUJBO0VBR1EsUUFBUTtFQUNSLFVBQVU7QTFHNG9tQmxCOztBMEd0b21CQTs7RUFNWSxzQkFBeUM7RUFDekMseUJBQTRDO0ExR3FvbUJ4RDs7QTBHNW9tQkE7RUFZWSxxQkFBcUI7RUFDckIsc0JyQmxjWTtBckZza25CeEI7O0EwR2pwbUJBO0VBa0JZLHNCQUErRztFQUMvRyxtQkFBbUI7QTFHbW9tQi9COztBMEc3bm1CQTtFQUNJLGdCckJsVXNEO0VxQm1VdEQsc0JBQXVEO0VBQ3ZELG1CQUFtQjtFQUNuQixzQkFBc0I7QTFHZ29tQjFCOztBMEdwbm1CSztFQUVPO0VBQ0EsVUFBVTtBMUdzbm1CdEI7O0EwR2pubUJLO0VBRU8sVUFBVTtFQUNWLFFBQVE7QTFHbW5tQnBCOztBMEc3bW1CQTtFQUVRLGFyQjdaMkI7RXFCOFozQixjckI5WjJCO0FyRjZnbkJuQzs7QTBHNW1tQlE7RUFDSSxPQUFPO0VBQ1AsUUFBUTtBMUcrbW1CcEI7O0EwR3ptbUJBO0VBQ0ksYUFBYTtFQUNiLDhCQUE4QjtFQUM5QixxQnBCNWpCNkM7RW9CNmpCN0Msc0JwQjdqQjZDO0V6RTdEN0MsZ0M2RjJuQnFGO0U3RjFuQnJGLGlDNkYwbkJxRjtBMUc2bW1CekY7O0EwR2xubUJBO0VBU1Esb0JwQm5rQnlDO0VvQm9rQnpDLHVCcEJwa0J5QztBdEZpcm5CakQ7O0EwR3ZubUJBO0VBZVEsaUJwQjFrQnNDO0VvQjJrQnRDLG9CcEIza0JzQztBdEZ1cm5COUM7O0EwRzVubUJBOztFQXNCUSwwQnJCcm9CVTtBckZndm5CbEI7O0EwR3RtbUJBO0VBRVEsY0FBYztFQUNkLGlCQUFpQjtBMUd3bW1CekI7O0EwR25tbUJBO0VBQ0ksd0JwQjdsQjZDO0F0Rm1zbkJqRDs7QTBHbm1tQkk7RUFDSSxjQUFjO0ExR3NtbUJ0Qjs7QTBHam1tQkE7RUFDSSxhQUFhO0VBQ2IsbUJBQW1CO0VBQ25CLHdCcEJ6bUI2QztFb0IwbUI3QywwQnJCaHFCYztFeEVPZCxvQzZGMHBCd0Y7RTdGenBCeEYsbUM2RnlwQndGO0ExR3FtbUI1Rjs7QTBHM2xtQkk7RUFDSSx1QkFBa0U7QTFHOGxtQjFFOztBMEc1bG1CSTtFQUNJLHVCQUFxRTtBMUcrbG1CN0U7O0EwRzdsbUJJO0VBQ0ksdUJBQXFFO0ExR2dtbUI3RTs7QTBHOWxtQkk7RUFDSSx1QkFBaUk7QTFHaW1tQnpJOztBMEcvbG1CSTtFQUNJLHVCQUF3RTtBMUdrbW1CaEY7O0EwR2htbUJJO0VBQ0ksdUJBQWlJO0ExR21tbUJ6STs7QTBHam1tQkk7RUFDSSx1QkFBb0k7QTFHb21tQjVJOztBMEc5bG1CSTtFQUNJLDBCQUFxRTtBMUdpbW1CN0U7O0EwRy9sbUJJO0VBQ0ksMEJBQW9JO0ExR2ttbUI1STs7QTBHaG1tQkk7RUFDSSwwQkFBMkU7QTFHbW1tQm5GOztBMEdqbW1CSTtFQUNJLDBCQUFvSTtBMUdvbW1CNUk7O0EwR2xtbUJJO0VBQ0ksMEJBQXVJO0ExR3FtbUIvSTs7QTBHM2xtQkE7RUFJUSx1QnJCNERtRjtFcUIzRG5GLDBCckIyRG1GO0FyRmdpbUIzRjs7QTBHaG1tQkE7RUFVUSxxQnJCeUN1QztBckZpam1CL0M7O0EwR3BtbUJBO0VBY1ksV0FBa0M7RUFDbEMsZUFBb0M7QTFHMGxtQmhEOztBMEd6bW1CQTtFQXFCUSxpQnJCNkJvQztFcUI1QnBDLG9CckI0Qm9DO0FyRjRqbUI1Qzs7QTBHOW1tQkE7O0VBZ0NnQixtQkFBNEM7RUFDNUMsc0JBQStDO0ExR21sbUIvRDs7QTBHcG5tQkE7RUFzQ2dCLHNCQUFxSDtBMUdrbG1Cckk7O0EwRzNrbUJBO0VBSVEsdUJyQm1CbUY7RXFCbEJuRiwwQnJCa0JtRjtBckZ5am1CM0Y7O0EwR2hsbUJBO0VBVVEseUJyQkR3QztBckYya21CaEQ7O0EwR3BsbUJBO0VBY1ksYUFBa0M7RUFDbEMsZ0JBQW9DO0ExRzBrbUJoRDs7QTBHemxtQkE7RUFxQlEsb0JyQmJ1QztFcUJjdkMsdUJyQmR1QztBckZzbG1CL0M7O0EwRzlsbUJBOztFQWdDZ0IscUJBQTRDO0VBQzVDLHdCQUErQztBMUdta21CL0Q7O0EwR3BtbUJBO0VBc0NnQixzQkFBcUg7QTFHa2ttQnJJOztBMEdyam1CQTtFQUNJLGdCckI5bUIyQjtFcUIrbUIzQixtQnJCL21CMkI7RXFCZ25CM0IscUJyQnhuQitCO0VxQnluQi9CLHFCckJ6bkIrQjtFcUIwbkIvQixpQ0FBa0Q7RUFDbEQsb0NBQXFEO0ExR3dqbUJ6RDs7QTBHOWptQkE7RUFVUSw2Q3JCejBCVTtBckZpNG5CbEI7O0EwR2xrbUJBO0VBZVEseUNyQnAwQlU7QXJGMjNuQmxCOztBMEd0a21CQTtFQW9CUSxvQnJCem9CMkI7RXFCMG9CM0IsZUFBZTtBMUdzam1CdkI7O0EwRzNrbUJBO0VBMEJRLGFBQWE7QTFHcWptQnJCOztBMEdqam1CSTtFQUlRLGFBQWE7QTFHaWptQnpCOztBMEdyam1CSTtFQVNRLHFCQUFxQjtFQUNyQixpQnBCbHVCNEQ7RW9CbXVCNUQsY0FBYztFQUNkLGtCQUFrQjtBMUdnam1COUI7O0EwRzFpbUJBO0VBQ0ksWXBCcHNCdUM7QXRGaXZuQjNDOztBMkc5Nm5CQTs7Ozs7O2lGM0dzN25CaUY7QXFDbDduQmpGO0VzRVdJLHNCdEJtSGU7RW1CbEhiLHlDbkJXWTtBckYrNW5CbEI7O0EyRzU2bkJBO0VBTVEsY0FBYztFQUNkLGdCQUFnQjtBM0cwNm5CeEI7O0EyR3I2bkJBO0VBRVEsMEN0QkRVO0FyRnc2bkJsQjs7QXFDdDVuQkE7RXNFWEksa0JBQWtCO0EzR3E2bkJ0Qjs7QTJHajZuQkE7RUFJUSxnQkFBZ0I7QTNHaTZuQnhCOztBMkc3NW5CSTtFQUNJLDZDdEI5QlU7QXJGODduQmxCOztBMkd6Nm5CQTtFQWVRLDZCQUE2QjtFQUM3QixvQnRCaTJCNkI7RXNCaDJCN0IsdUJ0QmcyQjZCO0VzQi8xQjdCLHNCQUFzQjtBM0c4NW5COUI7O0EyR2g3bkJBOztFQXVCWSxjQUFjO0EzRzg1bkIxQjs7QTJHeDVuQkE7OztFQU1RLGFBQWE7RUFDYiw2Q3RCL0NVO0FyRnU4bkJsQjs7QTJHLzVuQkE7RUFZUSw2Q3RCcERVO0FyRjI4bkJsQjs7QXFDNzNuQkE7RXNFaEJJLGdCQUFnQjtBM0dpNW5CcEI7O0EyR2w1bkJBO0VBS1EsbUJBQW1CO0EzR2k1bkIzQjs7QTJHcDRuQkk7RTlGckdBLHdCd0VrT2lDO0FyRjJ3bkJyQzs7QTJHbDRuQkE7RUFDSSxrQkFBa0I7QTNHcTRuQnRCOztBMkd0NG5CQTtFQU1ZLFVBQVU7RUFDVixtQkFBbUI7QTNHbzRuQi9COztBMkc5M25CQTtFQUNJLGFBQWE7RUFDYixtQkFBbUI7RUFDbkIsdUJBQXVCO0VBQ3ZCLGtCQUFrQjtFQUNsQixNQUFNO0VBQ04sU0FBUztFQUNULE9BQU87RUFDUCxRQUFRO0VBQ1IscUN0QjNHYztFc0I0R2QsV3RCdEhjO0VzQnVIZCxVQUFVO0VBQ1Ysa0JBQWtCO0VwRm5JaEIsaUMrRHVEeUM7QXRGODhuQi9DOztBdUJoZ29CSTtFb0ZrSEo7SXBGakhNLGdCQUFnQjtFdkJvZ29CcEI7QUFDRjs7QUFFQTtFMkcvM25CSSxlQUFlO0EzR2k0bkJuQjs7QUFFQTtFMkcvM25CUSxzQnJCaEcyQztFcUJpRzNDLGVyQmhHc0M7RXFCaUd0QyxlckJqR3NDO0VxQmtHdEMsa0JBQWtCO0VBQ2xCLHFCQUFxQjtFQUNyQixzQkFBc0I7RXhCL0kxQixtQ0FBbUM7RUFDbkMsa0NBQWtDO0FuRmlob0J0Qzs7QUFFQTtFMkc5M25CSSxnQkFBZ0I7QTNHZzRuQnBCOztBQUVBO0UyRzczbkJJLGdCQUFnQjtBM0crM25CcEI7O0FBRUE7RTJHNTNuQkksZ0JBQWdCO0VBQ2hCLG9CdEJvR2tDO0FyRjB4bkJ0Qzs7QUFFQTtFMkczM25CSSxlQUFlO0EzRzYzbkJuQjs7QUFFQTtFMkczM25CUSxnQkFBZ0I7QTNHNjNuQnhCOztBQUVBO0UyR3gzbkJRLGdCQUFnQjtBM0cwM25CeEI7O0FBRUE7RTJHdjNuQlEsZ0JBQWdCO0EzR3kzbkJ4Qjs7QUFFQTtFMkdyM25CSSxnQkFBZ0I7QTNHdTNuQnBCOztBMkcvMm5CQTtFQUVRLHFCQUFxQjtBM0dpM25CN0I7O0EyR24zbkJBO0VBTVksZ0JBQWdCO0VBQ2hCLHNCckJqS3VDO0VxQmtLdkMsa0JBQWtCO0VBQ2xCLFFBQVE7RUFDUixtQkFBaUM7RUFDakMsZXJCcEtrQztFcUJxS2xDLGdCdEI2RG9CO0VzQjVEcEIsY0FBYztFeEJqTnRCLG1DQUFtQztFQUNuQyxrQ0FBa0M7QW5GbWtvQnRDOztBMkdoNG5CQTtFQW1CWSxnQkFBZ0I7QTNHaTNuQjVCOztBMkc1Mm5CSztFQUVPLHNCQUFtRDtBM0c4Mm5CL0Q7O0EyR2gzbkJLO0VBTVcsT0FBTztBM0c4Mm5CdkI7O0EyR3gybkJLO0VBRU8sdUJBQW9EO0EzRzAybkJoRTs7QTJHNTJuQks7RUFNVyxRQUFRO0EzRzAybkJ4Qjs7QTRHdG1vQkE7Ozs7OztpRjVHOG1vQmlGO0FzQzltb0JqRjtFc0VVSSxVQUFVO0E1R3Vtb0JkOztBNEdubW9CQTtFQUNJLG1CQUFnQztFQUNoQyxjQUFjO0E1R3Ntb0JsQjs7QTRHeG1vQkE7RUFNUSxrQnZCaVFrRDtBckZxMm5CMUQ7O0E0R2ptb0JBO0VBQ0kscUJBQXFCO0VBQ3JCLGNBQWM7RXJGckJaLHFDK0R1RHlDO0F0Rm1rb0IvQzs7QXVCcm5vQkk7RXFGY0o7SXJGYk0sZ0JBQWdCO0V2Qnlub0JwQjtBQUNGOztBNEc3bW9CQTs7O0VBU1EsYUFBYTtBNUcwbW9CckI7O0E0R3Jtb0JBO0VBSVEsY0FBYztFQUNkLHVCQUEyQztBNUdxbW9CbkQ7O0E0RzFtb0JBO0VBUVksaUJBQWlCO0VBQ2pCLG9CQUF3QztBNUdzbW9CcEQ7O0E0RzNsb0JBO0VBQ0kscUJBQXFCO0E1Rzhsb0J6Qjs7QTRHMWxvQkE7RUFFUSxxQkFBcUI7QTVHNGxvQjdCOztBNEdwbG9CQTtFQUNJLHFCQUFxQjtBNUd1bG9CekI7O0E0R25sb0JBO0VBQ0kscUJBQXFCO0E1R3Nsb0J6Qjs7QTRHN2tvQkE7RUFDSSxrQkFBa0I7RUFDbEIscUJ2QmdJK0I7RXVCL0gvQixzQnZCK0grQjtFdUI5SC9CLGlDQUEyRDtFQUMzRCxvQ0FBOEQ7QTVHZ2xvQmxFOztBNEdybG9CQTtFQVNRLG1CQUFtQjtBNUdnbG9CM0I7O0E0R3psb0JBO0VBY1Esc0J2QjJCVztBckZvam9CbkI7O0E0RzVrb0JROztFQUVJLGdCQUFnQjtBNUcra29CNUI7O0E0R3prb0JBO0VBQ0kseUJ2Qm1oQ29EO0V1QmxoQ3BELGtCdkIvRmM7RXVCZ0dkLFd2QjNGYztBckZ1cW9CbEI7O0E0R3hrb0JRO0VBQ0ksc0JBQXNCO0E1RzJrb0JsQzs7QTRHdGtvQkk7RUFDSSxtQkFBbUI7QTVHeWtvQjNCOztBNEcxa29CSTtFQUtRLHNCQUFzQjtBNUd5a29CbEM7O0E0RzNsb0JBO0VBd0JRLGtCdkJySFU7QXJGNHJvQmxCOztBNEdsa29CQTtFQUNJLHlCdkIyL0JvRDtFdUIxL0JwRCx5QkFBeUI7RUFDekIsV3ZCakljO0FyRnNzb0JsQjs7QTRHamtvQlE7RUFDSSxzQkFBc0I7QTVHb2tvQmxDOztBNEc1a29CQTtFQWVZLGNBQWM7QTVHaWtvQjFCOztBNEc1am9CSTtFQUNJLHVDdkJuSlU7QXJGa3RvQmxCOztBNEdsb29CSztFQXlFRCw2QkFBdUQ7RS9Gckt2RCx3QndFa09pQztBckZpZ29CckM7O0E0RzFqb0JJO0VBQ0ksb0J2QjRDMkI7RXVCM0MzQixxQnZCMkMyQjtBckZraG9CbkM7O0E0R25qb0JBO0VBQ0ksbUJBQWdDO0E1R3Nqb0JwQzs7QTRHdmpvQkE7RUFLUSxvQnZCN0RXO0FyRm1ub0JuQjs7QTZHcnZvQkE7Ozs7OztpRjdHNnZvQmlGO0F1Qzd2b0JqRjtFc0VlSSxnQkFBZ0I7QTdHaXZvQnBCOztBdUMxdm9CQTtFc0VjSSxrQkFBa0I7RUFDbEIscUJBQXVIO0V0RmZySCxpQytEdUR5QztBdEZ5c29CL0M7O0F1QjN2b0JJO0VnQkxKO0loQk1NLGdCQUFnQjtFdkIrdm9CcEI7QUFDRjs7QXdDendvQkU7RXFFOEJNLHFCQUFzSDtBN0crdW9COUg7O0F3Qzd3b0JFO0VxRXFDTSxxQkFBc0g7QTdHNHVvQjlIOztBNkdsdW9CQTtFaEdmSSw2QndFdU02QjtFeEV0TTdCLGdDd0VzTTZCO0FyRitpb0JqQzs7QTZHdnVvQkE7RWhHN0JJLDhCd0VxTjZCO0V4RXBON0IsaUN3RW9ONkI7QXJGb2pvQmpDOztBNkc1dG9CQTtFQU9ZLHlCekJ6RGU7QXBGa3hvQjNCOztBNkdodW9CQTtFQVlZLHlCQUF5QjtBN0d3dG9CckM7O0E2R3B1b0JBO0VBa0JRLDZCQUE2QjtFQUM3Qix5QkFBeUI7RUFDekIsZ0J4Qjh5QmlDO0V4RS8zQnJDLHdCd0VrT2lDO0FyRnNrb0JyQzs7QVE3eG9CRTtFcUcwRVUseUJ4QnZFUztBckY4eG9CckI7O0E2Ry91b0JBO0VoRzdESSxvQndFcU82QjtBckYya29CakM7O0E2Rzlzb0JBO0VBSVEscUJ4QjJ4QjJDO0V4RWo0Qi9DLHdCd0VrT2lDO0FyRm1sb0JyQzs7QTZHbnRvQkE7RWhHbEdJLG9Cd0VxTzZCO0FyRm9sb0JqQzs7QTZHdHNvQkE7RWhHbkhJLHdCd0VrT2lDO0FyRjJsb0JyQzs7QTZHMXNvQkE7RUFTUSxvQnhCQ1c7RXhFN0hmLHdCd0VrT2lDO0FyRmdtb0JyQzs7QTZHL3NvQkE7RWhHbkhJLG9Cd0VxTzZCO0FyRmltb0JqQzs7QTZHOXJvQks7RUFLVyw2QkFBNkI7RUFDN0IseUJBQXlCO0E3RzZyb0J6Qzs7QTZHbnNvQks7RUFZTyxjekJ6SWU7RXlCMElmLDZCQUE2QjtFQUM3Qix5QkFBeUI7QTdHMnJvQnJDOztBUXQwb0JFO0VxRzhJYyxXeEI3SUU7RXdCOElGLHlCekIvSVc7RXlCZ0pYLHFCekJoSlc7QXBGNDBvQjNCOztBNkdwdW9CQTtFaEduSEksc0J3RW1PK0I7QXJGd25vQm5DOztBNkd4dW9CQTtFaEduSEksdUJ3RW9PZ0M7QXJGMm5vQnBDOztBOEdwMm9CQTs7Ozs7O2lGOUc0Mm9CaUY7QThHbjJvQmpGO0VBS1ksY0FBYztFQUNkLHdCQUF3QjtBOUdpMm9CcEM7O0F5Qzl6b0JFO0VxRTdCTSx5QnpCRmE7QXJGaTJvQnJCOztBOEcxMW9CQTtFdkZwQk0saUMrRHVEeUM7QXRGMnpvQi9DOztBdUI3Mm9CSTtFdUZlSjtJdkZkTSxnQkFBZ0I7RXZCaTNvQnBCO0FBQ0Y7O0E4R3Ayb0JBOztFQVFZLG9EekJvYjhEO0FyRjY2bkIxRTs7QXlDcjJvQkE7RXFFV0ksTUFBTTtBOUc4MW9CVjs7QThHcjFvQkE7RUFDSSw2QkFBNkI7RUFDN0IsNkJBQWtEO0VBQ2xELG1EQUF3SDtBOUd3MW9CNUg7O0FRNzNvQkU7RXNHMENVLDZCQUE2QjtFTjFDbkMsZ0JNMkM4QjtBOUd1MW9CcEM7O0E4R2gyb0JBO0VBZVEsbUNBQTBFO0VBQzFFLG9DQUEyRTtBOUdxMW9CbkY7O0E4R2gxb0JBO0VBQ0kseUJ6Qis1QmtDO0V5Qjk1QmxDLGtCQUFrQjtBOUdtMW9CdEI7O0E4R3Ixb0JBO0VBTVEsV0FBVztFQUNYLFFBQVE7RUFDUixrQkFBa0I7RUFDbEIsTUFBTTtFQUNOLFNBQVM7QTlHbTFvQmpCOztBOEcvMG9CSTtFQUNJLGtDQUF3RTtFakduRDVFLHlCaUdvRGlDO0VqR25EakMsNEJpR21EaUM7QTlHbTFvQnJDOztBOEdyMW9CSztFQU1PLE9BQU87RUFDUCxzQkFBOEM7RUFDOUMsMEJBQTBCO0E5R20xb0J0Qzs7QThHOTBvQkk7RUFDSSxtQ0FBeUU7RWpHOUU3RSwwQmlHK0VrQztFakc5RWxDLDZCaUc4RWtDO0E5R2sxb0J0Qzs7QThHcDFvQks7RUFNTyxRQUFRO0VBQ1IsdUJBQStDO0VBQy9DLDJCQUEyQjtBOUdrMW9CdkM7O0E4RzUwb0JBO0VBQ0ksaUJ6QisyQm9DO0V5QjkyQnBDLGNBQWM7QTlHKzBvQmxCOztBOEdqMW9CQTtFQU1RLE1BQU07QTlHKzBvQmQ7O0E4RzEwb0JBO0VBQ0ksa0JBQWtCO0VBQ2xCLGN6QisyQm1DO0V5QjkyQm5DLFl6QjgyQm1DO0FyRis5bUJ2Qzs7QW9HNTVvQmtCO0VVb0ZkLFVBQVU7RUFDVixpQkFBc0M7RWZqSXhDLGFWNCtCb0M7RVUzK0JwQyxjVjIrQm9DO0V4RTErQmxDLG9Cd0VxTzZCO0FyRnl1b0JqQzs7QThHajFvQkE7RUFRUSxxQkFBcUI7QTlHNjBvQjdCOztBK0d2OW9CQTs7Ozs7O2lGL0crOW9CaUY7QVEvOG9CL0U7RXVHRlUsY0FBYztBL0dvOW9CMUI7O0ErR3o4b0JBO0VBRVEsY0FBYztFQUNkLDhDMUJYVTtBckZzOW9CbEI7O0ErR3Q4b0JBO0VBQ0ksc0JBQXNDO0VBQ3RDLHVCQUF1QztFbEc5QnZDLG9Cd0VxTzZCO0FyRm13b0JqQzs7QStHNThvQkE7RWxHWkksOEJ3RXFONkI7RXhFcE43QixpQ3dFb042QjtBckZ3d29CakM7O0ErR244b0JBO0VBT1ksZ0JBQWdCO0VBQ2hCLHNCekJDdUM7RXlCQXZDLFcxQnZDTTtFMEJ3Q04sZUFBaUQ7RUFDakQsZUFBZ0Q7RUFDaEQsa0JBQWtCO0VBQ2xCLGtCQUFrQjtFQUNsQixRQUFRO0VBQ1IsbUJBQWlDO0VBQ2pDLGV6Qk5rQztFeUJPbEMsZ0IxQjJOb0I7RTBCMU5wQixjQUFjO0U1Qm5EdEIsbUNBQW1DO0VBQ25DLGtDQUFrQztBbkZvL29CdEM7O0ErR3A5b0JBO0VBeUJZLGdCQUFnQjtBL0crN29CNUI7O0ErR3g5b0JBO0VBK0JZLGdCQUFnQjtBL0c2N29CNUI7O0ErRzU5b0JBO0VBcUNZLGdCQUFnQjtBL0cyN29CNUI7O0ErR2grb0JBO0VBMkNZLGdCQUFnQjtBL0d5N29CNUI7O0ErR3Arb0JBO0VBaURRLDJCQUE2RDtBL0d1N29CckU7O0ErR3grb0JBO0VBcURZLGlEQUErQztBL0d1N29CM0Q7O0ErRzUrb0JBO0VBMkRRLDRCQUE4RDtBL0dxN29CdEU7O0ErR2gvb0JBO0VBK0RZLFVBQVU7RUFDVixnQkFBaUQ7QS9HcTdvQjdEOztBK0dyL29CQTtFQXFFWSxrREFBZ0Q7QS9HbzdvQjVEOztBK0d6L29CQTtFQTRFWSxnQkFBZ0I7QS9HaTdvQjVCOztBK0czNm9CQTs7RUFLUSxXQUFXO0VBQ1gscUJBQXFCO0VBQ3JCLGtCQUFrQjtFQUNsQixRQUFRO0VBQ1IsT0FBTztFQUNQLHNCQUFvQztFQUNwQyxpQ0FBK0M7RUFDL0Msb0NBQWtEO0VBQ2xELDBCQUEwQjtFQUMxQixnQjFCMDVCdUI7QXJGaWhuQi9COztBK0d6N29CQTs7RUFvQlEsVUFBVTtFQUNWLFFBQVE7RUFDUixjQUFjO0VBQ2QsdUJBQXFDO0VBQ3JDLDJCQUEyQjtBL0cwNm9CbkM7O0FnSG5rcEJBOzs7Ozs7aUZoSDJrcEJpRjtBOENua3BCakY7RWtFT0ksa0JBQWtCO0FoSCtqcEJ0Qjs7QThDNWpwQkE7RWtFRUksUUFBUTtFQUNSLGdCQUFnQjtFQUNoQixtQkFBbUI7QWhIOGpwQnZCOztBZ0h0anBCQTs7RUFLUSxrQkFBa0I7RUFDbEIsT0FBTztFQUNQLE1BQU07RUFDTixXQUFXO0VBQ1gsa0JBQWtCO0VBQ2xCLHFCM0IwZ0NtRDtBckY0aW5CM0Q7O0FnSGhrcEJBO0VBZVEsa0JBQWtCO0FoSHFqcEIxQjs7QWdIcGtwQkE7RUFvQlEseUJBQXlCO0FoSG9qcEJqQzs7QWdIeGtwQkE7RUEwQlEsV0FBVztFQUNYLFlBQVk7RUFDWixxQkFBcUI7QWhIa2pwQjdCOztBZ0g5a3BCQTtFQWdDWSxxQjNCeUVZO0FyRnkrb0J4Qjs7QWdIbGxwQkE7RUFxQ1ksV0FBVztFQUNYLFNBQVM7RXpGOURmLDRCeUYrRDBDO0FoSGlqcEJoRDs7QXVCM21wQkk7RXlGbUJKO0l6RmxCTSxnQkFBZ0I7RXZCK21wQnBCO0FBQ0Y7O0FnSDlscEJBOztFQWdEZ0IsU0FBUztFQUNULFNBQVM7QWhIbWpwQnpCOztBZ0hwbXBCQTtFQXNEZ0Isa0JBQWtCO0VBQ2xCLFNBQVM7QWhIa2pwQnpCOztBaUh2b3BCQTs7Ozs7O2lGakgrb3BCaUY7QStDL29wQmpGO0VrRVdDLG1CNUJ1SGtCO0FyRmdocEJuQjs7QWlIeG9wQkE7RUFNRSxhQUFhO0FqSHNvcEJmOztBaUhqb3BCQTtFQUNDLGdCQUFnQjtFQUNoQixlQUFlO0VBQ2YsZ0JBQWdCO0FqSG9vcEJqQjs7QWlIaG9wQkE7RUFDQyx1QjNCb0NpRDtBdEYrbHBCbEQ7O0FpSC9ucEJBO0VBQ0ksZ0IzQlUwQztBdEZ3bnBCOUM7O0FpSHpucEJBO0VBRUUsYUFBYTtFQUNiLHFCM0JxQitDO0UyQnBCL0MsMEI1QjFCZ0I7QXJGcXBwQmxCOztBaUh0bnBCQTtFQUlRLHFCM0JXeUM7QXRGMm1wQmpEOztBaUgxbnBCQTtFQVNFLGFBQWE7RUFDYiwwQjVCekNnQjtFNEIwQ2hCLDZCNUIxQ2dCO0FyRitwcEJsQjs7QWlIaG9wQkE7RUFnQkUsZ0JBQWdCO0FqSG9ucEJsQjs7QWlIcG9wQkE7RUFxQlEsY0FBYztFMUZuRWhCLGlDK0R1RHlDO0F0RmdvcEIvQzs7QXVCbHJwQkk7RTBGeUNKO0kxRnhDTSxnQkFBZ0I7RXZCc3JwQnBCO0FBQ0Y7O0FRdnJwQkU7RXlHa0VPLHFDNUJuRFM7QXJGNHFwQmxCOztBa0h2c3BCQTs7Ozs7O2lGbEgrc3BCaUY7QWdEM3NwQmpGO0VrRU9JLHNCN0JNYztFNkJMZCxzQzdCZWM7RTZCZGQsaUJBQWdDO0VBQ2hDLDRCQUE0QjtFckdUNUIsd0J3RWtPaUM7QXJGKytvQnJDOztBZ0QzcXBCQTtFa0V2QkksYUFBYTtFQUNiLG1CQUFtQjtFQUNuQixnQkFBZ0I7RUFDaEIsZUFBZTtFQUNmLDZCQUE2QjtFM0ZsQjNCLGlDK0R1RHlDO0F0RmtxcEIvQzs7QXVCcHRwQkk7RXlCZ0NKO0l6Qi9CTSxnQkFBZ0I7RXZCd3RwQnBCO0FBQ0Y7O0FnRDFycEJBO0VuQzdCSSx5QnFHZWdDO0VyR2RoQywwQnFHY2dDO0FsSDZzcEJwQzs7QWdEL3JwQkE7RW5DZkksNkJxR01tQztFckdMbkMsNEJxR0ttQztBbEg2c3BCdkM7O0FrSDV0cEJBO0VBMkJnQixpQ0FBa0M7RUFDbEMsc0JBQTRCO0FsSHFzcEI1Qzs7QWtIanVwQkE7RUFpQ2dCLGlDQUFrQztFQUNsQyw2QkFBOEI7QWxIb3NwQjlDOztBa0h0dXBCQTtFQXVDZ0IsNkJBQThCO0FsSG1zcEI5Qzs7QWdEbHRwQkE7RWtFdUJRLGU1Qm9DeUM7QXRGMnBwQmpEOztBa0gxcnBCQTtFQUNJLFNBQVM7RXJHbkVULGdCcUdvRXdCO0VWekR0QixnQlUwRHNCO0FsSDZycEI1Qjs7QWtIenJwQkE7RUFDSSxVQUFVO0VBQ1YsZ0JBQStCO0VBQy9CLHFCN0JrSjJCO0FyRjBpcEIvQjs7QWtIeHJwQkE7RUFDSSxVQUFVO0FsSDJycEJkOztBa0g1cnBCQTtFQUtRLHFCN0J5SXVCO0U2QnhJdkIsd0I3QndJdUI7RTZCdkl2QixtQjdCdUl1QjtBckZvanBCL0I7O0FrSGxzcEJBO0VBV1ksbUJBQW1CO0VyR2xGM0IsaUN3RXlOaUM7RXhFeE5qQyxrQ3dFd05pQztBckZzanBCckM7O0FrSHhzcEJBO0VyR3pESSxxQ3dFMk1pQztFeEUxTWpDLG9Dd0UwTWlDO0FyRjJqcEJyQzs7QWtIN3NwQkE7RUF3QlksMEM3QjVGTTtFNkI2Rk4sNkM3QjdGTTtBckZzeHBCbEI7O0FrSG5ycEJBO0VyRy9HSSx3QndFa09pQztBckZva3BCckM7O0FrSHZycEJBO0VBTVksK0I3QnpHTTtBckY4eHBCbEI7O0FRL3hwQkU7RTBHOEdjLG9DN0JuR0U7RTZCb0dGLFc3QjlHRTtBckZteXBCbEI7O0FrSGhzcEJBO0VBa0JRLFc3QnJIVTtBckZ1eXBCbEI7O0FrSHBzcEJBO0VBc0JZLG9DN0IvR007QXJGaXlwQmxCOztBa0h4c3BCQTtFQTRCWSwrQjdCL0hNO0U2QmdJTiw2QkFBNkI7QWxIZ3JwQnpDOztBa0g3c3BCQTtFQW1DUSwwQzdCdElVO0FyRm96cEJsQjs7QWlEbDBwQkU7RUFDRSxjNUIyRjhEO0U0QjFGOUQseUJtQ1FzQjtBcEY2enBCMUI7O0FRMXpwQkU7RXlDUE0sYzVCc0YwRDtFNEJyRjFELHlCQUF5QztBakRxMHBCakQ7O0FpRDUwcEJFO0VBV00sV29DR1U7RXBDRlYseUI1QmdGMEQ7RTRCL0UxRCxxQjVCK0UwRDtBckJzdnBCbEU7O0FpRGwxcEJFO0VBQ0UsYzVCMkY4RDtFNEIxRjlELHNCb0NlYztBckZzMHBCbEI7O0FRMTBwQkU7RXlDUE0sYzVCc0YwRDtFNEJyRjFELHlCQUF5QztBakRxMXBCakQ7O0FpRDUxcEJFO0VBV00sV29DR1U7RXBDRlYseUI1QmdGMEQ7RTRCL0UxRCxxQjVCK0UwRDtBckJzd3BCbEU7O0FpRGwycEJFO0VBQ0UsYzVCMkY4RDtFNEIxRjlELHlCbUM0QnNCO0FwRnkwcEIxQjs7QVExMXBCRTtFeUNQTSxjNUJzRjBEO0U0QnJGMUQseUJBQXlDO0FqRHEycEJqRDs7QWlENTJwQkU7RUFXTSxXb0NHVTtFcENGVix5QjVCZ0YwRDtFNEIvRTFELHFCNUIrRTBEO0FyQnN4cEJsRTs7QWlEbDNwQkU7RUFDRSxjNUIyRjhEO0U0QjFGOUQseUJtQ2dEbUI7QXBGcTBwQnZCOztBUTEycEJFO0V5Q1BNLGM1QnNGMEQ7RTRCckYxRCx5QkFBeUM7QWpEcTNwQmpEOztBaUQ1M3BCRTtFQVdNLFdvQ0dVO0VwQ0ZWLHlCNUJnRjBEO0U0Qi9FMUQscUI1QitFMEQ7QXJCc3lwQmxFOztBaURsNHBCRTtFQUNFLGM1QjJGOEQ7RTRCMUY5RCx5Qm1DdUlxQjtBcEY4dnBCekI7O0FRMTNwQkU7RXlDUE0sYzVCc0YwRDtFNEJyRjFELHlCQUF5QztBakRxNHBCakQ7O0FpRDU0cEJFO0VBV00sV29DR1U7RXBDRlYseUI1QmdGMEQ7RTRCL0UxRCxxQjVCK0UwRDtBckJzenBCbEU7O0FpRGw1cEJFO0VBQ0UsYzVCMkY4RDtFNEIxRjlELHlCbUNrQnFCO0FwRm00cEJ6Qjs7QVExNHBCRTtFeUNQTSxjNUJzRjBEO0U0QnJGMUQseUJBQXlDO0FqRHE1cEJqRDs7QWlENTVwQkU7RUFXTSxXb0NHVTtFcENGVix5QjVCZ0YwRDtFNEIvRTFELHFCNUIrRTBEO0FyQnMwcEJsRTs7QWlEbDZwQkU7RUFDRSxjNUIyRjhEO0U0QjFGOUQseUJvQ2NpQjtBckZ1NXBCckI7O0FRMTVwQkU7RXlDUE0sYzVCc0YwRDtFNEJyRjFELHlCQUF5QztBakRxNnBCakQ7O0FpRDU2cEJFO0VBV00sV29DR1U7RXBDRlYseUI1QmdGMEQ7RTRCL0UxRCxxQjVCK0UwRDtBckJzMXBCbEU7O0FpRGw3cEJFO0VBQ0UsYzVCMkY4RDtFNEIxRjlELHlCbUNxS29CO0FwRmd4cEJ4Qjs7QVExNnBCRTtFeUNQTSxjNUJzRjBEO0U0QnJGMUQseUJBQXlDO0FqRHE3cEJqRDs7QWlENTdwQkU7RUFXTSxXb0NHVTtFcENGVix5QjVCZ0YwRDtFNEIvRTFELHFCNUIrRTBEO0FyQnMycEJsRTs7QW1IcjhwQkE7Ozs7OztpRm5INjhwQmlGO0FrRDc4cEJqRjtFaUVVSSxlQUFlO0VBQ2YsWUFBWTtFNUZMViw4RCtEdUR5QztBdEZxNXBCL0M7O0F1QnY4cEJJO0UyQlhKO0kzQllNLGdCQUFnQjtFdkIyOHBCcEI7QUFDRjs7QVF4OHBCRTtFMkdBTSxVQUFVO0VBQ1YsVUFBVTtBbkg0OHBCbEI7O0FvSDc5cEJBOzs7Ozs7aUZwSHErcEJpRjtBb0QxMXBCakY7RWdFaklJLGtCQUFrQjtFdkdJbEIsaUN1R0htRjtFdkdJbkYsa0N1R0ptRjtBcEgrOXBCdkY7O0FvRC8xcEJBO0VnRTVIUSxjQUFjO0FwSCs5cEJ0Qjs7QW9IcitwQkE7RUFZUSxpQkFBaUI7RUFDakIsc0JBQXNCO0FwSDY5cEI5Qjs7QW9IeDlwQkE7RUFLUSxjQUFjO0VBQ2QsbUJBQW1CO0FwSHU5cEIzQjs7QUFFQTs7RW9IbjlwQlEscUIvQjRMdUI7RStCM0x2QixzQi9CbkJVO0FyRnkrcEJsQjs7QWlCbDhwQkk7RW1HWkE7SUFDSSxnQi9CKzlCaUM7RXJGbS9uQnZDO0VvSDk4cEJFO0lBQ0ksYy9CMjlCK0I7SStCMTlCL0IsZUFBNkM7SUFDN0MsZ0JBQThDO0VwSGc5cEJwRDtBQUNGOztBcUh6Z3FCQTs7Ozs7O2lGckhpaHFCaUY7QXFIbmdxQmpGO0VBRVEseUJBQXlCO0FySG9ncUJqQzs7QXFILy9wQkE7RUFFUSwyQkFBMkI7QXJIaWdxQm5DOztBcUg1L3BCQTtFQUVRLDRCQUE0QjtBckg4L3BCcEM7O0FxSHovcEJBO0VBRVEsMEJBQTBCO0FySDIvcEJsQzs7QXNIaGlxQkE7Ozs7OztpRnRId2lxQmlGO0F1RGg1cEJqRjtFK0Q5SUksZ0JqQ2tSNEI7RWlDalI1QixpQkFBaUI7RUFDakIsc0JBQXNCO0F0SGlpcUIxQjs7QXNIcGlxQkE7RUFPUSxvQkFBK0M7RUFDL0MsdUJBQWtEO0VBQ2xELHdCakNpTnVCO0FyRmcxcEIvQjs7QXNIdmhxQkE7RUFTZ0IseUJBQXlCO0F0SGtocUJ6Qzs7QXNIM2dxQkE7RUFTZ0IsMkJBQTJCO0F0SHNncUIzQzs7QXNILy9wQkE7RUFTZ0IsNEJBQTRCO0F0SDAvcEI1Qzs7QXNIbi9wQkE7RUFTZ0IsMEJBQTBCO0F0SDgrcEIxQzs7QXVIbmtxQkE7Ozs7OztpRnZIMmtxQmlGO0F3SDNrcUJqRjs7Ozs7O2lGeEhrbHFCaUY7QUFDakY7RXdIemtxQkksV25DT2M7QXJGb2txQmxCOztBeUhybHFCQTs7Ozs7O2lGekg2bHFCaUY7QWlGN2xxQmpGOzs7Ozs7Ozs7Ozs7OztpRmpGNG1xQmlGO0FrRjVtcUJqRjs7Ozs7O2lGbEZtbnFCaUY7QW1Gbm5xQmpGOzs7Ozs7aUZuRjBucUJpRjtBb0YxbnFCakY7Ozs7OztpRnBGaW9xQmlGO0FxRmpvcUJqRjs7Ozs7Ozs7aUZyRjBvcUJpRjtBc0Yxb3FCakY7Ozs7Ozs7aUZ0RmtwcUJpRjtBdUZscHFCakY7Ozs7OztpRnZGeXBxQmlGO0F3RnpwcUJqRjs7Ozs7O2lGeEZncXFCaUY7QXlGaHFxQmpGOzs7Ozs7aUZ6RnVxcUJpRjtBMEZ2cXFCakY7Ozs7OztpRjFGOHFxQmlGO0EyRjlxcUJqRjs7Ozs7O2lGM0ZxcnFCaUY7QTRGcnJxQmpGOzs7Ozs7aUY1RjRycUJpRjtBMEg1cnFCakY7Ozs7OztpRjFIbXNxQmlGO0FLM3FxQmpGO0VxSGRJLGFBQWE7RUFDYixzQkFBc0I7QTFINHJxQjFCOztBSzFwcUJBO0VxSDdCSSxpQkFBaUI7RUFDakIsYUFBYTtFQUNiLHNCQUFzQjtFQUN0QixPQUFPO0ExSDJycUJYOztBMEh2cnFCQTtFQUNJLGFBQWE7RUFDYixZQUFZO0ExSDBycUJoQjs7QTBIdHJxQkE7RUFDSSxhQUFhO0VBQ2Isc0JBQXNCO0VBQ3RCLE9BQU87RUFDUCxjQUFjO0ExSHlycUJsQjs7QTBIcnJxQkE7RUFDSSx3QnJDcUwrQjtFcUNwTC9CLFlBQVk7QTFId3JxQmhCOztBeUQ5dHFCRTtFQUNFLGNBQWM7RUFDZCxXQUFXO0VBQ1gsV0FBVztBekRpdXFCZjs7QTJIcnVxQkE7Ozs7OztpRjNINnVxQmlGO0EySHB1cUJqRjtFQUNJLGVBQWlDO0VBQ2pDLGtCQUFrQjtBM0hzdXFCdEI7O0EySHh1cUJBO0VBTVEscUJBQXFCO0VBQ3JCLHFCdEN1SGdCO0FyRittcUJ4Qjs7QTJIN3VxQkE7RUFXWSxZQUFZO0VBQ1osc0JBQTJDO0EzSHN1cUJ2RDs7QTJIbHZxQkE7RUFpQlksY0FBYztBM0hxdXFCMUI7O0EySHR2cUJBO0VBb0JnQixhQUFhO0EzSHN1cUI3Qjs7QTJIMXZxQkE7O0VBNEJRLHFCQUE0RDtBM0htdXFCcEU7O0EySC92cUJBO0VBaUNRLFNBQVM7QTNIa3VxQmpCOztBMkg3dHFCQTtFQUNJLGtCQUFrQjtFQUNsQixrQnRDMEsrQjtBckZzanFCbkM7O0EySGx1cUJBO0VBTVEsYUFBYTtBM0hndXFCckI7O0EySHR0cUJBO0VBQ0ksc0J0Qy9DYztFc0NnRGQsNkJ0QzVDYztBckZxd3FCbEI7O0EySDN0cUJBO0VBTVEsc0RBQWlCO0EzSHl0cUJ6Qjs7QTJIcHRxQkE7RUFDSSx5QnJDK0NnRDtFcUM5Q2hELFd0QzNEYztFc0M0RGQsc0J0Q3FEZTtBckZrcXFCbkI7O0EySDF0cUJBOzs7O0VBWVksK0J0Q3JFTTtBckYweHFCbEI7O0FRM3hxQkU7OztFbUg0RWMsV3RDM0VFO0VzQzRFRixVQUFVO0EzSHF0cUIxQjs7QTJIeHVxQkE7O0VBeUJZLCtCdENsRk07QXJGc3lxQmxCOztBMkg3dXFCQTtFQStCUSw2Q0FBaUI7RUFDakIsc0JBQXNCO0EzSGt0cUI5Qjs7QTRINXpxQkE7Ozs7OztpRjVIbzBxQmlGO0E0SHZ6cUJqRjtFQUNDLGNBQWM7RUFDZCxnQjFDd0VzRDtFMEN2RXRELGF2Q2lzQjhCO0FyRnducEIvQjs7QTRINXpxQkE7RUFPRSxlQUFlO0VBQ2YsTUFBTTtFQUNOLFNBQVM7RUFDVCx1QkFBdUI7RXJHakJuQixpQytEdUR5QztBdEZveHFCL0M7O0F1QnQwcUJJO0VxR0VKO0lyR0RNLGdCQUFnQjtFdkIwMHFCcEI7QUFDRjs7QTRIM3pxQkU7OztFQUlDLGlCQUFpQztBNUg2enFCcEM7O0E0SHh6cUJFOztFQUdDLGtCQUFrQztBNUgwenFCckM7O0E0SHIxcUJBO0VBaUNFLFdBQVc7QTVId3pxQmI7O0E0SG56cUJBO0VBRUUsZUFBZTtFQUNmLGVBQTBEO0VBQzFELFNBQVM7RUFDVCxjQUFjO0VBQ2Qsa0JBQWtCO0VBQ2pCLGlDQUFpQztFckdwRDlCLDJEK0R1RHlDO0F0Rm16cUIvQzs7QXVCcjJxQkk7RXFHd0NKO0lyR3ZDTSxnQkFBZ0I7RXZCeTJxQnBCO0FBQ0Y7O0E0SHh6cUJFO0VBQ0MsZUFBNkQ7QTVIMnpxQmhFOztBNEh2enFCRTtFQUNDLGVBQTZEO0E1SDB6cUJoRTs7QTRIL3lxQkE7RUFFRSw4Q3RDb0d5RTtBdEY2c3FCM0U7O0E0SG56cUJBOztFQU1HLE9BQU87QTVIa3pxQlY7O0E0SDV5cUJBO0VBRUUsOEN0Q3dGeUU7QXRGc3RxQjNFOztBNEhoenFCQTs7RUFNRyxPQUFPO0E1SCt5cUJWOztBNEh6eXFCQTtFQUVFLGNBQWM7RUFDZCwrQ3RDOEUwRTtBdEY2dHFCNUU7O0E0SDl5cUJBOztFQU9HLFFBQVE7QTVINHlxQlg7O0E0SHR5cUJBO0VBRUUsY0FBYztBNUh3eXFCaEI7O0E0SDl4cUJBO0VBQ0Msc0JBQXNCO0E1SGl5cUJ2Qjs7QTRIbHlxQkE7RUFNRyxtQnRDbUUrQztBdEY2dHFCbEQ7O0E0SHR5cUJBO0VBU0csc0J0Q2dFK0M7QXRGaXVxQmxEOztBNEgxeXFCQTtFQWVFLGtCdEM4RDZDO0F0Rml1cUIvQzs7QTRIOXlxQkE7RUFrQkcsZ0JBQWdCO0E1SGd5cUJuQjs7QTRIbHpxQkE7RUF3QkUsZ0J2Q29JOEI7QXJGMHBxQmhDOztBNEh0enFCQTtFQTZCRSxrQkFBa0I7RUFDbEIsYUFBYTtFQUNiLHVCQUF1QjtFQUN2Qix3QnRDNENpRDtFL0R0TTdDLHVFK0R1RHlDO0F0Rmk0cUIvQzs7QXVCbjdxQkk7RXFHcUhKO0lyR3BITSxnQkFBZ0I7RXZCdTdxQnBCO0FBQ0Y7O0E0SHAwcUJBO0VBcUNHLHFCdEN1Q2dEO0VzQ3RDaEQsc0JBQXlEO0VBQ3pELHlCQUE0RDtFQUM1RCxNQUFNO0E1SG15cUJUOztBNEgzMHFCQTtFckcxSE0sOEUrRHVEeUM7QXRGazVxQi9DOztBdUJwOHFCSTtFcUdxSEo7SXJHcEhNLGdCQUFnQjtFdkJ3OHFCcEI7QUFDRjs7QVE5N3FCRTtFb0g2SkUsNkJBQTZCO0VBQzdCLFl0QzBCMkM7QXRGMndxQi9DOztBNEgxMXFCQTtFQTRERSx3QnRDZ0JpRDtFc0NmakQsa0J0Q1lnRDtBdEZzeHFCbEQ7O0E0SC8xcUJBO0VBaUVHLGFBQWE7QTVIa3lxQmhCOztBNEhuMnFCQTtFQXVFRSxnQkFBK0I7RUFDL0IsV0FBVztBNUhneXFCYjs7QTRIM3hxQkE7RUFFRSxzQkFBcUU7QTVINnhxQnZFOztBNEgveHFCQTtFQU9JLGdCQUFnQjtFQUtkLHNCdENqSzZDO0VzQ2tLN0MscUJBQXFCO0VBQ3JCLGV0Q2xLd0M7RXNDbUt4QyxzQkFBc0I7RUFDdEIsY0FBYztFQUNkLGtCQUFrQjtFQUNyQixZdENwQmdEO0VzQ3FCaEQsc0JBQXlEO0VBQ3RELGN0Q3JCNkM7RS9EdE03Qyx1Q3FHNE4rQztFekNwTmpELG1DQUFtQztFQUNuQyxrQ0FBa0M7QW5GNitxQnRDOztBdUJqL3FCSTtFcUdrTUo7SXJHak1NLGdCQUFnQjtFdkJxL3FCcEI7QUFDRjs7QTRIcnpxQkE7RUE2Qkcsd0JBQXdCO0E1SDR4cUIzQjs7QTRIdHhxQkE7RUFDQyxhQUFhO0E1SHl4cUJkOztBNEgxeHFCQTtFQUtFLHlDQUE0STtBNUh5eHFCOUk7O0E0SDl4cUJBO0VBV0cscUJBQWtFO0E1SHV4cUJyRTs7QTRIbHlxQkE7RUFpQkksa0JBQWtFO0E1SHF4cUJ0RTs7QTRIdHlxQkE7RUF5QkcsYXRDeERpRDtBdEZ5MHFCcEQ7O0E0SDV3cUJDO0VBQ0MsY0FBYztBNUgrd3FCaEI7O0E0SDF3cUJBOztFQUdFLGNBQWM7QTVINHdxQmhCOztBNEgvd3FCQTtFQVNHLHdCQUF3QjtBNUgwd3FCM0I7O0E0SDl2cUJDO0VBRUUscUJBQXdGO0E1SGd3cUIzRjs7QTRIbHdxQkM7RUFLRyxrQkFBa0I7RUFDbEIsWXRDcEcrQztFc0NxRy9DLGN0Q3BHK0M7RXNDcUcvQyxlQUFlO0E1SGl3cUJuQjs7QTRIendxQkM7RUFjRyxxQkFBOEY7QTVIK3ZxQmxHOztBNEg3d3FCQztFQWlCSSxjQUFnRTtBNUhnd3FCckU7O0E0SGp4cUJDO0VBd0JHLG9CQUE4QztBNUg2dnFCbEQ7O0E0SHJ4cUJDO0VBMkJJLGF0Q25IK0M7QXRGaTNxQnBEOztBNEh6eHFCQztFQWlDSSxxQkFBOEM7QTVINHZxQm5EOztBNEg3eHFCQztFQXNDSyxrQkFBOEM7QTVIMnZxQnBEOztBNEhqdnFCQztFQUdHLGdCQUFnQjtBNUhrdnFCcEI7O0E0SDl1cUJFO0VBQ0MsY0FBYztBNUhpdnFCakI7O0E0SGx2cUJFOztFQUtFLGFBQWE7QTVIa3ZxQmpCOztBNEgvdXFCRTtFQUNDLGlCQUFpQjtBNUhrdnFCcEI7O0E0SG52cUJFOztFQUtFLGdCQUFnQjtBNUhtdnFCcEI7O0E0SC91cUJFO0VBRUUsOEN2Q2xXYztBckZtbHJCbEI7O0E0SG52cUJFO0VBS0csaUR2Q3JXYTtBckZ1bHJCbEI7O0E0SHZ2cUJFO0VBVUUsb0N2Q2hXYztFdUNpV2QsOEN2QzNXYztFdUM0V2QsU0FBUztBNUhpdnFCYjs7QTRIN3VxQkU7RUFFRSwwQnZDL1djO0FyRjhsckJsQjs7QTRIanZxQkU7RUFLRyw2QnZDbFhhO0FyRmttckJsQjs7QTRIcnZxQkU7RUFVRSx5QnZDelhpQjtFdUMwWGpCLDBCdkN4WGM7RXVDeVhkLFNBQVM7QTVIK3VxQmI7O0E0SG51cUJBO0VBQ0MsYUFBYTtFQUNiLDhCQUE4QjtFQUM5QixtQkFBbUI7RUFDaEIsaUNBQWtEO0VBQ2xELG9DQUFxRDtBNUhzdXFCekQ7O0E0SDN1cUJBO0VBU0UseUJ0Q3ROaUQ7RS9EdE03QyxpQytEdUR5QztBdEY0a3JCL0M7O0F1QjluckJJO0VxRzhZSjtJckc3WU0sZ0JBQWdCO0V2QmtvckJwQjtBQUNGOztBNEh6dXFCRTtFQUNDLHFCdEMzTmdEO0F0RnU4cUJuRDs7QTRIMXVxQkU7RUFDQyx3QnRDOU5nRDtBdEYyOHFCbkQ7O0E0SHZ1cUJBO0VBR0csYUFBYTtBNUh3dXFCaEI7O0E0SHB1cUJFO0VBRUUsYUFBYTtBNUhzdXFCakI7O0E0SHh1cUJFO0VBS0UscUJBQXFCO0E1SHV1cUJ6Qjs7QTRIdnRxQkE7RUFDQyx5QnhDNVJ3QjtFd0M2UnhCLFd2QzdiaUI7QXJGdXByQmxCOztBNEg1dHFCQTtFQU1FLCtCdkNqY2dCO0V1Q2tjaEIsNkN2Q2xjZ0I7QXJGNHByQmxCOztBNEhqdXFCQTtFQVdHLHlCdEM1U2tFO0F0RnNnckJyRTs7QTRIcnVxQkE7RUFnQkcsK0J2QzNjZTtBckZvcXJCbEI7O0FRenFyQkU7RW9Ib2RFLFd2Qy9jYztFdUNnZGQsNkJ0Q3BUZ0Q7QXRGNmdyQnBEOztBNEg5dXFCQTtFQTRCRSxzQ3ZDdmRnQjtBckY2cXJCbEI7O0E0SGp0cUJBOztFQU1HLCtCdkNsZWU7QXJGa3JyQmxCOztBUXZyckJFOztFb0g0ZUcsV3ZDdmVhO0V1Q3dlYixxQ3ZDOWRhO0FyRjhxckJsQjs7QTRINXRxQkE7O0VBbUJHLHFDdkNyZWU7RXVDc2VmLFd2Q2hmZTtBckY4cnJCbEI7O0E0SGx1cUJBOzs7O0VBMEJHLHFDdkM1ZWU7RXVDNmVmLFd2Q3ZmZTtBckZzc3JCbEI7O0E0SDF1cUJBOzs7O0VBaUNHLHlCeENwWnFCO0V3Q3FackIsV3ZDOWZlO0FyRjhzckJsQjs7QTRIbHZxQkE7O0VBdUNHLCtCdkNuZ0JlO0FyRm10ckJsQjs7QTRIdnZxQkE7O0VBNENHLDBDdkN4Z0JlO0FyRnd0ckJsQjs7QTRINXZxQkE7O0VBaURHLHFDdkNuZ0JlO0FyRm10ckJsQjs7QTRIenNxQkE7Ozs7RUFLRyxvQ0FBMEQ7QTVIMnNxQjdEOztBNEhyc3FCQTtFQUNDLHNCdkNoaUJpQjtFdUNpaUJqQixXdkN4aEJpQjtFdUN5aEJqQiw0Q3ZDeGhCaUI7RXVDeWhCakIsNEJBQTRCO0E1SHdzcUI3Qjs7QTRINXNxQkE7RUFRRSxlQUFlO0VBQ2YsMkN2QzloQmdCO0FyRnN1ckJsQjs7QTRIanRxQkE7RUFpQkcsNkJ2Q3ZpQmU7QXJGMnVyQmxCOztBUXp2ckJFO0VvSDBqQkcsV3ZDNWlCYTtFdUM2aUJiLHlCdkNwakJnQjtBckZ1dnJCckI7O0E0SDF0cUJBO0VBOEJHLHlCdkMzakJrQjtFdUM0akJsQixXdkNyakJlO0FyRnF2ckJsQjs7QTRIL3RxQkE7O0VBcUNHLHlCdkNsa0JrQjtFdUNta0JsQixXdkM1akJlO0FyRjJ2ckJsQjs7QTRIcnVxQkE7O0VBNENHLHlCdkN6a0JrQjtFdUMwa0JsQixXdkNua0JlO0FyRml3ckJsQjs7QTRIM3VxQkE7RUFrREcsNEJ2Q3hrQmU7QXJGcXdyQmxCOztBNEgvdXFCQTtFQXVERyxzQ3ZDNWtCZTtBckZ3d3JCbEI7O0E0SG52cUJBO0VBNERHLDZCdENuWW9EO0F0RjhqckJ2RDs7QTRIdnZxQkE7RUFrRUUsNEJ2Q3hsQmdCO0V1Q3lsQmhCLHlDdkN4bEJnQjtBckZpeHJCbEI7O0E0SDV2cUJBO0VBdUVHLDRCdEN6ZG1FO0F0RmtwckJ0RTs7QTRIaHdxQkE7RUE0RUcsNEJ2Q2xtQmU7QXJGMHhyQmxCOztBUXh5ckJFO0VvSG9uQkUsV3ZDdG1CYztFdUN1bUJkLDZCdENqZWdEO0F0RnlwckJwRDs7QTRIendxQkE7RUF1RkcsK0J2Q3RuQmU7RXVDdW5CZiw2Q3ZDdm5CZTtBckY2eXJCbEI7O0E0SDl3cUJBO0VBNEZJLCtCdkMzbkJjO0FyRml6ckJsQjs7QVF0enJCRTtFb0hvb0JHLFd2Qy9uQmE7RXVDZ29CYiw2QnRDcGUrQztBdEYwcHJCcEQ7O0E0SHB6ckJFO0VBMm9CRCxhQUFhO0VBQ2IsV0FBVztFQUNYLDZCQUE2QjtFL0czcEIxQix3QndFa09pQztFbUJ2Ti9CLHlDbkJXWTtBckZvenJCbEI7O0E0SGxycUJBO0VBU0Usc0N2Q3JwQmdCO0FyRmswckJsQjs7QTRIdHJxQkE7RUFjRSxrQ3ZDaHBCZ0I7QXJGNHpyQmxCOztBaUIzeHJCSTtFMkd3bkJKO0lBS0csYXRDbmlCcUU7RXRGc3NyQnRFO0U0SHhxcUJGO0lBVVcsbUJBQW1CO0U1SGlxcUI1QjtFNEgzcXFCRjs7SUFpQkksYUFBYTtFNUg4cHFCZjtFNEgvcXFCRjtJQXdCTSx1QkFBOEU7SUFDOUUsMEJBQWlGO0U1SDBwcUJyRjtFNEhucnFCRjtJQThCTSx1QkFBOEU7SUFDOUUsMEJBQWlGO0U1SHdwcUJyRjtFNEh2cnFCRjtJQXlDSyxrQkFBa0I7SUFDbEIsU0FBUztFNUhpcHFCWjtFNEgzcnFCRjtJQThDTSx1QkFBdUI7SUFDdkIsZUFBZTtJQUNmLGdCQUFnQjtFNUhncHFCcEI7RTRIaHNxQkY7SUFvRE8sZ0JBQWdCO0lBQ2hCLGNBQWM7SUFDZCxlQUFlO0lBQ2YsY0FBYztJQUNkLG1CdEMvaEJ3QztFdEY4cXJCN0M7RTRIdnNxQkY7SUE2RE8sYUFBYTtFNUg2b3FCbEI7RTRIMXNxQkY7SUF3RU8seUJBQXdCO0U1SHFvcUI3QjtFNEg3c3FCRjtJQThFTSxrQkFBa0I7SUFDbEIsWXRDMWpCNEM7SXNDMmpCNUMsaUIxQzdxQmlEO0kwQzhxQmpELGdCMUM5cUJpRDtJMEMrcUJqRCxhQUFhO0lBQ2IsYXZDeER5QjtJbUIvckJ6QiwrQ25CV1k7SXhFTmQsa0N3RWtOaUM7SXhFak5qQyxxQ3dFaU5pQztFckZxcXJCbkM7RTRIeHRxQkY7SUEwRlEsaUNBQWlDO0lBQ2pDLGNBQWM7SUFDZCx3QnRDcGtCMkM7SXNDcWtCM0MsaUJBQWlCO0lBQ2pCLGtCdEN6a0IwQztJc0Mwa0IxQyxZdENqa0J1QztFdEZrc3JCN0M7RTRIaHVxQkY7SUF1R08sYUFBYTtFNUg0bnFCbEI7RTRIbnVxQkY7SUErR00scUJ0Q3ZsQjZDO0V0RjhzckJqRDtFNEh0dXFCRjtJQXFITyxxQkFBNEQ7RTVIb25xQmpFO0U0SHp1cUJGO0lBMkhRLG9CQUFrRTtFNUhpbnFCeEU7RTRINXVxQkY7SUFtSUssVUFBVTtJQUNWLGtCQUFrQjtFNUg0bXFCckI7RTRIaHZxQkY7SUF3SU0sY0FBYztJQUNkLE1BQU07SUFDTix3QnRDbG5CNkM7SXNDbW5CN0Msc0JBQTJEO0lBQzNELHlCQUE4RDtFNUgybXFCbEU7RTRIdnZxQkY7SUFpSk0sYUFBYTtFNUh5bXFCakI7RTRIMXZxQkY7SUF1Skssd0JBQXVCO0U1SHNtcUIxQjtFNEg3dnFCRjs7O0lBK0pPLHdCQUF1QjtFNUhtbXFCNUI7RTRIbHdxQkY7SUEwS0ssZUFBZTtJQUNmLGdCQUFnQjtFNUgybHFCbkI7RTRIdHdxQkY7SUFnTEssdUJBQXVCO0U1SHlscUIxQjtFNEh6d3FCRjtJQXFMTyx3QkFBdUI7RTVIdWxxQjVCO0U0SDV3cUJGO0lBMExPLG9CQUFtQjtFNUhxbHFCeEI7RTRIL3dxQkY7SUFvTUssb0JBQW1CO0lBQ25CLFNBQVM7RTVIOGtxQlo7RTRIbnhxQkY7SUFtTk8sV3ZDdDNCVztJdUN1M0JYLHFDdkM3MkJXO0VyRmc3ckJoQjtFNEh2eHFCRjtJQTBOTyx5QnRDOXRCK0Q7SXNDK3RCL0QsK0N2QzkzQlc7RXJGODdyQmhCO0U0SDN4cUJGO0lBc09PLFd2Q2g0Qlc7SXVDaTRCWCx5QnZDeDRCYztFckZnOHJCbkI7RTRIL3hxQkY7SUE2T08seUJ0Qzl2QitEO0lzQyt2Qi9ELHNDdkN2NEJXO0VyRjQ3ckJoQjtFNEhueXFCRjtJQTRQRyxhdkMvTjRCO0VyRnl3cUI3QjtFNEh0eXFCRjtJQWtRTSxlQUFlO0lBQ2YsWXRDanlCa0U7SXNDa3lCbEUsZUFBMEQ7SUFDMUQsU0FBUztJQUNULGdCMUNuMkJpRDtJMENvMkJqRCxnQkFBZ0I7SS9HdDdCbEIsZ0IrR3U3QjBCO0U1SHVpcUI1QjtFNEgveXFCRjtJQW9STyxlQUE2RDtFNUg4aHFCbEU7RTRIbHpxQkY7SUErUk8sZUFBNkQ7RTVIc2hxQmxFO0FBQ0Y7O0FpQjk2ckJJO0UyRzQ2QkQ7SUFLRSxXdENoekJzQztJc0NpekJ0QyxnQnRDMXpCd0M7RXRGNHpyQjNDO0U0SHhncUJDO0lBVUcsT0FBTztFNUhpZ3FCWDtFNEgzZ3FCQztJQWNFLFd0Q3p6QnNDO0lzQzB6QnRDLGdCdENuMEJ3QztFdEZtMHJCM0M7RTRIL2dxQkM7SUFtQkcsT0FBTztFNUgrL3BCWDtFNEhsaHFCQztJQXVCRSxXdENsMEJzQztJc0NtMEJ0QyxnQnRDejBCd0M7RXRGdTByQjNDO0U0SHRocUJDO0lBNEJHLFFBQVE7RTVINi9wQlo7RTRIemhxQkM7SUFnQ0UsV3RDMzBCc0M7RXRGdTByQnpDO0U0SDVocUJDO0lBcUNFLGdCQUFnQjtJckd2Z0NmLGdCcUd3Z0N1QjtFNUgwL3BCM0I7QUFDRjs7QXVCOS9yQkk7RXFHNjlCRDtJckc1OUJHLGdCQUFnQjtFdkJrZ3NCcEI7QUFDRjs7QWlCbjlyQkk7RTJHNDZCRDtJQTBDRyxnQkFBZ0I7SUFDaEIsaUJBQWlCO0lBQ2pCLFdBQVc7RTVIa2dxQmY7RTRIOWlxQkM7SUFrREUsK0N2Q3pnQ2E7RXJGd2dzQmhCO0U0SGpqcUJDO0lBdURFLGFBQWE7RTVINi9wQmhCO0U0SHBqcUJDO0lBNERFLGdCMUM3OEJrRDtFbEZ3OHJCckQ7RTRIdi9wQkU7Ozs7SUFJQyxhQUFhO0U1SHkvcEJoQjtFNEg3anFCQztJQXlFRSxhQUFhO0U1SHUvcEJoQjtFNEhwL3BCRztJQUNDLGNBQWM7RTVIcy9wQmxCO0U0SG5rcUJDO0lBbUZFLGNBQWM7SUFDZCxnQjFDcitCa0Q7RWxGdzlyQnJEO0U0SHZrcUJDO0lBd0ZHLHFCdkNyMkI2QjtFckZ1MXJCakM7RTRIMWtxQkM7SUE2Rkcsb0J2QzEyQjZCO0VyRjAxckJqQztBQUNGOztBaUI3K3JCSTtFMkcrNUJEO0lBb0dFLFNBQVM7RTVIKytwQlo7QUFDRjs7QWlCaGdzQkk7RTJHNDZCRDtJQUtFLFd0Q2h6QnNDO0lzQ2l6QnRDLGdCdEMxekJ3QztFdEY4NHJCM0M7RTRIMWxxQkM7SUFVRyxPQUFPO0U1SG1scUJYO0U0SDdscUJDO0lBY0UsV3RDenpCc0M7SXNDMHpCdEMsZ0J0Q24wQndDO0V0RnE1ckIzQztFNEhqbXFCQztJQW1CRyxPQUFPO0U1SGlscUJYO0U0SHBtcUJDO0lBdUJFLFd0Q2wwQnNDO0lzQ20wQnRDLGdCdEN6MEJ3QztFdEZ5NXJCM0M7RTRIeG1xQkM7SUE0QkcsUUFBUTtFNUgra3FCWjtFNEgzbXFCQztJQWdDRSxXdEMzMEJzQztFdEZ5NXJCekM7RTRIOW1xQkM7SUFxQ0UsZ0JBQWdCO0lyR3ZnQ2YsZ0JxR3dnQ3VCO0U1SDRrcUIzQjtBQUNGOztBdUJobHNCSTtFcUc2OUJEO0lyRzU5QkcsZ0JBQWdCO0V2Qm9sc0JwQjtBQUNGOztBaUJyaXNCSTtFMkc0NkJEO0lBMENHLGdCQUFnQjtJQUNoQixpQkFBaUI7SUFDakIsV0FBVztFNUhvbHFCZjtFNEhob3FCQztJQWtERSwrQ3ZDemdDYTtFckYwbHNCaEI7RTRIbm9xQkM7SUF1REUsYUFBYTtFNUgra3FCaEI7RTRIdG9xQkM7SUE0REUsZ0IxQzc4QmtEO0VsRjBoc0JyRDtFNEh6a3FCRTs7OztJQUlDLGFBQWE7RTVIMmtxQmhCO0U0SC9vcUJDO0lBeUVFLGFBQWE7RTVIeWtxQmhCO0U0SHRrcUJHO0lBQ0MsY0FBYztFNUh3a3FCbEI7RTRIcnBxQkM7SUFtRkUsY0FBYztJQUNkLGdCMUNyK0JrRDtFbEYwaXNCckQ7RTRIenBxQkM7SUF3RkcscUJ2Q3IyQjZCO0VyRnk2ckJqQztFNEg1cHFCQztJQTZGRyxvQnZDMTJCNkI7RXJGNDZyQmpDO0FBQ0Y7O0FpQi9qc0JJO0UyRys1QkQ7SUFvR0UsU0FBUztFNUhpa3FCWjtBQUNGOztBaUJsbHNCSTtFMkc0NkJEO0lBS0UsV3RDaHpCc0M7SXNDaXpCdEMsZ0J0QzF6QndDO0V0RmcrckIzQztFNEg1cXFCQztJQVVHLE9BQU87RTVIcXFxQlg7RTRIL3FxQkM7SUFjRSxXdEN6ekJzQztJc0MwekJ0QyxnQnRDbjBCd0M7RXRGdStyQjNDO0U0SG5ycUJDO0lBbUJHLE9BQU87RTVIbXFxQlg7RTRIdHJxQkM7SUF1QkUsV3RDbDBCc0M7SXNDbTBCdEMsZ0J0Q3owQndDO0V0RjIrckIzQztFNEgxcnFCQztJQTRCRyxRQUFRO0U1SGlxcUJaO0U0SDdycUJDO0lBZ0NFLFd0QzMwQnNDO0V0RjIrckJ6QztFNEhoc3FCQztJQXFDRSxnQkFBZ0I7SXJHdmdDZixnQnFHd2dDdUI7RTVIOHBxQjNCO0FBQ0Y7O0F1Qmxxc0JJO0VxRzY5QkQ7SXJHNTlCRyxnQkFBZ0I7RXZCc3FzQnBCO0FBQ0Y7O0FpQnZuc0JJO0UyRzQ2QkQ7SUEwQ0csZ0JBQWdCO0lBQ2hCLGlCQUFpQjtJQUNqQixXQUFXO0U1SHNxcUJmO0U0SGx0cUJDO0lBa0RFLCtDdkN6Z0NhO0VyRjRxc0JoQjtFNEhydHFCQztJQXVERSxhQUFhO0U1SGlxcUJoQjtFNEh4dHFCQztJQTRERSxnQjFDNzhCa0Q7RWxGNG1zQnJEO0U0SDNwcUJFOzs7O0lBSUMsYUFBYTtFNUg2cHFCaEI7RTRIanVxQkM7SUF5RUUsYUFBYTtFNUgycHFCaEI7RTRIeHBxQkc7SUFDQyxjQUFjO0U1SDBwcUJsQjtFNEh2dXFCQztJQW1GRSxjQUFjO0lBQ2QsZ0IxQ3IrQmtEO0VsRjRuc0JyRDtFNEgzdXFCQztJQXdGRyxxQnZDcjJCNkI7RXJGMi9yQmpDO0U0SDl1cUJDO0lBNkZHLG9CdkMxMkI2QjtFckY4L3JCakM7QUFDRjs7QWlCanBzQkk7RTJHKzVCRDtJQW9HRSxTQUFTO0U1SG1wcUJaO0FBQ0Y7O0FpQnBxc0JJO0UyRzQ2QkQ7SUFLRSxXdENoekJzQztJc0NpekJ0QyxnQnRDMXpCd0M7RXRGa2pzQjNDO0U0SDl2cUJDO0lBVUcsT0FBTztFNUh1dnFCWDtFNEhqd3FCQztJQWNFLFd0Q3p6QnNDO0lzQzB6QnRDLGdCdENuMEJ3QztFdEZ5anNCM0M7RTRIcndxQkM7SUFtQkcsT0FBTztFNUhxdnFCWDtFNEh4d3FCQztJQXVCRSxXdENsMEJzQztJc0NtMEJ0QyxnQnRDejBCd0M7RXRGNmpzQjNDO0U0SDV3cUJDO0lBNEJHLFFBQVE7RTVIbXZxQlo7RTRIL3dxQkM7SUFnQ0UsV3RDMzBCc0M7RXRGNmpzQnpDO0U0SGx4cUJDO0lBcUNFLGdCQUFnQjtJckd2Z0NmLGdCcUd3Z0N1QjtFNUhndnFCM0I7QUFDRjs7QXVCcHZzQkk7RXFHNjlCRDtJckc1OUJHLGdCQUFnQjtFdkJ3dnNCcEI7QUFDRjs7QWlCenNzQkk7RTJHNDZCRDtJQTBDRyxnQkFBZ0I7SUFDaEIsaUJBQWlCO0lBQ2pCLFdBQVc7RTVId3ZxQmY7RTRIcHlxQkM7SUFrREUsK0N2Q3pnQ2E7RXJGOHZzQmhCO0U0SHZ5cUJDO0lBdURFLGFBQWE7RTVIbXZxQmhCO0U0SDF5cUJDO0lBNERFLGdCMUM3OEJrRDtFbEY4cnNCckQ7RTRIN3VxQkU7Ozs7SUFJQyxhQUFhO0U1SCt1cUJoQjtFNEhuenFCQztJQXlFRSxhQUFhO0U1SDZ1cUJoQjtFNEgxdXFCRztJQUNDLGNBQWM7RTVINHVxQmxCO0U0SHp6cUJDO0lBbUZFLGNBQWM7SUFDZCxnQjFDcitCa0Q7RWxGOHNzQnJEO0U0SDd6cUJDO0lBd0ZHLHFCdkNyMkI2QjtFckY2a3NCakM7RTRIaDBxQkM7SUE2Rkcsb0J2QzEyQjZCO0VyRmdsc0JqQztBQUNGOztBaUJudXNCSTtFMkcrNUJEO0lBb0dFLFNBQVM7RTVIcXVxQlo7QUFDRjs7QTRILzBxQkE7RUFVSyxXdENoekJzQztFc0NpekJ0QyxnQnRDMXpCd0M7QXRGbW9zQjdDOztBNEhwMXFCQTtFQWVNLE9BQU87QTVIeTBxQmI7O0E0SHgxcUJBO0VBbUJLLFd0Q3p6QnNDO0VzQzB6QnRDLGdCdENuMEJ3QztBdEY0b3NCN0M7O0E0SDcxcUJBO0VBd0JNLE9BQU87QTVIeTBxQmI7O0E0SGoycUJBO0VBNEJLLFd0Q2wwQnNDO0VzQ20wQnRDLGdCdEN6MEJ3QztBdEZrcHNCN0M7O0E0SHQycUJBO0VBaUNNLFFBQVE7QTVIeTBxQmQ7O0E0SDEycUJBO0VBcUNLLFd0QzMwQnNDO0F0Rm9wc0IzQzs7QTRIOTJxQkE7RUEwQ0ssZ0JBQWdCO0VyR3ZnQ2YsZ0JxR3dnQ3VCO0E1SHcwcUI3Qjs7QXVCMzBzQkk7RXFHdzlCSjtJckd2OUJNLGdCQUFnQjtFdkIrMHNCcEI7QUFDRjs7QTRIejNxQkE7RUErQ00sZ0JBQWdCO0VBQ2hCLGlCQUFpQjtFQUNqQixXQUFXO0E1SDgwcUJqQjs7QTRILzNxQkE7RUF1REssK0N2Q3pnQ2E7QXJGcTFzQmxCOztBNEhuNHFCQTtFQTRESyxhQUFhO0E1SDIwcUJsQjs7QTRIdjRxQkE7RUFpRUssZ0IxQzc4QmtEO0FsRnV4c0J2RDs7QTRIdDBxQkk7Ozs7RUFJQyxhQUFhO0E1SHkwcUJsQjs7QTRIbDVxQkE7RUE4RUssYUFBYTtBNUh3MHFCbEI7O0E0SHIwcUJLO0VBQ0MsY0FBYztBNUh3MHFCcEI7O0E0SDE1cUJBO0VBd0ZLLGNBQWM7RUFDZCxnQjFDcitCa0Q7QWxGMnlzQnZEOztBNEgvNXFCQTtFQTZGTSxxQnZDcjJCNkI7QXJGMnFzQm5DOztBNEhuNnFCQTtFQWtHTSxvQnZDMTJCNkI7QXJGK3FzQm5DOztBNEh2NnFCQTtFQXlHSyxTQUFTO0E1SGswcUJkOztBNEhyenFCQTtFQUdHLGVBQWU7RUFDZixnQkFBZ0I7RS9HeGxDZixnQitHeWxDdUI7RXBCOWtDckIsZ0JvQitrQ3FCO0E1SHN6cUIzQjs7QTRINXpxQkE7RUFVSSxpQnZDaDRCMkI7QXJGc3JzQi9COztBNEhoMHFCQTtFQWVJLDZCQUE2QjtBNUhxenFCakM7O0E0SHAwcUJBO0VBc0JFLDZDdkNwbENnQjtBckZzNHNCbEI7O0E0SDd5cUJBO0VBRUUsdUJBQXFDO0VBQ3JDLHdCQUFzQztBNUgreXFCeEM7O0E0SGx6cUJBO0VBTUcsdUJBQXNDO0VBQ3RDLHdCQUF1QztBNUhnenFCMUM7O0E0SDF5cUJBO0VBRUUsZ0JBQWdCO0E1SDR5cUJsQjs7QTRIbHlxQkE7RUFRSSxjQUFjO0E1SDh4cUJsQjs7QTRIdHlxQkE7RUFXSSxlQUFlO0E1SCt4cUJuQjs7QTRIMXlxQkE7RUFpQkcsYUFBYTtFQUNiLHNCQUFzQjtBNUg2eHFCekI7O0E0SC95cUJBO0VBc0JJLGdDQUFnQztBNUg2eHFCcEM7O0E0SHZ4cUJFO0VBRUMseUJ0QzUvQmtFO0VzQzYvQmxFLDZDdkMzcENlO0FyRm83c0JsQjs7QTRINXhxQkU7RUFPRSwrQnZDL3BDYztBckZ3N3NCbEI7O0FRejdzQkU7RW9Ib3FDRyxXdkNucUNhO0FyRjQ3c0JsQjs7QTRIcHlxQkU7RUFnQkcsV3ZDeHFDYTtBckZnOHNCbEI7O0E0SHh5cUJFO0VBdUJHLHlCeEMvZ0NvQjtFd0NnaENwQixzQ3ZDaHJDYTtBckZxOHNCbEI7O0E0SDd5cUJFO0VBK0JHLFd2Q3ZyQ2E7QXJGeThzQmxCOztBNEgzd3FCRTtFQUVDLDRCdEMvaUNtRTtFc0NnakNuRSx5Q3ZDdnJDZTtBckZvOHNCbEI7O0FRLzhzQkU7RW9IeXNDRyxXdkMvckNhO0FyRnk4c0JsQjs7QTRIcHhxQkU7RUFlRyxXdkNwc0NhO0FyRjY4c0JsQjs7QTRIeHhxQkU7RUFzQkcsc0J2Q3B0Q2E7QXJGMDlzQmxCOztBNEgxdnFCQTtFL0c1dUNJLGdCK0dxdkN1QjtBNUhxdnFCM0I7O0E0SDl2cUJBO0VBaUJNLGlDdkMzaEMrQjtBckY0d3NCckM7O0E0SGx3cUJBO0VBc0JNLG9DdkNoaUMrQjtBckZneHNCckM7O0E0SHR3cUJBO0VBaUNNLGtDdkMzaUMrQjtBckZveHNCckM7O0E0SDF3cUJBO0VBc0NNLHFDdkNoakMrQjtBckZ3eHNCckM7O0E0SDl3cUJBO0VBa0RHLGFBQWE7QTVIZ3VxQmhCOztBNEhseHFCQTtFQXdESSxjQUFjO0E1SDh0cUJsQjs7QTZIdmd0QkE7Ozs7OztpRjdIK2d0QmlGO0E2SG5ndEI3RTtFQUNJLDZEdkM2SHFDO0F0Rnc0c0I3Qzs7QTZIamd0Qkk7RXJCREUsNkVuQldZO0FyRjIvc0JsQjs7QWlCMTlzQkk7RTRHM0NBOztJQU9ZLFl4Q3NLQTtJd0NyS0EsaUJBQWlCO0lBQ2pCLGtCQUFrQjtFN0hvZ3RCaEM7QUFDRjs7QWlCbitzQkk7RTRHM0NBOztJQVlZLGF4Q2tLQztFckZzMnNCZjtBQUNGOztBNkhyaHRCSTtFQWtCUSx5QnhDMEhXO0FyRjY0c0J2Qjs7QWlCOStzQkk7RTRHcEJBO0lBR1ksZUFBZTtJQUNmLGdCQUFnQjtFN0hvZ3RCOUI7RTZIaGd0QlU7SUFFUSxlQUFlO0U3SGlndEJqQztFNkhuZ3RCVTtJQUtRLGdCQUFnQjtFN0hpZ3RCbEM7RTZINS9zQlU7SUFFUSxvQnhDK0plO0VyRjgxc0JqQztFNkgvL3NCVTtJQUtRLHFCeEM0SmU7RXJGaTJzQmpDO0FBQ0Y7O0E4SDdqdEJBOzs7Ozs7aUY5SHFrdEJpRjtBaUZya3RCakY7Ozs7Ozs7Ozs7Ozs7O2lGakZvbHRCaUY7QWtGcGx0QmpGOzs7Ozs7aUZsRjJsdEJpRjtBbUYzbHRCakY7Ozs7OztpRm5Ga210QmlGO0FvRmxtdEJqRjs7Ozs7O2lGcEZ5bXRCaUY7QXFGem10QmpGOzs7Ozs7OztpRnJGa250QmlGO0FzRmxudEJqRjs7Ozs7OztpRnRGMG50QmlGO0F1RjFudEJqRjs7Ozs7O2lGdkZpb3RCaUY7QXdGam90QmpGOzs7Ozs7aUZ4RndvdEJpRjtBeUZ4b3RCakY7Ozs7OztpRnpGK290QmlGO0EwRi9vdEJqRjs7Ozs7O2lGMUZzcHRCaUY7QTJGdHB0QmpGOzs7Ozs7aUYzRjZwdEJpRjtBNEY3cHRCakY7Ozs7OztpRjVGb3F0QmlGO0ErSHBxdEJqRjs7Ozs7OztpRi9INHF0QmlGO0ErSHhwdEJoRjs7RUFFQyxrQkFBa0I7RWhDbkJsQixjVHFQMEM7RVNwUDFDLGVUb1AwQztBdEYwN3NCNUM7O0ErSHhwdEJFOztFQUNPLGtCQUFrQjtBL0g0cHRCM0I7O0ErSHhwdEJFOztFQUNDLGtCQUFrQjtFQUNsQixzQkFBMEQ7RUFDMUQsc0IxQ2lnQjJDO0FyRjJwc0I5Qzs7QStIenB0Qkc7O0VBQ0MsZUFBZTtFQUNmLHFCMUM0ZjBDO0FyRmlxc0I5Qzs7QStIL290Qkk7RUFFUSxlQUFvRTtFQUNwRSxlQUErRDtBL0hpcHRCM0U7O0ErSDVvdEJJO0VBRUssZ0JBQWdCO0EvSDhvdEJ6Qjs7QStIbG90Qkk7RUFFUSxrQjFDNmI4RTtFMEM1YjlFLGtCQUFrQjtFQUNsQixxQkFBcUI7RUFDckIsc0JBQXNCO0VBQ3RCLFNBQVM7QS9Ib290QnJCOztBK0gxb3RCSTtFQVVZLGtCMUMyYjZFO0FyRnlzc0I3Rjs7QStIOW90Qkk7RUFlWSxrQjFDbWI2RTtBckZndHNCN0Y7O0ErSHRudEJDO0VBSUssa0IxQytab0Y7RTBDOVpwRixVQUFVO0EvSHNudEJoQjs7QStIM250QkM7RUFVSyxrQjFDK1p1RjtBckZzdHNCN0Y7O0ErSC9udEJDO0VBZUssa0IxQ3VadUY7QXJGNnRzQjdGOztBK0h4bXRCQztFQUlFLGtCMUNvWXVGO0UwQ25ZdkYsVUFBVTtBL0h3bXRCYjs7QStIN210QkM7RUFVSyxrQjFDb1l1RjtBckZtdXNCN0Y7O0ErSGpudEJDO0VBZUssa0IxQzRYdUY7QXJGMHVzQjdGOztBK0gxbHRCQztFQUlLLGtCMUN5V29GO0UwQ3hXcEYsVUFBVTtBL0gwbHRCaEI7O0ErSC9sdEJDO0VBVUssa0IxQ3lXdUY7QXJGZ3ZzQjdGOztBK0hubXRCQztFQWVLLGtCMUNpV3VGO0FyRnV2c0I3Rjs7QStINWt0Qkk7RUFDQyxVQUFVO0EvSCtrdEJmOztBK0hobHRCSTtFQUtRLFVBQVU7QS9IK2t0QnRCOztBK0hwbHRCSTtFQVVRLHVCQUErRjtFQUMvRiwwQkFBOEc7QS9IOGt0QjFIOztBK0h6bHRCSTs7RUFnQlksYUFBYTtBL0g4a3RCN0I7O0ErSGprdEJDO0VBQ0ksYUFBYTtBL0hva3RCbEI7O0ErSHpqdEJDO0VBRUssYTFDbytCOEI7QXJGdWxyQnBDOztBK0g3anRCQztFQUtLLG1CQUFtQjtBL0g0anRCekI7O0ErSDlpdEJDO0VBQ0ksa0JBQXNFO0EvSGlqdEIzRTs7QStIL2l0QkM7RUFDSSxrQkFBeUU7QS9Ia2p0QjlFOztBK0hoanRCQztFQUNJLGtCQUF5RTtBL0htanRCOUU7O0ErSGpqdEJDO0VBQ0kscUJBQXFCO0VBQ3JCLGF6QzBYdUM7QXRGMHJzQjVDOztBK0hoanRCQztFQUNJLGlCQUF3RztBL0htanRCN0c7O0ErSGpqdEJDO0VBQ0ksaUJBQWdJO0EvSG9qdEJySTs7QStIbGp0QkM7RUFDSSxnQnpDNFcwQztBdEZ5c3NCL0M7O0FnSS96dEJBOzs7Ozs7aUZoSXUwdEJpRjtBZ0luenRCN0U7RUFDSSxvQkFBb0I7RUFDcEIseUJBQWlCO0tBQWpCLHNCQUFpQjtNQUFqQixxQkFBaUI7VUFBakIsaUJBQWlCO0FoSXF6dEJ6Qjs7QWdJdnp0Qkk7RUFNUSxtQjVDcUZZO0U0Q3BGWixlQUFlO0VBQ2YsYUFBYTtFQUNiLE1BQU07RUFDTixPQUFPO0VBQ1AsUUFBUTtFQUNSLGdCQW5CcUI7QWhJdzB0QmpDOztBZ0loenRCSTtFQUNJLGFBQWE7QWhJbXp0QnJCOztBaUl6MXRCQTs7Ozs7O2lGaklpMnRCaUY7QWlJbDF0QjdFO0VBQ0kscUJBQXFCO0VBQ3JCLHlCN0MrSmlCO0U2QzlKakIsc0JBQXNCO0VBQ3RCLGtCQUFrQjtFQUNsQixjQUFjO0VwSGZsQix3QndFa09pQztFVXBPbkMsV2tDbUJ3QjtFbENsQnhCLFlrQ2tCd0I7QWpJcTF0QjFCOztBaUk1MXRCSTtFQVVRLGFBQWE7RUFDYixtQkFBbUI7QWpJczF0Qi9COztBaUk5MHRCSTtFQUNJLGtCQUFrQjtFQUNsQixRQUFRO0VBQ1IsT0FBTztFQUNQLFFBQVE7RUFDUixpQkFBaUI7QWpJaTF0QnpCOztBaUl0MXRCSTtFQVNRLHFEQUE2QztVQUE3Qyw2Q0FBNkM7RUFDN0MsWUFBWTtFbEN6Q3RCLFdrQzBDNEI7RWxDekM1QixZa0N5QzRCO0FqSWsxdEI5Qjs7QWlJNzF0Qkk7RUFnQlksNkJBQTZCO0VBQzdCLHNCNUNsQ0U7RTRDbUNGLGtCNUN1TGU7QXJGMHB0Qi9COztBaUluMnRCSTtFQXNCWSxXQUFXO0VBQ1gsa0JBQWtCO0VBQ2xCLFFBQVE7RUFDUixTQUFTO0VBQ1QsVUFBVTtFQUNWLFdBQVc7RUFDWCxtREFBMkM7VUFBM0MsMkNBQTJDO0FqSWkxdEIzRDs7QWlJNzJ0Qkk7RUFnQ1ksV0FBVztFQUNYLGtCQUFrQjtFQUNsQixTQUFTO0VBQ1QsVUFBVTtFQUNWLFdBQVc7RUFDWCxZQUFZO0VBQ1osbURBQTJDO1VBQTNDLDJDQUEyQztBaklpMXRCM0Q7O0FpSTMwdEJJO0VBRVEsaUJBQWlCO0FqSTYwdEI3Qjs7QWlJLzB0Qkk7RUFNUSxjQUFjO0VBQ2QsZ0JBQWdCO0VBQ2hCLFc1Q3JFTTtFNENzRU4sbUJBQW1CO0FqSTYwdEIvQjs7QWlJcjB0Qkk7RUFPWSxpQkFBaUI7QWpJazB0QmpDOztBaUl6enRCSTtFQU9ZLGlCQUFpQjtBaklzenRCakM7O0FpSTd5dEJJO0VBQ0ksa0JBQWtCO0VBQ2xCLFFBQVE7RUFDUixPQUFPO0VBQ1AsUUFBUTtFQUNSLGlCQUFpQjtBaklnenRCekI7O0FpSXJ6dEJJO0VBUVEscUJBQXFCO0VBQ3JCLHNCNUN2SE07RTRDd0hOLHdEQUFnRDtVQUFoRCxnREFBZ0Q7RWxDdEkxRCxXa0N1STRCO0VsQ3RJNUIsWWtDc0k0QjtBaklrenRCOUI7O0FpSTl5dEJJO0VBQ0k7SUFBSyw2QkFBNkI7RWpJa3p0QnhDO0VpSWp6dEJNO0lBQU0sNkNBQTZDO0VqSW96dEJ6RDtFaUluenRCTTtJQUFPLDZEQUE2RDtFaklzenRCMUU7QUFDRjs7QWlJcHp0Qkk7RUFDSTtJQUFLLHFDQUFxQztFakl3enRCaEQ7RWlJdnp0Qk07SUFBTSxxREFBcUQ7RWpJMHp0QmpFO0VpSXp6dEJNO0lBQU8scUVBQXFFO0VqSTR6dEJsRjtBQUNGOztBaUlwenRCSTtFQUVRLGlCQUFpQjtBaklrMHRCN0I7O0FpSXAwdEJJO0VBTVEsY0FBYztFQUNkLGdCQUFnQjtFQUNoQixXNUN2Sk07RTRDd0pOLG1CQUFtQjtBaklrMHRCL0I7O0FpSTF6dEJJO0VBQ0ksa0JBQWtCO0VBQ2xCLFFBQVE7RUFDUixPQUFPO0VBQ1AsUUFBUTtFQUNSLGlCQUFpQjtBakk2enRCekI7O0FpSWwwdEJJO0VBU1EsV0FBVztFQUNYLFlBQVk7RUFDWixZQUFZO0FqSTZ6dEJ4Qjs7QWlJeDB0Qkk7RUFlWSxrQkFBa0I7RUFDbEIsV0FBVztFQUNYLHNCNUNqTEU7QXJGOCt0QmxCOztBaUk5MHRCSTtFQXFCWSxXQUFXO0VBQ1gsWUFBWTtFQUNaLGtCQUFrQjtFQUNsQixzREFBOEM7VUFBOUMsOENBQThDO0FqSTZ6dEI5RDs7QWlJcjF0Qkk7RUE0QlksV0FBVztFQUNYLFlBQVk7RUFDWixrQkFBa0I7RUFDbEIsZUFBZTtFQUNmLDhDQUFzQztVQUF0QyxzQ0FBc0M7QWpJNnp0QnREOztBaUl2enRCSTtFQUVRLGlCQUFpQjtBakl5enRCN0I7O0FpSTN6dEJJO0VBTVEsY0FBYztFQUNkLGdCQUFnQjtFQUNoQixXNUM5TU07RTRDK01OLG1CQUFtQjtBakl5enRCL0I7O0FpSWp6dEJJO0VBQ0ksa0JBQWtCO0VBQ2xCLFFBQVE7RUFDUixPQUFPO0VBQ1AsUUFBUTtFQUNSLGlCQUFpQjtBaklvenRCekI7O0FpSXp6dEJJO0VBU1EsWUFBWTtFQUNaLFdBQVc7RUFDWCxZQUFZO0VBQ1osNkJBQTZCO0VBQzdCLHVCNUNwT007RTRDcU9OLGtCQUFrQjtFQUNsQixnREFBd0M7VUFBeEMsd0NBQXdDO0FqSW96dEJwRDs7QWlJL3l0Qkk7RUFFUSxpQzVDbk9NO0U0Q29PTix1QjVDOU9NO0FyRitodUJsQjs7QWlJNXl0Qkk7RUFFUSxpQkFBaUI7QWpJOHl0QjdCOztBaUloenRCSTtFQU1RLGNBQWM7RUFDZCxnQkFBZ0I7RUFDaEIsVzVDM1BNO0U0QzRQTixtQkFBbUI7QWpJOHl0Qi9COztBaUl0eXRCSTtFQUNJLGtCQUFrQjtFQUNsQixRQUFRO0VBQ1IsT0FBTztFQUNQLFFBQVE7RUFDUixnQkFBc0I7QWpJeXl0QjlCOztBaUk5eXRCSTtFQVNRLHFCQUFxQjtFQUNyQixzQjVDOVFNO0U0QytRTixzQkFBc0I7RUFDdEIsa0JBQWtCO0VBQ2xCLDZDQUFxQztVQUFyQyxxQ0FBcUM7RWxDL1IvQyxXa0NnUzRCO0VsQy9SNUIsWWtDK1I0QjtBakkweXRCOUI7O0FpSXJ5dEJJO0VBQ0k7SUFBSyxnQ0FBZ0M7RWpJeXl0QjNDO0VpSXh5dEJNO0lBQU0sZ0JBQWdCO0lBQUUsbUNBQW1DO0VqSTR5dEJqRTtFaUkzeXRCTTtJQUFPLG1DQUFtQztFakk4eXRCaEQ7QUFDRjs7QWlJNXl0Qkk7RUFDSTtJQUFLLHdDQUF3QztFaklnenRCbkQ7RWlJL3l0Qk07SUFBTSxnQkFBZ0I7SUFBRSwyQ0FBMkM7RWpJbXp0QnpFO0VpSWx6dEJNO0lBQU8sMkNBQTJDO0VqSXF6dEJ4RDtBQUNGOztBaUk1eXRCSTtFQUVRLGlCQUFpQjtBakkyenRCN0I7O0FpSTd6dEJJO0VBTVEsY0FBYztFQUNkLGdCQUFnQjtFQUNoQixXNUNsVE07RTRDbVROLG1CQUFtQjtBakkyenRCL0I7O0FpSW56dEJJO0VBQ0ksa0JBQWtCO0VBQ2xCLFFBQVE7RUFDUixPQUFPO0VBQ1AsUUFBUTtFQUNSLGlCQUFpQjtBaklzenRCekI7O0FpSTN6dEJJO0VBU1EscUJBQXFCO0VBQ3JCLFdBQVc7RUFDWCxZQUFZO0VBQ1osa0JBQWtCO0VBQ2xCLDZCQUE2QjtFQUM3QixzQjVDelVNO0U0QzBVTix5QjVDMVVNO0U0QzJVTixnREFBd0M7VUFBeEMsd0NBQXdDO0FqSXN6dEJwRDs7QWlJanp0Qkk7RUFFUSxpQkFBaUI7QWpJbXp0QjdCOztBaUlyenRCSTtFQU1RLGNBQWM7RUFDZCxnQkFBZ0I7RUFDaEIsVzVDeFZNO0U0Q3lWTixtQkFBbUI7QWpJbXp0Qi9COztBaUkxeXRCSTtFQUNJLGtCQUFrQjtFQUNsQixZQUFZO0VBQ1osV0FBVztFQUNYLG9DNUM1VlU7RTRDNlZWLG9CQUFvQjtFQUNwQiw0QzVDeFdVO0FyRnFwdUJsQjs7QWlJbnp0Qkk7RUFTUSxnQkFBZ0I7RUFDaEIsY0FBYztFQUNkLGtCQUFrQjtFQUNsQixTQUFTO0VBQ1QsUUFBUTtFQUNSLFdBQVc7RUFDWCxtQkFBbUI7RUFDbkIsVzVDbFhNO0U0Q21YTixpQkFBaUI7RUFDakIsb0JBQW9CO0FqSTh5dEJoQzs7QWlJenl0Qkk7RUFFSSxXQUFXO0FqSTJ5dEJuQjs7QWlJN3l0Qkk7RUFLUSxXQUFXO0FqSTR5dEJ2Qjs7QWlJdnl0Qkk7RUFFSSxXQUFXO0FqSXl5dEJuQjs7QWlJM3l0Qkk7RUFLUSxXQUFXO0FqSTB5dEJ2Qjs7QWtJbnN1QkE7Ozs7OztpRmxJMnN1QmlGO0FrSTNydUJoRjs7RUFFQyxrQkFBa0I7RUFDbEIsZUFBZTtFQUNmLHNCQUFzQjtBbEk2cnVCeEI7O0FrSWpzdUJDOzs7Ozs7RW5DYkMsY1RxUDBDO0VTcFAxQyxlVG9QMEM7QXRGbSt0QjVDOztBa0kzc3VCQzs7RUFlRSw4QjlDZ0pzQjtFOEMvSXRCLHFCQUFxQjtFQUNyQixrQkFBa0I7RUFDbEIsa0JBQWtCO0FsSWlzdUJyQjs7QWtJbnR1QkM7O0VBdUJJLFVBQVU7QWxJaXN1QmY7O0FrSXh0dUJDOzs7O0VBK0JFLFNBQVM7RUFDVCxnQkFBZ0I7RUFDaEIscUJBQXFCO0VBQ3JCLFNBQVM7RUFDVCxlQUFlO0VBQ2Ysa0JBQWtCO0VBQ2xCLGNoRGtDb0Q7RWdEakNwRCxlaERpQ29EO0VnRGhDcEQsbUJBQW1CO0VBQ25CLFVBQVU7RUFDVixVQUFVO0FsSWdzdUJiOztBa0k3cnVCRzs7OztFQUNDLGNBQWM7RUFDZCxlQUFlO0FsSW1zdUJuQjs7QWtJenJ1QkU7O0VBQ0Msa0JBQWtCO0VBQ2xCLGVBQW1EO0VBQ25ELE9BQU87QWxJNnJ1QlY7O0FrSXpydUJFOztFQUNDLFVBQVU7RUFDVixRQUFRO0FsSTZydUJYOztBa0l6cnVCRTs7RUFDQyxnQkFBZ0I7RUFDaEIsc0I3QzRjMkM7RTZDM2NyQyxzQkFBd0Q7QWxJNnJ1QmpFOztBa0l6cnVCRTs7RUFDQyxlQUFlO0VBQ2YscUI3Q3FjMkM7QXJGd3Z0QjlDOztBa0kzd3VCQzs7RUF3RkUsWTVDb0pxQztBdEZvaXVCeEM7O0FrSWh4dUJDOzs7O0VBNkZHLGU1Q1A2QztBdEZpc3VCakQ7O0FrSXBydUJDO0VBSUUsYzlDd0RzQjtFdkUxS3JCLHVCd0VvT2dDO0U5RG5POUIsbUUrRHVEeUM7QXRGZ3Z1Qi9DOztBdUJseXVCSTtFMkd3R0g7STNHdkdLLGdCQUFnQjtFdkJzeXVCcEI7QUFDRjs7QWtJaHN1QkM7RUFVRyxnQkFBZ0I7RUFDaEIsc0I1Q3RFK0M7RTRDdUUvQyxlNUN0RTBDO0U0Q3VFMUMsa0JBQWtCO0VBQ2xCLFNBQTBFO0VBQzFFLFVBQTJFO0VBQzNFLGNBQWM7RUFDZCxVQUFVO0UvQ3RIVixtQ0FBbUM7RUFDbkMsa0NBQWtDO0U1RFRoQyxxQytEdUR5QztBdEZvd3VCL0M7O0F1QnR6dUJJO0UyR3dHSDtJM0d2R0ssZ0JBQWdCO0V2QjB6dUJwQjtBQUNGOztBa0k1cnVCRztFQUNDLGtCN0MzSGM7RTZDNEhkLFc3QzVIYztBckYyenVCbEI7O0FrSXp0dUJDO0VBaUNHLHFCQUFxQjtFQUNyQixjQUFjO0FsSTRydUJsQjs7QWtJdHJ1QkM7RUFDQyxvQjdDOEUrQjtBckYybXVCakM7O0FrSTFydUJDO0VBS0Usb0I3QzBFOEI7RTlEcE8zQiwwQytEdUR5QztBdEY2eHVCL0M7O0F1Qi8wdUJJO0UyR2dKSDtJM0cvSUssZ0JBQWdCO0V2Qm0xdUJwQjtBQUNGOztBa0lyc3VCQztFQVVHLFdBQVc7RUFDWCxrQkFBa0I7RUFDbEIsY0FBaUY7RUFDakYsZUFBa0Y7RUFDbEYsdUJBQXdDO0VBQ3hDLHFCQUFxQjtFQUNyQixRQUFRO0VBQ1IsU0FBUztFQUNULG9CN0M2RDZCO0U2QzVEN0IsVUFBVTtFM0d4S1IsaUMrRHVEeUM7QXRGaXp1Qi9DOztBdUJuMnVCSTtFMkdnSkg7STNHL0lLLGdCQUFnQjtFdkJ1MnVCcEI7QUFDRjs7QWtJaHN1Qkc7RUFDQyxrQjdDcEtjO0FyRnUydUJsQjs7QWtJN3R1QkM7RUFpQ0cscUJBQXFCO0FsSWdzdUJ6Qjs7QWtJanV1QkM7RUFvQ0kscUJBQXFCO0FsSWlzdUIxQjs7QWtJMXJ1QkM7RUFLSyxrQjdDMUxZO0U2QzJMWixXN0MzTFk7QXJGbzN1QmxCOztBa0kvcnVCQztFQVlLLGtCN0NqTVk7QXJGdzN1QmxCOztBb0c5dnVCQTtFOEJvRmEscUJBQW1GO0FsSThxdUJoRzs7QWtJbnJ1Qkk7O0VBV1Msc0JBQXVGO0VBQ3ZGLFU3Q21kMkI7QXJGMHR0QnhDOztBb0d4d3VCQTtFOEJtR2lCLHNCQUFvRjtBbEl5cXVCckc7O0FrSTdydUJJOztFQTBCYSxVQUFVO0VBQ1YsVzdDb2N1QjtBckZvdXRCeEM7O0FrSWpxdUJJO0VBR0Esa0I3QzlPYztFNkMrT2QsVzdDL09jO0FyRmk1dUJsQjs7QWtJdHF1Qkk7RUFVQSxrQjdDclBjO0FyRnE1dUJsQjs7QWtJdHB1QkM7RUFDQyxrQkFBa0I7RUFDbEIsYUFBYTtFQUNiLG9CQUFvQjtBbEl5cHVCdEI7O0FrSTVwdUJDO0VBT0UsVzdDaFFlO0U2Q2lRZiwyQjdDeUhxQztFNkN4SHJDLE9BQU87RUFDUCxzQjdDclFlO0U2Q3NRZixlQUFlO0VBQ2Ysc0I3QzNRZTtFNkM0UWYsZ0JBQWdCO0VBQ2hCLHNCQUFzQjtFckgzUHJCLGlDd0VvTWlDO0V4RW5NakMsb0N3RW1NaUM7QXJGa3R1QnJDOztBa0l6cXVCQztFQW9CRSxVQUFVO0VySC9SVCxnQnFIZ1N1QjtFckhoUnZCLGtDd0VrTmlDO0V4RWpOakMscUN3RWlOaUM7QXJGeXR1QnJDOztBa0locnVCQztFQTJCRSxXQUFXO0VBQ1gsYUFBYTtFQUNiLGtCQUFrQjtFQUNsQixNQUFNO0VBQ04sUUFBUTtFQUNSLFNBQVM7RUFDVCxzQjdDeU51RjtFNkN4TnZGLFNBQVM7RUFDVCxlQUFlO0VBQ2YsV0FBVztFQUNYLFVBQVU7QWxJeXB1QmI7O0FrSTlydUJDO0VBMkNHLHlCN0N6U2lCO0FyRmc4dUJyQjs7QWtJbHN1QkM7O0VBaURHLGU1QzNONkM7QXRGaTN1QmpEOztBa0kzb3VCQztFQUlFLHNCN0NnTTBGO0FyRjI4dEI3Rjs7QWtJL291QkM7RUFTRSx1QjdDd0VpQztFNkN2RWpDLG1CN0NsRXVEO0U2Q21FdkQsbUI3Q3BEZ0M7QXJGOHJ1Qm5DOztBa0lyb3VCQztFQUlFLHNCN0M2SzBGO0FyRnc5dEI3Rjs7QWtJem91QkM7RUFTRSwwQjdDb0RvQztFNkNuRHBDLGtCN0NqRnVEO0U2Q2tGdkQsbUI3Q25FZ0M7QXJGdXN1Qm5DOztBa0kzbnVCQztFQUNJLGtCQUFrQjtFQUNsQixjQUFjO0VBQ2QsV0FBVztFQUNYLGtCN0NzSnFGO0U2Q3JKckYsMkI3QzRCbUM7RTZDM0JuQyxvQjdDbkdpQztFNkNvR2pDLG1CN0NyRjhCO0U2Q3NGOUIsVzdDOVZhO0U2QytWYixzQjdDeFdhO0U2Q3lXYixzQjdDcldhO0V4RWhCZCx3QndFa09pQztFOURqTy9CLGlDK0R1RHlDO0F0RjY3dUIvQzs7QXVCLyt1Qkk7RTJHcVdIO0kzR3BXSyxnQkFBZ0I7RXZCbS91QnBCO0FBQ0Y7O0FRaC91QkU7RWdHQUksbURsQnVCMEU7QXRGNjl1QmhGOztBa0lwcHVCQztFQXFCSyxXN0NwWFk7QXJGdS91QmxCOztBUXgvdUJFO0VnR0FJLG1EbEJ3QjBFO0F0Rm8rdUJoRjs7QWtJNXB1QkM7RUErQkssY0FBYztFQUNkLGtCQUFrQjtFQUNsQixnQkFBZ0I7RUFDaEIsdUJBQW1EO0VBQ25ELFdBQVc7RXZEL1lmLGdCQUFnQjtFQUNoQix1QkFBdUI7RUFDdkIsbUJBQW1CO0EzRWlodkJyQjs7QWtJdnF1QkM7RUF3Q00sZ0JBQWdCO0VBQ2hCLHNCNUNqVzRDO0U0Q2tXNUMscUJBQXFCO0VBQ3JCLGtCQUFrQjtFQUNsQixNQUFNO0VBQ04sUUFBUTtFQUNSLGU1Q3JXdUM7RTRDc1d2Qyx1QkFBMkQ7RS9Dalo5RCxtQ0FBbUM7RUFDbkMsa0NBQWtDO0FuRnFodkJ0Qzs7QWtJcHJ1QkM7RUFzREUsV0FBVztFQUNYLGFBQWE7RUFDYixrQkFBa0I7RUFDbEIsTUFBTTtFQUNOLFFBQVE7RUFDUixTQUFTO0VBQ1Qsa0I3QzhGdUY7RTZDN0Z2RixTQUFTO0VBQ1QsZUFBZTtFQUNmLFdBQVc7RUFDWCxVQUFVO0FsSWtvdUJiOztBa0lsc3VCQztFQXNFRyxXN0MvWmM7RTZDZ2FkLHlCN0NyYWlCO0FyRnFpdkJyQjs7QVF2aXZCRTtFZ0dBSSwyQjBCNGFpQztBbEkrbnVCdkM7O0FrSTNzdUJDO0VBaUZHLGU1QzNWNkM7QXRGeTl1QmpEOztBa0kvc3VCQztFQXNGRyxhQUFhO0FsSTZudUJqQjs7QWtJbG51QkM7RUFJRSxrQjdDMkQwRjtBckZ1anVCN0Y7O0FrSXRudUJDO0VBU0Usa0I3Q3NEMEY7RTZDckQxRix1QjdDOURpQztFNkMrRGpDLG1CN0N4TXVEO0U2Q3lNdkQsbUI3QzFMZ0M7QXJGMnl1Qm5DOztBa0k1bXVCQztFQUlFLGtCN0N1QzBGO0FyRnFrdUI3Rjs7QWtJaG51QkM7RUFTRSxrQjdDa0MwRjtFNkNqQzFGLDBCN0NuRm9DO0U2Q29GcEMsa0I3Q3hOdUQ7RTZDeU52RCxtQjdDMU1nQztBckZxenVCbkM7O0FtSXpsdkJBOzs7Ozs7aUZuSWltdkJpRjtBbUlqbHZCN0U7RUFDSSxzQjlDQVU7RThDQ1Ysc0I5Q0dVO0U4Q0ZWLGVBQWU7RUFDZixjQUFjO0VBQ2QsY0FBYztFQUNkLGNBQTRCO0VBQzVCLGdCN0M4T3FDO0U2QzdPckMsa0JBQWtCO0VBQ2xCLHVCQUF1QjtFdEhwQjNCLG9Cd0VxTzZCO0FyRm00dUJqQzs7QW1JaGx2QlE7RUFDSSxrQkFBa0I7RUFDbEIsTUFBTTtFQUNOLE9BQU87RUFDUCxzQkFBK0Y7QW5JbWx2QjNHOztBbUkva3ZCUTtFQUNJLGU3Q2dFcUM7QXRGa2h2QmpEOztBbUl4bXZCSTtFQTJCUSxzQjlDMUJNO0U4QzJCTixlN0N5TmlDO0U2Q3hOakMsZ0I3Q3dOaUM7RTZDdk5qQyxrQkFBa0I7RUFDbEIsTUFBTTtFQUNOLHdDOUNyQk07RXhFdEJkLG9Cd0VxTzZCO0FyRnc1dUJqQzs7QW1JeGt2Qkk7RUFDSSxrQkFBbUc7QW5JMmt2QjNHOztBbUl2a3ZCSTtFQUVRLGVBQWU7RUFDZixtQkFBb0c7QW5JeWt2QmhIOztBbUk1a3ZCSTtFQU9ZLFVBQVU7RUFDVixRQUFRO0FuSXlrdkJ4Qjs7QW1JL2p2Qkk7RUFJUSxlQUFlO0VBQ2YsZ0JBQWdCO0FuSStqdkI1Qjs7QW1JcGt2Qkk7RUFRWSxhQUFhO0FuSWdrdkI3Qjs7QW1JeGt2Qkk7RUFjUSxvQkFBb0I7RUFDcEIsbUJBQW1CO0FuSThqdkIvQjs7QW1JN2t2Qkk7RUFvQlEsa0JBQWtCO0VBQ2xCLHFCN0NnS2lDO0U2Qy9KakMsc0I3QytKaUM7QXRGODV1QjdDOztBbUlubHZCSTtFQTJCUSxxQjdDMEppQztFNkN6SmpDLHNCN0N5SmlDO0F0Rm02dUI3Qzs7QW1Jbmp2Qkk7RUFPWSxzQkFBa0k7QW5JZ2p2QmxKOztBbUl2anZCSTtFQVlZLFFBQVE7RUFDUixVOUNzakJ3QjtFOENyakJ4QixxQkFBdUU7QW5JK2l2QnZGOztBbUk3anZCSTtFQTBCZ0IsdUJBQW1JO0FuSXVpdkJ2Sjs7QW1Jamt2Qkk7RUErQmdCLFVBQVU7RUFDVixXOUNtaUJvQjtBckZtZ3VCeEM7O0FvSTVydkJBOzs7Ozs7Z0ZwSW9zdkJnRjtBb0lwcnZCNUU7RUFDSSxxQkFBcUI7RUFDckIsNkJBQThDO0VBQzlDLGtCQUFrQjtFQUNsQixnQkFBZ0I7RUFDaEIsc0JBQXNCO0VBQ3RCLHlCQUFpQjtLQUFqQixzQkFBaUI7TUFBakIscUJBQWlCO1VBQWpCLGlCQUFpQjtFQUNqQjtFQUNBLGNBQWM7RUFDZCxnQkFBZ0I7RUFDaEI7RXZIckJKLHdCd0VrT2lDO0U5RGpPL0IsaUMrRHVEeUM7QXRGcXB2Qi9DOztBdUJ2c3ZCSTtFNkdLQTtJN0dKRSxnQkFBZ0I7RXZCMnN2QnBCO0FBQ0Y7O0FvSXhzdkJJO0VBZ0JRLHFCQUFxQjtFQUNyQixNQUFNO0VBQ04sK0JBQStCO0V2SDdCdkMsd0J3RWtPaUM7QXJGdy91QnJDOztBb0kvc3ZCSTs7O0VBMEJRLGVBQWU7RUFDZixxQkFBcUI7RUFDckIsWUFBWTtFQUNaLDJCL0NvVzRCO0FyRnUxdUJ4Qzs7QW9JeHR2Qkk7RUFrQ1Esa0JBQWtCO0VBQ2xCLE1BQU07RUFDTixPQUFPO0VBQ1AsV0FBVztFQUNYLFVBQVU7QXBJMHJ2QnRCOztBb0lycnZCSTtFQUNJLFVBQVU7QXBJd3J2QmxCOztBb0lycnZCUTtFQUNJLGFBQWE7QXBJd3J2QnpCOztBb0lucnZCSTtFQUVRLHNCL0M0ZGtDO0FyRnl0dUI5Qzs7QW9JaHJ2Qkk7RUFFUSxxQi9DcWRrQztBckY2dHVCOUM7O0FvSXhxdkJJO0VBQ0ksVUFBVTtBcEkycXZCbEI7O0FvSXZxdkJJOzs7RUFJUSxlOUNLcUM7RThDSnJDLFk5QzBKNEI7QXRGK2d2QnhDOztBb0lwcXZCSTs7Ozs7O0VBS1EsMEJBQTBCO0VBQzFCLFk5QytJNEI7QXRGeWh2QnhDOztBb0k5cHZCSTtFN0dqSEUsd0IrRHVEeUM7QXRGNHR2Qi9DOztBdUI5d3ZCSTtFNkc0R0E7STdHM0dFLGdCQUFnQjtFdkJreHZCcEI7QUFDRjs7QW9JbnF2Qkk7QUFDQTtFdkgxRkEseUJ1SDRGcUM7RXZIM0ZyQyw0QnVIMkZxQztFdkgxR3JDLDhDdUgyR3NGO0V2SDFHdEYsaUR1SDBHc0Y7QXBJdXF2QjFGOztBb0kxcXZCSTtFdkh4R0EsMEJ1SDhHc0M7RXZIN0d0Qyw2QnVINkdzQztFdkhoR3RDLDZDdUhpR3FGO0V2SGhHckYsZ0R1SGdHcUY7QXBJMHF2QnpGOztBb0l2cXZCSTs7RXZIbEhBLDhDdUhxSHNGO0V2SHBIdEYsaUR1SG9Ic0Y7QXBJMHF2QjFGOztBb0l2cXZCSTs7RXZIMUdBLDZDdUg2R3FGO0V2SDVHckYsZ0R1SDRHcUY7QXBJMHF2QnpGOztBb0l2cXZCSTtBQVFBOztFQUVJLGtCQUFrQjtFQUNsQixtQkFBbUI7RUFDbkIsVUFBVTtBcEltcXZCbEI7O0FvSS9wdkJJO0VBQ0ksVy9DMUlVO0UrQzJJVixzQi9DakpVO0FyRm16dkJsQjs7QW9JaHF2Qkk7RUFDSSxXL0N2SlU7RStDd0pWLHlCaER6Sm1CO0FwRjR6dkIzQjs7QW9JanF2Qkk7RUFDSSxXL0MzSlU7RStDNEpWLHlCaERuSmtCO0FwRnV6dkIxQjs7QW9JbHF2Qkk7RUFDSSxXL0MvSlU7RStDZ0tWLHlCaEQ3SW1CO0FwRmt6dkIzQjs7QW9JbnF2Qkk7RUFDSSxXL0NuS1U7RStDb0tWLHlCaER4SW1CO0FwRjh5dkIzQjs7QW9JcHF2Qkk7RUFDSSxXL0N2S1U7RStDd0tWLHlCaERqSWdCO0FwRnd5dkJ4Qjs7QW9JbnF2Qkk7QUFDQTtFdkgzSkEsNkN1SDRKaUY7RXZIM0pqRixnRHVIMkppRjtBcEl1cXZCckY7O0FvSXJxdkJJO0V2SDVLQSw4Q3VINktrRjtFdkg1S2xGLGlEdUg0S2tGO0FwSXlxdkJ0Rjs7QW9JdnF2Qkk7QUFHQTtFQUNJLGtCQUFrQjtFQUNsQixZQUFZO0VBQ1osc0IvQ3pMVTtFK0MwTFYsa0JBQWtCO0VBQ2xCLCtDQUF3RTtFN0d0TTFFLDhDK0R1RHlDO0F0Rnd6dkIvQzs7QXVCMTJ2Qkk7RTZHNExBO0k3RzNMRSxnQkFBZ0I7RXZCODJ2QnBCO0FBQ0Y7O0FvSXBydkJJO0VBV1EseUIvQ2hNUztBckY2MnZCckI7O0FvSXhydkJJO0VBZ0JRLFdBQVc7RUFDWCxrQkFBa0I7RUFDbEIsUUFBUTtFQUNSLFNBQVM7RUFDVCxjOUNpRGdDO0U4Q2hEaEMsZ0I5Q2lEaUM7RThDaERqQyxzQkFBdUM7RUFDdkMsc0JBQXVDO0VBQ3ZDLHFCQUFxQjtFQUNyQiwwQy9Dck1NO0UrQ3NNTiwyQy9DdE1NO0FyRmszdkJsQjs7QW9JbHF2Qkk7OztFQUlRLHVCL0M4S3dCO0FyRnMvdUJwQzs7QW9JL3B2Qkk7OztFQUlRLDBCL0NpSzJCO0FyRmdndkJ2Qzs7QW9JdnB2Qkk7RUFDSSxlQUFlO0VBQ2YscUIvQytSc0M7QXJGMjN1QjlDOztBcUk5NXZCQTs7Ozs7O2dGcklzNnZCZ0Y7QXFJdjV2QjVFO0VBQ0ksVUFBVTtFQUNWLGtCQUFrQjtFQUNsQixxQkFBcUI7RUFDckIsc0JBQXNCO0VBQ3RCLGdCQUFnQjtBckl5NXZCeEI7O0FxSWw1dkJJO0VBQ0ksZUFBZTtFQUNmLFVBQVU7RUFDVixjQUFjO0VBQ2Qsb0JBQTJCO0VBQzNCLG1CaERrUTJCO0VnRGpRM0IsV2hEUFU7RWdEUVYsa0JBQWtCO0VBQ2xCLDZCQUE2QztFQUM3QyxtQkFBbUI7RUFDbkIseUJBQWlCO0tBQWpCLHNCQUFpQjtNQUFqQixxQkFBaUI7VUFBakIsaUJBQWlCO0V4SGhDckIsd0J3RWtPaUM7RTlEak8vQixpQytEdUR5QztBdEYrM3ZCL0M7O0F1Qmo3dkJJO0U4R2dCQTtJOUdmRSxnQkFBZ0I7RXZCcTd2QnBCO0FBQ0Y7O0FxSXY2dkJJOztFQWtCUSxtRC9DTm9FO0F0Rmc2dkJoRjs7QXFJNTZ2Qkk7RUF1QlEsc0JoRGpDTTtBckYwN3ZCbEI7O0FxSWg3dkJJO0VBMkJZLGtCaERqQ0U7QXJGMDd2QmxCOztBcUlwN3ZCSTs7RUFvQ1ksbUQvQ3ZCZ0U7QXRGNDZ2QmhGOztBcUl6N3ZCSTtFQXlDWSxXaERuREU7QXJGdTh2QmxCOztBcUlqNXZCZ0I7RUFDSSxnQ2hEdkRGO0FyRjI4dkJsQjs7QXFJajh2Qkk7RUFvRFEsY0FBYztFQUNkLHNCaERpVTRCO0VnRGhVNUIsdUJBQTJEO0VBQzNELGdCQUFnQjtFQUNoQix1QkFBdUI7RUFDdkIsbUJBQW1CO0FySWk1dkIvQjs7QXFJMTh2Qkk7RUE2RFksc0JoRCtDUTtBckZrMnZCeEI7O0FxSTk4dkJJO0VBbUVRLGtCQUFrQjtFQUNsQixlQUFlO0VBQ2YsWUFBWTtFQUNaLFlBQVk7RUFDWixjQUFjO0VBQ2Qsc0JBQTJEO0VBQzNELHFCaERtQ1k7RWdEbENaLGFBQWE7RTlHL0ZuQixxQytEdUR5QztBdEZ3N3ZCL0M7O0F1QjErdkJJO0U4R2dCQTtJOUdmRSxnQkFBZ0I7RXZCOCt2QnBCO0FBQ0Y7O0FRLyt2QkU7RTZIOEZjLFVBQVU7QXJJcTV2QjFCOztBcUlwK3ZCSTtFQW9GWSxnQkFBZ0I7RUFDaEIsc0IvQ3hEbUM7RStDeURuQyxxQkFBcUI7RUFDckIsZS9DekQ4QjtFSDNDMUMsbUNBQW1DO0VBQ25DLGtDQUFrQztBbkZ5L3ZCdEM7O0FxSTcrdkJJO0VBOEZRLFdoRGxHTTtBckZxL3ZCbEI7O0FxSWovdkJJO0VBc0dZLGdCQUFnQjtFQUNoQixzQi9DMUVtQztFK0MyRW5DLHFCQUFxQjtFQUNyQixrQkFBa0I7RUFDbEIsUUFBUTtFQUNSLGVoRDJRd0I7RWdEMVF4QixtQkFBaUM7RUFDakMsZS9DL0U4QjtFK0NnRjlCLGNBQWM7RUFDZCxjQUFjO0VsRDVIMUIsbUNBQW1DO0VBQ25DLGtDQUFrQztBbkY0Z3dCdEM7O0FxSWhnd0JJO0VBcUhZLGFBQWE7QXJJKzR2QjdCOztBcUkxNHZCUTtFQUNJLGUvQ2hEcUM7RStDaURyQyxnQkFBZ0I7QXJJNjR2QjVCOztBcUkvNHZCUTtFQU1RLFdoRHBJRTtFZ0RxSUYseUJoRDFJSztBckZ1aHdCckI7O0FxSXA1dkJRO0VBWVEsYS9DcUh5QjtFK0NwSHpCLGdCQUFnQjtBckk0NHZCaEM7O0FxSXo1dkJRO0VBa0JRLGFBQWE7QXJJMjR2QjdCOztBcUlsNHZCSTtFQUNJLGNBQWM7RUFDZCw2QkFBNkM7RUFDN0MsWUFBWTtFQUNaLFVBQVU7RUFDVix5QkFBaUI7S0FBakIsc0JBQWlCO01BQWpCLHFCQUFpQjtVQUFqQixpQkFBaUI7RXhIaExyQix3QndFa09pQztBckZvMXZCckM7O0FxSTM0dkJJO0VBVVEsc0JoRHpLTTtBckY4aXdCbEI7O0FxSS80dkJJO0VBY1ksa0JoRHpLRTtBckY4aXdCbEI7O0FxSW41dkJJO0VBb0JRLGdCQUFnQjtFQUNoQix1QkFBdUI7RUFDdkIsbUJBQW1CO0VBQ25CLGdCQUFnQjtFQUNoQixTQUFTO0VBQ1QscUMvQytFaUM7RStDOUVqQyxXQUFXO0FySW00dkJ2Qjs7QXFJNzV2Qkk7RUErQlEsV2hEeExNO0FyRjBqd0JsQjs7QXFJOTN2QlE7RUFJUSx5QmhEck1LO0FyRm1rd0JyQjs7QXFJbDR2QlE7RUFTUSxhL0MwRHlCO0UrQ3pEekIsZ0JBQWdCO0FySTYzdkJoQzs7QXFJdjR2QlE7RUFhWSxVQUFVO0FySTgzdkI5Qjs7QXFJMzR2QlE7OztFQXFCUSxlL0NsSWlDO0F0RjgvdkJqRDs7QXFJcDd2Qkk7RUE4RFEseUJqRC9EYTtFaURnRWIsV2hEOU5NO0VnRCtOTixlQUFlO0VBQ2YsV0FBVztFQUNYLHNCL0NzQ2lDO0UrQ3JDakMsb0IvQ3FDaUM7RStDcENqQywyQmhENko0QjtFeEU1WXBDLHdCd0VrT2lDO0U5RGpPL0IsdUUrRHVEeUM7QXRGbWp3Qi9DOztBdUJybXdCSTtFOEdxS0E7STlHcEtFLGdCQUFnQjtFdkJ5bXdCcEI7QUFDRjs7QVF0bXdCRTtFNkgwT2MseUJqRDNFUztFaUQ0RVQsV2hEMU9FO0FyRjBtd0JsQjs7QXFJMzh2Qkk7RUFnRlksc0JoRHpIUTtBckZ3L3ZCeEI7O0FxSS84dkJJO0VBcUZZLGVBQWU7RUFDZixZQUFZO0VBQ1osbUJoRGEwQztFZ0RaMUMsc0JBQXlEO0VBQ3pELGNBQWM7RUFDZCxxQmhEbklRO0VnRG9JUixhQUFhO0U5R3JRdkIscUMrRHVEeUM7QXRGNmt3Qi9DOztBdUIvbndCSTtFOEdxS0E7STlHcEtFLGdCQUFnQjtFdkJtb3dCcEI7QUFDRjs7QVFwb3dCRTtFNkhvUWtCLFVBQVU7QXJJbzR2QjlCOztBcUkvM3ZCWTtFQUNJLFkvQ0R3QjtBdEZtNHZCeEM7O0FReG93QkU7RTZIMFFrQix5QmpEM0dLO0VpRDRHTCxXaEQxUUY7QXJGNG93QmxCOztBcUl4NHZCWTtFQVdRLGFBQWE7QXJJaTR2QmpDOztBcUlqL3ZCSTtFQXVIUSxXQUFXO0FySTgzdkJ2Qjs7QXFJci92Qkk7RUEySFksZUFBZTtFQUNmLG9CL0NwQjZCO0UrQ3FCN0Isb0JBQXFEO0VBQ3JELDZCQUE2QjtFQUM3QixlQUFlO0VBQ2YsVUFBVTtFQUNWLGNBQWM7RUFDZCxvQkFBd0M7RUFDeEMsNkJBQTZCO0FySTgzdkI3Qzs7QXFJamd3Qkk7RUF1SWdCLHdCQUF3QjtBckk4M3ZCNUM7O0FxSXJnd0JJO0VBNklZLGNBQWM7RUFDZCxxQkFBc0Q7QXJJNDN2QnRFOztBcUlsM3ZCSTtFQUNJLHNCaER4VFU7RWdEeVRWLFdoRGhUVTtFZ0RpVFYscUNoRGhUVTtFZ0RpVFYsY0FBYztFQUNkLGtCQUFrQjtFQUNsQjtFQUNBLGVBQWU7RUFDZixXQUFXO0VBQ1gsYWhEb1l1QjtFeEVodEIzQix3QndFa09pQztFbUJ2Ti9CLCtDbkJXWTtBckY2cXdCbEI7O0FxSWozdkJJO0VBQ0ksY0FBYztBcklvM3ZCdEI7O0FxSWgzdkJJO0VBQ0ksZ0JBQWdCO0VBQ2hCLFNBQVM7RUFDVCxVQUFVO0FySW0zdkJsQjs7QXFJaDN2QlE7RUFDSSxzQmhEbVU4QjtFZ0RsVTlCLGlCL0NoRjhCO0UrQ2lGOUIsZ0JBQWdCO0FySW0zdkI1Qjs7QXFJaDN2Qlk7RUFDSSxtQmhENlQwQjtBckZzanZCMUM7O0FxSTkydkJRO0VBQ0ksbUJoRHVUOEI7QXJGMGp2QjFDOztBcUk1MnZCSTtFQUNJLG9CaERvVWdDO0VnRG5VaEMsZUFBZTtFQUNmLHlCQUFpQjtLQUFqQixzQkFBaUI7TUFBakIscUJBQWlCO1VBQWpCLGlCQUFpQjtFOUdqWG5CLGlDK0R1RHlDO0F0RjBxd0IvQzs7QXVCNXR3Qkk7RThHeVdBO0k5R3hXRSxnQkFBZ0I7RXZCZ3V3QnBCO0FBQ0Y7O0FxSXozdkJJO0VBUVEsZWhEOFQyQjtBckZ1anZCdkM7O0FxSTczdkJJO0VBYVEsc0JoRDFQWTtBckY4bXdCeEI7O0FxSWo0dkJJO0VBaUJZLGFBQWE7QXJJbzN2QjdCOztBcUlyNHZCSTtFQXVCUSxVQUFVO0FySWszdkJ0Qjs7QXFJejR2Qkk7RUE0QlEseUJoRDdYUztFZ0Q4WFQsV2hEdlhNO0FyRnd1d0JsQjs7QXFJOTR2Qkk7RUFrQ1EsV2hEL1hNO0VnRGdZTixlL0NqVHFDO0F0Rmlxd0JqRDs7QXFJNzJ2Qlk7RUFDSSwrQmhEMVlFO0FyRjB2d0JsQjs7QXFJdjV2Qkk7RUE2Q1EsV2hEaFpNO0VnRGlaTix5QmpEbFplO0FwRmd3d0IzQjs7QXFJMTJ2QlE7RUFDSSxrQkFBNEM7RUFDNUMsbUJBQTZDO0FySTYydkJ6RDs7QXFJeDJ2Qkk7RUFDSSxjQUFjO0VBQ2Qsb0JoRDBRZ0M7RWdEelFoQyxlQUFlO0VBQ2YsZ0JoRHJKd0I7RWdEc0p4QixrQmhEb1BrQztFZ0RuUGxDLHFCaERtUGtDO0FyRndudkIxQzs7QXFJeDJ2QlE7RUFDSSxhQUFhO0FySTIydkJ6Qjs7QXFJajJ2Qkk7RUFDSSxXaEQzYVU7RWdENGFWLGVBQWU7QXJJbzJ2QnZCOztBcUlqMnZCUTtFQUNJLGdDaER0Yk07QXJGMHh3QmxCOztBcUkvMXZCSTtFQUNJLGNBQWM7QXJJazJ2QnRCOztBcUluMnZCSTtFQUtRLGtCaERxTjhCO0FyRjZvdkIxQzs7QXFJNzF2Qkk7RUFDSSxrQkFBa0I7RUFDbEIsa0JoRDhNa0M7RWdEN01sQyxlQUFlO0FySWcydkJ2Qjs7QXFJeDF2Qkk7RUFJUTtFQUNBLE9BQU87QXJJdzF2Qm5COztBcUk3MXZCSTtFQVVRLGdCQUFnQjtFeEgvY3hCLDZCd0hnZHVDO0V4SC9jdkMsNEJ3SCtjdUM7QXJJdzF2QjNDOztBcUluMnZCSTtFQWVZLGlEaEQvZEU7QXJGdXp3QmxCOztBcUl2MnZCSTs7RXhIbmRBLHlCd0h3ZXdDO0V4SHZleEMsMEJ3SHVld0M7QXJJdzF2QjVDOztBcUk3MnZCSTtFQTJCUSxnQkFBZ0I7RXhIOWV4Qix5QndIK2VvQztFeEg5ZXBDLDBCd0g4ZW9DO0FySXUxdkJ4Qzs7QXFJbjN2Qkk7RUFnQ1ksOENoRGhmRTtBckZ1MHdCbEI7O0FxSXYzdkJJOztFeEhyY0EsNkJ3SDJlMkM7RXhIMWUzQyw0QndIMGUyQztBckl1MXZCL0M7O0FxSTcwdkJJO0VBQ0ksY0FBYztFQUNkLGtCQUFrQjtFQUNsQixhaERxS2dDO0FyRjJxdkJ4Qzs7QXFJbjF2Qkk7RUFPUSxnQkFBZ0I7RUFDaEIsc0IvQ2pldUM7RStDa2V2QyxrQkFBa0I7RUFDbEIsUUFBUTtFQUNSLGNBQW1EO0VBQ25ELGNBQWM7RUFDZCxjQUFjO0VBQ2Qsb0JoRDVRMEI7RWdENlExQix1QkFBaUM7RUFDakMsY0FBYztFQUNkLFlBQVk7RWxEcGhCcEIsbUNBQW1DO0VBQ25DLGtDQUFrQztBbkZxMndCdEM7O0FxSW4ydkJJO0VBdUJRLGNBQWM7QXJJZzF2QjFCOztBcUl2MnZCSTtFQTRCUSwyQmhENUo0QjtFZ0Q2SjVCLHVCQUFzRDtFQUN0RCxzQmhEMWhCTTtFZ0QyaEJOLFVBQVU7RUFDVixXQUFXO0V4SDVpQm5CLHdCd0VrT2lDO0FyRjBwd0JyQzs7QXFJaDN2Qkk7RUFxQ1ksd0JBQXdCO0FySSswdkJ4Qzs7QXFJcDN2Qkk7RUEyQ1EsYUFBYTtBckk2MHZCekI7O0FxSXAwdkJJO0VBSVEsb0JBQThCO0VBQzlCLG1CaER0VDhDO0VnRHVUOUMsbUJoRHhTdUI7QXJGNG13Qm5DOztBcUkxMHZCSTtFQVNZLGtCaERqTG9CO0VnRGtMcEIscUJBQThEO0FySXEwdkI5RTs7QXFJLzB2Qkk7RUFjWSxXaER0TG9CO0FyRjIvdkJwQzs7QXFJbjF2Qkk7RUFxQlksdUJoRDdMb0I7RWdEOExwQixtQmhEdlUwQztFZ0R3VTFDLG1CaER6VG1CO0FyRjJud0JuQzs7QXFJejF2Qkk7RUEyQlksb0JBQXdEO0VBQ3hELG1CaEQ3VTBDO0VnRDhVMUMsbUJoRC9UbUI7QXJGaW93Qm5DOztBcUk1enZCSTtFQUlRLG9CQUE4QjtFQUM5QixrQmhEeFY4QztFZ0R5VjlDLG1CaEQxVXVCO0FyRnNvd0JuQzs7QXFJbDB2Qkk7RUFTWSxxQmhEeE51QjtFZ0R5TnZCLHVCQUEyRDtBckk2enZCM0U7O0FxSXYwdkJJO0VBY1ksY2hEN051QjtBckYwaHdCdkM7O0FxSTMwdkJJO0VBcUJZLDBCaERwT3VCO0VnRHFPdkIsa0JoRHpXMEM7RWdEMFcxQyxtQmhEM1ZtQjtBckZxcHdCbkM7O0FxSWoxdkJJO0VBMkJZLG9CQUF3RDtFQUN4RCxrQmhEL1cwQztFZ0RnWDFDLG1CaERqV21CO0FyRjJwd0JuQzs7QXFJaHp2Qkk7RUFFUSxvQ2hEdG5CTTtBckZ3NndCbEI7O0FxSTV5dkJJO0VBSVEsb0NoRGhvQk07RWdEaW9CTix5QkFBeUI7RUFDekIsV2hENW9CTTtBckZ3N3dCbEI7O0FxSWx6dkJJO0VBV1Esb0NoRHZvQk07RWdEd29CTixXaERscEJNO0FyRjY3d0JsQjs7QXFJdnp2Qkk7RUFpQlEsb0NoRDdvQk07RWdEOG9CTixXaER4cEJNO0FyRms4d0JsQjs7QXFJaHl2Qkk7RUFDSSxTQUFTO0VBQ1QsU0FBUztFQUNULFVBQVU7RUFDVixjQUFjO0VBQ2QsZUFBZTtFQUNmLE9BQU87RUFDUCxNQUFNO0VBQ04sZ0JBQWdCO0VBQ2hCLGVBQWU7RUFDZixZQUFZO0VBQ1osV0FBVztFQUNYLFdBQVc7RUFDWCxzQmhEL3FCVTtFZ0RnckJWLFVBQVU7QXJJbXl2QmxCOztBcUkveHZCSTtFQUNJLG9CQUFvQjtFQUNwQiw4QkFBOEI7RUFDOUIsc0JBQXNCO0VBQ3RCLHVCQUF1QjtFQUN2QiwyQkFBMkI7RUFDM0IscUJBQXFCO0VBQ3JCLDBCQUEwQjtFQUMxQixxQkFBcUI7QXJJa3l2QjdCOztBcUl6eHZCSTtFQUNJLHNCaER2VWlDO0VnRHdVakMseUJoRHhVaUM7QXJGb213QnpDOztBcUl4eHZCSTtFQUNJLFdBQVc7RUFDWCxXQUFXO0VBQ1gsdUJBQXVCO0FySTJ4dkIvQjs7QXFJOXh2Qkk7RUFNUSxXQUFXO0VBQ1gsWUFBWTtFeEg5dEJwQixvQndFcU82QjtBckZzeHdCakM7O0FxSXZ4dkJJO0VBQ0ksaUJBQWlCO0FySTB4dkJ6Qjs7QXFJdHh2Qkk7RUFDSSxnQkFBZ0I7RUFDaEIscUJBQXFCO0VBQ3JCLGtCQUFrQjtBckl5eHZCMUI7O0FxSXJ4dkJJOzs7RUFHSSxxQkFBcUI7RUFDckIsa0JoRHBla0Q7QXJGNHZ3QjFEOztBcUlweHZCSTtFQUNJLGtCaER6ZWtEO0FyRmd3d0IxRDs7QXFJbnh2Qkk7O0VBRUksdUJBQXVCO0FySXN4dkIvQjs7QXNJMWh4QkE7Ozs7OztnRnRJa2l4QmdGO0FzSWxoeEI1RTtFQUNJLGtCQUFrQjtBdElvaHhCMUI7O0FzSXJoeEJJO0VBS1Esb0JBQW9CO0VBQ3BCLDhCQUE4QjtFQUM5QixvQkFBb0I7RUFDcEIsb0JBQW9CO0VBQ3BCLDJCQUEyQjtFQUMzQixxQkFBcUI7RUFDckIsNkJBQTZCO0VBQzdCLG1CQUFtQjtFQUNuQixPQUFPO0VBQ1AsTUFBTTtBdElvaHhCbEI7O0FzSS9neEJJO0VBQ0ksV0FBVztFQUNYLGdCQUFnQjtFQUNoQixzQmpEMldnQztFaUQxV2hDLHVCQUEyRDtFQUMzRCxvQmhEOFBpQztFWGxTdkMsZ0JBQWdCO0VBQ2hCLHVCQUF1QjtFQUN2QixtQkFBbUI7QTNFdWp4QnJCOztBc0kxaHhCSTtFQVVRLGtCQUFrQjtFQUNsQixRQUFRO0VBQ1IsZWpEa1c0QjtFaURqVzVCLHVCQUFrQztFQUNsQyxpQkFBaUI7QXRJb2h4QjdCOztBc0lsaXhCSTtFQW1CUSxnQmpEcU9vQjtBckY4eXdCaEM7O0FzSXRpeEJJO0VBd0JRLHNCakQxQ007RWlEMkNOLGtCakR2Q007QXJGeWp4QmxCOztBc0kzaXhCSTs7RUFnQ1ksc0JqRGxERTtFaURtREYsbURoRDdCZ0U7QXRGNml4QmhGOztBc0lqanhCSTtFQXNDWSx5QmpEdkRLO0FyRnNreEJyQjs7QXNJcmp4Qkk7RUFpRFEsa0JqRHlVd0I7RWlEeFV4QixxQkFBOEQ7QXRJd2d4QjFFOztBc0kxanhCSTtFQXNEWSxXakRvVW9CO0FyRm9zd0JwQzs7QXNJOWp4Qkk7RUE0RFEscUJqRDBUMkI7RWlEelQzQixzQkFBOEQ7QXRJc2d4QjFFOztBc0lua3hCSTtFQWlFWSxjakRxVHVCO0FyRml0d0J2Qzs7QXNJaGd4Qkk7RUFDSSxpQmhEeUxrQztFZ0R4TGxDLGdCQUFnQjtFQUNoQixXQUFXO0F0SW1neEJuQjs7QXNJLy93Qkk7O0VBS1EsU0FBUztFQUNULGdCQUFnQjtFQUNoQixjQUFjO0VBQ2QsU0FBUztFQUNULGVBQWU7RUFDZixrQkFBa0I7RUFDbEIsUUFBUTtFQUNSLFVqRDRqQjRCO0VpRDNqQjVCLHFCQUFnQztFQUNoQyxVQUFVO0VBQ1YsVUFBVTtFdkM3SHBCLGNUcVAwQztFU3BQMUMsZVRvUDBDO0F0Rnk0d0I1Qzs7QXNJaGh4Qkk7O0VBbUJZLGVoRDlCaUM7QXRGZ2l4QmpEOztBc0lyaHhCSTs7RUEyQlksa0JBQWtCO0VBQ2xCLFVqRDRpQndCO0VpRDNpQnhCLFFBQVE7RUFDUixxQkFBZ0M7RUFDaEMsOEJsRCtCUztFVzVLdkIsY1RxUDBDO0VTcFAxQyxlVG9QMEM7QXRGeTV3QjVDOztBc0loaXhCSTtFQXVDWSxjbER1QlM7RXZFMUtyQix1QndFb09nQztFOURuTzlCLG1FK0R1RHlDO0F0RjBseEIvQzs7QXVCNW94Qkk7RStHc0dBO0kvR3JHRSxnQkFBZ0I7RXZCZ3B4QnBCO0FBQ0Y7O0FzSTVpeEJJO0VBNkNnQixnQkFBZ0I7RUFDaEIsc0JoRHZHK0I7RWdEd0cvQixlaER2RzBCO0VnRHdHMUIsa0JBQWtCO0VBQ2xCLFNBQTBFO0VBQzFFLFVBQTJFO0VBQzNFLGNBQWM7RUFDZCxVQUFVO0VuRHZKMUIsbUNBQW1DO0VBQ25DLGtDQUFrQztFNURUaEMscUMrRHVEeUM7QXRGOG14Qi9DOztBdUJocXhCSTtFK0dzR0E7SS9HckdFLGdCQUFnQjtFdkJvcXhCcEI7QUFDRjs7QXNJaGt4Qkk7RUE4RFksb0JqRDJEaUI7RTlEcE8zQiwwQytEdUR5QztBdEZ5bnhCL0M7O0F1QjNxeEJJO0UrR3NHQTtJL0dyR0UsZ0JBQWdCO0V2QitxeEJwQjtBQUNGOztBc0kza3hCSTtFQW1FZ0IsV0FBVztFQUNYLGtCQUFrQjtFQUNsQixjQUFpRjtFQUNqRixlQUFrRjtFQUNsRix1QkFBd0M7RUFDeEMscUJBQXFCO0VBQ3JCLFFBQVE7RUFDUixTQUFTO0VBQ1Qsb0JqRDhDYTtFaUQ3Q2IsVUFBVTtFL0d2THhCLGlDK0R1RHlDO0F0RjZveEIvQzs7QXVCL3J4Qkk7RStHc0dBO0kvR3JHRSxnQkFBZ0I7RXZCbXN4QnBCO0FBQ0Y7O0FzSS9seEJJOztFQXVGZ0IsVUFBVTtBdEk2Z3hCOUI7O0FzSXBteEJJO0VBZ0dnQixrQmpEaE1GO0VpRGlNRSxXakRqTUY7QXJGeXN4QmxCOztBc0l6bXhCSTtFQW9HZ0Isa0JqRHBNRjtBckY2c3hCbEI7O0FzSTdteEJJO0VBcUhZLFloRHNCd0I7QXRGcyt3QnhDOztBc0l2L3dCUTtFQUVRLGtCakQ1TkU7RWlENk5GLFdqRDdORTtBckZzdHhCbEI7O0FzSW4vd0JJO0VBQ0ksb0JqRG9jZ0M7RWlEbmNoQyxnQmpEc0N3QjtFaURyQ3hCLGtCakQrYWtDO0VpRDlhbEMscUJqRDhha0M7QXJGd2t3QjFDOztBc0kxL3dCSTtFQVFRLGFBQWE7QXRJcy93QnpCOztBc0k5L3dCSTtFQWFRLGdCQUFnQjtBdElxL3dCNUI7O0FzSWxneEJJO0VBa0JRLFdqRC9PTTtFaURnUE4sZWhEaktxQztBdEZxcHhCakQ7O0FzSS8rd0JJO0VBQ0ksZ0JqRGV3QjtBckZtK3dCaEM7O0FzSTkrd0JJO0VBRVEsZUFBZTtBdElnL3dCM0I7O0FzSTMrd0JJO0VBQ0ksa0JBQWtCO0VBQ2xCLG9CakQrWmdDO0VpRDlaaEMscUJBQStEO0F0STgrd0J2RTs7QXNJai93Qkk7RUFPUSxvQmpEWjBCO0VpRGExQixrQkFBa0I7RUFDbEIsZUFBd0Q7RUFDeEQsUUFBUTtFQUNSLHVCQUFpQztFQUNqQyxZQUFZO0VBQ1osVUFBVTtBdEk4K3dCdEI7O0FzSTMvd0JJO0VBa0JRLHVCQUF3RDtBdEk2K3dCcEU7O0FzSXArd0JJO0VBRVEsYUFBYTtFQUNiLG1CQUFtQjtFQUNuQixjQUFjO0F0SXMrd0IxQjs7QXNJMSt3Qkk7RXpIaFJBLHlCeUh5UjZDO0V6SHhSN0MsNEJ5SHdSNkM7QXRJcyt3QmpEOztBc0kvK3dCSTtFekg5UkEsMEJ5SDhTOEM7RXpIN1M5Qyw2QnlINlM4QztBdElvK3dCbEQ7O0F1SXZ5eEJBOzs7Ozs7Z0Z2SSt5eEJnRjtBdUlueXhCL0U7RUFDSSxrQkFBa0I7QXZJcXl4QnZCOztBdUl0eXhCQztFQUtRLGtCQUFrQjtFQUNsQixRQUFRO0VBQ1IsdUJBQXVDO0VBQ3ZDLGVsRDZYK0I7RTlEM1lsQyxpQytEdUR5QztBdEY2dnhCL0M7O0F1Qi95eEJJO0VnSENIO0loSEFLLGdCQUFnQjtFdkJtenhCcEI7QUFDRjs7QXdJaDB4QkE7Ozs7OztnRnhJdzB4QmdGO0F3SXh6eEIvRTtFQUNDLFdBQVc7QXhJMHp4QmI7O0F3SXR6eEJDO0VBQ0MsV25EQ2dCO0FyRnd6eEJsQjs7QXdJanp4QkM7RUFDQyxXQUFXO0VBQ1gsb0JuRHVvQjBDO0VtRHRvQjFDLG1CbkRvb0IwQztFbURub0IxQyxpQkFBOEI7RUFDOUIsc0JuRGxCZ0I7RW1EbUJoQixxQ25EVGdCO0VtRFVoQixpQmxEcVF3QztFa0RwUXhDLGdCQUFnQjtFM0hqQ2Qsd0J3RWtPaUM7RW1Cdk4vQiwrQ25CV1k7QXJGaTB4QmxCOztBd0lqenhCRTtFQUNDLGlCbEQrUHVDO0F0RnFqeEIxQzs7QXdJL3l4QkM7RUFDQyxXbkR4QmdCO0VtRHlCaEIsb0JuRHNvQnNDO0VtRHJvQnRDLGVBQWU7RWpIOUNYLGlDK0R1RHlDO0F0RjB5eEIvQzs7QXVCNTF4Qkk7RWlIc0NIO0lqSHJDSyxnQkFBZ0I7RXZCZzJ4QnBCO0FBQ0Y7O0F3STV6eEJDO0VBVUUsV25EakNlO0VtRGtDZix5Qm5EekNrQjtBckYrMXhCckI7O0F3SWp6eEJDO0VBQ0Msb0JuRHVuQnNDO0VtRHRuQnRDLGNBQWM7RUFDZCxnQm5EeU44QjtFbUR4TjNCLGtCbkRpbUJxQztFbURobUJyQyxxQm5EZ21CcUM7QXJGb3R3QjFDOztBd0lqenhCSztFQUNDLGFBQWE7QXhJb3p4Qm5COztBd0kveXhCQztFQUNDLG9CbkR5bUJzQztFbUR4bUJ0QyxrQkFBa0I7QXhJa3p4QnBCOztBeUluNHhCQTs7Ozs7O2dGekkyNHhCZ0Y7QXlJLzN4Qi9FOztFQUVDLGtCcERzZ0IwQztFb0RyZ0IxQyxxQnBEcWdCMEM7RW9EcGdCMUMsY0FBYztFQUNkLGNyRFN3QjtFcURSeEIsa0JBQWtCO0VBQ2xCLHNCQUFtRDtBeklpNHhCckQ7O0F5STczeEJDO0VBQ0MsY3JEWXlCO0FwRm8zeEIzQjs7QXlJdjN4QkM7O0VBR0Usc0JuRG9CZ0Q7RW1EbkJoRCxlbkRvQjJDO0VtRG5CM0Msa0JBQWtCO0VBQ2xCLGVBQW9EO0VBQ3BELE9BQU87RUFDUCxxQkFBcUI7RUFDckIsY0FBYztFdEQ1QmIsbUNBQW1DO0VBQ25DLGtDQUFrQztBbkZzNXhCdEM7O0F5SXA0eEJDOztFQWVFLGFBQWE7QXpJMDN4QmhCOztBeUlyM3hCQztFQUNDLGdCQUFnQjtBekl3M3hCbEI7O0F5SXAzeEJDO0VBQ0MsZ0JBQWdCO0F6SXUzeEJsQjs7QTBJbDd4QkE7Ozs7OztnRjFJMDd4QmdGO0EwSTk2eEIvRTtFQUNJLGtCQUFrQjtFQUNsQixjckRrWW9DO0VxRGpZcEMsVUFBVTtBMUlnN3hCZjs7QTBJbjd4QkM7RUFPUSxNQUFNO0VBQ04sVUFBVTtBMUlnN3hCbkI7O0EwSXg3eEJDO0VuSE5LLDRCK0R1RHlDO0F0RjI0eEIvQzs7QXVCNzd4Qkk7RW1IQ0g7SW5IQUssZ0JBQWdCO0V2Qmk4eEJwQjtBQUNGOztBMkk5OHhCQTs7Ozs7O2dGM0lzOXhCZ0Y7QTJJMTh4QjVFO0VBQ0ksYUFBYTtBM0k0OHhCckI7O0EySXg4eEJJOztFQUdRLFd0REdNO0VzREZOLGtCdEQrZmdDO0VzRDlmaEMscUJ0RDhmZ0M7QXJGNDh3QjVDOztBMklyOHhCSTtFQUlRLFd0RGRNO0FyRm05eEJsQjs7QTJJejh4Qkk7O0VBVVEsY3ZEWGM7RXVEWWQscUJ2RFpjO0FwRmc5eEIxQjs7QTJJOTd4Qkk7O0VBR1EsZXJEdURxQztFcUR0RHJDLFd0RHpCTTtBckZ5OXhCbEI7O0EySTM3eEJJOztFQUtRLGN2RGhDYztBcEYyOXhCMUI7O0EySWg4eEJJO0VBVVEsY3ZEckNjO0FwRis5eEIxQjs7QVFsK3hCRTtFbUk0Q2MscUJ2RHpDVTtBcEZtK3hCMUI7O0EySXA3eEJJO0VBQ0ksV0FBVztBM0l1N3hCbkI7O0EySW43eEJJO0VBQ0ksWUFBWTtBM0lzN3hCcEI7O0EySTc2eEJJO0VBRVEsc0JyRGxDdUM7RXFEbUN2QyxlckRsQ2tDO0VxRG1DbEMsc0JBQXNCO0VBQ3RCLHVCQUFtRDtFQUNuRCxrQkFBa0I7RUFDbEIsY0FBYztFQUNkLHFCQUFxQjtFQUNyQixzQnREc0NZO0FyRnk0eEJ4Qjs7QTJJeDd4Qkk7RUFjUSxhQUFhO0EzSTg2eEJ6Qjs7QTJJNTd4Qkk7RUFtQlEsZ0JBQWdCO0EzSTY2eEI1Qjs7QTJJeDZ4Qkk7RUFDSSwyS3RENkptTDtFc0Q1Sm5MLFlBQVk7RUFDWixlQUFlO0VBQ2YscUJ0RG1CZ0I7QXJGdzV4QnhCOztBMkkvNnhCSTtFQVFRLFlBQVk7QTNJMjZ4QnhCOztBMklsNnhCSTtFQUNJLGtCQUFrQjtFQUNsQixXQUFXO0VBQ1gsYUFBYTtFQUNiLHNCdERoSFU7QXJGcWh5QmxCOztBMkl6NnhCSTtFQVFRLGtCQUFrQjtFQUNsQixNQUFNO0VBQ04sU0FBUztFQUNULE9BQU87RUFDUCxRQUNKO0EzSW82eEJSOztBK0hoMXhCRztFWTNFSyx5QkFBOEM7QTNJKzV4QnREOztBMkl2NXhCSTtFQUNJLHFCdkQvR21CO0FwRnlneUIzQjs7QTJJbDV4Qkk7RUFJUSxxQnREckNZO0FyRnU3eEJ4Qjs7QTJJdDV4Qkk7RUFZWSxxQkFBcUI7QTNJODR4QnJDOztBMkkxNXhCSTtFQWdCZ0IscUJBQXFCO0VBQ3JCLHFCdERuREs7RXNEb0RMLHdCdERwREs7QXJGazh4QnpCOztBMkloNnhCSTtFQXNCb0IsYUFBYTtBM0k4NHhCckM7O0EySXA2eEJJO0VBMkJvQixxQnRENURBO0FyRnk4eEJ4Qjs7QTJJeDZ4Qkk7RUFrQ1kscUJBQXFCO0VBQ3JCLFdBQVc7QTNJMDR4QjNCOztBMkk3NnhCSTtFQXdDWSxjQUFjO0EzSXk0eEI5Qjs7QTJJOTN4Qkk7RUFDSSxxQnZEbE1rQjtFdURtTWxCLGN2RG5Na0I7QXBGb2t5QjFCOztBMkl6M3hCSTtFQUNJLG1CdERwR1c7QXJGZyt4Qm5COztBMkluM3hCSTtFQUNJLHVCQUE0QjtBM0lzM3hCcEM7O0EySWwzeEJJO0VBQ0ksZ0JBQWdCO0EzSXEzeEJ4Qjs7QTJJdDN4Qkk7RUFLUSx3QkFBNkI7QTNJcTN4QnpDOztBMkkxM3hCSTtFQVVRLHFCQUEwQjtBM0lvM3hCdEM7O0EySTkzeEJJO0VBZ0JRLFdBQVc7QTNJazN4QnZCOztBMkk3MnhCSTs7OztFQU1RLFNBQVM7QTNJODJ4QnJCOztBMkkzMnhCSTtFQUNJLFNBQVM7QTNJODJ4QmpCOztBMklyMnhCSTtFQUNJLG9CQUF5QjtBM0l3MnhCakM7O0EySXAyeEJJO0VBQ0ksU0FBUztBM0l1MnhCakI7O0EySW4yeEJJO0VBQ0ksbUJ0RHJLVztFc0RzS1gsaUJBQWlCO0EzSXMyeEJ6Qjs7QTJJbDJ4Qkk7RUFDSSxjQUFjO0VBQ2QsZUFBZTtBM0lxMnhCdkI7O0EySWoyeEJJO0VBQ0ksYUFBYTtBM0lvMnhCckI7O0EySWgyeEJJO0VBQ0ksb0JBQXlCO0EzSW0yeEJqQzs7QTJJLzF4Qkk7RUFDSSxnQkFBZ0I7QTNJazJ4QnhCOztBMkk5MXhCSTtFQUNJLFdBQVc7QTNJaTJ4Qm5COztBMkl6MXhCSTtFQU9ZLGtCQUF5QjtFQUN6QixxQkFBNEI7QTNJczF4QjVDOztBMkk5MXhCSTs7RUFjWSxjdkR2U1c7RXVEd1NYLHFCQUFxQjtBM0lxMXhCckM7O0EySXAyeEJJO0VBcUJRLGFBQWE7QTNJbTF4QnpCOztBMkl4MnhCSTtFQTBCUSxtQnREbE9PO0FyRm9qeUJuQjs7QTRJdHJ5QkE7Ozs7OztnRjVJOHJ5QmdGO0E0SWxyeUI1RTtFQUNJLFlBQVk7QTVJb3J5QnBCOztBeURoc3lCRTtFQUNFLGNBQWM7RUFDZCxXQUFXO0VBQ1gsV0FBVztBekRtc3lCZjs7QTRJM3J5Qkk7RUFNUSx1QkFBMkI7QTVJeXJ5QnZDOztBNEkvcnlCSTtFQVdRLDZCdER3UmlDO0VzRHZSakMsZUFBZTtFQUNmLFdBQVc7RUFDWCxrQkFBa0I7RS9IckIxQix3QndFa09pQztFOURqTy9CLGlDK0R1RHlDO0F0RnVweUIvQzs7QXVCenN5Qkk7RXFIQ0E7SXJIQUUsZ0JBQWdCO0V2QjZzeUJwQjtBQUNGOztBNEk5c3lCSTtFQW9CWSxzQnZEWkU7RXVEYUYsV3ZEUEU7QXJGcXN5QmxCOztBUS9zeUJFO0VvSXFCa0IseUJ4RDRFSTtFd0QzRUosV3ZEckJGO0FyRm10eUJsQjs7QTRJeHR5Qkk7RUFnQ1ksY0FBYztFQUNkLDBCQUF5QjtFQUN6QiwyQnZEbVd3QjtFdURsV3hCLHVCQUErRDtBNUk0cnlCL0U7O0E0SS90eUJJO0VBd0NZLFlBQVk7RUFDWixlQUFlO0VBQ2Ysa0JBQWtCO0VBQ2xCLFFBQVE7RUFDUixjQUFjO0VBQ2QsZXZEd1Z3QjtFdUR2VnhCLGNBQWM7RUFDZCx1QkFBK0I7RXJIckR6QyxxQytEdUR5QztBdEYwcnlCL0M7O0F1QjV1eUJJO0VxSENBO0lySEFFLGdCQUFnQjtFdkJndnlCcEI7QUFDRjs7QTRJanZ5Qkk7RUFvRGdCLGdCQUFnQjtFQUNoQixzQnREVCtCO0VzRFUvQixjQUFjO0VBQ2Qsb0J2RG1ONEM7RUZ4UTVELG1DQUFtQztFQUNuQyxrQ0FBa0M7QW5GdXZ5QnRDOztBNEkxdnlCSTtFQTZEZ0IsVUFBVTtBNUlpc3lCOUI7O0E0STl2eUJJO0VBeUVRLFdBQVc7QTVJeXJ5QnZCOztBNElsd3lCSTtFQThFUSxjQUFjO0VBQ2QsZ0JBQWdCO0VBQ2hCLDBCQUF5QjtFQUN6QixjQUFjO0VBQ2QsZUFBZTtFQUNmLDJCdkRrVDRCO0V1RGpUNUIsb0J0RCtNaUM7RXNEOU1qQyxxQnREOE1pQztFc0Q3TWpDLFNBQVM7RUFDVCxVQUFVO0E1SXdyeUJ0Qjs7QTRJL3d5Qkk7RUFrR1ksdUJ2RG1Td0I7QXJGODR4QnhDOztBNElueHlCSTtFQXVHWSxhQUFhO0E1SWdyeUI3Qjs7QTRJdnh5Qkk7RUE2R1EsZXREbkJxQztBdEZpc3lCakQ7O0E0STN4eUJJOztFQXFIZ0IsWXREbUxvQjtBdEZ3L3hCeEM7O0FRNXh5QkU7RW9Jc0hrQixzQnZEbEhGO0V1RG1IRSxXdkQ3R0Y7QXJGdXh5QmxCOztBNElyeXlCSTs7OztFQW9JWSxldEQxQ2lDO0F0Rmt0eUJqRDs7QTRJN3B5Qkk7Ozs7RUFNUSx1QnZENFB3QjtFdUQzUHhCLHlCQUFnRTtBNUk4cHlCNUU7O0E0SXJxeUJJOztFQVlRLHVCdkRzUHdCO0FyRnc2eEJwQzs7QTRJMXF5Qkk7O0VBaUJRLFd2RGlQd0I7QXJGNjZ4QnBDOztBNEkvcXlCSTs7RUFzQlEsbUJ2RDRPd0I7QXJGazd4QnBDOztBNEl6cHlCSTs7OztFQU1RLDBCdkQ2TjJCO0V1RDVOM0IseUJBQWdFO0E1STBweUI1RTs7QTRJanF5Qkk7O0VBWVEsMEJ2RHVOMkI7QXJGbTh4QnZDOztBNEl0cXlCSTs7RUFpQlEsY3ZEa04yQjtBckZ3OHhCdkM7O0E0STNxeUJJOztFQXNCUSxzQnZENk0yQjtBckY2OHhCdkM7O0E2SXQyeUJBOzs7Ozs7Z0Y3STgyeUJnRjtBNklsMnlCNUU7RUFDSSxzQnhESVU7RXdESFYsc0J4RE9VO0V3RE5WLHFCQUFxQjtFQUNyQix1QkFBMkI7RUFDM0Isc0JBQXNCO0VBQ3RCLFdBQVc7RWhJYmYsd0J3RWtPaUM7QXJGZ3B5QnJDOztBNkkzMnlCSTtFQVdRLGNBQWM7RUFDZCxTQUFTO0VBQ1QsVUFBVTtFQUNWLDZCQUE2QjtFQUM3QiwyQnhEc1g0QjtFd0RyWDVCLG9CdkRtUmlDO0V1RGxSakMscUJ2RGtSaUM7RXVEalJqQyxzQkFBc0I7RUFDdEIsY0FBYztFQUNkLGVBQWU7RUFDZixnQkFBZ0I7QTdJbzJ5QjVCOztBNkloMnlCUTtFQUNJLFNBQVM7RUFDVCxjQUFjO0E3SW0yeUIxQjs7QTZJOTN5Qkk7RUFnQ1EsV0FBVztBN0lrMnlCdkI7O0E2SWw0eUJJO0VBbUNRLG1CQUE2QztFQUM3QyxtQnhEcW5CZ0M7QXJGOHV4QjVDOztBNkl2NHlCSTtFQXlDUSw2QnZEMFBpQztFdUR6UGpDLDJCeEQyVjRCO0V3RDFWNUIsdUJBQStEO0VBQy9ELFdBQVc7RUFDWCxrQkFBa0I7RWhJcEQxQix3QndFa09pQztFOURqTy9CLGlDK0R1RHlDO0F0RmcyeUIvQzs7QXVCbDV5Qkk7RXNIQ0E7SXRIQUUsZ0JBQWdCO0V2QnM1eUJwQjtBQUNGOztBNkl2NXlCSTtFQW1EWSxzQnhEM0NFO0V3RDRDRixXeER0Q0U7QXJGODR5QmxCOztBUXg1eUJFO0VxSW9Ea0IseUJ6RDZDSTtFeUQ1Q0osV3hEcERGO0FyRjQ1eUJsQjs7QTZJajZ5Qkk7RUErRFksZUFBZTtFQUNmLGtCQUFrQjtFQUNsQixRQUFRO0VBQ1IsZXhEbVV3QjtFd0RsVXhCLGNBQWM7RUFDZCx1QkFBK0I7RUFDL0IsWUFBWTtFdEgzRXRCLHFDK0R1RHlDO0F0RjIzeUIvQzs7QXVCNzZ5Qkk7RXNIQ0E7SXRIQUUsZ0JBQWdCO0V2Qmk3eUJwQjtBQUNGOztBUWw3eUJFO0VxSTBFa0IsVUFBVTtBN0k0MnlCOUI7O0E2SXQ3eUJJO0VBK0VnQixnQkFBZ0I7RUFDaEIsc0J2RHBDK0I7RXVEcUMvQixjQUFjO0VBQ2Qsb0J4RHdMNEM7RUZ4UTVELG1DQUFtQztFQUNuQyxrQ0FBa0M7QW5GNDd5QnRDOztBOEkzOHlCQTs7Ozs7O2dGOUltOXlCZ0Y7QThJdjh5QjVFO0VBSVEsbUJBQW1CO0E5SXM4eUIvQjs7QThJMTh5Qkk7RUFRWSxlQUE2RjtFQUM3RixpQnpEOE1lO0V4RTlOM0IsZ0JpSWlCb0M7QTlJczh5QnhDOztBOEloOXlCSTtFQWVZLGtCQUFrQjtFQUNsQixRQUFRO0VBQ1IsU0FBUztFQUNULG9CQUFrQztFQUNsQyxtQkFBaUM7RUFDakMsbUJBQW1CO0E5SXE4eUJuQzs7QThJejl5Qkk7RUF5Qlksc0J6RGhCRTtFeEVoQmQsZ0JpSWlDb0M7QTlJbzh5QnhDOztBOEk5OXlCSTtFQStCWSxzQnpEdEJFO0V4RUFkLGtDd0VrTmlDO0V4RWpOakMscUN3RWlOaUM7QXJGeXd5QnJDOztBOElwK3lCSTtFQTRDWSxlQUFnRztBOUk0N3lCaEg7O0E4SXgreUJJO0VqSVNBLGdDd0VtTitCO0V4RWxOL0IsbUN3RWtOK0I7QXJGaXh5Qm5DOztBOEk3K3lCSTtFQXNEWSxlQUFnRztBOUkyN3lCaEg7O0E4SWoveUJJO0VqSVNBLGlDd0VvTmdDO0V4RW5OaEMsb0N3RW1OZ0M7QXJGeXh5QnBDOztBOEl2N3lCSTtFakl4Q0EsaUN3RW9NaUM7RXhFbk1qQyxvQ3dFbU1pQztBckZneXlCckM7O0E4SXg3eUJTO0VqSTVDTCwrQndFcU0rQjtFeEVwTS9CLGtDd0VvTStCO0FyRm95eUJuQzs7QThJeDd5QlM7RWpJakRMLGdDd0VzTWdDO0V4RXJNaEMsbUN3RXFNZ0M7QXJGd3l5QnBDOztBK0lqaHpCQTs7Ozs7O2dGL0l5aHpCZ0Y7QStJN2d6QjVFO0VBSVEsc0IxRGtITztBckYwNXlCbkI7O0ErSWhoekJJO0VBU1Esa0IxRDJYNkI7RXhFbFlyQyx5QmtJUW9DO0VsSVBwQywwQmtJT29DO0EvSTRnekJ4Qzs7QStJdGh6Qkk7RUFhUSxjQUFjO0VBQ2QsMkIxRHVYNEI7RXhFNVlwQyx3QndFa09pQztBckZpMHlCckM7O0ErSTVoekJJOztFQXdCWSxhQUFhO0EvSXlnekI3Qjs7QStJaml6Qkk7O0VBaUNnQixXQUFXO0VsSS9CM0IsaUN3RXlOaUM7RXhFeE5qQyxrQ3dFd05pQztBckY2MHlCckM7O0ErSXhpekJJO0VBdUNnQixzQjFEZ0xXO0FyRnExeUIvQjs7QStJNWl6Qkk7RUFtRFEsV0FBVztFQUNYLG1CMURtS21CO0FyRjAxeUIvQjs7QStJamp6Qkk7O0VBMERRLGFBQWE7RUFDYixtQjFEMkRPO0FyRmk4eUJuQjs7QVE1aXpCRTs7OztFdUlvRGMsNkJBQTZCO0VBQzdCLFNBQVM7RUFDVCxjM0Q3RFc7RTJEOERYLFVBQVU7RUFDVixnQkFBZ0I7QS9JKy95QmhDOztBK0lsa3pCSTs7RUF3RVEscUJBQXFCO0EvSSsveUJqQzs7QStJdmt6Qkk7Ozs7RUFnRlEsVUFBVTtBL0k4L3lCdEI7O0ErSTlrekJJO0VBcUZRLFNBQVM7RWxJckVqQiw2QmtJc0V1QztFbElyRXZDLDRCa0lxRXVDO0EvSTgveUIzQzs7QStJcGx6Qkk7RUEwRlksb0JBQW9CO0EvSTgveUJwQzs7QStJeGx6Qkk7RUErRlksV0FBVztFQUNYLGtCQUFrQjtBL0k2L3lCbEM7O0ErSTdsekJJO0VBb0dnQixrQnpEdkQwQjtBdEZvanpCOUM7O0ErSWptekJJO0VBZ0hRLHNCMURNTztFMERMUCxrQkFBa0I7QS9JcS95QjlCOztBK0l0bXpCSTtFQW9IWSxXMUR6R0U7QXJGK2x6QmxCOztBK0kxbXpCSTtFQTJIWSxxQkFBcUI7RUFDckIsbUIxRE5HO0FyRnkveUJuQjs7QStJL216Qkk7RUErSGdCLHNCMURKSTtBckZ3L3lCeEI7O0ErSTEreUJRO0VBQ0ksa0JBQWtCO0EvSTYreUI5Qjs7QStJOSt5QlE7O0VBS1EsVUFBVTtFQUNWLFdBQVc7RUFDWCxlQUFlO0EvSTgreUIvQjs7QStJci95QlE7RUFXUSx5QjFEMUJTO0FyRndnekJ6Qjs7QStJei95QlE7RUFjWSxnQkFBZ0I7RUFDaEIsZXpEM0cwQjtFeUQ0RzFCLHNCekQ3RytCO0V5RDhHL0IsY0FBYztFQUNkLGtCQUFrQjtFQUNsQixjQUFjO0VBQ2Qsa0JBQXVCO0VBQ3ZCLFlBQVk7RTVENUo1QixtQ0FBbUM7RUFDbkMsa0NBQWtDO0FuRjRvekJ0Qzs7QWlCL2x6Qkk7RThIaERBO0lBMktZLGdCQUFnQjtFL0l5K3lCOUI7RStJM2d6Qk07SUF1Q1ksZ0JBQWdCO0UvSXUreUJsQztBQUNGOztBZ0pwcXpCQTs7Ozs7O2dGaEo0cXpCZ0Y7QStIMyt5QnZFO0VpQnBMRCxXQUFXO0FoSmtxekJuQjs7QWdKbnF6Qkk7O0VBTVEsYUFBYTtBaEprcXpCekI7O0FnSnhxekJJO0VBV1Esa0JBQWtCO0VBQ2xCLFdBQVc7RUFDWCxVQUFVO0FoSmlxekJ0Qjs7QWdKOXF6Qkk7RUFnQlksa0IzRDIzQnFCO0FyRnV5eEJyQzs7QWdKbHJ6Qkk7RUFvQlksU0FBUztFakQ3QnZCLFdpRDhCZ0M7RWpEN0JoQyxZaUQ2QmdDO0FoSm1xekJsQzs7QWdKN3B6Qkk7RUFJUSxrQkFBa0I7RUFDbEIsY0FBYztFQUNkLFdBQVc7QWhKNnB6QnZCOztBZ0pucXpCSTtFQVVZLGNBQWM7RUFDZCxXQUFXO0VBQ1gsbUJBQW1CO0VBQ25CLFNBQVM7RUFDVCxVQUFVO0VBQ1YsZ0JBQWdCO0FoSjZwekJoQzs7QWdKNXF6Qkk7RUFtQmdCLG1CQUFtQjtFQUNuQixXQUFXO0VBQ1gsbUJBQW1CO0VBQ25CLGtCQUFrQjtFQUNsQixrQkFBa0I7QWhKNnB6QnRDOztBZ0pwcnpCSTtFQTJCb0Isa0JBQWtCO0VBQ2xCLGlCQUF1RDtFQUN2RCxtQjNEOERMO0UyRDdESyxzQjNENkRMO0UyRDVESyxjQUFjO0VBQ2QsVUFBVTtFQUNWLFczRGpETjtBckY4c3pCbEI7O0FnSjlyekJJO0VBdUNvQixXQUFXO0VBQ1gsY0FBYztFQUNkLGtCQUFrQjtFQUNsQixhQUFpSDtFQUNqSCxVQUFVO0VBQ1YsVzFEc09nQjtFMERyT2hCLHlCNUQ1QkE7RTRENkJBLFVBQVU7QWhKMnB6QmxDOztBZ0p6c3pCSTtFQWlEb0IsT0FBTztBaEo0cHpCL0I7O0FnSjdzekJJO0VBb0RvQixRQUFRO0FoSjZwekJoQzs7QWdKanR6Qkk7RUF3RG9CLGFBQWE7QWhKNnB6QnJDOztBZ0pydHpCSTs7O0VBZ0V3QixzQjNEbkZWO0FyRjh1ekJsQjs7QWdKM3R6Qkk7RUFxRXdCLFczRGxGVjtFMkRtRlUsZUFBZTtBaEowcHpCM0M7O0FnSmh1ekJJO0VBMkV3QixZQUFZO0VBQ1oscUI1RDNESjtFNEQ0REksc0IzRG5HVjtFMkRvR1UsYzVEN0RKO0FwRnN0ekJ4Qjs7QWdKdnV6Qkk7RUFrRjRCLGdCQUFnQjtFQUNoQixzQjFEbEVtQjtFMERtRW5CLHFCQUFxQjtFQUNyQixlMURuRWM7RTBEb0VkLHFCQUE4RTtFN0QvRzFHLG1DQUFtQztFQUNuQyxrQ0FBa0M7RTVEVGhDLGlDK0R1RHlDO0F0RjR0ekIvQzs7QXVCOXd6Qkk7RXlINEJBO0l6SDNCRSxnQkFBZ0I7RXZCa3h6QnBCO0FBQ0Y7O0FnSnh2ekJJO0VBZ0d3QixlMURqQ3FCO0F0RjZyekJqRDs7QVE1d3pCRTtFd0kwSDhCLFczRDFIZDtBckZneHpCbEI7O0FnSmh3ekJJO0VBZ0h3QixZQUFZO0VBQ1oseUI1RGhHSjtFNERpR0kscUI1RGpHSjtFNERrR0ksVzNEeklWO0FyRjZ4ekJsQjs7QWdKdnd6Qkk7RUF1SDRCLGdCQUFnQjtFQUNoQixzQjFEdkdtQjtFMER3R25CLHFCQUFxQjtFQUNyQixlMUR4R2M7RTBEeUdkLHFCQUF1RTtFN0RwSm5HLG1DQUFtQztFQUNuQyxrQ0FBa0M7RTVEVGhDLGlDK0R1RHlDO0F0RjR2ekIvQzs7QXVCOXl6Qkk7RXlINEJBO0l6SDNCRSxnQkFBZ0I7RXZCa3p6QnBCO0FBQ0Y7O0FnSnh4ekJJO0VBcUl3QixxQjVEbEpGO0U0RG1KRSxjNURuSkY7QXBGMHl6QjFCOztBZ0pqcHpCZ0I7RUFDSSwwQzNEekpGO0FyRjZ5ekJsQjs7QWlCL3Z6Qkk7RStIbENBO0lBa0pnQixzQjNEdkREO0VyRjJzekJqQjtFZ0p0eXpCRTtJQXNKb0IsY0FBYztJQUNkLFdBQVc7SUFDWCxVQUFVO0VoSm1wekJoQztFZ0ozeXpCRTtJQTJKd0IsZ0JBQWdCO0VoSm1wekIxQztFZ0o5eXpCRTtJQWdLd0IsV0FBVztFaEppcHpCckM7RWdKanp6QkU7SUFvS3dCLHlCNURuSko7RXBGbXl6QnRCO0FBQ0Y7O0FpQm54ekJJO0UrSGxDQTtJQTRLb0IsV0FBVztFaEo4b3pCakM7RWdKMXp6QkU7SUErS3dCLHlCNUQ5Sko7RXBGNHl6QnRCO0FBQ0Y7O0FnSjl6ekJJO0VBdUxZLHNCM0Q3TUU7RTJEOE1GLFczRHpNRTtFMkQwTUYscUJBQXFCO0VBQ3JCLGtCQUFrQjtFQUNsQixNQUFNO0VBQ04sU0FBUztFQUNULHVCQUEyQztFQUMzQyxzQjNEak5FO0UyRGtORixtQjNEOEMwQztFMkQ3QzFDLFdBQVc7RUFDWCxxQkFBOEU7RUFDOUUsa0JBQWtCO0VqRHRPaEMsZWJvRnFEO0VhbkZyRCxnQmJtRnFEO0VyRWxGbkQsa0J3RXNPMkI7QXJGNG96Qi9COztBZ0p0b3pCSTtFQUlRLGtCQUFrQjtFQUNsQixpQkFBaUI7RUFDakIsZ0IzRGdxQnlCO0UyRC9wQnpCLGNBQWM7QWhKc296QjFCOztBZ0o3b3pCSTtFQVdZLGdCQUFnQjtFQUNoQixVQUFVO0VBQ1YsU0FBUztBaEpzb3pCekI7O0F5RG40ekJFO0VBQ0UsY0FBYztFQUNkLFdBQVc7RUFDWCxXQUFXO0F6RHM0ekJmOztBZ0p6cHpCSTtFQWtCZ0IscUJBQXFCO0FoSjJvekJ6Qzs7QWdKN3B6Qkk7RUFzQm9CLG9CM0RncEJhO0FyRjIveEJyQzs7QWlKbDV6QkE7Ozs7OztnRmpKMDV6QmdGO0FpSjE0ekI1RTtFQUNJLHlCQUF5QjtFQUN6QixrQkFBa0I7RUFDbEIsbUJBQW1CO0VBQ25CLGtDQUFvRjtFQUNwRixnS0FFdUc7QWpKMDR6Qi9HOztBQUVBOztFaUp0NHpCUSxxQkFBcUI7RUFDckIseUJBQXlCO0VBQ3pCLGtCQUFrQjtFQUNsQixrQkFBa0I7RUFDbEIsd0JBQXdCO0VBQ3hCLHNCQUFzQjtFQUN0QixtQkFBbUI7RTlEckJ2QixtQ0FBbUM7RUFDbkMsa0NBQWtDO0FuRis1ekJ0Qzs7QWlKdDR6Qkk7RUFBK0IsZ0JBQWU7QWpKMDR6QmxEOztBaUp6NHpCSTtFQUErQixnQkFBZTtBako2NHpCbEQ7O0FpSjU0ekJJO0VBQWdDLGdCQUFlO0FqSmc1ekJuRDs7QWlKLzR6Qkk7RUFBNkIsZ0JBQWU7QWpKbTV6QmhEOztBaUpsNXpCSTtFQUFnQyxnQkFBZTtBakpzNXpCbkQ7O0FpSnI1ekJJO0VBQThCLGdCQUFlO0FqSnk1ekJqRDs7QWlKeDV6Qkk7RUFBd0IsZ0JBQWU7QWpKNDV6QjNDOztBaUozNXpCSTtFQUFvQyxnQkFBZTtBakorNXpCdkQ7O0FpSjk1ekJJO0VBQW9DLGdCQUFlO0FqSms2ekJ2RDs7QWlKajZ6Qkk7RUFBcUMsZ0JBQWU7QWpKcTZ6QnhEOztBaUpwNnpCSTtFQUFrQyxnQkFBZTtBakp3NnpCckQ7O0FpSnY2ekJJO0VBQTZCLGdCQUFlO0FqSjI2ekJoRDs7QWlKMTZ6Qkk7RUFBMkIsZ0JBQWU7QWpKODZ6QjlDOztBaUo3NnpCSTtFQUEyQixnQkFBZTtBakppN3pCOUM7O0FpSmg3ekJJO0VBQXVCLGdCQUFlO0FqSm83ekIxQzs7QWlKbjd6Qkk7RUFBd0IsZ0JBQWU7QWpKdTd6QjNDOztBaUp0N3pCSTtFQUErQixnQkFBZTtBakowN3pCbEQ7O0FpSno3ekJJO0VBQXlCLGdCQUFlO0FqSjY3ekI1Qzs7QWlKNTd6Qkk7RUFBd0IsZ0JBQWU7QWpKZzh6QjNDOztBaUovN3pCSTtFQUF1QixnQkFBZTtBakptOHpCMUM7O0FpSmw4ekJJO0VBQTRCLGdCQUFlO0FqSnM4ekIvQzs7QWlKcjh6Qkk7RUFBNkIsZ0JBQWU7QWpKeTh6QmhEOztBaUp4OHpCSTtFQUE2QixnQkFBZTtBako0OHpCaEQ7O0FpSjM4ekJJO0VBQXlCLGdCQUFlO0FqSis4ekI1Qzs7QWlKOTh6Qkk7RUFBdUIsZ0JBQWU7QWpKazl6QjFDOztBaUpqOXpCSTtFQUF3QixnQkFBZTtBakpxOXpCM0M7O0FpSnA5ekJJO0VBQXlCLGdCQUFlO0FqSnc5ekI1Qzs7QWlKdjl6Qkk7RUFBdUIsZ0JBQWU7QWpKMjl6QjFDOztBaUoxOXpCSTtFQUF3QixnQkFBZTtBako4OXpCM0M7O0FpSjc5ekJJO0VBQTZCLGdCQUFlO0FqSmkrekJoRDs7QWlKaCt6Qkk7RUFBd0IsZ0JBQWU7QWpKbyt6QjNDOztBaUpuK3pCSTtFQUE4QixnQkFBZTtBakp1K3pCakQ7O0FpSnQrekJJO0VBQXlCLGdCQUFlO0FqSjArekI1Qzs7QWlKeit6Qkk7RUFBMEIsZ0JBQWU7QWpKNit6QjdDOztBaUo1K3pCSTtFQUEyQixnQkFBZTtBakpnL3pCOUM7O0FpSi8rekJJO0VBQXVCLGdCQUFlO0FqSm0vekIxQzs7QWlKbC96Qkk7RUFBNEIsZ0JBQWU7QWpKcy96Qi9DOztBaUpyL3pCSTtFQUE0QixnQkFBZTtBakp5L3pCL0M7O0FpSngvekJJO0VBQTZCLGdCQUFlO0FqSjQvekJoRDs7QWlKMy96Qkk7RUFBb0MsZ0JBQWU7QWpKKy96QnZEOztBaUo5L3pCSTtFQUF5QixnQkFBZTtBakprZzBCNUM7O0FpSmpnMEJJO0VBQWdDLGdCQUFlO0FqSnFnMEJuRDs7QWlKcGcwQkk7RUFBNEIsZ0JBQWU7QWpKd2cwQi9DOztBaUp2ZzBCSTtFQUE2QixnQkFBZTtBakoyZzBCaEQ7O0FpSjFnMEJJO0VBQThCLGdCQUFlO0FqSjhnMEJqRDs7QWlKN2cwQkk7RUFBd0IsZ0JBQWU7QWpKaWgwQjNDOztBaUpoaDBCSTtFQUE4QixnQkFBZTtBakpvaDBCakQ7O0FpSm5oMEJJO0VBQXdCLGdCQUFlO0FqSnVoMEIzQzs7QWlKdGgwQkk7RUFBNEIsZ0JBQWU7QWpKMGgwQi9DOztBaUp6aDBCSTtFQUF1QixnQkFBZTtBako2aDBCMUM7O0FpSjVoMEJJO0VBQWdDLGdCQUFlO0FqSmdpMEJuRDs7QWlKL2gwQkk7RUFBd0IsZ0JBQWU7QWpKbWkwQjNDOztBaUo1aDBCSTtFQUNJLGtCQUFrQjtBakoraDBCMUI7O0FpSmhpMEJJO0VBS1Esa0JBQWtCO0VBQ2xCLFlBQVk7RUFDWixhQUFhO0VBQ2IsYzdEMUZlO0U2RDJGZixzQjVEMUZNO0U0RDJGTixvQkFBb0I7RUFDcEIsMEI3RDdGZTtFNkQ4RmYsWUFBWTtBakoraDBCeEI7O0FpSjNpMEJJO0VBZ0JZLGM3RGxHVztFNkRtR1gsMEI3RG5HVztBcEZrbzBCM0I7O0FpSmhqMEJJO0VBc0JZLG1CQUFtQjtFQUNuQixvQjVEd0wrQztFNER2TC9DLGdCNURrS2dCO0U0RGpLaEIsa0JBQWtCO0VBQ2xCLHNCQUFzQjtBako4aDBCdEM7O0FpSjNoMEJRO0VBQ0ksa0I1RDNHTTtFbUJMWixnQnlDaUg4QjtBako4aDBCcEM7O0FpSjdqMEJJO0VBa0NRLGNBQWM7QWpKK2gwQjFCOztBaUpqazBCSTtFQXdDWSxnQkFBZ0I7QWpKNmgwQmhDOztBaUpyazBCSTtFQTZDWSxnQkFBZ0I7QWpKNGgwQmhDOztBaUp6azBCSTtFQW1EUSxvQjVENEptRDtBckY4M3pCL0Q7O0FpSjdrMEJJO0VBeURZLHNCNUQxSUU7RTREMklGLG9CNUQ2aEJ3QjtBckYyL3lCeEM7O0FpSmxoMEJRO0VBQ0ksU0FBUztFQUNULFNBQVM7RXBJL0pqQixnQm9JZ0tnQztBakpxaDBCcEM7O0FpSmhoMEJJO0VBQ0ksVUFBVTtBakptaDBCbEI7O0FpSi9nMEJJO0VBQ0k7SUFDSSxZQUFZO0VqSmtoMEJ0QjtBQUNGOztBaUo5ZzBCSTtFQUNJLGtCQUFrQjtFQUNsQixhQUFhO0VBQ2IsVzVEbEtVO0FyRm1yMEJsQjs7QWlKN2cwQkk7RUFDSSxxQzVEbktVO0U0RG9LViw2QzVEcEtVO0U0RHFLViwwQjVEdXRCNkI7RTREdHRCN0IsY0FBYztFQUNkLFNBQVM7QWpKZ2gwQmpCOztBaUo1ZzBCSTs7RUFFSSxpQkFBaUI7RUFDakIsY0FBYztBakorZzBCdEI7O0FpSjNnMEJJO0VBRVEsZ0JBQWdCO0FqSjZnMEI1Qjs7QWlKbmcwQkk7RUFDSSxrQkFBa0I7QWpKc2cwQjFCOztBaUp2ZzBCSTtFQUtRLFVBQVU7QWpKc2cwQnRCOztBaUozZzBCSTtFQVFZLHFCQUFxQjtBakp1ZzBCckM7O0FpSi9nMEJJO0VBV1ksbUJBQW1CO0FqSndnMEJuQzs7QWlKbmgwQkk7RUFrQlksc0I1RHBHUTtBckZ5bTBCeEI7O0FpSnZoMEJJO0VBcUJZLHFCNUR2R1E7QXJGNm0wQnhCOztBaUpoZzBCSTtFQU1nQixhQUFhO0FqSjgvekJqQzs7QWlKcGcwQkk7RUFTZ0IsY0FBYztBakorL3pCbEM7O0FpSnhnMEJJO0VBZ0JRLGdCQUFnQjtBako0L3pCNUI7O0FpSjVnMEJJO0VBb0JZLGdCNUQrb0JxQjtFNEQ5b0JyQixjQUFjO0VBQ2QsVzVEaFBFO0U0RGlQRixzQjVEMVBFO0U0RDJQRixvQi9Eckx1QztBbEZpcjBCdkQ7O0FpSnBoMEJJO0VBMkJnQixzQjVEM1BGO0FyRnd2MEJsQjs7QWlKeGgwQkk7RUFpQ1ksYUFBYTtFQUNiLFdBQVc7RUFDWCxnQjVEZ29CcUI7RTREL25CckIsZ0JBQWdCO0VBQ2hCLGlHNURWaUc7RTREV2pHLFc1RHpRRTtFNEQwUUYsc0I1RGpRRTtFNERrUUYsU0FBUztFQUNULFlBQVk7RXpDN1F0QixnQnlDOFFrQztFcEl6UnBDLGdCb0kwUm9DO0FqSjIvekJ4Qzs7QWlKdGkwQkk7RUFpRFEsZUFBZTtFQUNmLE1BQU07RUFDTixPQUFPO0VBQ1AsYTVENmFtQjtFNEQ1YW5CLHNCQUFxQjtFQUNyQixTQUFTO0VwSXJTakIsZ0JvSXNTZ0M7QWpKeS96QnBDOztBaUpoajBCSTtFQTJEWSxhQUFhO0FqSnkvekI3Qjs7QWlKcGowQkk7RUFpRVEsa0JBQWtCO0VBQ2xCLGFBQWE7RUFDYixXNURoU007QXJGdXgwQmxCOztBaUpsL3pCSTtFQUNJLHFDNURsU1U7QXJGdXgwQmxCOztBaUp0L3pCSTtFQUtRLFdBQVc7RUFDWCxjQUEyQztFQUMzQyxpQkFBaUI7RUFDakIsMEI1RC9TTTtBckZveTBCbEI7O0FpSjcvekJJO0VBWVksYzNEUzRCO0UyRFI1QixnQkFBdUM7RUFDdkMsMEI1RHJURTtBckYweTBCbEI7O0FpSjErekJJO0VBSVEsYUFBYTtFQUNiLGVBQWU7QWpKMCt6QjNCOztBaUovK3pCSTtFQVNZLHFCQUFxQjtFQUNyQixnQjVEbW1Cb0I7RTREbG1CcEIsc0JBQXNCO0V0RTVWcEMsZ0JBQWdCO0VBQ2hCLHVCQUF1QjtFQUN2QixtQkFBbUI7QTNFdTAwQnJCOztBaUp4L3pCSTtFQWlCWSx3QkFBK0I7QWpKMit6Qi9DOztBaUo1L3pCSTtFQXVCUSxvQkFBb0I7RUFDcEIsZ0M1RDZsQjRCO0U0RDVsQjVCLG1CQUFtQjtFQUNuQixlQUFlO0FqSnkrekIzQjs7QWlKbmcwQkk7RUE2QlksdUI1RHdsQndCO0U0RHZsQnhCLHdCNUR1bEJ3QjtBckZtNXlCeEM7O0FpSnhnMEJJO0VBa0NZLHVCNURtbEJ3QjtFNERsbEJ4Qix3QjVEa2xCd0I7QXJGdzV5QnhDOztBaUpwK3pCSTtFQUVRLFNBQVM7QWpKcyt6QnJCOztBaUpqK3pCSTtFQUNJLG1CNUQrUm9DO0U0RDlScEMsaUJBQThCO0FqSm8rekJ0Qzs7QWlKdCt6Qkk7RUFLUSxpQkFBaUI7RUFDakIsY0FBYztBakpxK3pCMUI7O0FpSjMrekJJO0VBVWdCLHlCQUF3QjtFQUN4QixvQjVEeVNvQjtFNER4U3BCLFc1RHZYRjtFNER3WEUsV0FBVztBakpxK3pCL0I7O0FRdjIwQkU7RXlJc1lzQixXNUQ1WE47RTRENlhNLHlCNURwWUg7RTREcVlHLHFCQUFxQjtBakpxK3pCN0M7O0FpSngvekJJO0VBd0JvQixXNUQ1WU47RTRENllNLHFCQUFxQjtFQUNyQix5QjdEL1lHO0FwRm0zMEIzQjs7QWlKMzl6Qkk7RUFJUSxxQjVEMGUyQjtFNER6ZTNCLHVCNUR5ZTJCO0FyRmsveUJ2Qzs7QWlKaCt6Qkk7RUFRWSxlQUFlO0FqSjQ5ekIvQjs7QWlKcCt6Qkk7RUFrQmdCLGFBQWE7QWpKczl6QmpDOztBaUp4K3pCSTtFQXVCZ0IsVzVEOWFGO0U0RCthRSx5QjdEaGJPO0FwRnE0MEIzQjs7QWlKNyt6Qkk7RUErQlEsY0FBYztBakprOXpCMUI7O0FpSmovekJJO0VBbUNnQixVQUFVO0VBQ1YsU0FBUztFQUNULHNCNUQ1YkY7RVVkaEIsY2tEMmN1QztFbEQxY3ZDLGVrRDBjdUM7QWpKbTl6QnpDOztBUXI1MEJFO0V5SXFjc0Isa0I1RHZiTjtBckYyNDBCbEI7O0FpSjU4ekJJOztFQUlZLFlBQVk7RUFDWixlNUR3TTBCO0FyRnF3ekIxQzs7QWlKbDl6Qkk7O0VBU2dCLG1CQUFtQjtBako4OHpCdkM7O0FpSnY5ekJJOztFQVlvQiw2QkFBNEI7RUFDNUIsVUFBVTtFQUNWLFdBQVc7RUFDWCxZQUFZO0VBQ1osZUFDSjtBakorOHpCcEI7O0FpSmgrekJJOztFQW9Cb0IsNkJBQTRCO0VBQzVCLFVBQVU7RUFDVixVQUFVO0VBQ1YsV0FBVztFQUNYLG9SQUFvUjtBakppOXpCNVM7O0FpSnorekJJOztFQTRCb0IsNkJBQTRCO0VBQzVCLFVBQVU7RUFDVixVQUFVO0VBQ1YsV0FBVztFQUNYLG9SQUFvUjtBakprOXpCNVM7O0FpSmwvekJJOztFQXNDZ0Isa0JBQWtCO0VBQ2xCLGtCNURzS3NCO0FyRjJ5ekIxQzs7QWlKMTh6Qkk7RUFJUSxZQUFZO0FqSjA4ekJ4Qjs7QWlKOTh6Qkk7RUFZWSxhQUFhO0FqSnM4ekI3Qjs7QWlKbDl6Qkk7RUFpQlkscUJBQXFCO0VBQ3JCLFlBQW9CO0VBQ3BCLDBCNUR6SXdCO0FyRjhrMEJ4Qzs7QWlKeDl6Qkk7RUF1QmdCLHVCQUE0QjtFQUM1QixnQjVEblFZO0FyRndzMEJoQzs7QWlKNzl6Qkk7RUE2QmdCLFdBQVc7RUFDWCwwQjVENUltQjtFNEQ2SW5CLHVCNURySm9CO0FyRnlsMEJ4Qzs7QWlKNzd6Qkk7RUFJUSxlNUR1SThCO0U0RHRJOUIsbUJBQW1CO0FqSjY3ekIvQjs7QWlKbDh6Qkk7RUFRWSxzQjVEOWFRO0FyRjQyMEJ4Qjs7QWlKeDd6Qkk7RUFDSSxrQkFBa0I7QWpKMjd6QjFCOztBaUo1N3pCSTtFQUtRLGtCQUFrQjtFQUNsQixhQUFhO0VBQ2Isc0I1RHhpQk07RTREeWlCTixXQUFXO0FqSjI3ekJ2Qjs7QWlKbjh6Qkk7RUFXWSxrQkFBa0I7QWpKNDd6QmxDOztBaUp2OHpCSTtFQWdCWSxzQjVEampCRTtFNERrakJGLFlBQVk7RWxEemtCMUIsV2tEMGtCZ0M7RWxEemtCaEMsWWtEeWtCZ0M7QWpKNDd6QmxDOztBaUo5OHpCSTs7O0VBeUJZLHNCNUQxakJFO0VVdkJoQixha0RrbEJrQztFbERqbEJsQyxja0RpbEJrQztBako0N3pCcEM7O0FpSnQ5ekJJO0VBNkJZLHNCNUR2a0JFO0FyRm9nMUJsQjs7QWlKMTl6Qkk7RUFrQ1ksZUFBd0I7RUFDeEIsZ0JBQXlCO0VBQ3pCLGVBQWU7RUFDZixnQkFBZ0I7QWpKNDd6QmhDOztBaUpqK3pCSTtFQXdDWSxlQUF3QjtFQUN4QixpQkFBMEI7RUFDMUIsZ0JBQWdCO0VBQ2hCLGNBQWM7QWpKNjd6QjlCOztBaUp4K3pCSTtFQThDWSxrQkFBMkI7RUFDM0IsZ0JBQXlCO0VBQ3pCLGFBQWE7RUFDYixlQUFlO0FqSjg3ekIvQjs7QWlKLyt6Qkk7RUFvRFksaUJBQTBCO0VBQzFCLGtCQUEyQjtFQUMzQixpQkFBaUI7QWpKKzd6QmpDOztBaUpyL3pCSTtFQTJEWSxRQUFRO0VBQ1IsU0FBUztFQUNULGtCQUFrQjtFQUNsQixpQkFBaUI7RUFDakIsVzVEem1CRTtFNEQwbUJGLHNCNURqbUJFO0U0RGttQkYsWUFBWTtFcEl2bkJ4Qix3QndFa09pQztBckZvMTBCckM7O0FrSjNqMUJBOzs7Ozs7Z0ZsSm1rMUJnRjtBa0psajFCNUU7RUFDSSxnQkFBZ0I7RUFDaEIsa0JBQWtCO0VBQ2xCLFNBQVM7RUFDVCxRQUFRO0FsSm9qMUJoQjs7QWtKeGoxQkk7RUFPUSxTQUFTO0VBQ1QsUUFBUTtBbEpxajFCcEI7O0FrSmhqMUJJO0VBQ0ksa0JBQWtCO0VBQ2xCLHNCN0RYVTtFeEVoQmQsd0J3RWtPaUM7QXJGNjIwQnJDOztBa0p0ajFCSTtFQU9RLFU3RFhNO0U2RFlOLGNBQWM7RUFDZCxvQkFBeUQ7RW5EcENuRSxXVHNENEM7RVNyRDVDLFlUcUQ0QztBdEZtaTFCOUM7O0FrSjlqMUJJO0VBZVEsZ0I3RDVCTTtFNkQ2Qk4sZUFBZTtBbEptajFCM0I7O0FrSnppMUJJO0VBQ0ksa0JBQWtCO0FsSjRpMUIxQjs7QWtKN2kxQkk7RUFLUSwwQkFBMEI7RUFDMUIsVzdEdkNNO0U2RHdDTixvQkFBb0I7QWxKNGkxQmhDOztBa0p2aTFCSTs7RUFFSSxrQkFBa0I7RUFDbEIsZ0I3RGcxQjZCO0U2RC8wQjdCLGlCNUQrUWtDO0U0RDlRbEMsc0I3RHhEVTtFNkR5RFYsV0FBVztFQUNYLGtCQUFrQjtFQUNsQixZQUFZO0VBQ1osYUFBYTtFQUNiLGNBQWM7QWxKMGkxQnRCOztBa0pwajFCSTs7RTNIOURFLG1DMkg0RThFO0FsSjJpMUJwRjs7QXVCbG4xQkk7RTJIeURBOztJM0h4REUsZ0JBQWdCO0V2QnVuMUJwQjtBQUNGOztBa0o3aTFCSTs7RUFJWSxZQUFZO0FsSjhpMUI1Qjs7QWtKeGkxQkk7RUFDSSxrQkFBa0I7RUFDbEIsY0FBYztFQUNkLGNBQWM7RUFDZCxTQUFTO0VBQ1QsbUJBQW1CO0FsSjJpMUIzQjs7QWtKbmkxQkk7RUFPWSxzQkFBc0I7RUFDdEIsVUFBVTtFQUNWLHdCQUF3QjtFQUN4QixxQkFBcUI7RUFDckIsZ0JBQWdCO0VBQ2hCLHFCQUFxQjtBbEpnaTFCckM7O0FrSjVpMUJJO0VBcUJZLGNBQWM7QWxKMmgxQjlCOztBa0poajFCSTtFQTBCWSxhQUFhO0FsSjBoMUI3Qjs7QWtKcGoxQkk7RUFpQ1ksWUFBWTtFQUNaLDZCQUE2QjtBbEp1aDFCN0M7O0FrSjdnMUJJO0VBQ0ksV0FBVztFQUNYLHlCN0QxSWE7RTZEMkliLDZCN0R4SVU7RTZEeUlWLFNBQVM7RUFDVCxrQkFBa0I7RUFDbEIsZ0JBQWdCO0VBQ2hCLG1DQUEyQjtVQUEzQiwyQkFBMkI7RUFDM0IsV0FBVztFcklwSmYsaUN3RXlOaUM7RXhFeE5qQyxrQ3dFd05pQztBckY2ODBCckM7O0FrSjFoMUJJO0VBYVEscUJBQXFCO0VBQ3JCLGtCQUFrQjtBbEppaDFCOUI7O0FrSi9oMUJJO0VBbUJnQixrQkFBa0I7QWxKZ2gxQnRDOztBa0puaTFCSTtFQXlCWSxpQjVEOEt3QjtBdEZnMjBCeEM7O0FrSnZpMUJJO0VBNkJnQixZQUFZO0VBQ1oscUJBQXFCO0VBQ3JCLFU1RHdLb0I7RTREdktwQix5QkFBOEQ7RUFDOUQsa0JBQWtCO0VBQ2xCLE9BQU87RUFDUCxNQUFNO0VBQ04sU0FBUztBbEo4ZzFCN0I7O0FrSnpnMUJZO0VySTlMUiw2QnFJK0xzRjtBbEo0ZzFCMUY7O0FrSjFnMUJZO0VySWpNUiw2QnFJa01zRjtBbEo2ZzFCMUY7O0FrSjFqMUJJO0VBbURRLHFCQUFxQjtFQUNyQixrQkFBa0I7RUFDbEIsaUI3RGtNNEI7RTZEak01QixnQkFBZ0I7RUFDaEIsWUFBWTtFQUNaLGVBQWU7RUFDZiw2QkFBNkI7RUFDN0Isc0JBQXNCO0UzSDlNNUIseUUrRHVEeUM7QXRGbXExQi9DOztBdUJydDFCSTtFMkgrSUE7STNIOUlFLGdCQUFnQjtFdkJ5dDFCcEI7QUFDRjs7QWtKNWsxQkk7RUErRFkseUJBQWlCO0tBQWpCLHNCQUFpQjtNQUFqQixxQkFBaUI7VUFBakIsaUJBQWlCO0FsSmloMUJqQzs7QWtKaGwxQkk7RUFzRVksc0I3RDVNRTtFNkQ2TUYsVUFBVTtBbEo4ZzFCMUI7O0FrSnJsMUJJOzs7RUFtRmdCLFlBQVk7RUFDWixlQUFlO0FsSndnMUJuQzs7QWtKNWwxQkk7RUEyRlEsc0JBQW1DO0FsSnFnMUIvQzs7QWtKaG0xQkk7RUErRlksWUFBWTtFQUNaLGNBQWM7RUFDZCxrQkFBa0I7RUFDbEIsUUFBUTtFQUNSLGU3RG9Kd0I7RTZEbkp4QixTQUFTO0VBQ1QsUUFBUTtFQUNSLG1CQUE4QjtFQUM5QiwrQkFBc0M7RUFDdEMsc0I3RHhPRTtBckY2dTFCbEI7O0FrSjdtMUJJO0VBOEdRLFlBQVk7QWxKbWcxQnhCOztBa0oxLzBCSTtFQUNJLG1CN0RtWm9DO0U2RGxacEMsaUJBQThCO0VBQzlCLHNCN0RuUVU7RTZEb1FWLHFDN0QxUFU7RTZEMlBWLGFBQWE7RUFDYixlN0RwRHVCO0U2RHFEdkIsaUI3RHJEdUI7RTZEc0R2QixhN0RzYnVCO0VtQi9yQnpCLCtDbkJXWTtFeEVDZCxxQ3dFMk1pQztFeEUxTWpDLG9Dd0UwTWlDO0FyRmtqMUJyQzs7QWtKeGcxQkk7RUFjUSxjQUFjO0VBQ2QsV0FBVztFQUNYLG9CN0R3WjRCO0U2RHZaNUIsVzdEeFFNO0U2RHlRTixtQkFBbUI7RUFDbkIsZ0JBQWdCO0VBQ2hCLFNBQVM7RUFDVCxtQkFBbUI7RUFDbkIsZUFBZTtFM0hqU3JCLHVFK0R1RHlDO0F0Rnl1MUIvQzs7QXVCM3gxQkk7RTJIc1FBO0kzSHJRRSxnQkFBZ0I7RXZCK3gxQnBCO0FBQ0Y7O0FRNXgxQkU7RTBJNFJjLFc3RGxSRTtFNkRtUkYscUJBQXFCO0VBQ3JCLHlCN0QzUks7QXJGK3gxQnJCOztBa0pqaTFCSTtFQWtDWSxxQkFBcUI7RUFDckIsc0JBQXNCO0VBQ3RCLGtCN0RvWXdCO0U2RG5ZeEIsdUJBQXFEO0FsSm1nMUJyRTs7QWtKeC8wQkk7RUFDSSxrQkFBa0I7RUFDbEIsTUFBTTtFQUNOLFNBQVM7RUFDVCwyQkFBMkI7RUFDM0IsZ0JBQWdCO0VBQ2hCLFdBQVc7RUFDWCxXQUFXO0VBQ1gsbUNBQTJCO1VBQTNCLDJCQUEyQjtBbEoyLzBCbkM7O0FrSnYvMEJJO0VBQ0ksa0JBQWtCO0VBQ2xCLE1BQU07RUFDTixTQUFTO0VBQ1QsMkJBQTJCO0VBQzNCLGdCQUFnQjtFQUNoQix3QkFBd0I7RUFDeEIsc0I3RG5VVTtFNkRvVVYscUM3RDFUVTtFNkQyVFYsVUFBVTtFQUNWLG1DQUEyQjtVQUEzQiwyQkFBMkI7RXJJM1QvQixxQ3dFMk1pQztFeEUxTWpDLG9Dd0UwTWlDO0VtQnZOL0IsK0NuQldZO0FyRnl6MUJsQjs7QWtKdmcxQkk7RUFnQlEsb0I3RDNDNkM7RTZENEM3QyxnQjdEbEVvQjtFNkRtRXBCLGdCN0Q0cUIrQjtFNkQzcUIvQixpQkFBaUI7RUFDakIsY0FBYztBbEoyLzBCMUI7O0FrSi9nMUJJO0VBeUJRLFdBQVc7RUFDWCxpQkFBaUI7RUFDakIsa0JBQWtCO0VBQ2xCLGE1RFArRztBdEZpZzFCM0g7O0FrSnRoMUJJO0VBK0JZLHlCOUR4VVc7RThEeVVYLFFBQVE7RUFDUixZQUFZO0UzSHhXdEIsOEIrRHVEeUM7QXRGNnkxQi9DOztBdUIvMTFCSTtFMkhrVUE7STNIalVFLGdCQUFnQjtFdkJtMjFCcEI7QUFDRjs7QWtKbmkxQkk7RUF3Q1EsZ0I3RGtvQitCO0U2RGpvQi9CLGlCQUFpQjtBbEorLzBCN0I7O0FrSnhpMUJJO0VBNkNZLGNBQWM7RUFDZCxrQkFBa0I7RUFDbEIsc0I3RDFQRztBckZ5djFCbkI7O0FrSjlpMUJJO0VBbURnQixjQUFjO0VBQ2QsZ0JBQWdCO0UzSDNYOUIsaUMrRHVEeUM7QXRGbzAxQi9DOztBdUJ0MzFCSTtFMkhrVUE7STNIalVFLGdCQUFnQjtFdkIwMzFCcEI7QUFDRjs7QWtKMWoxQkk7RUF3RG9CLGNBQWM7RUFDZCxtQkFBNkQ7RUFDN0Qsc0JBQWdFO0VBQ2hFLG1CN0R0R1c7QXJGNG0xQm5DOztBa0pqazFCSTtFQThEd0IsYzlEalhGO0U4RGtYRSxnQkFBZ0I7RUFDaEIsaUJBQWlCO0FsSnVnMUI3Qzs7QWtKdmsxQkk7RUF1RWdCLDJCN0RIb0I7RTZESXBCLG9CN0RsSWtCO0U2RG1JbEIsbUI3RHBIZTtFNkRxSGYsVzdEN1hGO0U2RDhYRSxzQjdEdllGO0U2RHdZRSxzQjdEcFlGO0U2RHFZRSxZQUFZO0VBQ1osVUFBVTtFckl0WjFCLHdCd0VrT2lDO0FyRnlyMUJyQzs7QWtKbmwxQkk7RUFtRm9CLFVBQVU7QWxKb2cxQmxDOztBa0p2bDFCSTs7RUEyRm9CLHFCOUQ5WUU7QXBGKzQxQjFCOztBa0o1bDFCSTtFQW1HUSxjQUFjO0VBQ2QsYzlEdlpjO0FwRm81MUIxQjs7QWtKeC8wQkk7RUFDSSxXN0R0YVU7RTZEdWFWLHFCQUFxQjtFQUNyQixxQkFBcUI7RUFDckIseUI5RDNYZ0I7RThENFhoQixZQUFZO0VBQ1osZUFBZTtFQUNmLHFCN0R0VGdCO0U2RHVUaEIsNkJBQTJDO0V6RC9YL0MsMkJKa1ZvQztFSWpWcEMsb0JKbU5rQztFSWxObEMsbUJKaU8rQjtFeEU3Ui9CLHdCd0VrT2lDO0U5RGpPL0IscUk4RGdja0o7QXJGdy8wQnhKOztBdUJuNzFCSTtFMkgyYUE7STNIMWFFLGdCQUFnQjtFdkJ1NzFCcEI7QUFDRjs7QWtKOWcxQkk7RUFjUSx5QjlEamFlO0FwRnE2MUIzQjs7QVF4NzFCRTtFMEl1YmMsVUFBVTtFQUNWLG9EN0RjMEQ7QXJGdS8wQjFFOztBa0p2aDFCSTtFQXdCUSxXN0RwYk07RTZEcWJOLHlCN0Q3YlM7RTZEOGJULGtCN0QzYk07QXJGODcxQmxCOztBUW44MUJFO0UwSW1jYyxVQUFVO0VBQ1YsVzdEMWJFO0U2RDJiRix5QjdEbGNLO0U2RG1jTCxrQjdEamNFO0FyRnE4MUJsQjs7QWtKOS8wQkk7RUFDSSxrQkFBa0I7RUFDbEIsMEM3RDdjVTtFNkQ4Y1YsWUFBWTtFQUNaLFdBQVc7RUFDWCxPQUFPO0VBQ1AsYUFBYTtFQUNiLE1BQU07RUFDTixXQUFXO0FsSmlnMUJuQjs7QWtKeC8wQkk7RUFDSSxnQkFBZ0I7QWxKMi8wQnhCOztBa0p0eTFCMEI7RUFnVGxCLGVBQWU7RUFDZixNQUFNO0VBQ04sT0FBTztFQUNQLFdBQVc7RUFDWCxZQUFZO0VBQ1osU0FBUztFQUNULFVBQVU7RUFDVixjQUFjO0FsSjAvMEJ0Qjs7QWtKbGcxQkk7O0VBYVEsU0FBUztFckkxZmpCLGdCcUkyZmdDO0FsSjAvMEJwQzs7QWtKeGcxQkk7O0VBb0JRLHdDQUE0RDtFQUM1RCxjQUFjO0FsSnkvMEIxQjs7QWtKOWcxQkk7RUF3QlEsdUJBQXVCO0FsSjAvMEJuQzs7QWtKbGgxQkk7RUE2QlEsVzdEcmZNO0U2RHNmTixpQkFBaUI7QWxKeS8wQjdCOztBa0poLzBCSTs7RUFFSSxlN0QySWtDO0U2RDFJbEMsWUFBcUI7QWxKbS8wQjdCOztBa0p0LzBCSTs7RUFPUSx3QkFBd0I7QWxKby8wQnBDOztBa0ozLzBCSTs7RUFZUSxjQUFjO0VBQ2Qsa0JBQWtCO0VBQ2xCLFdBQVc7RUFDWCxvQkFBb0I7RUFDcEIsc0I3RHhoQk07RTZEeWhCTixVQUFVO0VuRHZpQnBCLGNtRHdpQitCO0VuRHZpQi9CLGVtRHVpQitCO0UzSHJpQjNCLHVDK0R1RHlDO0F0Rm8rMUIvQzs7QXVCdGgyQkk7RTJIOGdCQTs7STNIN2dCRSxnQkFBZ0I7RXZCMmgyQnBCO0FBQ0Y7O0FReGgyQkU7OztFMEkraEJjLHNCQUFzQjtFQUN0QixXQUFXO0FsSisvMEIzQjs7QW1KL2kyQkE7Ozs7OztnRm5KdWoyQmdGO0ErSHIxMUI3RTtFb0JyTkQsYTdEeVZ3QztFNkR4VnhDLGtCQUFrQjtBbko2aTJCcEI7O0FvSjNqMkJBOzs7Ozs7Z0ZwSm1rMkJnRjtBb0p2ajJCNUU7RUFDSSxrQkFBa0I7RUFDbEIsT0FBTztFQUNQLG9CL0R3cEJvQztFK0R2cEJwQyxXQUFXO0VBQ1gsVUFBVTtFQUNWLGEvRG1zQnVCO0FyRnMzMEIvQjs7QW9KL2oyQkk7RUFVUSxlQUFlO0VBQ2YsNkJBQTZCO0VBQzdCLFNBQVM7RTVDUmYsZ0I0Q1M4QjtBcEp5ajJCcEM7O0FvSnRrMkJJO0VBa0JRLG1CL0R3b0I4QjtBckZnNzBCMUM7O0FvSjFrMkJJOztFQXdCUSxXQUFXO0FwSnVqMkJ2Qjs7QW9KL2syQkk7RUE4Qlk7RUFDQSxXQUFXO0FwSnFqMkIzQjs7QW9KcGwyQkk7RUFrQ1k7RUFDQSx1QjlEaVU2QjtBdEZxdjFCN0M7O0FvSnpsMkJJO0VBMENZO0VBQ0EsWUFBWTtBcEptajJCNUI7O0FvSjlsMkJJO0VBOENZO0VBQ0Esc0I5RHFUNkI7QXRGK3YxQjdDOztBb0pubTJCSTtFQXNEWSxXQUFXO0VBQ1gsY0FBYztFQUNkLGVBQWU7QXBKaWoyQi9COztBb0p6bTJCSTtFQTZEWSxhQUFhO0FwSmdqMkI3Qjs7QW9KN20yQkk7RUFtRVEsY0FBYztBcEo4aTJCMUI7O0FvSmpuMkJJO0VBd0VRLGFBQWE7RUFDYixzQi9EcEVNO0UrRHFFTixxQy9EM0RNO0UrRDRETixvQkFBbUM7RUFDbkMsa0I5RHdSaUM7RXpFM1d6Qyx3QndFa09pQztFbUJ2Ti9CLCtDbkJXWTtBckY0bTJCbEI7O0FvSnhpMkJJO0VBSVEsV0FBVztFQUNYLFNBQVM7QXBKd2kyQnJCOztBb0o3aTJCSTs7RUFVZ0IsZUFBZTtBcEp3aTJCbkM7O0FvSmxqMkJJOztFQWtCUSxtQkFBbUI7RUFDbkIsa0JBQWtCO0FwSnFpMkI5Qjs7QW9KeGoyQkk7O0VBdUJZLGNBQWM7RUFDZCxXL0RoR0U7QXJGc28yQmxCOztBb0o5ajJCSTtFQThCUSxXL0R0R007RStEdUdOLGdCL0Q2Sm9CO0UrRDVKcEIsa0IvRHNKOEM7QXJGODQxQjFEOztBb0pwazJCSTtFQW9DWSxNQUFNO0FwSm9pMkJ0Qjs7QW9KeGsyQkk7RUEwQ1ksZUFBZTtBcEpraTJCL0I7O0FRM3AyQkU7RTRJK0hrQixXL0RySEY7QXJGcXAyQmxCOztBb0pobDJCSTtFdkkxRkEsd0J3RWtPaUM7QXJGNDgxQnJDOztBUW5xMkJFO0U0STZJa0IsVy9EbklGO0UrRG9JRSx5Qi9EM0lDO0FyRnFxMkJyQjs7QW9KemwyQkk7RUFzRVksVy9EL0lFO0FyRnNxMkJsQjs7QW9KN2wyQkk7RUEyRVksZTlEcEVpQztBdEYwbDJCakQ7O0FvSmptMkJJO0VBZ0ZZLFcvRHJKRTtFK0RzSkYseUIvRDdKSztFeEVkakIsZ0J1STRLb0M7QXBKcWgyQnhDOztBUS9xMkJFO0U0SWdLa0IsVy9EdEtGO0UrRHVLRSx5QmhFOURJO0V2RXJIcEIsd0J3RWtPaUM7QXJGcSsxQnJDOztBb0o3bTJCSTs7RUFtR1ksa0IvRDhNeUI7RStEN016QixxQkFBbUU7RTdIN0w3RSxpQytEdUR5QztBdEZzcDJCL0M7O0F1QnhzMkJJO0U2SG9GQTs7STdIbkZFLGdCQUFnQjtFdkI2czJCcEI7QUFDRjs7QW9KM24yQkk7RUEwR1ksc0I5RHVLNkI7QXRGODIxQjdDOztBb0ovbjJCSTtFQStHWSxvQi9Eb0d5QztFK0RuR3pDLFcvRHJMRTtFK0RzTEYsdUJBQXNDO0VBQ3RDLDBCQUF5QztFQUN6QyxnQi9EMEVnQjtBckYwODFCaEM7O0FvSjlnMkJJO0VBSVEscUJBQXFCO0FwSjhnMkJqQzs7QW9KbGgyQkk7RUFPWSxnQkFBZ0I7RUFDaEIsVUFBVTtBcEorZzJCMUI7O0FvSnZoMkJJO0VBWVksVUFBVTtBcEorZzJCMUI7O0FvSjNoMkJJO0VBbUJZLGNBQWM7RUFDZCxlQUFlO0VBQ2YsZ0JBQWdCO0VBQ2hCLGdCQUFnQjtBcEo0ZzJCaEM7O0FvSmxpMkJJO0VBNEJRLGtCQUFrQjtBcEowZzJCOUI7O0FvSnRpMkJJO0VBZ0NZLGtCQUFrQjtFQUNsQixjL0RnS3VCO0UrRC9KdkIsU0FBUztFQUNULGtCQUFxRjtFQUNyRixXL0RyT0U7QXJGK3UyQmxCOztBb0o5aTJCSTtFQXlDWSxxQi9Ed0p1QjtFK0R2SnZCLHdCQUF5RTtBcEp5ZzJCekY7O0FvSm5qMkJJO0VBZ0RRLGtCQUFrQjtFQUNsQixtQkFBMEI7QXBKdWcyQnRDOztBb0p4ajJCSTtFQXFEWSxXL0R0UEU7RStEdVBGLGU5RHhLaUM7QXRGK3EyQmpEOztBb0pqZzJCSTtFQUNJLHNCL0RwUVU7RStEcVFWLGtCQUFrQjtFQUNsQixzQkFBcUM7RUFDckMscUMvRDdQVTtFeEV0QmQsd0J3RWtPaUM7RW1Cdk4vQiwrQ25CV1k7QXJGbXcyQmxCOztBb0oxZzJCSTtFQVVRLGdCQUFnQjtFQUNoQixTQUFTO0VBQ1QsaUJBQThCO0FwSm9nMkIxQzs7QW9KaGgyQkk7RUFnQlksMEIvRC9RRTtBckZteDJCbEI7O0FvSnBoMkJJO0VBcUJZLFcvRC9RRTtFK0RnUkYsb0IvRCtZd0I7RStEOVl4QixlQUFlO0VBQ2YsZS9EOFl1QjtFOURwckJqQyxpQytEdUR5QztBdEZtdjJCL0M7O0F1QnJ5MkJJO0U2SHlRQTtJN0h4UUUsZ0JBQWdCO0V2Qnl5MkJwQjtBQUNGOztBb0psaTJCSTtFQTRCZ0IsYUFBYTtBcEowZzJCakM7O0FRMXkyQkU7RTRJcVNrQixXL0QzUkY7RStENFJFLHlCL0RuU0M7QXJGNHkyQnJCOztBb0ozaTJCSTtFQXVDZ0IsVy9EMVNGO0UrRDJTRSx5QmhFbE1JO0FwRjBzMkJ4Qjs7QW9KaGoyQkk7RUErQ1Esa0I5RDZDaUM7RThENUNqQyxzQkFBOEQ7QXBKcWcyQjFFOztBb0pyajJCSTtFQXVEZ0IscUJBQTZEO0FwSmtnMkJqRjs7QW9KemoyQkk7RUE0RGdCLGNBQWM7RUFDZCx1Qi9EMU1JO0UrRDJNSixXL0QzVEY7QXJGNHoyQmxCOztBb0ovajJCSTtFQW9FWSwwQi9EblVFO0FyRmswMkJsQjs7QW9KbmsyQkk7RUEwRVEsa0I5RGtCaUM7QXRGMisxQjdDOztBb0p2azJCSTtFQThFWSxjQUFjO0VBQ2QsV0FBVztBcEo2LzFCM0I7O0FvSjVrMkJJO0VBa0ZZLHFCOURVNkI7QXRGby8xQjdDOztBb0pobDJCSTtFQXdGUSxrQi9ENlU0QjtFK0Q1VTVCLG1CL0Q0VTRCO0FyRmdyMUJ4Qzs7QWlCN3kyQkk7RW1Jd05BO0lBK0ZRLHNCQUFxQztJQUNyQyx5QkFBd0M7RXBKMi8xQmxEO0FBQ0Y7O0FvSmwvMUJJO0VBQ0ksZUFBZTtBcEpxLzFCdkI7O0FvSmovMUJJO0VBQ0ksb0JBQW9CO0VBQ3BCLG1CQUFtQjtFQUNuQixpQkFBaUI7RUFDakIsa0JBQWtCO0VBQ2xCLG9CQUFxQztFQUNyQyxrQkFBcUM7QXBKby8xQjdDOztBb0oxLzFCSTtFQVVRLGdCQUFnQjtFQUNoQixzQjlEdFZ1QztFOER1VnZDLGNBQWM7RUFDZCxlOUR2VmtDO0U4RHdWbEMsa0JBQWtCO0VBQ2xCLFFBQVE7RUFDUixPQUFPO0VBQ1AsbUJBQWlDO0VBQ2pDLGNBQWM7RWpFdll0QixtQ0FBbUM7RUFDbkMsa0NBQWtDO0FuRjQzMkJ0Qzs7QW9KeGcyQkk7RUF3QlEsY0FBYztFQUNkLG1CQUFtQjtFQUNuQixtQkFBbUI7RUFDbkIsa0JBQWtCO0VBQ2xCLHdCL0RyR3lCO0FyRnlsMkJyQzs7QW9KaGgyQkk7RUFpQ1EsbUJBQW1CO0VBQ25CLGdCL0QxSW9CO0UrRDJJcEIsa0JBQWtCO0FwSm0vMUI5Qjs7QW9KdGgyQkk7RUF1Q1ksb0IvRHBKZ0Q7RStEcUpoRCxjQUFjO0VBQ2Qsb0IvRHZKMEM7RStEd0oxQyx5QkFBeUI7RUFDekIsa0JBQWtCO0VBQ2xCLGdCL0RwSmdCO0FyRnVvMkJoQzs7QW9KL2gyQkk7RUFrRFEsZ0JBQWdCO0FwSmkvMUI1Qjs7QWlCNzEyQkk7RW1Jd1hJOztJQUVJLGtCQUFpQjtJQUNqQixRQUFRO0VwSnkrMUJsQjtFb0o1KzFCTTs7SUFPUSxXQUFXO0VwSnkrMUJ6QjtFb0pwKzFCTTs7Ozs7O0lBS1EsV0FBVztFcEp1KzFCekI7RW9KNzYyQkU7SUE0Y1EsV0FBVztJQUNYLHFCL0Q5UHVCO0krRCtQdkIsc0IvRC9QdUI7RXJGbXUyQmpDO0VvSmw3MkJFO0lBa2RZLGNBQWM7SUFDZCxlQUFlO0VwSm0rMUI3QjtFb0ozKzFCTTtJQWFRLFdBQVc7RXBKaSsxQnpCO0FBQ0Y7O0FxSnQ4MkJBOzs7Ozs7Z0ZySjg4MkJnRjtBcUpsODJCNUU7RUFDSSxXQUFXO0VBQ1gsZ0JBQWdCO0VBQ2hCLGtCQUFrQjtFQUNsQixTQUFTO0VBQ1QsZ0JoRWtOdUI7RWdFak52QixhaEVtc0J1QjtFZ0Vsc0J2Qix5QkFBaUI7S0FBakIsc0JBQWlCO01BQWpCLHFCQUFpQjtVQUFqQixpQkFBaUI7QXJKbzgyQnpCOztBcUpoODJCSTtFQUNJLGVBQWU7QXJKbTgyQnZCOztBcUovNzJCSTtFQUNJLFdBQVc7RUFDWCxnQkFBZ0I7RUFDaEIsa0JBQWtCO0VBQ2xCLGFBQWE7RUFDYixzQmhFaEJVO0VnRWlCVixxQ2hFUFU7RWdFUVYsbUJBQW1CO0VBQ25CLHNCQUFzQjtFQUN0QixtQi9ENlZvQztFK0Q1VnBDLFVBQVU7RUFDVixpQ0FBaUM7RXhJWHJDLHFDd0UyTWlDO0V4RTFNakMsb0N3RTBNaUM7RW1Cdk4vQiwrQ25CV1k7QXJGaTkyQmxCOztBcUpoODJCUTtFQUNJLGlCL0RzVjZCO0UrRHJWN0IscUJoRXFMbUI7RWdFcExuQix3QmhFb0xtQjtFZ0VuTG5CLGNBQWM7QXJKbTgyQjFCOztBc0puLzJCQTs7Ozs7O2dGdEoyLzJCZ0Y7QXNKMSsyQjVFO0VBQ0ksa0JoRThWcUM7QXRGOG8yQjdDOztBc0p4KzJCSTtFQUNJLGtCQUFrQjtFQUNsQixrQkFBa0I7RUFDbEIsb0JqRXlSaUQ7RWlFeFJqRCxjQUFjO0VBQ2Qsc0JoRXFWcUM7RWdFcFZyQyx5QmhFb1ZxQztBdEZ1cDJCN0M7O0FzSmwrMkJJOztFQUVJLGdCakVxUHdCO0VpRXBQeEIscUJBQXFCO0VBQ3JCLHNCakU2RmlCO0VpRTVGakIsdUJqRTRGaUI7QXJGeTQyQnpCOztBc0puKzJCSTtFQUNJLFdqRXRCVTtFaUV1QlYsa0JqRXVPa0Q7RWlFdE9sRCxtQkFBbUI7QXRKcysyQjNCOztBc0psKzJCSTs7RUFFSSxrQmpFaENVO0VpRWlDVixrQmpFb2RrRjtFaUVuZGxGLG9CakU0TjhCO0VpRTNOOUIsbUJqRTBPMkI7RWlFek8zQixzQmpFNkVpQjtFaUU1RWpCLHVCakU0RWlCO0VpRTNFakIsVUFBVTtFQUNWLG1CQUFtQjtBdEpxKzJCM0I7O0FzSjU5MkJJOztFQUVJLGtCQUFrQjtFQUNsQixlQUE4QjtFQUM5QixRQUFRO0VBQ1IsaUJoRWpCc0M7RWdFa0J0QyxjQUFjO0V6SXRFbEIsd0J3RWtPaUM7RTlEak8vQixpQytEdUR5QztBdEYrKzJCL0M7O0F1QmppM0JJO0UrSDBEQTs7SS9IekRFLGdCQUFnQjtFdkJzaTNCcEI7QUFDRjs7QXNKOSsyQkk7O0VBWVEsc0JoRXpCdUM7RWdFMEJ2QyxjQUFjO0VBQ2QsZWhFMUJrQztFZ0UyQmxDLFdoRTNCa0M7RWdFNEJsQyxrQkFBa0I7RW5FdkUxQixtQ0FBbUM7RUFDbkMsa0NBQWtDO0FuRitpM0J0Qzs7QVFsajNCRTs7RThJK0VVLGVBQWU7RUFDZixXakVsRU07RWlFbUVOLHlCakUxRVM7QXJGa2ozQnJCOztBc0puKzJCSTtFQUNJLE9BQU87QXRKcysyQmY7O0FzSnYrMkJJO0VBTVksZ0JBQWdCO0F0SnErMkJoQzs7QXNKNTkyQkk7RUFDSSxRQUFRO0F0Sis5MkJoQjs7QXNKaCsyQkk7RUFNWSxnQkFBZ0I7QXRKODkyQmhDOztBc0pyOTJCSTtFQUtRLGVBQWU7RUFDZiw2QkFBNkI7QXRKbzkyQnpDOztBc0oxODJCSTtFQUNJLGtCQUFrQjtFQUNsQix5QkFBeUI7RUFDekIsaUJBQWlCO0VBQ2pCLG1CQUFtQjtFQUNuQixrQkFBa0I7RUFDbEIsV0FBVztFQUNYLHdCaEV5TnFDO0F0Rm92MkI3Qzs7QXNKcDkyQkk7RUFVUSxTQUFTO0VBQ1QsVUFBVTtBdEo4ODJCdEI7O0FzSno4MkJJO0VBQ0ksb0JBQW9CO0VBQ3BCLGtCQUFrQjtFQUNsQiwwQkFBeUM7RUFDekMsc0JoRTRNcUM7RWdFM01yQyxXakU5SVU7RWlFK0lWLGdCakVxSHdCO0FyRnUxMkJoQzs7QXNKeDgyQkk7RUFDSSxrQmpFcU9pQztFaUVwT2pDLHFCQUFtRTtFekl2S3ZFLHdCd0VrT2lDO0FyRmk1MkJyQzs7QXNKejgyQkk7RUFDSSxrQkFBa0I7RUFDbEIseUJqRTlKYTtBckYwbTNCckI7O0FzSjk4MkJJO0VBS1EsV0FBVztFQUNYLGtCQUFrQjtFQUNsQixhQUFhO0VBQ2IsZUFBZTtFQUNmLFFBQVE7RUFDUixTQUFTO0VBQ1Qsa0NsRWhFWTtFa0VpRVosdUNBQXVDO0F0SjY4MkJuRDs7QXNKbjgyQkk7RUFDSSxXakVoTFU7QXJGc24zQmxCOztBc0pwODJCSTs7RS9IbE1FLGlDK0R1RHlDO0F0Rm9sM0IvQzs7QXVCdG8zQkk7RStINkxBOztJL0g1TEUsZ0JBQWdCO0V2QjJvM0JwQjtBQUNGOztBUTVvM0JFOztFOElrTVUsZUFBZTtFQUNmLFdqRXJMTTtFaUVzTE4seUJqRTdMUztBckY0bzNCckI7O0FzSjE4MkJJO0VBQ0ksc0JqRXJNVTtBckZrcDNCbEI7O0FzSjM4MkJJOzs7RUFHSSxlQUFlO0VBQ2YsV2pFM01VO0VpRTRNVix5QmxFbkdnQjtBcEZpajNCeEI7O0FzSjU4MkJJOzs7RUFHSSx5QmxFeEdnQjtFa0V5R2hCLFdqRWxOVTtBckZpcTNCbEI7O0FzSjM4MkJJO0VBR1EsNkJoRW9KbUM7RWdFbkpuQyxXakVwTk07RWlFcU5OLGVBQWU7QXRKNDgyQjNCOztBc0pqOTJCSTtFQVNRLHNCakV6Tk07QXJGcXEzQmxCOztBc0p6ODJCUTtFQUdRLDZCaEV3SStCO0F0RmswMkIvQzs7QXNKLzcyQkk7RUFDSSxrQkFBa0I7QXRKazgyQjFCOztBc0puODJCSTtFQUtRLFNBQVM7RUFDVCwyQmpFMEk0QjtFaUV6STVCLGdCakVvQm9CO0VpRW5CcEIsZUFBZTtFQUNmLHFCQUFxQjtFeklyUTdCLHdCd0VrT2lDO0U5RGpPL0IsaUMrRHVEeUM7QXRGaXAzQi9DOztBdUJuczNCSTtFK0hzUEE7SS9IclBFLGdCQUFnQjtFdkJ1czNCcEI7QUFDRjs7QVFwczNCRTtFOElnUWMsVUFBVTtFQUNWLFdqRXZQRTtFaUV3UEYseUJqRS9QSztBckZ1czNCckI7O0FzSno5MkJJO0VBc0JZLFNBQVM7QXRKdTgyQnpCOztBUXZzM0JFO0U4SXNRa0IsNkJBQTZCO0VBQzdCLFdqRXZRRjtFaUV3UUUsZWhFekw2QjtBdEY4bjNCakQ7O0FzSjk3MkJJO0VBQ0ksV0FBVztFQUNYLHNCakVqS2dCO0VpRWtLaEIsa0JBQWtCO0VBQ2xCLHFCQUFxQjtFQUNyQixlQUFlO0VBQ2YsUUFBUTtFQUNSLGtDbEU3Um1CO0VrRThSbkIsdUNBQXVDO0F0Smk4MkIvQzs7QXNKLzcyQkk7RUFDSSxjQUFjO0VBQ2QscUJBQXFCO0VBQ3JCLGtCQUFrQjtFQUNsQixzQmpFN0tnQjtFaUU4S2hCLGNBQWM7RUFDZCxjQUFjO0VBQ2QsZWhFOVBzQztBdEZnczNCOUM7O0FzSmg4MkJJO0VBQ0ksV0FBVztFQUNYLHFCQUFxQjtFQUNyQixrQkFBa0I7RUFDbEIsZUFBZTtFQUNmLGFBQWE7RUFDYixzQmpFeExnQjtFaUV5TGhCLGtDbEV0U2tCO0FwRnl1M0IxQjs7QXVKbnczQkE7Ozs7OztnRnZKMnczQmdGO0F1Si92M0I1RTtFQUNJLGdCakUyWGlDO0VpRTFYakMsZ0JqRTJYaUM7QXRGczQyQnpDOztBdUo3djNCSTtFQUNJLFVBQVU7QXZKZ3czQmxCOztBdUp2djNCSTtFQUNJLGdCQUFnQjtFQUNoQixpQkFBOEI7RUFDOUIsU0FBUztFQUNULGlCakV1V2lDO0VpRXRXakMsZ0JBQWdCO0F2SjB2M0J4Qjs7QXVKdHYzQkk7RUFDSSxrQkFBa0I7RUFDbEIsb0JsRWtwQmdDO0U5RG5yQmxDLGlDK0R1RHlDO0F0Rm91M0IvQzs7QXVCdHgzQkk7RWdJMEJBO0loSXpCRSxnQkFBZ0I7RXZCMHgzQnBCO0FBQ0Y7O0FRdngzQkU7RStJNEJVLGVBQWU7RUFDZixXbEVuQk07RWtFb0JOLHlCbEUzQlM7RWtFNEJULFdBQVc7QXZKK3YzQnZCOztBdUoxdjNCSTtFQUNJLGNBQWM7RUFDZCxXQUFXO0VBQ1gsU0FBUztFQUNULDJCbEV5VmdDO0VrRXhWaEMseUJsRXZDYTtFa0V3Q2IsVUFBVTtFQUNWLFNBQVM7RUFDVCwwQmxFdkNVO0VrRXdDVixrQkFBa0I7RUFDbEIsZUFBZTtFQUNmLHNCbEV1bUJrQztFa0V0bUJsQyxrQmxFc21Ca0M7RTlEaHFCcEMsaUMrRHVEeUM7QXRGaXczQi9DOztBdUJuejNCSTtFZ0l5Q0E7SWhJeENFLGdCQUFnQjtFdkJ1ejNCcEI7QUFDRjs7QVFwejNCRTtFK0lxRFUseUJsRWxEUztBckZxejNCckI7O0F1Snp2M0JJO0VBQ0ksV0FBVztBdko0djNCbkI7O0F1SjF2M0JJOzs7RUFHSSxlQUFlO0VBQ2YsV2xFNURVO0VrRTZEVix5QmxFcEVhO0FyRmkwM0JyQjs7QXVKenYzQkk7OztFQUdJLFdsRTdFVTtFa0U4RVYseUJuRS9FbUI7RW1FZ0ZuQixXQUFXO0F2SjR2M0JuQjs7QXVKeHYzQkk7OztFQUdJLFdsRWhGVTtFa0VpRlYsNkJBQTZCO0VBQzdCLGVqRUh5QztFaUVJekMsYUFBYTtBdkoydjNCckI7O0F3SnIyM0JBOzs7Ozs7Z0Z4SjYyM0JnRjtBd0o3MTNCNUU7RUFDSSxrQkFBa0I7QXhKKzEzQjFCOztBd0poMjNCSTtFQUlRLFNBQVM7RUFDVCxVQUFVO0VBQ1YsZ0JBQWdCO0F4SmcyM0I1Qjs7QXdKdDIzQkk7RUFVUSxXQUFXO0F4SmcyM0J2Qjs7QXdKMTIzQkk7RUFhWSxxQkFBcUI7RUFDckIsV0FBVztBeEppMjNCM0I7O0F3SjMxM0JJO0VBQ0ksa0JsRTJVcUM7RWtFMVVyQyxzQm5FckJVO0VtRXNCVixxQ25FWlU7RW1FYVYscUJBQXFCO0VBQ3JCLGFuRTRxQnVCO0V4RWh0QjNCLHdCd0VrT2lDO0VtQnZOL0IsK0NuQldZO0FyRjgyM0JsQjs7QXdKMTEzQkk7RUFDSSxrQkFBa0I7RUFDbEIsWUFBWTtBeEo2MTNCcEI7O0F3SnoxM0JJO0VBQ0ksb0JuRTRQaUQ7RW1FM1BqRCxpQmxFeVRxQztFa0V4VHJDLGNBQWM7QXhKNDEzQnRCOztBd0p4MTNCSTtFQUNJLGFBQWE7RUFDYixZQUFZO0VBQ1osZUFBZTtFQUNmLFlBQVk7RUFDWixZQUFZO0UzSTVEaEIsd0J3RWtPaUM7QXJGc3IzQnJDOztBUWo1M0JFO0VnSjBEVSxVQUFVO0F4SjIxM0J0Qjs7QXdKcjIzQkk7RUFlUSxnQkFBZ0I7RUFDaEIsc0JsRXBCdUM7RWtFcUJ2QyxlbEVwQmtDO0VrRXFCbEMsY0FBYztFckVoRXRCLG1DQUFtQztFQUNuQyxrQ0FBa0M7QW5GMjUzQnRDOztBd0p0MTNCSTtFQUNJLG9CbkU4TDhCO0VtRTdMOUIsdUJBQTRCO0VBQzVCLGdCbkVxTXdCO0VtRXBNeEIsbUJuRTBDVztBckYreTNCbkI7O0F3SjcxM0JJO0VBT1Esa0JuRTJrQjhCO0FyRit3MkIxQzs7QXdKajEzQkk7RUFJWSx5QnBFOUVVO0VvRStFVixXbkV4RkU7QXJGeTYzQmxCOztBd0ozMDNCSTtFQUlZLHlCcEVPUTtFb0VOUixXbkVuR0U7QXJGODYzQmxCOztBd0pyMDNCSTtFQUlZLHlCcEUrQ1M7RW9FOUNULFduRTlHRTtBckZtNzNCbEI7O0F3Si96M0JJOzs7RUFLWSx5QnBFaEJRO0VvRWlCUixXbkUxSEU7QXJGMDczQmxCOztBd0p0ejNCSTs7RUFFSSxxQkFBcUI7QXhKeXozQjdCOztBd0p2ejNCSTs7O0VBR0kscUJBQXFCO0VBQ3JCLGVBQWU7QXhKMHozQnZCOztBeUR0OTNCRTtFQUNFLGNBQWM7RUFDZCxXQUFXO0VBQ1gsV0FBVztBekR5OTNCZjs7QXdKbnozQkk7RUFDSSxXQUFXO0F4SnN6M0JuQjs7QXdKbHozQkk7RUFDSSxXbkV6SlU7RW1FMEpWLGtCbkUrTmlDO0VtRTlOakMsZ0JuRXlHd0I7QXJGNHMzQmhDOztBd0pqejNCSTtFQUNJLFdBQVc7RUFDWCxnQkFBaUI7QXhKb3ozQnpCOztBd0psejNCSTtFQUNJLFdBQVc7QXhKcXozQm5COztBd0pqejNCSTs7Ozs7Ozs7Ozs7RUFXSSxxQkFBcUI7QXhKb3ozQjdCOztBd0poejNCSTtFQUNJLGtCbkVpTWlDO0VtRWhNakMsZUFBZTtFM0kzTW5CLHdCd0VrT2lDO0U5RGpPL0IsaUMrRHVEeUM7QXRGdzgzQi9DOztBdUIxLzNCSTtFaUltTUE7SWpJbE1FLGdCQUFnQjtFdkI4LzNCcEI7QUFDRjs7QVEvLzNCRTtFZ0owTVUsV25FNUxNO0VtRTZMTix5Qm5FcE1TO0FyRjYvM0JyQjs7QXdKbDAzQkk7RUFjUSxlbEV0SHFDO0VrRXVIckMsV25FdE1NO0VtRXVNTiw2QmxFZ0ttQztBdEZ3cDNCL0M7O0F3Si95M0JJOzs7OztFQUtJLGlCQUFpQjtBeEprejNCekI7O0F3Si95M0JJOzs7RUFHSSxxQkFBcUI7QXhKa3ozQjdCOztBd0poejNCSTs7RUFFSSxvQkFBb0I7QXhKbXozQjVCOztBd0oveTNCSTtFQUNJLHFCQUFxQjtFQUNyQixnQkFBZ0I7QXhKa3ozQnhCOztBd0poejNCSTtFQUNJLHFCQUFxQjtFQUNyQixtQkFBbUI7QXhKbXozQjNCOztBd0pqejNCSTtFQUNJLGdCQUFnQjtFQUNoQixrQkFBa0I7QXhKb3ozQjFCOztBd0psejNCSTtFQUNJLFNBQVM7RUFDVCxrQkFBa0I7RUFDbEIsZ0JBQWdCO0VBQ2hCLG1CQUNKO0F4Sm96M0JKOztBd0puejNCSTtFQUNJLGdCQUFnQjtBeEpzejNCeEI7O0F3Sjl5M0JJO0VBQ0ksa0JBQWtCO0VBQ2xCLFVBQVU7QXhKaXozQmxCOztBd0oveTNCSTtFQUNJLFNBQVM7QXhKa3ozQmpCOztBd0poejNCSTs7Ozs7RUFLSSxxQkFBcUI7RUFDckIsbUJBQW1CO0VBQ25CLFVBQVU7QXhKbXozQmxCOztBaUI3ZzRCSTtFdUl6REE7SUF5UlEsV0FBVztFeEprejNCckI7RXdKcjYzQkU7SUF1SFEsV0FBVztJQUNYLHFCQUFxQjtFeEppejNCL0I7RXdKOXkzQk07SUFDSSxjQUFjO0lBQ2QsbUJuRWpMTztJbUVrTFAsV0FBVztFeEpnejNCckI7QUFDRjs7QXlKcm00QkE7Ozs7OztnRnpKNm00QmdGO0F5SjdsNEI1RTs7Ozs7Ozs7O0VBU0ksa0JBQWtCO0VBQ2xCLE1BQU07RUFDTixPQUFPO0VBQ1AsUUFBUTtFQUNSLFNBQVM7QXpKK2w0QmpCOztBeUozbDRCSTs7Ozs7O0VBTUksYUFBYTtBeko4bDRCckI7O0F5SjVsNEJJO0VBQ0ksd0JBQXVCO0F6SitsNEIvQjs7QXlEeG80QkU7RUFDRSxjQUFjO0VBQ2QsV0FBVztFQUNYLFdBQVc7QXpEMm80QmY7O0F5SjlsNEJJOzs7RUFHSSxrQkFBa0I7RUFDbEIsNkpBQTZKO0F6SmltNEJySzs7QXlKN2w0Qkk7OztFQUdJLGNBQWM7QXpKZ200QnRCOztBeUo1bDRCSTtFQUNJLGtCQUFrQjtFQUNsQixNQUFNO0VBQ047RUFDQSxPQUFPO0VBQ1AscUJBQXFCO0VBQ3JCLGFwRXlvQnVCO0VvRXhvQnZCLHNCcEV0RFU7RW9FdURWLHFDcEU3Q1U7RW9FOENWLGdCQUFnQjtFQUNoQix1QkFBdUI7RTVJckUzQix3QndFa09pQztFbUJ2Ti9CLCtDbkJXWTtBckZncDRCbEI7O0F5SjNtNEJJO0VBZ0JRLGtCQUFrQjtFQUNsQixnQkFBZ0I7RUFDaEIsZUFBZTtFQUNmLG1CQUFtQjtFakRuRXpCLHlDbkJXWTtBckZ3cDRCbEI7O0F5SjVsNEJJOztFQUVJLGNBQWM7RUFDZCxtQkFBbUI7RUFDbkIsbUJBQW1CO0VBQ25CLGtCQUFrQjtFQUNsQixpQm5FMlRvQztBdEZveTNCNUM7O0FpQmhvNEJJO0V3STJCQTs7SUFTUSxxQkFBcUI7RXpKa200Qi9CO0FBQ0Y7O0F5SmhtNEJJO0VBQ0ksZW5FcVRvQztBdEY4eTNCNUM7O0F5Si9sNEJJOzs7Ozs7Ozs7O0VBVUkseUJBQWlCO0tBQWpCLHNCQUFpQjtNQUFqQixxQkFBaUI7VUFBakIsaUJBQWlCO0F6SmttNEJ6Qjs7QXlKMWw0Qkk7RUFDSSxrQkFBa0I7RUFDbEIsV0FBVztFQUNYLGNBQWM7QXpKNmw0QnRCOztBeUozbDRCSTtFQUNJLFVBQVU7QXpKOGw0QmxCOztBeUo1bDRCSTtFQUNJLFNBQVM7RUFDVCxZQUFZO0F6SitsNEJwQjs7QXlKN2w0Qkk7RUFDSSxXQUFXO0VBQ1gsV0FBVztBekpnbTRCbkI7O0F5SjlsNEJJO0VBQ0ksZ0JBQWdCO0F6SmltNEJ4Qjs7QXlKN2w0Qkk7RUFFUSx1QkFBdUI7QXpKK2w0Qm5DOztBeUpqbTRCSTtFQU1RLGNBQWM7QXpKK2w0QjFCOztBeUo1bDRCSTtFQUNJLGtCQUFrQjtFQUNsQixhQUFhO0VBQ2IsZ0JBQWdCO0VBQ2hCLGdCQUFnQjtFQUNoQjtFQUNBLFNBQVM7RUFDVCxlQUFlO0VBQ2Ysc0JwRTFJVTtFb0UySVYsc0JwRWhKVTtFeEVaZCxzQndFbU8rQjtBckZ5aDRCbkM7O0F5SjdsNEJJO0VBQ0ksYUFBYTtFQUNiLGtCQUFrQjtFQUNsQixhQUFhO0VBQ2IsUUFBUTtFQUNSLE9BQU87RUFDUCxnQkFBZ0I7QXpKZ200QnhCOztBeUo1bDRCSTtFQUNJLGFBQWE7QXpKK2w0QnJCOztBeUo3bDRCSTtFQUNJLGVBQWU7QXpKZ200QnZCOztBeUpqbTRCSTtFQUtRLGdCQUFnQjtFQUNoQixjQUFjO0VBQ2Qsc0JuRWhJdUM7RW1FaUl2QyxlbkVoSWtDO0VtRWlJbEMscUJBQXFCO0V0RTVLN0IsbUNBQW1DO0VBQ25DLGtDQUFrQztBbkY2dzRCdEM7O0F5SjdsNEJROztFQUVJLGFBQWE7QXpKZ200QnpCOztBeUo3bDRCSTtFQUNJLGNBQWM7RUFDZCxTQUFTO0VBQ1QsZ0JBQWdCO0VBQ2hCLGtCQUFrQjtFQUNsQixXcEVsTFU7RW9FbUxWLGdDQUFxQztBekpnbTRCN0M7O0F5SjVsNEJJO0VBQ0ksb0JBQW9CO0F6SitsNEI1Qjs7QXlKN2w0QlE7RUFDSSxXQUFXO0F6SmdtNEJ2Qjs7QXlKN2w0Qkk7RUFDSSxzQnBFak1VO0VvRWtNViwyQnBFMExnQztFb0V6TGhDLFdBQVc7RUFDWCxzQnBFeE1VO0VvRXlNVixVQUFVO0VBQ1YsV3BFak1VO0V4RXJCZCx3QndFa09pQztBckZxbDRCckM7O0F5SjVsNEJJO0VBQ0ksb0JBQW9CO0F6SitsNEI1Qjs7QXlKaG00Qkk7RUFJUSxVQUFVO0VBQ1YsZ0JBQWdCO0VBQ2hCLGNBQWM7RUFDZCxXQUFXO0F6SmdtNEJ2Qjs7QXlKdm00Qkk7RUFVWSxnQkFBZ0I7RUFDaEIsV0FBVztFQUNYLGNBQWM7QXpKaW00QjlCOztBeUozbDRCSTtFQUNJLHNCcEVsT1U7RW9FbU9WLHNCcEUxTlU7RW9FMk5WLGVBQWU7RUFDZixrQkFBa0I7RUFDbEIsTUFBTTtFQUNOO0VBQ0EsT0FBTztFQUNQLGtCcEVmdUI7RVV4TzdCLGUwRHdQNEI7RTFEdlA1QixnQjBEdVA0QjtBekorbDRCOUI7O0F5SjdsNEJJO0VBQ0ksa0JBQWtCO0VBQ2xCLE1BQU07RUFDTixlQUFlO0VBQ2YsZUFBZTtFQUNmLGVBQWU7RUFDZixnQkFBZ0I7RUFDaEIsc0JwRTlPVTtFb0UrT1Ysc0JwRXBQVTtFeEVaZCx3QndFa09pQztBckYrbjRCckM7O0F5SnhsNEJJO0VBQ0ksZ0JBQWdCO0VBQ2hCLGVBQWU7RUFDZixrQkFBa0I7RUFDbEIscUJBQXFCO0VBQ3JCLHNCcEU5UFU7RW9FK1BWLHlCcEVsUWE7RW9FbVFiLFdwRTlQVTtFb0UrUFYsc0JBQXNCO0U1SWpSMUIsd0J3RWtPaUM7RTlEak8vQixpQytEdUR5QztBdEZzejRCL0M7O0F1QngyNEJJO0VrSW1RQTtJbElsUUUsZ0JBQWdCO0V2QjQyNEJwQjtBQUNGOztBeUozbTRCSTtFQWVRLHlCcEUxUVM7RW9FMlFULFdwRXBRTTtBckZvMjRCbEI7O0FRdjI0QkU7RWlKNlFjLHlCQUF5QjtBeko4bDRCekM7O0F5SnhsNEJJO0VBRVEsZUFBZTtFQUNmLFlBQVk7QXpKMGw0QnhCOztBUXYzNEJFO0VpSmdTYyx5QnBFOVJLO0VvRStSTCxXcEUxUkU7QXJGcTM0QmxCOztBeUpybDRCSTtFQUNJLGtCQUFrQjtFQUNsQixlQUFlO0VBQ2YsY0FBYztFQUNkLHVCQUF1QjtFQUN2QixXQUFXO0VBQ1gsVUFBVTtBekp3bDRCbEI7O0F5SjlsNEJJOztFNUlsVEEsd0J3RWtPaUM7QXJGbXI0QnJDOztBeUpubTRCSTs7RUFlUSx5Q3BFM1NNO0FyRm80NEJsQjs7QXlKdGw0QlE7RUFFUSx3Q3BFaFRFO0FyRnc0NEJsQjs7QXlKbGw0Qkk7RUFDSSxXQUFXO0VBQ1gsWUFBWTtFQUNaLGtCQUFrQjtFQUNsQixlQUFlO0F6SnFsNEJ2Qjs7QXlKemw0Qkk7RUFRUSxnQkFBZ0I7RUFDaEIsY0FBYztFQUNkLHNCbkVuU3VDO0VtRW9TdkMsZW5FblNrQztFbUVvU2xDLGNBQWM7RXRFL1V0QixtQ0FBbUM7RUFDbkMsa0NBQWtDO0FuRnE2NEJ0Qzs7QXlKN2s0Qkk7QUFDQTtFQU1JLHlFQUF5RTtFQUN6RSwwSEFBMEg7RUFDMUgsd0hBQXlIO0VBQ3pILGdDQUFxQztBekpnbDRCN0M7O0F5SjlrNEJJO0VBTUksdUVBQXVFO0VBQ3ZFLHdHQUF3RztFQUN4RyxzR0FBdUc7QXpKaWw0Qi9HOztBeUoxMDRCSTtFQWlRSSxpSUFBaUk7QXpKa2w0QnpJOztBeUpobDRCSTtBQVNBO0FBQ0E7RUFDSSxXQUFXO0VBQ1gsa0dBQWtHO0F6SjJrNEIxRzs7QXlKems0Qkk7RUFDSSxXQUFXO0VBQ1gsa0dBQWtHO0F6SjRrNEIxRzs7QXlKMWs0Qkk7RUFDSSxXQUFXO0VBQ1gsa0dBQWtHO0F6SjZrNEIxRzs7QXlKM2s0Qkk7RUFDSSxXQUFXO0VBQ1gsa0dBQWtHO0F6SjhrNEIxRzs7QXlKNWs0Qkk7RUFDSSxXQUFXO0VBQ1gsa0dBQWtHO0F6SitrNEIxRzs7QXlKN2s0Qkk7RUFDSSxXQUFXO0VBQ1gsa0dBQWtHO0F6SmdsNEIxRzs7QXlKOWs0Qkk7QUFPQTtFQUNJLG1CbkVyQm9DO0F0RmdtNEI1Qzs7QXlKdms0Qkk7RUFDSSxrQkFBa0I7QXpKMGs0QjFCOztBeUp4azRCUTtFQUNJLHFCQUFxQjtFQUNyQixrQkFBa0I7RUFDbEIsZUFBZTtBekoyazRCM0I7O0F5SmpsNEJJO0VBV1EsOENBQTZDO0F6SjBrNEJ6RDs7QVE1LzRCRTtFaUpxYmMsK0NBQThDO0F6SjJrNEI5RDs7QXlKdGw0QlE7RTFEbmJOLFcwRG1jNEI7RTFEbGM1QixZMERrYzRCO0F6SjJrNEI5Qjs7QXlKNWs0QlE7RUFJUSxzQkFBc0I7QXpKNGs0QnRDOztBeUpobDRCUTtFQVFRLDhDQUE2QztBeko0azRCN0Q7O0F5SnBsNEJRO0VBV1ksK0NBQThDO0F6SjZrNEJsRTs7QXlKdGs0Qkk7RUFNb0IsZ0JBQWdCO0VBQ2hCLGNBQWM7RUFDZCxzQm5FdmEyQjtFbUV3YTNCLGVuRXZhc0I7RW1Fd2F0QixjQUFjO0VBQ2QsV3BFamROO0VGSGQsbUNBQW1DO0VBQ25DLGtDQUFrQztBbkZ5aDVCdEM7O0F5SmpsNEJJO0VBa0JZLFdwRS9jRTtBckZraDVCbEI7O0F5SjdqNEJJO0VBQ0ksWUFBWTtBekpnazRCcEI7O0F5SmprNEJJO0VBSVEscUJBQXFCO0F6SmlrNEJqQzs7QXlKcms0Qkk7RUFRUSxhQUFhO0F6SmlrNEJ6Qjs7QXlKeGo0Qkk7OztFQUdJLFNBQVM7RUFDVCwyQnBFbkhnQztFb0VvSGhDLFdBQVc7RUFDWCxVQUFVO0VBQ1Ysa0JBQWtCO0VBQ2xCLGVBQWU7RTVJbmdCbkIsd0J3RWtPaUM7RTlEak8vQixpQytEdUR5QztBdEZ3ZzVCL0M7O0F1QjFqNUJJO0VrSXFmQTs7O0lsSXBmRSxnQkFBZ0I7RXZCZ2s1QnBCO0FBQ0Y7O0F5SjdrNEJJOzs7RUFhUSxVQUFVO0F6SnNrNEJ0Qjs7QXlKams0Qkk7O0VBRUksb0JBQXlCO0VBQ3pCLGtCQUFrQjtBekpvazRCMUI7O0F5SmprNEJROzs7OztFQUdRLHFDcEVoZ0JFO0VvRWlnQkYsV3BFM2dCRTtFb0U0Z0JGLHlCQUF5QjtBekpzazRCekM7O0FRbmw1QkU7Ozs7Ozs7OztFaUptaEJrQixvRHBFN0VzRDtBckZ5cDRCMUU7O0F5SnJrNEJJOztFQUVJLDZCQUEyQztBekp3azRCbkQ7O0FRcG01QkU7OztFaUpnaUJVLFdwRXRoQk07RW9FdWhCTix5QnBFOWhCUztFb0UraEJULGtCcEU3aEJNO0FyRnVtNUJsQjs7QXlKcms0Qkk7RUFDSSw2QkFBMkM7QXpKd2s0Qm5EOztBUWhuNUJFO0VpSjRpQlUsb0RwRXRHOEQ7QXJGOHE0QjFFOztBeUoxbDRCSTs7RUF5QkksV3BFemlCVTtFb0UwaUJWLHVCQUF1QjtFQUN2Qix5QnBFbmpCYTtFb0VvakJiLGdCQUFnQjtFQUNoQixrQnBFbGpCVTtBckZ3bjVCbEI7O0FRN241QkU7OztFaUowakJVLFdwRWhqQk07QXJGeW41QmxCOztBeUp0azRCSTtFQUNJLGVBQWU7RUFDZixXQUFXO0VBQ1gsV0FBVztBekp5azRCbkI7O0F5SmxtNEJJO0VBOEJJLFdwRXBrQlU7RW9FcWtCVix5QnJFemFpQjtBcEZpLzRCekI7O0EwSjlwNUJBOzs7Ozs7aUYxSnNxNUJpRjtBMEp0cDVCaEY7RUFDQyx5QnBFdVppRDtFb0V0WmpELHVCckVHZ0I7RXhFaEJkLHdCd0VrT2lDO0FyRm84NEJyQzs7QTBKcHA1QkM7Ozs7Ozs7RUFPQyxzQnBFMEJpRDtFb0V6QmpELGNBQWM7RUFDZCxlcEV5QjRDO0VvRXhCNUMsY0FBYztFdkVuQlosbUNBQW1DO0VBQ25DLGtDQUFrQztBbkYycTVCdEM7O0EwSnBwNUJDO0VBQ0MsYUFBYTtFQUNiLGtCQUFrQjtFQUNsQix5QnRFdUl1QjtFc0V0SXZCLFdyRXpCZ0I7RXFFMEJoQixpQkFBdUY7RTdJN0JyRixpQ3dFeU5pQztFeEV4TmpDLGtDd0V3TmlDO0FyRjY5NEJyQzs7QTBKOXA1QkM7RUFVRSxnQkFBZ0I7RUFDaEIsZUFBZ0M7RUFDaEMsa0JBQWtCO0VBQ2xCLFFBQVE7RUFDUixhckVtMkJrQztFcUVsMkJsQyxpQnBFSTJDO0F0Rm9wNUI5Qzs7QTBKcnA1QkM7RUFDQywwQnJFODFCbUM7RXFFNzFCbkMsb0JBQTREO0ExSndwNUI5RDs7QTBKdHA1QkM7RUFDQyxvQnJFcVB1RDtFcUVwUHZELGdCckU4TjhCO0FyRjI3NEJoQzs7QTBKdnA1QkM7RUFDQyxrQnJFb053RDtFcUVuTnhELG1CckVrT2lDO0FyRnc3NEJuQzs7QTBKdHA1QkM7O0VBRUMsV0FBVztBMUp5cDVCYjs7QTBKdnA1QkM7O0VBRUMsY0FBYztFQUNkLFlBQVk7RUFDWixjQUFjO0ExSjBwNUJoQjs7QTBKbHA1QkM7RUFDQyxxQkFBcUI7RUFDckIsNkJBQTJDO0VBQzNDLGdCckVrTThCO0VJNU41QiwyQkprVm9DO0VJalZwQyxvQkptTmtDO0VJbE5sQyxtQkppTytCO0V4RTdSL0Isd0J3RWtPaUM7RTlEak8vQixxSThEZ2NrSjtBckY2eTRCeEo7O0F1Qnh1NUJJO0VtSTJFSDtJbkkxRUssZ0JBQWdCO0V2QjR1NUJwQjtBQUNGOztBMEpucTVCQztFQVNFLHNCckV3Q3FCO0FyRnNuNUJ4Qjs7QTBKenA1QkM7RUFDQyxXckUzRWdCO0VxRTRFaEIseUJyRXBGbUI7RXFFcUZuQixrQnJFbEZnQjtBckY4dTVCbEI7O0FRdnY1QkU7RWtKK0ZDLFdyRWpGZTtFcUVrRmYseUJyRXpGa0I7RXFFMEZsQixrQnJFeEZlO0FyRm92NUJsQjs7QTBKdnA1QkM7RUFDQyxXckVsR2dCO0VxRW1HaEIseUJ0RXBHeUI7RXNFcUd6QixxQnRFckd5QjtBcEYrdjVCM0I7O0FRbnc1QkU7RWtKNkdDLFdyRXhHZTtFcUV5R2Ysb0RyRTRWdUU7QXJGOHo0QjFFOztBMEp0cDVCQztFQUNDLGVBQWU7RUFDZixhckUyVG9DO0FyRjgxNEJ0Qzs7QVE3dzVCRTtFa0p3SEMsZ0JBQWdCO0ExSnlwNUJuQjs7QTBKaHA1QkM7RUFDQyxrQkFBa0I7RUFDbEIsU0FBUztFQUNULFVBQVU7RUFDVixnQkFBZ0I7QTFKbXA1QmxCOztBMEpocDVCRTtFQUNDLGFwRWtSOEM7RW9FalI5QyxnQkFBZ0I7QTFKbXA1Qm5COztBMEo1cDVCQztFQWNFLGFBQWE7RUFDYixtQkFBbUI7RUFDbkIsdUJyRTB2QmtDO0U5RGo1Qi9CLGlDK0R1RHlDO0F0Rm12NUIvQzs7QXVCcnk1Qkk7RW1Ja0lIO0luSWpJSyxnQkFBZ0I7RXZCeXk1QnBCO0FBQ0Y7O0FRMXk1QkU7RWtKc0pFLHlCckUvSWlCO0FyRnV5NUJyQjs7QTBKN3E1QkM7RUEwQkcsa0JBQWtCO0ExSnVwNUJ0Qjs7QTBKanI1QkM7RUErQkcsU0FBUztBMUpzcDVCYjs7QTBKcnI1QkM7RUFrQ0csU0FBUztBMUp1cDVCYjs7QTBKenI1QkM7RUFxQ0csU0FBUztBMUp3cDVCYjs7QTBKN3I1QkM7O0VBNENFLDZCQUE2QjtFQUM3QixZQUFZO0ExSnNwNUJmOztBMEpuczVCQzs7RUFpREcsZ0JBQWdCO0VBQ2hCLGVBQWdDO0VBQ2hDLGtCQUFrQjtFQUNsQixRQUFRO0VBQ1IsU0FBUztFQUNULG9CckVqRWU7RXFFa0VmLFVBQVU7RUFDVixXckUvS2M7RXFFZ0xkLGNBQWM7RUFDZCxtQkFBbUI7RUFDbkIsZ0NBQWdDO0V2RTFMaEMsbUNBQW1DO0VBQ25DLGtDQUFrQztBbkZrMTVCdEM7O0EwSnB0NUJDOztFQWlFRywrQkFBK0I7RUFDL0Isb0JyRWtHMkQ7RXFFakczRCxrQkFBa0I7RUFDbEIsUUFBUTtFQUNSLFNBQVM7RUFDVCxtQkFBNkM7RUFDN0MsV3JFNUxjO0VxRTZMZCxjQUFjO0VBQ2QsZ0NBQWdDO0ExSndwNUJwQzs7QTBKanU1QkM7RUE2RUUsOEJBQThCO0ExSndwNUJqQzs7QWlCenk1Qkk7RXlJb0VIO0lBa0ZFLG1CQUF3QjtFMUp3cDVCekI7RTBKMXU1QkQ7SUF1RkksYUFBYTtFMUpzcDVCaEI7QUFDRjs7QTBKaHA1QkM7RUFDQywwQnJFMnFCbUM7QXJGdyszQnJDOztBMEpwcDVCQzs7OztFQVFHLGdCckV5QzRCO0FyRjBtNUJoQzs7QWlCN3o1Qkk7RXlJa0tIO0lBYUUsYUFBYTtFMUptcDVCZDtBQUNGOztBMEovbzVCQztFQUNDLDBCckV5cEJtQztBckZ5LzNCckM7O0EwSm5wNUJDOzs7RUFPRyxvQkFBeUI7RUFDekIsZ0JyRXVCNEI7QXJGMm41QmhDOztBaUI5MDVCSTtFeUlvTEg7SUFhRSxrQkFBa0I7RTFKa3A1Qm5CO0UwSi9wNUJEOzs7SUFtQkcsYUFBYTtFMUppcDVCZjtFMEpwcTVCRDtJQXdCRyxZQUFZO0UxSitvNUJkO0FBQ0Y7O0FpQnoyNUJJO0V5SStOSDs7SUFHRSxhQUFhO0lBQ2IsbUJBQW1CO0UxSjZvNUJwQjtFMEpqcDVCRDs7SUFRRyxrQkFBa0I7RTFKNm81QnBCO0UwSnJwNUJEOztJQWFHLFNBQVM7RTFKNG81Qlg7RTBKenA1QkQ7O0lBZ0JHLFNBQVM7RTFKNm81Qlg7RTBKN3A1QkQ7O0lBbUJHLFNBQVM7RTFKOG81Qlg7QUFDRjs7QTBKcm81QkM7RUFDQyxxQnJFaEx1QjtFcUVpTHZCLGNBQWM7RUFDZCxZQUFZO0VBQ1osaUJBQWlCO0ExSndvNUJuQjs7QTBKNW81QkM7RUFRRSxhQUFhO0ExSndvNUJoQjs7QTBKaHA1QkM7RUFhRSxnQkFBZ0I7QTFKdW81Qm5COztBMEpubzVCRTtFQUNDLGFBQWE7QTFKc281QmhCOztBMEpsbzVCRTtFQUVFLFdyRXRUYztFcUV1VGQsY0FBYztFQUNkLFlBQVk7RW5JNVVWLHFDK0R1RHlDO0F0RjA1NUIvQzs7QXVCNTg1Qkk7RW1JbVVGO0luSWxVSSxnQkFBZ0I7RXZCZzk1QnBCO0FBQ0Y7O0FRajk1QkU7RWtKMlVHLFVBQVU7QTFKMG81QmY7O0EwSm5vNUJDO0VBQ0MseUJ0RTlUd0I7QXBGbzg1QjFCOztBMEpsbzVCQztFQUNDLGdCQUFnQjtBMUpxbzVCbEI7O0EwSmpvNUJDO0VBQ0MsY3RFL1V3QjtFc0VnVnhCLGVBQWU7QTFKb281QmpCOztBMEp0bzVCQztFQU1FLGdCQUFnQjtBMUpvbzVCbkI7O0EwSi9uNUJDO0VBQ0MsV3JFN1ZnQjtBckYrOTVCbEI7O0EwSm5vNUJDO0VBS0UsY3RFcFZ3QjtFc0VxVnhCLGVBQWU7QTFKa281QmxCOztBMEp4bzVCQztFQVVHLGdCQUFnQjtBMUprbzVCcEI7O0EwSjVuNUJDOztFQUVDLGFBQWE7QTFKK241QmY7O0EwSjduNUJDO0VBQ0Msb0NyRTdXZ0I7RXhFdEJkLHdCd0VrT2lDO0FyRmt5NUJyQzs7QTBKOW41QkM7RUFDQyxRQUFRO0VBQ1IsZUFBZTtFQUNmLG1CdEUxV3lCO0V2RS9CdkIsd0J3RWtPaUM7QXJGeXk1QnJDOztBMEo3bjVCQzs7O0VBR0MsV0FBVztFQUNYLGlCQUFpQjtBMUpnbzVCbkI7O0EySnZoNkJBOzs7Ozs7aUYzSitoNkJpRjtBMkovZzZCaEY7RUFDSSxrQkFBa0I7RUFDbEIsZ0JBQWdCO0EzSmloNkJyQjs7QTJKbmg2QkM7RUFNSyxrQkFBa0I7RUFDbEIsTUFBTTtFQUNOLFFBQVE7RUFDUixlQUFlO0VBQ2YsZ0JBQWdCO0VBQ2hCLGlCQUFpQjtFQUNqQixVQUFVO0VBQ1YsOENBQThDO0VBQzlDLGVBQWU7RUFDZixjQUFjO0VBQ2QsbUJBQW1CO0EzSmloNkJ6Qjs7QTJKNWc2QkM7RUFDSSxxQkFBcUI7RUFDckIsZ0JBQWdCO0VBQ2hCLHFCQUFxQjtFQUNyQiwyS3RFcU9zTDtFc0VwT3RMLFdBQVc7RUFDWCxTQUFTO0VBQ1QsVUFBVTtFQUNWLGdCQUFnQjtFQUNoQixTQUFTO0VBQ1QsZ0JBQWdCO0VBQ2hCLFVBQVU7RUFDVixvQkFBb0I7QTNKK2c2QnpCOztBMko1ZzZCRTs7RUFFQyxXdEUvQmU7QXJGOGk2QmxCOztBMkoxZzZCQztFQUNDLGtCQUFrQjtFQUNmLHlCdkV0Q29CO0V1RXVDcEIsY3ZFakNxQjtFdUVrQ3JCLGtCQUFrQjtFQUNsQiwyQnRFaVZtQztFc0VoVm5DLGNyRXdYNkM7RXFFdlg3QyxhQUFhO0U5STdEZCx3QndFa09pQztBckZ5MjVCckM7O0EySjFnNkJLO0VBQ0MscUJ0RXlVbUM7QXJGb3M1QnpDOztBMkp6aDZCQztFQWlCSyxjdkUvQ29CO0FwRjJqNkIxQjs7QTJKN2g2QkM7RUFzQkUsc0J0RWhFZTtFc0VpRVoscUJ0RThUbUM7RXNFN1RuQyxnQkFBZ0I7QTNKMmc2QnRCOztBMkpuaTZCQztFQTZCRSxnQkFBZ0I7RUFDaEIsVUFBVTtFQUNWLFNBQVM7QTNKMGc2Qlo7O0EySnJnNkJDO0VBQ0kseUJ0RTlFZ0I7RXNFK0VoQixlckVLNEM7QXRGbWc2QmpEOztBMkovLzVCQztFQUNJLGdCQUFnQjtBM0prZzZCckI7O0EySjkvNUJDO0VBQ0Msc0J0RTNGZ0I7RXNFNEZoQixXQUFXO0VBQ1gsc0J0RWdCaUI7RXNFZmpCLGtCQUFrQjtFQUNsQixrQkFBa0I7RTlJL0doQix3QndFa09pQztBckYrNDVCckM7O0EySnZnNkJDO0VBVUUscUJ0RXNqQ3VEO0VzRXJqQ3ZELGdCdEVpSzZCO0VzRWhLMUIsa0JBQWtCO0VBQ2xCLE1BQU07RUFDTixRQUFRO0VBQ1IsZXJFMlQ0QztFcUUxVDVDLGNBQWM7RUFDakIsV3RFdEdlO0VzRXVHZixpQnRFaWpDd0I7RXNFaGpDeEIsYUFBYTtFOUk3SFosd0J3RWtPaUM7QXJGNjU1QnJDOztBUXBuNkJFO0VtSnVIRSxXdEU3R2M7RXNFOEdkLHFCQUFxQjtFQUNyQixVQUFVO0EzSmlnNkJkOztBMkozLzVCQztFQUNDLGFBQWE7RUFDYixlQUFlO0VBQ2Ysa0JBQWtCO0EzSjgvNUJwQjs7QWlCdms2Qkk7RTBJc0VIO0lBT0UsdUJBQXVCO0UzSisvNUJ4QjtBQUNGOztBMkozLzVCQztFQUNJLGNyRTZSNkM7RXFFNVI3QyxlQUFlO0VBQ2Ysc0J0RXpJYTtFc0UwSWIsc0J0RTlJYTtFeEVaZCx3QndFa09pQztBckZ1NzVCckM7O0EySm5nNkJDO0VBU0ssa0JBQWtCO0VBQ2xCLGFyRXNSMkM7QXRGd3U1QmpEOztBMkp6LzVCQztFOUk1SkcsZ0M4STZKb0U7RTlJNUpwRSxpQzhJNEpvRTtBM0o2LzVCeEU7O0EySnovNUJDO0VBQ0Msa0JBQWtCO0VBQ2xCLHlCdEUvSm1CO0VzRWdLbkIsMEJ0RTdKZ0I7QXJGeXA2QmxCOztBMkp4LzVCQztFQUNJLGN2RXZLc0I7RXVFd0t0QixTQUFTO0VBQ1Qsa0JBQWtCO0EzSjIvNUJ2Qjs7QTJKdi81QkM7RUFDSSxZckU0UDRDO0F0Rjh2NUJqRDs7QTJKMy81QkM7RUFLRSxnQkFBZ0I7RUFDaEIsc0JyRTNJZ0Q7RXFFNEloRCxjQUFjO0VBQ2Qsa0JBQWtCO0VBQ2xCLFFBQVE7RUFDUixTQUFTO0VBQ1QsZUFBZ0M7RUFDaEMsZ0NBQWdDO0V4RTNML0IsbUNBQW1DO0VBQ25DLGtDQUFrQztBbkZzcjZCdEM7O0EySnQvNUJDO0VBQ0Msa0JBQWtCO0VBQ2xCLFNBQVM7RUFDVCxPQUFPO0VBQ1AsV0FBVztFQUNYLHlCdEVsTW1CO0VzRW1NbkIsMEJ0RWhNZ0I7RXNFaU1oQixrQnRFK0R3RDtFc0U5RHhELG1CdEU2RWlDO0VzRTVFakMsMkJ0RXlMc0M7RXNFeEx0QyxhdEU0ZjZCO0V4RXpyQjNCLHFDd0UyTWlDO0V4RTFNakMsb0N3RTBNaUM7QXJGNis1QnJDOztBMkpyZzZCQztFQWVFLFVBQVU7RUFDViw2QkFBNkI7RUFDN0IsU0FBUztBM0owLzVCWjs7QTJKaC81QkM7RUFDQyxzQkFBb0c7QTNKbS81QnRHOztBMkovKzVCQzs7RUFLRSxXQUFXO0VBQ1gscUJBQXFCO0VBQ3JCLHlCdkVyRXNCO0V1RXNFdEIsa0JBQWtCO0VBQ2xCLFFBQVE7RUFDUixTQUFTO0VBQ1QsYXRFMmQ0QjtFc0UxZDVCLHVCQUE0RjtFQUM1RixrQnJFbk0yQztFU3RENUMsVzREMFBrQztFNUR6UGxDLFk0RHlQa0M7RTlJeFBoQyx3QndFa09pQztBckZ1ZzZCckM7O0EySi8vNUJDOztFQW9CRSxnQkFBZ0I7RUFDaEIsc0JyRTVNZ0Q7RXFFNk1oRCxxQkFBcUI7RUFDckIsa0JBQWtCO0VBQ2xCLFd0RXRQZTtFc0V1UGYsUUFBUTtFQUNSLFNBQVM7RUFDVCx1QkFBc0Y7RUFDdEYsb0JBQWtDO0VBQ2xDLGVyRW5OMkM7RXFFb04zQyxjQUFjO0VBQ2QsYXRFdWM0QjtFc0V0YzVCLDhDQUFzQztVQUF0QyxzQ0FBc0M7RXhFalFyQyxtQ0FBbUM7RUFDbkMsa0NBQWtDO0FuRmt2NkJ0Qzs7QTJKNSs1QkM7RUFDSSxlQUFlO0VBQ2YsV0FBVztFQUNYLGlCdEVqSm1CO0VzRWtKbkIsY0FBYztBM0orKzVCbkI7O0EySm4vNUJDO0VBUUssTUFBTTtBM0orKzVCWjs7QTJKcis1QkM7Ozs7O0VBTUUsYUFBYTtBM0p1KzVCaEI7O0EySmwrNUJDOzs7RUFJRSxhQUFhO0EzSm8rNUJoQjs7QTJKLzk1QkM7Ozs7O0VBS0ksYUFBYTtBM0prKzVCbEI7O0EySno5NUJDO0VBQ0ksWUFBWTtBM0o0OTVCakI7O0EySjc5NUJDO0VBS0ssaUJ0RXZNa0I7RXNFd01sQiw2QkFBNkI7RUFDN0IsU0FBUztFQUNULGNBQWM7RUFDZCxlQUFlO0VBQ2YsWUFBWTtFQUNaLFVBQVU7RXBJOVVWLHFDK0R1RHlDO0F0Rm92NkIvQzs7QXVCdHk2Qkk7RW9JOFRIO0lwSTdUSyxnQkFBZ0I7RXZCMHk2QnBCO0FBQ0Y7O0FRM3k2QkU7RW1KNlVLLFVBQVU7QTNKays1QmpCOztBMkpsLzVCQztFQXFCTSxNQUFNO0EzSmkrNUJiOztBMkozOTVCQztFQUNJLGNBQWM7RUFDZCxtQkFBbUI7RUFDbkIsZ0JBQWdCO0VBQ2hCLHVCQUF1QjtFQUN2QixrQkFBa0I7RUFDbEIsZ0JyRWtGOEM7RXFFakY5QyxzQnRFMVZhO0VzRTJWYiw2QnRFdlZhO0VzRXdWYixpQkFBaUI7RUFDakIsa0JBQWtCO0EzSjg5NUJ2Qjs7QTJKMTk1QkM7RUFFRSxvQnRFOUY2RDtBckYwajZCaEU7O0EySmw5NUJDO0VBQ0ksdUJ0RTFXYTtFc0UyV2IsWUFBWTtFQUNaLHNCQUFzQjtFQUN0QixjckV1RDZDO0VxRXREN0MsZXJFc0Q2QztFekVwYjlDLHdCd0VrT2lDO0FyRmtuNkJyQzs7QTJKajk1QkM7RUFDSSxvQnRFekYwRDtFc0UwRjFELGdCdEVoSDJCO0VzRWlIM0IsYUFBYTtFQUNiLFlBQVk7QTNKbzk1QmpCOztBMkpoOTVCQztFQUNDLHNCdEUvUWlCO0FyRmt1NkJuQjs7QTJKMTg1QkM7RUFDSSxrQkFBa0I7RUFDbEIsY3JFa0MrQztFcUVqQy9DLE9BQU87RUFDUCxRQUFRO0EzSjY4NUJiOztBMkpqOTVCQzs7RUFTSyxnQnJFMkI4QztFcUUxQjlDLGdCQUFnQjtFQUNoQixZQUFZO0EzSjY4NUJsQjs7QTJKeDg1QkM7RUFDSSxXQUFXO0VBQ1gsWUFBWTtBM0oyODVCakI7O0EySm44NUJDO0VBSUssZUFBZTtFQUNmLFNBQVM7RUFDVCxXQUFXO0VBQ1gsWUFBWTtFQUNaLFVBQVU7RUFDVixlQUFlO0EzSm04NUJyQjs7QTJKNTg1QkM7RTlJL2FHLGdCOEk2YjBCO0EzSms4NUI5Qjs7QTJKaDk1QkM7RUFtQkssZ0JBQWdCO0EzSmk4NUJ0Qjs7QTJKdjc1QkM7RUFJSyxrQkFBa0I7RUFDbEIsUUFBUTtFQUNSLFVBQVU7RUFDVixTQUFTO0VBQ1QsNkJBQTZCO0VBQzdCLGFBQWE7RUFDYixXdEUxY1k7RXNFMmNaLFlBQVk7RUFDWiwyQkFBMkI7RXBJdmQzQixxQytEdUR5QztBdEZ3MTZCL0M7O0F1QjE0NkJJO0VvSXNjSDtJcElyY0ssZ0JBQWdCO0V2Qjg0NkJwQjtBQUNGOztBMkoxODVCQztFQWlCTSxjQUFjO0VBQ2QsZUFBZ0M7QTNKNjc1QnZDOztBMkovODVCQztFQXdCTSxhQUFhO0VBQ2IsMkJBQTBCO0VBQzFCLFVBQVU7QTNKMjc1QmpCOztBMkpyOTVCQztFQStCTSxZQUFZO0EzSjA3NUJuQjs7QTJKejk1QkM7RUFxQ0ssY0FBa0Q7QTNKdzc1QnhEOztBMko3OTVCQztFQTBDSyxlQUFtRDtBM0p1NzVCekQ7O0EySmorNUJDO0VBK0NLLGtCQUFrQjtFQUNsQixZdEUwZ0JxQztFc0V6Z0JyQyxjdEV5Z0JxQztFc0V4Z0JyQyxzQnRFbGZZO0FyRnc2NkJsQjs7QTJKeCs1QkM7RUF1REUsV3RFamZlO0VzRWtmZixxQnRFbFlxQjtBckZ1ejZCeEI7O0EySmg3NUJDO0VBQ0ksa0JBQWtCO0EzSm03NUJ2Qjs7QTJKMzY1QkM7RUFDSSxZQUFZO0VBQ1osV0FBVztFQUNYLGNBQWM7RUFDZCxZQUFZO0VwSXJoQlgscUMrRHVEeUM7QXRGNjQ2Qi9DOztBdUIvNzZCSTtFb0k0Z0JIO0lwSTNnQkssZ0JBQWdCO0V2Qm04NkJwQjtBQUNGOztBUXA4NkJFO0VtSm9oQkksVUFBVTtBM0pvNzVCaEI7O0EySjc3NUJDO0VBY0ssTUFBTTtBM0ptNzVCWjs7QTRKeDk2QkE7Ozs7OztpRjVKZys2QmlGO0E0SnA5NkJoRjtFQUNDLGtCQUFrQjtFQUNsQix1Q3ZFYWdCO0V1RVpoQixpQnRFc2IrQztFc0VyYi9DLHNCdkVDZ0I7RXVFQWhCLGtCdEVxYm1EO0V6RWpjakQsd0J3RWtPaUM7QXJGaXc2QnJDOztBNEpuOTZCRTtFQUNDLHlCdEVrYmdEO0VzRWpiaEQsa0J2RUZlO0FyRnc5NkJsQjs7QTRKais2QkM7RUFnQkUsVUFBVTtBNUpxOTZCYjs7QTRKcis2QkM7RUFtQkUsYUFBYTtBNUpzOTZCaEI7O0E0SnorNkJDO0VBd0JFLGtCdkViZTtFdUVjZix5QnZFbEJrQjtFdUVtQmxCLFd2RWpCZTtBckZzKzZCbEI7O0E0Smo5NkJFO0VBQ0Msa0JBQWtCO0E1Sm85NkJyQjs7QTRKcjk2QkU7RUFNRyxlQUFnQztFQUNoQyxXQUE0QjtFQUM1QixZQUE2QjtFQUM3QixrQkFBa0M7RUFDbEMsUUFBUTtFQUNSLDJCQUEyQjtBNUptOTZCaEM7O0E0Sjk5NkJFO0VBZ0JHLG9CdkV3UG9EO0FyRjB0NkJ6RDs7QTRKdjg2QkM7RUFLRyxhdEUyWDZDO0VzRTFYN0MsV0FBVztFQUNYLGtCQUFrQjtFQUNsQixNQUFNO0VBQ04sT0FBTztFQUNQLGtCQUFrQjtFQUNsQixVQUFVO0UvSTNFVix3QndFa09pQztFOURqTy9CLHFDK0R1RHlDO0F0RjI5NkIvQzs7QXVCN2c3Qkk7RXFJMERIO0lySXpESyxnQkFBZ0I7RXZCaWg3QnBCO0FBQ0Y7O0E0Sno5NkJDO0VBaUJJLGdCQUFnQjtFQUNoQixzQnRFL0I4QztFc0VnQzlDLGV0RXFYNEQ7RXNFcFg1RCxxQkFBcUI7RUFDckIsa0JBQWtCO0VBQ2xCLFNBQWlFO0VBQ2pFLFNBQVM7RUFDVCwyQkFBMkI7RUFDM0IsY0FBYztFQUNkLFVBQVU7RUFDVixXdkUxRWE7RUZSZCxtQ0FBbUM7RUFDbkMsa0NBQWtDO0FuRitoN0J0Qzs7QTRKeis2QkM7RUFpQ0ksb0J2RTJNMEQ7RXVFMU0xRCxXdkUvRWE7RXVFZ0ZiLGNBQWM7RUFDZCxvQkFBZ0Q7QTVKNDg2QnJEOztBNEpoLzZCQztFQXdDSyxjQUFjO0VBQ2QsY0FBcUQ7RUFDckQsb0J2RW1NbUQ7QXJGeXc2QnpEOztBNEp0LzZCQztFQWtERSxhQUFhO0E1Snc4NkJoQjs7QTRKbmo3QkM7RUE4R0UsY0FBYztFQUNkLFVBQVU7QTVKeTg2QmI7O0E0Smg4NkJDOztFQUdFLHNCdkV0SGU7RXVFdUhmLGtCQUFrQjtFQUNsQixxQkFBcUI7RUFDckIsY3RFMlUrQztFc0UxVS9DLGdCdEUyVThDO0VzRTFVOUMsc0N2RWpIZTtFdUVrSGYsZXRFd1UrQztFekVoZDlDLHdCd0VrT2lDO0VtQnZOL0IseUNuQldZO0FyRnNqN0JsQjs7QTRKNzg2QkM7O0VBZUcsYUFBYTtBNUptODZCakI7O0E0Smw5NkJDOztFQW9CRyxrQkFBa0I7QTVKbTg2QnRCOztBNEp2OTZCQzs7RUF3QkksZ0JBQWdCO0VBQ2hCLG9CdkV0Qm1CO0FyRjA5NkJ4Qjs7QTRKNzk2QkM7O0VBOEJJLGtCQUFrQjtFQUNsQixNQUFNO0VBQ04sT0FBTztBNUpvODZCWjs7QTRKcCs2QkM7O0VBcUNJLG9CdkVsQ21CO0FyRnMrNkJ4Qjs7QTRKeis2QkM7O0VBNENJLGFBQWE7QTVKazg2QmxCOztBNEo5KzZCQzs7OztFQW1ERyxhQUFhO0VBQ2Isa0JBQWtCO0VBQ2xCLFVBQVU7RUFDVixNQUFNO0VBQ04sUUFBUTtFQUNSLGdCQUF1QztFQUN2QyxzQnZFNUtjO0V1RTZLZCwyQ3ZFbktjO0V1RW9LZCw2Q3ZFcEtjO0V4RXRCZCw4QndFa09pQztBckYyNTZCckM7O0E0SjkvNkJDOzs7O0VBZ0VJLHNCdEU1SThDO0VzRTZJOUMsY0FBYztFQUNkLG9CdkU2RWlDO0V1RTVFakMsY0FBYztFekV6TGYsbUNBQW1DO0VBQ25DLGtDQUFrQztBbkYrbjdCdEM7O0E0SjFnN0JDOzs7Ozs7OztFQTBFSSxhQUFhO0E1SjI4NkJsQjs7QTRKcmg3QkM7O0VBOEVHLGN4RXhMc0I7QXBGb283QjFCOztBNEoxaDdCQzs7RUFpRkksZ0JBQWdCO0E1Sjg4NkJyQjs7QTRKL2g3QkM7O0VBcUZHLGN4RXJMdUI7QXBGb283QjNCOztBNEpwaTdCQzs7RUF3RkksZ0JBQWdCO0E1Smk5NkJyQjs7QTRKemk3QkM7Ozs7RUErRkcsY0FBYztFQUNkLFVBQVU7QTVKaTk2QmQ7O0E0SmpqN0JDOztFQXFHRyxrQkFBa0I7RUFDbEIsU0FBUztFQUNULE9BQU87RUFDUCxRQUFRO0VBQ1IsZUFBc0M7RUFDdEMsYUFBYTtBNUppOTZCakI7O0E0SjNqN0JDOztFQThHSSxjQUFjO0VBQ2Qsa0JBQWtCO0VBQ2xCLE1BQU07RUFDTixTQUFTO0VBQ1QsT0FBTztFQUNQLFNBQVM7RUFDVCxZQUFZO0VBQ1oseUJ4RXJOc0I7RTdEOUJyQixtQytEdUR5QztFekVqQzNDLG9DK0krTmlGO0UvSTlOakYsbUMrSThOaUY7QTVKbTk2QnJGOztBdUJuczdCSTtFcUl5SEg7O0lySXhISyxnQkFBZ0I7RXZCd3M3QnBCO0FBQ0Y7O0E0SmpsN0JDOztFQTJIRyxjQUFjO0E1SjI5NkJsQjs7QTRKdGw3QkM7O0VBK0hJLGNBQWM7RUFDZCxVQUFVO0VySTlQVCxxQytEdUR5QztBdEZvcTdCL0M7O0F1QnR0N0JJO0VxSXlISDs7SXJJeEhLLGdCQUFnQjtFdkIydDdCcEI7QUFDRjs7QTRKcG03QkM7O0VBdUlHLGNBQWM7RUFDZCxrQkFBa0I7RUFDbEIsTUFBTTtFQUNOLE9BQU87RUFDUCwwQ3ZFOVBjO0V1RStQZCxjdEVxTThDO0VzRXBNOUMsZXRFb004QztFc0VuTTlDLGN4RXhQc0I7RXdFeVB0QixlQUFlO0VBQ2YsVUFBVTtFQUNWLFVBQVU7RXJJL1FSLHFDK0R1RHlDO0F0RjJyN0IvQzs7QXVCN3U3Qkk7RXFJeUhIOztJckl4SEssZ0JBQWdCO0V2Qmt2N0JwQjtBQUNGOztBNEozbjdCQzs7RUF1SkssY0FBYztFQUNkLFVBQVU7QTVKeSs2QmhCOztBNEpqbzdCQzs7RUE2SkksbUJ4RXZRcUI7QXBGZ3Y3QjFCOztBNEp0bzdCQzs7RUFvS0ksY0FBYztFQUNkLFlBQVk7QTVKdSs2QmpCOztBNEo1bzdCQzs7RUE0S0ksV0FBVztBNUpxKzZCaEI7O0E0SmpwN0JDOztFQWtMRyx5QnZFcFNpQjtFdUVxU2pCLHNCdkVsU2M7RXVFbVNkLGNBQWM7RUFDZCwwQnZFZ0dtQztFdUUvRm5DLGtCQUFrQjtFQUNsQixXdkVqU2M7RXVFa1NkLG9CdkVyTG9CO0V1RXNMcEIsZUFBZTtFL0l4VGYsd0J3RWtPaUM7RTlEak8vQixpQytEdUR5QztBdEZzdTdCL0M7O0F1Qnh4N0JJO0VxSXlISDs7SXJJeEhLLGdCQUFnQjtFdkI2eDdCcEI7QUFDRjs7QVE5eDdCRTs7RW9KdVRHLFd2RXpTYTtFdUUwU2IseUJ2RWpUZ0I7RXVFa1RoQixrQnZFaFRhO0FyRjR4N0JsQjs7QTZKano3QkE7Ozs7OztnRjdKeXo3QmdGO0E2Sjd5N0I1RTtFQUNJLGtCQUFrQjtFQUNsQixtQ0FBbUM7RUFDbkMsc0NBQTBDO0VBQzFDLDRDQUE0QztFckRBOUMsK0NuQldZO0FyRnF5N0JsQjs7QTZKM3k3Qkk7RUFDSSwwQnhFc2dDMkI7QXJGd3k1Qm5DOztBNkozeTdCUTtFQUNJLHFCQUFxQztBN0o4eTdCakQ7O0E2Snp5N0JJO0VBQ0ksMEJ4RTQvQjJCO0V3RTMvQjNCLGNBQWM7RUFDZCxpQkFBaUI7QTdKNHk3QnpCOztBNkp4eTdCSTtFQUNJLGVBQWU7RUFDZixTQUFTO0VBQ1QsVUFBVTtFQUNWLGF4RXlxQnVCO0V3RXhxQnZCLG9DQUF3QztFQUN4Qyx1QkFBZTtVQUFmLGVBQWU7RUFDZixtQ0FBMkI7VUFBM0IsMkJBQTJCO0VBQzNCLDRDQUE0QztFQUM1QyxjQUFjO0E3SjJ5N0J0Qjs7QTZKbHk3Qkk7RUFFSSxNQUFNO0VBQ04sUUFBUTtFQUNSLFVBQVU7QTdKb3k3QmxCOztBNkp4eTdCSTtFQVFRLG1CeEVrRU87QXJGa3U3Qm5COztBNkoveDdCSTtFQUVJLFl4RTJEVztFd0UxRFgsYXhFbUoyQjtFd0VsSjNCLFl2RXVab0M7QXRGMDQ2QjVDOztBNko3eDdCSTtFQUVJLE9BQU87RUFDUCxTQUFTO0VBQ1QsWXZFK1lvQztFdUU5WXBDLG9EQUF3RDtBN0oreDdCaEU7O0E2SjN4N0JJO0VBRUksWXhFMENXO0V3RXpDWCxjeEVrSTJCO0V3RWpJM0IsWXZFc1lvQztBdEZ1NTZCNUM7O0E2SnB4N0JJO0VBRUksUUFBUTtFQUNSLFNBQVM7RUFDVCxZdkV5WG9DO0V1RXhYcEMsMERBQThEO0E3SnN4N0J0RTs7QTZKbHg3Qkk7RUFFSSxRQUFRO0VBQ1IsYXhFNEcyQjtFd0UzRzNCLFl2RWdYb0M7RXVFL1dwQyx1REFBMkQ7QTdKb3g3Qm5FOztBNkpoeDdCSTtFQUVJLFFBQVE7RUFDUixjeEVtRzJCO0V3RWxHM0IsWXZFdVdvQztFdUV0V3BDLHVEQUF1RDtBN0preDdCL0Q7O0E2Snp3N0JJO0VBRUksU0FBUztFQUNULFFBQVE7RUFDUixVQUFVO0E3SjJ3N0JsQjs7QTZKL3c3Qkk7RUFRUSxzQnhFVE87QXJGb3g3Qm5COztBNkp0dzdCSTtFQUVJLGV4RWhCVztFd0VpQlgsYXhFd0UyQjtFd0V2RTNCLFl2RTRVb0M7QXRGNDc2QjVDOztBNkpwdzdCSTtFQUVJLFVBQVU7RUFDVixTQUFTO0VBQ1QsWXZFb1VvQztFdUVuVXBDLGdFQUF1RjtBN0pzdzdCL0Y7O0E2Smx3N0JJO0VBRUksZXhFakNXO0V3RWtDWCxjeEV1RDJCO0V3RXREM0IsWXZFMlRvQztBdEZ5ODZCNUM7O0E2SjV2N0JJO0VBQ0ksYUFBYTtBN0ordjdCckI7O0E2SjV2N0JRO0VBQ0ksY0FBYztFQUNkLGtCQUFrQjtFQUNsQixPQUFPO0VBQ1AsU0FBUztFQUNULGlCdkV1VW9DO0V1RXRVcEMsV0FBVztFQUNYLHFDeEU3Sk07QXJGNDU3QmxCOztBNkpydjdCSTtFQUNJLFVBQVU7RUFDVix5QkFBeUI7RUFDekIsMkVBQWtFO1VBQWxFLG1FQUFrRTtFQUNsRSxxQ0FBNkI7VUFBN0IsNkJBQTZCO0E3Snd2N0JyQzs7QTZKcHY3Qkk7RUFDSSw0RUFBbUU7VUFBbkUsb0VBQW1FO0VBQ25FLHFDQUE2QjtVQUE3Qiw2QkFBNkI7QTdKdXY3QnJDOztBNkpudjdCSTtFQUNJLGlEQUF5QztVQUF6Qyx5Q0FBeUM7QTdKc3Y3QmpEOztBNko3dTdCSTtFQUNJLGVBQWU7QTdKZ3Y3QnZCOztBNko1dTdCSTtFQUNJLGtCQUFrQjtFQUNsQixjeEUwekI2QjtFd0V6ekI3QixjeEUwekIyQjtFd0V6ekIzQiw2QkFBNkI7RUFDN0IscUJ4RTI4QmtEO0V3RTE4QmxELGdCeEVzRHdCO0V3RXJEeEIsY0FBYztFQUNkLGtCQUFrQjtFQUNsQixjQUFjO0VBQ2QsZUFBZTtFQUNmLGFBQWE7RXRJcE9mLHFDK0R1RHlDO0F0RjY1N0IvQzs7QXVCLzg3Qkk7RXNJb05BO0l0SW5ORSxnQkFBZ0I7RXZCbTk3QnBCO0FBQ0Y7O0FRcDk3QkU7RXFKbU9VLFVBQVU7QTdKcXY3QnRCOztBNko1dTdCSTtFQUNJLGVBQWU7RUFDZixXQUFXO0VBQ1gsWUFBWTtFQUNaLHNCeEVqT1U7RXdFa09WLGF4RXFkdUI7RXdFcGR2QixZeEV3d0IrQjtFd0V2d0IvQixPQUFPO0VBQ1AsTUFBTTtBN0ordTdCZDs7QTZKdnY3Qkk7RUFZUSxVQUFVO0VBQ1YsNkNBQXFDO1VBQXJDLHFDQUFxQztBN0ordTdCakQ7O0E2SjV2N0JJO0VBa0JRLDhDQUFzQztVQUF0QyxzQ0FBc0M7RUFDdEMscUNBQTZCO1VBQTdCLDZCQUE2QjtBN0o4dTdCekM7O0E2SnJ1N0JJO0VBQ0k7SUFDSSxZeEVndkIyQjtFckZ3LzVCckM7QUFDRjs7QTZKM3U3Qkk7RUFDSTtJQUNJLFl4RWd2QjJCO0VyRncvNUJyQztBQUNGOztBNkp0dTdCSTtFQUNJO0lBQ0ksVUFBVTtFN0p5dTdCcEI7QUFDRjs7QTZKNXU3Qkk7RUFDSTtJQUNJLFVBQVU7RTdKeXU3QnBCO0FBQ0Y7O0E2SnZ1N0JJO0VBQ0k7SUFDSSx1QkFBdUI7SUFDdkIsVUFBVTtFN0owdTdCcEI7QUFDRjs7QTZKOXU3Qkk7RUFDSTtJQUNJLHVCQUF1QjtJQUN2QixVQUFVO0U3SjB1N0JwQjtBQUNGOztBNkp4dTdCSTtFQUNJO0lBQ0kseUJBQXlCO0lBQ3pCLFVBQVU7RTdKMnU3QnBCO0FBQ0Y7O0E2Si91N0JJO0VBQ0k7SUFDSSx5QkFBeUI7SUFDekIsVUFBVTtFN0oydTdCcEI7QUFDRjs7QTZKenU3Qkk7RUFDSTtJQUNJLFNBQVM7RTdKNHU3Qm5CO0FBQ0Y7O0E2Si91N0JJO0VBQ0k7SUFDSSxTQUFTO0U3SjR1N0JuQjtBQUNGOztBNkpwdTdCSTtFQUlRLGlCQUF3QjtFQUN4QixrQkFBa0I7RUFDbEIsNkJBQTZDO0VoSnRUckQsd0J3RWtPaUM7QXJGeXo3QnJDOztBNkozdTdCSTtFQVlRLHlCekVuSmE7RXlFb0piLFd4RWpUTTtFd0VrVE4scUJ6RXJKYTtBcEZ3MzdCekI7O0E2Smp2N0JJO0VBbUJRLHlCekUzUmU7RXlFNFJmLFd4RXhUTTtFd0V5VE4scUJ6RTdSZTtBcEYrLzdCM0I7O0E2SnZ2N0JJO0VBMEJRLHlCekV0VGM7RXlFdVRkLFd4RS9UTTtFd0VnVU4scUJ6RXhUYztBcEZ5aDhCMUI7O0E2Sjd2N0JJO0VBaUNRLHlCekVyT1k7RXlFc09aLFd4RXRVTTtFd0V1VU4scUJ6RXZPWTtBcEZ1ODdCeEI7O0E2Sm53N0JJO0VBd0NRLHlCekV6VGU7RXlFMFRmLFd4RTdVTTtFd0U4VU4scUJ6RTNUZTtBcEYwaDhCM0I7O0E2Snp3N0JJO0VBK0NRLHNCeEVuVk07RXdFb1ZOLGdDeEUxVU07RW1CWFosK0NuQldZO0FyRnlpOEJsQjs7QTZKL3c3Qkk7RUFxRFksZ0J4RWtyQm1CO0FyRjRpNkJuQzs7QTZKbng3Qkk7RUEwRFksWXhFNnFCbUI7QXJGZ2o2Qm5DOztBOEo1azhCQTs7Ozs7O2dGOUpvbDhCZ0Y7QStHaDk3QjNFO0UrQ3ZIQSxZekVxSGM7RXlFcEhkLGN6RTZNOEI7RXlFNU05QixrQkFBa0I7RUFDbEIsWUFBWTtFQUNaLFVBQVU7RWpKWlgsd0J3RWtPaUM7RW1Cdk4vQiwrQ25CV1k7QXJGa2s4QmxCOztBOEp2azhCSztFQUNDLGVBQWU7RUFDZixhekU2ckJ5QjtBckY2NDZCL0I7O0E4SnRsOEJDO0VqSlBHLG9Cd0VxTzZCO0FyRjQzN0JqQzs7QThKMWw4QkM7RUFzQkUseUJBQXlCO0VBQ3pCLHlCQUF5QjtFQUN6QixXekVuQmU7QXJGMmw4QmxCOztBOEpobThCQzs7RUE4QkUseUJBQXlCO0VBQ3pCLHFCQUFxQjtFQUNyQixjQUFjO0E5SnVrOEJqQjs7QThKdm04QkM7RUEyQ0ssYXpFb0s2QjtFeUVuSzdCLFdBQVc7QTlKZ2s4QmpCOztBOEo1bThCQztFQWdESyxlekVzRWE7RXlFckViLFNBQVM7QTlKZ2s4QmY7O0E4SmpuOEJDO0VBb0RLLFNBQVM7RUFDVCxXQUFXO0VBQ1gsbUJBQXNDO0E5SmlrOEI1Qzs7QThKdm44QkM7RUEyREUsU0FBUztFQUNULFVBQVU7RUFDVixhQUFhO0VBQ2IsWUFBWTtBOUpnazhCZjs7QThKOW44QkM7RUFpRUUsVUFBVTtFQUNWLFdBQVc7RUFDWCxXQUFXO0VBQ1gsWUFBWTtBOUppazhCZjs7QThKcm84QkM7RUF1RUUsUUFBUTtFQUNSLE9BQU87RUFDUCxNQUFNO0E5SmtrOEJUOztBOEozbzhCQztFQTRFRSxRQUFRO0VBQ1IsT0FBTztFQUNQLFNBQVM7RUFDVCxTQUFTO0E5Sm1rOEJaOztBOEpscDhCQztFQXlGSyx5QkFBd0I7QTlKNmo4QjlCOztBOEp0cDhCQztFQThGSyx3RUFBd0U7QTlKNGo4QjlFOztBOEoxcDhCQztFQW1HRSxVQUFVO0VBQ1AsK0JBQStCO0E5SjJqOEJyQzs7QThKL3A4QkM7RUF1R00sNEZBQTRGO0E5SjRqOEJuRzs7QThKbnE4QkM7RUE2R0ssVUFBVTtFQUNWLCtCQUErQjtBOUowajhCckM7O0E4SnhxOEJDO0VBaUhNLDRGQUE0RjtBOUoyajhCbkc7O0E4SjVxOEJDO0VBdUhLLDhCQUE4QjtFQUM5QixVQUFVO0E5SnlqOEJoQjs7QThKanI4QkM7RUEySE0sNEZBQTRGO0E5SjBqOEJuRzs7QThKcnI4QkM7RUFpSUssVUFBVTtBOUp3ajhCaEI7O0E4SjlpOEJDO0VBQ0ksMEJ6RW80QjhCO0V5RW40QjlCLFlBQVk7RUFDWixrQkFBa0I7RUFDbEIsT0FBTztFQUNQLFNBQVM7RWpKdkpWLHdCd0VrT2lDO0FyRnUrN0JyQzs7QXlEN3M4QkU7RUFDRSxjQUFjO0VBQ2QsV0FBVztFQUNYLFdBQVc7QXpEZ3Q4QmY7O0E4SjdqOEJDO0VqSmxKRyxnQmlKNkowQjtBOUpzajhCOUI7O0E4SmpqOEJDO0VBQ0MsY0FBYztFQUNkLGFBQWE7RUFDYix3QnpFcEN1QjtFeUVxQ3ZCLG9CekV1SXVEO0FyRjY2N0J6RDs7QThKaGo4QkM7RUFDSSxjQUFjO0E5Sm1qOEJuQjs7QThKL2k4QkM7RUFDSSxjQUFjO0VBQ2QsV0FBVztFQUNYLGNBQWM7QTlKa2o4Qm5COztBOEpyajhCQztFQU1LLHNCQUFxRDtFQUNyRCxzQnpFcERrQjtBckZ1bThCeEI7O0E4SjlpOEJDOztFQUVDLFlBQVk7RUFDWixxQnpFNURzQjtFeUU2RHRCLHNCQUFxRDtFQUNyRCxjQUFjO0VBQ2QsVUFBVTtBOUppajhCWjs7QThKeGk4QkM7RUFDSSxvQ3pFckxhO0V5RXNMYixNQUFNO0VBQ04sT0FBTztFQUNQLGtCQUFrQjtFQUNsQixVQUFVO0UvRGpOYixXK0RrTnFCO0UvRGpOckIsWStEaU5xQjtBOUo0aThCdkI7O0E4SjFpOEJLO0VBQ0MsZUFBZTtFQUNmLGF6RXlmeUI7QXJGb2o3Qi9COztBOEpwaThCQztFQUNJLGlCQUFpQztBOUp1aThCdEM7O0E4SnBpOEJLO0VBQ0MseUJBQXlCO0VBQ3pCLHFCQUFxQjtFQUNyQixjQUFjO0E5SnVpOEJwQjs7QThKOWg4QkM7RUFDSSx5QjFFdkdvQjtFMEV3R3BCLHFCMUVyR3FCO0UwRXNHckIsYzFFbk1zQjtBcEZvdThCM0I7O0E4Si9oOEJDO0VBQ0kseUIxRTFJa0I7RTBFMklsQixxQjFFeEltQjtFMEV5SW5CLGMxRXJJbUI7QXBGdXE4QnhCOztBOEpoaThCQztFQUNJLHlCMUU1TnFCO0UwRTZOckIscUIxRTFOc0I7RTBFMk50QixjMUV2TnNCO0FwRjB2OEIzQjs7QThKamk4QkM7RUFDSSx5QjFFM09vQjtFMEU0T3BCLHFCMUV6T3FCO0UwRTBPckIsYzFFdE9xQjtBcEYwdzhCMUI7O0E4SjNoOEJDOztFQUVJLGtCQUFrQjtFQUNsQixxQkFBcUI7RUFDckIsVUFBVTtFL0Q5UWIsY1ZrUndEO0VValJ4RCxlVmlSd0Q7QXJGNGg4QjFEOztBOEpwaThCQzs7RUFTSyxXQUFXO0VBQ1gsc0J4RS9ONkM7RXdFZ083QyxrQnpFSG9EO0V5RUlwRCxjQUFjO0UzRTNRaEIsbUNBQW1DO0VBQ25DLGtDQUFrQztBbkY0eThCdEM7O0E4SjVoOEJDO0VBQ0ksZ0JBQWdCO0E5SitoOEJyQjs7QThKM2g4QkM7RUFDSSxnQkFBZ0I7QTlKOGg4QnJCOztBOEoxaDhCQztFQUNDLGdCQUFnQjtBOUo2aDhCbEI7O0E4SnBoOEJDO0VBQ0MsZUFBZTtFQUNmLFVBQVU7QTlKdWg4Qlo7O0E4Sm5oOEJDO0VBSUUsMkJBQTZEO0E5Sm1oOEJoRTs7QThKdmg4QkM7RUFTRSxPQUFPO0E5SmtoOEJWOztBOEo3ZzhCQztFQUlFLDRCQUE4RDtBOUo2ZzhCakU7O0E4SmpoOEJDO0VBU0UsUUFBUTtBOUo0ZzhCWDs7QThKbmc4QkM7O0VBSU0sY0FBYztFQUNkLFdBQVc7RUFDWCxzQnpFMVVXO0V5RTJVWCxzQnpFL1VXO0V5RWdWWCxpQ0FBa0Q7RUFDbEQsV3pFeFVXO0V5RXlVWCwyQnpFOENpQztFeUU3Q2pDLFVBQVU7QTlKb2c4QmpCOztBOEpqZzhCTzs7RUFDQyx5QkFBeUI7RUFDekIsV3pFeFZVO0FyRjYxOEJsQjs7QThKdmc4Qk87O0VBTUssV3pFNVZNO0V5RTZWTixVQUFVO0E5SnNnOEJ0Qjs7QThKN2c4Qk87O0VBTUssV3pFNVZNO0V5RTZWTixVQUFVO0E5SnNnOEJ0Qjs7QThKN2c4Qk87O0VBTUssV3pFNVZNO0V5RTZWTixVQUFVO0E5SnNnOEJ0Qjs7QThKN2c4Qk87O0VBTUssV3pFNVZNO0V5RTZWTixVQUFVO0E5SnNnOEJ0Qjs7QThKN2c4Qk87O0VBTUssV3pFNVZNO0V5RTZWTixVQUFVO0E5SnNnOEJ0Qjs7QThKei83QkM7RUFDSSxrQkFBa0I7RUFDbEIsTUFBTTtFQUNOLGN6RW5LOEI7RXlFb0s5QixnQkFBZ0I7RUFDaEIsVUFBVTtFQUNWLGF6RW9WMEI7RXhFdnNCM0IseUJpSm9YNkI7RWpKblg3QiwwQmlKbVg2QjtBOUo2LzdCakM7O0E4SnBnOEJDO0VBV0ssZUFBZTtBOUo2LzdCckI7O0E4SnhnOEJDO0VBZ0JLLGtCQUFrQjtFQUNsQix3QnpFdFFtQjtBckZrdzhCekI7O0E4SjdnOEJDO0VBc0JLLGVBQWU7RUFDZixjQUFjO0VBQ2QsV0FBVztBOUoyLzdCakI7O0E4Sm5oOEJDO0VBNkJLLGNBQWM7RUFDZCxjQUFjO0E5SjAvN0JwQjs7QWlCMTA4Qkk7RTZJNFZGO0lBSVEsZUFBZTtJQUNmLE1BQU07SUFDTixRQUFRO0lBQ1IsT0FBTztJQUNQLHNCQUFzQjtJQUN0QiwyQkFBMkI7RTlKKys3Qm5DO0U4SngvN0JBO0lBYVMsd0JBQThDO0l0RGxhbkQsZ0JzRG1hNkI7RTlKOCs3QmpDO0U4SjUvN0JBO0lBd0JTLE9BQU87SUFDUCxRQUFRO0U5SnUrN0JqQjtFOEpoZzhCQTtJQTZCUyxPQUFPO0lBQ1AsUUFBUTtJQUNSLFNBQVM7SUFDVCxTQUFTO0U5SnMrN0JsQjtFOEp0ZzhCQTs7O0lBcUNVLHFCQUEyQztJQUMzQyx3QnpFeE9tQjtFckY4czhCN0I7RThKNWc4QkE7SUFpRE0sWUFBWTtFOUo4OTdCbEI7RThKL2c4QkE7SUFzRE0sd0JBQXdCO0U5SjQ5N0I5QjtFOEpsaDhCQTtJakpoYUUsZ0JpSjRkOEI7RTlKeTk3QmhDO0FBQ0Y7O0ErSjM3OEJBOzs7Ozs7Z0YvSm04OEJnRjtBK0p2NzhCL0U7RUFDQyxhMUV3c0I2QjtFMEV2c0I3QixrQkFBa0I7QS9KeTc4QnBCOztBK0p0NzhCRTtFQUNDLGVBQWU7QS9KeTc4QmxCOztBK0ovNzhCQztFQWdCRSxhMUUrTGdDO0UwRTlMaEMsWTFFcUdnQjtBckY4MDhCbkI7O0ErSnA4OEJDO0VBb0JFLFNBQVM7RUFDVCxZMUVpR2dCO0UwRWhHaEIsbUJBQXNDO0EvSm83OEJ6Qzs7QStKMTg4QkM7RUF5QkUsYzFFc0xnQztFMEVyTGhDLFkxRTRGZ0I7QXJGeTE4Qm5COztBK0ovODhCQztFQStCRSxRQUFRO0VBQ1IsWXpFb2J5QztFeUVuYnpDLFNBQVM7RUFDVCxtQkFBc0M7RUFDdEMsdUJBQTREO0EvSm83OEIvRDs7QStKdjk4QkM7O0VBd0NHLGlCQUFpQjtFQUNqQixrQkFBa0I7QS9Kbzc4QnRCOztBK0o3OThCQztFQStDRSxhMUVnS2dDO0UwRS9KaEMsZTFFc0VnQjtBckY0MjhCbkI7O0ErSmwrOEJDO0VBbURFLFNBQVM7RUFDVCxlMUVrRWdCO0UwRWpFaEIsbUJBQXNDO0EvSm03OEJ6Qzs7QStKeCs4QkM7RUF3REUsYzFFdUpnQztFMEV0SmhDLGUxRTZEZ0I7QXJGdTM4Qm5COztBK0poNzhCRTtFQTdERDtJQThERSxhQUFhO0UvSm83OEJkO0FBQ0Y7O0ErSmg3OEJDO0VBQ0MsdUJBQTJDO0VBQzNDLFl6RStZMEM7RXlFOVkxQyxnQkFBZ0I7RUFDaEIsYUFBYTtFdkRuRVQsK0NuQldZO0FyRjQrOEJsQjs7QStKeDc4QkM7RUFTRSxvQjFFME5zRDtFMEV6TnRELHdCMUU2Q3NCO0FyRnM0OEJ6Qjs7QStKNzc4QkM7RUFjRyxTQUFTO0EvSm03OEJiOztBK0pqODhCQztFQW9CRSxnQjFFd0w2QjtFMEV2TDdCLGdCQUFnQjtFQUNoQixTQUFTO0VBQ1QscUIxRXlrQ3VEO0UwRXhrQ3ZELGVBQWU7RUFDZixjQUFjO0VBQ2QsVUFBVTtFQUNWLFlBQVk7RUFDWixjQUFjO0VBQ2QsVUFBVTtFQUNWLHFCMUUwQnFCO0UwRXpCckIsYUFBYTtFeEl4R1YscUMrRHVEeUM7QXRGbSs4Qi9DOztBdUJyaDlCSTtFd0lvRUg7SXhJbkVLLGdCQUFnQjtFdkJ5aDlCcEI7QUFDRjs7QStKdjk4QkM7RUFvQ0csVUFBVTtBL0p1NzhCZDs7QStKajc4QkM7RUFDQyxvQkFBK0I7RUFDL0IsZUFBZTtFQUNmLHFCMUVVdUI7RTBFVHZCLGtCQUFrQjtFQUNsQixzQjFFN0dnQjtFMEU4R2hCLFl6RWlXMEM7RXlFaFcxQyxzQjFFM0dnQjtFeEVoQmQsd0J3RWtPaUM7QXJGODA4QnJDOztBZ0tyajlCQTs7Ozs7O2dGaEs2ajlCZ0Y7QWdLN2k5Qi9FO0VBSUUsa0JBQWtCO0FoSzRpOUJyQjs7QWdLaGo5QkM7RUFTRSxlQUFlO0VBQ2YsT0FBTztFQUNQLFFBQVE7QWhLMmk5Qlg7O0FnS3RqOUJDO0VBaUJHLDZCQUE2QjtFQUM3QiwrQzNFUGM7QXJGZ2o5QmxCOztBZ0svaDlCQztFQUNDLGFBQWE7RUFDYixtQkFBbUI7RUFDbkIsbUJBQW1CO0VBQ25CLHVCQUF1QjtFQUN2QixlQUFlO0VBQ2YsTUFBTTtFQUNOLE9BQU87RUFDUCxRQUFRO0VBQ1IsU0FBUztFQUNULDZCQUE2QjtFQUM3QixhM0U4cEI2QjtBckZvNDdCL0I7O0FnSzdpOUJDO0VBb0JFLHVCQUF1QjtBaEs2aDlCMUI7O0FnS2pqOUJDO0VBd0JHLG1CM0U4RGU7QXJGKzk4Qm5COztBZ0tyajlCQztFQTRCRSx1QkFBdUI7RUFDdkIsMkJBQTJCO0FoSzZoOUI5Qjs7QWdLMWo5QkM7RUFpQ0csbUIzRXFEZTtFMkVwRGYsb0IzRTZJK0I7QXJGZzU4Qm5DOztBZ0svajlCQztFQXNDRSx1QkFBdUI7RUFDdkIseUJBQXlCO0FoSzZoOUI1Qjs7QWdLcGs5QkM7RUEyQ0csbUIzRTJDZTtFMkUxQ2YscUIzRW1JK0I7QXJGMDU4Qm5DOztBZ0t6azlCQztFQWtERSxtQkFBbUI7RUFDbkIsWUFBWTtBaEsyaDlCZjs7QWdLOWs5QkM7RUFzREUsbUJBQW1CO0VBQ25CLDJCQUEyQjtBaEs0aDlCOUI7O0FnS25sOUJDO0VBMkRHLG9CM0VvSCtCO0FyRnc2OEJuQzs7QWdLdmw5QkM7RUErREUsbUJBQW1CO0VBQ25CLHlCQUF5QjtBaEs0aDlCNUI7O0FnSzVsOUJDO0VBb0VHLHFCM0UyRytCO0FyRmk3OEJuQzs7QWdLaG05QkM7RUEwRUUscUJBQXFCO0FoSzBoOUJ4Qjs7QWdLcG05QkM7RUE4RUcsc0IzRVFlO0FyRmtoOUJuQjs7QWdLeG05QkM7RUFrRkUscUJBQXFCO0VBQ3JCLDJCQUEyQjtBaEswaDlCOUI7O0FnSzdtOUJDO0VBdUZHLHNCM0VEZTtFMkVFZixvQjNFdUYrQjtBckZtODhCbkM7O0FnS2xuOUJDO0VBNEZFLHFCQUFxQjtFQUNyQix5QkFBeUI7QWhLMGg5QjVCOztBZ0t2bjlCQztFQWlHRyxzQjNFWGU7RTJFWWYscUIzRTZFK0I7QXJGNjg4Qm5DOztBZ0tyaDlCRTtFQXZHRDtJQXlHRyxvQkFBb0I7RWhLd2g5QnRCO0FBQ0Y7O0FnS2xvOUJDO0V6SXRDSyxrQ3lJcUpzQztBaEt1aDlCNUM7O0F1QnZxOUJJO0V5SWlDSDtJekloQ0ssZ0JBQWdCO0V2QjJxOUJwQjtBQUNGOztBZ0t6aDlCRTtFQUNDLG9DM0VySWU7QXJGaXE5QmxCOztBZ0tsaDlCQztFQUVFLHdCQUF3QjtFQUN4QixPQUFPO0VBQ1AsbUJBQW1CO0VBQ25CLHVCQUF1QjtFQUN2Qix1QjNFMkNnQztBckZ5KzhCbkM7O0FnSy9nOUJDO0VBRUUsd0JBQXdCO0VBQ3hCLE9BQU87RUFDUCxxQkFBcUI7RUFDckIsdUJBQXVCO0VBQ3ZCLG9CM0VnQ2dDO0UyRS9CaEMscUIzRStCZ0M7QXJGay84Qm5DOztBZ0s1ZzlCQztFQUNDLE9BQU87RUFDUCxzQkFBc0I7RUFDdEIsbUJBQW1CO0FoSytnOUJyQjs7QWdLbGg5QkM7RUFPRSx1QkFBdUI7QWhLK2c5QjFCOztBZ0t0aDlCQztFQVlFLHFCQUFxQjtBaEs4ZzlCeEI7O0FnSzFoOUJDO0VBaUJFLHdCQUF3QjtFQUN4QixPQUFPO0VBQ1AscUJBQXFCO0VBQ3JCLHVCQUF1QjtFQUN2QixtQjNFcEZnQjtFMkVxRmhCLHNCM0VyRmdCO0FyRmttOUJuQjs7QWdLbmc5QkM7RUFDQyxzQkFBc0I7RUFDdEIsc0IzRWxOZ0I7RTJFbU5oQixrQkFBa0I7RUFDbEIsYUFBYTtFQUNiLGtCQUFrQjtFQUNsQixlQUFlO0VBQ2YsZ0IxRTBSNEM7RTBFelI1QyxlMUUwUjZDO0UwRXpSN0Msb0IzRWZpQztFMkVnQmpDLHFCM0VoQmlDO0V4RXROL0Isc0J3RW1PK0I7RW1CeE43QiwrQ25CV1k7QXJGd3Q5QmxCOztBZ0tsaDlCQztFQWdCRSxhQUFhO0FoS3NnOUJoQjs7QWdLdGg5QkM7RUFxQkUsa0JBQWtCO0FoS3FnOUJyQjs7QWlCL3I5Qkk7RStJcUtIO0lBMEJFLGNBQWM7SUFDZCxlQUFlO0VoS3FnOUJoQjtBQUNGOztBZ0tqZzlCQztFQUNJLGFBQWE7RUFDYixzQkFBc0I7RUFDdEIsbUJBQW1CO0FoS29nOUJ4Qjs7QWdLaGc5QkM7RUFDQyxvQjNFd0M2RDtFMkV2QzdELGdCM0VrQjhCO0UyRWpCOUIsbUIzRXVCaUM7RTJFdEJqQyxrQkFBa0I7RUFDbEIsa0JBQWtCO0VBQ2xCLHFCQUFxQjtFQUNyQixxQjNFekl1QjtFMkUwSXZCLGdCQUFnQjtBaEttZzlCbEI7O0FnSy8vOEJDO0VBQ0Msa0JBQWtCO0VBQ2xCLGtCQUFrQjtFQUNsQixxQkFBcUI7QWhLa2c5QnZCOztBZ0t6LzhCQztFQUNJLG1CQUFtQjtFQUNuQix1QkFBdUI7RUFDdkIsbUIzRWpLYztBckY2cDlCbkI7O0FnSy8vOEJDO0VBT0UscUJBQTBCO0FoSzQvOEI3Qjs7QWdLbmc5QkM7RUFZRSxlQUFlO0VBQ2YsWUFBWTtBaEsyLzhCZjs7QWdLdC84QkM7RUFHRyxnQkFBZ0I7RUFDaEIsc0IxRTlQK0M7RTBFK1A1QyxxQkFBcUI7RUFDckIsZTFFL1B1QztFMEVnUXZDLGtCQUFrQjtFQUNsQixzQkFBc0I7RUFDdEIsa0JBQWtCO0VBQ2YsY0FBYztFQUNqQixzQjNFdExpQjtFMkV1TGpCLDhDQUFzQztVQUF0QyxzQ0FBc0M7RTdFaFR6QyxtQ0FBbUM7RUFDbkMsa0NBQWtDO0FuRnd5OUJ0Qzs7QWdLbC84QkM7RUFDQyx1QkFBdUI7RUFDdkIsU0FBUztFQUNULFNBQVM7RUFDVCxVQUFVO0VBQ1YsaUJBQWlCO0VBQ2pCLGNBQWM7RUFDZCxrQkFBa0I7RUFDbEIsU0FBUztFQUNULFdBQVc7RUFDWCxlQUFlO0VBQ2YsV0FBVztFakU3VVgsYWlFOFVvQjtFakU3VXBCLGNpRTZVb0I7RXpJM1VoQixxQ3lJNFUyQztBaEtzLzhCakQ7O0F1Qjd6OUJJO0V5STBUSDtJekl6VEssZ0JBQWdCO0V2QmkwOUJwQjtBQUNGOztBUTl6OUJFO0V3SnNVQyxVQUFVO0VBQ1YsVUFBVTtBaEs0LzhCYjs7QWdLbC84QkM7Ozs7OztFQU1DLGFBQWE7RUFDYiwyQkFBMkI7QWhLcS84QjdCOztBZ0tqLzhCQzs7O0VBSUUsMkJBQTJCO0FoS20vOEI5Qjs7QWdLOSs4QkM7RUFDQyxtQkFBbUI7RUFDbkIsdUJBQXVCO0FoS2kvOEJ6Qjs7QWdLbi84QkM7RUFNRSxxQjNFcFBxQjtBckZxdTlCeEI7O0FnSzUrOEJDO0VBQ0MsdUJBQXVCO0FoSysrOEJ6Qjs7QWdLaC84QkM7RUFJRSxvQkFBb0I7RUFDakIsbUJBQW1CO0FoS2cvOEJ6Qjs7QWdLci84QkM7RUFTRyxvQjNFdlFlO0FyRnV2OUJuQjs7QWdLei84QkM7O0VBZUcsc0IzRXhRb0I7QXJGdXY5QnhCOztBZ0t6KzhCQztFQUNDLG1CM0VwUmlCO0UyRXFSakIsdUJBQXVCO0VBQ3ZCLGVBQWU7QWhLNCs4QmpCOztBZ0svKzhCQztFQU9FLGNBQWM7RUFDZCxXQUFXO0FoSzQrOEJkOztBZ0twLzhCQztFQWFFLG9CM0VoSHNEO0UyRWlIdEQsZ0IzRXZJNkI7RTJFd0k3QixvQkFBeUI7QWhLMis4QjVCOztBUXgzOUJFO0V3Sm9aQyxxQjVFalp1QjtBcEZ5MzlCMUI7O0FnS24rOEJDO0VBQ0MseUIzRTlabUI7RTJFK1puQixnQkFBZ0I7RUFDaEIsMkIzRWxDc0M7RTJFbUN0QyxhQUFhO0VBQ2IsbUIzRW5UaUI7RTJFb1RqQix5QkFBd0I7RUFDeEIsMEJBQXlCO0VuSmxidkIsd0J3RWtPaUM7QXJGdXI5QnJDOztBZ0s5KzhCQztFQVlFLGdCQUFnQjtFQUNoQixzQjFFcllnRDtFMEVzWTdDLHFCQUFxQjtFQUNyQixlMUV0WXdDO0UwRXVZeEMsc0JBQXNCO0VBQ3RCLGtCQUFrQjtFQUNsQixjQUFjO0VBQ2Qsc0IzRTVUa0I7RTJFNlRsQixjNUUxYW9CO0VEWnRCLG1DQUFtQztFQUNuQyxrQ0FBa0M7QW5GNjU5QnRDOztBZ0s3OThCQztFQUNDLHFCQUEwQjtFcEpyYzFCLGVBQWU7RUFHZixZQUFZO0FabzY5QmQ7O0FnSzc5OEJDO0VBQ0MsaUNBQWtEO0VBQ2xELGtDQUF1QztFQUN2QyxVQUFVO0VBQ1Ysa0JBQWtCO0VBQ2xCLHVCQUF1QjtFQUN2QixlQUFlO0VBQ2YseUJBQWlCO0tBQWpCLHNCQUFpQjtNQUFqQixxQkFBaUI7VUFBakIsaUJBQWlCO0VqRXpkakIsV1RtZ0J5QztFU2xnQnpDLFlUa2dCeUM7RXpFamdCdkMsa0J3RXNPMkI7QXJGb3Q5Qi9COztBZ0sxKzhCQztFQWFFLHFCNUUvYndCO0FwRmc2OUIzQjs7QWdLOSs4QkM7RUFpQk0sY0FBOEI7RUFDOUIsY0FBNkI7RUFDN0I7RUFDQSxtQzVFdGNvQjtFNEV1Y3BCLGlDNUV2Y29CO0U0RXdjcEIsa0JBQWtCO0VBQ2xCO0VBQ0EsYUFBNEI7RUFDNUIsYUFBNEQ7RUFDNUQsVUFBVTtFQUNWLCtDQUF1QztVQUF2Qyx1Q0FBdUM7RUFDdkM7RUFDQSxvQ0FBb0M7RUFDcEMsMEJBQTBCO0VBQzFCO0FoS2krOEJQOztBZ0toZzlCQztFQXFDRSxxQjVFamV1QjtBcEZnODlCMUI7O0FnS3BnOUJDO0VBeUNHLGtCQUFrQjtFQUNsQixjQUFjO0VBQ2QsT0FBTztBaEsrOThCWDs7QWdLMWc5QkM7RUFnREcsa0JBQWtCO0VBQ2xCLGUxRUMwQztFMEVBMUMsV0FBb0Q7RUFDcEQseUI1RS9lc0I7RTRFZ2Z0QixjQUFjO0VBQ2QsYUFBc0Q7QWhLODk4QjFEOztBZ0tuaDlCQztFQXlESSx3QkFBd0I7RUFDeEIsVTFFUHNDO0F0RnErOEIzQzs7QWdLeGg5QkM7RUErREkseUJBQXlCO0VBQ3pCLFcxRWJzQztBdEYwKzhCM0M7O0FnSzdoOUJDO0VBdUVFLGM1RS9ld0I7RTRFZ2Z4QixxQjVFaGZ3QjtFNEVpZnhCLGVBQWtEO0VBQ2xELGlCMUV6QndDO0UwRTBCeEMsdUJBQXVCO0FoSzA5OEIxQjs7QWdLcmk5QkM7RUFnRkUsYzVFcGJxQjtFNEVxYnJCLHFCNUVyYnFCO0U0RXNickIsZUFBa0Q7RUFDbEQsaUIxRWxDd0M7RTBFbUN4Qyx1QkFBdUI7QWhLeTk4QjFCOztBZ0s3aTlCQztFQXlGRSxjNUUvWHNCO0U0RWdZdEIscUI1RWhZc0I7RTRFaVl0QixlQUFrRDtFQUNsRCxpQ0FBb0U7RUFDcEUsdUJBQXVCO0FoS3c5OEIxQjs7QWdLOTg4QkM7RUFDQyxnQjNFalM4QjtFMkVrUzlCLG1CM0U1YmlCO0UyRTZiakIsVUFBVTtBaEtpOThCWjs7QWdLcDk4QkM7RUFPRSxxQkFBcUI7RUFDckIsa0JBQWtCO0FoS2k5OEJyQjs7QWdLNTg4QkM7RUFDQyxjNUUxakJ5QjtFNEUyakJ6QixrQkFBa0I7RUFDbEIscUJBQTBCO0VBQzFCLHNCQUEyQjtBaEsrODhCN0I7O0FnS245OEJDO0VBUUUsYzVFamtCd0I7QXBGZ2grQjNCOztBZ0t2OThCQztFQVlHLFczRTlqQmM7QXJGNmcrQmxCOztBZ0szOThCQztFQWlCRyxzQjNFcmtCYztBckZtaCtCbEI7O0FnS3g4OEJDO0VBQ0MseUI1RWpsQnlCO0U0RWtsQnpCLGlCOUUzZ0JxRDtFOEU0Z0JyRCxzQkFBc0I7QWhLMjg4QnhCOztBQUVBO0VnS244OEJFLDZDM0VsbEJnQjtBckZ1aCtCbEI7O0FnS2o4OEJDO0VBQ0MsMENBQWtDO1VBQWxDLGtDQUFrQztBaEtvODhCcEM7O0FnS3I4OEJDO0VBS0UsdUJBQWU7VUFBZixlQUFlO0FoS284OEJsQjs7QWdLLzc4QkM7RUFDQyxtREFBMkM7VUFBM0MsMkNBQTJDO0FoS2s4OEI3Qzs7QWdLbjg4QkM7RUFLRSx1QkFBZTtVQUFmLGVBQWU7QWhLazg4QmxCOztBZ0s3NzhCQzs7Ozs7RUFLQyxzQ0FBOEI7VUFBOUIsOEJBQThCO0FoS2c4OEJoQzs7QWdLNTc4QkM7RUFDQyxzQ0FBOEI7VUFBOUIsOEJBQThCO0FoSys3OEJoQzs7QWdLdDc4QkM7RUFDQztJQUNDLHFCQUFxQjtFaEt5NzhCdEI7RWdLdjc4QkE7SUFDQyxtQkFBbUI7RWhLeTc4QnBCO0FBQ0Y7O0FnSy83OEJDO0VBQ0M7SUFDQyxxQkFBcUI7RWhLeTc4QnRCO0VnS3Y3OEJBO0lBQ0MsbUJBQW1CO0VoS3k3OEJwQjtBQUNGOztBZ0tyNzhCQztFQUNDO0lBQ0MsbUJBQW1CO0lBQ25CLFVBQVU7RWhLdzc4Qlg7RWdLdDc4QkE7SUFDQyxxQkFBcUI7SUFDckIsVUFBVTtFaEt3NzhCWDtBQUNGOztBZ0toODhCQztFQUNDO0lBQ0MsbUJBQW1CO0lBQ25CLFVBQVU7RWhLdzc4Qlg7RWdLdDc4QkE7SUFDQyxxQkFBcUI7SUFDckIsVUFBVTtFaEt3NzhCWDtBQUNGOztBZ0twNzhCQztFQUNDO0lBQ0MsU0FBUztJQUNULFFBQVE7SUFDUixVQUFVO0VoS3U3OEJYO0VnS3I3OEJBO0lBQ0MsU0FBUztJQUNULGNBQTZCO0lBQzdCLFVBQVU7RWhLdTc4Qlg7RWdLcjc4QkE7SUFDQyxjQUE4QjtJQUM5QixjQUE2QjtJQUM3QixVQUFVO0VoS3U3OEJYO0VnS3I3OEJBO0lBQ0MsY0FBOEI7SUFDOUIsY0FBNkI7SUFDN0IsVUFBVTtFaEt1NzhCWDtBQUNGOztBZ0szODhCQztFQUNDO0lBQ0MsU0FBUztJQUNULFFBQVE7SUFDUixVQUFVO0VoS3U3OEJYO0VnS3I3OEJBO0lBQ0MsU0FBUztJQUNULGNBQTZCO0lBQzdCLFVBQVU7RWhLdTc4Qlg7RWdLcjc4QkE7SUFDQyxjQUE4QjtJQUM5QixjQUE2QjtJQUM3QixVQUFVO0VoS3U3OEJYO0VnS3I3OEJBO0lBQ0MsY0FBOEI7SUFDOUIsY0FBNkI7SUFDN0IsVUFBVTtFaEt1NzhCWDtBQUNGOztBZ0tuNzhCQztFQUNDO0lBQ0Msa0JBQWtCO0lBQ2xCLHlCQUF5QjtFaEtzNzhCMUI7RWdLcDc4QkE7SUFDQyxrQkFBa0I7RWhLczc4Qm5CO0FBQ0Y7O0FnSzc3OEJDO0VBQ0M7SUFDQyxrQkFBa0I7SUFDbEIseUJBQXlCO0VoS3M3OEIxQjtFZ0twNzhCQTtJQUNDLGtCQUFrQjtFaEtzNzhCbkI7QUFDRjs7QWdLbDc4QkM7RUFDQztJQUNDLFVBQVU7RWhLcTc4Qlg7RWdLbjc4QkE7SUFDQyxVQUFVO0VoS3E3OEJYO0VnS243OEJBO0lBQ0MsVUFBVTtFaEtxNzhCWDtBQUNGOztBZ0s5NzhCQztFQUNDO0lBQ0MsVUFBVTtFaEtxNzhCWDtFZ0tuNzhCQTtJQUNDLFVBQVU7RWhLcTc4Qlg7RWdLbjc4QkE7SUFDQyxVQUFVO0VoS3E3OEJYO0FBQ0Y7O0FpSy9vK0JBOzs7Ozs7aUZqS3VwK0JpRjtBaUt4bytCN0U7RUFRUSx3QkFBZ0Y7RUFDaEYscUI1RStHWTtFNEU5R1osc0I1RThHWTtBckZxaCtCeEI7O0FpSzdvK0JJOztFQWdCUSxhQUFhO0FqS2tvK0J6Qjs7QWlLbHArQkk7RUFxQlEsY0FBYztBaktpbytCMUI7O0FpS3RwK0JJO0VBMEJRLGlCNUU2T29EO0U0RTVPcEQsY0FBYztFQUNkLG9CNUUyT29EO0U0RTFPcEQsY0FBYztFQUNkLHVCNUV5T29EO0U0RXhPcEQsa0JBQWtCO0VBQ2xCLGlCQUFpQjtFQUNqQixrQkFBa0I7RUFDbEIsUzNFa2xCK0I7RTJFamxCL0IsVTNFaWxCK0I7RTJFaGxCL0IsZUFBZTtFQUNmLDJCQUEyQjtFQUMzQix5QkFBaUI7S0FBakIsc0JBQWlCO01BQWpCLHFCQUFpQjtVQUFqQixpQkFBaUI7QWpLZ28rQjdCOztBaUt0cStCSTtFQTJDUSxzQjVFbENNO0U0RW1DTixnQjNFeWtCb0M7RTJFeGtCcEMsaUIzRXlrQm9DO0UyRXhrQnBDLGtCQUFrQjtFQUNsQixTQUFTO0FqSytuK0JyQjs7QWlLOXErQkk7RUFvRFEsa0JBQWtCO0VBQ2xCLGVBQWtDO0VBQ2xDLFNBQVM7RUFDVCxjQUFjO0VBQ2Qsc0JBQTBCO0VBQzFCLG1CQUFtQjtFQUNuQixXNUVqRE07QXJGK3ErQmxCOztBaUt4citCSTtFQW1FUSxvQkFBeUY7RUFDekYscUJBQTBGO0FqS3luK0J0Rzs7QWlLN3IrQkk7RUF3RVksZ0JBQWdCO0VBQ2hCLFNBQVM7RUFDVCxVM0UwaUIyQjtFMkV6aUIzQixjQUFjO0VBQ2QsWUFBWTtBakt5bitCNUI7O0FpS3JzK0JJO0VBaUZZLGdCM0VxaUJnQztFMkVwaUJoQyxpQjNFbWlCZ0M7RTJFbGlCaEMsa0JBQWtCO0VBQ2xCLFFBQVE7RUFDUixPQUFPO0FqS3duK0J2Qjs7QWlLN3MrQkk7RUEwRlksUUFBUTtFQUNSLGNBQWM7RUFDZCx1QkFBd0M7RUFDeEMsZ0JBQW1DO0FqS3VuK0JuRDs7QWlLOW0rQkk7OztFQU9ZLFVBQVU7QWpLNm0rQjFCOztBaUtwbitCSTs7RUFjUSxrQkFBa0I7RUFDbEIsa0JBQWtCO0VBQ2xCLFVBQTRGO0VBQzVGLGNBQWM7RUFDZCxTQUFTO0VBQ1Qsc0I1RTdHTTtFNEU4R04sa0JBQWtCO0VBQ2xCLG9CNUV5STBCO0U0RXhJMUIsVzVFMUhNO0U0RTJITix1QjVFNHlCMEI7RTRFM3lCMUIsVUFBVTtFQUNWLDJCQUEyQjtFcEp6SW5DLHdCd0VrT2lDO0U5RGpPL0IsdUMrRHdEeUM7QXRGNnIrQi9DOztBdUJoditCSTtFMEkwR0E7O0kxSXpHRSxnQkFBZ0I7RXZCcXYrQnBCO0FBQ0Y7O0FpSzdvK0JJOztFQWlDUSxtQkFBbUI7RUFDbkIsVUFBVTtFQUlOLHVCM0U3RitCO0F0RjJzK0IvQzs7QWlLcHArQkk7O0VBNkNRLFdBQVc7RUFDWCxpQ0FBK0M7RUFDL0Msc0I1RXpJTTtFNEUwSU4sa0JBQWtCO0VBQ2xCLGVBQW1DO0VBQ25DLFNBQVM7RUFDVCxxQjVFb3hCMEI7RVV6N0JwQyxRa0VzS3lCO0VsRXJLekIsU2tFcUt5QjtBaks2bStCM0I7O0FrS3R4K0JBOzs7Ozs7aUZsSzh4K0JpRjtBK0gxaStCeEQ7RW1Dbk9qQixrQkFBa0I7RUFDbEIsc0I3RUVVO0V4RWZkLG9Cd0VxTzZCO0VtQjFOM0IsOENuQldZO0FyRnl3K0JsQjs7QWtLcHgrQkk7O0VBU1EseUJBQWlCO0tBQWpCLHNCQUFpQjtNQUFqQixxQkFBaUI7VUFBakIsaUJBQWlCO0FsS2d4K0I3Qjs7QWtLM3crQkk7O0VBRUksa0JBQWtCO0VBQ2xCLFVBQVU7RW5FOUJoQixXbUUrQndCO0VuRTlCeEIsWW1FOEJ3QjtBbEsrdytCMUI7O0FrSzN3K0JJO0VBQ0ksZ0JBQWdCO0VBQ2hCLFVBQVU7RXJKbkNkLG9Cd0VxTzZCO0FyRjZrK0JqQzs7QWtLMXcrQkk7O0VBRUksc0JBQXNCO0VBQ3RCLGtCQUFrQjtFQUNsQixVQUFVO0VBQ1YsTUFBTTtFQUNOO0VBQ0EsT0FBTztFQUNQLHFCQUFxQjtFQUNyQjtFbkVuRE4sV21Fb0R3QjtFbkVuRHhCLFltRW1Ed0I7QWxLOHcrQjFCOztBa0sxdytCSTtFQUNJLDBCQUEwQjtBbEs2dytCbEM7O0FrS3p3K0JJO0VBQ0kseUI5RTRHaUI7QXBGZ3ErQnpCOztBQUVBO0VrS3R3K0JZLGE1RTBpQitCO0F0Rjh0OUIzQzs7QUFFQTtFa0tydytCWSxlNUV3QnFDO0F0Rit1K0JqRDs7QWtLN3YrQkk7RUFDSSxnQjVFNmhCdUM7QXRGbXU5Qi9DOztBa0tqdytCSTtFQUtRLGNBQW1EO0VBQ25ELGlCQUE2QjtBbEtndytCekM7O0FrS3R3K0JJO0VBV1EsU0FBUztFQUNULFVBQVU7RUFDVixRQUFRO0FsSyt2K0JwQjs7QWtLNXcrQkk7RUFrQlEseUJBQThEO0FsSzh2K0IxRTs7QWtLenYrQkk7RUFDSSxxQkFBcUI7RUFDckIsZTVFcWdCdUM7RTRFcGdCdkMsYTVFdWdCb0M7QXRGcXY5QjVDOztBa0svditCSTtFQU9RLHFCQUE0QjtBbEs0ditCeEM7O0FrS253K0JJO0VBWVEsZUFBMkI7RUFDM0I7RUFDQSxlQUFvRDtBbEsyditCaEU7O0FrS3p3K0JJO0VBbUJRLFFBQVE7QWxLMHYrQnBCOztBa0s3dytCSTtFQXdCUSx3QkFBNkQ7QWxLeXYrQnpFOztBa0svdStCSTtFQUNJLGdCQUFnQjtBbEtrditCeEI7O0FrSy91K0JRO0VBQ0ksZ0JBQWdCO0FsS2t2K0I1Qjs7QWtLN3UrQkk7RUFDSSxzQjdFM0lVO0U2RTRJVixlQUFlO0VBQ2YsYzVFd2R1QztFNEV2ZHZDLGtCQUFrQjtFQUNsQixVQUFVO0VBQ1Ysc0I3RTNJVTtFNkU0SVYsVUFBVTtFbkUvSmhCLGVtRWdLc0M7RW5FL0p0QyxnQm1FK0pzQztFcko5SnBDLGtCd0VzTzJCO0FyRjBxK0IvQjs7QWtLMXYrQkk7RTNJckpFLGlDK0R1RHlDO0F0RjQxK0IvQzs7QXVCOTQrQkk7RTJJZ0pBO0kzSS9JRSxnQkFBZ0I7RXZCazUrQnBCO0FBQ0Y7O0FrS2x2K0JRO0VBQ0ksV0FBVztBbEtxditCdkI7O0FrS3h3K0JJO0VBd0JRLFdBQVc7RUFDWCxxQkFBcUI7RUFDckIsa0JBQWtCO0VBQ2xCLFFBQVE7RUFDUixTQUFTO0VBQ1Qsc0JBQWdDO0VBQ2hDLHVCQUFpQztFQUNqQyxzQjdFaEtNO0VVdkJoQixlVG1uQjZDO0VTbG5CN0MsZ0JUa25CNkM7RXpFam5CM0Msa0J3RXNPMkI7QXJGc3MrQi9COztBUWo2K0JFO0UwSmlMVSx5QjdFL0tTO0FyRm02K0JyQjs7QWtLMXgrQkk7RUEwQ1ksc0I3RTVLRTtBckZnNitCbEI7O0FrSzl1K0JJO0VBQ0ksYUFBYTtBbEtpditCckI7O0FrS3p1K0JJOztFM0k5TUUsMkIrRHVEeUM7QXRGcTQrQi9DOztBdUJ2NytCSTtFMkl5TUE7O0kzSXhNRSxnQkFBZ0I7RXZCNDcrQnBCO0FBQ0Y7O0FrS3h1K0JJO0VBSVEsWTVFa1pzRDtFU3BuQmhFLGFtRW1PNkM7RW5FbE83QyxjbUVrTzZDO0FsS3l1K0IvQzs7QWtLOXUrQkk7RUFTWSxvQkFBbUM7RUFDbkMscUJBQW9DO0VuRXhPbEQsYVRvbkJnRTtFU25uQmhFLGNUbW5CZ0U7QXRGKzE5QmxFOztBa0tyditCSTtFQWlCUSxjNUVxWXNEO0F0Rm0yOUJsRTs7QWtLenYrQkk7RUFxQlksZUFBZ0M7QWxLd3UrQmhEOztBa0s3ditCSTtFQTJCUSxhNUUyWHNEO0F0RjIyOUJsRTs7QWtLancrQkk7RUErQlksYUFBOEI7RUFDOUIsY0FBMkQ7QWxLc3UrQjNFOztBa0todStCSTtFQUlRLGE1RTZXc0Q7RVNybkJoRSxjbUV5UTZDO0VuRXhRN0MsZW1Fd1E2QztBbEtpdStCL0M7O0FrS3R1K0JJO0VBU1kscUJBQW1DO0VBQ25DLHNCQUFvQztFbkU5UWxELGNUcW5CZ0U7RVNwbkJoRSxlVG9uQmdFO0F0RjQzOUJsRTs7QWtLN3UrQkk7RUFpQlEsZTVFZ1dzRDtBdEZnNDlCbEU7O0FrS2p2K0JJO0VBcUJZLGFBQXlEO0VBQ3pELGdCQUFnQztBbEtndStCaEQ7O0FrS3R2K0JJO0VBNEJRLGM1RXFWc0Q7QXRGeTQ5QmxFOztBa0sxditCSTtFQWdDWSxjQUE4QjtFQUM5QixlQUEyRDtBbEs4dCtCM0U7O0FrS3B0K0JJO0VBT1ksc0I3RXhTRTtBckZ5LytCbEI7O0FrS3h0K0JJO0VBYWdCLGFBQWE7QWxLK3MrQmpDOztBa0s1dCtCSTtFQW9CUSx5QjlFdFRlO0U4RXVUZixxQjlFdlRlO0FwRm1nL0IzQjs7QWtLanUrQkk7RUF5QlEseUI5RWpUYztFOEVrVGQscUI5RWxUYztBcEY4LytCMUI7O0FrS3R1K0JJO0VBOEJRLHlCOUU1U2U7RThFNlNmLHFCOUU3U2U7QXBGeS8rQjNCOztBa0szdStCSTtFQW1DUSx5QjlFeFNlO0U4RXlTZixxQjlFelNlO0FwRnEvK0IzQjs7QWtLaHYrQkk7RUF3Q1EseUI5RWxTWTtFOEVtU1oscUI5RW5TWTtBcEYrKytCeEI7O0FrS2xzK0JJO0VBRVEseUI5RXZWZTtBcEYyaC9CM0I7O0FrSy9yK0JJO0VBRVEseUI5RXBWYztBcEZxaC9CMUI7O0FrSzVyK0JJO0VBRVEseUI5RWpWZTtBcEYrZy9CM0I7O0FrS3pyK0JJO0VBRVEseUI5RS9VZTtBcEYwZy9CM0I7O0FrS3RyK0JJO0VBRVEseUI5RTNVWTtBcEZtZy9CeEI7O0FrSy9xK0JJO0VBQ0ksa0JBQWtCO0VBQ2xCLHNCN0VuWFU7RTZFb1hWLFc3RTlYVTtFNkUrWFYsdUI3RXdpQjhCO0U2RXZpQjlCLGU3RTJpQjhCO0U2RTFpQjlCLFNBQVM7RUFDVCxxQ0FBcUM7RUFDckMsVUFBVTtFQUNWLGtCQUFrQjtFckpoWnRCLHdCd0VrT2lDO0U5RGpPL0IsaUMrRHVEeUM7QXRGNGcvQi9DOztBdUI5ai9CSTtFMklpWUE7STNJaFlFLGdCQUFnQjtFdkJray9CcEI7QUFDRjs7QWtLbnMrQkk7RUFlUSxXQUFXO0VBQ1gsaUNBQStDO0VBQy9DLHNCN0VsWU07RTZFbVlOLGtCQUFrQjtFQUNsQixTQUFTO0VBQ1QsZUFBbUM7RUFDbkMsa0NBQWtDO0VuRTlaNUMsUW1FK1p5QjtFbkU5WnpCLFNtRThaeUI7QWxLeXIrQjNCOztBa0tycitCUTtFQUNJLFVBQVU7RUFDVixtQkFBbUI7QWxLd3IrQi9COztBa0svcStCSTtFQUNJLGtCQUFrQjtFQUNsQixXN0UzWlU7QXJGNmsvQmxCOztBa0t6cStCSTtFQUNJLGFBQWE7RUFDYixrQkFBa0I7RUFDbEIsa0JBQWtCO0VBQ2xCLG9CN0UxS3dEO0U2RTJLeEQsaUI3RTVKeUI7QXJGdzArQmpDOztBa0t4cStCSTtFQUNJLGNBQXVDO0FsSzJxK0IvQzs7QWtLbnErQkk7RUFDSSxrQkFBa0I7RUFDbEIsc0I3RXhiVTtBckY4bC9CbEI7O0FrSzdwK0JJO0VBQ0ksdUJBQTBDO0VBQzFDLGtCQUF1RDtFQUN2RCxTQUFTO0VBQ1QsT0FBTztFQUNQLFdBQVc7QWxLZ3ErQm5COztBa0s1cCtCSTtFQUNJLHFCQUFzQjtFQUN0QixpQjVFK0ptQztBdEZnZytCM0M7O0FrS2pxK0JJO0VBS1EsdUJBQTBDO0FsS2dxK0J0RDs7QWtLM3ArQkk7RUFJUSxnQjVFb0pvQztFNEVuSnBDLGlCNUVvSm9DO0F0RnVnK0JoRDs7QWtLaHErQkk7RUFVUSxnQkFBd0M7QWxLMHArQnBEOztBa0twcStCSTtFQWVRLGlCQUF3QztBbEt5cCtCcEQ7O0FrSy9vK0JJO0VBQ0ksd0JBQTJDO0VBQzNDLFlBQVk7RUFDWixNQUFNO0VBQ04sVUFBVTtBbEtrcCtCbEI7O0FrSzlvK0JJO0VBQ0ksdUJBQXVDO0VBQ3ZDLG9CQUF5QztBbEtpcCtCakQ7O0FrSy9vK0JRO0VBQ0ksYUFBYTtFQUNiLDBCQUEwQztBbEtrcCtCdEQ7O0FrSzdvK0JJO0VBSVEsZ0I1RXlHb0M7RTRFeEdwQyxpQjVFdUdvQztBdEZzaStCaEQ7O0FrS2xwK0JJO0VBVVEsZUFBdUM7QWxLNG8rQm5EOztBa0t0cCtCSTtFQWVRLGdCQUF1QztBbEsybytCbkQ7O0FtS2xyL0JBOzs7Ozs7Z0ZuSzByL0JnRjtBbUs5cS9CNUU7RUFDSSxrQkFBa0I7RUFDbEIsY0FBYztFQUNkLGlCQUF3RztFQUN4Ryx5QkFBaUI7S0FBakIsc0JBQWlCO01BQWpCLHFCQUFpQjtVQUFqQixpQkFBaUI7RUFDakI7RUFDQSxjQUFjO0FuS2dyL0J0Qjs7QW1LNXEvQkk7RUFDSSw2QkFBNkI7RUFDN0IseUJBQXlCO0VBQ3pCLGlCQUFpQjtFQUNqQixrQkFBa0I7RUFDbEIsbUJBQW1CO0VBQ25CLG9CQUFvQjtFQUNwQix1QkFBdUI7RUFDdkIseUJBQXlCO0VBQ3pCLHFCQUFxQjtFQUNyQixvQkFBb0I7RUFDcEIsd0JBQXdCO0VBQ3hCLHlCQUF5QjtFQUN6QiwyQkFBMkI7RUFDM0IsOEJBQThCO0VBQzlCLG9DQUFvQztBbksrcS9CNUM7O0FtS3RxL0JJO0VBQ0ksa0JBQWtCO0VBQ2xCLGNBQWM7RUFDZCxnQkFBZ0I7RUFDaEIsYUFBYTtFQUNiLGdCN0Vta0J1QztFNkVsa0J2QyxjQUFxRztFQUNyRyxzQjlFakNVO0V4RWZkLG9Cd0VxTzZCO0FyRnEvK0JqQzs7QW1LcnEvQkk7OztFQUdJLGtCQUFrQjtFQUNsQixjQUFjO0VBQ2QsTUFBTTtBbkt3cS9CZDs7QW1LcHEvQkk7RUFDSTtFQUNBLE9BQU87RUFDUCxVQUFVO0FuS3VxL0JsQjs7QW1LbnEvQkk7RUFDSTtFQUNBLFFBQVE7RUFDUixVQUFVO0FuS3NxL0JsQjs7QW1LbHEvQkk7RUFDSTtFQUNBLFFBQVE7RUFDUixVQUFVO0FuS3FxL0JsQjs7QW1LNXAvQkk7RUFDSSxrQkFBa0I7RUFDbEIsY0FBYztFQUNkLGNBQXFHO0VBQ3JHO0VBQ0EsT0FBTztFQUNQLFFBQVE7RUFDUixnQjdFa2hCdUM7RTZFamhCdkMseUIvRXdFaUI7RXZFeEtyQixvQndFcU82QjtBckYyaC9CakM7O0FtSzNwL0JJO0VBQ0ksa0JBQWtCO0VBQ2xCLGNBQWM7RUFDZCxjQUFxRztFQUNyRztFQUNBLE9BQU87RUFDUCxlQUFlO0VBQ2YsZ0JBQWdCO0FuSzhwL0J4Qjs7QW1LMXAvQkk7RUFDSSxrQkFBa0I7RUFDbEIsYUFBYTtFQUNiLGNBQXFHO0VBQ3JHO0VBQ0EsT0FBTztFQUNQLFFBQVE7RUFDUixnQjdFMGZ1QztFNkV6ZnZDLHNCOUVuR1U7RThFb0dWLGFBQWE7RXRKekhqQixvQndFcU82QjtBckZrai9CakM7O0FtS25wL0JJO0VBQ0ksa0JBQWtCO0VBQ2xCLGNBQWM7RUFDZCxzQjlFM0hVO0U4RTRIVixzQjlFdkhVO0U4RXdIVixlQUFlO0VBQ2YsY0FBK0Y7RUFDL0YsZUFBZTtFQUNmLFVBQVU7RXBFOUloQixlb0UrSXNDO0VwRTlJdEMsZ0JvRThJc0M7RXRKN0lwQyxvQndFcU82QjtBckZnay9CakM7O0FtS2pxL0JJO0VBY1EsV0FBVztFQUNYLHFCQUFxQjtFQUNyQixrQkFBa0I7RUFDbEIsUUFBUTtFQUNSLFNBQVM7RUFDVCxzQkFBZ0M7RUFDaEMsdUJBQWlDO0VBQ2pDLHNCOUVwSU07RVV2QmhCLGVUbW5CNkM7RVNsbkI3QyxnQlRrbkI2QztFekVqbkIzQyxvQndFcU82QjtBckY4ay9CakM7O0FtSy9xL0JJO0U1SW5JRSw4QytEdUR5QztBdEYrdi9CL0M7O0F1Qmp6L0JJO0U0SThIQTtJNUk3SEUsZ0JBQWdCO0V2QnF6L0JwQjtBQUNGOztBUWx6L0JFO0UySjJKVSx5QjlFekpTO0FyRm96L0JyQjs7QW1LN3IvQkk7RUFzQ1ksc0I5RXRKRTtBckZpei9CbEI7O0FtS2pzL0JJO0VBNENRLFVBQVU7QW5LeXAvQnRCOztBbUs5by9CSTs7Ozs7RUFLSSxrQkFBa0I7RUFDbEIsY0FBYztFQUNkLGVBQWU7QW5LaXAvQnZCOztBbUs3by9CSTs7RUFFSSxXOUVyTFU7RThFc0xWLG9COUV3RXdEO0U4RXZFeEQsY0FBYztFQUNkLE1BQU07RUFDTixlOUVzdUI2QjtFOEVydUI3QixzQjlFOUxVO0V4RWZkLHdCd0VrT2lDO0FyRjRuL0JyQzs7QW1LOW8vQkk7RUFDSTtFQUNBLE9BQU87QW5LaXAvQmY7O0FtSy9vL0JJO0VBQ0k7RUFDQSxRQUFRO0FuS2twL0JoQjs7QW1LOW8vQkk7OztFQUdJLE1BQU07RUFDTjtFQUNBLE9BQU87RUFDUCxtQkFBbUI7RUFDbkIsVzlFck5VO0U4RXNOVixvQjlFK0N3RDtFOEU5Q3hELGNBQWM7RUFDZCxlOUU4c0I2QjtFOEU3c0I3QixNQUFNO0VBQ04sc0I5RWhOVTtFeEV0QmQsd0J3RWtPaUM7QXJGc3AvQnJDOztBbUs5cC9CSTs7O0VBaUJRLFdBQVc7RUFDWCxrQkFBa0I7RUFDbEIsY0FBYztFQUNkLGVBQW1DO0VBQ25DLFNBQVM7RUFDVCxxQjlFdXNCMEI7RThFdHNCMUIsZ0JBQWdCO0VBQ2hCLGlDQUErQztFQUMvQyxzQjlFN05NO0VVeEJoQixRb0VzUHlCO0VwRXJQekIsU29FcVB5QjtBbktvcC9CM0I7O0FtSzFvL0JJO0VBQ0ksa0JBQWtCO0VBQ2xCLGFBQWE7RUFDYixTQUFTO0VBQ1Q7RUFDQSxPQUFPO0VBQ1AsV0FBVztFQUNYLGlCQUF3RDtBbks2by9CaEU7O0FtS3pvL0JJO0VBQ0ksaUJBQWdJO0FuSzRvL0J4STs7QW1LN28vQkk7RUFLUSxjQUFjO0FuSzRvL0IxQjs7QW1Ldm8vQkk7RUFDSSxrQkFBa0I7RUFDbEIsTUFBTTtFQUNOO0VBQ0EsT0FBTztFQUNQLGdCN0V1V3dDO0U2RXRXeEMsZ0JBQXdDO0VBQ3hDLHNCOUV2UVU7QXJGaTUvQmxCOztBbUtqcC9CSTtFQVdRLGlCN0VrV29DO0F0Rnd5K0JoRDs7QW1Lcm8vQkk7RUFDSSxrQkFBa0I7RUFDbEIsU0FBUztFQUNUO0VBQ0EsT0FBTztFQUNQLG1CQUFtQjtFQUNuQixrQkFBa0I7RUFDbEIsb0I5RXpCd0Q7RThFMEJ4RCxXOUV4UlU7RThFeVJWLGNBQWM7RUFDZCxvQjdFbVZ3QztBdEZxeitCaEQ7O0FtSy9uL0JJO0VBQ0ksa0JBQWtCO0VBQ2xCLGNBQWM7RUFDZCxNQUFNO0VBQ047RUFDQSxTQUFTO0VBQ1QsV0FBVztFQUNYLFlBQVk7RUFDWixlQUFlO0VBQ2YsdUJBQXVCO0VBQ3ZCLFVBQVU7QW5La28vQmxCOztBbUs5bi9CSTtFQUNJLGE3RXlTbUM7QXRGdzErQjNDOztBb0szOC9CQTs7Ozs7O2lGcEttOS9CaUY7QW9LbjgvQmhGOztFQUVDLGtCQUFrQjtBcEtxOC9CcEI7O0FvSzc3L0JDO0VBRUUsVy9FTGU7RStFTWYsZTlFeUU4QztFOEV4RTlDLGFBQWE7QXBLKzcvQmhCOztBb0sxNy9CQztFQUNDLGtCQUFrQjtBcEs2Ny9CcEI7O0FvSzk3L0JDO0VBS0UsV0FBVztFQUNYLHFCQUFxQjtFQUNyQiwwQy9FekJlO0UrRTBCZixrQkFBa0I7RUFDbEIsT0FBTztFQUNQLE1BQU07RUFDTixxQy9FbkJlO0VVeEJoQixXcUU0Q21CO0VyRTNDbkIsWXFFMkNtQjtBcEs4Ny9CckI7O0FvS3A3L0JDO0VBSUUsc0IvRXFFZ0I7QXJGKzIvQm5COztBb0tsNy9CRztFQUNDLGdCQUFnQjtBcEtxNy9CcEI7O0FvS2g3L0JFO0VBQ0MsbUIvRTREZ0I7QXJGdTMvQm5COztBb0tqNy9CRztFQUNDLGFBQWE7QXBLbzcvQmpCOztBb0s5Ni9CQztFdkoxRUcsd0J3RWtPaUM7QXJGMHgvQnJDOztBb0t0Ni9CQztFQUlFLGNBQWM7RUFDZCxlQUFlO0FwS3M2L0JsQjs7QW9LbDYvQkc7RUFJQyxvQy9FN0VjO0FyRisrL0JsQjs7QW9LdDYvQkc7RUFVRSxvQy9FbkZhO0FyRm0vL0JsQjs7QW9LMTUvQkc7RUFJQyx5Qi9FdEdpQjtBckZnZ2dDckI7O0FvSzk1L0JHO0VBVUUsc0IvRTdHYTtBckZxZ2dDbEI7O0FvSzc0L0JDO0VBSUUsV0FBVztFQUNYLDZCL0VxTzBDO0UrRXBPMUMsY0FBYztBcEs2NC9CakI7O0FvS241L0JDO0VBV0UsU0FBUztBcEs0NC9CWjs7QW9LdjUvQkM7RUFlRyxhQUFhO0FwSzQ0L0JqQjs7QW9LMzUvQkM7RUFxQkUsa0JBQWtCO0FwSzA0L0JyQjs7QW9LajQvQkM7RUFDQyxrQkFBa0I7RUFDbEIsWUFBWTtFQUNaLGNBQWM7RUFDZCxrQkFBa0I7QXBLbzQvQnBCOztBb0t4NC9CQztFQVFFLHFCQUFxQjtFQUNyQixtQkFBbUI7RUFDbkIsbUNBQW1DO0VBQ25DLHNEQUE2RDtBcEtvNC9CaEU7O0FvS2g0L0JFOztFQUVDLGFBQWE7QXBLbTQvQmhCOztBb0s5My9CQztFQUNDLGdCQUFnQjtFQUNoQixpQkFBaUI7RUFDakIsV0FBVztFQUNYLGVBQWU7RUFDZixPQUFPO0FwS2k0L0JUOztBb0svMy9CQztFQUNDLGdCQUFnQjtFQUNoQixpQkFBaUI7RUFDakIsV0FBVztFQUNYLGtCQUFrQjtFQUNsQixPQUFPO0FwS2s0L0JUOztBb0toNC9CQztFQUNDLGdCQUFnQjtFQUNoQixnQkFBZ0I7RUFDaEIsaUJBQWlCO0VBQ2pCLE1BQU07RUFDTixZQUFZO0FwS200L0JkOztBb0tqNC9CQztFQUNDLGdCQUFnQjtFQUNoQixnQkFBZ0I7RUFDaEIsZ0JBQWdCO0VBQ2hCLE1BQU07RUFDTixZQUFZO0FwS280L0JkOztBb0tsNC9CQztFQUNDLGlCQUFpQjtFQUNqQixnQkFBZ0I7RUFDaEIsaUJBQWlCO0FwS3E0L0JuQjs7QW9LbjQvQkM7RUFDQyxpQkFBaUI7RUFDakIsZ0JBQWdCO0VBQ2hCLGlCQUFpQjtFQUNqQixnQkFBZ0I7RUFDaEIsa0JBQWtCO0FwS3M0L0JwQjs7QW9LcDQvQkM7RUFDQyxpQkFBaUI7RUFDakIsZ0JBQWdCO0VBQ2hCLGlCQUFpQjtFQUNqQixnQkFBZ0I7RUFDaEIsZUFBZTtBcEt1NC9CakI7O0FvS3I0L0JDO0VBQ0MsaUJBQWlCO0VBQ2pCLGdCQUFnQjtFQUNoQixpQkFBaUI7RUFDakIsaUJBQWlCO0VBQ2pCLGVBQWU7QXBLdzQvQmpCOztBb0toNC9CQztFQUNDLGtCQUFrQjtBcEttNC9CcEI7O0FvSy8zL0JDO0VBQ0Msa0JBQWtCO0VBQ2xCLFlBQVk7RUFDWix1Qi9Fdk9nQjtBckZ5bWdDbEI7O0FxS25vZ0NBOzs7Ozs7aUZySzJvZ0NpRjtBcUszbmdDaEY7RUFJRSxjQUFjO0VBQ2QsZUFBZTtFQUNmLFNBQVM7RUFDVCxVQUFVO0VBQ1Ysa0JBQWtCO0VBQ2xCLHNCaEZSZTtFZ0ZTZiwwQmhGNjNCa0M7RWdGNTNCbEMsc0NoRkFlO0VnRkNmLGtCL0UyRDZDO0V6RWxGNUMsd0J3RWtPaUM7QXJGZzcvQnJDOztBcUt2b2dDQztFQWlCRyxhQUFhO0FySzBuZ0NqQjs7QXFLM29nQ0M7RXhKWUcsNkJ3SlUrQjtFeEpUL0IsNEJ3SlMrQjtBckswbmdDbkM7O0FxS2hwZ0NDO0VBMkJHLGtCQUFrQjtFQUNsQixRQUFRO0VBQ1IsY2hGMDJCaUM7RWdGejJCakMsbUJBQWlDO0FyS3luZ0NyQzs7QXFLdnBnQ0M7RUFrQ0ksZ0JBQWdCO0VBQ1Ysc0IvRUt3QztFK0VKeEMsY0FBYztFQUNkLFcvRUltQztFK0VIbkMsZS9FR21DO0UrRUZuQyxjQUFjO0VsRnpDckIsbUNBQW1DO0VBQ25DLGtDQUFrQztBbkZtcWdDdEM7O0FxS2xxZ0NDO0VBZ0RHLGdCQUFnQjtBcktzbmdDcEI7O0FxS3RxZ0NDO0VBc0RFLHFCQUF1RDtBcktvbmdDMUQ7O0FxSzFxZ0NDO0VBMkRFLGdCaEY0MEJrQztFZ0YzMEJsQyxzQmhGM0RlO0VnRjREZixzQ2hGbERlO0VnRm1EZixhQUFhO0VBQ2IsY0FBYztFeEpuRGIscUN3RTJNaUM7RXhFMU1qQyxvQ3dFME1pQztBckY2OS9CckM7O0FxSy9tZ0NDO0VBRUUsa0IvRUE2QztBdEZpbmdDaEQ7O0FxS3ZtZ0NDO0VBQ0Msa0JBQWtCO0VBQ2xCLGFBQWE7RUFDYixpQkFBOEI7RUFDOUIsYWhGMG1CNkI7RWdGem1CN0IsaUIvRWQ2QztFK0VlN0MsY0FBYztBckswbWdDaEI7O0FxS2huZ0NDO0VBVUUsb0JoRjhrQnFDO0VnRjdrQnJDLGtCaEZ5S3VEO0VnRnhLdkQsbUJoRnVMZ0M7RWdGdExoQyx5QkFBeUI7RUFDekIsZ0JoRjhLNkI7QXJGNDcvQmhDOztBcUt4bmdDQztFQW1CSSxrQkFBNEM7QXJLeW1nQ2pEOztBcUtsbWdDQztFQUNJLGdCQUFnQjtFQUNoQixzQi9FckU4QztFK0VzRTlDLHFCQUFxQjtFQUNyQixrQkFBa0I7RUFDbEIsUUFBUTtFQUNSLGVoRmdSbUM7RWdGL1FuQyxXL0V6RXlDO0UrRTBFekMsaUJBQWlCO0VBQ2pCLG1CQUFpQztFQUNqQyxlL0U1RXlDO0UrRTZFekMsY0FBYztFQUNkLGNBQWM7RUFDZCw4Q0FBc0M7VUFBdEMsc0NBQXNDO0VsRjFIdkMsbUNBQW1DO0VBQ25DLGtDQUFrQztBbkZndWdDdEM7O0FxS2xtZ0NDOzs7O0VBS0ksY0FBYztFeEovR2YseUJ3SmdIOEI7RXhKL0c5Qiw0QndKK0c4QjtBcktxbWdDbEM7O0FxS3psZ0NDO0VBQ0Msa0JBQWtCO0VBQ2xCLHFCQUFxQjtFQUNyQixnQmhGeUg4QjtFZ0Z4SDlCLGtCQUFrQjtFQUNsQixtQkFBbUI7RUFDbkIsc0JBQXNCO0VBQ3RCLHlCQUFpQjtLQUFqQixzQkFBaUI7TUFBakIscUJBQWlCO1VBQWpCLGlCQUFpQjtFQUNqQixlQUFlO0VBQ2YseUJoRnRKbUI7RWdGdUpuQixzQmhGcEpnQjtFZ0ZxSmhCLFdoRmhKZ0I7RUlxQ2QsMkJKa1ZvQztFSWpWcEMsb0JKbU5rQztFSWxObEMsbUJKaU8rQjtFeEU3Ui9CLHdCd0VrT2lDO0U5RGpPL0IscUk4RGdja0o7QXJGcTAvQnhKOztBdUJod2dDSTtFOElvSkg7STlJbkpLLGdCQUFnQjtFdkJvd2dDcEI7QUFDRjs7QXFLbG5nQ0M7RUFpQkUsVUFBVTtBcktxbWdDYjs7QXFLdG5nQ0M7RUF5QkcsV2hGOUpjO0VnRitKZCx5QmhGdEtpQjtFZ0Z1S2pCLGtCaEZyS2M7QXJGc3dnQ2xCOztBcUs1bmdDQztFQWlDRSxlL0UxRjhDO0UrRTJGOUMsYWhGMFBtQztFZ0Z6UG5DLGdCQUFnQjtBcksrbGdDbkI7O0FxS2xvZ0NDO0VBMENHLFdoRnhMYztFZ0Z5TGQsb0RoRjRRc0U7QXJGZzEvQjFFOztBcUt2b2dDQztFQThDRyxvRGhGeVFzRTtBckZvMS9CMUU7O0FxSzNvZ0NDO0VBb0RFLDZCQUE2QjtFQUM3Qix5QkFBeUI7QXJLMmxnQzVCOztBUS94Z0NFO0U2SndNRSxjaEZoRCtDO0FyRjJvZ0NuRDs7QXFLcHBnQ0M7RUFnRUcsZ0JBQWdCO0FyS3dsZ0NwQjs7QXFLeHBnQ0M7RUFzRUUsU0FBUztFQUNULFVBQVU7QXJLc2xnQ2I7O0FxSzdwZ0NDO0VBNEVFLHFCQUFxQjtFQUNyQixlaEZyR3FCO0FyRjByZ0N4Qjs7QXFLM2tnQ0M7RUFDSSxvQkFBb0I7RUFDcEIsd0JBQXNHO0VBQ3RHLHlCQUF1RztFQUN2RyxnQkFBZ0I7QXJLOGtnQ3JCOztBcUtsbGdDQztFQVFLLGtCQUFrQjtFQUNsQixTQUFTO0VBQ1QsUUFBUTtFQUNSLGNBQWM7RUFDZCxnQ0FBZ0M7QXJLOGtnQ3RDOztBcUsxbGdDQzs7RUFtQkssYUFBYTtBcks0a2dDbkI7O0FxS2xrZ0NDO0VBQ0MscUJBQXFCO0VBQ3JCLHNCQUFzQjtFQUN0QixrQkFBa0I7QXJLcWtnQ3BCOztBcUt4a2dDQztFQU9FLGdCQUFnQjtFQUNoQixpQmhGeEQ0QjtFZ0Z5RDVCLFdBQVc7QXJLcWtnQ2Q7O0FxSzlrZ0NDOzs7O0VBZUUsY0FBYztBcktza2dDakI7O0FxS3JsZ0NDOzs7O0V4SmhQRyxpQ3dFb01pQztFeEVuTWpDLG9Dd0VtTWlDO0FyRnlvZ0NyQzs7QXFLN2xnQ0M7RXhKOVBHLGtDd0VrTmlDO0V4RWpOakMscUN3RWlOaUM7QXJGOG9nQ3JDOztBcUtua2dDQztFQUlFLHlCaEZuU2tCO0VnRm9TbEIsV2hGN1JlO0VnRjhSZixrQmhGblNlO0FyRnMyZ0NsQjs7QXFLemtnQ0M7RUFVRyxvRGhGMkpzRTtBckZ3Ni9CMUU7O0FxSzdrZ0NDO0VBZ0JFLG9CQUFvQjtBcktpa2dDdkI7O0FxS3ZqZ0NDO0VBQ0MsZ0IvRXBQNkM7RStFcVA3QyxrQi9Fa0MyQztBdEZ3aGdDN0M7O0FxSzVqZ0NDO0VBTUUsYUFBYTtFQUNiLHNCaEZsVWU7RWdGbVVmLHFDaEZ6VGU7RWdGMFRmLHdCQUFrQztFeEpoVmpDLHdCd0VrT2lDO0VtQnZOL0IsK0NuQldZO0FyRnMzZ0NsQjs7QXFLdGpnQ0U7RUFDQyxZQUFZO0FyS3lqZ0NmOztBcUt6a2dDQztFOUl0VUssaUMrRHVEeUM7QXRGNDFnQy9DOztBdUI5NGdDSTtFOElpVUg7STlJaFVLLGdCQUFnQjtFdkJrNWdDcEI7QUFDRjs7QXFLbmxnQ0M7RUE4QkUsa0JBQWtCO0FyS3lqZ0NyQjs7QXFLdmxnQ0M7RUFtQ0UsYUFBYTtFQUNiLHVCQUF1QjtFQUN2QixtQkFBbUI7RUFDYix1QkFBc0M7RUFDdEMsMEJBQXlDO0VBQy9DLG9CaEZsRXNEO0VnRm1FdEQsc0JBQXVGO0VBQ3ZGLHVCQUF3RjtBckt3amdDM0Y7O0FxS2xtZ0NDO0VBOENHLGdCaEY5RjRCO0FyRnNwZ0NoQzs7QXFLdG1nQ0M7RUFtREcsY0FBYztFQUNkLFdoRnpXYztFZ0YwV2QsdUJBQXNDO0FyS3VqZ0MxQzs7QXFLNW1nQ0M7RUEwREcsVUFBVTtFQUNWLGtCaEZzSXlGO0VnRnJJekYsa0JoRm5YYztFZ0ZvWGQsT0FBTztBcktzamdDWDs7QXFLbm5nQ0M7RUFpRUksb0JoRjFIaUM7RWdGMkhqQyxnQmhGbkgyQjtFZ0ZvSDNCLFdoRnJYYTtBckYyNmdDbEI7O0FxS3puZ0NDOztFQStFRSxrQkFBa0I7RUFDbEIsUUFBUTtFQUNSLHNCQUE4RDtFQUM5RCxjQUFjO0VBQ2QsV2hGclllO0VnRnNZZixrQmhGaEJzQztFZ0ZpQnRDLGVBQWU7RXhKNVpkLHdCd0VrT2lDO0FyRjB1Z0NyQzs7QXFLcm9nQ0M7O0VBMEZHLHNCL0U5VytDO0UrRStXL0MsY0FBYztFQUNkLGUvRS9XMEM7RStFZ1gxQyxXL0VoWDBDO0UrRWlYMUMsa0JBQWtCO0VsRjVabEIsbUNBQW1DO0VBQ25DLGtDQUFrQztBbkY2OGdDdEM7O0FxS2hwZ0NDOztFQW9HRyxhQUFhO0FyS2lqZ0NqQjs7QXFLcnBnQ0M7RUEwR0UsT0FBTztBcksraWdDVjs7QXFLenBnQ0M7RUErR2EsZ0JBQWdCO0FySzhpZ0M5Qjs7QXFLN3BnQ0M7RUF5SEUsUUFBUTtBckt3aWdDWDs7QXFLanFnQ0M7RUE4SGEsZ0JBQWdCO0FyS3VpZ0M5Qjs7QXFLcnFnQ0M7O0VBeUlFLFdoRjNiZTtFZ0Y0YmYseUJoRm5ja0I7QXJGbytnQ3JCOztBcUszcWdDQztFQW1KRSxXQUFXO0VBQ1gseUJBQXlCO0VBQ3pCLFNBQVM7QXJLNGhnQ1o7O0FxS2pyZ0NDO0VBeUpHLGtCQUFrQjtFQUNsQixnQmhGM000QjtFZ0Y0TTVCLHNCL0V2SHlDO0UrRXdIekMseUJoRnhGcUM7RWdGeUZyQyxrQmhGcE5zRDtFZ0ZxTnRELFdoRm5kYztBckYrK2dDbEI7O0FxSzFyZ0NDO0VBbUtHLGtCQUFrQjtBcksyaGdDdEI7O0FxSzlyZ0NDOztFQXdLSSxjQUFjO0VBQ2Qsa0JBQWtCO0VBQ2xCLHFCQUFxQjtFQUNyQixxQkFBbUU7RUFDbkUsV2hGOWRhO0VnRitkYixrQmhGekdvQztFeEUzWXJDLHdCd0VrT2lDO0FyRjh5Z0NyQzs7QXFLenNnQ0M7RUFtTEksV2hGcmVhO0VnRnNlYix5QmhGN2VnQjtBckZ1Z2hDckI7O0FxSzlzZ0NDOztFQTJMSyxXaEZoZlk7RWdGaWZaLDZCL0UxSXlDO0F0RmtxZ0MvQzs7QXFLcHRnQ0M7RUFrTUkscUJBQW1FO0VBQ25FLGtCaEYvSG9DO0VnRmdJcEMsV2hGemZhO0FyRitnaENsQjs7QXFLMXRnQ0M7RUF5TUksV2hGcGdCYTtFZ0ZxZ0JiLHlCakY1Wm1CO0FwRmk3Z0N4Qjs7QXFLL3RnQ0M7RUErTUksV2hGamdCYTtFZ0ZrZ0JiLHlCaEZ6Z0JnQjtBckY2aGhDckI7O0FxS3B1Z0NDO0VBb05LLFdBQVc7RUFDWCxrQkFBa0I7RUFDbEIsZUFBbUM7RUFDbkMsaUJBQXFDO0VBQ3JDLG1DQUFpRjtFQUNqRix3Q0FBdUQ7RXRFbGlCM0QsUXNFbWlCbUI7RXRFbGlCbkIsU3NFa2lCbUI7QXJLcWhnQ3JCOztBcUsvdWdDQztFQWtPSSxXaEZ2aEJhO0FyRndpaENsQjs7QXFLbnZnQ0M7RUF3T0csZ0JBQWdCO0FySytnZ0NwQjs7QXFLdnZnQ0M7RUE4T0Usc0JBQXFCO0FySzZnZ0N4Qjs7QXFLeGdnQ0M7RUFDQyxhQUFhO0VBQ2IsOEJBQThCO0VBQzlCLHNCL0VsTjJDO0F0RjZ0Z0M3Qzs7QXFLNXZnQ0c7RUEyUEQsZUFBZTtFQUNmLGdCQUFnQjtBcktxZ2dDbEI7O0FxS2pnZ0NDO0VBQ0Msa0JBQWtCO0VBQ2xCLFFBQVE7RUFDUixVQUFVO0VBQ1YsVUFBVTtFQUNWLFlBQVk7RUFDWixlQUFlO0FyS29nZ0NqQjs7QXFLaGdnQ0M7RUFDQyxXQUFXO0VBQ1gsV0FBVztBckttZ2dDYjs7QXFLLy8vQkM7RUFFRSxXQUFXO0FyS2lnZ0NkOztBcUtuZ2dDQztFQU1HLHVCL0V2UHlDO0F0Rnd2Z0M3Qzs7QXFLNy8vQkM7RUFDQyxVQUFVO0FyS2dnZ0NaOztBcUs5Ly9CQztFQUNDLFlBQVk7QXJLaWdnQ2Q7O0FxSy8vL0JDO0VBQ0MsVUFBVTtBcktrZ2dDWjs7QXFLei8vQkM7RUFDQyxlQUFlO0VBQ2YsTUFBTTtFQUNOO0VBQ0EsT0FBTztFQUNQLHNCaEYvbUJnQjtFZ0ZnbkJoQiw0QkFBNEI7RUFDNUIsb0NoRnZtQmdCO0VnRndtQmhCLGFoRmdGNkI7RWdGL0U3QixhQUFhO0VBQ2IsZ0JBQWdCO0VBQ2hCLFVBQVU7RXhKam9CUixzQndFbU8rQjtFbUJ4TjdCLCtDbkJXWTtBckZ5bWhDbEI7O0FpQjNqaENJO0VvSmtqQkg7SUFpQkUscUJBQW9CO0VySzYvL0JyQjtBQUNGOztBcUtwLy9CQztFQUNDLGFBQWE7RUFDYixtQkFBbUI7RUFDbkIsOEJBQThCO0VBQzlCLGdCaEZpWHlDO0VnRmhYekMsaUJBQWlCO0FyS3UvL0JuQjs7QXFLcC8vQkU7RUFDQyxZQUFZO0FyS3UvL0JmOztBcUtsLy9CQztFQUNDLGNBQWM7RUFDZCxvQmhGcFh1RDtFZ0ZxWHZELG1CaEZyWWlDO0FyRjAzZ0NuQzs7QXFLai8vQkM7RUFDQyxpQkFBaUI7RUFDakIsNkJBQTZCO0VBQzdCLFVBQVU7RUFDVixTQUFTO0VBQ1QsWUFBWTtFQUNaLGNBQWM7QXJLby8vQmhCOztBcUsxLy9CQztFQVVFLGdCQUFnQjtFQUNoQixzQi9FOW5CZ0Q7RStFK25CaEQsY0FBYztFQUNkLGdCaEZyYW1DO0VnRnNhbkMsb0JoRnRhbUM7RWdGdWFuQyxjQUFjO0VsRjVxQmIsbUNBQW1DO0VBQ25DLGtDQUFrQztBbkZpcWhDdEM7O0FxS3JnZ0NDO0VBc0JFLHdDQUF3QztFQUN4QyxnQkFBZ0I7QXJLbS8vQm5COztBcUt6Ky9CQztFQUNDLGtCQUFrQjtFQUNsQixjQUFjO0VBQ2QsZ0JoRndTeUM7QXJGb3MvQjNDOztBcUsvKy9CQzs7RUFRRSxnQkFBZ0I7QXJLNCsvQm5COztBcUt2Ky9CQztFQUNDLGFBQWE7RUFDYixtQkFBbUI7RUFDbkIseUJBQXlCO0VBQ3pCLGdCaEYwUnlDO0VnRnpSekMsY0FBYztBckswKy9CaEI7O0FxSy8rL0JDO0VBU0UscUJoRjNsQnFCO0FyRnFraEN4Qjs7QXFLaCsvQkM7RUFDQyxnQkFBZ0I7RUFDaEIsaUJBQThCO0VBQzlCLFNBQVM7RUFDVCxjQUFjO0VBQ2QsYUFBYTtFQUNiLG1CaEY3RTBDO0VnRjhFMUMsbUJBQW1CO0VBQ25CLHNCaEZudUJnQjtFZ0ZvdUJoQixxQ2hGMXRCZ0I7RWdGMnRCaEIsYWhGdkM2QjtFeEUxc0IzQix3QndFa09pQztFbUJ2Ti9CLCtDbkJXWTtBckZnc2hDbEI7O0FxSy8rL0JDO0VBZ0JFLGtCQUFrQjtFQUNsQiwwQkFBd0U7QXJLbSsvQjNFOztBcUtwLy9CQztFQXNCRSxTQUFTO0VBQ1Qsa0JBQWtCO0FyS2srL0JyQjs7QXFLei8vQkM7RUEyQkcsa0JoRjlFb0M7QXJGZ2pnQ3hDOztBcUs3Ly9CQztFQWlDRSxrQkFBa0I7RUFDbEIsYUFBYTtFQUNiLHVCQUF1QjtFQUN2QixlQUFlO0VBQ2Ysb0JoRnhGcUM7RWdGeUZyQyxVQUFVO0VBQ1YsV2hGenZCZTtFZ0YwdkJmLGdCQUFnQjtFOUk5d0JiLGlDK0R1RHlDO0F0RndyaEMvQzs7QXVCMXVoQ0k7RThJaXVCSDtJOUlodUJLLGdCQUFnQjtFdkI4dWhDcEI7QUFDRjs7QXFLL2dnQ0M7RUE2Q1ksa0JBQWtCO0VBQ2xCLFFBQVE7RUFDUixtQkFBaUM7RUFDakMsV2hGbkcyQjtBckZ5a2dDeEM7O0FxS3RoZ0NDO0VBb0RpQixnQkFBZ0I7RUFLcEIsc0IvRTd1QnFDO0UrRTh1QnJDLGUvRTd1QmdDO0UrRTh1QmhDLGNBQWM7RWxGenhCeEIsbUNBQW1DO0VBQ25DLGtDQUFrQztBbkY0dmhDdEM7O0FxSy9oZ0NDO0VBbUVFLGFBQWE7RUFDYix1QkFBdUI7RUFDdkIsb0JoRnhIcUM7RWdGeUhyQyxrQmhGN2hCdUQ7RWdGOGhCdkQsbUJoRi9nQmdDO0VnRmdoQmhDLHlCQUF5QjtFQUN6QixXaEY5eEJlO0VnRit4QlosbUJBQXFDO0VBQ3JDLHNCQUF3QztBcktnKy9COUM7O0FxSzNpZ0NDO0VBK0VTLGFBQWE7RUFDYix5QmhGN0hpQztBckY2bGdDM0M7O0FxS2hqZ0NDOztFQXFGUSxrQmhGM0ppQztBckYybmdDMUM7O0FxS3JqZ0NDOztFQTRGUyxNQUFNO0VBQ04sc0JBQTJEO0VBQ2pFLGtCaEZqSm9DO0FyRittZ0N4Qzs7QXFLNWpnQ0M7RUFvR0UsZ0JBQWtDO0VBQ2xDLFNBQVM7RUFDVCxZQUFZO0VBQ1osZ0JBQWdCO0VBQ2hCLDBCaEYvekJlO0FyRjJ4aENsQjs7QXFLcGtnQ0M7RUE4R1MsV2hGbjBCUTtFZ0ZvMEJSLDZCQUE2QjtFQUM3QixlL0V0dkJ1QztBdEZndGhDakQ7O0FxSzFrZ0NDOztFQXVISyxXaEZ6MEJZO0VnRjAwQloseUJoRmoxQmU7QXJGeXloQ3JCOztBcUs5OC9CQztFQUNDLGFBQWE7RUFDYixnQmhGaU15QztFZ0ZoTXpDLGdCQUFnQjtFQUNoQixxQmhGZ015RDtFZ0YvTHpELHNCaEYvMUJnQjtFeEVmZCx3QndFa09pQztFbUJ2Ti9CLDBEbkJXWTtBckYyeWhDbEI7O0FxSzc4L0JDO0VBQ0MsYUFBYTtFQUNiLHNCQUFzQjtFQUN0Qix1QkFBdUI7RUFDdkIsV2hGNTJCZ0I7RWdGNjJCaEIsa0JBQWtCO0VBQ2xCLHlCakYvMkJ5QjtFaUZnM0J6QixrQ2hGaUx5QztFOUQzaUNyQywyQjhEbWpDMkM7QXJGd3gvQmpEOztBdUJ0MGhDSTtFOEk4MkJIO0k5STcyQkssZ0JBQWdCO0V2QjAwaENwQjtBQUNGOztBcUtuOS9CRTtFNUl6MUJBLHFNQUE2STtBekJnemhDL0k7O0FxS2w5L0JFO0VBQ0MsMERoRjhLa0Q7VWdGOUtsRCxrRGhGOEtrRDtBckZ1eS9CckQ7O0FxS2o5L0JFO0VBQ0Msc0JBQXNCO0FyS285L0J6Qjs7QXFLMTgvQkM7RUFDQyxVQUFVO0VBQ1YsU0FBUztFQUNULGtCQUFrQjtFQUNsQixNQUFNO0VBQ047RUFDQSxPQUFPO0VBQ1AsYUFBYTtBcks2OC9CZjs7QXFLcDkvQkM7RUFXRSxpQmhGalFzQztFZ0ZrUXRDLGdCQUFnQjtFQUNoQixrQkFBa0I7QXJLNjgvQnJCOztBcUsxOS9CQztFQWlCRyxrQmhGcnBCc0Q7RWdGc3BCdEQsZ0JoRi9vQjRCO0VnRmdwQjVCLG1CaEZ4b0IrQjtFZ0Z5b0IvQixvQmhGcFBvQztFZ0ZxUHBDLHlCQUF5QjtFQUN6QixZQUFZO0VBQ1osU0FBUztBcks2OC9CYjs7QXFLcCsvQkM7RUE0Qkssa0JBQTRDO0FySzQ4L0JsRDs7QXFLcDgvQkM7RUFDQyxjQUFjO0FyS3U4L0JoQjs7QXFLbjgvQkM7RUFDQyxxQkFBcUI7RUFDckIsZ0JBQWdCO0VBQ2hCLFVBQVU7QXJLczgvQlo7O0FxS3o4L0JDO0VBT0UscUJBQXFCO0VBQ3JCLGtCQUFrQjtFQUNsQixzQmhGMTdCZTtFZ0YyN0JmLHNCaEZ2N0JlO0VnRnc3QmYsZUFBZTtFeEp4OEJkLHdCd0VrT2lDO0FyRjZxaENyQzs7QXFLbDkvQkM7RUFlRSwyQmhGaGtCcUM7RWdGaWtCckMsc0JBQXlEO0FyS3U4L0I1RDs7QVF6NGhDRTtFNkp1OEJDLG1EL0VoN0I2RTtBdEZzM2hDaEY7O0FRNzRoQ0U7RTZKNjhCRSxzQmhGNThCYztBckZnNWhDbEI7O0FxSy85L0JDO0VBaUNRLGdCQUFnQjtFQUNoQixzQi9FNTZCMEM7RStFNjZCMUMscUJBQXFCO0VBQ3JCLGtCQUFrQjtFQUNsQixRQUFRO0VBQ1IsZWhGdmxCK0I7RWdGd2xCL0IsaUJBQWlCO0VBQ2pCLG1CQUFpQztFQUNqQyxlL0VsN0JxQztFK0VtN0JyQyxjQUFjO0VBQ2QsY0FBYztFbEYvOUJuQixtQ0FBbUM7RUFDbkMsa0NBQWtDO0FuRms2aEN0Qzs7QXFLLysvQkM7RUFpREUsY0FBYztFQUNkLG9CQUFvQjtFMUZoL0JyQixnQkFBZ0I7RUFDaEIsdUJBQXVCO0VBQ3ZCLG1CQUFtQjtBM0VtN2hDckI7O0FxS3YvL0JDO0VBd0RFLG1EL0VuOUI2RTtBdEZzNWhDaEY7O0FxSzk3L0JDO0VBQ0ksZS9FMTVCNEM7RStFMjVCNUMseUJoRi8rQmdCO0FyRmc3aENyQjs7QVFsN2hDRTtFNkpxL0JDLGdCQUFnQjtBcktpOC9CbkI7O0FxS3Y3L0JDO0VBR0csdUJoRnJuQmdDO0VnRnNuQmhDLG1CQUE0RDtFQUM1RCxtQmhGaHdCc0Q7RWdGaXdCdEQsbUJoRmx2QitCO0FyRjBxaENuQzs7QXFLbDcvQkM7RUFHRywwQmhGcm9CbUM7RWdGc29CbkMscUJBQTREO0VBQzVELGtCaEYzd0JzRDtFZ0Y0d0J0RCxtQmhGN3ZCK0I7QXJGZ3JoQ25DOztBcUt6Ni9CQztFQUlFLHFCQUFxQjtFQUNyQixrQmhGdlhxQztFZ0Z3WHJDLHNDaEZ6d0I2RDtFZ0Ywd0I3RCxXQUFXO0V0RS9pQ1osaUJWcVM4RDtFVXBTOUQsa0JWb1M4RDtFeEVuUzVELHdCd0VrT2lDO0FyRnV2aENyQzs7QXFLbjcvQkM7RUFjRSwyREFBMkQ7QXJLeTYvQjlEOztBcUt2Ny9CQztFQWlCRSw0REFBNEQ7QXJLMDYvQi9EOztBcUszNy9CQztFQW9CRSw0REFBNEQ7QXJLMjYvQi9EOztBcUsvNy9CQztFQXVCRSx5REFBeUQ7QXJLNDYvQjVEOztBcUtuOC9CQztFQTBCRSw0REFBNEQ7QXJLNjYvQi9EOztBcUtwNi9CQztFQUNDLGtCQUFrQjtFQUNsQixnQkFBZ0I7RUFDYixzQmhGN2pDYTtFeEVmZCxvQndFcU82QjtFbUIxTjNCLDhDbkJXWTtBckYrOWhDbEI7O0FxSzU2L0JDO0VBU0Usa0JBQWtCO0VBQ2xCLFVBQVU7RUFDVixlQUFlO0VBQ2Ysc0JoRnprQ2U7RWdGMGtDWixzQmhGcmtDWTtFZ0Zza0NmLFVBQVU7RXRFemxDWCxlc0UwbENvQztFdEV6bENwQyxnQnNFeWxDb0M7RXhKeGxDbEMsb0J3RXFPNkI7RTlEcE8zQiw4QytEdUR5QztBdEYwOGhDL0M7O0F1QjUvaENJO0U4SW1rQ0g7STlJbGtDSyxnQkFBZ0I7RXZCZ2dpQ3BCO0FBQ0Y7O0FxSy83L0JDO0VBc0JHLHlCaEZsbENpQjtBckYrL2hDckI7O0FxS244L0JDO0VBMEJhLHNCaEYva0NJO0FyRjQvaENsQjs7QXFLdjgvQkM7RUFnQ1MsV0FBVztFQUNYLHFCQUFxQjtFQUNyQixrQkFBa0I7RUFDbEIsUUFBUTtFQUNSLFNBQVM7RUFDVCxzQkFBZ0M7RUFDaEMsdUJBQWlDO0VBQ2pDLHNCaEYzbENRO0VVdkJoQixlVG1uQjZDO0VTbG5CN0MsZ0JUa25CNkM7RXpFam5CM0Msb0J3RXFPNkI7RTlEcE8zQiw4QytEdUR5QztBdEZ1K2hDL0M7O0F1QnpoaUNJO0U4SW1rQ0g7STlJbGtDSyxnQkFBZ0I7RXZCNmhpQ3BCO0FBQ0Y7O0FxSzU5L0JDO0VBZ0RFLGtCQUFrQjtFQUNsQixVQUFVO0VBQ1YsY0FBYztFQUNkLHlCakZwOUJzQjtFdkV4S3JCLG9Cd0VxTzZCO0FyRncwaENqQzs7QXFLcCsvQkM7RUF5REUsYS9FcGhCd0M7QXRGbThnQzNDOztBcUt4Ky9CQztFQTZERyxlL0VyaUM2QztBdEZvOWhDakQ7O0FxS3A2L0JDO0VBQ0MsZ0IvRWppQjZDO0F0Rnc4Z0MvQzs7QXFLeDYvQkM7RUFLUSxjQUFtRDtFQUNuRDtFQUNBLHVCQUFtQztBckt1Ni9CNUM7O0FxSzk2L0JDO0VBWUUsTUFBTTtFQUNOLFlBQVk7QXJLczYvQmY7O0FxS243L0JDO0VBZ0JFLE9BQU87QXJLdTYvQlY7O0FxS3Y3L0JDO0VBbUJFLFFBQVE7QXJLdzYvQlg7O0FxS242L0JDO0VBQ0MsZS9FempCNkM7RStFMGpCN0MsYUFBYTtFQUNiLHFCQUFxQjtFQUNyQixrQmhGM2lDc0I7QXJGaTloQ3hCOztBcUsxNi9CQztFQVFRLGVBQW9EO0VBQ3BELHlCQUFxQztBcktzNi9COUM7O0FxSy82L0JDO0VBY0UsT0FBTztFQUNQLFdBQVc7QXJLcTYvQmQ7O0FxS3A3L0JDO0VBa0JFLFNBQVM7QXJLczYvQlo7O0FxS3g3L0JDO0VBcUJFLE1BQU07QXJLdTYvQlQ7O0FxSzc1L0JDO0VBS0csc0JoRmpzQ2M7RTlEWFoscUMrRHVEeUM7QXRGa2ppQy9DOztBdUJwbWlDSTtFOElrc0NIO0k5SWpzQ0ssZ0JBQWdCO0V2QndtaUNwQjtBQUNGOztBcUt4Ni9CQztFQVlHLHNCaEZ4c0NjO0VnRnlzQ2QsYUFBYTtBcktnNi9CakI7O0FxSzE1L0JDO0VBQ0MsYUFBYTtBcks2NS9CZjs7QXFLcDUvQkM7RXRFdnVDQyxhc0UydUN1QztFdEUxdUN2Qyxjc0UwdUN1QztBcktxNS9CekM7O0FxS3o1L0JDO0VBUUcsb0JBQW1DO0VBQ25DLHFCQUFvQztFdEVodkN0QyxhVG9uQmdFO0VTbm5CaEUsY1RtbkJnRTtBdEZtaGhDbEU7O0FxS2g2L0JDO0VBZ0JFLGMvRW5vQitEO0F0RnVoaENsRTs7QXFLcDYvQkM7RUFtQlMsWUFBeUQ7RUFDekQ7RUFDQSxxQkFBc0M7QXJLcTUvQmhEOztBcUsxNi9CQztFQTJCRSxhL0U5b0IrRDtBdEZpaWhDbEU7O0FxSzk2L0JDO0VBOEJTLGFBQTBEO0VBQzFELHVCQUF3QztBcktvNS9CbEQ7O0FxSzk0L0JDO0V0RTV3Q0MsY3NFZ3hDdUM7RXRFL3dDdkMsZXNFK3dDdUM7QXJLKzQvQnpDOztBcUtuNS9CQztFQVFHLHFCQUFtQztFQUNuQyxzQkFBb0M7RXRFcnhDdEMsY1RxbkJnRTtFU3BuQmhFLGVUb25CZ0U7QXRGaWpoQ2xFOztBcUsxNS9CQztFQWdCRSxlL0V2cUIrRDtBdEZxamhDbEU7O0FxSzk1L0JDO0VBbUJTLGFBQXlEO0VBQ3pEO0VBQ0Esc0JBQXNDO0FySys0L0JoRDs7QXFLcDYvQkM7RUEyQkUsYy9FbHJCK0Q7QXRGK2poQ2xFOztBcUt4Ni9CQztFQThCUyxjQUEwRDtFQUMxRCx3QkFBd0M7QXJLODQvQmxEOztBcUtwNC9CQzs7RUFFQyx5QmpGMXlDeUI7RWlGMnlDekIscUJqRjN5Q3lCO0FwRmtyaUMzQjs7QXFLcjQvQkM7O0VBRUMseUJqRnJ5Q3dCO0VpRnN5Q3hCLHFCakZ0eUN3QjtBcEY4cWlDMUI7O0FxS3Q0L0JDOztFQUVDLHlCakZoeUN5QjtFaUZpeUN6QixxQmpGanlDeUI7QXBGMHFpQzNCOztBcUt2NC9CQzs7RUFFQyx5QmpGNXhDeUI7RWlGNnhDekIscUJqRjd4Q3lCO0FwRnVxaUMzQjs7QXFLeDQvQkM7O0VBRUMseUJqRnR4Q3NCO0VpRnV4Q3RCLHFCakZ2eENzQjtBcEZrcWlDeEI7O0FxS2w0L0JDO0VBQ0Msa0JBQWtCO0VBQ2xCLGFBQWE7RUFDVixXQUFXO0FyS3E0L0JoQjs7QXFLajQvQkM7RUFDQyxlQUFlO0V4SjMwQ2IsMEJ3SjQwQzRCO0V4SjMwQzVCLDZCd0oyMEM0QjtBcktxNC9CaEM7O0FxSzUzL0JDO0VBQ0MsYUFBYTtFQUNiLG1CQUFtQjtFeEp2MkNqQixnQndKdzJDc0I7QXJLKzMvQjFCOztBcUtsNC9CQztFQU9RLHNCL0V6ekMwQztFK0UwekMxQyxrQkFBa0I7RUFDbEIsU0FBUztFQUNULFFBQVE7RUFDUixXL0U1ekNxQztFK0U2ekNyQyxlL0U3ekNxQztFK0U4ekNyQyxjQUFjO0VBQ2QsY0FBYztFQUNkLGdDQUFnQztFbEYzMkNyQyxtQ0FBbUM7RUFDbkMsa0NBQWtDO0FuRjJ1aUN0Qzs7QXFLaDUvQkM7RXhKcjFDRyxrQ3dFa05pQztFeEVqTmpDLHFDd0VpTmlDO0FyRndoaUNyQzs7QXFLcjUvQkM7RUEwQkUsYUFBYTtBcksrMy9CaEI7O0FxS3o1L0JDO0VBK0JFLGNBQWM7QXJLODMvQmpCOztBcUt6My9CQztFQUVFLGdCQUFnQjtBcksyMy9CbkI7O0FxS3QzL0JDO0VBRUUsZ0JBQWdCO0FyS3czL0JuQjs7QXFLLzIvQkM7RUFDQyxrQkFBa0I7QXJLazMvQnBCOztBcUtuMy9CQztFQUtFLGFBQWE7RUFDVixlQUFlO0VBQ2xCLHNCaEZyeUNnQjtFZ0ZzeUNoQiw2QmhGbjVDZTtBckZxd2lDbEI7O0FxSzEzL0JDO0VBYUUsZ0JBQWdCO0VBQ2hCLGtCQUFrQjtFQUNsQixVQUFVO0VBQ1YsbUJoRjdzQzRCO0FyRjhqaUMvQjs7QXFLajQvQkM7RUFxQkUsa0JBQWtCO0VBQ2xCLGFBQWE7RUFDVix1QkFBdUI7RUFDdkIsdUJBQXVCO0VBQzFCLFdoRm5zQjBDO0VnRm9zQjFDLHlCaEY1dEJpQztFZ0Y2dEJqQyw2QkFBZ0Q7RTlJcjdDN0MsaUMrRHVEeUM7QXRGK3VpQy9DOztBdUJqeWlDSTtFOElxNUNIO0k5SXA1Q0ssZ0JBQWdCO0V2QnF5aUNwQjtBQUNGOztBcUtsNS9CQztFQWdDWSxXQUFXO0VBQ1gsa0JBQWtCO0VBQ2xCLFdoRnpzQitCO0VnRjBzQi9CLFNoRmh1Q2tCO0VnRml1Q2xCLFVoRmp1Q2tCO0VnRmt1Q2xCLFdoRmx1Q2tCO0U5RDdOekIsOEMrRHVEeUM7QXRGK3ZpQy9DOztBdUJqemlDSTtFOElxNUNIO0k5SXA1Q0ssZ0JBQWdCO0V2QnF6aUNwQjtBQUNGOztBcUtsNi9CQztFQTJDUyxNQUFNO0VBQ04sc0JBQTJEO0FySzIzL0JyRTs7QXFLdjYvQkM7O0VBb0RHLFdoRjE3Q2M7QXJGa3ppQ2xCOztBcUs1Ni9CQztFQTJEUyxXaEZqOENRO0VnRms4Q1Isc0JoRjM4Q1E7RWdGNDhDUiw0QmhGNThDUTtBckZpMGlDbEI7O0FxS2w3L0JDO0VBaUVhLHlCakZqOUNhO0FwRnMwaUMzQjs7QXFLdDcvQkM7RUF3RVEsV2hGajlDUztFZ0ZrOUNULDZCQUE2QjtFQUM3Qix5QkFBeUI7RUFDekIsZS9FcjRDd0M7QXRGdXZpQ2pEOztBcUs3Ny9CQztFQWlGRyxrQmhGNTlDYztBckY0MGlDbEI7O0FxS2o4L0JDO0VBdUZFLGNBQWM7QXJLODIvQmpCOztBcUtyMi9CQztFQUNDLGtCQUFrQjtFQUNsQixhaEY3eUI2QjtFZ0Y4eUI3QixnQmhGamxCa0M7RWdGa2xCbEMsdUJoRjVrQm9DO0VnRjZrQnBDLFdoRnAvQ2dCO0VnRnEvQ2hCLGtCQUFrQjtFQUNsQixzQmhGNStDZ0I7RXhFdEJkLHdCd0VrT2lDO0FyRnlvaUNyQzs7QXFLLzEvQkM7RUFDQyxlQUFlO0VBQ2YsTUFBTTtFQUNOO0VBQ0EsT0FBTztFQUNQLGFoRnAwQjZCO0VnRnEwQjdCLHNCaEY1L0NnQjtFZ0Y2L0NoQixZaEZsaEJxQztFVW5nQ3JDLFdzRXNoRGtCO0V0RXJoRGxCLFlzRXFoRGtCO0FyS20yL0JwQjs7QXFLMzEvQkM7RUFDQyxhQUFhO0FySzgxL0JmOztBcUsxMS9CQztFQUNDLFNBQVM7RUFDVCxtQkFBbUI7RUFDbkIsV0FBVztFQUNYLFlBQVk7RUFDWixnQkFBZ0I7RUFDaEIsVUFBVTtFQUNWLGtCQUFrQjtFQUNsQixVQUFVO0FySzYxL0JaOztBcUt6MS9CQztFQUNDLFNBQVM7RUFDVCxVQUFVO0VBQ1YsU0FBUztFQUNULFVBQVU7RUFDVixnQkFBZ0I7QXJLNDEvQmxCOztBeURsNWlDRTtFQUNFLGNBQWM7RUFDZCxXQUFXO0VBQ1gsV0FBVztBekRxNWlDZjs7QXFLejEvQkM7RUFDQyxNQUFNO0VBQ04sT0FBTztFQUNQLGtCQUFrQjtFQUNsQixVQUFVO0V0RWprRFYsV3NFa2tEa0I7RXRFamtEbEIsWXNFaWtEa0I7QXJLNjEvQnBCOztBcUt6MS9CQztFQUNDLGFoRngzQjZCO0FyRm90aEMvQjs7QXNLdDZpQ0E7Ozs7OztpRnRLODZpQ2lGO0FzS2w2aUNoRjs7RUFHRSx1QkFBdUI7RUFDdkIscUJBQXFCO0VBQ3JCLGdCQUFnQjtFQUNoQiw2QkFBNkI7RUFDN0I7RUFDQSxjQUFjO0F0S202aUNqQjs7QXNLajZpQ0c7RUFWRjs7SUFXRyxpQkFBaUI7RXRLczZpQ25CO0FBQ0Y7O0FzS2o2aUNDO0VBTUUsV0FBVztBdEsrNWlDZDs7QXNLcjZpQ0M7RUFlRSxXQUFXO0F0SzA1aUNkOztBc0t6NmlDQztFQXNCRSxXQUFXO0F0S3U1aUNkOztBc0s3NmlDQzs7O0VBK0JFLGNBQWM7RUFDZCxvQ0FBOEI7QXRLbzVpQ2pDOztBc0twN2lDQztFQXNDRSxXQUFXO0F0S2s1aUNkOztBc0t4N2lDQztFQTBDRSxjQUFjO0F0S2s1aUNqQjs7QXNLNTdpQ0M7RUErQ0UsV0FBVztBdEtpNWlDZDs7QXNLaDhpQ0M7RUFtREUsaUJBQWlCO0F0S2k1aUNwQjs7QXNLcDhpQ0M7RUF1REUsWUFBWTtBdEtpNWlDZjs7QXNLNTRpQ0M7RUFDQyxZQUFZO0F0Sys0aUNkOztBc0szNGlDQztFQUNDLGtCQUFrQjtFQUNsQixPQUFPO0VBQ1AsUUFBUTtFQUNSLG1CQUFtQjtFQUNuQixxQ0FBd0I7RUFDeEIsb0JBQW9CO0VBQ3BCLGdCQUFnQjtFQUNoQixvQkFBb0I7QXRLODRpQ3RCOztBc0t0NWlDQztFQVlFLHlCQUF5QjtFQUN6QixrQkFBa0I7RUFDbEIsUUFBUTtFQUNSO0VBQ0EsVUFBVTtFQUNWLFlBQVk7RUFDWixrQkFBa0I7RUFDbEIsZUFBZTtFQUNmLFdqRjNGZTtBckZ5K2lDbEI7O0FzS2w2aUNDO0VBd0JFLHVCQUF1QjtFQUN2QixTQUFTO0VBQ1QsU0FBUztBdEs4NGlDWjs7QXNLejRpQ0M7RUFFRSxrQkFBa0I7RUFDbEIsb0JBQW9CO0VBQ3BCLE1BQU07RUFDTixlQUFlO0VBQ2YsV0FBVztFQUNYLG9CQUFvQjtFQUNwQjtFQUNBLFdBQVc7RUFDWCw0QkFBNEI7RUFDNUI7RUFDQSx5QkFBaUI7S0FBakIsc0JBQWlCO01BQWpCLHFCQUFpQjtVQUFqQixpQkFBaUI7QXRLMjRpQ3BCOztBc0t2NWlDQztFQWVHLG9CQUFvQjtFQUNwQixjQUFjO0VBQ2QsNkJBQTZCO0F0SzQ0aUNqQzs7QXNLNzVpQ0M7RUFvQkksNEJBQTRCO0VBQzVCLFdqRjNIYTtFaUY0SGIsY0FBYztFQUNkO0VBQ0EsbUJBQW1CO0VBQ25CLGlCQUFpQjtFQUNqQjtBdEs2NGlDTDs7QXNLeDRpQ0M7RUFDQyxrQkFBa0I7RUFDbEI7RUFDQSxrQkFBa0I7RUFDbEIseUJBQXlCO0F0SzI0aUMzQjs7QXNLLzRpQ0M7RUFPRSxrQkFBa0I7QXRLNDRpQ3JCOztBc0tuNGlDQztFQUVFLGNBQWM7RUFDZCxrQkFBa0I7RUFDZix5QkFBeUI7RUFLekIsaUZBQXVGO0VBQ3ZGLHdCQUF3QjtFQUN4Qiw4QkFBOEI7RUFDOUI7RUFDSCxvQkFBb0I7RUFDakIsbUNBQThDO0V6SnZKaEQseUJ5SndKNEI7RXpKdko1Qiw0QnlKdUo0QjtFQUM3QjtBdEtzNGlDSDs7QXNLdDVpQ0M7RUFvQkUsa0JBQWtCO0VBQ2xCO0VBQ0Esa0JBQWtCO0F0S3M0aUNyQjs7QXNLNzNpQ0M7RUFDQyxrQkFBa0I7QXRLZzRpQ3BCOztBc0tqNGlDQztFQUlFLHlCQUF5QjtFQUN6QixxQkFBcUI7RUFDckIsa0JBQWtCO0VBQ2xCLE1BQU07RUFDTixpQkFBaUI7RUFDakIsV2pGMUxlO0VpRjJMZiw2QmpGaE1lO0VpRmlNZjtFQUNBLDJCakZsTWU7RWlGbU1mLFFBQVE7RUFDUiw4QmpGY2tDO0VpRmJsQztBdEtpNGlDSDs7QXNLaDVpQ0M7O0VBb0JHLHFCQUFxQjtBdEtpNGlDekI7O0FzS3I1aUNDO0VBeUJHLGVBQWU7QXRLZzRpQ25COztBc0t6NWlDQztFQThCRyxnQkFBZ0I7RUFDaEIsU0FBUztFQUNULGNBQWM7RUFDZCxhQUFhO0VBQ2IsbUJBQW1CO0VBQ25CLGlCQUFpQjtFQUNqQix5QkFBaUI7S0FBakIsc0JBQWlCO01BQWpCLHFCQUFpQjtVQUFqQixpQkFBaUI7QXRLKzNpQ3JCOztBc0tuNmlDQzs7O0VBMkNHLHVCQUF1QjtFQUN2QixvQmpGK0I0RDtFaUY5QjVELFVBQVU7QXRLODNpQ2Q7O0FRdG1qQ0U7Ozs7O0U4SjJPRyxjQUFjO0VBQ2QscUJBQXFCO0F0S200aUMxQjs7QXVLL25qQ0E7Ozs7OztpRnZLdW9qQ2lGO0F1SzNuakM3RTtFQUNJLGtCQUFrQjtFQUNsQixnQkFBZ0I7RUFDaEIsd0JBQXdCO0F2SzZuakNoQzs7QXVLaG9qQ0k7RUFPUTtFQUNBLE9BQU87RUFDUCxrQkFBa0I7RUFDbEIsd0JBQXdCO0F2SzZuakNwQzs7QXVLdm9qQ0k7RUFlUSxXQUFXO0F2SzRuakN2Qjs7QXVLM29qQ0k7RUFtQlksaUJsRm9vQnlCO0VrRm5vQnpCLGdCQUFnQjtBdks0bmpDaEM7O0F1S2hwakNJO0VBNkJZLGVsRmlwQnVCO0FyRnMraEN2Qzs7QXVLcHBqQ0k7RUFrQ1ksYUFBYTtFQUNiO0VBQ0EsVUFBVTtFQUNWLGtCQUFrQjtFQUNsQixNQUFNO0F2S3NuakN0Qjs7QXVLNXBqQ0k7RUE0Q1EsYUFBYTtFQUNiLGtCQUFrQjtFQUNsQixjbkYxQ2U7RTdEVnJCLGlDK0R1RHlDO0F0RmtuakMvQzs7QXVCcHFqQ0k7RWdKQ0E7SWhKQUUsZ0JBQWdCO0V2QndxakNwQjtBQUNGOztBUXJxakNFO0UrSitDYyxjbEZ5R21DO0FyRmloakNuRDs7QXVLN3FqQ0k7RUF3RFksT0FBTztFQUNQLG9CbEZvbkJ3QjtFa0ZubkJ4QixrQkFBa0Y7QXZLeW5qQ2xHOztBdUtucmpDSTs7O0VBd0VZLHNCakY1Qm1DO0VpRjZCbkMsa0JBQWtCO0VBQ2xCLFFBQVE7RUFDUixtQkFBaUM7RUFDakMsZWpGL0I4QjtFaUZnQzlCLGNBQWM7RUFDZCxhQUFhO0VwRjVFekIsbUNBQW1DO0VBQ25DLGtDQUFrQztBbkY4cmpDdEM7O0F1S2pzakNJO0VBcUZRLHFCQUF1RTtBdktnbmpDbkY7O0F1S3JzakNJO0VBMEZnQixnQkFBZ0I7RUFLcEIsV2xGOGtCd0I7QXJGNmhpQ3hDOztBdUsxc2pDSTtFQXFHUSxrQkFBa0I7RUFDbEIsb0JsRnVrQjRCO0VrRnRrQjVCLGNBQWM7RXhFaEh4QixXd0VpSDRCO0V4RWhINUIsWXdFZ0g0QjtBdkswbWpDOUI7O0F1S2x0akNJO0VBNkdnQixnQkFBZ0I7RUFLcEIsVWxGMmpCd0I7QXJGMGlpQ3hDOztBd0tudWpDQTs7Ozs7O2lGeEsydWpDaUY7QXdLL3RqQzdFO0VBQ0ksd0JBQWlDO0F4S2l1akN6Qzs7QXdLOXRqQ0k7RUFFUSxzQkFBaUU7QXhLZ3VqQzdFOztBeUtsdmpDQTs7Ozs7O2lGekswdmpDaUY7QXlLOXVqQ2hGO0VBQ0MsbUVBQW1FO0VBQ25FLHNCQUFzQjtBektndmpDeEI7O0F5S3Z1akNDO0VBSUssd0JBQXdCO0F6S3V1akM5Qjs7QXlLM3VqQ0M7RUFTRSw0QkFBNEI7RWpFaEJ6QixnQmlFaUJxQjtBektzdWpDM0I7O0F5S2p1akNDO0VBSUUsMkJBQTJCO0VqRTFCeEIsZ0JpRTJCcUI7QXpLaXVqQzNCOztBeUt0dWpDQztFQVVFLHdCQUF3QjtBektndWpDM0I7O0EwS2h4akNBOzs7Ozs7aUYxS3d4akNpRjtBMEs1d2pDN0U7RUFDSSwwQkFBMEI7RUFDMUIsb0JBQW9CO0VBQ3BCLHdCQUF3QjtFQUN4QixZQUFZO0ExSzh3akNwQjs7QTBLMXdqQ0k7RUFDSSxnQkFBZ0I7QTFLNndqQ3hCOztBMEt4d2pDSTtFQUNJLFNBQVM7QTFLMndqQ2pCOztBMEt2d2pDSTtFQUNJLHdCQUF3QjtBMUswd2pDaEM7O0EwS3R3akNJO0VBQ0kseUJBQWlCO0tBQWpCLHNCQUFpQjtNQUFqQixxQkFBaUI7VUFBakIsaUJBQWlCO0ExS3l3akN6Qjs7QTBLcndqQ0k7RUFDSSxZQUFZO0ExS3d3akNwQjs7QTBLcHdqQ0k7RUFDSSxXckZ4QlU7RXFGeUJWLGVBQWU7QTFLdXdqQ3ZCOztBUXZ5akNFO0VrS29DVSxXckYxQk07QXJGaXlqQ2xCOztBMkszempDQTs7Ozs7O2lGM0ttMGpDaUY7QTJLdnpqQzdFO0VBQ0ksMkJBQTJCO0VBQzNCLHFCQUFxQjtFQUNyQixrQkFBa0I7QTNLeXpqQzFCOztBMktoempDSTs7RUFFSSxVQUFVO0VBQ1Ysa0JBQWtCO0VwSnJCcEIsZ0NvSnNCZ0U7QTNLbXpqQ3RFOztBdUJwMGpDSTtFb0phQTs7SXBKWkUsZ0JBQWdCO0V2QnkwakNwQjtBQUNGOztBMkt4empDSTtFQUNJLFNBQVM7QTNLMnpqQ2pCOztBMkt6empDSTtFQUNJO0VBQ0EsUUFBUTtBM0s0empDaEI7O0EyS3h6akNJOzs7Ozs7RUFNSSxhckZ1Q3NDO0F0Rm94akM5Qzs7QTJLbHpqQ0k7O0VBRUksc0J0RmpDVTtFc0ZrQ1Ysa0JBQWtCO0VBQ2xCLG9CQUFvQjtFOUpyRHhCLG9Cd0VxTzZCO0FyRnNvakNqQzs7QTJLbnpqQ0k7RUFDSSxjckZtQnlDO0VxRmxCekMsZXJGbUIwQztBdEZteWpDbEQ7O0EyS3B6akNJO0VBQ0ksZXJGZXlDO0VxRmR6QyxnQnJGZTBDO0F0Rnd5akNsRDs7QTJLL3lqQ3dDO0VBL0RwQztJQWlFUSx5QkFBeUI7RTNLa3pqQ25DO0FBQ0Y7O0EySy95akNJO0VBckVBO0lBdUVRLHlCQUF5QjtFM0trempDbkM7QUFDRjs7QTRLdDRqQ0E7Ozs7OztnRjVLODRqQ2dGO0E0S2w0akM1RTtFQUNJLGtCQUFrQjtFQUNsQixxQkFBcUI7RUFDckIsbUJBQW1CO0VBQ25CLFVBQVU7RUFDVixTQUFTO0VBQ1QsZ0JBQWdCO0VBQ2hCLGF2RjhyQnVCO0V1RjdyQnZCLHNCQUFzQjtBNUtvNGpDOUI7O0E0S2o0akNRO0VBQ0ksa0JBQWtCO0VBQ2xCLGVBQWdDO0E1S280akM1Qzs7QWlCajJqQ0k7RTJKaERBO0lBaUJRLG1CQUFtQjtFNUtxNGpDN0I7QUFDRjs7QTRLNTNqQ0k7RUFDSSxrQkFBa0I7QTVLKzNqQzFCOztBNEszM2pDSTtFQUNJLGVBQWU7RUFDZixhdkZtcUJ1QjtBckYydGlDL0I7O0E0S2ozakNROztFQUNJLFlBQTZCO0E1S3EzakN6Qzs7QTRLaDNqQ0k7O0VBRUksZXZGK0RXO0V1RjlEWCxvQ3RGUHVDO0F0RjAzakMvQzs7QTRLdDNqQ0k7O0VBT1Esa0JBQTZFO0E1S28zakN6Rjs7QTRLLzJqQ0k7O0VBRUksY3ZGNEkyQjtBckZzdWpDbkM7O0E0SzEyakNJO0VBQ0ksZ0JBQWdCO0VBQ2hCLFNBQVM7RUFDVCxVQUFVO0E1SzYyakNsQjs7QTRLaDNqQ0k7RUFPUSxjQUFjO0VBQ2Qsa0JBQWtCO0VBQ2xCLGF0RjRlbUM7RXNGM2VuQyxPQUFPO0VBQ1AsUUFBUTtFQUNSLGtCQUFrQjtFQUNsQixvQnZGOEJPO0V1RjdCUCxvQnZGNkJPO0FyRmcxakNuQjs7QTRLMzNqQ0k7RUFrQlksZUFBZTtFQUNmLHdFdkYvRUU7QXJGNDdqQ2xCOztBNEtoNGpDSTtFQTJCZ0IsbUZBQXFDO0E1S3kyakN6RDs7QTRLcDRqQ0k7RUFpQ1ksVUFBVTtFQUNWLGN0RnNka0Y7RXNGcmRsRixldEZxZGtGO0F0Rms1aUNsRzs7QTRLMTRqQ0k7RUF1Q2dCLGdCQUEyQztBNUt1MmpDL0Q7O0E0Szk0akNJO0VBNkNZLHdFdkZ6R0U7QXJGODhqQ2xCOztBNEtsNWpDSTs7OztFQXFEZ0IsYUFBYTtBNUtvMmpDakM7O0E0S3o1akNJO0VBZ0VZLGtCQUFrQjtFQUNsQixZQUF5RDtFQUN6RCxldEZ5YjhCO0F0Rm82aUM5Qzs7QTRLLzVqQ0k7RUF1RVksWUFBNEU7RUFDNUUsV0FBcUQ7QTVLNDFqQ3JFOztBNEtwMWpDWTs7RUFFSSxjQUFjO0VBQ2QsYUFBYTtFQUNiLHVCdkZ6Q0c7RXVGMENILHVCdkYxQ0c7QXJGaTRqQ25COztBNEs1MWpDWTs7RUFTUSxZQUE4QjtBNUt3MWpDbEQ7O0E0S2oyakNZOztFQWNRLFNBQW1EO0E1S3cxakN2RTs7QW1HaGdrQ3dHO0V5RXFMaEcsYXZGK2dCdUI7RXVGOWdCdkIsZUFBZTtFQUNmLHdFdkZ6S1U7QXJGdy9qQ2xCOztBNEtsMWpDSTtFQU9RLGVBQWlDO0E1SyswakM3Qzs7QTRLdDFqQ0k7RUFXWSxrQkFBa0I7RUFDbEIsUUFBUTtFQUNSLFNBQVM7RUFDVCxtQkFBaUM7RUFDakMsb0JBQWtDO0E1SyswakNsRDs7QTRLOTFqQ0k7OztFQTJCUSx3RXZGak1NO0FyRjBna0NsQjs7QTRLcDJqQ0k7RUFpQ08sd0V2RnZNTztBckY4Z2tDbEI7O0E0S2wwakNJOztFQUVJLHlCQUF5QjtFQUN6QixnQ0FBNkQ7QTVLcTBqQ3JFOztBNEtsMGpDUTs7Ozs7RUFFSSx1QkFBdUI7QTVLdzBqQ25DOztBNEtsMGpDUTs7RUFFSSxVQUFVO0E1S3EwakN0Qjs7QTRLaDBqQ0k7RUFDSSxVQUFVO0E1S20wakNsQjs7QTRLaDBqQ1E7O0VBRUksVUFBVTtBNUttMGpDdEI7O0E0S3p6akNJO0VBSVEsa0JBQWtCO0VBQ2xCLFVBQVU7RUFDVixnQ0FBNkQ7QTVLeXpqQ3pFOztBNEsvempDSTtFQVVZLHVCQUF1QjtBNUt5empDdkM7O0E0S24wakNJO0VBYVksc0JBQXNCO0E1SzB6akN0Qzs7QTRLdjBqQ0k7RUFnQlksdUJBQXVCO0E1SzJ6akN2Qzs7QTRLMzBqQ0k7RUFtQlksc0JBQXNCO0E1SzR6akN0Qzs7QTRLLzBqQ0k7RUFzQlksdUJBQXVCO0E1SzZ6akN2Qzs7QTRLbjFqQ0k7RUE4QlksbUJBQW1CO0VBQ25CLFVBQVU7QTVLeXpqQzFCOztBNEtuempDSTs7Ozs7RUFPZ0IsWUFBd0U7QTVLb3pqQzVGOztBNEszempDSTs7Ozs7RUFVZ0IsWUFBOEU7QTVLeXpqQ2xHOztBNEtuMGpDSTs7Ozs7RUFhZ0IsYUFBOEU7QTVLOHpqQ2xHOztBNEszMGpDSTs7Ozs7RUFnQmdCLGFBQThFO0E1S20wakNsRzs7QTRLbjFqQ0k7Ozs7O0VBbUJnQixhQUE4RTtBNUt3MGpDbEc7O0E0S2owakNJOzs7OztFQU9nQixhQUF5RTtBNUtrMGpDN0Y7O0E0S3owakNJOzs7OztFQVVnQixhQUErRTtBNUt1MGpDbkc7O0E0S2oxakNJOzs7OztFQWFnQixjQUErRTtBNUs0MGpDbkc7O0E0S3oxakNJOzs7OztFQWdCZ0IsY0FBK0U7QTVLaTFqQ25HOztBNEtqMmpDSTs7Ozs7RUFtQmdCLGNBQStFO0E1S3MxakNuRzs7QTRLMzBqQ0k7RUFJUSw2QkFBNkI7RUFDN0Isa0JBQWtCO0VBQ2xCLFFBQVE7RUFDUixtQnZGdWtCeUI7RXVGdGtCekIsZUFBMkQ7RUFDM0QsV3ZGaldNO0V1RmtXTixzQnZGeFZNO0V1RnlWTix1QnZGb2tCMEI7RXVGbmtCMUIsa0JBQWtCO0VBQ2xCLFVBQVU7RUFDVix3RXZGNVZNO0V1RjZWTixnQ0FBNkQ7RS9KblhyRSx3QndFa09pQztBckY2OWpDckM7O0E0S3gwakNZOztFQUVJLG9CQUF5RDtBNUsyMGpDekU7O0E0S3QwakNROztFQUdJLFdBQVc7RUFDWCxjQUEwRDtBNUt3MGpDdEU7O0E0S3AwakNROztFQUVJLG1CQUFtQjtFQUNuQixVQUFVO0E1S3UwakN0Qjs7QTRLNTJqQ0k7RUEwQ1Esc0J2RmxZTTtFdUZtWU4sV3ZGMVhNO0FyRmdza0NsQjs7QTRLajNqQ0k7RUFnRFEsbUJBQW1CO0VBQ25CLFVBQVU7QTVLcTBqQ3RCOztBNksvdGtDQTs7Ozs7O2dGN0t1dWtDZ0Y7QTZLdnRrQzVFO0VBQ0ksZ0JBQWdCO0VBQ2hCLG1CQUFtQjtFQUNuQixVQUFVO0VBQ1YsU0FBUztFQUNULGNBQWM7RUFDZCxrQkFBa0I7QTdLeXRrQzFCOztBNksvdGtDSTtFQVVRLFVBQVU7QTdLeXRrQ3RCOztBNktudWtDSTtFQWVRLGdCQUFnQjtFQUNoQixrQnZGeUJrQztFdUZ4QmxDLFNBQVM7QTdLd3RrQ3JCOztBNktwdGtDUTtFQUNJLFlBQVk7QTdLdXRrQ3hCOztBNktsdGtDSTs7O0VBSVEsZXZGdURxQztBdEY2cGtDakQ7O0E2S3h0a0NJO0VBUVEsc0J4Ri9CTTtFd0ZnQ04sV3hGMUJNO0FyRjh1a0NsQjs7QTZLL3NrQ0k7Ozs7Ozs7O0VBUUksc0J2RlQyQztFdUZVM0MscUJBQXFCO0VBQ3JCLGV2RlZzQztFdUZXdEMsY0FBYztFQUNkLG1CQUFtQjtFMUZ2RHZCLG1DQUFtQztFQUNuQyxrQ0FBa0M7QW5GMHdrQ3RDOztBNksxc2tDSTs7O0VBR0kscUJBQXFCO0VBQ3JCLG1CQUFtQjtFQUNuQixtQnZGaWxCcUM7RXVGaGxCckMsc0JBQTJGO0U5RWxGakcsV1RzRDRDO0VTckQ1QyxZVHFENEM7QXRGMnVrQzlDOztBNksxc2tDSTtFQUNJLG1CQUFtQjtFQUNuQixzQkFBMEY7RUFDMUYsbUJ2RndrQnFDO0F0RnFvakM3Qzs7QTZLenNrQ0k7RUFDSSxTQUFTO0E3SzRza0NqQjs7QTZLN3JrQ0k7RUFDSSxlQUFlO0E3S2dza0N2Qjs7QTZLOXJrQ1E7RUFDSSxnQkFBZ0I7QTdLaXNrQzVCOztBNksvcmtDUTtFQUNJLGdCQUFnQjtBN0trc2tDNUI7O0E2S2hza0NROztFQUVJLGdCQUFnQjtBN0ttc2tDNUI7O0E2S2pza0NROztFQUVJLGdCQUFnQjtBN0tvc2tDNUI7O0E2S2xza0NROztFQUVJLGdCQUFnQjtBN0txc2tDNUI7O0E2S2hza0NJO0VBQ0ksZ0JBQWdCO0E3S21za0N4Qjs7QTZLL3JrQ0k7O0VBRUksaUJBQWlCO0VBQ2pCLGtCQUFrQjtFQUNsQixxQkFBcUI7RUFDckIsa0JBQWtCO0U5RWhKeEIsV1RzRDRDO0VTckQ1QyxZVHFENEM7QXRGOHhrQzlDOztBNkt6c2tDSTs7RUFTUSxnQkFBZ0I7RXRKakp0QixpQytEdUR5QztBdEZneWtDL0M7O0F1Qmwxa0NJO0VzSm1JQTs7SXRKbElFLGdCQUFnQjtFdkJ1MWtDcEI7QUFDRjs7QTZLeHJrQ0k7O0VBR1EsZ0JBQWdCO0E3SzBya0M1Qjs7QTZLcnJrQ0k7RUFFUSxnQkFBZ0I7QTdLdXJrQzVCOztBNkt6cmtDSTtFQU1RLGdCQUFnQjtBN0t1cmtDNUI7O0E2Szdxa0NJOztFQUdRLGdCQUFnQjtBN0srcWtDNUI7O0E2SzFxa0NJO0VBRVEsZ0JBQWdCO0E3SzRxa0M1Qjs7QTZLOXFrQ0k7RUFNUSxnQkFBZ0I7QTdLNHFrQzVCOztBNktweWtDSTtFQWtJSSxjdkY0Qm9DO0V1RjNCcEMsZXZGMkJvQztFdUYxQnBDLDhCekYvQ2lCO0V5RmdEakIscUJBQXFCO0VBQ3JCLGtCQUFrQjtFQUNsQixrQkFBa0I7RUFDbEIsZUFBZTtFaEs3Tm5CLHVCd0VvT2dDO0FyRmdxa0NwQzs7QTZLOXFrQ0k7RUFZUSxXQUFXO0VBQ1gsa0JBQWtCO0E3S3Nxa0M5Qjs7QTZLbHFrQ1E7O0VBRUksV0FBVztFQUNYLGNBQWlGO0VBQ2pGLGVBQWtGO0VBQ2xGLHVCQUF3QztFQUN4QyxxQkFBcUI7RUFDckIsUUFBUTtFQUNSLFNBQVM7QTdLcXFrQ3JCOztBNktqcWtDUTtFQUNJLGdCQUFnQjtFQUNoQixTQUFTO0VBQ1QsU0FBMEU7RUFDMUUsVUFBMkU7QTdLb3FrQ3ZGOztBNktocWtDUTs7RWhLM1BKLGtCd0VzTzJCO0FyRjBya0MvQjs7QTZLcnBrQ0k7RUFFUSxtQkFBZ0U7RUFDaEUsc0J4RjlQTTtFd0YrUE4sc0J4Rm5RTTtFd0ZvUU4sWUFBWTtFQUNaLFNBQVM7QTdLdXBrQ3JCOztBNktscGtDSTtFQUVRLGtCQUFrQjtFQUNsQixRQUFRO0VBQ1IsbUJBQWlDO0VBQ2pDLGF2RnFZaUM7RXVGcFlqQyxXQUFXO0E3S29wa0N2Qjs7QTZLaHBrQ1E7RUFDSSxnQkFBZ0I7RUFDaEIsY3pGblFlO0FwRnM1a0MzQjs7QTZLL29rQ1E7RUFDSSxnQkFBZ0I7RUFDaEIsY3pGblJjO0FwRnE2a0MxQjs7QTZLN29rQ0k7RUFHUSxZQUFZO0VBQ1osMEJ4Ri9STTtFd0ZnU04sNkJBQTZCO0E3Szhva0N6Qzs7QTZLem9rQ0k7RUFDSSxZQUFZO0E3SzRva0NwQjs7QTZLeG9rQ0k7RUFDSSxvQ0FBbUQ7RUFDbkQsc0JBQXdCO0VBQ3hCLHFCQUFxQjtBN0syb2tDN0I7O0E2S2xva0NJO0VBQ0ksZ0JBQWdCO0VBQ2hCLFdBQVc7RUFDWCxrQkFBa0I7RUFDbEIsa0JBQWtCO0E3S3Fva0MxQjs7QTZLam9rQ0k7RUFDSSxTQUFTO0VBQ1QsdUJ2RjhVcUM7RXVGN1VyQyxxQnhGak5nQjtFd0ZrTmhCLHFCQUFxQjtFQUNyQixlQUFlO0VoS3JWbkIsd0J3RWtPaUM7RTlEak8vQixpQytEdUR5QztBdEZtNmtDL0M7O0F1QnI5a0NJO0VzSjBVQTtJdEp6VUUsZ0JBQWdCO0V2Qnk5a0NwQjtBQUNGOztBNktqcGtDSTtFQVdRLFNBQVM7RUFDVCxVQUFVO0VBQ1YsVUFBVTtFQUNWLDZCQUE2QjtBN0swb2tDekM7O0E2S3Rva0NROztFQUVJLHNCeEZyVk07RXdGc1ZOLFd4RmhWTTtBckZ5OWtDbEI7O0E2S3Jva0NRO0VBQ0kseUJ6Ri9WZTtFeUZnV2YsV3hGL1ZNO0FyRnUra0NsQjs7QTZLbm9rQ0k7O0VBR1EsMEN4RnZXTTtFd0Z3V04sV3hGeFdNO0FyRjYra0NsQjs7QTZLem9rQ0k7RUFRUSxzQnhGNVdNO0V3RjZXTixXeEZwV007QXJGeStrQ2xCOztBNks1bmtDSTtFQUlRLHFCQUFxQjtFQUNyQixXQUFXO0VBQ1gsU0FBUztBN0s0bmtDckI7O0E2S2xva0NJO0VBV1EsZUFBZTtBN0sybmtDM0I7O0E2S3Rva0NJO0VBZ0JRLG1CQUFtQjtBN0swbmtDL0I7O0E2SzFva0NJOzs7RUF1QlEsc0JBQXFEO0E3S3lua0NqRTs7QTZLaHBrQ0k7RUE0QlEsY0FBYztFQUNkLFdBQVc7QTdLd25rQ3ZCOztBNktycGtDSTtFQWtDUSxjQUFjO0VBQ2QsY0FBYztBN0t1bmtDMUI7O0E2SzFwa0NJO0V0SmpZRSxpQytEdUR5QztBdEZ3K2tDL0M7O0F1QjFobENJO0VzSjRYQTtJdEozWEUsZ0JBQWdCO0V2QjhobENwQjtBQUNGOztBNktwcWtDSTtFQTRDWSxrQkFBa0I7QTdLNG5rQ2xDOztBNkt4cWtDSTtFQWlEWSw2QkFBNkI7RUFDN0IseUJBQXlCO0VBQ3pCLFVBQVU7RXRKcGJwQixnQnNKcWJrQztBN0sybmtDeEM7O0F1QjNpbENJO0VzSjRYQTtJdEozWEUsZ0JBQWdCO0V2QitpbENwQjtBQUNGOztBNktycmtDSTtFQTBEWSxxQ3hGdGFFO0FyRnFpbENsQjs7QTZLenJrQ0k7RUErRFkseUJ6RnRiVztFeUZ1YlgsV3hGdGJFO0FyRm9qbENsQjs7QTZLOXJrQ0k7O0VBcUVnQixXeEYzYkY7RXdGNGJFLGtCeEY1YkY7QXJGMGpsQ2xCOztBNktwc2tDSTtFQTJFZ0IsNkJBQTZCO0E3SzZua0NqRDs7QTZLeG5rQ1k7RXRKamROLG1DK0R1RHlDO0F0RnNobEMvQzs7QXVCeGtsQ0k7RXNKNGNRO0l0SjNjTixnQkFBZ0I7RXZCNGtsQ3BCO0FBQ0Y7O0E2S3Jua0NJO0VBQ0ksa0JBQWtCO0VBQ2xCLFFBQVE7RUFDUixZdkY2THNDO0V1RjVMdEMsV3hGamRVO0FyRnlrbENsQjs7QTZLL21rQ0k7RUFDSSxhQUFhO0E3S2tua0NyQjs7QTZLOW1rQ0k7RUFDSSxXeEYvZFU7QXJGZ2xsQ2xCOztBNks3bWtDSTtFQUNJLFd4RmxlVTtBckZrbGxDbEI7O0E2SzVta0NJO0VBQ0ksOENBQXNDO1VBQXRDLHNDQUFzQztBN0srbWtDOUM7O0E4S2hubENBOzs7Ozs7aUY5S3dubENpRjtBOEs1bWxDN0U7OztFdkpORSw0RHVKVTBFO0E5SzZtbENoRjs7QXVCbG5sQ0k7RXVKQ0E7OztJdkpBRSxnQkFBZ0I7RXZCd25sQ3BCO0FBQ0Y7O0E4S3pubENJO0VBU1Esa0JBQWtCO0VBQ2xCLFVBQVU7RUFDVixxQkFBcUI7RUFDckIsUUFBUTtFQUNSLG9CQUFvQjtFQUNwQixVQUFVO0E5S29ubEN0Qjs7QThLbG9sQ0k7RUFtQlEsVUFBVTtBOUttbmxDdEI7O0E4S3RvbENJO0VBd0JRLGtCQUFrQjtFQUNsQixRQUFRO0VBQ1IsWUFBWTtFQUNaLE9BQU87RUFDUCxNQUFNO0VBQ04sb0N6RmRNO0V5RmVOLGtCQUFrQjtFQUNsQixVQUFVO0V2SnJDaEIsMkJ1SnVDeUM7QTlLaW5sQy9DOztBdUJucGxDSTtFdUpDQTtJdkpBRSxnQkFBZ0I7RXZCdXBsQ3BCO0FBQ0Y7O0E4S3hwbENJO0VBb0NRLG1CQUFtQjtFQUNuQixVQUFVO0E5S3dubEN0Qjs7QThLL21sQ0k7RUFLUSxnQkFBZ0I7QTlLOG1sQzVCOztBOEtubmxDSTs7Ozs7RXZKcERFLHlCdUo4RDJDO0E5S2lubENqRDs7QXVCMXFsQ0k7RXVKK0NBOzs7OztJdko5Q0UsZ0JBQWdCO0V2QmtybENwQjtBQUNGOztBOEtyb2xDSTtFQWVZLGtCQUFrQjtFQUNsQixxQkFBcUI7QTlLMG5sQ3JDOztBOEsxb2xDSTtFQXFCWSxTQUFTO0E5S3lubEN6Qjs7QThLOW9sQ0k7RUEyQmdCLFVBQVU7QTlLdW5sQzlCOztBOEtscGxDSTtFQStCZ0IsZUFBZTtFQUNmLFVBQVU7QTlLdW5sQzlCOztBOEt2cGxDSTtFQXdDWSxxQkFBcUI7QTlLbW5sQ3JDOztBOEszcGxDSTtFQTZDZ0IscUJBQXFCO0E5S2tubEN6Qzs7QThLL3BsQ0k7RUFxRFkscUJBQXFCO0E5SzhtbENyQzs7QThLbnFsQ0k7RUEwRGdCLHFCQUFxQjtBOUs2bWxDekM7O0E4S2xtbENJO0VBSVEsZ0JBQWdCO0E5S2ttbEM1Qjs7QThLdG1sQ0k7RUFPWSxVQUFVO0E5S21tbEMxQjs7QThLMW1sQ0k7RUFXWSxrQkFBa0I7QTlLbW1sQ2xDOztBOEs5bWxDSTtFQWNnQixVQUFVO0E5S29tbEM5Qjs7QThLbG5sQ0k7RUFxQlEsZ0JBQWdCO0E5S2ltbEM1Qjs7QThLdG5sQ0k7RUF3QlksV0FBVztBOUtrbWxDM0I7O0E4SzFubENJO0VBNEJZLG1CQUFtQjtBOUtrbWxDbkM7O0E4SzlubENJO0VBK0JnQixVQUFVO0E5S21tbEM5Qjs7QThLbG9sQ0k7RUFzQ1EsZ0JBQWdCO0E5S2dtbEM1Qjs7QThLdG9sQ0k7RUF5Q1ksVUFBVTtFQUNWLFNBQVM7QTlLaW1sQ3pCOztBOEszb2xDSTtFQThDWSxpQkFBaUI7QTlLaW1sQ2pDOztBOEsvb2xDSTtFQWlEZ0IsU0FBUztFQUNULGVBQWU7RUFDZixVQUFVO0E5S2ttbEM5Qjs7QThLcnBsQ0k7RUEwRFEsZ0JBQWdCO0E5SytsbEM1Qjs7QThLenBsQ0k7RUE2RFksU0FBUztFQUNULFNBQVM7QTlLZ21sQ3pCOztBOEs5cGxDSTtFQWlFWSxvQkFBb0I7QTlLaW1sQ3BDOztBOEtscWxDSTtFQW9FZ0IsVUFBVTtBOUtrbWxDOUI7O0E4S3ZsbENJO0VBSVEsZ0JBQWdCO0E5S3VsbEM1Qjs7QThLM2xsQ0k7RUFPWSxPQUFPO0VBQ1Asa0JBQWtCO0E5S3dsbENsQzs7QThLaG1sQ0k7RUFZWSxRQUFRO0E5S3dsbEN4Qjs7QThLcG1sQ0k7RUFpQmdCLFdBQVc7RUFDWCxVQUFVO0E5S3VsbEM5Qjs7QThLem1sQ0k7RUFzQmdCLFVBQVU7RUFDVixVQUFVO0E5S3VsbEM5Qjs7QThLOW1sQ0k7RUE4QlEsZ0JBQWdCO0E5S29sbEM1Qjs7QThLbG5sQ0k7RUFpQ1ksUUFBUTtFQUNSLGtCQUFrQjtBOUtxbGxDbEM7O0E4S3ZubENJO0VBc0NRLE9BQU87QTlLcWxsQ25COztBOEszbmxDSTtFQTJDZ0IsWUFBWTtFQUNaLFVBQVU7QTlLb2xsQzlCOztBOEtob2xDSTtFQWdEZ0IsU0FBUztFQUNULFVBQVU7QTlLb2xsQzlCOztBOEtyb2xDSTtFQXdEUSxnQkFBZ0I7QTlLaWxsQzVCOztBOEt6b2xDSTtFQTJEWSxNQUFNO0VBQ04sa0JBQWtCO0E5S2tsbENsQzs7QThLOW9sQ0k7RUFnRVksU0FBUztFQUNULFNBQVM7QTlLa2xsQ3pCOztBOEtucGxDSTtFQXNFZ0IsVUFBVTtFQUNWLFVBQVU7QTlLaWxsQzlCOztBOEt4cGxDSTtFQTJFZ0IsU0FBUztFQUNULFVBQVU7QTlLaWxsQzlCOztBOEs3cGxDSTtFQW1GUSxnQkFBZ0I7QTlLOGtsQzVCOztBOEtqcWxDSTtFQXNGWSxNQUFNO0VBQ04sa0JBQWtCO0E5SytrbENsQzs7QThLdHFsQ0k7RUEyRlksVUFBVTtFQUNWLFNBQVM7QTlLK2tsQ3pCOztBOEszcWxDSTtFQWlHZ0IsU0FBUztFQUNULFVBQVU7QTlLOGtsQzlCOztBOEtocmxDSTtFQXNHZ0IsU0FBUztFQUNULFVBQVU7QTlLOGtsQzlCOztBOEtua2xDSTtFQUVRLGdCQUFnQjtBOUtxa2xDNUI7O0E4S3ZrbENJO0VBS1ksU0FBUztBOUtza2xDekI7O0E4SzNrbENJO0VBVWdCLFVBQVU7QTlLcWtsQzlCOztBOEsva2xDSTtFQWNnQixVQUFVO0E5S3FrbEM5Qjs7QThLMWpsQ0k7RUFFUSxnQkFBZ0I7RXZKclZ0QixnQ3VKdVY4QztBOUsyamxDcEQ7O0F1Qjc0bENJO0V1SjhVQTtJdko3VUUsZ0JBQWdCO0V2Qmk1bENwQjtBQUNGOztBOEtya2xDSTtFQU9ZLFNBQVM7QTlLa2tsQ3pCOztBOEt6a2xDSTtFaktwVkEsb0J3RXFPNkI7QXJGNHJsQ2pDOztBOEs3a2xDSTtFQWNnQixVQUFVO0E5S21rbEM5Qjs7QThLamxsQ0k7RUFrQmdCLFVBQVU7QTlLbWtsQzlCOztBK0s5NmxDQTs7Ozs7O2lGL0tzN2xDaUY7QStLdDZsQ2hGO0VBQ0MsY0FBYztFQUNkLGdCQUFnQjtBL0t3NmxDbEI7O0ErS3A2bENDO0VBQ0MseUIxRkxtQjtFMEZNbkIsc0IxRkhnQjtFMEZJaEIsaUIxRjhHc0I7RXhFbElwQix3QndFa09pQztBckYwdGxDckM7O0ErSzM2bENDO0VBUUUsdUJ6RnFrQjBDO0F0Rmsya0M3Qzs7QStLLzZsQ0M7RUFXRyxvQkFBeUI7QS9LdzZsQzdCOztBK0s5NWxDQzs7Ozs7Ozs7OztFQVdFLGtCMUZqQ2U7QXJGaThsQ2xCOztBK0szNmxDQzs7O0VBa0JFLDRCMUZnVStEO0FyRitsbENsRTs7QStLajdsQ0M7RUF1QkUsc0IxRmpEZTtFeEVaZCx3QndFa09pQztBckYwdmxDckM7O0ErS3Q3bENDO0VBNkJFLHlCM0Z2Q3VCO0FwRm84bEMxQjs7QStLeDVsQ0M7RUFDQywwQzFGekRnQjtBckZvOWxDbEI7O0ErS3Y1bENDO0VBQ0MsMEMzRmpEeUI7RTJGa0R6QixZQUFZO0EvSzA1bENkOztBK0tyNWxDQztFQUNDLDBDMUZyRWdCO0FyRjY5bENsQjs7QStLaDVsQ0M7RUFDQyxjQUFjO0VBQ2QseUJBQWlCO0tBQWpCLHNCQUFpQjtNQUFqQixxQkFBaUI7VUFBakIsaUJBQWlCO0V4SjlGYixpQytEdUR5QztBdEYyN2xDL0M7O0F1QjcrbENJO0V3SnVGSDtJeEp0RkssZ0JBQWdCO0V2QmkvbENwQjtBQUNGOztBK0s1NWxDQztFQU9FLHFCQUFxQjtFQUNyQixzQnpGbERnRDtFeUZtRGhELGNBQWM7RUFDZCxlekZuRDJDO0V5Rm9EM0Msc0JBQXNCO0VBQ3RCLGtCQUFrQjtFQUNsQixnQkFBNEM7RTVGakczQyxtQ0FBbUM7RUFDbkMsa0NBQWtDO0FuRjIvbEN0Qzs7QStLcjVsQ0M7RUFFUSxnQkFBZ0I7QS9LdTVsQ3pCOztBK0tsNWxDSztFQUNDLGdCQUFnQjtBL0txNWxDdEI7O0ErS2w1bENDO0VBRVEsZ0JBQWdCO0EvS281bEN6Qjs7QStLLzRsQ0s7RUFDQyxnQkFBZ0I7QS9LazVsQ3RCOztBK0svNGxDQztFQUVRLGlCQUFpQjtBL0tpNWxDMUI7O0ErSzU0bENLO0VBQ0MsaUJBQWlCO0EvSys0bEN2Qjs7QStLNTRsQ0M7RUFFUSxpQkFBaUI7QS9LODRsQzFCOztBK0t6NGxDSztFQUNDLGlCQUFpQjtBL0s0NGxDdkI7O0ErS3Y0bENDO0VBQ0MsZ0JBQWdCO0VBQ2hCLG9CMUY4R29DO0UwRjdHcEMsY0FBYztFQUNkLHNCQUF5RDtFQUN6RCxNQUFNO0EvSzA0bENSOztBK0tsNGxDQztFQUNDLFNBQVM7RUFDVCwyQjFGK05zQztFMEY5TnRDLG1CQUFtQjtFQUNuQixlQUFlO0V4SjlLWCxpQytEdUR5QztBdEY2L2xDL0M7O0F1Qi9pbUNJO0V3SnFLSDtJeEpwS0ssZ0JBQWdCO0V2Qm1qbUNwQjtBQUNGOztBK0toNWxDQztFQVNFLFVBQVU7QS9LMjRsQ2I7O0ErS3A1bENDO0VBY0UsU0FBUztFQUNULFVBQVU7QS9LMDRsQ2I7O0ErS2g0bENDO0VBQ0ksVzFGaExhO0UwRmlMYix5QjFGekxnQjtFMEYwTGhCLHNCMUZ2TGE7QXJGMGptQ2xCOztBK0t0NGxDQztFbEt0S0csaUN3RW9NaUM7RXhFbk1qQyxvQ3dFbU1pQztBckY2MmxDckM7O0ErSzM0bENDO0VsS3BMRyxrQ3dFa05pQztFeEVqTmpDLHFDd0VpTmlDO0FyRmszbENyQzs7QStLLzNsQ0M7O0VBRUksVzFGbE1hO0UwRm1NYix5QjFGMU1nQjtFMEYyTWhCLGtCMUZ6TWE7QXJGMmttQ2xCOztBK0s5M2xDQztFQUNDLHNCQUFzQjtFQUNuQixXMUYxTWE7RTBGMk1iLHlCMUZsTmdCO0UwRm1OaEIsa0IxRmpOYTtBckZrbG1DbEI7O0ErSzczbENDO0VBQ0MsZXpGckkrQztFeUZzSS9DLGExRitNb0M7QXJGaXJsQ3RDOztBK0t4M2xDQztFQUNDLHFCQUFxQjtBL0syM2xDdkI7O0ErS3ozbENFO0VBRUUsV0FBVztFQUNYLFNBQVM7RUFDVCxpQjFGeEIyQjtBckZtNWxDL0I7O0ErSy8zbENFO0VBUUUsY0FBYztBL0syM2xDbEI7O0ErS2wzbENDO0VBQ0Msa0JBQWtCO0VBQ2xCLHFDMUYvT2dCO0UwRmdQaEIsYTFGeWM2QjtFbUJwc0J6QiwrQ25CV1k7QXJGc21tQ2xCOztBK0t6M2xDQztFQVFFLDRCMUYwckJxQztBckYycmtDeEM7O0ErSzczbENDO0VBWUcsV0FBVztBL0txM2xDZjs7QStLajRsQ0M7RUFpQkcsZUFBZTtFQUNmLFlBQVk7RUFDWixxQjFGcEpvQjtBckZ3Z21DeEI7O0ErSy8ybENFO0VBRUUsWUFBWTtFeEo1UlYscUMrRHVEeUM7QXRGdWxtQy9DOztBdUJ6b21DSTtFd0pxUkY7SXhKcFJJLGdCQUFnQjtFdkI2b21DcEI7QUFDRjs7QVE5b21DRTtFdUsyUkcsVUFBVTtBL0t1M2xDZjs7QStLNTJsQ0M7RUFDQyxtQkFBbUI7RUFDbkIsaUIxRmpGNkI7QXJGZzhsQy9COztBK0s3MmxDQztFQUNDLFNBQVM7RUFDVCxTQUFTO0VBQ1QsVUFBVTtFQUNWLG1CQUFtQztBL0tnM2xDckM7O0ErSzMybENDO0VBQ0MsV0FBVztBL0s4MmxDYjs7QStLMTJsQ0M7Ozs7RUFJQyxrQkFBa0I7RUFDbEIsTUFBTTtFQUNOLE9BQU87RUFDUCxRQUFRO0EvSzYybENWOztBK0t6MmxDQztFQUNDLFNBQVM7QS9LNDJsQ1g7O0ErSzcybENDO0VBSUUsWUFBWTtBL0s2MmxDZjs7QStLcjJsQ0M7RUFFRSxXQUFXO0VBQ1gsbUJBQW1CO0VBQ25CLHlCQUF5QjtFQUN6QixpQkFBaUI7RUFDakIsc0JBQXNCO0EvS3UybEN6Qjs7QStLNzJsQ0M7O0VBV0UsbUJBQW1CO0VBQ25CLGlCMUZwSTRCO0UwRnFJNUIsVUFBVTtFQUNWLG1CQUFtQjtBL0t1MmxDdEI7O0ErS3IzbENDO0VBa0JFLHdCMUYwaUJrQztFMEZ6aUJsQyxlQUFlO0VBQ2YsZ0JBQWdCO0VBQ2hCLGdCMUZwRjZCO0UwRnFGN0Isa0JBQWtCO0EvS3UybENyQjs7QStLNzNsQ0M7RUEwQkUsb0JBQW9CO0EvS3UybEN2Qjs7QStLLzFsQ0M7RUFDQyxlQUFlO0VBQ2YsVzFGcldnQjtBckZ1c21DbEI7O0ErSzMxbENDO0VBQ0MsbUJBQW1CO0VBQ25CLGVBQWU7RUFDZixrQkFBa0I7QS9LODFsQ3BCOztBK0tqMmxDQztFQU1FLGNBQWM7RUFDZCxlQUFlO0VBQ2YsZ0JBQWdCO0EvSysxbENuQjs7QStLdjJsQ0M7RUFZRSxhQUFhO0EvSysxbENoQjs7QStLdjFsQ0M7RUFJRSxVQUFVO0EvS3UxbENiOztBK0szMWxDQzs7RUFVRSxTQUFTO0EvS3MxbENaOztBK0toMmxDQzs7RUFhRyxZQUFZO0EvS3cxbENoQjs7QStLcjJsQ0M7O0VBaUJHLHlCQUF5QjtFQUN6QixTQUFTO0EvS3kxbENiOztBK0szMmxDQztFQXNCRSxVQUFVO0EvS3kxbENiOztBK0svMmxDQztFQXlCRSxVQUFVO0EvSzAxbENiOztBK0tuM2xDQzs7RUFnQ0csZ0JBQWdCO0VBQ2hCLGdCQUFnQjtBL0t3MWxDcEI7O0ErS3ozbENDOztFQXNDRyxhQUFhO0EvS3cxbENqQjs7QStLOTNsQ0M7RUEwQ0Usa0JBQWtCO0VBQ2xCLFVBQVU7QS9LdzFsQ2I7O0ErS240bENDO0VBOENFLFVBQVU7QS9LeTFsQ2I7O0ErS2oxbENDO0VBQ0MsaUNBQWlDO0EvS28xbENuQzs7QStLcjFsQ0M7O0VBTUUsa0JBQWtCO0VBQ2xCLFdBQVc7QS9LbzFsQ2Q7O0ErSzUwbENDO0VBQ0Msa0JBQWtCO0VBQ2xCLGNBQWM7RUFDZCx5QjNGaFhzQjtFMkZpWHRCLHNCQUEwQztFbEs5ZHhDLHdCd0VrT2lDO0FyRjRrbUNyQzs7QStLcDFsQ0M7RUFVRSxlQUFlO0EvSzgwbENsQjs7QStLeDFsQ0M7RUFlRSxVQUFVO0EvSzYwbENiOztBK0s1MWxDQztFQW9CRSxrQkFBa0I7RUFDbEIsVUFBVTtBL0s0MGxDYjs7QStLajJsQ0M7RUErQkUsa0JBQWtCO0VBQ2xCLFVBQVU7RUFDVixhQUFhO0EvS3MwbENoQjs7QStLdjJsQ0M7O0VBdUNFLGNBQWM7QS9LcTBsQ2pCOztBK0s1MmxDQztFQTRDRSxXQUFXO0VBQ1gsa0JBQWtCO0VBQ2xCLGExRndNNEI7RTBGdk01QixRQUFRO0VBQ1IsU0FBUztFQUNULGdDQUFnQztFaEY3Z0JqQyxpQmdGOGdCMEU7RWhGN2dCMUUsa0JnRjZnQjBFO0EvS3EwbEM1RTs7QStLdjNsQ0M7RUE0REcsd0JBQW1DO0EvSyt6bEN2Qzs7QStLenpsQ0M7O0VBRUMseUIzRmpic0I7QXBGNnVtQ3hCOztBK0t4emxDQzs7RUFHRSxlekZwYzhDO0F0Rjh2bUNqRDs7QStLbHpsQ0M7RUFTRSxnQkFBZ0I7RUFDaEIsVzFGelY0QjtBckZzb21DL0I7O0ErS3Z6bENDO0VBZ0JHLGtDQUFxRztBL0syeWxDekc7O0ErSzN6bENDO0VBc0JFLGF6RjJCMEM7RXlGMUIxQyxTMUZ0VzRCO0UwRnVXNUIsWTFGdlc0QjtBckZncG1DL0I7O0ErS2owbENDO0VBNkJFLGlCMUY1VzRCO0UwRjZXNUIsbUJBQW1CO0VBQ25CLHFCQUFxQjtFQUNyQixzQjFGamtCZTtFMEZra0JmLFFBQVE7RUFDUiwyQkFBMkI7RWxLL2tCMUIsa0J3RXNPMkI7RVV4TzdCLGFUa21CMkM7RVNqbUIzQyxjVGltQjJDO0F0RjB4bEM3Qzs7QStLanlsQ0M7RUFDQyxjekZFMkM7RXlGRDNDLGFBQWE7RUFDYix1QnpGRTJDO0F0Rmt5bEM3Qzs7QStLdnlsQ0M7RUFPRSxXQUFXO0VBQ1gsa0JBQWtCO0VBQ2xCLFVBQVU7RUFDVixTMUZyWTRCO0UwRnNZNUIsVzFGdFk0QjtFMEZ1WTVCLFkxRnZZNEI7RTBGd1k1QixVMUZ4WTRCO0UwRnlZNUIscUMxRmpsQmU7RXhFdEJkLHdCd0VrT2lDO0FyRjBxbUNyQzs7QStLbnpsQ0M7RXBHMWxCQyxnQkFBZ0I7RUFDaEIsdUJBQXVCO0VBQ3ZCLG1CQUFtQjtBM0VpNW1DckI7O0ErS3p6bENDO0VBeUJFLGdCMUYzVjZCO0FyRitubUNoQzs7QStLN3psQ0M7RUErQkcsa0IxRjFaMkI7QXJGNHJtQy9COztBaUJuMm1DSTtFOEpraUJIO0lBd0NHLFlBQVk7SUFDWixzQjFGaGdCb0I7STBGaWdCcEIscUJBQXFCO0lBQ3JCLFVBQVU7SUFDVixrQkFBa0I7SUFDbEIseUJBQXlCO0UvSzh4bEMzQjtFK0szMGxDRDtJQWtERyxVQUFVO0lBQ1Ysa0JBQWtCO0UvSzR4bENwQjtBQUNGOztBK0tueGxDQztFQUNDLGdCekYzRDJDO0V5RjREM0MseUIxRjFvQm1CO0UwRjJvQm5CLGNBQWM7RUFDZCx1QnpGNUQyQztFeUY2RDNDLGtCQUFrQjtFQUNsQixrQjFGNVl3RDtFMEY2WXhELG1CMUY5WGlDO0UwRitYakMsZUFBZTtFbEs5cEJiLHdCd0VrT2lDO0U5RGpPL0IsaUMrRHVEeUM7QXRGODNtQy9DOztBdUJoN21DSTtFd0pncEJIO0l4Si9vQkssZ0JBQWdCO0V2Qm83bUNwQjtBQUNGOztBUXI3bUNFO0V1SzRwQkMsc0IxRnBwQmU7QXJGaTdtQ2xCOztBK0t4eGxDQztFQUNDLGFBQWE7QS9LMnhsQ2Y7O0ErS3Z4bENDO0VBQ0MsVUFBVTtBL0sweGxDWjs7QStLeHhsQ0M7RUFDQyxVQUFVO0VBQ1YsWUFBWTtBL0syeGxDZDs7QStLN3hsQ0M7RUFLRSw0QjFGZ1JxQztFMEYvUXJDLGNBQWM7QS9LNHhsQ2pCOztBK0tueGxDQztFQUNDLGtCQUFrQjtBL0tzeGxDcEI7O0ErS2x4bENDO0VBQ0MsMkJBQTJCO0VBQzNCLDZDQUE2QztFQUM3Qyx5QkFBaUI7S0FBakIsc0JBQWlCO01BQWpCLHFCQUFpQjtVQUFqQixpQkFBaUI7QS9LcXhsQ25COztBK0s5d2xDQztFQUNDLGtCQUFrQjtBL0tpeGxDcEI7O0ErS2x4bENDO0VBS0Usc0IxRnRsQmdCO0FyRnUybUNuQjs7QStLdHhsQ0M7RUFVRSxtQjFGM2xCZ0I7QXJGMjJtQ25COztBK0sxeGxDQztFQWVFLG9CQUEwSTtFQUMxSSxvQjFGbGI0RDtBckZpc21DL0Q7O0ErSy94bENDO0VBcUJFLFdBQVc7RUFDWCxVQUFVO0EvSzh3bENiOztBK0tweWxDQztFQTJCRSxZQUFZO0VBQ1osVUFBVTtBL0s2d2xDYjs7QStLenlsQ0M7RUErQkcsWUFBWTtBL0s4d2xDaEI7O0ErSzd5bENDOztFQXVDRyxxQjFGbm5Cb0I7QXJGODNtQ3hCOztBK0tsemxDQztFQTZDRSxxQkFBcUI7RUFDckIsc0JBQXNCO0EvS3l3bEN6Qjs7QStLdnpsQ0M7RUFvREcsV0FBVztBL0t1d2xDZjs7QStLM3psQ0M7RUF5REcsY0FBYztBL0tzd2xDbEI7O0ErSy96bENDO0VBK0RFLGtCQUFrQjtBL0tvd2xDckI7O0ErS24wbENDO0VBa0VHLFVBQVU7QS9LcXdsQ2Q7O0ErS3YwbENDOztFQXlFRSxVQUFVO0EvS213bENiOztBK0s1MGxDQztFQTRFRSxVQUFVO0EvS293bENiOztBK0toMWxDQzs7RUFnRkUsVUFBVTtBL0txd2xDYjs7QStLN3ZsQ0M7RUFDQyxzQzFGanhCZ0I7RXhFdEJkLHdCd0VrT2lDO0FyRnMwbUNyQzs7QStLbHdsQ0M7O0VBVUcscUJBQXFCO0EvSzZ2bEN6Qjs7QStLdndsQ0M7O0VBaUJJLG9CQUFvQjtBL0sydmxDekI7O0ErSzV3bENDOztFQXlCSyxhQUFhO0EvS3d2bENuQjs7QStLanhsQ0M7RUErQkcsYUFBYTtFQUNiLGdCQUFnQjtBL0tzdmxDcEI7O0ErS3R4bENDO0VBbUNJLGFBQWE7QS9LdXZsQ2xCOztBK0sxeGxDQzs7RUEyQ0ssYUFBYTtBL0tvdmxDbkI7O0ErSy94bENDOztFQWlESyxnQkFBZ0I7QS9LbXZsQ3RCOztBK0tweWxDQzs7RUF5RE0sYUFBYTtBL0tndmxDcEI7O0ErS3p5bENDO0VBcUVHLHVCQUF1QjtBL0t3dWxDM0I7O0ErS2x1bENDOztFQUdFLGtCQUFrQjtFQUNsQixVQUFVO0EvS291bENiOztBK0szdGxDQzs7RUFHRSxtQnpGclMwQztFeUZzUzFDLHNCekZ0UzBDO0F0Rm1nbUM3Qzs7QStLeHRsQ0M7RUFDQyxlQUFlO0EvSzJ0bENqQjs7QStLdHRsQ0M7RUFDQyxnQkFBZ0I7QS9LeXRsQ2xCOztBK0sxdGxDQztFQUlFLGtCQUFrQjtFQUNsQixNQUFNO0VBQ04sT0FBTztFQUNQLFFBQVE7QS9LMHRsQ1g7O0ErS3J0bENDO0VBSUUsZXpGalUwQztBdEZzaG1DN0M7O0ErS3p0bENDO0VBUUUsNEIxRjU0QmU7QXJGaW1uQ2xCOztBK0s3dGxDQzs7RUFhRSx3QjFGcEJrQztFMEZxQmxDLHlCMUYxNUJrQjtBckYrbW5DckI7O0ErS251bENDO0VBbUJFLGtCMUY1cEJ1RDtFMEY2cEJ2RCxtQnpGalYwQztFeUZrVjFDLHNCekZsVjBDO0F0RnNpbUM3Qzs7QStLenVsQ0M7RUF5QkUscUJBQXFCO0VBQ3JCLGtCMUZucUJ1RDtFMEZvcUJ2RCxlekZ4VjBDO0F0RjRpbUM3Qzs7QStLL3VsQ0M7RUFnQ0UsaUJBQWlCO0EvS210bENwQjs7QStLbnZsQ0M7RUF3Q0csWUFBWTtBL0src2xDaEI7O0ErS3pzbENDO0VBR0UsWUFBWTtBL0swc2xDZjs7QStLbHNsQ0M7RUFFRSxrQkFBa0I7RUFDbEIsVUFBVTtBL0tvc2xDYjs7QStLdnNsQ0M7RUFNRyxlQUFlO0EvS3FzbENuQjs7QStLM3NsQ0M7RUFTSSxtQnpGL1h3QztFeUZnWXhDLGlCQUFpQjtBL0tzc2xDdEI7O0ErSzVybENDO0VBQ0MsaUJBQWlCO0EvSytybENuQjs7QStLN3JsQ0U7RUFDQyxzQkFBc0I7RUFDdEIsaUJ6RjdZMEM7RXlGOFkxQyxrQkFBcUU7RUFDckUsbUJBQW1CO0EvS2dzbEN0Qjs7QStLdnJsQ0M7O0VBRUMsa0JBQWtCO0VBQ2xCLFVBQVU7QS9LMHJsQ1o7O0ErS3RybENDO0VBQ0MsZ0JBQWdCO0EvS3lybENsQjs7QStLMXJsQ0M7RUFJRSw0QkFBNEI7QS9LMHJsQy9COztBK0s5cmxDQztFQVFFLFVBQVU7QS9LMHJsQ2I7O0ErS2xzbENDOztFQWFFLGtCQUFrQjtFQUNsQixVQUFVO0EvSzBybENiOztBK0t4c2xDQztFQWtCRSxrQkFBa0I7QS9LMHJsQ3JCOztBK0s1c2xDQztFQXVCRSxrQkFBa0I7RUFDbEIsTUFBTTtFQUNOLE9BQU87RUFDUCxRQUFRO0VBQ1IsVUFBVTtBL0t5cmxDYjs7QStLcHRsQ0M7RUE4QkUsa0JBQWtCO0VBQ2xCLFVBQVU7QS9LMHJsQ2I7O0ErS3p0bENDO0VBa0NFLGtCQUFrQjtFQUNsQixVQUFVO0EvSzJybENiOztBK0s5dGxDQztFQXNDRSxrQkFBa0I7RUFDbEIsVUFBVTtBL0s0cmxDYjs7QStLbnVsQ0M7RUEwQ0Usa0JBQWtCO0VBQ2xCLFVBQVU7QS9LNnJsQ2I7O0ErS3h1bENDO0VBOENFLFVBQVU7QS9LOHJsQ2I7O0ErSzV1bENDO0VBaURFLGtCQUFrQjtFQUNsQixVQUFVO0EvSytybENiOztBK0tqdmxDQztFQTRERyxnQkFBZ0I7QS9LeXJsQ3BCOztBK0tydmxDQztFQWdFRyx3QkFBd0I7QS9LeXJsQzVCOztBK0t6dmxDQztFQTJFRSxrQkFBa0I7QS9La3JsQ3JCOztBK0s3dmxDQztFQWdGRSxrQkFBa0I7RUFDbEIsT0FBTztFQUNQLFFBQVE7QS9LaXJsQ1g7O0ErS253bENDOztFQTZGRSxrQkFBa0I7QS9LMnFsQ3JCOztBK0t4d2xDQztFQWtHRSwwQjFGbmxDZTtBckY2dm5DbEI7O0ErSzV3bENDOztFQXdHRSxrQkFBa0I7RUFDbEIsVUFBVTtFQUNWLGV6RnpnQjBDO0F0RmtybUM3Qzs7QStLbnhsQ0M7RUErR0UsT0FBTztFQUNQLFFBQVE7QS9Ld3FsQ1g7O0ErS2hxbENDO0VsSzVtQ0cseUJrS2duQzJCO0VsSy9tQzNCLDBCa0srbUMyQjtBL0tpcWxDL0I7O0ErS3JxbENDO0VsSzlsQ0csNkJrS3VtQzhCO0VsS3RtQzlCLDRCa0tzbUM4QjtBL0tpcWxDbEM7O0ErS3pwbENDO0VBQ0MsZ0JBQWdCO0EvSzRwbENsQjs7QStLN3BsQ0M7RUFLRSxpQkFBaUI7QS9LNHBsQ3BCOztBK0tqcWxDQztFQVNHLGFBQWE7QS9LNHBsQ2pCOztBK0tycWxDQztFQWVFLGtCQUFrQjtFQUNsQixnQkFBZ0I7QS9LMHBsQ25COztBK0sxcWxDQztFQXFCRSxnQjFGcDRCNkI7QXJGNmhuQ2hDOztBK0s5cWxDQztFQTZCRyxtQkFBbUI7QS9LcXBsQ3ZCOztBK0tscmxDQzs7RUFtQ0cscUJBQXFCO0VBQ3JCLG1CQUFtQjtBL0tvcGxDdkI7O0ErS3hybENDO0VBd0NJLHlCQUF5QjtBL0tvcGxDOUI7O0ErSzVybENDO0VBMkNJLHdCQUF3QjtBL0txcGxDN0I7O0ErS2hzbENDO0VBK0NJLGFBQWE7QS9LcXBsQ2xCOztBK0twc2xDQztFQW1ERyxrQjFGejZCc0Q7RTBGMDZCdEQsVUFBVTtBL0txcGxDZDs7QStLenNsQ0M7RUFvRUcsVUFBVTtFQUNWLE9BQU87RUFDUCxRQUFRO0VBQ1IsU0FBUztFQUNULGdCQUFnQjtFQUNoQixjQUFjO0VBQ2Qsa0JBQWtCO0VBQ2xCLGdCQUFnQjtFQUNoQixvQzFGNXJDYztBckZxMG5DbEI7O0ErS3J0bENDO0VBZ0ZJLFlBQVk7RUFDWixxQkFBcUI7RUFDckIsc0JBQXNCO0EvS3lvbEMzQjs7QStLM3RsQ0M7RUF5RkUsaUIxRmpnQzRCO0UwRmtnQzVCLG1CQUFtQjtFQUNuQixxQkFBcUI7RUFDckIsc0IxRnR0Q2U7RTBGdXRDZixTQUFTO0VBQ1QsU0FBUztFQUNULG1DQUFzRztFQUN0RywyQkFBMkI7RWhGeHVDNUIsYVRtbUIyQztFU2xtQjNDLGNUa21CMkM7RXpFam1CekMsa0J3RXNPMkI7QXJGeW9uQy9COztBK0tsM2xDQztFQXVQRSxxQjFGdGhDNEI7RTBGdWhDNUIsT0FBTztFQUNQLFFBQVE7QS9LK25sQ1g7O0ErS3JvbENDO0VBV0UsT0FBTztFQUNQLG1CMUZ0VWtDO0UwRnVVbEMsb0MxRnZVa0M7RTBGd1VsQyw2QkFBNkI7RUFDN0IsZ0NBQWdDO0EvSzhubENuQzs7QStLcm5sQ0M7RUFDQyxxQkFBcUI7RWhGM3dDckIsYVY0K0JvQztFVTMrQnBDLGNWMitCb0M7RXhFMStCbEMsa0J3RXNPMkI7QXJGOHBuQy9COztBK0tybmxDQztFQUNDLGVBQWU7RUFDZixtQkFBbUI7RUFDbkIsY0FBYztBL0t3bmxDaEI7O0ErSy9tbENFO0VBQ0Msa0JBQWtCO0EvS2tubENyQjs7QStLcG5sQ0M7RUFNRSxxQkFBcUM7RUFDckMsd0IxRi9Za0M7QXJGaWdtQ3JDOztBK0t6bmxDQztFQVdFLG1CQUFtQjtBL0trbmxDdEI7O0ErS3ptbENDO0VBQ0Msd0IxRmpsQzZCO0FyRjZybkMvQjs7QStLN21sQ0M7RUFJRSxnQjFGM2hDNkI7QXJGd29uQ2hDOztBK0sxbWxDQztFQUNDLFdBQVc7QS9LNm1sQ2I7O0ErSzNtbENDO0VBQ0MsWUFBWTtBL0s4bWxDZDs7QStLcm1sQ0M7RXhKajBDSyxpQytEdUR5QztBdEZtM25DL0M7O0F1QnI2bkNJO0V3SjR6Q0g7SXhKM3pDSyxnQkFBZ0I7RXZCeTZuQ3BCO0FBQ0Y7O0ErSy9tbENDO0VBTUUsZUFBZTtBL0s2bWxDbEI7O0ErS25ubENDO0VBWUcscUMxRnh6Q2M7QXJGbTZuQ2xCOztBK0tybWxDQzs7RUFFQyxtQkFBbUI7RUFDbkIsVUFBVTtBL0t3bWxDWjs7QStLcG1sQ0M7RUFDQyxnQkFBZ0I7QS9LdW1sQ2xCOztBK0tubWxDQztFQUNDLHFCQUFxQjtFQUNyQixjQUFjO0EvS3NtbENoQjs7QStLOWxsQ0M7RUFDQyxrQkFBa0I7RUFDbEIsTUFBTTtFQUNOLE9BQU87RUFDUCxRQUFRO0VBQ1IsU0FBUztBL0tpbWxDWDs7QStLL2xsQ0M7RUFDQyxjQUFjO0VoRnAzQ2QsV2dGcTNDa0I7RWhGcDNDbEIsWWdGbzNDa0I7QS9LbW1sQ3BCOztBK0tqbWxDQztFQUNDLG1CQUFtQjtFQUNuQixzQkFBc0I7RUFDdEIsa0JBQWtCO0EvS29tbENwQjs7QStLbG1sQ0M7RUFBOEI7RUFDN0IsMEMxRjMyQ2dCO0FyRmk5bkNsQjs7QWlCNzVuQ0k7RThKK3pDRjs7Ozs7O0lBT0UsV0FBVztJQUNYLFdBQVc7SUFDWCxtQkFBbUI7RS9LaW1sQ3JCO0UrSzFtbENBOztJQWNFLGNBQWM7SUFDZCx1QkFBNEI7RS9LZ21sQzlCO0FBQ0Y7O0FnTHgvbkNBOzs7Ozs7aUZoTGdnb0NpRjtBZ0wvK25DaEY7RUFDQztFQUNBLGNBQWM7RUFDZCxhQUFhO0VBQ2IsV0FBVztFQUNYLGdCQUFnQjtFQUNoQiwrUUFBK1E7QWhMaS9uQ2pSOztBZ0w3K25DQztFQUlFO0VBQ0EsY0FBYztBaEw2K25DakI7O0FnTGwvbkNDO0VqRnhCQyxZaUZrQ29CO0VqRmpDcEIsYWlGaUNvQjtBaEw2K25DdEI7O0FnTHYvbkNDO0VqRnhCQyxZaUZ1Q29CO0VqRnRDcEIsYWlGc0NvQjtBaEw2K25DdEI7O0FnTDUvbkNDO0VqRnhCQyxXaUY0Q21CO0VqRjNDbkIsWWlGMkNtQjtBaEw2K25DckI7O0FnTGpnb0NDO0VqRnhCQyxXaUZpRG1CO0VqRmhEbkIsWWlGZ0RtQjtBaEw2K25DckI7O0FnTHRnb0NDO0VqRnhCQyxXaUZzRG1CO0VqRnJEbkIsWWlGcURtQjtBaEw2K25DckI7O0FnTG4rbkNDO0VBQ0M7RUFDQSx5QkFBeUI7RUFDekIsWUFBWTtFQUNaLGNBQWM7RUFDZCxrQkFBa0I7RUFDbEIsa0JBQWtCO0VBQ2xCLHdDQUF3QztFQUN4QywyQkFBMkI7RUFDM0IseUJBQWlCO0tBQWpCLHNCQUFpQjtNQUFqQixxQkFBaUI7VUFBakIsaUJBQWlCO0FoTHMrbkNuQjs7QWdMLytuQ0M7RUFhRSxjQUFjO0VBQ2QsV0FBVztFQUNYLHVCQUF1QjtFQUN2QiwwQkFBMEI7RUFDMUIsWUFBWTtFQUNaLHdCQUF3QjtFQUN4QiwyQkFBMkI7RUFDM0Isa0NBQWtDO0FoTHMrbkNyQzs7QWdMaituQ0M7Ozs7O0VBS0Msa0JBQWtCO0VBQ2xCLE1BQU07RUFDTixRQUFRO0VBQ1IsU0FBUztFQUNULE9BQU87QWhMbytuQ1Q7O0FnTGgrbkNDO0VBQ0MsZ0JBQWdCO0FoTG0rbkNsQjs7QWdMLzluQ0M7RUFDQyxzQjNGOUZnQjtFMkYrRmhCLFVBQVU7QWhMaytuQ1o7O0FnTDk5bkNDO0VBQ0Msc0IzRjFGZ0I7RTJGMkZoQixZM0ZnNUJxQztBckZpbG1DdkM7O0FnTDc5bkNDO0VBQ0MsY0FBYztFQUNkLGdCQUFnQjtFakZ6SGhCLFdpRjBIa0I7RWpGekhsQixZaUZ5SGtCO0FoTGkrbkNwQjs7QWdMNzluQ0M7RUFDQyxrQkFBa0I7RUFDbEIsY0FBYztFQUNkLHFCM0ZoSGdCO0UyRmlIaEIsWUFBWTtBaExnK25DZDs7QWdMcCtuQ0M7RUFRRSxjQUFjO0VBQ2Q7RUFDQSxPQUFPO0VBQ1AsT0FBTztFQUNQLFdBQVc7RUFDWCxpQkFBaUI7RUFDakIscUIzRm9GNEI7RTJGbkY1Qix3QjNGbUY0QjtBckY2NG5DL0I7O0FnTC8rbkNDO0VBb0JFLE1BQU07RUFDTjtFQUNBLGVBQWU7RUFDZixnQkFBZ0I7RUFDaEIsWUFBWTtFQUNaLHVCM0Z5RTRCO0UyRnhFNUIsc0IzRndFNEI7QXJGdTVuQy9COztBZ0wxOW5DQztFQUNDLGtCQUFrQjtFQUNsQixRQUFRO0VBQ1I7RUFDQSxTQUFTO0VBQ1QsY0FBYztFQUNkLFFBQVE7RUFDUixTQUFTO0VBQ1QsYUFBYTtFQUNiLGdDQUFnQztBaEw2OW5DbEM7O0FnTHQrbkNDO0VBY0UsWUFBWTtFQUNaLGtCQUFrQjtFQUNsQixjQUFjO0VBQ2Qsc0IzRjdKZTtBckZ5bm9DbEI7O0FnTDcrbkNDO0VBb0JFLE1BQU07RUFDTjtFQUNBLFVBQTREO0VBQzVELFUxRnNkdUQ7RTBGcmR2RCxXM0YyQzRCO0FyRms3bkMvQjs7QWdMci9uQ0M7RUEyQkUsU0FBMkQ7RUFDM0Q7RUFDQSxPQUFPO0VBQ1AsVTNGcUM0QjtFMkZwQzVCLFcxRjhjdUQ7QXRGZ2huQzFEOztBZ0xwOW5DQzs7O0VBR0Msa0JBQWtCO0VBQ2xCLGNBQWM7RUFDZCxXQUFXO0VBQ1gsWUFBWTtFQUNaLFlBQVk7QWhMdTluQ2Q7O0FnTG45bkNDO0VBQ0MsTUFBTTtFQUNOO0VBQ0EsT0FBTztFQUNQLHNCM0Z2TWdCO0FyRjZwb0NsQjs7QWdMbDluQ0M7RUFDQyx5QjVGN015QjtBcEZrcW9DM0I7O0FnTHQ5bkNDO0VBS0UsTUFBTTtFQUNOO0VBQ0EsaUJBQWtDO0VBQ2xDLGUxRjRhNEM7RTBGM2E1QyxnQkFBZ0I7QWhMcTluQ25COztBZ0w5OW5DQztFQWNFLGVBQWdDO0VBQ2hDO0VBQ0EsT0FBTztFQUNQLGdCMUZtYTRDO0UwRmxhNUMsZ0JBQWdCO0FoTG85bkNuQjs7QWdMdCtuQ0M7RUF1QkUsTUFBTTtFQUNOO0VBQ0EsZ0JBQWlDO0VBQ2pDLGUxRjBaNEM7RTBGelo1QyxnQkFBZ0I7QWhMbTluQ25COztBZ0w5K25DQztFQWdDRSxrQkFBbUM7RUFDbkM7RUFDQSxPQUFPO0VBQ1AsZ0IxRmlaNEM7RTBGaFo1QyxnQkFBZ0I7QWhMazluQ25COztBZ0w3OG5DQztFQUNDLHlCNUZ0UHlCO0U0RnVQekIsYUFBYTtFakZwUWIsZVQ2b0I2QztFUzVvQjdDLGdCVDRvQjZDO0F0RnlrbkMvQzs7QWdMcDluQ0M7RUFNRSxRQUFRO0VBQ1I7RUFDQSxpQkFBa0M7RUFDbEMsc0JBQXVDO0VBQ3ZDLGdCQUFnQjtBaExrOW5DbkI7O0FnTDU5bkNDO0VBY0UsZUFBZ0M7RUFDaEM7RUFDQSxTQUFTO0VBQ1QsdUJBQXdDO0VBQ3hDLGdCQUFnQjtBaExrOW5DbkI7O0FnTHArbkNDO0VBc0JFLFFBQVE7RUFDUjtFQUNBLGdCQUFpQztFQUNqQyxzQkFBdUM7RUFDdkMsZ0JBQWdCO0FoTGs5bkNuQjs7QWdMNStuQ0M7RUE4QkUsa0JBQW1DO0VBQ25DO0VBQ0EsU0FBUztFQUNULHVCQUF3QztFQUN4QyxnQkFBZ0I7QWhMazluQ25COztBZ0xwL25DQztFQXNDRSxlQUFnQztFQUNoQztFQUNBLGlCQUFrQztFQUNsQyxpQkFBaUI7QWhMazluQ3BCOztBZ0wzL25DQztFQTZDRSxlQUFnQztFQUNoQztFQUNBLGdCQUFpQztFQUNqQyxpQkFBaUI7QWhMazluQ3BCOztBZ0xsZ29DQztFQW9ERSxrQkFBbUM7RUFDbkM7RUFDQSxnQkFBaUM7RUFDakMsaUJBQWlCO0FoTGs5bkNwQjs7QWdMemdvQ0M7RUEyREU7RUFDQSxpQkFBa0M7RUFDbEMsa0JBQW1DO0VBQ25DLGlCQUFpQjtFQUNqQixVQUFVO0VqRmpVWCxlVDZvQjZDO0VTNW9CN0MsZ0JUNG9CNkM7QXRGd29uQy9DOztBZ0xuaG9DQztFQW1FRyxZQUFZO0VBQ1osa0JBQWtCO0VBQ2xCO0VBQ0EsV0FBVztFQUNYLFlBQVk7RUFDWixjQUFjO0VBQ2QseUI1RjlUdUI7RTRGK1R2QixVQUFVO0VqRjVVWixXaUY2VW9CO0VqRjVVcEIsWWlGNFVvQjtBaExxOW5DdEI7O0FnTDE4bkNDO0VBQ0MsK1FBQStRO0FoTDY4bkNqUjs7QWdMejhuQ0M7RUFDQyxVQUFVO0FoTDQ4bkNaOztBZ0x4OG5DQztFQUNDLGtCQUFrQjtFQUNsQixjQUFjO0VBQ2QsUUFBUTtFQUNSLFNBQVM7QWhMMjhuQ1g7O0FnTHo4bkNDO0VBQ0Msd0JBQXdCO0FoTDQ4bkMxQjs7QWdMeDhuQ0M7Ozs7RUFLRSxlMUYvUThDO0F0Rnl0b0NqRDs7QWdMaDhuQ0M7RUFDQyxZQUFZO0FoTG04bkNkOztBZ0wvN25DQztFQUNFLGlCQUFpQjtBaExrOG5DcEI7O0FpTHYwb0NBOzs7Ozs7aUZqTCswb0NpRjtBaUxoMG9DN0U7Ozs7Ozs7Ozs7RUFVSSxVQUFVO0VBQ1YsU0FBUztFQUNULFNBQVM7RUFDVCxhQUFhO0VBQ2IsbUJBQW1CO0FqTGswb0MzQjs7QWlMOXpvQ0k7RUFDSSxrQkFBa0I7RUFDbEIsTUFBTTtFQUNOO0VBQ0EsT0FBTztFQUNQLGFBQWE7QWpMaTBvQ3JCOztBaUw3em9DSTtFQUNJLGtCQUFrQjtFQUNsQixzQjVGM0JVO0V4RVpkLHdCd0VrT2lDO0FyRnNvb0NyQzs7QWlMNXpvQ0k7RUFDSSxhQUFhO0FqTCt6b0NyQjs7QWlMaDBvQ0k7RXpFakNFLCtDbkJXWTtBckYwMW9DbEI7O0FpTHR6b0NJOztFQUVJLGtCQUFrQjtBakx5em9DMUI7O0FpTHZ6b0NJO0VBQ0ksZ0JBQWdCO0FqTDB6b0N4Qjs7QWlMeHpvQ1E7RUFDSSxpQ0FBaUM7QWpMMnpvQzdDOztBaUx0em9DSTs7RUFFSSxjQUFjO0VsRjNFcEIsV2tGNEV3QjtFbEYzRXhCLFlrRjJFd0I7QWpMMHpvQzFCOztBaUx4em9DSTtFQUNJLGVBQWU7RUFDZixnQkFBZ0I7QWpMMnpvQ3hCOztBaUx2em9DSTtFQUNJLGVBQWU7RUFDZixRQUFRO0VBQ1IsU0FBUztFQUNULGVBQWU7RUFDZixhQUFhO0VBQ2IsVzVGNUVVO0U0RjZFVixZQUFZO0FqTDB6b0NwQjs7QWlMajBvQ0k7RUFjWSxnQkFBZ0I7RUFDaEIsc0IzRjlDbUM7RTJGK0NuQyxlM0Y5QzhCO0UyRitDOUIsbUJBQWlDO0VBQ2pDLG9CQUFrQztFQUNsQyxjQUFjO0VBQ2QsY0FBYztFQUNkLDRDQUFvQztVQUFwQyxvQ0FBb0M7RTlGOUZoRCxtQ0FBbUM7RUFDbkMsa0NBQWtDO0VZWnBDLFdUc0Q0QztFU3JENUMsWVRxRDRDO0F0Rjgyb0M5Qzs7QWlMbnpvQ0k7RUFDSSxrQkFBa0I7RUFDbEIsZTNGK2hCdUM7RTJGOWhCdkMsYTNGOGhCdUM7RTJGN2hCdkMsaUIzRitoQnVDO0UyRjloQnZDLGFBQWE7RUFDYixlQUFlO0VBQ2YsY0FBYztFQUNkLFc1RjNHVTtFNEY0R1Ysb0M1RmxHVTtFeEV0QmQsd0J3RWtPaUM7RTlEak8vQixpQytEdUR5QztBdEZ3M29DL0M7O0F1QjE2b0NJO0UwSnlHQTtJMUp4R0UsZ0JBQWdCO0V2Qjg2b0NwQjtBQUNGOztBUTM2b0NFO0V5S21IVSxzQjVGekdNO0U0RjBHTixXNUZuSE07QXJGKzZvQ2xCOztBaUw1MG9DSTtFQXFCUSxnQkFBZ0I7RUFDaEIsc0IzRmxGdUM7RTJGbUZ2QyxlM0ZsRmtDO0UyRm1GbEMsY0FBYztFOUY5SHRCLG1DQUFtQztFQUNuQyxrQ0FBa0M7QW5GMDdvQ3RDOztBaUx2em9DSTtFQUNJLGM3RnpIa0I7RTZGMEhsQixnQjVGd0l3QjtFNEZ2SXhCLFNBQVM7RUFDVCxnQjVGaTJCbUM7RTRGaDJCbkMsbUJBQW1CO0FqTDB6b0MzQjs7QWlManpvQ0k7RUFDSSxrQkFBa0I7RUFDbEIsa0JBQWtCO0VBQ2xCLGFBQWE7QWpMb3pvQ3JCOztBaUxsem9DUTtFQUNJLG1CQUFtQjtBakxxem9DL0I7O0FpTGh6b0NJO0VBQ0ksa0JBQWtCO0VBQ2xCLFNBQVM7RUFDVCxVQUFVO0VBQ1YsMEJBQTBFO0VBQzFFLGFBQWE7RUFDYixrQkFBa0I7RXBLckp0QixxQ3dFMk1pQztFeEUxTWpDLG9Dd0UwTWlDO0FyRit2b0NyQzs7QWlMM3pvQ0k7RUFVUSxxQkFBcUI7RUFDckIsbUJBQW1CO0VBQ25CLHdCM0Z1ZW1DO0UyRnRlbkMsb0M1RjdKTTtFNEY4Sk4sVzVGeEtNO0U0RnlLTixtQkFBbUI7QWpMcXpvQy9COztBaUxsem9DSTtFQUNJLGtCQUFrQjtFQUNsQixvQkFBeUI7RUFDekIsVzVGL0tVO0FyRm8rb0NsQjs7QWlMbnpvQ0k7RUFDSSx3QjNGMmR1QztBdEYyMW5DL0M7O0FpTHB6b0NJO0VBQ0ksa0JBQWtCO0VBQ2xCLFNBQVM7RUFDVCxPQUFPO0VBQ1AsUUFBUTtFQUNSLFc1RnpMVTtFNEYwTFYsd0IzRm1kdUM7RTJGbGR2QyxvQzVGakxVO0FyRncrb0NsQjs7QWlML3lvQ0k7RUFDSSxrQkFBa0I7RUFDbEIsTUFBTTtFQUNOLFVBQVU7RUFDVixZQUFZO0VBQ1osZUFBZTtFQUNmLDZCQUE2QjtFQUM3Qix3Q0FBd0M7RUFDeEMsYUFBYTtBakxrem9DckI7O0FpTDF6b0NJO0VBWVEsa0JBQWtCO0VBQ2xCLFFBQVE7RUFDUixxQkFBMkQ7RUFDM0QsZUFBZTtFQUNmLGlCM0ZtYm1DO0UyRmxibkMsVzVGcE5NO0U0RnFOTixvQzVGM01NO0U0RjRNTixjQUFjO0VBQ2QsY0FBYztFQUNkLGtCQUEwRDtFQUMxRCxrQkFBa0I7RUFDbEIsa0JBQWtCO0VBQ2xCLFVBQVU7RUFDVixhQUFhO0VwS3hPckIsd0J3RWtPaUM7RTlEak8vQixpQytEdUR5QztBdEZvK29DL0M7O0F1QnRocENJO0UwSnlNQTtJMUp4TUUsZ0JBQWdCO0V2QjBocENwQjtBQUNGOztBaUxuMW9DSTtFQStCWSxzQjNGM0xtQztFMkY0TG5DLHFCQUFxQjtFQUNyQixlM0Y1TDhCO0UyRjZMOUIsY0FBYztFOUZ4TzFCLG1DQUFtQztFQUNuQyxrQ0FBa0M7QW5GaWlwQ3RDOztBUWhpcENFO0V5SzRPYyxzQjVGbE9FO0U0Rm1PRixXNUY1T0U7QXJGb2lwQ2xCOztBaUxqMm9DSTtFQStDUSxtQkFBbUI7RUFDbkIsVUFBVTtBakxzem9DdEI7O0FpTGp6b0NJO0VBQ0ksT0FBTztBakxvem9DZjs7QWlMcnpvQ0k7RUFLUSxjM0Z1WW1DO0F0RjY2bkMvQzs7QWlMenpvQ0k7RUFVZ0IsZ0JBQWdCO0FqTG16b0NwQzs7QWlMenlvQ0k7RUFDSSxRQUFRO0FqTDR5b0NoQjs7QWlMN3lvQ0k7RUFLUSxlM0ZtWG1DO0F0Rnk3bkMvQzs7QWlManpvQ0k7RUFVZ0IsZ0JBQWdCO0FqTDJ5b0NwQzs7QWlMN3hvQ0k7RUFDSSw0QkFBNEI7RUFDNUIsV0FBVztBakxneW9DbkI7O0FpTGx5b0NJO0VBS1EsY0FBYztFQUNkLGtCQUFrQjtBakxpeW9DOUI7O0FpTHZ5b0NJO0VBVVEsMkJBQTJCO0FqTGl5b0N2Qzs7QWlMOXhvQ0k7RUFDSSw2QkFBNkI7QWpMaXlvQ3JDOztBaUw3eG9DSTtFQUNJLGtCQUFrQjtFQUNsQixNQUFNO0VBQ04sT0FBTztFQUNQLGdCQUFnQjtFQUNoQixhQUFhO0VBQ2IsYUFBYTtFQUNiLG9DNUZuVFU7QXJGbWxwQ2xCOztBaUw5eG9DSTtFQUNJLGVBQWU7RUFDZixTQUFTO0VBQ1QsUUFBUTtBakxpeW9DaEI7O0FrTHBucENBOzs7Ozs7aUZsTDRucENpRjtBa0xobnBDN0U7RUFDSSxXQUFXO0FsTGtucENuQjs7QWtMbm5wQ0k7RUFLUSwyQkFBMkI7RUFDM0IseUJBQWlCO0tBQWpCLHNCQUFpQjtNQUFqQixxQkFBaUI7VUFBakIsaUJBQWlCO0FsTGtucEM3Qjs7QWtMeG5wQ0k7RUFjb0IsZ0JBQWdCO0FsTDhtcEN4Qzs7QWtMNW5wQ0k7RUFtQm9CLDZCQUE2QjtBbEw2bXBDckQ7O0FrTGhvcENJO0VBd0JvQixlQUFlO0FsTDRtcEN2Qzs7QWtMcG9wQ0k7RUE2Qm9CLHlCN0Z2Qkg7RTZGd0JHLGFBQWE7QWxMMm1wQ3JDOztBa0x6b3BDSTtFQW1Db0IsZ0JBQWdCO0VBQ2hCLHFCQUFxQjtFQUNyQixzQjVGTzJCO0U0Rk4zQixlNUZPc0I7RTRGTnRCLHNCQUFzQjtFQUN0QixrQkFBa0I7RUFDbEIsZ0JBQThDO0VBQzlDLGNBQWM7RUFDZCx1QjdGZ0ZBO0VGekhwQixtQ0FBbUM7RUFDbkMsa0NBQWtDO0FuRm9wcEN0Qzs7QWtMdnBwQ0k7RUFpRG9CLGdCQUFnQjtBbEwwbXBDeEM7O0FrTDdscENJO0VBQ0ksY0FBYztFQUNkLG1CQUFtQjtFQUNuQixXQUFXO0FsTGdtcENuQjs7QWtMNWxwQ0k7RUFDSSxrQkFBa0I7QWxMK2xwQzFCOztBa0wzbHBDSTtFQUNJLGNBQWM7RUFDZCxnQjdGb013QjtFNkZuTXhCLG1CN0Z5Q1c7RTZGeENYLHFCQUFxQjtBbEw4bHBDN0I7O0FrTGxtcENJO0VBT1Esa0JBQWtCO0FsTCtscEM5Qjs7QWtMMWxwQ0k7RUFDSSxtQkFBbUI7RUFDbkIsZ0I3RndMd0I7RTZGdkx4QixxQkFBbUM7QWxMNmxwQzNDOztBa0x6bHBDSTtFQUNJLG1CQUFtQjtFQUNuQixpQkFBaUI7QWxMNGxwQ3pCOztBbUx2c3BDQTs7Ozs7O2lGbkwrc3BDaUY7QW1McHNwQzdFO0FBT0E7RUFDSSxrQkFBa0I7RUFDbEIsMEI5RkNVO0U4RkFWLGdCQUFnQjtFQUNoQixnQkFBZ0I7QW5MZ3NwQ3hCOztBbUxwc3BDSTtFQVFRLGU3RnNoQmdDO0F0RjBxb0M1Qzs7QW1MeHNwQ0k7RUFhUSx1QkFBc0I7QW5MK3JwQ2xDOztBaUJycHBDSTtFa0t2REE7SUFrQlEsa0JBQWtCO0lBQ2xCLGdCQUFnQjtFbkwrcnBDMUI7RW1MbHRwQ0U7SUF1QlksZUFBZTtJQUNmLGVBQWU7RW5MOHJwQzdCO0VtTHR0cENFO0lBNkJZLHVCQUFzQjtFbkw0cnBDcEM7QUFDRjs7QW1MdnJwQ0k7RUFDSSxrQkFBa0I7RUFDbEIsY0FBYztBbkwwcnBDdEI7O0FtTDVycENJO0VBTVEsYUFBYTtBbkwwcnBDekI7O0FtTGhzcENJO0VBV1Esa0JBQWtCO0FuTHlycEM5Qjs7QW1McHNwQ0k7RUFnQlEsa0JBQWtCO0VBQ2xCLGNBQWM7RUFDZCxrQkFBa0I7RUFDbEIsYUFBYTtBbkx3cnBDekI7O0FtTDNzcENJO0VBd0JRLGtCQUFrQjtFQUNsQixRQUFRO0FuTHVycENwQjs7QW1MaHRwQ0k7RUE4QlEsa0JBQWtCO0VBQ2xCLFFBQVE7RUFDUixZQUFZO0FuTHNycEN4Qjs7QW1MdHRwQ0k7RUFxQ1EsVzlGbkVNO0FyRnd2cENsQjs7QW1MaHJwQ0k7Ozs7Ozs7O0VBV1EsdUJBQXVCO0FuTGdycENuQzs7QW1MM3JwQ0k7O0VBaUJRLG1CQUFtQjtBbkwrcXBDL0I7O0FtTGhzcENJO0VBc0JRLHlCQUF5QjtFQUN6QixpQkFBaUI7RUFDakIsU0FBUztFQUNULGVBQWU7RUFDZixtQkFBbUI7RUFDbkIsUUFBUTtFQUNSLGdCQUFnQjtFQUNoQixlQUFlO0VBQ2YsZ0JBQWdCO0FuTDhxcEM1Qjs7QW1MNXNwQ0k7RUFxQ1ksVzdGa2F5QjtBdEZ5d29DekM7O0FtTGxxcENJOztFQVNRLGtCQUFrQjtFQUNsQixtQkFBbUI7RUFDbkIsb0JBQW9CO0VBQ3BCLDRCOUZwSU07RThGcUlOLDZCOUZySU07RThGc0lOLGdCN0Y0WWlDO0U2RjNZakMsaUJBQWlCO0VBQ2pCLGtCN0YrWWdDO0U2RjlZaEMsZ0JBQWdCO0VBQ2hCLGdCQUFnQjtFQUNoQixxQkFBcUI7QW5MOHBwQ2pDOztBbUxqcnBDSTtFQTJCWSxzQjlGdkpFO0FyRml6cENsQjs7QW1McnJwQ0k7RUFnQ1ksb0NBQTZDO0FuTHlwcEM3RDs7QW1MenJwQ0k7RUFxQ1ksbUJBQW1CO0FuTHdwcENuQzs7QW1MN3JwQ0k7RUEwQ1ksc0M5RjVKRTtBckZtenBDbEI7O0FtTGpzcENJO0VBK0NZLHlCL0YvS1U7QXBGcTBwQzFCOztBbUxyc3BDSTtFQXFEUSxrQkFBa0I7RUFDbEIsbUJBQW1CO0VBQ25CLG1CQUFtQjtBbkxvcHBDL0I7O0FtTDNzcENJO0VBMkRZLHlCOUZyTEs7QXJGeTBwQ3JCOztBbUwvc3BDSTtFQWlFUSxVQUFVO0FuTGtwcEN0Qjs7QW1MbnRwQ0k7RUFxRVksa0I3RjBWNEI7QXRGd3pvQzVDOztBbUx2dHBDSTs7RUFpRlEseUJBQThDO0FuTDJvcEMxRDs7QW1MNXRwQ0k7O0VBdUZRLHlCL0Z2TmM7QXBGaTJwQzFCOztBbUxqdXBDSTs7O0VBbUdRLG9CQUFvQjtFQUNwQixzQjlGaE9NO0U4RmlPTixrQjlGak9NO0FyRnEycENsQjs7QW1MenVwQ0k7Ozs7O0VBOEdRLDJCOUZ0T007QXJGeTJwQ2xCOztBbUxqdnBDSTtFQW1IUSwyQjlGM09NO0FyRjYycENsQjs7QW1McnZwQ0k7O0VBMEhZLDBCOUZsUEU7QXJGazNwQ2xCOztBbUx0bnBDSTs7RUFNWSxxQkFBcUI7QW5McW5wQ3JDOztBbUwzbnBDSTs7OztFQWdCWSxzQkFBc0I7QW5Ma25wQ3RDOztBbUw5bXBDUTs7RUFHUSxvQkFBb0I7QW5MZ25wQ3BDOztBbUxybXBDSTtFQUVRLDZCQUE2QjtBbkx1bXBDekM7O0FtTGxtcENJOztFQUdRLDZCQUE2QjtBbkxvbXBDekM7O0FtTC9scENJOzs7Ozs7RUFLUSw2QkFBNkI7QW5MbW1wQ3pDOztBbUx6bHBDSTs7RUFHUSw4QkFBOEI7QW5MMmxwQzFDOztBbUxqbHBDSTs7O0VBR0ksK0JBQStCO0FuTG9scEN2Qzs7QW1MM2twQ0k7Ozs7RUFJUSxnQ0FBZ0M7QW5MOGtwQzVDOztBbUxwa3BDSTs7RUFJWSxzQjlGdldFO0FyRjQ2cENsQjs7QW1ML2pwQ0k7RUFFUSxzQjlGL1dNO0FyRmc3cENsQjs7QW1McGpwQ0k7O0VBS1EsY0FBYztFQUNkLFlBQVk7QW5Mb2pwQ3hCOztBbUwxanBDSTs7O0VBWVEsc0M5RmxZTTtBckZzN3BDbEI7O0FtTC9pcENJO0VBQ0ksZUFBZTtFQUNmLE1BQU07RUFDTixrQkFBa0I7RUFDbEIsWUFBWTtFQUNaLGdCQUFnQjtFQUNoQixnQjdGK0hxQztBdEZtN29DN0M7O0FtTDlpcENJO0VBQ0ksZUFBZTtFQUNmLE9BQU87RUFDUCxrQkFBa0I7RUFDbEIsWUFBWTtFQUNaLGlCQUFpQjtFQUNqQixjQUE2QjtBbkxpanBDckM7O0FtTDdpcENJO0VBQ0ksZUFBZTtFQUNmLFFBQVE7RUFDUixNQUFNO0VBQ04sc0M5Ri9aVTtFOEZnYVYsYUFBYTtFQUNiLFFBQVE7RUFDUiw2QjlGeGFVO0U4RnlhVixzQkFBc0I7QW5MZ2pwQzlCOztBbUw1aXBDSTtFQUNJLGVBQWU7RUFDZixPQUFPO0VBQ1AsU0FBUztFQUNULHNDOUYzYVU7RThGNGFWLGFBQWE7RUFDYixTQUFTO0VBQ1QsOEI5RnBiVTtFOEZxYlYscUJBQXFCO0FuTCtpcEM3Qjs7QW1MdmlwQ0k7RUFJUSxrQkFBa0I7RUFDbEIsZUFBZTtBbkx1aXBDM0I7O0FtTDVpcENJO0VBVVksc0I3RnBhbUM7RTZGcWFuQyxrQjlGeE0wQztFOEZ5TTFDLGtCQUFrQjtFQUNsQixxQkFBcUI7RUFDckIsUUFBUTtFQUNSLDJCQUEyQjtFQUMzQixnQkFBNEM7RUFDNUMsY0FBYztFQUNkLFlBQVk7RWhHdGR4QixtQ0FBbUM7RUFDbkMsa0NBQWtDO0U1RFRoQyxxQytEdUR5QztBdEZnOXBDL0M7O0F1QmxncUNJO0U0SnVjQTtJNUp0Y0UsZ0JBQWdCO0V2QnNncUNwQjtBQUNGOztBbUxqa3BDSTtFQXVCWSxnQkFBZ0I7RUFDaEIsbUJBQStCO0FuTDhpcEMvQzs7QW1MdGtwQ0k7RUEyQlksZ0JBQWdCO0VBQ2hCLG9CQUErQjtBbkwraXBDL0M7O0FtTDNrcENJO0VBZ0NnQixhQUFhO0FuTCtpcENqQzs7QW1ML2twQ0k7RUFvQ2dCLGFBQWE7QW5MK2lwQ2pDOztBbUxubHBDSTtFQXlDZ0IsYUFBYTtBbkw4aXBDakM7O0FtTHZscENJO0VBNkNnQixhQUFhO0FuTDhpcENqQzs7QW1MM2xwQ0k7RUFxRGdCLFVBQVU7QW5MMGlwQzlCOztBbUw5aHBDSTtFQUNJLGtCQUFrQjtFQUNsQixZQUFZO0FuTGlpcENwQjs7QW1MbmlwQ0k7RUFNUSx3QkFBdUI7QW5MaWlwQ25DOztBbUx2aXBDSTtFQVdRLFlBQVk7RUFDWixpQkFBaUI7QW5MZ2lwQzdCOztBbUwzaHBDSTtFQUVRLHlCL0Z0aEJlO0UrRnVoQmYsVTlGcFVtQjtFOEZxVW5CLFc5RnJVbUI7QXJGazJwQy9COztBbUxuaHBDSTtFQUNJLFNBQVM7RUFDVCxnQkFBZ0I7RUFDaEIsU0FBUztFQUNULG9CQUFnRTtFQUNoRSxzQmpHaGUrQztFaUdpZS9DLG9CQUFvQjtFQUNwQixnQjdGbEJxQztFNkZtQnJDLHFCN0ZuQnFDO0U2Rm9CckMsa0JBQWtCO0VBQ2xCLFlBQVk7RUFDWixjQUFjO0VBQ2Qsc0JBQXFCO0VBQ3JCLHNCOUY5aUJVO0U4RitpQlYsbUNBQWtGO0FuTHNocEMxRjs7QW1MbGhwQ0k7RUFDSSxrQkFBa0I7RUFDbEIsTUFBTTtFQUNOLE9BQU87RUFDUCxZQUFZO0FuTHFocENwQjs7QW1MamhwQ0k7RUFDSSw4Q0FBOEM7RUFDOUMsa0JBQWtCO0VBQ2xCLFdBQVc7RUFDWCxVQUFVO0V0SzNrQmQsZ0JzSzRrQjRCO0FuTG9ocENoQzs7QW1MNWdwQ0k7RUFDSSxrQkFBa0I7QW5MK2dwQzFCOztBbUxoaHBDSTtFQUtRLGdCQUFnQjtFQUNoQixzQjdGdmlCdUM7RTZGd2lCdkMsa0JBQWtCO0VBQ2xCLFFBQVE7RUFDUixtQkFBaUM7RUFDakMsVzlGc0Y0QjtFOEZyRjVCLGU3RjNpQmtDO0U2RjRpQmxDLGNBQWM7RUFDZCxZQUFZO0VoR3hsQnBCLG1DQUFtQztFQUNuQyxrQ0FBa0M7QW5Gd21xQ3RDOztBbUx2Z3BDSTtFQUlRLGdCQUFnQjtBbkx1Z3BDNUI7O0FtTDNncENJO0VBT1Esa0JBQWtCO0FuTHdncEM5Qjs7QW1ML2dwQ0k7RUFVUSxpQkFBaUI7QW5MeWdwQzdCOztBbUxuaHBDSTtFQWFRLG1CQUFtQjtBbkwwZ3BDL0I7O0FtTHZocENJO0VBa0JRLG1CQUFtQjtBbkx5Z3BDL0I7O0FtTDNocENJO0VBcUJRLHNCQUFzQjtBbkwwZ3BDbEM7O0FtTC9ocENJO0VBd0JRLHNCQUFzQjtBbkwyZ3BDbEM7O0FtTGpncENJO0VBQ0ksVzlGNW5CVTtBckZnb3FDbEI7O0FtTGhncENJO0VBQ0ksZUFBZTtFQUNmLHVCQUF1QjtFQUN2QixjQUFjO0VBQ2Qsa0JBQWtCO0VBQ2xCLFFBQVE7RUFDUixZOUY5WnlCO0U4RitaekIsbUJBQThCO0VBQzlCLHFCQUFxQjtFQUNyQixtQjlGamF5QjtFOEZrYXpCLHdCQUFpQztFQUNqQyxxQ0FBNEM7RUFDNUMsb0NBQTRDO0VBQzVDLGFBQWE7QW5MbWdwQ3JCOztBbUwvL29DSTs7RUFJWSxVQUFVO0FuTGdncEMxQjs7QW1McGdwQ0k7RUFVUSxjL0ZycUJjO0FwRm1xcUMxQjs7QW1McC9vQ0k7RUFDSSxxQkFBcUI7RUFDckIsc0JBQXNCO0FuTHUvb0M5Qjs7QW1Mei9vQ0k7RUFNUSxZQUFZO0FuTHUvb0N4Qjs7QW1MbC9vQ0k7RUFDSSxlQUFlO0VBQ2YscUJBQXFCO0VBQ3JCLFdBQVc7RUFDWCxnQkFBZ0I7QW5McS9vQ3hCOztBbUx6L29DSTtFQVFRLHNCOUZ4a0JZO0FyRjZqcUN4Qjs7QW1MNStvQ0k7RUFJUSxvQ0FBNEI7VUFBNUIsNEJBQTRCO0VBQzVCLHFDQUE2QjtVQUE3Qiw2QkFBNkI7QW5MNCtvQ3pDOztBbUxqL29DSTtFQVVRLG9DQUE0QjtVQUE1Qiw0QkFBNEI7RUFDNUIscUNBQTZCO1VBQTdCLDZCQUE2QjtBbkwyK29DekM7O0FtTHQrb0NJO0VBQ0k7SUFDSSxVQUFVO0VuTHkrb0NwQjtFbUx2K29DTTtJQUNJLFVBQVU7RW5MeStvQ3BCO0FBQ0Y7O0FtTHYrb0NJO0VBQ0k7SUFDSSxVQUFVO0VuTDArb0NwQjtFbUx4K29DTTtJQUNJLFVBQVU7RW5MMCtvQ3BCO0FBQ0Y7O0FtTHgrb0NJO0VBQ0k7SUFDSSxVQUFVO0VuTDIrb0NwQjtFbUx6K29DTTtJQUNJLFVBQVU7RW5MMitvQ3BCO0FBQ0Y7O0FtTHorb0NJO0VBQ0k7SUFDSSxVQUFVO0VuTDQrb0NwQjtFbUwxK29DTTtJQUNJLFVBQVU7RW5MNCtvQ3BCO0FBQ0Y7O0FtTHArb0NJO0VBSVEsU0FBUztBbkxvK29DckI7O0FtTHgrb0NJO0VBUVkseUJBQXlCO0VBQ3pCLHNCOUZsd0JFO0U4Rm13QkYsc0I5RnZ3QkU7QXJGMnVxQ2xCOztBbUw5K29DSTs7Ozs7RUFtQlksU0FBUztBbkxtK29DekI7O0FtTHQvb0NJOzs7RTVKeHdCRSxpQytEdUR5QztBdEY2c3FDL0M7O0F1Qi92cUNJO0U0Sm13QkE7OztJNUpsd0JFLGdCQUFnQjtFdkJxd3FDcEI7QUFDRjs7QW1McGdwQ0k7O0VBZ0NZLG1CQUFtQjtFQUNuQix1QkFBdUI7QW5MeStvQ3ZDOztBbUwxZ3BDSTtFQXNDWSxlQUFlO0VBQ2YsY0FBYztFQUNkLG1CQUFtQjtBbkx3K29DbkM7O0FtTGhocENJO0VBNkNZLGtCQUFrQjtBbkx1K29DbEM7O0FtTHBocENJOztFQW1EWSx5QjlGOXlCSztBckZveHFDckI7O0FtTDM5b0NJO0VBQ0ksU0FBUztFQUNULDZCQUE2QjtFQUM3QixVQUFVO0VBQ1YsWUFBWTtFQUNaLHFCN0ZyU29DO0U2RnNTcEMsaUI3Rnp4QnNDO0U2RjB4QnRDLHNCQUF5RDtFQUN6RCxlQUFlO0VBQ2YsYUFBYTtBbkw4OW9DckI7O0FRdnlxQ0U7RTJLNjBCVSxVQUFVO0FuTDg5b0N0Qjs7QW1MejlvQ0k7RUFDSSxrQkFBa0I7RUFDbEIscUM5RnIwQlU7RThGczBCVixzQjlGaDFCVTtFOEZpMUJWLGlCQUE4QjtFQUM5QixhQUFhO0VBQ2IsZTlGL0xvQztFOEZnTXBDLGE5RnRKdUI7QXJGa25wQy9COztBbUxuK29DSTtFQVdRLGdCQUFnQjtFQUNoQixvQjlGakw0QjtFOEZrTDVCLHFCQUE4RjtFQUM5RixlQUFlO0VBQ2Ysa0JBQWtCO0U1SnYyQnhCLGlDK0R1RHlDO0F0RjZ3cUMvQzs7QXVCL3pxQ0k7RTRKbTFCQTtJNUpsMUJFLGdCQUFnQjtFdkJtMHFDcEI7QUFDRjs7QVFwMHFDRTtFMktzMkJjLHlCOUYvMUJLO0FyRmkwcUNyQjs7QW1MdC9vQ0k7RUF5QlksZ0JBQWdCO0VBQ2hCLHNCN0ZoMEJtQztFNkZpMEJuQyxrQkFBa0I7RUFDbEIsVzlGak13QjtFOEZrTXhCLFFBQVE7RUFDUixtQkFBaUM7RUFDakMscUJBQXFCO0VBQ3JCLGU3RnIwQjhCO0U2RnMwQjlCLGNBQWM7RWhHajNCMUIsbUNBQW1DO0VBQ25DLGtDQUFrQztBbkZtMXFDdEM7O0FtTDVrcUMyQjtFQXNuQm5CLFlBQVk7QW5MMDlvQ3BCOztBbUx0OW9DSTtFQUNJLFlBQVk7QW5MeTlvQ3BCOztBbUxyOW9DSTs7RUFFSSxZQUFZO0FuTHc5b0NwQjs7QW1McDlvQ0k7RUFDSSxZQUFZO0FuTHU5b0NwQjs7QW1MLzhvQ0k7RUFFUSx5Qi9GMXhCYTtBcEYydXFDekI7O0FtTHY4b0NJO0VBQ0ksaUI5RjlzQnVCO0FyRndwcUMvQjs7QW1MMzhvQ0k7RUFLUSx1QkFBdUI7RUFDdkIsc0I5Rmo2Qk07QXJGMjJxQ2xCOztBbUxoOW9DSTtFQVdRLHlCQUF5QjtFQUN6Qix3QjlGdjZCTTtBckZnM3FDbEI7O0FtTHI5b0NJO0VBaUJRLDBCQUEwQjtFQUMxQix5QjlGNzZCTTtBckZxM3FDbEI7O0FtTDE5b0NJO0VBdUJRLHdCQUF3QjtFQUN4Qix1QjlGbjdCTTtBckYwM3FDbEI7O0FtTGw4b0NJO0VBQ0ksNkI5Rno3QlU7RThGMDdCVix5QjdGcGFzQztBdEZ5MnBDOUM7O0FtTGo4b0NJOztFQUVJLDRCOUZoOEJVO0FyRm80cUNsQjs7QW1MMzdvQ0k7RUFDSSxxQkFBcUI7RUFDckIsa0JBQWtCO0VBQ2xCLFNBQVM7RUFDVCxlQUFlO0VBQ2Ysd0JBQXdCO0VBQ3hCLGtCQUFrQjtFcEZqK0J4Qixlb0ZrK0I0QjtFcEZqK0I1QixnQm9GaStCNEI7RXRLaCtCMUIsd0J3RWtPaUM7QXJGOHJxQ3JDOztBbUx2OG9DSTtFQVdRLFdBQVc7RUFDWCxZQUFZO0VBQ1osVTlGeHdCbUI7RThGeXdCbkIsY0FBYztFQUNkLHNCQUFzQjtFQUN0QixvQkFBb0I7RUFDcEIsa0JBQWtCO0VBQ2xCLGdCQUFnQjtBbkxnOG9DNUI7O0FtTDU3b0NRO0VBQ0ksa0JBQWtCO0VBQ2xCLGNBQWM7RUFDZCxnQkFBZ0I7RUFDaEIsc0JBQXNCO0FuTCs3b0NsQzs7QW1MbjhvQ1E7RUFPUSxXOUZ4eEJlO0U4Rnl4QmYsV0FBVztFQUNYLGVBQWU7RUFDZixZQUFZO0FuTGc4b0M1Qjs7QW1MMTdvQ0k7RUFJUSxrQkFBa0I7RUFDbEIscUJBQXFCO0VBQ3JCLGtCQUFrQjtFQUNsQixTQUFTO0VBQ1QsZUFBZTtFQUNmLE1BQU07RUFDTixhQUFhO0VwRjNnQ3ZCLGVvRjRnQ2dDO0VwRjNnQ2hDLGdCb0YyZ0NnQztFdEsxZ0M5Qix3QndFa09pQztBckZvdXFDckM7O0FtTHY4b0NJO0VBZ0JZLGNBQWM7QW5MMjdvQzlCOztBbUwzOG9DSTtFQXNCUSxjQUFjO0FuTHk3b0MxQjs7QW1McDdvQ0k7RUFDSSxrQkFBa0I7RUFDbEIsUUFBUTtFQUNSLDhCQUE4QjtFQUM5QixnQkFBZ0I7RUFDaEIsU0FBUztFQUNULHFCQUFxQjtFQUNyQixXOUY1Z0NVO0U4RjZnQ1Ysb0I5RnB4QjhCO0U4RnF4QjlCLGVBQWU7RUFDZixzQjlGcmhDVTtFVWpCaEIsZW9GdWlDNEI7RXBGdGlDNUIsZ0JvRnNpQzRCO0V0S3JpQzFCLG9Cd0VxTzZCO0FyRnl2cUNqQzs7QW1MaDdvQ0k7RUFJUSxtQkFBa0I7QW5MZzdvQzlCOztBbUxwN29DSTtFQVNRLDZCQUF5RTtBbkwrNm9DckY7O0FtTHg3b0NJOzs7RUFpQlksYUFBYTtBbkw2Nm9DN0I7O0FtTGw2b0NJOzs7O0VBSUUsZ0JBQWdCO0FuTHE2b0N0Qjs7QW1MOTVvQ1E7RUFDSSxjQUFjO0FuTGk2b0MxQjs7QW1MNzVvQ1E7RUFDSSxrQkFBa0I7RUFDbEIsZ0JBQWdCO0FuTGc2b0M1Qjs7QW1MNTVvQ1E7O0VBRUksa0JBQWtCO0VBQ2xCLGtCQUFrQjtBbkwrNW9DOUI7O0FtTHI1b0NJO0VBQ0ksYUFBYTtBbkx3NW9DckI7O0FtTHA1b0NJO0VBQ0ksY0FBYztFQUNkLGdDQUF3QjtVQUF4Qix3QkFBd0I7RUFDeEIsd0NBQWdDO1VBQWhDLGdDQUFnQztBbkx1NW9DeEM7O0FtTG41b0NJO0VBQ0k7SUFDSSxhQUFhO0lBQ2IsVUFBVTtFbkxzNW9DcEI7RW1MbjVvQ007SUFDSSxjQUFjO0lBQ2QsVUFBVTtFbkxxNW9DcEI7RW1MbDVvQ007SUFDSSxjQUFjO0lBQ2QsVUFBVTtFbkxvNW9DcEI7QUFDRjs7QW1MbDVvQ0k7RUFDSTtJQUNJLGFBQWE7SUFDYixVQUFVO0VuTHE1b0NwQjtFbUxsNW9DTTtJQUNJLGNBQWM7SUFDZCxVQUFVO0VuTG81b0NwQjtFbUxqNW9DTTtJQUNJLGNBQWM7SUFDZCxVQUFVO0VuTG01b0NwQjtBQUNGOztBbUwxNG9DSTs7RUFJWSwyQkFBMkI7RUFDM0IsNkNBQTBDO0VBQzFDLGlDQUFpQztFQUNqQyx5QkFBaUI7S0FBakIsc0JBQWlCO01BQWpCLHFCQUFpQjtVQUFqQixpQkFBaUI7QW5MMjRvQ2pDOztBbUxyNG9DSTtFQUNJLGFBQWE7RUFDYixrQkFBa0I7RUFDbEIsTUFBTTtFQUNOLFVBQVU7RUFDVixnQkFBZ0I7RUFDaEIseUI5RnJxQ2E7RThGc3FDYixzQjlGcHFDVTtFOEZxcUNWLFlBQVk7RUFDWiw4QkFBOEI7RUFDOUIsc0JBQXNCO0V0S3ZyQzFCLG9Cd0VxTzZCO0FyRjIxcUNqQzs7QW1MbjVvQ0k7RUFlUSxjQUFjO0FuTHc0b0MxQjs7QW1MdjVvQ0k7RUFvQlEsa0JBQWtCO0VBQ2xCLGVBQWU7RUFDZixnQkFBZ0I7RUFDaEIsYUFBYTtFQUNiLGNBQWM7RUFDZCxrQjlGanNCOEU7QXJGd2txQzFGOztBbUxoNm9DSTtFQTRCWSxvQjlGMzdCc0I7RThGNDdCdEIsc0I5RjFyQ0U7RThGMnJDRix3QkFBd0I7RUFDeEIsa0JBQWtCO0VBQ2xCLGNBQWM7RUFDZCxlQUFlO0VBQ2YsTUFBTTtFQUNOLFNBQVM7RUFDVCxrQjlGdDBCeUI7RThGdTBCekIsZ0JBQWdCO0FuTHc0b0NoQzs7QW1MNzZvQ0k7RUEyQ1Esa0JBQWtCO0VBQ2xCLGVBQWU7RUFDZixTQUFTO0VBQ1QsUUFBUTtFQUNSLGNBQWM7RUFDZCx3Q0FBd0M7RUFDeEMseUNBQXlDO0VBQ3pDLG1DOUZodENNO0FyRnNsckNsQjs7QW1MeDdvQ0k7RUFzRFksYUFBYTtBbkxzNG9DN0I7O0FtTDU3b0NJO0VBMkRZLFdBQVc7RUFDWCxjQUFjO0VBQ2Qsa0JBQWtCO0VBQ2xCLGFBQWE7RUFDYixTQUFTO0VBQ1QsUUFBUTtFQUNSLGdCQUFnQjtFQUNoQix3Q0FBd0M7RUFDeEMseUNBQXlDO0VBQ3pDLHNDOUZudUNLO0FyRndtckNyQjs7QW1MejhvQ0k7RUEwRVEsa0JBQWtCO0VBQ2xCLGFBQWE7RUFDYixlQUFlO0VBQ2YsZUFBZTtFQUNmLFdBQVc7RUFDWCxZQUFZO0VBQ1osYUFBYTtBbkxtNG9DekI7O0FtTG45b0NJO0VBbUZZLHlCQUF5QjtFQUN6QixnQkFBZ0I7RUFDaEIscUJBQXFCO0VBQ3JCLGtCQUFrQjtFQUNsQixxQkFBcUI7RUFDckIsbUJBQW1CO0VBQ25CLFc5RnZ2Q0U7QXJGMm5yQ2xCOztBbUw3OW9DSTtFQStGUSxlQUFlO0VBQ2Ysa0JBQWtCO0VBQ2xCLGdCQUFnQjtFQUNoQixNQUFNO0VBQ04sU0FBUztBbkxrNG9DckI7O0FtTHIrb0NJO0VBc0dZLGVBQWU7RUFDZixZQUFZO0VBQ1osV0FBVztBbkxtNG9DM0I7O0FtTDMrb0NJO0VBMkdnQixZQUFZO0VBQ1osY0FBYztFQUNkLFdBQVc7RUFDWCxZQUFZO0VBQ1osa0JBQWtCO0VBQ2xCLHFCQUFxQjtBbkxvNG9DekM7O0FtTHAvb0NJOzs7O0VBK0hRLDZCQUE2QjtFQUM3QiwyQkFBMkI7QW5MNDNvQ3ZDOztBbUw1L29DSTtFQXNJWSxrQy9GeHlDVztFK0Z5eUNYLG1DL0Z6eUNXO0UrRjB5Q1gseUJBQXlCO0FuTDAzb0N6Qzs7QW1MbGdwQ0k7RUE0SVksa0I5Rnp5Q0U7QXJGbXFyQ2xCOztBbUx0Z3BDSTtFQW1KWSxrQy9GcnpDVztFK0ZzekNYLG1DL0Z0ekNXO0UrRnV6Q1gseUJBQXlCO0FuTHUzb0N6Qzs7QW1MNWdwQ0k7RUF5Slksa0I5RnR6Q0U7QXJGNnFyQ2xCOztBbUxoaHBDSTtFQWdLWSxrQy9GbDBDVztFK0ZtMENYLG1DL0ZuMENXO0UrRm8wQ1gsd0JBQXdCO0FuTG8zb0N4Qzs7QW1MdGhwQ0k7RUFzS1ksa0I5Rm4wQ0U7QXJGdXJyQ2xCOztBbUwxaHBDSTtFQTZLWSxrQy9GLzBDVztFK0ZnMUNYLG1DL0ZoMUNXO0UrRmkxQ1gseUJBQXlCO0FuTGkzb0N6Qzs7QW1MaGlwQ0k7RUFtTFksa0I5RmgxQ0U7QXJGaXNyQ2xCOztBbUwzMm9DSTs7RUFFSSxhQUFhO0FuTDgyb0NyQjs7QW1MMTJvQ0k7Ozs7RUFJSSxjQUFjO0VBQ2QsYUFBYTtBbkw2Mm9DckI7O0FtTHAyb0NJO0VBQ0ksa0JBQWtCO0FuTHUyb0MxQjs7QW1MeDJvQ0k7RUFLUSxXQUFXO0VBQ1gsa0JBQWtCO0VBQ2xCLE1BQU07RUFDTixRQUFRO0VBQ1IsdUNBQXVDO0VBQ3ZDLDhCQUE4QjtBbkx1Mm9DMUM7O0FtTGwyb0NJO0VBQ0ksYUFBYTtFQUNiLGE5RjNyQnVCO0U4RjRyQnZCLGtCQUFrQjtBbkxxMm9DMUI7O0FtTGoyb0NJO0VBQ0ksc0I5RnI0Q1U7RThGczRDVixxQzlGNTNDVTtFOEY2M0NWLDJCOUZ2Z0NnQztFOEZ3Z0NoQyxzQkFBc0I7RUFDdEIsd0JBQXdCO0UzRTE0QzFCLCtDbkJXWTtFeEVDZCxxQ3dFMk1pQztFeEUxTWpDLG9Dd0UwTWlDO0FyRjBockNyQzs7QW1MNTJvQ0k7RUFVUSxVQUFVO0FuTHMyb0N0Qjs7QW1MNzFvQ0k7RUFDSSxhQUFhO0VBQ2Isa0JBQWtCO0VBQ2xCLGE5Rnh0QnVCO0FyRndqcUMvQjs7QW1MbjJvQ0k7Ozs7RUFVUSxhQUFhO0FuTGcyb0N6Qjs7QW1MMTJvQ0k7RUFlUSxxQzlGNTVDTTtFOEY2NUNOLHNCOUZ2NkNNO0U4Rnc2Q04saUJBQThCO0V0S3A3Q3RDLHdCd0VrT2lDO0VtQnZOL0IsK0NuQldZO0FyRit2ckNsQjs7QW1MbDNvQ0k7RUF3QlEsa0JBQWtCO0FuTDgxb0M5Qjs7QW1MdDNvQ0k7RUFnQ1ksa0JBQWtCO0VBQ2xCLGVBQWU7RUFDZixxQjlGanhCd0I7RThGa3hCeEIsZUFBZTtFeEd2OEM3QixnQkFBZ0I7RUFDaEIsdUJBQXVCO0VBQ3ZCLG1CQUFtQjtFcERBZixpQytEdUR5QztBdEY0dXJDL0M7O0F1Qjl4ckNJO0U0SjY1Q0E7STVKNTVDRSxnQkFBZ0I7RXZCa3lyQ3BCO0FBQ0Y7O0FtTHY0b0NJO0VBeUNnQixTQUFTO0FuTGsyb0M3Qjs7QW1MMzRvQ0k7RUE4Q2dCLFc5RjU3Q0Y7QXJGNnhyQ2xCOztBbUwvNG9DSTtFQW9EZ0IseUI5Rno4Q0M7QXJGd3lyQ3JCOztBbUxuNW9DSTtFQXlEZ0IsU0FBUztFQUNULFVBQVU7RUFDViw2QkFBNkI7RUFDN0IsZUFBZTtBbkw4MW9DbkM7O0FtTDE1b0NJO0VBK0RvQixXQUFXO0VBQ1gscUM5Rjc4Q047RThGODhDTSxnQkFBNkI7QW5MKzFvQ3JEOztBbUxoNm9DSTtFQXVFZ0IsVzlGeDlDRjtBckZxenJDbEI7O0FtTHA2b0NJO0VBMkVvQixlQUFlO0FuTDYxb0N2Qzs7QW1MeDZvQ0k7RUFpRmdCLGtCQUFrQjtFQUNsQixXOUZqMEJvQjtFOEZrMEJwQixRQUFRO0VBQ1IsbUJBQWlDO0VBQ2pDLFlBQVk7RUFDWixXL0YzMUNDO0FwRnNyckNyQjs7QW1MajdvQ0k7RUEwRm9CLGdCQUFnQjtFQUNoQixzQjdGMzhDMkI7RTZGNDhDM0IscUJBQXFCO0VBQ3JCLGU3RjU4Q3NCO0U2RjY4Q3RCLGNBQWM7RWhHeC9DbEMsbUNBQW1DO0VBQ25DLGtDQUFrQztBbkZvMXJDdEM7O0FtTDM3b0NJO0VBc0dZLGFBQWE7QW5MeTFvQzdCOztBbUwvN29DSTtFQTRHUSxnQkFBZ0I7QW5MdTFvQzVCOztBbUxsMW9DSTtFQUNJLG1COUZwM0JrQztFOEZxM0JsQyxpQjlGeHpDdUI7QXJGNm9yQy9COztBbUxqMW9DSTs7RUFFSSxlQUFlO0FuTG8xb0N2Qjs7QW1MaDFvQ0k7RUFDSSwwQkFBMEI7RUFDMUIsaUJBQWlCO0VBQ2pCLHNCQUFzQjtFQUN0QixnQkFBZ0I7RUFDaEIsVUFBVTtFQUNWLDBCQUEwQjtBbkxtMW9DbEM7O0FtTDEwb0NJOzs7Ozs7RUFNSSxZQUFZO0FuTDYwb0NwQjs7QW1MejBvQ0k7O0VBRUksYUFBYTtBbkw0MG9DckI7O0FtTHgwb0NJOzs7O0VBSUksa0JBQWtCO0VBQ2xCLFlBQVk7RUFDWixhQUFhO0FuTDIwb0NyQjs7QW1MdjBvQ0k7O0VBRUksc0M5RnJqRFU7RThGc2pEVixZQUFZO0FuTDAwb0NwQjs7QW1MeDBvQ0k7RUFDSSxVQUFnQztFQUNoQyxpQjlGbDNDdUI7RThGbTNDdkIsTUFBTTtBbkwyMG9DZDs7QW1MejBvQ0k7RUFDSSxXQUFpQztFQUNqQyxnQjlGdjNDdUI7RThGdzNDdkIsT0FBTztBbkw0MG9DZjs7QW1MeDBvQ0k7O0VBRUksc0M5RnRrRFU7RThGdWtEVixhQUFhO0VBQ2IsWUFBWTtFQUNaLG9CQUFvQjtBbkwyMG9DNUI7O0FtTHYwb0NJOzs7O0VBSUksY0FBYztBbkwwMG9DdEI7O0FtTDd6b0NJO0VBQ0ksYTlGMzZCdUI7RThGNDZCdkIsY0FBYztFQUNkLGtCQUFrQjtFQUNsQixzQjlGNW1EVTtFOEY2bURWLHFDOUZubURVO0U4Rm9tRFYsZ0I5RjU1Q3VCO0U4RjY1Q3ZCLGlCOUY3NUN1QjtFOEY4NUN2Qiw0QkFBNEI7RXRLNW5EaEMsd0J3RWtPaUM7RW1Cdk4vQiwrQ25CV1k7QXJGdzZyQ2xCOztBeURsOHJDRTtFQUNFLGNBQWM7RUFDZCxXQUFXO0VBQ1gsV0FBVztBekRxOHJDZjs7QW1MaDFvQ0k7RUFlUSxhQUFhO0FuTHEwb0N6Qjs7QW1McDFvQ0k7RUFvQlEsa0JBQWtCO0FuTG8wb0M5Qjs7QW1ML3pvQ0k7RUFDSSxXQUFXO0VBQ1gsbUI3RnZtQ3FDO0U2RndtQ3JDLGlCN0ZyeUNxQztBdEZ1bXJDN0M7O0FtTHp6b0NJO0VBQ0ksa0JBQWtCO0VBQ2xCLGtCQUFrQjtBbkw0em9DMUI7O0FtTDl6b0NJO0VBTVEsZUFBZTtFQUNmLGtCQUFrQjtFQUNsQixZOUZ2OUJtQjtFOEZ3OUJuQixTQUFTO0VBQ1QsT0FBTztFQUNQLGtCOUYvcEM4RTtFOEZncUM5RSwyQjlGenhDNEI7RThGMHhDNUIsc0I5RnRwRE07RThGdXBETixVQUFVO0FuTDR6b0N0Qjs7QW1MdnpvQ0k7RUFDSSxxQkFBcUI7RUFDckIsa0JBQWtCO0VBQ2xCLGE5RnIrQnVCO0U4RnMrQnZCLGdCQUFnQjtFQUNoQixTQUFTO0VBQ1QsdUJBQXNDO0VBQ3RDLDBCQUF5QztFQUN6QyxvQjlGdjRDaUQ7RThGdzRDakQsY0FBYztBbkwwem9DdEI7O0FtTG4wb0NJO0VBYVEsdUJBQXNDO0VBQ3RDLGVBQTBEO0VBQzFELG9COUY3NkMwQjtFOEY4NkMxQixXOUYxcURNO0FyRm8rckNsQjs7QW1MaHpvQ0k7O0VBRUksY0FBYztFQUNkLGtCQUFrQjtFQUNsQixTQUFTO0VBQ1Qsa0I5RmgwQ2lDO0U4RmkwQ2pDLFlBQVk7RUFDWiw2QkFBNkI7RUFDN0IsZUFBZTtFdEs5c0RuQix3QndFa09pQztFOURqTy9CLGlDK0R1RHlDO0F0RjI4ckMvQzs7QXVCNy9yQ0k7RTRKZ3NEQTs7STVKL3JERSxnQkFBZ0I7RXZCa2dzQ3BCO0FBQ0Y7O0FtTHAwb0NJOztFQWNRLHNCN0ZqcUR1QztFNkZrcUR2QyxjQUFjO0VBQ2QsZTdGbHFEa0M7RTZGbXFEbEMsVzdGbnFEa0M7RTZGb3FEbEMsa0JBQWtCO0VBQ2xCLGNBQWM7RWhHaHREdEIsbUNBQW1DO0VBQ25DLGtDQUFrQztBbkY0Z3NDdEM7O0FRL2dzQ0U7O0UyS3d0RFUsVzlGMXNETTtFOEYyc0ROLHlCOUZsdERTO0FyRjhnc0NyQjs7QW1MdDFvQ0k7O0VBK0JRLGVBQWU7RUFDZixXQUFXO0FuTDR6b0N2Qjs7QW1MdnpvQ0k7RUFDSSxXQUFXO0FuTDB6b0NuQjs7QW1MM3pvQ0k7RUFLUSxnQkFBZ0I7QW5MMHpvQzVCOztBbUxyem9DSTtFQUNJLFlBQVk7QW5Md3pvQ3BCOztBbUx6em9DSTtFQUtRLGdCQUFnQjtBbkx3em9DNUI7O0FtTDl5b0NJO0VBQ0ksV0FBVztFQUNYLHlCQUF5QjtFQUN6QixpQkFBaUI7RUFDakIsU0FBUztFQUNULG1CQUFtQjtBbkxpem9DM0I7O0FtTHR6b0NJOztFQVVRLGtCQUFrQjtBbkxpem9DOUI7O0FtTDN6b0NJO0VBZVEsa0JBQWtCO0VBQ2xCLGdCOUY5L0NvQjtFOEYrL0NwQixzQjdGMTZDaUM7RTZGMjZDakMseUI5RjM0QzZCO0U4RjQ0QzdCLGtCOUZ2Z0Q4QztFOEZ3Z0Q5QyxXOUZ0d0RNO0FyRnNqc0NsQjs7QW1McDBvQ0k7RUF5QlEsZ0JBQWdCO0VBQ2hCLGVBQWU7RUFDZixxQkFBcUI7QW5MK3lvQ2pDOztBbUwxeW9DSTtFQUNJLGNBQWM7RUFDZCxTQUFTO0VBQ1QsU0FBUztFQUNULFdBQVc7RUFDWCxrQjlGOTVDaUM7RThGKzVDakMsa0JBQWtCO0VBQ2xCLDZCQUE2QjtFQUM3QixlQUFlO0V0SzV5RG5CLHdCd0VrT2lDO0U5RGpPL0IsaUMrRHVEeUM7QXRGbWlzQy9DOztBdUJybHNDSTtFNEo4eERBO0k1Sjd4REUsZ0JBQWdCO0V2Qnlsc0NwQjtBQUNGOztBUTFsc0NFO0UySzJ5RFUsVzlGN3hETTtFOEY4eEROLHlCOUZyeURTO0FyRndsc0NyQjs7QW1ML3lvQ1E7RUFDSSxXOUZueURNO0U4Rm95RE4seUI5RjN5RFM7QXJGNmxzQ3JCOztBbUxoem9DUTtFQUNJLFc5Rmh6RE07RThGaXpETix5Qi9GeHNEWTtBcEYyL3JDeEI7O0FtTGp6b0NROzs7RUFHSSxXQUFXO0VBQ1gsa0JBQWtCO0VBQ2xCLGVBQW1DO0VBQ25DLGlCQUFxQztFQUNyQyxnQzlGMXpETTtFOEYyekROLHdDQUF1RDtFcEZ6MERqRSxRb0YwMER5QjtFcEZ6MER6QixTb0Z5MER5QjtBbkxxem9DM0I7O0FtTGp6b0NROztFQUVJLFc5RmwwRE07RThGbTBETix5Qi9GMXREWTtBcEY4Z3NDeEI7O0FtTGx6b0NRO0VBQ0ksVzlGN3pETTtFOEY4ekROLHlCOUZyMERTO0FyRjBuc0NyQjs7QW1ManpvQ1E7RUFDSSxvQkFBb0I7RUFDcEIsZTdGeHZEcUM7RTZGeXZEckMsWUFBWTtBbkxvem9DeEI7O0FtTDF5b0NJO0VBQ0kscUJBQXFCO0FuTDZ5b0M3Qjs7QW1MenlvQ0k7RUFDSSxrQjlGMWxEa0Q7RThGMmxEbEQsVzlGejFEVTtBckZxb3NDbEI7O0FtTHp5b0NJO0FDbjNESjs7Ozs7O2lGcExxcXNDaUY7QW9McnBzQ2hGO0VBQ0MsU0FBUztFQUNULGVBQWU7QXBMdXBzQ2pCOztBb0x6cHNDQzs7RUFRRyxVQUFVO0VBQ1Ysa0JBQWtCO0FwTHNwc0N0Qjs7QW9ML3BzQ0M7OztFQWdCRyxlQUFlO0FwTHFwc0NuQjs7QW9McnFzQ0M7Ozs7O0VBeUJHLHFCQUFpQztBcExvcHNDckM7O0FvTDdxc0NDOzs7Ozs7RUFvQ0csV0FBVztFQUNYLHNCOUZHK0M7RThGRi9DLGtCQUFrQjtFQUNsQixRQUFRO0VBQ1IsYy9GKzFCaUM7RStGOTFCakMsa0IvRjROc0Q7RStGM050RCxxQkFBK0I7RUFDL0IscUJBQXFCO0VBQ3JCLGNBQWM7RWpHOUNkLG1DQUFtQztFQUNuQyxrQ0FBa0M7QW5GaXNzQ3RDOztBb0xoc3NDQztFQW1ESSxnQkFBZ0I7RUFDaEIscUJBQXFCO0VBQ3JCLFlBQVk7QXBMaXBzQ2pCOztBb0x0c3NDQztFQXdESSxnQkFBZ0I7RUFDaEIscUJBQXNDO0VBQ3RDLFlBQVk7QXBMa3BzQ2pCOztBb0w1c3NDQztFQThERyxnQkFBZ0I7RUFDaEIsVUFBVTtBcExrcHNDZDs7QW9ManRzQ0M7RUFrRUcsZ0JBQWdCO0VBQ2hCLFVBQVU7QXBMbXBzQ2Q7O0FvTHR0c0NDO0VBc0VHLGdCQUFnQjtFQUNoQixhQUFhO0FwTG9wc0NqQjs7QW9MM3RzQ0M7RUEwRUcsZ0JBQWdCO0VBQ2hCLGFBQWE7QXBMcXBzQ2pCOztBb0xodXNDQzs7OztFQXdGaUIsYUFBYTtBcEwrb3NDL0I7O0FvTHZ1c0NDOztFQWdHTSxVQUFVO0FwTDRvc0NqQjs7QW9MNXVzQ0M7O0VBb0dPLHFDL0Z6RlU7QXJGc3VzQ2xCOztBb0xqdnNDQztFQTJHRSxrQkFBa0I7QXBMMG9zQ3JCOztBb0xydnNDQztFQWdIRSx5QkFBeUI7QXBMeW9zQzVCOztBb0xwb3NDQztFQUNDLGtCQUFrQjtFQUNsQixXQUFXO0FwTHVvc0NiOztBeUQ3d3NDRTtFQUNFLGNBQWM7RUFDZCxXQUFXO0VBQ1gsV0FBVztBekRneHNDZjs7QW9ML29zQ0M7RUFPRSxhQUFhO0FwTDRvc0NoQjs7QW9MbnBzQ0M7RUFZRSwwQi9GNUhlO0FyRnV3c0NsQjs7QW9MdG9zQ0M7RUFDQyxrQkFBa0I7RUFDbEIsUUFBUTtFQUNSLFNBQVM7RUFDVCxXQUFXO0VBQ1gsWUFBWTtFQUNaLGlCQUFpQjtFQUNqQixpQkFBaUI7RUFDakIsaUJBQWlCO0VBQ2pCLGtCQUFrQjtFQUNsQixzQkFBc0I7RUFNdEIseUpBQXlKO0FwTHlvc0MzSjs7QW9Mam9zQ0M7O0VBRUMsa0MvRnV1Qm1DO0FyRjY1cUNyQzs7QXlEbnpzQ0U7O0VBQ0UsY0FBYztFQUNkLFdBQVc7RUFDWCxXQUFXO0F6RHV6c0NmOztBb0w3b3NDQzs7RUFPRSxjQUFjO0FwTDJvc0NqQjs7QW9Mdm9zQ0U7O0VBQ0MsZUFBZTtFQUNmLGdCQUFnQjtBcEwyb3NDbkI7O0FvTHZvc0NFOztFQUNDLHFDL0ZyS2U7QXJGZ3pzQ2xCOztBb0x0b3NDQztFQUNDLDZCL0ZqTGdCO0FyRjB6c0NsQjs7QW9Mcm9zQ0M7RUFDQyw2Qi9Ga0xnRTtBckZzOXJDbEU7O0FvTGhvc0NDO0VBQ0MsWUFBWTtFQUNaLHFCQUFxQjtFQUNyQiwyQi9GaXNCbUM7QXJGazhxQ3JDOztBb0x0b3NDQztFQU9FLGdCQUFnQjtBcExtb3NDbkI7O0FvTDFvc0NDO0VBV0csV0FBVztFQUNYLHlCOUZ5VnFEO0U4RnhWckQsY0FBYztBcExtb3NDbEI7O0FvTGhwc0NDO0VBbUJLLGtCL0ZvU29GO0UrRm5TcEYsMkIvRjBLa0M7RStGektsQyxvQi9GMkNnQztFK0YxQ2hDLG1CL0Z5RDZCO0UrRnhEN0IsVy9GaE5ZO0UrRmlOWixzQi9GMU5ZO0UrRjJOWixzQi9Gdk5ZO0UrRndOWixVQUFVO0FwTGlvc0NoQjs7QW9MN25zQ0U7RUFDQyxXQUFXO0FwTGdvc0NkOztBb0wvcHNDQztFQW9DRSxXQUFXO0FwTCtuc0NkOztBb0xucXNDQztFQXVDRSxrQkFBa0I7QXBMZ29zQ3JCOztBb0wzbnNDQztFQUNDLGtCQUFrQjtFQUNsQixjQUFjO0VBQ2QsV0FBVztFQUNYLDJCL0ZvcEJtQztBckYwK3FDckM7O0FvTGxvc0NDO0VBUUUsZ0JBQWdCO0VBQ2hCLGtCQUFrQjtBcEw4bnNDckI7O0FvTHZvc0NDO0VBYUcsZ0JBQWdCO0VBQ2hCLHNCOUZyTitDO0U4RnNOL0Msa0IvRk9zRDtFK0ZOdEQscUJBQXFCO0VBQ3JCLGtCQUFrQjtFQUNsQixRQUFRO0VBQ1IsZS9GK0hvQztFK0Y5SHBDLHFCQUErQjtFQUMvQixjQUFjO0VBQ2QsWUFBWTtFakd2UVosbUNBQW1DO0VBQ25DLGtDQUFrQztBbkZzNHNDdEM7O0FvTHRwc0NDO0VBNEJHLFdBQVc7RUFDWCx5QjlGNFJxRDtFOEYzUnJELGNBQWM7QXBMOG5zQ2xCOztBb0w1cHNDQztFQW9DRSxVQUFVO0VBQ1YsYzlGa1J5QztFOEZqUnpDLDJCL0Y0R3FDO0UrRjNHckMsbUJBQXlEO0VBQ3pELG9CL0ZwQm1DO0UrRnFCbkMsbUIvRk5nQztFK0ZPaEMsVy9GL1FlO0UrRmdSZixzQi9GelJlO0UrRjBSZixzQi9GdFJlO0V4RWhCZCx3QndFa09pQztBckZpc3NDckM7O0FvTHpxc0NDO0VBaURTLFcvRnpSUTtFK0YwUlIsVUFBVTtBcEw0bnNDcEI7O0FvTDlxc0NDO0VBaURTLFcvRnpSUTtFK0YwUlIsVUFBVTtBcEw0bnNDcEI7O0FvTDlxc0NDO0VBaURTLFcvRnpSUTtFK0YwUlIsVUFBVTtBcEw0bnNDcEI7O0FvTDlxc0NDO0VBaURTLFcvRnpSUTtFK0YwUlIsVUFBVTtBcEw0bnNDcEI7O0FvTDlxc0NDO0VBaURTLFcvRnpSUTtFK0YwUlIsVUFBVTtBcEw0bnNDcEI7O0FvTHZuc0NFO0VBQ0MsWUFBWTtBcEwwbnNDZjs7QW9Mcm5zQ0M7RUFDQyxXQUFXO0VBQ1gsb0JBQTJCO0VBQzNCLHNCL0Y3TGlCO0FyRnF6c0NuQjs7QW9Mcm5zQ0U7RUFDQyxZQUFZO0FwTHduc0NmOztBb0xubnNDQztFQUNDLFlBQVk7RUFDWixpQkFBaUI7RUFDakIsMkIvRjRrQm1DO0FyRjBpckNyQzs7QW9Mem5zQ0M7RUFPRSxxQkFBcUI7RUFDckIsa0IvRmdFc0M7RStGL0RuQyxxQkFBdUg7RUFDMUgscUJBQXFCO0VBQ3JCLGtCQUFrQjtFQUNsQixxQkFBcUI7RUFDckIsZUFBZTtFQUNmLFcvRjVUZTtFK0Y2VGYsVUFBVTtFQUNWLDZCQUEyQztFdktuVjFDLHdCd0VrT2lDO0U5RGpPL0IsaUMrRHVEeUM7QXRGbTVzQy9DOztBdUJyOHNDSTtFNko2VEg7STdKNVRLLGdCQUFnQjtFdkJ5OHNDcEI7QUFDRjs7QW9MOW9zQ0M7RUFzQkcsY0FBYztBcEw0bnNDbEI7O0FRMThzQ0U7RTRLbVZFLHlCL0ZoVmlCO0FyRjI4c0NyQjs7QVF2OHNDRTtFNEtrVkcsVy9GeFZhO0UrRnlWYix5QmhHMUxvQjtBcEZtenNDekI7O0FRNThzQ0U7RTRLMFZHLGU5RjNRNEM7RThGNFE1QyxzQi9GaldhO0UrRmtXYixXL0Y1VmE7QXJGazlzQ2xCOztBb0xqcXNDQztFQWtERSxzQi9GdUJxQztFK0Z0QnJDLHVCL0ZzQnFDO0FyRjZsc0N4Qzs7QVE5OXNDRTtFNEtnWEcsVy9GL1dhO0UrRmdYYix5QmhHak5vQjtBcEZtMHNDekI7O0FvTDVtc0NFO0VBQ0MsV0FBVztBcEwrbXNDZDs7QVF2K3NDRTtFNEtnWUUsVy9GL1hjO0UrRmdZZCx5QmhHall1QjtBcEY0K3NDM0I7O0FvTGxtc0NDO0VBQ0MsV0FBVztBcExxbXNDYjs7QW9MdG1zQ0M7RUFNRyxnQkFBZ0I7QXBMb21zQ3BCOztBb0wxbXNDQzs7RUFXRyxtQkFBbUI7QXBMb21zQ3ZCOztBb0wvbXNDQztFQWlCRSxpQ0FBaUM7QXBMa21zQ3BDOztBb0xubnNDQztFQW9CRyxnQkFBZ0I7QXBMbW1zQ3BCOztBb0x2bnNDQztFQXlCSyxhQUFhO0FwTGttc0NuQjs7QW9MM25zQ0M7RUE4QkksYUFBYTtBcExpbXNDbEI7O0FvTC9uc0NDOztFQW9DRyxtQkFBbUI7QXBMZ21zQ3ZCOztBb0xwb3NDQzs7RUF1Q0ksU0FBUztFQUNULGdCQUFnQjtFQUNoQixTQUFTO0VBQ1QsVUFBVTtBcExrbXNDZjs7QW9MdmxzQ0M7O0VBR0UsMEIvRjdiZTtBckZzaHRDbEI7O0FvTDVsc0NDO0VBUUcsYUFBYTtBcEx3bHNDakI7O0FvTGhtc0NDOzs7O0VBY0ksZ0JBQWdCO0FwTHlsc0NyQjs7QW9MbGxzQ0M7RUFFRSxjQUFjO0FwTG9sc0NqQjs7QW9ML2tzQ0M7RUFDQyxTQUFTO0FwTGtsc0NYOztBb0xubHNDQzs7Ozs7O0VBVUssY0FBYztBcExrbHNDcEI7O0FvTDVsc0NDOzs7Ozs7RUFjSyxlQUFlO0FwTHVsc0NyQjs7QW9Mcm1zQ0M7O0VBdUJHLGdCQUFnQjtBcExtbHNDcEI7O0FvTHprc0NDOzs7RUFHQyxnQkFBZ0I7QXBMNGtzQ2xCOztBb0x4a3NDQztFQUNDLFdBQVc7RUFDWCxnQkFBZ0I7RUFDaEIsZ0JBQWdCO0FwTDJrc0NsQjs7QWlCeGh0Q0k7RW1LaWRGO0lBQ0MsV0FBVztJQUNYLGtCQUFrQjtFcEwya3NDbkI7RW9MN2tzQ0E7O0lBTUUsbUJBQW1CO0VwTDJrc0NyQjtBQUNGOztBaUJuaXRDSTtFbUs0ZEY7SUFDQyxXQUFXO0lBQ1gsa0JBQWtCO0VwTDJrc0NuQjtFb0w3a3NDQTs7SUFNRSxtQkFBbUI7RXBMMmtzQ3JCO0FBQ0Y7O0FpQjlpdENJO0VtS3VlRjtJQUNDLFdBQVc7SUFDWCxrQkFBa0I7RXBMMmtzQ25CO0VvTDdrc0NBOztJQU1FLG1CQUFtQjtFcEwya3NDckI7QUFDRjs7QWlCemp0Q0k7RW1Lb2ZGOzs7Ozs7SUFNQyxzQkFBcUI7SUFDckIsa0JBQWtCO0lBQ2xCLGNBQWM7RXBMeWtzQ2Y7RW9MdmtzQ0E7O0lBRUMsYUFBYTtFcEx5a3NDZDtFb0w3OHNDRDtJQXdZRSxrQkFBa0I7RXBMd2tzQ25CO0FBQ0Y7O0FxTHRwdENBOzs7Ozs7aUZyTDhwdENpRjtBcUxscHRDN0U7RUFDSSwwQ2hHSVU7RWdHSFYsWUFBWTtFQUNaLFlBQVk7QXJMb3B0Q3BCOztBcUx2cHRDSTs7RUFRUSxpQ0FBK0Q7QXJMb3B0QzNFOztBcUwvb3RDSTtFQUNJLFVoR3lNdUI7RWdHeE12Qix5QmpHWG1CO0VpR1luQixZQUFZO0FyTGtwdENwQjs7QXNMOXF0Q0E7Ozs7Ozs7aUZ0THVydENpRjtBc0wxcXRDN0U7RUFDSSw2QkFBNEI7RUFDNUIsb0JBQW9CO0VBQ3BCLHdCbEdtSmE7RWtHbEpiLG9CakdrTnVCO0VpR2pOdkIsc0JqR0RVO0VpR0VWLGFqRzhyQnVCO0VpRzdyQnZCLFlBQVk7RUFDWixZQUFZO0F0TDRxdENwQjs7QXNMeHF0Q0k7RUFDSSx1QmxHeUlhO0VrR3hJYixvQmpHd011QjtBckZtK3NDL0I7O0FzTHZxdENJO0VBQ0ksa0JBQWtCO0F0TDBxdEMxQjs7QXNMdHF0Q0k7RUFDSSxrQkFBa0I7RUFDbEIsWUFBWTtBdEx5cXRDcEI7O0F1TC9zdENBOzs7Ozs7aUZ2THV0dENpRjtBdUwzc3RDN0U7RUFFUSxtQkFBbUI7QXZMNHN0Qy9COztBdUx2c3RDSTtFQUNJLHNCbEdIVTtFa0dJVixnQkFBZ0I7QXZMMHN0Q3hCOztBdUx0c3RDSTs7O0VBSVEsNEJsR1JNO0FyRmd0dENsQjs7QXVMbnN0Q0k7OztFQUlRLDJCbEdqQk07QXJGc3R0Q2xCOztBdUxoc3RDSTs7O0VBTWdCLGFBQWE7QXZMZ3N0Q2pDOztBdUx0c3RDSTs7OztFQWFnQixhQUFhO0F2TGdzdENqQzs7QXVMenJ0Q0k7RUFDSSx1QkFBdUI7QXZMNHJ0Qy9COztBd0w1dnRDQTs7Ozs7OztpRnhMcXd0Q2lGO0F3THh2dEM3RTs7RUFFSSxzQm5HRVU7RW1HRFYsYUFBYTtFQUNiLGdCQUFnQjtBeEwwdnRDeEI7O0F3THR2dENJO0VBQ0ksZUFBZTtBeEx5dnRDdkI7O0F3THR2dENROztFQUVJLHdCQUF1QjtBeEx5dnRDbkM7O0FpQjNzdENJO0V1S3BEQTtJQVdRLGFBQWE7RXhMeXZ0Q3ZCO0FBQ0Y7O0F3THJ2dENJO0VBQ0ksa0JBQWtCO0F4THd2dEMxQjs7QWlCcnR0Q0k7RXVLcENBO0lBS1EsYUFBYTtFeEx5dnRDdkI7QUFDRjs7QXdMcnZ0Q0k7RUFDSTtJQUNJLGFBQWE7RXhMd3Z0Q3ZCO0FBQ0Y7O0F5TDF5dENBOzs7Ozs7O2lGekxtenRDaUY7QXlMdHl0QzdFO0VBQ0ksa0JBQWtCO0VBQ2xCLFlBQVk7RUFDWix5QnJHQW1CO0VxR0NuQix5QnJHRG1CO0VXYnpCLGEwRmUwQjtFMUZkMUIsYzBGYzBCO0F6THl5dEM1Qjs7QXlMcnl0Q0k7RUFDSSxrQkFBa0I7RUFDbEIsYUFBYTtFQUNiLHlCckdUbUI7RXFHVW5CLCtKQUFpSjtBekx3eXRDeko7O0F5TDV5dENJO0VBU1EsV3BHb01tQjtBckZtbXRDL0I7O0F5TGh6dENJO0VBZVEsVXBHOExtQjtBckZ1bXRDL0I7O0F5TGh5dENJO0VBQ0ksZUFBZTtFQUNmLFFBQVE7RUFDUixTQUFTO0VBQ1QsZUFBZTtFQUNmLHNCQUFzQjtFQUN0QixzQnBHL0JVO0VvR2dDVixvQ3BHdEJVO0VvR3VCVixhcEdpcUJ1QjtFb0docUJ2QixpQkFBOEI7RTVLOUNsQyx3QndFa09pQztBckZnbnRDckM7O0F5TDd5dENJO0VBY1EsY0FBYztFQUNkLFNBQVM7RUFDVCxVQUFVO0VBQ1YsZ0JBQWdCO0VBQ2hCLFdBQVc7QXpMbXl0Q3ZCOztBeUxyenRDSTtFQXNCWSxrQkFBa0I7RWxLMUQ1QixpQytEdUR5QztBdEZ1eXRDL0M7O0F1QnoxdENJO0VrSytCQTtJbEs5QkUsZ0JBQWdCO0V2QjYxdENwQjtBQUNGOztBUTkxdENFO0VpTHlEa0IsV3BHM0NGO0VvRzRDRSx5QnBHbkRDO0FyRjQxdENyQjs7QXlMcjB0Q0k7RUFtQ1EsbUJBQW1CO0VBQ25CLG9CcEcybUI0QjtBckYycnNDeEM7O0F5TDEwdENJO0VBd0NZLGlCQUFpQjtFQUNqQixlQUFlO0VBQ2YsbUJBQW1CO0F6THN5dENuQzs7QXlMaDF0Q0k7RUFnRFEsbUJBQW1CO0VBQ25CLG9CcEc4bEI0QjtFb0c3bEI1QixpQkFBaUI7QXpMb3l0QzdCOztBeUx0MXRDSTtFQXNEWSxrQkFBa0I7RUFDbEIseUJyR2pGVztFcUdrRlgsV3BHakZFO0VvR2tGRixZQUFZO0F6TG95dEM1Qjs7QXlMNzF0Q0k7RUE2RGdCLGdCQUFnQjtFQUNoQixzQm5HaEQrQjtFbUdpRC9CLGNBQWM7RUFDZCxlbkdqRDBCO0VtR2tEMUIsV25HbEQwQjtFbUdtRDFCLGNBQWM7RXRHOUY5QixtQ0FBbUM7RUFDbkMsa0NBQWtDO0FuRm00dEN0Qzs7QVF0NHRDRTtFaUxzR2tCLGFBQWE7QXpMb3l0Q2pDOztBeUw3eHRDSTtFQUNJLGVBQWU7RUFDZixNQUFNO0VBQ04sT0FBTztFQUNQLHNCcEdsR1U7RW9HbUdWLGFwR29sQnVCO0VvR25sQnZCLFlwR3U0QitCO0VVbmdDckMsVzBGNkh3QjtFMUY1SHhCLFkwRjRId0I7QXpMaXl0QzFCOztBMExqNnRDQTs7Ozs7O2lGMUx5NnRDaUY7QTBMNzV0QzdFOztFQUlZLHlCdEdpQlU7QXBGNDR0QzFCOztBMEx0NXRDSTs7RUFHUSxxQnJHNkdZO0FyRjJ5dEN4Qjs7QWlCejJ0Q0k7RXlLbERBOztJQU9ZLGNBQWM7SUFDZCxjQUFjO0UxTDA1dEM1QjtBQUNGOztBMExyNXRDSTtFQUlRLGtCQUFrQjtBMUxxNXRDOUI7O0EwTHo1dENJO0VBU1kscUJBQXFCO0VBQ3JCLGN0R2dJUztFc0cvSFQsa0JBQWtCO0VBQ2xCLFFBQVE7RUFDUixTQUFTO0VBQ1QsZUFBZTtBMUxvNXRDL0I7O0EwTGw2dENJO0VBbUJZLFdBQVc7RUFDWCxzQnJHeENFO0VxR3lDRixjcEc4TDRCO0VvRzdMNUIsZXBHNkw0QjtFb0c1TDVCLHFCQUFnQztFQUNoQyxzQkFBaUM7RUFDakMsOEJ0R2lIUztFdkUxS3JCLHVCd0VvT2dDO0FyRnl1dENwQzs7QTBMNzZ0Q0k7RUFpQ1ksZ0JBQWdCO0VBQ2hCLHNCcEdmbUM7RW9HZ0JuQyxlcEdmOEI7RW9HZ0I5QixjQUFjO0VBQ2QsbUJBQWlFO0VBQ2pFLG9CQUFrRTtFdkc3RDlFLG1DQUFtQztFQUNuQyxrQ0FBa0M7QW5GODh0Q3RDOztBMkw3OXRDQTs7Ozs7OztpRjNMcyt0Q2lGO0EyTHo5dEM3RTtFQUlRLFdBQVc7RUFDWCxhQUFhO0VBQ2IsdUJBQXVCO0VBQ3ZCLFNBQVM7RUFDVCw2QnRHQU07RXNHQ04sb0J0RzRHTztFc0czR1Asd0JBQWtDO0VBQ2xDLHFDdEdHTTtBckZxOXRDbEI7O0EyTG4rdENJO0VBZVksdUJBQWlDO0VBQ2pDLFdBQVc7QTNMdzl0QzNCOztBMkxsOXRDSTtFQUNJLGtCQUFrQjtFQUNsQixZQUFZO0VBQ1osYUFBYTtFQUNiLGVBQWU7RUFDZiwyQnRHKzJCNkI7QXJGc21zQ3JDOztBMkxsOXRDUTtFQUNJLFdBQVc7QTNMcTl0Q3ZCOztBMkw5OXRDSTtFQWNRLGdCQUFnQjtBM0xvOXRDNUI7O0EyTGwrdENJO0U5S0FBLGlDd0VvTWlDO0V4RW5NakMsb0N3RW1NaUM7QXJGbXl0Q3JDOztBMkx2K3RDSTtFOUtkQSxrQ3dFa05pQztFeEVqTmpDLHFDd0VpTmlDO0FyRnd5dENyQzs7QTJMNSt0Q0k7RUE0QlksaUJ0R29LZTtBckZnenRDL0I7O0FpQjE4dENJO0UwS3RDQTtJQWtDUSxXQUFXO0lBQ1gsa0JBQWtCO0lBQ2xCLGNBQWM7RTNMbTl0Q3hCO0UyTHYvdENFO0lBdUNZLFdBQVc7RTNMbTl0Q3pCO0FBQ0Y7O0EyTDk4dENJO0VBQ0ksZUFBZTtFQUNmLE1BQU07RUFDTixPQUFPO0VBQ1AsWUFBWTtFQUNaLFdBQVc7RUFDWCxzQnRHM0RVO0VzRzREVixhdEcybkJ1QjtFc0cxbkJ2QixZdEc4NkIrQjtBckZtaXNDdkM7O0EyTDc4dENJO0VBQ0ksa0JBQWtCO0VBQ2xCLHNCdEc3RVU7RXNHOEVWLGNBQWM7RUFDZCxhdEdtbkJ1QjtFc0dsbkJ2QixpQkFBOEI7RUFDOUIsZ0JBQWdCO0VBQ2hCLG1CdEdra0JvQztFc0dqa0JwQyx5QkFBb0I7T0FBcEIsb0JBQW9CO0U5Sy9GeEIsd0J3RWtPaUM7RW1Cdk4vQiwrQ25CV1k7QXJGMmh1Q2xCOztBMkwxOXRDSTtFQWNRLG9CQUFtQjtFQUNuQixxQkFBb0I7RUFDcEIsbUJBQWtCO0EzTGc5dEM5Qjs7QTJMaCt0Q0k7RUFxQlEsb0J0R3drQjRCO0VzR3ZrQjVCLFd0R3hGTTtFc0d5Rk4sNkJBQTZCO0VBQzdCLFNBQVM7RUFDVCxjQUFjO0VBQ2QsVUFBVTtFQUNWLFdBQVc7RUFDWCxnQkFBZ0I7RUFDaEIsZUFBZTtFcEtuSHJCLGlDK0R1RHlDO0F0RjRndUMvQzs7QXVCOWp1Q0k7RW9LaUZBO0lwS2hGRSxnQkFBZ0I7RXZCa2t1Q3BCO0FBQ0Y7O0EyTG4vdENJO0VBa0NZLGV0RzRqQnVCO0FyRnk1c0N2Qzs7QVFua3VDRTtFbUxtSGMsV3RHekdFO0VzRzBHRix5QnRHakhLO0FyRnFrdUNyQjs7QTJMNS90Q0k7RUE2Q1ksV3RHeEhFO0VzR3lIRix5QnZHMUhXO0FwRjZrdUMzQjs7QTJMamd1Q0k7RUFvRFEsZUFBZTtFQUNmLFFBQVE7RUFDUixTQUFTO0VBQ1QsdUJBQW1EO0VBQ25ELG9CdEdraEI4QjtFc0dqaEI5QixxQnRHaWhCOEI7QXJGZzhzQzFDOztBMkwxZ3VDSTtFQTZEWSxzQkFBbUQ7QTNMaTl0Q25FOztBMkw5Z3VDSTtFQWtFWSx1QkFBbUQ7QTNMZzl0Q25FOztBMkxsaHVDSTtFQXVFWSxzQkFBbUQ7QTNMKzh0Q25FOztBMkx0aHVDSTtFQThFUSwrQkFBbUI7T0FBbkIsbUJBQW1CO0EzTDY4dEMvQjs7QTJMM2h1Q0k7RUFtRlEsZXJHOFlpQztFcUc3WWpDLG9CQUFlO09BQWYsZUFBZTtBM0w0OHRDM0I7O0EyTGhpdUNJO0VBeUZRLGVyR3lZaUM7RXFHeFlqQyxvQkFBZTtPQUFmLGVBQWU7QTNMMjh0QzNCOztBMkxyaXVDSTtFQStGUSxjckdvWWdDO0VxR25ZaEMsb0JBQWU7T0FBZixlQUFlO0EzTDA4dEMzQjs7QTRMdG91Q0E7Ozs7Ozs7aUY1TCtvdUNpRjtBNExsb3VDN0U7O0VBTVksMEJ4R0hXO0V3R0lYLG9CdkcrTWU7QXJGaTd0Qy9COztBNEx2b3VDSTs7RUFZWSx5QnhHUVU7RXdHUFYsc0J4R1VXO0FwRnNudUMzQjs7QTRMN291Q0k7O0VBa0JZLHlCeEdsQlU7RXdHbUJWLHNCeEdoQlc7QXBGZ3B1QzNCOztBNExucHVDSTs7RUF3QlkseUJ4R01VO0V3R0xWLHNCeEdRVztBcEZ3bnVDM0I7O0E0THpwdUNJOztFQThCWSx5QnhHcEJTO0V3R3FCVCxzQnhHbEJVO0FwRmtwdUMxQjs7QTZMNXF1Q0E7Ozs7OztpRjdMb3J1Q2lGO0E2THhxdUM3RTs7RUFNWSxtQkFBbUI7QTdMc3F1Q25DOztBNkw1cXVDSTtFQVlRLGtCQUFrQjtFQUNsQixRQUFRO0VBQ1IsU0FBUztFQUNULGNBQWM7RUFDZCxlQUFlO0VBQ2Ysb0J4R3FHTztFd0dwR1AscUJBQXFCO0VBQ3JCLFVBQVU7RUFFVixzQnhHWk07RXdHYU4sa0JBQWtCO0VBQ2xCLGtCQUFrQjtFQUNsQiwwQ3hHbkJNO0FyRnNydUNsQjs7QTZMM3J1Q0k7O0VBOEJRLHNCeEd6Qk07QXJGMnJ1Q2xCOztBNkxoc3VDSTtFQWlDUSxVQUFVO0E3TG1xdUN0Qjs7QThMaHR1Q0E7Ozs7Ozs7aUY5THl0dUNpRjtBOEw1c3VDN0U7O0VBTW9CLHNCekdvSEE7QXJGc2x1Q3hCOztBOExodHVDSTs7RUFVb0Isa0JBQWtCO0VBQ2xCLGVBQWU7RUFDZixtQkFBbUI7QTlMMnN1QzNDOztBOEx2dHVDSTs7RUFld0IsYUFBYTtBOUw2c3VDekM7O0E4THBzdUNJOztFQUtnQixrQkFBa0I7RUFDbEIsZUFBZTtBOUxvc3VDbkM7O0E4THpydUNJOzs7O0VBSUksZ0JBQWdCO0VBQ2hCLHNCeEdIMkM7RXdHSTNDLHFCQUFxQjtFQUNyQixleEdKc0M7RXdHS3RDLFd4R0xzQztFd0dNdEMsY0FBYztFQUNkLGtCQUFrQjtFQUNsQixnQkFBOEM7RUFDOUMsc0JBQXNCO0UzR3BEMUIsbUNBQW1DO0VBQ25DLGtDQUFrQztBbkZpdnVDdEM7O0E4TDNydUNJOzs7O0VBSUksZ0JBQWdCO0E5TDhydUN4Qjs7QThMNXJ1Q0k7RUFDSSxhQUFhO0E5TCtydUNyQjs7QThMdnJ1Q0k7RUFNZ0IsNkJBQTZCO0E5THFydUNqRDs7QThMM3J1Q0k7RUFVZ0IsbUJBQW1CO0VBQ25CLGdCekc2TFk7RXlHNUxaLHFCQUFtQztBOUxxcnVDdkQ7O0E4TGpzdUNJO0VBZ0JnQixtQkFBbUI7RUFDbkIsaUJBQWlCO0E5THFydUNyQzs7QThMdHN1Q0k7RUF1QlksbUJBQW1CO0VBQ25CLGtCQUFrQjtBOUxtcnVDbEM7O0E4TDNzdUNJO0VBMkJnQixjQUFjO0VBQ2QsbUJBQW1CO0VBQ25CLFdBQVc7RUFDWCxnQkFBZ0I7RUFDaEIsU0FBUztFQUNULFVBQVU7QTlMb3J1QzlCOztBOExwdHVDSTtFQW1Db0Isa0JBQWtCO0E5THFydUMxQzs7QStMNXl1Q0E7Ozs7OztnRi9Mb3p1Q2dGO0ErTHh5dUMvRTtFQUNDLGF6R29GNkM7QXRGc3R1Qy9DOztBK0x0eXVDQztFQUNDLG9CMUdpUW9DO0FyRndpdUN0Qzs7QStMMXl1Q0M7RUFJRSxvQjFHOFBtQztFMEc3UG5DLGdCMUdxUTZCO0FyRnFpdUNoQzs7QWdNaDB1Q0E7Ozs7OztnRmhNdzB1Q2dGO0FnTTV6dUM1RTtFQUNJLGExR29GdUM7QXRGMHV1Qy9DOztBZ00xenVDSTtFQUNJLGtCQUFrQjtFQUNsQixhQUFhO0VBQ2Isc0IzR09VO0UyR05WLFczR0pVO0UyR0tWLHVCM0drNkI4QjtFeEVuN0JsQyx3QndFa09pQztBckY2bXVDckM7O0FnTXp6dUNJOztFQUVJLGtCQUFrQjtFQUNsQixhM0d5M0I2QjtFMkd4M0I3QixlQUFlO0VBQ2YsWUFBWTtFQUNaLGVBQWU7RUFDZixlMUd1QnNDO0UwR3RCdEMsZ0IzR3VQd0I7RTJHdFB4QixxQkFBcUI7RUFDckIseUI1RzBJaUI7RTRHeklqQixrQkFBa0I7RW5MakN0Qix3QndFa09pQztFOURqTy9CLGlDK0R1RHlDO0F0RnV5dUMvQzs7QXVCejF1Q0k7RXlLZ0JBOztJektmRSxnQkFBZ0I7RXZCODF1Q3BCO0FBQ0Y7O0FRLzF1Q0U7O0V3TGdDVSx5QjVHb0lhO0FwRmdzdUN6Qjs7QWdNajB1Q0k7RUFDSSxhQUFhO0FoTW8wdUNyQjs7QWdNbDB1Q0k7RUFDSSxXQUFXO0FoTXEwdUNuQjs7QWlNeDN1Q0E7Ozs7OztnRmpNZzR1Q2dGO0FpTXAzdUM1RTtFQUNJLGtCQUFrQjtFQUNsQixXQUFXO0FqTXMzdUNuQjs7QWlNeDN1Q0k7RUFNUSxrQkFBa0I7RUFDbEIsbUJBQW1CO0VBQ25CLGVBQWU7QWpNczN1QzNCOztBaUJqMHVDSTtFZ0w3REE7SUFhUSxrQkFBa0I7SUFDbEIsbUJBQW1CO0lBQ25CLGVBQWU7RWpNczN1Q3pCO0FBQ0Y7O0FpTWwzdUNJO0VBQ0ksa0JBQWtCO0VBQ2xCLGNBQWM7RUFDZCxXQUFXO0FqTXEzdUNuQjs7QWlNeDN1Q0k7RUFXUSxrQjNHa0RxQztBdEYrenVDakQ7O0FpTTUydUNJO0VBQ0ksYTNHMkN1QztBdEZvMHVDL0M7O0FpTTMydUNJO0VBQ0ksV0FBVztFQUNYLGEzR3FDdUM7RTJHcEN2QyxtQjNHc0MwQztBdEZ3MHVDbEQ7O0FrTXQ2dUNBOzs7Ozs7Z0ZsTTg2dUNnRjtBa01sNnVDNUU7RUFJUSxrQjdHcVE4QztBckY0cHVDMUQ7O0FrTXI2dUNJOztFQVVRLFVBQVU7RUFDVixZN0dBTTtBckZnNnVDbEI7O0FrTTM2dUNJO0VBY1EsMkJBQTJCO0FsTWk2dUN2Qzs7QWtNLzZ1Q0k7RUFtQlEseUJBQWlCO0tBQWpCLHNCQUFpQjtNQUFqQixxQkFBaUI7VUFBakIsaUJBQWlCO0FsTWc2dUM3Qjs7QWtNdDV1Q0k7Ozs7O0VBS0ksMkJBQTJCO0FsTXk1dUNuQzs7QWtNcjV1Q0k7RUFFUSxZN0duQ007QXJGMDd1Q2xCOztBa016NXVDSTtFQU1RLFU3R3ZDTTtFNkd3Q04sb0I3RzBOMEI7QXJGNnJ1Q3RDOztBa01sNXVDSTtFQUVRLFk3RzFDTTtBckY4N3VDbEI7O0FrTXQ1dUNJO0VBTVEsVTdHOUNNO0FyRms4dUNsQjs7QWtNajV1Q0k7O0VBRUkscUJBQXFCO0FsTW81dUM3Qjs7QWtNaDV1Q0k7RUFDSSxnQjdHOE13QjtBckZxc3VDaEM7O0FrTXA1dUNJO0VBSVEsVTdHekRNO0U2RzBETixjQUFjO0FsTW81dUMxQjs7QWtNLzR1Q0k7RUFDSSxpQkFBaUI7QWxNazV1Q3pCOztBa005NHVDSTtFQUNJLGVBQWU7RUFDZixZQUFZO0FsTWk1dUNwQjs7QWtNNzR1Q0k7RUFDSSxtQkFBbUI7RUFDbkIsWTdHbkZVO0FyRm0rdUNsQjs7QWtNOTR1Q0k7RUFDSSxVN0d0RlU7RTZHdUZWLGlCQUFpQjtBbE1pNXVDekI7O0FrTTc0dUNJO0VBQ0ksZUFBZTtBbE1nNXVDdkI7O0FrTWo1dUNJO0VBSVEsa0JBQWtCO0FsTWk1dUM5Qjs7QWtNNTR1Q0k7RUFDSSxvQjdHNExpRDtBckZtdHVDekQ7O0FrTTc0dUNJO0VBRVEsVTdHdEdNO0U2R3VHTixZQUFZO0FsTSs0dUN4Qjs7QWtNbDV1Q0k7RUFPUSxVN0dyR007RTZHc0dOLG9CN0drTDZDO0FyRjZ0dUN6RDs7QWtNdjV1Q0k7O0VBYVEsYTdHbEhTO0FyRmlndkNyQjs7QWtNNTR1Q0k7RUFDSSxVN0cvR1U7RTZHZ0hWLG9CN0dtS3VEO0FyRjR1dUMvRDs7QWtNMzR1Q0k7RUFFUSxVQUFVO0FsTTY0dUN0Qjs7QWtNLzR1Q0k7O0VBTVksaUJBQWlCO0FsTTg0dUNqQzs7QWtNcDV1Q0k7RUFXUSx1QkFBdUI7QWxNNjR1Q25DOztBa014NHVDSTtFQUNJLGE5R2VpQjtFOEdkakIsZ0JBQWdCO0FsTTI0dUN4Qjs7QWtNdjR1Q0k7RUFDSSxnQkFBZ0I7QWxNMDR1Q3hCOztBa010NHVDSTtFQUNJLGtCN0cyR2tEO0FyRjh4dUMxRDs7QWtNdjR1Q0k7RUFDSSxVN0c1SlU7RTZHNkpWLGlCQUFpQjtFQUNqQixlQUFlO0VBQ2YsYUFBYTtBbE0wNHVDckI7O0FrTXQ0dUNJO0VBQ0kseUJBQXlCO0VBQ3pCLGlCQUFpQjtFQUNqQixzQjdHdEtVO0U2R3VLVixpQkFBaUI7RUFDakIsYUFBYTtBbE15NHVDckI7O0FrTTk0dUNJO0VBUVEsc0I3R2xLTTtFNkdtS04sdUI1TGtvQitCO0U0TGpvQi9CLGtCQUFrQjtFQUNsQixXN0c5S007RTZHK0tOLHNCN0d0S007RTZHdUtOLGdCN0cyRm9CO0FyRit5dUNoQzs7QWtNdjV1Q0k7RUFpQlEsdUI1TDBuQitCO0U0THpuQi9CLHNCN0dyTE07RTZHc0xOLHNCN0dsTE07QXJGNGp2Q2xCOztBa003NXVDSTtFQXNCWSxxQkFBcUI7RUFDckIsc0I3R3BFUTtFVXBJdEIsYVY0K0JvQztFVTMrQnBDLGNWMitCb0M7QXJGeW10Q3RDOztBa01wNnVDSTtFQTRCWSxpQkFBaUI7QWxNNDR1Q2pDOztBbU01bHZDQTs7Ozs7O2dGbk1vbXZDZ0Y7QW1NcGx2QzVFO0VBSVEsVUFBVTtFQUNWLFk5R0VNO0U4R0ROLDJCQUEyQjtBbk1tbHZDdkM7O0FtTXpsdkNJO0VBV1EsZTlHUlM7RThHU1QsMkJBQTJCO0FuTWtsdkN2Qzs7QW1NOWx2Q0k7O0VBbUJZLGtCOUdrUDBDO0U4R2pQMUMsVTlHVkU7QXJGMGx2Q2xCOztBbU0xa3ZDSTs7RUFHUSxZOUd2Qk07QXJGbW12Q2xCOztBbU0va3ZDSTtFQVFRLFU5RzNCTTtBckZzbXZDbEI7O0FtTW5sdkNJO0VBV1ksVTlHOUJFO0FyRjBtdkNsQjs7QW1NdGt2Q0k7O0VBR1EsWTlHeENNO0FyRmdudkNsQjs7QW1NM2t2Q0k7RUFRUSxVOUd6Q007QXJGZ252Q2xCOztBbU0va3ZDSTtFQVdZLFU5RzVDRTtBckZvbnZDbEI7O0FtTWxrdkNJO0VBSVEsWUFBWTtBbk1ra3ZDeEI7O0FtTXRrdkNJO0VBU1EsWTlHakVNO0FyRmtvdkNsQjs7QW1NMWt2Q0k7RUFjUSxVOUduRU07QXJGbW92Q2xCOztBbU05a3ZDSTtFQWlCWSxVOUd0RUU7QXJGdW92Q2xCOztBbU1sanZDSTtFQUNJLGtCQUFrQjtFQUNsQix1QjlHMDBCOEI7RThHejBCOUIsc0I5R3BGVTtFOEdxRlYsVzlHL0ZVO0U4R2dHVix1QjlHMjBCOEI7RThHMTBCOUIsb0I5R2lLOEI7RThHaEs5QixhOUdrbUJ1QjtFeEVodEIzQix3QndFa09pQztBckZrOHVDckM7O0FtTTdqdkNJO0VBWVEsa0JBQWtCO0VBQ2xCLFFBQVE7RUFDUixTQUFTO0VBQ1QseUJBQXlCO0VBQ3pCLG1CQUFtQjtBbk1xanZDL0I7O0FtTWhqdkNJO0VBRVEsZ0I5R3l6QjBCO0U4R3h6QjFCLFNBQVM7RUFDVCxxQjlHdXpCMEI7RThHdHpCMUIsK0JBQTJEO0VBQzNELHNCOUc1R007QXJGOHB2Q2xCOztBbU14anZDSTtFQVNRLFFBQVE7RUFDUixvQjlHaXpCMEI7RThHaHpCMUI7RUFDQSxjOUcreUIwQjtFOEc5eUIxQix1Q0FBaUY7RUFDakYsd0I5R3BITTtFOEdxSE47QW5NbWp2Q1o7O0FtTWxrdkNJO0VBa0JRLFFBQVE7RUFDUixvQjlHd3lCMEI7RThHdnlCMUI7RUFDQSxlOUdzeUIwQjtFOEdyeUIxQix1QzlHcXlCMEI7RThHcHlCMUIsdUI5RzdITTtFOEc4SE47QW5Nb2p2Q1o7O0FtTTVrdkNJO0VBMkJRLE1BQU07RUFDTixTQUFTO0VBQ1QscUI5Rzh4QjBCO0U4Rzd4QjFCLCtCOUc2eEIwQjtFOEc1eEIxQix5QjlHcklNO0FyRjBydkNsQjs7QW1NM2l2Q0k7RUFDSSxrQkFBa0I7RUFDbEIsa0JBQWtCO0VBQ2xCLG1CQUFtQjtFQUNuQixzQjlHbkpVO0U4R29KVixXOUc5SlU7RThHK0pWLHVCOUd3d0I4QjtFOEd2d0I5QixhQUFhO0V0TDVLakIsd0J3RWtPaUM7QXJGeS91Q3JDOztBbU1yaXZDSTtFQUNJLFVBQVU7QW5Nd2l2Q2xCOztBbU1yaXZDUTtFQUNJLGlCQUFpQjtBbk13aXZDN0I7O0FtTXBpdkNRO0VBQ0ksbUJBQW1CO0FuTXVpdkMvQjs7QW1Nbml2Q1E7RUFDSSxpQkFBaUI7QW5Nc2l2QzdCOztBbU1oaXZDSTtFQUNJLFVBQVU7RUFDVixlQUFlO0FuTW1pdkN2Qjs7QW1NaGl2Q1E7RUFDSSxpQkFBaUI7QW5NbWl2QzdCOztBbU0vaHZDUTtFQUNJLG1CQUFtQjtBbk1raXZDL0I7O0FtTTlodkNRO0VBQ0ksaUJBQWlCO0FuTWlpdkM3Qjs7QW1Ndmh2Q0k7RUFHWSxpQkFBaUI7RUFDakIsWTlHMU5FO0U4RzJORiwyQkFBMkI7QW5Nd2h2QzNDOztBbU03aHZDSTtFQVNZLFU5R3pORTtFOEcwTkYsWUFBWTtBbk13aHZDNUI7O0FtTWpodkNJO0VBRVEscUJBQXFCO0VBQ3JCLGlCQUFpQjtFQUNqQixZOUczT007RThHNE9OLDJCQUEyQjtBbk1taHZDdkM7O0FtTXhodkNJO0VBU1EsZUFBZTtBbk1taHZDM0I7O0FtTXpndkNJO0VBQ0ksVUFBVTtFQUNWLG1CQUFtQjtBbk00Z3ZDM0I7O0FtTS8vdUNJO0VBSVEsWTlHMVFNO0U4RzJRTixpQkFBaUI7RUFDakIsMkJBQTJCO0FuTSsvdUN2Qzs7QW1Ncmd2Q0k7RUFXUSxVOUdqUk07RThHa1JOLGtCOUdwQjhDO0FyRmtodkMxRDs7QW1Nei91Q0k7RUFDSSxpQkFBaUI7RUFDakIsMkJBQTJCO0FuTTQvdUNuQzs7QW1NeC91Q0k7RUFDSSxvQjlHbEM4QjtFOEdtQzlCLGdCOUcxQndCO0FyRnFodkNoQzs7QW1Ndi91Q0k7RUFDSSxVOUdwU1U7QXJGOHh2Q2xCOztBbU1qL3VDSTtFQUNJLDZCL0d4SmlCO0FwRjRvdkN6Qjs7QW1NbC91Q0k7RUFDSSw2Qi9HM0ppQjtBcEZncHZDekI7O0FtTW4vdUNJO0VBQ0ksYS9HOUppQjtBcEZvcHZDekI7O0FtTWwvdUNJO0VBQ0ksNkIvR2xLaUI7QXBGdXB2Q3pCOztBbU1uL3VDSTtFQUNJLFU5R2xVVTtBckZ3enZDbEI7O0FtTWwvdUNJO0VBQ0ksZS9HeEtpQjtBcEY2cHZDekI7O0FtTTUrdUNJO0VBQ0ksNkIvR3JUbUI7QXBGb3l2QzNCOztBbU03K3VDSTtFQUNJLDZCL0d4VG1CO0FwRnd5dkMzQjs7QW1NOSt1Q0k7RUFDSSxhL0czVG1CO0FwRjR5dkMzQjs7QW1NNyt1Q0k7RUFDSSw0Qi9HOVRtQjtBcEY4eXZDM0I7O0FtTTkrdUNJO0VBQ0ksVTlHL1ZVO0FyRmcxdkNsQjs7QW1NNyt1Q0k7RUFDSSxlL0dwVW1CO0FwRm96dkMzQjs7QW1Ndit1Q0k7RUFDSSw4Qi9HNVZtQjtBcEZzMHZDM0I7O0FtTXgrdUNJO0VBQ0ksK0IvRy9WbUI7QXBGMDB2QzNCOztBbU16K3VDSTtFQUNJLGEvR2xXbUI7QXBGODB2QzNCOztBbU14K3VDSTtFQUNJLDRCL0dyV21CO0FwRmcxdkMzQjs7QW1Neit1Q0k7RUFDSSxVOUc1WFU7QXJGdzJ2Q2xCOztBbU14K3VDSTtFQUNJLGUvRzNXbUI7QXBGczF2QzNCOztBbU1sK3VDSTtFQUNJLGVBQWdDO0VBQ2hDLGtCQUFrQjtFQUNsQixTQUFTO0VBQ1Qsa0I3R3RXc0M7QXRGMjB2QzlDOztBbU05OXVDSTtFQUNJLHNCQUFzQjtFQUN0QixVQUFVO0VBQ1Ysa0I5R3BKa0Q7RThHcUpsRCxrQkFBa0I7QW5NaSt1QzFCOztBbU1yK3VDSTtFQU9RLDRCQUE0QjtFQUM1QixtQ0FBbUM7RUFDbkMscUJBQXFCO0FuTWsrdUNqQzs7QW9NajV2Q0E7Ozs7OztpRnBNeTV2Q2lGO0FvTXg0dkM3RTtFQUNJLGtCQUFrQjtBcE0wNHZDMUI7O0FvTTM0dkNJO0VBS1Esa0JBQWtCO0VBQ2xCLFFBQVE7RUFDUixTQUFTO0VBQ1QsbUJBQWlDO0VBQ2pDLG9CQUFrQztBcE0wNHZDOUM7O0FvTWg0dkNJO0VBQ0ksbUI5R2t0QnNDO0F0RmlydUM5Qzs7QW9NcDR2Q0k7RUFLUSxtQjlHK3NCa0M7QXRGb3J1QzlDOztBb005M3ZDSTtFQUVRLGlCOUcwc0I4QjtFOEd6c0I5QixvQjlHeXNCOEI7RThHeHNCOUIsMkMvR3ZCTTtBckZ1NXZDbEI7O0FvTTczdkNZO0VBQ0ksNkMvR3JDRTtBckZxNnZDbEI7O0FvTXIzdkNJO0VBQ0ksYUFBYTtFQUNiLGdCQUFnQjtFQUNoQixnQkFBZ0I7RUFDaEIsa0JBQWtCO0VBQ2xCLFMvRzZKdUI7RStHNUp2QixXL0c0SnVCO0FyRjR0dkMvQjs7QW9NcDN2Q0k7RUFDSSxrQkFBa0I7RUFDbEIsa0IvR3dNa0Q7RStHdk1sRCxtQi9Hc04yQjtFK0dyTjNCLGdCL0c2TXdCO0UrRzVNeEIseUJBQXlCO0VBQ3pCLGtCQUFrQjtFQUNsQixvQkFBb0I7RUFDcEIsZ0JBQWdCO0VBQ2hCLGFBQWE7RUFDYixlQUFlO0VBQ2YseUJoSGxEbUI7RWdIbURuQixXL0d0RVU7RStHdUVWLFdBQVc7RUFDWCx3QkFBd0I7RTVGekUxQix3Q25CV1k7QXJGczd2Q2xCOztBcU1qOXZDQTs7Ozs7O2lGck15OXZDaUY7QXFNNzh2QzdFO0VBSVEsV0FBVztBck00OHZDdkI7O0FpQmg2dkNJO0VvTGhEQTtJQVFZLFVBQVU7SUFDVixXQUFXO0lBQ1gsZ0IvR21yQjJCO0krR2xyQjNCLFdBQVc7RXJNNjh2Q3pCO0FBQ0Y7O0FpQno2dkNJO0VvTDFCQTtJQUdZLFVBQVU7SUFDVixrQi9Hc3FCNkI7RXRGK3h1QzNDO0FBQ0Y7O0FpQmg3dkNJO0VvTGhCQTtJQUdZLFVBQVU7SUFDVixtQi9HMnBCOEI7RXRGdXl1QzVDO0FBQ0Y7O0FpQnY3dkNJO0VvTE5BO0lBR1ksVUFBVTtJQUNWLG1CL0dncEI4QjtFdEYreXVDNUM7QUFDRjs7QXNNMS92Q0E7Ozs7OztpRnRNa2d3Q2lGO0FzTXQvdkNoRjtFQUNDLG1CQUE4QjtFQUM5QixjQUFjO0F0TXcvdkNoQjs7QXNNcC92Q0M7RUFDQyxvQmpIMlI2RDtFaUgxUjdELHFCQUE4QjtFQUM5QixjQUFjO0F0TXUvdkNoQjs7QXVNNWd3Q0E7Ozs7OztpRnZNb2h3Q2lGO0F1TXhnd0M3RTtFQUNJLG1CQUFtQjtFQUNuQixnQmxIK0tRO0FyRjIxdkNoQjs7QXVNNWd3Q0k7RUFNUSxlQUFlO0VoTFpyQixpQytEdUR5QztBdEZnK3ZDL0M7O0F1Qmxod0NJO0VnTENBO0loTEFFLGdCQUFnQjtFdkJzaHdDcEI7QUFDRjs7QXVNdmh3Q0k7RUFXWSx5QmxITEs7QXJGcWh3Q3JCOztBdU0zaHdDSTtFQWlCZ0IsZUFBZTtBdk04Z3dDbkM7O0F1TS9od0NJO0VBdUJZLGdCbEgwUGdCO0FyRmt4dkNoQzs7QXVNbml3Q0k7RUEyQmdCLHNCbEh0QkY7QXJGa2l3Q2xCOztBdU1yZ3dDSTtFQUNJLGNBQThDO0F2TXdnd0N0RDs7QXVNcGd3Q0k7O0VBRUksY0FBeUM7QXZNdWd3Q2pEOztBdU1uZ3dDSTtFQUNJLGlCQUErSTtBdk1zZ3dDdko7O0F1TWxnd0NJO0VBQ0ksZUFBZTtBdk1xZ3dDdkI7O0FpQjMvdkNJO0VzTE5BO0lBRVEsY0FBYztJQUNkLGdCQUFnQjtJQUNoQix1QkFBdUI7RXZNb2d3Q2pDO0FBQ0Y7O0F1TWhnd0NJO0U1SHhFRixnQkFBZ0I7RUFDaEIsdUJBQXVCO0VBQ3ZCLG1CQUFtQjtBM0U0a3dDckI7O0F1TWpnd0NJO0VBQ0ksaUJBQWlCO0VBQ2pCLFdBQVc7QXZNb2d3Q25COztBd012bHdDQTs7Ozs7O2lGeE0rbHdDaUY7QXdNbmx3Q2hGO0VBQ0Msa0JBQWtCO0F4TXFsd0NwQjs7QXdNdGx3Q0M7RUFLRSxrQkFBa0I7RUFDbEIsYW5IcTRCa0M7RW1IcDRCbEMsY25IbzRCa0M7RW1IbjRCbEMsV0FBVztFQUNYLDBCQUEwQjtBeE1xbHdDN0I7O0F3TTlsd0NDO0VBYUcsdURBQW9EO0F4TXFsd0N4RDs7QWlCbGp3Q0k7RXVMaERIO0lBa0JHLGVuSG9HZTtJbUhuR2YsZUFBZTtFeE1xbHdDakI7QUFDRjs7QXdNem13Q0M7RUF5QkUsNkNuSFZlO0FyRjhsd0NsQjs7QXdNL2t3Q0M7RUFDQyw0QkFBNEI7RUFDNUIsNEJBQTRCO0VBQzVCLHNCQUFzQjtFQUN0QixnQmxIbXJCNEM7QXRGKzV1QzlDOztBd005a3dDQztFQUNDLHNCbkhsQ2dCO0VtSG1DaEIsNENuSHpCZ0I7RVV4QmhCLGNUMnRCMkM7RVMxdEIzQyxlVDB0QjJDO0F0Rnk2dUM3Qzs7QXlNdm93Q0E7Ozs7OztpRnpNK293Q2lGO0F5TW5vd0M3RTtFQUNJLHVEQUEyQjtFQUMzQixzQkFBc0I7QXpNcW93QzlCOztBeU1qb3dDSTtFQUNJLFdBQVc7QXpNb293Q25COztBeU1yb3dDSTtFQU9nQixnQ3BIazRCNEQ7QXJGZ3d1Q2hGOztBeU16b3dDSTtFQVVnQixpQ3BIKzNCNEQ7QXJGb3d1Q2hGOztBaUJubXdDSTtFd0wxQ0E7SUFpQlEsWW5INnFCK0I7RXRGbzl1Q3pDO0FBQ0Y7O0EwTXJxd0NBOzs7Ozs7aUYxTTZxd0NpRjtBME1qcXdDaEY7RUFDQyxrQkFBa0I7QTFNbXF3Q3BCOztBME1wcXdDQztFQU1FLFdBQVc7RUFDWCxrQkFBa0I7RUFDbEIsU0FBUztFQUNULGlCcEhrcUJrRDtFb0hqcUJsRCxzQnJIQWU7RXFIQ2YsVUFBVTtFM0dwQlgsVTJHcUJ1QztFM0dwQnZDLFcyR29CdUM7RTdMbkJyQyxrQndFc08yQjtBckZpOXZDL0I7O0EwTWhyd0NDO0VBa0JFLE1BQU07QTFNa3F3Q1Q7O0EwTXByd0NDO0VBdUJFLFNBQVM7QTFNaXF3Q1o7O0EwTTVwd0NDO0VBQ0Msa0JBQWtCO0VBQ2xCLHFCQUEwQjtFQUMxQixxQkFBeUI7RUFDekIsbUJBQW1CO0ExTStwd0NyQjs7QTBNbnF3Q0M7RUFRRSxXQUFXO0VBQ1gsa0JBQWtCO0VBQ2xCLE1BQU07RUFDTixTQUFTO0VBQ1QsaUJBQXVDO0VBQ3ZDLHNCckgvQmU7RXFIZ0NmLFlBQVk7RUFDWixVcEhnb0JrRDtFb0gvbkJsRCxXQUFXO0ExTStwd0NkOztBME0xcHdDQztFQUNDLGtCQUFrQjtBMU02cHdDcEI7O0EwTXpwd0NDO0VBQ0Msa0JBQWtCO0VBQ2xCLHlCckh5RnFCO0VxSHhGckIsa0JBQWtCO0VBQ2xCLFVBQVU7RUFDVixvQnJIMkRpQjtFcUgxRGpCLHVCckgwRGlCO0VxSHpEakIsc0JySHlEaUI7QXJGbW13Q25COztBME1ucXdDQztFQVlFLFdBQVc7RUFDWCxrQkFBa0I7RUFDbEIsU0FBUztFQUNULGlCcEhzbUJrRDtFb0hybUJsRCxzQnJINURlO0VxSDZEZixVQUFVO0UzR2hGWCxVMkdpRnVDO0UzR2hGdkMsVzJHZ0Z1QztFN0wvRXJDLGtCd0VzTzJCO0FyRnNnd0MvQjs7QTBNL3F3Q0M7RUF3QkUsTUFBTTtBMU0ycHdDVDs7QTBNbnJ3Q0M7RUE2QkUsU0FBUztBMU0wcHdDWjs7QTBNdHB3Q0U7RUFDQyxzQnJIbkZlO0FyRjR1d0NsQjs7QTBNcHB3Q0M7RUFDQyxrQkFBa0I7RUFDbEIsb0JySHVCaUI7RXFIdEJqQix1QnJIc0JpQjtFcUhyQmpCLHlCckhnRHFCO0VxSC9DckIsa0JBQWtCO0VBQ2xCLHNCckhtQmlCO0FyRm9vd0NuQjs7QTBNN3B3Q0M7RUFXRSxXQUFXO0VBQ1gsa0JBQWtCO0VBQ2xCLFNBQVM7RUFDVCxpQnBIZ2tCa0Q7RW9IL2pCbEQsc0JySGxHZTtFVW5CaEIsVTJHc0h1QztFM0dySHZDLFcyR3FIdUM7RTdMcEhyQyxrQndFc08yQjtBckZzaXdDL0I7O0EwTXhxd0NDO0VBc0JFLE1BQU07QTFNc3B3Q1Q7O0EwTTVxd0NDO0VBMkJFLFNBQVM7QTFNcXB3Q1o7O0EwTWpwd0NFO0VBQ0Msc0JySHhIZTtBckY0d3dDbEI7O0FpQmp1d0NJO0V5TDZDSDtJQXVDRyxhQUFhO0UxTWtwd0NmO0FBQ0Y7O0EwTTdvd0NDO0VBQ0MsMkJBQTJCO0VBQzNCLHNCckh2SWdCO0VxSHdJaEIseUJySElxQjtFVTFKckIsV1RtckJxQztFU2xyQnJDLFlUa3JCcUM7RXpFanJCbkMsa0J3RXNPMkI7QXJGaWt3Qy9COztBME05b3dDRTtFQUNDLGtCckg5SWU7QXJGK3h3Q2xCOztBME0xcHdDQztFQWNFLFlBQVk7RUFDWixhQUFhO0VBQ1YsbUJBQW1CO0VBQ25CLHVCQUF1QjtFQUMxQixnQ0FBaUU7RTdMbktoRSxrQndFc08yQjtBckY4a3dDL0I7O0EwTW5xd0NDO0VBdUJHLGdCQUFnQjtBMU1ncHdDcEI7O0EwTXZxd0NDO0VBNEJHLE1BQU07QTFNK293Q1Y7O0EwTTNxd0NDO0UzR25KQyxhMkdxTDhFO0UzR3BMOUUsYzJHb0w4RTtFN0xuTDVFLGtCd0VzTzJCO0FyRjRsd0MvQjs7QWlCM3d3Q0k7RXlMNklGO0lBSUUsaUJBQWlCO0lBQ2pCLHNCQUEwRTtFMU0rbndDNUU7RTBNcG93Q0E7SUFVRSxnQkFBZ0I7SUFDaEIscUJBQXlFO0UxTTZud0MzRTtFME14bndDQTs7O0lBUUUsWUFBK0I7RTFNcW53Q2pDO0UwTTdud0NBOztJQWNFLHFCQUFpRTtFMU1tbndDbkU7RTBNOW13Q0E7OztJQVFFLFVBQVU7SUFDVixhQUFnQztJQUNoQyxjQUFjO0lBQ2Qsa0JwSGdjaUQ7RXRGMnF2Q25EO0UwTXRud0NBO0lBY0Usa0JBQXdDO0UxTTJtd0MxQztFME16bndDQTs7SUFvQkUsc0JBQWtFO0UxTXltd0NwRTtFME1wbXdDQTs7SUFFQyxxQkFBMEI7SUFDMUIsd0JBQTZCO0UxTXNtd0M5QjtFME14dHdDRDtJQTJIRSxrQkFBa0I7SUFDbEIsYUFBa0I7RTFNZ213Q25CO0UwTWxtd0NBO0lBTUUsV0FBVztJQUNYLGtCQUFrQjtJQUNsQixRQUFRO0lBQ1IsZ0JBQXNDO0lBQ3RDLFdwSDZaaUQ7SW9INVpqRCxXQUE0RTtJQUM1RSxzQnJIdFFjO0lxSHVRZCxVQUFVO0UxTStsd0NaO0UwTTFsd0NBO0lBRUUsT0FBTztFMU0ybHdDVDtFME03bHdDQTtJQU1HLFVBQVU7SUFDVixnQnBIaVowRDtFdEZ5c3ZDN0Q7RTBNcGx3Q0E7SUFFRSxRQUFRO0UxTXFsd0NWO0UwTXZsd0NBO0lBTUcsV0FBVztJQUNYLGlCcEhvWTBEO0V0Rmd0dkM3RDtFME05a3dDQTtJQUtHLFVBQVU7SUFDVixvQkFBc0M7RTFNNGt3Q3pDO0UwTWxsd0NBO0lBVUksV0FBVztJQUNYLGlCcEhtWHlEO0V0Rnd0dkM3RDtFME10bHdDQTtJQW1CRyxXQUFXO0lBQ1gscUJBQXVDO0UxTXNrd0MxQztFME0xbHdDQTtJQXdCSSxVQUFVO0lBQ1YsZ0JwSHFXeUQ7RXRGZ3V2QzdEO0UwTTlsd0NBO0lBZ0NFLGdCQUFnQjtFMU1pa3dDbEI7RTBNam13Q0E7SUFvQ0csYUFBYTtFMU1na3dDaEI7RTBNdnp3Q0Q7SUFpUUUsVUFBVTtJQUNWLG1CQUFtQjtJQUNuQiw2QkFBNkI7RTFNeWp3QzlCO0UwTTV6d0NEO0lBdVFHLGFBQWE7RTFNd2p3Q2Y7RTBNbmp3Q0E7O0lBR0UscUJBQTBCO0lBQzFCLHNCckh2UGU7SXFId1BmLHNCQUErQztFMU1vandDakQ7RTBNamp3Q0E7SUFDQyxpQkFBaUI7SUFDakIsZUFBZTtJQUNmLHVCQUFnRDtFMU1tandDakQ7RTBNL2l3Q0E7O0lBR0Usa0JBQWtCO0lBQ2xCLFVBQVU7SUFDVixhQUEwRDtJQUMxRCxXQUFXO0lBQ1gscUJBQXlFO0UxTWdqd0MzRTtFME12andDQTs7SUFjRyxVQUFVO0lBQ1YsV0FBVztJQUNYLGVBQWU7SUFDZixzQkFBMEU7SUFDMUUsaUJBQWlCO0UxTTZpd0NwQjtFME0vandDQTtJQXdCRSxVQUFVO0lBQ1YsUXBINlIyRDtFdEY2d3ZDN0Q7QUFDRjs7QTJNeDh3Q0E7Ozs7OztpRjNNZzl3Q2lGO0EyTXA4d0M3RTtFQUNJLGlCckg2dEJtQztFcUg1dEJuQyxjQUFjO0EzTXM4d0N0Qjs7QWlCeDV3Q0k7RTBMMUNBO0lBS1ksaUJBQWlCO0UzTWs4d0MvQjtFMk12OHdDRTtJQVNnQixlQUFlO0lBQ2YsZ0JBQWdCO0UzTWk4d0NsQztBQUNGOztBMk0zN3dDSTtFQUNJLGtCQUFrQjtFQUNsQixzQnJIeXNCa0M7RXFIeHNCbEMsV0FBVztFQUNYLHFCQUFxQjtFQUNyQixXdEhkVTtFeEVyQmQsd0J3RWtPaUM7QXJGZ3d3Q3JDOztBMk1wOHdDSTtFQVVRLHNCdEh6Qk07RXNIMEJOLGtCdEgxQk07QXJGdzl3Q2xCOztBMk16OHdDSTtFQWdCUSxXQUFXO0VBQ1gsVXJIdXJCNkM7RXFIdHJCN0MsZUFBaUc7RUFDakcsa0JBQWtCO0VBQ2xCLGNBQWM7RUFDZCxpQ0FBc0Q7RUFDdEQsdUJBQTRDO0VBQzVDLDJCQUEyQjtFQUMzQixvQ0FBeUQ7QTNNNjd3Q3JFOztBMk0xN3dDWTtFQUNJLFVBQVU7RUFDVixXckgycUJ5QztFcUgxcUJ6QyxlQUFlO0VBQ2Ysc0JBQTJDO0VBQzNDLDBCQUEwQjtBM002N3dDMUM7O0EyTXY3d0NJO0VBSVEsZ0JBQWdCO0VBQ2hCLFd0SDdETTtBckZvL3dDbEI7O0EyTTU3d0NJO0VBU1kseUJ2SG5FVztFdUhvRVgscUJ2SHBFVztBcEYyL3dDM0I7O0EyTWo4d0NJO0VBZ0JRLGlCQUFpQjtBM01xN3dDN0I7O0EyTWg3d0NJO0VBRVEsV3RIL0VNO0FyRmlneENsQjs7QTJNcDd3Q0k7RUFNWSx5QnZIckZXO0V1SHNGWCxxQnZIdEZXO0FwRndneEMzQjs7QTJNejd3Q0k7RUFjWSxXdEhsRkU7QXJGaWd4Q2xCOztBMk03N3dDSTtFQWtCZ0Isc0J0SDVGRjtFc0g2RkUsa0J0SDdGRjtBckY0Z3hDbEI7O0E0TWhpeENBOzs7Ozs7aUY1TXdpeENpRjtBNE01aHhDaEY7RUFDQyxXdkhJZ0I7RXVISGhCLG1CdEh3c0I0QztFc0h2c0I1QyxjQUFjO0VBQ2QscUJBQTRCO0VBQzVCLGdCdkh5UThCO0V1SHhROUIsNEJBQTRCO0VBQzVCLGNBQWM7RUFDZCw4U3ZIT2dCO0FyRnVoeENsQjs7QWlCdC93Q0k7RTJMaERIO0lBdUJFLGtCdEhrckIwQztFdEZrMnZDM0M7QUFDRjs7QTRNaGh4Q0M7RUFDQyxtQnRIZ3JCNEM7QXRGbTJ2QzlDOztBaUJoZ3hDSTtFMkxwQkg7SUFLRSxnQnRIMnFCd0M7RXRGeTJ2Q3pDO0FBQ0Y7O0E2TWxreENBOzs7Ozs7Z0Y3TTBreENnRjtBNk0zanhDeEU7RUFDSSxzQnhIczRCMkI7QXJGdXJ2Q3ZDOztBNk1wanhDUTtFQUNJLHFCeEhpTXVCO0V3SGhNdkIsc0J4SGdNdUI7RXdIL0x2Qix3QnhIK0x1QjtFd0g5THZCLDZCQUEwRTtFQUMxRSxnQ0FBNkU7RUFDN0UseUJBQXdDO0E3TXVqeENwRDs7QTZNbmp4Q1E7RUFDSSx5QnhIbEJTO0V3SG1CVCxrQnhIaEJNO0V3SGlCTixnQkFBZ0I7QTdNc2p4QzVCOztBNk1sanhDUTtFQUNJLG9DeEhoQk07RXdIaUJOLHNDeEgzQk07RXdINEJOLGdCQUFnQjtBN01xanhDNUI7O0E2TTVpeENRO0VBQ0kscUJ4SG9LdUI7RXdIbkt2QixzQnhIbUt1QjtFd0hsS3ZCLGtCeEhrS3VCO0V3SGpLdkIsaUNBQW9FO0E3TStpeENoRjs7QTZNM2l4Q1E7RUFDSSw2QnhIeWtDZ0Q7RXdIeGtDaEQsa0J4SDNDTTtBckZ5bHhDbEI7O0E2TTFpeENRO0VBQ0ksb0N4SDFDTTtFd0gyQ04sdUN4SHJETTtBckZrbXhDbEI7O0E2TXZteENJO0VBcUVZLGdCQUFnQjtBN01zaXhDaEM7O0E2TWhpeENJOztFQUVJLGlCQUFpQjtFQUNqQixrQkFBa0I7QTdNbWl4QzFCOztBNk1yaHhDWTtFQUNJLGFBQWE7RUFDYixtQkFBbUI7RUFDbkIsOEJBQThCO0VBQzlCLGlCQUFpQjtBN013aHhDakM7O0E2TTVoeENZO0VBUVEsd0JBQXVCO0VBQ3ZCLG1CQUFtQjtFQUNuQixlQUFlO0VBQ2YsVUFBVTtFQUNWLDZCQUE2QjtFQUM3QixTQUFTO0VBQ1QsY0FBYztFQUNkLGVBQWU7QTdNd2h4Q25DOztBNk12aXhDWTtFQXFCWSxpQkFBMEQ7RUFDMUQsb0JBQTZEO0E3TXNoeENyRjs7QWlCeGx4Q0k7RTRMNENRO0lBQ0ksYUFBYTtJQUNiLG1CQUFtQjtJQUNuQiw4QkFBOEI7SUFDOUIsaUJBQWlCO0U3TWdqeEMvQjtFNk1wanhDVTtJQVFRLHdCQUF1QjtJQUN2QixtQkFBbUI7SUFDbkIsZUFBZTtJQUNmLFVBQVU7SUFDViw2QkFBNkI7SUFDN0IsU0FBUztJQUNULGNBQWM7SUFDZCxlQUFlO0U3TStpeENqQztFNk05anhDVTtJQXFCWSxpQkFBMEQ7SUFDMUQsb0JBQTZEO0U3TTRpeENuRjtBQUNGOztBaUIvbXhDSTtFNEw0Q1E7SUFDSSxhQUFhO0lBQ2IsbUJBQW1CO0lBQ25CLDhCQUE4QjtJQUM5QixpQkFBaUI7RTdNdWt4Qy9CO0U2TTNreENVO0lBUVEsd0JBQXVCO0lBQ3ZCLG1CQUFtQjtJQUNuQixlQUFlO0lBQ2YsVUFBVTtJQUNWLDZCQUE2QjtJQUM3QixTQUFTO0lBQ1QsY0FBYztJQUNkLGVBQWU7RTdNc2t4Q2pDO0U2TXJseENVO0lBcUJZLGlCQUEwRDtJQUMxRCxvQkFBNkQ7RTdNbWt4Q25GO0FBQ0Y7O0FpQnRveENJO0U0TDRDUTtJQUNJLGFBQWE7SUFDYixtQkFBbUI7SUFDbkIsOEJBQThCO0lBQzlCLGlCQUFpQjtFN004bHhDL0I7RTZNbG14Q1U7SUFRUSx3QkFBdUI7SUFDdkIsbUJBQW1CO0lBQ25CLGVBQWU7SUFDZixVQUFVO0lBQ1YsNkJBQTZCO0lBQzdCLFNBQVM7SUFDVCxjQUFjO0lBQ2QsZUFBZTtFN002bHhDakM7RTZNNW14Q1U7SUFxQlksaUJBQTBEO0lBQzFELG9CQUE2RDtFN00wbHhDbkY7QUFDRjs7QWlCN3B4Q0k7RTRMNENRO0lBQ0ksYUFBYTtJQUNiLG1CQUFtQjtJQUNuQiw4QkFBOEI7SUFDOUIsaUJBQWlCO0U3TXFueEMvQjtFNk16bnhDVTtJQVFRLHdCQUF1QjtJQUN2QixtQkFBbUI7SUFDbkIsZUFBZTtJQUNmLFVBQVU7SUFDViw2QkFBNkI7SUFDN0IsU0FBUztJQUNULGNBQWM7SUFDZCxlQUFlO0U3TW9ueENqQztFNk1ub3hDVTtJQXFCWSxpQkFBMEQ7SUFDMUQsb0JBQTZEO0U3TWlueENuRjtBQUNGOztBOE1odnhDQTs7Ozs7O2lGOU13dnhDaUY7QThNM3V4Q2pGO0VBQ0ksbUJ6SHNRc0Q7QXJGdSt3QzFEOztBOE0zdXhDQTtFQUNJLG9CekhrUWtDO0FyRjQrd0N0Qzs7QThNNXV4Q0E7RUFDSSxrQnpIaVFzRDtBckY4K3dDMUQ7O0E4TTd1eENBO0VBQ0ksb0J6SCtQNEQ7QXJGaS93Q2hFOztBOE01dXhDQTtFQUNJLG1Cekh1UStCO0FyRncrd0NuQzs7QThNN3V4Q0E7RUFDSSxtQnpIbVErQjtBckY2K3dDbkM7O0E4TTl1eENBO0VBQ0ksbUJ6SGtRK0I7QXJGKyt3Q25DOztBOE0vdXhDQTtFQUNJLGlCekhnUTZCO0FyRmsvd0NqQzs7QThNaHZ4Q0E7RUFDSSxjQUFjO0E5TW12eENsQjs7QThNL3V4Q0E7RUFDSSxhQUFhO0E5TWt2eENqQjs7QThNaHZ4Q0E7RUFDSSxZQUFZO0E5TW12eENoQjs7QThNanZ4Q0E7RUFDSSxhQUFhO0E5TW92eENqQjs7QThNbHZ4Q0E7RUFDSSxVQUFVO0E5TXF2eENkOztBOE1odnhDSTtFQUNJLE1BQU07QTlNbXZ4Q2Q7O0E4TWp2eENJO0VBQ0ksU0FBUztBOU1vdnhDakI7O0E4TWh2eENJO0VBQ0ksU0FBUztBOU1tdnhDakI7O0E4TWp2eENJO0VBQ0ksWUFBWTtBOU1vdnhDcEI7O0E4TWh2eENJO0VBQ0ksT0FBTztBOU1tdnhDZjs7QThNanZ4Q0k7RUFDSSxVQUFVO0E5TW92eENsQjs7QThNaHZ4Q0k7RUFDSSxRQUFRO0E5TW12eENoQjs7QThNanZ4Q0k7RUFDSSxXQUFXO0E5TW92eENuQjs7QThNL3V4Q0E7RUFDSSxlQUFlO0E5TWt2eENuQjs7QThNaHZ4Q0E7RUFDSSxZQUFZO0E5TW12eENoQjs7QThNanZ4Q0E7RUFDSSxlQUFlO0E5TW92eENuQjs7QThNbHZ4Q0E7RUFDSSxleEhBNkM7QXRGcXZ4Q2pEOztBbUV4MXhDRTtFMkl3R0UsZ0JBQWdCO0E5TW92eENwQjs7QThNbHZ4Q0E7RUFDSSxpQkFBaUI7QTlNcXZ4Q3JCOztBbUVoMnhDRTtFMkk4R0UsY0FBYztBOU1zdnhDbEI7O0E4TTd1eENBO0VBQ0ksZUFBZTtBOU1ndnhDbkI7O0E4TTV1eENBO0VBQ0ksd0JBQXdCO0VBQ3hCLDJCQUEyQjtBOU0rdXhDL0I7O0E4TTN1eENBO0VBQ0kseUJBQXlCO0VBQ3pCLDBCQUEwQjtBOU04dXhDOUI7O0E4TXJ1eENBO0VBQ0ksaUJBQTJCO0E5TXd1eEMvQjs7QThNdHV4Q0E7RUFDSSxxQkFBK0I7QTlNeXV4Q25DOztBOE12dXhDQTtFQUNJLHdCQUFrQztBOU0wdXhDdEM7O0E4TXh1eENBO0VBQ0ksc0JBQWdDO0E5TTJ1eENwQzs7QThNenV4Q0E7RUFDSSx1QkFBaUM7QTlNNHV4Q3JDOztBOE0xdXhDQTtFQUNJLHFCQUErQjtFQUMvQix3QkFBa0M7QTlNNnV4Q3RDOztBOE0zdXhDQTtFQUNJLHNCQUFnQztFQUNoQyx1QkFBaUM7QTlNOHV4Q3JDOztBOE0xdXhDQTtFQUNJLGlCQUFpQztBOU02dXhDckM7O0E4TTN1eENBO0VBQ0kscUJBQXFDO0E5TTh1eEN6Qzs7QThNNXV4Q0E7RUFDSSx3QkFBd0M7QTlNK3V4QzVDOztBOE03dXhDQTtFQUNJLHNCQUFzQztBOU1ndnhDMUM7O0E4TTl1eENBO0VBQ0ksdUJBQXVDO0E5TWl2eEMzQzs7QThNL3V4Q0E7RUFDSSxxQkFBcUM7RUFDckMsd0JBQXdDO0E5TWt2eEM1Qzs7QThNaHZ4Q0E7RUFDSSxzQkFBc0M7RUFDdEMsdUJBQXVDO0E5TW12eEMzQzs7QThNL3V4Q0E7RUFDSSxpQkFBaUM7QTlNa3Z4Q3JDOztBOE1odnhDQTtFQUNJLHFCQUFxQztBOU1tdnhDekM7O0E4TWp2eENBO0VBQ0ksd0JBQXdDO0E5TW92eEM1Qzs7QThNbHZ4Q0E7RUFDSSxzQkFBc0M7QTlNcXZ4QzFDOztBOE1udnhDQTtFQUNJLHVCQUF1QztBOU1zdnhDM0M7O0E4TXB2eENBO0VBQ0kscUJBQXFDO0VBQ3JDLHdCQUF3QztBOU11dnhDNUM7O0E4TXJ2eENBO0VBQ0ksc0JBQXNDO0VBQ3RDLHVCQUF1QztBOU13dnhDM0M7O0E4TWp2eENJO0VBQ0ksb0JBQW9CO0E5TW92eEM1Qjs7QThNbHZ4Q0k7RUFDSSx3QkFBd0I7QTlNcXZ4Q2hDOztBOE1udnhDSTtFQUNJLDJCQUEyQjtBOU1zdnhDbkM7O0E4TXB2eENJO0VBQ0kseUJBQXlCO0E5TXV2eENqQzs7QThNcnZ4Q0k7RUFDSSwwQkFBMEI7QTlNd3Z4Q2xDOztBOE1wdnhDSTtFQUNJLG9CQUFvQjtBOU11dnhDNUI7O0E4TTd1eENBO0VqTXJQSSwrQmlNc1BzRDtBOU1ndnhDMUQ7O0E4TTl1eENBO0VqTS9PSSx3Q2lNZ1AwRDtFak0vTzFELHlDaU0rTzBEO0E5TWt2eEM5RDs7QThNaHZ4Q0E7RWpNcE9JLDRDaU1xTzZEO0VqTXBPN0QsMkNpTW9PNkQ7QTlNb3Z4Q2pFOztBOE1sdnhDQTtFak1oT0ksd0NpTWlPMkQ7RWpNaE8zRCwyQ2lNZ08yRDtBOU1zdnhDL0Q7O0E4TXB2eENBO0VqTWpQSSx5Q2lNa1A0RDtFak1qUDVELDRDaU1pUDREO0E5TXd2eENoRTs7QThNaHZ4Q0E7RWpNalFJLG9DaU1rUXVDO0VqTWpRdkMscUNpTWlRdUM7QTlNb3Z4QzNDOztBOE1sdnhDQTtFak10UEksd0NpTXVQMEM7RWpNdFAxQyx1Q2lNc1AwQztBOU1zdnhDOUM7O0E4TXB2eENBO0VqTWxQSSxvQ2lNbVB3QztFak1sUHhDLHVDaU1rUHdDO0E5TXd2eEM1Qzs7QThNdHZ4Q0E7RWpNblFJLHFDaU1vUXlDO0VqTW5RekMsd0NpTW1ReUM7QTlNMHZ4QzdDOztBOE03dXhDQTtFQUNJLHdCQUF3QjtBOU1ndnhDNUI7O0E4TTl1eENBO0VBQ0ksd0JBQXdCO0E5TWl2eEM1Qjs7QThNL3V4Q0E7RUFDSSx5QkFBeUI7QTlNa3Z4QzdCOztBOE05dXhDQTtFQUNJLHlCQUF5QjtBOU1pdnhDN0I7O0E4TS91eENBO0VBQ0kseUJBQXlCO0E5TWt2eEM3Qjs7QThNaHZ4Q0E7RUFDSSwwQkFBMEI7QTlNbXZ4QzlCOztBOE0xdXhDQTtFQUNJLHFCQUFxQjtFQUNyQiw4Q0FBc0M7VUFBdEMsc0NBQXNDO0E5TTZ1eEMxQzs7QThNenV4Q0E7RUFDSSxxQkFBcUI7RUFDckIsOENBQXNDO1VBQXRDLHNDQUFzQztBOU00dXhDMUM7O0E4TXh1eENBO0VBQ0k7SUFBSSwrQkFBK0I7RTlNNHV4Q3JDO0U4TTN1eENFO0lBQU0saUNBQWlDO0U5TTh1eEN6QztBQUNGOztBOE1qdXhDQTtFQUNJO0lBQUksdUJBQXVCO0U5TWd3eEM3QjtFOE0vdnhDRTtJQUFNLHlCQUF5QjtFOU1rd3hDakM7QUFDRjs7QThNL3Z4Q0E7RUFDSTtJQUFJLCtCQUErQjtFOU1td3hDckM7RThNbHd4Q0U7SUFBTSxrQ0FBa0M7RTlNcXd4QzFDO0FBQ0Y7O0E4TXh2eENBO0VBQ0k7SUFBSSx1QkFBdUI7RTlNdXh4QzdCO0U4TXR4eENFO0lBQU0sMEJBQTBCO0U5TXl4eENsQztBQUNGOztBdUV6b3lDSTtFdUl5WEEsWUFBWTtBOU1veHhDaEI7O0F1RTdveUNJO0V1SWdZdUIsc0JBQXNCO0E5TWl4eENqRDs7QXVFanB5Q0k7RXVJa1lxQixxQkFBcUI7QTlNbXh4QzlDOztBdUVycHlDSTtFdUltWXFCLHFCQUFxQjtBOU1zeHhDOUM7O0F1RXpweUNJO0V1SW9ZcUIscUJBQXFCO0E5TXl4eEM5Qzs7QXVFN3B5Q0k7RXVJcVlzQixzQkFBc0I7QTlNNHh4Q2hEOztBOE0xeHhDUTtFQUFtQix1QkFBdUI7QTlNOHh4Q2xEOztBOE03eHhDUTtFQUFxQiwyQkFBMkI7QTlNaXl4Q3hEOztBOE1oeXhDUTtFQUFxQiwyQkFBMkI7QTlNb3l4Q3hEOztBOE1ueXhDUTtFQUFxQiwyQkFBMkI7QTlNdXl4Q3hEOztBOE10eXhDUTtFQUFxQiwyQkFBMkI7QTlNMHl4Q3hEOztBOE16eXhDUTtFQUFxQiwyQkFBMkI7QTlNNnl4Q3hEOztBOE01eXhDUTtFQUFxQiwyQkFBMkI7QTlNZ3p4Q3hEOztBOE0veXhDUTtFQUFxQiwyQkFBMkI7QTlNbXp4Q3hEOztBOE1senhDUTtFQUFxQiwyQkFBMkI7QTlNc3p4Q3hEOztBOE1yenhDUTtFQUFxQiwyQkFBMkI7QTlNeXp4Q3hEOztBOE12enhDUTtFQUFtQixPQUFPO0E5TTJ6eENsQzs7QWlCdnB5Q0k7RTZMMFVJO0lBQW1CLHNCQUFzQjtFOU1rMXhDL0M7RThNaDF4Q007SUFBaUIscUJBQXFCO0U5TW0xeEM1QztFOE1sMXhDTTtJQUFpQixxQkFBcUI7RTlNcTF4QzVDO0U4TXAxeENNO0lBQWlCLHFCQUFxQjtFOU11MXhDNUM7RThNdDF4Q007SUFBa0Isc0JBQXNCO0U5TXkxeEM5QztFOE12MXhDTTtJQUFtQix1QkFBdUI7RTlNMDF4Q2hEO0U4TXoxeENNO0lBQXFCLDJCQUEyQjtFOU00MXhDdEQ7RThNMzF4Q007SUFBcUIsMkJBQTJCO0U5TTgxeEN0RDtFOE03MXhDTTtJQUFxQiwyQkFBMkI7RTlNZzJ4Q3REO0U4TS8xeENNO0lBQXFCLDJCQUEyQjtFOU1rMnhDdEQ7RThNajJ4Q007SUFBcUIsMkJBQTJCO0U5TW8yeEN0RDtFOE1uMnhDTTtJQUFxQiwyQkFBMkI7RTlNczJ4Q3REO0U4TXIyeENNO0lBQXFCLDJCQUEyQjtFOU13MnhDdEQ7RThNdjJ4Q007SUFBcUIsMkJBQTJCO0U5TTAyeEN0RDtFOE16MnhDTTtJQUFxQiwyQkFBMkI7RTlNNDJ4Q3REO0U4TTEyeENNO0lBQW1CLE9BQU87RTlNNjJ4Q2hDO0FBQ0Y7O0FpQjFzeUNJO0U2TDBVSTtJQUFtQixzQkFBc0I7RTlNcTR4Qy9DO0U4TW40eENNO0lBQWlCLHFCQUFxQjtFOU1zNHhDNUM7RThNcjR4Q007SUFBaUIscUJBQXFCO0U5TXc0eEM1QztFOE12NHhDTTtJQUFpQixxQkFBcUI7RTlNMDR4QzVDO0U4TXo0eENNO0lBQWtCLHNCQUFzQjtFOU00NHhDOUM7RThNMTR4Q007SUFBbUIsdUJBQXVCO0U5TTY0eENoRDtFOE01NHhDTTtJQUFxQiwyQkFBMkI7RTlNKzR4Q3REO0U4TTk0eENNO0lBQXFCLDJCQUEyQjtFOU1pNXhDdEQ7RThNaDV4Q007SUFBcUIsMkJBQTJCO0U5TW01eEN0RDtFOE1sNXhDTTtJQUFxQiwyQkFBMkI7RTlNcTV4Q3REO0U4TXA1eENNO0lBQXFCLDJCQUEyQjtFOU11NXhDdEQ7RThNdDV4Q007SUFBcUIsMkJBQTJCO0U5TXk1eEN0RDtFOE14NXhDTTtJQUFxQiwyQkFBMkI7RTlNMjV4Q3REO0U4TTE1eENNO0lBQXFCLDJCQUEyQjtFOU02NXhDdEQ7RThNNTV4Q007SUFBcUIsMkJBQTJCO0U5TSs1eEN0RDtFOE03NXhDTTtJQUFtQixPQUFPO0U5TWc2eENoQztBQUNGOztBaUI3dnlDSTtFNkwwVUk7SUFBbUIsc0JBQXNCO0U5TXc3eEMvQztFOE10N3hDTTtJQUFpQixxQkFBcUI7RTlNeTd4QzVDO0U4TXg3eENNO0lBQWlCLHFCQUFxQjtFOU0yN3hDNUM7RThNMTd4Q007SUFBaUIscUJBQXFCO0U5TTY3eEM1QztFOE01N3hDTTtJQUFrQixzQkFBc0I7RTlNKzd4QzlDO0U4TTc3eENNO0lBQW1CLHVCQUF1QjtFOU1nOHhDaEQ7RThNLzd4Q007SUFBcUIsMkJBQTJCO0U5TWs4eEN0RDtFOE1qOHhDTTtJQUFxQiwyQkFBMkI7RTlNbzh4Q3REO0U4TW44eENNO0lBQXFCLDJCQUEyQjtFOU1zOHhDdEQ7RThNcjh4Q007SUFBcUIsMkJBQTJCO0U5TXc4eEN0RDtFOE12OHhDTTtJQUFxQiwyQkFBMkI7RTlNMDh4Q3REO0U4TXo4eENNO0lBQXFCLDJCQUEyQjtFOU00OHhDdEQ7RThNMzh4Q007SUFBcUIsMkJBQTJCO0U5TTg4eEN0RDtFOE03OHhDTTtJQUFxQiwyQkFBMkI7RTlNZzl4Q3REO0U4TS84eENNO0lBQXFCLDJCQUEyQjtFOU1rOXhDdEQ7RThNaDl4Q007SUFBbUIsT0FBTztFOU1tOXhDaEM7QUFDRjs7QWlCaHp5Q0k7RTZMMFVJO0lBQW1CLHNCQUFzQjtFOU0yK3hDL0M7RThNeit4Q007SUFBaUIscUJBQXFCO0U5TTQreEM1QztFOE0zK3hDTTtJQUFpQixxQkFBcUI7RTlNOCt4QzVDO0U4TTcreENNO0lBQWlCLHFCQUFxQjtFOU1nL3hDNUM7RThNLyt4Q007SUFBa0Isc0JBQXNCO0U5TWsveEM5QztFOE1oL3hDTTtJQUFtQix1QkFBdUI7RTlNbS94Q2hEO0U4TWwveENNO0lBQXFCLDJCQUEyQjtFOU1xL3hDdEQ7RThNcC94Q007SUFBcUIsMkJBQTJCO0U5TXUveEN0RDtFOE10L3hDTTtJQUFxQiwyQkFBMkI7RTlNeS94Q3REO0U4TXgveENNO0lBQXFCLDJCQUEyQjtFOU0yL3hDdEQ7RThNMS94Q007SUFBcUIsMkJBQTJCO0U5TTYveEN0RDtFOE01L3hDTTtJQUFxQiwyQkFBMkI7RTlNKy94Q3REO0U4TTkveENNO0lBQXFCLDJCQUEyQjtFOU1pZ3lDdEQ7RThNaGd5Q007SUFBcUIsMkJBQTJCO0U5TW1neUN0RDtFOE1sZ3lDTTtJQUFxQiwyQkFBMkI7RTlNcWd5Q3REO0U4TW5neUNNO0lBQW1CLE9BQU87RTlNc2d5Q2hDO0FBQ0Y7O0E4TTcveENBO0V2TDVaTSwyQnVMZ2FxQztBOU02L3hDM0M7O0F1Qng1eUNJO0V1THVaSjtJdkx0Wk0sZ0JBQWdCO0V2QjQ1eUNwQjtBQUNGOztBOE05L3hDQTtFQUdRLGFBQWE7QTlNKy94Q3JCOztBOE0xL3hDQTtFQUNJLDJCQUEyQjtBOU02L3hDL0I7O0FRMTV5Q0U7RXNNbWFNLFVBQVU7QTlNMi94Q2xCOztBOE10L3hDQTtFQUNJLDZDekhyYWM7QXJGODV5Q2xCOztBOE12L3hDQTtFQUNJLG1EekhsYmM7QXJGNDZ5Q2xCOztBOE10L3hDQTs7OzttQzlNNC94Q21DO0ErTW44eUNuQzs7Ozs7O2lGL00wOHlDaUY7QStNMzd5QzdFO0VBQ0kseUIxSEVhO0UwSERiLHVCMUhJVTtFMEhIVixXM0hpSmE7RTJIaEpiLGtCQUFrQjtFQUNsQixXQUFXO0VoSGpCakIsV2dIa0J3QjtFaEhqQnhCLFlnSGlCd0I7QS9NODd5QzFCOztBK01wOHlDSTtFQVNRLGtCQUFrQjtFQUNsQixRQUFRO0VBQ1IsT0FBTztFQUNQLFFBQVE7RUFDUiwyQkFBMkI7QS9NKzd5Q3ZDOztBK00xN3lDSTtFQUNJLGdCQUFnQjtFQUNoQixxQkFBcUI7RUFDckIsU0FBUztFQUNULFVBQVU7RUFDVixXQUFXO0VBQ1gsZ0JBQWdCO0EvTTY3eUN4Qjs7QStNbjh5Q0k7O0VBVVEseUIxSHpCUztFMEgwQlQsc0IxSHZCTTtBckZxOXlDbEI7O0ErTXo4eUNJOzs7RUFlWSxvQ0FBMkM7RUFDM0MsZ0NBQXVDO0VBQ3ZDLFcxSGpDRTtBckZpK3lDbEI7O0ErTWo5eUNJO0VBc0JRLGFBQWE7QS9NKzd5Q3pCOztBK00xN3lDSTtFQUVRLG1CMUhvRU87QXJGdzN5Q25COztBaUI5N3lDSTtFOExBQTtJQUtZLGFBQWE7SUFDYixvQjFIeUptQjtFckZxeXlDakM7QUFDRjs7QStNejd5Q0k7RUFDSSxZQUFZO0VBQ1osYUFBYTtFQUNiLHlCM0g5RGtCO0UySCtEbEIscUIzSDVEbUI7RTJINkRuQixjM0gxRG1CO0UySDJEbkIsVUFBVTtBL000N3lDbEI7O0ErTTE3eUNJO0VBQ0kseUIzSGhEa0I7RTJIaURsQixxQjNIOUNtQjtFMkgrQ25CLGMzSDVDbUI7QXBGeSt5QzNCOztBK010N3lDSTtFQUNJLGFBQWE7RUFDYixrQkFBa0I7RWxNOUV0QixpQ3dFeU5pQztFeEV4TmpDLGtDd0V3TmlDO0FyRmd6eUNyQzs7QStNNzd5Q0k7RUFNUSxrQkFBa0I7RUFDbEIsU0FBUztFQUNULE9BQU87RUFDUCxXQUFXO0VBQ1gsa0JBQWtCO0VBQ2xCLGlCQUFpQjtFQUNqQixvQzFIM0VNO0UwSDRFTixrQjFIOEs4QztFMEg3SzlDLFcxSHZGTTtBckZraHpDbEI7O0ErTW43eUNJO0VBRVEsb0JBQW9CO0V4TDVHMUIsaUMrRHVEeUM7QXRGMit5Qy9DOztBdUI3aHpDSTtFd0xxR0E7SXhMcEdFLGdCQUFnQjtFdkJpaXpDcEI7QUFDRjs7QVFsaXpDRTtFdU0yR2MseUIzSHhEUTtFMkh5RFIsVzFIdkdFO0V4RVpkLHdCd0VrT2lDO0FyRjYweUNyQzs7QStNcDh5Q0k7RUFZZ0IsZ0MxSDNHRjtBckZ1aXpDbEI7O0ErTWw3eUNJO0VBQ0kscUJBQXFCO0VBQ3JCLHNCMUhOVztFMEhPWCxrQkFBa0I7RUFDbEIsYUFBYTtFQUNiLDhCQUE4QjtFQUM5QixtQkFBbUI7RUFDbkIsc0IxSHZIVTtFMEh3SFYsa0JBQWtCO0VBQ2xCLHlCMUg3SGE7RTBIOEhiLHdCMUh1RjZCO0UwSHRGN0IsMkIzSGpJbUI7QXBGc2p6QzNCOztBZ050a3pDQTs7Ozs7O2lGaE44a3pDaUY7QWlGOWt6Q2pGOzs7Ozs7Ozs7Ozs7OztpRmpGNmx6Q2lGO0FrRjdsekNqRjs7Ozs7O2lGbEZvbXpDaUY7QW1GcG16Q2pGOzs7Ozs7aUZuRjJtekNpRjtBb0YzbXpDakY7Ozs7OztpRnBGa256Q2lGO0FxRmxuekNqRjs7Ozs7Ozs7aUZyRjJuekNpRjtBc0YzbnpDakY7Ozs7Ozs7aUZ0Rm1vekNpRjtBdUZub3pDakY7Ozs7OztpRnZGMG96Q2lGO0F3RjFvekNqRjs7Ozs7O2lGeEZpcHpDaUY7QXlGanB6Q2pGOzs7Ozs7aUZ6RndwekNpRjtBMEZ4cHpDakY7Ozs7OztpRjFGK3B6Q2lGO0EyRi9wekNqRjs7Ozs7O2lGM0ZzcXpDaUY7QTRGdHF6Q2pGOzs7Ozs7aUY1RjZxekNpRjtBaU43cXpDakY7Ozs7OztpRmpOb3J6Q2lGO0FpTnZnekM3RTtFOUhwSkEseUJDWnNCO0FwRjBxekMxQjs7QTRFbHJ6Q0U7RU95QkUsY0NkdUI7QXBGMnF6QzNCOztBUTNxekNFO0UyRW1CVSxjQUEyQjtBbkY0cHpDdkM7O0E0RDFyekNFO0V1Qm9CRSx5QkNUdUI7QXBGbXJ6QzNCOztBOERocnpDRTtFcUJ1QkUscUJDMUJ1QjtBcEZ1cnpDM0I7O0FpTnRnekNJO0U5SGxKQSx5QkMvQnVCO0FwRjJyekMzQjs7QWlOcmd6Q0k7RTlIbEpBLDRCQ3BDdUI7QXBGK3J6QzNCOztBaU5wZ3pDSTtFOUhsSkEsMEJDekN1QjtBcEZtc3pDM0I7O0FpTm5nekNJO0U5SGxKQSwyQkM5Q3VCO0FwRnVzekMzQjs7QWlOdi95Q1k7RTlIbE1SLGNDaEJ1QjtBcEY2c3pDM0I7O0FRM3N6Q0U7RTJFbUJVLGNBQTJCO0FuRjRyekN2Qzs7QWlOMS95Q1k7RTlINU1SLHlCQ1h1QjtBcEZxdHpDM0I7O0FpTnoveUNZO0U5SGhNUixxQkM1QnVCO0FwRnl0ekMzQjs7QWlOeC95Q1k7RTlIaE1SLHlCQ2pDdUI7QXBGNnR6QzNCOztBaU52L3lDWTtFOUhoTVIsNEJDdEN1QjtBcEZpdXpDM0I7O0FpTnQveUNZO0U5SGhNUiwwQkMzQ3VCO0FwRnF1ekMzQjs7QWlOci95Q1k7RTlIaE1SLDJCQ2hEdUI7QXBGeXV6QzNCOztBaU52aHpDWTtFOUhsTVIsY0NmdUI7QXBGNHV6QzNCOztBUTN1ekNFO0UyRW1CVSxjQUEyQjtBbkY0dHpDdkM7O0FpTjFoekNZO0U5SDVNUix5QkNWdUI7QXBGb3Z6QzNCOztBaU56aHpDWTtFOUhoTVIscUJDM0J1QjtBcEZ3dnpDM0I7O0FpTnhoekNZO0U5SGhNUix5QkNoQ3VCO0FwRjR2ekMzQjs7QWlOdmh6Q1k7RTlIaE1SLDRCQ3JDdUI7QXBGZ3d6QzNCOztBaU50aHpDWTtFOUhoTVIsMEJDMUN1QjtBcEZvd3pDM0I7O0FpTnJoekNZO0U5SGhNUiwyQkMvQ3VCO0FwRnd3ekMzQjs7QWlOdmp6Q1k7RTlIbE1SLGNDYnVCO0FwRjB3ekMzQjs7QVEzd3pDRTtFMkVtQlUsY0FBMkI7QW5GNHZ6Q3ZDOztBaU4xanpDWTtFOUg1TVIseUJDUnVCO0FwRmt4ekMzQjs7QWlOemp6Q1k7RTlIaE1SLHFCQ3pCdUI7QXBGc3h6QzNCOztBaU54anpDWTtFOUhoTVIseUJDOUJ1QjtBcEYweHpDM0I7O0FpTnZqekNZO0U5SGhNUiw0QkNuQ3VCO0FwRjh4ekMzQjs7QWlOdGp6Q1k7RTlIaE1SLDBCQ3hDdUI7QXBGa3l6QzNCOztBaU5yanpDWTtFOUhoTVIsMkJDN0N1QjtBcEZzeXpDM0I7O0FpTnZsekNZO0U5SGxNUixjQ1p1QjtBcEZ5eXpDM0I7O0FRM3l6Q0U7RTJFbUJVLGNBQTJCO0FuRjR4ekN2Qzs7QWlOMWx6Q1k7RTlINU1SLHlCQ1B1QjtBcEZpenpDM0I7O0FpTnpsekNZO0U5SGhNUixxQkN4QnVCO0FwRnF6ekMzQjs7QWlOeGx6Q1k7RTlIaE1SLHlCQzdCdUI7QXBGeXp6QzNCOztBaU52bHpDWTtFOUhoTVIsNEJDbEN1QjtBcEY2enpDM0I7O0FpTnRsekNZO0U5SGhNUiwwQkN2Q3VCO0FwRmkwekMzQjs7QWlOcmx6Q1k7RTlIaE1SLDJCQzVDdUI7QXBGcTB6QzNCOztBaU52bnpDWTtFOUhsTVIsY0NYdUI7QXBGdzB6QzNCOztBUTMwekNFO0UyRW1CVSxjQUEyQjtBbkY0enpDdkM7O0FpTjFuekNZO0U5SDVNUix5QkNOdUI7QXBGZzF6QzNCOztBaU56bnpDWTtFOUhoTVIscUJDdkJ1QjtBcEZvMXpDM0I7O0FpTnhuekNZO0U5SGhNUix5QkM1QnVCO0FwRncxekMzQjs7QWlOdm56Q1k7RTlIaE1SLDRCQ2pDdUI7QXBGNDF6QzNCOztBaU50bnpDWTtFOUhoTVIsMEJDdEN1QjtBcEZnMnpDM0I7O0FpTnJuekNZO0U5SGhNUiwyQkMzQ3VCO0FwRm8yekMzQjs7QWlOMXN6Q0k7RTlIcEpBLHlCQ0ZxQjtBcEZvMnpDekI7O0E0RXQzekNFO0VPeUJFLGNDSnNCO0FwRnEyekMxQjs7QVEvMnpDRTtFMkVtQlUsY0FBMkI7QW5GZzJ6Q3ZDOztBNEQ5M3pDRTtFdUJvQkUseUJDQ3NCO0FwRjYyekMxQjs7QThEcDN6Q0U7RXFCdUJFLHFCQ2hCc0I7QXBGaTN6QzFCOztBaU4xc3pDSTtFOUhsSkEseUJDckJzQjtBcEZxM3pDMUI7O0FpTnpzekNJO0U5SGxKQSw0QkMxQnNCO0FwRnkzekMxQjs7QWlOeHN6Q0k7RTlIbEpBLDBCQy9Cc0I7QXBGNjN6QzFCOztBaU52c3pDSTtFOUhsSkEsMkJDcENzQjtBcEZpNHpDMUI7O0FpTjNyekNZO0U5SGxNUixjQ05zQjtBcEZ1NHpDMUI7O0FRLzR6Q0U7RTJFbUJVLGNBQTJCO0FuRmc0ekN2Qzs7QWlOOXJ6Q1k7RTlINU1SLHlCQ0RzQjtBcEYrNHpDMUI7O0FpTjdyekNZO0U5SGhNUixxQkNsQnNCO0FwRm01ekMxQjs7QWlONXJ6Q1k7RTlIaE1SLHlCQ3ZCc0I7QXBGdTV6QzFCOztBaU4zcnpDWTtFOUhoTVIsNEJDNUJzQjtBcEYyNXpDMUI7O0FpTjFyekNZO0U5SGhNUiwwQkNqQ3NCO0FwRis1ekMxQjs7QWlOenJ6Q1k7RTlIaE1SLDJCQ3RDc0I7QXBGbTZ6QzFCOztBaU4zdHpDWTtFOUhsTVIsY0NMc0I7QXBGczZ6QzFCOztBUS82ekNFO0UyRW1CVSxjQUEyQjtBbkZnNnpDdkM7O0FpTjl0ekNZO0U5SDVNUix5QkNBc0I7QXBGODZ6QzFCOztBaU43dHpDWTtFOUhoTVIscUJDakJzQjtBcEZrN3pDMUI7O0FpTjV0ekNZO0U5SGhNUix5QkN0QnNCO0FwRnM3ekMxQjs7QWlOM3R6Q1k7RTlIaE1SLDRCQzNCc0I7QXBGMDd6QzFCOztBaU4xdHpDWTtFOUhoTVIsMEJDaENzQjtBcEY4N3pDMUI7O0FpTnp0ekNZO0U5SGhNUiwyQkNyQ3NCO0FwRms4ekMxQjs7QWlOM3Z6Q1k7RTlIbE1SLGNDSHNCO0FwRm84ekMxQjs7QVEvOHpDRTtFMkVtQlUsY0FBMkI7QW5GZzh6Q3ZDOztBaU45dnpDWTtFOUg1TVIseUJDRXNCO0FwRjQ4ekMxQjs7QWlON3Z6Q1k7RTlIaE1SLHFCQ2ZzQjtBcEZnOXpDMUI7O0FpTjV2ekNZO0U5SGhNUix5QkNwQnNCO0FwRm85ekMxQjs7QWlOM3Z6Q1k7RTlIaE1SLDRCQ3pCc0I7QXBGdzl6QzFCOztBaU4xdnpDWTtFOUhoTVIsMEJDOUJzQjtBcEY0OXpDMUI7O0FpTnp2ekNZO0U5SGhNUiwyQkNuQ3NCO0FwRmcrekMxQjs7QWlOM3h6Q1k7RTlIbE1SLGNDRnNCO0FwRm0rekMxQjs7QVEvK3pDRTtFMkVtQlUsY0FBMkI7QW5GZyt6Q3ZDOztBaU45eHpDWTtFOUg1TVIseUJDR3NCO0FwRjIrekMxQjs7QWlON3h6Q1k7RTlIaE1SLHFCQ2RzQjtBcEYrK3pDMUI7O0FpTjV4ekNZO0U5SGhNUix5QkNuQnNCO0FwRm0vekMxQjs7QWlOM3h6Q1k7RTlIaE1SLDRCQ3hCc0I7QXBGdS96QzFCOztBaU4xeHpDWTtFOUhoTVIsMEJDN0JzQjtBcEYyL3pDMUI7O0FpTnp4ekNZO0U5SGhNUiwyQkNsQ3NCO0FwRisvekMxQjs7QWlOM3p6Q1k7RTlIbE1SLGNDRHNCO0FwRmtnMEMxQjs7QVEvZzBDRTtFMkVtQlUsY0FBMkI7QW5GZ2cwQ3ZDOztBaU45enpDWTtFOUg1TVIseUJDSXNCO0FwRjBnMEMxQjs7QWlON3p6Q1k7RTlIaE1SLHFCQ2JzQjtBcEY4ZzBDMUI7O0FpTjV6ekNZO0U5SGhNUix5QkNsQnNCO0FwRmtoMEMxQjs7QWlOM3p6Q1k7RTlIaE1SLDRCQ3ZCc0I7QXBGc2gwQzFCOztBaU4xenpDWTtFOUhoTVIsMEJDNUJzQjtBcEYwaDBDMUI7O0FpTnp6ekNZO0U5SGhNUiwyQkNqQ3NCO0FwRjhoMEMxQjs7QWlOOTR6Q0k7RTlIcEpBLHlCQ1FzQjtBcEY4aDBDMUI7O0E0RTFqMENFO0VPeUJFLGNDTXVCO0FwRitoMEMzQjs7QVFuajBDRTtFMkVtQlUsY0FBMkI7QW5Gb2kwQ3ZDOztBNERsazBDRTtFdUJvQkUseUJDV3VCO0FwRnVpMEMzQjs7QThEeGowQ0U7RXFCdUJFLHFCQ051QjtBcEYyaTBDM0I7O0FpTjk0ekNJO0U5SGxKQSx5QkNYdUI7QXBGK2kwQzNCOztBaU43NHpDSTtFOUhsSkEsNEJDaEJ1QjtBcEZtajBDM0I7O0FpTjU0ekNJO0U5SGxKQSwwQkNyQnVCO0FwRnVqMEMzQjs7QWlOMzR6Q0k7RTlIbEpBLDJCQzFCdUI7QXBGMmowQzNCOztBaU4vM3pDWTtFOUhsTVIsY0NJdUI7QXBGaWswQzNCOztBUW5sMENFO0UyRW1CVSxjQUEyQjtBbkZvazBDdkM7O0FpTmw0ekNZO0U5SDVNUix5QkNTdUI7QXBGeWswQzNCOztBaU5qNHpDWTtFOUhoTVIscUJDUnVCO0FwRjZrMEMzQjs7QWlOaDR6Q1k7RTlIaE1SLHlCQ2J1QjtBcEZpbDBDM0I7O0FpTi8zekNZO0U5SGhNUiw0QkNsQnVCO0FwRnFsMEMzQjs7QWlOOTN6Q1k7RTlIaE1SLDBCQ3ZCdUI7QXBGeWwwQzNCOztBaU43M3pDWTtFOUhoTVIsMkJDNUJ1QjtBcEY2bDBDM0I7O0FpTi81ekNZO0U5SGxNUixjQ0t1QjtBcEZnbTBDM0I7O0FRbm4wQ0U7RTJFbUJVLGNBQTJCO0FuRm9tMEN2Qzs7QWlObDZ6Q1k7RTlINU1SLHlCQ1V1QjtBcEZ3bTBDM0I7O0FpTmo2ekNZO0U5SGhNUixxQkNQdUI7QXBGNG0wQzNCOztBaU5oNnpDWTtFOUhoTVIseUJDWnVCO0FwRmduMEMzQjs7QWlOLzV6Q1k7RTlIaE1SLDRCQ2pCdUI7QXBGb24wQzNCOztBaU45NXpDWTtFOUhoTVIsMEJDdEJ1QjtBcEZ3bjBDM0I7O0FpTjc1ekNZO0U5SGhNUiwyQkMzQnVCO0FwRjRuMEMzQjs7QWlOLzd6Q1k7RTlIbE1SLGNDT3VCO0FwRjhuMEMzQjs7QVFucDBDRTtFMkVtQlUsY0FBMkI7QW5Gb28wQ3ZDOztBaU5sOHpDWTtFOUg1TVIseUJDWXVCO0FwRnNvMEMzQjs7QWlOajh6Q1k7RTlIaE1SLHFCQ0x1QjtBcEYwbzBDM0I7O0FpTmg4ekNZO0U5SGhNUix5QkNWdUI7QXBGOG8wQzNCOztBaU4vN3pDWTtFOUhoTVIsNEJDZnVCO0FwRmtwMEMzQjs7QWlOOTd6Q1k7RTlIaE1SLDBCQ3BCdUI7QXBGc3AwQzNCOztBaU43N3pDWTtFOUhoTVIsMkJDekJ1QjtBcEYwcDBDM0I7O0FpTi85ekNZO0U5SGxNUixjQ1F1QjtBcEY2cDBDM0I7O0FRbnIwQ0U7RTJFbUJVLGNBQTJCO0FuRm9xMEN2Qzs7QWlObCt6Q1k7RTlINU1SLHlCQ2F1QjtBcEZxcTBDM0I7O0FpTmorekNZO0U5SGhNUixxQkNKdUI7QXBGeXEwQzNCOztBaU5oK3pDWTtFOUhoTVIseUJDVHVCO0FwRjZxMEMzQjs7QWlOLzl6Q1k7RTlIaE1SLDRCQ2R1QjtBcEZpcjBDM0I7O0FpTjk5ekNZO0U5SGhNUiwwQkNuQnVCO0FwRnFyMEMzQjs7QWlONzl6Q1k7RTlIaE1SLDJCQ3hCdUI7QXBGeXIwQzNCOztBaU4vL3pDWTtFOUhsTVIsY0NTdUI7QXBGNHIwQzNCOztBUW50MENFO0UyRW1CVSxjQUEyQjtBbkZvczBDdkM7O0FpTmxnMENZO0U5SDVNUix5QkNjdUI7QXBGb3MwQzNCOztBaU5qZzBDWTtFOUhoTVIscUJDSHVCO0FwRndzMEMzQjs7QWlOaGcwQ1k7RTlIaE1SLHlCQ1J1QjtBcEY0czBDM0I7O0FpTi8vekNZO0U5SGhNUiw0QkNidUI7QXBGZ3QwQzNCOztBaU45L3pDWTtFOUhoTVIsMEJDbEJ1QjtBcEZvdDBDM0I7O0FpTjcvekNZO0U5SGhNUiwyQkN2QnVCO0FwRnd0MEMzQjs7QWlObGwwQ0k7RTlIcEpBLHlCQ2tCc0I7QXBGd3QwQzFCOztBNEU5djBDRTtFT3lCRSxjQ2dCdUI7QXBGeXQwQzNCOztBUXZ2MENFO0UyRW1CVSxjQUEyQjtBbkZ3dTBDdkM7O0E0RHR3MENFO0V1Qm9CRSx5QkNxQnVCO0FwRml1MEMzQjs7QThENXYwQ0U7RXFCdUJFLHFCQ0l1QjtBcEZxdTBDM0I7O0FpTmxsMENJO0U5SGxKQSx5QkNEdUI7QXBGeXUwQzNCOztBaU5qbDBDSTtFOUhsSkEsNEJDTnVCO0FwRjZ1MEMzQjs7QWlOaGwwQ0k7RTlIbEpBLDBCQ1h1QjtBcEZpdjBDM0I7O0FpTi9rMENJO0U5SGxKQSwyQkNoQnVCO0FwRnF2MEMzQjs7QWlObmswQ1k7RTlIbE1SLGNDY3VCO0FwRjJ2MEMzQjs7QVF2eDBDRTtFMkVtQlUsY0FBMkI7QW5Gd3cwQ3ZDOztBaU50azBDWTtFOUg1TVIseUJDbUJ1QjtBcEZtdzBDM0I7O0FpTnJrMENZO0U5SGhNUixxQkNFdUI7QXBGdXcwQzNCOztBaU5wazBDWTtFOUhoTVIseUJDSHVCO0FwRjJ3MEMzQjs7QWlObmswQ1k7RTlIaE1SLDRCQ1J1QjtBcEYrdzBDM0I7O0FpTmxrMENZO0U5SGhNUiwwQkNidUI7QXBGbXgwQzNCOztBaU5qazBDWTtFOUhoTVIsMkJDbEJ1QjtBcEZ1eDBDM0I7O0FpTm5tMENZO0U5SGxNUixjQ2V1QjtBcEYweDBDM0I7O0FRdnowQ0U7RTJFbUJVLGNBQTJCO0FuRnd5MEN2Qzs7QWlOdG0wQ1k7RTlINU1SLHlCQ29CdUI7QXBGa3kwQzNCOztBaU5ybTBDWTtFOUhoTVIscUJDR3VCO0FwRnN5MEMzQjs7QWlOcG0wQ1k7RTlIaE1SLHlCQ0Z1QjtBcEYweTBDM0I7O0FpTm5tMENZO0U5SGhNUiw0QkNQdUI7QXBGOHkwQzNCOztBaU5sbTBDWTtFOUhoTVIsMEJDWnVCO0FwRmt6MEMzQjs7QWlOam0wQ1k7RTlIaE1SLDJCQ2pCdUI7QXBGc3owQzNCOztBaU5ubzBDWTtFOUhsTVIsY0NpQnVCO0FwRnd6MEMzQjs7QVF2MTBDRTtFMkVtQlUsY0FBMkI7QW5GdzAwQ3ZDOztBaU50bzBDWTtFOUg1TVIseUJDc0J1QjtBcEZnMDBDM0I7O0FpTnJvMENZO0U5SGhNUixxQkNLdUI7QXBGbzAwQzNCOztBaU5wbzBDWTtFOUhoTVIseUJDQXVCO0FwRncwMEMzQjs7QWlObm8wQ1k7RTlIaE1SLDRCQ0x1QjtBcEY0MDBDM0I7O0FpTmxvMENZO0U5SGhNUiwwQkNWdUI7QXBGZzEwQzNCOztBaU5qbzBDWTtFOUhoTVIsMkJDZnVCO0FwRm8xMEMzQjs7QWlObnEwQ1k7RTlIbE1SLGNDa0J1QjtBcEZ1MTBDM0I7O0FRdjMwQ0U7RTJFbUJVLGNBQTJCO0FuRncyMEN2Qzs7QWlOdHEwQ1k7RTlINU1SLHlCQ3VCdUI7QXBGKzEwQzNCOztBaU5ycTBDWTtFOUhoTVIscUJDTXVCO0FwRm0yMEMzQjs7QWlOcHEwQ1k7RTlIaE1SLHlCQ0N1QjtBcEZ1MjBDM0I7O0FpTm5xMENZO0U5SGhNUiw0QkNKdUI7QXBGMjIwQzNCOztBaU5scTBDWTtFOUhoTVIsMEJDVHVCO0FwRisyMEMzQjs7QWlOanEwQ1k7RTlIaE1SLDJCQ2R1QjtBcEZtMzBDM0I7O0FpTm5zMENZO0U5SGxNUixjQ21CdUI7QXBGczMwQzNCOztBUXY1MENFO0UyRW1CVSxjQUEyQjtBbkZ3NDBDdkM7O0FpTnRzMENZO0U5SDVNUix5QkN3QnVCO0FwRjgzMEMzQjs7QWlOcnMwQ1k7RTlIaE1SLHFCQ091QjtBcEZrNDBDM0I7O0FpTnBzMENZO0U5SGhNUix5QkNFdUI7QXBGczQwQzNCOztBaU5uczBDWTtFOUhoTVIsNEJDSHVCO0FwRjA0MEMzQjs7QWlObHMwQ1k7RTlIaE1SLDBCQ1J1QjtBcEY4NDBDM0I7O0FpTmpzMENZO0U5SGhNUiwyQkNidUI7QXBGazUwQzNCOztBaU50eDBDSTtFOUhwSkEseUJDNEJtQjtBcEZrNTBDdkI7O0E0RWw4MENFO0VPeUJFLGNDMEJvQjtBcEZtNTBDeEI7O0FRMzcwQ0U7RTJFbUJVLGNBQTJCO0FuRjQ2MEN2Qzs7QTREMTgwQ0U7RXVCb0JFLHlCQytCb0I7QXBGMjUwQ3hCOztBOERoODBDRTtFcUJ1QkUscUJDY29CO0FwRis1MEN4Qjs7QWlOdHgwQ0k7RTlIbEpBLHlCQ1NvQjtBcEZtNjBDeEI7O0FpTnJ4MENJO0U5SGxKQSw0QkNJb0I7QXBGdTYwQ3hCOztBaU5weDBDSTtFOUhsSkEsMEJDRG9CO0FwRjI2MEN4Qjs7QWlObngwQ0k7RTlIbEpBLDJCQ05vQjtBcEYrNjBDeEI7O0FpTnZ3MENZO0U5SGxNUixjQ3dCb0I7QXBGcTcwQ3hCOztBUTM5MENFO0UyRW1CVSxjQUEyQjtBbkY0ODBDdkM7O0FpTjF3MENZO0U5SDVNUix5QkM2Qm9CO0FwRjY3MEN4Qjs7QWlOencwQ1k7RTlIaE1SLHFCQ1lvQjtBcEZpODBDeEI7O0FpTnh3MENZO0U5SGhNUix5QkNPb0I7QXBGcTgwQ3hCOztBaU52dzBDWTtFOUhoTVIsNEJDRW9CO0FwRnk4MEN4Qjs7QWlOdHcwQ1k7RTlIaE1SLDBCQ0hvQjtBcEY2ODBDeEI7O0FpTnJ3MENZO0U5SGhNUiwyQkNSb0I7QXBGaTkwQ3hCOztBaU52eTBDWTtFOUhsTVIsY0N5Qm9CO0FwRm85MEN4Qjs7QVEzLzBDRTtFMkVtQlUsY0FBMkI7QW5GNCswQ3ZDOztBaU4xeTBDWTtFOUg1TVIseUJDOEJvQjtBcEY0OTBDeEI7O0FpTnp5MENZO0U5SGhNUixxQkNhb0I7QXBGZyswQ3hCOztBaU54eTBDWTtFOUhoTVIseUJDUW9CO0FwRm8rMEN4Qjs7QWlOdnkwQ1k7RTlIaE1SLDRCQ0dvQjtBcEZ3KzBDeEI7O0FpTnR5MENZO0U5SGhNUiwwQkNGb0I7QXBGNCswQ3hCOztBaU5yeTBDWTtFOUhoTVIsMkJDUG9CO0FwRmcvMEN4Qjs7QWlOdjAwQ1k7RTlIbE1SLGNDMkJvQjtBcEZrLzBDeEI7O0FRM2gxQ0U7RTJFbUJVLGNBQTJCO0FuRjRnMUN2Qzs7QWlOMTAwQ1k7RTlINU1SLHlCQ2dDb0I7QXBGMC8wQ3hCOztBaU56MDBDWTtFOUhoTVIscUJDZW9CO0FwRjgvMEN4Qjs7QWlOeDAwQ1k7RTlIaE1SLHlCQ1VvQjtBcEZrZzFDeEI7O0FpTnYwMENZO0U5SGhNUiw0QkNLb0I7QXBGc2cxQ3hCOztBaU50MDBDWTtFOUhoTVIsMEJDQW9CO0FwRjBnMUN4Qjs7QWlOcjAwQ1k7RTlIaE1SLDJCQ0xvQjtBcEY4ZzFDeEI7O0FpTnYyMENZO0U5SGxNUixjQzRCb0I7QXBGaWgxQ3hCOztBUTNqMUNFO0UyRW1CVSxjQUEyQjtBbkY0aTFDdkM7O0FpTjEyMENZO0U5SDVNUix5QkNpQ29CO0FwRnloMUN4Qjs7QWlOejIwQ1k7RTlIaE1SLHFCQ2dCb0I7QXBGNmgxQ3hCOztBaU54MjBDWTtFOUhoTVIseUJDV29CO0FwRmlpMUN4Qjs7QWlOdjIwQ1k7RTlIaE1SLDRCQ01vQjtBcEZxaTFDeEI7O0FpTnQyMENZO0U5SGhNUiwwQkNDb0I7QXBGeWkxQ3hCOztBaU5yMjBDWTtFOUhoTVIsMkJDSm9CO0FwRjZpMUN4Qjs7QWlOdjQwQ1k7RTlIbE1SLGNDNkJvQjtBcEZnajFDeEI7O0FRM2wxQ0U7RTJFbUJVLGNBQTJCO0FuRjRrMUN2Qzs7QWlOMTQwQ1k7RTlINU1SLHlCQ2tDb0I7QXBGd2oxQ3hCOztBaU56NDBDWTtFOUhoTVIscUJDaUJvQjtBcEY0ajFDeEI7O0FpTng0MENZO0U5SGhNUix5QkNZb0I7QXBGZ2sxQ3hCOztBaU52NDBDWTtFOUhoTVIsNEJDT29CO0FwRm9rMUN4Qjs7QWlOdDQwQ1k7RTlIaE1SLDBCQ0VvQjtBcEZ3azFDeEI7O0FpTnI0MENZO0U5SGhNUiwyQkNIb0I7QXBGNGsxQ3hCOztBaU4xOTBDSTtFOUhwSkEseUJDNkNtQjtBcEZxazFDdkI7O0FpTno5MENJO0U5SHBKQSxjQzJDb0I7QXBGc2sxQ3hCOztBUS9uMUNFO0UyRW1CVSxjQUEyQjtBbkZnbjFDdkM7O0FpTjU5MENJO0U5SDlKQSx5QkNnRG9CO0FwRjhrMUN4Qjs7QWlOMzkwQ0k7RTlIbEpBLHFCQytCb0I7QXBGa2wxQ3hCOztBaU4xOTBDSTtFOUhsSkEseUJDMEJvQjtBcEZzbDFDeEI7O0FpTno5MENJO0U5SGxKQSw0QkNxQm9CO0FwRjBsMUN4Qjs7QWlOeDkwQ0k7RTlIbEpBLDBCQ2dCb0I7QXBGOGwxQ3hCOztBaU52OTBDSTtFOUhsSkEsMkJDV29CO0FwRmttMUN4Qjs7QWlOMzgwQ1k7RTlIbE1SLGNDeUNvQjtBcEZ3bTFDeEI7O0FRL3AxQ0U7RTJFbUJVLGNBQTJCO0FuRmdwMUN2Qzs7QWlOOTgwQ1k7RTlINU1SLHlCQzhDb0I7QXBGZ24xQ3hCOztBaU43ODBDWTtFOUhoTVIscUJDNkJvQjtBcEZvbjFDeEI7O0FpTjU4MENZO0U5SGhNUix5QkN3Qm9CO0FwRnduMUN4Qjs7QWlOMzgwQ1k7RTlIaE1SLDRCQ21Cb0I7QXBGNG4xQ3hCOztBaU4xODBDWTtFOUhoTVIsMEJDY29CO0FwRmdvMUN4Qjs7QWlOejgwQ1k7RTlIaE1SLDJCQ1NvQjtBcEZvbzFDeEI7O0FpTjMrMENZO0U5SGxNUixjQzBDb0I7QXBGdW8xQ3hCOztBUS9yMUNFO0UyRW1CVSxjQUEyQjtBbkZncjFDdkM7O0FpTjkrMENZO0U5SDVNUix5QkMrQ29CO0FwRitvMUN4Qjs7QWlONyswQ1k7RTlIaE1SLHFCQzhCb0I7QXBGbXAxQ3hCOztBaU41KzBDWTtFOUhoTVIseUJDeUJvQjtBcEZ1cDFDeEI7O0FpTjMrMENZO0U5SGhNUiw0QkNvQm9CO0FwRjJwMUN4Qjs7QWlOMSswQ1k7RTlIaE1SLDBCQ2VvQjtBcEYrcDFDeEI7O0FpTnorMENZO0U5SGhNUiwyQkNVb0I7QXBGbXExQ3hCOztBaU4zZzFDWTtFOUhsTVIsY0M0Q29CO0FwRnFxMUN4Qjs7QVEvdDFDRTtFMkVtQlUsY0FBMkI7QW5GZ3QxQ3ZDOztBaU45ZzFDWTtFOUg1TVIseUJDaURvQjtBcEY2cTFDeEI7O0FpTjdnMUNZO0U5SGhNUixxQkNnQ29CO0FwRmlyMUN4Qjs7QWlONWcxQ1k7RTlIaE1SLHlCQzJCb0I7QXBGcXIxQ3hCOztBaU4zZzFDWTtFOUhoTVIsNEJDc0JvQjtBcEZ5cjFDeEI7O0FpTjFnMUNZO0U5SGhNUiwwQkNpQm9CO0FwRjZyMUN4Qjs7QWlOemcxQ1k7RTlIaE1SLDJCQ1lvQjtBcEZpczFDeEI7O0FpTjNpMUNZO0U5SGxNUixjQzZDb0I7QXBGb3MxQ3hCOztBUS92MUNFO0UyRW1CVSxjQUEyQjtBbkZndjFDdkM7O0FpTjlpMUNZO0U5SDVNUix5QkNrRG9CO0FwRjRzMUN4Qjs7QWlON2kxQ1k7RTlIaE1SLHFCQ2lDb0I7QXBGZ3QxQ3hCOztBaU41aTFDWTtFOUhoTVIseUJDNEJvQjtBcEZvdDFDeEI7O0FpTjNpMUNZO0U5SGhNUiw0QkN1Qm9CO0FwRnd0MUN4Qjs7QWlOMWkxQ1k7RTlIaE1SLDBCQ2tCb0I7QXBGNHQxQ3hCOztBaU56aTFDWTtFOUhoTVIsMkJDYW9CO0FwRmd1MUN4Qjs7QWlOM2sxQ1k7RTlIbE1SLGNDOENvQjtBcEZtdTFDeEI7O0FRL3gxQ0U7RTJFbUJVLGNBQTJCO0FuRmd4MUN2Qzs7QWlOOWsxQ1k7RTlINU1SLHlCQ21Eb0I7QXBGMnUxQ3hCOztBaU43azFDWTtFOUhoTVIscUJDa0NvQjtBcEYrdTFDeEI7O0FpTjVrMUNZO0U5SGhNUix5QkM2Qm9CO0FwRm12MUN4Qjs7QWlOM2sxQ1k7RTlIaE1SLDRCQ3dCb0I7QXBGdXYxQ3hCOztBaU4xazFDWTtFOUhoTVIsMEJDbUJvQjtBcEYydjFDeEI7O0FpTnprMUNZO0U5SGhNUiwyQkNjb0I7QXBGK3YxQ3hCOztBaU45cDFDSTtFOUhwSkEseUJDdURxQjtBcEYrdjFDekI7O0FpTjdwMUNJO0U5SHBKQSxjQ3FEc0I7QXBGZ3cxQzFCOztBUW4wMUNFO0UyRW1CVSxjQUEyQjtBbkZvejFDdkM7O0FpTmhxMUNJO0U5SDlKQSx5QkMwRHNCO0FwRnd3MUMxQjs7QWlOL3AxQ0k7RTlIbEpBLHFCQ3lDc0I7QXBGNHcxQzFCOztBaU45cDFDSTtFOUhsSkEseUJDb0NzQjtBcEZneDFDMUI7O0FpTjdwMUNJO0U5SGxKQSw0QkMrQnNCO0FwRm94MUMxQjs7QWlONXAxQ0k7RTlIbEpBLDBCQzBCc0I7QXBGd3gxQzFCOztBaU4zcDFDSTtFOUhsSkEsMkJDcUJzQjtBcEY0eDFDMUI7O0FpTi9vMUNZO0U5SGxNUixjQ21Ec0I7QXBGa3kxQzFCOztBUW4yMUNFO0UyRW1CVSxjQUEyQjtBbkZvMTFDdkM7O0FpTmxwMUNZO0U5SDVNUix5QkN3RHNCO0FwRjB5MUMxQjs7QWlOanAxQ1k7RTlIaE1SLHFCQ3VDc0I7QXBGOHkxQzFCOztBaU5ocDFDWTtFOUhoTVIseUJDa0NzQjtBcEZrejFDMUI7O0FpTi9vMUNZO0U5SGhNUiw0QkM2QnNCO0FwRnN6MUMxQjs7QWlOOW8xQ1k7RTlIaE1SLDBCQ3dCc0I7QXBGMHoxQzFCOztBaU43bzFDWTtFOUhoTVIsMkJDbUJzQjtBcEY4ejFDMUI7O0FpTi9xMUNZO0U5SGxNUixjQ29Ec0I7QXBGaTAxQzFCOztBUW40MUNFO0UyRW1CVSxjQUEyQjtBbkZvMzFDdkM7O0FpTmxyMUNZO0U5SDVNUix5QkN5RHNCO0FwRnkwMUMxQjs7QWlOanIxQ1k7RTlIaE1SLHFCQ3dDc0I7QXBGNjAxQzFCOztBaU5ocjFDWTtFOUhoTVIseUJDbUNzQjtBcEZpMTFDMUI7O0FpTi9xMUNZO0U5SGhNUiw0QkM4QnNCO0FwRnExMUMxQjs7QWlOOXExQ1k7RTlIaE1SLDBCQ3lCc0I7QXBGeTExQzFCOztBaU43cTFDWTtFOUhoTVIsMkJDb0JzQjtBcEY2MTFDMUI7O0FpTi9zMUNZO0U5SGxNUixjQ3NEc0I7QXBGKzExQzFCOztBUW42MUNFO0UyRW1CVSxjQUEyQjtBbkZvNTFDdkM7O0FpTmx0MUNZO0U5SDVNUix5QkMyRHNCO0FwRnUyMUMxQjs7QWlOanQxQ1k7RTlIaE1SLHFCQzBDc0I7QXBGMjIxQzFCOztBaU5odDFDWTtFOUhoTVIseUJDcUNzQjtBcEYrMjFDMUI7O0FpTi9zMUNZO0U5SGhNUiw0QkNnQ3NCO0FwRm0zMUMxQjs7QWlOOXMxQ1k7RTlIaE1SLDBCQzJCc0I7QXBGdTMxQzFCOztBaU43czFDWTtFOUhoTVIsMkJDc0JzQjtBcEYyMzFDMUI7O0FpTi91MUNZO0U5SGxNUixjQ3VEc0I7QXBGODMxQzFCOztBUW44MUNFO0UyRW1CVSxjQUEyQjtBbkZvNzFDdkM7O0FpTmx2MUNZO0U5SDVNUix5QkM0RHNCO0FwRnM0MUMxQjs7QWlOanYxQ1k7RTlIaE1SLHFCQzJDc0I7QXBGMDQxQzFCOztBaU5odjFDWTtFOUhoTVIseUJDc0NzQjtBcEY4NDFDMUI7O0FpTi91MUNZO0U5SGhNUiw0QkNpQ3NCO0FwRms1MUMxQjs7QWlOOXUxQ1k7RTlIaE1SLDBCQzRCc0I7QXBGczUxQzFCOztBaU43dTFDWTtFOUhoTVIsMkJDdUJzQjtBcEYwNTFDMUI7O0FpTi93MUNZO0U5SGxNUixjQ3dEc0I7QXBGNjUxQzFCOztBUW4rMUNFO0UyRW1CVSxjQUEyQjtBbkZvOTFDdkM7O0FpTmx4MUNZO0U5SDVNUix5QkM2RHNCO0FwRnE2MUMxQjs7QWlOangxQ1k7RTlIaE1SLHFCQzRDc0I7QXBGeTYxQzFCOztBaU5oeDFDWTtFOUhoTVIseUJDdUNzQjtBcEY2NjFDMUI7O0FpTi93MUNZO0U5SGhNUiw0QkNrQ3NCO0FwRmk3MUMxQjs7QWlOOXcxQ1k7RTlIaE1SLDBCQzZCc0I7QXBGcTcxQzFCOztBaU43dzFDWTtFOUhoTVIsMkJDd0JzQjtBcEZ5NzFDMUI7O0FpTmwyMUNJO0U5SHBKQSx5QkNpRXFCO0FwRnk3MUN6Qjs7QWlOajIxQ0k7RTlIcEpBLGNDK0RzQjtBcEYwNzFDMUI7O0FRdmcyQ0U7RTJFbUJVLGNBQTJCO0FuRncvMUN2Qzs7QWlOcDIxQ0k7RTlIOUpBLHlCQ29Fc0I7QXBGazgxQzFCOztBaU5uMjFDSTtFOUhsSkEscUJDbURzQjtBcEZzODFDMUI7O0FpTmwyMUNJO0U5SGxKQSx5QkM4Q3NCO0FwRjA4MUMxQjs7QWlOajIxQ0k7RTlIbEpBLDRCQ3lDc0I7QXBGODgxQzFCOztBaU5oMjFDSTtFOUhsSkEsMEJDb0NzQjtBcEZrOTFDMUI7O0FpTi8xMUNJO0U5SGxKQSwyQkMrQnNCO0FwRnM5MUMxQjs7QWlObjExQ1k7RTlIbE1SLGNDNkRzQjtBcEY0OTFDMUI7O0FRdmkyQ0U7RTJFbUJVLGNBQTJCO0FuRndoMkN2Qzs7QWlOdDExQ1k7RTlINU1SLHlCQ2tFc0I7QXBGbysxQzFCOztBaU5yMTFDWTtFOUhoTVIscUJDaURzQjtBcEZ3KzFDMUI7O0FpTnAxMUNZO0U5SGhNUix5QkM0Q3NCO0FwRjQrMUMxQjs7QWlObjExQ1k7RTlIaE1SLDRCQ3VDc0I7QXBGZy8xQzFCOztBaU5sMTFDWTtFOUhoTVIsMEJDa0NzQjtBcEZvLzFDMUI7O0FpTmoxMUNZO0U5SGhNUiwyQkM2QnNCO0FwRncvMUMxQjs7QWlObjMxQ1k7RTlIbE1SLGNDOERzQjtBcEYyLzFDMUI7O0FRdmsyQ0U7RTJFbUJVLGNBQTJCO0FuRndqMkN2Qzs7QWlOdDMxQ1k7RTlINU1SLHlCQ21Fc0I7QXBGbWcyQzFCOztBaU5yMzFDWTtFOUhoTVIscUJDa0RzQjtBcEZ1ZzJDMUI7O0FpTnAzMUNZO0U5SGhNUix5QkM2Q3NCO0FwRjJnMkMxQjs7QWlObjMxQ1k7RTlIaE1SLDRCQ3dDc0I7QXBGK2cyQzFCOztBaU5sMzFDWTtFOUhoTVIsMEJDbUNzQjtBcEZtaDJDMUI7O0FpTmozMUNZO0U5SGhNUiwyQkM4QnNCO0FwRnVoMkMxQjs7QWlObjUxQ1k7RTlIbE1SLGNDZ0VzQjtBcEZ5aDJDMUI7O0FRdm0yQ0U7RTJFbUJVLGNBQTJCO0FuRndsMkN2Qzs7QWlOdDUxQ1k7RTlINU1SLHlCQ3FFc0I7QXBGaWkyQzFCOztBaU5yNTFDWTtFOUhoTVIscUJDb0RzQjtBcEZxaTJDMUI7O0FpTnA1MUNZO0U5SGhNUix5QkMrQ3NCO0FwRnlpMkMxQjs7QWlObjUxQ1k7RTlIaE1SLDRCQzBDc0I7QXBGNmkyQzFCOztBaU5sNTFDWTtFOUhoTVIsMEJDcUNzQjtBcEZpajJDMUI7O0FpTmo1MUNZO0U5SGhNUiwyQkNnQ3NCO0FwRnFqMkMxQjs7QWlObjcxQ1k7RTlIbE1SLGNDaUVzQjtBcEZ3ajJDMUI7O0FRdm8yQ0U7RTJFbUJVLGNBQTJCO0FuRnduMkN2Qzs7QWlOdDcxQ1k7RTlINU1SLHlCQ3NFc0I7QXBGZ2syQzFCOztBaU5yNzFDWTtFOUhoTVIscUJDcURzQjtBcEZvazJDMUI7O0FpTnA3MUNZO0U5SGhNUix5QkNnRHNCO0FwRndrMkMxQjs7QWlObjcxQ1k7RTlIaE1SLDRCQzJDc0I7QXBGNGsyQzFCOztBaU5sNzFDWTtFOUhoTVIsMEJDc0NzQjtBcEZnbDJDMUI7O0FpTmo3MUNZO0U5SGhNUiwyQkNpQ3NCO0FwRm9sMkMxQjs7QWlObjkxQ1k7RTlIbE1SLGNDa0VzQjtBcEZ1bDJDMUI7O0FRdnEyQ0U7RTJFbUJVLGNBQTJCO0FuRndwMkN2Qzs7QWlOdDkxQ1k7RTlINU1SLHlCQ3VFc0I7QXBGK2wyQzFCOztBaU5yOTFDWTtFOUhoTVIscUJDc0RzQjtBcEZtbTJDMUI7O0FpTnA5MUNZO0U5SGhNUix5QkNpRHNCO0FwRnVtMkMxQjs7QWlObjkxQ1k7RTlIaE1SLDRCQzRDc0I7QXBGMm0yQzFCOztBaU5sOTFDWTtFOUhoTVIsMEJDdUNzQjtBcEYrbTJDMUI7O0FpTmo5MUNZO0U5SGhNUiwyQkNrQ3NCO0FwRm1uMkMxQjs7QWlOdGkyQ0k7RTlIcEpBLHlCQzJFcUI7QXBGbW4yQ3pCOztBaU5yaTJDSTtFOUhwSkEsY0N5RXNCO0FwRm9uMkMxQjs7QVEzczJDRTtFMkVtQlUsY0FBMkI7QW5GNHIyQ3ZDOztBaU54aTJDSTtFOUg5SkEseUJDOEVzQjtBcEY0bjJDMUI7O0FpTnZpMkNJO0U5SGxKQSxxQkM2RHNCO0FwRmdvMkMxQjs7QWlOdGkyQ0k7RTlIbEpBLHlCQ3dEc0I7QXBGb28yQzFCOztBaU5yaTJDSTtFOUhsSkEsNEJDbURzQjtBcEZ3bzJDMUI7O0FpTnBpMkNJO0U5SGxKQSwwQkM4Q3NCO0FwRjRvMkMxQjs7QWlObmkyQ0k7RTlIbEpBLDJCQ3lDc0I7QXBGZ3AyQzFCOztBaU52aDJDWTtFOUhsTVIsY0N1RXNCO0FwRnNwMkMxQjs7QVEzdTJDRTtFMkVtQlUsY0FBMkI7QW5GNHQyQ3ZDOztBaU4xaDJDWTtFOUg1TVIseUJDNEVzQjtBcEY4cDJDMUI7O0FpTnpoMkNZO0U5SGhNUixxQkMyRHNCO0FwRmtxMkMxQjs7QWlOeGgyQ1k7RTlIaE1SLHlCQ3NEc0I7QXBGc3EyQzFCOztBaU52aDJDWTtFOUhoTVIsNEJDaURzQjtBcEYwcTJDMUI7O0FpTnRoMkNZO0U5SGhNUiwwQkM0Q3NCO0FwRjhxMkMxQjs7QWlOcmgyQ1k7RTlIaE1SLDJCQ3VDc0I7QXBGa3IyQzFCOztBaU52ajJDWTtFOUhsTVIsY0N3RXNCO0FwRnFyMkMxQjs7QVEzdzJDRTtFMkVtQlUsY0FBMkI7QW5GNHYyQ3ZDOztBaU4xajJDWTtFOUg1TVIseUJDNkVzQjtBcEY2cjJDMUI7O0FpTnpqMkNZO0U5SGhNUixxQkM0RHNCO0FwRmlzMkMxQjs7QWlOeGoyQ1k7RTlIaE1SLHlCQ3VEc0I7QXBGcXMyQzFCOztBaU52ajJDWTtFOUhoTVIsNEJDa0RzQjtBcEZ5czJDMUI7O0FpTnRqMkNZO0U5SGhNUiwwQkM2Q3NCO0FwRjZzMkMxQjs7QWlOcmoyQ1k7RTlIaE1SLDJCQ3dDc0I7QXBGaXQyQzFCOztBaU52bDJDWTtFOUhsTVIsY0MwRXNCO0FwRm10MkMxQjs7QVEzeTJDRTtFMkVtQlUsY0FBMkI7QW5GNHgyQ3ZDOztBaU4xbDJDWTtFOUg1TVIseUJDK0VzQjtBcEYydDJDMUI7O0FpTnpsMkNZO0U5SGhNUixxQkM4RHNCO0FwRit0MkMxQjs7QWlOeGwyQ1k7RTlIaE1SLHlCQ3lEc0I7QXBGbXUyQzFCOztBaU52bDJDWTtFOUhoTVIsNEJDb0RzQjtBcEZ1dTJDMUI7O0FpTnRsMkNZO0U5SGhNUiwwQkMrQ3NCO0FwRjJ1MkMxQjs7QWlOcmwyQ1k7RTlIaE1SLDJCQzBDc0I7QXBGK3UyQzFCOztBaU52bjJDWTtFOUhsTVIsY0MyRXNCO0FwRmt2MkMxQjs7QVEzMDJDRTtFMkVtQlUsY0FBMkI7QW5GNHoyQ3ZDOztBaU4xbjJDWTtFOUg1TVIseUJDZ0ZzQjtBcEYwdjJDMUI7O0FpTnpuMkNZO0U5SGhNUixxQkMrRHNCO0FwRjh2MkMxQjs7QWlOeG4yQ1k7RTlIaE1SLHlCQzBEc0I7QXBGa3cyQzFCOztBaU52bjJDWTtFOUhoTVIsNEJDcURzQjtBcEZzdzJDMUI7O0FpTnRuMkNZO0U5SGhNUiwwQkNnRHNCO0FwRjB3MkMxQjs7QWlOcm4yQ1k7RTlIaE1SLDJCQzJDc0I7QXBGOHcyQzFCOztBaU52cDJDWTtFOUhsTVIsY0M0RXNCO0FwRml4MkMxQjs7QVEzMjJDRTtFMkVtQlUsY0FBMkI7QW5GNDEyQ3ZDOztBaU4xcDJDWTtFOUg1TVIseUJDaUZzQjtBcEZ5eDJDMUI7O0FpTnpwMkNZO0U5SGhNUixxQkNnRXNCO0FwRjZ4MkMxQjs7QWlOeHAyQ1k7RTlIaE1SLHlCQzJEc0I7QXBGaXkyQzFCOztBaU52cDJDWTtFOUhoTVIsNEJDc0RzQjtBcEZxeTJDMUI7O0FpTnRwMkNZO0U5SGhNUiwwQkNpRHNCO0FwRnl5MkMxQjs7QWlOcnAyQ1k7RTlIaE1SLDJCQzRDc0I7QXBGNnkyQzFCOztBaU4xdTJDSTtFOUhwSkEseUJDcUZtQjtBcEY2eTJDdkI7O0FpTnp1MkNJO0U5SHBKQSxjQ21Gb0I7QXBGOHkyQ3hCOztBUS80MkNFO0UyRW1CVSxjQUEyQjtBbkZnNDJDdkM7O0FpTjV1MkNJO0U5SDlKQSx5QkN3Rm9CO0FwRnN6MkN4Qjs7QWlOM3UyQ0k7RTlIbEpBLHFCQ3VFb0I7QXBGMHoyQ3hCOztBaU4xdTJDSTtFOUhsSkEseUJDa0VvQjtBcEY4ejJDeEI7O0FpTnp1MkNJO0U5SGxKQSw0QkM2RG9CO0FwRmswMkN4Qjs7QWlOeHUyQ0k7RTlIbEpBLDBCQ3dEb0I7QXBGczAyQ3hCOztBaU52dTJDSTtFOUhsSkEsMkJDbURvQjtBcEYwMDJDeEI7O0FpTjN0MkNZO0U5SGxNUixjQ2lGb0I7QXBGZzEyQ3hCOztBUS82MkNFO0UyRW1CVSxjQUEyQjtBbkZnNjJDdkM7O0FpTjl0MkNZO0U5SDVNUix5QkNzRm9CO0FwRncxMkN4Qjs7QWlON3QyQ1k7RTlIaE1SLHFCQ3FFb0I7QXBGNDEyQ3hCOztBaU41dDJDWTtFOUhoTVIseUJDZ0VvQjtBcEZnMjJDeEI7O0FpTjN0MkNZO0U5SGhNUiw0QkMyRG9CO0FwRm8yMkN4Qjs7QWlOMXQyQ1k7RTlIaE1SLDBCQ3NEb0I7QXBGdzIyQ3hCOztBaU56dDJDWTtFOUhoTVIsMkJDaURvQjtBcEY0MjJDeEI7O0FpTjN2MkNZO0U5SGxNUixjQ2tGb0I7QXBGKzIyQ3hCOztBUS84MkNFO0UyRW1CVSxjQUEyQjtBbkZnODJDdkM7O0FpTjl2MkNZO0U5SDVNUix5QkN1Rm9CO0FwRnUzMkN4Qjs7QWlON3YyQ1k7RTlIaE1SLHFCQ3NFb0I7QXBGMjMyQ3hCOztBaU41djJDWTtFOUhoTVIseUJDaUVvQjtBcEYrMzJDeEI7O0FpTjN2MkNZO0U5SGhNUiw0QkM0RG9CO0FwRm00MkN4Qjs7QWlOMXYyQ1k7RTlIaE1SLDBCQ3VEb0I7QXBGdTQyQ3hCOztBaU56djJDWTtFOUhoTVIsMkJDa0RvQjtBcEYyNDJDeEI7O0FpTjN4MkNZO0U5SGxNUixjQ29Gb0I7QXBGNjQyQ3hCOztBUS8rMkNFO0UyRW1CVSxjQUEyQjtBbkZnKzJDdkM7O0FpTjl4MkNZO0U5SDVNUix5QkN5Rm9CO0FwRnE1MkN4Qjs7QWlON3gyQ1k7RTlIaE1SLHFCQ3dFb0I7QXBGeTUyQ3hCOztBaU41eDJDWTtFOUhoTVIseUJDbUVvQjtBcEY2NTJDeEI7O0FpTjN4MkNZO0U5SGhNUiw0QkM4RG9CO0FwRmk2MkN4Qjs7QWlOMXgyQ1k7RTlIaE1SLDBCQ3lEb0I7QXBGcTYyQ3hCOztBaU56eDJDWTtFOUhoTVIsMkJDb0RvQjtBcEZ5NjJDeEI7O0FpTjN6MkNZO0U5SGxNUixjQ3FGb0I7QXBGNDYyQ3hCOztBUS9nM0NFO0UyRW1CVSxjQUEyQjtBbkZnZzNDdkM7O0FpTjl6MkNZO0U5SDVNUix5QkMwRm9CO0FwRm83MkN4Qjs7QWlON3oyQ1k7RTlIaE1SLHFCQ3lFb0I7QXBGdzcyQ3hCOztBaU41ejJDWTtFOUhoTVIseUJDb0VvQjtBcEY0NzJDeEI7O0FpTjN6MkNZO0U5SGhNUiw0QkMrRG9CO0FwRmc4MkN4Qjs7QWlOMXoyQ1k7RTlIaE1SLDBCQzBEb0I7QXBGbzgyQ3hCOztBaU56ejJDWTtFOUhoTVIsMkJDcURvQjtBcEZ3ODJDeEI7O0FpTjMxMkNZO0U5SGxNUixjQ3NGb0I7QXBGMjgyQ3hCOztBUS9pM0NFO0UyRW1CVSxjQUEyQjtBbkZnaTNDdkM7O0FpTjkxMkNZO0U5SDVNUix5QkMyRm9CO0FwRm05MkN4Qjs7QWlONzEyQ1k7RTlIaE1SLHFCQzBFb0I7QXBGdTkyQ3hCOztBaU41MTJDWTtFOUhoTVIseUJDcUVvQjtBcEYyOTJDeEI7O0FpTjMxMkNZO0U5SGhNUiw0QkNnRW9CO0FwRis5MkN4Qjs7QWlOMTEyQ1k7RTlIaE1SLDBCQzJEb0I7QXBGbSsyQ3hCOztBaU56MTJDWTtFOUhoTVIsMkJDc0RvQjtBcEZ1KzJDeEI7O0FpTjk2MkNJO0U5SHBKQSx5QkMrRm1CO0FwRnUrMkN2Qjs7QWlONzYyQ0k7RTlIcEpBLGNDNkZvQjtBcEZ3KzJDeEI7O0FRbmwzQ0U7RTJFbUJVLGNBQTJCO0FuRm9rM0N2Qzs7QWlOaDcyQ0k7RTlIOUpBLHlCQ2tHb0I7QXBGZy8yQ3hCOztBaU4vNjJDSTtFOUhsSkEscUJDaUZvQjtBcEZvLzJDeEI7O0FpTjk2MkNJO0U5SGxKQSx5QkM0RW9CO0FwRncvMkN4Qjs7QWlONzYyQ0k7RTlIbEpBLDRCQ3VFb0I7QXBGNC8yQ3hCOztBaU41NjJDSTtFOUhsSkEsMEJDa0VvQjtBcEZnZzNDeEI7O0FpTjM2MkNJO0U5SGxKQSwyQkM2RG9CO0FwRm9nM0N4Qjs7QWlOLzUyQ1k7RTlIbE1SLGNDMkZvQjtBcEYwZzNDeEI7O0FRbm4zQ0U7RTJFbUJVLGNBQTJCO0FuRm9tM0N2Qzs7QWlObDYyQ1k7RTlINU1SLHlCQ2dHb0I7QXBGa2gzQ3hCOztBaU5qNjJDWTtFOUhoTVIscUJDK0VvQjtBcEZzaDNDeEI7O0FpTmg2MkNZO0U5SGhNUix5QkMwRW9CO0FwRjBoM0N4Qjs7QWlOLzUyQ1k7RTlIaE1SLDRCQ3FFb0I7QXBGOGgzQ3hCOztBaU45NTJDWTtFOUhoTVIsMEJDZ0VvQjtBcEZraTNDeEI7O0FpTjc1MkNZO0U5SGhNUiwyQkMyRG9CO0FwRnNpM0N4Qjs7QWlOLzcyQ1k7RTlIbE1SLGNDNEZvQjtBcEZ5aTNDeEI7O0FRbnAzQ0U7RTJFbUJVLGNBQTJCO0FuRm9vM0N2Qzs7QWlObDgyQ1k7RTlINU1SLHlCQ2lHb0I7QXBGaWozQ3hCOztBaU5qODJDWTtFOUhoTVIscUJDZ0ZvQjtBcEZxajNDeEI7O0FpTmg4MkNZO0U5SGhNUix5QkMyRW9CO0FwRnlqM0N4Qjs7QWlOLzcyQ1k7RTlIaE1SLDRCQ3NFb0I7QXBGNmozQ3hCOztBaU45NzJDWTtFOUhoTVIsMEJDaUVvQjtBcEZpazNDeEI7O0FpTjc3MkNZO0U5SGhNUiwyQkM0RG9CO0FwRnFrM0N4Qjs7QWlOLzkyQ1k7RTlIbE1SLGNDOEZvQjtBcEZ1azNDeEI7O0FRbnIzQ0U7RTJFbUJVLGNBQTJCO0FuRm9xM0N2Qzs7QWlObCsyQ1k7RTlINU1SLHlCQ21Hb0I7QXBGK2szQ3hCOztBaU5qKzJDWTtFOUhoTVIscUJDa0ZvQjtBcEZtbDNDeEI7O0FpTmgrMkNZO0U5SGhNUix5QkM2RW9CO0FwRnVsM0N4Qjs7QWlOLzkyQ1k7RTlIaE1SLDRCQ3dFb0I7QXBGMmwzQ3hCOztBaU45OTJDWTtFOUhoTVIsMEJDbUVvQjtBcEYrbDNDeEI7O0FpTjc5MkNZO0U5SGhNUiwyQkM4RG9CO0FwRm1tM0N4Qjs7QWlOLy8yQ1k7RTlIbE1SLGNDK0ZvQjtBcEZzbTNDeEI7O0FRbnQzQ0U7RTJFbUJVLGNBQTJCO0FuRm9zM0N2Qzs7QWlObGczQ1k7RTlINU1SLHlCQ29Hb0I7QXBGOG0zQ3hCOztBaU5qZzNDWTtFOUhoTVIscUJDbUZvQjtBcEZrbjNDeEI7O0FpTmhnM0NZO0U5SGhNUix5QkM4RW9CO0FwRnNuM0N4Qjs7QWlOLy8yQ1k7RTlIaE1SLDRCQ3lFb0I7QXBGMG4zQ3hCOztBaU45LzJDWTtFOUhoTVIsMEJDb0VvQjtBcEY4bjNDeEI7O0FpTjcvMkNZO0U5SGhNUiwyQkMrRG9CO0FwRmtvM0N4Qjs7QWlOL2gzQ1k7RTlIbE1SLGNDZ0dvQjtBcEZxbzNDeEI7O0FRbnYzQ0U7RTJFbUJVLGNBQTJCO0FuRm91M0N2Qzs7QWlObGkzQ1k7RTlINU1SLHlCQ3FHb0I7QXBGNm8zQ3hCOztBaU5qaTNDWTtFOUhoTVIscUJDb0ZvQjtBcEZpcDNDeEI7O0FpTmhpM0NZO0U5SGhNUix5QkMrRW9CO0FwRnFwM0N4Qjs7QWlOL2gzQ1k7RTlIaE1SLDRCQzBFb0I7QXBGeXAzQ3hCOztBaU45aDNDWTtFOUhoTVIsMEJDcUVvQjtBcEY2cDNDeEI7O0FpTjdoM0NZO0U5SGhNUiwyQkNnRW9CO0FwRmlxM0N4Qjs7QWlObG4zQ0k7RTlIcEpBLHlCQ3lHb0I7QXBGaXEzQ3hCOztBaU5qbjNDSTtFOUhwSkEsY0N1R3FCO0FwRmtxM0N6Qjs7QVF2eDNDRTtFMkVtQlUsY0FBMkI7QW5Gd3czQ3ZDOztBaU5wbjNDSTtFOUg5SkEseUJDNEdxQjtBcEYwcTNDekI7O0FpTm5uM0NJO0U5SGxKQSxxQkMyRnFCO0FwRjhxM0N6Qjs7QWlObG4zQ0k7RTlIbEpBLHlCQ3NGcUI7QXBGa3IzQ3pCOztBaU5qbjNDSTtFOUhsSkEsNEJDaUZxQjtBcEZzcjNDekI7O0FpTmhuM0NJO0U5SGxKQSwwQkM0RXFCO0FwRjByM0N6Qjs7QWlOL20zQ0k7RTlIbEpBLDJCQ3VFcUI7QXBGOHIzQ3pCOztBaU5ubTNDWTtFOUhsTVIsY0NxR3FCO0FwRm9zM0N6Qjs7QVF2ejNDRTtFMkVtQlUsY0FBMkI7QW5Gd3kzQ3ZDOztBaU50bTNDWTtFOUg1TVIseUJDMEdxQjtBcEY0czNDekI7O0FpTnJtM0NZO0U5SGhNUixxQkN5RnFCO0FwRmd0M0N6Qjs7QWlOcG0zQ1k7RTlIaE1SLHlCQ29GcUI7QXBGb3QzQ3pCOztBaU5ubTNDWTtFOUhoTVIsNEJDK0VxQjtBcEZ3dDNDekI7O0FpTmxtM0NZO0U5SGhNUiwwQkMwRXFCO0FwRjR0M0N6Qjs7QWlOam0zQ1k7RTlIaE1SLDJCQ3FFcUI7QXBGZ3UzQ3pCOztBaU5ubzNDWTtFOUhsTVIsY0NzR3FCO0FwRm11M0N6Qjs7QVF2MTNDRTtFMkVtQlUsY0FBMkI7QW5GdzAzQ3ZDOztBaU50bzNDWTtFOUg1TVIseUJDMkdxQjtBcEYydTNDekI7O0FpTnJvM0NZO0U5SGhNUixxQkMwRnFCO0FwRit1M0N6Qjs7QWlOcG8zQ1k7RTlIaE1SLHlCQ3FGcUI7QXBGbXYzQ3pCOztBaU5ubzNDWTtFOUhoTVIsNEJDZ0ZxQjtBcEZ1djNDekI7O0FpTmxvM0NZO0U5SGhNUiwwQkMyRXFCO0FwRjJ2M0N6Qjs7QWlOam8zQ1k7RTlIaE1SLDJCQ3NFcUI7QXBGK3YzQ3pCOztBaU5ucTNDWTtFOUhsTVIsY0N3R3FCO0FwRml3M0N6Qjs7QVF2MzNDRTtFMkVtQlUsY0FBMkI7QW5GdzIzQ3ZDOztBaU50cTNDWTtFOUg1TVIseUJDNkdxQjtBcEZ5dzNDekI7O0FpTnJxM0NZO0U5SGhNUixxQkM0RnFCO0FwRjZ3M0N6Qjs7QWlOcHEzQ1k7RTlIaE1SLHlCQ3VGcUI7QXBGaXgzQ3pCOztBaU5ucTNDWTtFOUhoTVIsNEJDa0ZxQjtBcEZxeDNDekI7O0FpTmxxM0NZO0U5SGhNUiwwQkM2RXFCO0FwRnl4M0N6Qjs7QWlOanEzQ1k7RTlIaE1SLDJCQ3dFcUI7QXBGNngzQ3pCOztBaU5uczNDWTtFOUhsTVIsY0N5R3FCO0FwRmd5M0N6Qjs7QVF2NTNDRTtFMkVtQlUsY0FBMkI7QW5GdzQzQ3ZDOztBaU50czNDWTtFOUg1TVIseUJDOEdxQjtBcEZ3eTNDekI7O0FpTnJzM0NZO0U5SGhNUixxQkM2RnFCO0FwRjR5M0N6Qjs7QWlOcHMzQ1k7RTlIaE1SLHlCQ3dGcUI7QXBGZ3ozQ3pCOztBaU5uczNDWTtFOUhoTVIsNEJDbUZxQjtBcEZvejNDekI7O0FpTmxzM0NZO0U5SGhNUiwwQkM4RXFCO0FwRnd6M0N6Qjs7QWlOanMzQ1k7RTlIaE1SLDJCQ3lFcUI7QXBGNHozQ3pCOztBaU5udTNDWTtFOUhsTVIsY0MwR3FCO0FwRit6M0N6Qjs7QVF2NzNDRTtFMkVtQlUsY0FBMkI7QW5GdzYzQ3ZDOztBaU50dTNDWTtFOUg1TVIseUJDK0dxQjtBcEZ1MDNDekI7O0FpTnJ1M0NZO0U5SGhNUixxQkM4RnFCO0FwRjIwM0N6Qjs7QWlOcHUzQ1k7RTlIaE1SLHlCQ3lGcUI7QXBGKzAzQ3pCOztBaU5udTNDWTtFOUhoTVIsNEJDb0ZxQjtBcEZtMTNDekI7O0FpTmx1M0NZO0U5SGhNUiwwQkMrRXFCO0FwRnUxM0N6Qjs7QWlOanUzQ1k7RTlIaE1SLDJCQzBFcUI7QXBGMjEzQ3pCOztBaU50ejNDSTtFOUhwSkEseUJDbUhxQjtBcEYyMTNDekI7O0FpTnJ6M0NJO0U5SHBKQSxjQ2lIc0I7QXBGNDEzQzFCOztBUTM5M0NFO0UyRW1CVSxjQUEyQjtBbkY0ODNDdkM7O0FpTnh6M0NJO0U5SDlKQSx5QkNzSHNCO0FwRm8yM0MxQjs7QWlOdnozQ0k7RTlIbEpBLHFCQ3FHc0I7QXBGdzIzQzFCOztBaU50ejNDSTtFOUhsSkEseUJDZ0dzQjtBcEY0MjNDMUI7O0FpTnJ6M0NJO0U5SGxKQSw0QkMyRnNCO0FwRmczM0MxQjs7QWlOcHozQ0k7RTlIbEpBLDBCQ3NGc0I7QXBGbzMzQzFCOztBaU5uejNDSTtFOUhsSkEsMkJDaUZzQjtBcEZ3MzNDMUI7O0FpTnZ5M0NZO0U5SGxNUixjQytHc0I7QXBGODMzQzFCOztBUTMvM0NFO0UyRW1CVSxjQUEyQjtBbkY0KzNDdkM7O0FpTjF5M0NZO0U5SDVNUix5QkNvSHNCO0FwRnM0M0MxQjs7QWlOenkzQ1k7RTlIaE1SLHFCQ21Hc0I7QXBGMDQzQzFCOztBaU54eTNDWTtFOUhoTVIseUJDOEZzQjtBcEY4NDNDMUI7O0FpTnZ5M0NZO0U5SGhNUiw0QkN5RnNCO0FwRms1M0MxQjs7QWlOdHkzQ1k7RTlIaE1SLDBCQ29Gc0I7QXBGczUzQzFCOztBaU5yeTNDWTtFOUhoTVIsMkJDK0VzQjtBcEYwNTNDMUI7O0FpTnYwM0NZO0U5SGxNUixjQ2dIc0I7QXBGNjUzQzFCOztBUTNoNENFO0UyRW1CVSxjQUEyQjtBbkY0ZzRDdkM7O0FpTjEwM0NZO0U5SDVNUix5QkNxSHNCO0FwRnE2M0MxQjs7QWlOejAzQ1k7RTlIaE1SLHFCQ29Hc0I7QXBGeTYzQzFCOztBaU54MDNDWTtFOUhoTVIseUJDK0ZzQjtBcEY2NjNDMUI7O0FpTnYwM0NZO0U5SGhNUiw0QkMwRnNCO0FwRmk3M0MxQjs7QWlOdDAzQ1k7RTlIaE1SLDBCQ3FGc0I7QXBGcTczQzFCOztBaU5yMDNDWTtFOUhoTVIsMkJDZ0ZzQjtBcEZ5NzNDMUI7O0FpTnYyM0NZO0U5SGxNUixjQ2tIc0I7QXBGMjczQzFCOztBUTNqNENFO0UyRW1CVSxjQUEyQjtBbkY0aTRDdkM7O0FpTjEyM0NZO0U5SDVNUix5QkN1SHNCO0FwRm04M0MxQjs7QWlOejIzQ1k7RTlIaE1SLHFCQ3NHc0I7QXBGdTgzQzFCOztBaU54MjNDWTtFOUhoTVIseUJDaUdzQjtBcEYyODNDMUI7O0FpTnYyM0NZO0U5SGhNUiw0QkM0RnNCO0FwRis4M0MxQjs7QWlOdDIzQ1k7RTlIaE1SLDBCQ3VGc0I7QXBGbTkzQzFCOztBaU5yMjNDWTtFOUhoTVIsMkJDa0ZzQjtBcEZ1OTNDMUI7O0FpTnY0M0NZO0U5SGxNUixjQ21Ic0I7QXBGMDkzQzFCOztBUTNsNENFO0UyRW1CVSxjQUEyQjtBbkY0azRDdkM7O0FpTjE0M0NZO0U5SDVNUix5QkN3SHNCO0FwRmsrM0MxQjs7QWlOejQzQ1k7RTlIaE1SLHFCQ3VHc0I7QXBGcyszQzFCOztBaU54NDNDWTtFOUhoTVIseUJDa0dzQjtBcEYwKzNDMUI7O0FpTnY0M0NZO0U5SGhNUiw0QkM2RnNCO0FwRjgrM0MxQjs7QWlOdDQzQ1k7RTlIaE1SLDBCQ3dGc0I7QXBGay8zQzFCOztBaU5yNDNDWTtFOUhoTVIsMkJDbUZzQjtBcEZzLzNDMUI7O0FpTnY2M0NZO0U5SGxNUixjQ29Ic0I7QXBGeS8zQzFCOztBUTNuNENFO0UyRW1CVSxjQUEyQjtBbkY0bTRDdkM7O0FpTjE2M0NZO0U5SDVNUix5QkN5SHNCO0FwRmlnNEMxQjs7QWlOejYzQ1k7RTlIaE1SLHFCQ3dHc0I7QXBGcWc0QzFCOztBaU54NjNDWTtFOUhoTVIseUJDbUdzQjtBcEZ5ZzRDMUI7O0FpTnY2M0NZO0U5SGhNUiw0QkM4RnNCO0FwRjZnNEMxQjs7QWlOdDYzQ1k7RTlIaE1SLDBCQ3lGc0I7QXBGaWg0QzFCOztBaU5yNjNDWTtFOUhoTVIsMkJDb0ZzQjtBcEZxaDRDMUI7O0FpTjEvM0NJO0U5SHBKQSx5QkM2SG9CO0FwRnFoNEN4Qjs7QWlOei8zQ0k7RTlIcEpBLGNDMkhxQjtBcEZzaDRDekI7O0FRL3A0Q0U7RTJFbUJVLGNBQTJCO0FuRmdwNEN2Qzs7QWlONS8zQ0k7RTlIOUpBLHlCQ2dJcUI7QXBGOGg0Q3pCOztBaU4zLzNDSTtFOUhsSkEscUJDK0dxQjtBcEZraTRDekI7O0FpTjEvM0NJO0U5SGxKQSx5QkMwR3FCO0FwRnNpNEN6Qjs7QWlOei8zQ0k7RTlIbEpBLDRCQ3FHcUI7QXBGMGk0Q3pCOztBaU54LzNDSTtFOUhsSkEsMEJDZ0dxQjtBcEY4aTRDekI7O0FpTnYvM0NJO0U5SGxKQSwyQkMyRnFCO0FwRmtqNEN6Qjs7QWlOMyszQ1k7RTlIbE1SLGNDeUhxQjtBcEZ3ajRDekI7O0FRL3I0Q0U7RTJFbUJVLGNBQTJCO0FuRmdyNEN2Qzs7QWlOOSszQ1k7RTlINU1SLHlCQzhIcUI7QXBGZ2s0Q3pCOztBaU43KzNDWTtFOUhoTVIscUJDNkdxQjtBcEZvazRDekI7O0FpTjUrM0NZO0U5SGhNUix5QkN3R3FCO0FwRndrNEN6Qjs7QWlOMyszQ1k7RTlIaE1SLDRCQ21HcUI7QXBGNGs0Q3pCOztBaU4xKzNDWTtFOUhoTVIsMEJDOEZxQjtBcEZnbDRDekI7O0FpTnorM0NZO0U5SGhNUiwyQkN5RnFCO0FwRm9sNEN6Qjs7QWlOM2c0Q1k7RTlIbE1SLGNDMEhxQjtBcEZ1bDRDekI7O0FRL3Q0Q0U7RTJFbUJVLGNBQTJCO0FuRmd0NEN2Qzs7QWlOOWc0Q1k7RTlINU1SLHlCQytIcUI7QXBGK2w0Q3pCOztBaU43ZzRDWTtFOUhoTVIscUJDOEdxQjtBcEZtbTRDekI7O0FpTjVnNENZO0U5SGhNUix5QkN5R3FCO0FwRnVtNEN6Qjs7QWlOM2c0Q1k7RTlIaE1SLDRCQ29HcUI7QXBGMm00Q3pCOztBaU4xZzRDWTtFOUhoTVIsMEJDK0ZxQjtBcEYrbTRDekI7O0FpTnpnNENZO0U5SGhNUiwyQkMwRnFCO0FwRm1uNEN6Qjs7QWlOM2k0Q1k7RTlIbE1SLGNDNEhxQjtBcEZxbjRDekI7O0FRL3Y0Q0U7RTJFbUJVLGNBQTJCO0FuRmd2NEN2Qzs7QWlOOWk0Q1k7RTlINU1SLHlCQ2lJcUI7QXBGNm40Q3pCOztBaU43aTRDWTtFOUhoTVIscUJDZ0hxQjtBcEZpbzRDekI7O0FpTjVpNENZO0U5SGhNUix5QkMyR3FCO0FwRnFvNEN6Qjs7QWlOM2k0Q1k7RTlIaE1SLDRCQ3NHcUI7QXBGeW80Q3pCOztBaU4xaTRDWTtFOUhoTVIsMEJDaUdxQjtBcEY2bzRDekI7O0FpTnppNENZO0U5SGhNUiwyQkM0RnFCO0FwRmlwNEN6Qjs7QWlOM2s0Q1k7RTlIbE1SLGNDNkhxQjtBcEZvcDRDekI7O0FRL3g0Q0U7RTJFbUJVLGNBQTJCO0FuRmd4NEN2Qzs7QWlOOWs0Q1k7RTlINU1SLHlCQ2tJcUI7QXBGNHA0Q3pCOztBaU43azRDWTtFOUhoTVIscUJDaUhxQjtBcEZncTRDekI7O0FpTjVrNENZO0U5SGhNUix5QkM0R3FCO0FwRm9xNEN6Qjs7QWlOM2s0Q1k7RTlIaE1SLDRCQ3VHcUI7QXBGd3E0Q3pCOztBaU4xazRDWTtFOUhoTVIsMEJDa0dxQjtBcEY0cTRDekI7O0FpTnprNENZO0U5SGhNUiwyQkM2RnFCO0FwRmdyNEN6Qjs7QWlOM200Q1k7RTlIbE1SLGNDOEhxQjtBcEZtcjRDekI7O0FRL3o0Q0U7RTJFbUJVLGNBQTJCO0FuRmd6NEN2Qzs7QWlOOW00Q1k7RTlINU1SLHlCQ21JcUI7QXBGMnI0Q3pCOztBaU43bTRDWTtFOUhoTVIscUJDa0hxQjtBcEYrcjRDekI7O0FpTjVtNENZO0U5SGhNUix5QkM2R3FCO0FwRm1zNEN6Qjs7QWlOM200Q1k7RTlIaE1SLDRCQ3dHcUI7QXBGdXM0Q3pCOztBaU4xbTRDWTtFOUhoTVIsMEJDbUdxQjtBcEYyczRDekI7O0FpTnptNENZO0U5SGhNUiwyQkM4RnFCO0FwRitzNEN6Qjs7QWlOOXI0Q0k7RTlIcEpBLHlCQ3VJbUI7QXBGK3M0Q3ZCOztBaU43cjRDSTtFOUhwSkEsV0NxSWlCO0FwRmd0NENyQjs7QVFuMjRDRTtFMkVtQlUsY0FBMkI7QW5GbzE0Q3ZDOztBaU5oczRDSTtFOUg5SkEsc0JDMElpQjtBcEZ3dDRDckI7O0FpTi9yNENJO0U5SGxKQSxrQkN5SGlCO0FwRjR0NENyQjs7QWlOOXI0Q0k7RTlIbEpBLHNCQ29IaUI7QXBGZ3U0Q3JCOztBaU43cjRDSTtFOUhsSkEseUJDK0dpQjtBcEZvdTRDckI7O0FpTjVyNENJO0U5SGxKQSx1QkMwR2lCO0FwRnd1NENyQjs7QWlOM3I0Q0k7RTlIbEpBLHdCQ3FHaUI7QXBGNHU0Q3JCOztBaU4vcTRDWTtFOUhsTVIsV0NtSWlCO0FwRmt2NENyQjs7QVFuNDRDRTtFMkVtQlUsY0FBMkI7QW5GbzM0Q3ZDOztBaU5scjRDWTtFOUg1TVIsc0JDd0lpQjtBcEYwdjRDckI7O0FpTmpyNENZO0U5SGhNUixrQkN1SGlCO0FwRjh2NENyQjs7QWlOaHI0Q1k7RTlIaE1SLHNCQ2tIaUI7QXBGa3c0Q3JCOztBaU4vcTRDWTtFOUhoTVIseUJDNkdpQjtBcEZzdzRDckI7O0FpTjlxNENZO0U5SGhNUix1QkN3R2lCO0FwRjB3NENyQjs7QWlON3E0Q1k7RTlIaE1SLHdCQ21HaUI7QXBGOHc0Q3JCOztBaU4vczRDWTtFOUhsTVIsV0NvSWlCO0FwRml4NENyQjs7QVFuNjRDRTtFMkVtQlUsY0FBMkI7QW5GbzU0Q3ZDOztBaU5sdDRDWTtFOUg1TVIsc0JDeUlpQjtBcEZ5eDRDckI7O0FpTmp0NENZO0U5SGhNUixrQkN3SGlCO0FwRjZ4NENyQjs7QWlOaHQ0Q1k7RTlIaE1SLHNCQ21IaUI7QXBGaXk0Q3JCOztBaU4vczRDWTtFOUhoTVIseUJDOEdpQjtBcEZxeTRDckI7O0FpTjlzNENZO0U5SGhNUix1QkN5R2lCO0FwRnl5NENyQjs7QWlON3M0Q1k7RTlIaE1SLHdCQ29HaUI7QXBGNnk0Q3JCOztBaU4vdTRDWTtFOUhsTVIsV0NzSWlCO0FwRit5NENyQjs7QVFuODRDRTtFMkVtQlUsY0FBMkI7QW5Gbzc0Q3ZDOztBaU5sdjRDWTtFOUg1TVIsc0JDMklpQjtBcEZ1ejRDckI7O0FpTmp2NENZO0U5SGhNUixrQkMwSGlCO0FwRjJ6NENyQjs7QWlOaHY0Q1k7RTlIaE1SLHNCQ3FIaUI7QXBGK3o0Q3JCOztBaU4vdTRDWTtFOUhoTVIseUJDZ0hpQjtBcEZtMDRDckI7O0FpTjl1NENZO0U5SGhNUix1QkMyR2lCO0FwRnUwNENyQjs7QWlON3U0Q1k7RTlIaE1SLHdCQ3NHaUI7QXBGMjA0Q3JCOztBaU4vdzRDWTtFOUhsTVIsV0N1SWlCO0FwRjgwNENyQjs7QVFuKzRDRTtFMkVtQlUsY0FBMkI7QW5Gbzk0Q3ZDOztBaU5seDRDWTtFOUg1TVIsc0JDNElpQjtBcEZzMTRDckI7O0FpTmp4NENZO0U5SGhNUixrQkMySGlCO0FwRjAxNENyQjs7QWlOaHg0Q1k7RTlIaE1SLHNCQ3NIaUI7QXBGODE0Q3JCOztBaU4vdzRDWTtFOUhoTVIseUJDaUhpQjtBcEZrMjRDckI7O0FpTjl3NENZO0U5SGhNUix1QkM0R2lCO0FwRnMyNENyQjs7QWlON3c0Q1k7RTlIaE1SLHdCQ3VHaUI7QXBGMDI0Q3JCOztBaU4veTRDWTtFOUhsTVIsV0N3SWlCO0FwRjYyNENyQjs7QVFuZzVDRTtFMkVtQlUsY0FBMkI7QW5Gby80Q3ZDOztBaU5sejRDWTtFOUg1TVIsc0JDNklpQjtBcEZxMzRDckI7O0FpTmp6NENZO0U5SGhNUixrQkM0SGlCO0FwRnkzNENyQjs7QWlOaHo0Q1k7RTlIaE1SLHNCQ3VIaUI7QXBGNjM0Q3JCOztBaU4veTRDWTtFOUhoTVIseUJDa0hpQjtBcEZpNDRDckI7O0FpTjl5NENZO0U5SGhNUix1QkM2R2lCO0FwRnE0NENyQjs7QWlON3k0Q1k7RTlIaE1SLHdCQ3dHaUI7QXBGeTQ0Q3JCOztBaU5sNDRDSTtFOUhwSkEseUJDaUpvQjtBcEZ5NDRDeEI7O0FpTmo0NENJO0U5SHBKQSxjQytJcUI7QXBGMDQ0Q3pCOztBUXZpNUNFO0UyRW1CVSxjQUEyQjtBbkZ3aDVDdkM7O0FpTnA0NENJO0U5SDlKQSx5QkNvSnFCO0FwRms1NEN6Qjs7QWlObjQ0Q0k7RTlIbEpBLHFCQ21JcUI7QXBGczU0Q3pCOztBaU5sNDRDSTtFOUhsSkEseUJDOEhxQjtBcEYwNTRDekI7O0FpTmo0NENJO0U5SGxKQSw0QkN5SHFCO0FwRjg1NEN6Qjs7QWlOaDQ0Q0k7RTlIbEpBLDBCQ29IcUI7QXBGazY0Q3pCOztBaU4vMzRDSTtFOUhsSkEsMkJDK0dxQjtBcEZzNjRDekI7O0FpTm4zNENZO0U5SGxNUixjQzZJcUI7QXBGNDY0Q3pCOztBUXZrNUNFO0UyRW1CVSxjQUEyQjtBbkZ3ajVDdkM7O0FpTnQzNENZO0U5SDVNUix5QkNrSnFCO0FwRm83NEN6Qjs7QWlOcjM0Q1k7RTlIaE1SLHFCQ2lJcUI7QXBGdzc0Q3pCOztBaU5wMzRDWTtFOUhoTVIseUJDNEhxQjtBcEY0NzRDekI7O0FpTm4zNENZO0U5SGhNUiw0QkN1SHFCO0FwRmc4NEN6Qjs7QWlObDM0Q1k7RTlIaE1SLDBCQ2tIcUI7QXBGbzg0Q3pCOztBaU5qMzRDWTtFOUhoTVIsMkJDNkdxQjtBcEZ3ODRDekI7O0FpTm41NENZO0U5SGxNUixjQzhJcUI7QXBGMjg0Q3pCOztBUXZtNUNFO0UyRW1CVSxjQUEyQjtBbkZ3bDVDdkM7O0FpTnQ1NENZO0U5SDVNUix5QkNtSnFCO0FwRm05NEN6Qjs7QWlOcjU0Q1k7RTlIaE1SLHFCQ2tJcUI7QXBGdTk0Q3pCOztBaU5wNTRDWTtFOUhoTVIseUJDNkhxQjtBcEYyOTRDekI7O0FpTm41NENZO0U5SGhNUiw0QkN3SHFCO0FwRis5NEN6Qjs7QWlObDU0Q1k7RTlIaE1SLDBCQ21IcUI7QXBGbSs0Q3pCOztBaU5qNTRDWTtFOUhoTVIsMkJDOEdxQjtBcEZ1KzRDekI7O0FpTm43NENZO0U5SGxNUixjQ2dKcUI7QXBGeSs0Q3pCOztBUXZvNUNFO0UyRW1CVSxjQUEyQjtBbkZ3bjVDdkM7O0FpTnQ3NENZO0U5SDVNUix5QkNxSnFCO0FwRmkvNEN6Qjs7QWlOcjc0Q1k7RTlIaE1SLHFCQ29JcUI7QXBGcS80Q3pCOztBaU5wNzRDWTtFOUhoTVIseUJDK0hxQjtBcEZ5LzRDekI7O0FpTm43NENZO0U5SGhNUiw0QkMwSHFCO0FwRjYvNEN6Qjs7QWlObDc0Q1k7RTlIaE1SLDBCQ3FIcUI7QXBGaWc1Q3pCOztBaU5qNzRDWTtFOUhoTVIsMkJDZ0hxQjtBcEZxZzVDekI7O0FpTm45NENZO0U5SGxNUixjQ2lKcUI7QXBGd2c1Q3pCOztBUXZxNUNFO0UyRW1CVSxjQUEyQjtBbkZ3cDVDdkM7O0FpTnQ5NENZO0U5SDVNUix5QkNzSnFCO0FwRmdoNUN6Qjs7QWlOcjk0Q1k7RTlIaE1SLHFCQ3FJcUI7QXBGb2g1Q3pCOztBaU5wOTRDWTtFOUhoTVIseUJDZ0lxQjtBcEZ3aDVDekI7O0FpTm45NENZO0U5SGhNUiw0QkMySHFCO0FwRjRoNUN6Qjs7QWlObDk0Q1k7RTlIaE1SLDBCQ3NIcUI7QXBGZ2k1Q3pCOztBaU5qOTRDWTtFOUhoTVIsMkJDaUhxQjtBcEZvaTVDekI7O0FpTm4vNENZO0U5SGxNUixjQ2tKcUI7QXBGdWk1Q3pCOztBUXZzNUNFO0UyRW1CVSxjQUEyQjtBbkZ3cjVDdkM7O0FpTnQvNENZO0U5SDVNUix5QkN1SnFCO0FwRitpNUN6Qjs7QWlOci80Q1k7RTlIaE1SLHFCQ3NJcUI7QXBGbWo1Q3pCOztBaU5wLzRDWTtFOUhoTVIseUJDaUlxQjtBcEZ1ajVDekI7O0FpTm4vNENZO0U5SGhNUiw0QkM0SHFCO0FwRjJqNUN6Qjs7QWlObC80Q1k7RTlIaE1SLDBCQ3VIcUI7QXBGK2o1Q3pCOztBaU5qLzRDWTtFOUhoTVIsMkJDa0hxQjtBcEZtazVDekI7O0FpTngrNENBO0VBQ0ksb0NBQW9DO0FqTjIrNEN4Qzs7QWlOeis0Q0E7RUFDSSx3Q0FBd0M7QWpONCs0QzVDOztBaU4xKzRDQTtFQUNJLDJDQUEyQztBak42KzRDL0M7O0FpTjMrNENBO0VBQ0kseUNBQXlDO0FqTjgrNEM3Qzs7QWlONSs0Q0E7RUFDSSwwQ0FBMEM7QWpOKys0QzlDOztBaU4zKzRDQTtFOUhsUEksc0NFekJjO0FyRjB2NUNsQjs7QWlONSs0Q0E7RTlIaFBJLDBDRTlCYztBckY4djVDbEI7O0FpTjcrNENBO0U5SDlPSSw2Q0VuQ2M7QXJGa3c1Q2xCOztBaU45KzRDQTtFOUg1T0ksMkNFeENjO0FyRnN3NUNsQjs7QWlOLys0Q0E7RTlIMU9JLDRDRTdDYztBckYwdzVDbEI7O0FpTjkrNENBO0U5SG5RSSxnQ0VmYztBckZvdzVDbEI7O0FpTi8rNENBO0U5SGpRSSxvQ0VwQmM7QXJGd3c1Q2xCOztBaU5oLzRDQTtFOUgvUEksdUNFekJjO0FyRjR3NUNsQjs7QWlOai80Q0E7RTlIN1BJLHFDRTlCYztBckZneDVDbEI7O0FpTmwvNENBO0U5SDNQSSxzQ0VuQ2M7QXJGb3g1Q2xCOztBaU5qLzRDQTtFOUhyU0ksb0NFRWM7QXJGd3g1Q2xCOztBaU5sLzRDQTtFOUh4U0ksMENFUmM7QXJGc3k1Q2xCOztBc0N2ejVDQTtFdENpQkUsNkJBQTZCO0FBMHk1Qy9COztBa0N6KzRDQTtFbEM1VEksd0NBQXdDO0FBeXk1QzVDOztBQXJ5NUNBO0VBQ0UsWUFBWTtFQUVaLGNBQWM7QUF1eTVDaEIiLCJmaWxlIjoiYmFzZS5jc3MiLCJzb3VyY2VzQ29udGVudCI6WyIvKiBjeXJpbGxpYy1leHQgKi9cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogJ1JvYm90byc7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC13ZWlnaHQ6IDEwMDtcbiAgc3JjOiBsb2NhbCgnUm9ib3RvIFRoaW4nKSwgbG9jYWwoJ1JvYm90by1UaGluJyksIHVybCgnUm9ib3RvLTEwMC1jeXJpbGxpYy1leHQxLndvZmYyJykgZm9ybWF0KCd3b2ZmMicpO1xuICB1bmljb2RlLXJhbmdlOiBVKzA0NjAtMDUyRiwgVSsxQzgwLTFDODgsIFUrMjBCNCwgVSsyREUwLTJERkYsIFUrQTY0MC1BNjlGLCBVK0ZFMkUtRkUyRjtcbn1cbi8qIGN5cmlsbGljICovXG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6ICdSb2JvdG8nO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtd2VpZ2h0OiAxMDA7XG4gIHNyYzogbG9jYWwoJ1JvYm90byBUaGluJyksIGxvY2FsKCdSb2JvdG8tVGhpbicpLCB1cmwoJ1JvYm90by0xMDAtY3lyaWxsaWMyLndvZmYyJykgZm9ybWF0KCd3b2ZmMicpO1xuICB1bmljb2RlLXJhbmdlOiBVKzA0MDAtMDQ1RiwgVSswNDkwLTA0OTEsIFUrMDRCMC0wNEIxLCBVKzIxMTY7XG59XG4vKiBncmVlay1leHQgKi9cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogJ1JvYm90byc7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC13ZWlnaHQ6IDEwMDtcbiAgc3JjOiBsb2NhbCgnUm9ib3RvIFRoaW4nKSwgbG9jYWwoJ1JvYm90by1UaGluJyksIHVybCgnUm9ib3RvLTEwMC1ncmVlay1leHQzLndvZmYyJykgZm9ybWF0KCd3b2ZmMicpO1xuICB1bmljb2RlLXJhbmdlOiBVKzFGMDAtMUZGRjtcbn1cbi8qIGdyZWVrICovXG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6ICdSb2JvdG8nO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtd2VpZ2h0OiAxMDA7XG4gIHNyYzogbG9jYWwoJ1JvYm90byBUaGluJyksIGxvY2FsKCdSb2JvdG8tVGhpbicpLCB1cmwoJ1JvYm90by0xMDAtZ3JlZWs0LndvZmYyJykgZm9ybWF0KCd3b2ZmMicpO1xuICB1bmljb2RlLXJhbmdlOiBVKzAzNzAtMDNGRjtcbn1cbi8qIHZpZXRuYW1lc2UgKi9cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogJ1JvYm90byc7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC13ZWlnaHQ6IDEwMDtcbiAgc3JjOiBsb2NhbCgnUm9ib3RvIFRoaW4nKSwgbG9jYWwoJ1JvYm90by1UaGluJyksIHVybCgnUm9ib3RvLTEwMC12aWV0bmFtZXNlNS53b2ZmMicpIGZvcm1hdCgnd29mZjInKTtcbiAgdW5pY29kZS1yYW5nZTogVSswMTAyLTAxMDMsIFUrMDExMC0wMTExLCBVKzFFQTAtMUVGOSwgVSsyMEFCO1xufVxuLyogbGF0aW4tZXh0ICovXG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6ICdSb2JvdG8nO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtd2VpZ2h0OiAxMDA7XG4gIHNyYzogbG9jYWwoJ1JvYm90byBUaGluJyksIGxvY2FsKCdSb2JvdG8tVGhpbicpLCB1cmwoJ1JvYm90by0xMDAtbGF0aW4tZXh0Ni53b2ZmMicpIGZvcm1hdCgnd29mZjInKTtcbiAgdW5pY29kZS1yYW5nZTogVSswMTAwLTAyNEYsIFUrMDI1OSwgVSsxRTAwLTFFRkYsIFUrMjAyMCwgVSsyMEEwLTIwQUIsIFUrMjBBRC0yMENGLCBVKzIxMTMsIFUrMkM2MC0yQzdGLCBVK0E3MjAtQTdGRjtcbn1cbi8qIGxhdGluICovXG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6ICdSb2JvdG8nO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtd2VpZ2h0OiAxMDA7XG4gIHNyYzogbG9jYWwoJ1JvYm90byBUaGluJyksIGxvY2FsKCdSb2JvdG8tVGhpbicpLCB1cmwoJ1JvYm90by0xMDAtbGF0aW43LndvZmYyJykgZm9ybWF0KCd3b2ZmMicpO1xuICB1bmljb2RlLXJhbmdlOiBVKzAwMDAtMDBGRiwgVSswMTMxLCBVKzAxNTItMDE1MywgVSswMkJCLTAyQkMsIFUrMDJDNiwgVSswMkRBLCBVKzAyREMsIFUrMjAwMC0yMDZGLCBVKzIwNzQsIFUrMjBBQywgVSsyMTIyLCBVKzIxOTEsIFUrMjE5MywgVSsyMjEyLCBVKzIyMTUsIFUrRkVGRiwgVStGRkZEO1xufVxuLyogY3lyaWxsaWMtZXh0ICovXG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6ICdSb2JvdG8nO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtd2VpZ2h0OiAzMDA7XG4gIHNyYzogbG9jYWwoJ1JvYm90byBMaWdodCcpLCBsb2NhbCgnUm9ib3RvLUxpZ2h0JyksIHVybCgnUm9ib3RvLTMwMC1jeXJpbGxpYy1leHQ4LndvZmYyJykgZm9ybWF0KCd3b2ZmMicpO1xuICB1bmljb2RlLXJhbmdlOiBVKzA0NjAtMDUyRiwgVSsxQzgwLTFDODgsIFUrMjBCNCwgVSsyREUwLTJERkYsIFUrQTY0MC1BNjlGLCBVK0ZFMkUtRkUyRjtcbn1cbi8qIGN5cmlsbGljICovXG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6ICdSb2JvdG8nO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtd2VpZ2h0OiAzMDA7XG4gIHNyYzogbG9jYWwoJ1JvYm90byBMaWdodCcpLCBsb2NhbCgnUm9ib3RvLUxpZ2h0JyksIHVybCgnUm9ib3RvLTMwMC1jeXJpbGxpYzkud29mZjInKSBmb3JtYXQoJ3dvZmYyJyk7XG4gIHVuaWNvZGUtcmFuZ2U6IFUrMDQwMC0wNDVGLCBVKzA0OTAtMDQ5MSwgVSswNEIwLTA0QjEsIFUrMjExNjtcbn1cbi8qIGdyZWVrLWV4dCAqL1xuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiAnUm9ib3RvJztcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LXdlaWdodDogMzAwO1xuICBzcmM6IGxvY2FsKCdSb2JvdG8gTGlnaHQnKSwgbG9jYWwoJ1JvYm90by1MaWdodCcpLCB1cmwoJ1JvYm90by0zMDAtZ3JlZWstZXh0MTAud29mZjInKSBmb3JtYXQoJ3dvZmYyJyk7XG4gIHVuaWNvZGUtcmFuZ2U6IFUrMUYwMC0xRkZGO1xufVxuLyogZ3JlZWsgKi9cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogJ1JvYm90byc7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgc3JjOiBsb2NhbCgnUm9ib3RvIExpZ2h0JyksIGxvY2FsKCdSb2JvdG8tTGlnaHQnKSwgdXJsKCdSb2JvdG8tMzAwLWdyZWVrMTEud29mZjInKSBmb3JtYXQoJ3dvZmYyJyk7XG4gIHVuaWNvZGUtcmFuZ2U6IFUrMDM3MC0wM0ZGO1xufVxuLyogdmlldG5hbWVzZSAqL1xuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiAnUm9ib3RvJztcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LXdlaWdodDogMzAwO1xuICBzcmM6IGxvY2FsKCdSb2JvdG8gTGlnaHQnKSwgbG9jYWwoJ1JvYm90by1MaWdodCcpLCB1cmwoJ1JvYm90by0zMDAtdmlldG5hbWVzZTEyLndvZmYyJykgZm9ybWF0KCd3b2ZmMicpO1xuICB1bmljb2RlLXJhbmdlOiBVKzAxMDItMDEwMywgVSswMTEwLTAxMTEsIFUrMUVBMC0xRUY5LCBVKzIwQUI7XG59XG4vKiBsYXRpbi1leHQgKi9cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogJ1JvYm90byc7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgc3JjOiBsb2NhbCgnUm9ib3RvIExpZ2h0JyksIGxvY2FsKCdSb2JvdG8tTGlnaHQnKSwgdXJsKCdSb2JvdG8tMzAwLWxhdGluLWV4dDEzLndvZmYyJykgZm9ybWF0KCd3b2ZmMicpO1xuICB1bmljb2RlLXJhbmdlOiBVKzAxMDAtMDI0RiwgVSswMjU5LCBVKzFFMDAtMUVGRiwgVSsyMDIwLCBVKzIwQTAtMjBBQiwgVSsyMEFELTIwQ0YsIFUrMjExMywgVSsyQzYwLTJDN0YsIFUrQTcyMC1BN0ZGO1xufVxuLyogbGF0aW4gKi9cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogJ1JvYm90byc7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgc3JjOiBsb2NhbCgnUm9ib3RvIExpZ2h0JyksIGxvY2FsKCdSb2JvdG8tTGlnaHQnKSwgdXJsKCdSb2JvdG8tMzAwLWxhdGluMTQud29mZjInKSBmb3JtYXQoJ3dvZmYyJyk7XG4gIHVuaWNvZGUtcmFuZ2U6IFUrMDAwMC0wMEZGLCBVKzAxMzEsIFUrMDE1Mi0wMTUzLCBVKzAyQkItMDJCQywgVSswMkM2LCBVKzAyREEsIFUrMDJEQywgVSsyMDAwLTIwNkYsIFUrMjA3NCwgVSsyMEFDLCBVKzIxMjIsIFUrMjE5MSwgVSsyMTkzLCBVKzIyMTIsIFUrMjIxNSwgVStGRUZGLCBVK0ZGRkQ7XG59XG4vKiBjeXJpbGxpYy1leHQgKi9cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogJ1JvYm90byc7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgc3JjOiBsb2NhbCgnUm9ib3RvJyksIGxvY2FsKCdSb2JvdG8tUmVndWxhcicpLCB1cmwoJ1JvYm90by00MDAtY3lyaWxsaWMtZXh0MTUud29mZjInKSBmb3JtYXQoJ3dvZmYyJyk7XG4gIHVuaWNvZGUtcmFuZ2U6IFUrMDQ2MC0wNTJGLCBVKzFDODAtMUM4OCwgVSsyMEI0LCBVKzJERTAtMkRGRiwgVStBNjQwLUE2OUYsIFUrRkUyRS1GRTJGO1xufVxuLyogY3lyaWxsaWMgKi9cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogJ1JvYm90byc7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgc3JjOiBsb2NhbCgnUm9ib3RvJyksIGxvY2FsKCdSb2JvdG8tUmVndWxhcicpLCB1cmwoJ1JvYm90by00MDAtY3lyaWxsaWMxNi53b2ZmMicpIGZvcm1hdCgnd29mZjInKTtcbiAgdW5pY29kZS1yYW5nZTogVSswNDAwLTA0NUYsIFUrMDQ5MC0wNDkxLCBVKzA0QjAtMDRCMSwgVSsyMTE2O1xufVxuLyogZ3JlZWstZXh0ICovXG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6ICdSb2JvdG8nO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIHNyYzogbG9jYWwoJ1JvYm90bycpLCBsb2NhbCgnUm9ib3RvLVJlZ3VsYXInKSwgdXJsKCdSb2JvdG8tNDAwLWdyZWVrLWV4dDE3LndvZmYyJykgZm9ybWF0KCd3b2ZmMicpO1xuICB1bmljb2RlLXJhbmdlOiBVKzFGMDAtMUZGRjtcbn1cbi8qIGdyZWVrICovXG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6ICdSb2JvdG8nO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIHNyYzogbG9jYWwoJ1JvYm90bycpLCBsb2NhbCgnUm9ib3RvLVJlZ3VsYXInKSwgdXJsKCdSb2JvdG8tNDAwLWdyZWVrMTgud29mZjInKSBmb3JtYXQoJ3dvZmYyJyk7XG4gIHVuaWNvZGUtcmFuZ2U6IFUrMDM3MC0wM0ZGO1xufVxuLyogdmlldG5hbWVzZSAqL1xuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiAnUm9ib3RvJztcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LXdlaWdodDogNDAwO1xuICBzcmM6IGxvY2FsKCdSb2JvdG8nKSwgbG9jYWwoJ1JvYm90by1SZWd1bGFyJyksIHVybCgnUm9ib3RvLTQwMC12aWV0bmFtZXNlMTkud29mZjInKSBmb3JtYXQoJ3dvZmYyJyk7XG4gIHVuaWNvZGUtcmFuZ2U6IFUrMDEwMi0wMTAzLCBVKzAxMTAtMDExMSwgVSsxRUEwLTFFRjksIFUrMjBBQjtcbn1cbi8qIGxhdGluLWV4dCAqL1xuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiAnUm9ib3RvJztcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LXdlaWdodDogNDAwO1xuICBzcmM6IGxvY2FsKCdSb2JvdG8nKSwgbG9jYWwoJ1JvYm90by1SZWd1bGFyJyksIHVybCgnUm9ib3RvLTQwMC1sYXRpbi1leHQyMC53b2ZmMicpIGZvcm1hdCgnd29mZjInKTtcbiAgdW5pY29kZS1yYW5nZTogVSswMTAwLTAyNEYsIFUrMDI1OSwgVSsxRTAwLTFFRkYsIFUrMjAyMCwgVSsyMEEwLTIwQUIsIFUrMjBBRC0yMENGLCBVKzIxMTMsIFUrMkM2MC0yQzdGLCBVK0E3MjAtQTdGRjtcbn1cbi8qIGxhdGluICovXG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6ICdSb2JvdG8nO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIHNyYzogbG9jYWwoJ1JvYm90bycpLCBsb2NhbCgnUm9ib3RvLVJlZ3VsYXInKSwgdXJsKCdSb2JvdG8tNDAwLWxhdGluMjEud29mZjInKSBmb3JtYXQoJ3dvZmYyJyk7XG4gIHVuaWNvZGUtcmFuZ2U6IFUrMDAwMC0wMEZGLCBVKzAxMzEsIFUrMDE1Mi0wMTUzLCBVKzAyQkItMDJCQywgVSswMkM2LCBVKzAyREEsIFUrMDJEQywgVSsyMDAwLTIwNkYsIFUrMjA3NCwgVSsyMEFDLCBVKzIxMjIsIFUrMjE5MSwgVSsyMTkzLCBVKzIyMTIsIFUrMjIxNSwgVStGRUZGLCBVK0ZGRkQ7XG59XG4vKiBjeXJpbGxpYy1leHQgKi9cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogJ1JvYm90byc7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgc3JjOiBsb2NhbCgnUm9ib3RvIE1lZGl1bScpLCBsb2NhbCgnUm9ib3RvLU1lZGl1bScpLCB1cmwoJ1JvYm90by01MDAtY3lyaWxsaWMtZXh0MjIud29mZjInKSBmb3JtYXQoJ3dvZmYyJyk7XG4gIHVuaWNvZGUtcmFuZ2U6IFUrMDQ2MC0wNTJGLCBVKzFDODAtMUM4OCwgVSsyMEI0LCBVKzJERTAtMkRGRiwgVStBNjQwLUE2OUYsIFUrRkUyRS1GRTJGO1xufVxuLyogY3lyaWxsaWMgKi9cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogJ1JvYm90byc7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgc3JjOiBsb2NhbCgnUm9ib3RvIE1lZGl1bScpLCBsb2NhbCgnUm9ib3RvLU1lZGl1bScpLCB1cmwoJ1JvYm90by01MDAtY3lyaWxsaWMyMy53b2ZmMicpIGZvcm1hdCgnd29mZjInKTtcbiAgdW5pY29kZS1yYW5nZTogVSswNDAwLTA0NUYsIFUrMDQ5MC0wNDkxLCBVKzA0QjAtMDRCMSwgVSsyMTE2O1xufVxuLyogZ3JlZWstZXh0ICovXG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6ICdSb2JvdG8nO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtd2VpZ2h0OiA1MDA7XG4gIHNyYzogbG9jYWwoJ1JvYm90byBNZWRpdW0nKSwgbG9jYWwoJ1JvYm90by1NZWRpdW0nKSwgdXJsKCdSb2JvdG8tNTAwLWdyZWVrLWV4dDI0LndvZmYyJykgZm9ybWF0KCd3b2ZmMicpO1xuICB1bmljb2RlLXJhbmdlOiBVKzFGMDAtMUZGRjtcbn1cbi8qIGdyZWVrICovXG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6ICdSb2JvdG8nO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtd2VpZ2h0OiA1MDA7XG4gIHNyYzogbG9jYWwoJ1JvYm90byBNZWRpdW0nKSwgbG9jYWwoJ1JvYm90by1NZWRpdW0nKSwgdXJsKCdSb2JvdG8tNTAwLWdyZWVrMjUud29mZjInKSBmb3JtYXQoJ3dvZmYyJyk7XG4gIHVuaWNvZGUtcmFuZ2U6IFUrMDM3MC0wM0ZGO1xufVxuLyogdmlldG5hbWVzZSAqL1xuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiAnUm9ib3RvJztcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LXdlaWdodDogNTAwO1xuICBzcmM6IGxvY2FsKCdSb2JvdG8gTWVkaXVtJyksIGxvY2FsKCdSb2JvdG8tTWVkaXVtJyksIHVybCgnUm9ib3RvLTUwMC12aWV0bmFtZXNlMjYud29mZjInKSBmb3JtYXQoJ3dvZmYyJyk7XG4gIHVuaWNvZGUtcmFuZ2U6IFUrMDEwMi0wMTAzLCBVKzAxMTAtMDExMSwgVSsxRUEwLTFFRjksIFUrMjBBQjtcbn1cbi8qIGxhdGluLWV4dCAqL1xuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiAnUm9ib3RvJztcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LXdlaWdodDogNTAwO1xuICBzcmM6IGxvY2FsKCdSb2JvdG8gTWVkaXVtJyksIGxvY2FsKCdSb2JvdG8tTWVkaXVtJyksIHVybCgnUm9ib3RvLTUwMC1sYXRpbi1leHQyNy53b2ZmMicpIGZvcm1hdCgnd29mZjInKTtcbiAgdW5pY29kZS1yYW5nZTogVSswMTAwLTAyNEYsIFUrMDI1OSwgVSsxRTAwLTFFRkYsIFUrMjAyMCwgVSsyMEEwLTIwQUIsIFUrMjBBRC0yMENGLCBVKzIxMTMsIFUrMkM2MC0yQzdGLCBVK0E3MjAtQTdGRjtcbn1cbi8qIGxhdGluICovXG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6ICdSb2JvdG8nO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtd2VpZ2h0OiA1MDA7XG4gIHNyYzogbG9jYWwoJ1JvYm90byBNZWRpdW0nKSwgbG9jYWwoJ1JvYm90by1NZWRpdW0nKSwgdXJsKCdSb2JvdG8tNTAwLWxhdGluMjgud29mZjInKSBmb3JtYXQoJ3dvZmYyJyk7XG4gIHVuaWNvZGUtcmFuZ2U6IFUrMDAwMC0wMEZGLCBVKzAxMzEsIFUrMDE1Mi0wMTUzLCBVKzAyQkItMDJCQywgVSswMkM2LCBVKzAyREEsIFUrMDJEQywgVSsyMDAwLTIwNkYsIFUrMjA3NCwgVSsyMEFDLCBVKzIxMjIsIFUrMjE5MSwgVSsyMTkzLCBVKzIyMTIsIFUrMjIxNSwgVStGRUZGLCBVK0ZGRkQ7XG59XG4vKiBjeXJpbGxpYy1leHQgKi9cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogJ1JvYm90byc7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgc3JjOiBsb2NhbCgnUm9ib3RvIEJvbGQnKSwgbG9jYWwoJ1JvYm90by1Cb2xkJyksIHVybCgnUm9ib3RvLTcwMC1jeXJpbGxpYy1leHQyOS53b2ZmMicpIGZvcm1hdCgnd29mZjInKTtcbiAgdW5pY29kZS1yYW5nZTogVSswNDYwLTA1MkYsIFUrMUM4MC0xQzg4LCBVKzIwQjQsIFUrMkRFMC0yREZGLCBVK0E2NDAtQTY5RiwgVStGRTJFLUZFMkY7XG59XG4vKiBjeXJpbGxpYyAqL1xuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiAnUm9ib3RvJztcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LXdlaWdodDogNzAwO1xuICBzcmM6IGxvY2FsKCdSb2JvdG8gQm9sZCcpLCBsb2NhbCgnUm9ib3RvLUJvbGQnKSwgdXJsKCdSb2JvdG8tNzAwLWN5cmlsbGljMzAud29mZjInKSBmb3JtYXQoJ3dvZmYyJyk7XG4gIHVuaWNvZGUtcmFuZ2U6IFUrMDQwMC0wNDVGLCBVKzA0OTAtMDQ5MSwgVSswNEIwLTA0QjEsIFUrMjExNjtcbn1cbi8qIGdyZWVrLWV4dCAqL1xuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiAnUm9ib3RvJztcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LXdlaWdodDogNzAwO1xuICBzcmM6IGxvY2FsKCdSb2JvdG8gQm9sZCcpLCBsb2NhbCgnUm9ib3RvLUJvbGQnKSwgdXJsKCdSb2JvdG8tNzAwLWdyZWVrLWV4dDMxLndvZmYyJykgZm9ybWF0KCd3b2ZmMicpO1xuICB1bmljb2RlLXJhbmdlOiBVKzFGMDAtMUZGRjtcbn1cbi8qIGdyZWVrICovXG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6ICdSb2JvdG8nO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIHNyYzogbG9jYWwoJ1JvYm90byBCb2xkJyksIGxvY2FsKCdSb2JvdG8tQm9sZCcpLCB1cmwoJ1JvYm90by03MDAtZ3JlZWszMi53b2ZmMicpIGZvcm1hdCgnd29mZjInKTtcbiAgdW5pY29kZS1yYW5nZTogVSswMzcwLTAzRkY7XG59XG4vKiB2aWV0bmFtZXNlICovXG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6ICdSb2JvdG8nO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIHNyYzogbG9jYWwoJ1JvYm90byBCb2xkJyksIGxvY2FsKCdSb2JvdG8tQm9sZCcpLCB1cmwoJ1JvYm90by03MDAtdmlldG5hbWVzZTMzLndvZmYyJykgZm9ybWF0KCd3b2ZmMicpO1xuICB1bmljb2RlLXJhbmdlOiBVKzAxMDItMDEwMywgVSswMTEwLTAxMTEsIFUrMUVBMC0xRUY5LCBVKzIwQUI7XG59XG4vKiBsYXRpbi1leHQgKi9cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogJ1JvYm90byc7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgc3JjOiBsb2NhbCgnUm9ib3RvIEJvbGQnKSwgbG9jYWwoJ1JvYm90by1Cb2xkJyksIHVybCgnUm9ib3RvLTcwMC1sYXRpbi1leHQzNC53b2ZmMicpIGZvcm1hdCgnd29mZjInKTtcbiAgdW5pY29kZS1yYW5nZTogVSswMTAwLTAyNEYsIFUrMDI1OSwgVSsxRTAwLTFFRkYsIFUrMjAyMCwgVSsyMEEwLTIwQUIsIFUrMjBBRC0yMENGLCBVKzIxMTMsIFUrMkM2MC0yQzdGLCBVK0E3MjAtQTdGRjtcbn1cbi8qIGxhdGluICovXG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6ICdSb2JvdG8nO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIHNyYzogbG9jYWwoJ1JvYm90byBCb2xkJyksIGxvY2FsKCdSb2JvdG8tQm9sZCcpLCB1cmwoJ1JvYm90by03MDAtbGF0aW4zNS53b2ZmMicpIGZvcm1hdCgnd29mZjInKTtcbiAgdW5pY29kZS1yYW5nZTogVSswMDAwLTAwRkYsIFUrMDEzMSwgVSswMTUyLTAxNTMsIFUrMDJCQi0wMkJDLCBVKzAyQzYsIFUrMDJEQSwgVSswMkRDLCBVKzIwMDAtMjA2RiwgVSsyMDc0LCBVKzIwQUMsIFUrMjEyMiwgVSsyMTkxLCBVKzIxOTMsIFUrMjIxMiwgVSsyMjE1LCBVK0ZFRkYsIFUrRkZGRDtcbn1cbi8qIGN5cmlsbGljLWV4dCAqL1xuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiAnUm9ib3RvJztcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LXdlaWdodDogOTAwO1xuICBzcmM6IGxvY2FsKCdSb2JvdG8gQmxhY2snKSwgbG9jYWwoJ1JvYm90by1CbGFjaycpLCB1cmwoJ1JvYm90by05MDAtY3lyaWxsaWMtZXh0MzYud29mZjInKSBmb3JtYXQoJ3dvZmYyJyk7XG4gIHVuaWNvZGUtcmFuZ2U6IFUrMDQ2MC0wNTJGLCBVKzFDODAtMUM4OCwgVSsyMEI0LCBVKzJERTAtMkRGRiwgVStBNjQwLUE2OUYsIFUrRkUyRS1GRTJGO1xufVxuLyogY3lyaWxsaWMgKi9cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogJ1JvYm90byc7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC13ZWlnaHQ6IDkwMDtcbiAgc3JjOiBsb2NhbCgnUm9ib3RvIEJsYWNrJyksIGxvY2FsKCdSb2JvdG8tQmxhY2snKSwgdXJsKCdSb2JvdG8tOTAwLWN5cmlsbGljMzcud29mZjInKSBmb3JtYXQoJ3dvZmYyJyk7XG4gIHVuaWNvZGUtcmFuZ2U6IFUrMDQwMC0wNDVGLCBVKzA0OTAtMDQ5MSwgVSswNEIwLTA0QjEsIFUrMjExNjtcbn1cbi8qIGdyZWVrLWV4dCAqL1xuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiAnUm9ib3RvJztcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LXdlaWdodDogOTAwO1xuICBzcmM6IGxvY2FsKCdSb2JvdG8gQmxhY2snKSwgbG9jYWwoJ1JvYm90by1CbGFjaycpLCB1cmwoJ1JvYm90by05MDAtZ3JlZWstZXh0Mzgud29mZjInKSBmb3JtYXQoJ3dvZmYyJyk7XG4gIHVuaWNvZGUtcmFuZ2U6IFUrMUYwMC0xRkZGO1xufVxuLyogZ3JlZWsgKi9cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogJ1JvYm90byc7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC13ZWlnaHQ6IDkwMDtcbiAgc3JjOiBsb2NhbCgnUm9ib3RvIEJsYWNrJyksIGxvY2FsKCdSb2JvdG8tQmxhY2snKSwgdXJsKCdSb2JvdG8tOTAwLWdyZWVrMzkud29mZjInKSBmb3JtYXQoJ3dvZmYyJyk7XG4gIHVuaWNvZGUtcmFuZ2U6IFUrMDM3MC0wM0ZGO1xufVxuLyogdmlldG5hbWVzZSAqL1xuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiAnUm9ib3RvJztcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LXdlaWdodDogOTAwO1xuICBzcmM6IGxvY2FsKCdSb2JvdG8gQmxhY2snKSwgbG9jYWwoJ1JvYm90by1CbGFjaycpLCB1cmwoJ1JvYm90by05MDAtdmlldG5hbWVzZTQwLndvZmYyJykgZm9ybWF0KCd3b2ZmMicpO1xuICB1bmljb2RlLXJhbmdlOiBVKzAxMDItMDEwMywgVSswMTEwLTAxMTEsIFUrMUVBMC0xRUY5LCBVKzIwQUI7XG59XG4vKiBsYXRpbi1leHQgKi9cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogJ1JvYm90byc7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC13ZWlnaHQ6IDkwMDtcbiAgc3JjOiBsb2NhbCgnUm9ib3RvIEJsYWNrJyksIGxvY2FsKCdSb2JvdG8tQmxhY2snKSwgdXJsKCdSb2JvdG8tOTAwLWxhdGluLWV4dDQxLndvZmYyJykgZm9ybWF0KCd3b2ZmMicpO1xuICB1bmljb2RlLXJhbmdlOiBVKzAxMDAtMDI0RiwgVSswMjU5LCBVKzFFMDAtMUVGRiwgVSsyMDIwLCBVKzIwQTAtMjBBQiwgVSsyMEFELTIwQ0YsIFUrMjExMywgVSsyQzYwLTJDN0YsIFUrQTcyMC1BN0ZGO1xufVxuLyogbGF0aW4gKi9cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogJ1JvYm90byc7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC13ZWlnaHQ6IDkwMDtcbiAgc3JjOiBsb2NhbCgnUm9ib3RvIEJsYWNrJyksIGxvY2FsKCdSb2JvdG8tQmxhY2snKSwgdXJsKCdSb2JvdG8tOTAwLWxhdGluNDIud29mZjInKSBmb3JtYXQoJ3dvZmYyJyk7XG4gIHVuaWNvZGUtcmFuZ2U6IFUrMDAwMC0wMEZGLCBVKzAxMzEsIFUrMDE1Mi0wMTUzLCBVKzAyQkItMDJCQywgVSswMkM2LCBVKzAyREEsIFUrMDJEQywgVSsyMDAwLTIwNkYsIFUrMjA3NCwgVSsyMEFDLCBVKzIxMjIsIFUrMjE5MSwgVSsyMTkzLCBVKzIyMTIsIFUrMjIxNSwgVStGRUZGLCBVK0ZGRkQ7XG59XG4iLCIvKlxuICogQXBwIFN0eWxlIHYwLjAuMVxuICogQ29weXJpZ2h0IDIwMTkgVGhlIEhvbWUgQXV0aG9ycyAoaHR0cHM6Ly9kZXZraXQtc2lvLm5ldClcbiAqXG4gKiBXZSBkbyBub3Qgd2FudCBhbnlvbmUgdG8gc2VlIG91ciBzb3VyY2UgY29kZSwgYnV0IGlmIGZvciBhbnkgcmVhc29uIG91ciBjb2RlIGlzIHN0b2xlbiBvciBvdGhlcndpc2Ugb2J0YWluZWQsIHdlIHdhbnQgdG8gaGF2ZSBhIGxpY2Vuc2UgdGhhdCBkb2VzIG5vdCBhbGxvdyBkaXNjbG9zdXJlIG9mIGFueSBraW5kLlxuICovXG5AaW1wb3J0IFwiZm9udHMvZm9udHMuY3NzXCI7XG5AaW1wb3J0IFwifmZvbnQtYXdlc29tZVwiO1xuQGltcG9ydCBcImljb25zL2ljb21vb24vc3R5bGVzLnNjc3NcIjtcbkBpbXBvcnQgXCJ+Ym9vdHN0cmFwXCI7XG5AaW1wb3J0IFwibGF5b3V0cy9sYXlvdXRfMS9kZWZhdWx0L2NvbXBpbGUvYm9vdHN0cmFwX2xpbWl0bGVzc1wiO1xuQGltcG9ydCBcImxheW91dHMvbGF5b3V0XzEvZGVmYXVsdC9jb21waWxlL2xheW91dFwiO1xuQGltcG9ydCBcImxheW91dHMvbGF5b3V0XzEvZGVmYXVsdC9jb21waWxlL2NvbXBvbmVudHNcIjtcbkBpbXBvcnQgXCJsYXlvdXRzL2xheW91dF8xL2RlZmF1bHQvY29tcGlsZS9jb2xvcnNcIjtcblxuXG4uYnJlYWRjcnVtYiB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xufVxuXG4uY3VzdG9tLWZpbGUtbGFiZWwge1xuICAmOjphZnRlciB7XG4gICAgY29udGVudDogXCJDaG9pc2lyIHVuIGZpY2hpZXJcIiAhaW1wb3J0YW50O1xuICB9XG59XG5cbmxhYmVsLnJlcXVpcmVkOjpiZWZvcmUge1xuICBjb250ZW50OiBcIipcIjtcbiAgXG4gIGNvbG9yOiAjZmYyODQ1O1xufSIsIi8qIVxuICogIEZvbnQgQXdlc29tZSA0LjcuMCBieSBAZGF2ZWdhbmR5IC0gaHR0cDovL2ZvbnRhd2Vzb21lLmlvIC0gQGZvbnRhd2Vzb21lXG4gKiAgTGljZW5zZSAtIGh0dHA6Ly9mb250YXdlc29tZS5pby9saWNlbnNlIChGb250OiBTSUwgT0ZMIDEuMSwgQ1NTOiBNSVQgTGljZW5zZSlcbiAqL1xuLyogRk9OVCBQQVRIXG4gKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiAnRm9udEF3ZXNvbWUnO1xuICBzcmM6IHVybCgnLi4vZm9udHMvZm9udGF3ZXNvbWUtd2ViZm9udC5lb3Q/dj00LjcuMCcpO1xuICBzcmM6IHVybCgnLi4vZm9udHMvZm9udGF3ZXNvbWUtd2ViZm9udC5lb3Q/I2llZml4JnY9NC43LjAnKSBmb3JtYXQoJ2VtYmVkZGVkLW9wZW50eXBlJyksIHVybCgnLi4vZm9udHMvZm9udGF3ZXNvbWUtd2ViZm9udC53b2ZmMj92PTQuNy4wJykgZm9ybWF0KCd3b2ZmMicpLCB1cmwoJy4uL2ZvbnRzL2ZvbnRhd2Vzb21lLXdlYmZvbnQud29mZj92PTQuNy4wJykgZm9ybWF0KCd3b2ZmJyksIHVybCgnLi4vZm9udHMvZm9udGF3ZXNvbWUtd2ViZm9udC50dGY/dj00LjcuMCcpIGZvcm1hdCgndHJ1ZXR5cGUnKSwgdXJsKCcuLi9mb250cy9mb250YXdlc29tZS13ZWJmb250LnN2Zz92PTQuNy4wI2ZvbnRhd2Vzb21lcmVndWxhcicpIGZvcm1hdCgnc3ZnJyk7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbn1cbi5mYSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgZm9udDogbm9ybWFsIG5vcm1hbCBub3JtYWwgMTRweC8xIEZvbnRBd2Vzb21lO1xuICBmb250LXNpemU6IGluaGVyaXQ7XG4gIHRleHQtcmVuZGVyaW5nOiBhdXRvO1xuICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcbiAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcbn1cbi8qIG1ha2VzIHRoZSBmb250IDMzJSBsYXJnZXIgcmVsYXRpdmUgdG8gdGhlIGljb24gY29udGFpbmVyICovXG4uZmEtbGcge1xuICBmb250LXNpemU6IDEuMzMzMzMzMzNlbTtcbiAgbGluZS1oZWlnaHQ6IDAuNzVlbTtcbiAgdmVydGljYWwtYWxpZ246IC0xNSU7XG59XG4uZmEtMngge1xuICBmb250LXNpemU6IDJlbTtcbn1cbi5mYS0zeCB7XG4gIGZvbnQtc2l6ZTogM2VtO1xufVxuLmZhLTR4IHtcbiAgZm9udC1zaXplOiA0ZW07XG59XG4uZmEtNXgge1xuICBmb250LXNpemU6IDVlbTtcbn1cbi5mYS1mdyB7XG4gIHdpZHRoOiAxLjI4NTcxNDI5ZW07XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cbi5mYS11bCB7XG4gIHBhZGRpbmctbGVmdDogMDtcbiAgbWFyZ2luLWxlZnQ6IDIuMTQyODU3MTRlbTtcbiAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xufVxuLmZhLXVsID4gbGkge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG4uZmEtbGkge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IC0yLjE0Mjg1NzE0ZW07XG4gIHdpZHRoOiAyLjE0Mjg1NzE0ZW07XG4gIHRvcDogMC4xNDI4NTcxNGVtO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG4uZmEtbGkuZmEtbGcge1xuICBsZWZ0OiAtMS44NTcxNDI4NmVtO1xufVxuLmZhLWJvcmRlciB7XG4gIHBhZGRpbmc6IC4yZW0gLjI1ZW0gLjE1ZW07XG4gIGJvcmRlcjogc29saWQgMC4wOGVtICNlZWVlZWU7XG4gIGJvcmRlci1yYWRpdXM6IC4xZW07XG59XG4uZmEtcHVsbC1sZWZ0IHtcbiAgZmxvYXQ6IGxlZnQ7XG59XG4uZmEtcHVsbC1yaWdodCB7XG4gIGZsb2F0OiByaWdodDtcbn1cbi5mYS5mYS1wdWxsLWxlZnQge1xuICBtYXJnaW4tcmlnaHQ6IC4zZW07XG59XG4uZmEuZmEtcHVsbC1yaWdodCB7XG4gIG1hcmdpbi1sZWZ0OiAuM2VtO1xufVxuLyogRGVwcmVjYXRlZCBhcyBvZiA0LjQuMCAqL1xuLnB1bGwtcmlnaHQge1xuICBmbG9hdDogcmlnaHQ7XG59XG4ucHVsbC1sZWZ0IHtcbiAgZmxvYXQ6IGxlZnQ7XG59XG4uZmEucHVsbC1sZWZ0IHtcbiAgbWFyZ2luLXJpZ2h0OiAuM2VtO1xufVxuLmZhLnB1bGwtcmlnaHQge1xuICBtYXJnaW4tbGVmdDogLjNlbTtcbn1cbi5mYS1zcGluIHtcbiAgLXdlYmtpdC1hbmltYXRpb246IGZhLXNwaW4gMnMgaW5maW5pdGUgbGluZWFyO1xuICBhbmltYXRpb246IGZhLXNwaW4gMnMgaW5maW5pdGUgbGluZWFyO1xufVxuLmZhLXB1bHNlIHtcbiAgLXdlYmtpdC1hbmltYXRpb246IGZhLXNwaW4gMXMgaW5maW5pdGUgc3RlcHMoOCk7XG4gIGFuaW1hdGlvbjogZmEtc3BpbiAxcyBpbmZpbml0ZSBzdGVwcyg4KTtcbn1cbkAtd2Via2l0LWtleWZyYW1lcyBmYS1zcGluIHtcbiAgMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7XG4gIH1cbiAgMTAwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgzNTlkZWcpO1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDM1OWRlZyk7XG4gIH1cbn1cbkBrZXlmcmFtZXMgZmEtc3BpbiB7XG4gIDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDBkZWcpO1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDBkZWcpO1xuICB9XG4gIDEwMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoMzU5ZGVnKTtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgzNTlkZWcpO1xuICB9XG59XG4uZmEtcm90YXRlLTkwIHtcbiAgLW1zLWZpbHRlcjogXCJwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuQmFzaWNJbWFnZShyb3RhdGlvbj0xKVwiO1xuICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDkwZGVnKTtcbiAgLW1zLXRyYW5zZm9ybTogcm90YXRlKDkwZGVnKTtcbiAgdHJhbnNmb3JtOiByb3RhdGUoOTBkZWcpO1xufVxuLmZhLXJvdGF0ZS0xODAge1xuICAtbXMtZmlsdGVyOiBcInByb2dpZDpEWEltYWdlVHJhbnNmb3JtLk1pY3Jvc29mdC5CYXNpY0ltYWdlKHJvdGF0aW9uPTIpXCI7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoMTgwZGVnKTtcbiAgLW1zLXRyYW5zZm9ybTogcm90YXRlKDE4MGRlZyk7XG4gIHRyYW5zZm9ybTogcm90YXRlKDE4MGRlZyk7XG59XG4uZmEtcm90YXRlLTI3MCB7XG4gIC1tcy1maWx0ZXI6IFwicHJvZ2lkOkRYSW1hZ2VUcmFuc2Zvcm0uTWljcm9zb2Z0LkJhc2ljSW1hZ2Uocm90YXRpb249MylcIjtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgyNzBkZWcpO1xuICAtbXMtdHJhbnNmb3JtOiByb3RhdGUoMjcwZGVnKTtcbiAgdHJhbnNmb3JtOiByb3RhdGUoMjcwZGVnKTtcbn1cbi5mYS1mbGlwLWhvcml6b250YWwge1xuICAtbXMtZmlsdGVyOiBcInByb2dpZDpEWEltYWdlVHJhbnNmb3JtLk1pY3Jvc29mdC5CYXNpY0ltYWdlKHJvdGF0aW9uPTAsIG1pcnJvcj0xKVwiO1xuICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoLTEsIDEpO1xuICAtbXMtdHJhbnNmb3JtOiBzY2FsZSgtMSwgMSk7XG4gIHRyYW5zZm9ybTogc2NhbGUoLTEsIDEpO1xufVxuLmZhLWZsaXAtdmVydGljYWwge1xuICAtbXMtZmlsdGVyOiBcInByb2dpZDpEWEltYWdlVHJhbnNmb3JtLk1pY3Jvc29mdC5CYXNpY0ltYWdlKHJvdGF0aW9uPTIsIG1pcnJvcj0xKVwiO1xuICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMSwgLTEpO1xuICAtbXMtdHJhbnNmb3JtOiBzY2FsZSgxLCAtMSk7XG4gIHRyYW5zZm9ybTogc2NhbGUoMSwgLTEpO1xufVxuOnJvb3QgLmZhLXJvdGF0ZS05MCxcbjpyb290IC5mYS1yb3RhdGUtMTgwLFxuOnJvb3QgLmZhLXJvdGF0ZS0yNzAsXG46cm9vdCAuZmEtZmxpcC1ob3Jpem9udGFsLFxuOnJvb3QgLmZhLWZsaXAtdmVydGljYWwge1xuICBmaWx0ZXI6IG5vbmU7XG59XG4uZmEtc3RhY2sge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgd2lkdGg6IDJlbTtcbiAgaGVpZ2h0OiAyZW07XG4gIGxpbmUtaGVpZ2h0OiAyZW07XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG59XG4uZmEtc3RhY2stMXgsXG4uZmEtc3RhY2stMngge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG4uZmEtc3RhY2stMXgge1xuICBsaW5lLWhlaWdodDogaW5oZXJpdDtcbn1cbi5mYS1zdGFjay0yeCB7XG4gIGZvbnQtc2l6ZTogMmVtO1xufVxuLmZhLWludmVyc2Uge1xuICBjb2xvcjogI2ZmZmZmZjtcbn1cbi8qIEZvbnQgQXdlc29tZSB1c2VzIHRoZSBVbmljb2RlIFByaXZhdGUgVXNlIEFyZWEgKFBVQSkgdG8gZW5zdXJlIHNjcmVlblxuICAgcmVhZGVycyBkbyBub3QgcmVhZCBvZmYgcmFuZG9tIGNoYXJhY3RlcnMgdGhhdCByZXByZXNlbnQgaWNvbnMgKi9cbi5mYS1nbGFzczpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjAwMFwiO1xufVxuLmZhLW11c2ljOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDAxXCI7XG59XG4uZmEtc2VhcmNoOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDAyXCI7XG59XG4uZmEtZW52ZWxvcGUtbzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjAwM1wiO1xufVxuLmZhLWhlYXJ0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDA0XCI7XG59XG4uZmEtc3RhcjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjAwNVwiO1xufVxuLmZhLXN0YXItbzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjAwNlwiO1xufVxuLmZhLXVzZXI6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwMDdcIjtcbn1cbi5mYS1maWxtOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDA4XCI7XG59XG4uZmEtdGgtbGFyZ2U6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwMDlcIjtcbn1cbi5mYS10aDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjAwYVwiO1xufVxuLmZhLXRoLWxpc3Q6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwMGJcIjtcbn1cbi5mYS1jaGVjazpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjAwY1wiO1xufVxuLmZhLXJlbW92ZTpiZWZvcmUsXG4uZmEtY2xvc2U6YmVmb3JlLFxuLmZhLXRpbWVzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDBkXCI7XG59XG4uZmEtc2VhcmNoLXBsdXM6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwMGVcIjtcbn1cbi5mYS1zZWFyY2gtbWludXM6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwMTBcIjtcbn1cbi5mYS1wb3dlci1vZmY6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwMTFcIjtcbn1cbi5mYS1zaWduYWw6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwMTJcIjtcbn1cbi5mYS1nZWFyOmJlZm9yZSxcbi5mYS1jb2c6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwMTNcIjtcbn1cbi5mYS10cmFzaC1vOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDE0XCI7XG59XG4uZmEtaG9tZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjAxNVwiO1xufVxuLmZhLWZpbGUtbzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjAxNlwiO1xufVxuLmZhLWNsb2NrLW86YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwMTdcIjtcbn1cbi5mYS1yb2FkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDE4XCI7XG59XG4uZmEtZG93bmxvYWQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwMTlcIjtcbn1cbi5mYS1hcnJvdy1jaXJjbGUtby1kb3duOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDFhXCI7XG59XG4uZmEtYXJyb3ctY2lyY2xlLW8tdXA6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwMWJcIjtcbn1cbi5mYS1pbmJveDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjAxY1wiO1xufVxuLmZhLXBsYXktY2lyY2xlLW86YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwMWRcIjtcbn1cbi5mYS1yb3RhdGUtcmlnaHQ6YmVmb3JlLFxuLmZhLXJlcGVhdDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjAxZVwiO1xufVxuLmZhLXJlZnJlc2g6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwMjFcIjtcbn1cbi5mYS1saXN0LWFsdDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjAyMlwiO1xufVxuLmZhLWxvY2s6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwMjNcIjtcbn1cbi5mYS1mbGFnOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDI0XCI7XG59XG4uZmEtaGVhZHBob25lczpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjAyNVwiO1xufVxuLmZhLXZvbHVtZS1vZmY6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwMjZcIjtcbn1cbi5mYS12b2x1bWUtZG93bjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjAyN1wiO1xufVxuLmZhLXZvbHVtZS11cDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjAyOFwiO1xufVxuLmZhLXFyY29kZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjAyOVwiO1xufVxuLmZhLWJhcmNvZGU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwMmFcIjtcbn1cbi5mYS10YWc6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwMmJcIjtcbn1cbi5mYS10YWdzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDJjXCI7XG59XG4uZmEtYm9vazpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjAyZFwiO1xufVxuLmZhLWJvb2ttYXJrOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDJlXCI7XG59XG4uZmEtcHJpbnQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwMmZcIjtcbn1cbi5mYS1jYW1lcmE6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwMzBcIjtcbn1cbi5mYS1mb250OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDMxXCI7XG59XG4uZmEtYm9sZDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjAzMlwiO1xufVxuLmZhLWl0YWxpYzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjAzM1wiO1xufVxuLmZhLXRleHQtaGVpZ2h0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDM0XCI7XG59XG4uZmEtdGV4dC13aWR0aDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjAzNVwiO1xufVxuLmZhLWFsaWduLWxlZnQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwMzZcIjtcbn1cbi5mYS1hbGlnbi1jZW50ZXI6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwMzdcIjtcbn1cbi5mYS1hbGlnbi1yaWdodDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjAzOFwiO1xufVxuLmZhLWFsaWduLWp1c3RpZnk6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwMzlcIjtcbn1cbi5mYS1saXN0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDNhXCI7XG59XG4uZmEtZGVkZW50OmJlZm9yZSxcbi5mYS1vdXRkZW50OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDNiXCI7XG59XG4uZmEtaW5kZW50OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDNjXCI7XG59XG4uZmEtdmlkZW8tY2FtZXJhOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDNkXCI7XG59XG4uZmEtcGhvdG86YmVmb3JlLFxuLmZhLWltYWdlOmJlZm9yZSxcbi5mYS1waWN0dXJlLW86YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwM2VcIjtcbn1cbi5mYS1wZW5jaWw6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwNDBcIjtcbn1cbi5mYS1tYXAtbWFya2VyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDQxXCI7XG59XG4uZmEtYWRqdXN0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDQyXCI7XG59XG4uZmEtdGludDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjA0M1wiO1xufVxuLmZhLWVkaXQ6YmVmb3JlLFxuLmZhLXBlbmNpbC1zcXVhcmUtbzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjA0NFwiO1xufVxuLmZhLXNoYXJlLXNxdWFyZS1vOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDQ1XCI7XG59XG4uZmEtY2hlY2stc3F1YXJlLW86YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwNDZcIjtcbn1cbi5mYS1hcnJvd3M6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwNDdcIjtcbn1cbi5mYS1zdGVwLWJhY2t3YXJkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDQ4XCI7XG59XG4uZmEtZmFzdC1iYWNrd2FyZDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjA0OVwiO1xufVxuLmZhLWJhY2t3YXJkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDRhXCI7XG59XG4uZmEtcGxheTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjA0YlwiO1xufVxuLmZhLXBhdXNlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDRjXCI7XG59XG4uZmEtc3RvcDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjA0ZFwiO1xufVxuLmZhLWZvcndhcmQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwNGVcIjtcbn1cbi5mYS1mYXN0LWZvcndhcmQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwNTBcIjtcbn1cbi5mYS1zdGVwLWZvcndhcmQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwNTFcIjtcbn1cbi5mYS1lamVjdDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjA1MlwiO1xufVxuLmZhLWNoZXZyb24tbGVmdDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjA1M1wiO1xufVxuLmZhLWNoZXZyb24tcmlnaHQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwNTRcIjtcbn1cbi5mYS1wbHVzLWNpcmNsZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjA1NVwiO1xufVxuLmZhLW1pbnVzLWNpcmNsZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjA1NlwiO1xufVxuLmZhLXRpbWVzLWNpcmNsZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjA1N1wiO1xufVxuLmZhLWNoZWNrLWNpcmNsZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjA1OFwiO1xufVxuLmZhLXF1ZXN0aW9uLWNpcmNsZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjA1OVwiO1xufVxuLmZhLWluZm8tY2lyY2xlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDVhXCI7XG59XG4uZmEtY3Jvc3NoYWlyczpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjA1YlwiO1xufVxuLmZhLXRpbWVzLWNpcmNsZS1vOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDVjXCI7XG59XG4uZmEtY2hlY2stY2lyY2xlLW86YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwNWRcIjtcbn1cbi5mYS1iYW46YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwNWVcIjtcbn1cbi5mYS1hcnJvdy1sZWZ0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDYwXCI7XG59XG4uZmEtYXJyb3ctcmlnaHQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwNjFcIjtcbn1cbi5mYS1hcnJvdy11cDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjA2MlwiO1xufVxuLmZhLWFycm93LWRvd246YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwNjNcIjtcbn1cbi5mYS1tYWlsLWZvcndhcmQ6YmVmb3JlLFxuLmZhLXNoYXJlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDY0XCI7XG59XG4uZmEtZXhwYW5kOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDY1XCI7XG59XG4uZmEtY29tcHJlc3M6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwNjZcIjtcbn1cbi5mYS1wbHVzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDY3XCI7XG59XG4uZmEtbWludXM6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwNjhcIjtcbn1cbi5mYS1hc3RlcmlzazpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjA2OVwiO1xufVxuLmZhLWV4Y2xhbWF0aW9uLWNpcmNsZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjA2YVwiO1xufVxuLmZhLWdpZnQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwNmJcIjtcbn1cbi5mYS1sZWFmOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDZjXCI7XG59XG4uZmEtZmlyZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjA2ZFwiO1xufVxuLmZhLWV5ZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjA2ZVwiO1xufVxuLmZhLWV5ZS1zbGFzaDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjA3MFwiO1xufVxuLmZhLXdhcm5pbmc6YmVmb3JlLFxuLmZhLWV4Y2xhbWF0aW9uLXRyaWFuZ2xlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDcxXCI7XG59XG4uZmEtcGxhbmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwNzJcIjtcbn1cbi5mYS1jYWxlbmRhcjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjA3M1wiO1xufVxuLmZhLXJhbmRvbTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjA3NFwiO1xufVxuLmZhLWNvbW1lbnQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwNzVcIjtcbn1cbi5mYS1tYWduZXQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwNzZcIjtcbn1cbi5mYS1jaGV2cm9uLXVwOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDc3XCI7XG59XG4uZmEtY2hldnJvbi1kb3duOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDc4XCI7XG59XG4uZmEtcmV0d2VldDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjA3OVwiO1xufVxuLmZhLXNob3BwaW5nLWNhcnQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwN2FcIjtcbn1cbi5mYS1mb2xkZXI6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwN2JcIjtcbn1cbi5mYS1mb2xkZXItb3BlbjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjA3Y1wiO1xufVxuLmZhLWFycm93cy12OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDdkXCI7XG59XG4uZmEtYXJyb3dzLWg6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwN2VcIjtcbn1cbi5mYS1iYXItY2hhcnQtbzpiZWZvcmUsXG4uZmEtYmFyLWNoYXJ0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDgwXCI7XG59XG4uZmEtdHdpdHRlci1zcXVhcmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwODFcIjtcbn1cbi5mYS1mYWNlYm9vay1zcXVhcmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwODJcIjtcbn1cbi5mYS1jYW1lcmEtcmV0cm86YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwODNcIjtcbn1cbi5mYS1rZXk6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwODRcIjtcbn1cbi5mYS1nZWFyczpiZWZvcmUsXG4uZmEtY29nczpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjA4NVwiO1xufVxuLmZhLWNvbW1lbnRzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDg2XCI7XG59XG4uZmEtdGh1bWJzLW8tdXA6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwODdcIjtcbn1cbi5mYS10aHVtYnMtby1kb3duOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDg4XCI7XG59XG4uZmEtc3Rhci1oYWxmOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDg5XCI7XG59XG4uZmEtaGVhcnQtbzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjA4YVwiO1xufVxuLmZhLXNpZ24tb3V0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDhiXCI7XG59XG4uZmEtbGlua2VkaW4tc3F1YXJlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDhjXCI7XG59XG4uZmEtdGh1bWItdGFjazpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjA4ZFwiO1xufVxuLmZhLWV4dGVybmFsLWxpbms6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwOGVcIjtcbn1cbi5mYS1zaWduLWluOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDkwXCI7XG59XG4uZmEtdHJvcGh5OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDkxXCI7XG59XG4uZmEtZ2l0aHViLXNxdWFyZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjA5MlwiO1xufVxuLmZhLXVwbG9hZDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjA5M1wiO1xufVxuLmZhLWxlbW9uLW86YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwOTRcIjtcbn1cbi5mYS1waG9uZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjA5NVwiO1xufVxuLmZhLXNxdWFyZS1vOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDk2XCI7XG59XG4uZmEtYm9va21hcmstbzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjA5N1wiO1xufVxuLmZhLXBob25lLXNxdWFyZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjA5OFwiO1xufVxuLmZhLXR3aXR0ZXI6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwOTlcIjtcbn1cbi5mYS1mYWNlYm9vay1mOmJlZm9yZSxcbi5mYS1mYWNlYm9vazpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjA5YVwiO1xufVxuLmZhLWdpdGh1YjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjA5YlwiO1xufVxuLmZhLXVubG9jazpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjA5Y1wiO1xufVxuLmZhLWNyZWRpdC1jYXJkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDlkXCI7XG59XG4uZmEtZmVlZDpiZWZvcmUsXG4uZmEtcnNzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDllXCI7XG59XG4uZmEtaGRkLW86YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwYTBcIjtcbn1cbi5mYS1idWxsaG9ybjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjBhMVwiO1xufVxuLmZhLWJlbGw6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwZjNcIjtcbn1cbi5mYS1jZXJ0aWZpY2F0ZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjBhM1wiO1xufVxuLmZhLWhhbmQtby1yaWdodDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjBhNFwiO1xufVxuLmZhLWhhbmQtby1sZWZ0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMGE1XCI7XG59XG4uZmEtaGFuZC1vLXVwOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMGE2XCI7XG59XG4uZmEtaGFuZC1vLWRvd246YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwYTdcIjtcbn1cbi5mYS1hcnJvdy1jaXJjbGUtbGVmdDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjBhOFwiO1xufVxuLmZhLWFycm93LWNpcmNsZS1yaWdodDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjBhOVwiO1xufVxuLmZhLWFycm93LWNpcmNsZS11cDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjBhYVwiO1xufVxuLmZhLWFycm93LWNpcmNsZS1kb3duOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMGFiXCI7XG59XG4uZmEtZ2xvYmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwYWNcIjtcbn1cbi5mYS13cmVuY2g6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwYWRcIjtcbn1cbi5mYS10YXNrczpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjBhZVwiO1xufVxuLmZhLWZpbHRlcjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjBiMFwiO1xufVxuLmZhLWJyaWVmY2FzZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjBiMVwiO1xufVxuLmZhLWFycm93cy1hbHQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwYjJcIjtcbn1cbi5mYS1ncm91cDpiZWZvcmUsXG4uZmEtdXNlcnM6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwYzBcIjtcbn1cbi5mYS1jaGFpbjpiZWZvcmUsXG4uZmEtbGluazpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjBjMVwiO1xufVxuLmZhLWNsb3VkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMGMyXCI7XG59XG4uZmEtZmxhc2s6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwYzNcIjtcbn1cbi5mYS1jdXQ6YmVmb3JlLFxuLmZhLXNjaXNzb3JzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMGM0XCI7XG59XG4uZmEtY29weTpiZWZvcmUsXG4uZmEtZmlsZXMtbzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjBjNVwiO1xufVxuLmZhLXBhcGVyY2xpcDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjBjNlwiO1xufVxuLmZhLXNhdmU6YmVmb3JlLFxuLmZhLWZsb3BweS1vOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMGM3XCI7XG59XG4uZmEtc3F1YXJlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMGM4XCI7XG59XG4uZmEtbmF2aWNvbjpiZWZvcmUsXG4uZmEtcmVvcmRlcjpiZWZvcmUsXG4uZmEtYmFyczpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjBjOVwiO1xufVxuLmZhLWxpc3QtdWw6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwY2FcIjtcbn1cbi5mYS1saXN0LW9sOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMGNiXCI7XG59XG4uZmEtc3RyaWtldGhyb3VnaDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjBjY1wiO1xufVxuLmZhLXVuZGVybGluZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjBjZFwiO1xufVxuLmZhLXRhYmxlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMGNlXCI7XG59XG4uZmEtbWFnaWM6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwZDBcIjtcbn1cbi5mYS10cnVjazpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjBkMVwiO1xufVxuLmZhLXBpbnRlcmVzdDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjBkMlwiO1xufVxuLmZhLXBpbnRlcmVzdC1zcXVhcmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwZDNcIjtcbn1cbi5mYS1nb29nbGUtcGx1cy1zcXVhcmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwZDRcIjtcbn1cbi5mYS1nb29nbGUtcGx1czpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjBkNVwiO1xufVxuLmZhLW1vbmV5OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMGQ2XCI7XG59XG4uZmEtY2FyZXQtZG93bjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjBkN1wiO1xufVxuLmZhLWNhcmV0LXVwOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMGQ4XCI7XG59XG4uZmEtY2FyZXQtbGVmdDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjBkOVwiO1xufVxuLmZhLWNhcmV0LXJpZ2h0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMGRhXCI7XG59XG4uZmEtY29sdW1uczpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjBkYlwiO1xufVxuLmZhLXVuc29ydGVkOmJlZm9yZSxcbi5mYS1zb3J0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMGRjXCI7XG59XG4uZmEtc29ydC1kb3duOmJlZm9yZSxcbi5mYS1zb3J0LWRlc2M6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwZGRcIjtcbn1cbi5mYS1zb3J0LXVwOmJlZm9yZSxcbi5mYS1zb3J0LWFzYzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjBkZVwiO1xufVxuLmZhLWVudmVsb3BlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMGUwXCI7XG59XG4uZmEtbGlua2VkaW46YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwZTFcIjtcbn1cbi5mYS1yb3RhdGUtbGVmdDpiZWZvcmUsXG4uZmEtdW5kbzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjBlMlwiO1xufVxuLmZhLWxlZ2FsOmJlZm9yZSxcbi5mYS1nYXZlbDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjBlM1wiO1xufVxuLmZhLWRhc2hib2FyZDpiZWZvcmUsXG4uZmEtdGFjaG9tZXRlcjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjBlNFwiO1xufVxuLmZhLWNvbW1lbnQtbzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjBlNVwiO1xufVxuLmZhLWNvbW1lbnRzLW86YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwZTZcIjtcbn1cbi5mYS1mbGFzaDpiZWZvcmUsXG4uZmEtYm9sdDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjBlN1wiO1xufVxuLmZhLXNpdGVtYXA6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwZThcIjtcbn1cbi5mYS11bWJyZWxsYTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjBlOVwiO1xufVxuLmZhLXBhc3RlOmJlZm9yZSxcbi5mYS1jbGlwYm9hcmQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwZWFcIjtcbn1cbi5mYS1saWdodGJ1bGItbzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjBlYlwiO1xufVxuLmZhLWV4Y2hhbmdlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMGVjXCI7XG59XG4uZmEtY2xvdWQtZG93bmxvYWQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwZWRcIjtcbn1cbi5mYS1jbG91ZC11cGxvYWQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwZWVcIjtcbn1cbi5mYS11c2VyLW1kOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMGYwXCI7XG59XG4uZmEtc3RldGhvc2NvcGU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwZjFcIjtcbn1cbi5mYS1zdWl0Y2FzZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjBmMlwiO1xufVxuLmZhLWJlbGwtbzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjBhMlwiO1xufVxuLmZhLWNvZmZlZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjBmNFwiO1xufVxuLmZhLWN1dGxlcnk6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwZjVcIjtcbn1cbi5mYS1maWxlLXRleHQtbzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjBmNlwiO1xufVxuLmZhLWJ1aWxkaW5nLW86YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwZjdcIjtcbn1cbi5mYS1ob3NwaXRhbC1vOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMGY4XCI7XG59XG4uZmEtYW1idWxhbmNlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMGY5XCI7XG59XG4uZmEtbWVka2l0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMGZhXCI7XG59XG4uZmEtZmlnaHRlci1qZXQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwZmJcIjtcbn1cbi5mYS1iZWVyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMGZjXCI7XG59XG4uZmEtaC1zcXVhcmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwZmRcIjtcbn1cbi5mYS1wbHVzLXNxdWFyZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjBmZVwiO1xufVxuLmZhLWFuZ2xlLWRvdWJsZS1sZWZ0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTAwXCI7XG59XG4uZmEtYW5nbGUtZG91YmxlLXJpZ2h0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTAxXCI7XG59XG4uZmEtYW5nbGUtZG91YmxlLXVwOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTAyXCI7XG59XG4uZmEtYW5nbGUtZG91YmxlLWRvd246YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxMDNcIjtcbn1cbi5mYS1hbmdsZS1sZWZ0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTA0XCI7XG59XG4uZmEtYW5nbGUtcmlnaHQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxMDVcIjtcbn1cbi5mYS1hbmdsZS11cDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjEwNlwiO1xufVxuLmZhLWFuZ2xlLWRvd246YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxMDdcIjtcbn1cbi5mYS1kZXNrdG9wOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTA4XCI7XG59XG4uZmEtbGFwdG9wOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTA5XCI7XG59XG4uZmEtdGFibGV0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTBhXCI7XG59XG4uZmEtbW9iaWxlLXBob25lOmJlZm9yZSxcbi5mYS1tb2JpbGU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxMGJcIjtcbn1cbi5mYS1jaXJjbGUtbzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjEwY1wiO1xufVxuLmZhLXF1b3RlLWxlZnQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxMGRcIjtcbn1cbi5mYS1xdW90ZS1yaWdodDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjEwZVwiO1xufVxuLmZhLXNwaW5uZXI6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxMTBcIjtcbn1cbi5mYS1jaXJjbGU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxMTFcIjtcbn1cbi5mYS1tYWlsLXJlcGx5OmJlZm9yZSxcbi5mYS1yZXBseTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjExMlwiO1xufVxuLmZhLWdpdGh1Yi1hbHQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxMTNcIjtcbn1cbi5mYS1mb2xkZXItbzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjExNFwiO1xufVxuLmZhLWZvbGRlci1vcGVuLW86YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxMTVcIjtcbn1cbi5mYS1zbWlsZS1vOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTE4XCI7XG59XG4uZmEtZnJvd24tbzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjExOVwiO1xufVxuLmZhLW1laC1vOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTFhXCI7XG59XG4uZmEtZ2FtZXBhZDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjExYlwiO1xufVxuLmZhLWtleWJvYXJkLW86YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxMWNcIjtcbn1cbi5mYS1mbGFnLW86YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxMWRcIjtcbn1cbi5mYS1mbGFnLWNoZWNrZXJlZDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjExZVwiO1xufVxuLmZhLXRlcm1pbmFsOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTIwXCI7XG59XG4uZmEtY29kZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjEyMVwiO1xufVxuLmZhLW1haWwtcmVwbHktYWxsOmJlZm9yZSxcbi5mYS1yZXBseS1hbGw6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxMjJcIjtcbn1cbi5mYS1zdGFyLWhhbGYtZW1wdHk6YmVmb3JlLFxuLmZhLXN0YXItaGFsZi1mdWxsOmJlZm9yZSxcbi5mYS1zdGFyLWhhbGYtbzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjEyM1wiO1xufVxuLmZhLWxvY2F0aW9uLWFycm93OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTI0XCI7XG59XG4uZmEtY3JvcDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjEyNVwiO1xufVxuLmZhLWNvZGUtZm9yazpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjEyNlwiO1xufVxuLmZhLXVubGluazpiZWZvcmUsXG4uZmEtY2hhaW4tYnJva2VuOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTI3XCI7XG59XG4uZmEtcXVlc3Rpb246YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxMjhcIjtcbn1cbi5mYS1pbmZvOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTI5XCI7XG59XG4uZmEtZXhjbGFtYXRpb246YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxMmFcIjtcbn1cbi5mYS1zdXBlcnNjcmlwdDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjEyYlwiO1xufVxuLmZhLXN1YnNjcmlwdDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjEyY1wiO1xufVxuLmZhLWVyYXNlcjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjEyZFwiO1xufVxuLmZhLXB1enpsZS1waWVjZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjEyZVwiO1xufVxuLmZhLW1pY3JvcGhvbmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxMzBcIjtcbn1cbi5mYS1taWNyb3Bob25lLXNsYXNoOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTMxXCI7XG59XG4uZmEtc2hpZWxkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTMyXCI7XG59XG4uZmEtY2FsZW5kYXItbzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjEzM1wiO1xufVxuLmZhLWZpcmUtZXh0aW5ndWlzaGVyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTM0XCI7XG59XG4uZmEtcm9ja2V0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTM1XCI7XG59XG4uZmEtbWF4Y2RuOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTM2XCI7XG59XG4uZmEtY2hldnJvbi1jaXJjbGUtbGVmdDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjEzN1wiO1xufVxuLmZhLWNoZXZyb24tY2lyY2xlLXJpZ2h0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTM4XCI7XG59XG4uZmEtY2hldnJvbi1jaXJjbGUtdXA6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxMzlcIjtcbn1cbi5mYS1jaGV2cm9uLWNpcmNsZS1kb3duOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTNhXCI7XG59XG4uZmEtaHRtbDU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxM2JcIjtcbn1cbi5mYS1jc3MzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTNjXCI7XG59XG4uZmEtYW5jaG9yOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTNkXCI7XG59XG4uZmEtdW5sb2NrLWFsdDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjEzZVwiO1xufVxuLmZhLWJ1bGxzZXllOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTQwXCI7XG59XG4uZmEtZWxsaXBzaXMtaDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjE0MVwiO1xufVxuLmZhLWVsbGlwc2lzLXY6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxNDJcIjtcbn1cbi5mYS1yc3Mtc3F1YXJlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTQzXCI7XG59XG4uZmEtcGxheS1jaXJjbGU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxNDRcIjtcbn1cbi5mYS10aWNrZXQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxNDVcIjtcbn1cbi5mYS1taW51cy1zcXVhcmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxNDZcIjtcbn1cbi5mYS1taW51cy1zcXVhcmUtbzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjE0N1wiO1xufVxuLmZhLWxldmVsLXVwOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTQ4XCI7XG59XG4uZmEtbGV2ZWwtZG93bjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjE0OVwiO1xufVxuLmZhLWNoZWNrLXNxdWFyZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjE0YVwiO1xufVxuLmZhLXBlbmNpbC1zcXVhcmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxNGJcIjtcbn1cbi5mYS1leHRlcm5hbC1saW5rLXNxdWFyZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjE0Y1wiO1xufVxuLmZhLXNoYXJlLXNxdWFyZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjE0ZFwiO1xufVxuLmZhLWNvbXBhc3M6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxNGVcIjtcbn1cbi5mYS10b2dnbGUtZG93bjpiZWZvcmUsXG4uZmEtY2FyZXQtc3F1YXJlLW8tZG93bjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjE1MFwiO1xufVxuLmZhLXRvZ2dsZS11cDpiZWZvcmUsXG4uZmEtY2FyZXQtc3F1YXJlLW8tdXA6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxNTFcIjtcbn1cbi5mYS10b2dnbGUtcmlnaHQ6YmVmb3JlLFxuLmZhLWNhcmV0LXNxdWFyZS1vLXJpZ2h0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTUyXCI7XG59XG4uZmEtZXVybzpiZWZvcmUsXG4uZmEtZXVyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTUzXCI7XG59XG4uZmEtZ2JwOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTU0XCI7XG59XG4uZmEtZG9sbGFyOmJlZm9yZSxcbi5mYS11c2Q6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxNTVcIjtcbn1cbi5mYS1ydXBlZTpiZWZvcmUsXG4uZmEtaW5yOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTU2XCI7XG59XG4uZmEtY255OmJlZm9yZSxcbi5mYS1ybWI6YmVmb3JlLFxuLmZhLXllbjpiZWZvcmUsXG4uZmEtanB5OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTU3XCI7XG59XG4uZmEtcnVibGU6YmVmb3JlLFxuLmZhLXJvdWJsZTpiZWZvcmUsXG4uZmEtcnViOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTU4XCI7XG59XG4uZmEtd29uOmJlZm9yZSxcbi5mYS1rcnc6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxNTlcIjtcbn1cbi5mYS1iaXRjb2luOmJlZm9yZSxcbi5mYS1idGM6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxNWFcIjtcbn1cbi5mYS1maWxlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTViXCI7XG59XG4uZmEtZmlsZS10ZXh0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTVjXCI7XG59XG4uZmEtc29ydC1hbHBoYS1hc2M6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxNWRcIjtcbn1cbi5mYS1zb3J0LWFscGhhLWRlc2M6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxNWVcIjtcbn1cbi5mYS1zb3J0LWFtb3VudC1hc2M6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxNjBcIjtcbn1cbi5mYS1zb3J0LWFtb3VudC1kZXNjOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTYxXCI7XG59XG4uZmEtc29ydC1udW1lcmljLWFzYzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjE2MlwiO1xufVxuLmZhLXNvcnQtbnVtZXJpYy1kZXNjOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTYzXCI7XG59XG4uZmEtdGh1bWJzLXVwOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTY0XCI7XG59XG4uZmEtdGh1bWJzLWRvd246YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxNjVcIjtcbn1cbi5mYS15b3V0dWJlLXNxdWFyZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjE2NlwiO1xufVxuLmZhLXlvdXR1YmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxNjdcIjtcbn1cbi5mYS14aW5nOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTY4XCI7XG59XG4uZmEteGluZy1zcXVhcmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxNjlcIjtcbn1cbi5mYS15b3V0dWJlLXBsYXk6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxNmFcIjtcbn1cbi5mYS1kcm9wYm94OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTZiXCI7XG59XG4uZmEtc3RhY2stb3ZlcmZsb3c6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxNmNcIjtcbn1cbi5mYS1pbnN0YWdyYW06YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxNmRcIjtcbn1cbi5mYS1mbGlja3I6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxNmVcIjtcbn1cbi5mYS1hZG46YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxNzBcIjtcbn1cbi5mYS1iaXRidWNrZXQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxNzFcIjtcbn1cbi5mYS1iaXRidWNrZXQtc3F1YXJlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTcyXCI7XG59XG4uZmEtdHVtYmxyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTczXCI7XG59XG4uZmEtdHVtYmxyLXNxdWFyZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjE3NFwiO1xufVxuLmZhLWxvbmctYXJyb3ctZG93bjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjE3NVwiO1xufVxuLmZhLWxvbmctYXJyb3ctdXA6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxNzZcIjtcbn1cbi5mYS1sb25nLWFycm93LWxlZnQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxNzdcIjtcbn1cbi5mYS1sb25nLWFycm93LXJpZ2h0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTc4XCI7XG59XG4uZmEtYXBwbGU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxNzlcIjtcbn1cbi5mYS13aW5kb3dzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTdhXCI7XG59XG4uZmEtYW5kcm9pZDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjE3YlwiO1xufVxuLmZhLWxpbnV4OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTdjXCI7XG59XG4uZmEtZHJpYmJibGU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxN2RcIjtcbn1cbi5mYS1za3lwZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjE3ZVwiO1xufVxuLmZhLWZvdXJzcXVhcmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxODBcIjtcbn1cbi5mYS10cmVsbG86YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxODFcIjtcbn1cbi5mYS1mZW1hbGU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxODJcIjtcbn1cbi5mYS1tYWxlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTgzXCI7XG59XG4uZmEtZ2l0dGlwOmJlZm9yZSxcbi5mYS1ncmF0aXBheTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjE4NFwiO1xufVxuLmZhLXN1bi1vOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTg1XCI7XG59XG4uZmEtbW9vbi1vOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTg2XCI7XG59XG4uZmEtYXJjaGl2ZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjE4N1wiO1xufVxuLmZhLWJ1ZzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjE4OFwiO1xufVxuLmZhLXZrOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTg5XCI7XG59XG4uZmEtd2VpYm86YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxOGFcIjtcbn1cbi5mYS1yZW5yZW46YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxOGJcIjtcbn1cbi5mYS1wYWdlbGluZXM6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxOGNcIjtcbn1cbi5mYS1zdGFjay1leGNoYW5nZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjE4ZFwiO1xufVxuLmZhLWFycm93LWNpcmNsZS1vLXJpZ2h0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMThlXCI7XG59XG4uZmEtYXJyb3ctY2lyY2xlLW8tbGVmdDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjE5MFwiO1xufVxuLmZhLXRvZ2dsZS1sZWZ0OmJlZm9yZSxcbi5mYS1jYXJldC1zcXVhcmUtby1sZWZ0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTkxXCI7XG59XG4uZmEtZG90LWNpcmNsZS1vOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTkyXCI7XG59XG4uZmEtd2hlZWxjaGFpcjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjE5M1wiO1xufVxuLmZhLXZpbWVvLXNxdWFyZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjE5NFwiO1xufVxuLmZhLXR1cmtpc2gtbGlyYTpiZWZvcmUsXG4uZmEtdHJ5OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTk1XCI7XG59XG4uZmEtcGx1cy1zcXVhcmUtbzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjE5NlwiO1xufVxuLmZhLXNwYWNlLXNodXR0bGU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxOTdcIjtcbn1cbi5mYS1zbGFjazpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjE5OFwiO1xufVxuLmZhLWVudmVsb3BlLXNxdWFyZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjE5OVwiO1xufVxuLmZhLXdvcmRwcmVzczpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjE5YVwiO1xufVxuLmZhLW9wZW5pZDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjE5YlwiO1xufVxuLmZhLWluc3RpdHV0aW9uOmJlZm9yZSxcbi5mYS1iYW5rOmJlZm9yZSxcbi5mYS11bml2ZXJzaXR5OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTljXCI7XG59XG4uZmEtbW9ydGFyLWJvYXJkOmJlZm9yZSxcbi5mYS1ncmFkdWF0aW9uLWNhcDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjE5ZFwiO1xufVxuLmZhLXlhaG9vOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTllXCI7XG59XG4uZmEtZ29vZ2xlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMWEwXCI7XG59XG4uZmEtcmVkZGl0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMWExXCI7XG59XG4uZmEtcmVkZGl0LXNxdWFyZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjFhMlwiO1xufVxuLmZhLXN0dW1ibGV1cG9uLWNpcmNsZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjFhM1wiO1xufVxuLmZhLXN0dW1ibGV1cG9uOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMWE0XCI7XG59XG4uZmEtZGVsaWNpb3VzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMWE1XCI7XG59XG4uZmEtZGlnZzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjFhNlwiO1xufVxuLmZhLXBpZWQtcGlwZXItcHA6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxYTdcIjtcbn1cbi5mYS1waWVkLXBpcGVyLWFsdDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjFhOFwiO1xufVxuLmZhLWRydXBhbDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjFhOVwiO1xufVxuLmZhLWpvb21sYTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjFhYVwiO1xufVxuLmZhLWxhbmd1YWdlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMWFiXCI7XG59XG4uZmEtZmF4OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMWFjXCI7XG59XG4uZmEtYnVpbGRpbmc6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxYWRcIjtcbn1cbi5mYS1jaGlsZDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjFhZVwiO1xufVxuLmZhLXBhdzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjFiMFwiO1xufVxuLmZhLXNwb29uOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMWIxXCI7XG59XG4uZmEtY3ViZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjFiMlwiO1xufVxuLmZhLWN1YmVzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMWIzXCI7XG59XG4uZmEtYmVoYW5jZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjFiNFwiO1xufVxuLmZhLWJlaGFuY2Utc3F1YXJlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMWI1XCI7XG59XG4uZmEtc3RlYW06YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxYjZcIjtcbn1cbi5mYS1zdGVhbS1zcXVhcmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxYjdcIjtcbn1cbi5mYS1yZWN5Y2xlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMWI4XCI7XG59XG4uZmEtYXV0b21vYmlsZTpiZWZvcmUsXG4uZmEtY2FyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMWI5XCI7XG59XG4uZmEtY2FiOmJlZm9yZSxcbi5mYS10YXhpOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMWJhXCI7XG59XG4uZmEtdHJlZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjFiYlwiO1xufVxuLmZhLXNwb3RpZnk6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxYmNcIjtcbn1cbi5mYS1kZXZpYW50YXJ0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMWJkXCI7XG59XG4uZmEtc291bmRjbG91ZDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjFiZVwiO1xufVxuLmZhLWRhdGFiYXNlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMWMwXCI7XG59XG4uZmEtZmlsZS1wZGYtbzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjFjMVwiO1xufVxuLmZhLWZpbGUtd29yZC1vOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMWMyXCI7XG59XG4uZmEtZmlsZS1leGNlbC1vOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMWMzXCI7XG59XG4uZmEtZmlsZS1wb3dlcnBvaW50LW86YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxYzRcIjtcbn1cbi5mYS1maWxlLXBob3RvLW86YmVmb3JlLFxuLmZhLWZpbGUtcGljdHVyZS1vOmJlZm9yZSxcbi5mYS1maWxlLWltYWdlLW86YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxYzVcIjtcbn1cbi5mYS1maWxlLXppcC1vOmJlZm9yZSxcbi5mYS1maWxlLWFyY2hpdmUtbzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjFjNlwiO1xufVxuLmZhLWZpbGUtc291bmQtbzpiZWZvcmUsXG4uZmEtZmlsZS1hdWRpby1vOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMWM3XCI7XG59XG4uZmEtZmlsZS1tb3ZpZS1vOmJlZm9yZSxcbi5mYS1maWxlLXZpZGVvLW86YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxYzhcIjtcbn1cbi5mYS1maWxlLWNvZGUtbzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjFjOVwiO1xufVxuLmZhLXZpbmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxY2FcIjtcbn1cbi5mYS1jb2RlcGVuOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMWNiXCI7XG59XG4uZmEtanNmaWRkbGU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxY2NcIjtcbn1cbi5mYS1saWZlLWJvdXk6YmVmb3JlLFxuLmZhLWxpZmUtYnVveTpiZWZvcmUsXG4uZmEtbGlmZS1zYXZlcjpiZWZvcmUsXG4uZmEtc3VwcG9ydDpiZWZvcmUsXG4uZmEtbGlmZS1yaW5nOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMWNkXCI7XG59XG4uZmEtY2lyY2xlLW8tbm90Y2g6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxY2VcIjtcbn1cbi5mYS1yYTpiZWZvcmUsXG4uZmEtcmVzaXN0YW5jZTpiZWZvcmUsXG4uZmEtcmViZWw6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxZDBcIjtcbn1cbi5mYS1nZTpiZWZvcmUsXG4uZmEtZW1waXJlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMWQxXCI7XG59XG4uZmEtZ2l0LXNxdWFyZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjFkMlwiO1xufVxuLmZhLWdpdDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjFkM1wiO1xufVxuLmZhLXktY29tYmluYXRvci1zcXVhcmU6YmVmb3JlLFxuLmZhLXljLXNxdWFyZTpiZWZvcmUsXG4uZmEtaGFja2VyLW5ld3M6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxZDRcIjtcbn1cbi5mYS10ZW5jZW50LXdlaWJvOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMWQ1XCI7XG59XG4uZmEtcXE6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxZDZcIjtcbn1cbi5mYS13ZWNoYXQ6YmVmb3JlLFxuLmZhLXdlaXhpbjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjFkN1wiO1xufVxuLmZhLXNlbmQ6YmVmb3JlLFxuLmZhLXBhcGVyLXBsYW5lOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMWQ4XCI7XG59XG4uZmEtc2VuZC1vOmJlZm9yZSxcbi5mYS1wYXBlci1wbGFuZS1vOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMWQ5XCI7XG59XG4uZmEtaGlzdG9yeTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjFkYVwiO1xufVxuLmZhLWNpcmNsZS10aGluOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMWRiXCI7XG59XG4uZmEtaGVhZGVyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMWRjXCI7XG59XG4uZmEtcGFyYWdyYXBoOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMWRkXCI7XG59XG4uZmEtc2xpZGVyczpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjFkZVwiO1xufVxuLmZhLXNoYXJlLWFsdDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjFlMFwiO1xufVxuLmZhLXNoYXJlLWFsdC1zcXVhcmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxZTFcIjtcbn1cbi5mYS1ib21iOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMWUyXCI7XG59XG4uZmEtc29jY2VyLWJhbGwtbzpiZWZvcmUsXG4uZmEtZnV0Ym9sLW86YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxZTNcIjtcbn1cbi5mYS10dHk6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxZTRcIjtcbn1cbi5mYS1iaW5vY3VsYXJzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMWU1XCI7XG59XG4uZmEtcGx1ZzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjFlNlwiO1xufVxuLmZhLXNsaWRlc2hhcmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxZTdcIjtcbn1cbi5mYS10d2l0Y2g6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxZThcIjtcbn1cbi5mYS15ZWxwOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMWU5XCI7XG59XG4uZmEtbmV3c3BhcGVyLW86YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxZWFcIjtcbn1cbi5mYS13aWZpOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMWViXCI7XG59XG4uZmEtY2FsY3VsYXRvcjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjFlY1wiO1xufVxuLmZhLXBheXBhbDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjFlZFwiO1xufVxuLmZhLWdvb2dsZS13YWxsZXQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxZWVcIjtcbn1cbi5mYS1jYy12aXNhOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMWYwXCI7XG59XG4uZmEtY2MtbWFzdGVyY2FyZDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjFmMVwiO1xufVxuLmZhLWNjLWRpc2NvdmVyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMWYyXCI7XG59XG4uZmEtY2MtYW1leDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjFmM1wiO1xufVxuLmZhLWNjLXBheXBhbDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjFmNFwiO1xufVxuLmZhLWNjLXN0cmlwZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjFmNVwiO1xufVxuLmZhLWJlbGwtc2xhc2g6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxZjZcIjtcbn1cbi5mYS1iZWxsLXNsYXNoLW86YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxZjdcIjtcbn1cbi5mYS10cmFzaDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjFmOFwiO1xufVxuLmZhLWNvcHlyaWdodDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjFmOVwiO1xufVxuLmZhLWF0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMWZhXCI7XG59XG4uZmEtZXllZHJvcHBlcjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjFmYlwiO1xufVxuLmZhLXBhaW50LWJydXNoOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMWZjXCI7XG59XG4uZmEtYmlydGhkYXktY2FrZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjFmZFwiO1xufVxuLmZhLWFyZWEtY2hhcnQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxZmVcIjtcbn1cbi5mYS1waWUtY2hhcnQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyMDBcIjtcbn1cbi5mYS1saW5lLWNoYXJ0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMjAxXCI7XG59XG4uZmEtbGFzdGZtOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMjAyXCI7XG59XG4uZmEtbGFzdGZtLXNxdWFyZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjIwM1wiO1xufVxuLmZhLXRvZ2dsZS1vZmY6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyMDRcIjtcbn1cbi5mYS10b2dnbGUtb246YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyMDVcIjtcbn1cbi5mYS1iaWN5Y2xlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMjA2XCI7XG59XG4uZmEtYnVzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMjA3XCI7XG59XG4uZmEtaW94aG9zdDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjIwOFwiO1xufVxuLmZhLWFuZ2VsbGlzdDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjIwOVwiO1xufVxuLmZhLWNjOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMjBhXCI7XG59XG4uZmEtc2hla2VsOmJlZm9yZSxcbi5mYS1zaGVxZWw6YmVmb3JlLFxuLmZhLWlsczpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjIwYlwiO1xufVxuLmZhLW1lYW5wYXRoOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMjBjXCI7XG59XG4uZmEtYnV5c2VsbGFkczpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjIwZFwiO1xufVxuLmZhLWNvbm5lY3RkZXZlbG9wOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMjBlXCI7XG59XG4uZmEtZGFzaGN1YmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyMTBcIjtcbn1cbi5mYS1mb3J1bWJlZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjIxMVwiO1xufVxuLmZhLWxlYW5wdWI6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyMTJcIjtcbn1cbi5mYS1zZWxsc3k6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyMTNcIjtcbn1cbi5mYS1zaGlydHNpbmJ1bGs6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyMTRcIjtcbn1cbi5mYS1zaW1wbHlidWlsdDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjIxNVwiO1xufVxuLmZhLXNreWF0bGFzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMjE2XCI7XG59XG4uZmEtY2FydC1wbHVzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMjE3XCI7XG59XG4uZmEtY2FydC1hcnJvdy1kb3duOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMjE4XCI7XG59XG4uZmEtZGlhbW9uZDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjIxOVwiO1xufVxuLmZhLXNoaXA6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyMWFcIjtcbn1cbi5mYS11c2VyLXNlY3JldDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjIxYlwiO1xufVxuLmZhLW1vdG9yY3ljbGU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyMWNcIjtcbn1cbi5mYS1zdHJlZXQtdmlldzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjIxZFwiO1xufVxuLmZhLWhlYXJ0YmVhdDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjIxZVwiO1xufVxuLmZhLXZlbnVzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMjIxXCI7XG59XG4uZmEtbWFyczpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjIyMlwiO1xufVxuLmZhLW1lcmN1cnk6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyMjNcIjtcbn1cbi5mYS1pbnRlcnNleDpiZWZvcmUsXG4uZmEtdHJhbnNnZW5kZXI6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyMjRcIjtcbn1cbi5mYS10cmFuc2dlbmRlci1hbHQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyMjVcIjtcbn1cbi5mYS12ZW51cy1kb3VibGU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyMjZcIjtcbn1cbi5mYS1tYXJzLWRvdWJsZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjIyN1wiO1xufVxuLmZhLXZlbnVzLW1hcnM6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyMjhcIjtcbn1cbi5mYS1tYXJzLXN0cm9rZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjIyOVwiO1xufVxuLmZhLW1hcnMtc3Ryb2tlLXY6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyMmFcIjtcbn1cbi5mYS1tYXJzLXN0cm9rZS1oOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMjJiXCI7XG59XG4uZmEtbmV1dGVyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMjJjXCI7XG59XG4uZmEtZ2VuZGVybGVzczpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjIyZFwiO1xufVxuLmZhLWZhY2Vib29rLW9mZmljaWFsOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMjMwXCI7XG59XG4uZmEtcGludGVyZXN0LXA6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyMzFcIjtcbn1cbi5mYS13aGF0c2FwcDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjIzMlwiO1xufVxuLmZhLXNlcnZlcjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjIzM1wiO1xufVxuLmZhLXVzZXItcGx1czpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjIzNFwiO1xufVxuLmZhLXVzZXItdGltZXM6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyMzVcIjtcbn1cbi5mYS1ob3RlbDpiZWZvcmUsXG4uZmEtYmVkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMjM2XCI7XG59XG4uZmEtdmlhY29pbjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjIzN1wiO1xufVxuLmZhLXRyYWluOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMjM4XCI7XG59XG4uZmEtc3Vid2F5OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMjM5XCI7XG59XG4uZmEtbWVkaXVtOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMjNhXCI7XG59XG4uZmEteWM6YmVmb3JlLFxuLmZhLXktY29tYmluYXRvcjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjIzYlwiO1xufVxuLmZhLW9wdGluLW1vbnN0ZXI6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyM2NcIjtcbn1cbi5mYS1vcGVuY2FydDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjIzZFwiO1xufVxuLmZhLWV4cGVkaXRlZHNzbDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjIzZVwiO1xufVxuLmZhLWJhdHRlcnktNDpiZWZvcmUsXG4uZmEtYmF0dGVyeTpiZWZvcmUsXG4uZmEtYmF0dGVyeS1mdWxsOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMjQwXCI7XG59XG4uZmEtYmF0dGVyeS0zOmJlZm9yZSxcbi5mYS1iYXR0ZXJ5LXRocmVlLXF1YXJ0ZXJzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMjQxXCI7XG59XG4uZmEtYmF0dGVyeS0yOmJlZm9yZSxcbi5mYS1iYXR0ZXJ5LWhhbGY6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyNDJcIjtcbn1cbi5mYS1iYXR0ZXJ5LTE6YmVmb3JlLFxuLmZhLWJhdHRlcnktcXVhcnRlcjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjI0M1wiO1xufVxuLmZhLWJhdHRlcnktMDpiZWZvcmUsXG4uZmEtYmF0dGVyeS1lbXB0eTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjI0NFwiO1xufVxuLmZhLW1vdXNlLXBvaW50ZXI6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyNDVcIjtcbn1cbi5mYS1pLWN1cnNvcjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjI0NlwiO1xufVxuLmZhLW9iamVjdC1ncm91cDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjI0N1wiO1xufVxuLmZhLW9iamVjdC11bmdyb3VwOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMjQ4XCI7XG59XG4uZmEtc3RpY2t5LW5vdGU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyNDlcIjtcbn1cbi5mYS1zdGlja3ktbm90ZS1vOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMjRhXCI7XG59XG4uZmEtY2MtamNiOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMjRiXCI7XG59XG4uZmEtY2MtZGluZXJzLWNsdWI6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyNGNcIjtcbn1cbi5mYS1jbG9uZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjI0ZFwiO1xufVxuLmZhLWJhbGFuY2Utc2NhbGU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyNGVcIjtcbn1cbi5mYS1ob3VyZ2xhc3MtbzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjI1MFwiO1xufVxuLmZhLWhvdXJnbGFzcy0xOmJlZm9yZSxcbi5mYS1ob3VyZ2xhc3Mtc3RhcnQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyNTFcIjtcbn1cbi5mYS1ob3VyZ2xhc3MtMjpiZWZvcmUsXG4uZmEtaG91cmdsYXNzLWhhbGY6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyNTJcIjtcbn1cbi5mYS1ob3VyZ2xhc3MtMzpiZWZvcmUsXG4uZmEtaG91cmdsYXNzLWVuZDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjI1M1wiO1xufVxuLmZhLWhvdXJnbGFzczpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjI1NFwiO1xufVxuLmZhLWhhbmQtZ3JhYi1vOmJlZm9yZSxcbi5mYS1oYW5kLXJvY2stbzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjI1NVwiO1xufVxuLmZhLWhhbmQtc3RvcC1vOmJlZm9yZSxcbi5mYS1oYW5kLXBhcGVyLW86YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyNTZcIjtcbn1cbi5mYS1oYW5kLXNjaXNzb3JzLW86YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyNTdcIjtcbn1cbi5mYS1oYW5kLWxpemFyZC1vOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMjU4XCI7XG59XG4uZmEtaGFuZC1zcG9jay1vOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMjU5XCI7XG59XG4uZmEtaGFuZC1wb2ludGVyLW86YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyNWFcIjtcbn1cbi5mYS1oYW5kLXBlYWNlLW86YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyNWJcIjtcbn1cbi5mYS10cmFkZW1hcms6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyNWNcIjtcbn1cbi5mYS1yZWdpc3RlcmVkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMjVkXCI7XG59XG4uZmEtY3JlYXRpdmUtY29tbW9uczpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjI1ZVwiO1xufVxuLmZhLWdnOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMjYwXCI7XG59XG4uZmEtZ2ctY2lyY2xlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMjYxXCI7XG59XG4uZmEtdHJpcGFkdmlzb3I6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyNjJcIjtcbn1cbi5mYS1vZG5va2xhc3NuaWtpOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMjYzXCI7XG59XG4uZmEtb2Rub2tsYXNzbmlraS1zcXVhcmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyNjRcIjtcbn1cbi5mYS1nZXQtcG9ja2V0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMjY1XCI7XG59XG4uZmEtd2lraXBlZGlhLXc6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyNjZcIjtcbn1cbi5mYS1zYWZhcmk6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyNjdcIjtcbn1cbi5mYS1jaHJvbWU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyNjhcIjtcbn1cbi5mYS1maXJlZm94OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMjY5XCI7XG59XG4uZmEtb3BlcmE6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyNmFcIjtcbn1cbi5mYS1pbnRlcm5ldC1leHBsb3JlcjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjI2YlwiO1xufVxuLmZhLXR2OmJlZm9yZSxcbi5mYS10ZWxldmlzaW9uOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMjZjXCI7XG59XG4uZmEtY29udGFvOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMjZkXCI7XG59XG4uZmEtNTAwcHg6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyNmVcIjtcbn1cbi5mYS1hbWF6b246YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyNzBcIjtcbn1cbi5mYS1jYWxlbmRhci1wbHVzLW86YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyNzFcIjtcbn1cbi5mYS1jYWxlbmRhci1taW51cy1vOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMjcyXCI7XG59XG4uZmEtY2FsZW5kYXItdGltZXMtbzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjI3M1wiO1xufVxuLmZhLWNhbGVuZGFyLWNoZWNrLW86YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyNzRcIjtcbn1cbi5mYS1pbmR1c3RyeTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjI3NVwiO1xufVxuLmZhLW1hcC1waW46YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyNzZcIjtcbn1cbi5mYS1tYXAtc2lnbnM6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyNzdcIjtcbn1cbi5mYS1tYXAtbzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjI3OFwiO1xufVxuLmZhLW1hcDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjI3OVwiO1xufVxuLmZhLWNvbW1lbnRpbmc6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyN2FcIjtcbn1cbi5mYS1jb21tZW50aW5nLW86YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyN2JcIjtcbn1cbi5mYS1ob3V6ejpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjI3Y1wiO1xufVxuLmZhLXZpbWVvOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMjdkXCI7XG59XG4uZmEtYmxhY2stdGllOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMjdlXCI7XG59XG4uZmEtZm9udGljb25zOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMjgwXCI7XG59XG4uZmEtcmVkZGl0LWFsaWVuOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMjgxXCI7XG59XG4uZmEtZWRnZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjI4MlwiO1xufVxuLmZhLWNyZWRpdC1jYXJkLWFsdDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjI4M1wiO1xufVxuLmZhLWNvZGllcGllOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMjg0XCI7XG59XG4uZmEtbW9keDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjI4NVwiO1xufVxuLmZhLWZvcnQtYXdlc29tZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjI4NlwiO1xufVxuLmZhLXVzYjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjI4N1wiO1xufVxuLmZhLXByb2R1Y3QtaHVudDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjI4OFwiO1xufVxuLmZhLW1peGNsb3VkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMjg5XCI7XG59XG4uZmEtc2NyaWJkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMjhhXCI7XG59XG4uZmEtcGF1c2UtY2lyY2xlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMjhiXCI7XG59XG4uZmEtcGF1c2UtY2lyY2xlLW86YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyOGNcIjtcbn1cbi5mYS1zdG9wLWNpcmNsZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjI4ZFwiO1xufVxuLmZhLXN0b3AtY2lyY2xlLW86YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyOGVcIjtcbn1cbi5mYS1zaG9wcGluZy1iYWc6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyOTBcIjtcbn1cbi5mYS1zaG9wcGluZy1iYXNrZXQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyOTFcIjtcbn1cbi5mYS1oYXNodGFnOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMjkyXCI7XG59XG4uZmEtYmx1ZXRvb3RoOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMjkzXCI7XG59XG4uZmEtYmx1ZXRvb3RoLWI6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyOTRcIjtcbn1cbi5mYS1wZXJjZW50OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMjk1XCI7XG59XG4uZmEtZ2l0bGFiOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMjk2XCI7XG59XG4uZmEtd3BiZWdpbm5lcjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjI5N1wiO1xufVxuLmZhLXdwZm9ybXM6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyOThcIjtcbn1cbi5mYS1lbnZpcmE6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyOTlcIjtcbn1cbi5mYS11bml2ZXJzYWwtYWNjZXNzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMjlhXCI7XG59XG4uZmEtd2hlZWxjaGFpci1hbHQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyOWJcIjtcbn1cbi5mYS1xdWVzdGlvbi1jaXJjbGUtbzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjI5Y1wiO1xufVxuLmZhLWJsaW5kOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMjlkXCI7XG59XG4uZmEtYXVkaW8tZGVzY3JpcHRpb246YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyOWVcIjtcbn1cbi5mYS12b2x1bWUtY29udHJvbC1waG9uZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjJhMFwiO1xufVxuLmZhLWJyYWlsbGU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyYTFcIjtcbn1cbi5mYS1hc3Npc3RpdmUtbGlzdGVuaW5nLXN5c3RlbXM6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyYTJcIjtcbn1cbi5mYS1hc2wtaW50ZXJwcmV0aW5nOmJlZm9yZSxcbi5mYS1hbWVyaWNhbi1zaWduLWxhbmd1YWdlLWludGVycHJldGluZzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjJhM1wiO1xufVxuLmZhLWRlYWZuZXNzOmJlZm9yZSxcbi5mYS1oYXJkLW9mLWhlYXJpbmc6YmVmb3JlLFxuLmZhLWRlYWY6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyYTRcIjtcbn1cbi5mYS1nbGlkZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjJhNVwiO1xufVxuLmZhLWdsaWRlLWc6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyYTZcIjtcbn1cbi5mYS1zaWduaW5nOmJlZm9yZSxcbi5mYS1zaWduLWxhbmd1YWdlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMmE3XCI7XG59XG4uZmEtbG93LXZpc2lvbjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjJhOFwiO1xufVxuLmZhLXZpYWRlbzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjJhOVwiO1xufVxuLmZhLXZpYWRlby1zcXVhcmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyYWFcIjtcbn1cbi5mYS1zbmFwY2hhdDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjJhYlwiO1xufVxuLmZhLXNuYXBjaGF0LWdob3N0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMmFjXCI7XG59XG4uZmEtc25hcGNoYXQtc3F1YXJlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMmFkXCI7XG59XG4uZmEtcGllZC1waXBlcjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjJhZVwiO1xufVxuLmZhLWZpcnN0LW9yZGVyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMmIwXCI7XG59XG4uZmEteW9hc3Q6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyYjFcIjtcbn1cbi5mYS10aGVtZWlzbGU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyYjJcIjtcbn1cbi5mYS1nb29nbGUtcGx1cy1jaXJjbGU6YmVmb3JlLFxuLmZhLWdvb2dsZS1wbHVzLW9mZmljaWFsOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMmIzXCI7XG59XG4uZmEtZmE6YmVmb3JlLFxuLmZhLWZvbnQtYXdlc29tZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjJiNFwiO1xufVxuLmZhLWhhbmRzaGFrZS1vOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMmI1XCI7XG59XG4uZmEtZW52ZWxvcGUtb3BlbjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjJiNlwiO1xufVxuLmZhLWVudmVsb3BlLW9wZW4tbzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjJiN1wiO1xufVxuLmZhLWxpbm9kZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjJiOFwiO1xufVxuLmZhLWFkZHJlc3MtYm9vazpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjJiOVwiO1xufVxuLmZhLWFkZHJlc3MtYm9vay1vOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMmJhXCI7XG59XG4uZmEtdmNhcmQ6YmVmb3JlLFxuLmZhLWFkZHJlc3MtY2FyZDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjJiYlwiO1xufVxuLmZhLXZjYXJkLW86YmVmb3JlLFxuLmZhLWFkZHJlc3MtY2FyZC1vOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMmJjXCI7XG59XG4uZmEtdXNlci1jaXJjbGU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyYmRcIjtcbn1cbi5mYS11c2VyLWNpcmNsZS1vOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMmJlXCI7XG59XG4uZmEtdXNlci1vOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMmMwXCI7XG59XG4uZmEtaWQtYmFkZ2U6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyYzFcIjtcbn1cbi5mYS1kcml2ZXJzLWxpY2Vuc2U6YmVmb3JlLFxuLmZhLWlkLWNhcmQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyYzJcIjtcbn1cbi5mYS1kcml2ZXJzLWxpY2Vuc2UtbzpiZWZvcmUsXG4uZmEtaWQtY2FyZC1vOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMmMzXCI7XG59XG4uZmEtcXVvcmE6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyYzRcIjtcbn1cbi5mYS1mcmVlLWNvZGUtY2FtcDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjJjNVwiO1xufVxuLmZhLXRlbGVncmFtOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMmM2XCI7XG59XG4uZmEtdGhlcm1vbWV0ZXItNDpiZWZvcmUsXG4uZmEtdGhlcm1vbWV0ZXI6YmVmb3JlLFxuLmZhLXRoZXJtb21ldGVyLWZ1bGw6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyYzdcIjtcbn1cbi5mYS10aGVybW9tZXRlci0zOmJlZm9yZSxcbi5mYS10aGVybW9tZXRlci10aHJlZS1xdWFydGVyczpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjJjOFwiO1xufVxuLmZhLXRoZXJtb21ldGVyLTI6YmVmb3JlLFxuLmZhLXRoZXJtb21ldGVyLWhhbGY6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyYzlcIjtcbn1cbi5mYS10aGVybW9tZXRlci0xOmJlZm9yZSxcbi5mYS10aGVybW9tZXRlci1xdWFydGVyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMmNhXCI7XG59XG4uZmEtdGhlcm1vbWV0ZXItMDpiZWZvcmUsXG4uZmEtdGhlcm1vbWV0ZXItZW1wdHk6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyY2JcIjtcbn1cbi5mYS1zaG93ZXI6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyY2NcIjtcbn1cbi5mYS1iYXRodHViOmJlZm9yZSxcbi5mYS1zMTU6YmVmb3JlLFxuLmZhLWJhdGg6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyY2RcIjtcbn1cbi5mYS1wb2RjYXN0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMmNlXCI7XG59XG4uZmEtd2luZG93LW1heGltaXplOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMmQwXCI7XG59XG4uZmEtd2luZG93LW1pbmltaXplOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMmQxXCI7XG59XG4uZmEtd2luZG93LXJlc3RvcmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyZDJcIjtcbn1cbi5mYS10aW1lcy1yZWN0YW5nbGU6YmVmb3JlLFxuLmZhLXdpbmRvdy1jbG9zZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjJkM1wiO1xufVxuLmZhLXRpbWVzLXJlY3RhbmdsZS1vOmJlZm9yZSxcbi5mYS13aW5kb3ctY2xvc2UtbzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjJkNFwiO1xufVxuLmZhLWJhbmRjYW1wOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMmQ1XCI7XG59XG4uZmEtZ3JhdjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjJkNlwiO1xufVxuLmZhLWV0c3k6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyZDdcIjtcbn1cbi5mYS1pbWRiOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMmQ4XCI7XG59XG4uZmEtcmF2ZWxyeTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjJkOVwiO1xufVxuLmZhLWVlcmNhc3Q6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyZGFcIjtcbn1cbi5mYS1taWNyb2NoaXA6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyZGJcIjtcbn1cbi5mYS1zbm93Zmxha2UtbzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjJkY1wiO1xufVxuLmZhLXN1cGVycG93ZXJzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMmRkXCI7XG59XG4uZmEtd3BleHBsb3JlcjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjJkZVwiO1xufVxuLmZhLW1lZXR1cDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjJlMFwiO1xufVxuLnNyLW9ubHkge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHdpZHRoOiAxcHg7XG4gIGhlaWdodDogMXB4O1xuICBwYWRkaW5nOiAwO1xuICBtYXJnaW46IC0xcHg7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGNsaXA6IHJlY3QoMCwgMCwgMCwgMCk7XG4gIGJvcmRlcjogMDtcbn1cbi5zci1vbmx5LWZvY3VzYWJsZTphY3RpdmUsXG4uc3Itb25seS1mb2N1c2FibGU6Zm9jdXMge1xuICBwb3NpdGlvbjogc3RhdGljO1xuICB3aWR0aDogYXV0bztcbiAgaGVpZ2h0OiBhdXRvO1xuICBtYXJnaW46IDA7XG4gIG92ZXJmbG93OiB2aXNpYmxlO1xuICBjbGlwOiBhdXRvO1xufVxuIiwiQGZvbnQtZmFjZSB7XG5cdGZvbnQtZmFtaWx5OiAnaWNvbW9vbic7XG5cdHNyYzp1cmwoJ2ZvbnRzL2ljb21vb24uZW90PzNwMHJ0dycpO1xuXHRzcmM6dXJsKCdmb250cy9pY29tb29uLmVvdD8jaWVmaXgzcDBydHcnKSBmb3JtYXQoJ2VtYmVkZGVkLW9wZW50eXBlJyksXG5cdFx0dXJsKCdmb250cy9pY29tb29uLndvZmY/M3AwcnR3JykgZm9ybWF0KCd3b2ZmJyksXG5cdFx0dXJsKCdmb250cy9pY29tb29uLnR0Zj8zcDBydHcnKSBmb3JtYXQoJ3RydWV0eXBlJyksXG5cdFx0dXJsKCdmb250cy9pY29tb29uLnN2Zz8zcDBydHcjaWNvbW9vbicpIGZvcm1hdCgnc3ZnJyk7XG5cdGZvbnQtd2VpZ2h0OiBub3JtYWw7XG5cdGZvbnQtc3R5bGU6IG5vcm1hbDtcbn1cblxuW2NsYXNzXj1cImljb24tXCJdLCBbY2xhc3MqPVwiIGljb24tXCJdIHtcbiAgICAvKiBVc2UgIWltcG9ydGFudCB0byBwcmV2ZW50IGlzc3VlcyB3aXRoIGJyb3dzZXIgZXh0ZW5zaW9ucyB0aGF0IGNoYW5nZSBmb250cyAqL1xuXHRmb250LWZhbWlseTogJ2ljb21vb24nICFpbXBvcnRhbnQ7XG5cdHNwZWFrOiBub25lO1xuXHRmb250LXN0eWxlOiBub3JtYWw7XG5cdGZvbnQtd2VpZ2h0OiBub3JtYWw7XG5cdGZvbnQtdmFyaWFudDogbm9ybWFsO1xuXHR0ZXh0LXRyYW5zZm9ybTogbm9uZTtcblx0bGluZS1oZWlnaHQ6IDE7XG5cdG1pbi13aWR0aDogMWVtO1xuXHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cdHRleHQtYWxpZ246IGNlbnRlcjtcblx0Zm9udC1zaXplOiAxNnB4O1xuXHR2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuXHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdHRvcDogLTFweDtcblxuXHQvKiBCZXR0ZXIgRm9udCBSZW5kZXJpbmcgPT09PT09PT09PT0gKi9cblx0LXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG5cdC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XG59XG5cbi5pY29uLTJ4IHtcblx0Zm9udC1zaXplOiAzMnB4O1xufVxuLmljb24tM3gge1xuXHRmb250LXNpemU6IDQ4cHg7XG59XG5cbi5pY29uLWJvcmRlcmVkIHtcblx0Ly8gcGFkZGluZzogNXB4O1xuXHQvLyBib3JkZXI6IDJweCBzb2xpZDtcblx0Ly8gYm9yZGVyLXJhZGl1czogNTAlO1xufVxuXG4uaWNvbi1ob21lOmJlZm9yZXtjb250ZW50OlwiXFxlOTAwXCI7fVxuLmljb24taG9tZTI6YmVmb3Jle2NvbnRlbnQ6XCJcXGU5MDFcIjt9XG4uaWNvbi1ob21lNTpiZWZvcmV7Y29udGVudDpcIlxcZTkwNFwiO31cbi5pY29uLWhvbWU3OmJlZm9yZXtjb250ZW50OlwiXFxlOTA2XCI7fVxuLmljb24taG9tZTg6YmVmb3Jle2NvbnRlbnQ6XCJcXGU5MDdcIjt9XG4uaWNvbi1ob21lOTpiZWZvcmV7Y29udGVudDpcIlxcZTkwOFwiO31cbi5pY29uLW9mZmljZTpiZWZvcmV7Y29udGVudDpcIlxcZTkwOVwiO31cbi5pY29uLWNpdHk6YmVmb3Jle2NvbnRlbnQ6XCJcXGU5MGFcIjt9XG4uaWNvbi1uZXdzcGFwZXI6YmVmb3Jle2NvbnRlbnQ6XCJcXGU5MGJcIjt9XG4uaWNvbi1tYWdhemluZTpiZWZvcmV7Y29udGVudDpcIlxcZTkwY1wiO31cbi5pY29uLWRlc2lnbjpiZWZvcmV7Y29udGVudDpcIlxcZTkwZFwiO31cbi5pY29uLXBlbmNpbDpiZWZvcmV7Y29udGVudDpcIlxcZTkwZVwiO31cbi5pY29uLXBlbmNpbDM6YmVmb3Jle2NvbnRlbnQ6XCJcXGU5MTBcIjt9XG4uaWNvbi1wZW5jaWw0OmJlZm9yZXtjb250ZW50OlwiXFxlOTExXCI7fVxuLmljb24tcGVuY2lsNTpiZWZvcmV7Y29udGVudDpcIlxcZTkxMlwiO31cbi5pY29uLXBlbmNpbDY6YmVmb3Jle2NvbnRlbnQ6XCJcXGU5MTNcIjt9XG4uaWNvbi1wZW5jaWw3OmJlZm9yZXtjb250ZW50OlwiXFxlOTE0XCI7fVxuLmljb24tZXJhc2VyOmJlZm9yZXtjb250ZW50OlwiXFxlOTE1XCI7fVxuLmljb24tZXJhc2VyMjpiZWZvcmV7Y29udGVudDpcIlxcZTkxNlwiO31cbi5pY29uLWVyYXNlcjM6YmVmb3Jle2NvbnRlbnQ6XCJcXGU5MTdcIjt9XG4uaWNvbi1xdWlsbDI6YmVmb3Jle2NvbnRlbnQ6XCJcXGU5MTlcIjt9XG4uaWNvbi1xdWlsbDQ6YmVmb3Jle2NvbnRlbnQ6XCJcXGU5MWJcIjt9XG4uaWNvbi1wZW46YmVmb3Jle2NvbnRlbnQ6XCJcXGU5MWNcIjt9XG4uaWNvbi1wZW4tcGx1czpiZWZvcmV7Y29udGVudDpcIlxcZTkxZFwiO31cbi5pY29uLXBlbi1taW51czpiZWZvcmV7Y29udGVudDpcIlxcZTkxZVwiO31cbi5pY29uLXBlbjI6YmVmb3Jle2NvbnRlbnQ6XCJcXGU5MWZcIjt9XG4uaWNvbi1ibG9nOmJlZm9yZXtjb250ZW50OlwiXFxlOTI1XCI7fVxuLmljb24tcGVuNjpiZWZvcmV7Y29udGVudDpcIlxcZTkyN1wiO31cbi5pY29uLWJydXNoOmJlZm9yZXtjb250ZW50OlwiXFxlOTI4XCI7fVxuLmljb24tc3ByYXk6YmVmb3Jle2NvbnRlbnQ6XCJcXGU5MjlcIjt9XG4uaWNvbi1jb2xvci1zYW1wbGVyOmJlZm9yZXtjb250ZW50OlwiXFxlOTJjXCI7fVxuLmljb24tdG9nZ2xlOmJlZm9yZXtjb250ZW50OlwiXFxlOTJkXCI7fVxuLmljb24tYnVja2V0OmJlZm9yZXtjb250ZW50OlwiXFxlOTJlXCI7fVxuLmljb24tZ3JhZGllbnQ6YmVmb3Jle2NvbnRlbnQ6XCJcXGU5MzBcIjt9XG4uaWNvbi1leWVkcm9wcGVyOmJlZm9yZXtjb250ZW50OlwiXFxlOTMxXCI7fVxuLmljb24tZXllZHJvcHBlcjI6YmVmb3Jle2NvbnRlbnQ6XCJcXGU5MzJcIjt9XG4uaWNvbi1leWVkcm9wcGVyMzpiZWZvcmV7Y29udGVudDpcIlxcZTkzM1wiO31cbi5pY29uLWRyb3BsZXQ6YmVmb3Jle2NvbnRlbnQ6XCJcXGU5MzRcIjt9XG4uaWNvbi1kcm9wbGV0MjpiZWZvcmV7Y29udGVudDpcIlxcZTkzNVwiO31cbi5pY29uLWNvbG9yLWNsZWFyOmJlZm9yZXtjb250ZW50OlwiXFxlOTM3XCI7fVxuLmljb24tcGFpbnQtZm9ybWF0OmJlZm9yZXtjb250ZW50OlwiXFxlOTM4XCI7fVxuLmljb24tc3RhbXA6YmVmb3Jle2NvbnRlbnQ6XCJcXGU5MzlcIjt9XG4uaWNvbi1pbWFnZTI6YmVmb3Jle2NvbnRlbnQ6XCJcXGU5M2NcIjt9XG4uaWNvbi1pbWFnZS1jb21wYXJlOmJlZm9yZXtjb250ZW50OlwiXFxlOTNkXCI7fVxuLmljb24taW1hZ2VzMjpiZWZvcmV7Y29udGVudDpcIlxcZTkzZVwiO31cbi5pY29uLWltYWdlMzpiZWZvcmV7Y29udGVudDpcIlxcZTkzZlwiO31cbi5pY29uLWltYWdlczM6YmVmb3Jle2NvbnRlbnQ6XCJcXGU5NDBcIjt9XG4uaWNvbi1pbWFnZTQ6YmVmb3Jle2NvbnRlbnQ6XCJcXGU5NDFcIjt9XG4uaWNvbi1pbWFnZTU6YmVmb3Jle2NvbnRlbnQ6XCJcXGU5NDJcIjt9XG4uaWNvbi1jYW1lcmE6YmVmb3Jle2NvbnRlbnQ6XCJcXGU5NDRcIjt9XG4uaWNvbi1zaHV0dGVyOmJlZm9yZXtjb250ZW50OlwiXFxlOTQ3XCI7fVxuLmljb24taGVhZHBob25lczpiZWZvcmV7Y29udGVudDpcIlxcZTk0OFwiO31cbi5pY29uLWhlYWRzZXQ6YmVmb3Jle2NvbnRlbnQ6XCJcXGU5NDlcIjt9XG4uaWNvbi1tdXNpYzpiZWZvcmV7Y29udGVudDpcIlxcZTk0YVwiO31cbi5pY29uLWFsYnVtOmJlZm9yZXtjb250ZW50OlwiXFxlOTUwXCI7fVxuLmljb24tdGFwZTpiZWZvcmV7Y29udGVudDpcIlxcZTk1MlwiO31cbi5pY29uLXBpYW5vOmJlZm9yZXtjb250ZW50OlwiXFxlOTUzXCI7fVxuLmljb24tc3BlYWtlcnM6YmVmb3Jle2NvbnRlbnQ6XCJcXGU5NTZcIjt9XG4uaWNvbi1wbGF5OmJlZm9yZXtjb250ZW50OlwiXFxlOTU3XCI7fVxuLmljb24tY2xhcGJvYXJkLXBsYXk6YmVmb3Jle2NvbnRlbnQ6XCJcXGU5NTlcIjt9XG4uaWNvbi1jbGFwYm9hcmQ6YmVmb3Jle2NvbnRlbnQ6XCJcXGU5NWFcIjt9XG4uaWNvbi1tZWRpYTpiZWZvcmV7Y29udGVudDpcIlxcZTk1YlwiO31cbi5pY29uLXByZXNlbnRhdGlvbjpiZWZvcmV7Y29udGVudDpcIlxcZTk1Y1wiO31cbi5pY29uLW1vdmllOmJlZm9yZXtjb250ZW50OlwiXFxlOTVkXCI7fVxuLmljb24tZmlsbTpiZWZvcmV7Y29udGVudDpcIlxcZTk1ZVwiO31cbi5pY29uLWZpbG0yOmJlZm9yZXtjb250ZW50OlwiXFxlOTVmXCI7fVxuLmljb24tZmlsbTM6YmVmb3Jle2NvbnRlbnQ6XCJcXGU5NjBcIjt9XG4uaWNvbi1maWxtNDpiZWZvcmV7Y29udGVudDpcIlxcZTk2MVwiO31cbi5pY29uLXZpZGVvLWNhbWVyYTpiZWZvcmV7Y29udGVudDpcIlxcZTk2MlwiO31cbi5pY29uLXZpZGVvLWNhbWVyYTI6YmVmb3Jle2NvbnRlbnQ6XCJcXGU5NjNcIjt9XG4uaWNvbi12aWRlby1jYW1lcmEtc2xhc2g6YmVmb3Jle2NvbnRlbnQ6XCJcXGU5NjRcIjt9XG4uaWNvbi12aWRlby1jYW1lcmEzOmJlZm9yZXtjb250ZW50OlwiXFxlOTY1XCI7fVxuLmljb24tZGljZTpiZWZvcmV7Y29udGVudDpcIlxcZTk2YVwiO31cbi5pY29uLWNoZXNzLWtpbmc6YmVmb3Jle2NvbnRlbnQ6XCJcXGU5NzJcIjt9XG4uaWNvbi1jaGVzcy1xdWVlbjpiZWZvcmV7Y29udGVudDpcIlxcZTk3M1wiO31cbi5pY29uLWNoZXNzOmJlZm9yZXtjb250ZW50OlwiXFxlOTc4XCI7fVxuLmljb24tbWVnYXBob25lOmJlZm9yZXtjb250ZW50OlwiXFxlOTdhXCI7fVxuLmljb24tbmV3OmJlZm9yZXtjb250ZW50OlwiXFxlOTdiXCI7fVxuLmljb24tY29ubmVjdGlvbjpiZWZvcmV7Y29udGVudDpcIlxcZTk3Y1wiO31cbi5pY29uLXN0YXRpb246YmVmb3Jle2NvbnRlbnQ6XCJcXGU5ODFcIjt9XG4uaWNvbi1zYXRlbGxpdGUtZGlzaDI6YmVmb3Jle2NvbnRlbnQ6XCJcXGU5OGFcIjt9XG4uaWNvbi1mZWVkOmJlZm9yZXtjb250ZW50OlwiXFxlOWIzXCI7fVxuLmljb24tbWljMjpiZWZvcmV7Y29udGVudDpcIlxcZTljZVwiO31cbi5pY29uLW1pYy1vZmYyOmJlZm9yZXtjb250ZW50OlwiXFxlOWUwXCI7fVxuLmljb24tYm9vazpiZWZvcmV7Y29udGVudDpcIlxcZTllMVwiO31cbi5pY29uLWJvb2syOmJlZm9yZXtjb250ZW50OlwiXFxlOWU5XCI7fVxuLmljb24tYm9vay1wbGF5OmJlZm9yZXtjb250ZW50OlwiXFxlOWZkXCI7fVxuLmljb24tYm9vazM6YmVmb3Jle2NvbnRlbnQ6XCJcXGVhMDFcIjt9XG4uaWNvbi1ib29rbWFyazpiZWZvcmV7Y29udGVudDpcIlxcZWEwMlwiO31cbi5pY29uLWJvb2tzOmJlZm9yZXtjb250ZW50OlwiXFxlYTAzXCI7fVxuLmljb24tYXJjaGl2ZTpiZWZvcmV7Y29udGVudDpcIlxcZWEwNFwiO31cbi5pY29uLXJlYWRpbmc6YmVmb3Jle2NvbnRlbnQ6XCJcXGVhMDVcIjt9XG4uaWNvbi1saWJyYXJ5MjpiZWZvcmV7Y29udGVudDpcIlxcZWEwNlwiO31cbi5pY29uLWdyYWR1YXRpb24yOmJlZm9yZXtjb250ZW50OlwiXFxlYTA3XCI7fVxuLmljb24tZmlsZS10ZXh0OmJlZm9yZXtjb250ZW50OlwiXFxlYTA4XCI7fVxuLmljb24tcHJvZmlsZTpiZWZvcmV7Y29udGVudDpcIlxcZWEwOVwiO31cbi5pY29uLWZpbGUtZW1wdHk6YmVmb3Jle2NvbnRlbnQ6XCJcXGVhMGFcIjt9XG4uaWNvbi1maWxlLWVtcHR5MjpiZWZvcmV7Y29udGVudDpcIlxcZWEwYlwiO31cbi5pY29uLWZpbGVzLWVtcHR5OmJlZm9yZXtjb250ZW50OlwiXFxlYTBjXCI7fVxuLmljb24tZmlsZXMtZW1wdHkyOmJlZm9yZXtjb250ZW50OlwiXFxlYTBkXCI7fVxuLmljb24tZmlsZS1wbHVzOmJlZm9yZXtjb250ZW50OlwiXFxlYTBlXCI7fVxuLmljb24tZmlsZS1wbHVzMjpiZWZvcmV7Y29udGVudDpcIlxcZWEwZlwiO31cbi5pY29uLWZpbGUtbWludXM6YmVmb3Jle2NvbnRlbnQ6XCJcXGVhMTBcIjt9XG4uaWNvbi1maWxlLW1pbnVzMjpiZWZvcmV7Y29udGVudDpcIlxcZWExMVwiO31cbi5pY29uLWZpbGUtZG93bmxvYWQ6YmVmb3Jle2NvbnRlbnQ6XCJcXGVhMTJcIjt9XG4uaWNvbi1maWxlLWRvd25sb2FkMjpiZWZvcmV7Y29udGVudDpcIlxcZWExM1wiO31cbi5pY29uLWZpbGUtdXBsb2FkOmJlZm9yZXtjb250ZW50OlwiXFxlYTE0XCI7fVxuLmljb24tZmlsZS11cGxvYWQyOmJlZm9yZXtjb250ZW50OlwiXFxlYTE1XCI7fVxuLmljb24tZmlsZS1jaGVjazpiZWZvcmV7Y29udGVudDpcIlxcZWExNlwiO31cbi5pY29uLWZpbGUtY2hlY2syOmJlZm9yZXtjb250ZW50OlwiXFxlYTE3XCI7fVxuLmljb24tZmlsZS1leWU6YmVmb3Jle2NvbnRlbnQ6XCJcXGVhMThcIjt9XG4uaWNvbi1maWxlLWV5ZTI6YmVmb3Jle2NvbnRlbnQ6XCJcXGVhMTlcIjt9XG4uaWNvbi1maWxlLXRleHQyOmJlZm9yZXtjb250ZW50OlwiXFxlYTFhXCI7fVxuLmljb24tZmlsZS10ZXh0MzpiZWZvcmV7Y29udGVudDpcIlxcZWExYlwiO31cbi5pY29uLWZpbGUtcGljdHVyZTpiZWZvcmV7Y29udGVudDpcIlxcZWExY1wiO31cbi5pY29uLWZpbGUtcGljdHVyZTI6YmVmb3Jle2NvbnRlbnQ6XCJcXGVhMWRcIjt9XG4uaWNvbi1maWxlLW11c2ljOmJlZm9yZXtjb250ZW50OlwiXFxlYTFlXCI7fVxuLmljb24tZmlsZS1tdXNpYzI6YmVmb3Jle2NvbnRlbnQ6XCJcXGVhMWZcIjt9XG4uaWNvbi1maWxlLXBsYXk6YmVmb3Jle2NvbnRlbnQ6XCJcXGVhMjBcIjt9XG4uaWNvbi1maWxlLXBsYXkyOmJlZm9yZXtjb250ZW50OlwiXFxlYTIxXCI7fVxuLmljb24tZmlsZS12aWRlbzpiZWZvcmV7Y29udGVudDpcIlxcZWEyMlwiO31cbi5pY29uLWZpbGUtdmlkZW8yOmJlZm9yZXtjb250ZW50OlwiXFxlYTIzXCI7fVxuLmljb24tY29weTpiZWZvcmV7Y29udGVudDpcIlxcZWEyNFwiO31cbi5pY29uLWNvcHkyOmJlZm9yZXtjb250ZW50OlwiXFxlYTI1XCI7fVxuLmljb24tZmlsZS16aXA6YmVmb3Jle2NvbnRlbnQ6XCJcXGVhMjZcIjt9XG4uaWNvbi1maWxlLXppcDI6YmVmb3Jle2NvbnRlbnQ6XCJcXGVhMjdcIjt9XG4uaWNvbi1maWxlLXhtbDpiZWZvcmV7Y29udGVudDpcIlxcZWEyOFwiO31cbi5pY29uLWZpbGUteG1sMjpiZWZvcmV7Y29udGVudDpcIlxcZWEyOVwiO31cbi5pY29uLWZpbGUtY3NzOmJlZm9yZXtjb250ZW50OlwiXFxlYTJhXCI7fVxuLmljb24tZmlsZS1jc3MyOmJlZm9yZXtjb250ZW50OlwiXFxlYTJiXCI7fVxuLmljb24tZmlsZS1wcmVzZW50YXRpb246YmVmb3Jle2NvbnRlbnQ6XCJcXGVhMmNcIjt9XG4uaWNvbi1maWxlLXByZXNlbnRhdGlvbjI6YmVmb3Jle2NvbnRlbnQ6XCJcXGVhMmRcIjt9XG4uaWNvbi1maWxlLXN0YXRzOmJlZm9yZXtjb250ZW50OlwiXFxlYTJlXCI7fVxuLmljb24tZmlsZS1zdGF0czI6YmVmb3Jle2NvbnRlbnQ6XCJcXGVhMmZcIjt9XG4uaWNvbi1maWxlLWxvY2tlZDpiZWZvcmV7Y29udGVudDpcIlxcZWEzMFwiO31cbi5pY29uLWZpbGUtbG9ja2VkMjpiZWZvcmV7Y29udGVudDpcIlxcZWEzMVwiO31cbi5pY29uLWZpbGUtc3ByZWFkc2hlZXQ6YmVmb3Jle2NvbnRlbnQ6XCJcXGVhMzJcIjt9XG4uaWNvbi1maWxlLXNwcmVhZHNoZWV0MjpiZWZvcmV7Y29udGVudDpcIlxcZWEzM1wiO31cbi5pY29uLWNvcHkzOmJlZm9yZXtjb250ZW50OlwiXFxlYTM0XCI7fVxuLmljb24tY29weTQ6YmVmb3Jle2NvbnRlbnQ6XCJcXGVhMzVcIjt9XG4uaWNvbi1wYXN0ZTpiZWZvcmV7Y29udGVudDpcIlxcZWEzNlwiO31cbi5pY29uLXBhc3RlMjpiZWZvcmV7Y29udGVudDpcIlxcZWEzN1wiO31cbi5pY29uLXBhc3RlMzpiZWZvcmV7Y29udGVudDpcIlxcZWEzOFwiO31cbi5pY29uLXBhc3RlNDpiZWZvcmV7Y29udGVudDpcIlxcZWEzOVwiO31cbi5pY29uLXN0YWNrOmJlZm9yZXtjb250ZW50OlwiXFxlYTNhXCI7fVxuLmljb24tc3RhY2syOmJlZm9yZXtjb250ZW50OlwiXFxlYTNiXCI7fVxuLmljb24tc3RhY2szOmJlZm9yZXtjb250ZW50OlwiXFxlYTNjXCI7fVxuLmljb24tZm9sZGVyOmJlZm9yZXtjb250ZW50OlwiXFxlYTNkXCI7fVxuLmljb24tZm9sZGVyLXNlYXJjaDpiZWZvcmV7Y29udGVudDpcIlxcZWEzZVwiO31cbi5pY29uLWZvbGRlci1kb3dubG9hZDpiZWZvcmV7Y29udGVudDpcIlxcZWEzZlwiO31cbi5pY29uLWZvbGRlci11cGxvYWQ6YmVmb3Jle2NvbnRlbnQ6XCJcXGVhNDBcIjt9XG4uaWNvbi1mb2xkZXItcGx1czpiZWZvcmV7Y29udGVudDpcIlxcZWE0MVwiO31cbi5pY29uLWZvbGRlci1wbHVzMjpiZWZvcmV7Y29udGVudDpcIlxcZWE0MlwiO31cbi5pY29uLWZvbGRlci1taW51czpiZWZvcmV7Y29udGVudDpcIlxcZWE0M1wiO31cbi5pY29uLWZvbGRlci1taW51czI6YmVmb3Jle2NvbnRlbnQ6XCJcXGVhNDRcIjt9XG4uaWNvbi1mb2xkZXItY2hlY2s6YmVmb3Jle2NvbnRlbnQ6XCJcXGVhNDVcIjt9XG4uaWNvbi1mb2xkZXItaGVhcnQ6YmVmb3Jle2NvbnRlbnQ6XCJcXGVhNDZcIjt9XG4uaWNvbi1mb2xkZXItcmVtb3ZlOmJlZm9yZXtjb250ZW50OlwiXFxlYTQ3XCI7fVxuLmljb24tZm9sZGVyMjpiZWZvcmV7Y29udGVudDpcIlxcZWE0OFwiO31cbi5pY29uLWZvbGRlci1vcGVuOmJlZm9yZXtjb250ZW50OlwiXFxlYTQ5XCI7fVxuLmljb24tZm9sZGVyMzpiZWZvcmV7Y29udGVudDpcIlxcZWE0YVwiO31cbi5pY29uLWZvbGRlcjQ6YmVmb3Jle2NvbnRlbnQ6XCJcXGVhNGJcIjt9XG4uaWNvbi1mb2xkZXItcGx1czM6YmVmb3Jle2NvbnRlbnQ6XCJcXGVhNGNcIjt9XG4uaWNvbi1mb2xkZXItbWludXMzOmJlZm9yZXtjb250ZW50OlwiXFxlYTRkXCI7fVxuLmljb24tZm9sZGVyLXBsdXM0OmJlZm9yZXtjb250ZW50OlwiXFxlYTRlXCI7fVxuLmljb24tZm9sZGVyLW1pbnVzNDpiZWZvcmV7Y29udGVudDpcIlxcZWE0ZlwiO31cbi5pY29uLWZvbGRlci1kb3dubG9hZDI6YmVmb3Jle2NvbnRlbnQ6XCJcXGVhNTBcIjt9XG4uaWNvbi1mb2xkZXItdXBsb2FkMjpiZWZvcmV7Y29udGVudDpcIlxcZWE1MVwiO31cbi5pY29uLWZvbGRlci1kb3dubG9hZDM6YmVmb3Jle2NvbnRlbnQ6XCJcXGVhNTJcIjt9XG4uaWNvbi1mb2xkZXItdXBsb2FkMzpiZWZvcmV7Y29udGVudDpcIlxcZWE1M1wiO31cbi5pY29uLWZvbGRlcjU6YmVmb3Jle2NvbnRlbnQ6XCJcXGVhNTRcIjt9XG4uaWNvbi1mb2xkZXItb3BlbjI6YmVmb3Jle2NvbnRlbnQ6XCJcXGVhNTVcIjt9XG4uaWNvbi1mb2xkZXI2OmJlZm9yZXtjb250ZW50OlwiXFxlYTU2XCI7fVxuLmljb24tZm9sZGVyLW9wZW4zOmJlZm9yZXtjb250ZW50OlwiXFxlYTU3XCI7fVxuLmljb24tY2VydGlmaWNhdGU6YmVmb3Jle2NvbnRlbnQ6XCJcXGVhNThcIjt9XG4uaWNvbi1jYzpiZWZvcmV7Y29udGVudDpcIlxcZWE1OVwiO31cbi5pY29uLXByaWNlLXRhZzpiZWZvcmV7Y29udGVudDpcIlxcZWE1YVwiO31cbi5pY29uLXByaWNlLXRhZzI6YmVmb3Jle2NvbnRlbnQ6XCJcXGVhNWJcIjt9XG4uaWNvbi1wcmljZS10YWdzOmJlZm9yZXtjb250ZW50OlwiXFxlYTVjXCI7fVxuLmljb24tcHJpY2UtdGFnMzpiZWZvcmV7Y29udGVudDpcIlxcZWE1ZFwiO31cbi5pY29uLXByaWNlLXRhZ3MyOmJlZm9yZXtjb250ZW50OlwiXFxlYTVlXCI7fVxuLmljb24tYmFyY29kZTI6YmVmb3Jle2NvbnRlbnQ6XCJcXGVhNWZcIjt9XG4uaWNvbi1xcmNvZGU6YmVmb3Jle2NvbnRlbnQ6XCJcXGVhNjBcIjt9XG4uaWNvbi10aWNrZXQ6YmVmb3Jle2NvbnRlbnQ6XCJcXGVhNjFcIjt9XG4uaWNvbi10aGVhdGVyOmJlZm9yZXtjb250ZW50OlwiXFxlYTYyXCI7fVxuLmljb24tc3RvcmU6YmVmb3Jle2NvbnRlbnQ6XCJcXGVhNjNcIjt9XG4uaWNvbi1zdG9yZTI6YmVmb3Jle2NvbnRlbnQ6XCJcXGVhNjRcIjt9XG4uaWNvbi1jYXJ0OmJlZm9yZXtjb250ZW50OlwiXFxlYTY1XCI7fVxuLmljb24tY2FydDI6YmVmb3Jle2NvbnRlbnQ6XCJcXGVhNjZcIjt9XG4uaWNvbi1jYXJ0NDpiZWZvcmV7Y29udGVudDpcIlxcZWE2N1wiO31cbi5pY29uLWNhcnQ1OmJlZm9yZXtjb250ZW50OlwiXFxlYTY4XCI7fVxuLmljb24tY2FydC1hZGQ6YmVmb3Jle2NvbnRlbnQ6XCJcXGVhNjlcIjt9XG4uaWNvbi1jYXJ0LWFkZDI6YmVmb3Jle2NvbnRlbnQ6XCJcXGVhNmFcIjt9XG4uaWNvbi1jYXJ0LXJlbW92ZTpiZWZvcmV7Y29udGVudDpcIlxcZWE2YlwiO31cbi5pY29uLWJhc2tldDpiZWZvcmV7Y29udGVudDpcIlxcZWE2Y1wiO31cbi5pY29uLWJhZzpiZWZvcmV7Y29udGVudDpcIlxcZWE2ZFwiO31cbi5pY29uLXBlcmNlbnQ6YmVmb3Jle2NvbnRlbnQ6XCJcXGVhNmZcIjt9XG4uaWNvbi1jb2luczpiZWZvcmV7Y29udGVudDpcIlxcZWE3MFwiO31cbi5pY29uLWNvaW4tZG9sbGFyOmJlZm9yZXtjb250ZW50OlwiXFxlYTcxXCI7fVxuLmljb24tY29pbi1ldXJvOmJlZm9yZXtjb250ZW50OlwiXFxlYTcyXCI7fVxuLmljb24tY29pbi1wb3VuZDpiZWZvcmV7Y29udGVudDpcIlxcZWE3M1wiO31cbi5pY29uLWNvaW4teWVuOmJlZm9yZXtjb250ZW50OlwiXFxlYTc0XCI7fVxuLmljb24tcGlnZ3ktYmFuazpiZWZvcmV7Y29udGVudDpcIlxcZWE3NVwiO31cbi5pY29uLXdhbGxldDpiZWZvcmV7Y29udGVudDpcIlxcZWE3NlwiO31cbi5pY29uLWNhc2g6YmVmb3Jle2NvbnRlbnQ6XCJcXGVhNzdcIjt9XG4uaWNvbi1jYXNoMjpiZWZvcmV7Y29udGVudDpcIlxcZWE3OFwiO31cbi5pY29uLWNhc2gzOmJlZm9yZXtjb250ZW50OlwiXFxlYTc5XCI7fVxuLmljb24tY2FzaDQ6YmVmb3Jle2NvbnRlbnQ6XCJcXGVhN2FcIjt9XG4uaWNvbi1jcmVkaXQtY2FyZDpiZWZvcmV7Y29udGVudDpcIlxcZWE2ZVwiO31cbi5pY29uLWNyZWRpdC1jYXJkMjpiZWZvcmV7Y29udGVudDpcIlxcZWE3YlwiO31cbi5pY29uLWNhbGN1bGF0b3I0OmJlZm9yZXtjb250ZW50OlwiXFxlYTdjXCI7fVxuLmljb24tY2FsY3VsYXRvcjI6YmVmb3Jle2NvbnRlbnQ6XCJcXGVhN2RcIjt9XG4uaWNvbi1jYWxjdWxhdG9yMzpiZWZvcmV7Y29udGVudDpcIlxcZWE3ZVwiO31cbi5pY29uLWNoaXA6YmVmb3Jle2NvbnRlbnQ6XCJcXGVhN2ZcIjt9XG4uaWNvbi1saWZlYnVveTpiZWZvcmV7Y29udGVudDpcIlxcZWE4MFwiO31cbi5pY29uLXBob25lOmJlZm9yZXtjb250ZW50OlwiXFxlYTgxXCI7fVxuLmljb24tcGhvbmUyOmJlZm9yZXtjb250ZW50OlwiXFxlYTgyXCI7fVxuLmljb24tcGhvbmUtc2xhc2g6YmVmb3Jle2NvbnRlbnQ6XCJcXGVhODNcIjt9XG4uaWNvbi1waG9uZS13YXZlOmJlZm9yZXtjb250ZW50OlwiXFxlYTg0XCI7fVxuLmljb24tcGhvbmUtcGx1czpiZWZvcmV7Y29udGVudDpcIlxcZWE4NVwiO31cbi5pY29uLXBob25lLW1pbnVzOmJlZm9yZXtjb250ZW50OlwiXFxlYTg2XCI7fVxuLmljb24tcGhvbmUtcGx1czI6YmVmb3Jle2NvbnRlbnQ6XCJcXGVhODdcIjt9XG4uaWNvbi1waG9uZS1taW51czI6YmVmb3Jle2NvbnRlbnQ6XCJcXGVhODhcIjt9XG4uaWNvbi1waG9uZS1pbmNvbWluZzpiZWZvcmV7Y29udGVudDpcIlxcZWE4OVwiO31cbi5pY29uLXBob25lLW91dGdvaW5nOmJlZm9yZXtjb250ZW50OlwiXFxlYThhXCI7fVxuLmljb24tcGhvbmUtaGFuZy11cDpiZWZvcmV7Y29udGVudDpcIlxcZWE4ZVwiO31cbi5pY29uLWFkZHJlc3MtYm9vazpiZWZvcmV7Y29udGVudDpcIlxcZWE5MFwiO31cbi5pY29uLWFkZHJlc3MtYm9vazI6YmVmb3Jle2NvbnRlbnQ6XCJcXGVhOTFcIjt9XG4uaWNvbi1hZGRyZXNzLWJvb2szOmJlZm9yZXtjb250ZW50OlwiXFxlYTkyXCI7fVxuLmljb24tbm90ZWJvb2s6YmVmb3Jle2NvbnRlbnQ6XCJcXGVhOTNcIjt9XG4uaWNvbi1lbnZlbG9wOmJlZm9yZXtjb250ZW50OlwiXFxlYTk0XCI7fVxuLmljb24tZW52ZWxvcDI6YmVmb3Jle2NvbnRlbnQ6XCJcXGVhOTVcIjt9XG4uaWNvbi1lbnZlbG9wMzpiZWZvcmV7Y29udGVudDpcIlxcZWE5NlwiO31cbi5pY29uLWVudmVsb3A0OmJlZm9yZXtjb250ZW50OlwiXFxlYTk3XCI7fVxuLmljb24tZW52ZWxvcDU6YmVmb3Jle2NvbnRlbnQ6XCJcXGVhOThcIjt9XG4uaWNvbi1tYWlsYm94OmJlZm9yZXtjb250ZW50OlwiXFxlYTk5XCI7fVxuLmljb24tcHVzaHBpbjpiZWZvcmV7Y29udGVudDpcIlxcZWE5YVwiO31cbi5pY29uLWxvY2F0aW9uMzpiZWZvcmV7Y29udGVudDpcIlxcZWE5ZFwiO31cbi5pY29uLWxvY2F0aW9uNDpiZWZvcmV7Y29udGVudDpcIlxcZWE5ZVwiO31cbi5pY29uLWNvbXBhc3M0OmJlZm9yZXtjb250ZW50OlwiXFxlYTlmXCI7fVxuLmljb24tbWFwOmJlZm9yZXtjb250ZW50OlwiXFxlYWEwXCI7fVxuLmljb24tbWFwNDpiZWZvcmV7Y29udGVudDpcIlxcZWFhMVwiO31cbi5pY29uLW1hcDU6YmVmb3Jle2NvbnRlbnQ6XCJcXGVhYTJcIjt9XG4uaWNvbi1kaXJlY3Rpb246YmVmb3Jle2NvbnRlbnQ6XCJcXGVhYTNcIjt9XG4uaWNvbi1yZXNldDpiZWZvcmV7Y29udGVudDpcIlxcZWFhNFwiO31cbi5pY29uLWhpc3Rvcnk6YmVmb3Jle2NvbnRlbnQ6XCJcXGVhYTVcIjt9XG4uaWNvbi13YXRjaDpiZWZvcmV7Y29udGVudDpcIlxcZWFhNlwiO31cbi5pY29uLXdhdGNoMjpiZWZvcmV7Y29udGVudDpcIlxcZWFhN1wiO31cbi5pY29uLWFsYXJtOmJlZm9yZXtjb250ZW50OlwiXFxlYWE4XCI7fVxuLmljb24tYWxhcm0tYWRkOmJlZm9yZXtjb250ZW50OlwiXFxlYWE5XCI7fVxuLmljb24tYWxhcm0tY2hlY2s6YmVmb3Jle2NvbnRlbnQ6XCJcXGVhYWFcIjt9XG4uaWNvbi1hbGFybS1jYW5jZWw6YmVmb3Jle2NvbnRlbnQ6XCJcXGVhYWJcIjt9XG4uaWNvbi1iZWxsMjpiZWZvcmV7Y29udGVudDpcIlxcZWFhY1wiO31cbi5pY29uLWJlbGwzOmJlZm9yZXtjb250ZW50OlwiXFxlYWFkXCI7fVxuLmljb24tYmVsbC1wbHVzOmJlZm9yZXtjb250ZW50OlwiXFxlYWFlXCI7fVxuLmljb24tYmVsbC1taW51czpiZWZvcmV7Y29udGVudDpcIlxcZWFhZlwiO31cbi5pY29uLWJlbGwtY2hlY2s6YmVmb3Jle2NvbnRlbnQ6XCJcXGVhYjBcIjt9XG4uaWNvbi1iZWxsLWNyb3NzOmJlZm9yZXtjb250ZW50OlwiXFxlYWIxXCI7fVxuLmljb24tY2FsZW5kYXI6YmVmb3Jle2NvbnRlbnQ6XCJcXGVhYjJcIjt9XG4uaWNvbi1jYWxlbmRhcjI6YmVmb3Jle2NvbnRlbnQ6XCJcXGVhYjNcIjt9XG4uaWNvbi1jYWxlbmRhcjM6YmVmb3Jle2NvbnRlbnQ6XCJcXGVhYjRcIjt9XG4uaWNvbi1jYWxlbmRhcjUyOmJlZm9yZXtjb250ZW50OlwiXFxlYWI2XCI7fVxuLmljb24tcHJpbnRlcjpiZWZvcmV7Y29udGVudDpcIlxcZWFiN1wiO31cbi5pY29uLXByaW50ZXIyOmJlZm9yZXtjb250ZW50OlwiXFxlYWI4XCI7fVxuLmljb24tcHJpbnRlcjQ6YmVmb3Jle2NvbnRlbnQ6XCJcXGVhYjlcIjt9XG4uaWNvbi1zaHJlZGRlcjpiZWZvcmV7Y29udGVudDpcIlxcZWFiYVwiO31cbi5pY29uLW1vdXNlOmJlZm9yZXtjb250ZW50OlwiXFxlYWJiXCI7fVxuLmljb24tbW91c2UtbGVmdDpiZWZvcmV7Y29udGVudDpcIlxcZWFiY1wiO31cbi5pY29uLW1vdXNlLXJpZ2h0OmJlZm9yZXtjb250ZW50OlwiXFxlYWJkXCI7fVxuLmljb24ta2V5Ym9hcmQ6YmVmb3Jle2NvbnRlbnQ6XCJcXGVhYmVcIjt9XG4uaWNvbi10eXBld3JpdGVyOmJlZm9yZXtjb250ZW50OlwiXFxlYWJmXCI7fVxuLmljb24tZGlzcGxheTpiZWZvcmV7Y29udGVudDpcIlxcZWFjMFwiO31cbi5pY29uLWRpc3BsYXk0OmJlZm9yZXtjb250ZW50OlwiXFxlYWMxXCI7fVxuLmljb24tbGFwdG9wOmJlZm9yZXtjb250ZW50OlwiXFxlYWMyXCI7fVxuLmljb24tbW9iaWxlOmJlZm9yZXtjb250ZW50OlwiXFxlYWMzXCI7fVxuLmljb24tbW9iaWxlMjpiZWZvcmV7Y29udGVudDpcIlxcZWFjNFwiO31cbi5pY29uLXRhYmxldDpiZWZvcmV7Y29udGVudDpcIlxcZWFjNVwiO31cbi5pY29uLW1vYmlsZTM6YmVmb3Jle2NvbnRlbnQ6XCJcXGVhYzZcIjt9XG4uaWNvbi10djpiZWZvcmV7Y29udGVudDpcIlxcZWFjN1wiO31cbi5pY29uLXJhZGlvOmJlZm9yZXtjb250ZW50OlwiXFxlYWM4XCI7fVxuLmljb24tY2FiaW5ldDpiZWZvcmV7Y29udGVudDpcIlxcZWFjOVwiO31cbi5pY29uLWRyYXdlcjpiZWZvcmV7Y29udGVudDpcIlxcZWFjYVwiO31cbi5pY29uLWRyYXdlcjI6YmVmb3Jle2NvbnRlbnQ6XCJcXGVhY2JcIjt9XG4uaWNvbi1kcmF3ZXItb3V0OmJlZm9yZXtjb250ZW50OlwiXFxlYWNjXCI7fVxuLmljb24tZHJhd2VyLWluOmJlZm9yZXtjb250ZW50OlwiXFxlYWNkXCI7fVxuLmljb24tZHJhd2VyMzpiZWZvcmV7Y29udGVudDpcIlxcZWFjZVwiO31cbi5pY29uLWJveDpiZWZvcmV7Y29udGVudDpcIlxcZWFjZlwiO31cbi5pY29uLWJveC1hZGQ6YmVmb3Jle2NvbnRlbnQ6XCJcXGVhZDBcIjt9XG4uaWNvbi1ib3gtcmVtb3ZlOmJlZm9yZXtjb250ZW50OlwiXFxlYWQxXCI7fVxuLmljb24tZG93bmxvYWQ6YmVmb3Jle2NvbnRlbnQ6XCJcXGVhZDJcIjt9XG4uaWNvbi11cGxvYWQ6YmVmb3Jle2NvbnRlbnQ6XCJcXGVhZDNcIjt9XG4uaWNvbi1mbG9wcHktZGlzazpiZWZvcmV7Y29udGVudDpcIlxcZWFkNFwiO31cbi5pY29uLWZsb3BweS1kaXNrczpiZWZvcmV7Y29udGVudDpcIlxcZWFkNVwiO31cbi5pY29uLXVzYi1zdGljazpiZWZvcmV7Y29udGVudDpcIlxcZWFkNlwiO31cbi5pY29uLWRyaXZlOmJlZm9yZXtjb250ZW50OlwiXFxlYWQ3XCI7fVxuLmljb24tc2VydmVyOmJlZm9yZXtjb250ZW50OlwiXFxlYWQ4XCI7fVxuLmljb24tZGF0YWJhc2U6YmVmb3Jle2NvbnRlbnQ6XCJcXGVhZDlcIjt9XG4uaWNvbi1kYXRhYmFzZTI6YmVmb3Jle2NvbnRlbnQ6XCJcXGVhZGFcIjt9XG4uaWNvbi1kYXRhYmFzZTQ6YmVmb3Jle2NvbnRlbnQ6XCJcXGVhZGJcIjt9XG4uaWNvbi1kYXRhYmFzZS1tZW51OmJlZm9yZXtjb250ZW50OlwiXFxlYWRjXCI7fVxuLmljb24tZGF0YWJhc2UtYWRkOmJlZm9yZXtjb250ZW50OlwiXFxlYWRkXCI7fVxuLmljb24tZGF0YWJhc2UtcmVtb3ZlOmJlZm9yZXtjb250ZW50OlwiXFxlYWRlXCI7fVxuLmljb24tZGF0YWJhc2UtaW5zZXJ0OmJlZm9yZXtjb250ZW50OlwiXFxlYWRmXCI7fVxuLmljb24tZGF0YWJhc2UtZXhwb3J0OmJlZm9yZXtjb250ZW50OlwiXFxlYWUwXCI7fVxuLmljb24tZGF0YWJhc2UtdXBsb2FkOmJlZm9yZXtjb250ZW50OlwiXFxlYWUxXCI7fVxuLmljb24tZGF0YWJhc2UtcmVmcmVzaDpiZWZvcmV7Y29udGVudDpcIlxcZWFlMlwiO31cbi5pY29uLWRhdGFiYXNlLWRpZmY6YmVmb3Jle2NvbnRlbnQ6XCJcXGVhZTNcIjt9XG4uaWNvbi1kYXRhYmFzZS1lZGl0MjpiZWZvcmV7Y29udGVudDpcIlxcZWFlNVwiO31cbi5pY29uLWRhdGFiYXNlLWNoZWNrOmJlZm9yZXtjb250ZW50OlwiXFxlYWU2XCI7fVxuLmljb24tZGF0YWJhc2UtYXJyb3c6YmVmb3Jle2NvbnRlbnQ6XCJcXGVhZTdcIjt9XG4uaWNvbi1kYXRhYmFzZS10aW1lMjpiZWZvcmV7Y29udGVudDpcIlxcZWFlOVwiO31cbi5pY29uLXVuZG86YmVmb3Jle2NvbnRlbnQ6XCJcXGVhZWFcIjt9XG4uaWNvbi1yZWRvOmJlZm9yZXtjb250ZW50OlwiXFxlYWViXCI7fVxuLmljb24tcm90YXRlLWNjdzpiZWZvcmV7Y29udGVudDpcIlxcZWFlY1wiO31cbi5pY29uLXJvdGF0ZS1jdzpiZWZvcmV7Y29udGVudDpcIlxcZWFlZFwiO31cbi5pY29uLXJvdGF0ZS1jY3cyOmJlZm9yZXtjb250ZW50OlwiXFxlYWVlXCI7fVxuLmljb24tcm90YXRlLWN3MjpiZWZvcmV7Y29udGVudDpcIlxcZWFlZlwiO31cbi5pY29uLXJvdGF0ZS1jY3czOmJlZm9yZXtjb250ZW50OlwiXFxlYWYwXCI7fVxuLmljb24tcm90YXRlLWN3MzpiZWZvcmV7Y29udGVudDpcIlxcZWFmMVwiO31cbi5pY29uLWZsaXAtdmVydGljYWwyOmJlZm9yZXtjb250ZW50OlwiXFxlYWYyXCI7fVxuLmljb24tZmxpcC1ob3Jpem9udGFsMjpiZWZvcmV7Y29udGVudDpcIlxcZWFmM1wiO31cbi5pY29uLWZsaXAtdmVydGljYWwzOmJlZm9yZXtjb250ZW50OlwiXFxlYWY0XCI7fVxuLmljb24tZmxpcC12ZXJ0aWNhbDQ6YmVmb3Jle2NvbnRlbnQ6XCJcXGVhZjVcIjt9XG4uaWNvbi1hbmdsZTpiZWZvcmV7Y29udGVudDpcIlxcZWFmNlwiO31cbi5pY29uLXNoZWFyOmJlZm9yZXtjb250ZW50OlwiXFxlYWY3XCI7fVxuLmljb24tYWxpZ24tbGVmdDpiZWZvcmV7Y29udGVudDpcIlxcZWFmY1wiO31cbi5pY29uLWFsaWduLWNlbnRlci1ob3Jpem9udGFsOmJlZm9yZXtjb250ZW50OlwiXFxlYWZkXCI7fVxuLmljb24tYWxpZ24tcmlnaHQ6YmVmb3Jle2NvbnRlbnQ6XCJcXGVhZmVcIjt9XG4uaWNvbi1hbGlnbi10b3A6YmVmb3Jle2NvbnRlbnQ6XCJcXGVhZmZcIjt9XG4uaWNvbi1hbGlnbi1jZW50ZXItdmVydGljYWw6YmVmb3Jle2NvbnRlbnQ6XCJcXGViMDBcIjt9XG4uaWNvbi1hbGlnbi1ib3R0b206YmVmb3Jle2NvbnRlbnQ6XCJcXGViMDFcIjt9XG4uaWNvbi11bmRvMjpiZWZvcmV7Y29udGVudDpcIlxcZWIwMlwiO31cbi5pY29uLXJlZG8yOmJlZm9yZXtjb250ZW50OlwiXFxlYjAzXCI7fVxuLmljb24tZm9yd2FyZDpiZWZvcmV7Y29udGVudDpcIlxcZWIwNFwiO31cbi5pY29uLXJlcGx5OmJlZm9yZXtjb250ZW50OlwiXFxlYjA1XCI7fVxuLmljb24tcmVwbHktYWxsOmJlZm9yZXtjb250ZW50OlwiXFxlYjA2XCI7fVxuLmljb24tYnViYmxlOmJlZm9yZXtjb250ZW50OlwiXFxlYjA3XCI7fVxuLmljb24tYnViYmxlczpiZWZvcmV7Y29udGVudDpcIlxcZWIwOFwiO31cbi5pY29uLWJ1YmJsZXMyOmJlZm9yZXtjb250ZW50OlwiXFxlYjA5XCI7fVxuLmljb24tYnViYmxlMjpiZWZvcmV7Y29udGVudDpcIlxcZWIwYVwiO31cbi5pY29uLWJ1YmJsZXMzOmJlZm9yZXtjb250ZW50OlwiXFxlYjBiXCI7fVxuLmljb24tYnViYmxlczQ6YmVmb3Jle2NvbnRlbnQ6XCJcXGViMGNcIjt9XG4uaWNvbi1idWJibGUtbm90aWZpY2F0aW9uOmJlZm9yZXtjb250ZW50OlwiXFxlYjBkXCI7fVxuLmljb24tYnViYmxlczU6YmVmb3Jle2NvbnRlbnQ6XCJcXGViMGVcIjt9XG4uaWNvbi1idWJibGVzNjpiZWZvcmV7Y29udGVudDpcIlxcZWIwZlwiO31cbi5pY29uLWJ1YmJsZTY6YmVmb3Jle2NvbnRlbnQ6XCJcXGViMTBcIjt9XG4uaWNvbi1idWJibGVzNzpiZWZvcmV7Y29udGVudDpcIlxcZWIxMVwiO31cbi5pY29uLWJ1YmJsZTc6YmVmb3Jle2NvbnRlbnQ6XCJcXGViMTJcIjt9XG4uaWNvbi1idWJibGVzODpiZWZvcmV7Y29udGVudDpcIlxcZWIxM1wiO31cbi5pY29uLWJ1YmJsZTg6YmVmb3Jle2NvbnRlbnQ6XCJcXGViMTRcIjt9XG4uaWNvbi1idWJibGUtZG90czM6YmVmb3Jle2NvbnRlbnQ6XCJcXGViMTVcIjt9XG4uaWNvbi1idWJibGUtbGluZXMzOmJlZm9yZXtjb250ZW50OlwiXFxlYjE2XCI7fVxuLmljb24tYnViYmxlOTpiZWZvcmV7Y29udGVudDpcIlxcZWIxN1wiO31cbi5pY29uLWJ1YmJsZS1kb3RzNDpiZWZvcmV7Y29udGVudDpcIlxcZWIxOFwiO31cbi5pY29uLWJ1YmJsZS1saW5lczQ6YmVmb3Jle2NvbnRlbnQ6XCJcXGViMTlcIjt9XG4uaWNvbi1idWJibGVzOTpiZWZvcmV7Y29udGVudDpcIlxcZWIxYVwiO31cbi5pY29uLWJ1YmJsZXMxMDpiZWZvcmV7Y29udGVudDpcIlxcZWIxYlwiO31cbi5pY29uLXVzZXI6YmVmb3Jle2NvbnRlbnQ6XCJcXGViMzNcIjt9XG4uaWNvbi11c2VyczpiZWZvcmV7Y29udGVudDpcIlxcZWIzNFwiO31cbi5pY29uLXVzZXItcGx1czpiZWZvcmV7Y29udGVudDpcIlxcZWIzNVwiO31cbi5pY29uLXVzZXItbWludXM6YmVmb3Jle2NvbnRlbnQ6XCJcXGViMzZcIjt9XG4uaWNvbi11c2VyLWNhbmNlbDpiZWZvcmV7Y29udGVudDpcIlxcZWIzN1wiO31cbi5pY29uLXVzZXItYmxvY2s6YmVmb3Jle2NvbnRlbnQ6XCJcXGViMzhcIjt9XG4uaWNvbi11c2VyLWxvY2s6YmVmb3Jle2NvbnRlbnQ6XCJcXGViMzlcIjt9XG4uaWNvbi11c2VyLWNoZWNrOmJlZm9yZXtjb250ZW50OlwiXFxlYjNhXCI7fVxuLmljb24tdXNlcnMyOmJlZm9yZXtjb250ZW50OlwiXFxlYjNiXCI7fVxuLmljb24tdXNlcnM0OmJlZm9yZXtjb250ZW50OlwiXFxlYjQ0XCI7fVxuLmljb24tdXNlci10aWU6YmVmb3Jle2NvbnRlbnQ6XCJcXGViNDVcIjt9XG4uaWNvbi1jb2xsYWJvcmF0aW9uOmJlZm9yZXtjb250ZW50OlwiXFxlYjQ2XCI7fVxuLmljb24tdmNhcmQ6YmVmb3Jle2NvbnRlbnQ6XCJcXGViNDdcIjt9XG4uaWNvbi1oYXQ6YmVmb3Jle2NvbnRlbnQ6XCJcXGViYjhcIjt9XG4uaWNvbi1ib3d0aWU6YmVmb3Jle2NvbnRlbnQ6XCJcXGViYjlcIjt9XG4uaWNvbi1xdW90ZXMtbGVmdDpiZWZvcmV7Y29udGVudDpcIlxcZWI0OVwiO31cbi5pY29uLXF1b3Rlcy1yaWdodDpiZWZvcmV7Y29udGVudDpcIlxcZWI0YVwiO31cbi5pY29uLXF1b3Rlcy1sZWZ0MjpiZWZvcmV7Y29udGVudDpcIlxcZWI0YlwiO31cbi5pY29uLXF1b3Rlcy1yaWdodDI6YmVmb3Jle2NvbnRlbnQ6XCJcXGViNGNcIjt9XG4uaWNvbi1ob3VyLWdsYXNzOmJlZm9yZXtjb250ZW50OlwiXFxlYjRkXCI7fVxuLmljb24taG91ci1nbGFzczI6YmVmb3Jle2NvbnRlbnQ6XCJcXGViNGVcIjt9XG4uaWNvbi1ob3VyLWdsYXNzMzpiZWZvcmV7Y29udGVudDpcIlxcZWI0ZlwiO31cbi5pY29uLXNwaW5uZXI6YmVmb3Jle2NvbnRlbnQ6XCJcXGViNTBcIjt9XG4uaWNvbi1zcGlubmVyMjpiZWZvcmV7Y29udGVudDpcIlxcZWI1MVwiO31cbi5pY29uLXNwaW5uZXIzOmJlZm9yZXtjb250ZW50OlwiXFxlYjUyXCI7fVxuLmljb24tc3Bpbm5lcjQ6YmVmb3Jle2NvbnRlbnQ6XCJcXGViNTNcIjt9XG4uaWNvbi1zcGlubmVyNjpiZWZvcmV7Y29udGVudDpcIlxcZWI1NFwiO31cbi5pY29uLXNwaW5uZXI5OmJlZm9yZXtjb250ZW50OlwiXFxlYjU1XCI7fVxuLmljb24tc3Bpbm5lcjEwOmJlZm9yZXtjb250ZW50OlwiXFxlYjU2XCI7fVxuLmljb24tc3Bpbm5lcjExOmJlZm9yZXtjb250ZW50OlwiXFxlYjU3XCI7fVxuLmljb24tbWljcm9zY29wZTpiZWZvcmV7Y29udGVudDpcIlxcZWI1OFwiO31cbi5pY29uLWVubGFyZ2U6YmVmb3Jle2NvbnRlbnQ6XCJcXGViNTlcIjt9XG4uaWNvbi1zaHJpbms6YmVmb3Jle2NvbnRlbnQ6XCJcXGViNWFcIjt9XG4uaWNvbi1lbmxhcmdlMzpiZWZvcmV7Y29udGVudDpcIlxcZWI1YlwiO31cbi5pY29uLXNocmluazM6YmVmb3Jle2NvbnRlbnQ6XCJcXGViNWNcIjt9XG4uaWNvbi1lbmxhcmdlNTpiZWZvcmV7Y29udGVudDpcIlxcZWI1ZFwiO31cbi5pY29uLXNocmluazU6YmVmb3Jle2NvbnRlbnQ6XCJcXGViNWVcIjt9XG4uaWNvbi1lbmxhcmdlNjpiZWZvcmV7Y29udGVudDpcIlxcZWI1ZlwiO31cbi5pY29uLXNocmluazY6YmVmb3Jle2NvbnRlbnQ6XCJcXGViNjBcIjt9XG4uaWNvbi1lbmxhcmdlNzpiZWZvcmV7Y29udGVudDpcIlxcZWI2MVwiO31cbi5pY29uLXNocmluazc6YmVmb3Jle2NvbnRlbnQ6XCJcXGViNjJcIjt9XG4uaWNvbi1rZXk6YmVmb3Jle2NvbnRlbnQ6XCJcXGViNjNcIjt9XG4uaWNvbi1sb2NrOmJlZm9yZXtjb250ZW50OlwiXFxlYjY1XCI7fVxuLmljb24tbG9jazI6YmVmb3Jle2NvbnRlbnQ6XCJcXGViNjZcIjt9XG4uaWNvbi1sb2NrNDpiZWZvcmV7Y29udGVudDpcIlxcZWI2N1wiO31cbi5pY29uLXVubG9ja2VkOmJlZm9yZXtjb250ZW50OlwiXFxlYjY4XCI7fVxuLmljb24tbG9jazU6YmVmb3Jle2NvbnRlbnQ6XCJcXGViNjlcIjt9XG4uaWNvbi11bmxvY2tlZDI6YmVmb3Jle2NvbnRlbnQ6XCJcXGViNmFcIjt9XG4uaWNvbi1zYWZlOmJlZm9yZXtjb250ZW50OlwiXFxlYjZiXCI7fVxuLmljb24td3JlbmNoOmJlZm9yZXtjb250ZW50OlwiXFxlYjZjXCI7fVxuLmljb24td3JlbmNoMjpiZWZvcmV7Y29udGVudDpcIlxcZWI2ZFwiO31cbi5pY29uLXdyZW5jaDM6YmVmb3Jle2NvbnRlbnQ6XCJcXGViNmVcIjt9XG4uaWNvbi1lcXVhbGl6ZXI6YmVmb3Jle2NvbnRlbnQ6XCJcXGViNmZcIjt9XG4uaWNvbi1lcXVhbGl6ZXIyOmJlZm9yZXtjb250ZW50OlwiXFxlYjcwXCI7fVxuLmljb24tZXF1YWxpemVyMzpiZWZvcmV7Y29udGVudDpcIlxcZWI3MVwiO31cbi5pY29uLWVxdWFsaXplcjQ6YmVmb3Jle2NvbnRlbnQ6XCJcXGViNzJcIjt9XG4uaWNvbi1jb2c6YmVmb3Jle2NvbnRlbnQ6XCJcXGViNzNcIjt9XG4uaWNvbi1jb2dzOmJlZm9yZXtjb250ZW50OlwiXFxlYjc0XCI7fVxuLmljb24tY29nMjpiZWZvcmV7Y29udGVudDpcIlxcZWI3NVwiO31cbi5pY29uLWNvZzM6YmVmb3Jle2NvbnRlbnQ6XCJcXGViNzZcIjt9XG4uaWNvbi1jb2c0OmJlZm9yZXtjb250ZW50OlwiXFxlYjc3XCI7fVxuLmljb24tY29nNTI6YmVmb3Jle2NvbnRlbnQ6XCJcXGViNzhcIjt9XG4uaWNvbi1jb2c2OmJlZm9yZXtjb250ZW50OlwiXFxlYjc5XCI7fVxuLmljb24tY29nNzpiZWZvcmV7Y29udGVudDpcIlxcZWI3YVwiO31cbi5pY29uLWhhbW1lcjpiZWZvcmV7Y29udGVudDpcIlxcZWI3Y1wiO31cbi5pY29uLWhhbW1lci13cmVuY2g6YmVmb3Jle2NvbnRlbnQ6XCJcXGViN2RcIjt9XG4uaWNvbi1tYWdpYy13YW5kOmJlZm9yZXtjb250ZW50OlwiXFxlYjdlXCI7fVxuLmljb24tbWFnaWMtd2FuZDI6YmVmb3Jle2NvbnRlbnQ6XCJcXGViN2ZcIjt9XG4uaWNvbi1wdWxzZTI6YmVmb3Jle2NvbnRlbnQ6XCJcXGViODBcIjt9XG4uaWNvbi1haWQta2l0OmJlZm9yZXtjb250ZW50OlwiXFxlYjgxXCI7fVxuLmljb24tYnVnMjpiZWZvcmV7Y29udGVudDpcIlxcZWI4M1wiO31cbi5pY29uLWNvbnN0cnVjdGlvbjpiZWZvcmV7Y29udGVudDpcIlxcZWI4NVwiO31cbi5pY29uLXRyYWZmaWMtY29uZTpiZWZvcmV7Y29udGVudDpcIlxcZWI4NlwiO31cbi5pY29uLXRyYWZmaWMtbGlnaHRzOmJlZm9yZXtjb250ZW50OlwiXFxlYjg3XCI7fVxuLmljb24tcGllLWNoYXJ0OmJlZm9yZXtjb250ZW50OlwiXFxlYjg4XCI7fVxuLmljb24tcGllLWNoYXJ0MjpiZWZvcmV7Y29udGVudDpcIlxcZWI4OVwiO31cbi5pY29uLXBpZS1jaGFydDM6YmVmb3Jle2NvbnRlbnQ6XCJcXGViOGFcIjt9XG4uaWNvbi1waWUtY2hhcnQ0OmJlZm9yZXtjb250ZW50OlwiXFxlYjhiXCI7fVxuLmljb24tcGllLWNoYXJ0NTpiZWZvcmV7Y29udGVudDpcIlxcZWI4Y1wiO31cbi5pY29uLXBpZS1jaGFydDY6YmVmb3Jle2NvbnRlbnQ6XCJcXGViOGRcIjt9XG4uaWNvbi1waWUtY2hhcnQ3OmJlZm9yZXtjb250ZW50OlwiXFxlYjhlXCI7fVxuLmljb24tc3RhdHMtZG90czpiZWZvcmV7Y29udGVudDpcIlxcZWI4ZlwiO31cbi5pY29uLXN0YXRzLWJhcnM6YmVmb3Jle2NvbnRlbnQ6XCJcXGViOTBcIjt9XG4uaWNvbi1waWUtY2hhcnQ4OmJlZm9yZXtjb250ZW50OlwiXFxlYjkxXCI7fVxuLmljb24tc3RhdHMtYmFyczI6YmVmb3Jle2NvbnRlbnQ6XCJcXGViOTJcIjt9XG4uaWNvbi1zdGF0cy1iYXJzMzpiZWZvcmV7Y29udGVudDpcIlxcZWI5M1wiO31cbi5pY29uLXN0YXRzLWJhcnM0OmJlZm9yZXtjb250ZW50OlwiXFxlYjk0XCI7fVxuLmljb24tY2hhcnQ6YmVmb3Jle2NvbnRlbnQ6XCJcXGViOTdcIjt9XG4uaWNvbi1zdGF0cy1ncm93dGg6YmVmb3Jle2NvbnRlbnQ6XCJcXGViOThcIjt9XG4uaWNvbi1zdGF0cy1kZWNsaW5lOmJlZm9yZXtjb250ZW50OlwiXFxlYjk5XCI7fVxuLmljb24tc3RhdHMtZ3Jvd3RoMjpiZWZvcmV7Y29udGVudDpcIlxcZWI5YVwiO31cbi5pY29uLXN0YXRzLWRlY2xpbmUyOmJlZm9yZXtjb250ZW50OlwiXFxlYjliXCI7fVxuLmljb24tc3RhaXJzLXVwOmJlZm9yZXtjb250ZW50OlwiXFxlYjljXCI7fVxuLmljb24tc3RhaXJzLWRvd246YmVmb3Jle2NvbnRlbnQ6XCJcXGViOWRcIjt9XG4uaWNvbi1zdGFpcnM6YmVmb3Jle2NvbnRlbnQ6XCJcXGViOWVcIjt9XG4uaWNvbi1sYWRkZXI6YmVmb3Jle2NvbnRlbnQ6XCJcXGViYTBcIjt9XG4uaWNvbi1yYXRpbmc6YmVmb3Jle2NvbnRlbnQ6XCJcXGViYTFcIjt9XG4uaWNvbi1yYXRpbmcyOmJlZm9yZXtjb250ZW50OlwiXFxlYmEyXCI7fVxuLmljb24tcmF0aW5nMzpiZWZvcmV7Y29udGVudDpcIlxcZWJhM1wiO31cbi5pY29uLXBvZGl1bTpiZWZvcmV7Y29udGVudDpcIlxcZWJhNVwiO31cbi5pY29uLXN0YXJzOmJlZm9yZXtjb250ZW50OlwiXFxlYmE2XCI7fVxuLmljb24tbWVkYWwtc3RhcjpiZWZvcmV7Y29udGVudDpcIlxcZWJhN1wiO31cbi5pY29uLW1lZGFsOmJlZm9yZXtjb250ZW50OlwiXFxlYmE4XCI7fVxuLmljb24tbWVkYWwyOmJlZm9yZXtjb250ZW50OlwiXFxlYmE5XCI7fVxuLmljb24tbWVkYWwtZmlyc3Q6YmVmb3Jle2NvbnRlbnQ6XCJcXGViYWFcIjt9XG4uaWNvbi1tZWRhbC1zZWNvbmQ6YmVmb3Jle2NvbnRlbnQ6XCJcXGViYWJcIjt9XG4uaWNvbi1tZWRhbC10aGlyZDpiZWZvcmV7Y29udGVudDpcIlxcZWJhY1wiO31cbi5pY29uLWNyb3duOmJlZm9yZXtjb250ZW50OlwiXFxlYmFkXCI7fVxuLmljb24tdHJvcGh5MjpiZWZvcmV7Y29udGVudDpcIlxcZWJhZlwiO31cbi5pY29uLXRyb3BoeTM6YmVmb3Jle2NvbnRlbnQ6XCJcXGViYjBcIjt9XG4uaWNvbi1kaWFtb25kOmJlZm9yZXtjb250ZW50OlwiXFxlYmIxXCI7fVxuLmljb24tdHJvcGh5NDpiZWZvcmV7Y29udGVudDpcIlxcZWJiMlwiO31cbi5pY29uLWdpZnQ6YmVmb3Jle2NvbnRlbnQ6XCJcXGViYjNcIjt9XG4uaWNvbi1waXBlOmJlZm9yZXtjb250ZW50OlwiXFxlYmI2XCI7fVxuLmljb24tbXVzdGFjaGU6YmVmb3Jle2NvbnRlbnQ6XCJcXGViYjdcIjt9XG4uaWNvbi1jdXAyOmJlZm9yZXtjb250ZW50OlwiXFxlYmM2XCI7fVxuLmljb24tY29mZmVlOmJlZm9yZXtjb250ZW50OlwiXFxlYmM4XCI7fVxuLmljb24tcGF3OmJlZm9yZXtjb250ZW50OlwiXFxlYmQ1XCI7fVxuLmljb24tZm9vdHByaW50OmJlZm9yZXtjb250ZW50OlwiXFxlYmQ2XCI7fVxuLmljb24tcm9ja2V0OmJlZm9yZXtjb250ZW50OlwiXFxlYmRhXCI7fVxuLmljb24tbWV0ZXIyOmJlZm9yZXtjb250ZW50OlwiXFxlYmRjXCI7fVxuLmljb24tbWV0ZXItc2xvdzpiZWZvcmV7Y29udGVudDpcIlxcZWJkZFwiO31cbi5pY29uLW1ldGVyLWZhc3Q6YmVmb3Jle2NvbnRlbnQ6XCJcXGViZGZcIjt9XG4uaWNvbi1oYW1tZXIyOmJlZm9yZXtjb250ZW50OlwiXFxlYmUxXCI7fVxuLmljb24tYmFsYW5jZTpiZWZvcmV7Y29udGVudDpcIlxcZWJlMlwiO31cbi5pY29uLWZpcmU6YmVmb3Jle2NvbnRlbnQ6XCJcXGViZTVcIjt9XG4uaWNvbi1maXJlMjpiZWZvcmV7Y29udGVudDpcIlxcZWJlNlwiO31cbi5pY29uLWxhYjpiZWZvcmV7Y29udGVudDpcIlxcZWJlN1wiO31cbi5pY29uLWF0b206YmVmb3Jle2NvbnRlbnQ6XCJcXGViZThcIjt9XG4uaWNvbi1hdG9tMjpiZWZvcmV7Y29udGVudDpcIlxcZWJlOVwiO31cbi5pY29uLWJpbjpiZWZvcmV7Y29udGVudDpcIlxcZWJmYVwiO31cbi5pY29uLWJpbjI6YmVmb3Jle2NvbnRlbnQ6XCJcXGViZmJcIjt9XG4uaWNvbi1icmllZmNhc2U6YmVmb3Jle2NvbnRlbnQ6XCJcXGViZmZcIjt9XG4uaWNvbi1icmllZmNhc2UzOmJlZm9yZXtjb250ZW50OlwiXFxlYzAxXCI7fVxuLmljb24tYWlycGxhbmUyOmJlZm9yZXtjb250ZW50OlwiXFxlYzAzXCI7fVxuLmljb24tYWlycGxhbmUzOmJlZm9yZXtjb250ZW50OlwiXFxlYzA0XCI7fVxuLmljb24tYWlycGxhbmU0OmJlZm9yZXtjb250ZW50OlwiXFxlYzA1XCI7fVxuLmljb24tcGFwZXJwbGFuZTpiZWZvcmV7Y29udGVudDpcIlxcZWMwNlwiO31cbi5pY29uLWNhcjpiZWZvcmV7Y29udGVudDpcIlxcZWMwN1wiO31cbi5pY29uLXN0ZWVyaW5nLXdoZWVsOmJlZm9yZXtjb250ZW50OlwiXFxlYzA4XCI7fVxuLmljb24tY2FyMjpiZWZvcmV7Y29udGVudDpcIlxcZWMwOVwiO31cbi5pY29uLWdhczpiZWZvcmV7Y29udGVudDpcIlxcZWMwYVwiO31cbi5pY29uLWJ1czpiZWZvcmV7Y29udGVudDpcIlxcZWMwYlwiO31cbi5pY29uLXRydWNrOmJlZm9yZXtjb250ZW50OlwiXFxlYzBjXCI7fVxuLmljb24tYmlrZTpiZWZvcmV7Y29udGVudDpcIlxcZWMwZFwiO31cbi5pY29uLXJvYWQ6YmVmb3Jle2NvbnRlbnQ6XCJcXGVjMGVcIjt9XG4uaWNvbi10cmFpbjpiZWZvcmV7Y29udGVudDpcIlxcZWMwZlwiO31cbi5pY29uLXRyYWluMjpiZWZvcmV7Y29udGVudDpcIlxcZWMxMFwiO31cbi5pY29uLXNoaXA6YmVmb3Jle2NvbnRlbnQ6XCJcXGVjMTFcIjt9XG4uaWNvbi1ib2F0OmJlZm9yZXtjb250ZW50OlwiXFxlYzEyXCI7fVxuLmljb24tY2hvcHBlcjpiZWZvcmV7Y29udGVudDpcIlxcZWMxM1wiO31cbi5pY29uLWN1YmU6YmVmb3Jle2NvbnRlbnQ6XCJcXGVjMTVcIjt9XG4uaWNvbi1jdWJlMjpiZWZvcmV7Y29udGVudDpcIlxcZWMxNlwiO31cbi5pY29uLWN1YmUzOmJlZm9yZXtjb250ZW50OlwiXFxlYzE3XCI7fVxuLmljb24tY3ViZTQ6YmVmb3Jle2NvbnRlbnQ6XCJcXGVjMThcIjt9XG4uaWNvbi1weXJhbWlkOmJlZm9yZXtjb250ZW50OlwiXFxlYzE5XCI7fVxuLmljb24tcHlyYW1pZDI6YmVmb3Jle2NvbnRlbnQ6XCJcXGVjMWFcIjt9XG4uaWNvbi1wYWNrYWdlOmJlZm9yZXtjb250ZW50OlwiXFxlYzFiXCI7fVxuLmljb24tcHV6emxlOmJlZm9yZXtjb250ZW50OlwiXFxlYzFjXCI7fVxuLmljb24tcHV6emxlMjpiZWZvcmV7Y29udGVudDpcIlxcZWMxZFwiO31cbi5pY29uLXB1enpsZTM6YmVmb3Jle2NvbnRlbnQ6XCJcXGVjMWVcIjt9XG4uaWNvbi1wdXp6bGU0OmJlZm9yZXtjb250ZW50OlwiXFxlYzFmXCI7fVxuLmljb24tZ2xhc3Nlcy0zZDI6YmVmb3Jle2NvbnRlbnQ6XCJcXGVjMjFcIjt9XG4uaWNvbi1icmFpbjpiZWZvcmV7Y29udGVudDpcIlxcZWMyNFwiO31cbi5pY29uLWFjY2Vzc2liaWxpdHk6YmVmb3Jle2NvbnRlbnQ6XCJcXGVjMjVcIjt9XG4uaWNvbi1hY2Nlc3NpYmlsaXR5MjpiZWZvcmV7Y29udGVudDpcIlxcZWMyNlwiO31cbi5pY29uLXN0cmF0ZWd5OmJlZm9yZXtjb250ZW50OlwiXFxlYzI3XCI7fVxuLmljb24tdGFyZ2V0OmJlZm9yZXtjb250ZW50OlwiXFxlYzI4XCI7fVxuLmljb24tdGFyZ2V0MjpiZWZvcmV7Y29udGVudDpcIlxcZWMyOVwiO31cbi5pY29uLXNoaWVsZC1jaGVjazpiZWZvcmV7Y29udGVudDpcIlxcZWMyZlwiO31cbi5pY29uLXNoaWVsZC1ub3RpY2U6YmVmb3Jle2NvbnRlbnQ6XCJcXGVjMzBcIjt9XG4uaWNvbi1zaGllbGQyOmJlZm9yZXtjb250ZW50OlwiXFxlYzMxXCI7fVxuLmljb24tcmFjaW5nOmJlZm9yZXtjb250ZW50OlwiXFxlYzQwXCI7fVxuLmljb24tZmluaXNoOmJlZm9yZXtjb250ZW50OlwiXFxlYzQxXCI7fVxuLmljb24tcG93ZXIyOmJlZm9yZXtjb250ZW50OlwiXFxlYzQ2XCI7fVxuLmljb24tcG93ZXIzOmJlZm9yZXtjb250ZW50OlwiXFxlYzQ3XCI7fVxuLmljb24tc3dpdGNoOmJlZm9yZXtjb250ZW50OlwiXFxlYzQ4XCI7fVxuLmljb24tc3dpdGNoMjI6YmVmb3Jle2NvbnRlbnQ6XCJcXGVjNDlcIjt9XG4uaWNvbi1wb3dlci1jb3JkOmJlZm9yZXtjb250ZW50OlwiXFxlYzRhXCI7fVxuLmljb24tY2xpcGJvYXJkOmJlZm9yZXtjb250ZW50OlwiXFxlYzRkXCI7fVxuLmljb24tY2xpcGJvYXJkMjpiZWZvcmV7Y29udGVudDpcIlxcZWM0ZVwiO31cbi5pY29uLWNsaXBib2FyZDM6YmVmb3Jle2NvbnRlbnQ6XCJcXGVjNGZcIjt9XG4uaWNvbi1jbGlwYm9hcmQ0OmJlZm9yZXtjb250ZW50OlwiXFxlYzUwXCI7fVxuLmljb24tY2xpcGJvYXJkNTpiZWZvcmV7Y29udGVudDpcIlxcZWM1MVwiO31cbi5pY29uLWNsaXBib2FyZDY6YmVmb3Jle2NvbnRlbnQ6XCJcXGVjNTJcIjt9XG4uaWNvbi1wbGF5bGlzdDpiZWZvcmV7Y29udGVudDpcIlxcZWM1M1wiO31cbi5pY29uLXBsYXlsaXN0LWFkZDpiZWZvcmV7Y29udGVudDpcIlxcZWM1NFwiO31cbi5pY29uLWxpc3QtbnVtYmVyZWQ6YmVmb3Jle2NvbnRlbnQ6XCJcXGVjNTVcIjt9XG4uaWNvbi1saXN0OmJlZm9yZXtjb250ZW50OlwiXFxlYzU2XCI7fVxuLmljb24tbGlzdDI6YmVmb3Jle2NvbnRlbnQ6XCJcXGVjNTdcIjt9XG4uaWNvbi1tb3JlOmJlZm9yZXtjb250ZW50OlwiXFxlYzU4XCI7fVxuLmljb24tbW9yZTI6YmVmb3Jle2NvbnRlbnQ6XCJcXGVjNTlcIjt9XG4uaWNvbi1ncmlkOmJlZm9yZXtjb250ZW50OlwiXFxlYzVhXCI7fVxuLmljb24tZ3JpZDI6YmVmb3Jle2NvbnRlbnQ6XCJcXGVjNWJcIjt9XG4uaWNvbi1ncmlkMzpiZWZvcmV7Y29udGVudDpcIlxcZWM1Y1wiO31cbi5pY29uLWdyaWQ0OmJlZm9yZXtjb250ZW50OlwiXFxlYzVkXCI7fVxuLmljb24tZ3JpZDUyOmJlZm9yZXtjb250ZW50OlwiXFxlYzVlXCI7fVxuLmljb24tZ3JpZDY6YmVmb3Jle2NvbnRlbnQ6XCJcXGVjNWZcIjt9XG4uaWNvbi1ncmlkNzpiZWZvcmV7Y29udGVudDpcIlxcZWM2MFwiO31cbi5pY29uLXRyZWU1OmJlZm9yZXtjb250ZW50OlwiXFxlYzYxXCI7fVxuLmljb24tdHJlZTY6YmVmb3Jle2NvbnRlbnQ6XCJcXGVjNjJcIjt9XG4uaWNvbi10cmVlNzpiZWZvcmV7Y29udGVudDpcIlxcZWM2M1wiO31cbi5pY29uLWxhbjpiZWZvcmV7Y29udGVudDpcIlxcZWM2NFwiO31cbi5pY29uLWxhbjI6YmVmb3Jle2NvbnRlbnQ6XCJcXGVjNjVcIjt9XG4uaWNvbi1sYW4zOmJlZm9yZXtjb250ZW50OlwiXFxlYzY2XCI7fVxuLmljb24tbWVudTpiZWZvcmV7Y29udGVudDpcIlxcZWM2N1wiO31cbi5pY29uLWNpcmNsZS1zbWFsbDpiZWZvcmV7Y29udGVudDpcIlxcZWM2OFwiO31cbi5pY29uLW1lbnUyOmJlZm9yZXtjb250ZW50OlwiXFxlYzY5XCI7fVxuLmljb24tbWVudTM6YmVmb3Jle2NvbnRlbnQ6XCJcXGVjNmFcIjt9XG4uaWNvbi1tZW51NDpiZWZvcmV7Y29udGVudDpcIlxcZWM2YlwiO31cbi5pY29uLW1lbnU1OmJlZm9yZXtjb250ZW50OlwiXFxlYzZjXCI7fVxuLmljb24tbWVudTYyOmJlZm9yZXtjb250ZW50OlwiXFxlYzZkXCI7fVxuLmljb24tbWVudTc6YmVmb3Jle2NvbnRlbnQ6XCJcXGVjNmVcIjt9XG4uaWNvbi1tZW51ODpiZWZvcmV7Y29udGVudDpcIlxcZWM2ZlwiO31cbi5pY29uLW1lbnU5OmJlZm9yZXtjb250ZW50OlwiXFxlYzcwXCI7fVxuLmljb24tbWVudTEwOmJlZm9yZXtjb250ZW50OlwiXFxlYzcxXCI7fVxuLmljb24tY2xvdWQ6YmVmb3Jle2NvbnRlbnQ6XCJcXGVjNzJcIjt9XG4uaWNvbi1jbG91ZC1kb3dubG9hZDpiZWZvcmV7Y29udGVudDpcIlxcZWM3M1wiO31cbi5pY29uLWNsb3VkLXVwbG9hZDpiZWZvcmV7Y29udGVudDpcIlxcZWM3NFwiO31cbi5pY29uLWNsb3VkLWNoZWNrOmJlZm9yZXtjb250ZW50OlwiXFxlYzc1XCI7fVxuLmljb24tY2xvdWQyOmJlZm9yZXtjb250ZW50OlwiXFxlYzc2XCI7fVxuLmljb24tY2xvdWQtZG93bmxvYWQyOmJlZm9yZXtjb250ZW50OlwiXFxlYzc3XCI7fVxuLmljb24tY2xvdWQtdXBsb2FkMjpiZWZvcmV7Y29udGVudDpcIlxcZWM3OFwiO31cbi5pY29uLWNsb3VkLWNoZWNrMjpiZWZvcmV7Y29udGVudDpcIlxcZWM3OVwiO31cbi5pY29uLWltcG9ydDpiZWZvcmV7Y29udGVudDpcIlxcZWM3ZVwiO31cbi5pY29uLWRvd25sb2FkNDpiZWZvcmV7Y29udGVudDpcIlxcZWM4MFwiO31cbi5pY29uLXVwbG9hZDQ6YmVmb3Jle2NvbnRlbnQ6XCJcXGVjODFcIjt9XG4uaWNvbi1kb3dubG9hZDc6YmVmb3Jle2NvbnRlbnQ6XCJcXGVjODZcIjt9XG4uaWNvbi11cGxvYWQ3OmJlZm9yZXtjb250ZW50OlwiXFxlYzg3XCI7fVxuLmljb24tZG93bmxvYWQxMDpiZWZvcmV7Y29udGVudDpcIlxcZWM4Y1wiO31cbi5pY29uLXVwbG9hZDEwOmJlZm9yZXtjb250ZW50OlwiXFxlYzhkXCI7fVxuLmljb24tc3BoZXJlOmJlZm9yZXtjb250ZW50OlwiXFxlYzhlXCI7fVxuLmljb24tc3BoZXJlMzpiZWZvcmV7Y29udGVudDpcIlxcZWM5MFwiO31cbi5pY29uLWVhcnRoOmJlZm9yZXtjb250ZW50OlwiXFxlYzkzXCI7fVxuLmljb24tbGluazpiZWZvcmV7Y29udGVudDpcIlxcZWM5NlwiO31cbi5pY29uLXVubGluazpiZWZvcmV7Y29udGVudDpcIlxcZWM5N1wiO31cbi5pY29uLWxpbmsyOmJlZm9yZXtjb250ZW50OlwiXFxlYzk4XCI7fVxuLmljb24tdW5saW5rMjpiZWZvcmV7Y29udGVudDpcIlxcZWM5OVwiO31cbi5pY29uLWFuY2hvcjpiZWZvcmV7Y29udGVudDpcIlxcZWNhMFwiO31cbi5pY29uLWZsYWczOmJlZm9yZXtjb250ZW50OlwiXFxlY2EzXCI7fVxuLmljb24tZmxhZzQ6YmVmb3Jle2NvbnRlbnQ6XCJcXGVjYTRcIjt9XG4uaWNvbi1mbGFnNzpiZWZvcmV7Y29udGVudDpcIlxcZWNhN1wiO31cbi5pY29uLWZsYWc4OmJlZm9yZXtjb250ZW50OlwiXFxlY2E4XCI7fVxuLmljb24tYXR0YWNobWVudDpiZWZvcmV7Y29udGVudDpcIlxcZWNhOVwiO31cbi5pY29uLWF0dGFjaG1lbnQyOmJlZm9yZXtjb250ZW50OlwiXFxlY2FhXCI7fVxuLmljb24tZXllOmJlZm9yZXtjb250ZW50OlwiXFxlY2FiXCI7fVxuLmljb24tZXllLXBsdXM6YmVmb3Jle2NvbnRlbnQ6XCJcXGVjYWNcIjt9XG4uaWNvbi1leWUtbWludXM6YmVmb3Jle2NvbnRlbnQ6XCJcXGVjYWRcIjt9XG4uaWNvbi1leWUtYmxvY2tlZDpiZWZvcmV7Y29udGVudDpcIlxcZWNhZVwiO31cbi5pY29uLWV5ZTI6YmVmb3Jle2NvbnRlbnQ6XCJcXGVjYWZcIjt9XG4uaWNvbi1leWUtYmxvY2tlZDI6YmVmb3Jle2NvbnRlbnQ6XCJcXGVjYjBcIjt9XG4uaWNvbi1leWU0OmJlZm9yZXtjb250ZW50OlwiXFxlY2IzXCI7fVxuLmljb24tYm9va21hcmsyOmJlZm9yZXtjb250ZW50OlwiXFxlY2I0XCI7fVxuLmljb24tYm9va21hcmszOmJlZm9yZXtjb250ZW50OlwiXFxlY2I1XCI7fVxuLmljb24tYm9va21hcmtzOmJlZm9yZXtjb250ZW50OlwiXFxlY2I2XCI7fVxuLmljb24tYm9va21hcms0OmJlZm9yZXtjb250ZW50OlwiXFxlY2I3XCI7fVxuLmljb24tc3BvdGxpZ2h0MjpiZWZvcmV7Y29udGVudDpcIlxcZWNiOFwiO31cbi5pY29uLXN0YXJidXJzdDpiZWZvcmV7Y29udGVudDpcIlxcZWNiOVwiO31cbi5pY29uLXNub3dmbGFrZTpiZWZvcmV7Y29udGVudDpcIlxcZWNiYVwiO31cbi5pY29uLXdlYXRoZXItd2luZHk6YmVmb3Jle2NvbnRlbnQ6XCJcXGVjZDBcIjt9XG4uaWNvbi1mYW46YmVmb3Jle2NvbnRlbnQ6XCJcXGVjZDFcIjt9XG4uaWNvbi11bWJyZWxsYTpiZWZvcmV7Y29udGVudDpcIlxcZWNkMlwiO31cbi5pY29uLXN1bjM6YmVmb3Jle2NvbnRlbnQ6XCJcXGVjZDNcIjt9XG4uaWNvbi1jb250cmFzdDpiZWZvcmV7Y29udGVudDpcIlxcZWNkNFwiO31cbi5pY29uLWJlZDI6YmVmb3Jle2NvbnRlbnQ6XCJcXGVjZGFcIjt9XG4uaWNvbi1mdXJuaXR1cmU6YmVmb3Jle2NvbnRlbnQ6XCJcXGVjZGJcIjt9XG4uaWNvbi1jaGFpcjpiZWZvcmV7Y29udGVudDpcIlxcZWNkY1wiO31cbi5pY29uLXN0YXItZW1wdHkzOmJlZm9yZXtjb250ZW50OlwiXFxlY2UwXCI7fVxuLmljb24tc3Rhci1oYWxmOmJlZm9yZXtjb250ZW50OlwiXFxlY2UxXCI7fVxuLmljb24tc3Rhci1mdWxsMjpiZWZvcmV7Y29udGVudDpcIlxcZWNlMlwiO31cbi5pY29uLWhlYXJ0NTpiZWZvcmV7Y29udGVudDpcIlxcZWNlOVwiO31cbi5pY29uLWhlYXJ0NjpiZWZvcmV7Y29udGVudDpcIlxcZWNlYVwiO31cbi5pY29uLWhlYXJ0LWJyb2tlbjI6YmVmb3Jle2NvbnRlbnQ6XCJcXGVjZWJcIjt9XG4uaWNvbi10aHVtYnMtdXAyOmJlZm9yZXtjb250ZW50OlwiXFxlY2YyXCI7fVxuLmljb24tdGh1bWJzLWRvd24yOmJlZm9yZXtjb250ZW50OlwiXFxlY2Y0XCI7fVxuLmljb24tdGh1bWJzLXVwMzpiZWZvcmV7Y29udGVudDpcIlxcZWNmNVwiO31cbi5pY29uLXRodW1icy1kb3duMzpiZWZvcmV7Y29udGVudDpcIlxcZWNmNlwiO31cbi5pY29uLWhlaWdodDpiZWZvcmV7Y29udGVudDpcIlxcZWNmN1wiO31cbi5pY29uLW1hbjpiZWZvcmV7Y29udGVudDpcIlxcZWNmOFwiO31cbi5pY29uLXdvbWFuOmJlZm9yZXtjb250ZW50OlwiXFxlY2Y5XCI7fVxuLmljb24tbWFuLXdvbWFuOmJlZm9yZXtjb250ZW50OlwiXFxlY2ZhXCI7fVxuLmljb24teWluLXlhbmc6YmVmb3Jle2NvbnRlbnQ6XCJcXGVjZmVcIjt9XG4uaWNvbi1jdXJzb3I6YmVmb3Jle2NvbnRlbnQ6XCJcXGVkMjNcIjt9XG4uaWNvbi1jdXJzb3IyOmJlZm9yZXtjb250ZW50OlwiXFxlZDI0XCI7fVxuLmljb24tbGFzc28yOmJlZm9yZXtjb250ZW50OlwiXFxlZDI2XCI7fVxuLmljb24tc2VsZWN0MjpiZWZvcmV7Y29udGVudDpcIlxcZWQyOFwiO31cbi5pY29uLXBvaW50LXVwOmJlZm9yZXtjb250ZW50OlwiXFxlZDI5XCI7fVxuLmljb24tcG9pbnQtcmlnaHQ6YmVmb3Jle2NvbnRlbnQ6XCJcXGVkMmFcIjt9XG4uaWNvbi1wb2ludC1kb3duOmJlZm9yZXtjb250ZW50OlwiXFxlZDJiXCI7fVxuLmljb24tcG9pbnQtbGVmdDpiZWZvcmV7Y29udGVudDpcIlxcZWQyY1wiO31cbi5pY29uLXBvaW50ZXI6YmVmb3Jle2NvbnRlbnQ6XCJcXGVkMmRcIjt9XG4uaWNvbi1yZW1pbmRlcjpiZWZvcmV7Y29udGVudDpcIlxcZWQyZVwiO31cbi5pY29uLWRyYWctbGVmdC1yaWdodDpiZWZvcmV7Y29udGVudDpcIlxcZWQyZlwiO31cbi5pY29uLWRyYWctbGVmdDpiZWZvcmV7Y29udGVudDpcIlxcZWQzMFwiO31cbi5pY29uLWRyYWctcmlnaHQ6YmVmb3Jle2NvbnRlbnQ6XCJcXGVkMzFcIjt9XG4uaWNvbi10b3VjaDpiZWZvcmV7Y29udGVudDpcIlxcZWQzMlwiO31cbi5pY29uLW11bHRpdG91Y2g6YmVmb3Jle2NvbnRlbnQ6XCJcXGVkMzNcIjt9XG4uaWNvbi10b3VjaC16b29tOmJlZm9yZXtjb250ZW50OlwiXFxlZDM0XCI7fVxuLmljb24tdG91Y2gtcGluY2g6YmVmb3Jle2NvbnRlbnQ6XCJcXGVkMzVcIjt9XG4uaWNvbi1oYW5kOmJlZm9yZXtjb250ZW50OlwiXFxlZDM2XCI7fVxuLmljb24tZ3JhYjpiZWZvcmV7Y29udGVudDpcIlxcZWQzN1wiO31cbi5pY29uLXN0YWNrLWVtcHR5OmJlZm9yZXtjb250ZW50OlwiXFxlZDM4XCI7fVxuLmljb24tc3RhY2stcGx1czpiZWZvcmV7Y29udGVudDpcIlxcZWQzOVwiO31cbi5pY29uLXN0YWNrLW1pbnVzOmJlZm9yZXtjb250ZW50OlwiXFxlZDNhXCI7fVxuLmljb24tc3RhY2stc3RhcjpiZWZvcmV7Y29udGVudDpcIlxcZWQzYlwiO31cbi5pY29uLXN0YWNrLXBpY3R1cmU6YmVmb3Jle2NvbnRlbnQ6XCJcXGVkM2NcIjt9XG4uaWNvbi1zdGFjay1kb3duOmJlZm9yZXtjb250ZW50OlwiXFxlZDNkXCI7fVxuLmljb24tc3RhY2stdXA6YmVmb3Jle2NvbnRlbnQ6XCJcXGVkM2VcIjt9XG4uaWNvbi1zdGFjay1jYW5jZWw6YmVmb3Jle2NvbnRlbnQ6XCJcXGVkM2ZcIjt9XG4uaWNvbi1zdGFjay1jaGVjazpiZWZvcmV7Y29udGVudDpcIlxcZWQ0MFwiO31cbi5pY29uLXN0YWNrLXRleHQ6YmVmb3Jle2NvbnRlbnQ6XCJcXGVkNDFcIjt9XG4uaWNvbi1zdGFjazQ6YmVmb3Jle2NvbnRlbnQ6XCJcXGVkNDdcIjt9XG4uaWNvbi1zdGFjay1tdXNpYzpiZWZvcmV7Y29udGVudDpcIlxcZWQ0OFwiO31cbi5pY29uLXN0YWNrLXBsYXk6YmVmb3Jle2NvbnRlbnQ6XCJcXGVkNDlcIjt9XG4uaWNvbi1tb3ZlOmJlZm9yZXtjb250ZW50OlwiXFxlZDRhXCI7fVxuLmljb24tZG90czpiZWZvcmV7Y29udGVudDpcIlxcZWQ0YlwiO31cbi5pY29uLXdhcm5pbmc6YmVmb3Jle2NvbnRlbnQ6XCJcXGVkNGNcIjt9XG4uaWNvbi13YXJuaW5nMjI6YmVmb3Jle2NvbnRlbnQ6XCJcXGVkNGRcIjt9XG4uaWNvbi1ub3RpZmljYXRpb24yOmJlZm9yZXtjb250ZW50OlwiXFxlZDRmXCI7fVxuLmljb24tcXVlc3Rpb24zOmJlZm9yZXtjb250ZW50OlwiXFxlZDUyXCI7fVxuLmljb24tcXVlc3Rpb240OmJlZm9yZXtjb250ZW50OlwiXFxlZDUzXCI7fVxuLmljb24tcGx1czM6YmVmb3Jle2NvbnRlbnQ6XCJcXGVkNWFcIjt9XG4uaWNvbi1taW51czM6YmVmb3Jle2NvbnRlbnQ6XCJcXGVkNWJcIjt9XG4uaWNvbi1wbHVzLWNpcmNsZTI6YmVmb3Jle2NvbnRlbnQ6XCJcXGVkNWVcIjt9XG4uaWNvbi1taW51cy1jaXJjbGUyOmJlZm9yZXtjb250ZW50OlwiXFxlZDVmXCI7fVxuLmljb24tY2FuY2VsLWNpcmNsZTI6YmVmb3Jle2NvbnRlbnQ6XCJcXGVkNjNcIjt9XG4uaWNvbi1ibG9ja2VkOmJlZm9yZXtjb250ZW50OlwiXFxlZDY0XCI7fVxuLmljb24tY2FuY2VsLXNxdWFyZTpiZWZvcmV7Y29udGVudDpcIlxcZWQ2NVwiO31cbi5pY29uLWNhbmNlbC1zcXVhcmUyOmJlZm9yZXtjb250ZW50OlwiXFxlZDY2XCI7fVxuLmljb24tc3BhbTpiZWZvcmV7Y29udGVudDpcIlxcZWQ2OFwiO31cbi5pY29uLWNyb3NzMjpiZWZvcmV7Y29udGVudDpcIlxcZWQ2YVwiO31cbi5pY29uLWNyb3NzMzpiZWZvcmV7Y29udGVudDpcIlxcZWQ2YlwiO31cbi5pY29uLWNoZWNrbWFyazpiZWZvcmV7Y29udGVudDpcIlxcZWQ2Y1wiO31cbi5pY29uLWNoZWNrbWFyazM6YmVmb3Jle2NvbnRlbnQ6XCJcXGVkNmVcIjt9XG4uaWNvbi1jaGVja21hcmsyOmJlZm9yZXtjb250ZW50OlwiXFxlMzcyXCI7fVxuLmljb24tY2hlY2ttYXJrNDpiZWZvcmV7Y29udGVudDpcIlxcZWQ2ZlwiO31cbi5pY29uLXNwZWxsLWNoZWNrOmJlZm9yZXtjb250ZW50OlwiXFxlZDcxXCI7fVxuLmljb24tc3BlbGwtY2hlY2syOmJlZm9yZXtjb250ZW50OlwiXFxlZDcyXCI7fVxuLmljb24tZW50ZXI6YmVmb3Jle2NvbnRlbnQ6XCJcXGVkNzNcIjt9XG4uaWNvbi1leGl0OmJlZm9yZXtjb250ZW50OlwiXFxlZDc0XCI7fVxuLmljb24tZW50ZXIyOmJlZm9yZXtjb250ZW50OlwiXFxlZDc1XCI7fVxuLmljb24tZXhpdDI6YmVmb3Jle2NvbnRlbnQ6XCJcXGVkNzZcIjt9XG4uaWNvbi1lbnRlcjM6YmVmb3Jle2NvbnRlbnQ6XCJcXGVkNzdcIjt9XG4uaWNvbi1leGl0MzpiZWZvcmV7Y29udGVudDpcIlxcZWQ3OFwiO31cbi5pY29uLXdhbGw6YmVmb3Jle2NvbnRlbnQ6XCJcXGVkNzlcIjt9XG4uaWNvbi1mZW5jZTpiZWZvcmV7Y29udGVudDpcIlxcZWQ3YVwiO31cbi5pY29uLXBsYXkzOmJlZm9yZXtjb250ZW50OlwiXFxlZDdiXCI7fVxuLmljb24tcGF1c2U6YmVmb3Jle2NvbnRlbnQ6XCJcXGVkN2NcIjt9XG4uaWNvbi1zdG9wOmJlZm9yZXtjb250ZW50OlwiXFxlZDdkXCI7fVxuLmljb24tcHJldmlvdXM6YmVmb3Jle2NvbnRlbnQ6XCJcXGVkN2VcIjt9XG4uaWNvbi1uZXh0OmJlZm9yZXtjb250ZW50OlwiXFxlZDdmXCI7fVxuLmljb24tYmFja3dhcmQ6YmVmb3Jle2NvbnRlbnQ6XCJcXGVkODBcIjt9XG4uaWNvbi1mb3J3YXJkMjpiZWZvcmV7Y29udGVudDpcIlxcZWQ4MVwiO31cbi5pY29uLXBsYXk0OmJlZm9yZXtjb250ZW50OlwiXFxlZDgyXCI7fVxuLmljb24tcGF1c2UyOmJlZm9yZXtjb250ZW50OlwiXFxlZDgzXCI7fVxuLmljb24tc3RvcDI6YmVmb3Jle2NvbnRlbnQ6XCJcXGVkODRcIjt9XG4uaWNvbi1iYWNrd2FyZDI6YmVmb3Jle2NvbnRlbnQ6XCJcXGVkODVcIjt9XG4uaWNvbi1mb3J3YXJkMzpiZWZvcmV7Y29udGVudDpcIlxcZWQ4NlwiO31cbi5pY29uLWZpcnN0OmJlZm9yZXtjb250ZW50OlwiXFxlZDg3XCI7fVxuLmljb24tbGFzdDpiZWZvcmV7Y29udGVudDpcIlxcZWQ4OFwiO31cbi5pY29uLXByZXZpb3VzMjpiZWZvcmV7Y29udGVudDpcIlxcZWQ4OVwiO31cbi5pY29uLW5leHQyOmJlZm9yZXtjb250ZW50OlwiXFxlZDhhXCI7fVxuLmljb24tZWplY3Q6YmVmb3Jle2NvbnRlbnQ6XCJcXGVkOGJcIjt9XG4uaWNvbi12b2x1bWUtaGlnaDpiZWZvcmV7Y29udGVudDpcIlxcZWQ4Y1wiO31cbi5pY29uLXZvbHVtZS1tZWRpdW06YmVmb3Jle2NvbnRlbnQ6XCJcXGVkOGRcIjt9XG4uaWNvbi12b2x1bWUtbG93OmJlZm9yZXtjb250ZW50OlwiXFxlZDhlXCI7fVxuLmljb24tdm9sdW1lLW11dGU6YmVmb3Jle2NvbnRlbnQ6XCJcXGVkOGZcIjt9XG4uaWNvbi1zcGVha2VyLWxlZnQ6YmVmb3Jle2NvbnRlbnQ6XCJcXGVkOTBcIjt9XG4uaWNvbi1zcGVha2VyLXJpZ2h0OmJlZm9yZXtjb250ZW50OlwiXFxlZDkxXCI7fVxuLmljb24tdm9sdW1lLW11dGUyOmJlZm9yZXtjb250ZW50OlwiXFxlZDkyXCI7fVxuLmljb24tdm9sdW1lLWluY3JlYXNlOmJlZm9yZXtjb250ZW50OlwiXFxlZDkzXCI7fVxuLmljb24tdm9sdW1lLWRlY3JlYXNlOmJlZm9yZXtjb250ZW50OlwiXFxlZDk0XCI7fVxuLmljb24tdm9sdW1lLW11dGU1OmJlZm9yZXtjb250ZW50OlwiXFxlZGE0XCI7fVxuLmljb24tbG9vcDpiZWZvcmV7Y29udGVudDpcIlxcZWRhNVwiO31cbi5pY29uLWxvb3AzOmJlZm9yZXtjb250ZW50OlwiXFxlZGE3XCI7fVxuLmljb24taW5maW5pdGUtc3F1YXJlOmJlZm9yZXtjb250ZW50OlwiXFxlZGE4XCI7fVxuLmljb24taW5maW5pdGU6YmVmb3Jle2NvbnRlbnQ6XCJcXGVkYTlcIjt9XG4uaWNvbi1sb29wNDpiZWZvcmV7Y29udGVudDpcIlxcZWRhYlwiO31cbi5pY29uLXNodWZmbGU6YmVmb3Jle2NvbnRlbnQ6XCJcXGVkYWNcIjt9XG4uaWNvbi13YXZlOmJlZm9yZXtjb250ZW50OlwiXFxlZGFlXCI7fVxuLmljb24td2F2ZTI6YmVmb3Jle2NvbnRlbnQ6XCJcXGVkYWZcIjt9XG4uaWNvbi1zcGxpdDpiZWZvcmV7Y29udGVudDpcIlxcZWRiMFwiO31cbi5pY29uLW1lcmdlOmJlZm9yZXtjb250ZW50OlwiXFxlZGIxXCI7fVxuLmljb24tYXJyb3ctdXA1OmJlZm9yZXtjb250ZW50OlwiXFxlZGM0XCI7fVxuLmljb24tYXJyb3ctcmlnaHQ1OmJlZm9yZXtjb250ZW50OlwiXFxlZGM1XCI7fVxuLmljb24tYXJyb3ctZG93bjU6YmVmb3Jle2NvbnRlbnQ6XCJcXGVkYzZcIjt9XG4uaWNvbi1hcnJvdy1sZWZ0NTpiZWZvcmV7Y29udGVudDpcIlxcZWRjN1wiO31cbi5pY29uLWFycm93LXVwLWxlZnQyOmJlZm9yZXtjb250ZW50OlwiXFxlZGQwXCI7fVxuLmljb24tYXJyb3ctdXA3OmJlZm9yZXtjb250ZW50OlwiXFxlZGQxXCI7fVxuLmljb24tYXJyb3ctdXAtcmlnaHQyOmJlZm9yZXtjb250ZW50OlwiXFxlZGQyXCI7fVxuLmljb24tYXJyb3ctcmlnaHQ3OmJlZm9yZXtjb250ZW50OlwiXFxlZGQzXCI7fVxuLmljb24tYXJyb3ctZG93bi1yaWdodDI6YmVmb3Jle2NvbnRlbnQ6XCJcXGVkZDRcIjt9XG4uaWNvbi1hcnJvdy1kb3duNzpiZWZvcmV7Y29udGVudDpcIlxcZWRkNVwiO31cbi5pY29uLWFycm93LWRvd24tbGVmdDI6YmVmb3Jle2NvbnRlbnQ6XCJcXGVkZDZcIjt9XG4uaWNvbi1hcnJvdy1sZWZ0NzpiZWZvcmV7Y29udGVudDpcIlxcZWRkN1wiO31cbi5pY29uLWFycm93LXVwLWxlZnQzOmJlZm9yZXtjb250ZW50OlwiXFxlZGQ4XCI7fVxuLmljb24tYXJyb3ctdXA4OmJlZm9yZXtjb250ZW50OlwiXFxlZGQ5XCI7fVxuLmljb24tYXJyb3ctdXAtcmlnaHQzOmJlZm9yZXtjb250ZW50OlwiXFxlZGRhXCI7fVxuLmljb24tYXJyb3ctcmlnaHQ4OmJlZm9yZXtjb250ZW50OlwiXFxlZGRiXCI7fVxuLmljb24tYXJyb3ctZG93bi1yaWdodDM6YmVmb3Jle2NvbnRlbnQ6XCJcXGVkZGNcIjt9XG4uaWNvbi1hcnJvdy1kb3duODpiZWZvcmV7Y29udGVudDpcIlxcZWRkZFwiO31cbi5pY29uLWFycm93LWRvd24tbGVmdDM6YmVmb3Jle2NvbnRlbnQ6XCJcXGVkZGVcIjt9XG4uaWNvbi1hcnJvdy1sZWZ0ODpiZWZvcmV7Y29udGVudDpcIlxcZWRkZlwiO31cbi5pY29uLWNpcmNsZS11cDI6YmVmb3Jle2NvbnRlbnQ6XCJcXGVkZTRcIjt9XG4uaWNvbi1jaXJjbGUtcmlnaHQyOmJlZm9yZXtjb250ZW50OlwiXFxlZGU1XCI7fVxuLmljb24tY2lyY2xlLWRvd24yOmJlZm9yZXtjb250ZW50OlwiXFxlZGU2XCI7fVxuLmljb24tY2lyY2xlLWxlZnQyOmJlZm9yZXtjb250ZW50OlwiXFxlZGU3XCI7fVxuLmljb24tYXJyb3ctcmVzaXplNzpiZWZvcmV7Y29udGVudDpcIlxcZWRmZVwiO31cbi5pY29uLWFycm93LXJlc2l6ZTg6YmVmb3Jle2NvbnRlbnQ6XCJcXGVkZmZcIjt9XG4uaWNvbi1zcXVhcmUtdXAtbGVmdDpiZWZvcmV7Y29udGVudDpcIlxcZWUwMFwiO31cbi5pY29uLXNxdWFyZS11cDpiZWZvcmV7Y29udGVudDpcIlxcZWUwMVwiO31cbi5pY29uLXNxdWFyZS11cC1yaWdodDpiZWZvcmV7Y29udGVudDpcIlxcZWUwMlwiO31cbi5pY29uLXNxdWFyZS1yaWdodDpiZWZvcmV7Y29udGVudDpcIlxcZWUwM1wiO31cbi5pY29uLXNxdWFyZS1kb3duLXJpZ2h0OmJlZm9yZXtjb250ZW50OlwiXFxlZTA0XCI7fVxuLmljb24tc3F1YXJlLWRvd246YmVmb3Jle2NvbnRlbnQ6XCJcXGVlMDVcIjt9XG4uaWNvbi1zcXVhcmUtZG93bi1sZWZ0OmJlZm9yZXtjb250ZW50OlwiXFxlZTA2XCI7fVxuLmljb24tc3F1YXJlLWxlZnQ6YmVmb3Jle2NvbnRlbnQ6XCJcXGVlMDdcIjt9XG4uaWNvbi1hcnJvdy11cDE1OmJlZm9yZXtjb250ZW50OlwiXFxlZTMwXCI7fVxuLmljb24tYXJyb3ctcmlnaHQxNTpiZWZvcmV7Y29udGVudDpcIlxcZWUzMVwiO31cbi5pY29uLWFycm93LWRvd24xNTpiZWZvcmV7Y29udGVudDpcIlxcZWUzMlwiO31cbi5pY29uLWFycm93LWxlZnQxNTpiZWZvcmV7Y29udGVudDpcIlxcZWUzM1wiO31cbi5pY29uLWFycm93LXVwMTY6YmVmb3Jle2NvbnRlbnQ6XCJcXGVlMzRcIjt9XG4uaWNvbi1hcnJvdy1yaWdodDE2OmJlZm9yZXtjb250ZW50OlwiXFxlZTM1XCI7fVxuLmljb24tYXJyb3ctZG93bjE2OmJlZm9yZXtjb250ZW50OlwiXFxlZTM2XCI7fVxuLmljb24tYXJyb3ctbGVmdDE2OmJlZm9yZXtjb250ZW50OlwiXFxlZTM3XCI7fVxuLmljb24tbWVudS1vcGVuOmJlZm9yZXtjb250ZW50OlwiXFxlZTM4XCI7fVxuLmljb24tbWVudS1vcGVuMjpiZWZvcmV7Y29udGVudDpcIlxcZWUzOVwiO31cbi5pY29uLW1lbnUtY2xvc2U6YmVmb3Jle2NvbnRlbnQ6XCJcXGVlM2FcIjt9XG4uaWNvbi1tZW51LWNsb3NlMjpiZWZvcmV7Y29udGVudDpcIlxcZWUzYlwiO31cbi5pY29uLWVudGVyNTpiZWZvcmV7Y29udGVudDpcIlxcZWUzZFwiO31cbi5pY29uLWVzYzpiZWZvcmV7Y29udGVudDpcIlxcZWUzZVwiO31cbi5pY29uLWVudGVyNjpiZWZvcmV7Y29udGVudDpcIlxcZWUzZlwiO31cbi5pY29uLWJhY2tzcGFjZTpiZWZvcmV7Y29udGVudDpcIlxcZWU0MFwiO31cbi5pY29uLWJhY2tzcGFjZTI6YmVmb3Jle2NvbnRlbnQ6XCJcXGVlNDFcIjt9XG4uaWNvbi10YWI6YmVmb3Jle2NvbnRlbnQ6XCJcXGVlNDJcIjt9XG4uaWNvbi10cmFuc21pc3Npb246YmVmb3Jle2NvbnRlbnQ6XCJcXGVlNDNcIjt9XG4uaWNvbi1zb3J0OmJlZm9yZXtjb250ZW50OlwiXFxlZTQ1XCI7fVxuLmljb24tbW92ZS11cDI6YmVmb3Jle2NvbnRlbnQ6XCJcXGVlNDdcIjt9XG4uaWNvbi1tb3ZlLWRvd24yOmJlZm9yZXtjb250ZW50OlwiXFxlZTQ4XCI7fVxuLmljb24tc29ydC1hbHBoYS1hc2M6YmVmb3Jle2NvbnRlbnQ6XCJcXGVlNDlcIjt9XG4uaWNvbi1zb3J0LWFscGhhLWRlc2M6YmVmb3Jle2NvbnRlbnQ6XCJcXGVlNGFcIjt9XG4uaWNvbi1zb3J0LW51bWVyaWMtYXNjOmJlZm9yZXtjb250ZW50OlwiXFxlZTRiXCI7fVxuLmljb24tc29ydC1udW1iZXJpYy1kZXNjOmJlZm9yZXtjb250ZW50OlwiXFxlZTRjXCI7fVxuLmljb24tc29ydC1hbW91bnQtYXNjOmJlZm9yZXtjb250ZW50OlwiXFxlZTRkXCI7fVxuLmljb24tc29ydC1hbW91bnQtZGVzYzpiZWZvcmV7Y29udGVudDpcIlxcZWU0ZVwiO31cbi5pY29uLXNvcnQtdGltZS1hc2M6YmVmb3Jle2NvbnRlbnQ6XCJcXGVlNGZcIjt9XG4uaWNvbi1zb3J0LXRpbWUtZGVzYzpiZWZvcmV7Y29udGVudDpcIlxcZWU1MFwiO31cbi5pY29uLWJhdHRlcnktNjpiZWZvcmV7Y29udGVudDpcIlxcZWU1MVwiO31cbi5pY29uLWJhdHRlcnktMDpiZWZvcmV7Y29udGVudDpcIlxcZWU1N1wiO31cbi5pY29uLWJhdHRlcnktY2hhcmdpbmc6YmVmb3Jle2NvbnRlbnQ6XCJcXGVlNThcIjt9XG4uaWNvbi1jb21tYW5kOmJlZm9yZXtjb250ZW50OlwiXFxlZTVmXCI7fVxuLmljb24tc2hpZnQ6YmVmb3Jle2NvbnRlbnQ6XCJcXGVlNjBcIjt9XG4uaWNvbi1jdHJsOmJlZm9yZXtjb250ZW50OlwiXFxlZTYxXCI7fVxuLmljb24tb3B0OmJlZm9yZXtjb250ZW50OlwiXFxlZTYyXCI7fVxuLmljb24tY2hlY2tib3gtY2hlY2tlZDpiZWZvcmV7Y29udGVudDpcIlxcZWU2M1wiO31cbi5pY29uLWNoZWNrYm94LXVuY2hlY2tlZDpiZWZvcmV7Y29udGVudDpcIlxcZWU2NFwiO31cbi5pY29uLWNoZWNrYm94LXBhcnRpYWw6YmVmb3Jle2NvbnRlbnQ6XCJcXGVlNjVcIjt9XG4uaWNvbi1zcXVhcmU6YmVmb3Jle2NvbnRlbnQ6XCJcXGVlNjZcIjt9XG4uaWNvbi10cmlhbmdsZTpiZWZvcmV7Y29udGVudDpcIlxcZWU2N1wiO31cbi5pY29uLXRyaWFuZ2xlMjpiZWZvcmV7Y29udGVudDpcIlxcZWU2OFwiO31cbi5pY29uLWRpYW1vbmQzOmJlZm9yZXtjb250ZW50OlwiXFxlZTY5XCI7fVxuLmljb24tZGlhbW9uZDQ6YmVmb3Jle2NvbnRlbnQ6XCJcXGVlNmFcIjt9XG4uaWNvbi1jaGVja2JveC1jaGVja2VkMjpiZWZvcmV7Y29udGVudDpcIlxcZWU2YlwiO31cbi5pY29uLWNoZWNrYm94LXVuY2hlY2tlZDI6YmVmb3Jle2NvbnRlbnQ6XCJcXGVlNmNcIjt9XG4uaWNvbi1jaGVja2JveC1wYXJ0aWFsMjpiZWZvcmV7Y29udGVudDpcIlxcZWU2ZFwiO31cbi5pY29uLXJhZGlvLWNoZWNrZWQ6YmVmb3Jle2NvbnRlbnQ6XCJcXGVlNmVcIjt9XG4uaWNvbi1yYWRpby1jaGVja2VkMjpiZWZvcmV7Y29udGVudDpcIlxcZWU2ZlwiO31cbi5pY29uLXJhZGlvLXVuY2hlY2tlZDpiZWZvcmV7Y29udGVudDpcIlxcZWU3MFwiO31cbi5pY29uLWNoZWNrbWFyay1jaXJjbGU6YmVmb3Jle2NvbnRlbnQ6XCJcXGVlNzNcIjt9XG4uaWNvbi1jaXJjbGU6YmVmb3Jle2NvbnRlbnQ6XCJcXGVlNzRcIjt9XG4uaWNvbi1jaXJjbGUyOmJlZm9yZXtjb250ZW50OlwiXFxlZTc1XCI7fVxuLmljb24tY2lyY2xlczpiZWZvcmV7Y29udGVudDpcIlxcZWU3NlwiO31cbi5pY29uLWNpcmNsZXMyOmJlZm9yZXtjb250ZW50OlwiXFxlZTc3XCI7fVxuLmljb24tY3JvcDpiZWZvcmV7Y29udGVudDpcIlxcZWU3OFwiO31cbi5pY29uLWNyb3AyOmJlZm9yZXtjb250ZW50OlwiXFxlZTc5XCI7fVxuLmljb24tbWFrZS1ncm91cDpiZWZvcmV7Y29udGVudDpcIlxcZWU3YVwiO31cbi5pY29uLXVuZ3JvdXA6YmVmb3Jle2NvbnRlbnQ6XCJcXGVlN2JcIjt9XG4uaWNvbi12ZWN0b3I6YmVmb3Jle2NvbnRlbnQ6XCJcXGVlN2NcIjt9XG4uaWNvbi12ZWN0b3IyOmJlZm9yZXtjb250ZW50OlwiXFxlZTdkXCI7fVxuLmljb24tcnVsZXJzOmJlZm9yZXtjb250ZW50OlwiXFxlZTdlXCI7fVxuLmljb24tcGVuY2lsLXJ1bGVyOmJlZm9yZXtjb250ZW50OlwiXFxlZTgwXCI7fVxuLmljb24tc2Npc3NvcnM6YmVmb3Jle2NvbnRlbnQ6XCJcXGVlODFcIjt9XG4uaWNvbi1maWx0ZXIzOmJlZm9yZXtjb250ZW50OlwiXFxlZTg4XCI7fVxuLmljb24tZmlsdGVyNDpiZWZvcmV7Y29udGVudDpcIlxcZWU4OVwiO31cbi5pY29uLWZvbnQ6YmVmb3Jle2NvbnRlbnQ6XCJcXGVlOGFcIjt9XG4uaWNvbi1hbXBlcnNhbmQyOmJlZm9yZXtjb250ZW50OlwiXFxlZThiXCI7fVxuLmljb24tbGlnYXR1cmU6YmVmb3Jle2NvbnRlbnQ6XCJcXGVlOGNcIjt9XG4uaWNvbi1mb250LXNpemU6YmVmb3Jle2NvbnRlbnQ6XCJcXGVlOGVcIjt9XG4uaWNvbi10eXBvZ3JhcGh5OmJlZm9yZXtjb250ZW50OlwiXFxlZThmXCI7fVxuLmljb24tdGV4dC1oZWlnaHQ6YmVmb3Jle2NvbnRlbnQ6XCJcXGVlOTBcIjt9XG4uaWNvbi10ZXh0LXdpZHRoOmJlZm9yZXtjb250ZW50OlwiXFxlZTkxXCI7fVxuLmljb24taGVpZ2h0MjpiZWZvcmV7Y29udGVudDpcIlxcZWU5MlwiO31cbi5pY29uLXdpZHRoOmJlZm9yZXtjb250ZW50OlwiXFxlZTkzXCI7fVxuLmljb24tc3RyaWtldGhyb3VnaDI6YmVmb3Jle2NvbnRlbnQ6XCJcXGVlOThcIjt9XG4uaWNvbi1mb250LXNpemUyOmJlZm9yZXtjb250ZW50OlwiXFxlZTk5XCI7fVxuLmljb24tYm9sZDI6YmVmb3Jle2NvbnRlbnQ6XCJcXGVlOWFcIjt9XG4uaWNvbi11bmRlcmxpbmUyOmJlZm9yZXtjb250ZW50OlwiXFxlZTliXCI7fVxuLmljb24taXRhbGljMjpiZWZvcmV7Y29udGVudDpcIlxcZWU5Y1wiO31cbi5pY29uLXN0cmlrZXRocm91Z2gzOmJlZm9yZXtjb250ZW50OlwiXFxlZTlkXCI7fVxuLmljb24tb21lZ2E6YmVmb3Jle2NvbnRlbnQ6XCJcXGVlOWVcIjt9XG4uaWNvbi1zaWdtYTpiZWZvcmV7Y29udGVudDpcIlxcZWU5ZlwiO31cbi5pY29uLW5ic3A6YmVmb3Jle2NvbnRlbnQ6XCJcXGVlYTBcIjt9XG4uaWNvbi1wYWdlLWJyZWFrOmJlZm9yZXtjb250ZW50OlwiXFxlZWExXCI7fVxuLmljb24tcGFnZS1icmVhazI6YmVmb3Jle2NvbnRlbnQ6XCJcXGVlYTJcIjt9XG4uaWNvbi1zdXBlcnNjcmlwdDpiZWZvcmV7Y29udGVudDpcIlxcZWVhM1wiO31cbi5pY29uLXN1YnNjcmlwdDpiZWZvcmV7Y29udGVudDpcIlxcZWVhNFwiO31cbi5pY29uLXN1cGVyc2NyaXB0MjpiZWZvcmV7Y29udGVudDpcIlxcZWVhNVwiO31cbi5pY29uLXN1YnNjcmlwdDI6YmVmb3Jle2NvbnRlbnQ6XCJcXGVlYTZcIjt9XG4uaWNvbi10ZXh0LWNvbG9yOmJlZm9yZXtjb250ZW50OlwiXFxlZWE3XCI7fVxuLmljb24taGlnaGxpZ2h0OmJlZm9yZXtjb250ZW50OlwiXFxlZWE4XCI7fVxuLmljb24tcGFnZWJyZWFrOmJlZm9yZXtjb250ZW50OlwiXFxlZWE5XCI7fVxuLmljb24tY2xlYXItZm9ybWF0dGluZzpiZWZvcmV7Y29udGVudDpcIlxcZWVhYVwiO31cbi5pY29uLXRhYmxlOmJlZm9yZXtjb250ZW50OlwiXFxlZWFiXCI7fVxuLmljb24tdGFibGUyOmJlZm9yZXtjb250ZW50OlwiXFxlZWFjXCI7fVxuLmljb24taW5zZXJ0LXRlbXBsYXRlOmJlZm9yZXtjb250ZW50OlwiXFxlZWFkXCI7fVxuLmljb24tcGlsY3JvdzpiZWZvcmV7Y29udGVudDpcIlxcZWVhZVwiO31cbi5pY29uLWx0cjpiZWZvcmV7Y29udGVudDpcIlxcZWVhZlwiO31cbi5pY29uLXJ0bDpiZWZvcmV7Y29udGVudDpcIlxcZWViMFwiO31cbi5pY29uLWx0cjI6YmVmb3Jle2NvbnRlbnQ6XCJcXGVlYjFcIjt9XG4uaWNvbi1ydGwyOmJlZm9yZXtjb250ZW50OlwiXFxlZWIyXCI7fVxuLmljb24tc2VjdGlvbjpiZWZvcmV7Y29udGVudDpcIlxcZWViM1wiO31cbi5pY29uLXBhcmFncmFwaC1sZWZ0MjpiZWZvcmV7Y29udGVudDpcIlxcZWViOFwiO31cbi5pY29uLXBhcmFncmFwaC1jZW50ZXIyOmJlZm9yZXtjb250ZW50OlwiXFxlZWI5XCI7fVxuLmljb24tcGFyYWdyYXBoLXJpZ2h0MjpiZWZvcmV7Y29udGVudDpcIlxcZWViYVwiO31cbi5pY29uLXBhcmFncmFwaC1qdXN0aWZ5MjpiZWZvcmV7Y29udGVudDpcIlxcZWViYlwiO31cbi5pY29uLWluZGVudC1pbmNyZWFzZTpiZWZvcmV7Y29udGVudDpcIlxcZWViY1wiO31cbi5pY29uLWluZGVudC1kZWNyZWFzZTpiZWZvcmV7Y29udGVudDpcIlxcZWViZFwiO31cbi5pY29uLXBhcmFncmFwaC1sZWZ0MzpiZWZvcmV7Y29udGVudDpcIlxcZWViZVwiO31cbi5pY29uLXBhcmFncmFwaC1jZW50ZXIzOmJlZm9yZXtjb250ZW50OlwiXFxlZWJmXCI7fVxuLmljb24tcGFyYWdyYXBoLXJpZ2h0MzpiZWZvcmV7Y29udGVudDpcIlxcZWVjMFwiO31cbi5pY29uLXBhcmFncmFwaC1qdXN0aWZ5MzpiZWZvcmV7Y29udGVudDpcIlxcZWVjMVwiO31cbi5pY29uLWluZGVudC1pbmNyZWFzZTI6YmVmb3Jle2NvbnRlbnQ6XCJcXGVlYzJcIjt9XG4uaWNvbi1pbmRlbnQtZGVjcmVhc2UyOmJlZm9yZXtjb250ZW50OlwiXFxlZWMzXCI7fVxuLmljb24tc2hhcmU6YmVmb3Jle2NvbnRlbnQ6XCJcXGVlYzRcIjt9XG4uaWNvbi1zaGFyZTI6YmVmb3Jle2NvbnRlbnQ6XCJcXGVlYzVcIjt9XG4uaWNvbi1uZXctdGFiOmJlZm9yZXtjb250ZW50OlwiXFxlZWM2XCI7fVxuLmljb24tbmV3LXRhYjI6YmVmb3Jle2NvbnRlbnQ6XCJcXGVlYzdcIjt9XG4uaWNvbi1wb3BvdXQ6YmVmb3Jle2NvbnRlbnQ6XCJcXGVlYzhcIjt9XG4uaWNvbi1lbWJlZDpiZWZvcmV7Y29udGVudDpcIlxcZWVjOVwiO31cbi5pY29uLWVtYmVkMjpiZWZvcmV7Y29udGVudDpcIlxcZWVjYVwiO31cbi5pY29uLW1hcmt1cDpiZWZvcmV7Y29udGVudDpcIlxcZWVjYlwiO31cbi5pY29uLXJlZ2V4cDpiZWZvcmV7Y29udGVudDpcIlxcZWVjY1wiO31cbi5pY29uLXJlZ2V4cDI6YmVmb3Jle2NvbnRlbnQ6XCJcXGVlY2RcIjt9XG4uaWNvbi1jb2RlOmJlZm9yZXtjb250ZW50OlwiXFxlZWNlXCI7fVxuLmljb24tY2lyY2xlLWNzczpiZWZvcmV7Y29udGVudDpcIlxcZWVjZlwiO31cbi5pY29uLWNpcmNsZS1jb2RlOmJlZm9yZXtjb250ZW50OlwiXFxlZWQwXCI7fVxuLmljb24tdGVybWluYWw6YmVmb3Jle2NvbnRlbnQ6XCJcXGVlZDFcIjt9XG4uaWNvbi11bmljb2RlOmJlZm9yZXtjb250ZW50OlwiXFxlZWQyXCI7fVxuLmljb24tc2V2ZW4tc2VnbWVudC0wOmJlZm9yZXtjb250ZW50OlwiXFxlZWQzXCI7fVxuLmljb24tc2V2ZW4tc2VnbWVudC0xOmJlZm9yZXtjb250ZW50OlwiXFxlZWQ0XCI7fVxuLmljb24tc2V2ZW4tc2VnbWVudC0yOmJlZm9yZXtjb250ZW50OlwiXFxlZWQ1XCI7fVxuLmljb24tc2V2ZW4tc2VnbWVudC0zOmJlZm9yZXtjb250ZW50OlwiXFxlZWQ2XCI7fVxuLmljb24tc2V2ZW4tc2VnbWVudC00OmJlZm9yZXtjb250ZW50OlwiXFxlZWQ3XCI7fVxuLmljb24tc2V2ZW4tc2VnbWVudC01OmJlZm9yZXtjb250ZW50OlwiXFxlZWQ4XCI7fVxuLmljb24tc2V2ZW4tc2VnbWVudC02OmJlZm9yZXtjb250ZW50OlwiXFxlZWQ5XCI7fVxuLmljb24tc2V2ZW4tc2VnbWVudC03OmJlZm9yZXtjb250ZW50OlwiXFxlZWRhXCI7fVxuLmljb24tc2V2ZW4tc2VnbWVudC04OmJlZm9yZXtjb250ZW50OlwiXFxlZWRiXCI7fVxuLmljb24tc2V2ZW4tc2VnbWVudC05OmJlZm9yZXtjb250ZW50OlwiXFxlZWRjXCI7fVxuLmljb24tc2hhcmUzOmJlZm9yZXtjb250ZW50OlwiXFxlZWRkXCI7fVxuLmljb24tc2hhcmU0OmJlZm9yZXtjb250ZW50OlwiXFxlZWRlXCI7fVxuLmljb24tZ29vZ2xlOmJlZm9yZXtjb250ZW50OlwiXFxlZWUzXCI7fVxuLmljb24tZ29vZ2xlLXBsdXM6YmVmb3Jle2NvbnRlbnQ6XCJcXGVlZTRcIjt9XG4uaWNvbi1nb29nbGUtcGx1czI6YmVmb3Jle2NvbnRlbnQ6XCJcXGVlZTVcIjt9XG4uaWNvbi1nb29nbGUtZHJpdmU6YmVmb3Jle2NvbnRlbnQ6XCJcXGVlZTdcIjt9XG4uaWNvbi1mYWNlYm9vazpiZWZvcmV7Y29udGVudDpcIlxcZWVlOFwiO31cbi5pY29uLWZhY2Vib29rMjpiZWZvcmV7Y29udGVudDpcIlxcZWVlOVwiO31cbi5pY29uLWluc3RhZ3JhbTpiZWZvcmV7Y29udGVudDpcIlxcZWVlY1wiO31cbi5pY29uLXR3aXR0ZXI6YmVmb3Jle2NvbnRlbnQ6XCJcXGVlZWRcIjt9XG4uaWNvbi10d2l0dGVyMjpiZWZvcmV7Y29udGVudDpcIlxcZWVlZVwiO31cbi5pY29uLWZlZWQyOmJlZm9yZXtjb250ZW50OlwiXFxlZWYwXCI7fVxuLmljb24tZmVlZDM6YmVmb3Jle2NvbnRlbnQ6XCJcXGVlZjFcIjt9XG4uaWNvbi15b3V0dWJlOmJlZm9yZXtjb250ZW50OlwiXFxlZWYzXCI7fVxuLmljb24teW91dHViZTI6YmVmb3Jle2NvbnRlbnQ6XCJcXGVlZjRcIjt9XG4uaWNvbi15b3V0dWJlMzpiZWZvcmV7Y29udGVudDpcIlxcZWVmNVwiO31cbi5pY29uLXZpbWVvOmJlZm9yZXtjb250ZW50OlwiXFxlZWY4XCI7fVxuLmljb24tdmltZW8yOmJlZm9yZXtjb250ZW50OlwiXFxlZWY5XCI7fVxuLmljb24tbGFueXJkOmJlZm9yZXtjb250ZW50OlwiXFxlZWZiXCI7fVxuLmljb24tZmxpY2tyOmJlZm9yZXtjb250ZW50OlwiXFxlZWZjXCI7fVxuLmljb24tZmxpY2tyMjpiZWZvcmV7Y29udGVudDpcIlxcZWVmZFwiO31cbi5pY29uLWZsaWNrcjM6YmVmb3Jle2NvbnRlbnQ6XCJcXGVlZmVcIjt9XG4uaWNvbi1waWNhc3NhOmJlZm9yZXtjb250ZW50OlwiXFxlZjAwXCI7fVxuLmljb24tcGljYXNzYTI6YmVmb3Jle2NvbnRlbnQ6XCJcXGVmMDFcIjt9XG4uaWNvbi1kcmliYmJsZTpiZWZvcmV7Y29udGVudDpcIlxcZWYwMlwiO31cbi5pY29uLWRyaWJiYmxlMjpiZWZvcmV7Y29udGVudDpcIlxcZWYwM1wiO31cbi5pY29uLWRyaWJiYmxlMzpiZWZvcmV7Y29udGVudDpcIlxcZWYwNFwiO31cbi5pY29uLWZvcnJzdDpiZWZvcmV7Y29udGVudDpcIlxcZWYwNVwiO31cbi5pY29uLWZvcnJzdDI6YmVmb3Jle2NvbnRlbnQ6XCJcXGVmMDZcIjt9XG4uaWNvbi1kZXZpYW50YXJ0OmJlZm9yZXtjb250ZW50OlwiXFxlZjA3XCI7fVxuLmljb24tZGV2aWFudGFydDI6YmVmb3Jle2NvbnRlbnQ6XCJcXGVmMDhcIjt9XG4uaWNvbi1zdGVhbTpiZWZvcmV7Y29udGVudDpcIlxcZWYwOVwiO31cbi5pY29uLXN0ZWFtMjpiZWZvcmV7Y29udGVudDpcIlxcZWYwYVwiO31cbi5pY29uLWRyb3Bib3g6YmVmb3Jle2NvbnRlbnQ6XCJcXGVmMGJcIjt9XG4uaWNvbi1vbmVkcml2ZTpiZWZvcmV7Y29udGVudDpcIlxcZWYwY1wiO31cbi5pY29uLWdpdGh1YjpiZWZvcmV7Y29udGVudDpcIlxcZWYwZFwiO31cbi5pY29uLWdpdGh1YjQ6YmVmb3Jle2NvbnRlbnQ6XCJcXGVmMTBcIjt9XG4uaWNvbi1naXRodWI1OmJlZm9yZXtjb250ZW50OlwiXFxlZjExXCI7fVxuLmljb24td29yZHByZXNzOmJlZm9yZXtjb250ZW50OlwiXFxlZjEyXCI7fVxuLmljb24td29yZHByZXNzMjpiZWZvcmV7Y29udGVudDpcIlxcZWYxM1wiO31cbi5pY29uLWpvb21sYTpiZWZvcmV7Y29udGVudDpcIlxcZWYxNFwiO31cbi5pY29uLWJsb2dnZXI6YmVmb3Jle2NvbnRlbnQ6XCJcXGVmMTVcIjt9XG4uaWNvbi1ibG9nZ2VyMjpiZWZvcmV7Y29udGVudDpcIlxcZWYxNlwiO31cbi5pY29uLXR1bWJscjpiZWZvcmV7Y29udGVudDpcIlxcZWYxN1wiO31cbi5pY29uLXR1bWJscjI6YmVmb3Jle2NvbnRlbnQ6XCJcXGVmMThcIjt9XG4uaWNvbi15YWhvbzpiZWZvcmV7Y29udGVudDpcIlxcZWYxOVwiO31cbi5pY29uLXR1eDpiZWZvcmV7Y29udGVudDpcIlxcZWYxYVwiO31cbi5pY29uLWFwcGxlMjpiZWZvcmV7Y29udGVudDpcIlxcZWYxYlwiO31cbi5pY29uLWZpbmRlcjpiZWZvcmV7Y29udGVudDpcIlxcZWYxY1wiO31cbi5pY29uLWFuZHJvaWQ6YmVmb3Jle2NvbnRlbnQ6XCJcXGVmMWRcIjt9XG4uaWNvbi13aW5kb3dzOmJlZm9yZXtjb250ZW50OlwiXFxlZjFlXCI7fVxuLmljb24td2luZG93czg6YmVmb3Jle2NvbnRlbnQ6XCJcXGVmMWZcIjt9XG4uaWNvbi1zb3VuZGNsb3VkOmJlZm9yZXtjb250ZW50OlwiXFxlZjIwXCI7fVxuLmljb24tc291bmRjbG91ZDI6YmVmb3Jle2NvbnRlbnQ6XCJcXGVmMjFcIjt9XG4uaWNvbi1za3lwZTpiZWZvcmV7Y29udGVudDpcIlxcZWYyMlwiO31cbi5pY29uLXJlZGRpdDpiZWZvcmV7Y29udGVudDpcIlxcZWYyM1wiO31cbi5pY29uLWxpbmtlZGluOmJlZm9yZXtjb250ZW50OlwiXFxlZjI0XCI7fVxuLmljb24tbGlua2VkaW4yOmJlZm9yZXtjb250ZW50OlwiXFxlZjI1XCI7fVxuLmljb24tbGFzdGZtOmJlZm9yZXtjb250ZW50OlwiXFxlZjI2XCI7fVxuLmljb24tbGFzdGZtMjpiZWZvcmV7Y29udGVudDpcIlxcZWYyN1wiO31cbi5pY29uLWRlbGljaW91czpiZWZvcmV7Y29udGVudDpcIlxcZWYyOFwiO31cbi5pY29uLXN0dW1ibGV1cG9uOmJlZm9yZXtjb250ZW50OlwiXFxlZjI5XCI7fVxuLmljb24tc3R1bWJsZXVwb24yOmJlZm9yZXtjb250ZW50OlwiXFxlZjJhXCI7fVxuLmljb24tc3RhY2tvdmVyZmxvdzpiZWZvcmV7Y29udGVudDpcIlxcZWYyYlwiO31cbi5pY29uLXBpbnRlcmVzdDI6YmVmb3Jle2NvbnRlbnQ6XCJcXGVmMmRcIjt9XG4uaWNvbi14aW5nOmJlZm9yZXtjb250ZW50OlwiXFxlZjJlXCI7fVxuLmljb24tZmxhdHRyOmJlZm9yZXtjb250ZW50OlwiXFxlZjMwXCI7fVxuLmljb24tZm91cnNxdWFyZTpiZWZvcmV7Y29udGVudDpcIlxcZWYzMVwiO31cbi5pY29uLXBheXBhbDpiZWZvcmV7Y29udGVudDpcIlxcZWYzMlwiO31cbi5pY29uLXBheXBhbDI6YmVmb3Jle2NvbnRlbnQ6XCJcXGVmMzNcIjt9XG4uaWNvbi15ZWxwOmJlZm9yZXtjb250ZW50OlwiXFxlZjM1XCI7fVxuLmljb24tZmlsZS1wZGY6YmVmb3Jle2NvbnRlbnQ6XCJcXGVmMzZcIjt9XG4uaWNvbi1maWxlLW9wZW5vZmZpY2U6YmVmb3Jle2NvbnRlbnQ6XCJcXGVmMzdcIjt9XG4uaWNvbi1maWxlLXdvcmQ6YmVmb3Jle2NvbnRlbnQ6XCJcXGVmMzhcIjt9XG4uaWNvbi1maWxlLWV4Y2VsOmJlZm9yZXtjb250ZW50OlwiXFxlZjM5XCI7fVxuLmljb24tbGlicmVvZmZpY2U6YmVmb3Jle2NvbnRlbnQ6XCJcXGVmM2FcIjt9XG4uaWNvbi1odG1sNTpiZWZvcmV7Y29udGVudDpcIlxcZWYzYlwiO31cbi5pY29uLWh0bWw1MjpiZWZvcmV7Y29udGVudDpcIlxcZWYzY1wiO31cbi5pY29uLWNzczM6YmVmb3Jle2NvbnRlbnQ6XCJcXGVmM2RcIjt9XG4uaWNvbi1naXQ6YmVmb3Jle2NvbnRlbnQ6XCJcXGVmM2VcIjt9XG4uaWNvbi1zdmc6YmVmb3Jle2NvbnRlbnQ6XCJcXGVmM2ZcIjt9XG4uaWNvbi1jb2RlcGVuOmJlZm9yZXtjb250ZW50OlwiXFxlZjQwXCI7fVxuLmljb24tY2hyb21lOmJlZm9yZXtjb250ZW50OlwiXFxlZjQxXCI7fVxuLmljb24tZmlyZWZveDpiZWZvcmV7Y29udGVudDpcIlxcZWY0MlwiO31cbi5pY29uLUlFOmJlZm9yZXtjb250ZW50OlwiXFxlZjQzXCI7fVxuLmljb24tb3BlcmE6YmVmb3Jle2NvbnRlbnQ6XCJcXGVmNDRcIjt9XG4uaWNvbi1zYWZhcmk6YmVmb3Jle2NvbnRlbnQ6XCJcXGVmNDVcIjt9XG4uaWNvbi1jaGVjazI6YmVmb3Jle2NvbnRlbnQ6XCJcXGU2MDFcIjt9XG4uaWNvbi1ob21lNDpiZWZvcmV7Y29udGVudDpcIlxcZTYwM1wiO31cbi5pY29uLXBlb3BsZTpiZWZvcmV7Y29udGVudDpcIlxcZTgxYlwiO31cbi5pY29uLWNoZWNrbWFyay1jaXJjbGUyOmJlZm9yZXtjb250ZW50OlwiXFxlODUzXCI7fVxuLmljb24tYXJyb3ctdXAtbGVmdDMyOmJlZm9yZXtjb250ZW50OlwiXFxlOGFlXCI7fVxuLmljb24tYXJyb3ctdXA1MjpiZWZvcmV7Y29udGVudDpcIlxcZThhZlwiO31cbi5pY29uLWFycm93LXVwLXJpZ2h0MzI6YmVmb3Jle2NvbnRlbnQ6XCJcXGU4YjBcIjt9XG4uaWNvbi1hcnJvdy1yaWdodDY6YmVmb3Jle2NvbnRlbnQ6XCJcXGU4YjFcIjt9XG4uaWNvbi1hcnJvdy1kb3duLXJpZ2h0MzI6YmVmb3Jle2NvbnRlbnQ6XCJcXGU4YjJcIjt9XG4uaWNvbi1hcnJvdy1kb3duNTI6YmVmb3Jle2NvbnRlbnQ6XCJcXGU4YjNcIjt9XG4uaWNvbi1hcnJvdy1kb3duLWxlZnQzMjpiZWZvcmV7Y29udGVudDpcIlxcZThiNFwiO31cbi5pY29uLWFycm93LWxlZnQ1MjpiZWZvcmV7Y29udGVudDpcIlxcZThiNVwiO31cbi5pY29uLWNhbGVuZGFyNTpiZWZvcmV7Y29udGVudDpcIlxcZTk4NVwiO31cbi5pY29uLW1vdmUtYWx0MTpiZWZvcmV7Y29udGVudDpcIlxcZTk4NlwiO31cbi5pY29uLXJlbG9hZC1hbHQ6YmVmb3Jle2NvbnRlbnQ6XCJcXGU5ODdcIjt9XG4uaWNvbi1tb3ZlLXZlcnRpY2FsOmJlZm9yZXtjb250ZW50OlwiXFxlOTg4XCI7fVxuLmljb24tbW92ZS1ob3Jpem9udGFsOmJlZm9yZXtjb250ZW50OlwiXFxlOTg5XCI7fVxuLmljb24taGFzaDpiZWZvcmV7Y29udGVudDpcIlxcZTk4YlwiO31cbi5pY29uLWJhcnMtYWx0OmJlZm9yZXtjb250ZW50OlwiXFxlOThjXCI7fVxuLmljb24tZXllODpiZWZvcmV7Y29udGVudDpcIlxcZTk4ZFwiO31cbi5pY29uLXNlYXJjaDQ6YmVmb3Jle2NvbnRlbnQ6XCJcXGU5OGVcIjt9XG4uaWNvbi16b29taW4zOmJlZm9yZXtjb250ZW50OlwiXFxlOThmXCI7fVxuLmljb24tem9vbW91dDM6YmVmb3Jle2NvbnRlbnQ6XCJcXGU5OTBcIjt9XG4uaWNvbi1hZGQ6YmVmb3Jle2NvbnRlbnQ6XCJcXGU5OTFcIjt9XG4uaWNvbi1zdWJ0cmFjdDpiZWZvcmV7Y29udGVudDpcIlxcZTk5MlwiO31cbi5pY29uLWV4Y2xhbWF0aW9uOmJlZm9yZXtjb250ZW50OlwiXFxlOTkzXCI7fVxuLmljb24tcXVlc3Rpb242OmJlZm9yZXtjb250ZW50OlwiXFxlOTk0XCI7fVxuLmljb24tY2xvc2UyOmJlZm9yZXtjb250ZW50OlwiXFxlOTk1XCI7fVxuLmljb24tdGFzazpiZWZvcmV7Y29udGVudDpcIlxcZTk5NlwiO31cbi5pY29uLWluYm94OmJlZm9yZXtjb250ZW50OlwiXFxlOTk3XCI7fVxuLmljb24taW5ib3gtYWx0OmJlZm9yZXtjb250ZW50OlwiXFxlOTk4XCI7fVxuLmljb24tZW52ZWxvcGU6YmVmb3Jle2NvbnRlbnQ6XCJcXGU5OTlcIjt9XG4uaWNvbi1jb21wb3NlOmJlZm9yZXtjb250ZW50OlwiXFxlOTlhXCI7fVxuLmljb24tbmV3c3BhcGVyMjpiZWZvcmV7Y29udGVudDpcIlxcZTk5YlwiO31cbi5pY29uLWNhbGVuZGFyMjI6YmVmb3Jle2NvbnRlbnQ6XCJcXGU5OWNcIjt9XG4uaWNvbi1oeXBlcmxpbms6YmVmb3Jle2NvbnRlbnQ6XCJcXGU5OWRcIjt9XG4uaWNvbi10cmFzaDpiZWZvcmV7Y29udGVudDpcIlxcZTk5ZVwiO31cbi5pY29uLXRyYXNoLWFsdDpiZWZvcmV7Y29udGVudDpcIlxcZTk5ZlwiO31cbi5pY29uLWdyaWQ1OmJlZm9yZXtjb250ZW50OlwiXFxlOWEwXCI7fVxuLmljb24tZ3JpZC1hbHQ6YmVmb3Jle2NvbnRlbnQ6XCJcXGU5YTFcIjt9XG4uaWNvbi1tZW51NjpiZWZvcmV7Y29udGVudDpcIlxcZTlhMlwiO31cbi5pY29uLWxpc3QzOmJlZm9yZXtjb250ZW50OlwiXFxlOWEzXCI7fVxuLmljb24tZ2FsbGVyeTpiZWZvcmV7Y29udGVudDpcIlxcZTlhNFwiO31cbi5pY29uLWNhbGN1bGF0b3I6YmVmb3Jle2NvbnRlbnQ6XCJcXGU5YTVcIjt9XG4uaWNvbi13aW5kb3dzMjpiZWZvcmV7Y29udGVudDpcIlxcZTlhNlwiO31cbi5pY29uLWJyb3dzZXI6YmVmb3Jle2NvbnRlbnQ6XCJcXGU5YTdcIjt9XG4uaWNvbi1wb3J0Zm9saW86YmVmb3Jle2NvbnRlbnQ6XCJcXGU5YThcIjt9XG4uaWNvbi1jb21tZW50czpiZWZvcmV7Y29udGVudDpcIlxcZTlhOVwiO31cbi5pY29uLXNjcmVlbjM6YmVmb3Jle2NvbnRlbnQ6XCJcXGU5YWFcIjt9XG4uaWNvbi1pcGhvbmU6YmVmb3Jle2NvbnRlbnQ6XCJcXGU5YWJcIjt9XG4uaWNvbi1pcGFkOmJlZm9yZXtjb250ZW50OlwiXFxlOWFjXCI7fVxuLmljb24tZ29vZ2xlcGx1czU6YmVmb3Jle2NvbnRlbnQ6XCJcXGU5YWRcIjt9XG4uaWNvbi1waW46YmVmb3Jle2NvbnRlbnQ6XCJcXGU5YWVcIjt9XG4uaWNvbi1waW4tYWx0OmJlZm9yZXtjb250ZW50OlwiXFxlOWFmXCI7fVxuLmljb24tY29nNTpiZWZvcmV7Y29udGVudDpcIlxcZTliMFwiO31cbi5pY29uLWdyYWR1YXRpb246YmVmb3Jle2NvbnRlbnQ6XCJcXGU5YjFcIjt9XG4uaWNvbi1haXI6YmVmb3Jle2NvbnRlbnQ6XCJcXGU5YjJcIjt9XG4uaWNvbi1kcm9wbGV0czpiZWZvcmV7Y29udGVudDpcIlxcZTdlZVwiO31cbi5pY29uLXN0YXRpc3RpY3M6YmVmb3Jle2NvbnRlbnQ6XCJcXGU5YjRcIjt9XG4uaWNvbi1waWU1OmJlZm9yZXtjb250ZW50OlwiXFxlN2VmXCI7fVxuLmljb24tY3Jvc3M6YmVmb3Jle2NvbnRlbnQ6XCJcXGU5YjZcIjt9XG4uaWNvbi1taW51czI6YmVmb3Jle2NvbnRlbnQ6XCJcXGU5YjdcIjt9XG4uaWNvbi1wbHVzMjpiZWZvcmV7Y29udGVudDpcIlxcZTliOFwiO31cbi5pY29uLWluZm8zOmJlZm9yZXtjb250ZW50OlwiXFxlOWI5XCI7fVxuLmljb24taW5mbzIyOmJlZm9yZXtjb250ZW50OlwiXFxlOWJhXCI7fVxuLmljb24tcXVlc3Rpb243OmJlZm9yZXtjb250ZW50OlwiXFxlOWJiXCI7fVxuLmljb24taGVscDpiZWZvcmV7Y29udGVudDpcIlxcZTliY1wiO31cbi5pY29uLXdhcm5pbmcyOmJlZm9yZXtjb250ZW50OlwiXFxlOWJkXCI7fVxuLmljb24tYWRkLXRvLWxpc3Q6YmVmb3Jle2NvbnRlbnQ6XCJcXGU5YmZcIjt9XG4uaWNvbi1hcnJvdy1sZWZ0MTI6YmVmb3Jle2NvbnRlbnQ6XCJcXGU5YzBcIjt9XG4uaWNvbi1hcnJvdy1kb3duMTI6YmVmb3Jle2NvbnRlbnQ6XCJcXGU5YzFcIjt9XG4uaWNvbi1hcnJvdy11cDEyOmJlZm9yZXtjb250ZW50OlwiXFxlOWMyXCI7fVxuLmljb24tYXJyb3ctcmlnaHQxMzpiZWZvcmV7Y29udGVudDpcIlxcZTljM1wiO31cbi5pY29uLWFycm93LWxlZnQyMjpiZWZvcmV7Y29udGVudDpcIlxcZTljNFwiO31cbi5pY29uLWFycm93LWRvd24yMjpiZWZvcmV7Y29udGVudDpcIlxcZTljNVwiO31cbi5pY29uLWFycm93LXVwMjI6YmVmb3Jle2NvbnRlbnQ6XCJcXGU5YzZcIjt9XG4uaWNvbi1hcnJvdy1yaWdodDIyOmJlZm9yZXtjb250ZW50OlwiXFxlOWM3XCI7fVxuLmljb24tYXJyb3ctbGVmdDMyOmJlZm9yZXtjb250ZW50OlwiXFxlOWM4XCI7fVxuLmljb24tYXJyb3ctZG93bjMyOmJlZm9yZXtjb250ZW50OlwiXFxlOWM5XCI7fVxuLmljb24tYXJyb3ctdXAzMjpiZWZvcmV7Y29udGVudDpcIlxcZTljYVwiO31cbi5pY29uLWFycm93LXJpZ2h0MzI6YmVmb3Jle2NvbnRlbnQ6XCJcXGU5Y2JcIjt9XG4uaWNvbi1zd2l0Y2gyOmJlZm9yZXtjb250ZW50OlwiXFxlNjQ3XCI7fVxuLmljb24tY2hlY2ttYXJrNTpiZWZvcmV7Y29udGVudDpcIlxcZTYwMFwiO31cbi5pY29uLWFtcGVyc2FuZDpiZWZvcmV7Y29udGVudDpcIlxcZTljY1wiO31cbi5pY29uLWFsZXJ0OmJlZm9yZXtjb250ZW50OlwiXFxlOWNmXCI7fVxuLmljb24tYWxpZ25tZW50LWFsaWduOmJlZm9yZXtjb250ZW50OlwiXFxlOWQwXCI7fVxuLmljb24tYWxpZ25tZW50LWFsaWduZWQtdG86YmVmb3Jle2NvbnRlbnQ6XCJcXGU5ZDFcIjt9XG4uaWNvbi1hbGlnbm1lbnQtdW5hbGlnbjpiZWZvcmV7Y29udGVudDpcIlxcZTlkMlwiO31cbi5pY29uLWFycm93LWRvd24xMzI6YmVmb3Jle2NvbnRlbnQ6XCJcXGU5ZDNcIjt9XG4uaWNvbi1hcnJvdy11cDEzOmJlZm9yZXtjb250ZW50OlwiXFxlOWRhXCI7fVxuLmljb24tYXJyb3ctbGVmdDEzOmJlZm9yZXtjb250ZW50OlwiXFxlOWQ0XCI7fVxuLmljb24tYXJyb3ctcmlnaHQxNDpiZWZvcmV7Y29udGVudDpcIlxcZTlkNVwiO31cbi5pY29uLWFycm93LXNtYWxsLWRvd246YmVmb3Jle2NvbnRlbnQ6XCJcXGU5ZDZcIjt9XG4uaWNvbi1hcnJvdy1zbWFsbC1sZWZ0OmJlZm9yZXtjb250ZW50OlwiXFxlOWQ3XCI7fVxuLmljb24tYXJyb3ctc21hbGwtcmlnaHQ6YmVmb3Jle2NvbnRlbnQ6XCJcXGU5ZDhcIjt9XG4uaWNvbi1hcnJvdy1zbWFsbC11cDpiZWZvcmV7Y29udGVudDpcIlxcZTlkOVwiO31cbi5pY29uLWNoZWNrOmJlZm9yZXtjb250ZW50OlwiXFxlOWRiXCI7fVxuLmljb24tY2hldnJvbi1kb3duOmJlZm9yZXtjb250ZW50OlwiXFxlOWRjXCI7fVxuLmljb24tY2hldnJvbi1sZWZ0OmJlZm9yZXtjb250ZW50OlwiXFxlOWRkXCI7fVxuLmljb24tY2hldnJvbi1yaWdodDpiZWZvcmV7Y29udGVudDpcIlxcZTlkZVwiO31cbi5pY29uLWNoZXZyb24tdXA6YmVmb3Jle2NvbnRlbnQ6XCJcXGU5ZGZcIjt9XG4uaWNvbi1jbGlwcHk6YmVmb3Jle2NvbnRlbnQ6XCJcXGYwMzVcIjt9XG4uaWNvbi1jb21tZW50OmJlZm9yZXtjb250ZW50OlwiXFxmMDJiXCI7fVxuLmljb24tY29tbWVudC1kaXNjdXNzaW9uOmJlZm9yZXtjb250ZW50OlwiXFxmMDRmXCI7fVxuLmljb24tZGFzaDpiZWZvcmV7Y29udGVudDpcIlxcZTllMlwiO31cbi5pY29uLWRpZmY6YmVmb3Jle2NvbnRlbnQ6XCJcXGU5ZTNcIjt9XG4uaWNvbi1kaWZmLWFkZGVkOmJlZm9yZXtjb250ZW50OlwiXFxlOWU0XCI7fVxuLmljb24tZGlmZi1pZ25vcmVkOmJlZm9yZXtjb250ZW50OlwiXFxlOWU1XCI7fVxuLmljb24tZGlmZi1tb2RpZmllZDpiZWZvcmV7Y29udGVudDpcIlxcZTllNlwiO31cbi5pY29uLWRpZmYtcmVtb3ZlZDpiZWZvcmV7Y29udGVudDpcIlxcZTllN1wiO31cbi5pY29uLWRpZmYtcmVuYW1lZDpiZWZvcmV7Y29udGVudDpcIlxcZTllOFwiO31cbi5pY29uLWZpbGUtbWVkaWE6YmVmb3Jle2NvbnRlbnQ6XCJcXGYwMTJcIjt9XG4uaWNvbi1mb2xkOmJlZm9yZXtjb250ZW50OlwiXFxlOWVhXCI7fVxuLmljb24tZ2VhcjpiZWZvcmV7Y29udGVudDpcIlxcZTllYlwiO31cbi5pY29uLWdpdC1icmFuY2g6YmVmb3Jle2NvbnRlbnQ6XCJcXGU5ZWNcIjt9XG4uaWNvbi1naXQtY29tbWl0OmJlZm9yZXtjb250ZW50OlwiXFxlOWVkXCI7fVxuLmljb24tZ2l0LWNvbXBhcmU6YmVmb3Jle2NvbnRlbnQ6XCJcXGU5ZWVcIjt9XG4uaWNvbi1naXQtbWVyZ2U6YmVmb3Jle2NvbnRlbnQ6XCJcXGU5ZWZcIjt9XG4uaWNvbi1naXQtcHVsbC1yZXF1ZXN0OmJlZm9yZXtjb250ZW50OlwiXFxlOWYwXCI7fVxuLmljb24tZ3JhcGg6YmVmb3Jle2NvbnRlbnQ6XCJcXGYwNDNcIjt9XG4uaWNvbi1sYXc6YmVmb3Jle2NvbnRlbnQ6XCJcXGU5ZjFcIjt9XG4uaWNvbi1saXN0LW9yZGVyZWQ6YmVmb3Jle2NvbnRlbnQ6XCJcXGU5ZjJcIjt9XG4uaWNvbi1saXN0LXVub3JkZXJlZDpiZWZvcmV7Y29udGVudDpcIlxcZTlmM1wiO31cbi5pY29uLW1haWw1OmJlZm9yZXtjb250ZW50OlwiXFxlOWY0XCI7fVxuLmljb24tbWFpbC1yZWFkOmJlZm9yZXtjb250ZW50OlwiXFxlOWY1XCI7fVxuLmljb24tbWVudGlvbjpiZWZvcmV7Y29udGVudDpcIlxcZTlmNlwiO31cbi5pY29uLW1pcnJvcjpiZWZvcmV7Y29udGVudDpcIlxcZjAyNFwiO31cbi5pY29uLW1vdmUtZG93bjpiZWZvcmV7Y29udGVudDpcIlxcZjBhOFwiO31cbi5pY29uLW1vdmUtbGVmdDpiZWZvcmV7Y29udGVudDpcIlxcZjA3NFwiO31cbi5pY29uLW1vdmUtcmlnaHQ6YmVmb3Jle2NvbnRlbnQ6XCJcXGYwYTlcIjt9XG4uaWNvbi1tb3ZlLXVwOmJlZm9yZXtjb250ZW50OlwiXFxmMGE3XCI7fVxuLmljb24tcGVyc29uOmJlZm9yZXtjb250ZW50OlwiXFxmMDE4XCI7fVxuLmljb24tcGx1czIyOmJlZm9yZXtjb250ZW50OlwiXFxlOWY3XCI7fVxuLmljb24tcHJpbWl0aXZlLWRvdDpiZWZvcmV7Y29udGVudDpcIlxcZjA1MlwiO31cbi5pY29uLXByaW1pdGl2ZS1zcXVhcmU6YmVmb3Jle2NvbnRlbnQ6XCJcXGYwNTNcIjt9XG4uaWNvbi1yZXBvLWZvcmtlZDpiZWZvcmV7Y29udGVudDpcIlxcZTlmOFwiO31cbi5pY29uLXNjcmVlbi1mdWxsOmJlZm9yZXtjb250ZW50OlwiXFxlOWY5XCI7fVxuLmljb24tc2NyZWVuLW5vcm1hbDpiZWZvcmV7Y29udGVudDpcIlxcZTlmYVwiO31cbi5pY29uLXN5bmM6YmVmb3Jle2NvbnRlbnQ6XCJcXGU5ZmJcIjt9XG4uaWNvbi10aHJlZS1iYXJzOmJlZm9yZXtjb250ZW50OlwiXFxlOWZjXCI7fVxuLmljb24tdW5mb2xkOmJlZm9yZXtjb250ZW50OlwiXFxlOWZlXCI7fVxuLmljb24tdmVyc2lvbnM6YmVmb3Jle2NvbnRlbnQ6XCJcXGU5ZmZcIjt9XG4uaWNvbi14OmJlZm9yZXtjb250ZW50OlwiXFxlYTAwXCI7fVxuIiwiLyohXG4gKiBCb290c3RyYXAgdjQuNC4xIChodHRwczovL2dldGJvb3RzdHJhcC5jb20vKVxuICogQ29weXJpZ2h0IDIwMTEtMjAxOSBUaGUgQm9vdHN0cmFwIEF1dGhvcnNcbiAqIENvcHlyaWdodCAyMDExLTIwMTkgVHdpdHRlciwgSW5jLlxuICogTGljZW5zZWQgdW5kZXIgTUlUIChodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvYmxvYi9tYXN0ZXIvTElDRU5TRSlcbiAqL1xuXG5AaW1wb3J0IFwiZnVuY3Rpb25zXCI7XG5AaW1wb3J0IFwidmFyaWFibGVzXCI7XG5AaW1wb3J0IFwibWl4aW5zXCI7XG5AaW1wb3J0IFwicm9vdFwiO1xuQGltcG9ydCBcInJlYm9vdFwiO1xuQGltcG9ydCBcInR5cGVcIjtcbkBpbXBvcnQgXCJpbWFnZXNcIjtcbkBpbXBvcnQgXCJjb2RlXCI7XG5AaW1wb3J0IFwiZ3JpZFwiO1xuQGltcG9ydCBcInRhYmxlc1wiO1xuQGltcG9ydCBcImZvcm1zXCI7XG5AaW1wb3J0IFwiYnV0dG9uc1wiO1xuQGltcG9ydCBcInRyYW5zaXRpb25zXCI7XG5AaW1wb3J0IFwiZHJvcGRvd25cIjtcbkBpbXBvcnQgXCJidXR0b24tZ3JvdXBcIjtcbkBpbXBvcnQgXCJpbnB1dC1ncm91cFwiO1xuQGltcG9ydCBcImN1c3RvbS1mb3Jtc1wiO1xuQGltcG9ydCBcIm5hdlwiO1xuQGltcG9ydCBcIm5hdmJhclwiO1xuQGltcG9ydCBcImNhcmRcIjtcbkBpbXBvcnQgXCJicmVhZGNydW1iXCI7XG5AaW1wb3J0IFwicGFnaW5hdGlvblwiO1xuQGltcG9ydCBcImJhZGdlXCI7XG5AaW1wb3J0IFwianVtYm90cm9uXCI7XG5AaW1wb3J0IFwiYWxlcnRcIjtcbkBpbXBvcnQgXCJwcm9ncmVzc1wiO1xuQGltcG9ydCBcIm1lZGlhXCI7XG5AaW1wb3J0IFwibGlzdC1ncm91cFwiO1xuQGltcG9ydCBcImNsb3NlXCI7XG5AaW1wb3J0IFwidG9hc3RzXCI7XG5AaW1wb3J0IFwibW9kYWxcIjtcbkBpbXBvcnQgXCJ0b29sdGlwXCI7XG5AaW1wb3J0IFwicG9wb3ZlclwiO1xuQGltcG9ydCBcImNhcm91c2VsXCI7XG5AaW1wb3J0IFwic3Bpbm5lcnNcIjtcbkBpbXBvcnQgXCJ1dGlsaXRpZXNcIjtcbkBpbXBvcnQgXCJwcmludFwiO1xuIiwiLy8gRG8gbm90IGZvcmdldCB0byB1cGRhdGUgZ2V0dGluZy1zdGFydGVkL3RoZW1pbmcubWQhXG46cm9vdCB7XG4gIC8vIEN1c3RvbSB2YXJpYWJsZSB2YWx1ZXMgb25seSBzdXBwb3J0IFNhc3NTY3JpcHQgaW5zaWRlIGAje31gLlxuICBAZWFjaCAkY29sb3IsICR2YWx1ZSBpbiAkY29sb3JzIHtcbiAgICAtLSN7JGNvbG9yfTogI3skdmFsdWV9O1xuICB9XG5cbiAgQGVhY2ggJGNvbG9yLCAkdmFsdWUgaW4gJHRoZW1lLWNvbG9ycyB7XG4gICAgLS0jeyRjb2xvcn06ICN7JHZhbHVlfTtcbiAgfVxuXG4gIEBlYWNoICRicCwgJHZhbHVlIGluICRncmlkLWJyZWFrcG9pbnRzIHtcbiAgICAtLWJyZWFrcG9pbnQtI3skYnB9OiAjeyR2YWx1ZX07XG4gIH1cblxuICAvLyBVc2UgYGluc3BlY3RgIGZvciBsaXN0cyBzbyB0aGF0IHF1b3RlZCBpdGVtcyBrZWVwIHRoZSBxdW90ZXMuXG4gIC8vIFNlZSBodHRwczovL2dpdGh1Yi5jb20vc2Fzcy9zYXNzL2lzc3Vlcy8yMzgzI2lzc3VlY29tbWVudC0zMzYzNDkxNzJcbiAgLS1mb250LWZhbWlseS1zYW5zLXNlcmlmOiAje2luc3BlY3QoJGZvbnQtZmFtaWx5LXNhbnMtc2VyaWYpfTtcbiAgLS1mb250LWZhbWlseS1tb25vc3BhY2U6ICN7aW5zcGVjdCgkZm9udC1mYW1pbHktbW9ub3NwYWNlKX07XG59XG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBhdC1ydWxlLW5vLXZlbmRvci1wcmVmaXgsIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudCwgc2VsZWN0b3Itbm8tcXVhbGlmeWluZy10eXBlLCBwcm9wZXJ0eS1uby12ZW5kb3ItcHJlZml4XG5cbi8vIFJlYm9vdFxuLy9cbi8vIE5vcm1hbGl6YXRpb24gb2YgSFRNTCBlbGVtZW50cywgbWFudWFsbHkgZm9ya2VkIGZyb20gTm9ybWFsaXplLmNzcyB0byByZW1vdmVcbi8vIHN0eWxlcyB0YXJnZXRpbmcgaXJyZWxldmFudCBicm93c2VycyB3aGlsZSBhcHBseWluZyBuZXcgc3R5bGVzLlxuLy9cbi8vIE5vcm1hbGl6ZSBpcyBsaWNlbnNlZCBNSVQuIGh0dHBzOi8vZ2l0aHViLmNvbS9uZWNvbGFzL25vcm1hbGl6ZS5jc3NcblxuXG4vLyBEb2N1bWVudFxuLy9cbi8vIDEuIENoYW5nZSBmcm9tIGBib3gtc2l6aW5nOiBjb250ZW50LWJveGAgc28gdGhhdCBgd2lkdGhgIGlzIG5vdCBhZmZlY3RlZCBieSBgcGFkZGluZ2Agb3IgYGJvcmRlcmAuXG4vLyAyLiBDaGFuZ2UgdGhlIGRlZmF1bHQgZm9udCBmYW1pbHkgaW4gYWxsIGJyb3dzZXJzLlxuLy8gMy4gQ29ycmVjdCB0aGUgbGluZSBoZWlnaHQgaW4gYWxsIGJyb3dzZXJzLlxuLy8gNC4gUHJldmVudCBhZGp1c3RtZW50cyBvZiBmb250IHNpemUgYWZ0ZXIgb3JpZW50YXRpb24gY2hhbmdlcyBpbiBJRSBvbiBXaW5kb3dzIFBob25lIGFuZCBpbiBpT1MuXG4vLyA1LiBDaGFuZ2UgdGhlIGRlZmF1bHQgdGFwIGhpZ2hsaWdodCB0byBiZSBjb21wbGV0ZWx5IHRyYW5zcGFyZW50IGluIGlPUy5cblxuKixcbio6OmJlZm9yZSxcbio6OmFmdGVyIHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDsgLy8gMVxufVxuXG5odG1sIHtcbiAgZm9udC1mYW1pbHk6IHNhbnMtc2VyaWY7IC8vIDJcbiAgbGluZS1oZWlnaHQ6IDEuMTU7IC8vIDNcbiAgLXdlYmtpdC10ZXh0LXNpemUtYWRqdXN0OiAxMDAlOyAvLyA0XG4gIC13ZWJraXQtdGFwLWhpZ2hsaWdodC1jb2xvcjogcmdiYSgkYmxhY2ssIDApOyAvLyA1XG59XG5cbi8vIFNoaW0gZm9yIFwibmV3XCIgSFRNTDUgc3RydWN0dXJhbCBlbGVtZW50cyB0byBkaXNwbGF5IGNvcnJlY3RseSAoSUUxMCwgb2xkZXIgYnJvd3NlcnMpXG4vLyBUT0RPOiByZW1vdmUgaW4gdjVcbi8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBzZWxlY3Rvci1saXN0LWNvbW1hLW5ld2xpbmUtYWZ0ZXJcbmFydGljbGUsIGFzaWRlLCBmaWdjYXB0aW9uLCBmaWd1cmUsIGZvb3RlciwgaGVhZGVyLCBoZ3JvdXAsIG1haW4sIG5hdiwgc2VjdGlvbiB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4vLyBCb2R5XG4vL1xuLy8gMS4gUmVtb3ZlIHRoZSBtYXJnaW4gaW4gYWxsIGJyb3dzZXJzLlxuLy8gMi4gQXMgYSBiZXN0IHByYWN0aWNlLCBhcHBseSBhIGRlZmF1bHQgYGJhY2tncm91bmQtY29sb3JgLlxuLy8gMy4gU2V0IGFuIGV4cGxpY2l0IGluaXRpYWwgdGV4dC1hbGlnbiB2YWx1ZSBzbyB0aGF0IHdlIGNhbiBsYXRlciB1c2Vcbi8vICAgIHRoZSBgaW5oZXJpdGAgdmFsdWUgb24gdGhpbmdzIGxpa2UgYDx0aD5gIGVsZW1lbnRzLlxuXG5ib2R5IHtcbiAgbWFyZ2luOiAwOyAvLyAxXG4gIGZvbnQtZmFtaWx5OiAkZm9udC1mYW1pbHktYmFzZTtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRmb250LXNpemUtYmFzZSk7XG4gIGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtYmFzZTtcbiAgbGluZS1oZWlnaHQ6ICRsaW5lLWhlaWdodC1iYXNlO1xuICBjb2xvcjogJGJvZHktY29sb3I7XG4gIHRleHQtYWxpZ246IGxlZnQ7IC8vIDNcbiAgYmFja2dyb3VuZC1jb2xvcjogJGJvZHktYmc7IC8vIDJcbn1cblxuLy8gRnV0dXJlLXByb29mIHJ1bGU6IGluIGJyb3dzZXJzIHRoYXQgc3VwcG9ydCA6Zm9jdXMtdmlzaWJsZSwgc3VwcHJlc3MgdGhlIGZvY3VzIG91dGxpbmVcbi8vIG9uIGVsZW1lbnRzIHRoYXQgcHJvZ3JhbW1hdGljYWxseSByZWNlaXZlIGZvY3VzIGJ1dCB3b3VsZG4ndCBub3JtYWxseSBzaG93IGEgdmlzaWJsZVxuLy8gZm9jdXMgb3V0bGluZS4gSW4gZ2VuZXJhbCwgdGhpcyB3b3VsZCBtZWFuIHRoYXQgdGhlIG91dGxpbmUgaXMgb25seSBhcHBsaWVkIGlmIHRoZVxuLy8gaW50ZXJhY3Rpb24gdGhhdCBsZWQgdG8gdGhlIGVsZW1lbnQgcmVjZWl2aW5nIHByb2dyYW1tYXRpYyBmb2N1cyB3YXMgYSBrZXlib2FyZCBpbnRlcmFjdGlvbixcbi8vIG9yIHRoZSBicm93c2VyIGhhcyBzb21laG93IGRldGVybWluZWQgdGhhdCB0aGUgdXNlciBpcyBwcmltYXJpbHkgYSBrZXlib2FyZCB1c2VyIGFuZC9vclxuLy8gd2FudHMgZm9jdXMgb3V0bGluZXMgdG8gYWx3YXlzIGJlIHByZXNlbnRlZC5cbi8vXG4vLyBTZWUgaHR0cHM6Ly9kZXZlbG9wZXIubW96aWxsYS5vcmcvZW4tVVMvZG9jcy9XZWIvQ1NTLzpmb2N1cy12aXNpYmxlXG4vLyBhbmQgaHR0cHM6Ly9kZXZlbG9wZXIucGFjaWVsbG9ncm91cC5jb20vYmxvZy8yMDE4LzAzL2ZvY3VzLXZpc2libGUtYW5kLWJhY2t3YXJkcy1jb21wYXRpYmlsaXR5L1xuW3RhYmluZGV4PVwiLTFcIl06Zm9jdXM6bm90KDpmb2N1cy12aXNpYmxlKSB7XG4gIG91dGxpbmU6IDAgIWltcG9ydGFudDtcbn1cblxuXG4vLyBDb250ZW50IGdyb3VwaW5nXG4vL1xuLy8gMS4gQWRkIHRoZSBjb3JyZWN0IGJveCBzaXppbmcgaW4gRmlyZWZveC5cbi8vIDIuIFNob3cgdGhlIG92ZXJmbG93IGluIEVkZ2UgYW5kIElFLlxuXG5ociB7XG4gIGJveC1zaXppbmc6IGNvbnRlbnQtYm94OyAvLyAxXG4gIGhlaWdodDogMDsgLy8gMVxuICBvdmVyZmxvdzogdmlzaWJsZTsgLy8gMlxufVxuXG5cbi8vXG4vLyBUeXBvZ3JhcGh5XG4vL1xuXG4vLyBSZW1vdmUgdG9wIG1hcmdpbnMgZnJvbSBoZWFkaW5nc1xuLy9cbi8vIEJ5IGRlZmF1bHQsIGA8aDE+YC1gPGg2PmAgYWxsIHJlY2VpdmUgdG9wIGFuZCBib3R0b20gbWFyZ2lucy4gV2UgbnVrZSB0aGUgdG9wXG4vLyBtYXJnaW4gZm9yIGVhc2llciBjb250cm9sIHdpdGhpbiB0eXBlIHNjYWxlcyBhcyBpdCBhdm9pZHMgbWFyZ2luIGNvbGxhcHNpbmcuXG4vLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgc2VsZWN0b3ItbGlzdC1jb21tYS1uZXdsaW5lLWFmdGVyXG5oMSwgaDIsIGgzLCBoNCwgaDUsIGg2IHtcbiAgbWFyZ2luLXRvcDogMDtcbiAgbWFyZ2luLWJvdHRvbTogJGhlYWRpbmdzLW1hcmdpbi1ib3R0b207XG59XG5cbi8vIFJlc2V0IG1hcmdpbnMgb24gcGFyYWdyYXBoc1xuLy9cbi8vIFNpbWlsYXJseSwgdGhlIHRvcCBtYXJnaW4gb24gYDxwPmBzIGdldCByZXNldC4gSG93ZXZlciwgd2UgYWxzbyByZXNldCB0aGVcbi8vIGJvdHRvbSBtYXJnaW4gdG8gdXNlIGByZW1gIHVuaXRzIGluc3RlYWQgb2YgYGVtYC5cbnAge1xuICBtYXJnaW4tdG9wOiAwO1xuICBtYXJnaW4tYm90dG9tOiAkcGFyYWdyYXBoLW1hcmdpbi1ib3R0b207XG59XG5cbi8vIEFiYnJldmlhdGlvbnNcbi8vXG4vLyAxLiBEdXBsaWNhdGUgYmVoYXZpb3IgdG8gdGhlIGRhdGEtKiBhdHRyaWJ1dGUgZm9yIG91ciB0b29sdGlwIHBsdWdpblxuLy8gMi4gQWRkIHRoZSBjb3JyZWN0IHRleHQgZGVjb3JhdGlvbiBpbiBDaHJvbWUsIEVkZ2UsIElFLCBPcGVyYSwgYW5kIFNhZmFyaS5cbi8vIDMuIEFkZCBleHBsaWNpdCBjdXJzb3IgdG8gaW5kaWNhdGUgY2hhbmdlZCBiZWhhdmlvci5cbi8vIDQuIFJlbW92ZSB0aGUgYm90dG9tIGJvcmRlciBpbiBGaXJlZm94IDM5LS5cbi8vIDUuIFByZXZlbnQgdGhlIHRleHQtZGVjb3JhdGlvbiB0byBiZSBza2lwcGVkLlxuXG5hYmJyW3RpdGxlXSxcbmFiYnJbZGF0YS1vcmlnaW5hbC10aXRsZV0geyAvLyAxXG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lOyAvLyAyXG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lIGRvdHRlZDsgLy8gMlxuICBjdXJzb3I6IGhlbHA7IC8vIDNcbiAgYm9yZGVyLWJvdHRvbTogMDsgLy8gNFxuICB0ZXh0LWRlY29yYXRpb24tc2tpcC1pbms6IG5vbmU7IC8vIDVcbn1cblxuYWRkcmVzcyB7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7XG59XG5cbm9sLFxudWwsXG5kbCB7XG4gIG1hcmdpbi10b3A6IDA7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG59XG5cbm9sIG9sLFxudWwgdWwsXG5vbCB1bCxcbnVsIG9sIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cblxuZHQge1xuICBmb250LXdlaWdodDogJGR0LWZvbnQtd2VpZ2h0O1xufVxuXG5kZCB7XG4gIG1hcmdpbi1ib3R0b206IC41cmVtO1xuICBtYXJnaW4tbGVmdDogMDsgLy8gVW5kbyBicm93c2VyIGRlZmF1bHRcbn1cblxuYmxvY2txdW90ZSB7XG4gIG1hcmdpbjogMCAwIDFyZW07XG59XG5cbmIsXG5zdHJvbmcge1xuICBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LWJvbGRlcjsgLy8gQWRkIHRoZSBjb3JyZWN0IGZvbnQgd2VpZ2h0IGluIENocm9tZSwgRWRnZSwgYW5kIFNhZmFyaVxufVxuXG5zbWFsbCB7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSg4MCUpOyAvLyBBZGQgdGhlIGNvcnJlY3QgZm9udCBzaXplIGluIGFsbCBicm93c2Vyc1xufVxuXG4vL1xuLy8gUHJldmVudCBgc3ViYCBhbmQgYHN1cGAgZWxlbWVudHMgZnJvbSBhZmZlY3RpbmcgdGhlIGxpbmUgaGVpZ2h0IGluXG4vLyBhbGwgYnJvd3NlcnMuXG4vL1xuXG5zdWIsXG5zdXAge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSg3NSUpO1xuICBsaW5lLWhlaWdodDogMDtcbiAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xufVxuXG5zdWIgeyBib3R0b206IC0uMjVlbTsgfVxuc3VwIHsgdG9wOiAtLjVlbTsgfVxuXG5cbi8vXG4vLyBMaW5rc1xuLy9cblxuYSB7XG4gIGNvbG9yOiAkbGluay1jb2xvcjtcbiAgdGV4dC1kZWNvcmF0aW9uOiAkbGluay1kZWNvcmF0aW9uO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsgLy8gUmVtb3ZlIHRoZSBncmF5IGJhY2tncm91bmQgb24gYWN0aXZlIGxpbmtzIGluIElFIDEwLlxuXG4gIEBpbmNsdWRlIGhvdmVyKCkge1xuICAgIGNvbG9yOiAkbGluay1ob3Zlci1jb2xvcjtcbiAgICB0ZXh0LWRlY29yYXRpb246ICRsaW5rLWhvdmVyLWRlY29yYXRpb247XG4gIH1cbn1cblxuLy8gQW5kIHVuZG8gdGhlc2Ugc3R5bGVzIGZvciBwbGFjZWhvbGRlciBsaW5rcy9uYW1lZCBhbmNob3JzICh3aXRob3V0IGhyZWYpLlxuLy8gSXQgd291bGQgYmUgbW9yZSBzdHJhaWdodGZvcndhcmQgdG8ganVzdCB1c2UgYVtocmVmXSBpbiBwcmV2aW91cyBibG9jaywgYnV0IHRoYXRcbi8vIGNhdXNlcyBzcGVjaWZpY2l0eSBpc3N1ZXMgaW4gbWFueSBvdGhlciBzdHlsZXMgdGhhdCBhcmUgdG9vIGNvbXBsZXggdG8gZml4LlxuLy8gU2VlIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMTk0MDJcblxuYTpub3QoW2hyZWZdKSB7XG4gIGNvbG9yOiBpbmhlcml0O1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG5cbiAgQGluY2x1ZGUgaG92ZXIoKSB7XG4gICAgY29sb3I6IGluaGVyaXQ7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB9XG59XG5cblxuLy9cbi8vIENvZGVcbi8vXG5cbnByZSxcbmNvZGUsXG5rYmQsXG5zYW1wIHtcbiAgZm9udC1mYW1pbHk6ICRmb250LWZhbWlseS1tb25vc3BhY2U7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgxZW0pOyAvLyBDb3JyZWN0IHRoZSBvZGQgYGVtYCBmb250IHNpemluZyBpbiBhbGwgYnJvd3NlcnMuXG59XG5cbnByZSB7XG4gIC8vIFJlbW92ZSBicm93c2VyIGRlZmF1bHQgdG9wIG1hcmdpblxuICBtYXJnaW4tdG9wOiAwO1xuICAvLyBSZXNldCBicm93c2VyIGRlZmF1bHQgb2YgYDFlbWAgdG8gdXNlIGByZW1gc1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICAvLyBEb24ndCBhbGxvdyBjb250ZW50IHRvIGJyZWFrIG91dHNpZGVcbiAgb3ZlcmZsb3c6IGF1dG87XG59XG5cblxuLy9cbi8vIEZpZ3VyZXNcbi8vXG5cbmZpZ3VyZSB7XG4gIC8vIEFwcGx5IGEgY29uc2lzdGVudCBtYXJnaW4gc3RyYXRlZ3kgKG1hdGNoZXMgb3VyIHR5cGUgc3R5bGVzKS5cbiAgbWFyZ2luOiAwIDAgMXJlbTtcbn1cblxuXG4vL1xuLy8gSW1hZ2VzIGFuZCBjb250ZW50XG4vL1xuXG5pbWcge1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICBib3JkZXItc3R5bGU6IG5vbmU7IC8vIFJlbW92ZSB0aGUgYm9yZGVyIG9uIGltYWdlcyBpbnNpZGUgbGlua3MgaW4gSUUgMTAtLlxufVxuXG5zdmcge1xuICAvLyBXb3JrYXJvdW5kIGZvciB0aGUgU1ZHIG92ZXJmbG93IGJ1ZyBpbiBJRTEwLzExIGlzIHN0aWxsIHJlcXVpcmVkLlxuICAvLyBTZWUgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8yNjg3OFxuICBvdmVyZmxvdzogaGlkZGVuO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xufVxuXG5cbi8vXG4vLyBUYWJsZXNcbi8vXG5cbnRhYmxlIHtcbiAgYm9yZGVyLWNvbGxhcHNlOiBjb2xsYXBzZTsgLy8gUHJldmVudCBkb3VibGUgYm9yZGVyc1xufVxuXG5jYXB0aW9uIHtcbiAgcGFkZGluZy10b3A6ICR0YWJsZS1jZWxsLXBhZGRpbmc7XG4gIHBhZGRpbmctYm90dG9tOiAkdGFibGUtY2VsbC1wYWRkaW5nO1xuICBjb2xvcjogJHRhYmxlLWNhcHRpb24tY29sb3I7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG4gIGNhcHRpb24tc2lkZTogYm90dG9tO1xufVxuXG50aCB7XG4gIC8vIE1hdGNoZXMgZGVmYXVsdCBgPHRkPmAgYWxpZ25tZW50IGJ5IGluaGVyaXRpbmcgZnJvbSB0aGUgYDxib2R5PmAsIG9yIHRoZVxuICAvLyBjbG9zZXN0IHBhcmVudCB3aXRoIGEgc2V0IGB0ZXh0LWFsaWduYC5cbiAgdGV4dC1hbGlnbjogaW5oZXJpdDtcbn1cblxuXG4vL1xuLy8gRm9ybXNcbi8vXG5cbmxhYmVsIHtcbiAgLy8gQWxsb3cgbGFiZWxzIHRvIHVzZSBgbWFyZ2luYCBmb3Igc3BhY2luZy5cbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBtYXJnaW4tYm90dG9tOiAkbGFiZWwtbWFyZ2luLWJvdHRvbTtcbn1cblxuLy8gUmVtb3ZlIHRoZSBkZWZhdWx0IGBib3JkZXItcmFkaXVzYCB0aGF0IG1hY09TIENocm9tZSBhZGRzLlxuLy9cbi8vIERldGFpbHMgYXQgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8yNDA5M1xuYnV0dG9uIHtcbiAgLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHByb3BlcnR5LWJsYWNrbGlzdFxuICBib3JkZXItcmFkaXVzOiAwO1xufVxuXG4vLyBXb3JrIGFyb3VuZCBhIEZpcmVmb3gvSUUgYnVnIHdoZXJlIHRoZSB0cmFuc3BhcmVudCBgYnV0dG9uYCBiYWNrZ3JvdW5kXG4vLyByZXN1bHRzIGluIGEgbG9zcyBvZiB0aGUgZGVmYXVsdCBgYnV0dG9uYCBmb2N1cyBzdHlsZXMuXG4vL1xuLy8gQ3JlZGl0OiBodHRwczovL2dpdGh1Yi5jb20vc3VpdGNzcy9iYXNlL1xuYnV0dG9uOmZvY3VzIHtcbiAgb3V0bGluZTogMXB4IGRvdHRlZDtcbiAgb3V0bGluZTogNXB4IGF1dG8gLXdlYmtpdC1mb2N1cy1yaW5nLWNvbG9yO1xufVxuXG5pbnB1dCxcbmJ1dHRvbixcbnNlbGVjdCxcbm9wdGdyb3VwLFxudGV4dGFyZWEge1xuICBtYXJnaW46IDA7IC8vIFJlbW92ZSB0aGUgbWFyZ2luIGluIEZpcmVmb3ggYW5kIFNhZmFyaVxuICBmb250LWZhbWlseTogaW5oZXJpdDtcbiAgQGluY2x1ZGUgZm9udC1zaXplKGluaGVyaXQpO1xuICBsaW5lLWhlaWdodDogaW5oZXJpdDtcbn1cblxuYnV0dG9uLFxuaW5wdXQge1xuICBvdmVyZmxvdzogdmlzaWJsZTsgLy8gU2hvdyB0aGUgb3ZlcmZsb3cgaW4gRWRnZVxufVxuXG5idXR0b24sXG5zZWxlY3Qge1xuICB0ZXh0LXRyYW5zZm9ybTogbm9uZTsgLy8gUmVtb3ZlIHRoZSBpbmhlcml0YW5jZSBvZiB0ZXh0IHRyYW5zZm9ybSBpbiBGaXJlZm94XG59XG5cbi8vIFJlbW92ZSB0aGUgaW5oZXJpdGFuY2Ugb2Ygd29yZC13cmFwIGluIFNhZmFyaS5cbi8vXG4vLyBEZXRhaWxzIGF0IGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMjQ5OTBcbnNlbGVjdCB7XG4gIHdvcmQtd3JhcDogbm9ybWFsO1xufVxuXG5cbi8vIDEuIFByZXZlbnQgYSBXZWJLaXQgYnVnIHdoZXJlICgyKSBkZXN0cm95cyBuYXRpdmUgYGF1ZGlvYCBhbmQgYHZpZGVvYFxuLy8gICAgY29udHJvbHMgaW4gQW5kcm9pZCA0LlxuLy8gMi4gQ29ycmVjdCB0aGUgaW5hYmlsaXR5IHRvIHN0eWxlIGNsaWNrYWJsZSB0eXBlcyBpbiBpT1MgYW5kIFNhZmFyaS5cbmJ1dHRvbixcblt0eXBlPVwiYnV0dG9uXCJdLCAvLyAxXG5bdHlwZT1cInJlc2V0XCJdLFxuW3R5cGU9XCJzdWJtaXRcIl0ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IGJ1dHRvbjsgLy8gMlxufVxuXG4vLyBPcGluaW9uYXRlZDogYWRkIFwiaGFuZFwiIGN1cnNvciB0byBub24tZGlzYWJsZWQgYnV0dG9uIGVsZW1lbnRzLlxuQGlmICRlbmFibGUtcG9pbnRlci1jdXJzb3ItZm9yLWJ1dHRvbnMge1xuICBidXR0b24sXG4gIFt0eXBlPVwiYnV0dG9uXCJdLFxuICBbdHlwZT1cInJlc2V0XCJdLFxuICBbdHlwZT1cInN1Ym1pdFwiXSB7XG4gICAgJjpub3QoOmRpc2FibGVkKSB7XG4gICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgfVxuICB9XG59XG5cbi8vIFJlbW92ZSBpbm5lciBib3JkZXIgYW5kIHBhZGRpbmcgZnJvbSBGaXJlZm94LCBidXQgZG9uJ3QgcmVzdG9yZSB0aGUgb3V0bGluZSBsaWtlIE5vcm1hbGl6ZS5cbmJ1dHRvbjo6LW1vei1mb2N1cy1pbm5lcixcblt0eXBlPVwiYnV0dG9uXCJdOjotbW96LWZvY3VzLWlubmVyLFxuW3R5cGU9XCJyZXNldFwiXTo6LW1vei1mb2N1cy1pbm5lcixcblt0eXBlPVwic3VibWl0XCJdOjotbW96LWZvY3VzLWlubmVyIHtcbiAgcGFkZGluZzogMDtcbiAgYm9yZGVyLXN0eWxlOiBub25lO1xufVxuXG5pbnB1dFt0eXBlPVwicmFkaW9cIl0sXG5pbnB1dFt0eXBlPVwiY2hlY2tib3hcIl0ge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94OyAvLyAxLiBBZGQgdGhlIGNvcnJlY3QgYm94IHNpemluZyBpbiBJRSAxMC1cbiAgcGFkZGluZzogMDsgLy8gMi4gUmVtb3ZlIHRoZSBwYWRkaW5nIGluIElFIDEwLVxufVxuXG5cbmlucHV0W3R5cGU9XCJkYXRlXCJdLFxuaW5wdXRbdHlwZT1cInRpbWVcIl0sXG5pbnB1dFt0eXBlPVwiZGF0ZXRpbWUtbG9jYWxcIl0sXG5pbnB1dFt0eXBlPVwibW9udGhcIl0ge1xuICAvLyBSZW1vdmUgdGhlIGRlZmF1bHQgYXBwZWFyYW5jZSBvZiB0ZW1wb3JhbCBpbnB1dHMgdG8gYXZvaWQgYSBNb2JpbGUgU2FmYXJpXG4gIC8vIGJ1ZyB3aGVyZSBzZXR0aW5nIGEgY3VzdG9tIGxpbmUtaGVpZ2h0IHByZXZlbnRzIHRleHQgZnJvbSBiZWluZyB2ZXJ0aWNhbGx5XG4gIC8vIGNlbnRlcmVkIHdpdGhpbiB0aGUgaW5wdXQuXG4gIC8vIFNlZSBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTM5ODQ4XG4gIC8vIGFuZCBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzExMjY2XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogbGlzdGJveDtcbn1cblxudGV4dGFyZWEge1xuICBvdmVyZmxvdzogYXV0bzsgLy8gUmVtb3ZlIHRoZSBkZWZhdWx0IHZlcnRpY2FsIHNjcm9sbGJhciBpbiBJRS5cbiAgLy8gVGV4dGFyZWFzIHNob3VsZCByZWFsbHkgb25seSByZXNpemUgdmVydGljYWxseSBzbyB0aGV5IGRvbid0IGJyZWFrIHRoZWlyIChob3Jpem9udGFsKSBjb250YWluZXJzLlxuICByZXNpemU6IHZlcnRpY2FsO1xufVxuXG5maWVsZHNldCB7XG4gIC8vIEJyb3dzZXJzIHNldCBhIGRlZmF1bHQgYG1pbi13aWR0aDogbWluLWNvbnRlbnQ7YCBvbiBmaWVsZHNldHMsXG4gIC8vIHVubGlrZSBlLmcuIGA8ZGl2PmBzLCB3aGljaCBoYXZlIGBtaW4td2lkdGg6IDA7YCBieSBkZWZhdWx0LlxuICAvLyBTbyB3ZSByZXNldCB0aGF0IHRvIGVuc3VyZSBmaWVsZHNldHMgYmVoYXZlIG1vcmUgbGlrZSBhIHN0YW5kYXJkIGJsb2NrIGVsZW1lbnQuXG4gIC8vIFNlZSBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzEyMzU5XG4gIC8vIGFuZCBodHRwczovL2h0bWwuc3BlYy53aGF0d2cub3JnL211bHRpcGFnZS8jdGhlLWZpZWxkc2V0LWFuZC1sZWdlbmQtZWxlbWVudHNcbiAgbWluLXdpZHRoOiAwO1xuICAvLyBSZXNldCB0aGUgZGVmYXVsdCBvdXRsaW5lIGJlaGF2aW9yIG9mIGZpZWxkc2V0cyBzbyB0aGV5IGRvbid0IGFmZmVjdCBwYWdlIGxheW91dC5cbiAgcGFkZGluZzogMDtcbiAgbWFyZ2luOiAwO1xuICBib3JkZXI6IDA7XG59XG5cbi8vIDEuIENvcnJlY3QgdGhlIHRleHQgd3JhcHBpbmcgaW4gRWRnZSBhbmQgSUUuXG4vLyAyLiBDb3JyZWN0IHRoZSBjb2xvciBpbmhlcml0YW5jZSBmcm9tIGBmaWVsZHNldGAgZWxlbWVudHMgaW4gSUUuXG5sZWdlbmQge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7XG4gIG1heC13aWR0aDogMTAwJTsgLy8gMVxuICBwYWRkaW5nOiAwO1xuICBtYXJnaW4tYm90dG9tOiAuNXJlbTtcbiAgQGluY2x1ZGUgZm9udC1zaXplKDEuNXJlbSk7XG4gIGxpbmUtaGVpZ2h0OiBpbmhlcml0O1xuICBjb2xvcjogaW5oZXJpdDsgLy8gMlxuICB3aGl0ZS1zcGFjZTogbm9ybWFsOyAvLyAxXG59XG5cbnByb2dyZXNzIHtcbiAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lOyAvLyBBZGQgdGhlIGNvcnJlY3QgdmVydGljYWwgYWxpZ25tZW50IGluIENocm9tZSwgRmlyZWZveCwgYW5kIE9wZXJhLlxufVxuXG4vLyBDb3JyZWN0IHRoZSBjdXJzb3Igc3R5bGUgb2YgaW5jcmVtZW50IGFuZCBkZWNyZW1lbnQgYnV0dG9ucyBpbiBDaHJvbWUuXG5bdHlwZT1cIm51bWJlclwiXTo6LXdlYmtpdC1pbm5lci1zcGluLWJ1dHRvbixcblt0eXBlPVwibnVtYmVyXCJdOjotd2Via2l0LW91dGVyLXNwaW4tYnV0dG9uIHtcbiAgaGVpZ2h0OiBhdXRvO1xufVxuXG5bdHlwZT1cInNlYXJjaFwiXSB7XG4gIC8vIFRoaXMgb3ZlcnJpZGVzIHRoZSBleHRyYSByb3VuZGVkIGNvcm5lcnMgb24gc2VhcmNoIGlucHV0cyBpbiBpT1Mgc28gdGhhdCBvdXJcbiAgLy8gYC5mb3JtLWNvbnRyb2xgIGNsYXNzIGNhbiBwcm9wZXJseSBzdHlsZSB0aGVtLiBOb3RlIHRoYXQgdGhpcyBjYW5ub3Qgc2ltcGx5XG4gIC8vIGJlIGFkZGVkIHRvIGAuZm9ybS1jb250cm9sYCBhcyBpdCdzIG5vdCBzcGVjaWZpYyBlbm91Z2guIEZvciBkZXRhaWxzLCBzZWVcbiAgLy8gaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8xMTU4Ni5cbiAgb3V0bGluZS1vZmZzZXQ6IC0ycHg7IC8vIDIuIENvcnJlY3QgdGhlIG91dGxpbmUgc3R5bGUgaW4gU2FmYXJpLlxuICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG59XG5cbi8vXG4vLyBSZW1vdmUgdGhlIGlubmVyIHBhZGRpbmcgaW4gQ2hyb21lIGFuZCBTYWZhcmkgb24gbWFjT1MuXG4vL1xuXG5bdHlwZT1cInNlYXJjaFwiXTo6LXdlYmtpdC1zZWFyY2gtZGVjb3JhdGlvbiB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbn1cblxuLy9cbi8vIDEuIENvcnJlY3QgdGhlIGluYWJpbGl0eSB0byBzdHlsZSBjbGlja2FibGUgdHlwZXMgaW4gaU9TIGFuZCBTYWZhcmkuXG4vLyAyLiBDaGFuZ2UgZm9udCBwcm9wZXJ0aWVzIHRvIGBpbmhlcml0YCBpbiBTYWZhcmkuXG4vL1xuXG46Oi13ZWJraXQtZmlsZS11cGxvYWQtYnV0dG9uIHtcbiAgZm9udDogaW5oZXJpdDsgLy8gMlxuICAtd2Via2l0LWFwcGVhcmFuY2U6IGJ1dHRvbjsgLy8gMVxufVxuXG4vL1xuLy8gQ29ycmVjdCBlbGVtZW50IGRpc3BsYXlzXG4vL1xuXG5vdXRwdXQge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG59XG5cbnN1bW1hcnkge1xuICBkaXNwbGF5OiBsaXN0LWl0ZW07IC8vIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIGFsbCBicm93c2Vyc1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG5cbnRlbXBsYXRlIHtcbiAgZGlzcGxheTogbm9uZTsgLy8gQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUVcbn1cblxuLy8gQWx3YXlzIGhpZGUgYW4gZWxlbWVudCB3aXRoIHRoZSBgaGlkZGVuYCBIVE1MIGF0dHJpYnV0ZSAoZnJvbSBQdXJlQ1NTKS5cbi8vIE5lZWRlZCBmb3IgcHJvcGVyIGRpc3BsYXkgaW4gSUUgMTAtLlxuW2hpZGRlbl0ge1xuICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG59XG4iLCIvLyBWYXJpYWJsZXNcbi8vXG4vLyBWYXJpYWJsZXMgc2hvdWxkIGZvbGxvdyB0aGUgYCRjb21wb25lbnQtc3RhdGUtcHJvcGVydHktc2l6ZWAgZm9ybXVsYSBmb3Jcbi8vIGNvbnNpc3RlbnQgbmFtaW5nLiBFeDogJG5hdi1saW5rLWRpc2FibGVkLWNvbG9yIGFuZCAkbW9kYWwtY29udGVudC1ib3gtc2hhZG93LXhzLlxuXG4vLyBDb2xvciBzeXN0ZW1cblxuJHdoaXRlOiAgICAjZmZmICFkZWZhdWx0O1xuJGdyYXktMTAwOiAjZjhmOWZhICFkZWZhdWx0O1xuJGdyYXktMjAwOiAjZTllY2VmICFkZWZhdWx0O1xuJGdyYXktMzAwOiAjZGVlMmU2ICFkZWZhdWx0O1xuJGdyYXktNDAwOiAjY2VkNGRhICFkZWZhdWx0O1xuJGdyYXktNTAwOiAjYWRiNWJkICFkZWZhdWx0O1xuJGdyYXktNjAwOiAjNmM3NTdkICFkZWZhdWx0O1xuJGdyYXktNzAwOiAjNDk1MDU3ICFkZWZhdWx0O1xuJGdyYXktODAwOiAjMzQzYTQwICFkZWZhdWx0O1xuJGdyYXktOTAwOiAjMjEyNTI5ICFkZWZhdWx0O1xuJGJsYWNrOiAgICAjMDAwICFkZWZhdWx0O1xuXG4kZ3JheXM6ICgpICFkZWZhdWx0O1xuLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHNjc3MvZG9sbGFyLXZhcmlhYmxlLWRlZmF1bHRcbiRncmF5czogbWFwLW1lcmdlKFxuICAoXG4gICAgXCIxMDBcIjogJGdyYXktMTAwLFxuICAgIFwiMjAwXCI6ICRncmF5LTIwMCxcbiAgICBcIjMwMFwiOiAkZ3JheS0zMDAsXG4gICAgXCI0MDBcIjogJGdyYXktNDAwLFxuICAgIFwiNTAwXCI6ICRncmF5LTUwMCxcbiAgICBcIjYwMFwiOiAkZ3JheS02MDAsXG4gICAgXCI3MDBcIjogJGdyYXktNzAwLFxuICAgIFwiODAwXCI6ICRncmF5LTgwMCxcbiAgICBcIjkwMFwiOiAkZ3JheS05MDBcbiAgKSxcbiAgJGdyYXlzXG4pO1xuXG4kYmx1ZTogICAgIzAwN2JmZiAhZGVmYXVsdDtcbiRpbmRpZ286ICAjNjYxMGYyICFkZWZhdWx0O1xuJHB1cnBsZTogICM2ZjQyYzEgIWRlZmF1bHQ7XG4kcGluazogICAgI2U4M2U4YyAhZGVmYXVsdDtcbiRyZWQ6ICAgICAjZGMzNTQ1ICFkZWZhdWx0O1xuJG9yYW5nZTogICNmZDdlMTQgIWRlZmF1bHQ7XG4keWVsbG93OiAgI2ZmYzEwNyAhZGVmYXVsdDtcbiRncmVlbjogICAjMjhhNzQ1ICFkZWZhdWx0O1xuJHRlYWw6ICAgICMyMGM5OTcgIWRlZmF1bHQ7XG4kY3lhbjogICAgIzE3YTJiOCAhZGVmYXVsdDtcblxuJGNvbG9yczogKCkgIWRlZmF1bHQ7XG4vLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgc2Nzcy9kb2xsYXItdmFyaWFibGUtZGVmYXVsdFxuJGNvbG9yczogbWFwLW1lcmdlKFxuICAoXG4gICAgXCJibHVlXCI6ICAgICAgICRibHVlLFxuICAgIFwiaW5kaWdvXCI6ICAgICAkaW5kaWdvLFxuICAgIFwicHVycGxlXCI6ICAgICAkcHVycGxlLFxuICAgIFwicGlua1wiOiAgICAgICAkcGluayxcbiAgICBcInJlZFwiOiAgICAgICAgJHJlZCxcbiAgICBcIm9yYW5nZVwiOiAgICAgJG9yYW5nZSxcbiAgICBcInllbGxvd1wiOiAgICAgJHllbGxvdyxcbiAgICBcImdyZWVuXCI6ICAgICAgJGdyZWVuLFxuICAgIFwidGVhbFwiOiAgICAgICAkdGVhbCxcbiAgICBcImN5YW5cIjogICAgICAgJGN5YW4sXG4gICAgXCJ3aGl0ZVwiOiAgICAgICR3aGl0ZSxcbiAgICBcImdyYXlcIjogICAgICAgJGdyYXktNjAwLFxuICAgIFwiZ3JheS1kYXJrXCI6ICAkZ3JheS04MDBcbiAgKSxcbiAgJGNvbG9yc1xuKTtcblxuJHByaW1hcnk6ICAgICAgICRibHVlICFkZWZhdWx0O1xuJHNlY29uZGFyeTogICAgICRncmF5LTYwMCAhZGVmYXVsdDtcbiRzdWNjZXNzOiAgICAgICAkZ3JlZW4gIWRlZmF1bHQ7XG4kaW5mbzogICAgICAgICAgJGN5YW4gIWRlZmF1bHQ7XG4kd2FybmluZzogICAgICAgJHllbGxvdyAhZGVmYXVsdDtcbiRkYW5nZXI6ICAgICAgICAkcmVkICFkZWZhdWx0O1xuJGxpZ2h0OiAgICAgICAgICRncmF5LTEwMCAhZGVmYXVsdDtcbiRkYXJrOiAgICAgICAgICAkZ3JheS04MDAgIWRlZmF1bHQ7XG5cbiR0aGVtZS1jb2xvcnM6ICgpICFkZWZhdWx0O1xuLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHNjc3MvZG9sbGFyLXZhcmlhYmxlLWRlZmF1bHRcbiR0aGVtZS1jb2xvcnM6IG1hcC1tZXJnZShcbiAgKFxuICAgIFwicHJpbWFyeVwiOiAgICAkcHJpbWFyeSxcbiAgICBcInNlY29uZGFyeVwiOiAgJHNlY29uZGFyeSxcbiAgICBcInN1Y2Nlc3NcIjogICAgJHN1Y2Nlc3MsXG4gICAgXCJpbmZvXCI6ICAgICAgICRpbmZvLFxuICAgIFwid2FybmluZ1wiOiAgICAkd2FybmluZyxcbiAgICBcImRhbmdlclwiOiAgICAgJGRhbmdlcixcbiAgICBcImxpZ2h0XCI6ICAgICAgJGxpZ2h0LFxuICAgIFwiZGFya1wiOiAgICAgICAkZGFya1xuICApLFxuICAkdGhlbWUtY29sb3JzXG4pO1xuXG4vLyBTZXQgYSBzcGVjaWZpYyBqdW1wIHBvaW50IGZvciByZXF1ZXN0aW5nIGNvbG9yIGp1bXBzXG4kdGhlbWUtY29sb3ItaW50ZXJ2YWw6ICAgICAgOCUgIWRlZmF1bHQ7XG5cbi8vIFRoZSB5aXEgbGlnaHRuZXNzIHZhbHVlIHRoYXQgZGV0ZXJtaW5lcyB3aGVuIHRoZSBsaWdodG5lc3Mgb2YgY29sb3IgY2hhbmdlcyBmcm9tIFwiZGFya1wiIHRvIFwibGlnaHRcIi4gQWNjZXB0YWJsZSB2YWx1ZXMgYXJlIGJldHdlZW4gMCBhbmQgMjU1LlxuJHlpcS1jb250cmFzdGVkLXRocmVzaG9sZDogIDE1MCAhZGVmYXVsdDtcblxuLy8gQ3VzdG9taXplIHRoZSBsaWdodCBhbmQgZGFyayB0ZXh0IGNvbG9ycyBmb3IgdXNlIGluIG91ciBZSVEgY29sb3IgY29udHJhc3QgZnVuY3Rpb24uXG4keWlxLXRleHQtZGFyazogICAgICAgICAgICAgJGdyYXktOTAwICFkZWZhdWx0O1xuJHlpcS10ZXh0LWxpZ2h0OiAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcblxuLy8gQ2hhcmFjdGVycyB3aGljaCBhcmUgZXNjYXBlZCBieSB0aGUgZXNjYXBlLXN2ZyBmdW5jdGlvblxuJGVzY2FwZWQtY2hhcmFjdGVyczogKFxuICAoXCI8XCIsXCIlM2NcIiksXG4gIChcIj5cIixcIiUzZVwiKSxcbiAgKFwiI1wiLFwiJTIzXCIpLFxuKSAhZGVmYXVsdDtcblxuXG4vLyBPcHRpb25zXG4vL1xuLy8gUXVpY2tseSBtb2RpZnkgZ2xvYmFsIHN0eWxpbmcgYnkgZW5hYmxpbmcgb3IgZGlzYWJsaW5nIG9wdGlvbmFsIGZlYXR1cmVzLlxuXG4kZW5hYmxlLWNhcmV0OiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdHJ1ZSAhZGVmYXVsdDtcbiRlbmFibGUtcm91bmRlZDogICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0cnVlICFkZWZhdWx0O1xuJGVuYWJsZS1zaGFkb3dzOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZhbHNlICFkZWZhdWx0O1xuJGVuYWJsZS1ncmFkaWVudHM6ICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZhbHNlICFkZWZhdWx0O1xuJGVuYWJsZS10cmFuc2l0aW9uczogICAgICAgICAgICAgICAgICAgICAgICAgIHRydWUgIWRlZmF1bHQ7XG4kZW5hYmxlLXByZWZlcnMtcmVkdWNlZC1tb3Rpb24tbWVkaWEtcXVlcnk6ICAgdHJ1ZSAhZGVmYXVsdDtcbiRlbmFibGUtaG92ZXItbWVkaWEtcXVlcnk6ICAgICAgICAgICAgICAgICAgICBmYWxzZSAhZGVmYXVsdDsgLy8gRGVwcmVjYXRlZCwgbm8gbG9uZ2VyIGFmZmVjdHMgYW55IGNvbXBpbGVkIENTU1xuJGVuYWJsZS1ncmlkLWNsYXNzZXM6ICAgICAgICAgICAgICAgICAgICAgICAgIHRydWUgIWRlZmF1bHQ7XG4kZW5hYmxlLXBvaW50ZXItY3Vyc29yLWZvci1idXR0b25zOiAgICAgICAgICAgdHJ1ZSAhZGVmYXVsdDtcbiRlbmFibGUtcHJpbnQtc3R5bGVzOiAgICAgICAgICAgICAgICAgICAgICAgICB0cnVlICFkZWZhdWx0O1xuJGVuYWJsZS1yZXNwb25zaXZlLWZvbnQtc2l6ZXM6ICAgICAgICAgICAgICAgIGZhbHNlICFkZWZhdWx0O1xuJGVuYWJsZS12YWxpZGF0aW9uLWljb25zOiAgICAgICAgICAgICAgICAgICAgIHRydWUgIWRlZmF1bHQ7XG4kZW5hYmxlLWRlcHJlY2F0aW9uLW1lc3NhZ2VzOiAgICAgICAgICAgICAgICAgdHJ1ZSAhZGVmYXVsdDtcblxuXG4vLyBTcGFjaW5nXG4vL1xuLy8gQ29udHJvbCB0aGUgZGVmYXVsdCBzdHlsaW5nIG9mIG1vc3QgQm9vdHN0cmFwIGVsZW1lbnRzIGJ5IG1vZGlmeWluZyB0aGVzZVxuLy8gdmFyaWFibGVzLiBNb3N0bHkgZm9jdXNlZCBvbiBzcGFjaW5nLlxuLy8gWW91IGNhbiBhZGQgbW9yZSBlbnRyaWVzIHRvIHRoZSAkc3BhY2VycyBtYXAsIHNob3VsZCB5b3UgbmVlZCBtb3JlIHZhcmlhdGlvbi5cblxuJHNwYWNlcjogMXJlbSAhZGVmYXVsdDtcbiRzcGFjZXJzOiAoKSAhZGVmYXVsdDtcbi8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBzY3NzL2RvbGxhci12YXJpYWJsZS1kZWZhdWx0XG4kc3BhY2VyczogbWFwLW1lcmdlKFxuICAoXG4gICAgMDogMCxcbiAgICAxOiAoJHNwYWNlciAqIC4yNSksXG4gICAgMjogKCRzcGFjZXIgKiAuNSksXG4gICAgMzogJHNwYWNlcixcbiAgICA0OiAoJHNwYWNlciAqIDEuNSksXG4gICAgNTogKCRzcGFjZXIgKiAzKVxuICApLFxuICAkc3BhY2Vyc1xuKTtcblxuLy8gVGhpcyB2YXJpYWJsZSBhZmZlY3RzIHRoZSBgLmgtKmAgYW5kIGAudy0qYCBjbGFzc2VzLlxuJHNpemVzOiAoKSAhZGVmYXVsdDtcbi8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBzY3NzL2RvbGxhci12YXJpYWJsZS1kZWZhdWx0XG4kc2l6ZXM6IG1hcC1tZXJnZShcbiAgKFxuICAgIDI1OiAyNSUsXG4gICAgNTA6IDUwJSxcbiAgICA3NTogNzUlLFxuICAgIDEwMDogMTAwJSxcbiAgICBhdXRvOiBhdXRvXG4gICksXG4gICRzaXplc1xuKTtcblxuXG4vLyBCb2R5XG4vL1xuLy8gU2V0dGluZ3MgZm9yIHRoZSBgPGJvZHk+YCBlbGVtZW50LlxuXG4kYm9keS1iZzogICAgICAgICAgICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJGJvZHktY29sb3I6ICAgICAgICAgICAgICAgICRncmF5LTkwMCAhZGVmYXVsdDtcblxuXG4vLyBMaW5rc1xuLy9cbi8vIFN0eWxlIGFuY2hvciBlbGVtZW50cy5cblxuJGxpbmstY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhlbWUtY29sb3IoXCJwcmltYXJ5XCIpICFkZWZhdWx0O1xuJGxpbmstZGVjb3JhdGlvbjogICAgICAgICAgICAgICAgICAgICAgICAgbm9uZSAhZGVmYXVsdDtcbiRsaW5rLWhvdmVyLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgIGRhcmtlbigkbGluay1jb2xvciwgMTUlKSAhZGVmYXVsdDtcbiRsaW5rLWhvdmVyLWRlY29yYXRpb246ICAgICAgICAgICAgICAgICAgIHVuZGVybGluZSAhZGVmYXVsdDtcbi8vIERhcmtlbiBwZXJjZW50YWdlIGZvciBsaW5rcyB3aXRoIGAudGV4dC0qYCBjbGFzcyAoZS5nLiBgLnRleHQtc3VjY2Vzc2ApXG4kZW1waGFzaXplZC1saW5rLWhvdmVyLWRhcmtlbi1wZXJjZW50YWdlOiAxNSUgIWRlZmF1bHQ7XG5cbi8vIFBhcmFncmFwaHNcbi8vXG4vLyBTdHlsZSBwIGVsZW1lbnQuXG5cbiRwYXJhZ3JhcGgtbWFyZ2luLWJvdHRvbTogICAxcmVtICFkZWZhdWx0O1xuXG5cbi8vIEdyaWQgYnJlYWtwb2ludHNcbi8vXG4vLyBEZWZpbmUgdGhlIG1pbmltdW0gZGltZW5zaW9ucyBhdCB3aGljaCB5b3VyIGxheW91dCB3aWxsIGNoYW5nZSxcbi8vIGFkYXB0aW5nIHRvIGRpZmZlcmVudCBzY3JlZW4gc2l6ZXMsIGZvciB1c2UgaW4gbWVkaWEgcXVlcmllcy5cblxuJGdyaWQtYnJlYWtwb2ludHM6IChcbiAgeHM6IDAsXG4gIHNtOiA1NzZweCxcbiAgbWQ6IDc2OHB4LFxuICBsZzogOTkycHgsXG4gIHhsOiAxMjAwcHhcbikgIWRlZmF1bHQ7XG5cbkBpbmNsdWRlIF9hc3NlcnQtYXNjZW5kaW5nKCRncmlkLWJyZWFrcG9pbnRzLCBcIiRncmlkLWJyZWFrcG9pbnRzXCIpO1xuQGluY2x1ZGUgX2Fzc2VydC1zdGFydHMtYXQtemVybygkZ3JpZC1icmVha3BvaW50cywgXCIkZ3JpZC1icmVha3BvaW50c1wiKTtcblxuXG4vLyBHcmlkIGNvbnRhaW5lcnNcbi8vXG4vLyBEZWZpbmUgdGhlIG1heGltdW0gd2lkdGggb2YgYC5jb250YWluZXJgIGZvciBkaWZmZXJlbnQgc2NyZWVuIHNpemVzLlxuXG4kY29udGFpbmVyLW1heC13aWR0aHM6IChcbiAgc206IDU0MHB4LFxuICBtZDogNzIwcHgsXG4gIGxnOiA5NjBweCxcbiAgeGw6IDExNDBweFxuKSAhZGVmYXVsdDtcblxuQGluY2x1ZGUgX2Fzc2VydC1hc2NlbmRpbmcoJGNvbnRhaW5lci1tYXgtd2lkdGhzLCBcIiRjb250YWluZXItbWF4LXdpZHRoc1wiKTtcblxuXG4vLyBHcmlkIGNvbHVtbnNcbi8vXG4vLyBTZXQgdGhlIG51bWJlciBvZiBjb2x1bW5zIGFuZCBzcGVjaWZ5IHRoZSB3aWR0aCBvZiB0aGUgZ3V0dGVycy5cblxuJGdyaWQtY29sdW1uczogICAgICAgICAgICAgICAgMTIgIWRlZmF1bHQ7XG4kZ3JpZC1ndXR0ZXItd2lkdGg6ICAgICAgICAgICAzMHB4ICFkZWZhdWx0O1xuJGdyaWQtcm93LWNvbHVtbnM6ICAgICAgICAgICAgNiAhZGVmYXVsdDtcblxuXG4vLyBDb21wb25lbnRzXG4vL1xuLy8gRGVmaW5lIGNvbW1vbiBwYWRkaW5nIGFuZCBib3JkZXIgcmFkaXVzIHNpemVzIGFuZCBtb3JlLlxuXG4kbGluZS1oZWlnaHQtbGc6ICAgICAgICAgICAgICAxLjUgIWRlZmF1bHQ7XG4kbGluZS1oZWlnaHQtc206ICAgICAgICAgICAgICAxLjUgIWRlZmF1bHQ7XG5cbiRib3JkZXItd2lkdGg6ICAgICAgICAgICAgICAgIDFweCAhZGVmYXVsdDtcbiRib3JkZXItY29sb3I6ICAgICAgICAgICAgICAgICRncmF5LTMwMCAhZGVmYXVsdDtcblxuJGJvcmRlci1yYWRpdXM6ICAgICAgICAgICAgICAgLjI1cmVtICFkZWZhdWx0O1xuJGJvcmRlci1yYWRpdXMtbGc6ICAgICAgICAgICAgLjNyZW0gIWRlZmF1bHQ7XG4kYm9yZGVyLXJhZGl1cy1zbTogICAgICAgICAgICAuMnJlbSAhZGVmYXVsdDtcblxuJHJvdW5kZWQtcGlsbDogICAgICAgICAgICAgICAgNTByZW0gIWRlZmF1bHQ7XG5cbiRib3gtc2hhZG93LXNtOiAgICAgICAgICAgICAgIDAgLjEyNXJlbSAuMjVyZW0gcmdiYSgkYmxhY2ssIC4wNzUpICFkZWZhdWx0O1xuJGJveC1zaGFkb3c6ICAgICAgICAgICAgICAgICAgMCAuNXJlbSAxcmVtIHJnYmEoJGJsYWNrLCAuMTUpICFkZWZhdWx0O1xuJGJveC1zaGFkb3ctbGc6ICAgICAgICAgICAgICAgMCAxcmVtIDNyZW0gcmdiYSgkYmxhY2ssIC4xNzUpICFkZWZhdWx0O1xuXG4kY29tcG9uZW50LWFjdGl2ZS1jb2xvcjogICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kY29tcG9uZW50LWFjdGl2ZS1iZzogICAgICAgICB0aGVtZS1jb2xvcihcInByaW1hcnlcIikgIWRlZmF1bHQ7XG5cbiRjYXJldC13aWR0aDogICAgICAgICAgICAgICAgIC4zZW0gIWRlZmF1bHQ7XG4kY2FyZXQtdmVydGljYWwtYWxpZ246ICAgICAgICAkY2FyZXQtd2lkdGggKiAuODUgIWRlZmF1bHQ7XG4kY2FyZXQtc3BhY2luZzogICAgICAgICAgICAgICAkY2FyZXQtd2lkdGggKiAuODUgIWRlZmF1bHQ7XG5cbiR0cmFuc2l0aW9uLWJhc2U6ICAgICAgICAgICAgIGFsbCAuMnMgZWFzZS1pbi1vdXQgIWRlZmF1bHQ7XG4kdHJhbnNpdGlvbi1mYWRlOiAgICAgICAgICAgICBvcGFjaXR5IC4xNXMgbGluZWFyICFkZWZhdWx0O1xuJHRyYW5zaXRpb24tY29sbGFwc2U6ICAgICAgICAgaGVpZ2h0IC4zNXMgZWFzZSAhZGVmYXVsdDtcblxuJGVtYmVkLXJlc3BvbnNpdmUtYXNwZWN0LXJhdGlvczogKCkgIWRlZmF1bHQ7XG4vLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgc2Nzcy9kb2xsYXItdmFyaWFibGUtZGVmYXVsdFxuJGVtYmVkLXJlc3BvbnNpdmUtYXNwZWN0LXJhdGlvczogam9pbihcbiAgKFxuICAgICgyMSA5KSxcbiAgICAoMTYgOSksXG4gICAgKDQgMyksXG4gICAgKDEgMSksXG4gICksXG4gICRlbWJlZC1yZXNwb25zaXZlLWFzcGVjdC1yYXRpb3Ncbik7XG5cbi8vIFR5cG9ncmFwaHlcbi8vXG4vLyBGb250LCBsaW5lLWhlaWdodCwgYW5kIGNvbG9yIGZvciBib2R5IHRleHQsIGhlYWRpbmdzLCBhbmQgbW9yZS5cblxuLy8gc3R5bGVsaW50LWRpc2FibGUgdmFsdWUta2V5d29yZC1jYXNlXG4kZm9udC1mYW1pbHktc2Fucy1zZXJpZjogICAgICAtYXBwbGUtc3lzdGVtLCBCbGlua01hY1N5c3RlbUZvbnQsIFwiU2Vnb2UgVUlcIiwgUm9ib3RvLCBcIkhlbHZldGljYSBOZXVlXCIsIEFyaWFsLCBcIk5vdG8gU2Fuc1wiLCBzYW5zLXNlcmlmLCBcIkFwcGxlIENvbG9yIEVtb2ppXCIsIFwiU2Vnb2UgVUkgRW1vamlcIiwgXCJTZWdvZSBVSSBTeW1ib2xcIiwgXCJOb3RvIENvbG9yIEVtb2ppXCIgIWRlZmF1bHQ7XG4kZm9udC1mYW1pbHktbW9ub3NwYWNlOiAgICAgICBTRk1vbm8tUmVndWxhciwgTWVubG8sIE1vbmFjbywgQ29uc29sYXMsIFwiTGliZXJhdGlvbiBNb25vXCIsIFwiQ291cmllciBOZXdcIiwgbW9ub3NwYWNlICFkZWZhdWx0O1xuJGZvbnQtZmFtaWx5LWJhc2U6ICAgICAgICAgICAgJGZvbnQtZmFtaWx5LXNhbnMtc2VyaWYgIWRlZmF1bHQ7XG4vLyBzdHlsZWxpbnQtZW5hYmxlIHZhbHVlLWtleXdvcmQtY2FzZVxuXG4kZm9udC1zaXplLWJhc2U6ICAgICAgICAgICAgICAxcmVtICFkZWZhdWx0OyAvLyBBc3N1bWVzIHRoZSBicm93c2VyIGRlZmF1bHQsIHR5cGljYWxseSBgMTZweGBcbiRmb250LXNpemUtbGc6ICAgICAgICAgICAgICAgICRmb250LXNpemUtYmFzZSAqIDEuMjUgIWRlZmF1bHQ7XG4kZm9udC1zaXplLXNtOiAgICAgICAgICAgICAgICAkZm9udC1zaXplLWJhc2UgKiAuODc1ICFkZWZhdWx0O1xuXG4kZm9udC13ZWlnaHQtbGlnaHRlcjogICAgICAgICBsaWdodGVyICFkZWZhdWx0O1xuJGZvbnQtd2VpZ2h0LWxpZ2h0OiAgICAgICAgICAgMzAwICFkZWZhdWx0O1xuJGZvbnQtd2VpZ2h0LW5vcm1hbDogICAgICAgICAgNDAwICFkZWZhdWx0O1xuJGZvbnQtd2VpZ2h0LWJvbGQ6ICAgICAgICAgICAgNzAwICFkZWZhdWx0O1xuJGZvbnQtd2VpZ2h0LWJvbGRlcjogICAgICAgICAgYm9sZGVyICFkZWZhdWx0O1xuXG4kZm9udC13ZWlnaHQtYmFzZTogICAgICAgICAgICAkZm9udC13ZWlnaHQtbm9ybWFsICFkZWZhdWx0O1xuJGxpbmUtaGVpZ2h0LWJhc2U6ICAgICAgICAgICAgMS41ICFkZWZhdWx0O1xuXG4kaDEtZm9udC1zaXplOiAgICAgICAgICAgICAgICAkZm9udC1zaXplLWJhc2UgKiAyLjUgIWRlZmF1bHQ7XG4kaDItZm9udC1zaXplOiAgICAgICAgICAgICAgICAkZm9udC1zaXplLWJhc2UgKiAyICFkZWZhdWx0O1xuJGgzLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgJGZvbnQtc2l6ZS1iYXNlICogMS43NSAhZGVmYXVsdDtcbiRoNC1mb250LXNpemU6ICAgICAgICAgICAgICAgICRmb250LXNpemUtYmFzZSAqIDEuNSAhZGVmYXVsdDtcbiRoNS1mb250LXNpemU6ICAgICAgICAgICAgICAgICRmb250LXNpemUtYmFzZSAqIDEuMjUgIWRlZmF1bHQ7XG4kaDYtZm9udC1zaXplOiAgICAgICAgICAgICAgICAkZm9udC1zaXplLWJhc2UgIWRlZmF1bHQ7XG5cbiRoZWFkaW5ncy1tYXJnaW4tYm90dG9tOiAgICAgICRzcGFjZXIgLyAyICFkZWZhdWx0O1xuJGhlYWRpbmdzLWZvbnQtZmFtaWx5OiAgICAgICAgbnVsbCAhZGVmYXVsdDtcbiRoZWFkaW5ncy1mb250LXdlaWdodDogICAgICAgIDUwMCAhZGVmYXVsdDtcbiRoZWFkaW5ncy1saW5lLWhlaWdodDogICAgICAgIDEuMiAhZGVmYXVsdDtcbiRoZWFkaW5ncy1jb2xvcjogICAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG5cbiRkaXNwbGF5MS1zaXplOiAgICAgICAgICAgICAgIDZyZW0gIWRlZmF1bHQ7XG4kZGlzcGxheTItc2l6ZTogICAgICAgICAgICAgICA1LjVyZW0gIWRlZmF1bHQ7XG4kZGlzcGxheTMtc2l6ZTogICAgICAgICAgICAgICA0LjVyZW0gIWRlZmF1bHQ7XG4kZGlzcGxheTQtc2l6ZTogICAgICAgICAgICAgICAzLjVyZW0gIWRlZmF1bHQ7XG5cbiRkaXNwbGF5MS13ZWlnaHQ6ICAgICAgICAgICAgIDMwMCAhZGVmYXVsdDtcbiRkaXNwbGF5Mi13ZWlnaHQ6ICAgICAgICAgICAgIDMwMCAhZGVmYXVsdDtcbiRkaXNwbGF5My13ZWlnaHQ6ICAgICAgICAgICAgIDMwMCAhZGVmYXVsdDtcbiRkaXNwbGF5NC13ZWlnaHQ6ICAgICAgICAgICAgIDMwMCAhZGVmYXVsdDtcbiRkaXNwbGF5LWxpbmUtaGVpZ2h0OiAgICAgICAgICRoZWFkaW5ncy1saW5lLWhlaWdodCAhZGVmYXVsdDtcblxuJGxlYWQtZm9udC1zaXplOiAgICAgICAgICAgICAgJGZvbnQtc2l6ZS1iYXNlICogMS4yNSAhZGVmYXVsdDtcbiRsZWFkLWZvbnQtd2VpZ2h0OiAgICAgICAgICAgIDMwMCAhZGVmYXVsdDtcblxuJHNtYWxsLWZvbnQtc2l6ZTogICAgICAgICAgICAgODAlICFkZWZhdWx0O1xuXG4kdGV4dC1tdXRlZDogICAgICAgICAgICAgICAgICAkZ3JheS02MDAgIWRlZmF1bHQ7XG5cbiRibG9ja3F1b3RlLXNtYWxsLWNvbG9yOiAgICAgICRncmF5LTYwMCAhZGVmYXVsdDtcbiRibG9ja3F1b3RlLXNtYWxsLWZvbnQtc2l6ZTogICRzbWFsbC1mb250LXNpemUgIWRlZmF1bHQ7XG4kYmxvY2txdW90ZS1mb250LXNpemU6ICAgICAgICAkZm9udC1zaXplLWJhc2UgKiAxLjI1ICFkZWZhdWx0O1xuXG4kaHItYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICByZ2JhKCRibGFjaywgLjEpICFkZWZhdWx0O1xuJGhyLWJvcmRlci13aWR0aDogICAgICAgICAgICAgJGJvcmRlci13aWR0aCAhZGVmYXVsdDtcblxuJG1hcmstcGFkZGluZzogICAgICAgICAgICAgICAgLjJlbSAhZGVmYXVsdDtcblxuJGR0LWZvbnQtd2VpZ2h0OiAgICAgICAgICAgICAgJGZvbnQtd2VpZ2h0LWJvbGQgIWRlZmF1bHQ7XG5cbiRrYmQtYm94LXNoYWRvdzogICAgICAgICAgICAgIGluc2V0IDAgLS4xcmVtIDAgcmdiYSgkYmxhY2ssIC4yNSkgIWRlZmF1bHQ7XG4kbmVzdGVkLWtiZC1mb250LXdlaWdodDogICAgICAkZm9udC13ZWlnaHQtYm9sZCAhZGVmYXVsdDtcblxuJGxpc3QtaW5saW5lLXBhZGRpbmc6ICAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XG5cbiRtYXJrLWJnOiAgICAgICAgICAgICAgICAgICAgICNmY2Y4ZTMgIWRlZmF1bHQ7XG5cbiRoci1tYXJnaW4teTogICAgICAgICAgICAgICAgICRzcGFjZXIgIWRlZmF1bHQ7XG5cblxuLy8gVGFibGVzXG4vL1xuLy8gQ3VzdG9taXplcyB0aGUgYC50YWJsZWAgY29tcG9uZW50IHdpdGggYmFzaWMgdmFsdWVzLCBlYWNoIHVzZWQgYWNyb3NzIGFsbCB0YWJsZSB2YXJpYXRpb25zLlxuXG4kdGFibGUtY2VsbC1wYWRkaW5nOiAgICAgICAgICAuNzVyZW0gIWRlZmF1bHQ7XG4kdGFibGUtY2VsbC1wYWRkaW5nLXNtOiAgICAgICAuM3JlbSAhZGVmYXVsdDtcblxuJHRhYmxlLWNvbG9yOiAgICAgICAgICAgICAgICAgJGJvZHktY29sb3IgIWRlZmF1bHQ7XG4kdGFibGUtYmc6ICAgICAgICAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuJHRhYmxlLWFjY2VudC1iZzogICAgICAgICAgICAgcmdiYSgkYmxhY2ssIC4wNSkgIWRlZmF1bHQ7XG4kdGFibGUtaG92ZXItY29sb3I6ICAgICAgICAgICAkdGFibGUtY29sb3IgIWRlZmF1bHQ7XG4kdGFibGUtaG92ZXItYmc6ICAgICAgICAgICAgICByZ2JhKCRibGFjaywgLjA3NSkgIWRlZmF1bHQ7XG4kdGFibGUtYWN0aXZlLWJnOiAgICAgICAgICAgICAkdGFibGUtaG92ZXItYmcgIWRlZmF1bHQ7XG5cbiR0YWJsZS1ib3JkZXItd2lkdGg6ICAgICAgICAgICRib3JkZXItd2lkdGggIWRlZmF1bHQ7XG4kdGFibGUtYm9yZGVyLWNvbG9yOiAgICAgICAgICAkYm9yZGVyLWNvbG9yICFkZWZhdWx0O1xuXG4kdGFibGUtaGVhZC1iZzogICAgICAgICAgICAgICAkZ3JheS0yMDAgIWRlZmF1bHQ7XG4kdGFibGUtaGVhZC1jb2xvcjogICAgICAgICAgICAkZ3JheS03MDAgIWRlZmF1bHQ7XG5cbiR0YWJsZS1kYXJrLWNvbG9yOiAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiR0YWJsZS1kYXJrLWJnOiAgICAgICAgICAgICAgICRncmF5LTgwMCAhZGVmYXVsdDtcbiR0YWJsZS1kYXJrLWFjY2VudC1iZzogICAgICAgIHJnYmEoJHdoaXRlLCAuMDUpICFkZWZhdWx0O1xuJHRhYmxlLWRhcmstaG92ZXItY29sb3I6ICAgICAgJHRhYmxlLWRhcmstY29sb3IgIWRlZmF1bHQ7XG4kdGFibGUtZGFyay1ob3Zlci1iZzogICAgICAgICByZ2JhKCR3aGl0ZSwgLjA3NSkgIWRlZmF1bHQ7XG4kdGFibGUtZGFyay1ib3JkZXItY29sb3I6ICAgICBsaWdodGVuKCR0YWJsZS1kYXJrLWJnLCA3LjUlKSAhZGVmYXVsdDtcblxuJHRhYmxlLXN0cmlwZWQtb3JkZXI6ICAgICAgICAgb2RkICFkZWZhdWx0O1xuXG4kdGFibGUtY2FwdGlvbi1jb2xvcjogICAgICAgICAkdGV4dC1tdXRlZCAhZGVmYXVsdDtcblxuJHRhYmxlLWJnLWxldmVsOiAgICAgICAgICAgICAgLTkgIWRlZmF1bHQ7XG4kdGFibGUtYm9yZGVyLWxldmVsOiAgICAgICAgICAtNiAhZGVmYXVsdDtcblxuXG4vLyBCdXR0b25zICsgRm9ybXNcbi8vXG4vLyBTaGFyZWQgdmFyaWFibGVzIHRoYXQgYXJlIHJlYXNzaWduZWQgdG8gYCRpbnB1dC1gIGFuZCBgJGJ0bi1gIHNwZWNpZmljIHZhcmlhYmxlcy5cblxuJGlucHV0LWJ0bi1wYWRkaW5nLXk6ICAgICAgICAgLjM3NXJlbSAhZGVmYXVsdDtcbiRpbnB1dC1idG4tcGFkZGluZy14OiAgICAgICAgIC43NXJlbSAhZGVmYXVsdDtcbiRpbnB1dC1idG4tZm9udC1mYW1pbHk6ICAgICAgIG51bGwgIWRlZmF1bHQ7XG4kaW5wdXQtYnRuLWZvbnQtc2l6ZTogICAgICAgICAkZm9udC1zaXplLWJhc2UgIWRlZmF1bHQ7XG4kaW5wdXQtYnRuLWxpbmUtaGVpZ2h0OiAgICAgICAkbGluZS1oZWlnaHQtYmFzZSAhZGVmYXVsdDtcblxuJGlucHV0LWJ0bi1mb2N1cy13aWR0aDogICAgICAgLjJyZW0gIWRlZmF1bHQ7XG4kaW5wdXQtYnRuLWZvY3VzLWNvbG9yOiAgICAgICByZ2JhKCRjb21wb25lbnQtYWN0aXZlLWJnLCAuMjUpICFkZWZhdWx0O1xuJGlucHV0LWJ0bi1mb2N1cy1ib3gtc2hhZG93OiAgMCAwIDAgJGlucHV0LWJ0bi1mb2N1cy13aWR0aCAkaW5wdXQtYnRuLWZvY3VzLWNvbG9yICFkZWZhdWx0O1xuXG4kaW5wdXQtYnRuLXBhZGRpbmcteS1zbTogICAgICAuMjVyZW0gIWRlZmF1bHQ7XG4kaW5wdXQtYnRuLXBhZGRpbmcteC1zbTogICAgICAuNXJlbSAhZGVmYXVsdDtcbiRpbnB1dC1idG4tZm9udC1zaXplLXNtOiAgICAgICRmb250LXNpemUtc20gIWRlZmF1bHQ7XG4kaW5wdXQtYnRuLWxpbmUtaGVpZ2h0LXNtOiAgICAkbGluZS1oZWlnaHQtc20gIWRlZmF1bHQ7XG5cbiRpbnB1dC1idG4tcGFkZGluZy15LWxnOiAgICAgIC41cmVtICFkZWZhdWx0O1xuJGlucHV0LWJ0bi1wYWRkaW5nLXgtbGc6ICAgICAgMXJlbSAhZGVmYXVsdDtcbiRpbnB1dC1idG4tZm9udC1zaXplLWxnOiAgICAgICRmb250LXNpemUtbGcgIWRlZmF1bHQ7XG4kaW5wdXQtYnRuLWxpbmUtaGVpZ2h0LWxnOiAgICAkbGluZS1oZWlnaHQtbGcgIWRlZmF1bHQ7XG5cbiRpbnB1dC1idG4tYm9yZGVyLXdpZHRoOiAgICAgICRib3JkZXItd2lkdGggIWRlZmF1bHQ7XG5cblxuLy8gQnV0dG9uc1xuLy9cbi8vIEZvciBlYWNoIG9mIEJvb3RzdHJhcCdzIGJ1dHRvbnMsIGRlZmluZSB0ZXh0LCBiYWNrZ3JvdW5kLCBhbmQgYm9yZGVyIGNvbG9yLlxuXG4kYnRuLXBhZGRpbmcteTogICAgICAgICAgICAgICAkaW5wdXQtYnRuLXBhZGRpbmcteSAhZGVmYXVsdDtcbiRidG4tcGFkZGluZy14OiAgICAgICAgICAgICAgICRpbnB1dC1idG4tcGFkZGluZy14ICFkZWZhdWx0O1xuJGJ0bi1mb250LWZhbWlseTogICAgICAgICAgICAgJGlucHV0LWJ0bi1mb250LWZhbWlseSAhZGVmYXVsdDtcbiRidG4tZm9udC1zaXplOiAgICAgICAgICAgICAgICRpbnB1dC1idG4tZm9udC1zaXplICFkZWZhdWx0O1xuJGJ0bi1saW5lLWhlaWdodDogICAgICAgICAgICAgJGlucHV0LWJ0bi1saW5lLWhlaWdodCAhZGVmYXVsdDtcbiRidG4td2hpdGUtc3BhY2U6ICAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7IC8vIFNldCB0byBgbm93cmFwYCB0byBwcmV2ZW50IHRleHQgd3JhcHBpbmdcblxuJGJ0bi1wYWRkaW5nLXktc206ICAgICAgICAgICAgJGlucHV0LWJ0bi1wYWRkaW5nLXktc20gIWRlZmF1bHQ7XG4kYnRuLXBhZGRpbmcteC1zbTogICAgICAgICAgICAkaW5wdXQtYnRuLXBhZGRpbmcteC1zbSAhZGVmYXVsdDtcbiRidG4tZm9udC1zaXplLXNtOiAgICAgICAgICAgICRpbnB1dC1idG4tZm9udC1zaXplLXNtICFkZWZhdWx0O1xuJGJ0bi1saW5lLWhlaWdodC1zbTogICAgICAgICAgJGlucHV0LWJ0bi1saW5lLWhlaWdodC1zbSAhZGVmYXVsdDtcblxuJGJ0bi1wYWRkaW5nLXktbGc6ICAgICAgICAgICAgJGlucHV0LWJ0bi1wYWRkaW5nLXktbGcgIWRlZmF1bHQ7XG4kYnRuLXBhZGRpbmcteC1sZzogICAgICAgICAgICAkaW5wdXQtYnRuLXBhZGRpbmcteC1sZyAhZGVmYXVsdDtcbiRidG4tZm9udC1zaXplLWxnOiAgICAgICAgICAgICRpbnB1dC1idG4tZm9udC1zaXplLWxnICFkZWZhdWx0O1xuJGJ0bi1saW5lLWhlaWdodC1sZzogICAgICAgICAgJGlucHV0LWJ0bi1saW5lLWhlaWdodC1sZyAhZGVmYXVsdDtcblxuJGJ0bi1ib3JkZXItd2lkdGg6ICAgICAgICAgICAgJGlucHV0LWJ0bi1ib3JkZXItd2lkdGggIWRlZmF1bHQ7XG5cbiRidG4tZm9udC13ZWlnaHQ6ICAgICAgICAgICAgICRmb250LXdlaWdodC1ub3JtYWwgIWRlZmF1bHQ7XG4kYnRuLWJveC1zaGFkb3c6ICAgICAgICAgICAgICBpbnNldCAwIDFweCAwIHJnYmEoJHdoaXRlLCAuMTUpLCAwIDFweCAxcHggcmdiYSgkYmxhY2ssIC4wNzUpICFkZWZhdWx0O1xuJGJ0bi1mb2N1cy13aWR0aDogICAgICAgICAgICAgJGlucHV0LWJ0bi1mb2N1cy13aWR0aCAhZGVmYXVsdDtcbiRidG4tZm9jdXMtYm94LXNoYWRvdzogICAgICAgICRpbnB1dC1idG4tZm9jdXMtYm94LXNoYWRvdyAhZGVmYXVsdDtcbiRidG4tZGlzYWJsZWQtb3BhY2l0eTogICAgICAgIC42NSAhZGVmYXVsdDtcbiRidG4tYWN0aXZlLWJveC1zaGFkb3c6ICAgICAgIGluc2V0IDAgM3B4IDVweCByZ2JhKCRibGFjaywgLjEyNSkgIWRlZmF1bHQ7XG5cbiRidG4tbGluay1kaXNhYmxlZC1jb2xvcjogICAgICRncmF5LTYwMCAhZGVmYXVsdDtcblxuJGJ0bi1ibG9jay1zcGFjaW5nLXk6ICAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XG5cbi8vIEFsbG93cyBmb3IgY3VzdG9taXppbmcgYnV0dG9uIHJhZGl1cyBpbmRlcGVuZGVudGx5IGZyb20gZ2xvYmFsIGJvcmRlciByYWRpdXNcbiRidG4tYm9yZGVyLXJhZGl1czogICAgICAgICAgICRib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuJGJ0bi1ib3JkZXItcmFkaXVzLWxnOiAgICAgICAgJGJvcmRlci1yYWRpdXMtbGcgIWRlZmF1bHQ7XG4kYnRuLWJvcmRlci1yYWRpdXMtc206ICAgICAgICAkYm9yZGVyLXJhZGl1cy1zbSAhZGVmYXVsdDtcblxuJGJ0bi10cmFuc2l0aW9uOiAgICAgICAgICAgICAgY29sb3IgLjE1cyBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciAuMTVzIGVhc2UtaW4tb3V0LCBib3JkZXItY29sb3IgLjE1cyBlYXNlLWluLW91dCwgYm94LXNoYWRvdyAuMTVzIGVhc2UtaW4tb3V0ICFkZWZhdWx0O1xuXG5cbi8vIEZvcm1zXG5cbiRsYWJlbC1tYXJnaW4tYm90dG9tOiAgICAgICAgICAgICAgICAgICAuNXJlbSAhZGVmYXVsdDtcblxuJGlucHV0LXBhZGRpbmcteTogICAgICAgICAgICAgICAgICAgICAgICRpbnB1dC1idG4tcGFkZGluZy15ICFkZWZhdWx0O1xuJGlucHV0LXBhZGRpbmcteDogICAgICAgICAgICAgICAgICAgICAgICRpbnB1dC1idG4tcGFkZGluZy14ICFkZWZhdWx0O1xuJGlucHV0LWZvbnQtZmFtaWx5OiAgICAgICAgICAgICAgICAgICAgICRpbnB1dC1idG4tZm9udC1mYW1pbHkgIWRlZmF1bHQ7XG4kaW5wdXQtZm9udC1zaXplOiAgICAgICAgICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1mb250LXNpemUgIWRlZmF1bHQ7XG4kaW5wdXQtZm9udC13ZWlnaHQ6ICAgICAgICAgICAgICAgICAgICAgJGZvbnQtd2VpZ2h0LWJhc2UgIWRlZmF1bHQ7XG4kaW5wdXQtbGluZS1oZWlnaHQ6ICAgICAgICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1saW5lLWhlaWdodCAhZGVmYXVsdDtcblxuJGlucHV0LXBhZGRpbmcteS1zbTogICAgICAgICAgICAgICAgICAgICRpbnB1dC1idG4tcGFkZGluZy15LXNtICFkZWZhdWx0O1xuJGlucHV0LXBhZGRpbmcteC1zbTogICAgICAgICAgICAgICAgICAgICRpbnB1dC1idG4tcGFkZGluZy14LXNtICFkZWZhdWx0O1xuJGlucHV0LWZvbnQtc2l6ZS1zbTogICAgICAgICAgICAgICAgICAgICRpbnB1dC1idG4tZm9udC1zaXplLXNtICFkZWZhdWx0O1xuJGlucHV0LWxpbmUtaGVpZ2h0LXNtOiAgICAgICAgICAgICAgICAgICRpbnB1dC1idG4tbGluZS1oZWlnaHQtc20gIWRlZmF1bHQ7XG5cbiRpbnB1dC1wYWRkaW5nLXktbGc6ICAgICAgICAgICAgICAgICAgICAkaW5wdXQtYnRuLXBhZGRpbmcteS1sZyAhZGVmYXVsdDtcbiRpbnB1dC1wYWRkaW5nLXgtbGc6ICAgICAgICAgICAgICAgICAgICAkaW5wdXQtYnRuLXBhZGRpbmcteC1sZyAhZGVmYXVsdDtcbiRpbnB1dC1mb250LXNpemUtbGc6ICAgICAgICAgICAgICAgICAgICAkaW5wdXQtYnRuLWZvbnQtc2l6ZS1sZyAhZGVmYXVsdDtcbiRpbnB1dC1saW5lLWhlaWdodC1sZzogICAgICAgICAgICAgICAgICAkaW5wdXQtYnRuLWxpbmUtaGVpZ2h0LWxnICFkZWZhdWx0O1xuXG4kaW5wdXQtYmc6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJGlucHV0LWRpc2FibGVkLWJnOiAgICAgICAgICAgICAgICAgICAgICRncmF5LTIwMCAhZGVmYXVsdDtcblxuJGlucHV0LWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgICAgICRncmF5LTcwMCAhZGVmYXVsdDtcbiRpbnB1dC1ib3JkZXItY29sb3I6ICAgICAgICAgICAgICAgICAgICAkZ3JheS00MDAgIWRlZmF1bHQ7XG4kaW5wdXQtYm9yZGVyLXdpZHRoOiAgICAgICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1ib3JkZXItd2lkdGggIWRlZmF1bHQ7XG4kaW5wdXQtYm94LXNoYWRvdzogICAgICAgICAgICAgICAgICAgICAgaW5zZXQgMCAxcHggMXB4IHJnYmEoJGJsYWNrLCAuMDc1KSAhZGVmYXVsdDtcblxuJGlucHV0LWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAgICAgICAgICRib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuJGlucHV0LWJvcmRlci1yYWRpdXMtbGc6ICAgICAgICAgICAgICAgICRib3JkZXItcmFkaXVzLWxnICFkZWZhdWx0O1xuJGlucHV0LWJvcmRlci1yYWRpdXMtc206ICAgICAgICAgICAgICAgICRib3JkZXItcmFkaXVzLXNtICFkZWZhdWx0O1xuXG4kaW5wdXQtZm9jdXMtYmc6ICAgICAgICAgICAgICAgICAgICAgICAgJGlucHV0LWJnICFkZWZhdWx0O1xuJGlucHV0LWZvY3VzLWJvcmRlci1jb2xvcjogICAgICAgICAgICAgIGxpZ2h0ZW4oJGNvbXBvbmVudC1hY3RpdmUtYmcsIDI1JSkgIWRlZmF1bHQ7XG4kaW5wdXQtZm9jdXMtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgJGlucHV0LWNvbG9yICFkZWZhdWx0O1xuJGlucHV0LWZvY3VzLXdpZHRoOiAgICAgICAgICAgICAgICAgICAgICRpbnB1dC1idG4tZm9jdXMtd2lkdGggIWRlZmF1bHQ7XG4kaW5wdXQtZm9jdXMtYm94LXNoYWRvdzogICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1mb2N1cy1ib3gtc2hhZG93ICFkZWZhdWx0O1xuXG4kaW5wdXQtcGxhY2Vob2xkZXItY29sb3I6ICAgICAgICAgICAgICAgJGdyYXktNjAwICFkZWZhdWx0O1xuJGlucHV0LXBsYWludGV4dC1jb2xvcjogICAgICAgICAgICAgICAgICRib2R5LWNvbG9yICFkZWZhdWx0O1xuXG4kaW5wdXQtaGVpZ2h0LWJvcmRlcjogICAgICAgICAgICAgICAgICAgJGlucHV0LWJvcmRlci13aWR0aCAqIDIgIWRlZmF1bHQ7XG5cbiRpbnB1dC1oZWlnaHQtaW5uZXI6ICAgICAgICAgICAgICAgICAgICBhZGQoJGlucHV0LWxpbmUtaGVpZ2h0ICogMWVtLCAkaW5wdXQtcGFkZGluZy15ICogMikgIWRlZmF1bHQ7XG4kaW5wdXQtaGVpZ2h0LWlubmVyLWhhbGY6ICAgICAgICAgICAgICAgYWRkKCRpbnB1dC1saW5lLWhlaWdodCAqIC41ZW0sICRpbnB1dC1wYWRkaW5nLXkpICFkZWZhdWx0O1xuJGlucHV0LWhlaWdodC1pbm5lci1xdWFydGVyOiAgICAgICAgICAgIGFkZCgkaW5wdXQtbGluZS1oZWlnaHQgKiAuMjVlbSwgJGlucHV0LXBhZGRpbmcteSAvIDIpICFkZWZhdWx0O1xuXG4kaW5wdXQtaGVpZ2h0OiAgICAgICAgICAgICAgICAgICAgICAgICAgYWRkKCRpbnB1dC1saW5lLWhlaWdodCAqIDFlbSwgYWRkKCRpbnB1dC1wYWRkaW5nLXkgKiAyLCAkaW5wdXQtaGVpZ2h0LWJvcmRlciwgZmFsc2UpKSAhZGVmYXVsdDtcbiRpbnB1dC1oZWlnaHQtc206ICAgICAgICAgICAgICAgICAgICAgICBhZGQoJGlucHV0LWxpbmUtaGVpZ2h0LXNtICogMWVtLCBhZGQoJGlucHV0LXBhZGRpbmcteS1zbSAqIDIsICRpbnB1dC1oZWlnaHQtYm9yZGVyLCBmYWxzZSkpICFkZWZhdWx0O1xuJGlucHV0LWhlaWdodC1sZzogICAgICAgICAgICAgICAgICAgICAgIGFkZCgkaW5wdXQtbGluZS1oZWlnaHQtbGcgKiAxZW0sIGFkZCgkaW5wdXQtcGFkZGluZy15LWxnICogMiwgJGlucHV0LWhlaWdodC1ib3JkZXIsIGZhbHNlKSkgIWRlZmF1bHQ7XG5cbiRpbnB1dC10cmFuc2l0aW9uOiAgICAgICAgICAgICAgICAgICAgICBib3JkZXItY29sb3IgLjE1cyBlYXNlLWluLW91dCwgYm94LXNoYWRvdyAuMTVzIGVhc2UtaW4tb3V0ICFkZWZhdWx0O1xuXG4kZm9ybS10ZXh0LW1hcmdpbi10b3A6ICAgICAgICAgICAgICAgICAgLjI1cmVtICFkZWZhdWx0O1xuXG4kZm9ybS1jaGVjay1pbnB1dC1ndXR0ZXI6ICAgICAgICAgICAgICAgMS4yNXJlbSAhZGVmYXVsdDtcbiRmb3JtLWNoZWNrLWlucHV0LW1hcmdpbi15OiAgICAgICAgICAgICAuM3JlbSAhZGVmYXVsdDtcbiRmb3JtLWNoZWNrLWlucHV0LW1hcmdpbi14OiAgICAgICAgICAgICAuMjVyZW0gIWRlZmF1bHQ7XG5cbiRmb3JtLWNoZWNrLWlubGluZS1tYXJnaW4teDogICAgICAgICAgICAuNzVyZW0gIWRlZmF1bHQ7XG4kZm9ybS1jaGVjay1pbmxpbmUtaW5wdXQtbWFyZ2luLXg6ICAgICAgLjMxMjVyZW0gIWRlZmF1bHQ7XG5cbiRmb3JtLWdyaWQtZ3V0dGVyLXdpZHRoOiAgICAgICAgICAgICAgICAxMHB4ICFkZWZhdWx0O1xuJGZvcm0tZ3JvdXAtbWFyZ2luLWJvdHRvbTogICAgICAgICAgICAgIDFyZW0gIWRlZmF1bHQ7XG5cbiRpbnB1dC1ncm91cC1hZGRvbi1jb2xvcjogICAgICAgICAgICAgICAkaW5wdXQtY29sb3IgIWRlZmF1bHQ7XG4kaW5wdXQtZ3JvdXAtYWRkb24tYmc6ICAgICAgICAgICAgICAgICAgJGdyYXktMjAwICFkZWZhdWx0O1xuJGlucHV0LWdyb3VwLWFkZG9uLWJvcmRlci1jb2xvcjogICAgICAgICRpbnB1dC1ib3JkZXItY29sb3IgIWRlZmF1bHQ7XG5cbiRjdXN0b20tZm9ybXMtdHJhbnNpdGlvbjogICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yIC4xNXMgZWFzZS1pbi1vdXQsIGJvcmRlci1jb2xvciAuMTVzIGVhc2UtaW4tb3V0LCBib3gtc2hhZG93IC4xNXMgZWFzZS1pbi1vdXQgIWRlZmF1bHQ7XG5cbiRjdXN0b20tY29udHJvbC1ndXR0ZXI6ICAgICAgICAgICAgICAgICAuNXJlbSAhZGVmYXVsdDtcbiRjdXN0b20tY29udHJvbC1zcGFjZXIteDogICAgICAgICAgICAgICAxcmVtICFkZWZhdWx0O1xuJGN1c3RvbS1jb250cm9sLWN1cnNvcjogICAgICAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG5cbiRjdXN0b20tY29udHJvbC1pbmRpY2F0b3Itc2l6ZTogICAgICAgICAxcmVtICFkZWZhdWx0O1xuJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1iZzogICAgICAgICAgICRpbnB1dC1iZyAhZGVmYXVsdDtcblxuJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1iZy1zaXplOiAgICAgIDUwJSA1MCUgIWRlZmF1bHQ7XG4kY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWJveC1zaGFkb3c6ICAgJGlucHV0LWJveC1zaGFkb3cgIWRlZmF1bHQ7XG4kY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWJvcmRlci1jb2xvcjogJGdyYXktNTAwICFkZWZhdWx0O1xuJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1ib3JkZXItd2lkdGg6ICRpbnB1dC1ib3JkZXItd2lkdGggIWRlZmF1bHQ7XG5cbiRjdXN0b20tY29udHJvbC1sYWJlbC1jb2xvcjogICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuXG4kY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWRpc2FibGVkLWJnOiAgICAgICAgICAkaW5wdXQtZGlzYWJsZWQtYmcgIWRlZmF1bHQ7XG4kY3VzdG9tLWNvbnRyb2wtbGFiZWwtZGlzYWJsZWQtY29sb3I6ICAgICAgICAgICAkZ3JheS02MDAgIWRlZmF1bHQ7XG5cbiRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItY2hlY2tlZC1jb2xvcjogICAgICAgICRjb21wb25lbnQtYWN0aXZlLWNvbG9yICFkZWZhdWx0O1xuJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1jaGVja2VkLWJnOiAgICAgICAgICAgJGNvbXBvbmVudC1hY3RpdmUtYmcgIWRlZmF1bHQ7XG4kY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWNoZWNrZWQtZGlzYWJsZWQtYmc6ICByZ2JhKHRoZW1lLWNvbG9yKFwicHJpbWFyeVwiKSwgLjUpICFkZWZhdWx0O1xuJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1jaGVja2VkLWJveC1zaGFkb3c6ICAgbm9uZSAhZGVmYXVsdDtcbiRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItY2hlY2tlZC1ib3JkZXItY29sb3I6ICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItY2hlY2tlZC1iZyAhZGVmYXVsdDtcblxuJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1mb2N1cy1ib3gtc2hhZG93OiAgICAgJGlucHV0LWZvY3VzLWJveC1zaGFkb3cgIWRlZmF1bHQ7XG4kY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWZvY3VzLWJvcmRlci1jb2xvcjogICAkaW5wdXQtZm9jdXMtYm9yZGVyLWNvbG9yICFkZWZhdWx0O1xuXG4kY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWFjdGl2ZS1jb2xvcjogICAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1jb2xvciAhZGVmYXVsdDtcbiRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItYWN0aXZlLWJnOiAgICAgICAgICAgIGxpZ2h0ZW4oJGNvbXBvbmVudC1hY3RpdmUtYmcsIDM1JSkgIWRlZmF1bHQ7XG4kY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWFjdGl2ZS1ib3gtc2hhZG93OiAgICBub25lICFkZWZhdWx0O1xuJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1hY3RpdmUtYm9yZGVyLWNvbG9yOiAgJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1hY3RpdmUtYmcgIWRlZmF1bHQ7XG5cbiRjdXN0b20tY2hlY2tib3gtaW5kaWNhdG9yLWJvcmRlci1yYWRpdXM6ICAgICAgICRib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuJGN1c3RvbS1jaGVja2JveC1pbmRpY2F0b3ItaWNvbi1jaGVja2VkOiAgICAgICAgdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLDxzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB3aWR0aD0nOCcgaGVpZ2h0PSc4JyB2aWV3Qm94PScwIDAgOCA4Jz48cGF0aCBmaWxsPScjeyRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItY2hlY2tlZC1jb2xvcn0nIGQ9J002LjU2NC43NWwtMy41OSAzLjYxMi0xLjUzOC0xLjU1TDAgNC4yNmwyLjk3NCAyLjk5TDggMi4xOTN6Jy8+PC9zdmc+XCIpICFkZWZhdWx0O1xuXG4kY3VzdG9tLWNoZWNrYm94LWluZGljYXRvci1pbmRldGVybWluYXRlLWJnOiAgICAgICAgICAgJGNvbXBvbmVudC1hY3RpdmUtYmcgIWRlZmF1bHQ7XG4kY3VzdG9tLWNoZWNrYm94LWluZGljYXRvci1pbmRldGVybWluYXRlLWNvbG9yOiAgICAgICAgJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1jaGVja2VkLWNvbG9yICFkZWZhdWx0O1xuJGN1c3RvbS1jaGVja2JveC1pbmRpY2F0b3ItaWNvbi1pbmRldGVybWluYXRlOiAgICAgICAgIHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCw8c3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgd2lkdGg9JzQnIGhlaWdodD0nNCcgdmlld0JveD0nMCAwIDQgNCc+PHBhdGggc3Ryb2tlPScjeyRjdXN0b20tY2hlY2tib3gtaW5kaWNhdG9yLWluZGV0ZXJtaW5hdGUtY29sb3J9JyBkPSdNMCAyaDQnLz48L3N2Zz5cIikgIWRlZmF1bHQ7XG4kY3VzdG9tLWNoZWNrYm94LWluZGljYXRvci1pbmRldGVybWluYXRlLWJveC1zaGFkb3c6ICAgbm9uZSAhZGVmYXVsdDtcbiRjdXN0b20tY2hlY2tib3gtaW5kaWNhdG9yLWluZGV0ZXJtaW5hdGUtYm9yZGVyLWNvbG9yOiAkY3VzdG9tLWNoZWNrYm94LWluZGljYXRvci1pbmRldGVybWluYXRlLWJnICFkZWZhdWx0O1xuXG4kY3VzdG9tLXJhZGlvLWluZGljYXRvci1ib3JkZXItcmFkaXVzOiAgICAgICAgICA1MCUgIWRlZmF1bHQ7XG4kY3VzdG9tLXJhZGlvLWluZGljYXRvci1pY29uLWNoZWNrZWQ6ICAgICAgICAgICB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsPHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHdpZHRoPScxMicgaGVpZ2h0PScxMicgdmlld0JveD0nLTQgLTQgOCA4Jz48Y2lyY2xlIHI9JzMnIGZpbGw9JyN7JGN1c3RvbS1jb250cm9sLWluZGljYXRvci1jaGVja2VkLWNvbG9yfScvPjwvc3ZnPlwiKSAhZGVmYXVsdDtcblxuJGN1c3RvbS1zd2l0Y2gtd2lkdGg6ICAgICAgICAgICAgICAgICAgICAgICAgICAgJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1zaXplICogMS43NSAhZGVmYXVsdDtcbiRjdXN0b20tc3dpdGNoLWluZGljYXRvci1ib3JkZXItcmFkaXVzOiAgICAgICAgICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3Itc2l6ZSAvIDIgIWRlZmF1bHQ7XG4kY3VzdG9tLXN3aXRjaC1pbmRpY2F0b3Itc2l6ZTogICAgICAgICAgICAgICAgICBzdWJ0cmFjdCgkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLXNpemUsICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItYm9yZGVyLXdpZHRoICogNCkgIWRlZmF1bHQ7XG5cbiRjdXN0b20tc2VsZWN0LXBhZGRpbmcteTogICAgICAgICAgICRpbnB1dC1wYWRkaW5nLXkgIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1wYWRkaW5nLXg6ICAgICAgICAgICAkaW5wdXQtcGFkZGluZy14ICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtZm9udC1mYW1pbHk6ICAgICAgICAgJGlucHV0LWZvbnQtZmFtaWx5ICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtZm9udC1zaXplOiAgICAgICAgICAgJGlucHV0LWZvbnQtc2l6ZSAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LWhlaWdodDogICAgICAgICAgICAgICRpbnB1dC1oZWlnaHQgIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1pbmRpY2F0b3ItcGFkZGluZzogICAxcmVtICFkZWZhdWx0OyAvLyBFeHRyYSBwYWRkaW5nIHRvIGFjY291bnQgZm9yIHRoZSBwcmVzZW5jZSBvZiB0aGUgYmFja2dyb3VuZC1pbWFnZSBiYXNlZCBpbmRpY2F0b3JcbiRjdXN0b20tc2VsZWN0LWZvbnQtd2VpZ2h0OiAgICAgICAgICRpbnB1dC1mb250LXdlaWdodCAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LWxpbmUtaGVpZ2h0OiAgICAgICAgICRpbnB1dC1saW5lLWhlaWdodCAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LWNvbG9yOiAgICAgICAgICAgICAgICRpbnB1dC1jb2xvciAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LWRpc2FibGVkLWNvbG9yOiAgICAgICRncmF5LTYwMCAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LWJnOiAgICAgICAgICAgICAgICAgICRpbnB1dC1iZyAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LWRpc2FibGVkLWJnOiAgICAgICAgICRncmF5LTIwMCAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LWJnLXNpemU6ICAgICAgICAgICAgIDhweCAxMHB4ICFkZWZhdWx0OyAvLyBJbiBwaXhlbHMgYmVjYXVzZSBpbWFnZSBkaW1lbnNpb25zXG4kY3VzdG9tLXNlbGVjdC1pbmRpY2F0b3ItY29sb3I6ICAgICAkZ3JheS04MDAgIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1pbmRpY2F0b3I6ICAgICAgICAgICB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsPHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHdpZHRoPSc0JyBoZWlnaHQ9JzUnIHZpZXdCb3g9JzAgMCA0IDUnPjxwYXRoIGZpbGw9JyN7JGN1c3RvbS1zZWxlY3QtaW5kaWNhdG9yLWNvbG9yfScgZD0nTTIgMEwwIDJoNHptMCA1TDAgM2g0eicvPjwvc3ZnPlwiKSAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LWJhY2tncm91bmQ6ICAgICAgICAgIGVzY2FwZS1zdmcoJGN1c3RvbS1zZWxlY3QtaW5kaWNhdG9yKSBuby1yZXBlYXQgcmlnaHQgJGN1c3RvbS1zZWxlY3QtcGFkZGluZy14IGNlbnRlciAvICRjdXN0b20tc2VsZWN0LWJnLXNpemUgIWRlZmF1bHQ7IC8vIFVzZWQgc28gd2UgY2FuIGhhdmUgbXVsdGlwbGUgYmFja2dyb3VuZCBlbGVtZW50cyAoZS5nLiwgYXJyb3cgYW5kIGZlZWRiYWNrIGljb24pXG5cbiRjdXN0b20tc2VsZWN0LWZlZWRiYWNrLWljb24tcGFkZGluZy1yaWdodDogYWRkKDFlbSAqIC43NSwgKDIgKiAkY3VzdG9tLXNlbGVjdC1wYWRkaW5nLXkgKiAuNzUpICsgJGN1c3RvbS1zZWxlY3QtcGFkZGluZy14ICsgJGN1c3RvbS1zZWxlY3QtaW5kaWNhdG9yLXBhZGRpbmcpICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtZmVlZGJhY2staWNvbi1wb3NpdGlvbjogICAgICBjZW50ZXIgcmlnaHQgKCRjdXN0b20tc2VsZWN0LXBhZGRpbmcteCArICRjdXN0b20tc2VsZWN0LWluZGljYXRvci1wYWRkaW5nKSAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LWZlZWRiYWNrLWljb24tc2l6ZTogICAgICAgICAgJGlucHV0LWhlaWdodC1pbm5lci1oYWxmICRpbnB1dC1oZWlnaHQtaW5uZXItaGFsZiAhZGVmYXVsdDtcblxuJGN1c3RvbS1zZWxlY3QtYm9yZGVyLXdpZHRoOiAgICAgICAgJGlucHV0LWJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LWJvcmRlci1jb2xvcjogICAgICAgICRpbnB1dC1ib3JkZXItY29sb3IgIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1ib3JkZXItcmFkaXVzOiAgICAgICAkYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LWJveC1zaGFkb3c6ICAgICAgICAgIGluc2V0IDAgMXB4IDJweCByZ2JhKCRibGFjaywgLjA3NSkgIWRlZmF1bHQ7XG5cbiRjdXN0b20tc2VsZWN0LWZvY3VzLWJvcmRlci1jb2xvcjogICRpbnB1dC1mb2N1cy1ib3JkZXItY29sb3IgIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1mb2N1cy13aWR0aDogICAgICAgICAkaW5wdXQtZm9jdXMtd2lkdGggIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1mb2N1cy1ib3gtc2hhZG93OiAgICAwIDAgMCAkY3VzdG9tLXNlbGVjdC1mb2N1cy13aWR0aCAkaW5wdXQtYnRuLWZvY3VzLWNvbG9yICFkZWZhdWx0O1xuXG4kY3VzdG9tLXNlbGVjdC1wYWRkaW5nLXktc206ICAgICAgICAkaW5wdXQtcGFkZGluZy15LXNtICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtcGFkZGluZy14LXNtOiAgICAgICAgJGlucHV0LXBhZGRpbmcteC1zbSAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LWZvbnQtc2l6ZS1zbTogICAgICAgICRpbnB1dC1mb250LXNpemUtc20gIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1oZWlnaHQtc206ICAgICAgICAgICAkaW5wdXQtaGVpZ2h0LXNtICFkZWZhdWx0O1xuXG4kY3VzdG9tLXNlbGVjdC1wYWRkaW5nLXktbGc6ICAgICAgICAkaW5wdXQtcGFkZGluZy15LWxnICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtcGFkZGluZy14LWxnOiAgICAgICAgJGlucHV0LXBhZGRpbmcteC1sZyAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LWZvbnQtc2l6ZS1sZzogICAgICAgICRpbnB1dC1mb250LXNpemUtbGcgIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1oZWlnaHQtbGc6ICAgICAgICAgICAkaW5wdXQtaGVpZ2h0LWxnICFkZWZhdWx0O1xuXG4kY3VzdG9tLXJhbmdlLXRyYWNrLXdpZHRoOiAgICAgICAgICAxMDAlICFkZWZhdWx0O1xuJGN1c3RvbS1yYW5nZS10cmFjay1oZWlnaHQ6ICAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XG4kY3VzdG9tLXJhbmdlLXRyYWNrLWN1cnNvcjogICAgICAgICBwb2ludGVyICFkZWZhdWx0O1xuJGN1c3RvbS1yYW5nZS10cmFjay1iZzogICAgICAgICAgICAgJGdyYXktMzAwICFkZWZhdWx0O1xuJGN1c3RvbS1yYW5nZS10cmFjay1ib3JkZXItcmFkaXVzOiAgMXJlbSAhZGVmYXVsdDtcbiRjdXN0b20tcmFuZ2UtdHJhY2stYm94LXNoYWRvdzogICAgIGluc2V0IDAgLjI1cmVtIC4yNXJlbSByZ2JhKCRibGFjaywgLjEpICFkZWZhdWx0O1xuXG4kY3VzdG9tLXJhbmdlLXRodW1iLXdpZHRoOiAgICAgICAgICAgICAgICAgICAxcmVtICFkZWZhdWx0O1xuJGN1c3RvbS1yYW5nZS10aHVtYi1oZWlnaHQ6ICAgICAgICAgICAgICAgICAgJGN1c3RvbS1yYW5nZS10aHVtYi13aWR0aCAhZGVmYXVsdDtcbiRjdXN0b20tcmFuZ2UtdGh1bWItYmc6ICAgICAgICAgICAgICAgICAgICAgICRjb21wb25lbnQtYWN0aXZlLWJnICFkZWZhdWx0O1xuJGN1c3RvbS1yYW5nZS10aHVtYi1ib3JkZXI6ICAgICAgICAgICAgICAgICAgMCAhZGVmYXVsdDtcbiRjdXN0b20tcmFuZ2UtdGh1bWItYm9yZGVyLXJhZGl1czogICAgICAgICAgIDFyZW0gIWRlZmF1bHQ7XG4kY3VzdG9tLXJhbmdlLXRodW1iLWJveC1zaGFkb3c6ICAgICAgICAgICAgICAwIC4xcmVtIC4yNXJlbSByZ2JhKCRibGFjaywgLjEpICFkZWZhdWx0O1xuJGN1c3RvbS1yYW5nZS10aHVtYi1mb2N1cy1ib3gtc2hhZG93OiAgICAgICAgMCAwIDAgMXB4ICRib2R5LWJnLCAkaW5wdXQtZm9jdXMtYm94LXNoYWRvdyAhZGVmYXVsdDtcbiRjdXN0b20tcmFuZ2UtdGh1bWItZm9jdXMtYm94LXNoYWRvdy13aWR0aDogICRpbnB1dC1mb2N1cy13aWR0aCAhZGVmYXVsdDsgLy8gRm9yIGZvY3VzIGJveCBzaGFkb3cgaXNzdWUgaW4gSUUvRWRnZVxuJGN1c3RvbS1yYW5nZS10aHVtYi1hY3RpdmUtYmc6ICAgICAgICAgICAgICAgbGlnaHRlbigkY29tcG9uZW50LWFjdGl2ZS1iZywgMzUlKSAhZGVmYXVsdDtcbiRjdXN0b20tcmFuZ2UtdGh1bWItZGlzYWJsZWQtYmc6ICAgICAgICAgICAgICRncmF5LTUwMCAhZGVmYXVsdDtcblxuJGN1c3RvbS1maWxlLWhlaWdodDogICAgICAgICAgICAgICAgJGlucHV0LWhlaWdodCAhZGVmYXVsdDtcbiRjdXN0b20tZmlsZS1oZWlnaHQtaW5uZXI6ICAgICAgICAgICRpbnB1dC1oZWlnaHQtaW5uZXIgIWRlZmF1bHQ7XG4kY3VzdG9tLWZpbGUtZm9jdXMtYm9yZGVyLWNvbG9yOiAgICAkaW5wdXQtZm9jdXMtYm9yZGVyLWNvbG9yICFkZWZhdWx0O1xuJGN1c3RvbS1maWxlLWZvY3VzLWJveC1zaGFkb3c6ICAgICAgJGlucHV0LWZvY3VzLWJveC1zaGFkb3cgIWRlZmF1bHQ7XG4kY3VzdG9tLWZpbGUtZGlzYWJsZWQtYmc6ICAgICAgICAgICAkaW5wdXQtZGlzYWJsZWQtYmcgIWRlZmF1bHQ7XG5cbiRjdXN0b20tZmlsZS1wYWRkaW5nLXk6ICAgICAgICAgICAgICRpbnB1dC1wYWRkaW5nLXkgIWRlZmF1bHQ7XG4kY3VzdG9tLWZpbGUtcGFkZGluZy14OiAgICAgICAgICAgICAkaW5wdXQtcGFkZGluZy14ICFkZWZhdWx0O1xuJGN1c3RvbS1maWxlLWxpbmUtaGVpZ2h0OiAgICAgICAgICAgJGlucHV0LWxpbmUtaGVpZ2h0ICFkZWZhdWx0O1xuJGN1c3RvbS1maWxlLWZvbnQtZmFtaWx5OiAgICAgICAgICAgJGlucHV0LWZvbnQtZmFtaWx5ICFkZWZhdWx0O1xuJGN1c3RvbS1maWxlLWZvbnQtd2VpZ2h0OiAgICAgICAgICAgJGlucHV0LWZvbnQtd2VpZ2h0ICFkZWZhdWx0O1xuJGN1c3RvbS1maWxlLWNvbG9yOiAgICAgICAgICAgICAgICAgJGlucHV0LWNvbG9yICFkZWZhdWx0O1xuJGN1c3RvbS1maWxlLWJnOiAgICAgICAgICAgICAgICAgICAgJGlucHV0LWJnICFkZWZhdWx0O1xuJGN1c3RvbS1maWxlLWJvcmRlci13aWR0aDogICAgICAgICAgJGlucHV0LWJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiRjdXN0b20tZmlsZS1ib3JkZXItY29sb3I6ICAgICAgICAgICRpbnB1dC1ib3JkZXItY29sb3IgIWRlZmF1bHQ7XG4kY3VzdG9tLWZpbGUtYm9yZGVyLXJhZGl1czogICAgICAgICAkaW5wdXQtYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcbiRjdXN0b20tZmlsZS1ib3gtc2hhZG93OiAgICAgICAgICAgICRpbnB1dC1ib3gtc2hhZG93ICFkZWZhdWx0O1xuJGN1c3RvbS1maWxlLWJ1dHRvbi1jb2xvcjogICAgICAgICAgJGN1c3RvbS1maWxlLWNvbG9yICFkZWZhdWx0O1xuJGN1c3RvbS1maWxlLWJ1dHRvbi1iZzogICAgICAgICAgICAgJGlucHV0LWdyb3VwLWFkZG9uLWJnICFkZWZhdWx0O1xuJGN1c3RvbS1maWxlLXRleHQ6IChcbiAgZW46IFwiQnJvd3NlXCJcbikgIWRlZmF1bHQ7XG5cblxuLy8gRm9ybSB2YWxpZGF0aW9uXG5cbiRmb3JtLWZlZWRiYWNrLW1hcmdpbi10b3A6ICAgICAgICAgICRmb3JtLXRleHQtbWFyZ2luLXRvcCAhZGVmYXVsdDtcbiRmb3JtLWZlZWRiYWNrLWZvbnQtc2l6ZTogICAgICAgICAgICRzbWFsbC1mb250LXNpemUgIWRlZmF1bHQ7XG4kZm9ybS1mZWVkYmFjay12YWxpZC1jb2xvcjogICAgICAgICB0aGVtZS1jb2xvcihcInN1Y2Nlc3NcIikgIWRlZmF1bHQ7XG4kZm9ybS1mZWVkYmFjay1pbnZhbGlkLWNvbG9yOiAgICAgICB0aGVtZS1jb2xvcihcImRhbmdlclwiKSAhZGVmYXVsdDtcblxuJGZvcm0tZmVlZGJhY2staWNvbi12YWxpZC1jb2xvcjogICAgJGZvcm0tZmVlZGJhY2stdmFsaWQtY29sb3IgIWRlZmF1bHQ7XG4kZm9ybS1mZWVkYmFjay1pY29uLXZhbGlkOiAgICAgICAgICB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsPHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHdpZHRoPSc4JyBoZWlnaHQ9JzgnIHZpZXdCb3g9JzAgMCA4IDgnPjxwYXRoIGZpbGw9JyN7JGZvcm0tZmVlZGJhY2staWNvbi12YWxpZC1jb2xvcn0nIGQ9J00yLjMgNi43M0wuNiA0LjUzYy0uNC0xLjA0LjQ2LTEuNCAxLjEtLjhsMS4xIDEuNCAzLjQtMy44Yy42LS42MyAxLjYtLjI3IDEuMi43bC00IDQuNmMtLjQzLjUtLjguNC0xLjEuMXonLz48L3N2Zz5cIikgIWRlZmF1bHQ7XG4kZm9ybS1mZWVkYmFjay1pY29uLWludmFsaWQtY29sb3I6ICAkZm9ybS1mZWVkYmFjay1pbnZhbGlkLWNvbG9yICFkZWZhdWx0O1xuJGZvcm0tZmVlZGJhY2staWNvbi1pbnZhbGlkOiAgICAgICAgdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLDxzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB3aWR0aD0nMTInIGhlaWdodD0nMTInIGZpbGw9J25vbmUnIHN0cm9rZT0nI3skZm9ybS1mZWVkYmFjay1pY29uLWludmFsaWQtY29sb3J9JyB2aWV3Qm94PScwIDAgMTIgMTInPjxjaXJjbGUgY3g9JzYnIGN5PSc2JyByPSc0LjUnLz48cGF0aCBzdHJva2UtbGluZWpvaW49J3JvdW5kJyBkPSdNNS44IDMuNmguNEw2IDYuNXonLz48Y2lyY2xlIGN4PSc2JyBjeT0nOC4yJyByPScuNicgZmlsbD0nI3skZm9ybS1mZWVkYmFjay1pY29uLWludmFsaWQtY29sb3J9JyBzdHJva2U9J25vbmUnLz48L3N2Zz5cIikgIWRlZmF1bHQ7XG5cbiRmb3JtLXZhbGlkYXRpb24tc3RhdGVzOiAoKSAhZGVmYXVsdDtcbi8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBzY3NzL2RvbGxhci12YXJpYWJsZS1kZWZhdWx0XG4kZm9ybS12YWxpZGF0aW9uLXN0YXRlczogbWFwLW1lcmdlKFxuICAoXG4gICAgXCJ2YWxpZFwiOiAoXG4gICAgICBcImNvbG9yXCI6ICRmb3JtLWZlZWRiYWNrLXZhbGlkLWNvbG9yLFxuICAgICAgXCJpY29uXCI6ICRmb3JtLWZlZWRiYWNrLWljb24tdmFsaWRcbiAgICApLFxuICAgIFwiaW52YWxpZFwiOiAoXG4gICAgICBcImNvbG9yXCI6ICRmb3JtLWZlZWRiYWNrLWludmFsaWQtY29sb3IsXG4gICAgICBcImljb25cIjogJGZvcm0tZmVlZGJhY2staWNvbi1pbnZhbGlkXG4gICAgKSxcbiAgKSxcbiAgJGZvcm0tdmFsaWRhdGlvbi1zdGF0ZXNcbik7XG5cbi8vIFotaW5kZXggbWFzdGVyIGxpc3Rcbi8vXG4vLyBXYXJuaW5nOiBBdm9pZCBjdXN0b21pemluZyB0aGVzZSB2YWx1ZXMuIFRoZXkncmUgdXNlZCBmb3IgYSBiaXJkJ3MgZXllIHZpZXdcbi8vIG9mIGNvbXBvbmVudHMgZGVwZW5kZW50IG9uIHRoZSB6LWF4aXMgYW5kIGFyZSBkZXNpZ25lZCB0byBhbGwgd29yayB0b2dldGhlci5cblxuJHppbmRleC1kcm9wZG93bjogICAgICAgICAgICAgICAgICAgMTAwMCAhZGVmYXVsdDtcbiR6aW5kZXgtc3RpY2t5OiAgICAgICAgICAgICAgICAgICAgIDEwMjAgIWRlZmF1bHQ7XG4kemluZGV4LWZpeGVkOiAgICAgICAgICAgICAgICAgICAgICAxMDMwICFkZWZhdWx0O1xuJHppbmRleC1tb2RhbC1iYWNrZHJvcDogICAgICAgICAgICAgMTA0MCAhZGVmYXVsdDtcbiR6aW5kZXgtbW9kYWw6ICAgICAgICAgICAgICAgICAgICAgIDEwNTAgIWRlZmF1bHQ7XG4kemluZGV4LXBvcG92ZXI6ICAgICAgICAgICAgICAgICAgICAxMDYwICFkZWZhdWx0O1xuJHppbmRleC10b29sdGlwOiAgICAgICAgICAgICAgICAgICAgMTA3MCAhZGVmYXVsdDtcblxuXG4vLyBOYXZzXG5cbiRuYXYtbGluay1wYWRkaW5nLXk6ICAgICAgICAgICAgICAgIC41cmVtICFkZWZhdWx0O1xuJG5hdi1saW5rLXBhZGRpbmcteDogICAgICAgICAgICAgICAgMXJlbSAhZGVmYXVsdDtcbiRuYXYtbGluay1kaXNhYmxlZC1jb2xvcjogICAgICAgICAgICRncmF5LTYwMCAhZGVmYXVsdDtcblxuJG5hdi10YWJzLWJvcmRlci1jb2xvcjogICAgICAgICAgICAgJGdyYXktMzAwICFkZWZhdWx0O1xuJG5hdi10YWJzLWJvcmRlci13aWR0aDogICAgICAgICAgICAgJGJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiRuYXYtdGFicy1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgICRib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuJG5hdi10YWJzLWxpbmstaG92ZXItYm9yZGVyLWNvbG9yOiAgJGdyYXktMjAwICRncmF5LTIwMCAkbmF2LXRhYnMtYm9yZGVyLWNvbG9yICFkZWZhdWx0O1xuJG5hdi10YWJzLWxpbmstYWN0aXZlLWNvbG9yOiAgICAgICAgJGdyYXktNzAwICFkZWZhdWx0O1xuJG5hdi10YWJzLWxpbmstYWN0aXZlLWJnOiAgICAgICAgICAgJGJvZHktYmcgIWRlZmF1bHQ7XG4kbmF2LXRhYnMtbGluay1hY3RpdmUtYm9yZGVyLWNvbG9yOiAkZ3JheS0zMDAgJGdyYXktMzAwICRuYXYtdGFicy1saW5rLWFjdGl2ZS1iZyAhZGVmYXVsdDtcblxuJG5hdi1waWxscy1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgJGJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG4kbmF2LXBpbGxzLWxpbmstYWN0aXZlLWNvbG9yOiAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1jb2xvciAhZGVmYXVsdDtcbiRuYXYtcGlsbHMtbGluay1hY3RpdmUtYmc6ICAgICAgICAgICRjb21wb25lbnQtYWN0aXZlLWJnICFkZWZhdWx0O1xuXG4kbmF2LWRpdmlkZXItY29sb3I6ICAgICAgICAgICAgICAgICAkZ3JheS0yMDAgIWRlZmF1bHQ7XG4kbmF2LWRpdmlkZXItbWFyZ2luLXk6ICAgICAgICAgICAgICAkc3BhY2VyIC8gMiAhZGVmYXVsdDtcblxuXG4vLyBOYXZiYXJcblxuJG5hdmJhci1wYWRkaW5nLXk6ICAgICAgICAgICAgICAgICAgJHNwYWNlciAvIDIgIWRlZmF1bHQ7XG4kbmF2YmFyLXBhZGRpbmcteDogICAgICAgICAgICAgICAgICAkc3BhY2VyICFkZWZhdWx0O1xuXG4kbmF2YmFyLW5hdi1saW5rLXBhZGRpbmcteDogICAgICAgICAuNXJlbSAhZGVmYXVsdDtcblxuJG5hdmJhci1icmFuZC1mb250LXNpemU6ICAgICAgICAgICAgJGZvbnQtc2l6ZS1sZyAhZGVmYXVsdDtcbi8vIENvbXB1dGUgdGhlIG5hdmJhci1icmFuZCBwYWRkaW5nLXkgc28gdGhlIG5hdmJhci1icmFuZCB3aWxsIGhhdmUgdGhlIHNhbWUgaGVpZ2h0IGFzIG5hdmJhci10ZXh0IGFuZCBuYXYtbGlua1xuJG5hdi1saW5rLWhlaWdodDogICAgICAgICAgICAgICAgICAgJGZvbnQtc2l6ZS1iYXNlICogJGxpbmUtaGVpZ2h0LWJhc2UgKyAkbmF2LWxpbmstcGFkZGluZy15ICogMiAhZGVmYXVsdDtcbiRuYXZiYXItYnJhbmQtaGVpZ2h0OiAgICAgICAgICAgICAgICRuYXZiYXItYnJhbmQtZm9udC1zaXplICogJGxpbmUtaGVpZ2h0LWJhc2UgIWRlZmF1bHQ7XG4kbmF2YmFyLWJyYW5kLXBhZGRpbmcteTogICAgICAgICAgICAoJG5hdi1saW5rLWhlaWdodCAtICRuYXZiYXItYnJhbmQtaGVpZ2h0KSAvIDIgIWRlZmF1bHQ7XG5cbiRuYXZiYXItdG9nZ2xlci1wYWRkaW5nLXk6ICAgICAgICAgIC4yNXJlbSAhZGVmYXVsdDtcbiRuYXZiYXItdG9nZ2xlci1wYWRkaW5nLXg6ICAgICAgICAgIC43NXJlbSAhZGVmYXVsdDtcbiRuYXZiYXItdG9nZ2xlci1mb250LXNpemU6ICAgICAgICAgICRmb250LXNpemUtbGcgIWRlZmF1bHQ7XG4kbmF2YmFyLXRvZ2dsZXItYm9yZGVyLXJhZGl1czogICAgICAkYnRuLWJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG5cbiRuYXZiYXItZGFyay1jb2xvcjogICAgICAgICAgICAgICAgIHJnYmEoJHdoaXRlLCAuNSkgIWRlZmF1bHQ7XG4kbmF2YmFyLWRhcmstaG92ZXItY29sb3I6ICAgICAgICAgICByZ2JhKCR3aGl0ZSwgLjc1KSAhZGVmYXVsdDtcbiRuYXZiYXItZGFyay1hY3RpdmUtY29sb3I6ICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRuYXZiYXItZGFyay1kaXNhYmxlZC1jb2xvcjogICAgICAgIHJnYmEoJHdoaXRlLCAuMjUpICFkZWZhdWx0O1xuJG5hdmJhci1kYXJrLXRvZ2dsZXItaWNvbi1iZzogICAgICAgdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLDxzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB3aWR0aD0nMzAnIGhlaWdodD0nMzAnIHZpZXdCb3g9JzAgMCAzMCAzMCc+PHBhdGggc3Ryb2tlPScjeyRuYXZiYXItZGFyay1jb2xvcn0nIHN0cm9rZS1saW5lY2FwPSdyb3VuZCcgc3Ryb2tlLW1pdGVybGltaXQ9JzEwJyBzdHJva2Utd2lkdGg9JzInIGQ9J000IDdoMjJNNCAxNWgyMk00IDIzaDIyJy8+PC9zdmc+XCIpICFkZWZhdWx0O1xuJG5hdmJhci1kYXJrLXRvZ2dsZXItYm9yZGVyLWNvbG9yOiAgcmdiYSgkd2hpdGUsIC4xKSAhZGVmYXVsdDtcblxuJG5hdmJhci1saWdodC1jb2xvcjogICAgICAgICAgICAgICAgcmdiYSgkYmxhY2ssIC41KSAhZGVmYXVsdDtcbiRuYXZiYXItbGlnaHQtaG92ZXItY29sb3I6ICAgICAgICAgIHJnYmEoJGJsYWNrLCAuNykgIWRlZmF1bHQ7XG4kbmF2YmFyLWxpZ2h0LWFjdGl2ZS1jb2xvcjogICAgICAgICByZ2JhKCRibGFjaywgLjkpICFkZWZhdWx0O1xuJG5hdmJhci1saWdodC1kaXNhYmxlZC1jb2xvcjogICAgICAgcmdiYSgkYmxhY2ssIC4zKSAhZGVmYXVsdDtcbiRuYXZiYXItbGlnaHQtdG9nZ2xlci1pY29uLWJnOiAgICAgIHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCw8c3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgd2lkdGg9JzMwJyBoZWlnaHQ9JzMwJyB2aWV3Qm94PScwIDAgMzAgMzAnPjxwYXRoIHN0cm9rZT0nI3skbmF2YmFyLWxpZ2h0LWNvbG9yfScgc3Ryb2tlLWxpbmVjYXA9J3JvdW5kJyBzdHJva2UtbWl0ZXJsaW1pdD0nMTAnIHN0cm9rZS13aWR0aD0nMicgZD0nTTQgN2gyMk00IDE1aDIyTTQgMjNoMjInLz48L3N2Zz5cIikgIWRlZmF1bHQ7XG4kbmF2YmFyLWxpZ2h0LXRvZ2dsZXItYm9yZGVyLWNvbG9yOiByZ2JhKCRibGFjaywgLjEpICFkZWZhdWx0O1xuXG4kbmF2YmFyLWxpZ2h0LWJyYW5kLWNvbG9yOiAgICAgICAgICAgICAgICAkbmF2YmFyLWxpZ2h0LWFjdGl2ZS1jb2xvciAhZGVmYXVsdDtcbiRuYXZiYXItbGlnaHQtYnJhbmQtaG92ZXItY29sb3I6ICAgICAgICAgICRuYXZiYXItbGlnaHQtYWN0aXZlLWNvbG9yICFkZWZhdWx0O1xuJG5hdmJhci1kYXJrLWJyYW5kLWNvbG9yOiAgICAgICAgICAgICAgICAgJG5hdmJhci1kYXJrLWFjdGl2ZS1jb2xvciAhZGVmYXVsdDtcbiRuYXZiYXItZGFyay1icmFuZC1ob3Zlci1jb2xvcjogICAgICAgICAgICRuYXZiYXItZGFyay1hY3RpdmUtY29sb3IgIWRlZmF1bHQ7XG5cblxuLy8gRHJvcGRvd25zXG4vL1xuLy8gRHJvcGRvd24gbWVudSBjb250YWluZXIgYW5kIGNvbnRlbnRzLlxuXG4kZHJvcGRvd24tbWluLXdpZHRoOiAgICAgICAgICAgICAgICAxMHJlbSAhZGVmYXVsdDtcbiRkcm9wZG93bi1wYWRkaW5nLXk6ICAgICAgICAgICAgICAgIC41cmVtICFkZWZhdWx0O1xuJGRyb3Bkb3duLXNwYWNlcjogICAgICAgICAgICAgICAgICAgLjEyNXJlbSAhZGVmYXVsdDtcbiRkcm9wZG93bi1mb250LXNpemU6ICAgICAgICAgICAgICAgICRmb250LXNpemUtYmFzZSAhZGVmYXVsdDtcbiRkcm9wZG93bi1jb2xvcjogICAgICAgICAgICAgICAgICAgICRib2R5LWNvbG9yICFkZWZhdWx0O1xuJGRyb3Bkb3duLWJnOiAgICAgICAgICAgICAgICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJGRyb3Bkb3duLWJvcmRlci1jb2xvcjogICAgICAgICAgICAgcmdiYSgkYmxhY2ssIC4xNSkgIWRlZmF1bHQ7XG4kZHJvcGRvd24tYm9yZGVyLXJhZGl1czogICAgICAgICAgICAkYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcbiRkcm9wZG93bi1ib3JkZXItd2lkdGg6ICAgICAgICAgICAgICRib3JkZXItd2lkdGggIWRlZmF1bHQ7XG4kZHJvcGRvd24taW5uZXItYm9yZGVyLXJhZGl1czogICAgICBzdWJ0cmFjdCgkZHJvcGRvd24tYm9yZGVyLXJhZGl1cywgJGRyb3Bkb3duLWJvcmRlci13aWR0aCkgIWRlZmF1bHQ7XG4kZHJvcGRvd24tZGl2aWRlci1iZzogICAgICAgICAgICAgICAkZ3JheS0yMDAgIWRlZmF1bHQ7XG4kZHJvcGRvd24tZGl2aWRlci1tYXJnaW4teTogICAgICAgICAkbmF2LWRpdmlkZXItbWFyZ2luLXkgIWRlZmF1bHQ7XG4kZHJvcGRvd24tYm94LXNoYWRvdzogICAgICAgICAgICAgICAwIC41cmVtIDFyZW0gcmdiYSgkYmxhY2ssIC4xNzUpICFkZWZhdWx0O1xuXG4kZHJvcGRvd24tbGluay1jb2xvcjogICAgICAgICAgICAgICAkZ3JheS05MDAgIWRlZmF1bHQ7XG4kZHJvcGRvd24tbGluay1ob3Zlci1jb2xvcjogICAgICAgICBkYXJrZW4oJGdyYXktOTAwLCA1JSkgIWRlZmF1bHQ7XG4kZHJvcGRvd24tbGluay1ob3Zlci1iZzogICAgICAgICAgICAkZ3JheS0xMDAgIWRlZmF1bHQ7XG5cbiRkcm9wZG93bi1saW5rLWFjdGl2ZS1jb2xvcjogICAgICAgICRjb21wb25lbnQtYWN0aXZlLWNvbG9yICFkZWZhdWx0O1xuJGRyb3Bkb3duLWxpbmstYWN0aXZlLWJnOiAgICAgICAgICAgJGNvbXBvbmVudC1hY3RpdmUtYmcgIWRlZmF1bHQ7XG5cbiRkcm9wZG93bi1saW5rLWRpc2FibGVkLWNvbG9yOiAgICAgICRncmF5LTYwMCAhZGVmYXVsdDtcblxuJGRyb3Bkb3duLWl0ZW0tcGFkZGluZy15OiAgICAgICAgICAgLjI1cmVtICFkZWZhdWx0O1xuJGRyb3Bkb3duLWl0ZW0tcGFkZGluZy14OiAgICAgICAgICAgMS41cmVtICFkZWZhdWx0O1xuXG4kZHJvcGRvd24taGVhZGVyLWNvbG9yOiAgICAgICAgICAgICAkZ3JheS02MDAgIWRlZmF1bHQ7XG5cblxuLy8gUGFnaW5hdGlvblxuXG4kcGFnaW5hdGlvbi1wYWRkaW5nLXk6ICAgICAgICAgICAgICAuNXJlbSAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLXBhZGRpbmcteDogICAgICAgICAgICAgIC43NXJlbSAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLXBhZGRpbmcteS1zbTogICAgICAgICAgIC4yNXJlbSAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLXBhZGRpbmcteC1zbTogICAgICAgICAgIC41cmVtICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tcGFkZGluZy15LWxnOiAgICAgICAgICAgLjc1cmVtICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tcGFkZGluZy14LWxnOiAgICAgICAgICAgMS41cmVtICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tbGluZS1oZWlnaHQ6ICAgICAgICAgICAgMS4yNSAhZGVmYXVsdDtcblxuJHBhZ2luYXRpb24tY29sb3I6ICAgICAgICAgICAgICAgICAgJGxpbmstY29sb3IgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1iZzogICAgICAgICAgICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1ib3JkZXItd2lkdGg6ICAgICAgICAgICAkYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tYm9yZGVyLWNvbG9yOiAgICAgICAgICAgJGdyYXktMzAwICFkZWZhdWx0O1xuXG4kcGFnaW5hdGlvbi1mb2N1cy1ib3gtc2hhZG93OiAgICAgICAkaW5wdXQtYnRuLWZvY3VzLWJveC1zaGFkb3cgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1mb2N1cy1vdXRsaW5lOiAgICAgICAgICAwICFkZWZhdWx0O1xuXG4kcGFnaW5hdGlvbi1ob3Zlci1jb2xvcjogICAgICAgICAgICAkbGluay1ob3Zlci1jb2xvciAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWhvdmVyLWJnOiAgICAgICAgICAgICAgICRncmF5LTIwMCAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWhvdmVyLWJvcmRlci1jb2xvcjogICAgICRncmF5LTMwMCAhZGVmYXVsdDtcblxuJHBhZ2luYXRpb24tYWN0aXZlLWNvbG9yOiAgICAgICAgICAgJGNvbXBvbmVudC1hY3RpdmUtY29sb3IgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1hY3RpdmUtYmc6ICAgICAgICAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1iZyAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWFjdGl2ZS1ib3JkZXItY29sb3I6ICAgICRwYWdpbmF0aW9uLWFjdGl2ZS1iZyAhZGVmYXVsdDtcblxuJHBhZ2luYXRpb24tZGlzYWJsZWQtY29sb3I6ICAgICAgICAgJGdyYXktNjAwICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tZGlzYWJsZWQtYmc6ICAgICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tZGlzYWJsZWQtYm9yZGVyLWNvbG9yOiAgJGdyYXktMzAwICFkZWZhdWx0O1xuXG5cbi8vIEp1bWJvdHJvblxuXG4kanVtYm90cm9uLXBhZGRpbmc6ICAgICAgICAgICAgICAgICAycmVtICFkZWZhdWx0O1xuJGp1bWJvdHJvbi1jb2xvcjogICAgICAgICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDtcbiRqdW1ib3Ryb24tYmc6ICAgICAgICAgICAgICAgICAgICAgICRncmF5LTIwMCAhZGVmYXVsdDtcblxuXG4vLyBDYXJkc1xuXG4kY2FyZC1zcGFjZXIteTogICAgICAgICAgICAgICAgICAgICAuNzVyZW0gIWRlZmF1bHQ7XG4kY2FyZC1zcGFjZXIteDogICAgICAgICAgICAgICAgICAgICAxLjI1cmVtICFkZWZhdWx0O1xuJGNhcmQtYm9yZGVyLXdpZHRoOiAgICAgICAgICAgICAgICAgJGJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiRjYXJkLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAgICAgICRib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuJGNhcmQtYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICAgICAgcmdiYSgkYmxhY2ssIC4xMjUpICFkZWZhdWx0O1xuJGNhcmQtaW5uZXItYm9yZGVyLXJhZGl1czogICAgICAgICAgc3VidHJhY3QoJGNhcmQtYm9yZGVyLXJhZGl1cywgJGNhcmQtYm9yZGVyLXdpZHRoKSAhZGVmYXVsdDtcbiRjYXJkLWNhcC1iZzogICAgICAgICAgICAgICAgICAgICAgIHJnYmEoJGJsYWNrLCAuMDMpICFkZWZhdWx0O1xuJGNhcmQtY2FwLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDtcbiRjYXJkLWhlaWdodDogICAgICAgICAgICAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG4kY2FyZC1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuJGNhcmQtYmc6ICAgICAgICAgICAgICAgICAgICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuXG4kY2FyZC1pbWctb3ZlcmxheS1wYWRkaW5nOiAgICAgICAgICAxLjI1cmVtICFkZWZhdWx0O1xuXG4kY2FyZC1ncm91cC1tYXJnaW46ICAgICAgICAgICAgICAgICAkZ3JpZC1ndXR0ZXItd2lkdGggLyAyICFkZWZhdWx0O1xuJGNhcmQtZGVjay1tYXJnaW46ICAgICAgICAgICAgICAgICAgJGNhcmQtZ3JvdXAtbWFyZ2luICFkZWZhdWx0O1xuXG4kY2FyZC1jb2x1bW5zLWNvdW50OiAgICAgICAgICAgICAgICAzICFkZWZhdWx0O1xuJGNhcmQtY29sdW1ucy1nYXA6ICAgICAgICAgICAgICAgICAgMS4yNXJlbSAhZGVmYXVsdDtcbiRjYXJkLWNvbHVtbnMtbWFyZ2luOiAgICAgICAgICAgICAgICRjYXJkLXNwYWNlci15ICFkZWZhdWx0O1xuXG5cbi8vIFRvb2x0aXBzXG5cbiR0b29sdGlwLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgICRmb250LXNpemUtc20gIWRlZmF1bHQ7XG4kdG9vbHRpcC1tYXgtd2lkdGg6ICAgICAgICAgICAgICAgICAyMDBweCAhZGVmYXVsdDtcbiR0b29sdGlwLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiR0b29sdGlwLWJnOiAgICAgICAgICAgICAgICAgICAgICAgICRibGFjayAhZGVmYXVsdDtcbiR0b29sdGlwLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAgICRib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuJHRvb2x0aXAtb3BhY2l0eTogICAgICAgICAgICAgICAgICAgLjkgIWRlZmF1bHQ7XG4kdG9vbHRpcC1wYWRkaW5nLXk6ICAgICAgICAgICAgICAgICAuMjVyZW0gIWRlZmF1bHQ7XG4kdG9vbHRpcC1wYWRkaW5nLXg6ICAgICAgICAgICAgICAgICAuNXJlbSAhZGVmYXVsdDtcbiR0b29sdGlwLW1hcmdpbjogICAgICAgICAgICAgICAgICAgIDAgIWRlZmF1bHQ7XG5cbiR0b29sdGlwLWFycm93LXdpZHRoOiAgICAgICAgICAgICAgIC44cmVtICFkZWZhdWx0O1xuJHRvb2x0aXAtYXJyb3ctaGVpZ2h0OiAgICAgICAgICAgICAgLjRyZW0gIWRlZmF1bHQ7XG4kdG9vbHRpcC1hcnJvdy1jb2xvcjogICAgICAgICAgICAgICAkdG9vbHRpcC1iZyAhZGVmYXVsdDtcblxuLy8gRm9ybSB0b29sdGlwcyBtdXN0IGNvbWUgYWZ0ZXIgcmVndWxhciB0b29sdGlwc1xuJGZvcm0tZmVlZGJhY2stdG9vbHRpcC1wYWRkaW5nLXk6ICAgICAkdG9vbHRpcC1wYWRkaW5nLXkgIWRlZmF1bHQ7XG4kZm9ybS1mZWVkYmFjay10b29sdGlwLXBhZGRpbmcteDogICAgICR0b29sdGlwLXBhZGRpbmcteCAhZGVmYXVsdDtcbiRmb3JtLWZlZWRiYWNrLXRvb2x0aXAtZm9udC1zaXplOiAgICAgJHRvb2x0aXAtZm9udC1zaXplICFkZWZhdWx0O1xuJGZvcm0tZmVlZGJhY2stdG9vbHRpcC1saW5lLWhlaWdodDogICAkbGluZS1oZWlnaHQtYmFzZSAhZGVmYXVsdDtcbiRmb3JtLWZlZWRiYWNrLXRvb2x0aXAtb3BhY2l0eTogICAgICAgJHRvb2x0aXAtb3BhY2l0eSAhZGVmYXVsdDtcbiRmb3JtLWZlZWRiYWNrLXRvb2x0aXAtYm9yZGVyLXJhZGl1czogJHRvb2x0aXAtYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcblxuXG4vLyBQb3BvdmVyc1xuXG4kcG9wb3Zlci1mb250LXNpemU6ICAgICAgICAgICAgICAgICAkZm9udC1zaXplLXNtICFkZWZhdWx0O1xuJHBvcG92ZXItYmc6ICAgICAgICAgICAgICAgICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJHBvcG92ZXItbWF4LXdpZHRoOiAgICAgICAgICAgICAgICAgMjc2cHggIWRlZmF1bHQ7XG4kcG9wb3Zlci1ib3JkZXItd2lkdGg6ICAgICAgICAgICAgICAkYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJHBvcG92ZXItYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICAgcmdiYSgkYmxhY2ssIC4yKSAhZGVmYXVsdDtcbiRwb3BvdmVyLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAgICRib3JkZXItcmFkaXVzLWxnICFkZWZhdWx0O1xuJHBvcG92ZXItaW5uZXItYm9yZGVyLXJhZGl1czogICAgICAgc3VidHJhY3QoJHBvcG92ZXItYm9yZGVyLXJhZGl1cywgJHBvcG92ZXItYm9yZGVyLXdpZHRoKSAhZGVmYXVsdDtcbiRwb3BvdmVyLWJveC1zaGFkb3c6ICAgICAgICAgICAgICAgIDAgLjI1cmVtIC41cmVtIHJnYmEoJGJsYWNrLCAuMikgIWRlZmF1bHQ7XG5cbiRwb3BvdmVyLWhlYWRlci1iZzogICAgICAgICAgICAgICAgIGRhcmtlbigkcG9wb3Zlci1iZywgMyUpICFkZWZhdWx0O1xuJHBvcG92ZXItaGVhZGVyLWNvbG9yOiAgICAgICAgICAgICAgJGhlYWRpbmdzLWNvbG9yICFkZWZhdWx0O1xuJHBvcG92ZXItaGVhZGVyLXBhZGRpbmcteTogICAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XG4kcG9wb3Zlci1oZWFkZXItcGFkZGluZy14OiAgICAgICAgICAuNzVyZW0gIWRlZmF1bHQ7XG5cbiRwb3BvdmVyLWJvZHktY29sb3I6ICAgICAgICAgICAgICAgICRib2R5LWNvbG9yICFkZWZhdWx0O1xuJHBvcG92ZXItYm9keS1wYWRkaW5nLXk6ICAgICAgICAgICAgJHBvcG92ZXItaGVhZGVyLXBhZGRpbmcteSAhZGVmYXVsdDtcbiRwb3BvdmVyLWJvZHktcGFkZGluZy14OiAgICAgICAgICAgICRwb3BvdmVyLWhlYWRlci1wYWRkaW5nLXggIWRlZmF1bHQ7XG5cbiRwb3BvdmVyLWFycm93LXdpZHRoOiAgICAgICAgICAgICAgIDFyZW0gIWRlZmF1bHQ7XG4kcG9wb3Zlci1hcnJvdy1oZWlnaHQ6ICAgICAgICAgICAgICAuNXJlbSAhZGVmYXVsdDtcbiRwb3BvdmVyLWFycm93LWNvbG9yOiAgICAgICAgICAgICAgICRwb3BvdmVyLWJnICFkZWZhdWx0O1xuXG4kcG9wb3Zlci1hcnJvdy1vdXRlci1jb2xvcjogICAgICAgICBmYWRlLWluKCRwb3BvdmVyLWJvcmRlci1jb2xvciwgLjA1KSAhZGVmYXVsdDtcblxuXG4vLyBUb2FzdHNcblxuJHRvYXN0LW1heC13aWR0aDogICAgICAgICAgICAgICAgICAgMzUwcHggIWRlZmF1bHQ7XG4kdG9hc3QtcGFkZGluZy14OiAgICAgICAgICAgICAgICAgICAuNzVyZW0gIWRlZmF1bHQ7XG4kdG9hc3QtcGFkZGluZy15OiAgICAgICAgICAgICAgICAgICAuMjVyZW0gIWRlZmF1bHQ7XG4kdG9hc3QtZm9udC1zaXplOiAgICAgICAgICAgICAgICAgICAuODc1cmVtICFkZWZhdWx0O1xuJHRvYXN0LWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDtcbiR0b2FzdC1iYWNrZ3JvdW5kLWNvbG9yOiAgICAgICAgICAgIHJnYmEoJHdoaXRlLCAuODUpICFkZWZhdWx0O1xuJHRvYXN0LWJvcmRlci13aWR0aDogICAgICAgICAgICAgICAgMXB4ICFkZWZhdWx0O1xuJHRvYXN0LWJvcmRlci1jb2xvcjogICAgICAgICAgICAgICAgcmdiYSgwLCAwLCAwLCAuMSkgIWRlZmF1bHQ7XG4kdG9hc3QtYm9yZGVyLXJhZGl1czogICAgICAgICAgICAgICAuMjVyZW0gIWRlZmF1bHQ7XG4kdG9hc3QtYm94LXNoYWRvdzogICAgICAgICAgICAgICAgICAwIC4yNXJlbSAuNzVyZW0gcmdiYSgkYmxhY2ssIC4xKSAhZGVmYXVsdDtcblxuJHRvYXN0LWhlYWRlci1jb2xvcjogICAgICAgICAgICAgICAgJGdyYXktNjAwICFkZWZhdWx0O1xuJHRvYXN0LWhlYWRlci1iYWNrZ3JvdW5kLWNvbG9yOiAgICAgcmdiYSgkd2hpdGUsIC44NSkgIWRlZmF1bHQ7XG4kdG9hc3QtaGVhZGVyLWJvcmRlci1jb2xvcjogICAgICAgICByZ2JhKDAsIDAsIDAsIC4wNSkgIWRlZmF1bHQ7XG5cblxuLy8gQmFkZ2VzXG5cbiRiYWRnZS1mb250LXNpemU6ICAgICAgICAgICAgICAgICAgIDc1JSAhZGVmYXVsdDtcbiRiYWRnZS1mb250LXdlaWdodDogICAgICAgICAgICAgICAgICRmb250LXdlaWdodC1ib2xkICFkZWZhdWx0O1xuJGJhZGdlLXBhZGRpbmcteTogICAgICAgICAgICAgICAgICAgLjI1ZW0gIWRlZmF1bHQ7XG4kYmFkZ2UtcGFkZGluZy14OiAgICAgICAgICAgICAgICAgICAuNGVtICFkZWZhdWx0O1xuJGJhZGdlLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAgICAgJGJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG5cbiRiYWRnZS10cmFuc2l0aW9uOiAgICAgICAgICAgICAgICAgICRidG4tdHJhbnNpdGlvbiAhZGVmYXVsdDtcbiRiYWRnZS1mb2N1cy13aWR0aDogICAgICAgICAgICAgICAgICRpbnB1dC1idG4tZm9jdXMtd2lkdGggIWRlZmF1bHQ7XG5cbiRiYWRnZS1waWxsLXBhZGRpbmcteDogICAgICAgICAgICAgIC42ZW0gIWRlZmF1bHQ7XG4vLyBVc2UgYSBoaWdoZXIgdGhhbiBub3JtYWwgdmFsdWUgdG8gZW5zdXJlIGNvbXBsZXRlbHkgcm91bmRlZCBlZGdlcyB3aGVuXG4vLyBjdXN0b21pemluZyBwYWRkaW5nIG9yIGZvbnQtc2l6ZSBvbiBsYWJlbHMuXG4kYmFkZ2UtcGlsbC1ib3JkZXItcmFkaXVzOiAgICAgICAgICAxMHJlbSAhZGVmYXVsdDtcblxuXG4vLyBNb2RhbHNcblxuLy8gUGFkZGluZyBhcHBsaWVkIHRvIHRoZSBtb2RhbCBib2R5XG4kbW9kYWwtaW5uZXItcGFkZGluZzogICAgICAgICAgICAgICAxcmVtICFkZWZhdWx0O1xuXG4vLyBNYXJnaW4gYmV0d2VlbiBlbGVtZW50cyBpbiBmb290ZXIsIG11c3QgYmUgbG93ZXIgdGhhbiBvciBlcXVhbCB0byAyICogJG1vZGFsLWlubmVyLXBhZGRpbmdcbiRtb2RhbC1mb290ZXItbWFyZ2luLWJldHdlZW46ICAgICAgIC41cmVtICFkZWZhdWx0O1xuXG4kbW9kYWwtZGlhbG9nLW1hcmdpbjogICAgICAgICAgICAgICAuNXJlbSAhZGVmYXVsdDtcbiRtb2RhbC1kaWFsb2ctbWFyZ2luLXktc20tdXA6ICAgICAgIDEuNzVyZW0gIWRlZmF1bHQ7XG5cbiRtb2RhbC10aXRsZS1saW5lLWhlaWdodDogICAgICAgICAgICRsaW5lLWhlaWdodC1iYXNlICFkZWZhdWx0O1xuXG4kbW9kYWwtY29udGVudC1jb2xvcjogICAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuJG1vZGFsLWNvbnRlbnQtYmc6ICAgICAgICAgICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJG1vZGFsLWNvbnRlbnQtYm9yZGVyLWNvbG9yOiAgICAgICAgcmdiYSgkYmxhY2ssIC4yKSAhZGVmYXVsdDtcbiRtb2RhbC1jb250ZW50LWJvcmRlci13aWR0aDogICAgICAgICRib3JkZXItd2lkdGggIWRlZmF1bHQ7XG4kbW9kYWwtY29udGVudC1ib3JkZXItcmFkaXVzOiAgICAgICAkYm9yZGVyLXJhZGl1cy1sZyAhZGVmYXVsdDtcbiRtb2RhbC1jb250ZW50LWlubmVyLWJvcmRlci1yYWRpdXM6IHN1YnRyYWN0KCRtb2RhbC1jb250ZW50LWJvcmRlci1yYWRpdXMsICRtb2RhbC1jb250ZW50LWJvcmRlci13aWR0aCkgIWRlZmF1bHQ7XG4kbW9kYWwtY29udGVudC1ib3gtc2hhZG93LXhzOiAgICAgICAwIC4yNXJlbSAuNXJlbSByZ2JhKCRibGFjaywgLjUpICFkZWZhdWx0O1xuJG1vZGFsLWNvbnRlbnQtYm94LXNoYWRvdy1zbS11cDogICAgMCAuNXJlbSAxcmVtIHJnYmEoJGJsYWNrLCAuNSkgIWRlZmF1bHQ7XG5cbiRtb2RhbC1iYWNrZHJvcC1iZzogICAgICAgICAgICAgICAgICRibGFjayAhZGVmYXVsdDtcbiRtb2RhbC1iYWNrZHJvcC1vcGFjaXR5OiAgICAgICAgICAgIC41ICFkZWZhdWx0O1xuJG1vZGFsLWhlYWRlci1ib3JkZXItY29sb3I6ICAgICAgICAgJGJvcmRlci1jb2xvciAhZGVmYXVsdDtcbiRtb2RhbC1mb290ZXItYm9yZGVyLWNvbG9yOiAgICAgICAgICRtb2RhbC1oZWFkZXItYm9yZGVyLWNvbG9yICFkZWZhdWx0O1xuJG1vZGFsLWhlYWRlci1ib3JkZXItd2lkdGg6ICAgICAgICAgJG1vZGFsLWNvbnRlbnQtYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJG1vZGFsLWZvb3Rlci1ib3JkZXItd2lkdGg6ICAgICAgICAgJG1vZGFsLWhlYWRlci1ib3JkZXItd2lkdGggIWRlZmF1bHQ7XG4kbW9kYWwtaGVhZGVyLXBhZGRpbmcteTogICAgICAgICAgICAxcmVtICFkZWZhdWx0O1xuJG1vZGFsLWhlYWRlci1wYWRkaW5nLXg6ICAgICAgICAgICAgMXJlbSAhZGVmYXVsdDtcbiRtb2RhbC1oZWFkZXItcGFkZGluZzogICAgICAgICAgICAgICRtb2RhbC1oZWFkZXItcGFkZGluZy15ICRtb2RhbC1oZWFkZXItcGFkZGluZy14ICFkZWZhdWx0OyAvLyBLZWVwIHRoaXMgZm9yIGJhY2t3YXJkcyBjb21wYXRpYmlsaXR5XG5cbiRtb2RhbC14bDogICAgICAgICAgICAgICAgICAgICAgICAgIDExNDBweCAhZGVmYXVsdDtcbiRtb2RhbC1sZzogICAgICAgICAgICAgICAgICAgICAgICAgIDgwMHB4ICFkZWZhdWx0O1xuJG1vZGFsLW1kOiAgICAgICAgICAgICAgICAgICAgICAgICAgNTAwcHggIWRlZmF1bHQ7XG4kbW9kYWwtc206ICAgICAgICAgICAgICAgICAgICAgICAgICAzMDBweCAhZGVmYXVsdDtcblxuJG1vZGFsLWZhZGUtdHJhbnNmb3JtOiAgICAgICAgICAgICAgdHJhbnNsYXRlKDAsIC01MHB4KSAhZGVmYXVsdDtcbiRtb2RhbC1zaG93LXRyYW5zZm9ybTogICAgICAgICAgICAgIG5vbmUgIWRlZmF1bHQ7XG4kbW9kYWwtdHJhbnNpdGlvbjogICAgICAgICAgICAgICAgICB0cmFuc2Zvcm0gLjNzIGVhc2Utb3V0ICFkZWZhdWx0O1xuJG1vZGFsLXNjYWxlLXRyYW5zZm9ybTogICAgICAgICAgICAgc2NhbGUoMS4wMikgIWRlZmF1bHQ7XG5cblxuLy8gQWxlcnRzXG4vL1xuLy8gRGVmaW5lIGFsZXJ0IGNvbG9ycywgYm9yZGVyIHJhZGl1cywgYW5kIHBhZGRpbmcuXG5cbiRhbGVydC1wYWRkaW5nLXk6ICAgICAgICAgICAgICAgICAgIC43NXJlbSAhZGVmYXVsdDtcbiRhbGVydC1wYWRkaW5nLXg6ICAgICAgICAgICAgICAgICAgIDEuMjVyZW0gIWRlZmF1bHQ7XG4kYWxlcnQtbWFyZ2luLWJvdHRvbTogICAgICAgICAgICAgICAxcmVtICFkZWZhdWx0O1xuJGFsZXJ0LWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAgICAgJGJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG4kYWxlcnQtbGluay1mb250LXdlaWdodDogICAgICAgICAgICAkZm9udC13ZWlnaHQtYm9sZCAhZGVmYXVsdDtcbiRhbGVydC1ib3JkZXItd2lkdGg6ICAgICAgICAgICAgICAgICRib3JkZXItd2lkdGggIWRlZmF1bHQ7XG5cbiRhbGVydC1iZy1sZXZlbDogICAgICAgICAgICAgICAgICAgIC0xMCAhZGVmYXVsdDtcbiRhbGVydC1ib3JkZXItbGV2ZWw6ICAgICAgICAgICAgICAgIC05ICFkZWZhdWx0O1xuJGFsZXJ0LWNvbG9yLWxldmVsOiAgICAgICAgICAgICAgICAgNiAhZGVmYXVsdDtcblxuXG4vLyBQcm9ncmVzcyBiYXJzXG5cbiRwcm9ncmVzcy1oZWlnaHQ6ICAgICAgICAgICAgICAgICAgIDFyZW0gIWRlZmF1bHQ7XG4kcHJvZ3Jlc3MtZm9udC1zaXplOiAgICAgICAgICAgICAgICAkZm9udC1zaXplLWJhc2UgKiAuNzUgIWRlZmF1bHQ7XG4kcHJvZ3Jlc3MtYmc6ICAgICAgICAgICAgICAgICAgICAgICAkZ3JheS0yMDAgIWRlZmF1bHQ7XG4kcHJvZ3Jlc3MtYm9yZGVyLXJhZGl1czogICAgICAgICAgICAkYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcbiRwcm9ncmVzcy1ib3gtc2hhZG93OiAgICAgICAgICAgICAgIGluc2V0IDAgLjFyZW0gLjFyZW0gcmdiYSgkYmxhY2ssIC4xKSAhZGVmYXVsdDtcbiRwcm9ncmVzcy1iYXItY29sb3I6ICAgICAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRwcm9ncmVzcy1iYXItYmc6ICAgICAgICAgICAgICAgICAgIHRoZW1lLWNvbG9yKFwicHJpbWFyeVwiKSAhZGVmYXVsdDtcbiRwcm9ncmVzcy1iYXItYW5pbWF0aW9uLXRpbWluZzogICAgIDFzIGxpbmVhciBpbmZpbml0ZSAhZGVmYXVsdDtcbiRwcm9ncmVzcy1iYXItdHJhbnNpdGlvbjogICAgICAgICAgIHdpZHRoIC42cyBlYXNlICFkZWZhdWx0O1xuXG5cbi8vIExpc3QgZ3JvdXBcblxuJGxpc3QtZ3JvdXAtY29sb3I6ICAgICAgICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDtcbiRsaXN0LWdyb3VwLWJnOiAgICAgICAgICAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRsaXN0LWdyb3VwLWJvcmRlci1jb2xvcjogICAgICAgICAgIHJnYmEoJGJsYWNrLCAuMTI1KSAhZGVmYXVsdDtcbiRsaXN0LWdyb3VwLWJvcmRlci13aWR0aDogICAgICAgICAgICRib3JkZXItd2lkdGggIWRlZmF1bHQ7XG4kbGlzdC1ncm91cC1ib3JkZXItcmFkaXVzOiAgICAgICAgICAkYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcblxuJGxpc3QtZ3JvdXAtaXRlbS1wYWRkaW5nLXk6ICAgICAgICAgLjc1cmVtICFkZWZhdWx0O1xuJGxpc3QtZ3JvdXAtaXRlbS1wYWRkaW5nLXg6ICAgICAgICAgMS4yNXJlbSAhZGVmYXVsdDtcblxuJGxpc3QtZ3JvdXAtaG92ZXItYmc6ICAgICAgICAgICAgICAgJGdyYXktMTAwICFkZWZhdWx0O1xuJGxpc3QtZ3JvdXAtYWN0aXZlLWNvbG9yOiAgICAgICAgICAgJGNvbXBvbmVudC1hY3RpdmUtY29sb3IgIWRlZmF1bHQ7XG4kbGlzdC1ncm91cC1hY3RpdmUtYmc6ICAgICAgICAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1iZyAhZGVmYXVsdDtcbiRsaXN0LWdyb3VwLWFjdGl2ZS1ib3JkZXItY29sb3I6ICAgICRsaXN0LWdyb3VwLWFjdGl2ZS1iZyAhZGVmYXVsdDtcblxuJGxpc3QtZ3JvdXAtZGlzYWJsZWQtY29sb3I6ICAgICAgICAgJGdyYXktNjAwICFkZWZhdWx0O1xuJGxpc3QtZ3JvdXAtZGlzYWJsZWQtYmc6ICAgICAgICAgICAgJGxpc3QtZ3JvdXAtYmcgIWRlZmF1bHQ7XG5cbiRsaXN0LWdyb3VwLWFjdGlvbi1jb2xvcjogICAgICAgICAgICRncmF5LTcwMCAhZGVmYXVsdDtcbiRsaXN0LWdyb3VwLWFjdGlvbi1ob3Zlci1jb2xvcjogICAgICRsaXN0LWdyb3VwLWFjdGlvbi1jb2xvciAhZGVmYXVsdDtcblxuJGxpc3QtZ3JvdXAtYWN0aW9uLWFjdGl2ZS1jb2xvcjogICAgJGJvZHktY29sb3IgIWRlZmF1bHQ7XG4kbGlzdC1ncm91cC1hY3Rpb24tYWN0aXZlLWJnOiAgICAgICAkZ3JheS0yMDAgIWRlZmF1bHQ7XG5cblxuLy8gSW1hZ2UgdGh1bWJuYWlsc1xuXG4kdGh1bWJuYWlsLXBhZGRpbmc6ICAgICAgICAgICAgICAgICAuMjVyZW0gIWRlZmF1bHQ7XG4kdGh1bWJuYWlsLWJnOiAgICAgICAgICAgICAgICAgICAgICAkYm9keS1iZyAhZGVmYXVsdDtcbiR0aHVtYm5haWwtYm9yZGVyLXdpZHRoOiAgICAgICAgICAgICRib3JkZXItd2lkdGggIWRlZmF1bHQ7XG4kdGh1bWJuYWlsLWJvcmRlci1jb2xvcjogICAgICAgICAgICAkZ3JheS0zMDAgIWRlZmF1bHQ7XG4kdGh1bWJuYWlsLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAkYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcbiR0aHVtYm5haWwtYm94LXNoYWRvdzogICAgICAgICAgICAgIDAgMXB4IDJweCByZ2JhKCRibGFjaywgLjA3NSkgIWRlZmF1bHQ7XG5cblxuLy8gRmlndXJlc1xuXG4kZmlndXJlLWNhcHRpb24tZm9udC1zaXplOiAgICAgICAgICA5MCUgIWRlZmF1bHQ7XG4kZmlndXJlLWNhcHRpb24tY29sb3I6ICAgICAgICAgICAgICAkZ3JheS02MDAgIWRlZmF1bHQ7XG5cblxuLy8gQnJlYWRjcnVtYnNcblxuJGJyZWFkY3J1bWItZm9udC1zaXplOiAgICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDtcblxuJGJyZWFkY3J1bWItcGFkZGluZy15OiAgICAgICAgICAgICAgLjc1cmVtICFkZWZhdWx0O1xuJGJyZWFkY3J1bWItcGFkZGluZy14OiAgICAgICAgICAgICAgMXJlbSAhZGVmYXVsdDtcbiRicmVhZGNydW1iLWl0ZW0tcGFkZGluZzogICAgICAgICAgIC41cmVtICFkZWZhdWx0O1xuXG4kYnJlYWRjcnVtYi1tYXJnaW4tYm90dG9tOiAgICAgICAgICAxcmVtICFkZWZhdWx0O1xuXG4kYnJlYWRjcnVtYi1iZzogICAgICAgICAgICAgICAgICAgICAkZ3JheS0yMDAgIWRlZmF1bHQ7XG4kYnJlYWRjcnVtYi1kaXZpZGVyLWNvbG9yOiAgICAgICAgICAkZ3JheS02MDAgIWRlZmF1bHQ7XG4kYnJlYWRjcnVtYi1hY3RpdmUtY29sb3I6ICAgICAgICAgICAkZ3JheS02MDAgIWRlZmF1bHQ7XG4kYnJlYWRjcnVtYi1kaXZpZGVyOiAgICAgICAgICAgICAgICBxdW90ZShcIi9cIikgIWRlZmF1bHQ7XG5cbiRicmVhZGNydW1iLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICRib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuXG5cbi8vIENhcm91c2VsXG5cbiRjYXJvdXNlbC1jb250cm9sLWNvbG9yOiAgICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtY29udHJvbC13aWR0aDogICAgICAgICAgICAgMTUlICFkZWZhdWx0O1xuJGNhcm91c2VsLWNvbnRyb2wtb3BhY2l0eTogICAgICAgICAgIC41ICFkZWZhdWx0O1xuJGNhcm91c2VsLWNvbnRyb2wtaG92ZXItb3BhY2l0eTogICAgIC45ICFkZWZhdWx0O1xuJGNhcm91c2VsLWNvbnRyb2wtdHJhbnNpdGlvbjogICAgICAgIG9wYWNpdHkgLjE1cyBlYXNlICFkZWZhdWx0O1xuXG4kY2Fyb3VzZWwtaW5kaWNhdG9yLXdpZHRoOiAgICAgICAgICAgMzBweCAhZGVmYXVsdDtcbiRjYXJvdXNlbC1pbmRpY2F0b3ItaGVpZ2h0OiAgICAgICAgICAzcHggIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtaW5kaWNhdG9yLWhpdC1hcmVhLWhlaWdodDogMTBweCAhZGVmYXVsdDtcbiRjYXJvdXNlbC1pbmRpY2F0b3Itc3BhY2VyOiAgICAgICAgICAzcHggIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtaW5kaWNhdG9yLWFjdGl2ZS1iZzogICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJGNhcm91c2VsLWluZGljYXRvci10cmFuc2l0aW9uOiAgICAgIG9wYWNpdHkgLjZzIGVhc2UgIWRlZmF1bHQ7XG5cbiRjYXJvdXNlbC1jYXB0aW9uLXdpZHRoOiAgICAgICAgICAgICA3MCUgIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtY2FwdGlvbi1jb2xvcjogICAgICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuXG4kY2Fyb3VzZWwtY29udHJvbC1pY29uLXdpZHRoOiAgICAgICAgMjBweCAhZGVmYXVsdDtcblxuJGNhcm91c2VsLWNvbnRyb2wtcHJldi1pY29uLWJnOiAgICAgIHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCw8c3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZycgZmlsbD0nI3skY2Fyb3VzZWwtY29udHJvbC1jb2xvcn0nIHdpZHRoPSc4JyBoZWlnaHQ9JzgnIHZpZXdCb3g9JzAgMCA4IDgnPjxwYXRoIGQ9J001LjI1IDBsLTQgNCA0IDQgMS41LTEuNUw0LjI1IDRsMi41LTIuNUw1LjI1IDB6Jy8+PC9zdmc+XCIpICFkZWZhdWx0O1xuJGNhcm91c2VsLWNvbnRyb2wtbmV4dC1pY29uLWJnOiAgICAgIHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCw8c3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZycgZmlsbD0nI3skY2Fyb3VzZWwtY29udHJvbC1jb2xvcn0nIHdpZHRoPSc4JyBoZWlnaHQ9JzgnIHZpZXdCb3g9JzAgMCA4IDgnPjxwYXRoIGQ9J00yLjc1IDBsLTEuNSAxLjVMMy43NSA0bC0yLjUgMi41TDIuNzUgOGw0LTQtNC00eicvPjwvc3ZnPlwiKSAhZGVmYXVsdDtcblxuJGNhcm91c2VsLXRyYW5zaXRpb24tZHVyYXRpb246ICAgICAgIC42cyAhZGVmYXVsdDtcbiRjYXJvdXNlbC10cmFuc2l0aW9uOiAgICAgICAgICAgICAgICB0cmFuc2Zvcm0gJGNhcm91c2VsLXRyYW5zaXRpb24tZHVyYXRpb24gZWFzZS1pbi1vdXQgIWRlZmF1bHQ7IC8vIERlZmluZSB0cmFuc2Zvcm0gdHJhbnNpdGlvbiBmaXJzdCBpZiB1c2luZyBtdWx0aXBsZSB0cmFuc2l0aW9ucyAoZS5nLiwgYHRyYW5zZm9ybSAycyBlYXNlLCBvcGFjaXR5IC41cyBlYXNlLW91dGApXG5cblxuLy8gU3Bpbm5lcnNcblxuJHNwaW5uZXItd2lkdGg6ICAgICAgICAgMnJlbSAhZGVmYXVsdDtcbiRzcGlubmVyLWhlaWdodDogICAgICAgICRzcGlubmVyLXdpZHRoICFkZWZhdWx0O1xuJHNwaW5uZXItYm9yZGVyLXdpZHRoOiAgLjI1ZW0gIWRlZmF1bHQ7XG5cbiRzcGlubmVyLXdpZHRoLXNtOiAgICAgICAgMXJlbSAhZGVmYXVsdDtcbiRzcGlubmVyLWhlaWdodC1zbTogICAgICAgJHNwaW5uZXItd2lkdGgtc20gIWRlZmF1bHQ7XG4kc3Bpbm5lci1ib3JkZXItd2lkdGgtc206IC4yZW0gIWRlZmF1bHQ7XG5cblxuLy8gQ2xvc2VcblxuJGNsb3NlLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgICAgJGZvbnQtc2l6ZS1iYXNlICogMS41ICFkZWZhdWx0O1xuJGNsb3NlLWZvbnQtd2VpZ2h0OiAgICAgICAgICAgICAgICAgJGZvbnQtd2VpZ2h0LWJvbGQgIWRlZmF1bHQ7XG4kY2xvc2UtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAkYmxhY2sgIWRlZmF1bHQ7XG4kY2xvc2UtdGV4dC1zaGFkb3c6ICAgICAgICAgICAgICAgICAwIDFweCAwICR3aGl0ZSAhZGVmYXVsdDtcblxuXG4vLyBDb2RlXG5cbiRjb2RlLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgICAgIDg3LjUlICFkZWZhdWx0O1xuJGNvZGUtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgJHBpbmsgIWRlZmF1bHQ7XG5cbiRrYmQtcGFkZGluZy15OiAgICAgICAgICAgICAgICAgICAgIC4ycmVtICFkZWZhdWx0O1xuJGtiZC1wYWRkaW5nLXg6ICAgICAgICAgICAgICAgICAgICAgLjRyZW0gIWRlZmF1bHQ7XG4ka2JkLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgICAgICAkY29kZS1mb250LXNpemUgIWRlZmF1bHQ7XG4ka2JkLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4ka2JkLWJnOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAkZ3JheS05MDAgIWRlZmF1bHQ7XG5cbiRwcmUtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgICRncmF5LTkwMCAhZGVmYXVsdDtcbiRwcmUtc2Nyb2xsYWJsZS1tYXgtaGVpZ2h0OiAgICAgICAgIDM0MHB4ICFkZWZhdWx0O1xuXG5cbi8vIFV0aWxpdGllc1xuXG4kZGlzcGxheXM6IG5vbmUsIGlubGluZSwgaW5saW5lLWJsb2NrLCBibG9jaywgdGFibGUsIHRhYmxlLXJvdywgdGFibGUtY2VsbCwgZmxleCwgaW5saW5lLWZsZXggIWRlZmF1bHQ7XG4kb3ZlcmZsb3dzOiBhdXRvLCBoaWRkZW4gIWRlZmF1bHQ7XG4kcG9zaXRpb25zOiBzdGF0aWMsIHJlbGF0aXZlLCBhYnNvbHV0ZSwgZml4ZWQsIHN0aWNreSAhZGVmYXVsdDtcblxuXG4vLyBQcmludGluZ1xuXG4kcHJpbnQtcGFnZS1zaXplOiAgICAgICAgICAgICAgICAgICBhMyAhZGVmYXVsdDtcbiRwcmludC1ib2R5LW1pbi13aWR0aDogICAgICAgICAgICAgIG1hcC1nZXQoJGdyaWQtYnJlYWtwb2ludHMsIFwibGdcIikgIWRlZmF1bHQ7XG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBwcm9wZXJ0eS1ibGFja2xpc3QsIHNjc3MvZG9sbGFyLXZhcmlhYmxlLWRlZmF1bHRcblxuLy8gU0NTUyBSRlMgbWl4aW5cbi8vXG4vLyBBdXRvbWF0ZWQgZm9udC1yZXNpemluZ1xuLy9cbi8vIFNlZSBodHRwczovL2dpdGh1Yi5jb20vdHdicy9yZnNcblxuLy8gQ29uZmlndXJhdGlvblxuXG4vLyBCYXNlIGZvbnQgc2l6ZVxuJHJmcy1iYXNlLWZvbnQtc2l6ZTogMS4yNXJlbSAhZGVmYXVsdDtcbiRyZnMtZm9udC1zaXplLXVuaXQ6IHJlbSAhZGVmYXVsdDtcblxuLy8gQnJlYWtwb2ludCBhdCB3aGVyZSBmb250LXNpemUgc3RhcnRzIGRlY3JlYXNpbmcgaWYgc2NyZWVuIHdpZHRoIGlzIHNtYWxsZXJcbiRyZnMtYnJlYWtwb2ludDogMTIwMHB4ICFkZWZhdWx0O1xuJHJmcy1icmVha3BvaW50LXVuaXQ6IHB4ICFkZWZhdWx0O1xuXG4vLyBSZXNpemUgZm9udC1zaXplIGJhc2VkIG9uIHNjcmVlbiBoZWlnaHQgYW5kIHdpZHRoXG4kcmZzLXR3by1kaW1lbnNpb25hbDogZmFsc2UgIWRlZmF1bHQ7XG5cbi8vIEZhY3RvciBvZiBkZWNyZWFzZVxuJHJmcy1mYWN0b3I6IDEwICFkZWZhdWx0O1xuXG5AaWYgdHlwZS1vZigkcmZzLWZhY3RvcikgIT0gXCJudW1iZXJcIiBvciAkcmZzLWZhY3RvciA8PSAxIHtcbiAgQGVycm9yIFwiYCN7JHJmcy1mYWN0b3J9YCBpcyBub3QgYSB2YWxpZCAgJHJmcy1mYWN0b3IsIGl0IG11c3QgYmUgZ3JlYXRlciB0aGFuIDEuXCI7XG59XG5cbi8vIEdlbmVyYXRlIGVuYWJsZSBvciBkaXNhYmxlIGNsYXNzZXMuIFBvc3NpYmlsaXRpZXM6IGZhbHNlLCBcImVuYWJsZVwiIG9yIFwiZGlzYWJsZVwiXG4kcmZzLWNsYXNzOiBmYWxzZSAhZGVmYXVsdDtcblxuLy8gMSByZW0gPSAkcmZzLXJlbS12YWx1ZSBweFxuJHJmcy1yZW0tdmFsdWU6IDE2ICFkZWZhdWx0O1xuXG4vLyBTYWZhcmkgaWZyYW1lIHJlc2l6ZSBidWc6IGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL3Jmcy9pc3N1ZXMvMTRcbiRyZnMtc2FmYXJpLWlmcmFtZS1yZXNpemUtYnVnLWZpeDogZmFsc2UgIWRlZmF1bHQ7XG5cbi8vIERpc2FibGUgUkZTIGJ5IHNldHRpbmcgJGVuYWJsZS1yZXNwb25zaXZlLWZvbnQtc2l6ZXMgdG8gZmFsc2VcbiRlbmFibGUtcmVzcG9uc2l2ZS1mb250LXNpemVzOiB0cnVlICFkZWZhdWx0O1xuXG4vLyBDYWNoZSAkcmZzLWJhc2UtZm9udC1zaXplIHVuaXRcbiRyZnMtYmFzZS1mb250LXNpemUtdW5pdDogdW5pdCgkcmZzLWJhc2UtZm9udC1zaXplKTtcblxuLy8gUmVtb3ZlIHB4LXVuaXQgZnJvbSAkcmZzLWJhc2UtZm9udC1zaXplIGZvciBjYWxjdWxhdGlvbnNcbkBpZiAkcmZzLWJhc2UtZm9udC1zaXplLXVuaXQgPT0gXCJweFwiIHtcbiAgJHJmcy1iYXNlLWZvbnQtc2l6ZTogJHJmcy1iYXNlLWZvbnQtc2l6ZSAvICgkcmZzLWJhc2UtZm9udC1zaXplICogMCArIDEpO1xufVxuQGVsc2UgaWYgJHJmcy1iYXNlLWZvbnQtc2l6ZS11bml0ID09IFwicmVtXCIge1xuICAkcmZzLWJhc2UtZm9udC1zaXplOiAkcmZzLWJhc2UtZm9udC1zaXplIC8gKCRyZnMtYmFzZS1mb250LXNpemUgKiAwICsgMSAvICRyZnMtcmVtLXZhbHVlKTtcbn1cblxuLy8gQ2FjaGUgJHJmcy1icmVha3BvaW50IHVuaXQgdG8gcHJldmVudCBtdWx0aXBsZSBjYWxsc1xuJHJmcy1icmVha3BvaW50LXVuaXQtY2FjaGU6IHVuaXQoJHJmcy1icmVha3BvaW50KTtcblxuLy8gUmVtb3ZlIHVuaXQgZnJvbSAkcmZzLWJyZWFrcG9pbnQgZm9yIGNhbGN1bGF0aW9uc1xuQGlmICRyZnMtYnJlYWtwb2ludC11bml0LWNhY2hlID09IFwicHhcIiB7XG4gICRyZnMtYnJlYWtwb2ludDogJHJmcy1icmVha3BvaW50IC8gKCRyZnMtYnJlYWtwb2ludCAqIDAgKyAxKTtcbn1cbkBlbHNlIGlmICRyZnMtYnJlYWtwb2ludC11bml0LWNhY2hlID09IFwicmVtXCIgb3IgJHJmcy1icmVha3BvaW50LXVuaXQtY2FjaGUgPT0gXCJlbVwiIHtcbiAgJHJmcy1icmVha3BvaW50OiAkcmZzLWJyZWFrcG9pbnQgLyAoJHJmcy1icmVha3BvaW50ICogMCArIDEgLyAkcmZzLXJlbS12YWx1ZSk7XG59XG5cbi8vIFJlc3BvbnNpdmUgZm9udC1zaXplIG1peGluXG5AbWl4aW4gcmZzKCRmcywgJGltcG9ydGFudDogZmFsc2UpIHtcbiAgLy8gQ2FjaGUgJGZzIHVuaXRcbiAgJGZzLXVuaXQ6IGlmKHR5cGUtb2YoJGZzKSA9PSBcIm51bWJlclwiLCB1bml0KCRmcyksIGZhbHNlKTtcblxuICAvLyBBZGQgIWltcG9ydGFudCBzdWZmaXggaWYgbmVlZGVkXG4gICRyZnMtc3VmZml4OiBpZigkaW1wb3J0YW50LCBcIiAhaW1wb3J0YW50XCIsIFwiXCIpO1xuXG4gIC8vIElmICRmcyBpc24ndCBhIG51bWJlciAobGlrZSBpbmhlcml0KSBvciAkZnMgaGFzIGEgdW5pdCAobm90IHB4IG9yIHJlbSwgbGlrZSAxLjVlbSkgb3IgJCBpcyAwLCBqdXN0IHByaW50IHRoZSB2YWx1ZVxuICBAaWYgbm90ICRmcy11bml0IG9yICRmcy11bml0ICE9IFwiXCIgYW5kICRmcy11bml0ICE9IFwicHhcIiBhbmQgJGZzLXVuaXQgIT0gXCJyZW1cIiBvciAkZnMgPT0gMCB7XG4gICAgZm9udC1zaXplOiAjeyRmc30jeyRyZnMtc3VmZml4fTtcbiAgfVxuICBAZWxzZSB7XG4gICAgLy8gVmFyaWFibGVzIGZvciBzdG9yaW5nIHN0YXRpYyBhbmQgZmx1aWQgcmVzY2FsaW5nXG4gICAgJHJmcy1zdGF0aWM6IG51bGw7XG4gICAgJHJmcy1mbHVpZDogbnVsbDtcblxuICAgIC8vIFJlbW92ZSBweC11bml0IGZyb20gJGZzIGZvciBjYWxjdWxhdGlvbnNcbiAgICBAaWYgJGZzLXVuaXQgPT0gXCJweFwiIHtcbiAgICAgICRmczogJGZzIC8gKCRmcyAqIDAgKyAxKTtcbiAgICB9XG4gICAgQGVsc2UgaWYgJGZzLXVuaXQgPT0gXCJyZW1cIiB7XG4gICAgICAkZnM6ICRmcyAvICgkZnMgKiAwICsgMSAvICRyZnMtcmVtLXZhbHVlKTtcbiAgICB9XG5cbiAgICAvLyBTZXQgZGVmYXVsdCBmb250LXNpemVcbiAgICBAaWYgJHJmcy1mb250LXNpemUtdW5pdCA9PSByZW0ge1xuICAgICAgJHJmcy1zdGF0aWM6ICN7JGZzIC8gJHJmcy1yZW0tdmFsdWV9cmVtI3skcmZzLXN1ZmZpeH07XG4gICAgfVxuICAgIEBlbHNlIGlmICRyZnMtZm9udC1zaXplLXVuaXQgPT0gcHgge1xuICAgICAgJHJmcy1zdGF0aWM6ICN7JGZzfXB4I3skcmZzLXN1ZmZpeH07XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgIEBlcnJvciBcImAjeyRyZnMtZm9udC1zaXplLXVuaXR9YCBpcyBub3QgYSB2YWxpZCB1bml0IGZvciAkcmZzLWZvbnQtc2l6ZS11bml0LiBVc2UgYHB4YCBvciBgcmVtYC5cIjtcbiAgICB9XG5cbiAgICAvLyBPbmx5IGFkZCBtZWRpYSBxdWVyeSBpZiBmb250LXNpemUgaXMgYmlnZ2VyIGFzIHRoZSBtaW5pbXVtIGZvbnQtc2l6ZVxuICAgIC8vIElmICRyZnMtZmFjdG9yID09IDEsIG5vIHJlc2NhbGluZyB3aWxsIHRha2UgcGxhY2VcbiAgICBAaWYgJGZzID4gJHJmcy1iYXNlLWZvbnQtc2l6ZSBhbmQgJGVuYWJsZS1yZXNwb25zaXZlLWZvbnQtc2l6ZXMge1xuICAgICAgJG1pbi13aWR0aDogbnVsbDtcbiAgICAgICR2YXJpYWJsZS11bml0OiBudWxsO1xuXG4gICAgICAvLyBDYWxjdWxhdGUgbWluaW11bSBmb250LXNpemUgZm9yIGdpdmVuIGZvbnQtc2l6ZVxuICAgICAgJGZzLW1pbjogJHJmcy1iYXNlLWZvbnQtc2l6ZSArICgkZnMgLSAkcmZzLWJhc2UtZm9udC1zaXplKSAvICRyZnMtZmFjdG9yO1xuXG4gICAgICAvLyBDYWxjdWxhdGUgZGlmZmVyZW5jZSBiZXR3ZWVuIGdpdmVuIGZvbnQtc2l6ZSBhbmQgbWluaW11bSBmb250LXNpemUgZm9yIGdpdmVuIGZvbnQtc2l6ZVxuICAgICAgJGZzLWRpZmY6ICRmcyAtICRmcy1taW47XG5cbiAgICAgIC8vIEJhc2UgZm9udC1zaXplIGZvcm1hdHRpbmdcbiAgICAgIC8vIE5vIG5lZWQgdG8gY2hlY2sgaWYgdGhlIHVuaXQgaXMgdmFsaWQsIGJlY2F1c2Ugd2UgZGlkIHRoYXQgYmVmb3JlXG4gICAgICAkbWluLXdpZHRoOiBpZigkcmZzLWZvbnQtc2l6ZS11bml0ID09IHJlbSwgI3skZnMtbWluIC8gJHJmcy1yZW0tdmFsdWV9cmVtLCAjeyRmcy1taW59cHgpO1xuXG4gICAgICAvLyBJZiB0d28tZGltZW5zaW9uYWwsIHVzZSBzbWFsbGVzdCBvZiBzY3JlZW4gd2lkdGggYW5kIGhlaWdodFxuICAgICAgJHZhcmlhYmxlLXVuaXQ6IGlmKCRyZnMtdHdvLWRpbWVuc2lvbmFsLCB2bWluLCB2dyk7XG5cbiAgICAgIC8vIENhbGN1bGF0ZSB0aGUgdmFyaWFibGUgd2lkdGggYmV0d2VlbiAwIGFuZCAkcmZzLWJyZWFrcG9pbnRcbiAgICAgICR2YXJpYWJsZS13aWR0aDogI3skZnMtZGlmZiAqIDEwMCAvICRyZnMtYnJlYWtwb2ludH0jeyR2YXJpYWJsZS11bml0fTtcblxuICAgICAgLy8gU2V0IHRoZSBjYWxjdWxhdGVkIGZvbnQtc2l6ZS5cbiAgICAgICRyZnMtZmx1aWQ6IGNhbGMoI3skbWluLXdpZHRofSArICN7JHZhcmlhYmxlLXdpZHRofSkgI3skcmZzLXN1ZmZpeH07XG4gICAgfVxuXG4gICAgLy8gUmVuZGVyaW5nXG4gICAgQGlmICRyZnMtZmx1aWQgPT0gbnVsbCB7XG4gICAgICAvLyBPbmx5IHJlbmRlciBzdGF0aWMgZm9udC1zaXplIGlmIG5vIGZsdWlkIGZvbnQtc2l6ZSBpcyBhdmFpbGFibGVcbiAgICAgIGZvbnQtc2l6ZTogJHJmcy1zdGF0aWM7XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgICRtcS12YWx1ZTogbnVsbDtcblxuICAgICAgLy8gUkZTIGJyZWFrcG9pbnQgZm9ybWF0dGluZ1xuICAgICAgQGlmICRyZnMtYnJlYWtwb2ludC11bml0ID09IGVtIG9yICRyZnMtYnJlYWtwb2ludC11bml0ID09IHJlbSB7XG4gICAgICAgICRtcS12YWx1ZTogI3skcmZzLWJyZWFrcG9pbnQgLyAkcmZzLXJlbS12YWx1ZX0jeyRyZnMtYnJlYWtwb2ludC11bml0fTtcbiAgICAgIH1cbiAgICAgIEBlbHNlIGlmICRyZnMtYnJlYWtwb2ludC11bml0ID09IHB4IHtcbiAgICAgICAgJG1xLXZhbHVlOiAjeyRyZnMtYnJlYWtwb2ludH1weDtcbiAgICAgIH1cbiAgICAgIEBlbHNlIHtcbiAgICAgICAgQGVycm9yIFwiYCN7JHJmcy1icmVha3BvaW50LXVuaXR9YCBpcyBub3QgYSB2YWxpZCB1bml0IGZvciAkcmZzLWJyZWFrcG9pbnQtdW5pdC4gVXNlIGBweGAsIGBlbWAgb3IgYHJlbWAuXCI7XG4gICAgICB9XG5cbiAgICAgIEBpZiAkcmZzLWNsYXNzID09IFwiZGlzYWJsZVwiIHtcbiAgICAgICAgLy8gQWRkaW5nIGFuIGV4dHJhIGNsYXNzIGluY3JlYXNlcyBzcGVjaWZpY2l0eSxcbiAgICAgICAgLy8gd2hpY2ggcHJldmVudHMgdGhlIG1lZGlhIHF1ZXJ5IHRvIG92ZXJyaWRlIHRoZSBmb250IHNpemVcbiAgICAgICAgJixcbiAgICAgICAgLmRpc2FibGUtcmVzcG9uc2l2ZS1mb250LXNpemUgJixcbiAgICAgICAgJi5kaXNhYmxlLXJlc3BvbnNpdmUtZm9udC1zaXplIHtcbiAgICAgICAgICBmb250LXNpemU6ICRyZnMtc3RhdGljO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICBAZWxzZSB7XG4gICAgICAgIGZvbnQtc2l6ZTogJHJmcy1zdGF0aWM7XG4gICAgICB9XG5cbiAgICAgIEBpZiAkcmZzLXR3by1kaW1lbnNpb25hbCB7XG4gICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiAjeyRtcS12YWx1ZX0pLCAobWF4LWhlaWdodDogI3skbXEtdmFsdWV9KSB7XG4gICAgICAgICAgQGlmICRyZnMtY2xhc3MgPT0gXCJlbmFibGVcIiB7XG4gICAgICAgICAgICAuZW5hYmxlLXJlc3BvbnNpdmUtZm9udC1zaXplICYsXG4gICAgICAgICAgICAmLmVuYWJsZS1yZXNwb25zaXZlLWZvbnQtc2l6ZSB7XG4gICAgICAgICAgICAgIGZvbnQtc2l6ZTogJHJmcy1mbHVpZDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgICAgQGVsc2Uge1xuICAgICAgICAgICAgZm9udC1zaXplOiAkcmZzLWZsdWlkO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIEBpZiAkcmZzLXNhZmFyaS1pZnJhbWUtcmVzaXplLWJ1Zy1maXgge1xuICAgICAgICAgICAgLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIGxlbmd0aC16ZXJvLW5vLXVuaXRcbiAgICAgICAgICAgIG1pbi13aWR0aDogMHZ3O1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgQGVsc2Uge1xuICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogI3skbXEtdmFsdWV9KSB7XG4gICAgICAgICAgQGlmICRyZnMtY2xhc3MgPT0gXCJlbmFibGVcIiB7XG4gICAgICAgICAgICAuZW5hYmxlLXJlc3BvbnNpdmUtZm9udC1zaXplICYsXG4gICAgICAgICAgICAmLmVuYWJsZS1yZXNwb25zaXZlLWZvbnQtc2l6ZSB7XG4gICAgICAgICAgICAgIGZvbnQtc2l6ZTogJHJmcy1mbHVpZDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgICAgQGVsc2Uge1xuICAgICAgICAgICAgZm9udC1zaXplOiAkcmZzLWZsdWlkO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIEBpZiAkcmZzLXNhZmFyaS1pZnJhbWUtcmVzaXplLWJ1Zy1maXgge1xuICAgICAgICAgICAgLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIGxlbmd0aC16ZXJvLW5vLXVuaXRcbiAgICAgICAgICAgIG1pbi13aWR0aDogMHZ3O1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vLyBUaGUgZm9udC1zaXplICYgcmVzcG9uc2l2ZS1mb250LXNpemUgbWl4aW4gdXNlcyBSRlMgdG8gcmVzY2FsZSBmb250IHNpemVzXG5AbWl4aW4gZm9udC1zaXplKCRmcywgJGltcG9ydGFudDogZmFsc2UpIHtcbiAgQGluY2x1ZGUgcmZzKCRmcywgJGltcG9ydGFudCk7XG59XG5cbkBtaXhpbiByZXNwb25zaXZlLWZvbnQtc2l6ZSgkZnMsICRpbXBvcnRhbnQ6IGZhbHNlKSB7XG4gIEBpbmNsdWRlIHJmcygkZnMsICRpbXBvcnRhbnQpO1xufVxuIiwiLy8gSG92ZXIgbWl4aW4gYW5kIGAkZW5hYmxlLWhvdmVyLW1lZGlhLXF1ZXJ5YCBhcmUgZGVwcmVjYXRlZC5cbi8vXG4vLyBPcmlnaW5hbGx5IGFkZGVkIGR1cmluZyBvdXIgYWxwaGFzIGFuZCBtYWludGFpbmVkIGR1cmluZyBiZXRhcywgdGhpcyBtaXhpbiB3YXNcbi8vIGRlc2lnbmVkIHRvIHByZXZlbnQgYDpob3ZlcmAgc3RpY2tpbmVzcyBvbiBpT1MtYW4gaXNzdWUgd2hlcmUgaG92ZXIgc3R5bGVzXG4vLyB3b3VsZCBwZXJzaXN0IGFmdGVyIGluaXRpYWwgdG91Y2guXG4vL1xuLy8gRm9yIGJhY2t3YXJkIGNvbXBhdGliaWxpdHksIHdlJ3ZlIGtlcHQgdGhlc2UgbWl4aW5zIGFuZCB1cGRhdGVkIHRoZW0gdG9cbi8vIGFsd2F5cyByZXR1cm4gdGhlaXIgcmVndWxhciBwc2V1ZG8tY2xhc3NlcyBpbnN0ZWFkIG9mIGEgc2hpbW1lZCBtZWRpYSBxdWVyeS5cbi8vXG4vLyBJc3N1ZTogaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8yNTE5NVxuXG5AbWl4aW4gaG92ZXIoKSB7XG4gICY6aG92ZXIgeyBAY29udGVudDsgfVxufVxuXG5AbWl4aW4gaG92ZXItZm9jdXMoKSB7XG4gICY6aG92ZXIsXG4gICY6Zm9jdXMge1xuICAgIEBjb250ZW50O1xuICB9XG59XG5cbkBtaXhpbiBwbGFpbi1ob3Zlci1mb2N1cygpIHtcbiAgJixcbiAgJjpob3ZlcixcbiAgJjpmb2N1cyB7XG4gICAgQGNvbnRlbnQ7XG4gIH1cbn1cblxuQG1peGluIGhvdmVyLWZvY3VzLWFjdGl2ZSgpIHtcbiAgJjpob3ZlcixcbiAgJjpmb2N1cyxcbiAgJjphY3RpdmUge1xuICAgIEBjb250ZW50O1xuICB9XG59XG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBkZWNsYXJhdGlvbi1uby1pbXBvcnRhbnQsIHNlbGVjdG9yLWxpc3QtY29tbWEtbmV3bGluZS1hZnRlclxuXG4vL1xuLy8gSGVhZGluZ3Ncbi8vXG5cbmgxLCBoMiwgaDMsIGg0LCBoNSwgaDYsXG4uaDEsIC5oMiwgLmgzLCAuaDQsIC5oNSwgLmg2IHtcbiAgbWFyZ2luLWJvdHRvbTogJGhlYWRpbmdzLW1hcmdpbi1ib3R0b207XG4gIGZvbnQtZmFtaWx5OiAkaGVhZGluZ3MtZm9udC1mYW1pbHk7XG4gIGZvbnQtd2VpZ2h0OiAkaGVhZGluZ3MtZm9udC13ZWlnaHQ7XG4gIGxpbmUtaGVpZ2h0OiAkaGVhZGluZ3MtbGluZS1oZWlnaHQ7XG4gIGNvbG9yOiAkaGVhZGluZ3MtY29sb3I7XG59XG5cbmgxLCAuaDEgeyBAaW5jbHVkZSBmb250LXNpemUoJGgxLWZvbnQtc2l6ZSk7IH1cbmgyLCAuaDIgeyBAaW5jbHVkZSBmb250LXNpemUoJGgyLWZvbnQtc2l6ZSk7IH1cbmgzLCAuaDMgeyBAaW5jbHVkZSBmb250LXNpemUoJGgzLWZvbnQtc2l6ZSk7IH1cbmg0LCAuaDQgeyBAaW5jbHVkZSBmb250LXNpemUoJGg0LWZvbnQtc2l6ZSk7IH1cbmg1LCAuaDUgeyBAaW5jbHVkZSBmb250LXNpemUoJGg1LWZvbnQtc2l6ZSk7IH1cbmg2LCAuaDYgeyBAaW5jbHVkZSBmb250LXNpemUoJGg2LWZvbnQtc2l6ZSk7IH1cblxuLmxlYWQge1xuICBAaW5jbHVkZSBmb250LXNpemUoJGxlYWQtZm9udC1zaXplKTtcbiAgZm9udC13ZWlnaHQ6ICRsZWFkLWZvbnQtd2VpZ2h0O1xufVxuXG4vLyBUeXBlIGRpc3BsYXkgY2xhc3Nlc1xuLmRpc3BsYXktMSB7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkZGlzcGxheTEtc2l6ZSk7XG4gIGZvbnQtd2VpZ2h0OiAkZGlzcGxheTEtd2VpZ2h0O1xuICBsaW5lLWhlaWdodDogJGRpc3BsYXktbGluZS1oZWlnaHQ7XG59XG4uZGlzcGxheS0yIHtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRkaXNwbGF5Mi1zaXplKTtcbiAgZm9udC13ZWlnaHQ6ICRkaXNwbGF5Mi13ZWlnaHQ7XG4gIGxpbmUtaGVpZ2h0OiAkZGlzcGxheS1saW5lLWhlaWdodDtcbn1cbi5kaXNwbGF5LTMge1xuICBAaW5jbHVkZSBmb250LXNpemUoJGRpc3BsYXkzLXNpemUpO1xuICBmb250LXdlaWdodDogJGRpc3BsYXkzLXdlaWdodDtcbiAgbGluZS1oZWlnaHQ6ICRkaXNwbGF5LWxpbmUtaGVpZ2h0O1xufVxuLmRpc3BsYXktNCB7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkZGlzcGxheTQtc2l6ZSk7XG4gIGZvbnQtd2VpZ2h0OiAkZGlzcGxheTQtd2VpZ2h0O1xuICBsaW5lLWhlaWdodDogJGRpc3BsYXktbGluZS1oZWlnaHQ7XG59XG5cblxuLy9cbi8vIEhvcml6b250YWwgcnVsZXNcbi8vXG5cbmhyIHtcbiAgbWFyZ2luLXRvcDogJGhyLW1hcmdpbi15O1xuICBtYXJnaW4tYm90dG9tOiAkaHItbWFyZ2luLXk7XG4gIGJvcmRlcjogMDtcbiAgYm9yZGVyLXRvcDogJGhyLWJvcmRlci13aWR0aCBzb2xpZCAkaHItYm9yZGVyLWNvbG9yO1xufVxuXG5cbi8vXG4vLyBFbXBoYXNpc1xuLy9cblxuc21hbGwsXG4uc21hbGwge1xuICBAaW5jbHVkZSBmb250LXNpemUoJHNtYWxsLWZvbnQtc2l6ZSk7XG4gIGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtbm9ybWFsO1xufVxuXG5tYXJrLFxuLm1hcmsge1xuICBwYWRkaW5nOiAkbWFyay1wYWRkaW5nO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkbWFyay1iZztcbn1cblxuXG4vL1xuLy8gTGlzdHNcbi8vXG5cbi5saXN0LXVuc3R5bGVkIHtcbiAgQGluY2x1ZGUgbGlzdC11bnN0eWxlZCgpO1xufVxuXG4vLyBJbmxpbmUgdHVybnMgbGlzdCBpdGVtcyBpbnRvIGlubGluZS1ibG9ja1xuLmxpc3QtaW5saW5lIHtcbiAgQGluY2x1ZGUgbGlzdC11bnN0eWxlZCgpO1xufVxuLmxpc3QtaW5saW5lLWl0ZW0ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cbiAgJjpub3QoOmxhc3QtY2hpbGQpIHtcbiAgICBtYXJnaW4tcmlnaHQ6ICRsaXN0LWlubGluZS1wYWRkaW5nO1xuICB9XG59XG5cblxuLy9cbi8vIE1pc2Ncbi8vXG5cbi8vIEJ1aWxkcyBvbiBgYWJicmBcbi5pbml0aWFsaXNtIHtcbiAgQGluY2x1ZGUgZm9udC1zaXplKDkwJSk7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG59XG5cbi8vIEJsb2NrcXVvdGVzXG4uYmxvY2txdW90ZSB7XG4gIG1hcmdpbi1ib3R0b206ICRzcGFjZXI7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkYmxvY2txdW90ZS1mb250LXNpemUpO1xufVxuXG4uYmxvY2txdW90ZS1mb290ZXIge1xuICBkaXNwbGF5OiBibG9jaztcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRibG9ja3F1b3RlLXNtYWxsLWZvbnQtc2l6ZSk7XG4gIGNvbG9yOiAkYmxvY2txdW90ZS1zbWFsbC1jb2xvcjtcblxuICAmOjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IFwiXFwyMDE0XFwwMEEwXCI7IC8vIGVtIGRhc2gsIG5ic3BcbiAgfVxufVxuIiwiLy8gTGlzdHNcblxuLy8gVW5zdHlsZWQga2VlcHMgbGlzdCBpdGVtcyBibG9jayBsZXZlbCwganVzdCByZW1vdmVzIGRlZmF1bHQgYnJvd3NlciBwYWRkaW5nIGFuZCBsaXN0LXN0eWxlXG5AbWl4aW4gbGlzdC11bnN0eWxlZCgpIHtcbiAgcGFkZGluZy1sZWZ0OiAwO1xuICBsaXN0LXN0eWxlOiBub25lO1xufVxuIiwiLy8gUmVzcG9uc2l2ZSBpbWFnZXMgKGVuc3VyZSBpbWFnZXMgZG9uJ3Qgc2NhbGUgYmV5b25kIHRoZWlyIHBhcmVudHMpXG4vL1xuLy8gVGhpcyBpcyBwdXJwb3NlZnVsbHkgb3B0LWluIHZpYSBhbiBleHBsaWNpdCBjbGFzcyByYXRoZXIgdGhhbiBiZWluZyB0aGUgZGVmYXVsdCBmb3IgYWxsIGA8aW1nPmBzLlxuLy8gV2UgcHJldmlvdXNseSB0cmllZCB0aGUgXCJpbWFnZXMgYXJlIHJlc3BvbnNpdmUgYnkgZGVmYXVsdFwiIGFwcHJvYWNoIGluIEJvb3RzdHJhcCB2Mixcbi8vIGFuZCBhYmFuZG9uZWQgaXQgaW4gQm9vdHN0cmFwIHYzIGJlY2F1c2UgaXQgYnJlYWtzIGxvdHMgb2YgdGhpcmQtcGFydHkgd2lkZ2V0cyAoaW5jbHVkaW5nIEdvb2dsZSBNYXBzKVxuLy8gd2hpY2ggd2VyZW4ndCBleHBlY3RpbmcgdGhlIGltYWdlcyB3aXRoaW4gdGhlbXNlbHZlcyB0byBiZSBpbnZvbHVudGFyaWx5IHJlc2l6ZWQuXG4vLyBTZWUgYWxzbyBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzE4MTc4XG4uaW1nLWZsdWlkIHtcbiAgQGluY2x1ZGUgaW1nLWZsdWlkKCk7XG59XG5cblxuLy8gSW1hZ2UgdGh1bWJuYWlsc1xuLmltZy10aHVtYm5haWwge1xuICBwYWRkaW5nOiAkdGh1bWJuYWlsLXBhZGRpbmc7XG4gIGJhY2tncm91bmQtY29sb3I6ICR0aHVtYm5haWwtYmc7XG4gIGJvcmRlcjogJHRodW1ibmFpbC1ib3JkZXItd2lkdGggc29saWQgJHRodW1ibmFpbC1ib3JkZXItY29sb3I7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJHRodW1ibmFpbC1ib3JkZXItcmFkaXVzKTtcbiAgQGluY2x1ZGUgYm94LXNoYWRvdygkdGh1bWJuYWlsLWJveC1zaGFkb3cpO1xuXG4gIC8vIEtlZXAgdGhlbSBhdCBtb3N0IDEwMCUgd2lkZVxuICBAaW5jbHVkZSBpbWctZmx1aWQoKTtcbn1cblxuLy9cbi8vIEZpZ3VyZXNcbi8vXG5cbi5maWd1cmUge1xuICAvLyBFbnN1cmVzIHRoZSBjYXB0aW9uJ3MgdGV4dCBhbGlnbnMgd2l0aCB0aGUgaW1hZ2UuXG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbn1cblxuLmZpZ3VyZS1pbWcge1xuICBtYXJnaW4tYm90dG9tOiAkc3BhY2VyIC8gMjtcbiAgbGluZS1oZWlnaHQ6IDE7XG59XG5cbi5maWd1cmUtY2FwdGlvbiB7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkZmlndXJlLWNhcHRpb24tZm9udC1zaXplKTtcbiAgY29sb3I6ICRmaWd1cmUtY2FwdGlvbi1jb2xvcjtcbn1cbiIsIi8vIEltYWdlIE1peGluc1xuLy8gLSBSZXNwb25zaXZlIGltYWdlXG4vLyAtIFJldGluYSBpbWFnZVxuXG5cbi8vIFJlc3BvbnNpdmUgaW1hZ2Vcbi8vXG4vLyBLZWVwIGltYWdlcyBmcm9tIHNjYWxpbmcgYmV5b25kIHRoZSB3aWR0aCBvZiB0aGVpciBwYXJlbnRzLlxuXG5AbWl4aW4gaW1nLWZsdWlkKCkge1xuICAvLyBQYXJ0IDE6IFNldCBhIG1heGltdW0gcmVsYXRpdmUgdG8gdGhlIHBhcmVudFxuICBtYXgtd2lkdGg6IDEwMCU7XG4gIC8vIFBhcnQgMjogT3ZlcnJpZGUgdGhlIGhlaWdodCB0byBhdXRvLCBvdGhlcndpc2UgaW1hZ2VzIHdpbGwgYmUgc3RyZXRjaGVkXG4gIC8vIHdoZW4gc2V0dGluZyBhIHdpZHRoIGFuZCBoZWlnaHQgYXR0cmlidXRlIG9uIHRoZSBpbWcgZWxlbWVudC5cbiAgaGVpZ2h0OiBhdXRvO1xufVxuXG5cbi8vIFJldGluYSBpbWFnZVxuLy9cbi8vIFNob3J0IHJldGluYSBtaXhpbiBmb3Igc2V0dGluZyBiYWNrZ3JvdW5kLWltYWdlIGFuZCAtc2l6ZS5cblxuQG1peGluIGltZy1yZXRpbmEoJGZpbGUtMXgsICRmaWxlLTJ4LCAkd2lkdGgtMXgsICRoZWlnaHQtMXgpIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCRmaWxlLTF4KTtcblxuICAvLyBBdXRvcHJlZml4ZXIgdGFrZXMgY2FyZSBvZiBhZGRpbmcgLXdlYmtpdC1taW4tZGV2aWNlLXBpeGVsLXJhdGlvIGFuZCAtby1taW4tZGV2aWNlLXBpeGVsLXJhdGlvLFxuICAvLyBidXQgZG9lc24ndCBjb252ZXJ0IGRwcHg9PmRwaS5cbiAgLy8gVGhlcmUncyBubyBzdWNoIHRoaW5nIGFzIHVucHJlZml4ZWQgbWluLWRldmljZS1waXhlbC1yYXRpbyBzaW5jZSBpdCdzIG5vbnN0YW5kYXJkLlxuICAvLyBDb21wYXRpYmlsaXR5IGluZm86IGh0dHBzOi8vY2FuaXVzZS5jb20vI2ZlYXQ9Y3NzLW1lZGlhLXJlc29sdXRpb25cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXJlc29sdXRpb246IDE5MmRwaSksIC8vIElFOS0xMSBkb24ndCBzdXBwb3J0IGRwcHhcbiAgICBvbmx5IHNjcmVlbiBhbmQgKG1pbi1yZXNvbHV0aW9uOiAyZHBweCkgeyAvLyBTdGFuZGFyZGl6ZWRcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJGZpbGUtMngpO1xuICAgIGJhY2tncm91bmQtc2l6ZTogJHdpZHRoLTF4ICRoZWlnaHQtMXg7XG4gIH1cbiAgQGluY2x1ZGUgZGVwcmVjYXRlKFwiYGltZy1yZXRpbmEoKWBcIiwgXCJ2NC4zLjBcIiwgXCJ2NVwiKTtcbn1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIHByb3BlcnR5LWJsYWNrbGlzdFxuLy8gU2luZ2xlIHNpZGUgYm9yZGVyLXJhZGl1c1xuXG5AbWl4aW4gYm9yZGVyLXJhZGl1cygkcmFkaXVzOiAkYm9yZGVyLXJhZGl1cywgJGZhbGxiYWNrLWJvcmRlci1yYWRpdXM6IGZhbHNlKSB7XG4gIEBpZiAkZW5hYmxlLXJvdW5kZWQge1xuICAgIGJvcmRlci1yYWRpdXM6ICRyYWRpdXM7XG4gIH1cbiAgQGVsc2UgaWYgJGZhbGxiYWNrLWJvcmRlci1yYWRpdXMgIT0gZmFsc2Uge1xuICAgIGJvcmRlci1yYWRpdXM6ICRmYWxsYmFjay1ib3JkZXItcmFkaXVzO1xuICB9XG59XG5cbkBtaXhpbiBib3JkZXItdG9wLXJhZGl1cygkcmFkaXVzKSB7XG4gIEBpZiAkZW5hYmxlLXJvdW5kZWQge1xuICAgIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6ICRyYWRpdXM7XG4gICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6ICRyYWRpdXM7XG4gIH1cbn1cblxuQG1peGluIGJvcmRlci1yaWdodC1yYWRpdXMoJHJhZGl1cykge1xuICBAaWYgJGVuYWJsZS1yb3VuZGVkIHtcbiAgICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogJHJhZGl1cztcbiAgICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogJHJhZGl1cztcbiAgfVxufVxuXG5AbWl4aW4gYm9yZGVyLWJvdHRvbS1yYWRpdXMoJHJhZGl1cykge1xuICBAaWYgJGVuYWJsZS1yb3VuZGVkIHtcbiAgICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogJHJhZGl1cztcbiAgICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAkcmFkaXVzO1xuICB9XG59XG5cbkBtaXhpbiBib3JkZXItbGVmdC1yYWRpdXMoJHJhZGl1cykge1xuICBAaWYgJGVuYWJsZS1yb3VuZGVkIHtcbiAgICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAkcmFkaXVzO1xuICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6ICRyYWRpdXM7XG4gIH1cbn1cblxuQG1peGluIGJvcmRlci10b3AtbGVmdC1yYWRpdXMoJHJhZGl1cykge1xuICBAaWYgJGVuYWJsZS1yb3VuZGVkIHtcbiAgICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAkcmFkaXVzO1xuICB9XG59XG5cbkBtaXhpbiBib3JkZXItdG9wLXJpZ2h0LXJhZGl1cygkcmFkaXVzKSB7XG4gIEBpZiAkZW5hYmxlLXJvdW5kZWQge1xuICAgIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAkcmFkaXVzO1xuICB9XG59XG5cbkBtaXhpbiBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1cygkcmFkaXVzKSB7XG4gIEBpZiAkZW5hYmxlLXJvdW5kZWQge1xuICAgIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAkcmFkaXVzO1xuICB9XG59XG5cbkBtaXhpbiBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzKCRyYWRpdXMpIHtcbiAgQGlmICRlbmFibGUtcm91bmRlZCB7XG4gICAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogJHJhZGl1cztcbiAgfVxufVxuIiwiLy8gSW5saW5lIGNvZGVcbmNvZGUge1xuICBAaW5jbHVkZSBmb250LXNpemUoJGNvZGUtZm9udC1zaXplKTtcbiAgY29sb3I6ICRjb2RlLWNvbG9yO1xuICB3b3JkLXdyYXA6IGJyZWFrLXdvcmQ7XG5cbiAgLy8gU3RyZWFtbGluZSB0aGUgc3R5bGUgd2hlbiBpbnNpZGUgYW5jaG9ycyB0byBhdm9pZCBicm9rZW4gdW5kZXJsaW5lIGFuZCBtb3JlXG4gIGEgPiAmIHtcbiAgICBjb2xvcjogaW5oZXJpdDtcbiAgfVxufVxuXG4vLyBVc2VyIGlucHV0IHR5cGljYWxseSBlbnRlcmVkIHZpYSBrZXlib2FyZFxua2JkIHtcbiAgcGFkZGluZzogJGtiZC1wYWRkaW5nLXkgJGtiZC1wYWRkaW5nLXg7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgka2JkLWZvbnQtc2l6ZSk7XG4gIGNvbG9yOiAka2JkLWNvbG9yO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAka2JkLWJnO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRib3JkZXItcmFkaXVzLXNtKTtcbiAgQGluY2x1ZGUgYm94LXNoYWRvdygka2JkLWJveC1zaGFkb3cpO1xuXG4gIGtiZCB7XG4gICAgcGFkZGluZzogMDtcbiAgICBAaW5jbHVkZSBmb250LXNpemUoMTAwJSk7XG4gICAgZm9udC13ZWlnaHQ6ICRuZXN0ZWQta2JkLWZvbnQtd2VpZ2h0O1xuICAgIEBpbmNsdWRlIGJveC1zaGFkb3cobm9uZSk7XG4gIH1cbn1cblxuLy8gQmxvY2tzIG9mIGNvZGVcbnByZSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBAaW5jbHVkZSBmb250LXNpemUoJGNvZGUtZm9udC1zaXplKTtcbiAgY29sb3I6ICRwcmUtY29sb3I7XG5cbiAgLy8gQWNjb3VudCBmb3Igc29tZSBjb2RlIG91dHB1dHMgdGhhdCBwbGFjZSBjb2RlIHRhZ3MgaW4gcHJlIHRhZ3NcbiAgY29kZSB7XG4gICAgQGluY2x1ZGUgZm9udC1zaXplKGluaGVyaXQpO1xuICAgIGNvbG9yOiBpbmhlcml0O1xuICAgIHdvcmQtYnJlYWs6IG5vcm1hbDtcbiAgfVxufVxuXG4vLyBFbmFibGUgc2Nyb2xsYWJsZSBibG9ja3Mgb2YgY29kZVxuLnByZS1zY3JvbGxhYmxlIHtcbiAgbWF4LWhlaWdodDogJHByZS1zY3JvbGxhYmxlLW1heC1oZWlnaHQ7XG4gIG92ZXJmbG93LXk6IHNjcm9sbDtcbn1cbiIsIi8vIENvbnRhaW5lciB3aWR0aHNcbi8vXG4vLyBTZXQgdGhlIGNvbnRhaW5lciB3aWR0aCwgYW5kIG92ZXJyaWRlIGl0IGZvciBmaXhlZCBuYXZiYXJzIGluIG1lZGlhIHF1ZXJpZXMuXG5cbkBpZiAkZW5hYmxlLWdyaWQtY2xhc3NlcyB7XG4gIC8vIFNpbmdsZSBjb250YWluZXIgY2xhc3Mgd2l0aCBicmVha3BvaW50IG1heC13aWR0aHNcbiAgLmNvbnRhaW5lciB7XG4gICAgQGluY2x1ZGUgbWFrZS1jb250YWluZXIoKTtcbiAgICBAaW5jbHVkZSBtYWtlLWNvbnRhaW5lci1tYXgtd2lkdGhzKCk7XG4gIH1cblxuICAvLyAxMDAlIHdpZGUgY29udGFpbmVyIGF0IGFsbCBicmVha3BvaW50c1xuICAuY29udGFpbmVyLWZsdWlkIHtcbiAgICBAaW5jbHVkZSBtYWtlLWNvbnRhaW5lcigpO1xuICB9XG5cbiAgLy8gUmVzcG9uc2l2ZSBjb250YWluZXJzIHRoYXQgYXJlIDEwMCUgd2lkZSB1bnRpbCBhIGJyZWFrcG9pbnRcbiAgQGVhY2ggJGJyZWFrcG9pbnQsICRjb250YWluZXItbWF4LXdpZHRoIGluICRjb250YWluZXItbWF4LXdpZHRocyB7XG4gICAgLmNvbnRhaW5lci0jeyRicmVha3BvaW50fSB7XG4gICAgICBAZXh0ZW5kIC5jb250YWluZXItZmx1aWQ7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgkYnJlYWtwb2ludCwgJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgICAgICVyZXNwb25zaXZlLWNvbnRhaW5lci0jeyRicmVha3BvaW50fSB7XG4gICAgICAgIG1heC13aWR0aDogJGNvbnRhaW5lci1tYXgtd2lkdGg7XG4gICAgICB9XG5cbiAgICAgIEBlYWNoICRuYW1lLCAkd2lkdGggaW4gJGdyaWQtYnJlYWtwb2ludHMge1xuICAgICAgICBAaWYgKCRjb250YWluZXItbWF4LXdpZHRoID4gJHdpZHRoIG9yICRicmVha3BvaW50ID09ICRuYW1lKSB7XG4gICAgICAgICAgLmNvbnRhaW5lciN7YnJlYWtwb2ludC1pbmZpeCgkbmFtZSwgJGdyaWQtYnJlYWtwb2ludHMpfSB7XG4gICAgICAgICAgICBAZXh0ZW5kICVyZXNwb25zaXZlLWNvbnRhaW5lci0jeyRicmVha3BvaW50fTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuXG4vLyBSb3dcbi8vXG4vLyBSb3dzIGNvbnRhaW4geW91ciBjb2x1bW5zLlxuXG5AaWYgJGVuYWJsZS1ncmlkLWNsYXNzZXMge1xuICAucm93IHtcbiAgICBAaW5jbHVkZSBtYWtlLXJvdygpO1xuICB9XG5cbiAgLy8gUmVtb3ZlIHRoZSBuZWdhdGl2ZSBtYXJnaW4gZnJvbSBkZWZhdWx0IC5yb3csIHRoZW4gdGhlIGhvcml6b250YWwgcGFkZGluZ1xuICAvLyBmcm9tIGFsbCBpbW1lZGlhdGUgY2hpbGRyZW4gY29sdW1ucyAodG8gcHJldmVudCBydW5hd2F5IHN0eWxlIGluaGVyaXRhbmNlKS5cbiAgLm5vLWd1dHRlcnMge1xuICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICBtYXJnaW4tbGVmdDogMDtcblxuICAgID4gLmNvbCxcbiAgICA+IFtjbGFzcyo9XCJjb2wtXCJdIHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgfVxuICB9XG59XG5cbi8vIENvbHVtbnNcbi8vXG4vLyBDb21tb24gc3R5bGVzIGZvciBzbWFsbCBhbmQgbGFyZ2UgZ3JpZCBjb2x1bW5zXG5cbkBpZiAkZW5hYmxlLWdyaWQtY2xhc3NlcyB7XG4gIEBpbmNsdWRlIG1ha2UtZ3JpZC1jb2x1bW5zKCk7XG59XG4iLCIvLy8gR3JpZCBzeXN0ZW1cbi8vXG4vLyBHZW5lcmF0ZSBzZW1hbnRpYyBncmlkIGNvbHVtbnMgd2l0aCB0aGVzZSBtaXhpbnMuXG5cbkBtaXhpbiBtYWtlLWNvbnRhaW5lcigkZ3V0dGVyOiAkZ3JpZC1ndXR0ZXItd2lkdGgpIHtcbiAgd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmctcmlnaHQ6ICRndXR0ZXIgLyAyO1xuICBwYWRkaW5nLWxlZnQ6ICRndXR0ZXIgLyAyO1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xufVxuXG5cbi8vIEZvciBlYWNoIGJyZWFrcG9pbnQsIGRlZmluZSB0aGUgbWF4aW11bSB3aWR0aCBvZiB0aGUgY29udGFpbmVyIGluIGEgbWVkaWEgcXVlcnlcbkBtaXhpbiBtYWtlLWNvbnRhaW5lci1tYXgtd2lkdGhzKCRtYXgtd2lkdGhzOiAkY29udGFpbmVyLW1heC13aWR0aHMsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgQGVhY2ggJGJyZWFrcG9pbnQsICRjb250YWluZXItbWF4LXdpZHRoIGluICRtYXgtd2lkdGhzIHtcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRicmVha3BvaW50LCAkYnJlYWtwb2ludHMpIHtcbiAgICAgIG1heC13aWR0aDogJGNvbnRhaW5lci1tYXgtd2lkdGg7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBtYWtlLXJvdygkZ3V0dGVyOiAkZ3JpZC1ndXR0ZXItd2lkdGgpIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwO1xuICBtYXJnaW4tcmlnaHQ6IC0kZ3V0dGVyIC8gMjtcbiAgbWFyZ2luLWxlZnQ6IC0kZ3V0dGVyIC8gMjtcbn1cblxuQG1peGluIG1ha2UtY29sLXJlYWR5KCRndXR0ZXI6ICRncmlkLWd1dHRlci13aWR0aCkge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIC8vIFByZXZlbnQgY29sdW1ucyBmcm9tIGJlY29taW5nIHRvbyBuYXJyb3cgd2hlbiBhdCBzbWFsbGVyIGdyaWQgdGllcnMgYnlcbiAgLy8gYWx3YXlzIHNldHRpbmcgYHdpZHRoOiAxMDAlO2AuIFRoaXMgd29ya3MgYmVjYXVzZSB3ZSB1c2UgYGZsZXhgIHZhbHVlc1xuICAvLyBsYXRlciBvbiB0byBvdmVycmlkZSB0aGlzIGluaXRpYWwgd2lkdGguXG4gIHdpZHRoOiAxMDAlO1xuICBwYWRkaW5nLXJpZ2h0OiAkZ3V0dGVyIC8gMjtcbiAgcGFkZGluZy1sZWZ0OiAkZ3V0dGVyIC8gMjtcbn1cblxuQG1peGluIG1ha2UtY29sKCRzaXplLCAkY29sdW1uczogJGdyaWQtY29sdW1ucykge1xuICBmbGV4OiAwIDAgcGVyY2VudGFnZSgkc2l6ZSAvICRjb2x1bW5zKTtcbiAgLy8gQWRkIGEgYG1heC13aWR0aGAgdG8gZW5zdXJlIGNvbnRlbnQgd2l0aGluIGVhY2ggY29sdW1uIGRvZXMgbm90IGJsb3cgb3V0XG4gIC8vIHRoZSB3aWR0aCBvZiB0aGUgY29sdW1uLiBBcHBsaWVzIHRvIElFMTArIGFuZCBGaXJlZm94LiBDaHJvbWUgYW5kIFNhZmFyaVxuICAvLyBkbyBub3QgYXBwZWFyIHRvIHJlcXVpcmUgdGhpcy5cbiAgbWF4LXdpZHRoOiBwZXJjZW50YWdlKCRzaXplIC8gJGNvbHVtbnMpO1xufVxuXG5AbWl4aW4gbWFrZS1jb2wtYXV0bygpIHtcbiAgZmxleDogMCAwIGF1dG87XG4gIHdpZHRoOiBhdXRvO1xuICBtYXgtd2lkdGg6IDEwMCU7IC8vIFJlc2V0IGVhcmxpZXIgZ3JpZCB0aWVyc1xufVxuXG5AbWl4aW4gbWFrZS1jb2wtb2Zmc2V0KCRzaXplLCAkY29sdW1uczogJGdyaWQtY29sdW1ucykge1xuICAkbnVtOiAkc2l6ZSAvICRjb2x1bW5zO1xuICBtYXJnaW4tbGVmdDogaWYoJG51bSA9PSAwLCAwLCBwZXJjZW50YWdlKCRudW0pKTtcbn1cblxuLy8gUm93IGNvbHVtbnNcbi8vXG4vLyBTcGVjaWZ5IG9uIGEgcGFyZW50IGVsZW1lbnQoZS5nLiwgLnJvdykgdG8gZm9yY2UgaW1tZWRpYXRlIGNoaWxkcmVuIGludG8gTk5cbi8vIG51bWJlcm9mIGNvbHVtbnMuIFN1cHBvcnRzIHdyYXBwaW5nIHRvIG5ldyBsaW5lcywgYnV0IGRvZXMgbm90IGRvIGEgTWFzb25yeVxuLy8gc3R5bGUgZ3JpZC5cbkBtaXhpbiByb3ctY29scygkY291bnQpIHtcbiAgJiA+ICoge1xuICAgIGZsZXg6IDAgMCAxMDAlIC8gJGNvdW50O1xuICAgIG1heC13aWR0aDogMTAwJSAvICRjb3VudDtcbiAgfVxufVxuIiwiLy8gQnJlYWtwb2ludCB2aWV3cG9ydCBzaXplcyBhbmQgbWVkaWEgcXVlcmllcy5cbi8vXG4vLyBCcmVha3BvaW50cyBhcmUgZGVmaW5lZCBhcyBhIG1hcCBvZiAobmFtZTogbWluaW11bSB3aWR0aCksIG9yZGVyIGZyb20gc21hbGwgdG8gbGFyZ2U6XG4vL1xuLy8gICAgKHhzOiAwLCBzbTogNTc2cHgsIG1kOiA3NjhweCwgbGc6IDk5MnB4LCB4bDogMTIwMHB4KVxuLy9cbi8vIFRoZSBtYXAgZGVmaW5lZCBpbiB0aGUgYCRncmlkLWJyZWFrcG9pbnRzYCBnbG9iYWwgdmFyaWFibGUgaXMgdXNlZCBhcyB0aGUgYCRicmVha3BvaW50c2AgYXJndW1lbnQgYnkgZGVmYXVsdC5cblxuLy8gTmFtZSBvZiB0aGUgbmV4dCBicmVha3BvaW50LCBvciBudWxsIGZvciB0aGUgbGFzdCBicmVha3BvaW50LlxuLy9cbi8vICAgID4+IGJyZWFrcG9pbnQtbmV4dChzbSlcbi8vICAgIG1kXG4vLyAgICA+PiBicmVha3BvaW50LW5leHQoc20sICh4czogMCwgc206IDU3NnB4LCBtZDogNzY4cHgsIGxnOiA5OTJweCwgeGw6IDEyMDBweCkpXG4vLyAgICBtZFxuLy8gICAgPj4gYnJlYWtwb2ludC1uZXh0KHNtLCAkYnJlYWtwb2ludC1uYW1lczogKHhzIHNtIG1kIGxnIHhsKSlcbi8vICAgIG1kXG5AZnVuY3Rpb24gYnJlYWtwb2ludC1uZXh0KCRuYW1lLCAkYnJlYWtwb2ludHM6ICRncmlkLWJyZWFrcG9pbnRzLCAkYnJlYWtwb2ludC1uYW1lczogbWFwLWtleXMoJGJyZWFrcG9pbnRzKSkge1xuICAkbjogaW5kZXgoJGJyZWFrcG9pbnQtbmFtZXMsICRuYW1lKTtcbiAgQHJldHVybiBpZigkbiAhPSBudWxsIGFuZCAkbiA8IGxlbmd0aCgkYnJlYWtwb2ludC1uYW1lcyksIG50aCgkYnJlYWtwb2ludC1uYW1lcywgJG4gKyAxKSwgbnVsbCk7XG59XG5cbi8vIE1pbmltdW0gYnJlYWtwb2ludCB3aWR0aC4gTnVsbCBmb3IgdGhlIHNtYWxsZXN0IChmaXJzdCkgYnJlYWtwb2ludC5cbi8vXG4vLyAgICA+PiBicmVha3BvaW50LW1pbihzbSwgKHhzOiAwLCBzbTogNTc2cHgsIG1kOiA3NjhweCwgbGc6IDk5MnB4LCB4bDogMTIwMHB4KSlcbi8vICAgIDU3NnB4XG5AZnVuY3Rpb24gYnJlYWtwb2ludC1taW4oJG5hbWUsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgJG1pbjogbWFwLWdldCgkYnJlYWtwb2ludHMsICRuYW1lKTtcbiAgQHJldHVybiBpZigkbWluICE9IDAsICRtaW4sIG51bGwpO1xufVxuXG4vLyBNYXhpbXVtIGJyZWFrcG9pbnQgd2lkdGguIE51bGwgZm9yIHRoZSBsYXJnZXN0IChsYXN0KSBicmVha3BvaW50LlxuLy8gVGhlIG1heGltdW0gdmFsdWUgaXMgY2FsY3VsYXRlZCBhcyB0aGUgbWluaW11bSBvZiB0aGUgbmV4dCBvbmUgbGVzcyAwLjAycHhcbi8vIHRvIHdvcmsgYXJvdW5kIHRoZSBsaW1pdGF0aW9ucyBvZiBgbWluLWAgYW5kIGBtYXgtYCBwcmVmaXhlcyBhbmQgdmlld3BvcnRzIHdpdGggZnJhY3Rpb25hbCB3aWR0aHMuXG4vLyBTZWUgaHR0cHM6Ly93d3cudzMub3JnL1RSL21lZGlhcXVlcmllcy00LyNtcS1taW4tbWF4XG4vLyBVc2VzIDAuMDJweCByYXRoZXIgdGhhbiAwLjAxcHggdG8gd29yayBhcm91bmQgYSBjdXJyZW50IHJvdW5kaW5nIGJ1ZyBpbiBTYWZhcmkuXG4vLyBTZWUgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE3ODI2MVxuLy9cbi8vICAgID4+IGJyZWFrcG9pbnQtbWF4KHNtLCAoeHM6IDAsIHNtOiA1NzZweCwgbWQ6IDc2OHB4LCBsZzogOTkycHgsIHhsOiAxMjAwcHgpKVxuLy8gICAgNzY3Ljk4cHhcbkBmdW5jdGlvbiBicmVha3BvaW50LW1heCgkbmFtZSwgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50cykge1xuICAkbmV4dDogYnJlYWtwb2ludC1uZXh0KCRuYW1lLCAkYnJlYWtwb2ludHMpO1xuICBAcmV0dXJuIGlmKCRuZXh0LCBicmVha3BvaW50LW1pbigkbmV4dCwgJGJyZWFrcG9pbnRzKSAtIC4wMiwgbnVsbCk7XG59XG5cbi8vIFJldHVybnMgYSBibGFuayBzdHJpbmcgaWYgc21hbGxlc3QgYnJlYWtwb2ludCwgb3RoZXJ3aXNlIHJldHVybnMgdGhlIG5hbWUgd2l0aCBhIGRhc2ggaW4gZnJvbnQuXG4vLyBVc2VmdWwgZm9yIG1ha2luZyByZXNwb25zaXZlIHV0aWxpdGllcy5cbi8vXG4vLyAgICA+PiBicmVha3BvaW50LWluZml4KHhzLCAoeHM6IDAsIHNtOiA1NzZweCwgbWQ6IDc2OHB4LCBsZzogOTkycHgsIHhsOiAxMjAwcHgpKVxuLy8gICAgXCJcIiAgKFJldHVybnMgYSBibGFuayBzdHJpbmcpXG4vLyAgICA+PiBicmVha3BvaW50LWluZml4KHNtLCAoeHM6IDAsIHNtOiA1NzZweCwgbWQ6IDc2OHB4LCBsZzogOTkycHgsIHhsOiAxMjAwcHgpKVxuLy8gICAgXCItc21cIlxuQGZ1bmN0aW9uIGJyZWFrcG9pbnQtaW5maXgoJG5hbWUsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgQHJldHVybiBpZihicmVha3BvaW50LW1pbigkbmFtZSwgJGJyZWFrcG9pbnRzKSA9PSBudWxsLCBcIlwiLCBcIi0jeyRuYW1lfVwiKTtcbn1cblxuLy8gTWVkaWEgb2YgYXQgbGVhc3QgdGhlIG1pbmltdW0gYnJlYWtwb2ludCB3aWR0aC4gTm8gcXVlcnkgZm9yIHRoZSBzbWFsbGVzdCBicmVha3BvaW50LlxuLy8gTWFrZXMgdGhlIEBjb250ZW50IGFwcGx5IHRvIHRoZSBnaXZlbiBicmVha3BvaW50IGFuZCB3aWRlci5cbkBtaXhpbiBtZWRpYS1icmVha3BvaW50LXVwKCRuYW1lLCAkYnJlYWtwb2ludHM6ICRncmlkLWJyZWFrcG9pbnRzKSB7XG4gICRtaW46IGJyZWFrcG9pbnQtbWluKCRuYW1lLCAkYnJlYWtwb2ludHMpO1xuICBAaWYgJG1pbiB7XG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICRtaW4pIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfSBAZWxzZSB7XG4gICAgQGNvbnRlbnQ7XG4gIH1cbn1cblxuLy8gTWVkaWEgb2YgYXQgbW9zdCB0aGUgbWF4aW11bSBicmVha3BvaW50IHdpZHRoLiBObyBxdWVyeSBmb3IgdGhlIGxhcmdlc3QgYnJlYWtwb2ludC5cbi8vIE1ha2VzIHRoZSBAY29udGVudCBhcHBseSB0byB0aGUgZ2l2ZW4gYnJlYWtwb2ludCBhbmQgbmFycm93ZXIuXG5AbWl4aW4gbWVkaWEtYnJlYWtwb2ludC1kb3duKCRuYW1lLCAkYnJlYWtwb2ludHM6ICRncmlkLWJyZWFrcG9pbnRzKSB7XG4gICRtYXg6IGJyZWFrcG9pbnQtbWF4KCRuYW1lLCAkYnJlYWtwb2ludHMpO1xuICBAaWYgJG1heCB7XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6ICRtYXgpIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfSBAZWxzZSB7XG4gICAgQGNvbnRlbnQ7XG4gIH1cbn1cblxuLy8gTWVkaWEgdGhhdCBzcGFucyBtdWx0aXBsZSBicmVha3BvaW50IHdpZHRocy5cbi8vIE1ha2VzIHRoZSBAY29udGVudCBhcHBseSBiZXR3ZWVuIHRoZSBtaW4gYW5kIG1heCBicmVha3BvaW50c1xuQG1peGluIG1lZGlhLWJyZWFrcG9pbnQtYmV0d2VlbigkbG93ZXIsICR1cHBlciwgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50cykge1xuICAkbWluOiBicmVha3BvaW50LW1pbigkbG93ZXIsICRicmVha3BvaW50cyk7XG4gICRtYXg6IGJyZWFrcG9pbnQtbWF4KCR1cHBlciwgJGJyZWFrcG9pbnRzKTtcblxuICBAaWYgJG1pbiAhPSBudWxsIGFuZCAkbWF4ICE9IG51bGwge1xuICAgIEBtZWRpYSAobWluLXdpZHRoOiAkbWluKSBhbmQgKG1heC13aWR0aDogJG1heCkge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9IEBlbHNlIGlmICRtYXggPT0gbnVsbCB7XG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgkbG93ZXIsICRicmVha3BvaW50cykge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9IEBlbHNlIGlmICRtaW4gPT0gbnVsbCB7XG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKCR1cHBlciwgJGJyZWFrcG9pbnRzKSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH1cbn1cblxuLy8gTWVkaWEgYmV0d2VlbiB0aGUgYnJlYWtwb2ludCdzIG1pbmltdW0gYW5kIG1heGltdW0gd2lkdGhzLlxuLy8gTm8gbWluaW11bSBmb3IgdGhlIHNtYWxsZXN0IGJyZWFrcG9pbnQsIGFuZCBubyBtYXhpbXVtIGZvciB0aGUgbGFyZ2VzdCBvbmUuXG4vLyBNYWtlcyB0aGUgQGNvbnRlbnQgYXBwbHkgb25seSB0byB0aGUgZ2l2ZW4gYnJlYWtwb2ludCwgbm90IHZpZXdwb3J0cyBhbnkgd2lkZXIgb3IgbmFycm93ZXIuXG5AbWl4aW4gbWVkaWEtYnJlYWtwb2ludC1vbmx5KCRuYW1lLCAkYnJlYWtwb2ludHM6ICRncmlkLWJyZWFrcG9pbnRzKSB7XG4gICRtaW46IGJyZWFrcG9pbnQtbWluKCRuYW1lLCAkYnJlYWtwb2ludHMpO1xuICAkbWF4OiBicmVha3BvaW50LW1heCgkbmFtZSwgJGJyZWFrcG9pbnRzKTtcblxuICBAaWYgJG1pbiAhPSBudWxsIGFuZCAkbWF4ICE9IG51bGwge1xuICAgIEBtZWRpYSAobWluLXdpZHRoOiAkbWluKSBhbmQgKG1heC13aWR0aDogJG1heCkge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9IEBlbHNlIGlmICRtYXggPT0gbnVsbCB7XG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgkbmFtZSwgJGJyZWFrcG9pbnRzKSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH0gQGVsc2UgaWYgJG1pbiA9PSBudWxsIHtcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oJG5hbWUsICRicmVha3BvaW50cykge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9XG59XG4iLCIvLyBGcmFtZXdvcmsgZ3JpZCBnZW5lcmF0aW9uXG4vL1xuLy8gVXNlZCBvbmx5IGJ5IEJvb3RzdHJhcCB0byBnZW5lcmF0ZSB0aGUgY29ycmVjdCBudW1iZXIgb2YgZ3JpZCBjbGFzc2VzIGdpdmVuXG4vLyBhbnkgdmFsdWUgb2YgYCRncmlkLWNvbHVtbnNgLlxuXG5AbWl4aW4gbWFrZS1ncmlkLWNvbHVtbnMoJGNvbHVtbnM6ICRncmlkLWNvbHVtbnMsICRndXR0ZXI6ICRncmlkLWd1dHRlci13aWR0aCwgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50cykge1xuICAvLyBDb21tb24gcHJvcGVydGllcyBmb3IgYWxsIGJyZWFrcG9pbnRzXG4gICVncmlkLWNvbHVtbiB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHBhZGRpbmctcmlnaHQ6ICRndXR0ZXIgLyAyO1xuICAgIHBhZGRpbmctbGVmdDogJGd1dHRlciAvIDI7XG4gIH1cblxuICBAZWFjaCAkYnJlYWtwb2ludCBpbiBtYXAta2V5cygkYnJlYWtwb2ludHMpIHtcbiAgICAkaW5maXg6IGJyZWFrcG9pbnQtaW5maXgoJGJyZWFrcG9pbnQsICRicmVha3BvaW50cyk7XG5cbiAgICAvLyBBbGxvdyBjb2x1bW5zIHRvIHN0cmV0Y2ggZnVsbCB3aWR0aCBiZWxvdyB0aGVpciBicmVha3BvaW50c1xuICAgIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggJGNvbHVtbnMge1xuICAgICAgLmNvbCN7JGluZml4fS0jeyRpfSB7XG4gICAgICAgIEBleHRlbmQgJWdyaWQtY29sdW1uO1xuICAgICAgfVxuICAgIH1cbiAgICAuY29sI3skaW5maXh9LFxuICAgIC5jb2wjeyRpbmZpeH0tYXV0byB7XG4gICAgICBAZXh0ZW5kICVncmlkLWNvbHVtbjtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRicmVha3BvaW50LCAkYnJlYWtwb2ludHMpIHtcbiAgICAgIC8vIFByb3ZpZGUgYmFzaWMgYC5jb2wte2JwfWAgY2xhc3NlcyBmb3IgZXF1YWwtd2lkdGggZmxleGJveCBjb2x1bW5zXG4gICAgICAuY29sI3skaW5maXh9IHtcbiAgICAgICAgZmxleC1iYXNpczogMDtcbiAgICAgICAgZmxleC1ncm93OiAxO1xuICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgICB9XG5cbiAgICAgIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggJGdyaWQtcm93LWNvbHVtbnMge1xuICAgICAgICAucm93LWNvbHMjeyRpbmZpeH0tI3skaX0ge1xuICAgICAgICAgIEBpbmNsdWRlIHJvdy1jb2xzKCRpKTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAuY29sI3skaW5maXh9LWF1dG8ge1xuICAgICAgICBAaW5jbHVkZSBtYWtlLWNvbC1hdXRvKCk7XG4gICAgICB9XG5cbiAgICAgIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggJGNvbHVtbnMge1xuICAgICAgICAuY29sI3skaW5maXh9LSN7JGl9IHtcbiAgICAgICAgICBAaW5jbHVkZSBtYWtlLWNvbCgkaSwgJGNvbHVtbnMpO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIC5vcmRlciN7JGluZml4fS1maXJzdCB7IG9yZGVyOiAtMTsgfVxuXG4gICAgICAub3JkZXIjeyRpbmZpeH0tbGFzdCB7IG9yZGVyOiAkY29sdW1ucyArIDE7IH1cblxuICAgICAgQGZvciAkaSBmcm9tIDAgdGhyb3VnaCAkY29sdW1ucyB7XG4gICAgICAgIC5vcmRlciN7JGluZml4fS0jeyRpfSB7IG9yZGVyOiAkaTsgfVxuICAgICAgfVxuXG4gICAgICAvLyBgJGNvbHVtbnMgLSAxYCBiZWNhdXNlIG9mZnNldHRpbmcgYnkgdGhlIHdpZHRoIG9mIGFuIGVudGlyZSByb3cgaXNuJ3QgcG9zc2libGVcbiAgICAgIEBmb3IgJGkgZnJvbSAwIHRocm91Z2ggKCRjb2x1bW5zIC0gMSkge1xuICAgICAgICBAaWYgbm90ICgkaW5maXggPT0gXCJcIiBhbmQgJGkgPT0gMCkgeyAvLyBBdm9pZCBlbWl0dGluZyB1c2VsZXNzIC5vZmZzZXQtMFxuICAgICAgICAgIC5vZmZzZXQjeyRpbmZpeH0tI3skaX0ge1xuICAgICAgICAgICAgQGluY2x1ZGUgbWFrZS1jb2wtb2Zmc2V0KCRpLCAkY29sdW1ucyk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvL1xuLy8gQmFzaWMgQm9vdHN0cmFwIHRhYmxlXG4vL1xuXG4udGFibGUge1xuICB3aWR0aDogMTAwJTtcbiAgbWFyZ2luLWJvdHRvbTogJHNwYWNlcjtcbiAgY29sb3I6ICR0YWJsZS1jb2xvcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHRhYmxlLWJnOyAvLyBSZXNldCBmb3IgbmVzdGluZyB3aXRoaW4gcGFyZW50cyB3aXRoIGBiYWNrZ3JvdW5kLWNvbG9yYC5cblxuICB0aCxcbiAgdGQge1xuICAgIHBhZGRpbmc6ICR0YWJsZS1jZWxsLXBhZGRpbmc7XG4gICAgdmVydGljYWwtYWxpZ246IHRvcDtcbiAgICBib3JkZXItdG9wOiAkdGFibGUtYm9yZGVyLXdpZHRoIHNvbGlkICR0YWJsZS1ib3JkZXItY29sb3I7XG4gIH1cblxuICB0aGVhZCB0aCB7XG4gICAgdmVydGljYWwtYWxpZ246IGJvdHRvbTtcbiAgICBib3JkZXItYm90dG9tOiAoMiAqICR0YWJsZS1ib3JkZXItd2lkdGgpIHNvbGlkICR0YWJsZS1ib3JkZXItY29sb3I7XG4gIH1cblxuICB0Ym9keSArIHRib2R5IHtcbiAgICBib3JkZXItdG9wOiAoMiAqICR0YWJsZS1ib3JkZXItd2lkdGgpIHNvbGlkICR0YWJsZS1ib3JkZXItY29sb3I7XG4gIH1cbn1cblxuXG4vL1xuLy8gQ29uZGVuc2VkIHRhYmxlIHcvIGhhbGYgcGFkZGluZ1xuLy9cblxuLnRhYmxlLXNtIHtcbiAgdGgsXG4gIHRkIHtcbiAgICBwYWRkaW5nOiAkdGFibGUtY2VsbC1wYWRkaW5nLXNtO1xuICB9XG59XG5cblxuLy8gQm9yZGVyIHZlcnNpb25zXG4vL1xuLy8gQWRkIG9yIHJlbW92ZSBib3JkZXJzIGFsbCBhcm91bmQgdGhlIHRhYmxlIGFuZCBiZXR3ZWVuIGFsbCB0aGUgY29sdW1ucy5cblxuLnRhYmxlLWJvcmRlcmVkIHtcbiAgYm9yZGVyOiAkdGFibGUtYm9yZGVyLXdpZHRoIHNvbGlkICR0YWJsZS1ib3JkZXItY29sb3I7XG5cbiAgdGgsXG4gIHRkIHtcbiAgICBib3JkZXI6ICR0YWJsZS1ib3JkZXItd2lkdGggc29saWQgJHRhYmxlLWJvcmRlci1jb2xvcjtcbiAgfVxuXG4gIHRoZWFkIHtcbiAgICB0aCxcbiAgICB0ZCB7XG4gICAgICBib3JkZXItYm90dG9tLXdpZHRoOiAyICogJHRhYmxlLWJvcmRlci13aWR0aDtcbiAgICB9XG4gIH1cbn1cblxuLnRhYmxlLWJvcmRlcmxlc3Mge1xuICB0aCxcbiAgdGQsXG4gIHRoZWFkIHRoLFxuICB0Ym9keSArIHRib2R5IHtcbiAgICBib3JkZXI6IDA7XG4gIH1cbn1cblxuLy8gWmVicmEtc3RyaXBpbmdcbi8vXG4vLyBEZWZhdWx0IHplYnJhLXN0cmlwZSBzdHlsZXMgKGFsdGVybmF0aW5nIGdyYXkgYW5kIHRyYW5zcGFyZW50IGJhY2tncm91bmRzKVxuXG4udGFibGUtc3RyaXBlZCB7XG4gIHRib2R5IHRyOm50aC1vZi10eXBlKCN7JHRhYmxlLXN0cmlwZWQtb3JkZXJ9KSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHRhYmxlLWFjY2VudC1iZztcbiAgfVxufVxuXG5cbi8vIEhvdmVyIGVmZmVjdFxuLy9cbi8vIFBsYWNlZCBoZXJlIHNpbmNlIGl0IGhhcyB0byBjb21lIGFmdGVyIHRoZSBwb3RlbnRpYWwgemVicmEgc3RyaXBpbmdcblxuLnRhYmxlLWhvdmVyIHtcbiAgdGJvZHkgdHIge1xuICAgIEBpbmNsdWRlIGhvdmVyKCkge1xuICAgICAgY29sb3I6ICR0YWJsZS1ob3Zlci1jb2xvcjtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICR0YWJsZS1ob3Zlci1iZztcbiAgICB9XG4gIH1cbn1cblxuXG4vLyBUYWJsZSBiYWNrZ3JvdW5kc1xuLy9cbi8vIEV4YWN0IHNlbGVjdG9ycyBiZWxvdyByZXF1aXJlZCB0byBvdmVycmlkZSBgLnRhYmxlLXN0cmlwZWRgIGFuZCBwcmV2ZW50XG4vLyBpbmhlcml0YW5jZSB0byBuZXN0ZWQgdGFibGVzLlxuXG5AZWFjaCAkY29sb3IsICR2YWx1ZSBpbiAkdGhlbWUtY29sb3JzIHtcbiAgQGluY2x1ZGUgdGFibGUtcm93LXZhcmlhbnQoJGNvbG9yLCB0aGVtZS1jb2xvci1sZXZlbCgkY29sb3IsICR0YWJsZS1iZy1sZXZlbCksIHRoZW1lLWNvbG9yLWxldmVsKCRjb2xvciwgJHRhYmxlLWJvcmRlci1sZXZlbCkpO1xufVxuXG5AaW5jbHVkZSB0YWJsZS1yb3ctdmFyaWFudChhY3RpdmUsICR0YWJsZS1hY3RpdmUtYmcpO1xuXG5cbi8vIERhcmsgc3R5bGVzXG4vL1xuLy8gU2FtZSB0YWJsZSBtYXJrdXAsIGJ1dCBpbnZlcnRlZCBjb2xvciBzY2hlbWU6IGRhcmsgYmFja2dyb3VuZCBhbmQgbGlnaHQgdGV4dC5cblxuLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIG5vLWR1cGxpY2F0ZS1zZWxlY3RvcnNcbi50YWJsZSB7XG4gIC50aGVhZC1kYXJrIHtcbiAgICB0aCB7XG4gICAgICBjb2xvcjogJHRhYmxlLWRhcmstY29sb3I7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGFibGUtZGFyay1iZztcbiAgICAgIGJvcmRlci1jb2xvcjogJHRhYmxlLWRhcmstYm9yZGVyLWNvbG9yO1xuICAgIH1cbiAgfVxuXG4gIC50aGVhZC1saWdodCB7XG4gICAgdGgge1xuICAgICAgY29sb3I6ICR0YWJsZS1oZWFkLWNvbG9yO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHRhYmxlLWhlYWQtYmc7XG4gICAgICBib3JkZXItY29sb3I6ICR0YWJsZS1ib3JkZXItY29sb3I7XG4gICAgfVxuICB9XG59XG5cbi50YWJsZS1kYXJrIHtcbiAgY29sb3I6ICR0YWJsZS1kYXJrLWNvbG9yO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGFibGUtZGFyay1iZztcblxuICB0aCxcbiAgdGQsXG4gIHRoZWFkIHRoIHtcbiAgICBib3JkZXItY29sb3I6ICR0YWJsZS1kYXJrLWJvcmRlci1jb2xvcjtcbiAgfVxuXG4gICYudGFibGUtYm9yZGVyZWQge1xuICAgIGJvcmRlcjogMDtcbiAgfVxuXG4gICYudGFibGUtc3RyaXBlZCB7XG4gICAgdGJvZHkgdHI6bnRoLW9mLXR5cGUoI3skdGFibGUtc3RyaXBlZC1vcmRlcn0pIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICR0YWJsZS1kYXJrLWFjY2VudC1iZztcbiAgICB9XG4gIH1cblxuICAmLnRhYmxlLWhvdmVyIHtcbiAgICB0Ym9keSB0ciB7XG4gICAgICBAaW5jbHVkZSBob3ZlcigpIHtcbiAgICAgICAgY29sb3I6ICR0YWJsZS1kYXJrLWhvdmVyLWNvbG9yO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGFibGUtZGFyay1ob3Zlci1iZztcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuXG4vLyBSZXNwb25zaXZlIHRhYmxlc1xuLy9cbi8vIEdlbmVyYXRlIHNlcmllcyBvZiBgLnRhYmxlLXJlc3BvbnNpdmUtKmAgY2xhc3NlcyBmb3IgY29uZmlndXJpbmcgdGhlIHNjcmVlblxuLy8gc2l6ZSBvZiB3aGVyZSB5b3VyIHRhYmxlIHdpbGwgb3ZlcmZsb3cuXG5cbi50YWJsZS1yZXNwb25zaXZlIHtcbiAgQGVhY2ggJGJyZWFrcG9pbnQgaW4gbWFwLWtleXMoJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgICAkbmV4dDogYnJlYWtwb2ludC1uZXh0KCRicmVha3BvaW50LCAkZ3JpZC1icmVha3BvaW50cyk7XG4gICAgJGluZml4OiBicmVha3BvaW50LWluZml4KCRuZXh0LCAkZ3JpZC1icmVha3BvaW50cyk7XG5cbiAgICAmI3skaW5maXh9IHtcbiAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bigkYnJlYWtwb2ludCkge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIG92ZXJmbG93LXg6IGF1dG87XG4gICAgICAgIC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDtcblxuICAgICAgICAvLyBQcmV2ZW50IGRvdWJsZSBib3JkZXIgb24gaG9yaXpvbnRhbCBzY3JvbGwgZHVlIHRvIHVzZSBvZiBgZGlzcGxheTogYmxvY2s7YFxuICAgICAgICA+IC50YWJsZS1ib3JkZXJlZCB7XG4gICAgICAgICAgYm9yZGVyOiAwO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvLyBUYWJsZXNcblxuQG1peGluIHRhYmxlLXJvdy12YXJpYW50KCRzdGF0ZSwgJGJhY2tncm91bmQsICRib3JkZXI6IG51bGwpIHtcbiAgLy8gRXhhY3Qgc2VsZWN0b3JzIGJlbG93IHJlcXVpcmVkIHRvIG92ZXJyaWRlIGAudGFibGUtc3RyaXBlZGAgYW5kIHByZXZlbnRcbiAgLy8gaW5oZXJpdGFuY2UgdG8gbmVzdGVkIHRhYmxlcy5cbiAgLnRhYmxlLSN7JHN0YXRlfSB7XG4gICAgJixcbiAgICA+IHRoLFxuICAgID4gdGQge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGJhY2tncm91bmQ7XG4gICAgfVxuXG4gICAgQGlmICRib3JkZXIgIT0gbnVsbCB7XG4gICAgICB0aCxcbiAgICAgIHRkLFxuICAgICAgdGhlYWQgdGgsXG4gICAgICB0Ym9keSArIHRib2R5IHtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAkYm9yZGVyO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vIEhvdmVyIHN0YXRlcyBmb3IgYC50YWJsZS1ob3ZlcmBcbiAgLy8gTm90ZTogdGhpcyBpcyBub3QgYXZhaWxhYmxlIGZvciBjZWxscyBvciByb3dzIHdpdGhpbiBgdGhlYWRgIG9yIGB0Zm9vdGAuXG4gIC50YWJsZS1ob3ZlciB7XG4gICAgJGhvdmVyLWJhY2tncm91bmQ6IGRhcmtlbigkYmFja2dyb3VuZCwgNSUpO1xuXG4gICAgLnRhYmxlLSN7JHN0YXRlfSB7XG4gICAgICBAaW5jbHVkZSBob3ZlcigpIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGhvdmVyLWJhY2tncm91bmQ7XG5cbiAgICAgICAgPiB0ZCxcbiAgICAgICAgPiB0aCB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGhvdmVyLWJhY2tncm91bmQ7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8vIEJvb3RzdHJhcCBmdW5jdGlvbnNcbi8vXG4vLyBVdGlsaXR5IG1peGlucyBhbmQgZnVuY3Rpb25zIGZvciBldmFsdWF0aW5nIHNvdXJjZSBjb2RlIGFjcm9zcyBvdXIgdmFyaWFibGVzLCBtYXBzLCBhbmQgbWl4aW5zLlxuXG4vLyBBc2NlbmRpbmdcbi8vIFVzZWQgdG8gZXZhbHVhdGUgU2FzcyBtYXBzIGxpa2Ugb3VyIGdyaWQgYnJlYWtwb2ludHMuXG5AbWl4aW4gX2Fzc2VydC1hc2NlbmRpbmcoJG1hcCwgJG1hcC1uYW1lKSB7XG4gICRwcmV2LWtleTogbnVsbDtcbiAgJHByZXYtbnVtOiBudWxsO1xuICBAZWFjaCAka2V5LCAkbnVtIGluICRtYXAge1xuICAgIEBpZiAkcHJldi1udW0gPT0gbnVsbCBvciB1bml0KCRudW0pID09IFwiJVwiIG9yIHVuaXQoJHByZXYtbnVtKSA9PSBcIiVcIiB7XG4gICAgICAvLyBEbyBub3RoaW5nXG4gICAgfSBAZWxzZSBpZiBub3QgY29tcGFyYWJsZSgkcHJldi1udW0sICRudW0pIHtcbiAgICAgIEB3YXJuIFwiUG90ZW50aWFsbHkgaW52YWxpZCB2YWx1ZSBmb3IgI3skbWFwLW5hbWV9OiBUaGlzIG1hcCBtdXN0IGJlIGluIGFzY2VuZGluZyBvcmRlciwgYnV0IGtleSAnI3ska2V5fScgaGFzIHZhbHVlICN7JG51bX0gd2hvc2UgdW5pdCBtYWtlcyBpdCBpbmNvbXBhcmFibGUgdG8gI3skcHJldi1udW19LCB0aGUgdmFsdWUgb2YgdGhlIHByZXZpb3VzIGtleSAnI3skcHJldi1rZXl9JyAhXCI7XG4gICAgfSBAZWxzZSBpZiAkcHJldi1udW0gPj0gJG51bSB7XG4gICAgICBAd2FybiBcIkludmFsaWQgdmFsdWUgZm9yICN7JG1hcC1uYW1lfTogVGhpcyBtYXAgbXVzdCBiZSBpbiBhc2NlbmRpbmcgb3JkZXIsIGJ1dCBrZXkgJyN7JGtleX0nIGhhcyB2YWx1ZSAjeyRudW19IHdoaWNoIGlzbid0IGdyZWF0ZXIgdGhhbiAjeyRwcmV2LW51bX0sIHRoZSB2YWx1ZSBvZiB0aGUgcHJldmlvdXMga2V5ICcjeyRwcmV2LWtleX0nICFcIjtcbiAgICB9XG4gICAgJHByZXYta2V5OiAka2V5O1xuICAgICRwcmV2LW51bTogJG51bTtcbiAgfVxufVxuXG4vLyBTdGFydHMgYXQgemVyb1xuLy8gVXNlZCB0byBlbnN1cmUgdGhlIG1pbi13aWR0aCBvZiB0aGUgbG93ZXN0IGJyZWFrcG9pbnQgc3RhcnRzIGF0IDAuXG5AbWl4aW4gX2Fzc2VydC1zdGFydHMtYXQtemVybygkbWFwLCAkbWFwLW5hbWU6IFwiJGdyaWQtYnJlYWtwb2ludHNcIikge1xuICAkdmFsdWVzOiBtYXAtdmFsdWVzKCRtYXApO1xuICAkZmlyc3QtdmFsdWU6IG50aCgkdmFsdWVzLCAxKTtcbiAgQGlmICRmaXJzdC12YWx1ZSAhPSAwIHtcbiAgICBAd2FybiBcIkZpcnN0IGJyZWFrcG9pbnQgaW4gI3skbWFwLW5hbWV9IG11c3Qgc3RhcnQgYXQgMCwgYnV0IHN0YXJ0cyBhdCAjeyRmaXJzdC12YWx1ZX0uXCI7XG4gIH1cbn1cblxuLy8gUmVwbGFjZSBgJHNlYXJjaGAgd2l0aCBgJHJlcGxhY2VgIGluIGAkc3RyaW5nYFxuLy8gVXNlZCBvbiBvdXIgU1ZHIGljb24gYmFja2dyb3VuZHMgZm9yIGN1c3RvbSBmb3Jtcy5cbi8vXG4vLyBAYXV0aG9yIEh1Z28gR2lyYXVkZWxcbi8vIEBwYXJhbSB7U3RyaW5nfSAkc3RyaW5nIC0gSW5pdGlhbCBzdHJpbmdcbi8vIEBwYXJhbSB7U3RyaW5nfSAkc2VhcmNoIC0gU3Vic3RyaW5nIHRvIHJlcGxhY2Vcbi8vIEBwYXJhbSB7U3RyaW5nfSAkcmVwbGFjZSAoJycpIC0gTmV3IHZhbHVlXG4vLyBAcmV0dXJuIHtTdHJpbmd9IC0gVXBkYXRlZCBzdHJpbmdcbkBmdW5jdGlvbiBzdHItcmVwbGFjZSgkc3RyaW5nLCAkc2VhcmNoLCAkcmVwbGFjZTogXCJcIikge1xuICAkaW5kZXg6IHN0ci1pbmRleCgkc3RyaW5nLCAkc2VhcmNoKTtcblxuICBAaWYgJGluZGV4IHtcbiAgICBAcmV0dXJuIHN0ci1zbGljZSgkc3RyaW5nLCAxLCAkaW5kZXggLSAxKSArICRyZXBsYWNlICsgc3RyLXJlcGxhY2Uoc3RyLXNsaWNlKCRzdHJpbmcsICRpbmRleCArIHN0ci1sZW5ndGgoJHNlYXJjaCkpLCAkc2VhcmNoLCAkcmVwbGFjZSk7XG4gIH1cblxuICBAcmV0dXJuICRzdHJpbmc7XG59XG5cbi8vIFNlZSBodHRwczovL2NvZGVwZW4uaW8va2V2aW53ZWJlci9wZW4vZFhXb1J3XG5AZnVuY3Rpb24gZXNjYXBlLXN2Zygkc3RyaW5nKSB7XG4gIEBpZiBzdHItaW5kZXgoJHN0cmluZywgXCJkYXRhOmltYWdlL3N2Zyt4bWxcIikge1xuICAgIEBlYWNoICRjaGFyLCAkZW5jb2RlZCBpbiAkZXNjYXBlZC1jaGFyYWN0ZXJzIHtcbiAgICAgICRzdHJpbmc6IHN0ci1yZXBsYWNlKCRzdHJpbmcsICRjaGFyLCAkZW5jb2RlZCk7XG4gICAgfVxuICB9XG5cbiAgQHJldHVybiAkc3RyaW5nO1xufVxuXG4vLyBDb2xvciBjb250cmFzdFxuQGZ1bmN0aW9uIGNvbG9yLXlpcSgkY29sb3IsICRkYXJrOiAkeWlxLXRleHQtZGFyaywgJGxpZ2h0OiAkeWlxLXRleHQtbGlnaHQpIHtcbiAgJHI6IHJlZCgkY29sb3IpO1xuICAkZzogZ3JlZW4oJGNvbG9yKTtcbiAgJGI6IGJsdWUoJGNvbG9yKTtcblxuICAkeWlxOiAoKCRyICogMjk5KSArICgkZyAqIDU4NykgKyAoJGIgKiAxMTQpKSAvIDEwMDA7XG5cbiAgQGlmICgkeWlxID49ICR5aXEtY29udHJhc3RlZC10aHJlc2hvbGQpIHtcbiAgICBAcmV0dXJuICRkYXJrO1xuICB9IEBlbHNlIHtcbiAgICBAcmV0dXJuICRsaWdodDtcbiAgfVxufVxuXG4vLyBSZXRyaWV2ZSBjb2xvciBTYXNzIG1hcHNcbkBmdW5jdGlvbiBjb2xvcigka2V5OiBcImJsdWVcIikge1xuICBAcmV0dXJuIG1hcC1nZXQoJGNvbG9ycywgJGtleSk7XG59XG5cbkBmdW5jdGlvbiB0aGVtZS1jb2xvcigka2V5OiBcInByaW1hcnlcIikge1xuICBAcmV0dXJuIG1hcC1nZXQoJHRoZW1lLWNvbG9ycywgJGtleSk7XG59XG5cbkBmdW5jdGlvbiBncmF5KCRrZXk6IFwiMTAwXCIpIHtcbiAgQHJldHVybiBtYXAtZ2V0KCRncmF5cywgJGtleSk7XG59XG5cbi8vIFJlcXVlc3QgYSB0aGVtZSBjb2xvciBsZXZlbFxuQGZ1bmN0aW9uIHRoZW1lLWNvbG9yLWxldmVsKCRjb2xvci1uYW1lOiBcInByaW1hcnlcIiwgJGxldmVsOiAwKSB7XG4gICRjb2xvcjogdGhlbWUtY29sb3IoJGNvbG9yLW5hbWUpO1xuICAkY29sb3ItYmFzZTogaWYoJGxldmVsID4gMCwgJGJsYWNrLCAkd2hpdGUpO1xuICAkbGV2ZWw6IGFicygkbGV2ZWwpO1xuXG4gIEByZXR1cm4gbWl4KCRjb2xvci1iYXNlLCAkY29sb3IsICRsZXZlbCAqICR0aGVtZS1jb2xvci1pbnRlcnZhbCk7XG59XG5cbi8vIFJldHVybiB2YWxpZCBjYWxjXG5AZnVuY3Rpb24gYWRkKCR2YWx1ZTEsICR2YWx1ZTIsICRyZXR1cm4tY2FsYzogdHJ1ZSkge1xuICBAaWYgJHZhbHVlMSA9PSBudWxsIHtcbiAgICBAcmV0dXJuICR2YWx1ZTI7XG4gIH1cblxuICBAaWYgJHZhbHVlMiA9PSBudWxsIHtcbiAgICBAcmV0dXJuICR2YWx1ZTE7XG4gIH1cblxuICBAaWYgdHlwZS1vZigkdmFsdWUxKSA9PSBudW1iZXIgYW5kIHR5cGUtb2YoJHZhbHVlMikgPT0gbnVtYmVyIGFuZCBjb21wYXJhYmxlKCR2YWx1ZTEsICR2YWx1ZTIpIHtcbiAgICBAcmV0dXJuICR2YWx1ZTEgKyAkdmFsdWUyO1xuICB9XG5cbiAgQHJldHVybiBpZigkcmV0dXJuLWNhbGMgPT0gdHJ1ZSwgY2FsYygjeyR2YWx1ZTF9ICsgI3skdmFsdWUyfSksICR2YWx1ZTEgKyB1bnF1b3RlKFwiICsgXCIpICsgJHZhbHVlMik7XG59XG5cbkBmdW5jdGlvbiBzdWJ0cmFjdCgkdmFsdWUxLCAkdmFsdWUyLCAkcmV0dXJuLWNhbGM6IHRydWUpIHtcbiAgQGlmICR2YWx1ZTEgPT0gbnVsbCBhbmQgJHZhbHVlMiA9PSBudWxsIHtcbiAgICBAcmV0dXJuIG51bGw7XG4gIH1cblxuICBAaWYgJHZhbHVlMSA9PSBudWxsIHtcbiAgICBAcmV0dXJuIC0kdmFsdWUyO1xuICB9XG5cbiAgQGlmICR2YWx1ZTIgPT0gbnVsbCB7XG4gICAgQHJldHVybiAkdmFsdWUxO1xuICB9XG5cbiAgQGlmIHR5cGUtb2YoJHZhbHVlMSkgPT0gbnVtYmVyIGFuZCB0eXBlLW9mKCR2YWx1ZTIpID09IG51bWJlciBhbmQgY29tcGFyYWJsZSgkdmFsdWUxLCAkdmFsdWUyKSB7XG4gICAgQHJldHVybiAkdmFsdWUxIC0gJHZhbHVlMjtcbiAgfVxuXG4gIEByZXR1cm4gaWYoJHJldHVybi1jYWxjID09IHRydWUsIGNhbGMoI3skdmFsdWUxfSAtICN7JHZhbHVlMn0pLCAkdmFsdWUxICsgdW5xdW90ZShcIiAtIFwiKSArICR2YWx1ZTIpO1xufVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgc2VsZWN0b3Itbm8tcXVhbGlmeWluZy10eXBlXG5cbi8vXG4vLyBUZXh0dWFsIGZvcm0gY29udHJvbHNcbi8vXG5cbi5mb3JtLWNvbnRyb2wge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogJGlucHV0LWhlaWdodDtcbiAgcGFkZGluZzogJGlucHV0LXBhZGRpbmcteSAkaW5wdXQtcGFkZGluZy14O1xuICBmb250LWZhbWlseTogJGlucHV0LWZvbnQtZmFtaWx5O1xuICBAaW5jbHVkZSBmb250LXNpemUoJGlucHV0LWZvbnQtc2l6ZSk7XG4gIGZvbnQtd2VpZ2h0OiAkaW5wdXQtZm9udC13ZWlnaHQ7XG4gIGxpbmUtaGVpZ2h0OiAkaW5wdXQtbGluZS1oZWlnaHQ7XG4gIGNvbG9yOiAkaW5wdXQtY29sb3I7XG4gIGJhY2tncm91bmQtY29sb3I6ICRpbnB1dC1iZztcbiAgYmFja2dyb3VuZC1jbGlwOiBwYWRkaW5nLWJveDtcbiAgYm9yZGVyOiAkaW5wdXQtYm9yZGVyLXdpZHRoIHNvbGlkICRpbnB1dC1ib3JkZXItY29sb3I7XG5cbiAgLy8gTm90ZTogVGhpcyBoYXMgbm8gZWZmZWN0IG9uIDxzZWxlY3Q+cyBpbiBzb21lIGJyb3dzZXJzLCBkdWUgdG8gdGhlIGxpbWl0ZWQgc3R5bGFiaWxpdHkgb2YgYDxzZWxlY3Q+YHMgaW4gQ1NTLlxuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRpbnB1dC1ib3JkZXItcmFkaXVzLCAwKTtcblxuICBAaW5jbHVkZSBib3gtc2hhZG93KCRpbnB1dC1ib3gtc2hhZG93KTtcbiAgQGluY2x1ZGUgdHJhbnNpdGlvbigkaW5wdXQtdHJhbnNpdGlvbik7XG5cbiAgLy8gVW5zdHlsZSB0aGUgY2FyZXQgb24gYDxzZWxlY3Q+YHMgaW4gSUUxMCsuXG4gICY6Oi1tcy1leHBhbmQge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGJvcmRlcjogMDtcbiAgfVxuXG4gIC8vIFJlbW92ZSBzZWxlY3Qgb3V0bGluZSBmcm9tIHNlbGVjdCBib3ggaW4gRkZcbiAgJjotbW96LWZvY3VzcmluZyB7XG4gICAgY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIHRleHQtc2hhZG93OiAwIDAgMCAkaW5wdXQtY29sb3I7XG4gIH1cblxuICAvLyBDdXN0b21pemUgdGhlIGA6Zm9jdXNgIHN0YXRlIHRvIGltaXRhdGUgbmF0aXZlIFdlYktpdCBzdHlsZXMuXG4gIEBpbmNsdWRlIGZvcm0tY29udHJvbC1mb2N1cygkaWdub3JlLXdhcm5pbmc6IHRydWUpO1xuXG4gIC8vIFBsYWNlaG9sZGVyXG4gICY6OnBsYWNlaG9sZGVyIHtcbiAgICBjb2xvcjogJGlucHV0LXBsYWNlaG9sZGVyLWNvbG9yO1xuICAgIC8vIE92ZXJyaWRlIEZpcmVmb3gncyB1bnVzdWFsIGRlZmF1bHQgb3BhY2l0eTsgc2VlIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9wdWxsLzExNTI2LlxuICAgIG9wYWNpdHk6IDE7XG4gIH1cblxuICAvLyBEaXNhYmxlZCBhbmQgcmVhZC1vbmx5IGlucHV0c1xuICAvL1xuICAvLyBIVE1MNSBzYXlzIHRoYXQgY29udHJvbHMgdW5kZXIgYSBmaWVsZHNldCA+IGxlZ2VuZDpmaXJzdC1jaGlsZCB3b24ndCBiZVxuICAvLyBkaXNhYmxlZCBpZiB0aGUgZmllbGRzZXQgaXMgZGlzYWJsZWQuIER1ZSB0byBpbXBsZW1lbnRhdGlvbiBkaWZmaWN1bHR5LCB3ZVxuICAvLyBkb24ndCBob25vciB0aGF0IGVkZ2UgY2FzZTsgd2Ugc3R5bGUgdGhlbSBhcyBkaXNhYmxlZCBhbnl3YXkuXG4gICY6ZGlzYWJsZWQsXG4gICZbcmVhZG9ubHldIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaW5wdXQtZGlzYWJsZWQtYmc7XG4gICAgLy8gaU9TIGZpeCBmb3IgdW5yZWFkYWJsZSBkaXNhYmxlZCBjb250ZW50OyBzZWUgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8xMTY1NS5cbiAgICBvcGFjaXR5OiAxO1xuICB9XG59XG5cbnNlbGVjdC5mb3JtLWNvbnRyb2wge1xuICAmOmZvY3VzOjotbXMtdmFsdWUge1xuICAgIC8vIFN1cHByZXNzIHRoZSBuZXN0ZWQgZGVmYXVsdCB3aGl0ZSB0ZXh0IG9uIGJsdWUgYmFja2dyb3VuZCBoaWdobGlnaHQgZ2l2ZW4gdG9cbiAgICAvLyB0aGUgc2VsZWN0ZWQgb3B0aW9uIHRleHQgd2hlbiB0aGUgKHN0aWxsIGNsb3NlZCkgPHNlbGVjdD4gcmVjZWl2ZXMgZm9jdXNcbiAgICAvLyBpbiBJRSBhbmQgKHVuZGVyIGNlcnRhaW4gY29uZGl0aW9ucykgRWRnZSwgYXMgaXQgbG9va3MgYmFkIGFuZCBjYW5ub3QgYmUgbWFkZSB0b1xuICAgIC8vIG1hdGNoIHRoZSBhcHBlYXJhbmNlIG9mIHRoZSBuYXRpdmUgd2lkZ2V0LlxuICAgIC8vIFNlZSBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzE5Mzk4LlxuICAgIGNvbG9yOiAkaW5wdXQtY29sb3I7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGlucHV0LWJnO1xuICB9XG59XG5cbi8vIE1ha2UgZmlsZSBpbnB1dHMgYmV0dGVyIG1hdGNoIHRleHQgaW5wdXRzIGJ5IGZvcmNpbmcgdGhlbSB0byBuZXcgbGluZXMuXG4uZm9ybS1jb250cm9sLWZpbGUsXG4uZm9ybS1jb250cm9sLXJhbmdlIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG5cbi8vXG4vLyBMYWJlbHNcbi8vXG5cbi8vIEZvciB1c2Ugd2l0aCBob3Jpem9udGFsIGFuZCBpbmxpbmUgZm9ybXMsIHdoZW4geW91IG5lZWQgdGhlIGxhYmVsIChvciBsZWdlbmQpXG4vLyB0ZXh0IHRvIGFsaWduIHdpdGggdGhlIGZvcm0gY29udHJvbHMuXG4uY29sLWZvcm0tbGFiZWwge1xuICBwYWRkaW5nLXRvcDogYWRkKCRpbnB1dC1wYWRkaW5nLXksICRpbnB1dC1ib3JkZXItd2lkdGgpO1xuICBwYWRkaW5nLWJvdHRvbTogYWRkKCRpbnB1dC1wYWRkaW5nLXksICRpbnB1dC1ib3JkZXItd2lkdGgpO1xuICBtYXJnaW4tYm90dG9tOiAwOyAvLyBPdmVycmlkZSB0aGUgYDxsYWJlbD4vPGxlZ2VuZD5gIGRlZmF1bHRcbiAgQGluY2x1ZGUgZm9udC1zaXplKGluaGVyaXQpOyAvLyBPdmVycmlkZSB0aGUgYDxsZWdlbmQ+YCBkZWZhdWx0XG4gIGxpbmUtaGVpZ2h0OiAkaW5wdXQtbGluZS1oZWlnaHQ7XG59XG5cbi5jb2wtZm9ybS1sYWJlbC1sZyB7XG4gIHBhZGRpbmctdG9wOiBhZGQoJGlucHV0LXBhZGRpbmcteS1sZywgJGlucHV0LWJvcmRlci13aWR0aCk7XG4gIHBhZGRpbmctYm90dG9tOiBhZGQoJGlucHV0LXBhZGRpbmcteS1sZywgJGlucHV0LWJvcmRlci13aWR0aCk7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkaW5wdXQtZm9udC1zaXplLWxnKTtcbiAgbGluZS1oZWlnaHQ6ICRpbnB1dC1saW5lLWhlaWdodC1sZztcbn1cblxuLmNvbC1mb3JtLWxhYmVsLXNtIHtcbiAgcGFkZGluZy10b3A6IGFkZCgkaW5wdXQtcGFkZGluZy15LXNtLCAkaW5wdXQtYm9yZGVyLXdpZHRoKTtcbiAgcGFkZGluZy1ib3R0b206IGFkZCgkaW5wdXQtcGFkZGluZy15LXNtLCAkaW5wdXQtYm9yZGVyLXdpZHRoKTtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRpbnB1dC1mb250LXNpemUtc20pO1xuICBsaW5lLWhlaWdodDogJGlucHV0LWxpbmUtaGVpZ2h0LXNtO1xufVxuXG5cbi8vIFJlYWRvbmx5IGNvbnRyb2xzIGFzIHBsYWluIHRleHRcbi8vXG4vLyBBcHBseSBjbGFzcyB0byBhIHJlYWRvbmx5IGlucHV0IHRvIG1ha2UgaXQgYXBwZWFyIGxpa2UgcmVndWxhciBwbGFpblxuLy8gdGV4dCAod2l0aG91dCBhbnkgYm9yZGVyLCBiYWNrZ3JvdW5kIGNvbG9yLCBmb2N1cyBpbmRpY2F0b3IpXG5cbi5mb3JtLWNvbnRyb2wtcGxhaW50ZXh0IHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xuICBwYWRkaW5nOiAkaW5wdXQtcGFkZGluZy15IDA7XG4gIG1hcmdpbi1ib3R0b206IDA7IC8vIG1hdGNoIGlucHV0cyBpZiB0aGlzIGNsYXNzIGNvbWVzIG9uIGlucHV0cyB3aXRoIGRlZmF1bHQgbWFyZ2luc1xuICBAaW5jbHVkZSBmb250LXNpemUoJGlucHV0LWZvbnQtc2l6ZSk7XG4gIGxpbmUtaGVpZ2h0OiAkaW5wdXQtbGluZS1oZWlnaHQ7XG4gIGNvbG9yOiAkaW5wdXQtcGxhaW50ZXh0LWNvbG9yO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgYm9yZGVyOiBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLXdpZHRoOiAkaW5wdXQtYm9yZGVyLXdpZHRoIDA7XG5cbiAgJi5mb3JtLWNvbnRyb2wtc20sXG4gICYuZm9ybS1jb250cm9sLWxnIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgIHBhZGRpbmctbGVmdDogMDtcbiAgfVxufVxuXG5cbi8vIEZvcm0gY29udHJvbCBzaXppbmdcbi8vXG4vLyBCdWlsZCBvbiBgLmZvcm0tY29udHJvbGAgd2l0aCBtb2RpZmllciBjbGFzc2VzIHRvIGRlY3JlYXNlIG9yIGluY3JlYXNlIHRoZVxuLy8gaGVpZ2h0IGFuZCBmb250LXNpemUgb2YgZm9ybSBjb250cm9scy5cbi8vXG4vLyBSZXBlYXRlZCBpbiBgX2lucHV0X2dyb3VwLnNjc3NgIHRvIGF2b2lkIFNhc3MgZXh0ZW5kIGlzc3Vlcy5cblxuLmZvcm0tY29udHJvbC1zbSB7XG4gIGhlaWdodDogJGlucHV0LWhlaWdodC1zbTtcbiAgcGFkZGluZzogJGlucHV0LXBhZGRpbmcteS1zbSAkaW5wdXQtcGFkZGluZy14LXNtO1xuICBAaW5jbHVkZSBmb250LXNpemUoJGlucHV0LWZvbnQtc2l6ZS1zbSk7XG4gIGxpbmUtaGVpZ2h0OiAkaW5wdXQtbGluZS1oZWlnaHQtc207XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGlucHV0LWJvcmRlci1yYWRpdXMtc20pO1xufVxuXG4uZm9ybS1jb250cm9sLWxnIHtcbiAgaGVpZ2h0OiAkaW5wdXQtaGVpZ2h0LWxnO1xuICBwYWRkaW5nOiAkaW5wdXQtcGFkZGluZy15LWxnICRpbnB1dC1wYWRkaW5nLXgtbGc7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkaW5wdXQtZm9udC1zaXplLWxnKTtcbiAgbGluZS1oZWlnaHQ6ICRpbnB1dC1saW5lLWhlaWdodC1sZztcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkaW5wdXQtYm9yZGVyLXJhZGl1cy1sZyk7XG59XG5cbi8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBuby1kdXBsaWNhdGUtc2VsZWN0b3JzXG5zZWxlY3QuZm9ybS1jb250cm9sIHtcbiAgJltzaXplXSxcbiAgJlttdWx0aXBsZV0ge1xuICAgIGhlaWdodDogYXV0bztcbiAgfVxufVxuXG50ZXh0YXJlYS5mb3JtLWNvbnRyb2wge1xuICBoZWlnaHQ6IGF1dG87XG59XG5cbi8vIEZvcm0gZ3JvdXBzXG4vL1xuLy8gRGVzaWduZWQgdG8gaGVscCB3aXRoIHRoZSBvcmdhbml6YXRpb24gYW5kIHNwYWNpbmcgb2YgdmVydGljYWwgZm9ybXMuIEZvclxuLy8gaG9yaXpvbnRhbCBmb3JtcywgdXNlIHRoZSBwcmVkZWZpbmVkIGdyaWQgY2xhc3Nlcy5cblxuLmZvcm0tZ3JvdXAge1xuICBtYXJnaW4tYm90dG9tOiAkZm9ybS1ncm91cC1tYXJnaW4tYm90dG9tO1xufVxuXG4uZm9ybS10ZXh0IHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbi10b3A6ICRmb3JtLXRleHQtbWFyZ2luLXRvcDtcbn1cblxuXG4vLyBGb3JtIGdyaWRcbi8vXG4vLyBTcGVjaWFsIHJlcGxhY2VtZW50IGZvciBvdXIgZ3JpZCBzeXN0ZW0ncyBgLnJvd2AgZm9yIHRpZ2h0ZXIgZm9ybSBsYXlvdXRzLlxuXG4uZm9ybS1yb3cge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIG1hcmdpbi1yaWdodDogLSRmb3JtLWdyaWQtZ3V0dGVyLXdpZHRoIC8gMjtcbiAgbWFyZ2luLWxlZnQ6IC0kZm9ybS1ncmlkLWd1dHRlci13aWR0aCAvIDI7XG5cbiAgPiAuY29sLFxuICA+IFtjbGFzcyo9XCJjb2wtXCJdIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAkZm9ybS1ncmlkLWd1dHRlci13aWR0aCAvIDI7XG4gICAgcGFkZGluZy1sZWZ0OiAkZm9ybS1ncmlkLWd1dHRlci13aWR0aCAvIDI7XG4gIH1cbn1cblxuXG4vLyBDaGVja2JveGVzIGFuZCByYWRpb3Ncbi8vXG4vLyBJbmRlbnQgdGhlIGxhYmVscyB0byBwb3NpdGlvbiByYWRpb3MvY2hlY2tib3hlcyBhcyBoYW5naW5nIGNvbnRyb2xzLlxuXG4uZm9ybS1jaGVjayB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBhZGRpbmctbGVmdDogJGZvcm0tY2hlY2staW5wdXQtZ3V0dGVyO1xufVxuXG4uZm9ybS1jaGVjay1pbnB1dCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbWFyZ2luLXRvcDogJGZvcm0tY2hlY2staW5wdXQtbWFyZ2luLXk7XG4gIG1hcmdpbi1sZWZ0OiAtJGZvcm0tY2hlY2staW5wdXQtZ3V0dGVyO1xuXG4gIC8vIFVzZSBbZGlzYWJsZWRdIGFuZCA6ZGlzYWJsZWQgZm9yIHdvcmthcm91bmQgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8yODI0N1xuICAmW2Rpc2FibGVkXSB+IC5mb3JtLWNoZWNrLWxhYmVsLFxuICAmOmRpc2FibGVkIH4gLmZvcm0tY2hlY2stbGFiZWwge1xuICAgIGNvbG9yOiAkdGV4dC1tdXRlZDtcbiAgfVxufVxuXG4uZm9ybS1jaGVjay1sYWJlbCB7XG4gIG1hcmdpbi1ib3R0b206IDA7IC8vIE92ZXJyaWRlIGRlZmF1bHQgYDxsYWJlbD5gIGJvdHRvbSBtYXJnaW5cbn1cblxuLmZvcm0tY2hlY2staW5saW5lIHtcbiAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIHBhZGRpbmctbGVmdDogMDsgLy8gT3ZlcnJpZGUgYmFzZSAuZm9ybS1jaGVja1xuICBtYXJnaW4tcmlnaHQ6ICRmb3JtLWNoZWNrLWlubGluZS1tYXJnaW4teDtcblxuICAvLyBVbmRvIC5mb3JtLWNoZWNrLWlucHV0IGRlZmF1bHRzIGFuZCBhZGQgc29tZSBgbWFyZ2luLXJpZ2h0YC5cbiAgLmZvcm0tY2hlY2staW5wdXQge1xuICAgIHBvc2l0aW9uOiBzdGF0aWM7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgICBtYXJnaW4tcmlnaHQ6ICRmb3JtLWNoZWNrLWlubGluZS1pbnB1dC1tYXJnaW4teDtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgfVxufVxuXG5cbi8vIEZvcm0gdmFsaWRhdGlvblxuLy9cbi8vIFByb3ZpZGUgZmVlZGJhY2sgdG8gdXNlcnMgd2hlbiBmb3JtIGZpZWxkIHZhbHVlcyBhcmUgdmFsaWQgb3IgaW52YWxpZC4gV29ya3Ncbi8vIHByaW1hcmlseSBmb3IgY2xpZW50LXNpZGUgdmFsaWRhdGlvbiB2aWEgc2NvcGVkIGA6aW52YWxpZGAgYW5kIGA6dmFsaWRgXG4vLyBwc2V1ZG8tY2xhc3NlcyBidXQgYWxzbyBpbmNsdWRlcyBgLmlzLWludmFsaWRgIGFuZCBgLmlzLXZhbGlkYCBjbGFzc2VzIGZvclxuLy8gc2VydmVyIHNpZGUgdmFsaWRhdGlvbi5cblxuQGVhY2ggJHN0YXRlLCAkZGF0YSBpbiAkZm9ybS12YWxpZGF0aW9uLXN0YXRlcyB7XG4gIEBpbmNsdWRlIGZvcm0tdmFsaWRhdGlvbi1zdGF0ZSgkc3RhdGUsIG1hcC1nZXQoJGRhdGEsIGNvbG9yKSwgbWFwLWdldCgkZGF0YSwgaWNvbikpO1xufVxuXG4vLyBJbmxpbmUgZm9ybXNcbi8vXG4vLyBNYWtlIGZvcm1zIGFwcGVhciBpbmxpbmUoLWJsb2NrKSBieSBhZGRpbmcgdGhlIGAuZm9ybS1pbmxpbmVgIGNsYXNzLiBJbmxpbmVcbi8vIGZvcm1zIGJlZ2luIHN0YWNrZWQgb24gZXh0cmEgc21hbGwgKG1vYmlsZSkgZGV2aWNlcyBhbmQgdGhlbiBnbyBpbmxpbmUgd2hlblxuLy8gdmlld3BvcnRzIHJlYWNoIDw3NjhweC5cbi8vXG4vLyBSZXF1aXJlcyB3cmFwcGluZyBpbnB1dHMgYW5kIGxhYmVscyB3aXRoIGAuZm9ybS1ncm91cGAgZm9yIHByb3BlciBkaXNwbGF5IG9mXG4vLyBkZWZhdWx0IEhUTUwgZm9ybSBjb250cm9scyBhbmQgb3VyIGN1c3RvbSBmb3JtIGNvbnRyb2xzIChlLmcuLCBpbnB1dCBncm91cHMpLlxuXG4uZm9ybS1pbmxpbmUge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWZsb3c6IHJvdyB3cmFwO1xuICBhbGlnbi1pdGVtczogY2VudGVyOyAvLyBQcmV2ZW50IHNob3J0ZXIgZWxlbWVudHMgZnJvbSBncm93aW5nIHRvIHNhbWUgaGVpZ2h0IGFzIG90aGVycyAoZS5nLiwgc21hbGwgYnV0dG9ucyBncm93aW5nIHRvIG5vcm1hbCBzaXplZCBidXR0b24gaGVpZ2h0KVxuXG4gIC8vIEJlY2F1c2Ugd2UgdXNlIGZsZXgsIHRoZSBpbml0aWFsIHNpemluZyBvZiBjaGVja2JveGVzIGlzIGNvbGxhcHNlZCBhbmRcbiAgLy8gZG9lc24ndCBvY2N1cHkgdGhlIGZ1bGwtd2lkdGggKHdoaWNoIGlzIHdoYXQgd2Ugd2FudCBmb3IgeHMgZ3JpZCB0aWVyKSxcbiAgLy8gc28gd2UgZm9yY2UgdGhhdCBoZXJlLlxuICAuZm9ybS1jaGVjayB7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cblxuICAvLyBLaWNrIGluIHRoZSBpbmxpbmVcbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChzbSkge1xuICAgIGxhYmVsIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIH1cblxuICAgIC8vIElubGluZS1ibG9jayBhbGwgdGhlIHRoaW5ncyBmb3IgXCJpbmxpbmVcIlxuICAgIC5mb3JtLWdyb3VwIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBmbGV4OiAwIDAgYXV0bztcbiAgICAgIGZsZXgtZmxvdzogcm93IHdyYXA7XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICB9XG5cbiAgICAvLyBBbGxvdyBmb2xrcyB0byAqbm90KiB1c2UgYC5mb3JtLWdyb3VwYFxuICAgIC5mb3JtLWNvbnRyb2wge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgd2lkdGg6IGF1dG87IC8vIFByZXZlbnQgbGFiZWxzIGZyb20gc3RhY2tpbmcgYWJvdmUgaW5wdXRzIGluIGAuZm9ybS1ncm91cGBcbiAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgfVxuXG4gICAgLy8gTWFrZSBzdGF0aWMgY29udHJvbHMgYmVoYXZlIGxpa2UgcmVndWxhciBvbmVzXG4gICAgLmZvcm0tY29udHJvbC1wbGFpbnRleHQge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIH1cblxuICAgIC5pbnB1dC1ncm91cCxcbiAgICAuY3VzdG9tLXNlbGVjdCB7XG4gICAgICB3aWR0aDogYXV0bztcbiAgICB9XG5cbiAgICAvLyBSZW1vdmUgZGVmYXVsdCBtYXJnaW4gb24gcmFkaW9zL2NoZWNrYm94ZXMgdGhhdCB3ZXJlIHVzZWQgZm9yIHN0YWNraW5nLCBhbmRcbiAgICAvLyB0aGVuIHVuZG8gdGhlIGZsb2F0aW5nIG9mIHJhZGlvcyBhbmQgY2hlY2tib3hlcyB0byBtYXRjaC5cbiAgICAuZm9ybS1jaGVjayB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgd2lkdGg6IGF1dG87XG4gICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgfVxuICAgIC5mb3JtLWNoZWNrLWlucHV0IHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIGZsZXgtc2hyaW5rOiAwO1xuICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgIG1hcmdpbi1yaWdodDogJGZvcm0tY2hlY2staW5wdXQtbWFyZ2luLXg7XG4gICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICB9XG5cbiAgICAuY3VzdG9tLWNvbnRyb2wge1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIH1cbiAgICAuY3VzdG9tLWNvbnRyb2wtbGFiZWwge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICB9XG4gIH1cbn1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIHByb3BlcnR5LWJsYWNrbGlzdFxuQG1peGluIHRyYW5zaXRpb24oJHRyYW5zaXRpb24uLi4pIHtcbiAgQGlmICRlbmFibGUtdHJhbnNpdGlvbnMge1xuICAgIEBpZiBsZW5ndGgoJHRyYW5zaXRpb24pID09IDAge1xuICAgICAgdHJhbnNpdGlvbjogJHRyYW5zaXRpb24tYmFzZTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIHRyYW5zaXRpb246ICR0cmFuc2l0aW9uO1xuICAgIH1cbiAgfVxuXG4gIEBpZiAkZW5hYmxlLXByZWZlcnMtcmVkdWNlZC1tb3Rpb24tbWVkaWEtcXVlcnkge1xuICAgIEBtZWRpYSAocHJlZmVycy1yZWR1Y2VkLW1vdGlvbjogcmVkdWNlKSB7XG4gICAgICB0cmFuc2l0aW9uOiBub25lO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gRm9ybSBjb250cm9sIGZvY3VzIHN0YXRlXG4vL1xuLy8gR2VuZXJhdGUgYSBjdXN0b21pemVkIGZvY3VzIHN0YXRlIGFuZCBmb3IgYW55IGlucHV0IHdpdGggdGhlIHNwZWNpZmllZCBjb2xvcixcbi8vIHdoaWNoIGRlZmF1bHRzIHRvIHRoZSBgJGlucHV0LWZvY3VzLWJvcmRlci1jb2xvcmAgdmFyaWFibGUuXG4vL1xuLy8gV2UgaGlnaGx5IGVuY291cmFnZSB5b3UgdG8gbm90IGN1c3RvbWl6ZSB0aGUgZGVmYXVsdCB2YWx1ZSwgYnV0IGluc3RlYWQgdXNlXG4vLyB0aGlzIHRvIHR3ZWFrIGNvbG9ycyBvbiBhbiBhcy1uZWVkZWQgYmFzaXMuIFRoaXMgYWVzdGhldGljIGNoYW5nZSBpcyBiYXNlZCBvblxuLy8gV2ViS2l0J3MgZGVmYXVsdCBzdHlsZXMsIGJ1dCBhcHBsaWNhYmxlIHRvIGEgd2lkZXIgcmFuZ2Ugb2YgYnJvd3NlcnMuIEl0c1xuLy8gdXNhYmlsaXR5IGFuZCBhY2Nlc3NpYmlsaXR5IHNob3VsZCBiZSB0YWtlbiBpbnRvIGFjY291bnQgd2l0aCBhbnkgY2hhbmdlLlxuLy9cbi8vIEV4YW1wbGUgdXNhZ2U6IGNoYW5nZSB0aGUgZGVmYXVsdCBibHVlIGJvcmRlciBhbmQgc2hhZG93IHRvIHdoaXRlIGZvciBiZXR0ZXJcbi8vIGNvbnRyYXN0IGFnYWluc3QgYSBkYXJrIGdyYXkgYmFja2dyb3VuZC5cbkBtaXhpbiBmb3JtLWNvbnRyb2wtZm9jdXMoJGlnbm9yZS13YXJuaW5nOiBmYWxzZSkge1xuICAmOmZvY3VzIHtcbiAgICBjb2xvcjogJGlucHV0LWZvY3VzLWNvbG9yO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRpbnB1dC1mb2N1cy1iZztcbiAgICBib3JkZXItY29sb3I6ICRpbnB1dC1mb2N1cy1ib3JkZXItY29sb3I7XG4gICAgb3V0bGluZTogMDtcbiAgICAvLyBBdm9pZCB1c2luZyBtaXhpbiBzbyB3ZSBjYW4gcGFzcyBjdXN0b20gZm9jdXMgc2hhZG93IHByb3Blcmx5XG4gICAgQGlmICRlbmFibGUtc2hhZG93cyB7XG4gICAgICBib3gtc2hhZG93OiAkaW5wdXQtYm94LXNoYWRvdywgJGlucHV0LWZvY3VzLWJveC1zaGFkb3c7XG4gICAgfSBAZWxzZSB7XG4gICAgICBib3gtc2hhZG93OiAkaW5wdXQtZm9jdXMtYm94LXNoYWRvdztcbiAgICB9XG4gIH1cbiAgQGluY2x1ZGUgZGVwcmVjYXRlKFwiVGhlIGBmb3JtLWNvbnRyb2wtZm9jdXMoKWAgbWl4aW5cIiwgXCJ2NC40LjBcIiwgXCJ2NVwiLCAkaWdub3JlLXdhcm5pbmcpO1xufVxuXG4vLyBUaGlzIG1peGluIHVzZXMgYW4gYGlmKClgIHRlY2huaXF1ZSB0byBiZSBjb21wYXRpYmxlIHdpdGggRGFydCBTYXNzXG4vLyBTZWUgaHR0cHM6Ly9naXRodWIuY29tL3Nhc3Mvc2Fzcy9pc3N1ZXMvMTg3MyNpc3N1ZWNvbW1lbnQtMTUyMjkzNzI1IGZvciBtb3JlIGRldGFpbHNcbkBtaXhpbiBmb3JtLXZhbGlkYXRpb24tc3RhdGUtc2VsZWN0b3IoJHN0YXRlKSB7XG4gIEBpZiAoJHN0YXRlID09IFwidmFsaWRcIiBvciAkc3RhdGUgPT0gXCJpbnZhbGlkXCIpIHtcbiAgICAud2FzLXZhbGlkYXRlZCAje2lmKCYsIFwiJlwiLCBcIlwiKX06I3skc3RhdGV9LFxuICAgICN7aWYoJiwgXCImXCIsIFwiXCIpfS5pcy0jeyRzdGF0ZX0ge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9IEBlbHNlIHtcbiAgICAje2lmKCYsIFwiJlwiLCBcIlwiKX0uaXMtI3skc3RhdGV9IHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gZm9ybS12YWxpZGF0aW9uLXN0YXRlKCRzdGF0ZSwgJGNvbG9yLCAkaWNvbikge1xuICAuI3skc3RhdGV9LWZlZWRiYWNrIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1hcmdpbi10b3A6ICRmb3JtLWZlZWRiYWNrLW1hcmdpbi10b3A7XG4gICAgQGluY2x1ZGUgZm9udC1zaXplKCRmb3JtLWZlZWRiYWNrLWZvbnQtc2l6ZSk7XG4gICAgY29sb3I6ICRjb2xvcjtcbiAgfVxuXG4gIC4jeyRzdGF0ZX0tdG9vbHRpcCB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMTAwJTtcbiAgICB6LWluZGV4OiA1O1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgbWF4LXdpZHRoOiAxMDAlOyAvLyBDb250YWluIHRvIHBhcmVudCB3aGVuIHBvc3NpYmxlXG4gICAgcGFkZGluZzogJGZvcm0tZmVlZGJhY2stdG9vbHRpcC1wYWRkaW5nLXkgJGZvcm0tZmVlZGJhY2stdG9vbHRpcC1wYWRkaW5nLXg7XG4gICAgbWFyZ2luLXRvcDogLjFyZW07XG4gICAgQGluY2x1ZGUgZm9udC1zaXplKCRmb3JtLWZlZWRiYWNrLXRvb2x0aXAtZm9udC1zaXplKTtcbiAgICBsaW5lLWhlaWdodDogJGZvcm0tZmVlZGJhY2stdG9vbHRpcC1saW5lLWhlaWdodDtcbiAgICBjb2xvcjogY29sb3IteWlxKCRjb2xvcik7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgkY29sb3IsICRmb3JtLWZlZWRiYWNrLXRvb2x0aXAtb3BhY2l0eSk7XG4gICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkZm9ybS1mZWVkYmFjay10b29sdGlwLWJvcmRlci1yYWRpdXMpO1xuICB9XG5cbiAgQGluY2x1ZGUgZm9ybS12YWxpZGF0aW9uLXN0YXRlLXNlbGVjdG9yKCRzdGF0ZSkge1xuICAgIH4gLiN7JHN0YXRlfS1mZWVkYmFjayxcbiAgICB+IC4jeyRzdGF0ZX0tdG9vbHRpcCB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICB9XG4gIH1cblxuICAuZm9ybS1jb250cm9sIHtcbiAgICBAaW5jbHVkZSBmb3JtLXZhbGlkYXRpb24tc3RhdGUtc2VsZWN0b3IoJHN0YXRlKSB7XG4gICAgICBib3JkZXItY29sb3I6ICRjb2xvcjtcblxuICAgICAgQGlmICRlbmFibGUtdmFsaWRhdGlvbi1pY29ucyB7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6ICRpbnB1dC1oZWlnaHQtaW5uZXI7XG4gICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IGVzY2FwZS1zdmcoJGljb24pO1xuICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiByaWdodCAkaW5wdXQtaGVpZ2h0LWlubmVyLXF1YXJ0ZXIgY2VudGVyO1xuICAgICAgICBiYWNrZ3JvdW5kLXNpemU6ICRpbnB1dC1oZWlnaHQtaW5uZXItaGFsZiAkaW5wdXQtaGVpZ2h0LWlubmVyLWhhbGY7XG4gICAgICB9XG5cbiAgICAgICY6Zm9jdXMge1xuICAgICAgICBib3JkZXItY29sb3I6ICRjb2xvcjtcbiAgICAgICAgYm94LXNoYWRvdzogMCAwIDAgJGlucHV0LWZvY3VzLXdpZHRoIHJnYmEoJGNvbG9yLCAuMjUpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBzZWxlY3Rvci1uby1xdWFsaWZ5aW5nLXR5cGVcbiAgdGV4dGFyZWEuZm9ybS1jb250cm9sIHtcbiAgICBAaW5jbHVkZSBmb3JtLXZhbGlkYXRpb24tc3RhdGUtc2VsZWN0b3IoJHN0YXRlKSB7XG4gICAgICBAaWYgJGVuYWJsZS12YWxpZGF0aW9uLWljb25zIHtcbiAgICAgICAgcGFkZGluZy1yaWdodDogJGlucHV0LWhlaWdodC1pbm5lcjtcbiAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogdG9wICRpbnB1dC1oZWlnaHQtaW5uZXItcXVhcnRlciByaWdodCAkaW5wdXQtaGVpZ2h0LWlubmVyLXF1YXJ0ZXI7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLmN1c3RvbS1zZWxlY3Qge1xuICAgIEBpbmNsdWRlIGZvcm0tdmFsaWRhdGlvbi1zdGF0ZS1zZWxlY3Rvcigkc3RhdGUpIHtcbiAgICAgIGJvcmRlci1jb2xvcjogJGNvbG9yO1xuXG4gICAgICBAaWYgJGVuYWJsZS12YWxpZGF0aW9uLWljb25zIHtcbiAgICAgICAgcGFkZGluZy1yaWdodDogJGN1c3RvbS1zZWxlY3QtZmVlZGJhY2staWNvbi1wYWRkaW5nLXJpZ2h0O1xuICAgICAgICBiYWNrZ3JvdW5kOiAkY3VzdG9tLXNlbGVjdC1iYWNrZ3JvdW5kLCBlc2NhcGUtc3ZnKCRpY29uKSAkY3VzdG9tLXNlbGVjdC1iZyBuby1yZXBlYXQgJGN1c3RvbS1zZWxlY3QtZmVlZGJhY2staWNvbi1wb3NpdGlvbiAvICRjdXN0b20tc2VsZWN0LWZlZWRiYWNrLWljb24tc2l6ZTtcbiAgICAgIH1cblxuICAgICAgJjpmb2N1cyB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogJGNvbG9yO1xuICAgICAgICBib3gtc2hhZG93OiAwIDAgMCAkaW5wdXQtZm9jdXMtd2lkdGggcmdiYSgkY29sb3IsIC4yNSk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLmZvcm0tY2hlY2staW5wdXQge1xuICAgIEBpbmNsdWRlIGZvcm0tdmFsaWRhdGlvbi1zdGF0ZS1zZWxlY3Rvcigkc3RhdGUpIHtcbiAgICAgIH4gLmZvcm0tY2hlY2stbGFiZWwge1xuICAgICAgICBjb2xvcjogJGNvbG9yO1xuICAgICAgfVxuXG4gICAgICB+IC4jeyRzdGF0ZX0tZmVlZGJhY2ssXG4gICAgICB+IC4jeyRzdGF0ZX0tdG9vbHRpcCB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5jdXN0b20tY29udHJvbC1pbnB1dCB7XG4gICAgQGluY2x1ZGUgZm9ybS12YWxpZGF0aW9uLXN0YXRlLXNlbGVjdG9yKCRzdGF0ZSkge1xuICAgICAgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWwge1xuICAgICAgICBjb2xvcjogJGNvbG9yO1xuXG4gICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgYm9yZGVyLWNvbG9yOiAkY29sb3I7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgJjpjaGVja2VkIHtcbiAgICAgICAgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSB7XG4gICAgICAgICAgYm9yZGVyLWNvbG9yOiBsaWdodGVuKCRjb2xvciwgMTAlKTtcbiAgICAgICAgICBAaW5jbHVkZSBncmFkaWVudC1iZyhsaWdodGVuKCRjb2xvciwgMTAlKSk7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgJjpmb2N1cyB7XG4gICAgICAgIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsOjpiZWZvcmUge1xuICAgICAgICAgIGJveC1zaGFkb3c6IDAgMCAwICRpbnB1dC1mb2N1cy13aWR0aCByZ2JhKCRjb2xvciwgLjI1KTtcbiAgICAgICAgfVxuXG4gICAgICAgICY6bm90KDpjaGVja2VkKSB+IC5jdXN0b20tY29udHJvbC1sYWJlbDo6YmVmb3JlIHtcbiAgICAgICAgICBib3JkZXItY29sb3I6ICRjb2xvcjtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vIGN1c3RvbSBmaWxlXG4gIC5jdXN0b20tZmlsZS1pbnB1dCB7XG4gICAgQGluY2x1ZGUgZm9ybS12YWxpZGF0aW9uLXN0YXRlLXNlbGVjdG9yKCRzdGF0ZSkge1xuICAgICAgfiAuY3VzdG9tLWZpbGUtbGFiZWwge1xuICAgICAgICBib3JkZXItY29sb3I6ICRjb2xvcjtcbiAgICAgIH1cblxuICAgICAgJjpmb2N1cyB7XG4gICAgICAgIH4gLmN1c3RvbS1maWxlLWxhYmVsIHtcbiAgICAgICAgICBib3JkZXItY29sb3I6ICRjb2xvcjtcbiAgICAgICAgICBib3gtc2hhZG93OiAwIDAgMCAkaW5wdXQtZm9jdXMtd2lkdGggcmdiYSgkY29sb3IsIC4yNSk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8vIEdyYWRpZW50c1xuXG5AbWl4aW4gZ3JhZGllbnQtYmcoJGNvbG9yKSB7XG4gIEBpZiAkZW5hYmxlLWdyYWRpZW50cyB7XG4gICAgYmFja2dyb3VuZDogJGNvbG9yIGxpbmVhci1ncmFkaWVudCgxODBkZWcsIG1peCgkYm9keS1iZywgJGNvbG9yLCAxNSUpLCAkY29sb3IpIHJlcGVhdC14O1xuICB9IEBlbHNlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3I7XG4gIH1cbn1cblxuLy8gSG9yaXpvbnRhbCBncmFkaWVudCwgZnJvbSBsZWZ0IHRvIHJpZ2h0XG4vL1xuLy8gQ3JlYXRlcyB0d28gY29sb3Igc3RvcHMsIHN0YXJ0IGFuZCBlbmQsIGJ5IHNwZWNpZnlpbmcgYSBjb2xvciBhbmQgcG9zaXRpb24gZm9yIGVhY2ggY29sb3Igc3RvcC5cbkBtaXhpbiBncmFkaWVudC14KCRzdGFydC1jb2xvcjogJGdyYXktNzAwLCAkZW5kLWNvbG9yOiAkZ3JheS04MDAsICRzdGFydC1wZXJjZW50OiAwJSwgJGVuZC1wZXJjZW50OiAxMDAlKSB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCh0byByaWdodCwgJHN0YXJ0LWNvbG9yICRzdGFydC1wZXJjZW50LCAkZW5kLWNvbG9yICRlbmQtcGVyY2VudCk7XG4gIGJhY2tncm91bmQtcmVwZWF0OiByZXBlYXQteDtcbn1cblxuLy8gVmVydGljYWwgZ3JhZGllbnQsIGZyb20gdG9wIHRvIGJvdHRvbVxuLy9cbi8vIENyZWF0ZXMgdHdvIGNvbG9yIHN0b3BzLCBzdGFydCBhbmQgZW5kLCBieSBzcGVjaWZ5aW5nIGEgY29sb3IgYW5kIHBvc2l0aW9uIGZvciBlYWNoIGNvbG9yIHN0b3AuXG5AbWl4aW4gZ3JhZGllbnQteSgkc3RhcnQtY29sb3I6ICRncmF5LTcwMCwgJGVuZC1jb2xvcjogJGdyYXktODAwLCAkc3RhcnQtcGVyY2VudDogMCUsICRlbmQtcGVyY2VudDogMTAwJSkge1xuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodG8gYm90dG9tLCAkc3RhcnQtY29sb3IgJHN0YXJ0LXBlcmNlbnQsICRlbmQtY29sb3IgJGVuZC1wZXJjZW50KTtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IHJlcGVhdC14O1xufVxuXG5AbWl4aW4gZ3JhZGllbnQtZGlyZWN0aW9uYWwoJHN0YXJ0LWNvbG9yOiAkZ3JheS03MDAsICRlbmQtY29sb3I6ICRncmF5LTgwMCwgJGRlZzogNDVkZWcpIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KCRkZWcsICRzdGFydC1jb2xvciwgJGVuZC1jb2xvcik7XG4gIGJhY2tncm91bmQtcmVwZWF0OiByZXBlYXQteDtcbn1cbkBtaXhpbiBncmFkaWVudC14LXRocmVlLWNvbG9ycygkc3RhcnQtY29sb3I6ICRibHVlLCAkbWlkLWNvbG9yOiAkcHVycGxlLCAkY29sb3Itc3RvcDogNTAlLCAkZW5kLWNvbG9yOiAkcmVkKSB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCh0byByaWdodCwgJHN0YXJ0LWNvbG9yLCAkbWlkLWNvbG9yICRjb2xvci1zdG9wLCAkZW5kLWNvbG9yKTtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbn1cbkBtaXhpbiBncmFkaWVudC15LXRocmVlLWNvbG9ycygkc3RhcnQtY29sb3I6ICRibHVlLCAkbWlkLWNvbG9yOiAkcHVycGxlLCAkY29sb3Itc3RvcDogNTAlLCAkZW5kLWNvbG9yOiAkcmVkKSB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCgkc3RhcnQtY29sb3IsICRtaWQtY29sb3IgJGNvbG9yLXN0b3AsICRlbmQtY29sb3IpO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xufVxuQG1peGluIGdyYWRpZW50LXJhZGlhbCgkaW5uZXItY29sb3I6ICRncmF5LTcwMCwgJG91dGVyLWNvbG9yOiAkZ3JheS04MDApIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogcmFkaWFsLWdyYWRpZW50KGNpcmNsZSwgJGlubmVyLWNvbG9yLCAkb3V0ZXItY29sb3IpO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xufVxuQG1peGluIGdyYWRpZW50LXN0cmlwZWQoJGNvbG9yOiByZ2JhKCR3aGl0ZSwgLjE1KSwgJGFuZ2xlOiA0NWRlZykge1xuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQoJGFuZ2xlLCAkY29sb3IgMjUlLCB0cmFuc3BhcmVudCAyNSUsIHRyYW5zcGFyZW50IDUwJSwgJGNvbG9yIDUwJSwgJGNvbG9yIDc1JSwgdHJhbnNwYXJlbnQgNzUlLCB0cmFuc3BhcmVudCk7XG59XG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBzZWxlY3Rvci1uby1xdWFsaWZ5aW5nLXR5cGVcblxuLy9cbi8vIEJhc2Ugc3R5bGVzXG4vL1xuXG4uYnRuIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBmb250LWZhbWlseTogJGJ0bi1mb250LWZhbWlseTtcbiAgZm9udC13ZWlnaHQ6ICRidG4tZm9udC13ZWlnaHQ7XG4gIGNvbG9yOiAkYm9keS1jb2xvcjtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB3aGl0ZS1zcGFjZTogJGJ0bi13aGl0ZS1zcGFjZTtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgY3Vyc29yOiBpZigkZW5hYmxlLXBvaW50ZXItY3Vyc29yLWZvci1idXR0b25zLCBwb2ludGVyLCBudWxsKTtcbiAgdXNlci1zZWxlY3Q6IG5vbmU7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBib3JkZXI6ICRidG4tYm9yZGVyLXdpZHRoIHNvbGlkIHRyYW5zcGFyZW50O1xuICBAaW5jbHVkZSBidXR0b24tc2l6ZSgkYnRuLXBhZGRpbmcteSwgJGJ0bi1wYWRkaW5nLXgsICRidG4tZm9udC1zaXplLCAkYnRuLWxpbmUtaGVpZ2h0LCAkYnRuLWJvcmRlci1yYWRpdXMpO1xuICBAaW5jbHVkZSB0cmFuc2l0aW9uKCRidG4tdHJhbnNpdGlvbik7XG5cbiAgQGluY2x1ZGUgaG92ZXIoKSB7XG4gICAgY29sb3I6ICRib2R5LWNvbG9yO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgfVxuXG4gICY6Zm9jdXMsXG4gICYuZm9jdXMge1xuICAgIG91dGxpbmU6IDA7XG4gICAgYm94LXNoYWRvdzogJGJ0bi1mb2N1cy1ib3gtc2hhZG93O1xuICB9XG5cbiAgLy8gRGlzYWJsZWQgY29tZXMgZmlyc3Qgc28gYWN0aXZlIGNhbiBwcm9wZXJseSByZXN0eWxlXG4gICYuZGlzYWJsZWQsXG4gICY6ZGlzYWJsZWQge1xuICAgIG9wYWNpdHk6ICRidG4tZGlzYWJsZWQtb3BhY2l0eTtcbiAgICBAaW5jbHVkZSBib3gtc2hhZG93KG5vbmUpO1xuICB9XG5cbiAgJjpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKTphY3RpdmUsXG4gICY6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkuYWN0aXZlIHtcbiAgICBAaW5jbHVkZSBib3gtc2hhZG93KCRidG4tYWN0aXZlLWJveC1zaGFkb3cpO1xuXG4gICAgJjpmb2N1cyB7XG4gICAgICBAaW5jbHVkZSBib3gtc2hhZG93KCRidG4tZm9jdXMtYm94LXNoYWRvdywgJGJ0bi1hY3RpdmUtYm94LXNoYWRvdyk7XG4gICAgfVxuICB9XG59XG5cbi8vIEZ1dHVyZS1wcm9vZiBkaXNhYmxpbmcgb2YgY2xpY2tzIG9uIGA8YT5gIGVsZW1lbnRzXG5hLmJ0bi5kaXNhYmxlZCxcbmZpZWxkc2V0OmRpc2FibGVkIGEuYnRuIHtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG59XG5cblxuLy9cbi8vIEFsdGVybmF0ZSBidXR0b25zXG4vL1xuXG5AZWFjaCAkY29sb3IsICR2YWx1ZSBpbiAkdGhlbWUtY29sb3JzIHtcbiAgLmJ0bi0jeyRjb2xvcn0ge1xuICAgIEBpbmNsdWRlIGJ1dHRvbi12YXJpYW50KCR2YWx1ZSwgJHZhbHVlKTtcbiAgfVxufVxuXG5AZWFjaCAkY29sb3IsICR2YWx1ZSBpbiAkdGhlbWUtY29sb3JzIHtcbiAgLmJ0bi1vdXRsaW5lLSN7JGNvbG9yfSB7XG4gICAgQGluY2x1ZGUgYnV0dG9uLW91dGxpbmUtdmFyaWFudCgkdmFsdWUpO1xuICB9XG59XG5cblxuLy9cbi8vIExpbmsgYnV0dG9uc1xuLy9cblxuLy8gTWFrZSBhIGJ1dHRvbiBsb29rIGFuZCBiZWhhdmUgbGlrZSBhIGxpbmtcbi5idG4tbGluayB7XG4gIGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtbm9ybWFsO1xuICBjb2xvcjogJGxpbmstY29sb3I7XG4gIHRleHQtZGVjb3JhdGlvbjogJGxpbmstZGVjb3JhdGlvbjtcblxuICBAaW5jbHVkZSBob3ZlcigpIHtcbiAgICBjb2xvcjogJGxpbmstaG92ZXItY29sb3I7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiAkbGluay1ob3Zlci1kZWNvcmF0aW9uO1xuICB9XG5cbiAgJjpmb2N1cyxcbiAgJi5mb2N1cyB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiAkbGluay1ob3Zlci1kZWNvcmF0aW9uO1xuICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gIH1cblxuICAmOmRpc2FibGVkLFxuICAmLmRpc2FibGVkIHtcbiAgICBjb2xvcjogJGJ0bi1saW5rLWRpc2FibGVkLWNvbG9yO1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICB9XG5cbiAgLy8gTm8gbmVlZCBmb3IgYW4gYWN0aXZlIHN0YXRlIGhlcmVcbn1cblxuXG4vL1xuLy8gQnV0dG9uIFNpemVzXG4vL1xuXG4uYnRuLWxnIHtcbiAgQGluY2x1ZGUgYnV0dG9uLXNpemUoJGJ0bi1wYWRkaW5nLXktbGcsICRidG4tcGFkZGluZy14LWxnLCAkYnRuLWZvbnQtc2l6ZS1sZywgJGJ0bi1saW5lLWhlaWdodC1sZywgJGJ0bi1ib3JkZXItcmFkaXVzLWxnKTtcbn1cblxuLmJ0bi1zbSB7XG4gIEBpbmNsdWRlIGJ1dHRvbi1zaXplKCRidG4tcGFkZGluZy15LXNtLCAkYnRuLXBhZGRpbmcteC1zbSwgJGJ0bi1mb250LXNpemUtc20sICRidG4tbGluZS1oZWlnaHQtc20sICRidG4tYm9yZGVyLXJhZGl1cy1zbSk7XG59XG5cblxuLy9cbi8vIEJsb2NrIGJ1dHRvblxuLy9cblxuLmJ0bi1ibG9jayB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTtcblxuICAvLyBWZXJ0aWNhbGx5IHNwYWNlIG91dCBtdWx0aXBsZSBibG9jayBidXR0b25zXG4gICsgLmJ0bi1ibG9jayB7XG4gICAgbWFyZ2luLXRvcDogJGJ0bi1ibG9jay1zcGFjaW5nLXk7XG4gIH1cbn1cblxuLy8gU3BlY2lmaWNpdHkgb3ZlcnJpZGVzXG5pbnB1dFt0eXBlPVwic3VibWl0XCJdLFxuaW5wdXRbdHlwZT1cInJlc2V0XCJdLFxuaW5wdXRbdHlwZT1cImJ1dHRvblwiXSB7XG4gICYuYnRuLWJsb2NrIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxufVxuIiwiLy8gQnV0dG9uIHZhcmlhbnRzXG4vL1xuLy8gRWFzaWx5IHB1bXAgb3V0IGRlZmF1bHQgc3R5bGVzLCBhcyB3ZWxsIGFzIDpob3ZlciwgOmZvY3VzLCA6YWN0aXZlLFxuLy8gYW5kIGRpc2FibGVkIG9wdGlvbnMgZm9yIGFsbCBidXR0b25zXG5cbkBtaXhpbiBidXR0b24tdmFyaWFudCgkYmFja2dyb3VuZCwgJGJvcmRlciwgJGhvdmVyLWJhY2tncm91bmQ6IGRhcmtlbigkYmFja2dyb3VuZCwgNy41JSksICRob3Zlci1ib3JkZXI6IGRhcmtlbigkYm9yZGVyLCAxMCUpLCAkYWN0aXZlLWJhY2tncm91bmQ6IGRhcmtlbigkYmFja2dyb3VuZCwgMTAlKSwgJGFjdGl2ZS1ib3JkZXI6IGRhcmtlbigkYm9yZGVyLCAxMi41JSkpIHtcbiAgY29sb3I6IGNvbG9yLXlpcSgkYmFja2dyb3VuZCk7XG4gIEBpbmNsdWRlIGdyYWRpZW50LWJnKCRiYWNrZ3JvdW5kKTtcbiAgYm9yZGVyLWNvbG9yOiAkYm9yZGVyO1xuICBAaW5jbHVkZSBib3gtc2hhZG93KCRidG4tYm94LXNoYWRvdyk7XG5cbiAgQGluY2x1ZGUgaG92ZXIoKSB7XG4gICAgY29sb3I6IGNvbG9yLXlpcSgkaG92ZXItYmFja2dyb3VuZCk7XG4gICAgQGluY2x1ZGUgZ3JhZGllbnQtYmcoJGhvdmVyLWJhY2tncm91bmQpO1xuICAgIGJvcmRlci1jb2xvcjogJGhvdmVyLWJvcmRlcjtcbiAgfVxuXG4gICY6Zm9jdXMsXG4gICYuZm9jdXMge1xuICAgIGNvbG9yOiBjb2xvci15aXEoJGhvdmVyLWJhY2tncm91bmQpO1xuICAgIEBpbmNsdWRlIGdyYWRpZW50LWJnKCRob3Zlci1iYWNrZ3JvdW5kKTtcbiAgICBib3JkZXItY29sb3I6ICRob3Zlci1ib3JkZXI7XG4gICAgLy8gQXZvaWQgdXNpbmcgbWl4aW4gc28gd2UgY2FuIHBhc3MgY3VzdG9tIGZvY3VzIHNoYWRvdyBwcm9wZXJseVxuICAgIEBpZiAkZW5hYmxlLXNoYWRvd3Mge1xuICAgICAgYm94LXNoYWRvdzogJGJ0bi1ib3gtc2hhZG93LCAwIDAgMCAkYnRuLWZvY3VzLXdpZHRoIHJnYmEobWl4KGNvbG9yLXlpcSgkYmFja2dyb3VuZCksICRib3JkZXIsIDE1JSksIC41KTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGJveC1zaGFkb3c6IDAgMCAwICRidG4tZm9jdXMtd2lkdGggcmdiYShtaXgoY29sb3IteWlxKCRiYWNrZ3JvdW5kKSwgJGJvcmRlciwgMTUlKSwgLjUpO1xuICAgIH1cbiAgfVxuXG4gIC8vIERpc2FibGVkIGNvbWVzIGZpcnN0IHNvIGFjdGl2ZSBjYW4gcHJvcGVybHkgcmVzdHlsZVxuICAmLmRpc2FibGVkLFxuICAmOmRpc2FibGVkIHtcbiAgICBjb2xvcjogY29sb3IteWlxKCRiYWNrZ3JvdW5kKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmFja2dyb3VuZDtcbiAgICBib3JkZXItY29sb3I6ICRib3JkZXI7XG4gICAgLy8gUmVtb3ZlIENTUyBncmFkaWVudHMgaWYgdGhleSdyZSBlbmFibGVkXG4gICAgQGlmICRlbmFibGUtZ3JhZGllbnRzIHtcbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XG4gICAgfVxuICB9XG5cbiAgJjpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKTphY3RpdmUsXG4gICY6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkuYWN0aXZlLFxuICAuc2hvdyA+ICYuZHJvcGRvd24tdG9nZ2xlIHtcbiAgICBjb2xvcjogY29sb3IteWlxKCRhY3RpdmUtYmFja2dyb3VuZCk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGFjdGl2ZS1iYWNrZ3JvdW5kO1xuICAgIEBpZiAkZW5hYmxlLWdyYWRpZW50cyB7XG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiBub25lOyAvLyBSZW1vdmUgdGhlIGdyYWRpZW50IGZvciB0aGUgcHJlc3NlZC9hY3RpdmUgc3RhdGVcbiAgICB9XG4gICAgYm9yZGVyLWNvbG9yOiAkYWN0aXZlLWJvcmRlcjtcblxuICAgICY6Zm9jdXMge1xuICAgICAgLy8gQXZvaWQgdXNpbmcgbWl4aW4gc28gd2UgY2FuIHBhc3MgY3VzdG9tIGZvY3VzIHNoYWRvdyBwcm9wZXJseVxuICAgICAgQGlmICRlbmFibGUtc2hhZG93cyBhbmQgJGJ0bi1hY3RpdmUtYm94LXNoYWRvdyAhPSBub25lIHtcbiAgICAgICAgYm94LXNoYWRvdzogJGJ0bi1hY3RpdmUtYm94LXNoYWRvdywgMCAwIDAgJGJ0bi1mb2N1cy13aWR0aCByZ2JhKG1peChjb2xvci15aXEoJGJhY2tncm91bmQpLCAkYm9yZGVyLCAxNSUpLCAuNSk7XG4gICAgICB9IEBlbHNlIHtcbiAgICAgICAgYm94LXNoYWRvdzogMCAwIDAgJGJ0bi1mb2N1cy13aWR0aCByZ2JhKG1peChjb2xvci15aXEoJGJhY2tncm91bmQpLCAkYm9yZGVyLCAxNSUpLCAuNSk7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBidXR0b24tb3V0bGluZS12YXJpYW50KCRjb2xvciwgJGNvbG9yLWhvdmVyOiBjb2xvci15aXEoJGNvbG9yKSwgJGFjdGl2ZS1iYWNrZ3JvdW5kOiAkY29sb3IsICRhY3RpdmUtYm9yZGVyOiAkY29sb3IpIHtcbiAgY29sb3I6ICRjb2xvcjtcbiAgYm9yZGVyLWNvbG9yOiAkY29sb3I7XG5cbiAgQGluY2x1ZGUgaG92ZXIoKSB7XG4gICAgY29sb3I6ICRjb2xvci1ob3ZlcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYWN0aXZlLWJhY2tncm91bmQ7XG4gICAgYm9yZGVyLWNvbG9yOiAkYWN0aXZlLWJvcmRlcjtcbiAgfVxuXG4gICY6Zm9jdXMsXG4gICYuZm9jdXMge1xuICAgIGJveC1zaGFkb3c6IDAgMCAwICRidG4tZm9jdXMtd2lkdGggcmdiYSgkY29sb3IsIC41KTtcbiAgfVxuXG4gICYuZGlzYWJsZWQsXG4gICY6ZGlzYWJsZWQge1xuICAgIGNvbG9yOiAkY29sb3I7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIH1cblxuICAmOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpOmFjdGl2ZSxcbiAgJjpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5hY3RpdmUsXG4gIC5zaG93ID4gJi5kcm9wZG93bi10b2dnbGUge1xuICAgIGNvbG9yOiBjb2xvci15aXEoJGFjdGl2ZS1iYWNrZ3JvdW5kKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYWN0aXZlLWJhY2tncm91bmQ7XG4gICAgYm9yZGVyLWNvbG9yOiAkYWN0aXZlLWJvcmRlcjtcblxuICAgICY6Zm9jdXMge1xuICAgICAgLy8gQXZvaWQgdXNpbmcgbWl4aW4gc28gd2UgY2FuIHBhc3MgY3VzdG9tIGZvY3VzIHNoYWRvdyBwcm9wZXJseVxuICAgICAgQGlmICRlbmFibGUtc2hhZG93cyBhbmQgJGJ0bi1hY3RpdmUtYm94LXNoYWRvdyAhPSBub25lIHtcbiAgICAgICAgYm94LXNoYWRvdzogJGJ0bi1hY3RpdmUtYm94LXNoYWRvdywgMCAwIDAgJGJ0bi1mb2N1cy13aWR0aCByZ2JhKCRjb2xvciwgLjUpO1xuICAgICAgfSBAZWxzZSB7XG4gICAgICAgIGJveC1zaGFkb3c6IDAgMCAwICRidG4tZm9jdXMtd2lkdGggcmdiYSgkY29sb3IsIC41KTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLy8gQnV0dG9uIHNpemVzXG5AbWl4aW4gYnV0dG9uLXNpemUoJHBhZGRpbmcteSwgJHBhZGRpbmcteCwgJGZvbnQtc2l6ZSwgJGxpbmUtaGVpZ2h0LCAkYm9yZGVyLXJhZGl1cykge1xuICBwYWRkaW5nOiAkcGFkZGluZy15ICRwYWRkaW5nLXg7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkZm9udC1zaXplKTtcbiAgbGluZS1oZWlnaHQ6ICRsaW5lLWhlaWdodDtcbiAgLy8gTWFudWFsbHkgZGVjbGFyZSB0byBwcm92aWRlIGFuIG92ZXJyaWRlIHRvIHRoZSBicm93c2VyIGRlZmF1bHRcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkYm9yZGVyLXJhZGl1cywgMCk7XG59XG4iLCIuZmFkZSB7XG4gIEBpbmNsdWRlIHRyYW5zaXRpb24oJHRyYW5zaXRpb24tZmFkZSk7XG5cbiAgJjpub3QoLnNob3cpIHtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG59XG5cbi5jb2xsYXBzZSB7XG4gICY6bm90KC5zaG93KSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuXG4uY29sbGFwc2luZyB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgaGVpZ2h0OiAwO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBAaW5jbHVkZSB0cmFuc2l0aW9uKCR0cmFuc2l0aW9uLWNvbGxhcHNlKTtcbn1cbiIsIi8vIFRoZSBkcm9wZG93biB3cmFwcGVyIChgPGRpdj5gKVxuLmRyb3B1cCxcbi5kcm9wcmlnaHQsXG4uZHJvcGRvd24sXG4uZHJvcGxlZnQge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi5kcm9wZG93bi10b2dnbGUge1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuXG4gIC8vIEdlbmVyYXRlIHRoZSBjYXJldCBhdXRvbWF0aWNhbGx5XG4gIEBpbmNsdWRlIGNhcmV0KCk7XG59XG5cbi8vIFRoZSBkcm9wZG93biBtZW51XG4uZHJvcGRvd24tbWVudSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAxMDAlO1xuICBsZWZ0OiAwO1xuICB6LWluZGV4OiAkemluZGV4LWRyb3Bkb3duO1xuICBkaXNwbGF5OiBub25lOyAvLyBub25lIGJ5IGRlZmF1bHQsIGJ1dCBibG9jayBvbiBcIm9wZW5cIiBvZiB0aGUgbWVudVxuICBmbG9hdDogbGVmdDtcbiAgbWluLXdpZHRoOiAkZHJvcGRvd24tbWluLXdpZHRoO1xuICBwYWRkaW5nOiAkZHJvcGRvd24tcGFkZGluZy15IDA7XG4gIG1hcmdpbjogJGRyb3Bkb3duLXNwYWNlciAwIDA7IC8vIG92ZXJyaWRlIGRlZmF1bHQgdWxcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRkcm9wZG93bi1mb250LXNpemUpO1xuICBjb2xvcjogJGRyb3Bkb3duLWNvbG9yO1xuICB0ZXh0LWFsaWduOiBsZWZ0OyAvLyBFbnN1cmVzIHByb3BlciBhbGlnbm1lbnQgaWYgcGFyZW50IGhhcyBpdCBjaGFuZ2VkIChlLmcuLCBtb2RhbCBmb290ZXIpXG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIGJhY2tncm91bmQtY29sb3I6ICRkcm9wZG93bi1iZztcbiAgYmFja2dyb3VuZC1jbGlwOiBwYWRkaW5nLWJveDtcbiAgYm9yZGVyOiAkZHJvcGRvd24tYm9yZGVyLXdpZHRoIHNvbGlkICRkcm9wZG93bi1ib3JkZXItY29sb3I7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGRyb3Bkb3duLWJvcmRlci1yYWRpdXMpO1xuICBAaW5jbHVkZSBib3gtc2hhZG93KCRkcm9wZG93bi1ib3gtc2hhZG93KTtcbn1cblxuQGVhY2ggJGJyZWFrcG9pbnQgaW4gbWFwLWtleXMoJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgkYnJlYWtwb2ludCkge1xuICAgICRpbmZpeDogYnJlYWtwb2ludC1pbmZpeCgkYnJlYWtwb2ludCwgJGdyaWQtYnJlYWtwb2ludHMpO1xuXG4gICAgLmRyb3Bkb3duLW1lbnUjeyRpbmZpeH0tbGVmdCB7XG4gICAgICByaWdodDogYXV0bztcbiAgICAgIGxlZnQ6IDA7XG4gICAgfVxuXG4gICAgLmRyb3Bkb3duLW1lbnUjeyRpbmZpeH0tcmlnaHQge1xuICAgICAgcmlnaHQ6IDA7XG4gICAgICBsZWZ0OiBhdXRvO1xuICAgIH1cbiAgfVxufVxuXG4vLyBBbGxvdyBmb3IgZHJvcGRvd25zIHRvIGdvIGJvdHRvbSB1cCAoYWthLCBkcm9wdXAtbWVudSlcbi8vIEp1c3QgYWRkIC5kcm9wdXAgYWZ0ZXIgdGhlIHN0YW5kYXJkIC5kcm9wZG93biBjbGFzcyBhbmQgeW91J3JlIHNldC5cbi5kcm9wdXAge1xuICAuZHJvcGRvd24tbWVudSB7XG4gICAgdG9wOiBhdXRvO1xuICAgIGJvdHRvbTogMTAwJTtcbiAgICBtYXJnaW4tdG9wOiAwO1xuICAgIG1hcmdpbi1ib3R0b206ICRkcm9wZG93bi1zcGFjZXI7XG4gIH1cblxuICAuZHJvcGRvd24tdG9nZ2xlIHtcbiAgICBAaW5jbHVkZSBjYXJldCh1cCk7XG4gIH1cbn1cblxuLmRyb3ByaWdodCB7XG4gIC5kcm9wZG93bi1tZW51IHtcbiAgICB0b3A6IDA7XG4gICAgcmlnaHQ6IGF1dG87XG4gICAgbGVmdDogMTAwJTtcbiAgICBtYXJnaW4tdG9wOiAwO1xuICAgIG1hcmdpbi1sZWZ0OiAkZHJvcGRvd24tc3BhY2VyO1xuICB9XG5cbiAgLmRyb3Bkb3duLXRvZ2dsZSB7XG4gICAgQGluY2x1ZGUgY2FyZXQocmlnaHQpO1xuICAgICY6OmFmdGVyIHtcbiAgICAgIHZlcnRpY2FsLWFsaWduOiAwO1xuICAgIH1cbiAgfVxufVxuXG4uZHJvcGxlZnQge1xuICAuZHJvcGRvd24tbWVudSB7XG4gICAgdG9wOiAwO1xuICAgIHJpZ2h0OiAxMDAlO1xuICAgIGxlZnQ6IGF1dG87XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgICBtYXJnaW4tcmlnaHQ6ICRkcm9wZG93bi1zcGFjZXI7XG4gIH1cblxuICAuZHJvcGRvd24tdG9nZ2xlIHtcbiAgICBAaW5jbHVkZSBjYXJldChsZWZ0KTtcbiAgICAmOjpiZWZvcmUge1xuICAgICAgdmVydGljYWwtYWxpZ246IDA7XG4gICAgfVxuICB9XG59XG5cbi8vIFdoZW4gZW5hYmxlZCBQb3BwZXIuanMsIHJlc2V0IGJhc2ljIGRyb3Bkb3duIHBvc2l0aW9uXG4vLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgbm8tZHVwbGljYXRlLXNlbGVjdG9yc1xuLmRyb3Bkb3duLW1lbnUge1xuICAmW3gtcGxhY2VtZW50Xj1cInRvcFwiXSxcbiAgJlt4LXBsYWNlbWVudF49XCJyaWdodFwiXSxcbiAgJlt4LXBsYWNlbWVudF49XCJib3R0b21cIl0sXG4gICZbeC1wbGFjZW1lbnRePVwibGVmdFwiXSB7XG4gICAgcmlnaHQ6IGF1dG87XG4gICAgYm90dG9tOiBhdXRvO1xuICB9XG59XG5cbi8vIERpdmlkZXJzIChiYXNpY2FsbHkgYW4gYDxocj5gKSB3aXRoaW4gdGhlIGRyb3Bkb3duXG4uZHJvcGRvd24tZGl2aWRlciB7XG4gIEBpbmNsdWRlIG5hdi1kaXZpZGVyKCRkcm9wZG93bi1kaXZpZGVyLWJnLCAkZHJvcGRvd24tZGl2aWRlci1tYXJnaW4teSwgdHJ1ZSk7XG59XG5cbi8vIExpbmtzLCBidXR0b25zLCBhbmQgbW9yZSB3aXRoaW4gdGhlIGRyb3Bkb3duIG1lbnVcbi8vXG4vLyBgPGJ1dHRvbj5gLXNwZWNpZmljIHN0eWxlcyBhcmUgZGVub3RlZCB3aXRoIGAvLyBGb3IgPGJ1dHRvbj5zYFxuLmRyb3Bkb3duLWl0ZW0ge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7IC8vIEZvciBgPGJ1dHRvbj5gc1xuICBwYWRkaW5nOiAkZHJvcGRvd24taXRlbS1wYWRkaW5nLXkgJGRyb3Bkb3duLWl0ZW0tcGFkZGluZy14O1xuICBjbGVhcjogYm90aDtcbiAgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1ub3JtYWw7XG4gIGNvbG9yOiAkZHJvcGRvd24tbGluay1jb2xvcjtcbiAgdGV4dC1hbGlnbjogaW5oZXJpdDsgLy8gRm9yIGA8YnV0dG9uPmBzXG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7IC8vIHByZXZlbnQgbGlua3MgZnJvbSByYW5kb21seSBicmVha2luZyBvbnRvIG5ldyBsaW5lc1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsgLy8gRm9yIGA8YnV0dG9uPmBzXG4gIGJvcmRlcjogMDsgLy8gRm9yIGA8YnV0dG9uPmBzXG5cbiAgLy8gUHJldmVudCBkcm9wZG93biBvdmVyZmxvdyBpZiB0aGVyZSdzIG5vIHBhZGRpbmdcbiAgLy8gU2VlIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9wdWxsLzI3NzAzXG4gIEBpZiAkZHJvcGRvd24tcGFkZGluZy15ID09IDAge1xuICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgQGluY2x1ZGUgYm9yZGVyLXRvcC1yYWRpdXMoJGRyb3Bkb3duLWlubmVyLWJvcmRlci1yYWRpdXMpO1xuICAgIH1cblxuICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICBAaW5jbHVkZSBib3JkZXItYm90dG9tLXJhZGl1cygkZHJvcGRvd24taW5uZXItYm9yZGVyLXJhZGl1cyk7XG4gICAgfVxuICB9XG5cbiAgQGluY2x1ZGUgaG92ZXItZm9jdXMoKSB7XG4gICAgY29sb3I6ICRkcm9wZG93bi1saW5rLWhvdmVyLWNvbG9yO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICBAaW5jbHVkZSBncmFkaWVudC1iZygkZHJvcGRvd24tbGluay1ob3Zlci1iZyk7XG4gIH1cblxuICAmLmFjdGl2ZSxcbiAgJjphY3RpdmUge1xuICAgIGNvbG9yOiAkZHJvcGRvd24tbGluay1hY3RpdmUtY29sb3I7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIEBpbmNsdWRlIGdyYWRpZW50LWJnKCRkcm9wZG93bi1saW5rLWFjdGl2ZS1iZyk7XG4gIH1cblxuICAmLmRpc2FibGVkLFxuICAmOmRpc2FibGVkIHtcbiAgICBjb2xvcjogJGRyb3Bkb3duLWxpbmstZGlzYWJsZWQtY29sb3I7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgLy8gUmVtb3ZlIENTUyBncmFkaWVudHMgaWYgdGhleSdyZSBlbmFibGVkXG4gICAgQGlmICRlbmFibGUtZ3JhZGllbnRzIHtcbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XG4gICAgfVxuICB9XG59XG5cbi5kcm9wZG93bi1tZW51LnNob3cge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLy8gRHJvcGRvd24gc2VjdGlvbiBoZWFkZXJzXG4uZHJvcGRvd24taGVhZGVyIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBhZGRpbmc6ICRkcm9wZG93bi1wYWRkaW5nLXkgJGRyb3Bkb3duLWl0ZW0tcGFkZGluZy14O1xuICBtYXJnaW4tYm90dG9tOiAwOyAvLyBmb3IgdXNlIHdpdGggaGVhZGluZyBlbGVtZW50c1xuICBAaW5jbHVkZSBmb250LXNpemUoJGZvbnQtc2l6ZS1zbSk7XG4gIGNvbG9yOiAkZHJvcGRvd24taGVhZGVyLWNvbG9yO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwOyAvLyBhcyB3aXRoID4gbGkgPiBhXG59XG5cbi8vIERyb3Bkb3duIHRleHRcbi5kcm9wZG93bi1pdGVtLXRleHQge1xuICBkaXNwbGF5OiBibG9jaztcbiAgcGFkZGluZzogJGRyb3Bkb3duLWl0ZW0tcGFkZGluZy15ICRkcm9wZG93bi1pdGVtLXBhZGRpbmcteDtcbiAgY29sb3I6ICRkcm9wZG93bi1saW5rLWNvbG9yO1xufVxuIiwiQG1peGluIGNhcmV0LWRvd24oKSB7XG4gIGJvcmRlci10b3A6ICRjYXJldC13aWR0aCBzb2xpZDtcbiAgYm9yZGVyLXJpZ2h0OiAkY2FyZXQtd2lkdGggc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1ib3R0b206IDA7XG4gIGJvcmRlci1sZWZ0OiAkY2FyZXQtd2lkdGggc29saWQgdHJhbnNwYXJlbnQ7XG59XG5cbkBtaXhpbiBjYXJldC11cCgpIHtcbiAgYm9yZGVyLXRvcDogMDtcbiAgYm9yZGVyLXJpZ2h0OiAkY2FyZXQtd2lkdGggc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1ib3R0b206ICRjYXJldC13aWR0aCBzb2xpZDtcbiAgYm9yZGVyLWxlZnQ6ICRjYXJldC13aWR0aCBzb2xpZCB0cmFuc3BhcmVudDtcbn1cblxuQG1peGluIGNhcmV0LXJpZ2h0KCkge1xuICBib3JkZXItdG9wOiAkY2FyZXQtd2lkdGggc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1yaWdodDogMDtcbiAgYm9yZGVyLWJvdHRvbTogJGNhcmV0LXdpZHRoIHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItbGVmdDogJGNhcmV0LXdpZHRoIHNvbGlkO1xufVxuXG5AbWl4aW4gY2FyZXQtbGVmdCgpIHtcbiAgYm9yZGVyLXRvcDogJGNhcmV0LXdpZHRoIHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItcmlnaHQ6ICRjYXJldC13aWR0aCBzb2xpZDtcbiAgYm9yZGVyLWJvdHRvbTogJGNhcmV0LXdpZHRoIHNvbGlkIHRyYW5zcGFyZW50O1xufVxuXG5AbWl4aW4gY2FyZXQoJGRpcmVjdGlvbjogZG93bikge1xuICBAaWYgJGVuYWJsZS1jYXJldCB7XG4gICAgJjo6YWZ0ZXIge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgbWFyZ2luLWxlZnQ6ICRjYXJldC1zcGFjaW5nO1xuICAgICAgdmVydGljYWwtYWxpZ246ICRjYXJldC12ZXJ0aWNhbC1hbGlnbjtcbiAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICBAaWYgJGRpcmVjdGlvbiA9PSBkb3duIHtcbiAgICAgICAgQGluY2x1ZGUgY2FyZXQtZG93bigpO1xuICAgICAgfSBAZWxzZSBpZiAkZGlyZWN0aW9uID09IHVwIHtcbiAgICAgICAgQGluY2x1ZGUgY2FyZXQtdXAoKTtcbiAgICAgIH0gQGVsc2UgaWYgJGRpcmVjdGlvbiA9PSByaWdodCB7XG4gICAgICAgIEBpbmNsdWRlIGNhcmV0LXJpZ2h0KCk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgQGlmICRkaXJlY3Rpb24gPT0gbGVmdCB7XG4gICAgICAmOjphZnRlciB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICB9XG5cbiAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAkY2FyZXQtc3BhY2luZztcbiAgICAgICAgdmVydGljYWwtYWxpZ246ICRjYXJldC12ZXJ0aWNhbC1hbGlnbjtcbiAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgQGluY2x1ZGUgY2FyZXQtbGVmdCgpO1xuICAgICAgfVxuICAgIH1cblxuICAgICY6ZW1wdHk6OmFmdGVyIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gSG9yaXpvbnRhbCBkaXZpZGVyc1xuLy9cbi8vIERpdmlkZXJzIChiYXNpY2FsbHkgYW4gaHIpIHdpdGhpbiBkcm9wZG93bnMgYW5kIG5hdiBsaXN0c1xuXG5AbWl4aW4gbmF2LWRpdmlkZXIoJGNvbG9yOiAkbmF2LWRpdmlkZXItY29sb3IsICRtYXJnaW4teTogJG5hdi1kaXZpZGVyLW1hcmdpbi15LCAkaWdub3JlLXdhcm5pbmc6IGZhbHNlKSB7XG4gIGhlaWdodDogMDtcbiAgbWFyZ2luOiAkbWFyZ2luLXkgMDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICRjb2xvcjtcbiAgQGluY2x1ZGUgZGVwcmVjYXRlKFwiVGhlIGBuYXYtZGl2aWRlcigpYCBtaXhpblwiLCBcInY0LjQuMFwiLCBcInY1XCIsICRpZ25vcmUtd2FybmluZyk7XG59XG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBzZWxlY3Rvci1uby1xdWFsaWZ5aW5nLXR5cGVcblxuLy8gTWFrZSB0aGUgZGl2IGJlaGF2ZSBsaWtlIGEgYnV0dG9uXG4uYnRuLWdyb3VwLFxuLmJ0bi1ncm91cC12ZXJ0aWNhbCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7IC8vIG1hdGNoIC5idG4gYWxpZ25tZW50IGdpdmVuIGZvbnQtc2l6ZSBoYWNrIGFib3ZlXG5cbiAgPiAuYnRuIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgZmxleDogMSAxIGF1dG87XG5cbiAgICAvLyBCcmluZyB0aGUgaG92ZXIsIGZvY3VzZWQsIGFuZCBcImFjdGl2ZVwiIGJ1dHRvbnMgdG8gdGhlIGZyb250IHRvIG92ZXJsYXlcbiAgICAvLyB0aGUgYm9yZGVycyBwcm9wZXJseVxuICAgIEBpbmNsdWRlIGhvdmVyKCkge1xuICAgICAgei1pbmRleDogMTtcbiAgICB9XG4gICAgJjpmb2N1cyxcbiAgICAmOmFjdGl2ZSxcbiAgICAmLmFjdGl2ZSB7XG4gICAgICB6LWluZGV4OiAxO1xuICAgIH1cbiAgfVxufVxuXG4vLyBPcHRpb25hbDogR3JvdXAgbXVsdGlwbGUgYnV0dG9uIGdyb3VwcyB0b2dldGhlciBmb3IgYSB0b29sYmFyXG4uYnRuLXRvb2xiYXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcblxuICAuaW5wdXQtZ3JvdXAge1xuICAgIHdpZHRoOiBhdXRvO1xuICB9XG59XG5cbi5idG4tZ3JvdXAge1xuICAvLyBQcmV2ZW50IGRvdWJsZSBib3JkZXJzIHdoZW4gYnV0dG9ucyBhcmUgbmV4dCB0byBlYWNoIG90aGVyXG4gID4gLmJ0bjpub3QoOmZpcnN0LWNoaWxkKSxcbiAgPiAuYnRuLWdyb3VwOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICBtYXJnaW4tbGVmdDogLSRidG4tYm9yZGVyLXdpZHRoO1xuICB9XG5cbiAgLy8gUmVzZXQgcm91bmRlZCBjb3JuZXJzXG4gID4gLmJ0bjpub3QoOmxhc3QtY2hpbGQpOm5vdCguZHJvcGRvd24tdG9nZ2xlKSxcbiAgPiAuYnRuLWdyb3VwOm5vdCg6bGFzdC1jaGlsZCkgPiAuYnRuIHtcbiAgICBAaW5jbHVkZSBib3JkZXItcmlnaHQtcmFkaXVzKDApO1xuICB9XG5cbiAgPiAuYnRuOm5vdCg6Zmlyc3QtY2hpbGQpLFxuICA+IC5idG4tZ3JvdXA6bm90KDpmaXJzdC1jaGlsZCkgPiAuYnRuIHtcbiAgICBAaW5jbHVkZSBib3JkZXItbGVmdC1yYWRpdXMoMCk7XG4gIH1cbn1cblxuLy8gU2l6aW5nXG4vL1xuLy8gUmVtaXggdGhlIGRlZmF1bHQgYnV0dG9uIHNpemluZyBjbGFzc2VzIGludG8gbmV3IG9uZXMgZm9yIGVhc2llciBtYW5pcHVsYXRpb24uXG5cbi5idG4tZ3JvdXAtc20gPiAuYnRuIHsgQGV4dGVuZCAuYnRuLXNtOyB9XG4uYnRuLWdyb3VwLWxnID4gLmJ0biB7IEBleHRlbmQgLmJ0bi1sZzsgfVxuXG5cbi8vXG4vLyBTcGxpdCBidXR0b24gZHJvcGRvd25zXG4vL1xuXG4uZHJvcGRvd24tdG9nZ2xlLXNwbGl0IHtcbiAgcGFkZGluZy1yaWdodDogJGJ0bi1wYWRkaW5nLXggKiAuNzU7XG4gIHBhZGRpbmctbGVmdDogJGJ0bi1wYWRkaW5nLXggKiAuNzU7XG5cbiAgJjo6YWZ0ZXIsXG4gIC5kcm9wdXAgJjo6YWZ0ZXIsXG4gIC5kcm9wcmlnaHQgJjo6YWZ0ZXIge1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICB9XG5cbiAgLmRyb3BsZWZ0ICY6OmJlZm9yZSB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICB9XG59XG5cbi5idG4tc20gKyAuZHJvcGRvd24tdG9nZ2xlLXNwbGl0IHtcbiAgcGFkZGluZy1yaWdodDogJGJ0bi1wYWRkaW5nLXgtc20gKiAuNzU7XG4gIHBhZGRpbmctbGVmdDogJGJ0bi1wYWRkaW5nLXgtc20gKiAuNzU7XG59XG5cbi5idG4tbGcgKyAuZHJvcGRvd24tdG9nZ2xlLXNwbGl0IHtcbiAgcGFkZGluZy1yaWdodDogJGJ0bi1wYWRkaW5nLXgtbGcgKiAuNzU7XG4gIHBhZGRpbmctbGVmdDogJGJ0bi1wYWRkaW5nLXgtbGcgKiAuNzU7XG59XG5cblxuLy8gVGhlIGNsaWNrYWJsZSBidXR0b24gZm9yIHRvZ2dsaW5nIHRoZSBtZW51XG4vLyBTZXQgdGhlIHNhbWUgaW5zZXQgc2hhZG93IGFzIHRoZSA6YWN0aXZlIHN0YXRlXG4uYnRuLWdyb3VwLnNob3cgLmRyb3Bkb3duLXRvZ2dsZSB7XG4gIEBpbmNsdWRlIGJveC1zaGFkb3coJGJ0bi1hY3RpdmUtYm94LXNoYWRvdyk7XG5cbiAgLy8gU2hvdyBubyBzaGFkb3cgZm9yIGAuYnRuLWxpbmtgIHNpbmNlIGl0IGhhcyBubyBvdGhlciBidXR0b24gc3R5bGVzLlxuICAmLmJ0bi1saW5rIHtcbiAgICBAaW5jbHVkZSBib3gtc2hhZG93KG5vbmUpO1xuICB9XG59XG5cblxuLy9cbi8vIFZlcnRpY2FsIGJ1dHRvbiBncm91cHNcbi8vXG5cbi5idG4tZ3JvdXAtdmVydGljYWwge1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG5cbiAgPiAuYnRuLFxuICA+IC5idG4tZ3JvdXAge1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG5cbiAgPiAuYnRuOm5vdCg6Zmlyc3QtY2hpbGQpLFxuICA+IC5idG4tZ3JvdXA6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgIG1hcmdpbi10b3A6IC0kYnRuLWJvcmRlci13aWR0aDtcbiAgfVxuXG4gIC8vIFJlc2V0IHJvdW5kZWQgY29ybmVyc1xuICA+IC5idG46bm90KDpsYXN0LWNoaWxkKTpub3QoLmRyb3Bkb3duLXRvZ2dsZSksXG4gID4gLmJ0bi1ncm91cDpub3QoOmxhc3QtY2hpbGQpID4gLmJ0biB7XG4gICAgQGluY2x1ZGUgYm9yZGVyLWJvdHRvbS1yYWRpdXMoMCk7XG4gIH1cblxuICA+IC5idG46bm90KDpmaXJzdC1jaGlsZCksXG4gID4gLmJ0bi1ncm91cDpub3QoOmZpcnN0LWNoaWxkKSA+IC5idG4ge1xuICAgIEBpbmNsdWRlIGJvcmRlci10b3AtcmFkaXVzKDApO1xuICB9XG59XG5cblxuLy8gQ2hlY2tib3ggYW5kIHJhZGlvIG9wdGlvbnNcbi8vXG4vLyBJbiBvcmRlciB0byBzdXBwb3J0IHRoZSBicm93c2VyJ3MgZm9ybSB2YWxpZGF0aW9uIGZlZWRiYWNrLCBwb3dlcmVkIGJ5IHRoZVxuLy8gYHJlcXVpcmVkYCBhdHRyaWJ1dGUsIHdlIGhhdmUgdG8gXCJoaWRlXCIgdGhlIGlucHV0cyB2aWEgYGNsaXBgLiBXZSBjYW5ub3QgdXNlXG4vLyBgZGlzcGxheTogbm9uZTtgIG9yIGB2aXNpYmlsaXR5OiBoaWRkZW47YCBhcyB0aGF0IGFsc28gaGlkZXMgdGhlIHBvcG92ZXIuXG4vLyBTaW1wbHkgdmlzdWFsbHkgaGlkaW5nIHRoZSBpbnB1dHMgdmlhIGBvcGFjaXR5YCB3b3VsZCBsZWF2ZSB0aGVtIGNsaWNrYWJsZSBpblxuLy8gY2VydGFpbiBjYXNlcyB3aGljaCBpcyBwcmV2ZW50ZWQgYnkgdXNpbmcgYGNsaXBgIGFuZCBgcG9pbnRlci1ldmVudHNgLlxuLy8gVGhpcyB3YXksIHdlIGVuc3VyZSBhIERPTSBlbGVtZW50IGlzIHZpc2libGUgdG8gcG9zaXRpb24gdGhlIHBvcG92ZXIgZnJvbS5cbi8vXG4vLyBTZWUgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL3B1bGwvMTI3OTQgYW5kXG4vLyBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvcHVsbC8xNDU1OSBmb3IgbW9yZSBpbmZvcm1hdGlvbi5cblxuLmJ0bi1ncm91cC10b2dnbGUge1xuICA+IC5idG4sXG4gID4gLmJ0bi1ncm91cCA+IC5idG4ge1xuICAgIG1hcmdpbi1ib3R0b206IDA7IC8vIE92ZXJyaWRlIGRlZmF1bHQgYDxsYWJlbD5gIHZhbHVlXG5cbiAgICBpbnB1dFt0eXBlPVwicmFkaW9cIl0sXG4gICAgaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGNsaXA6IHJlY3QoMCwgMCwgMCwgMCk7XG4gICAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICB9XG4gIH1cbn1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIHNlbGVjdG9yLW5vLXF1YWxpZnlpbmctdHlwZVxuXG4vL1xuLy8gQmFzZSBzdHlsZXNcbi8vXG5cbi5pbnB1dC1ncm91cCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwOyAvLyBGb3IgZm9ybSB2YWxpZGF0aW9uIGZlZWRiYWNrXG4gIGFsaWduLWl0ZW1zOiBzdHJldGNoO1xuICB3aWR0aDogMTAwJTtcblxuICA+IC5mb3JtLWNvbnRyb2wsXG4gID4gLmZvcm0tY29udHJvbC1wbGFpbnRleHQsXG4gID4gLmN1c3RvbS1zZWxlY3QsXG4gID4gLmN1c3RvbS1maWxlIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7IC8vIEZvciBmb2N1cyBzdGF0ZSdzIHotaW5kZXhcbiAgICBmbGV4OiAxIDEgMCU7XG4gICAgbWluLXdpZHRoOiAwOyAvLyBodHRwczovL3N0YWNrb3ZlcmZsb3cuY29tL3F1ZXN0aW9ucy8zNjI0NzE0MC93aHktZG9udC1mbGV4LWl0ZW1zLXNocmluay1wYXN0LWNvbnRlbnQtc2l6ZVxuICAgIG1hcmdpbi1ib3R0b206IDA7XG5cbiAgICArIC5mb3JtLWNvbnRyb2wsXG4gICAgKyAuY3VzdG9tLXNlbGVjdCxcbiAgICArIC5jdXN0b20tZmlsZSB7XG4gICAgICBtYXJnaW4tbGVmdDogLSRpbnB1dC1ib3JkZXItd2lkdGg7XG4gICAgfVxuICB9XG5cbiAgLy8gQnJpbmcgdGhlIFwiYWN0aXZlXCIgZm9ybSBjb250cm9sIHRvIHRoZSB0b3Agb2Ygc3Vycm91bmRpbmcgZWxlbWVudHNcbiAgPiAuZm9ybS1jb250cm9sOmZvY3VzLFxuICA+IC5jdXN0b20tc2VsZWN0OmZvY3VzLFxuICA+IC5jdXN0b20tZmlsZSAuY3VzdG9tLWZpbGUtaW5wdXQ6Zm9jdXMgfiAuY3VzdG9tLWZpbGUtbGFiZWwge1xuICAgIHotaW5kZXg6IDM7XG4gIH1cblxuICAvLyBCcmluZyB0aGUgY3VzdG9tIGZpbGUgaW5wdXQgYWJvdmUgdGhlIGxhYmVsXG4gID4gLmN1c3RvbS1maWxlIC5jdXN0b20tZmlsZS1pbnB1dDpmb2N1cyB7XG4gICAgei1pbmRleDogNDtcbiAgfVxuXG4gID4gLmZvcm0tY29udHJvbCxcbiAgPiAuY3VzdG9tLXNlbGVjdCB7XG4gICAgJjpub3QoOmxhc3QtY2hpbGQpIHsgQGluY2x1ZGUgYm9yZGVyLXJpZ2h0LXJhZGl1cygwKTsgfVxuICAgICY6bm90KDpmaXJzdC1jaGlsZCkgeyBAaW5jbHVkZSBib3JkZXItbGVmdC1yYWRpdXMoMCk7IH1cbiAgfVxuXG4gIC8vIEN1c3RvbSBmaWxlIGlucHV0cyBoYXZlIG1vcmUgY29tcGxleCBtYXJrdXAsIHRodXMgcmVxdWlyaW5nIGRpZmZlcmVudFxuICAvLyBib3JkZXItcmFkaXVzIG92ZXJyaWRlcy5cbiAgPiAuY3VzdG9tLWZpbGUge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcblxuICAgICY6bm90KDpsYXN0LWNoaWxkKSAuY3VzdG9tLWZpbGUtbGFiZWwsXG4gICAgJjpub3QoOmxhc3QtY2hpbGQpIC5jdXN0b20tZmlsZS1sYWJlbDo6YWZ0ZXIgeyBAaW5jbHVkZSBib3JkZXItcmlnaHQtcmFkaXVzKDApOyB9XG4gICAgJjpub3QoOmZpcnN0LWNoaWxkKSAuY3VzdG9tLWZpbGUtbGFiZWwgeyBAaW5jbHVkZSBib3JkZXItbGVmdC1yYWRpdXMoMCk7IH1cbiAgfVxufVxuXG5cbi8vIFByZXBlbmQgYW5kIGFwcGVuZFxuLy9cbi8vIFdoaWxlIGl0IHJlcXVpcmVzIG9uZSBleHRyYSBsYXllciBvZiBIVE1MIGZvciBlYWNoLCBkZWRpY2F0ZWQgcHJlcGVuZCBhbmRcbi8vIGFwcGVuZCBlbGVtZW50cyBhbGxvdyB1cyB0byAxKSBiZSBsZXNzIGNsZXZlciwgMikgc2ltcGxpZnkgb3VyIHNlbGVjdG9ycywgYW5kXG4vLyAzKSBzdXBwb3J0IEhUTUw1IGZvcm0gdmFsaWRhdGlvbi5cblxuLmlucHV0LWdyb3VwLXByZXBlbmQsXG4uaW5wdXQtZ3JvdXAtYXBwZW5kIHtcbiAgZGlzcGxheTogZmxleDtcblxuICAvLyBFbnN1cmUgYnV0dG9ucyBhcmUgYWx3YXlzIGFib3ZlIGlucHV0cyBmb3IgbW9yZSB2aXN1YWxseSBwbGVhc2luZyBib3JkZXJzLlxuICAvLyBUaGlzIGlzbid0IG5lZWRlZCBmb3IgYC5pbnB1dC1ncm91cC10ZXh0YCBzaW5jZSBpdCBzaGFyZXMgdGhlIHNhbWUgYm9yZGVyLWNvbG9yXG4gIC8vIGFzIG91ciBpbnB1dHMuXG4gIC5idG4ge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB6LWluZGV4OiAyO1xuXG4gICAgJjpmb2N1cyB7XG4gICAgICB6LWluZGV4OiAzO1xuICAgIH1cbiAgfVxuXG4gIC5idG4gKyAuYnRuLFxuICAuYnRuICsgLmlucHV0LWdyb3VwLXRleHQsXG4gIC5pbnB1dC1ncm91cC10ZXh0ICsgLmlucHV0LWdyb3VwLXRleHQsXG4gIC5pbnB1dC1ncm91cC10ZXh0ICsgLmJ0biB7XG4gICAgbWFyZ2luLWxlZnQ6IC0kaW5wdXQtYm9yZGVyLXdpZHRoO1xuICB9XG59XG5cbi5pbnB1dC1ncm91cC1wcmVwZW5kIHsgbWFyZ2luLXJpZ2h0OiAtJGlucHV0LWJvcmRlci13aWR0aDsgfVxuLmlucHV0LWdyb3VwLWFwcGVuZCB7IG1hcmdpbi1sZWZ0OiAtJGlucHV0LWJvcmRlci13aWR0aDsgfVxuXG5cbi8vIFRleHR1YWwgYWRkb25zXG4vL1xuLy8gU2VydmVzIGFzIGEgY2F0Y2gtYWxsIGVsZW1lbnQgZm9yIGFueSB0ZXh0IG9yIHJhZGlvL2NoZWNrYm94IGlucHV0IHlvdSB3aXNoXG4vLyB0byBwcmVwZW5kIG9yIGFwcGVuZCB0byBhbiBpbnB1dC5cblxuLmlucHV0LWdyb3VwLXRleHQge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBwYWRkaW5nOiAkaW5wdXQtcGFkZGluZy15ICRpbnB1dC1wYWRkaW5nLXg7XG4gIG1hcmdpbi1ib3R0b206IDA7IC8vIEFsbG93IHVzZSBvZiA8bGFiZWw+IGVsZW1lbnRzIGJ5IG92ZXJyaWRpbmcgb3VyIGRlZmF1bHQgbWFyZ2luLWJvdHRvbVxuICBAaW5jbHVkZSBmb250LXNpemUoJGlucHV0LWZvbnQtc2l6ZSk7IC8vIE1hdGNoIGlucHV0c1xuICBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LW5vcm1hbDtcbiAgbGluZS1oZWlnaHQ6ICRpbnB1dC1saW5lLWhlaWdodDtcbiAgY29sb3I6ICRpbnB1dC1ncm91cC1hZGRvbi1jb2xvcjtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkaW5wdXQtZ3JvdXAtYWRkb24tYmc7XG4gIGJvcmRlcjogJGlucHV0LWJvcmRlci13aWR0aCBzb2xpZCAkaW5wdXQtZ3JvdXAtYWRkb24tYm9yZGVyLWNvbG9yO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRpbnB1dC1ib3JkZXItcmFkaXVzKTtcblxuICAvLyBOdWtlIGRlZmF1bHQgbWFyZ2lucyBmcm9tIGNoZWNrYm94ZXMgYW5kIHJhZGlvcyB0byB2ZXJ0aWNhbGx5IGNlbnRlciB3aXRoaW4uXG4gIGlucHV0W3R5cGU9XCJyYWRpb1wiXSxcbiAgaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdIHtcbiAgICBtYXJnaW4tdG9wOiAwO1xuICB9XG59XG5cblxuLy8gU2l6aW5nXG4vL1xuLy8gUmVtaXggdGhlIGRlZmF1bHQgZm9ybSBjb250cm9sIHNpemluZyBjbGFzc2VzIGludG8gbmV3IG9uZXMgZm9yIGVhc2llclxuLy8gbWFuaXB1bGF0aW9uLlxuXG4uaW5wdXQtZ3JvdXAtbGcgPiAuZm9ybS1jb250cm9sOm5vdCh0ZXh0YXJlYSksXG4uaW5wdXQtZ3JvdXAtbGcgPiAuY3VzdG9tLXNlbGVjdCB7XG4gIGhlaWdodDogJGlucHV0LWhlaWdodC1sZztcbn1cblxuLmlucHV0LWdyb3VwLWxnID4gLmZvcm0tY29udHJvbCxcbi5pbnB1dC1ncm91cC1sZyA+IC5jdXN0b20tc2VsZWN0LFxuLmlucHV0LWdyb3VwLWxnID4gLmlucHV0LWdyb3VwLXByZXBlbmQgPiAuaW5wdXQtZ3JvdXAtdGV4dCxcbi5pbnB1dC1ncm91cC1sZyA+IC5pbnB1dC1ncm91cC1hcHBlbmQgPiAuaW5wdXQtZ3JvdXAtdGV4dCxcbi5pbnB1dC1ncm91cC1sZyA+IC5pbnB1dC1ncm91cC1wcmVwZW5kID4gLmJ0bixcbi5pbnB1dC1ncm91cC1sZyA+IC5pbnB1dC1ncm91cC1hcHBlbmQgPiAuYnRuIHtcbiAgcGFkZGluZzogJGlucHV0LXBhZGRpbmcteS1sZyAkaW5wdXQtcGFkZGluZy14LWxnO1xuICBAaW5jbHVkZSBmb250LXNpemUoJGlucHV0LWZvbnQtc2l6ZS1sZyk7XG4gIGxpbmUtaGVpZ2h0OiAkaW5wdXQtbGluZS1oZWlnaHQtbGc7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGlucHV0LWJvcmRlci1yYWRpdXMtbGcpO1xufVxuXG4uaW5wdXQtZ3JvdXAtc20gPiAuZm9ybS1jb250cm9sOm5vdCh0ZXh0YXJlYSksXG4uaW5wdXQtZ3JvdXAtc20gPiAuY3VzdG9tLXNlbGVjdCB7XG4gIGhlaWdodDogJGlucHV0LWhlaWdodC1zbTtcbn1cblxuLmlucHV0LWdyb3VwLXNtID4gLmZvcm0tY29udHJvbCxcbi5pbnB1dC1ncm91cC1zbSA+IC5jdXN0b20tc2VsZWN0LFxuLmlucHV0LWdyb3VwLXNtID4gLmlucHV0LWdyb3VwLXByZXBlbmQgPiAuaW5wdXQtZ3JvdXAtdGV4dCxcbi5pbnB1dC1ncm91cC1zbSA+IC5pbnB1dC1ncm91cC1hcHBlbmQgPiAuaW5wdXQtZ3JvdXAtdGV4dCxcbi5pbnB1dC1ncm91cC1zbSA+IC5pbnB1dC1ncm91cC1wcmVwZW5kID4gLmJ0bixcbi5pbnB1dC1ncm91cC1zbSA+IC5pbnB1dC1ncm91cC1hcHBlbmQgPiAuYnRuIHtcbiAgcGFkZGluZzogJGlucHV0LXBhZGRpbmcteS1zbSAkaW5wdXQtcGFkZGluZy14LXNtO1xuICBAaW5jbHVkZSBmb250LXNpemUoJGlucHV0LWZvbnQtc2l6ZS1zbSk7XG4gIGxpbmUtaGVpZ2h0OiAkaW5wdXQtbGluZS1oZWlnaHQtc207XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGlucHV0LWJvcmRlci1yYWRpdXMtc20pO1xufVxuXG4uaW5wdXQtZ3JvdXAtbGcgPiAuY3VzdG9tLXNlbGVjdCxcbi5pbnB1dC1ncm91cC1zbSA+IC5jdXN0b20tc2VsZWN0IHtcbiAgcGFkZGluZy1yaWdodDogJGN1c3RvbS1zZWxlY3QtcGFkZGluZy14ICsgJGN1c3RvbS1zZWxlY3QtaW5kaWNhdG9yLXBhZGRpbmc7XG59XG5cblxuLy8gUHJlcGVuZCBhbmQgYXBwZW5kIHJvdW5kZWQgY29ybmVyc1xuLy9cbi8vIFRoZXNlIHJ1bGVzZXRzIG11c3QgY29tZSBhZnRlciB0aGUgc2l6aW5nIG9uZXMgdG8gcHJvcGVybHkgb3ZlcnJpZGUgc20gYW5kIGxnXG4vLyBib3JkZXItcmFkaXVzIHZhbHVlcyB3aGVuIGV4dGVuZGluZy4gVGhleSdyZSBtb3JlIHNwZWNpZmljIHRoYW4gd2UnZCBsaWtlXG4vLyB3aXRoIHRoZSBgLmlucHV0LWdyb3VwID5gIHBhcnQsIGJ1dCB3aXRob3V0IGl0LCB3ZSBjYW5ub3Qgb3ZlcnJpZGUgdGhlIHNpemluZy5cblxuXG4uaW5wdXQtZ3JvdXAgPiAuaW5wdXQtZ3JvdXAtcHJlcGVuZCA+IC5idG4sXG4uaW5wdXQtZ3JvdXAgPiAuaW5wdXQtZ3JvdXAtcHJlcGVuZCA+IC5pbnB1dC1ncm91cC10ZXh0LFxuLmlucHV0LWdyb3VwID4gLmlucHV0LWdyb3VwLWFwcGVuZDpub3QoOmxhc3QtY2hpbGQpID4gLmJ0bixcbi5pbnB1dC1ncm91cCA+IC5pbnB1dC1ncm91cC1hcHBlbmQ6bm90KDpsYXN0LWNoaWxkKSA+IC5pbnB1dC1ncm91cC10ZXh0LFxuLmlucHV0LWdyb3VwID4gLmlucHV0LWdyb3VwLWFwcGVuZDpsYXN0LWNoaWxkID4gLmJ0bjpub3QoOmxhc3QtY2hpbGQpOm5vdCguZHJvcGRvd24tdG9nZ2xlKSxcbi5pbnB1dC1ncm91cCA+IC5pbnB1dC1ncm91cC1hcHBlbmQ6bGFzdC1jaGlsZCA+IC5pbnB1dC1ncm91cC10ZXh0Om5vdCg6bGFzdC1jaGlsZCkge1xuICBAaW5jbHVkZSBib3JkZXItcmlnaHQtcmFkaXVzKDApO1xufVxuXG4uaW5wdXQtZ3JvdXAgPiAuaW5wdXQtZ3JvdXAtYXBwZW5kID4gLmJ0bixcbi5pbnB1dC1ncm91cCA+IC5pbnB1dC1ncm91cC1hcHBlbmQgPiAuaW5wdXQtZ3JvdXAtdGV4dCxcbi5pbnB1dC1ncm91cCA+IC5pbnB1dC1ncm91cC1wcmVwZW5kOm5vdCg6Zmlyc3QtY2hpbGQpID4gLmJ0bixcbi5pbnB1dC1ncm91cCA+IC5pbnB1dC1ncm91cC1wcmVwZW5kOm5vdCg6Zmlyc3QtY2hpbGQpID4gLmlucHV0LWdyb3VwLXRleHQsXG4uaW5wdXQtZ3JvdXAgPiAuaW5wdXQtZ3JvdXAtcHJlcGVuZDpmaXJzdC1jaGlsZCA+IC5idG46bm90KDpmaXJzdC1jaGlsZCksXG4uaW5wdXQtZ3JvdXAgPiAuaW5wdXQtZ3JvdXAtcHJlcGVuZDpmaXJzdC1jaGlsZCA+IC5pbnB1dC1ncm91cC10ZXh0Om5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgQGluY2x1ZGUgYm9yZGVyLWxlZnQtcmFkaXVzKDApO1xufVxuIiwiLy8gRW1iZWRkZWQgaWNvbnMgZnJvbSBPcGVuIEljb25pYy5cbi8vIFJlbGVhc2VkIHVuZGVyIE1JVCBhbmQgY29weXJpZ2h0IDIwMTQgV2F5YnVyeS5cbi8vIGh0dHBzOi8vdXNlaWNvbmljLmNvbS9vcGVuXG5cblxuLy8gQ2hlY2tib3hlcyBhbmQgcmFkaW9zXG4vL1xuLy8gQmFzZSBjbGFzcyB0YWtlcyBjYXJlIG9mIGFsbCB0aGUga2V5IGJlaGF2aW9yYWwgYXNwZWN0cy5cblxuLmN1c3RvbS1jb250cm9sIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWluLWhlaWdodDogJGZvbnQtc2l6ZS1iYXNlICogJGxpbmUtaGVpZ2h0LWJhc2U7XG4gIHBhZGRpbmctbGVmdDogJGN1c3RvbS1jb250cm9sLWd1dHRlciArICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3Itc2l6ZTtcbn1cblxuLmN1c3RvbS1jb250cm9sLWlubGluZSB7XG4gIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICBtYXJnaW4tcmlnaHQ6ICRjdXN0b20tY29udHJvbC1zcGFjZXIteDtcbn1cblxuLmN1c3RvbS1jb250cm9sLWlucHV0IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiAwO1xuICB6LWluZGV4OiAtMTsgLy8gUHV0IHRoZSBpbnB1dCBiZWhpbmQgdGhlIGxhYmVsIHNvIGl0IGRvZXNuJ3Qgb3ZlcmxheSB0ZXh0XG4gIHdpZHRoOiAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLXNpemU7XG4gIGhlaWdodDogKCRmb250LXNpemUtYmFzZSAqICRsaW5lLWhlaWdodC1iYXNlICsgJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1zaXplKSAvIDI7XG4gIG9wYWNpdHk6IDA7XG5cbiAgJjpjaGVja2VkIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsOjpiZWZvcmUge1xuICAgIGNvbG9yOiAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWNoZWNrZWQtY29sb3I7XG4gICAgYm9yZGVyLWNvbG9yOiAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWNoZWNrZWQtYm9yZGVyLWNvbG9yO1xuICAgIEBpbmNsdWRlIGdyYWRpZW50LWJnKCRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItY2hlY2tlZC1iZyk7XG4gICAgQGluY2x1ZGUgYm94LXNoYWRvdygkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWNoZWNrZWQtYm94LXNoYWRvdyk7XG4gIH1cblxuICAmOmZvY3VzIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsOjpiZWZvcmUge1xuICAgIC8vIHRoZSBtaXhpbiBpcyBub3QgdXNlZCBoZXJlIHRvIG1ha2Ugc3VyZSB0aGVyZSBpcyBmZWVkYmFja1xuICAgIEBpZiAkZW5hYmxlLXNoYWRvd3Mge1xuICAgICAgYm94LXNoYWRvdzogJGlucHV0LWJveC1zaGFkb3csICRpbnB1dC1mb2N1cy1ib3gtc2hhZG93O1xuICAgIH0gQGVsc2Uge1xuICAgICAgYm94LXNoYWRvdzogJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1mb2N1cy1ib3gtc2hhZG93O1xuICAgIH1cbiAgfVxuXG4gICY6Zm9jdXM6bm90KDpjaGVja2VkKSB+IC5jdXN0b20tY29udHJvbC1sYWJlbDo6YmVmb3JlIHtcbiAgICBib3JkZXItY29sb3I6ICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItZm9jdXMtYm9yZGVyLWNvbG9yO1xuICB9XG5cbiAgJjpub3QoOmRpc2FibGVkKTphY3RpdmUgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSB7XG4gICAgY29sb3I6ICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItYWN0aXZlLWNvbG9yO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItYWN0aXZlLWJnO1xuICAgIGJvcmRlci1jb2xvcjogJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1hY3RpdmUtYm9yZGVyLWNvbG9yO1xuICAgIEBpbmNsdWRlIGJveC1zaGFkb3coJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1hY3RpdmUtYm94LXNoYWRvdyk7XG4gIH1cblxuICAvLyBVc2UgW2Rpc2FibGVkXSBhbmQgOmRpc2FibGVkIHRvIHdvcmsgYXJvdW5kIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMjgyNDdcbiAgJltkaXNhYmxlZF0sXG4gICY6ZGlzYWJsZWQge1xuICAgIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsIHtcbiAgICAgIGNvbG9yOiAkY3VzdG9tLWNvbnRyb2wtbGFiZWwtZGlzYWJsZWQtY29sb3I7XG5cbiAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItZGlzYWJsZWQtYmc7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8vIEN1c3RvbSBjb250cm9sIGluZGljYXRvcnNcbi8vXG4vLyBCdWlsZCB0aGUgY3VzdG9tIGNvbnRyb2xzIG91dCBvZiBwc2V1ZG8tZWxlbWVudHMuXG5cbi5jdXN0b20tY29udHJvbC1sYWJlbCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgY29sb3I6ICRjdXN0b20tY29udHJvbC1sYWJlbC1jb2xvcjtcbiAgdmVydGljYWwtYWxpZ246IHRvcDtcbiAgY3Vyc29yOiAkY3VzdG9tLWNvbnRyb2wtY3Vyc29yO1xuXG4gIC8vIEJhY2tncm91bmQtY29sb3IgYW5kICh3aGVuIGVuYWJsZWQpIGdyYWRpZW50XG4gICY6OmJlZm9yZSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogKCRmb250LXNpemUtYmFzZSAqICRsaW5lLWhlaWdodC1iYXNlIC0gJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1zaXplKSAvIDI7XG4gICAgbGVmdDogLSgkY3VzdG9tLWNvbnRyb2wtZ3V0dGVyICsgJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1zaXplKTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1zaXplO1xuICAgIGhlaWdodDogJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1zaXplO1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1iZztcbiAgICBib3JkZXI6ICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItYm9yZGVyLWNvbG9yIHNvbGlkICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItYm9yZGVyLXdpZHRoO1xuICAgIEBpbmNsdWRlIGJveC1zaGFkb3coJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1ib3gtc2hhZG93KTtcbiAgfVxuXG4gIC8vIEZvcmVncm91bmQgKGljb24pXG4gICY6OmFmdGVyIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAoJGZvbnQtc2l6ZS1iYXNlICogJGxpbmUtaGVpZ2h0LWJhc2UgLSAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLXNpemUpIC8gMjtcbiAgICBsZWZ0OiAtKCRjdXN0b20tY29udHJvbC1ndXR0ZXIgKyAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLXNpemUpO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLXNpemU7XG4gICAgaGVpZ2h0OiAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLXNpemU7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBiYWNrZ3JvdW5kOiBuby1yZXBlYXQgNTAlIC8gI3skY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWJnLXNpemV9O1xuICB9XG59XG5cblxuLy8gQ2hlY2tib3hlc1xuLy9cbi8vIFR3ZWFrIGp1c3QgYSBmZXcgdGhpbmdzIGZvciBjaGVja2JveGVzLlxuXG4uY3VzdG9tLWNoZWNrYm94IHtcbiAgLmN1c3RvbS1jb250cm9sLWxhYmVsOjpiZWZvcmUge1xuICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGN1c3RvbS1jaGVja2JveC1pbmRpY2F0b3ItYm9yZGVyLXJhZGl1cyk7XG4gIH1cblxuICAuY3VzdG9tLWNvbnRyb2wtaW5wdXQ6Y2hlY2tlZCB+IC5jdXN0b20tY29udHJvbC1sYWJlbCB7XG4gICAgJjo6YWZ0ZXIge1xuICAgICAgYmFja2dyb3VuZC1pbWFnZTogZXNjYXBlLXN2ZygkY3VzdG9tLWNoZWNrYm94LWluZGljYXRvci1pY29uLWNoZWNrZWQpO1xuICAgIH1cbiAgfVxuXG4gIC5jdXN0b20tY29udHJvbC1pbnB1dDppbmRldGVybWluYXRlIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsIHtcbiAgICAmOjpiZWZvcmUge1xuICAgICAgYm9yZGVyLWNvbG9yOiAkY3VzdG9tLWNoZWNrYm94LWluZGljYXRvci1pbmRldGVybWluYXRlLWJvcmRlci1jb2xvcjtcbiAgICAgIEBpbmNsdWRlIGdyYWRpZW50LWJnKCRjdXN0b20tY2hlY2tib3gtaW5kaWNhdG9yLWluZGV0ZXJtaW5hdGUtYmcpO1xuICAgICAgQGluY2x1ZGUgYm94LXNoYWRvdygkY3VzdG9tLWNoZWNrYm94LWluZGljYXRvci1pbmRldGVybWluYXRlLWJveC1zaGFkb3cpO1xuICAgIH1cbiAgICAmOjphZnRlciB7XG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiBlc2NhcGUtc3ZnKCRjdXN0b20tY2hlY2tib3gtaW5kaWNhdG9yLWljb24taW5kZXRlcm1pbmF0ZSk7XG4gICAgfVxuICB9XG5cbiAgLmN1c3RvbS1jb250cm9sLWlucHV0OmRpc2FibGVkIHtcbiAgICAmOmNoZWNrZWQgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWNoZWNrZWQtZGlzYWJsZWQtYmc7XG4gICAgfVxuICAgICY6aW5kZXRlcm1pbmF0ZSB+IC5jdXN0b20tY29udHJvbC1sYWJlbDo6YmVmb3JlIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItY2hlY2tlZC1kaXNhYmxlZC1iZztcbiAgICB9XG4gIH1cbn1cblxuLy8gUmFkaW9zXG4vL1xuLy8gVHdlYWsganVzdCBhIGZldyB0aGluZ3MgZm9yIHJhZGlvcy5cblxuLmN1c3RvbS1yYWRpbyB7XG4gIC5jdXN0b20tY29udHJvbC1sYWJlbDo6YmVmb3JlIHtcbiAgICAvLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgcHJvcGVydHktYmxhY2tsaXN0XG4gICAgYm9yZGVyLXJhZGl1czogJGN1c3RvbS1yYWRpby1pbmRpY2F0b3ItYm9yZGVyLXJhZGl1cztcbiAgfVxuXG4gIC5jdXN0b20tY29udHJvbC1pbnB1dDpjaGVja2VkIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsIHtcbiAgICAmOjphZnRlciB7XG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiBlc2NhcGUtc3ZnKCRjdXN0b20tcmFkaW8taW5kaWNhdG9yLWljb24tY2hlY2tlZCk7XG4gICAgfVxuICB9XG5cbiAgLmN1c3RvbS1jb250cm9sLWlucHV0OmRpc2FibGVkIHtcbiAgICAmOmNoZWNrZWQgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWNoZWNrZWQtZGlzYWJsZWQtYmc7XG4gICAgfVxuICB9XG59XG5cblxuLy8gc3dpdGNoZXNcbi8vXG4vLyBUd2VhayBhIGZldyB0aGluZ3MgZm9yIHN3aXRjaGVzXG5cbi5jdXN0b20tc3dpdGNoIHtcbiAgcGFkZGluZy1sZWZ0OiAkY3VzdG9tLXN3aXRjaC13aWR0aCArICRjdXN0b20tY29udHJvbC1ndXR0ZXI7XG5cbiAgLmN1c3RvbS1jb250cm9sLWxhYmVsIHtcbiAgICAmOjpiZWZvcmUge1xuICAgICAgbGVmdDogLSgkY3VzdG9tLXN3aXRjaC13aWR0aCArICRjdXN0b20tY29udHJvbC1ndXR0ZXIpO1xuICAgICAgd2lkdGg6ICRjdXN0b20tc3dpdGNoLXdpZHRoO1xuICAgICAgcG9pbnRlci1ldmVudHM6IGFsbDtcbiAgICAgIC8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBwcm9wZXJ0eS1ibGFja2xpc3RcbiAgICAgIGJvcmRlci1yYWRpdXM6ICRjdXN0b20tc3dpdGNoLWluZGljYXRvci1ib3JkZXItcmFkaXVzO1xuICAgIH1cblxuICAgICY6OmFmdGVyIHtcbiAgICAgIHRvcDogYWRkKCgkZm9udC1zaXplLWJhc2UgKiAkbGluZS1oZWlnaHQtYmFzZSAtICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3Itc2l6ZSkgLyAyLCAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWJvcmRlci13aWR0aCAqIDIpO1xuICAgICAgbGVmdDogYWRkKC0oJGN1c3RvbS1zd2l0Y2gtd2lkdGggKyAkY3VzdG9tLWNvbnRyb2wtZ3V0dGVyKSwgJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1ib3JkZXItd2lkdGggKiAyKTtcbiAgICAgIHdpZHRoOiAkY3VzdG9tLXN3aXRjaC1pbmRpY2F0b3Itc2l6ZTtcbiAgICAgIGhlaWdodDogJGN1c3RvbS1zd2l0Y2gtaW5kaWNhdG9yLXNpemU7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWJvcmRlci1jb2xvcjtcbiAgICAgIC8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBwcm9wZXJ0eS1ibGFja2xpc3RcbiAgICAgIGJvcmRlci1yYWRpdXM6ICRjdXN0b20tc3dpdGNoLWluZGljYXRvci1ib3JkZXItcmFkaXVzO1xuICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbih0cmFuc2Zvcm0gLjE1cyBlYXNlLWluLW91dCwgJGN1c3RvbS1mb3Jtcy10cmFuc2l0aW9uKTtcbiAgICB9XG4gIH1cblxuICAuY3VzdG9tLWNvbnRyb2wtaW5wdXQ6Y2hlY2tlZCB+IC5jdXN0b20tY29udHJvbC1sYWJlbCB7XG4gICAgJjo6YWZ0ZXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1iZztcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgkY3VzdG9tLXN3aXRjaC13aWR0aCAtICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3Itc2l6ZSk7XG4gICAgfVxuICB9XG5cbiAgLmN1c3RvbS1jb250cm9sLWlucHV0OmRpc2FibGVkIHtcbiAgICAmOmNoZWNrZWQgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWNoZWNrZWQtZGlzYWJsZWQtYmc7XG4gICAgfVxuICB9XG59XG5cblxuLy8gU2VsZWN0XG4vL1xuLy8gUmVwbGFjZXMgdGhlIGJyb3dzZXIgZGVmYXVsdCBzZWxlY3Qgd2l0aCBhIGN1c3RvbSBvbmUsIG1vc3RseSBwdWxsZWQgZnJvbVxuLy8gaHR0cHM6Ly9wcmltZXIuZ2l0aHViLmlvLy5cbi8vXG5cbi5jdXN0b20tc2VsZWN0IHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAkY3VzdG9tLXNlbGVjdC1oZWlnaHQ7XG4gIHBhZGRpbmc6ICRjdXN0b20tc2VsZWN0LXBhZGRpbmcteSAoJGN1c3RvbS1zZWxlY3QtcGFkZGluZy14ICsgJGN1c3RvbS1zZWxlY3QtaW5kaWNhdG9yLXBhZGRpbmcpICRjdXN0b20tc2VsZWN0LXBhZGRpbmcteSAkY3VzdG9tLXNlbGVjdC1wYWRkaW5nLXg7XG4gIGZvbnQtZmFtaWx5OiAkY3VzdG9tLXNlbGVjdC1mb250LWZhbWlseTtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRjdXN0b20tc2VsZWN0LWZvbnQtc2l6ZSk7XG4gIGZvbnQtd2VpZ2h0OiAkY3VzdG9tLXNlbGVjdC1mb250LXdlaWdodDtcbiAgbGluZS1oZWlnaHQ6ICRjdXN0b20tc2VsZWN0LWxpbmUtaGVpZ2h0O1xuICBjb2xvcjogJGN1c3RvbS1zZWxlY3QtY29sb3I7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIGJhY2tncm91bmQ6ICRjdXN0b20tc2VsZWN0LWJnICRjdXN0b20tc2VsZWN0LWJhY2tncm91bmQ7XG4gIGJvcmRlcjogJGN1c3RvbS1zZWxlY3QtYm9yZGVyLXdpZHRoIHNvbGlkICRjdXN0b20tc2VsZWN0LWJvcmRlci1jb2xvcjtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkY3VzdG9tLXNlbGVjdC1ib3JkZXItcmFkaXVzLCAwKTtcbiAgQGluY2x1ZGUgYm94LXNoYWRvdygkY3VzdG9tLXNlbGVjdC1ib3gtc2hhZG93KTtcbiAgYXBwZWFyYW5jZTogbm9uZTtcblxuICAmOmZvY3VzIHtcbiAgICBib3JkZXItY29sb3I6ICRjdXN0b20tc2VsZWN0LWZvY3VzLWJvcmRlci1jb2xvcjtcbiAgICBvdXRsaW5lOiAwO1xuICAgIEBpZiAkZW5hYmxlLXNoYWRvd3Mge1xuICAgICAgYm94LXNoYWRvdzogJGN1c3RvbS1zZWxlY3QtYm94LXNoYWRvdywgJGN1c3RvbS1zZWxlY3QtZm9jdXMtYm94LXNoYWRvdztcbiAgICB9IEBlbHNlIHtcbiAgICAgIGJveC1zaGFkb3c6ICRjdXN0b20tc2VsZWN0LWZvY3VzLWJveC1zaGFkb3c7XG4gICAgfVxuXG4gICAgJjo6LW1zLXZhbHVlIHtcbiAgICAgIC8vIEZvciB2aXN1YWwgY29uc2lzdGVuY3kgd2l0aCBvdGhlciBwbGF0Zm9ybXMvYnJvd3NlcnMsXG4gICAgICAvLyBzdXBwcmVzcyB0aGUgZGVmYXVsdCB3aGl0ZSB0ZXh0IG9uIGJsdWUgYmFja2dyb3VuZCBoaWdobGlnaHQgZ2l2ZW4gdG9cbiAgICAgIC8vIHRoZSBzZWxlY3RlZCBvcHRpb24gdGV4dCB3aGVuIHRoZSAoc3RpbGwgY2xvc2VkKSA8c2VsZWN0PiByZWNlaXZlcyBmb2N1c1xuICAgICAgLy8gaW4gSUUgYW5kICh1bmRlciBjZXJ0YWluIGNvbmRpdGlvbnMpIEVkZ2UuXG4gICAgICAvLyBTZWUgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8xOTM5OC5cbiAgICAgIGNvbG9yOiAkaW5wdXQtY29sb3I7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaW5wdXQtYmc7XG4gICAgfVxuICB9XG5cbiAgJlttdWx0aXBsZV0sXG4gICZbc2l6ZV06bm90KFtzaXplPVwiMVwiXSkge1xuICAgIGhlaWdodDogYXV0bztcbiAgICBwYWRkaW5nLXJpZ2h0OiAkY3VzdG9tLXNlbGVjdC1wYWRkaW5nLXg7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTtcbiAgfVxuXG4gICY6ZGlzYWJsZWQge1xuICAgIGNvbG9yOiAkY3VzdG9tLXNlbGVjdC1kaXNhYmxlZC1jb2xvcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY3VzdG9tLXNlbGVjdC1kaXNhYmxlZC1iZztcbiAgfVxuXG4gIC8vIEhpZGVzIHRoZSBkZWZhdWx0IGNhcmV0IGluIElFMTFcbiAgJjo6LW1zLWV4cGFuZCB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuXG4gIC8vIFJlbW92ZSBvdXRsaW5lIGZyb20gc2VsZWN0IGJveCBpbiBGRlxuICAmOi1tb3otZm9jdXNyaW5nIHtcbiAgICBjb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgdGV4dC1zaGFkb3c6IDAgMCAwICRjdXN0b20tc2VsZWN0LWNvbG9yO1xuICB9XG59XG5cbi5jdXN0b20tc2VsZWN0LXNtIHtcbiAgaGVpZ2h0OiAkY3VzdG9tLXNlbGVjdC1oZWlnaHQtc207XG4gIHBhZGRpbmctdG9wOiAkY3VzdG9tLXNlbGVjdC1wYWRkaW5nLXktc207XG4gIHBhZGRpbmctYm90dG9tOiAkY3VzdG9tLXNlbGVjdC1wYWRkaW5nLXktc207XG4gIHBhZGRpbmctbGVmdDogJGN1c3RvbS1zZWxlY3QtcGFkZGluZy14LXNtO1xuICBAaW5jbHVkZSBmb250LXNpemUoJGN1c3RvbS1zZWxlY3QtZm9udC1zaXplLXNtKTtcbn1cblxuLmN1c3RvbS1zZWxlY3QtbGcge1xuICBoZWlnaHQ6ICRjdXN0b20tc2VsZWN0LWhlaWdodC1sZztcbiAgcGFkZGluZy10b3A6ICRjdXN0b20tc2VsZWN0LXBhZGRpbmcteS1sZztcbiAgcGFkZGluZy1ib3R0b206ICRjdXN0b20tc2VsZWN0LXBhZGRpbmcteS1sZztcbiAgcGFkZGluZy1sZWZ0OiAkY3VzdG9tLXNlbGVjdC1wYWRkaW5nLXgtbGc7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkY3VzdG9tLXNlbGVjdC1mb250LXNpemUtbGcpO1xufVxuXG5cbi8vIEZpbGVcbi8vXG4vLyBDdXN0b20gZmlsZSBpbnB1dC5cblxuLmN1c3RvbS1maWxlIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6ICRjdXN0b20tZmlsZS1oZWlnaHQ7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG5cbi5jdXN0b20tZmlsZS1pbnB1dCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgei1pbmRleDogMjtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogJGN1c3RvbS1maWxlLWhlaWdodDtcbiAgbWFyZ2luOiAwO1xuICBvcGFjaXR5OiAwO1xuXG4gICY6Zm9jdXMgfiAuY3VzdG9tLWZpbGUtbGFiZWwge1xuICAgIGJvcmRlci1jb2xvcjogJGN1c3RvbS1maWxlLWZvY3VzLWJvcmRlci1jb2xvcjtcbiAgICBib3gtc2hhZG93OiAkY3VzdG9tLWZpbGUtZm9jdXMtYm94LXNoYWRvdztcbiAgfVxuXG4gIC8vIFVzZSBbZGlzYWJsZWRdIGFuZCA6ZGlzYWJsZWQgdG8gd29yayBhcm91bmQgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8yODI0N1xuICAmW2Rpc2FibGVkXSB+IC5jdXN0b20tZmlsZS1sYWJlbCxcbiAgJjpkaXNhYmxlZCB+IC5jdXN0b20tZmlsZS1sYWJlbCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGN1c3RvbS1maWxlLWRpc2FibGVkLWJnO1xuICB9XG5cbiAgQGVhY2ggJGxhbmcsICR2YWx1ZSBpbiAkY3VzdG9tLWZpbGUtdGV4dCB7XG4gICAgJjpsYW5nKCN7JGxhbmd9KSB+IC5jdXN0b20tZmlsZS1sYWJlbDo6YWZ0ZXIge1xuICAgICAgY29udGVudDogJHZhbHVlO1xuICAgIH1cbiAgfVxuXG4gIH4gLmN1c3RvbS1maWxlLWxhYmVsW2RhdGEtYnJvd3NlXTo6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IGF0dHIoZGF0YS1icm93c2UpO1xuICB9XG59XG5cbi5jdXN0b20tZmlsZS1sYWJlbCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICByaWdodDogMDtcbiAgbGVmdDogMDtcbiAgei1pbmRleDogMTtcbiAgaGVpZ2h0OiAkY3VzdG9tLWZpbGUtaGVpZ2h0O1xuICBwYWRkaW5nOiAkY3VzdG9tLWZpbGUtcGFkZGluZy15ICRjdXN0b20tZmlsZS1wYWRkaW5nLXg7XG4gIGZvbnQtZmFtaWx5OiAkY3VzdG9tLWZpbGUtZm9udC1mYW1pbHk7XG4gIGZvbnQtd2VpZ2h0OiAkY3VzdG9tLWZpbGUtZm9udC13ZWlnaHQ7XG4gIGxpbmUtaGVpZ2h0OiAkY3VzdG9tLWZpbGUtbGluZS1oZWlnaHQ7XG4gIGNvbG9yOiAkY3VzdG9tLWZpbGUtY29sb3I7XG4gIGJhY2tncm91bmQtY29sb3I6ICRjdXN0b20tZmlsZS1iZztcbiAgYm9yZGVyOiAkY3VzdG9tLWZpbGUtYm9yZGVyLXdpZHRoIHNvbGlkICRjdXN0b20tZmlsZS1ib3JkZXItY29sb3I7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGN1c3RvbS1maWxlLWJvcmRlci1yYWRpdXMpO1xuICBAaW5jbHVkZSBib3gtc2hhZG93KCRjdXN0b20tZmlsZS1ib3gtc2hhZG93KTtcblxuICAmOjphZnRlciB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICByaWdodDogMDtcbiAgICBib3R0b206IDA7XG4gICAgei1pbmRleDogMztcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBoZWlnaHQ6ICRjdXN0b20tZmlsZS1oZWlnaHQtaW5uZXI7XG4gICAgcGFkZGluZzogJGN1c3RvbS1maWxlLXBhZGRpbmcteSAkY3VzdG9tLWZpbGUtcGFkZGluZy14O1xuICAgIGxpbmUtaGVpZ2h0OiAkY3VzdG9tLWZpbGUtbGluZS1oZWlnaHQ7XG4gICAgY29sb3I6ICRjdXN0b20tZmlsZS1idXR0b24tY29sb3I7XG4gICAgY29udGVudDogXCJCcm93c2VcIjtcbiAgICBAaW5jbHVkZSBncmFkaWVudC1iZygkY3VzdG9tLWZpbGUtYnV0dG9uLWJnKTtcbiAgICBib3JkZXItbGVmdDogaW5oZXJpdDtcbiAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKDAgJGN1c3RvbS1maWxlLWJvcmRlci1yYWRpdXMgJGN1c3RvbS1maWxlLWJvcmRlci1yYWRpdXMgMCk7XG4gIH1cbn1cblxuLy8gUmFuZ2Vcbi8vXG4vLyBTdHlsZSByYW5nZSBpbnB1dHMgdGhlIHNhbWUgYWNyb3NzIGJyb3dzZXJzLiBWZW5kb3Itc3BlY2lmaWMgcnVsZXMgZm9yIHBzZXVkb1xuLy8gZWxlbWVudHMgY2Fubm90IGJlIG1peGVkLiBBcyBzdWNoLCB0aGVyZSBhcmUgbm8gc2hhcmVkIHN0eWxlcyBmb3IgZm9jdXMgb3Jcbi8vIGFjdGl2ZSBzdGF0ZXMgb24gcHJlZml4ZWQgc2VsZWN0b3JzLlxuXG4uY3VzdG9tLXJhbmdlIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogYWRkKCRjdXN0b20tcmFuZ2UtdGh1bWItaGVpZ2h0LCAkY3VzdG9tLXJhbmdlLXRodW1iLWZvY3VzLWJveC1zaGFkb3ctd2lkdGggKiAyKTtcbiAgcGFkZGluZzogMDsgLy8gTmVlZCB0byByZXNldCBwYWRkaW5nXG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBhcHBlYXJhbmNlOiBub25lO1xuXG4gICY6Zm9jdXMge1xuICAgIG91dGxpbmU6IG5vbmU7XG5cbiAgICAvLyBQc2V1ZG8tZWxlbWVudHMgbXVzdCBiZSBzcGxpdCBhY3Jvc3MgbXVsdGlwbGUgcnVsZXNldHMgdG8gaGF2ZSBhbiBlZmZlY3QuXG4gICAgLy8gTm8gYm94LXNoYWRvdygpIG1peGluIGZvciBmb2N1cyBhY2Nlc3NpYmlsaXR5LlxuICAgICY6Oi13ZWJraXQtc2xpZGVyLXRodW1iIHsgYm94LXNoYWRvdzogJGN1c3RvbS1yYW5nZS10aHVtYi1mb2N1cy1ib3gtc2hhZG93OyB9XG4gICAgJjo6LW1vei1yYW5nZS10aHVtYiAgICAgeyBib3gtc2hhZG93OiAkY3VzdG9tLXJhbmdlLXRodW1iLWZvY3VzLWJveC1zaGFkb3c7IH1cbiAgICAmOjotbXMtdGh1bWIgICAgICAgICAgICB7IGJveC1zaGFkb3c6ICRjdXN0b20tcmFuZ2UtdGh1bWItZm9jdXMtYm94LXNoYWRvdzsgfVxuICB9XG5cbiAgJjo6LW1vei1mb2N1cy1vdXRlciB7XG4gICAgYm9yZGVyOiAwO1xuICB9XG5cbiAgJjo6LXdlYmtpdC1zbGlkZXItdGh1bWIge1xuICAgIHdpZHRoOiAkY3VzdG9tLXJhbmdlLXRodW1iLXdpZHRoO1xuICAgIGhlaWdodDogJGN1c3RvbS1yYW5nZS10aHVtYi1oZWlnaHQ7XG4gICAgbWFyZ2luLXRvcDogKCRjdXN0b20tcmFuZ2UtdHJhY2staGVpZ2h0IC0gJGN1c3RvbS1yYW5nZS10aHVtYi1oZWlnaHQpIC8gMjsgLy8gV2Via2l0IHNwZWNpZmljXG4gICAgQGluY2x1ZGUgZ3JhZGllbnQtYmcoJGN1c3RvbS1yYW5nZS10aHVtYi1iZyk7XG4gICAgYm9yZGVyOiAkY3VzdG9tLXJhbmdlLXRodW1iLWJvcmRlcjtcbiAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRjdXN0b20tcmFuZ2UtdGh1bWItYm9yZGVyLXJhZGl1cyk7XG4gICAgQGluY2x1ZGUgYm94LXNoYWRvdygkY3VzdG9tLXJhbmdlLXRodW1iLWJveC1zaGFkb3cpO1xuICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oJGN1c3RvbS1mb3Jtcy10cmFuc2l0aW9uKTtcbiAgICBhcHBlYXJhbmNlOiBub25lO1xuXG4gICAgJjphY3RpdmUge1xuICAgICAgQGluY2x1ZGUgZ3JhZGllbnQtYmcoJGN1c3RvbS1yYW5nZS10aHVtYi1hY3RpdmUtYmcpO1xuICAgIH1cbiAgfVxuXG4gICY6Oi13ZWJraXQtc2xpZGVyLXJ1bm5hYmxlLXRyYWNrIHtcbiAgICB3aWR0aDogJGN1c3RvbS1yYW5nZS10cmFjay13aWR0aDtcbiAgICBoZWlnaHQ6ICRjdXN0b20tcmFuZ2UtdHJhY2staGVpZ2h0O1xuICAgIGNvbG9yOiB0cmFuc3BhcmVudDsgLy8gV2h5P1xuICAgIGN1cnNvcjogJGN1c3RvbS1yYW5nZS10cmFjay1jdXJzb3I7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGN1c3RvbS1yYW5nZS10cmFjay1iZztcbiAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGN1c3RvbS1yYW5nZS10cmFjay1ib3JkZXItcmFkaXVzKTtcbiAgICBAaW5jbHVkZSBib3gtc2hhZG93KCRjdXN0b20tcmFuZ2UtdHJhY2stYm94LXNoYWRvdyk7XG4gIH1cblxuICAmOjotbW96LXJhbmdlLXRodW1iIHtcbiAgICB3aWR0aDogJGN1c3RvbS1yYW5nZS10aHVtYi13aWR0aDtcbiAgICBoZWlnaHQ6ICRjdXN0b20tcmFuZ2UtdGh1bWItaGVpZ2h0O1xuICAgIEBpbmNsdWRlIGdyYWRpZW50LWJnKCRjdXN0b20tcmFuZ2UtdGh1bWItYmcpO1xuICAgIGJvcmRlcjogJGN1c3RvbS1yYW5nZS10aHVtYi1ib3JkZXI7XG4gICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkY3VzdG9tLXJhbmdlLXRodW1iLWJvcmRlci1yYWRpdXMpO1xuICAgIEBpbmNsdWRlIGJveC1zaGFkb3coJGN1c3RvbS1yYW5nZS10aHVtYi1ib3gtc2hhZG93KTtcbiAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKCRjdXN0b20tZm9ybXMtdHJhbnNpdGlvbik7XG4gICAgYXBwZWFyYW5jZTogbm9uZTtcblxuICAgICY6YWN0aXZlIHtcbiAgICAgIEBpbmNsdWRlIGdyYWRpZW50LWJnKCRjdXN0b20tcmFuZ2UtdGh1bWItYWN0aXZlLWJnKTtcbiAgICB9XG4gIH1cblxuICAmOjotbW96LXJhbmdlLXRyYWNrIHtcbiAgICB3aWR0aDogJGN1c3RvbS1yYW5nZS10cmFjay13aWR0aDtcbiAgICBoZWlnaHQ6ICRjdXN0b20tcmFuZ2UtdHJhY2staGVpZ2h0O1xuICAgIGNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBjdXJzb3I6ICRjdXN0b20tcmFuZ2UtdHJhY2stY3Vyc29yO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRjdXN0b20tcmFuZ2UtdHJhY2stYmc7XG4gICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDsgLy8gRmlyZWZveCBzcGVjaWZpYz9cbiAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRjdXN0b20tcmFuZ2UtdHJhY2stYm9yZGVyLXJhZGl1cyk7XG4gICAgQGluY2x1ZGUgYm94LXNoYWRvdygkY3VzdG9tLXJhbmdlLXRyYWNrLWJveC1zaGFkb3cpO1xuICB9XG5cbiAgJjo6LW1zLXRodW1iIHtcbiAgICB3aWR0aDogJGN1c3RvbS1yYW5nZS10aHVtYi13aWR0aDtcbiAgICBoZWlnaHQ6ICRjdXN0b20tcmFuZ2UtdGh1bWItaGVpZ2h0O1xuICAgIG1hcmdpbi10b3A6IDA7IC8vIEVkZ2Ugc3BlY2lmaWNcbiAgICBtYXJnaW4tcmlnaHQ6ICRjdXN0b20tcmFuZ2UtdGh1bWItZm9jdXMtYm94LXNoYWRvdy13aWR0aDsgLy8gV29ya2Fyb3VuZCB0aGF0IG92ZXJmbG93ZWQgYm94LXNoYWRvdyBpcyBoaWRkZW4uXG4gICAgbWFyZ2luLWxlZnQ6ICRjdXN0b20tcmFuZ2UtdGh1bWItZm9jdXMtYm94LXNoYWRvdy13aWR0aDsgIC8vIFdvcmthcm91bmQgdGhhdCBvdmVyZmxvd2VkIGJveC1zaGFkb3cgaXMgaGlkZGVuLlxuICAgIEBpbmNsdWRlIGdyYWRpZW50LWJnKCRjdXN0b20tcmFuZ2UtdGh1bWItYmcpO1xuICAgIGJvcmRlcjogJGN1c3RvbS1yYW5nZS10aHVtYi1ib3JkZXI7XG4gICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkY3VzdG9tLXJhbmdlLXRodW1iLWJvcmRlci1yYWRpdXMpO1xuICAgIEBpbmNsdWRlIGJveC1zaGFkb3coJGN1c3RvbS1yYW5nZS10aHVtYi1ib3gtc2hhZG93KTtcbiAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKCRjdXN0b20tZm9ybXMtdHJhbnNpdGlvbik7XG4gICAgYXBwZWFyYW5jZTogbm9uZTtcblxuICAgICY6YWN0aXZlIHtcbiAgICAgIEBpbmNsdWRlIGdyYWRpZW50LWJnKCRjdXN0b20tcmFuZ2UtdGh1bWItYWN0aXZlLWJnKTtcbiAgICB9XG4gIH1cblxuICAmOjotbXMtdHJhY2sge1xuICAgIHdpZHRoOiAkY3VzdG9tLXJhbmdlLXRyYWNrLXdpZHRoO1xuICAgIGhlaWdodDogJGN1c3RvbS1yYW5nZS10cmFjay1oZWlnaHQ7XG4gICAgY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGN1cnNvcjogJGN1c3RvbS1yYW5nZS10cmFjay1jdXJzb3I7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBib3JkZXItd2lkdGg6ICRjdXN0b20tcmFuZ2UtdGh1bWItaGVpZ2h0IC8gMjtcbiAgICBAaW5jbHVkZSBib3gtc2hhZG93KCRjdXN0b20tcmFuZ2UtdHJhY2stYm94LXNoYWRvdyk7XG4gIH1cblxuICAmOjotbXMtZmlsbC1sb3dlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGN1c3RvbS1yYW5nZS10cmFjay1iZztcbiAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRjdXN0b20tcmFuZ2UtdHJhY2stYm9yZGVyLXJhZGl1cyk7XG4gIH1cblxuICAmOjotbXMtZmlsbC11cHBlciB7XG4gICAgbWFyZ2luLXJpZ2h0OiAxNXB4OyAvLyBhcmJpdHJhcnk/XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGN1c3RvbS1yYW5nZS10cmFjay1iZztcbiAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRjdXN0b20tcmFuZ2UtdHJhY2stYm9yZGVyLXJhZGl1cyk7XG4gIH1cblxuICAmOmRpc2FibGVkIHtcbiAgICAmOjotd2Via2l0LXNsaWRlci10aHVtYiB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY3VzdG9tLXJhbmdlLXRodW1iLWRpc2FibGVkLWJnO1xuICAgIH1cblxuICAgICY6Oi13ZWJraXQtc2xpZGVyLXJ1bm5hYmxlLXRyYWNrIHtcbiAgICAgIGN1cnNvcjogZGVmYXVsdDtcbiAgICB9XG5cbiAgICAmOjotbW96LXJhbmdlLXRodW1iIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjdXN0b20tcmFuZ2UtdGh1bWItZGlzYWJsZWQtYmc7XG4gICAgfVxuXG4gICAgJjo6LW1vei1yYW5nZS10cmFjayB7XG4gICAgICBjdXJzb3I6IGRlZmF1bHQ7XG4gICAgfVxuXG4gICAgJjo6LW1zLXRodW1iIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjdXN0b20tcmFuZ2UtdGh1bWItZGlzYWJsZWQtYmc7XG4gICAgfVxuICB9XG59XG5cbi5jdXN0b20tY29udHJvbC1sYWJlbDo6YmVmb3JlLFxuLmN1c3RvbS1maWxlLWxhYmVsLFxuLmN1c3RvbS1zZWxlY3Qge1xuICBAaW5jbHVkZSB0cmFuc2l0aW9uKCRjdXN0b20tZm9ybXMtdHJhbnNpdGlvbik7XG59XG4iLCIvLyBCYXNlIGNsYXNzXG4vL1xuLy8gS2lja3N0YXJ0IGFueSBuYXZpZ2F0aW9uIGNvbXBvbmVudCB3aXRoIGEgc2V0IG9mIHN0eWxlIHJlc2V0cy4gV29ya3Mgd2l0aFxuLy8gYDxuYXY+YHMsIGA8dWw+YHMgb3IgYDxvbD5gcy5cblxuLm5hdiB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAgcGFkZGluZy1sZWZ0OiAwO1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBsaXN0LXN0eWxlOiBub25lO1xufVxuXG4ubmF2LWxpbmsge1xuICBkaXNwbGF5OiBibG9jaztcbiAgcGFkZGluZzogJG5hdi1saW5rLXBhZGRpbmcteSAkbmF2LWxpbmstcGFkZGluZy14O1xuXG4gIEBpbmNsdWRlIGhvdmVyLWZvY3VzKCkge1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgfVxuXG4gIC8vIERpc2FibGVkIHN0YXRlIGxpZ2h0ZW5zIHRleHRcbiAgJi5kaXNhYmxlZCB7XG4gICAgY29sb3I6ICRuYXYtbGluay1kaXNhYmxlZC1jb2xvcjtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICBjdXJzb3I6IGRlZmF1bHQ7XG4gIH1cbn1cblxuLy9cbi8vIFRhYnNcbi8vXG5cbi5uYXYtdGFicyB7XG4gIGJvcmRlci1ib3R0b206ICRuYXYtdGFicy1ib3JkZXItd2lkdGggc29saWQgJG5hdi10YWJzLWJvcmRlci1jb2xvcjtcblxuICAubmF2LWl0ZW0ge1xuICAgIG1hcmdpbi1ib3R0b206IC0kbmF2LXRhYnMtYm9yZGVyLXdpZHRoO1xuICB9XG5cbiAgLm5hdi1saW5rIHtcbiAgICBib3JkZXI6ICRuYXYtdGFicy1ib3JkZXItd2lkdGggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgQGluY2x1ZGUgYm9yZGVyLXRvcC1yYWRpdXMoJG5hdi10YWJzLWJvcmRlci1yYWRpdXMpO1xuXG4gICAgQGluY2x1ZGUgaG92ZXItZm9jdXMoKSB7XG4gICAgICBib3JkZXItY29sb3I6ICRuYXYtdGFicy1saW5rLWhvdmVyLWJvcmRlci1jb2xvcjtcbiAgICB9XG5cbiAgICAmLmRpc2FibGVkIHtcbiAgICAgIGNvbG9yOiAkbmF2LWxpbmstZGlzYWJsZWQtY29sb3I7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgfVxuICB9XG5cbiAgLm5hdi1saW5rLmFjdGl2ZSxcbiAgLm5hdi1pdGVtLnNob3cgLm5hdi1saW5rIHtcbiAgICBjb2xvcjogJG5hdi10YWJzLWxpbmstYWN0aXZlLWNvbG9yO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRuYXYtdGFicy1saW5rLWFjdGl2ZS1iZztcbiAgICBib3JkZXItY29sb3I6ICRuYXYtdGFicy1saW5rLWFjdGl2ZS1ib3JkZXItY29sb3I7XG4gIH1cblxuICAuZHJvcGRvd24tbWVudSB7XG4gICAgLy8gTWFrZSBkcm9wZG93biBib3JkZXIgb3ZlcmxhcCB0YWIgYm9yZGVyXG4gICAgbWFyZ2luLXRvcDogLSRuYXYtdGFicy1ib3JkZXItd2lkdGg7XG4gICAgLy8gUmVtb3ZlIHRoZSB0b3Agcm91bmRlZCBjb3JuZXJzIGhlcmUgc2luY2UgdGhlcmUgaXMgYSBoYXJkIGVkZ2UgYWJvdmUgdGhlIG1lbnVcbiAgICBAaW5jbHVkZSBib3JkZXItdG9wLXJhZGl1cygwKTtcbiAgfVxufVxuXG5cbi8vXG4vLyBQaWxsc1xuLy9cblxuLm5hdi1waWxscyB7XG4gIC5uYXYtbGluayB7XG4gICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkbmF2LXBpbGxzLWJvcmRlci1yYWRpdXMpO1xuICB9XG5cbiAgLm5hdi1saW5rLmFjdGl2ZSxcbiAgLnNob3cgPiAubmF2LWxpbmsge1xuICAgIGNvbG9yOiAkbmF2LXBpbGxzLWxpbmstYWN0aXZlLWNvbG9yO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRuYXYtcGlsbHMtbGluay1hY3RpdmUtYmc7XG4gIH1cbn1cblxuXG4vL1xuLy8gSnVzdGlmaWVkIHZhcmlhbnRzXG4vL1xuXG4ubmF2LWZpbGwge1xuICAubmF2LWl0ZW0ge1xuICAgIGZsZXg6IDEgMSBhdXRvO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgfVxufVxuXG4ubmF2LWp1c3RpZmllZCB7XG4gIC5uYXYtaXRlbSB7XG4gICAgZmxleC1iYXNpczogMDtcbiAgICBmbGV4LWdyb3c6IDE7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB9XG59XG5cblxuLy8gVGFiYmFibGUgdGFic1xuLy9cbi8vIEhpZGUgdGFiYmFibGUgcGFuZXMgdG8gc3RhcnQsIHNob3cgdGhlbSB3aGVuIGAuYWN0aXZlYFxuXG4udGFiLWNvbnRlbnQge1xuICA+IC50YWItcGFuZSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuICA+IC5hY3RpdmUge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG59XG4iLCIvLyBDb250ZW50c1xuLy9cbi8vIE5hdmJhclxuLy8gTmF2YmFyIGJyYW5kXG4vLyBOYXZiYXIgbmF2XG4vLyBOYXZiYXIgdGV4dFxuLy8gTmF2YmFyIGRpdmlkZXJcbi8vIFJlc3BvbnNpdmUgbmF2YmFyXG4vLyBOYXZiYXIgcG9zaXRpb25cbi8vIE5hdmJhciB0aGVtZXNcblxuXG4vLyBOYXZiYXJcbi8vXG4vLyBQcm92aWRlIGEgc3RhdGljIG5hdmJhciBmcm9tIHdoaWNoIHdlIGV4cGFuZCB0byBjcmVhdGUgZnVsbC13aWR0aCwgZml4ZWQsIGFuZFxuLy8gb3RoZXIgbmF2YmFyIHZhcmlhdGlvbnMuXG5cbi5uYXZiYXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDsgLy8gYWxsb3cgdXMgdG8gZG8gdGhlIGxpbmUgYnJlYWsgZm9yIGNvbGxhcHNpbmcgY29udGVudFxuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47IC8vIHNwYWNlIG91dCBicmFuZCBmcm9tIGxvZ29cbiAgcGFkZGluZzogJG5hdmJhci1wYWRkaW5nLXkgJG5hdmJhci1wYWRkaW5nLXg7XG5cbiAgLy8gQmVjYXVzZSBmbGV4IHByb3BlcnRpZXMgYXJlbid0IGluaGVyaXRlZCwgd2UgbmVlZCB0byByZWRlY2xhcmUgdGhlc2UgZmlyc3RcbiAgLy8gZmV3IHByb3BlcnRpZXMgc28gdGhhdCBjb250ZW50IG5lc3RlZCB3aXRoaW4gYmVoYXZlIHByb3Blcmx5LlxuICAlY29udGFpbmVyLWZsZXgtcHJvcGVydGllcyB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIH1cblxuICAuY29udGFpbmVyLFxuICAuY29udGFpbmVyLWZsdWlkIHtcbiAgICBAZXh0ZW5kICVjb250YWluZXItZmxleC1wcm9wZXJ0aWVzO1xuICB9XG5cbiAgQGVhY2ggJGJyZWFrcG9pbnQsICRjb250YWluZXItbWF4LXdpZHRoIGluICRjb250YWluZXItbWF4LXdpZHRocyB7XG4gICAgPiAuY29udGFpbmVyI3ticmVha3BvaW50LWluZml4KCRicmVha3BvaW50LCAkY29udGFpbmVyLW1heC13aWR0aHMpfSB7XG4gICAgICBAZXh0ZW5kICVjb250YWluZXItZmxleC1wcm9wZXJ0aWVzO1xuICAgIH1cbiAgfVxufVxuXG5cbi8vIE5hdmJhciBicmFuZFxuLy9cbi8vIFVzZWQgZm9yIGJyYW5kLCBwcm9qZWN0LCBvciBzaXRlIG5hbWVzLlxuXG4ubmF2YmFyLWJyYW5kIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBwYWRkaW5nLXRvcDogJG5hdmJhci1icmFuZC1wYWRkaW5nLXk7XG4gIHBhZGRpbmctYm90dG9tOiAkbmF2YmFyLWJyYW5kLXBhZGRpbmcteTtcbiAgbWFyZ2luLXJpZ2h0OiAkbmF2YmFyLXBhZGRpbmcteDtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRuYXZiYXItYnJhbmQtZm9udC1zaXplKTtcbiAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG5cbiAgQGluY2x1ZGUgaG92ZXItZm9jdXMoKSB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB9XG59XG5cblxuLy8gTmF2YmFyIG5hdlxuLy9cbi8vIEN1c3RvbSBuYXZiYXIgbmF2aWdhdGlvbiAoZG9lc24ndCByZXF1aXJlIGAubmF2YCwgYnV0IGRvZXMgbWFrZSB1c2Ugb2YgYC5uYXYtbGlua2ApLlxuXG4ubmF2YmFyLW5hdiB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47IC8vIGNhbm5vdCB1c2UgYGluaGVyaXRgIHRvIGdldCB0aGUgYC5uYXZiYXJgcyB2YWx1ZVxuICBwYWRkaW5nLWxlZnQ6IDA7XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG5cbiAgLm5hdi1saW5rIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgIHBhZGRpbmctbGVmdDogMDtcbiAgfVxuXG4gIC5kcm9wZG93bi1tZW51IHtcbiAgICBwb3NpdGlvbjogc3RhdGljO1xuICAgIGZsb2F0OiBub25lO1xuICB9XG59XG5cblxuLy8gTmF2YmFyIHRleHRcbi8vXG4vL1xuXG4ubmF2YmFyLXRleHQge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHBhZGRpbmctdG9wOiAkbmF2LWxpbmstcGFkZGluZy15O1xuICBwYWRkaW5nLWJvdHRvbTogJG5hdi1saW5rLXBhZGRpbmcteTtcbn1cblxuXG4vLyBSZXNwb25zaXZlIG5hdmJhclxuLy9cbi8vIEN1c3RvbSBzdHlsZXMgZm9yIHJlc3BvbnNpdmUgY29sbGFwc2luZyBhbmQgdG9nZ2xpbmcgb2YgbmF2YmFyIGNvbnRlbnRzLlxuLy8gUG93ZXJlZCBieSB0aGUgY29sbGFwc2UgQm9vdHN0cmFwIEphdmFTY3JpcHQgcGx1Z2luLlxuXG4vLyBXaGVuIGNvbGxhcHNlZCwgcHJldmVudCB0aGUgdG9nZ2xlYWJsZSBuYXZiYXIgY29udGVudHMgZnJvbSBhcHBlYXJpbmcgaW5cbi8vIHRoZSBkZWZhdWx0IGZsZXhib3ggcm93IG9yaWVudGF0aW9uLiBSZXF1aXJlcyB0aGUgdXNlIG9mIGBmbGV4LXdyYXA6IHdyYXBgXG4vLyBvbiB0aGUgYC5uYXZiYXJgIHBhcmVudC5cbi5uYXZiYXItY29sbGFwc2Uge1xuICBmbGV4LWJhc2lzOiAxMDAlO1xuICBmbGV4LWdyb3c6IDE7XG4gIC8vIEZvciBhbHdheXMgZXhwYW5kZWQgb3IgZXh0cmEgZnVsbCBuYXZiYXJzLCBlbnN1cmUgY29udGVudCBhbGlnbnMgaXRzZWxmXG4gIC8vIHByb3Blcmx5IHZlcnRpY2FsbHkuIENhbiBiZSBlYXNpbHkgb3ZlcnJpZGRlbiB3aXRoIGZsZXggdXRpbGl0aWVzLlxuICBhbGlnbi1pdGVtczogY2VudGVyO1xufVxuXG4vLyBCdXR0b24gZm9yIHRvZ2dsaW5nIHRoZSBuYXZiYXIgd2hlbiBpbiBpdHMgY29sbGFwc2VkIHN0YXRlXG4ubmF2YmFyLXRvZ2dsZXIge1xuICBwYWRkaW5nOiAkbmF2YmFyLXRvZ2dsZXItcGFkZGluZy15ICRuYXZiYXItdG9nZ2xlci1wYWRkaW5nLXg7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkbmF2YmFyLXRvZ2dsZXItZm9udC1zaXplKTtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50OyAvLyByZW1vdmUgZGVmYXVsdCBidXR0b24gc3R5bGVcbiAgYm9yZGVyOiAkYm9yZGVyLXdpZHRoIHNvbGlkIHRyYW5zcGFyZW50OyAvLyByZW1vdmUgZGVmYXVsdCBidXR0b24gc3R5bGVcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkbmF2YmFyLXRvZ2dsZXItYm9yZGVyLXJhZGl1cyk7XG5cbiAgQGluY2x1ZGUgaG92ZXItZm9jdXMoKSB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB9XG59XG5cbi8vIEtlZXAgYXMgYSBzZXBhcmF0ZSBlbGVtZW50IHNvIGZvbGtzIGNhbiBlYXNpbHkgb3ZlcnJpZGUgaXQgd2l0aCBhbm90aGVyIGljb25cbi8vIG9yIGltYWdlIGZpbGUgYXMgbmVlZGVkLlxuLm5hdmJhci10b2dnbGVyLWljb24ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHdpZHRoOiAxLjVlbTtcbiAgaGVpZ2h0OiAxLjVlbTtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgY29udGVudDogXCJcIjtcbiAgYmFja2dyb3VuZDogbm8tcmVwZWF0IGNlbnRlciBjZW50ZXI7XG4gIGJhY2tncm91bmQtc2l6ZTogMTAwJSAxMDAlO1xufVxuXG4vLyBHZW5lcmF0ZSBzZXJpZXMgb2YgYC5uYXZiYXItZXhwYW5kLSpgIHJlc3BvbnNpdmUgY2xhc3NlcyBmb3IgY29uZmlndXJpbmdcbi8vIHdoZXJlIHlvdXIgbmF2YmFyIGNvbGxhcHNlcy5cbi5uYXZiYXItZXhwYW5kIHtcbiAgQGVhY2ggJGJyZWFrcG9pbnQgaW4gbWFwLWtleXMoJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgICAkbmV4dDogYnJlYWtwb2ludC1uZXh0KCRicmVha3BvaW50LCAkZ3JpZC1icmVha3BvaW50cyk7XG4gICAgJGluZml4OiBicmVha3BvaW50LWluZml4KCRuZXh0LCAkZ3JpZC1icmVha3BvaW50cyk7XG5cbiAgICAmI3skaW5maXh9IHtcbiAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bigkYnJlYWtwb2ludCkge1xuICAgICAgICAlY29udGFpbmVyLW5hdmJhci1leHBhbmQtI3skYnJlYWtwb2ludH0ge1xuICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgICAgICB9XG5cbiAgICAgICAgPiAuY29udGFpbmVyLFxuICAgICAgICA+IC5jb250YWluZXItZmx1aWQge1xuICAgICAgICAgIEBleHRlbmQgJWNvbnRhaW5lci1uYXZiYXItZXhwYW5kLSN7JGJyZWFrcG9pbnR9O1xuICAgICAgICB9XG5cbiAgICAgICAgQGVhY2ggJHNpemUsICRjb250YWluZXItbWF4LXdpZHRoIGluICRjb250YWluZXItbWF4LXdpZHRocyB7XG4gICAgICAgICAgPiAuY29udGFpbmVyI3ticmVha3BvaW50LWluZml4KCRzaXplLCAkY29udGFpbmVyLW1heC13aWR0aHMpfSB7XG4gICAgICAgICAgICBAZXh0ZW5kICVjb250YWluZXItbmF2YmFyLWV4cGFuZC0jeyRicmVha3BvaW50fTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgkbmV4dCkge1xuICAgICAgICBmbGV4LWZsb3c6IHJvdyBub3dyYXA7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcblxuICAgICAgICAubmF2YmFyLW5hdiB7XG4gICAgICAgICAgZmxleC1kaXJlY3Rpb246IHJvdztcblxuICAgICAgICAgIC5kcm9wZG93bi1tZW51IHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICAubmF2LWxpbmsge1xuICAgICAgICAgICAgcGFkZGluZy1yaWdodDogJG5hdmJhci1uYXYtbGluay1wYWRkaW5nLXg7XG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6ICRuYXZiYXItbmF2LWxpbmstcGFkZGluZy14O1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC8vIEZvciBuZXN0aW5nIGNvbnRhaW5lcnMsIGhhdmUgdG8gcmVkZWNsYXJlIGZvciBhbGlnbm1lbnQgcHVycG9zZXNcbiAgICAgICAgJWNvbnRhaW5lci1uZXN0aW5nLSN7JGJyZWFrcG9pbnR9IHtcbiAgICAgICAgICBmbGV4LXdyYXA6IG5vd3JhcDtcbiAgICAgICAgfVxuXG4gICAgICAgID4gLmNvbnRhaW5lcixcbiAgICAgICAgPiAuY29udGFpbmVyLWZsdWlkIHtcbiAgICAgICAgICBAZXh0ZW5kICVjb250YWluZXItbmVzdGluZy0jeyRicmVha3BvaW50fTtcbiAgICAgICAgfVxuXG4gICAgICAgIEBlYWNoICRzaXplLCAkY29udGFpbmVyLW1heC13aWR0aCBpbiAkY29udGFpbmVyLW1heC13aWR0aHMge1xuICAgICAgICAgID4gLmNvbnRhaW5lciN7YnJlYWtwb2ludC1pbmZpeCgkc2l6ZSwgJGNvbnRhaW5lci1tYXgtd2lkdGhzKX0ge1xuICAgICAgICAgICAgQGV4dGVuZCAlY29udGFpbmVyLW5lc3RpbmctI3skYnJlYWtwb2ludH07XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLm5hdmJhci1jb2xsYXBzZSB7XG4gICAgICAgICAgZGlzcGxheTogZmxleCAhaW1wb3J0YW50OyAvLyBzdHlsZWxpbnQtZGlzYWJsZS1saW5lIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudFxuXG4gICAgICAgICAgLy8gQ2hhbmdlcyBmbGV4LWJhc2VzIHRvIGF1dG8gYmVjYXVzZSBvZiBhbiBJRTEwIGJ1Z1xuICAgICAgICAgIGZsZXgtYmFzaXM6IGF1dG87XG4gICAgICAgIH1cblxuICAgICAgICAubmF2YmFyLXRvZ2dsZXIge1xuICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuXG4vLyBOYXZiYXIgdGhlbWVzXG4vL1xuLy8gU3R5bGVzIGZvciBzd2l0Y2hpbmcgYmV0d2VlbiBuYXZiYXJzIHdpdGggbGlnaHQgb3IgZGFyayBiYWNrZ3JvdW5kLlxuXG4vLyBEYXJrIGxpbmtzIGFnYWluc3QgYSBsaWdodCBiYWNrZ3JvdW5kXG4ubmF2YmFyLWxpZ2h0IHtcbiAgLm5hdmJhci1icmFuZCB7XG4gICAgY29sb3I6ICRuYXZiYXItbGlnaHQtYnJhbmQtY29sb3I7XG5cbiAgICBAaW5jbHVkZSBob3Zlci1mb2N1cygpIHtcbiAgICAgIGNvbG9yOiAkbmF2YmFyLWxpZ2h0LWJyYW5kLWhvdmVyLWNvbG9yO1xuICAgIH1cbiAgfVxuXG4gIC5uYXZiYXItbmF2IHtcbiAgICAubmF2LWxpbmsge1xuICAgICAgY29sb3I6ICRuYXZiYXItbGlnaHQtY29sb3I7XG5cbiAgICAgIEBpbmNsdWRlIGhvdmVyLWZvY3VzKCkge1xuICAgICAgICBjb2xvcjogJG5hdmJhci1saWdodC1ob3Zlci1jb2xvcjtcbiAgICAgIH1cblxuICAgICAgJi5kaXNhYmxlZCB7XG4gICAgICAgIGNvbG9yOiAkbmF2YmFyLWxpZ2h0LWRpc2FibGVkLWNvbG9yO1xuICAgICAgfVxuICAgIH1cblxuICAgIC5zaG93ID4gLm5hdi1saW5rLFxuICAgIC5hY3RpdmUgPiAubmF2LWxpbmssXG4gICAgLm5hdi1saW5rLnNob3csXG4gICAgLm5hdi1saW5rLmFjdGl2ZSB7XG4gICAgICBjb2xvcjogJG5hdmJhci1saWdodC1hY3RpdmUtY29sb3I7XG4gICAgfVxuICB9XG5cbiAgLm5hdmJhci10b2dnbGVyIHtcbiAgICBjb2xvcjogJG5hdmJhci1saWdodC1jb2xvcjtcbiAgICBib3JkZXItY29sb3I6ICRuYXZiYXItbGlnaHQtdG9nZ2xlci1ib3JkZXItY29sb3I7XG4gIH1cblxuICAubmF2YmFyLXRvZ2dsZXItaWNvbiB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogZXNjYXBlLXN2ZygkbmF2YmFyLWxpZ2h0LXRvZ2dsZXItaWNvbi1iZyk7XG4gIH1cblxuICAubmF2YmFyLXRleHQge1xuICAgIGNvbG9yOiAkbmF2YmFyLWxpZ2h0LWNvbG9yO1xuICAgIGEge1xuICAgICAgY29sb3I6ICRuYXZiYXItbGlnaHQtYWN0aXZlLWNvbG9yO1xuXG4gICAgICBAaW5jbHVkZSBob3Zlci1mb2N1cygpIHtcbiAgICAgICAgY29sb3I6ICRuYXZiYXItbGlnaHQtYWN0aXZlLWNvbG9yO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vLyBXaGl0ZSBsaW5rcyBhZ2FpbnN0IGEgZGFyayBiYWNrZ3JvdW5kXG4ubmF2YmFyLWRhcmsge1xuICAubmF2YmFyLWJyYW5kIHtcbiAgICBjb2xvcjogJG5hdmJhci1kYXJrLWJyYW5kLWNvbG9yO1xuXG4gICAgQGluY2x1ZGUgaG92ZXItZm9jdXMoKSB7XG4gICAgICBjb2xvcjogJG5hdmJhci1kYXJrLWJyYW5kLWhvdmVyLWNvbG9yO1xuICAgIH1cbiAgfVxuXG4gIC5uYXZiYXItbmF2IHtcbiAgICAubmF2LWxpbmsge1xuICAgICAgY29sb3I6ICRuYXZiYXItZGFyay1jb2xvcjtcblxuICAgICAgQGluY2x1ZGUgaG92ZXItZm9jdXMoKSB7XG4gICAgICAgIGNvbG9yOiAkbmF2YmFyLWRhcmstaG92ZXItY29sb3I7XG4gICAgICB9XG5cbiAgICAgICYuZGlzYWJsZWQge1xuICAgICAgICBjb2xvcjogJG5hdmJhci1kYXJrLWRpc2FibGVkLWNvbG9yO1xuICAgICAgfVxuICAgIH1cblxuICAgIC5zaG93ID4gLm5hdi1saW5rLFxuICAgIC5hY3RpdmUgPiAubmF2LWxpbmssXG4gICAgLm5hdi1saW5rLnNob3csXG4gICAgLm5hdi1saW5rLmFjdGl2ZSB7XG4gICAgICBjb2xvcjogJG5hdmJhci1kYXJrLWFjdGl2ZS1jb2xvcjtcbiAgICB9XG4gIH1cblxuICAubmF2YmFyLXRvZ2dsZXIge1xuICAgIGNvbG9yOiAkbmF2YmFyLWRhcmstY29sb3I7XG4gICAgYm9yZGVyLWNvbG9yOiAkbmF2YmFyLWRhcmstdG9nZ2xlci1ib3JkZXItY29sb3I7XG4gIH1cblxuICAubmF2YmFyLXRvZ2dsZXItaWNvbiB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogZXNjYXBlLXN2ZygkbmF2YmFyLWRhcmstdG9nZ2xlci1pY29uLWJnKTtcbiAgfVxuXG4gIC5uYXZiYXItdGV4dCB7XG4gICAgY29sb3I6ICRuYXZiYXItZGFyay1jb2xvcjtcbiAgICBhIHtcbiAgICAgIGNvbG9yOiAkbmF2YmFyLWRhcmstYWN0aXZlLWNvbG9yO1xuXG4gICAgICBAaW5jbHVkZSBob3Zlci1mb2N1cygpIHtcbiAgICAgICAgY29sb3I6ICRuYXZiYXItZGFyay1hY3RpdmUtY29sb3I7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvL1xuLy8gQmFzZSBzdHlsZXNcbi8vXG5cbi5jYXJkIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBtaW4td2lkdGg6IDA7IC8vIFNlZSBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvcHVsbC8yMjc0MCNpc3N1ZWNvbW1lbnQtMzA1ODY4MTA2XG4gIGhlaWdodDogJGNhcmQtaGVpZ2h0O1xuICB3b3JkLXdyYXA6IGJyZWFrLXdvcmQ7XG4gIGJhY2tncm91bmQtY29sb3I6ICRjYXJkLWJnO1xuICBiYWNrZ3JvdW5kLWNsaXA6IGJvcmRlci1ib3g7XG4gIGJvcmRlcjogJGNhcmQtYm9yZGVyLXdpZHRoIHNvbGlkICRjYXJkLWJvcmRlci1jb2xvcjtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkY2FyZC1ib3JkZXItcmFkaXVzKTtcblxuICA+IGhyIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gIH1cblxuICA+IC5saXN0LWdyb3VwOmZpcnN0LWNoaWxkIHtcbiAgICAubGlzdC1ncm91cC1pdGVtOmZpcnN0LWNoaWxkIHtcbiAgICAgIEBpbmNsdWRlIGJvcmRlci10b3AtcmFkaXVzKCRjYXJkLWJvcmRlci1yYWRpdXMpO1xuICAgIH1cbiAgfVxuXG4gID4gLmxpc3QtZ3JvdXA6bGFzdC1jaGlsZCB7XG4gICAgLmxpc3QtZ3JvdXAtaXRlbTpsYXN0LWNoaWxkIHtcbiAgICAgIEBpbmNsdWRlIGJvcmRlci1ib3R0b20tcmFkaXVzKCRjYXJkLWJvcmRlci1yYWRpdXMpO1xuICAgIH1cbiAgfVxufVxuXG4uY2FyZC1ib2R5IHtcbiAgLy8gRW5hYmxlIGBmbGV4LWdyb3c6IDFgIGZvciBkZWNrcyBhbmQgZ3JvdXBzIHNvIHRoYXQgY2FyZCBibG9ja3MgdGFrZSB1cFxuICAvLyBhcyBtdWNoIHNwYWNlIGFzIHBvc3NpYmxlLCBlbnN1cmluZyBmb290ZXJzIGFyZSBhbGlnbmVkIHRvIHRoZSBib3R0b20uXG4gIGZsZXg6IDEgMSBhdXRvO1xuICAvLyBXb3JrYXJvdW5kIGZvciB0aGUgaW1hZ2Ugc2l6ZSBidWcgaW4gSUVcbiAgLy8gU2VlOiBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvcHVsbC8yODg1NVxuICBtaW4taGVpZ2h0OiAxcHg7XG4gIHBhZGRpbmc6ICRjYXJkLXNwYWNlci14O1xuICBjb2xvcjogJGNhcmQtY29sb3I7XG59XG5cbi5jYXJkLXRpdGxlIHtcbiAgbWFyZ2luLWJvdHRvbTogJGNhcmQtc3BhY2VyLXk7XG59XG5cbi5jYXJkLXN1YnRpdGxlIHtcbiAgbWFyZ2luLXRvcDogLSRjYXJkLXNwYWNlci15IC8gMjtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cblxuLmNhcmQtdGV4dDpsYXN0LWNoaWxkIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cblxuLmNhcmQtbGluayB7XG4gIEBpbmNsdWRlIGhvdmVyKCkge1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgfVxuXG4gICsgLmNhcmQtbGluayB7XG4gICAgbWFyZ2luLWxlZnQ6ICRjYXJkLXNwYWNlci14O1xuICB9XG59XG5cbi8vXG4vLyBPcHRpb25hbCB0ZXh0dWFsIGNhcHNcbi8vXG5cbi5jYXJkLWhlYWRlciB7XG4gIHBhZGRpbmc6ICRjYXJkLXNwYWNlci15ICRjYXJkLXNwYWNlci14O1xuICBtYXJnaW4tYm90dG9tOiAwOyAvLyBSZW1vdmVzIHRoZSBkZWZhdWx0IG1hcmdpbi1ib3R0b20gb2YgPGhOPlxuICBjb2xvcjogJGNhcmQtY2FwLWNvbG9yO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkY2FyZC1jYXAtYmc7XG4gIGJvcmRlci1ib3R0b206ICRjYXJkLWJvcmRlci13aWR0aCBzb2xpZCAkY2FyZC1ib3JkZXItY29sb3I7XG5cbiAgJjpmaXJzdC1jaGlsZCB7XG4gICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkY2FyZC1pbm5lci1ib3JkZXItcmFkaXVzICRjYXJkLWlubmVyLWJvcmRlci1yYWRpdXMgMCAwKTtcbiAgfVxuXG4gICsgLmxpc3QtZ3JvdXAge1xuICAgIC5saXN0LWdyb3VwLWl0ZW06Zmlyc3QtY2hpbGQge1xuICAgICAgYm9yZGVyLXRvcDogMDtcbiAgICB9XG4gIH1cbn1cblxuLmNhcmQtZm9vdGVyIHtcbiAgcGFkZGluZzogJGNhcmQtc3BhY2VyLXkgJGNhcmQtc3BhY2VyLXg7XG4gIGJhY2tncm91bmQtY29sb3I6ICRjYXJkLWNhcC1iZztcbiAgYm9yZGVyLXRvcDogJGNhcmQtYm9yZGVyLXdpZHRoIHNvbGlkICRjYXJkLWJvcmRlci1jb2xvcjtcblxuICAmOmxhc3QtY2hpbGQge1xuICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoMCAwICRjYXJkLWlubmVyLWJvcmRlci1yYWRpdXMgJGNhcmQtaW5uZXItYm9yZGVyLXJhZGl1cyk7XG4gIH1cbn1cblxuXG4vL1xuLy8gSGVhZGVyIG5hdnNcbi8vXG5cbi5jYXJkLWhlYWRlci10YWJzIHtcbiAgbWFyZ2luLXJpZ2h0OiAtJGNhcmQtc3BhY2VyLXggLyAyO1xuICBtYXJnaW4tYm90dG9tOiAtJGNhcmQtc3BhY2VyLXk7XG4gIG1hcmdpbi1sZWZ0OiAtJGNhcmQtc3BhY2VyLXggLyAyO1xuICBib3JkZXItYm90dG9tOiAwO1xufVxuXG4uY2FyZC1oZWFkZXItcGlsbHMge1xuICBtYXJnaW4tcmlnaHQ6IC0kY2FyZC1zcGFjZXIteCAvIDI7XG4gIG1hcmdpbi1sZWZ0OiAtJGNhcmQtc3BhY2VyLXggLyAyO1xufVxuXG4vLyBDYXJkIGltYWdlXG4uY2FyZC1pbWctb3ZlcmxheSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICByaWdodDogMDtcbiAgYm90dG9tOiAwO1xuICBsZWZ0OiAwO1xuICBwYWRkaW5nOiAkY2FyZC1pbWctb3ZlcmxheS1wYWRkaW5nO1xufVxuXG4uY2FyZC1pbWcsXG4uY2FyZC1pbWctdG9wLFxuLmNhcmQtaW1nLWJvdHRvbSB7XG4gIGZsZXgtc2hyaW5rOiAwOyAvLyBGb3IgSUU6IGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMjkzOTZcbiAgd2lkdGg6IDEwMCU7IC8vIFJlcXVpcmVkIGJlY2F1c2Ugd2UgdXNlIGZsZXhib3ggYW5kIHRoaXMgaW5oZXJlbnRseSBhcHBsaWVzIGFsaWduLXNlbGY6IHN0cmV0Y2hcbn1cblxuLmNhcmQtaW1nLFxuLmNhcmQtaW1nLXRvcCB7XG4gIEBpbmNsdWRlIGJvcmRlci10b3AtcmFkaXVzKCRjYXJkLWlubmVyLWJvcmRlci1yYWRpdXMpO1xufVxuXG4uY2FyZC1pbWcsXG4uY2FyZC1pbWctYm90dG9tIHtcbiAgQGluY2x1ZGUgYm9yZGVyLWJvdHRvbS1yYWRpdXMoJGNhcmQtaW5uZXItYm9yZGVyLXJhZGl1cyk7XG59XG5cblxuLy8gQ2FyZCBkZWNrXG5cbi5jYXJkLWRlY2sge1xuICAuY2FyZCB7XG4gICAgbWFyZ2luLWJvdHRvbTogJGNhcmQtZGVjay1tYXJnaW47XG4gIH1cblxuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKHNtKSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWZsb3c6IHJvdyB3cmFwO1xuICAgIG1hcmdpbi1yaWdodDogLSRjYXJkLWRlY2stbWFyZ2luO1xuICAgIG1hcmdpbi1sZWZ0OiAtJGNhcmQtZGVjay1tYXJnaW47XG5cbiAgICAuY2FyZCB7XG4gICAgICAvLyBGbGV4YnVncyAjNDogaHR0cHM6Ly9naXRodWIuY29tL3BoaWxpcHdhbHRvbi9mbGV4YnVncyNmbGV4YnVnLTRcbiAgICAgIGZsZXg6IDEgMCAwJTtcbiAgICAgIG1hcmdpbi1yaWdodDogJGNhcmQtZGVjay1tYXJnaW47XG4gICAgICBtYXJnaW4tYm90dG9tOiAwOyAvLyBPdmVycmlkZSB0aGUgZGVmYXVsdFxuICAgICAgbWFyZ2luLWxlZnQ6ICRjYXJkLWRlY2stbWFyZ2luO1xuICAgIH1cbiAgfVxufVxuXG5cbi8vXG4vLyBDYXJkIGdyb3Vwc1xuLy9cblxuLmNhcmQtZ3JvdXAge1xuICAvLyBUaGUgY2hpbGQgc2VsZWN0b3IgYWxsb3dzIG5lc3RlZCBgLmNhcmRgIHdpdGhpbiBgLmNhcmQtZ3JvdXBgXG4gIC8vIHRvIGRpc3BsYXkgcHJvcGVybHkuXG4gID4gLmNhcmQge1xuICAgIG1hcmdpbi1ib3R0b206ICRjYXJkLWdyb3VwLW1hcmdpbjtcbiAgfVxuXG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoc20pIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZmxvdzogcm93IHdyYXA7XG4gICAgLy8gVGhlIGNoaWxkIHNlbGVjdG9yIGFsbG93cyBuZXN0ZWQgYC5jYXJkYCB3aXRoaW4gYC5jYXJkLWdyb3VwYFxuICAgIC8vIHRvIGRpc3BsYXkgcHJvcGVybHkuXG4gICAgPiAuY2FyZCB7XG4gICAgICAvLyBGbGV4YnVncyAjNDogaHR0cHM6Ly9naXRodWIuY29tL3BoaWxpcHdhbHRvbi9mbGV4YnVncyNmbGV4YnVnLTRcbiAgICAgIGZsZXg6IDEgMCAwJTtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG5cbiAgICAgICsgLmNhcmQge1xuICAgICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgICAgYm9yZGVyLWxlZnQ6IDA7XG4gICAgICB9XG5cbiAgICAgIC8vIEhhbmRsZSByb3VuZGVkIGNvcm5lcnNcbiAgICAgIEBpZiAkZW5hYmxlLXJvdW5kZWQge1xuICAgICAgICAmOm5vdCg6bGFzdC1jaGlsZCkge1xuICAgICAgICAgIEBpbmNsdWRlIGJvcmRlci1yaWdodC1yYWRpdXMoMCk7XG5cbiAgICAgICAgICAuY2FyZC1pbWctdG9wLFxuICAgICAgICAgIC5jYXJkLWhlYWRlciB7XG4gICAgICAgICAgICAvLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgcHJvcGVydHktYmxhY2tsaXN0XG4gICAgICAgICAgICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogMDtcbiAgICAgICAgICB9XG4gICAgICAgICAgLmNhcmQtaW1nLWJvdHRvbSxcbiAgICAgICAgICAuY2FyZC1mb290ZXIge1xuICAgICAgICAgICAgLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHByb3BlcnR5LWJsYWNrbGlzdFxuICAgICAgICAgICAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IDA7XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJjpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICAgICAgQGluY2x1ZGUgYm9yZGVyLWxlZnQtcmFkaXVzKDApO1xuXG4gICAgICAgICAgLmNhcmQtaW1nLXRvcCxcbiAgICAgICAgICAuY2FyZC1oZWFkZXIge1xuICAgICAgICAgICAgLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHByb3BlcnR5LWJsYWNrbGlzdFxuICAgICAgICAgICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogMDtcbiAgICAgICAgICB9XG4gICAgICAgICAgLmNhcmQtaW1nLWJvdHRvbSxcbiAgICAgICAgICAuY2FyZC1mb290ZXIge1xuICAgICAgICAgICAgLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHByb3BlcnR5LWJsYWNrbGlzdFxuICAgICAgICAgICAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogMDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuXG4vL1xuLy8gQ29sdW1uc1xuLy9cblxuLmNhcmQtY29sdW1ucyB7XG4gIC5jYXJkIHtcbiAgICBtYXJnaW4tYm90dG9tOiAkY2FyZC1jb2x1bW5zLW1hcmdpbjtcbiAgfVxuXG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoc20pIHtcbiAgICBjb2x1bW4tY291bnQ6ICRjYXJkLWNvbHVtbnMtY291bnQ7XG4gICAgY29sdW1uLWdhcDogJGNhcmQtY29sdW1ucy1nYXA7XG4gICAgb3JwaGFuczogMTtcbiAgICB3aWRvd3M6IDE7XG5cbiAgICAuY2FyZCB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IC8vIERvbid0IGxldCB0aGVtIHZlcnRpY2FsbHkgc3BhbiBtdWx0aXBsZSBjb2x1bW5zXG4gICAgICB3aWR0aDogMTAwJTsgLy8gRG9uJ3QgbGV0IHRoZWlyIHdpZHRoIGNoYW5nZVxuICAgIH1cbiAgfVxufVxuXG5cbi8vXG4vLyBBY2NvcmRpb25cbi8vXG5cbi5hY2NvcmRpb24ge1xuICA+IC5jYXJkIHtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuXG4gICAgJjpub3QoOmxhc3Qtb2YtdHlwZSkge1xuICAgICAgYm9yZGVyLWJvdHRvbTogMDtcbiAgICAgIEBpbmNsdWRlIGJvcmRlci1ib3R0b20tcmFkaXVzKDApO1xuICAgIH1cblxuICAgICY6bm90KDpmaXJzdC1vZi10eXBlKSB7XG4gICAgICBAaW5jbHVkZSBib3JkZXItdG9wLXJhZGl1cygwKTtcbiAgICB9XG5cbiAgICA+IC5jYXJkLWhlYWRlciB7XG4gICAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKDApO1xuICAgICAgbWFyZ2luLWJvdHRvbTogLSRjYXJkLWJvcmRlci13aWR0aDtcbiAgICB9XG4gIH1cbn1cbiIsIi5icmVhZGNydW1iIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwO1xuICBwYWRkaW5nOiAkYnJlYWRjcnVtYi1wYWRkaW5nLXkgJGJyZWFkY3J1bWItcGFkZGluZy14O1xuICBtYXJnaW4tYm90dG9tOiAkYnJlYWRjcnVtYi1tYXJnaW4tYm90dG9tO1xuICBAaW5jbHVkZSBmb250LXNpemUoJGJyZWFkY3J1bWItZm9udC1zaXplKTtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGJyZWFkY3J1bWItYmc7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGJyZWFkY3J1bWItYm9yZGVyLXJhZGl1cyk7XG59XG5cbi5icmVhZGNydW1iLWl0ZW0ge1xuICAvLyBUaGUgc2VwYXJhdG9yIGJldHdlZW4gYnJlYWRjcnVtYnMgKGJ5IGRlZmF1bHQsIGEgZm9yd2FyZC1zbGFzaDogXCIvXCIpXG4gICsgLmJyZWFkY3J1bWItaXRlbSB7XG4gICAgcGFkZGluZy1sZWZ0OiAkYnJlYWRjcnVtYi1pdGVtLXBhZGRpbmc7XG5cbiAgICAmOjpiZWZvcmUge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrOyAvLyBTdXBwcmVzcyB1bmRlcmxpbmluZyBvZiB0aGUgc2VwYXJhdG9yIGluIG1vZGVybiBicm93c2Vyc1xuICAgICAgcGFkZGluZy1yaWdodDogJGJyZWFkY3J1bWItaXRlbS1wYWRkaW5nO1xuICAgICAgY29sb3I6ICRicmVhZGNydW1iLWRpdmlkZXItY29sb3I7XG4gICAgICBjb250ZW50OiBlc2NhcGUtc3ZnKCRicmVhZGNydW1iLWRpdmlkZXIpO1xuICAgIH1cbiAgfVxuXG4gIC8vIElFOS0xMSBoYWNrIHRvIHByb3Blcmx5IGhhbmRsZSBoeXBlcmxpbmsgdW5kZXJsaW5lcyBmb3IgYnJlYWRjcnVtYnMgYnVpbHRcbiAgLy8gd2l0aG91dCBgPHVsPmBzLiBUaGUgYDo6YmVmb3JlYCBwc2V1ZG8tZWxlbWVudCBnZW5lcmF0ZXMgYW4gZWxlbWVudFxuICAvLyAqd2l0aGluKiB0aGUgLmJyZWFkY3J1bWItaXRlbSBhbmQgdGhlcmVieSBpbmhlcml0cyB0aGUgYHRleHQtZGVjb3JhdGlvbmAuXG4gIC8vXG4gIC8vIFRvIHRyaWNrIElFIGludG8gc3VwcHJlc3NpbmcgdGhlIHVuZGVybGluZSwgd2UgZ2l2ZSB0aGUgcHNldWRvLWVsZW1lbnQgYW5cbiAgLy8gdW5kZXJsaW5lIGFuZCB0aGVuIGltbWVkaWF0ZWx5IHJlbW92ZSBpdC5cbiAgKyAuYnJlYWRjcnVtYi1pdGVtOmhvdmVyOjpiZWZvcmUge1xuICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICB9XG4gIC8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBuby1kdXBsaWNhdGUtc2VsZWN0b3JzXG4gICsgLmJyZWFkY3J1bWItaXRlbTpob3Zlcjo6YmVmb3JlIHtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIH1cblxuICAmLmFjdGl2ZSB7XG4gICAgY29sb3I6ICRicmVhZGNydW1iLWFjdGl2ZS1jb2xvcjtcbiAgfVxufVxuIiwiLnBhZ2luYXRpb24ge1xuICBkaXNwbGF5OiBmbGV4O1xuICBAaW5jbHVkZSBsaXN0LXVuc3R5bGVkKCk7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoKTtcbn1cblxuLnBhZ2UtbGluayB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBhZGRpbmc6ICRwYWdpbmF0aW9uLXBhZGRpbmcteSAkcGFnaW5hdGlvbi1wYWRkaW5nLXg7XG4gIG1hcmdpbi1sZWZ0OiAtJHBhZ2luYXRpb24tYm9yZGVyLXdpZHRoO1xuICBsaW5lLWhlaWdodDogJHBhZ2luYXRpb24tbGluZS1oZWlnaHQ7XG4gIGNvbG9yOiAkcGFnaW5hdGlvbi1jb2xvcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHBhZ2luYXRpb24tYmc7XG4gIGJvcmRlcjogJHBhZ2luYXRpb24tYm9yZGVyLXdpZHRoIHNvbGlkICRwYWdpbmF0aW9uLWJvcmRlci1jb2xvcjtcblxuICAmOmhvdmVyIHtcbiAgICB6LWluZGV4OiAyO1xuICAgIGNvbG9yOiAkcGFnaW5hdGlvbi1ob3Zlci1jb2xvcjtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHBhZ2luYXRpb24taG92ZXItYmc7XG4gICAgYm9yZGVyLWNvbG9yOiAkcGFnaW5hdGlvbi1ob3Zlci1ib3JkZXItY29sb3I7XG4gIH1cblxuICAmOmZvY3VzIHtcbiAgICB6LWluZGV4OiAzO1xuICAgIG91dGxpbmU6ICRwYWdpbmF0aW9uLWZvY3VzLW91dGxpbmU7XG4gICAgYm94LXNoYWRvdzogJHBhZ2luYXRpb24tZm9jdXMtYm94LXNoYWRvdztcbiAgfVxufVxuXG4ucGFnZS1pdGVtIHtcbiAgJjpmaXJzdC1jaGlsZCB7XG4gICAgLnBhZ2UtbGluayB7XG4gICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgIEBpbmNsdWRlIGJvcmRlci1sZWZ0LXJhZGl1cygkYm9yZGVyLXJhZGl1cyk7XG4gICAgfVxuICB9XG4gICY6bGFzdC1jaGlsZCB7XG4gICAgLnBhZ2UtbGluayB7XG4gICAgICBAaW5jbHVkZSBib3JkZXItcmlnaHQtcmFkaXVzKCRib3JkZXItcmFkaXVzKTtcbiAgICB9XG4gIH1cblxuICAmLmFjdGl2ZSAucGFnZS1saW5rIHtcbiAgICB6LWluZGV4OiAzO1xuICAgIGNvbG9yOiAkcGFnaW5hdGlvbi1hY3RpdmUtY29sb3I7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHBhZ2luYXRpb24tYWN0aXZlLWJnO1xuICAgIGJvcmRlci1jb2xvcjogJHBhZ2luYXRpb24tYWN0aXZlLWJvcmRlci1jb2xvcjtcbiAgfVxuXG4gICYuZGlzYWJsZWQgLnBhZ2UtbGluayB7XG4gICAgY29sb3I6ICRwYWdpbmF0aW9uLWRpc2FibGVkLWNvbG9yO1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIC8vIE9waW5pb25hdGVkOiByZW1vdmUgdGhlIFwiaGFuZFwiIGN1cnNvciBzZXQgcHJldmlvdXNseSBmb3IgLnBhZ2UtbGlua1xuICAgIGN1cnNvcjogYXV0bztcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcGFnaW5hdGlvbi1kaXNhYmxlZC1iZztcbiAgICBib3JkZXItY29sb3I6ICRwYWdpbmF0aW9uLWRpc2FibGVkLWJvcmRlci1jb2xvcjtcbiAgfVxufVxuXG5cbi8vXG4vLyBTaXppbmdcbi8vXG5cbi5wYWdpbmF0aW9uLWxnIHtcbiAgQGluY2x1ZGUgcGFnaW5hdGlvbi1zaXplKCRwYWdpbmF0aW9uLXBhZGRpbmcteS1sZywgJHBhZ2luYXRpb24tcGFkZGluZy14LWxnLCAkZm9udC1zaXplLWxnLCAkbGluZS1oZWlnaHQtbGcsICRib3JkZXItcmFkaXVzLWxnKTtcbn1cblxuLnBhZ2luYXRpb24tc20ge1xuICBAaW5jbHVkZSBwYWdpbmF0aW9uLXNpemUoJHBhZ2luYXRpb24tcGFkZGluZy15LXNtLCAkcGFnaW5hdGlvbi1wYWRkaW5nLXgtc20sICRmb250LXNpemUtc20sICRsaW5lLWhlaWdodC1zbSwgJGJvcmRlci1yYWRpdXMtc20pO1xufVxuIiwiLy8gUGFnaW5hdGlvblxuXG5AbWl4aW4gcGFnaW5hdGlvbi1zaXplKCRwYWRkaW5nLXksICRwYWRkaW5nLXgsICRmb250LXNpemUsICRsaW5lLWhlaWdodCwgJGJvcmRlci1yYWRpdXMpIHtcbiAgLnBhZ2UtbGluayB7XG4gICAgcGFkZGluZzogJHBhZGRpbmcteSAkcGFkZGluZy14O1xuICAgIEBpbmNsdWRlIGZvbnQtc2l6ZSgkZm9udC1zaXplKTtcbiAgICBsaW5lLWhlaWdodDogJGxpbmUtaGVpZ2h0O1xuICB9XG5cbiAgLnBhZ2UtaXRlbSB7XG4gICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAucGFnZS1saW5rIHtcbiAgICAgICAgQGluY2x1ZGUgYm9yZGVyLWxlZnQtcmFkaXVzKCRib3JkZXItcmFkaXVzKTtcbiAgICAgIH1cbiAgICB9XG4gICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgIC5wYWdlLWxpbmsge1xuICAgICAgICBAaW5jbHVkZSBib3JkZXItcmlnaHQtcmFkaXVzKCRib3JkZXItcmFkaXVzKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8vIEJhc2UgY2xhc3Ncbi8vXG4vLyBSZXF1aXJlcyBvbmUgb2YgdGhlIGNvbnRleHR1YWwsIGNvbG9yIG1vZGlmaWVyIGNsYXNzZXMgZm9yIGBjb2xvcmAgYW5kXG4vLyBgYmFja2dyb3VuZC1jb2xvcmAuXG5cbi5iYWRnZSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgcGFkZGluZzogJGJhZGdlLXBhZGRpbmcteSAkYmFkZ2UtcGFkZGluZy14O1xuICBAaW5jbHVkZSBmb250LXNpemUoJGJhZGdlLWZvbnQtc2l6ZSk7XG4gIGZvbnQtd2VpZ2h0OiAkYmFkZ2UtZm9udC13ZWlnaHQ7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkYmFkZ2UtYm9yZGVyLXJhZGl1cyk7XG4gIEBpbmNsdWRlIHRyYW5zaXRpb24oJGJhZGdlLXRyYW5zaXRpb24pO1xuXG4gIEBhdC1yb290IGEjeyZ9IHtcbiAgICBAaW5jbHVkZSBob3Zlci1mb2N1cygpIHtcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICB9XG4gIH1cblxuICAvLyBFbXB0eSBiYWRnZXMgY29sbGFwc2UgYXV0b21hdGljYWxseVxuICAmOmVtcHR5IHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG5cbi8vIFF1aWNrIGZpeCBmb3IgYmFkZ2VzIGluIGJ1dHRvbnNcbi5idG4gLmJhZGdlIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB0b3A6IC0xcHg7XG59XG5cbi8vIFBpbGwgYmFkZ2VzXG4vL1xuLy8gTWFrZSB0aGVtIGV4dHJhIHJvdW5kZWQgd2l0aCBhIG1vZGlmaWVyIHRvIHJlcGxhY2UgdjMncyBiYWRnZXMuXG5cbi5iYWRnZS1waWxsIHtcbiAgcGFkZGluZy1yaWdodDogJGJhZGdlLXBpbGwtcGFkZGluZy14O1xuICBwYWRkaW5nLWxlZnQ6ICRiYWRnZS1waWxsLXBhZGRpbmcteDtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkYmFkZ2UtcGlsbC1ib3JkZXItcmFkaXVzKTtcbn1cblxuLy8gQ29sb3JzXG4vL1xuLy8gQ29udGV4dHVhbCB2YXJpYXRpb25zIChsaW5rZWQgYmFkZ2VzIGdldCBkYXJrZXIgb24gOmhvdmVyKS5cblxuQGVhY2ggJGNvbG9yLCAkdmFsdWUgaW4gJHRoZW1lLWNvbG9ycyB7XG4gIC5iYWRnZS0jeyRjb2xvcn0ge1xuICAgIEBpbmNsdWRlIGJhZGdlLXZhcmlhbnQoJHZhbHVlKTtcbiAgfVxufVxuIiwiQG1peGluIGJhZGdlLXZhcmlhbnQoJGJnKSB7XG4gIGNvbG9yOiBjb2xvci15aXEoJGJnKTtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGJnO1xuXG4gIEBhdC1yb290IGEjeyZ9IHtcbiAgICBAaW5jbHVkZSBob3Zlci1mb2N1cygpIHtcbiAgICAgIGNvbG9yOiBjb2xvci15aXEoJGJnKTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IGRhcmtlbigkYmcsIDEwJSk7XG4gICAgfVxuXG4gICAgJjpmb2N1cyxcbiAgICAmLmZvY3VzIHtcbiAgICAgIG91dGxpbmU6IDA7XG4gICAgICBib3gtc2hhZG93OiAwIDAgMCAkYmFkZ2UtZm9jdXMtd2lkdGggcmdiYSgkYmcsIC41KTtcbiAgICB9XG4gIH1cbn1cbiIsIi5qdW1ib3Ryb24ge1xuICBwYWRkaW5nOiAkanVtYm90cm9uLXBhZGRpbmcgKCRqdW1ib3Ryb24tcGFkZGluZyAvIDIpO1xuICBtYXJnaW4tYm90dG9tOiAkanVtYm90cm9uLXBhZGRpbmc7XG4gIGNvbG9yOiAkanVtYm90cm9uLWNvbG9yO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkanVtYm90cm9uLWJnO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRib3JkZXItcmFkaXVzLWxnKTtcblxuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKHNtKSB7XG4gICAgcGFkZGluZzogKCRqdW1ib3Ryb24tcGFkZGluZyAqIDIpICRqdW1ib3Ryb24tcGFkZGluZztcbiAgfVxufVxuXG4uanVtYm90cm9uLWZsdWlkIHtcbiAgcGFkZGluZy1yaWdodDogMDtcbiAgcGFkZGluZy1sZWZ0OiAwO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKDApO1xufVxuIiwiLy9cbi8vIEJhc2Ugc3R5bGVzXG4vL1xuXG4uYWxlcnQge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHBhZGRpbmc6ICRhbGVydC1wYWRkaW5nLXkgJGFsZXJ0LXBhZGRpbmcteDtcbiAgbWFyZ2luLWJvdHRvbTogJGFsZXJ0LW1hcmdpbi1ib3R0b207XG4gIGJvcmRlcjogJGFsZXJ0LWJvcmRlci13aWR0aCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkYWxlcnQtYm9yZGVyLXJhZGl1cyk7XG59XG5cbi8vIEhlYWRpbmdzIGZvciBsYXJnZXIgYWxlcnRzXG4uYWxlcnQtaGVhZGluZyB7XG4gIC8vIFNwZWNpZmllZCB0byBwcmV2ZW50IGNvbmZsaWN0cyBvZiBjaGFuZ2luZyAkaGVhZGluZ3MtY29sb3JcbiAgY29sb3I6IGluaGVyaXQ7XG59XG5cbi8vIFByb3ZpZGUgY2xhc3MgZm9yIGxpbmtzIHRoYXQgbWF0Y2ggYWxlcnRzXG4uYWxlcnQtbGluayB7XG4gIGZvbnQtd2VpZ2h0OiAkYWxlcnQtbGluay1mb250LXdlaWdodDtcbn1cblxuXG4vLyBEaXNtaXNzaWJsZSBhbGVydHNcbi8vXG4vLyBFeHBhbmQgdGhlIHJpZ2h0IHBhZGRpbmcgYW5kIGFjY291bnQgZm9yIHRoZSBjbG9zZSBidXR0b24ncyBwb3NpdGlvbmluZy5cblxuLmFsZXJ0LWRpc21pc3NpYmxlIHtcbiAgcGFkZGluZy1yaWdodDogJGNsb3NlLWZvbnQtc2l6ZSArICRhbGVydC1wYWRkaW5nLXggKiAyO1xuXG4gIC8vIEFkanVzdCBjbG9zZSBsaW5rIHBvc2l0aW9uXG4gIC5jbG9zZSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICByaWdodDogMDtcbiAgICBwYWRkaW5nOiAkYWxlcnQtcGFkZGluZy15ICRhbGVydC1wYWRkaW5nLXg7XG4gICAgY29sb3I6IGluaGVyaXQ7XG4gIH1cbn1cblxuXG4vLyBBbHRlcm5hdGUgc3R5bGVzXG4vL1xuLy8gR2VuZXJhdGUgY29udGV4dHVhbCBtb2RpZmllciBjbGFzc2VzIGZvciBjb2xvcml6aW5nIHRoZSBhbGVydC5cblxuQGVhY2ggJGNvbG9yLCAkdmFsdWUgaW4gJHRoZW1lLWNvbG9ycyB7XG4gIC5hbGVydC0jeyRjb2xvcn0ge1xuICAgIEBpbmNsdWRlIGFsZXJ0LXZhcmlhbnQodGhlbWUtY29sb3ItbGV2ZWwoJGNvbG9yLCAkYWxlcnQtYmctbGV2ZWwpLCB0aGVtZS1jb2xvci1sZXZlbCgkY29sb3IsICRhbGVydC1ib3JkZXItbGV2ZWwpLCB0aGVtZS1jb2xvci1sZXZlbCgkY29sb3IsICRhbGVydC1jb2xvci1sZXZlbCkpO1xuICB9XG59XG4iLCJAbWl4aW4gYWxlcnQtdmFyaWFudCgkYmFja2dyb3VuZCwgJGJvcmRlciwgJGNvbG9yKSB7XG4gIGNvbG9yOiAkY29sb3I7XG4gIEBpbmNsdWRlIGdyYWRpZW50LWJnKCRiYWNrZ3JvdW5kKTtcbiAgYm9yZGVyLWNvbG9yOiAkYm9yZGVyO1xuXG4gIGhyIHtcbiAgICBib3JkZXItdG9wLWNvbG9yOiBkYXJrZW4oJGJvcmRlciwgNSUpO1xuICB9XG5cbiAgLmFsZXJ0LWxpbmsge1xuICAgIGNvbG9yOiBkYXJrZW4oJGNvbG9yLCAxMCUpO1xuICB9XG59XG4iLCIvLyBEaXNhYmxlIGFuaW1hdGlvbiBpZiB0cmFuc2l0aW9ucyBhcmUgZGlzYWJsZWRcbkBpZiAkZW5hYmxlLXRyYW5zaXRpb25zIHtcbiAgQGtleWZyYW1lcyBwcm9ncmVzcy1iYXItc3RyaXBlcyB7XG4gICAgZnJvbSB7IGJhY2tncm91bmQtcG9zaXRpb246ICRwcm9ncmVzcy1oZWlnaHQgMDsgfVxuICAgIHRvIHsgYmFja2dyb3VuZC1wb3NpdGlvbjogMCAwOyB9XG4gIH1cbn1cblxuLnByb2dyZXNzIHtcbiAgZGlzcGxheTogZmxleDtcbiAgaGVpZ2h0OiAkcHJvZ3Jlc3MtaGVpZ2h0O1xuICBvdmVyZmxvdzogaGlkZGVuOyAvLyBmb3JjZSByb3VuZGVkIGNvcm5lcnMgYnkgY3JvcHBpbmcgaXRcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRwcm9ncmVzcy1mb250LXNpemUpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkcHJvZ3Jlc3MtYmc7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJHByb2dyZXNzLWJvcmRlci1yYWRpdXMpO1xuICBAaW5jbHVkZSBib3gtc2hhZG93KCRwcm9ncmVzcy1ib3gtc2hhZG93KTtcbn1cblxuLnByb2dyZXNzLWJhciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBjb2xvcjogJHByb2dyZXNzLWJhci1jb2xvcjtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkcHJvZ3Jlc3MtYmFyLWJnO1xuICBAaW5jbHVkZSB0cmFuc2l0aW9uKCRwcm9ncmVzcy1iYXItdHJhbnNpdGlvbik7XG59XG5cbi5wcm9ncmVzcy1iYXItc3RyaXBlZCB7XG4gIEBpbmNsdWRlIGdyYWRpZW50LXN0cmlwZWQoKTtcbiAgYmFja2dyb3VuZC1zaXplOiAkcHJvZ3Jlc3MtaGVpZ2h0ICRwcm9ncmVzcy1oZWlnaHQ7XG59XG5cbkBpZiAkZW5hYmxlLXRyYW5zaXRpb25zIHtcbiAgLnByb2dyZXNzLWJhci1hbmltYXRlZCB7XG4gICAgYW5pbWF0aW9uOiBwcm9ncmVzcy1iYXItc3RyaXBlcyAkcHJvZ3Jlc3MtYmFyLWFuaW1hdGlvbi10aW1pbmc7XG5cbiAgICBAaWYgJGVuYWJsZS1wcmVmZXJzLXJlZHVjZWQtbW90aW9uLW1lZGlhLXF1ZXJ5IHtcbiAgICAgIEBtZWRpYSAocHJlZmVycy1yZWR1Y2VkLW1vdGlvbjogcmVkdWNlKSB7XG4gICAgICAgIGFuaW1hdGlvbjogbm9uZTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi5tZWRpYSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xufVxuXG4ubWVkaWEtYm9keSB7XG4gIGZsZXg6IDE7XG59XG4iLCIvLyBCYXNlIGNsYXNzXG4vL1xuLy8gRWFzaWx5IHVzYWJsZSBvbiA8dWw+LCA8b2w+LCBvciA8ZGl2Pi5cblxuLmxpc3QtZ3JvdXAge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuXG4gIC8vIE5vIG5lZWQgdG8gc2V0IGxpc3Qtc3R5bGU6IG5vbmU7IHNpbmNlIC5saXN0LWdyb3VwLWl0ZW0gaXMgYmxvY2sgbGV2ZWxcbiAgcGFkZGluZy1sZWZ0OiAwOyAvLyByZXNldCBwYWRkaW5nIGJlY2F1c2UgdWwgYW5kIG9sXG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG5cblxuLy8gSW50ZXJhY3RpdmUgbGlzdCBpdGVtc1xuLy9cbi8vIFVzZSBhbmNob3Igb3IgYnV0dG9uIGVsZW1lbnRzIGluc3RlYWQgb2YgYGxpYHMgb3IgYGRpdmBzIHRvIGNyZWF0ZSBpbnRlcmFjdGl2ZVxuLy8gbGlzdCBpdGVtcy4gSW5jbHVkZXMgYW4gZXh0cmEgYC5hY3RpdmVgIG1vZGlmaWVyIGNsYXNzIGZvciBzZWxlY3RlZCBpdGVtcy5cblxuLmxpc3QtZ3JvdXAtaXRlbS1hY3Rpb24ge1xuICB3aWR0aDogMTAwJTsgLy8gRm9yIGA8YnV0dG9uPmBzIChhbmNob3JzIGJlY29tZSAxMDAlIGJ5IGRlZmF1bHQgdGhvdWdoKVxuICBjb2xvcjogJGxpc3QtZ3JvdXAtYWN0aW9uLWNvbG9yO1xuICB0ZXh0LWFsaWduOiBpbmhlcml0OyAvLyBGb3IgYDxidXR0b24+YHMgKGFuY2hvcnMgaW5oZXJpdClcblxuICAvLyBIb3ZlciBzdGF0ZVxuICBAaW5jbHVkZSBob3Zlci1mb2N1cygpIHtcbiAgICB6LWluZGV4OiAxOyAvLyBQbGFjZSBob3Zlci9mb2N1cyBpdGVtcyBhYm92ZSB0aGVpciBzaWJsaW5ncyBmb3IgcHJvcGVyIGJvcmRlciBzdHlsaW5nXG4gICAgY29sb3I6ICRsaXN0LWdyb3VwLWFjdGlvbi1ob3Zlci1jb2xvcjtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGxpc3QtZ3JvdXAtaG92ZXItYmc7XG4gIH1cblxuICAmOmFjdGl2ZSB7XG4gICAgY29sb3I6ICRsaXN0LWdyb3VwLWFjdGlvbi1hY3RpdmUtY29sb3I7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGxpc3QtZ3JvdXAtYWN0aW9uLWFjdGl2ZS1iZztcbiAgfVxufVxuXG5cbi8vIEluZGl2aWR1YWwgbGlzdCBpdGVtc1xuLy9cbi8vIFVzZSBvbiBgbGlgcyBvciBgZGl2YHMgd2l0aGluIHRoZSBgLmxpc3QtZ3JvdXBgIHBhcmVudC5cblxuLmxpc3QtZ3JvdXAtaXRlbSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBhZGRpbmc6ICRsaXN0LWdyb3VwLWl0ZW0tcGFkZGluZy15ICRsaXN0LWdyb3VwLWl0ZW0tcGFkZGluZy14O1xuICBjb2xvcjogJGxpc3QtZ3JvdXAtY29sb3I7XG4gIGJhY2tncm91bmQtY29sb3I6ICRsaXN0LWdyb3VwLWJnO1xuICBib3JkZXI6ICRsaXN0LWdyb3VwLWJvcmRlci13aWR0aCBzb2xpZCAkbGlzdC1ncm91cC1ib3JkZXItY29sb3I7XG5cbiAgJjpmaXJzdC1jaGlsZCB7XG4gICAgQGluY2x1ZGUgYm9yZGVyLXRvcC1yYWRpdXMoJGxpc3QtZ3JvdXAtYm9yZGVyLXJhZGl1cyk7XG4gIH1cblxuICAmOmxhc3QtY2hpbGQge1xuICAgIEBpbmNsdWRlIGJvcmRlci1ib3R0b20tcmFkaXVzKCRsaXN0LWdyb3VwLWJvcmRlci1yYWRpdXMpO1xuICB9XG5cbiAgJi5kaXNhYmxlZCxcbiAgJjpkaXNhYmxlZCB7XG4gICAgY29sb3I6ICRsaXN0LWdyb3VwLWRpc2FibGVkLWNvbG9yO1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRsaXN0LWdyb3VwLWRpc2FibGVkLWJnO1xuICB9XG5cbiAgLy8gSW5jbHVkZSBib3RoIGhlcmUgZm9yIGA8YT5gcyBhbmQgYDxidXR0b24+YHNcbiAgJi5hY3RpdmUge1xuICAgIHotaW5kZXg6IDI7IC8vIFBsYWNlIGFjdGl2ZSBpdGVtcyBhYm92ZSB0aGVpciBzaWJsaW5ncyBmb3IgcHJvcGVyIGJvcmRlciBzdHlsaW5nXG4gICAgY29sb3I6ICRsaXN0LWdyb3VwLWFjdGl2ZS1jb2xvcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbGlzdC1ncm91cC1hY3RpdmUtYmc7XG4gICAgYm9yZGVyLWNvbG9yOiAkbGlzdC1ncm91cC1hY3RpdmUtYm9yZGVyLWNvbG9yO1xuICB9XG5cbiAgJiArICYge1xuICAgIGJvcmRlci10b3Atd2lkdGg6IDA7XG5cbiAgICAmLmFjdGl2ZSB7XG4gICAgICBtYXJnaW4tdG9wOiAtJGxpc3QtZ3JvdXAtYm9yZGVyLXdpZHRoO1xuICAgICAgYm9yZGVyLXRvcC13aWR0aDogJGxpc3QtZ3JvdXAtYm9yZGVyLXdpZHRoO1xuICAgIH1cbiAgfVxufVxuXG5cbi8vIEhvcml6b250YWxcbi8vXG4vLyBDaGFuZ2UgdGhlIGxheW91dCBvZiBsaXN0IGdyb3VwIGl0ZW1zIGZyb20gdmVydGljYWwgKGRlZmF1bHQpIHRvIGhvcml6b250YWwuXG5cbkBlYWNoICRicmVha3BvaW50IGluIG1hcC1rZXlzKCRncmlkLWJyZWFrcG9pbnRzKSB7XG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJGJyZWFrcG9pbnQpIHtcbiAgICAkaW5maXg6IGJyZWFrcG9pbnQtaW5maXgoJGJyZWFrcG9pbnQsICRncmlkLWJyZWFrcG9pbnRzKTtcblxuICAgIC5saXN0LWdyb3VwLWhvcml6b250YWwjeyRpbmZpeH0ge1xuICAgICAgZmxleC1kaXJlY3Rpb246IHJvdztcblxuICAgICAgLmxpc3QtZ3JvdXAtaXRlbSB7XG4gICAgICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgICAgIEBpbmNsdWRlIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXMoJGxpc3QtZ3JvdXAtYm9yZGVyLXJhZGl1cyk7XG4gICAgICAgICAgQGluY2x1ZGUgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXMoMCk7XG4gICAgICAgIH1cblxuICAgICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICAgIEBpbmNsdWRlIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzKCRsaXN0LWdyb3VwLWJvcmRlci1yYWRpdXMpO1xuICAgICAgICAgIEBpbmNsdWRlIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXMoMCk7XG4gICAgICAgIH1cblxuICAgICAgICAmLmFjdGl2ZSB7XG4gICAgICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgICAgfVxuXG4gICAgICAgICYgKyAubGlzdC1ncm91cC1pdGVtIHtcbiAgICAgICAgICBib3JkZXItdG9wLXdpZHRoOiAkbGlzdC1ncm91cC1ib3JkZXItd2lkdGg7XG4gICAgICAgICAgYm9yZGVyLWxlZnQtd2lkdGg6IDA7XG5cbiAgICAgICAgICAmLmFjdGl2ZSB7XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogLSRsaXN0LWdyb3VwLWJvcmRlci13aWR0aDtcbiAgICAgICAgICAgIGJvcmRlci1sZWZ0LXdpZHRoOiAkbGlzdC1ncm91cC1ib3JkZXItd2lkdGg7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cblxuLy8gRmx1c2ggbGlzdCBpdGVtc1xuLy9cbi8vIFJlbW92ZSBib3JkZXJzIGFuZCBib3JkZXItcmFkaXVzIHRvIGtlZXAgbGlzdCBncm91cCBpdGVtcyBlZGdlLXRvLWVkZ2UuIE1vc3Rcbi8vIHVzZWZ1bCB3aXRoaW4gb3RoZXIgY29tcG9uZW50cyAoZS5nLiwgY2FyZHMpLlxuXG4ubGlzdC1ncm91cC1mbHVzaCB7XG4gIC5saXN0LWdyb3VwLWl0ZW0ge1xuICAgIGJvcmRlci1yaWdodC13aWR0aDogMDtcbiAgICBib3JkZXItbGVmdC13aWR0aDogMDtcbiAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKDApO1xuXG4gICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICBib3JkZXItdG9wLXdpZHRoOiAwO1xuICAgIH1cbiAgfVxuXG4gICY6bGFzdC1jaGlsZCB7XG4gICAgLmxpc3QtZ3JvdXAtaXRlbTpsYXN0LWNoaWxkIHtcbiAgICAgIGJvcmRlci1ib3R0b20td2lkdGg6IDA7XG4gICAgfVxuICB9XG59XG5cblxuLy8gQ29udGV4dHVhbCB2YXJpYW50c1xuLy9cbi8vIEFkZCBtb2RpZmllciBjbGFzc2VzIHRvIGNoYW5nZSB0ZXh0IGFuZCBiYWNrZ3JvdW5kIGNvbG9yIG9uIGluZGl2aWR1YWwgaXRlbXMuXG4vLyBPcmdhbml6YXRpb25hbGx5LCB0aGlzIG11c3QgY29tZSBhZnRlciB0aGUgYDpob3ZlcmAgc3RhdGVzLlxuXG5AZWFjaCAkY29sb3IsICR2YWx1ZSBpbiAkdGhlbWUtY29sb3JzIHtcbiAgQGluY2x1ZGUgbGlzdC1ncm91cC1pdGVtLXZhcmlhbnQoJGNvbG9yLCB0aGVtZS1jb2xvci1sZXZlbCgkY29sb3IsIC05KSwgdGhlbWUtY29sb3ItbGV2ZWwoJGNvbG9yLCA2KSk7XG59XG4iLCIvLyBMaXN0IEdyb3Vwc1xuXG5AbWl4aW4gbGlzdC1ncm91cC1pdGVtLXZhcmlhbnQoJHN0YXRlLCAkYmFja2dyb3VuZCwgJGNvbG9yKSB7XG4gIC5saXN0LWdyb3VwLWl0ZW0tI3skc3RhdGV9IHtcbiAgICBjb2xvcjogJGNvbG9yO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRiYWNrZ3JvdW5kO1xuXG4gICAgJi5saXN0LWdyb3VwLWl0ZW0tYWN0aW9uIHtcbiAgICAgIEBpbmNsdWRlIGhvdmVyLWZvY3VzKCkge1xuICAgICAgICBjb2xvcjogJGNvbG9yO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBkYXJrZW4oJGJhY2tncm91bmQsIDUlKTtcbiAgICAgIH1cblxuICAgICAgJi5hY3RpdmUge1xuICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3I7XG4gICAgICAgIGJvcmRlci1jb2xvcjogJGNvbG9yO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLmNsb3NlIHtcbiAgZmxvYXQ6IHJpZ2h0O1xuICBAaW5jbHVkZSBmb250LXNpemUoJGNsb3NlLWZvbnQtc2l6ZSk7XG4gIGZvbnQtd2VpZ2h0OiAkY2xvc2UtZm9udC13ZWlnaHQ7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICBjb2xvcjogJGNsb3NlLWNvbG9yO1xuICB0ZXh0LXNoYWRvdzogJGNsb3NlLXRleHQtc2hhZG93O1xuICBvcGFjaXR5OiAuNTtcblxuICAvLyBPdmVycmlkZSA8YT4ncyBob3ZlciBzdHlsZVxuICBAaW5jbHVkZSBob3ZlcigpIHtcbiAgICBjb2xvcjogJGNsb3NlLWNvbG9yO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgfVxuXG4gICY6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkge1xuICAgIEBpbmNsdWRlIGhvdmVyLWZvY3VzKCkge1xuICAgICAgb3BhY2l0eTogLjc1O1xuICAgIH1cbiAgfVxufVxuXG4vLyBBZGRpdGlvbmFsIHByb3BlcnRpZXMgZm9yIGJ1dHRvbiB2ZXJzaW9uXG4vLyBpT1MgcmVxdWlyZXMgdGhlIGJ1dHRvbiBlbGVtZW50IGluc3RlYWQgb2YgYW4gYW5jaG9yIHRhZy5cbi8vIElmIHlvdSB3YW50IHRoZSBhbmNob3IgdmVyc2lvbiwgaXQgcmVxdWlyZXMgYGhyZWY9XCIjXCJgLlxuLy8gU2VlIGh0dHBzOi8vZGV2ZWxvcGVyLm1vemlsbGEub3JnL2VuLVVTL2RvY3MvV2ViL0V2ZW50cy9jbGljayNTYWZhcmlfTW9iaWxlXG5cbi8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBzZWxlY3Rvci1uby1xdWFsaWZ5aW5nLXR5cGVcbmJ1dHRvbi5jbG9zZSB7XG4gIHBhZGRpbmc6IDA7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBib3JkZXI6IDA7XG4gIGFwcGVhcmFuY2U6IG5vbmU7XG59XG5cbi8vIEZ1dHVyZS1wcm9vZiBkaXNhYmxpbmcgb2YgY2xpY2tzIG9uIGA8YT5gIGVsZW1lbnRzXG5cbi8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBzZWxlY3Rvci1uby1xdWFsaWZ5aW5nLXR5cGVcbmEuY2xvc2UuZGlzYWJsZWQge1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbn1cbiIsIi50b2FzdCB7XG4gIG1heC13aWR0aDogJHRvYXN0LW1heC13aWR0aDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjsgLy8gY2hlYXAgcm91bmRlZCBjb3JuZXJzIG9uIG5lc3RlZCBpdGVtc1xuICBAaW5jbHVkZSBmb250LXNpemUoJHRvYXN0LWZvbnQtc2l6ZSk7XG4gIGNvbG9yOiAkdG9hc3QtY29sb3I7XG4gIGJhY2tncm91bmQtY29sb3I6ICR0b2FzdC1iYWNrZ3JvdW5kLWNvbG9yO1xuICBiYWNrZ3JvdW5kLWNsaXA6IHBhZGRpbmctYm94O1xuICBib3JkZXI6ICR0b2FzdC1ib3JkZXItd2lkdGggc29saWQgJHRvYXN0LWJvcmRlci1jb2xvcjtcbiAgYm94LXNoYWRvdzogJHRvYXN0LWJveC1zaGFkb3c7XG4gIGJhY2tkcm9wLWZpbHRlcjogYmx1cigxMHB4KTtcbiAgb3BhY2l0eTogMDtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkdG9hc3QtYm9yZGVyLXJhZGl1cyk7XG5cbiAgJjpub3QoOmxhc3QtY2hpbGQpIHtcbiAgICBtYXJnaW4tYm90dG9tOiAkdG9hc3QtcGFkZGluZy14O1xuICB9XG5cbiAgJi5zaG93aW5nIHtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG5cbiAgJi5zaG93IHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBvcGFjaXR5OiAxO1xuICB9XG5cbiAgJi5oaWRlIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG5cbi50b2FzdC1oZWFkZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBwYWRkaW5nOiAkdG9hc3QtcGFkZGluZy15ICR0b2FzdC1wYWRkaW5nLXg7XG4gIGNvbG9yOiAkdG9hc3QtaGVhZGVyLWNvbG9yO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkdG9hc3QtaGVhZGVyLWJhY2tncm91bmQtY29sb3I7XG4gIGJhY2tncm91bmQtY2xpcDogcGFkZGluZy1ib3g7XG4gIGJvcmRlci1ib3R0b206ICR0b2FzdC1ib3JkZXItd2lkdGggc29saWQgJHRvYXN0LWhlYWRlci1ib3JkZXItY29sb3I7XG59XG5cbi50b2FzdC1ib2R5IHtcbiAgcGFkZGluZzogJHRvYXN0LXBhZGRpbmcteDsgLy8gYXBwbHkgdG8gYm90aCB2ZXJ0aWNhbCBhbmQgaG9yaXpvbnRhbFxufVxuIiwiLy8gLm1vZGFsLW9wZW4gICAgICAtIGJvZHkgY2xhc3MgZm9yIGtpbGxpbmcgdGhlIHNjcm9sbFxuLy8gLm1vZGFsICAgICAgICAgICAtIGNvbnRhaW5lciB0byBzY3JvbGwgd2l0aGluXG4vLyAubW9kYWwtZGlhbG9nICAgIC0gcG9zaXRpb25pbmcgc2hlbGwgZm9yIHRoZSBhY3R1YWwgbW9kYWxcbi8vIC5tb2RhbC1jb250ZW50ICAgLSBhY3R1YWwgbW9kYWwgdy8gYmcgYW5kIGNvcm5lcnMgYW5kIHN0dWZmXG5cblxuLm1vZGFsLW9wZW4ge1xuICAvLyBLaWxsIHRoZSBzY3JvbGwgb24gdGhlIGJvZHlcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcblxuICAubW9kYWwge1xuICAgIG92ZXJmbG93LXg6IGhpZGRlbjtcbiAgICBvdmVyZmxvdy15OiBhdXRvO1xuICB9XG59XG5cbi8vIENvbnRhaW5lciB0aGF0IHRoZSBtb2RhbCBzY3JvbGxzIHdpdGhpblxuLm1vZGFsIHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHotaW5kZXg6ICR6aW5kZXgtbW9kYWw7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIC8vIFByZXZlbnQgQ2hyb21lIG9uIFdpbmRvd3MgZnJvbSBhZGRpbmcgYSBmb2N1cyBvdXRsaW5lLiBGb3IgZGV0YWlscywgc2VlXG4gIC8vIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9wdWxsLzEwOTUxLlxuICBvdXRsaW5lOiAwO1xuICAvLyBXZSBkZWxpYmVyYXRlbHkgZG9uJ3QgdXNlIGAtd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzogdG91Y2g7YCBkdWUgdG8gYVxuICAvLyBnbmFybHkgaU9TIFNhZmFyaSBidWc6IGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNTgzNDJcbiAgLy8gU2VlIGFsc28gaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8xNzY5NVxufVxuXG4vLyBTaGVsbCBkaXYgdG8gcG9zaXRpb24gdGhlIG1vZGFsIHdpdGggYm90dG9tIHBhZGRpbmdcbi5tb2RhbC1kaWFsb2cge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHdpZHRoOiBhdXRvO1xuICBtYXJnaW46ICRtb2RhbC1kaWFsb2ctbWFyZ2luO1xuICAvLyBhbGxvdyBjbGlja3MgdG8gcGFzcyB0aHJvdWdoIGZvciBjdXN0b20gY2xpY2sgaGFuZGxpbmcgdG8gY2xvc2UgbW9kYWxcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG5cbiAgLy8gV2hlbiBmYWRpbmcgaW4gdGhlIG1vZGFsLCBhbmltYXRlIGl0IHRvIHNsaWRlIGRvd25cbiAgLm1vZGFsLmZhZGUgJiB7XG4gICAgQGluY2x1ZGUgdHJhbnNpdGlvbigkbW9kYWwtdHJhbnNpdGlvbik7XG4gICAgdHJhbnNmb3JtOiAkbW9kYWwtZmFkZS10cmFuc2Zvcm07XG4gIH1cbiAgLm1vZGFsLnNob3cgJiB7XG4gICAgdHJhbnNmb3JtOiAkbW9kYWwtc2hvdy10cmFuc2Zvcm07XG4gIH1cblxuICAvLyBXaGVuIHRyeWluZyB0byBjbG9zZSwgYW5pbWF0ZSBmb2N1cyB0byBzY2FsZVxuICAubW9kYWwubW9kYWwtc3RhdGljICYge1xuICAgIHRyYW5zZm9ybTogJG1vZGFsLXNjYWxlLXRyYW5zZm9ybTtcbiAgfVxufVxuXG4ubW9kYWwtZGlhbG9nLXNjcm9sbGFibGUge1xuICBkaXNwbGF5OiBmbGV4OyAvLyBJRTEwLzExXG4gIG1heC1oZWlnaHQ6IHN1YnRyYWN0KDEwMCUsICRtb2RhbC1kaWFsb2ctbWFyZ2luICogMik7XG5cbiAgLm1vZGFsLWNvbnRlbnQge1xuICAgIG1heC1oZWlnaHQ6IHN1YnRyYWN0KDEwMHZoLCAkbW9kYWwtZGlhbG9nLW1hcmdpbiAqIDIpOyAvLyBJRTEwLzExXG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgfVxuXG4gIC5tb2RhbC1oZWFkZXIsXG4gIC5tb2RhbC1mb290ZXIge1xuICAgIGZsZXgtc2hyaW5rOiAwO1xuICB9XG5cbiAgLm1vZGFsLWJvZHkge1xuICAgIG92ZXJmbG93LXk6IGF1dG87XG4gIH1cbn1cblxuLm1vZGFsLWRpYWxvZy1jZW50ZXJlZCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIG1pbi1oZWlnaHQ6IHN1YnRyYWN0KDEwMCUsICRtb2RhbC1kaWFsb2ctbWFyZ2luICogMik7XG5cbiAgLy8gRW5zdXJlIGBtb2RhbC1kaWFsb2ctY2VudGVyZWRgIGV4dGVuZHMgdGhlIGZ1bGwgaGVpZ2h0IG9mIHRoZSB2aWV3IChJRTEwLzExKVxuICAmOjpiZWZvcmUge1xuICAgIGRpc3BsYXk6IGJsb2NrOyAvLyBJRTEwXG4gICAgaGVpZ2h0OiBzdWJ0cmFjdCgxMDB2aCwgJG1vZGFsLWRpYWxvZy1tYXJnaW4gKiAyKTtcbiAgICBjb250ZW50OiBcIlwiO1xuICB9XG5cbiAgLy8gRW5zdXJlIGAubW9kYWwtYm9keWAgc2hvd3Mgc2Nyb2xsYmFyIChJRTEwLzExKVxuICAmLm1vZGFsLWRpYWxvZy1zY3JvbGxhYmxlIHtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIGhlaWdodDogMTAwJTtcblxuICAgIC5tb2RhbC1jb250ZW50IHtcbiAgICAgIG1heC1oZWlnaHQ6IG5vbmU7XG4gICAgfVxuXG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIGNvbnRlbnQ6IG5vbmU7XG4gICAgfVxuICB9XG59XG5cbi8vIEFjdHVhbCBtb2RhbFxuLm1vZGFsLWNvbnRlbnQge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIHdpZHRoOiAxMDAlOyAvLyBFbnN1cmUgYC5tb2RhbC1jb250ZW50YCBleHRlbmRzIHRoZSBmdWxsIHdpZHRoIG9mIHRoZSBwYXJlbnQgYC5tb2RhbC1kaWFsb2dgXG4gIC8vIGNvdW50ZXJhY3QgdGhlIHBvaW50ZXItZXZlbnRzOiBub25lOyBpbiB0aGUgLm1vZGFsLWRpYWxvZ1xuICBjb2xvcjogJG1vZGFsLWNvbnRlbnQtY29sb3I7XG4gIHBvaW50ZXItZXZlbnRzOiBhdXRvO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkbW9kYWwtY29udGVudC1iZztcbiAgYmFja2dyb3VuZC1jbGlwOiBwYWRkaW5nLWJveDtcbiAgYm9yZGVyOiAkbW9kYWwtY29udGVudC1ib3JkZXItd2lkdGggc29saWQgJG1vZGFsLWNvbnRlbnQtYm9yZGVyLWNvbG9yO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRtb2RhbC1jb250ZW50LWJvcmRlci1yYWRpdXMpO1xuICBAaW5jbHVkZSBib3gtc2hhZG93KCRtb2RhbC1jb250ZW50LWJveC1zaGFkb3cteHMpO1xuICAvLyBSZW1vdmUgZm9jdXMgb3V0bGluZSBmcm9tIG9wZW5lZCBtb2RhbFxuICBvdXRsaW5lOiAwO1xufVxuXG4vLyBNb2RhbCBiYWNrZ3JvdW5kXG4ubW9kYWwtYmFja2Ryb3Age1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgei1pbmRleDogJHppbmRleC1tb2RhbC1iYWNrZHJvcDtcbiAgd2lkdGg6IDEwMHZ3O1xuICBoZWlnaHQ6IDEwMHZoO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkbW9kYWwtYmFja2Ryb3AtYmc7XG5cbiAgLy8gRmFkZSBmb3IgYmFja2Ryb3BcbiAgJi5mYWRlIHsgb3BhY2l0eTogMDsgfVxuICAmLnNob3cgeyBvcGFjaXR5OiAkbW9kYWwtYmFja2Ryb3Atb3BhY2l0eTsgfVxufVxuXG4vLyBNb2RhbCBoZWFkZXJcbi8vIFRvcCBzZWN0aW9uIG9mIHRoZSBtb2RhbCB3LyB0aXRsZSBhbmQgZGlzbWlzc1xuLm1vZGFsLWhlYWRlciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0OyAvLyBzbyB0aGUgY2xvc2UgYnRuIGFsd2F5cyBzdGF5cyBvbiB0aGUgdXBwZXIgcmlnaHQgY29ybmVyXG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjsgLy8gUHV0IG1vZGFsIGhlYWRlciBlbGVtZW50cyAodGl0bGUgYW5kIGRpc21pc3MpIG9uIG9wcG9zaXRlIGVuZHNcbiAgcGFkZGluZzogJG1vZGFsLWhlYWRlci1wYWRkaW5nO1xuICBib3JkZXItYm90dG9tOiAkbW9kYWwtaGVhZGVyLWJvcmRlci13aWR0aCBzb2xpZCAkbW9kYWwtaGVhZGVyLWJvcmRlci1jb2xvcjtcbiAgQGluY2x1ZGUgYm9yZGVyLXRvcC1yYWRpdXMoJG1vZGFsLWNvbnRlbnQtaW5uZXItYm9yZGVyLXJhZGl1cyk7XG5cbiAgLmNsb3NlIHtcbiAgICBwYWRkaW5nOiAkbW9kYWwtaGVhZGVyLXBhZGRpbmc7XG4gICAgLy8gYXV0byBvbiB0aGUgbGVmdCBmb3JjZSBpY29uIHRvIHRoZSByaWdodCBldmVuIHdoZW4gdGhlcmUgaXMgbm8gLm1vZGFsLXRpdGxlXG4gICAgbWFyZ2luOiAoLSRtb2RhbC1oZWFkZXItcGFkZGluZy15KSAoLSRtb2RhbC1oZWFkZXItcGFkZGluZy14KSAoLSRtb2RhbC1oZWFkZXItcGFkZGluZy15KSBhdXRvO1xuICB9XG59XG5cbi8vIFRpdGxlIHRleHQgd2l0aGluIGhlYWRlclxuLm1vZGFsLXRpdGxlIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgbGluZS1oZWlnaHQ6ICRtb2RhbC10aXRsZS1saW5lLWhlaWdodDtcbn1cblxuLy8gTW9kYWwgYm9keVxuLy8gV2hlcmUgYWxsIG1vZGFsIGNvbnRlbnQgcmVzaWRlcyAoc2libGluZyBvZiAubW9kYWwtaGVhZGVyIGFuZCAubW9kYWwtZm9vdGVyKVxuLm1vZGFsLWJvZHkge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIC8vIEVuYWJsZSBgZmxleC1ncm93OiAxYCBzbyB0aGF0IHRoZSBib2R5IHRha2UgdXAgYXMgbXVjaCBzcGFjZSBhcyBwb3NzaWJsZVxuICAvLyB3aGVuIHRoZXJlIHNob3VsZCBiZSBhIGZpeGVkIGhlaWdodCBvbiBgLm1vZGFsLWRpYWxvZ2AuXG4gIGZsZXg6IDEgMSBhdXRvO1xuICBwYWRkaW5nOiAkbW9kYWwtaW5uZXItcGFkZGluZztcbn1cblxuLy8gRm9vdGVyIChmb3IgYWN0aW9ucylcbi5tb2RhbC1mb290ZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7IC8vIHZlcnRpY2FsbHkgY2VudGVyXG4gIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7IC8vIFJpZ2h0IGFsaWduIGJ1dHRvbnMgd2l0aCBmbGV4IHByb3BlcnR5IGJlY2F1c2UgdGV4dC1hbGlnbiBkb2Vzbid0IHdvcmsgb24gZmxleCBpdGVtc1xuICBwYWRkaW5nOiAkbW9kYWwtaW5uZXItcGFkZGluZyAtICRtb2RhbC1mb290ZXItbWFyZ2luLWJldHdlZW4gLyAyO1xuICBib3JkZXItdG9wOiAkbW9kYWwtZm9vdGVyLWJvcmRlci13aWR0aCBzb2xpZCAkbW9kYWwtZm9vdGVyLWJvcmRlci1jb2xvcjtcbiAgQGluY2x1ZGUgYm9yZGVyLWJvdHRvbS1yYWRpdXMoJG1vZGFsLWNvbnRlbnQtaW5uZXItYm9yZGVyLXJhZGl1cyk7XG5cbiAgLy8gUGxhY2UgbWFyZ2luIGJldHdlZW4gZm9vdGVyIGVsZW1lbnRzXG4gIC8vIFRoaXMgc29sdXRpb24gaXMgZmFyIGZyb20gaWRlYWwgYmVjYXVzZSBvZiB0aGUgdW5pdmVyc2FsIHNlbGVjdG9yIHVzYWdlLFxuICAvLyBidXQgaXMgbmVlZGVkIHRvIGZpeCBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzI0ODAwXG4gIC8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBzZWxlY3Rvci1tYXgtdW5pdmVyc2FsXG4gID4gKiB7XG4gICAgbWFyZ2luOiAkbW9kYWwtZm9vdGVyLW1hcmdpbi1iZXR3ZWVuIC8gMjtcbiAgfVxufVxuXG4vLyBNZWFzdXJlIHNjcm9sbGJhciB3aWR0aCBmb3IgcGFkZGluZyBib2R5IGR1cmluZyBtb2RhbCBzaG93L2hpZGVcbi5tb2RhbC1zY3JvbGxiYXItbWVhc3VyZSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAtOTk5OXB4O1xuICB3aWR0aDogNTBweDtcbiAgaGVpZ2h0OiA1MHB4O1xuICBvdmVyZmxvdzogc2Nyb2xsO1xufVxuXG4vLyBTY2FsZSB1cCB0aGUgbW9kYWxcbkBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoc20pIHtcbiAgLy8gQXV0b21hdGljYWxseSBzZXQgbW9kYWwncyB3aWR0aCBmb3IgbGFyZ2VyIHZpZXdwb3J0c1xuICAubW9kYWwtZGlhbG9nIHtcbiAgICBtYXgtd2lkdGg6ICRtb2RhbC1tZDtcbiAgICBtYXJnaW46ICRtb2RhbC1kaWFsb2ctbWFyZ2luLXktc20tdXAgYXV0bztcbiAgfVxuXG4gIC5tb2RhbC1kaWFsb2ctc2Nyb2xsYWJsZSB7XG4gICAgbWF4LWhlaWdodDogc3VidHJhY3QoMTAwJSwgJG1vZGFsLWRpYWxvZy1tYXJnaW4teS1zbS11cCAqIDIpO1xuXG4gICAgLm1vZGFsLWNvbnRlbnQge1xuICAgICAgbWF4LWhlaWdodDogc3VidHJhY3QoMTAwdmgsICRtb2RhbC1kaWFsb2ctbWFyZ2luLXktc20tdXAgKiAyKTtcbiAgICB9XG4gIH1cblxuICAubW9kYWwtZGlhbG9nLWNlbnRlcmVkIHtcbiAgICBtaW4taGVpZ2h0OiBzdWJ0cmFjdCgxMDAlLCAkbW9kYWwtZGlhbG9nLW1hcmdpbi15LXNtLXVwICogMik7XG5cbiAgICAmOjpiZWZvcmUge1xuICAgICAgaGVpZ2h0OiBzdWJ0cmFjdCgxMDB2aCwgJG1vZGFsLWRpYWxvZy1tYXJnaW4teS1zbS11cCAqIDIpO1xuICAgIH1cbiAgfVxuXG4gIC5tb2RhbC1jb250ZW50IHtcbiAgICBAaW5jbHVkZSBib3gtc2hhZG93KCRtb2RhbC1jb250ZW50LWJveC1zaGFkb3ctc20tdXApO1xuICB9XG5cbiAgLm1vZGFsLXNtIHsgbWF4LXdpZHRoOiAkbW9kYWwtc207IH1cbn1cblxuQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChsZykge1xuICAubW9kYWwtbGcsXG4gIC5tb2RhbC14bCB7XG4gICAgbWF4LXdpZHRoOiAkbW9kYWwtbGc7XG4gIH1cbn1cblxuQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCh4bCkge1xuICAubW9kYWwteGwgeyBtYXgtd2lkdGg6ICRtb2RhbC14bDsgfVxufVxuIiwiLy8gQmFzZSBjbGFzc1xuLnRvb2x0aXAge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHotaW5kZXg6ICR6aW5kZXgtdG9vbHRpcDtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbjogJHRvb2x0aXAtbWFyZ2luO1xuICAvLyBPdXIgcGFyZW50IGVsZW1lbnQgY2FuIGJlIGFyYml0cmFyeSBzaW5jZSB0b29sdGlwcyBhcmUgYnkgZGVmYXVsdCBpbnNlcnRlZCBhcyBhIHNpYmxpbmcgb2YgdGhlaXIgdGFyZ2V0IGVsZW1lbnQuXG4gIC8vIFNvIHJlc2V0IG91ciBmb250IGFuZCB0ZXh0IHByb3BlcnRpZXMgdG8gYXZvaWQgaW5oZXJpdGluZyB3ZWlyZCB2YWx1ZXMuXG4gIEBpbmNsdWRlIHJlc2V0LXRleHQoKTtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCR0b29sdGlwLWZvbnQtc2l6ZSk7XG4gIC8vIEFsbG93IGJyZWFraW5nIHZlcnkgbG9uZyB3b3JkcyBzbyB0aGV5IGRvbid0IG92ZXJmbG93IHRoZSB0b29sdGlwJ3MgYm91bmRzXG4gIHdvcmQtd3JhcDogYnJlYWstd29yZDtcbiAgb3BhY2l0eTogMDtcblxuICAmLnNob3cgeyBvcGFjaXR5OiAkdG9vbHRpcC1vcGFjaXR5OyB9XG5cbiAgLmFycm93IHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6ICR0b29sdGlwLWFycm93LXdpZHRoO1xuICAgIGhlaWdodDogJHRvb2x0aXAtYXJyb3ctaGVpZ2h0O1xuXG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbiAgICB9XG4gIH1cbn1cblxuLmJzLXRvb2x0aXAtdG9wIHtcbiAgcGFkZGluZzogJHRvb2x0aXAtYXJyb3ctaGVpZ2h0IDA7XG5cbiAgLmFycm93IHtcbiAgICBib3R0b206IDA7XG5cbiAgICAmOjpiZWZvcmUge1xuICAgICAgdG9wOiAwO1xuICAgICAgYm9yZGVyLXdpZHRoOiAkdG9vbHRpcC1hcnJvdy1oZWlnaHQgKCR0b29sdGlwLWFycm93LXdpZHRoIC8gMikgMDtcbiAgICAgIGJvcmRlci10b3AtY29sb3I6ICR0b29sdGlwLWFycm93LWNvbG9yO1xuICAgIH1cbiAgfVxufVxuXG4uYnMtdG9vbHRpcC1yaWdodCB7XG4gIHBhZGRpbmc6IDAgJHRvb2x0aXAtYXJyb3ctaGVpZ2h0O1xuXG4gIC5hcnJvdyB7XG4gICAgbGVmdDogMDtcbiAgICB3aWR0aDogJHRvb2x0aXAtYXJyb3ctaGVpZ2h0O1xuICAgIGhlaWdodDogJHRvb2x0aXAtYXJyb3ctd2lkdGg7XG5cbiAgICAmOjpiZWZvcmUge1xuICAgICAgcmlnaHQ6IDA7XG4gICAgICBib3JkZXItd2lkdGg6ICgkdG9vbHRpcC1hcnJvdy13aWR0aCAvIDIpICR0b29sdGlwLWFycm93LWhlaWdodCAoJHRvb2x0aXAtYXJyb3ctd2lkdGggLyAyKSAwO1xuICAgICAgYm9yZGVyLXJpZ2h0LWNvbG9yOiAkdG9vbHRpcC1hcnJvdy1jb2xvcjtcbiAgICB9XG4gIH1cbn1cblxuLmJzLXRvb2x0aXAtYm90dG9tIHtcbiAgcGFkZGluZzogJHRvb2x0aXAtYXJyb3ctaGVpZ2h0IDA7XG5cbiAgLmFycm93IHtcbiAgICB0b3A6IDA7XG5cbiAgICAmOjpiZWZvcmUge1xuICAgICAgYm90dG9tOiAwO1xuICAgICAgYm9yZGVyLXdpZHRoOiAwICgkdG9vbHRpcC1hcnJvdy13aWR0aCAvIDIpICR0b29sdGlwLWFycm93LWhlaWdodDtcbiAgICAgIGJvcmRlci1ib3R0b20tY29sb3I6ICR0b29sdGlwLWFycm93LWNvbG9yO1xuICAgIH1cbiAgfVxufVxuXG4uYnMtdG9vbHRpcC1sZWZ0IHtcbiAgcGFkZGluZzogMCAkdG9vbHRpcC1hcnJvdy1oZWlnaHQ7XG5cbiAgLmFycm93IHtcbiAgICByaWdodDogMDtcbiAgICB3aWR0aDogJHRvb2x0aXAtYXJyb3ctaGVpZ2h0O1xuICAgIGhlaWdodDogJHRvb2x0aXAtYXJyb3ctd2lkdGg7XG5cbiAgICAmOjpiZWZvcmUge1xuICAgICAgbGVmdDogMDtcbiAgICAgIGJvcmRlci13aWR0aDogKCR0b29sdGlwLWFycm93LXdpZHRoIC8gMikgMCAoJHRvb2x0aXAtYXJyb3ctd2lkdGggLyAyKSAkdG9vbHRpcC1hcnJvdy1oZWlnaHQ7XG4gICAgICBib3JkZXItbGVmdC1jb2xvcjogJHRvb2x0aXAtYXJyb3ctY29sb3I7XG4gICAgfVxuICB9XG59XG5cbi5icy10b29sdGlwLWF1dG8ge1xuICAmW3gtcGxhY2VtZW50Xj1cInRvcFwiXSB7XG4gICAgQGV4dGVuZCAuYnMtdG9vbHRpcC10b3A7XG4gIH1cbiAgJlt4LXBsYWNlbWVudF49XCJyaWdodFwiXSB7XG4gICAgQGV4dGVuZCAuYnMtdG9vbHRpcC1yaWdodDtcbiAgfVxuICAmW3gtcGxhY2VtZW50Xj1cImJvdHRvbVwiXSB7XG4gICAgQGV4dGVuZCAuYnMtdG9vbHRpcC1ib3R0b207XG4gIH1cbiAgJlt4LXBsYWNlbWVudF49XCJsZWZ0XCJdIHtcbiAgICBAZXh0ZW5kIC5icy10b29sdGlwLWxlZnQ7XG4gIH1cbn1cblxuLy8gV3JhcHBlciBmb3IgdGhlIHRvb2x0aXAgY29udGVudFxuLnRvb2x0aXAtaW5uZXIge1xuICBtYXgtd2lkdGg6ICR0b29sdGlwLW1heC13aWR0aDtcbiAgcGFkZGluZzogJHRvb2x0aXAtcGFkZGluZy15ICR0b29sdGlwLXBhZGRpbmcteDtcbiAgY29sb3I6ICR0b29sdGlwLWNvbG9yO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGJhY2tncm91bmQtY29sb3I6ICR0b29sdGlwLWJnO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCR0b29sdGlwLWJvcmRlci1yYWRpdXMpO1xufVxuIiwiQG1peGluIHJlc2V0LXRleHQoKSB7XG4gIGZvbnQtZmFtaWx5OiAkZm9udC1mYW1pbHktYmFzZTtcbiAgLy8gV2UgZGVsaWJlcmF0ZWx5IGRvIE5PVCByZXNldCBmb250LXNpemUgb3Igd29yZC13cmFwLlxuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtbm9ybWFsO1xuICBsaW5lLWhlaWdodDogJGxpbmUtaGVpZ2h0LWJhc2U7XG4gIHRleHQtYWxpZ246IGxlZnQ7IC8vIEZhbGxiYWNrIGZvciB3aGVyZSBgc3RhcnRgIGlzIG5vdCBzdXBwb3J0ZWRcbiAgdGV4dC1hbGlnbjogc3RhcnQ7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgdGV4dC1zaGFkb3c6IG5vbmU7XG4gIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICBsZXR0ZXItc3BhY2luZzogbm9ybWFsO1xuICB3b3JkLWJyZWFrOiBub3JtYWw7XG4gIHdvcmQtc3BhY2luZzogbm9ybWFsO1xuICB3aGl0ZS1zcGFjZTogbm9ybWFsO1xuICBsaW5lLWJyZWFrOiBhdXRvO1xufVxuIiwiLnBvcG92ZXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgei1pbmRleDogJHppbmRleC1wb3BvdmVyO1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWF4LXdpZHRoOiAkcG9wb3Zlci1tYXgtd2lkdGg7XG4gIC8vIE91ciBwYXJlbnQgZWxlbWVudCBjYW4gYmUgYXJiaXRyYXJ5IHNpbmNlIHRvb2x0aXBzIGFyZSBieSBkZWZhdWx0IGluc2VydGVkIGFzIGEgc2libGluZyBvZiB0aGVpciB0YXJnZXQgZWxlbWVudC5cbiAgLy8gU28gcmVzZXQgb3VyIGZvbnQgYW5kIHRleHQgcHJvcGVydGllcyB0byBhdm9pZCBpbmhlcml0aW5nIHdlaXJkIHZhbHVlcy5cbiAgQGluY2x1ZGUgcmVzZXQtdGV4dCgpO1xuICBAaW5jbHVkZSBmb250LXNpemUoJHBvcG92ZXItZm9udC1zaXplKTtcbiAgLy8gQWxsb3cgYnJlYWtpbmcgdmVyeSBsb25nIHdvcmRzIHNvIHRoZXkgZG9uJ3Qgb3ZlcmZsb3cgdGhlIHBvcG92ZXIncyBib3VuZHNcbiAgd29yZC13cmFwOiBicmVhay13b3JkO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkcG9wb3Zlci1iZztcbiAgYmFja2dyb3VuZC1jbGlwOiBwYWRkaW5nLWJveDtcbiAgYm9yZGVyOiAkcG9wb3Zlci1ib3JkZXItd2lkdGggc29saWQgJHBvcG92ZXItYm9yZGVyLWNvbG9yO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRwb3BvdmVyLWJvcmRlci1yYWRpdXMpO1xuICBAaW5jbHVkZSBib3gtc2hhZG93KCRwb3BvdmVyLWJveC1zaGFkb3cpO1xuXG4gIC5hcnJvdyB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAkcG9wb3Zlci1hcnJvdy13aWR0aDtcbiAgICBoZWlnaHQ6ICRwb3BvdmVyLWFycm93LWhlaWdodDtcbiAgICBtYXJnaW46IDAgJHBvcG92ZXItYm9yZGVyLXJhZGl1cztcblxuICAgICY6OmJlZm9yZSxcbiAgICAmOjphZnRlciB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbiAgICB9XG4gIH1cbn1cblxuLmJzLXBvcG92ZXItdG9wIHtcbiAgbWFyZ2luLWJvdHRvbTogJHBvcG92ZXItYXJyb3ctaGVpZ2h0O1xuXG4gID4gLmFycm93IHtcbiAgICBib3R0b206IHN1YnRyYWN0KC0kcG9wb3Zlci1hcnJvdy1oZWlnaHQsICRwb3BvdmVyLWJvcmRlci13aWR0aCk7XG5cbiAgICAmOjpiZWZvcmUge1xuICAgICAgYm90dG9tOiAwO1xuICAgICAgYm9yZGVyLXdpZHRoOiAkcG9wb3Zlci1hcnJvdy1oZWlnaHQgKCRwb3BvdmVyLWFycm93LXdpZHRoIC8gMikgMDtcbiAgICAgIGJvcmRlci10b3AtY29sb3I6ICRwb3BvdmVyLWFycm93LW91dGVyLWNvbG9yO1xuICAgIH1cblxuICAgICY6OmFmdGVyIHtcbiAgICAgIGJvdHRvbTogJHBvcG92ZXItYm9yZGVyLXdpZHRoO1xuICAgICAgYm9yZGVyLXdpZHRoOiAkcG9wb3Zlci1hcnJvdy1oZWlnaHQgKCRwb3BvdmVyLWFycm93LXdpZHRoIC8gMikgMDtcbiAgICAgIGJvcmRlci10b3AtY29sb3I6ICRwb3BvdmVyLWFycm93LWNvbG9yO1xuICAgIH1cbiAgfVxufVxuXG4uYnMtcG9wb3Zlci1yaWdodCB7XG4gIG1hcmdpbi1sZWZ0OiAkcG9wb3Zlci1hcnJvdy1oZWlnaHQ7XG5cbiAgPiAuYXJyb3cge1xuICAgIGxlZnQ6IHN1YnRyYWN0KC0kcG9wb3Zlci1hcnJvdy1oZWlnaHQsICRwb3BvdmVyLWJvcmRlci13aWR0aCk7XG4gICAgd2lkdGg6ICRwb3BvdmVyLWFycm93LWhlaWdodDtcbiAgICBoZWlnaHQ6ICRwb3BvdmVyLWFycm93LXdpZHRoO1xuICAgIG1hcmdpbjogJHBvcG92ZXItYm9yZGVyLXJhZGl1cyAwOyAvLyBtYWtlIHN1cmUgdGhlIGFycm93IGRvZXMgbm90IHRvdWNoIHRoZSBwb3BvdmVyJ3Mgcm91bmRlZCBjb3JuZXJzXG5cbiAgICAmOjpiZWZvcmUge1xuICAgICAgbGVmdDogMDtcbiAgICAgIGJvcmRlci13aWR0aDogKCRwb3BvdmVyLWFycm93LXdpZHRoIC8gMikgJHBvcG92ZXItYXJyb3ctaGVpZ2h0ICgkcG9wb3Zlci1hcnJvdy13aWR0aCAvIDIpIDA7XG4gICAgICBib3JkZXItcmlnaHQtY29sb3I6ICRwb3BvdmVyLWFycm93LW91dGVyLWNvbG9yO1xuICAgIH1cblxuICAgICY6OmFmdGVyIHtcbiAgICAgIGxlZnQ6ICRwb3BvdmVyLWJvcmRlci13aWR0aDtcbiAgICAgIGJvcmRlci13aWR0aDogKCRwb3BvdmVyLWFycm93LXdpZHRoIC8gMikgJHBvcG92ZXItYXJyb3ctaGVpZ2h0ICgkcG9wb3Zlci1hcnJvdy13aWR0aCAvIDIpIDA7XG4gICAgICBib3JkZXItcmlnaHQtY29sb3I6ICRwb3BvdmVyLWFycm93LWNvbG9yO1xuICAgIH1cbiAgfVxufVxuXG4uYnMtcG9wb3Zlci1ib3R0b20ge1xuICBtYXJnaW4tdG9wOiAkcG9wb3Zlci1hcnJvdy1oZWlnaHQ7XG5cbiAgPiAuYXJyb3cge1xuICAgIHRvcDogc3VidHJhY3QoLSRwb3BvdmVyLWFycm93LWhlaWdodCwgJHBvcG92ZXItYm9yZGVyLXdpZHRoKTtcblxuICAgICY6OmJlZm9yZSB7XG4gICAgICB0b3A6IDA7XG4gICAgICBib3JkZXItd2lkdGg6IDAgKCRwb3BvdmVyLWFycm93LXdpZHRoIC8gMikgJHBvcG92ZXItYXJyb3ctaGVpZ2h0ICgkcG9wb3Zlci1hcnJvdy13aWR0aCAvIDIpO1xuICAgICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogJHBvcG92ZXItYXJyb3ctb3V0ZXItY29sb3I7XG4gICAgfVxuXG4gICAgJjo6YWZ0ZXIge1xuICAgICAgdG9wOiAkcG9wb3Zlci1ib3JkZXItd2lkdGg7XG4gICAgICBib3JkZXItd2lkdGg6IDAgKCRwb3BvdmVyLWFycm93LXdpZHRoIC8gMikgJHBvcG92ZXItYXJyb3ctaGVpZ2h0ICgkcG9wb3Zlci1hcnJvdy13aWR0aCAvIDIpO1xuICAgICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogJHBvcG92ZXItYXJyb3ctY29sb3I7XG4gICAgfVxuICB9XG5cbiAgLy8gVGhpcyB3aWxsIHJlbW92ZSB0aGUgcG9wb3Zlci1oZWFkZXIncyBib3JkZXIganVzdCBiZWxvdyB0aGUgYXJyb3dcbiAgLnBvcG92ZXItaGVhZGVyOjpiZWZvcmUge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogNTAlO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAkcG9wb3Zlci1hcnJvdy13aWR0aDtcbiAgICBtYXJnaW4tbGVmdDogLSRwb3BvdmVyLWFycm93LXdpZHRoIC8gMjtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIGJvcmRlci1ib3R0b206ICRwb3BvdmVyLWJvcmRlci13aWR0aCBzb2xpZCAkcG9wb3Zlci1oZWFkZXItYmc7XG4gIH1cbn1cblxuLmJzLXBvcG92ZXItbGVmdCB7XG4gIG1hcmdpbi1yaWdodDogJHBvcG92ZXItYXJyb3ctaGVpZ2h0O1xuXG4gID4gLmFycm93IHtcbiAgICByaWdodDogc3VidHJhY3QoLSRwb3BvdmVyLWFycm93LWhlaWdodCwgJHBvcG92ZXItYm9yZGVyLXdpZHRoKTtcbiAgICB3aWR0aDogJHBvcG92ZXItYXJyb3ctaGVpZ2h0O1xuICAgIGhlaWdodDogJHBvcG92ZXItYXJyb3ctd2lkdGg7XG4gICAgbWFyZ2luOiAkcG9wb3Zlci1ib3JkZXItcmFkaXVzIDA7IC8vIG1ha2Ugc3VyZSB0aGUgYXJyb3cgZG9lcyBub3QgdG91Y2ggdGhlIHBvcG92ZXIncyByb3VuZGVkIGNvcm5lcnNcblxuICAgICY6OmJlZm9yZSB7XG4gICAgICByaWdodDogMDtcbiAgICAgIGJvcmRlci13aWR0aDogKCRwb3BvdmVyLWFycm93LXdpZHRoIC8gMikgMCAoJHBvcG92ZXItYXJyb3ctd2lkdGggLyAyKSAkcG9wb3Zlci1hcnJvdy1oZWlnaHQ7XG4gICAgICBib3JkZXItbGVmdC1jb2xvcjogJHBvcG92ZXItYXJyb3ctb3V0ZXItY29sb3I7XG4gICAgfVxuXG4gICAgJjo6YWZ0ZXIge1xuICAgICAgcmlnaHQ6ICRwb3BvdmVyLWJvcmRlci13aWR0aDtcbiAgICAgIGJvcmRlci13aWR0aDogKCRwb3BvdmVyLWFycm93LXdpZHRoIC8gMikgMCAoJHBvcG92ZXItYXJyb3ctd2lkdGggLyAyKSAkcG9wb3Zlci1hcnJvdy1oZWlnaHQ7XG4gICAgICBib3JkZXItbGVmdC1jb2xvcjogJHBvcG92ZXItYXJyb3ctY29sb3I7XG4gICAgfVxuICB9XG59XG5cbi5icy1wb3BvdmVyLWF1dG8ge1xuICAmW3gtcGxhY2VtZW50Xj1cInRvcFwiXSB7XG4gICAgQGV4dGVuZCAuYnMtcG9wb3Zlci10b3A7XG4gIH1cbiAgJlt4LXBsYWNlbWVudF49XCJyaWdodFwiXSB7XG4gICAgQGV4dGVuZCAuYnMtcG9wb3Zlci1yaWdodDtcbiAgfVxuICAmW3gtcGxhY2VtZW50Xj1cImJvdHRvbVwiXSB7XG4gICAgQGV4dGVuZCAuYnMtcG9wb3Zlci1ib3R0b207XG4gIH1cbiAgJlt4LXBsYWNlbWVudF49XCJsZWZ0XCJdIHtcbiAgICBAZXh0ZW5kIC5icy1wb3BvdmVyLWxlZnQ7XG4gIH1cbn1cblxuXG4vLyBPZmZzZXQgdGhlIHBvcG92ZXIgdG8gYWNjb3VudCBmb3IgdGhlIHBvcG92ZXIgYXJyb3dcbi5wb3BvdmVyLWhlYWRlciB7XG4gIHBhZGRpbmc6ICRwb3BvdmVyLWhlYWRlci1wYWRkaW5nLXkgJHBvcG92ZXItaGVhZGVyLXBhZGRpbmcteDtcbiAgbWFyZ2luLWJvdHRvbTogMDsgLy8gUmVzZXQgdGhlIGRlZmF1bHQgZnJvbSBSZWJvb3RcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRmb250LXNpemUtYmFzZSk7XG4gIGNvbG9yOiAkcG9wb3Zlci1oZWFkZXItY29sb3I7XG4gIGJhY2tncm91bmQtY29sb3I6ICRwb3BvdmVyLWhlYWRlci1iZztcbiAgYm9yZGVyLWJvdHRvbTogJHBvcG92ZXItYm9yZGVyLXdpZHRoIHNvbGlkIGRhcmtlbigkcG9wb3Zlci1oZWFkZXItYmcsIDUlKTtcbiAgQGluY2x1ZGUgYm9yZGVyLXRvcC1yYWRpdXMoJHBvcG92ZXItaW5uZXItYm9yZGVyLXJhZGl1cyk7XG5cbiAgJjplbXB0eSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuXG4ucG9wb3Zlci1ib2R5IHtcbiAgcGFkZGluZzogJHBvcG92ZXItYm9keS1wYWRkaW5nLXkgJHBvcG92ZXItYm9keS1wYWRkaW5nLXg7XG4gIGNvbG9yOiAkcG9wb3Zlci1ib2R5LWNvbG9yO1xufVxuIiwiLy8gTm90ZXMgb24gdGhlIGNsYXNzZXM6XG4vL1xuLy8gMS4gLmNhcm91c2VsLnBvaW50ZXItZXZlbnQgc2hvdWxkIGlkZWFsbHkgYmUgcGFuLXkgKHRvIGFsbG93IGZvciB1c2VycyB0byBzY3JvbGwgdmVydGljYWxseSlcbi8vICAgIGV2ZW4gd2hlbiB0aGVpciBzY3JvbGwgYWN0aW9uIHN0YXJ0ZWQgb24gYSBjYXJvdXNlbCwgYnV0IGZvciBjb21wYXRpYmlsaXR5ICh3aXRoIEZpcmVmb3gpXG4vLyAgICB3ZSdyZSBwcmV2ZW50aW5nIGFsbCBhY3Rpb25zIGluc3RlYWRcbi8vIDIuIFRoZSAuY2Fyb3VzZWwtaXRlbS1sZWZ0IGFuZCAuY2Fyb3VzZWwtaXRlbS1yaWdodCBpcyB1c2VkIHRvIGluZGljYXRlIHdoZXJlXG4vLyAgICB0aGUgYWN0aXZlIHNsaWRlIGlzIGhlYWRpbmcuXG4vLyAzLiAuYWN0aXZlLmNhcm91c2VsLWl0ZW0gaXMgdGhlIGN1cnJlbnQgc2xpZGUuXG4vLyA0LiAuYWN0aXZlLmNhcm91c2VsLWl0ZW0tbGVmdCBhbmQgLmFjdGl2ZS5jYXJvdXNlbC1pdGVtLXJpZ2h0IGlzIHRoZSBjdXJyZW50XG4vLyAgICBzbGlkZSBpbiBpdHMgaW4tdHJhbnNpdGlvbiBzdGF0ZS4gT25seSBvbmUgb2YgdGhlc2Ugb2NjdXJzIGF0IGEgdGltZS5cbi8vIDUuIC5jYXJvdXNlbC1pdGVtLW5leHQuY2Fyb3VzZWwtaXRlbS1sZWZ0IGFuZCAuY2Fyb3VzZWwtaXRlbS1wcmV2LmNhcm91c2VsLWl0ZW0tcmlnaHRcbi8vICAgIGlzIHRoZSB1cGNvbWluZyBzbGlkZSBpbiB0cmFuc2l0aW9uLlxuXG4uY2Fyb3VzZWwge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi5jYXJvdXNlbC5wb2ludGVyLWV2ZW50IHtcbiAgdG91Y2gtYWN0aW9uOiBwYW4teTtcbn1cblxuLmNhcm91c2VsLWlubmVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB3aWR0aDogMTAwJTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgQGluY2x1ZGUgY2xlYXJmaXgoKTtcbn1cblxuLmNhcm91c2VsLWl0ZW0ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIGZsb2F0OiBsZWZ0O1xuICB3aWR0aDogMTAwJTtcbiAgbWFyZ2luLXJpZ2h0OiAtMTAwJTtcbiAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICBAaW5jbHVkZSB0cmFuc2l0aW9uKCRjYXJvdXNlbC10cmFuc2l0aW9uKTtcbn1cblxuLmNhcm91c2VsLWl0ZW0uYWN0aXZlLFxuLmNhcm91c2VsLWl0ZW0tbmV4dCxcbi5jYXJvdXNlbC1pdGVtLXByZXYge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLmNhcm91c2VsLWl0ZW0tbmV4dDpub3QoLmNhcm91c2VsLWl0ZW0tbGVmdCksXG4uYWN0aXZlLmNhcm91c2VsLWl0ZW0tcmlnaHQge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMTAwJSk7XG59XG5cbi5jYXJvdXNlbC1pdGVtLXByZXY6bm90KC5jYXJvdXNlbC1pdGVtLXJpZ2h0KSxcbi5hY3RpdmUuY2Fyb3VzZWwtaXRlbS1sZWZ0IHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0xMDAlKTtcbn1cblxuXG4vL1xuLy8gQWx0ZXJuYXRlIHRyYW5zaXRpb25zXG4vL1xuXG4uY2Fyb3VzZWwtZmFkZSB7XG4gIC5jYXJvdXNlbC1pdGVtIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHRyYW5zaXRpb24tcHJvcGVydHk6IG9wYWNpdHk7XG4gICAgdHJhbnNmb3JtOiBub25lO1xuICB9XG5cbiAgLmNhcm91c2VsLWl0ZW0uYWN0aXZlLFxuICAuY2Fyb3VzZWwtaXRlbS1uZXh0LmNhcm91c2VsLWl0ZW0tbGVmdCxcbiAgLmNhcm91c2VsLWl0ZW0tcHJldi5jYXJvdXNlbC1pdGVtLXJpZ2h0IHtcbiAgICB6LWluZGV4OiAxO1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cblxuICAuYWN0aXZlLmNhcm91c2VsLWl0ZW0tbGVmdCxcbiAgLmFjdGl2ZS5jYXJvdXNlbC1pdGVtLXJpZ2h0IHtcbiAgICB6LWluZGV4OiAwO1xuICAgIG9wYWNpdHk6IDA7XG4gICAgQGluY2x1ZGUgdHJhbnNpdGlvbihvcGFjaXR5IDBzICRjYXJvdXNlbC10cmFuc2l0aW9uLWR1cmF0aW9uKTtcbiAgfVxufVxuXG5cbi8vXG4vLyBMZWZ0L3JpZ2h0IGNvbnRyb2xzIGZvciBuYXZcbi8vXG5cbi5jYXJvdXNlbC1jb250cm9sLXByZXYsXG4uY2Fyb3VzZWwtY29udHJvbC1uZXh0IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGJvdHRvbTogMDtcbiAgei1pbmRleDogMTtcbiAgLy8gVXNlIGZsZXggZm9yIGFsaWdubWVudCAoMS0zKVxuICBkaXNwbGF5OiBmbGV4OyAvLyAxLiBhbGxvdyBmbGV4IHN0eWxlc1xuICBhbGlnbi1pdGVtczogY2VudGVyOyAvLyAyLiB2ZXJ0aWNhbGx5IGNlbnRlciBjb250ZW50c1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsgLy8gMy4gaG9yaXpvbnRhbGx5IGNlbnRlciBjb250ZW50c1xuICB3aWR0aDogJGNhcm91c2VsLWNvbnRyb2wtd2lkdGg7XG4gIGNvbG9yOiAkY2Fyb3VzZWwtY29udHJvbC1jb2xvcjtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBvcGFjaXR5OiAkY2Fyb3VzZWwtY29udHJvbC1vcGFjaXR5O1xuICBAaW5jbHVkZSB0cmFuc2l0aW9uKCRjYXJvdXNlbC1jb250cm9sLXRyYW5zaXRpb24pO1xuXG4gIC8vIEhvdmVyL2ZvY3VzIHN0YXRlXG4gIEBpbmNsdWRlIGhvdmVyLWZvY3VzKCkge1xuICAgIGNvbG9yOiAkY2Fyb3VzZWwtY29udHJvbC1jb2xvcjtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgb3V0bGluZTogMDtcbiAgICBvcGFjaXR5OiAkY2Fyb3VzZWwtY29udHJvbC1ob3Zlci1vcGFjaXR5O1xuICB9XG59XG4uY2Fyb3VzZWwtY29udHJvbC1wcmV2IHtcbiAgbGVmdDogMDtcbiAgQGlmICRlbmFibGUtZ3JhZGllbnRzIHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQoOTBkZWcsIHJnYmEoJGJsYWNrLCAuMjUpLCByZ2JhKCRibGFjaywgLjAwMSkpO1xuICB9XG59XG4uY2Fyb3VzZWwtY29udHJvbC1uZXh0IHtcbiAgcmlnaHQ6IDA7XG4gIEBpZiAkZW5hYmxlLWdyYWRpZW50cyB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KDI3MGRlZywgcmdiYSgkYmxhY2ssIC4yNSksIHJnYmEoJGJsYWNrLCAuMDAxKSk7XG4gIH1cbn1cblxuLy8gSWNvbnMgZm9yIHdpdGhpblxuLmNhcm91c2VsLWNvbnRyb2wtcHJldi1pY29uLFxuLmNhcm91c2VsLWNvbnRyb2wtbmV4dC1pY29uIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB3aWR0aDogJGNhcm91c2VsLWNvbnRyb2wtaWNvbi13aWR0aDtcbiAgaGVpZ2h0OiAkY2Fyb3VzZWwtY29udHJvbC1pY29uLXdpZHRoO1xuICBiYWNrZ3JvdW5kOiBuby1yZXBlYXQgNTAlIC8gMTAwJSAxMDAlO1xufVxuLmNhcm91c2VsLWNvbnRyb2wtcHJldi1pY29uIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogZXNjYXBlLXN2ZygkY2Fyb3VzZWwtY29udHJvbC1wcmV2LWljb24tYmcpO1xufVxuLmNhcm91c2VsLWNvbnRyb2wtbmV4dC1pY29uIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogZXNjYXBlLXN2ZygkY2Fyb3VzZWwtY29udHJvbC1uZXh0LWljb24tYmcpO1xufVxuXG5cbi8vIE9wdGlvbmFsIGluZGljYXRvciBwaXBzXG4vL1xuLy8gQWRkIGFuIG9yZGVyZWQgbGlzdCB3aXRoIHRoZSBmb2xsb3dpbmcgY2xhc3MgYW5kIGFkZCBhIGxpc3QgaXRlbSBmb3IgZWFjaFxuLy8gc2xpZGUgeW91ciBjYXJvdXNlbCBob2xkcy5cblxuLmNhcm91c2VsLWluZGljYXRvcnMge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHJpZ2h0OiAwO1xuICBib3R0b206IDA7XG4gIGxlZnQ6IDA7XG4gIHotaW5kZXg6IDE1O1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgcGFkZGluZy1sZWZ0OiAwOyAvLyBvdmVycmlkZSA8b2w+IGRlZmF1bHRcbiAgLy8gVXNlIHRoZSAuY2Fyb3VzZWwtY29udHJvbCdzIHdpZHRoIGFzIG1hcmdpbiBzbyB3ZSBkb24ndCBvdmVybGF5IHRob3NlXG4gIG1hcmdpbi1yaWdodDogJGNhcm91c2VsLWNvbnRyb2wtd2lkdGg7XG4gIG1hcmdpbi1sZWZ0OiAkY2Fyb3VzZWwtY29udHJvbC13aWR0aDtcbiAgbGlzdC1zdHlsZTogbm9uZTtcblxuICBsaSB7XG4gICAgYm94LXNpemluZzogY29udGVudC1ib3g7XG4gICAgZmxleDogMCAxIGF1dG87XG4gICAgd2lkdGg6ICRjYXJvdXNlbC1pbmRpY2F0b3Itd2lkdGg7XG4gICAgaGVpZ2h0OiAkY2Fyb3VzZWwtaW5kaWNhdG9yLWhlaWdodDtcbiAgICBtYXJnaW4tcmlnaHQ6ICRjYXJvdXNlbC1pbmRpY2F0b3Itc3BhY2VyO1xuICAgIG1hcmdpbi1sZWZ0OiAkY2Fyb3VzZWwtaW5kaWNhdG9yLXNwYWNlcjtcbiAgICB0ZXh0LWluZGVudDogLTk5OXB4O1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY2Fyb3VzZWwtaW5kaWNhdG9yLWFjdGl2ZS1iZztcbiAgICBiYWNrZ3JvdW5kLWNsaXA6IHBhZGRpbmctYm94O1xuICAgIC8vIFVzZSB0cmFuc3BhcmVudCBib3JkZXJzIHRvIGluY3JlYXNlIHRoZSBoaXQgYXJlYSBieSAxMHB4IG9uIHRvcCBhbmQgYm90dG9tLlxuICAgIGJvcmRlci10b3A6ICRjYXJvdXNlbC1pbmRpY2F0b3ItaGl0LWFyZWEtaGVpZ2h0IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgIGJvcmRlci1ib3R0b206ICRjYXJvdXNlbC1pbmRpY2F0b3ItaGl0LWFyZWEtaGVpZ2h0IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgIG9wYWNpdHk6IC41O1xuICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oJGNhcm91c2VsLWluZGljYXRvci10cmFuc2l0aW9uKTtcbiAgfVxuXG4gIC5hY3RpdmUge1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cbn1cblxuXG4vLyBPcHRpb25hbCBjYXB0aW9uc1xuLy9cbi8vXG5cbi5jYXJvdXNlbC1jYXB0aW9uIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICByaWdodDogKDEwMCUgLSAkY2Fyb3VzZWwtY2FwdGlvbi13aWR0aCkgLyAyO1xuICBib3R0b206IDIwcHg7XG4gIGxlZnQ6ICgxMDAlIC0gJGNhcm91c2VsLWNhcHRpb24td2lkdGgpIC8gMjtcbiAgei1pbmRleDogMTA7XG4gIHBhZGRpbmctdG9wOiAyMHB4O1xuICBwYWRkaW5nLWJvdHRvbTogMjBweDtcbiAgY29sb3I6ICRjYXJvdXNlbC1jYXB0aW9uLWNvbG9yO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG4iLCJAbWl4aW4gY2xlYXJmaXgoKSB7XG4gICY6OmFmdGVyIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBjbGVhcjogYm90aDtcbiAgICBjb250ZW50OiBcIlwiO1xuICB9XG59XG4iLCIvL1xuLy8gUm90YXRpbmcgYm9yZGVyXG4vL1xuXG5Aa2V5ZnJhbWVzIHNwaW5uZXItYm9yZGVyIHtcbiAgdG8geyB0cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpOyB9XG59XG5cbi5zcGlubmVyLWJvcmRlciB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgd2lkdGg6ICRzcGlubmVyLXdpZHRoO1xuICBoZWlnaHQ6ICRzcGlubmVyLWhlaWdodDtcbiAgdmVydGljYWwtYWxpZ246IHRleHQtYm90dG9tO1xuICBib3JkZXI6ICRzcGlubmVyLWJvcmRlci13aWR0aCBzb2xpZCBjdXJyZW50Q29sb3I7XG4gIGJvcmRlci1yaWdodC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIC8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBwcm9wZXJ0eS1ibGFja2xpc3RcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xuICBhbmltYXRpb246IHNwaW5uZXItYm9yZGVyIC43NXMgbGluZWFyIGluZmluaXRlO1xufVxuXG4uc3Bpbm5lci1ib3JkZXItc20ge1xuICB3aWR0aDogJHNwaW5uZXItd2lkdGgtc207XG4gIGhlaWdodDogJHNwaW5uZXItaGVpZ2h0LXNtO1xuICBib3JkZXItd2lkdGg6ICRzcGlubmVyLWJvcmRlci13aWR0aC1zbTtcbn1cblxuLy9cbi8vIEdyb3dpbmcgY2lyY2xlXG4vL1xuXG5Aa2V5ZnJhbWVzIHNwaW5uZXItZ3JvdyB7XG4gIDAlIHtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDApO1xuICB9XG4gIDUwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxufVxuXG4uc3Bpbm5lci1ncm93IHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB3aWR0aDogJHNwaW5uZXItd2lkdGg7XG4gIGhlaWdodDogJHNwaW5uZXItaGVpZ2h0O1xuICB2ZXJ0aWNhbC1hbGlnbjogdGV4dC1ib3R0b207XG4gIGJhY2tncm91bmQtY29sb3I6IGN1cnJlbnRDb2xvcjtcbiAgLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHByb3BlcnR5LWJsYWNrbGlzdFxuICBib3JkZXItcmFkaXVzOiA1MCU7XG4gIG9wYWNpdHk6IDA7XG4gIGFuaW1hdGlvbjogc3Bpbm5lci1ncm93IC43NXMgbGluZWFyIGluZmluaXRlO1xufVxuXG4uc3Bpbm5lci1ncm93LXNtIHtcbiAgd2lkdGg6ICRzcGlubmVyLXdpZHRoLXNtO1xuICBoZWlnaHQ6ICRzcGlubmVyLWhlaWdodC1zbTtcbn1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudFxuXG4uYWxpZ24tYmFzZWxpbmUgICAgeyB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmUgIWltcG9ydGFudDsgfSAvLyBCcm93c2VyIGRlZmF1bHRcbi5hbGlnbi10b3AgICAgICAgICB7IHZlcnRpY2FsLWFsaWduOiB0b3AgIWltcG9ydGFudDsgfVxuLmFsaWduLW1pZGRsZSAgICAgIHsgdmVydGljYWwtYWxpZ246IG1pZGRsZSAhaW1wb3J0YW50OyB9XG4uYWxpZ24tYm90dG9tICAgICAgeyB2ZXJ0aWNhbC1hbGlnbjogYm90dG9tICFpbXBvcnRhbnQ7IH1cbi5hbGlnbi10ZXh0LWJvdHRvbSB7IHZlcnRpY2FsLWFsaWduOiB0ZXh0LWJvdHRvbSAhaW1wb3J0YW50OyB9XG4uYWxpZ24tdGV4dC10b3AgICAgeyB2ZXJ0aWNhbC1hbGlnbjogdGV4dC10b3AgIWltcG9ydGFudDsgfVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50XG5cbi8vIENvbnRleHR1YWwgYmFja2dyb3VuZHNcblxuQG1peGluIGJnLXZhcmlhbnQoJHBhcmVudCwgJGNvbG9yLCAkaWdub3JlLXdhcm5pbmc6IGZhbHNlKSB7XG4gICN7JHBhcmVudH0ge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvciAhaW1wb3J0YW50O1xuICB9XG4gIGEjeyRwYXJlbnR9LFxuICBidXR0b24jeyRwYXJlbnR9IHtcbiAgICBAaW5jbHVkZSBob3Zlci1mb2N1cygpIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IGRhcmtlbigkY29sb3IsIDEwJSkgIWltcG9ydGFudDtcbiAgICB9XG4gIH1cbiAgQGluY2x1ZGUgZGVwcmVjYXRlKFwiVGhlIGBiZy12YXJpYW50YCBtaXhpblwiLCBcInY0LjQuMFwiLCBcInY1XCIsICRpZ25vcmUtd2FybmluZyk7XG59XG5cbkBtaXhpbiBiZy1ncmFkaWVudC12YXJpYW50KCRwYXJlbnQsICRjb2xvcikge1xuICAjeyRwYXJlbnR9IHtcbiAgICBiYWNrZ3JvdW5kOiAkY29sb3IgbGluZWFyLWdyYWRpZW50KDE4MGRlZywgbWl4KCRib2R5LWJnLCAkY29sb3IsIDE1JSksICRjb2xvcikgcmVwZWF0LXggIWltcG9ydGFudDtcbiAgfVxufVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50XG5cbkBlYWNoICRjb2xvciwgJHZhbHVlIGluICR0aGVtZS1jb2xvcnMge1xuICBAaW5jbHVkZSBiZy12YXJpYW50KFwiLmJnLSN7JGNvbG9yfVwiLCAkdmFsdWUsIHRydWUpO1xufVxuXG5AaWYgJGVuYWJsZS1ncmFkaWVudHMge1xuICBAZWFjaCAkY29sb3IsICR2YWx1ZSBpbiAkdGhlbWUtY29sb3JzIHtcbiAgICBAaW5jbHVkZSBiZy1ncmFkaWVudC12YXJpYW50KFwiLmJnLWdyYWRpZW50LSN7JGNvbG9yfVwiLCAkdmFsdWUpO1xuICB9XG59XG5cbi5iZy13aGl0ZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZSAhaW1wb3J0YW50O1xufVxuXG4uYmctdHJhbnNwYXJlbnQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xufVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgcHJvcGVydHktYmxhY2tsaXN0LCBkZWNsYXJhdGlvbi1uby1pbXBvcnRhbnRcblxuLy9cbi8vIEJvcmRlclxuLy9cblxuLmJvcmRlciAgICAgICAgIHsgYm9yZGVyOiAkYm9yZGVyLXdpZHRoIHNvbGlkICRib3JkZXItY29sb3IgIWltcG9ydGFudDsgfVxuLmJvcmRlci10b3AgICAgIHsgYm9yZGVyLXRvcDogJGJvcmRlci13aWR0aCBzb2xpZCAkYm9yZGVyLWNvbG9yICFpbXBvcnRhbnQ7IH1cbi5ib3JkZXItcmlnaHQgICB7IGJvcmRlci1yaWdodDogJGJvcmRlci13aWR0aCBzb2xpZCAkYm9yZGVyLWNvbG9yICFpbXBvcnRhbnQ7IH1cbi5ib3JkZXItYm90dG9tICB7IGJvcmRlci1ib3R0b206ICRib3JkZXItd2lkdGggc29saWQgJGJvcmRlci1jb2xvciAhaW1wb3J0YW50OyB9XG4uYm9yZGVyLWxlZnQgICAgeyBib3JkZXItbGVmdDogJGJvcmRlci13aWR0aCBzb2xpZCAkYm9yZGVyLWNvbG9yICFpbXBvcnRhbnQ7IH1cblxuLmJvcmRlci0wICAgICAgICB7IGJvcmRlcjogMCAhaW1wb3J0YW50OyB9XG4uYm9yZGVyLXRvcC0wICAgIHsgYm9yZGVyLXRvcDogMCAhaW1wb3J0YW50OyB9XG4uYm9yZGVyLXJpZ2h0LTAgIHsgYm9yZGVyLXJpZ2h0OiAwICFpbXBvcnRhbnQ7IH1cbi5ib3JkZXItYm90dG9tLTAgeyBib3JkZXItYm90dG9tOiAwICFpbXBvcnRhbnQ7IH1cbi5ib3JkZXItbGVmdC0wICAgeyBib3JkZXItbGVmdDogMCAhaW1wb3J0YW50OyB9XG5cbkBlYWNoICRjb2xvciwgJHZhbHVlIGluICR0aGVtZS1jb2xvcnMge1xuICAuYm9yZGVyLSN7JGNvbG9yfSB7XG4gICAgYm9yZGVyLWNvbG9yOiAkdmFsdWUgIWltcG9ydGFudDtcbiAgfVxufVxuXG4uYm9yZGVyLXdoaXRlIHtcbiAgYm9yZGVyLWNvbG9yOiAkd2hpdGUgIWltcG9ydGFudDtcbn1cblxuLy9cbi8vIEJvcmRlci1yYWRpdXNcbi8vXG5cbi5yb3VuZGVkLXNtIHtcbiAgYm9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXMtc20gIWltcG9ydGFudDtcbn1cblxuLnJvdW5kZWQge1xuICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cyAhaW1wb3J0YW50O1xufVxuXG4ucm91bmRlZC10b3Age1xuICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAkYm9yZGVyLXJhZGl1cyAhaW1wb3J0YW50O1xuICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogJGJvcmRlci1yYWRpdXMgIWltcG9ydGFudDtcbn1cblxuLnJvdW5kZWQtcmlnaHQge1xuICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogJGJvcmRlci1yYWRpdXMgIWltcG9ydGFudDtcbiAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6ICRib3JkZXItcmFkaXVzICFpbXBvcnRhbnQ7XG59XG5cbi5yb3VuZGVkLWJvdHRvbSB7XG4gIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAkYm9yZGVyLXJhZGl1cyAhaW1wb3J0YW50O1xuICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAkYm9yZGVyLXJhZGl1cyAhaW1wb3J0YW50O1xufVxuXG4ucm91bmRlZC1sZWZ0IHtcbiAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogJGJvcmRlci1yYWRpdXMgIWltcG9ydGFudDtcbiAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogJGJvcmRlci1yYWRpdXMgIWltcG9ydGFudDtcbn1cblxuLnJvdW5kZWQtbGcge1xuICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cy1sZyAhaW1wb3J0YW50O1xufVxuXG4ucm91bmRlZC1jaXJjbGUge1xuICBib3JkZXItcmFkaXVzOiA1MCUgIWltcG9ydGFudDtcbn1cblxuLnJvdW5kZWQtcGlsbCB7XG4gIGJvcmRlci1yYWRpdXM6ICRyb3VuZGVkLXBpbGwgIWltcG9ydGFudDtcbn1cblxuLnJvdW5kZWQtMCB7XG4gIGJvcmRlci1yYWRpdXM6IDAgIWltcG9ydGFudDtcbn1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudFxuXG4vL1xuLy8gVXRpbGl0aWVzIGZvciBjb21tb24gYGRpc3BsYXlgIHZhbHVlc1xuLy9cblxuQGVhY2ggJGJyZWFrcG9pbnQgaW4gbWFwLWtleXMoJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgkYnJlYWtwb2ludCkge1xuICAgICRpbmZpeDogYnJlYWtwb2ludC1pbmZpeCgkYnJlYWtwb2ludCwgJGdyaWQtYnJlYWtwb2ludHMpO1xuXG4gICAgQGVhY2ggJHZhbHVlIGluICRkaXNwbGF5cyB7XG4gICAgICAuZCN7JGluZml4fS0jeyR2YWx1ZX0geyBkaXNwbGF5OiAkdmFsdWUgIWltcG9ydGFudDsgfVxuICAgIH1cbiAgfVxufVxuXG5cbi8vXG4vLyBVdGlsaXRpZXMgZm9yIHRvZ2dsaW5nIGBkaXNwbGF5YCBpbiBwcmludFxuLy9cblxuQG1lZGlhIHByaW50IHtcbiAgQGVhY2ggJHZhbHVlIGluICRkaXNwbGF5cyB7XG4gICAgLmQtcHJpbnQtI3skdmFsdWV9IHsgZGlzcGxheTogJHZhbHVlICFpbXBvcnRhbnQ7IH1cbiAgfVxufVxuIiwiLy8gQ3JlZGl0OiBOaWNvbGFzIEdhbGxhZ2hlciBhbmQgU1VJVCBDU1MuXG5cbi5lbWJlZC1yZXNwb25zaXZlIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmc6IDA7XG4gIG92ZXJmbG93OiBoaWRkZW47XG5cbiAgJjo6YmVmb3JlIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBjb250ZW50OiBcIlwiO1xuICB9XG5cbiAgLmVtYmVkLXJlc3BvbnNpdmUtaXRlbSxcbiAgaWZyYW1lLFxuICBlbWJlZCxcbiAgb2JqZWN0LFxuICB2aWRlbyB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBib3R0b206IDA7XG4gICAgbGVmdDogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgYm9yZGVyOiAwO1xuICB9XG59XG5cbkBlYWNoICRlbWJlZC1yZXNwb25zaXZlLWFzcGVjdC1yYXRpbyBpbiAkZW1iZWQtcmVzcG9uc2l2ZS1hc3BlY3QtcmF0aW9zIHtcbiAgJGVtYmVkLXJlc3BvbnNpdmUtYXNwZWN0LXJhdGlvLXg6IG50aCgkZW1iZWQtcmVzcG9uc2l2ZS1hc3BlY3QtcmF0aW8sIDEpO1xuICAkZW1iZWQtcmVzcG9uc2l2ZS1hc3BlY3QtcmF0aW8teTogbnRoKCRlbWJlZC1yZXNwb25zaXZlLWFzcGVjdC1yYXRpbywgMik7XG5cbiAgLmVtYmVkLXJlc3BvbnNpdmUtI3skZW1iZWQtcmVzcG9uc2l2ZS1hc3BlY3QtcmF0aW8teH1ieSN7JGVtYmVkLXJlc3BvbnNpdmUtYXNwZWN0LXJhdGlvLXl9IHtcbiAgICAmOjpiZWZvcmUge1xuICAgICAgcGFkZGluZy10b3A6IHBlcmNlbnRhZ2UoJGVtYmVkLXJlc3BvbnNpdmUtYXNwZWN0LXJhdGlvLXkgLyAkZW1iZWQtcmVzcG9uc2l2ZS1hc3BlY3QtcmF0aW8teCk7XG4gICAgfVxuICB9XG59XG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBkZWNsYXJhdGlvbi1uby1pbXBvcnRhbnRcblxuLy8gRmxleCB2YXJpYXRpb25cbi8vXG4vLyBDdXN0b20gc3R5bGVzIGZvciBhZGRpdGlvbmFsIGZsZXggYWxpZ25tZW50IG9wdGlvbnMuXG5cbkBlYWNoICRicmVha3BvaW50IGluIG1hcC1rZXlzKCRncmlkLWJyZWFrcG9pbnRzKSB7XG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJGJyZWFrcG9pbnQpIHtcbiAgICAkaW5maXg6IGJyZWFrcG9pbnQtaW5maXgoJGJyZWFrcG9pbnQsICRncmlkLWJyZWFrcG9pbnRzKTtcblxuICAgIC5mbGV4I3skaW5maXh9LXJvdyAgICAgICAgICAgIHsgZmxleC1kaXJlY3Rpb246IHJvdyAhaW1wb3J0YW50OyB9XG4gICAgLmZsZXgjeyRpbmZpeH0tY29sdW1uICAgICAgICAgeyBmbGV4LWRpcmVjdGlvbjogY29sdW1uICFpbXBvcnRhbnQ7IH1cbiAgICAuZmxleCN7JGluZml4fS1yb3ctcmV2ZXJzZSAgICB7IGZsZXgtZGlyZWN0aW9uOiByb3ctcmV2ZXJzZSAhaW1wb3J0YW50OyB9XG4gICAgLmZsZXgjeyRpbmZpeH0tY29sdW1uLXJldmVyc2UgeyBmbGV4LWRpcmVjdGlvbjogY29sdW1uLXJldmVyc2UgIWltcG9ydGFudDsgfVxuXG4gICAgLmZsZXgjeyRpbmZpeH0td3JhcCAgICAgICAgIHsgZmxleC13cmFwOiB3cmFwICFpbXBvcnRhbnQ7IH1cbiAgICAuZmxleCN7JGluZml4fS1ub3dyYXAgICAgICAgeyBmbGV4LXdyYXA6IG5vd3JhcCAhaW1wb3J0YW50OyB9XG4gICAgLmZsZXgjeyRpbmZpeH0td3JhcC1yZXZlcnNlIHsgZmxleC13cmFwOiB3cmFwLXJldmVyc2UgIWltcG9ydGFudDsgfVxuICAgIC5mbGV4I3skaW5maXh9LWZpbGwgICAgICAgICB7IGZsZXg6IDEgMSBhdXRvICFpbXBvcnRhbnQ7IH1cbiAgICAuZmxleCN7JGluZml4fS1ncm93LTAgICAgICAgeyBmbGV4LWdyb3c6IDAgIWltcG9ydGFudDsgfVxuICAgIC5mbGV4I3skaW5maXh9LWdyb3ctMSAgICAgICB7IGZsZXgtZ3JvdzogMSAhaW1wb3J0YW50OyB9XG4gICAgLmZsZXgjeyRpbmZpeH0tc2hyaW5rLTAgICAgIHsgZmxleC1zaHJpbms6IDAgIWltcG9ydGFudDsgfVxuICAgIC5mbGV4I3skaW5maXh9LXNocmluay0xICAgICB7IGZsZXgtc2hyaW5rOiAxICFpbXBvcnRhbnQ7IH1cblxuICAgIC5qdXN0aWZ5LWNvbnRlbnQjeyRpbmZpeH0tc3RhcnQgICB7IGp1c3RpZnktY29udGVudDogZmxleC1zdGFydCAhaW1wb3J0YW50OyB9XG4gICAgLmp1c3RpZnktY29udGVudCN7JGluZml4fS1lbmQgICAgIHsganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZCAhaW1wb3J0YW50OyB9XG4gICAgLmp1c3RpZnktY29udGVudCN7JGluZml4fS1jZW50ZXIgIHsganVzdGlmeS1jb250ZW50OiBjZW50ZXIgIWltcG9ydGFudDsgfVxuICAgIC5qdXN0aWZ5LWNvbnRlbnQjeyRpbmZpeH0tYmV0d2VlbiB7IGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbiAhaW1wb3J0YW50OyB9XG4gICAgLmp1c3RpZnktY29udGVudCN7JGluZml4fS1hcm91bmQgIHsganVzdGlmeS1jb250ZW50OiBzcGFjZS1hcm91bmQgIWltcG9ydGFudDsgfVxuXG4gICAgLmFsaWduLWl0ZW1zI3skaW5maXh9LXN0YXJ0ICAgIHsgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQgIWltcG9ydGFudDsgfVxuICAgIC5hbGlnbi1pdGVtcyN7JGluZml4fS1lbmQgICAgICB7IGFsaWduLWl0ZW1zOiBmbGV4LWVuZCAhaW1wb3J0YW50OyB9XG4gICAgLmFsaWduLWl0ZW1zI3skaW5maXh9LWNlbnRlciAgIHsgYWxpZ24taXRlbXM6IGNlbnRlciAhaW1wb3J0YW50OyB9XG4gICAgLmFsaWduLWl0ZW1zI3skaW5maXh9LWJhc2VsaW5lIHsgYWxpZ24taXRlbXM6IGJhc2VsaW5lICFpbXBvcnRhbnQ7IH1cbiAgICAuYWxpZ24taXRlbXMjeyRpbmZpeH0tc3RyZXRjaCAgeyBhbGlnbi1pdGVtczogc3RyZXRjaCAhaW1wb3J0YW50OyB9XG5cbiAgICAuYWxpZ24tY29udGVudCN7JGluZml4fS1zdGFydCAgIHsgYWxpZ24tY29udGVudDogZmxleC1zdGFydCAhaW1wb3J0YW50OyB9XG4gICAgLmFsaWduLWNvbnRlbnQjeyRpbmZpeH0tZW5kICAgICB7IGFsaWduLWNvbnRlbnQ6IGZsZXgtZW5kICFpbXBvcnRhbnQ7IH1cbiAgICAuYWxpZ24tY29udGVudCN7JGluZml4fS1jZW50ZXIgIHsgYWxpZ24tY29udGVudDogY2VudGVyICFpbXBvcnRhbnQ7IH1cbiAgICAuYWxpZ24tY29udGVudCN7JGluZml4fS1iZXR3ZWVuIHsgYWxpZ24tY29udGVudDogc3BhY2UtYmV0d2VlbiAhaW1wb3J0YW50OyB9XG4gICAgLmFsaWduLWNvbnRlbnQjeyRpbmZpeH0tYXJvdW5kICB7IGFsaWduLWNvbnRlbnQ6IHNwYWNlLWFyb3VuZCAhaW1wb3J0YW50OyB9XG4gICAgLmFsaWduLWNvbnRlbnQjeyRpbmZpeH0tc3RyZXRjaCB7IGFsaWduLWNvbnRlbnQ6IHN0cmV0Y2ggIWltcG9ydGFudDsgfVxuXG4gICAgLmFsaWduLXNlbGYjeyRpbmZpeH0tYXV0byAgICAgeyBhbGlnbi1zZWxmOiBhdXRvICFpbXBvcnRhbnQ7IH1cbiAgICAuYWxpZ24tc2VsZiN7JGluZml4fS1zdGFydCAgICB7IGFsaWduLXNlbGY6IGZsZXgtc3RhcnQgIWltcG9ydGFudDsgfVxuICAgIC5hbGlnbi1zZWxmI3skaW5maXh9LWVuZCAgICAgIHsgYWxpZ24tc2VsZjogZmxleC1lbmQgIWltcG9ydGFudDsgfVxuICAgIC5hbGlnbi1zZWxmI3skaW5maXh9LWNlbnRlciAgIHsgYWxpZ24tc2VsZjogY2VudGVyICFpbXBvcnRhbnQ7IH1cbiAgICAuYWxpZ24tc2VsZiN7JGluZml4fS1iYXNlbGluZSB7IGFsaWduLXNlbGY6IGJhc2VsaW5lICFpbXBvcnRhbnQ7IH1cbiAgICAuYWxpZ24tc2VsZiN7JGluZml4fS1zdHJldGNoICB7IGFsaWduLXNlbGY6IHN0cmV0Y2ggIWltcG9ydGFudDsgfVxuICB9XG59XG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBkZWNsYXJhdGlvbi1uby1pbXBvcnRhbnRcblxuQGVhY2ggJGJyZWFrcG9pbnQgaW4gbWFwLWtleXMoJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgkYnJlYWtwb2ludCkge1xuICAgICRpbmZpeDogYnJlYWtwb2ludC1pbmZpeCgkYnJlYWtwb2ludCwgJGdyaWQtYnJlYWtwb2ludHMpO1xuXG4gICAgLmZsb2F0I3skaW5maXh9LWxlZnQgIHsgZmxvYXQ6IGxlZnQgIWltcG9ydGFudDsgfVxuICAgIC5mbG9hdCN7JGluZml4fS1yaWdodCB7IGZsb2F0OiByaWdodCAhaW1wb3J0YW50OyB9XG4gICAgLmZsb2F0I3skaW5maXh9LW5vbmUgIHsgZmxvYXQ6IG5vbmUgIWltcG9ydGFudDsgfVxuICB9XG59XG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBkZWNsYXJhdGlvbi1uby1pbXBvcnRhbnRcblxuQGVhY2ggJHZhbHVlIGluICRvdmVyZmxvd3Mge1xuICAub3ZlcmZsb3ctI3skdmFsdWV9IHsgb3ZlcmZsb3c6ICR2YWx1ZSAhaW1wb3J0YW50OyB9XG59XG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBkZWNsYXJhdGlvbi1uby1pbXBvcnRhbnRcblxuLy8gQ29tbW9uIHZhbHVlc1xuQGVhY2ggJHBvc2l0aW9uIGluICRwb3NpdGlvbnMge1xuICAucG9zaXRpb24tI3skcG9zaXRpb259IHsgcG9zaXRpb246ICRwb3NpdGlvbiAhaW1wb3J0YW50OyB9XG59XG5cbi8vIFNob3J0aGFuZFxuXG4uZml4ZWQtdG9wIHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB0b3A6IDA7XG4gIHJpZ2h0OiAwO1xuICBsZWZ0OiAwO1xuICB6LWluZGV4OiAkemluZGV4LWZpeGVkO1xufVxuXG4uZml4ZWQtYm90dG9tIHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICByaWdodDogMDtcbiAgYm90dG9tOiAwO1xuICBsZWZ0OiAwO1xuICB6LWluZGV4OiAkemluZGV4LWZpeGVkO1xufVxuXG4uc3RpY2t5LXRvcCB7XG4gIEBzdXBwb3J0cyAocG9zaXRpb246IHN0aWNreSkge1xuICAgIHBvc2l0aW9uOiBzdGlja3k7XG4gICAgdG9wOiAwO1xuICAgIHotaW5kZXg6ICR6aW5kZXgtc3RpY2t5O1xuICB9XG59XG4iLCIvLyBPbmx5IGRpc3BsYXkgY29udGVudCB0byBzY3JlZW4gcmVhZGVyc1xuLy9cbi8vIFNlZTogaHR0cHM6Ly9hMTF5cHJvamVjdC5jb20vcG9zdHMvaG93LXRvLWhpZGUtY29udGVudC9cbi8vIFNlZTogaHR0cHM6Ly9odWdvZ2lyYXVkZWwuY29tLzIwMTYvMTAvMTMvY3NzLWhpZGUtYW5kLXNlZWsvXG5cbkBtaXhpbiBzci1vbmx5KCkge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHdpZHRoOiAxcHg7XG4gIGhlaWdodDogMXB4O1xuICBwYWRkaW5nOiAwO1xuICBtYXJnaW46IC0xcHg7IC8vIEZpeCBmb3IgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8yNTY4NlxuICBvdmVyZmxvdzogaGlkZGVuO1xuICBjbGlwOiByZWN0KDAsIDAsIDAsIDApO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICBib3JkZXI6IDA7XG59XG5cbi8vIFVzZSBpbiBjb25qdW5jdGlvbiB3aXRoIC5zci1vbmx5IHRvIG9ubHkgZGlzcGxheSBjb250ZW50IHdoZW4gaXQncyBmb2N1c2VkLlxuLy9cbi8vIFVzZWZ1bCBmb3IgXCJTa2lwIHRvIG1haW4gY29udGVudFwiIGxpbmtzOyBzZWUgaHR0cHM6Ly93d3cudzMub3JnL1RSLzIwMTMvTk9URS1XQ0FHMjAtVEVDSFMtMjAxMzA5MDUvRzFcbi8vXG4vLyBDcmVkaXQ6IEhUTUw1IEJvaWxlcnBsYXRlXG5cbkBtaXhpbiBzci1vbmx5LWZvY3VzYWJsZSgpIHtcbiAgJjphY3RpdmUsXG4gICY6Zm9jdXMge1xuICAgIHBvc2l0aW9uOiBzdGF0aWM7XG4gICAgd2lkdGg6IGF1dG87XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIG92ZXJmbG93OiB2aXNpYmxlO1xuICAgIGNsaXA6IGF1dG87XG4gICAgd2hpdGUtc3BhY2U6IG5vcm1hbDtcbiAgfVxufVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50XG5cbi5zaGFkb3ctc20geyBib3gtc2hhZG93OiAkYm94LXNoYWRvdy1zbSAhaW1wb3J0YW50OyB9XG4uc2hhZG93IHsgYm94LXNoYWRvdzogJGJveC1zaGFkb3cgIWltcG9ydGFudDsgfVxuLnNoYWRvdy1sZyB7IGJveC1zaGFkb3c6ICRib3gtc2hhZG93LWxnICFpbXBvcnRhbnQ7IH1cbi5zaGFkb3ctbm9uZSB7IGJveC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDsgfVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50XG5cbi8vIFdpZHRoIGFuZCBoZWlnaHRcblxuQGVhY2ggJHByb3AsICRhYmJyZXYgaW4gKHdpZHRoOiB3LCBoZWlnaHQ6IGgpIHtcbiAgQGVhY2ggJHNpemUsICRsZW5ndGggaW4gJHNpemVzIHtcbiAgICAuI3skYWJicmV2fS0jeyRzaXplfSB7ICN7JHByb3B9OiAkbGVuZ3RoICFpbXBvcnRhbnQ7IH1cbiAgfVxufVxuXG4ubXctMTAwIHsgbWF4LXdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7IH1cbi5taC0xMDAgeyBtYXgtaGVpZ2h0OiAxMDAlICFpbXBvcnRhbnQ7IH1cblxuLy8gVmlld3BvcnQgYWRkaXRpb25hbCBoZWxwZXJzXG5cbi5taW4tdnctMTAwIHsgbWluLXdpZHRoOiAxMDB2dyAhaW1wb3J0YW50OyB9XG4ubWluLXZoLTEwMCB7IG1pbi1oZWlnaHQ6IDEwMHZoICFpbXBvcnRhbnQ7IH1cblxuLnZ3LTEwMCB7IHdpZHRoOiAxMDB2dyAhaW1wb3J0YW50OyB9XG4udmgtMTAwIHsgaGVpZ2h0OiAxMDB2aCAhaW1wb3J0YW50OyB9XG4iLCIvL1xuLy8gU3RyZXRjaGVkIGxpbmtcbi8vXG5cbi5zdHJldGNoZWQtbGluayB7XG4gICY6OmFmdGVyIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIGJvdHRvbTogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHotaW5kZXg6IDE7XG4gICAgLy8gSnVzdCBpbiBjYXNlIGBwb2ludGVyLWV2ZW50czogbm9uZWAgaXMgc2V0IG9uIGEgcGFyZW50XG4gICAgcG9pbnRlci1ldmVudHM6IGF1dG87XG4gICAgY29udGVudDogXCJcIjtcbiAgICAvLyBJRTEwIGJ1Z2ZpeCwgc2VlIGh0dHBzOi8vc3RhY2tvdmVyZmxvdy5jb20vcXVlc3Rpb25zLzE2OTQ3OTY3L2llMTAtaG92ZXItcHNldWRvLWNsYXNzLWRvZXNudC13b3JrLXdpdGhvdXQtYmFja2dyb3VuZC1jb2xvclxuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMCk7XG4gIH1cbn1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudFxuXG4vLyBNYXJnaW4gYW5kIFBhZGRpbmdcblxuQGVhY2ggJGJyZWFrcG9pbnQgaW4gbWFwLWtleXMoJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgkYnJlYWtwb2ludCkge1xuICAgICRpbmZpeDogYnJlYWtwb2ludC1pbmZpeCgkYnJlYWtwb2ludCwgJGdyaWQtYnJlYWtwb2ludHMpO1xuXG4gICAgQGVhY2ggJHByb3AsICRhYmJyZXYgaW4gKG1hcmdpbjogbSwgcGFkZGluZzogcCkge1xuICAgICAgQGVhY2ggJHNpemUsICRsZW5ndGggaW4gJHNwYWNlcnMge1xuICAgICAgICAuI3skYWJicmV2fSN7JGluZml4fS0jeyRzaXplfSB7ICN7JHByb3B9OiAkbGVuZ3RoICFpbXBvcnRhbnQ7IH1cbiAgICAgICAgLiN7JGFiYnJldn10I3skaW5maXh9LSN7JHNpemV9LFxuICAgICAgICAuI3skYWJicmV2fXkjeyRpbmZpeH0tI3skc2l6ZX0ge1xuICAgICAgICAgICN7JHByb3B9LXRvcDogJGxlbmd0aCAhaW1wb3J0YW50O1xuICAgICAgICB9XG4gICAgICAgIC4jeyRhYmJyZXZ9ciN7JGluZml4fS0jeyRzaXplfSxcbiAgICAgICAgLiN7JGFiYnJldn14I3skaW5maXh9LSN7JHNpemV9IHtcbiAgICAgICAgICAjeyRwcm9wfS1yaWdodDogJGxlbmd0aCAhaW1wb3J0YW50O1xuICAgICAgICB9XG4gICAgICAgIC4jeyRhYmJyZXZ9YiN7JGluZml4fS0jeyRzaXplfSxcbiAgICAgICAgLiN7JGFiYnJldn15I3skaW5maXh9LSN7JHNpemV9IHtcbiAgICAgICAgICAjeyRwcm9wfS1ib3R0b206ICRsZW5ndGggIWltcG9ydGFudDtcbiAgICAgICAgfVxuICAgICAgICAuI3skYWJicmV2fWwjeyRpbmZpeH0tI3skc2l6ZX0sXG4gICAgICAgIC4jeyRhYmJyZXZ9eCN7JGluZml4fS0jeyRzaXplfSB7XG4gICAgICAgICAgI3skcHJvcH0tbGVmdDogJGxlbmd0aCAhaW1wb3J0YW50O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gTmVnYXRpdmUgbWFyZ2lucyAoZS5nLiwgd2hlcmUgYC5tYi1uMWAgaXMgbmVnYXRpdmUgdmVyc2lvbiBvZiBgLm1iLTFgKVxuICAgIEBlYWNoICRzaXplLCAkbGVuZ3RoIGluICRzcGFjZXJzIHtcbiAgICAgIEBpZiAkc2l6ZSAhPSAwIHtcbiAgICAgICAgLm0jeyRpbmZpeH0tbiN7JHNpemV9IHsgbWFyZ2luOiAtJGxlbmd0aCAhaW1wb3J0YW50OyB9XG4gICAgICAgIC5tdCN7JGluZml4fS1uI3skc2l6ZX0sXG4gICAgICAgIC5teSN7JGluZml4fS1uI3skc2l6ZX0ge1xuICAgICAgICAgIG1hcmdpbi10b3A6IC0kbGVuZ3RoICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICAgICAgLm1yI3skaW5maXh9LW4jeyRzaXplfSxcbiAgICAgICAgLm14I3skaW5maXh9LW4jeyRzaXplfSB7XG4gICAgICAgICAgbWFyZ2luLXJpZ2h0OiAtJGxlbmd0aCAhaW1wb3J0YW50O1xuICAgICAgICB9XG4gICAgICAgIC5tYiN7JGluZml4fS1uI3skc2l6ZX0sXG4gICAgICAgIC5teSN7JGluZml4fS1uI3skc2l6ZX0ge1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206IC0kbGVuZ3RoICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICAgICAgLm1sI3skaW5maXh9LW4jeyRzaXplfSxcbiAgICAgICAgLm14I3skaW5maXh9LW4jeyRzaXplfSB7XG4gICAgICAgICAgbWFyZ2luLWxlZnQ6IC0kbGVuZ3RoICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBTb21lIHNwZWNpYWwgbWFyZ2luIHV0aWxzXG4gICAgLm0jeyRpbmZpeH0tYXV0byB7IG1hcmdpbjogYXV0byAhaW1wb3J0YW50OyB9XG4gICAgLm10I3skaW5maXh9LWF1dG8sXG4gICAgLm15I3skaW5maXh9LWF1dG8ge1xuICAgICAgbWFyZ2luLXRvcDogYXV0byAhaW1wb3J0YW50O1xuICAgIH1cbiAgICAubXIjeyRpbmZpeH0tYXV0byxcbiAgICAubXgjeyRpbmZpeH0tYXV0byB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICB9XG4gICAgLm1iI3skaW5maXh9LWF1dG8sXG4gICAgLm15I3skaW5maXh9LWF1dG8ge1xuICAgICAgbWFyZ2luLWJvdHRvbTogYXV0byAhaW1wb3J0YW50O1xuICAgIH1cbiAgICAubWwjeyRpbmZpeH0tYXV0byxcbiAgICAubXgjeyRpbmZpeH0tYXV0byB7XG4gICAgICBtYXJnaW4tbGVmdDogYXV0byAhaW1wb3J0YW50O1xuICAgIH1cbiAgfVxufVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50XG5cbi8vXG4vLyBUZXh0XG4vL1xuXG4udGV4dC1tb25vc3BhY2UgeyBmb250LWZhbWlseTogJGZvbnQtZmFtaWx5LW1vbm9zcGFjZSAhaW1wb3J0YW50OyB9XG5cbi8vIEFsaWdubWVudFxuXG4udGV4dC1qdXN0aWZ5ICB7IHRleHQtYWxpZ246IGp1c3RpZnkgIWltcG9ydGFudDsgfVxuLnRleHQtd3JhcCAgICAgeyB3aGl0ZS1zcGFjZTogbm9ybWFsICFpbXBvcnRhbnQ7IH1cbi50ZXh0LW5vd3JhcCAgIHsgd2hpdGUtc3BhY2U6IG5vd3JhcCAhaW1wb3J0YW50OyB9XG4udGV4dC10cnVuY2F0ZSB7IEBpbmNsdWRlIHRleHQtdHJ1bmNhdGUoKTsgfVxuXG4vLyBSZXNwb25zaXZlIGFsaWdubWVudFxuXG5AZWFjaCAkYnJlYWtwb2ludCBpbiBtYXAta2V5cygkZ3JpZC1icmVha3BvaW50cykge1xuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRicmVha3BvaW50KSB7XG4gICAgJGluZml4OiBicmVha3BvaW50LWluZml4KCRicmVha3BvaW50LCAkZ3JpZC1icmVha3BvaW50cyk7XG5cbiAgICAudGV4dCN7JGluZml4fS1sZWZ0ICAgeyB0ZXh0LWFsaWduOiBsZWZ0ICFpbXBvcnRhbnQ7IH1cbiAgICAudGV4dCN7JGluZml4fS1yaWdodCAgeyB0ZXh0LWFsaWduOiByaWdodCAhaW1wb3J0YW50OyB9XG4gICAgLnRleHQjeyRpbmZpeH0tY2VudGVyIHsgdGV4dC1hbGlnbjogY2VudGVyICFpbXBvcnRhbnQ7IH1cbiAgfVxufVxuXG4vLyBUcmFuc2Zvcm1hdGlvblxuXG4udGV4dC1sb3dlcmNhc2UgIHsgdGV4dC10cmFuc2Zvcm06IGxvd2VyY2FzZSAhaW1wb3J0YW50OyB9XG4udGV4dC11cHBlcmNhc2UgIHsgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZSAhaW1wb3J0YW50OyB9XG4udGV4dC1jYXBpdGFsaXplIHsgdGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemUgIWltcG9ydGFudDsgfVxuXG4vLyBXZWlnaHQgYW5kIGl0YWxpY3NcblxuLmZvbnQtd2VpZ2h0LWxpZ2h0ICAgeyBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LWxpZ2h0ICFpbXBvcnRhbnQ7IH1cbi5mb250LXdlaWdodC1saWdodGVyIHsgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1saWdodGVyICFpbXBvcnRhbnQ7IH1cbi5mb250LXdlaWdodC1ub3JtYWwgIHsgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1ub3JtYWwgIWltcG9ydGFudDsgfVxuLmZvbnQtd2VpZ2h0LWJvbGQgICAgeyBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LWJvbGQgIWltcG9ydGFudDsgfVxuLmZvbnQtd2VpZ2h0LWJvbGRlciAgeyBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LWJvbGRlciAhaW1wb3J0YW50OyB9XG4uZm9udC1pdGFsaWMgICAgICAgICB7IGZvbnQtc3R5bGU6IGl0YWxpYyAhaW1wb3J0YW50OyB9XG5cbi8vIENvbnRleHR1YWwgY29sb3JzXG5cbi50ZXh0LXdoaXRlIHsgY29sb3I6ICR3aGl0ZSAhaW1wb3J0YW50OyB9XG5cbkBlYWNoICRjb2xvciwgJHZhbHVlIGluICR0aGVtZS1jb2xvcnMge1xuICBAaW5jbHVkZSB0ZXh0LWVtcGhhc2lzLXZhcmlhbnQoXCIudGV4dC0jeyRjb2xvcn1cIiwgJHZhbHVlLCB0cnVlKTtcbn1cblxuLnRleHQtYm9keSB7IGNvbG9yOiAkYm9keS1jb2xvciAhaW1wb3J0YW50OyB9XG4udGV4dC1tdXRlZCB7IGNvbG9yOiAkdGV4dC1tdXRlZCAhaW1wb3J0YW50OyB9XG5cbi50ZXh0LWJsYWNrLTUwIHsgY29sb3I6IHJnYmEoJGJsYWNrLCAuNSkgIWltcG9ydGFudDsgfVxuLnRleHQtd2hpdGUtNTAgeyBjb2xvcjogcmdiYSgkd2hpdGUsIC41KSAhaW1wb3J0YW50OyB9XG5cbi8vIE1pc2NcblxuLnRleHQtaGlkZSB7XG4gIEBpbmNsdWRlIHRleHQtaGlkZSgkaWdub3JlLXdhcm5pbmc6IHRydWUpO1xufVxuXG4udGV4dC1kZWNvcmF0aW9uLW5vbmUgeyB0ZXh0LWRlY29yYXRpb246IG5vbmUgIWltcG9ydGFudDsgfVxuXG4udGV4dC1icmVhayB7XG4gIHdvcmQtYnJlYWs6IGJyZWFrLXdvcmQgIWltcG9ydGFudDsgLy8gSUUgJiA8IEVkZ2UgMThcbiAgb3ZlcmZsb3ctd3JhcDogYnJlYWstd29yZCAhaW1wb3J0YW50O1xufVxuXG4vLyBSZXNldFxuXG4udGV4dC1yZXNldCB7IGNvbG9yOiBpbmhlcml0ICFpbXBvcnRhbnQ7IH1cbiIsIi8vIFRleHQgdHJ1bmNhdGVcbi8vIFJlcXVpcmVzIGlubGluZS1ibG9jayBvciBibG9jayBmb3IgcHJvcGVyIHN0eWxpbmdcblxuQG1peGluIHRleHQtdHJ1bmNhdGUoKSB7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xufVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50XG5cbi8vIFR5cG9ncmFwaHlcblxuQG1peGluIHRleHQtZW1waGFzaXMtdmFyaWFudCgkcGFyZW50LCAkY29sb3IsICRpZ25vcmUtd2FybmluZzogZmFsc2UpIHtcbiAgI3skcGFyZW50fSB7XG4gICAgY29sb3I6ICRjb2xvciAhaW1wb3J0YW50O1xuICB9XG4gIEBpZiAkZW1waGFzaXplZC1saW5rLWhvdmVyLWRhcmtlbi1wZXJjZW50YWdlICE9IDAge1xuICAgIGEjeyRwYXJlbnR9IHtcbiAgICAgIEBpbmNsdWRlIGhvdmVyLWZvY3VzKCkge1xuICAgICAgICBjb2xvcjogZGFya2VuKCRjb2xvciwgJGVtcGhhc2l6ZWQtbGluay1ob3Zlci1kYXJrZW4tcGVyY2VudGFnZSkgIWltcG9ydGFudDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgQGluY2x1ZGUgZGVwcmVjYXRlKFwiYHRleHQtZW1waGFzaXMtdmFyaWFudCgpYFwiLCBcInY0LjQuMFwiLCBcInY1XCIsICRpZ25vcmUtd2FybmluZyk7XG59XG4iLCIvLyBDU1MgaW1hZ2UgcmVwbGFjZW1lbnRcbkBtaXhpbiB0ZXh0LWhpZGUoJGlnbm9yZS13YXJuaW5nOiBmYWxzZSkge1xuICAvLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgZm9udC1mYW1pbHktbm8tbWlzc2luZy1nZW5lcmljLWZhbWlseS1rZXl3b3JkXG4gIGZvbnQ6IDAvMCBhO1xuICBjb2xvcjogdHJhbnNwYXJlbnQ7XG4gIHRleHQtc2hhZG93OiBub25lO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgYm9yZGVyOiAwO1xuXG4gIEBpbmNsdWRlIGRlcHJlY2F0ZShcImB0ZXh0LWhpZGUoKWBcIiwgXCJ2NC4xLjBcIiwgXCJ2NVwiLCAkaWdub3JlLXdhcm5pbmcpO1xufVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50XG5cbi8vXG4vLyBWaXNpYmlsaXR5IHV0aWxpdGllc1xuLy9cblxuLnZpc2libGUge1xuICB2aXNpYmlsaXR5OiB2aXNpYmxlICFpbXBvcnRhbnQ7XG59XG5cbi5pbnZpc2libGUge1xuICB2aXNpYmlsaXR5OiBoaWRkZW4gIWltcG9ydGFudDtcbn1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudCwgc2VsZWN0b3Itbm8tcXVhbGlmeWluZy10eXBlXG5cbi8vIFNvdXJjZTogaHR0cHM6Ly9naXRodWIuY29tL2g1YnAvbWFpbi5jc3MvYmxvYi9tYXN0ZXIvc3JjL19wcmludC5jc3NcblxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbi8vIFByaW50IHN0eWxlcy5cbi8vIElubGluZWQgdG8gYXZvaWQgdGhlIGFkZGl0aW9uYWwgSFRUUCByZXF1ZXN0OlxuLy8gaHR0cHM6Ly93d3cucGhwaWVkLmNvbS9kZWxheS1sb2FkaW5nLXlvdXItcHJpbnQtY3NzL1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuQGlmICRlbmFibGUtcHJpbnQtc3R5bGVzIHtcbiAgQG1lZGlhIHByaW50IHtcbiAgICAqLFxuICAgICo6OmJlZm9yZSxcbiAgICAqOjphZnRlciB7XG4gICAgICAvLyBCb290c3RyYXAgc3BlY2lmaWM7IGNvbW1lbnQgb3V0IGBjb2xvcmAgYW5kIGBiYWNrZ3JvdW5kYFxuICAgICAgLy9jb2xvcjogJGJsYWNrICFpbXBvcnRhbnQ7IC8vIEJsYWNrIHByaW50cyBmYXN0ZXJcbiAgICAgIHRleHQtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7XG4gICAgICAvL2JhY2tncm91bmQ6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG4gICAgICBib3gtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgYSB7XG4gICAgICAmOm5vdCguYnRuKSB7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICAgICAgfVxuICAgIH1cblxuICAgIC8vIEJvb3RzdHJhcCBzcGVjaWZpYzsgY29tbWVudCB0aGUgZm9sbG93aW5nIHNlbGVjdG9yIG91dFxuICAgIC8vYVtocmVmXTo6YWZ0ZXIge1xuICAgIC8vICBjb250ZW50OiBcIiAoXCIgYXR0cihocmVmKSBcIilcIjtcbiAgICAvL31cblxuICAgIGFiYnJbdGl0bGVdOjphZnRlciB7XG4gICAgICBjb250ZW50OiBcIiAoXCIgYXR0cih0aXRsZSkgXCIpXCI7XG4gICAgfVxuXG4gICAgLy8gQm9vdHN0cmFwIHNwZWNpZmljOyBjb21tZW50IHRoZSBmb2xsb3dpbmcgc2VsZWN0b3Igb3V0XG4gICAgLy9cbiAgICAvLyBEb24ndCBzaG93IGxpbmtzIHRoYXQgYXJlIGZyYWdtZW50IGlkZW50aWZpZXJzLFxuICAgIC8vIG9yIHVzZSB0aGUgYGphdmFzY3JpcHQ6YCBwc2V1ZG8gcHJvdG9jb2xcbiAgICAvL1xuXG4gICAgLy9hW2hyZWZePVwiI1wiXTo6YWZ0ZXIsXG4gICAgLy9hW2hyZWZePVwiamF2YXNjcmlwdDpcIl06OmFmdGVyIHtcbiAgICAvLyBjb250ZW50OiBcIlwiO1xuICAgIC8vfVxuXG4gICAgcHJlIHtcbiAgICAgIHdoaXRlLXNwYWNlOiBwcmUtd3JhcCAhaW1wb3J0YW50O1xuICAgIH1cbiAgICBwcmUsXG4gICAgYmxvY2txdW90ZSB7XG4gICAgICBib3JkZXI6ICRib3JkZXItd2lkdGggc29saWQgJGdyYXktNTAwOyAvLyBCb290c3RyYXAgY3VzdG9tIGNvZGU7IHVzaW5nIGAkYm9yZGVyLXdpZHRoYCBpbnN0ZWFkIG9mIDFweFxuICAgICAgcGFnZS1icmVhay1pbnNpZGU6IGF2b2lkO1xuICAgIH1cblxuICAgIC8vXG4gICAgLy8gUHJpbnRpbmcgVGFibGVzOlxuICAgIC8vIGh0dHBzOi8vd2ViLmFyY2hpdmUub3JnL3dlYi8yMDE4MDgxNTE1MDkzNC9odHRwOi8vY3NzLWRpc2N1c3MuaW5jdXRpby5jb20vd2lraS9QcmludGluZ19UYWJsZXNcbiAgICAvL1xuXG4gICAgdGhlYWQge1xuICAgICAgZGlzcGxheTogdGFibGUtaGVhZGVyLWdyb3VwO1xuICAgIH1cblxuICAgIHRyLFxuICAgIGltZyB7XG4gICAgICBwYWdlLWJyZWFrLWluc2lkZTogYXZvaWQ7XG4gICAgfVxuXG4gICAgcCxcbiAgICBoMixcbiAgICBoMyB7XG4gICAgICBvcnBoYW5zOiAzO1xuICAgICAgd2lkb3dzOiAzO1xuICAgIH1cblxuICAgIGgyLFxuICAgIGgzIHtcbiAgICAgIHBhZ2UtYnJlYWstYWZ0ZXI6IGF2b2lkO1xuICAgIH1cblxuICAgIC8vIEJvb3RzdHJhcCBzcGVjaWZpYyBjaGFuZ2VzIHN0YXJ0XG5cbiAgICAvLyBTcGVjaWZ5IGEgc2l6ZSBhbmQgbWluLXdpZHRoIHRvIG1ha2UgcHJpbnRpbmcgY2xvc2VyIGFjcm9zcyBicm93c2Vycy5cbiAgICAvLyBXZSBkb24ndCBzZXQgbWFyZ2luIGhlcmUgYmVjYXVzZSBpdCBicmVha3MgYHNpemVgIGluIENocm9tZS4gV2UgYWxzb1xuICAgIC8vIGRvbid0IHVzZSBgIWltcG9ydGFudGAgb24gYHNpemVgIGFzIGl0IGJyZWFrcyBpbiBDaHJvbWUuXG4gICAgQHBhZ2Uge1xuICAgICAgc2l6ZTogJHByaW50LXBhZ2Utc2l6ZTtcbiAgICB9XG4gICAgYm9keSB7XG4gICAgICBtaW4td2lkdGg6ICRwcmludC1ib2R5LW1pbi13aWR0aCAhaW1wb3J0YW50O1xuICAgIH1cbiAgICAuY29udGFpbmVyIHtcbiAgICAgIG1pbi13aWR0aDogJHByaW50LWJvZHktbWluLXdpZHRoICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgLy8gQm9vdHN0cmFwIGNvbXBvbmVudHNcbiAgICAubmF2YmFyIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuICAgIC5iYWRnZSB7XG4gICAgICBib3JkZXI6ICRib3JkZXItd2lkdGggc29saWQgJGJsYWNrO1xuICAgIH1cblxuICAgIC50YWJsZSB7XG4gICAgICBib3JkZXItY29sbGFwc2U6IGNvbGxhcHNlICFpbXBvcnRhbnQ7XG5cbiAgICAgIHRkLFxuICAgICAgdGgge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGUgIWltcG9ydGFudDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAudGFibGUtYm9yZGVyZWQge1xuICAgICAgdGgsXG4gICAgICB0ZCB7XG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICRncmF5LTMwMCAhaW1wb3J0YW50O1xuICAgICAgfVxuICAgIH1cblxuICAgIC50YWJsZS1kYXJrIHtcbiAgICAgIGNvbG9yOiBpbmhlcml0O1xuXG4gICAgICB0aCxcbiAgICAgIHRkLFxuICAgICAgdGhlYWQgdGgsXG4gICAgICB0Ym9keSArIHRib2R5IHtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAkdGFibGUtYm9yZGVyLWNvbG9yO1xuICAgICAgfVxuICAgIH1cblxuICAgIC50YWJsZSAudGhlYWQtZGFyayB0aCB7XG4gICAgICBjb2xvcjogaW5oZXJpdDtcbiAgICAgIGJvcmRlci1jb2xvcjogJHRhYmxlLWJvcmRlci1jb2xvcjtcbiAgICB9XG5cbiAgICAvLyBCb290c3RyYXAgc3BlY2lmaWMgY2hhbmdlcyBlbmRcbiAgfVxufVxuIiwiLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gKlxuICogICMgQm9vdHN0cmFwIHY0LjEuMSAoaHR0cHM6Ly9nZXRib290c3RyYXAuY29tKVxuICpcbiAqICBDb3B5cmlnaHQgMjAxMS0yMDE4IFRoZSBCb290c3RyYXAgQXV0aG9yc1xuICogIENvcHlyaWdodCAyMDExLTIwMTggVHdpdHRlciwgSW5jLlxuICogIExpY2Vuc2VkIHVuZGVyIE1JVCAoaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2Jsb2IvbWFzdGVyL0xJQ0VOU0UpXG4gKlxuICogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuXG4vLyBJbXBvcnQgY3VzdG9tIHRlbXBsYXRlIGNvbmZpZ1xuQGltcG9ydCBcIi4uLy4uLy4uLy4uL2NvbmZpZ1wiO1xuQGltcG9ydCBcIi4uLy4uLy4uLy4uL3NoYXJlZC91dGlscy9sbC1mdW5jdGlvbnNcIjtcbkBpbXBvcnQgXCIuLi8uLi8uLi8uLi9zaGFyZWQvdXRpbHMvbGwtbWl4aW5zXCI7XG5AaW1wb3J0IFwiLi4vLi4vLi4vLi4vdGhlbWVzL2RlZmF1bHQvY29sb3JzL3BhbGV0dGVcIjtcblxuLy8gQ29yZSB2YXJpYWJsZXMgYW5kIG1peGluc1xuQGltcG9ydCBcIn5ib290c3RyYXAvc2Nzcy9mdW5jdGlvbnNcIjtcbkBpbXBvcnQgXCJ+Ym9vdHN0cmFwL3Njc3MvdmFyaWFibGVzXCI7XG5AaW1wb3J0IFwifmJvb3RzdHJhcC9zY3NzL21peGluc1wiO1xuXG4vLyBJbXBvcnQgdGVtcGxhdGUncyB2YXJpYWJsZXNcbkBpbXBvcnQgXCIuLi92YXJpYWJsZXMvdmFyaWFibGVzLWNvcmVcIjtcbkBpbXBvcnQgXCIuLi92YXJpYWJsZXMvdmFyaWFibGVzLWN1c3RvbVwiO1xuQGltcG9ydCBcIi4uLy4uLy4uLy4uL3RoZW1lcy9kZWZhdWx0L2Jvb3RzdHJhcF9saW1pdGxlc3MvbWl4aW5zXCI7XG5cbi8vIEltcG9ydCBkZWZhdWx0IGZpbGVzXG5AaW1wb3J0IFwiLi4vLi4vLi4vLi4vdGhlbWVzL2RlZmF1bHQvYm9vdHN0cmFwX2xpbWl0bGVzcy9yZWJvb3RcIjtcbkBpbXBvcnQgXCIuLi8uLi8uLi8uLi90aGVtZXMvZGVmYXVsdC9ib290c3RyYXBfbGltaXRsZXNzL3R5cGVcIjtcbkBpbXBvcnQgXCIuLi8uLi8uLi8uLi90aGVtZXMvZGVmYXVsdC9ib290c3RyYXBfbGltaXRsZXNzL2NvZGVcIjtcbkBpbXBvcnQgXCIuLi8uLi8uLi8uLi90aGVtZXMvZGVmYXVsdC9ib290c3RyYXBfbGltaXRsZXNzL3RhYmxlc1wiO1xuQGltcG9ydCBcIi4uLy4uLy4uLy4uL3RoZW1lcy9kZWZhdWx0L2Jvb3RzdHJhcF9saW1pdGxlc3MvZm9ybXNcIjtcbkBpbXBvcnQgXCIuLi8uLi8uLi8uLi90aGVtZXMvZGVmYXVsdC9ib290c3RyYXBfbGltaXRsZXNzL2J1dHRvbnNcIjtcbkBpbXBvcnQgXCIuLi8uLi8uLi8uLi90aGVtZXMvZGVmYXVsdC9ib290c3RyYXBfbGltaXRsZXNzL2Ryb3Bkb3duXCI7XG5AaW1wb3J0IFwiLi4vLi4vLi4vLi4vdGhlbWVzL2RlZmF1bHQvYm9vdHN0cmFwX2xpbWl0bGVzcy9idXR0b24tZ3JvdXBcIjtcbkBpbXBvcnQgXCIuLi8uLi8uLi8uLi90aGVtZXMvZGVmYXVsdC9ib290c3RyYXBfbGltaXRsZXNzL2lucHV0LWdyb3VwXCI7XG5AaW1wb3J0IFwiLi4vLi4vLi4vLi4vdGhlbWVzL2RlZmF1bHQvYm9vdHN0cmFwX2xpbWl0bGVzcy9jdXN0b20tZm9ybXNcIjtcbkBpbXBvcnQgXCIuLi8uLi8uLi8uLi90aGVtZXMvZGVmYXVsdC9ib290c3RyYXBfbGltaXRsZXNzL25hdlwiO1xuQGltcG9ydCBcIi4uLy4uLy4uLy4uL3RoZW1lcy9kZWZhdWx0L2Jvb3RzdHJhcF9saW1pdGxlc3MvbmF2YmFyXCI7XG5AaW1wb3J0IFwiLi4vLi4vLi4vLi4vdGhlbWVzL2RlZmF1bHQvYm9vdHN0cmFwX2xpbWl0bGVzcy9jYXJkXCI7XG5AaW1wb3J0IFwiLi4vLi4vLi4vLi4vdGhlbWVzL2RlZmF1bHQvYm9vdHN0cmFwX2xpbWl0bGVzcy9icmVhZGNydW1iXCI7XG5AaW1wb3J0IFwiLi4vLi4vLi4vLi4vdGhlbWVzL2RlZmF1bHQvYm9vdHN0cmFwX2xpbWl0bGVzcy9wYWdpbmF0aW9uXCI7XG5AaW1wb3J0IFwiLi4vLi4vLi4vLi4vdGhlbWVzL2RlZmF1bHQvYm9vdHN0cmFwX2xpbWl0bGVzcy9iYWRnZVwiO1xuQGltcG9ydCBcIi4uLy4uLy4uLy4uL3RoZW1lcy9kZWZhdWx0L2Jvb3RzdHJhcF9saW1pdGxlc3MvYWxlcnRcIjtcbkBpbXBvcnQgXCIuLi8uLi8uLi8uLi90aGVtZXMvZGVmYXVsdC9ib290c3RyYXBfbGltaXRsZXNzL3Byb2dyZXNzXCI7XG5AaW1wb3J0IFwiLi4vLi4vLi4vLi4vdGhlbWVzL2RlZmF1bHQvYm9vdHN0cmFwX2xpbWl0bGVzcy9tZWRpYVwiO1xuQGltcG9ydCBcIi4uLy4uLy4uLy4uL3RoZW1lcy9kZWZhdWx0L2Jvb3RzdHJhcF9saW1pdGxlc3MvbGlzdC1ncm91cFwiO1xuQGltcG9ydCBcIi4uLy4uLy4uLy4uL3RoZW1lcy9kZWZhdWx0L2Jvb3RzdHJhcF9saW1pdGxlc3MvY2xvc2VcIjtcbkBpbXBvcnQgXCIuLi8uLi8uLi8uLi90aGVtZXMvZGVmYXVsdC9ib290c3RyYXBfbGltaXRsZXNzL21vZGFsXCI7XG5AaW1wb3J0IFwiLi4vLi4vLi4vLi4vdGhlbWVzL2RlZmF1bHQvYm9vdHN0cmFwX2xpbWl0bGVzcy90b29sdGlwXCI7XG5AaW1wb3J0IFwiLi4vLi4vLi4vLi4vdGhlbWVzL2RlZmF1bHQvYm9vdHN0cmFwX2xpbWl0bGVzcy9wb3BvdmVyXCI7XG5AaW1wb3J0IFwiLi4vLi4vLi4vLi4vdGhlbWVzL2RlZmF1bHQvYm9vdHN0cmFwX2xpbWl0bGVzcy91dGlsaXRpZXNcIjtcbiIsIi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICpcbiAqICAjIEdsb2JhbCBjb25maWd1cmF0aW9uXG4gKlxuICogIEhlcmUgeW91IGNhbiBjaGFuZ2UgbWFpbiB0aGVtZSwgZW5hYmxlIG9yIGRpc2FibGUgY2VydGFpbiBjb21wb25lbnRzIGFuZFxuICogIG9wdGlvbmFsIHN0eWxlcy4gVGhpcyBhbGxvd3MgeW91IHRvIGluY2x1ZGUgb25seSBjb21wb25lbnRzIHRoYXQgeW91IG5lZWQuXG4gKlxuICogICd0cnVlJyAgLSBlbmFibGVzIGNvbXBvbmVudCBhbmQgaW5jbHVkZXMgaXQgdG8gbWFpbiBDU1MgZmlsZS5cbiAqICAnZmFsc2UnIC0gZGlzYWJsZXMgY29tcG9uZW50IGFuZCBleGNsdWRlcyBpdCBmcm9tIG1haW4gQ1NTIGZpbGUuXG4gKlxuICogIExheW91dCBoZWxwZXI6IEBpZiAkbGF5b3V0ID09ICdiYXNlJyB7Li4ufVxuICogIFRoZW1lIGhlbHBlcjogQGlmICR0aGVtZSA9PSAnbWF0ZXJpYWwnIHsuLi59XG4gKiAgQ29tcG9uZW50IGhlbHBlcjogQGlmICRlbmFibGUtKiB7Li4ufVxuICpcbiAqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cblxuXG4vL1xuLy8gQ29yZSBzZXR0aW5nc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4vL1xuXG4vLyoqIExheW91dDogJ2xheW91dF8xJywgJ2xheW91dF8yJywgJ2xheW91dF8zJywgJ2xheW91dF80JywgJ2xheW91dF81J1xuJGxheW91dDogICAgICAgJ2xheW91dF8xJyAhZGVmYXVsdDtcblxuLy8qKiBUaGVtZTogJ2RlZmF1bHQnIG9yICdtYXRlcmlhbCdcbiR0aGVtZTogICAgICAgICdkZWZhdWx0JyAhZGVmYXVsdDtcblxuLy8qKiBEaXJlY3Rpb246ICdMVFInIG9yICdSVEwnXG4kZGlyZWN0aW9uOiAgICAnTFRSJyAhZGVmYXVsdDtcblxuXG4vL1xuLy8gTGF5b3V0XG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi8vXG5cbi8vKiogU2lkZWJhciBuYXZpZ2F0aW9uIHR5cGVzXG4kZW5hYmxlLXNpZGViYXItbmF2LWljb25zLXJldmVyc2U6XHQgIHRydWUgIWRlZmF1bHQ7XG4kZW5hYmxlLXNpZGViYXItbmF2LWJvcmRlcmVkOlx0XHQgIHRydWUgIWRlZmF1bHQ7XG5cbi8vKiogQm94ZWQgbGF5b3V0c1xuJGVuYWJsZS1ib3hlZDpcdFx0XHRcdFx0XHQgIHRydWUgIWRlZmF1bHQ7XG5cbi8vKiogRmxhc2ggb2YgdW5zdHlsZWQgY29udGVudCAoRk9VQykgZml4IGZvciBqUXVlcnkgMy4qXG4kZW5hYmxlLWZvdWMtZml4Olx0XHRcdFx0XHQgIHRydWUgIWRlZmF1bHQ7XG5cblxuLy9cbi8vIENvbXBvbmVudHNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLy9cblxuLy8qKiBVSSB0aGluZ3NcbiRlbmFibGUtaGVhZGVyLWVsZW1lbnRzOlx0XHRcdCAgdHJ1ZSAhZGVmYXVsdDtcbiRlbmFibGUtaGVhZHJvb206XHRcdFx0XHRcdCAgdHJ1ZSAhZGVmYXVsdDtcbiRlbmFibGUtc2Nyb2xsYmFyOlx0XHRcdFx0XHQgIHRydWUgIWRlZmF1bHQ7XG4kZW5hYmxlLXNsaW5reTpcdFx0XHRcdFx0XHQgIHRydWUgIWRlZmF1bHQ7XG4kZW5hYmxlLXN0aWNreTpcdFx0XHRcdFx0XHQgIHRydWUgIWRlZmF1bHQ7XG4kZW5hYmxlLWJsb2NrdWk6XHRcdFx0XHRcdCAgdHJ1ZSAhZGVmYXVsdDtcbiRlbmFibGUtcmlwcGxlOlx0XHRcdFx0XHRcdCAgdHJ1ZSAhZGVmYXVsdDtcblxuXG4vLyoqIEZvcm1zXG4kZW5hYmxlLXVuaWZvcm06XHRcdFx0XHRcdCAgdHJ1ZSAhZGVmYXVsdDtcbiRlbmFibGUtc3dpdGNoZXJ5Olx0XHRcdFx0XHQgIHRydWUgIWRlZmF1bHQ7XG4kZW5hYmxlLWJvb3RzdHJhcC1zd2l0Y2g6XHRcdFx0ICB0cnVlICFkZWZhdWx0O1xuXG4kZW5hYmxlLXNlbGVjdDI6XHRcdFx0XHRcdCAgdHJ1ZSAhZGVmYXVsdDtcbiRlbmFibGUtbXVsdGlzZWxlY3Q6XHRcdFx0XHQgIHRydWUgIWRlZmF1bHQ7XG5cbiRlbmFibGUtdHlwZWFoZWFkOlx0XHRcdFx0XHQgIHRydWUgIWRlZmF1bHQ7XG4kZW5hYmxlLXBhc3N5Olx0XHRcdFx0XHRcdCAgdHJ1ZSAhZGVmYXVsdDtcbiRlbmFibGUtdmFsaWRhdGlvbjpcdFx0XHRcdFx0ICB0cnVlICFkZWZhdWx0O1xuJGVuYWJsZS1hbHBhY2E6XHRcdFx0XHRcdFx0ICB0cnVlICFkZWZhdWx0O1xuJGVuYWJsZS13aXphcmQ6XHRcdFx0XHRcdFx0ICB0cnVlICFkZWZhdWx0O1xuJGVuYWJsZS1kdWFsLWxpc3Rib3g6XHRcdFx0XHQgIHRydWUgIWRlZmF1bHQ7XG4kZW5hYmxlLXRvdWNoc3BpbjpcdFx0XHRcdFx0ICB0cnVlICFkZWZhdWx0O1xuJGVuYWJsZS1mbG9hdGluZy1sYWJlbHM6XHRcdFx0ICB0cnVlICFkZWZhdWx0O1xuXG4kZW5hYmxlLXRhZ3MtaW5wdXQ6XHRcdFx0XHRcdCAgdHJ1ZSAhZGVmYXVsdDtcbiRlbmFibGUtdG9rZW5maWVsZDpcdFx0XHRcdFx0ICB0cnVlICFkZWZhdWx0O1xuXG5cbi8vKiogRWRpdG9yc1xuJGVuYWJsZS1zdW1tZXJub3RlOlx0XHRcdFx0XHQgIHRydWUgIWRlZmF1bHQ7XG4kZW5hYmxlLXRydW1ib3d5ZzpcdFx0XHRcdFx0ICB0cnVlICFkZWZhdWx0O1xuJGVuYWJsZS1hY2U6XHRcdFx0XHRcdFx0ICB0cnVlICFkZWZhdWx0O1xuXG5cbi8vKiogUGlja2Vyc1xuJGVuYWJsZS1kYXRlcmFuZ2U6XHRcdFx0XHRcdCAgdHJ1ZSAhZGVmYXVsdDtcbiRlbmFibGUtcGlja2FkYXRlOlx0XHRcdFx0XHQgIHRydWUgIWRlZmF1bHQ7XG4kZW5hYmxlLWFueXRpbWU6XHRcdFx0XHRcdCAgdHJ1ZSAhZGVmYXVsdDtcbiRlbmFibGUtc3BlY3RydW06XHRcdFx0XHRcdCAgdHJ1ZSAhZGVmYXVsdDtcblxuXG4vLyoqIEZpbGUgdXBsb2FkZXJzXG4kZW5hYmxlLXBsdXBsb2FkOlx0XHRcdFx0XHQgIHRydWUgIWRlZmF1bHQ7XG4kZW5hYmxlLWZpbGVpbnB1dDpcdFx0XHRcdFx0ICB0cnVlICFkZWZhdWx0O1xuJGVuYWJsZS1kcm9wem9uZTpcdFx0XHRcdFx0ICB0cnVlICFkZWZhdWx0O1xuXG5cbi8vKiogTm90aWZpY2F0aW9uc1xuJGVuYWJsZS1wbm90aWZ5Olx0XHRcdFx0XHQgIHRydWUgIWRlZmF1bHQ7XG4kZW5hYmxlLW5vdHk6XHRcdFx0XHRcdFx0ICB0cnVlICFkZWZhdWx0O1xuJGVuYWJsZS1qZ3Jvd2w6XHRcdFx0XHRcdFx0ICB0cnVlICFkZWZhdWx0O1xuJGVuYWJsZS1zd2VldGFsZXJ0Olx0XHRcdFx0XHQgIHRydWUgIWRlZmF1bHQ7XG5cblxuLy8qKiBTbGlkZXJzXG4kZW5hYmxlLW5vdWk6XHRcdFx0XHRcdFx0ICB0cnVlICFkZWZhdWx0O1xuJGVuYWJsZS1pb246XHRcdFx0XHRcdFx0ICB0cnVlICFkZWZhdWx0O1xuXG5cbi8vKiogQ2hhcnRzXG4kZW5hYmxlLWNoYXJ0czpcdFx0XHRcdFx0XHQgIHRydWUgIWRlZmF1bHQ7XG4kZW5hYmxlLWQzOlx0XHRcdFx0XHRcdFx0ICB0cnVlICFkZWZhdWx0O1xuJGVuYWJsZS1jMzpcdFx0XHRcdFx0XHRcdCAgdHJ1ZSAhZGVmYXVsdDtcblxuXG4vLyoqIE1hcHNcbiRlbmFibGUtZ29vZ2xlLW1hcHM6XHRcdFx0XHQgIHRydWUgIWRlZmF1bHQ7XG4kZW5hYmxlLXZlY3Rvci1tYXBzOlx0XHRcdFx0ICB0cnVlICFkZWZhdWx0O1xuXG5cbi8vKiogalF1ZXJ5IFVJXG4kZW5hYmxlLWpxdWVyeXVpOlx0XHRcdFx0XHQgIHRydWUgIWRlZmF1bHQ7XG4kZW5hYmxlLWpxdWVyeXVpLXBpcHM6XHRcdFx0XHQgIHRydWUgIWRlZmF1bHQ7XG5cblxuLy8qKiBUYWJsZXNcbiRlbmFibGUtZGF0YXRhYmxlOlx0XHRcdFx0XHQgIHRydWUgIWRlZmF1bHQ7XG4kZW5hYmxlLWRhdGF0YWJsZS1zZWxlY3Q6XHRcdFx0ICB0cnVlICFkZWZhdWx0O1xuJGVuYWJsZS1kYXRhdGFibGUtc2Nyb2xsZXI6XHRcdFx0ICB0cnVlICFkZWZhdWx0O1xuJGVuYWJsZS1kYXRhdGFibGUtcm93LXJlb3JkZXI6XHRcdCAgdHJ1ZSAhZGVmYXVsdDtcbiRlbmFibGUtZGF0YXRhYmxlLXJlc3BvbnNpdmU6XHRcdCAgdHJ1ZSAhZGVmYXVsdDtcbiRlbmFibGUtZGF0YXRhYmxlLWtleXRhYmxlOlx0XHRcdCAgdHJ1ZSAhZGVmYXVsdDtcbiRlbmFibGUtZGF0YXRhYmxlLWZpeGVkLWhlYWRlcjpcdFx0ICB0cnVlICFkZWZhdWx0O1xuJGVuYWJsZS1kYXRhdGFibGUtZml4ZWQtY29sdW1uczpcdCAgdHJ1ZSAhZGVmYXVsdDtcbiRlbmFibGUtZGF0YXRhYmxlLWNvbHJlb3JkZXI6XHRcdCAgdHJ1ZSAhZGVmYXVsdDtcbiRlbmFibGUtZGF0YXRhYmxlLWJ1dHRvbnM6XHRcdFx0ICB0cnVlICFkZWZhdWx0O1xuJGVuYWJsZS1kYXRhdGFibGUtYXV0b2ZpbGw6XHRcdFx0ICB0cnVlICFkZWZhdWx0O1xuXG4kZW5hYmxlLWhhbmRzb250YWJsZTpcdFx0XHRcdCAgdHJ1ZSAhZGVmYXVsdDtcbiRlbmFibGUtZm9vdGFibGU6XHRcdFx0XHRcdCAgdHJ1ZSAhZGVmYXVsdDtcblxuXG4vLyoqIFBhZ2Uga2l0c1xuJGVuYWJsZS1ibG9nOlx0XHRcdFx0XHRcdCAgdHJ1ZSAhZGVmYXVsdDtcbiRlbmFibGUtdGltZWxpbmU6XHRcdFx0XHRcdCAgdHJ1ZSAhZGVmYXVsdDtcbiRlbmFibGUtbG9naW46XHRcdFx0XHRcdFx0ICB0cnVlICFkZWZhdWx0O1xuJGVuYWJsZS1lcnJvcjpcdFx0XHRcdFx0XHQgIHRydWUgIWRlZmF1bHQ7XG4kZW5hYmxlLXByb2ZpbGU6XHRcdFx0XHRcdCAgdHJ1ZSAhZGVmYXVsdDtcbiRlbmFibGUtdGFza3M6XHRcdFx0XHRcdFx0ICB0cnVlICFkZWZhdWx0O1xuJGVuYWJsZS1pbmJveDpcdFx0XHRcdFx0XHQgIHRydWUgIWRlZmF1bHQ7XG4kZW5hYmxlLWNoYXQ6XHRcdFx0XHRcdFx0ICB0cnVlICFkZWZhdWx0O1xuJGVuYWJsZS1lY29tbWVyY2U6XHRcdFx0XHRcdCAgdHJ1ZSAhZGVmYXVsdDtcblxuXG4vLyoqIE1pc2NcbiRlbmFibGUtZmFiOlx0XHRcdFx0XHRcdCAgdHJ1ZSAhZGVmYXVsdDtcbiRlbmFibGUtZmFuY3lib3g6XHRcdFx0XHRcdCAgdHJ1ZSAhZGVmYXVsdDtcbiRlbmFibGUtZmFuY3l0cmVlOlx0XHRcdFx0XHQgIHRydWUgIWRlZmF1bHQ7XG4kZW5hYmxlLWZ1bGxjYWxlbmRhcjpcdFx0XHRcdCAgdHJ1ZSAhZGVmYXVsdDtcbiRlbmFibGUtaW1hZ2UtY3JvcHBlcjpcdFx0XHRcdCAgdHJ1ZSAhZGVmYXVsdDtcbiRlbmFibGUtbGFkZGE6XHRcdFx0XHRcdFx0ICB0cnVlICFkZWZhdWx0O1xuJGVuYWJsZS1wYWNlOlx0XHRcdFx0XHRcdCAgdHJ1ZSAhZGVmYXVsdDtcbiRlbmFibGUtZHJhZ3VsYTpcdFx0XHRcdFx0ICB0cnVlICFkZWZhdWx0O1xuJGVuYWJsZS1wcmlzbTpcdFx0XHRcdFx0XHQgIHRydWUgIWRlZmF1bHQ7XG4kZW5hYmxlLWRlbW86XHRcdFx0XHRcdFx0ICB0cnVlICFkZWZhdWx0O1xuIiwiLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gKlxuICogICMgQ3VzdG9tIExpbWl0bGVzcyBmdW5jdGlvbnNcbiAqXG4gKiAgVXRpbGl0eSBtaXhpbnMgYW5kIGZ1bmN0aW9ucyBmb3IgZXZhbHV0YXRpbmcgc291cmNlIGNvZGUgYWNyb3NzIG91ciB2YXJpYWJsZXMsIG1hcHMsIGFuZCBtaXhpbnMuXG4gKlxuICogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuXG5cbi8vXG4vLyBSZW1vdmVzIHRoZSB1bml0IChlLmcuIHB4LCBlbSwgcmVtKSBmcm9tIGEgdmFsdWUsIHJldHVybmluZyB0aGUgbnVtYmVyIG9ubHkuXG4vL1xuLy8gQHBhcmFtIHtOdW1iZXJ9ICRudW0gLSBOdW1iZXIgdG8gc3RyaXAgdW5pdCBmcm9tLlxuLy9cbi8vIEByZXR1cm5zIHtOdW1iZXJ9IFRoZSBzYW1lIG51bWJlciwgc2FucyB1bml0LlxuXG5AZnVuY3Rpb24gc3RyaXAtdW5pdCgkbnVtKSB7XG5cdEByZXR1cm4gJG51bSAvICgkbnVtICogMCArIDEpO1xufVxuXG5cbi8vXG4vLyBDb252ZXJ0cyBvbmUgb3IgbW9yZSBwaXhlbCB2YWx1ZXMgaW50byBtYXRjaGluZyByZW0gdmFsdWVzLlxuLy9cbi8vIEBwYXJhbSB7TnVtYmVyfExpc3R9ICR2YWx1ZXMgLSBPbmUgb3IgbW9yZSB2YWx1ZXMgdG8gY29udmVydC4gQmUgc3VyZSB0byBzZXBhcmF0ZSB0aGVtIHdpdGggc3BhY2VzIGFuZCBub3QgY29tbWFzLiBJZiB5b3UgbmVlZCB0byBjb252ZXJ0IGEgY29tbWEtc2VwYXJhdGVkIGxpc3QsIHdyYXAgdGhlIGxpc3QgaW4gcGFyZW50aGVzZXMuXG4vLyBAcGFyYW0ge051bWJlcn0gJGJhc2UgW251bGxdIC0gVGhlIGJhc2UgdmFsdWUgdG8gdXNlIHdoZW4gY2FsY3VsYXRpbmcgdGhlIGByZW1gLiBJZiB5b3UncmUgdXNpbmcgRm91bmRhdGlvbiBvdXQgb2YgdGhlIGJveCwgdGhpcyBpcyAxNnB4LiBJZiB0aGlzIHBhcmFtZXRlciBpcyBgbnVsbGAsIHRoZSBmdW5jdGlvbiB3aWxsIHJlZmVyZW5jZSB0aGUgYCRiYXNlLWZvbnQtc2l6ZWAgdmFyaWFibGUgYXMgdGhlIGJhc2UuXG4vL1xuLy8gQHJldHVybnMge0xpc3R9IEEgbGlzdCBvZiBjb252ZXJ0ZWQgdmFsdWVzLlxuXG4kZ2xvYmFsLWZvbnQtc2l6ZTogMTAwJSAhZGVmYXVsdDtcblxuQGZ1bmN0aW9uIHJlbS1jYWxjKCR2YWx1ZXMsICRiYXNlOiBudWxsKSB7XG5cdCRyZW0tdmFsdWVzOiAoKTtcblx0JGNvdW50OiBsZW5ndGgoJHZhbHVlcyk7XG5cblx0Ly8gSWYgbm8gYmFzZSBpcyBkZWZpbmVkLCBkZWZlciB0byB0aGUgZ2xvYmFsIGZvbnQgc2l6ZVxuXHRAaWYgJGJhc2UgPT0gbnVsbCB7XG5cdFx0JGJhc2U6ICRnbG9iYWwtZm9udC1zaXplO1xuXHR9XG5cblx0Ly8gSWYgdGhlIGJhc2UgZm9udCBzaXplIGlzIGEgJSwgdGhlbiBtdWx0aXBseSBpdCBieSAxNnB4XG5cdC8vIFRoaXMgaXMgYmVjYXVzZSAxMDAlIGZvbnQgc2l6ZSA9IDE2cHggaW4gbW9zdCBhbGwgYnJvd3NlcnNcblx0QGlmIHVuaXQoJGJhc2UpID09ICclJyB7XG5cdFx0JGJhc2U6ICgkYmFzZSAvIDEwMCUpICogMTZweDtcblx0fVxuXG5cdC8vIFVzaW5nIHJlbSBhcyBiYXNlIGFsbG93cyBjb3JyZWN0IHNjYWxpbmdcblx0QGlmIHVuaXQoJGJhc2UpID09ICdyZW0nIHtcblx0XHQkYmFzZTogc3RyaXAtdW5pdCgkYmFzZSkgKiAxNnB4O1xuXHR9XG5cblx0QGlmICRjb3VudCA9PSAxIHtcblx0XHRAcmV0dXJuIC16Zi10by1yZW0oJHZhbHVlcywgJGJhc2UpO1xuXHR9XG5cblx0QGZvciAkaSBmcm9tIDEgdGhyb3VnaCAkY291bnQge1xuXHRcdCRyZW0tdmFsdWVzOiBhcHBlbmQoJHJlbS12YWx1ZXMsIC16Zi10by1yZW0obnRoKCR2YWx1ZXMsICRpKSwgJGJhc2UpKTtcblx0fVxuXG5cdEByZXR1cm4gJHJlbS12YWx1ZXM7XG59XG5cblxuLy9cbi8vIENvbnZlcnRzIGEgcGl4ZWwgdmFsdWUgdG8gbWF0Y2hpbmcgcmVtIHZhbHVlLiAqQW55KiB2YWx1ZSBwYXNzZWQsIHJlZ2FyZGxlc3Mgb2YgdW5pdCwgaXMgYXNzdW1lZCB0byBiZSBhIHBpeGVsIHZhbHVlLiBCeSBkZWZhdWx0LCB0aGUgYmFzZSBwaXhlbCB2YWx1ZSB1c2VkIHRvIGNhbGN1bGF0ZSB0aGUgcmVtIHZhbHVlIGlzIHRha2VuIGZyb20gdGhlIGAkZ2xvYmFsLWZvbnQtc2l6ZWAgdmFyaWFibGUuXG4vLyBAYWNjZXNzIHByaXZhdGVcbi8vXG4vLyBAcGFyYW0ge051bWJlcn0gJHZhbHVlIC0gUGl4ZWwgdmFsdWUgdG8gY29udmVydC5cbi8vIEBwYXJhbSB7TnVtYmVyfSAkYmFzZSBbbnVsbF0gLSBCYXNlIGZvciBwaXhlbCBjb252ZXJzaW9uLlxuLy9cbi8vIEByZXR1cm5zIHtOdW1iZXJ9IEEgbnVtYmVyIGluIHJlbXMsIGNhbGN1bGF0ZWQgYmFzZWQgb24gdGhlIGdpdmVuIHZhbHVlIGFuZCB0aGUgYmFzZSBwaXhlbCB2YWx1ZS4gcmVtIHZhbHVlcyBhcmUgcGFzc2VkIHRocm91Z2ggYXMgaXMuXG5cbkBmdW5jdGlvbiAtemYtdG8tcmVtKCR2YWx1ZSwgJGJhc2U6IG51bGwpIHtcblxuXHQvLyBDaGVjayBpZiB0aGUgdmFsdWUgaXMgYSBudW1iZXJcblx0QGlmIHR5cGUtb2YoJHZhbHVlKSAhPSAnbnVtYmVyJyB7XG5cdFx0QHdhcm4gaW5zcGVjdCgkdmFsdWUpICsgJyB3YXMgcGFzc2VkIHRvIHJlbS1jYWxjKCksIHdoaWNoIGlzIG5vdCBhIG51bWJlci4nO1xuXHRcdEByZXR1cm4gJHZhbHVlO1xuXHR9XG5cblx0Ly8gVHJhbnNmb3JtIGVtIGludG8gcmVtIGlmIHNvbWVvbmUgaGFuZHMgb3ZlciAnZW0nc1xuXHRAaWYgdW5pdCgkdmFsdWUpID09ICdlbScge1xuXHRcdCR2YWx1ZTogc3RyaXAtdW5pdCgkdmFsdWUpICogMXJlbTtcblx0fVxuXG5cdC8vIENhbGN1bGF0ZSByZW0gaWYgdW5pdHMgZm9yICR2YWx1ZSBpcyBub3QgcmVtIG9yIGVtXG5cdEBpZiB1bml0KCR2YWx1ZSkgIT0gJ3JlbScge1xuXHRcdCR2YWx1ZTogc3RyaXAtdW5pdCgkdmFsdWUpIC8gc3RyaXAtdW5pdCgkYmFzZSkgKiAxcmVtO1xuXHR9XG5cblx0Ly8gVHVybiAwcmVtIGludG8gMFxuXHRAaWYgJHZhbHVlID09IDByZW0ge1xuXHRcdCR2YWx1ZTogMDtcblx0fVxuXG5cdEByZXR1cm4gJHZhbHVlO1xufVxuIiwiLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gKlxuICogICMgQ3VzdG9tIHRlbXBsYXRlIG1peGluc1xuICpcbiAqICBBbGwgY3VzdG9tIG1peGlucyBhcmUgcHJlZml4ZWQgd2l0aCBcImxsLVwiIHRvIGF2b2lkIGNvbmZsaWN0c1xuICpcbiAqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cblxuXG4vLyBDb250ZW50XG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLy8gRm9udCBzbW9vdGhpbmdcbkBtaXhpbiBsbC1mb250LXNtb290aGluZygpIHtcbiAgICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcbiAgICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlO1xufVxuXG5cbi8vXG4vLyBDb2xvcnMgKGZvciBjb2xvciBzeXN0ZW0pXG4vL1xuXG4vLyBGb3IgLmJnLSogY2xhc3Nlc1xuQG1peGluIGxsLWJhY2tncm91bmQtdmFyaWFudCgkY29sb3IpIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3I7XG59XG5cbi8vIEZvciAudGV4dC0qIGNsYXNzZXNcbkBtaXhpbiBsbC10ZXh0LWNvbG9yLXZhcmlhbnQoJGNvbG9yKSB7XG4gICAgY29sb3I6ICRjb2xvcjtcblxuICAgIC8vIERhcmtlbiBsaW5rIGNvbG9yIG9uIGhvdmVyXG4gICAgJltocmVmXSB7XG4gICAgICAgIEBpbmNsdWRlIGhvdmVyLWZvY3VzIHtcbiAgICAgICAgICAgIGNvbG9yOiBkYXJrZW4oJGNvbG9yLCA3LjUlKTtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLy8gRm9yIC5ib3JkZXItKiBjbGFzc2VzXG5AbWl4aW4gbGwtYm9yZGVyLWNvbG9yLXZhcmlhbnQoJGNvbG9yKSB7XG4gICAgYm9yZGVyLWNvbG9yOiAkY29sb3I7XG59XG5cbi8vIEZvciAuYm9yZGVyLXRvcC0qIGNsYXNzZXNcbkBtaXhpbiBsbC1ib3JkZXItdG9wLWNvbG9yLXZhcmlhbnQoJGNvbG9yKSB7XG4gICAgYm9yZGVyLXRvcC1jb2xvcjogJGNvbG9yO1xufVxuXG4vLyBGb3IgLmJvcmRlci1ib3R0b20tKiBjbGFzc2VzXG5AbWl4aW4gbGwtYm9yZGVyLWJvdHRvbS1jb2xvci12YXJpYW50KCRjb2xvcikge1xuICAgIGJvcmRlci1ib3R0b20tY29sb3I6ICRjb2xvcjtcbn1cblxuLy8gRm9yIC5ib3JkZXItbGVmdC0qIGNsYXNzZXNcbkBtaXhpbiBsbC1ib3JkZXItbGVmdC1jb2xvci12YXJpYW50KCRjb2xvcikge1xuICAgIGJvcmRlci1sZWZ0LWNvbG9yOiAkY29sb3I7XG59XG5cbi8vIEZvciAuYm9yZGVyLXJpZ2h0LSogY2xhc3Nlc1xuQG1peGluIGxsLWJvcmRlci1yaWdodC1jb2xvci12YXJpYW50KCRjb2xvcikge1xuICAgIGJvcmRlci1yaWdodC1jb2xvcjogJGNvbG9yO1xufVxuIiwiLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gKlxuICogICMgTWFpbiBjb2xvcnNcbiAqXG4gKiAgTGlzdCBvZiB0aGUgdGVtcGxhdGUgbWFpbiBjb2xvciBwYWxldHRlc1xuICpcbiAqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cblxuXG4vLyBDb250ZXh0dWFsIGNvbG9yc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi8vIFByaW1hcnkgcGFsZXR0ZVxuJGNvbG9yLXByaW1hcnktNTA6ICNFM0YyRkQ7XG4kY29sb3ItcHJpbWFyeS0zMDA6ICM2NEI1RjY7XG4kY29sb3ItcHJpbWFyeS00MDA6ICM0MkE1RjU7XG4kY29sb3ItcHJpbWFyeS01MDA6ICMyMTk2RjM7XG4kY29sb3ItcHJpbWFyeS02MDA6ICMxRTg4RTU7XG4kY29sb3ItcHJpbWFyeS03MDA6ICMxOTc2RDI7XG4kY29sb3ItcHJpbWFyeS04MDA6ICMxNTY1QzA7XG4kY29sb3ItcHJpbWFyeS05MDA6ICMwRDQ3QTE7XG5cbi8vIERhbmdlciBwYWxldHRlXG4kY29sb3ItZGFuZ2VyLTUwOiAjRkZFQkVFO1xuJGNvbG9yLWRhbmdlci0zMDA6ICNFNTczNzM7XG4kY29sb3ItZGFuZ2VyLTQwMDogI0VGNTM1MDtcbiRjb2xvci1kYW5nZXItNTAwOiAjRjQ0MzM2O1xuJGNvbG9yLWRhbmdlci02MDA6ICNFNTM5MzU7XG4kY29sb3ItZGFuZ2VyLTcwMDogI0QzMkYyRjtcbiRjb2xvci1kYW5nZXItODAwOiAjQzYyODI4O1xuJGNvbG9yLWRhbmdlci05MDA6ICNCNzFDMUM7XG5cbi8vIFN1Y2Nlc3MgcGFsZXR0ZVxuJGNvbG9yLXN1Y2Nlc3MtNTA6ICNFOEY1RTk7XG4kY29sb3Itc3VjY2Vzcy0zMDA6ICM4MUM3ODQ7XG4kY29sb3Itc3VjY2Vzcy00MDA6ICM2NkJCNkE7XG4kY29sb3Itc3VjY2Vzcy01MDA6ICM0Q0FGNTA7XG4kY29sb3Itc3VjY2Vzcy02MDA6ICM0M0EwNDc7XG4kY29sb3Itc3VjY2Vzcy03MDA6ICMzODhFM0M7XG4kY29sb3Itc3VjY2Vzcy04MDA6ICMyRTdEMzI7XG4kY29sb3Itc3VjY2Vzcy05MDA6ICMxQjVFMjA7XG5cbi8vIFdhcm5pbmcgcGFsZXR0ZVxuJGNvbG9yLXdhcm5pbmctNTA6ICNGQkU5RTc7XG4kY29sb3Itd2FybmluZy0zMDA6ICNGRjhBNjU7XG4kY29sb3Itd2FybmluZy00MDA6ICNGRjcwNDM7XG4kY29sb3Itd2FybmluZy01MDA6ICNGRjU3MjI7XG4kY29sb3Itd2FybmluZy02MDA6ICNGNDUxMUU7XG4kY29sb3Itd2FybmluZy03MDA6ICNFNjRBMTk7XG4kY29sb3Itd2FybmluZy04MDA6ICNEODQzMTU7XG4kY29sb3Itd2FybmluZy05MDA6ICNCRjM2MEM7XG5cbi8vIEluZm8gcGFsZXR0ZVxuJGNvbG9yLWluZm8tNTA6ICNFMEY3RkE7XG4kY29sb3ItaW5mby0zMDA6ICM0REQwRTE7XG4kY29sb3ItaW5mby00MDA6ICMyNkM2REE7XG4kY29sb3ItaW5mby01MDA6ICMwMEJDRDQ7XG4kY29sb3ItaW5mby02MDA6ICMwMEFDQzE7XG4kY29sb3ItaW5mby03MDA6ICMwMDk3QTc7XG4kY29sb3ItaW5mby04MDA6ICMwMDgzOEY7XG4kY29sb3ItaW5mby05MDA6ICMwMDYwNjQ7XG5cbi8vIERhcmsgcGFsZXR0ZVxuJGNvbG9yLWRhcmstNTAwOiAjMzI0MTQ4O1xuXG5cbi8vIEFkZGl0aW9uYWwgY29sb3JzXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLy8gUGluayBwYWxldHRlXG4kY29sb3ItcGluay01MDogI0ZDRTRFQztcbiRjb2xvci1waW5rLTMwMDogI0YwNjI5MjtcbiRjb2xvci1waW5rLTQwMDogI0VDNDA3QTtcbiRjb2xvci1waW5rLTUwMDogI0U5MUU2MztcbiRjb2xvci1waW5rLTYwMDogI0Q4MUI2MDtcbiRjb2xvci1waW5rLTcwMDogI0MyMTg1QjtcbiRjb2xvci1waW5rLTgwMDogI0FEMTQ1NztcbiRjb2xvci1waW5rLTkwMDogIzg4MEU0RjtcblxuLy8gVmlvbGV0IHBhbGV0dGVcbiRjb2xvci12aW9sZXQtNTA6ICNGM0U1RjU7XG4kY29sb3ItdmlvbGV0LTMwMDogI0JBNjhDODtcbiRjb2xvci12aW9sZXQtNDAwOiAjQUI0N0JDO1xuJGNvbG9yLXZpb2xldC01MDA6ICM5QzI3QjA7XG4kY29sb3ItdmlvbGV0LTYwMDogIzhFMjRBQTtcbiRjb2xvci12aW9sZXQtNzAwOiAjN0IxRkEyO1xuJGNvbG9yLXZpb2xldC04MDA6ICM2QTFCOUE7XG4kY29sb3ItdmlvbGV0LTkwMDogIzRBMTQ4QztcblxuLy8gUHVycGxlIHBhbGV0dGVcbiRjb2xvci1wdXJwbGUtNTA6ICNFREU3RjY7XG4kY29sb3ItcHVycGxlLTMwMDogIzk1NzVDRDtcbiRjb2xvci1wdXJwbGUtNDAwOiAjN0U1N0MyO1xuJGNvbG9yLXB1cnBsZS01MDA6ICM2NzNBQjc7XG4kY29sb3ItcHVycGxlLTYwMDogIzVFMzVCMTtcbiRjb2xvci1wdXJwbGUtNzAwOiAjNTEyREE4O1xuJGNvbG9yLXB1cnBsZS04MDA6ICM0NTI3QTA7XG4kY29sb3ItcHVycGxlLTkwMDogIzMxMUI5MjtcblxuLy8gSW5kaWdvIHBhbGV0dGVcbiRjb2xvci1pbmRpZ28tNTA6ICNFOEVBRjY7XG4kY29sb3ItaW5kaWdvLTMwMDogIzc5ODZDQjtcbiRjb2xvci1pbmRpZ28tNDAwOiAjNUM2QkMwO1xuJGNvbG9yLWluZGlnby01MDA6ICMzRjUxQjU7XG4kY29sb3ItaW5kaWdvLTYwMDogIzM5NDlBQjtcbiRjb2xvci1pbmRpZ28tNzAwOiAjMzAzRjlGO1xuJGNvbG9yLWluZGlnby04MDA6ICMyODM1OTM7XG4kY29sb3ItaW5kaWdvLTkwMDogIzFBMjM3RTtcblxuLy8gQmx1ZSBwYWxldHRlXG4kY29sb3ItYmx1ZS01MDogI0UxRjVGRTtcbiRjb2xvci1ibHVlLTMwMDogIzRGQzNGNztcbiRjb2xvci1ibHVlLTQwMDogIzI5QjZGNjtcbiRjb2xvci1ibHVlLTUwMDogIzAzQTlGNDtcbiRjb2xvci1ibHVlLTYwMDogIzAzOUJFNTtcbiRjb2xvci1ibHVlLTcwMDogIzAyODhEMTtcbiRjb2xvci1ibHVlLTgwMDogIzAyNzdCRDtcbiRjb2xvci1ibHVlLTkwMDogIzAxNTc5QjtcblxuLy8gVGVhbCBwYWxldHRlXG4kY29sb3ItdGVhbC01MDogI0UwRjJGMTtcbiRjb2xvci10ZWFsLTMwMDogIzREQjZBQztcbiRjb2xvci10ZWFsLTQwMDogIzI2QTY5QTtcbiRjb2xvci10ZWFsLTUwMDogIzAwOTY4ODtcbiRjb2xvci10ZWFsLTYwMDogIzAwODk3QjtcbiRjb2xvci10ZWFsLTcwMDogIzAwNzk2QjtcbiRjb2xvci10ZWFsLTgwMDogIzAwNjk1QztcbiRjb2xvci10ZWFsLTkwMDogIzAwNEQ0MDtcblxuLy8gR3JlZW4gcGFsZXR0ZVxuJGNvbG9yLWdyZWVuLTUwOiAjRjFGOEU5O1xuJGNvbG9yLWdyZWVuLTMwMDogI0FFRDU4MTtcbiRjb2xvci1ncmVlbi00MDA6ICM5Q0NDNjU7XG4kY29sb3ItZ3JlZW4tNTAwOiAjOEJDMzRBO1xuJGNvbG9yLWdyZWVuLTYwMDogIzdDQjM0MjtcbiRjb2xvci1ncmVlbi03MDA6ICM2ODlGMzg7XG4kY29sb3ItZ3JlZW4tODAwOiAjNTU4QjJGO1xuJGNvbG9yLWdyZWVuLTkwMDogIzMzNjkxRTtcblxuLy8gT3JhbmdlIHBhbGV0dGVcbiRjb2xvci1vcmFuZ2UtNTA6ICNGRkYzRTA7XG4kY29sb3Itb3JhbmdlLTMwMDogI0ZGQjc0RDtcbiRjb2xvci1vcmFuZ2UtNDAwOiAjRkZBNzI2O1xuJGNvbG9yLW9yYW5nZS01MDA6ICNGRjk4MDA7XG4kY29sb3Itb3JhbmdlLTYwMDogI0ZCOEMwMDtcbiRjb2xvci1vcmFuZ2UtNzAwOiAjRjU3QzAwO1xuJGNvbG9yLW9yYW5nZS04MDA6ICNFRjZDMDA7XG4kY29sb3Itb3JhbmdlLTkwMDogI0U2NTEwMDtcblxuLy8gQnJvd24gcGFsZXR0ZVxuJGNvbG9yLWJyb3duLTUwOiAjRUZFQkU5O1xuJGNvbG9yLWJyb3duLTMwMDogI0ExODg3RjtcbiRjb2xvci1icm93bi00MDA6ICM4RDZFNjM7XG4kY29sb3ItYnJvd24tNTAwOiAjNzk1NTQ4O1xuJGNvbG9yLWJyb3duLTYwMDogIzZENEM0MTtcbiRjb2xvci1icm93bi03MDA6ICM1RDQwMzc7XG4kY29sb3ItYnJvd24tODAwOiAjNEUzNDJFO1xuJGNvbG9yLWJyb3duLTkwMDogIzNFMjcyMztcblxuLy8gR3JleSBwYWxldHRlXG4kY29sb3ItZ3JleS01MDogI0ZBRkFGQTtcbiRjb2xvci1ncmV5LTMwMDogIzk5OTtcbiRjb2xvci1ncmV5LTQwMDogIzg4ODtcbiRjb2xvci1ncmV5LTUwMDogIzc3NztcbiRjb2xvci1ncmV5LTYwMDogIzY2NjtcbiRjb2xvci1ncmV5LTcwMDogIzU1NTtcbiRjb2xvci1ncmV5LTgwMDogIzQ0NDtcbiRjb2xvci1ncmV5LTkwMDogIzMzMztcblxuLy8gU2xhdGUgcGFsZXR0ZVxuJGNvbG9yLXNsYXRlLTUwOiAjRUNFRkYxO1xuJGNvbG9yLXNsYXRlLTMwMDogIzkwQTRBRTtcbiRjb2xvci1zbGF0ZS00MDA6ICM3ODkwOUM7XG4kY29sb3Itc2xhdGUtNTAwOiAjNjA3RDhCO1xuJGNvbG9yLXNsYXRlLTYwMDogIzU0NkU3QTtcbiRjb2xvci1zbGF0ZS03MDA6ICM0NTVBNjQ7XG4kY29sb3Itc2xhdGUtODAwOiAjMzc0NzRGO1xuJGNvbG9yLXNsYXRlLTkwMDogIzI2MzIzODtcbiIsIi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICpcbiAqICAjIERlZmF1bHQgQm9vdHN0cmFwIHZhcmlhYmxlIG92ZXJyaWRlc1xuICpcbiAqICBWYXJpYWJsZXMgc2hvdWxkIGZvbGxvdyB0aGUgYCRjb21wb25lbnQtc3RhdGUtcHJvcGVydHktc2l6ZWAgZm9ybXVsYSBmb3JcbiAqICBjb25zaXN0ZW50IG5hbWluZy4gRXg6ICRuYXYtbGluay1kaXNhYmxlZC1jb2xvciBhbmQgJG1vZGFsLWNvbnRlbnQtYm94LXNoYWRvdy14cy5cbiAqICBBbHNvIGluY2x1ZGVzIGN1c3RvbSB2YXJpYWJsZXMsIGFsbCBtYXJrZWQgd2l0aCBcIiFkZWZhdWx0XCIgZmxhZy5cbiAqXG4gKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5cblxuLy9cbi8vIENvbG9yIHN5c3RlbVxuLy9cbi8vIEluY2x1ZGVzIGdyZXkgcGFsZXR0ZSwgY29udGV4dHVhbCBjb2xvcnMgYW5kIG1haW4gdGhlbWUgY29sb3JzXG5cbi8vIEdyZXkgc2hhZGVzXG4kd2hpdGU6ICAgICAgICNmZmY7XG4kZ3JheS0xMDA6ICAgICNmYWZhZmE7XG4kZ3JheS0yMDA6ICAgICNmNWY1ZjU7XG4kZ3JheS0zMDA6ICAgICNlZWU7XG4kZ3JheS00MDA6ICAgICNkZGQ7XG4kZ3JheS01MDA6ICAgICNjY2M7XG4kZ3JheS02MDA6ICAgICM5OTk7XG4kZ3JheS03MDA6ICAgICM3Nzc7XG4kZ3JheS04MDA6ICAgICM1NTU7XG4kZ3JheS05MDA6ICAgICMzMzM7XG4kYmxhY2s6ICAgICAgICMwMDA7XG5cbi8vIEdyZXkgY29sb3JzIG1hcFxuJGdyYXlzOiAoKTtcbiRncmF5czogbWFwLW1lcmdlKChcbiAgICBcIjEwMFwiOiAgICAkZ3JheS0xMDAsXG4gICAgXCIyMDBcIjogICAgJGdyYXktMjAwLFxuICAgIFwiMzAwXCI6ICAgICRncmF5LTMwMCxcbiAgICBcIjQwMFwiOiAgICAkZ3JheS00MDAsXG4gICAgXCI1MDBcIjogICAgJGdyYXktNTAwLFxuICAgIFwiNjAwXCI6ICAgICRncmF5LTYwMCxcbiAgICBcIjcwMFwiOiAgICAkZ3JheS03MDAsXG4gICAgXCI4MDBcIjogICAgJGdyYXktODAwLFxuICAgIFwiOTAwXCI6ICAgICRncmF5LTkwMFxuKSwgJGdyYXlzKTtcblxuLy8gTWFpbiBjb2xvcnNcbiRibHVlOiAgICAgICRjb2xvci1wcmltYXJ5LTUwMDtcbiRpbmRpZ286ICAgICRjb2xvci1pbmRpZ28tNTAwO1xuJHB1cnBsZTogICAgJGNvbG9yLXB1cnBsZS01MDA7XG4kcGluazogICAgICAkY29sb3ItcGluay01MDA7XG4kcmVkOiAgICAgICAkY29sb3ItZGFuZ2VyLTUwMDtcbiRvcmFuZ2U6ICAgICRjb2xvci13YXJuaW5nLTQwMDtcbiR5ZWxsb3c6ICAgICRjb2xvci1vcmFuZ2UtNTAwO1xuJGdyZWVuOiAgICAgJGNvbG9yLXN1Y2Nlc3MtNTAwO1xuJHRlYWw6ICAgICAgJGNvbG9yLXRlYWwtNTAwO1xuJGN5YW46ICAgICAgJGNvbG9yLWluZm8tNTAwO1xuXG4vLyBNYWluIGNvbG9ycyBtYXBcbiRjb2xvcnM6ICgpO1xuJGNvbG9yczogbWFwLW1lcmdlKChcbiAgICBcImJsdWVcIjogICAgICAgICAkYmx1ZSxcbiAgICBcImluZGlnb1wiOiAgICAgICAkaW5kaWdvLFxuICAgIFwicHVycGxlXCI6ICAgICAgICRwdXJwbGUsXG4gICAgXCJwaW5rXCI6ICAgICAgICAgJHBpbmssXG4gICAgXCJyZWRcIjogICAgICAgICAgJHJlZCxcbiAgICBcIm9yYW5nZVwiOiAgICAgICAkb3JhbmdlLFxuICAgIFwieWVsbG93XCI6ICAgICAgICR5ZWxsb3csXG4gICAgXCJncmVlblwiOiAgICAgICAgJGdyZWVuLFxuICAgIFwidGVhbFwiOiAgICAgICAgICR0ZWFsLFxuICAgIFwiY3lhblwiOiAgICAgICAgICRjeWFuLFxuICAgIFwid2hpdGVcIjogICAgICAgICR3aGl0ZSxcbiAgICBcImdyYXlcIjogICAgICAgICAkZ3JheS02MDAsXG4gICAgXCJncmF5LWRhcmtcIjogICAgJGdyYXktODAwXG4pLCAkY29sb3JzKTtcblxuLy8gQ29udGV4dHVhbCBjb2xvcnNcbiRwcmltYXJ5OiAgICAgICRibHVlO1xuJHNlY29uZGFyeTogICAgJGdyYXktNzAwO1xuJHN1Y2Nlc3M6ICAgICAgJGdyZWVuO1xuJGluZm86ICAgICAgICAgJGN5YW47XG4kd2FybmluZzogICAgICAkb3JhbmdlO1xuJGRhbmdlcjogICAgICAgJHJlZDtcbiRsaWdodDogICAgICAgICRncmF5LTEwMDtcbiRkYXJrOiAgICAgICAgICRjb2xvci1kYXJrLTUwMDtcblxuLy8gQ29udGV4dHVhbCBjb2xvcnMgbWFwXG4kdGhlbWUtY29sb3JzOiAoKTtcbiR0aGVtZS1jb2xvcnM6IG1hcC1tZXJnZSgoXG4gICAgXCJwcmltYXJ5XCI6ICAgICAgJHByaW1hcnksXG4gICAgXCJzZWNvbmRhcnlcIjogICAgJHNlY29uZGFyeSxcbiAgICBcInN1Y2Nlc3NcIjogICAgICAkc3VjY2VzcyxcbiAgICBcImluZm9cIjogICAgICAgICAkaW5mbyxcbiAgICBcIndhcm5pbmdcIjogICAgICAkd2FybmluZyxcbiAgICBcImRhbmdlclwiOiAgICAgICAkZGFuZ2VyLFxuICAgIFwibGlnaHRcIjogICAgICAgICRsaWdodCxcbiAgICBcImRhcmtcIjogICAgICAgICAkZGFya1xuKSwgJHRoZW1lLWNvbG9ycyk7XG5cbi8vIFNldCBhIHNwZWNpZmljIGp1bXAgcG9pbnQgZm9yIHJlcXVlc3RpbmcgY29sb3IganVtcHNcbiR0aGVtZS1jb2xvci1pbnRlcnZhbDogICAgOCU7XG5cbi8vIFRoZSB5aXEgbGlnaHRuZXNzIHZhbHVlIHRoYXQgZGV0ZXJtaW5lcyB3aGVuIHRoZSBsaWdodG5lc3Mgb2YgY29sb3IgY2hhbmdlcyBmcm9tIFwiZGFya1wiIHRvIFwibGlnaHRcIi4gQWNjZXB0YWJsZSB2YWx1ZXMgYXJlIGJldHdlZW4gMCBhbmQgMjU1LlxuJHlpcS1jb250cmFzdGVkLXRocmVzaG9sZDogICAgMTUwO1xuXG4vLyBDdXN0b21pemUgdGhlIGxpZ2h0IGFuZCBkYXJrIHRleHQgY29sb3JzIGZvciB1c2UgaW4gb3VyIFlJUSBjb2xvciBjb250cmFzdCBmdW5jdGlvbi5cbiR5aXEtdGV4dC1kYXJrOiAgICAgJGdyYXktOTAwO1xuJHlpcS10ZXh0LWxpZ2h0OiAgICAkd2hpdGU7XG5cblxuLy9cbi8vIE9wdGlvbnNcbi8vXG4vLyBRdWlja2x5IG1vZGlmeSBnbG9iYWwgc3R5bGluZyBieSBlbmFibGluZyBvciBkaXNhYmxpbmcgb3B0aW9uYWwgZmVhdHVyZXMuIE1vcmUgaW4gX2NvbmZpZy5zY3NzXG5cbiRlbmFibGUtY2FyZXQ6ICAgICAgICAgICAgICAgIHRydWU7XG4kZW5hYmxlLXJvdW5kZWQ6ICAgICAgICAgICAgICB0cnVlO1xuJGVuYWJsZS1zaGFkb3dzOiAgICAgICAgICAgICAgdHJ1ZTtcbiRlbmFibGUtZ3JhZGllbnRzOiAgICAgICAgICAgIGZhbHNlO1xuJGVuYWJsZS10cmFuc2l0aW9uczogICAgICAgICAgdHJ1ZTtcbiRlbmFibGUtaG92ZXItbWVkaWEtcXVlcnk6ICAgIGZhbHNlO1xuJGVuYWJsZS1ncmlkLWNsYXNzZXM6ICAgICAgICAgdHJ1ZTtcbiRlbmFibGUtcHJpbnQtc3R5bGVzOiAgICAgICAgIHRydWU7XG5cblxuLy9cbi8vIFNwYWNpbmdcbi8vXG4vLyBDb250cm9sIHRoZSBkZWZhdWx0IHN0eWxpbmcgb2YgbW9zdCBCb290c3RyYXAgZWxlbWVudHMgYnkgbW9kaWZ5aW5nIHRoZXNlXG4vLyB2YXJpYWJsZXMuIE1vc3RseSBmb2N1c2VkIG9uIHNwYWNpbmcuXG4vLyBZb3UgY2FuIGFkZCBtb3JlIGVudHJpZXMgdG8gdGhlICRzcGFjZXJzIG1hcCwgc2hvdWxkIHlvdSBuZWVkIG1vcmUgdmFyaWF0aW9uLlxuXG4vLyBzdHlsZWxpbnQtZGlzYWJsZVxuJHNwYWNlcjogICAgMS4yNXJlbTtcbiRzcGFjZXJzOiAgICgpO1xuJHNwYWNlcnM6IG1hcC1tZXJnZSgoXG4gICAgMDogICAgMCxcbiAgICAxOiAgICAoJHNwYWNlciAqIC4yNSksXG4gICAgMjogICAgKCRzcGFjZXIgKiAuNSksXG4gICAgMzogICAgJHNwYWNlcixcbiAgICA0OiAgICAoJHNwYWNlciAqIDEuNSksXG4gICAgNTogICAgKCRzcGFjZXIgKiAzKVxuKSwgJHNwYWNlcnMpO1xuXG4vLyBUaGlzIHZhcmlhYmxlIGFmZmVjdHMgdGhlIGAuaC0qYCBhbmQgYC53LSpgIGNsYXNzZXMuXG4kc2l6ZXM6ICgpO1xuJHNpemVzOiBtYXAtbWVyZ2UoKFxuICAgIDI1OiAgICAgIDI1JSxcbiAgICA1MDogICAgICA1MCUsXG4gICAgNzU6ICAgICAgNzUlLFxuICAgIDEwMDogICAgIDEwMCUsXG4gICAgYXV0bzogICAgYXV0b1xuKSwgJHNpemVzKTtcblxuXG4vL1xuLy8gQm9keVxuLy9cbi8vIFNldHRpbmdzIGZvciB0aGUgYDxib2R5PmAgZWxlbWVudC5cblxuJGJvZHktYmc6ICAgICAgICNmNWY1ZjU7XG4kYm9keS1jb2xvcjogICAgJGdyYXktOTAwO1xuXG5cbi8vXG4vLyBMaW5rc1xuLy9cbi8vIFN0eWxlIGFuY2hvciBlbGVtZW50cy5cblxuJGxpbmstY29sb3I6ICAgICAgICAgICAgICAgdGhlbWUtY29sb3IoXCJwcmltYXJ5XCIpO1xuJGxpbmstZGVjb3JhdGlvbjogICAgICAgICAgbm9uZTtcbiRsaW5rLWhvdmVyLWNvbG9yOiAgICAgICAgIGRhcmtlbigkbGluay1jb2xvciwgMTUlKTtcbiRsaW5rLWhvdmVyLWRlY29yYXRpb246ICAgIG5vbmU7XG5cblxuLy9cbi8vIFBhcmFncmFwaHNcbi8vXG4vLyBTdHlsZSBwIGVsZW1lbnQuXG5cbiRwYXJhZ3JhcGgtbWFyZ2luLWJvdHRvbTogICAgMC42MjVyZW07XG5cblxuLy9cbi8vIEdyaWQgYnJlYWtwb2ludHNcbi8vXG4vLyBEZWZpbmUgdGhlIG1pbmltdW0gZGltZW5zaW9ucyBhdCB3aGljaCB5b3VyIGxheW91dCB3aWxsIGNoYW5nZSxcbi8vIGFkYXB0aW5nIHRvIGRpZmZlcmVudCBzY3JlZW4gc2l6ZXMsIGZvciB1c2UgaW4gbWVkaWEgcXVlcmllcy5cblxuJGdyaWQtYnJlYWtwb2ludHM6IChcbiAgICB4czogICAgMCxcbiAgICBzbTogICAgNTc2cHgsXG4gICAgbWQ6ICAgIDc2OHB4LFxuICAgIGxnOiAgICA5OTJweCxcbiAgICB4bDogICAgMTIwMHB4XG4pO1xuXG5AaW5jbHVkZSBfYXNzZXJ0LWFzY2VuZGluZygkZ3JpZC1icmVha3BvaW50cywgXCIkZ3JpZC1icmVha3BvaW50c1wiKTtcbkBpbmNsdWRlIF9hc3NlcnQtc3RhcnRzLWF0LXplcm8oJGdyaWQtYnJlYWtwb2ludHMpO1xuXG5cbi8vXG4vLyBHcmlkIGNvbnRhaW5lcnNcbi8vXG4vLyBEZWZpbmUgdGhlIG1heGltdW0gd2lkdGggb2YgYC5jb250YWluZXJgIGZvciBkaWZmZXJlbnQgc2NyZWVuIHNpemVzLlxuXG4kY29udGFpbmVyLW1heC13aWR0aHM6IChcbiAgICBzbTogICAgNTQwcHgsXG4gICAgbWQ6ICAgIDcyMHB4LFxuICAgIGxnOiAgICA5NjBweCxcbiAgICB4bDogICAgMTE0MHB4XG4pO1xuXG5AaW5jbHVkZSBfYXNzZXJ0LWFzY2VuZGluZygkY29udGFpbmVyLW1heC13aWR0aHMsIFwiJGNvbnRhaW5lci1tYXgtd2lkdGhzXCIpO1xuXG5cbi8vXG4vLyBHcmlkIGNvbHVtbnNcbi8vXG4vLyBTZXQgdGhlIG51bWJlciBvZiBjb2x1bW5zIGFuZCBzcGVjaWZ5IHRoZSB3aWR0aCBvZiB0aGUgZ3V0dGVycy5cblxuJGdyaWQtY29sdW1uczogICAgICAgICAgICAgIDEyO1xuJGdyaWQtZ3V0dGVyLXdpZHRoOiAgICAgICAgIDEuMjVyZW07XG5cblxuLy8gQ29tcG9uZW50c1xuLy9cbi8vIERlZmluZSBjb21tb24gcGFkZGluZyBhbmQgYm9yZGVyIHJhZGl1cyBzaXplcyBhbmQgbW9yZS5cblxuLy8gRGVmYXVsdCBib3JkZXJzXG4kYm9yZGVyLXdpZHRoOiAgICAgICAgICAgICAgMXB4O1xuJGJvcmRlci1jb2xvcjogICAgICAgICAgICAgICRncmF5LTQwMDtcblxuLy8gQm9yZGVyIHJhZGl1c1xuJGJvcmRlci1yYWRpdXM6ICAgICAgICAgICAgIDAuMTg3NXJlbTtcbiRib3JkZXItcmFkaXVzLWxnOiAgICAgICAgICAwLjI1cmVtO1xuJGJvcmRlci1yYWRpdXMtc206ICAgICAgICAgIDAuMTI1cmVtO1xuJGJvcmRlci1yYWRpdXMtcm91bmQ6ICAgICAgIDEwMHB4ICFkZWZhdWx0O1xuJGJvcmRlci1yYWRpdXMtY2lyY2xlOiAgICAgIDUwJSAhZGVmYXVsdDtcblxuXG4vLyBCYXNlIHNoYWRvd3NcbiRib3gtc2hhZG93LXNtOiAgICAgICAgICAgICAwIC4xMjVyZW0gLjI1cmVtIHJnYmEoJGJsYWNrLCAuMDc1KTtcbiRib3gtc2hhZG93OiAgICAgICAgICAgICAgICAwIC41cmVtIDFyZW0gcmdiYSgkYmxhY2ssIC4xNSk7XG4kYm94LXNoYWRvdy1sZzogICAgICAgICAgICAgMCAxcmVtIDNyZW0gcmdiYSgkYmxhY2ssIC4xNzUpO1xuXG4vLyBDdXN0b20gc2hhZG93c1xuJHNoYWRvdy1kZXB0aDE6ICAgICAgICAgICAgIDAgMXB4IDNweCByZ2JhKCRibGFjaywgMC4xMiksIDAgMXB4IDJweCByZ2JhKCRibGFjaywgMC4yNCkgIWRlZmF1bHQ7XG4kc2hhZG93LWRlcHRoMjogICAgICAgICAgICAgMCAzcHggNnB4IHJnYmEoJGJsYWNrLCAwLjE2KSwgMCAzcHggNnB4IHJnYmEoJGJsYWNrLCAwLjIzKSAhZGVmYXVsdDtcbiRzaGFkb3ctZGVwdGgzOiAgICAgICAgICAgICAwIDEwcHggMjBweCByZ2JhKCRibGFjaywgMC4xOSksIDAgNnB4IDZweCByZ2JhKCRibGFjaywgMC4yMykgIWRlZmF1bHQ7XG4kc2hhZG93LWRlcHRoNDogICAgICAgICAgICAgMCAxNHB4IDI4cHggcmdiYSgkYmxhY2ssIDAuMjUpLCAwIDEwcHggMTBweCByZ2JhKCRibGFjaywgMC4yMikgIWRlZmF1bHQ7XG4kc2hhZG93LWRlcHRoNTogICAgICAgICAgICAgMCAxOXB4IDM4cHggcmdiYSgkYmxhY2ssIDAuMyksIDAgMTVweCAxMnB4IHJnYmEoJGJsYWNrLCAwLjIyKSAhZGVmYXVsdDtcblxuLy8gQWN0aXZlIHN0YXRlIGNvbG9yc1xuJGNvbXBvbmVudC1hY3RpdmUtY29sb3I6ICAgICR3aGl0ZTtcbiRjb21wb25lbnQtYWN0aXZlLWJnOiAgICAgICB0aGVtZS1jb2xvcihcInByaW1hcnlcIik7XG5cbi8vIENhcmV0XG4kY2FyZXQtd2lkdGg6ICAgICAgICAgICAgICAgMC4zZW07XG4kY2FyZXQtZm9udC1zaXplOiAgICAgICAgICAgMC42ODc1cmVtICFkZWZhdWx0O1xuXG4vLyBUcmFuc2l0aW9uc1xuJHRyYW5zaXRpb24tYmFzZTogICAgICAgICAgIGFsbCAuMTVzIGVhc2UtaW4tb3V0O1xuJHRyYW5zaXRpb24tZmFkZTogICAgICAgICAgIG9wYWNpdHkgLjE1cyBsaW5lYXI7XG4kdHJhbnNpdGlvbi1jb2xsYXBzZTogICAgICAgaGVpZ2h0IC4xNXMgZWFzZTtcblxuXG4vL1xuLy8gRm9udHNcbi8vXG4vLyBGb250LCBsaW5lLWhlaWdodCwgYW5kIGNvbG9yIGZvciBib2R5IHRleHQsIGhlYWRpbmdzLCBhbmQgbW9yZS5cblxuLy8gRm9udCBmYW1pbGllc1xuJGZvbnQtZmFtaWx5LXNhbnMtc2VyaWY6ICAgICBcIlJvYm90b1wiLCAtYXBwbGUtc3lzdGVtLCBCbGlua01hY1N5c3RlbUZvbnQsIFwiU2Vnb2UgVUlcIiwgUm9ib3RvLCBcIkhlbHZldGljYSBOZXVlXCIsIEFyaWFsLCBzYW5zLXNlcmlmLCBcIkFwcGxlIENvbG9yIEVtb2ppXCIsIFwiU2Vnb2UgVUkgRW1vamlcIiwgXCJTZWdvZSBVSSBTeW1ib2xcIjtcbiRmb250LWZhbWlseS1tb25vc3BhY2U6ICAgICAgU0ZNb25vLVJlZ3VsYXIsIE1lbmxvLCBNb25hY28sIENvbnNvbGFzLCBcIkxpYmVyYXRpb24gTW9ub1wiLCBcIkNvdXJpZXIgTmV3XCIsIG1vbm9zcGFjZTtcbiRmb250LWZhbWlseS1iYXNlOiAgICAgICAgICAgJGZvbnQtZmFtaWx5LXNhbnMtc2VyaWY7XG5cbi8vIEZvbnQgc2l6ZXNcbiRmb250LXNpemUtYmFzZTogICAgICAgICAgICAgMC44MTI1cmVtOyAvLyBBc3N1bWVzIHRoZSBicm93c2VyIGRlZmF1bHQsIHR5cGljYWxseSBgMTZweGBcbiRmb250LXNpemUtbGc6ICAgICAgICAgICAgICAgKCRmb250LXNpemUtYmFzZSArIDAuMDYyNXJlbSk7XG4kZm9udC1zaXplLXNtOiAgICAgICAgICAgICAgICgkZm9udC1zaXplLWJhc2UgLSAwLjA2MjVyZW0pO1xuJGZvbnQtc2l6ZS14czogICAgICAgICAgICAgICAoJGZvbnQtc2l6ZS1iYXNlIC0gKDAuMDYyNXJlbSAqIDIpKSAhZGVmYXVsdDtcblxuLy8gRm9udCB3ZWlnaHRzXG4kZm9udC13ZWlnaHQtdGhpbjogICAgICAgICAgIDEwMCAhZGVmYXVsdDtcbiRmb250LXdlaWdodC1saWdodDogICAgICAgICAgMzAwO1xuJGZvbnQtd2VpZ2h0LW5vcm1hbDogICAgICAgICA0MDA7XG4kZm9udC13ZWlnaHQtc2VtaWJvbGQ6ICAgICAgIDUwMCAhZGVmYXVsdDtcbiRmb250LXdlaWdodC1ib2xkOiAgICAgICAgICAgNzAwO1xuJGZvbnQtd2VpZ2h0LWJsYWNrOiAgICAgICAgICA5MDAgIWRlZmF1bHQ7XG4kZm9udC13ZWlnaHQtYmFzZTogICAgICAgICAgICRmb250LXdlaWdodC1ub3JtYWw7XG5cbi8vIExpbmUgaGVpZ2h0c1xuJGxpbmUtaGVpZ2h0LWJhc2U6ICAgICAgICAgICAxLjUzODU7XG4kbGluZS1oZWlnaHQtbGc6ICAgICAgICAgICAgIDEuNDI4NjtcbiRsaW5lLWhlaWdodC1zbTogICAgICAgICAgICAgMS42NjY3O1xuJGxpbmUtaGVpZ2h0LXhzOiAgICAgICAgICAgICAxLjgyICFkZWZhdWx0O1xuXG4vLyBDb21wdXRlZCBsaW5lIGhlaWdodHMgKGN1c3RvbSB2YXJzKVxuJGxpbmUtaGVpZ2h0LWNvbXB1dGVkOiAgICAgICAkZm9udC1zaXplLWJhc2UgKiAkbGluZS1oZWlnaHQtYmFzZSAhZGVmYXVsdDtcbiRsaW5lLWhlaWdodC1jb21wdXRlZC1sZzogICAgJGZvbnQtc2l6ZS1sZyAqICRsaW5lLWhlaWdodC1sZyAhZGVmYXVsdDtcbiRsaW5lLWhlaWdodC1jb21wdXRlZC1zbTogICAgJGZvbnQtc2l6ZS1zbSAqICRsaW5lLWhlaWdodC1zbSAhZGVmYXVsdDtcblxuLy8gSGVhZGluZyBzaXplc1xuJGgxLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAoJGZvbnQtc2l6ZS1iYXNlICsgKDAuMTI1cmVtICogNikpO1xuJGgyLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAoJGZvbnQtc2l6ZS1iYXNlICsgKDAuMTI1cmVtICogNSkpO1xuJGgzLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAoJGZvbnQtc2l6ZS1iYXNlICsgKDAuMTI1cmVtICogNCkpO1xuJGg0LWZvbnQtc2l6ZTogICAgICAgICAgICAgICAoJGZvbnQtc2l6ZS1iYXNlICsgKDAuMTI1cmVtICogMykpO1xuJGg1LWZvbnQtc2l6ZTogICAgICAgICAgICAgICAoJGZvbnQtc2l6ZS1iYXNlICsgKDAuMTI1cmVtICogMikpO1xuJGg2LWZvbnQtc2l6ZTogICAgICAgICAgICAgICAoJGZvbnQtc2l6ZS1iYXNlICsgMC4xMjVyZW0pO1xuXG4vLyBIZWFkaW5nIG9wdGlvbnNcbiRoZWFkaW5ncy1tYXJnaW4tYm90dG9tOiAgICAgKCRzcGFjZXIgLyAyKTtcbiRoZWFkaW5ncy1mb250LWZhbWlseTogICAgICAgaW5oZXJpdDtcbiRoZWFkaW5ncy1mb250LXdlaWdodDogICAgICAgJGZvbnQtd2VpZ2h0LWJhc2U7XG4kaGVhZGluZ3MtbGluZS1oZWlnaHQ6ICAgICAgICRsaW5lLWhlaWdodC1iYXNlO1xuJGhlYWRpbmdzLWNvbG9yOiAgICAgICAgICAgICBpbmhlcml0O1xuJGhlYWRpbmdzLWxldHRlci1zcGFjaW5nOiAgICAtMC4wMTVlbSAhZGVmYXVsdDtcblxuLy8gRGlzcGxheSBhbmQgbGVhZCBmb250IHN0eWxlc1xuJGRpc3BsYXkxLXNpemU6ICAgICAgICAgICAgICA2cmVtO1xuJGRpc3BsYXkyLXNpemU6ICAgICAgICAgICAgICA1LjVyZW07XG4kZGlzcGxheTMtc2l6ZTogICAgICAgICAgICAgIDQuNXJlbTtcbiRkaXNwbGF5NC1zaXplOiAgICAgICAgICAgICAgMy41cmVtO1xuXG4kZGlzcGxheTEtd2VpZ2h0OiAgICAgICAgICAgIDMwMDtcbiRkaXNwbGF5Mi13ZWlnaHQ6ICAgICAgICAgICAgMzAwO1xuJGRpc3BsYXkzLXdlaWdodDogICAgICAgICAgICAzMDA7XG4kZGlzcGxheTQtd2VpZ2h0OiAgICAgICAgICAgIDMwMDtcbiRkaXNwbGF5LWxpbmUtaGVpZ2h0OiAgICAgICAgJGhlYWRpbmdzLWxpbmUtaGVpZ2h0O1xuXG4kbGVhZC1mb250LXNpemU6ICAgICAgICAgICAgICgkZm9udC1zaXplLWJhc2UgKiAxLjI1KTtcbiRsZWFkLWZvbnQtd2VpZ2h0OiAgICAgICAgICAgMzAwO1xuXG4vLyBNaXNjXG4kc21hbGwtZm9udC1zaXplOiAgICAgICAgICAgIDgwJTtcblxuJHRleHQtbXV0ZWQ6ICAgICAgICAgICAgICAgICAkZ3JheS02MDA7XG5cbiRibG9ja3F1b3RlLXNtYWxsLWNvbG9yOiAgICAgJGdyYXktNjAwO1xuJGJsb2NrcXVvdGUtZm9udC1zaXplOiAgICAgICAkaDYtZm9udC1zaXplO1xuJGJsb2NrcXVvdGUtYm9yZGVyLXdpZHRoOiAgICA1cHggIWRlZmF1bHQ7XG4kYmxvY2txdW90ZS1ib3JkZXItY29sb3I6ICAgICRncmF5LTMwMCAhZGVmYXVsdDtcblxuJGhyLWJvcmRlci1jb2xvcjogICAgICAgICAgICAkYm9yZGVyLWNvbG9yO1xuJGhyLWJvcmRlci13aWR0aDogICAgICAgICAgICAkYm9yZGVyLXdpZHRoO1xuXG4kbWFyay1wYWRkaW5nOiAgICAgICAgICAgICAgIDAuMjVyZW0gMC41cmVtO1xuXG4kZHQtZm9udC13ZWlnaHQ6ICAgICAgICAgICAgICRmb250LXdlaWdodC1zZW1pYm9sZDtcblxuJGtiZC1ib3gtc2hhZG93OiAgICAgICAgICAgICBpbnNldCAwIC0wLjFyZW0gMCByZ2JhKCRibGFjaywgLjI1KTtcbiRuZXN0ZWQta2JkLWZvbnQtd2VpZ2h0OiAgICAgJGZvbnQtd2VpZ2h0LWJvbGQ7XG5cbiRsaXN0LWlubGluZS1wYWRkaW5nOiAgICAgICAgMS4yNXJlbTtcblxuJG1hcmstYmc6ICAgICAgICAgICAgICAgICAgICAjZmNmOGUzO1xuXG4kaHItbWFyZ2luLXk6ICAgICAgICAgICAgICAgICRzcGFjZXI7XG5cblxuLy9cbi8vIFRhYmxlc1xuLy9cbi8vIEN1c3RvbWl6ZXMgdGhlIGAudGFibGVgIGNvbXBvbmVudCB3aXRoIGJhc2ljIHZhbHVlcywgZWFjaCB1c2VkIGFjcm9zcyBhbGwgdGFibGUgdmFyaWF0aW9ucy5cblxuJHRhYmxlLXNjcm9sbGFibGUtbWF4LWhlaWdodDogICAgIDIyLjVyZW0gIWRlZmF1bHQ7XG5cbiR0YWJsZS1jZWxsLXBhZGRpbmcteGw6ICAgICAgICAgICAxLjI1cmVtICRjYXJkLXNwYWNlci14ICFkZWZhdWx0O1xuJHRhYmxlLWNlbGwtcGFkZGluZy1sZzogICAgICAgICAgIDFyZW0gJGNhcmQtc3BhY2VyLXggIWRlZmF1bHQ7XG4kdGFibGUtY2VsbC1wYWRkaW5nOiAgICAgICAgICAgICAgMC43NXJlbSAkY2FyZC1zcGFjZXIteDtcbiR0YWJsZS1jZWxsLXBhZGRpbmctc206ICAgICAgICAgICAwLjYyNXJlbSAkY2FyZC1zcGFjZXIteDtcbiR0YWJsZS1jZWxsLXBhZGRpbmcteHM6ICAgICAgICAgICAwLjVyZW0gJGNhcmQtc3BhY2VyLXggIWRlZmF1bHQ7XG5cbiR0YWJsZS1iZzogICAgICAgICAgICAgICAgICAgICAgICB0cmFuc3BhcmVudDtcbiR0YWJsZS1hY2NlbnQtYmc6ICAgICAgICAgICAgICAgICByZ2JhKCRibGFjaywgLjAyKTtcbiR0YWJsZS1ob3Zlci1iZzogICAgICAgICAgICAgICAgICByZ2JhKCRibGFjaywgLjAzKTtcbiR0YWJsZS1hY3RpdmUtYmc6ICAgICAgICAgICAgICAgICByZ2JhKCRibGFjaywgLjAxNSk7XG5cbiR0YWJsZS1ib3JkZXItd2lkdGg6ICAgICAgICAgICAgICAkYm9yZGVyLXdpZHRoO1xuJHRhYmxlLWJvcmRlci1jb2xvcjogICAgICAgICAgICAgICRncmF5LTQwMDtcblxuJHRhYmxlLWhlYWQtYmc6ICAgICAgICAgICAgICAgICAgICRncmF5LTIwMDtcbiR0YWJsZS1oZWFkLWNvbG9yOiAgICAgICAgICAgICAgICAkYm9keS1jb2xvcjtcbiR0YWJsZS1oZWFkLWJvcmRlci1jb2xvcjogICAgICAgICBkYXJrZW4oJHRhYmxlLWJvcmRlci1jb2xvciwgMTUlKSAhZGVmYXVsdDtcblxuJHRhYmxlLWRhcmstYmc6ICAgICAgICAgICAgICAgICAgICRncmF5LTkwMDtcbiR0YWJsZS1kYXJrLWFjY2VudC1iZzogICAgICAgICAgICByZ2JhKCR3aGl0ZSwgMC4wNSk7XG4kdGFibGUtZGFyay1ob3Zlci1iZzogICAgICAgICAgICAgcmdiYSgkd2hpdGUsIDAuMDc1KTtcbiR0YWJsZS1kYXJrLWJvcmRlci1jb2xvcjogICAgICAgICByZ2JhKCR3aGl0ZSwgMC4zNSk7XG4kdGFibGUtZGFyay1jb2xvcjogICAgICAgICAgICAgICAgJHdoaXRlO1xuJHRhYmxlLWRhcmstaGVhZC1ib3JkZXItY29sb3I6ICAgIHJnYmEoJHdoaXRlLCAwLjUpICFkZWZhdWx0O1xuXG4kdGFibGUtc3RyaXBlZC1vcmRlcjogICAgICAgICAgICAgb2RkO1xuXG4kdGFibGUtY2FwdGlvbi1jb2xvcjogICAgICAgICAgICAgJHRleHQtbXV0ZWQ7XG5cblxuLy9cbi8vIEJ1dHRvbnMgKyBGb3Jtc1xuLy9cbi8vIFNoYXJlZCB2YXJpYWJsZXMgdGhhdCBhcmUgcmVhc3NpZ25lZCB0byBgJGlucHV0LWAgYW5kIGAkYnRuLWAgc3BlY2lmaWMgdmFyaWFibGVzLlxuXG4kaW5wdXQtYnRuLXBhZGRpbmcteTogICAgICAgICAgIDAuNDM3NXJlbTtcbiRpbnB1dC1idG4tcGFkZGluZy14OiAgICAgICAgICAgMC44NzVyZW07XG4kaW5wdXQtYnRuLWxpbmUtaGVpZ2h0OiAgICAgICAgICRsaW5lLWhlaWdodC1iYXNlO1xuXG4kaW5wdXQtYnRuLWZvY3VzLXdpZHRoOiAgICAgICAgIDA7XG4kaW5wdXQtYnRuLWZvY3VzLWNvbG9yOiAgICAgICAgIHRyYW5zcGFyZW50O1xuJGlucHV0LWJ0bi1mb2N1cy1ib3gtc2hhZG93OiAgICAwIDAgMCAkaW5wdXQtYnRuLWZvY3VzLXdpZHRoICRpbnB1dC1idG4tZm9jdXMtY29sb3I7XG5cbiRpbnB1dC1idG4tcGFkZGluZy15LXNtOiAgICAgICAgMC4zMTI1cmVtO1xuJGlucHV0LWJ0bi1wYWRkaW5nLXgtc206ICAgICAgICAwLjc1cmVtO1xuJGlucHV0LWJ0bi1saW5lLWhlaWdodC1zbTogICAgICAkbGluZS1oZWlnaHQtc207XG5cbiRpbnB1dC1idG4tcGFkZGluZy15LWxnOiAgICAgICAgMC41NjI1cmVtO1xuJGlucHV0LWJ0bi1wYWRkaW5nLXgtbGc6ICAgICAgICAxcmVtO1xuJGlucHV0LWJ0bi1saW5lLWhlaWdodC1sZzogICAgICAkbGluZS1oZWlnaHQtbGc7XG5cbiRpbnB1dC1idG4tYm9yZGVyLXdpZHRoOiAgICAgICAgJGJvcmRlci13aWR0aDtcblxuXG4vL1xuLy8gQnV0dG9uc1xuLy9cbi8vIEZvciBlYWNoIG9mIEJvb3RzdHJhcCdzIGJ1dHRvbnMsIGRlZmluZSB0ZXh0LCBiYWNrZ3JvdW5kLCBhbmQgYm9yZGVyIGNvbG9yLlxuLy8gSW5jbHVkZXMgY3VzdG9tIHZhcmlhYmxlcyBmb3Igb3B0aW9uYWwgc3R5bGVzXG5cbiRidG4tcGFkZGluZy15OiAgICAgICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1wYWRkaW5nLXk7XG4kYnRuLXBhZGRpbmcteDogICAgICAgICAgICAgICAgICAgICRpbnB1dC1idG4tcGFkZGluZy14O1xuJGJ0bi1saW5lLWhlaWdodDogICAgICAgICAgICAgICAgICAkaW5wdXQtYnRuLWxpbmUtaGVpZ2h0O1xuXG4kYnRuLXBhZGRpbmcteS1zbTogICAgICAgICAgICAgICAgICRpbnB1dC1idG4tcGFkZGluZy15LXNtO1xuJGJ0bi1wYWRkaW5nLXgtc206ICAgICAgICAgICAgICAgICAkaW5wdXQtYnRuLXBhZGRpbmcteC1zbTtcbiRidG4tbGluZS1oZWlnaHQtc206ICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1saW5lLWhlaWdodC1zbTtcblxuJGJ0bi1wYWRkaW5nLXktbGc6ICAgICAgICAgICAgICAgICAkaW5wdXQtYnRuLXBhZGRpbmcteS1sZztcbiRidG4tcGFkZGluZy14LWxnOiAgICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1wYWRkaW5nLXgtbGc7XG4kYnRuLWxpbmUtaGVpZ2h0LWxnOiAgICAgICAgICAgICAgICRpbnB1dC1idG4tbGluZS1oZWlnaHQtbGc7XG5cbiRidG4tYm9yZGVyLXdpZHRoOiAgICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1ib3JkZXItd2lkdGg7XG5cbiRidG4tZm9udC13ZWlnaHQ6ICAgICAgICAgICAgICAgICAgJGZvbnQtd2VpZ2h0LW5vcm1hbDtcbiRidG4tYm94LXNoYWRvdzogICAgICAgICAgICAgICAgICAgaW5zZXQgMCAxcHggMCByZ2JhKCR3aGl0ZSwgLjE1KSwgMCAxcHggMXB4IHJnYmEoJGJsYWNrLCAuMDc1KTtcbiRidG4tZm9jdXMtd2lkdGg6ICAgICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1mb2N1cy13aWR0aDtcbiRidG4tZm9jdXMtYm94LXNoYWRvdzogICAgICAgICAgICAgJGlucHV0LWJ0bi1mb2N1cy1ib3gtc2hhZG93O1xuJGJ0bi1kaXNhYmxlZC1vcGFjaXR5OiAgICAgICAgICAgICAuNjU7XG4kYnRuLWFjdGl2ZS1ib3gtc2hhZG93OiAgICAgICAgICAgIGluc2V0IDAgMCAwIHRyYW5zcGFyZW50O1xuXG4kYnRuLWxpbmstZGlzYWJsZWQtY29sb3I6ICAgICAgICAgICRncmF5LTYwMDtcblxuJGJ0bi1ibG9jay1zcGFjaW5nLXk6ICAgICAgICAgICAgICAwLjVyZW07XG5cbiRidG4tYm9yZGVyLXJhZGl1czogICAgICAgICAgICAgICAgJGJvcmRlci1yYWRpdXM7XG4kYnRuLWJvcmRlci1yYWRpdXMtbGc6ICAgICAgICAgICAgICRib3JkZXItcmFkaXVzLWxnO1xuJGJ0bi1ib3JkZXItcmFkaXVzLXNtOiAgICAgICAgICAgICAkYm9yZGVyLXJhZGl1cy1zbTtcblxuJGJ0bi10cmFuc2l0aW9uOiAgICAgICAgICAgICAgICAgICBjb2xvciAuMTVzIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIC4xNXMgZWFzZS1pbi1vdXQsIGJvcmRlci1jb2xvciAuMTVzIGVhc2UtaW4tb3V0LCBib3gtc2hhZG93IC4xNXMgZWFzZS1pbi1vdXQ7XG5cbiRidG4tZmxvYXQtcGFkZGluZzogICAgICAgICAgICAgICAgMXJlbSAhZGVmYXVsdDtcblxuJGJ0bi1saWdodC1jb2xvcjogICAgICAgICAgICAgICAgICAkYm9keS1jb2xvciAhZGVmYXVsdDtcbiRidG4tbGlnaHQtYmc6ICAgICAgICAgICAgICAgICAgICAgJGdyYXktMTAwICFkZWZhdWx0O1xuJGJ0bi1saWdodC1ib3JkZXItY29sb3I6ICAgICAgICAgICAkZ3JheS00MDAgIWRlZmF1bHQ7XG5cbiRidG4tbGlnaHQtaG92ZXItY29sb3I6ICAgICAgICAgICAgJGJ0bi1saWdodC1jb2xvciAhZGVmYXVsdDtcbiRidG4tbGlnaHQtaG92ZXItYmc6ICAgICAgICAgICAgICAgJGdyYXktMjAwICFkZWZhdWx0O1xuJGJ0bi1saWdodC1ob3Zlci1ib3JkZXItY29sb3I6ICAgICAkYnRuLWxpZ2h0LWJvcmRlci1jb2xvciAhZGVmYXVsdDtcblxuJGJ0bi1saWdodC1hY3RpdmUtY29sb3I6ICAgICAgICAgICAkYnRuLWxpZ2h0LWhvdmVyLWNvbG9yICFkZWZhdWx0O1xuJGJ0bi1saWdodC1hY3RpdmUtYmc6ICAgICAgICAgICAgICAkYnRuLWxpZ2h0LWhvdmVyLWJnICFkZWZhdWx0O1xuJGJ0bi1saWdodC1hY3RpdmUtYm9yZGVyLWNvbG9yOiAgICAkYnRuLWxpZ2h0LWhvdmVyLWJvcmRlci1jb2xvciAhZGVmYXVsdDtcblxuJGJ0bi1kYXJrLWhvdmVyLWJveC1zaGFkb3c6ICAgICAgICAwIDAgMCA2Mi41cmVtIHJnYmEoJGJsYWNrLCAwLjA3NSkgaW5zZXQgIWRlZmF1bHQ7XG4kYnRuLWRhcmstYWN0aXZlLWJveC1zaGFkb3c6ICAgICAgIDAgMCAwIDYyLjVyZW0gcmdiYSgkYmxhY2ssIDAuMTI1KSBpbnNldCAhZGVmYXVsdDtcblxuXG4vL1xuLy8gRm9ybXNcbi8vXG4vLyBCYXNpYyBmb3JtIGNvbXBvbmVudHMuIEluY2x1ZGVzIGN1c3RvbSB2YXJpYWJsZXMgZm9yIG9wdGlvbmFsIHN0eWxlc1xuXG4kbGFiZWwtbWFyZ2luLWJvdHRvbTogICAgICAgICAgICAgICAgIDAuNXJlbTtcblxuJGlucHV0LXBhZGRpbmcteTogICAgICAgICAgICAgICAgICAgICAkaW5wdXQtYnRuLXBhZGRpbmcteTtcbiRpbnB1dC1wYWRkaW5nLXg6ICAgICAgICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1wYWRkaW5nLXg7XG4kaW5wdXQtbGluZS1oZWlnaHQ6ICAgICAgICAgICAgICAgICAgICRpbnB1dC1idG4tbGluZS1oZWlnaHQ7XG5cbiRpbnB1dC1wYWRkaW5nLXktc206ICAgICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1wYWRkaW5nLXktc207XG4kaW5wdXQtcGFkZGluZy14LXNtOiAgICAgICAgICAgICAgICAgICRpbnB1dC1idG4tcGFkZGluZy14LXNtO1xuJGlucHV0LWxpbmUtaGVpZ2h0LXNtOiAgICAgICAgICAgICAgICAkaW5wdXQtYnRuLWxpbmUtaGVpZ2h0LXNtO1xuXG4kaW5wdXQtcGFkZGluZy15LWxnOiAgICAgICAgICAgICAgICAgICRpbnB1dC1idG4tcGFkZGluZy15LWxnO1xuJGlucHV0LXBhZGRpbmcteC1sZzogICAgICAgICAgICAgICAgICAkaW5wdXQtYnRuLXBhZGRpbmcteC1sZztcbiRpbnB1dC1saW5lLWhlaWdodC1sZzogICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1saW5lLWhlaWdodC1sZztcblxuJGlucHV0LWJnOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAkd2hpdGU7XG4kaW5wdXQtZGlzYWJsZWQtYmc6ICAgICAgICAgICAgICAgICAgICRncmF5LTEwMDtcbiRpbnB1dC1kaXNhYmxlZC1jb2xvcjogICAgICAgICAgICAgICAgJGdyYXktNjAwICFkZWZhdWx0O1xuXG4kaW5wdXQtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgICRib2R5LWNvbG9yO1xuJGlucHV0LWJvcmRlci1jb2xvcjogICAgICAgICAgICAgICAgICAkZ3JheS00MDA7XG4kaW5wdXQtYm9yZGVyLXdpZHRoOiAgICAgICAgICAgICAgICAgICRpbnB1dC1idG4tYm9yZGVyLXdpZHRoO1xuJGlucHV0LWJveC1zaGFkb3c6ICAgICAgICAgICAgICAgICAgICAwIDAgMCAwIHRyYW5zcGFyZW50O1xuXG4kaW5wdXQtbGlnaHQtYm9yZGVyLWNvbG9yOiAgICAgICAgICAgIHJnYmEoJHdoaXRlLCAwLjUpICFkZWZhdWx0OyAvLyBOT1QgSU5DTFVERUQgSU4gREVGQVVMVCBUSEVNRSEhIVxuJGlucHV0LWxpZ2h0LWJvcmRlci1hY3RpdmUtY29sb3I6ICAgICAkd2hpdGUgIWRlZmF1bHQ7IC8vIE5PVCBJTkNMVURFRCBJTiBERUZBVUxUIFRIRU1FISEhXG5cbiRpbnB1dC1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgICAgICAgJGJvcmRlci1yYWRpdXM7XG4kaW5wdXQtYm9yZGVyLXJhZGl1cy1sZzogICAgICAgICAgICAgICRib3JkZXItcmFkaXVzLWxnO1xuJGlucHV0LWJvcmRlci1yYWRpdXMtc206ICAgICAgICAgICAgICAkYm9yZGVyLXJhZGl1cy1zbTtcblxuJGlucHV0LWZvY3VzLWJnOiAgICAgICAgICAgICAgICAgICAgICAkaW5wdXQtYmc7XG4kaW5wdXQtZm9jdXMtYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICRncmF5LTUwMDtcbiRpbnB1dC1mb2N1cy1jb2xvcjogICAgICAgICAgICAgICAgICAgJGlucHV0LWNvbG9yO1xuJGlucHV0LWZvY3VzLXdpZHRoOiAgICAgICAgICAgICAgICAgICAkaW5wdXQtYnRuLWZvY3VzLXdpZHRoO1xuJGlucHV0LWZvY3VzLWJveC1zaGFkb3c6ICAgICAgICAgICAgICAkaW5wdXQtYnRuLWZvY3VzLWJveC1zaGFkb3c7XG5cbiRpbnB1dC1wbGFjZWhvbGRlci1jb2xvcjogICAgICAgICAgICAgJGdyYXktNjAwO1xuJGlucHV0LXBsYWludGV4dC1jb2xvcjogICAgICAgICAgICAgICAkYm9keS1jb2xvcjtcbiRpbnB1dC1wbGFjZWhvbGRlci1saWdodC1jb2xvcjogICAgICAgJHdoaXRlICFkZWZhdWx0O1xuXG4kaW5wdXQtaGVpZ2h0LWJvcmRlcjogICAgICAgICAgICAgICAgICRpbnB1dC1ib3JkZXItd2lkdGggKiAyO1xuXG4kaW5wdXQtaGVpZ2h0LWlubmVyOiAgICAgICAgICAgICAgICAgICgkZm9udC1zaXplLWJhc2UgKiAkaW5wdXQtYnRuLWxpbmUtaGVpZ2h0KSArICgkaW5wdXQtYnRuLXBhZGRpbmcteSAqIDIpO1xuJGlucHV0LWhlaWdodDogICAgICAgICAgICAgICAgICAgICAgICAkaW5wdXQtaGVpZ2h0LWlubmVyICsgcmVtLWNhbGMoJGlucHV0LWhlaWdodC1ib3JkZXIpO1xuXG4kaW5wdXQtaGVpZ2h0LWlubmVyLXNtOiAgICAgICAgICAgICAgICgkZm9udC1zaXplLXNtICogJGlucHV0LWJ0bi1saW5lLWhlaWdodC1zbSkgKyAoJGlucHV0LWJ0bi1wYWRkaW5nLXktc20gKiAyKTtcbiRpbnB1dC1oZWlnaHQtc206ICAgICAgICAgICAgICAgICAgICAgJGlucHV0LWhlaWdodC1pbm5lci1zbSArIHJlbS1jYWxjKCRpbnB1dC1oZWlnaHQtYm9yZGVyKTtcblxuJGlucHV0LWhlaWdodC1pbm5lci1sZzogICAgICAgICAgICAgICAoJGZvbnQtc2l6ZS1sZyAqICRpbnB1dC1idG4tbGluZS1oZWlnaHQtbGcpICsgKCRpbnB1dC1idG4tcGFkZGluZy15LWxnICogMik7XG4kaW5wdXQtaGVpZ2h0LWxnOiAgICAgICAgICAgICAgICAgICAgICRpbnB1dC1oZWlnaHQtaW5uZXItbGcgKyByZW0tY2FsYygkaW5wdXQtaGVpZ2h0LWJvcmRlcik7XG5cbiRpbnB1dC10cmFuc2l0aW9uOiAgICAgICAgICAgICAgICAgICAgYm9yZGVyLWNvbG9yIC4xNXMgZWFzZS1pbi1vdXQsIGJveC1zaGFkb3cgLjE1cyBlYXNlLWluLW91dDtcblxuJGZvcm0tdGV4dC1tYXJnaW4tdG9wOiAgICAgICAgICAgICAgICAwLjVyZW07XG5cblxuLy8gSW5wdXRzIHdpdGggY3VzdG9tIGRhcmsgYmdcbiRpbnB1dC1kYXJrLWRpc2FibGVkLWJnOiAgICAgICAgICAgICAgbGlnaHRlbigkaW5wdXQtY29sb3IsIDM1JSk7XG4kaW5wdXQtZGFyay1kaXNhYmxlZC1jb2xvcjogICAgICAgICAgIHJnYmEoJHdoaXRlLCAwLjUpO1xuJGlucHV0LWRhcmstZGlzYWJsZWQtYm9yZGVyLWNvbG9yOiAgICAkaW5wdXQtZGFyay1kaXNhYmxlZC1iZztcblxuXG4vLyBGb3JtIGNoZWNrc1xuJGZvcm0tY2hlY2staW5wdXQtZ3V0dGVyOiAgICAgICAgICAgICAxLjI1cmVtICsgbWFwLWdldCgkc3BhY2VycywgMik7IC8vICRjaGVja2JveC1zaXplICsgc3BhY2luZ1xuJGZvcm0tY2hlY2staW5wdXQtbWFyZ2luLXk6ICAgICAgICAgICAwLjNyZW07XG4kZm9ybS1jaGVjay1pbnB1dC1tYXJnaW4teDogICAgICAgICAgIDAuMjVyZW07XG5cbiRmb3JtLWNoZWNrLWlubGluZS1tYXJnaW4teDogICAgICAgICAgMS4yNXJlbTtcbiRmb3JtLWNoZWNrLWlubGluZS1pbnB1dC1tYXJnaW4teDogICAgMC42MjVyZW07XG5cbiRmb3JtLWNoZWNrLW1hcmdpbi15OiAgICAgICAgICAgICAgICAgMC41cmVtICFkZWZhdWx0O1xuJGZvcm0tY2hlY2stZGlzYWJsZWQtY29sb3I6ICAgICAgICAgICAkZ3JheS02MDAgIWRlZmF1bHQ7XG5cbi8vIElucHV0IGdyb3VwXG4kZm9ybS1ncm91cC1tYXJnaW4tYm90dG9tOiAgICAgICAgICAgICRzcGFjZXI7XG5cbiRpbnB1dC1ncm91cC1hZGRvbi1jb2xvcjogICAgICAgICAgICAgJGlucHV0LWNvbG9yO1xuJGlucHV0LWdyb3VwLWFkZG9uLWJnOiAgICAgICAgICAgICAgICAkZ3JheS0xMDA7XG4kaW5wdXQtZ3JvdXAtYWRkb24tYm9yZGVyLWNvbG9yOiAgICAgICRpbnB1dC1ib3JkZXItY29sb3I7XG5cbi8vIEZvcm0gdmFsaWRhdGlvblxuJGZvcm0tZmVlZGJhY2stbWFyZ2luLXRvcDogICAgICAgICAgICAkZm9ybS10ZXh0LW1hcmdpbi10b3A7XG4kZm9ybS1mZWVkYmFjay1mb250LXNpemU6ICAgICAgICAgICAgICRzbWFsbC1mb250LXNpemU7XG4kZm9ybS1mZWVkYmFjay12YWxpZC1jb2xvcjogICAgICAgICAgIHRoZW1lLWNvbG9yKFwic3VjY2Vzc1wiKTtcbiRmb3JtLWZlZWRiYWNrLWludmFsaWQtY29sb3I6ICAgICAgICAgdGhlbWUtY29sb3IoXCJkYW5nZXJcIik7XG5cblxuLy9cbi8vIEN1c3RvbSBmb3Jtc1xuLy9cbi8vIEN1c3RvbSBDU1Mgc3R5bGVzIGZvciBzZWxlY3QsIGNoZWNrYm94ZXMsIHJhZGlvcyBhbmQgZmlsZSBpbnB1dFxuXG4vLyBDaGVja2JveGVzIGFuZCByYWRpb3NcbiRjdXN0b20tY29udHJvbC1ndXR0ZXI6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMS4yNXJlbSArIG1hcC1nZXQoJHNwYWNlcnMsIDIpO1xuJGN1c3RvbS1jb250cm9sLXNwYWNlci14OiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAxcmVtO1xuXG4vLyBDaGVja2JveGVzIGFuZCByYWRpb3NcbiRjdXN0b20tY29udHJvbC1pbmRpY2F0b3Itc2l6ZTogICAgICAgICAgICAgICAgICAgICAgICAgMS4yNXJlbTtcbiRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItYmc6ICAgICAgICAgICAgICAgICAgICAgICAgICAgJGdyYXktMzAwO1xuJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1iZy1zaXplOiAgICAgICAgICAgICAgICAgICAgICA1MCUgNTAlO1xuJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1ib3gtc2hhZG93OiAgICAgICAgICAgICAgICAgICAwIDAgMCAwIHRyYW5zcGFyZW50O1xuXG4kY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWRpc2FibGVkLWJnOiAgICAgICAgICAgICAgICAgICRncmF5LTIwMDtcbiRjdXN0b20tY29udHJvbC1sYWJlbC1kaXNhYmxlZC1jb2xvcjogICAgICAgICAgICAgICAgICAgJGdyYXktNjAwO1xuXG4kY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWNoZWNrZWQtY29sb3I6ICAgICAgICAgICAgICAgICRjb21wb25lbnQtYWN0aXZlLWNvbG9yO1xuJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1jaGVja2VkLWJnOiAgICAgICAgICAgICAgICAgICAkY29sb3Itc2xhdGUtNzAwO1xuJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1jaGVja2VkLWRpc2FibGVkLWJnOiAgICAgICAgICByZ2JhKCRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItY2hlY2tlZC1iZywgMC41KTtcbiRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItY2hlY2tlZC1ib3gtc2hhZG93OiAgICAgICAgICAgbm9uZTtcblxuJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1mb2N1cy1ib3gtc2hhZG93OiAgICAgICAgICAgICBub25lO1xuXG4kY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWFjdGl2ZS1jb2xvcjogICAgICAgICAgICAgICAgICRjb2xvci1zbGF0ZS03MDA7XG4kY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWFjdGl2ZS1iZzogICAgICAgICAgICAgICAgICAgIGxpZ2h0ZW4oJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1hY3RpdmUtY29sb3IsIDM1JSk7XG4kY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWFjdGl2ZS1ib3gtc2hhZG93OiAgICAgICAgICAgIG5vbmU7XG5cbiRjdXN0b20tY2hlY2tib3gtaW5kaWNhdG9yLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAgICAgJGJvcmRlci1yYWRpdXMtc207XG4kY3VzdG9tLWNoZWNrYm94LWluZGljYXRvci1pY29uLWNoZWNrZWQ6ICAgICAgICAgICAgICAgIHN0ci1yZXBsYWNlKHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbDtjaGFyc2V0PXV0ZjgsJTNDc3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgdmlld0JveD0nMCAwIDggOCclM0UlM0NwYXRoIGZpbGw9JyN7JGN1c3RvbS1jb250cm9sLWluZGljYXRvci1jaGVja2VkLWNvbG9yfScgZD0nTTYuNTY0Ljc1bC0zLjU5IDMuNjEyLTEuNTM4LTEuNTVMMCA0LjI2IDIuOTc0IDcuMjUgOCAyLjE5M3onLyUzRSUzQy9zdmclM0VcIiksIFwiI1wiLCBcIiUyM1wiKTtcblxuJGN1c3RvbS1jaGVja2JveC1pbmRpY2F0b3ItaW5kZXRlcm1pbmF0ZS1iZzogICAgICAgICAgICAkY29sb3Itc2xhdGUtNzAwO1xuJGN1c3RvbS1jaGVja2JveC1pbmRpY2F0b3ItaW5kZXRlcm1pbmF0ZS1jb2xvcjogICAgICAgICAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWNoZWNrZWQtY29sb3I7XG4kY3VzdG9tLWNoZWNrYm94LWluZGljYXRvci1pY29uLWluZGV0ZXJtaW5hdGU6ICAgICAgICAgIHN0ci1yZXBsYWNlKHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbDtjaGFyc2V0PXV0ZjgsJTNDc3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgdmlld0JveD0nMCAwIDQgNCclM0UlM0NwYXRoIHN0cm9rZT0nI3skY3VzdG9tLWNoZWNrYm94LWluZGljYXRvci1pbmRldGVybWluYXRlLWNvbG9yfScgZD0nTTAgMmg0Jy8lM0UlM0Mvc3ZnJTNFXCIpLCBcIiNcIiwgXCIlMjNcIik7XG4kY3VzdG9tLWNoZWNrYm94LWluZGljYXRvci1pbmRldGVybWluYXRlLWJveC1zaGFkb3c6ICAgIG5vbmU7XG5cbiRjdXN0b20tcmFkaW8taW5kaWNhdG9yLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAgICAgICAgNTAlO1xuJGN1c3RvbS1yYWRpby1pbmRpY2F0b3ItaWNvbi1jaGVja2VkOiAgICAgICAgICAgICAgICAgICBzdHItcmVwbGFjZSh1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWw7Y2hhcnNldD11dGY4LCUzQ3N2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9Jy00IC00IDggOCclM0UlM0NjaXJjbGUgcj0nMycgZmlsbD0nI3skY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWNoZWNrZWQtY29sb3J9Jy8lM0UlM0Mvc3ZnJTNFXCIpLCBcIiNcIiwgXCIlMjNcIik7XG5cbi8vIFNlbGVjdFxuJGN1c3RvbS1zZWxlY3QtcGFkZGluZy15OiAgICAgICAgICAgICAkaW5wdXQtcGFkZGluZy15O1xuJGN1c3RvbS1zZWxlY3QtcGFkZGluZy14OiAgICAgICAgICAgICAkaW5wdXQtcGFkZGluZy14O1xuJGN1c3RvbS1zZWxlY3QtaGVpZ2h0OiAgICAgICAgICAgICAgICAkaW5wdXQtaGVpZ2h0O1xuJGN1c3RvbS1zZWxlY3QtaW5kaWNhdG9yLXBhZGRpbmc6ICAgICAkaW5wdXQtcGFkZGluZy15OyAvLyBFeHRyYSBwYWRkaW5nIHRvIGFjY291bnQgZm9yIHRoZSBwcmVzZW5jZSBvZiB0aGUgYmFja2dyb3VuZC1pbWFnZSBiYXNlZCBpbmRpY2F0b3JcbiRjdXN0b20tc2VsZWN0LWxpbmUtaGVpZ2h0OiAgICAgICAgICAgJGlucHV0LWJ0bi1saW5lLWhlaWdodDtcbiRjdXN0b20tc2VsZWN0LWNvbG9yOiAgICAgICAgICAgICAgICAgJGlucHV0LWNvbG9yO1xuJGN1c3RvbS1zZWxlY3QtZGlzYWJsZWQtY29sb3I6ICAgICAgICAkZ3JheS02MDA7XG4kY3VzdG9tLXNlbGVjdC1iZzogICAgICAgICAgICAgICAgICAgICRpbnB1dC1iZztcbiRjdXN0b20tc2VsZWN0LWRpc2FibGVkLWJnOiAgICAgICAgICAgJGdyYXktMjAwO1xuJGN1c3RvbS1zZWxlY3QtYmctc2l6ZTogICAgICAgICAgICAgICA4cHggMTBweDsgLy8gSW4gcGl4ZWxzIGJlY2F1c2UgaW1hZ2UgZGltZW5zaW9uc1xuJGN1c3RvbS1zZWxlY3QtaW5kaWNhdG9yLWNvbG9yOiAgICAgICAkZ3JheS04MDA7XG4kY3VzdG9tLXNlbGVjdC1pbmRpY2F0b3I6ICAgICAgICAgICAgIHN0ci1yZXBsYWNlKHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbDtjaGFyc2V0PXV0ZjgsJTNDc3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgdmlld0JveD0nMCAwIDQgNSclM0UlM0NwYXRoIGZpbGw9JyN7JGN1c3RvbS1zZWxlY3QtaW5kaWNhdG9yLWNvbG9yfScgZD0nTTIgMEwwIDJoNHptMCA1TDAgM2g0eicvJTNFJTNDL3N2ZyUzRVwiKSwgXCIjXCIsIFwiJTIzXCIpO1xuJGN1c3RvbS1zZWxlY3QtYm9yZGVyLXdpZHRoOiAgICAgICAgICAkaW5wdXQtYnRuLWJvcmRlci13aWR0aDtcbiRjdXN0b20tc2VsZWN0LWJvcmRlci1jb2xvcjogICAgICAgICAgJGlucHV0LWJvcmRlci1jb2xvcjtcbiRjdXN0b20tc2VsZWN0LWJvcmRlci1yYWRpdXM6ICAgICAgICAgJGlucHV0LWJvcmRlci1yYWRpdXM7XG5cbiRjdXN0b20tc2VsZWN0LWZvY3VzLWJvcmRlci1jb2xvcjogICAgJGlucHV0LWZvY3VzLWJvcmRlci1jb2xvcjtcbiRjdXN0b20tc2VsZWN0LWZvY3VzLWJveC1zaGFkb3c6ICAgICAgbm9uZTtcblxuJGN1c3RvbS1zZWxlY3QtZm9udC1zaXplLXNtOiAgICAgICAgICAkZm9udC1zaXplLXNtO1xuJGN1c3RvbS1zZWxlY3QtaGVpZ2h0LXNtOiAgICAgICAgICAgICAkaW5wdXQtaGVpZ2h0LXNtO1xuXG4kY3VzdG9tLXNlbGVjdC1mb250LXNpemUtbGc6ICAgICAgICAgICRmb250LXNpemUtbGc7XG4kY3VzdG9tLXNlbGVjdC1oZWlnaHQtbGc6ICAgICAgICAgICAgICRpbnB1dC1oZWlnaHQtbGc7XG5cbi8vIFJhbmdlIGlucHV0XG4kY3VzdG9tLXJhbmdlLXRyYWNrLXdpZHRoOiAgICAgICAgICAgICAgIDEwMCU7XG4kY3VzdG9tLXJhbmdlLXRyYWNrLWhlaWdodDogICAgICAgICAgICAgIDAuNXJlbTtcbiRjdXN0b20tcmFuZ2UtdHJhY2stY3Vyc29yOiAgICAgICAgICAgICAgcG9pbnRlcjtcbiRjdXN0b20tcmFuZ2UtdHJhY2stYmc6ICAgICAgICAgICAgICAgICAgJGdyYXktMzAwO1xuJGN1c3RvbS1yYW5nZS10cmFjay1ib3JkZXItcmFkaXVzOiAgICAgICAxcmVtO1xuJGN1c3RvbS1yYW5nZS10cmFjay1ib3gtc2hhZG93OiAgICAgICAgICBpbnNldCAwIC4yNXJlbSAuMjVyZW0gcmdiYSgkYmxhY2ssIC4xKTtcblxuJGN1c3RvbS1yYW5nZS10aHVtYi13aWR0aDogICAgICAgICAgICAgICAxcmVtO1xuJGN1c3RvbS1yYW5nZS10aHVtYi1oZWlnaHQ6ICAgICAgICAgICAgICAkY3VzdG9tLXJhbmdlLXRodW1iLXdpZHRoO1xuJGN1c3RvbS1yYW5nZS10aHVtYi1iZzogICAgICAgICAgICAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1iZztcbiRjdXN0b20tcmFuZ2UtdGh1bWItYm9yZGVyOiAgICAgICAgICAgICAgMDtcbiRjdXN0b20tcmFuZ2UtdGh1bWItYm9yZGVyLXJhZGl1czogICAgICAgMXJlbTtcbiRjdXN0b20tcmFuZ2UtdGh1bWItYm94LXNoYWRvdzogICAgICAgICAgMCAuMXJlbSAuMjVyZW0gcmdiYSgkYmxhY2ssIC4xKTtcbiRjdXN0b20tcmFuZ2UtdGh1bWItZm9jdXMtYm94LXNoYWRvdzogICAgMCAwIDAgMXB4ICRib2R5LWJnLCAkaW5wdXQtYnRuLWZvY3VzLWJveC1zaGFkb3c7XG4kY3VzdG9tLXJhbmdlLXRodW1iLWFjdGl2ZS1iZzogICAgICAgICAgIGxpZ2h0ZW4oJGNvbXBvbmVudC1hY3RpdmUtYmcsIDM1JSk7XG5cbi8vIEZpbGUgaW5wdXRcbiRjdXN0b20tZmlsZS1oZWlnaHQ6ICAgICAgICAgICAgICAgICRpbnB1dC1oZWlnaHQ7XG4kY3VzdG9tLWZpbGUtaGVpZ2h0LWlubmVyOiAgICAgICAgICAkaW5wdXQtaGVpZ2h0LWlubmVyO1xuJGN1c3RvbS1maWxlLWZvY3VzLWJvcmRlci1jb2xvcjogICAgJGlucHV0LWZvY3VzLWJvcmRlci1jb2xvcjtcbiRjdXN0b20tZmlsZS1mb2N1cy1ib3gtc2hhZG93OiAgICAgICRpbnB1dC1idG4tZm9jdXMtYm94LXNoYWRvdztcbiRjdXN0b20tZmlsZS1wYWRkaW5nLXk6ICAgICAgICAgICAgICRpbnB1dC1idG4tcGFkZGluZy15O1xuJGN1c3RvbS1maWxlLXBhZGRpbmcteDogICAgICAgICAgICAgJGlucHV0LWJ0bi1wYWRkaW5nLXg7XG4kY3VzdG9tLWZpbGUtbGluZS1oZWlnaHQ6ICAgICAgICAgICAkaW5wdXQtYnRuLWxpbmUtaGVpZ2h0O1xuJGN1c3RvbS1maWxlLWNvbG9yOiAgICAgICAgICAgICAgICAgJGlucHV0LWNvbG9yO1xuJGN1c3RvbS1maWxlLWJnOiAgICAgICAgICAgICAgICAgICAgJGlucHV0LWJnO1xuJGN1c3RvbS1maWxlLWJvcmRlci13aWR0aDogICAgICAgICAgJGlucHV0LWJ0bi1ib3JkZXItd2lkdGg7XG4kY3VzdG9tLWZpbGUtYm9yZGVyLWNvbG9yOiAgICAgICAgICAkaW5wdXQtYm9yZGVyLWNvbG9yO1xuJGN1c3RvbS1maWxlLWJvcmRlci1yYWRpdXM6ICAgICAgICAgJGlucHV0LWJvcmRlci1yYWRpdXM7XG4kY3VzdG9tLWZpbGUtYm94LXNoYWRvdzogICAgICAgICAgICAkaW5wdXQtYm94LXNoYWRvdztcbiRjdXN0b20tZmlsZS1idXR0b24tY29sb3I6ICAgICAgICAgICRjdXN0b20tZmlsZS1jb2xvcjtcbiRjdXN0b20tZmlsZS1idXR0b24tYmc6ICAgICAgICAgICAgICRpbnB1dC1ncm91cC1hZGRvbi1iZztcbiRjdXN0b20tZmlsZS10ZXh0OiAoXG4gICAgZW46IFwiQnJvd3NlXCJcbik7XG5cblxuLy9cbi8vIERyb3Bkb3duc1xuLy9cbi8vIERyb3Bkb3duIG1lbnUgY29udGFpbmVyIGFuZCBjb250ZW50cy5cblxuJGRyb3Bkb3duLXNjcm9sbGFibGUtbWF4LWhlaWdodDogICAgMzQwcHggIWRlZmF1bHQ7XG5cbiRkcm9wZG93bi1taW4td2lkdGg6ICAgICAgICAgICAgICAgIDExLjI1cmVtO1xuJGRyb3Bkb3duLXBhZGRpbmcteTogICAgICAgICAgICAgICAgMC41cmVtO1xuJGRyb3Bkb3duLXNwYWNlcjogICAgICAgICAgICAgICAgICAgMC4xMjVyZW07XG4kZHJvcGRvd24tYmc6ICAgICAgICAgICAgICAgICAgICAgICAkd2hpdGU7XG4kZHJvcGRvd24tYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICByZ2JhKCRibGFjaywgLjE1KTtcbiRkcm9wZG93bi1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgICRib3JkZXItcmFkaXVzO1xuJGRyb3Bkb3duLWJvcmRlci13aWR0aDogICAgICAgICAgICAgJGJvcmRlci13aWR0aDtcbiRkcm9wZG93bi1kaXZpZGVyLWJnOiAgICAgICAgICAgICAgICRncmF5LTQwMDtcbiRkcm9wZG93bi1ib3gtc2hhZG93OiAgICAgICAgICAgICAgIDAgMC4yNXJlbSAwLjVyZW0gcmdiYSgkYmxhY2ssIDAuMSk7XG5cbiRkcm9wZG93bi1saW5rLWNvbG9yOiAgICAgICAgICAgICAgICRib2R5LWNvbG9yO1xuJGRyb3Bkb3duLWxpbmstaG92ZXItY29sb3I6ICAgICAgICAgJGRyb3Bkb3duLWxpbmstY29sb3I7XG4kZHJvcGRvd24tbGluay1ob3Zlci1iZzogICAgICAgICAgICAkZ3JheS0yMDA7XG5cbiRkcm9wZG93bi1saW5rLWFjdGl2ZS1jb2xvcjogICAgICAgICRjb21wb25lbnQtYWN0aXZlLWNvbG9yO1xuJGRyb3Bkb3duLWxpbmstYWN0aXZlLWJnOiAgICAgICAgICAgJGNvbXBvbmVudC1hY3RpdmUtYmc7XG5cbiRkcm9wZG93bi1saW5rLWRpc2FibGVkLWNvbG9yOiAgICAgICRncmF5LTYwMDtcblxuJGRyb3Bkb3duLWl0ZW0tcGFkZGluZy15OiAgICAgICAgICAgMC41cmVtO1xuJGRyb3Bkb3duLWl0ZW0tcGFkZGluZy14OiAgICAgICAgICAgMXJlbTtcbiRkcm9wZG93bi1pdGVtLXNwYWNlci15OiAgICAgICAgICAgIDFweCAhZGVmYXVsdDtcblxuJGRyb3Bkb3duLWljb24tc3BhY2VyLXg6ICAgICAgICAgICAgJGRyb3Bkb3duLWl0ZW0tcGFkZGluZy14ICFkZWZhdWx0O1xuXG4kZHJvcGRvd24taGVhZGVyLWNvbG9yOiAgICAgICAgICAgICAkZ3JheS02MDA7XG4kZHJvcGRvd24taGVhZGVyLWJnOiAgICAgICAgICAgICAgICAjZjhmOGY4ICFkZWZhdWx0O1xuXG4kZHJvcGRvd24tZGFyay1ob3Zlci1iZzogICAgICAgICAgICByZ2JhKCRibGFjaywgMC4xKSAhZGVmYXVsdDtcbiRkcm9wZG93bi1kYXJrLWFjdGl2ZS1iZzogICAgICAgICAgIHJnYmEoJGJsYWNrLCAwLjIpICFkZWZhdWx0O1xuJGRyb3Bkb3duLWRhcmstZGlzYWJsZWQtY29sb3I6ICAgICAgcmdiYSgkd2hpdGUsIDAuNikgIWRlZmF1bHQ7XG4kZHJvcGRvd24tZGFyay1kaXZpZGVyLWJnOiAgICAgICAgICByZ2JhKCR3aGl0ZSwgMC40KSAhZGVmYXVsdDtcbiRkcm9wZG93bi1kYXJrLWhlYWRlci1jb2xvcjogICAgICAgIHJnYmEoJHdoaXRlLCAwLjYpICFkZWZhdWx0O1xuJGRyb3Bkb3duLWRhcmstaGVhZGVyLWJnOiAgICAgICAgICAgcmdiYSgkYmxhY2ssIDAuMSkgIWRlZmF1bHQ7XG5cblxuLy9cbi8vIFotaW5kZXggbWFzdGVyIGxpc3Rcbi8vXG4vLyBXYXJuaW5nOiBBdm9pZCBjdXN0b21pemluZyB0aGVzZSB2YWx1ZXMuIFRoZXkncmUgdXNlZCBmb3IgYSBiaXJkJ3MgZXllIHZpZXdcbi8vIG9mIGNvbXBvbmVudHMgZGVwZW5kZW50IG9uIHRoZSB6LWF4aXMgYW5kIGFyZSBkZXNpZ25lZCB0byBhbGwgd29yayB0b2dldGhlci5cblxuJHppbmRleC1kcm9wZG93bjogICAgICAgICAgMTAwMDtcbiR6aW5kZXgtc3RpY2t5OiAgICAgICAgICAgIDEwMjA7XG4kemluZGV4LWZpeGVkOiAgICAgICAgICAgICAxMDMwO1xuJHppbmRleC1tb2RhbC1iYWNrZHJvcDogICAgMTA0MDtcbiR6aW5kZXgtbW9kYWw6ICAgICAgICAgICAgIDEwNTA7XG4kemluZGV4LXBvcG92ZXI6ICAgICAgICAgICAxMDYwO1xuJHppbmRleC10b29sdGlwOiAgICAgICAgICAgMTA3MDtcblxuXG4vL1xuLy8gTmF2c1xuLy9cbi8vIEJhc2Ugc3R5bGVzIGZvciBuYXZzLiBJbmNsdWRlcyBjdXN0b20gdmFyaWFibGVzXG5cbiRuYXYtbGluay1wYWRkaW5nLXk6ICAgICAgICAgMC42MjVyZW07XG4kbmF2LWxpbmstcGFkZGluZy14OiAgICAgICAgIDEuMjVyZW07XG4kbmF2LWxpbmstZGlzYWJsZWQtY29sb3I6ICAgICRncmF5LTYwMDtcblxuJG5hdi1saW5rLWNvbG9yOiAgICAgICAgICAgICAkYm9keS1jb2xvciAhZGVmYXVsdDtcbiRuYXYtbGluay1ob3Zlci1jb2xvcjogICAgICAgJGJvZHktY29sb3IgIWRlZmF1bHQ7XG4kbmF2LWxpbmstYWN0aXZlLWNvbG9yOiAgICAgICRib2R5LWNvbG9yICFkZWZhdWx0O1xuXG4kbmF2LWRpdmlkZXItY29sb3I6ICAgICAgICAgICRncmF5LTIwMDtcbiRuYXYtZGl2aWRlci1tYXJnaW4teTogICAgICAgKCRzcGFjZXIgLyAyKTtcblxuXG4vL1xuLy8gVGFic1xuLy9cbi8vIFRhYnMgbmF2aWdhdGlvbi4gSW5jbHVkZXMgY3VzdG9tIHZhcmlhYmxlc1xuXG4kbmF2LXRhYnMtYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICAgICAgICRncmF5LTQwMDtcbiRuYXYtdGFicy1ib3JkZXItd2lkdGg6ICAgICAgICAgICAgICAgICAgJGJvcmRlci13aWR0aDtcbiRuYXYtdGFicy1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgICAgICAgJGJvcmRlci1yYWRpdXM7XG4kbmF2LXRhYnMtbGluay1ob3Zlci1ib3JkZXItY29sb3I6ICAgICAgIHRyYW5zcGFyZW50O1xuJG5hdi10YWJzLWxpbmstYWN0aXZlLWNvbG9yOiAgICAgICAgICAgICAkYm9keS1jb2xvcjtcbiRuYXYtdGFicy1saW5rLWFjdGl2ZS1iZzogICAgICAgICAgICAgICAgJGNhcmQtYmc7XG4kbmF2LXRhYnMtbGluay1hY3RpdmUtYm9yZGVyLWNvbG9yOiAgICAgICRncmF5LTQwMCAkZ3JheS00MDAgJG5hdi10YWJzLWxpbmstYWN0aXZlLWJnO1xuXG4kbmF2LXRhYnMtbGluay1jb2xvcjogICAgICAgICAgICAgICAgICAgICM3NzcgIWRlZmF1bHQ7XG4kbmF2LXRhYnMtbGluay1ob3Zlci1jb2xvcjogICAgICAgICAgICAgICRuYXYtdGFicy1saW5rLWFjdGl2ZS1jb2xvciAhZGVmYXVsdDtcblxuJG5hdi10YWJzLWhpZ2hsaWdodC1saW5rLWJvcmRlci13aWR0aDogICAycHggIWRlZmF1bHQ7XG4kbmF2LXRhYnMtaGlnaGxpZ2h0LWxpbmstYm9yZGVyLWNvbG9yOiAgICRjb2xvci1wcmltYXJ5LTUwMCAhZGVmYXVsdDtcblxuJG5hdi10YWJzLXRvcC1saW5rLWJvcmRlci13aWR0aDogICAgICAgICAycHggIWRlZmF1bHQ7XG4kbmF2LXRhYnMtdG9wLWxpbmstYm9yZGVyLWNvbG9yOiAgICAgICAgICRjb2xvci1waW5rLTQwMCAhZGVmYXVsdDtcblxuJG5hdi10YWJzLWJvdHRvbS1saW5rLWJvcmRlci13aWR0aDogICAgICAycHggIWRlZmF1bHQ7XG4kbmF2LXRhYnMtYm90dG9tLWxpbmstYm9yZGVyLWNvbG9yOiAgICAgICRjb2xvci1waW5rLTQwMCAhZGVmYXVsdDtcblxuJG5hdi10YWJzLXNvbGlkLWJnOiAgICAgICAgICAgICAgICAgICAgICAkZ3JheS0yMDAgIWRlZmF1bHQ7XG4kbmF2LXRhYnMtc29saWQtYWN0aXZlLWJnOiAgICAgICAgICAgICAgICRjb2xvci1wcmltYXJ5LTUwMCAhZGVmYXVsdDtcbiRuYXYtdGFicy1zb2xpZC1hY3RpdmUtY29sb3I6ICAgICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuXG5cbi8vXG4vLyBQaWxsc1xuLy9cbi8vIFBpbGxzIG5hdmlnYXRpb24uIEluY2x1ZGVzIGN1c3RvbSB2YXJpYWJsZXNcblxuJG5hdi1waWxscy1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgICAgICAkYm9yZGVyLXJhZGl1cztcbiRuYXYtcGlsbHMtbGluay1hY3RpdmUtY29sb3I6ICAgICAgICAgICAgJGNvbXBvbmVudC1hY3RpdmUtY29sb3I7XG4kbmF2LXBpbGxzLWxpbmstYWN0aXZlLWJnOiAgICAgICAgICAgICAgICRjb21wb25lbnQtYWN0aXZlLWJnO1xuJG5hdi1waWxscy1saW5rLWNvbG9yOiAgICAgICAgICAgICAgICAgICAkZ3JheS03MDAgIWRlZmF1bHQ7XG4kbmF2LXBpbGxzLWxpbmstaG92ZXItY29sb3I6ICAgICAgICAgICAgICRib2R5LWNvbG9yICFkZWZhdWx0O1xuXG4kbmF2LXBpbGxzLWJvcmRlcmVkLWJvcmRlci13aWR0aDogICAgICAgICRib3JkZXItd2lkdGggIWRlZmF1bHQ7XG4kbmF2LXBpbGxzLWJvcmRlcmVkLWJvcmRlci1jb2xvcjogICAgICAgICRncmF5LTQwMCAhZGVmYXVsdDtcbiRuYXYtcGlsbHMtYm9yZGVyZWQtbGluay1ob3Zlci1jb2xvcjogICAgJGdyYXktMjAwICFkZWZhdWx0O1xuJG5hdi1waWxscy1ib3JkZXJlZC1kaXNhYmxlZC1iZzogICAgICAgICAkZ3JheS0xMDAgIWRlZmF1bHQ7XG5cblxuLy9cbi8vIE5hdmJhclxuLy9cbi8vIEluY2x1ZGVzIGN1c3RvbSB2YXJpYWJsZXMgZm9yIG5hdmJhciBuYXYgbGlua3MgYW5kIGJyYW5kIGltYWdlIHNpemVcblxuJG5hdmJhci1ib3JkZXItd2lkdGg6ICAgICAgICAgICAgICAgICAgICRib3JkZXItd2lkdGggIWRlZmF1bHQ7XG5cbiRuYXZiYXItbGluay1wYWRkaW5nLXk6ICAgICAgICAgICAgICAgICAwLjg3NXJlbSAhZGVmYXVsdDtcbiRuYXZiYXItbGluay1wYWRkaW5nLXg6ICAgICAgICAgICAgICAgICAxcmVtICFkZWZhdWx0O1xuXG4kbmF2YmFyLWxpbmstcGFkZGluZy15LWxnOiAgICAgICAgICAgICAgMXJlbSAhZGVmYXVsdDtcbiRuYXZiYXItbGluay1wYWRkaW5nLXgtbGc6ICAgICAgICAgICAgICAxLjI1cmVtICFkZWZhdWx0O1xuXG4kbmF2YmFyLWxpbmstcGFkZGluZy15LXNtOiAgICAgICAgICAgICAgMC43NXJlbSAhZGVmYXVsdDtcbiRuYXZiYXItbGluay1wYWRkaW5nLXgtc206ICAgICAgICAgICAgICAwLjg3NXJlbSAhZGVmYXVsdDtcblxuJG5hdmJhci1saW5rLWhpZ2hsaWdodC1zaXplOiAgICAgICAgICAgIDJweCAhZGVmYXVsdDtcbiRuYXZiYXItbGlnaHQtbGluay1oaWdobGlnaHQtY29sb3I6ICAgICAkY29sb3ItcGluay00MDAgIWRlZmF1bHQ7XG4kbmF2YmFyLWRhcmstbGluay1oaWdobGlnaHQtY29sb3I6ICAgICAgJHdoaXRlICFkZWZhdWx0O1xuXG4kbmF2YmFyLWJyYW5kLWltYWdlLXNpemU6ICAgICAgICAgICAgICAgMXJlbSAhZGVmYXVsdDtcblxuJG5hdi1saW5rLWhlaWdodC1sZzogICAgICAgICAgICAgICAgICAgICgkZm9udC1zaXplLWJhc2UgKiAkbGluZS1oZWlnaHQtYmFzZSArICRuYXZiYXItbGluay1wYWRkaW5nLXktbGcgKiAyKSAhZGVmYXVsdDtcbiRuYXZiYXItYnJhbmQtaGVpZ2h0LWxnOiAgICAgICAgICAgICAgICAkbmF2YmFyLWJyYW5kLWltYWdlLXNpemUgIWRlZmF1bHQ7XG4kbmF2YmFyLWJyYW5kLXBhZGRpbmcteS1sZzogICAgICAgICAgICAgKCRuYXYtbGluay1oZWlnaHQtbGcgLSAkbmF2YmFyLWJyYW5kLWhlaWdodC1sZykgLyAyICFkZWZhdWx0O1xuXG4kbmF2LWxpbmstaGVpZ2h0LXNtOiAgICAgICAgICAgICAgICAgICAgKCRmb250LXNpemUtYmFzZSAqICRsaW5lLWhlaWdodC1iYXNlICsgJG5hdmJhci1saW5rLXBhZGRpbmcteS1zbSAqIDIpICFkZWZhdWx0O1xuJG5hdmJhci1icmFuZC1oZWlnaHQtc206ICAgICAgICAgICAgICAgICRuYXZiYXItYnJhbmQtaW1hZ2Utc2l6ZSAhZGVmYXVsdDtcbiRuYXZiYXItYnJhbmQtcGFkZGluZy15LXNtOiAgICAgICAgICAgICAoJG5hdi1saW5rLWhlaWdodC1zbSAtICRuYXZiYXItYnJhbmQtaGVpZ2h0LXNtKSAvIDIgIWRlZmF1bHQ7XG5cbiRuYXZiYXItcGFkZGluZy15OiAgICAgICAgICAgICAgICAgICAgICAwO1xuJG5hdmJhci1wYWRkaW5nLXg6ICAgICAgICAgICAgICAgICAgICAgICRncmlkLWd1dHRlci13aWR0aDtcblxuJG5hdmJhci1uYXYtbGluay1wYWRkaW5nLXg6ICAgICAgICAgICAgIDEuMjVyZW07XG5cbiRuYXZiYXItYnJhbmQtZm9udC1zaXplOiAgICAgICAgICAgICAgICAwO1xuXG4kbmF2LWxpbmstaGVpZ2h0OiAgICAgICAgICAgICAgICAgICAgICAgKCRmb250LXNpemUtYmFzZSAqICRsaW5lLWhlaWdodC1iYXNlICsgJG5hdmJhci1saW5rLXBhZGRpbmcteSAqIDIpO1xuJG5hdmJhci1icmFuZC1oZWlnaHQ6ICAgICAgICAgICAgICAgICAgICRuYXZiYXItYnJhbmQtaW1hZ2Utc2l6ZTtcbiRuYXZiYXItYnJhbmQtcGFkZGluZy15OiAgICAgICAgICAgICAgICAoJG5hdi1saW5rLWhlaWdodCAtICRuYXZiYXItYnJhbmQtaGVpZ2h0KSAvIDI7XG5cbiRuYXZiYXItdG9nZ2xlci1wYWRkaW5nLXk6ICAgICAgICAgICAgICAkbmF2YmFyLWxpbmstcGFkZGluZy15O1xuJG5hdmJhci10b2dnbGVyLXBhZGRpbmcteDogICAgICAgICAgICAgIDA7XG4kbmF2YmFyLXRvZ2dsZXItZm9udC1zaXplOiAgICAgICAgICAgICAgJGZvbnQtc2l6ZS1iYXNlO1xuJG5hdmJhci10b2dnbGVyLWJvcmRlci1yYWRpdXM6ICAgICAgICAgIDA7XG5cbiRuYXZiYXItZGFyay1iZzogICAgICAgICAgICAgICAgICAgICAgICAkY29sb3ItZGFyay01MDAgIWRlZmF1bHQ7XG4kbmF2YmFyLWRhcmstaG92ZXItYmc6ICAgICAgICAgICAgICAgICAgcmdiYSgkYmxhY2ssIDAuMTUpICFkZWZhdWx0O1xuJG5hdmJhci1kYXJrLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgIHJnYmEoJHdoaXRlLCAwLjkpO1xuJG5hdmJhci1kYXJrLWhvdmVyLWNvbG9yOiAgICAgICAgICAgICAgICR3aGl0ZTtcbiRuYXZiYXItZGFyay1hY3RpdmUtY29sb3I6ICAgICAgICAgICAgICAkd2hpdGU7XG4kbmF2YmFyLWRhcmstZGlzYWJsZWQtY29sb3I6ICAgICAgICAgICAgcmdiYSgkd2hpdGUsIDAuNSk7XG4kbmF2YmFyLWRhcmstYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICAgcmdiYSgkd2hpdGUsIDAuMSkgIWRlZmF1bHQ7XG4kbmF2YmFyLWRhcmstbGluay1hY3RpdmUtYmc6ICAgICAgICAgICAgJG5hdmJhci1kYXJrLWhvdmVyLWJnICFkZWZhdWx0O1xuJG5hdmJhci1kYXJrLWxpbmstZGlzYWJsZWQtYmc6ICAgICAgICAgIHRyYW5zcGFyZW50ICFkZWZhdWx0O1xuJG5hdmJhci1kYXJrLXRvZ2dsZXItaWNvbi1iZzogICAgICAgICAgIHN0ci1yZXBsYWNlKHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbDtjaGFyc2V0PXV0ZjgsJTNDc3ZnIHZpZXdCb3g9JzAgMCAzMCAzMCcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyUzRSUzQ3BhdGggc3Ryb2tlPScjeyRuYXZiYXItZGFyay1jb2xvcn0nIHN0cm9rZS13aWR0aD0nMicgc3Ryb2tlLWxpbmVjYXA9J3JvdW5kJyBzdHJva2UtbWl0ZXJsaW1pdD0nMTAnIGQ9J000IDdoMjJNNCAxNWgyMk00IDIzaDIyJy8lM0UlM0Mvc3ZnJTNFXCIpLCBcIiNcIiwgXCIlMjNcIik7XG4kbmF2YmFyLWRhcmstdG9nZ2xlci1ib3JkZXItY29sb3I6ICAgICAgcmdiYSgkd2hpdGUsIC4xKTtcbiRuYXZiYXItZGFyay1jb2xsYXBzZS1ib3JkZXItd2lkdGg6ICAgICAkYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJG5hdmJhci1kYXJrLWNvbGxhcHNlLWJvcmRlci1jb2xvcjogICAgIHJnYmEoJHdoaXRlLCAwLjEpICFkZWZhdWx0O1xuXG4kbmF2YmFyLWxpZ2h0LWJnOiAgICAgICAgICAgICAgICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJG5hdmJhci1saWdodC1ob3Zlci1iZzogICAgICAgICAgICAgICAgIHJnYmEoJGJsYWNrLCAwLjA0KSAhZGVmYXVsdDtcbiRuYXZiYXItbGlnaHQtY29sb3I6ICAgICAgICAgICAgICAgICAgICByZ2JhKCRib2R5LWNvbG9yLCAwLjg1KTtcbiRuYXZiYXItbGlnaHQtaG92ZXItY29sb3I6ICAgICAgICAgICAgICAkYm9keS1jb2xvcjtcbiRuYXZiYXItbGlnaHQtYWN0aXZlLWNvbG9yOiAgICAgICAgICAgICAkYm9keS1jb2xvcjtcbiRuYXZiYXItbGlnaHQtZGlzYWJsZWQtY29sb3I6ICAgICAgICAgICByZ2JhKCRibGFjaywgMC41KTtcbiRuYXZiYXItbGlnaHQtYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICByZ2JhKCRibGFjaywgMC4xMjUpICFkZWZhdWx0O1xuJG5hdmJhci1saWdodC1saW5rLWFjdGl2ZS1iZzogICAgICAgICAgICRuYXZiYXItbGlnaHQtaG92ZXItYmcgIWRlZmF1bHQ7XG4kbmF2YmFyLWxpZ2h0LWxpbmstZGlzYWJsZWQtYmc6ICAgICAgICAgdHJhbnNwYXJlbnQgIWRlZmF1bHQ7XG4kbmF2YmFyLWxpZ2h0LXRvZ2dsZXItaWNvbi1iZzogICAgICAgICAgc3RyLXJlcGxhY2UodXJsKFwiZGF0YTppbWFnZS9zdmcreG1sO2NoYXJzZXQ9dXRmOCwlM0Nzdmcgdmlld0JveD0nMCAwIDMwIDMwJyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnJTNFJTNDcGF0aCBzdHJva2U9JyN7JG5hdmJhci1saWdodC1jb2xvcn0nIHN0cm9rZS13aWR0aD0nMicgc3Ryb2tlLWxpbmVjYXA9J3JvdW5kJyBzdHJva2UtbWl0ZXJsaW1pdD0nMTAnIGQ9J000IDdoMjJNNCAxNWgyMk00IDIzaDIyJy8lM0UlM0Mvc3ZnJTNFXCIpLCBcIiNcIiwgXCIlMjNcIik7XG4kbmF2YmFyLWxpZ2h0LXRvZ2dsZXItYm9yZGVyLWNvbG9yOiAgICAgcmdiYSgkYmxhY2ssIDAuMSk7XG4kbmF2YmFyLWxpZ2h0LWNvbGxhcHNlLWJvcmRlci13aWR0aDogICAgJGJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiRuYXZiYXItbGlnaHQtY29sbGFwc2UtYm9yZGVyLWNvbG9yOiAgICAkYm9yZGVyLWNvbG9yICFkZWZhdWx0O1xuXG5cbi8vXG4vLyBQYWdpbmF0aW9uXG4vL1xuLy8gUGFnaW5hdGlvbiBhbmQgcGFnZXIgc3R5bGVzLiBJbmNsdWRlcyBjdXN0b20gdmFyaWFibGVzIGZvciBvcHRpb25hbCBzdHlsZXNcblxuJHBhZ2luYXRpb24tcGFkZGluZy15OiAgICAgICAgICAgICAgICAkaW5wdXQtYnRuLXBhZGRpbmcteTtcbiRwYWdpbmF0aW9uLXBhZGRpbmcteDogICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1wYWRkaW5nLXg7XG4kcGFnaW5hdGlvbi1wYWRkaW5nLXktc206ICAgICAgICAgICAgICRpbnB1dC1idG4tcGFkZGluZy15LXNtO1xuJHBhZ2luYXRpb24tcGFkZGluZy14LXNtOiAgICAgICAgICAgICAkaW5wdXQtYnRuLXBhZGRpbmcteC1zbTtcbiRwYWdpbmF0aW9uLXBhZGRpbmcteS1sZzogICAgICAgICAgICAgJGlucHV0LWJ0bi1wYWRkaW5nLXktbGc7XG4kcGFnaW5hdGlvbi1wYWRkaW5nLXgtbGc6ICAgICAgICAgICAgICRpbnB1dC1idG4tcGFkZGluZy14LWxnO1xuJHBhZ2luYXRpb24tbGluZS1oZWlnaHQ6ICAgICAgICAgICAgICAkbGluZS1oZWlnaHQtYmFzZTtcblxuJHBhZ2luYXRpb24tY29sb3I6ICAgICAgICAgICAgICAgICAgICAkYm9keS1jb2xvcjtcbiRwYWdpbmF0aW9uLWJnOiAgICAgICAgICAgICAgICAgICAgICAgJHdoaXRlO1xuJHBhZ2luYXRpb24tYm9yZGVyLXdpZHRoOiAgICAgICAgICAgICAkYm9yZGVyLXdpZHRoO1xuJHBhZ2luYXRpb24tYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICAkZ3JheS00MDA7XG5cbiRwYWdpbmF0aW9uLWZvY3VzLWJveC1zaGFkb3c6ICAgICAgICAgJGlucHV0LWJ0bi1mb2N1cy1ib3gtc2hhZG93O1xuJHBhZ2luYXRpb24tZm9jdXMtb3V0bGluZTogICAgICAgICAgICAwO1xuXG4kcGFnaW5hdGlvbi1ob3Zlci1jb2xvcjogICAgICAgICAgICAgICRwYWdpbmF0aW9uLWNvbG9yO1xuJHBhZ2luYXRpb24taG92ZXItYmc6ICAgICAgICAgICAgICAgICAkZ3JheS0yMDA7XG4kcGFnaW5hdGlvbi1ob3Zlci1ib3JkZXItY29sb3I6ICAgICAgICRwYWdpbmF0aW9uLWJvcmRlci1jb2xvcjtcblxuJHBhZ2luYXRpb24tYWN0aXZlLWNvbG9yOiAgICAgICAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1jb2xvcjtcbiRwYWdpbmF0aW9uLWFjdGl2ZS1iZzogICAgICAgICAgICAgICAgJGNvbXBvbmVudC1hY3RpdmUtYmc7XG4kcGFnaW5hdGlvbi1hY3RpdmUtYm9yZGVyLWNvbG9yOiAgICAgICRwYWdpbmF0aW9uLWFjdGl2ZS1iZztcblxuJHBhZ2luYXRpb24tZGlzYWJsZWQtY29sb3I6ICAgICAgICAgICAkZ3JheS02MDA7XG4kcGFnaW5hdGlvbi1kaXNhYmxlZC1iZzogICAgICAgICAgICAgICR3aGl0ZTtcbiRwYWdpbmF0aW9uLWRpc2FibGVkLWJvcmRlci1jb2xvcjogICAgJGdyYXktMzAwO1xuXG4kcGFnaW5hdGlvbi1mbGF0LXNwYWNpbmc6ICAgICAgICAgICAgIDJweCAhZGVmYXVsdDtcblxuJHBhZ2luYXRpb24tc2VwYXJhdGVkLXNwYWNpbmc6ICAgICAgICAoJHNwYWNlciAvIDIpICFkZWZhdWx0O1xuXG5cbi8vXG4vLyBKdW1ib3Ryb25cbi8vXG4vLyBIZWFkbGluZSBzdHlsZXMuIE5vdCB1c2VkIGluIHRoZSB0ZW1wbGF0ZVxuJGp1bWJvdHJvbi1wYWRkaW5nOiAgICAycmVtO1xuJGp1bWJvdHJvbi1iZzogICAgICAgICAkZ3JheS0yMDA7XG5cblxuLy9cbi8vIENhcmRzXG4vL1xuLy8gQ2FyZHMgYW5kIGNhcmQgbGF5b3V0cy4gSW5jbHVkZXMgY3VzdG9tICRjYXJkLWJveC1zaGFkb3cgdmFyaWFibGVcblxuJGNhcmQtc3BhY2VyLXk6ICAgICAgICAgICAgICAgMC45Mzc1cmVtO1xuJGNhcmQtc3BhY2VyLXg6ICAgICAgICAgICAgICAgMS4yNXJlbTtcbiRjYXJkLWJvcmRlci13aWR0aDogICAgICAgICAgICRib3JkZXItd2lkdGg7XG4kY2FyZC1ib3JkZXItcmFkaXVzOiAgICAgICAgICAkYm9yZGVyLXJhZGl1cztcbiRjYXJkLWJvcmRlci1jb2xvcjogICAgICAgICAgIHJnYmEoJGJsYWNrLCAwLjEyNSk7XG4kY2FyZC1pbm5lci1ib3JkZXItcmFkaXVzOiAgICAkY2FyZC1ib3JkZXItcmFkaXVzIC0gcmVtLWNhbGMoJGNhcmQtYm9yZGVyLXdpZHRoKTtcbiRjYXJkLWNhcC1iZzogICAgICAgICAgICAgICAgIHJnYmEoJGJsYWNrLCAwLjAyKTtcbiRjYXJkLWJnOiAgICAgICAgICAgICAgICAgICAgICR3aGl0ZTtcblxuJGNhcmQtaW1nLW92ZXJsYXktcGFkZGluZzogICAgMS4yNXJlbTtcblxuJGNhcmQtZ3JvdXAtbWFyZ2luOiAgICAgICAgICAgJHNwYWNlcjtcbiRjYXJkLWRlY2stbWFyZ2luOiAgICAgICAgICAgICRjYXJkLWdyb3VwLW1hcmdpbjtcblxuJGNhcmQtY29sdW1ucy1jb3VudDogICAgICAgICAgMztcbiRjYXJkLWNvbHVtbnMtZ2FwOiAgICAgICAgICAgIDEuMjVyZW07XG4kY2FyZC1jb2x1bW5zLW1hcmdpbjogICAgICAgICAkc3BhY2VyO1xuXG4kY2FyZC1ib3gtc2hhZG93OiAgICAgICAgICAgICAwIDFweCAycHggcmdiYSgkYmxhY2ssIDAuMDUpICFkZWZhdWx0O1xuXG5cbi8vXG4vLyBQb3B1cHNcbi8vXG4vLyBUb29sdGlwcyBhbmQgcG9wb3ZlcnNcblxuLy8gVG9vbHRpcFxuJHRvb2x0aXAtZm9udC1zaXplOiAgICAgICAgICAgICRmb250LXNpemUtYmFzZTtcbiR0b29sdGlwLW1heC13aWR0aDogICAgICAgICAgICAyMDBweDtcbiR0b29sdGlwLWNvbG9yOiAgICAgICAgICAgICAgICAkd2hpdGU7XG4kdG9vbHRpcC1iZzogICAgICAgICAgICAgICAgICAgJGJsYWNrO1xuJHRvb2x0aXAtYm9yZGVyLXJhZGl1czogICAgICAgICRib3JkZXItcmFkaXVzO1xuJHRvb2x0aXAtb3BhY2l0eTogICAgICAgICAgICAgIDAuOTtcbiR0b29sdGlwLXBhZGRpbmcteTogICAgICAgICAgICAwLjVyZW07XG4kdG9vbHRpcC1wYWRkaW5nLXg6ICAgICAgICAgICAgMC43NXJlbTtcbiR0b29sdGlwLW1hcmdpbjogICAgICAgICAgICAgICAwLjMxMjVyZW07XG5cbiR0b29sdGlwLWFycm93LXdpZHRoOiAgICAgICAgICAwLjVyZW07XG4kdG9vbHRpcC1hcnJvdy1oZWlnaHQ6ICAgICAgICAgMC4yNXJlbTtcbiR0b29sdGlwLWFycm93LWNvbG9yOiAgICAgICAgICAkdG9vbHRpcC1iZztcblxuLy8gUG9wb3ZlcnNcbiRwb3BvdmVyLWZvbnQtc2l6ZTogICAgICAgICAgICAkZm9udC1zaXplLWJhc2U7XG4kcG9wb3Zlci1iZzogICAgICAgICAgICAgICAgICAgJHdoaXRlO1xuJHBvcG92ZXItbWF4LXdpZHRoOiAgICAgICAgICAgIDI3NnB4O1xuJHBvcG92ZXItYm9yZGVyLXdpZHRoOiAgICAgICAgICRib3JkZXItd2lkdGg7XG4kcG9wb3Zlci1ib3JkZXItY29sb3I6ICAgICAgICAgcmdiYSgkYmxhY2ssIDAuMTUpO1xuJHBvcG92ZXItYm9yZGVyLXJhZGl1czogICAgICAgICRib3JkZXItcmFkaXVzO1xuJHBvcG92ZXItYm94LXNoYWRvdzogICAgICAgICAgIDAgMC4yNXJlbSAwLjVyZW0gcmdiYSgkYmxhY2ssIDAuMSk7XG5cbiRwb3BvdmVyLWhlYWRlci1iZzogICAgICAgICAgICB0cmFuc3BhcmVudDtcbiRwb3BvdmVyLWhlYWRlci1jb2xvcjogICAgICAgICAkaGVhZGluZ3MtY29sb3I7XG4kcG9wb3Zlci1oZWFkZXItcGFkZGluZy15OiAgICAgMC45Mzc1cmVtO1xuJHBvcG92ZXItaGVhZGVyLXBhZGRpbmcteDogICAgICRwb3BvdmVyLWhlYWRlci1wYWRkaW5nLXk7XG5cbiRwb3BvdmVyLWJvZHktY29sb3I6ICAgICAgICAgICAkYm9keS1jb2xvcjtcbiRwb3BvdmVyLWJvZHktcGFkZGluZy15OiAgICAgICAkcG9wb3Zlci1oZWFkZXItcGFkZGluZy14O1xuJHBvcG92ZXItYm9keS1wYWRkaW5nLXg6ICAgICAgICRwb3BvdmVyLWhlYWRlci1wYWRkaW5nLXg7XG5cbiRwb3BvdmVyLWFycm93LXdpZHRoOiAgICAgICAgICAwLjc1cmVtO1xuJHBvcG92ZXItYXJyb3ctaGVpZ2h0OiAgICAgICAgIDAuMzc1cmVtO1xuJHBvcG92ZXItYXJyb3ctY29sb3I6ICAgICAgICAgICRwb3BvdmVyLWJnO1xuXG4kcG9wb3Zlci1hcnJvdy1vdXRlci1jb2xvcjogICAgZmFkZS1pbigkcG9wb3Zlci1ib3JkZXItY29sb3IsIC4wNSk7XG5cblxuLy9cbi8vIEJhZGdlc1xuLy9cbi8vIEJhZGdlcyBhbmQgYmFkZ2UgcGlsbHMuIEluY2x1ZGVzIGN1c3RvbSB2YXJpYWJsZXMgZm9yIG9wdGlvbmFsIHN0eWxlc1xuXG4kYmFkZ2UtZm9udC1zaXplOiAgICAgICAgICAgICAgIDc1JTtcbiRiYWRnZS1mb250LXdlaWdodDogICAgICAgICAgICAgJGZvbnQtd2VpZ2h0LXNlbWlib2xkO1xuJGJhZGdlLXBhZGRpbmcteTogICAgICAgICAgICAgICAwLjMxMjVyZW07XG4kYmFkZ2UtcGFkZGluZy14OiAgICAgICAgICAgICAgIDAuMzc1cmVtO1xuJGJhZGdlLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAkYm9yZGVyLXJhZGl1cy1zbTtcblxuJGJhZGdlLXBpbGwtcGFkZGluZy14OiAgICAgICAgICAwLjQzNzVyZW07XG4kYmFkZ2UtcGlsbC1ib3JkZXItcmFkaXVzOiAgICAgIDEwcmVtO1xuXG4kYmFkZ2Utc3RyaXBlZC1wYWRkaW5nLXk6ICAgICAgIDAuNDM3NXJlbSAhZGVmYXVsdDtcbiRiYWRnZS1zdHJpcGVkLXBhZGRpbmcteDogICAgICAgMC41cmVtICFkZWZhdWx0O1xuJGJhZGdlLXN0cmlwZWQtYm9yZGVyLXdpZHRoOiAgICAycHggIWRlZmF1bHQ7XG5cbiRiYWRnZS1mbGF0LWJvcmRlci13aWR0aDogICAgICAgMXB4ICFkZWZhdWx0O1xuXG4kYmFkZ2UtZmxvYXQtbWFyZ2luOiAgICAgICAgICAgIC0wLjVyZW0gIWRlZmF1bHQ7XG5cbiRiYWRnZS1tYXJrLWJvcmRlci13aWR0aDogICAgICAgMnB4ICFkZWZhdWx0O1xuJGJhZGdlLW1hcmstc2l6ZTogICAgICAgICAgICAgICAwLjVyZW0gIWRlZmF1bHQ7XG5cblxuLy9cbi8vIE1vZGFsc1xuLy9cbi8vIFN0eWxlcyBmb3IgbW9kYWwgZGlhbG9ncy4gSW5jbHVkZXMgY3VzdG9tIHZhcmlhYmxlcyBmb3Igb3B0aW9uYWwgc3R5bGVzXG5cbiRtb2RhbC1pbm5lci1wYWRkaW5nOiAgICAgICAgICAgICAgIDEuMjVyZW07XG5cbiRtb2RhbC1kaWFsb2ctbWFyZ2luOiAgICAgICAgICAgICAgIDAuNXJlbTtcbiRtb2RhbC1kaWFsb2ctbWFyZ2luLXktc20tdXA6ICAgICAgIDEuNzVyZW07XG5cbiRtb2RhbC10aXRsZS1saW5lLWhlaWdodDogICAgICAgICAgICRsaW5lLWhlaWdodC1iYXNlO1xuXG4kbW9kYWwtY29udGVudC1iZzogICAgICAgICAgICAgICAgICAkd2hpdGU7XG4kbW9kYWwtY29udGVudC1ib3JkZXItY29sb3I6ICAgICAgICByZ2JhKCRibGFjaywgMC4yKTtcbiRtb2RhbC1jb250ZW50LWJvcmRlci13aWR0aDogICAgICAgICRib3JkZXItd2lkdGg7XG4kbW9kYWwtY29udGVudC1ib3JkZXItcmFkaXVzOiAgICAgICAkYm9yZGVyLXJhZGl1cy1sZztcbiRtb2RhbC1jb250ZW50LWJveC1zaGFkb3cteHM6ICAgICAgIDAgMC4yNXJlbSAwLjVyZW0gcmdiYSgkYmxhY2ssIDAuMSk7XG4kbW9kYWwtY29udGVudC1ib3gtc2hhZG93LXNtLXVwOiAgICAkbW9kYWwtY29udGVudC1ib3gtc2hhZG93LXhzO1xuXG4kbW9kYWwtYmFja2Ryb3AtYmc6ICAgICAgICAgICAgICAgICAkYmxhY2s7XG4kbW9kYWwtYmFja2Ryb3Atb3BhY2l0eTogICAgICAgICAgICAwLjU7XG4kbW9kYWwtaGVhZGVyLWJvcmRlci1jb2xvcjogICAgICAgICByZ2JhKCRibGFjaywgMC4xMjUpO1xuJG1vZGFsLWZvb3Rlci1ib3JkZXItY29sb3I6ICAgICAgICAgJG1vZGFsLWhlYWRlci1ib3JkZXItY29sb3I7XG4kbW9kYWwtaGVhZGVyLWJvcmRlci13aWR0aDogICAgICAgICAkbW9kYWwtY29udGVudC1ib3JkZXItd2lkdGg7XG4kbW9kYWwtZm9vdGVyLWJvcmRlci13aWR0aDogICAgICAgICAkbW9kYWwtaGVhZGVyLWJvcmRlci13aWR0aDtcbiRtb2RhbC1oZWFkZXItcGFkZGluZzogICAgICAgICAgICAgIDEuMjVyZW07XG5cbiRtb2RhbC1sZzogICAgICAgICAgICAgICAgICAgICAgICAgIDkwMHB4O1xuJG1vZGFsLW1kOiAgICAgICAgICAgICAgICAgICAgICAgICAgNjAwcHg7XG4kbW9kYWwtc206ICAgICAgICAgICAgICAgICAgICAgICAgICA0MDBweDtcbiRtb2RhbC14cy13aWR0aDogICAgICAgICAgICAgICAgICAgIDMwMHB4ICFkZWZhdWx0O1xuJG1vZGFsLWZ1bGwtd2lkdGg6ICAgICAgICAgICAgICAgICAgOTQlICFkZWZhdWx0O1xuXG4kbW9kYWwtdHJhbnNpdGlvbjogICAgICAgICAgICAgICAgICB0cmFuc2Zvcm0gLjNzIGVhc2Utb3V0O1xuXG5cbi8vXG4vLyBBbGVydHNcbi8vXG4vLyBEZWZpbmUgYWxlcnQgY29sb3JzLCBib3JkZXIgcmFkaXVzLCBhbmQgcGFkZGluZy5cblxuJGFsZXJ0LXBhZGRpbmcteTogICAgICAgICAgIDAuOTM3NXJlbTtcbiRhbGVydC1wYWRkaW5nLXg6ICAgICAgICAgICAxLjI1cmVtO1xuJGFsZXJ0LW1hcmdpbi1ib3R0b206ICAgICAgICRzcGFjZXI7XG4kYWxlcnQtYm9yZGVyLXJhZGl1czogICAgICAgJGJvcmRlci1yYWRpdXM7XG4kYWxlcnQtbGluay1mb250LXdlaWdodDogICAgJGZvbnQtd2VpZ2h0LXNlbWlib2xkO1xuJGFsZXJ0LWJvcmRlci13aWR0aDogICAgICAgICRib3JkZXItd2lkdGg7XG5cbiRhbGVydC1iZy1sZXZlbDogICAgICAgICAgICAtMTAuNTtcbiRhbGVydC1ib3JkZXItbGV2ZWw6ICAgICAgICAtMTtcbiRhbGVydC1jb2xvci1sZXZlbDogICAgICAgICA2O1xuXG4kYWxlcnQtcHJpbWFyeS1iZzogICAgICAgICAgJGNvbG9yLXByaW1hcnktNTAgIWRlZmF1bHQ7XG4kYWxlcnQtcHJpbWFyeS10ZXh0OiAgICAgICAgJGNvbG9yLXByaW1hcnktODAwICFkZWZhdWx0O1xuJGFsZXJ0LXByaW1hcnktYm9yZGVyOiAgICAgICRjb2xvci1wcmltYXJ5LTYwMCAhZGVmYXVsdDtcbiRhbGVydC1hcnJvdy1zaXplOiAgICAgICAgICA1cHggIWRlZmF1bHQ7XG5cblxuLy9cbi8vIFByb2dyZXNzIGJhcnNcbi8vXG4vLyBPcHRpb25hbCBzaXplcyBhcmUgZXhjbHVkZWQsIHVzZSBpbmxpbmUgQ1NTIGluc3RlYWRcblxuJHByb2dyZXNzLWhlaWdodDogICAgICAgICAgICAgICAgICAxLjEyNXJlbTtcbiRwcm9ncmVzcy1mb250LXNpemU6ICAgICAgICAgICAgICAgKCRmb250LXNpemUtYmFzZSAqIDAuNzUpO1xuJHByb2dyZXNzLWJnOiAgICAgICAgICAgICAgICAgICAgICAkZ3JheS0zMDA7XG4kcHJvZ3Jlc3MtYm9yZGVyLXJhZGl1czogICAgICAgICAgICRib3JkZXItcmFkaXVzO1xuJHByb2dyZXNzLWJveC1zaGFkb3c6ICAgICAgICAgICAgICBpbnNldCAwIDAuMDYyNXJlbSAwLjA2MjVyZW0gcmdiYSgkYmxhY2ssIDAuMSk7XG4kcHJvZ3Jlc3MtYmFyLWNvbG9yOiAgICAgICAgICAgICAgICR3aGl0ZTtcbiRwcm9ncmVzcy1iYXItYmc6ICAgICAgICAgICAgICAgICAgdGhlbWUtY29sb3IoXCJwcmltYXJ5XCIpO1xuJHByb2dyZXNzLWJhci1hbmltYXRpb24tdGltaW5nOiAgICAxcyBsaW5lYXIgaW5maW5pdGU7XG4kcHJvZ3Jlc3MtYmFyLXRyYW5zaXRpb246ICAgICAgICAgIHdpZHRoIC42cyBlYXNlO1xuXG5cbi8vXG4vLyBMaXN0IGdyb3VwXG4vL1xuLy8gUmVwbGljYXRlIHNpZGViYXIgbmF2aWdhdGlvbi4gSW5jbHVkZXMgY3VzdG9tIHZhcmlhYmxlcyBmb3Igb3B0aW9uYWwgc3R5bGVzXG5cbiRsaXN0LWdyb3VwLWJnOiAgICAgICAgICAgICAgICAgICAgICR3aGl0ZTtcbiRsaXN0LWdyb3VwLXBhZGRpbmcteTogICAgICAgICAgICAgIDAuNXJlbSAhZGVmYXVsdDtcblxuJGxpc3QtZ3JvdXAtYm9yZGVyLWNvbG9yOiAgICAgICAgICAgcmdiYSgkYmxhY2ssIDAuMTI1KTtcbiRsaXN0LWdyb3VwLWJvcmRlci13aWR0aDogICAgICAgICAgICRib3JkZXItd2lkdGg7XG4kbGlzdC1ncm91cC1ib3JkZXItcmFkaXVzOiAgICAgICAgICAkYm9yZGVyLXJhZGl1cztcblxuJGxpc3QtZ3JvdXAtaXRlbS1wYWRkaW5nLXk6ICAgICAgICAgLjc1cmVtO1xuJGxpc3QtZ3JvdXAtaXRlbS1wYWRkaW5nLXg6ICAgICAgICAgMS4yNXJlbTtcblxuJGxpc3QtZ3JvdXAtaG92ZXItYmc6ICAgICAgICAgICAgICAgJGdyYXktMjAwO1xuJGxpc3QtZ3JvdXAtYWN0aXZlLWNvbG9yOiAgICAgICAgICAgJGNvbXBvbmVudC1hY3RpdmUtY29sb3I7XG4kbGlzdC1ncm91cC1hY3RpdmUtYmc6ICAgICAgICAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1iZztcbiRsaXN0LWdyb3VwLWFjdGl2ZS1ib3JkZXItY29sb3I6ICAgICRsaXN0LWdyb3VwLWFjdGl2ZS1iZztcblxuJGxpc3QtZ3JvdXAtZGlzYWJsZWQtY29sb3I6ICAgICAgICAgJGdyYXktNjAwO1xuJGxpc3QtZ3JvdXAtZGlzYWJsZWQtYmc6ICAgICAgICAgICAgJGxpc3QtZ3JvdXAtYmc7XG5cbiRsaXN0LWdyb3VwLWFjdGlvbi1jb2xvcjogICAgICAgICAgIHJnYmEoJGJvZHktY29sb3IsIDAuODUpO1xuJGxpc3QtZ3JvdXAtYWN0aW9uLWhvdmVyLWNvbG9yOiAgICAgJGJvZHktY29sb3I7XG5cbiRsaXN0LWdyb3VwLWFjdGlvbi1hY3RpdmUtY29sb3I6ICAgICRib2R5LWNvbG9yO1xuJGxpc3QtZ3JvdXAtYWN0aW9uLWFjdGl2ZS1iZzogICAgICAgJGdyYXktMjAwO1xuXG5cbi8vXG4vLyBJbWFnZSB0aHVtYm5haWxzXG4vL1xuLy8gUG9sYXJvaWQtbGlrZSBpbWFnZSB0aHVtYm5haWwgc3R5bGVzXG5cbiR0aHVtYm5haWwtcGFkZGluZzogICAgICAgICAgMC4yNXJlbTtcbiR0aHVtYm5haWwtYmc6ICAgICAgICAgICAgICAgJGJvZHktYmc7XG4kdGh1bWJuYWlsLWJvcmRlci13aWR0aDogICAgICRib3JkZXItd2lkdGg7XG4kdGh1bWJuYWlsLWJvcmRlci1jb2xvcjogICAgICRjYXJkLWJvcmRlci1jb2xvcjtcbiR0aHVtYm5haWwtYm9yZGVyLXJhZGl1czogICAgJGJvcmRlci1yYWRpdXM7XG4kdGh1bWJuYWlsLWJveC1zaGFkb3c6ICAgICAgIDAgMXB4IDJweCByZ2JhKCRibGFjaywgLjA3NSk7XG5cblxuLy9cbi8vIEZpZ3VyZXNcbi8vXG4vLyBTdHlsZXMgZm9yIDxmaWd1cmU+IGNvbXBvbmVudFxuXG4kZmlndXJlLWNhcHRpb24tZm9udC1zaXplOiAgICA5MCU7XG4kZmlndXJlLWNhcHRpb24tY29sb3I6ICAgICAgICAkZ3JheS02MDA7XG5cblxuLy9cbi8vIEJyZWFkY3J1bWJzXG4vL1xuLy8gSW5kaWNhdGUgdGhlIGN1cnJlbnQgcGFnZeKAmXMgbG9jYXRpb24uIEluY2x1ZGVzIGN1c3RvbSB2YXJpYWJsZXMgZm9yIG9wdGlvbmFsIHN0eWxlc1xuXG4kYnJlYWRjcnVtYi1wYWRkaW5nLXk6ICAgICAgICAgICAgICAgICAgICAgICAgICAgKCRzcGFjZXIgLyAyKTtcbiRicmVhZGNydW1iLXBhZGRpbmcteDogICAgICAgICAgICAgICAgICAgICAgICAgICAwO1xuJGJyZWFkY3J1bWItaXRlbS1wYWRkaW5nOiAgICAgICAgICAgICAgICAgICAgICAgICgkc3BhY2VyIC8gMik7XG5cbiRicmVhZGNydW1iLW1hcmdpbi1ib3R0b206ICAgICAgICAgICAgICAgICAgICAgICAwO1xuXG4kYnJlYWRjcnVtYi1iZzogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdHJhbnNwYXJlbnQ7XG4kYnJlYWRjcnVtYi1kaXZpZGVyLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgaW5oZXJpdDtcbiRicmVhZGNydW1iLWFjdGl2ZS1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICAkZ3JheS02MDA7XG4kYnJlYWRjcnVtYi1kaXZpZGVyOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcXVvdGUoXCIvXCIpO1xuXG4kYnJlYWRjcnVtYi1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgICAgICAgICAgICAgMDtcblxuJGJyZWFkY3J1bWItbGluZS1lbGVtZW50cy1ib3JkZXItd2lkdGg6ICAgICAgICAgICRib3JkZXItd2lkdGggIWRlZmF1bHQ7XG4kYnJlYWRjcnVtYi1saW5lLXBhZGRpbmcteDogICAgICAgICAgICAgICAgICAgICAgJGdyaWQtZ3V0dGVyLXdpZHRoICFkZWZhdWx0O1xuJGJyZWFkY3J1bWItbGluZS1ib3JkZXItd2lkdGg6ICAgICAgICAgICAgICAgICAgICRib3JkZXItd2lkdGggIWRlZmF1bHQ7XG5cbiRicmVhZGNydW1iLWxpbmUtbGlnaHQtYmc6ICAgICAgICAgICAgICAgICAgICAgICAjZmFmYWZhICFkZWZhdWx0O1xuJGJyZWFkY3J1bWItbGluZS1saWdodC1ib3JkZXItY29sb3I6ICAgICAgICAgICAgICRib3JkZXItY29sb3IgIWRlZmF1bHQ7XG4kYnJlYWRjcnVtYi1saW5lLWxpZ2h0LWVsZW1lbnRzLWJnOiAgICAgICAgICAgICAgdHJhbnNwYXJlbnQgIWRlZmF1bHQ7XG4kYnJlYWRjcnVtYi1saW5lLWxpZ2h0LWVsZW1lbnRzLWJvcmRlci1jb2xvcjogICAgJGJyZWFkY3J1bWItbGluZS1saWdodC1ib3JkZXItY29sb3IgIWRlZmF1bHQ7XG5cbiRicmVhZGNydW1iLWxpbmUtZGFyay1iZzogICAgICAgICAgICAgICAgICAgICAgICAjMjczMjQ2ICFkZWZhdWx0O1xuJGJyZWFkY3J1bWItbGluZS1kYXJrLWJvcmRlci1jb2xvcjogICAgICAgICAgICAgIHJnYmEoJHdoaXRlLCAwLjI1KSAhZGVmYXVsdDtcbiRicmVhZGNydW1iLWxpbmUtZGFyay1lbGVtZW50cy1iZzogICAgICAgICAgICAgICByZ2JhKCRibGFjaywgMC4xKSAhZGVmYXVsdDtcbiRicmVhZGNydW1iLWxpbmUtZGFyay1lbGVtZW50cy1ib3JkZXItY29sb3I6ICAgICAkYnJlYWRjcnVtYi1saW5lLWRhcmstYm9yZGVyLWNvbG9yICFkZWZhdWx0O1xuXG5cbi8vXG4vLyBDYXJvdXNlbFxuLy9cbi8vIEEgc2xpZGVzaG93IGNvbXBvbmVudCBmb3IgY3ljbGluZyB0aHJvdWdoIGVsZW1lbnRzXG5cbiRjYXJvdXNlbC1jb250cm9sLWNvbG9yOiAgICAgICAgICAgJHdoaXRlO1xuJGNhcm91c2VsLWNvbnRyb2wtd2lkdGg6ICAgICAgICAgICAxNSU7XG4kY2Fyb3VzZWwtY29udHJvbC1vcGFjaXR5OiAgICAgICAgIC41O1xuXG4kY2Fyb3VzZWwtaW5kaWNhdG9yLXdpZHRoOiAgICAgICAgIDMwcHg7XG4kY2Fyb3VzZWwtaW5kaWNhdG9yLWhlaWdodDogICAgICAgIDNweDtcbiRjYXJvdXNlbC1pbmRpY2F0b3Itc3BhY2VyOiAgICAgICAgM3B4O1xuJGNhcm91c2VsLWluZGljYXRvci1hY3RpdmUtYmc6ICAgICAkd2hpdGU7XG5cbiRjYXJvdXNlbC1jYXB0aW9uLXdpZHRoOiAgICAgICAgICAgNzAlO1xuJGNhcm91c2VsLWNhcHRpb24tY29sb3I6ICAgICAgICAgICAkd2hpdGU7XG5cbiRjYXJvdXNlbC1jb250cm9sLWljb24td2lkdGg6ICAgICAgMjBweDtcblxuJGNhcm91c2VsLWNvbnRyb2wtcHJldi1pY29uLWJnOiAgICBzdHItcmVwbGFjZSh1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWw7Y2hhcnNldD11dGY4LCUzQ3N2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIGZpbGw9JyN7JGNhcm91c2VsLWNvbnRyb2wtY29sb3J9JyB2aWV3Qm94PScwIDAgOCA4JyUzRSUzQ3BhdGggZD0nTTUuMjUgMGwtNCA0IDQgNCAxLjUtMS41LTIuNS0yLjUgMi41LTIuNS0xLjUtMS41eicvJTNFJTNDL3N2ZyUzRVwiKSwgXCIjXCIsIFwiJTIzXCIpO1xuJGNhcm91c2VsLWNvbnRyb2wtbmV4dC1pY29uLWJnOiAgICBzdHItcmVwbGFjZSh1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWw7Y2hhcnNldD11dGY4LCUzQ3N2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIGZpbGw9JyN7JGNhcm91c2VsLWNvbnRyb2wtY29sb3J9JyB2aWV3Qm94PScwIDAgOCA4JyUzRSUzQ3BhdGggZD0nTTIuNzUgMGwtMS41IDEuNSAyLjUgMi41LTIuNSAyLjUgMS41IDEuNSA0LTQtNC00eicvJTNFJTNDL3N2ZyUzRVwiKSwgXCIjXCIsIFwiJTIzXCIpO1xuXG4kY2Fyb3VzZWwtdHJhbnNpdGlvbjogICAgICAgICAgICAgIHRyYW5zZm9ybSAuNnMgZWFzZSAhZGVmYXVsdDsgLy8gRGVmaW5lIHRyYW5zZm9ybSB0cmFuc2l0aW9uIGZpcnN0IGlmIHVzaW5nIG11bHRpcGxlIHRyYW5zaXRpb25zIChlLmcuLCBgdHJhbnNmb3JtIDJzIGVhc2UsIG9wYWNpdHkgLjVzIGVhc2Utb3V0YClcblxuXG4vL1xuLy8gQ2xvc2Vcbi8vXG4vLyBDbG9zZSBidXR0b24sIG1haW5seSB1c2VkIGluIG1vZGFsIGRpYWxvZ3NcblxuJGNsb3NlLWZvbnQtc2l6ZTogICAgICAkZm9udC1zaXplLWJhc2UgKiAkbGluZS1oZWlnaHQtYmFzZTtcbiRjbG9zZS1mb250LXdlaWdodDogICAgJGZvbnQtd2VpZ2h0LWJhc2U7XG4kY2xvc2UtY29sb3I6ICAgICAgICAgICRib2R5LWNvbG9yO1xuJGNsb3NlLXRleHQtc2hhZG93OiAgICBub25lO1xuXG5cbi8vXG4vLyBDb2RlXG4vL1xuLy8gSW5saW5lIGFuZCBibG9jayBlbGVtZW50cyB0byByZXByZXNlbnQgdGhlIGNvZGVcblxuJGNvZGUtZm9udC1zaXplOiAgICAgICAgICAgICAgICRmb250LXNpemUtc207XG4kY29kZS1jb2xvcjogICAgICAgICAgICAgICAgICAgJGNvbG9yLXBpbmstNjAwO1xuJGNvZGUtcGFkZGluZy15OiAgICAgICAgICAgICAgIDAuMnJlbSAhZGVmYXVsdDtcbiRjb2RlLXBhZGRpbmcteDogICAgICAgICAgICAgICAwLjRyZW0gIWRlZmF1bHQ7XG4kY29kZS1iZzogICAgICAgICAgICAgICAgICAgICAgJGdyYXktMTAwICFkZWZhdWx0O1xuXG4ka2JkLXBhZGRpbmcteTogICAgICAgICAgICAgICAgMC4ycmVtO1xuJGtiZC1wYWRkaW5nLXg6ICAgICAgICAgICAgICAgIDAuNHJlbTtcbiRrYmQtZm9udC1zaXplOiAgICAgICAgICAgICAgICAkY29kZS1mb250LXNpemU7XG4ka2JkLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgJHdoaXRlO1xuJGtiZC1iZzogICAgICAgICAgICAgICAgICAgICAgICRncmF5LTkwMDtcblxuJHByZS1jb2xvcjogICAgICAgICAgICAgICAgICAgICRncmF5LTkwMDtcbiRwcmUtc2Nyb2xsYWJsZS1tYXgtaGVpZ2h0OiAgICA0NTBweDtcbiRwcmUtcGFkZGluZy15OiAgICAgICAgICAgICAgICAxLjI1cmVtICFkZWZhdWx0O1xuJHByZS1wYWRkaW5nLXg6ICAgICAgICAgICAgICAgIDEuMjVyZW0gIWRlZmF1bHQ7XG4kcHJlLWJvcmRlci1jb2xvcjogICAgICAgICAgICAgJGdyYXktNDAwICFkZWZhdWx0O1xuXG5cbi8vXG4vLyBQcmludGluZ1xuLy9cbi8vIFN0eWxlcyBmb3IgcHJpbnRpbmdcblxuJHByaW50LXBhZ2Utc2l6ZTogICAgICAgICBhMztcbiRwcmludC1ib2R5LW1pbi13aWR0aDogICAgbWFwLWdldCgkZ3JpZC1icmVha3BvaW50cywgXCJsZ1wiKTtcbiIsIi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICpcbiAqICAjIEFkZGl0aW9uYWwgdmFyaWFibGVzXG4gKlxuICogIE1haW5seSAzcmQgcGFydHkgbGlicmFyaWVzIGFuZCBhZGRpdGlvbmFsIHZhcmlhYmxlcyBmb3IgZGVmYXVsdFxuICogIEJvb3RzdHJhcCBjb21wb25lbnRzLlxuICpcbiAqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cblxuXG4vL1xuLy8gTGlnaHQgY29udGV4dHVhbCBjb2xvcnNcbi8vXG4vLyBJbmNsdWRlcyA1MCBzaGFkZXMgZnJvbSBjdXN0b20gY29sb3IgcGFsZXR0ZVxuXG4kdGhlbWUtY29sb3JzLWxpZ2h0OiAoKSAhZGVmYXVsdDtcbiR0aGVtZS1jb2xvcnMtbGlnaHQ6IG1hcC1tZXJnZSgoXG4gIFwicHJpbWFyeVwiOiAgICAgICRjb2xvci1wcmltYXJ5LTUwLFxuICBcInNlY29uZGFyeVwiOiAgICAkZ3JheS0zMDAsXG4gIFwic3VjY2Vzc1wiOiAgICAgICRjb2xvci1zdWNjZXNzLTUwLFxuICBcImluZm9cIjogICAgICAgICAkY29sb3ItaW5mby01MCxcbiAgXCJ3YXJuaW5nXCI6ICAgICAgJGNvbG9yLW9yYW5nZS01MCxcbiAgXCJkYW5nZXJcIjogICAgICAgJGNvbG9yLWRhbmdlci01MCxcbiAgXCJsaWdodFwiOiAgICAgICAgJGdyYXktMjAwLFxuICBcImRhcmtcIjogICAgICAgICAkY29sb3Itc2xhdGUtNTBcbiksICR0aGVtZS1jb2xvcnMtbGlnaHQpO1xuXG5cblxuLy9cbi8vIENvbnRlbnQgc3R5bGluZ1xuLy9cbi8vIFZhcmlvdXMgY3VzdG9tIHZhcmlhYmxlcyBmb3IgdGV4dCwgaWNvbnMsIGVsZW1lbnRzLCBibG9ja3MgZXRjXG5cbi8vIENvbnRlbnQgZGl2aWRlclxuJGNvbnRlbnQtZGl2aWRlci1oZWlnaHQ6ICAgICAgICAgICAgICAgICAgJGJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiRjb250ZW50LWRpdmlkZXItY29sb3I6ICAgICAgICAgICAgICAgICAgICRib3JkZXItY29sb3IgIWRlZmF1bHQ7XG5cbi8vIFNoYWRvd3MgdXNlZCBpbiA6aG92ZXIvOmZvY3VzIHN0YXRlc1xuJGhvdmVyLXNoYWRvdy1saWdodGVyOiAgICAgICAgICAgICAgICAgICAgMCAwIDAgNjIuNXJlbSByZ2JhKCRibGFjaywgMC4wMSkgaW5zZXQgIWRlZmF1bHQ7XG4kaG92ZXItc2hhZG93LWRhcmtlcjogICAgICAgICAgICAgICAgICAgICAwIDAgMCA2Mi41cmVtIHJnYmEoJGJsYWNrLCAwLjA0KSBpbnNldCAhZGVmYXVsdDtcblxuLy8gSW1hZ2VzXG4kaW1nLXBhdGg6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAnL3RoZW1lSW1hZ2VzJyAhZGVmYXVsdDtcbiRpbWctcHJldmlldy1tYXgtaGVpZ2h0OiAgICAgICAgICAgICAgICAgIDVyZW0gIWRlZmF1bHQ7XG5cbi8vIFdyYXBwZXJzIGZvciBlbGVtZW50IHNwYWNlcnMuIFVzZXMgZGVmYXVsdCAkc3BhY2VycyBtYXBcbiRlbGVtZW50LXNwYWNlci14LXNtOiAgICAgICAgICAgICAgICAgICAgIG1hcC1nZXQoJHNwYWNlcnMsIDEpICFkZWZhdWx0O1xuJGVsZW1lbnQtc3BhY2VyLXg6ICAgICAgICAgICAgICAgICAgICAgICAgbWFwLWdldCgkc3BhY2VycywgMikgIWRlZmF1bHQ7XG4kZWxlbWVudC1zcGFjZXIteC1sZzogICAgICAgICAgICAgICAgICAgICBtYXAtZ2V0KCRzcGFjZXJzLCAzKSAhZGVmYXVsdDtcblxuLy8gSGVhZGVyIGVsZW1lbnRzXG4kaGVhZGVyLWVsZW1lbnRzLXBhZGRpbmcteTogICAgICAgICAgICAgICAkc3BhY2VyICFkZWZhdWx0O1xuJGhlYWRlci1lbGVtZW50cy1wYWRkaW5nLXg6ICAgICAgICAgICAgICAgJGdyaWQtZ3V0dGVyLXdpZHRoICFkZWZhdWx0O1xuXG4vLyBJY29uc1xuJGljb24tZm9udC1mYW1pbHk6ICAgICAgICAgICAgICAgICAgICAgICAgJ2ljb21vb24nICFkZWZhdWx0O1xuJGljb24tZm9udC1zaXplOiAgICAgICAgICAgICAgICAgICAgICAgICAgMXJlbSAhZGVmYXVsdDtcbiRsaXN0LWljb25zLXNwYWNlcjogICAgICAgICAgICAgICAgICAgICAgIDAuMzc1cmVtICFkZWZhdWx0O1xuXG4vLyBUcmFuc2l0aW9uIHRpbWVyc1xuJGNvbXBvbmVudC10cmFuc2l0aW9uLXRpbWVyOiAgICAgICAgICAgICAgMC4xNXMgIWRlZmF1bHQ7XG4kY29tcG9uZW50LXRyYW5zaXRpb24tZGVsYXk6ICAgICAgICAgICAgICAwLjE1cyAhZGVmYXVsdDtcblxuLy8gRW5oYW5jZWQgbWVkaWEgb2JqZWN0c1xuJG1lZGlhLXRpdGxlLW1hcmdpbi1ib3R0b206ICAgICAgICAgICAgICAgMC4xMjVyZW0gIWRlZmF1bHQ7XG4kbWVkaWEtbGluay1ob3Zlci1iZzogICAgICAgICAgICAgICAgICAgICByZ2JhKCRibGFjaywgMC4wNCkgIWRlZmF1bHQ7XG4kbWVkaWEtcGFkZGluZy14OiAgICAgICAgICAgICAgICAgICAgICAgICAxLjI1cmVtICFkZWZhdWx0O1xuJG1lZGlhLXBhZGRpbmcteTogICAgICAgICAgICAgICAgICAgICAgICAgMXJlbSAhZGVmYXVsdDtcbiRtZWRpYS1ib3JkZXItd2lkdGg6ICAgICAgICAgICAgICAgICAgICAgICRib3JkZXItd2lkdGggIWRlZmF1bHQ7XG4kbWVkaWEtYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAkYm9yZGVyLWNvbG9yICFkZWZhdWx0O1xuXG4vLyBFbmhhbmNlZCBkcm9wZG93biBtZW51c1xuJGRyb3Bkb3duLWNvbnRlbnQtaGVhZGVyLXBhZGRpbmcteTogICAgICAgMXJlbSAhZGVmYXVsdDtcbiRkcm9wZG93bi1jb250ZW50LWJvZHktcGFkZGluZy15OiAgICAgICAgIDEuMjVyZW0gIWRlZmF1bHQ7XG4kZHJvcGRvd24tY29udGVudC1ib2R5LXBhZGRpbmcteDogICAgICAgICAxLjI1cmVtICFkZWZhdWx0O1xuJGRyb3Bkb3duLWNvbnRlbnQtZm9vdGVyLXBhZGRpbmcteTogICAgICAgMC43NXJlbSAhZGVmYXVsdDtcbiRkcm9wZG93bi1jb250ZW50LWZvb3Rlci1ib3JkZXItd2lkdGg6ICAgICRib3JkZXItd2lkdGggIWRlZmF1bHQ7XG4kZHJvcGRvd24tY29udGVudC1mb290ZXItYm9yZGVyLWNvbG9yOiAgICAkYm9yZGVyLWNvbG9yICFkZWZhdWx0O1xuXG4vLyBQZXJmZWN0IHNjcm9sbGJhclxuJHBzLXNpemU6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMC4yNXJlbSAhZGVmYXVsdDtcbiRwcy1nYXA6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDAuMTI1cmVtICFkZWZhdWx0O1xuJHBzLWJnOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJGdyYXktNjAwICFkZWZhdWx0O1xuJHBzLW9wYWNpdHk6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMC43NSAhZGVmYXVsdDtcblxuLy8galF1ZXJ5IFVJXG4kdWktYWNjb3JkaW9uLXNwYWNlci15OiAgICAgICAgICAgICAgICAgICAwLjVyZW0gIWRlZmF1bHQ7XG4kdWktYXV0b2NvbXBsZXRlLWhlaWdodDogICAgICAgICAgICAgICAgICAyNTBweCAhZGVmYXVsdDtcbiR1aS1kYXRlcGlja2VyLXdpZHRoOiAgICAgICAgICAgICAgICAgICAgIDI3MHB4ICFkZWZhdWx0O1xuXG4vLyBDaGFydHNcbiRjaGFydC1jb250YWluZXItaGVpZ2h0OiAgICAgICAgICAgICAgICAgIDQwMHB4ICFkZWZhdWx0O1xuJGNoYXJ0LW1pbi13aWR0aDogICAgICAgICAgICAgICAgICAgICAgICAgMzcuNXJlbSAhZGVmYXVsdDtcbiRjaGFydC1waWUtbWluLXdpZHRoOiAgICAgICAgICAgICAgICAgICAgIDMxLjI1cmVtICFkZWZhdWx0O1xuXG4vLyBNYXBzXG4kbWFwLWNvbnRhaW5lci1oZWlnaHQ6ICAgICAgICAgICAgICAgICAgICA1MDBweCAhZGVmYXVsdDtcbiRtYXAtY29udGFpbmVyLXNpZGViYXItaGVpZ2h0OiAgICAgICAgICAgIDIwMHB4ICFkZWZhdWx0O1xuXG4vLyBNaXNjXG4kc2VsZWN0LWN1c3RvbS13aWR0aDogICAgICAgICAgICAgICAgICAgICAyMjBweCAhZGVmYXVsdDtcbiRjdXJzb3ItZGlzYWJsZWQ6ICAgICAgICAgICAgICAgICAgICAgICAgIGRlZmF1bHQgIWRlZmF1bHQ7XG5cblxuXG4vL1xuLy8gUGFnZSBoZWFkZXJcbi8vXG4vLyBJbmNsdWRlcyBwYWdlIGhlYWRlciBiYXNlLCBjb2xvcnMgYW5kIHBhZ2UgdGl0bGVcblxuJHBhZ2UtaGVhZGVyLWJvcmRlci13aWR0aDogICAgICAgICAgICAgICAgICAgJGJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiRwYWdlLWhlYWRlci1lbGVtZW50cy1ib3JkZXItd2lkdGg6ICAgICAgICAgICRib3JkZXItd2lkdGggIWRlZmF1bHQ7XG5cbiRwYWdlLWhlYWRlci1wYWRkaW5nLXk6ICAgICAgICAgICAgICAgICAgICAgIDJyZW0gIWRlZmF1bHQ7XG4kcGFnZS1oZWFkZXItcGFkZGluZy14OiAgICAgICAgICAgICAgICAgICAgICAkZ3JpZC1ndXR0ZXItd2lkdGggIWRlZmF1bHQ7XG5cbiRwYWdlLWhlYWRlci1saWdodC1iZzogICAgICAgICAgICAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRwYWdlLWhlYWRlci1saWdodC1ib3JkZXItY29sb3I6ICAgICAgICAgICAgICRib3JkZXItY29sb3IgIWRlZmF1bHQ7XG4kcGFnZS1oZWFkZXItbGlnaHQtZWxlbWVudHMtYmc6ICAgICAgICAgICAgICAkZ3JheS0xMDAgIWRlZmF1bHQ7XG4kcGFnZS1oZWFkZXItbGlnaHQtZWxlbWVudHMtYm9yZGVyLWNvbG9yOiAgICAkcGFnZS1oZWFkZXItbGlnaHQtYm9yZGVyLWNvbG9yICFkZWZhdWx0O1xuXG4kcGFnZS1oZWFkZXItZGFyay1iZzogICAgICAgICAgICAgICAgICAgICAgICAjMjczMjQ2ICFkZWZhdWx0O1xuJHBhZ2UtaGVhZGVyLWRhcmstY29sb3I6ICAgICAgICAgICAgICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJHBhZ2UtaGVhZGVyLWRhcmstYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICAgcmdiYSgkd2hpdGUsIDAuMikgIWRlZmF1bHQ7XG4kcGFnZS1oZWFkZXItZGFyay1lbGVtZW50cy1iZzogICAgICAgICAgICAgICByZ2JhKCRibGFjaywgMC4xKSAhZGVmYXVsdDtcbiRwYWdlLWhlYWRlci1kYXJrLWVsZW1lbnRzLWJvcmRlci1jb2xvcjogICAgICRwYWdlLWhlYWRlci1kYXJrLWJvcmRlci1jb2xvciAhZGVmYXVsdDtcblxuXG5cbi8vXG4vLyBDb250ZW50IGFyZWFcbi8vXG4vLyBBcmVhIGJlbG93IHBhZ2UgaGVhZGVyLCBBbHNvIGluY2x1ZGVzIGJveGVkIGxheW91dFxuXG4kY29udGVudC1jb250YWluZXItcGFkZGluZy15OiAgICAkc3BhY2VyICFkZWZhdWx0O1xuJGNvbnRlbnQtY29udGFpbmVyLXBhZGRpbmcteDogICAgJGdyaWQtZ3V0dGVyLXdpZHRoICFkZWZhdWx0O1xuXG4kYm94ZWQtYmc6ICAgICAgICAgICAgICAgICAgICAgICB1cmwoI3skaW1nLXBhdGh9L2JhY2tncm91bmRzL2JveGVkX2JnLnBuZykgcmVwZWF0ICFkZWZhdWx0O1xuJGJveGVkLWNvbnRhaW5lci1ib3gtc2hhZG93OiAgICAgLTRweCAycHggNHB4IHJnYmEoJGJsYWNrLCAwLjE1KSwgNHB4IDJweCA0cHggcmdiYSgkYmxhY2ssIDAuMTUpICFkZWZhdWx0O1xuXG5cblxuLy9cbi8vIFNpZGViYXJcbi8vXG4vLyBJbmNsdWRlcyBzaWRlYmFyIHNpemVzLCBjb2xvcnMgYW5kIHVzZXIgYXJlYXNcblxuLy8gQmFzZVxuJHNpZGViYXItYmFzZS13aWR0aDogICAgICAgICAgICAgICAgICAgICByZW0tY2FsYygyNzBweCkgIWRlZmF1bHQ7XG4kc2lkZWJhci1taW5pLXdpZHRoOiAgICAgICAgICAgICAgICAgICAgICgkc3BhY2VyICogMikgKyAkaWNvbi1mb250LXNpemUgIWRlZmF1bHQ7XG5cblxuLy8gTGlnaHQgc2lkZWJhclxuJHNpZGViYXItbGlnaHQtYmc6ICAgICAgICAgICAgICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kc2lkZWJhci1saWdodC1jb2xvcjogICAgICAgICAgICAgICAgICAgICRib2R5LWNvbG9yICFkZWZhdWx0O1xuJHNpZGViYXItbGlnaHQtYm9yZGVyLXdpZHRoOiAgICAgICAgICAgICAkYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJHNpZGViYXItbGlnaHQtYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICByZ2JhKCRibGFjaywgMC4xMjUpICFkZWZhdWx0O1xuJHNpZGViYXItbGlnaHQtdG9nZ2xlci1iZzogICAgICAgICAgICAgICBkYXJrZW4oJHNpZGViYXItbGlnaHQtYmcsIDQlKSAhZGVmYXVsdDtcbiRzaWRlYmFyLWxpZ2h0LXRvZ2dsZXItY29sb3I6ICAgICAgICAgICAgcmdiYSgkc2lkZWJhci1saWdodC1jb2xvciwgMC44KSAhZGVmYXVsdDtcbiRzaWRlYmFyLWxpZ2h0LXRvZ2dsZXItaG92ZXItYmc6ICAgICAgICAgdHJhbnNwYXJlbnQgIWRlZmF1bHQ7XG4kc2lkZWJhci1saWdodC10b2dnbGVyLWhvdmVyLWNvbG9yOiAgICAgICRzaWRlYmFyLWxpZ2h0LWNvbG9yICFkZWZhdWx0O1xuJHNpZGViYXItbGlnaHQtdGFicy1iZzogICAgICAgICAgICAgICAgICBkYXJrZW4oJHNpZGViYXItbGlnaHQtYmcsIDQlKSAhZGVmYXVsdDtcbiRzaWRlYmFyLWxpZ2h0LXhzLW1lbnUtYmc6ICAgICAgICAgICAgICAgZGFya2VuKCRzaWRlYmFyLWxpZ2h0LWJnLCAxJSkgIWRlZmF1bHQ7XG5cblxuLy8gRGFyayBzaWRlYmFyXG4kc2lkZWJhci1kYXJrLWJnOiAgICAgICAgICAgICAgICAgICAgICAgICRjb2xvci1zbGF0ZS05MDAgIWRlZmF1bHQ7XG4kc2lkZWJhci1kYXJrLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRzaWRlYmFyLWRhcmstYm9yZGVyLXdpZHRoOiAgICAgICAgICAgICAgJGJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiRzaWRlYmFyLWRhcmstYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICAgcmdiYSgkd2hpdGUsIDAuMSkgIWRlZmF1bHQ7XG4kc2lkZWJhci1kYXJrLXRvZ2dsZXItYmc6ICAgICAgICAgICAgICAgIGRhcmtlbigkc2lkZWJhci1kYXJrLWJnLCA0JSkgIWRlZmF1bHQ7XG4kc2lkZWJhci1kYXJrLXRvZ2dsZXItY29sb3I6ICAgICAgICAgICAgIHJnYmEoJHNpZGViYXItZGFyay1jb2xvciwgMC45KSAhZGVmYXVsdDtcbiRzaWRlYmFyLWRhcmstdG9nZ2xlci1ob3Zlci1iZzogICAgICAgICAgdHJhbnNwYXJlbnQgIWRlZmF1bHQ7XG4kc2lkZWJhci1kYXJrLXRvZ2dsZXItaG92ZXItY29sb3I6ICAgICAgICRzaWRlYmFyLWRhcmstY29sb3IgIWRlZmF1bHQ7XG4kc2lkZWJhci1kYXJrLXRhYnMtYmc6ICAgICAgICAgICAgICAgICAgIGRhcmtlbigkc2lkZWJhci1kYXJrLWJnLCA0JSkgIWRlZmF1bHQ7XG4kc2lkZWJhci1kYXJrLXhzLW1lbnUtYmc6ICAgICAgICAgICAgICAgIGxpZ2h0ZW4oJHNpZGViYXItZGFyay1iZywgNSUpICFkZWZhdWx0O1xuXG5cbi8vIFNoYWRvd3MgW21hdGVyaWFsIG9ubHldXG4kc2lkZWJhci1sZWZ0LWRlc2t0b3AtYm94LXNoYWRvdzogICAgICAgIG5vbmUgIWRlZmF1bHQ7XG4kc2lkZWJhci1sZWZ0LW1vYmlsZS1ib3gtc2hhZG93OiAgICAgICAgIDAuMjVyZW0gMCAxcmVtIHJnYmEoMCwgMCwgMCwgMC4zNSkgIWRlZmF1bHQ7XG5cbiRzaWRlYmFyLXJpZ2h0LWRlc2t0b3AtYm94LXNoYWRvdzogICAgICAgbm9uZSAhZGVmYXVsdDtcbiRzaWRlYmFyLXJpZ2h0LW1vYmlsZS1ib3gtc2hhZG93OiAgICAgICAgLTAuMjVyZW0gMCAxcmVtIHJnYmEoMCwgMCwgMCwgMC4zNSkgIWRlZmF1bHQ7XG5cblxuLy8gWi1pbmRleGVzXG4kc2lkZWJhci16aW5kZXg6ICAgICAgICAgICAgICAgICAgICAgICAgICgkemluZGV4LWZpeGVkICsgMTApICFkZWZhdWx0O1xuJHNpZGViYXItemluZGV4LW1haW46ICAgICAgICAgICAgICAgICAgICA5OSAhZGVmYXVsdDtcbiRzaWRlYmFyLXppbmRleC1zZWNvbmRhcnk6ICAgICAgICAgICAgICAgKCRzaWRlYmFyLXppbmRleC1tYWluIC0gMSkgIWRlZmF1bHQ7XG4kc2lkZWJhci16aW5kZXgtcmlnaHQ6ICAgICAgICAgICAgICAgICAgICgkc2lkZWJhci16aW5kZXgtbWFpbiAtIDIpICFkZWZhdWx0O1xuJHNpZGViYXItemluZGV4LWNvbXBvbmVudDogICAgICAgICAgICAgICAoJHNpZGViYXItemluZGV4LW1haW4gLSAzKSAhZGVmYXVsdDtcblxuXG5cbi8vXG4vLyBNYWluIHZlcnRpY2FsIG5hdmlnYXRpb25cbi8vXG4vLyBJbmNsdWRlcyBiYXNlIHN0eWxlcywgbGV2ZWxzIGFuZCBjb2xvcnNcblxuJG5hdmlnYXRpb24tcGFkZGluZy15OiAgICAgICAgICAgICAgICAgICAgICAwLjVyZW0gIWRlZmF1bHQ7XG5cbiRuYXZpZ2F0aW9uLWl0ZW0tcGFkZGluZy15OiAgICAgICAgICAgICAgICAgMC43NXJlbSAhZGVmYXVsdDtcbiRuYXZpZ2F0aW9uLWl0ZW0tcGFkZGluZy14OiAgICAgICAgICAgICAgICAgMS4yNXJlbSAhZGVmYXVsdDtcbiRuYXZpZ2F0aW9uLWl0ZW0tc3BhY2VyLXk6ICAgICAgICAgICAgICAgICAgMXB4ICFkZWZhdWx0O1xuJG5hdmlnYXRpb24taXRlbS1mb250LXdlaWdodDogICAgICAgICAgICAgICAkZm9udC13ZWlnaHQtc2VtaWJvbGQgIWRlZmF1bHQ7XG4kbmF2aWdhdGlvbi1pdGVtLWRpc2FibGVkLW9wYWNpdHk6ICAgICAgICAgIDAuNSAhZGVmYXVsdDtcblxuJG5hdmlnYXRpb24tc3ViLXBhZGRpbmcteTogICAgICAgICAgICAgICAgICAwLjYyNXJlbSAhZGVmYXVsdDtcbiRuYXZpZ2F0aW9uLXN1Yi1pdGVtLW9wYWNpdHk6ICAgICAgICAgICAgICAgMC41ICFkZWZhdWx0O1xuXG5cbi8vIERhcmsgc2lkZWJhciBuYXZpZ2F0aW9uIHN0eWxlc1xuJG5hdmlnYXRpb24tZGFyay1jb2xvcjogICAgICAgICAgICAgICAgICAgICByZ2JhKCRzaWRlYmFyLWRhcmstY29sb3IsIDAuOSkgIWRlZmF1bHQ7XG4kbmF2aWdhdGlvbi1kYXJrLWhvdmVyLWJnOiAgICAgICAgICAgICAgICAgIHJnYmEoJGJsYWNrLCAwLjE1KSAhZGVmYXVsdDtcbiRuYXZpZ2F0aW9uLWRhcmstaG92ZXItY29sb3I6ICAgICAgICAgICAgICAgJHNpZGViYXItZGFyay1jb2xvciAhZGVmYXVsdDtcbiRuYXZpZ2F0aW9uLWRhcmstYWN0aXZlLWJnOiAgICAgICAgICAgICAgICAgJGNvbG9yLXRlYWwtNDAwICFkZWZhdWx0O1xuJG5hdmlnYXRpb24tZGFyay1hY3RpdmUtY29sb3I6ICAgICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kbmF2aWdhdGlvbi1kYXJrLXN1Yi1iZzogICAgICAgICAgICAgICAgICAgIHJnYmEoJGJsYWNrLCAwLjE1KSAhZGVmYXVsdDtcbiRuYXZpZ2F0aW9uLWRhcmstc3ViLWFjdGl2ZS1iZzogICAgICAgICAgICAgcmdiYSgkYmxhY2ssIDAuMTUpICFkZWZhdWx0O1xuJG5hdmlnYXRpb24tZGFyay1zdWItYWN0aXZlLWNvbG9yOiAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kbmF2aWdhdGlvbi1kYXJrLWJvcmRlcmVkLWJvcmRlci13aWR0aDogICAgICRib3JkZXItd2lkdGggIWRlZmF1bHQ7XG4kbmF2aWdhdGlvbi1kYXJrLWJvcmRlcmVkLWJvcmRlci1jb2xvcjogICAgIHJnYmEoJHdoaXRlLCAwLjEpICFkZWZhdWx0O1xuJG5hdmlnYXRpb24tZGFyay1ib3JkZXJlZC1oZWFkZXItYmc6ICAgICAgICByZ2JhKCRibGFjaywgMC4xKSAhZGVmYXVsdDtcblxuXG4vLyBMaWdodCBzaWRlYmFyIG5hdmlnYXRpb24gc3R5bGVzXG4kbmF2aWdhdGlvbi1saWdodC1jb2xvcjogICAgICAgICAgICAgICAgICAgIHJnYmEoJHNpZGViYXItbGlnaHQtY29sb3IsIDAuODUpICFkZWZhdWx0O1xuJG5hdmlnYXRpb24tbGlnaHQtaG92ZXItYmc6ICAgICAgICAgICAgICAgICAkZ3JheS0yMDAgIWRlZmF1bHQ7XG4kbmF2aWdhdGlvbi1saWdodC1ob3Zlci1jb2xvcjogICAgICAgICAgICAgICRzaWRlYmFyLWxpZ2h0LWNvbG9yICFkZWZhdWx0O1xuJG5hdmlnYXRpb24tbGlnaHQtYWN0aXZlLWJnOiAgICAgICAgICAgICAgICAkbmF2aWdhdGlvbi1saWdodC1ob3Zlci1iZyAhZGVmYXVsdDtcbiRuYXZpZ2F0aW9uLWxpZ2h0LWFjdGl2ZS1jb2xvcjogICAgICAgICAgICAgJG5hdmlnYXRpb24tbGlnaHQtaG92ZXItY29sb3IgIWRlZmF1bHQ7XG4kbmF2aWdhdGlvbi1saWdodC1zdWItYmc6ICAgICAgICAgICAgICAgICAgIHRyYW5zcGFyZW50ICFkZWZhdWx0O1xuJG5hdmlnYXRpb24tbGlnaHQtc3ViLWFjdGl2ZS1iZzogICAgICAgICAgICAkZ3JheS0yMDAgIWRlZmF1bHQ7XG4kbmF2aWdhdGlvbi1saWdodC1zdWItYWN0aXZlLWNvbG9yOiAgICAgICAgICRib2R5LWNvbG9yICFkZWZhdWx0O1xuJG5hdmlnYXRpb24tbGlnaHQtYm9yZGVyZWQtYm9yZGVyLXdpZHRoOiAgICAkYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJG5hdmlnYXRpb24tbGlnaHQtYm9yZGVyZWQtYm9yZGVyLWNvbG9yOiAgICAkZ3JheS0zMDAgIWRlZmF1bHQ7XG4kbmF2aWdhdGlvbi1saWdodC1ib3JkZXJlZC1oZWFkZXItYmc6ICAgICAgICRncmF5LTEwMCAhZGVmYXVsdDtcblxuXG5cbi8vXG4vLyBGb3JtIGNvbXBvbmVudHNcbi8vXG4vLyBGb3JtIGNoZWNrcywgc3dpdGNoZXMsIHNlbGVjdHMsIHRhZ3MgZXRjLlxuXG4vLyBDaGVja2JveGVzIGFuZCByYWRpb3NcbiRjaGVja2JveC1zaXplOiAgICAgICAgICAgICAgICAgICAgICAxLjI1cmVtICFkZWZhdWx0O1xuJGNoZWNrYm94LWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICRjb2xvci1zbGF0ZS03MDAgIWRlZmF1bHQ7XG4kY2hlY2tib3gtYm9yZGVyLXdpZHRoOiAgICAgICAgICAgICAgcmVtLWNhbGMoJGJvcmRlci13aWR0aCAqIDIpICFkZWZhdWx0O1xuJGNoZWNrYm94LWJvcmRlci1jb2xvcjogICAgICAgICAgICAgICRjaGVja2JveC1jb2xvciAhZGVmYXVsdDtcbiRjaGVja2JveC1kaXNhYmxlZC1vcGFjaXR5OiAgICAgICAgICAwLjUgIWRlZmF1bHQ7XG5cblxuLy8gU3dpdGNoZXJ5IHRvZ2dsZVxuJHN3aXRjaGVyeS1iZzogICAgICAgICAgICAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRzd2l0Y2hlcnktYm9yZGVyLXdpZHRoOiAgICAgICAgICAgICAkYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJHN3aXRjaGVyeS1ib3JkZXItY29sb3I6ICAgICAgICAgICAgICRncmF5LTQwMCAhZGVmYXVsdDtcbiRzd2l0Y2hlcnktaGFuZGxlLWJnOiAgICAgICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kc3dpdGNoZXJ5LWhhbmRsZS1ib3gtc2hhZG93OiAgICAgICAgMCAxcHggM3B4IHJnYmEoJGJsYWNrLCAwLjQpICFkZWZhdWx0O1xuJHN3aXRjaGVyeS1zaXplOiAgICAgICAgICAgICAgICAgICAgIDEuMTI1cmVtICFkZWZhdWx0O1xuJHN3aXRjaGVyeS1tYXJnaW4teDogICAgICAgICAgICAgICAgIDAuNjI1cmVtICFkZWZhdWx0O1xuXG5cbi8vIEJvb3RzdHJhcCBzd2l0Y2hcbiRzd2l0Y2gtYm9yZGVyLXdpZHRoOiAgICAgICAgICAgICAgICAkYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJHN3aXRjaC1iZy1kZWZhdWx0OiAgICAgICAgICAgICAgICAgICRncmF5LTMwMCAhZGVmYXVsdDtcbiRzd2l0Y2gtaGFuZGxlLXdpZHRoOiAgICAgICAgICAgICAgICAwLjI1cmVtICFkZWZhdWx0O1xuJHN3aXRjaC1oYW5kbGUtaGVpZ2h0OiAgICAgICAgICAgICAgIDAuNjI1cmVtICFkZWZhdWx0O1xuJHN3aXRjaC1oYW5kbGUtYmc6ICAgICAgICAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRzd2l0Y2gtaGFuZGxlLWJvcmRlci1jb2xvcjogICAgICAgICByZ2JhKCRibGFjaywgMC4xNSkgIWRlZmF1bHQ7XG4kc3dpdGNoLWhhbmRsZS1ob3Zlci1iZzogICAgICAgICAgICAgJGdyYXktMTAwICFkZWZhdWx0O1xuXG5cbi8vIFNlbGVjdDIgc2VsZWN0c1xuJHNlbGVjdDItbWF4LWhlaWdodDogICAgICAgICAgICAgICAgIDI4MHB4ICFkZWZhdWx0O1xuJHNlbGVjdDItZGlzYWJsZWQtb3BhY2l0eTogICAgICAgICAgIDAuNiAhZGVmYXVsdDtcbiRzZWxlY3QyLWN1c3RvbS1kaXNhYmxlZC1vcGFjaXR5OiAgICAwLjc1ICFkZWZhdWx0O1xuXG4kc2VsZWN0Mi1waWxscy1zcGFjZXI6ICAgICAgICAgICAgICAgMC4xMjVyZW0gIWRlZmF1bHQ7XG4kc2VsZWN0Mi1waWxscy1iZzogICAgICAgICAgICAgICAgICAgJGNvbG9yLXNsYXRlLTcwMCAhZGVmYXVsdDtcbiRzZWxlY3QyLXBpbGxzLWNvbG9yOiAgICAgICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kc2VsZWN0Mi1waWxscy1ob3Zlci1iZzogICAgICAgICAgICAgJHNlbGVjdDItcGlsbHMtYmcgIWRlZmF1bHQ7XG4kc2VsZWN0Mi1waWxscy1ob3Zlci1jb2xvcjogICAgICAgICAgJHNlbGVjdDItcGlsbHMtY29sb3IgIWRlZmF1bHQ7XG4kc2VsZWN0Mi1waWxscy1ib3JkZXItcmFkaXVzOiAgICAgICAgJGJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG5cbiRzZWxlY3QyLWxpZ2h0LXJlc3VsdHMtY29sb3I6ICAgICAgICAkZ3JheS02MDAgIWRlZmF1bHQ7XG4kc2VsZWN0Mi1kYXJrLXJlc3VsdHMtY29sb3I6ICAgICAgICAgcmdiYSgkd2hpdGUsIDAuNzUpICFkZWZhdWx0O1xuXG5cbi8vIE11bHRpc2VsZWN0XG4kbXVsdGlzZWxlY3QtbWF4LWhlaWdodDogICAgICAgICAgICAgMjgwcHggIWRlZmF1bHQ7XG4kbXVsdGlzZWxlY3QtZm9udC13ZWlnaHQ6ICAgICAgICAgICAgJGZvbnQtd2VpZ2h0LW5vcm1hbCAhZGVmYXVsdDtcbiRtdWx0aXNlbGVjdC10ZXh0LXRyYW5zZm9ybTogICAgICAgICBub25lICFkZWZhdWx0O1xuXG5cbi8vIFR5cGVhaGVhZFxuJHR5cGVhaGVhZC1tYXgtaGVpZ2h0OiAgICAgICAgICAgICAgIDM1MHB4ICFkZWZhdWx0O1xuJHR5cGVhaGVhZC1tYXgtaGVpZ2h0LXNjcm9sbGFibGU6ICAgIDI1MHB4ICFkZWZhdWx0O1xuXG5cbi8vIFRhZyBpbnB1dHNcbiR0YWdzLXNwYWNlcjogICAgICAgICAgICAgICAgICAgICAgICAwLjEyNXJlbSAhZGVmYXVsdDtcbiR0YWdzLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgICAkYm9keS1jb2xvciAhZGVmYXVsdDtcbiR0YWdzLWhvdmVyLWNvbG9yOiAgICAgICAgICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kdGFncy1iZzogICAgICAgICAgICAgICAgICAgICAgICAgICAgJGdyYXktMzAwICFkZWZhdWx0O1xuJHRhZ3MtaG92ZXItYmc6ICAgICAgICAgICAgICAgICAgICAgICRjb2xvci1ibHVlLTUwMCAhZGVmYXVsdDtcbiR0YWctZGlzYWJsZWQtb3BhY2l0eTogICAgICAgICAgICAgICAwLjUgIWRlZmF1bHQ7XG4kdGFnLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAgICAgICAgJGJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG5cblxuLy8gRm9ybSB3aXphcmRcbiR3aXphcmQtc3RlcC1saW5lLXNpemU6ICAgICAgICAgICAgICAycHggIWRlZmF1bHQ7XG4kd2l6YXJkLXN0ZXAtbGluZS1jb2xvcjogICAgICAgICAgICAgJGdyYXktMzAwICFkZWZhdWx0O1xuXG4kd2l6YXJkLXN0ZXAtbnVtYmVyLXNpemU6ICAgICAgICAgICAgcmVtLWNhbGMoMzhweCkgIWRlZmF1bHQ7XG4kd2l6YXJkLXN0ZXAtbnVtYmVyLWJnOiAgICAgICAgICAgICAgJGNhcmQtYmcgIWRlZmF1bHQ7XG4kd2l6YXJkLXN0ZXAtbnVtYmVyLWNvbG9yOiAgICAgICAgICAgJGdyYXktNTAwICFkZWZhdWx0O1xuJHdpemFyZC1zdGVwLW51bWJlci1hY3RpdmUtYmc6ICAgICAgICRjb2xvci1pbmZvLTUwMCAhZGVmYXVsdDtcbiR3aXphcmQtc3RlcC1udW1iZXItYWN0aXZlLWNvbG9yOiAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kd2l6YXJkLXN0ZXAtbnVtYmVyLWVycm9yLWJnOiAgICAgICAgJGNvbG9yLWRhbmdlci01MDAgIWRlZmF1bHQ7XG5cblxuXG4vL1xuLy8gVGV4dCBlZGl0b3JzXG4vL1xuLy8gU3VtbWVybm90ZSwgdHJ1bWJvd3lnLCBhY2UgY29kZSBlZGl0b3JcblxuLy8gU3VtbWVybm90ZSBlZGl0b3JcbiRzdW1tZXJub3RlLWJvcmRlci13aWR0aDogICAgICAgICAgICAkYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJHN1bW1lcm5vdGUtYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICRib3JkZXItY29sb3IgIWRlZmF1bHQ7XG4kc3VtbWVybm90ZS1mb250LXBhdGg6ICAgICAgICAgICAgICAgXCIuLi8uLi8uLi8uLi8uLi9pY29ucy9zdW1tZXJub3RlL1wiICFkZWZhdWx0O1xuJHN1bW1lcm5vdGUtaWNvbi1mb250LXNpemU6ICAgICAgICAgIDAuODc1cmVtICFkZWZhdWx0O1xuJHN1bW1lcm5vdGUtbWluLWhlaWdodDogICAgICAgICAgICAgIHJlbS1jYWxjKDE1MHB4KSAhZGVmYXVsdDtcblxuJHN1bW1lcm5vdGUtcmVzaXplci13aWR0aDogICAgICAgICAgIDEuMjVyZW0gIWRlZmF1bHQ7XG4kc3VtbWVybm90ZS1yZXNpemVyLWhlaWdodDogICAgICAgICAgJGJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiRzdW1tZXJub3RlLXJlc2l6ZXItY29sb3I6ICAgICAgICAgICAkYm9yZGVyLWNvbG9yICFkZWZhdWx0O1xuXG5cbi8vIFRydW1ib3d5ZyBlZGl0b3JcbiR0cnVtYm93eWctbWluLWhlaWdodDogICAgICAgICAgICAgICAzNTBweCAhZGVmYXVsdDtcblxuJHRydW1ib3d5Zy1ib3JkZXItd2lkdGg6ICAgICAgICAgICAgICRib3JkZXItd2lkdGggIWRlZmF1bHQ7XG4kdHJ1bWJvd3lnLWJvcmRlci1jb2xvcjogICAgICAgICAgICAgJGJvcmRlci1jb2xvciAhZGVmYXVsdDtcblxuJHRydW1ib3d5Zy10b29sYmFyLWJnOiAgICAgICAgICAgICAgICRncmF5LTEwMCAhZGVmYXVsdDtcbiR0cnVtYm93eWctdG9vbGJhci1ob3Zlci1iZzogICAgICAgICAkZ3JheS0zMDAgIWRlZmF1bHQ7XG4kdHJ1bWJvd3lnLXRvb2xiYXItY29sb3I6ICAgICAgICAgICAgJGJvZHktY29sb3IgIWRlZmF1bHQ7XG4kdHJ1bWJvd3lnLXRvb2xiYXItYm9yZGVyLXdpZHRoOiAgICAgJGJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiR0cnVtYm93eWctdG9vbGJhci1ib3JkZXItY29sb3I6ICAgICAkYm9yZGVyLWNvbG9yICFkZWZhdWx0O1xuJHRydW1ib3d5Zy10b29sYmFyLWRpdmlkZXItd2lkdGg6ICAgIDFweCAhZGVmYXVsdDtcbiR0cnVtYm93eWctdG9vbGJhci1oZWlnaHQ6ICAgICAgICAgICAoJGJ0bi1wYWRkaW5nLXggKiAyKSArICRpY29uLWZvbnQtc2l6ZSArIHJlbS1jYWxjKCR0cnVtYm93eWctdG9vbGJhci1ib3JkZXItd2lkdGggKiAyKSAhZGVmYXVsdDtcblxuXG4vLyBBY2UgY29kZSBlZGl0b3JcbiRhY2UtaGVpZ2h0OiAgICAgICAgICAgICAgICAgICAgICAgICA0NTBweCAhZGVmYXVsdDtcblxuXG5cbi8vXG4vLyBQaWNrZXJzXG4vL1xuLy8gRGF0ZSwgdGltZSBhbmQgY29sb3IgcGlja2Vyc1xuXG4vLyBDb21tb24gc3R5bGVzIGZvciBkYXRlIHBpY2tlcnNcbiRkYXRlcGlja2VyLXBhZGRpbmc6ICAgICAgICAgICAgICAgIDAuOTM3NXJlbSAhZGVmYXVsdDtcbiRkYXRlcGlja2VyLXRpdGxlLWZvbnQtc2l6ZTogICAgICAgICRoNi1mb250LXNpemUgIWRlZmF1bHQ7XG5cbiRkYXRlcGlja2VyLWl0ZW0tcGFkZGluZzogICAgICAgICAgICRpbnB1dC1idG4tcGFkZGluZy15ICFkZWZhdWx0O1xuJGRhdGVwaWNrZXItaXRlbS13ZWVrZGF5LWNvbG9yOiAgICAgJGdyYXktNjAwICFkZWZhdWx0O1xuJGRhdGVwaWNrZXItaXRlbS15ZWFyLWNvbG9yOiAgICAgICAgJGdyYXktNjAwICFkZWZhdWx0O1xuJGRhdGVwaWNrZXItaXRlbS1mb2N1c291dC1jb2xvcjogICAgJGdyYXktNTAwICFkZWZhdWx0O1xuJGRhdGVwaWNrZXItaXRlbS1ob3Zlci1jb2xvcjogICAgICAgJGJvZHktY29sb3IgIWRlZmF1bHQ7XG4kZGF0ZXBpY2tlci1pdGVtLWhvdmVyLWJnOiAgICAgICAgICAkZ3JheS0yMDAgIWRlZmF1bHQ7XG4kZGF0ZXBpY2tlci1pdGVtLWFjdGl2ZS1jb2xvcjogICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kZGF0ZXBpY2tlci1pdGVtLWFjdGl2ZS1iZzogICAgICAgICAkY29sb3ItdGVhbC00MDAgIWRlZmF1bHQ7XG4kZGF0ZXBpY2tlci1pdGVtLXRvZGF5LWNvbG9yOiAgICAgICAkYm9keS1jb2xvciAhZGVmYXVsdDtcbiRkYXRlcGlja2VyLWl0ZW0tdG9kYXktYmc6ICAgICAgICAgICRncmF5LTIwMCAhZGVmYXVsdDtcbiRkYXRlcGlja2VyLWl0ZW0tZGlzYWJsZWQtY29sb3I6ICAgICRncmF5LTYwMCAhZGVmYXVsdDtcbiRkYXRlcGlja2VyLWl0ZW0tZGlzYWJsZWQtYmc6ICAgICAgIHRyYW5zcGFyZW50ICFkZWZhdWx0O1xuXG5cbi8vIFBpY2stYS1kYXRlIHBpY2tlclxuJHBpY2thZGF0ZS1tYXgtd2lkdGg6ICAgICAgICAgICAgICAgMTguMTNyZW0gIWRlZmF1bHQ7XG4kcGlja2FkYXRlLW1heC1oZWlnaHQ6ICAgICAgICAgICAgICA0ODBweCAhZGVmYXVsdDtcblxuXG4vLyBQaWNrLWEtdGltZSBwaWNrZXJcbiRwaWNrYXRpbWUtbWF4LWhlaWdodDogICAgICAgICAgICAgIDI1MHB4ICFkZWZhdWx0O1xuJHBpY2thdGltZS1taW4td2lkdGg6ICAgICAgICAgICAgICAgMTZyZW0gIWRlZmF1bHQ7XG4kcGlja2F0aW1lLW1heC13aWR0aDogICAgICAgICAgICAgICAyMHJlbSAhZGVmYXVsdDtcblxuXG4vLyBBbnl0aW1lIHBpY2tlclxuJGFueXRpbWUteWVhci1idG4tYmc6ICAgICAgICAgICAgICAgJGNvbG9yLWRhbmdlci01MDAgIWRlZmF1bHQ7XG4kYW55dGltZS15ZWFyLWJ0bi1jb2xvcjogICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG5cbiRhbnl0aW1lLW1vbnRoLWJ0bi1iZzogICAgICAgICAgICAgICRjb2xvci10ZWFsLTQwMCAhZGVmYXVsdDtcbiRhbnl0aW1lLW1vbnRoLWJ0bi1jb2xvcjogICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcblxuJGFueXRpbWUtdGltZS1idG4tYmc6ICAgICAgICAgICAgICAgJGNvbG9yLXNsYXRlLTUwMCAhZGVmYXVsdDtcbiRhbnl0aW1lLXRpbWUtYnRuLWNvbG9yOiAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcblxuXG4vLyBTcGVjdHJ1bSBjb2xvciBwaWNrZXJcbiRzcGVjdHJ1bS1wYWRkaW5nOiAgICAgICAgICAgICAgICAgIDAuNjI1cmVtICFkZWZhdWx0O1xuJHNwZWN0cnVtLXdpZHRoOiAgICAgICAgICAgICAgICAgICAgMTMuNzVyZW0gIWRlZmF1bHQ7XG4kc3BlY3RydW0tbWF4LXdpZHRoOiAgICAgICAgICAgICAgICAxMy43NXJlbSAhZGVmYXVsdDtcblxuJHNwZWN0cnVtLWNob29zZS1idG4tYmc6ICAgICAgICAgICAgJGNvbG9yLXNsYXRlLTUwMCAhZGVmYXVsdDtcbiRzcGVjdHJ1bS1jaG9vc2UtYnRuLWNvbG9yOiAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcblxuXG5cbi8vXG4vLyBGaWxlIHVwbG9hZGVyc1xuLy9cbi8vIFBsdXBsb2FkLCBCb290c3RyYXAgZmlsZSBpbnB1dCBhbmQgZHJvcHpvbmVcblxuLy8gUGx1cGxvYWQgdXBsb2FkZXJcbiRwbHVwbG9hZC1tYXgtaGVpZ2h0OiAgICAgICAgICAgICAgICAgICAgICAgMjUwcHggIWRlZmF1bHQ7XG4kcGx1cGxvYWQtYmc6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICNmY2ZjZmMgIWRlZmF1bHQ7XG4kcGx1cGxvYWQtYm9yZGVyLXdpZHRoOiAgICAgICAgICAgICAgICAgICAgICgkYm9yZGVyLXdpZHRoICogMikgIWRlZmF1bHQ7XG4kcGx1cGxvYWQtYm9yZGVyLXN0eWxlOiAgICAgICAgICAgICAgICAgICAgIGRhc2hlZCAhZGVmYXVsdDtcbiRwbHVwbG9hZC1ib3JkZXItY29sb3I6ICAgICAgICAgICAgICAgICAgICAgJGdyYXktNDAwICFkZWZhdWx0O1xuXG4kcGx1cGxvYWQtaGVhZGVyLWJnOiAgICAgICAgICAgICAgICAgICAgICAgICRjb2xvci1zbGF0ZS04MDAgIWRlZmF1bHQ7XG4kcGx1cGxvYWQtaGVhZGVyLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcblxuJHBsdXBsb2FkLXBsYWNlaG9sZGVyLWljb24tY29sb3I6ICAgICAgICAgICAkZ3JheS01MDAgIWRlZmF1bHQ7XG4kcGx1cGxvYWQtcGxhY2Vob2xkZXItdGV4dC1jb2xvcjogICAgICAgICAgICRncmF5LTcwMCAhZGVmYXVsdDtcblxuJHBsdXBsb2FkLWJ0bi1zdGFydC1iZzogICAgICAgICAgICAgICAgICAgICB0aGVtZS1jb2xvcigncHJpbWFyeScpICFkZWZhdWx0O1xuJHBsdXBsb2FkLWJ0bi1zdGFydC1ib3JkZXItY29sb3I6ICAgICAgICAgICAkcGx1cGxvYWQtYnRuLXN0YXJ0LWJnICFkZWZhdWx0O1xuJHBsdXBsb2FkLWJ0bi1zdGFydC1jb2xvcjogICAgICAgICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG5cblxuLy8gQm9vdHN0cmFwIGZpbGUgaW5wdXRcbiRmaWxlaW5wdXQtcHJldmlldy1zcGFjZXI6ICAgICAgICAgICAgICAgICAgMC41cmVtICFkZWZhdWx0O1xuJGZpbGVpbnB1dC1wcmV2aWV3LXRodW1iLXdpZHRoOiAgICAgICAgICAgICAxMHJlbSAhZGVmYXVsdDtcbiRmaWxlaW5wdXQtcHJldmlldy10aHVtYi1oZWlnaHQ6ICAgICAgICAgICAgMTByZW0gIWRlZmF1bHQ7XG4kZmlsZWlucHV0LXByZXZpZXctdGh1bWItY2FwdGlvbi1zcGFjZXI6ICAgIDAuNzVyZW0gIWRlZmF1bHQ7XG4kZmlsZWlucHV0LXByZXZpZXctZm9vdGVyLWJnOiAgICAgICAgICAgICAgICRncmF5LTEwMCAhZGVmYXVsdDtcbiRmaWxlaW5wdXQtcHJldmlldy1wcm9ncmVzcy1oZWlnaHQ6ICAgICAgICAgMC4zNzVyZW0gIWRlZmF1bHQ7XG4kZmlsZWlucHV0LXByZXZpZXctZnJhbWUtYmc6ICAgICAgICAgICAgICAgICRjYXJkLWJnICFkZWZhdWx0O1xuJGZpbGVpbnB1dC1wcmV2aWV3LWZyYW1lLWJvcmRlci13aWR0aDogICAgICAkYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJGZpbGVpbnB1dC1wcmV2aWV3LWZyYW1lLWJvcmRlci1jb2xvcjogICAgICAkYm9yZGVyLWNvbG9yICFkZWZhdWx0O1xuXG5cbi8vIERyb3B6b25lXG4kZHJvcHpvbmUtbWluLWhlaWdodDogICAgICAgICAgICAgICAgICAgICAgIDE4cmVtICFkZWZhdWx0O1xuJGRyb3B6b25lLXNwYWNlcjogICAgICAgICAgICAgICAgICAgICAgICAgICAwLjMxMjVyZW0gIWRlZmF1bHQ7XG5cbiRkcm9wem9uZS1iZzogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgI2ZjZmNmYyAhZGVmYXVsdDtcbiRkcm9wem9uZS1ib3JkZXItd2lkdGg6ICAgICAgICAgICAgICAgICAgICAgKCRib3JkZXItd2lkdGggKiAyKSAhZGVmYXVsdDtcbiRkcm9wem9uZS1ib3JkZXItc3R5bGU6ICAgICAgICAgICAgICAgICAgICAgZGFzaGVkICFkZWZhdWx0O1xuJGRyb3B6b25lLWJvcmRlci1jb2xvcjogICAgICAgICAgICAgICAgICAgICAkZ3JheS00MDAgIWRlZmF1bHQ7XG5cbiRkcm9wem9uZS1wbGFjZWhvbGRlci1pY29uLXNpemU6ICAgICAgICAgICAgKCRpY29uLWZvbnQtc2l6ZSAqIDQpICFkZWZhdWx0O1xuJGRyb3B6b25lLXBsYWNlaG9sZGVyLWljb24tY29sb3I6ICAgICAgICAgICAkZ3JheS01MDAgIWRlZmF1bHQ7XG4kZHJvcHpvbmUtcGxhY2Vob2xkZXItdGV4dC1jb2xvcjogICAgICAgICAgICRncmF5LTcwMCAhZGVmYXVsdDtcblxuJGRyb3B6b25lLWRyYWctYmc6ICAgICAgICAgICAgICAgICAgICAgICAgICAkZ3JheS0yMDAgIWRlZmF1bHQ7XG4kZHJvcHpvbmUtZHJhZy1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICRncmF5LTQwMCAhZGVmYXVsdDtcbiRkcm9wem9uZS1kcmFnLWJvcmRlci1jb2xvcjogICAgICAgICAgICAgICAgJGdyYXktNjAwICFkZWZhdWx0O1xuXG4kZHJvcHpvbmUtcHJldmlldy1zcGFjZXI6ICAgICAgICAgICAgICAgICAgIDAuNXJlbSAhZGVmYXVsdDtcbiRkcm9wem9uZS1wcmV2aWV3LXdpZHRoOiAgICAgICAgICAgICAgICAgICAgMTByZW0gIWRlZmF1bHQ7XG5cblxuXG4vL1xuLy8gTm90aWZpY2F0aW9uc1xuLy9cbi8vIFN3ZWV0IGFsZXJ0IGFuZCBub3R5LmpzIG5vdGlmaWNhdGlvbiBsaWJyYXJpZXNcblxuLy8gQ29tbW9uIHN0eWxlc1xuJG5vdGlmaWNhdGlvbi13aWR0aDogICAgICAgICAgICAgICAgICAgMjByZW0gIWRlZmF1bHQ7XG4kbm90aWZpY2F0aW9uLWd1dHRlci15OiAgICAgICAgICAgICAgICAkc3BhY2VyICFkZWZhdWx0O1xuJG5vdGlmaWNhdGlvbi1ndXR0ZXIteDogICAgICAgICAgICAgICAgJGNvbnRlbnQtY29udGFpbmVyLXBhZGRpbmcteCAhZGVmYXVsdDtcbiRub3RpZmljYXRpb24tYm94LXNoYWRvdzogICAgICAgICAgICAgICRkcm9wZG93bi1ib3gtc2hhZG93ICFkZWZhdWx0O1xuXG5cbi8vIE5vdHkuanNcbiRub3R5LXNwYWNlci15OiAgICAgICAgICAgICAgICAgICAgICAgIDAuMjVyZW0gIWRlZmF1bHQ7XG5cbiRub3RpZmljYXRpb24tYWxlcnQtYmc6ICAgICAgICAgICAgICAgICRjb2xvci1zbGF0ZS02MDAgIWRlZmF1bHQ7XG4kbm90aWZpY2F0aW9uLWFsZXJ0LWNvbG9yOiAgICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kbm90aWZpY2F0aW9uLWFsZXJ0LWJvcmRlci1jb2xvcjogICAgICAkbm90aWZpY2F0aW9uLWFsZXJ0LWJnICFkZWZhdWx0O1xuXG4kbm90aWZpY2F0aW9uLXdhcm5pbmctYmc6ICAgICAgICAgICAgICAkY29sb3Itd2FybmluZy00MDAgIWRlZmF1bHQ7XG4kbm90aWZpY2F0aW9uLXdhcm5pbmctY29sb3I6ICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kbm90aWZpY2F0aW9uLXdhcm5pbmctYm9yZGVyLWNvbG9yOiAgICAkbm90aWZpY2F0aW9uLXdhcm5pbmctYmcgIWRlZmF1bHQ7XG5cbiRub3RpZmljYXRpb24tZXJyb3ItYmc6ICAgICAgICAgICAgICAgICRjb2xvci1kYW5nZXItNDAwICFkZWZhdWx0O1xuJG5vdGlmaWNhdGlvbi1lcnJvci1jb2xvcjogICAgICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJG5vdGlmaWNhdGlvbi1lcnJvci1ib3JkZXItY29sb3I6ICAgICAgJG5vdGlmaWNhdGlvbi1lcnJvci1iZyAhZGVmYXVsdDtcblxuJG5vdGlmaWNhdGlvbi1pbmZvLWJnOiAgICAgICAgICAgICAgICAgJGNvbG9yLWJsdWUtNTAwICFkZWZhdWx0O1xuJG5vdGlmaWNhdGlvbi1pbmZvLWNvbG9yOiAgICAgICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJG5vdGlmaWNhdGlvbi1pbmZvLWJvcmRlci1jb2xvcjogICAgICAgJG5vdGlmaWNhdGlvbi1pbmZvLWJnICFkZWZhdWx0O1xuXG4kbm90aWZpY2F0aW9uLXN1Y2Nlc3MtYmc6ICAgICAgICAgICAgICAkY29sb3Itc3VjY2Vzcy01MDAgIWRlZmF1bHQ7XG4kbm90aWZpY2F0aW9uLXN1Y2Nlc3MtY29sb3I6ICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kbm90aWZpY2F0aW9uLXN1Y2Nlc3MtYm9yZGVyLWNvbG9yOiAgICAkbm90aWZpY2F0aW9uLXN1Y2Nlc3MtYmcgIWRlZmF1bHQ7XG5cbiRub3R5LXByb2dyZXNzLWhlaWdodDogICAgICAgICAgICAgICAgIDAuMTg3NXJlbSAhZGVmYXVsdDtcbiRub3R5LXByb2dyZXNzLWJnOiAgICAgICAgICAgICAgICAgICAgIHJnYmEoJGJsYWNrLCAwLjI1KSAhZGVmYXVsdDtcblxuXG4vLyBTd2VldCBhbGVydCAyXG4kc3dhbC1wYWRkaW5nOiAgICAgICAgICAgICAgICAgICAgICAgICAxLjI1cmVtICFkZWZhdWx0O1xuJHN3YWwtd2lkdGg6ICAgICAgICAgICAgICAgICAgICAgICAgICAgMzEuMjVyZW0gIWRlZmF1bHQ7XG4kc3dhbC1tYXJnaW4teDogICAgICAgICAgICAgICAgICAgICAgICAkY29udGVudC1jb250YWluZXItcGFkZGluZy14ICFkZWZhdWx0O1xuXG4kc3dhbDItaWNvbi1zaXplOiAgICAgICAgICAgICAgICAgICAgICA1cmVtICFkZWZhdWx0O1xuJHN3YWwyLWljb24tYm9yZGVyLXdpZHRoOiAgICAgICAgICAgICAgMC4yNXJlbSAhZGVmYXVsdDtcbiRzd2FsMi1pY29uLXNwYWNlcjogICAgICAgICAgICAgICAgICAgIDFyZW0gIWRlZmF1bHQ7XG5cbiRzd2FsMi1zdGVwLWluYWN0aXZlLWNvbG9yOiAgICAgICAgICAgICR0ZXh0LW11dGVkICFkZWZhdWx0O1xuJHN3YWwyLXN0ZXAtYWN0aXZlLWNvbG9yOiAgICAgICAgICAgICAgJGNvbG9yLXByaW1hcnktNTAwICFkZWZhdWx0O1xuJHN3YWwyLXN0ZXAtY29tcGxldGUtY29sb3I6ICAgICAgICAgICAgJHN3YWwyLXN0ZXAtYWN0aXZlLWNvbG9yICFkZWZhdWx0O1xuJHN3YWwyLXN0ZXAtbGluZS1jb2xvcjogICAgICAgICAgICAgICAgJGdyYXktNDAwICFkZWZhdWx0O1xuXG4kc3dhbDItZXJyb3ItY29sb3I6ICAgICAgICAgICAgICAgICAgICAkY29sb3ItZGFuZ2VyLTQwMCAhZGVmYXVsdDtcbiRzd2FsMi1lcnJvci1ib3JkZXItY29sb3I6ICAgICAgICAgICAgICRzd2FsMi1lcnJvci1jb2xvciAhZGVmYXVsdDtcblxuJHN3YWwyLXdhcm5pbmctY29sb3I6ICAgICAgICAgICAgICAgICAgJGNvbG9yLXdhcm5pbmctNDAwICFkZWZhdWx0O1xuJHN3YWwyLXdhcm5pbmctYm9yZGVyLWNvbG9yOiAgICAgICAgICAgJHN3YWwyLXdhcm5pbmctY29sb3IgIWRlZmF1bHQ7XG5cbiRzd2FsMi1pbmZvLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICRjb2xvci1ibHVlLTUwMCAhZGVmYXVsdDtcbiRzd2FsMi1pbmZvLWJvcmRlci1jb2xvcjogICAgICAgICAgICAgICRzd2FsMi1pbmZvLWNvbG9yICFkZWZhdWx0O1xuXG4kc3dhbDItcXVlc3Rpb24tY29sb3I6ICAgICAgICAgICAgICAgICAkY29sb3Itc2xhdGUtNzAwICFkZWZhdWx0O1xuJHN3YWwyLXF1ZXN0aW9uLWJvcmRlci1jb2xvcjogICAgICAgICAgJHN3YWwyLXF1ZXN0aW9uLWNvbG9yICFkZWZhdWx0O1xuXG4kc3dhbDItc3VjY2Vzcy1jb2xvcjogICAgICAgICAgICAgICAgICAkY29sb3Itc3VjY2Vzcy00MDAgIWRlZmF1bHQ7XG4kc3dhbDItc3VjY2Vzcy1ib3JkZXItY29sb3I6ICAgICAgICAgICAkc3dhbDItc3VjY2Vzcy1jb2xvciAhZGVmYXVsdDtcblxuXG5cbi8vXG4vLyBUYWJsZXNcbi8vXG4vLyBIYW5kc29udGFibGUgYW5kIGRhdGF0YWJsZXMuanMgbGlicmFyaWVzXG5cbi8vIEhhbmRzb250YWJsZVxuJGhvdC1yb3ctaGVhZGVyLXdpZHRoOiAgICAgICAgICAgICAgIDVyZW0gIWRlZmF1bHQ7XG4kaG90LWNlbGwtaGVpZ2h0OiAgICAgICAgICAgICAgICAgICAgMS44NzVyZW0gIWRlZmF1bHQ7XG4kaG90LWNlbGwtYmc6ICAgICAgICAgICAgICAgICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJGhvdC1oZWFkZXItYmc6ICAgICAgICAgICAgICAgICAgICAgICRncmF5LTIwMCAhZGVmYXVsdDtcbiRob3Qtc2VhcmNoLXJlc3VsdC1iZzogICAgICAgICAgICAgICAkY29sb3Itb3JhbmdlLTUwICFkZWZhdWx0O1xuJGhvdC1jZWxsLXBhZGRpbmcteTogICAgICAgICAgICAgICAgIDAuMzEyNXJlbSAhZGVmYXVsdDtcbiRob3QtY2VsbC1wYWRkaW5nLXg6ICAgICAgICAgICAgICAgICAwLjI1cmVtICFkZWZhdWx0O1xuJGhvdC1kYXRlcGlja2VyLXdpZHRoOiAgICAgICAgICAgICAgIDE1LjYzcmVtICFkZWZhdWx0O1xuJGhvdC1jZWxsLWhpZ2hsaWdodC1iZzogICAgICAgICAgICAgICRjb2xvci1wcmltYXJ5LTUwICFkZWZhdWx0O1xuJGhvdC1jZWxsLWhpZ2hsaWdodC1ib3JkZXItY29sb3I6ICAgICRjb2xvci1wcmltYXJ5LTUwMCAhZGVmYXVsdDtcbiRob3Qtc2Nyb2xsYWJsZS1tYXgtaGVpZ2h0OiAgICAgICAgICAyMi41cmVtICFkZWZhdWx0O1xuXG5cbi8vIERhdGF0YWJsZXNcbiRkdC1zcGFjZXIteTogICAgICAgICAgICAgICAgICAgICAgICAkc3BhY2VyICFkZWZhdWx0O1xuJGR0LXNwYWNlci14OiAgICAgICAgICAgICAgICAgICAgICAgICRjYXJkLXNwYWNlci14ICFkZWZhdWx0O1xuJGR0LWZpbHRlci13aWR0aDogICAgICAgICAgICAgICAgICAgIDEyLjVyZW0gIWRlZmF1bHQ7XG4kZHQtY29udHJvbHMtbGFiZWwtc3BhY2VyLXk6ICAgICAgICAgKCRpbnB1dC1wYWRkaW5nLXkgKyByZW0tY2FsYygkaW5wdXQtYm9yZGVyLXdpZHRoKSkgIWRlZmF1bHQ7XG4kZHQtY29udHJvbHMtbGFiZWwtc3BhY2VyLXg6ICAgICAgICAgKCRkdC1zcGFjZXIteCAvIDEuNSkgIWRlZmF1bHQ7XG5cbiRkdC1wYWdpbmF0aW9uLWFjdGl2ZS1iZzogICAgICAgICAgICAkY29sb3Itc2xhdGUtODAwICFkZWZhdWx0O1xuJGR0LXBhZ2luYXRpb24tYWN0aXZlLWNvbG9yOiAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcblxuJGR0LWJ1dHRvbi1jb2xsZWN0aW9uLTJjb2wtd2lkdGg6ICAgIDE4Ljc1cmVtICFkZWZhdWx0O1xuJGR0LWJ1dHRvbi1jb2xsZWN0aW9uLTNjb2wtd2lkdGg6ICAgIDI4LjEzcmVtICFkZWZhdWx0O1xuJGR0LWJ1dHRvbi1jb2xsZWN0aW9uLTRjb2wtd2lkdGg6ICAgIDM3LjVyZW0gIWRlZmF1bHQ7XG5cbiRkdC1leHQtc2VsZWN0LWFjdGl2ZS1yb3ctYmc6ICAgICAgICAkY29sb3Itc3VjY2Vzcy01MCAhZGVmYXVsdDtcblxuXG5cbi8vXG4vLyBNaXNjIGNvbXBvbmVudHNcbi8vXG4vLyBPdGhlciBjdXN0b20gM3JkIHBhcnR5IGV4dGVuc2lvbnMgYW5kIGxpYnJhcmllc1xuXG4vLyBGQUIgKGZsb2F0aW5nIGFjdGlvbiBidXR0b24pXG4kZmFiLW1haW4tYnRuLXNpemU6ICAgICAgICAgICAgICAgICAgICAoKCRidG4tZmxvYXQtcGFkZGluZyArICgkaWNvbi1mb250LXNpemUgLyAyKSkgKiAyKSAhZGVmYXVsdDtcbiRmYWItYnRuLWdhcDogICAgICAgICAgICAgICAgICAgICAgICAgIDAuMTI1cmVtICFkZWZhdWx0O1xuJGZhYi1ndXR0ZXIteDogICAgICAgICAgICAgICAgICAgICAgICAgJGNvbnRlbnQtY29udGFpbmVyLXBhZGRpbmcteCAhZGVmYXVsdDtcblxuJGZhYi1pbm5lci1idG4tc2l6ZTogICAgICAgICAgICAgICAgICAgKCgkYnRuLWZsb2F0LXBhZGRpbmcgLSAkZmFiLWJ0bi1nYXApICogMikgKyAkaWNvbi1mb250LXNpemUgIWRlZmF1bHQ7XG4kZmFiLWlubmVyLWJ0bi1zcGFjaW5nOiAgICAgICAgICAgICAgICAkc3BhY2VyICFkZWZhdWx0O1xuXG4kZmFiLWJhZGdlLXNwYWNlci14OiAgICAgICAgICAgICAgICAgICAwLjI1cmVtICFkZWZhdWx0O1xuJGZhYi1iYWRnZS1zcGFjZXIteTogICAgICAgICAgICAgICAgICAgJGZhYi1iYWRnZS1zcGFjZXIteCAhZGVmYXVsdDtcblxuJGZhYi1sYWJlbC1saWdodC1iZzogICAgICAgICAgICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJGZhYi1sYWJlbC1saWdodC1jb2xvcjogICAgICAgICAgICAgICAgJGJvZHktY29sb3IgIWRlZmF1bHQ7XG5cblxuLy8gRnVsbGNhbGVuZGFyXG4kZnVsbGNhbGVuZGFyLWJnOiAgICAgICAgICAgICAgICAgICAgICAkY2FyZC1iZyAhZGVmYXVsdDtcblxuJGZ1bGxjYWxlbmRhci1ldmVudC1iZzogICAgICAgICAgICAgICAgJGNvbG9yLWJsdWUtNjAwICFkZWZhdWx0O1xuJGZ1bGxjYWxlbmRhci1ldmVudC1jb2xvcjogICAgICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJGZ1bGxjYWxlbmRhci1ldmVudC1ib3JkZXItd2lkdGg6ICAgICAgJGJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiRmdWxsY2FsZW5kYXItZXZlbnQtYm9yZGVyLWNvbG9yOiAgICAgICRjb2xvci1ibHVlLTYwMCAhZGVmYXVsdDtcblxuJGZ1bGxjYWxlbmRhci1ldmVudC1zcGFjZXI6ICAgICAgICAgICAgMC41cmVtICFkZWZhdWx0O1xuJGZ1bGxjYWxlbmRhci1ldmVudC1wYWRkaW5nLXk6ICAgICAgICAgMC4yNXJlbSAhZGVmYXVsdDtcbiRmdWxsY2FsZW5kYXItZXZlbnQtcGFkZGluZy14OiAgICAgICAgIDAuNXJlbSAhZGVmYXVsdDtcblxuJGZ1bGxjYWxlbmRhci1ldmVudC1yZXNpemVyLXNpemUtaDogICAgMC41cmVtICFkZWZhdWx0O1xuJGZ1bGxjYWxlbmRhci1ldmVudC1yZXNpemVyLXNpemUtdjogICAgMC41cmVtICFkZWZhdWx0O1xuXG4kZnVsbGNhbGVuZGFyLXRvZGF5LWJnOiAgICAgICAgICAgICAgICAkY29sb3Itc3VjY2Vzcy01MCAhZGVmYXVsdDtcbiRmdWxsY2FsZW5kYXItYmdldmVudC1iZzogICAgICAgICAgICAgIHJnYmEoJGNvbG9yLXN1Y2Nlc3MtMzAwLCAwLjMpICFkZWZhdWx0O1xuJGZ1bGxjYWxlbmRhci1ub25idXNpbmVzcy1iZzogICAgICAgICAgcmdiYSgkZ3JheS00MDAsIDAuMykgIWRlZmF1bHQ7XG4kZnVsbGNhbGVuZGFyLWhpZ2hsaWdodC1iZzogICAgICAgICAgICByZ2JhKCRncmF5LTQwMCwgMC4zKSAhZGVmYXVsdDtcbiRmdWxsY2FsZW5kYXItd2Vla2RheS1iZzogICAgICAgICAgICAgICRncmF5LTEwMCAhZGVmYXVsdDtcbiRmdWxsY2FsZW5kYXItd2Vla2RheS1jb2xvcjogICAgICAgICAgIHJnYmEoJGJvZHktY29sb3IsIDAuNSkgIWRlZmF1bHQ7XG5cblxuLy8gU2xpZGVycyAoc2hhcmVkIHN0eWxlcylcbiRzbGlkZXItYmc6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICRncmF5LTMwMCAhZGVmYXVsdDtcbiRzbGlkZXItY29ubmVjdC1iZzogICAgICAgICAgICAgICAgICAgICRjb2xvci1zbGF0ZS01MDAgIWRlZmF1bHQ7XG4kc2xpZGVyLWRpc2FibGVkLW9wYWNpdHk6ICAgICAgICAgICAgICAwLjc1ICFkZWZhdWx0O1xuJHNsaWRlci1ib3gtc2hhZG93OiAgICAgICAgICAgICAgICAgICAgaW5zZXQgMCAxcHggMXB4IHJnYmEoJGJsYWNrLCAwLjEpICFkZWZhdWx0O1xuXG4kc2xpZGVyLWhlaWdodDogICAgICAgICAgICAgICAgICAgICAgICAwLjM3NXJlbSAhZGVmYXVsdDtcbiRzbGlkZXItaGVpZ2h0LWxnOiAgICAgICAgICAgICAgICAgICAgICgkc2xpZGVyLWhlaWdodCArIDAuMTI1cmVtKSAhZGVmYXVsdDtcbiRzbGlkZXItaGVpZ2h0LXNtOiAgICAgICAgICAgICAgICAgICAgICgkc2xpZGVyLWhlaWdodCAtIDAuMTI1cmVtKSAhZGVmYXVsdDtcbiRzbGlkZXItdmVydGljYWwtaGVpZ2h0OiAgICAgICAgICAgICAgIDEwcmVtICFkZWZhdWx0O1xuXG4kc2xpZGVyLWhhbmRsZS1iZzogICAgICAgICAgICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kc2xpZGVyLWhhbmRsZS1pbm5lci1iZzogICAgICAgICAgICAgICAkZ3JheS05MDAgIWRlZmF1bHQ7XG4kc2xpZGVyLWhhbmRsZS1ib3JkZXItd2lkdGg6ICAgICAgICAgICAkYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJHNsaWRlci1oYW5kbGUtYm9yZGVyLWNvbG9yOiAgICAgICAgICAgJGdyYXktNTAwICFkZWZhdWx0O1xuJHNsaWRlci1oYW5kbGUtaG92ZXItYmc6ICAgICAgICAgICAgICAgJGdyYXktMTAwICFkZWZhdWx0O1xuJHNsaWRlci1oYW5kbGUtaW5uZXItaG92ZXItYmc6ICAgICAgICAgJGdyYXktODAwICFkZWZhdWx0O1xuXG4kc2xpZGVyLXBpcHMtY29sb3I6ICAgICAgICAgICAgICAgICAgICAkZ3JheS03MDAgIWRlZmF1bHQ7XG4kc2xpZGVyLXBpcHMtc3BhY2VyLXk6ICAgICAgICAgICAgICAgICAxcmVtICFkZWZhdWx0O1xuJHNsaWRlci1waXBzLW1hcmtlci13aWR0aDogICAgICAgICAgICAgMC4wNjI1cmVtICFkZWZhdWx0O1xuJHNsaWRlci1waXBzLW1hcmtlci1oZWlnaHQ6ICAgICAgICAgICAgMC4xODc1cmVtICFkZWZhdWx0O1xuJHNsaWRlci1waXBzLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgJGZvbnQtc2l6ZS14cyAhZGVmYXVsdDtcbiRzbGlkZXItcGlwcy1saW5lLWhlaWdodDogICAgICAgICAgICAgICRsaW5lLWhlaWdodC14cyAhZGVmYXVsdDtcblxuXG4vLyBJbWFnZSBjcm9wcGVyXG4kY3JvcHBlci1ncmlkLXNpemU6ICAgICAgICAgICAgICAgICAgICAkYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJGNyb3BwZXItZ3JpZC1jb2xvcjogICAgICAgICAgICAgICAgICAgJGdyYXktMzAwICFkZWZhdWx0O1xuJGNyb3BwZXItZ3JpZC1jZW50ZXItc2l6ZTogICAgICAgICAgICAgKCRib3JkZXItd2lkdGggKiA5KSAhZGVmYXVsdDtcblxuJGNyb3BwZXItcmVzaXplci1jb2xvcjogICAgICAgICAgICAgICAgJGNvbG9yLXByaW1hcnktNTAwICFkZWZhdWx0O1xuJGNyb3BwZXItcmVzaXplci1zaXplOiAgICAgICAgICAgICAgICAgMC4zNzVyZW0gIWRlZmF1bHQ7XG4kY3JvcHBlci1yZXNpemVyLXNpemUtbGc6ICAgICAgICAgICAgICAxLjI1cmVtICFkZWZhdWx0O1xuXG5cbi8vIEZhbmN5Ym94XG4kZmFuY3lib3gtbmF2LXNwYWNlci14OiAgICAgICAgICAgICAgICAwLjYyNXJlbSAhZGVmYXVsdDtcbiRmYW5jeWJveC1uYXYtc3BhY2VyLXk6ICAgICAgICAgICAgICAgICRmYW5jeWJveC1uYXYtc3BhY2VyLXggIWRlZmF1bHQ7XG4kZmFuY3lib3gtbmF2LXBhZGRpbmc6ICAgICAgICAgICAgICAgICAwLjM3NXJlbSAhZGVmYXVsdDtcbiRmYW5jeWJveC1uYXYtYmc6ICAgICAgICAgICAgICAgICAgICAgIHJnYmEoJGJsYWNrLCAwLjUpICFkZWZhdWx0O1xuJGZhbmN5Ym94LW5hdi1jb2xvcjogICAgICAgICAgICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJGZhbmN5Ym94LW5hdi1ob3Zlci1iZzogICAgICAgICAgICAgICAgJGdyYXktOTAwICFkZWZhdWx0O1xuJGZhbmN5Ym94LW5hdi1ob3Zlci1jb2xvcjogICAgICAgICAgICAgJGZhbmN5Ym94LW5hdi1jb2xvciAhZGVmYXVsdDtcblxuJGZhbmN5Ym94LWNhcHRpb24tcGFkZGluZy15OiAgICAgICAgICAgMC41cmVtICFkZWZhdWx0O1xuJGZhbmN5Ym94LWNhcHRpb24tcGFkZGluZy14OiAgICAgICAgICAgMC42MjVyZW0gIWRlZmF1bHQ7XG4kZmFuY3lib3gtY2FwdGlvbi1iZzogICAgICAgICAgICAgICAgICByZ2JhKCRibGFjaywgMC41KSAhZGVmYXVsdDtcbiRmYW5jeWJveC1jYXB0aW9uLWNvbG9yOiAgICAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcblxuXG4vLyBGYW5jeXRyZWVcbiRmYW5jeXRyZWUtbm9kZS1wYWRkaW5nLXk6ICAgICAgICAgICAgIDAuMjVyZW0gIWRlZmF1bHQ7XG4kZmFuY3l0cmVlLW5vZGUtcGFkZGluZy14OiAgICAgICAgICAgICAwLjVyZW0gIWRlZmF1bHQ7XG5cbiRmYW5jeXRyZWUtbm9kZS1zZWxlY3RlZC1iZzogICAgICAgICAgICRncmF5LTMwMCAhZGVmYXVsdDtcbiRmYW5jeXRyZWUtbm9kZS1zZWxlY3RlZC1jb2xvcjogICAgICAgICRib2R5LWNvbG9yICFkZWZhdWx0O1xuXG4kZmFuY3l0cmVlLW5vZGUtYWN0aXZlLWJnOiAgICAgICAgICAgICAkY29sb3ItcHJpbWFyeS01MDAgIWRlZmF1bHQ7XG4kZmFuY3l0cmVlLW5vZGUtYWN0aXZlLWNvbG9yOiAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG5cblxuXG4vL1xuLy8gUGFnZSBraXRzXG4vL1xuLy8gRmVlZHMsIHRpbWVsaW5lcywgcHJvZmlsZXMsIGNoYXRzLCBpbmJveCwgZWNvbW1lcmNlIGV0Y1xuLy9cblxuLy8gVGltZWxpbmVzXG4kdGltZWxpbmUtaWNvbi1zaXplOiBcdFx0XHRcdCAgICAgICAgICAzcmVtICFkZWZhdWx0O1xuJHRpbWVsaW5lLWxpbmUtd2lkdGg6IFx0XHRcdFx0ICAgICAgICAoJGJvcmRlci13aWR0aCAqIDIpICFkZWZhdWx0O1xuJHRpbWVsaW5lLWxpbmUtY29sb3I6IFx0XHRcdFx0ICAgICAgICAkZ3JheS01MDAgIWRlZmF1bHQ7XG4kdGltZWxpbmUtaWNvbi1iZzpcdFx0XHRcdFx0ICAgICAgICAgICRjYXJkLWJnICFkZWZhdWx0O1xuJHRpbWVsaW5lLWljb24tYm9yZGVyLXdpZHRoOiBcdFx0ICAgICAgKCR0aW1lbGluZS1saW5lLXdpZHRoICogMikgIWRlZmF1bHQ7XG4kdGltZWxpbmUtY29udGVudC1wYWRkaW5nLXg6XHRcdCAgICAgICRjb250ZW50LWNvbnRhaW5lci1wYWRkaW5nLXggIWRlZmF1bHQ7XG5cblxuLy8gRmVlZHNcbiRsaXN0LWZlZWQtY2lyY2xlLXJhZGl1czogXHRcdFx0ICAgICAgMC41cmVtICFkZWZhdWx0OyAvLyBtdXN0IGJlIGVxdWFsIHRvIGV2ZW4gcHggdmFsdWVcbiRsaXN0LWZlZWQtY2lyY2xlLWJvcmRlci13aWR0aDogXHQgICAgKCRib3JkZXItd2lkdGggKiAyKSAhZGVmYXVsdDtcbiRsaXN0LWZlZWQtY2lyY2xlLWJvcmRlci1jb2xvcjpcdFx0ICAgICRjb2xvci1zbGF0ZS01MDAgIWRlZmF1bHQ7XG4kbGlzdC1mZWVkLWNpcmNsZS1wb3NpdGlvbjogXHRcdCAgICAgICgkbGluZS1oZWlnaHQtY29tcHV0ZWQgLSAoJGxpc3QtZmVlZC1jaXJjbGUtcmFkaXVzICsgcmVtLWNhbGMoJGxpc3QtZmVlZC1jaXJjbGUtYm9yZGVyLXdpZHRoKSkpIC8gMiAhZGVmYXVsdDtcblxuJGxpc3QtZmVlZC1pdGVtLXBhZGRpbmcteTpcdFx0XHQgICAgICAxLjI1cmVtICFkZWZhdWx0O1xuJGxpc3QtZmVlZC1pdGVtLXBhZGRpbmcteDpcdFx0XHQgICAgICAoJGNhcmQtc3BhY2VyLXggKyAkbGlzdC1mZWVkLWNpcmNsZS1yYWRpdXMpICFkZWZhdWx0O1xuXG5cbi8vIEJsb2dcbiRibG9nLWhvcml6b250YWwtaW1nLW1heC13aWR0aDogICAgICAgMjVyZW0gIWRlZmF1bHQ7XG4kYmxvZy1ob3Jpem9udGFsLWltZy1tYXgtd2lkdGgtbGc6ICAgIDMxLjI1cmVtICFkZWZhdWx0O1xuJGJsb2ctaG9yaXpvbnRhbC1pbWctbWF4LXdpZHRoLXNtOiAgICAxOC43NXJlbSAhZGVmYXVsdDtcbiRibG9nLWhvcml6b250YWwtaW1nLW1heC13aWR0aC14czogICAgMTIuNXJlbSAhZGVmYXVsdDtcblxuXG4vLyBMb2dpbiBwYWdlXG4kbG9naW4tZm9ybS13aWR0aDogICAgICAgICAgICAgICAgICAgIDIwcmVtICFkZWZhdWx0O1xuXG5cbi8vIEVycm9yIHBhZ2VzXG4kZXJyb3ItdGl0bGUtY29sb3I6ICAgICAgICAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRlcnJvci10aXRsZS1mb250LXNpemU6ICAgICAgICAgICAgICAgMTIuNXJlbSAhZGVmYXVsdDtcbiRlcnJvci10aXRsZS1mb250LXNpemUtc206ICAgICAgICAgICAgOC4xMjVyZW0gIWRlZmF1bHQ7XG5cbiRlcnJvci1vZmZsaW5lLXRpdGxlLWZvbnQtc2l6ZTogICAgICAgMTByZW0gIWRlZmF1bHQ7XG4kZXJyb3Itb2ZmbGluZS10aXRsZS1mb250LXNpemUtc206ICAgIDYuODc1cmVtICFkZWZhdWx0O1xuXG5cbi8vIFByb2ZpbGUgcGFnZXNcbiRwcm9maWxlLWNvdmVyLWVsZW1lbnQtc2hhZG93OiAgICAgICAgMCAwIDAuMTg3NXJlbSByZ2JhKCRibGFjaywgMC41KSAhZGVmYXVsdDtcbiRwcm9maWxlLXRodW1iLXNpemU6ICAgICAgICAgICAgICAgICAgNi4yNXJlbSAhZGVmYXVsdDtcbiRwcm9maWxlLXRodW1iLWJvcmRlci13aWR0aDogICAgICAgICAgKCRib3JkZXItd2lkdGggKiAzKSAhZGVmYXVsdDtcbiRwcm9maWxlLXRodW1iLWJvcmRlci1jb2xvcjogICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJHByb2ZpbGUtY292ZXItaGVpZ2h0OiAgICAgICAgICAgICAgICAyMS44OHJlbSAhZGVmYXVsdDtcblxuXG4vLyBJbmJveFxuJGluYm94LXJlYWQtcm93LWJnOiAgICAgICAgICAgICAgICAgICAkZ3JheS0xMDAgIWRlZmF1bHQ7XG4kaW5ib3gtdW5yZWFkLXJvdy1iZzogICAgICAgICAgICAgICAgICRjYXJkLWJnICFkZWZhdWx0O1xuXG5cbi8vIENoYXRzXG4kY2hhdC1saXN0LW1heC1oZWlnaHQ6ICAgICAgICAgICAgICAgIDUyMHB4ICFkZWZhdWx0O1xuJGNoYXQtbWVzc2FnZS1hcnJvdy1zaXplOiAgICAgICAgICAgICAoJGJvcmRlci13aWR0aCAqIDUpICFkZWZhdWx0O1xuJGNoYXQtbWVzc2FnZS1ib3JkZXItcmFkaXVzOiAgICAgICAgICAkYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcbiRjaGF0LW1lc3NhZ2UtcGFkZGluZy15OiAgICAgICAgICAgICAgMC42MjVyZW0gIWRlZmF1bHQ7XG4kY2hhdC1tZXNzYWdlLXBhZGRpbmcteDogICAgICAgICAgICAgIDFyZW0gIWRlZmF1bHQ7XG5cbiRjaGF0LW1lc3NhZ2UtYmc6ICAgICAgICAgICAgICAgICAgICAgJGdyYXktMzAwICFkZWZhdWx0O1xuJGNoYXQtbWVzc2FnZS1jb2xvcjogICAgICAgICAgICAgICAgICAkYm9keS1jb2xvciAhZGVmYXVsdDtcbiRjaGF0LW1lc3NhZ2UtcmV2ZXJzZWQtYmc6ICAgICAgICAgICAgJGNvbG9yLXByaW1hcnktNDAwICFkZWZhdWx0O1xuJGNoYXQtbWVzc2FnZS1yZXZlcnNlZC1jb2xvcjogICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG5cblxuLy8gUHJpY2luZyB0YWJsZXNcbiRwcmljaW5nLXRpdGxlLWZvbnQtc2l6ZTogICAgICAgICAgICAgMi42MjVyZW0gIWRlZmF1bHQ7XG4kcHJpY2luZy1zdWJ0aXRsZS1mb250LXNpemU6ICAgICAgICAgIDEuODc1cmVtICFkZWZhdWx0O1xuXG4kcHJpY2luZy1saXN0LWl0ZW0tcGFkZGluZy15OiAgICAgICAgIDFyZW0gIWRlZmF1bHQ7XG4kcHJpY2luZy1saXN0LWl0ZW0tYm9yZGVyLXdpZHRoOiAgICAgICRib3JkZXItd2lkdGggIWRlZmF1bHQ7XG4kcHJpY2luZy1saXN0LWl0ZW0tYm9yZGVyLWNvbG9yOiAgICAgIHJnYmEoJGJsYWNrLCAwLjEpICFkZWZhdWx0O1xuXG4kcHJpY2luZy1yaWJib24tYmc6ICAgICAgICAgICAgICAgICAgICRjb2xvci1zdWNjZXNzLTUwMCAhZGVmYXVsdDtcbiRwcmljaW5nLXJpYmJvbi1jb2xvcjogICAgICAgICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJHByaWNpbmctcmliYm9uLWJveC1zaGFkb3c6ICAgICAgICAgICAwIDRweCA2cHggcmdiYSgkYmxhY2ssIDAuMSkgIWRlZmF1bHQ7XG4iLCIvKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAqXG4gKiAgIyBNaXhpbnNcbiAqXG4gKiAgSW1wb3J0IEJvb3RzdHJhcCBtaXhpbnMgd2l0aCBvdmVycmlkZXNcbiAqXG4gKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5cbi8vIFV0aWxpdGllc1xuQGltcG9ydCBcIm1peGlucy9iYWRnZVwiO1xuXG4vLyBDb21wb25lbnRzXG5AaW1wb3J0IFwibWl4aW5zL2J1dHRvbnNcIjtcbkBpbXBvcnQgXCJtaXhpbnMvY2FyZXRcIjtcbkBpbXBvcnQgXCJtaXhpbnMvZm9ybXNcIjtcblxuLy8gU2tpbnNcbkBpbXBvcnQgXCJtaXhpbnMvYmFja2dyb3VuZC12YXJpYW50XCI7XG4iLCIvKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAqXG4gKiAgIyBCYWRnZSBtaXhpblxuICpcbiAqICBPdmVycmlkZSBhbmQgZXh0ZW5kIGRlZmF1bHQgYmFkZ2UgbWl4aW4uXG4gKlxuICogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuXG5AbWl4aW4gYmFkZ2UtdmFyaWFudCgkYmcpIHtcbiAgICBjb2xvcjogY29sb3IteWlxKCRiZyk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGJnO1xuXG4gICAgJltocmVmXSB7XG4gICAgICAgIEBpbmNsdWRlIGhvdmVyLWZvY3VzIHtcbiAgICAgICAgICAgIGNvbG9yOiBjb2xvci15aXEoJGJnKTtcbiAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblxuICAgICAgICAgICAgJjpub3QoLmJhZGdlLWxpZ2h0KSB7XG4gICAgICAgICAgICAgICAgYm94LXNoYWRvdzogJGJ0bi1kYXJrLWhvdmVyLWJveC1zaGFkb3c7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59IiwiLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gKlxuICogICMgQnV0dG9ucyBtaXhpblxuICpcbiAqICBPdmVycmlkZSBhbmQgZXh0ZW5kIGRlZmF1bHQgYnV0dG9ucyBtaXhpbi5cbiAqXG4gKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5cblxuLy8gQnV0dG9uIHZhcmlhbnRzXG4vL1xuLy8gRWFzaWx5IHB1bXAgb3V0IGRlZmF1bHQgc3R5bGVzLCBhcyB3ZWxsIGFzIDpob3ZlciwgOmZvY3VzLCA6YWN0aXZlLFxuLy8gYW5kIGRpc2FibGVkIG9wdGlvbnMgZm9yIGFsbCBidXR0b25zXG5cbi8vIFByaW1hcnkgYnV0dG9uc1xuQG1peGluIGJ1dHRvbi12YXJpYW50KCRiYWNrZ3JvdW5kLCAkYm9yZGVyLCAkaG92ZXItYmFja2dyb3VuZDogJGJhY2tncm91bmQsICRob3Zlci1ib3JkZXI6ICRib3JkZXIsICRhY3RpdmUtYmFja2dyb3VuZDogJGJhY2tncm91bmQsICRhY3RpdmUtYm9yZGVyOiAkYm9yZGVyKSB7XG4gICAgY29sb3I6IGNvbG9yLXlpcSgkYmFja2dyb3VuZCk7XG4gICAgQGluY2x1ZGUgZ3JhZGllbnQtYmcoJGJhY2tncm91bmQpO1xuXG4gICAgQGluY2x1ZGUgaG92ZXIge1xuICAgICAgICBjb2xvcjogY29sb3IteWlxKCRob3Zlci1iYWNrZ3JvdW5kKTtcbiAgICAgICAgQGluY2x1ZGUgZ3JhZGllbnQtYmcoJGhvdmVyLWJhY2tncm91bmQpO1xuICAgIH1cblxuICAgICY6bm90KFtkaXNhYmxlZF0pOm5vdCguZGlzYWJsZWQpOmFjdGl2ZSxcbiAgICAmOm5vdChbZGlzYWJsZWRdKTpub3QoLmRpc2FibGVkKS5hY3RpdmUsXG4gICAgLnNob3cgPiAmLmRyb3Bkb3duLXRvZ2dsZSB7XG4gICAgICAgIEBpZiAkZW5hYmxlLWdyYWRpZW50cyB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiBub25lOyAvLyBSZW1vdmUgdGhlIGdyYWRpZW50IGZvciB0aGUgcHJlc3NlZC9hY3RpdmUgc3RhdGVcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLy8gT3V0bGluZSBidXR0b25cbkBtaXhpbiBidXR0b24tb3V0bGluZS12YXJpYW50KCRjb2xvciwgJGNvbG9yLWhvdmVyOiAjZmZmKSB7XG4gICAgY29sb3I6ICRjb2xvcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xuICAgIGJvcmRlci1jb2xvcjogJGNvbG9yO1xuXG4gICAgQGluY2x1ZGUgaG92ZXIge1xuICAgICAgICBjb2xvcjogJGNvbG9yLWhvdmVyO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3I7XG4gICAgICAgIGJvcmRlci1jb2xvcjogJGNvbG9yO1xuICAgIH1cblxuICAgICYuZGlzYWJsZWQsXG4gICAgJjpkaXNhYmxlZCB7XG4gICAgICAgIGNvbG9yOiAkY29sb3I7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIH1cblxuICAgICY6bm90KFtkaXNhYmxlZF0pOm5vdCguZGlzYWJsZWQpOmFjdGl2ZSxcbiAgICAmOm5vdChbZGlzYWJsZWRdKTpub3QoLmRpc2FibGVkKS5hY3RpdmUsXG4gICAgLnNob3cgPiAmLmRyb3Bkb3duLXRvZ2dsZSB7XG4gICAgICAgIGNvbG9yOiAkY29sb3ItaG92ZXI7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvcjtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAkY29sb3I7XG4gICAgfVxufVxuXG4vLyBCdXR0b24gc2l6ZXNcbkBtaXhpbiBidXR0b24tc2l6ZSgkcGFkZGluZy15LCAkcGFkZGluZy14LCAkZm9udC1zaXplLCAkbGluZS1oZWlnaHQsICRib3JkZXItcmFkaXVzKSB7XG4gICAgcGFkZGluZzogJHBhZGRpbmcteSAkcGFkZGluZy14O1xuICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZTtcbiAgICBsaW5lLWhlaWdodDogJGxpbmUtaGVpZ2h0O1xuICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGJvcmRlci1yYWRpdXMpO1xufVxuIiwiLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gKlxuICogICMgQ2FyZXQgbWl4aW5cbiAqXG4gKiAgT3ZlcnJpZGUgYW5kIGV4dGVuZCBkZWZhdWx0IGNhcmVkIG1peGluLlxuICpcbiAqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cblxuQG1peGluIGNhcmV0LWRvd24ge1xuICAgIGNvbnRlbnQ6ICdcXGU5YzknO1xufVxuXG5AbWl4aW4gY2FyZXQtdXAge1xuICAgIGNvbnRlbnQ6ICdcXGU5Y2EnO1xufVxuXG5AbWl4aW4gY2FyZXQtcmlnaHQge1xuICAgIGNvbnRlbnQ6ICdcXGU5Y2InO1xufVxuXG5AbWl4aW4gY2FyZXQtbGVmdCB7XG4gICAgY29udGVudDogJ1xcZTljOCc7XG59XG5cbkBtaXhpbiBjYXJldCgkY2FyZXQtZGlyZWN0aW9uOiBkb3duKSB7XG4gICAgQGlmICRlbmFibGUtY2FyZXQge1xuICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgICBmb250LWZhbWlseTogJGljb24tZm9udC1mYW1pbHk7XG4gICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICBib3JkZXI6IDA7XG4gICAgICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgICAgICAgICAgZm9udC1zaXplOiAkY2FyZXQtZm9udC1zaXplO1xuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6ICgkZWxlbWVudC1zcGFjZXIteCAqIC43NSk7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMTtcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgIEBpZiAkY2FyZXQtZGlyZWN0aW9uID09IGRvd24ge1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGNhcmV0LWRvd247XG4gICAgICAgICAgICB9IEBlbHNlIGlmICRjYXJldC1kaXJlY3Rpb24gPT0gdXAge1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGNhcmV0LXVwO1xuICAgICAgICAgICAgfSBAZWxzZSBpZiAkY2FyZXQtZGlyZWN0aW9uID09IHJpZ2h0IHtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBjYXJldC1yaWdodDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIEBpZiAkY2FyZXQtZGlyZWN0aW9uID09IGxlZnQge1xuICAgICAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgICAgICAgIGNvbnRlbnQ6IG5vbmU7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgZm9udC1mYW1pbHk6ICRpY29uLWZvbnQtZmFtaWx5O1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgICAgICBib3JkZXI6IDA7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAkY2FyZXQtZm9udC1zaXplO1xuICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogKCRlbGVtZW50LXNwYWNlci14ICogLjc1KTtcbiAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMTtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgY2FyZXQtbGVmdDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICY6ZW1wdHk6OmFmdGVyIHtcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgICB9XG4gICAgfVxufVxuIiwiLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gKlxuICogICMgRm9ybXMgbWl4aW5cbiAqXG4gKiAgT3ZlcnJpZGUgYW5kIGV4dGVuZCBkZWZhdWx0IGZvcm1zIG1peGluLlxuICpcbiAqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cblxuLy8gRm9ybSBjb250cm9sIGZvY3VzIHN0YXRlXG5AbWl4aW4gZm9ybS1jb250cm9sLWZvY3VzKCkge1xuICAgICY6Zm9jdXMge1xuICAgICAgICBvdXRsaW5lOiAwO1xuICAgICAgICBAaWYgJGVuYWJsZS1zaGFkb3dzIHtcbiAgICAgICAgICAgIGJveC1zaGFkb3c6ICRpbnB1dC1ib3gtc2hhZG93LCAkaW5wdXQtZm9jdXMtYm94LXNoYWRvdztcbiAgICAgICAgfSBAZWxzZSB7XG4gICAgICAgICAgICBib3gtc2hhZG93OiAkaW5wdXQtZm9jdXMtYm94LXNoYWRvdztcbiAgICAgICAgfVxuICAgIH1cblxuICAgICY6bm90KC5ib3JkZXItMSk6bm90KC5ib3JkZXItMik6bm90KC5ib3JkZXItMyk6Zm9jdXMge1xuICAgICAgICBib3JkZXItY29sb3I6ICRpbnB1dC1mb2N1cy1ib3JkZXItY29sb3I7XG4gICAgfVxufVxuIiwiLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gKlxuICogICMgQmFja2dyb3VuZCBtaXhpblxuICpcbiAqICBPdmVycmlkZSBhbmQgZXh0ZW5kIGRlZmF1bHQgYmFja2dyb3VuZCBtaXhpbi5cbiAqXG4gKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5cbi8vIENvbnRleHR1YWwgYmFja2dyb3VuZHNcbkBtaXhpbiBiZy12YXJpYW50KCRwYXJlbnQsICRjb2xvcikge1xuXHQjeyRwYXJlbnR9IHtcblx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3IgIWltcG9ydGFudDtcblx0fVxufVxuXG4vLyBHcmFkaWVudFxuQG1peGluIGJnLWdyYWRpZW50LXZhcmlhbnQoJHBhcmVudCwgJGNvbG9yKSB7XG5cdCN7JHBhcmVudH0ge1xuXHRcdGJhY2tncm91bmQ6ICRjb2xvciBsaW5lYXItZ3JhZGllbnQoMTgwZGVnLCBtaXgoJGJvZHktYmcsICRjb2xvciwgMTUlKSwgJGNvbG9yKSByZXBlYXQteDtcblx0fVxufVxuIiwiLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gKlxuICogICMgUmVib290XG4gKlxuICogIE5vcm1hbGl6YXRpb24gb2YgSFRNTCBlbGVtZW50cyAtIG92ZXJyaWRlcyBvZiBkZWZhdWx0IEJvb3RzdHJhcCBzdHlsZXNcbiAqXG4gKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4gXG5cbi8vXG4vLyBEb2N1bWVudFxuLy9cblxuLy8gQm9keVxuYm9keSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG5cbi8vXG4vLyBUeXBvZ3JhcGh5XG4vL1xuXG5kdCB7XG4gICAgbWFyZ2luLWJvdHRvbTogbWFwLWdldCgkc3BhY2VycywgMSk7XG59XG5cbmRkIHtcbiAgICBtYXJnaW4tYm90dG9tOiAkc3BhY2VyO1xuXG4gICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICB9XG59XG5cbmRsIHtcbiAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIH1cbn1cblxuXG4vL1xuLy8gQ29kZVxuLy9cblxucHJlIHtcbiAgICB0YWItc2l6ZTogNDtcbiAgICBib3JkZXI6ICRib3JkZXItd2lkdGggc29saWQgJHByZS1ib3JkZXItY29sb3I7XG4gICAgcGFkZGluZzogJHByZS1wYWRkaW5nLXkgJHByZS1wYWRkaW5nLXg7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICBoeXBoZW5zOiBub25lO1xufVxuXG5cbi8vXG4vLyBJbWFnZXMgYW5kIGNvbnRlbnRcbi8vXG5cbi8vIFNWRyBhbGlnbm1lbnRcbnN2ZyB7XG4gICAgZGlzcGxheTogYmxvY2s7XG5cbiAgICAvLyBJbmxpbmVcbiAgICAuc3ZnLWlubGluZSAmIHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIH1cblxuICAgIC8vIENlbnRlcmVkIG9iamVjdFxuICAgIC5zdmctY2VudGVyICYge1xuICAgICAgICBtYXJnaW46IGF1dG87XG4gICAgfVxufVxuXG5cbi8vXG4vLyBJbnB1dHNcbi8vXG5cbi8vIEZpbGUgaW5wdXQgdHlwZVxuaW5wdXRbdHlwZT1cImZpbGVcIl0ge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xufVxuIiwiLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gKlxuICogICMgVGV4dCBzdHlsaW5nXG4gKlxuICogIE92ZXJyaWRlIGFuZCBleHRlbmQgZGVmYXVsdCBCb290c3RyYXAgc3R5bGVzLlxuICpcbiAqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cblxuXG4vL1xuLy8gSGVhZGluZ3Ncbi8vXG5cbmgxLCBoMiwgaDMsIGg0LCBoNSwgaDYsXG4uaDEsIC5oMiwgLmgzLCAuaDQsIC5oNSwgLmg2IHtcbiAgICBsZXR0ZXItc3BhY2luZzogJGhlYWRpbmdzLWxldHRlci1zcGFjaW5nO1xufVxuXG5cbi8vXG4vLyBMaXN0c1xuLy9cblxuLy8gQ3VzdG9tIGxpc3QgY2xhc3Ncbi5saXN0IHtcblxuICAgIC8vIEFkZCB2ZXJ0aWNhbCBzcGFjaW5nIHRvIHRoZSBsaXN0IGl0ZW1zXG4gICAgPiBsaSB7XG4gICAgICAgICYsXG4gICAgICAgIC5saXN0ID4gbGkge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogbWFwLWdldCgkc3BhY2VycywgMSk7XG4gICAgICAgIH1cblxuICAgICAgICAvLyBSZW1vdmUgdG9wIG1hcmdpbiBmcm9tIHRoZSBmaXJzdCBsaXN0IGl0ZW1cbiAgICAgICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLy8gRXh0ZW5kZWQgbGlzdFxuICAgICYtZXh0ZW5kZWQge1xuICAgICAgICA+IGxpIHtcbiAgICAgICAgICAgICYsXG4gICAgICAgICAgICAubGlzdCA+IGxpIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAoJHNwYWNlciAvIDIpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG4vLyBMaXN0IGl0ZW0gc3R5bGluZ1xudWwge1xuICAgICYubGlzdC1zcXVhcmUge1xuICAgICAgICBsaXN0LXN0eWxlLXR5cGU6IHNxdWFyZTtcbiAgICB9XG5cbiAgICAmLmxpc3QtY2lyY2xlIHtcbiAgICAgICAgbGlzdC1zdHlsZS10eXBlOiBjaXJjbGU7XG4gICAgfVxufVxuXG4vLyBJbmxpbmUgdHVybnMgbGlzdCBpdGVtcyBpbnRvIGlubGluZS1ibG9ja1xuLmxpc3QtaW5saW5lLWl0ZW0ge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLy8gSW5saW5lIGNvbmRlbnNlZFxuLmxpc3QtaW5saW5lLWNvbmRlbnNlZCB7XG4gICAgLmxpc3QtaW5saW5lLWl0ZW0ge1xuICAgICAgICAmOm5vdCg6bGFzdC1jaGlsZCkge1xuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAoJGxpc3QtaW5saW5lLXBhZGRpbmcgLyAyKTtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLy8gSW5saW5lIGRvdHRlZFxuLmxpc3QtaW5saW5lLWRvdHRlZCB7XG4gICAgLmxpc3QtaW5saW5lLWl0ZW0ge1xuICAgICAgICAmOm5vdCg6bGFzdC1jaGlsZCkge1xuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAoJGxpc3QtaW5saW5lLXBhZGRpbmcgLyAyKTtcblxuICAgICAgICAgICAgLy8gRG90XG4gICAgICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgICAgICBjb250ZW50OiAnXFxmMDUyJztcbiAgICAgICAgICAgICAgICBmb250LWZhbWlseTogJGljb24tZm9udC1mYW1pbHk7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAoJGljb24tZm9udC1zaXplIC8gMik7XG4gICAgICAgICAgICAgICAgd2lkdGg6ICgkaWNvbi1mb250LXNpemUgLyAyLjUpO1xuICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6ICgkbGlzdC1pbmxpbmUtcGFkZGluZyAvIDIpICsgKCgkaWNvbi1mb250LXNpemUgLyAyLjUpIC8gMik7XG4gICAgICAgICAgICAgICAgb3BhY2l0eTogMC4yNTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8vIENvbmRlbnNlZCBkb3R0ZWRcbiAgICAmLmxpc3QtaW5saW5lLWNvbmRlbnNlZCB7XG4gICAgICAgIC5saXN0LWlubGluZS1pdGVtIHtcbiAgICAgICAgICAgICY6bm90KDpsYXN0LWNoaWxkKSB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAoJGxpc3QtaW5saW5lLXBhZGRpbmcgLyAzKTtcblxuICAgICAgICAgICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogKCRsaXN0LWlubGluZS1wYWRkaW5nIC8gMykgKyAoKCRpY29uLWZvbnQtc2l6ZSAvIDQpIC8gMik7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG5cbi8vXG4vLyBMaXN0IHdpdGggaWNvbnNcbi8vXG5cbi8vIEJhc2Vcbi5saXN0LWljb25zIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuXG4gICAgLy8gU3BhY2luZyBiZXR3ZWVuIGl0ZW1zXG4gICAgPiAqOm5vdCg6bGFzdC1jaGlsZCkge1xuICAgICAgICBtYXJnaW4tcmlnaHQ6ICRsaXN0LWljb25zLXNwYWNlcjtcbiAgICB9XG5cbiAgICAvLyBFeHRlbmRlZCBzaXplXG4gICAgJi1leHRlbmRlZCB7XG4gICAgICAgID4gKjpub3QoOmxhc3QtY2hpbGQpIHtcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogJGxpc3QtaWNvbnMtc3BhY2VyICogMjtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLy8gTGlzdCBpY29ucyBpdGVtXG4ubGlzdC1pY29ucy1pdGVtIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgbGluZS1oZWlnaHQ6IDE7XG59XG5cbi8vIExpbmtlZCBsaXN0IGljb25zIGl0ZW1cbmEubGlzdC1pY29ucy1pdGVtIHtcbiAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKGFsbCBlYXNlLWluLW91dCAkY29tcG9uZW50LXRyYW5zaXRpb24tdGltZXIpO1xuXG4gICAgLy8gQ29sb3JcbiAgICAmOm5vdChbY2xhc3MqPXRleHQtXSkge1xuICAgICAgICBjb2xvcjogaW5oZXJpdDtcbiAgICB9XG5cbiAgICAvLyBIb3Zlci9vcGVuIHN0YXRlc1xuICAgICY6aG92ZXIsXG4gICAgJjpmb2N1cyxcbiAgICAuc2hvdyA+ICYge1xuICAgICAgICBvdXRsaW5lOiAwO1xuICAgICAgICBvcGFjaXR5OiAwLjc1O1xuICAgIH1cbn1cblxuXG4vL1xuLy8gVGV4dCBzdHlsaW5nXG4vL1xuXG4vLyBBZGRpdGlvbmFsIGZvbnQgd2VpZ2h0c1xuLmZvbnQtd2VpZ2h0LWJsYWNrIHtcbiAgICBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LWJsYWNrO1xufVxuLmZvbnQtd2VpZ2h0LXNlbWlib2xkIHtcbiAgICBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LXNlbWlib2xkO1xufVxuLmZvbnQtd2VpZ2h0LXRoaW4ge1xuICAgIGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtdGhpbjtcbn1cblxuLy8gV2hpdGUgdGV4dCBjb2xvclxuLnRleHQtd2hpdGUge1xuICAgIGNvbG9yOiAkd2hpdGU7XG59XG5hLnRleHQtd2hpdGUge1xuICAgICY6bm90KC5idG4pIHtcbiAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbihjb2xvciBlYXNlLWluLW91dCAkY29tcG9uZW50LXRyYW5zaXRpb24tdGltZXIpO1xuICAgIH1cblxuICAgIC8vIEhvdmVyIHN0YXRlXG4gICAgQGluY2x1ZGUgaG92ZXItZm9jdXMge1xuICAgICAgICBjb2xvcjogcmdiYSgkd2hpdGUsIDAuNzUpO1xuICAgIH1cbn1cblxuLy8gRGVmYXVsdCB0ZXh0IGNvbG9yXG4udGV4dC1kZWZhdWx0IHtcbiAgICBjb2xvcjogJGJvZHktY29sb3I7XG59XG5hLnRleHQtZGVmYXVsdCB7XG4gICAgJjpub3QoLmJ0bikge1xuICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKGNvbG9yIGVhc2UtaW4tb3V0ICRjb21wb25lbnQtdHJhbnNpdGlvbi10aW1lcik7XG4gICAgfVxuXG4gICAgLy8gSG92ZXIgc3RhdGVcbiAgICBAaW5jbHVkZSBob3Zlci1mb2N1cyB7XG4gICAgICAgIGNvbG9yOiByZ2JhKCRib2R5LWNvbG9yLCAwLjc1KTtcbiAgICB9XG59XG5cblxuLy9cbi8vIEJsb2NrcXVvdGVzXG4vL1xuXG4vLyBCb3JkZXJlZCBzdHlsZVxuLmJsb2NrcXVvdGUtYm9yZGVyZWQge1xuICAgIGJvcmRlci1sZWZ0OiAkYmxvY2txdW90ZS1ib3JkZXItd2lkdGggc29saWQgJGJsb2NrcXVvdGUtYm9yZGVyLWNvbG9yO1xuXG4gICAgLy8gUmV2ZXJzZSBib3JkZXJcbiAgICAmLXJldmVyc2Uge1xuICAgICAgICBib3JkZXItbGVmdDogMDtcbiAgICAgICAgYm9yZGVyLXJpZ2h0OiAkYmxvY2txdW90ZS1ib3JkZXItd2lkdGggc29saWQgJGJsb2NrcXVvdGUtYm9yZGVyLWNvbG9yO1xuICAgIH1cbn1cblxuLy8gRm9vdGVyXG4uYmxvY2txdW90ZS1mb290ZXIge1xuICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1iYXNlO1xuXG4gICAgLy8gQWRkIG1vcmUgaG9yaXpvbnRhbCBzcGFjaW5nXG4gICAgJjo6YmVmb3JlIHtcbiAgICAgICAgY29udGVudDogXCJcXDIwMTQgXFwwMEEwIFxcMDBBMCBcXDAwQTBcIjtcbiAgICB9XG59XG5cblxuLy9cbi8vIEZlZWQgbGlzdFxuLy9cblxuLy8gRmVlZCBpdGVtXG4ubGlzdC1mZWVkLWl0ZW0ge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBwYWRkaW5nLWJvdHRvbTogJGxpc3QtZmVlZC1pdGVtLXBhZGRpbmcteTtcbiAgICBwYWRkaW5nLWxlZnQ6ICRsaXN0LWZlZWQtaXRlbS1wYWRkaW5nLXg7XG5cbiAgICAvLyBDaXJjbGVcbiAgICAmOmJlZm9yZSB7XG4gICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIHRvcDogJGxpc3QtZmVlZC1jaXJjbGUtcG9zaXRpb247XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjYXJkLWJnO1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIGJvcmRlcjogJGxpc3QtZmVlZC1jaXJjbGUtYm9yZGVyLXdpZHRoIHNvbGlkICRsaXN0LWZlZWQtY2lyY2xlLWJvcmRlci1jb2xvcjtcbiAgICAgICAgei1pbmRleDogMztcbiAgICAgICAgQGluY2x1ZGUgc2l6ZSgkbGlzdC1mZWVkLWNpcmNsZS1yYWRpdXMpO1xuICAgICAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRib3JkZXItcmFkaXVzLWNpcmNsZSk7XG4gICAgfVxuXG4gICAgLy8gTGluZVxuICAgICY6YWZ0ZXIge1xuICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6ICRsaXN0LWZlZWQtY2lyY2xlLXBvc2l0aW9uO1xuICAgICAgICBsZWZ0OiAoJGxpc3QtZmVlZC1jaXJjbGUtcmFkaXVzIC8gMikgLSAocmVtLWNhbGMoJGxpc3QtZmVlZC1jaXJjbGUtYm9yZGVyLXdpZHRoKSAvIDIpO1xuICAgICAgICBib3R0b206IC0oJGxpc3QtZmVlZC1jaXJjbGUtcG9zaXRpb24gKyByZW0tY2FsYygkbGlzdC1mZWVkLWNpcmNsZS1ib3JkZXItd2lkdGgpKTtcbiAgICAgICAgd2lkdGg6IDA7XG4gICAgICAgIGJvcmRlci1sZWZ0OiAoJGxpc3QtZmVlZC1jaXJjbGUtYm9yZGVyLXdpZHRoIC8gMikgc29saWQgJGxpc3QtZmVlZC1jaXJjbGUtYm9yZGVyLWNvbG9yO1xuICAgICAgICBib3JkZXItcmlnaHQ6ICgkbGlzdC1mZWVkLWNpcmNsZS1ib3JkZXItd2lkdGggLyAyKSBzb2xpZCAkbGlzdC1mZWVkLWNpcmNsZS1ib3JkZXItY29sb3I7XG4gICAgICAgIHotaW5kZXg6IDI7XG4gICAgfVxuXG4gICAgLy8gRmlyc3QgaXRlbVxuICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgIHRvcDogJGxpc3QtZmVlZC1jaXJjbGUtcmFkaXVzO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLy8gTGFzdCBpdGVtXG4gICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDA7XG5cbiAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICBjb250ZW50OiBub25lO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLy8gU2V0dXAgY29sb3IgaW5oZXJpdGFuY2VcbiAgICAmW2NsYXNzKj1ib3JkZXItXSB7XG4gICAgICAgICY6YmVmb3JlLFxuICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgIGJvcmRlci1jb2xvcjogaW5oZXJpdDtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLy8gRmlsbGVkIHN5bWJvbHNcbi5saXN0LWZlZWQtc29saWQge1xuICAgIC5saXN0LWZlZWQtaXRlbTpiZWZvcmUge1xuICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgYm9yZGVyLXdpZHRoOiAoJGxpc3QtZmVlZC1jaXJjbGUtcmFkaXVzIC8gMik7XG4gICAgICAgIEBpbmNsdWRlIHNpemUoMCk7XG4gICAgfVxufVxuXG4vLyBTcXVhcmVcbi5saXN0LWZlZWQtc3F1YXJlIHtcbiAgICAubGlzdC1mZWVkLWl0ZW06YmVmb3JlIHtcbiAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoMCk7XG4gICAgfVxufVxuXG4vLyBSaG9tYnVzXG4ubGlzdC1mZWVkLXJob21idXMge1xuICAgIC5saXN0LWZlZWQtaXRlbTpiZWZvcmUge1xuICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoNDVkZWcpO1xuICAgICAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKDApO1xuICAgIH1cbn1cblxuLy8gVGltZSBzdGFtcFxuLmxpc3QtZmVlZC10aW1lIHtcbiAgICAubGlzdC1mZWVkLWl0ZW0ge1xuICAgICAgICBtYXJnaW4tbGVmdDogKCgkbGlzdC1mZWVkLWl0ZW0tcGFkZGluZy14ICogMikgLSAoJGxpc3QtZmVlZC1jaXJjbGUtcmFkaXVzIC8gMikpO1xuXG4gICAgICAgIC5mZWVkLXRpbWUge1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgbGVmdDogLSgoJGxpc3QtZmVlZC1pdGVtLXBhZGRpbmcteCAqIDIpIC0gKCRsaXN0LWZlZWQtY2lyY2xlLXJhZGl1cyAvIDIpKTtcbiAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuXG4vL1xuLy8gTWlzY1xuLy9cblxuLy8gQ29udGVudCB0ZXh0IGRpdmlkZXJcbi5jb250ZW50LWRpdmlkZXIge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgei1pbmRleDogMTtcblxuICAgIC8vIFRleHQgY29udGFpbmVyXG4gICAgPiBzcGFuIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGJvZHktYmc7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcblxuICAgICAgICAvLyBDaGFuZ2UgYmcgY29sb3IgaWYgaW5zaWRlIG90aGVyIGNvbnRhaW5lcnNcbiAgICAgICAgLmNhcmQgJixcbiAgICAgICAgLnRhYi1jb250ZW50LWJvcmRlcmVkICYge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNhcmQtYmc7XG4gICAgICAgIH1cbiAgICAgICAgLm1vZGFsICYge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJG1vZGFsLWNvbnRlbnQtYmc7XG4gICAgICAgIH1cblxuICAgICAgICAvLyBBZGQgbGluZVxuICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgdG9wOiA1MCU7XG4gICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgaGVpZ2h0OiAkY29udGVudC1kaXZpZGVyLWhlaWdodDtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb250ZW50LWRpdmlkZXItY29sb3I7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIHotaW5kZXg6IC0xO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4vLyBMYXJnZSBjaXJjbGUgaWNvblxuLmxldHRlci1pY29uIHtcbiAgICB3aWR0aDogJGljb24tZm9udC1zaXplO1xuICAgIGhlaWdodDogJGxpbmUtaGVpZ2h0LWNvbXB1dGVkO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuXG4gICAgLy8gU2l6ZXNcbiAgICAuYnRuLWxnICYge1xuICAgICAgICBoZWlnaHQ6ICRsaW5lLWhlaWdodC1jb21wdXRlZC1sZztcbiAgICB9XG4gICAgLmJ0bi1zbSAmIHtcbiAgICAgICAgaGVpZ2h0OiAkbGluZS1oZWlnaHQtY29tcHV0ZWQtc207XG4gICAgfVxufVxuIiwiLy8gU2l6aW5nIHNob3J0Y3V0c1xuXG5AbWl4aW4gc2l6ZSgkd2lkdGgsICRoZWlnaHQ6ICR3aWR0aCkge1xuICB3aWR0aDogJHdpZHRoO1xuICBoZWlnaHQ6ICRoZWlnaHQ7XG4gIEBpbmNsdWRlIGRlcHJlY2F0ZShcImBzaXplKClgXCIsIFwidjQuMy4wXCIsIFwidjVcIik7XG59XG4iLCIvKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAqXG4gKiAgIyBDb2RlIGJsb2Nrc1xuICpcbiAqICBPdmVycmlkZXMgb2YgZGVmYXVsdCBjb2RlIGJsb2NrIHN0eWxlc1xuICpcbiAqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cblxuLy8gSW5saW5lIGNvZGVcbmNvZGUge1xuICAgIHBhZGRpbmc6ICRjb2RlLXBhZGRpbmcteSAkY29kZS1wYWRkaW5nLXg7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGNvZGUtYmc7XG59XG5cbi8vIEJsb2NrcyBvZiBjb2RlXG5wcmUge1xuICAgIHdoaXRlLXNwYWNlOiBwcmUtd3JhcDtcblx0LypydGw6aWdub3JlKi9cblx0dGV4dC1hbGlnbjogbGVmdDtcbiAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRib3JkZXItcmFkaXVzKTtcbn1cbiIsIi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICpcbiAqICAjIFRhYmxlIHN0eWxpbmdcbiAqXG4gKiAgT3ZlcnJpZGUgYW5kIGV4dGVuZCBkZWZhdWx0IEJvb3RzdHJhcCBzdHlsZXMuXG4gKlxuICogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuXG5cbi8vIEJhc2Ugc3R5bGVzXG4udGFibGUge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG5cbiAgICAvLyBDZWxsc1xuICAgIHRoLFxuICAgIHRkIHtcbiAgICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICB9XG4gICAgdGgge1xuICAgICAgICBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LXNlbWlib2xkO1xuICAgIH1cblxuICAgIC8vIEhlYWRlciBjZWxsc1xuICAgIHRoZWFkIHRoIHtcbiAgICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogJHRhYmxlLWJvcmRlci13aWR0aCBzb2xpZCAkdGFibGUtaGVhZC1ib3JkZXItY29sb3I7XG4gICAgfVxuXG4gICAgLy8gRm9vdGVyIGNlbGxzXG4gICAgdGZvb3QgdGgge1xuICAgICAgICBib3JkZXItdG9wLWNvbG9yOiAkdGFibGUtaGVhZC1ib3JkZXItY29sb3I7XG4gICAgfVxuXG4gICAgLy8gUmVtb3ZlIHRvcCBib3JkZXIgZnJvbSB0aGVhZCBieSBkZWZhdWx0XG4gICAgY2FwdGlvbiArIHRoZWFkLFxuICAgIGNvbGdyb3VwICsgdGhlYWQsXG4gICAgdGhlYWQ6Zmlyc3QtY2hpbGQge1xuICAgICAgICB0cjpmaXJzdC1jaGlsZCB7XG4gICAgICAgICAgICB0aCxcbiAgICAgICAgICAgIHRkIHtcbiAgICAgICAgICAgICAgICBib3JkZXItdG9wLXdpZHRoOiAwO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLy8gQW5pbWF0ZSBiYWNrZ3JvdW5kIGNvbG9yIGluIGNlbGxzIGFuZCByb3dzXG4gICAgdHIsXG4gICAgdGgsXG4gICAgdGQge1xuICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKGJhY2tncm91bmQtY29sb3IgZWFzZS1pbi1vdXQgJGNvbXBvbmVudC10cmFuc2l0aW9uLXRpbWVyKTtcbiAgICB9XG59XG5cbi8vIFRhYmxlIGJhY2tncm91bmRzXG5AZWFjaCAkY29sb3IsICR2YWx1ZSBpbiAkdGhlbWUtY29sb3JzIHtcbiAgICBAaW5jbHVkZSB0YWJsZS1yb3ctdmFyaWFudCgkY29sb3IsIHRoZW1lLWNvbG9yLWxldmVsKCRjb2xvciwgLTExKSk7XG59XG5cbi8vIERhcmsgc3R5bGVzXG4udGFibGUtZGFyayB7XG4gICAgdGhlYWQge1xuICAgICAgICB0aCxcbiAgICAgICAgdGQge1xuICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiAkdGFibGUtZGFyay1oZWFkLWJvcmRlci1jb2xvcjtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLy8gUmVzcG9uc2l2ZSB0YWJsZXNcbi50YWJsZS1yZXNwb25zaXZlIHtcbiAgICBAZWFjaCAkYnJlYWtwb2ludCBpbiBtYXAta2V5cygkZ3JpZC1icmVha3BvaW50cykge1xuICAgICAgICAkbmV4dDogYnJlYWtwb2ludC1uZXh0KCRicmVha3BvaW50LCAkZ3JpZC1icmVha3BvaW50cyk7XG4gICAgICAgICRpbmZpeDogYnJlYWtwb2ludC1pbmZpeCgkbmV4dCwgJGdyaWQtYnJlYWtwb2ludHMpO1xuXG4gICAgICAgICYjeyRpbmZpeH0ge1xuICAgICAgICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKCRicmVha3BvaW50KSB7XG4gICAgICAgICAgICAgICAgPiAudGFibGUtYm9yZGVyZWQge1xuICAgICAgICAgICAgICAgICAgICBib3JkZXI6ICR0YWJsZS1ib3JkZXItd2lkdGggc29saWQgJHRhYmxlLWJvcmRlci1jb2xvcjtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cblxuLy9cbi8vIE9wdGlvbmFsIHN0eWxlc1xuLy9cblxuLy8gU2Nyb2xsYWJsZSB0YWJsZVxuLnRhYmxlLXNjcm9sbGFibGUge1xuICAgIG1heC1oZWlnaHQ6ICR0YWJsZS1zY3JvbGxhYmxlLW1heC1oZWlnaHQ7XG4gICAgb3ZlcmZsb3c6IGF1dG87XG59XG5cbi8vIENvbHVtbmVkIHRhYmxlXG4udGFibGUtY29sdW1uZWQge1xuICAgIHRib2R5LFxuICAgIHRmb290IHtcbiAgICAgICAgdGQsXG4gICAgICAgIHRoIHtcbiAgICAgICAgICAgIGJvcmRlcjogMDtcbiAgICAgICAgICAgIGJvcmRlci1sZWZ0OiAkdGFibGUtYm9yZGVyLXdpZHRoIHNvbGlkICR0YWJsZS1ib3JkZXItY29sb3I7XG5cbiAgICAgICAgICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgICAgICAgICAgIGJvcmRlci1sZWZ0OiAwO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgdGhlYWQge1xuICAgICAgICB0aCxcbiAgICAgICAgdGQge1xuICAgICAgICAgICAgYm9yZGVyLWxlZnQ6ICR0YWJsZS1ib3JkZXItd2lkdGggc29saWQgJHRhYmxlLWJvcmRlci1jb2xvcjtcblxuICAgICAgICAgICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAgICAgICAgICAgYm9yZGVyLWxlZnQ6IDA7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi8vIEJvcmRlcmxlc3MgdGFibGVcbi50YWJsZS1ib3JkZXJsZXNzIHtcbiAgICB0ZCxcbiAgICB0aCB7XG4gICAgICAgIGJvcmRlcjogMDtcbiAgICB9XG59XG5cblxuLy9cbi8vIE9wdGlvbmFsIHRhYmxlIGNlbGwgc2l6ZXNcbi8vXG5cbi8vIEV4dHJhIGxhcmdlXG4udGFibGUteGwge1xuICAgIHRoLFxuICAgIHRkIHtcbiAgICAgICAgcGFkZGluZzogJHRhYmxlLWNlbGwtcGFkZGluZy14bDtcbiAgICB9XG59XG5cbi8vIExhcmdlXG4udGFibGUtbGcge1xuICAgIHRoLFxuICAgIHRkIHtcbiAgICAgICAgcGFkZGluZzogJHRhYmxlLWNlbGwtcGFkZGluZy1sZztcbiAgICB9XG59XG5cbi8vIE1pbmlcbi50YWJsZS14cyB7XG4gICAgdGgsXG4gICAgdGQge1xuICAgICAgICBwYWRkaW5nOiAkdGFibGUtY2VsbC1wYWRkaW5nLXhzO1xuICAgIH1cbn1cblxuXG4vL1xuLy8gVGFibGUgYm9yZGVyc1xuLy9cblxuLy8gU29saWQgYm9yZGVyXG4udGFibGUtYm9yZGVyLXNvbGlkIHtcbiAgICB0aGVhZCAmIHtcbiAgICAgICAgdGgsXG4gICAgICAgIHRkIHtcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b20td2lkdGg6ICgkdGFibGUtYm9yZGVyLXdpZHRoICogMik7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICB0Ym9keSAmLFxuICAgIHRmb290ICYge1xuICAgICAgICB0ZCxcbiAgICAgICAgdGgge1xuICAgICAgICAgICAgYm9yZGVyLXRvcC13aWR0aDogKCR0YWJsZS1ib3JkZXItd2lkdGggKiAyKTtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLy8gRG91YmxlIGJvcmRlclxuLnRhYmxlLWJvcmRlci1kb3VibGUge1xuICAgIHRoZWFkICYge1xuICAgICAgICB0aCxcbiAgICAgICAgdGQge1xuICAgICAgICAgICAgYm9yZGVyLWJvdHRvbS13aWR0aDogKCR0YWJsZS1ib3JkZXItd2lkdGggKiAzKTtcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b20tc3R5bGU6IGRvdWJsZTtcbiAgICAgICAgfVxuXG4gICAgICAgIC50YWJsZS1ib3JkZXJlZCAmOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgICAgIHRoLFxuICAgICAgICAgICAgdGQge1xuICAgICAgICAgICAgICAgIGJvcmRlci1ib3R0b20td2lkdGg6ICgkdGFibGUtYm9yZGVyLXdpZHRoICogMyk7XG4gICAgICAgICAgICAgICAgYm9yZGVyLWJvdHRvbS1zdHlsZTogZG91YmxlO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgdGJvZHkgJixcbiAgICB0Zm9vdCAmIHtcbiAgICAgICAgdGQsXG4gICAgICAgIHRoIHtcbiAgICAgICAgICAgIGJvcmRlci10b3Atd2lkdGg6ICgkdGFibGUtYm9yZGVyLXdpZHRoICogMyk7XG4gICAgICAgICAgICBib3JkZXItdG9wLXN0eWxlOiBkb3VibGU7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi8vIERhc2hlZCBib3JkZXJcbi50YWJsZS1ib3JkZXItZGFzaGVkIHtcbiAgICB0ZCxcbiAgICB0aCB7XG4gICAgICAgIGJvcmRlci10b3Atc3R5bGU6IGRhc2hlZDtcbiAgICB9XG59XG5cbi8vIEN1c3RvbSBoZWFkZXIgYm90dG9tIGJvcmRlciBjb2xvclxuLnRhYmxlIHtcbiAgICB0aGVhZCB7XG4gICAgICAgIHRyW2NsYXNzKj1ib3JkZXItYm90dG9tLV0ge1xuICAgICAgICAgICAgdGgsXG4gICAgICAgICAgICB0ZCB7XG4gICAgICAgICAgICAgICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogaW5oZXJpdDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8vIEN1c3RvbSBib2R5IGFuZCBmb290ZXIgYm90dG9tIGJvcmRlciBjb2xvclxuICAgIHRib2R5LFxuICAgIHRmb290IHtcbiAgICAgICAgdHJbY2xhc3MqPWJvcmRlci10b3AtXSB7XG4gICAgICAgICAgICB0aCxcbiAgICAgICAgICAgIHRkIHtcbiAgICAgICAgICAgICAgICBib3JkZXItdG9wLWNvbG9yOiBpbmhlcml0O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG5cbi8vXG4vLyBUYWJsZSBpbnNpZGUgY2FyZFxuLy9cblxuLy8gUmVtb3ZlIHRvcCBib3JkZXIgZnJvbSB0aGUgdGFibGVcbi5jYXJkIHtcbiAgICA+IC50YWJsZTpmaXJzdC1jaGlsZCxcbiAgICA+IFtjbGFzcyo9dGFibGUtcmVzcG9uc2l2ZV06Zmlyc3QtY2hpbGQgPiAudGFibGU6Zmlyc3QtY2hpbGQge1xuICAgICAgICBjYXB0aW9uICsgdGhlYWQsXG4gICAgICAgIGNvbGdyb3VwICsgdGhlYWQsXG4gICAgICAgIHRoZWFkOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgICAgIHRyOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgICAgICAgICB0aCxcbiAgICAgICAgICAgICAgICB0ZCB7XG4gICAgICAgICAgICAgICAgICAgIGJvcmRlci10b3Atd2lkdGg6IDA7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG4vLyBJZiB0YWJsZSBpcyBkaXNwbGF5ZWQgaW4gbmVzdGVkIGNhcmRcbi5jYXJkIHtcbiAgICAmLmNhcmQtdGFibGUge1xuICAgICAgICBib3JkZXItd2lkdGg6ICR0YWJsZS1ib3JkZXItd2lkdGg7XG4gICAgICAgIGJvcmRlci1jb2xvcjogJHRhYmxlLWJvcmRlci1jb2xvcjtcbiAgICB9XG59XG5cbi8vIEltbWVkaWF0ZSBjaGlsZFxuLmNhcmQge1xuXG4gICAgLy8gTWFrZSBzdXJlIGNhcHRpb24gaGFzIHRoZSBzYW1lIHNwYWNpbmdcbiAgICA+IC50YWJsZSxcbiAgICA+IFtjbGFzcyo9dGFibGUtcmVzcG9uc2l2ZV0gPiAudGFibGUge1xuICAgICAgICBjYXB0aW9uIHtcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogJGNhcmQtc3BhY2VyLXg7XG4gICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAkY2FyZC1zcGFjZXIteDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8vIEFkZCBib3JkZXIgdG9wIHJhZGl1cyBmb3IgZmlyc3QgdGFibGVcbiAgICA+IC50YWJsZTpmaXJzdC1jaGlsZCxcbiAgICA+IFtjbGFzcyo9dGFibGUtcmVzcG9uc2l2ZV06Zmlyc3QtY2hpbGQgPiAudGFibGU6Zmlyc3QtY2hpbGQge1xuICAgICAgICBAaW5jbHVkZSBib3JkZXItdG9wLXJhZGl1cygkY2FyZC1pbm5lci1ib3JkZXItcmFkaXVzKTtcblxuICAgICAgICB0aGVhZDpmaXJzdC1jaGlsZCxcbiAgICAgICAgdGJvZHk6Zmlyc3QtY2hpbGQge1xuICAgICAgICAgICAgdHI6Zmlyc3QtY2hpbGQge1xuICAgICAgICAgICAgICAgIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6ICRjYXJkLWlubmVyLWJvcmRlci1yYWRpdXM7XG4gICAgICAgICAgICAgICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6ICRjYXJkLWlubmVyLWJvcmRlci1yYWRpdXM7XG5cbiAgICAgICAgICAgICAgICB0ZDpmaXJzdC1jaGlsZCxcbiAgICAgICAgICAgICAgICB0aDpmaXJzdC1jaGlsZCB7XG4gICAgICAgICAgICAgICAgICAgIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6ICRjYXJkLWlubmVyLWJvcmRlci1yYWRpdXM7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIHRkOmxhc3QtY2hpbGQsXG4gICAgICAgICAgICAgICAgdGg6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgICAgICAgICAgIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAkY2FyZC1pbm5lci1ib3JkZXItcmFkaXVzO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbiAgICAvLyBBZGQgYm9yZGVyIGJvdHRvbSByYWRpdXMgZm9yIGxhc3QgdGFibGVcbiAgICA+IC50YWJsZTpsYXN0LWNoaWxkLFxuICAgID4gW2NsYXNzKj10YWJsZS1yZXNwb25zaXZlXTpsYXN0LWNoaWxkID4gLnRhYmxlOmxhc3QtY2hpbGQge1xuICAgICAgICBAaW5jbHVkZSBib3JkZXItYm90dG9tLXJhZGl1cygkY2FyZC1pbm5lci1ib3JkZXItcmFkaXVzKTtcblxuICAgICAgICB0Ym9keTpsYXN0LWNoaWxkLFxuICAgICAgICB0Zm9vdDpsYXN0LWNoaWxkIHtcbiAgICAgICAgICAgIHRyOmxhc3QtY2hpbGQge1xuICAgICAgICAgICAgICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6ICRjYXJkLWlubmVyLWJvcmRlci1yYWRpdXM7XG4gICAgICAgICAgICAgICAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6ICRjYXJkLWlubmVyLWJvcmRlci1yYWRpdXM7XG5cbiAgICAgICAgICAgICAgICB0ZDpmaXJzdC1jaGlsZCxcbiAgICAgICAgICAgICAgICB0aDpmaXJzdC1jaGlsZCB7XG4gICAgICAgICAgICAgICAgICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6ICRjYXJkLWlubmVyLWJvcmRlci1yYWRpdXM7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIHRkOmxhc3QtY2hpbGQsXG4gICAgICAgICAgICAgICAgdGg6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgICAgICAgICAgIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAkY2FyZC1pbm5lci1ib3JkZXItcmFkaXVzO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8vIFJlbW92ZSB1bm5lY2Vzc2FyeSBib3JkZXJzXG4gICAgPiAudGFibGUtYm9yZGVyZWQsXG4gICAgPiBbY2xhc3MqPXRhYmxlLXJlc3BvbnNpdmVdID4gLnRhYmxlLWJvcmRlcmVkIHtcbiAgICAgICAgYm9yZGVyOiAwO1xuXG4gICAgICAgIHRoZWFkLFxuICAgICAgICB0Ym9keSxcbiAgICAgICAgdGZvb3Qge1xuICAgICAgICAgICAgdGg6Zmlyc3QtY2hpbGQsXG4gICAgICAgICAgICB0ZDpmaXJzdC1jaGlsZCB7XG4gICAgICAgICAgICAgICAgYm9yZGVyLWxlZnQ6IDA7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICB0aDpsYXN0LWNoaWxkLFxuICAgICAgICAgICAgdGQ6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgICAgICAgYm9yZGVyLXJpZ2h0OiAwO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG4vLyBBZGQgdG9wIGJvcmRlciBpbiBjZXJ0YWluIGNhc2VzXG4uY2FyZC1oZWFkZXI6bm90KFtjbGFzcyo9YmctXSkgKyAudGFibGUsXG4uY2FyZC1oZWFkZXI6bm90KFtjbGFzcyo9YmctXSkgKyBkaXZbY2xhc3MqPXRhYmxlLXJlc3BvbnNpdmVdLFxuLmNhcmQtYm9keSArIC50YWJsZSxcbi5jYXJkLWJvZHkgKyBkaXZbY2xhc3MqPXRhYmxlLXJlc3BvbnNpdmVdLFxuLnRhYmxlICsgLmNhcmQtYm9keSxcbmRpdltjbGFzcyo9dGFibGUtcmVzcG9uc2l2ZV0gKyAuY2FyZC1ib2R5LFxuLm5hdmJhci1saWdodCArIGRpdltjbGFzcyo9dGFibGUtcmVzcG9uc2l2ZV0sXG4ubmF2YmFyLWxpZ2h0ICsgLnRhYmxlIHtcbiAgICBib3JkZXItdG9wOiAkdGFibGUtYm9yZGVyLXdpZHRoIHNvbGlkICR0YWJsZS1ib3JkZXItY29sb3I7XG59XG5cbi8vIFJlbW92ZSB0b3AgYm9yZGVyIGlmIHRhYmxlIGRvZXNuJ3QgaGF2ZSB0aGVhZFxuLnRhYmxlIHRib2R5OmZpcnN0LWNoaWxkIHRyOmZpcnN0LWNoaWxkIHRoLFxuZGl2W2NsYXNzKj10YWJsZS1yZXNwb25zaXZlXSA+IC50YWJsZSB0Ym9keTpmaXJzdC1jaGlsZCB0cjpmaXJzdC1jaGlsZCB0aCxcbi50YWJsZSB0Ym9keTpmaXJzdC1jaGlsZCB0cjpmaXJzdC1jaGlsZCB0ZCxcbmRpdltjbGFzcyo9dGFibGUtcmVzcG9uc2l2ZV0gPiAudGFibGUgdGJvZHk6Zmlyc3QtY2hpbGQgdHI6Zmlyc3QtY2hpbGQgdGQge1xuICAgIGJvcmRlci10b3A6IDA7XG59XG5cbi8vIElmIHRhYmxlIGNvbWVzIGFmdGVyIGNhcmQgZm9vdGVyXG4uY2FyZC1mb290ZXIge1xuICAgICsgW2NsYXNzKj10YWJsZS1yZXNwb25zaXZlXSxcbiAgICArIC50YWJsZSB7XG4gICAgICAgIGJvcmRlci10b3A6ICR0YWJsZS1ib3JkZXItd2lkdGggc29saWQgJHRhYmxlLWJvcmRlci1jb2xvcjtcbiAgICB9XG59XG4iLCIvKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAqXG4gKiAgIyBGb3JtIHN0eWxlc1xuICpcbiAqICBCYXNpYyBmb3JtIHN0eWxlcyBhbmQgb3ZlcnJpZGVzIG9mIGRlZmF1bHQgQm9vdHN0cmFwIHN0eWxlc1xuICpcbiAqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cblxuXG4vL1xuLy8gQmFzZSBzdHlsZXNcbi8vXG5cbi8vIExlZ2VuZFxubGVnZW5kIHtcbiAgICBwYWRkaW5nLXRvcDogKCRzcGFjZXIgLyAyKTtcbiAgICBwYWRkaW5nLWJvdHRvbTogKCRzcGFjZXIgLyAyKTtcbiAgICBtYXJnaW4tYm90dG9tOiAkc3BhY2VyO1xuICAgIGJvcmRlci1ib3R0b206ICRpbnB1dC1ib3JkZXItd2lkdGggc29saWQgJGlucHV0LWJvcmRlci1jb2xvcjtcbiAgICBmb250LXNpemU6ICRmb250LXNpemUtYmFzZTtcblxuICAgIC8vIFJlbW92ZSB0b3AgcGFkZGluZyBpbiBmaXJzdCBpdGVtc1xuICAgIGZpZWxkc2V0OmZpcnN0LWNoaWxkICYge1xuICAgICAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgICAgIHBhZGRpbmctdG9wOiAwO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4vLyBNdWx0aXBsZSBzZWxlY3RcbnNlbGVjdFttdWx0aXBsZV0sXG5zZWxlY3Rbc2l6ZV0ge1xuICAgIGhlaWdodDogMjAwcHg7XG4gICAgcGFkZGluZzogJGlucHV0LXBhZGRpbmcteDtcblxuICAgIC8vIE9wdGlvblxuICAgIG9wdGlvbiB7XG4gICAgICAgIHBhZGRpbmc6ICRkcm9wZG93bi1pdGVtLXBhZGRpbmcteSAkZHJvcGRvd24taXRlbS1wYWRkaW5nLXg7XG4gICAgICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGJvcmRlci1yYWRpdXMpO1xuXG4gICAgICAgICsgb3B0aW9uIHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6ICRkcm9wZG93bi1pdGVtLXNwYWNlci15O1xuICAgICAgICB9XG4gICAgfVxufVxuXG4vLyBUZXh0dWFsIGZvcm0gY29udHJvbHNcbi5mb3JtLWNvbnRyb2wge1xuICAgIGJhY2tncm91bmQtY2xpcDogYm9yZGVyLWJveDtcblxuICAgIC8vIERpc2FibGVkIHN0YXRlXG4gICAgJjpkaXNhYmxlZCB7XG4gICAgICAgIGNvbG9yOiAkaW5wdXQtZGlzYWJsZWQtY29sb3I7XG4gICAgfVxuXG4gICAgLy8gSW5wdXQgd2l0aCBjdXN0b20gY29sb3JcbiAgICAmW2NsYXNzKj1iZy1dOm5vdCguYmctd2hpdGUpOm5vdCguYmctbGlnaHQpOm5vdCguYmctdHJhbnNwYXJlbnQpIHtcblxuICAgICAgICAvLyBEaXNhYmxlZCBzdGF0ZVxuICAgICAgICAmOmRpc2FibGVkLFxuICAgICAgICAmW3JlYWRvbmx5XSB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaW5wdXQtZGFyay1kaXNhYmxlZC1iZztcbiAgICAgICAgICAgIGNvbG9yOiAkaW5wdXQtZGFyay1kaXNhYmxlZC1jb2xvcjtcbiAgICAgICAgICAgIGJvcmRlci1jb2xvcjogJGlucHV0LWRhcmstZGlzYWJsZWQtYm9yZGVyLWNvbG9yO1xuICAgICAgICB9XG5cbiAgICAgICAgLy8gUGxhY2Vob2xkZXIgY29sb3JcbiAgICAgICAgJjo6cGxhY2Vob2xkZXIge1xuICAgICAgICAgICAgY29sb3I6ICRpbnB1dC1wbGFjZWhvbGRlci1saWdodC1jb2xvcjtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLy8gRm9ybSBncm91cHNcbi5mb3JtLWdyb3VwIHtcblxuICAgIC8vIFJlbW92ZSBib3R0b20gbWFyZ2luIGZyb20gdGhlIGxhc3QgZ3JvdXBcbiAgICAuZm9ybS1ncm91cDpsYXN0LWNoaWxkIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICB9XG5cbiAgICAvLyBBZGQgdG9wIG1hcmdpbiBvbiBjZXJ0YWluIGJyZWFrcG9pbnRzXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKHNtKSB7XG4gICAgICAgIFtjbGFzcyo9XCJjb2wtbWQtXCJdOm5vdChbY2xhc3MqPWNvbC1mb3JtLWxhYmVsXSkgKyBbY2xhc3MqPVwiY29sLW1kLVwiXSB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAkZm9ybS1ncm91cC1tYXJnaW4tYm90dG9tO1xuICAgICAgICB9XG4gICAgfVxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihtZCkge1xuICAgICAgICBbY2xhc3MqPVwiY29sLWxnLVwiXTpub3QoW2NsYXNzKj1jb2wtZm9ybS1sYWJlbF0pICsgW2NsYXNzKj1cImNvbC1sZy1cIl0ge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogJGZvcm0tZ3JvdXAtbWFyZ2luLWJvdHRvbTtcbiAgICAgICAgfVxuICAgIH1cbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24obGcpIHtcbiAgICAgICAgW2NsYXNzKj1cImNvbC14bC1cIl06bm90KFtjbGFzcyo9Y29sLWZvcm0tbGFiZWxdKSArIFtjbGFzcyo9XCJjb2wteGwtXCJdIHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6ICRmb3JtLWdyb3VwLW1hcmdpbi1ib3R0b207XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi8vIFJlbW92ZSB0b3AgcGFkZGluZyBpbiBsYWJlbHMgb24gY2VydGFpbiBicmVha3BvaW50c1xuLy8gdG8gbWF0Y2ggdmVydGljYWwgZm9ybSBzcGFjaW5nc1xuW2NsYXNzKj1jb2wtZm9ybS1sYWJlbF0ge1xuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihzbSkge1xuICAgICAgICAmW2NsYXNzKj1cImNvbC1tZC1cIl0ge1xuICAgICAgICAgICAgcGFkZGluZy10b3A6IDA7XG4gICAgICAgIH1cbiAgICB9XG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKG1kKSB7XG4gICAgICAgICZbY2xhc3MqPVwiY29sLWxnLVwiXSB7XG4gICAgICAgICAgICBwYWRkaW5nLXRvcDogMDtcbiAgICAgICAgfVxuICAgIH1cbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24obGcpIHtcbiAgICAgICAgJltjbGFzcyo9XCJjb2wteGwtXCJdIHtcbiAgICAgICAgICAgIHBhZGRpbmctdG9wOiAwO1xuICAgICAgICB9XG4gICAgfVxufVxuXG5cbi8vXG4vLyBDaGVja2JveGVzIGFuZCByYWRpb3Ncbi8vXG5cbi8vIENvbnRhaW5lclxuLmZvcm0tY2hlY2sge1xuXG4gICAgLy8gRXhjbHVkZSBkcm9wZG93biBpdGVtc1xuICAgICY6bm90KC5mb3JtLWNoZWNrLWlubGluZSkge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAkZm9ybS1jaGVjay1tYXJnaW4teTtcblxuICAgICAgICAvLyBMYXN0IGl0ZW0gZG9lc24ndCBoYXZlIHNwYWNpbmdcbiAgICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBJbiBob3Jpem9udGFsIGZvcm0gZ3JvdXBcbiAgICAuZm9ybS1ncm91cC5yb3cgJjpub3QoLmRyb3Bkb3duLWl0ZW0pIHtcbiAgICAgICAgbWFyZ2luLXRvcDogKCRpbnB1dC1wYWRkaW5nLXkgKyByZW0tY2FsYygkaW5wdXQtYm9yZGVyLXdpZHRoKSk7XG4gICAgfVxuXG4gICAgLy8gRGlzYWJsZWQgc3RhdGVcbiAgICAmLmRpc2FibGVkIHtcbiAgICAgICAgY29sb3I6ICRmb3JtLWNoZWNrLWRpc2FibGVkLWNvbG9yO1xuXG4gICAgICAgIC5mb3JtLWNoZWNrLWxhYmVsIHtcbiAgICAgICAgICAgIGN1cnNvcjogJGN1cnNvci1kaXNhYmxlZDtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLy8gSW5wdXRcbi5mb3JtLWNoZWNrLWlucHV0IHtcbiAgICAmOmRpc2FibGVkIH4gLmZvcm0tY2hlY2stbGFiZWwge1xuICAgICAgICBjdXJzb3I6ICRjdXJzb3ItZGlzYWJsZWQ7XG4gICAgfVxufVxuXG4vLyBMYWJlbFxuLmZvcm0tY2hlY2stbGFiZWwge1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbn1cblxuLy8gSW5saW5lIGxpc3Rcbi5mb3JtLWNoZWNrLWlubGluZSB7XG5cbiAgICAvLyBMYWJlbFxuICAgIC5mb3JtLWNoZWNrLWxhYmVsIHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICAgIH1cblxuICAgIC8vIFVuZG8gLmZvcm0tY2hlY2staW5wdXQgZGVmYXVsdHMgYW5kIGFkZCBzb21lIGBtYXJnaW4tcmlnaHRgLlxuICAgIC5mb3JtLWNoZWNrLWlucHV0IHtcbiAgICAgICAgbWFyZ2luLXRvcDogJGZvcm0tY2hlY2staW5wdXQtbWFyZ2luLXk7XG4gICAgfVxuXG4gICAgLy8gTGFzdCBpdGVtXG4gICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgIH1cblxuICAgIC8vIE1ha2Ugc3VyZSBpbnB1dCBpcyBub3QgYWZmZWN0ZWQgYnkgdG9wL2xlZnQgc3BhY2luZ3NcbiAgICBpbnB1dCB7XG4gICAgICAgIHBvc2l0aW9uOiBzdGF0aWM7XG4gICAgfVxufVxuXG4vLyBSaWdodCBwb3NpdGlvblxuLmZvcm0tY2hlY2stcmlnaHQge1xuICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAkZm9ybS1jaGVjay1pbnB1dC1ndXR0ZXI7XG5cbiAgICAvLyBSZXZlcnNlIGlucHV0IGRpcmVjdGlvblxuICAgIC5mb3JtLWNoZWNrLWlucHV0LFxuICAgIGlucHV0IHtcbiAgICAgICAgbGVmdDogYXV0bztcbiAgICAgICAgcmlnaHQ6IDA7XG4gICAgfVxuXG4gICAgLy8gSW5saW5lIGxpc3RcbiAgICAmLmZvcm0tY2hlY2staW5saW5lIHtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgXG4gICAgICAgIC8vIElucHV0XG4gICAgICAgIC5mb3JtLWNoZWNrLWlucHV0IHtcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAkZm9ybS1jaGVjay1pbmxpbmUtaW5wdXQtbWFyZ2luLXg7XG4gICAgICAgIH1cbiAgICB9XG59XG5cblxuLy9cbi8vIEZvcm0gY29udHJvbCBmZWVkYmFjayBzdGF0ZXNcbi8vXG5cbi8vIERlZmF1bHQgbGVmdCBpY29uIHBvc2l0aW9uXG4uZm9ybS1ncm91cC1mZWVkYmFjayB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgLy8gTGVmdCBhbGlnbm1lbnRcbiAgICAmLWxlZnQge1xuXG4gICAgICAgIC8vIFN0aWNrIGljb24gdG8gdGhlIGxlZnRcbiAgICAgICAgLmZvcm0tY29udHJvbC1mZWVkYmFjayB7XG4gICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICB9XG5cbiAgICAgICAgLy8gRW5zdXJlIGljb25zIGRvbid0IG92ZXJsYXAgdGV4dFxuICAgICAgICAuZm9ybS1jb250cm9sIHtcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogJGlucHV0LXBhZGRpbmcteCArICRpbnB1dC1idG4tcGFkZGluZy14ICsgJGljb24tZm9udC1zaXplO1xuXG4gICAgICAgICAgICAvLyBTaXplc1xuICAgICAgICAgICAgJi1sZyB7XG4gICAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAkaW5wdXQtcGFkZGluZy14LWxnICsgJGlucHV0LWJ0bi1wYWRkaW5nLXgtbGcgKyAkaWNvbi1mb250LXNpemU7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAmLXNtIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6ICRpbnB1dC1wYWRkaW5nLXgtc20gKyAkaW5wdXQtYnRuLXBhZGRpbmcteC1zbSArICRpY29uLWZvbnQtc2l6ZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8vIFJpZ2h0IGFsaWdubWVudFxuICAgICYtcmlnaHQge1xuXG4gICAgICAgIC8vIFN0aWNrIGljb24gdG8gdGhlIHJpZ2h0XG4gICAgICAgIC5mb3JtLWNvbnRyb2wtZmVlZGJhY2sge1xuICAgICAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgIH1cblxuICAgICAgICAvLyBFbnN1cmUgaWNvbnMgZG9uJ3Qgb3ZlcmxhcCB0ZXh0XG4gICAgICAgIC5mb3JtLWNvbnRyb2wge1xuICAgICAgICAgICAgcGFkZGluZy1yaWdodDogJGlucHV0LXBhZGRpbmcteCArICRpbnB1dC1idG4tcGFkZGluZy14ICsgJGljb24tZm9udC1zaXplO1xuXG4gICAgICAgICAgICAvLyBTaXplc1xuICAgICAgICAgICAgJi1sZyB7XG4gICAgICAgICAgICAgICAgcGFkZGluZy1yaWdodDogJGlucHV0LXBhZGRpbmcteC1sZyArICRpbnB1dC1idG4tcGFkZGluZy14LWxnICsgJGljb24tZm9udC1zaXplO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgJi1zbSB7XG4gICAgICAgICAgICAgICAgcGFkZGluZy1yaWdodDogJGlucHV0LXBhZGRpbmcteC1zbSArICRpbnB1dC1idG4tcGFkZGluZy14LXNtICsgJGljb24tZm9udC1zaXplO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG4vLyBGZWVkYmFjayBpY29uXG4uZm9ybS1jb250cm9sLWZlZWRiYWNrIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGNvbG9yOiAkaW5wdXQtY29sb3I7XG4gICAgcGFkZGluZy1sZWZ0OiAkaW5wdXQtcGFkZGluZy14O1xuICAgIHBhZGRpbmctcmlnaHQ6ICRpbnB1dC1wYWRkaW5nLXg7XG4gICAgbGluZS1oZWlnaHQ6ICRpbnB1dC1oZWlnaHQ7XG4gICAgbWluLXdpZHRoOiAkaWNvbi1mb250LXNpemU7XG5cbiAgICAvLyBMYXJnZSBzaXplXG4gICAgJi1sZyB7XG4gICAgICAgIHBhZGRpbmctbGVmdDogJGlucHV0LXBhZGRpbmcteC1sZztcbiAgICAgICAgcGFkZGluZy1yaWdodDogJGlucHV0LXBhZGRpbmcteC1sZztcbiAgICAgICAgbGluZS1oZWlnaHQ6ICRpbnB1dC1oZWlnaHQtbGc7XG4gICAgfVxuXG4gICAgLy8gU21hbGwgc2l6ZVxuICAgICYtc20ge1xuICAgICAgICBwYWRkaW5nLWxlZnQ6ICRpbnB1dC1wYWRkaW5nLXgtc207XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6ICRpbnB1dC1wYWRkaW5nLXgtc207XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAkaW5wdXQtaGVpZ2h0LXNtO1xuICAgIH1cblxuICAgIC8vIENoYW5nZSBjb2xvciBpZiBjb21lcyBhZnRlciBjb2xvcmVkIGlucHV0XG4gICAgaW5wdXRbY2xhc3MqPWJnLV06bm90KC5iZy1saWdodCk6bm90KC5iZy13aGl0ZSk6bm90KC5iZy10cmFuc3BhcmVudCkgKyAmIHtcbiAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICB9XG59XG4iLCIvKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAqXG4gKiAgIyBCdXR0b24gY29tcG9uZW50XG4gKlxuICogIE92ZXJyaWRlcyBmb3IgYnV0dG9uIGJvb3RzdHJhcCBjb21wb25lbnRcbiAqXG4gKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5cbi8vIEJ1dHRvbiBiYXNlXG4uYnRuIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAvLyBCdXR0b24gc3RhdGVzXG4gICAgJjpub3QoLmJnLXRyYW5zcGFyZW50KTpub3QoW2NsYXNzKj1idG4tb3V0bGluZV0pOm5vdCguYnRuLWxpZ2h0KTpub3QoLmJ0bi1saW5rKTpub3QoW2NsYXNzKj1hbHBoYS1dKTpub3QoLmZhYi1tZW51LWJ0bikge1xuXG4gICAgICAgIC8vIFN0YXRlc1xuICAgICAgICAmOmhvdmVyLFxuICAgICAgICAmOmZvY3VzLFxuICAgICAgICAmLmZvY3VzLFxuICAgICAgICAmOmFjdGl2ZSxcbiAgICAgICAgJi5hY3RpdmUsXG4gICAgICAgIC5zaG93ID4gJi5kcm9wZG93bi10b2dnbGUge1xuICAgICAgICAgICAgYm94LXNoYWRvdzogJGJ0bi1kYXJrLWhvdmVyLWJveC1zaGFkb3c7XG4gICAgICAgIH1cblxuICAgICAgICAvLyBEaXNhYmxlZCBidXR0b25cbiAgICAgICAgJi5kaXNhYmxlZCxcbiAgICAgICAgJjpkaXNhYmxlZCB7XG4gICAgICAgICAgICBib3gtc2hhZG93OiBub25lO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLy8gRGlzYWJsZWQgc3RhdGVcbiAgICAmLmRpc2FibGVkLFxuICAgICY6ZGlzYWJsZWQge1xuICAgICAgICBjdXJzb3I6ICRjdXJzb3ItZGlzYWJsZWQ7XG4gICAgfVxufVxuXG4vLyBMaWdodCBidXR0b24gb3ZlcnJpZGVzXG4uYnRuLWxpZ2h0IHtcbiAgICBjb2xvcjogJGJ0bi1saWdodC1jb2xvcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYnRuLWxpZ2h0LWJnO1xuICAgIGJvcmRlci1jb2xvcjogJGJ0bi1saWdodC1ib3JkZXItY29sb3I7XG5cbiAgICAvLyBTdGF0ZXNcbiAgICAmOmhvdmVyLFxuICAgICY6Zm9jdXMsXG4gICAgJi5mb2N1cyxcbiAgICAmOm5vdChbZGlzYWJsZWRdKTpub3QoLmRpc2FibGVkKTphY3RpdmUsXG4gICAgJjpub3QoW2Rpc2FibGVkXSk6bm90KC5kaXNhYmxlZCkuYWN0aXZlLFxuICAgIC5zaG93ID4gJi5kcm9wZG93bi10b2dnbGUge1xuICAgICAgICBjb2xvcjogJGJ0bi1saWdodC1ob3Zlci1jb2xvcjtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGJ0bi1saWdodC1ob3Zlci1iZztcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAkYnRuLWxpZ2h0LWhvdmVyLWJvcmRlci1jb2xvcjtcbiAgICB9XG5cbiAgICAvLyBEaXNhYmxlZCBidXR0b25cbiAgICAmLmRpc2FibGVkLFxuICAgICY6ZGlzYWJsZWQge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYnRuLWxpZ2h0LWJnO1xuICAgICAgICBib3JkZXItY29sb3I6ICRidG4tbGlnaHQtYm9yZGVyLWNvbG9yO1xuICAgIH1cbn1cblxuXG4vL1xuLy8gQWx0ZXJuYXRlIGJ1dHRvbnNcbi8vXG5cbi8vIEN1c3RvbSBvdXRsaW5lIGJ1dHRvbnNcbi5idG4tb3V0bGluZSB7XG4gICAgJjpub3QoOmhvdmVyKTpub3QoOmFjdGl2ZSk6bm90KC5hY3RpdmUpOm5vdChbYXJpYS1leHBhbmRlZD10cnVlXSksXG4gICAgJi5kaXNhYmxlZCxcbiAgICAmOmRpc2FibGVkIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQhaW1wb3J0YW50O1xuICAgIH1cblxuICAgIC8vIEhvdmVyL2ZvY3VzIHN0YXRlc1xuICAgICY6bm90KC5kaXNhYmxlZCk6bm90KDpkaXNhYmxlZCk6bm90KFtjbGFzcyo9YWxwaGEtXSkge1xuICAgICAgICAmOmhvdmVyLFxuICAgICAgICAmOm5vdChbZGlzYWJsZWRdKTpub3QoLmRpc2FibGVkKTphY3RpdmUsXG4gICAgICAgICY6bm90KFtkaXNhYmxlZF0pOm5vdCguZGlzYWJsZWQpLmFjdGl2ZSxcbiAgICAgICAgLnNob3cgPiAmLmRyb3Bkb3duLXRvZ2dsZSB7XG4gICAgICAgICAgICBjb2xvcjogJHdoaXRlIWltcG9ydGFudDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8vIFdoaXRlIGJ1dHRvblxuICAgICYuYmctd2hpdGU6bm90KC5kaXNhYmxlZCk6bm90KDpkaXNhYmxlZCkge1xuICAgICAgICAmOmhvdmVyLFxuICAgICAgICAmOm5vdChbZGlzYWJsZWRdKTpub3QoLmRpc2FibGVkKTphY3RpdmUsXG4gICAgICAgICY6bm90KFtkaXNhYmxlZF0pOm5vdCguZGlzYWJsZWQpLmFjdGl2ZSxcbiAgICAgICAgLnNob3cgPiAmLmRyb3Bkb3duLXRvZ2dsZSB7XG4gICAgICAgICAgICBjb2xvcjogJGJvZHktY29sb3IhaW1wb3J0YW50O1xuICAgICAgICB9XG4gICAgfVxufVxuXG4vLyBMaW5rIGJ1dHRvbnNcbi5idG4tbGluayB7XG5cbiAgICAvLyBPcGVuZWQgZHJvcGRvd25cbiAgICAuc2hvdyA+ICYuZHJvcGRvd24tdG9nZ2xlIHtcbiAgICAgICAgY29sb3I6ICRsaW5rLWhvdmVyLWNvbG9yO1xuICAgIH1cbn1cblxuLy8gQnV0dG9uIHdpdGggaWNvbiBvbmx5XG4uYnRuLWljb24ge1xuICAgIHBhZGRpbmctbGVmdDogJGJ0bi1wYWRkaW5nLXkgKyAoKCRsaW5lLWhlaWdodC1jb21wdXRlZCAtICRpY29uLWZvbnQtc2l6ZSkgLyAyKTtcbiAgICBwYWRkaW5nLXJpZ2h0OiAkYnRuLXBhZGRpbmcteSArICgoJGxpbmUtaGVpZ2h0LWNvbXB1dGVkIC0gJGljb24tZm9udC1zaXplKSAvIDIpO1xuXG4gICAgLy8gQ2hlY2tib3ggYW5kIHJhZGlvXG4gICAgaW5wdXRbdHlwZT1jaGVja2JveF0sXG4gICAgaW5wdXRbdHlwZT1yYWRpb10ge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICB9XG5cbiAgICAvLyBTaXplc1xuICAgICYuYnRuLXNtIHtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAkYnRuLXBhZGRpbmcteS1zbSArICgoJGxpbmUtaGVpZ2h0LWNvbXB1dGVkIC0gJGljb24tZm9udC1zaXplKSAvIDIpO1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAkYnRuLXBhZGRpbmcteS1zbSArICgoJGxpbmUtaGVpZ2h0LWNvbXB1dGVkIC0gJGljb24tZm9udC1zaXplKSAvIDIpO1xuICAgIH1cbiAgICAmLmJ0bi1sZyB7XG4gICAgICAgIHBhZGRpbmctbGVmdDogJGJ0bi1wYWRkaW5nLXktbGcgKyAoKCRsaW5lLWhlaWdodC1jb21wdXRlZCAtICRpY29uLWZvbnQtc2l6ZSkgLyAyKTtcbiAgICAgICAgcGFkZGluZy1yaWdodDogJGJ0bi1wYWRkaW5nLXktbGcgKyAoKCRsaW5lLWhlaWdodC1jb21wdXRlZCAtICRpY29uLWZvbnQtc2l6ZSkgLyAyKTtcbiAgICB9XG59XG5cbi8vIEZsb2F0IGJ1dHRvblxuLmJ0bi1mbG9hdCB7XG4gICAgcGFkZGluZzogJGJ0bi1mbG9hdC1wYWRkaW5nO1xuICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGJ0bi1ib3JkZXItcmFkaXVzKTtcblxuICAgIC8vIFRyYW5zcGFyZW50IGJ1dHRvblxuICAgICYuYnRuLWxpbmsge1xuICAgICAgICBwYWRkaW5nOiAoJGJ0bi1mbG9hdC1wYWRkaW5nIC8gMS4yNSk7XG4gICAgfVxuXG4gICAgLy8gSWNvblxuICAgIGkge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgdG9wOiAwO1xuICAgIH1cblxuICAgIC8vIFRleHRcbiAgICA+IHNwYW4ge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgcGFkZGluZy10b3A6ICgkc3BhY2VyIC8gMik7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IC0oJGZvbnQtc2l6ZS1iYXNlIC8gMik7XG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuICAgIH1cbn1cblxuLy8gQnV0dG9ucyB3aXRoIHN0cm9uZyBib3JkZXJcbi5idG4ge1xuICAgICYuYm9yZGVyLTIge1xuICAgICAgICBwYWRkaW5nLXRvcDogKCRidG4tcGFkZGluZy15IC0gcmVtLWNhbGMoJGJvcmRlci13aWR0aCkpO1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogKCRidG4tcGFkZGluZy15IC0gcmVtLWNhbGMoJGJvcmRlci13aWR0aCkpO1xuXG4gICAgICAgIC8vIFNpemVzXG4gICAgICAgICYuYnRuLWxnIHtcbiAgICAgICAgICAgIHBhZGRpbmctdG9wOiAoJGJ0bi1wYWRkaW5nLXktbGcgLSByZW0tY2FsYygkYm9yZGVyLXdpZHRoKSk7XG4gICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogKCRidG4tcGFkZGluZy15LWxnIC0gcmVtLWNhbGMoJGJvcmRlci13aWR0aCkpO1xuICAgICAgICB9XG4gICAgICAgICYuYnRuLXNtIHtcbiAgICAgICAgICAgIHBhZGRpbmctdG9wOiAoJGJ0bi1wYWRkaW5nLXktc20gLSByZW0tY2FsYygkYm9yZGVyLXdpZHRoKSk7XG4gICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogKCRidG4tcGFkZGluZy15LXNtIC0gcmVtLWNhbGMoJGJvcmRlci13aWR0aCkpO1xuICAgICAgICB9XG5cbiAgICAgICAgLy8gSWNvbiBidXR0b25cbiAgICAgICAgJi5idG4taWNvbiB7XG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6ICRidG4tcGFkZGluZy15ICsgKCgkbGluZS1oZWlnaHQtY29tcHV0ZWQgLSAkaWNvbi1mb250LXNpemUpIC8gMikgLSByZW0tY2FsYygkYm9yZGVyLXdpZHRoKTtcbiAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6ICRidG4tcGFkZGluZy15ICsgKCgkbGluZS1oZWlnaHQtY29tcHV0ZWQgLSAkaWNvbi1mb250LXNpemUpIC8gMikgLSByZW0tY2FsYygkYm9yZGVyLXdpZHRoKTtcblxuICAgICAgICAgICAgLy8gU2l6ZXNcbiAgICAgICAgICAgICYuYnRuLWxnIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6ICRidG4tcGFkZGluZy15LWxnICsgKCgkbGluZS1oZWlnaHQtY29tcHV0ZWQgLSAkaWNvbi1mb250LXNpemUpIC8gMikgLSByZW0tY2FsYygkYm9yZGVyLXdpZHRoKTtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAkYnRuLXBhZGRpbmcteS1sZyArICgoJGxpbmUtaGVpZ2h0LWNvbXB1dGVkIC0gJGljb24tZm9udC1zaXplKSAvIDIpIC0gcmVtLWNhbGMoJGJvcmRlci13aWR0aCk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAmLmJ0bi1zbSB7XG4gICAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAkYnRuLXBhZGRpbmcteS1zbSArICgoJGxpbmUtaGVpZ2h0LWNvbXB1dGVkIC0gJGljb24tZm9udC1zaXplKSAvIDIpIC0gcmVtLWNhbGMoJGJvcmRlci13aWR0aCk7XG4gICAgICAgICAgICAgICAgcGFkZGluZy1yaWdodDogJGJ0bi1wYWRkaW5nLXktc20gKyAoKCRsaW5lLWhlaWdodC1jb21wdXRlZCAtICRpY29uLWZvbnQtc2l6ZSkgLyAyKSAtIHJlbS1jYWxjKCRib3JkZXItd2lkdGgpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLy8gRmxvYXQgYnV0dG9uXG4gICAgICAgICYuYnRuLWZsb2F0IHtcbiAgICAgICAgICAgIHBhZGRpbmc6ICgkYnRuLWZsb2F0LXBhZGRpbmcgLSByZW0tY2FsYygkYm9yZGVyLXdpZHRoKSk7XG4gICAgICAgIH1cbiAgICB9XG59XG5cblxuLy9cbi8vIExhYmVsZWQgYnV0dG9uc1xuLy9cblxuIC8vIEJhc2Vcbi5idG4tbGFiZWxlZCB7XG5cbiAgICAvLyBJY29uXG4gICAgPiBiIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IC0kYnRuLWJvcmRlci13aWR0aDtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgkYmxhY2ssIDAuMTUpO1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgICAgIHBhZGRpbmc6ICgkbGluZS1oZWlnaHQtY29tcHV0ZWQgLSAkaWNvbi1mb250LXNpemUgKyAkYnRuLXBhZGRpbmcteSAtIHJlbS1jYWxjKCRidG4tYm9yZGVyLXdpZHRoKSk7XG5cbiAgICAgICAgLy8gQ2VudGVyIGljb24gdmVydGljYWxseVxuICAgICAgICA+IGkge1xuICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLy8gUm91bmRlZCBpY29uXG4gICAgJi5yb3VuZGVkLXJvdW5kIHtcbiAgICAgICAgPiBiIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGJvcmRlci1yYWRpdXMtcm91bmQpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLy8gU2l6ZXNcbiAgICAmLmJ0bi1sZyA+IGIge1xuICAgICAgICBwYWRkaW5nOiAoJGxpbmUtaGVpZ2h0LWNvbXB1dGVkIC0gJGljb24tZm9udC1zaXplICsgJGJ0bi1wYWRkaW5nLXktbGcgLSByZW0tY2FsYygkYnRuLWJvcmRlci13aWR0aCkpO1xuICAgIH1cbiAgICAmLmJ0bi1zbSA+IGIge1xuICAgICAgICBwYWRkaW5nOiAoJGxpbmUtaGVpZ2h0LWNvbXB1dGVkIC0gJGljb24tZm9udC1zaXplICsgJGJ0bi1wYWRkaW5nLXktc20gLSByZW0tY2FsYygkYnRuLWJvcmRlci13aWR0aCkpO1xuICAgIH1cbn1cblxuLy8gTGVmdCBpY29uXG4uYnRuLWxhYmVsZWQtbGVmdCB7XG4gICAgcGFkZGluZy1sZWZ0OiAoKCgkbGluZS1oZWlnaHQtY29tcHV0ZWQgLSAkaWNvbi1mb250LXNpemUgKyAkYnRuLXBhZGRpbmcteSAtIHJlbS1jYWxjKCRidG4tYm9yZGVyLXdpZHRoKSkgKiAyKSArICRpY29uLWZvbnQtc2l6ZSkgKyAkYnRuLXBhZGRpbmcteDtcblxuICAgIC8vIEljb25cbiAgICA+IGIge1xuICAgICAgICBsZWZ0OiAtJGJ0bi1ib3JkZXItd2lkdGg7XG4gICAgICAgIEBpbmNsdWRlIGJvcmRlci1sZWZ0LXJhZGl1cygkYnRuLWJvcmRlci1yYWRpdXMpO1xuICAgIH1cblxuICAgIC8vIFNpemVzXG4gICAgJi5idG4tbGcge1xuICAgICAgICBwYWRkaW5nLWxlZnQ6ICgoKCRsaW5lLWhlaWdodC1jb21wdXRlZC1sZyAtICRpY29uLWZvbnQtc2l6ZSArICRidG4tcGFkZGluZy15LWxnIC0gcmVtLWNhbGMoJGJ0bi1ib3JkZXItd2lkdGgpKSAqIDIpICsgJGljb24tZm9udC1zaXplKSArICRidG4tcGFkZGluZy14LWxnO1xuXG4gICAgICAgID4gYiB7XG4gICAgICAgICAgICBAaW5jbHVkZSBib3JkZXItbGVmdC1yYWRpdXMoJGJ0bi1ib3JkZXItcmFkaXVzLWxnKTtcbiAgICAgICAgfVxuICAgIH1cbiAgICAmLmJ0bi1zbSB7XG4gICAgICAgIHBhZGRpbmctbGVmdDogKCgoJGxpbmUtaGVpZ2h0LWNvbXB1dGVkIC0gJGljb24tZm9udC1zaXplICsgJGJ0bi1wYWRkaW5nLXktc20gLSByZW0tY2FsYygkYnRuLWJvcmRlci13aWR0aCkpICogMikgKyAkaWNvbi1mb250LXNpemUpICsgJGJ0bi1wYWRkaW5nLXgtc207XG5cbiAgICAgICAgPiBiIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGJvcmRlci1sZWZ0LXJhZGl1cygkYnRuLWJvcmRlci1yYWRpdXMtc20pO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4vLyBSaWdodCBpY29uXG4uYnRuLWxhYmVsZWQtcmlnaHQge1xuICAgIHBhZGRpbmctcmlnaHQ6ICgoKCRsaW5lLWhlaWdodC1jb21wdXRlZCAtICRpY29uLWZvbnQtc2l6ZSArICRidG4tcGFkZGluZy15IC0gcmVtLWNhbGMoJGJ0bi1ib3JkZXItd2lkdGgpKSAqIDIpICsgJGljb24tZm9udC1zaXplKSArICRidG4tcGFkZGluZy14O1xuXG4gICAgLy8gSWNvblxuICAgID4gYiB7XG4gICAgICAgIHJpZ2h0OiAtJGJ0bi1ib3JkZXItd2lkdGg7XG4gICAgICAgIEBpbmNsdWRlIGJvcmRlci1yaWdodC1yYWRpdXMoJGJ0bi1ib3JkZXItcmFkaXVzKTtcbiAgICB9XG59XG4iLCIvKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAqXG4gKiAgIyBEcm9wZG93biBtZW51IGNvbXBvbmVudFxuICpcbiAqICBPdmVycmlkZXMgZm9yIGRyb3Bkb3duIG1lbnUgYm9vdHN0cmFwIGNvbXBvbmVudFxuICpcbiAqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cblxuXG4vL1xuLy8gQmFzZSBzdHlsZXNcbi8vXG5cbi8vIERyb3Bkb3duIG1lbnUgaXRlbVxuLmRyb3Bkb3duLWl0ZW0ge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgb3V0bGluZTogMDtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oYmFja2dyb3VuZC1jb2xvciBlYXNlLWluLW91dCAkY29tcG9uZW50LXRyYW5zaXRpb24tdGltZXIsIGNvbG9yIGVhc2UtaW4tb3V0ICRjb21wb25lbnQtdHJhbnNpdGlvbi10aW1lcik7XG5cbiAgICAvLyBBZGQgc3BhY2luZyBiZXR3ZWVuIGl0ZW1zXG4gICAgJiArICYsXG4gICAgLmRyb3Bkb3duLXN1Ym1lbnUgKyAmLFxuICAgICYgKyAuZHJvcGRvd24tc3VibWVudSB7XG4gICAgICAgIG1hcmdpbi10b3A6ICRkcm9wZG93bi1pdGVtLXNwYWNlci15O1xuICAgIH1cblxuICAgIC8vIER1ZSB0byBkZWZhdWx0IHNvbHV0aW9uLCB0aGlzIG5lZWRzIHRvIGJlIGR1cGxpY2F0ZWRcbiAgICAvLyBhcyA6YWN0aXZlIGlzIGRpZmZlcmVudCBmcm9tIC5hY3RpdmUgaW4gdGhlIHRlbXBsYXRlXG4gICAgJjphY3RpdmUge1xuICAgICAgICBjb2xvcjogJGRyb3Bkb3duLWxpbmstaG92ZXItY29sb3I7XG4gICAgICAgIEBpbmNsdWRlIGdyYWRpZW50LWJnKCRkcm9wZG93bi1saW5rLWhvdmVyLWJnKTtcbiAgICB9XG4gICAgJi5hY3RpdmUge1xuICAgICAgICBjb2xvcjogJGRyb3Bkb3duLWxpbmstYWN0aXZlLWNvbG9yO1xuICAgICAgICBAaW5jbHVkZSBncmFkaWVudC1iZygkZHJvcGRvd24tbGluay1hY3RpdmUtYmcpO1xuXG4gICAgICAgIC8vIENhbGN1bGF0ZSBjb2xvciBzaGFkZXMgZm9yIGJhZGdlc1xuICAgICAgICAvLyBkZXBlbmRpbmcgb24gYWN0aXZlIGl0ZW0gY29sb3JcbiAgICAgICAgQGlmIChsaWdodG5lc3MoJGRyb3Bkb3duLWxpbmstYWN0aXZlLWJnKSA8IDc1KSB7XG5cbiAgICAgICAgICAgIC8vIEFsbCBiYWRnZXMgZXhjZXB0IGJhZGdlIG1hcmtcbiAgICAgICAgICAgIC5iYWRnZTpub3QoLmJhZGdlLW1hcmspIHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGUhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkYm9keS1jb2xvciFpbXBvcnRhbnQ7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC8vIEJhZGdlIG1hcmsgd2l0aCBjdXN0b20gYmdcbiAgICAgICAgICAgIC5iYWRnZS1tYXJrW2NsYXNzKj1iZy1dIHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGUhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgIGJvcmRlci1jb2xvcjogJHdoaXRlIWltcG9ydGFudDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLy8gQmFkZ2UgbWFyayB3aXRoIGN1c3RvbSBib3JkZXJcbiAgICAgICAgICAgIC5iYWRnZS1tYXJrW2NsYXNzKj1ib3JkZXItXSB7XG4gICAgICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiAkd2hpdGUhaW1wb3J0YW50O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLy8gRGlzYWJsZWQgc3RhdGVcbiAgICAmLmRpc2FibGVkLFxuICAgICY6ZGlzYWJsZWQge1xuICAgICAgICBjb2xvcjogJGRyb3Bkb3duLWxpbmstZGlzYWJsZWQtY29sb3I7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50OyBcbiAgICAgICAgY3Vyc29yOiAkY3Vyc29yLWRpc2FibGVkO1xuXG4gICAgICAgIC8vIE11dGUgYmFkZ2VzIGFuZCBpbWFnZXNcbiAgICAgICAgPiAuYmFkZ2UsXG4gICAgICAgID4gaW1nIHtcbiAgICAgICAgICAgIG9wYWNpdHk6IDAuODtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLy8gQWN0aXZlIHN1Ym1lbnUgaW5kaWNhdG9yXG4uZHJvcGRvd24taXRlbS1vcGVuIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZHJvcGRvd24tbGluay1ob3Zlci1iZztcbiAgICBjb2xvcjogJGRyb3Bkb3duLWxpbmstaG92ZXItY29sb3I7XG59XG5cbi8vIERyb3Bkb3duIHNlY3Rpb24gaGVhZGVyc1xuLmRyb3Bkb3duLWhlYWRlciB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIG1hcmdpbi10b3A6ICgkZHJvcGRvd24tcGFkZGluZy15IC8gMik7XG4gICAgbWFyZ2luLWJvdHRvbTogKCRkcm9wZG93bi1wYWRkaW5nLXkgLyAyKTtcbiAgICBsaW5lLWhlaWdodDogJGxpbmUtaGVpZ2h0LXNtO1xuXG4gICAgLy8gSGlnaGxpZ2h0ZWQgaGVhZGVyXG4gICAgJi1oaWdobGlnaHQge1xuICAgICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZHJvcGRvd24taGVhZGVyLWJnO1xuXG4gICAgICAgIC8vIEFkZCB0b3Agc3BhY2luZ1xuICAgICAgICAuZHJvcGRvd24taXRlbSArICYsXG4gICAgICAgICYgKyAuZHJvcGRvd24taXRlbSB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAkZHJvcGRvd24tcGFkZGluZy15O1xuICAgICAgICB9XG5cbiAgICAgICAgLy8gLi4uIGJ1dCByZW1vdmUgZnJvbSB0aGUgZmlyc3Qgb25lXG4gICAgICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLy8gSWNvbnMsIGJhZGdlcyBhbmQgaW1hZ2VzXG4uZHJvcGRvd24taXRlbSxcbi5kcm9wZG93bi1oZWFkZXIge1xuXG4gICAgLy8gSWNvbnMgYW5kIGltYWdlc1xuICAgID4gaSxcbiAgICA+IGltZyB7XG4gICAgICAgIG1hcmdpbi1yaWdodDogJGRyb3Bkb3duLWljb24tc3BhY2VyLXg7XG4gICAgfVxuXG4gICAgLy8gSWNvblxuICAgID4gaSB7XG4gICAgICAgIHRvcDogMDtcbiAgICB9XG5cbiAgICAvLyBJbWFnZSB0aHVtYnNcbiAgICA+IGltZyB7XG4gICAgICAgIG1heC1oZWlnaHQ6ICRsaW5lLWhlaWdodC1jb21wdXRlZDtcbiAgICB9XG59XG5cbi8vIERpdmlkZXJzIHdpdGhpbiB0aGUgZHJvcGRvd25cbi5kcm9wZG93bi1kaXZpZGVyIHtcbiAgICBtYXJnaW46ICRkcm9wZG93bi1pdGVtLXBhZGRpbmcteSAwO1xufVxuXG4vLyBDaGVja2JveGVzIGFuZCByYWRpb3Ncbi5kcm9wZG93bi1pdGVtIHtcbiAgICAmLmZvcm0tY2hlY2sge1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuXG4gICAgICAgIC8vIExhYmVsXG4gICAgICAgIC5mb3JtLWNoZWNrLWxhYmVsIHtcbiAgICAgICAgICAgIGZsZXg6IDE7XG4gICAgICAgICAgICBwYWRkaW5nOiAkZHJvcGRvd24taXRlbS1wYWRkaW5nLXkgJGRyb3Bkb3duLWl0ZW0tcGFkZGluZy14O1xuICAgICAgICB9XG5cbiAgICAgICAgLy8gUmlnaHQgYWxpZ25tZW50XG4gICAgICAgICYuZm9ybS1jaGVjay1yaWdodCB7XG4gICAgICAgICAgICAuZm9ybS1jaGVjay1sYWJlbCB7XG4gICAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAkZHJvcGRvd24taXRlbS1wYWRkaW5nLXg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi8vIFNjcm9sbGFibGUgZHJvcGRvd25cbi5kcm9wZG93bi1zY3JvbGxhYmxlIHtcbiAgICBtYXgtaGVpZ2h0OiAkZHJvcGRvd24tc2Nyb2xsYWJsZS1tYXgtaGVpZ2h0O1xuICAgIG92ZXJmbG93LXk6IGF1dG87XG59XG5cblxuLy9cbi8vIERyb3Bkb3duIHN1Ym1lbnVcbi8vXG5cbi5kcm9wZG93bi1tZW51IHtcbiAgICA+IC5kcm9wZG93bi1zdWJtZW51IHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgICAgIC8vIExpbmtcbiAgICAgICAgPiAuZHJvcGRvd24taXRlbSB7XG4gICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAoJGRyb3Bkb3duLWl0ZW0tcGFkZGluZy14ICsgKCRpY29uLWZvbnQtc2l6ZSAqIDEuNSkpO1xuXG4gICAgICAgICAgICAvLyBBcnJvdyBpY29uXG4gICAgICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgICAgICBAaWYgJGRpcmVjdGlvbiA9PSAnTFRSJyB7XG4gICAgICAgICAgICAgICAgICAgIGNvbnRlbnQ6ICdcXGU5YzcnO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBAZWxzZSB7XG4gICAgICAgICAgICAgICAgICAgIGNvbnRlbnQ6ICdcXGU5YzQnO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBmb250LWZhbWlseTogJGljb24tZm9udC1mYW1pbHk7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgIHRvcDogNTAlO1xuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IC0oJGljb24tZm9udC1zaXplIC8gMik7XG4gICAgICAgICAgICAgICAgcmlnaHQ6ICRkcm9wZG93bi1pdGVtLXBhZGRpbmcteDtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6ICRpY29uLWZvbnQtc2l6ZTtcbiAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMTtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBsbC1mb250LXNtb290aGluZygpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLy8gSG92ZXIgYW5kIG9wZW4gc3RhdGVzXG4gICAgICAgICYuc2hvdyxcbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICA+IC5kcm9wZG93bi1pdGVtIHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZHJvcGRvd24tbGluay1ob3Zlci1iZztcbiAgICAgICAgICAgICAgICBjb2xvcjogJGRyb3Bkb3duLWxpbmstaG92ZXItY29sb3I7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAvLyBEaXNwbGF5IHN1Ym1lbnUgb24gaG92ZXJcbiAgICAgICAgJjpob3ZlciA+IC5kcm9wZG93bi1pdGVtOm5vdCguZHJvcGRvd24tdG9nZ2xlKSB+IC5kcm9wZG93bi1tZW51LFxuICAgICAgICAmOmZvY3VzID4gLmRyb3Bkb3duLWl0ZW06bm90KC5kcm9wZG93bi10b2dnbGUpIH4gLmRyb3Bkb3duLW1lbnUge1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIH1cblxuICAgICAgICAvLyBIaWRlIHN1Ym1lbnUgaWYgcGFyZW50IGlzIGRpc2FibGVkXG4gICAgICAgICYuZGlzYWJsZWQge1xuICAgICAgICAgICAgPiAuZHJvcGRvd24tbWVudSB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgPiAuZHJvcGRvd24taXRlbSB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICAgICAgY29sb3I6ICRkcm9wZG93bi1saW5rLWRpc2FibGVkLWNvbG9yO1xuICAgICAgICAgICAgICAgIGN1cnNvcjogJGN1cnNvci1kaXNhYmxlZDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC8vIFN1Ym1lbnUgcG9zaXRpb25cbiAgICAgICAgPiAuZHJvcGRvd24tbWVudSB7XG4gICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgICBsZWZ0OiAxMDAlO1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogLSgkZHJvcGRvd24tcGFkZGluZy15ICsgcmVtLWNhbGMoJGRyb3Bkb3duLWJvcmRlci13aWR0aCkpO1xuICAgICAgICB9XG5cbiAgICAgICAgLy8gTGVmdCBzdWJtZW51IHBvc2l0aW9uXG4gICAgICAgICYuZHJvcGRvd24tc3VibWVudS1sZWZ0ID4gLmRyb3Bkb3duLW1lbnUge1xuICAgICAgICAgICAgbGVmdDogYXV0bztcbiAgICAgICAgICAgIHJpZ2h0OiAxMDAlO1xuICAgICAgICB9XG5cbiAgICAgICAgLy8gTWFrZSBzdWJtZW51IGxldmVscyBzdGFja2VkIG9uIG1vYmlsZVxuICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24obWQpIHtcbiAgICAgICAgICAgIFxuICAgICAgICAgICAgLy8gQ2hhbmdlIGFycm93IGljb24gZGlyZWN0aW9uXG4gICAgICAgICAgICAuZHJvcGRvd24tdG9nZ2xlOmFmdGVyIHtcbiAgICAgICAgICAgICAgICBjb250ZW50OiAnXFxlOWM1JztcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLy8gTWFrZSB0aGVtIHN0YWNrZWRcbiAgICAgICAgICAgICYsXG4gICAgICAgICAgICAmLmRyb3Bkb3duLXN1Ym1lbnUtbGVmdCB7XG4gICAgICAgICAgICAgICAgLmRyb3Bkb3duLW1lbnUge1xuICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogc3RhdGljO1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW46IDAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgICAgICBib3JkZXItd2lkdGg6IDA7XG4gICAgICAgICAgICAgICAgICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoMCk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAvLyBUaGlyZCBsZXZlbFxuICAgICAgICAgICAgPiAuZHJvcGRvd24tbWVudSA+IC5kcm9wZG93bi1pdGVtLFxuICAgICAgICAgICAgPiAuZHJvcGRvd24tbWVudSA+IC5kcm9wZG93bi1zdWJtZW51ID4gLmRyb3Bkb3duLWl0ZW0ge1xuICAgICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogKCRkcm9wZG93bi1pdGVtLXBhZGRpbmcteCAqIDIpO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAvLyBUaGlyZCBsZXZlbFxuICAgICAgICAgICAgPiAuZHJvcGRvd24tbWVudSA+IC5kcm9wZG93bi1zdWJtZW51ID4gLmRyb3Bkb3duLW1lbnUgPiAuZHJvcGRvd24taXRlbSxcbiAgICAgICAgICAgID4gLmRyb3Bkb3duLW1lbnUgPiAuZHJvcGRvd24tc3VibWVudSA+IC5kcm9wZG93bi1tZW51ID4gLmRyb3Bkb3duLXN1Ym1lbnUgPiAuZHJvcGRvd24taXRlbSB7XG4gICAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAoJGRyb3Bkb3duLWl0ZW0tcGFkZGluZy14ICogMyk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBSZXZlcnNlIGluIGRyb3Bkb3duIGFuZCBib3R0b20gbmF2YmFyc1xuICAgIC5kcm9wdXAgPiAuZHJvcGRvd24tbWVudSB7XG4gICAgICAgIHRvcDogYXV0bztcbiAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAtKCRkcm9wZG93bi1wYWRkaW5nLXkgKyByZW0tY2FsYygkZHJvcGRvd24tYm9yZGVyLXdpZHRoKSk7XG4gICAgfVxuXG4gICAgLy8gU3BhY2luZyBiZXR3ZWVuIHN1Ym1lbnVzXG4gICAgLmRyb3Bkb3duLXN1Ym1lbnUgKyAuZHJvcGRvd24tc3VibWVudSB7XG4gICAgICAgIG1hcmdpbi10b3A6ICRkcm9wZG93bi1pdGVtLXNwYWNlci15O1xuICAgIH1cbn1cblxuXG4vL1xuLy8gQWRkaXRpb25hbCBhbGlnbm1lbnRcbi8vXG5cbi8vIFJUTCBhbGlnbm1lbnRcbkBpZiAkZGlyZWN0aW9uID09ICdSVEwnIHtcblxuICAgIC8vIEJhc2UgYWxpZ25tZW50XG4gICAgLmRyb3Bkb3duLW1lbnUge1xuICAgICAgICAuY29udGV4dC10b2dnbGUgJixcbiAgICAgICAgLm5hdmJhci1uYXYgPiAubmF2LWl0ZW06bm90KFtjbGFzcyo9bWVnYS1tZW51XSkgPiAmLFxuICAgICAgICAubmF2LWl0ZW06bm90KFtjbGFzcyo9bWVnYS1tZW51XSkgLm5hdmJhci1uYXYtbGluayB+ICYge1xuICAgICAgICAgICAgLypydGw6aWdub3JlKi9cbiAgICAgICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLy8gUmV2ZXJzZVxuICAgIC5kcm9wZG93bi1tZW51LXJpZ2h0IHtcbiAgICAgICAgLmNvbnRleHQtdG9nZ2xlICYsXG4gICAgICAgIC5uYXZiYXItbmF2ID4gLm5hdi1pdGVtOm5vdChbY2xhc3MqPW1lZ2EtbWVudV0pID4gJixcbiAgICAgICAgLm5hdi1pdGVtOm5vdChbY2xhc3MqPW1lZ2EtbWVudV0pIC5uYXZiYXItbmF2LWxpbmsgfiAmIHtcbiAgICAgICAgICAgIC8qcnRsOmJlZ2luOmlnbm9yZSovXG4gICAgICAgICAgICByaWdodDogYXV0bztcbiAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICAvKnJ0bDplbmQ6aWdub3JlKi9cbiAgICAgICAgfVxuICAgIH1cbn1cblxuLy8gRHJvcCByaWdodFxuLmRyb3ByaWdodCB7XG4gICAgLmRyb3Bkb3duLXRvZ2dsZSB7XG4gICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi8vIERyb3AgbGVmdFxuLmRyb3BsZWZ0IHtcbiAgICAuZHJvcGRvd24tdG9nZ2xlIHtcbiAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBSZW1vdmUgbGVmdCBhcnJvdyBpbiBzdWJtZW51XG4gICAgLmRyb3Bkb3duLXN1Ym1lbnUgLmRyb3Bkb3duLXRvZ2dsZTo6YmVmb3JlIHtcbiAgICAgICAgY29udGVudDogbm9uZTtcbiAgICB9XG59XG5cblxuLy9cbi8vIE9wdGlvbmFsIHNpemluZ1xuLy9cblxuLy8gTGFyZ2Vcbi5kcm9wZG93bi1tZW51LWxnIHtcbiAgICAuZHJvcGRvd24taXRlbSB7XG4gICAgICAgIHBhZGRpbmctdG9wOiAkaW5wdXQtYnRuLXBhZGRpbmcteS1sZztcbiAgICAgICAgcGFkZGluZy1ib3R0b206ICRpbnB1dC1idG4tcGFkZGluZy15LWxnO1xuICAgICAgICBmb250LXNpemU6ICRmb250LXNpemUtbGc7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAkaW5wdXQtYnRuLWxpbmUtaGVpZ2h0LWxnO1xuICAgIH1cbn1cblxuLy8gU21hbGxcbi5kcm9wZG93bi1tZW51LXNtIHtcbiAgICAuZHJvcGRvd24taXRlbSB7XG4gICAgICAgIHBhZGRpbmctdG9wOiAkaW5wdXQtYnRuLXBhZGRpbmcteS1zbTtcbiAgICAgICAgcGFkZGluZy1ib3R0b206ICRpbnB1dC1idG4tcGFkZGluZy15LXNtO1xuICAgICAgICBmb250LXNpemU6ICRmb250LXNpemUtc207XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAkaW5wdXQtYnRuLWxpbmUtaGVpZ2h0LXNtO1xuICAgIH1cbn1cblxuXG4vL1xuLy8gU29saWQgY29sb3IgZHJvcGRvd24gbWVudVxuLy9cblxuLmRyb3Bkb3duLW1lbnVbY2xhc3MqPWJnLV06bm90KC5iZy13aGl0ZSk6bm90KC5iZy1saWdodCkge1xuXG4gICAgLy8gTGlua3MgYW5kIGxhYmVsc1xuICAgID4gLmRyb3Bkb3duLWl0ZW0sXG4gICAgPiAuZHJvcGRvd24tc3VibWVudSA+IC5kcm9wZG93bi1pdGVtIHtcbiAgICAgICAgY29sb3I6ICR3aGl0ZTtcblxuICAgICAgICAvLyBIb3ZlciBzdGF0ZVxuICAgICAgICBAaW5jbHVkZSBob3Zlci1mb2N1cyB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZHJvcGRvd24tZGFyay1ob3Zlci1iZztcbiAgICAgICAgfVxuXG4gICAgICAgIC8vIEFjdGl2ZSBzdGF0ZVxuICAgICAgICAmLmFjdGl2ZSB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZHJvcGRvd24tZGFyay1hY3RpdmUtYmc7XG4gICAgICAgIH1cblxuICAgICAgICAvLyBEaXNhYmxlZCBzdGF0ZVxuICAgICAgICAmLmRpc2FibGVkIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICAgICAgY29sb3I6ICRkcm9wZG93bi1kYXJrLWRpc2FibGVkLWNvbG9yO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLy8gQmFja2dyb3VuZCBjb2xvciBmb3Igc3VibWVudSBsaW5rIHN0YXRlc1xuICAgID4gLmRyb3Bkb3duLXN1Ym1lbnUge1xuICAgICAgICAmLnNob3csXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgPiAuZHJvcGRvd24taXRlbSB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGRyb3Bkb3duLWRhcmstaG92ZXItYmc7XG4gICAgICAgICAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC8vIFJlbW92ZSBiZyBjb2xvciBpbiBkaXNhYmxlZCBsaW5rc1xuICAgICAgICAmLmRpc2FibGVkIHtcbiAgICAgICAgICAgID4gLmRyb3Bkb3duLWl0ZW0ge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkZHJvcGRvd24tZGFyay1kaXNhYmxlZC1jb2xvcjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8vIERyb3Bkb3duIGhlYWRlclxuICAgID4gLmRyb3Bkb3duLWhlYWRlciB7XG4gICAgICAgIGNvbG9yOiAkZHJvcGRvd24tZGFyay1oZWFkZXItY29sb3I7XG5cbiAgICAgICAgJi1oaWdobGlnaHQge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGRyb3Bkb3duLWRhcmstaGVhZGVyLWJnO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLy8gRGl2aWRlclxuICAgID4gLmRyb3Bkb3duLWRpdmlkZXIge1xuICAgICAgICBib3JkZXItdG9wLWNvbG9yOiAkZHJvcGRvd24tZGFyay1kaXZpZGVyLWJnO1xuICAgIH1cbn1cbiIsIi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICpcbiAqICAjIEJ1dHRvbiBncm91cCBjb21wb25lbnRcbiAqXG4gKiAgT3ZlcnJpZGVzIGZvciBidXR0b24gZ3JvdXAgYm9vdHN0cmFwIGNvbXBvbmVudFxuICpcbiAqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cblxuLy8gTWFrZSBzdXJlIGN1c3RvbSBib3JkZXIgd2lkdGhzIHdvcmsgY29ycmVjdGx5XG4uYnRuLWdyb3VwLFxuLmJ0bi1ncm91cC12ZXJ0aWNhbCB7XG5cbiAgICAvLyBEb3VibGUgYm9yZGVyIHdpZHRoXG4gICAgLmJ0biArIC5idG4uYm9yZGVyLTIsXG4gICAgLmJ0bi5ib3JkZXItMiArIC5idG4tZ3JvdXAsXG4gICAgLmJ0bi1ncm91cCArIC5idG4uYm9yZGVyLTIge1xuICAgICAgICBtYXJnaW4tbGVmdDogLSgkYnRuLWJvcmRlci13aWR0aCAqIDIpO1xuICAgIH1cbiAgICBcbiAgICAvLyBUcmlwcGxlIGJvcmRlciB3aWR0aFxuICAgIC5idG4gKyAuYnRuLmJvcmRlci0zLFxuICAgIC5idG4uYm9yZGVyLTMgKyAuYnRuLWdyb3VwLFxuICAgIC5idG4tZ3JvdXAgKyAuYnRuLmJvcmRlci0zIHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IC0oJGJ0bi1ib3JkZXItd2lkdGggKiAzKTtcbiAgICB9XG59XG5cbi8vIEp1c3RpZmllZCBidXR0b24gZ3JvdXBcbi5idG4tZ3JvdXAtanVzdGlmaWVkIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuXG4gICAgLy8gU3RyZXRjaCB0aGUgYnV0dG9uc1xuICAgIC5idG4sXG4gICAgLmJ0bi1ncm91cCB7XG4gICAgICAgIGZsZXg6IDE7XG4gICAgfVxufVxuIiwiLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gKlxuICogICMgSW5wdXQgZ3JvdXAgY29tcG9uZW50XG4gKlxuICogIE92ZXJyaWRlcyBmb3IgaW5wdXQgZ3JvdXAgY29tcG9uZW50XG4gKlxuICogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuXG5cbi8vIEJhc2Ugc3R5bGVzXG4uaW5wdXQtZ3JvdXAge1xuXG4gICAgLy8gRm9ybSBncm91cCBmZWVkYmFja1xuICAgIC5mb3JtLWdyb3VwLWZlZWRiYWNrIHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBmbGV4OiAxIDEgYXV0bztcbiAgICAgICAgd2lkdGg6IDElO1xuICAgICAgICB6LWluZGV4OiA0O1xuXG4gICAgICAgIC8vIEJvcmRlciByYWRpdXMgZml4ZXNcbiAgICAgICAgJjpub3QoOmxhc3QtY2hpbGQpIHtcbiAgICAgICAgICAgIC5mb3JtLWNvbnRyb2wge1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJvcmRlci1yaWdodC1yYWRpdXMoMCk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgJjpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICAgICAgICAuZm9ybS1jb250cm9sIHtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBib3JkZXItbGVmdC1yYWRpdXMoMCk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBNYWtlIHN1cmUgaWNvbiBpcyBhbHdheXMgb24gdG9wXG4gICAgKyAuZm9ybS1jb250cm9sLWZlZWRiYWNrLFxuICAgIC5mb3JtLWNvbnRyb2wtZmVlZGJhY2sgKyAmIHtcbiAgICAgICAgei1pbmRleDogNDtcbiAgICB9XG59XG5cbi8vIFRleHR1YWwgYWRkb25zXG4uaW5wdXQtZ3JvdXAtdGV4dCB7XG5cbiAgICAvLyBJY29uXG4gICAgaSB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB0b3A6IDA7XG4gICAgfVxufVxuIiwiLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gKlxuICogICMgQ3VzdG9tIGZvcm0gaW5wdXRzXG4gKlxuICogIEN1c3RvbSBjaGVja2JveGVzLCByYWRpb3MsIHNlbGVjdHMgYW5kIGZpbGUgaW5wdXRzXG4gKlxuICogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuXG5cbi8vXG4vLyBDaGVja2JveGVzIGFuZCByYWRpb3Ncbi8vXG5cbi8vIENvbnRhaW5lclxuLmN1c3RvbS1jb250cm9sIHtcbiAgICBtaW4taGVpZ2h0OiAkbGluZS1oZWlnaHQtY29tcHV0ZWQ7XG4gICAgbWFyZ2luLWJvdHRvbTogJGZvcm0tY2hlY2stbWFyZ2luLXk7XG5cbiAgICAvLyBMYXN0IGl0ZW0gZG9lc24ndCBoYXZlIHNwYWNpbmdcbiAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIH1cbn1cblxuLy8gSW5saW5lIGxpc3Rcbi5jdXN0b20tY29udHJvbC1pbmxpbmUge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG5cbiAgICAvLyBMYXN0IGl0ZW0gZG9lc24ndCBoYXZlIHNwYWNpbmdcbiAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgfVxufVxuXG4vLyBJbnB1dFxuLmN1c3RvbS1jb250cm9sLWlucHV0IHtcblxuICAgIC8vIEFjdGl2ZSBzdGF0ZVxuICAgICY6YWN0aXZlIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsOjpiZWZvcmUge1xuICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKGFsbCBlYXNlLWluLW91dCAkY29tcG9uZW50LXRyYW5zaXRpb24tdGltZXIpO1xuICAgIH1cblxuICAgIC8vIERpc2FibGVkIHN0YXRlXG4gICAgJjpkaXNhYmxlZCB7XG4gICAgICAgIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsIHtcbiAgICAgICAgICAgIGN1cnNvcjogJGN1cnNvci1kaXNhYmxlZDtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLy8gQ3VzdG9tIGNvbnRyb2wgaW5kaWNhdG9yc1xuLmN1c3RvbS1jb250cm9sLWxhYmVsIHtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG5cbiAgICAvLyBCYWNrZ3JvdW5kXG4gICAgJjo6YmVmb3JlIHtcbiAgICAgICAgdG9wOiAoKCRsaW5lLWhlaWdodC1jb21wdXRlZCAtICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3Itc2l6ZSkgLyAyKTtcbiAgICB9XG5cbiAgICAvLyBGb3JlZ3JvdW5kIChpY29uKVxuICAgICY6OmFmdGVyIHtcbiAgICAgICAgdG9wOiAoKCRsaW5lLWhlaWdodC1jb21wdXRlZCAtICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3Itc2l6ZSkgLyAyKTtcbiAgICB9XG59XG5cbi8vIFJpZ2h0IGlucHV0IGFsaWdubWVudFxuLmN1c3RvbS1jb250cm9sLXJpZ2h0IHtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgcGFkZGluZy1yaWdodDogJGN1c3RvbS1jb250cm9sLWd1dHRlcjtcblxuICAgIC8vIElucHV0XG4gICAgLmN1c3RvbS1jb250cm9sLWlucHV0IHtcbiAgICAgICAgcmlnaHQ6IDA7XG4gICAgfVxuXG4gICAgLy8gTGFiZWxcbiAgICAuY3VzdG9tLWNvbnRyb2wtbGFiZWwge1xuICAgICAgICAmOmJlZm9yZSxcbiAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICBsZWZ0OiBhdXRvO1xuICAgICAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgIH1cbiAgICB9XG59XG5cblxuLy9cbi8vIFNlbGVjdFxuLy9cblxuLmN1c3RvbS1zZWxlY3Qge1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKGFsbCBlYXNlLWluLW91dCAkY29tcG9uZW50LXRyYW5zaXRpb24tdGltZXIpO1xuXG4gICAgLy8gSG92ZXIgc3RhdGVcbiAgICBAaW5jbHVkZSBob3Zlci1mb2N1cyB7XG4gICAgICAgIEBpbmNsdWRlIGJveC1zaGFkb3coJGhvdmVyLXNoYWRvdy1saWdodGVyKTtcbiAgICB9XG5cbiAgICAvLyBEaXNhYmxlZCBzdGF0ZVxuICAgICY6ZGlzYWJsZWQge1xuICAgICAgICBjdXJzb3I6ICRjdXJzb3ItZGlzYWJsZWQ7XG5cbiAgICAgICAgLy8gSG92ZXIgc3RhdGVcbiAgICAgICAgQGluY2x1ZGUgaG92ZXItZm9jdXMge1xuICAgICAgICAgICAgQGluY2x1ZGUgYm94LXNoYWRvdyhub25lKTtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuXG4vL1xuLy8gRmlsZVxuLy9cblxuLmN1c3RvbS1maWxlLWxhYmVsIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xufVxuIiwiQG1peGluIGJveC1zaGFkb3coJHNoYWRvdy4uLikge1xuICBAaWYgJGVuYWJsZS1zaGFkb3dzIHtcbiAgICAkcmVzdWx0OiAoKTtcblxuICAgIEBpZiAobGVuZ3RoKCRzaGFkb3cpID09IDEpIHtcbiAgICAgIC8vIFdlIGNhbiBwYXNzIGBAaW5jbHVkZSBib3gtc2hhZG93KG5vbmUpO2BcbiAgICAgICRyZXN1bHQ6ICRzaGFkb3c7XG4gICAgfSBAZWxzZSB7XG4gICAgICAvLyBGaWx0ZXIgdG8gYXZvaWQgaW52YWxpZCBwcm9wZXJ0aWVzIGZvciBleGFtcGxlIGBib3gtc2hhZG93OiBub25lLCAxcHggMXB4IGJsYWNrO2BcbiAgICAgIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggbGVuZ3RoKCRzaGFkb3cpIHtcbiAgICAgICAgQGlmIG50aCgkc2hhZG93LCAkaSkgIT0gXCJub25lXCIge1xuICAgICAgICAgICRyZXN1bHQ6IGFwcGVuZCgkcmVzdWx0LCBudGgoJHNoYWRvdywgJGkpLCBcImNvbW1hXCIpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgIEBpZiAobGVuZ3RoKCRyZXN1bHQpID4gMCkge1xuICAgICAgYm94LXNoYWRvdzogJHJlc3VsdDtcbiAgICB9XG4gIH1cbn1cbiIsIi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICpcbiAqICAjIE5hdiBjb21wb25lbnRzXG4gKlxuICogIE92ZXJyaWRlcyBmb3IgbmF2IGNvbXBvbmVudHNcbiAqXG4gKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5cblxuLy8gQmFzZSBzdHlsZXNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLy8gTGlua3Ncbi5uYXYtbGluayB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oYWxsIGVhc2UtaW4tb3V0ICRjb21wb25lbnQtdHJhbnNpdGlvbi10aW1lcik7XG5cbiAgICAvLyBEaXNhYmxlZCBzdGF0ZVxuICAgICYuZGlzYWJsZWQge1xuICAgICAgICBjdXJzb3I6ICRjdXJzb3ItZGlzYWJsZWQ7XG4gICAgfVxufVxuXG5cbi8vIFRhYnNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLy8gQmFzZVxuLm5hdi10YWJzIHtcbiAgICBtYXJnaW4tYm90dG9tOiAkc3BhY2VyO1xuXG4gICAgLy8gTGlua1xuICAgIC5uYXYtbGluayB7XG4gICAgICAgIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDA7XG4gICAgICAgIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAwO1xuICAgICAgICBjb2xvcjogJG5hdi10YWJzLWxpbmstY29sb3I7XG5cbiAgICAgICAgLy8gSG92ZXIgc3RhdGVcbiAgICAgICAgQGluY2x1ZGUgaG92ZXItZm9jdXMge1xuICAgICAgICAgICAgY29sb3I6ICRuYXYtdGFicy1saW5rLWhvdmVyLWNvbG9yO1xuICAgICAgICB9XG5cbiAgICAgICAgLy8gRGlzYWJsZWQgc3RhdGVcbiAgICAgICAgJi5kaXNhYmxlZCB7XG4gICAgICAgICAgICBjb2xvcjogJG5hdi1saW5rLWRpc2FibGVkLWNvbG9yO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLy8gV2hlbiBkcm9wZG93biBpcyBvcGVuZWRcbiAgICAubmF2LWl0ZW0uc2hvdyAubmF2LWxpbms6bm90KC5hY3RpdmUpIHtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgfVxuXG4gICAgLy8gQXBwbHkgYm9yZGVyIGNvbG9yIGZvciBib3JkZXIgaGVscGVyXG4gICAgJi5ib3JkZXItdG9wLTEge1xuICAgICAgICBib3JkZXItdG9wLWNvbG9yOiAkbmF2LXRhYnMtYm9yZGVyLWNvbG9yO1xuICAgIH1cbn1cblxuLy8gUmVzcG9uc2l2ZSB0YWJzIC0gYWRkIHRoaXMgY2xhc3MgdG8gcGFyZW50IGNvbnRhaW5lclxuLy8gdG8gbWFrZSB0YWJzIG5hdiBpbmxpbmUsIGFkZCBzY3JvbGxiYXIgYW5kIHByZXZlbnQgd3JhcHBpbmdcbi5uYXYtdGFicy1yZXNwb25zaXZlIHtcbiAgICBvdmVyZmxvdy14OiBhdXRvO1xuICAgIGJveC1zaGFkb3c6IDAgKC0kbmF2LXRhYnMtYm9yZGVyLXdpZHRoKSAwICRuYXYtdGFicy1ib3JkZXItY29sb3IgaW5zZXQ7XG59XG5cblxuLy9cbi8vIEFsdGVybmF0aXZlIHN0eWxlc1xuLy9cblxuLy8gQ29tbW1vblxuLm5hdi10YWJzLWhpZ2hsaWdodCxcbi5uYXYtdGFicy10b3AsXG4ubmF2LXRhYnMtYm90dG9tIHtcbiAgICAubmF2LWxpbmsge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAgICAgLy8gSGlnaGxpZ2h0XG4gICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbihiYWNrZ3JvdW5kLWNvbG9yIGVhc2UtaW4tb3V0ICRjb21wb25lbnQtdHJhbnNpdGlvbi10aW1lcik7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi8vIFRvcCBoaWdobGlnaHRcbi5uYXYtdGFicy1oaWdobGlnaHQge1xuXG4gICAgLy8gTGlua1xuICAgIC5uYXYtbGluayB7XG4gICAgICAgIGJvcmRlci10b3AtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICBAaW5jbHVkZSBib3JkZXItdG9wLXJhZGl1cygwKTtcblxuICAgICAgICAvLyBUb3AgaGlnaGxpZ2h0IGxpbmVcbiAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgaGVpZ2h0OiAkbmF2LXRhYnMtaGlnaGxpZ2h0LWxpbmstYm9yZGVyLXdpZHRoO1xuICAgICAgICAgICAgdG9wOiAtKCRuYXYtdGFicy1ib3JkZXItd2lkdGgpO1xuICAgICAgICAgICAgbGVmdDogLSgkbmF2LXRhYnMtYm9yZGVyLXdpZHRoKTtcbiAgICAgICAgICAgIHJpZ2h0OiAtKCRuYXYtdGFicy1ib3JkZXItd2lkdGgpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLy8gQWN0aXZlIHN0YXRlXG4gICAgLm5hdi1saW5rLmFjdGl2ZSB7XG4gICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRuYXYtdGFicy1oaWdobGlnaHQtbGluay1ib3JkZXItY29sb3I7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi8vIFRhYnMgd2l0aCB0b3AgYm9yZGVyXG4ubmF2LXRhYnMtdG9wIHtcblxuICAgIC8vIEl0ZW1cbiAgICAubmF2LWl0ZW0ge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIH1cblxuICAgIC8vIExpbmtcbiAgICAubmF2LWxpbmsge1xuICAgICAgICBib3JkZXItd2lkdGg6IDA7XG4gICAgICAgIEBpbmNsdWRlIGJvcmRlci10b3AtcmFkaXVzKDApO1xuXG4gICAgICAgIC8vIEhvdmVyIHN0YXRlXG4gICAgICAgIEBpbmNsdWRlIGhvdmVyLWZvY3VzIHtcbiAgICAgICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbmF2LXRhYnMtYm9yZGVyLWNvbG9yO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLy8gQm90dG9tIGhpZ2hsaWdodCBsaW5lXG4gICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgIGhlaWdodDogJG5hdi10YWJzLXRvcC1saW5rLWJvcmRlci13aWR0aDtcbiAgICAgICAgfVxuXG4gICAgICAgIC8vIFJlbW92ZSBoaWdobGlnaHQgaW4gZGlzYWJsZWQgaXRlbXNcbiAgICAgICAgJi5kaXNhYmxlZCB7XG4gICAgICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgY29udGVudDogbm9uZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8vIFdoZW4gZHJvcGRvd24gaXMgb3BlbmVkXG4gICAgLm5hdi1pdGVtLnNob3cgLm5hdi1saW5rOm5vdCguYWN0aXZlKSB7XG4gICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRuYXYtdGFicy1ib3JkZXItY29sb3I7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBBY3RpdmUgc3RhdGVcbiAgICAubmF2LWxpbmsuYWN0aXZlIHtcbiAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJG5hdi10YWJzLXRvcC1saW5rLWJvcmRlci1jb2xvcjtcbiAgICAgICAgfVxuICAgIH1cbiAgICAubmF2LWxpbmsuYWN0aXZlLFxuICAgIC5uYXYtaXRlbS5zaG93IC5uYXYtbGluayB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIH1cblxuICAgIC8vIE1ha2Ugc3VyZSBkcm9wZG93biBjb21lcyBhZnRlciBib3R0b20gYm9yZGVyXG4gICAgLmRyb3Bkb3duLW1lbnUge1xuICAgICAgICBtYXJnaW4tdG9wOiAwO1xuICAgIH1cblxuICAgIC8vIEJvcmRlciBoZWxwZXIgYWRqdXN0bWVudFxuICAgICYuYm9yZGVyLXRvcC0xIHtcbiAgICAgICAgLm5hdi1pdGVtIHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IC0oJG5hdi10YWJzLWJvcmRlci13aWR0aCk7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi8vIFRhYnMgd2l0aCBib3R0b20gYm9yZGVyXG4ubmF2LXRhYnMtYm90dG9tIHtcblxuICAgIC8vIEl0ZW1cbiAgICAubmF2LWl0ZW0ge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIH1cblxuICAgIC8vIExpbmtcbiAgICAubmF2LWxpbmsge1xuICAgICAgICBib3JkZXItd2lkdGg6IDA7XG5cbiAgICAgICAgLy8gQm90dG9tIGhpZ2hsaWdodCBsaW5lXG4gICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgIGhlaWdodDogJG5hdi10YWJzLWJvdHRvbS1saW5rLWJvcmRlci13aWR0aDtcbiAgICAgICAgICAgIHRvcDogYXV0bztcbiAgICAgICAgICAgIGJvdHRvbTogLSgkbmF2LXRhYnMtYm9yZGVyLXdpZHRoKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8vIEFjdGl2ZSBzdGF0ZVxuICAgIC5uYXYtbGluay5hY3RpdmUge1xuICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbmF2LXRhYnMtYm90dG9tLWxpbmstYm9yZGVyLWNvbG9yO1xuICAgICAgICB9XG4gICAgfVxuICAgIC5uYXYtbGluay5hY3RpdmUsXG4gICAgLm5hdi1pdGVtLnNob3cgLm5hdi1saW5rIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgfVxuXG4gICAgLy8gTWFrZSBzdXJlIGRyb3Bkb3duIGNvbWVzIGFmdGVyIGJvdHRvbSBib3JkZXJcbiAgICAuZHJvcGRvd24tbWVudSB7XG4gICAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgfVxufVxuXG4vLyBUYWJzIHdpdGggZGFya2VyIGJhY2tncm91bmQgY29sb3Jcbi5uYXYtdGFicy1zb2xpZCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJG5hdi10YWJzLXNvbGlkLWJnO1xuICAgIGJvcmRlcjogJG5hdi10YWJzLWJvcmRlci13aWR0aCBzb2xpZCAkbmF2LXRhYnMtYm9yZGVyLWNvbG9yO1xuXG4gICAgLy8gSXRlbVxuICAgIC5uYXYtaXRlbSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgfVxuXG4gICAgLy8gTGlua1xuICAgIC5uYXYtbGluayB7XG4gICAgICAgIGJvcmRlci13aWR0aDogMDtcbiAgICB9XG5cbiAgICAvLyBXaGVuIGRyb3Bkb3duIGlzIG9wZW5lZFxuICAgIC5uYXYtaXRlbS5zaG93IC5uYXYtbGluayB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIH1cblxuICAgIC8vIEFjdGl2ZSBzdGF0ZVxuICAgIC5uYXYtbGluay5hY3RpdmUsXG4gICAgLm5hdi1pdGVtLnNob3cgLm5hdi1saW5rLmFjdGl2ZSB7XG4gICAgICAgIGNvbG9yOiAkbmF2LXRhYnMtc29saWQtYWN0aXZlLWNvbG9yO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbmF2LXRhYnMtc29saWQtYWN0aXZlLWJnO1xuICAgIH1cblxuICAgIC8vIEN1c3RvbSBiYWNrZ3JvdW5kIGNvbG9yXG4gICAgJltjbGFzcyo9YmctXTpub3QoLmJnLWxpZ2h0KTpub3QoLmJnLXdoaXRlKTpub3QoLmJnLXRyYW5zcGFyZW50KSB7XG4gICAgICAgIC5uYXYtbGluayB7XG4gICAgICAgICAgICBjb2xvcjogcmdiYSgkd2hpdGUsIDAuOSk7XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIGhvdmVyLWZvY3VzIHtcbiAgICAgICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmLmRpc2FibGVkIHtcbiAgICAgICAgICAgICAgICBjb2xvcjogcmdiYSgkd2hpdGUsIDAuNik7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAubmF2LWl0ZW0uc2hvdyAubmF2LWxpbmsge1xuICAgICAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5uYXYtbGluay5hY3RpdmUsXG4gICAgICAgIC5uYXYtaXRlbS5zaG93IC5uYXYtbGluay5hY3RpdmUge1xuICAgICAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoJGJsYWNrLCAwLjEpO1xuICAgICAgICB9XG5cbiAgICAgICAgKyAudGFiLWNvbnRlbnRbY2xhc3MqPWJnLV0ge1xuICAgICAgICAgICAgYm9yZGVyLXRvcC1jb2xvcjogcmdiYSgkd2hpdGUsIDAuNSk7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi8vIFZlcnRpY2FsIHRhYnNcbi5uYXYtdGFicy12ZXJ0aWNhbCB7XG5cbiAgICAvLyBMaW5rXG4gICAgLm5hdi1saW5rIHtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuXG4gICAgICAgIC8vIE92ZXJyaWRlIGJvcmRlciBjb2xvcnNcbiAgICAgICAgJixcbiAgICAgICAgJjpob3ZlcixcbiAgICAgICAgJjpmb2N1cyxcbiAgICAgICAgJi5kaXNhYmxlZCB7XG4gICAgICAgICAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50ICRuYXYtdGFicy1ib3JkZXItY29sb3IgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQ7XG4gICAgICAgIH1cblxuICAgICAgICAvLyBIaWdobGlnaHRcbiAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICB0b3A6IC0kbmF2LXRhYnMtYm9yZGVyLXdpZHRoO1xuICAgICAgICAgICAgYm90dG9tOiAtJG5hdi10YWJzLWJvcmRlci13aWR0aDtcbiAgICAgICAgICAgIGxlZnQ6IC0kbmF2LXRhYnMtYm9yZGVyLXdpZHRoO1xuICAgICAgICAgICAgd2lkdGg6ICRuYXYtdGFicy1oaWdobGlnaHQtbGluay1ib3JkZXItd2lkdGg7XG4gICAgICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKGJhY2tncm91bmQtY29sb3IgZWFzZS1pbi1vdXQgJGNvbXBvbmVudC10cmFuc2l0aW9uLXRpbWVyKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8vIFdoZW4gZHJvcGRvd24gaXMgb3BlbmVkXG4gICAgLm5hdi1pdGVtLnNob3cgLm5hdi1saW5rOm5vdCguYWN0aXZlKSB7XG4gICAgICAgIGJvcmRlci1yaWdodC1jb2xvcjogJG5hdi10YWJzLWJvcmRlci1jb2xvcjtcbiAgICAgICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgfVxuXG4gICAgLy8gUmlnaHQgYWxpZ25tZW50XG4gICAgJi1yaWdodCB7XG4gICAgICAgIC5uYXYtbGluayB7XG4gICAgICAgICAgICAmLFxuICAgICAgICAgICAgJjpob3ZlcixcbiAgICAgICAgICAgICY6Zm9jdXMsXG4gICAgICAgICAgICAmLmRpc2FibGVkIHtcbiAgICAgICAgICAgICAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50ICRuYXYtdGFicy1ib3JkZXItY29sb3I7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC8vIFJldmVyc2UgaGlnaGxpZ2h0IGxpbmUgYWxpZ25tZW50XG4gICAgICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgbGVmdDogYXV0bztcbiAgICAgICAgICAgICAgICByaWdodDogLSRuYXYtdGFicy1ib3JkZXItd2lkdGg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAvLyBPcGVuZWQgZHJvcGRvd24gLSB0b2dnbGUgbGlua1xuICAgICAgICAubmF2LWl0ZW0uc2hvdyAubmF2LWxpbms6bm90KC5hY3RpdmUpIHtcbiAgICAgICAgICAgIGJvcmRlci1yaWdodC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICBib3JkZXItbGVmdC1jb2xvcjogJG5hdi10YWJzLWJvcmRlci1jb2xvcjtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8vIEFjdGl2ZSBzdGF0ZVxuICAgIC5uYXYtbGluay5hY3RpdmUge1xuICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbmF2LXRhYnMtaGlnaGxpZ2h0LWxpbmstYm9yZGVyLWNvbG9yO1xuICAgICAgICB9XG4gICAgfVxuICAgIC5uYXYtbGluay5hY3RpdmUsXG4gICAgLm5hdi1pdGVtLnNob3cgLm5hdi1saW5rIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgIGJvcmRlci1jb2xvcjogJG5hdi10YWJzLWJvcmRlci1jb2xvciB0cmFuc3BhcmVudDtcbiAgICB9XG59XG5cblxuXG4vLyBQaWxsc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4vLyBCYXNlXG4ubmF2LXBpbGxzIHtcbiAgICBtYXJnaW4tYm90dG9tOiAkc3BhY2VyO1xuXG4gICAgLy8gTGlua1xuICAgIC5uYXYtbGluayB7XG4gICAgICAgIGNvbG9yOiAkbmF2LXBpbGxzLWxpbmstY29sb3I7XG5cbiAgICAgICAgLy8gSG92ZXIgc3RhdGVcbiAgICAgICAgJjpub3QoLmFjdGl2ZSkge1xuICAgICAgICAgICAgQGluY2x1ZGUgaG92ZXItZm9jdXMge1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkbmF2LXBpbGxzLWxpbmstaG92ZXItY29sb3I7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAvLyBBY3RpdmUgc3RhdGVcbiAgICAgICAgLy8gLSBjaGFuZ2UgYmFkZ2UgY29sb3IgYWNjb3JkaW5nIHRvIGFjdGl2ZSBsaW5rIGJnIFxuICAgICAgICAmLmFjdGl2ZSB7XG4gICAgICAgICAgICBAaWYgKGxpZ2h0bmVzcygkbmF2LXBpbGxzLWxpbmstYWN0aXZlLWJnKSA8IDc1KSB7XG4gICAgICAgICAgICAgICAgLmJhZGdlOm5vdCguYmctdHJhbnNwYXJlbnQpOm5vdCguYmctbGlnaHQpOm5vdCguYmctd2hpdGUpIHtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogJG5hdi1waWxscy1saW5rLWhvdmVyLWNvbG9yO1xuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKGFsbCBlYXNlLWluLW91dCAkY29tcG9uZW50LXRyYW5zaXRpb24tdGltZXIpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC8vIERpc2FibGVkIHN0YXRlXG4gICAgICAgICYuZGlzYWJsZWQge1xuICAgICAgICAgICAgQGluY2x1ZGUgcGxhaW4taG92ZXItZm9jdXMge1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkbmF2LWxpbmstZGlzYWJsZWQtY29sb3I7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBMaW5rIHdpdGggb3BlbmVkIGRyb3Bkb3duXG4gICAgLm5hdi1pdGVtLnNob3cgLm5hdi1saW5rOm5vdCguYWN0aXZlKSB7XG4gICAgICAgIGNvbG9yOiAkbmF2LXBpbGxzLWxpbmstaG92ZXItY29sb3I7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIH1cblxuICAgIC8vIFN0aWNrIHRleHQgdG8gdGhlIGxlZnQgaW4gc3RhY2tlZCBwaWxsc1xuICAgICYuZmxleC1jb2x1bW4ge1xuICAgICAgICAubmF2LWxpbmsge1xuICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICAgICAgICB9XG4gICAgfVxufVxuXG5cbi8vXG4vLyBBbHRlcm5hdGl2ZSBzdHlsZXNcbi8vXG5cbi8vIEJvcmRlcmVkIHBpbGxzXG4ubmF2LXBpbGxzLWJvcmRlcmVkIHtcblxuICAgIC8vIEl0ZW1cbiAgICAubmF2LWl0ZW0gKyAubmF2LWl0ZW0ge1xuICAgICAgICBtYXJnaW4tbGVmdDogKCRzcGFjZXIgLyAyKTtcbiAgICB9XG5cbiAgICAvLyBMaW5rXG4gICAgLm5hdi1saW5rIHtcbiAgICAgICAgYm9yZGVyOiAkbmF2LXBpbGxzLWJvcmRlcmVkLWJvcmRlci13aWR0aCBzb2xpZCAkbmF2LXBpbGxzLWJvcmRlcmVkLWJvcmRlci1jb2xvcjtcbiAgICB9XG5cbiAgICAvLyBIb3ZlciBzdGF0ZVxuICAgIC5uYXYtbGluazpub3QoLmFjdGl2ZSk6aG92ZXIsXG4gICAgLm5hdi1saW5rOm5vdCguYWN0aXZlKTpmb2N1cyxcbiAgICAubmF2LWl0ZW0uc2hvdyAubmF2LWxpbms6bm90KC5hY3RpdmUpIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJG5hdi1waWxscy1ib3JkZXJlZC1saW5rLWhvdmVyLWNvbG9yO1xuICAgIH1cblxuICAgIC8vIEFjdGl2ZSBzdGF0ZVxuICAgIC5uYXYtbGluay5hY3RpdmUge1xuICAgICAgICBib3JkZXItY29sb3I6ICRuYXYtcGlsbHMtbGluay1hY3RpdmUtYmc7XG4gICAgfVxuXG4gICAgLy8gRGlzYWJsZWQgc3RhdGVcbiAgICAubmF2LWxpbmsuZGlzYWJsZWQge1xuICAgICAgICBAaW5jbHVkZSBwbGFpbi1ob3Zlci1mb2N1cyB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbmF2LXBpbGxzLWJvcmRlcmVkLWRpc2FibGVkLWJnO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLy8gU3RhY2tlZCBwaWxscyBsYXlvdXRcbiAgICAmLmZsZXgtY29sdW1uIHtcbiAgICAgICAgLm5hdi1pdGVtICsgLm5hdi1pdGVtIHtcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogKCRzcGFjZXIgLyAyKTtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLy8gUGlsbHMgdG9vbGJhclxuLm5hdi1waWxscy10b29sYmFyIHtcblxuICAgIC8vIEl0ZW1cbiAgICAubmF2LWl0ZW0gKyAubmF2LWl0ZW0ge1xuICAgICAgICBtYXJnaW4tbGVmdDogLSgkbmF2LXBpbGxzLWJvcmRlcmVkLWJvcmRlci13aWR0aCk7XG4gICAgfVxuXG4gICAgLy8gTGlua1xuICAgIC5uYXYtbGluayB7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDA7XG5cbiAgICAgICAgLy8gQWN0aXZlIHN0YXRlXG4gICAgICAgICYuYWN0aXZlIHtcbiAgICAgICAgICAgIHotaW5kZXg6IDM7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBBZGQgcm91bmRlZCBjb3JuZXJzXG4gICAgLm5hdi1pdGVtIHtcbiAgICAgICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAgICAgICAubmF2LWxpbmsge1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJvcmRlci1sZWZ0LXJhZGl1cygkYm9yZGVyLXJhZGl1cyk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgICAgIC5uYXYtbGluayB7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgYm9yZGVyLXJpZ2h0LXJhZGl1cygkYm9yZGVyLXJhZGl1cyk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBTdGFja2VkIHBpbGxzIGxheW91dFxuICAgICYuZmxleC1jb2x1bW4ge1xuICAgICAgICAubmF2LWl0ZW0ge1xuICAgICAgICAgICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAgICAgICAgICAgLm5hdi1saW5rIHtcbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgYm9yZGVyLWxlZnQtcmFkaXVzKDApO1xuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBib3JkZXItdG9wLXJhZGl1cygkYm9yZGVyLXJhZGl1cyk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgICAgICAgICAubmF2LWxpbmsge1xuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBib3JkZXItcmlnaHQtcmFkaXVzKDApO1xuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBib3JkZXItYm90dG9tLXJhZGl1cygkYm9yZGVyLXJhZGl1cyk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgKyAubmF2LWl0ZW0ge1xuICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IC0oJG5hdi1waWxscy1ib3JkZXJlZC1ib3JkZXItd2lkdGgpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuIiwiLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gKlxuICogICMgTmF2YmFyIGNvbXBvbmVudFxuICpcbiAqICBPdmVycmlkZXMgZm9yIG5hdmJhciBjb21wb25lbnRcbiAqXG4gKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5cblxuLy8gQmFzZSBzdHlsZXNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4vLyBCYXNlIGNsYXNzXG4ubmF2YmFyIHtcbiAgICBib3JkZXItdG9wOiAkbmF2YmFyLWJvcmRlci13aWR0aCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICBib3JkZXItYm90dG9tOiAkbmF2YmFyLWJvcmRlci13aWR0aCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICBhbGlnbi1pdGVtczogc3RyZXRjaDtcblxuICAgIC8vIElmIG5hdmJhciBpcyBhdCB0aGUgYm90dG9tIG9mIHRoZSBwYWdlLCByZW1vdmUgYm90dG9tIGJvcmRlcnNcbiAgICAucGFnZS1jb250ZW50IH4gJjpub3QoLm5hdmJhci1jb21wb25lbnQpOmxhc3Qtb2YtdHlwZSxcbiAgICAuY29udGVudCB+ICY6bm90KC5uYXZiYXItY29tcG9uZW50KTpsYXN0LW9mLXR5cGUge1xuICAgICAgICBib3JkZXItYm90dG9tLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICB9XG59XG5cbi8vIE5hdmJhciBhcyBhIHN0YW5kIGFsb25lIGNvbXBvbmVudFxuLm5hdmJhci1jb21wb25lbnQge1xuICAgIGJvcmRlcjogJG5hdmJhci1ib3JkZXItd2lkdGggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgbWFyZ2luLWJvdHRvbTogJHNwYWNlcjtcblxuICAgIC8vIEluc2lkZSBwYWdlIGhlYWRlclxuICAgIC5wYWdlLWhlYWRlciAmIHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6ICRwYWdlLWhlYWRlci1wYWRkaW5nLXg7XG4gICAgICAgIG1hcmdpbi1yaWdodDogJHBhZ2UtaGVhZGVyLXBhZGRpbmcteDtcbiAgICB9XG5cbiAgICAvLyBEZWZhdWx0IG5hdmJhclxuICAgICYubmF2YmFyLWRhcmsge1xuICAgICAgICBib3JkZXItY29sb3I6ICRuYXZiYXItZGFyay1ib3JkZXItY29sb3I7XG4gICAgfVxuXG4gICAgLy8gRGVmYXVsdCBuYXZiYXJcbiAgICAmLm5hdmJhci1saWdodCB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogJG5hdmJhci1saWdodC1ib3JkZXItY29sb3I7XG4gICAgfVxufVxuXG5cbi8vXG4vLyBEZWZhdWx0IG5hdmJhciBjb21wb25lbnRzXG4vL1xuXG4vLyBOYXZiYXIgYnJhbmRcbi5uYXZiYXItYnJhbmQge1xuXG4gICAgLy8gTG9nbyBpbWFnZVxuICAgIGltZyB7XG4gICAgICAgIGhlaWdodDogJG5hdmJhci1icmFuZC1pbWFnZS1zaXplO1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICB9XG59XG5cbi8vIE5hdmJhciB0ZXh0XG4ubmF2YmFyLXRleHQge1xuICAgIHBhZGRpbmctdG9wOiAkbmF2YmFyLWxpbmstcGFkZGluZy15O1xuICAgIHBhZGRpbmctYm90dG9tOiAkbmF2YmFyLWxpbmstcGFkZGluZy15O1xufVxuXG5cbi8vXG4vLyBOYXZiYXIgbmF2XG4vL1xuXG4vLyBCYXNlXG4ubmF2YmFyLW5hdiB7XG5cbiAgICAvLyBUcmlja3kgb25lIC0gYnkgZGVmYXVsdCBCb290c3RyYXAgZG9lc24ndCBzdXBwb3J0IG5hdnMgd2l0aGluIG5hdnMgKG1lZ2EgbWVudSwgdGFncyBpbiBkcm9wZG93bnMgZXRjKS5cbiAgICAvLyBXZSBuZWVkIHRvIG92ZXJyaWRlIGRlZmF1bHQgYmVoYXZpb3VyIGFuZCB1c2Ugb3VyIG93biBzb2x1dGlvblxuICAgIC5uYXYtbGluayB7XG4gICAgICAgIHBhZGRpbmctbGVmdDogJG5hdi1saW5rLXBhZGRpbmcteDtcbiAgICAgICAgcGFkZGluZy1yaWdodDogJG5hdi1saW5rLXBhZGRpbmcteDtcbiAgICB9XG59XG5cbi8vIE5hdmJhciBuYXYgbGlua3MgKG91ciBzb2x1dGlvbilcbi5uYXZiYXItbmF2LWxpbmsge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgcGFkZGluZzogJG5hdmJhci1saW5rLXBhZGRpbmcteSAkbmF2YmFyLWxpbmstcGFkZGluZy14O1xuICAgIG91dGxpbmU6IDA7XG4gICAgQGluY2x1ZGUgdHJhbnNpdGlvbihhbGwgZWFzZS1pbi1vdXQgJGNvbXBvbmVudC10cmFuc2l0aW9uLXRpbWVyKTtcblxuICAgIC8vIERpc2FibGVkIHN0YXRlXG4gICAgJi5kaXNhYmxlZCB7XG4gICAgICAgIGN1cnNvcjogJGN1cnNvci1kaXNhYmxlZDtcblxuICAgICAgICAvLyBCYWRnZXMgYW5kIGltYWdlc1xuICAgICAgICAuYmFkZ2UsXG4gICAgICAgIGltZyB7XG4gICAgICAgICAgICBvcGFjaXR5OiAwLjU7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBCYWRnZXNcbiAgICAuYmFkZ2Uge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgcmlnaHQ6IDA7XG5cbiAgICAgICAgLy8gQmFkZ2UgbWFya1xuICAgICAgICAmLW1hcmsge1xuICAgICAgICAgICAgdG9wOiAkbmF2YmFyLWxpbmstcGFkZGluZy15IC8gMjtcbiAgICAgICAgICAgIHJpZ2h0OiAkbmF2YmFyLWxpbmstcGFkZGluZy14IC8gMjtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8vIE5hdmlnYXRpb24gd2l0aCBib3R0b20gaGlnaGxpZ2h0XG4gICAgLm5hdmJhci1uYXYtaGlnaGxpZ2h0ICYge1xuXG4gICAgICAgIC8vIEhpZ2hsaWdodFxuICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgICAgIHdpZHRoOiAkbmF2YmFyLWxpbmstaGlnaGxpZ2h0LXNpemU7XG4gICAgICAgIH1cblxuICAgICAgICAvLyBIaWdobGlnaHQgY29sb3JcbiAgICAgICAgLm5hdmJhci1saWdodCAmLmFjdGl2ZTpiZWZvcmUge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJG5hdmJhci1saWdodC1saW5rLWhpZ2hsaWdodC1jb2xvcjtcbiAgICAgICAgfVxuICAgICAgICAubmF2YmFyLWRhcmsgJi5hY3RpdmU6YmVmb3JlIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRuYXZiYXItZGFyay1saW5rLWhpZ2hsaWdodC1jb2xvcjtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuXG4vL1xuLy8gUmVzcG9uc2l2ZSBuYXZiYXJcbi8vXG5cbi8vIENvbGxhcHNpYmxlIGNvbnRhaW5lclxuLm5hdmJhci1jb2xsYXBzZSB7XG4gICAgbWFyZ2luLWxlZnQ6IC0kbmF2YmFyLXBhZGRpbmcteDtcbiAgICBtYXJnaW4tcmlnaHQ6IC0kbmF2YmFyLXBhZGRpbmcteDtcbiAgICBwYWRkaW5nLWxlZnQ6ICRuYXZiYXItcGFkZGluZy14O1xuICAgIHBhZGRpbmctcmlnaHQ6ICRuYXZiYXItcGFkZGluZy14O1xufVxuXG4vLyBCdXR0b24gZm9yIHRvZ2dsaW5nIHRoZSBuYXZiYXIgd2hlbiBpbiBpdHMgY29sbGFwc2VkIHN0YXRlXG4ubmF2YmFyLXRvZ2dsZXIge1xuICAgIGJvcmRlcjogMDtcbiAgICBsaW5lLWhlaWdodDogJGxpbmUtaGVpZ2h0LWJhc2U7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oYWxsIGVhc2UtaW4tb3V0ICRjb21wb25lbnQtdHJhbnNpdGlvbi10aW1lcik7XG5cbiAgICAvLyBBZGQgc3BhY2luZyBiZXR3ZWVuIGJ1dHRvbnNcbiAgICAmICsgJiB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAkbmF2YmFyLXBhZGRpbmcteDtcbiAgICB9XG5cbiAgICAvLyBIb3ZlciBzdGF0ZVxuICAgIEBpbmNsdWRlIGhvdmVyLWZvY3VzIHtcbiAgICAgICAgb3V0bGluZTogMDtcbiAgICB9XG5cbiAgICAvLyBJbiBkYXJrIG5hdmJhclxuICAgIC5uYXZiYXItZGFyayAmIHtcbiAgICAgICAgQGluY2x1ZGUgaG92ZXItZm9jdXMge1xuICAgICAgICAgICAgY29sb3I6ICRuYXZiYXItZGFyay1ob3Zlci1jb2xvcjtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8vIEluIGxpZ2h0IG5hdmJhclxuICAgIC5uYXZiYXItbGlnaHQgJiB7XG4gICAgICAgIGNvbG9yOiAkbmF2YmFyLWxpZ2h0LWNvbG9yO1xuXG4gICAgICAgIC8vIEhvdmVyIGFuZCBleHBhbmRlZCBzdGF0ZXNcbiAgICAgICAgJjpob3ZlcixcbiAgICAgICAgJjpmb2N1cyxcbiAgICAgICAgJlthcmlhLWV4cGFuZGVkPXRydWVdIHtcbiAgICAgICAgICAgIGNvbG9yOiAkbmF2YmFyLWxpZ2h0LWhvdmVyLWNvbG9yO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4vLyBHZW5lcmF0ZSBzZXJpZXMgb2YgYC5uYXZiYXItZXhwYW5kLSpgIHJlc3BvbnNpdmUgY2xhc3NlcyBmb3IgY29uZmlndXJpbmdcbi8vIHdoZXJlIHlvdXIgbmF2YmFyIGNvbGxhcHNlcy5cbi5uYXZiYXItZXhwYW5kIHtcbiAgICBAZWFjaCAkYnJlYWtwb2ludCBpbiBtYXAta2V5cygkZ3JpZC1icmVha3BvaW50cykge1xuICAgICAgICAkbmV4dDogYnJlYWtwb2ludC1uZXh0KCRicmVha3BvaW50LCAkZ3JpZC1icmVha3BvaW50cyk7XG4gICAgICAgICRpbmZpeDogYnJlYWtwb2ludC1pbmZpeCgkbmV4dCwgJGdyaWQtYnJlYWtwb2ludHMpO1xuXG4gICAgICAgICYjeyRpbmZpeH0ge1xuICAgICAgICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKCRicmVha3BvaW50KSB7XG5cbiAgICAgICAgICAgICAgICAvLyBBZGQgdG9wIHNwYWNpbmcgdG8gdGhlIGZpcnN0IG5hdiBpdGVtXG4gICAgICAgICAgICAgICAgLm5hdmJhci1uYXY6Zmlyc3QtY2hpbGQgPiAubmF2LWl0ZW06Zmlyc3QtY2hpbGQge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAoJG5hdmJhci1wYWRkaW5nLXggLyAyKTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAvLyBBZGQgYm90dG9tIHNwYWNpbmcgdG8gdGhlIGxhc3QgbmF2IGl0ZW1cbiAgICAgICAgICAgICAgICAubmF2YmFyLW5hdjpsYXN0LWNoaWxkID4gLm5hdi1pdGVtOm5vdCguc2hvdyk6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206ICgkbmF2YmFyLXBhZGRpbmcteCAvIDIpO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIC8vIE5hdmJhciBuYXYgbGluayBoYXMgMTAwJSB3aWR0aFxuICAgICAgICAgICAgICAgIC5uYXZiYXItbmF2LWxpbmsge1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogLSRuYXZiYXItcGFkZGluZy14O1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IC0kbmF2YmFyLXBhZGRpbmcteDtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAkbmF2YmFyLXBhZGRpbmcteDtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1yaWdodDogJG5hdmJhci1wYWRkaW5nLXg7XG5cbiAgICAgICAgICAgICAgICAgICAgLy8gRGlzcGxheSBiYWRnZSBvbiB0aGUgcmlnaHQgc2lkZVxuICAgICAgICAgICAgICAgICAgICAuYmFkZ2Uge1xuICAgICAgICAgICAgICAgICAgICAgICAgJjpub3QoLnBvc2l0aW9uLXN0YXRpYykge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBzdGF0aWM7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAvLyBEaXNwbGF5IGRpcmVjdGlvbiBhcnJvdyBvbiB0aGUgcmlnaHRcbiAgICAgICAgICAgICAgICAgICAgJi5kcm9wZG93bi10b2dnbGU6bm90KC5jYXJldC0wKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAoJG5hdmJhci1wYWRkaW5nLXggKiAyKTtcblxuICAgICAgICAgICAgICAgICAgICAgICAgLy8gU3RpY2sgaWNvblxuICAgICAgICAgICAgICAgICAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRvcDogNTAlO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJpZ2h0OiAkbmF2YmFyLXBhZGRpbmcteDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgLy8gQWRkIHRvcCBib3JkZXJzIGZvciBiZXR0ZXIgdmlzdWFsIHNlcGFyYXRpb25cbiAgICAgICAgICAgICAgICAmLm5hdmJhci1kYXJrIC5uYXZiYXItY29sbGFwc2Uge1xuICAgICAgICAgICAgICAgICAgICBib3JkZXItdG9wOiAkbmF2YmFyLWRhcmstY29sbGFwc2UtYm9yZGVyLXdpZHRoIHNvbGlkICRuYXZiYXItZGFyay1jb2xsYXBzZS1ib3JkZXItY29sb3I7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICYubmF2YmFyLWxpZ2h0IC5uYXZiYXItY29sbGFwc2Uge1xuICAgICAgICAgICAgICAgICAgICBib3JkZXItdG9wOiAkbmF2YmFyLWxpZ2h0LWNvbGxhcHNlLWJvcmRlci13aWR0aCBzb2xpZCAkbmF2YmFyLWxpZ2h0LWNvbGxhcHNlLWJvcmRlci1jb2xvcjtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAvLyBBZGQgdmVydGljYWwgc3BhY2luZyB0byBkcm9wZG93bnNcbiAgICAgICAgICAgICAgICAubmF2YmFyLW5hdiA+IC5uYXYtaXRlbSB7XG4gICAgICAgICAgICAgICAgICAgID4gLmRyb3Bkb3duLW1lbnUge1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogJG5hdmJhci1wYWRkaW5nLXg7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAkbmF2YmFyLXBhZGRpbmcteDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIC8vIE92ZXJyaWRlIGRyb3Bkb3duIHN1Ym1hbnVzXG4gICAgICAgICAgICAgICAgLmRyb3Bkb3duLXN1Ym1lbnUge1xuXG4gICAgICAgICAgICAgICAgICAgIC8vIENoYW5nZSBhcnJvdyBpY29uIGRpcmVjdGlvblxuICAgICAgICAgICAgICAgICAgICAuZHJvcGRvd24tdG9nZ2xlOmFmdGVyIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbnRlbnQ6ICdcXGU5YzUnO1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgLy8gTWFrZSB0aGVtIHN0YWNrZWRcbiAgICAgICAgICAgICAgICAgICAgJixcbiAgICAgICAgICAgICAgICAgICAgJi5kcm9wZG93bi1zdWJtZW51LWxlZnQge1xuICAgICAgICAgICAgICAgICAgICAgICAgLmRyb3Bkb3duLW1lbnUge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBib3JkZXItd2lkdGg6IDA7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKDApO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgLy8gVGhpcmQgbGV2ZWxcbiAgICAgICAgICAgICAgICAgICAgPiAuZHJvcGRvd24tbWVudSA+IC5kcm9wZG93bi1pdGVtLFxuICAgICAgICAgICAgICAgICAgICA+IC5kcm9wZG93bi1tZW51ID4gLmRyb3Bkb3duLXN1Ym1lbnUgPiAuZHJvcGRvd24taXRlbSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6ICgkZHJvcGRvd24taXRlbS1wYWRkaW5nLXggKiAyKTtcbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgIC8vIEZvdXJ0aCBsZXZlbFxuICAgICAgICAgICAgICAgICAgICA+IC5kcm9wZG93bi1tZW51ID4gLmRyb3Bkb3duLXN1Ym1lbnUgPiAuZHJvcGRvd24tbWVudSA+IC5kcm9wZG93bi1pdGVtLFxuICAgICAgICAgICAgICAgICAgICA+IC5kcm9wZG93bi1tZW51ID4gLmRyb3Bkb3duLXN1Ym1lbnUgPiAuZHJvcGRvd24tbWVudSA+IC5kcm9wZG93bi1zdWJtZW51ID4gLmRyb3Bkb3duLWl0ZW0ge1xuICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAoJGRyb3Bkb3duLWl0ZW0tcGFkZGluZy14ICogMyk7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAvLyBNYWtlIGxvbmcgbGlzdHMgc2Nyb2xsYWJsZSBpZiBuYXZiYXIgaXMgZml4ZWRcbiAgICAgICAgICAgICAgICAmLmZpeGVkLXRvcCAubmF2YmFyLWNvbGxhcHNlLFxuICAgICAgICAgICAgICAgICYuZml4ZWQtYm90dG9tIC5uYXZiYXItY29sbGFwc2Uge1xuICAgICAgICAgICAgICAgICAgICBtYXgtaGVpZ2h0OiA0NDBweDtcbiAgICAgICAgICAgICAgICAgICAgb3ZlcmZsb3cteTogYXV0bztcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJG5leHQpIHtcbiAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgICAvLyBMb2dvXG4gICAgICAgICAgICAgICAgLm5hdmJhci1icmFuZCB7XG4gICAgICAgICAgICAgICAgICAgIG1pbi13aWR0aDogJHNpZGViYXItYmFzZS13aWR0aCAtICRuYXZiYXItcGFkZGluZy14O1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIC8vIEhpZ2hsaWdodFxuICAgICAgICAgICAgICAgIC5uYXZiYXItbmF2LWxpbmsge1xuICAgICAgICAgICAgICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICB0b3A6IGF1dG87XG4gICAgICAgICAgICAgICAgICAgICAgICByaWdodDogMDtcbiAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAkbmF2YmFyLWxpbmstaGlnaGxpZ2h0LXNpemU7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cblxuLy9cbi8vIE5hdmJhciB0aGVtZXNcbi8vXG5cbi8vIERhcmsgbGlua3MgYWdhaW5zdCBhIHdoaXRlIGJhY2tncm91bmRcbi5uYXZiYXItbGlnaHQge1xuICAgIGNvbG9yOiAkbmF2YmFyLWxpZ2h0LWNvbG9yO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRuYXZiYXItbGlnaHQtYmc7XG4gICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogJG5hdmJhci1saWdodC1ib3JkZXItY29sb3I7XG5cbiAgICAvLyBBZnRlciBwYWdlIGhlYWRlciBjb250ZW50XG4gICAgLnBhZ2UtaGVhZGVyLWNvbnRlbnQgKyAmLFxuICAgIC5jb250ZW50ICsgJixcbiAgICAucGFnZS1jb250ZW50ICsgJixcbiAgICAuZml4ZWQtYm90dG9tID4gJjpmaXJzdC1jaGlsZCB7XG4gICAgICAgIGJvcmRlci10b3AtY29sb3I6ICRuYXZiYXItbGlnaHQtYm9yZGVyLWNvbG9yO1xuICAgIH1cblxuICAgIC8vIE5hdmJhciBuYXZcbiAgICAvLyBBZ2Fpbiwgb3ZlcnJpZGUgZGVmYXVsdCBCUyBzdHlsZXMgc2luY2UgdGhleSBhZmZlY3RcbiAgICAvLyBvdGhlciBuYXZzICh0YWJzLCBtZW51cywgbmF2cywgcGlsbHMgZXRjKVxuICAgIC5uYXZiYXItbmF2IHtcbiAgICAgICAgLm5hdi1saW5rIHtcbiAgICAgICAgICAgIGNvbG9yOiAkbmF2LWxpbmstY29sb3I7XG5cbiAgICAgICAgICAgIC8vIEhvdmVyIHN0YXRlXG4gICAgICAgICAgICBAaW5jbHVkZSBob3Zlci1mb2N1cyB7XG4gICAgICAgICAgICAgICAgY29sb3I6ICRuYXYtbGluay1ob3Zlci1jb2xvcjtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLy8gRGlzYWJsZWQgc3RhdGVcbiAgICAgICAgICAgICYuZGlzYWJsZWQge1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkbmF2LWxpbmstZGlzYWJsZWQtY29sb3I7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAvLyBBY3RpdmUgc3RhdGVcbiAgICAgICAgLnNob3cgPiAubmF2LWxpbmssXG4gICAgICAgIC5hY3RpdmUgPiAubmF2LWxpbmssXG4gICAgICAgIC5uYXYtbGluay5zaG93LFxuICAgICAgICAubmF2LWxpbmsuYWN0aXZlIHtcbiAgICAgICAgICAgIGNvbG9yOiAkbmF2LWxpbmstYWN0aXZlLWNvbG9yO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLy8gTmF2YmFyIG5hdiBsaW5rXG4gICAgLm5hdmJhci1uYXYtbGluayB7XG4gICAgICAgIGNvbG9yOiAkbmF2YmFyLWxpZ2h0LWNvbG9yO1xuXG4gICAgICAgIC8vIEhvdmVyIHN0YXRlXG4gICAgICAgIEBpbmNsdWRlIGhvdmVyLWZvY3VzIHtcbiAgICAgICAgICAgIGNvbG9yOiAkbmF2YmFyLWxpZ2h0LWhvdmVyLWNvbG9yO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJG5hdmJhci1saWdodC1ob3Zlci1iZztcbiAgICAgICAgfVxuXG4gICAgICAgIC8vIERpc2FibGVkIHN0YXRlXG4gICAgICAgICYuZGlzYWJsZWQge1xuICAgICAgICAgICAgY29sb3I6ICRuYXZiYXItbGlnaHQtZGlzYWJsZWQtY29sb3I7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbmF2YmFyLWxpZ2h0LWxpbmstZGlzYWJsZWQtYmc7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBBY3RpdmUgc3RhdGVcbiAgICAuc2hvdyA+IC5uYXZiYXItbmF2LWxpbmssXG4gICAgLmFjdGl2ZSA+IC5uYXZiYXItbmF2LWxpbmssXG4gICAgLm5hdmJhci1uYXYtbGluay5zaG93LFxuICAgIC5uYXZiYXItbmF2LWxpbmsuYWN0aXZlIHtcbiAgICAgICAgY29sb3I6ICRuYXZiYXItbGlnaHQtYWN0aXZlLWNvbG9yO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbmF2YmFyLWxpZ2h0LWxpbmstYWN0aXZlLWJnO1xuICAgIH1cblxuICAgIC8vIFRleHRcbiAgICAubmF2YmFyLXRleHQge1xuICAgICAgICBhIHtcbiAgICAgICAgICAgIGNvbG9yOiAkbGluay1jb2xvcjtcblxuICAgICAgICAgICAgLy8gTWFrZSBzdXJlIGxpbmtzIGhhdmUgY29ycmVjdCBjb2xvcnNcbiAgICAgICAgICAgIEBpbmNsdWRlIGhvdmVyLWZvY3VzIHtcbiAgICAgICAgICAgICAgICBjb2xvcjogJGxpbmstaG92ZXItY29sb3I7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi8vIFdoaXRlIGxpbmtzIGFnYWluc3QgYSBkYXJrIGJhY2tncm91bmRcbi5uYXZiYXItZGFyayB7XG4gICAgY29sb3I6ICRuYXZiYXItZGFyay1jb2xvcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbmF2YmFyLWRhcmstYmc7XG4gICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogJG5hdmJhci1kYXJrLWJvcmRlci1jb2xvcjtcblxuXG4gICAgLy8gQWZ0ZXIgcGFnZSBoZWFkZXIgY29udGVudFxuICAgIC5wYWdlLWhlYWRlci1jb250ZW50ICsgJixcbiAgICAuY29udGVudCArICYsXG4gICAgLnBhZ2UtY29udGVudCArICYsXG4gICAgLmZpeGVkLWJvdHRvbSA+ICY6Zmlyc3QtY2hpbGQge1xuICAgICAgICBib3JkZXItdG9wLWNvbG9yOiAkbmF2YmFyLWRhcmstYm9yZGVyLWNvbG9yO1xuICAgIH1cblxuICAgIC8vIE5hdmJhciBuYXZcbiAgICAvLyBBZ2Fpbiwgb3ZlcnJpZGUgZGVmYXVsdCBCUyBzdHlsZXMgc2luY2UgdGhleSBhZmZlY3RcbiAgICAvLyBvdGhlciBuYXZzICh0YWJzLCBtZW51cywgbmF2cywgcGlsbHMgZXRjKVxuICAgIC5uYXZiYXItbmF2IHtcbiAgICAgICAgLm5hdi1saW5rIHtcbiAgICAgICAgICAgIGNvbG9yOiAkbmF2LWxpbmstY29sb3I7XG5cbiAgICAgICAgICAgIC8vIEhvdmVyIHN0YXRlXG4gICAgICAgICAgICBAaW5jbHVkZSBob3Zlci1mb2N1cyB7XG4gICAgICAgICAgICAgICAgY29sb3I6ICRuYXYtbGluay1ob3Zlci1jb2xvcjtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLy8gRGlzYWJsZWQgc3RhdGVcbiAgICAgICAgICAgICYuZGlzYWJsZWQge1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkbmF2LWxpbmstZGlzYWJsZWQtY29sb3I7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAvLyBBY3RpdmUgc3RhdGVcbiAgICAgICAgLnNob3cgPiAubmF2LWxpbmssXG4gICAgICAgIC5hY3RpdmUgPiAubmF2LWxpbmssXG4gICAgICAgIC5uYXYtbGluay5zaG93LFxuICAgICAgICAubmF2LWxpbmsuYWN0aXZlIHtcbiAgICAgICAgICAgIGNvbG9yOiAkbmF2LWxpbmstYWN0aXZlLWNvbG9yOyAgICAgICAgICAgIFxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLy8gTmF2YmFyIG5hdiBsaW5rXG4gICAgLm5hdmJhci1uYXYtbGluayB7XG4gICAgICAgIGNvbG9yOiAkbmF2YmFyLWRhcmstY29sb3I7XG5cbiAgICAgICAgLy8gSG92ZXIgc3RhdGVcbiAgICAgICAgQGluY2x1ZGUgaG92ZXItZm9jdXMge1xuICAgICAgICAgICAgY29sb3I6ICRuYXZiYXItZGFyay1ob3Zlci1jb2xvcjtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRuYXZiYXItZGFyay1ob3Zlci1iZztcbiAgICAgICAgfVxuXG4gICAgICAgIC8vIERpc2FibGVkIHN0YXRlXG4gICAgICAgICYuZGlzYWJsZWQge1xuICAgICAgICAgICAgY29sb3I6ICRuYXZiYXItZGFyay1kaXNhYmxlZC1jb2xvcjtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRuYXZiYXItZGFyay1saW5rLWRpc2FibGVkLWJnO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLy8gQWN0aXZlIHN0YXRlXG4gICAgLnNob3cgPiAubmF2YmFyLW5hdi1saW5rLFxuICAgIC5hY3RpdmUgPiAubmF2YmFyLW5hdi1saW5rLFxuICAgIC5uYXZiYXItbmF2LWxpbmsuc2hvdyxcbiAgICAubmF2YmFyLW5hdi1saW5rLmFjdGl2ZSB7XG4gICAgICAgIGNvbG9yOiAkbmF2YmFyLWRhcmstYWN0aXZlLWNvbG9yO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbmF2YmFyLWRhcmstbGluay1hY3RpdmUtYmc7XG4gICAgfVxufVxuXG5cblxuLy8gRXh0cmEgbmF2YmFyIGNvbXBvbmVudHNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4vLyBUYWJzIGFuZCBwaWxsc1xuLm5hdmJhci1uYXYge1xuXG4gICAgLy8gVGFic1xuICAgIC5uYXYtdGFicyB7XG5cbiAgICAgICAgLy8gTGlua3NcbiAgICAgICAgLm5hdi1saW5rIHtcbiAgICAgICAgICAgIGNvbG9yOiAkbmF2LXRhYnMtbGluay1jb2xvcjtcblxuICAgICAgICAgICAgLy8gSG92ZXIgc3RhdGVcbiAgICAgICAgICAgIEBpbmNsdWRlIGhvdmVyLWZvY3VzIHtcbiAgICAgICAgICAgICAgICBjb2xvcjogJG5hdi10YWJzLWxpbmstaG92ZXItY29sb3I7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC8vIERpc2FibGVkIHN0YXRlXG4gICAgICAgICAgICAmLmRpc2FibGVkIHtcbiAgICAgICAgICAgICAgICBjb2xvcjogJG5hdi1saW5rLWRpc2FibGVkLWNvbG9yO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLy8gQWN0aXZlIHN0YXRlXG4gICAgICAgIC5zaG93ID4gLm5hdi1saW5rLFxuICAgICAgICAuYWN0aXZlID4gLm5hdi1saW5rLFxuICAgICAgICAubmF2LWxpbmsuc2hvdyxcbiAgICAgICAgLm5hdi1saW5rLmFjdGl2ZSB7XG4gICAgICAgICAgICBjb2xvcjogJG5hdi10YWJzLWxpbmstYWN0aXZlLWNvbG9yO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLy8gU2FkbHkgdGhpcyBuZWVkcyB0byBiZSBkdXBsaWNhdGVkIHRvIG92ZXJyaWRlXG4gICAgLy8gZGVmYXVsdCBCUyBiZWhhdmlvdXJcbiAgICAubmF2LXBpbGxzIHtcbiAgICAgICAgLm5hdi1saW5rIHtcbiAgICAgICAgICAgIGNvbG9yOiAkbmF2LXBpbGxzLWxpbmstY29sb3I7XG5cbiAgICAgICAgICAgIC8vIEhvdmVyIHN0YXRlXG4gICAgICAgICAgICAmOm5vdCguYWN0aXZlKSB7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgaG92ZXItZm9jdXMge1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogJG5hdi1waWxscy1saW5rLWhvdmVyLWNvbG9yO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLy8gQ2FsY3VsYXRlIGNvbG9yIHNoYWRlcyBmb3IgYmFkZ2VzXG4gICAgICAgICAgICAvLyBkZXBlbmRpbmcgb24gYWN0aXZlIGl0ZW0gY29sb3JcbiAgICAgICAgICAgICYuYWN0aXZlIHtcbiAgICAgICAgICAgICAgICBAaWYgKGxpZ2h0bmVzcygkbmF2LXBpbGxzLWxpbmstYWN0aXZlLWJnKSA8IDc1KSB7XG5cbiAgICAgICAgICAgICAgICAgICAgLy8gQWxsIGJhZGdlcyBleGNlcHQgYmFkZ2UgbWFya1xuICAgICAgICAgICAgICAgICAgICAuYmFkZ2U6bm90KC5iYWRnZS1tYXJrKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGUhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRib2R5LWNvbG9yIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgIC8vIEJhZGdlIG1hcmsgd2l0aCBjdXN0b20gYmdcbiAgICAgICAgICAgICAgICAgICAgLmJhZGdlLW1hcmtbY2xhc3MqPWJnLV0ge1xuICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlci1jb2xvcjogJHdoaXRlIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgIC8vIEJhZGdlIG1hcmsgd2l0aCBjdXN0b20gYm9yZGVyXG4gICAgICAgICAgICAgICAgICAgIC5iYWRnZS1tYXJrW2NsYXNzKj1ib3JkZXItXSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBib3JkZXItY29sb3I6ICR3aGl0ZSFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC8vIENvbHJzIGluIGFjdGl2ZSBzdGF0ZVxuICAgICAgICAgICAgJi5hY3RpdmUsXG4gICAgICAgICAgICAuc2hvdzpub3QoLm5hdmJhci1jb2xsYXBzZSkgPiAmIHtcbiAgICAgICAgICAgICAgICBjb2xvcjogJG5hdi1waWxscy1saW5rLWFjdGl2ZS1jb2xvcjtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLy8gRGlzYWJsZWQgc3RhdGVcbiAgICAgICAgICAgICYuZGlzYWJsZWQge1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGhvdmVyLWZvY3VzIHtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRuYXYtbGluay1kaXNhYmxlZC1jb2xvcjtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi8vIEJ1dHRvbiBkcm9wZG93blxuLm5hdmJhciB7XG4gICAgLmJ0bi1ncm91cCB7XG4gICAgICAuZHJvcGRvd24tbWVudS1yaWdodCB7XG4gICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICBsZWZ0OiBhdXRvOyAvLyBSZXNldCB0aGUgZGVmYXVsdCBmcm9tIGAuZHJvcGRvd24tbWVudWBcbiAgICAgIH1cbiAgICB9XG59XG5cbi8vIFVzZXIgZHJvcGRvd25cbi5kcm9wZG93bi11c2VyIHtcbiAgICAubmF2YmFyLW5hdi1saW5rIHtcblxuICAgICAgICAvLyBTZXQgdmVydGljYWwgcGFkZGluZ1xuICAgICAgICAmLFxuICAgICAgICA+IHNwYW4ge1xuICAgICAgICAgICAgcGFkZGluZy10b3A6ICgkbmF2YmFyLWxpbmstcGFkZGluZy15IC8gMik7XG4gICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogKCRuYXZiYXItbGluay1wYWRkaW5nLXkgLyAyKTtcbiAgICAgICAgfVxuXG4gICAgICAgIC8vIFVzZXIgbmFtZVxuICAgICAgICA+IHNwYW4ge1xuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAkZWxlbWVudC1zcGFjZXIteDtcbiAgICAgICAgfVxuXG4gICAgICAgIC8vIFVzZXIgaW1hZ2VcbiAgICAgICAgPiBpbWcge1xuICAgICAgICAgICAgbWF4LWhlaWdodDogKCRmb250LXNpemUtYmFzZSAqICRsaW5lLWhlaWdodC1iYXNlKSArICgkbmF2YmFyLWxpbmstcGFkZGluZy15IC8gMikgKyAoJG5hdmJhci1saW5rLXBhZGRpbmcteSAvIDIpO1xuICAgICAgICAgICAgdmVydGljYWwtYWxpZ246IHRvcDtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLy8gRmxhZyBpbWFnZSBpbiBsYW5ndWFnZSBzZWxlY3RvclxuLmltZy1mbGFnIHtcbiAgICBoZWlnaHQ6ICRmb250LXNpemUtbGc7XG4gICAgbWFyZ2luLXRvcDogKCRsaW5lLWhlaWdodC1jb21wdXRlZCAtICRmb250LXNpemUtbGcpIC8gMjtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuICAgIGFsaWduLXNlbGY6IGZsZXgtc3RhcnQ7XG59XG5cblxuLy9cbi8vIE1lZ2EgbWVudVxuLy9cblxuLy8gTGVmdCBhbmQgcmlnaHQgYWxpZ25tZW50XG4ubWVnYS1tZW51IHtcblxuICAgIC8vIExlZnQgYWxpZ25tZW50XG4gICAgJi1sZWZ0IHtcbiAgICAgICAgPiAuZHJvcGRvd24tbWVudSB7XG4gICAgICAgICAgICAvKnJ0bDppZ25vcmUqL1xuICAgICAgICAgICAgbGVmdDogYXV0bztcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8vIFJpZ2h0IGFsaWdubWVudFxuICAgICYtcmlnaHQge1xuICAgICAgICA+IC5kcm9wZG93bi1tZW51IHtcbiAgICAgICAgICAgIGxlZnQ6IGF1dG87XG4gICAgICAgICAgICByaWdodDogMDtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLy8gRnVsbCB3aWR0aFxuLm1lZ2EtbWVudS1mdWxsIHtcbiAgICA+IC5kcm9wZG93bi1tZW51IHtcbiAgICAgICAgbGVmdDogJG5hdmJhci1wYWRkaW5nLXg7XG4gICAgICAgIHJpZ2h0OiAkbmF2YmFyLXBhZGRpbmcteDtcblxuICAgICAgICAvLyBJbiBuYXZiYXIgY29tcG9uZW50XG4gICAgICAgIC5uYXZiYXItY29tcG9uZW50ICYge1xuICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4vLyBNZW51IGhlYWRlclxuLmRyb3Bkb3duLWNvbnRlbnQtaGVhZGVyIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICBwYWRkaW5nLWxlZnQ6ICRkcm9wZG93bi1jb250ZW50LWJvZHktcGFkZGluZy14O1xuICAgIHBhZGRpbmctcmlnaHQ6ICRkcm9wZG93bi1jb250ZW50LWJvZHktcGFkZGluZy14O1xuICAgIEBpbmNsdWRlIGJvcmRlci10b3AtcmFkaXVzKCRkcm9wZG93bi1ib3JkZXItcmFkaXVzIC0gcmVtLWNhbGMoJGRyb3Bkb3duLWJvcmRlci13aWR0aCkpO1xuXG4gICAgLy8gSWYgaGVhZGVyIGhhcyBubyBiYWNrZ3JvdW5kIGNsYXNzZXNcbiAgICAmOm5vdChbY2xhc3MqPWJnLV0pIHtcbiAgICAgICAgcGFkZGluZy10b3A6ICRkcm9wZG93bi1jb250ZW50LWJvZHktcGFkZGluZy15O1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogJGRyb3Bkb3duLWNvbnRlbnQtYm9keS1wYWRkaW5nLXk7XG4gICAgfVxuXG4gICAgLy8gSWYgaGVhZGVyIGhhcyBiYWNrZ3JvdW5kIGNsYXNzZXNcbiAgICAmW2NsYXNzKj1iZy1dIHtcbiAgICAgICAgcGFkZGluZy10b3A6ICRkcm9wZG93bi1jb250ZW50LWhlYWRlci1wYWRkaW5nLXk7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAkZHJvcGRvd24tY29udGVudC1oZWFkZXItcGFkZGluZy15O1xuICAgIH1cblxuICAgIC8vIEFkZCB0b3AgYm9yZGVyIGlmIHVzZWQgd2l0aCB0aGUgdGFibGVcbiAgICArIC50YWJsZS1yZXNwb25zaXZlLFxuICAgICsgLnRhYmxlIHtcbiAgICAgICAgYm9yZGVyLXRvcDogJHRhYmxlLWJvcmRlci13aWR0aCBzb2xpZCAkdGFibGUtYm9yZGVyLWNvbG9yO1xuICAgIH1cbn1cblxuLy8gTWVudSBjb250YWluZXJcbi5kcm9wZG93bi1jb250ZW50IHtcbiAgICAmOm5vdCh1bCkge1xuICAgICAgICBwYWRkaW5nLXRvcDogMDtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDA7XG4gICAgfVxufVxuXG4vLyBNZW51IGJvZHlcbi5kcm9wZG93bi1jb250ZW50LWJvZHkge1xuICAgIHBhZGRpbmc6ICRkcm9wZG93bi1jb250ZW50LWJvZHktcGFkZGluZy15ICRkcm9wZG93bi1jb250ZW50LWJvZHktcGFkZGluZy14O1xuXG4gICAgLy8gUmVtb3ZlIHRvcCBwYWRkaW5nIGlmIGhlYWRlciBoYXMgbm8gYmFja2dyb3VuZFxuICAgIC5kcm9wZG93bi1jb250ZW50LWhlYWRlcjpub3QoW2NsYXNzKj1iZy1dKSArICYge1xuICAgICAgICBwYWRkaW5nLXRvcDogMDtcbiAgICB9XG59XG5cbi8vIE1lbnUgZm9vdGVyXG4uZHJvcGRvd24tY29udGVudC1mb290ZXIge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBwYWRkaW5nOiAkZHJvcGRvd24tY29udGVudC1mb290ZXItcGFkZGluZy15ICRkcm9wZG93bi1jb250ZW50LWJvZHktcGFkZGluZy14O1xuICAgIGJvcmRlci10b3A6ICRkcm9wZG93bi1jb250ZW50LWZvb3Rlci1ib3JkZXItd2lkdGggc29saWQgJGRyb3Bkb3duLWNvbnRlbnQtZm9vdGVyLWJvcmRlci1jb2xvcjtcbiAgICBAaW5jbHVkZSBib3JkZXItYm90dG9tLXJhZGl1cygkZHJvcGRvd24tYm9yZGVyLXJhZGl1cyAtIHJlbS1jYWxjKCRkcm9wZG93bi1ib3JkZXItd2lkdGgpKTtcbn1cblxuXG5cbi8vIEZpeGVkIG5hdmJhciBzZXR1cFxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4vLyBUb3AgcGxhY2VtZW50XG4ubmF2YmFyIHtcbiAgICAmLXRvcCB7XG4gICAgICAgIHBhZGRpbmctdG9wOiAkbmF2LWxpbmstaGVpZ2h0ICsgcmVtLWNhbGMoJG5hdmJhci1ib3JkZXItd2lkdGggKiAyKTtcbiAgICB9XG4gICAgJi1sZy10b3Age1xuICAgICAgICBwYWRkaW5nLXRvcDogJG5hdi1saW5rLWhlaWdodC1sZyArIHJlbS1jYWxjKCRuYXZiYXItYm9yZGVyLXdpZHRoICogMik7XG4gICAgfVxuICAgICYtc20tdG9wIHtcbiAgICAgICAgcGFkZGluZy10b3A6ICRuYXYtbGluay1oZWlnaHQtc20gKyByZW0tY2FsYygkbmF2YmFyLWJvcmRlci13aWR0aCAqIDIpO1xuICAgIH1cbiAgICAmLWxnLW1kLXRvcCB7XG4gICAgICAgIHBhZGRpbmctdG9wOiAoJG5hdi1saW5rLWhlaWdodC1sZyArIHJlbS1jYWxjKCRuYXZiYXItYm9yZGVyLXdpZHRoICogMikpICsgKCRuYXYtbGluay1oZWlnaHQgKyByZW0tY2FsYygkbmF2YmFyLWJvcmRlci13aWR0aCAqIDIpKTtcbiAgICB9XG4gICAgJi1tZC1tZC10b3Age1xuICAgICAgICBwYWRkaW5nLXRvcDogKCRuYXYtbGluay1oZWlnaHQgKyByZW0tY2FsYygkbmF2YmFyLWJvcmRlci13aWR0aCAqIDIpKSAqIDI7XG4gICAgfVxuICAgICYtc20tbWQtdG9wIHtcbiAgICAgICAgcGFkZGluZy10b3A6ICgkbmF2LWxpbmstaGVpZ2h0LXNtICsgcmVtLWNhbGMoJG5hdmJhci1ib3JkZXItd2lkdGggKiAyKSkgKyAoJG5hdi1saW5rLWhlaWdodCArIHJlbS1jYWxjKCRuYXZiYXItYm9yZGVyLXdpZHRoICogMikpO1xuICAgIH1cbiAgICAmLWxnLXNtLXRvcCB7XG4gICAgICAgIHBhZGRpbmctdG9wOiAoJG5hdi1saW5rLWhlaWdodC1sZyArIHJlbS1jYWxjKCRuYXZiYXItYm9yZGVyLXdpZHRoICogMikpICsgKCRuYXYtbGluay1oZWlnaHQtc20gKyByZW0tY2FsYygkbmF2YmFyLWJvcmRlci13aWR0aCAqIDIpKTtcbiAgICB9XG59XG5cbi8vIEJvdHRvbSBwbGFjZW1lbnRcbi5uYXZiYXIge1xuICAgICYtYm90dG9tIHtcbiAgICAgICAgcGFkZGluZy1ib3R0b206ICRuYXYtbGluay1oZWlnaHQgKyByZW0tY2FsYygkbmF2YmFyLWJvcmRlci13aWR0aCAqIDIpO1xuICAgIH1cbiAgICAmLWxnLW1kLWJvdHRvbSB7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAoJG5hdi1saW5rLWhlaWdodC1sZyArIHJlbS1jYWxjKCRuYXZiYXItYm9yZGVyLXdpZHRoICogMikpICsgKCRuYXYtbGluay1oZWlnaHQgKyByZW0tY2FsYygkbmF2YmFyLWJvcmRlci13aWR0aCAqIDIpKTtcbiAgICB9XG4gICAgJi1tZC1tZC1ib3R0b20ge1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogKCRuYXYtbGluay1oZWlnaHQgKyByZW0tY2FsYygkbmF2YmFyLWJvcmRlci13aWR0aCAqIDIpKSAqIDI7XG4gICAgfVxuICAgICYtc20tbWQtYm90dG9tIHtcbiAgICAgICAgcGFkZGluZy1ib3R0b206ICgkbmF2LWxpbmstaGVpZ2h0LXNtICsgcmVtLWNhbGMoJG5hdmJhci1ib3JkZXItd2lkdGggKiAyKSkgKyAoJG5hdi1saW5rLWhlaWdodCArIHJlbS1jYWxjKCRuYXZiYXItYm9yZGVyLXdpZHRoICogMikpO1xuICAgIH1cbiAgICAmLWxnLXNtLWJvdHRvbSB7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAoJG5hdi1saW5rLWhlaWdodC1sZyArIHJlbS1jYWxjKCRuYXZiYXItYm9yZGVyLXdpZHRoICogMikpICsgKCRuYXYtbGluay1oZWlnaHQtc20gKyByZW0tY2FsYygkbmF2YmFyLWJvcmRlci13aWR0aCAqIDIpKTtcbiAgICB9XG59XG5cblxuXG4vLyBPcHRpb25hbCBzaXppbmdcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4vLyBMYXJnZVxuLm5hdmJhci1sZyB7XG5cbiAgICAvLyBCcmFuZFxuICAgIC5uYXZiYXItYnJhbmQge1xuICAgICAgICBwYWRkaW5nLXRvcDogJG5hdmJhci1icmFuZC1wYWRkaW5nLXktbGc7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAkbmF2YmFyLWJyYW5kLXBhZGRpbmcteS1sZztcbiAgICB9XG5cbiAgICAvLyBOYXYgbGlua3NcbiAgICAubmF2YmFyLW5hdi1saW5rIHtcbiAgICAgICAgcGFkZGluZzogJG5hdmJhci1saW5rLXBhZGRpbmcteS1sZyAkbmF2YmFyLWxpbmstcGFkZGluZy14LWxnO1xuXG4gICAgICAgIC8vIEJhZGdlXG4gICAgICAgIC5iYWRnZS1tYXJrIHtcbiAgICAgICAgICAgIHRvcDogJG5hdmJhci1saW5rLXBhZGRpbmcteS1sZyAvIDI7XG4gICAgICAgICAgICByaWdodDogJG5hdmJhci1saW5rLXBhZGRpbmcteC1sZyAvIDI7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBUZXh0XG4gICAgLm5hdmJhci10ZXh0IHtcbiAgICAgICAgcGFkZGluZy10b3A6ICRuYXZiYXItbGluay1wYWRkaW5nLXktbGc7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAkbmF2YmFyLWxpbmstcGFkZGluZy15LWxnO1xuICAgIH1cblxuICAgIC8vIFVzZXIgZHJvcGRvd25cbiAgICAuZHJvcGRvd24tdXNlciB7XG4gICAgICAgID4gLm5hdmJhci1uYXYtbGluayB7XG5cbiAgICAgICAgICAgIC8vIFNldCB2ZXJ0aWNhbCBwYWRkaW5nXG4gICAgICAgICAgICAmLFxuICAgICAgICAgICAgPiBzcGFuIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLXRvcDogKCRuYXZiYXItbGluay1wYWRkaW5nLXktbGcgLyAyKTtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogKCRuYXZiYXItbGluay1wYWRkaW5nLXktbGcgLyAyKTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLy8gVXNlciBpbWFnZVxuICAgICAgICAgICAgPiBpbWcge1xuICAgICAgICAgICAgICAgIG1heC1oZWlnaHQ6ICgkZm9udC1zaXplLWJhc2UgKiAkbGluZS1oZWlnaHQtYmFzZSkgKyAoJG5hdmJhci1saW5rLXBhZGRpbmcteS1sZyAvIDIpICsgKCRuYXZiYXItbGluay1wYWRkaW5nLXktbGcgLyAyKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuLy8gU21hbGxcbi5uYXZiYXItc20ge1xuXG4gICAgLy8gQnJhbmRcbiAgICAubmF2YmFyLWJyYW5kIHtcbiAgICAgICAgcGFkZGluZy10b3A6ICRuYXZiYXItYnJhbmQtcGFkZGluZy15LXNtO1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogJG5hdmJhci1icmFuZC1wYWRkaW5nLXktc207XG4gICAgfVxuXG4gICAgLy8gSXRlbXNcbiAgICAubmF2YmFyLW5hdi1saW5rIHtcbiAgICAgICAgcGFkZGluZzogJG5hdmJhci1saW5rLXBhZGRpbmcteS1zbSAkbmF2YmFyLWxpbmstcGFkZGluZy14LXNtO1xuXG4gICAgICAgIC8vIEJhZGdlXG4gICAgICAgIC5iYWRnZS1tYXJrIHtcbiAgICAgICAgICAgIHRvcDogJG5hdmJhci1saW5rLXBhZGRpbmcteS1zbSAvIDI7XG4gICAgICAgICAgICByaWdodDogJG5hdmJhci1saW5rLXBhZGRpbmcteC1zbSAvIDI7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBUZXh0XG4gICAgLm5hdmJhci10ZXh0IHtcbiAgICAgICAgcGFkZGluZy10b3A6ICRuYXZiYXItbGluay1wYWRkaW5nLXktc207XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAkbmF2YmFyLWxpbmstcGFkZGluZy15LXNtO1xuICAgIH1cblxuICAgIC8vIFVzZXIgZHJvcGRvd25cbiAgICAuZHJvcGRvd24tdXNlciB7XG4gICAgICAgID4gLm5hdmJhci1uYXYtbGluayB7XG5cbiAgICAgICAgICAgIC8vIFNldCB2ZXJ0aWNhbCBwYWRkaW5nXG4gICAgICAgICAgICAmLFxuICAgICAgICAgICAgPiBzcGFuIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLXRvcDogKCRuYXZiYXItbGluay1wYWRkaW5nLXktc20gLyAyKTtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogKCRuYXZiYXItbGluay1wYWRkaW5nLXktc20gLyAyKTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLy8gVXNlciBpbWFnZVxuICAgICAgICAgICAgPiBpbWcge1xuICAgICAgICAgICAgICAgIG1heC1oZWlnaHQ6ICgkZm9udC1zaXplLWJhc2UgKiAkbGluZS1oZWlnaHQtYmFzZSkgKyAoJG5hdmJhci1saW5rLXBhZGRpbmcteS1zbSAvIDIpICsgKCRuYXZiYXItbGluay1wYWRkaW5nLXktc20gLyAyKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuXG5cbi8vIE1pc2Ncbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4vLyBOYXZiYXIgaGVhZGVyIC0gYWxsb3dzIHRvIHVzZSBjdXN0b20gYmFja2dyb3VuZCBjb2xvcnNcbi8vIGluIGxvZ28gc2VjdGlvbi4gVXNlcyBuZWdhdGl2ZSBtYXJnaW5zLlxuLm5hdmJhci1oZWFkZXIge1xuICAgIG1hcmdpbi10b3A6IC0oJG5hdmJhci1ib3JkZXItd2lkdGgpO1xuICAgIG1hcmdpbi1ib3R0b206IC0oJG5hdmJhci1ib3JkZXItd2lkdGgpO1xuICAgIG1hcmdpbi1sZWZ0OiAtKCRuYXZiYXItcGFkZGluZy14KTtcbiAgICBtYXJnaW4tcmlnaHQ6ICRuYXZiYXItcGFkZGluZy14O1xuICAgIGJvcmRlci10b3A6ICRuYXZiYXItYm9yZGVyLXdpZHRoIHNvbGlkIHRyYW5zcGFyZW50O1xuICAgIGJvcmRlci1ib3R0b206ICRuYXZiYXItYm9yZGVyLXdpZHRoIHNvbGlkIHRyYW5zcGFyZW50O1xuXG4gICAgLy8gRGFyayBoZWFkZXJcbiAgICAmLm5hdmJhci1kYXJrIHtcbiAgICAgICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogJG5hdmJhci1kYXJrLWJvcmRlci1jb2xvcjtcbiAgICB9XG5cbiAgICAvLyBMaWdodCBoZWFkZXJcbiAgICAmLm5hdmJhci1saWdodCB7XG4gICAgICAgIGJvcmRlci1ib3R0b20tY29sb3I6ICRuYXZiYXItbGlnaHQtYm9yZGVyLWNvbG9yO1xuICAgIH1cblxuICAgIC8vIExvZ29cbiAgICAubmF2YmFyLWJyYW5kIHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6ICRuYXZiYXItcGFkZGluZy14O1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgfVxuXG4gICAgLy8gTG9nbyB0aGF0IGFwcGVhcnMgb25seSB3aGVuIHNpZGViYXIgaXMgY29sbGFwc2VkXG4gICAgLm5hdmJhci1icmFuZC14cyB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuXG4gICAgLy8gV2hlbiBzaWRlYmFyIGlzIGNvbGxhcHNlZFxuICAgIC5zaWRlYmFyLXhzICYge1xuXG4gICAgICAgIC8vIEhpZGUgb3JpZ2luYWwgbG9nb1xuICAgICAgICAubmF2YmFyLWJyYW5kLW1kIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIH1cblxuICAgICAgICAvLyBTaG93IGljb24gbG9nb1xuICAgICAgICAubmF2YmFyLWJyYW5kLXhzIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgIG1pbi13aWR0aDogJHNpZGViYXItbWluaS13aWR0aDtcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4vLyBGaXggZm9yIHN0YXRpYyBuYXZiYXIgdG8gYXBwZWFyIG9uIHRvcCBvZiBzaWRlYmFyXG4ubmF2YmFyLXN0YXRpYyB7XG4gICAgei1pbmRleDogKCRzaWRlYmFyLXppbmRleC1tYWluICsgMSk7XG59XG5cblxuXG4vLyBMYXlvdXQgc3BlY2lmaWMgYWRkaXRpb25zXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLy9cbi8vICMgTGF5b3V0IDVcbi8vXG5cbkBpZiAkbGF5b3V0ID09ICdsYXlvdXRfNScge1xuXG4gICAgLy8gTmF2YmFycyBoYXZlIGV4dHJhIGhvcml6b250YWwgc3BhY2luZyB0aGF0XG4gICAgLy8gbWF0Y2ggcGFnZSBjb250ZW50IHNwYWNpbmdcbiAgICAubmF2YmFyOm5vdCgubmF2YmFyLWNvbXBvbmVudCkge1xuICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKG1kKSB7XG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6ICgkcGFnZS1jb250YWluZXItcGFkZGluZy14IC8gMikgKyAoJGNvbnRlbnQtY29udGFpbmVyLXBhZGRpbmcteCAqIDIpO1xuICAgICAgICAgICAgcGFkZGluZy1yaWdodDogKCRwYWdlLWNvbnRhaW5lci1wYWRkaW5nLXggLyAyKSArICgkY29udGVudC1jb250YWluZXItcGFkZGluZy14ICogMik7XG4gICAgICAgIH1cbiAgICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCh4bCkge1xuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAkcGFnZS1jb250YWluZXItcGFkZGluZy14ICsgKCRjb250ZW50LWNvbnRhaW5lci1wYWRkaW5nLXggKiAyKTtcbiAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6ICRwYWdlLWNvbnRhaW5lci1wYWRkaW5nLXggKyAoJGNvbnRlbnQtY29udGFpbmVyLXBhZGRpbmcteCAqIDIpO1xuICAgICAgICB9XG5cbiAgICAgICAgLy8gU2FtZSBmb3IgZnVsbCB3aWR0aCBtZWdhIG1lbnVcbiAgICAgICAgLm1lZ2EtbWVudS1mdWxsIHtcbiAgICAgICAgICAgIC5kcm9wZG93bi1tZW51IHtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKG1kKSB7XG4gICAgICAgICAgICAgICAgICAgIGxlZnQ6ICgkcGFnZS1jb250YWluZXItcGFkZGluZy14IC8gMikgKyAoJGNvbnRlbnQtY29udGFpbmVyLXBhZGRpbmcteCAqIDIpO1xuICAgICAgICAgICAgICAgICAgICByaWdodDogKCRwYWdlLWNvbnRhaW5lci1wYWRkaW5nLXggLyAyKSArICgkY29udGVudC1jb250YWluZXItcGFkZGluZy14ICogMik7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoeGwpIHtcbiAgICAgICAgICAgICAgICAgICAgbGVmdDogJHBhZ2UtY29udGFpbmVyLXBhZGRpbmcteCArICgkY29udGVudC1jb250YWluZXItcGFkZGluZy14ICogMik7XG4gICAgICAgICAgICAgICAgICAgIHJpZ2h0OiAkcGFnZS1jb250YWluZXItcGFkZGluZy14ICsgKCRjb250ZW50LWNvbnRhaW5lci1wYWRkaW5nLXggKiAyKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAvLyBCb3hlZCBsYXlvdXRcbiAgICAgICAgPiAuY29udGFpbmVyIHtcbiAgICAgICAgICAgIC5tZWdhLW1lbnUtZnVsbCAuZHJvcGRvd24tbWVudSB7XG4gICAgICAgICAgICAgICAgbGVmdDogKCRjb250ZW50LWNvbnRhaW5lci1wYWRkaW5nLXggKiAyKTtcbiAgICAgICAgICAgICAgICByaWdodDogKCRjb250ZW50LWNvbnRhaW5lci1wYWRkaW5nLXggKiAyKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cbiIsIi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICpcbiAqICAjIENhcmQgY29tcG9uZW50XG4gKlxuICogIE92ZXJyaWRlcyBmb3IgY2FyZCBib290c3RyYXAgY29tcG9uZW50XG4gKlxuICogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuXG5cbi8vXG4vLyBCYXNlIHN0eWxlc1xuLy9cblxuLy8gQ2FyZCBiYXNlXG4uY2FyZCB7XG4gICAgbWFyZ2luLWJvdHRvbTogJHNwYWNlcjtcbiAgICBAaW5jbHVkZSBib3gtc2hhZG93KCRjYXJkLWJveC1zaGFkb3cpO1xuXG4gICAgLy8gRnVsbCBzY3JlZW4gbW9kZVxuICAgICYuZml4ZWQtdG9wIHtcbiAgICAgICAgb3ZlcmZsb3c6IGF1dG87XG4gICAgICAgIG1heC1oZWlnaHQ6IDEwMCU7XG4gICAgfVxufVxuXG4vLyBDYXJkIGJvZHlcbi5jYXJkLWJvZHk6bm90KC5jYXJkKSB7XG4gICAgKyAuY2FyZC1ib2R5Om5vdCguY2FyZCkge1xuICAgICAgICBib3JkZXItdG9wOiAkY2FyZC1ib3JkZXItd2lkdGggc29saWQgJGNhcmQtYm9yZGVyLWNvbG9yO1xuICAgIH1cbn1cblxuLy8gQ2FyZCB0aXRsZVxuLmNhcmQtdGl0bGUge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLy8gQ2FyZCBoZWFkZXJcbi5jYXJkLWhlYWRlciB7XG5cbiAgICAvLyBUaXRsZVxuICAgIC5jYXJkLXRpdGxlIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICB9XG5cbiAgICAvLyBJbnNpZGUgZGFyayBjYXJkXG4gICAgLmNhcmRbY2xhc3MqPWJnLV06bm90KC5iZy1saWdodCk6bm90KC5iZy13aGl0ZSk6bm90KC5iZy10cmFuc3BhcmVudCkgJiB7XG4gICAgICAgIGJvcmRlci1ib3R0b20tY29sb3I6IHJnYmEoJHdoaXRlLCAwLjEpO1xuICAgIH1cblxuICAgIC8vIElmIGhlYWRlciBoYXMgbm8gYm90dG9tIGJvcmRlcixcbiAgICAvLyBtYWtlIHZlcnRpY2FsIHNwYWNpbmcgYmlnZ2VyXG4gICAgJjpub3QoW2NsYXNzKj1iZy1dKTpub3QoW2NsYXNzKj1hbHBoYS1dKSB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICBwYWRkaW5nLXRvcDogJGNhcmQtc3BhY2VyLXg7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAkY2FyZC1zcGFjZXIteDtcbiAgICAgICAgYm9yZGVyLWJvdHRvbS13aWR0aDogMDtcblxuICAgICAgICAvLyBSZW1vdmUgdG9wIHBhZGRpbmcgZnJvbSBjYXJkIGJvZHlcbiAgICAgICAgKyAuY2FyZC1ib2R5LFxuICAgICAgICArICogPiAuY2FyZC1ib2R5OmZpcnN0LWNoaWxkIHtcbiAgICAgICAgICAgIHBhZGRpbmctdG9wOiAwO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4vLyBDYXJkIGZvb3RlclxuLmNhcmQtZm9vdGVyIHtcblxuICAgIC8vIEFkZCB0b3AgYm9yZGVycyBpZiBjb21lcyBsYXN0XG4gICAgJjpmaXJzdC1jaGlsZCxcbiAgICAuY2FyZC1oZWFkZXIgKyAmLFxuICAgIC5jYXJkLWhlYWRlciArICogPiAmOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgYm9yZGVyLXRvcDogMDtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogJGNhcmQtYm9yZGVyLXdpZHRoIHNvbGlkICRjYXJkLWJvcmRlci1jb2xvcjtcbiAgICB9XG5cbiAgICAvLyBBZGQgYm9yZGVyIGlmIG5vdCBsYXN0XG4gICAgJi5ib3JkZXItYm90dG9tLTEge1xuICAgICAgICBib3JkZXItYm90dG9tOiAkY2FyZC1ib3JkZXItd2lkdGggc29saWQgJGNhcmQtYm9yZGVyLWNvbG9yO1xuICAgIH1cbn1cblxuXG4vL1xuLy8gSGVhZGVyIG5hdnNcbi8vXG5cbi5jYXJkLWhlYWRlci10YWJzIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuXG4gICAgLy8gTGlua1xuICAgIC5uYXYtbGluayB7XG4gICAgICAgIGJvcmRlci10b3Atd2lkdGg6IDA7XG4gICAgfVxufVxuXG5cbi8vXG4vLyBJbWFnZSBjb250cm9sc1xuLy9cblxuLy8gQ2FyZCBpbWFnZVxuLmNhcmQtaW1nIHtcblxuICAgIC8vIEluc2lkZSBjYXJkIGJvZHlcbiAgICAuY2FyZC1ib2R5ICYge1xuICAgICAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRjYXJkLWJvcmRlci1yYWRpdXMpO1xuICAgIH1cbn1cblxuLy8gSW1nIGFjdGlvbnNcbi5jYXJkLWltZy1hY3Rpb25zIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAvLyBIb3ZlciBzdGF0ZVxuICAgIEBpbmNsdWRlIGhvdmVyLWZvY3VzIHtcbiAgICAgICAgLmNhcmQtaW1nLWFjdGlvbnMtb3ZlcmxheSB7XG4gICAgICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICAgICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLy8gSW1nIGFjdGlvbnMgb3ZlcmxheVxuLmNhcmQtaW1nLWFjdGlvbnMtb3ZlcmxheSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgYm90dG9tOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgkYmxhY2ssIDAuNzUpO1xuICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgb3BhY2l0eTogMDtcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgQGluY2x1ZGUgdHJhbnNpdGlvbihhbGwgZWFzZS1pbi1vdXQgJGNvbXBvbmVudC10cmFuc2l0aW9uLXRpbWVyKTtcbn1cblxuXG4vL1xuLy8gQ2FyZCBhY3Rpb25zXG4vL1xuXG4vLyBMaW5rIGJhc2VcbltkYXRhLWFjdGlvbl0ge1xuICAgIGN1cnNvcjogcG9pbnRlcjtcblxuICAgIC8vIEljb25zIGJhc2VcbiAgICAmOmFmdGVyIHtcbiAgICAgICAgZm9udC1mYW1pbHk6ICRpY29uLWZvbnQtZmFtaWx5O1xuICAgICAgICBmb250LXNpemU6ICRpY29uLWZvbnQtc2l6ZTtcbiAgICAgICAgbWluLXdpZHRoOiAkaWNvbi1mb250LXNpemU7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgICAgICBAaW5jbHVkZSBsbC1mb250LXNtb290aGluZygpO1xuICAgIH1cbn1cblxuLy8gQ29sbGFwc2UgaWNvblxuW2RhdGEtYWN0aW9uPVwiY29sbGFwc2VcIl06YWZ0ZXIge1xuICAgIGNvbnRlbnQ6ICdcXGU5YzEnO1xufVxuXG4vLyBSZWxvYWQgaWNvblxuW2RhdGEtYWN0aW9uPVwicmVsb2FkXCJdOmFmdGVyIHtcbiAgICBjb250ZW50OiAnXFxlOWZiJztcbn1cblxuLy8gUmVtb3ZlIGljb25cbltkYXRhLWFjdGlvbj1cInJlbW92ZVwiXTphZnRlciB7XG4gICAgY29udGVudDogJ1xcZWQ2YSc7XG4gICAgZm9udC1zaXplOiAkZm9udC1zaXplLWJhc2U7XG59XG5cbi8vIE1vdmUgaWNvblxuW2RhdGEtYWN0aW9uPVwibW92ZVwiXSB7XG4gICAgY3Vyc29yOiBkZWZhdWx0O1xuXG4gICAgLy8gSWNvblxuICAgICY6YWZ0ZXIge1xuICAgICAgICBjb250ZW50OiAnXFxlOTg2JztcbiAgICB9XG59XG5cbi8vIEZ1bGxzY3JlZW5cbltkYXRhLWFjdGlvbj1cImZ1bGxzY3JlZW5cIl0ge1xuICAgICY6YWZ0ZXIge1xuICAgICAgICBjb250ZW50OiAnXFxlOWY5JztcbiAgICB9XG5cbiAgICAvLyBDaGFuZ2UgaWNvbiB3aGVuIGluIGZ1bGxzY3JlZW4gbW9kZVxuICAgICZbZGF0YS1mdWxsc2NyZWVuPVwiYWN0aXZlXCJdOmFmdGVyIHtcbiAgICAgICAgY29udGVudDogJ1xcZTlmYSc7XG4gICAgfVxufVxuXG4vLyBPcGVuIG1vZGFsIGljb25cbltkYXRhLWFjdGlvbj1cIm1vZGFsXCJdOmFmdGVyIHtcbiAgICBjb250ZW50OiAnXFxlOWViJztcbn1cblxuXG4vL1xuLy8gQ29sbGFwc2FibGUgcGFuZWxzIChha2EsIGFjY29yZGlvbilcbi8vXG5cbi5jYXJkLWdyb3VwLWNvbnRyb2wge1xuICAgIC5jYXJkLXRpdGxlID4gYSB7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcblxuICAgICAgICAvLyBDb2xsYXBzaWJsZSBpY29uXG4gICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgIGNvbnRlbnQ6ICdcXGVkNWInO1xuICAgICAgICAgICAgZm9udC1mYW1pbHk6ICRpY29uLWZvbnQtZmFtaWx5O1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgdG9wOiA1MCU7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAtKCRpY29uLWZvbnQtc2l6ZSAvIDIpO1xuICAgICAgICAgICAgZm9udC1zaXplOiAkaWNvbi1mb250LXNpemU7XG4gICAgICAgICAgICBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LW5vcm1hbDtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgICAgICAgICAgQGluY2x1ZGUgbGwtZm9udC1zbW9vdGhpbmcoKTtcbiAgICAgICAgfVxuXG4gICAgICAgIC8vIENoYW5nZSBpY29uIGlmIGNvbGxhcHNlZFxuICAgICAgICAmLmNvbGxhcHNlZDpiZWZvcmUge1xuICAgICAgICAgICAgY29udGVudDogJ1xcZWQ1YSc7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBMZWZ0IGNvbnRyb2wgcG9zaXRpb25cbiAgICAmLWxlZnQge1xuICAgICAgICAuY2FyZC10aXRsZSA+IGEge1xuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAoJGljb24tZm9udC1zaXplICsgJGVsZW1lbnQtc3BhY2VyLXgpO1xuXG4gICAgICAgICAgICAvLyBJY29uIGFsaWdubWVudFxuICAgICAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBSaWdodCBjb250cm9sIHBvc2l0aW9uXG4gICAgJi1yaWdodCB7XG4gICAgICAgIC5jYXJkLXRpdGxlID4gYSB7XG4gICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAoJGljb24tZm9udC1zaXplICsgJGVsZW1lbnQtc3BhY2VyLXgpO1xuXG4gICAgICAgICAgICAvLyBSZS1hbGlnbiB0aGUgaWNvblxuICAgICAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuIiwiLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gKlxuICogICMgQnJlYWRjcnVtYiBjb21wb25lbnRcbiAqXG4gKiAgT3ZlcnJpZGVzIGZvciBicmVhZGNydW1iIGJvb3RzdHJhcCBjb21wb25lbnRcbiAqXG4gKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5cbi8vIEJhc2Vcbi5icmVhZGNydW1iIHtcbiAgICBwYWRkaW5nOiAwO1xufVxuXG4vLyBCcmVhZGNydW1iIGl0ZW1cbi5icmVhZGNydW1iLWl0ZW0ge1xuICAgIHBhZGRpbmc6ICRicmVhZGNydW1iLXBhZGRpbmcteSAwO1xuICAgIGNvbG9yOiBpbmhlcml0O1xuXG4gICAgLy8gSWNvbnNcbiAgICBpIHtcbiAgICAgICAgZm9udC1zaXplOiAkZm9udC1zaXplLXNtO1xuICAgIH1cbn1cblxuLy8gTGlua2VkIGl0ZW1zXG5hLmJyZWFkY3J1bWItaXRlbSB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIGNvbG9yOiBpbmhlcml0O1xuICAgIEBpbmNsdWRlIHRyYW5zaXRpb24ob3BhY2l0eSBlYXNlLWluLW91dCAkY29tcG9uZW50LXRyYW5zaXRpb24tdGltZXIpO1xuXG4gICAgLy8gSG92ZXIgc3RhdGVcbiAgICAmOmhvdmVyLFxuICAgICY6Zm9jdXMsXG4gICAgLnNob3cgPiAmIHtcbiAgICAgICAgb3BhY2l0eTogMC43NTtcbiAgICB9XG59XG5cbi8vIFRyYW5zcGFyZW50IGJyZWFkY3J1bWJcbi5wYWdlLWhlYWRlci1jb250ZW50IHtcblxuICAgIC8vIEJyZWFkY3J1bWJcbiAgICA+IC5icmVhZGNydW1iIHtcbiAgICAgICAgcGFkZGluZy10b3A6IDA7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAoJGJyZWFkY3J1bWItcGFkZGluZy15ICogMik7XG5cbiAgICAgICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgICAgICAgICAgIHBhZGRpbmctdG9wOiAoJGJyZWFkY3J1bWItcGFkZGluZy15ICogMik7XG4gICAgICAgIH1cbiAgICB9XG59XG5cblxuLy9cbi8vIERpdmlkZXIgc3R5bGVzXG4vL1xuXG4vLyBEYXNoXG4uYnJlYWRjcnVtYi1kYXNoID4gLmJyZWFkY3J1bWItaXRlbSArIC5icmVhZGNydW1iLWl0ZW06YmVmb3JlICB7XG4gICAgY29udGVudDogJ1xcMjAxM1xcMDBhMCc7XG59XG5cbi8vIEFycm93XG4uYnJlYWRjcnVtYi1hcnJvdyA+IC5icmVhZGNydW1iLWl0ZW0gKyAuYnJlYWRjcnVtYi1pdGVtOmJlZm9yZSAge1xuICAgIEBpZiAkZGlyZWN0aW9uID09IFwiTFRSXCIge1xuICAgICAgICBjb250ZW50OiAnXFwyMTkyXFwwMGEwJztcbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgICBjb250ZW50OiAnXFwyMTkwXFwwMGEwJztcbiAgICB9XG59XG5cbi8vIEFycm93c1xuLmJyZWFkY3J1bWItYXJyb3dzID4gLmJyZWFkY3J1bWItaXRlbSArIC5icmVhZGNydW1iLWl0ZW06YmVmb3JlICB7XG4gICAgY29udGVudDogJ1xcMDBiYlxcMDBhMCc7XG59XG5cbi8vIENhcmV0XG4uYnJlYWRjcnVtYi1jYXJldCA+IC5icmVhZGNydW1iLWl0ZW0gKyAuYnJlYWRjcnVtYi1pdGVtOmJlZm9yZSAge1xuICAgIGNvbnRlbnQ6ICdcXDIwM0FcXDAwYTAnO1xufVxuXG5cbi8vXG4vLyBCcmVhZGNydW1iIGxpbmVcbi8vXG5cbi8vIEJhc2Vcbi5icmVhZGNydW1iLWxpbmUge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBwYWRkaW5nLWxlZnQ6ICRicmVhZGNydW1iLWxpbmUtcGFkZGluZy14O1xuICAgIHBhZGRpbmctcmlnaHQ6ICRicmVhZGNydW1iLWxpbmUtcGFkZGluZy14O1xuICAgIGJvcmRlci10b3A6ICRicmVhZGNydW1iLWxpbmUtYm9yZGVyLXdpZHRoIHNvbGlkIHRyYW5zcGFyZW50O1xuICAgIGJvcmRlci1ib3R0b206ICRicmVhZGNydW1iLWxpbmUtYm9yZGVyLXdpZHRoIHNvbGlkIHRyYW5zcGFyZW50O1xuXG4gICAgLy8gSW5zaWRlIHBhZ2UgaGVhZGVyIChhbGwgbGV2ZWxzKVxuICAgICY6bm90KC5icmVhZGNydW1iLWxpbmUtY29tcG9uZW50KTpmaXJzdC1jaGlsZCB7XG4gICAgICAgIGJvcmRlci10b3Atd2lkdGg6IDA7XG4gICAgfVxuICAgIFxuICAgIC8vIEFmdGVyIHBhZ2UgaGVhZGVyIGNvbnRlbnRcbiAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAkc3BhY2VyO1xuICAgICAgICBcbiAgICAgICAgLy8gUmVtb3ZlIGJvdHRvbSBtYXJnaW4gaWYgaW5zaWRlIGNvbG9yZWQgaGVhZGVyXG4gICAgICAgIC5wYWdlLWhlYWRlci1saWdodCAmLFxuICAgICAgICAucGFnZS1oZWFkZXItZGFyayAmIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi8vIExpZ2h0IGxpbmVcbi5icmVhZGNydW1iLWxpbmUtbGlnaHQge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRicmVhZGNydW1iLWxpbmUtbGlnaHQtYmc7XG4gICAgYm9yZGVyLWNvbG9yOiAkYnJlYWRjcnVtYi1saW5lLWxpZ2h0LWJvcmRlci1jb2xvcjtcbiAgICBjb2xvcjogJGJvZHktY29sb3I7XG5cbiAgICAvLyBSZW1vdmUgYm90dG9tIGJvcmRlciBpbiBsaWdodCBoZWFkZXJcbiAgICAmOm5vdCguYnJlYWRjcnVtYi1saW5lLWNvbXBvbmVudCk6bGFzdC1jaGlsZCB7XG4gICAgICAgIC5wYWdlLWhlYWRlci1saWdodCAmIHtcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b20td2lkdGg6IDA7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBSZW1vdmUgYm9yZGVycyBpbiBkYXJrIGhlYWRlclxuICAgIC5wYWdlLWhlYWRlci1kYXJrICY6bm90KC5icmVhZGNydW1iLWxpbmUtY29tcG9uZW50KSB7XG4gICAgICAgIGJvcmRlci10b3Atd2lkdGg6IDA7XG4gICAgICAgIFxuICAgICAgICAvLyBSZW1vdmUgYm90dG9tIGJvcmRlciBpZiBiZWZvcmUgdGl0bGVcbiAgICAgICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAgICAgICBib3JkZXItYm90dG9tLXdpZHRoOiAwO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLy8gQm9yZGVycyBpbiBsaW5lIGNvbXBvbmVudFxuICAgICYuYnJlYWRjcnVtYi1saW5lLWNvbXBvbmVudCB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogJGJyZWFkY3J1bWItbGluZS1saWdodC1ib3JkZXItY29sb3I7XG4gICAgfVxufVxuXG4vLyBEYXJrIGxpbmVcbi5icmVhZGNydW1iLWxpbmUtZGFyayB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGJyZWFkY3J1bWItbGluZS1kYXJrLWJnO1xuICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgY29sb3I6ICR3aGl0ZTtcblxuICAgIC8vIFJlbW92ZSBib3R0b20gYm9yZGVyIGluIGRhcmsgaGVhZGVyXG4gICAgJjpub3QoLmJyZWFkY3J1bWItbGluZS1jb21wb25lbnQpOmxhc3QtY2hpbGQge1xuICAgICAgICAucGFnZS1oZWFkZXItZGFyayAmIHtcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b20td2lkdGg6IDA7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBBY3RpdmUgc3RhdGVcbiAgICAuYnJlYWRjcnVtYi1pdGVtIHtcbiAgICAgICAgJi5hY3RpdmUge1xuICAgICAgICAgICAgY29sb3I6IGluaGVyaXQ7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBJbiBkYXJrIHBhZ2UgaGVhZGVyXG4gICAgLnBhZ2UtaGVhZGVyLWRhcmsgJiB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogJGJyZWFkY3J1bWItbGluZS1kYXJrLWJvcmRlci1jb2xvcjtcbiAgICB9XG59XG5cbi8vIEFzIGEgY29tcG9uZW50XG4uYnJlYWRjcnVtYi1saW5lLWNvbXBvbmVudCB7XG4gICAgYm9yZGVyOiAkYnJlYWRjcnVtYi1saW5lLWJvcmRlci13aWR0aCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRib3JkZXItcmFkaXVzKTtcbiAgICBcbiAgICAvLyBJbnNpZGUgcGFnZSBoZWFkZXJcbiAgICAucGFnZS1oZWFkZXIgJiB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAkcGFnZS1oZWFkZXItcGFkZGluZy14O1xuICAgICAgICBtYXJnaW4tcmlnaHQ6ICRwYWdlLWhlYWRlci1wYWRkaW5nLXg7XG4gICAgfVxufVxuXG5cbi8vXG4vLyBCcmVhZHJ1bWIgZWxlbWVudHNcbi8vXG5cbi8vIEJhc2Vcbi5icmVhZGNydW1iLWVsZW1lbnRzLWl0ZW0ge1xuICAgIHBhZGRpbmc6ICRicmVhZGNydW1iLXBhZGRpbmcteSAwO1xuXG4gICAgLy8gU3BhY2luZyBiZXR3ZWVuIGl0ZW1zXG4gICAgKyAuYnJlYWRjcnVtYi1lbGVtZW50cy1pdGVtIHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IG1hcC1nZXQoJHNwYWNlcnMsIDMpO1xuICAgIH1cbn1cblxuLy8gTGlua3NcbmEuYnJlYWRjcnVtYi1lbGVtZW50cy1pdGVtIHtcbiAgICBAZXh0ZW5kIGEuYnJlYWRjcnVtYi1pdGVtO1xufVxuXG5cblxuLy8gTGF5b3V0IHNwZWNpZmljIGFkZGl0aW9uc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi8vXG4vLyAjIExheW91dCA1XG4vL1xuXG5AaWYgJGxheW91dCA9PSAnbGF5b3V0XzUnIHtcblxuICAgIC8vIEJyZWFkY3J1bWIgbGluZSBoYXMgZXh0cmEgaG9yaXpvbnRhbCBzcGFjaW5nIHRoYXRcbiAgICAvLyBtYXRjaGVzIHBhZ2UgY29udGVudCBzcGFjaW5nXG4gICAgLmJyZWFkY3J1bWItbGluZTpub3QoLmJyZWFkY3J1bWItbGluZS1jb21wb25lbnQpIHtcbiAgICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChtZCkge1xuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAoJHBhZ2UtY29udGFpbmVyLXBhZGRpbmcteCAvIDIpICsgKCRjb250ZW50LWNvbnRhaW5lci1wYWRkaW5nLXggKiAyKTtcbiAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6ICgkcGFnZS1jb250YWluZXItcGFkZGluZy14IC8gMikgKyAoJGNvbnRlbnQtY29udGFpbmVyLXBhZGRpbmcteCAqIDIpO1xuICAgICAgICB9XG4gICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoeGwpIHtcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogJHBhZ2UtY29udGFpbmVyLXBhZGRpbmcteCArICgkY29udGVudC1jb250YWluZXItcGFkZGluZy14ICogMik7XG4gICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAkcGFnZS1jb250YWluZXItcGFkZGluZy14ICsgKCRjb250ZW50LWNvbnRhaW5lci1wYWRkaW5nLXggKiAyKTtcbiAgICAgICAgfVxuICAgIH1cbn1cbiIsIi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICpcbiAqICAjIFBhZ2luYXRpb24gY29tcG9uZW50XG4gKlxuICogIE92ZXJyaWRlcyBmb3IgcGFnaW5hdGlvbiBjb21wb25lbnRcbiAqXG4gKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5cblxuLy9cbi8vIEJhc2Ugc3R5bGVzXG4vL1xuXG4vLyBDb250YWluZXJcbi5wYWdpbmF0aW9uIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xufVxuXG4vLyBMaW5rXG4ucGFnZS1saW5rIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgbWluLXdpZHRoOiAoJGZvbnQtc2l6ZS1iYXNlICogJGxpbmUtaGVpZ2h0LWJhc2UpICsgcmVtLWNhbGMoJHBhZ2luYXRpb24tYm9yZGVyLXdpZHRoICogMikgKyAoJHBhZ2luYXRpb24tcGFkZGluZy15ICogMik7XG4gICAgQGluY2x1ZGUgdHJhbnNpdGlvbihhbGwgZWFzZS1pbi1vdXQgJGNvbXBvbmVudC10cmFuc2l0aW9uLXRpbWVyKTtcbn1cblxuXG4vL1xuLy8gU2l6aW5nXG4vL1xuXG4vLyBMYXJnZVxuLnBhZ2luYXRpb24tbGcge1xuICAgIC5wYWdlLWxpbmsge1xuICAgICAgICBtaW4td2lkdGg6ICgkZm9udC1zaXplLWxnICogJGxpbmUtaGVpZ2h0LWxnKSArIHJlbS1jYWxjKCRwYWdpbmF0aW9uLWJvcmRlci13aWR0aCAqIDIpICsgKCRwYWdpbmF0aW9uLXBhZGRpbmcteS1sZyAqIDIpO1xuICAgIH1cbn1cblxuLy8gU21hbGxcbi5wYWdpbmF0aW9uLXNtIHtcbiAgICAucGFnZS1saW5rIHtcbiAgICAgICAgbWluLXdpZHRoOiAoJGZvbnQtc2l6ZS1zbSAqICRsaW5lLWhlaWdodC1zbSkgKyByZW0tY2FsYygkcGFnaW5hdGlvbi1ib3JkZXItd2lkdGggKiAyKSArICgkcGFnaW5hdGlvbi1wYWRkaW5nLXktc20gKiAyKTtcbiAgICB9XG59XG5cblxuLy9cbi8vIE9wdGlvbmFsIHN0eWxlc1xuLy9cblxuLy8gUm91bmRlZCBzdHlsZVxuLnBhZ2luYXRpb24tcm91bmRlZCB7XG4gICAgLnBhZ2UtaXRlbSB7XG4gICAgICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgICAgICAgLnBhZ2UtbGluayB7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgYm9yZGVyLWxlZnQtcmFkaXVzKCRib3JkZXItcmFkaXVzLXJvdW5kKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICAgICAgLnBhZ2UtbGluayB7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgYm9yZGVyLXJpZ2h0LXJhZGl1cygkYm9yZGVyLXJhZGl1cy1yb3VuZCk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi8vIEZsYXQgc3R5bGVcbi5wYWdpbmF0aW9uLWZsYXQge1xuXG4gICAgLy8gSXRlbVxuICAgIC5wYWdlLWl0ZW0ge1xuXG4gICAgICAgIC8vIEFjdGl2ZSBzdGF0ZVxuICAgICAgICAmLmFjdGl2ZSAucGFnZS1saW5rIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRwYWdpbmF0aW9uLWFjdGl2ZS1iZztcbiAgICAgICAgfVxuXG4gICAgICAgIC8vIERpc2FibGVkIHN0YXRlXG4gICAgICAgICYuZGlzYWJsZWQgLnBhZ2UtbGluayB7XG4gICAgICAgICAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLy8gTGlua1xuICAgIC5wYWdlLWxpbmsge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgbWFyZ2luLWxlZnQ6ICRwYWdpbmF0aW9uLWZsYXQtc3BhY2luZztcbiAgICAgICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkYm9yZGVyLXJhZGl1cyk7XG5cbiAgICAgICAgQGluY2x1ZGUgaG92ZXItZm9jdXMge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHBhZ2luYXRpb24taG92ZXItYmc7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBSb3VuZGVkXG4gICAgJi5wYWdpbmF0aW9uLXJvdW5kZWQge1xuICAgICAgICAucGFnZS1saW5rIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGJvcmRlci1yYWRpdXMtcm91bmQpO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4vLyBTZXBhcmF0ZWQgc3R5bGVcbi5wYWdpbmF0aW9uLXNlcGFyYXRlZCB7XG5cbiAgICAvLyBMaW5rXG4gICAgLnBhZ2UtbGluayB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAkcGFnaW5hdGlvbi1zZXBhcmF0ZWQtc3BhY2luZztcbiAgICAgICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkYm9yZGVyLXJhZGl1cyk7XG4gICAgfVxuXG4gICAgLy8gUm91bmRlZFxuICAgICYucGFnaW5hdGlvbi1yb3VuZGVkIHtcbiAgICAgICAgLnBhZ2UtbGluayB7XG4gICAgICAgICAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRib3JkZXItcmFkaXVzLXJvdW5kKTtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLy8gUGFnZXIgc3R5bGVcbi5wYWdpbmF0aW9uLXBhZ2VyIHtcblxuICAgIC8vIEl0ZW1cbiAgICAucGFnZS1pdGVtIHtcbiAgICAgICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkYm9yZGVyLXJhZGl1cyk7XG4gICAgfVxuXG4gICAgLy8gTGlua1xuICAgIC5wYWdlLWxpbmsge1xuICAgICAgICBtYXJnaW4tbGVmdDogJHNwYWNlcjtcbiAgICAgICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkYm9yZGVyLXJhZGl1cyk7XG4gICAgfVxuXG4gICAgLy8gUm91bmRlZFxuICAgICYucGFnaW5hdGlvbi1yb3VuZGVkIHtcbiAgICAgICAgLnBhZ2UtbGluayB7XG4gICAgICAgICAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRib3JkZXItcmFkaXVzLXJvdW5kKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8vIExpbmtlZCBzdHlsZVxuICAgICYtbGlua2VkIHtcblxuICAgICAgICAvLyBJdGVtXG4gICAgICAgIC5wYWdlLWl0ZW0ge1xuICAgICAgICAgICAgJi5kaXNhYmxlZCAucGFnZS1saW5rIHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgICAgICAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLy8gTGlua1xuICAgICAgICAucGFnZS1saW5rIHtcbiAgICAgICAgICAgIGNvbG9yOiAkbGluay1jb2xvcjtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcblxuICAgICAgICAgICAgQGluY2x1ZGUgaG92ZXItZm9jdXMge1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkcGFnaW5hdGlvbi1hY3RpdmUtY29sb3I7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHBhZ2luYXRpb24tYWN0aXZlLWJnO1xuICAgICAgICAgICAgICAgIGJvcmRlci1jb2xvcjogJHBhZ2luYXRpb24tYWN0aXZlLWJvcmRlci1jb2xvcjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8vIFNpemVzXG4gICAgJjpub3QoLnBhZ2luYXRpb24tcm91bmRlZCkucGFnaW5hdGlvbi1sZyB7XG4gICAgICAgIC5wYWdlLWxpbmsge1xuICAgICAgICAgICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkYm9yZGVyLXJhZGl1cy1sZyk7XG4gICAgICAgIH1cbiAgICB9XG4gICAgJjpub3QoLnBhZ2luYXRpb24tcm91bmRlZCkucGFnaW5hdGlvbi1zbSB7XG4gICAgICAgIC5wYWdlLWxpbmsge1xuICAgICAgICAgICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkYm9yZGVyLXJhZGl1cy1zbSk7XG4gICAgICAgIH1cbiAgICB9XG59XG4iLCIvKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAqXG4gKiAgIyBCYWRnZSBjb21wb25lbnRcbiAqXG4gKiAgT3ZlcnJpZGVzIGZvciBiYWRnZSBib290c3RyYXAgY29tcG9uZW50XG4gKlxuICogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuXG4vLyBCYXNlXG4uYmFkZ2Uge1xuXG4gICAgLy8gRGlyZWN0aW9uIGFycm93IGluIGJhZGdlIGRyb3Bkb3duc1xuICAgICYuZHJvcGRvd24tdG9nZ2xlIHtcbiAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICBmb250LXNpemU6IDg1JTtcbiAgICAgICAgICAgIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8vIExpZ2h0IGNvbG9yXG4gICAgJi1saWdodCB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRncmF5LTIwMDtcbiAgICB9XG59XG5cbi8vIExpbmtlZCBiYWRnZVxuYS5iYWRnZSB7XG4gICAgQGluY2x1ZGUgdHJhbnNpdGlvbihhbGwgZWFzZS1pbi1vdXQgJGNvbXBvbmVudC10cmFuc2l0aW9uLXRpbWVyKTtcblxuICAgIC8vIEN1c3RvbSBiZyBjb2xvclxuICAgICZbY2xhc3MqPWJnLV06bm90KC5iZy10cmFuc3BhcmVudCk6bm90KC5iZy13aGl0ZSk6bm90KC5iZy1saWdodCkge1xuICAgICAgICAmOmhvdmVyLFxuICAgICAgICAmOmZvY3VzLFxuICAgICAgICAuc2hvdyA+ICYuZHJvcGRvd24tdG9nZ2xlIHtcbiAgICAgICAgICAgIGJveC1zaGFkb3c6ICRidG4tZGFyay1ob3Zlci1ib3gtc2hhZG93O1xuICAgICAgICB9XG4gICAgfVxufVxuXG4vLyBRdWljayBmaXggZm9yIGJhZGdlcyBpbiBidXR0b25zXG4uYnRuIC5iYWRnZSB7ICAgIFxuICAgIHRvcDogMDtcbn1cblxuXG4vL1xuLy8gQWx0ZXJuYXRpdmUgc3R5bGVzXG4vL1xuXG4vLyBGbGF0IChvdXRsaW5lKSBiYWRnZVxuLmJhZGdlLWZsYXQge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGJvcmRlcjogJGJhZGdlLWZsYXQtYm9yZGVyLXdpZHRoIHNvbGlkIHRyYW5zcGFyZW50O1xuICAgIHBhZGRpbmc6IGNhbGMoI3skYmFkZ2UtcGFkZGluZy15fSAtICN7JGJhZGdlLWZsYXQtYm9yZGVyLXdpZHRofSkgY2FsYygjeyRiYWRnZS1wYWRkaW5nLXh9IC0gI3skYmFkZ2UtZmxhdC1ib3JkZXItd2lkdGh9KTtcblxuICAgIC8vIFJlbW92ZSBiYWNrZ3JvdW5kIGNvbG9yIGFuZCBzaGFkb3cgb24gaG92ZXJcbiAgICAmW2hyZWZdIHtcbiAgICAgICAgQGluY2x1ZGUgaG92ZXItZm9jdXMge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICBAaW5jbHVkZSBib3gtc2hhZG93KG5vbmUpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLy8gUGlsbCBiYWRnZVxuICAgICYuYmFkZ2UtcGlsbCB7XG4gICAgICAgIHBhZGRpbmctbGVmdDogY2FsYygjeyRiYWRnZS1waWxsLXBhZGRpbmcteH0gLSAjeyRiYWRnZS1mbGF0LWJvcmRlci13aWR0aH0pO1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiBjYWxjKCN7JGJhZGdlLXBpbGwtcGFkZGluZy14fSAtICN7JGJhZGdlLWZsYXQtYm9yZGVyLXdpZHRofSk7XG4gICAgfVxufVxuXG4vLyBTdHJpcGVkIGJhZGdlXG4uYmFkZ2Utc3RyaXBlZCB7XG4gICAgcGFkZGluZzogJGJhZGdlLXN0cmlwZWQtcGFkZGluZy15ICRiYWRnZS1zdHJpcGVkLXBhZGRpbmcteDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAvLyBTdHJpcGVcbiAgICAmOmJlZm9yZSB7XG4gICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICB3aWR0aDogMDtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgIGJvdHRvbTogMDtcbiAgICB9XG5cbiAgICAvLyBMZWZ0IGFsaWdubWVudFxuICAgICYtbGVmdCB7XG4gICAgICAgIHBhZGRpbmctbGVmdDogY2FsYygjeyRiYWRnZS1wYWRkaW5nLXh9ICsgI3skYmFkZ2Utc3RyaXBlZC1ib3JkZXItd2lkdGh9KTtcbiAgICAgICAgQGluY2x1ZGUgYm9yZGVyLWxlZnQtcmFkaXVzKDApO1xuXG4gICAgICAgIC8vIFN0cmlwZVxuICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgYm9yZGVyLWxlZnQ6ICRiYWRnZS1zdHJpcGVkLWJvcmRlci13aWR0aCBzb2xpZDtcbiAgICAgICAgICAgIGJvcmRlci1sZWZ0LWNvbG9yOiBpbmhlcml0O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLy8gUmlnaHQgYWxpZ25tZW50XG4gICAgJi1yaWdodCB7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IGNhbGMoI3skYmFkZ2UtcGFkZGluZy14fSArICN7JGJhZGdlLXN0cmlwZWQtYm9yZGVyLXdpZHRofSk7XG4gICAgICAgIEBpbmNsdWRlIGJvcmRlci1yaWdodC1yYWRpdXMoMCk7XG5cbiAgICAgICAgLy8gU3RyaXBlXG4gICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICAgICAgYm9yZGVyLXJpZ2h0OiAkYmFkZ2Utc3RyaXBlZC1ib3JkZXItd2lkdGggc29saWQ7XG4gICAgICAgICAgICBib3JkZXItcmlnaHQtY29sb3I6IGluaGVyaXQ7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi8vIEJhZGdlIHdpdGggaWNvblxuLmJhZGdlLWljb24ge1xuICAgIHBhZGRpbmc6ICRiYWRnZS1wYWRkaW5nLXg7XG4gICAgbGluZS1oZWlnaHQ6IDE7XG5cbiAgICAvLyBSZW1vdmUgdG9wIGVkZ2UgZnJvbSBpY29uXG4gICAgPiBpIHtcbiAgICAgICAgdG9wOiAwO1xuICAgIH1cbn1cblxuLy8gRmxvYXRpbmcgYmFkZ2Vcbi5iYWRnZS1mbG9hdCB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHJpZ2h0OiAkYmFkZ2UtZmxvYXQtbWFyZ2luO1xuICAgIHRvcDogJGJhZGdlLWZsb2F0LW1hcmdpbjtcbn1cblxuLy8gQmFkZ2UgbWFya1xuLmJhZGdlLW1hcmsge1xuICAgIHBhZGRpbmc6IDA7XG4gICAgYm9yZGVyOiAkYmFkZ2UtbWFyay1ib3JkZXItd2lkdGggc29saWQ7XG4gICAgQGluY2x1ZGUgc2l6ZSgkYmFkZ2UtbWFyay1zaXplKTtcbiAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRib3JkZXItcmFkaXVzLXJvdW5kKTtcblxuICAgIC8vIE92ZXJyaWRlIGRlZmF1bHQgYmVoYXZpb3VyIGlmIGl0J3MgZW1wdHlcbiAgICAmOmVtcHR5IHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIH1cbn1cbiIsIi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICpcbiAqICAjIEFsZXJ0IGNvbXBvbmVudFxuICpcbiAqICBPdmVycmlkZXMgZm9yIGFsZXJ0IGJvb3RzdHJhcCBjb21wb25lbnRcbiAqXG4gKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5cbi8vIERpc21pc3NpYmxlIGFsZXJ0c1xuLmFsZXJ0LWRpc21pc3NpYmxlIHtcblxuICAgIC8vIEFkanVzdCBjbG9zZSBsaW5rIGNvbG9yXG4gICAgLmNsb3NlIHtcbiAgICAgICAgQGluY2x1ZGUgaG92ZXItZm9jdXMge1xuICAgICAgICAgICAgY29sb3I6IGluaGVyaXQ7XG4gICAgICAgIH1cbiAgICB9XG59XG5cblxuLy9cbi8vIEFsdGVybmF0ZSBzdHlsZXNcbi8vXG5cbi8vIEN1c3RvbSBiYWNrZ3JvdW5kIGNvbG9yXG4uYWxlcnRbY2xhc3MqPWJnLV06bm90KC5iZy10cmFuc3BhcmVudCk6bm90KC5iZy13aGl0ZSk6bm90KC5iZy1saWdodCkge1xuICAgIC5hbGVydC1saW5rIHtcbiAgICAgICAgY29sb3I6IGluaGVyaXQ7XG4gICAgICAgIGJvcmRlci1ib3R0b20tY29sb3I6IHJnYmEoJHdoaXRlLCAwLjg1KTtcbiAgICB9XG59XG5cbi8vIFJvdW5kZWQgYWxlcnRcbi5hbGVydC1yb3VuZGVkIHtcbiAgICBwYWRkaW5nLWxlZnQ6ICgkYWxlcnQtcGFkZGluZy14ICogMS41KTtcbiAgICBwYWRkaW5nLXJpZ2h0OiAoJGFsZXJ0LXBhZGRpbmcteCAqIDEuNSk7XG4gICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkYm9yZGVyLXJhZGl1cy1yb3VuZCk7XG5cbiAgICAvLyBDbG9zZSBidXR0b25cbiAgICAmLmFsZXJ0LWRpc21pc3NpYmxlIHtcbiAgICAgICAgLmNsb3NlIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGJvcmRlci1yaWdodC1yYWRpdXMoJGJvcmRlci1yYWRpdXMtcm91bmQpO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4vLyBTdHlsZWQgYWxlcnRzXG4uYWxlcnQge1xuXG4gICAgLy8gSWNvbiB2YXJpYXRpb25zXG4gICAgJltjbGFzcyo9YWxlcnQtc3R5bGVkLV0ge1xuXG4gICAgICAgIC8vIEljb24gYmFzZVxuICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgIGNvbnRlbnQ6ICdcXGU5YTInO1xuICAgICAgICAgICAgZm9udC1mYW1pbHk6ICRpY29uLWZvbnQtZmFtaWx5O1xuICAgICAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICAgIHdpZHRoOiAoKCRhbGVydC1wYWRkaW5nLXkgKiAyKSArICRpY29uLWZvbnQtc2l6ZSk7XG4gICAgICAgICAgICBsZWZ0OiAtKCgkYWxlcnQtcGFkZGluZy15ICogMikgKyAkaWNvbi1mb250LXNpemUpO1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgdG9wOiA1MCU7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAtKCRpY29uLWZvbnQtc2l6ZSAvIDIpO1xuICAgICAgICAgICAgZm9udC1zaXplOiAkaWNvbi1mb250LXNpemU7XG4gICAgICAgICAgICBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LW5vcm1hbDtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgICAgICAgICAgQGluY2x1ZGUgbGwtZm9udC1zbW9vdGhpbmcoKTtcbiAgICAgICAgfVxuXG4gICAgICAgIC8vIERhbmdlciBpY29uXG4gICAgICAgICYuYWxlcnQtZGFuZ2VyOmFmdGVyLFxuICAgICAgICAmW2NsYXNzKj1iZy1kYW5nZXJdOmFmdGVyIHtcbiAgICAgICAgICAgIGNvbnRlbnQ6ICdcXGVkNjQnO1xuICAgICAgICB9XG5cbiAgICAgICAgLy8gU3VjY2VzcyBpY29uXG4gICAgICAgICYuYWxlcnQtc3VjY2VzczphZnRlcixcbiAgICAgICAgJltjbGFzcyo9Ymctc3VjY2Vzc106YWZ0ZXIge1xuICAgICAgICAgICAgY29udGVudDogJ1xcZWQ2ZSc7XG4gICAgICAgIH1cblxuICAgICAgICAvLyBXYXJuaW5nIGljb25cbiAgICAgICAgJi5hbGVydC13YXJuaW5nOmFmdGVyLFxuICAgICAgICAmW2NsYXNzKj1iZy13YXJuaW5nXTphZnRlciB7XG4gICAgICAgICAgICBjb250ZW50OiAnXFxlOWJkJztcbiAgICAgICAgfVxuXG4gICAgICAgIC8vIEluZm8gaWNvblxuICAgICAgICAmLmFsZXJ0LWluZm86YWZ0ZXIsXG4gICAgICAgICZbY2xhc3MqPWJnLWluZm9dOmFmdGVyIHtcbiAgICAgICAgICAgIGNvbnRlbnQ6ICdcXGU5YjknO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLy8gU3R5bGVkIGFsZXJ0IHdpdGggbGVmdCBpY29uXG4gICAgJi5hbGVydC1zdHlsZWQtbGVmdCB7XG4gICAgICAgIGJvcmRlci1sZWZ0LXdpZHRoOiAoKCRhbGVydC1wYWRkaW5nLXkgKiAyKSArICRpY29uLWZvbnQtc2l6ZSk7XG5cbiAgICAgICAgLy8gV2l0aCBjdXN0b20gYmdcbiAgICAgICAgJltjbGFzcyo9YmctXTpub3QoLmJnLXdoaXRlKTpub3QoLmJnLWxpZ2h0KSB7XG4gICAgICAgICAgICBib3JkZXItbGVmdC1jb2xvcjogcmdiYSgkYmxhY2ssIDAuMTUpIWltcG9ydGFudDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8vIFN0eWxlZCBhbGVydCB3aXRoIHJpZ2h0IGljb25cbiAgICAmLmFsZXJ0LXN0eWxlZC1yaWdodCB7XG4gICAgICAgIGJvcmRlci1yaWdodC13aWR0aDogKCgkYWxlcnQtcGFkZGluZy15ICogMikgKyAkaWNvbi1mb250LXNpemUpO1xuXG4gICAgICAgIC8vIENoYW5nZSBpY29uIHBvc2l0aW9uXG4gICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgbGVmdDogYXV0bztcbiAgICAgICAgICAgIHJpZ2h0OiAtKCgkYWxlcnQtcGFkZGluZy15ICogMikgKyAkaWNvbi1mb250LXNpemUpO1xuICAgICAgICB9XG5cbiAgICAgICAgLy8gV2l0aCBjdXN0b20gYmdcbiAgICAgICAgJltjbGFzcyo9YmctXTpub3QoLmJnLXdoaXRlKTpub3QoLmJnLWxpZ2h0KSB7XG4gICAgICAgICAgICBib3JkZXItcmlnaHQtY29sb3I6IHJnYmEoJGJsYWNrLCAwLjE1KSFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBXaXRoIGN1c3RvbSBpY29uXG4gICAgJi5hbGVydC1zdHlsZWQtY3VzdG9tIHtcbiAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICBjb250ZW50OiBcIlxcZTgxYlwiOyAvLyBDaGFuZ2UgaWNvbiBjb2RlIGZvciBjdXN0b20gYWxlcnRcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLy8gQWxlcnQgYXJyb3dcbi5hbGVydCB7XG5cbiAgICAvLyBMZWZ0IGFycm93XG4gICAgJjpub3QoLnVpLXBub3RpZnkpW2NsYXNzKj1hbGVydC1hcnJvdy1dOmJlZm9yZSxcbiAgICAmLnVpLXBub3RpZnlbY2xhc3MqPWFsZXJ0LWFycm93LV0gPiAuYnJpZ2h0dGhlbWU6YmVmb3JlIHtcbiAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogNTAlO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICBib3JkZXItbGVmdDogJGFsZXJ0LWFycm93LXNpemUgc29saWQ7XG4gICAgICAgIGJvcmRlci10b3A6ICRhbGVydC1hcnJvdy1zaXplIHNvbGlkIHRyYW5zcGFyZW50O1xuICAgICAgICBib3JkZXItYm90dG9tOiAkYWxlcnQtYXJyb3ctc2l6ZSBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICAgICAgYm9yZGVyLWxlZnQtY29sb3I6IGluaGVyaXQ7XG4gICAgICAgIG1hcmdpbi10b3A6IC0kYWxlcnQtYXJyb3ctc2l6ZTtcbiAgICB9XG5cbiAgICAvLyBSaWdodCBhcnJvd1xuICAgICY6bm90KC51aS1wbm90aWZ5KS5hbGVydC1hcnJvdy1yaWdodDpiZWZvcmUsXG4gICAgJi51aS1wbm90aWZ5LmFsZXJ0LWFycm93LXJpZ2h0ID4gLmJyaWdodHRoZW1lOmJlZm9yZSB7XG4gICAgICAgIGxlZnQ6IGF1dG87XG4gICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICBib3JkZXItbGVmdDogMDtcbiAgICAgICAgYm9yZGVyLXJpZ2h0OiAkYWxlcnQtYXJyb3ctc2l6ZSBzb2xpZDtcbiAgICAgICAgYm9yZGVyLXJpZ2h0LWNvbG9yOiBpbmhlcml0O1xuICAgIH1cbn1cbiIsIi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICpcbiAqICAjIFByb2dyZXNzIGJhciBjb21wb25lbnRcbiAqXG4gKiAgT3ZlcnJpZGVzIGZvciBwcm9ncmVzcyBiYXIgY29tcG9uZW50XG4gKlxuICogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuXG5cbi8vXG4vLyBCYXNlIHN0eWxlc1xuLy9cblxuLy8gQ29udGFpbmVyXG4ucHJvZ3Jlc3Mge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLy8gQmFyXG4ucHJvZ3Jlc3MtYmFyIHtcbiAgICB3aWR0aDogMDtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG59XG5cblxuLy9cbi8vIEVuaGFuY2VkIGJhcnNcbi8vXG5cbi5wcm9ncmVzcyB7XG5cbiAgICAvLyBQcm9ncmVzcyBiYXIgYmFjayB0ZXh0XG4gICAgLnByb2dyZXNzYmFyLWJhY2stdGV4dCxcbiAgICAucHJvZ3Jlc3NiYXItZnJvbnQtdGV4dCB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICBmb250LXNpemU6ICRwcm9ncmVzcy1mb250LXNpemU7XG4gICAgfVxuXG4gICAgLy8gQ2VudGVyIHRoZSB0ZXh0XG4gICAgLnByb2dyZXNzYmFyLWJhY2stdGV4dCB7XG4gICAgICAgIGFsaWduLXNlbGY6IGNlbnRlcjtcbiAgICB9XG5cbiAgICAvLyBSaWdodCBhbGlnbm1lbnRcbiAgICAmLnJpZ2h0IHtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcbiAgICB9XG5cblxuICAgIC8vIFZlcnRpY2FsIG9yaWVudGF0aW9uXG4gICAgJi52ZXJ0aWNhbCB7XG4gICAgICAgIHdpZHRoOiAzcmVtO1xuICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcblxuICAgICAgICAvLyBBZGQgaG9yaXpvbnRhbCBzcGFjaW5nXG4gICAgICAgICYgKyAmIHtcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAkZWxlbWVudC1zcGFjZXIteDtcbiAgICAgICAgfVxuXG4gICAgICAgIC8vIFByb2dyZXNzIGJhciBhZGp1c3RtZW50XG4gICAgICAgIC5wcm9ncmVzcy1iYXIge1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBoZWlnaHQ6IDA7XG4gICAgICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKGhlaWdodCAwLjZzIGVhc2UpO1xuICAgICAgICB9XG5cbiAgICAgICAgLy8gQm90dG9tIGRpcmVjdGlvblxuICAgICAgICAmLmJvdHRvbSB7XG5cbiAgICAgICAgICAgIC8vIFByb2dyZXNzIGJhciBiYWNrIHRleHRcbiAgICAgICAgICAgIC5wcm9ncmVzc2Jhci1iYWNrLXRleHQsXG4gICAgICAgICAgICAucHJvZ3Jlc3NiYXItZnJvbnQtdGV4dCB7XG4gICAgICAgICAgICAgICAgdG9wOiBhdXRvO1xuICAgICAgICAgICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLy8gQmFyIGl0c2VsZlxuICAgICAgICAgICAgLnByb2dyZXNzLWJhciB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cbiIsIi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICpcbiAqICAjIE1lZGlhIG9iamVjdCBjb21wb25lbnRcbiAqXG4gKiAgT3ZlcnJpZGVzIGZvciBtZWRpYSBvYmplY3QgY29tcG9uZW50XG4gKlxuICogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuXG5cbi8vIEJhc2UgY2xhc3Ncbi5tZWRpYSB7XG5cdG1hcmdpbi10b3A6ICRzcGFjZXI7XG5cblx0Ly8gUmVtb3ZlIHZlcnRpY2FsIHNwYWNpbmcgaW4gY2VydGFpbiBjYXNlc1xuXHQmLmNhcmQtYm9keSxcblx0JjpmaXJzdC1jaGlsZCB7XG5cdFx0bWFyZ2luLXRvcDogMDtcblx0fVxufVxuXG4vLyBNZWRpYSBsaXN0XG4ubWVkaWEtbGlzdCB7XG5cdGxpc3Qtc3R5bGU6IG5vbmU7XG5cdHBhZGRpbmctbGVmdDogMDtcblx0bWFyZ2luLWJvdHRvbTogMDtcbn1cblxuLy8gTWVkaWEgdGl0bGUgaW5zaWRlIC5tZWRpYS1ib2R5XG4ubWVkaWEtdGl0bGUge1xuXHRtYXJnaW4tYm90dG9tOiAkbWVkaWEtdGl0bGUtbWFyZ2luLWJvdHRvbTtcbn1cblxuLy8gSW1hZ2UgcHJldmlld1xuLmltZy1wcmV2aWV3IHtcbiAgICBtYXgtaGVpZ2h0OiAkaW1nLXByZXZpZXctbWF4LWhlaWdodDtcbn1cblxuXG4vL1xuLy8gU3R5bGluZyB2YXJpYXRpb25zXG4vL1xuXG4vLyBCb3JkZXJlZCBsaXN0XG4ubWVkaWEtbGlzdC1ib3JkZXJlZCB7XG5cdC5tZWRpYSB7XG5cdFx0bWFyZ2luLXRvcDogMDtcblx0XHRwYWRkaW5nOiAkbWVkaWEtcGFkZGluZy15ICRtZWRpYS1wYWRkaW5nLXg7XG5cdFx0Ym9yZGVyLXRvcDogJG1lZGlhLWJvcmRlci13aWR0aCBzb2xpZCAkbWVkaWEtYm9yZGVyLWNvbG9yO1xuXHR9XG59XG5cbi8vIExpbmtlZCBsaXN0XG4ubWVkaWEtbGlzdC1saW5rZWQge1xuXG5cdC8vIEl0ZW0gY29udGFpbmVyXG5cdC5tZWRpYSB7XG4gICAgICAgIHBhZGRpbmc6ICRtZWRpYS1wYWRkaW5nLXkgJG1lZGlhLXBhZGRpbmcteDtcblx0fVxuXG5cdC8vIEluc2lkZSBtZWRpYSBsaXN0XG5cdGxpLm1lZGlhIHtcblx0XHRtYXJnaW4tdG9wOiAwO1xuXHRcdGJvcmRlci10b3A6ICRtZWRpYS1ib3JkZXItd2lkdGggc29saWQgJG1lZGlhLWJvcmRlci1jb2xvcjtcblx0XHRib3JkZXItYm90dG9tOiAkbWVkaWEtYm9yZGVyLXdpZHRoIHNvbGlkICRtZWRpYS1ib3JkZXItY29sb3I7XG5cdH1cblxuXHQvLyBJbnNpZGUgYm9yZGVyZWRtZWRpYSBsaXN0XG5cdCYubWVkaWEtbGlzdC1ib3JkZXJlZCBsaS5tZWRpYSB7XG5cdFx0Ym9yZGVyLWJvdHRvbTogMDtcblx0fVxuXG5cdC8vIExpbmtcbiAgICBhLm1lZGlhIHtcbiAgICAgICAgY29sb3I6IGluaGVyaXQ7XG4gICAgXHRAaW5jbHVkZSB0cmFuc2l0aW9uKGFsbCBlYXNlLWluLW91dCAkY29tcG9uZW50LXRyYW5zaXRpb24tdGltZXIpO1xuXG4gICAgXHQvLyBIb3ZlciBzdGF0ZVxuICAgICAgICBAaW5jbHVkZSBob3ZlciB7XG4gICAgICAgIFx0YmFja2dyb3VuZC1jb2xvcjogJG1lZGlhLWxpbmstaG92ZXItYmc7XG4gICAgICAgIH1cbiAgICB9XG59XG4iLCIvKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAqXG4gKiAgIyBMaXN0IGdyb3VwIGNvbXBvbmVudFxuICpcbiAqICBPdmVycmlkZXMgZm9yIGxpc3QgZ3JvdXAgY29tcG9uZW50XG4gKlxuICogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuXG5cbi8vIEJhc2UgY2xhc3Ncbi5saXN0LWdyb3VwIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY2FyZC1iZztcbiAgICBib3JkZXI6ICRsaXN0LWdyb3VwLWJvcmRlci13aWR0aCBzb2xpZCAkbGlzdC1ncm91cC1ib3JkZXItY29sb3I7XG4gICAgcGFkZGluZzogJGxpc3QtZ3JvdXAtcGFkZGluZy15IDA7XG4gICAgYmFja2dyb3VuZC1jbGlwOiBwYWRkaW5nLWJveDtcbiAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRsaXN0LWdyb3VwLWJvcmRlci1yYWRpdXMpO1xufVxuXG4vLyBJbmRpdmlkdWFsIGxpc3QgaXRlbXNcbi5saXN0LWdyb3VwLWl0ZW0ge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIGJvcmRlci13aWR0aDogMDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKGFsbCBlYXNlLWluLW91dCAkY29tcG9uZW50LXRyYW5zaXRpb24tdGltZXIpO1xuXG4gICAgLy8gVG9wIGJvcmRlclxuICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgICBAaW5jbHVkZSBib3JkZXItdG9wLXJhZGl1cygwKTtcbiAgICB9XG5cbiAgICAvLyBCb3R0b20gYm9yZGVyXG4gICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgQGluY2x1ZGUgYm9yZGVyLWJvdHRvbS1yYWRpdXMoMCk7XG4gICAgfVxuXG4gICAgLy8gQWN0aXZlIHN0YXRlXG4gICAgJi5hY3RpdmUge1xuXG4gICAgICAgIC8vIENhbGN1bGF0ZSBjb2xvciBzaGFkZXMgZm9yIGJhZGdlc1xuICAgICAgICAvLyBkZXBlbmRpbmcgb24gYWN0aXZlIGl0ZW0gY29sb3JcbiAgICAgICAgQGlmIChsaWdodG5lc3MoJGxpc3QtZ3JvdXAtYWN0aXZlLWJnKSA8IDc1KSB7XG5cbiAgICAgICAgICAgIC8vIEFsbCBiYWRnZXMgZXhjZXB0IGJhZGdlIG1hcmtcbiAgICAgICAgICAgIC5iYWRnZTpub3QoLmJhZGdlLW1hcmspIHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGUhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkYm9keS1jb2xvciFpbXBvcnRhbnQ7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC8vIEJhZGdlIG1hcmsgd2l0aCBjdXN0b20gYmdcbiAgICAgICAgICAgIC5iYWRnZS1tYXJrW2NsYXNzKj1iZy1dIHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGUhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgIGJvcmRlci1jb2xvcjogJHdoaXRlIWltcG9ydGFudDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLy8gQmFkZ2UgbWFyayB3aXRoIGN1c3RvbSBib3JkZXJcbiAgICAgICAgICAgIC5iYWRnZS1tYXJrW2NsYXNzKj1ib3JkZXItXSB7XG4gICAgICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiAkd2hpdGUhaW1wb3J0YW50O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLy8gRGlzYWJsZWQgc3RhdGVcbiAgICAmLmRpc2FibGVkLFxuICAgICY6ZGlzYWJsZWQge1xuICAgICAgICBjdXJzb3I6ICRjdXJzb3ItZGlzYWJsZWQ7XG4gICAgfVxufVxuXG4vLyBGbHVzaCBsaXN0IGl0ZW1zXG4ubGlzdC1ncm91cC1mbHVzaCB7XG4gICAgYm9yZGVyOiAwO1xuICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoMCk7XG4gICAgQGluY2x1ZGUgYm94LXNoYWRvdyhub25lKTtcbn1cblxuLy8gTGlzdCBncm91cCBkaXZpZGVyXG4ubGlzdC1ncm91cC1kaXZpZGVyIHtcbiAgICBwYWRkaW5nOiAwO1xuICAgIG1hcmdpbjogJGxpc3QtZ3JvdXAtcGFkZGluZy15IDA7XG4gICAgYm9yZGVyLXRvcC13aWR0aDogJGxpc3QtZ3JvdXAtYm9yZGVyLXdpZHRoO1xufVxuXG4vLyBCb3JkZXJlZCBsaXN0XG4ubGlzdC1ncm91cC1ib3JkZXJlZCB7XG4gICAgcGFkZGluZzogMDtcblxuICAgIC8vIEl0ZW1cbiAgICAubGlzdC1ncm91cC1pdGVtIHtcbiAgICAgICAgYm9yZGVyLXRvcC13aWR0aDogJGxpc3QtZ3JvdXAtYm9yZGVyLXdpZHRoO1xuICAgICAgICBib3JkZXItYm90dG9tLXdpZHRoOiAkbGlzdC1ncm91cC1ib3JkZXItd2lkdGg7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IC0kbGlzdC1ncm91cC1ib3JkZXItd2lkdGg7XG5cbiAgICAgICAgLy8gUm91bmQgdG9wIGNvcm5lcnNcbiAgICAgICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAgICAgICBib3JkZXItdG9wLXdpZHRoOiAwO1xuICAgICAgICAgICAgQGluY2x1ZGUgYm9yZGVyLXRvcC1yYWRpdXMoJGxpc3QtZ3JvdXAtYm9yZGVyLXJhZGl1cyk7XG4gICAgICAgIH1cblxuICAgICAgICAvLyBSb3VuZCBib3R0b20gY29ybmVyc1xuICAgICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICAgICAgQGluY2x1ZGUgYm9yZGVyLWJvdHRvbS1yYWRpdXMoJGxpc3QtZ3JvdXAtYm9yZGVyLXJhZGl1cyk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBDdXN0b20gYmcgY29sb3JcbiAgICAmW2NsYXNzKj1iZy1dOm5vdCguYmctbGlnaHQpOm5vdCguYmctd2hpdGUpOm5vdCguYmctdHJhbnNwYXJlbnQpIHtcbiAgICAgICAgLmxpc3QtZ3JvdXAtaXRlbSB7XG4gICAgICAgICAgICBib3JkZXItdG9wLWNvbG9yOiAkbmF2aWdhdGlvbi1kYXJrLWJvcmRlcmVkLWJvcmRlci1jb2xvcjtcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b20tY29sb3I6ICRuYXZpZ2F0aW9uLWRhcmstYm9yZGVyZWQtYm9yZGVyLWNvbG9yO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4vLyBEYXJrIGJhZGtncm91bmRzXG4ubGlzdC1ncm91cFtjbGFzcyo9YmctXTpub3QoLmJnLWxpZ2h0KTpub3QoLmJnLXRyYW5zcGFyZW50KTpub3QoLmJnLXdoaXRlKSB7XG4gICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkbGlzdC1ncm91cC1ib3JkZXItcmFkaXVzKTtcblxuICAgIC8vIExpbmtzXG4gICAgLmxpc3QtZ3JvdXAtaXRlbS1hY3Rpb24ge1xuICAgICAgICAmOm5vdCguYWN0aXZlKTpub3QoLmRpc2FibGVkKSB7XG4gICAgICAgICAgICBjb2xvcjogcmdiYSgkd2hpdGUsIDAuOSk7XG5cbiAgICAgICAgICAgIC8vIEhvdmVyIHN0YXRlXG4gICAgICAgICAgICBAaW5jbHVkZSBob3Zlci1mb2N1cyB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGRyb3Bkb3duLWRhcmstaG92ZXItYmc7XG4gICAgICAgICAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8vIEl0ZW1cbiAgICAubGlzdC1ncm91cC1pdGVtIHtcbiAgICAgICAgY29sb3I6ICR3aGl0ZTtcblxuICAgICAgICAvLyBBY3RpdmUgc3RhdGVcbiAgICAgICAgJi5hY3RpdmUge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGRyb3Bkb3duLWRhcmstYWN0aXZlLWJnO1xuICAgICAgICB9XG5cbiAgICAgICAgLy8gRGlzYWJsZWQgc3RhdGVcbiAgICAgICAgJi5kaXNhYmxlZCxcbiAgICAgICAgJjpkaXNhYmxlZCB7XG4gICAgICAgICAgICBjb2xvcjogJGRyb3Bkb3duLWRhcmstZGlzYWJsZWQtY29sb3I7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8vIERpdmlkZXJcbiAgICAubGlzdC1ncm91cC1kaXZpZGVyIHtcbiAgICAgICAgYm9yZGVyLXRvcC1jb2xvcjogJGRyb3Bkb3duLWRhcmstZGl2aWRlci1iZztcbiAgICB9XG59XG5cbi8vIENvbnRleHR1YWwgdmFyaWFudHNcbkBlYWNoICRjb2xvciwgJHZhbHVlIGluICR0aGVtZS1jb2xvcnMtbGlnaHQge1xuICAgIEBpbmNsdWRlIGxpc3QtZ3JvdXAtaXRlbS12YXJpYW50KCRjb2xvciwgJHZhbHVlLCB0aGVtZS1jb2xvci1sZXZlbCgkY29sb3IsIDYpKTtcbn1cbiIsIi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICpcbiAqICAjIENsb3NlIGJ1dHRvblxuICpcbiAqICBPdmVycmlkZXMgb2YgZGVmYXVsdCBjbG9zZSBidXR0b24gc3R5bGVzXG4gKlxuICogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuXG4vLyBCYXNlXG4uY2xvc2Uge1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBvcGFjaXR5OiAuNzU7XG4gICAgQGluY2x1ZGUgdHJhbnNpdGlvbihjb2xvciBlYXNlLWluLW91dCAkY29tcG9uZW50LXRyYW5zaXRpb24tdGltZXIsIG9wYWNpdHkgZWFzZS1pbi1vdXQgJGNvbXBvbmVudC10cmFuc2l0aW9uLXRpbWVyKTtcblxuICAgIC8vIEhvdmVyIGFuZCBmb2N1cyBzdGF0ZXNcbiAgICBAaW5jbHVkZSBob3Zlci1mb2N1cyB7XG4gICAgICAgIG91dGxpbmU6IDA7XG4gICAgICAgIG9wYWNpdHk6IDE7XG4gICAgfVxufVxuIiwiLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gKlxuICogICMgTW9kYWwgY29tcG9uZW50XG4gKlxuICogIE92ZXJyaWRlcyBmb3IgbW9kYWwgZGlhbG9nIGNvbXBvbmVudFxuICpcbiAqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cblxuLy8gTW9kYWwgaGVhZGVyXG4ubW9kYWwtaGVhZGVyIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgQGluY2x1ZGUgYm9yZGVyLXRvcC1yYWRpdXMoJGJvcmRlci1yYWRpdXMtbGcgLSByZW0tY2FsYygkbW9kYWwtaGVhZGVyLWJvcmRlci13aWR0aCkpO1xuXG4gICAgLy8gQ2xvc2UgYnV0dG9uXG4gICAgLmNsb3NlIHtcbiAgICAgICAgY29sb3I6IGluaGVyaXQ7XG4gICAgfVxuXG4gICAgLy8gSWYgaGVhZGVyIGhhcyAnLmJnLSonIGNsYXNzLFxuICAgIC8vIHJlbW92ZSBib3R0b20gcGFkZGluZyBhbmQgYm9yZGVyXG4gICAgJjpub3QoW2NsYXNzKj1iZy1dKSB7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAwO1xuICAgICAgICBib3JkZXItYm90dG9tLXdpZHRoOiAwO1xuICAgIH1cbn1cblxuLy8gRm9vdGVyIChmb3IgYWN0aW9ucylcbi5tb2RhbC1mb290ZXIge1xuXG4gICAgLy8gSWYgZm9vdGVyIGhhcyAnLmJnLSonIGNsYXNzLFxuICAgIC8vIHJlbW92ZSB0b3AgcGFkZGluZyBhbmQgYm9yZGVyXG4gICAgJjpub3QoW2NsYXNzKj1iZy1dKSB7XG4gICAgICAgIHBhZGRpbmctdG9wOiAwO1xuICAgICAgICBib3JkZXItdG9wLXdpZHRoOiAwO1xuICAgIH1cblxuICAgIC8vIEFkZCB0b3AgYm9yZGVyIGlmIGZvb3RlciBjb21lcyBhZnRlciB0YWJsZVxuICAgIFtjbGFzcyo9dGFibGUtcmVzcG9uc2l2ZV0gKyAmLFxuICAgIC50YWJsZSArICYge1xuICAgICAgICBib3JkZXItdG9wLXdpZHRoOiAkbW9kYWwtZm9vdGVyLWJvcmRlci13aWR0aDtcbiAgICAgICAgYm9yZGVyLXRvcC1jb2xvcjogJHRhYmxlLWJvcmRlci1jb2xvcjtcbiAgICB9XG59XG5cbi8vIFNjYWxlIHVwIHRoZSBtb2RhbFxuQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChzbSkge1xuXG4gICAgLy8gTWluaSBzaXplXG4gICAgLm1vZGFsLXhzIHtcbiAgICAgICAgbWF4LXdpZHRoOiAkbW9kYWwteHMtd2lkdGg7XG4gICAgfVxuXG4gICAgLy8gRnVsbCB3aWR0aCBzaXplXG4gICAgLm1vZGFsLWZ1bGwge1xuICAgICAgICBtYXgtd2lkdGg6ICRtb2RhbC1mdWxsLXdpZHRoO1xuICAgICAgICBtYXJnaW4tbGVmdDogKCgxMDAlIC0gJG1vZGFsLWZ1bGwtd2lkdGgpIC8gMik7XG4gICAgICAgIG1hcmdpbi1yaWdodDogKCgxMDAlIC0gJG1vZGFsLWZ1bGwtd2lkdGgpIC8gMik7XG4gICAgfVxufVxuIiwiLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gKlxuICogICMgVG9vbHRpcCBjb21wb25lbnRcbiAqXG4gKiAgT3ZlcnJpZGUgYW5kIGV4dGVuZCBkZWZhdWx0IHRvb2x0aXAgc3R5bGVzLlxuICpcbiAqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cblxuXG4vLyBcbi8vIEN1c3RvbSBzdHlsZXNcbi8vXG5cbi8vIFRvcCBwbGFjZW1lbnRcbi5icy10b29sdGlwLXRvcCB7XG4gICAgLmFycm93W2NsYXNzKj1ib3JkZXItXTpiZWZvcmUge1xuICAgICAgICBib3JkZXItdG9wLWNvbG9yOiBpbmhlcml0O1xuICAgIH1cbn1cblxuLy8gUmlnaHQgcGxhY2VtZW50XG4uYnMtdG9vbHRpcC1yaWdodCB7XG4gICAgLmFycm93W2NsYXNzKj1ib3JkZXItXTpiZWZvcmUge1xuICAgICAgICBib3JkZXItcmlnaHQtY29sb3I6IGluaGVyaXQ7XG4gICAgfVxufVxuXG4vLyBCb3R0b20gcGxhY2VtZW50XG4uYnMtdG9vbHRpcC1ib3R0b20ge1xuICAgIC5hcnJvd1tjbGFzcyo9Ym9yZGVyLV06YmVmb3JlIHtcbiAgICAgICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogaW5oZXJpdDtcbiAgICB9XG59XG5cbi8vIExlZnQgcGxhY2VtZW50XG4uYnMtdG9vbHRpcC1sZWZ0IHtcbiAgICAuYXJyb3dbY2xhc3MqPWJvcmRlci1dOmJlZm9yZSB7XG4gICAgICAgIGJvcmRlci1sZWZ0LWNvbG9yOiBpbmhlcml0O1xuICAgIH1cbn1cbiIsIi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICpcbiAqICAjIFBvcG92ZXIgY29tcG9uZW50XG4gKlxuICogIE92ZXJyaWRlcyBmb3IgcG9wb3ZlciBjb21wb25lbnRcbiAqXG4gKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5cbi8vIFBvcG92ZXIgaGVhZGVyXG4ucG9wb3Zlci1oZWFkZXIge1xuICAgIGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtc2VtaWJvbGQ7XG4gICAgcGFkZGluZy1ib3R0b206IDA7XG4gICAgYm9yZGVyLWJvdHRvbS13aWR0aDogMDtcblxuICAgIC8vIEN1c3RvbSBiYWNrZ3JvdW5kXG4gICAgJltjbGFzcyo9YmctXTpub3QoLmJnLXdoaXRlKTpub3QoLmJnLWxpZ2h0KSB7XG4gICAgICAgIHBhZGRpbmctdG9wOiAoJHBvcG92ZXItaGVhZGVyLXBhZGRpbmcteSAvIDEuMjUpO1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogKCRwb3BvdmVyLWhlYWRlci1wYWRkaW5nLXkgLyAxLjI1KTtcbiAgICAgICAgYm9yZGVyLWJvdHRvbS13aWR0aDogJHBvcG92ZXItYm9yZGVyLXdpZHRoO1xuICAgIH1cbn1cblxuXG4vL1xuLy8gT3B0aW9uYWwgc3R5bGVzXG4vL1xuXG4vLyBUb3AgcGxhY2VtZW50XG4uYnMtcG9wb3Zlci10b3Age1xuXG4gICAgLy8gQ3VzdG9tIGNvbG9yc1xuICAgICZbY2xhc3MqPWJnLV06bm90KC5iZy13aGl0ZSk6bm90KC5iZy1saWdodCksXG4gICAgJltjbGFzcyo9Ym9yZGVyLV0ge1xuICAgICAgICAuYXJyb3cge1xuICAgICAgICAgICAgJixcbiAgICAgICAgICAgICY6YWZ0ZXIsXG4gICAgICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgYm9yZGVyLXRvcC1jb2xvcjogaW5oZXJpdDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuLy8gUmlnaHQgcGxhY2VtZW50XG4uYnMtcG9wb3Zlci1yaWdodCB7XG5cbiAgICAvLyBDdXN0b20gY29sb3JzXG4gICAgJltjbGFzcyo9YmctXTpub3QoLmJnLXdoaXRlKTpub3QoLmJnLWxpZ2h0KSxcbiAgICAmW2NsYXNzKj1ib3JkZXItXSB7XG4gICAgICAgIC5hcnJvdyB7XG4gICAgICAgICAgICAmLFxuICAgICAgICAgICAgJjphZnRlcixcbiAgICAgICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICBib3JkZXItcmlnaHQtY29sb3I6IGluaGVyaXQ7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi8vIEJvdHRvbSBwbGFjZW1lbnRcbi5icy1wb3BvdmVyLWJvdHRvbSB7XG5cbiAgICAvLyBDdXN0b20gY29sb3JzXG4gICAgJltjbGFzcyo9YmctXTpub3QoLmJnLXdoaXRlKTpub3QoLmJnLWxpZ2h0KSxcbiAgICAmW2NsYXNzKj1ib3JkZXItXSB7XG4gICAgICAgIC5hcnJvdyB7XG4gICAgICAgICAgICAmLFxuICAgICAgICAgICAgJjphZnRlcixcbiAgICAgICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICBib3JkZXItYm90dG9tLWNvbG9yOiBpbmhlcml0O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG4vLyBMZWZ0IHBsYWNlbWVudFxuLmJzLXBvcG92ZXItbGVmdCB7XG5cbiAgICAvLyBDdXN0b20gY29sb3JzXG4gICAgJltjbGFzcyo9YmctXTpub3QoLmJnLXdoaXRlKTpub3QoLmJnLWxpZ2h0KSxcbiAgICAmW2NsYXNzKj1ib3JkZXItXSB7XG4gICAgICAgIC5hcnJvdyB7XG4gICAgICAgICAgICAmLFxuICAgICAgICAgICAgJjphZnRlcixcbiAgICAgICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICBib3JkZXItbGVmdC1jb2xvcjogaW5oZXJpdDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cbiIsIi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICpcbiAqICAjIFV0aWxpdGllc1xuICpcbiAqICBJbXBvcnQgQm9vdHN0cmFwIHV0aWxpdGllcyB3aXRoIG92ZXJyaWRlc1xuICpcbiAqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cblxuQGltcG9ydCBcInV0aWxpdGllcy9iYWNrZ3JvdW5kXCI7XG4iLCIvKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAqXG4gKiAgIyBCYWNrZ3JvdW5kIHV0aWxpdHlcbiAqXG4gKiAgT3ZlcnJpZGUgYW5kIGV4dGVuZCBkZWZhdWx0IGJhY2tncm91bmQgdXRpbGl0eS5cbiAqXG4gKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5cbi8vIFRleHQgY29sb3IgaW4gZGFyayBjb250YWluZXJzXG5bY2xhc3MqPWJnLV06bm90KC5iZy10cmFuc3BhcmVudCk6bm90KC5iZy1saWdodCk6bm90KC5iZy13aGl0ZSk6bm90KC5idG4tb3V0bGluZSk6bm90KGJvZHkpIHtcbiAgICBjb2xvcjogJHdoaXRlO1xufVxuIiwiLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gKlxuICogICMgQ29yZSBsYXlvdXRcbiAqXG4gKiAgQ29udGVudCBhcmVhLCBzaWRlYmFyLCBwYWdlIGhlYWRlciBhbmQgYm94ZWQgbGF5b3V0IHN0eWxlc1xuICpcbiAqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cblxuLy8gSW1wb3J0IGN1c3RvbSB0ZW1wbGF0ZSBjb25maWdcbkBpbXBvcnQgXCIuLi8uLi8uLi8uLi9jb25maWdcIjtcbkBpbXBvcnQgXCIuLi8uLi8uLi8uLi9zaGFyZWQvdXRpbHMvbGwtZnVuY3Rpb25zXCI7XG5AaW1wb3J0IFwiLi4vLi4vLi4vLi4vc2hhcmVkL3V0aWxzL2xsLW1peGluc1wiO1xuQGltcG9ydCBcIi4uLy4uLy4uLy4uL3RoZW1lcy9kZWZhdWx0L2NvbG9ycy9wYWxldHRlXCI7XG5cbi8vIENvcmUgdmFyaWFibGVzIGFuZCBtaXhpbnNcbkBpbXBvcnQgXCJ+Ym9vdHN0cmFwL3Njc3MvZnVuY3Rpb25zXCI7XG5AaW1wb3J0IFwifmJvb3RzdHJhcC9zY3NzL3ZhcmlhYmxlc1wiO1xuQGltcG9ydCBcIn5ib290c3RyYXAvc2Nzcy9taXhpbnNcIjtcblxuLy8gSW1wb3J0IHRlbXBsYXRlJ3MgdmFyaWFibGVzXG5AaW1wb3J0IFwiLi4vdmFyaWFibGVzL3ZhcmlhYmxlcy1jb3JlXCI7XG5AaW1wb3J0IFwiLi4vdmFyaWFibGVzL3ZhcmlhYmxlcy1jdXN0b21cIjtcbkBpbXBvcnQgXCIuLi8uLi8uLi8uLi90aGVtZXMvZGVmYXVsdC9ib290c3RyYXBfbGltaXRsZXNzL21peGluc1wiO1xuXG4vLyBDb250ZW50XG5AaW1wb3J0IFwiLi4vbGF5b3V0L2NvbnRlbnRcIjtcblxuLy8gSGVhZGVyXG5AaW1wb3J0IFwiLi4vbGF5b3V0L2hlYWRlclwiO1xuXG4vLyBTaWRlYmFyXG5AaW1wb3J0IFwiLi4vbGF5b3V0L3NpZGViYXJcIjtcblxuLy8gQm94ZWQgbGF5b3V0XG5AaW1wb3J0IFwiLi4vbGF5b3V0L2JveGVkXCI7XG4iLCIvKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAqXG4gKiAgIyBNYWluIGNvbnRlbnQgbGF5b3V0XG4gKlxuICogIFN0eWxlcyBmb3IgbWFpbiBzdHJ1Y3R1cmUgb2YgY29udGVudCBhcmVhXG4gKlxuICogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuXG4vLyBNYWtlIHN1cmUgZG9jdW1lbnQgaGFzIDEwMCUgaGVpZ2h0XG5odG1sIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG59XG5cbi8vIERvY3VtZW50IGJvZHlcbmJvZHkge1xuICAgIG1pbi1oZWlnaHQ6IDEwMHZoO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBmbGV4OiAxO1xufVxuXG4vLyBNYWluIGNvbnRhaW5lclxuLnBhZ2UtY29udGVudCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWdyb3c6IDE7XG59XG5cbi8vIENvbnRlbnQgd3JhcHBlclxuLmNvbnRlbnQtd3JhcHBlciB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIGZsZXg6IDE7XG4gICAgb3ZlcmZsb3c6IGF1dG87XG59XG5cbi8vIE1haW4gY29udGVudCBjb250YWluZXJcbi5jb250ZW50IHtcbiAgICBwYWRkaW5nOiAkY29udGVudC1jb250YWluZXItcGFkZGluZy15ICRjb250ZW50LWNvbnRhaW5lci1wYWRkaW5nLXg7XG4gICAgZmxleC1ncm93OiAxO1xuICAgIEBpbmNsdWRlIGNsZWFyZml4O1xufVxuIiwiLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gKlxuICogICMgUGFnZSBoZWFkZXJcbiAqXG4gKiAgUGFnZSBoZWFkZXIgY29tcG9uZW50cyBhbmQgY29sb3Igb3B0aW9uc1xuICpcbiAqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cblxuLy8gUGFnZSB0aXRsZVxuLnBhZ2UtdGl0bGUge1xuICAgIHBhZGRpbmc6ICRwYWdlLWhlYWRlci1wYWRkaW5nLXkgMDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAvLyBTdWJ0aXRsZVxuICAgIHNtYWxsIHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICBtYXJnaW4tbGVmdDogJGVsZW1lbnQtc3BhY2VyLXg7XG5cbiAgICAgICAgLy8gRGl2aWRlclxuICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICBjb250ZW50OiAnLyc7XG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6ICgkZWxlbWVudC1zcGFjZXIteCArIDAuMjVyZW0pO1xuICAgICAgICB9XG5cbiAgICAgICAgLy8gT24gYSBuZXcgbGluZVxuICAgICAgICAmLmQtYmxvY2sge1xuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICAgICAgICBcbiAgICAgICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICBjb250ZW50OiBub25lO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLy8gQWRkIGxlZnQgc3BhY2luZyB0byBhbGlnbiB3aXRoIHRleHRcbiAgICBzbWFsbC5kLWJsb2NrLFxuICAgIC5icmVhZGNydW1iIHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6ICgkaWNvbi1mb250LXNpemUgKyAkZWxlbWVudC1zcGFjZXIteCArIDAuMjVyZW0pO1xuICAgIH1cblxuICAgIC8vIFJlbW92ZSBtYXJnaW4gZnJvbSBoZWFkaW5nc1xuICAgIGgxLCBoMiwgaDMsIGg0LCBoNSwgaDYge1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgfVxufVxuXG4vLyBQYWdlIGhlYWRlciBjb250ZW50XG4ucGFnZS1oZWFkZXItY29udGVudCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHBhZGRpbmc6IDAgJHBhZ2UtaGVhZGVyLXBhZGRpbmcteDtcblxuICAgIC8vIFdpdGggY3VzdG9tIGNvbG9yZWQgYm90dG9tIGJvcmRlclxuICAgICZbY2xhc3MqPWJvcmRlci1ib3R0b20tXSArIC5icmVhZGNydW1iLWxpbmUge1xuICAgICAgICBib3JkZXItdG9wOiAwO1xuICAgIH1cbn1cblxuXG4vL1xuLy8gUGFnZSBoZWFkZXIgY29sb3JzXG4vL1xuXG4vLyBMaWdodFxuLnBhZ2UtaGVhZGVyLWxpZ2h0IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcGFnZS1oZWFkZXItbGlnaHQtYmc7XG4gICAgYm9yZGVyLWJvdHRvbTogJHBhZ2UtaGVhZGVyLWJvcmRlci13aWR0aCBzb2xpZCAkcGFnZS1oZWFkZXItbGlnaHQtYm9yZGVyLWNvbG9yO1xuICAgIFxuICAgIC8vIENvdmVyIGltYWdlXG4gICAgJi5oYXMtY292ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoI3skaW1nLXBhdGh9L2JhY2tncm91bmRzL3NlYW1sZXNzLnBuZyk7IC8vIGZlZWwgZnJlZSB0byBjaGFuZ2VcbiAgICB9XG59XG5cbi8vIERhcmtcbi5wYWdlLWhlYWRlci1kYXJrIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcGFnZS1oZWFkZXItZGFyay1iZztcbiAgICBjb2xvcjogJHBhZ2UtaGVhZGVyLWRhcmstY29sb3I7XG4gICAgbWFyZ2luLWJvdHRvbTogJHNwYWNlcjtcblxuICAgIC8vIEJyZWFkY3J1bWJzXG4gICAgPiAuYnJlYWRjcnVtYixcbiAgICAucGFnZS1oZWFkZXItY29udGVudCAuYnJlYWRjcnVtYiB7XG5cbiAgICAgICAgLy8gTGlua3NcbiAgICAgICAgPiBsaSA+IGEsXG4gICAgICAgID4gbGkgKyBsaTpiZWZvcmUge1xuICAgICAgICAgICAgY29sb3I6IHJnYmEoJHBhZ2UtaGVhZGVyLWRhcmstY29sb3IsIDAuOSk7XG4gICAgICAgIH1cblxuICAgICAgICAvLyBIb3ZlcmVkIGxpbmtzXG4gICAgICAgID4gbGkgPiBhIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGhvdmVyLWZvY3VzIHtcbiAgICAgICAgICAgICAgICBjb2xvcjogJHBhZ2UtaGVhZGVyLWRhcmstY29sb3I7XG4gICAgICAgICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC8vIEFjdGl2ZSBpdGVtXG4gICAgICAgID4gLmFjdGl2ZSB7XG4gICAgICAgICAgICBjb2xvcjogcmdiYSgkcGFnZS1oZWFkZXItZGFyay1jb2xvciwgMC41KTtcbiAgICAgICAgfVxuICAgIH1cbiAgICBcbiAgICAvLyBDb3ZlciBpbWFnZVxuICAgICYuaGFzLWNvdmVyIHtcbiAgICAgICAgYmFja2dyb3VuZDogdXJsKCN7JGltZy1wYXRofS9sb2dpbl9jb3Zlci5qcGcpOyAvLyBmZWVsIGZyZWUgdG8gY2hhbmdlXG4gICAgICAgIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gICAgfVxufVxuIiwiLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gKlxuICogICMgU2lkZWJhciBsYXlvdXRzXG4gKlxuICogIFNpZGViYXIgY29tcG9uZW50cywgbWFpbiBuYXZpZ2F0aW9uIGFuZCBzaWRlYmFyIGl0c2VsZlxuICpcbiAqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cblxuXG4vLyBTaWRlYmFyIGJhc2Vcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4vLyBCYXNlXG4uc2lkZWJhciB7XG5cdGZsZXg6IDAgMCBhdXRvO1xuXHR3aWR0aDogJHNpZGViYXItYmFzZS13aWR0aDtcblx0ei1pbmRleDogJHNpZGViYXItemluZGV4O1xuXG5cdC8vIEV4Y2x1ZGUgY29udGVudCBzaWRlYmFyXG5cdCY6bm90KC5zaWRlYmFyLWNvbXBvbmVudCkge1xuXHRcdHBvc2l0aW9uOiBmaXhlZDtcblx0XHR0b3A6IDA7XG5cdFx0Ym90dG9tOiAwO1xuXHRcdGJveC1zaXppbmc6IGNvbnRlbnQtYm94O1xuXHRcdEBpbmNsdWRlIHRyYW5zaXRpb24oYWxsIGVhc2UtaW4tb3V0ICRjb21wb25lbnQtdHJhbnNpdGlvbi10aW1lcik7XG5cdH1cblxuXHQvLyBNYWluIGFuZCBzZWNvbmRhcnkgc2lkZWJhcnMgZGVmYXVsdCBwb3NpdGlvblxuXHQmLW1haW4sXG5cdCYtc2Vjb25kYXJ5IHtcblx0XHQmLFxuXHRcdC5zaWRlYmFyLWNvbnRlbnQge1xuXHRcdFx0bGVmdDogLSgkc2lkZWJhci1iYXNlLXdpZHRoICogMS4xKTtcblx0XHR9XG5cdH1cblxuXHQvLyBSaWdodCBzaWRlYmFyIGRlZmF1bHQgcG9zaXRpb25cblx0Ji1yaWdodCB7XG5cdFx0Jixcblx0XHQuc2lkZWJhci1jb250ZW50IHtcblx0XHRcdHJpZ2h0OiAtKCRzaWRlYmFyLWJhc2Utd2lkdGggKiAxLjEpO1xuXHRcdH1cblx0fVxuXG5cdC8vIEZ1bGxzY3JlZW4gbW9kZVxuXHQmLnNpZGViYXItZnVsbHNjcmVlbiB7XG5cdFx0d2lkdGg6IDEwMCU7XG5cdH1cbn1cblxuLy8gU2lkZWJhciBjb250ZW50XG4uc2lkZWJhcjpub3QoLnNpZGViYXItY29tcG9uZW50KSB7XG5cdC5zaWRlYmFyLWNvbnRlbnQge1xuXHRcdHBvc2l0aW9uOiBmaXhlZDtcblx0XHR0b3A6ICRuYXYtbGluay1oZWlnaHQgKyByZW0tY2FsYygkbmF2YmFyLWJvcmRlci13aWR0aCAqIDIpO1xuXHRcdGJvdHRvbTogMDtcblx0XHR3aWR0aDogaW5oZXJpdDtcblx0XHRvdmVyZmxvdy15OiBzY3JvbGw7XG4gXHRcdC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDtcblx0XHRAaW5jbHVkZSB0cmFuc2l0aW9uKGxlZnQgZWFzZS1pbi1vdXQgJGNvbXBvbmVudC10cmFuc2l0aW9uLXRpbWVyLCByaWdodCBlYXNlLWluLW91dCAkY29tcG9uZW50LXRyYW5zaXRpb24tdGltZXIpO1xuXG5cdFx0Ly8gSWYgZmlyc3QgbmF2YmFyIGlzIGxhcmdlLCBtYWtlIHN1cmUgdG9wIHNwYWNpbmcgaXMgY2FsY3VsYXRlZCBwcm9wZXJseVxuXHRcdC5uYXZiYXItbGc6Zmlyc3QtY2hpbGQgfiAucGFnZS1jb250ZW50ICYge1xuXHRcdFx0dG9wOiAkbmF2LWxpbmstaGVpZ2h0LWxnICsgcmVtLWNhbGMoJG5hdmJhci1ib3JkZXItd2lkdGggKiAyKTtcblx0XHR9XG5cblx0XHQvLyBJZiBmaXJzdCBuYXZiYXIgaXMgc21hbGwsIG1ha2Ugc3VyZSB0b3Agc3BhY2luZyBpcyBjYWxjdWxhdGVkIHByb3Blcmx5XG5cdFx0Lm5hdmJhci1zbTpmaXJzdC1jaGlsZCB+IC5wYWdlLWNvbnRlbnQgJiB7XG5cdFx0XHR0b3A6ICRuYXYtbGluay1oZWlnaHQtc20gKyByZW0tY2FsYygkbmF2YmFyLWJvcmRlci13aWR0aCAqIDIpO1xuXHRcdH1cblx0fVxufVxuXG5cblxuLy8gU2lkZWJhciB0b2dnbGVyc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi8vIFRvZ2dsZSBtYWluIHNpZGViYXIgb24gbW9iaWxlXG4uc2lkZWJhci1tb2JpbGUtbWFpbiB7XG5cdC5zaWRlYmFyLW1haW4ge1xuXHRcdGJveC1zaGFkb3c6ICRzaWRlYmFyLWxlZnQtbW9iaWxlLWJveC1zaGFkb3c7XG5cblx0XHQmLFxuXHRcdC5zaWRlYmFyLWNvbnRlbnQge1xuXHRcdFx0bGVmdDogMDtcblx0XHR9XG5cdH1cbn1cblxuLy8gVG9nZ2xlIHNlY29uZGFyeSBzaWRlYmFyIG9uIG1vYmlsZVxuLnNpZGViYXItbW9iaWxlLXNlY29uZGFyeSB7XG5cdC5zaWRlYmFyLXNlY29uZGFyeSB7XG5cdFx0Ym94LXNoYWRvdzogJHNpZGViYXItbGVmdC1tb2JpbGUtYm94LXNoYWRvdztcblxuXHRcdCYsXG5cdFx0LnNpZGViYXItY29udGVudCB7XG5cdFx0XHRsZWZ0OiAwO1xuXHRcdH1cblx0fVxufVxuXG4vLyBUb2dnbGUgcmlnaHQgc2lkZWJhciBvbiBtb2JpbGVcbi5zaWRlYmFyLW1vYmlsZS1yaWdodCB7XG5cdC5zaWRlYmFyLXJpZ2h0IHtcblx0XHRkaXNwbGF5OiBibG9jaztcblx0XHRib3gtc2hhZG93OiAkc2lkZWJhci1yaWdodC1tb2JpbGUtYm94LXNoYWRvdztcblxuXHRcdCYsXG5cdFx0LnNpZGViYXItY29udGVudCB7XG5cdFx0XHRyaWdodDogMDtcblx0XHR9XG5cdH1cbn1cblxuLy8gVG9nZ2xlIHNpZGViYXIgY29tcG9uZW50IG9uIG1vYmlsZVxuLnNpZGViYXItbW9iaWxlLWNvbXBvbmVudCB7XG5cdC5zaWRlYmFyLWNvbXBvbmVudCB7XG5cdFx0ZGlzcGxheTogYmxvY2s7XG5cdH1cbn1cblxuXG5cbi8vIFNpZGViYXIgbmF2aWdhdGlvblxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi8vIE1haW4gc2lkZWJhciBuYXZcbi5uYXYtc2lkZWJhciB7XG5cdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG5cblx0Ly8gQWRkIHZlcnRpY2FsIHNwYWNpbmcgdG8gdGhlIGZpcnN0IGFuZCBsYXN0IG5hdiBpdGVtc1xuXHQubmF2LWl0ZW06bm90KC5uYXYtaXRlbS1oZWFkZXIpIHtcblx0XHQmOmZpcnN0LWNoaWxkIHtcblx0XHRcdHBhZGRpbmctdG9wOiAkbmF2aWdhdGlvbi1wYWRkaW5nLXk7XG5cdFx0fVxuXHRcdCY6bGFzdC1jaGlsZCB7XG5cdFx0XHRwYWRkaW5nLWJvdHRvbTogJG5hdmlnYXRpb24tcGFkZGluZy15O1xuXHRcdH1cblx0fVxuXG5cdC8vIEFkZCBzcGFjaW5nIGJldHdlZW4gbmF2IGl0ZW1zIGZvciBiZXR0ZXIgdmlzdWFsIHNlcGFyYXRpb25cblx0Lm5hdi1pdGVtOm5vdCgubmF2LWl0ZW0tZGl2aWRlcikge1xuXHRcdG1hcmdpbi1ib3R0b206ICRuYXZpZ2F0aW9uLWl0ZW0tc3BhY2VyLXk7XG5cblx0XHQmOmxhc3QtY2hpbGQge1xuXHRcdFx0bWFyZ2luLWJvdHRvbTogMDtcblx0XHR9XG5cdH1cblxuXHQvLyBUZXh0IHN0eWxlIGluIHRvcCBsZXZlbCBsaW5rc1xuXHQ+IC5uYXYtaXRlbSA+IC5uYXYtbGluayB7XG5cdFx0Zm9udC13ZWlnaHQ6ICRuYXZpZ2F0aW9uLWl0ZW0tZm9udC13ZWlnaHQ7XG5cdH1cblxuXHQvLyBMaW5rc1xuXHQubmF2LWxpbmsge1xuXHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0XHRkaXNwbGF5OiBmbGV4O1xuXHRcdGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuXHRcdHBhZGRpbmc6ICRuYXZpZ2F0aW9uLWl0ZW0tcGFkZGluZy15ICRuYXZpZ2F0aW9uLWl0ZW0tcGFkZGluZy14O1xuXHRcdEBpbmNsdWRlIHRyYW5zaXRpb24oYmFja2dyb3VuZC1jb2xvciBlYXNlLWluLW91dCAkY29tcG9uZW50LXRyYW5zaXRpb24tdGltZXIsIGNvbG9yIGVhc2UtaW4tb3V0ICRjb21wb25lbnQtdHJhbnNpdGlvbi10aW1lcik7XG5cblx0XHQvLyBJY29uc1xuXHRcdGkge1xuXHRcdFx0bWFyZ2luLXJpZ2h0OiAkbmF2aWdhdGlvbi1pdGVtLXBhZGRpbmcteDtcblx0XHRcdG1hcmdpbi10b3A6ICgkbGluZS1oZWlnaHQtY29tcHV0ZWQgLSAkaWNvbi1mb250LXNpemUpIC8gMjtcblx0XHRcdG1hcmdpbi1ib3R0b206ICgkbGluZS1oZWlnaHQtY29tcHV0ZWQgLSAkaWNvbi1mb250LXNpemUpIC8gMjtcblx0XHRcdHRvcDogMDtcblx0XHR9XG5cblx0XHQvLyBCYWRnZXNcblx0XHQuYmFkZ2Uge1xuXHRcdFx0QGluY2x1ZGUgdHJhbnNpdGlvbihiYWNrZ3JvdW5kLWNvbG9yIGVhc2UtaW4tb3V0ICRjb21wb25lbnQtdHJhbnNpdGlvbi10aW1lciwgYm9yZGVyLWNvbG9yIGVhc2UtaW4tb3V0ICRjb21wb25lbnQtdHJhbnNpdGlvbi10aW1lcik7XG5cdFx0fVxuXG5cblx0XHQvLyBEaXNhYmxlZCBzdGF0ZVxuXHRcdCYuZGlzYWJsZWQge1xuXHRcdFx0QGluY2x1ZGUgcGxhaW4taG92ZXItZm9jdXMge1xuXHRcdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcblx0XHRcdFx0b3BhY2l0eTogJG5hdmlnYXRpb24taXRlbS1kaXNhYmxlZC1vcGFjaXR5O1xuXHRcdFx0fVxuXHRcdH1cblx0fVxuXG5cdC8vIE5hdiBpdGVtIGhlYWRlclxuXHQubmF2LWl0ZW0taGVhZGVyIHtcblx0XHRwYWRkaW5nOiAkbmF2aWdhdGlvbi1pdGVtLXBhZGRpbmcteSAkbmF2aWdhdGlvbi1pdGVtLXBhZGRpbmcteDtcblx0XHRtYXJnaW4tdG9wOiAkbmF2aWdhdGlvbi1wYWRkaW5nLXk7XG5cblx0XHQvLyBIaWRlIGljb25zIGJ5IGRlZmF1bHQgYW5kIHNob3cgdGhlbSBpbiBmb2xkZWQgbW9kZVxuXHRcdD4gaSB7XG5cdFx0XHRkaXNwbGF5OiBub25lO1xuXHRcdH1cblx0fVxuXG5cdC8vIERpdmlkZXJcblx0Lm5hdi1pdGVtLWRpdmlkZXIge1xuXHRcdG1hcmdpbjogJG5hdmlnYXRpb24tcGFkZGluZy15IDA7XG5cdFx0aGVpZ2h0OiAxcHg7XG5cdH1cbn1cblxuLy8gTmF2IGl0ZW1zIHdpdGggc3VibWVudVxuLm5hdi1pdGVtLXN1Ym1lbnUge1xuXHQ+IC5uYXYtbGluayB7XG5cdFx0cGFkZGluZy1yaWdodDogKCRuYXZpZ2F0aW9uLWl0ZW0tcGFkZGluZy14ICsgKCRpY29uLWZvbnQtc2l6ZSAqIDEuNSkpO1xuXG5cdFx0Ly8gRGlyZWN0aW9uIGFycm93XG5cdFx0JjphZnRlciB7XG5cdFx0XHRAaWYgJGRpcmVjdGlvbiA9PSAnTFRSJyB7XG5cdFx0XHRcdGNvbnRlbnQ6ICdcXGU5YzcnO1xuXHRcdFx0fVxuXHRcdFx0QGVsc2Uge1xuXHRcdFx0XHRjb250ZW50OiAnXFxlOWM0Jztcblx0XHRcdH1cblx0XHQgICAgZm9udC1mYW1pbHk6ICRpY29uLWZvbnQtZmFtaWx5O1xuXHRcdCAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cdFx0ICAgIGZvbnQtc2l6ZTogJGljb24tZm9udC1zaXplO1xuXHRcdCAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuXHRcdCAgICBsaW5lLWhlaWdodDogMTtcblx0XHQgICAgcG9zaXRpb246IGFic29sdXRlO1xuXHRcdFx0dG9wOiAkbmF2aWdhdGlvbi1pdGVtLXBhZGRpbmcteTtcblx0XHRcdG1hcmdpbi10b3A6ICgkbGluZS1oZWlnaHQtY29tcHV0ZWQgLSAkaWNvbi1mb250LXNpemUpIC8gMjtcblx0XHQgICAgcmlnaHQ6ICRuYXZpZ2F0aW9uLWl0ZW0tcGFkZGluZy14O1xuXHRcdCAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKHRyYW5zZm9ybSAwLjI1cyBlYXNlLWluLW91dCk7XG5cdFx0ICAgIEBpbmNsdWRlIGxsLWZvbnQtc21vb3RoaW5nKCk7XG5cdFx0fVxuXHR9XG5cblx0Ly8gV2hlbiBzdWJtZW51IGlzIG9wZW5lZCwgcm90YXRlIGFycm93XG5cdCYubmF2LWl0ZW0tb3BlbiA+IC5uYXYtbGluayB7XG5cdFx0JjphZnRlciB7XG5cdFx0XHR0cmFuc2Zvcm06IHJvdGF0ZSg5MGRlZyk7XG5cdFx0fVxuXHR9XG59XG5cbi8vIFNpZGViYXIgbmF2IHN1Ym1lbnVzXG4ubmF2LWdyb3VwLXN1YiB7XG5cdGRpc3BsYXk6IG5vbmU7XG5cblx0Ly8gTGlua3Ncblx0Lm5hdi1saW5rIHtcblx0XHRwYWRkaW5nOiAkbmF2aWdhdGlvbi1zdWItcGFkZGluZy15ICRuYXZpZ2F0aW9uLWl0ZW0tcGFkZGluZy14ICRuYXZpZ2F0aW9uLXN1Yi1wYWRkaW5nLXkgKCgkbmF2aWdhdGlvbi1pdGVtLXBhZGRpbmcteCAqIDIpICsgJGljb24tZm9udC1zaXplKTtcblx0fVxuXG5cdC8vIFRoaXJkIGxldmVsIG1lbnVzXG5cdC5uYXYtZ3JvdXAtc3ViIHtcblx0XHQubmF2LWxpbmsge1xuXHRcdFx0cGFkZGluZy1sZWZ0OiAoKCRuYXZpZ2F0aW9uLWl0ZW0tcGFkZGluZy14ICogMykgKyAkaWNvbi1mb250LXNpemUpO1xuXHRcdH1cblxuXHRcdC8vIEZvdXJ0aCBsZXZlbFxuXHRcdC5uYXYtZ3JvdXAtc3ViIHtcblx0XHRcdC5uYXYtbGluayB7XG5cdFx0XHRcdHBhZGRpbmctbGVmdDogKCgkbmF2aWdhdGlvbi1pdGVtLXBhZGRpbmcteCAqIDQpICsgJGljb24tZm9udC1zaXplKTtcblx0XHRcdH1cblx0XHR9XG5cdH1cblxuXHQvLyBSZS1wb3NpdGlvbiBhcnJvdyBpY29uIGluIHN1Ym1lbnUgaXRlbXMgc2luY2UgcGFkZGluZyBkaWZmZXJzXG5cdC5uYXYtaXRlbS1zdWJtZW51ID4gLm5hdi1saW5rIHtcblx0XHQmOmFmdGVyIHtcblx0XHRcdHRvcDogJG5hdmlnYXRpb24tc3ViLXBhZGRpbmcteTtcblx0XHR9XG5cdH1cblxuXHQvLyBFeHBhbmQgc3VibWVudVxuXHQubmF2LWl0ZW0tZXhwYW5kZWQgPiAmIHtcblx0XHRkaXNwbGF5OiBibG9jaztcblx0fVxufVxuXG4vLyBTY3JvbGxzcHkgbmF2XG4ubmF2LXNjcm9sbHNweSB7XG5cdC5uYXYtbGluay5hY3RpdmUgKyAubmF2LFxuXHQubmF2LWl0ZW0tb3BlbiAubmF2LWxpbms6bm90KC5hY3RpdmUpICsgLm5hdiB7XG5cdFx0ZGlzcGxheTogYmxvY2s7XG5cdH1cblxuXHQvLyBSb3RhdGUgZGlyZWN0aW9uIGljb25cblx0Lm5hdi1saW5rIHtcblx0XHQmLmFjdGl2ZTphZnRlciB7XG5cdFx0XHR0cmFuc2Zvcm06IHJvdGF0ZSg5MGRlZyk7XG5cdFx0fVxuXHR9XG59XG5cblxuLy9cbi8vIE9wdGlvbmFsIG5hdmlnYXRpb24gc3R5bGVzXG4vL1xuXG4vLyBSZXZlcnNlZCBpY29ucyBhbGlnbm1lbnRcbkBpZiAkZW5hYmxlLXNpZGViYXItbmF2LWljb25zLXJldmVyc2Uge1xuXHQubmF2LXNpZGViYXItaWNvbnMtcmV2ZXJzZSB7XG5cdFx0Lm5hdi1saW5rIHtcblx0XHRcdHBhZGRpbmctcmlnaHQ6ICRuYXZpZ2F0aW9uLWl0ZW0tcGFkZGluZy14ICsgJG5hdmlnYXRpb24taXRlbS1wYWRkaW5nLXggKyAkaWNvbi1mb250LXNpemU7XG5cblx0XHRcdGkge1xuXHRcdFx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0XHRcdHRvcDogJG5hdmlnYXRpb24taXRlbS1wYWRkaW5nLXk7XG5cdFx0XHRcdHJpZ2h0OiAkbmF2aWdhdGlvbi1pdGVtLXBhZGRpbmcteDtcblx0XHRcdFx0bWFyZ2luLXJpZ2h0OiAwO1xuXHRcdFx0fVxuXHRcdH1cblxuXHRcdC5uYXYtaXRlbS1zdWJtZW51IHtcblx0XHRcdC5uYXYtbGluayB7XG5cdFx0XHRcdHBhZGRpbmctcmlnaHQ6ICgkbmF2LWxpbmstcGFkZGluZy14ICsgJGljb24tZm9udC1zaXplICsgJGljb24tZm9udC1zaXplICsgJG5hdi1saW5rLXBhZGRpbmcteCk7XG5cblx0XHRcdFx0JjphZnRlciB7XG5cdFx0XHRcdFx0cmlnaHQ6ICgkbmF2LWxpbmstcGFkZGluZy14ICsgJGljb24tZm9udC1zaXplICsgJGljb24tZm9udC1zaXplKTtcblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdH1cblxuXHRcdC5uYXYtZ3JvdXAtc3ViIHtcblx0XHRcdC5uYXYtbGluayB7XG5cdFx0XHRcdHBhZGRpbmctbGVmdDogKCRuYXZpZ2F0aW9uLWl0ZW0tcGFkZGluZy14ICogMik7XG5cblx0XHRcdFx0aSB7XG5cdFx0XHRcdFx0dG9wOiAkbmF2aWdhdGlvbi1zdWItcGFkZGluZy15O1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cblx0XHRcdC5uYXYtZ3JvdXAtc3ViIHtcblx0XHRcdFx0Lm5hdi1saW5rIHtcblx0XHRcdFx0XHRwYWRkaW5nLWxlZnQ6ICgkbmF2aWdhdGlvbi1pdGVtLXBhZGRpbmcteCAqIDMpO1xuXHRcdFx0XHR9XG5cblx0XHRcdFx0Lm5hdi1ncm91cC1zdWIge1xuXHRcdFx0XHRcdC5uYXYtbGluayB7XG5cdFx0XHRcdFx0XHRwYWRkaW5nLWxlZnQ6ICgkbmF2aWdhdGlvbi1pdGVtLXBhZGRpbmcteCAqIDQpO1xuXHRcdFx0XHRcdH1cblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdH1cblx0fVxufVxuXG4vLyBCb3JkZXJlZCBuYXZpZ2F0aW9uXG5AaWYgJGVuYWJsZS1zaWRlYmFyLW5hdi1ib3JkZXJlZCB7XG5cdC5uYXYtc2lkZWJhci1ib3JkZXJlZCB7XG5cdFx0PiAubmF2LWl0ZW0ge1xuXHRcdFx0KyAubmF2LWl0ZW06bm90KC5uYXYtaXRlbS1kaXZpZGVyKSB7XG5cdFx0XHRcdG1hcmdpbi1ib3R0b206IDA7XG5cdFx0XHR9XG5cdFx0fVxuXG5cdFx0LnNpZGViYXIgLmNhcmQ6Zmlyc3QtY2hpbGQgJiB7XG5cdFx0XHRwYWRkaW5nLXRvcDogMDtcblxuXHRcdFx0PiAubmF2LWl0ZW06Zmlyc3QtY2hpbGQsXG5cdFx0XHQ+IC5uYXYtaXRlbS1oZWFkZXI6Zmlyc3QtY2hpbGQge1xuXHRcdFx0XHRib3JkZXItdG9wOiAwO1xuXHRcdFx0fVxuXHRcdH1cblx0XHQuc2lkZWJhciAuY2FyZDpsYXN0LWNoaWxkICYge1xuXHRcdFx0cGFkZGluZy1ib3R0b206IDA7XG5cblx0XHRcdD4gLm5hdi1pdGVtOmxhc3QtY2hpbGQsXG5cdFx0XHQ+IC5uYXYtaXRlbS1oZWFkZXI6bGFzdC1jaGlsZCB7XG5cdFx0XHRcdGJvcmRlci1ib3R0b206IDA7XG5cdFx0XHR9XG5cdFx0fVxuXG5cdFx0LnNpZGViYXItZGFyayAmIHtcblx0XHRcdD4gLm5hdi1pdGVtIHtcblx0XHRcdFx0Ym9yZGVyLXRvcDogJG5hdmlnYXRpb24tZGFyay1ib3JkZXJlZC1ib3JkZXItd2lkdGggc29saWQgJG5hdmlnYXRpb24tZGFyay1ib3JkZXJlZC1ib3JkZXItY29sb3I7XG5cblx0XHRcdFx0JjpsYXN0LWNoaWxkIHtcblx0XHRcdFx0XHRib3JkZXItYm90dG9tOiAkbmF2aWdhdGlvbi1kYXJrLWJvcmRlcmVkLWJvcmRlci13aWR0aCBzb2xpZCAkbmF2aWdhdGlvbi1kYXJrLWJvcmRlcmVkLWJvcmRlci1jb2xvcjtcblx0XHRcdFx0fVxuXHRcdFx0fVxuXG5cdFx0XHQ+IC5uYXYtaXRlbS1oZWFkZXIge1xuXHRcdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkbmF2aWdhdGlvbi1kYXJrLWJvcmRlcmVkLWhlYWRlci1iZztcblx0XHRcdFx0Ym9yZGVyLXRvcDogJG5hdmlnYXRpb24tZGFyay1ib3JkZXJlZC1ib3JkZXItd2lkdGggc29saWQgJG5hdmlnYXRpb24tZGFyay1ib3JkZXJlZC1ib3JkZXItY29sb3I7XG5cdFx0XHRcdG1hcmdpbjogMDtcblx0XHRcdH1cblx0XHR9XG5cblx0XHQuc2lkZWJhci1saWdodCAmIHtcblx0XHRcdD4gLm5hdi1pdGVtIHtcblx0XHRcdFx0Ym9yZGVyLXRvcDogJG5hdmlnYXRpb24tbGlnaHQtYm9yZGVyZWQtYm9yZGVyLXdpZHRoIHNvbGlkICRuYXZpZ2F0aW9uLWxpZ2h0LWJvcmRlcmVkLWJvcmRlci1jb2xvcjtcblxuXHRcdFx0XHQmOmxhc3QtY2hpbGQge1xuXHRcdFx0XHRcdGJvcmRlci1ib3R0b206ICRuYXZpZ2F0aW9uLWxpZ2h0LWJvcmRlcmVkLWJvcmRlci13aWR0aCBzb2xpZCAkbmF2aWdhdGlvbi1saWdodC1ib3JkZXJlZC1ib3JkZXItY29sb3I7XG5cdFx0XHRcdH1cblx0XHRcdH1cblxuXHRcdFx0PiAubmF2LWl0ZW0taGVhZGVyIHtcblx0XHRcdFx0YmFja2dyb3VuZC1jb2xvcjogJG5hdmlnYXRpb24tbGlnaHQtYm9yZGVyZWQtaGVhZGVyLWJnO1xuXHRcdFx0XHRib3JkZXItdG9wOiAkbmF2aWdhdGlvbi1saWdodC1ib3JkZXJlZC1ib3JkZXItd2lkdGggc29saWQgJG5hdmlnYXRpb24tbGlnaHQtYm9yZGVyZWQtYm9yZGVyLWNvbG9yO1xuXHRcdFx0XHRtYXJnaW46IDA7XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG59XG5cblxuXG4vLyBTaWRlYmFyIG1vYmlsZSB0b2dnbGVyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLy8gQmFzZSBzdHlsZXNcbi5zaWRlYmFyLW1vYmlsZS10b2dnbGVyIHtcblx0ZGlzcGxheTogZmxleDtcblx0anVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuXHRhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGJvcmRlci10b3A6ICRuYXZiYXItYm9yZGVyLXdpZHRoIHNvbGlkIHRyYW5zcGFyZW50O1xuICAgIGJvcmRlci1ib3R0b206ICRuYXZiYXItYm9yZGVyLXdpZHRoIHNvbGlkIHRyYW5zcGFyZW50O1xuXG4gICAgLy8gTGlua3Ncblx0YSB7XG5cdFx0cGFkZGluZzogJG5hdmJhci1saW5rLXBhZGRpbmcteSAkbmF2aWdhdGlvbi1pdGVtLXBhZGRpbmcteDtcbiAgICBcdEBpbmNsdWRlIHRyYW5zaXRpb24oYWxsIGVhc2UtaW4tb3V0ICRjb21wb25lbnQtdHJhbnNpdGlvbi10aW1lcik7XG5cbiAgICBcdC8vIEFkZCBwcm9wZXIgc3BhY2luZyBpZiBmaXJzdCBuYXZiYXIgaGFzIG9wdGlvbmFsIHNpemVcblx0XHQubmF2YmFyLWxnOmZpcnN0LWNoaWxkIH4gLnBhZ2UtY29udGVudCAmIHtcblx0XHRcdHBhZGRpbmc6ICRuYXZiYXItbGluay1wYWRkaW5nLXktbGcgJG5hdmlnYXRpb24taXRlbS1wYWRkaW5nLXg7XG5cdFx0fVxuXHRcdC5uYXZiYXItc206Zmlyc3QtY2hpbGQgfiAucGFnZS1jb250ZW50ICYge1xuXHRcdFx0cGFkZGluZzogJG5hdmJhci1saW5rLXBhZGRpbmcteS1zbSAkbmF2aWdhdGlvbi1pdGVtLXBhZGRpbmcteDtcblx0XHR9XG5cdH1cbn1cblxuLy8gRXhwYW5kIHNpZGViYXIgdG8gZnVsbCB3aWR0aCBidXR0b25cbi5zaWRlYmFyLW1vYmlsZS1leHBhbmQge1xuXHRpIHtcblx0XHQmOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuXHRcdFx0ZGlzcGxheTogbm9uZTtcblx0XHR9XG5cblx0XHQvLyBGdWxsc2NyZWVuIG1vZGVcblx0XHQuc2lkZWJhci1mdWxsc2NyZWVuICYge1xuXHRcdFx0JjpmaXJzdC1jaGlsZCB7XG5cdFx0XHRcdGRpc3BsYXk6IG5vbmU7XG5cdFx0XHR9XG5cdFx0XHQmOmxhc3QtY2hpbGQge1xuXHRcdFx0XHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG59XG5cblxuXG4vLyBTaWRlYmFyIG9wdGlvbnNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4vL1xuLy8gQ29sb3JzXG4vL1xuXG4vLyBEYXJrIHNpZGViYXJcbi5zaWRlYmFyLWRhcmsge1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiAkc2lkZWJhci1kYXJrLWJnO1xuXHRjb2xvcjogJHNpZGViYXItZGFyay1jb2xvcjtcblxuXHQvLyBNb2JpbGUgdG9nZ2xlclxuXHQuc2lkZWJhci1tb2JpbGUtdG9nZ2xlciB7XG5cdFx0Y29sb3I6ICRzaWRlYmFyLWRhcmstdG9nZ2xlci1jb2xvcjtcblx0XHRib3JkZXItYm90dG9tLWNvbG9yOiAkc2lkZWJhci1kYXJrLWJvcmRlci1jb2xvcjtcblxuXHRcdC8vIEFuIG9wdGlvbiB0byB1c2UgY3VzdG9tIGNvbG9yXG5cdFx0Jjpub3QoW2NsYXNzKj1iZy1dKSB7XG5cdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkc2lkZWJhci1kYXJrLXRvZ2dsZXItYmc7XG5cdFx0fVxuXG5cdFx0Ly8gTGlua3Ncblx0XHRhIHtcblx0XHRcdGNvbG9yOiAkc2lkZWJhci1kYXJrLXRvZ2dsZXItY29sb3I7XG5cblx0XHRcdC8vIEhvdmVyIHN0YXRlXG5cdFx0XHRAaW5jbHVkZSBob3ZlciB7XG5cdFx0XHRcdGNvbG9yOiAkc2lkZWJhci1kYXJrLXRvZ2dsZXItaG92ZXItY29sb3I7XG5cdFx0XHRcdGJhY2tncm91bmQtY29sb3I6ICRzaWRlYmFyLWRhcmstdG9nZ2xlci1ob3Zlci1iZztcblx0XHRcdH1cblx0XHR9XG5cdH1cblxuXHQvLyBDYXJkIGhlYWRlciBib3JkZXIgY29sb3Jcblx0LmNhcmQtaGVhZGVyIHtcblx0XHRib3JkZXItY29sb3I6ICRzaWRlYmFyLWRhcmstYm9yZGVyLWNvbG9yO1xuXHR9XG59XG5cbi8vIERhcmsgc2lkZWJhciBhbmQgZGFyayBzaWRlYmFyIHdpdGggY3VzdG9tIGNvbG9yc1xuLnNpZGViYXItZGFyayxcbi5zaWRlYmFyLWxpZ2h0IC5jYXJkW2NsYXNzKj1iZy1dOm5vdCguYmctbGlnaHQpOm5vdCguYmctd2hpdGUpOm5vdCguYmctdHJhbnNwYXJlbnQpIHtcblx0Lm5hdi1zaWRlYmFyIHtcblxuXHRcdC8vIEFsbCBsaW5rc1xuXHRcdC5uYXYtbGluayB7XG5cdFx0XHRjb2xvcjogJG5hdmlnYXRpb24tZGFyay1jb2xvcjtcblxuXHRcdFx0Ly8gSWdub3JlIGRpc2FibGVkIGxpbmtzIHdoZW4gYWRkaW5nIGNvbG9yc1xuXHRcdFx0Jjpub3QoLmRpc2FibGVkKSB7XG5cdFx0XHRcdEBpbmNsdWRlIGhvdmVyIHtcblx0XHRcdFx0XHRjb2xvcjogJG5hdmlnYXRpb24tZGFyay1ob3Zlci1jb2xvcjtcblx0XHRcdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkbmF2aWdhdGlvbi1kYXJrLWhvdmVyLWJnO1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0fVxuXG5cdFx0Ly8gQWN0aXZlIGxpbmtzIGluIHN1Ym1lbnVcblx0XHQubmF2LWl0ZW0gPiAubmF2LWxpbmsuYWN0aXZlIHtcblx0XHRcdGJhY2tncm91bmQtY29sb3I6ICRuYXZpZ2F0aW9uLWRhcmstc3ViLWFjdGl2ZS1iZztcblx0XHRcdGNvbG9yOiAkbmF2aWdhdGlvbi1kYXJrLXN1Yi1hY3RpdmUtY29sb3I7XG5cdFx0fVxuXG5cdFx0Ly8gTGluayBpbiBvcGVuZWQgc3VibWVudVxuXHRcdC5uYXYtaXRlbS1vcGVuID4gLm5hdi1saW5rOm5vdCguZGlzYWJsZWQpLFxuXHRcdD4gLm5hdi1pdGVtLWV4cGFuZGVkOm5vdCgubmF2LWl0ZW0tb3BlbikgPiAubmF2LWxpbmsge1xuXHRcdFx0YmFja2dyb3VuZC1jb2xvcjogJG5hdmlnYXRpb24tZGFyay1ob3Zlci1iZztcblx0XHRcdGNvbG9yOiAkbmF2aWdhdGlvbi1kYXJrLWhvdmVyLWNvbG9yO1xuXHRcdH1cblxuXHRcdC8vIEFjdGl2ZSBsaW5rIGluIHRvcCBsZXZlbFxuXHRcdD4gLm5hdi1pdGVtLW9wZW4gPiAubmF2LWxpbms6bm90KC5kaXNhYmxlZCksXG5cdFx0PiAubmF2LWl0ZW0gPiAubmF2LWxpbmsuYWN0aXZlIHtcblx0XHRcdGJhY2tncm91bmQtY29sb3I6ICRuYXZpZ2F0aW9uLWRhcmstYWN0aXZlLWJnO1xuXHRcdFx0Y29sb3I6ICRuYXZpZ2F0aW9uLWRhcmstYWN0aXZlLWNvbG9yO1xuXHRcdH1cblxuXHRcdC8vIEhlYWRlclxuXHRcdC5uYXYtaXRlbS1oZWFkZXIge1xuXHRcdFx0Y29sb3I6IHJnYmEoJHNpZGViYXItZGFyay1jb2xvciwgMC41KTtcblx0XHR9XG5cblx0XHQvLyBEaXZpZGVyXG5cdFx0Lm5hdi1pdGVtLWRpdmlkZXIge1xuXHRcdFx0YmFja2dyb3VuZC1jb2xvcjogJHNpZGViYXItZGFyay1ib3JkZXItY29sb3I7XG5cdFx0fVxuXG5cdFx0Ly8gU3VibWVudXNcblx0XHQ+IC5uYXYtaXRlbS1zdWJtZW51ID4gLm5hdi1ncm91cC1zdWIge1xuXHRcdFx0YmFja2dyb3VuZC1jb2xvcjogJG5hdmlnYXRpb24tZGFyay1zdWItYmc7XG5cdFx0fVxuXHR9XG59XG5cbi8vIElmIGRhcmsgc2lkZWJhciBoYXMgY3VzdG9tIGJnIGNvbG9yLFxuLy8ganVzdGlmeSBiZyBjb2xvciBmb3IgYWN0aXZlIHN0YXRlXG4uc2lkZWJhci1kYXJrW2NsYXNzKj1iZy1dLFxuLnNpZGViYXIgLmNhcmRbY2xhc3MqPWJnLV06bm90KC5iZy1saWdodCk6bm90KC5iZy13aGl0ZSk6bm90KC5iZy10cmFuc3BhcmVudCkge1xuXHQubmF2LXNpZGViYXIge1xuXHRcdD4gLm5hdi1pdGVtLW9wZW4gPiAubmF2LWxpbms6bm90KC5kaXNhYmxlZCksXG5cdFx0PiAubmF2LWl0ZW0gPiAubmF2LWxpbmsuYWN0aXZlIHtcblx0XHRcdGJhY2tncm91bmQtY29sb3I6IGZhZGUtaW4oJG5hdmlnYXRpb24tZGFyay1ob3Zlci1iZywgMC4xNSk7XG5cdFx0fVxuXHR9XG59XG5cbi8vIExpZ2h0IHNpZGViYXJcbi5zaWRlYmFyLWxpZ2h0IHtcblx0YmFja2dyb3VuZC1jb2xvcjogJHNpZGViYXItbGlnaHQtYmc7XG5cdGNvbG9yOiAkc2lkZWJhci1saWdodC1jb2xvcjtcblx0Ym9yZGVyLXJpZ2h0OiAkc2lkZWJhci1saWdodC1ib3JkZXItd2lkdGggc29saWQgJHNpZGViYXItbGlnaHQtYm9yZGVyLWNvbG9yO1xuXHRiYWNrZ3JvdW5kLWNsaXA6IGNvbnRlbnQtYm94O1xuXG5cdC8vIFJldmVyc2UgYm9yZGVycyBpbiByaWdodCBzaWRlYmFyXG5cdCYuc2lkZWJhci1yaWdodCB7XG5cdFx0Ym9yZGVyLXJpZ2h0OiAwO1xuXHRcdGJvcmRlci1sZWZ0OiAkc2lkZWJhci1saWdodC1ib3JkZXItd2lkdGggc29saWQgJHNpZGViYXItbGlnaHQtYm9yZGVyLWNvbG9yO1xuXHR9XG5cblx0Ly8gTWFpbiBzaWRlYmFyIG5hdlxuXHQubmF2LXNpZGViYXIge1xuXG5cdFx0Ly8gQWxsIGxpbmtzXG5cdFx0Lm5hdi1saW5rIHtcblx0XHRcdGNvbG9yOiAkbmF2aWdhdGlvbi1saWdodC1jb2xvcjtcblxuXHRcdFx0Ly8gSWdub3JlIGRpc2FibGVkIGxpbmtzIHdoZW4gYWRkaW5nIGNvbG9yc1xuXHRcdFx0Jjpub3QoLmRpc2FibGVkKSB7XG5cdFx0XHRcdEBpbmNsdWRlIGhvdmVyIHtcblx0XHRcdFx0XHRjb2xvcjogJG5hdmlnYXRpb24tbGlnaHQtaG92ZXItY29sb3I7XG5cdFx0XHRcdFx0YmFja2dyb3VuZC1jb2xvcjogJG5hdmlnYXRpb24tbGlnaHQtaG92ZXItYmc7XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHR9XG5cblx0XHQvLyBBY3RpdmUgbGlua3MgaW4gc3VibWVudVxuXHRcdC5uYXYtaXRlbSA+IC5uYXYtbGluay5hY3RpdmUge1xuXHRcdFx0YmFja2dyb3VuZC1jb2xvcjogJG5hdmlnYXRpb24tbGlnaHQtc3ViLWFjdGl2ZS1iZztcblx0XHRcdGNvbG9yOiAkbmF2aWdhdGlvbi1saWdodC1zdWItYWN0aXZlLWNvbG9yO1xuXHRcdH1cblxuXHRcdC8vIExpbmsgaW4gb3BlbmVkIHN1Ym1lbnVcblx0XHQubmF2LWl0ZW0tb3BlbiA+IC5uYXYtbGluazpub3QoLmRpc2FibGVkKSxcblx0XHQ+IC5uYXYtaXRlbS1leHBhbmRlZDpub3QoLm5hdi1pdGVtLW9wZW4pID4gLm5hdi1saW5rIHtcblx0XHRcdGJhY2tncm91bmQtY29sb3I6ICRuYXZpZ2F0aW9uLWxpZ2h0LWhvdmVyLWJnO1xuXHRcdFx0Y29sb3I6ICRuYXZpZ2F0aW9uLWxpZ2h0LWhvdmVyLWNvbG9yO1xuXHRcdH1cblxuXHRcdC8vIEFjdGl2ZSBsaW5rIGluIHRvcCBsZXZlbFxuXHRcdD4gLm5hdi1pdGVtLW9wZW4gPiAubmF2LWxpbms6bm90KC5kaXNhYmxlZCksXG5cdFx0PiAubmF2LWl0ZW0gPiAubmF2LWxpbmsuYWN0aXZlIHtcblx0XHRcdGJhY2tncm91bmQtY29sb3I6ICRuYXZpZ2F0aW9uLWxpZ2h0LWFjdGl2ZS1iZztcblx0XHRcdGNvbG9yOiAkbmF2aWdhdGlvbi1saWdodC1hY3RpdmUtY29sb3I7XG5cdFx0fVxuXG5cdFx0Ly8gSGVhZGVyXG5cdFx0Lm5hdi1pdGVtLWhlYWRlciB7XG5cdFx0XHRjb2xvcjogcmdiYSgkc2lkZWJhci1saWdodC1jb2xvciwgMC41KTtcblx0XHR9XG5cblx0XHQvLyBEaXZpZGVyXG5cdFx0Lm5hdi1pdGVtLWRpdmlkZXIge1xuXHRcdFx0YmFja2dyb3VuZC1jb2xvcjogJHNpZGViYXItbGlnaHQtYm9yZGVyLWNvbG9yO1xuXHRcdH1cblxuXHRcdC8vIFN1Ym1lbnVzXG5cdFx0PiAubmF2LWl0ZW0tc3VibWVudSA+IC5uYXYtZ3JvdXAtc3ViIHtcblx0XHRcdGJhY2tncm91bmQtY29sb3I6ICRuYXZpZ2F0aW9uLWxpZ2h0LXN1Yi1iZztcblx0XHR9XG5cdH1cblxuXHQvLyBTaWRlYmFyIG1vYmlsZSB0b2dnbGVyXG5cdC5zaWRlYmFyLW1vYmlsZS10b2dnbGVyIHtcblx0XHRjb2xvcjogJHNpZGViYXItbGlnaHQtdG9nZ2xlci1jb2xvcjtcblx0XHRib3JkZXItYm90dG9tLWNvbG9yOiAkc2lkZWJhci1saWdodC1ib3JkZXItY29sb3I7XG5cblx0XHQvLyBBbiBvcHRpb24gdG8gdXNlIGN1c3RvbSBjb2xvclxuXHRcdCY6bm90KFtjbGFzcyo9YmctXSkge1xuXHRcdFx0YmFja2dyb3VuZC1jb2xvcjogJHNpZGViYXItbGlnaHQtdG9nZ2xlci1iZztcblx0XHR9XG5cblx0XHQvLyBMaW5rc1xuXHRcdGEge1xuXHRcdFx0Y29sb3I6ICRzaWRlYmFyLWxpZ2h0LXRvZ2dsZXItY29sb3I7XG5cblx0XHRcdC8vIEhvdmVyIHN0YXRlXG5cdFx0XHRAaW5jbHVkZSBob3ZlciB7XG5cdFx0XHRcdGNvbG9yOiAkc2lkZWJhci1saWdodC10b2dnbGVyLWhvdmVyLWNvbG9yO1xuXHRcdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkc2lkZWJhci1saWdodC10b2dnbGVyLWhvdmVyLWJnO1xuXHRcdFx0fVxuXHRcdH1cblxuXHRcdC8vIEN1c3RvbSBjb2xvcnNcblx0XHQmW2NsYXNzKj1iZy1dOm5vdCguYmctd2hpdGUpOm5vdCguYmctbGlnaHQpOm5vdCguYmctdHJhbnNwYXJlbnQpIHtcblx0XHRcdGNvbG9yOiAkc2lkZWJhci1kYXJrLXRvZ2dsZXItY29sb3I7XG5cdFx0XHRib3JkZXItYm90dG9tLWNvbG9yOiAkc2lkZWJhci1kYXJrLWJvcmRlci1jb2xvcjtcblxuXHRcdFx0Ly8gTGlua3Ncblx0XHRcdGEge1xuXHRcdFx0XHRjb2xvcjogJHNpZGViYXItZGFyay10b2dnbGVyLWNvbG9yO1xuXG5cdFx0XHRcdC8vIEhvdmVyIHN0YXRlXG5cdFx0XHRcdEBpbmNsdWRlIGhvdmVyIHtcblx0XHRcdFx0XHRjb2xvcjogJHNpZGViYXItZGFyay10b2dnbGVyLWhvdmVyLWNvbG9yO1xuXHRcdFx0XHRcdGJhY2tncm91bmQtY29sb3I6ICRzaWRlYmFyLWRhcmstdG9nZ2xlci1ob3Zlci1iZztcblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdH1cblx0fVxufVxuXG5cbi8vXG4vLyBDb250ZW50IHNpZGViYXJcbi8vXG5cbi5zaWRlYmFyLWNvbXBvbmVudCB7XG5cdGRpc3BsYXk6IG5vbmU7XG5cdHdpZHRoOiAxMDAlO1xuXHRib3JkZXI6IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcblx0QGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkYm9yZGVyLXJhZGl1cyk7XG5cdEBpbmNsdWRlIGJveC1zaGFkb3coJGNhcmQtYm94LXNoYWRvdyk7XG5cblx0Ly8gRGFyayBjb2xvcnNcblx0Ji5zaWRlYmFyLWRhcmsge1xuXHRcdGJvcmRlci1jb2xvcjogJHNpZGViYXItZGFyay1ib3JkZXItY29sb3I7XG5cdH1cblxuXHQvLyBMaWdodCBjb2xvcnNcblx0Ji5zaWRlYmFyLWxpZ2h0IHtcblx0XHRib3JkZXItY29sb3I6ICRzaWRlYmFyLWxpZ2h0LWJvcmRlci1jb2xvcjtcblx0fVxufVxuXG5cbi8vXG4vLyBNaW5pIHNpZGViYXIgLSBjYW4gYmUgdXNlZCBvbmx5IG9uIGNlcnRhaW4gYnJlYWtwb2ludHMgKFwibWRcIiBhbmQgdXApXG4vL1xuXG4uc2lkZWJhci14cyB7XG5cdEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobWQpIHtcblxuXHRcdC8vIFdvcmtzIG9ubHkgaW4gbWFpbiBzaWRlYmFyXG5cdFx0LnNpZGViYXItbWFpbiB7XG5cdFx0XHR3aWR0aDogJHNpZGViYXItbWluaS13aWR0aDtcblxuXHRcdFx0Ly8gSGlkZSBkZWZhdWx0IHNjcm9sbGJhclxuXHRcdFx0LnNpZGViYXItY29udGVudCB7XG5cdFx0XHRcdCY6Oi13ZWJraXQtc2Nyb2xsYmFyIHtcblx0XHRcdCAgICAgICAgd2lkdGg6IDAgIWltcG9ydGFudDtcblx0XHRcdCAgICB9XG5cdFx0XHR9XG5cblx0XHRcdC8vIENhcmQgYW5kIGNhcmQgZWxlbWVudHNcblx0XHRcdC5jYXJkOm5vdCguY2FyZC1zaWRlYmFyLW1vYmlsZSksXG5cdFx0XHQuY2FyZC10aXRsZSB7XG5cdFx0XHRcdGRpc3BsYXk6IG5vbmU7XG5cdFx0XHR9XG5cblx0XHRcdC8vIENhcmQgaGVhZGVyIGFuZCBjb250cm9sIGFjdGlvbnNcblx0XHRcdC5jYXJkLWhlYWRlciB7XG5cdFx0XHRcdGg2IHtcblx0XHRcdFx0XHQrIC5oZWFkZXItZWxlbWVudHMge1xuXHRcdFx0XHRcdFx0cGFkZGluZy10b3A6ICgoKCRoZWFkaW5ncy1saW5lLWhlaWdodCAqICRoNi1mb250LXNpemUpIC0gJGljb24tZm9udC1zaXplKSAvIDIpO1xuXHRcdFx0XHRcdFx0cGFkZGluZy1ib3R0b206ICgoKCRoZWFkaW5ncy1saW5lLWhlaWdodCAqICRoNi1mb250LXNpemUpIC0gJGljb24tZm9udC1zaXplKSAvIDIpO1xuXHRcdFx0XHRcdH1cblx0XHRcdFx0fVxuXHRcdFx0XHRoNSB7XG5cdFx0XHRcdFx0KyAuaGVhZGVyLWVsZW1lbnRzIHtcblx0XHRcdFx0XHRcdHBhZGRpbmctdG9wOiAoKCgkaGVhZGluZ3MtbGluZS1oZWlnaHQgKiAkaDUtZm9udC1zaXplKSAtICRpY29uLWZvbnQtc2l6ZSkgLyAyKTtcblx0XHRcdFx0XHRcdHBhZGRpbmctYm90dG9tOiAoKCgkaGVhZGluZ3MtbGluZS1oZWlnaHQgKiAkaDUtZm9udC1zaXplKSAtICRpY29uLWZvbnQtc2l6ZSkgLyAyKTtcblx0XHRcdFx0XHR9XG5cdFx0XHRcdH1cblx0XHRcdH1cblxuXHRcdFx0Ly8gTWFpbiBuYXZpZ2F0aW9uXG5cdFx0XHQubmF2LXNpZGViYXIge1xuXG5cdFx0XHRcdC8vIE5hdiBpdGVtc1xuXHRcdFx0XHQ+IC5uYXYtaXRlbSB7XG5cdFx0XHRcdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRcdFx0XHRcdG1hcmdpbjogMDtcblxuXHRcdFx0XHRcdC8vIExpbmtzXG5cdFx0XHRcdFx0PiAubmF2LWxpbmsge1xuXHRcdFx0XHRcdFx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG5cdFx0XHRcdFx0XHRwYWRkaW5nLWxlZnQ6IDA7XG5cdFx0XHRcdFx0XHRwYWRkaW5nLXJpZ2h0OiAwO1xuXG5cdFx0XHRcdFx0XHQvLyBJY29uc1xuXHRcdFx0XHRcdFx0PiBpIHtcblx0XHRcdFx0XHRcdFx0cG9zaXRpb246IHN0YXRpYztcblx0XHRcdFx0XHRcdFx0bWFyZ2luLWxlZnQ6IDA7XG5cdFx0XHRcdFx0XHRcdG1hcmdpbi1yaWdodDogMDtcblx0XHRcdFx0XHRcdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0XHRcdFx0XHRcdHBhZGRpbmctYm90dG9tOiAkbmF2aWdhdGlvbi1pdGVtLXNwYWNlci15O1xuXHRcdFx0XHRcdFx0fVxuXG5cdFx0XHRcdFx0XHQvLyBIaWRlIHRleHRcblx0XHRcdFx0XHRcdD4gc3BhbiB7XG5cdFx0XHRcdFx0XHRcdGRpc3BsYXk6IG5vbmU7XG5cdFx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHR9XG5cblx0XHRcdFx0Ly8gSXRlbXMgd2l0aCBzdWJtZW51XG5cdFx0XHRcdD4gLm5hdi1pdGVtLXN1Ym1lbnUge1xuXG5cdFx0XHRcdFx0Ly8gU2hvdyBzdWJtZW51cyBvbiBob3ZlclxuXHRcdFx0XHRcdEBpbmNsdWRlIGhvdmVyLWZvY3VzIHtcblx0XHRcdFx0XHRcdD4gLm5hdi1ncm91cC1zdWIge1xuXHRcdFx0XHRcdFx0XHRkaXNwbGF5OiBibG9jayFpbXBvcnRhbnQ7XG5cdFx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0fVxuXG5cdFx0XHRcdFx0Ly8gU3VibWVudVxuXHRcdFx0XHRcdD4gLm5hdi1ncm91cC1zdWIge1xuXHRcdFx0XHRcdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdFx0XHRcdFx0dG9wOiAtKCRuYXZpZ2F0aW9uLXBhZGRpbmcteSk7XG5cdFx0XHRcdFx0XHRyaWdodDogLSgkc2lkZWJhci1iYXNlLXdpZHRoKTtcblx0XHRcdFx0XHRcdHdpZHRoOiAkc2lkZWJhci1iYXNlLXdpZHRoO1xuXHRcdFx0XHRcdFx0ZGlzcGxheTogbm9uZTtcblx0XHRcdFx0XHRcdHotaW5kZXg6ICR6aW5kZXgtZHJvcGRvd247XG5cdFx0XHRcdFx0XHRAaW5jbHVkZSBib3gtc2hhZG93KCRkcm9wZG93bi1ib3gtc2hhZG93KTtcblx0XHRcdFx0XHRcdEBpbmNsdWRlIGJvcmRlci1yaWdodC1yYWRpdXMoJGJvcmRlci1yYWRpdXMpO1xuXG5cdFx0XHRcdFx0XHQvLyBTdWJtZW51IHRpdGxlXG5cdFx0XHRcdFx0XHQmW2RhdGEtc3VibWVudS10aXRsZV0ge1xuXHRcdFx0XHRcdFx0XHQmOmJlZm9yZSB7XG5cdFx0XHRcdFx0XHRcdFx0Y29udGVudDogYXR0cihkYXRhLXN1Ym1lbnUtdGl0bGUpO1xuXHRcdFx0XHRcdFx0XHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdFx0XHRcdFx0XHRcdHBhZGRpbmc6ICRuYXZpZ2F0aW9uLWl0ZW0tcGFkZGluZy15ICRuYXZpZ2F0aW9uLWl0ZW0tcGFkZGluZy14O1xuXHRcdFx0XHRcdFx0XHRcdHBhZGRpbmctYm90dG9tOiAwO1xuXHRcdFx0XHRcdFx0XHRcdG1hcmdpbi10b3A6ICRuYXZpZ2F0aW9uLXBhZGRpbmcteTtcblx0XHRcdFx0XHRcdFx0XHRvcGFjaXR5OiAkbmF2aWdhdGlvbi1zdWItaXRlbS1vcGFjaXR5O1xuXHRcdFx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0fVxuXG5cdFx0XHRcdFx0Ly8gSGlkZSBkaXJlY3Rpb24gYXJyb3dzXG5cdFx0XHRcdFx0PiAubmF2LWxpbmsge1xuXHRcdFx0XHRcdFx0JjphZnRlciB7XG5cdFx0XHRcdFx0XHRcdGNvbnRlbnQ6IG5vbmU7XG5cdFx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHR9XG5cblx0XHRcdFx0Ly8gU3VibWVudVxuXHRcdFx0XHQubmF2LWdyb3VwLXN1YiB7XG5cdFx0XHRcdFx0Lm5hdi1saW5rIHtcblx0XHRcdFx0XHRcdHBhZGRpbmctbGVmdDogJG5hdmlnYXRpb24taXRlbS1wYWRkaW5nLXg7XG5cdFx0XHRcdFx0fVxuXG5cdFx0XHRcdFx0Ly8gVGhpcmQgbGV2ZWxcblx0XHRcdFx0XHQubmF2LWdyb3VwLXN1YiB7XG5cdFx0XHRcdFx0XHQubmF2LWxpbmsge1xuXHRcdFx0XHRcdFx0XHRwYWRkaW5nLWxlZnQ6ICgkbmF2aWdhdGlvbi1pdGVtLXBhZGRpbmcteCArICRpY29uLWZvbnQtc2l6ZSk7XG5cdFx0XHRcdFx0XHR9XG5cblx0XHRcdFx0XHRcdC8vIEZvdXJ0aCBsZXZlbFxuXHRcdFx0XHRcdFx0Lm5hdi1ncm91cC1zdWIge1xuXHRcdFx0XHRcdFx0XHQubmF2LWxpbmsge1xuXHRcdFx0XHRcdFx0XHRcdHBhZGRpbmctbGVmdDogKCgkbmF2aWdhdGlvbi1pdGVtLXBhZGRpbmcteCAqIDIpICsgJGljb24tZm9udC1zaXplKTtcblx0XHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdH1cblx0XHRcdFx0fVxuXG5cdFx0XHRcdC8vIE5hdmlnYXRpb24gaGVhZGVyXG5cdFx0XHRcdD4gLm5hdi1pdGVtLWhlYWRlciB7XG5cdFx0XHRcdFx0cGFkZGluZzogMDtcblx0XHRcdFx0XHR0ZXh0LWFsaWduOiBjZW50ZXI7XG5cblx0XHRcdFx0XHQvLyBJY29uc1xuXHRcdFx0XHRcdD4gaSB7XG5cdFx0XHRcdFx0XHRkaXNwbGF5OiBibG9jaztcblx0XHRcdFx0XHRcdHRvcDogMDtcblx0XHRcdFx0XHRcdHBhZGRpbmc6ICRuYXZpZ2F0aW9uLWl0ZW0tcGFkZGluZy15ICRuYXZpZ2F0aW9uLWl0ZW0tcGFkZGluZy14O1xuXHRcdFx0XHRcdFx0bWFyZ2luLXRvcDogKCgkbGluZS1oZWlnaHQtY29tcHV0ZWQgLSAkaWNvbi1mb250LXNpemUpIC8gMik7XG5cdFx0XHRcdFx0XHRtYXJnaW4tYm90dG9tOiAoKCRsaW5lLWhlaWdodC1jb21wdXRlZCAtICRpY29uLWZvbnQtc2l6ZSkgLyAyKTtcblx0XHRcdFx0XHR9XG5cblx0XHRcdFx0XHQvLyBIaWRlIHRleHQgbGFiZWxcblx0XHRcdFx0XHQ+IGRpdiB7XG5cdFx0XHRcdFx0XHRkaXNwbGF5OiBub25lO1xuXHRcdFx0XHRcdH1cblx0XHRcdFx0fVxuXG5cdFx0XHRcdC8vIEhpZGUgc3VibWVudSBpbiBvcGVuZWQgc2VjdGlvblxuXHRcdFx0XHQ+IC5uYXYtaXRlbS1vcGVuID4gLm5hdi1ncm91cC1zdWIge1xuXHRcdFx0XHRcdGRpc3BsYXk6IG5vbmUhaW1wb3J0YW50O1xuXHRcdFx0XHR9XG5cblx0XHRcdFx0Ly8gRG8gbm90IHNob3cgZGlzYWJsZWQgc3VibWVudXMgb24gaG92ZXJcblx0XHRcdFx0PiAubmF2LWl0ZW0ge1xuXHRcdFx0XHRcdEBpbmNsdWRlIGhvdmVyLWZvY3VzIHtcblx0XHRcdFx0XHRcdD4gLm5hdi1saW5rLmRpc2FibGVkICsgLm5hdi1ncm91cC1zdWIsXG5cdFx0XHRcdFx0XHQ+IC5uYXYtbGluay5kaXNhYmxlZCA+IHNwYW4ge1xuXHRcdFx0XHRcdFx0XHRkaXNwbGF5OiBub25lIWltcG9ydGFudDtcblx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHR9XG5cdFx0XHRcdH1cblx0XHRcdH1cblxuXHRcdFx0Ly8gU2lkZWJhciB1c2VyIGJsb2NrXG5cdFx0XHQuc2lkZWJhci11c2VyIHtcblxuXHRcdFx0XHQvLyBSZW1vdmUgaG9yaXpvbnRhbCBwYWRkaW5nXG5cdFx0XHRcdC5jYXJkLWJvZHkge1xuXHRcdFx0XHRcdHBhZGRpbmctbGVmdDogMDtcblx0XHRcdFx0XHRwYWRkaW5nLXJpZ2h0OiAwO1xuXHRcdFx0XHR9XG5cblx0XHRcdFx0Ly8gQ2VudGVyIGltYWdlXG5cdFx0XHRcdC5tZWRpYSB7XG5cdFx0XHRcdFx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG5cblx0XHRcdFx0XHQvLyBIaWRlIGFsbCB0ZXh0XG5cdFx0XHRcdFx0PiBkaXYge1xuXHRcdFx0XHRcdFx0Jjpub3QoOmZpcnN0LWNoaWxkKSB7XG5cdFx0XHRcdFx0XHRcdGRpc3BsYXk6IG5vbmUhaW1wb3J0YW50O1xuXG5cdFx0XHRcdFx0XHR9XG5cblx0XHRcdFx0XHRcdCY6Zmlyc3QtY2hpbGQge1xuXHRcdFx0XHRcdFx0XHRtYXJnaW46IDAhaW1wb3J0YW50O1xuXHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdH1cblx0XHRcdFx0fVxuXHRcdFx0fVxuXG5cdFx0XHQvLyBGbGlwIDJuZCBsZXZlbCBkcm9wZG93biBpZiB0aGVyZSdzIG5vIGVub3VnaCBzcGFjZVxuXHRcdFx0Ly8gYW5kIGhlaWdodCBkb2Vzbid0IGZpdCB0aGUgYnJvd3NlciB3aW5kb3dcblx0XHRcdC5uYXYtaXRlbS1zdWJtZW51LXJldmVyc2VkIHtcblx0XHRcdFx0Lm5hdi1ncm91cC1zdWIge1xuXHRcdFx0XHRcdHRvcDogYXV0byFpbXBvcnRhbnQ7XG5cdFx0XHRcdFx0Ym90dG9tOiAwO1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cblxuXHRcdFx0Ly9cblx0XHRcdC8vIENvbG9yIG9wdGlvbnNcblx0XHRcdC8vXG5cblx0XHRcdC8vIERhcmsgc2lkZWJhclxuXHRcdFx0Ji5zaWRlYmFyLWRhcmsge1xuXHRcdFx0XHQubmF2LXNpZGViYXIge1xuXHRcdFx0XHRcdD4gLm5hdi1pdGVtOm5vdCgubmF2LWl0ZW0tb3Blbik6aG92ZXIge1xuXHRcdFx0XHRcdFx0PiAubmF2LWxpbms6bm90KC5hY3RpdmUpOm5vdCguZGlzYWJsZWQpIHtcblx0XHRcdFx0XHRcdFx0Y29sb3I6ICRuYXZpZ2F0aW9uLWRhcmstaG92ZXItY29sb3I7XG5cdFx0XHRcdFx0XHRcdGJhY2tncm91bmQtY29sb3I6ICRuYXZpZ2F0aW9uLWRhcmstaG92ZXItYmc7XG5cdFx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0fVxuXG5cdFx0XHRcdFx0PiAubmF2LWl0ZW0tc3VibWVudSB7XG5cdFx0XHRcdFx0XHQ+IC5uYXYtZ3JvdXAtc3ViIHtcblx0XHRcdFx0XHRcdFx0YmFja2dyb3VuZC1jb2xvcjogJHNpZGViYXItZGFyay14cy1tZW51LWJnO1xuXHRcdFx0XHRcdFx0XHRib3JkZXItbGVmdDogJHNpZGViYXItZGFyay1ib3JkZXItd2lkdGggc29saWQgJHNpZGViYXItZGFyay1ib3JkZXItY29sb3I7XG5cdFx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHR9XG5cdFx0XHR9XG5cblx0XHRcdC8vIExpZ2h0IHNpZGViYXJcblx0XHRcdCYuc2lkZWJhci1saWdodCB7XG5cdFx0XHRcdC5uYXYtc2lkZWJhciB7XG5cdFx0XHRcdFx0PiAubmF2LWl0ZW06bm90KC5uYXYtaXRlbS1vcGVuKTpob3ZlciB7XG5cdFx0XHRcdFx0XHQ+IC5uYXYtbGluazpub3QoLmFjdGl2ZSk6bm90KC5kaXNhYmxlZCkge1xuXHRcdFx0XHRcdFx0XHRjb2xvcjogJG5hdmlnYXRpb24tbGlnaHQtaG92ZXItY29sb3I7XG5cdFx0XHRcdFx0XHRcdGJhY2tncm91bmQtY29sb3I6ICRuYXZpZ2F0aW9uLWxpZ2h0LWhvdmVyLWJnO1xuXHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdH1cblxuXHRcdFx0XHRcdD4gLm5hdi1pdGVtLXN1Ym1lbnUge1xuXHRcdFx0XHRcdFx0PiAubmF2LWdyb3VwLXN1YiB7XG5cdFx0XHRcdFx0XHRcdGJhY2tncm91bmQtY29sb3I6ICRzaWRlYmFyLWxpZ2h0LXhzLW1lbnUtYmc7XG5cdFx0XHRcdFx0XHRcdGJvcmRlcjogJHNpZGViYXItbGlnaHQtYm9yZGVyLXdpZHRoIHNvbGlkICRzaWRlYmFyLWxpZ2h0LWJvcmRlci1jb2xvcjtcblx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHR9XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHR9XG5cblxuXHRcdC8vXG5cdFx0Ly8gRml4ZWQgc2lkZWJhclxuXHRcdC8vXG5cblx0XHQvLyBCYXNlXG5cdFx0LnNpZGViYXItbWFpbi5zaWRlYmFyLWZpeGVkIHtcblx0XHRcdHotaW5kZXg6ICgkemluZGV4LWZpeGVkIC0gMSk7XG5cblx0XHRcdC8vIFN1Ym1lbnVcblx0XHRcdC5uYXYtc2lkZWJhciA+IC5uYXYtaXRlbS1zdWJtZW51IHtcblx0XHRcdFx0QGluY2x1ZGUgaG92ZXItZm9jdXMge1xuXHRcdFx0XHRcdD4gLm5hdi1ncm91cC1zdWIge1xuXHRcdFx0XHRcdFx0cG9zaXRpb246IGZpeGVkO1xuXHRcdFx0XHRcdFx0bGVmdDogJHNpZGViYXItbWluaS13aWR0aDtcblx0XHRcdFx0XHRcdHRvcDogJG5hdi1saW5rLWhlaWdodCArIHJlbS1jYWxjKCRuYXZiYXItYm9yZGVyLXdpZHRoICogMik7XG5cdFx0XHRcdFx0XHRib3R0b206IDA7XG5cdFx0XHRcdFx0XHR3aWR0aDogJHNpZGViYXItYmFzZS13aWR0aDtcblx0XHRcdFx0XHRcdG92ZXJmbG93LXk6IGF1dG87XG5cdFx0XHRcdFx0XHRAaW5jbHVkZSBib3JkZXItcmFkaXVzKDApO1xuXHRcdFx0XHRcdH1cblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdH1cblxuXHRcdC8vIElmIGZpcnN0IG5hdmJhciBoYXMgZGlmZmVyZW50IHNpemVcblx0XHQubmF2YmFyLWxnOmZpcnN0LWNoaWxkIH4gLnBhZ2UtY29udGVudCB7XG5cdFx0XHQuc2lkZWJhci1maXhlZC5zaWRlYmFyLW1haW4ge1xuXHRcdFx0XHQubmF2LXNpZGViYXIgPiAubmF2LWl0ZW0tc3VibWVudSB7XG5cdFx0XHRcdFx0QGluY2x1ZGUgaG92ZXItZm9jdXMge1xuXHRcdFx0XHRcdFx0PiAubmF2LWdyb3VwLXN1YiB7XG5cdFx0XHRcdFx0XHRcdHRvcDogJG5hdi1saW5rLWhlaWdodC1sZyArIHJlbS1jYWxjKCRuYXZiYXItYm9yZGVyLXdpZHRoICogMik7XG5cdFx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0fVxuXHRcdC5uYXZiYXItc206Zmlyc3QtY2hpbGQgfiAucGFnZS1jb250ZW50IHtcblx0XHRcdC5zaWRlYmFyLWZpeGVkLnNpZGViYXItbWFpbiB7XG5cdFx0XHRcdC5uYXYtc2lkZWJhciA+IC5uYXYtaXRlbS1zdWJtZW51IHtcblx0XHRcdFx0XHRAaW5jbHVkZSBob3Zlci1mb2N1cyB7XG5cdFx0XHRcdFx0XHQ+IC5uYXYtZ3JvdXAtc3ViIHtcblx0XHRcdFx0XHRcdFx0dG9wOiAkbmF2LWxpbmstaGVpZ2h0LXNtICsgcmVtLWNhbGMoJG5hdmJhci1ib3JkZXItd2lkdGggKiAyKTtcblx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHR9XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHR9XG5cdH1cbn1cblxuXG5cbi8vXG4vLyBHZW5lcmF0ZSBzZXJpZXMgb2YgYC5zaWRlYmFyLWV4cGFuZC0qYCByZXNwb25zaXZlIGNsYXNzZXMgZm9yIGNvbmZpZ3VyaW5nXG4vLyB3aGVyZSBzaWRlYmFyIGNvbGxhcHNlcy4gSWYgdG9nZ2xlcnMgYXJlIGluIG1haW4gbmF2YmFyLCBtYWtlIHN1cmUgYnJlYWtwb2ludHMgbWF0Y2guXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLnNpZGViYXItZXhwYW5kIHtcblx0QGVhY2ggJGJyZWFrcG9pbnQgaW4gbWFwLWtleXMoJGdyaWQtYnJlYWtwb2ludHMpIHtcblx0XHQkbmV4dDogYnJlYWtwb2ludC1uZXh0KCRicmVha3BvaW50LCAkZ3JpZC1icmVha3BvaW50cyk7XG5cdFx0JGluZml4OiBicmVha3BvaW50LWluZml4KCRuZXh0LCAkZ3JpZC1icmVha3BvaW50cyk7XG5cblx0XHQmI3skaW5maXh9IHtcblx0XHRcdEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJG5leHQpIHtcblxuXHRcdFx0XHQvLyBTaWRlYmFyc1xuXHRcdFx0XHQmLnNpZGViYXItbWFpbiB7XG5cdFx0XHRcdFx0ei1pbmRleDogJHNpZGViYXItemluZGV4LW1haW47XG5cdFx0XHRcdFx0Ym94LXNoYWRvdzogJHNpZGViYXItbGVmdC1kZXNrdG9wLWJveC1zaGFkb3c7XG5cblx0XHRcdFx0XHQvLyBDb250ZW50XG5cdFx0XHRcdFx0LnNpZGViYXItY29udGVudCB7XG5cdFx0XHRcdFx0XHRsZWZ0OiAwO1xuXHRcdFx0XHRcdH1cblx0XHRcdFx0fVxuXHRcdFx0XHQmLnNpZGViYXItc2Vjb25kYXJ5IHtcblx0XHRcdFx0XHR6LWluZGV4OiAkc2lkZWJhci16aW5kZXgtc2Vjb25kYXJ5O1xuXHRcdFx0XHRcdGJveC1zaGFkb3c6ICRzaWRlYmFyLWxlZnQtZGVza3RvcC1ib3gtc2hhZG93O1xuXG5cdFx0XHRcdFx0Ly8gQ29udGVudFxuXHRcdFx0XHRcdC5zaWRlYmFyLWNvbnRlbnQge1xuXHRcdFx0XHRcdFx0bGVmdDogMDtcblx0XHRcdFx0XHR9XG5cdFx0XHRcdH1cblx0XHRcdFx0Ji5zaWRlYmFyLXJpZ2h0IHtcblx0XHRcdFx0XHR6LWluZGV4OiAkc2lkZWJhci16aW5kZXgtcmlnaHQ7XG5cdFx0XHRcdFx0Ym94LXNoYWRvdzogJHNpZGViYXItcmlnaHQtZGVza3RvcC1ib3gtc2hhZG93O1xuXG5cdFx0XHRcdFx0Ly8gQ29udGVudFxuXHRcdFx0XHRcdC5zaWRlYmFyLWNvbnRlbnQge1xuXHRcdFx0XHRcdFx0cmlnaHQ6IDA7XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHR9XG5cdFx0XHRcdCYuc2lkZWJhci1jb21wb25lbnQge1xuXHRcdFx0XHRcdHotaW5kZXg6ICRzaWRlYmFyLXppbmRleC1jb21wb25lbnQ7XG5cdFx0XHRcdH1cblx0XHRcdFx0XG5cdFx0XHRcdC8vIEFsbCBleGNlcHQgY29udGVudCBzaWRlYmFyXG5cdFx0XHRcdCY6bm90KC5zaWRlYmFyLWNvbXBvbmVudCkge1xuXHRcdFx0XHRcdHBvc2l0aW9uOiBzdGF0aWM7XG5cdFx0XHRcdFx0QGluY2x1ZGUgdHJhbnNpdGlvbihub25lKTtcblxuXHRcdFx0XHRcdC8vIFNpZGViYXIgY29udGVudFxuXHRcdFx0XHRcdCY6bm90KC5zaWRlYmFyLWZpeGVkKSAuc2lkZWJhci1jb250ZW50IHtcblx0XHRcdFx0XHRcdHBvc2l0aW9uOiBzdGF0aWM7XG5cdFx0XHRcdFx0XHRvdmVyZmxvdzogdmlzaWJsZTtcblx0XHRcdFx0XHRcdHdpZHRoOiBhdXRvO1xuXHRcdFx0XHRcdH1cblx0XHRcdFx0fVxuXG5cdFx0XHRcdC8vIEFkZCAxcHggYm9yZGVyIGlmIGJvdGggc2lkZWJhcnMgYXJlIGRhcmtcblx0XHRcdFx0Ji5zaWRlYmFyLWRhcms6bm90KC5zaWRlYmFyLWNvbXBvbmVudCkgKyAuc2lkZWJhci1kYXJrOm5vdCguc2lkZWJhci1jb21wb25lbnQpIHtcblx0XHRcdFx0XHRib3JkZXItbGVmdDogJHNpZGViYXItZGFyay1ib3JkZXItd2lkdGggc29saWQgJHNpZGViYXItZGFyay1ib3JkZXItY29sb3I7XG5cdFx0XHRcdH1cblxuXHRcdFx0XHQvLyBIaWRlIG1vYmlsZSB0b2dnbGVyXG5cdFx0XHRcdC5zaWRlYmFyLW1vYmlsZS10b2dnbGVyIHtcblx0XHRcdFx0XHRkaXNwbGF5OiBub25lO1xuXHRcdFx0XHR9XG5cblx0XHRcdFx0Ly8gSW4gZnVsbHNjcmVlbiBtb2RlXG5cdFx0XHRcdCYuc2lkZWJhci1mdWxsc2NyZWVuIHtcblx0XHRcdFx0XHR3aWR0aDogJHNpZGViYXItYmFzZS13aWR0aDtcblx0XHRcdFx0fVxuXG5cdFx0XHRcdC8vIEhpZGUgc3BjaWZpYyBzaWRlYmFyc1xuXHRcdFx0XHQuc2lkZWJhci1tYWluLWhpZGRlbiAmLnNpZGViYXItbWFpbixcblx0XHRcdFx0LnNpZGViYXItY29tcG9uZW50LWhpZGRlbiAmLnNpZGViYXItY29tcG9uZW50LFxuXHRcdFx0XHQuc2lkZWJhci1zZWNvbmRhcnktaGlkZGVuICYuc2lkZWJhci1zZWNvbmRhcnksXG5cdFx0XHRcdC5zaWRlYmFyLW1vYmlsZS1yaWdodCAmLnNpZGViYXItcmlnaHQge1xuXHRcdFx0XHRcdGRpc3BsYXk6IG5vbmU7XG5cdFx0XHRcdH1cblxuXHRcdFx0XHQvLyBSaWdodCBzaWRlYmFyXG5cdFx0XHRcdCYuc2lkZWJhci1yaWdodCB7XG5cdFx0XHRcdFx0ZGlzcGxheTogbm9uZTtcblxuXHRcdFx0XHRcdC8vIFNob3cgaWYgLnNpZGViYXItcmlnaHQtdmlzaWJsZSBpcyBhZGRlZCB0byA8Ym9keT5cblx0XHRcdFx0XHQuc2lkZWJhci1yaWdodC12aXNpYmxlICYge1xuXHRcdFx0XHRcdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHR9XG5cblx0XHRcdFx0Ly8gQ290bmVudCBzaWRlYmFyXG5cdFx0XHRcdCYuc2lkZWJhci1jb21wb25lbnQge1xuXHRcdFx0XHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdFx0XHRcdHdpZHRoOiAkc2lkZWJhci1iYXNlLXdpZHRoO1xuXG5cdFx0XHRcdFx0Ly8gTGVmdCBhbGlnbm1lbnRcblx0XHRcdFx0XHQmLWxlZnQge1xuXHRcdFx0XHRcdFx0bWFyZ2luLXJpZ2h0OiAkZ3JpZC1ndXR0ZXItd2lkdGg7XG5cdFx0XHRcdFx0fVxuXG5cdFx0XHRcdFx0Ly8gUmlnaHQgYWxpZ25tZW50XG5cdFx0XHRcdFx0Ji1yaWdodCB7XG5cdFx0XHRcdFx0XHRtYXJnaW4tbGVmdDogJGdyaWQtZ3V0dGVyLXdpZHRoO1xuXHRcdFx0XHRcdH1cblx0XHRcdFx0fVxuXHRcdFx0fVxuXG5cdFx0XHRAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oJGJyZWFrcG9pbnQpIHtcblx0XHRcdFx0Jjpub3QoLnNpZGViYXItY29tcG9uZW50KSB7XG5cdFx0XHRcdFx0Ym9yZGVyOiAwO1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG59XG5cblxuXG4vLyBTaWRlYmFyIGNvbXBvbmVudHNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4vLyBTaWRlYmFyIHNlY3Rpb25zIHVzZSBjYXJkc1xuLnNpZGViYXIge1xuXHQmOm5vdCguYmctdHJhbnNwYXJlbnQpIHtcblx0XHQuY2FyZCB7XG5cdFx0XHRib3JkZXItd2lkdGg6IDA7XG5cdFx0XHRtYXJnaW4tYm90dG9tOiAwO1xuXHRcdFx0QGluY2x1ZGUgYm9yZGVyLXJhZGl1cygwKTtcblx0XHRcdEBpbmNsdWRlIGJveC1zaGFkb3cobm9uZSk7XG5cblx0XHRcdC8vIE5lc3RlZCBjYXJkXG5cdFx0XHQuY2FyZCB7XG5cdFx0XHRcdGJvcmRlci13aWR0aDogJGNhcmQtYm9yZGVyLXdpZHRoO1xuXHRcdFx0fVxuXG5cdFx0XHQvLyBSZW1vdmUgYmFja2dyb3VuZCBjb2xvciBpZiBpdCdzIG5vdCBzZXRcblx0XHRcdCY6bm90KFtjbGFzcyo9YmctXSk6bm90KC5maXhlZC10b3ApIHtcblx0XHRcdFx0YmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG5cblx0Ly8gRm9vdGVyXG5cdC5jYXJkLWZvb3RlciB7XG5cdFx0Ym9yZGVyLWJvdHRvbTogJGNhcmQtYm9yZGVyLXdpZHRoIHNvbGlkICRjYXJkLWJvcmRlci1jb2xvcjtcblx0fVxufVxuXG4vLyBNYWtlIGdyaWQgZ3V0dGVyIHNtYWxsZXJcbi5zaWRlYmFyIHtcblx0LnJvdzpub3QoLm5vLWd1dHRlcnMpIHtcblx0XHRtYXJnaW4tbGVmdDogLSgkZ3JpZC1ndXR0ZXItd2lkdGggLyA0KTtcblx0XHRtYXJnaW4tcmlnaHQ6IC0oJGdyaWQtZ3V0dGVyLXdpZHRoIC8gNCk7XG5cblx0XHRbY2xhc3MqPWNvbF0ge1xuXHRcdFx0cGFkZGluZy1sZWZ0OiAoJGdyaWQtZ3V0dGVyLXdpZHRoIC8gNCk7XG5cdFx0XHRwYWRkaW5nLXJpZ2h0OiAoJGdyaWQtZ3V0dGVyLXdpZHRoIC8gNCk7XHRcblx0XHR9XG5cdH1cbn1cblxuLy8gUmVtb3ZlIGJvdHRvbSBtYXJnaW4gZnJvbSB0aGUgbGFzdCBmb3IgZ3JvdXBcbi5zaWRlYmFyIHtcblx0LmZvcm0tZ3JvdXA6bGFzdC1jaGlsZCB7XG5cdFx0bWFyZ2luLWJvdHRvbTogMDtcblx0fVxufVxuXG5cbi8vXG4vLyBUYWJzXG4vL1xuXG4vLyBCYXNpYyBzdHlsZXNcbi5zaWRlYmFyIHtcblxuXHQvLyBCYXNlXG5cdC5uYXYtdGFicyB7XG5cblx0XHQvLyBUYWIgbmF2IGl0ZW1cblx0XHQubmF2LWl0ZW0ge1xuXHRcdFx0JjpmaXJzdC1jaGlsZCAubmF2LWxpbmsge1xuXHRcdFx0XHRib3JkZXItbGVmdDogMDtcblx0XHRcdH1cblx0XHRcdCY6bGFzdC1jaGlsZCAubmF2LWxpbmsge1xuXHRcdFx0XHRib3JkZXItcmlnaHQ6IDA7XG5cdFx0XHR9XG5cdFx0fVxuXG5cdFx0Ly8gVGFiIG5hdiBsaW5rXG5cdFx0Lm5hdi1saW5rIHtcblx0XHRcdGJvcmRlci10b3A6IDA7XG5cdFx0XHRib3JkZXItYm90dG9tLXdpZHRoOiAwO1xuXG5cdFx0XHQvLyBBY3RpdmUgc3RhdGVcblx0XHRcdCYuYWN0aXZlIHtcblx0XHRcdFx0Ym9yZGVyLWJvdHRvbS1jb2xvcjogdHJhbnNwYXJlbnQ7XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG5cblx0Ly8gSW4gZGFyayBzaWRlYmFyXG5cdCYtZGFyayB7XG5cdFx0Lm5hdi10YWJzIHtcblx0XHRcdGJhY2tncm91bmQtY29sb3I6ICRzaWRlYmFyLWRhcmstdGFicy1iZztcblx0XHRcdGJvcmRlci1ib3R0b20tY29sb3I6ICRzaWRlYmFyLWRhcmstYm9yZGVyLWNvbG9yO1xuXG5cdFx0XHQvLyBMaW5rXG5cdFx0XHQubmF2LWxpbmsge1xuXHRcdFx0XHRjb2xvcjogJG5hdmlnYXRpb24tZGFyay1jb2xvcjtcdFx0XHRcblxuXHRcdFx0XHQvLyBIb3ZlciBzdGF0ZVxuXHRcdFx0XHRAaW5jbHVkZSBob3Zlci1mb2N1cyB7XG5cdFx0XHRcdFx0Y29sb3I6ICRuYXZpZ2F0aW9uLWRhcmstaG92ZXItY29sb3I7XG5cdFx0XHRcdH1cblxuXHRcdFx0XHQvLyBBY3RpdmUgc3RhdGVcblx0XHRcdFx0Ji5hY3RpdmUge1xuXHRcdFx0XHRcdGNvbG9yOiAkbmF2aWdhdGlvbi1kYXJrLWFjdGl2ZS1jb2xvcjtcblx0XHRcdFx0fVxuXHRcdFx0fVxuXG5cdFx0XHQvLyBFeGNsdWRlIGJvdHRvbSB0YWJzIGZyb20gYWN0aXZlIHN0YXRlIGJhY2tncm91bmQgc3R5bGluZ1xuXHRcdFx0Jjpub3QoLm5hdi10YWJzLWJvdHRvbSkge1xuXHRcdFx0XHQubmF2LWxpbmsuYWN0aXZlIHtcblx0XHRcdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkc2lkZWJhci1kYXJrLWJnO1xuXHRcdFx0XHRcdGJvcmRlci1jb2xvcjogJHNpZGViYXItZGFyay1ib3JkZXItY29sb3I7XG5cdFx0XHRcdH1cblx0XHRcdH1cblxuXHRcdFx0Ly8gRHJvcGRvd25cblx0XHRcdC5uYXYtaXRlbS5zaG93IHtcblx0XHRcdFx0Lm5hdi1saW5rOm5vdCguYWN0aXZlKSB7XG5cdFx0XHRcdFx0Y29sb3I6ICRuYXZpZ2F0aW9uLWRhcmstYWN0aXZlLWNvbG9yO1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG5cblx0Ly8gSW4gbGlnaHQgc2lkZWJhclxuXHQmLWxpZ2h0IHtcblx0XHQubmF2LXRhYnMge1xuXHRcdFx0YmFja2dyb3VuZC1jb2xvcjogJHNpZGViYXItbGlnaHQtdGFicy1iZztcblx0XHRcdGJvcmRlci1ib3R0b20tY29sb3I6ICRzaWRlYmFyLWxpZ2h0LWJvcmRlci1jb2xvcjtcblxuXHRcdFx0Ly8gTGlua1xuXHRcdFx0Lm5hdi1saW5rIHtcblxuXHRcdFx0XHQvLyBIb3ZlciBzdGF0ZVxuXHRcdFx0XHRAaW5jbHVkZSBob3Zlci1mb2N1cyB7XG5cdFx0XHRcdFx0Y29sb3I6ICRuYXZpZ2F0aW9uLWxpZ2h0LWhvdmVyLWNvbG9yO1xuXHRcdFx0XHR9XG5cblx0XHRcdFx0Ly8gQWN0aXZlIHN0YXRlXG5cdFx0XHRcdCYuYWN0aXZlIHtcblx0XHRcdFx0XHRjb2xvcjogJG5hdmlnYXRpb24tbGlnaHQtaG92ZXItY29sb3I7XG5cdFx0XHRcdH1cblx0XHRcdH1cblxuXHRcdFx0Ly8gRXhjbHVkZSBib3R0b20gdGFicyBmcm9tIGFjdGl2ZSBzdGF0ZSBiYWNrZ3JvdW5kIHN0eWxpbmdcblx0XHRcdCY6bm90KC5uYXYtdGFicy1ib3R0b20pIHtcblx0XHRcdFx0Lm5hdi1saW5rLmFjdGl2ZSB7XG5cdFx0XHRcdFx0YmFja2dyb3VuZC1jb2xvcjogJHNpZGViYXItbGlnaHQtYmc7XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHR9XG5cdH1cbn1cblxuXG4vL1xuLy8gQnV0dG9uIGdyb3VwXG4vL1xuXG4ucm93LXRpbGUge1xuXHRkaXZbY2xhc3MqPWNvbF0ge1xuXG5cdFx0Ly9cblx0XHQvLyBSb3VuZGVkIGNvcm5lcnNcblx0XHQvL1xuXG5cdFx0Ly8gUmVtb3ZlIHJvdW5kZWQgY29ybmVycyBmcm9tIGFsbCBidXR0b25zXG5cdFx0LmJ0biB7XG5cdFx0XHRAaW5jbHVkZSBib3JkZXItcmFkaXVzKDApO1xuXHRcdH1cblxuXHRcdC8vIEtlZXAgbGVmdCByb3VuZGVkIGNvcm5lcnMgZm9yIHRoZSBmaXJzdCBhbmQgbGFzdCBidXR0b25zIG9ubHlcblx0XHQmOmZpcnN0LWNoaWxkIHtcblx0XHRcdC5idG4ge1xuXHRcdFx0XHQmOmZpcnN0LWNoaWxkIHtcblx0XHRcdFx0XHRAaWYgJGVuYWJsZS1yb3VuZGVkIHtcblx0XHRcdFx0XHRcdGJvcmRlci10b3AtbGVmdC1yYWRpdXM6ICRib3JkZXItcmFkaXVzO1xuXHRcdFx0XHRcdH1cblx0XHRcdFx0fVxuXHRcdFx0XHQmOmxhc3QtY2hpbGQge1xuXHRcdFx0XHRcdEBpZiAkZW5hYmxlLXJvdW5kZWQge1xuXHRcdFx0XHRcdFx0Ym9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogJGJvcmRlci1yYWRpdXM7XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0fVxuXG5cdFx0Ly8gS2VlcCByaWdodCByb3VuZGVkIGNvcm5lcnMgZm9yIHRoZSBmaXJzdCBhbmQgbGFzdCBidXR0b25zIG9ubHlcblx0XHQmOmxhc3QtY2hpbGQge1xuXHRcdFx0LmJ0biB7XG5cdFx0XHRcdCY6Zmlyc3QtY2hpbGQge1xuXHRcdFx0XHRcdEBpZiAkZW5hYmxlLXJvdW5kZWQge1xuXHRcdFx0XHRcdFx0Ym9yZGVyLXRvcC1yaWdodC1yYWRpdXM6ICRib3JkZXItcmFkaXVzO1xuXHRcdFx0XHRcdH1cblx0XHRcdFx0fVxuXHRcdFx0XHQmOmxhc3QtY2hpbGQge1xuXHRcdFx0XHRcdEBpZiAkZW5hYmxlLXJvdW5kZWQge1xuXHRcdFx0XHRcdFx0Ym9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6ICRib3JkZXItcmFkaXVzO1xuXHRcdFx0XHRcdH1cblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdH1cblxuXHRcdC8vXG5cdFx0Ly8gQm9yZGVyc1xuXHRcdC8vXG5cblx0XHQvLyBSZW1vdmUgdG9wIGJvcmRlcnNcblx0XHQuYnRuICsgLmJ0biB7XG5cdFx0XHRib3JkZXItdG9wOiAwO1xuXHRcdH1cblxuXHRcdC8vIFJlbW92ZSBsZWZ0IGJvcmRlcnNcblx0XHQrIGRpdltjbGFzcyo9Y29sXSB7XG5cdFx0XHQuYnRuIHtcblx0XHRcdFx0Ym9yZGVyLWxlZnQ6IDA7XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG59XG4iLCIvKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAqXG4gKiAgIyBCb3hlZCBsYXlvdXRcbiAqXG4gKiAgU3R5bGVzIGZvciBtYWluIHN0cnVjdHVyZSBvZiBjb250ZW50IGFyZWEgaW4gYm94ZWQgbGF5b3V0XG4gKlxuICogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuXG4vLyBDaGVjayBpZiBjb21wb25lbnQgaXMgZW5hYmxlZFxuQGlmICRlbmFibGUtYm94ZWQge1xuXG4gICAgLy8gQ2xhc3MgZm9yIGJvZHksIGFkZHMgYmFja2dyb3VuZCBjb2xvci9pbWFnZVxuICAgIC5sYXlvdXQtYm94ZWQtYmcge1xuICAgICAgICBiYWNrZ3JvdW5kOiAkYm94ZWQtYmc7IC8vIG1haW5seSBmb3IgZGVtbywgdXNlIHdoYXRldmVyIHlvdSB3YW50XG4gICAgfVxuICAgIFxuICAgIC8vIEJveGVkIGxheW91dCBiYXNlXG4gICAgLmxheW91dC1ib3hlZCB7XG4gICAgICAgIEBpbmNsdWRlIGJveC1zaGFkb3coJGJveGVkLWNvbnRhaW5lci1ib3gtc2hhZG93KTtcblxuICAgICAgICAvLyBTaXppbmdcbiAgICAgICAgJixcbiAgICAgICAgPiAubmF2YmFyIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobGcpIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogbWFwLWdldCgkZ3JpZC1icmVha3BvaW50cywgXCJsZ1wiKTtcbiAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKHhsKSB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IG1hcC1nZXQoJGdyaWQtYnJlYWtwb2ludHMsIFwieGxcIik7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAvLyBQYWdlIGNvbnRhaW5lclxuICAgICAgICAucGFnZS1jb250ZW50IHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRib2R5LWJnO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLy8gQm94ZWQgY29udGVudCBzZWN0aW9uXG4gICAgLmNvbnRlbnQtYm94ZWQge1xuICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKGxnKSB7XG4gICAgICAgICAgICAmOm5vdCgubmF2YmFyLWNvbGxhcHNlKSB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDYlO1xuICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogNiU7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC8vIEluc2lkZSBuYXZiYXJcbiAgICAgICAgICAgIC5uYXZiYXIgPiAmIHtcbiAgICAgICAgICAgICAgICA+ICo6Zmlyc3QtY2hpbGQge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogNiU7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgID4gKjpsYXN0LWNoaWxkIHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiA2JTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC8vIEluc2lkZSBicmVhZGNydW1iIGxpbmVcbiAgICAgICAgICAgIC5icmVhZGNydW1iLWxpbmUgPiAmIHtcbiAgICAgICAgICAgICAgICA+ICo6Zmlyc3QtY2hpbGQge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogJGNvbnRlbnQtY29udGFpbmVyLXBhZGRpbmcteDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgPiAqOmxhc3QtY2hpbGQge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6ICRjb250ZW50LWNvbnRhaW5lci1wYWRkaW5nLXg7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuIiwiLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gKlxuICogICMgQ29tcG9uZW50c1xuICpcbiAqICBDb21wb25lbnRzIGltcG9ydC4gT3JkZXJpbmcgbWF0dGVycy4gU2VlIF9jb25maWcuc2NzcyBmb3IgbW9yZSBvcHRpb25zXG4gKlxuICogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuXG5cbi8vIENvcmVcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4vLyBJbXBvcnQgY3VzdG9tIHRlbXBsYXRlIGNvbmZpZ1xuQGltcG9ydCBcIi4uLy4uLy4uLy4uL2NvbmZpZ1wiO1xuQGltcG9ydCBcIi4uLy4uLy4uLy4uL3NoYXJlZC91dGlscy9sbC1mdW5jdGlvbnNcIjtcbkBpbXBvcnQgXCIuLi8uLi8uLi8uLi9zaGFyZWQvdXRpbHMvbGwtbWl4aW5zXCI7XG5AaW1wb3J0IFwiLi4vLi4vLi4vLi4vdGhlbWVzL2RlZmF1bHQvY29sb3JzL3BhbGV0dGVcIjtcblxuLy8gQ29yZSB2YXJpYWJsZXMgYW5kIG1peGluc1xuQGltcG9ydCBcIn5ib290c3RyYXAvc2Nzcy9mdW5jdGlvbnNcIjtcbkBpbXBvcnQgXCJ+Ym9vdHN0cmFwL3Njc3MvdmFyaWFibGVzXCI7XG5AaW1wb3J0IFwifmJvb3RzdHJhcC9zY3NzL21peGluc1wiO1xuXG4vLyBJbXBvcnQgdGVtcGxhdGUncyB2YXJpYWJsZXNcbkBpbXBvcnQgXCIuLi92YXJpYWJsZXMvdmFyaWFibGVzLWNvcmVcIjtcbkBpbXBvcnQgXCIuLi92YXJpYWJsZXMvdmFyaWFibGVzLWN1c3RvbVwiO1xuQGltcG9ydCBcIi4uLy4uLy4uLy4uL3RoZW1lcy9kZWZhdWx0L2Jvb3RzdHJhcF9saW1pdGxlc3MvbWl4aW5zXCI7XG5cbi8vIEZPVUMgaGVscGVyc1xuQGltcG9ydCBcIi4uLy4uLy4uLy4uL3NoYXJlZC91dGlscy9mb3VjXCI7XG5cblxuLy8gUGFnZSBsb2FkZXJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4vLyBQYWNlIHBhZ2UgbG9hZGVyXG5AaW1wb3J0IFwiLi4vLi4vLi4vLi4vc2hhcmVkL3BhY2UvdGhlbWUtZGVmYXVsdFwiO1xuXG4vLyBQYWNlLmpzIGRlbW8sIHJlbW92ZSBpbiByZWFsIHByb2plY3RcbkBpbXBvcnQgXCIuLi8uLi8uLi8uLi9zaGFyZWQvcGFjZS9wYWNlLWRlbW9cIjtcblxuXG4vLyBGb3Jtc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi8vIFVuaWZvcm1cbkBpbXBvcnQgXCIuLi8uLi8uLi8uLi90aGVtZXMvZGVmYXVsdC9jb21wb25lbnRzL2Zvcm1zL3VuaWZvcm1cIjtcblxuLy8gU3dpdGNoZXJ5XG5AaW1wb3J0IFwiLi4vLi4vLi4vLi4vdGhlbWVzL2RlZmF1bHQvY29tcG9uZW50cy9mb3Jtcy9zd2l0Y2hlcnlcIjtcblxuLy8gQlMgc3dpdGNoXG5AaW1wb3J0IFwiLi4vLi4vLi4vLi4vdGhlbWVzL2RlZmF1bHQvY29tcG9uZW50cy9mb3Jtcy9ib290c3RyYXAtc3dpdGNoXCI7XG5cblxuLy8gU2VsZWN0MlxuQGltcG9ydCBcIi4uLy4uLy4uLy4uL3RoZW1lcy9kZWZhdWx0L2NvbXBvbmVudHMvZm9ybXMvc2VsZWN0MlwiO1xuXG4vLyBNdWx0aXNlbGVjdFxuQGltcG9ydCBcIi4uLy4uLy4uLy4uL3RoZW1lcy9kZWZhdWx0L2NvbXBvbmVudHMvZm9ybXMvbXVsdGlzZWxlY3RcIjtcblxuXG4vLyBQYXNzeVxuQGltcG9ydCBcIi4uLy4uLy4uLy4uL3RoZW1lcy9kZWZhdWx0L2NvbXBvbmVudHMvZm9ybXMvcGFzc3lcIjtcblxuLy8gVHlwZWFoZWFkXG5AaW1wb3J0IFwiLi4vLi4vLi4vLi4vdGhlbWVzL2RlZmF1bHQvY29tcG9uZW50cy9mb3Jtcy90eXBlYWhlYWRcIjtcblxuLy8gVmFsaWRhdGlvblxuQGltcG9ydCBcIi4uLy4uLy4uLy4uL3RoZW1lcy9kZWZhdWx0L2NvbXBvbmVudHMvZm9ybXMvdmFsaWRhdGlvblwiO1xuXG4vLyBGbG9hdGluZyBsYWJlbHNcbkBpbXBvcnQgXCIuLi8uLi8uLi8uLi90aGVtZXMvZGVmYXVsdC9jb21wb25lbnRzL2Zvcm1zL2Zsb2F0aW5nLWxhYmVsc1wiO1xuXG4vLyBBbHBhY2FcbkBpbXBvcnQgXCIuLi8uLi8uLi8uLi90aGVtZXMvZGVmYXVsdC9jb21wb25lbnRzL2Zvcm1zL2FscGFjYVwiO1xuXG5cbi8vIFRva2VuZmllbGRcbkBpbXBvcnQgXCIuLi8uLi8uLi8uLi90aGVtZXMvZGVmYXVsdC9jb21wb25lbnRzL2Zvcm1zL3Rva2VuZmllbGRcIjtcblxuLy8gVGFncyBpbnB1dFxuQGltcG9ydCBcIi4uLy4uLy4uLy4uL3RoZW1lcy9kZWZhdWx0L2NvbXBvbmVudHMvZm9ybXMvdGFncy1pbnB1dFwiO1xuXG5cbi8vIFRvdWNoc3BpbiBzcGlubmVyc1xuQGltcG9ydCBcIi4uLy4uLy4uLy4uL3RoZW1lcy9kZWZhdWx0L2NvbXBvbmVudHMvZm9ybXMvdG91Y2hzcGluXCI7XG5cbi8vIER1YWwgbGlzdGJveGVzXG5AaW1wb3J0IFwiLi4vLi4vLi4vLi4vdGhlbWVzL2RlZmF1bHQvY29tcG9uZW50cy9mb3Jtcy9kdWFsLWxpc3Rib3hcIjtcblxuXG4vLyBXaXphcmRcbkBpbXBvcnQgXCIuLi8uLi8uLi8uLi90aGVtZXMvZGVmYXVsdC9jb21wb25lbnRzL2Zvcm1zL3dpemFyZFwiO1xuXG5cbi8vIFRleHQgZWRpdG9yc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi8vIFN1bW1lcm5vdGVcbkBpbXBvcnQgXCIuLi8uLi8uLi8uLi90aGVtZXMvZGVmYXVsdC9jb21wb25lbnRzL2Zvcm1zL2VkaXRvcnMvc3VtbWVybm90ZVwiO1xuXG4vLyBUcnVtYm93eWdcbkBpbXBvcnQgXCIuLi8uLi8uLi8uLi90aGVtZXMvZGVmYXVsdC9jb21wb25lbnRzL2Zvcm1zL2VkaXRvcnMvdHJ1bWJvd3lnXCI7XG5cbi8vIEFjZVxuQGltcG9ydCBcIi4uLy4uLy4uLy4uL3RoZW1lcy9kZWZhdWx0L2NvbXBvbmVudHMvZm9ybXMvZWRpdG9ycy9hY2VcIjtcblxuXG4vLyBQaWNrZXJzXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLy8gRGF0ZXJhbmdlIHBpY2tlclxuQGltcG9ydCBcIi4uLy4uLy4uLy4uL3RoZW1lcy9kZWZhdWx0L2NvbXBvbmVudHMvcGlja2Vycy9kYXRlcmFuZ2VcIjtcblxuLy8gUGlja2FkYXRlIGJhc2VcbkBpbXBvcnQgXCIuLi8uLi8uLi8uLi90aGVtZXMvZGVmYXVsdC9jb21wb25lbnRzL3BpY2tlcnMvcGlja2FkYXRlL2Jhc2VcIjtcblxuLy8gUGlja2FkYXRlIGRhdGUgcGlja2VyXG5AaW1wb3J0IFwiLi4vLi4vLi4vLi4vdGhlbWVzL2RlZmF1bHQvY29tcG9uZW50cy9waWNrZXJzL3BpY2thZGF0ZS9kYXRlXCI7XG5cbi8vIFBpY2thZGF0ZSB0aW1lIHBpY2tlclxuQGltcG9ydCBcIi4uLy4uLy4uLy4uL3RoZW1lcy9kZWZhdWx0L2NvbXBvbmVudHMvcGlja2Vycy9waWNrYWRhdGUvdGltZVwiO1xuXG4vLyBBbnl0aW1lIHBpY2tlclxuQGltcG9ydCBcIi4uLy4uLy4uLy4uL3RoZW1lcy9kZWZhdWx0L2NvbXBvbmVudHMvcGlja2Vycy9hbnl0aW1lXCI7XG5cbi8vIENvbG9yIHBpY2tlclxuQGltcG9ydCBcIi4uLy4uLy4uLy4uL3RoZW1lcy9kZWZhdWx0L2NvbXBvbmVudHMvcGlja2Vycy9zcGVjdHJ1bVwiO1xuXG5cbi8vIEZpbGUgdXBsb2FkZXJzXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLy8gUGx1cGxvYWRcbkBpbXBvcnQgXCIuLi8uLi8uLi8uLi90aGVtZXMvZGVmYXVsdC9jb21wb25lbnRzL2Zvcm1zL3VwbG9hZGVycy9wbHVwbG9hZFwiO1xuXG4vLyBGaWxlIGlucHV0XG5AaW1wb3J0IFwiLi4vLi4vLi4vLi4vdGhlbWVzL2RlZmF1bHQvY29tcG9uZW50cy9mb3Jtcy91cGxvYWRlcnMvZmlsZS1pbnB1dFwiO1xuXG4vLyBEcm9wem9uZVxuQGltcG9ydCBcIi4uLy4uLy4uLy4uL3RoZW1lcy9kZWZhdWx0L2NvbXBvbmVudHMvZm9ybXMvdXBsb2FkZXJzL2Ryb3B6b25lXCI7XG5cblxuLy8gTm90aWZpY2F0aW9uc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi8vIE5vdHkgbm90aWZpY2F0aW9uc1xuQGltcG9ydCBcIi4uLy4uLy4uLy4uL3RoZW1lcy9kZWZhdWx0L2NvbXBvbmVudHMvbm90aWZpY2F0aW9ucy9ub3R5XCI7XG5cbi8vIFBOb3RpZnkgbm90aWZpY2F0aW9uc1xuQGltcG9ydCBcIi4uLy4uLy4uLy4uL3RoZW1lcy9kZWZhdWx0L2NvbXBvbmVudHMvbm90aWZpY2F0aW9ucy9wbm90aWZ5XCI7XG5cbi8vIGpHcm93bCBub3RpZmljYXRpb25zXG5AaW1wb3J0IFwiLi4vLi4vLi4vLi4vdGhlbWVzL2RlZmF1bHQvY29tcG9uZW50cy9ub3RpZmljYXRpb25zL2pncm93bC5zY3NzXCI7XG5cbi8vIFN3ZWV0IEFsZXJ0c1xuQGltcG9ydCBcIi4uLy4uLy4uLy4uL3RoZW1lcy9kZWZhdWx0L2NvbXBvbmVudHMvbm90aWZpY2F0aW9ucy9zd2VldC1hbGVydHNcIjtcblxuXG4vLyBTbGlkZXJzXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLy8gU2xpZGVyIHBpcHNcbkBpbXBvcnQgXCIuLi8uLi8uLi8uLi90aGVtZXMvZGVmYXVsdC9jb21wb25lbnRzL3NsaWRlcnMvc2xpZGVyLXBpcHNcIjtcblxuLy8gTm9VSSBzbGlkZXJcbkBpbXBvcnQgXCIuLi8uLi8uLi8uLi90aGVtZXMvZGVmYXVsdC9jb21wb25lbnRzL3NsaWRlcnMvbm91aS1zbGlkZXJcIjtcblxuLy8gSW9uIHJhbmdlIHNsaWRlclxuQGltcG9ydCBcIi4uLy4uLy4uLy4uL3RoZW1lcy9kZWZhdWx0L2NvbXBvbmVudHMvc2xpZGVycy9pb24tcmFuZ2Utc2xpZGVyXCI7XG5cblxuLy8galF1ZXJ5IFVJIGNvbXBvbmVudHNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4vLyBJbnRlcmFjdGlvbnNcbkBpbXBvcnQgXCIuLi8uLi8uLi8uLi90aGVtZXMvZGVmYXVsdC9jb21wb25lbnRzL2pxdWVyeV91aS9pbnRlcmFjdGlvbnNcIjtcblxuLy8gV2lkZ2V0c1xuQGltcG9ydCBcIi4uLy4uLy4uLy4uL3RoZW1lcy9kZWZhdWx0L2NvbXBvbmVudHMvanF1ZXJ5X3VpL3dpZGdldHNcIjtcblxuXG4vLyBVSSBjb21wb25lbnRzXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLy8gUHJpc20gLSBzeW50YXggaGlnaGxpZ2h0ZXJcbkBpbXBvcnQgXCIuLi8uLi8uLi8uLi90aGVtZXMvZGVmYXVsdC9jb21wb25lbnRzL3VpL3ByaXNtXCI7XG5cbi8vIFNsaW5reSAtIG11bHRpIGxldmVsIGRyaWxsZG93biBtZW51XG5AaW1wb3J0IFwiLi4vLi4vLi4vLi4vdGhlbWVzL2RlZmF1bHQvY29tcG9uZW50cy91aS9zbGlua3lcIjtcblxuLy8gU3RpY2t5IGtpdFxuQGltcG9ydCBcIi4uLy4uLy4uLy4uL3RoZW1lcy9kZWZhdWx0L2NvbXBvbmVudHMvdWkvc3RpY2t5XCI7XG5cbi8vIEhlYWRyb29tIC0gaGhpZGUgbmF2YmFyIG9uIHNjcm9sbFxuQGltcG9ydCBcIi4uLy4uLy4uLy4uL3RoZW1lcy9kZWZhdWx0L2NvbXBvbmVudHMvdWkvaGVhZHJvb21cIjtcblxuLy8gRHJhZ3VsYVxuQGltcG9ydCBcIi4uLy4uLy4uLy4uL3RoZW1lcy9kZWZhdWx0L2NvbXBvbmVudHMvdWkvZHJhZ3VsYVwiO1xuXG4vLyBQZXJmZWN0IHNjcm9sbGJhclxuQGltcG9ydCBcIi4uLy4uLy4uLy4uL3RoZW1lcy9kZWZhdWx0L2NvbXBvbmVudHMvdWkvcGVyZmVjdC1zY3JvbGxiYXJcIjtcblxuXG4vLyBNaXNjIGNvbXBvbmVudHNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4vLyBbTWF0ZXJpYWxdIEZsb2F0aW5nIGFjdGlvbiBidXR0b25zXG5AaW1wb3J0IFwiLi4vLi4vLi4vLi4vdGhlbWVzL2RlZmF1bHQvY29tcG9uZW50cy9taXNjL2ZhYlwiO1xuXG4vLyBGYW5jeXRyZWVcbkBpbXBvcnQgXCIuLi8uLi8uLi8uLi90aGVtZXMvZGVmYXVsdC9jb21wb25lbnRzL21pc2MvZmFuY3l0cmVlXCI7XG5cbi8vIFByb2dyZXNzIGJ1dHRvbnNcbkBpbXBvcnQgXCIuLi8uLi8uLi8uLi90aGVtZXMvZGVmYXVsdC9jb21wb25lbnRzL21pc2MvcHJvZ3Jlc3MtYnV0dG9uc1wiO1xuXG4vLyBGdWxsIGNhbGVuZGFyXG5AaW1wb3J0IFwiLi4vLi4vLi4vLi4vdGhlbWVzL2RlZmF1bHQvY29tcG9uZW50cy9taXNjL2Z1bGxjYWxlbmRhci5zY3NzXCI7XG5cbi8vIEltYWdlIGNyb3BwZXJcbkBpbXBvcnQgXCIuLi8uLi8uLi8uLi90aGVtZXMvZGVmYXVsdC9jb21wb25lbnRzL21pc2MvaW1hZ2UtY3JvcHBlclwiO1xuXG4vLyBMaWdodGJveCBwbHVnaW5cbkBpbXBvcnQgXCIuLi8uLi8uLi8uLi90aGVtZXMvZGVmYXVsdC9jb21wb25lbnRzL21pc2MvZmFuY3lib3hcIjtcblxuXG4vLyBUYWJsZXNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4vLyBGb290YWJsZSAtIHJlc3BvbnNpdmUgdGFibGUgdG9vbHNcbkBpbXBvcnQgXCIuLi8uLi8uLi8uLi90aGVtZXMvZGVmYXVsdC9jb21wb25lbnRzL3RhYmxlcy9mb290YWJsZVwiO1xuXG5cbi8vIEhhbmRzb250YWJsZVxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi8vIEhhbmRzb250YWJsZSAtIGV4Y2VsLWxpa2Ugc3ByZWFkc2hlZXQgZm9yIGFwcHNcbkBpbXBvcnQgXCIuLi8uLi8uLi8uLi90aGVtZXMvZGVmYXVsdC9jb21wb25lbnRzL3RhYmxlcy9oYW5kc29udGFibGVcIjtcblxuXG4vLyBEYXRhdGFibGVzXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLy8gQ29yZVxuQGltcG9ydCBcIi4uLy4uLy4uLy4uL3RoZW1lcy9kZWZhdWx0L2NvbXBvbmVudHMvdGFibGVzL2RhdGF0YWJsZXMvZGF0YXRhYmxlc1wiO1xuXG4vLyBEYXRhdGFibGVzIC0gY29sdW1ucyByZW9yZGVyXG5AaW1wb3J0IFwiLi4vLi4vLi4vLi4vdGhlbWVzL2RlZmF1bHQvY29tcG9uZW50cy90YWJsZXMvZGF0YXRhYmxlcy9kYXRhdGFibGUtY29sdW1ucy1yZW9yZGVyXCI7XG5cbi8vIERhdGF0YWJsZXMgLSByb3dzIHJlb3JkZXJcbkBpbXBvcnQgXCIuLi8uLi8uLi8uLi90aGVtZXMvZGVmYXVsdC9jb21wb25lbnRzL3RhYmxlcy9kYXRhdGFibGVzL2RhdGF0YWJsZS1yb3dzLXJlb3JkZXJcIjtcblxuLy8gRGF0YXRhYmxlcyAtIGZpeGVkIGNvbHVtbnNcbkBpbXBvcnQgXCIuLi8uLi8uLi8uLi90aGVtZXMvZGVmYXVsdC9jb21wb25lbnRzL3RhYmxlcy9kYXRhdGFibGVzL2RhdGF0YWJsZS1maXhlZC1jb2x1bW5zXCI7XG5cbi8vIERhdGF0YWJsZXMgLSBmaXhlZCBoZWFkZXJcbkBpbXBvcnQgXCIuLi8uLi8uLi8uLi90aGVtZXMvZGVmYXVsdC9jb21wb25lbnRzL3RhYmxlcy9kYXRhdGFibGVzL2RhdGF0YWJsZS1maXhlZC1oZWFkZXJcIjtcblxuLy8gRGF0YXRhYmxlcyAtIGF1dG9maWxsXG5AaW1wb3J0IFwiLi4vLi4vLi4vLi4vdGhlbWVzL2RlZmF1bHQvY29tcG9uZW50cy90YWJsZXMvZGF0YXRhYmxlcy9kYXRhdGFibGUtYXV0b2ZpbGxcIjtcblxuLy8gRGF0YXRhYmxlcyAtIHNlbGVjdFxuQGltcG9ydCBcIi4uLy4uLy4uLy4uL3RoZW1lcy9kZWZhdWx0L2NvbXBvbmVudHMvdGFibGVzL2RhdGF0YWJsZXMvZGF0YXRhYmxlLXNlbGVjdFwiO1xuXG4vLyBEYXRhdGFibGVzIC0gYnV0dG9uc1xuQGltcG9ydCBcIi4uLy4uLy4uLy4uL3RoZW1lcy9kZWZhdWx0L2NvbXBvbmVudHMvdGFibGVzL2RhdGF0YWJsZXMvZGF0YXRhYmxlLWJ1dHRvbnNcIjtcblxuLy8gRGF0YXRhYmxlcyAtIGtleSB0YWJsZVxuQGltcG9ydCBcIi4uLy4uLy4uLy4uL3RoZW1lcy9kZWZhdWx0L2NvbXBvbmVudHMvdGFibGVzL2RhdGF0YWJsZXMvZGF0YXRhYmxlLWtleXRhYmxlXCI7XG5cbi8vIERhdGF0YWJsZXMgLSBzY3JvbGxlclxuQGltcG9ydCBcIi4uLy4uLy4uLy4uL3RoZW1lcy9kZWZhdWx0L2NvbXBvbmVudHMvdGFibGVzL2RhdGF0YWJsZXMvZGF0YXRhYmxlLXNjcm9sbGVyXCI7XG5cbi8vIERhdGF0YWJsZXMgLSByZXNwb25zaXZlXG5AaW1wb3J0IFwiLi4vLi4vLi4vLi4vdGhlbWVzL2RlZmF1bHQvY29tcG9uZW50cy90YWJsZXMvZGF0YXRhYmxlcy9kYXRhdGFibGUtcmVzcG9uc2l2ZVwiO1xuXG5cbi8vIE1hcHNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4vLyBHb29nbGUgTWFwc1xuQGltcG9ydCBcIi4uLy4uLy4uLy4uL3NoYXJlZC9tYXBzL2dvb2dsZS1tYXBzXCI7XG5cbi8vIGpWZWN0b3JNYXBcbkBpbXBvcnQgXCIuLi8uLi8uLi8uLi9zaGFyZWQvbWFwcy9qdmVjdG9ybWFwXCI7XG5cblxuLy8gQ2hhcnRzXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLy8gQ2hhcnRzIGJhc2VcbkBpbXBvcnQgXCIuLi8uLi8uLi8uLi9zaGFyZWQvY2hhcnRzL2NoYXJ0c1wiO1xuXG4vLyBDMyBjaGFydCBsaWJyYXJ5XG5AaW1wb3J0IFwiLi4vLi4vLi4vLi4vc2hhcmVkL2NoYXJ0cy9jM1wiO1xuXG4vLyBEMyBjaGFydCBsaWJyYXJ5XG5AaW1wb3J0IFwiLi4vLi4vLi4vLi4vc2hhcmVkL2NoYXJ0cy9kM1wiO1xuXG5cbi8vIFBhZ2Uga2l0c1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi8vIEVDb21tZXJjZVxuQGltcG9ydCBcIi4uLy4uLy4uLy4uL3NoYXJlZC9wYWdlcy9lY29tbWVyY2VcIjtcblxuLy8gQmxvZ1xuQGltcG9ydCBcIi4uLy4uLy4uLy4uL3NoYXJlZC9wYWdlcy9ibG9nXCI7XG5cbi8vIFRhc2sgbWFuYWdlclxuQGltcG9ydCBcIi4uLy4uLy4uLy4uL3NoYXJlZC9wYWdlcy90YXNrLW1hbmFnZXJcIjtcblxuLy8gSW5ib3hcbkBpbXBvcnQgXCIuLi8uLi8uLi8uLi9zaGFyZWQvcGFnZXMvaW5ib3hcIjtcblxuLy8gUHJvZmlsZVxuQGltcG9ydCBcIi4uLy4uLy4uLy4uL3NoYXJlZC9wYWdlcy9wcm9maWxlXCI7XG5cbi8vIExvZ2luXG5AaW1wb3J0IFwiLi4vLi4vLi4vLi4vc2hhcmVkL3BhZ2VzL2xvZ2luXCI7XG5cbi8vIFRpbWVsaW5lc1xuQGltcG9ydCBcIi4uLy4uLy4uLy4uL3NoYXJlZC9wYWdlcy90aW1lbGluZXNcIjtcblxuLy8gQ2hhdHNcbkBpbXBvcnQgXCIuLi8uLi8uLi8uLi9zaGFyZWQvcGFnZXMvY2hhdHNcIjtcblxuLy8gRXJyb3IgcGFnZVxuQGltcG9ydCBcIi4uLy4uLy4uLy4uL3NoYXJlZC9wYWdlcy9lcnJvclwiO1xuXG5cbi8vIE90aGVyIGNvbXBvbmVudHNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4vLyBIZWFkaW5nIGVsZW1lbnRzXG5AaW1wb3J0IFwiLi4vLi4vLi4vLi4vdGhlbWVzL2RlZmF1bHQvY29tcG9uZW50cy91aS9oZWFkZXItZWxlbWVudHNcIjtcblxuLy8gSGVscGVyc1xuQGltcG9ydCBcIi4uLy4uLy4uLy4uL3NoYXJlZC91dGlscy9oZWxwZXJzXCI7XG5cbi8vIFBsdWdpbnMgZGVtbywgcmVtb3ZlIGluIHJlYWwgcHJvamVjdFxuQGltcG9ydCBcIi4uLy4uLy4uLy4uL3RoZW1lcy9kZWZhdWx0L2NvbXBvbmVudHMvZGVtb1wiO1xuIiwiLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gKlxuICogICMgRmxhc2ggb2YgdW5zdHlsZWQgY29udGVudCAoRk9VQylcbiAqXG4gKiAgQ1NTIGZpeCBmb3IgRk9VQyBpc3N1ZSwgd2hpY2ggcG9wcyB1cCBpbiBsYXRlc3QgalF1ZXJ5IHZlcnNpb24uIFRoZXNlIHN0eWxlc1xuICogIGFyZSBvcHRpb25hbCwgYnV0IGVuYWJsZWQgYnkgZGVmYXVsdC4gRmVlbCBmcmVlIHRvIHR1cm4gdGhlbSBvZmYgaW4gY29uZmlndXJhdGlvbi5cbiAqXG4gKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5cbi8vIENoZWNrIGlmIGNvbXBvbmVudCBpcyBlbmFibGVkXG5AaWYgJGVuYWJsZS1mb3VjLWZpeCB7XG5cblxuXHQvL1xuXHQvLyBDaGVja2JveGVzIGFuZCBSYWRpb3Ncblx0Ly9cblx0Ly8gZm9yIFVuaWZvcm0gaW5wdXRzXG5cdC8vIHJlcXVpcmVzIFtkYXRhLWZvdWNdIGRhdGEgYXR0cmlidXRlXG5cdC8vXG5cblx0aW5wdXRbdHlwZT1jaGVja2JveF1bZGF0YS1mb3VjXSxcblx0aW5wdXRbdHlwZT1yYWRpb11bZGF0YS1mb3VjXSB7XG5cdFx0dmlzaWJpbGl0eTogaGlkZGVuO1xuXHRcdEBpbmNsdWRlIHNpemUoJGNoZWNrYm94LXNpemUpO1xuXG5cdFx0Ly8gSW5zaWRlIC5mb3JtLWNoZWNrIGNvbnRhaW5lclxuXHRcdC5mb3JtLWNoZWNrICYge1xuXHQgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHR9XG5cblx0XHQvLyBJbmxpbmUgbGlzdFxuXHRcdC5mb3JtLWNoZWNrLWlubGluZTpub3QoLmZvcm0tY2hlY2stc3dpdGNoZXJ5KSAmIHtcblx0XHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0XHRcdG1hcmdpbi10b3A6ICgoJGxpbmUtaGVpZ2h0LWNvbXB1dGVkIC0gJGNoZWNrYm94LXNpemUpIC8gMik7XG5cdFx0XHRtYXJnaW4tcmlnaHQ6ICRmb3JtLWNoZWNrLWlubGluZS1pbnB1dC1tYXJnaW4teDtcblxuXHRcdFx0Ly8gUmlnaHQgYWxpZ25lZFxuXHRcdFx0LmZvcm0tY2hlY2staW5saW5lLmZvcm0tY2hlY2stcmlnaHQgJiB7XG5cdFx0XHRcdG1hcmdpbi1yaWdodDogMDtcblx0XHRcdFx0bWFyZ2luLWxlZnQ6ICRmb3JtLWNoZWNrLWlubGluZS1pbnB1dC1tYXJnaW4teDtcblx0XHRcdH1cblx0XHR9XG5cdH1cblxuXG5cdC8vXG5cdC8vIFN3aXRjaGVyeVxuXHQvL1xuXHQvLyBmb3IgU3dpdGNoZXJ5IGlucHV0c1xuXHQvLyByZXF1aXJlcyB3cmFwcGVyIHdpdGggLmZvcm0tY2hlY2stc3dpdGNoZXJ5IGNsYXNzXG5cdC8vXG5cblx0Ly8gTGVmdCBhbmQgcmlnaHQgYWxpZ25tZW50XG4gICAgLmZvcm0tY2hlY2stc3dpdGNoZXJ5IHtcbiAgICAgICAgaW5wdXRbZGF0YS1mb3VjXSB7XG4gICAgICAgICAgICB3aWR0aDogKCRzd2l0Y2hlcnktc2l6ZSAqIDIpICsgcmVtLWNhbGMoJHN3aXRjaGVyeS1ib3JkZXItd2lkdGggKiAyKTtcbiAgICAgICAgICAgIGhlaWdodDogJHN3aXRjaGVyeS1zaXplICsgcmVtLWNhbGMoJHN3aXRjaGVyeS1ib3JkZXItd2lkdGggKiAyKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8vIENlbnRlcmVkXG4gICAgLmZvcm0tY2hlY2stc3dpdGNoZXJ5LWRvdWJsZSB7XG4gICAgXHQmLmZvcm0tY2hlY2sgaW5wdXRbZGF0YS1mb3VjXSB7XG4gICAgICAgIFx0cG9zaXRpb246IHN0YXRpYztcbiAgICBcdH1cbiAgICB9XG5cblxuXHQvL1xuXHQvLyBCb290c3RyYXAgc3dpdGNoXG5cdC8vXG5cdC8vIGZvciBCb290c3RyYXAgc3dpdGNoIGlucHV0c1xuXHQvLyByZXF1aXJlcyB3cmFwcGVyIHdpdGggLmZvcm0tY2hlY2stc3dpdGNoIGNsYXNzXG5cdC8vXG5cbiAgICAuZm9ybS1jaGVjay1zd2l0Y2gge1xuICAgICAgICBpbnB1dCB7XG4gICAgICAgICAgICBoZWlnaHQ6ICRpbnB1dC1oZWlnaHQ7XG4gICAgICAgICAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgICAgICAgICAgbWFyZ2luOiAwO1xuXG4gICAgICAgICAgICAvLyBMYXJnZSBzaXplXG4gICAgICAgICAgICAmW2RhdGEtc2l6ZT1sYXJnZV0ge1xuICAgICAgICAgICAgICAgIGhlaWdodDogJGlucHV0LWhlaWdodC1sZztcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLy8gU21hbGwgc2l6ZVxuICAgICAgICAgICAgJltkYXRhLXNpemU9c21hbGxdIHtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6ICRpbnB1dC1oZWlnaHQtc207XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cblxuXHQvL1xuXHQvLyBUZXh0IGlucHV0XG5cdC8vXG5cdC8vIGZvciB0YWdzLCBVbmlmb3JtIGV0Yy5cblx0Ly8gaW5jbHVkZXMgb3B0aW9uYWwgc2l6ZXNcblx0Ly9cblxuXHRpbnB1dCB7XG5cblx0XHQvLyBCYXNlXG5cdFx0Jlt0eXBlPXRleHRdW2RhdGEtZm91Y10ge1xuXHRcdCAgICBoZWlnaHQ6ICRpbnB1dC1oZWlnaHQ7XG5cdFx0ICAgIG9wYWNpdHk6IDA7XG5cdFx0fVxuXG5cdFx0Ly8gTGFyZ2Ugc2l6ZVxuXHRcdCZbdHlwZT10ZXh0XS5mb3JtLWNvbnRyb2wtbGdbZGF0YS1mb3VjXSB7XG5cdFx0ICAgIGhlaWdodDogJGlucHV0LWhlaWdodC1sZztcblx0XHR9XG5cblx0XHQvLyBTbWFsbCBzaXplXG5cdFx0Jlt0eXBlPXRleHRdLmZvcm0tY29udHJvbC1zbVtkYXRhLWZvdWNdIHtcblx0XHQgICAgaGVpZ2h0OiAkaW5wdXQtaGVpZ2h0LXNtO1xuXHRcdH1cblx0fVxuXG5cblx0Ly9cblx0Ly8gU2VsZWN0c1xuXHQvL1xuXHQvLyBmb3IgU2VsZWN0MiBhbmQgVW5pZm9ybSBzZWxlY3RzXG5cdC8vIHNpbmdsZSBhbmQgbXVsdGlwbGVcblx0Ly9cblxuXHRzZWxlY3Qge1xuXG5cdFx0Ly8gQmFzZVxuXHRcdCZbZGF0YS1mb3VjXTpub3QoW2FyaWEtaGlkZGVuPWZhbHNlXSkge1xuXHRcdFx0aGVpZ2h0OiAkaW5wdXQtaGVpZ2h0O1xuXHRcdFx0b3BhY2l0eTogMDtcblx0XHR9XG5cblx0XHQvLyBMYXJnZSBzaXplXG5cdFx0Ji5mb3JtLWNvbnRyb2wtbGdbZGF0YS1mb3VjXTpub3QoW2FyaWEtaGlkZGVuPWZhbHNlXSkge1xuXHRcdCAgICBoZWlnaHQ6ICRpbnB1dC1oZWlnaHQtbGc7XG5cdFx0fVxuXG5cdFx0Ly8gU21hbGwgc2l6ZVxuXHRcdCYuZm9ybS1jb250cm9sLXNtW2RhdGEtZm91Y106bm90KFthcmlhLWhpZGRlbj1mYWxzZV0pIHtcblx0XHQgICAgaGVpZ2h0OiAkaW5wdXQtaGVpZ2h0LXNtO1xuXHRcdH1cblx0fVxuXG5cblx0Ly9cblx0Ly8gRmlsZSBpbnB1dFxuXHQvL1xuXHQvLyBmb3IgVW5pZm9ybSBmaWxlIGlucHV0XG5cdC8vIGluY2x1ZGVzIG9wdGlvbmFsIHNpemVzXG5cdC8vXG5cblx0aW5wdXQge1xuXG5cdFx0Ly8gQmFzZVxuXHRcdCZbdHlwZT1maWxlXVtkYXRhLWZvdWNdIHtcblx0XHQgICAgaGVpZ2h0OiAkaW5wdXQtaGVpZ2h0O1xuXHRcdCAgICBvcGFjaXR5OiAwO1xuXHRcdH1cblxuXHRcdC8vIExhcmdlIHNpemVcblx0XHQmW3R5cGU9ZmlsZV0uZm9ybS1jb250cm9sLWxnW2RhdGEtZm91Y10ge1xuXHRcdCAgICBoZWlnaHQ6ICRpbnB1dC1oZWlnaHQtbGc7XG5cdFx0fVxuXG5cdFx0Ly8gU21hbGwgc2l6ZVxuXHRcdCZbdHlwZT1maWxlXS5mb3JtLWNvbnRyb2wtc21bZGF0YS1mb3VjXSB7XG5cdFx0ICAgIGhlaWdodDogJGlucHV0LWhlaWdodC1zbTtcblx0XHR9XG5cdH1cblxuXG5cdC8vXG5cdC8vIEZvcm0gd2l6YXJkXG5cdC8vXG5cdC8vIGZvciBTdGVwcyB3aXphcmRcblx0Ly8gb25seSBoaWRlcyBtYWluIGNvbnRhaW5lclxuXHQvL1xuXG4gICAgLndpemFyZC1mb3JtW2RhdGEtZm91Y10ge1xuICAgIFx0b3BhY2l0eTogMDtcblxuICAgIFx0Ly8gU2hvdyB3aXphcmRcbiAgICAgICAgJi53aXphcmQge1xuICAgICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgfVxuXG4gICAgICAgIC8vIENhbGN1bGF0ZSBhcHByb3hpbWF0ZSBjb250YWluZXIgaGVpZ2h0XG4gICAgICAgICY6bm90KC53aXphcmQpIHtcbiAgICAgICAgICAgIHBhZGRpbmctdG9wOiAoJHdpemFyZC1zdGVwLW51bWJlci1zaXplICsgKCRzcGFjZXIgLyAyKSArICRsaW5lLWhlaWdodC1jb21wdXRlZCkgKyAoJHNwYWNlciAqIDIpO1xuICAgICAgICAgICAgcGFkZGluZy1ib3R0b206ICgoJGlucHV0LXBhZGRpbmcteSAqIDIpICsgJGxpbmUtaGVpZ2h0LWNvbXB1dGVkICsgJHNwYWNlciArIHJlbS1jYWxjKCRpbnB1dC1ib3JkZXItd2lkdGggKiAyKSk7XG5cbiAgICAgICAgICAgIC8vIEhpZGUgY2VydGFpbiBlbGVtZW50c1xuICAgICAgICAgICAgZmllbGRzZXQ6bm90KDpmaXJzdC1vZi10eXBlKSxcbiAgICAgICAgICAgIGg2IHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG5cblx0Ly9cblx0Ly8gQ29sb3IgcGlja2VyXG5cdC8vXG5cdC8vIGZvciBTcGVjdHJ1bSBjb2xvciBwaWNrZXJcblx0Ly8gaGFyZCBjb2RlZCBoZWlnaHRcblx0Ly9cblxuXHRpbnB1dFt0eXBlPXRleHRdLmNvbG9ycGlja2VyLWZsYXQtZnVsbFtkYXRhLWZvdWNdIHtcblx0ICAgIGhlaWdodDogMjg1cHg7XG5cdH1cblxuXG5cdC8vXG5cdC8vIEFjZSBlZGl0b3Jcblx0Ly9cblx0Ly8gZm9yIGNvZGUgZWRpdG9yIGNvbnRhaW5lcnNcblx0Ly8gb25seSBoaWRlcyBtYWluIHdyYXBwZXJcblx0Ly9cblxuXHRwcmVbZGF0YS1mb3VjXSB7XG5cdFx0Jjpub3QoLmFjZV9lZGl0b3IpIHtcblx0XHQgICAgaGVpZ2h0OiAkcHJlLXNjcm9sbGFibGUtbWF4LWhlaWdodDtcblx0XHR9XG5cdFx0Ji5hY2VfZWRpdG9yIHtcblx0XHQgICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcblx0XHR9XG5cdH1cblxuXG5cdC8vXG5cdC8vIFNsaWRlcnNcblx0Ly9cblx0Ly8gZm9yIE5vVUkgYW5kIElPTiBzbGlkZXJzXG5cdC8vIGJvdGggcmVxdWlyZSAubm91aS1waXBzLWhlaWdodC1oZWxwZXIgYW5kIC5pb24taGVpZ2h0LWhlbHBlciBjbGFzc2VzXG5cdC8vXG5cblxuXHQvLyBOb1VJIHNsaWRlclxuXHQubm91aS1waXBzLWhlaWdodC1oZWxwZXI6bm90KC5ub1VpLXRhcmdldClbZGF0YS1mb3VjXSB7XG5cdCAgICBoZWlnaHQ6ICRzbGlkZXItcGlwcy1zcGFjZXIteSArICRsaW5lLWhlaWdodC1jb21wdXRlZCArICRzbGlkZXItaGVpZ2h0O1xuXHR9XG5cdC5ub3VpLXBpcHMtaGVpZ2h0LWhlbHBlci5ub3VpLXNsaWRlci1sZzpub3QoLm5vVWktdGFyZ2V0KVtkYXRhLWZvdWNdIHtcblx0ICAgIGhlaWdodDogJHNsaWRlci1waXBzLXNwYWNlci15ICsgJGxpbmUtaGVpZ2h0LWNvbXB1dGVkICsgJHNsaWRlci1oZWlnaHQtbGc7XG5cdH1cblx0Lm5vdWktcGlwcy1oZWlnaHQtaGVscGVyLm5vdWktc2xpZGVyLXNtOm5vdCgubm9VaS10YXJnZXQpW2RhdGEtZm91Y10ge1xuXHQgICAgaGVpZ2h0OiAkc2xpZGVyLXBpcHMtc3BhY2VyLXkgKyAkbGluZS1oZWlnaHQtY29tcHV0ZWQgKyAkc2xpZGVyLWhlaWdodC1zbTtcblx0fVxuXHQubm91aS12ZXJ0aWNhbC1oZWlnaHQtaGVscGVyOm5vdCgubm9VaS10YXJnZXQpW2RhdGEtZm91Y10ge1xuXHQgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXHQgICAgaGVpZ2h0OiAkc2xpZGVyLXZlcnRpY2FsLWhlaWdodDtcblx0fVxuXG5cdC8vIElPTiByYW5nZSBzbGlkZXJcblx0aW5wdXRbdHlwZT10ZXh0XS5pb24taGVpZ2h0LWhlbHBlcltkYXRhLWZvdWNdIHtcblx0ICAgIGhlaWdodDogJHRvb2x0aXAtYXJyb3ctaGVpZ2h0ICsgKCR0b29sdGlwLXBhZGRpbmcteSAqIDIpICsgJHNsaWRlci1waXBzLWZvbnQtc2l6ZSArICgkc2xpZGVyLWhlaWdodCAqIDQpO1xuXHR9XG5cdGlucHV0W3R5cGU9dGV4dF0uaW9uLXBpcHMtaGVpZ2h0LWhlbHBlcltkYXRhLWZvdWNdIHtcblx0ICAgIGhlaWdodDogJHRvb2x0aXAtYXJyb3ctaGVpZ2h0ICsgKCR0b29sdGlwLXBhZGRpbmcteSAqIDIpICsgJHNsaWRlci1waXBzLWZvbnQtc2l6ZSArICgkc2xpZGVyLWhlaWdodCAqIDcpICsgJHNsaWRlci1waXBzLXNwYWNlci15O1xuXHR9XG5cdGlucHV0W3R5cGU9dGV4dF0ubm91aS1oZWlnaHQtaGVscGVyOm5vdCgubm9VaS10YXJnZXQpW2RhdGEtZm91Y10ge1xuXHQgICAgaGVpZ2h0OiAkc2xpZGVyLWhlaWdodDtcblx0fVxufVxuIiwiLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gKlxuICogICMgUGFjZS4gRGVmYXVsdCB0aGVtZVxuICpcbiAqICBNaW5pbWFsIHByZWxvYWRlciB0aGVtZSwgdXNlZCBhcyBhIGRlZmF1bHQgdGhlbWVcbiAqXG4gKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5cbi8vIENoZWNrIGlmIGNvbXBvbmVudCBpcyBlbmFibGVkXG5AaWYgJGVuYWJsZS1wYWNlIHtcblxuICAgIC8vIERlZmluZSB2YXJpYWJsZXNcbiAgICAkcGFjZS1sb2FkZXItY29sb3I6ICRjb2xvci1ibHVlLTMwMDtcbiAgICAkcGFjZS1sb2FkZXItaGVpZ2h0OiAwLjEyNXJlbTtcblxuXG4gICAgLy8gUGFjZSB0aGVtZSBzdHlsZXNcbiAgICAvLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuICAgIC8vIEJhc2VcbiAgICAucGFjZSB7XG4gICAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgICAgICB1c2VyLXNlbGVjdDogbm9uZTtcblxuICAgICAgICAvLyBQcm9ncmVzc1xuICAgICAgICAucGFjZS1wcm9ncmVzcyB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAkcGFjZS1sb2FkZXItY29sb3I7XG4gICAgICAgICAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgICAgICAgICB6LWluZGV4OiAyMDAwO1xuICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgIHdpZHRoOiAwO1xuICAgICAgICAgICAgaGVpZ2h0OiAkcGFjZS1sb2FkZXItaGVpZ2h0O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLy8gSGlkZSB3aGVuIGRvbmVcbiAgICAucGFjZS1pbmFjdGl2ZSB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxufVxuIiwiLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gKlxuICogICMgUHJvZ3Jlc3MgKGxvYWRpbmcpIGJhcnNcbiAqXG4gKiAgU3RhdGljIGRlbW8gb2YgUGFjZSB0aGVtZXMuIEZvciBkZW1vbnN0cmF0aW9uIHB1cnBvc2VzIG9ubHkuIERPIE5PVCB1c2UgaXQgaW4gcHJvZHVjdGlvblxuICpcbiAqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cblxuLy8gQ2hlY2sgaWYgY29tcG9uZW50IGlzIGVuYWJsZWRcbkBpZiAkZW5hYmxlLWRlbW8ge1xuXG5cbiAgICAvLyBEYXJrIHNxdWFyZXMgZm9yIHBhY2UgdGhlbWVzXG4gICAgLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbiAgICAucGFjZS1kZW1vIHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3Itc2xhdGUtODAwO1xuICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgICAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRib3JkZXItcmFkaXVzKTtcbiAgICAgICAgQGluY2x1ZGUgc2l6ZSg4OHB4KTtcblxuICAgICAgICAucGFjZV9wcm9ncmVzcyB7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICAgICAgfVxuICAgIH1cblxuXG4gICAgLy8gWGJveCBNaW5pIHRoZW1lXG4gICAgLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbiAgICAudGhlbWVfeGJveCB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiA1MCU7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICBtYXJnaW4tdG9wOiAtMjRweDtcblxuICAgICAgICAvLyBBY3Rpdml0eVxuICAgICAgICAucGFjZV9hY3Rpdml0eSB7XG4gICAgICAgICAgICBhbmltYXRpb246IHJvdGF0aW9uIDEuNXMgZWFzZS1pbi1vdXQgaW5maW5pdGU7XG4gICAgICAgICAgICBtYXJnaW46IGF1dG87XG4gICAgICAgICAgICBAaW5jbHVkZSBzaXplKDQ4cHgpO1xuXG4gICAgICAgICAgICAmLFxuICAgICAgICAgICAgJjpiZWZvcmUsXG4gICAgICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgICAgICBib3JkZXI6IDJweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICAgICAgICAgICAgICBib3JkZXItdG9wLWNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXMtY2lyY2xlO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgdG9wOiA1cHg7XG4gICAgICAgICAgICAgICAgbGVmdDogNXB4O1xuICAgICAgICAgICAgICAgIHJpZ2h0OiA1cHg7XG4gICAgICAgICAgICAgICAgYm90dG9tOiA1cHg7XG4gICAgICAgICAgICAgICAgYW5pbWF0aW9uOiByb3RhdGlvbiBlYXNlLWluLW91dCAycyBpbmZpbml0ZTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgdG9wOiAxMnB4O1xuICAgICAgICAgICAgICAgIGxlZnQ6IDEycHg7XG4gICAgICAgICAgICAgICAgcmlnaHQ6IDEycHg7XG4gICAgICAgICAgICAgICAgYm90dG9tOiAxMnB4O1xuICAgICAgICAgICAgICAgIGFuaW1hdGlvbjogcm90YXRpb24gZWFzZS1pbi1vdXQgMXMgaW5maW5pdGU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBBZGQgJSB0ZXh0XG4gICAgLnRoZW1lX3hib3hfd2l0aF90ZXh0IHtcbiAgICAgICAgLnBhY2VfYWN0aXZpdHkge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogLTEwcHg7XG4gICAgICAgIH1cblxuICAgICAgICBzcGFuIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogMTBweDtcbiAgICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgICAgICB9XG4gICAgfVxuXG5cbiAgICAvLyBYYm94IFNtYWxsIHRoZW1lXG4gICAgLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbiAgICAudGhlbWVfeGJveF9zbSB7XG4gICAgICAgIEBleHRlbmQgLnRoZW1lX3hib3g7XG5cbiAgICAgICAgLnBhY2VfYWN0aXZpdHkge1xuICAgICAgICAgICAgJixcbiAgICAgICAgICAgICY6YmVmb3JlLFxuICAgICAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICAgICAgYm9yZGVyLXdpZHRoOiAxcHg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cblxuICAgIC8vIFhib3ggdGhlbWVcbiAgICAvLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuICAgIC50aGVtZV94Ym94X2xnIHtcbiAgICAgICAgQGV4dGVuZCAudGhlbWVfeGJveDtcblxuICAgICAgICAucGFjZV9hY3Rpdml0eSB7XG4gICAgICAgICAgICAmLFxuICAgICAgICAgICAgJjpiZWZvcmUsXG4gICAgICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgICAgICBib3JkZXItd2lkdGg6IDNweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuXG4gICAgLy8gUGVyc3BlY3RpdmUgdGhlbWVcbiAgICAvLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuICAgIC50aGVtZV9wZXJzcGVjdGl2ZSB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiA1MCU7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICBtYXJnaW4tdG9wOiAtMTVweDtcblxuICAgICAgICAucGFjZV9hY3Rpdml0eSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgICBhbmltYXRpb246IHBlcnNwZWN0aXZlIGVhc2UtaW4tb3V0IDEuMnMgaW5maW5pdGU7XG4gICAgICAgICAgICBAaW5jbHVkZSBzaXplKDMwcHgpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgQGtleWZyYW1lcyBwZXJzcGVjdGl2ZSB7XG4gICAgICAgIDAlIHsgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgxMjBweCk7IH1cbiAgICAgICAgNTAlIHsgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgxMjBweCkgcm90YXRlWSgxODBkZWcpOyB9XG4gICAgICAgIDEwMCUgeyB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDEyMHB4KSByb3RhdGVZKDE4MGRlZykgcm90YXRlWCgxODBkZWcpOyB9XG4gICAgfVxuXG4gICAgQC13ZWJraXQta2V5ZnJhbWVzIHBlcnNwZWN0aXZlIHtcbiAgICAgICAgMCUgeyAtd2Via2l0LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMTIwcHgpOyB9XG4gICAgICAgIDUwJSB7IC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgxMjBweCkgcm90YXRlWSgxODBkZWcpOyB9XG4gICAgICAgIDEwMCUgeyAtd2Via2l0LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMTIwcHgpIHJvdGF0ZVkoMTgwZGVnKSByb3RhdGVYKDE4MGRlZyk7IH1cbiAgICB9XG5cbiAgICBALW1vei1rZXlmcmFtZXMgcGVyc3BlY3RpdmUge1xuICAgICAgICAwJSB7IC1tb3otdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgxMjBweCk7IH1cbiAgICAgICAgNTAlIHsgLW1vei10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDEyMHB4KSByb3RhdGVZKDE4MGRlZyk7IH1cbiAgICAgICAgMTAwJSB7IC1tb3otdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgxMjBweCkgcm90YXRlWSgxODBkZWcpIHJvdGF0ZVgoMTgwZGVnKTsgfVxuICAgIH1cblxuICAgIC50aGVtZV9wZXJzcGVjdGl2ZV93aXRoX3RleHQge1xuICAgICAgICAucGFjZV9hY3Rpdml0eSB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAtMTJweDtcbiAgICAgICAgfVxuXG4gICAgICAgIHNwYW4ge1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAxNXB4O1xuICAgICAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgICAgIH1cbiAgICB9XG5cblxuICAgIC8vIFNxdWFyZXMgdGhlbWVcbiAgICAvLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuICAgIC50aGVtZV9zcXVhcmVzIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IDUwJTtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgIG1hcmdpbi10b3A6IC0xNXB4O1xuXG4gICAgICAgIC8vIEFjdGl2aXR5XG4gICAgICAgIC5wYWNlX2FjdGl2aXR5IHtcbiAgICAgICAgICAgIHdpZHRoOiAzMHB4O1xuICAgICAgICAgICAgaGVpZ2h0OiAzMHB4O1xuICAgICAgICAgICAgbWFyZ2luOiBhdXRvO1xuXG4gICAgICAgICAgICAmOmJlZm9yZSxcbiAgICAgICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICAgICAgICAgIGJvcmRlcjogMnB4IHNvbGlkICR3aGl0ZTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgICAgIHdpZHRoOiAzMHB4O1xuICAgICAgICAgICAgICAgIGhlaWdodDogMzBweDtcbiAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogLTE1cHg7XG4gICAgICAgICAgICAgICAgYW5pbWF0aW9uOiByb3RhdGlvbl9yZXZlcnNlIGxpbmVhciAycyBpbmZpbml0ZTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDIwcHg7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAyMHB4O1xuICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAtMTBweDtcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiA1cHg7XG4gICAgICAgICAgICAgICAgYW5pbWF0aW9uOiByb3RhdGlvbiBsaW5lYXIgMnMgaW5maW5pdGU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBUZXh0XG4gICAgLnRoZW1lX3NxdWFyZXNfd2l0aF90ZXh0IHtcbiAgICAgICAgLnBhY2VfYWN0aXZpdHkge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogLTEycHg7XG4gICAgICAgIH1cblxuICAgICAgICBzcGFuIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogMTVweDtcbiAgICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgICAgICB9XG4gICAgfVxuXG5cbiAgICAvLyBUYWlsIHRoZW1lXG4gICAgLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbiAgICAudGhlbWVfdGFpbCB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiA1MCU7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICBtYXJnaW4tdG9wOiAtMTVweDtcblxuICAgICAgICAvLyBBY3Rpdml0eVxuICAgICAgICAucGFjZV9hY3Rpdml0eSB7XG4gICAgICAgICAgICBtYXJnaW46IGF1dG87XG4gICAgICAgICAgICB3aWR0aDogMzBweDtcbiAgICAgICAgICAgIGhlaWdodDogMzBweDtcbiAgICAgICAgICAgIGJvcmRlcjogM3B4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgICAgICAgICAgYm9yZGVyLWxlZnQtY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICAgICAgICAgIGFuaW1hdGlvbjogcm90YXRpb24gbGluZWFyIDEuMXMgaW5maW5pdGU7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBDaXJjbGUgdGFpbCB0aGVtZVxuICAgIC50aGVtZV90YWlsX2NpcmNsZSB7XG4gICAgICAgIC5wYWNlX2FjdGl2aXR5IHtcbiAgICAgICAgICAgIGJvcmRlci1jb2xvcjogcmdiYSgkYmxhY2ssIDAuMTUpO1xuICAgICAgICAgICAgYm9yZGVyLWxlZnQtY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8vIFRleHRcbiAgICAudGhlbWVfdGFpbF93aXRoX3RleHQge1xuICAgICAgICAucGFjZV9hY3Rpdml0eSB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAtMTJweDtcbiAgICAgICAgfVxuXG4gICAgICAgIHNwYW4ge1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAxNXB4O1xuICAgICAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgICAgIH1cbiAgICB9XG5cblxuICAgIC8vIENvcm5lcnMgdGhlbWVcbiAgICAvLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuICAgIC50aGVtZV9jb3JuZXJzIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IDUwJTtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgIG1hcmdpbi10b3A6IC0oMTRweCAvIDIpO1xuXG4gICAgICAgIC8vIEFjdGl2aXR5XG4gICAgICAgIC5wYWNlX2FjdGl2aXR5IHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgICAgICAgICBhbmltYXRpb246IGNvcm5lcnMgZWFzZSAxLjVzIGluZmluaXRlO1xuICAgICAgICAgICAgQGluY2x1ZGUgc2l6ZSgxNHB4KTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8vIEFuaW1hdGlvblxuICAgIEBrZXlmcmFtZXMgY29ybmVycyB7XG4gICAgICAgIDAlIHsgdHJhbnNmb3JtOiBzY2FsZSgxKSByb3RhdGUoMGRlZyk7IH1cbiAgICAgICAgNTAlIHsgYm9yZGVyLXJhZGl1czogMDsgdHJhbnNmb3JtOiBzY2FsZSgyKSByb3RhdGUoLTE4MGRlZyk7IH1cbiAgICAgICAgMTAwJSB7IHRyYW5zZm9ybTogc2NhbGUoMSkgcm90YXRlKC0zNjBkZWcpOyB9XG4gICAgfVxuXG4gICAgQC13ZWJraXQta2V5ZnJhbWVzIGNvcm5lcnMge1xuICAgICAgICAwJSB7IC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgxKSByb3RhdGUoMGRlZyk7IH1cbiAgICAgICAgNTAlIHsgYm9yZGVyLXJhZGl1czogMDsgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDIpIHJvdGF0ZSgtMTgwZGVnKTsgfVxuICAgICAgICAxMDAlIHsgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDEpIHJvdGF0ZSgtMzYwZGVnKTsgfVxuICAgIH1cblxuICAgIEAtbW96LWtleWZyYW1lcyBjb3JuZXJzIHtcbiAgICAgICAgMCUgeyAtbW96LXRyYW5zZm9ybTogc2NhbGUoMSkgcm90YXRlKDBkZWcpOyB9XG4gICAgICAgIDUwJSB7IGJvcmRlci1yYWRpdXM6IDA7IC1tb3otdHJhbnNmb3JtOiBzY2FsZSgyKSByb3RhdGUoLTE4MGRlZyk7IH1cbiAgICAgICAgMTAwJSB7IC1tb3otdHJhbnNmb3JtOiBzY2FsZSgxKSByb3RhdGUoLTM2MGRlZyk7IH1cbiAgICB9XG5cbiAgICAvLyBUZXh0XG4gICAgLnRoZW1lX2Nvcm5lcnNfd2l0aF90ZXh0IHtcbiAgICAgICAgLnBhY2VfYWN0aXZpdHkge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogLTI4cHg7XG4gICAgICAgIH1cblxuICAgICAgICBzcGFuIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogMTVweDtcbiAgICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgICAgICB9XG4gICAgfVxuXG5cbiAgICAvLyBSYWRhciB0aGVtZVxuICAgIC8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4gICAgLnRoZW1lX3JhZGFyIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IDUwJTtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgIG1hcmdpbi10b3A6IC0xNXB4O1xuXG4gICAgICAgIC8vIEFjdGl2aXR5XG4gICAgICAgIC5wYWNlX2FjdGl2aXR5IHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgIHdpZHRoOiAzMHB4O1xuICAgICAgICAgICAgaGVpZ2h0OiAzMHB4O1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgICAgICAgICAgYm9yZGVyOiAycHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICBib3JkZXItdG9wLWNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgICBib3JkZXItYm90dG9tLWNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgICBhbmltYXRpb246IHJvdGF0aW9uIGxpbmVhciAxLjFzIGluZmluaXRlO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLy8gVGV4dFxuICAgIC50aGVtZV9yYWRhcl93aXRoX3RleHQge1xuICAgICAgICAucGFjZV9hY3Rpdml0eSB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAtMTJweDtcbiAgICAgICAgfVxuXG4gICAgICAgIHNwYW4ge1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAxNXB4O1xuICAgICAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgICAgIH1cbiAgICB9XG5cblxuICAgIC8vIEJhciB0aGVtZVxuICAgIC8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4gICAgLy8gRGVmYXVsdFxuICAgIC50aGVtZV9iYXIge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIHdpZHRoOiAyMDBweDtcbiAgICAgICAgaGVpZ2h0OiA1cHg7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoJGJsYWNrLCAwLjQpO1xuICAgICAgICBib3JkZXItcmFkaXVzOiAxMDBweDtcbiAgICAgICAgYm94LXNoYWRvdzogMCAwIDVweCByZ2JhKCR3aGl0ZSwgMC4xKTtcblxuICAgICAgICAucGFjZV9wcm9ncmVzcyB7XG4gICAgICAgICAgICBtYXgtd2lkdGg6IDE5OHB4O1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICBsZWZ0OiAxcHg7XG4gICAgICAgICAgICB0b3A6IDFweDtcbiAgICAgICAgICAgIGhlaWdodDogM3B4O1xuICAgICAgICAgICAgYmFja2dyb3VuZDogIzNGQ0Y5NjtcbiAgICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMzZweDtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDEwMHB4O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLy8gTGFyZ2VcbiAgICAudGhlbWVfYmFyX2xnIHtcbiAgICAgICAgQGV4dGVuZCAudGhlbWVfYmFyO1xuICAgICAgICBoZWlnaHQ6IDZweDtcblxuICAgICAgICAucGFjZV9wcm9ncmVzcyB7XG4gICAgICAgICAgICBoZWlnaHQ6IDRweDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8vIFNtYWxsXG4gICAgLnRoZW1lX2Jhcl9zbSB7XG4gICAgICAgIEBleHRlbmQgLnRoZW1lX2JhcjtcbiAgICAgICAgaGVpZ2h0OiA0cHg7XG5cbiAgICAgICAgLnBhY2VfcHJvZ3Jlc3Mge1xuICAgICAgICAgICAgaGVpZ2h0OiAycHg7XG4gICAgICAgIH1cbiAgICB9XG59XG4iLCIvKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAqXG4gKiAgIyBVbmlmb3JtLmpzXG4gKlxuICogIFN0eWxlcyBmb3IgdW5pZm9ybS5taW4uanMgLSBmb3JtIGNvbXBvbmVudHMgc3R5bGluZ1xuICpcbiAqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cblxuLy8gQ2hlY2sgaWYgY29tcG9uZW50IGlzIGVuYWJsZWRcbkBpZiAkZW5hYmxlLXVuaWZvcm0ge1xuXG5cblx0Ly8gQ2hlY2tib3ggYW5kIHJhZGlvXG5cdC8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG5cdC8vIENoZWNrYm94IGFuZCByYWRpbyBoYXZlIHNvbWUgY29tbW9uIHN0eWxlc1xuXHQudW5pZm9ybS1jaGVja2VyLFxuXHQudW5pZm9ybS1jaG9pY2Uge1xuXHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0XHRjdXJzb3I6IHBvaW50ZXI7XG5cdFx0dmVydGljYWwtYWxpZ246IG1pZGRsZTtcblxuXHRcdC8vIFNldCBnZW5lcmFsIHNpemVcblx0XHQmLFxuXHRcdHNwYW4sXG5cdFx0aW5wdXQge1xuXHRcdFx0QGluY2x1ZGUgc2l6ZSgkY2hlY2tib3gtc2l6ZSk7XG5cdFx0fVxuXG5cdFx0Ly8gSW5wdXQgc2V0dXBcblx0XHRzcGFuIHtcblx0XHRcdGJvcmRlcjogJGNoZWNrYm94LWJvcmRlci13aWR0aCBzb2xpZCAkY2hlY2tib3gtYm9yZGVyLWNvbG9yO1xuXHRcdFx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXHRcdFx0dGV4dC1hbGlnbjogY2VudGVyO1xuXHRcdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXG5cdFx0XHQvLyBDaGVja2VkIHN0eWxlXG5cdFx0XHQmLmNoZWNrZWQge1xuXHRcdFx0XHQmOmFmdGVyIHtcblx0XHRcdFx0XHRvcGFjaXR5OiAxO1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0fVxuXG5cdFx0Ly8gSGlkZSBvcmlnaW5hbCBjaGVja2JveFxuXHRcdGlucHV0W3R5cGU9Y2hlY2tib3hdLFxuXHRcdGlucHV0W3R5cGU9cmFkaW9dIHtcblx0XHRcdGJvcmRlcjogMDtcblx0XHRcdGJhY2tncm91bmQ6IG5vbmU7XG5cdFx0XHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cdFx0XHRtYXJnaW46IDA7XG5cdFx0XHRjdXJzb3I6IHBvaW50ZXI7XG5cdFx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0XHR0b3A6IC0oJGNoZWNrYm94LWJvcmRlci13aWR0aCk7XG5cdFx0XHRsZWZ0OiAtKCRjaGVja2JveC1ib3JkZXItd2lkdGgpO1xuXHRcdFx0dmlzaWJpbGl0eTogdmlzaWJsZTtcblx0XHRcdG9wYWNpdHk6IDA7XG5cdFx0XHR6LWluZGV4OiAyO1xuXG5cdFx0XHQvLyBNYWtlIHN1cmUgaGlkZGVuIGlucHV0IGRvZXNuJ3Qgb3ZlcmxhcCB0aGUgY3VzdG9tIGVsZW1lbnRcblx0XHRcdC5mb3JtLWNoZWNrLmZvcm0tY2hlY2staW5saW5lICYge1xuXHRcdFx0XHRtYXJnaW4tbGVmdDogMDtcblx0XHRcdFx0bWFyZ2luLXJpZ2h0OiAwO1xuXHRcdFx0fVxuXHRcdH1cblxuXG5cdFx0Ly9cblx0XHQvLyBBbGlnbm1lbnRcblx0XHQvL1xuXG5cdFx0Ly8gTGVmdCBhbGlnbm1lbnRcblx0XHQuZm9ybS1jaGVjayAmIHtcblx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRcdHRvcDogKCgkbGluZS1oZWlnaHQtY29tcHV0ZWQgLSAkY2hlY2tib3gtc2l6ZSkgLyAyKTtcblx0XHRcdGxlZnQ6IDA7XG5cdFx0fVxuXG5cdFx0Ly8gUmlnaHQgYWxpZ25tZW50XG5cdFx0LmZvcm0tY2hlY2stcmlnaHQgJiB7XG5cdFx0XHRsZWZ0OiBhdXRvO1xuXHRcdFx0cmlnaHQ6IDA7XG5cdFx0fVxuXG5cdFx0Ly8gTGVmdCBpbmxpbmVcblx0XHQuZm9ybS1jaGVjay1pbmxpbmUgJiB7XG5cdFx0XHRwb3NpdGlvbjogc3RhdGljO1xuXHRcdFx0bWFyZ2luLXJpZ2h0OiAkZm9ybS1jaGVjay1pbmxpbmUtaW5wdXQtbWFyZ2luLXg7XG5cdCAgICAgICAgbWFyZ2luLXRvcDogKCRsaW5lLWhlaWdodC1jb21wdXRlZCAtICRjaGVja2JveC1zaXplKSAvIDI7XG5cdFx0fVxuXG5cdFx0Ly8gUmlnaHQgaW5saW5lXG5cdFx0LmZvcm0tY2hlY2staW5saW5lLmZvcm0tY2hlY2stcmlnaHQgJiB7XG5cdFx0XHRtYXJnaW4tcmlnaHQ6IDA7XG5cdFx0XHRtYXJnaW4tbGVmdDogJGZvcm0tY2hlY2staW5saW5lLWlucHV0LW1hcmdpbi14O1xuXHRcdH1cblxuXG5cdFx0Ly9cblx0XHQvLyBTdGF0ZXNcblx0XHQvL1xuXG5cdFx0Ly8gRGlzYWJsZWRcblx0XHQmLmRpc2FibGVkIHtcblx0XHRcdG9wYWNpdHk6ICRjaGVja2JveC1kaXNhYmxlZC1vcGFjaXR5O1xuXG5cdFx0XHQvLyBDdXJzb3Jcblx0XHRcdCYsXG5cdFx0XHRpbnB1dCB7XG5cdFx0XHRcdGN1cnNvcjogJGN1cnNvci1kaXNhYmxlZDtcblx0XHRcdH1cblx0XHR9XG5cdH1cblxuXHQvLyBDaGVja2JveFxuXHQudW5pZm9ybS1jaGVja2VyIHtcblxuXHRcdC8vIENoZWNrYm94IHNldHVwXG5cdFx0c3BhbiB7XG5cdFx0XHRjb2xvcjogJGNoZWNrYm94LWNvbG9yO1xuXHRcdFx0QGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkYm9yZGVyLXJhZGl1cy1zbSk7XG5cdCAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbihib3JkZXItY29sb3IgZWFzZS1pbi1vdXQgJGNvbXBvbmVudC10cmFuc2l0aW9uLXRpbWVyLCBjb2xvciBlYXNlLWluLW91dCAkY29tcG9uZW50LXRyYW5zaXRpb24tdGltZXIpO1xuXG5cdFx0XHQvLyBDaGVja21hcmsgaWNvblxuXHRcdFx0JjphZnRlciB7XG5cdFx0XHRcdGNvbnRlbnQ6IFwiXFxlNjAwXCI7XG5cdFx0XHRcdGZvbnQtZmFtaWx5OiAkaWNvbi1mb250LWZhbWlseTtcblx0XHRcdFx0Zm9udC1zaXplOiAkaWNvbi1mb250LXNpemU7XG5cdFx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRcdFx0dG9wOiAoJGNoZWNrYm94LXNpemUgLSAkaWNvbi1mb250LXNpemUgLSAoJGNoZWNrYm94LWJvcmRlci13aWR0aCAqIDIpKSAvIDI7XG5cdFx0XHRcdGxlZnQ6ICgkY2hlY2tib3gtc2l6ZSAtICRpY29uLWZvbnQtc2l6ZSAtICgkY2hlY2tib3gtYm9yZGVyLXdpZHRoICogMikpIC8gMjtcblx0XHRcdFx0bGluZS1oZWlnaHQ6IDE7XG5cdFx0XHRcdG9wYWNpdHk6IDA7XG5cdFx0XHRcdEBpbmNsdWRlIGxsLWZvbnQtc21vb3RoaW5nKCk7XG5cdFx0ICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKG9wYWNpdHkgZWFzZS1pbi1vdXQgJGNvbXBvbmVudC10cmFuc2l0aW9uLXRpbWVyKTtcblx0XHRcdH1cblxuXHRcdFx0Ly8gRm9yIGRhcmsgYmFja2dyb3VuZHMsIGFkZCAudW5pZm9ybS1jaGVja2VyLWxpZ2h0IGNsYXNzIHRvXG5cdFx0XHQvLyBjaGVja2JveCBjb250YWluZXIgdG8gbWFrZSBpdCB3aGl0ZVxuXHRcdFx0LmZvcm0tY2hlY2stbGlnaHQgJiB7XG5cdFx0XHRcdGJvcmRlci1jb2xvcjogJHdoaXRlO1xuXHRcdFx0XHRjb2xvcjogJHdoaXRlO1xuXHRcdFx0fVxuXHRcdH1cblxuXHRcdC8vIEN1c3RvbSBjb2xvcnNcblx0XHQmW2NsYXNzKj1ib3JkZXItXSB7XG5cdFx0XHRzcGFuIHtcblx0XHRcdFx0Ym9yZGVyLWNvbG9yOiBpbmhlcml0O1xuXHRcdFx0XHRjb2xvcjogaW5oZXJpdDtcblx0XHRcdH1cblx0XHR9XG5cdH1cblxuXHQvLyBSYWRpb1xuXHQudW5pZm9ybS1jaG9pY2Uge1xuXHRcdGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzLXJvdW5kO1xuXG5cdFx0Ly8gUmFkaW8gc2V0dXBcblx0XHRzcGFuIHtcblx0XHRcdGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzLXJvdW5kO1xuXHQgICAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oYm9yZGVyLWNvbG9yIGVhc2UtaW4tb3V0ICRjb21wb25lbnQtdHJhbnNpdGlvbi10aW1lcik7XG5cblx0XHRcdC8vIEFkZCBjb2xvcmVkIGNpcmNsZVxuXHRcdFx0JjphZnRlciB7XG5cdFx0XHRcdGNvbnRlbnQ6IFwiXCI7XG5cdFx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRcdFx0dG9wOiAoKCRjaGVja2JveC1zaXplIC8gMikgLSAkY2hlY2tib3gtYm9yZGVyLXdpZHRoIC0gKCgkY2hlY2tib3gtc2l6ZSAvIDIpIC8gMikpO1xuXHRcdFx0XHRsZWZ0OiAoKCRjaGVja2JveC1zaXplIC8gMikgLSAkY2hlY2tib3gtYm9yZGVyLXdpZHRoIC0gKCgkY2hlY2tib3gtc2l6ZSAvIDIpIC8gMikpO1xuXHRcdFx0XHRib3JkZXI6ICgoJGNoZWNrYm94LXNpemUgLyAyKSAvIDIpIHNvbGlkO1xuXHRcdFx0XHRib3JkZXItY29sb3I6IGluaGVyaXQ7XG5cdFx0XHRcdHdpZHRoOiAwO1xuXHRcdFx0XHRoZWlnaHQ6IDA7XG5cdFx0XHRcdGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzLXJvdW5kO1xuXHRcdFx0XHRvcGFjaXR5OiAwO1xuXHRcdCAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbihhbGwgZWFzZS1pbi1vdXQgJGNvbXBvbmVudC10cmFuc2l0aW9uLXRpbWVyKTtcblx0XHRcdH1cblxuXHRcdFx0Ly8gRm9yIGRhcmsgYmFja2dyb3VuZHMsIGFkZCAudW5pZm9ybS1jaGVja2VyLWxpZ2h0IGNsYXNzIHRvXG5cdFx0XHQvLyBjaGVja2JveCBjb250YWluZXIgdG8gbWFrZSBpdCB3aGl0ZVxuXHRcdFx0LmZvcm0tY2hlY2stbGlnaHQgJiB7XG5cdFx0XHRcdGJvcmRlci1jb2xvcjogJHdoaXRlO1xuXHRcdFx0fVxuXHRcdH1cblxuXHRcdC8vIEN1c3RvbSBjb2xvcnNcblx0XHQmW2NsYXNzKj1ib3JkZXItXSB7XG5cdFx0XHRzcGFuIHtcblx0XHRcdFx0Ym9yZGVyLWNvbG9yOiBpbmhlcml0O1xuXG5cdFx0XHRcdCY6YWZ0ZXIge1xuXHRcdFx0XHRcdGJvcmRlci1jb2xvcjogaW5oZXJpdDtcblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdH1cblx0fVxuXG5cdC8vIEZpeCBmb3IgZHJvcGRvd24gYWN0aXZlIHN0YXRlXG5cdC5kcm9wZG93bi1tZW51Om5vdChbY2xhc3MqPWJnLV0pIHtcblx0XHQuZHJvcGRvd24taXRlbS5hY3RpdmU6bm90KC5kaXNhYmxlZCkge1xuXHRcdFx0QGlmIChsaWdodG5lc3MoJGRyb3Bkb3duLWxpbmstYWN0aXZlLWJnKSA8IDc1KSB7XG5cdFx0XHRcdC51bmlmb3JtLWNoZWNrZXIge1xuXHRcdFx0XHRcdHNwYW4ge1xuXHRcdFx0XHRcdFx0Ym9yZGVyLWNvbG9yOiAkd2hpdGU7XG5cdFx0XHRcdFx0XHRjb2xvcjogJHdoaXRlO1xuXG5cdFx0XHRcdFx0fVxuXHRcdFx0XHR9XG5cdFx0XHRcdC51bmlmb3JtLWNob2ljZSB7XG5cdFx0XHRcdFx0c3BhbiB7XG5cdFx0XHRcdFx0XHRib3JkZXItY29sb3I6ICR3aGl0ZTtcblx0XHRcdFx0XHR9XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHR9XG5cdH1cblxuXHQvLyBJbnNpZGUgZHJvcGRvd24gaXRlbVxuICAgIC5kcm9wZG93bi1pdGVtIHtcblx0ICAgICYuZm9ybS1jaGVjayB7XG5cblx0ICAgIFx0Ly8gTGFiZWxcblx0ICAgICAgICAuZm9ybS1jaGVjay1sYWJlbCB7XG5cdCAgICAgICAgICAgIHBhZGRpbmctbGVmdDogKCRkcm9wZG93bi1pdGVtLXBhZGRpbmcteCArICRkcm9wZG93bi1pY29uLXNwYWNlci14ICsgJGNoZWNrYm94LXNpemUpO1xuXHQgICAgICAgIH1cblxuXHQgICAgICAgIC8vIENoZWNrYm94IGFuZCByYWRpb1xuXHQgICAgICAgIC51bmlmb3JtLWNoZWNrZXIsXG5cdCAgICAgICAgLnVuaWZvcm0tY2hvaWNlIHtcblx0ICAgICAgICAgICAgbWFyZ2luLXRvcDogKCRkcm9wZG93bi1pdGVtLXBhZGRpbmcteSArICgoJGxpbmUtaGVpZ2h0LWNvbXB1dGVkIC0gJGNoZWNrYm94LXNpemUpIC8gMikpO1xuXHQgICAgICAgICAgICBsZWZ0OiAkZHJvcGRvd24taXRlbS1wYWRkaW5nLXg7XG5cdCAgICAgICAgfVxuXG5cdCAgICAgICAgLy8gUmlnaHQgYWxpZ25tZW50XG5cdCAgICAgICAgJi5mb3JtLWNoZWNrLXJpZ2h0IHtcblxuXHQgICAgICAgIFx0Ly8gUmV2ZXJzZSBsYWJlbCBwYWRkaW5nXG5cdCAgICAgICAgICAgIC5mb3JtLWNoZWNrLWxhYmVsIHtcblx0ICAgICAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6ICgkZHJvcGRvd24taXRlbS1wYWRkaW5nLXggKyAkZHJvcGRvd24taWNvbi1zcGFjZXIteCArICRjaGVja2JveC1zaXplKTtcblx0ICAgICAgICAgICAgfVxuXG5cdCAgICAgICAgICAgIC8vIFJldmVyc2UgY2hlY2tib3gvcmFkaW8gYWxpZ25tZW50XG5cdCAgICAgICAgICAgIC51bmlmb3JtLWNoZWNrZXIsXG5cdCAgICAgICAgICAgIC51bmlmb3JtLWNob2ljZSB7XG5cdCAgICAgICAgICAgICAgICBsZWZ0OiBhdXRvO1xuXHQgICAgICAgICAgICAgICAgcmlnaHQ6ICRkcm9wZG93bi1pdGVtLXBhZGRpbmcteDtcblx0ICAgICAgICAgICAgfVxuXHQgICAgICAgIH1cblx0ICAgIH1cbiAgICB9XG5cbiAgICAvLyBJbnNpZGUgZGFyayBkcm9wZG93blxuICAgIC5kcm9wZG93bi1tZW51W2NsYXNzKj1iZy1dOm5vdCguYmctd2hpdGUpOm5vdCguYmctdHJhbnNwYXJlbnQpOm5vdCguYmctbGlnaHQpIHtcblx0XHQudW5pZm9ybS1jaGVja2VyIHtcblx0XHRcdHNwYW4ge1xuXHRcdFx0XHRib3JkZXItY29sb3I6ICR3aGl0ZTtcblx0XHRcdFx0Y29sb3I6ICR3aGl0ZTtcblxuXHRcdFx0fVxuXHRcdH1cblx0XHQudW5pZm9ybS1jaG9pY2Uge1xuXHRcdFx0c3BhbiB7XG5cdFx0XHRcdGJvcmRlci1jb2xvcjogJHdoaXRlO1xuXHRcdFx0fVxuXHRcdH1cbiAgICB9XG5cblxuXHQvLyBGaWxlIHVwbG9hZGVyXG5cdC8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG5cdC8vIEJhc2Vcblx0LnVuaWZvcm0tdXBsb2FkZXIge1xuXHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0XHRkaXNwbGF5OiBmbGV4O1xuXHRcdGFsaWduLWl0ZW1zOiBzdHJldGNoO1xuXG5cdFx0Ly8gRmlsZSBuYW1lIHRleHRcblx0XHQuZmlsZW5hbWUge1xuXHRcdFx0Y29sb3I6ICR0ZXh0LW11dGVkO1xuXHRcdFx0cGFkZGluZzogJGlucHV0LXBhZGRpbmcteSAkaW5wdXQtcGFkZGluZy14O1xuXHRcdFx0ZmxleDogMTtcblx0XHRcdGJvcmRlcjogJGlucHV0LWJvcmRlci13aWR0aCBzb2xpZCAkaW5wdXQtYm9yZGVyLWNvbG9yO1xuXHRcdFx0Ym9yZGVyLXJpZ2h0OiAwO1xuXHRcdFx0YmFja2dyb3VuZC1jb2xvcjogJGlucHV0LWJnO1xuXHRcdFx0dGV4dC1hbGlnbjogbGVmdDtcblx0XHRcdHdvcmQtYnJlYWs6IGJyZWFrLXdvcmQ7XG5cdCAgICAgICAgQGluY2x1ZGUgYm9yZGVyLWxlZnQtcmFkaXVzKCRpbnB1dC1ib3JkZXItcmFkaXVzKTtcblx0XHR9XG5cblx0XHQvLyBBY3Rpb24gYnV0dG9uXG5cdFx0LmFjdGlvbiB7XG5cdFx0XHR6LWluZGV4OiAxO1xuXHRcdFx0QGluY2x1ZGUgYm9yZGVyLXJhZGl1cygwKTtcblx0ICAgICAgICBAaW5jbHVkZSBib3JkZXItcmlnaHQtcmFkaXVzKCRpbnB1dC1ib3JkZXItcmFkaXVzKTtcblx0XHR9XG5cblx0XHQvLyBIaWRlIGZpbGUgaW5wdXRcblx0XHRpbnB1dFt0eXBlPWZpbGVdIHtcblx0XHRcdHdpZHRoOiAxMDAlO1xuXHRcdFx0bWFyZ2luLXRvcDogMDtcblx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRcdHRvcDogMDtcblx0XHRcdHJpZ2h0OiAwO1xuXHRcdFx0Ym90dG9tOiAwO1xuXHRcdFx0bWluLWhlaWdodDogJGlucHV0LWhlaWdodDtcblx0XHRcdGJvcmRlcjogMDtcblx0XHRcdGN1cnNvcjogcG9pbnRlcjtcblx0XHRcdHotaW5kZXg6IDEwO1xuXHRcdFx0b3BhY2l0eTogMDtcblx0XHR9XG5cblx0XHQvLyBEaXNhYmxlZCBzdGF0ZVxuXHRcdCYuZGlzYWJsZWQge1xuXHRcdFx0LmZpbGVuYW1lIHtcblx0XHRcdFx0YmFja2dyb3VuZC1jb2xvcjogJGlucHV0LWRpc2FibGVkLWJnO1xuXHRcdFx0fVxuXG5cdFx0XHQvLyBDdXJzb3Jcblx0XHRcdC5maWxlbmFtZSxcblx0XHRcdGlucHV0W3R5cGU9ZmlsZV0ge1xuXHRcdFx0XHRjdXJzb3I6ICRjdXJzb3ItZGlzYWJsZWQ7XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG5cblxuXHQvL1xuXHQvLyBTaXppbmdcblx0Ly9cblxuXHQvLyBMYXJnZVxuXHQuZm9ybS1jb250cm9sLXN0eWxlZC1sZyB7XG5cblx0XHQvLyBGaWxlIGlucHV0IHNpemVcblx0XHRpbnB1dFt0eXBlPWZpbGVdIHtcblx0XHRcdG1pbi1oZWlnaHQ6ICRpbnB1dC1oZWlnaHQtbGc7XG5cdFx0fVxuXG5cdFx0Ly8gRmlsZSBuYW1lIHRleHRcblx0XHQuZmlsZW5hbWUge1xuXHRcdFx0cGFkZGluZzogJGlucHV0LXBhZGRpbmcteS1sZyAkaW5wdXQtcGFkZGluZy14LWxnO1xuXHRcdFx0Zm9udC1zaXplOiAkZm9udC1zaXplLWxnO1xuXHRcdFx0bGluZS1oZWlnaHQ6ICRpbnB1dC1saW5lLWhlaWdodC1sZztcblx0XHR9XG5cdH1cblxuXHQvLyBTbWFsbFxuXHQuZm9ybS1jb250cm9sLXN0eWxlZC1zbSB7XG5cblx0XHQvLyBGaWxlIGlucHV0IHNpemVcblx0XHRpbnB1dFt0eXBlPWZpbGVdIHtcblx0XHRcdG1pbi1oZWlnaHQ6ICRpbnB1dC1oZWlnaHQtc207XG5cdFx0fVxuXG5cdFx0Ly8gRmlsZSBuYW1lIHRleHRcblx0XHQuZmlsZW5hbWUge1xuXHRcdFx0cGFkZGluZzogJGlucHV0LXBhZGRpbmcteS1zbSAkaW5wdXQtcGFkZGluZy14LXNtO1xuXHRcdFx0Zm9udC1zaXplOiAkZm9udC1zaXplLXNtO1xuXHRcdFx0bGluZS1oZWlnaHQ6ICRpbnB1dC1saW5lLWhlaWdodC1zbTtcblx0XHR9XG5cdH1cblxuXG5cdC8vIFNlbGVjdFxuXHQvLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuXHQvLyBCYXNlXG5cdC51bmlmb3JtLXNlbGVjdCB7XG5cdCAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cdCAgICBkaXNwbGF5OiBibG9jaztcblx0ICAgIHdpZHRoOiAxMDAlO1xuXHQgICAgaGVpZ2h0OiAkaW5wdXQtaGVpZ2h0O1xuXHQgICAgcGFkZGluZzogJGlucHV0LXBhZGRpbmcteSAkaW5wdXQtcGFkZGluZy14O1xuXHQgICAgZm9udC1zaXplOiAkZm9udC1zaXplLWJhc2U7XG5cdCAgICBsaW5lLWhlaWdodDogJGlucHV0LWJ0bi1saW5lLWhlaWdodDtcblx0ICAgIGNvbG9yOiAkaW5wdXQtY29sb3I7XG5cdCAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaW5wdXQtYmc7XG5cdCAgICBib3JkZXI6ICRpbnB1dC1ib3JkZXItd2lkdGggc29saWQgJGlucHV0LWJvcmRlci1jb2xvcjtcblx0ICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGlucHV0LWJvcmRlci1yYWRpdXMpO1xuXHRcdEBpbmNsdWRlIHRyYW5zaXRpb24oYWxsIGVhc2UtaW4tb3V0ICRjb21wb25lbnQtdHJhbnNpdGlvbi10aW1lcik7XG5cblx0XHQvLyBIb3ZlciBzdGF0ZVxuXHQgICAgQGluY2x1ZGUgaG92ZXItZm9jdXMge1xuXHRcdCAgICBAaW5jbHVkZSBib3gtc2hhZG93KCRob3Zlci1zaGFkb3ctbGlnaHRlcik7XG5cdCAgICB9XG5cblx0ICAgIC8vIEN1c3RvbSBjb2xvcnNcblx0ICAgICZbY2xhc3MqPWJnLV06bm90KC5iZy13aGl0ZSk6bm90KC5iZy1saWdodCk6bm90KC5iZy10cmFuc3BhcmVudCkge1xuXHQgICAgXHRjb2xvcjogJHdoaXRlO1xuXG5cdCAgICBcdC8vIEhvdmVyIHN0YXRlXG5cdFx0ICAgIEBpbmNsdWRlIGhvdmVyLWZvY3VzIHtcblx0XHRcdCAgICBAaW5jbHVkZSBib3gtc2hhZG93KCRob3Zlci1zaGFkb3ctZGFya2VyKTtcblx0XHQgICAgfVxuXHQgICAgfVxuXG5cdCAgICAvLyBTZWxlY3QgcmVwbGFjZW1lbnRcblx0XHRzcGFuIHtcblx0XHQgICAgZGlzcGxheTogYmxvY2s7XG5cdFx0ICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0XHQgICAgdGV4dC1hbGlnbjogbGVmdDtcblx0XHQgICAgcGFkZGluZy1yaWdodDogKCRpbnB1dC1wYWRkaW5nLXggKyAkaWNvbi1mb250LXNpemUpO1xuXHRcdCAgICB3aWR0aDogMTAwJTtcblx0XHQgICAgQGluY2x1ZGUgdGV4dC10cnVuY2F0ZSgpO1xuXG5cdFx0ICAgIC8vIEljb25cblx0XHQgICAgJjphZnRlciB7XG5cdFx0ICAgIFx0Y29udGVudDogJ1xcZTljNSc7XG5cdFx0XHQgICAgZm9udC1mYW1pbHk6ICRpY29uLWZvbnQtZmFtaWx5O1xuXHRcdFx0ICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcblx0XHQgICAgXHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0ICAgIFx0dG9wOiAwO1xuXHRcdCAgICBcdHJpZ2h0OiAwO1xuXHRcdFx0ICAgIGZvbnQtc2l6ZTogJGljb24tZm9udC1zaXplO1xuXHRcdFx0ICAgIG1hcmdpbi10b3A6ICgoJGljb24tZm9udC1zaXplIC0gJGxpbmUtaGVpZ2h0LWNvbXB1dGVkKSAvIDIpO1xuXHRcdFx0ICAgIEBpbmNsdWRlIGxsLWZvbnQtc21vb3RoaW5nKCk7XG5cdFx0ICAgIH1cblx0XHR9XG5cblx0XHQvLyBIaWRlIGRlZmF1bHQgc2VsZWN0XG5cdFx0c2VsZWN0IHtcblx0XHRcdHdpZHRoOiAxMDAlO1xuXHRcdFx0bWFyZ2luLXRvcDogMDtcblx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRcdHRvcDogMDtcblx0XHRcdHJpZ2h0OiAwO1xuXHRcdFx0Ym90dG9tOiAwO1xuXHRcdFx0aGVpZ2h0OiAkaW5wdXQtaGVpZ2h0O1xuXHRcdFx0Ym9yZGVyOiAwO1xuXHRcdFx0Y3Vyc29yOiBwb2ludGVyO1xuXHRcdFx0ei1pbmRleDogMTA7XG5cdFx0XHRvcGFjaXR5OiAwO1xuXHRcdH1cblxuXHRcdC8vIERpc2FibGVkIHN0YXRlXG5cdFx0Ji5kaXNhYmxlZCB7XG5cdFx0XHQmOm5vdChbY2xhc3MqPWJnLV0pIHtcblx0XHRcdFx0Y29sb3I6ICRpbnB1dC1kaXNhYmxlZC1jb2xvcjtcblx0XHRcdFx0YmFja2dyb3VuZC1jb2xvcjogJGlucHV0LWRpc2FibGVkLWJnO1xuXHRcdFx0fVxuXG5cdFx0XHQvLyBIb3ZlciBzdGF0ZVxuXHRcdFx0QGluY2x1ZGUgaG92ZXItZm9jdXMge1xuXHRcdFx0XHRAaW5jbHVkZSBib3gtc2hhZG93KG5vbmUgIWltcG9ydGFudCk7XG5cdFx0XHR9XG5cblx0XHRcdC8vIEN1cnNvclxuXHRcdFx0c2VsZWN0IHtcblx0XHRcdFx0Y3Vyc29yOiAkY3Vyc29yLWRpc2FibGVkO1xuXHRcdFx0fVxuXG5cdFx0XHQvLyBGYWRlIG91dCBpZiBzZWxlY3QgaGFzIGN1c3RvbSBjb2xvclxuXHRcdFx0JltjbGFzcyo9YmctXTpub3QoLmJnLXdoaXRlKTpub3QoLmJnLWxpZ2h0KTpub3QoLmJnLXRyYW5zcGFyZW50KSB7XG5cdFx0XHRcdG9wYWNpdHk6IDAuNzU7XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG5cblxuXHQvL1xuXHQvLyBTaXppbmdcblx0Ly9cblxuXHQvLyBMYXJnZVxuXHQuZm9ybS1jb250cm9sLXN0eWxlZC1sZyB7XG5cblx0XHQvLyBGaWxlIGlucHV0IHNpemVcblx0XHRzZWxlY3Q6bm90KFtzaXplXSk6bm90KFttdWx0aXBsZV0pIHtcblx0XHRcdGhlaWdodDogJGlucHV0LWhlaWdodC1sZztcblx0XHR9XG5cblx0XHQvLyBGaWxlIG5hbWUgdGV4dFxuXHRcdC51bmlmb3JtLXNlbGVjdCB7XG5cdFx0XHRoZWlnaHQ6ICRpbnB1dC1oZWlnaHQtbGc7XG5cdFx0XHRwYWRkaW5nOiAkaW5wdXQtcGFkZGluZy15LWxnICRpbnB1dC1wYWRkaW5nLXgtbGc7XG5cdFx0XHRmb250LXNpemU6ICRmb250LXNpemUtbGc7XG5cdFx0XHRsaW5lLWhlaWdodDogJGlucHV0LWxpbmUtaGVpZ2h0LWxnO1xuXHRcdH1cblx0fVxuXG5cdC8vIFNtYWxsXG5cdC5mb3JtLWNvbnRyb2wtc3R5bGVkLXNtIHtcblxuXHRcdC8vIEZpbGUgaW5wdXQgc2l6ZVxuXHRcdHNlbGVjdDpub3QoW3NpemVdKTpub3QoW211bHRpcGxlXSkge1xuXHRcdFx0aGVpZ2h0OiAkaW5wdXQtaGVpZ2h0LXNtO1xuXHRcdH1cblxuXHRcdC8vIEZpbGUgbmFtZSB0ZXh0XG5cdFx0LnVuaWZvcm0tc2VsZWN0IHtcblx0XHRcdGhlaWdodDogJGlucHV0LWhlaWdodC1zbTtcblx0XHRcdHBhZGRpbmc6ICRpbnB1dC1wYWRkaW5nLXktc20gJGlucHV0LXBhZGRpbmcteC1zbTtcblx0XHRcdGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1zbTtcblx0XHRcdGxpbmUtaGVpZ2h0OiAkaW5wdXQtbGluZS1oZWlnaHQtc207XG5cdFx0fVxuXHR9XG59XG4iLCIvKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAqXG4gKiAgIyBTd2l0Y2hlcnlcbiAqXG4gKiAgU3R5bGVzIGZvciBzd2l0Y2hlcnkubWluLmpzIC0gdG9nZ2xlIHN3aXRjaGVzXG4gKlxuICogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuXG4vLyBDaGVjayBpZiBjb21wb25lbnQgaXMgZW5hYmxlZFxuQGlmICRlbmFibGUtc3dpdGNoZXJ5IHtcblxuXG4gICAgLy8gQ29yZVxuICAgIC8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4gICAgLy8gQmFzZVxuICAgIC5zd2l0Y2hlcnkge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkc3dpdGNoZXJ5LWJnO1xuICAgICAgICBib3JkZXI6ICRzd2l0Y2hlcnktYm9yZGVyLXdpZHRoIHNvbGlkICRzd2l0Y2hlcnktYm9yZGVyLWNvbG9yO1xuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBsaW5lLWhlaWdodDogMTtcbiAgICAgICAgd2lkdGg6ICgkc3dpdGNoZXJ5LXNpemUgKiAyKTtcbiAgICAgICAgaGVpZ2h0OiAkc3dpdGNoZXJ5LXNpemU7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgYm94LXNpemluZzogY29udGVudC1ib3g7XG4gICAgICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGJvcmRlci1yYWRpdXMtcm91bmQpO1xuXG4gICAgICAgIC8vIENvbnRhaW5lclxuICAgICAgICAuZm9ybS1jaGVjay1zd2l0Y2hlcnkgJiB7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogKCgkbGluZS1oZWlnaHQtY29tcHV0ZWQgLSAkc3dpdGNoZXJ5LXNpemUpIC8gMikgLSByZW0tY2FsYygkc3dpdGNoZXJ5LWJvcmRlci13aWR0aCk7XG4gICAgICAgIH1cblxuICAgICAgICAvLyBEaXNhYmxlZCBzdGF0ZVxuICAgICAgICAuZm9ybS1jaGVjay1zd2l0Y2hlcnkuZGlzYWJsZWQgJiB7XG4gICAgICAgICAgICBjdXJzb3I6ICRjdXJzb3ItZGlzYWJsZWQ7XG4gICAgICAgIH1cblxuICAgICAgICAvLyBIYW5kbGVcbiAgICAgICAgPiBzbWFsbCB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkc3dpdGNoZXJ5LWhhbmRsZS1iZztcbiAgICAgICAgICAgIHdpZHRoOiAkc3dpdGNoZXJ5LXNpemU7XG4gICAgICAgICAgICBoZWlnaHQ6ICRzd2l0Y2hlcnktc2l6ZTtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICAgIGJveC1zaGFkb3c6ICRzd2l0Y2hlcnktaGFuZGxlLWJveC1zaGFkb3c7XG4gICAgICAgICAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRib3JkZXItcmFkaXVzLXJvdW5kKTtcbiAgICAgICAgfVxuICAgIH1cblxuXG4gICAgLy8gT3B0aW9uc1xuICAgIC8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4gICAgLy8gTGVmdCBwb3NpdGlvblxuICAgIC5mb3JtLWNoZWNrLXN3aXRjaGVyeTpub3QoLmRyb3Bkb3duLWl0ZW0pIHtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAoKCRzd2l0Y2hlcnktc2l6ZSAqIDIpICsgJHN3aXRjaGVyeS1tYXJnaW4teCArIHJlbS1jYWxjKCRzd2l0Y2hlcnktYm9yZGVyLXdpZHRoICogMikpO1xuICAgIH1cblxuICAgIC8vIFJpZ2h0IHBvc2l0aW9uXG4gICAgLmZvcm0tY2hlY2stc3dpdGNoZXJ5Om5vdCguZHJvcGRvd24taXRlbSkge1xuICAgICAgICAmLmZvcm0tY2hlY2stcmlnaHQge1xuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgICAgICAgICAgcGFkZGluZy1yaWdodDogKCgkc3dpdGNoZXJ5LXNpemUgKiAyKSArICRzd2l0Y2hlcnktbWFyZ2luLXggKyByZW0tY2FsYygkc3dpdGNoZXJ5LWJvcmRlci13aWR0aCAqIDIpKTtcblxuICAgICAgICAgICAgLy8gU3dhcCBzaWRlc1xuICAgICAgICAgICAgLnN3aXRjaGVyeSB7XG4gICAgICAgICAgICAgICAgbGVmdDogYXV0bztcbiAgICAgICAgICAgICAgICByaWdodDogMDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuXG4gICAgLy9cbiAgICAvLyBEb3VibGUgc2lkZSBzd2l0Y2hcbiAgICAvL1xuXG4gICAgLmZvcm0tY2hlY2stc3dpdGNoZXJ5LWRvdWJsZSB7XG5cbiAgICAgICAgLy8gSWYgaGFzIGxhYmVsc1xuICAgICAgICAmLmZvcm0tY2hlY2stc3dpdGNoZXJ5IHtcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XG5cbiAgICAgICAgICAgIC5zd2l0Y2hlcnkge1xuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAvLyBMYWJlbFxuICAgICAgICAuZm9ybS1jaGVjay1sYWJlbCB7XG4gICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIH1cblxuICAgICAgICAvLyBTd2l0Y2hcbiAgICAgICAgLnN3aXRjaGVyeSB7XG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogJHN3aXRjaGVyeS1tYXJnaW4teDtcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogJHN3aXRjaGVyeS1tYXJnaW4teDtcbiAgICAgICAgfVxuXG4gICAgICAgIC8vIENoZWNrYm94XG4gICAgICAgIGlucHV0IHtcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAkc3dpdGNoZXJ5LW1hcmdpbi14O1xuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAkc3dpdGNoZXJ5LW1hcmdpbi14O1xuICAgICAgICB9XG4gICAgfVxuXG5cbiAgICAvL1xuICAgIC8vIEluc2lkZSBkcm9wZG93biBtZW51XG4gICAgLy9cblxuICAgIC5kcm9wZG93bi1pdGVtIHtcblxuICAgICAgICAvLyBPdmVycmlkZSBkZWZhdWx0IHN0eWxlc1xuICAgICAgICAmLmZvcm0tY2hlY2stc3dpdGNoZXJ5IHtcblxuICAgICAgICAgICAgLy8gTGFiZWxcbiAgICAgICAgICAgIC5mb3JtLWNoZWNrLWxhYmVsIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6ICgkZHJvcGRvd24taXRlbS1wYWRkaW5nLXggKyAoJHN3aXRjaGVyeS1zaXplICogMikgKyAkZHJvcGRvd24taWNvbi1zcGFjZXIteCArIHJlbS1jYWxjKCRzd2l0Y2hlcnktYm9yZGVyLXdpZHRoICogMikpO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAvLyBDb250YWluZXJcbiAgICAgICAgICAgIC5zd2l0Y2hlcnkge1xuICAgICAgICAgICAgICAgIHRvcDogNTAlO1xuICAgICAgICAgICAgICAgIGxlZnQ6ICRkcm9wZG93bi1pdGVtLXBhZGRpbmcteDtcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAtKCgkc3dpdGNoZXJ5LXNpemUgLyAyKSArIHJlbS1jYWxjKCRzd2l0Y2hlcnktYm9yZGVyLXdpZHRoKSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAvLyBSaWdodCBhbGlnbm1lbnRcbiAgICAgICAgJi5mb3JtLWNoZWNrLXJpZ2h0IHtcblxuICAgICAgICAgICAgLy8gU3BlY2lmaWNhbGx5IGluIHN3aXRjaGVyeSBjb250YWluZXJcbiAgICAgICAgICAgICYuZm9ybS1jaGVjay1zd2l0Y2hlcnkge1xuXG4gICAgICAgICAgICAgICAgLy8gUmV2ZXJzZSBsYWJlbCBwYWRkaW5nXG4gICAgICAgICAgICAgICAgLmZvcm0tY2hlY2stbGFiZWwge1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAoJGRyb3Bkb3duLWl0ZW0tcGFkZGluZy14ICsgKCRzd2l0Y2hlcnktc2l6ZSAqIDIpICsgJGRyb3Bkb3duLWljb24tc3BhY2VyLXggKyByZW0tY2FsYygkc3dpdGNoZXJ5LWJvcmRlci13aWR0aCAqIDIpKTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAvLyBSZXZlcnNlIHN3aXRjaGVyeVxuICAgICAgICAgICAgICAgIC5zd2l0Y2hlcnkge1xuICAgICAgICAgICAgICAgICAgICBsZWZ0OiBhdXRvO1xuICAgICAgICAgICAgICAgICAgICByaWdodDogJGRyb3Bkb3duLWl0ZW0tcGFkZGluZy14O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cbiIsIi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuKlxuKiAgIyBCb290c3RyYXAgc3dpdGNoZXNcbipcbiogIFN0eWxlcyBmb3Igc3dpdGNoLm1pbi5qcyAtIGNoZWNrYm94L3JhZGlvIHRvZ2dsZSBzd2l0Y2hlc1xuKlxuKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5cbi8vIENoZWNrIGlmIGNvbXBvbmVudCBpcyBlbmFibGVkXG5AaWYgJGVuYWJsZS1ib290c3RyYXAtc3dpdGNoIHtcblxuXG4gICAgLy8gQ29yZVxuICAgIC8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4gICAgLy8gQmFzZVxuICAgIC5ib290c3RyYXAtc3dpdGNoIHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICBib3JkZXI6ICRzd2l0Y2gtYm9yZGVyLXdpZHRoIHNvbGlkIHRyYW5zcGFyZW50O1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgICAgIHVzZXItc2VsZWN0OiBub25lO1xuICAgICAgICAvKnJ0bDpiZWdpbjppZ25vcmUqL1xuICAgICAgICBkaXJlY3Rpb246IGx0cjtcbiAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgICAgLypydGw6ZW5kOmlnbm9yZSovXG4gICAgICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGJvcmRlci1yYWRpdXMpO1xuICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKGFsbCBlYXNlLWluLW91dCAkY29tcG9uZW50LXRyYW5zaXRpb24tdGltZXIpO1xuXG4gICAgICAgIC8vIENvbnRhaW5lclxuICAgICAgICAuYm9vdHN0cmFwLXN3aXRjaC1jb250YWluZXIge1xuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgICAgICAgICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGJvcmRlci1yYWRpdXMpO1xuICAgICAgICB9XG5cbiAgICAgICAgLy8gU2V0IGJhc2Ugc3R5bGVzXG4gICAgICAgIC5ib290c3RyYXAtc3dpdGNoLWhhbmRsZS1vbixcbiAgICAgICAgLmJvb3RzdHJhcC1zd2l0Y2gtaGFuZGxlLW9mZixcbiAgICAgICAgLmJvb3RzdHJhcC1zd2l0Y2gtbGFiZWwge1xuICAgICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICAgICAgcGFkZGluZzogJGlucHV0LWJ0bi1wYWRkaW5nLXkgJGlucHV0LWJ0bi1wYWRkaW5nLXg7XG4gICAgICAgIH1cblxuICAgICAgICAvLyBPcmlnaW5hbCBpbnB1dFxuICAgICAgICBpbnB1dCB7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgei1pbmRleDogLTE7XG4gICAgICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLy8gSW5wdXRzXG4gICAgLmZvcm0tY2hlY2stc3dpdGNoIHtcbiAgICAgICAgcGFkZGluZzogMDtcblxuICAgICAgICAvLyBJbiBob3Jpem9udGFsIGZvcm1zXG4gICAgICAgIC5mb3JtLWdyb3VwLnJvdyAmIHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBMZWZ0IHBvc2l0aW9uXG4gICAgLmZvcm0tY2hlY2stc3dpdGNoLWxlZnQge1xuICAgICAgICAuYm9vdHN0cmFwLXN3aXRjaCB7XG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6ICRmb3JtLWNoZWNrLWlubGluZS1pbnB1dC1tYXJnaW4teDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8vIFJpZ2h0IHBvc2l0aW9uXG4gICAgLmZvcm0tY2hlY2stc3dpdGNoLXJpZ2h0IHtcbiAgICAgICAgLmJvb3RzdHJhcC1zd2l0Y2gge1xuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6ICRmb3JtLWNoZWNrLWlubGluZS1pbnB1dC1tYXJnaW4teDtcbiAgICAgICAgfVxuICAgIH1cblxuXG4gICAgLy9cbiAgICAvLyBTdGF0ZXNcbiAgICAvL1xuXG4gICAgLy8gUmVtb3ZlIG91dGxpbmUgb24gZm9jdXNcbiAgICAuYm9vdHN0cmFwLXN3aXRjaC1mb2N1c2VkIHtcbiAgICAgICAgb3V0bGluZTogMDtcbiAgICB9XG5cbiAgICAvLyBEaXNhYmxlZFxuICAgIC5ib290c3RyYXAtc3dpdGNoLWRpc2FibGVkIHtcbiAgICAgICAgLmJvb3RzdHJhcC1zd2l0Y2gtaGFuZGxlLW9uLFxuICAgICAgICAuYm9vdHN0cmFwLXN3aXRjaC1oYW5kbGUtb2ZmLFxuICAgICAgICAuYm9vdHN0cmFwLXN3aXRjaC1sYWJlbCB7XG4gICAgICAgICAgICBjdXJzb3I6ICRjdXJzb3ItZGlzYWJsZWQ7XG4gICAgICAgICAgICBvcGFjaXR5OiAkY2hlY2tib3gtZGlzYWJsZWQtb3BhY2l0eTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8vIFJlYWRvbmx5XG4gICAgLmJvb3RzdHJhcC1zd2l0Y2gtcmVhZG9ubHksXG4gICAgLmJvb3RzdHJhcC1zd2l0Y2gtaW5kZXRlcm1pbmF0ZSB7XG4gICAgICAgIC5ib290c3RyYXAtc3dpdGNoLWhhbmRsZS1vbixcbiAgICAgICAgLmJvb3RzdHJhcC1zd2l0Y2gtaGFuZGxlLW9mZixcbiAgICAgICAgLmJvb3RzdHJhcC1zd2l0Y2gtbGFiZWwge1xuICAgICAgICAgICAgY3Vyc29yOiBkZWZhdWx0ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICBvcGFjaXR5OiAkY2hlY2tib3gtZGlzYWJsZWQtb3BhY2l0eTtcbiAgICAgICAgfVxuICAgIH1cblxuXG4gICAgLy9cbiAgICAvLyBNaXNjXG4gICAgLy9cblxuICAgIC8vIFNldCBhbmltYXRpb25cbiAgICAuYm9vdHN0cmFwLXN3aXRjaC1hbmltYXRlIC5ib290c3RyYXAtc3dpdGNoLWNvbnRhaW5lciB7XG4gICAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb24obWFyZ2luICRjb21wb25lbnQtdHJhbnNpdGlvbi10aW1lcik7XG4gICAgfVxuXG4gICAgLy8gU2V0IGJvcmRlciByYWRpdXNlc1xuICAgIC8qcnRsOmJlZ2luOmlnbm9yZSovXG4gICAgLmJvb3RzdHJhcC1zd2l0Y2gtaW52ZXJzZSB7XG4gICAgICAgIC5ib290c3RyYXAtc3dpdGNoLWhhbmRsZS1vbiB7XG4gICAgICAgICAgICBAaW5jbHVkZSBib3JkZXItbGVmdC1yYWRpdXMoMCk7XG4gICAgICAgICAgICBAaW5jbHVkZSBib3JkZXItcmlnaHQtcmFkaXVzKGNhbGMoI3skYm9yZGVyLXJhZGl1c30gLSAjeyRzd2l0Y2gtYm9yZGVyLXdpZHRofSkpO1xuICAgICAgICB9XG4gICAgICAgIC5ib290c3RyYXAtc3dpdGNoLWhhbmRsZS1vZmYge1xuICAgICAgICAgICAgQGluY2x1ZGUgYm9yZGVyLXJpZ2h0LXJhZGl1cygwKTtcbiAgICAgICAgICAgIEBpbmNsdWRlIGJvcmRlci1sZWZ0LXJhZGl1cyhjYWxjKCN7JGJvcmRlci1yYWRpdXN9IC0gI3skc3dpdGNoLWJvcmRlci13aWR0aH0pKTtcbiAgICAgICAgfVxuICAgIH1cbiAgICAuYm9vdHN0cmFwLXN3aXRjaC1vbixcbiAgICAuYm9vdHN0cmFwLXN3aXRjaC1pbnZlcnNlLmJvb3RzdHJhcC1zd2l0Y2gtb2ZmIHtcbiAgICAgICAgLmJvb3RzdHJhcC1zd2l0Y2gtbGFiZWwge1xuICAgICAgICAgICAgQGluY2x1ZGUgYm9yZGVyLXJpZ2h0LXJhZGl1cyhjYWxjKCN7JGJvcmRlci1yYWRpdXN9IC0gI3skc3dpdGNoLWJvcmRlci13aWR0aH0pKTtcbiAgICAgICAgfVxuICAgIH1cbiAgICAuYm9vdHN0cmFwLXN3aXRjaC1vZmYsXG4gICAgLmJvb3RzdHJhcC1zd2l0Y2gtaW52ZXJzZS5ib290c3RyYXAtc3dpdGNoLW9uIHtcbiAgICAgICAgLmJvb3RzdHJhcC1zd2l0Y2gtbGFiZWwge1xuICAgICAgICAgICAgQGluY2x1ZGUgYm9yZGVyLWxlZnQtcmFkaXVzKGNhbGMoI3skYm9yZGVyLXJhZGl1c30gLSAjeyRzd2l0Y2gtYm9yZGVyLXdpZHRofSkpO1xuICAgICAgICB9XG4gICAgfVxuICAgIC8qcnRsOmVuZDppZ25vcmUqL1xuXG5cblxuICAgIC8vIEVsZW1lbnRzXG4gICAgLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbiAgICAvLyBIYW5kbGVzXG4gICAgLmJvb3RzdHJhcC1zd2l0Y2gtaGFuZGxlLW9uLFxuICAgIC5ib290c3RyYXAtc3dpdGNoLWhhbmRsZS1vZmYge1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgICAgIHotaW5kZXg6IDE7XG4gICAgfVxuXG4gICAgLy8gQ29udGV4dHVhbCBhbHRlcm5hdGl2ZXNcbiAgICAuYm9vdHN0cmFwLXN3aXRjaC1kZWZhdWx0IHtcbiAgICAgICAgY29sb3I6ICRib2R5LWNvbG9yO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkc3dpdGNoLWJnLWRlZmF1bHQ7XG4gICAgfVxuICAgIC5ib290c3RyYXAtc3dpdGNoLXByaW1hcnkge1xuICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0aGVtZS1jb2xvcihcInByaW1hcnlcIik7XG4gICAgfVxuICAgIC5ib290c3RyYXAtc3dpdGNoLWRhbmdlciB7XG4gICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRoZW1lLWNvbG9yKFwiZGFuZ2VyXCIpO1xuICAgIH1cbiAgICAuYm9vdHN0cmFwLXN3aXRjaC1zdWNjZXNzIHtcbiAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdGhlbWUtY29sb3IoXCJzdWNjZXNzXCIpO1xuICAgIH1cbiAgICAuYm9vdHN0cmFwLXN3aXRjaC13YXJuaW5nIHtcbiAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdGhlbWUtY29sb3IoXCJ3YXJuaW5nXCIpO1xuICAgIH1cbiAgICAuYm9vdHN0cmFwLXN3aXRjaC1pbmZvIHtcbiAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdGhlbWUtY29sb3IoXCJpbmZvXCIpO1xuICAgIH1cblxuICAgIC8vIFNldCBib3JkZXIgcmFkaXVzXG4gICAgLypydGw6YmVnaW46aWdub3JlKi9cbiAgICAuYm9vdHN0cmFwLXN3aXRjaC1oYW5kbGUtb24ge1xuICAgICAgICBAaW5jbHVkZSBib3JkZXItbGVmdC1yYWRpdXMoY2FsYygjeyRib3JkZXItcmFkaXVzfSAtICN7JHN3aXRjaC1ib3JkZXItd2lkdGh9KSk7XG4gICAgfVxuICAgIC5ib290c3RyYXAtc3dpdGNoLWhhbmRsZS1vZmYge1xuICAgICAgICBAaW5jbHVkZSBib3JkZXItcmlnaHQtcmFkaXVzKGNhbGMoI3skYm9yZGVyLXJhZGl1c30gLSAjeyRzd2l0Y2gtYm9yZGVyLXdpZHRofSkpO1xuICAgIH1cbiAgICAvKnJ0bDplbmQ6aWdub3JlKi9cblxuICAgIC8vIExhYmVsXG4gICAgLmJvb3RzdHJhcC1zd2l0Y2gtbGFiZWwge1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIHotaW5kZXg6IDEwMDtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHN3aXRjaC1oYW5kbGUtYmc7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgYm94LXNoYWRvdzogMCAwIDAgJHN3aXRjaC1ib3JkZXItd2lkdGggJHN3aXRjaC1oYW5kbGUtYm9yZGVyLWNvbG9yIGluc2V0O1xuICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKGJhY2tncm91bmQtY29sb3IgZWFzZS1pbi1vdXQgJGNvbXBvbmVudC10cmFuc2l0aW9uLXRpbWVyKTtcblxuICAgICAgICAvLyBIb3ZlciBhbmQgYWN0aXZlIHN0YXRlc1xuICAgICAgICAmOmhvdmVyLFxuICAgICAgICAmOmFjdGl2ZSB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkc3dpdGNoLWhhbmRsZS1ob3Zlci1iZztcbiAgICAgICAgfVxuXG4gICAgICAgIC8vIEFkZCB2ZXJ0aWNhbCBsaW5lc1xuICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgdG9wOiA1MCU7XG4gICAgICAgICAgICBsZWZ0OiA1MCU7XG4gICAgICAgICAgICB3aWR0aDogJHN3aXRjaC1oYW5kbGUtd2lkdGg7XG4gICAgICAgICAgICBoZWlnaHQ6ICRzd2l0Y2gtaGFuZGxlLWhlaWdodDtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IC0oJHN3aXRjaC1oYW5kbGUtaGVpZ2h0IC8gMik7XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogLSgkc3dpdGNoLWhhbmRsZS13aWR0aCAvIDIpO1xuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgYm9yZGVyLWxlZnQ6ICRzd2l0Y2gtYm9yZGVyLXdpZHRoIHNvbGlkICRzd2l0Y2gtaGFuZGxlLWJvcmRlci1jb2xvcjtcbiAgICAgICAgICAgIGJvcmRlci1yaWdodDogJHN3aXRjaC1ib3JkZXItd2lkdGggc29saWQgJHN3aXRjaC1oYW5kbGUtYm9yZGVyLWNvbG9yO1xuICAgICAgICB9XG4gICAgfVxuXG5cbiAgICAvL1xuICAgIC8vIFNpemluZ1xuICAgIC8vXG5cbiAgICAvLyBMYXJnZVxuICAgIC5ib290c3RyYXAtc3dpdGNoLWxhcmdlIHtcbiAgICAgICAgLmJvb3RzdHJhcC1zd2l0Y2gtaGFuZGxlLW9uLFxuICAgICAgICAuYm9vdHN0cmFwLXN3aXRjaC1oYW5kbGUtb2ZmLFxuICAgICAgICAuYm9vdHN0cmFwLXN3aXRjaC1sYWJlbCB7XG4gICAgICAgICAgICBwYWRkaW5nOiAkaW5wdXQtYnRuLXBhZGRpbmcteS1sZyAkaW5wdXQtYnRuLXBhZGRpbmcteC1sZztcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8vIFNtYWxsXG4gICAgLmJvb3RzdHJhcC1zd2l0Y2gtc21hbGwge1xuICAgICAgICAuYm9vdHN0cmFwLXN3aXRjaC1oYW5kbGUtb24sXG4gICAgICAgIC5ib290c3RyYXAtc3dpdGNoLWhhbmRsZS1vZmYsXG4gICAgICAgIC5ib290c3RyYXAtc3dpdGNoLWxhYmVsIHtcbiAgICAgICAgICAgIHBhZGRpbmc6ICRpbnB1dC1idG4tcGFkZGluZy15LXNtICRpbnB1dC1idG4tcGFkZGluZy14LXNtO1xuICAgICAgICB9XG4gICAgfVxuXG5cbiAgICAvL1xuICAgIC8vIENoZWNrYm94IHNwZWNpYWxzXG4gICAgLy9cblxuICAgIC8vIFJpZ2h0IGFsaWdubWVudFxuICAgIC5mb3JtLWNoZWNrLXJpZ2h0IC5ib290c3RyYXAtc3dpdGNoIHtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgICAgICBtYXJnaW4tbGVmdDogJGZvcm0tY2hlY2staW5saW5lLWlucHV0LW1hcmdpbi14O1xuICAgIH1cbn1cbiIsIi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuKlxuKiAgIyBTZWxlY3QyIHNlbGVjdHNcbipcbiogIFN0eWxlcyBmb3Igc2VsZWN0Mi5qcyAtIGN1c3RvbSBzZWxlY3QgcGx1Z2luXG4qXG4qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cblxuLy8gQ2hlY2sgaWYgY29tcG9uZW50IGlzIGVuYWJsZWRcbkBpZiAkZW5hYmxlLXNlbGVjdDIge1xuXG5cbiAgICAvLyBTZWxlY3QgYmFzZVxuICAgIC8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4gICAgLnNlbGVjdDItY29udGFpbmVyIHtcbiAgICAgICAgb3V0bGluZTogMDtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgfVxuXG5cbiAgICAvLyBTaW5nbGUgc2VsZWN0XG4gICAgLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbiAgICAuc2VsZWN0Mi1zZWxlY3Rpb24tLXNpbmdsZSB7XG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgb3V0bGluZTogMDtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIHBhZGRpbmc6ICRpbnB1dC1wYWRkaW5nLXkgMDtcbiAgICAgICAgbGluZS1oZWlnaHQ6ICRpbnB1dC1saW5lLWhlaWdodDtcbiAgICAgICAgY29sb3I6ICRpbnB1dC1jb2xvcjtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBib3JkZXI6ICRpbnB1dC1ib3JkZXItd2lkdGggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgICAgIHVzZXItc2VsZWN0OiBub25lO1xuICAgICAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRpbnB1dC1ib3JkZXItcmFkaXVzKTtcbiAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbihhbGwgZWFzZS1pbi1vdXQgJGNvbXBvbmVudC10cmFuc2l0aW9uLXRpbWVyKTtcblxuICAgICAgICAvLyBEYXJrZW4gb24gaG92ZXJcbiAgICAgICAgJjpob3ZlcixcbiAgICAgICAgJjpmb2N1cyxcbiAgICAgICAgLnNlbGVjdDItY29udGFpbmVyLS1vcGVuICYge1xuICAgICAgICAgICAgYm94LXNoYWRvdzogJGhvdmVyLXNoYWRvdy1saWdodGVyO1xuICAgICAgICB9XG5cbiAgICAgICAgLy8gQWxsb3cgY3VzdG9tIGJhY2tncm91bmQgY29sb3JcbiAgICAgICAgJjpub3QoW2NsYXNzKj1iZy1dKSB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaW5wdXQtYmc7XG5cbiAgICAgICAgICAgIC8vIEFsbG93IGN1c3RvbSBib3JkZXIgY29sb3JcbiAgICAgICAgICAgICY6bm90KFtjbGFzcyo9Ym9yZGVyLV0pIHtcbiAgICAgICAgICAgICAgICBib3JkZXItY29sb3I6ICRpbnB1dC1ib3JkZXItY29sb3I7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAvLyBBcHBseSBkYXJrZXIgaG92ZXIgY29sb3JcbiAgICAgICAgJltjbGFzcyo9YmctXSB7XG4gICAgICAgICAgICAmOmhvdmVyLFxuICAgICAgICAgICAgJjpmb2N1cyxcbiAgICAgICAgICAgIC5zZWxlY3QyLWNvbnRhaW5lci0tb3BlbiAmIHtcbiAgICAgICAgICAgICAgICBib3gtc2hhZG93OiAkaG92ZXItc2hhZG93LWRhcmtlcjtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLy8gUGxhY2Vob2xkZXJcbiAgICAgICAgICAgIC5zZWxlY3QyLXNlbGVjdGlvbl9fcGxhY2Vob2xkZXIge1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XG5cbiAgICAgICAgICAgICAgICAvLyBJbiBkaXNhYmxlZCBtb2RlXG4gICAgICAgICAgICAgICAgLnNlbGVjdDItY29udGFpbmVyLS1kaXNhYmxlZCAmIHtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6IHJnYmEoJHdoaXRlLCAwLjc1KTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAvLyBSZXN1bHQgdGV4dFxuICAgICAgICAuc2VsZWN0Mi1zZWxlY3Rpb25fX3JlbmRlcmVkIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAkaW5wdXQtcGFkZGluZy14O1xuICAgICAgICAgICAgcGFkZGluZy1yaWdodDogKCRpbnB1dC1wYWRkaW5nLXggKyAoJGljb24tZm9udC1zaXplICogMS41KSk7XG4gICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICAgICAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gICAgICAgICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuXG4gICAgICAgICAgICAvLyBJY29uc1xuICAgICAgICAgICAgPiBpIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6ICRlbGVtZW50LXNwYWNlci14O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLy8gQ2xlYXIgc2VsZWN0aW9uIGJ1dHRvblxuICAgICAgICAuc2VsZWN0Mi1zZWxlY3Rpb25fX2NsZWFyIHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgICAgIGZsb2F0OiByaWdodDtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMDtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogKCgkbGluZS1oZWlnaHQtY29tcHV0ZWQgLSAkaWNvbi1mb250LXNpemUpIC8gMik7XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogJGVsZW1lbnQtc3BhY2VyLXg7XG4gICAgICAgICAgICBvcGFjaXR5OiAwLjc1O1xuICAgICAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbihvcGFjaXR5IGVhc2UtaW4tb3V0ICRjb21wb25lbnQtdHJhbnNpdGlvbi10aW1lcik7XG5cbiAgICAgICAgICAgIC8vIEFkZCBob3ZlciBzdGF0ZSBlZmZlY3RcbiAgICAgICAgICAgIEBpbmNsdWRlIGhvdmVyIHtcbiAgICAgICAgICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAvLyBDcm9zcyBpY29uXG4gICAgICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgICAgICBjb250ZW50OiAnXFxlZDZiJztcbiAgICAgICAgICAgICAgICBmb250LWZhbWlseTogJGljb24tZm9udC1mYW1pbHk7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogJGljb24tZm9udC1zaXplO1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGxsLWZvbnQtc21vb3RoaW5nKCk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAvLyBQbGFjZWhvbGRlclxuICAgICAgICAuc2VsZWN0Mi1zZWxlY3Rpb25fX3BsYWNlaG9sZGVyIHtcbiAgICAgICAgICAgIGNvbG9yOiAkaW5wdXQtcGxhY2Vob2xkZXItY29sb3I7XG4gICAgICAgIH1cblxuICAgICAgICAvLyBEcm9wZG93biBhcnJvd1xuICAgICAgICAuc2VsZWN0Mi1zZWxlY3Rpb25fX2Fycm93IHtcblxuICAgICAgICAgICAgLy8gQXJyb3cgaWNvblxuICAgICAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICAgICAgY29udGVudDogJ1xcZTljNSc7XG4gICAgICAgICAgICAgICAgZm9udC1mYW1pbHk6ICRpY29uLWZvbnQtZmFtaWx5O1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgdG9wOiA1MCU7XG4gICAgICAgICAgICAgICAgcmlnaHQ6ICRpbnB1dC1wYWRkaW5nLXg7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogLSgkaWNvbi1mb250LXNpemUgLyAyKTtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6ICRpY29uLWZvbnQtc2l6ZTtcbiAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMTtcbiAgICAgICAgICAgICAgICBjb2xvcjogaW5oZXJpdDtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBsbC1mb250LXNtb290aGluZygpO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAvLyBIaWRlIGRlZmF1bHQgYXJyb3dcbiAgICAgICAgICAgIGIge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAvLyBEaXNhYmxlZCBtZW51XG4gICAgICAgIC5zZWxlY3QyLWNvbnRhaW5lci0tZGlzYWJsZWQgJiB7XG4gICAgICAgICAgICBjdXJzb3I6ICRjdXJzb3ItZGlzYWJsZWQ7XG4gICAgICAgICAgICBib3gtc2hhZG93OiBub25lO1xuXG4gICAgICAgICAgICAvLyBEaXNhYmxlZCBzdGF0ZSBmb3IgY29udGFpbmVyXG4gICAgICAgICAgICAmOm5vdChbY2xhc3MqPWJnLV0pIHtcbiAgICAgICAgICAgICAgICBjb2xvcjogJGlucHV0LWRpc2FibGVkLWNvbG9yO1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRpbnB1dC1kaXNhYmxlZC1iZztcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLy8gRGlzYWJsZWQgc3RhdGUgZm9yIGN1c3RvbSBjb2xvcmVkIGNvbnRhaW5lclxuICAgICAgICAgICAgJltjbGFzcyo9YmctXSB7XG4gICAgICAgICAgICAgICAgb3BhY2l0eTogJHNlbGVjdDItY3VzdG9tLWRpc2FibGVkLW9wYWNpdHk7XG4gICAgICAgICAgICAgICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLy8gSGlkZSBjbGVhciBidXR0b25cbiAgICAgICAgICAgIC5zZWxlY3QyLXNlbGVjdGlvbl9fY2xlYXIge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cblxuICAgIC8vIE11bHRpcGxlIHNlbGVjdFxuICAgIC8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4gICAgLnNlbGVjdDItc2VsZWN0aW9uLS1tdWx0aXBsZSB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBib3JkZXI6ICRpbnB1dC1ib3JkZXItd2lkdGggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgICAgIGN1cnNvcjogdGV4dDtcbiAgICAgICAgb3V0bGluZTogMDtcbiAgICAgICAgdXNlci1zZWxlY3Q6IG5vbmU7XG4gICAgICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGlucHV0LWJvcmRlci1yYWRpdXMpO1xuXG4gICAgICAgIC8vIEFsbG93IGN1c3RvbSBiYWNrZ3JvdW5kIGNvbG9yXG4gICAgICAgICY6bm90KFtjbGFzcyo9YmctXSkge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGlucHV0LWJnO1xuXG4gICAgICAgICAgICAvLyBBbGxvdyBjdXN0b20gYm9yZGVyIGNvbG9yXG4gICAgICAgICAgICAmOm5vdChbY2xhc3MqPWJvcmRlci1dKSB7XG4gICAgICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiAkaW5wdXQtYm9yZGVyLWNvbG9yO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLy8gUmVzdWx0IHRleHRcbiAgICAgICAgLnNlbGVjdDItc2VsZWN0aW9uX19yZW5kZXJlZCB7XG4gICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICAgICAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gICAgICAgICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgICAgICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgIHBhZGRpbmc6IDAgJHNlbGVjdDItcGlsbHMtc3BhY2VyICRzZWxlY3QyLXBpbGxzLXNwYWNlciAkc2VsZWN0Mi1waWxscy1zcGFjZXI7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgfVxuXG4gICAgICAgIC8vIFBsYWNlaG9sZGVyXG4gICAgICAgIC5zZWxlY3QyLXNlbGVjdGlvbl9fcGxhY2Vob2xkZXIge1xuICAgICAgICAgICAgY29sb3I6ICRpbnB1dC1wbGFjZWhvbGRlci1jb2xvcjtcbiAgICAgICAgfVxuXG4gICAgICAgIC8vIERpc2FibGVkIG11bHRpc2VsZWN0XG4gICAgICAgIC5zZWxlY3QyLWNvbnRhaW5lci0tZGlzYWJsZWQgJiB7XG5cbiAgICAgICAgICAgIC8vIERpc2FibGVkIHN0YXRlIGZvciBjb250YWluZXJcbiAgICAgICAgICAgICY6bm90KFtjbGFzcyo9YmctXSkge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRpbnB1dC1kaXNhYmxlZC1iZztcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLy8gRGlzYWJsZWQgc3RhdGUgZm9yIGN1c3RvbSBjb2xvcmVkIGNvbnRhaW5lclxuICAgICAgICAgICAgJltjbGFzcyo9YmctXSB7XG4gICAgICAgICAgICAgICAgb3BhY2l0eTogJHNlbGVjdDItY3VzdG9tLWRpc2FibGVkLW9wYWNpdHk7XG4gICAgICAgICAgICAgICAgYm94LXNoYWRvdzogbm9uZTtcblxuICAgICAgICAgICAgICAgIC5zZWxlY3QyLXNlbGVjdGlvbl9fY2hvaWNlIHtcbiAgICAgICAgICAgICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC8vIEFwcGx5IGRpc2FibGVkIGN1cnNvciBmb3IgYWxsIGVsZW1lbnRzXG4gICAgICAgICAgICAmLFxuICAgICAgICAgICAgLnNlbGVjdDItc2VsZWN0aW9uX19jaG9pY2UsXG4gICAgICAgICAgICAuc2VsZWN0Mi1zZWFyY2hfX2ZpZWxkIHtcbiAgICAgICAgICAgICAgICBjdXJzb3I6ICRjdXJzb3ItZGlzYWJsZWQ7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAvLyBDaG9pY2VzXG4gICAgICAgIC5zZWxlY3QyLXNlbGVjdGlvbl9fY2hvaWNlIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRzZWxlY3QyLXBpbGxzLWJnO1xuICAgICAgICAgICAgY29sb3I6ICRzZWxlY3QyLXBpbGxzLWNvbG9yO1xuICAgICAgICAgICAgY3Vyc29yOiBkZWZhdWx0O1xuICAgICAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6ICRzZWxlY3QyLXBpbGxzLXNwYWNlcjtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6ICRzZWxlY3QyLXBpbGxzLXNwYWNlcjtcbiAgICAgICAgICAgIHBhZGRpbmc6ICgkaW5wdXQtcGFkZGluZy15IC0gJHNlbGVjdDItcGlsbHMtc3BhY2VyKSAkaW5wdXQtYnRuLXBhZGRpbmcteDtcbiAgICAgICAgICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJHNlbGVjdDItcGlsbHMtYm9yZGVyLXJhZGl1cyk7XG4gICAgICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKGNvbG9yIGVhc2UtaW4tb3V0ICRjb21wb25lbnQtdHJhbnNpdGlvbi10aW1lciwgYmFja2dyb3VuZC1jb2xvciBlYXNlLWluLW91dCAkY29tcG9uZW50LXRyYW5zaXRpb24tdGltZXIpO1xuXG4gICAgICAgICAgICAvLyBIb3ZlciBzdGF0ZVxuICAgICAgICAgICAgQGluY2x1ZGUgaG92ZXItZm9jdXMge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRzZWxlY3QyLXBpbGxzLWhvdmVyLWJnO1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkc2VsZWN0Mi1waWxscy1ob3Zlci1jb2xvcjtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLy8gSWNvbnNcbiAgICAgICAgICAgID4gaSB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAkZWxlbWVudC1zcGFjZXIteDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLy8gUmVtb3ZlclxuICAgICAgICAgICAgLnNlbGVjdDItc2VsZWN0aW9uX19jaG9pY2VfX3JlbW92ZSB7XG4gICAgICAgICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICAgICAgICAgIGZsb2F0OiByaWdodDtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6ICRmb250LXNpemUtbGc7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogKCgkbGluZS1oZWlnaHQtY29tcHV0ZWQgLSAkZm9udC1zaXplLWxnKSAvIDIpO1xuICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAkZWxlbWVudC1zcGFjZXIteDtcbiAgICAgICAgICAgICAgICBvcGFjaXR5OiAwLjc1O1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb24ob3BhY2l0eSBlYXNlLWluLW91dCAkY29tcG9uZW50LXRyYW5zaXRpb24tdGltZXIpO1xuXG4gICAgICAgICAgICAgICAgLy8gSGlnaGxpZ2h0IG9uIGhvdmVyXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgaG92ZXIge1xuICAgICAgICAgICAgICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLy8gRGlzYWJsZSBjaG9pY2VcbiAgICAgICAgICAgIC5zZWxlY3QyLWNvbnRhaW5lci0tZGlzYWJsZWQgJiB7XG4gICAgICAgICAgICAgICAgb3BhY2l0eTogJHNlbGVjdDItZGlzYWJsZWQtb3BhY2l0eTtcblxuICAgICAgICAgICAgICAgIC8vIEhvdmVyIHN0YXRlXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgaG92ZXItZm9jdXMge1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkc2VsZWN0Mi1waWxscy1iZztcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRzZWxlY3QyLXBpbGxzLWNvbG9yO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIC8vIEhpZGUgcmVtb3ZlclxuICAgICAgICAgICAgICAgIC5zZWxlY3QyLXNlbGVjdGlvbl9fY2hvaWNlX19yZW1vdmUge1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC8vIFNlYXJjaFxuICAgICAgICAuc2VsZWN0Mi1zZWFyY2gtLWlubGluZSB7XG4gICAgICAgICAgICBmbG9hdDogbGVmdDtcblxuICAgICAgICAgICAgLy8gU2VhcmNoIGZpZWxkXG4gICAgICAgICAgICAuc2VsZWN0Mi1zZWFyY2hfX2ZpZWxkIHtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDEwMCU7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogJHNlbGVjdDItcGlsbHMtc3BhY2VyO1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6ICgkaW5wdXQtcGFkZGluZy15IC0gJHNlbGVjdDItcGlsbHMtc3BhY2VyKSAwO1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICAgICAgICAgIGJvcmRlci13aWR0aDogMDtcbiAgICAgICAgICAgICAgICBvdXRsaW5lOiAwO1xuICAgICAgICAgICAgICAgIGNvbG9yOiBpbmhlcml0O1xuICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAoJHNlbGVjdDItcGlsbHMtc3BhY2VyICogMik7XG4gICAgICAgICAgICAgICAgLXdlYmtpdC1hcHBlYXJhbmNlOiB0ZXh0ZmllbGQ7XG5cbiAgICAgICAgICAgICAgICAvLyBDYW5jZWwgYnV0dG9uXG4gICAgICAgICAgICAgICAgJjo6LXdlYmtpdC1zZWFyY2gtY2FuY2VsLWJ1dHRvbiB7XG4gICAgICAgICAgICAgICAgICAgIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC8vIFJlbW92ZSBsZWZ0IHNwYWNpbmcgaWYgbm8gcGlsbHNcbiAgICAgICAgICAgICY6Zmlyc3QtY2hpbGQgLnNlbGVjdDItc2VhcmNoX19maWVsZCB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAkaW5wdXQtcGFkZGluZy14IC0gJHNlbGVjdDItcGlsbHMtc3BhY2VyO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG5cbiAgICAvLyBTZWxlY3QgcmVzdWx0c1xuICAgIC8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4gICAgLy8gRHJvcGRvd25cbiAgICAuc2VsZWN0Mi1kcm9wZG93biB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRkcm9wZG93bi1iZztcbiAgICAgICAgY29sb3I6ICRkcm9wZG93bi1saW5rLWNvbG9yO1xuICAgICAgICBib3JkZXI6ICRkcm9wZG93bi1ib3JkZXItd2lkdGggc29saWQgJGRyb3Bkb3duLWJvcmRlci1jb2xvcjtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgLypydGw6aWdub3JlKi9cbiAgICAgICAgbGVmdDogLTEwMDAwMHB4O1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgei1pbmRleDogJHppbmRleC10b29sdGlwO1xuICAgICAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRkcm9wZG93bi1ib3JkZXItcmFkaXVzKTtcbiAgICAgICAgQGluY2x1ZGUgYm94LXNoYWRvdygkZHJvcGRvd24tYm94LXNoYWRvdyk7XG4gICAgfVxuXG4gICAgLy8gUmVzdWx0cyBjb250YWluZXJcbiAgICAuc2VsZWN0Mi1yZXN1bHRzIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgfVxuXG4gICAgLy8gT3B0aW9ucyBsaXN0XG4gICAgLnNlbGVjdDItcmVzdWx0c19fb3B0aW9ucyB7XG4gICAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgcGFkZGluZzogMDtcblxuICAgICAgICAvLyBBZGQgc2Nyb2xsYmFyIHRvIGZpcnN0IGxldmVsIGxpc3RcbiAgICAgICAgLnNlbGVjdDItcmVzdWx0cyA+ICYge1xuICAgICAgICAgICAgcGFkZGluZy1ib3R0b206ICRkcm9wZG93bi1wYWRkaW5nLXk7XG4gICAgICAgICAgICBtYXgtaGVpZ2h0OiAkc2VsZWN0Mi1tYXgtaGVpZ2h0O1xuICAgICAgICAgICAgb3ZlcmZsb3cteTogYXV0bztcblxuICAgICAgICAgICAgLy8gQWRkIHRvcCBzcGFjaW5nIGlmIHNlYXJjaCBpcyBoaWRkZW5cbiAgICAgICAgICAgIC5zZWxlY3QyLXNlYXJjaC0taGlkZSArICYge1xuICAgICAgICAgICAgICAgIHBhZGRpbmctdG9wOiAkZHJvcGRvd24tcGFkZGluZy15O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLy8gRmlyc3Qgb25lXG4gICAgICAgIC5zZWxlY3QyLXJlc3VsdHM6Zmlyc3QtY2hpbGQgPiAmIHtcbiAgICAgICAgICAgIHBhZGRpbmctdG9wOiAkZHJvcGRvd24tcGFkZGluZy15O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLy8gT3B0aW9uXG4gICAgLnNlbGVjdDItcmVzdWx0c19fb3B0aW9uIHtcbiAgICAgICAgcGFkZGluZzogJGRyb3Bkb3duLWl0ZW0tcGFkZGluZy15ICRkcm9wZG93bi1pdGVtLXBhZGRpbmcteDtcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICB1c2VyLXNlbGVjdDogbm9uZTtcbiAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbihhbGwgZWFzZS1pbi1vdXQgJGNvbXBvbmVudC10cmFuc2l0aW9uLXRpbWVyKTtcblxuICAgICAgICAvLyBBZGQgMXB4IGdhcCBiZXR3ZWVuIG9wdGlvbnNcbiAgICAgICAgJiArICYge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogJGRyb3Bkb3duLWl0ZW0tc3BhY2VyLXk7XG4gICAgICAgIH1cblxuICAgICAgICAvLyBJY29uc1xuICAgICAgICBpIHtcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogJGVsZW1lbnQtc3BhY2VyLXg7XG5cbiAgICAgICAgICAgIC8vIERvIG5vdCBkaXNwbGF5IGVtcHR5IGljb25cbiAgICAgICAgICAgICYuaWNvbi11bmRlZmluZWQge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAvLyBPcHRpb24gZ3JvdXBcbiAgICAgICAgJltyb2xlPWdyb3VwXSB7XG4gICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICB9XG5cbiAgICAgICAgLy8gSGlnaGxpZ2h0ZWQgb3B0aW9uIChob3ZlciBzdGF0ZSlcbiAgICAgICAgJi5zZWxlY3QyLXJlc3VsdHNfX29wdGlvbi0taGlnaGxpZ2h0ZWQge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGRyb3Bkb3duLWxpbmstaG92ZXItYmc7XG4gICAgICAgICAgICBjb2xvcjogJGRyb3Bkb3duLWxpbmstaG92ZXItY29sb3I7XG4gICAgICAgIH1cblxuICAgICAgICAvLyBEaXNhYmxlZCBvcHRpb25cbiAgICAgICAgJlthcmlhLWRpc2FibGVkPXRydWVdIHtcbiAgICAgICAgICAgIGNvbG9yOiAkZHJvcGRvd24tbGluay1kaXNhYmxlZC1jb2xvcjtcbiAgICAgICAgICAgIGN1cnNvcjogJGN1cnNvci1kaXNhYmxlZDtcblxuICAgICAgICAgICAgLy8gSW4gY29sb3JlZCBtZW51XG4gICAgICAgICAgICAuc2VsZWN0Mi1kcm9wZG93bltjbGFzcyo9YmctXSAmIHtcbiAgICAgICAgICAgICAgICBjb2xvcjogcmdiYSgkd2hpdGUsIDAuNik7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAvLyBTZWxlY3RlZCBvcHRpb25cbiAgICAgICAgJlthcmlhLXNlbGVjdGVkPXRydWVdIHtcbiAgICAgICAgICAgIGNvbG9yOiAkZHJvcGRvd24tbGluay1hY3RpdmUtY29sb3I7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZHJvcGRvd24tbGluay1hY3RpdmUtYmc7XG4gICAgICAgIH1cblxuICAgICAgICAvLyBBZGQgZG91YmxlIGhvcml6b250YWwgc3BhY2luZyBmb3IgbmVzdGVkIG9wdGlvbnNcbiAgICAgICAgLnNlbGVjdDItcmVzdWx0c19fb3B0aW9ucy0tbmVzdGVkID4gJiB7XG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6ICgkZHJvcGRvd24taXRlbS1wYWRkaW5nLXggKiAyKTtcbiAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6ICgkZHJvcGRvd24taXRlbS1wYWRkaW5nLXggKiAyKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8vIE9wdGlvbiBncm91cCB0aXRsZVxuICAgIC5zZWxlY3QyLXJlc3VsdHNfX2dyb3VwIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIHBhZGRpbmc6ICRkcm9wZG93bi1pdGVtLXBhZGRpbmcteSAkZHJvcGRvd24taXRlbS1wYWRkaW5nLXg7XG4gICAgICAgIGN1cnNvcjogZGVmYXVsdDtcbiAgICAgICAgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1zZW1pYm9sZDtcbiAgICAgICAgbWFyZ2luLXRvcDogJGRyb3Bkb3duLXBhZGRpbmcteTtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogJGRyb3Bkb3duLXBhZGRpbmcteTtcblxuICAgICAgICAvLyBSZW1vdmUgdG9wIHNwYWNpbmcgZnJvbSB0aGUgZmlyc3QgZ3JvdXAgdGl0bGVcbiAgICAgICAgLnNlbGVjdDItcmVzdWx0c19fb3B0aW9uOmZpcnN0LWNoaWxkID4gJiB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgICB9XG4gICAgfVxuXG5cbiAgICAvL1xuICAgIC8vIE1lc3NhZ2VzXG4gICAgLy9cblxuICAgIC8vIFJlc3VsdHNcbiAgICAuc2VsZWN0Mi1yZXN1bHRzX19tZXNzYWdlIHtcbiAgICAgICAgY29sb3I6ICRzZWxlY3QyLWxpZ2h0LXJlc3VsdHMtY29sb3I7XG4gICAgICAgIGN1cnNvcjogZGVmYXVsdDtcblxuICAgICAgICAvLyBNdXRlIGlmIGluIGNvbG9yZWQgZHJvcGRvd25cbiAgICAgICAgLnNlbGVjdDItZHJvcGRvd25bY2xhc3MqPWJnLV0gJiB7XG4gICAgICAgICAgICBjb2xvcjogJHNlbGVjdDItZGFyay1yZXN1bHRzLWNvbG9yO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLy8gTG9hZGluZ1xuICAgIC5zZWxlY3QyLXJlc3VsdHNfX29wdGlvbi5sb2FkaW5nLXJlc3VsdHMge1xuICAgICAgICBwYWRkaW5nLXRvcDogMDtcblxuICAgICAgICAvLyBBZGQgZXh0cmEgdG9wIHNwYWNpbmdcbiAgICAgICAgKyAuc2VsZWN0Mi1yZXN1bHRzX19vcHRpb24ge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogJGRyb3Bkb3duLXBhZGRpbmcteTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8vIExvYWQgbW9yZSBmb3IgaW5maW5pdGUgc2Nyb2xsXG4gICAgLnNlbGVjdDItcmVzdWx0c19fb3B0aW9uLS1sb2FkLW1vcmUge1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIG1hcmdpbi10b3A6ICRkcm9wZG93bi1wYWRkaW5nLXk7XG4gICAgICAgIGN1cnNvcjogZGVmYXVsdDtcbiAgICB9XG5cblxuICAgIC8vXG4gICAgLy8gT3BlbmVkIGRyb3Bkb3duXG4gICAgLy9cblxuICAgIC5zZWxlY3QyLWNvbnRhaW5lci0tb3BlbiB7XG5cbiAgICAgICAgLy8gRHJvcGRvd25cbiAgICAgICAgLnNlbGVjdDItZHJvcGRvd24ge1xuICAgICAgICAgICAgLypydGw6aWdub3JlKi9cbiAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIH1cblxuICAgICAgICAvLyBJZiBvcGVuZWQgYWJvdmVcbiAgICAgICAgLnNlbGVjdDItZHJvcGRvd24tLWFib3ZlIHtcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDA7XG4gICAgICAgICAgICBAaW5jbHVkZSBib3JkZXItYm90dG9tLXJhZGl1cygwKTtcblxuICAgICAgICAgICAgLy8gQWRkIGJvcmRlciBmb3IgY29sb3JlZCBtZW51XG4gICAgICAgICAgICAmW2NsYXNzKj1iZy1dIHtcbiAgICAgICAgICAgICAgICBib3JkZXItYm90dG9tOiAkZHJvcGRvd24tYm9yZGVyLXdpZHRoIHNvbGlkIHJnYmEoJHdoaXRlLCAwLjIpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgICYuc2VsZWN0Mi1jb250YWluZXItLWFib3ZlIHtcbiAgICAgICAgICAgIC5zZWxlY3QyLXNlbGVjdGlvbi0tc2luZ2xlLFxuICAgICAgICAgICAgLnNlbGVjdDItc2VsZWN0aW9uLS1tdWx0aXBsZSB7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgYm9yZGVyLXRvcC1yYWRpdXMoMCk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAvLyBJZiBvcGVuZWQgYmVsb3dcbiAgICAgICAgLnNlbGVjdDItZHJvcGRvd24tLWJlbG93IHtcbiAgICAgICAgICAgIGJvcmRlci10b3A6IG5vbmU7XG4gICAgICAgICAgICBAaW5jbHVkZSBib3JkZXItdG9wLXJhZGl1cygwKTtcblxuICAgICAgICAgICAgLy8gQWRkIGJvcmRlciBmb3IgY29sb3JlZCBtZW51XG4gICAgICAgICAgICAmW2NsYXNzKj1iZy1dIHtcbiAgICAgICAgICAgICAgICBib3JkZXItdG9wOiAkZHJvcGRvd24tYm9yZGVyLXdpZHRoIHNvbGlkIHJnYmEoJHdoaXRlLCAwLjIpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgICYuc2VsZWN0Mi1jb250YWluZXItLWJlbG93IHtcbiAgICAgICAgICAgIC5zZWxlY3QyLXNlbGVjdGlvbi0tc2luZ2xlLFxuICAgICAgICAgICAgLnNlbGVjdDItc2VsZWN0aW9uLS1tdWx0aXBsZSB7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgYm9yZGVyLWJvdHRvbS1yYWRpdXMoMCk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cblxuICAgIC8vXG4gICAgLy8gU2VhcmNoIGluc2lkZSBkcm9wZG93blxuICAgIC8vXG5cbiAgICAuc2VsZWN0Mi1zZWFyY2gtLWRyb3Bkb3duIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgcGFkZGluZzogJGRyb3Bkb3duLWl0ZW0tcGFkZGluZy14O1xuXG4gICAgICAgIC8vIEFkZCBzZWFyY2ggaWNvblxuICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgIGNvbnRlbnQ6ICdcXGU5OGUnO1xuICAgICAgICAgICAgZm9udC1mYW1pbHk6ICRpY29uLWZvbnQtZmFtaWx5O1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgdG9wOiA1MCU7XG4gICAgICAgICAgICBsZWZ0OiAoJGRyb3Bkb3duLWl0ZW0tcGFkZGluZy14ICsgJGlucHV0LXBhZGRpbmcteCk7XG4gICAgICAgICAgICBjb2xvcjogaW5oZXJpdDtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgZm9udC1zaXplOiAkZm9udC1zaXplLWJhc2U7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAtKCRmb250LXNpemUtYmFzZSAvIDIpO1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgICAgICAgICBvcGFjaXR5OiAwLjY7XG4gICAgICAgICAgICBAaW5jbHVkZSBsbC1mb250LXNtb290aGluZygpO1xuICAgICAgICB9XG5cbiAgICAgICAgLy8gUmVtb3ZlIHRvcCBzcGFjaW5nIGZyb20gdGhlIHJlc3VsdHMgbWVzc2FnZVxuICAgICAgICArIC5zZWxlY3QyLXJlc3VsdHMgLnNlbGVjdDItcmVzdWx0c19fbWVzc2FnZTpmaXJzdC1jaGlsZCB7XG4gICAgICAgICAgICBwYWRkaW5nLXRvcDogMDtcbiAgICAgICAgfVxuXG4gICAgICAgIC8vIFNlYXJjaCBmaWVsZFxuICAgICAgICAuc2VsZWN0Mi1zZWFyY2hfX2ZpZWxkIHtcbiAgICAgICAgICAgIHBhZGRpbmc6ICRpbnB1dC1wYWRkaW5nLXkgJGlucHV0LXBhZGRpbmcteDtcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogKCRpbnB1dC1wYWRkaW5nLXggKiAyKSArICRmb250LXNpemUtYmFzZTtcbiAgICAgICAgICAgIGJvcmRlcjogJGlucHV0LWJvcmRlci13aWR0aCBzb2xpZCAkaW5wdXQtYm9yZGVyLWNvbG9yO1xuICAgICAgICAgICAgb3V0bGluZTogMDtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkaW5wdXQtYm9yZGVyLXJhZGl1cyk7XG5cbiAgICAgICAgICAgIC8vIENhbmNlbCBidXR0b25cbiAgICAgICAgICAgICY6Oi13ZWJraXQtc2VhcmNoLWNhbmNlbC1idXR0b24ge1xuICAgICAgICAgICAgICAgIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC8vIEhpZGRlbiBzZWFyY2ggZmllbGRcbiAgICAgICAgJi5zZWxlY3QyLXNlYXJjaC0taGlkZSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9XG4gICAgfVxuXG5cbiAgICAvLyBPcHRpb25hbCBzaXppbmdcbiAgICAvLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuICAgIC8vIExhcmdlXG4gICAgLnNlbGVjdC1sZyB7XG5cbiAgICAgICAgLy8gU2luZ2xlXG4gICAgICAgICYuc2VsZWN0Mi1zZWxlY3Rpb24tLXNpbmdsZSB7XG4gICAgICAgICAgICBwYWRkaW5nOiAkaW5wdXQtcGFkZGluZy15LWxnIDA7XG4gICAgICAgICAgICBmb250LXNpemU6ICRmb250LXNpemUtbGc7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogJGlucHV0LWxpbmUtaGVpZ2h0LWxnO1xuXG4gICAgICAgICAgICAuc2VsZWN0Mi1zZWxlY3Rpb25fX3JlbmRlcmVkIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6ICRpbnB1dC1wYWRkaW5nLXgtbGc7XG4gICAgICAgICAgICAgICAgcGFkZGluZy1yaWdodDogKCRpbnB1dC1wYWRkaW5nLXgtbGcgKyAoJGljb24tZm9udC1zaXplICogMS41KSk7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5zZWxlY3QyLXNlbGVjdGlvbl9fYXJyb3c6YWZ0ZXIge1xuICAgICAgICAgICAgICAgIHJpZ2h0OiAkaW5wdXQtcGFkZGluZy14LWxnO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLy8gTXVsdGlwbGVcbiAgICAgICAgJi5zZWxlY3QyLXNlbGVjdGlvbi0tbXVsdGlwbGUge1xuICAgICAgICAgICAgLnNlbGVjdDItc2VsZWN0aW9uX19jaG9pY2Uge1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6ICgkaW5wdXQtcGFkZGluZy15LWxnIC0gJHNlbGVjdDItcGlsbHMtc3BhY2VyKSAkaW5wdXQtYnRuLXBhZGRpbmcteC1sZztcbiAgICAgICAgICAgICAgICBmb250LXNpemU6ICRmb250LXNpemUtbGc7XG4gICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6ICRpbnB1dC1saW5lLWhlaWdodC1sZztcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLnNlbGVjdDItc2VhcmNoLS1pbmxpbmUgLnNlbGVjdDItc2VhcmNoX19maWVsZCB7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogKCRpbnB1dC1wYWRkaW5nLXktbGcgLSAkc2VsZWN0Mi1waWxscy1zcGFjZXIpIDA7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAkZm9udC1zaXplLWxnO1xuICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAkaW5wdXQtbGluZS1oZWlnaHQtbGc7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBTbWFsbFxuICAgIC5zZWxlY3Qtc20ge1xuXG4gICAgICAgIC8vIFNpbmdsZVxuICAgICAgICAmLnNlbGVjdDItc2VsZWN0aW9uLS1zaW5nbGUge1xuICAgICAgICAgICAgcGFkZGluZzogJGlucHV0LXBhZGRpbmcteS1zbSAwO1xuICAgICAgICAgICAgZm9udC1zaXplOiAkZm9udC1zaXplLXNtO1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6ICRpbnB1dC1saW5lLWhlaWdodC1zbTtcblxuICAgICAgICAgICAgLnNlbGVjdDItc2VsZWN0aW9uX19yZW5kZXJlZCB7XG4gICAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAkaW5wdXQtcGFkZGluZy14LXNtO1xuICAgICAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6ICgkaW5wdXQtcGFkZGluZy14ICsgKCRpY29uLWZvbnQtc2l6ZSAqIDEuNSkpO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAuc2VsZWN0Mi1zZWxlY3Rpb25fX2Fycm93OmFmdGVyIHtcbiAgICAgICAgICAgICAgICByaWdodDogJGlucHV0LXBhZGRpbmcteC1zbTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC8vIE11bHRpcGxlXG4gICAgICAgICYuc2VsZWN0Mi1zZWxlY3Rpb24tLW11bHRpcGxlIHtcbiAgICAgICAgICAgIC5zZWxlY3QyLXNlbGVjdGlvbl9fY2hvaWNlIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAoJGlucHV0LXBhZGRpbmcteS1zbSAtICRzZWxlY3QyLXBpbGxzLXNwYWNlcikgJGlucHV0LWJ0bi1wYWRkaW5nLXgtc207XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAkZm9udC1zaXplLXNtO1xuICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAkaW5wdXQtbGluZS1oZWlnaHQtc207XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5zZWxlY3QyLXNlYXJjaC0taW5saW5lIC5zZWxlY3QyLXNlYXJjaF9fZmllbGQge1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6ICgkaW5wdXQtcGFkZGluZy15LXNtIC0gJHNlbGVjdDItcGlsbHMtc3BhY2VyKSAwO1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1zbTtcbiAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogJGlucHV0LWxpbmUtaGVpZ2h0LXNtO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG5cbiAgICAvLyBDdXN0b20gY29sb3JzXG4gICAgLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbiAgICAvLyBNdWx0aXBsZSBzZWxlY3Rpb24gY2hvaWNlc1xuICAgIC5zZWxlY3QyLXNlbGVjdGlvbi0tbXVsdGlwbGVbY2xhc3MqPWJnLV0ge1xuICAgICAgICAuc2VsZWN0Mi1zZWxlY3Rpb25fX2Nob2ljZSB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZHJvcGRvd24tZGFyay1hY3RpdmUtYmc7XG4gICAgICAgIH1cbiAgICB9XG5cblxuICAgIC8vIERyb3Bkb3duIG1lbnVcbiAgICAuc2VsZWN0Mi1kcm9wZG93bltjbGFzcyo9YmctXSB7XG4gICAgICAgIFxuICAgICAgICAvLyBTZWFyY2ggZmllbGRcbiAgICAgICAgLnNlbGVjdDItc2VhcmNoLS1kcm9wZG93biAuc2VsZWN0Mi1zZWFyY2hfX2ZpZWxkIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRkcm9wZG93bi1kYXJrLWFjdGl2ZS1iZztcbiAgICAgICAgICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICB9XG5cbiAgICAgICAgLy8gU2VsZWN0ZWQgaXRlbVxuICAgICAgICAuc2VsZWN0Mi1yZXN1bHRzX19vcHRpb25bYXJpYS1zZWxlY3RlZD10cnVlXSB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZHJvcGRvd24tZGFyay1hY3RpdmUtYmc7XG4gICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICB9XG5cbiAgICAgICAgLy8gSG92ZXJlZCBpdGVtXG4gICAgICAgIC5zZWxlY3QyLXJlc3VsdHNfX29wdGlvbi0taGlnaGxpZ2h0ZWQge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGRyb3Bkb3duLWRhcmstaG92ZXItYmc7XG4gICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICB9XG4gICAgfVxuXG5cblxuICAgIC8vIE1pc2NcbiAgICAvLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuICAgIC8vIE1hc2tcbiAgICAuc2VsZWN0Mi1jbG9zZS1tYXNrIHtcbiAgICAgICAgYm9yZGVyOiAwO1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgbWluLWhlaWdodDogMTAwJTtcbiAgICAgICAgbWluLXdpZHRoOiAxMDAlO1xuICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgICB6LWluZGV4OiA5OTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuICAgICAgICBvcGFjaXR5OiAwO1xuICAgIH1cblxuICAgIC8vIEFjY2Vzc2libGVcbiAgICAuc2VsZWN0Mi1oaWRkZW4tYWNjZXNzaWJsZSB7XG4gICAgICAgIGJvcmRlcjogMCAhaW1wb3J0YW50O1xuICAgICAgICBjbGlwOiByZWN0KDAgMCAwIDApICFpbXBvcnRhbnQ7XG4gICAgICAgIGhlaWdodDogMXB4ICFpbXBvcnRhbnQ7XG4gICAgICAgIG1hcmdpbjogLTFweCAhaW1wb3J0YW50O1xuICAgICAgICBvdmVyZmxvdzogaGlkZGVuICFpbXBvcnRhbnQ7XG4gICAgICAgIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcbiAgICAgICAgcG9zaXRpb246IGZpeGVkICFpbXBvcnRhbnQ7XG4gICAgICAgIHdpZHRoOiAxcHggIWltcG9ydGFudDtcbiAgICB9XG5cblxuXG4gICAgLy8gTG9hZGluZyByZW1vdGUgZGF0YSBleGFtcGxlIGRlbW9cbiAgICAvLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuICAgIC8vIFJlc3VsdHNcbiAgICAuc2VsZWN0Mi1yZXN1bHQtcmVwb3NpdG9yeSB7XG4gICAgICAgIHBhZGRpbmctdG9wOiAkaW5wdXQtcGFkZGluZy15O1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogJGlucHV0LXBhZGRpbmcteTtcbiAgICB9XG5cbiAgICAvLyBBdmF0YXJcbiAgICAuc2VsZWN0Mi1yZXN1bHQtcmVwb3NpdG9yeV9fYXZhdGFyIHtcbiAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgIHdpZHRoOiA2MHB4O1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDAuOTM3NXJlbTtcblxuICAgICAgICBpbWcge1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgICAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRib3JkZXItcmFkaXVzLXJvdW5kKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8vIE1ldGFcbiAgICAuc2VsZWN0Mi1yZXN1bHQtcmVwb3NpdG9yeV9fbWV0YSB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiA3MHB4O1xuICAgIH1cblxuICAgIC8vIFRpdGxlXG4gICAgLnNlbGVjdDItcmVzdWx0LXJlcG9zaXRvcnlfX3RpdGxlIHtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgICAgd29yZC13cmFwOiBicmVhay13b3JkO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAycHg7XG4gICAgfVxuXG4gICAgLy8gRGF0YVxuICAgIC5zZWxlY3QyLXJlc3VsdC1yZXBvc2l0b3J5X19mb3JrcyxcbiAgICAuc2VsZWN0Mi1yZXN1bHQtcmVwb3NpdG9yeV9fc3RhcmdhemVycyxcbiAgICAuc2VsZWN0Mi1yZXN1bHQtcmVwb3NpdG9yeV9fd2F0Y2hlcnMge1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1zbTtcbiAgICB9XG5cbiAgICAvLyBEZXNjcmlwdGlvblxuICAgIC5zZWxlY3QyLXJlc3VsdC1yZXBvc2l0b3J5X19kZXNjcmlwdGlvbiB7XG4gICAgICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1zbTtcbiAgICB9XG5cbiAgICAvLyBBZGQgc3BhY2luZyBmb3IgZGF0YVxuICAgIC5zZWxlY3QyLXJlc3VsdC1yZXBvc2l0b3J5X19mb3JrcyxcbiAgICAuc2VsZWN0Mi1yZXN1bHQtcmVwb3NpdG9yeV9fc3RhcmdhemVycyB7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMC45Mzc1cmVtO1xuICAgIH1cbn1cbiIsIi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuKlxuKiAgIyBCb290c3RyYXAgbXVsdGlzZWxlY3RcbipcbiogIFN0eWxlcyBmb3IgbXVsdGlzZWxlY3QuanMgLSBjdXN0b20gbXVsdGlwbGUgc2VsZWN0IHBsdWdpblxuKlxuKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5cbi8vIENoZWNrIGlmIGNvbXBvbmVudCBpcyBlbmFibGVkXG5AaWYgJGVuYWJsZS1tdWx0aXNlbGVjdCB7XG5cblxuICAgIC8vIEJhc2VcbiAgICAvLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuICAgIC8vIFdyYXBwZXJcbiAgICAubXVsdGlzZWxlY3QtbmF0aXZlLXNlbGVjdCB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICAgICAvLyBIaWRlIG9yaWdpbmFsIHNlbGVjdFxuICAgICAgICBzZWxlY3Qge1xuICAgICAgICAgICAgYm9yZGVyOiAwICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICBjbGlwOiByZWN0KDAgMCAwIDApICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICBoZWlnaHQ6IDAgIWltcG9ydGFudDtcbiAgICAgICAgICAgIG1hcmdpbjogMCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbiAhaW1wb3J0YW50O1xuICAgICAgICAgICAgcGFkZGluZzogMCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICB3aWR0aDogMCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8vIE1haW4gYnV0dG9uXG4gICAgLm11bHRpc2VsZWN0IHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICAgIHBhZGRpbmctbGVmdDogJGlucHV0LXBhZGRpbmcteDtcbiAgICAgICAgcGFkZGluZy1yaWdodDogKCRpbnB1dC1wYWRkaW5nLXggKyAoJGljb24tZm9udC1zaXplICogMS41KSk7XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiAkbXVsdGlzZWxlY3QtdGV4dC10cmFuc2Zvcm07XG4gICAgICAgIEBpbmNsdWRlIHRleHQtdHJ1bmNhdGUoKTtcblxuICAgICAgICAvLyBDYXJldFxuICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIHRvcDogNTAlO1xuICAgICAgICAgICAgcmlnaHQ6ICRpbnB1dC1wYWRkaW5nLXg7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAtKCRjYXJldC1mb250LXNpemUgLyAyKTtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgICAgICB9XG5cbiAgICAgICAgLy8gQWxsb3cgZm9udCB3ZWlnaHQgdmFyaWF0aW9uc1xuICAgICAgICAmOm5vdChbY2xhc3MqPWZvbnQtd2VpZ2h0LV0pIHtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiAkbXVsdGlzZWxlY3QtZm9udC13ZWlnaHQ7XG4gICAgICAgIH1cblxuICAgICAgICAvLyBEZWZhdWx0IGJ1dHRvbiBvdmVycmlkZXNcbiAgICAgICAgJi5idG4tbGlnaHQge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGlucHV0LWJnO1xuICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiAkaW5wdXQtYm9yZGVyLWNvbG9yO1xuXG4gICAgICAgICAgICAvLyBTdGF0ZXNcbiAgICAgICAgICAgICY6aG92ZXIsXG4gICAgICAgICAgICAmOmZvY3VzLFxuICAgICAgICAgICAgJjpub3QoW2Rpc2FibGVkXSk6bm90KC5kaXNhYmxlZCk6YWN0aXZlLFxuICAgICAgICAgICAgLmJ0bi1ncm91cC5zaG93ICYge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRpbnB1dC1iZztcbiAgICAgICAgICAgICAgICBib3gtc2hhZG93OiAkaG92ZXItc2hhZG93LWxpZ2h0ZXI7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC8vIERpc2FibGVkIHN0YXRlXG4gICAgICAgICAgICAmLmRpc2FibGVkIHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaW5wdXQtZGlzYWJsZWQtYmc7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuXG4gICAgICAgIC8vXG4gICAgICAgIC8vIE1ha2UgaXQgYXMgYW4gaW5wdXQgaW5zdGVhZCBvZiBidXR0b25cbiAgICAgICAgLy9cblxuICAgICAgICAvLyBMYXJnZVxuICAgICAgICAmLmJ0bi1sZyB7XG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6ICRpbnB1dC1wYWRkaW5nLXgtbGc7XG4gICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAoJGlucHV0LXBhZGRpbmcteC1sZyArICgkaWNvbi1mb250LXNpemUgKiAxLjUpKTtcblxuICAgICAgICAgICAgLy8gQ2FyZXQgc3BhY2VyXG4gICAgICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgICAgICByaWdodDogJGlucHV0LXBhZGRpbmcteC1sZztcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC8vIFNtYWxsXG4gICAgICAgICYuYnRuLXNtIHtcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogJGlucHV0LXBhZGRpbmcteC1zbTtcbiAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6ICgkaW5wdXQtcGFkZGluZy14LXNtICsgKCRpY29uLWZvbnQtc2l6ZSAqIDEuNSkpO1xuXG4gICAgICAgICAgICAvLyBDYXJldCBzcGFjZXJcbiAgICAgICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgICAgIHJpZ2h0OiAkaW5wdXQtcGFkZGluZy14LXNtO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLy8gQ29udGFpbmVyXG4gICAgLm11bHRpc2VsZWN0LWNvbnRhaW5lciB7XG4gICAgICAgIG1heC1oZWlnaHQ6ICRtdWx0aXNlbGVjdC1tYXgtaGVpZ2h0O1xuICAgICAgICBvdmVyZmxvdy15OiBhdXRvO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICB9XG5cbiAgICAvLyBJdGVtXG4gICAgLm11bHRpc2VsZWN0LWl0ZW0ge1xuXG4gICAgICAgIC8vIEhpZGUgb3JpZ2luYWwgaW5wdXRzXG4gICAgICAgIGlucHV0W3R5cGU9Y2hlY2tib3hdLFxuICAgICAgICBpbnB1dFt0eXBlPXJhZGlvXSB7XG4gICAgICAgICAgICBib3JkZXI6IDA7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiBub25lO1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICB0b3A6IDUwJTtcbiAgICAgICAgICAgIGxlZnQ6ICRkcm9wZG93bi1pdGVtLXBhZGRpbmcteDtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IC0oJGNoZWNrYm94LXNpemUgLyAyKTtcbiAgICAgICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgICAgICB6LWluZGV4OiAyO1xuICAgICAgICAgICAgQGluY2x1ZGUgc2l6ZSgkY2hlY2tib3gtc2l6ZSk7XG5cbiAgICAgICAgICAgICY6ZGlzYWJsZWQge1xuICAgICAgICAgICAgICAgIGN1cnNvcjogJGN1cnNvci1kaXNhYmxlZDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC8vIENoZWNrYm94IGFuZCByYWRpbyBoYXZlIHNvbWUgY29tbW9uIHN0eWxlc1xuICAgICAgICBpbnB1dFt0eXBlPWNoZWNrYm94XSxcbiAgICAgICAgaW5wdXRbdHlwZT1yYWRpb10ge1xuICAgICAgICAgICAgfiAuZm9ybS1jaGVjay1jb250cm9sLWluZGljYXRvciB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgIGxlZnQ6ICRkcm9wZG93bi1pdGVtLXBhZGRpbmcteDtcbiAgICAgICAgICAgICAgICB0b3A6IDUwJTtcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAtKCRjaGVja2JveC1zaXplIC8gMik7XG4gICAgICAgICAgICAgICAgYm9yZGVyOiAkY2hlY2tib3gtYm9yZGVyLXdpZHRoIHNvbGlkICRjaGVja2JveC1ib3JkZXItY29sb3I7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgc2l6ZSgkY2hlY2tib3gtc2l6ZSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAvLyBDaGVja2JveCBpbmRpY2F0b3JcbiAgICAgICAgaW5wdXRbdHlwZT1jaGVja2JveF0ge1xuICAgICAgICAgICAgfiAuZm9ybS1jaGVjay1jb250cm9sLWluZGljYXRvciB7XG4gICAgICAgICAgICAgICAgY29sb3I6ICRjaGVja2JveC1jb2xvcjtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRib3JkZXItcmFkaXVzLXNtKTtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKGJvcmRlci1jb2xvciBlYXNlLWluLW91dCAkY29tcG9uZW50LXRyYW5zaXRpb24tdGltZXIsIGNvbG9yIGVhc2UtaW4tb3V0ICRjb21wb25lbnQtdHJhbnNpdGlvbi10aW1lcik7XG5cbiAgICAgICAgICAgICAgICAvLyBVc2UgaWNvblxuICAgICAgICAgICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgICAgICAgICBjb250ZW50OiBcIlxcZTYwMFwiO1xuICAgICAgICAgICAgICAgICAgICBmb250LWZhbWlseTogJGljb24tZm9udC1mYW1pbHk7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogJGljb24tZm9udC1zaXplO1xuICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgICAgIHRvcDogKCRjaGVja2JveC1zaXplIC0gJGljb24tZm9udC1zaXplIC0gKCRjaGVja2JveC1ib3JkZXItd2lkdGggKiAyKSkgLyAyO1xuICAgICAgICAgICAgICAgICAgICBsZWZ0OiAoJGNoZWNrYm94LXNpemUgLSAkaWNvbi1mb250LXNpemUgLSAoJGNoZWNrYm94LWJvcmRlci13aWR0aCAqIDIpKSAvIDI7XG4gICAgICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgICAgICAgICAgICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBsbC1mb250LXNtb290aGluZygpO1xuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKG9wYWNpdHkgZWFzZS1pbi1vdXQgJGNvbXBvbmVudC10cmFuc2l0aW9uLXRpbWVyKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAvLyBSYWRpbyBpbmRpY2F0b3JcbiAgICAgICAgaW5wdXRbdHlwZT1yYWRpb10ge1xuICAgICAgICAgICAgfiAuZm9ybS1jaGVjay1jb250cm9sLWluZGljYXRvciB7XG4gICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXMtcm91bmQ7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbihib3JkZXItY29sb3IgZWFzZS1pbi1vdXQgJGNvbXBvbmVudC10cmFuc2l0aW9uLXRpbWVyKTtcblxuICAgICAgICAgICAgICAgIC8vIFVzZSBjaXJjbGVcbiAgICAgICAgICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgICAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgICAgICB0b3A6ICgoJGNoZWNrYm94LXNpemUgLyAyKSAtICRjaGVja2JveC1ib3JkZXItd2lkdGggLSAoKCRjaGVja2JveC1zaXplIC8gMikgLyAyKSk7XG4gICAgICAgICAgICAgICAgICAgIGxlZnQ6ICgoJGNoZWNrYm94LXNpemUgLyAyKSAtICRjaGVja2JveC1ib3JkZXItd2lkdGggLSAoKCRjaGVja2JveC1zaXplIC8gMikgLyAyKSk7XG4gICAgICAgICAgICAgICAgICAgIGJvcmRlcjogKCgkY2hlY2tib3gtc2l6ZSAvIDIpIC8gMikgc29saWQ7XG4gICAgICAgICAgICAgICAgICAgIGJvcmRlci1jb2xvcjogaW5oZXJpdDtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDA7XG4gICAgICAgICAgICAgICAgICAgIGhlaWdodDogMDtcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXMtcm91bmQ7XG4gICAgICAgICAgICAgICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oYWxsIGVhc2UtaW4tb3V0ICRjb21wb25lbnQtdHJhbnNpdGlvbi10aW1lcik7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLy8gQ2hlY2tlZCBzdGF0ZVxuICAgICAgICBpbnB1dFt0eXBlPWNoZWNrYm94XSxcbiAgICAgICAgaW5wdXRbdHlwZT1yYWRpb10ge1xuICAgICAgICAgICAgJjpjaGVja2VkIH4gLmZvcm0tY2hlY2stY29udHJvbC1pbmRpY2F0b3Ige1xuICAgICAgICAgICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC8vIEFjdGl2ZSBzdGF0ZSBkZXBlbmRzIG9uIGFjdGl2ZSBzdGF0ZSBvZiBkcm9wZG93biBpdGVtIGNvbG9yc1xuICAgICAgICAmLmFjdGl2ZTpub3QoLmRpc2FibGVkKSB7XG4gICAgICAgICAgICBAaWYgKGxpZ2h0bmVzcygkZHJvcGRvd24tbGluay1hY3RpdmUtYmcpIDwgNzUpIHtcbiAgICAgICAgICAgICAgICBpbnB1dFt0eXBlPWNoZWNrYm94XSB+IC5mb3JtLWNoZWNrLWNvbnRyb2wtaW5kaWNhdG9yIHtcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIGlucHV0W3R5cGU9cmFkaW9dIH4gLmZvcm0tY2hlY2stY29udHJvbC1pbmRpY2F0b3Ige1xuICAgICAgICAgICAgICAgICAgICBib3JkZXItY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBAZWxzZSB7XG4gICAgICAgICAgICAgICAgaW5wdXRbdHlwZT1jaGVja2JveF0gfiAuZm9ybS1jaGVjay1jb250cm9sLWluZGljYXRvciB7XG4gICAgICAgICAgICAgICAgICAgIGJvcmRlci1jb2xvcjogJGNoZWNrYm94LWNvbG9yO1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogJGNoZWNrYm94LWNvbG9yO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBpbnB1dFt0eXBlPXJhZGlvXSB+IC5mb3JtLWNoZWNrLWNvbnRyb2wtaW5kaWNhdG9yIHtcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiAkY2hlY2tib3gtY29sb3I7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLy8gRGlzYWJsZWQgc3RhdGVcbiAgICAgICAgJi5kaXNhYmxlZCB7XG4gICAgICAgICAgICAuZm9ybS1jaGVjay1jb250cm9sLWluZGljYXRvciB7XG4gICAgICAgICAgICAgICAgb3BhY2l0eTogJGNoZWNrYm94LWRpc2FibGVkLW9wYWNpdHk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAvLyBJbiBkYXJrIGRyb3Bkb3duc1xuICAgICAgICAuZHJvcGRvd24tbWVudVtjbGFzcyo9YmctXSAmIHtcbiAgICAgICAgICAgIC5mb3JtLWNoZWNrLWNvbnRyb2wtaW5kaWNhdG9yIHtcbiAgICAgICAgICAgICAgICBib3JkZXItY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLy8gSXRlbSBncm91cFxuICAgIC5tdWx0aXNlbGVjdC1ncm91cCB7XG4gICAgICAgIHBhZGRpbmc6ICRkcm9wZG93bi1pdGVtLXBhZGRpbmcteSAkZHJvcGRvd24taXRlbS1wYWRkaW5nLXg7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtc2VtaWJvbGQ7XG4gICAgICAgIG1hcmdpbi10b3A6ICRkcm9wZG93bi1wYWRkaW5nLXk7XG4gICAgICAgIG1hcmdpbi1ib3R0b206ICRkcm9wZG93bi1wYWRkaW5nLXk7XG5cbiAgICAgICAgLy8gRmlyc3Qgc2hvdWxkbid0IGhhdmUgdG9wIHNwYWNpbmdcbiAgICAgICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgICB9XG5cbiAgICAgICAgLy8gUmVtb3ZlIGJvdHRvbSBzcGFjaW5nIGZyb20gbGFiZWxcbiAgICAgICAgbGFiZWwge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgfVxuXG4gICAgICAgIC8vIERpc2FibGVkIHN0YXRlXG4gICAgICAgICYuZGlzYWJsZWQge1xuICAgICAgICAgICAgY29sb3I6ICRkcm9wZG93bi1saW5rLWRpc2FibGVkLWNvbG9yO1xuICAgICAgICAgICAgY3Vyc29yOiAkY3Vyc29yLWRpc2FibGVkO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLy8gU2VsZWN0IEFsbCBvcHRpb25cbiAgICAubXVsdGlzZWxlY3QtYWxsIHtcbiAgICAgICAgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1zZW1pYm9sZDtcbiAgICB9XG5cbiAgICAvLyBDbGlja2FibGUgb3B0Z3JvdXBcbiAgICAubXVsdGlzZWxlY3QtZ3JvdXAtY2xpY2thYmxlIHtcbiAgICAgICAgbGFiZWwge1xuICAgICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLy8gRmlsdGVyXG4gICAgLm11bHRpc2VsZWN0LWZpbHRlciB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgcGFkZGluZzogKCRkcm9wZG93bi1pdGVtLXBhZGRpbmcteCAtICRkcm9wZG93bi1wYWRkaW5nLXkpICRkcm9wZG93bi1pdGVtLXBhZGRpbmcteDtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogKCRkcm9wZG93bi1pdGVtLXBhZGRpbmcteCAtICRkcm9wZG93bi1wYWRkaW5nLXkpO1xuXG4gICAgICAgIC8vIENlbnRlciBpY29uIHZlcnRpY2FsbHlcbiAgICAgICAgLmlucHV0LWdyb3VwID4gaSB7XG4gICAgICAgICAgICBmb250LXNpemU6ICRmb250LXNpemUtYmFzZTtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIGxlZnQ6ICgkaW5wdXQtcGFkZGluZy14ICsgcmVtLWNhbGMoJGlucHV0LWJvcmRlci13aWR0aCkpO1xuICAgICAgICAgICAgdG9wOiA1MCU7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAtKCRmb250LXNpemUtYmFzZSAvIDIpO1xuICAgICAgICAgICAgb3BhY2l0eTogMC41O1xuICAgICAgICAgICAgei1pbmRleDogNDtcbiAgICAgICAgfVxuXG4gICAgICAgIC8vIElucHV0IGhvcml6b250YWwgcGFkZGluZ1xuICAgICAgICAuZm9ybS1jb250cm9sIHtcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogKCgkaW5wdXQtcGFkZGluZy14ICogMikgKyAkZm9udC1zaXplLWJhc2UpO1xuICAgICAgICB9XG4gICAgfVxuXG5cbiAgICAvLyBNaXNjXG4gICAgLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbiAgICAvLyBJbnNpZGUgaW5wdXQgZ3JvdXBcbiAgICAuaW5wdXQtZ3JvdXAge1xuICAgICAgICAubXVsdGlzZWxlY3QtbmF0aXZlLXNlbGVjdCB7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgIGZsZXg6IDEgMSBhdXRvO1xuXG4gICAgICAgICAgICAvLyBSZW1vdmUgcm91bmRlZCBjb3JuZXJzIGZyb20gdGhlIGZpcnN0IGl0ZW1cbiAgICAgICAgICAgICY6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgICAgICAgICAgIC5tdWx0aXNlbGVjdCB7XG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJvcmRlci1sZWZ0LXJhZGl1cygwKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC8vIFJlbW92ZSByb3VuZGVkIGNvcm5lcnMgZnJvbSB0aGUgbGFzdCBpdGVtXG4gICAgICAgICAgICAmOm5vdCg6bGFzdC1jaGlsZCkge1xuICAgICAgICAgICAgICAgIC5tdWx0aXNlbGVjdCB7XG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJvcmRlci1yaWdodC1yYWRpdXMoMCk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuIiwiLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4qXG4qICAjIFBhc3N5XG4qXG4qICBTdHlsZXMgZm9yIHBhc3N5Lm1pbi5qcyAtIHBhc3N3b3JkIGxlbmd0aCBjaGVja2VyIGFuZCBwYXNzd29yZCBnZW5lcmF0b3JcbipcbiogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuXG4vLyBDaGVjayBpZiBjb21wb25lbnQgaXMgZW5hYmxlZFxuQGlmICRlbmFibGUtcGFzc3kge1xuXG5cdC8vIEFic29sdXRlIHBvc2l0aW9uZWQgYmFkZ2Vcblx0LmJhZGdlLWluZGljYXRvci1hYnNvbHV0ZSB7XG5cdCAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cblx0ICAgIC8vIEZsb2FyaW5nIGJhZGdlXG5cdCAgICAucGFzc3dvcmQtaW5kaWNhdG9yLWJhZGdlLWFic29sdXRlIHtcblx0ICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG5cdCAgICAgICAgdG9wOiA1MCU7XG5cdCAgICAgICAgbWFyZ2luLXRvcDogLSgkbGluZS1oZWlnaHQtY29tcHV0ZWQgLyAyKTtcblx0ICAgICAgICByaWdodDogJGlucHV0LXBhZGRpbmcteDtcblx0ICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKGFsbCBlYXNlLWluLW91dCAkY29tcG9uZW50LXRyYW5zaXRpb24tdGltZXIpO1xuXHQgICAgfVxuXHR9XG59XG4iLCIvKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbipcbiogICMgVHdpdGVyIFR5cGVhaGVhZFxuKlxuKiAgU3R5bGVzIGZvciB0eXBlYWhlYWQuYnVuZGxlLm1pbi5qcyAtIGlucHV0IHN1Z2dlc3Rpb24gZW5naW5lXG4qXG4qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cblxuLy8gQ2hlY2sgaWYgY29tcG9uZW50IGlzIGVuYWJsZWRcbkBpZiAkZW5hYmxlLXR5cGVhaGVhZCB7XG5cblxuXHQvLyBDb3JlXG5cdC8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG5cdC8vIE1ha2UgaW5wdXQgZnVsbCB3aWR0aFxuXHQudHdpdHRlci10eXBlYWhlYWQge1xuXHRcdHdpZHRoOiAxMDAlO1xuXHR9XG5cblx0Ly8gSW5wdXQgZmllbGQgaGludFxuXHQudHQtaGludCB7XG5cdFx0Y29sb3I6ICRpbnB1dC1wbGFjZWhvbGRlci1jb2xvcjtcblx0fVxuXG5cblx0Ly8gTWVudVxuXHQvLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuXHQvLyBEcm9wZG93biBtZW51XG5cdC50dC1tZW51IHtcblx0XHR3aWR0aDogMTAwJTtcblx0XHRtYXJnaW4tdG9wOiAkZHJvcGRvd24tc3BhY2VyO1xuXHRcdG1pbi13aWR0aDogJGRyb3Bkb3duLW1pbi13aWR0aDtcblx0XHRwYWRkaW5nOiAkZHJvcGRvd24tcGFkZGluZy15IDA7XG5cdFx0YmFja2dyb3VuZC1jb2xvcjogJGRyb3Bkb3duLWJnO1xuXHRcdGJvcmRlcjogJGRyb3Bkb3duLWJvcmRlci13aWR0aCBzb2xpZCAkZHJvcGRvd24tYm9yZGVyLWNvbG9yO1xuXHRcdG1heC1oZWlnaHQ6ICR0eXBlYWhlYWQtbWF4LWhlaWdodDtcblx0XHRvdmVyZmxvdy15OiBhdXRvO1xuXHRcdEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGRyb3Bkb3duLWJvcmRlci1yYWRpdXMpO1xuXHRcdEBpbmNsdWRlIGJveC1zaGFkb3coJGRyb3Bkb3duLWJveC1zaGFkb3cpO1xuXG5cdFx0Ly8gQ3VzdG9tIGhlaWdodFxuXHRcdC50eXBlYWhlYWQtc2Nyb2xsYWJsZSAmIHtcblx0XHRcdG1heC1oZWlnaHQ6ICR0eXBlYWhlYWQtbWF4LWhlaWdodC1zY3JvbGxhYmxlO1xuXHRcdH1cblx0fVxuXG5cdC8vIE1lbnUgaXRlbVxuXHQudHQtc3VnZ2VzdGlvbiB7XG5cdFx0Y29sb3I6ICRkcm9wZG93bi1saW5rLWNvbG9yO1xuXHRcdHBhZGRpbmc6ICRkcm9wZG93bi1pdGVtLXBhZGRpbmcteSAkZHJvcGRvd24taXRlbS1wYWRkaW5nLXg7XG5cdFx0Y3Vyc29yOiBwb2ludGVyO1xuXHRcdEBpbmNsdWRlIHRyYW5zaXRpb24oYWxsIGVhc2UtaW4tb3V0ICRjb21wb25lbnQtdHJhbnNpdGlvbi10aW1lcik7XG5cblx0XHQvLyBIb3ZlciBzdGF0ZSBiZyBjb2xvclxuXHRcdCY6aG92ZXIsXG5cdFx0Jjpmb2N1cyxcblx0XHQmLnR0LWN1cnNvciB7XG5cdFx0XHRjb2xvcjogJGRyb3Bkb3duLWxpbmstaG92ZXItY29sb3I7XG5cdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkZHJvcGRvd24tbGluay1ob3Zlci1iZztcblx0XHR9XG5cdH1cblxuXHQvLyBIZWFkaW5nXG5cdC50dC1oZWFkaW5nIHtcblx0XHRwYWRkaW5nOiAkZHJvcGRvd24taXRlbS1wYWRkaW5nLXkgJGRyb3Bkb3duLWl0ZW0tcGFkZGluZy14O1xuXHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtYm9sZDtcblx0ICAgIG1hcmdpbi10b3A6ICRkcm9wZG93bi1wYWRkaW5nLXk7XG5cdCAgICBtYXJnaW4tYm90dG9tOiAkZHJvcGRvd24tcGFkZGluZy15O1xuXG5cdCAgICAvLyBSZW1vdmUgdG9wIG1hcmdpbiBpbiB0aGUgZmlyc3QgaGVhZGluZ1xuXHQgICAgLnR0LWRhdGFzZXQtZ3JvdXA6Zmlyc3QtY2hpbGQgJjpmaXJzdC1jaGlsZCB7XG5cdCAgICBcdG1hcmdpbi10b3A6IDA7XG5cdCAgICB9XG5cdH1cblxuXHQvLyBBZGQgcGFkZGluZyBmb3IgZW1wdHkgbWVzc2FnZVxuXHQudHlwZWFoZWFkLXRlbXBsYXRlIC5lbXB0eS1tZXNzYWdlIHtcblx0XHRwYWRkaW5nOiAkZHJvcGRvd24taXRlbS1wYWRkaW5nLXkgJGRyb3Bkb3duLWl0ZW0tcGFkZGluZy14O1xuXHRcdHRleHQtYWxpZ246IGNlbnRlcjtcblx0fVxufVxuIiwiLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4qXG4qICAjIEZvcm0gVmFsaWRhdGlvblxuKlxuKiAgU3R5bGVzIGZvciB2YWxpZGF0ZS5taW4uanMgLSBqUXVlcnkgcGx1Z2luIGZvciBzaW1wbGUgY2xpZW50c2lkZSBmb3JtIHZhbGlkYXRpb25cbipcbiogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuXG4vLyBDaGVjayBpZiBjb21wb25lbnQgaXMgZW5hYmxlZFxuQGlmICRlbmFibGUtdmFsaWRhdGlvbiB7XG5cblx0Ly8gRXJyb3IgbGFiZWxcblx0LnZhbGlkYXRpb24taW52YWxpZC1sYWJlbCxcblx0LnZhbGlkYXRpb24tdmFsaWQtbGFiZWwge1xuXHRcdG1hcmdpbi10b3A6ICRmb3JtLXRleHQtbWFyZ2luLXRvcDtcblx0XHRtYXJnaW4tYm90dG9tOiAkZm9ybS10ZXh0LW1hcmdpbi10b3A7XG5cdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0Y29sb3I6IHRoZW1lLWNvbG9yKFwiZGFuZ2VyXCIpO1xuXHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0XHRwYWRkaW5nLWxlZnQ6ICgkaWNvbi1mb250LXNpemUgKyAkZWxlbWVudC1zcGFjZXIteCk7XG5cdH1cblxuXHQvLyBTdWNjZXNzIGxhYmVsXG5cdC52YWxpZGF0aW9uLXZhbGlkLWxhYmVsIHtcblx0XHRjb2xvcjogdGhlbWUtY29sb3IoXCJzdWNjZXNzXCIpO1xuXHR9XG5cblxuXHQvL1xuXHQvLyBMYWJlbHNcblx0Ly9cblxuXHQvLyBJY29uIGNvbnRhaW5lclxuXHQudmFsaWRhdGlvbi1pbnZhbGlkLWxhYmVsLFxuXHQudmFsaWRhdGlvbi12YWxpZC1sYWJlbCB7XG5cdFx0JjpiZWZvcmUge1xuXHRcdFx0Zm9udC1mYW1pbHk6ICRpY29uLWZvbnQtZmFtaWx5O1xuXHRcdFx0Zm9udC1zaXplOiAkaWNvbi1mb250LXNpemU7XG5cdFx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0XHR0b3A6ICgoJGxpbmUtaGVpZ2h0LWNvbXB1dGVkIC0gJGljb24tZm9udC1zaXplKSAvIDIpO1xuXHRcdFx0bGVmdDogMDtcblx0XHRcdGRpc3BsYXk6IGlubGluZS1ibG9jaztcblx0XHRcdGxpbmUtaGVpZ2h0OiAxO1xuXHRcdFx0QGluY2x1ZGUgbGwtZm9udC1zbW9vdGhpbmcoKTtcblx0XHR9XG5cblx0XHQvLyBIaWRlIGlmIGVtcHR5XG5cdFx0JjplbXB0eSB7XG5cdFx0XHRkaXNwbGF5OiBub25lO1xuXHRcdH1cblx0fVxuXG5cdC8vIEVycm9yIGljb25cblx0LnZhbGlkYXRpb24taW52YWxpZC1sYWJlbDpiZWZvcmUge1xuXHRcdGNvbnRlbnQ6ICdcXGVkNjMnO1xuXHR9XG5cblx0Ly8gVmFsaWQgaWNvblxuXHQudmFsaWRhdGlvbi12YWxpZC1sYWJlbDpiZWZvcmUge1xuXHRcdGNvbnRlbnQ6ICdcXGVlNzMnO1xuXHR9XG59XG4iLCIvKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbipcbiogICMgRmxvYXRpbmcgbGFiZWxzXG4qXG4qICBTdHlsZXMgZm9yIGN1c3RvbSBGbG9hdGluZyBMYWJlbHMgZXh0ZW5zaW9uc1xuKlxuKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5cbi8vIENoZWNrIGlmIGNvbXBvbmVudCBpcyBlbmFibGVkXG5AaWYgJGVuYWJsZS1mbG9hdGluZy1sYWJlbHMge1xuXG5cdC8vIEJhc2Vcblx0LmZvcm0tZ3JvdXAtZmxvYXQtbGFiZWwge1xuXHQgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXHQgICAgdG9wOiAkaW5wdXQtcGFkZGluZy15O1xuXHQgICAgb3BhY2l0eTogMDtcblxuXHQgICAgLy8gRGlzcGxheSBsYWJlbFxuXHQgICAgJi5pcy12aXNpYmxlIHtcblx0ICAgICAgICB0b3A6IDA7XG5cdCAgICAgICAgb3BhY2l0eTogMTtcblx0ICAgIH1cblxuXHQgICAgLy8gTGFiZWwgYW5pbWF0aW9uXG5cdCAgICAmLmFuaW1hdGUge1xuXHQgICAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oYWxsIGxpbmVhciAkY29tcG9uZW50LXRyYW5zaXRpb24tdGltZXIpO1xuXHQgICAgfVxuXHR9XG59XG4iLCIvKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbipcbiogICMgQWxwYWNhIGZvcm1zXG4qXG4qICBTdHlsZXMgZm9yIGFscGFjYS5taW4uanMgLSB0aGUgZWFzaWVzdCB3YXkgdG8gZ2VuZXJhdGUgaW50ZXJhY3RpdmUgSFRNTDUgZm9ybXMgZm9yIHdlYiBhcHBsaWNhdGlvbnNcbipcbiogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuXG4vLyBDaGVjayBpZiBjb21wb25lbnQgaXMgZW5hYmxlZFxuQGlmICRlbmFibGUtYWxwYWNhIHtcblxuICAgIC8vIEFkZGVkIHRvIG91dGVyIGZpZWxkIGVsZW1lbnRzIHRvIGhpZGUgdGhlbVxuICAgIC5hbHBhY2EtaGlkZGVuIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG5cbiAgICAvLyBIZWxwZXIgdGV4dFxuICAgIC5hbHBhY2EtZmllbGQge1xuICAgICAgICAuaGVscC1ibG9jayxcbiAgICAgICAgLmFscGFjYS1maWVsZC10ZXh0LW1heC1sZW5ndGgtaW5kaWNhdG9yIHtcbiAgICAgICAgICAgIGNvbG9yOiAkZ3JheS02MDA7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAkZm9ybS10ZXh0LW1hcmdpbi10b3A7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAkZm9ybS10ZXh0LW1hcmdpbi10b3A7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBJZiBpbnB1dCBoYXMgZXJyb3JcbiAgICAuaGFzLWVycm9yIHtcblxuICAgICAgICAvLyBPdmVycmlkZSB0ZXh0IGNvbG9yIGlmIG1lbnUgaGFzIGVycm9yXG4gICAgICAgIC5tdWx0aXNlbGVjdC1jb250YWluZXIgPiAuYWN0aXZlIC5mb3JtLWNoZWNrIHtcbiAgICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgIH1cblxuICAgICAgICAvLyBDaGFuZ2UgYmFja2dyb3VuZCBjb2xvciBpbiBhY3RpdmUgaXRlbXNcbiAgICAgICAgLmJ0bi1ncm91cC5zaG93IC5tdWx0aXNlbGVjdC5idG4sXG4gICAgICAgIC5tdWx0aXNlbGVjdC5idG4tbGlnaHQ6YWN0aXZlIHtcbiAgICAgICAgICAgIGNvbG9yOiB0aGVtZS1jb2xvcignZGFuZ2VyJyk7XG4gICAgICAgICAgICBib3JkZXItY29sb3I6IHRoZW1lLWNvbG9yKCdkYW5nZXInKTtcbiAgICAgICAgfVxuXG4gICAgfVxuXG4gICAgLy8gRGlzYWJsZWQgZmllbGRzXG4gICAgLmFscGFjYS1kaXNhYmxlZCB7XG4gICAgICAgIC5mb3JtLWNoZWNrIGxhYmVsLFxuICAgICAgICAuZm9ybS1jaGVjayAuc3dpdGNoZXJ5IHtcbiAgICAgICAgICAgIGN1cnNvcjogJGN1cnNvci1kaXNhYmxlZDtcbiAgICAgICAgICAgIGNvbG9yOiAkZ3JheS02MDA7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBBZGRlZCB0byBmaWVsZHMgdGhhdCBoYXZlIHJ1biB0aHJvdWdoIHZhbGlkYXRpb24gYW5kIGFyZSBpbnZhbGlkXG4gICAgLmFscGFjYS1pbnZhbGlkIHtcblxuICAgICAgICAvLyBUZXh0XG4gICAgICAgIC5hbHBhY2EtY29udHJvbC1sYWJlbCxcbiAgICAgICAgLmFscGFjYS1tZXNzYWdlIHtcbiAgICAgICAgICAgIGNvbG9yOiB0aGVtZS1jb2xvcignZGFuZ2VyJyk7XG4gICAgICAgIH1cblxuICAgICAgICAvLyBJbnB1dFxuICAgICAgICAuZm9ybS1jb250cm9sIHtcbiAgICAgICAgICAgIGNvbG9yOiB0aGVtZS1jb2xvcignZGFuZ2VyJyk7XG5cbiAgICAgICAgICAgIC8vIEJvcmRlciBjb2xvclxuICAgICAgICAgICAgQGluY2x1ZGUgcGxhaW4taG92ZXItZm9jdXMge1xuICAgICAgICAgICAgICAgIGJvcmRlci1jb2xvcjogdGhlbWUtY29sb3IoJ2RhbmdlcicpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLy8gR2VuZXJhbCBwdXJwb3NlIEhUTUwgY2xlYXJcbiAgICAuYWxwYWNhLWNsZWFyIHtcbiAgICAgICAgY2xlYXI6IGJvdGg7XG4gICAgfVxuXG4gICAgLy8gUmlnaHQgYWxpZ25tZW50XG4gICAgLmFscGFjYS1mbG9hdC1yaWdodCB7XG4gICAgICAgIGZsb2F0OiByaWdodDtcbiAgICB9XG5cblxuICAgIC8vXG4gICAgLy8gSWNvbnNcbiAgICAvL1xuXG4gICAgLy8gT3ZlcnJpZGUgZ2x5cGhpY29uIGljb25zXG4gICAgLmFscGFjYS1maWVsZCB7XG4gICAgICAgIC5nbHlwaGljb24ge1xuICAgICAgICAgICAgZm9udC1mYW1pbHk6ICRpY29uLWZvbnQtZmFtaWx5O1xuICAgICAgICAgICAgZm9udC1zaXplOiAkaWNvbi1mb250LXNpemU7XG4gICAgICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogKCRmb250LXNpemUtYmFzZSAtICRpY29uLWZvbnQtc2l6ZSkgLyAyO1xuICAgICAgICAgICAgZm9udC1zdHlsZTogbm9ybWFsO1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6ICRlbGVtZW50LXNwYWNlci14O1xuICAgICAgICB9XG5cbiAgICAgICAgLy8gSW5mbyBpY29uXG4gICAgICAgIC5nbHlwaGljb24taW5mby1zaWduIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIH1cblxuICAgICAgICAvLyBFcnJvciBpY29uXG4gICAgICAgIC5nbHlwaGljb24tZXhjbGFtYXRpb24tc2lnbjpiZWZvcmUge1xuICAgICAgICAgICAgY29udGVudDogJ1xcZWQ2Myc7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBSZXF1aXJlZCBhc3Rlcmlza1xuICAgIC5hbHBhY2EtaWNvbi1yZXF1aXJlZCB7XG4gICAgICAgIGZvbnQtZmFtaWx5OiAkZm9udC1mYW1pbHktYmFzZTtcbiAgICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAkZWxlbWVudC1zcGFjZXIteDtcblxuICAgICAgICAvLyBSZXF1aXJlZCBzaWduXG4gICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgIGNvbnRlbnQ6ICcqJztcbiAgICAgICAgfVxuICAgIH1cblxuXG4gICAgLy9cbiAgICAvLyBFZGl0b3IgZmllbGRzXG4gICAgLy9cblxuICAgIC5hbHBhY2EtY29udHJvbGZpZWxkLWVkaXRvciB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGhlaWdodDogMzAwcHg7XG4gICAgICAgIGJvcmRlcjogJGlucHV0LWJvcmRlci13aWR0aCBzb2xpZCAkaW5wdXQtYm9yZGVyLWNvbG9yO1xuXG4gICAgICAgIC8vIEVsZW1lbnRcbiAgICAgICAgLmNvbnRyb2wtZmllbGQtZWRpdG9yLWVsIHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICByaWdodDogMFxuICAgICAgICB9XG4gICAgfVxuXG5cbiAgICAvL1xuICAgIC8vIEFjZSBlZGl0b3JcbiAgICAvL1xuXG4gICAgLmFjZV9lZGl0b3Ige1xuICAgICAgICBib3JkZXI6ICRib3JkZXItd2lkdGggc29saWQgcmdiKDIwNCwgMjA0LCAyMDQpO1xuICAgIH1cblxuXG4gICAgLy9cbiAgICAvLyBDS0VkaXRvclxuICAgIC8vXG5cbiAgICAuYWxwYWNhLWZpZWxkLWNrZWRpdG9yLmFscGFjYS1pbnZhbGlkID4gLmNrZSB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogJGNvbG9yLXdhcm5pbmctODAwO1xuICAgIH1cblxuXG4gICAgLy9cbiAgICAvLyBPcHRpb24gdHJlZVxuICAgIC8vXG5cbiAgICAuYWxwYWNhLWZpZWxkLW9wdGlvbnRyZWUge1xuXG4gICAgICAgIC8vIEFkZCBsZWZ0IHNwYWNpbmcgdG8gaW5wdXQgZmllbGRcbiAgICAgICAgLm9wdGlvbnRyZWUgKyAuZm9ybS1jb250cm9sIHtcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAkZWxlbWVudC1zcGFjZXIteDtcbiAgICAgICAgfVxuXG4gICAgICAgIC8vIEhvcml6b250YWwgbGF5b3V0XG4gICAgICAgICYub3B0aW9udHJlZS1ob3Jpem9udGFsIHtcblxuICAgICAgICAgICAgLy8gVHJlZVxuICAgICAgICAgICAgLm9wdGlvbnRyZWUge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcblxuICAgICAgICAgICAgICAgIC8vIFNlbGVjdG9yXG4gICAgICAgICAgICAgICAgLm9wdGlvbnRyZWUtc2VsZWN0b3Ige1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IG1hcC1nZXQoJHNwYWNlcnMsIDEpO1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiBtYXAtZ2V0KCRzcGFjZXJzLCAxKTtcblxuICAgICAgICAgICAgICAgICAgICAvLyBIaWRlIGVtcHR5IGNvbnRhaW5lclxuICAgICAgICAgICAgICAgICAgICAmOmVtcHR5IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAvLyBFeHRyYSBob3Jpem9udGFsIHNwYWNpbmdcbiAgICAgICAgICAgICAgICAgICAgKyAub3B0aW9udHJlZS1zZWxlY3RvciB7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogJGVsZW1lbnQtc3BhY2VyLXg7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC8vIElucHV0XG4gICAgICAgICAgICAgaW5wdXQge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLy8gTGFiZWxcbiAgICAgICAgICAgICBsYWJlbCB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cblxuICAgIC8vXG4gICAgLy8gTXVsdGlzZWxlY3RcbiAgICAvL1xuXG4gICAgLy8gSWYgZXJyb3JcbiAgICAuaGFzLWVycm9yIC5tdWx0aXNlbGVjdCB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogdGhlbWUtY29sb3IoJ2RhbmdlcicpO1xuICAgICAgICBjb2xvcjogdGhlbWUtY29sb3IoJ2RhbmdlcicpO1xuICAgIH1cblxuXG4gICAgLy9cbiAgICAvLyBMYWJlbHNcbiAgICAvL1xuXG4gICAgLmFscGFjYS1jb250YWluZXItbGFiZWw6bm90KGxlZ2VuZCkge1xuICAgICAgICBtYXJnaW4tdG9wOiAkc3BhY2VyO1xuICAgIH1cblxuXG4gICAgLy9cbiAgICAvLyBUb29sYmFyXG4gICAgLy9cblxuICAgIC8vIEJhc2VcbiAgICAuYWxwYWNhLWFycmF5LXRvb2xiYXIge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAoJHNwYWNlciAvIDIpO1xuICAgIH1cblxuICAgIC8vIEFjdGlvbiBiYXJcbiAgICAuYWxwYWNhLWFycmF5LWFjdGlvbmJhciB7XG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG5cbiAgICAgICAgLy8gVG9wXG4gICAgICAgICYuYWxwYWNhLWFycmF5LWFjdGlvbmJhci10b3Age1xuICAgICAgICAgICAgcGFkZGluZy1ib3R0b206ICgkc3BhY2VyIC8gMik7XG4gICAgICAgIH1cblxuICAgICAgICAvLyBCb3R0b21cbiAgICAgICAgJi5hbHBhY2EtYXJyYXktYWN0aW9uYmFyLWJvdHRvbSB7XG4gICAgICAgICAgICBwYWRkaW5nLXRvcDogKCRzcGFjZXIgLyAyKTtcbiAgICAgICAgfVxuXG4gICAgICAgIC8vIFN0cmV0Y2hcbiAgICAgICAgJixcbiAgICAgICAgJi5idG4tZ3JvdXAge1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBGaWVsZCBvYmplY3RzXG4gICAgLmFscGFjYS1maWVsZC1vYmplY3QsXG4gICAgLmFscGFjYS1maWVsZC1hcnJheSB7XG5cbiAgICAgICAgLy8gUmVtb3ZlIGJvcmRlclxuICAgICAgICAuYWxwYWNhLXRvcCxcbiAgICAgICAgLmFscGFjYS10b3AgLmFscGFjYS1jb250YWluZXIge1xuICAgICAgICAgICAgYm9yZGVyOiAwO1xuICAgICAgICB9XG4gICAgfVxuICAgIC5hbHBhY2EtY29udGFpbmVyIHtcbiAgICAgICAgYm9yZGVyOiAwO1xuICAgIH1cblxuXG4gICAgLy9cbiAgICAvLyBDb250YWluZXJzXG4gICAgLy9cblxuICAgIC8vIEFkZCB0b3Agc3BhY2luZ1xuICAgIC5hbHBhY2EtY29udHJvbC1idXR0b25zLWNvbnRhaW5lciB7XG4gICAgICAgIG1hcmdpbi10b3A6ICgkc3BhY2VyIC8gMik7XG4gICAgfVxuXG4gICAgLy8gUmVtb3ZlIGJvcmRlciBmcm9tIGZpZWxkIG9iamVjdFxuICAgIC5hbHBhY2EtY29udGFpbmVyLWl0ZW0gPiAuYWxwYWNhLWNvbnRhaW5lciA+IC5hbHBhY2EtZmllbGQtb2JqZWN0IHtcbiAgICAgICAgYm9yZGVyOiAwO1xuICAgIH1cblxuICAgIC8vIEJ1dHRvbnMgY29udGFpbmVyIGluIGZvcm1cbiAgICAuYWxwYWNhLWZvcm0tYnV0dG9ucy1jb250YWluZXIge1xuICAgICAgICBtYXJnaW4tdG9wOiAkc3BhY2VyO1xuICAgICAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgICB9XG5cbiAgICAvLyBSZW1vdmUgaG9yaXpvbnRhbCBzcGFjaW5nIGZyb20gZm9ybSBncm91cFxuICAgIC5hbHBhY2EtY29udGFpbmVyID4gLmZvcm0tZ3JvdXAge1xuICAgICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgIH1cblxuICAgIC8vIEhpZGRlbiBmaWVsZFxuICAgIC5hbHBhY2EtZmllbGQtaGlkZGVuIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG5cbiAgICAvLyBGaXJzdCBpdGVtXG4gICAgLmFscGFjYS1jb250YWluZXItaXRlbTpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICAgIG1hcmdpbi10b3A6ICgkc3BhY2VyIC8gMik7XG4gICAgfVxuXG4gICAgLy8gTGFzdCBpdGVtXG4gICAgLmFscGFjYS1jb250YWluZXIgLmFscGFjYS1jb250YWluZXItaXRlbTpsYXN0LWNoaWxkIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICB9XG5cbiAgICAvLyBTZWxlY3RcbiAgICAuYWxwYWNhLWZpZWxkLXNlbGVjdCAuYnRuLWdyb3VwIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgfVxuXG5cbiAgICAvL1xuICAgIC8vIEZpZWxkc1xuICAgIC8vXG5cbiAgICAuYWxwYWNhLWZpZWxkIHtcblxuICAgICAgICAvLyBVcGxvYWQgZmllbGRcbiAgICAgICAgJi5hbHBhY2EtZmllbGQtdXBsb2FkIHtcblxuICAgICAgICAgICAgLy8gQWN0aXZlIHpvbmVcbiAgICAgICAgICAgIC5maWxldXBsb2FkLWFjdGl2ZS16b25lIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAoJHNwYWNlciAqIDIpO1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206ICgkc3BhY2VyICogMik7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC8vIERvd25sb2FkXG4gICAgICAgICAgICAudGVtcGxhdGUtZG93bmxvYWQgdGQuZXJyb3IsXG4gICAgICAgICAgICAudGVtcGxhdGUtdXBsb2FkIHRkLmVycm9yIHtcbiAgICAgICAgICAgICAgICBjb2xvcjogJGNvbG9yLXdhcm5pbmctODAwO1xuICAgICAgICAgICAgICAgIHdvcmQtYnJlYWs6IGJyZWFrLWFsbDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC8vIEFkZHJlc3NcbiAgICAgICAgJi5hbHBhY2EtZmllbGQtYWRkcmVzcyAuYWxwYWNhLWZpZWxkLWFkZHJlc3MtbWFwY2FudmFzIHtcbiAgICAgICAgICAgIGhlaWdodDogMjUwcHg7XG4gICAgICAgIH1cblxuICAgICAgICAvLyBJbWFnZVxuICAgICAgICAmLmFscGFjYS1maWVsZC1pbWFnZSAuYWxwYWNhLWltYWdlLWRpc3BsYXkge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogJHNwYWNlcjtcbiAgICAgICAgfVxuICAgIH1cbn1cbiIsIi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuKlxuKiAgIyBUb2tlbmZpZWxkIGZvciBCb290c3RyYXBcbipcbiogIFN0eWxlcyBmb3IgdG9rZW5maWVsZC5qcyAtIEFkdmFuY2VkIHRhZ2dpbmcvdG9rZW5pemluZyBwbHVnaW4gZm9yIEJvb3RzdHJhcFxuKlxuKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5cbi8vIENoZWNrIGlmIGNvbXBvbmVudCBpcyBlbmFibGVkXG5AaWYgJGVuYWJsZS10b2tlbmZpZWxkIHtcblxuICAgIC8vIEJhc2VcbiAgICAudG9rZW5maWVsZCB7XG4gICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgQGluY2x1ZGUgY2xlYXJmaXg7XG5cbiAgICAgICAgLy8gUmVtb3ZlIGRlZmF1bHQgLmZvcm0tY29udHJvbCBzdHlsaW5nXG4gICAgICAgICYuZm9ybS1jb250cm9sOm5vdChpbnB1dCkge1xuICAgICAgICAgICAgcGFkZGluZzogMCAwICR0YWdzLXNwYWNlciAwO1xuICAgICAgICB9XG5cbiAgICAgICAgLy8gVG9rZW5cbiAgICAgICAgLnRva2VuIHtcbiAgICAgICAgICAgIG1hcmdpbjogJHRhZ3Mtc3BhY2VyIDAgMCAkdGFncy1zcGFjZXI7XG4gICAgICAgICAgICBjdXJzb3I6IGRlZmF1bHQ7XG4gICAgICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJHRhZy1ib3JkZXItcmFkaXVzKTtcbiAgICAgICAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oYWxsIGVhc2UtaW4tb3V0ICRjb21wb25lbnQtdHJhbnNpdGlvbi10aW1lcik7XG5cbiAgICAgICAgICAgIC8vIFNraXAgdG9rZW5zIHdpdGggY3VzdG9tIGJhY2tncm91bmQgY29sb3JcbiAgICAgICAgICAgICY6bm90KFtjbGFzcyo9YmctXSkge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR0YWdzLWJnO1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkdGFncy1jb2xvcjtcblxuICAgICAgICAgICAgICAgIC8vIEhvdmVyIHN0YXRlXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgaG92ZXItZm9jdXMge1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGFncy1ob3Zlci1iZztcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICR0YWdzLWhvdmVyLWNvbG9yO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLy8gVGFnIHRleHRcbiAgICAgICAgICAgIC50b2tlbi1sYWJlbCB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgbWF4LXdpZHRoOiBub25lIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAoJGlucHV0LWJ0bi1wYWRkaW5nLXkgLSAkdGFncy1zcGFjZXIpICRpbnB1dC1idG4tcGFkZGluZy14O1xuICAgICAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6ICgkaW5wdXQtYnRuLXBhZGRpbmcteCArICgkaWNvbi1mb250LXNpemUgKiAxLjUpKTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLy8gQ2xvc2UgYnV0dG9uXG4gICAgICAgICAgICA+IC5jbG9zZSB7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAwO1xuICAgICAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgdG9wOiA1MCU7XG4gICAgICAgICAgICAgICAgY29sb3I6IGluaGVyaXQ7XG4gICAgICAgICAgICAgICAgcmlnaHQ6ICRpbnB1dC1idG4tcGFkZGluZy14O1xuICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IC0oJGZvbnQtc2l6ZS14cyAvIDIpO1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb24ob3BhY2l0eSBlYXNlLWluLW91dCAkY29tcG9uZW50LXRyYW5zaXRpb24tdGltZXIpO1xuXG4gICAgICAgICAgICAgICAgLy8gSWNvblxuICAgICAgICAgICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgICAgICAgICBjb250ZW50OiAnXFxlZDZhJztcbiAgICAgICAgICAgICAgICAgICAgZm9udC1mYW1pbHk6ICRpY29uLWZvbnQtZmFtaWx5O1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAkZm9udC1zaXplLXhzO1xuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBsbC1mb250LXNtb290aGluZygpO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIC8vIEhvdmVyIGFjdGlvblxuICAgICAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG5cbiAgICAgICAgLy9cbiAgICAgICAgLy8gSW5wdXQgZmllbGRcbiAgICAgICAgLy9cblxuICAgICAgICAvLyBNYWtlIHR5cGVhaGVhZCBpbnB1dCBhdXRvIHdpZHRoXG4gICAgICAgIC50d2l0dGVyLXR5cGVhaGVhZCB7XG4gICAgICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgICAgfVxuXG4gICAgICAgIC8vIElucHV0IGZpZWxkXG4gICAgICAgIC50b2tlbi1pbnB1dCB7XG4gICAgICAgICAgICBkaXJlY3Rpb246IGx0cjtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IG5vbmU7XG4gICAgICAgICAgICB3aWR0aDogNS42MjVyZW0haW1wb3J0YW50O1xuICAgICAgICAgICAgbWF4LXdpZHRoOiA1MCU7XG4gICAgICAgICAgICBtaW4td2lkdGg6IDRyZW07XG4gICAgICAgICAgICBwYWRkaW5nOiAoJGlucHV0LXBhZGRpbmcteSAtICR0YWdzLXNwYWNlcikgJGlucHV0LXBhZGRpbmcteDtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6ICR0YWdzLXNwYWNlcjtcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAkdGFncy1zcGFjZXI7XG4gICAgICAgICAgICBib3JkZXI6IDA7XG4gICAgICAgICAgICBvdXRsaW5lOiAwO1xuICAgICAgICB9XG5cblxuICAgICAgICAvL1xuICAgICAgICAvLyBTdGF0ZXNcbiAgICAgICAgLy9cblxuICAgICAgICAvLyBSZWFkb25seVxuICAgICAgICAmLnJlYWRvbmx5IC50b2tlbiB7XG4gICAgICAgICAgICAudG9rZW4tbGFiZWwge1xuICAgICAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6ICRpbnB1dC1idG4tcGFkZGluZy14O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAvLyBIaWRlIGNsb3NlIGJ1dHRvbiBpbiByZWFkb25seVxuICAgICAgICAgICAgLmNsb3NlIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLy8gRGlzYWJsZWRcbiAgICAgICAgJi5kaXNhYmxlZCB7XG4gICAgICAgICAgICBjdXJzb3I6ICRjdXJzb3ItZGlzYWJsZWQ7XG4gICAgICAgICAgICBcbiAgICAgICAgICAgIC8vIFRva2VuIHN0eWxlXG4gICAgICAgICAgICAudG9rZW4ge1xuXG4gICAgICAgICAgICAgICAgLy8gTXV0ZSB0b2tlbnNcbiAgICAgICAgICAgICAgICAmLFxuICAgICAgICAgICAgICAgIC5jbG9zZSB7XG4gICAgICAgICAgICAgICAgICAgIG9wYWNpdHk6ICR0YWctZGlzYWJsZWQtb3BhY2l0eTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAvLyBSZXZlcnQgZGVmYXVsdCBiYWNrZ3JvdW5kIG9uIGhvdmVyXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgaG92ZXItZm9jdXMge1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGFncy1iZztcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICR0YWdzLWNvbG9yO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLy8gQWRkIGRpc2FibGVkIGN1cnNvclxuICAgICAgICAgICAgJixcbiAgICAgICAgICAgIC50b2tlbi1pbnB1dCxcbiAgICAgICAgICAgIC50b2tlbixcbiAgICAgICAgICAgIC50b2tlbiAuY2xvc2Uge1xuICAgICAgICAgICAgICAgIGN1cnNvcjogJGN1cnNvci1kaXNhYmxlZDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuXG4gICAgLy9cbiAgICAvLyBTaXppbmdcbiAgICAvL1xuXG4gICAgLy8gTGFyZ2VcbiAgICAuaW5wdXQtZ3JvdXAtbGcsXG4gICAgLnRva2VuZmllbGQuZm9ybS1jb250cm9sLWxnIHtcblxuICAgICAgICAvLyBSaWdodCBzcGFjaW5nIGZvciBjbG9zZSBidXR0b25cbiAgICAgICAgLnRva2VuID4gLnRva2VuLWxhYmVsLFxuICAgICAgICAudG9rZW4gPiBzcGFuIHtcbiAgICAgICAgICAgIHBhZGRpbmc6ICgkaW5wdXQtYnRuLXBhZGRpbmcteS1sZyAtICR0YWdzLXNwYWNlcikgJGlucHV0LWJ0bi1wYWRkaW5nLXgtbGc7XG4gICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAoJGlucHV0LWJ0bi1wYWRkaW5nLXgtbGcgKyAoJGZvbnQtc2l6ZS14cyAqIDEuNSkpO1xuICAgICAgICB9XG5cbiAgICAgICAgLy8gSW5wdXRcbiAgICAgICAgLnRva2VuLWlucHV0IHtcbiAgICAgICAgICAgIHBhZGRpbmc6ICgkaW5wdXQtcGFkZGluZy15LWxnIC0gJHRhZ3Mtc3BhY2VyKSAkaW5wdXQtcGFkZGluZy14LWxnO1xuICAgICAgICB9XG5cbiAgICAgICAgLy8gQ2xvc2UgYnV0dG9uXG4gICAgICAgIC50b2tlbiA+IC5jbG9zZSB7XG4gICAgICAgICAgICByaWdodDogJGlucHV0LWJ0bi1wYWRkaW5nLXgtbGc7XG4gICAgICAgIH1cblxuICAgICAgICAvLyBSZWFkb25seVxuICAgICAgICAmLnJlYWRvbmx5IC50b2tlbiA+IC50b2tlbi1sYWJlbCB7XG4gICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAkaW5wdXQtYnRuLXBhZGRpbmcteC1sZztcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8vIFNtYWxsXG4gICAgLmlucHV0LWdyb3VwLXNtLFxuICAgIC50b2tlbmZpZWxkLmZvcm0tY29udHJvbC1zbSB7XG5cbiAgICAgICAgLy8gVGFnc1xuICAgICAgICAudG9rZW4gPiAudG9rZW4tbGFiZWwsXG4gICAgICAgIC50b2tlbiA+IHNwYW4ge1xuICAgICAgICAgICAgcGFkZGluZzogKCRpbnB1dC1idG4tcGFkZGluZy15LXNtIC0gJHRhZ3Mtc3BhY2VyKSAkaW5wdXQtYnRuLXBhZGRpbmcteC1zbTtcbiAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6ICgkaW5wdXQtYnRuLXBhZGRpbmcteC1zbSArICgkZm9udC1zaXplLXhzICogMS41KSk7XG4gICAgICAgIH1cblxuICAgICAgICAvLyBJbnB1dFxuICAgICAgICAudG9rZW4taW5wdXQge1xuICAgICAgICAgICAgcGFkZGluZzogKCRpbnB1dC1wYWRkaW5nLXktc20gLSAkdGFncy1zcGFjZXIpICRpbnB1dC1wYWRkaW5nLXgtc207XG4gICAgICAgIH1cblxuICAgICAgICAvLyBDbG9zZSBidXR0b25cbiAgICAgICAgLnRva2VuID4gLmNsb3NlIHtcbiAgICAgICAgICAgIHJpZ2h0OiAkaW5wdXQtYnRuLXBhZGRpbmcteC1zbTtcbiAgICAgICAgfVxuXG4gICAgICAgIC8vIFJlYWRvbmx5XG4gICAgICAgICYucmVhZG9ubHkgLnRva2VuID4gLnRva2VuLWxhYmVsIHtcbiAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6ICRpbnB1dC1idG4tcGFkZGluZy14LXNtO1xuICAgICAgICB9XG4gICAgfVxufVxuIiwiLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4qXG4qICAjIEJvb3RzdHJhcCB0YWdzIGlucHV0XG4qXG4qICBTdHlsZXMgZm9yIHRhZ3NpbnB1dC5qcyAtIHRhZ3MgaW5wdXQgZm9yIEJvb3RzdHJhcFxuKlxuKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5cbi8vIENoZWNrIGlmIGNvbXBvbmVudCBpcyBlbmFibGVkXG5AaWYgJGVuYWJsZS10YWdzLWlucHV0IHtcblxuICAgIC8vIEJhc2VcbiAgICAuYm9vdHN0cmFwLXRhZ3NpbnB1dCB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRpbnB1dC1iZztcbiAgICAgICAgYm9yZGVyOiAkaW5wdXQtYm9yZGVyLXdpZHRoIHNvbGlkICRpbnB1dC1ib3JkZXItY29sb3I7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgcGFkZGluZzogMCAwICR0YWdzLXNwYWNlciAwO1xuICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkdGFnLWJvcmRlci1yYWRpdXMpO1xuXG4gICAgICAgIC8vIElucHV0IGZpZWxkXG4gICAgICAgIGlucHV0IHtcbiAgICAgICAgICAgIGRpcmVjdGlvbjogbHRyO1xuICAgICAgICAgICAgYm9yZGVyOiAwO1xuICAgICAgICAgICAgb3V0bGluZTogMDtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICAgICAgcGFkZGluZzogKCRpbnB1dC1wYWRkaW5nLXkgLSAkdGFncy1zcGFjZXIpICRpbnB1dC1wYWRkaW5nLXg7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAkdGFncy1zcGFjZXI7XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogJHRhZ3Mtc3BhY2VyO1xuICAgICAgICAgICAgd2lkdGg6IGF1dG8gIWltcG9ydGFudDtcbiAgICAgICAgICAgIG1heC13aWR0aDogNTAlO1xuICAgICAgICAgICAgbWluLXdpZHRoOiA0cmVtO1xuICAgICAgICAgICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICAgICAgfVxuXG4gICAgICAgIC8vIEluc2lkZSBpbnB1dCBncm91cFxuICAgICAgICAuaW5wdXQtZ3JvdXAgJiB7XG4gICAgICAgICAgICB3aWR0aDogMSU7XG4gICAgICAgICAgICBmbGV4OiAxIDEgYXV0bztcbiAgICAgICAgfVxuXG4gICAgICAgIC8vIFR3aXR0ZXIgdHlwZWFoZWFkIGFkYXB0YXRpb25cbiAgICAgICAgLnR3aXR0ZXItdHlwZWFoZWFkIHtcbiAgICAgICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgICB9XG4gICAgICAgIC50dC1kcm9wZG93bi1tZW51IHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6ICgkdGFncy1zcGFjZXIgKyAkZHJvcGRvd24tc3BhY2VyKTtcbiAgICAgICAgICAgIG1pbi13aWR0aDogJGRyb3Bkb3duLW1pbi13aWR0aDtcbiAgICAgICAgfVxuXG4gICAgICAgIC8vIFRhZ1xuICAgICAgICAudGFnIHtcbiAgICAgICAgICAgIG1hcmdpbjogJHRhZ3Mtc3BhY2VyIDAgMCAkdGFncy1zcGFjZXI7XG4gICAgICAgICAgICBwYWRkaW5nOiAoJGlucHV0LWJ0bi1wYWRkaW5nLXkgLSAkdGFncy1zcGFjZXIpICRpbnB1dC1idG4tcGFkZGluZy14O1xuICAgICAgICAgICAgcGFkZGluZy1yaWdodDogKCRpbnB1dC1idG4tcGFkZGluZy14ICsgKCRpY29uLWZvbnQtc2l6ZSAqIDEuNSkpO1xuICAgICAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCR0YWctYm9yZGVyLXJhZGl1cyk7XG4gICAgICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKGFsbCBlYXNlLWluLW91dCAkY29tcG9uZW50LXRyYW5zaXRpb24tdGltZXIpO1xuXG4gICAgICAgICAgICAvLyBTa2lwIHRva2VucyB3aXRoIGN1c3RvbSBiYWNrZ3JvdW5kIGNvbG9yXG4gICAgICAgICAgICAmOm5vdChbY2xhc3MqPWJnLV0pIHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGFncy1iZztcbiAgICAgICAgICAgICAgICBjb2xvcjogJHRhZ3MtY29sb3I7XG5cbiAgICAgICAgICAgICAgICAvLyBIb3ZlciBzdGF0ZVxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGhvdmVyLWZvY3VzIHtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHRhZ3MtaG92ZXItYmc7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkdGFncy1ob3Zlci1jb2xvcjtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC8vIFJlbW92ZSBidXR0b25cbiAgICAgICAgICAgIFtkYXRhLXJvbGU9XCJyZW1vdmVcIl0ge1xuICAgICAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgdG9wOiA1MCU7XG4gICAgICAgICAgICAgICAgcmlnaHQ6ICRpbnB1dC1idG4tcGFkZGluZy14O1xuICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IC0oJGZvbnQtc2l6ZS14cyAvIDIpO1xuICAgICAgICAgICAgICAgIG9wYWNpdHk6IDAuNztcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKG9wYWNpdHkgZWFzZS1pbi1vdXQgJGNvbXBvbmVudC10cmFuc2l0aW9uLXRpbWVyKTtcblxuICAgICAgICAgICAgICAgIC8vIEhvdmVyIHN0YXRlXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgaG92ZXIge1xuICAgICAgICAgICAgICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIC8vIEljb25cbiAgICAgICAgICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgICAgICAgICAgY29udGVudDogJ1xcZWQ2YSc7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtZmFtaWx5OiAkaWNvbi1mb250LWZhbWlseTtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS14cztcbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgbGwtZm9udC1zbW9vdGhpbmcoKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG4iLCIvKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbipcbiogICMgVG91Y2hzcGluIHNwaW5uZXJzXG4qXG4qICBTdHlsZXMgZm9yIHRvdWNoc3Bpbi5taW4uanMgLSBzcGlubmVyIGZvcm0gY29udHJvbCBsaWJyYXJ5XG4qXG4qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cblxuLy8gQ2hlY2sgaWYgY29tcG9uZW50IGlzIGVuYWJsZWRcbkBpZiAkZW5hYmxlLXRvdWNoc3BpbiB7XG5cbiAgICAvLyBCYXNlXG4gICAgLmJvb3RzdHJhcC10b3VjaHNwaW4ge1xuXG4gICAgICAgIC8vIFZlcnRpY2FsIGJ1dHRvbnNcbiAgICAgICAgLmlucHV0LWdyb3VwLWJ0bi12ZXJ0aWNhbCB7XG4gICAgICAgICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuXG4gICAgICAgICAgICAvLyBCdXR0b25cbiAgICAgICAgICAgID4gLmJ0biB7XG4gICAgICAgICAgICAgICAgd2lkdGg6ICgkaWNvbi1mb250LXNpemUgLyAyKSArICgkaW5wdXQtYnRuLXBhZGRpbmcteCAqIDIpIC0gcmVtLWNhbGMoJGlucHV0LWJvcmRlci13aWR0aCAqIDIpO1xuICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAtKCRpbnB1dC1ib3JkZXItd2lkdGgpO1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoMCk7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC8vIEljb25cbiAgICAgICAgICAgIGkge1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICB0b3A6IDUwJTtcbiAgICAgICAgICAgICAgICBsZWZ0OiA1MCU7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IC0oJGljb24tZm9udC1zaXplIC8gMik7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogLSgkaWNvbi1mb250LXNpemUgLyAyKTtcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAvLyBBcnJvdyB1cFxuICAgICAgICAgICAgLmJvb3RzdHJhcC10b3VjaHNwaW4tdXAge1xuICAgICAgICAgICAgICAgIGJvcmRlcjogJGlucHV0LWJvcmRlci13aWR0aCBzb2xpZCAkaW5wdXQtYm9yZGVyLWNvbG9yO1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoMCk7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC8vIEFycm93IGRvd25cbiAgICAgICAgICAgIC5ib290c3RyYXAtdG91Y2hzcGluLWRvd24ge1xuICAgICAgICAgICAgICAgIGJvcmRlcjogJGlucHV0LWJvcmRlci13aWR0aCBzb2xpZCAkaW5wdXQtYm9yZGVyLWNvbG9yO1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJvcmRlci1yaWdodC1yYWRpdXMoJGlucHV0LWJvcmRlci1yYWRpdXMpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cblxuICAgICAgICAvL1xuICAgICAgICAvLyBTaXppbmdcbiAgICAgICAgLy9cblxuICAgICAgICAvLyBMYXJnZVxuICAgICAgICAmLmlucHV0LWdyb3VwLWxnIC5pbnB1dC1ncm91cC1idG4tdmVydGljYWwge1xuICAgICAgICAgICAgPiAuYnRuIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogKCRpY29uLWZvbnQtc2l6ZSAvIDIpICsgKCRpbnB1dC1idG4tcGFkZGluZy14LWxnICogMikgLSByZW0tY2FsYygkaW5wdXQtYm9yZGVyLXdpZHRoICogMik7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAuYm9vdHN0cmFwLXRvdWNoc3Bpbi1kb3duIHtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBib3JkZXItcmlnaHQtcmFkaXVzKCRpbnB1dC1ib3JkZXItcmFkaXVzLWxnKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC8vIFNtYWxsXG4gICAgICAgICYuaW5wdXQtZ3JvdXAtc20gLmlucHV0LWdyb3VwLWJ0bi12ZXJ0aWNhbCB7XG4gICAgICAgICAgICA+IC5idG4ge1xuICAgICAgICAgICAgICAgIHdpZHRoOiAoJGljb24tZm9udC1zaXplIC8gMikgKyAoJGlucHV0LWJ0bi1wYWRkaW5nLXgtc20gKiAyKSAtIHJlbS1jYWxjKCRpbnB1dC1ib3JkZXItd2lkdGggKiAyKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC5ib290c3RyYXAtdG91Y2hzcGluLWRvd24ge1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJvcmRlci1yaWdodC1yYWRpdXMoJGlucHV0LWJvcmRlci1yYWRpdXMtc20pO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLy8gRml4IGZvciByb3VuZGVkIGNvcm5lcnNcbiAgICAuaW5wdXQtZ3JvdXAge1xuICAgICAgICAuaW5wdXQtZ3JvdXAtcHJlcGVuZC5kLW5vbmU6Zmlyc3QtY2hpbGQgKyAuZm9ybS1jb250cm9sIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGJvcmRlci1sZWZ0LXJhZGl1cygkaW5wdXQtYm9yZGVyLXJhZGl1cyk7XG4gICAgICAgIH1cbiAgICAgICAgJi1sZyB7XG4gICAgICAgICAgICAuaW5wdXQtZ3JvdXAtcHJlcGVuZC5kLW5vbmU6Zmlyc3QtY2hpbGQgKyAuZm9ybS1jb250cm9sIHtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBib3JkZXItbGVmdC1yYWRpdXMoJGlucHV0LWJvcmRlci1yYWRpdXMtbGcpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgICYtc20ge1xuICAgICAgICAgICAgLmlucHV0LWdyb3VwLXByZXBlbmQuZC1ub25lOmZpcnN0LWNoaWxkICsgLmZvcm0tY29udHJvbCB7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgYm9yZGVyLWxlZnQtcmFkaXVzKCRpbnB1dC1ib3JkZXItcmFkaXVzLXNtKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cbiIsIi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuKlxuKiAgIyBCb290c3RyYXAgRHVhbGxpc3Rib3hcbipcbiogIFN0eWxlcyBmb3IgbGlzdGJveC5qcyAtIEEgcmVzcG9uc2l2ZSBkdWFsIGxpc3Rib3ggd2lkZ2V0IG9wdGltaXplZCBmb3IgQm9vdHN0cmFwXG4qXG4qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cblxuLy8gQ2hlY2sgaWYgY29tcG9uZW50IGlzIGVuYWJsZWRcbkBpZiAkZW5hYmxlLWR1YWwtbGlzdGJveCB7XG5cbiAgICAvLyBCYXNlXG4gICAgLmJvb3RzdHJhcC1kdWFsbGlzdGJveC1jb250YWluZXIge1xuXG4gICAgICAgIC8vIEFkZCBib3R0b20gc3BhY2luZyB0byB0aGUgZmlyc3QgYm94XG4gICAgICAgIC5ib3gxIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206ICRzcGFjZXI7XG4gICAgICAgIH1cblxuICAgICAgICAvLyBTZWxlY3RcbiAgICAgICAgc2VsZWN0LmZvcm0tY29udHJvbCB7XG4gICAgICAgICAgICBwYWRkaW5nOiAkaW5wdXQtYnRuLXBhZGRpbmcteTtcbiAgICAgICAgICAgIEBpbmNsdWRlIGJvcmRlci10b3AtcmFkaXVzKDApO1xuICAgICAgICB9XG4gICAgICAgIG9wdGlvbiB7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIHBhZGRpbmc6ICRpbnB1dC1idG4tcGFkZGluZy15ICRpbnB1dC1idG4tcGFkZGluZy14O1xuICAgICAgICAgICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkYm9yZGVyLXJhZGl1cyk7XG4gICAgICAgIH1cblxuICAgICAgICAvLyBNb3ZlIG9wdGlvbiBvbiBzZWxlY3RcbiAgICAgICAgJi5tb3Zlb25zZWxlY3Qge1xuXG4gICAgICAgICAgICAvLyBIaWRlIFwiTW92ZSBzaW5nbGVcIiBidXR0b25cbiAgICAgICAgICAgIC5tb3ZlLFxuICAgICAgICAgICAgLnJlbW92ZSB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLy8gQWRkIGJvcmRlciB0byB0aGUgbmV4dCBidXR0b25zXG4gICAgICAgICAgICAuYnRuLWdyb3VwIHtcblxuICAgICAgICAgICAgICAgIC8vIFZpc2libGUgYnV0dG9uc1xuICAgICAgICAgICAgICAgIC5tb3ZlYWxsLFxuICAgICAgICAgICAgICAgIC5yZW1vdmVhbGwge1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgYm9yZGVyLXRvcC1yYWRpdXMoJGJ0bi1ib3JkZXItcmFkaXVzKTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAvLyBTcGFjaW5nIGJldHdlZW4gYnV0dG9uc1xuICAgICAgICAgICAgICAgIC5idG4gKyAuYnRuIHtcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyLWxlZnQtd2lkdGg6ICRidG4tYm9yZGVyLXdpZHRoO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG5cbiAgICAgICAgLy9cbiAgICAgICAgLy8gQnV0dG9uc1xuICAgICAgICAvL1xuXG4gICAgICAgIC8vIE1haW4gYnV0dG9uc1xuICAgICAgICAuYnV0dG9ucyB7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IC0oJGJ0bi1ib3JkZXItd2lkdGgpO1xuICAgICAgICB9XG5cbiAgICAgICAgLy8gQ2xlYXIgYnV0dG9uc1xuICAgICAgICAuY2xlYXIxLFxuICAgICAgICAuY2xlYXIyIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAkc3BhY2VyO1xuXG4gICAgICAgICAgICAvLyBSZXNldCBzdHlsZXNcbiAgICAgICAgICAgIEBpbmNsdWRlIHBsYWluLWhvdmVyLWZvY3VzIHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgICAgICAgICBib3JkZXI6IDA7XG4gICAgICAgICAgICAgICAgY29sb3I6ICRsaW5rLWNvbG9yO1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICAgICAgICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAuYm94MS5maWx0ZXJlZCAuY2xlYXIxLFxuICAgICAgICAuYm94Mi5maWx0ZXJlZCAuY2xlYXIyIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgfVxuXG4gICAgICAgIC8vIENvbnRyb2wgYnV0dG9uc1xuICAgICAgICAubW92ZSxcbiAgICAgICAgLnJlbW92ZSxcbiAgICAgICAgLm1vdmVhbGwsXG4gICAgICAgIC5yZW1vdmVhbGwge1xuICAgICAgICAgICAgd2lkdGg6IDUwJTtcbiAgICAgICAgfVxuXG4gICAgICAgIC8vIEJ1dHRvbiBncm91cFxuICAgICAgICAuYnRuLWdyb3VwIC5idG4ge1xuICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgICAgQGluY2x1ZGUgYm9yZGVyLWJvdHRvbS1yYWRpdXMoMCk7XG5cbiAgICAgICAgICAgIC8vIEJvcmRlcnNcbiAgICAgICAgICAgICYgKyAuYnRuIHtcbiAgICAgICAgICAgICAgICBib3JkZXItbGVmdC13aWR0aDogMDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLy8gSWNvbnNcbiAgICAgICAgICAgID4gaSB7XG4gICAgICAgICAgICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gICAgICAgICAgICAgICAgLy8gUmVkdWNlIHNwYWNpbmcgYmV0d2VlbiBpY29uc1xuICAgICAgICAgICAgICAgICsgaSB7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAtKCRpY29uLWZvbnQtc2l6ZSk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cblxuICAgICAgICAvL1xuICAgICAgICAvLyBFbGVtZW50c1xuICAgICAgICAvL1xuXG4gICAgICAgIC8vIEZpbHRlclxuICAgICAgICAuZmlsdGVyIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206ICRzcGFjZXI7XG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAgICAgICAgICYucGxhY2Vob2xkZXIge1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkaW5wdXQtcGxhY2Vob2xkZXItY29sb3I7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAvLyBCb3R0b20gaW5mb1xuICAgICAgICAuaW5mby1jb250YWluZXIge1xuICAgICAgICAgICAgLmluZm8ge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAkc3BhY2VyO1xuXG4gICAgICAgICAgICAgICAgLmJhZGdlIHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAkZWxlbWVudC1zcGFjZXIteDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuXG4gICAgICAgIC8vXG4gICAgICAgIC8vIEluc2lkZSBzaWRlYmFyXG4gICAgICAgIC8vXG5cbiAgICAgICAgLnNpZGViYXIgJiB7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgICAgICAgICAgIC5ib3gxLFxuICAgICAgICAgICAgLmJveDIge1xuICAgICAgICAgICAgICAgIGZsZXg6IGF1dG87XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgbWF4LXdpZHRoOiBub25lO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAuYm94MSB7XG4gICAgICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IG1hcC1nZXQoJHNwYWNlcnMsIDEpO1xuXG4gICAgICAgICAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICAgICAgICAgIGNvbnRlbnQ6ICdcXGU5YzknO1xuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6ICRpY29uLWZvbnQtc2l6ZTtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1mYW1pbHk6ICRpY29uLWZvbnQtZmFtaWx5O1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMTtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luOiAoJHNwYWNlciAvIDIpIDA7XG4gICAgICAgICAgICAgICAgICAgIG9wYWNpdHk6IDAuNTtcbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgbGwtZm9udC1zbW9vdGhpbmcoKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuXG4gICAgICAgIC8vXG4gICAgICAgIC8vIFJlc3BvbnNpdmUgc3R1ZmZcbiAgICAgICAgLy9cblxuICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKG1kKSB7XG4gICAgICAgICAgICAuYm94MSB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLnNpZGViYXIgJiB7XG4gICAgICAgICAgICAgICAgLmJveDEge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cbiIsIi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuKlxuKiAgIyBTdGVwcyB3aXphcmRcbipcbiogIFN0eWxlcyBmb3Igc3RlcHMubWluLmpzIC0gQW4gYWxsLWluLW9uZSB3aXphcmQgcGx1Z2luIHRoYXQgaXMgZXh0cmVtZWx5IGZsZXhpYmxlLCBjb21wYWN0IGFuZCBmZWF0dXJlLXJpY2hcbipcbiogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuXG4vLyBDaGVjayBpZiBjb21wb25lbnQgaXMgZW5hYmxlZFxuQGlmICRlbmFibGUtd2l6YXJkIHtcblxuICAgIC8vIEJhc2VcbiAgICAud2l6YXJkIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG5cbiAgICAgICAgLy8gVGl0bGVcbiAgICAgICAgPiAuc3RlcHMgLmN1cnJlbnQtaW5mbyxcbiAgICAgICAgPiAuY29udGVudCA+IC50aXRsZSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9XG5cbiAgICAgICAgLy8gV2l6YXJkIGNvbnRlbnRcbiAgICAgICAgPiAuY29udGVudCB7XG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgICAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgICAgICAgID4gLmJvZHkge1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDAgJGNhcmQtc3BhY2VyLXg7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgID4gaWZyYW1lIHtcbiAgICAgICAgICAgICAgICBib3JkZXI6IDA7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgc2l6ZSgxMDAlKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8vIFN0ZXBzIGxpc3RcbiAgICAud2l6YXJkIHtcblxuICAgICAgICAvLyBTdGVwc1xuICAgICAgICA+IC5zdGVwcyB7XG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuXG4gICAgICAgICAgICAvLyBXaXphcmQgbmF2XG4gICAgICAgICAgICA+IHVsIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICB0YWJsZS1sYXlvdXQ6IGZpeGVkO1xuICAgICAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgICAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG5cbiAgICAgICAgICAgICAgICAvLyBXaXphcmQgbmF2IGl0ZW1cbiAgICAgICAgICAgICAgICA+IGxpIHtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogdGFibGUtY2VsbDtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICAgICAgICAgICAgICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gICAgICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgICAgICAgICAgICAgICAgIC8vIExpbmtcbiAgICAgICAgICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLXRvcDogKCR3aXphcmQtc3RlcC1udW1iZXItc2l6ZSArICgkc3BhY2VyIC8gMikpO1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogJHNwYWNlcjtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206ICRzcGFjZXI7XG4gICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICAgICAgICAgIG91dGxpbmU6IDA7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogJHRleHQtbXV0ZWQ7XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAvLyBTdGVwcyBpbmRpY2F0b3IgbGluZVxuICAgICAgICAgICAgICAgICAgICAmOmJlZm9yZSxcbiAgICAgICAgICAgICAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgICAgICAgICAgdG9wOiAoJHdpemFyZC1zdGVwLW51bWJlci1zaXplICsgJHNwYWNlcikgLSAoJHdpemFyZC1zdGVwLW51bWJlci1zaXplIC8gMikgLSByZW0tY2FsYygkd2l6YXJkLXN0ZXAtbGluZS1zaXplIC8gMik7XG4gICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogNTAlO1xuICAgICAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAkd2l6YXJkLXN0ZXAtbGluZS1zaXplO1xuICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHdpemFyZC1zdGVwLW51bWJlci1hY3RpdmUtYmc7XG4gICAgICAgICAgICAgICAgICAgICAgICB6LWluZGV4OiA5O1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICAgICAgICAgICAgICByaWdodDogMDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAmOmZpcnN0LWNoaWxkOmJlZm9yZSxcbiAgICAgICAgICAgICAgICAgICAgJjpsYXN0LWNoaWxkOmFmdGVyIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbnRlbnQ6IG5vbmU7XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAvLyBDdXJyZW50IHN0ZXBcbiAgICAgICAgICAgICAgICAgICAgJi5jdXJyZW50IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICY6YWZ0ZXIsXG4gICAgICAgICAgICAgICAgICAgICAgICB+IGxpOmJlZm9yZSxcbiAgICAgICAgICAgICAgICAgICAgICAgIH4gbGk6YWZ0ZXIge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR3aXphcmQtc3RlcC1saW5lLWNvbG9yO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICAvLyBMaW5rXG4gICAgICAgICAgICAgICAgICAgICAgICA+IGEge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkYm9keS1jb2xvcjtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjdXJzb3I6IGRlZmF1bHQ7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgICAgIC8vIEljb24gY29udGFpbmVyXG4gICAgICAgICAgICAgICAgICAgICAgICAubnVtYmVyIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDA7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiAkd2l6YXJkLXN0ZXAtbnVtYmVyLWFjdGl2ZS1iZztcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2l6YXJkLXN0ZXAtbnVtYmVyLWFjdGl2ZS1jb2xvcjtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogJHdpemFyZC1zdGVwLW51bWJlci1hY3RpdmUtYmc7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAvLyBJY29uXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnRlbnQ6ICdcXGU5MTMnO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb250LWZhbWlseTogJGljb24tZm9udC1mYW1pbHk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAkaWNvbi1mb250LXNpemU7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAoJHdpemFyZC1zdGVwLW51bWJlci1zaXplIC0gcmVtLWNhbGMoJHdpemFyZC1zdGVwLWxpbmUtc2l6ZSAqIDIpKTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgbGwtZm9udC1zbW9vdGhpbmcoKTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbihhbGwgZWFzZS1pbi1vdXQgJGNvbXBvbmVudC10cmFuc2l0aW9uLXRpbWVyKTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAvLyBEaXNhYmxlZFxuICAgICAgICAgICAgICAgICAgICAmLmRpc2FibGVkIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGN1cnNvcjogJGN1cnNvci1kaXNhYmxlZDtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgIC8vIENvbXBsZXRlZCBzdGVwXG4gICAgICAgICAgICAgICAgICAgICYuZG9uZSB7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgIC8vIExpbmtcbiAgICAgICAgICAgICAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIHBsYWluLWhvdmVyLWZvY3VzIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6ICR0ZXh0LW11dGVkO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAgICAgLy8gSWNvbiBjb250YWluZXJcbiAgICAgICAgICAgICAgICAgICAgICAgIC5udW1iZXIge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2l6YXJkLXN0ZXAtbnVtYmVyLWFjdGl2ZS1iZztcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBib3JkZXItY29sb3I6ICR3aXphcmQtc3RlcC1udW1iZXItYWN0aXZlLWJnO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkd2l6YXJkLXN0ZXAtbnVtYmVyLWFjdGl2ZS1jb2xvcjtcblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vIEljb25cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29udGVudDogJ1xcZWQ2Zic7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtZmFtaWx5OiAkaWNvbi1mb250LWZhbWlseTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6ICRpY29uLWZvbnQtc2l6ZTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6ICgoJGljb24tZm9udC1zaXplICogMikgKyByZW0tY2FsYygkd2l6YXJkLXN0ZXAtbGluZS1zaXplKSk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGxsLWZvbnQtc21vb3RoaW5nKCk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oYWxsIGVhc2UtaW4tb3V0ICRjb21wb25lbnQtdHJhbnNpdGlvbi10aW1lcik7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgLy8gRXJyb3JcbiAgICAgICAgICAgICAgICAgICAgJi5lcnJvciB7XG4gICAgICAgICAgICAgICAgICAgICAgICAubnVtYmVyIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBib3JkZXItY29sb3I6ICR3aXphcmQtc3RlcC1udW1iZXItZXJyb3ItYmc7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6ICR3aXphcmQtc3RlcC1udW1iZXItZXJyb3ItYmc7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAvLyBBZGQgdG9wIGJvcmRlciBpZiB3aXphcmQgY29tZXMgYWZ0ZXIgdHJhbnNwYXJlbnQgY2FyZCBoZWFkZXJcbiAgICAgICAgICAgICAgICAuY2FyZCA+IC5jYXJkLWhlYWRlcjpub3QoW2NsYXNzKj1iZy1dKSA+ICYge1xuICAgICAgICAgICAgICAgICAgICBib3JkZXItdG9wOiAkY2FyZC1ib3JkZXItd2lkdGggc29saWQgJGNhcmQtYm9yZGVyLWNvbG9yO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIC8vIE1lZGlhIHF1ZXJpZXNcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24obWQpIHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogJHNwYWNlcjtcblxuICAgICAgICAgICAgICAgICAgICAvLyBOYXYgaXRlbVxuICAgICAgICAgICAgICAgICAgICA+IGxpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgICAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogNTAlO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICA+IGEge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICY6Zmlyc3QtY2hpbGQ6YmVmb3JlLFxuICAgICAgICAgICAgICAgICAgICAgICAgJjpsYXN0LWNoaWxkOmFmdGVyIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAgICAgJjpsYXN0LWNoaWxkOmFmdGVyIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2l6YXJkLXN0ZXAtbnVtYmVyLWFjdGl2ZS1iZztcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oc20pIHtcblxuICAgICAgICAgICAgICAgICAgICAvLyBOYXYgaXRlbVxuICAgICAgICAgICAgICAgICAgICA+IGxpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAmLmN1cnJlbnQ6YWZ0ZXIge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR3aXphcmQtc3RlcC1udW1iZXItYWN0aXZlLWJnO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAvLyBOdW1iZXJzIGFuZCBpY29uc1xuICAgICAgICAgICAgLm51bWJlciB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHdpemFyZC1zdGVwLW51bWJlci1iZztcbiAgICAgICAgICAgICAgICBjb2xvcjogJHdpemFyZC1zdGVwLW51bWJlci1jb2xvcjtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICAgICAgICBsZWZ0OiA1MCU7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IC0oJHdpemFyZC1zdGVwLW51bWJlci1zaXplIC8gMik7XG4gICAgICAgICAgICAgICAgYm9yZGVyOiAkd2l6YXJkLXN0ZXAtbGluZS1zaXplIHNvbGlkICR3aXphcmQtc3RlcC1saW5lLWNvbG9yO1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1sZztcbiAgICAgICAgICAgICAgICB6LWluZGV4OiAxMDtcbiAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogKCR3aXphcmQtc3RlcC1udW1iZXItc2l6ZSAtIHJlbS1jYWxjKCR3aXphcmQtc3RlcC1saW5lLXNpemUgKiAyKSk7XG4gICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIHNpemUoJHdpemFyZC1zdGVwLW51bWJlci1zaXplKTtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRib3JkZXItcmFkaXVzLWNpcmNsZSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBTdGVwcyBwYWdpbmF0aW9uXG4gICAgLndpemFyZCB7XG5cbiAgICAgICAgLy8gQ29udGFpbmVyXG4gICAgICAgID4gLmFjdGlvbnMge1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gICAgICAgICAgICBwYWRkaW5nOiAkY2FyZC1zcGFjZXIteDtcbiAgICAgICAgICAgIHBhZGRpbmctdG9wOiAwO1xuXG4gICAgICAgICAgICAvLyBQYWdpbmcgbGlzdFxuICAgICAgICAgICAgPiB1bCB7XG4gICAgICAgICAgICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBjbGVhcmZpeDtcblxuICAgICAgICAgICAgICAgIC8vIFBhZ2luZyBpdGVtXG4gICAgICAgICAgICAgICAgPiBsaSB7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcblxuICAgICAgICAgICAgICAgICAgICAvLyBBZGQgaG9yaXpvbnRhbCBzcGFjaW5nXG4gICAgICAgICAgICAgICAgICAgICYgKyBsaSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogJGNhcmQtc3BhY2VyLXg7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG4iLCIvKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbipcbiogICMgU3VtbWVybm90ZSBlZGl0b3JcbipcbiogIFN0eWxlcyBmb3Igc3VtbWVybm90ZS5taW4uanMgLSBzdXBlciBzaW1wbGUgV1lTSVdZRyBFZGl0b3IgZm9yIEJvb3RzdHJhcCBmcmFtZXdvcmtcbipcbiogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuXG4vLyBDaGVjayBpZiBjb21wb25lbnQgaXMgZW5hYmxlZFxuQGlmICRlbmFibGUtc3VtbWVybm90ZSB7XG5cblxuICAgIC8vIFN1bW1lcm5vdGUgdXNlcyBpdHMgb3duIGljb25zXG4gICAgLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4gICAgLy8gTG9hZCBmb250XG4gICAgQGZvbnQtZmFjZSB7XG4gICAgICAgIGZvbnQtZmFtaWx5OiAnc3VtbWVybm90ZSc7XG4gICAgICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICAgICAgc3JjOiB1cmwoXCIjeyRzdW1tZXJub3RlLWZvbnQtcGF0aH0vc3VtbWVybm90ZS5lb3Q/MGQwZDVmYWM5OWNjODc3NGQ4OWViMDhiMWE4MzIzYzRcIik7XG4gICAgICAgIHNyYzogdXJsKFwiI3skc3VtbWVybm90ZS1mb250LXBhdGh9L3N1bW1lcm5vdGUuZW90PyNpZWZpeFwiKSBmb3JtYXQoXCJlbWJlZGRlZC1vcGVudHlwZVwiKSxcbiAgICAgICAgICAgICB1cmwoXCIjeyRzdW1tZXJub3RlLWZvbnQtcGF0aH0vc3VtbWVybm90ZS53b2ZmPzBkMGQ1ZmFjOTljYzg3NzRkODllYjA4YjFhODMyM2M0XCIpIGZvcm1hdChcIndvZmZcIiksXG4gICAgICAgICAgICAgdXJsKFwiI3skc3VtbWVybm90ZS1mb250LXBhdGh9L3N1bW1lcm5vdGUudHRmPzBkMGQ1ZmFjOTljYzg3NzRkODllYjA4YjFhODMyM2M0XCIpIGZvcm1hdChcInRydWV0eXBlXCIpO1xuICAgIH1cblxuICAgIC8vIEljb24gc3R5bGVzXG4gICAgW2NsYXNzXj1cIm5vdGUtaWNvbi1cIl06YmVmb3JlLFxuICAgIFtjbGFzcyo9XCIgbm90ZS1pY29uLVwiXTpiZWZvcmUge1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIGZvbnQtZmFtaWx5OiAnc3VtbWVybm90ZSc7XG4gICAgICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgICAgICAgZm9udC1zaXplOiBpbmhlcml0O1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IGluaGVyaXQ7XG4gICAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiBub3JtYWw7XG4gICAgICAgIEBpbmNsdWRlIGxsLWZvbnQtc21vb3RoaW5nKCk7XG4gICAgfVxuXG4gICAgLy8gSWNvbnNcbiAgICAubm90ZS1pY29uLWFsaWduLWNlbnRlcjpiZWZvcmV7Y29udGVudDpcIlxcZjEwMVwiO31cbiAgICAubm90ZS1pY29uLWFsaWduLWluZGVudDpiZWZvcmV7Y29udGVudDpcIlxcZjEwMlwiO31cbiAgICAubm90ZS1pY29uLWFsaWduLWp1c3RpZnk6YmVmb3Jle2NvbnRlbnQ6XCJcXGYxMDNcIjt9XG4gICAgLm5vdGUtaWNvbi1hbGlnbi1sZWZ0OmJlZm9yZXtjb250ZW50OlwiXFxmMTA0XCI7fVxuICAgIC5ub3RlLWljb24tYWxpZ24tb3V0ZGVudDpiZWZvcmV7Y29udGVudDpcIlxcZjEwNVwiO31cbiAgICAubm90ZS1pY29uLWFsaWduLXJpZ2h0OmJlZm9yZXtjb250ZW50OlwiXFxmMTA2XCI7fVxuICAgIC5ub3RlLWljb24tYWxpZ246YmVmb3Jle2NvbnRlbnQ6XCJcXGYxMDdcIjt9XG4gICAgLm5vdGUtaWNvbi1hcnJvdy1jaXJjbGUtZG93bjpiZWZvcmV7Y29udGVudDpcIlxcZjEwOFwiO31cbiAgICAubm90ZS1pY29uLWFycm93LWNpcmNsZS1sZWZ0OmJlZm9yZXtjb250ZW50OlwiXFxmMTA5XCI7fVxuICAgIC5ub3RlLWljb24tYXJyb3ctY2lyY2xlLXJpZ2h0OmJlZm9yZXtjb250ZW50OlwiXFxmMTBhXCI7fVxuICAgIC5ub3RlLWljb24tYXJyb3ctY2lyY2xlLXVwOmJlZm9yZXtjb250ZW50OlwiXFxmMTBiXCI7fVxuICAgIC5ub3RlLWljb24tYXJyb3dzLWFsdDpiZWZvcmV7Y29udGVudDpcIlxcZjEwY1wiO31cbiAgICAubm90ZS1pY29uLWFycm93cy1oOmJlZm9yZXtjb250ZW50OlwiXFxmMTBkXCI7fVxuICAgIC5ub3RlLWljb24tYXJyb3dzLXY6YmVmb3Jle2NvbnRlbnQ6XCJcXGYxMGVcIjt9XG4gICAgLm5vdGUtaWNvbi1ib2xkOmJlZm9yZXtjb250ZW50OlwiXFxmMTBmXCI7fVxuICAgIC5ub3RlLWljb24tY2FyZXQ6YmVmb3Jle2NvbnRlbnQ6XCJcXGYxMTBcIjt9XG4gICAgLm5vdGUtaWNvbi1jaGFpbi1icm9rZW46YmVmb3Jle2NvbnRlbnQ6XCJcXGYxMTFcIjt9XG4gICAgLm5vdGUtaWNvbi1jaXJjbGU6YmVmb3Jle2NvbnRlbnQ6XCJcXGYxMTJcIjt9XG4gICAgLm5vdGUtaWNvbi1jbG9zZTpiZWZvcmV7Y29udGVudDpcIlxcZjExM1wiO31cbiAgICAubm90ZS1pY29uLWNvZGU6YmVmb3Jle2NvbnRlbnQ6XCJcXGYxMTRcIjt9XG4gICAgLm5vdGUtaWNvbi1jb2wtYWZ0ZXI6YmVmb3Jle2NvbnRlbnQ6XCJcXGYxMTVcIjt9XG4gICAgLm5vdGUtaWNvbi1jb2wtYmVmb3JlOmJlZm9yZXtjb250ZW50OlwiXFxmMTE2XCI7fVxuICAgIC5ub3RlLWljb24tY29sLXJlbW92ZTpiZWZvcmV7Y29udGVudDpcIlxcZjExN1wiO31cbiAgICAubm90ZS1pY29uLWVyYXNlcjpiZWZvcmV7Y29udGVudDpcIlxcZjExOFwiO31cbiAgICAubm90ZS1pY29uLWZvbnQ6YmVmb3Jle2NvbnRlbnQ6XCJcXGYxMTlcIjt9XG4gICAgLm5vdGUtaWNvbi1mcmFtZTpiZWZvcmV7Y29udGVudDpcIlxcZjExYVwiO31cbiAgICAubm90ZS1pY29uLWl0YWxpYzpiZWZvcmV7Y29udGVudDpcIlxcZjExYlwiO31cbiAgICAubm90ZS1pY29uLWxpbms6YmVmb3Jle2NvbnRlbnQ6XCJcXGYxMWNcIjt9XG4gICAgLm5vdGUtaWNvbi1tYWdpYzpiZWZvcmV7Y29udGVudDpcIlxcZjExZFwiO31cbiAgICAubm90ZS1pY29uLW1lbnUtY2hlY2s6YmVmb3Jle2NvbnRlbnQ6XCJcXGYxMWVcIjt9XG4gICAgLm5vdGUtaWNvbi1taW51czpiZWZvcmV7Y29udGVudDpcIlxcZjExZlwiO31cbiAgICAubm90ZS1pY29uLW9yZGVyZWRsaXN0OmJlZm9yZXtjb250ZW50OlwiXFxmMTIwXCI7fVxuICAgIC5ub3RlLWljb24tcGVuY2lsOmJlZm9yZXtjb250ZW50OlwiXFxmMTIxXCI7fVxuICAgIC5ub3RlLWljb24tcGljdHVyZTpiZWZvcmV7Y29udGVudDpcIlxcZjEyMlwiO31cbiAgICAubm90ZS1pY29uLXF1ZXN0aW9uOmJlZm9yZXtjb250ZW50OlwiXFxmMTIzXCI7fVxuICAgIC5ub3RlLWljb24tcmVkbzpiZWZvcmV7Y29udGVudDpcIlxcZjEyNFwiO31cbiAgICAubm90ZS1pY29uLXJvdy1hYm92ZTpiZWZvcmV7Y29udGVudDpcIlxcZjEyNVwiO31cbiAgICAubm90ZS1pY29uLXJvdy1iZWxvdzpiZWZvcmV7Y29udGVudDpcIlxcZjEyNlwiO31cbiAgICAubm90ZS1pY29uLXJvdy1yZW1vdmU6YmVmb3Jle2NvbnRlbnQ6XCJcXGYxMjdcIjt9XG4gICAgLm5vdGUtaWNvbi1zcGVjaWFsLWNoYXJhY3RlcjpiZWZvcmV7Y29udGVudDpcIlxcZjEyOFwiO31cbiAgICAubm90ZS1pY29uLXNxdWFyZTpiZWZvcmV7Y29udGVudDpcIlxcZjEyOVwiO31cbiAgICAubm90ZS1pY29uLXN0cmlrZXRocm91Z2g6YmVmb3Jle2NvbnRlbnQ6XCJcXGYxMmFcIjt9XG4gICAgLm5vdGUtaWNvbi1zdWJzY3JpcHQ6YmVmb3Jle2NvbnRlbnQ6XCJcXGYxMmJcIjt9XG4gICAgLm5vdGUtaWNvbi1zdW1tZXJub3RlOmJlZm9yZXtjb250ZW50OlwiXFxmMTJjXCI7fVxuICAgIC5ub3RlLWljb24tc3VwZXJzY3JpcHQ6YmVmb3Jle2NvbnRlbnQ6XCJcXGYxMmRcIjt9XG4gICAgLm5vdGUtaWNvbi10YWJsZTpiZWZvcmV7Y29udGVudDpcIlxcZjEyZVwiO31cbiAgICAubm90ZS1pY29uLXRleHQtaGVpZ2h0OmJlZm9yZXtjb250ZW50OlwiXFxmMTJmXCI7fVxuICAgIC5ub3RlLWljb24tdHJhc2g6YmVmb3Jle2NvbnRlbnQ6XCJcXGYxMzBcIjt9XG4gICAgLm5vdGUtaWNvbi11bmRlcmxpbmU6YmVmb3Jle2NvbnRlbnQ6XCJcXGYxMzFcIjt9XG4gICAgLm5vdGUtaWNvbi11bmRvOmJlZm9yZXtjb250ZW50OlwiXFxmMTMyXCI7fVxuICAgIC5ub3RlLWljb24tdW5vcmRlcmVkbGlzdDpiZWZvcmV7Y29udGVudDpcIlxcZjEzM1wiO31cbiAgICAubm90ZS1pY29uLXZpZGVvOmJlZm9yZXtjb250ZW50OlwiXFxmMTM0XCI7fVxuXG5cbiAgICAvLyBDb3JlXG4gICAgLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbiAgICAvLyBFZGl0b3JcbiAgICAubm90ZS1lZGl0b3Ige1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAgICAgLy8gRHJvcCBjb250YWluZXJcbiAgICAgICAgLm5vdGUtZHJvcHpvbmUge1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgei1pbmRleDogMTAwO1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgIGNvbG9yOiB0aGVtZS1jb2xvcihcInByaW1hcnlcIik7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY2FyZC1iZztcbiAgICAgICAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgICAgICAgICAgYm9yZGVyOiAoJHN1bW1lcm5vdGUtYm9yZGVyLXdpZHRoICogMikgZGFzaGVkIHRoZW1lLWNvbG9yKFwicHJpbWFyeVwiKTtcbiAgICAgICAgICAgIG9wYWNpdHk6IC45NTtcblxuICAgICAgICAgICAgLy8gSG92ZXIgc3RhdGVcbiAgICAgICAgICAgICYuaG92ZXIge1xuICAgICAgICAgICAgICAgIGNvbG9yOiB0aGVtZS1jb2xvcihcInByaW1hcnlcIik7XG4gICAgICAgICAgICAgICAgYm9yZGVyOiAoJHN1bW1lcm5vdGUtYm9yZGVyLXdpZHRoICogMikgZGFzaGVkIHRoZW1lLWNvbG9yKFwicHJpbWFyeVwiKTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLy8gTWVzc2FnZXNcbiAgICAgICAgICAgIC5ub3RlLWRyb3B6b25lLW1lc3NhZ2Uge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IHRhYmxlLWNlbGw7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAkaDUtZm9udC1zaXplO1xuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtc2VtaWJvbGQ7XG4gICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgLmNhcmQgJiB7XG4gICAgICAgICAgICBib3JkZXItY29sb3I6ICRzdW1tZXJub3RlLWJvcmRlci1jb2xvcjtcbiAgICAgICAgICAgIEBpbmNsdWRlIGJveC1zaGFkb3cobm9uZSk7XG4gICAgICAgIH1cbiAgICAgICAgJi5kcmFnb3ZlciAubm90ZS1kcm9wem9uZSB7XG4gICAgICAgICAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICAgICAgfVxuXG4gICAgICAgIC8vIFJlbW92ZSBib3R0b20gbWFyZ2luIGZyb20gbGFzdCByb3dzXG4gICAgICAgIC5ub3RlLWZvcm0tZ3JvdXAge1xuICAgICAgICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIC5ub3RlLWdyb3VwLWltYWdlLXVybCB7XG4gICAgICAgICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAvLyBNb2RhbCB0aXRsZVxuICAgICAgICAubW9kYWwtdGl0bGUge1xuICAgICAgICAgICAgZm9udC1zaXplOiAkaDUtZm9udC1zaXplO1xuICAgICAgICB9XG5cbiAgICAgICAgLy8gU3R5bGUgZHJvcGRvd24gbWVudVxuICAgICAgICAuZHJvcGRvd24tc3R5bGUge1xuICAgICAgICAgICAgcHJlIHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZHJvcGRvd24tYmc7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogJGRyb3Bkb3duLWl0ZW0tcGFkZGluZy15ICRkcm9wZG93bi1pdGVtLXBhZGRpbmcteDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC8vIEFkZCAuc3VtbWVybm90ZS1ib3JkZXJsZXNzIGNsYXNzIHRvIG9yaWdpbmFsIGNvbnRhaW5lclxuICAgICAgICAvLyB0byByZW1vdmUgYWxsIHN0eWxlcyByZWxhdGVkIHRvIC5jYXJkXG4gICAgICAgIC5zdW1tZXJub3RlLWJvcmRlcmxlc3MgfiAmIHtcbiAgICAgICAgICAgIGJvcmRlcjogMDtcbiAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoMCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBBaXIgbW9kZVxuICAgIC5ub3RlLWFpci1lZGl0b3Ige1xuICAgICAgICBvdXRsaW5lOiAwO1xuICAgIH1cblxuICAgIC8vIFNvbWUgZml4IGZvciBGRlxuICAgIEAtbW96LWRvY3VtZW50IHVybC1wcmVmaXgoKSB7XG4gICAgICAgIC5ub3RlLWltYWdlLWlucHV0IHtcbiAgICAgICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8vIFBsYWNlaG9sZGVyIHRleHRcbiAgICAubm90ZS1wbGFjZWhvbGRlciB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgY29sb3I6ICRncmF5LTYwMDtcbiAgICB9XG5cbiAgICAvLyBUb29sYmFyXG4gICAgLm5vdGUtdG9vbGJhcjpub3QoW2NsYXNzKj1iZy1dKTpub3QoW2NsYXNzKj1hbHBoYS1dKSB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjYXJkLWNhcC1iZztcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogJGNhcmQtYm9yZGVyLXdpZHRoIHNvbGlkICRjYXJkLWJvcmRlci1jb2xvcjtcbiAgICAgICAgcGFkZGluZzogJGNhcmQtc3BhY2VyLXkgJGNhcmQtc3BhY2VyLXg7XG4gICAgICAgIHBhZGRpbmctdG9wOiAwO1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgfVxuXG4gICAgLy8gTWVudXNcbiAgICAuZHJvcGRvd24tZm9udG5hbWUsXG4gICAgLmRyb3Bkb3duLXN0eWxlIHtcbiAgICAgICAgbWF4LWhlaWdodDogMjByZW07XG4gICAgICAgIG92ZXJmbG93OiBhdXRvO1xuICAgIH1cblxuICAgIC8vIFJlbW92ZSBtYXJnaW4gZnJvbSBwYXJhZ3JhcGhzIGluIG1lbnVzXG4gICAgLmRyb3Bkb3duLXN0eWxlIHtcbiAgICAgICAgYSA+IHAge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgfVxuICAgIH1cblxuXG4gICAgLy9cbiAgICAvLyBFZGl0b3JcbiAgICAvL1xuXG4gICAgLy8gRWRpdGluZyBhcmVhXG4gICAgLm5vdGUtZWRpdGluZy1hcmVhIHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgICAgIC8vIEVkaXRhYmxlIGNvbnRhaW5lclxuICAgICAgICAubm90ZS1lZGl0YWJsZSB7XG4gICAgICAgICAgICBvdXRsaW5lOiAwO1xuXG4gICAgICAgICAgICBzdXAge1xuICAgICAgICAgICAgICAgIHZlcnRpY2FsLWFsaWduOiBzdXBlcjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHN1YiB7XG4gICAgICAgICAgICAgICAgdmVydGljYWwtYWxpZ246IHN1YjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC8vIEltYWdlc1xuICAgICAgICBpbWcge1xuICAgICAgICAgICAgJi5ub3RlLWZsb2F0LWxlZnQge1xuICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogJGVsZW1lbnQtc3BhY2VyLXg7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAmLm5vdGUtZmxvYXQtcmlnaHQge1xuICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAkZWxlbWVudC1zcGFjZXIteDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8vIEZyYW1lXG4gICAgLm5vdGUtZnJhbWUge1xuXG4gICAgICAgIC8vIENvZGUgdmlld1xuICAgICAgICAmLmNvZGV2aWV3IHtcbiAgICAgICAgICAgIC5ub3RlLWVkaXRpbmctYXJlYSB7XG4gICAgICAgICAgICAgICAgLm5vdGUtZWRpdGFibGUge1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAubm90ZS1jb2RhYmxlIHtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLy8gRWRpdGluZyBhcmVhXG4gICAgICAgIC5ub3RlLWVkaXRpbmctYXJlYSB7XG4gICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuXG4gICAgICAgICAgICAvLyBFZGl0IHZpZXdcbiAgICAgICAgICAgIC5ub3RlLWVkaXRhYmxlIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAkY2FyZC1zcGFjZXIteDtcbiAgICAgICAgICAgICAgICBvdmVyZmxvdzogYXV0bztcbiAgICAgICAgICAgICAgICBjb2xvcjogJGJvZHktY29sb3I7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNhcmQtYmc7XG4gICAgICAgICAgICAgICAgbWluLWhlaWdodDogJHN1bW1lcm5vdGUtbWluLWhlaWdodDtcblxuICAgICAgICAgICAgICAgICZbY29udGVudGVkaXRhYmxlPVwiZmFsc2VcIl0ge1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZ3JheS0zMDA7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAvLyBDb2RlIHZpZXdcbiAgICAgICAgICAgIC5ub3RlLWNvZGFibGUge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogJGNhcmQtc3BhY2VyLXg7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgICAgICAgICBmb250LWZhbWlseTogJGZvbnQtZmFtaWx5LW1vbm9zcGFjZTtcbiAgICAgICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRncmF5LTkwMDtcbiAgICAgICAgICAgICAgICBib3JkZXI6IDA7XG4gICAgICAgICAgICAgICAgcmVzaXplOiBub25lO1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJveC1zaGFkb3cobm9uZSk7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygwKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC8vIEZ1bGxzY3JlZW4gbW9kZVxuICAgICAgICAmLmZ1bGxzY3JlZW4ge1xuICAgICAgICAgICAgcG9zaXRpb246IGZpeGVkO1xuICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgIHotaW5kZXg6ICR6aW5kZXgtdG9vbHRpcCArIDEwO1xuICAgICAgICAgICAgd2lkdGg6IDEwMCUhaW1wb3J0YW50O1xuICAgICAgICAgICAgYm9yZGVyOiAwO1xuICAgICAgICAgICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygwKTtcblxuICAgICAgICAgICAgLy8gSGlkZSByZXNpemUgYmFyXG4gICAgICAgICAgICAubm90ZS1yZXNpemViYXIge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAvLyBQbGFjZWhvbGRlclxuICAgICAgICAubm90ZS1wbGFjZWhvbGRlciB7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgY29sb3I6ICRncmF5LTYwMDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8vIFN0YXR1cyBiYXJcbiAgICAubm90ZS1zdGF0dXNiYXIge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY2FyZC1jYXAtYmc7XG5cbiAgICAgICAgLy8gUmVzaXplIGhhbmRsZVxuICAgICAgICAubm90ZS1yZXNpemViYXIge1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBwYWRkaW5nOiAoJHN1bW1lcm5vdGUtcmVzaXplci1oZWlnaHQgKiAyKSAwO1xuICAgICAgICAgICAgY3Vyc29yOiBucy1yZXNpemU7XG4gICAgICAgICAgICBib3JkZXItdG9wOiAkc3VtbWVybm90ZS1ib3JkZXItd2lkdGggc29saWQgJHN1bW1lcm5vdGUtYm9yZGVyLWNvbG9yO1xuXG4gICAgICAgICAgICAvLyBJY29uIGJhclxuICAgICAgICAgICAgLm5vdGUtaWNvbi1iYXIge1xuICAgICAgICAgICAgICAgIHdpZHRoOiAkc3VtbWVybm90ZS1yZXNpemVyLXdpZHRoO1xuICAgICAgICAgICAgICAgIG1hcmdpbjogJHN1bW1lcm5vdGUtcmVzaXplci1oZWlnaHQgYXV0bztcbiAgICAgICAgICAgICAgICBib3JkZXItdG9wOiAkc3VtbWVybm90ZS1yZXNpemVyLWhlaWdodCBzb2xpZCAkc3VtbWVybm90ZS1yZXNpemVyLWNvbG9yO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG5cbiAgICAvL1xuICAgIC8vIFBvcG92ZXJcbiAgICAvL1xuXG4gICAgLy8gQmFzZVxuICAgIC5ub3RlLXBvcG92ZXIge1xuXG4gICAgICAgIC8vIE92ZXJyaWRlIGRlZmF1bHQgcG9wb3ZlciBzdHlsZXNcbiAgICAgICAgJi5wb3BvdmVyIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICBtYXgtd2lkdGg6IG5vbmU7XG5cbiAgICAgICAgICAgIC8vIExpbmtzXG4gICAgICAgICAgICAucG9wb3Zlci1jb250ZW50IGEge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgICAgICBtYXgtd2lkdGg6ICRwb3BvdmVyLW1heC13aWR0aDtcbiAgICAgICAgICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIHRleHQtdHJ1bmNhdGUoKTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLy8gQXJyb3dcbiAgICAgICAgICAgIC5hcnJvdyB7XG4gICAgICAgICAgICAgICAgbGVmdDogJGNhcmQtc3BhY2VyLXggIWltcG9ydGFudDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC8vIENvbnRlbnRcbiAgICAgICAgLnBvcG92ZXItY29udGVudCB7XG4gICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgICAgICAgICAgIHBhZGRpbmc6ICRwb3BvdmVyLWJvZHktcGFkZGluZy15IDAgMCAkcG9wb3Zlci1ib2R5LXBhZGRpbmcteTtcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICBmbGV4LXdyYXA6IHdyYXA7XG5cbiAgICAgICAgICAgID4gc3BhbiB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAkcG9wb3Zlci1ib2R5LXBhZGRpbmcteDtcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAkcG9wb3Zlci1ib2R5LXBhZGRpbmcteDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgPiAuYnRuLWdyb3VwIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6ICRwb3BvdmVyLWJvZHktcGFkZGluZy14O1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206ICRwb3BvdmVyLWJvZHktcGFkZGluZy14O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLy8gUmVtb3ZlIG1hcmdpbnMgZnJvbSBoZWFkaW5nc1xuICAgIC5ub3RlLXN0eWxlIHtcbiAgICAgICAgaDEsIGgyLCBoMywgaDQsIGg1LCBoNiwgYmxvY2txdW90ZSB7XG4gICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBIaW50XG4gICAgLm5vdGUtaGludC1wb3BvdmVyIHtcbiAgICAgICAgbWluLXdpZHRoOiAkZHJvcGRvd24tbWluLXdpZHRoO1xuICAgICAgICBwYWRkaW5nOiAkZHJvcGRvd24tcGFkZGluZy15IDA7XG5cbiAgICAgICAgLnBvcG92ZXItY29udGVudCB7XG4gICAgICAgICAgICBtYXgtaGVpZ2h0OiAxMHJlbTtcbiAgICAgICAgICAgIG92ZXJmbG93OiBhdXRvO1xuXG4gICAgICAgICAgICAubm90ZS1oaW50LWdyb3VwIHtcbiAgICAgICAgICAgICAgICAubm90ZS1oaW50LWl0ZW0ge1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jayFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6ICRkcm9wZG93bi1pdGVtLXBhZGRpbmcteSAkZHJvcGRvd24taXRlbS1wYWRkaW5nLXg7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkZHJvcGRvd24tbGluay1jb2xvcjtcbiAgICAgICAgICAgICAgICAgICAgY2xlYXI6IGJvdGg7XG5cbiAgICAgICAgICAgICAgICAgICAgLy8gSG92ZXIgc3RhdGVcbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgaG92ZXItZm9jdXMge1xuICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRkcm9wZG93bi1saW5rLWhvdmVyLWNvbG9yO1xuICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGRyb3Bkb3duLWxpbmstaG92ZXItYmc7XG4gICAgICAgICAgICAgICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAvLyBBY3RpdmUgc3RhdGVcbiAgICAgICAgICAgICAgICAgICAgJi5hY3RpdmUge1xuICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRkcm9wZG93bi1saW5rLWFjdGl2ZS1jb2xvcjtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRkcm9wZG93bi1saW5rLWFjdGl2ZS1iZztcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuXG4gICAgLy8gVG9vbGJhclxuICAgIC5jYXJkLWhlYWRlci5ub3RlLXRvb2xiYXIge1xuXG4gICAgICAgIC8vIENsb3Nlc3QgYnV0dG9uIGdyb3VwXG4gICAgICAgID4gLmJ0bi1ncm91cCB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAkY2FyZC1zcGFjZXIteTtcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogJGNhcmQtc3BhY2VyLXk7XG5cbiAgICAgICAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLy8gRHJvcGRvd24gbWVudVxuICAgICAgICAuZHJvcGRvd24tbWVudSB7XG5cbiAgICAgICAgICAgIC8vIExpbmtzXG4gICAgICAgICAgICAmLm5vdGUtY2hlY2sgYSB7XG4gICAgICAgICAgICAgICAgaSB7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgLy8gQWN0aXZlIHN0YXRlXG4gICAgICAgICAgICAgICAgJi5jaGVja2VkIHtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRkcm9wZG93bi1saW5rLWFjdGl2ZS1jb2xvcjtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGRyb3Bkb3duLWxpbmstYWN0aXZlLWJnO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC8vIENvbG9yIHBhbGV0dGVcbiAgICAgICAgLm5vdGUtY29sb3ItcGFsZXR0ZSB7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMTtcblxuICAgICAgICAgICAgZGl2IHtcbiAgICAgICAgICAgICAgICAubm90ZS1jb2xvci1idG4ge1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICRkcm9wZG93bi1iZztcbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgc2l6ZSgxLjI1cmVtKTtcblxuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBob3ZlciB7XG4gICAgICAgICAgICAgICAgICAgICAgICBib3JkZXItY29sb3I6ICRncmF5LTkwMDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8vIEFsbCBidXR0b24gZ3JvdXBzXG4gICAgLm5vdGUtcG9wb3ZlcixcbiAgICAubm90ZS10b29sYmFyIHtcbiAgICAgICAgLmJ0bi1ncm91cCB7XG4gICAgICAgICAgICAubm90ZS10YWJsZSB7XG4gICAgICAgICAgICAgICAgbWluLXdpZHRoOiAwO1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6ICRkcm9wZG93bi1wYWRkaW5nLXk7XG5cbiAgICAgICAgICAgICAgICAvLyBUYWJsZSBjZWxsIHBpY2tlclxuICAgICAgICAgICAgICAgIC5ub3RlLWRpbWVuc2lvbi1waWNrZXIge1xuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDEuMTI1cmVtO1xuXG4gICAgICAgICAgICAgICAgICAgIC5ub3RlLWRpbWVuc2lvbi1waWNrZXItbW91c2VjYXRjaGVyIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZSFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgICAgICAgICB6LWluZGV4OiAzO1xuICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEwZW07XG4gICAgICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDEwZW07XG4gICAgICAgICAgICAgICAgICAgICAgICBjdXJzb3I6IHBvaW50ZXJcbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgIC5ub3RlLWRpbWVuc2lvbi1waWNrZXItdW5oaWdobGlnaHRlZCB7XG4gICAgICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmUhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgICAgICAgICAgei1pbmRleDogMTtcbiAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiA1ZW07XG4gICAgICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDVlbTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IHVybCgnZGF0YTppbWFnZS9wbmc7YmFzZTY0LGlWQk9SdzBLR2dvQUFBQU5TVWhFVWdBQUFCSUFBQUFTQWdNQUFBQXJvR2JFQUFBQUNWQk1WRVVBQUlqNCtQanA2ZWtLbEFxakFBQUFBWFJTVGxNQVFPYllaZ0FBQUFGaVMwZEVBSWdGSFVnQUFBQUpjRWhaY3dBQUN4TUFBQXNUQVFDYW5CZ0FBQUFIZEVsTlJRZllBUjBCS2htbmFKelBBQUFBRzBsRVFWUUkxMk5nQUFPdFZhdFdNVENvaG9hR1VZK0VtSWtFQUVydUV6SzJKN3R2QUFBQUFFbEZUa1N1UW1DQycpIHJlcGVhdDtcbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgIC5ub3RlLWRpbWVuc2lvbi1waWNrZXItaGlnaGxpZ2h0ZWQge1xuICAgICAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICAgICAgICAgIHotaW5kZXg6IDI7XG4gICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogMWVtO1xuICAgICAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAxZW07XG4gICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoJ2RhdGE6aW1hZ2UvcG5nO2Jhc2U2NCxpVkJPUncwS0dnb0FBQUFOU1VoRVVnQUFBQklBQUFBU0FnTUFBQUFyb0diRUFBQUFDVkJNVkVVQUFJamQ2dnZEMmY5TEtMVytBQUFBQVhSU1RsTUFRT2JZWmdBQUFBRmlTMGRFQUlnRkhVZ0FBQUFKY0VoWmN3QUFDeE1BQUFzVEFRQ2FuQmdBQUFBSGRFbE5SUWZZQVIwQkt3TkRFVlQwQUFBQUcwbEVRVlFJMTJOZ0FBT3RWYXRXTVRDb2hvYUdVWStFbUlrRUFFcnVFeksySjd0dkFBQUFBRWxGVGtTdVFtQ0MnKSByZXBlYXQ7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAvLyBTZWxlY3RlZCBjZWxscyBjYWxsYmFjayBsYWJlbFxuICAgICAgICAgICAgICAgIC5ub3RlLWRpbWVuc2lvbi1kaXNwbGF5IHtcbiAgICAgICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAkZHJvcGRvd24tcGFkZGluZy15O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8vIENvbG9yc1xuICAgIC5ub3RlLWNvbG9yIHtcblxuICAgICAgICAvLyBSb3dcbiAgICAgICAgLm5vdGUtY29sb3Itcm93IHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMDtcbiAgICAgICAgfVxuXG4gICAgICAgIC8vIERyb3Bkb3duIG1lbnVcbiAgICAgICAgLmRyb3Bkb3duLW1lbnUge1xuXG4gICAgICAgICAgICAvLyBNYWtlIHN1cmUgMiBwYWxldHRlcyBmaXQgaW4gMSByb3dcbiAgICAgICAgICAgICYuc2hvdyB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLy8gQ29sb3IgcGFsZXR0ZVxuICAgICAgICAgICAgLm5vdGUtcGFsZXR0ZSB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgICAgIHdpZHRoOiAoMS4yNXJlbSAqIDgpO1xuICAgICAgICAgICAgICAgIG1hcmdpbjogJGJ0bi1wYWRkaW5nLXkgJGJ0bi1wYWRkaW5nLXg7XG5cbiAgICAgICAgICAgICAgICAvLyBUaXRsZVxuICAgICAgICAgICAgICAgIC5ub3RlLXBhbGV0dGUtdGl0bGUge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAoJHNwYWNlciAvIDIpO1xuICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LXNlbWlib2xkO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIC8vIFJlc2V0XG4gICAgICAgICAgICAgICAgLm5vdGUtY29sb3ItcmVzZXQge1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogJGJ0bi1wYWRkaW5nLXktc20gJGJ0bi1wYWRkaW5nLXgtc207XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206ICRidG4tcGFkZGluZy14O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8vIFBhcmFncmFwaHNcbiAgICAubm90ZS1wYXJhIHtcblxuICAgICAgICAvLyBEcm9wZG93biBtZW51XG4gICAgICAgIC5kcm9wZG93bi1tZW51IHtcbiAgICAgICAgICAgIHBhZGRpbmc6ICRkcm9wZG93bi1pdGVtLXBhZGRpbmcteTtcbiAgICAgICAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG5cbiAgICAgICAgICAgID4gZGl2OmZpcnN0LWNoaWxkIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6ICRlbGVtZW50LXNwYWNlci14O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLy8gSW1hZ2UgcmVzaXplIGhhbmRsZVxuICAgIC5ub3RlLWhhbmRsZSB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICAgICAvLyBTZWxlY3Rpb25cbiAgICAgICAgLm5vdGUtY29udHJvbC1zZWxlY3Rpb24ge1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgIGJvcmRlcjogJGJvcmRlci13aWR0aCBzb2xpZCAkZ3JheS05MDA7XG4gICAgICAgICAgICB6LWluZGV4OiAxMDtcblxuICAgICAgICAgICAgPiBkaXYge1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLy8gQmFja2dyb3VuZFxuICAgICAgICAgICAgLm5vdGUtY29udHJvbC1zZWxlY3Rpb24tYmcge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRncmF5LTkwMDtcbiAgICAgICAgICAgICAgICBvcGFjaXR5OiAwLjM7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgc2l6ZSgxMDAlKTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLy8gQ29udHJvbCBoYW5kbGVcbiAgICAgICAgICAgIC5ub3RlLWNvbnRyb2wtaGFuZGxlLFxuICAgICAgICAgICAgLm5vdGUtY29udHJvbC1ob2xkZXIsXG4gICAgICAgICAgICAubm90ZS1jb250cm9sLXNpemluZyB7XG4gICAgICAgICAgICAgICAgYm9yZGVyOiAkYm9yZGVyLXdpZHRoIHNvbGlkICRncmF5LTkwMDtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBzaXplKDAuNXJlbSk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAubm90ZS1jb250cm9sLXNpemluZyB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAvLyBDb250cm9sIGRpcmVjdGlvblxuICAgICAgICAgICAgLm5vdGUtY29udHJvbC1udyB7XG4gICAgICAgICAgICAgICAgdG9wOiByZW0tY2FsYygtMC4zMTI1cmVtKTtcbiAgICAgICAgICAgICAgICBsZWZ0OiByZW0tY2FsYygtMC4zMTI1cmVtKTtcbiAgICAgICAgICAgICAgICBib3JkZXItcmlnaHQ6IDA7XG4gICAgICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogMDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC5ub3RlLWNvbnRyb2wtbmUge1xuICAgICAgICAgICAgICAgIHRvcDogcmVtLWNhbGMoLTAuMzEyNXJlbSk7XG4gICAgICAgICAgICAgICAgcmlnaHQ6IHJlbS1jYWxjKC0wLjMxMjVyZW0pO1xuICAgICAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDA7XG4gICAgICAgICAgICAgICAgYm9yZGVyLWxlZnQ6IDA7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAubm90ZS1jb250cm9sLXN3IHtcbiAgICAgICAgICAgICAgICBib3R0b206IHJlbS1jYWxjKC0wLjMxMjVyZW0pO1xuICAgICAgICAgICAgICAgIGxlZnQ6IHJlbS1jYWxjKC0wLjMxMjVyZW0pO1xuICAgICAgICAgICAgICAgIGJvcmRlci10b3A6IDA7XG4gICAgICAgICAgICAgICAgYm9yZGVyLXJpZ2h0OiAwO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLm5vdGUtY29udHJvbC1zZSB7XG4gICAgICAgICAgICAgICAgcmlnaHQ6IHJlbS1jYWxjKC0wLjMxMjVyZW0pO1xuICAgICAgICAgICAgICAgIGJvdHRvbTogcmVtLWNhbGMoLTAuMzEyNXJlbSk7XG4gICAgICAgICAgICAgICAgY3Vyc29yOiBzZS1yZXNpemU7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC8vIFNlbGVjdGlvbiBpbmZvXG4gICAgICAgICAgICAubm90ZS1jb250cm9sLXNlbGVjdGlvbi1pbmZvIHtcbiAgICAgICAgICAgICAgICByaWdodDogMDtcbiAgICAgICAgICAgICAgICBib3R0b206IDA7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogMC4zMTI1cmVtO1xuICAgICAgICAgICAgICAgIG1hcmdpbjogMC4zMTI1cmVtO1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGdyYXktOTAwO1xuICAgICAgICAgICAgICAgIG9wYWNpdHk6IDAuNztcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRib3JkZXItcmFkaXVzKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cbiIsIi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuKlxuKiAgIyBUcnVtYm93eWcgZWRpdG9yXG4qXG4qICBTdHlsZXMgZm9yIHRydW1ib3d5Zy5taW4uanMgLSBhIGxpZ2h0d2VpZ2h0IFdZU0lXWUcgZWRpdG9yXG4qXG4qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cblxuLy8gQ2hlY2sgaWYgY29tcG9uZW50IGlzIGVuYWJsZWRcbkBpZiAkZW5hYmxlLXRydW1ib3d5ZyB7XG5cblxuICAgIC8vXG4gICAgLy8gQmFzZVxuICAgIC8vXG5cbiAgICAvLyBJY29uc1xuICAgICN0cnVtYm93eWctaWNvbnMge1xuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgICAgIGhlaWdodDogMDtcbiAgICAgICAgd2lkdGg6IDA7XG5cbiAgICAgICAgc3ZnIHtcbiAgICAgICAgICAgIGhlaWdodDogMDtcbiAgICAgICAgICAgIHdpZHRoOiAwO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLy8gQ29udGFpbmVyXG4gICAgLnRydW1ib3d5Zy1ib3gge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIGJvcmRlcjogJHRydW1ib3d5Zy1ib3JkZXItd2lkdGggc29saWQgJHRydW1ib3d5Zy1ib3JkZXItY29sb3I7XG4gICAgICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGJvcmRlci1yYWRpdXMpO1xuXG4gICAgICAgIC8vIFNWRyBpY29uc1xuICAgICAgICBzdmcge1xuICAgICAgICAgICAgZmlsbDogJHRydW1ib3d5Zy10b29sYmFyLWNvbG9yO1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICBtYXJnaW46ICgoJGxpbmUtaGVpZ2h0LWNvbXB1dGVkIC0gJGljb24tZm9udC1zaXplKSAvIDIpIDA7XG4gICAgICAgICAgICBAaW5jbHVkZSBzaXplKCRpY29uLWZvbnQtc2l6ZSk7XG4gICAgICAgIH1cblxuICAgICAgICAvLyBGdWxsc2NyZWVuIG1vZGVcbiAgICAgICAgJi50cnVtYm93eWctZnVsbHNjcmVlbiB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAkY2FyZC1iZztcbiAgICAgICAgICAgIGJvcmRlci13aWR0aDogMDtcbiAgICAgICAgfVxuICAgIH1cblxuXG4gICAgLy9cbiAgICAvLyBDb250ZW50IGFyZWFcbiAgICAvL1xuXG4gICAgLy8gRWRpdG9yXG4gICAgLnRydW1ib3d5Zy1lZGl0b3Ige1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAgICAgLy8gUGxhY2Vob2xkZXJcbiAgICAgICAgJltjb250ZW50ZWRpdGFibGU9dHJ1ZV06ZW1wdHk6bm90KDpmb2N1cyk6OmJlZm9yZSB7XG4gICAgICAgICAgICBjb250ZW50OiBhdHRyKHBsYWNlaG9sZGVyKTtcbiAgICAgICAgICAgIGNvbG9yOiAkZ3JheS02MDA7XG4gICAgICAgICAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8vIENvbW1vbiBzdHlsZXNcbiAgICAudHJ1bWJvd3lnLWVkaXRvcixcbiAgICAudHJ1bWJvd3lnLXRleHRhcmVhIHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBwYWRkaW5nOiAkY2FyZC1zcGFjZXIteDtcbiAgICAgICAgbWluLWhlaWdodDogJHRydW1ib3d5Zy1taW4taGVpZ2h0O1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY2FyZC1iZztcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGJvcmRlci1zdHlsZTogbm9uZTtcbiAgICAgICAgcmVzaXplOiBub25lO1xuICAgICAgICBvdXRsaW5lOiBub25lO1xuICAgICAgICBvdmVyZmxvdzogYXV0bztcblxuICAgICAgICAvLyBBdXRvZ3JvdyBvbiBFbnRlciBwcmVzc1xuICAgICAgICAmLnRydW1ib3d5Zy1hdXRvZ3Jvdy1vbi1lbnRlciB7XG4gICAgICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKGhlaWdodCBlYXNlLWluLW91dCAoJGNvbXBvbmVudC10cmFuc2l0aW9uLXRpbWVyICogMikpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLy8gQmx1clxuICAgIC50cnVtYm93eWctYm94LWJsdXIge1xuICAgICAgICAudHJ1bWJvd3lnLWVkaXRvciB7XG4gICAgICAgICAgICBpbWcsXG4gICAgICAgICAgICBociB7XG4gICAgICAgICAgICAgICAgb3BhY2l0eTogMC4yO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLy8gVGV4dGFyZWFcbiAgICAudHJ1bWJvd3lnLXRleHRhcmVhIHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgb3ZlcmZsb3c6IGF1dG87XG4gICAgICAgIGJvcmRlcjogMDtcbiAgICAgICAgd2hpdGUtc3BhY2U6IG5vcm1hbDtcbiAgICB9XG5cblxuICAgIC8vXG4gICAgLy8gU3RhdGVzXG4gICAgLy9cblxuICAgIC50cnVtYm93eWctYm94IHtcblxuICAgICAgICAvLyBWaXNpYmxlXG4gICAgICAgICYudHJ1bWJvd3lnLWVkaXRvci12aXNpYmxlIHtcblxuICAgICAgICAgICAgLy8gSGlkZSB0ZXh0YXJlYVxuICAgICAgICAgICAgLnRydW1ib3d5Zy10ZXh0YXJlYSB7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAxcHggIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICB3aWR0aDogMjUlO1xuICAgICAgICAgICAgICAgIG1pbi1oZWlnaHQ6IDAgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICAgICAgICAgICAgICBvcGFjaXR5OiAwICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAvLyBIaWRkZW5cbiAgICAgICAgJi50cnVtYm93eWctZWRpdG9yLWhpZGRlbiB7XG5cbiAgICAgICAgICAgIC8vIFNob3cgdGV4dGFyZWFcbiAgICAgICAgICAgIC50cnVtYm93eWctdGV4dGFyZWEge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAvLyBBbmQgaGlkZSBlZGl0b3JcbiAgICAgICAgICAgIC50cnVtYm93eWctZWRpdG9yIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLy8gRGlzYWJsZWRcbiAgICAgICAgJi50cnVtYm93eWctZGlzYWJsZWQge1xuICAgICAgICAgICAgLnRydW1ib3d5Zy10ZXh0YXJlYSB7XG4gICAgICAgICAgICAgICAgb3BhY2l0eTogMC44O1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG5cbiAgICAvL1xuICAgIC8vIFRvb2xiYXJcbiAgICAvL1xuXG4gICAgLnRydW1ib3d5Zy1idXR0b24tcGFuZSB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdHJ1bWJvd3lnLXRvb2xiYXItYmc7XG4gICAgICAgIGJvcmRlci1ib3R0b206ICR0cnVtYm93eWctdG9vbGJhci1ib3JkZXItd2lkdGggc29saWQgJHRydW1ib3d5Zy10b29sYmFyLWJvcmRlci1jb2xvcjtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgICAgIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICAgICAgei1pbmRleDogMTE7XG4gICAgICAgIEBpbmNsdWRlIGJvcmRlci10b3AtcmFkaXVzKCRib3JkZXItcmFkaXVzKTtcblxuICAgICAgICAvLyBCdXR0b24gZ3JvdXBcbiAgICAgICAgLnRydW1ib3d5Zy1idXR0b24tZ3JvdXAge1xuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgICAgICAgICAvLyBGdWxsc2NyZWVuIGJ1dHRvblxuICAgICAgICAgICAgLnRydW1ib3d5Zy1mdWxsc2NyZWVuLWJ1dHRvbiB7XG4gICAgICAgICAgICAgICAgc3ZnIHtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLy8gRGl2aWRlclxuICAgICAgICAgICAgJjpub3QoOmVtcHR5KSArIC50cnVtYm93eWctYnV0dG9uLWdyb3VwIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6ICR0cnVtYm93eWctdG9vbGJhci1kaXZpZGVyLXdpZHRoO1xuXG4gICAgICAgICAgICAgICAgLy8gTGluZVxuICAgICAgICAgICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICAgICAgY29udGVudDogXCIgXCI7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6ICR0cnVtYm93eWctdG9vbGJhci1kaXZpZGVyLXdpZHRoO1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBsaWdodGVuKCR0cnVtYm93eWctdG9vbGJhci1ib3JkZXItY29sb3IsIDUlKTtcbiAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgICAgICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC8vIEFkZCByb3VuZGVkIGNvcm5lciB0byBmaXJzdCBhbmQgbGFzdCBidXR0b25zXG4gICAgICAgICAgICAudHJ1bWJvd3lnLWJveDpub3QoLnRydW1ib3d5Zy1mdWxsc2NyZWVuKSAmOmZpcnN0LWNoaWxkIGJ1dHRvbiB7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkYm9yZGVyLXJhZGl1cyAtIHJlbS1jYWxjKCRjYXJkLWJvcmRlci13aWR0aCkgMCAwIDApO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLnRydW1ib3d5Zy1ib3g6bm90KC50cnVtYm93eWctZnVsbHNjcmVlbikgJjpsYXN0LWNoaWxkIGJ1dHRvbiB7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygwICRib3JkZXItcmFkaXVzIC0gcmVtLWNhbGMoJGNhcmQtYm9yZGVyLXdpZHRoKSAwIDApO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLy8gQnV0dG9uc1xuICAgICAgICBidXR0b24ge1xuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgcGFkZGluZzogJGJ0bi1wYWRkaW5nLXg7XG4gICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgICAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbihiYWNrZ3JvdW5kLWNvbG9yIGVhc2UtaW4tb3V0ICRjb21wb25lbnQtdHJhbnNpdGlvbi10aW1lciwgb3BhY2l0eSBlYXNlLWluLW91dCAkY29tcG9uZW50LXRyYW5zaXRpb24tdGltZXIpO1xuXG4gICAgICAgICAgICAvLyBUZXh0IGJ1dHRvblxuICAgICAgICAgICAgJi50cnVtYm93eWctdGV4dHVhbC1idXR0b24ge1xuICAgICAgICAgICAgICAgIHVzZXItc2VsZWN0OiBub25lO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAvLyBIb3ZlciBhbmQgYWN0aXZlIHN0YXRlc1xuICAgICAgICAgICAgJjpub3QoLnRydW1ib3d5Zy1kaXNhYmxlKTpob3ZlcixcbiAgICAgICAgICAgICY6bm90KC50cnVtYm93eWctZGlzYWJsZSk6Zm9jdXMsXG4gICAgICAgICAgICAmLnRydW1ib3d5Zy1hY3RpdmUge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR0cnVtYm93eWctdG9vbGJhci1ob3Zlci1iZztcbiAgICAgICAgICAgICAgICBvdXRsaW5lOiAwO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLy8gRGlzYWJsZWQgc3RhdGVcbiAgICAgICAgJi50cnVtYm93eWctZGlzYWJsZSxcbiAgICAgICAgLnRydW1ib3d5Zy1kaXNhYmxlZCAmIHtcblxuICAgICAgICAgICAgLy8gQnV0dG9uXG4gICAgICAgICAgICBidXR0b246bm90KC50cnVtYm93eWctbm90LWRpc2FibGUpIHtcbiAgICAgICAgICAgICAgICAmOm5vdCgudHJ1bWJvd3lnLWFjdGl2ZSksXG4gICAgICAgICAgICAgICAgJjpub3QoLnRydW1ib3d5Zy12aWV3SFRNTC1idXR0b24pIHtcbiAgICAgICAgICAgICAgICAgICAgb3BhY2l0eTogMC4yO1xuICAgICAgICAgICAgICAgICAgICBjdXJzb3I6IGRlZmF1bHQ7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLy8gRHJvcGRvd24gdG9nZ2xlc1xuICAgICAgICAudHJ1bWJvd3lnLW9wZW4tZHJvcGRvd24ge1xuICAgICAgICAgICAgcGFkZGluZy1yaWdodDogKCRidG4tcGFkZGluZy14ICogMik7XG5cbiAgICAgICAgICAgIC8vIENhcmV0XG4gICAgICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgICAgICBjb250ZW50OiBcIiBcIjtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgdG9wOiA1MCU7XG4gICAgICAgICAgICAgICAgcmlnaHQ6ICRidG4tcGFkZGluZy14O1xuICAgICAgICAgICAgICAgIGhlaWdodDogMDtcbiAgICAgICAgICAgICAgICB3aWR0aDogMDtcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAtKCRjYXJldC13aWR0aCAvIDIpO1xuICAgICAgICAgICAgICAgIGJvcmRlcjogJGNhcmV0LXdpZHRoIHNvbGlkIHRyYW5zcGFyZW50O1xuICAgICAgICAgICAgICAgIGJvcmRlci10b3AtY29sb3I6ICR0cnVtYm93eWctdG9vbGJhci1jb2xvcjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC8vIFJpZ2h0IGFsaWduZWRcbiAgICAgICAgLnRydW1ib3d5Zy1yaWdodCB7XG4gICAgICAgICAgICBmbG9hdDogcmlnaHQ7XG4gICAgICAgIH1cbiAgICB9XG5cblxuICAgIC8vXG4gICAgLy8gVG9vbGJhciBkcm9wZG93bnNcbiAgICAvL1xuXG4gICAgLnRydW1ib3d5Zy1kcm9wZG93biB7XG4gICAgICAgIG1pbi13aWR0aDogJGRyb3Bkb3duLW1pbi13aWR0aDtcbiAgICAgICAgcGFkZGluZzogJGRyb3Bkb3duLXBhZGRpbmcteSAwO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZHJvcGRvd24tYmc7XG4gICAgICAgIGJvcmRlcjogJGRyb3Bkb3duLWJvcmRlci13aWR0aCBzb2xpZCAkZHJvcGRvd24tYm9yZGVyLWNvbG9yO1xuICAgICAgICBib3JkZXItdG9wOiAwO1xuICAgICAgICBtYXJnaW4tdG9wOiAkdHJ1bWJvd3lnLXRvb2xiYXItYm9yZGVyLXdpZHRoO1xuICAgICAgICBtYXJnaW4tbGVmdDogLSgkZHJvcGRvd24tYm9yZGVyLXdpZHRoKTtcbiAgICAgICAgei1pbmRleDogJHppbmRleC1kcm9wZG93bjtcbiAgICAgICAgQGluY2x1ZGUgYm94LXNoYWRvdygkZHJvcGRvd24tYm94LXNoYWRvdyk7XG4gICAgICAgIEBpbmNsdWRlIGJvcmRlci1ib3R0b20tcmFkaXVzKCRib3JkZXItcmFkaXVzKTtcblxuICAgICAgICAvLyBEcm9wZG93biBpdGVtXG4gICAgICAgIGJ1dHRvbiB7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgcGFkZGluZzogJGRyb3Bkb3duLWl0ZW0tcGFkZGluZy15ICRkcm9wZG93bi1pdGVtLXBhZGRpbmcteDtcbiAgICAgICAgICAgIGNvbG9yOiAkZHJvcGRvd24tbGluay1jb2xvcjtcbiAgICAgICAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiBub25lO1xuICAgICAgICAgICAgYm9yZGVyOiAwO1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogaW5oZXJpdDtcbiAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oYmFja2dyb3VuZC1jb2xvciBlYXNlLWluLW91dCAkY29tcG9uZW50LXRyYW5zaXRpb24tdGltZXIsIGNvbG9yIGVhc2UtaW4tb3V0ICRjb21wb25lbnQtdHJhbnNpdGlvbi10aW1lcik7XG5cbiAgICAgICAgICAgIC8vIEhvdmVyIHN0YXRlXG4gICAgICAgICAgICBAaW5jbHVkZSBob3Zlci1mb2N1cyB7XG4gICAgICAgICAgICAgICAgY29sb3I6ICRkcm9wZG93bi1saW5rLWhvdmVyLWNvbG9yO1xuICAgICAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZHJvcGRvd24tbGluay1ob3Zlci1iZztcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLy8gSWNvblxuICAgICAgICAgICAgc3ZnIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6ICRkcm9wZG93bi1pdGVtLXBhZGRpbmcteDtcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAoKCRmb250LXNpemUtYmFzZSAtICRpY29uLWZvbnQtc2l6ZSkgLyAyKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuXG4gICAgLy9cbiAgICAvLyBNb2RhbCBib3hcbiAgICAvL1xuXG4gICAgLy8gQ29udGFpbmVyXG4gICAgLnRydW1ib3d5Zy1tb2RhbCB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICBsZWZ0OiA1MCU7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcbiAgICAgICAgbWF4LXdpZHRoOiAzM3JlbTtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIHotaW5kZXg6IDExO1xuICAgICAgICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgfVxuXG4gICAgLy8gQm94XG4gICAgLnRydW1ib3d5Zy1tb2RhbC1ib3gge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgbGVmdDogNTAlO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XG4gICAgICAgIG1heC13aWR0aDogMzByZW07XG4gICAgICAgIHdpZHRoOiBjYWxjKDEwMCUgLSAzcmVtKTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJG1vZGFsLWNvbnRlbnQtYmc7XG4gICAgICAgIGJvcmRlcjogJGRyb3Bkb3duLWJvcmRlci13aWR0aCBzb2xpZCAkZHJvcGRvd24tYm9yZGVyLWNvbG9yO1xuICAgICAgICB6LWluZGV4OiAxO1xuICAgICAgICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgICAgIEBpbmNsdWRlIGJvcmRlci1ib3R0b20tcmFkaXVzKCRib3JkZXItcmFkaXVzKTtcbiAgICAgICAgQGluY2x1ZGUgYm94LXNoYWRvdygkZHJvcGRvd24tYm94LXNoYWRvdyk7XG5cbiAgICAgICAgLy8gVGl0bGVcbiAgICAgICAgLnRydW1ib3d5Zy1tb2RhbC10aXRsZSB7XG4gICAgICAgICAgICBmb250LXNpemU6ICRoNi1mb250LXNpemU7XG4gICAgICAgICAgICBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LXNlbWlib2xkO1xuICAgICAgICAgICAgcGFkZGluZzogJG1vZGFsLWhlYWRlci1wYWRkaW5nO1xuICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDA7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgfVxuXG4gICAgICAgIC8vIFByb2dyZXNzXG4gICAgICAgIC50cnVtYm93eWctcHJvZ3Jlc3Mge1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBoZWlnaHQ6IDAuMTg3NXJlbTtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIHRvcDogJHRydW1ib3d5Zy10b29sYmFyLWhlaWdodDtcblxuICAgICAgICAgICAgLnRydW1ib3d5Zy1wcm9ncmVzcy1iYXIge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1zdWNjZXNzLTUwMDtcbiAgICAgICAgICAgICAgICB3aWR0aDogMDtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbih3aWR0aCBsaW5lYXIgJGNvbXBvbmVudC10cmFuc2l0aW9uLXRpbWVyKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC8vIEZvcm0gZWxlbWVudHNcbiAgICAgICAgZm9ybSB7XG4gICAgICAgICAgICBwYWRkaW5nOiAkbW9kYWwtaW5uZXItcGFkZGluZztcbiAgICAgICAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuXG4gICAgICAgICAgICAvLyBGb3JtIHJvd3NcbiAgICAgICAgICAgID4gbGFiZWwge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAkZm9ybS1ncm91cC1tYXJnaW4tYm90dG9tO1xuXG4gICAgICAgICAgICAgICAgLy8gVGV4dFxuICAgICAgICAgICAgICAgIC50cnVtYm93eWctaW5wdXQtaW5mb3Mge1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbihhbGwgZWFzZS1pbi1vdXQgJGNvbXBvbmVudC10cmFuc2l0aW9uLXRpbWVyKTtcblxuICAgICAgICAgICAgICAgICAgICBzcGFuIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZy10b3A6ICRpbnB1dC1wYWRkaW5nLXkgKyByZW0tY2FsYygkaW5wdXQtYm9yZGVyLXdpZHRoKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAkaW5wdXQtcGFkZGluZy15ICsgcmVtLWNhbGMoJGlucHV0LWJvcmRlci13aWR0aCk7XG4gICAgICAgICAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogJGlucHV0LWJ0bi1saW5lLWhlaWdodDtcblxuICAgICAgICAgICAgICAgICAgICAgICAgJi50cnVtYm93eWctbXNnLWVycm9yIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogdGhlbWUtY29sb3IoJ2RhbmdlcicpO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAzMCU7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDA7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAvLyBJbnB1dCBmaWVsZFxuICAgICAgICAgICAgICAgIGlucHV0IHtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogJGlucHV0LXBhZGRpbmcteSAkaW5wdXQtcGFkZGluZy14O1xuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6ICRmb250LXNpemUtYmFzZTtcbiAgICAgICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6ICRpbnB1dC1idG4tbGluZS1oZWlnaHQ7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkaW5wdXQtY29sb3I7XG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRpbnB1dC1iZztcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyOiAkaW5wdXQtYm9yZGVyLXdpZHRoIHNvbGlkICRpbnB1dC1ib3JkZXItY29sb3I7XG4gICAgICAgICAgICAgICAgICAgIGZsb2F0OiByaWdodDtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDcwJTtcbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkaW5wdXQtYm9yZGVyLXJhZGl1cyk7XG5cbiAgICAgICAgICAgICAgICAgICAgLy8gUmVtb3ZlIG91dGxpbmVcbiAgICAgICAgICAgICAgICAgICAgJjpmb2N1cyB7XG4gICAgICAgICAgICAgICAgICAgICAgICBvdXRsaW5lOiAwO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgLy8gRXJyb3JcbiAgICAgICAgICAgICAgICAmLnRydW1ib3d5Zy1pbnB1dC1lcnJvciB7XG4gICAgICAgICAgICAgICAgICAgIGlucHV0LFxuICAgICAgICAgICAgICAgICAgICB0ZXh0YXJlYSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBib3JkZXItY29sb3I6IHRoZW1lLWNvbG9yKCdkYW5nZXInKTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC8vIEVycm9yIG1lc3NhZ2VcbiAgICAgICAgLmVycm9yIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgY29sb3I6IHRoZW1lLWNvbG9yKCdkYW5nZXInKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8vIEJ1dHRvbnNcbiAgICAudHJ1bWJvd3lnLW1vZGFsLWJ1dHRvbiB7XG4gICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0aGVtZS1jb2xvcihcImRhcmtcIik7XG4gICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICBtYXJnaW4tbGVmdDogJGVsZW1lbnQtc3BhY2VyLXg7XG4gICAgICAgIGJvcmRlcjogJGJ0bi1ib3JkZXItd2lkdGggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgICAgIEBpbmNsdWRlIGJ1dHRvbi1zaXplKCRidG4tcGFkZGluZy15LCAkYnRuLXBhZGRpbmcteCwgJGZvbnQtc2l6ZS1iYXNlLCAkYnRuLWxpbmUtaGVpZ2h0LCAkYnRuLWJvcmRlci1yYWRpdXMpO1xuICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKCRidG4tdHJhbnNpdGlvbik7XG5cbiAgICAgICAgLy8gU3VibWl0IGJ1dHRvblxuICAgICAgICAmLnRydW1ib3d5Zy1tb2RhbC1zdWJtaXQge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLXN1Y2Nlc3MtNDAwO1xuXG4gICAgICAgICAgICBAaW5jbHVkZSBob3Zlci1mb2N1cyB7XG4gICAgICAgICAgICAgICAgb3V0bGluZTogMDtcbiAgICAgICAgICAgICAgICBib3gtc2hhZG93OiAkYnRuLWRhcmstaG92ZXItYm94LXNoYWRvdztcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC8vIFJlc2V0IGJ1dHRvblxuICAgICAgICAmLnRydW1ib3d5Zy1tb2RhbC1yZXNldCB7XG4gICAgICAgICAgICBjb2xvcjogJGJ0bi1saWdodC1jb2xvcjtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRidG4tbGlnaHQtYmc7XG4gICAgICAgICAgICBib3JkZXItY29sb3I6ICRidG4tbGlnaHQtYm9yZGVyLWNvbG9yO1xuXG4gICAgICAgICAgICBAaW5jbHVkZSBob3Zlci1mb2N1cyB7XG4gICAgICAgICAgICAgICAgb3V0bGluZTogMDtcbiAgICAgICAgICAgICAgICBjb2xvcjogJGJ0bi1saWdodC1ob3Zlci1jb2xvcjtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYnRuLWxpZ2h0LWhvdmVyLWJnO1xuICAgICAgICAgICAgICAgIGJvcmRlci1jb2xvcjogJGJ0bi1saWdodC1ob3Zlci1ib3JkZXItY29sb3I7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBEaWFsb2cgb3ZlcmxheVxuICAgIC50cnVtYm93eWctb3ZlcmxheSB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgkd2hpdGUsICRtb2RhbC1iYWNrZHJvcC1vcGFjaXR5KTtcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICB6LWluZGV4OiAxMDtcbiAgICB9XG5cblxuICAgIC8vXG4gICAgLy8gRnVsbHNjcmVlbiBtb2RlXG4gICAgLy9cblxuICAgIC8vIERpc2FibGUgc2Nyb2xsYmFyIGluIGJvZHlcbiAgICBib2R5LnRydW1ib3d5Zy1ib2R5LWZ1bGxzY3JlZW4ge1xuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIH1cblxuICAgIC8vIEJhc2VcbiAgICAudHJ1bWJvd3lnLWZ1bGxzY3JlZW4ge1xuICAgICAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICB6LWluZGV4OiA5OTk5OTtcblxuICAgICAgICAvLyBSZW1vdmUgYm9yZGVyc1xuICAgICAgICAmLnRydW1ib3d5Zy1ib3gsXG4gICAgICAgIC50cnVtYm93eWctZWRpdG9yIHtcbiAgICAgICAgICAgIGJvcmRlcjogMDtcbiAgICAgICAgICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoMCk7XG4gICAgICAgIH1cblxuICAgICAgICAvLyBFbGVtZW50cyBoZWlnaHRcbiAgICAgICAgLnRydW1ib3d5Zy1lZGl0b3IsXG4gICAgICAgIC50cnVtYm93eWctdGV4dGFyZWEge1xuICAgICAgICAgICAgaGVpZ2h0OiBjYWxjKDEwMCUgLSAjeyR0cnVtYm93eWctdG9vbGJhci1oZWlnaHR9KSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgb3ZlcmZsb3c6IGF1dG87XG4gICAgICAgIH1cbiAgICAgICAgLnRydW1ib3d5Zy1vdmVybGF5IHtcbiAgICAgICAgICAgIGhlaWdodDogMTAwJSAhaW1wb3J0YW50O1xuICAgICAgICB9XG5cbiAgICAgICAgLy8gQWN0aXZlIGZ1bGxzY3JlZW4gYnV0dG9uIHN0YXRlXG4gICAgICAgIC50cnVtYm93eWctYnV0dG9uLWdyb3VwIC50cnVtYm93eWctZnVsbHNjcmVlbi1idXR0b24gc3ZnIHtcbiAgICAgICAgICAgIGNvbG9yOiAkZ3JheS05MDA7XG4gICAgICAgICAgICBmaWxsOiB0cmFuc3BhcmVudDtcbiAgICAgICAgfVxuICAgIH1cblxuXG4gICAgLy9cbiAgICAvLyBDb2xvcnNcbiAgICAvL1xuXG4gICAgLnRydW1ib3d5Zy1kcm9wZG93bi1mb3JlQ29sb3IsXG4gICAgLnRydW1ib3d5Zy1kcm9wZG93bi1iYWNrQ29sb3Ige1xuICAgICAgICBwYWRkaW5nOiAkZHJvcGRvd24tcGFkZGluZy15O1xuICAgICAgICB3aWR0aDogKDEyICogMS4yNXJlbSk7IC8vIDEyIGl0ZW1zIHBlciByb3dcblxuICAgICAgICAvLyBIaWRlIGljb25zXG4gICAgICAgIHN2ZyB7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cblxuICAgICAgICAvLyBCdXR0b25cbiAgICAgICAgYnV0dG9uIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgICAgICB0ZXh0LWluZGVudDogLTk5OTlweDtcbiAgICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICR3aGl0ZTtcbiAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICAgICBAaW5jbHVkZSBzaXplKDEuMjVyZW0pO1xuICAgICAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbih0cmFuc2Zvcm0gZWFzZS1pbi1vdXQgJGNvbXBvbmVudC10cmFuc2l0aW9uLXRpbWVyKTtcblxuICAgICAgICAgICAgQGluY2x1ZGUgaG92ZXItZm9jdXMge1xuICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMS4yNSk7XG4gICAgICAgICAgICAgICAgei1pbmRleDogMTA7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG4iLCIvKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbipcbiogICMgQWNlIGNvZGUgZWRpdG9yXG4qXG4qICBTdHlsZXMgQWNlIC0gYW4gZW1iZWRkYWJsZSBjb2RlIGVkaXRvciB3cml0dGVuIGluIEphdmFTY3JpcHRcbipcbiogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuXG4vLyBDaGVjayBpZiBjb21wb25lbnQgaXMgZW5hYmxlZFxuQGlmICRlbmFibGUtYWNlIHtcblxuXHQvLyBCYXNlXG5cdC5hY2VfZWRpdG9yIHtcblx0XHRoZWlnaHQ6ICRhY2UtaGVpZ2h0O1xuXHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0fVxufVxuIiwiLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4qXG4qICAjIERhdGVyYW5nZSBwaWNrZXJcbipcbiogIERhdGUgcmFuZ2UgcGlja2VyIGNvbXBvbmVudCBmb3IgQm9vdHN0cmFwXG4qXG4qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cblxuLy8gQ2hlY2sgaWYgY29tcG9uZW50IGlzIGVuYWJsZWRcbkBpZiAkZW5hYmxlLWRhdGVyYW5nZSB7XG5cbiAgICAvLyBDb3JlXG4gICAgLmRhdGVyYW5nZXBpY2tlciB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgbWFyZ2luLXRvcDogJGRyb3Bkb3duLXNwYWNlcjtcbiAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgIHotaW5kZXg6ICR6aW5kZXgtdG9vbHRpcDtcblxuICAgICAgICAvLyBPdmVycmlkZSBkZWZhdWx0IGRyb3Bkb3duIHN0eWxlc1xuICAgICAgICAmLmRyb3Bkb3duLW1lbnUge1xuICAgICAgICAgICAgbWF4LXdpZHRoOiBub25lO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICBib3JkZXI6IDA7XG4gICAgICAgICAgICBAaW5jbHVkZSBib3gtc2hhZG93KG5vbmUpO1xuICAgICAgICB9XG5cbiAgICAgICAgLy8gRHJvcHVwXG4gICAgICAgICYuZHJvcHVwIHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IC0oJGRyb3Bkb3duLXBhZGRpbmcteSk7XG4gICAgICAgIH1cblxuICAgICAgICAvLyBBbGlnbiBjb250YWluZXJzXG4gICAgICAgIC5yYW5nZXMsXG4gICAgICAgIC5jYWxlbmRhciB7XG4gICAgICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgfVxuXG4gICAgICAgIC8vIERpc3BsYXkgY2FsZW5kYXJzIG9uIGxlZnQgc2lkZVxuICAgICAgICAmLm9wZW5zbGVmdCB7XG4gICAgICAgICAgICAuY2FsZW5kYXJzIHtcbiAgICAgICAgICAgICAgICAvKnJ0bDppZ25vcmUqL1xuICAgICAgICAgICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLmNhbGVuZGFyIHtcbiAgICAgICAgICAgICAgICAvKnJ0bDppZ25vcmUqL1xuICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogJGRhdGVwaWNrZXItcGFkZGluZztcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC8vIERpc3BsYXkgY2FsZW5kYXJzIG9uIHJpZ2h0IHNpZGVcbiAgICAgICAgJi5vcGVuc3JpZ2h0IHtcbiAgICAgICAgICAgIC5jYWxlbmRhcnMge1xuICAgICAgICAgICAgICAgIC8qcnRsOmlnbm9yZSovXG4gICAgICAgICAgICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLmNhbGVuZGFyIHtcbiAgICAgICAgICAgICAgICAvKnJ0bDppZ25vcmUqL1xuICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAkZGF0ZXBpY2tlci1wYWRkaW5nO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLy8gQW5kIHJlbW92ZSBmbG9hdHMgaW4gc2luZ2xlIHBpY2tlclxuICAgICAgICAmLnNpbmdsZSB7XG4gICAgICAgICAgICAuY2FsZW5kYXIge1xuICAgICAgICAgICAgICAgIGZsb2F0OiBub25lO1xuICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLy8gSGlkZSByYW5nZSBtZW51XG4gICAgICAgICAgICAucmFuZ2VzIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLy8gRGlzcGxheSBjYWxlbmRhcnNcbiAgICAgICAgJi5zaG93LWNhbGVuZGFyIC5jYWxlbmRhciB7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgfVxuXG4gICAgICAgIC8vIENhbGVuZGFyXG4gICAgICAgIC5jYWxlbmRhciB7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGRyb3Bkb3duLWJnO1xuICAgICAgICAgICAgYm9yZGVyOiAkZHJvcGRvd24tYm9yZGVyLXdpZHRoIHNvbGlkICRkcm9wZG93bi1ib3JkZXItY29sb3I7XG4gICAgICAgICAgICBtYXJnaW46ICgkZGF0ZXBpY2tlci1wYWRkaW5nIC8gMikgMDtcbiAgICAgICAgICAgIHBhZGRpbmc6ICRkYXRlcGlja2VyLXBhZGRpbmc7XG4gICAgICAgICAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRkcm9wZG93bi1ib3JkZXItcmFkaXVzKTtcbiAgICAgICAgICAgIEBpbmNsdWRlIGJveC1zaGFkb3coJGRyb3Bkb3duLWJveC1zaGFkb3cpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLy8gVGFibGVcbiAgICAuZGF0ZXJhbmdlcGlja2VyIHtcblxuICAgICAgICAvLyBUYWJsZSBkZWZhdWx0c1xuICAgICAgICB0YWJsZSB7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIG1hcmdpbjogMDtcblxuICAgICAgICAgICAgdGJvZHkge1xuICAgICAgICAgICAgICAgIHRoLFxuICAgICAgICAgICAgICAgIHRkIHtcbiAgICAgICAgICAgICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC8vIENlbGxzXG4gICAgICAgIHRoLFxuICAgICAgICB0ZCB7XG4gICAgICAgICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gICAgICAgICAgICAvLyBXZWVrIGRheXNcbiAgICAgICAgICAgICYud2VlayB7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiA4MCU7XG4gICAgICAgICAgICAgICAgY29sb3I6ICRkYXRlcGlja2VyLWl0ZW0td2Vla2RheS1jb2xvcjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC8vIEhlYWRlclxuICAgICAgICB0aCB7XG4gICAgICAgICAgICBjb2xvcjogJGRhdGVwaWNrZXItaXRlbS13ZWVrZGF5LWNvbG9yO1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1ub3JtYWw7XG4gICAgICAgICAgICBmb250LXNpemU6ICRmb250LXNpemUtc207XG5cbiAgICAgICAgICAgIC8vIEljb25zXG4gICAgICAgICAgICA+IGkge1xuICAgICAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLy8gQXJyb3cgYnV0dG9uc1xuICAgICAgICAgICAgJi5wcmV2LFxuICAgICAgICAgICAgJi5uZXh0IHtcbiAgICAgICAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC8vIEF2YWlsYWJsZSBkYXRlc1xuICAgICAgICAgICAgJi5hdmFpbGFibGUge1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGhvdmVyLWZvY3VzIHtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRib2R5LWNvbG9yO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC8vIFRhYmxlIGNvbnRlbnQgY2VsbHNcbiAgICAgICAgdGQge1xuXG4gICAgICAgICAgICAvLyBBdmFpbGFibGUgZGF5c1xuICAgICAgICAgICAgJi5hdmFpbGFibGUge1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGJvcmRlci1yYWRpdXMpO1xuXG4gICAgICAgICAgICAgICAgLy8gSG92ZXIgc3RhdGVcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBob3Zlci1mb2N1cyB7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkZGF0ZXBpY2tlci1pdGVtLWhvdmVyLWNvbG9yO1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZGF0ZXBpY2tlci1pdGVtLWhvdmVyLWJnO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLy8gSW5hY3RpdmUgZGF5c1xuICAgICAgICAgICAgJi5vZmYsXG4gICAgICAgICAgICAmLmRpc2FibGVkIHtcbiAgICAgICAgICAgICAgICBjb2xvcjogJGRhdGVwaWNrZXItaXRlbS1mb2N1c291dC1jb2xvcjtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLy8gRGlzYWJsZWQgZGF5c1xuICAgICAgICAgICAgJi5kaXNhYmxlZCB7XG4gICAgICAgICAgICAgICAgY3Vyc29yOiAkY3Vyc29yLWRpc2FibGVkO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAvLyBIaWdobGlnaHQgZGF0ZXMgaW4gcmFuZ2VcbiAgICAgICAgICAgICYuaW4tcmFuZ2Uge1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkZGF0ZXBpY2tlci1pdGVtLWhvdmVyLWNvbG9yO1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRkYXRlcGlja2VyLWl0ZW0taG92ZXItYmc7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygwKTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLy8gQWN0aXZlIGRhdGVcbiAgICAgICAgICAgICYuYWN0aXZlIHtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBwbGFpbi1ob3Zlci1mb2N1cyB7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkZGF0ZXBpY2tlci1pdGVtLWFjdGl2ZS1jb2xvcjtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGRhdGVwaWNrZXItaXRlbS1hY3RpdmUtYmc7XG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGJvcmRlci1yYWRpdXMpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC8vIE92ZXJyaWRlIGRlZmF1bHQgY29uZGVuc2VkIHN0eWxlc1xuICAgICAgICAudGFibGUtY29uZGVuc2VkIHtcbiAgICAgICAgICAgIHRyID4gdGgsXG4gICAgICAgICAgICB0ciA+IHRkIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAkZGF0ZXBpY2tlci1pdGVtLXBhZGRpbmc7XG4gICAgICAgICAgICAgICAgbWluLXdpZHRoOiAoKCRkYXRlcGlja2VyLWl0ZW0tcGFkZGluZyAqIDIpICsgJGxpbmUtaGVpZ2h0LWNvbXB1dGVkKTtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKGFsbCBlYXNlLWluLW91dCAkY29tcG9uZW50LXRyYW5zaXRpb24tdGltZXIpO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAvLyBBZGQgZXh0cmEgdG9wIHBhZGRpbmcgdG8gZGF5IG5hbWVzXG4gICAgICAgICAgICB0aGVhZCB0cjpsYXN0LWNoaWxkIHRoIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLXRvcDogJGRhdGVwaWNrZXItcGFkZGluZztcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLy8gTW9udGggaGVhZGluZ1xuICAgICAgICAgICAgLm1vbnRoIHtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6ICRkYXRlcGlja2VyLXRpdGxlLWZvbnQtc2l6ZTtcbiAgICAgICAgICAgICAgICBjb2xvcjogJGJvZHktY29sb3I7XG4gICAgICAgICAgICAgICAgcGFkZGluZy10b3A6ICgkZGF0ZXBpY2tlci1wYWRkaW5nIC8gMik7XG4gICAgICAgICAgICAgICAgcGFkZGluZy1ib3R0b206ICgkZGF0ZXBpY2tlci1wYWRkaW5nIC8gMik7XG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1zZW1pYm9sZDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8vIEVsZW1lbnRzXG4gICAgLmRhdGVyYW5nZXBpY2tlciB7XG5cbiAgICAgICAgLy8gU2VsZWN0c1xuICAgICAgICBzZWxlY3Qge1xuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXG4gICAgICAgICAgICAmLm1vbnRoc2VsZWN0IHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDIlO1xuICAgICAgICAgICAgICAgIHdpZHRoOiA1NiU7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICYueWVhcnNlbGVjdCB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDQwJTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJi5ob3Vyc2VsZWN0LFxuICAgICAgICAgICAgJi5taW51dGVzZWxlY3QsXG4gICAgICAgICAgICAmLnNlY29uZHNlbGVjdCxcbiAgICAgICAgICAgICYuYW1wbXNlbGVjdCB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDMuNzVyZW07XG4gICAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgICAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC8vIFRleHQgaW5wdXRzXG4gICAgICAgIC5kYXRlcmFuZ2VwaWNrZXJfaW5wdXQge1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgICAgICAgICAvLyBDYWxlbmRhciBpY29uc1xuICAgICAgICAgICAgaSB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgIHJpZ2h0OiAkaW5wdXQtcGFkZGluZy14LXNtO1xuICAgICAgICAgICAgICAgIHRvcDogYXV0bztcbiAgICAgICAgICAgICAgICBib3R0b206ICgoJGlucHV0LWhlaWdodC1pbm5lciAtICRpY29uLWZvbnQtc2l6ZSkgLyAyKSArIHJlbS1jYWxjKCRpbnB1dC1ib3JkZXItd2lkdGgpO1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkdGV4dC1tdXRlZDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLy8gQWRkIHJpZ2h0IHBhZGRpbmcgZm9yIGlucHV0c1xuICAgICAgICAgICAgaW5wdXQge1xuICAgICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogJGlucHV0LXBhZGRpbmcteC1zbTtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAoJGlucHV0LXBhZGRpbmcteC1zbSArICRpY29uLWZvbnQtc2l6ZSArICRpbnB1dC1wYWRkaW5nLXkpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLy8gVGltZSBwaWNrZXJcbiAgICAgICAgLmNhbGVuZGFyLXRpbWUge1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgbWFyZ2luOiAkaW5wdXQtcGFkZGluZy15IDA7XG5cbiAgICAgICAgICAgIC8vIERpc2FibGVkIHN0YXRlXG4gICAgICAgICAgICBzZWxlY3QuZGlzYWJsZWQge1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkZ3JheS02MDA7XG4gICAgICAgICAgICAgICAgY3Vyc29yOiAkY3Vyc29yLWRpc2FibGVkO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLy8gUmFuZ2VzIGRyb3Bkb3duXG4gICAgLnJhbmdlcyB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRkcm9wZG93bi1iZztcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBtYXJnaW4tdG9wOiAoJGRhdGVwaWNrZXItcGFkZGluZyAvIDIpO1xuICAgICAgICBib3JkZXI6ICRkcm9wZG93bi1ib3JkZXItd2lkdGggc29saWQgJGRyb3Bkb3duLWJvcmRlci1jb2xvcjtcbiAgICAgICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkYm9yZGVyLXJhZGl1cyk7XG4gICAgICAgIEBpbmNsdWRlIGJveC1zaGFkb3coJGRyb3Bkb3duLWJveC1zaGFkb3cpO1xuXG4gICAgICAgIC8vIExpc3Qgd2l0aCBsaW5rc1xuICAgICAgICB1bCB7XG4gICAgICAgICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgICAgcGFkZGluZzogJGRyb3Bkb3duLXBhZGRpbmcteSAwO1xuXG4gICAgICAgICAgICAvLyBBZGQgdG9wIGJvcmRlclxuICAgICAgICAgICAgJiArIC5kYXRlcmFuZ2VwaWNrZXItaW5wdXRzIHtcbiAgICAgICAgICAgICAgICBib3JkZXItdG9wOiAkYm9yZGVyLXdpZHRoIHNvbGlkICRkcm9wZG93bi1kaXZpZGVyLWJnO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAvLyBMaXN0IGl0ZW1cbiAgICAgICAgICAgIGxpIHtcbiAgICAgICAgICAgICAgICBjb2xvcjogJGRyb3Bkb3duLWxpbmstY29sb3I7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogJGRyb3Bkb3duLWl0ZW0tcGFkZGluZy15ICRkcm9wZG93bi1pdGVtLXBhZGRpbmcteDtcbiAgICAgICAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogJGRyb3Bkb3duLWl0ZW0tc3BhY2VyLXk7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbihhbGwgZWFzZS1pbi1vdXQgJGNvbXBvbmVudC10cmFuc2l0aW9uLXRpbWVyKTtcblxuICAgICAgICAgICAgICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIC8vIEhvdmVyIGJnIGNvbG9yXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgaG92ZXItZm9jdXMge1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogJGRyb3Bkb3duLWxpbmstaG92ZXItY29sb3I7XG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRkcm9wZG93bi1saW5rLWhvdmVyLWJnO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIC8vIEFjdGl2ZSBpdGVtIGNvbG9yXG4gICAgICAgICAgICAgICAgJi5hY3RpdmUge1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogJGRhdGVwaWNrZXItaXRlbS1hY3RpdmUtY29sb3I7XG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRkYXRlcGlja2VyLWl0ZW0tYWN0aXZlLWJnO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC8vIFRleHQgaW5wdXRzXG4gICAgICAgIC5kYXRlcmFuZ2VwaWNrZXItaW5wdXRzIHtcbiAgICAgICAgICAgIHBhZGRpbmc6ICRkYXRlcGlja2VyLXBhZGRpbmc7XG4gICAgICAgICAgICBwYWRkaW5nLXRvcDogKCRkYXRlcGlja2VyLXBhZGRpbmcgKyAoJGRyb3Bkb3duLXBhZGRpbmcteSAvIDIpKTtcblxuICAgICAgICAgICAgLy8gSW5wdXRzIGNvbnRhaW5lclxuICAgICAgICAgICAgLmRhdGVyYW5nZXBpY2tlcl9pbnB1dCB7XG5cbiAgICAgICAgICAgICAgICAvLyBBZGQgdG9wIG1hcmdpbiB0byB0aGUgc2Vjb25kIGZpZWxkXG4gICAgICAgICAgICAgICAgJiArIC5kYXRlcmFuZ2VwaWNrZXJfaW5wdXQge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAoJGRhdGVwaWNrZXItcGFkZGluZyArICgkZHJvcGRvd24tcGFkZGluZy15IC8gMikpO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIC8vIFRleHQgbGFiZWxcbiAgICAgICAgICAgICAgICA+IHNwYW4ge1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogbWFwLWdldCgkc3BhY2VycywgMik7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkZ3JheS02MDA7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAvLyBBZGQgdG9wIGRpdmlkZXJcbiAgICAgICAgICAgICYgKyAucmFuZ2VfaW5wdXRzIHtcbiAgICAgICAgICAgICAgICBib3JkZXItdG9wOiAkZHJvcGRvd24tYm9yZGVyLXdpZHRoIHNvbGlkICRkcm9wZG93bi1kaXZpZGVyLWJnO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLy8gQnV0dG9ucyBhcmVhXG4gICAgICAgIC5yYW5nZV9pbnB1dHMge1xuICAgICAgICAgICAgcGFkZGluZzogJGRhdGVwaWNrZXItcGFkZGluZztcblxuICAgICAgICAgICAgLy8gQnV0dG9uc1xuICAgICAgICAgICAgLmJ0biB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAuYnRuICsgLmJ0biB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogJGRhdGVwaWNrZXItcGFkZGluZztcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC8vIElmIHJhbmdlcyBtZW51IGhhcyBsaXN0IGl0ZW1zXG4gICAgICAgIHVsICsgLmRhdGVyYW5nZXBpY2tlci1pbnB1dHMge1xuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAkZHJvcGRvd24taXRlbS1wYWRkaW5nLXg7XG4gICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAkZHJvcGRvd24taXRlbS1wYWRkaW5nLXg7XG4gICAgICAgIH1cblxuXG4gICAgICAgIC8vIFNldHVwIG1vYmlsZSB2aWV3XG4gICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoc20pIHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6ICgkZGF0ZXBpY2tlci1wYWRkaW5nIC8gMik7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAoJGRhdGVwaWNrZXItcGFkZGluZyAvIDIpO1xuICAgICAgICB9XG4gICAgfVxuXG5cbiAgICAvL1xuICAgIC8vIEN1c3RvbSByYW5nZXMgbGF5b3V0XG4gICAgLy9cblxuICAgIC8vIENvbnRhaW5lclxuICAgIC5kYXRlcmFuZ2UtY3VzdG9tIHtcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIH1cblxuICAgIC8vIExheW91dFxuICAgIC5kYXRlcmFuZ2UtY3VzdG9tLWRpc3BsYXkge1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgZmxleC13cmFwOiBub3dyYXA7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAoJGljb24tZm9udC1zaXplICogMS41KTtcbiAgICAgICAgaGVpZ2h0OiAoMS43NXJlbSAqICRsaW5lLWhlaWdodC1iYXNlKTtcblxuICAgICAgICAvLyBBcnJvdyBpY29uXG4gICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgY29udGVudDogJ1xcZTljMSc7XG4gICAgICAgICAgICBmb250LWZhbWlseTogJGljb24tZm9udC1mYW1pbHk7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogJGljb24tZm9udC1zaXplO1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgdG9wOiA1MCU7XG4gICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogLSgkaWNvbi1mb250LXNpemUgLyAyKTtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgICAgICAgICAgQGluY2x1ZGUgbGwtZm9udC1zbW9vdGhpbmcoKTtcbiAgICAgICAgfVxuXG4gICAgICAgIC8vIERhdGUgbnVtYmVyXG4gICAgICAgID4gaSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMS44NzVyZW07XG4gICAgICAgICAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgICAgICAgICAgZm9udC1zdHlsZTogbm9ybWFsO1xuICAgICAgICAgICAgbGV0dGVyLXNwYWNpbmc6ICRoZWFkaW5ncy1sZXR0ZXItc3BhY2luZztcbiAgICAgICAgfVxuXG4gICAgICAgIC8vIERhdGUgZGV0YWlsc1xuICAgICAgICBiIHtcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwLjVyZW07XG4gICAgICAgICAgICBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LW5vcm1hbDtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICAgICAgICAgICAgLy8gTW9udGgveWVhclxuICAgICAgICAgICAgPiBpIHtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6ICRmb250LXNpemUteHM7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6ICRmb250LXNpemUtc207XG4gICAgICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgICAgICAgICBmb250LXN0eWxlOiBub3JtYWw7XG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1ub3JtYWw7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAvLyBMaW5lIGRpdmlkZXJcbiAgICAgICAgZW0ge1xuICAgICAgICAgICAgbWFyZ2luOiAwIDAuNXJlbTtcbiAgICAgICAgfVxuICAgIH1cblxuXG4gICAgLy9cbiAgICAvLyBTZXR1cCBtb2JpbGUgdmlld1xuICAgIC8vXG5cbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oc20pIHtcblxuICAgICAgICAvLyBMYXlvdXRcbiAgICAgICAgLm9wZW5zbGVmdCxcbiAgICAgICAgLm9wZW5zcmlnaHQge1xuICAgICAgICAgICAgbGVmdDogMCFpbXBvcnRhbnQ7XG4gICAgICAgICAgICByaWdodDogMDtcblxuICAgICAgICAgICAgLy8gU3RhY2sgY2FsZW5kYXJzIGNvbnRhaW5lclxuICAgICAgICAgICAgLmNhbGVuZGFycyB7XG4gICAgICAgICAgICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAvLyBTdGFjayBlbGVtZW50c1xuICAgICAgICAuZGF0ZXJhbmdlcGlja2VyLm9wZW5zbGVmdCxcbiAgICAgICAgLmRhdGVyYW5nZXBpY2tlci5vcGVuc3JpZ2h0IHtcbiAgICAgICAgICAgIC5yYW5nZXMsXG4gICAgICAgICAgICAuY2FsZW5kYXIsXG4gICAgICAgICAgICAuY2FsZW5kYXJzIHtcbiAgICAgICAgICAgICAgICBmbG9hdDogbm9uZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC8vIEVsZW1lbnRzXG4gICAgICAgIC5kYXRlcmFuZ2VwaWNrZXIge1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6ICRncmlkLWd1dHRlci13aWR0aDtcbiAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6ICRncmlkLWd1dHRlci13aWR0aDtcblxuICAgICAgICAgICAgLy8gUmVtb3ZlIHNpZGUgbWFyZ2luIGZyb20gY2FsZW5kYXJzXG4gICAgICAgICAgICAuY2FsZW5kYXIge1xuICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLy8gTWFrZSByYW5nZXMgZnVsbCB3aWR0aFxuICAgICAgICAgICAgLnJhbmdlcyB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG4iLCIvKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbipcbiogICMgUGljay1hLWRhdGUgLSBQaWNrZXIgYmFzZVxuKlxuKiAgVGhlIG1vYmlsZS1mcmllbmRseSwgcmVzcG9uc2l2ZSwgYW5kIGxpZ2h0d2VpZ2h0IGpRdWVyeSBkYXRlICYgdGltZSBpbnB1dCBwaWNrZXJcbipcbiogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuXG4vLyBDaGVjayBpZiBjb21wb25lbnQgaXMgZW5hYmxlZFxuQGlmICRlbmFibGUtcGlja2FkYXRlIHtcblxuICAgIC8vIFBpY2tlciBiYXNlXG4gICAgLnBpY2tlciB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogMTAwJTtcbiAgICAgICAgbWFyZ2luLXRvcDogLSgkZHJvcGRvd24tYm9yZGVyLXdpZHRoKTtcbiAgICAgICAgei1pbmRleDogJHppbmRleC10b29sdGlwO1xuICAgICAgICB1c2VyLXNlbGVjdDogbm9uZTtcbiAgICB9XG5cbiAgICAvLyBJbnB1dCBlbGVtZW50XG4gICAgLnBpY2tlcl9faW5wdXQge1xuICAgICAgICBjdXJzb3I6IGRlZmF1bHQ7XG4gICAgfVxuXG4gICAgLy8gVGhlIGJhc2Ugb2YgdGhlIHBpY2tlclxuICAgIC5waWNrZXJfX2hvbGRlciB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBvdmVyZmxvdy15OiBhdXRvO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRkcm9wZG93bi1iZztcbiAgICAgICAgYm9yZGVyOiAkZHJvcGRvd24tYm9yZGVyLXdpZHRoIHNvbGlkICRkcm9wZG93bi1ib3JkZXItY29sb3I7XG4gICAgICAgIGJvcmRlci10b3Atd2lkdGg6IDA7XG4gICAgICAgIGJvcmRlci1ib3R0b20td2lkdGg6IDA7XG4gICAgICAgIG1heC13aWR0aDogJHBpY2thZGF0ZS1tYXgtd2lkdGg7XG4gICAgICAgIG91dGxpbmU6IDA7XG4gICAgICAgIC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDtcbiAgICAgICAgQGluY2x1ZGUgYm9yZGVyLWJvdHRvbS1yYWRpdXMoJGJvcmRlci1yYWRpdXMpO1xuICAgICAgICBAaW5jbHVkZSBib3gtc2hhZG93KCRkcm9wZG93bi1ib3gtc2hhZG93KTtcblxuICAgICAgICAvLyBXaGVuIHRoZSBwaWNrZXIgb3BlbnNcbiAgICAgICAgLnBpY2tlci0tb3BlbmVkICYge1xuICAgICAgICAgICAgbWF4LWhlaWdodDogJHBpY2thZGF0ZS1tYXgtaGVpZ2h0O1xuICAgICAgICAgICAgYm9yZGVyLXRvcC13aWR0aDogJGRyb3Bkb3duLWJvcmRlci13aWR0aDtcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b20td2lkdGg6ICRkcm9wZG93bi1ib3JkZXItd2lkdGg7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgfVxuICAgIH1cbn1cbiIsIi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuKlxuKiAgIyBQaWNrLWEtZGF0ZSAtIERhdGUgcGlja2VyXG4qXG4qICBUaGUgbW9iaWxlLWZyaWVuZGx5LCByZXNwb25zaXZlLCBhbmQgbGlnaHR3ZWlnaHQgalF1ZXJ5IGRhdGUgJiB0aW1lIGlucHV0IHBpY2tlclxuKlxuKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5cbi8vIENoZWNrIGlmIGNvbXBvbmVudCBpcyBlbmFibGVkXG5AaWYgJGVuYWJsZS1waWNrYWRhdGUge1xuXG5cbiAgICAvL1xuICAgIC8vIEJhc2VcbiAgICAvL1xuXG4gICAgLy8gUGlja2VyIGJveFxuICAgIC5waWNrZXJfX2JveCB7XG4gICAgICAgIHBhZGRpbmc6ICRkYXRlcGlja2VyLXBhZGRpbmc7XG4gICAgfVxuXG4gICAgLy8gSGVhZGVyXG4gICAgLnBpY2tlcl9faGVhZGVyIHtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIGZvbnQtc2l6ZTogJGRhdGVwaWNrZXItdGl0bGUtZm9udC1zaXplO1xuICAgICAgICBsaW5lLWhlaWdodDogMTtcbiAgICAgICAgcGFkZGluZy10b3A6ICRkYXRlcGlja2VyLXBhZGRpbmc7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAkZGF0ZXBpY2tlci1wYWRkaW5nO1xuICAgIH1cblxuXG4gICAgLy9cbiAgICAvLyBTZWxlY3RvcnNcbiAgICAvL1xuXG4gICAgLy8gTW9udGggYW5kIHllYXIgbGFiZWxzXG4gICAgLnBpY2tlcl9fbW9udGgsXG4gICAgLnBpY2tlcl9feWVhciB7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtc2VtaWJvbGQ7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgbWFyZ2luLWxlZnQ6IG1hcC1nZXQoJHNwYWNlcnMsIDEpO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IG1hcC1nZXQoJHNwYWNlcnMsIDEpO1xuICAgIH1cbiAgICAucGlja2VyX195ZWFyIHtcbiAgICAgICAgY29sb3I6ICRkYXRlcGlja2VyLWl0ZW0teWVhci1jb2xvcjtcbiAgICAgICAgZm9udC1zaXplOiAkZm9udC1zaXplLXNtO1xuICAgICAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgIH1cblxuICAgIC8vIE1vbnRoIGFuZCB5ZWFyIHNlbGVjdG9yc1xuICAgIC5waWNrZXJfX3NlbGVjdC0tbW9udGgsXG4gICAgLnBpY2tlcl9fc2VsZWN0LS15ZWFyIHtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAkaW5wdXQtYm9yZGVyLWNvbG9yO1xuICAgICAgICBoZWlnaHQ6ICRpbnB1dC1oZWlnaHQ7XG4gICAgICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1iYXNlO1xuICAgICAgICBsaW5lLWhlaWdodDogJGxpbmUtaGVpZ2h0LWJhc2U7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiBtYXAtZ2V0KCRzcGFjZXJzLCAxKTtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiBtYXAtZ2V0KCRzcGFjZXJzLCAxKTtcbiAgICAgICAgb3V0bGluZTogMDtcbiAgICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICB9XG5cblxuICAgIC8vXG4gICAgLy8gTmF2aWdhdGlvblxuICAgIC8vXG5cbiAgICAvLyBOYXZpZ2F0aW9uIGJ1dHRvbnNcbiAgICAucGlja2VyX19uYXYtLXByZXYsXG4gICAgLnBpY2tlcl9fbmF2LS1uZXh0IHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICBwYWRkaW5nOiAoJGljb24tZm9udC1zaXplIC8gMik7XG4gICAgICAgIHRvcDogNTAlO1xuICAgICAgICBtYXJnaW4tdG9wOiAtKCRpY29uLWZvbnQtc2l6ZSk7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgICAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRib3JkZXItcmFkaXVzKTtcbiAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbihhbGwgZWFzZS1pbi1vdXQgJGNvbXBvbmVudC10cmFuc2l0aW9uLXRpbWVyKTtcbiAgICAgICAgXG4gICAgICAgIC8vIFByZXYgYW5kIG5leHQgbmF2XG4gICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgIGZvbnQtZmFtaWx5OiAkaWNvbi1mb250LWZhbWlseTtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgZm9udC1zaXplOiAkaWNvbi1mb250LXNpemU7XG4gICAgICAgICAgICB3aWR0aDogJGljb24tZm9udC1zaXplO1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgQGluY2x1ZGUgbGwtZm9udC1zbW9vdGhpbmcoKTtcbiAgICAgICAgfVxuXG4gICAgICAgIC8vIEhvdmVyIHN0YXRlXG4gICAgICAgIEBpbmNsdWRlIGhvdmVyIHtcbiAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgICAgIGNvbG9yOiAkZGF0ZXBpY2tlci1pdGVtLWhvdmVyLWNvbG9yO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGRhdGVwaWNrZXItaXRlbS1ob3Zlci1iZztcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8vIFByZXZpb3VzIGJ1dHRvblxuICAgIC5waWNrZXJfX25hdi0tcHJldiB7XG4gICAgICAgIGxlZnQ6IDA7XG5cbiAgICAgICAgLy8gSWNvblxuICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICBAaWYgJGRpcmVjdGlvbiA9PSAnTFRSJyB7XG4gICAgICAgICAgICAgICAgY29udGVudDogJ1xcZTljOCc7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBAZWxzZSB7XG4gICAgICAgICAgICAgICAgY29udGVudDogJ1xcZTljYic7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBOZXh0IGJ1dHRvblxuICAgIC5waWNrZXJfX25hdi0tbmV4dCB7XG4gICAgICAgIHJpZ2h0OiAwO1xuXG4gICAgICAgIC8vIEljb25cbiAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgQGlmICRkaXJlY3Rpb24gPT0gJ0xUUicge1xuICAgICAgICAgICAgICAgIGNvbnRlbnQ6ICdcXGU5Y2InO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgQGVsc2Uge1xuICAgICAgICAgICAgICAgIGNvbnRlbnQ6ICdcXGU5YzgnO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLy8gRGlzYWJsZWQgc3RhdGVcbiAgICAucGlja2VyX19uYXYtLWRpc2FibGVkIHtcbiAgICAgICAgJixcbiAgICAgICAgJjpob3ZlcixcbiAgICAgICAgJjpiZWZvcmUsXG4gICAgICAgICY6YmVmb3JlOmhvdmVyIHtcbiAgICAgICAgICAgIGN1cnNvcjogZGVmYXVsdDtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICB9XG4gICAgfVxuXG5cbiAgICAvL1xuICAgIC8vIFRhYmxlc1xuICAgIC8vXG5cbiAgICAvLyBDYWxlbmRhciB0YWJsZSBvZiBkYXRlc1xuICAgIC5waWNrZXJfX3RhYmxlIHtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICBib3JkZXItY29sbGFwc2U6IGNvbGxhcHNlO1xuICAgICAgICBib3JkZXItc3BhY2luZzogMDtcbiAgICAgICAgdGFibGUtbGF5b3V0OiBmaXhlZDtcbiAgICAgICAgZm9udC1zaXplOiBpbmhlcml0O1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogJGRhdGVwaWNrZXItcGFkZGluZztcblxuICAgICAgICB0ZCB7XG4gICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLy8gV2Vla2RheSBsYWJlbHNcbiAgICAucGlja2VyX193ZWVrZGF5IHtcbiAgICAgICAgd2lkdGg6IDE0LjI4NTcxNDI4NiU7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgcGFkZGluZy1ib3R0b206ICgkZGF0ZXBpY2tlci1wYWRkaW5nIC8gMik7XG4gICAgICAgIHBhZGRpbmctdG9wOiAkZGF0ZXBpY2tlci1wYWRkaW5nO1xuICAgICAgICBjb2xvcjogJGRhdGVwaWNrZXItaXRlbS13ZWVrZGF5LWNvbG9yO1xuICAgICAgICBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LW5vcm1hbDtcbiAgICB9XG5cbiAgICAvLyBEYXlzIG9uIHRoZSBjYWxlbmRhclxuICAgIC5waWNrZXJfX2RheSB7XG4gICAgICAgIHBhZGRpbmc6ICRkYXRlcGlja2VyLWl0ZW0tcGFkZGluZztcbiAgICAgICAgbWluLXdpZHRoOiAoKCRkYXRlcGlja2VyLWl0ZW0tcGFkZGluZyAqIDIpICsgJGxpbmUtaGVpZ2h0LWNvbXB1dGVkKTtcbiAgICAgICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkYm9yZGVyLXJhZGl1cyk7XG4gICAgfVxuICAgIC5waWNrZXJfX2RheS0tdG9kYXkge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRkYXRlcGlja2VyLWl0ZW0taG92ZXItYmc7XG5cbiAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIHRvcDogMC4xMjVyZW07XG4gICAgICAgICAgICByaWdodDogMC4xMjVyZW07XG4gICAgICAgICAgICB3aWR0aDogMDtcbiAgICAgICAgICAgIGhlaWdodDogMDtcbiAgICAgICAgICAgIGJvcmRlci10b3A6IDAuMzc1cmVtIHNvbGlkICRkYXRlcGlja2VyLWl0ZW0tYWN0aXZlLWJnO1xuICAgICAgICAgICAgYm9yZGVyLWxlZnQ6IDAuMzc1cmVtIHNvbGlkIHRyYW5zcGFyZW50O1xuICAgICAgICB9XG4gICAgfVxuXG5cbiAgICAvL1xuICAgIC8vIFN0YXRlc1xuICAgIC8vXG5cbiAgICAvLyBEYXRlIGZvY3VzXG4gICAgLnBpY2tlcl9fZGF5LS1vdXRmb2N1cyB7XG4gICAgICAgIGNvbG9yOiAkZGF0ZXBpY2tlci1pdGVtLWZvY3Vzb3V0LWNvbG9yO1xuICAgIH1cbiAgICAucGlja2VyX19kYXktLWluZm9jdXMsXG4gICAgLnBpY2tlcl9fZGF5LS1vdXRmb2N1cyB7XG4gICAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oYWxsIGVhc2UtaW4tb3V0ICRjb21wb25lbnQtdHJhbnNpdGlvbi10aW1lcik7XG5cbiAgICAgICAgLy8gSG92ZXIgc3RhdGVcbiAgICAgICAgQGluY2x1ZGUgaG92ZXIge1xuICAgICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICAgICAgY29sb3I6ICRkYXRlcGlja2VyLWl0ZW0taG92ZXItY29sb3I7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZGF0ZXBpY2tlci1pdGVtLWhvdmVyLWJnO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLy8gSGlnaGxpZ2h0ZWQgZGF0ZVxuICAgIC5waWNrZXJfX2RheS0taGlnaGxpZ2h0ZWQ6YmVmb3JlIHtcbiAgICAgICAgYm9yZGVyLXRvcC1jb2xvcjogJGRhdGVwaWNrZXItaXRlbS1hY3RpdmUtY29sb3I7XG4gICAgfVxuICAgIC5waWNrZXJfX2RheS0taGlnaGxpZ2h0ZWQsXG4gICAgLnBpY2tlcl9fZGF5LS1oaWdobGlnaHRlZDpob3ZlcixcbiAgICAucGlja2VyLS1mb2N1c2VkIC5waWNrZXJfX2RheS0taGlnaGxpZ2h0ZWQge1xuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgIGNvbG9yOiAkZGF0ZXBpY2tlci1pdGVtLWFjdGl2ZS1jb2xvcjtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGRhdGVwaWNrZXItaXRlbS1hY3RpdmUtYmc7XG4gICAgfVxuICAgIC5waWNrZXJfX2RheS0tc2VsZWN0ZWQsXG4gICAgLnBpY2tlcl9fZGF5LS1zZWxlY3RlZDpob3ZlcixcbiAgICAucGlja2VyLS1mb2N1c2VkIC5waWNrZXJfX2RheS0tc2VsZWN0ZWQge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZGF0ZXBpY2tlci1pdGVtLWFjdGl2ZS1iZztcbiAgICAgICAgY29sb3I6ICRkYXRlcGlja2VyLWl0ZW0tYWN0aXZlLWNvbG9yO1xuICAgIH1cblxuICAgIC8vIERpc2FibGVkIGRhdGVcbiAgICAucGlja2VyX19kYXktLWRpc2FibGVkIHtcbiAgICAgICAgJixcbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZGF0ZXBpY2tlci1pdGVtLWRpc2FibGVkLWJnO1xuICAgICAgICAgICAgY29sb3I6ICRncmF5LTYwMDtcbiAgICAgICAgICAgIGN1cnNvcjogZGVmYXVsdDtcbiAgICAgICAgfVxuXG4gICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgIGJvcmRlci10b3AtY29sb3I6ICRkYXRlcGlja2VyLWl0ZW0tZGlzYWJsZWQtY29sb3I7XG4gICAgICAgIH1cblxuICAgICAgICAucGlja2VyX19kYXktLWhpZ2hsaWdodGVkICYge1xuICAgICAgICAgICAgJixcbiAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRkYXRlcGlja2VyLWl0ZW0tZGlzYWJsZWQtYmc7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cblxuICAgIC8vXG4gICAgLy8gRm9vdGVyXG4gICAgLy9cblxuICAgIC8vIENvbnRhaW5zIHRoZSBcInRvZGF5XCIgYW5kIFwiY2xlYXJcIiBidXR0b25zXG4gICAgLnBpY2tlcl9fZm9vdGVyIHtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gICAgICAgIC8vIEZvb3RlciBidXR0b25zXG4gICAgICAgIGJ1dHRvbiB7XG4gICAgICAgICAgICBib3JkZXI6IDA7XG4gICAgICAgICAgICBwYWRkaW5nOiAkYnRuLXBhZGRpbmcteSAkYnRuLXBhZGRpbmcteDtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtc2VtaWJvbGQ7XG4gICAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRidG4tYm9yZGVyLXJhZGl1cyk7XG4gICAgICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKGFsbCBlYXNlLWluLW91dCAkY29tcG9uZW50LXRyYW5zaXRpb24tdGltZXIpO1xuXG4gICAgICAgICAgICAvLyBIb3ZlciBzdGF0ZVxuICAgICAgICAgICAgQGluY2x1ZGUgaG92ZXItZm9jdXMge1xuICAgICAgICAgICAgICAgIG91dGxpbmU6IDA7XG4gICAgICAgICAgICAgICAgY29sb3I6ICRkYXRlcGlja2VyLWl0ZW0taG92ZXItY29sb3I7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGRhdGVwaWNrZXItaXRlbS1ob3Zlci1iZztcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLy8gSW5kaWNhdG9yXG4gICAgICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAwO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAvLyBEaXNhYmxlZCBzdGF0ZVxuICAgICAgICAgICAgJjpkaXNhYmxlZCB7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgcGxhaW4taG92ZXItZm9jdXMge1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRncmF5LTYwMDtcbiAgICAgICAgICAgICAgICAgICAgY3Vyc29yOiAkY3Vyc29yLWRpc2FibGVkO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8vIEJ1dHRvbnNcbiAgICAucGlja2VyX19idXR0b24tLXRvZGF5OmJlZm9yZSB7XG4gICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6ICRlbGVtZW50LXNwYWNlci14O1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgdG9wOiAtMC4wNjI1cmVtO1xuICAgICAgICB3aWR0aDogMDtcbiAgICAgICAgYm9yZGVyLXRvcDogMC4zNzVyZW0gc29saWQgJGNvbG9yLXByaW1hcnktNTAwO1xuICAgICAgICBib3JkZXItbGVmdDogMC4zNzVyZW0gc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgfVxuICAgIC5waWNrZXJfX2J1dHRvbi0tY2xvc2U6YmVmb3JlIHtcbiAgICAgICAgY29udGVudDogJ1xcRDcnO1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAkZWxlbWVudC1zcGFjZXIteDtcbiAgICAgICAgdG9wOiAwLjA2MjVyZW07XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgICAgICBmb250LXNpemU6ICRpY29uLWZvbnQtc2l6ZTtcbiAgICB9XG4gICAgLnBpY2tlcl9fYnV0dG9uLS1jbGVhcjpiZWZvcmUge1xuICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIHRvcDogLTAuMTg3NXJlbTtcbiAgICAgICAgd2lkdGg6IDAuNXJlbTtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAkZWxlbWVudC1zcGFjZXIteDtcbiAgICAgICAgYm9yZGVyLXRvcDogMC4xMjVyZW0gc29saWQgJGNvbG9yLWRhbmdlci01MDA7XG4gICAgfVxufVxuIiwiLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4qXG4qICAjIFBpY2stYS1kYXRlIC0gVGltZSBwaWNrZXJcbipcbiogIFRoZSBtb2JpbGUtZnJpZW5kbHksIHJlc3BvbnNpdmUsIGFuZCBsaWdodHdlaWdodCBqUXVlcnkgZGF0ZSAmIHRpbWUgaW5wdXQgcGlja2VyXG4qXG4qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cblxuLy8gQ2hlY2sgaWYgY29tcG9uZW50IGlzIGVuYWJsZWRcbkBpZiAkZW5hYmxlLXBpY2thZGF0ZSB7XG5cbiAgICAvLyBDb250YWluZXIgc2l6ZVxuICAgIC5waWNrZXItLXRpbWUge1xuICAgICAgICBtaW4td2lkdGg6ICRwaWNrYXRpbWUtbWluLXdpZHRoO1xuICAgICAgICBtYXgtd2lkdGg6ICRwaWNrYXRpbWUtbWF4LXdpZHRoO1xuICAgIH1cblxuICAgIC8vIFJlbW92ZSBwYWRkaW5nIGZyb20gcGlja2VyIGJveFxuICAgIC5waWNrZXItLXRpbWUgLnBpY2tlcl9fYm94IHtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICB9XG5cblxuICAgIC8vXG4gICAgLy8gTGlzdCBvZiBpdGVtc1xuICAgIC8vXG5cbiAgICAvLyBJdGVtcyBsaXN0XG4gICAgLnBpY2tlcl9fbGlzdCB7XG4gICAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgICAgIHBhZGRpbmc6ICRkcm9wZG93bi1wYWRkaW5nLXkgMDtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICBtYXgtaGVpZ2h0OiAkcGlja2F0aW1lLW1heC1oZWlnaHQ7XG4gICAgICAgIG92ZXJmbG93LXk6IGF1dG87XG4gICAgfVxuXG4gICAgLy8gVGhlIHRpbWVzIG9uIHRoZSBjbG9jay5cbiAgICAucGlja2VyX19saXN0LWl0ZW0ge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIHBhZGRpbmc6ICRkcm9wZG93bi1pdGVtLXBhZGRpbmcteSAkZHJvcGRvd24taXRlbS1wYWRkaW5nLXg7XG4gICAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oYWxsIGVhc2UtaW4tb3V0ICRjb21wb25lbnQtdHJhbnNpdGlvbi10aW1lcik7XG5cbiAgICAgICAgLy8gSG92ZXIgc3RhdGVcbiAgICAgICAgQGluY2x1ZGUgaG92ZXItZm9jdXMge1xuICAgICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICAgICAgY29sb3I6ICRkcm9wZG93bi1saW5rLWhvdmVyLWNvbG9yO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGRyb3Bkb3duLWxpbmstaG92ZXItYmc7XG4gICAgICAgICAgICB6LWluZGV4OiAxMDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8vIFRoZSBjbGVhciBidXR0b25cbiAgICAucGlja2VyLS10aW1lIC5waWNrZXJfX2J1dHRvbi0tY2xlYXIge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgcGFkZGluZzogJGJ0bi1wYWRkaW5nLXkgJGJ0bi1wYWRkaW5nLXg7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRncmF5LTEwMDtcbiAgICAgICAgb3V0bGluZTogMDtcbiAgICAgICAgYm9yZGVyOiAwO1xuICAgICAgICBib3JkZXItdG9wOiAkYm9yZGVyLXdpZHRoIHNvbGlkICRkcm9wZG93bi1kaXZpZGVyLWJnO1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogLSgkZHJvcGRvd24tcGFkZGluZy15KTtcbiAgICAgICAgbWFyZ2luLXRvcDogJGRyb3Bkb3duLXBhZGRpbmcteTtcbiAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbihhbGwgZWFzZS1pbi1vdXQgJGNvbXBvbmVudC10cmFuc2l0aW9uLXRpbWVyKTtcblxuICAgICAgICAvLyBIb2NlciBzdGF0ZVxuICAgICAgICBAaW5jbHVkZSBob3Zlci1mb2N1cyB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZ3JheS0yMDA7XG4gICAgICAgIH1cbiAgICB9XG5cblxuICAgIC8vXG4gICAgLy8gU3RhdGVzXG4gICAgLy9cblxuICAgIC8vIEhpZ2hsaWdodGVkIGFuZCBob3ZlcmVkL2ZvY3VzZWQgdGltZVxuICAgIC5waWNrZXJfX2xpc3QtaXRlbS0taGlnaGxpZ2h0ZWQge1xuICAgICAgICB6LWluZGV4OiAxMDtcbiAgICB9XG4gICAgLnBpY2tlcl9fbGlzdC1pdGVtLS1oaWdobGlnaHRlZCxcbiAgICAucGlja2VyX19saXN0LWl0ZW0tLWhpZ2hsaWdodGVkOmhvdmVyLFxuICAgIC5waWNrZXItLWZvY3VzZWQgLnBpY2tlcl9fbGlzdC1pdGVtLS1oaWdobGlnaHRlZCB7XG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgY29sb3I6ICRkcm9wZG93bi1saW5rLWhvdmVyLWNvbG9yO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZHJvcGRvd24tbGluay1ob3Zlci1iZztcbiAgICB9XG5cbiAgICAvLyBTZWxlY3RlZCBhbmQgaG92ZXJlZC9mb2N1c2VkIHRpbWVcbiAgICAucGlja2VyX19saXN0LWl0ZW0tLXNlbGVjdGVkLFxuICAgIC5waWNrZXJfX2xpc3QtaXRlbS0tc2VsZWN0ZWQ6aG92ZXIsXG4gICAgLnBpY2tlci0tZm9jdXNlZCAucGlja2VyX19saXN0LWl0ZW0tLXNlbGVjdGVkIHtcbiAgICAgICAgY29sb3I6ICRkcm9wZG93bi1saW5rLWFjdGl2ZS1jb2xvcjtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGRyb3Bkb3duLWxpbmstYWN0aXZlLWJnO1xuICAgICAgICB6LWluZGV4OiAxMDtcbiAgICB9XG5cbiAgICAvLyBEaXNhYmxlZCB0aW1lXG4gICAgLnBpY2tlcl9fbGlzdC1pdGVtLS1kaXNhYmxlZCxcbiAgICAucGlja2VyX19saXN0LWl0ZW0tLWRpc2FibGVkOmhvdmVyLFxuICAgIC5waWNrZXItLWZvY3VzZWQgLnBpY2tlcl9fbGlzdC1pdGVtLS1kaXNhYmxlZCB7XG4gICAgICAgIGNvbG9yOiAkZHJvcGRvd24tbGluay1kaXNhYmxlZC1jb2xvcjtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgIGN1cnNvcjogJGN1cnNvci1kaXNhYmxlZDtcbiAgICAgICAgei1pbmRleDogYXV0bztcbiAgICB9XG59XG4iLCIvKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbipcbiogICMgQW55dGltZSBwaWNrZXJcbipcbiogIGpRdWVyeSBkYXRlcGlja2VyL3RpbWVwaWNrZXIgYW5kIGEgRGF0ZS9TdHJpbmcgcGFyc2UvZm9ybWF0IHV0aWxpdHlcbipcbiogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuXG4vLyBDaGVjayBpZiBjb21wb25lbnQgaXMgZW5hYmxlZFxuQGlmICRlbmFibGUtYW55dGltZSB7XG5cblxuICAgIC8vIENvcmVcbiAgICAvLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuICAgIC8vIEJhc2VcbiAgICAuQW55VGltZS1wa3Ige1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgICAgICAgKiB7XG4gICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5BbnlUaW1lLWRhdGUge1xuICAgICAgICAgICAgZmxvYXQ6IGxlZnQ7XG5cbiAgICAgICAgICAgICYgKyAuQW55VGltZS10aW1lIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogMy4xMjVyZW07XG4gICAgICAgICAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBEcm9wZG93biBjb250YWluZXJcbiAgICAuQW55VGltZS13aW4ge1xuICAgICAgICBwYWRkaW5nOiAkZGF0ZXBpY2tlci1wYWRkaW5nO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZHJvcGRvd24tYmc7XG4gICAgICAgIGJvcmRlcjogJGRyb3Bkb3duLWJvcmRlci13aWR0aCBzb2xpZCAkZHJvcGRvd24tYm9yZGVyLWNvbG9yO1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIHotaW5kZXg6ICR6aW5kZXgtdG9vbHRpcDtcbiAgICAgICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkYm9yZGVyLXJhZGl1cyk7XG4gICAgICAgIEBpbmNsdWRlIGJveC1zaGFkb3coJGRyb3Bkb3duLWJveC1zaGFkb3cpO1xuICAgIH1cblxuICAgIC8vIENsb2NrXG4gICAgLkFueVRpbWUtY2xvYWsge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIG9wYWNpdHk6IDAuNztcbiAgICB9XG5cbiAgICAvLyBUaXRsZVxuICAgIC5BbnlUaW1lLWhkciB7XG4gICAgICAgIGZvbnQtc2l6ZTogJGRhdGVwaWNrZXItdGl0bGUtZm9udC1zaXplO1xuICAgICAgICBtYXJnaW46ICRkYXRlcGlja2VyLXBhZGRpbmc7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgIH1cblxuICAgIC8vIENsb3NlIGJ1dHRvblxuICAgIC5BbnlUaW1lLXgtYnRuIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgZm9udC1zaXplOiAwO1xuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgIGZsb2F0OiByaWdodDtcbiAgICAgICAgb3BhY2l0eTogMC42O1xuICAgICAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRib3JkZXItcmFkaXVzKTtcblxuICAgICAgICAvLyBIb3ZlciBzdGF0ZVxuICAgICAgICBAaW5jbHVkZSBob3ZlciB7XG4gICAgICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICB9XG5cbiAgICAgICAgLy8gSWNvblxuICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgIGNvbnRlbnQ6ICdcXGVkNmInO1xuICAgICAgICAgICAgZm9udC1mYW1pbHk6ICRpY29uLWZvbnQtZmFtaWx5O1xuICAgICAgICAgICAgZm9udC1zaXplOiAkaWNvbi1mb250LXNpemU7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMTtcbiAgICAgICAgICAgIEBpbmNsdWRlIGxsLWZvbnQtc21vb3RoaW5nKCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBMYWJlbFxuICAgIC5BbnlUaW1lLWxibCB7XG4gICAgICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1iYXNlO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAoJHNwYWNlciAvIDIpO1xuICAgICAgICBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LXNlbWlib2xkO1xuICAgICAgICBtYXJnaW4tdG9wOiAkc3BhY2VyO1xuXG4gICAgICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogJGRyb3Bkb3duLXBhZGRpbmcteTtcbiAgICAgICAgfVxuICAgIH1cblxuXG4gICAgLy8gSGlnaGxpZ2h0IGl0ZW0gY29sb3JzXG4gICAgLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbiAgICAvLyBZZWFyc1xuICAgIC5BbnlUaW1lLXlycyB7XG4gICAgICAgIC5BbnlUaW1lLWN1ci1idG4ge1xuICAgICAgICAgICAgJixcbiAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRhbnl0aW1lLXllYXItYnRuLWJnO1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkYW55dGltZS15ZWFyLWJ0bi1jb2xvcjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8vIE1vbnRoc1xuICAgIC5BbnlUaW1lLW1vbnMge1xuICAgICAgICAuQW55VGltZS1jdXItYnRuIHtcbiAgICAgICAgICAgICYsXG4gICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYW55dGltZS1tb250aC1idG4tYmc7XG4gICAgICAgICAgICAgICAgY29sb3I6ICRhbnl0aW1lLW1vbnRoLWJ0bi1jb2xvcjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8vIFRpbWVcbiAgICAuQW55VGltZS10aW1lIHtcbiAgICAgICAgLkFueVRpbWUtY3VyLWJ0biB7XG4gICAgICAgICAgICAmLFxuICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGFueXRpbWUtdGltZS1idG4tYmc7XG4gICAgICAgICAgICAgICAgY29sb3I6ICRhbnl0aW1lLXRpbWUtYnRuLWNvbG9yO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLy8gQ2FsZW5kYXJcbiAgICAuQW55VGltZS1kb20tdGFibGUsXG4gICAgLkFueVRpbWUtYm9keS15ci1zZWxlY3RvciB7XG4gICAgICAgIC5BbnlUaW1lLWN1ci1idG4ge1xuICAgICAgICAgICAgJixcbiAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRkYXRlcGlja2VyLWl0ZW0tYWN0aXZlLWJnO1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkZGF0ZXBpY2tlci1pdGVtLWFjdGl2ZS1jb2xvcjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuXG4gICAgLy8gUGVyaW9kc1xuICAgIC8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4gICAgLy8gWWVhcnNcbiAgICAuQW55VGltZS15cnMtcGFzdC1idG4sXG4gICAgLkFueVRpbWUteXJzLWFoZWFkLWJ0biB7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB9XG4gICAgLkFueVRpbWUteXItcHJpb3ItYnRuLFxuICAgIC5BbnlUaW1lLXlyLWN1ci1idG4sXG4gICAgLkFueVRpbWUteXItbmV4dC1idG4ge1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIG1pbi13aWR0aDogM3JlbTtcbiAgICB9XG5cbiAgICAvLyBNb250aHNcbiAgICAuQW55VGltZS1tb25zIHtcbiAgICAgICAgQGluY2x1ZGUgY2xlYXJmaXg7XG4gICAgfVxuXG5cbiAgICAvLyBEYXRlIGNhbGVuZGFyXG4gICAgLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbiAgICAvLyBUYWJsZVxuICAgIC5BbnlUaW1lLWRvbS10YWJsZSB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgIH1cblxuICAgIC8vIFdlZWsgZGF5c1xuICAgIC5BbnlUaW1lLXBrciB0aC5BbnlUaW1lLWRvdyB7XG4gICAgICAgIGNvbG9yOiAkZGF0ZXBpY2tlci1pdGVtLXdlZWtkYXktY29sb3I7XG4gICAgICAgIHBhZGRpbmc6ICRkYXRlcGlja2VyLWl0ZW0tcGFkZGluZztcbiAgICAgICAgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1ub3JtYWw7XG4gICAgfVxuXG4gICAgLy8gQnV0dG9uc1xuICAgIC5BbnlUaW1lLW1vbi1idG4ge1xuICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgd2lkdGg6ICgxMDAlIC8gNik7IC8vIDYgbW9udGhzIHBlciByb3dcbiAgICB9XG4gICAgLkFueVRpbWUtbW9uNy1idG4ge1xuICAgICAgICBjbGVhcjogbGVmdDtcbiAgICB9XG5cbiAgICAvLyBNYWtlIGVsZW1lbnRzIGlubGluZVxuICAgIC5BbnlUaW1lLXRpbWUsXG4gICAgLkFueVRpbWUtaHJzLWFtLFxuICAgIC5BbnlUaW1lLWhycy1wbSxcbiAgICAuQW55VGltZS1taW5zLXRlbnMsXG4gICAgLkFueVRpbWUtbWlucy1vbmVzLFxuICAgIC5BbnlUaW1lLXNlY3MtdGVucyxcbiAgICAuQW55VGltZS1zZWNzLW9uZXMsXG4gICAgLkFueVRpbWUtaHJzLFxuICAgIC5BbnlUaW1lLW1pbnMsXG4gICAgLkFueVRpbWUtc2VjcyxcbiAgICAuQW55VGltZS1vZmZzIHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIH1cblxuICAgIC8vIEJ1dHRvblxuICAgIC5BbnlUaW1lLWJ0biB7XG4gICAgICAgIHBhZGRpbmc6ICRkYXRlcGlja2VyLWl0ZW0tcGFkZGluZztcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRib3JkZXItcmFkaXVzKTtcbiAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbihhbGwgZWFzZS1pbi1vdXQgJGNvbXBvbmVudC10cmFuc2l0aW9uLXRpbWVyKTtcblxuICAgICAgICAvLyBIb3ZlciBzdGF0ZVxuICAgICAgICBAaW5jbHVkZSBob3ZlciB7XG4gICAgICAgICAgICBjb2xvcjogJGRhdGVwaWNrZXItaXRlbS1ob3Zlci1jb2xvcjtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRkYXRlcGlja2VyLWl0ZW0taG92ZXItYmc7XG4gICAgICAgIH1cblxuICAgICAgICAvLyBEaXNhYmxlZCBzdGF0ZVxuICAgICAgICAmLnVpLXN0YXRlLWRpc2FibGVkIHtcbiAgICAgICAgICAgIGN1cnNvcjogJGN1cnNvci1kaXNhYmxlZDtcbiAgICAgICAgICAgIGNvbG9yOiAkZGF0ZXBpY2tlci1pdGVtLWRpc2FibGVkLWNvbG9yO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGRhdGVwaWNrZXItaXRlbS1kaXNhYmxlZC1iZztcbiAgICAgICAgfVxuICAgIH1cblxuXG4gICAgLy8gVGltZVxuICAgIC8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4gICAgLy8gVGltZSBidXR0b25zXG4gICAgLkFueVRpbWUtaHItYnRuLFxuICAgIC5BbnlUaW1lLW1pbi10ZW4tYnRuLFxuICAgIC5BbnlUaW1lLW1pbi1vbmUtYnRuLFxuICAgIC5BbnlUaW1lLXNlYy10ZW4tYnRuLFxuICAgIC5BbnlUaW1lLXNlYy1vbmUtYnRuIHtcbiAgICAgICAgbWluLXdpZHRoOiAyLjVyZW07XG4gICAgfVxuXG4gICAgLkFueVRpbWUtaHJzLXBtLFxuICAgIC5BbnlUaW1lLW1pbnMtb25lcyxcbiAgICAuQW55VGltZS1zZWNzLW9uZXMge1xuICAgICAgICBtYXJnaW4tbGVmdDogMC4xMjVyZW07XG4gICAgfVxuICAgIC5BbnlUaW1lLW1pbnMtdGVucyxcbiAgICAuQW55VGltZS1zZWNzLXRlbnMge1xuICAgICAgICBtYXJnaW4tbGVmdDogMS4yNXJlbTtcbiAgICB9XG5cbiAgICAvLyBPZmYgYnV0dG9uc1xuICAgIC5BbnlUaW1lLW9mZi1jdXItYnRuIHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIH1cbiAgICAuQW55VGltZS1vZmYtc2VsZWN0LWJ0biB7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgdmVydGljYWwtYWxpZ246IHRvcDtcbiAgICB9XG4gICAgLkFueVRpbWUtb2ZmLXNlbGVjdG9yIHtcbiAgICAgICAgbWFyZ2luOiAwLjYyNXJlbTtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIH1cbiAgICAuQW55VGltZS1ib2R5LW9mZi1zZWxlY3RvciB7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgb3ZlcmZsb3cteDogaGlkZGVuO1xuICAgICAgICBvdmVyZmxvdy15OiBhdXRvO1xuICAgICAgICB3aGl0ZS1zcGFjZTogbm93cmFwXG4gICAgfVxuICAgIC5BbnlUaW1lLW9mZi1vZmYtYnRuIHtcbiAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICB9XG5cblxuICAgIC8vIFllYXIgYW5kIGVyYVxuICAgIC8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4gICAgLy8gWWVhciBzZWxlY3RvclxuICAgIC5BbnlUaW1lLXlyLXNlbGVjdG9yIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB3aWR0aDogOTAlO1xuICAgIH1cbiAgICAuQW55VGltZS1ib2R5LXlyLXNlbGVjdG9yIHtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgIH1cbiAgICAuQW55VGltZS15ci1taWwsXG4gICAgLkFueVRpbWUteXItY2VudCxcbiAgICAuQW55VGltZS15ci1kZWMsXG4gICAgLkFueVRpbWUteXIteXIsXG4gICAgLkFueVRpbWUteXItZXJhIHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuICAgICAgICB3aWR0aDogMjAlO1xuICAgIH1cblxuICAgIC8vIE1lZGlhIHF1ZXJpZXNcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oeHMpIHtcbiAgICAgICAgLkFueVRpbWUtcGtyIC5BbnlUaW1lLWRhdGUge1xuICAgICAgICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgICAgIH1cblxuICAgICAgICAuQW55VGltZS1tb24tYnRuIHtcbiAgICAgICAgICAgIGZsb2F0OiBub25lO1xuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICB9XG5cbiAgICAgICAgLkFueVRpbWUtZGF0ZSArIC5BbnlUaW1lLXRpbWUge1xuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAkc3BhY2VyO1xuICAgICAgICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgICAgIH1cbiAgICB9XG59XG4iLCIvKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbipcbiogICMgU3BlY3RydW0gY29sb3IgcGlja2VyXG4qXG4qICBGbGV4aWJsZSBhbmQgcG93ZXJmdWwgalF1ZXJ5IGNvbG9ycGlja2VyIGxpYnJhcnlcbipcbiogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuXG4vLyBDaGVjayBpZiBjb21wb25lbnQgaXMgZW5hYmxlZFxuQGlmICRlbmFibGUtc3BlY3RydW0ge1xuXG5cbiAgICAvLyBCYXNlIHN0eWxlc1xuICAgIC8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4gICAgLy8gQmFzZVxuICAgIC5zcC1zYXQsXG4gICAgLnNwLXZhbCxcbiAgICAuc3AtdG9wLWlubmVyLFxuICAgIC5zcC1jb2xvcixcbiAgICAuc3AtaHVlLFxuICAgIC5zcC1jbGVhci1lbmFibGVkIC5zcC1jbGVhcixcbiAgICAuc3AtcHJldmlldy1pbm5lcixcbiAgICAuc3AtYWxwaGEtaW5uZXIsXG4gICAgLnNwLXRodW1iLWlubmVyIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICBib3R0b206IDA7XG4gICAgfVxuXG4gICAgLy8gSGlkZSBjb250YWluZXJzIGJ5IGRlZmF1bHRcbiAgICAuc3AtY29udGFpbmVyLnNwLWlucHV0LWRpc2FibGVkIC5zcC1pbnB1dC1jb250YWluZXIsXG4gICAgLnNwLWNvbnRhaW5lci5zcC1idXR0b25zLWRpc2FibGVkIC5zcC1idXR0b24tY29udGFpbmVyLFxuICAgIC5zcC1jb250YWluZXIuc3AtcGFsZXR0ZS1idXR0b25zLWRpc2FibGVkIC5zcC1wYWxldHRlLWJ1dHRvbi1jb250YWluZXIsXG4gICAgLnNwLXBhbGV0dGUtb25seSAuc3AtcGlja2VyLWNvbnRhaW5lcixcbiAgICAuc3AtcGFsZXR0ZS1kaXNhYmxlZCAuc3AtcGFsZXR0ZS1jb250YWluZXIsXG4gICAgLnNwLWluaXRpYWwtZGlzYWJsZWQgLnNwLWluaXRpYWwge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgICAuc3AtaGlkZGVuIHtcbiAgICAgICAgZGlzcGxheTogbm9uZSFpbXBvcnRhbnQ7XG4gICAgfVxuICAgIC5zcC1jZiB7XG4gICAgICAgIEBpbmNsdWRlIGNsZWFyZml4O1xuICAgIH1cblxuICAgIC8vIEVsZW1lbnRzXG4gICAgLnNwLXByZXZpZXcsXG4gICAgLnNwLWFscGhhLFxuICAgIC5zcC10aHVtYi1lbCB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKGRhdGE6aW1hZ2UvcG5nO2Jhc2U2NCxpVkJPUncwS0dnb0FBQUFOU1VoRVVnQUFBQXdBQUFBTUNBSUFBQURaRjh1d0FBQUFHVWxFUVZRWVYyTTRnd0grWXdDR0lhc0lVd2hUMjVCVkJBRHR6WU5Zckh2djRnQUFBQUJKUlU1RXJrSmdnZz09KTtcbiAgICB9XG5cbiAgICAvLyBQcmV2aWV3c1xuICAgIC5zcC1wcmV2aWV3LWlubmVyLFxuICAgIC5zcC1hbHBoYS1pbm5lcixcbiAgICAuc3AtdGh1bWItaW5uZXIge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICB9XG5cbiAgICAvLyBQaWNrZXIgYW5kIHBhbGV0dGUgY29udGFpbmVyc1xuICAgIC5zcC1jb250YWluZXIge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgLypydGw6aWdub3JlKi9cbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICB6LWluZGV4OiAkemluZGV4LWRyb3Bkb3duO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZHJvcGRvd24tYmc7XG4gICAgICAgIGJvcmRlcjogJGRyb3Bkb3duLWJvcmRlci13aWR0aCBzb2xpZCAkZHJvcGRvd24tYm9yZGVyLWNvbG9yO1xuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICBib3gtc2l6aW5nOiBjb250ZW50LWJveDtcbiAgICAgICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkYm9yZGVyLXJhZGl1cyk7XG4gICAgICAgIEBpbmNsdWRlIGJveC1zaGFkb3coJGRyb3Bkb3duLWJveC1zaGFkb3cpO1xuXG4gICAgICAgIC8vIEZsYXQgcGlja2VyXG4gICAgICAgICYuc3AtZmxhdCB7XG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICBvdmVyZmxvdy14OiBhdXRvO1xuICAgICAgICAgICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICAgICAgICAgIEBpbmNsdWRlIGJveC1zaGFkb3coJGNhcmQtYm94LXNoYWRvdyk7XG4gICAgICAgIH1cbiAgICB9XG4gICAgLnNwLXBpY2tlci1jb250YWluZXIsXG4gICAgLnNwLXBhbGV0dGUtY29udGFpbmVyIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgcGFkZGluZzogJHNwZWN0cnVtLXBhZGRpbmc7XG5cbiAgICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChzbSkge1xuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICB9XG4gICAgfVxuICAgIC5zcC1waWNrZXItY29udGFpbmVyIHtcbiAgICAgICAgd2lkdGg6ICRzcGVjdHJ1bS13aWR0aDtcbiAgICB9XG5cbiAgICAvLyBEaXNhYmxlIHVzZXIgc2VsZWN0aW9uXG4gICAgLnNwLWNvbnRhaW5lcixcbiAgICAuc3AtcmVwbGFjZXIsXG4gICAgLnNwLXByZXZpZXcsXG4gICAgLnNwLWRyYWdnZXIsXG4gICAgLnNwLXNsaWRlcixcbiAgICAuc3AtYWxwaGEsXG4gICAgLnNwLWNsZWFyLFxuICAgIC5zcC1hbHBoYS1oYW5kbGUsXG4gICAgLnNwLWNvbnRhaW5lci5zcC1kcmFnZ2luZyAuc3AtaW5wdXQsXG4gICAgLnNwLWNvbnRhaW5lciBidXR0b24gIHtcbiAgICAgICAgdXNlci1zZWxlY3Q6IG5vbmU7XG4gICAgfVxuXG5cbiAgICAvLyBQaWNrZXIgZWxlbWVudHNcbiAgICAvLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuICAgIC8vIENvbG9ycyBhbmQgaHVlIGFyZWFzXG4gICAgLnNwLXRvcCB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIH1cbiAgICAuc3AtY29sb3Ige1xuICAgICAgICByaWdodDogMjAlO1xuICAgIH1cbiAgICAuc3AtaHVlIHtcbiAgICAgICAgbGVmdDogODUlO1xuICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgfVxuICAgIC5zcC1jbGVhci1lbmFibGVkIC5zcC1odWUge1xuICAgICAgICB0b3A6IDIuNXJlbTtcbiAgICAgICAgaGVpZ2h0OiA3NSU7XG4gICAgfVxuICAgIC5zcC1maWxsIHtcbiAgICAgICAgcGFkZGluZy10b3A6IDgwJTtcbiAgICB9XG5cbiAgICAvLyBBbHBoYVxuICAgIC5zcC1hbHBoYS1lbmFibGVkIHtcbiAgICAgICAgLnNwLXRvcCB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxLjYyNXJlbTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5zcC1hbHBoYSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgfVxuICAgIH1cbiAgICAuc3AtYWxwaGEtaGFuZGxlIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IC0wLjI1cmVtO1xuICAgICAgICBib3R0b206IC0wLjI1cmVtO1xuICAgICAgICB3aWR0aDogMC4zMTI1cmVtO1xuICAgICAgICAvKnJ0bDppZ25vcmUqL1xuICAgICAgICBsZWZ0OiA1MCU7XG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgJGdyYXktNTAwO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG4gICAgICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGJvcmRlci1yYWRpdXMtbGcpO1xuICAgIH1cbiAgICAuc3AtYWxwaGEge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIGJvdHRvbTogLTFyZW07XG4gICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICBoZWlnaHQ6IDAuMzc1cmVtO1xuICAgIH1cblxuICAgIC8vIENsZWFyXG4gICAgLnNwLWNsZWFyIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG4gICAgLnNwLWNsZWFyLWRpc3BsYXkge1xuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG5cbiAgICAgICAgLy8gSWNvblxuICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgIGNvbnRlbnQ6ICdcXGVlNmUnO1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICBmb250LWZhbWlseTogJGljb24tZm9udC1mYW1pbHk7XG4gICAgICAgICAgICBmb250LXNpemU6ICRpY29uLWZvbnQtc2l6ZTtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjg3NXJlbTtcbiAgICAgICAgICAgIEBpbmNsdWRlIGxsLWZvbnQtc21vb3RoaW5nKCk7XG4gICAgICAgIH1cblxuICAgICAgICAvLyBIaWRlIGljb24gaW4gcHJldmlld3NcbiAgICAgICAgLnNwLXByZXZpZXcgJjphZnRlcixcbiAgICAgICAgLnNwLWluaXRpYWwgJjphZnRlciB7XG4gICAgICAgICAgICBjb250ZW50OiBub25lO1xuICAgICAgICB9XG4gICAgfVxuICAgIC5zcC1jbGVhci1lbmFibGVkIC5zcC1jbGVhciB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBsZWZ0OiA4NSU7XG4gICAgICAgIGhlaWdodDogMS44NzVyZW07XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgY29sb3I6ICRncmF5LTYwMDtcbiAgICAgICAgYm94LXNoYWRvdzogMCAwIDAgMXB4ICRncmF5LTQwMCBpbnNldDtcbiAgICB9XG5cbiAgICAvLyBJbnB1dFxuICAgIC5zcC1pbnB1dC1jb250YWluZXIge1xuICAgICAgICBtYXJnaW4tdG9wOiAwLjYyNXJlbTtcblxuICAgICAgICAuc3AtaW5pdGlhbC1kaXNhYmxlZCAmIHtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICB9XG4gICAgfVxuICAgIC5zcC1pbnB1dCB7XG4gICAgICAgIGJvcmRlcjogJGlucHV0LWJvcmRlci13aWR0aCBzb2xpZCAkaW5wdXQtYm9yZGVyLWNvbG9yO1xuICAgICAgICBwYWRkaW5nOiAkaW5wdXQtcGFkZGluZy15ICRpbnB1dC1wYWRkaW5nLXg7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaW5wdXQtYmc7XG4gICAgICAgIG91dGxpbmU6IDA7XG4gICAgICAgIGNvbG9yOiAkaW5wdXQtY29sb3I7XG4gICAgICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGlucHV0LWJvcmRlci1yYWRpdXMpO1xuICAgIH1cblxuICAgIC8vIEluaXRpYWxcbiAgICAuc3AtaW5pdGlhbCB7XG4gICAgICAgIG1hcmdpbi10b3A6IDAuNjI1cmVtO1xuXG4gICAgICAgIHNwYW4ge1xuICAgICAgICAgICAgd2lkdGg6IDUwJTtcbiAgICAgICAgICAgIGhlaWdodDogMS41NjNyZW07XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIGZsb2F0OiBsZWZ0O1xuXG4gICAgICAgICAgICAuc3AtdGh1bWItaW5uZXIge1xuICAgICAgICAgICAgICAgIGhlaWdodDogMS41NjNyZW07XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBEcmFnZ2VyIGFuZCBzbGlkZXJcbiAgICAuc3AtZHJhZ2dlciB7XG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICR3aGl0ZTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGdyYXktOTAwO1xuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICAvKnJ0bDppZ25vcmUqL1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cy1jaXJjbGU7XG4gICAgICAgIEBpbmNsdWRlIHNpemUoMC4zNzVyZW0pO1xuICAgIH1cbiAgICAuc3Atc2xpZGVyIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgaGVpZ2h0OiAwLjI1cmVtO1xuICAgICAgICBsZWZ0OiAtMC4xMjVyZW07XG4gICAgICAgIHJpZ2h0OiAtMC4xMjVyZW07XG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICRncmF5LTUwMDtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuICAgICAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRib3JkZXItcmFkaXVzKTtcbiAgICB9XG5cblxuICAgIC8vIENvbG9yIHByZXZpZXdcbiAgICAvLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuICAgIC8vIFJlcGxhY2VyICh0aGUgbGl0dGxlIHByZXZpZXcgZGl2IHRoYXQgc2hvd3MgdXAgaW5zdGVhZCBvZiB0aGUgPGlucHV0PilcbiAgICAuc3AtcmVwbGFjZXIge1xuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgIHBhZGRpbmc6IDAuMzEyNXJlbTtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICBib3JkZXI6ICRpbnB1dC1ib3JkZXItd2lkdGggc29saWQgJGlucHV0LWJvcmRlci1jb2xvcjtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGdyYXktMTAwO1xuICAgICAgICBjb2xvcjogJGdyYXktNjAwO1xuICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgICAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRib3JkZXItcmFkaXVzKTtcbiAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbihhbGwgZWFzZS1pbi1vdXQgJGNvbXBvbmVudC10cmFuc2l0aW9uLXRpbWVyKTtcblxuICAgICAgICAvLyBTdGF0ZXNcbiAgICAgICAgJjpub3QoW2NsYXNzKj1iZy1dKTpob3ZlcixcbiAgICAgICAgJjpub3QoW2NsYXNzKj1iZy1dKS5zcC1hY3RpdmUge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGdyYXktMjAwO1xuICAgICAgICAgICAgY29sb3I6ICRib2R5LWNvbG9yO1xuICAgICAgICB9XG5cbiAgICAgICAgLy8gQ3VzdG9tIGNvbG9yIHJlcGxhY2VyXG4gICAgICAgICZbY2xhc3MqPWJnLV0ge1xuICAgICAgICAgICAgQGluY2x1ZGUgcGxhaW4taG92ZXItZm9jdXMge1xuICAgICAgICAgICAgICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBEaXNhYmxlZCBzdGF0ZVxuICAgIC5zcC1yZXBsYWNlciB7XG4gICAgICAgICYuc3AtZGlzYWJsZWQge1xuICAgICAgICAgICAgY3Vyc29yOiBkZWZhdWx0O1xuICAgICAgICAgICAgb3BhY2l0eTogMC44O1xuXG4gICAgICAgICAgICBAaW5jbHVkZSBob3Zlci1mb2N1cyB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGdyYXktMTAwO1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkZ3JheS02MDA7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBDb2xvciBwcmV2aWV3XG4gICAgLnNwLXByZXZpZXcge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIHdpZHRoOiAxLjYyNXJlbTtcbiAgICAgICAgaGVpZ2h0OiAxLjVyZW07XG4gICAgICAgIG1hcmdpbi1yaWdodDogMC4zMTI1cmVtO1xuICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgei1pbmRleDogMDtcblxuICAgICAgICAmLFxuICAgICAgICAuc3AtcHJldmlldy1pbm5lciB7XG4gICAgICAgICAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRib3JkZXItcmFkaXVzKTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5zcC1wcmV2aWV3LWlubmVyLFxuICAgICAgICAuc3AtY2xlYXItZGlzcGxheSB7XG4gICAgICAgICAgICBib3gtc2hhZG93OiAwIDAgMCAxcHggcmdiYSgkYmxhY2ssIDAuMDUpO1xuICAgICAgICB9XG5cbiAgICAgICAgLnNwLXJlcGxhY2VyW2NsYXNzKj1iZy1dICYge1xuICAgICAgICAgICAgLnNwLXByZXZpZXctaW5uZXIge1xuICAgICAgICAgICAgICAgIGJveC1zaGFkb3c6IDAgMCAwIDFweCByZ2JhKCRibGFjaywgMC41KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8vIEFycm93XG4gICAgLnNwLWRkIHtcbiAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgIGZvbnQtc2l6ZTogMDtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBtYXJnaW46IDAuMjVyZW07XG5cbiAgICAgICAgLy8gQXJyb3cgaWNvblxuICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgIGNvbnRlbnQ6ICdcXGU5YzUnO1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICBmb250LWZhbWlseTogJGljb24tZm9udC1mYW1pbHk7XG4gICAgICAgICAgICBmb250LXNpemU6ICRpY29uLWZvbnQtc2l6ZTtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgICAgICAgICAgQGluY2x1ZGUgbGwtZm9udC1zbW9vdGhpbmcoKTtcbiAgICAgICAgfVxuICAgIH1cblxuXG4gICAgLy8gR3JhZGllbnRzXG4gICAgLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbiAgICAvLyBHcmFkaWVudHMgZm9yIGh1ZSwgc2F0dXJhdGlvbiBhbmQgdmFsdWUgaW5zdGVhZCBvZiBpbWFnZXMuICBOb3QgcHJldHR5Li4uIGJ1dCBpdCB3b3Jrc1xuICAgIC8qcnRsOmJlZ2luOmlnbm9yZSovXG4gICAgLnNwLXNhdCB7XG4gICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IC13ZWJraXQtZ3JhZGllbnQobGluZWFyLCAgMCAwLCAxMDAlIDAsIGZyb20oI0ZGRiksIHRvKHJnYmEoMjA0LCAxNTQsIDEyOSwgMCkpKTtcbiAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogLXdlYmtpdC1saW5lYXItZ3JhZGllbnQobGVmdCwgI0ZGRiwgcmdiYSgyMDQsIDE1NCwgMTI5LCAwKSk7XG4gICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IC1tb3otbGluZWFyLWdyYWRpZW50KGxlZnQsICNmZmYsIHJnYmEoMjA0LCAxNTQsIDEyOSwgMCkpO1xuICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiAtby1saW5lYXItZ3JhZGllbnQobGVmdCwgI2ZmZiwgcmdiYSgyMDQsIDE1NCwgMTI5LCAwKSk7XG4gICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IC1tcy1saW5lYXItZ3JhZGllbnQobGVmdCwgI2ZmZiwgcmdiYSgyMDQsIDE1NCwgMTI5LCAwKSk7XG4gICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCh0byByaWdodCwgI2ZmZiwgcmdiYSgyMDQsIDE1NCwgMTI5LCAwKSk7XG4gICAgICAgIC1tcy1maWx0ZXI6IFwicHJvZ2lkOkRYSW1hZ2VUcmFuc2Zvcm0uTWljcm9zb2Z0LmdyYWRpZW50KEdyYWRpZW50VHlwZSA9IDEsIHN0YXJ0Q29sb3JzdHI9I0ZGRkZGRkZGLCBlbmRDb2xvcnN0cj0jMDBDQzlBODEpXCI7XG4gICAgICAgIGZpbHRlciA6IHByb2dpZDpEWEltYWdlVHJhbnNmb3JtLk1pY3Jvc29mdC5ncmFkaWVudChHcmFkaWVudFR5cGUgPSAxLCBzdGFydENvbG9yc3RyPScjRkZGRkZGRkYnLCBlbmRDb2xvcnN0cj0nIzAwQ0M5QTgxJyk7XG4gICAgICAgIGJveC1zaGFkb3c6IDAgMCAwIDFweCAkZ3JheS01MDAgaW5zZXQ7XG4gICAgfVxuICAgIC5zcC12YWwge1xuICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiAtd2Via2l0LWdyYWRpZW50KGxpbmVhciwgMCAxMDAlLCAwIDAsIGZyb20oIzAwMDAwMCksIHRvKHJnYmEoMjA0LCAxNTQsIDEyOSwgMCkpKTtcbiAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogLXdlYmtpdC1saW5lYXItZ3JhZGllbnQoYm90dG9tLCAjMDAwMDAwLCByZ2JhKDIwNCwgMTU0LCAxMjksIDApKTtcbiAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogLW1vei1saW5lYXItZ3JhZGllbnQoYm90dG9tLCAjMDAwLCByZ2JhKDIwNCwgMTU0LCAxMjksIDApKTtcbiAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogLW8tbGluZWFyLWdyYWRpZW50KGJvdHRvbSwgIzAwMCwgcmdiYSgyMDQsIDE1NCwgMTI5LCAwKSk7XG4gICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IC1tcy1saW5lYXItZ3JhZGllbnQoYm90dG9tLCAjMDAwLCByZ2JhKDIwNCwgMTU0LCAxMjksIDApKTtcbiAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHRvIHRvcCwgIzAwMCwgcmdiYSgyMDQsIDE1NCwgMTI5LCAwKSk7XG4gICAgICAgIC1tcy1maWx0ZXI6IFwicHJvZ2lkOkRYSW1hZ2VUcmFuc2Zvcm0uTWljcm9zb2Z0LmdyYWRpZW50KHN0YXJ0Q29sb3JzdHI9IzAwQ0M5QTgxLCBlbmRDb2xvcnN0cj0jRkYwMDAwMDApXCI7XG4gICAgICAgIGZpbHRlciA6IHByb2dpZDpEWEltYWdlVHJhbnNmb3JtLk1pY3Jvc29mdC5ncmFkaWVudChzdGFydENvbG9yc3RyPScjMDBDQzlBODEnLCBlbmRDb2xvcnN0cj0nI0ZGMDAwMDAwJyk7XG4gICAgfVxuICAgIC5zcC1odWUge1xuICAgICAgICBiYWNrZ3JvdW5kOiAtbW96LWxpbmVhci1ncmFkaWVudCh0b3AsICNmZjAwMDAgMCUsICNmZmZmMDAgMTclLCAjMDBmZjAwIDMzJSwgIzAwZmZmZiA1MCUsICMwMDAwZmYgNjclLCAjZmYwMGZmIDgzJSwgI2ZmMDAwMCAxMDAlKTtcbiAgICAgICAgYmFja2dyb3VuZDogLW1zLWxpbmVhci1ncmFkaWVudCh0b3AsICNmZjAwMDAgMCUsICNmZmZmMDAgMTclLCAjMDBmZjAwIDMzJSwgIzAwZmZmZiA1MCUsICMwMDAwZmYgNjclLCAjZmYwMGZmIDgzJSwgI2ZmMDAwMCAxMDAlKTtcbiAgICAgICAgYmFja2dyb3VuZDogLW8tbGluZWFyLWdyYWRpZW50KHRvcCwgI2ZmMDAwMCAwJSwgI2ZmZmYwMCAxNyUsICMwMGZmMDAgMzMlLCAjMDBmZmZmIDUwJSwgIzAwMDBmZiA2NyUsICNmZjAwZmYgODMlLCAjZmYwMDAwIDEwMCUpO1xuICAgICAgICBiYWNrZ3JvdW5kOiAtd2Via2l0LWdyYWRpZW50KGxpbmVhciwgbGVmdCB0b3AsIGxlZnQgYm90dG9tLCBmcm9tKCNmZjAwMDApLCBjb2xvci1zdG9wKDAuMTcsICNmZmZmMDApLCBjb2xvci1zdG9wKDAuMzMsICMwMGZmMDApLCBjb2xvci1zdG9wKDAuNSwgIzAwZmZmZiksIGNvbG9yLXN0b3AoMC42NywgIzAwMDBmZiksIGNvbG9yLXN0b3AoMC44MywgI2ZmMDBmZiksIHRvKCNmZjAwMDApKTtcbiAgICAgICAgYmFja2dyb3VuZDogLXdlYmtpdC1saW5lYXItZ3JhZGllbnQodG9wLCAjZmYwMDAwIDAlLCAjZmZmZjAwIDE3JSwgIzAwZmYwMCAzMyUsICMwMGZmZmYgNTAlLCAjMDAwMGZmIDY3JSwgI2ZmMDBmZiA4MyUsICNmZjAwMDAgMTAwJSk7XG4gICAgICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCh0byBib3R0b20sICNmZjAwMDAgMCUsICNmZmZmMDAgMTclLCAjMDBmZjAwIDMzJSwgIzAwZmZmZiA1MCUsICMwMDAwZmYgNjclLCAjZmYwMGZmIDgzJSwgI2ZmMDAwMCAxMDAlKTtcbiAgICB9XG4gICAgLypydGw6ZW5kOmlnbm9yZSovXG5cblxuICAgIC8vXG4gICAgLy8gSUUgZmlsdGVycyBkbyBub3Qgc3VwcG9ydCBtdWx0aXBsZSBjb2xvciBzdG9wcy5cbiAgICAvLyBHZW5lcmF0ZSA2IGRpdnMsIGxpbmUgdGhlbSB1cCwgYW5kIGRvIHR3byBjb2xvciBncmFkaWVudHMgZm9yIGVhY2guXG4gICAgLy8gWWVzLCByZWFsbHkuXG4gICAgLy9cblxuICAgIC8qcnRsOmJlZ2luOmlnbm9yZSovXG4gICAgLnNwLTEge1xuICAgICAgICBoZWlnaHQ6IDE3JTtcbiAgICAgICAgZmlsdGVyOiBwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuZ3JhZGllbnQoc3RhcnRDb2xvcnN0cj0nI2ZmMDAwMCcsIGVuZENvbG9yc3RyPScjZmZmZjAwJyk7XG4gICAgfVxuICAgIC5zcC0yIHtcbiAgICAgICAgaGVpZ2h0OiAxNiU7XG4gICAgICAgIGZpbHRlcjogcHJvZ2lkOkRYSW1hZ2VUcmFuc2Zvcm0uTWljcm9zb2Z0LmdyYWRpZW50KHN0YXJ0Q29sb3JzdHI9JyNmZmZmMDAnLCBlbmRDb2xvcnN0cj0nIzAwZmYwMCcpO1xuICAgIH1cbiAgICAuc3AtMyB7XG4gICAgICAgIGhlaWdodDogMTclO1xuICAgICAgICBmaWx0ZXI6IHByb2dpZDpEWEltYWdlVHJhbnNmb3JtLk1pY3Jvc29mdC5ncmFkaWVudChzdGFydENvbG9yc3RyPScjMDBmZjAwJywgZW5kQ29sb3JzdHI9JyMwMGZmZmYnKTtcbiAgICB9XG4gICAgLnNwLTQge1xuICAgICAgICBoZWlnaHQ6IDE3JTtcbiAgICAgICAgZmlsdGVyOiBwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuZ3JhZGllbnQoc3RhcnRDb2xvcnN0cj0nIzAwZmZmZicsIGVuZENvbG9yc3RyPScjMDAwMGZmJyk7XG4gICAgfVxuICAgIC5zcC01IHtcbiAgICAgICAgaGVpZ2h0OiAxNiU7XG4gICAgICAgIGZpbHRlcjogcHJvZ2lkOkRYSW1hZ2VUcmFuc2Zvcm0uTWljcm9zb2Z0LmdyYWRpZW50KHN0YXJ0Q29sb3JzdHI9JyMwMDAwZmYnLCBlbmRDb2xvcnN0cj0nI2ZmMDBmZicpO1xuICAgIH1cbiAgICAuc3AtNiB7XG4gICAgICAgIGhlaWdodDogMTclO1xuICAgICAgICBmaWx0ZXI6IHByb2dpZDpEWEltYWdlVHJhbnNmb3JtLk1pY3Jvc29mdC5ncmFkaWVudChzdGFydENvbG9yc3RyPScjZmYwMGZmJywgZW5kQ29sb3JzdHI9JyNmZjAwMDAnKTtcbiAgICB9XG4gICAgLypydGw6ZW5kOmlnbm9yZSovXG5cblxuICAgIC8vIENvbG9yIHBhbGV0dGVzXG4gICAgLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbiAgICAvLyBCYXNpYyBzdHlsZXNcbiAgICAuc3AtcGFsZXR0ZSB7XG4gICAgICAgIG1heC13aWR0aDogJHNwZWN0cnVtLW1heC13aWR0aDtcbiAgICB9XG5cbiAgICAvLyBQYWxldHRlIHRodW1ic1xuICAgIC5zcC10aHVtYi1lbCB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICAgICAuc3AtcGFsZXR0ZSAmIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgfVxuXG4gICAgICAgIC8vIEFkZCAxcHggaW5uZXIgc2VtaS10cmFuc3BhcmVudCBib3JkZXJcbiAgICAgICAgLnNwLXRodW1iLWlubmVyIHtcbiAgICAgICAgICAgIGJveC1zaGFkb3c6IDAgMCAwIDFweCByZ2JhKCRibGFjaywgMC4xKSBpbnNldDtcblxuICAgICAgICAgICAgQGluY2x1ZGUgaG92ZXIge1xuICAgICAgICAgICAgICAgIGJveC1zaGFkb3c6IDAgMCAwIDFweCByZ2JhKCRibGFjaywgMC4yNSkgaW5zZXQ7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuc3AtcGFsZXR0ZSAmIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIHNpemUoMXJlbSk7XG5cbiAgICAgICAgICAgICsgLnNwLXRodW1iLWVsIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogMC4zMTI1cmVtO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmLnNwLXRodW1iLWFjdGl2ZSB7XG4gICAgICAgICAgICAgICAgYm94LXNoYWRvdzogMCAwIDAgMnB4IHJnYmEoJGJsYWNrLCAwLjEpIGluc2V0O1xuXG4gICAgICAgICAgICAgICAgLnNwLXRodW1iLWlubmVyIHtcbiAgICAgICAgICAgICAgICAgICAgYm94LXNoYWRvdzogMCAwIDAgMXB4IHJnYmEoJGJsYWNrLCAwLjI1KSBpbnNldDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBBZGRpbmcgY2hlY2ttYXJrIHRvIHRoZSBhY3RpdmUgdGh1bWJcbiAgICAuc3AtcGFsZXR0ZSB7XG4gICAgICAgIC5zcC10aHVtYi1hY3RpdmUge1xuICAgICAgICAgICAgJi5zcC10aHVtYi1kYXJrLFxuICAgICAgICAgICAgJi5zcC10aHVtYi1saWdodCB7XG4gICAgICAgICAgICAgICAgLnNwLXRodW1iLWlubmVyIHtcbiAgICAgICAgICAgICAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb250ZW50OiAnXFxlNjAwJztcbiAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1mYW1pbHk6ICRpY29uLWZvbnQtZmFtaWx5O1xuICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAkaWNvbi1mb250LXNpemU7XG4gICAgICAgICAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBsbC1mb250LXNtb290aGluZygpO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmLnNwLXRodW1iLWxpZ2h0IC5zcC10aHVtYi1pbm5lcjphZnRlciB7XG4gICAgICAgICAgICAgICAgY29sb3I6ICRib2R5LWNvbG9yO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLy8gVGh1bWJuYWlsIHJvd1xuICAgIC5zcC1wYWxldHRlLXJvdyB7XG4gICAgICAgIGZvbnQtc2l6ZTogMDtcblxuICAgICAgICAmICsgLnNwLXBhbGV0dGUtcm93IHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDAuMzEyNXJlbTtcbiAgICAgICAgfVxuXG4gICAgICAgICY6ZW1wdHkge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgICAgfVxuICAgIH1cblxuXG4gICAgLy8gUGlja2VyIGJ1dHRvbnNcbiAgICAvLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuICAgIC8vIEJ1dHRvbiBiYXNlXG4gICAgLnNwLWNhbmNlbCxcbiAgICAuc3AtY2hvb3NlLFxuICAgIC5zcC1wYWxldHRlLXRvZ2dsZSB7XG4gICAgICAgIGJvcmRlcjogMDtcbiAgICAgICAgcGFkZGluZzogJGJ0bi1wYWRkaW5nLXkgJGJ0bi1wYWRkaW5nLXg7XG4gICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICB3aWR0aDogNDglO1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkYnRuLWJvcmRlci1yYWRpdXMpO1xuICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKGFsbCBlYXNlLWluLW91dCAkY29tcG9uZW50LXRyYW5zaXRpb24tdGltZXIpO1xuXG4gICAgICAgICY6Zm9jdXMge1xuICAgICAgICAgICAgb3V0bGluZTogMDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8vIEJ1dHRvbiBjb250YWluZXJzXG4gICAgLnNwLXBhbGV0dGUtYnV0dG9uLWNvbnRhaW5lcixcbiAgICAuc3AtYnV0dG9uLWNvbnRhaW5lciB7XG4gICAgICAgIG1hcmdpbi10b3A6ICgkc3BhY2VyIC8gMik7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICAgICAgICAvLyBJbiBjb2xvcmVkIGNvbnRhaW5lclxuICAgICAgICAuc3AtY29udGFpbmVyW2NsYXNzKj1iZy1dICYge1xuICAgICAgICAgICAgYSxcbiAgICAgICAgICAgIGJ1dHRvbiB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgkYmxhY2ssIDAuMjUpO1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLnNwLWNhbmNlbCxcbiAgICAgICAgICAgIC5zcC1wYWxldHRlLXRvZ2dsZSB7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgaG92ZXItZm9jdXMge1xuICAgICAgICAgICAgICAgICAgICBib3gtc2hhZG93OiAkYnRuLWRhcmstaG92ZXItYm94LXNoYWRvdztcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBCdXR0b24gc3RhdGVzXG4gICAgLnNwLWNhbmNlbCxcbiAgICAuc3AtcGFsZXR0ZS10b2dnbGUge1xuICAgICAgICBib3JkZXI6ICRidG4tYm9yZGVyLXdpZHRoIHNvbGlkIHRyYW5zcGFyZW50O1xuXG4gICAgICAgIC8vIEhvdmVyIHN0YXRlXG4gICAgICAgIEBpbmNsdWRlIGhvdmVyLWZvY3VzIHtcbiAgICAgICAgICAgIGNvbG9yOiAkYnRuLWxpZ2h0LWhvdmVyLWNvbG9yO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGJ0bi1saWdodC1ob3Zlci1iZztcbiAgICAgICAgICAgIGJvcmRlci1jb2xvcjogJGJ0bi1saWdodC1ob3Zlci1ib3JkZXItY29sb3I7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBDaG9vc2UgYnV0dG9uXG4gICAgLnNwLWNob29zZSB7XG4gICAgICAgIGJvcmRlcjogJGJ0bi1ib3JkZXItd2lkdGggc29saWQgdHJhbnNwYXJlbnQ7XG5cbiAgICAgICAgLy8gSG92ZXIgc3RhdGVcbiAgICAgICAgQGluY2x1ZGUgaG92ZXItZm9jdXMge1xuICAgICAgICAgICAgYm94LXNoYWRvdzogJGJ0bi1kYXJrLWhvdmVyLWJveC1zaGFkb3c7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBDYW5jZWwgYW5kIHBhbGV0dGUgdG9nZ2xlIGJ1dHRvbnNcbiAgICAuc3AtY2FuY2VsLFxuICAgIC5zcC1wYWxldHRlLXRvZ2dsZSB7XG4gICAgICAgIGNvbG9yOiAkYnRuLWxpZ2h0LWNvbG9yO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDAuMzEyNXJlbTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGJ0bi1saWdodC1iZztcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiA0JTtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAkYnRuLWxpZ2h0LWJvcmRlci1jb2xvcjtcblxuICAgICAgICBAaW5jbHVkZSBob3Zlci1mb2N1cyB7XG4gICAgICAgICAgICBjb2xvcjogJGJ0bi1saWdodC1jb2xvcjtcbiAgICAgICAgfVxuICAgIH1cbiAgICAuc3AtcGFsZXR0ZS10b2dnbGUge1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgICBmbG9hdDogbm9uZTtcbiAgICB9XG5cbiAgICAvLyBDaG9vc2UgYnV0dG9uXG4gICAgLnNwLWNob29zZSB7XG4gICAgICAgIGNvbG9yOiAkc3BlY3RydW0tY2hvb3NlLWJ0bi1jb2xvcjtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHNwZWN0cnVtLWNob29zZS1idG4tYmc7XG4gICAgfVxufVxuIiwiLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gKlxuICogICMgUGx1cGxvYWQgbXVsdGlwbGUgZmlsZSB1cGxvYWRlclxuICpcbiAqICBTdHlsZXMgZm9yIHBsdXBsb2FkLm1pbi5qcyAtIG11bHRpIHJ1bnRpbWUgc2luZ2xlIGFuZCBtdWx0aXBsZSBmaWxlIHVwbG9hZGVyXG4gKlxuICogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuXG4vLyBDaGVjayBpZiBjb21wb25lbnQgaXMgZW5hYmxlZFxuQGlmICRlbmFibGUtcGx1cGxvYWQge1xuXG5cblx0Ly8gTGF5b3V0XG5cdC8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG5cdC8vIFdyYXBwZXJcblx0LnBsdXBsb2FkX3dyYXBwZXIge1xuXHRcdGJhY2tncm91bmQtY29sb3I6ICRwbHVwbG9hZC1iZztcblx0XHRib3JkZXI6ICRwbHVwbG9hZC1ib3JkZXItd2lkdGggJHBsdXBsb2FkLWJvcmRlci1zdHlsZSAkcGx1cGxvYWQtYm9yZGVyLWNvbG9yO1xuXHRcdEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGJvcmRlci1yYWRpdXMpO1xuXHR9XG5cblx0Ly8gQ29tbW9uIGljb24gc3R5bGVzXG5cdC5wbHVwbG9hZF9oZWFkZXI6YWZ0ZXIsXG5cdC5wbHVwbG9hZF9maWxlbGlzdDplbXB0eTpiZWZvcmUsXG5cdC5wbHVwbG9hZF9maWxlbGlzdCBsaS5wbHVwbG9hZF9kcm9wdGV4dDpiZWZvcmUsXG5cdC5wbHVwbG9hZF9maWxlX2FjdGlvbjphZnRlcixcblx0LnBsdXBsb2FkX2RlbGV0ZSBhOmFmdGVyLFxuXHQucGx1cGxvYWRfZmFpbGVkIGE6YWZ0ZXIsXG5cdC5wbHVwbG9hZF9kb25lIGE6YWZ0ZXIge1xuXHRcdGZvbnQtZmFtaWx5OiAkaWNvbi1mb250LWZhbWlseTtcblx0XHRkaXNwbGF5OiBibG9jaztcblx0XHRmb250LXNpemU6ICRpY29uLWZvbnQtc2l6ZTtcblx0XHRsaW5lLWhlaWdodDogMTtcblx0XHRAaW5jbHVkZSBsbC1mb250LXNtb290aGluZygpO1xuXHR9XG5cblx0Ly8gSGVhZGVyIChoaWRkZW4gYnkgZGVmYXVsdClcblx0LnBsdXBsb2FkX2hlYWRlciB7XG5cdFx0ZGlzcGxheTogbm9uZTtcblx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdFx0YmFja2dyb3VuZC1jb2xvcjogJHBsdXBsb2FkLWhlYWRlci1iZztcblx0XHRjb2xvcjogJHBsdXBsb2FkLWhlYWRlci1jb2xvcjtcblx0XHRtYXJnaW46IC0oJHBsdXBsb2FkLWJvcmRlci13aWR0aCkgLSgkcGx1cGxvYWQtYm9yZGVyLXdpZHRoKSAwIC0oJHBsdXBsb2FkLWJvcmRlci13aWR0aCk7XG5cdFx0QGluY2x1ZGUgYm9yZGVyLXRvcC1yYWRpdXMoJGJvcmRlci1yYWRpdXMpO1xuXG5cdFx0Ly8gSWNvblxuXHRcdCY6YWZ0ZXIge1xuXHRcdFx0Y29udGVudDogJ1xcZWM3OCc7XG5cdFx0XHRmb250LXNpemU6ICgkaWNvbi1mb250LXNpemUgKiAyKTtcblx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRcdHRvcDogNTAlO1xuXHRcdFx0bGVmdDogJGNhcmQtc3BhY2VyLXg7XG5cdFx0XHRtYXJnaW4tdG9wOiAtKCRpY29uLWZvbnQtc2l6ZSk7XG5cdFx0fVxuXHR9XG5cdC5wbHVwbG9hZF9oZWFkZXJfY29udGVudCB7XG5cdFx0cGFkZGluZzogJGNhcmQtc3BhY2VyLXkgJGNhcmQtc3BhY2VyLXg7XG5cdFx0cGFkZGluZy1sZWZ0OiAoKCRjYXJkLXNwYWNlci14ICogMikgKyAoJGljb24tZm9udC1zaXplICogMikpO1xuXHR9XG5cdC5wbHVwbG9hZF9oZWFkZXJfdGl0bGUge1xuXHRcdGZvbnQtc2l6ZTogJGg2LWZvbnQtc2l6ZTtcblx0XHRmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LXNlbWlib2xkO1xuXHR9XG5cdC5wbHVwbG9hZF9oZWFkZXJfdGV4dCB7XG5cdFx0Zm9udC1zaXplOiAkZm9udC1zaXplLXNtO1xuXHRcdGxpbmUtaGVpZ2h0OiAkbGluZS1oZWlnaHQtc207XG5cdH1cblxuXHQvLyBIZWxwZXJzXG5cdC5wbHVwbG9hZF9jbGVhcixcblx0LnBsdXBsb2FkX2NsZWFyZXIge1xuXHRcdGNsZWFyOiBib3RoO1xuXHR9XG5cdC5wbHVwbG9hZF9jbGVhcmVyLFxuXHQucGx1cGxvYWRfcHJvZ3Jlc3NfYmFyIHtcblx0XHRkaXNwbGF5OiBibG9jaztcblx0XHRmb250LXNpemU6IDA7XG5cdFx0bGluZS1oZWlnaHQ6IDA7XG5cdH1cblxuXG5cdC8vIEJ1dHRvbnNcblx0Ly8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cblx0Ly8gQnV0dG9ucyBiYXNlXG5cdC5wbHVwbG9hZF9idXR0b24geyBcblx0XHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cdFx0Ym9yZGVyOiAkYnRuLWJvcmRlci13aWR0aCBzb2xpZCB0cmFuc3BhcmVudDtcblx0XHRmb250LXdlaWdodDogJGJ0bi1mb250LXdlaWdodDtcblx0XHRAaW5jbHVkZSBidXR0b24tc2l6ZSgkYnRuLXBhZGRpbmcteSwgJGJ0bi1wYWRkaW5nLXgsICRmb250LXNpemUtYmFzZSwgJGJ0bi1saW5lLWhlaWdodCwgJGJ0bi1ib3JkZXItcmFkaXVzKTtcblx0XHRAaW5jbHVkZSB0cmFuc2l0aW9uKCRidG4tdHJhbnNpdGlvbik7XG5cblx0XHQvLyBCdXR0b24gc3BhY2VyXG5cdFx0Jjpub3QoOmxhc3QtY2hpbGQpIHtcblx0XHRcdG1hcmdpbi1yaWdodDogJGVsZW1lbnQtc3BhY2VyLXg7XG5cdFx0fVxuXHR9XG5cblx0Ly8gQWRkIGZpbGVzIGJ1dHRvblxuXHQucGx1cGxvYWRfYWRkIHtcblx0XHRjb2xvcjogJGJ0bi1saWdodC1jb2xvcjtcblx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkYnRuLWxpZ2h0LWJnO1xuXHRcdGJvcmRlci1jb2xvcjogJGJ0bi1saWdodC1ib3JkZXItY29sb3I7XG5cblx0XHQvLyBIb3ZlciBzdGF0ZVxuXHRcdEBpbmNsdWRlIGhvdmVyIHtcblx0XHRcdGNvbG9yOiAkYnRuLWxpZ2h0LWhvdmVyLWNvbG9yO1xuXHRcdFx0YmFja2dyb3VuZC1jb2xvcjogJGJ0bi1saWdodC1ob3Zlci1iZztcblx0XHRcdGJvcmRlci1jb2xvcjogJGJ0bi1saWdodC1ob3Zlci1ib3JkZXItY29sb3I7XG5cdFx0fVxuXHR9XG5cblx0Ly8gU3RhcnQgdXBsb2FkIGJ1dHRvblxuXHQucGx1cGxvYWRfc3RhcnQge1xuXHRcdGNvbG9yOiAkcGx1cGxvYWQtYnRuLXN0YXJ0LWNvbG9yO1xuXHRcdGJhY2tncm91bmQtY29sb3I6ICRwbHVwbG9hZC1idG4tc3RhcnQtYmc7XG5cdFx0Ym9yZGVyLWNvbG9yOiAkcGx1cGxvYWQtYnRuLXN0YXJ0LWJvcmRlci1jb2xvcjtcblxuXHRcdC8vIEhvdmVyIHN0YXRlXG5cdFx0QGluY2x1ZGUgaG92ZXIge1xuXHRcdFx0Y29sb3I6ICRwbHVwbG9hZC1idG4tc3RhcnQtY29sb3I7XG5cdFx0XHRib3gtc2hhZG93OiAkYnRuLWRhcmstaG92ZXItYm94LXNoYWRvdztcblx0XHR9XG5cdH1cblx0Ly8gRGlzYWJsZWQgYnV0dG9uXG5cdGEucGx1cGxvYWRfZGlzYWJsZWQge1xuXHRcdGN1cnNvcjogZGVmYXVsdDtcblx0XHRvcGFjaXR5OiAkYnRuLWRpc2FibGVkLW9wYWNpdHk7XG5cblx0XHQvLyBIb3ZlciBzdGF0ZVxuXHRcdEBpbmNsdWRlIGhvdmVyIHtcdFx0XG5cdFx0XHRib3gtc2hhZG93OiBub25lO1xuXHRcdH1cblx0fVxuXG5cblx0Ly8gRmlsZSBsaXN0XG5cdC8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG5cdC8vIEl0c2VsZlxuXHQucGx1cGxvYWRfZmlsZWxpc3Qge1xuXHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0XHRtYXJnaW46IDA7XG5cdFx0cGFkZGluZzogMDtcblx0XHRsaXN0LXN0eWxlOiBub25lO1xuXG5cdFx0Ly8gU2Nyb2xsYWJsZSBhcmVhXG5cdFx0LnBsdXBsb2FkX3Njcm9sbCAmIHtcblx0XHRcdGhlaWdodDogJHBsdXBsb2FkLW1heC1oZWlnaHQ7XG5cdFx0XHRvdmVyZmxvdy15OiBhdXRvO1xuXHRcdH1cblxuXHRcdC8vIExpc3QgaXRlbVxuXHRcdGxpIHtcblx0XHRcdGRpc3BsYXk6IGZsZXg7XG5cdFx0XHRhbGlnbi1pdGVtczogY2VudGVyO1xuXHRcdFx0cGFkZGluZzogJGRyb3Bkb3duLWl0ZW0tcGFkZGluZy15ICRjYXJkLXNwYWNlci14O1xuXHRcdFx0QGluY2x1ZGUgdHJhbnNpdGlvbihhbGwgZWFzZS1pbi1vdXQgJGNvbXBvbmVudC10cmFuc2l0aW9uLXRpbWVyKTtcblxuXHRcdFx0Ly8gSG92ZXIgc3RhdGVcblx0XHRcdEBpbmNsdWRlIGhvdmVyIHtcblx0XHRcdFx0YmFja2dyb3VuZC1jb2xvcjogJGRyb3Bkb3duLWxpbmstaG92ZXItYmc7XG5cdFx0XHR9XG5cblx0XHRcdC8vIEZpbGUgaW5mb1xuXHRcdFx0LnBsdXBsb2FkX2ZpbGVfbmFtZSB7XG5cdFx0XHRcdG1hcmdpbi1yaWdodDogYXV0bztcblx0XHRcdH1cblxuXHRcdFx0Ly8gT3JkZXJpbmdcblx0XHRcdC5wbHVwbG9hZF9maWxlX2FjdGlvbiB7XG5cdFx0XHRcdG9yZGVyOiAxMjtcblx0XHRcdH1cblx0XHRcdC5wbHVwbG9hZF9maWxlX3N0YXR1cyB7XG5cdFx0XHRcdG9yZGVyOiAxMTtcblx0XHRcdH1cblx0XHRcdC5wbHVwbG9hZF9maWxlX3NpemUge1xuXHRcdFx0XHRvcmRlcjogMTA7XG5cdFx0XHR9XG5cdFx0fVxuXG5cdFx0Ly8gQWRkIGJhY2tncm91bmQgaWNvbiB3aXRoIHRleHRcblx0XHQmOmVtcHR5LFxuXHRcdGxpLnBsdXBsb2FkX2Ryb3B0ZXh0IHtcblx0XHRcdGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuXHRcdFx0Zm9udC1zaXplOiAwO1xuXG5cdFx0XHQvLyBJY29uXG5cdFx0XHQmOmJlZm9yZSB7XG5cdFx0XHRcdGNvbnRlbnQ6ICdcXGVhMGUnO1xuXHRcdFx0XHRmb250LXNpemU6ICgkaWNvbi1mb250LXNpemUgKiA1KTtcblx0XHRcdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdFx0XHR0b3A6IDUwJTtcblx0XHRcdFx0bGVmdDogNTAlO1xuXHRcdFx0XHRtYXJnaW4tdG9wOiAtKCRzcGFjZXIpO1xuXHRcdFx0XHR6LWluZGV4OiAyO1xuXHRcdFx0XHRjb2xvcjogJHBsdXBsb2FkLXBsYWNlaG9sZGVyLWljb24tY29sb3I7XG5cdFx0XHRcdHRleHQtaW5kZW50OiAwO1xuXHRcdFx0XHRmb250LXdlaWdodDogbm9ybWFsO1xuXHRcdFx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcblx0XHRcdCAgICBAaW5jbHVkZSBsbC1mb250LXNtb290aGluZygpO1xuXHRcdFx0fVxuXG5cdFx0XHQvLyBUZXh0IGxhYmVsXG5cdFx0XHQmOmFmdGVyIHtcblx0XHRcdFx0Y29udGVudDogJ0RyYWcgZmlsZXMgdG8gdXBsb2FkJztcblx0XHRcdFx0Zm9udC1zaXplOiAkaDUtZm9udC1zaXplO1xuXHRcdFx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0XHRcdHRvcDogNTAlO1xuXHRcdFx0XHRsZWZ0OiA1MCU7XG5cdFx0XHRcdG1hcmdpbi10b3A6ICgkaWNvbi1mb250LXNpemUgKiAyLjUpICsgJHNwYWNlcjtcblx0XHRcdFx0Y29sb3I6ICRwbHVwbG9hZC1wbGFjZWhvbGRlci10ZXh0LWNvbG9yO1xuXHRcdFx0XHR0ZXh0LWluZGVudDogMDtcblx0XHRcdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG5cdFx0XHR9XG5cdFx0fVxuXHRcdCY6ZW1wdHk6YWZ0ZXIge1xuXHRcdFx0Y29udGVudDogJ0FkZCBmaWxlcyB0byB1cGxvYWQnO1xuXHRcdH1cblxuXHRcdC8vIE9uIHNtYWxsIHNjcmVlbnNcblx0XHRAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oc20pIHtcblx0XHRcdHBhZGRpbmc6ICgkc3BhY2VyIC8gMikgMDtcblxuXHRcdFx0Ly8gRmlsZSBzaXplXG5cdFx0XHRsaSB7XG5cdFx0XHRcdC5wbHVwbG9hZF9maWxlX3NpemUge1xuXHRcdFx0XHRcdGRpc3BsYXk6IG5vbmU7XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHR9XG5cdH1cblxuXHQvLyBIZWFkZXJcblx0LnBsdXBsb2FkX2ZpbGVsaXN0X2hlYWRlciB7XG5cdFx0cGFkZGluZzogJGNhcmQtc3BhY2VyLXkgJGNhcmQtc3BhY2VyLXg7XG5cblx0XHQvLyBGaWxlIGluZm9cblx0XHQucGx1cGxvYWRfZmlsZV9uYW1lLFxuXHRcdC5wbHVwbG9hZF9maWxlX3NpemUsXG5cdFx0LnBsdXBsb2FkX2ZpbGVfc3RhdHVzLFxuXHRcdC5wbHVwbG9hZF9maWxlX2FjdGlvbiB7XG5cdFx0ICBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LXNlbWlib2xkO1xuXHRcdH1cblxuXHRcdC8vIEhpZGUgb24gc21hbGwgc2NyZWVuXG5cdFx0QGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKHNtKSB7XG5cdFx0XHRkaXNwbGF5OiBub25lO1xuXHRcdH1cblx0fVxuXG5cdC8vIEZvb3RlclxuXHQucGx1cGxvYWRfZmlsZWxpc3RfZm9vdGVyIHtcblx0XHRwYWRkaW5nOiAkY2FyZC1zcGFjZXIteSAkY2FyZC1zcGFjZXIteDtcblxuXHRcdC8vIEZpbGUgaW5mb1xuXHRcdC5wbHVwbG9hZF9maWxlX3NpemUsXG5cdFx0LnBsdXBsb2FkX2ZpbGVfc3RhdHVzLFxuXHRcdC5wbHVwbG9hZF91cGxvYWRfc3RhdHVzIHsgXG5cdFx0ICBwYWRkaW5nOiAkYnRuLXBhZGRpbmcteSAwO1xuXHRcdCAgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1zZW1pYm9sZDtcblx0XHR9XG5cblx0XHQvLyBPbiBzbWFsbCBzY3JlZW5cblx0XHRAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oc20pIHtcblx0XHRcdHRleHQtYWxpZ246IGNlbnRlcjtcblxuXHRcdFx0Ly8gSGlkZSBhbGwgZmlsZSBpbmZvXG5cdFx0XHQucGx1cGxvYWRfZmlsZV9hY3Rpb24sIFxuXHRcdFx0LnBsdXBsb2FkX2ZpbGVfc3RhdHVzLCBcblx0XHRcdC5wbHVwbG9hZF9maWxlX3NpemUgeyBcblx0XHRcdFx0ZGlzcGxheTogbm9uZTsgXG5cdFx0XHR9XG5cblx0XHRcdC8vIENlbnRlciBwcm9ncmVzcyBiYXJcblx0XHRcdC5wbHVwbG9hZF9wcm9ncmVzcyB7XG5cdFx0XHRcdG1hcmdpbjogYXV0bztcblx0XHRcdH1cblx0XHR9XG5cdH1cblxuXHQvLyBIZWFkZXIgYW5kIGZvb3RlclxuXHQucGx1cGxvYWRfZmlsZWxpc3RfaGVhZGVyLFxuXHQucGx1cGxvYWRfZmlsZWxpc3RfZm9vdGVyIHtcblx0XHRAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKHNtKSB7XG5cdFx0XHRkaXNwbGF5OiBmbGV4O1xuXHRcdFx0YWxpZ24taXRlbXM6IGNlbnRlcjtcblxuXHRcdFx0Ly8gRmlsZSBuYW1lXG5cdFx0XHQucGx1cGxvYWRfZmlsZV9uYW1lIHtcblx0XHRcdFx0bWFyZ2luLXJpZ2h0OiBhdXRvO1xuXHRcdFx0fVxuXG5cdFx0XHQvLyBGaWxlIGluZm9cblx0XHRcdC5wbHVwbG9hZF9maWxlX2FjdGlvbiB7XG5cdFx0XHRcdG9yZGVyOiAxMjtcblx0XHRcdH1cblx0XHRcdC5wbHVwbG9hZF9maWxlX3N0YXR1cyB7XG5cdFx0XHRcdG9yZGVyOiAxMTtcblx0XHRcdH1cblx0XHRcdC5wbHVwbG9hZF9maWxlX3NpemUge1xuXHRcdFx0XHRvcmRlcjogMTA7XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG5cblxuXHQvLyBJbmRpY2F0b3JzXG5cdC8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG5cdC8vIEZpbGUgYWN0aW9uIGluZGljYXRvclxuXHQucGx1cGxvYWRfZmlsZV9hY3Rpb24ge1xuXHRcdG1hcmdpbi1sZWZ0OiBtYXAtZ2V0KCRzcGFjZXJzLCA0KTtcblx0XHRsaW5lLWhlaWdodDogMTtcblx0XHRmb250LXNpemU6IDA7XG5cdFx0dGV4dC1hbGlnbjogcmlnaHQ7XG5cblx0XHQvLyBIaWRlIGFsbCBjaGlsZHJlbiBieSBkZWZhdWx0XG5cdFx0KiB7XG5cdFx0XHRkaXNwbGF5OiBub25lO1xuXHRcdH1cblxuXHRcdC8vIEFkZCBpY29uIHRvIHRoZSBoZWFkZXIgYW5kIGZvb3RlclxuXHRcdCY6YWZ0ZXIge1xuXHRcdFx0Y29udGVudDogJ1xcZWM2Nyc7XG5cdFx0fVxuXG5cdFx0Ly8gUmVtb3ZlIGljb25zIGluIHRoZSBmaWxlIGxpc3Rcblx0XHQucGx1cGxvYWRfZmlsZWxpc3QgJjphZnRlciB7XG5cdFx0XHRjb250ZW50OiBub25lO1xuXHRcdH1cblxuXHRcdC8vIERlbGV0ZSBidXR0b25cblx0XHQucGx1cGxvYWRfZGVsZXRlICYge1xuXHRcdFx0PiBhIHtcblx0XHRcdFx0Y29sb3I6ICRib2R5LWNvbG9yO1xuXHRcdFx0XHRsaW5lLWhlaWdodDogMTtcblx0XHRcdFx0b3BhY2l0eTogMC41O1xuXHRcdFx0XHRAaW5jbHVkZSB0cmFuc2l0aW9uKG9wYWNpdHkgZWFzZS1pbi1vdXQgJGNvbXBvbmVudC10cmFuc2l0aW9uLXRpbWVyKTtcblxuXHRcdFx0XHQvLyBIb3ZlciBzdGF0ZVxuXHRcdFx0XHRAaW5jbHVkZSBob3ZlciB7XG5cdFx0XHRcdFx0b3BhY2l0eTogMTtcblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdH1cblx0fVxuXG5cdC8vIFVwbG9hZGluZyBpbmRpY2F0b3Jcblx0LnBsdXBsb2FkX3VwbG9hZGluZyB7XG5cdFx0YmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLXN1Y2Nlc3MtNTA7IFxuXHR9XG5cblx0Ly8gRGVsZXRlIGJ1dHRvblxuXHQucGx1cGxvYWRfZGVsZXRlIGE6YWZ0ZXIge1xuXHRcdGNvbnRlbnQ6ICdcXGVkNmInO1xuXHR9XG5cblx0Ly8gRmFpbGVkIGluZGljYXRvclxuXHQucGx1cGxvYWRfZmFpbGVkIGEge1xuXHRcdGNvbG9yOiB0aGVtZS1jb2xvcignZGFuZ2VyJyk7XG5cdFx0Y3Vyc29yOiBkZWZhdWx0O1xuXG5cdFx0Ly8gSWNvblxuXHRcdCY6YWZ0ZXIge1xuXHRcdFx0Y29udGVudDogJ1xcZTljZic7XG5cdFx0fVxuXHR9XG5cblx0Ly8gRG9uZSBpbmRpY2F0b3Jcblx0LnBsdXBsb2FkX2RvbmUge1xuXHRcdGNvbG9yOiAkZ3JheS02MDA7XG5cblx0XHQvLyBMaW5rXG5cdFx0YSB7XG5cdFx0XHRjb2xvcjogdGhlbWUtY29sb3IoJ3N1Y2Nlc3MnKTtcblx0XHRcdGN1cnNvcjogZGVmYXVsdDtcblxuXHRcdFx0Ly8gSWNvblxuXHRcdFx0JjphZnRlciB7XG5cdFx0XHRcdGNvbnRlbnQ6ICdcXGU5ZGInO1xuXHRcdFx0fVxuXHRcdH1cblx0fVxuXG5cdC8vIFByb2dyZXNzIGluZGljYXRvcnNcblx0LnBsdXBsb2FkX3Byb2dyZXNzLFxuXHQucGx1cGxvYWRfdXBsb2FkX3N0YXR1cyB7XG5cdFx0ZGlzcGxheTogbm9uZTtcblx0fVxuXHQucGx1cGxvYWRfcHJvZ3Jlc3NfY29udGFpbmVyIHtcblx0XHRiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKCRibGFjaywgMC4xKTtcblx0XHRAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRib3JkZXItcmFkaXVzKTtcblx0fVxuXHQucGx1cGxvYWRfcHJvZ3Jlc3NfYmFyIHtcblx0XHR3aWR0aDogMDtcblx0XHRoZWlnaHQ6IDAuMjVyZW07XG5cdFx0YmFja2dyb3VuZDogdGhlbWUtY29sb3IoJ3N1Y2Nlc3MnKTtcblx0XHRAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRib3JkZXItcmFkaXVzKTtcblx0fVxuXG5cdC8vIEZpbGUgaW5mb1xuXHQucGx1cGxvYWRfZmlsZV9zaXplLFxuXHQucGx1cGxvYWRfZmlsZV9zdGF0dXMsXG5cdC5wbHVwbG9hZF9wcm9ncmVzcyB7XG5cdFx0d2lkdGg6IDVyZW07XG5cdFx0dGV4dC1hbGlnbjogcmlnaHQ7XG5cdH1cbn1cbiIsIi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICpcbiAqICAjIEJvb3RzdHJhcCBmaWxlIGlucHV0XG4gKlxuICogIFN0eWxlcyBmb3IgZmlsZWlucHV0Lm1pbi5qcyAtIGFuIGVuaGFuY2VkIEhUTUwgNSBmaWxlIGlucHV0IGZvciBCb290c3RyYXBcbiAqXG4gKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5cbi8vIENoZWNrIGlmIGNvbXBvbmVudCBpcyBlbmFibGVkXG5AaWYgJGVuYWJsZS1maWxlaW5wdXQge1xuXG5cblx0Ly8gRmlsZSBpbnB1dCBzdHlsaW5nXG5cdC8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG5cdC8vIEJyb3dzZSBidXR0b25cblx0LmJ0bi1maWxlIHtcblx0ICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0ICAgIG92ZXJmbG93OiBoaWRkZW47XG5cblx0ICAgIC8vIEhpZGUgb3JpZ2luYWwgaW5wdXRcblx0XHRpbnB1dFt0eXBlPWZpbGVdIHtcblx0XHQgICAgcG9zaXRpb246IGFic29sdXRlO1xuXHRcdCAgICB0b3A6IDA7XG5cdFx0ICAgIHJpZ2h0OiAwO1xuXHRcdCAgICBtaW4td2lkdGg6IDEwMCU7XG5cdFx0ICAgIG1pbi1oZWlnaHQ6IDEwMCU7XG5cdFx0ICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuXHRcdCAgICBvcGFjaXR5OiAwO1xuXHRcdCAgICBiYWNrZ3JvdW5kOiBub25lIHJlcGVhdCBzY3JvbGwgMCAwIHRyYW5zcGFyZW50O1xuXHRcdCAgICBjdXJzb3I6IGluaGVyaXQ7XG5cdFx0ICAgIGRpc3BsYXk6IGJsb2NrO1xuXHRcdCAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuXHRcdH1cblx0fVxuXG5cdC8vIENhcHRpb24gbmFtZVxuXHQuZmlsZS1jYXB0aW9uLW5hbWUge1xuXHQgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXHQgICAgb3ZlcmZsb3c6IGhpZGRlbjtcblx0ICAgIHdvcmQtYnJlYWs6IGJyZWFrLWFsbDtcblx0ICAgIGZvbnQtZmFtaWx5OiAkZm9udC1mYW1pbHktc2Fucy1zZXJpZjtcblx0ICAgIHdpZHRoOiAxMDAlO1xuXHQgICAgbWFyZ2luOiAwO1xuXHQgICAgcGFkZGluZzogMDtcblx0ICAgIGJveC1zaGFkb3c6IG5vbmU7XG5cdCAgICBib3JkZXI6IDA7XG5cdCAgICBiYWNrZ3JvdW5kOiBub25lO1xuXHQgICAgb3V0bGluZTogMDtcblx0ICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuXG5cdFx0Ly8gRGlzcGxheSBlbXB0eSBjYXB0aW9uIHRleHQgYXMgYSBwbGFjZWhvbGRlclxuXHRcdC5maWxlLWlucHV0LW5ldyAmLFxuXHRcdC5maWxlLWlucHV0LWFqYXgtbmV3ICYge1xuXHRcdFx0Y29sb3I6ICRpbnB1dC1wbGFjZWhvbGRlci1jb2xvcjtcblx0XHR9XG5cdH1cblxuXHQvLyBFcnJvciBtZXNzYWdlXG5cdC5maWxlLWVycm9yLW1lc3NhZ2Uge1xuXHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0ICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1kYW5nZXItNTA7XG5cdCAgICBjb2xvcjogJGNvbG9yLWRhbmdlci04MDA7XG5cdCAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cdCAgICBwYWRkaW5nOiAkaW5wdXQtcGFkZGluZy15ICRpbnB1dC1wYWRkaW5nLXg7XG5cdCAgICBtYXJnaW46ICRmaWxlaW5wdXQtcHJldmlldy1zcGFjZXI7XG5cdCAgICBtYXJnaW4tdG9wOiAwO1xuXHQgICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkYm9yZGVyLXJhZGl1cyk7XG5cblx0ICAgIC8vIFRvcCBzcGFjaW5nIGNvcnJlY3Rpb24gaWYgaW5zaWRlIGRyb3Agem9uZVxuXHQgICAgLmZpbGUtZHJvcC16b25lICYge1xuXHQgICAgXHRtYXJnaW4tdG9wOiAkaW5wdXQtcGFkZGluZy15O1xuXHQgICAgfVxuXG5cdCAgICAvLyBDbG9zZSBidXR0b25cblx0XHQuY2xvc2Uge1xuXHRcdCAgICBjb2xvcjogJGNvbG9yLWRhbmdlci04MDA7XG5cdFx0fVxuXG5cdFx0Ly8gTGlzdCBvZiBlcnJvcnNcblx0XHRwcmUge1xuXHRcdFx0YmFja2dyb3VuZC1jb2xvcjogJGNhcmQtYmc7XG5cdFx0ICAgIG1hcmdpbi10b3A6ICRpbnB1dC1wYWRkaW5nLXk7XG5cdFx0ICAgIHRleHQtYWxpZ246IGxlZnQ7XG5cdFx0fVxuXG5cdFx0Ly8gTGlzdFxuXHRcdHVsIHtcblx0XHRcdGxpc3Qtc3R5bGU6IG5vbmU7XG5cdFx0XHRwYWRkaW5nOiAwO1xuXHRcdFx0bWFyZ2luOiAwO1xuXHRcdH1cblx0fVxuXG5cdC8vIERpc2FibGVkIGNhcHRpb25cblx0LmZpbGUtY2FwdGlvbi1kaXNhYmxlZCB7XG5cdCAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaW5wdXQtZGlzYWJsZWQtYmc7XG5cdCAgICBjdXJzb3I6ICRjdXJzb3ItZGlzYWJsZWQ7XG5cdH1cblxuXG5cdC8vXG5cdC8vIFByZXZpZXdcblx0Ly9cblxuXHQvLyBQcmV2aWV3IG1vZGFsXG5cdC5maWxlLXByZXZpZXctZGV0YWlsLW1vZGFsIHtcblx0ICAgIHRleHQtYWxpZ246IGxlZnQ7XG5cdH1cblxuXHQvLyBGaWxlIHByZXZpZXcgY29udGFpbmVyXG5cdC5maWxlLXByZXZpZXcge1xuXHRcdGJvcmRlcjogJGJvcmRlci13aWR0aCBzb2xpZCAkYm9yZGVyLWNvbG9yO1xuXHRcdHdpZHRoOiAxMDAlO1xuXHRcdG1hcmdpbi1ib3R0b206ICRzcGFjZXI7XG5cdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRcdHRleHQtYWxpZ246IGNlbnRlcjtcblx0XHRAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRib3JkZXItcmFkaXVzKTtcblxuXHRcdC8vIENsb3NlIGJ1dHRvblxuXHRcdC5jbG9zZSB7XG5cdFx0XHRmb250LXNpemU6ICRjbG9zZS1mb250LXNpemU7XG5cdFx0XHRmb250LXdlaWdodDogJGNsb3NlLWZvbnQtd2VpZ2h0O1xuXHRcdCAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0ICAgIHRvcDogMDtcblx0XHQgICAgcmlnaHQ6IDA7XG5cdFx0ICAgIHBhZGRpbmc6ICRmaWxlaW5wdXQtcHJldmlldy1zcGFjZXI7XG5cdFx0ICAgIGxpbmUtaGVpZ2h0OiAxO1xuXHRcdFx0Y29sb3I6ICRjbG9zZS1jb2xvcjtcblx0XHRcdHRleHQtc2hhZG93OiAkY2xvc2UtdGV4dC1zaGFkb3c7XG5cdFx0XHRvcGFjaXR5OiAwLjc1O1xuXHRcdFx0QGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkYm9yZGVyLXJhZGl1cyk7XG5cblx0XHRcdC8vIEhvdmVyIHN0YXRlXG5cdFx0XHRAaW5jbHVkZSBob3Zlci1mb2N1cyB7XG5cdFx0XHRcdGNvbG9yOiAkY2xvc2UtY29sb3I7XG5cdFx0XHRcdHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblx0XHRcdFx0b3BhY2l0eTogMTtcblx0XHRcdH1cblx0XHR9XG5cdH1cblxuXHQvLyBUaHVtYm5haWxzXG5cdC5maWxlLXByZXZpZXctdGh1bWJuYWlscyB7XG5cdFx0ZGlzcGxheTogZmxleDtcblx0XHRmbGV4LXdyYXA6IHdyYXA7XG5cdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXG5cdFx0Ly8gQ2VudGVyIHRodW1icyBvbiBtb2JpbGVcblx0XHRAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oc20pIHtcblx0XHRcdGp1c3RpZnktY29udGVudDogY2VudGVyO1xuXHRcdH1cblx0fVxuXG5cdC8vIFRodW1ibmFpbCBmcmFtZVxuXHQuZmlsZS1wcmV2aWV3LWZyYW1lIHtcblx0ICAgIG1hcmdpbjogJGZpbGVpbnB1dC1wcmV2aWV3LXNwYWNlcjtcblx0ICAgIG1hcmdpbi1yaWdodDogMDtcblx0ICAgIGJvcmRlcjogJGZpbGVpbnB1dC1wcmV2aWV3LWZyYW1lLWJvcmRlci13aWR0aCBzb2xpZCAkZmlsZWlucHV0LXByZXZpZXctZnJhbWUtYm9yZGVyLWNvbG9yO1xuXHQgICAgYmFja2dyb3VuZC1jb2xvcjogJGZpbGVpbnB1dC1wcmV2aWV3LWZyYW1lLWJnO1xuXHQgICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkYm9yZGVyLXJhZGl1cyk7XG5cblx0ICAgIC8vIFRodW1iXG5cdFx0Lmt2LWZpbGUtY29udGVudCB7XG5cdFx0ICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0XHQgICAgaGVpZ2h0OiAkZmlsZWlucHV0LXByZXZpZXctdGh1bWItaGVpZ2h0O1xuXHRcdH1cblx0fVxuXG5cdC8vIFRodW1ibmFpbCBpbWFnZVxuXHQuZmlsZS1wcmV2aWV3LWltYWdlIHtcblx0ICAgIEBpbmNsdWRlIGJvcmRlci10b3AtcmFkaXVzKCRib3JkZXItcmFkaXVzIC0gcmVtLWNhbGMoJGJvcmRlci13aWR0aCkpO1xuXHR9XG5cblx0Ly8gVGh1bWJuYWlsIGZvb3RlclxuXHQuZmlsZS10aHVtYm5haWwtZm9vdGVyIHtcblx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdFx0YmFja2dyb3VuZC1jb2xvcjogJGZpbGVpbnB1dC1wcmV2aWV3LWZvb3Rlci1iZztcblx0XHRib3JkZXItdG9wOiAkYm9yZGVyLXdpZHRoIHNvbGlkICRib3JkZXItY29sb3I7XG5cdH1cblxuXHQvLyBQcmV2aWV3IHRleHRcblx0LmZpbGUtcHJldmlldy10ZXh0IHtcblx0ICAgIGNvbG9yOiAkbGluay1jb2xvcjtcblx0ICAgIGJvcmRlcjogMDtcblx0ICAgIG92ZXJmbG93LXg6IGhpZGRlbjtcblx0fVxuXG5cdC8vIE90aGVyIGZpbGVzIHByZXZpZXdcblx0LmZpbGUtcHJldmlldy1vdGhlciB7XG5cdCAgICB3aWR0aDogJGZpbGVpbnB1dC1wcmV2aWV3LXRodW1iLXdpZHRoO1xuXG5cdCAgICAvLyBPdmVycmlkZSBmb3IgcHJldmlldyBpY29uLCB1c2UgSWNvbW9vbiBpbnN0ZWFkXG5cdCAgICAmOmFmdGVyIHtcblx0XHRcdGNvbnRlbnQ6ICdcXGVhMGMnO1xuXHRcdFx0Zm9udC1mYW1pbHk6ICRpY29uLWZvbnQtZmFtaWx5O1xuXHRcdFx0bGluZS1oZWlnaHQ6IDE7XG5cdFx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0XHR0b3A6IDUwJTtcblx0XHRcdGxlZnQ6IDUwJTtcblx0XHRcdGZvbnQtc2l6ZTogKCRpY29uLWZvbnQtc2l6ZSAqIDQpO1xuXHRcdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG5cdFx0XHRAaW5jbHVkZSBsbC1mb250LXNtb290aGluZygpO1xuXHQgICAgfVxuXHR9XG5cblx0Ly8gU3RhdHVzXG5cdC5maWxlLXByZXZpZXctc3RhdHVzIHtcblx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0Ym90dG9tOiAwO1xuXHRcdGxlZnQ6IDA7XG5cdFx0d2lkdGg6IDEwMCU7XG5cdFx0YmFja2dyb3VuZC1jb2xvcjogJGZpbGVpbnB1dC1wcmV2aWV3LWZvb3Rlci1iZztcblx0XHRib3JkZXItdG9wOiAkYm9yZGVyLXdpZHRoIHNvbGlkICRib3JkZXItY29sb3I7XG5cdFx0Zm9udC1zaXplOiAkZm9udC1zaXplLXNtO1xuXHRcdGxpbmUtaGVpZ2h0OiAkbGluZS1oZWlnaHQtc207XG5cdFx0cGFkZGluZzogJGlucHV0LXBhZGRpbmcteSAkaW5wdXQtcGFkZGluZy14O1xuXHRcdHotaW5kZXg6ICR6aW5kZXgtdG9vbHRpcDtcblx0XHRAaW5jbHVkZSBib3JkZXItYm90dG9tLXJhZGl1cygkYm9yZGVyLXJhZGl1cyk7XG5cblx0XHQvLyBDb2xsYXBzZSBpZiBlbXB0eVxuXHRcdCY6ZW1wdHkge1xuXHRcdFx0cGFkZGluZzogMDtcblx0XHRcdGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuXHRcdFx0Ym9yZGVyOiAwO1xuXHRcdH1cblx0fVxuXG5cblx0Ly9cblx0Ly8gTG9hZGluZyBpbmRpY2F0b3Jcblx0Ly9cblxuXHQvLyBHaXZlIGl0IG1pbmltdW0gaGVpZ2h0XG5cdC5maWxlLXRodW1iLWxvYWRpbmcge1xuXHRcdG1pbi1oZWlnaHQ6ICgkaWNvbi1mb250LXNpemUgKiAyKSArICgkc3BhY2VyICogMikgKyAoKCRpbnB1dC1wYWRkaW5nLXkgKiAyKSArICRsaW5lLWhlaWdodC1jb21wdXRlZCk7XG5cdH1cblxuXHQvLyBMb2FkaW5nIGljb25cblx0LmZpbGUtdGh1bWItbG9hZGluZyxcblx0LmZpbGUtdXBsb2FkaW5nIHtcblxuXHRcdC8vIEJhY2tncm91bmRcblx0XHQmOmJlZm9yZSB7XG5cdFx0XHRjb250ZW50OiAnJztcblx0XHRcdGRpc3BsYXk6IGlubGluZS1ibG9jaztcblx0XHRcdGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1zbGF0ZS05MDA7XG5cdFx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0XHR0b3A6IDUwJTtcblx0XHRcdGxlZnQ6IDUwJTtcblx0XHRcdHotaW5kZXg6ICR6aW5kZXgtdG9vbHRpcCAtIDE7XG5cdFx0XHRtYXJnaW4tdG9wOiAtKCgoJGljb24tZm9udC1zaXplICogMikgKyAoKCRpbnB1dC1wYWRkaW5nLXkgKiAyKSArICRsaW5lLWhlaWdodC1jb21wdXRlZCkpIC8gMik7XG5cdFx0XHRtYXJnaW4tbGVmdDogLSgkaWNvbi1mb250LXNpemUpO1xuXHRcdFx0QGluY2x1ZGUgc2l6ZSgkaWNvbi1mb250LXNpemUgKiAyKTtcblx0XHRcdEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGJvcmRlci1yYWRpdXMpO1xuXHRcdH1cblxuXHRcdC8vIEljb24gaXRzZWxmXG5cdFx0JjphZnRlciB7XG5cdFx0XHRjb250ZW50OiAnXFxlYjU1Jztcblx0XHRcdGZvbnQtZmFtaWx5OiAkaWNvbi1mb250LWZhbWlseTtcblx0XHRcdGRpc3BsYXk6IGlubGluZS1ibG9jaztcblx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRcdGNvbG9yOiAkd2hpdGU7XG5cdFx0XHR0b3A6IDUwJTtcblx0XHRcdGxlZnQ6IDUwJTtcblx0XHRcdG1hcmdpbi10b3A6IC0oKCRpY29uLWZvbnQtc2l6ZSArICgoJGlucHV0LXBhZGRpbmcteSAqIDIpICsgJGxpbmUtaGVpZ2h0LWNvbXB1dGVkKSkgLyAyKTtcblx0XHRcdG1hcmdpbi1sZWZ0OiAtKCRpY29uLWZvbnQtc2l6ZSAvIDIpO1xuXHRcdFx0Zm9udC1zaXplOiAkaWNvbi1mb250LXNpemU7XG5cdFx0XHRsaW5lLWhlaWdodDogMTtcblx0XHRcdHotaW5kZXg6ICR6aW5kZXgtdG9vbHRpcDtcblx0XHRcdGFuaW1hdGlvbjogcm90YXRpb24gMXMgbGluZWFyIGluZmluaXRlO1xuXHRcdFx0QGluY2x1ZGUgbGwtZm9udC1zbW9vdGhpbmcoKTtcblx0XHR9XG5cdH1cblxuXHQvLyBJbmRpY2F0b3Jcblx0LmZpbGUtdXBsb2FkLWluZGljYXRvciB7XG5cdCAgICBjdXJzb3I6IGRlZmF1bHQ7XG5cdCAgICBmbG9hdDogbGVmdDtcblx0ICAgIHBhZGRpbmc6IG1hcC1nZXQoJHNwYWNlcnMsIDIpO1xuXHQgICAgbGluZS1oZWlnaHQ6IDE7XG5cblx0ICAgIC8vIEljb25cblx0ICAgIGkge1xuXHQgICAgXHR0b3A6IDA7XG5cdCAgICB9XG5cdH1cblxuXG5cdC8vXG5cdC8vIERlZmF1bHQgZWxlbWVudHMgdmlzaWJpbGl0eVxuXHQvL1xuXG5cdC8vIFN0YW5kYXJkIHVwbG9hZFxuXHQuZmlsZS1pbnB1dC1uZXcge1xuXHRcdC5maWxlLXByZXZpZXcsXG5cdFx0LmNsb3NlLFxuXHRcdC5nbHlwaGljb24tZmlsZSxcblx0XHQuZmlsZWlucHV0LXJlbW92ZS1idXR0b24sXG5cdFx0LmZpbGVpbnB1dC11cGxvYWQtYnV0dG9uIHtcblx0XHRcdGRpc3BsYXk6IG5vbmU7XG5cdFx0fVxuXHR9XG5cblx0Ly8gQWpheCB1cGxvYWRcblx0LmZpbGUtaW5wdXQtYWpheC1uZXcge1xuXHRcdC5maWxlaW5wdXQtcmVtb3ZlLWJ1dHRvbixcblx0XHQuZmlsZWlucHV0LXVwbG9hZC1idXR0b24sXG5cdFx0LmNsb3NlIHtcblx0XHRcdGRpc3BsYXk6IG5vbmU7XG5cdFx0fVxuXHR9XG5cblx0Ly8gT3RoZXJcblx0Lmt2LWhpZGRlbixcblx0LmZpbGUtY2FwdGlvbi1pY29uLFxuXHQuZmlsZS16b29tLWRpYWxvZyAubW9kYWwtaGVhZGVyOmJlZm9yZSxcblx0LmZpbGUtem9vbS1kaWFsb2cgLm1vZGFsLWhlYWRlcjphZnRlcixcblx0LmhpZGUtY29udGVudCAua3YtZmlsZS1jb250ZW50IHtcblx0ICAgIGRpc3BsYXk6IG5vbmU7XG5cdH1cblxuXG5cblx0Ly8gQUpBWCB1cGxvYWQgc3R5bGluZ1xuXHQvLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuXHQvLyBCdXR0b25zIHBvc2l0aW9uXG5cdC5maWxlLWZvb3Rlci1idXR0b25zIHtcblx0ICAgIGZsb2F0OiByaWdodDtcblxuXHQgICAgLy8gQnV0dG9uIGJhc2Vcblx0ICAgIGJ1dHRvbiB7XG5cdCAgICBcdHBhZGRpbmc6IG1hcC1nZXQoJHNwYWNlcnMsIDIpO1xuXHQgICAgXHRiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcblx0ICAgIFx0Ym9yZGVyOiAwO1xuXHQgICAgXHRsaW5lLWhlaWdodDogMTtcblx0ICAgIFx0Y3Vyc29yOiBwb2ludGVyO1xuXHQgICAgXHRvcGFjaXR5OiAwLjY7XG5cdCAgICBcdG91dGxpbmU6IDA7XG5cdFx0ICAgIEBpbmNsdWRlIHRyYW5zaXRpb24ob3BhY2l0eSBlYXNlLWluLW91dCAkY29tcG9uZW50LXRyYW5zaXRpb24tdGltZXIpO1xuXG5cdFx0ICAgIC8vIEhvdmVyIHN0YXRlXG5cdFx0ICAgIEBpbmNsdWRlIGhvdmVyIHtcblx0XHQgICAgXHRvcGFjaXR5OiAxO1xuXHRcdCAgICB9XG5cblx0XHQgICAgLy8gTWFrZSBpY29uIGNlbnRlcmVkIHZlcnRpY2FsbHlcblx0ICAgIFx0aSB7XG5cdCAgICBcdFx0dG9wOiAwO1xuXHQgICAgXHR9XG5cdCAgICB9XG5cdH1cblxuXHQvLyBDYXB0aW9uXG5cdC5maWxlLWZvb3Rlci1jYXB0aW9uIHtcblx0ICAgIGRpc3BsYXk6IGJsb2NrO1xuXHQgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcblx0ICAgIG92ZXJmbG93OiBoaWRkZW47XG5cdCAgICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcblx0ICAgIHRleHQtYWxpZ246IGNlbnRlcjtcblx0ICAgIHBhZGRpbmc6ICRmaWxlaW5wdXQtcHJldmlldy10aHVtYi1jYXB0aW9uLXNwYWNlcjtcblx0ICAgIGJhY2tncm91bmQtY29sb3I6ICRjYXJkLWJnO1xuXHQgICAgYm9yZGVyLWJvdHRvbTogJGJvcmRlci13aWR0aCBzb2xpZCAkYm9yZGVyLWNvbG9yO1xuXHQgICAgbWFyZ2luLWxlZnQ6IGF1dG87XG5cdCAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG5cdH1cblxuXHQvLyBTaXplIGluZm9ybWF0aW9uXG5cdC5maWxlLXNpemUtaW5mbyB7XG5cdFx0c2FtcCB7XG5cdFx0XHRmb250LXNpemU6ICRmb250LXNpemUteHM7XG5cdFx0fVxuXHR9XG5cblxuXHQvL1xuXHQvLyBEcm9wem9uZVxuXHQvL1xuXG5cdC8vIEJhc2Vcblx0LmZpbGUtZHJvcC16b25lIHtcblx0ICAgIGJvcmRlcjogJGJvcmRlci13aWR0aCBkYXNoZWQgJGJvcmRlci1jb2xvcjtcblx0ICAgIGhlaWdodDogMTAwJTtcblx0ICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG5cdCAgICBtYXJnaW46ICRmaWxlaW5wdXQtcHJldmlldy1zcGFjZXI7XG5cdCAgICBwYWRkaW5nOiAkZmlsZWlucHV0LXByZXZpZXctc3BhY2VyO1xuXHQgICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkYm9yZGVyLXJhZGl1cyk7XG5cdH1cblxuXHQvLyBUZXh0IHRpdGxlXG5cdC5maWxlLWRyb3Atem9uZS10aXRsZSB7XG5cdCAgICBmb250LXNpemU6ICRoNC1mb250LXNpemU7XG5cdCAgICBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LWxpZ2h0O1xuXHQgICAgcGFkZGluZzogNXJlbTtcblx0ICAgIG9wYWNpdHk6IDAuNTtcblx0fVxuXG5cdC8vIFByb2dyZXNzIGJhclxuXHQua3YtdXBsb2FkLXByb2dyZXNzIHtcblx0XHRtYXJnaW4tYm90dG9tOiAkc3BhY2VyO1xuXHR9XG5cblxuXHQvL1xuXHQvLyBQcm9ncmVzc1xuXHQvL1xuXG5cdC8vIFRodW1ibmFpbCBwcm9ncmVzc1xuXHQuZmlsZS10aHVtYi1wcm9ncmVzcyB7XG5cdCAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG5cdCAgICB0b3A6IC0kZmlsZWlucHV0LXByZXZpZXctcHJvZ3Jlc3MtaGVpZ2h0O1xuXHQgICAgbGVmdDogMDtcblx0ICAgIHJpZ2h0OiAwO1xuXG5cdCAgICAvLyBQcm9ncmVzcyBiYXJzXG5cdFx0LnByb2dyZXNzLFxuXHRcdC5wcm9ncmVzcy1iYXIge1xuXHRcdCAgICBoZWlnaHQ6ICRmaWxlaW5wdXQtcHJldmlldy1wcm9ncmVzcy1oZWlnaHQ7XG5cdFx0ICAgIGJvcmRlci1yYWRpdXM6IDA7XG5cdFx0ICAgIGZvbnQtc2l6ZTogMDtcblx0XHR9XG5cdH1cblxuXHQvLyBJRSAxMCBmaXhcblx0LmJ0bi1maWxlIDo6LW1zLWJyb3dzZSB7XG5cdCAgICB3aWR0aDogMTAwJTtcblx0ICAgIGhlaWdodDogMTAwJTtcblx0fVxuXG5cblx0Ly9cblx0Ly8gRnVsbHNjcmVlbiBtb2RhbFxuXHQvL1xuXG5cdC5maWxlLXpvb20tZnVsbHNjcmVlbiB7XG5cblx0XHQvLyBCYXNlXG5cdFx0Lm1vZGFsLWRpYWxvZyB7XG5cdFx0ICAgIHBvc2l0aW9uOiBmaXhlZDtcblx0XHQgICAgbWFyZ2luOiAwO1xuXHRcdCAgICB3aWR0aDogMTAwJTtcblx0XHQgICAgaGVpZ2h0OiAxMDAlO1xuXHRcdCAgICBwYWRkaW5nOiAwO1xuXHRcdCAgICBtYXgtd2lkdGg6IDEwMCU7XG5cdFx0fVxuXG5cdFx0Ly8gQ29udGVudFxuXHRcdC5tb2RhbC1jb250ZW50IHtcblx0XHQgICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygwKTtcblx0XHR9XG5cblx0XHQvLyBCb2R5XG5cdFx0Lm1vZGFsLWJvZHkge1xuXHRcdCAgICBvdmVyZmxvdy15OiBhdXRvO1xuXHRcdH1cblx0fVxuXG5cblx0Ly9cblx0Ly8gWm9vbVxuXHQvL1xuXG5cdC8vIERpYWxvZ1xuXHQuZmlsZS16b29tLWRpYWxvZyB7XG5cblx0XHQvLyBOYXZpZ2F0ZSBidXR0b25zXG5cdFx0LmJ0bi1uYXZpZ2F0ZSB7XG5cdFx0ICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHQgICAgdG9wOiA1MCU7XG5cdFx0ICAgIHBhZGRpbmc6IDA7XG5cdFx0ICAgIGJvcmRlcjogMDtcblx0XHQgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG5cdFx0ICAgIG91dGxpbmU6IG5vbmU7XG5cdFx0ICAgIGNvbG9yOiAkd2hpdGU7XG5cdFx0ICAgIG9wYWNpdHk6IDAuNztcblx0XHQgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuXHRcdCAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKG9wYWNpdHkgZWFzZS1pbi1vdXQgJGNvbXBvbmVudC10cmFuc2l0aW9uLXRpbWVyKTtcblxuXHRcdCAgICAvLyBJY29uc1xuXHRcdCAgICA+IGkge1xuXHRcdCAgICBcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdCAgICBcdGZvbnQtc2l6ZTogKCRpY29uLWZvbnQtc2l6ZSAqIDIpO1xuXHRcdCAgICB9XG5cblx0XHQgICAgLy8gSG92ZXIgc3RhdGVcblx0XHRcdCY6bm90KFtkaXNhYmxlZF0pOmhvdmVyLFxuXHRcdFx0Jjpub3QoW2Rpc2FibGVkXSk6Zm9jdXMge1xuXHRcdFx0ICAgIG91dGxpbmU6IG5vbmU7XG5cdFx0XHQgICAgYm94LXNoYWRvdzogbm9uZSFpbXBvcnRhbnQ7XG5cdFx0XHQgICAgb3BhY2l0eTogMTtcblx0XHRcdH1cblxuXHRcdFx0Ly8gRGlzYWJsZWQgc3RhdGVcblx0XHRcdCZbZGlzYWJsZWRdIHtcblx0XHRcdCAgICBvcGFjaXR5OiAwLjM7XG5cdFx0XHR9XG5cdFx0fVxuXG5cdFx0Ly8gTGVmdCBidXR0b25cblx0XHQuYnRuLXByZXYge1xuXHRcdCAgICBsZWZ0OiAtKCgkaWNvbi1mb250LXNpemUgKiAyKSArICRncmlkLWd1dHRlci13aWR0aCk7XG5cdFx0fVxuXG5cdFx0Ly8gUmlnaHQgYnV0dG9uXG5cdFx0LmJ0bi1uZXh0IHtcblx0XHQgICAgcmlnaHQ6IC0oKCRpY29uLWZvbnQtc2l6ZSAqIDIpICsgJGdyaWQtZ3V0dGVyLXdpZHRoKTtcblx0XHR9XG5cblx0XHQvLyBGbG9hdGluZyBidXR0b25zXG5cdFx0LmZsb2F0aW5nLWJ1dHRvbnMge1xuXHRcdCAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0ICAgIHRvcDogJG1vZGFsLWhlYWRlci1wYWRkaW5nO1xuXHRcdCAgICByaWdodDogJG1vZGFsLWhlYWRlci1wYWRkaW5nO1xuXHRcdCAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbW9kYWwtY29udGVudC1iZztcblx0XHR9XG5cblx0XHQvLyBUaXRsZVxuXHRcdC5rdi16b29tLXRpdGxlIHtcblx0XHRcdGNvbG9yOiAkdGV4dC1tdXRlZDtcblx0XHRcdG1hcmdpbi1sZWZ0OiBtYXAtZ2V0KCRzcGFjZXJzLCAyKTtcblx0XHR9XG5cdH1cblxuXHQvLyBDb250ZW50XG5cdC5maWxlLXpvb20tY29udGVudCB7XG5cdCAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cdH1cblxuXG5cdC8vXG5cdC8vIERyYWdcblx0Ly9cblxuXHQuZmlsZS1kcmFnLWhhbmRsZSB7XG5cdCAgICBjdXJzb3I6IG1vdmU7XG5cdCAgICBmbG9hdDogbGVmdDtcblx0ICAgIGxpbmUtaGVpZ2h0OiAxO1xuXHQgICAgb3BhY2l0eTogMC42O1xuXHQgICAgQGluY2x1ZGUgdHJhbnNpdGlvbihvcGFjaXR5IGVhc2UtaW4tb3V0ICRjb21wb25lbnQtdHJhbnNpdGlvbi10aW1lcik7XG5cblx0ICAgIC8vIEhvdmVyIHN0YXRlXG5cdCAgICBAaW5jbHVkZSBob3ZlciB7XG5cdCAgICBcdG9wYWNpdHk6IDE7XG5cdCAgICB9XG5cblx0ICAgIC8vIENlbnRlciBpY29uIHZlcnRpY2FsbHlcblx0ICAgIGkge1xuXHQgICAgXHR0b3A6IDA7XG5cdCAgICB9XG5cdH1cbn1cbiIsIi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICpcbiAqICAjIERyb3B6b25lIGZpbGUgdXBsb2FkZXJcbiAqXG4gKiAgU3R5bGVzIGZvciBkcm9wem9uZS5taW4uanMgLSBvcGVuIHNvdXJjZSBsaWJyYXJ5IHRoYXQgcHJvdmlkZXMgZHJhZ+KAmW7igJlkcm9wIGZpbGUgdXBsb2FkcyB3aXRoIGltYWdlIHByZXZpZXdzXG4gKlxuICogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuXG4vLyBDaGVjayBpZiBjb21wb25lbnQgaXMgZW5hYmxlZFxuQGlmICRlbmFibGUtZHJvcHpvbmUge1xuXG5cdC8vIEJhc2Vcblx0LmRyb3B6b25lIHtcblx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdFx0Ym9yZGVyOiAkZHJvcHpvbmUtYm9yZGVyLXdpZHRoICRkcm9wem9uZS1ib3JkZXItc3R5bGUgJGNhcmQtYm9yZGVyLWNvbG9yO1xuXHRcdG1pbi1oZWlnaHQ6ICRkcm9wem9uZS1taW4taGVpZ2h0O1xuXHRcdGJhY2tncm91bmQtY29sb3I6ICRjYXJkLWJnO1xuXHRcdHBhZGRpbmc6ICRkcm9wem9uZS1zcGFjZXI7XG5cdFx0QGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkYm9yZGVyLXJhZGl1cyk7XG5cblx0XHQvLyBJZiBpbnNpZGUgcGFuZWwsIGdpdmUgaXQgZ3JleSBiYWNrZ3JvdW5kXG5cdFx0LmNhcmQgJiB7XG5cdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkZHJvcHpvbmUtYmc7XG5cdFx0XHRib3JkZXItY29sb3I6ICRkcm9wem9uZS1ib3JkZXItY29sb3I7XG5cdFx0fVxuXG5cdFx0Ly8gTWVzc2FnZVxuXHRcdC5kei1tZXNzYWdlIHtcblx0XHRcdG9wYWNpdHk6IDE7XG5cdFx0fVxuXHRcdCYuZHotc3RhcnRlZCAuZHotbWVzc2FnZSB7XG5cdFx0XHRkaXNwbGF5OiBub25lO1xuXHRcdH1cblxuXHRcdC8vIERyYWcgaG92ZXIgYm9yZGVyIGFuZCBiZyBjb2xvclxuXHRcdCYuZHotZHJhZy1ob3ZlciB7XG5cdFx0XHRib3JkZXItY29sb3I6ICRkcm9wem9uZS1kcmFnLWJvcmRlci1jb2xvcjtcblx0XHRcdGJhY2tncm91bmQtY29sb3I6ICRkcm9wem9uZS1kcmFnLWJnO1xuXHRcdFx0Y29sb3I6ICRkcm9wem9uZS1kcmFnLWNvbG9yO1xuXHRcdH1cblxuXHRcdC8vIEluc2lkZSBzaWRlYmFyXG5cdFx0LnNpZGViYXIgJiB7XG5cdFx0XHR0ZXh0LWFsaWduOiBjZW50ZXI7XG5cblx0XHRcdC8vIE1lc3NhZ2Vcblx0XHRcdC5kei1kZWZhdWx0LmR6LW1lc3NhZ2Uge1xuXHRcdFx0XHQmOmJlZm9yZSB7XG5cdFx0XHRcdFx0Zm9udC1zaXplOiAoJGljb24tZm9udC1zaXplICogNCk7XG5cdFx0XHRcdFx0d2lkdGg6ICgkaWNvbi1mb250LXNpemUgKiA0KTtcblx0XHRcdFx0XHRoZWlnaHQ6ICgkaWNvbi1mb250LXNpemUgKiA0KTtcblx0XHRcdFx0XHRtYXJnaW4tbGVmdDogLSgkaWNvbi1mb250LXNpemUgKiAyKTtcblx0XHRcdFx0XHR0b3A6IDUwJTtcblx0XHRcdFx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG5cdFx0XHRcdH1cblxuXHRcdFx0XHQvLyBNZXNzYWdlIHRleHRcblx0XHRcdFx0c3BhbiB7XG5cdFx0XHRcdFx0Zm9udC1zaXplOiAkaDYtZm9udC1zaXplO1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG5cblxuXHQvL1xuXHQvLyBNZXNzYWdlc1xuXHQvL1xuXG5cdC5kcm9wem9uZSB7XG5cblx0XHQvLyBEZWZhdWx0IHN0eWxlc1xuXHRcdC5kei1kZWZhdWx0IHtcblx0XHRcdCYuZHotbWVzc2FnZSB7XG5cdFx0XHRcdGhlaWdodDogJGRyb3B6b25lLW1pbi1oZWlnaHQ7XG5cdFx0XHRcdHdpZHRoOiAxMDAlO1xuXHRcdFx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0XHRcdHRvcDogMDtcblx0XHRcdFx0bGVmdDogMDtcblx0XHRcdFx0dGV4dC1hbGlnbjogY2VudGVyO1xuXHRcdFx0XHRvcGFjaXR5OiAxO1xuXHRcdFx0XHRAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRib3JkZXItcmFkaXVzKTtcblx0XHRcdFx0QGluY2x1ZGUgdHJhbnNpdGlvbihvcGFjaXR5IGVhc2UtaW4tb3V0ICRjb21wb25lbnQtdHJhbnNpdGlvbi10aW1lcik7XG5cblx0XHRcdFx0Ly8gSWNvblxuXHRcdFx0XHQmOmJlZm9yZSB7XG5cdFx0XHRcdFx0Y29udGVudDogJ1xcZWEwZSc7XG5cdFx0XHRcdFx0Zm9udC1mYW1pbHk6ICRpY29uLWZvbnQtZmFtaWx5O1xuXHRcdFx0XHRcdGZvbnQtc2l6ZTogJGRyb3B6b25lLXBsYWNlaG9sZGVyLWljb24tc2l6ZTtcblx0XHRcdFx0XHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cdFx0XHRcdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdFx0XHRcdHRvcDogKCRkcm9wem9uZS1taW4taGVpZ2h0IC8gMikgLSAkZHJvcHpvbmUtcGxhY2Vob2xkZXItaWNvbi1zaXplO1xuXHRcdFx0XHRcdGxlZnQ6IDUwJTtcblx0XHRcdFx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XG5cdFx0XHRcdFx0bGluZS1oZWlnaHQ6IDE7XG5cdFx0XHRcdFx0ei1pbmRleDogMjtcblx0XHRcdFx0XHRjb2xvcjogJGRyb3B6b25lLXBsYWNlaG9sZGVyLWljb24tY29sb3I7XG5cdFx0XHRcdFx0QGluY2x1ZGUgbGwtZm9udC1zbW9vdGhpbmcoKTtcblx0XHRcdFx0fVxuXG5cdFx0XHRcdC8vIFRleHQgbGFiZWxcblx0XHRcdFx0PiBzcGFuIHtcblx0XHRcdFx0XHRmb250LXNpemU6ICRoNS1mb250LXNpemU7XG5cdFx0XHRcdFx0Y29sb3I6ICRkcm9wem9uZS1wbGFjZWhvbGRlci10ZXh0LWNvbG9yO1xuXHRcdFx0XHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdFx0XHRcdG1hcmdpbi10b3A6ICgkZHJvcHpvbmUtbWluLWhlaWdodCAvIDIpICsgJHNwYWNlcjtcblxuXHRcdFx0XHRcdC8vIFN1YnRleHRcblx0XHRcdFx0XHRzcGFuIHtcblx0XHRcdFx0XHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdFx0XHRcdFx0Y29sb3I6IGxpZ2h0ZW4oJGRyb3B6b25lLXBsYWNlaG9sZGVyLXRleHQtY29sb3IsIDE1JSk7XG5cdFx0XHRcdFx0XHRmb250LXNpemU6ICRoNi1mb250LXNpemU7XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0fVxuXG5cdFx0Ly8gT24gZmlsZXMgZHJhZ1xuXHRcdCYuZHotZHJhZy1ob3ZlciAuZHotbWVzc2FnZSB7XG5cdFx0XHRvcGFjaXR5OiAwLjc1O1xuXHRcdH1cblx0XHQmLmR6LXN0YXJ0ZWQgLmR6LW1lc3NhZ2Uge1xuXHRcdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0XHRvcGFjaXR5OiAwO1xuXHRcdH1cblx0fVxuXG5cblx0Ly9cblx0Ly8gUHJldmlld1xuXHQvL1xuXG5cdC5kcm9wem9uZSxcblx0LmRyb3B6b25lLXByZXZpZXdzIHtcblx0XHQuZHotcHJldmlldyB7XG5cdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkY2FyZC1iZztcblx0XHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0XHRcdGRpc3BsYXk6IGlubGluZS1ibG9jaztcblx0XHRcdG1hcmdpbjogJGRyb3B6b25lLXByZXZpZXctc3BhY2VyO1xuXHRcdFx0bWluLXdpZHRoOiAkZHJvcHpvbmUtcHJldmlldy13aWR0aDtcblx0XHRcdGJvcmRlcjogJGNhcmQtYm9yZGVyLXdpZHRoIHNvbGlkICRjYXJkLWJvcmRlci1jb2xvcjtcblx0XHRcdHBhZGRpbmc6ICRkcm9wem9uZS1wcmV2aWV3LXNwYWNlcjtcblx0XHRcdEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGJvcmRlci1yYWRpdXMpO1xuXHRcdFx0QGluY2x1ZGUgYm94LXNoYWRvdygkY2FyZC1ib3gtc2hhZG93KTtcblxuXHRcdFx0Ly8gSGlkZSB0aHVtYm5haWwgaW4gZmlsZSBwcmV2aWV3XG5cdFx0XHQmLmR6LWZpbGUtcHJldmlldyBbZGF0YS1kei10aHVtYm5haWxdIHtcblx0XHRcdFx0ZGlzcGxheTogbm9uZTtcblx0XHRcdH1cblxuXHRcdFx0Ly8gRGV0YWlsc1xuXHRcdFx0LmR6LWRldGFpbHMge1xuXHRcdFx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cblx0XHRcdFx0Ly8gRmlsZSBuYW1lXG5cdFx0XHRcdC5kei1maWxlbmFtZSB7XG5cdFx0XHRcdFx0b3ZlcmZsb3c6IGhpZGRlbjtcblx0XHRcdFx0XHRtYXJnaW4tdG9wOiBtYXAtZ2V0KCRzcGFjZXJzLCAyKTtcblx0XHRcdFx0fVxuXG5cdFx0XHRcdC8vIEltYWdlXG5cdFx0XHRcdGltZyB7XG5cdFx0XHRcdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdFx0XHRcdHRvcDogMDtcblx0XHRcdFx0XHRsZWZ0OiAwO1xuXHRcdFx0XHR9XG5cblx0XHRcdFx0Ly8gU2l6ZVxuXHRcdFx0XHQuZHotc2l6ZSB7XG5cdFx0XHRcdFx0bWFyZ2luLXRvcDogbWFwLWdldCgkc3BhY2VycywgMik7XG5cdFx0XHRcdH1cblx0XHRcdH1cblxuXHRcdFx0Ly8gSG92ZXIgc3RhdGVcblx0XHRcdEBpbmNsdWRlIGhvdmVyIHtcblx0XHRcdFx0LmR6LWRldGFpbHMgaW1nIHtcblx0XHRcdFx0XHRkaXNwbGF5OiBub25lO1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cblx0XHRcdC8vIE1hcmtzXG5cdFx0XHQuZHotZXJyb3ItbWFyayxcblx0XHRcdC5kei1zdWNjZXNzLW1hcmsge1xuXHRcdFx0XHRkaXNwbGF5OiBub25lO1xuXHRcdFx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0XHRcdHotaW5kZXg6IDk7XG5cdFx0XHRcdHRvcDogMDtcblx0XHRcdFx0cmlnaHQ6IDA7XG5cdFx0XHRcdHBhZGRpbmc6ICgkZHJvcHpvbmUtcHJldmlldy1zcGFjZXIgLyAyKTtcblx0XHRcdFx0YmFja2dyb3VuZC1jb2xvcjogJGNhcmQtYmc7XG5cdFx0XHRcdGJvcmRlci1sZWZ0OiAkY2FyZC1ib3JkZXItd2lkdGggc29saWQgJGNhcmQtYm9yZGVyLWNvbG9yO1xuXHRcdFx0XHRib3JkZXItYm90dG9tOiAkY2FyZC1ib3JkZXItd2lkdGggc29saWQgJGNhcmQtYm9yZGVyLWNvbG9yO1xuXHRcdFx0XHRAaW5jbHVkZSBib3JkZXItcmFkaXVzKDAgMCAwICRjYXJkLWJvcmRlci1yYWRpdXMpO1xuXG5cdFx0XHRcdC8vIEljb24gYmFzZVxuXHRcdFx0XHQmOmFmdGVyIHtcblx0XHRcdFx0XHRmb250LWZhbWlseTogJGljb24tZm9udC1mYW1pbHk7XG5cdFx0XHRcdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0XHRcdFx0Zm9udC1zaXplOiAkZm9udC1zaXplLWJhc2U7XG5cdFx0XHRcdFx0bGluZS1oZWlnaHQ6IDE7XG5cdFx0XHRcdFx0QGluY2x1ZGUgbGwtZm9udC1zbW9vdGhpbmcoKTtcblx0XHRcdFx0fVxuXG5cdFx0XHRcdC8vIEhpZGUgZGVmYXVsdCB0aGluZ3Ncblx0XHRcdFx0c3Bhbixcblx0XHRcdFx0c3ZnIHtcblx0XHRcdFx0XHRkaXNwbGF5OiBub25lO1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0XHQuZHotZXJyb3ItbWFyayB7XG5cdFx0XHRcdGNvbG9yOiB0aGVtZS1jb2xvcignZGFuZ2VyJyk7XG5cblx0XHRcdFx0JjphZnRlciB7XG5cdFx0XHRcdFx0Y29udGVudDogJ1xcZWQ2YSc7XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHRcdC5kei1zdWNjZXNzLW1hcmsge1xuXHRcdFx0XHRjb2xvcjogdGhlbWUtY29sb3IoJ3N1Y2Nlc3MnKTtcblxuXHRcdFx0XHQmOmFmdGVyIHtcblx0XHRcdFx0XHRjb250ZW50OiAnXFxlZDZlJztcblx0XHRcdFx0fVxuXHRcdFx0fVxuXG5cdFx0XHQvLyBFcnJvciBhbmQgc3VjY2VzcyBtYXJrc1xuXHRcdFx0Ji5kei1lcnJvciAuZHotZXJyb3ItbWFyayxcblx0XHRcdCYuZHotc3VjY2VzcyAuZHotc3VjY2Vzcy1tYXJrIHtcblx0XHRcdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0XHRcdG9wYWNpdHk6IDE7XG5cdFx0XHR9XG5cblx0XHRcdC8vIFVwbG9hZGluZyBwcm9ncmVzc1xuXHRcdFx0LmR6LXByb2dyZXNzIHtcblx0XHRcdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdFx0XHRib3R0b206IDA7XG5cdFx0XHRcdGxlZnQ6IDA7XG5cdFx0XHRcdHJpZ2h0OiAwO1xuXHRcdFx0XHRoZWlnaHQ6ICgkZHJvcHpvbmUtcHJldmlldy1zcGFjZXIgLyAyKTtcblx0XHRcdFx0ZGlzcGxheTogbm9uZTtcblxuXHRcdFx0XHQvLyBVcGxvYWQgcHJvZ3Jlc3Ncblx0XHRcdFx0LmR6LXVwbG9hZCB7XG5cdFx0XHRcdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0XHRcdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdFx0XHRcdHRvcDogMDtcblx0XHRcdFx0XHRib3R0b206IDA7XG5cdFx0XHRcdFx0bGVmdDogMDtcblx0XHRcdFx0XHR3aWR0aDogMCU7XG5cdFx0XHRcdFx0aGVpZ2h0OiAxMDAlO1xuXHRcdFx0XHRcdGJhY2tncm91bmQtY29sb3I6IHRoZW1lLWNvbG9yKCdzdWNjZXNzJyk7XG5cdFx0XHRcdFx0QGluY2x1ZGUgdHJhbnNpdGlvbih3aWR0aCBlYXNlLWluLW91dCAkY29tcG9uZW50LXRyYW5zaXRpb24tdGltZXIpO1xuXHRcdFx0XHRcdEBpbmNsdWRlIGJvcmRlci1ib3R0b20tcmFkaXVzKCRjYXJkLWJvcmRlci1yYWRpdXMgLSByZW0tY2FsYygkY2FyZC1ib3JkZXItd2lkdGgpKTtcblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdFx0Ji5kei1wcm9jZXNzaW5nIC5kei1wcm9ncmVzcyB7XG5cdFx0XHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdFx0fVxuXHRcdFx0Ji5kei1zdWNjZXNzIHtcblx0XHRcdFx0LmR6LXByb2dyZXNzIHtcblx0XHRcdFx0XHRkaXNwbGF5OiBibG9jaztcblx0XHRcdFx0XHRvcGFjaXR5OiAwO1xuXHRcdFx0XHRcdEBpbmNsdWRlIHRyYW5zaXRpb24ob3BhY2l0eSBlYXNlLWluLW91dCAkY29tcG9uZW50LXRyYW5zaXRpb24tdGltZXIpO1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cblx0XHRcdC8vIEVycm9yIG1lc3NhZ2Vcblx0XHRcdC5kei1lcnJvci1tZXNzYWdlIHtcblx0XHRcdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRcdFx0dG9wOiAwO1xuXHRcdFx0XHRsZWZ0OiAwO1xuXHRcdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKCRjYXJkLWJnLCAwLjkpO1xuXHRcdFx0XHRtYXJnaW46ICRkcm9wem9uZS1wcmV2aWV3LXNwYWNlcjtcblx0XHRcdFx0cGFkZGluZzogJGRyb3B6b25lLXByZXZpZXctc3BhY2VyO1xuXHRcdFx0XHRjb2xvcjogdGhlbWUtY29sb3IoJ2RhbmdlcicpO1xuXHRcdFx0XHRtYXgtd2lkdGg6IDEwMCU7XG5cdFx0XHRcdHotaW5kZXg6IDU7XG5cdFx0XHRcdG9wYWNpdHk6IDA7XG5cdFx0XHRcdEBpbmNsdWRlIHRyYW5zaXRpb24ob3BhY2l0eSBlYXNlLWluLW91dCAkY29tcG9uZW50LXRyYW5zaXRpb24tdGltZXIpO1xuXHRcdFx0fVxuXHRcdFx0Ji5kei1lcnJvciB7XG5cdFx0XHRcdEBpbmNsdWRlIGhvdmVyIHtcblx0XHRcdFx0XHQuZHotZXJyb3ItbWVzc2FnZSB7XG5cdFx0XHRcdFx0XHRkaXNwbGF5OiBibG9jaztcblx0XHRcdFx0XHRcdG9wYWNpdHk6IDE7XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHR9XG5cblx0XHRcdFx0LmR6LXByb2dyZXNzIC5kei11cGxvYWQge1xuXHRcdFx0XHRcdGJhY2tncm91bmQ6IHRoZW1lLWNvbG9yKCdkYW5nZXInKTtcblx0XHRcdFx0fVxuXHRcdFx0fVxuXG5cdFx0XHQvLyBJbWFnZSBwcmV2aWV3XG5cdFx0XHQmLmR6LWltYWdlLXByZXZpZXc6aG92ZXIge1xuXHRcdFx0XHQuZHotZGV0YWlscyBpbWcge1xuXHRcdFx0XHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdFx0XHRcdG9wYWNpdHk6IDAuMTtcblx0XHRcdFx0fVxuXHRcdFx0fVxuXG5cdFx0XHQvLyBJbWFnZSB0aHVtYlxuXHRcdFx0LmR6LWltYWdlIHtcblx0XHRcdFx0aW1nIHtcblx0XHRcdFx0XHR3aWR0aDogMTAwJTtcblx0XHRcdFx0fVxuXHRcdFx0fVxuXG5cdFx0XHQvLyBSZW1vdmUgYnV0dG9uXG5cdFx0XHRhLmR6LXJlbW92ZSB7XG5cdFx0XHRcdGJhY2tncm91bmQtY29sb3I6ICRidG4tbGlnaHQtYmc7XG5cdFx0XHRcdGJvcmRlcjogJGJ0bi1ib3JkZXItd2lkdGggc29saWQgJGJ0bi1saWdodC1ib3JkZXItY29sb3I7XG5cdFx0XHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdFx0XHRwYWRkaW5nOiAkYnRuLXBhZGRpbmcteS1zbSAkYnRuLXBhZGRpbmcteC1zbTtcblx0XHRcdFx0dGV4dC1hbGlnbjogY2VudGVyO1xuXHRcdFx0XHRjb2xvcjogJGJ0bi1saWdodC1jb2xvcjtcblx0XHRcdFx0bWFyZ2luLXRvcDogbWFwLWdldCgkc3BhY2VycywgMik7XG5cdFx0XHRcdGN1cnNvcjogcG9pbnRlcjtcblx0XHRcdFx0QGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkYm9yZGVyLXJhZGl1cyk7XG5cdFx0XHRcdEBpbmNsdWRlIHRyYW5zaXRpb24oYWxsIGVhc2UtaW4tb3V0ICRjb21wb25lbnQtdHJhbnNpdGlvbi10aW1lcik7XG5cblx0XHRcdFx0Ly8gSG92ZXIgc3RhdGVcblx0XHRcdFx0QGluY2x1ZGUgaG92ZXIge1xuXHRcdFx0XHRcdGNvbG9yOiAkYnRuLWxpZ2h0LWhvdmVyLWNvbG9yO1xuXHRcdFx0XHRcdGJhY2tncm91bmQtY29sb3I6ICRidG4tbGlnaHQtaG92ZXItYmc7XG5cdFx0XHRcdFx0Ym9yZGVyLWNvbG9yOiAkYnRuLWxpZ2h0LWhvdmVyLWJvcmRlci1jb2xvcjtcblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdH1cblx0fVxufVxuIiwiLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4qXG4qICAjIE5vdHkgbm90aWZpY2F0aW9uc1xuKlxuKiAgU3R5bGVzIGZvciBub3R5Lm1pbi5qcyAtIEEgZGVwZW5kZW5jeS1mcmVlIG5vdGlmaWNhdGlvbiBsaWJyYXJ5XG4qXG4qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cblxuLy8gQ2hlY2sgaWYgY29tcG9uZW50IGlzIGVuYWJsZWRcbkBpZiAkZW5hYmxlLW5vdHkge1xuXG4gICAgLy8gQmFzZVxuICAgIC5ub3R5X2JhciB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgLXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIDApIHNjYWxlKDEuMCwgMS4wKTtcbiAgICAgICAgLXdlYmtpdC1mb250LXNtb290aGluZzogc3VicGl4ZWwtYW50aWFsaWFzZWQ7XG4gICAgICAgIEBpbmNsdWRlIGJveC1zaGFkb3coJG5vdGlmaWNhdGlvbi1ib3gtc2hhZG93KTtcbiAgICB9XG5cbiAgICAvLyBCb2R5XG4gICAgLm5vdHlfYm9keSB7XG4gICAgICAgIHBhZGRpbmc6ICRhbGVydC1wYWRkaW5nLXkgJGFsZXJ0LXBhZGRpbmcteDtcblxuICAgICAgICAvLyBJbmNyZWFzZSByaWdodCBwYWRkaW5nIGlmIGFsZXJ0IGhhcyBjbG9zZSBidXR0b25cbiAgICAgICAgLm5vdHlfY2xvc2Vfd2l0aF9idXR0b24gJiB7XG4gICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAoJGFsZXJ0LXBhZGRpbmcteCAqIDIpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLy8gQnV0dG9ucyBhcmVhXG4gICAgLm5vdHlfYnV0dG9ucyB7XG4gICAgICAgIHBhZGRpbmc6ICRhbGVydC1wYWRkaW5nLXkgJGFsZXJ0LXBhZGRpbmcteDtcbiAgICAgICAgcGFkZGluZy10b3A6IDA7XG4gICAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgIH1cblxuICAgIC8vIFBvc2l0aW9uaW5nIG1peGluXG4gICAgLm5vdHlfbGF5b3V0X21peGluIHtcbiAgICAgICAgcG9zaXRpb246IGZpeGVkO1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgIHotaW5kZXg6ICR6aW5kZXgtbW9kYWw7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWigwKSBzY2FsZSgxLjAsIDEuMCk7XG4gICAgICAgIGZpbHRlcjogYmx1cigwKTtcbiAgICAgICAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgICAgICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBzdWJwaXhlbC1hbnRpYWxpYXNlZDtcbiAgICAgICAgbWF4LXdpZHRoOiA5MCU7XG4gICAgfVxuXG5cbiAgICAvL1xuICAgIC8vIFRvcCBwb3NpdGlvblxuICAgIC8vXG5cbiAgICAvLyBGdWxsIHdpZHRoXG4gICAgI25vdHlfbGF5b3V0X190b3Age1xuICAgICAgICBAZXh0ZW5kIC5ub3R5X2xheW91dF9taXhpbjtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICBsZWZ0OiA1JTtcbiAgICAgICAgd2lkdGg6IDkwJTtcblxuICAgICAgICAvLyBBZGQgbW9yZSBzcGFjaW5nIHRvIHRoZSBmaXJzdCBub3RpZmljYXRpb25cbiAgICAgICAgLm5vdHlfYmFyOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6ICRub3RpZmljYXRpb24tZ3V0dGVyLXk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBMZWZ0XG4gICAgI25vdHlfbGF5b3V0X190b3BMZWZ0IHtcbiAgICAgICAgQGV4dGVuZCAubm90eV9sYXlvdXRfbWl4aW47XG4gICAgICAgIHRvcDogJG5vdGlmaWNhdGlvbi1ndXR0ZXIteTtcbiAgICAgICAgbGVmdDogJG5vdGlmaWNhdGlvbi1ndXR0ZXIteDtcbiAgICAgICAgd2lkdGg6ICRub3RpZmljYXRpb24td2lkdGg7XG4gICAgfVxuXG4gICAgLy8gQ2VudGVyXG4gICAgI25vdHlfbGF5b3V0X190b3BDZW50ZXIge1xuICAgICAgICBAZXh0ZW5kIC5ub3R5X2xheW91dF9taXhpbjtcbiAgICAgICAgdG9wOiA1JTtcbiAgICAgICAgbGVmdDogNTAlO1xuICAgICAgICB3aWR0aDogJG5vdGlmaWNhdGlvbi13aWR0aDtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSkgdHJhbnNsYXRlWigwKSBzY2FsZSgxLjAsIDEuMCk7XG4gICAgfVxuXG4gICAgLy8gUmlnaHRcbiAgICAjbm90eV9sYXlvdXRfX3RvcFJpZ2h0IHtcbiAgICAgICAgQGV4dGVuZCAubm90eV9sYXlvdXRfbWl4aW47XG4gICAgICAgIHRvcDogJG5vdGlmaWNhdGlvbi1ndXR0ZXIteTtcbiAgICAgICAgcmlnaHQ6ICRub3RpZmljYXRpb24tZ3V0dGVyLXg7XG4gICAgICAgIHdpZHRoOiAkbm90aWZpY2F0aW9uLXdpZHRoO1xuICAgIH1cblxuXG4gICAgLy9cbiAgICAvLyBNaWRkbGUgcG9zaXRpb25cbiAgICAvL1xuXG4gICAgLy8gQ2VudGVyXG4gICAgI25vdHlfbGF5b3V0X19jZW50ZXIge1xuICAgICAgICBAZXh0ZW5kIC5ub3R5X2xheW91dF9taXhpbjtcbiAgICAgICAgdG9wOiA1MCU7XG4gICAgICAgIGxlZnQ6IDUwJTtcbiAgICAgICAgd2lkdGg6ICRub3RpZmljYXRpb24td2lkdGg7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpIHRyYW5zbGF0ZVooMCkgc2NhbGUoMS4wLCAxLjApO1xuICAgIH1cblxuICAgIC8vIExlZnRcbiAgICAjbm90eV9sYXlvdXRfX2NlbnRlckxlZnQge1xuICAgICAgICBAZXh0ZW5kIC5ub3R5X2xheW91dF9taXhpbjtcbiAgICAgICAgdG9wOiA1MCU7XG4gICAgICAgIGxlZnQ6ICRub3RpZmljYXRpb24tZ3V0dGVyLXg7XG4gICAgICAgIHdpZHRoOiAkbm90aWZpY2F0aW9uLXdpZHRoO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAtNTAlKSB0cmFuc2xhdGVaKDApIHNjYWxlKDEuMCwgMS4wKTtcbiAgICB9XG5cbiAgICAvLyBSaWdodFxuICAgICNub3R5X2xheW91dF9fY2VudGVyUmlnaHQge1xuICAgICAgICBAZXh0ZW5kIC5ub3R5X2xheW91dF9taXhpbjtcbiAgICAgICAgdG9wOiA1MCU7XG4gICAgICAgIHJpZ2h0OiAkbm90aWZpY2F0aW9uLWd1dHRlci14O1xuICAgICAgICB3aWR0aDogJG5vdGlmaWNhdGlvbi13aWR0aDtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgLTUwJSkgdHJhbnNsYXRlWigwKSBzY2FsZSgxLCAxKTtcbiAgICB9XG5cblxuICAgIC8vXG4gICAgLy8gQm90dG9tIHBvc2l0aW9uXG4gICAgLy9cblxuICAgIC8vIEZ1bGwgd2lkdGhcbiAgICAjbm90eV9sYXlvdXRfX2JvdHRvbSB7XG4gICAgICAgIEBleHRlbmQgLm5vdHlfbGF5b3V0X21peGluO1xuICAgICAgICBib3R0b206IDA7XG4gICAgICAgIGxlZnQ6IDUlO1xuICAgICAgICB3aWR0aDogOTAlO1xuXG4gICAgICAgIC8vIEFkZCBtb3JlIHNwYWNpbmcgdG8gdGhlIGxhc3Qgbm90aWZpY2F0aW9uXG4gICAgICAgIC5ub3R5X2JhcjpsYXN0LWNoaWxkIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206ICRub3RpZmljYXRpb24tZ3V0dGVyLXk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBMZWZ0XG4gICAgI25vdHlfbGF5b3V0X19ib3R0b21MZWZ0IHtcbiAgICAgICAgQGV4dGVuZCAubm90eV9sYXlvdXRfbWl4aW47XG4gICAgICAgIGJvdHRvbTogJG5vdGlmaWNhdGlvbi1ndXR0ZXIteTtcbiAgICAgICAgbGVmdDogJG5vdGlmaWNhdGlvbi1ndXR0ZXIteDtcbiAgICAgICAgd2lkdGg6ICRub3RpZmljYXRpb24td2lkdGg7XG4gICAgfVxuXG4gICAgLy8gQ2VudGVyXG4gICAgI25vdHlfbGF5b3V0X19ib3R0b21DZW50ZXIge1xuICAgICAgICBAZXh0ZW5kIC5ub3R5X2xheW91dF9taXhpbjtcbiAgICAgICAgYm90dG9tOiA1JTtcbiAgICAgICAgbGVmdDogNTAlO1xuICAgICAgICB3aWR0aDogJG5vdGlmaWNhdGlvbi13aWR0aDtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoY2FsYygtNTAlIC0gI3skYWxlcnQtYm9yZGVyLXdpZHRofSkpIHRyYW5zbGF0ZVooMCkgc2NhbGUoMS4wLCAxLjApO1xuICAgIH1cblxuICAgIC8vIFJpZ2h0XG4gICAgI25vdHlfbGF5b3V0X19ib3R0b21SaWdodCB7XG4gICAgICAgIEBleHRlbmQgLm5vdHlfbGF5b3V0X21peGluO1xuICAgICAgICBib3R0b206ICRub3RpZmljYXRpb24tZ3V0dGVyLXk7XG4gICAgICAgIHJpZ2h0OiAkbm90aWZpY2F0aW9uLWd1dHRlci14O1xuICAgICAgICB3aWR0aDogJG5vdGlmaWNhdGlvbi13aWR0aDtcbiAgICB9XG5cblxuICAgIC8vXG4gICAgLy8gUHJvZ3Jlc3MgYmFyXG4gICAgLy9cblxuICAgIC5ub3R5X3Byb2dyZXNzYmFyIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcblxuICAgICAgICAvLyBTaG93IG9ubHkgaWYgbm90aWZpY2F0aW9uIGhhcyB0aW1lb3V0XG4gICAgICAgIC5ub3R5X2hhc190aW1lb3V0Lm5vdHlfaGFzX3Byb2dyZXNzYmFyICYge1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICAgICAgaGVpZ2h0OiAkbm90eS1wcm9ncmVzcy1oZWlnaHQ7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRub3R5LXByb2dyZXNzLWJnO1xuICAgICAgICB9XG4gICAgfVxuXG5cbiAgICAvL1xuICAgIC8vIEFuaW1hdGlvbiBlZmZlY3RzXG4gICAgLy9cblxuICAgIC8vIE9wZW5cbiAgICAubm90eV9lZmZlY3RzX29wZW4ge1xuICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSg1MCUpO1xuICAgICAgICBhbmltYXRpb246IG5vdHlfYW5pbV9pbiAuNXMgY3ViaWMtYmV6aWVyKDAuNjgsIC0wLjU1LCAwLjI2NSwgMS41NSk7XG4gICAgICAgIGFuaW1hdGlvbi1maWxsLW1vZGU6IGZvcndhcmRzO1xuICAgIH1cblxuICAgIC8vIENsb3NlXG4gICAgLm5vdHlfZWZmZWN0c19jbG9zZSB7XG4gICAgICAgIGFuaW1hdGlvbjogbm90eV9hbmltX291dCAuNXMgY3ViaWMtYmV6aWVyKDAuNjgsIC0wLjU1LCAwLjI2NSwgMS41NSk7XG4gICAgICAgIGFuaW1hdGlvbi1maWxsLW1vZGU6IGZvcndhcmRzO1xuICAgIH1cblxuICAgIC8vIEhlaWdodFxuICAgIC5ub3R5X2ZpeF9lZmZlY3RzX2hlaWdodCB7XG4gICAgICAgIGFuaW1hdGlvbjogbm90eV9hbmltX2hlaWdodCA3NW1zIGVhc2Utb3V0O1xuICAgIH1cblxuXG4gICAgLy9cbiAgICAvLyBDbG9zZSBidXR0b25cbiAgICAvL1xuXG4gICAgLy8gT24gbm90aWZpY2F0aW9uIGNsaWNrXG4gICAgLm5vdHlfY2xvc2Vfd2l0aF9jbGljayB7XG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICB9XG5cbiAgICAvLyBCdXR0b25cbiAgICAubm90eV9jbG9zZV9idXR0b24ge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogJGFsZXJ0LXBhZGRpbmcteTtcbiAgICAgICAgcmlnaHQ6ICRhbGVydC1wYWRkaW5nLXg7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICBmb250LXNpemU6ICRjbG9zZS1mb250LXNpemU7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiAkY2xvc2UtZm9udC13ZWlnaHQ7XG4gICAgICAgIGNvbG9yOiBpbmhlcml0O1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgIG9wYWNpdHk6IDAuNzU7XG4gICAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb24ob3BhY2l0eSBlYXNlLWluLW91dCAkY29tcG9uZW50LXRyYW5zaXRpb24tdGltZXIpO1xuXG4gICAgICAgIC8vIEFuaW1hdGUgb24gaG92ZXJcbiAgICAgICAgQGluY2x1ZGUgaG92ZXIge1xuICAgICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgfVxuICAgIH1cblxuXG4gICAgLy9cbiAgICAvLyBNb2RhbFxuICAgIC8vXG5cbiAgICAubm90eV9tb2RhbCB7XG4gICAgICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJG1vZGFsLWJhY2tkcm9wLWJnO1xuICAgICAgICB6LWluZGV4OiAkemluZGV4LW1vZGFsLWJhY2tkcm9wO1xuICAgICAgICBvcGFjaXR5OiAkbW9kYWwtYmFja2Ryb3Atb3BhY2l0eTtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgdG9wOiAwO1xuXG4gICAgICAgIC8vIE9wZW5cbiAgICAgICAgJi5ub3R5X21vZGFsX29wZW4ge1xuICAgICAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgICAgIGFuaW1hdGlvbjogbm90eV9tb2RhbF9pbiAuM3MgZWFzZS1vdXQ7XG4gICAgICAgIH1cblxuICAgICAgICAvLyBDbG9zZVxuICAgICAgICAmLm5vdHlfbW9kYWxfY2xvc2Uge1xuICAgICAgICAgICAgYW5pbWF0aW9uOiBub3R5X21vZGFsX291dCAuM3MgZWFzZS1vdXQ7XG4gICAgICAgICAgICBhbmltYXRpb24tZmlsbC1tb2RlOiBmb3J3YXJkcztcbiAgICAgICAgfVxuICAgIH1cblxuXG4gICAgLy9cbiAgICAvLyBBbmltYXRpb25zXG4gICAgLy9cblxuICAgIEBrZXlmcmFtZXMgbm90eV9tb2RhbF9pbiB7XG4gICAgICAgIDEwMCUge1xuICAgICAgICAgICAgb3BhY2l0eTogJG1vZGFsLWJhY2tkcm9wLW9wYWNpdHk7XG4gICAgICAgIH1cbiAgICB9XG4gICAgQGtleWZyYW1lcyBub3R5X21vZGFsX291dCB7XG4gICAgICAgIDEwMCUge1xuICAgICAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgfVxuICAgIH1cbiAgICBAa2V5ZnJhbWVzIG5vdHlfYW5pbV9pbiB7XG4gICAgICAgIDEwMCUge1xuICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCk7XG4gICAgICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICB9XG4gICAgfVxuICAgIEBrZXlmcmFtZXMgbm90eV9hbmltX291dCB7XG4gICAgICAgIDEwMCUge1xuICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoNTAlKTtcbiAgICAgICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgIH1cbiAgICB9XG4gICAgQGtleWZyYW1lcyBub3R5X2FuaW1faGVpZ2h0IHtcbiAgICAgICAgMTAwJSB7XG4gICAgICAgICAgICBoZWlnaHQ6IDA7XG4gICAgICAgIH1cbiAgICB9XG5cblxuICAgIC8vXG4gICAgLy8gRGVmYXVsdCBsaW1pdGxlc3MgdGhlbWVcbiAgICAvL1xuXG4gICAgLm5vdHlfdGhlbWVfX2xpbWl0bGVzcyB7XG5cbiAgICAgICAgLy8gQmFzZVxuICAgICAgICAmLm5vdHlfYmFyIHtcbiAgICAgICAgICAgIG1hcmdpbjogJG5vdHktc3BhY2VyLXkgMDtcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgIGJvcmRlcjogJGFsZXJ0LWJvcmRlci13aWR0aCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICAgICAgICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGFsZXJ0LWJvcmRlci1yYWRpdXMpO1xuICAgICAgICB9XG5cbiAgICAgICAgLy8gQWxlcnQgdHlwZVxuICAgICAgICAmLm5vdHlfdHlwZV9fYWxlcnQge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJG5vdGlmaWNhdGlvbi1hbGVydC1iZztcbiAgICAgICAgICAgIGNvbG9yOiAkbm90aWZpY2F0aW9uLWFsZXJ0LWNvbG9yO1xuICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiAkbm90aWZpY2F0aW9uLWFsZXJ0LWJvcmRlci1jb2xvcjtcbiAgICAgICAgfVxuXG4gICAgICAgIC8vIFdhcm5pbmcgdHlwZVxuICAgICAgICAmLm5vdHlfdHlwZV9fd2FybmluZyB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbm90aWZpY2F0aW9uLXdhcm5pbmctYmc7XG4gICAgICAgICAgICBjb2xvcjogJG5vdGlmaWNhdGlvbi13YXJuaW5nLWNvbG9yO1xuICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiAkbm90aWZpY2F0aW9uLXdhcm5pbmctYm9yZGVyLWNvbG9yO1xuICAgICAgICB9XG5cbiAgICAgICAgLy8gRXJyb3IgdHlwZVxuICAgICAgICAmLm5vdHlfdHlwZV9fZXJyb3Ige1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJG5vdGlmaWNhdGlvbi1lcnJvci1iZztcbiAgICAgICAgICAgIGNvbG9yOiAkbm90aWZpY2F0aW9uLWVycm9yLWNvbG9yO1xuICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiAkbm90aWZpY2F0aW9uLWVycm9yLWJvcmRlci1jb2xvcjtcbiAgICAgICAgfVxuXG4gICAgICAgIC8vIEluZm8gdHlwZVxuICAgICAgICAmLm5vdHlfdHlwZV9faW5mbyB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbm90aWZpY2F0aW9uLWluZm8tYmc7XG4gICAgICAgICAgICBjb2xvcjogJG5vdGlmaWNhdGlvbi1pbmZvLWNvbG9yO1xuICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiAkbm90aWZpY2F0aW9uLWluZm8tYm9yZGVyLWNvbG9yO1xuICAgICAgICB9XG5cbiAgICAgICAgLy8gU3VjY2VzcyB0eXBlXG4gICAgICAgICYubm90eV90eXBlX19zdWNjZXNzIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRub3RpZmljYXRpb24tc3VjY2Vzcy1iZztcbiAgICAgICAgICAgIGNvbG9yOiAkbm90aWZpY2F0aW9uLXN1Y2Nlc3MtY29sb3I7XG4gICAgICAgICAgICBib3JkZXItY29sb3I6ICRub3RpZmljYXRpb24tc3VjY2Vzcy1ib3JkZXItY29sb3I7XG4gICAgICAgIH1cblxuICAgICAgICAvLyBDb25maXJtYXRpb24gdHlwZVxuICAgICAgICAmLm5vdHlfdHlwZV9fY29uZmlybSB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbW9kYWwtY29udGVudC1iZztcbiAgICAgICAgICAgIGJvcmRlci1jb2xvcjogJG1vZGFsLWNvbnRlbnQtYm9yZGVyLWNvbG9yO1xuICAgICAgICAgICAgQGluY2x1ZGUgYm94LXNoYWRvdygkbW9kYWwtY29udGVudC1ib3gtc2hhZG93LXhzKTtcblxuICAgICAgICAgICAgLy8gVXNlIGJpZ2dlciB2ZXJ0aWNhbCBwYWRkaW5nXG4gICAgICAgICAgICAubm90eV9ib2R5IHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAkYWxlcnQtcGFkZGluZy14O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAvLyBPdmVycmlkZSB0b3AgcGFkZGluZyBmb3IgY2xvc2UgYnV0dG9uIHRvIG1hdGNoIG5ldyB2ZXJ0aWNhbCBwYWRkaW5nXG4gICAgICAgICAgICAubm90eV9jbG9zZV9idXR0b24ge1xuICAgICAgICAgICAgICAgIHRvcDogJGFsZXJ0LXBhZGRpbmcteDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cbiIsIi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuKlxuKiAgIyBQTm90aWZ5IG5vdGlmaWNhdGlvbnNcbipcbiogIFN0eWxlcyBmb3IgcG5vdGlmeS5taW4uanMgLSBhIGZsZXhpYmxlIEphdmFTY3JpcHQgbm90aWZpY2F0aW9uIHBsdWdpblxuKlxuKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5cbi8vIENoZWNrIGlmIGNvbXBvbmVudCBpcyBlbmFibGVkXG5AaWYgJGVuYWJsZS1wbm90aWZ5IHtcblxuXHQvLyBCYXNlXG5cdC51aS1wbm90aWZ5IHtcblx0ICAgIHRvcDogJG5vdGlmaWNhdGlvbi1ndXR0ZXIteTtcblx0ICAgIHJpZ2h0OiAkbm90aWZpY2F0aW9uLWd1dHRlci14O1xuXHQgICAgcG9zaXRpb246IGFic29sdXRlO1xuXHQgICAgaGVpZ2h0OiBhdXRvO1xuXHQgICAgei1pbmRleDogMjtcblx0ICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGJvcmRlci1yYWRpdXMpO1xuXHQgICAgQGluY2x1ZGUgYm94LXNoYWRvdygkbm90aWZpY2F0aW9uLWJveC1zaGFkb3cpO1xuXG5cdCAgICAvLyBSZWxhdGVkIHRvIHdpbmRvd1xuXHQgICAgYm9keSA+ICYge1xuXHQgICAgXHRwb3NpdGlvbjogZml4ZWQ7XG5cdCAgICBcdHotaW5kZXg6ICR6aW5kZXgtdG9vbHRpcDtcblx0ICAgIH1cblxuXHRcdC8vIFJvdW5kZWQgYWxlcnRzXG5cdFx0Ji5hbGVydC1yb3VuZGVkID4gLnVpLXBub3RpZnktY29udGFpbmVyIHtcblx0XHRcdEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGJvcmRlci1yYWRpdXMtcm91bmQpO1xuXHRcdH1cblxuXHRcdC8vIFNvbGlkIGNvbG9yIGFsZXJ0c1xuXHRcdCZbY2xhc3MqPWJnLV0gPiAudWktcG5vdGlmeS1jb250YWluZXIge1xuXHRcdFx0YmFja2dyb3VuZC1jb2xvcjogaW5oZXJpdDtcblx0XHRcdGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG5cdFx0XHRjb2xvcjogJHdoaXRlO1xuXHRcdH1cblxuXHRcdC8vIEN1c3RvbSB0ZXh0IGFuZCBsaWdodCBiYWNrZ3JvdW5kIGNvbG9yc1xuXHRcdCZbY2xhc3MqPXRleHQtXSA+IC51aS1wbm90aWZ5LWNvbnRhaW5lcixcblx0XHQmW2NsYXNzKj1hbHBoYS1dID4gLnVpLXBub3RpZnktY29udGFpbmVyIHtcblx0XHRcdGJhY2tncm91bmQtY29sb3I6IGluaGVyaXQ7XG5cdFx0XHRib3JkZXItY29sb3I6IGluaGVyaXQ7XG5cdFx0XHRjb2xvcjogaW5oZXJpdDtcblx0XHR9XG5cblxuXHRcdC8vXG5cdFx0Ly8gU3RhY2sgcG9zaXRpb25zXG5cdFx0Ly9cblxuXHRcdC8vIEFsdGVybmF0ZSBzdGFjayBpbml0aWFsIHBvc2l0aW9uaW5nXG5cdFx0Ji5zdGFjay10b3AtbGVmdCxcblx0XHQmLnN0YWNrLWJvdHRvbS1sZWZ0IHtcblx0XHQgICAgbGVmdDogJG5vdGlmaWNhdGlvbi1ndXR0ZXIteDtcblx0XHQgICAgcmlnaHQ6IGF1dG87XG5cdFx0fVxuXHRcdCYuc3RhY2stYm90dG9tLXJpZ2h0LFxuXHRcdCYuc3RhY2stYm90dG9tLWxlZnQge1xuXHRcdCAgICBib3R0b206ICRub3RpZmljYXRpb24tZ3V0dGVyLXk7XG5cdFx0ICAgIHRvcDogYXV0bztcblx0XHR9XG5cdFx0Ji5zdGFjay1tb2RhbCB7XG5cdFx0ICAgIGxlZnQ6IDUwJTtcblx0XHQgICAgcmlnaHQ6IGF1dG87XG5cdFx0ICAgIG1hcmdpbi1sZWZ0OiAtKCRub3RpZmljYXRpb24td2lkdGggLyAyKTtcblx0XHR9XG5cblx0XHQvLyBDdXN0b20gc3RhY2sgcG9zaXRpb25zXG5cdFx0Ji5zdGFjay1jdXN0b20tcmlnaHQge1xuXHRcdFx0dG9wOiBhdXRvO1xuXHRcdFx0bGVmdDogYXV0bztcblx0XHRcdGJvdHRvbTogMTVyZW07XG5cdFx0XHRyaWdodDogMTVyZW07XG5cdFx0fVxuXHRcdCYuc3RhY2stY3VzdG9tLWxlZnQge1xuXHRcdFx0dG9wOiAxNXJlbTtcblx0XHRcdGxlZnQ6IDE1cmVtO1xuXHRcdFx0cmlnaHQ6IGF1dG87XG5cdFx0XHRib3R0b206IGF1dG87XG5cdFx0fVxuXHRcdCYuc3RhY2stY3VzdG9tLXRvcCB7XG5cdFx0XHRyaWdodDogMDtcblx0XHRcdGxlZnQ6IDA7XG5cdFx0XHR0b3A6IDA7XG5cdFx0fVxuXHRcdCYuc3RhY2stY3VzdG9tLWJvdHRvbSB7XG5cdFx0XHRyaWdodDogMDtcblx0XHRcdGxlZnQ6IDA7XG5cdFx0XHRib3R0b206IDA7XG5cdFx0XHR0b3A6IGF1dG87XG5cdFx0fVxuXG5cblx0XHQvL1xuXHRcdC8vIEFuaW1hdGlvbnNcblx0XHQvL1xuXG5cdFx0Ly8gRGlzcGxheSBub3RpZmljYXRpb25cblx0XHQmLnVpLXBub3RpZnktaW4ge1xuXHRcdCAgICBkaXNwbGF5OiBibG9jayFpbXBvcnRhbnQ7XG5cdFx0fVxuXG5cdFx0Ly8gTW92ZSBub3RpZmljYXRpb25cblx0XHQmLnVpLXBub3RpZnktbW92ZSB7XG5cdFx0ICAgIHRyYW5zaXRpb246IGxlZnQgLjVzIGVhc2UsIHRvcCAuNXMgZWFzZSwgcmlnaHQgLjVzIGVhc2UsIGJvdHRvbSAuNXMgZWFzZTtcblx0XHR9XG5cblx0XHQvLyBTbG93IGZhZGluZ1xuXHRcdCYudWktcG5vdGlmeS1mYWRlLXNsb3cge1xuXHRcdFx0b3BhY2l0eTogMDtcblx0XHQgICAgdHJhbnNpdGlvbjogb3BhY2l0eSBsaW5lYXIgMC42cztcblxuXHRcdFx0Ji51aS1wbm90aWZ5LnVpLXBub3RpZnktbW92ZSB7XG5cdFx0XHQgICAgdHJhbnNpdGlvbjogb3BhY2l0eSAuNnMgbGluZWFyLCBsZWZ0IC41cyBlYXNlLCB0b3AgLjVzIGVhc2UsIHJpZ2h0IC41cyBlYXNlLCBib3R0b20gLjVzIGVhc2U7XG5cdFx0XHR9XG5cdFx0fVxuXG5cdFx0Ly8gTm9ybWFsIGZhZGluZ1xuXHRcdCYudWktcG5vdGlmeS1mYWRlLW5vcm1hbCB7XG5cdFx0ICAgIG9wYWNpdHk6IDA7XG5cdFx0ICAgIHRyYW5zaXRpb246IG9wYWNpdHkgbGluZWFyIDAuNHM7XG5cblx0XHRcdCYudWktcG5vdGlmeS51aS1wbm90aWZ5LW1vdmUge1xuXHRcdFx0ICAgIHRyYW5zaXRpb246IG9wYWNpdHkgLjRzIGxpbmVhciwgbGVmdCAuNXMgZWFzZSwgdG9wIC41cyBlYXNlLCByaWdodCAuNXMgZWFzZSwgYm90dG9tIC41cyBlYXNlO1xuXHRcdFx0fVxuXHRcdH1cblxuXHRcdC8vIEZhc3QgZmFkaW5nXG5cdFx0Ji51aS1wbm90aWZ5LWZhZGUtZmFzdCB7XG5cdFx0ICAgIHRyYW5zaXRpb246IG9wYWNpdHkgLjJzIGxpbmVhcjtcblx0XHQgICAgb3BhY2l0eTogMDtcblxuXHRcdFx0Ji51aS1wbm90aWZ5LnVpLXBub3RpZnktbW92ZSB7XG5cdFx0XHQgICAgdHJhbnNpdGlvbjogb3BhY2l0eSAuMnMgbGluZWFyLCBsZWZ0IC41cyBlYXNlLCB0b3AgLjVzIGVhc2UsIHJpZ2h0IC41cyBlYXNlLCBib3R0b20gLjVzIGVhc2U7XG5cdFx0XHR9XG5cdFx0fVxuXG5cdFx0Ly8gRmFkaW5nXG5cdFx0Ji51aS1wbm90aWZ5LWZhZGUtaW4ge1xuXHRcdCAgICBvcGFjaXR5OiAxO1xuXHRcdH1cblx0fVxuXG5cblx0Ly9cblx0Ly8gTm90aWZpY2F0aW9uIGxheW91dFxuXHQvL1xuXG5cdC8vIENvbnRhaW5lclxuXHQudWktcG5vdGlmeS1jb250YWluZXIge1xuXHQgICAgcGFkZGluZzogJGFsZXJ0LXBhZGRpbmcteSAkYWxlcnQtcGFkZGluZy14O1xuXHQgICAgaGVpZ2h0OiAxMDAlO1xuXHQgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXHQgICAgbGVmdDogMDtcblx0ICAgIG1hcmdpbjogMDtcblx0ICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGJvcmRlci1yYWRpdXMpO1xuXHQgICAgQGluY2x1ZGUgY2xlYXJmaXg7XG5cblx0XHQvLyBSb3VuZGxlc3Mgbm90aWZpY2F0aW9uc1xuXHRcdCYudWktcG5vdGlmeS1zaGFycCB7XG5cdFx0ICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoMCk7XG5cdFx0fVxuXHR9XG5cblx0Ly8gVGl0bGVcblx0LnVpLXBub3RpZnktdGl0bGUge1xuXHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdG1hcmdpbi10b3A6IDA7XG5cdFx0bWFyZ2luLWJvdHRvbTogbWFwLWdldCgkc3BhY2VycywgMSk7XG5cdFx0Zm9udC1zaXplOiAkaDYtZm9udC1zaXplO1xuXHR9XG5cblx0Ly8gVGV4dFxuXHQudWktcG5vdGlmeS10ZXh0IHtcblx0ICAgIGRpc3BsYXk6IGJsb2NrO1xuXHR9XG5cblx0Ly8gTm90aWZpY2F0aW9uIGljb25cblx0LnVpLXBub3RpZnktaWNvbiB7XG5cdCAgICBkaXNwbGF5OiBibG9jaztcblx0ICAgIGZsb2F0OiBsZWZ0O1xuXHQgICAgbGluZS1oZWlnaHQ6IDE7XG5cblx0ICAgID4gW2NsYXNzXj1pY29uLV0ge1xuXHRcdCAgICBtYXJnaW4tdG9wOiAoJGxpbmUtaGVpZ2h0LWNvbXB1dGVkIC0gJGljb24tZm9udC1zaXplKTtcblx0XHQgICAgbWFyZ2luLXJpZ2h0OiAkZWxlbWVudC1zcGFjZXIteDtcblx0ICAgIH1cblx0fVxuXG5cdC8vIENvbnRyb2wgYnV0dG9uc1xuXHQudWktcG5vdGlmeS1jbG9zZXIsXG5cdC51aS1wbm90aWZ5LXN0aWNrZXIge1xuXHRcdGZsb2F0OiByaWdodDtcblx0XHRtYXJnaW4tbGVmdDogJGVsZW1lbnQtc3BhY2VyLXg7XG5cdFx0bWFyZ2luLXRvcDogKCRsaW5lLWhlaWdodC1jb21wdXRlZCAtICRpY29uLWZvbnQtc2l6ZSk7XG5cdFx0bGluZS1oZWlnaHQ6IDE7XG5cdFx0b3V0bGluZTogMDtcblx0fVxuXG5cblx0Ly9cblx0Ly8gVXRpbGl0eSBjbGFzc2VzXG5cdC8vXG5cblx0Ly8gT3ZlcmxheVxuXHQudWktcG5vdGlmeS1tb2RhbC1vdmVybGF5IHtcblx0ICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoJG1vZGFsLWJhY2tkcm9wLWJnLCAkbW9kYWwtYmFja2Ryb3Atb3BhY2l0eSk7XG5cdCAgICB0b3A6IDA7XG5cdCAgICBsZWZ0OiAwO1xuXHQgICAgcG9zaXRpb246IGFic29sdXRlO1xuXHQgICAgei1pbmRleDogMTtcblx0ICAgIEBpbmNsdWRlIHNpemUoMTAwJSk7XG5cblx0ICAgIGJvZHkgPiAmIHtcblx0XHQgICAgcG9zaXRpb246IGZpeGVkO1xuXHRcdCAgICB6LWluZGV4OiAkemluZGV4LW1vZGFsLWJhY2tkcm9wO1xuXHQgICAgfVxuXHR9XG5cblxuXHQvL1xuXHQvLyBOb3RpZmljYXRpb24gdGhlbWVcblx0Ly9cblxuXHQuYnJpZ2h0dGhlbWUge1xuXHQgICAgYm9yZGVyOiAkYWxlcnQtYm9yZGVyLXdpZHRoIHNvbGlkO1xuXG5cdCAgICAvLyBDdXN0b20gY29sb3Jcblx0ICAgIC51aS1wbm90aWZ5W2NsYXNzKj1iZy1dID4gJiB7XG5cdCAgICBcdGJhY2tncm91bmQtY29sb3I6IGluaGVyaXQ7XG5cdCAgICBcdGJvcmRlci1jb2xvcjogaW5oZXJpdDtcblx0ICAgIFx0Y29sb3I6IGluaGVyaXQ7XG5cdCAgICB9XG5cdH1cblxuXG5cdC8vXG5cdC8vIENvbnRleHR1YWwgYWx0ZXJuYXRpdmVzXG5cdC8vXG5cblx0LmJyaWdodHRoZW1lLW5vdGljZSB7XG5cdCAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3Itb3JhbmdlLTUwO1xuXHQgICAgYm9yZGVyLWNvbG9yOiAkY29sb3Itb3JhbmdlLTUwMDtcblx0ICAgIGNvbG9yOiAkY29sb3Itd2FybmluZy05MDA7XG5cdH1cblx0LmJyaWdodHRoZW1lLWluZm8ge1xuXHQgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLWJsdWUtNTA7XG5cdCAgICBib3JkZXItY29sb3I6ICRjb2xvci1ibHVlLTUwMDtcblx0ICAgIGNvbG9yOiAkY29sb3ItYmx1ZS05MDA7XG5cdH1cblx0LmJyaWdodHRoZW1lLXN1Y2Nlc3Mge1xuXHQgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLXN1Y2Nlc3MtNTA7XG5cdCAgICBib3JkZXItY29sb3I6ICRjb2xvci1zdWNjZXNzLTUwMDtcblx0ICAgIGNvbG9yOiAkY29sb3Itc3VjY2Vzcy05MDA7XG5cdH1cblx0LmJyaWdodHRoZW1lLWVycm9yIHtcblx0ICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1kYW5nZXItNTA7XG5cdCAgICBib3JkZXItY29sb3I6ICRjb2xvci1kYW5nZXItNTAwO1xuXHQgICAgY29sb3I6ICRjb2xvci1kYW5nZXItOTAwO1xuXHR9XG5cblxuXHQvL1xuXHQvLyBOb3RpZmljYXRpb24gY29udHJvbHNcblx0Ly9cblxuXHQvLyBCYXNlXG5cdC5icmlnaHR0aGVtZS1pY29uLWNsb3Nlcixcblx0LmJyaWdodHRoZW1lLWljb24tc3RpY2tlciB7XG5cdCAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cdCAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cdCAgICBvdXRsaW5lOiAwO1xuXHQgICAgQGluY2x1ZGUgc2l6ZSgkZm9udC1zaXplLXNtKTtcblxuXHQgICAgLy8gSWNvbnNcblx0ICAgICY6YWZ0ZXIge1xuXHQgICAgXHRjb250ZW50OiAnJztcblx0ICAgIFx0Zm9udC1mYW1pbHk6ICRpY29uLWZvbnQtZmFtaWx5O1xuXHQgICAgXHRmb250LXNpemU6ICRmb250LXNpemUtc207XG5cdCAgICBcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdFx0QGluY2x1ZGUgbGwtZm9udC1zbW9vdGhpbmcoKTtcblx0ICAgIH1cblx0fVxuXG5cdC8vIENsb3NlciBpY29uXG5cdC5icmlnaHR0aGVtZS1pY29uLWNsb3NlcjphZnRlciB7XG5cdCAgICBjb250ZW50OiBcIlxcZWQ2YVwiO1xuXHR9XG5cblx0Ly8gU3RpY2tlciBpY29uXG5cdC5icmlnaHR0aGVtZS1pY29uLXN0aWNrZXI6YWZ0ZXIge1xuXHQgICAgY29udGVudDogXCJcXGVlNzBcIjtcblx0fVxuXG5cdC8vIFN0aWNrZWQgaWNvblxuXHQuYnJpZ2h0dGhlbWUtaWNvbi1zdGlja2VyLmJyaWdodHRoZW1lLWljb24tc3R1Y2s6YWZ0ZXIge1xuXHRcdGNvbnRlbnQ6IFwiXFxlZTc1XCI7XG5cdH1cblxuXG5cdC8vXG5cdC8vIEN1c3RvbSBhbGVydCBzdHlsZXNcblx0Ly9cblxuXHQvLyBTdHlsZWQgYWxlcnRcblx0LnVpLXBub3RpZnlbY2xhc3MqPWFsZXJ0LXN0eWxlZC1dIHtcblx0XHRib3JkZXItd2lkdGg6IDA7XG5cdFx0cGFkZGluZzogMDtcblx0fVxuXG5cdC8vIExlZnQgcG9zaXRpb25cblx0LnVpLXBub3RpZnkuYWxlcnQtc3R5bGVkLWxlZnQge1xuXG5cdFx0Ly8gQm9yZGVyXG5cdFx0LmJyaWdodHRoZW1lIHtcblx0XHRcdGJvcmRlci1sZWZ0LXdpZHRoOiAoKCRhbGVydC1wYWRkaW5nLXkgKiAyKSArICRpY29uLWZvbnQtc2l6ZSk7XG5cdFx0fVxuXG5cdFx0Ly8gSWNvblxuXHRcdCY6YWZ0ZXIge1xuXHRcdFx0bGVmdDogMDtcblx0XHR9XG5cdH1cblxuXHQvLyBSaWdodCBwb3NpdGlvblxuXHQudWktcG5vdGlmeS5hbGVydC1zdHlsZWQtcmlnaHQge1xuXG5cdFx0Ly8gQm9yZGVyXG5cdFx0LmJyaWdodHRoZW1lIHtcblx0XHRcdGJvcmRlci1yaWdodC13aWR0aDogKCgkYWxlcnQtcGFkZGluZy15ICogMikgKyAkaWNvbi1mb250LXNpemUpO1xuXHRcdH1cblxuXHRcdC8vIEljb25cblx0XHQmOmFmdGVyIHtcblx0XHRcdHJpZ2h0OiAwO1xuXHRcdH1cblx0fVxuXG5cblx0Ly9cblx0Ly8gQWN0aW9uIGJhclxuXHQvL1xuXG5cdC5icmlnaHR0aGVtZSB7XG5cdFx0LnVpLXBub3RpZnktYWN0aW9uLWJhciB7XG5cdFx0XHR0ZXh0YXJlYSxcblx0XHRcdGlucHV0IHtcblx0XHRcdCAgICBkaXNwbGF5OiBibG9jaztcblx0XHRcdCAgICB3aWR0aDogMTAwJTtcblx0XHRcdCAgICBib3JkZXI6ICRpbnB1dC1ib3JkZXItd2lkdGggc29saWQgJGlucHV0LWJvcmRlci1jb2xvcjtcblx0XHRcdCAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaW5wdXQtYmc7XG5cdFx0XHQgICAgbWFyZ2luLWJvdHRvbTogJGZvcm0tZ3JvdXAtbWFyZ2luLWJvdHRvbSFpbXBvcnRhbnQ7XG5cdFx0XHQgICAgY29sb3I6ICRpbnB1dC1jb2xvcjtcblx0XHRcdCAgICBwYWRkaW5nOiAkaW5wdXQtcGFkZGluZy15ICRpbnB1dC1wYWRkaW5nLXg7XG5cdFx0XHQgICAgb3V0bGluZTogMDtcblxuXHRcdFx0ICAgIC8vIEluIGNvbG9yZWQgYmFja2dyb3VuZFxuXHRcdFx0ICAgIC51aS1wbm90aWZ5W2NsYXNzKj1iZy1dICYge1xuXHRcdFx0ICAgIFx0Ym9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcblx0XHRcdCAgICBcdGNvbG9yOiAkd2hpdGU7XG5cblx0XHRcdFx0ICAgIC8vIFBsYWNlaG9sZGVyXG5cdFx0XHRcdCAgICAmOjpwbGFjZWhvbGRlciB7XG5cdFx0XHRcdCAgICAgICAgY29sb3I6ICRpbnB1dC1wbGFjZWhvbGRlci1saWdodC1jb2xvcjtcblx0XHRcdFx0ICAgICAgICBvcGFjaXR5OiAxO1xuXHRcdFx0XHQgICAgfVxuXHRcdFx0ICAgIH1cblx0XHRcdH1cblx0XHR9XG5cdH1cblxuXG5cdC8vXG5cdC8vIE5vdGlmaWNhdGlvbiBoaXN0b3J5XG5cdC8vXG5cblx0Ly8gQ29udGFpbmVyXG5cdC51aS1wbm90aWZ5LWhpc3RvcnktY29udGFpbmVyIHtcblx0ICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0ICAgIHRvcDogMDtcblx0ICAgIHJpZ2h0OiAkbm90aWZpY2F0aW9uLWd1dHRlci14O1xuXHQgICAgYm9yZGVyLXRvcDogbm9uZTtcblx0ICAgIHBhZGRpbmc6IDA7XG5cdCAgICB6LWluZGV4OiAkemluZGV4LXRvb2x0aXA7XG5cdCAgICBAaW5jbHVkZSBib3JkZXItdG9wLXJhZGl1cygwKTtcblxuXHQgICAgLy8gRml4ZWQgY29udGFpbmVyXG5cdFx0Ji51aS1wbm90aWZ5LWhpc3RvcnktZml4ZWQge1xuXHRcdCAgICBwb3NpdGlvbjogZml4ZWQ7XG5cdFx0fVxuXG5cdFx0Ly8gSGVhZGVyXG5cdFx0LnVpLXBub3RpZnktaGlzdG9yeS1oZWFkZXIge1xuXHRcdCAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cdFx0ICAgIG1hcmdpbi1ib3R0b206IG1hcC1nZXQoJHNwYWNlcnMsIDEpO1xuXHRcdH1cblxuXHRcdC8vIEJ1dHRvblxuXHRcdGJ1dHRvbiB7XG5cdFx0ICAgIGN1cnNvcjogcG9pbnRlcjtcblx0XHQgICAgZGlzcGxheTogYmxvY2s7XG5cdFx0ICAgIHdpZHRoOiAxMDAlO1xuXHRcdH1cblxuXHRcdC8vIFB1bGxkb3duXG5cdFx0LnVpLXBub3RpZnktaGlzdG9yeS1wdWxsZG93biB7XG5cdFx0ICAgIGRpc3BsYXk6IGJsb2NrO1xuXHRcdCAgICBtYXJnaW46IDAgYXV0bztcblx0XHR9XG5cdH1cblxuXG5cdC8vXG5cdC8vIE1vYmlsZSB2aWV3IHNldHVwXG5cdC8vXG5cblx0QGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKHNtKSB7XG5cblx0XHQvLyBPbiBtb2JpbGVcblx0XHQudWktcG5vdGlmeS1tb2JpbGUtYWJsZSB7XG5cblx0XHRcdC8vIE5vdGlmaWNhdGlvblxuXHRcdCAgICAmLnVpLXBub3RpZnkge1xuXHRcdCAgICAgICAgcG9zaXRpb246IGZpeGVkO1xuXHRcdCAgICAgICAgdG9wOiAwO1xuXHRcdCAgICAgICAgcmlnaHQ6IDA7XG5cdFx0ICAgICAgICBsZWZ0OiAwO1xuXHRcdCAgICAgICAgd2lkdGg6IGF1dG8gIWltcG9ydGFudDtcblx0XHQgICAgICAgIGZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcblxuXHRcdCAgICAgICAgLy8gU2hhZG93XG5cdFx0XHQgICAgLnVpLXBub3RpZnktc2hhZG93IHtcblx0XHRcdCAgICAgICAgYm9yZGVyLWJvdHRvbS13aWR0aDogKCRhbGVydC1ib3JkZXItd2lkdGggKiA1KTtcblx0XHRcdCAgICAgICAgQGluY2x1ZGUgYm94LXNoYWRvdyhub25lKTtcblx0XHRcdCAgICB9XG5cblxuXHRcdFx0ICAgIC8vXG5cdFx0XHQgICAgLy8gQWx0ZXJuYXRlIHN0YWNrIGluaXRpYWwgcG9zaXRpb25pbmdcblx0XHRcdCAgICAvL1xuXG5cdFx0XHQgICAgJi5zdGFjay10b3AtbGVmdCxcblx0XHRcdCAgICAmLnN0YWNrLWJvdHRvbS1sZWZ0IHtcblx0XHRcdCAgICAgICAgbGVmdDogMDtcblx0XHRcdCAgICAgICAgcmlnaHQ6IDA7XG5cdFx0XHQgICAgfVxuXHRcdFx0ICAgICYuc3RhY2stYm90dG9tLXJpZ2h0LFxuXHRcdFx0ICAgICYuc3RhY2stYm90dG9tLWxlZnQge1xuXHRcdFx0ICAgICAgICBsZWZ0OiAwO1xuXHRcdFx0ICAgICAgICByaWdodDogMDtcblx0XHRcdCAgICAgICAgYm90dG9tOiAwO1xuXHRcdFx0ICAgICAgICB0b3A6IGF1dG87XG5cblx0XHRcdCAgICAgICAgLy8gU2hhZG93XG5cdFx0XHRcdCAgICAudWktcG5vdGlmeS1zaGFkb3csXG5cdFx0XHRcdCAgICAudWktcG5vdGlmeS1zaGFkb3cge1xuXHRcdFx0XHQgICAgICAgIGJvcmRlci10b3Atd2lkdGg6ICgkYWxlcnQtYm9yZGVyLXdpZHRoICogNSk7XG5cdFx0XHRcdCAgICAgICAgYm9yZGVyLWJvdHRvbS13aWR0aDogJGFsZXJ0LWJvcmRlci13aWR0aDtcblx0XHRcdFx0ICAgIH1cblx0XHRcdCAgICB9XG5cblxuXHRcdFx0ICAgIC8vXG5cdFx0XHQgICAgLy8gVXRpbGl0eSBjbGFzc2VzXG5cdFx0XHQgICAgLy9cblxuXHRcdFx0ICAgIC8vIEZhZGUgb3V0XG5cdFx0XHRcdCYudWktcG5vdGlmeS1ub25ibG9jay1mYWRlIHtcblx0XHRcdFx0ICAgIG9wYWNpdHk6IDAuMjtcblx0XHRcdFx0fVxuXG5cdFx0XHRcdC8vIEhpZGVcblx0XHRcdFx0Ji51aS1wbm90aWZ5LW5vbmJsb2NrLWhpZGUge1xuXHRcdFx0XHQgICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cblx0XHQgICAgLy8gQ29udGFpbmVyXG5cdFx0ICAgIC51aS1wbm90aWZ5LWNvbnRhaW5lciB7XG5cdFx0ICAgICAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKDApO1xuXHRcdCAgICB9XG5cdFx0fVxuXHR9XG59XG4iLCIvKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbipcbiogICMgakdyb3dsIG5vdGlmaWNhdGlvbnNcbipcbiogIFN0eWxlcyBmb3Igamdyb3dsLm1pbi5qcyAtIGFuIHVub2J0cnVzaXZlIG5vdGlmaWNhdGlvbiBzeXN0ZW0gZm9yIHdlYiBhcHBsaWNhdGlvbnNcbipcbiogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuXG4vLyBDaGVjayBpZiBjb21wb25lbnQgaXMgZW5hYmxlZFxuQGlmICRlbmFibGUtamdyb3dsIHtcblxuXHQvLyBCYXNlXG5cdC5qR3Jvd2wge1xuXHRcdHotaW5kZXg6ICR6aW5kZXgtdG9vbHRpcDtcblx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cblx0XHQvLyBEb2N1bWVudCBwb3B1cHMgaGF2ZSBmaXhlZCBwb3NpdGlvblxuXHRcdGJvZHkgPiAmIHtcblx0XHRcdHBvc2l0aW9uOiBmaXhlZDtcblx0XHR9XG5cblxuXHRcdC8vXG5cdFx0Ly8gUG9zaXRpb25zXG5cdFx0Ly9cblxuXHRcdC8vIFRvcFxuXHRcdCYudG9wLWxlZnQge1xuXHRcdFx0bGVmdDogJG5vdGlmaWNhdGlvbi1ndXR0ZXIteDtcblx0XHRcdHRvcDogJG5vdGlmaWNhdGlvbi1ndXR0ZXIteTtcblx0XHR9XG5cdFx0Ji50b3AtY2VudGVyIHtcblx0XHRcdGxlZnQ6IDUwJTtcblx0XHRcdHRvcDogJG5vdGlmaWNhdGlvbi1ndXR0ZXIteTtcblx0XHRcdG1hcmdpbi1sZWZ0OiAtKCRub3RpZmljYXRpb24td2lkdGggLyAyKTtcblx0XHR9XG5cdFx0Ji50b3AtcmlnaHQge1xuXHRcdFx0cmlnaHQ6ICRub3RpZmljYXRpb24tZ3V0dGVyLXg7XG5cdFx0XHR0b3A6ICRub3RpZmljYXRpb24tZ3V0dGVyLXk7XG5cdFx0fVxuXG5cdFx0Ly8gQ2VudGVyXG5cdFx0Ji5jZW50ZXIge1xuXHRcdFx0dG9wOiA0MCU7XG5cdFx0XHR3aWR0aDogJG5vdGlmaWNhdGlvbi13aWR0aDtcblx0XHRcdGxlZnQ6IDUwJTtcblx0XHRcdG1hcmdpbi1sZWZ0OiAtKCRub3RpZmljYXRpb24td2lkdGggLyAyKTtcblx0XHRcdG1hcmdpbi10b3A6IC0oJGFsZXJ0LXBhZGRpbmcteCArICgkbGluZS1oZWlnaHQtY29tcHV0ZWQgLyAyKSk7XG5cblx0XHRcdC8vIENlbnRlciB0aGUgY29udGVudFxuXHRcdFx0LmpHcm93bC1ub3RpZmljYXRpb24sXG5cdFx0XHQuakdyb3dsLWNsb3NlciB7XG5cdFx0XHRcdG1hcmdpbi1sZWZ0OiBhdXRvO1xuXHRcdFx0XHRtYXJnaW4tcmlnaHQ6IGF1dG87XG5cdFx0XHR9XG5cdFx0fVxuXG5cdFx0Ly8gQm90dG9tXG5cdFx0Ji5ib3R0b20tbGVmdCB7XG5cdFx0XHRsZWZ0OiAkbm90aWZpY2F0aW9uLWd1dHRlci14O1xuXHRcdFx0Ym90dG9tOiAkbm90aWZpY2F0aW9uLWd1dHRlci15O1xuXHRcdH1cblx0XHQmLmJvdHRvbS1jZW50ZXIge1xuXHRcdFx0bGVmdDogNTAlO1xuXHRcdFx0Ym90dG9tOiAkbm90aWZpY2F0aW9uLWd1dHRlci15O1xuXHRcdFx0bWFyZ2luLWxlZnQ6IC0oJG5vdGlmaWNhdGlvbi13aWR0aCAvIDIpO1xuXHRcdH1cblx0XHQmLmJvdHRvbS1yaWdodCB7XG5cdFx0XHRyaWdodDogJG5vdGlmaWNhdGlvbi1ndXR0ZXIteDtcblx0XHRcdGJvdHRvbTogJG5vdGlmaWNhdGlvbi1ndXR0ZXIteTtcblx0XHR9XG5cblx0XHQvLyBIaWRlIG9uIHByaW50XG5cdFx0QG1lZGlhIHByaW50IHtcblx0XHRcdGRpc3BsYXk6IG5vbmU7XG5cdFx0fVxuXHR9XG5cblx0Ly8gTm90aWZpY2F0aW9uIHN0eWxlc1xuXHQuakdyb3dsLW5vdGlmaWNhdGlvbiB7XG5cdFx0bWFyZ2luLWJvdHRvbTogKCRub3RpZmljYXRpb24tZ3V0dGVyLXkgLyAyKTtcblx0XHR3aWR0aDogJG5vdGlmaWNhdGlvbi13aWR0aDtcblx0XHR0ZXh0LWFsaWduOiBsZWZ0O1xuXHRcdGRpc3BsYXk6IG5vbmU7XG5cdCAgICBAaW5jbHVkZSBib3gtc2hhZG93KCRub3RpZmljYXRpb24tYm94LXNoYWRvdyk7XG5cblx0XHQvLyBIZWFkZXJcblx0XHQuakdyb3dsLWhlYWRlciB7XG5cdFx0XHRmb250LXNpemU6ICRoNi1mb250LXNpemU7XG5cdFx0XHRtYXJnaW4tYm90dG9tOiBtYXAtZ2V0KCRzcGFjZXJzLCAxKTtcblxuXHRcdFx0Ly8gUmVtb3ZlIHNwYWNpbmcgaWYgbm8gaGVhZGVyXG5cdFx0XHQmOmVtcHR5IHtcblx0XHRcdFx0bWFyZ2luOiAwO1xuXHRcdFx0fVxuXHRcdH1cblxuXHRcdC8vIENsb3NlIGJ1dHRvblxuXHRcdC5qR3Jvd2wtY2xvc2Uge1xuXHRcdFx0Zm9udC13ZWlnaHQ6ICRjbG9zZS1mb250LXdlaWdodDtcblx0XHRcdGJhY2tncm91bmQ6IG5vbmU7XG5cdFx0XHRib3JkZXI6IDA7XG5cdFx0XHRmb250LXNpemU6ICRjbG9zZS1mb250LXNpemU7XG5cdFx0XHRjdXJzb3I6IHBvaW50ZXI7XG5cdFx0XHRsaW5lLWhlaWdodDogMTtcblx0XHRcdHBhZGRpbmc6IDA7XG5cdFx0XHRmbG9hdDogcmlnaHQ7XG5cdFx0XHRjb2xvcjogaW5oZXJpdDtcblx0XHRcdG91dGxpbmU6IDA7XG5cdFx0XHRtYXJnaW4tbGVmdDogJGVsZW1lbnQtc3BhY2VyLXg7XG5cdFx0XHRvcGFjaXR5OiAwLjc1O1xuXHRcdFx0QGluY2x1ZGUgdHJhbnNpdGlvbihvcGFjaXR5IGVhc2UtaW4tb3V0ICRjb21wb25lbnQtdHJhbnNpdGlvbi10aW1lcik7XG5cblx0XHRcdC8vIEhvdmVyIHN0YXRlXG5cdFx0XHQmOmhvdmVyIHtcblx0XHRcdFx0b3BhY2l0eTogMTtcblx0XHRcdH1cblx0XHR9XG5cdH1cblxuXHQvLyBcIkNsb3NlIGFsbFwiIGNsb3NlclxuXHQuakdyb3dsLWNsb3NlciB7XG5cdFx0cGFkZGluZzogbWFwLWdldCgkc3BhY2VycywgMSkgMDtcblx0XHRjdXJzb3I6IHBvaW50ZXI7XG5cdFx0bWFyZ2luLXRvcDogbWFwLWdldCgkc3BhY2VycywgMSk7XG5cdFx0dGV4dC1hbGlnbjogY2VudGVyO1xuXHRcdGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcblx0XHR3aWR0aDogJG5vdGlmaWNhdGlvbi13aWR0aDtcblx0XHRib3JkZXI6ICRib3JkZXItd2lkdGggc29saWQgJGJvcmRlci1jb2xvcjtcblx0XHRAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRib3JkZXItcmFkaXVzKTtcblx0fVxufVxuIiwiLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4qXG4qICAjIFN3ZWV0IEFsZXJ0cyBjb21wb25lbnRcbipcbiogIFN0eWxlcyBmb3Igc3dlZXRfYWxlcnQubWluLmpzIC0gbm90aWZpY2F0aW9uIGxpYnJhcnlcbipcbiogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuXG4vLyBDaGVjayBpZiBjb21wb25lbnQgaXMgZW5hYmxlZFxuQGlmICRlbmFibGUtc3dlZXRhbGVydCB7XG5cblxuXHQvL1xuXHQvLyBTdHlsZXMgYXBwbGllZCB0byA8Ym9keT5cblx0Ly9cblxuXHQuc3dhbDItc2hvd24ge1xuXG5cdFx0Ly8gRGlzYWJsZSBzY3JvbGxpbmcgd2hlbiBub3RpZmljYXRpb24gaXMgc2hvd25cblx0ICAgICY6bm90KC5zd2FsMi1uby1iYWNrZHJvcCkge1xuXHRcdFx0b3ZlcmZsb3cteTogaGlkZGVuO1xuXHQgICAgfVxuXG5cdFx0Ly8gRml4IGZveCBpT1Ncblx0XHQmLnN3YWwyLWlvc2ZpeCB7XG5cdFx0XHRwb3NpdGlvbjogZml4ZWQ7XG5cdFx0XHRsZWZ0OiAwO1xuXHRcdFx0cmlnaHQ6IDA7XG5cdFx0fVxuXG5cdFx0Ly8gRGlzYWJsZWQgYmFja2Ryb3Bcblx0XHQmLnN3YWwyLW5vLWJhY2tkcm9wIHtcblx0XHRcdC5zd2FsMi1zaG93biB7XG5cdFx0XHRcdGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuXHRcdFx0XHRib3gtc2hhZG93OiAkbW9kYWwtY29udGVudC1ib3gtc2hhZG93LXhzO1xuXHRcdFx0fVxuXHRcdH1cblx0fVxuXG5cblx0Ly9cblx0Ly8gQ29udGFpbmVyXG5cdC8vXG5cblx0LnN3YWwyLWNvbnRhaW5lciB7XG5cdFx0ZGlzcGxheTogZmxleDtcblx0XHRmbGV4LWRpcmVjdGlvbjogcm93O1xuXHRcdGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cdFx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG5cdFx0cG9zaXRpb246IGZpeGVkO1xuXHRcdHRvcDogMDtcblx0XHRsZWZ0OiAwO1xuXHRcdHJpZ2h0OiAwO1xuXHRcdGJvdHRvbTogMDtcblx0XHRiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcblx0XHR6LWluZGV4OiAkemluZGV4LXRvb2x0aXA7XG5cblxuXHRcdC8vXG5cdFx0Ly8gUG9zaXRpb25pbmdcblx0XHQvL1xuXG5cdFx0Ly8gVG9wXG5cdFx0Ji5zd2FsMi10b3Age1xuXHRcdFx0YWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG5cblx0XHRcdC8vIE1vZGFsIHNwYWNpbmdcblx0XHRcdC5zd2FsMi1tb2RhbCB7XG5cdFx0XHRcdG1hcmdpbi10b3A6ICRub3RpZmljYXRpb24tZ3V0dGVyLXk7XG5cdFx0XHR9XG5cdFx0fVxuXHRcdCYuc3dhbDItdG9wLWxlZnQge1xuXHRcdFx0YWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG5cdFx0XHRqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG5cblx0XHRcdC8vIE1vZGFsIHNwYWNpbmdcblx0XHRcdC5zd2FsMi1tb2RhbCB7XG5cdFx0XHRcdG1hcmdpbi10b3A6ICRub3RpZmljYXRpb24tZ3V0dGVyLXk7XG5cdFx0XHRcdG1hcmdpbi1sZWZ0OiAkbm90aWZpY2F0aW9uLWd1dHRlci14O1xuXHRcdFx0fVxuXHRcdH1cblx0XHQmLnN3YWwyLXRvcC1yaWdodCB7XG5cdFx0XHRhbGlnbi1pdGVtczogZmxleC1zdGFydDtcblx0XHRcdGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG5cblx0XHRcdC8vIE1vZGFsIHNwYWNpbmdcblx0XHRcdC5zd2FsMi1tb2RhbCB7XG5cdFx0XHRcdG1hcmdpbi10b3A6ICRub3RpZmljYXRpb24tZ3V0dGVyLXk7XG5cdFx0XHRcdG1hcmdpbi1yaWdodDogJG5vdGlmaWNhdGlvbi1ndXR0ZXIteDtcblx0XHRcdH1cblx0XHR9XG5cblx0XHQvLyBDZW50ZXJcblx0XHQmLnN3YWwyLWNlbnRlciB7XG5cdFx0XHRhbGlnbi1pdGVtczogY2VudGVyO1xuXHRcdFx0bWFyZ2luOiBhdXRvO1xuXHRcdH1cblx0XHQmLnN3YWwyLWNlbnRlci1sZWZ0IHtcblx0XHRcdGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cdFx0XHRqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG5cblx0XHRcdC8vIE1vZGFsIHNwYWNpbmdcblx0XHRcdC5zd2FsMi1tb2RhbCB7XG5cdFx0XHRcdG1hcmdpbi1sZWZ0OiAkbm90aWZpY2F0aW9uLWd1dHRlci14O1xuXHRcdFx0fVxuXHRcdH1cblx0XHQmLnN3YWwyLWNlbnRlci1yaWdodCB7XG5cdFx0XHRhbGlnbi1pdGVtczogY2VudGVyO1xuXHRcdFx0anVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcblxuXHRcdFx0Ly8gTW9kYWwgc3BhY2luZ1xuXHRcdFx0LnN3YWwyLW1vZGFsIHtcblx0XHRcdFx0bWFyZ2luLXJpZ2h0OiAkbm90aWZpY2F0aW9uLWd1dHRlci14O1xuXHRcdFx0fVxuXHRcdH1cblxuXHRcdC8vIEJvdHRvbVxuXHRcdCYuc3dhbDItYm90dG9tIHtcblx0XHRcdGFsaWduLWl0ZW1zOiBmbGV4LWVuZDtcblxuXHRcdFx0Ly8gTW9kYWwgc3BhY2luZ1xuXHRcdFx0LnN3YWwyLW1vZGFsIHtcblx0XHRcdFx0bWFyZ2luLWJvdHRvbTogJG5vdGlmaWNhdGlvbi1ndXR0ZXIteTtcblx0XHRcdH1cblx0XHR9XG5cdFx0Ji5zd2FsMi1ib3R0b20tbGVmdCB7XG5cdFx0XHRhbGlnbi1pdGVtczogZmxleC1lbmQ7XG5cdFx0XHRqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG5cblx0XHRcdC8vIE1vZGFsIHNwYWNpbmdcblx0XHRcdC5zd2FsMi1tb2RhbCB7XG5cdFx0XHRcdG1hcmdpbi1ib3R0b206ICRub3RpZmljYXRpb24tZ3V0dGVyLXk7XG5cdFx0XHRcdG1hcmdpbi1sZWZ0OiAkbm90aWZpY2F0aW9uLWd1dHRlci14O1xuXHRcdFx0fVxuXHRcdH1cblx0XHQmLnN3YWwyLWJvdHRvbS1yaWdodCB7XG5cdFx0XHRhbGlnbi1pdGVtczogZmxleC1lbmQ7XG5cdFx0XHRqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xuXG5cdFx0XHQvLyBNb2RhbCBzcGFjaW5nXG5cdFx0XHQuc3dhbDItbW9kYWwge1xuXHRcdFx0XHRtYXJnaW4tYm90dG9tOiAkbm90aWZpY2F0aW9uLWd1dHRlci15O1xuXHRcdFx0XHRtYXJnaW4tcmlnaHQ6ICRub3RpZmljYXRpb24tZ3V0dGVyLXg7XG5cdFx0XHR9XG5cdFx0fVxuXG5cdFx0Ly8gSUUgaGFja3Ncblx0XHRAbWVkaWEgYWxsIGFuZCAoLW1zLWhpZ2gtY29udHJhc3Q6IG5vbmUpLCAoLW1zLWhpZ2gtY29udHJhc3Q6IGFjdGl2ZSkge1xuXHRcdFx0LnN3YWwyLW1vZGFsIHtcblx0XHRcdFx0bWFyZ2luOiAwICFpbXBvcnRhbnQ7XG5cdFx0XHR9XG5cdFx0fVxuXG5cdFx0Ly8gRGlhbG9nIGFuaW1hdGlvblxuXHRcdCYuc3dhbDItZmFkZSB7XG5cdFx0XHRAaW5jbHVkZSB0cmFuc2l0aW9uKGJhY2tncm91bmQtY29sb3IgLjE1cyk7XG5cdFx0fVxuXG5cdFx0Ly8gT3ZlcmxheVxuXHRcdGJvZHk6bm90KC5zd2FsMi1uby1iYWNrZHJvcCkgJi5zd2FsMi1zaG93biB7XG5cdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKCRtb2RhbC1iYWNrZHJvcC1iZywgJG1vZGFsLWJhY2tkcm9wLW9wYWNpdHkpO1xuXHRcdH1cblx0fVxuXG5cblx0Ly9cblx0Ly8gU3RyZXRjaGluZ1xuXHQvL1xuXG5cdC8vIEZ1bGxzY3JlZW5cblx0LnN3YWwyLWdyb3ctZnVsbHNjcmVlbiB7XG5cdFx0LnN3YWwyLW1vZGFsIHtcblx0XHRcdGRpc3BsYXk6IGZsZXggIWltcG9ydGFudDtcblx0XHRcdGZsZXg6IDE7XG5cdFx0XHRhbGlnbi1zZWxmOiBzdHJldGNoO1xuXHRcdFx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG5cdFx0XHRtYXJnaW46ICRub3RpZmljYXRpb24tZ3V0dGVyLXkgJG5vdGlmaWNhdGlvbi1ndXR0ZXIteDtcblx0XHR9XG5cdH1cblxuXHQvLyBGdWxsIHdpZHRoXG5cdC5zd2FsMi1ncm93LXJvdyB7XG5cdFx0LnN3YWwyLW1vZGFsIHtcblx0XHRcdGRpc3BsYXk6IGZsZXggIWltcG9ydGFudDtcblx0XHRcdGZsZXg6IDE7XG5cdFx0XHRhbGlnbi1jb250ZW50OiBjZW50ZXI7XG5cdFx0XHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcblx0XHRcdG1hcmdpbi1sZWZ0OiAkbm90aWZpY2F0aW9uLWd1dHRlci14O1xuXHRcdFx0bWFyZ2luLXJpZ2h0OiAkbm90aWZpY2F0aW9uLWd1dHRlci14O1xuXHRcdH1cblx0fVxuXG5cdC8vIEZ1bGwgaGVpZ2h0XG5cdC5zd2FsMi1ncm93LWNvbHVtbiB7XG5cdFx0ZmxleDogMTtcblx0XHRmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuXHRcdGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cblx0XHQvLyBMZWZ0IHBvc2l0aW9uICh1c2UgJ2NlbnRlci1sZWZ0Jylcblx0XHQmLnN3YWwyLWNlbnRlci1sZWZ0IHtcblx0XHRcdGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuXHRcdH1cblxuXHRcdC8vIFJpZ2h0IHBvc2l0aW9uICh1c2UgJ2NlbnRlci1yaWdodCcpXG5cdFx0Ji5zd2FsMi1jZW50ZXItcmlnaHQge1xuXHRcdFx0YWxpZ24taXRlbXM6IGZsZXgtZW5kO1xuXHRcdH1cblxuXHRcdC8vIE5vZGFsXG5cdFx0LnN3YWwyLW1vZGFsIHtcblx0XHRcdGRpc3BsYXk6IGZsZXggIWltcG9ydGFudDtcblx0XHRcdGZsZXg6IDE7XG5cdFx0XHRhbGlnbi1jb250ZW50OiBjZW50ZXI7XG5cdFx0XHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcblx0XHRcdG1hcmdpbi10b3A6ICRub3RpZmljYXRpb24tZ3V0dGVyLXk7XG5cdFx0XHRtYXJnaW4tYm90dG9tOiAkbm90aWZpY2F0aW9uLWd1dHRlci15O1xuXHRcdH1cblx0fVxuXG5cblx0Ly9cblx0Ly8gUG9wdXBcblx0Ly9cblxuXHQvLyBCYXNlXG5cdC5zd2FsMi1wb3B1cCB7XG5cdFx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcblx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkbW9kYWwtY29udGVudC1iZztcblx0XHR0ZXh0LWFsaWduOiBjZW50ZXI7XG5cdFx0ZGlzcGxheTogbm9uZTtcblx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdFx0bWF4LXdpZHRoOiAxMDAlO1xuXHRcdHBhZGRpbmc6ICRzd2FsLXBhZGRpbmc7XG5cdFx0d2lkdGg6ICRzd2FsLXdpZHRoO1xuXHRcdG1hcmdpbi1sZWZ0OiAkc3dhbC1tYXJnaW4teDtcblx0XHRtYXJnaW4tcmlnaHQ6ICRzd2FsLW1hcmdpbi14O1xuXHQgICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkYm9yZGVyLXJhZGl1cy1sZyk7XG5cdCAgICBAaW5jbHVkZSBib3gtc2hhZG93KCRtb2RhbC1jb250ZW50LWJveC1zaGFkb3cteHMpO1xuXG5cdCAgICAvLyBSZW1vdmUgb3V0bGluZVxuXHRcdCY6Zm9jdXMge1xuXHRcdFx0b3V0bGluZTogbm9uZTtcblx0XHR9XG5cblx0XHQvLyBIaWRlIG92ZXJmbG93IHdoZW4gbm90aWZpY2F0aW9uIGlzIGxvYWRpbmdcblx0XHQmLnN3YWwyLWxvYWRpbmcge1xuXHRcdFx0b3ZlcmZsb3cteTogaGlkZGVuO1xuXHRcdH1cblxuXHRcdC8vIE5vIGhvcml6b250YWwgc3BhY2luZyBvbiBkZXNrdG9wXG5cdFx0QGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChzbSkge1xuXHRcdFx0bWFyZ2luLWxlZnQ6IDA7XG5cdFx0XHRtYXJnaW4tcmlnaHQ6IDA7XG5cdFx0fVxuXHR9XG5cblx0Ly8gSGVhZGVyXG5cdC5zd2FsMi1oZWFkZXIge1xuXHQgICAgZGlzcGxheTogZmxleDtcblx0ICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG5cdCAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuXHR9XG5cblx0Ly8gVGl0bGVcblx0LnN3YWwyLXRpdGxlIHtcblx0XHRmb250LXNpemU6ICRoNS1mb250LXNpemU7XG5cdFx0Zm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1zZW1pYm9sZDtcblx0XHRsaW5lLWhlaWdodDogJGhlYWRpbmdzLWxpbmUtaGVpZ2h0O1xuXHRcdHRleHQtYWxpZ246IGNlbnRlcjtcblx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdFx0d29yZC13cmFwOiBicmVhay13b3JkO1xuXHRcdG1hcmdpbi10b3A6IG1hcC1nZXQoJHNwYWNlcnMsIDEpO1xuXHRcdG1hcmdpbi1ib3R0b206IDA7XG5cdH1cblxuXHQvLyBDb250ZW50XG5cdC5zd2FsMi1jb250ZW50IHtcblx0XHR0ZXh0LWFsaWduOiBjZW50ZXI7XG5cdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRcdHdvcmQtd3JhcDogYnJlYWstd29yZDtcblx0fVxuXG5cblx0Ly9cblx0Ly8gQnV0dG9uc1xuXHQvL1xuXG5cdC8vIENvbnRhaW5lclxuXHQuc3dhbDItYWN0aW9ucyB7XG5cdCAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuXHQgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG5cdCAgICBtYXJnaW4tdG9wOiAkc3BhY2VyO1xuXG5cdFx0Ly8gQWRkIGhvcml6b250YWwgc3BhY2luZyB0byBidXR0b25zXG5cdFx0PiBidXR0b24gKyBidXR0b24ge1xuXHRcdFx0bWFyZ2luLWxlZnQ6ICgkc3BhY2VyIC8gMik7XG5cdFx0fVxuXG5cdFx0Ly8gRGlzYWJsZWQgc3RhdGVcblx0XHQmOm5vdCguc3dhbDItbG9hZGluZykgLnN3YWwyLXN0eWxlZFtkaXNhYmxlZF0ge1xuXHRcdFx0Y3Vyc29yOiBuby1kcm9wO1xuXHRcdFx0b3BhY2l0eTogMC40O1xuXHRcdH1cblx0fVxuXG5cdC8vIExvYWRpbmcgc3Bpbm5lclxuXHQuc3dhbDItbG9hZGluZyB7XG5cdFx0LnN3YWwyLWNvbmZpcm0ge1xuXHRcdFx0JjpiZWZvcmUge1xuXHRcdFx0XHRjb250ZW50OiAnXFxlYjU1Jztcblx0XHRcdFx0Zm9udC1mYW1pbHk6ICRpY29uLWZvbnQtZmFtaWx5O1xuXHRcdFx0ICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcblx0XHRcdCAgICBmb250LXNpemU6ICRpY29uLWZvbnQtc2l6ZTtcblx0XHRcdCAgICBhbGlnbi1zZWxmOiBjZW50ZXI7XG5cdFx0XHQgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcblx0XHRcdCAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cdFx0ICAgICAgICBsaW5lLWhlaWdodDogMTtcblx0XHRcdCAgICBtYXJnaW4tcmlnaHQ6ICRlbGVtZW50LXNwYWNlci14O1xuXHRcdFx0ICAgIGFuaW1hdGlvbjogcm90YXRpb24gMXMgbGluZWFyIGluZmluaXRlO1xuXHRcdFx0ICAgIEBpbmNsdWRlIGxsLWZvbnQtc21vb3RoaW5nKCk7XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG5cblx0Ly8gQ2xvc2UgYnV0dG9uXG5cdC5zd2FsMi1jbG9zZSB7XG5cdFx0YmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG5cdFx0Ym9yZGVyOiAwO1xuXHRcdG1hcmdpbjogMDtcblx0XHRwYWRkaW5nOiAwO1xuXHRcdGZvbnQtc2l6ZTogMS41cmVtO1xuXHRcdGxpbmUtaGVpZ2h0OiAxO1xuXHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHR0b3A6IDFyZW07XG5cdFx0cmlnaHQ6IDFyZW07XG5cdFx0Y3Vyc29yOiBwb2ludGVyO1xuXHRcdG9wYWNpdHk6IC41O1xuXHRcdEBpbmNsdWRlIHNpemUoMS41cmVtKTtcblx0ICAgIEBpbmNsdWRlIHRyYW5zaXRpb24ob3BhY2l0eSBlYXNlLWluLW91dCAuMTVzKTtcblxuXHQgICAgLy8gSG92ZXIvZm9jdXMgc3RhdGVzXG5cdFx0QGluY2x1ZGUgaG92ZXItZm9jdXMge1xuXHRcdFx0b3BhY2l0eTogMTtcblx0XHRcdG91dGxpbmU6IDA7XG5cdFx0fVxuXHR9XG5cblxuXHQvL1xuXHQvLyBGb3Jtc1xuXHQvL1xuXG5cdC8vIE1haW4gdHlwZXNcblx0LnN3YWwyLWlucHV0LFxuXHQuc3dhbDItZmlsZSxcblx0LnN3YWwyLXRleHRhcmVhLFxuXHQuc3dhbDItc2VsZWN0LFxuXHQuc3dhbDItcmFkaW8sXG5cdC5zd2FsMi1jaGVja2JveCB7XG5cdFx0ZGlzcGxheTogbm9uZTtcblx0XHRtYXJnaW46ICRzcGFjZXIgYXV0byAwIGF1dG87XG5cdH1cblxuXHQvLyBDdXN0b20gdHlwZXNcblx0LnN3YWwyLXBvcHVwIHtcblx0XHQuc2VsZWN0Mi1jb250YWluZXIsXG5cdFx0LmJ0bi1ncm91cCxcblx0XHQudW5pZm9ybS11cGxvYWRlciB7XG5cdFx0XHRtYXJnaW46ICRzcGFjZXIgYXV0byAwIGF1dG87XG5cdFx0fVxuXHR9XG5cblx0Ly8gQ2hlY2tib3hcblx0LnN3YWwyLWNoZWNrYm94IHtcblx0XHRhbGlnbi1pdGVtczogY2VudGVyO1xuXHRcdGp1c3RpZnktY29udGVudDogY2VudGVyO1xuXG5cdFx0Ly8gU3BhY2luZyBiZXR3ZWVuIGlucHV0IGFuZCB0ZXh0XG5cdFx0PiBzcGFuOm5vdCguc3dpdGNoZXJ5KSB7XG5cdFx0XHRtYXJnaW4tbGVmdDogJGVsZW1lbnQtc3BhY2VyLXg7XG5cdFx0fVxuXHR9XG5cblx0Ly8gUmFkaW9cblx0LnN3YWwyLXJhZGlvIHtcblx0XHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcblxuXHRcdGxhYmVsIHtcblx0XHRcdGRpc3BsYXk6IGlubGluZS1mbGV4O1xuXHRcdCAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuXG5cdFx0XHQvLyBBZGQgc3BhY2luZyB0byBsYWJlbHNcblx0XHRcdCsgbGFiZWwge1xuXHRcdFx0XHRtYXJnaW4tbGVmdDogJHNwYWNlcjtcblx0XHRcdH1cblxuXHRcdFx0Ly8gQWRkIHNwYWNpbmcgdG8gdGV4dFxuXHRcdFx0aW5wdXQsXG5cdFx0XHQudW5pZm9ybS1jaG9pY2Uge1xuXHRcdFx0XHRtYXJnaW4tcmlnaHQ6ICRlbGVtZW50LXNwYWNlci14O1xuXHRcdFx0fVxuXHRcdH1cblx0fVxuXG5cdC8vIFJhbmdlXG5cdC5zd2FsMi1yYW5nZSB7XG5cdFx0bWFyZ2luLXRvcDogJHNwYWNlcjtcblx0XHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcblx0XHRmbGV4LXdyYXA6IHdyYXA7XG5cblx0XHQvLyBSYW5nZSBpbnB1dFxuXHRcdGlucHV0IHtcblx0XHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdFx0d2lkdGg6IDEwMCU7XG5cdFx0fVxuXG5cdFx0Ly8gUmFuZ2Ugb3V0cHV0XG5cdFx0b3V0cHV0IHtcblx0XHRcdGZvbnQtc2l6ZTogJGg2LWZvbnQtc2l6ZTtcblx0XHRcdGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtc2VtaWJvbGQ7XG5cdFx0XHRtYXJnaW4tdG9wOiAoJHNwYWNlciAvIDIpO1xuXHRcdH1cblx0fVxuXG5cdC8vIElucHV0IGVycm9yXG5cdC5zd2FsMi1pbnB1dGVycm9yIHtcblx0XHRAaW5jbHVkZSBwbGFpbi1ob3Zlci1mb2N1cyB7XG5cdFx0XHRib3JkZXItY29sb3I6ICRmb3JtLWZlZWRiYWNrLWludmFsaWQtY29sb3I7XG5cdFx0fVxuXHR9XG5cblx0Ly8gVmFsaWRhdGlvbiBlcnJvciBtZXNzYWdlXG5cdC5zd2FsMi12YWxpZGF0aW9uZXJyb3Ige1xuXHRcdGJhY2tncm91bmQtY29sb3I6ICRncmF5LTIwMDtcblx0XHRvdmVyZmxvdzogaGlkZGVuO1xuXHRcdHBhZGRpbmc6ICRpbnB1dC1wYWRkaW5nLXkgJGlucHV0LXBhZGRpbmcteDtcblx0XHRkaXNwbGF5OiBub25lO1xuXHRcdG1hcmdpbi10b3A6ICRzcGFjZXI7XG5cdFx0bWFyZ2luLWxlZnQ6IDAhaW1wb3J0YW50O1xuXHRcdG1hcmdpbi1yaWdodDogMCFpbXBvcnRhbnQ7XG5cdFx0QGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkYm9yZGVyLXJhZGl1cyk7XG5cblx0XHQvLyBBZGQgaWNvblxuXHRcdCY6YmVmb3JlIHtcblx0XHRcdGNvbnRlbnQ6ICdcXGVkNjgnO1xuXHRcdFx0Zm9udC1mYW1pbHk6ICRpY29uLWZvbnQtZmFtaWx5O1xuXHRcdCAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cdFx0ICAgIGZvbnQtc2l6ZTogJGljb24tZm9udC1zaXplO1xuXHRcdCAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuXHRcdCAgICBhbGlnbi1zZWxmOiBjZW50ZXI7XG5cdFx0ICAgIGxpbmUtaGVpZ2h0OiAxO1xuXHRcdCAgICBtYXJnaW4tcmlnaHQ6ICRlbGVtZW50LXNwYWNlci14O1xuXHRcdCAgICBjb2xvcjogJGNvbG9yLWRhbmdlci01MDA7XG5cdFx0ICAgIEBpbmNsdWRlIGxsLWZvbnQtc21vb3RoaW5nKCk7XG5cdFx0fVxuXHR9XG5cblxuXHQvL1xuXHQvLyBJbWFnZXMgYW5kIGljb25zXG5cdC8vXG5cblx0Ly8gSW1hZ2Vcblx0LnN3YWwyLWltYWdlIHtcblx0XHRtYXJnaW46ICgkc3BhY2VyIC8gMikgYXV0bztcblx0XHRAaW5jbHVkZSBpbWctZmx1aWQoKTtcblx0fVxuXG5cdC8vIEljb25zXG5cdC5zd2FsMi1pY29uIHtcblx0XHRib3JkZXI6ICRzd2FsMi1pY29uLWJvcmRlci13aWR0aCBzb2xpZCB0cmFuc3BhcmVudDtcblx0XHRtYXJnaW46ICgkc3BhY2VyIC8gMikgYXV0byAkc3BhY2VyIGF1dG87XG5cdFx0cGFkZGluZzogMDtcblx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdFx0Ym94LXNpemluZzogY29udGVudC1ib3g7XG5cdFx0Y3Vyc29yOiBkZWZhdWx0O1xuXHRcdHVzZXItc2VsZWN0OiBub25lO1xuXHRcdEBpbmNsdWRlIHNpemUoJHN3YWwyLWljb24tc2l6ZSk7XG5cdFx0QGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkYm9yZGVyLXJhZGl1cy1jaXJjbGUpO1xuXG5cdFx0Ly8gU3VjY2Vzc1xuXHRcdCYuc3dhbDItc3VjY2VzcyB7XG5cdFx0XHRib3JkZXItY29sb3I6ICRzd2FsMi1zdWNjZXNzLWJvcmRlci1jb2xvcjtcblxuXHRcdFx0Ly8gQ2hlY2ttYXJrXG5cdFx0XHRbY2xhc3NePSdzd2FsMi1zdWNjZXNzLWxpbmUnXVtjbGFzcyQ9J3RpcCddIHtcblx0XHRcdCAgICBoZWlnaHQ6ICgkc3dhbDItaWNvbi1zaXplIC8gMik7XG5cdFx0XHQgICAgd2lkdGg6ICgkc3dhbDItaWNvbi1zaXplIC8gNCk7XG5cdFx0XHQgICAgLypydGw6aWdub3JlKi9cblx0XHRcdCAgICBib3JkZXItcmlnaHQ6ICRzd2FsMi1pY29uLWJvcmRlci13aWR0aCBzb2xpZCAkc3dhbDItc3VjY2Vzcy1jb2xvcjtcblx0XHRcdCAgICBib3JkZXItdG9wOiAkc3dhbDItaWNvbi1ib3JkZXItd2lkdGggc29saWQgJHN3YWwyLXN1Y2Nlc3MtY29sb3I7XG5cdFx0XHQgICAgcG9zaXRpb246IGFic29sdXRlO1xuXHRcdFx0ICAgIC8qcnRsOmlnbm9yZSovXG5cdFx0XHQgICAgbGVmdDogKCRzd2FsMi1pY29uLXNpemUgLyA0KTtcblx0XHRcdCAgICB0b3A6ICgkc3dhbDItaWNvbi1zaXplIC8gMikgKyAoJHN3YWwyLWljb24tYm9yZGVyLXdpZHRoIC8gMik7XG5cdFx0XHQgICAgb3BhY2l0eTogMTtcblx0XHRcdCAgICBhbmltYXRpb246IGFuaW1hdGUtY2hlY2ttYXJrIGVhc2UgMC43NXM7XG5cdFx0XHQgICAgLypydGw6YmVnaW46aWdub3JlKi9cblx0XHRcdCAgICB0cmFuc2Zvcm06IHNjYWxlWCgtMSkgcm90YXRlKDEzNWRlZyk7XG5cdFx0XHQgICAgdHJhbnNmb3JtLW9yaWdpbjogbGVmdCB0b3A7XG5cdFx0XHQgICAgLypydGw6ZW5kOmlnbm9yZSovXG5cdFx0XHR9XG5cdFx0fVxuXG5cdFx0Ly8gRXJyb3Jcblx0XHQmLnN3YWwyLWVycm9yIHtcblx0XHRcdGJvcmRlci1jb2xvcjogJHN3YWwyLWVycm9yLWJvcmRlci1jb2xvcjtcblxuXHRcdFx0Ly8gQmFzZVxuXHRcdFx0LnN3YWwyLXgtbWFyayB7XG5cdFx0XHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0XHRcdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0XHRcdGZsZXg6IDE7XG5cdFx0XHR9XG5cblx0XHRcdC8vIExpbmVzXG5cdFx0XHRbY2xhc3NePSdzd2FsMi14LW1hcmstbGluZSddIHtcblx0XHRcdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdFx0XHRoZWlnaHQ6ICRzd2FsMi1pY29uLWJvcmRlci13aWR0aDtcblx0XHRcdFx0d2lkdGg6ICgkc3dhbDItaWNvbi1zaXplIC0gKCRzd2FsMi1pY29uLXNwYWNlciAqIDIpKTtcblx0XHRcdFx0YmFja2dyb3VuZC1jb2xvcjogJHN3YWwyLWVycm9yLWNvbG9yO1xuXHRcdFx0XHRkaXNwbGF5OiBibG9jaztcblx0XHRcdFx0dG9wOiAoJHN3YWwyLWljb24tc2l6ZSAtICRzd2FsMi1pY29uLWJvcmRlci13aWR0aCkgLyAyO1xuXG5cdFx0XHRcdC8vIExlZnQgbGluZVxuXHRcdFx0XHQmW2NsYXNzJD0nbGVmdCddIHtcblx0XHRcdFx0XHR0cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZyk7XG5cdFx0XHRcdFx0bGVmdDogJHN3YWwyLWljb24tc3BhY2VyO1xuXHRcdFx0XHR9XG5cblx0XHRcdFx0Ly8gUmlnaHQgbGluZVxuXHRcdFx0XHQmW2NsYXNzJD0ncmlnaHQnXSB7XG5cdFx0XHRcdFx0dHJhbnNmb3JtOiByb3RhdGUoLTQ1ZGVnKTtcblx0XHRcdFx0XHRyaWdodDogJHN3YWwyLWljb24tc3BhY2VyO1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0fVxuXG5cdFx0Ly8gV2FybmluZ1xuXHRcdCYuc3dhbDItd2FybmluZyB7XG5cdFx0XHRjb2xvcjogJHN3YWwyLXdhcm5pbmctY29sb3I7XG5cdFx0XHRib3JkZXItY29sb3I6ICRzd2FsMi13YXJuaW5nLWJvcmRlci1jb2xvcjtcblx0XHRcdGZvbnQtc2l6ZTogKCRzd2FsMi1pY29uLXNpemUgLSAkc3dhbDItaWNvbi1zcGFjZXIpO1xuXHRcdFx0bGluZS1oZWlnaHQ6ICRzd2FsMi1pY29uLXNpemU7XG5cdFx0XHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcblx0XHR9XG5cblx0XHQvLyBJbmZvXG5cdFx0Ji5zd2FsMi1pbmZvIHtcblx0XHRcdGNvbG9yOiAkc3dhbDItaW5mby1jb2xvcjtcblx0XHRcdGJvcmRlci1jb2xvcjogJHN3YWwyLWluZm8tY29sb3I7XG5cdFx0XHRmb250LXNpemU6ICgkc3dhbDItaWNvbi1zaXplIC0gJHN3YWwyLWljb24tc3BhY2VyKTtcblx0XHRcdGxpbmUtaGVpZ2h0OiAkc3dhbDItaWNvbi1zaXplO1xuXHRcdFx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG5cdFx0fVxuXG5cdFx0Ly8gUXVlc3Rpb25cblx0XHQmLnN3YWwyLXF1ZXN0aW9uIHtcblx0XHRcdGNvbG9yOiAkc3dhbDItcXVlc3Rpb24tY29sb3I7XG5cdFx0XHRib3JkZXItY29sb3I6ICRzd2FsMi1xdWVzdGlvbi1ib3JkZXItY29sb3I7XG5cdFx0XHRmb250LXNpemU6ICgkc3dhbDItaWNvbi1zaXplIC0gJHN3YWwyLWljb24tc3BhY2VyKTtcblx0XHRcdGxpbmUtaGVpZ2h0OiBjYWxjKCN7JHN3YWwyLWljb24tc2l6ZX0gKyAjeyRzd2FsMi1pY29uLWJvcmRlci13aWR0aH0pO1xuXHRcdFx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG5cdFx0fVxuXHR9XG5cblxuXHQvL1xuXHQvLyBQcm9ncmVzcyBzdGVwc1xuXHQvL1xuXG5cdC8vIEJhc2Vcblx0LnN3YWwyLXByb2dyZXNzc3RlcHMge1xuXHRcdGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtc2VtaWJvbGQ7XG5cdFx0bWFyZ2luOiAwIDAgJHNwYWNlcjtcblx0XHRwYWRkaW5nOiAwO1xuXG5cdFx0Ly8gU3RlcHNcblx0XHRsaSB7XG5cdFx0XHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cdFx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdFx0fVxuXHR9XG5cblx0Ly8gU3RlcHNcblx0LnN3YWwyLXByb2dyZXNzY2lyY2xlIHtcblx0XHRjb2xvcjogJHN3YWwyLXN0ZXAtY29tcGxldGUtY29sb3I7XG5cdFx0dGV4dC1hbGlnbjogY2VudGVyO1xuXHRcdG1hcmdpbi1sZWZ0OiAoJHNwYWNlciAvIDIpO1xuXHRcdG1hcmdpbi1yaWdodDogKCRzcGFjZXIgLyAyKTtcblxuXHRcdC8vIEFjdGl2ZSBzdGVwXG5cdFx0Ji5zd2FsMi1hY3RpdmVwcm9ncmVzc3N0ZXAge1xuXHRcdFx0Y29sb3I6ICRjb2xvci1wcmltYXJ5LTUwMDtcblxuXHRcdFx0Ly8gQWN0aXZlIHN0ZXAgY29sb3Jcblx0XHRcdH4gLnN3YWwyLXByb2dyZXNzY2lyY2xlIHtcblx0XHRcdFx0Y29sb3I6ICRzd2FsMi1zdGVwLWluYWN0aXZlLWNvbG9yO1xuXHRcdFx0fVxuXG5cdFx0XHQvLyBBY3RpdmUgc3RlcCBsaW5lIGNvbG9yXG5cdFx0XHR+IC5zd2FsMi1wcm9ncmVzc2xpbmUge1xuXHRcdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkc3dhbDItc3RlcC1saW5lLWNvbG9yO1xuXHRcdFx0fVxuXHRcdH1cblx0fVxuXG5cdC8vIExpbmVcblx0LnN3YWwyLXByb2dyZXNzbGluZSB7XG5cdFx0YmFja2dyb3VuZC1jb2xvcjogJHN3YWwyLXN0ZXAtYWN0aXZlLWNvbG9yO1xuXHRcdGhlaWdodDogcmVtLWNhbGMoMSk7XG5cdFx0dmVydGljYWwtYWxpZ246IG1pZGRsZTtcblx0fVxuXG5cblx0Ly9cblx0Ly8gQW5pbWF0aW9uc1xuXHQvL1xuXG5cdC8vIGdpdGh1Yi5jb20vbGltb250ZS9zd2VldGFsZXJ0Mi9pc3N1ZXMvMjY4XG5cdFtjbGFzc149J3N3YWwyJ10ge1xuXHRcdC13ZWJraXQtdGFwLWhpZ2hsaWdodC1jb2xvcjogcmdiYSgkYmxhY2ssIDApO1xuXHR9XG5cblx0Ly8gU2hvdyBub3RpZmljYXRpb25cblx0LnN3YWwyLXNob3cge1xuXHRcdGFuaW1hdGlvbjogc2hvdy1ub3RpZmljYXRpb24gMC4xNXM7XG5cblx0XHQvLyBEaXNhYmxlIGFuaW1hdGlvblxuXHRcdCYuc3dhbDItbm9hbmltYXRpb24ge1xuXHRcdFx0YW5pbWF0aW9uOiBub25lO1xuXHRcdH1cblx0fVxuXG5cdC8vIEhpZGUgbm90aWZpY2F0aW9uXG5cdC5zd2FsMi1oaWRlIHtcblx0XHRhbmltYXRpb246IGhpZGUtbm90aWZpY2F0aW9uIDAuMTVzIGZvcndhcmRzO1xuXG5cdFx0Ly8gRGlzYWJsZSBhbmltYXRpb25cblx0XHQmLnN3YWwyLW5vYW5pbWF0aW9uIHtcblx0XHRcdGFuaW1hdGlvbjogbm9uZTtcblx0XHR9XG5cdH1cblxuXHQvLyBDaXJjbGVcblx0LnN3YWwyLWFuaW1hdGUtc3VjY2Vzcy1pY29uLFxuXHQuc3dhbDItYW5pbWF0ZS1lcnJvci1pY29uLFxuXHQuc3dhbDItd2FybmluZyxcblx0LnN3YWwyLWluZm8sXG5cdC5zd2FsMi1xdWVzdGlvbiB7XG5cdFx0YW5pbWF0aW9uOiBhbmltYXRlLWNpcmNsZSAwLjVzO1xuXHR9XG5cblx0Ly8gRXJyb3IgY3Jvc3Ncblx0LnN3YWwyLWFuaW1hdGUteC1tYXJrIHtcblx0XHRhbmltYXRpb246IGFuaW1hdGUteC1tYXJrIDAuNXM7XG5cdH1cblxuXG5cdC8vXG5cdC8vIEFuaW1hdGlvbiBrZXlmcmFtZXNcblx0Ly9cblxuXHQvLyBTaG93IG5vdGlmaWNhdGlvblxuXHRAa2V5ZnJhbWVzIHNob3ctbm90aWZpY2F0aW9uIHtcblx0XHQwJSB7XG5cdFx0XHR0cmFuc2Zvcm06IHNjYWxlKDAuNSk7XG5cdFx0fVxuXHRcdDEwMCUge1xuXHRcdFx0dHJhbnNmb3JtOiBzY2FsZSgxKTtcblx0XHR9XG5cdH1cblxuXHQvLyBIaWRlIG5vdGlmaWNhdGlvblxuXHRAa2V5ZnJhbWVzIGhpZGUtbm90aWZpY2F0aW9uIHtcblx0XHQwJSB7XG5cdFx0XHR0cmFuc2Zvcm06IHNjYWxlKDEpO1xuXHRcdFx0b3BhY2l0eTogMTtcblx0XHR9XG5cdFx0MTAwJSB7XG5cdFx0XHR0cmFuc2Zvcm06IHNjYWxlKDAuNSk7XG5cdFx0XHRvcGFjaXR5OiAwO1xuXHRcdH1cblx0fVxuXG5cdC8vIENoZWNrbWFya1xuXHRAa2V5ZnJhbWVzIGFuaW1hdGUtY2hlY2ttYXJrIHtcblx0XHQwJSB7XG5cdFx0XHRoZWlnaHQ6IDA7XG5cdFx0XHR3aWR0aDogMDtcblx0XHRcdG9wYWNpdHk6IDA7XG5cdFx0fVxuXHRcdDMwJSB7XG5cdFx0XHRoZWlnaHQ6IDA7XG5cdFx0XHR3aWR0aDogKCRzd2FsMi1pY29uLXNpemUgLyA0KTtcblx0XHRcdG9wYWNpdHk6IDA7XG5cdFx0fVxuXHRcdDYwJSB7XG5cdFx0XHRoZWlnaHQ6ICgkc3dhbDItaWNvbi1zaXplIC8gMik7XG5cdFx0XHR3aWR0aDogKCRzd2FsMi1pY29uLXNpemUgLyA0KTtcblx0XHRcdG9wYWNpdHk6IDE7XG5cdFx0fVxuXHRcdDEwMCUge1xuXHRcdFx0aGVpZ2h0OiAoJHN3YWwyLWljb24tc2l6ZSAvIDIpO1xuXHRcdFx0d2lkdGg6ICgkc3dhbDItaWNvbi1zaXplIC8gNCk7XG5cdFx0XHRvcGFjaXR5OiAxO1xuXHRcdH1cblx0fVxuXG5cdC8vIENpcmNsZVxuXHRAa2V5ZnJhbWVzIGFuaW1hdGUtY2lyY2xlIHtcblx0XHQwJSB7XG5cdFx0XHRjb2xvcjogdHJhbnNwYXJlbnQ7XG5cdFx0XHRib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xuXHRcdH1cblx0XHQyNSUge1xuXHRcdFx0Y29sb3I6IHRyYW5zcGFyZW50O1xuXHRcdH1cblx0fVxuXG5cdC8vIEVycm9yIGNyb3NzXG5cdEBrZXlmcmFtZXMgYW5pbWF0ZS14LW1hcmsge1xuXHRcdDAlIHtcblx0XHRcdG9wYWNpdHk6IDA7XG5cdFx0fVxuXHRcdDI1JSB7XG5cdFx0XHRvcGFjaXR5OiAwO1xuXHRcdH1cblx0XHQxMDAlIHtcblx0XHRcdG9wYWNpdHk6IDE7XG5cdFx0fVxuXHR9XG59XG4iLCIvKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAqXG4gKiAgIyBqUXVlcnkgVUkgc2xpZGVyIHBpcHNcbiAqXG4gKiAgU3R5bGVzIGZvciBqUXVlcnkgVUkgc2xpZGVyIHBpcHMgZXh0ZW5zaW9uXG4gKlxuICogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuXG4vLyBDaGVjayBpZiBjb21wb25lbnQgaXMgZW5hYmxlZFxuQGlmICRlbmFibGUtanF1ZXJ5dWktcGlwcyB7XG5cblxuICAgIC8vIFBpcHNcbiAgICAvLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbiAgICAudWktc2xpZGVyLXBpcHMge1xuXG5cbiAgICAgICAgLy8gSG9yaXpvbnRhbFxuICAgICAgICAvLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuICAgICAgICAvLyBJbmNyZWFzZSBib3R0b20gbWFyZ2luIHRvIGZpdCB0aGUgcGlwc1xuICAgICAgICAmLnVpLXNsaWRlci1ob3Jpem9udGFsIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206ICgkc2xpZGVyLWhlaWdodCArICRzbGlkZXItcGlwcy1zcGFjZXIteSArICRzbGlkZXItcGlwcy1mb250LXNpemUpO1xuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IG1hcC1nZXQoJHNwYWNlcnMsIDIpO1xuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiBtYXAtZ2V0KCRzcGFjZXJzLCAyKTtcbiAgICAgICAgfVxuXG4gICAgICAgIC8vIERlZmF1bHQgaGlkZSB0aGUgbGFiZWxzIGFuZCBwaXBzIHRoYXQgYXJudCB2aXNpYmxlXG4gICAgICAgIC51aS1zbGlkZXItbGFiZWwsXG4gICAgICAgIC51aS1zbGlkZXItcGlwLWhpZGUge1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgfVxuXG4gICAgICAgIC8vIE5vdyB3ZSBzaG93IGFueSBsYWJlbHMgdGhhdCB3ZSd2ZSBzZXQgdG8gc2hvdyBpbiB0aGUgb3B0aW9uc1xuICAgICAgICAudWktc2xpZGVyLXBpcC1sYWJlbCAudWktc2xpZGVyLWxhYmVsIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB9XG5cbiAgICAgICAgLy8gUGlwIGFuZCBsYWJlbCB3cmFwcGVyXG4gICAgICAgIC51aS1zbGlkZXItcGlwIHtcbiAgICAgICAgICAgIGhlaWdodDogJHNsaWRlci1waXBzLWZvbnQtc2l6ZTtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgICAgICAgICAgZm9udC1zaXplOiAkc2xpZGVyLXBpcHMtZm9udC1zaXplO1xuICAgICAgICAgICAgd2lkdGg6IDEuMjVyZW07XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogLSRzbGlkZXItcGlwcy1mb250LXNpemU7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgIHRvcDogJHNsaWRlci1waXBzLXNwYWNlci15O1xuICAgICAgICAgICAgbGVmdDogJHNsaWRlci1waXBzLXNwYWNlci15O1xuICAgICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICAgICAgLXdlYmtpdC10b3VjaC1jYWxsb3V0OiBub25lO1xuICAgICAgICAgICAgdXNlci1zZWxlY3Q6IG5vbmU7XG4gICAgICAgIH1cblxuICAgICAgICAvLyBMaXR0bGUgcGlwL2xpbmUgcG9zaXRpb24gJiBzaXplXG4gICAgICAgIC51aS1zbGlkZXItbGluZSB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkc2xpZGVyLXBpcHMtY29sb3I7XG4gICAgICAgICAgICB3aWR0aDogJHNsaWRlci1waXBzLW1hcmtlci13aWR0aDtcbiAgICAgICAgICAgIGhlaWdodDogJHNsaWRlci1waXBzLW1hcmtlci1oZWlnaHQ7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICBsZWZ0OiA1MCU7XG4gICAgICAgIH1cblxuICAgICAgICAvLyBUZXh0IGxhYmVsIHBvc3Rpb24gJiBzaXplXG4gICAgICAgIC51aS1zbGlkZXItbGFiZWwge1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgdG9wOiAoJHNsaWRlci1waXBzLXNwYWNlci15IC8gMS41KTtcbiAgICAgICAgICAgIGxlZnQ6IDUwJTtcbiAgICAgICAgICAgIHdpZHRoOiAxLjI1cmVtO1xuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IC0oMS4yNXJlbSAvIDIpO1xuICAgICAgICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICAgICAgICAgIGNvbG9yOiAkc2xpZGVyLXBpcHMtY29sb3I7XG4gICAgICAgIH1cblxuXG4gICAgICAgIC8vIFZlcnRpY2FsXG4gICAgICAgIC8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4gICAgICAgIC8vIFZlcnRpY2FsIHNsaWRlciBuZWVkcyByaWdodC1tYXJnaW4sIG5vdCBib3R0b21cbiAgICAgICAgJi51aS1zbGlkZXItdmVydGljYWwge1xuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6ICgkc2xpZGVyLXBpcHMtbWFya2VyLXdpZHRoICsgJHNsaWRlci1waXBzLXNwYWNlci15ICsgJHNsaWRlci1waXBzLWZvbnQtc2l6ZSk7XG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6ICgkc2xpZGVyLXBpcHMtbWFya2VyLXdpZHRoICsgJHNsaWRlci1waXBzLXNwYWNlci15ICsgJHNsaWRlci1waXBzLWZvbnQtc2l6ZSk7XG5cbiAgICAgICAgICAgIC8vIEFsaWduIHZlcnRpY2FsIHBpcHMgbGVmdCBhbmQgdG8gcmlnaHQgb2YgdGhlIHNsaWRlclxuICAgICAgICAgICAgLnVpLXNsaWRlci1waXAge1xuICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICAgICAgICAgICAgdG9wOiBhdXRvO1xuICAgICAgICAgICAgICAgIGxlZnQ6ICRzbGlkZXItcGlwcy1zcGFjZXIteTtcbiAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC8vIFZlcnRpY2FsIGxpbmUvcGlwIHNob3VsZCBiZSBob3Jpem9udGFsIGluc3RlYWRcbiAgICAgICAgICAgIC51aS1zbGlkZXItbGluZSB7XG4gICAgICAgICAgICAgICAgd2lkdGg6ICRzbGlkZXItcGlwcy1tYXJrZXItaGVpZ2h0O1xuICAgICAgICAgICAgICAgIGhlaWdodDogJHNsaWRlci1waXBzLW1hcmtlci13aWR0aDtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgdG9wOiA1MCU7XG4gICAgICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLy8gVGV4dCBsYWJlbFxuICAgICAgICAgICAgLnVpLXNsaWRlci1sYWJlbCB7XG4gICAgICAgICAgICAgICAgdG9wOiA1MCU7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogLSgkc2xpZGVyLXBpcHMtZm9udC1zaXplIC8gMik7XG4gICAgICAgICAgICAgICAgbGVmdDogKCRzbGlkZXItcGlwcy1zcGFjZXIteSAvIDEuNSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cblxuICAgIC8vIFRvb2x0aXBzXG4gICAgLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4gICAgLnVpLXNsaWRlci1mbG9hdCB7XG5cbiAgICAgICAgLy8gUmVtb3ZlIHRoZSBnb2Rhd2Z1bCBsb29raW5nIGZvY3VzIG91dGxpbmUgb24gaGFuZGxlIGFuZCBmbG9hdFxuICAgICAgICAudWktc2xpZGVyLWhhbmRsZTpmb2N1cyB7XG4gICAgICAgICAgICAmLFxuICAgICAgICAgICAgLnVpLXNsaWRlci10aXAsXG4gICAgICAgICAgICAudWktc2xpZGVyLXRpcC1sYWJlbCB7XG4gICAgICAgICAgICAgICAgb3V0bGluZTogMDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC8vIFN0eWxlIHRvb2x0aXBzIG9uIGhhbmRsZXMgYW5kIG9uIGxhYmVscyBcbiAgICAgICAgLnVpLXNsaWRlci10aXAsXG4gICAgICAgIC51aS1zbGlkZXItdGlwLWxhYmVsIHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICAgICAgICAgIHRvcDogLSgoJHNsaWRlci1oZWlnaHQgKiAzKSArICgkdG9vbHRpcC1wYWRkaW5nLXkgKiAyKSArICR0b29sdGlwLXBhZGRpbmcteSArICRzbGlkZXItaGVpZ2h0KTtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgbGVmdDogNTAlO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHRvb2x0aXAtYmc7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICBmb250LXNpemU6ICR0b29sdGlwLWZvbnQtc2l6ZTtcbiAgICAgICAgICAgIGNvbG9yOiAkdG9vbHRpcC1jb2xvcjtcbiAgICAgICAgICAgIHBhZGRpbmc6ICR0b29sdGlwLXBhZGRpbmcteSAkdG9vbHRpcC1wYWRkaW5nLXg7XG4gICAgICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xuICAgICAgICAgICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkdG9vbHRpcC1ib3JkZXItcmFkaXVzKTtcbiAgICAgICAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oYWxsIGVhc2UtaW4tb3V0ICRjb21wb25lbnQtdHJhbnNpdGlvbi10aW1lciAkY29tcG9uZW50LXRyYW5zaXRpb24tZGVsYXkpO1xuICAgICAgICB9XG5cbiAgICAgICAgLy8gU2hvdyB0aGUgdG9vbHRpcCBvbiBob3ZlciBvciBmb2N1c1xuICAgICAgICAudWktc2xpZGVyLWhhbmRsZTpob3ZlciAudWktc2xpZGVyLXRpcCxcbiAgICAgICAgLnVpLXNsaWRlci1oYW5kbGU6Zm9jdXMgLnVpLXNsaWRlci10aXAge1xuICAgICAgICAgICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgICAgICAgICAgIG9wYWNpdHk6IDE7XG5cbiAgICAgICAgICAgIC8vIFRyYW5zaXRpb24gZGVsYXlcbiAgICAgICAgICAgIEBpZiAkZW5hYmxlLXRyYW5zaXRpb25zIHtcbiAgICAgICAgICAgICAgICB0cmFuc2l0aW9uLWRlbGF5OiAkY29tcG9uZW50LXRyYW5zaXRpb24tZGVsYXk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAvLyBHaXZlIHRoZSB0b29sdGlwIGEgY3NzIHRyaWFuZ2xlIGFycm93XG4gICAgICAgIC51aS1zbGlkZXItdGlwOmFmdGVyLFxuICAgICAgICAudWktc2xpZGVyLXBpcCAudWktc2xpZGVyLXRpcC1sYWJlbDphZnRlciB7XG4gICAgICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgICAgIGJvcmRlcjogJHRvb2x0aXAtYXJyb3ctaGVpZ2h0IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgICAgICAgICAgYm9yZGVyLXRvcC1jb2xvcjogJHRvb2x0aXAtYmc7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICBib3R0b206IC0oJHRvb2x0aXAtYXJyb3ctaGVpZ2h0ICogMik7XG4gICAgICAgICAgICBsZWZ0OiA1MCU7XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogLSgkdG9vbHRpcC1hcnJvdy1oZWlnaHQpO1xuICAgICAgICAgICAgQGluY2x1ZGUgc2l6ZSgwKTtcbiAgICAgICAgfVxuICAgIH1cbn1cbiIsIi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICpcbiAqICAjIE5vVUkgc2xpZGVyXG4gKlxuICogIFN0eWxlcyBmb3Igbm91aXNsaWRlci5taW4uanMgLSByYW5nZSBzbGlkZXIgcGx1Z2luXG4gKlxuICogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuXG4vLyBDaGVjayBpZiBjb21wb25lbnQgaXMgZW5hYmxlZFxuQGlmICRlbmFibGUtbm91aSB7XG5cblxuICAgIC8vIEZ1bmN0aW9uYWwgc3R5bGluZ1xuICAgIC8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4gICAgLy8gQ29udGFpbmVyXG4gICAgLm5vVWktdGFyZ2V0IHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkc2xpZGVyLWJnO1xuICAgICAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRib3JkZXItcmFkaXVzLXJvdW5kKTtcbiAgICAgICAgQGluY2x1ZGUgYm94LXNoYWRvdygkc2xpZGVyLWJveC1zaGFkb3cpO1xuXG4gICAgICAgIC8vIERpc2FibGUgdXNlciBzZWxlY3RcbiAgICAgICAgJixcbiAgICAgICAgJiAqIHtcbiAgICAgICAgICAgIHVzZXItc2VsZWN0OiBub25lO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLy8gQmFzZVxuICAgIC5ub1VpLWJhc2UsXG4gICAgLm5vVWktY29ubmVjdHMge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIHotaW5kZXg6IDE7XG4gICAgICAgIEBpbmNsdWRlIHNpemUoMTAwJSk7XG4gICAgfVxuXG4gICAgLy8gV3JhcHBlciBmb3IgYWxsIGNvbm5lY3QgZWxlbWVudHNcbiAgICAubm9VaS1jb25uZWN0cyB7XG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgIHotaW5kZXg6IDA7XG4gICAgICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGJvcmRlci1yYWRpdXMtcm91bmQpO1xuICAgIH1cblxuICAgIC8vIE1haW4gd3JhcHBlcnNcbiAgICAubm9VaS1jb25uZWN0LFxuICAgIC5ub1VpLW9yaWdpbiB7XG4gICAgICAgIHdpbGwtY2hhbmdlOiB0cmFuc2Zvcm07XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgei1pbmRleDogMTtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICAvKnJ0bDpiZWdpbjppZ25vcmUqL1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICB0cmFuc2Zvcm0tb3JpZ2luOiAwIDA7XG4gICAgICAgIC8qcnRsOmVuZDppZ25vcmUqL1xuICAgICAgICBAaW5jbHVkZSBzaXplKDEwMCUpO1xuICAgIH1cblxuICAgIC8vIEluaGVyaXQgY3Vyc29yXG4gICAgLm5vVWktc3RhdGUtZHJhZyAqIHtcbiAgICAgICAgY3Vyc29yOiBpbmhlcml0ICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgLy8gQ29ubmVjdG9yXG4gICAgLm5vVWktY29ubmVjdCB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRzbGlkZXItY29ubmVjdC1iZztcbiAgICB9XG5cbiAgICAvLyBEaXNhYmxlZCBzdGF0ZVxuICAgIFtkaXNhYmxlZF0ge1xuXG4gICAgICAgIC8vIEJhY2tncm91bmRcbiAgICAgICAgLm5vVWktdGFyZ2V0IHtcbiAgICAgICAgICAgIG9wYWNpdHk6ICRzbGlkZXItZGlzYWJsZWQtb3BhY2l0eTtcbiAgICAgICAgfVxuXG4gICAgICAgIC8vIEhhbmRsZVxuICAgICAgICAubm9VaS1oYW5kbGUge1xuICAgICAgICAgICAgY3Vyc29yOiAkY3Vyc29yLWRpc2FibGVkO1xuICAgICAgICB9XG4gICAgfVxuXG5cbiAgICAvL1xuICAgIC8vIE9yaWVudGF0aW9uc1xuICAgIC8vXG5cbiAgICAvLyBIb3Jpem9udGFsIG9yaWVudGF0aW9uXG4gICAgLm5vVWktaG9yaXpvbnRhbCB7XG4gICAgICAgIGhlaWdodDogJHNsaWRlci1oZWlnaHQ7XG5cbiAgICAgICAgLy8gSGFuZGxlXG4gICAgICAgIC5ub1VpLWhhbmRsZSB7XG4gICAgICAgICAgICB0b3A6IC0oJHNsaWRlci1oZWlnaHQgKiAxLjUpICsgKCRzbGlkZXItaGVpZ2h0IC8gMik7XG4gICAgICAgICAgICByaWdodDogLSgkc2xpZGVyLWhlaWdodCAqIDEuNSk7XG4gICAgICAgIH1cblxuICAgICAgICAvLyBHaXZlIG9yaWdpbnMgMCBoZWlnaHQgc28gdGhleSBkb24ndCBpbnRlcmZlcmUgd2l0aCBjbGlja2luZyB0aGUgY29ubmVjdCBlbGVtZW50c1xuICAgICAgICAubm9VaS1vcmlnaW4ge1xuICAgICAgICAgICAgaGVpZ2h0OiAwO1xuICAgICAgICAgICAgbGVmdDogYXV0bztcbiAgICAgICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICB9XG5cbiAgICAgICAgLy8gSWYgaGFzIHBpcHNcbiAgICAgICAgJi5oYXMtcGlwcyB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAoJHNsaWRlci1waXBzLXNwYWNlci15ICsgJGxpbmUtaGVpZ2h0LWNvbXB1dGVkKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8vIFZlcnRpY2FsIG9yaWVudGF0aW9uXG4gICAgLm5vVWktdmVydGljYWwge1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIHdpZHRoOiAkc2xpZGVyLWhlaWdodDtcbiAgICAgICAgaGVpZ2h0OiAkc2xpZGVyLXZlcnRpY2FsLWhlaWdodDtcblxuICAgICAgICAvLyBTcGFjaW5nIGJldHdlZW4gc2xpZGVyc1xuICAgICAgICAmICsgJiB7XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogKCRzcGFjZXIgKiAxLjUpO1xuICAgICAgICB9XG5cbiAgICAgICAgLy8gSGFuZGxlXG4gICAgICAgIC5ub1VpLWhhbmRsZSB7XG4gICAgICAgICAgICB0b3A6IC0oJHNsaWRlci1oZWlnaHQgKiAxLjUpO1xuICAgICAgICAgICAgLypydGw6aWdub3JlKi9cbiAgICAgICAgICAgIGxlZnQ6IC0oJHNsaWRlci1oZWlnaHQgKiAxLjUpICsgKCRzbGlkZXItaGVpZ2h0IC8gMik7XG4gICAgICAgIH1cblxuICAgICAgICAvLyBHaXZlIG9yaWdpbnMgMCB3aWR0aCBzbyB0aGV5IGRvbid0IGludGVyZmVyZSB3aXRoIGNsaWNraW5nIHRoZSBjb25uZWN0IGVsZW1lbnRzXG4gICAgICAgIC5ub1VpLW9yaWdpbiB7XG4gICAgICAgICAgICB3aWR0aDogMDtcbiAgICAgICAgfVxuXG4gICAgICAgIC8vIElmIGhhcyBwaXBzXG4gICAgICAgICYuaGFzLXBpcHMge1xuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAoJHNsaWRlci1waXBzLXNwYWNlci15ICsgJGxpbmUtaGVpZ2h0LWNvbXB1dGVkKTtcbiAgICAgICAgfVxuICAgIH1cblxuXG4gICAgLy9cbiAgICAvLyBIYW5kbGVzIGFuZCBjdXJzb3JzXG4gICAgLy9cblxuICAgIC8vIERyYWdnYWJsZVxuICAgIC5ub1VpLWRyYWdnYWJsZSB7XG4gICAgICAgIGN1cnNvcjogdy1yZXNpemU7XG5cbiAgICAgICAgLy8gVmVydGljYWxcbiAgICAgICAgLm5vVWktdmVydGljYWwgJiB7XG4gICAgICAgICAgICBjdXJzb3I6IG4tcmVzaXplO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLy8gSGFuZGxlXG4gICAgLm5vVWktaGFuZGxlIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHNsaWRlci1oYW5kbGUtYmc7XG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgdG9wOiAtKCRzbGlkZXItaGVpZ2h0KTtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB6LWluZGV4OiAxO1xuICAgICAgICBib3JkZXI6ICRzbGlkZXItaGFuZGxlLWJvcmRlci13aWR0aCBzb2xpZCAkc2xpZGVyLWhhbmRsZS1ib3JkZXItY29sb3I7XG4gICAgICAgIG91dGxpbmU6IDA7XG4gICAgICAgIEBpbmNsdWRlIHNpemUoJHNsaWRlci1oZWlnaHQgKiAzKTtcbiAgICAgICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkYm9yZGVyLXJhZGl1cy1jaXJjbGUpO1xuICAgICAgICBcbiAgICAgICAgLy8gQW5pbWF0ZSBoYW5kbGVcbiAgICAgICAgJixcbiAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKGFsbCBlYXNlLWluLW91dCAkY29tcG9uZW50LXRyYW5zaXRpb24tdGltZXIpO1xuICAgICAgICB9XG5cbiAgICAgICAgLy8gVGhpcyBjbGFzcyBpcyBhcHBsaWVkIHRvIHRoZSBsb3dlciBvcmlnaW4gd2hlbiBpdHMgdmFsdWVzIGlzID4gNTAlXG4gICAgICAgIC5ub1VpLXN0YWNraW5nICYge1xuICAgICAgICAgICAgei1pbmRleDogMTA7XG4gICAgICAgIH1cblxuICAgICAgICAvLyBJbm5lciBjaXJjbGVcbiAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIHRvcDogNTAlO1xuICAgICAgICAgICAgbGVmdDogNTAlO1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogLSgkc2xpZGVyLWhlaWdodCAvIDIpO1xuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IC0oJHNsaWRlci1oZWlnaHQgLyAyKTtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRzbGlkZXItaGFuZGxlLWlubmVyLWJnO1xuICAgICAgICAgICAgQGluY2x1ZGUgc2l6ZSgkc2xpZGVyLWhlaWdodCk7XG4gICAgICAgICAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRib3JkZXItcmFkaXVzLWNpcmNsZSk7XG4gICAgICAgIH1cblxuICAgICAgICAvLyBIb3ZlciBzdGF0ZVxuICAgICAgICBAaW5jbHVkZSBob3Zlci1mb2N1cyB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkc2xpZGVyLWhhbmRsZS1ob3Zlci1iZztcblxuICAgICAgICAgICAgLy8gTXV0ZSBjaXJjbGVcbiAgICAgICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRzbGlkZXItaGFuZGxlLWlubmVyLWhvdmVyLWJnO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLy8gV2hpdGUgaGFuZGxlXG4gICAgLm5vdWktc2xpZGVyLXdoaXRlIC5ub1VpLWhhbmRsZTphZnRlciB7XG4gICAgICAgIGNvbnRlbnQ6IG5vbmU7XG4gICAgfVxuXG5cbiAgICAvL1xuICAgIC8vIFRhcCBzdGF0ZVxuICAgIC8vXG5cbiAgICAubm9VaS1zdGF0ZS10YXAge1xuICAgICAgICAubm9VaS1jb25uZWN0LFxuICAgICAgICAubm9VaS1vcmlnaW4ge1xuICAgICAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbih0cmFuc2Zvcm0gJGNvbXBvbmVudC10cmFuc2l0aW9uLXRpbWVyKTtcbiAgICAgICAgfVxuICAgIH1cblxuXG4gICAgLy9cbiAgICAvLyBTaXppbmdcbiAgICAvL1xuXG4gICAgLy8gTGFyZ2VcbiAgICAubm91aS1zbGlkZXItbGcge1xuXG4gICAgICAgIC8vIEhhbmRsZVxuICAgICAgICAubm9VaS1oYW5kbGUge1xuICAgICAgICAgICAgdG9wOiAtKCRzbGlkZXItaGVpZ2h0LWxnKTtcbiAgICAgICAgICAgIEBpbmNsdWRlIHNpemUoJHNsaWRlci1oZWlnaHQtbGcgKiAzKTtcblxuICAgICAgICAgICAgLy8gSW5uZXIgY2lyY2xlXG4gICAgICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAtKCRzbGlkZXItaGVpZ2h0LWxnIC8gMik7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IC0oJHNsaWRlci1oZWlnaHQtbGcgLyAyKTtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBzaXplKCRzbGlkZXItaGVpZ2h0LWxnKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC8vIEhvcml6b250YWxcbiAgICAgICAgJi5ub1VpLWhvcml6b250YWwge1xuICAgICAgICAgICAgaGVpZ2h0OiAkc2xpZGVyLWhlaWdodC1sZztcblxuICAgICAgICAgICAgLy8gSGFuZGxlXG4gICAgICAgICAgICAubm9VaS1oYW5kbGUge1xuICAgICAgICAgICAgICAgIHJpZ2h0OiAtKCRzbGlkZXItaGVpZ2h0LWxnICogMS41KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC8vIFZlcnRpY2FsXG4gICAgICAgICYubm9VaS12ZXJ0aWNhbCB7XG4gICAgICAgICAgICB3aWR0aDogJHNsaWRlci1oZWlnaHQtbGc7XG5cbiAgICAgICAgICAgIC8vIEhhbmRsZVxuICAgICAgICAgICAgLm5vVWktaGFuZGxlIHtcbiAgICAgICAgICAgICAgICB0b3A6IC0oJHNsaWRlci1oZWlnaHQtbGcgKiAxLjUpO1xuICAgICAgICAgICAgICAgIHJpZ2h0OiAtKCRzbGlkZXItaGVpZ2h0LWxnICogMS41KSArICgkc2xpZGVyLWhlaWdodC1sZyAvIDIpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLy8gU21hbGxcbiAgICAubm91aS1zbGlkZXItc20ge1xuXG4gICAgICAgIC8vIEhhbmRsZVxuICAgICAgICAubm9VaS1oYW5kbGUge1xuICAgICAgICAgICAgdG9wOiAtKCRzbGlkZXItaGVpZ2h0LXNtKTtcbiAgICAgICAgICAgIEBpbmNsdWRlIHNpemUoJHNsaWRlci1oZWlnaHQtc20gKiAzKTtcblxuICAgICAgICAgICAgLy8gSW5uZXIgY2lyY2xlXG4gICAgICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAtKCRzbGlkZXItaGVpZ2h0LXNtIC8gMik7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IC0oJHNsaWRlci1oZWlnaHQtc20gLyAyKTtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBzaXplKCRzbGlkZXItaGVpZ2h0LXNtKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC8vIEhvcml6b250YWxcbiAgICAgICAgJi5ub1VpLWhvcml6b250YWwge1xuICAgICAgICAgICAgaGVpZ2h0OiAkc2xpZGVyLWhlaWdodC1zbTtcblxuICAgICAgICAgICAgLy8gSGFuZGxlXG4gICAgICAgICAgICAubm9VaS1oYW5kbGUge1xuICAgICAgICAgICAgICAgIHRvcDogLSgkc2xpZGVyLWhlaWdodC1zbSAqIDEuNSkgKyAoJHNsaWRlci1oZWlnaHQtc20gLyAyKTtcbiAgICAgICAgICAgICAgICByaWdodDogLSgkc2xpZGVyLWhlaWdodC1zbSAqIDEuNSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAvLyBWZXJ0aWNhbFxuICAgICAgICAmLm5vVWktdmVydGljYWwge1xuICAgICAgICAgICAgd2lkdGg6ICRzbGlkZXItaGVpZ2h0LXNtO1xuXG4gICAgICAgICAgICAvLyBIYW5kbGVcbiAgICAgICAgICAgIC5ub1VpLWhhbmRsZSB7XG4gICAgICAgICAgICAgICAgdG9wOiAtKCRzbGlkZXItaGVpZ2h0LXNtICogMS41KTtcbiAgICAgICAgICAgICAgICByaWdodDogLSgkc2xpZGVyLWhlaWdodC1zbSAqIDEuNSkgKyAoJHNsaWRlci1oZWlnaHQtc20gLyAyKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuXG4gICAgLy9cbiAgICAvLyBTb2xpZCBzbGlkZXIgaGFuZGxlXG4gICAgLy9cblxuICAgIC5ub3VpLXNsaWRlci1zb2xpZCB7XG5cbiAgICAgICAgLy8gSGFuZGxlXG4gICAgICAgIC5ub1VpLWhhbmRsZSB7XG5cbiAgICAgICAgICAgIC8vIElubmVyIGNpcmNsZVxuICAgICAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAvLyBDaGFuZ2UgY2lyY2xlIG9wYWNpdHkgb24gaG92ZXJcbiAgICAgICAgICAgIEBpbmNsdWRlIGhvdmVyLWZvY3VzIHtcbiAgICAgICAgICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgICAgICAgICAgb3BhY2l0eTogMC43NTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAvLyBIYW5kbGUgY29sb3JzXG4gICAgICAgICYubm91aS1zbGlkZXItcHJpbWFyeSAubm9VaS1oYW5kbGUge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdGhlbWUtY29sb3IoXCJwcmltYXJ5XCIpO1xuICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiB0aGVtZS1jb2xvcihcInByaW1hcnlcIik7XG4gICAgICAgIH1cblxuICAgICAgICAmLm5vdWktc2xpZGVyLWRhbmdlciAubm9VaS1oYW5kbGUge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdGhlbWUtY29sb3IoXCJkYW5nZXJcIik7XG4gICAgICAgICAgICBib3JkZXItY29sb3I6IHRoZW1lLWNvbG9yKFwiZGFuZ2VyXCIpO1xuICAgICAgICB9XG5cbiAgICAgICAgJi5ub3VpLXNsaWRlci1zdWNjZXNzIC5ub1VpLWhhbmRsZSB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0aGVtZS1jb2xvcihcInN1Y2Nlc3NcIik7XG4gICAgICAgICAgICBib3JkZXItY29sb3I6IHRoZW1lLWNvbG9yKFwic3VjY2Vzc1wiKTtcbiAgICAgICAgfVxuXG4gICAgICAgICYubm91aS1zbGlkZXItd2FybmluZyAubm9VaS1oYW5kbGUge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdGhlbWUtY29sb3IoXCJ3YXJuaW5nXCIpO1xuICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiB0aGVtZS1jb2xvcihcIndhcm5pbmdcIik7XG4gICAgICAgIH1cblxuICAgICAgICAmLm5vdWktc2xpZGVyLWluZm8gLm5vVWktaGFuZGxlIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRoZW1lLWNvbG9yKFwiaW5mb1wiKTtcbiAgICAgICAgICAgIGJvcmRlci1jb2xvcjogdGhlbWUtY29sb3IoXCJpbmZvXCIpO1xuICAgICAgICB9XG4gICAgfVxuXG5cbiAgICAvL1xuICAgIC8vIENvbnRleHR1YWwgY29sb3JzXG4gICAgLy9cblxuICAgIC8vIFByaW1hcnlcbiAgICAubm91aS1zbGlkZXItcHJpbWFyeSB7XG4gICAgICAgIC5ub1VpLWNvbm5lY3Qge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdGhlbWUtY29sb3IoXCJwcmltYXJ5XCIpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLy8gRGFuZ2VyXG4gICAgLm5vdWktc2xpZGVyLWRhbmdlciB7XG4gICAgICAgIC5ub1VpLWNvbm5lY3Qge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdGhlbWUtY29sb3IoXCJkYW5nZXJcIik7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBTdWNjZXNzXG4gICAgLm5vdWktc2xpZGVyLXN1Y2Nlc3Mge1xuICAgICAgICAubm9VaS1jb25uZWN0IHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRoZW1lLWNvbG9yKFwic3VjY2Vzc1wiKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8vIFdhcm5pbmdcbiAgICAubm91aS1zbGlkZXItd2FybmluZyB7XG4gICAgICAgIC5ub1VpLWNvbm5lY3Qge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdGhlbWUtY29sb3IoXCJ3YXJuaW5nXCIpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLy8gSW5mb1xuICAgIC5ub3VpLXNsaWRlci1pbmZvIHtcbiAgICAgICAgLm5vVWktY29ubmVjdCB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0aGVtZS1jb2xvcihcImluZm9cIik7XG4gICAgICAgIH1cbiAgICB9XG5cblxuICAgIC8vXG4gICAgLy8gVG9vbHRpcFxuICAgIC8vXG5cbiAgICAubm9VaS10b29sdGlwIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdG9vbHRpcC1iZztcbiAgICAgICAgY29sb3I6ICR0b29sdGlwLWNvbG9yO1xuICAgICAgICBwYWRkaW5nOiAkdG9vbHRpcC1wYWRkaW5nLXkgJHRvb2x0aXAtcGFkZGluZy14O1xuICAgICAgICBib3R0b206ICR0b29sdGlwLWFycm93LWhlaWdodDtcbiAgICAgICAgbGVmdDogNTAlO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC01MCUsIC01MCUsIDApO1xuICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGJvcmRlci1yYWRpdXMpO1xuICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKGFsbCBlYXNlLWluLW91dCAkY29tcG9uZW50LXRyYW5zaXRpb24tdGltZXIpO1xuXG4gICAgICAgIC8vIEFycm93XG4gICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgICAgICBib3JkZXI6ICR0b29sdGlwLWFycm93LWhlaWdodCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICAgICAgICAgIGJvcmRlci10b3AtY29sb3I6ICR0b29sdGlwLWFycm93LWNvbG9yO1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgbGVmdDogNTAlO1xuICAgICAgICAgICAgYm90dG9tOiAtKCR0b29sdGlwLWFycm93LWhlaWdodCAqIDIpO1xuICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtNTAlLCAwLCAwKTtcbiAgICAgICAgICAgIEBpbmNsdWRlIHNpemUoMCk7XG4gICAgICAgIH1cblxuICAgICAgICAvLyBTaG93IHRvb2x0aXAgb24gaG92ZXJcbiAgICAgICAgLm5vVWktaGFuZGxlOmhvdmVyICYge1xuICAgICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gICAgICAgIH1cbiAgICB9XG5cblxuICAgIC8vIFBpcHNcbiAgICAvLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuICAgIC8vIEJhc2VcbiAgICAubm9VaS1waXBzIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICBjb2xvcjogJHNsaWRlci1waXBzLWNvbG9yO1xuICAgIH1cblxuXG4gICAgLy9cbiAgICAvLyBWYWx1ZXMgYmFzZVxuICAgIC8vXG5cbiAgICAvLyBEZWZhdWx0XG4gICAgLm5vVWktdmFsdWUge1xuICAgICAgICB3aWR0aDogMi41cmVtO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgZm9udC1zaXplOiAkc2xpZGVyLXBpcHMtZm9udC1zaXplO1xuICAgICAgICBsaW5lLWhlaWdodDogJHNsaWRlci1waXBzLWxpbmUtaGVpZ2h0O1xuICAgIH1cblxuICAgIC8vIFN1YlxuICAgIC5ub1VpLXZhbHVlLXN1YiB7XG4gICAgICAgIGNvbG9yOiBsaWdodGVuKCRzbGlkZXItcGlwcy1jb2xvciwgMjAlKTtcbiAgICB9XG5cblxuICAgIC8vXG4gICAgLy8gTWFya2luZ3MgYmFzZVxuICAgIC8vXG5cbiAgICAubm9VaS1tYXJrZXIge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRzbGlkZXItcGlwcy1jb2xvcjtcbiAgICB9XG5cblxuICAgIC8vXG4gICAgLy8gSG9yaXpvbnRhbCBsYXlvdXRcbiAgICAvL1xuXG4gICAgLy8gUGlwc1xuICAgIC5ub1VpLXBpcHMtaG9yaXpvbnRhbCB7XG4gICAgICAgIHBhZGRpbmctdG9wOiAoJHNsaWRlci1waXBzLXNwYWNlci15IC8gMS41KTtcbiAgICAgICAgaGVpZ2h0OiAoJGxpbmUtaGVpZ2h0LWNvbXB1dGVkICsgJHNsaWRlci1waXBzLXNwYWNlci15KTtcbiAgICAgICAgdG9wOiAxMDAlO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICB9XG5cbiAgICAvLyBWYWx1ZXNcbiAgICAubm9VaS12YWx1ZS1ob3Jpem9udGFsIHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IC0oMS4yNXJlbSk7XG4gICAgICAgIHBhZGRpbmctdG9wOiAkc2xpZGVyLXBpcHMtc3BhY2VyLXk7XG5cbiAgICAgICAgJi5ub1VpLXZhbHVlLXN1YiB7XG4gICAgICAgICAgICBwYWRkaW5nLXRvcDogKCRzbGlkZXItcGlwcy1zcGFjZXIteSAvIDEuNSk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBNYXJrZXJzXG4gICAgLm5vVWktbWFya2VyLWhvcml6b250YWwge1xuXG4gICAgICAgIC8vIERlZmF1bHQgbWFya2VyXG4gICAgICAgICYubm9VaS1tYXJrZXIge1xuICAgICAgICAgICAgd2lkdGg6ICRzbGlkZXItcGlwcy1tYXJrZXItd2lkdGg7XG4gICAgICAgICAgICBoZWlnaHQ6ICRzbGlkZXItcGlwcy1tYXJrZXItaGVpZ2h0O1xuICAgICAgICB9XG5cbiAgICAgICAgLy8gU3ViIG1hcmtlclxuICAgICAgICAmLm5vVWktbWFya2VyLXN1YiB7XG4gICAgICAgICAgICBoZWlnaHQ6ICgkc2xpZGVyLXBpcHMtbWFya2VyLWhlaWdodCAqIDIpO1xuICAgICAgICB9XG5cbiAgICAgICAgLy8gTGFyZ2UgbWFya2VyXG4gICAgICAgICYubm9VaS1tYXJrZXItbGFyZ2Uge1xuICAgICAgICAgICAgaGVpZ2h0OiAoJHNsaWRlci1waXBzLW1hcmtlci1oZWlnaHQgKiAzKTtcbiAgICAgICAgfVxuICAgIH1cblxuXG4gICAgLy9cbiAgICAvLyBWZXJ0aWNhbCBsYXlvdXRcbiAgICAvL1xuXG4gICAgLy8gUGlwc1xuICAgIC5ub1VpLXBpcHMtdmVydGljYWwge1xuICAgICAgICBwYWRkaW5nLWxlZnQ6ICgkc2xpZGVyLXBpcHMtc3BhY2VyLXkgLyAxLjUpO1xuICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgbGVmdDogMTAwJTtcbiAgICB9XG5cbiAgICAvLyBWYWx1ZXNcbiAgICAubm9VaS12YWx1ZS12ZXJ0aWNhbCB7XG4gICAgICAgIG1hcmdpbi10b3A6IC0oJGxpbmUtaGVpZ2h0LWNvbXB1dGVkIC8gMik7XG4gICAgICAgIHBhZGRpbmctbGVmdDogKCRzbGlkZXItcGlwcy1zcGFjZXIteSAvIDIpO1xuXG4gICAgICAgIC5ub1VpLXJ0bCAmIHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAtKCRsaW5lLWhlaWdodC1jb21wdXRlZCAvIDIpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLy8gTWFya2Vyc1xuICAgIC5ub1VpLW1hcmtlci12ZXJ0aWNhbCB7XG5cbiAgICAgICAgLy8gRGVmYXVsdCBtYXJrZXJcbiAgICAgICAgJi5ub1VpLW1hcmtlciB7XG4gICAgICAgICAgICB3aWR0aDogJHNsaWRlci1waXBzLW1hcmtlci1oZWlnaHQ7XG4gICAgICAgICAgICBoZWlnaHQ6ICRzbGlkZXItcGlwcy1tYXJrZXItd2lkdGg7XG4gICAgICAgIH1cblxuICAgICAgICAvLyBTdWIgbWFya2VyXG4gICAgICAgICYubm9VaS1tYXJrZXItc3ViIHtcbiAgICAgICAgICAgIHdpZHRoOiAoJHNsaWRlci1waXBzLW1hcmtlci1oZWlnaHQgKiAyKTtcbiAgICAgICAgfVxuXG4gICAgICAgIC8vIExhcmdlIG1hcmtlclxuICAgICAgICAmLm5vVWktbWFya2VyLWxhcmdlIHtcbiAgICAgICAgICAgIHdpZHRoOiAoJHNsaWRlci1waXBzLW1hcmtlci1oZWlnaHQgKiAzKTtcbiAgICAgICAgfVxuICAgIH1cbn1cbiIsIi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuKlxuKiAgIyBJT04gUmFuZ2UgU2xpZGVyXG4qXG4qICBTdHlsZXMgZm9yIGlvbl9yYW5nZXNsaWRlci5taW4uanMgLSByYW5nZSBzbGlkZXIgcGx1Z2luXG4qXG4qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cblxuLy8gQ2hlY2sgaWYgY29tcG9uZW50IGlzIGVuYWJsZWRcbkBpZiAkZW5hYmxlLWlvbiB7XG5cbiAgICAvLyBCYXNlXG4gICAgLmlycyB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIGhlaWdodDogJHRvb2x0aXAtYXJyb3ctaGVpZ2h0ICsgKCR0b29sdGlwLXBhZGRpbmcteSAqIDIpICsgJHNsaWRlci1waXBzLWZvbnQtc2l6ZSArICgkc2xpZGVyLWhlaWdodCAqIDQpO1xuICAgICAgICB1c2VyLXNlbGVjdDogbm9uZTtcbiAgICAgICAgLypydGw6aWdub3JlKi9cbiAgICAgICAgZGlyZWN0aW9uOiBsdHI7XG4gICAgfVxuXG4gICAgLy8gSGlkZSBvcmlnaW5hbCBpbnB1dFxuICAgIC5pcnMtaGlkZGVuLWlucHV0IHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlICFpbXBvcnRhbnQ7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG4gICAgICAgIHRvcDogMCAhaW1wb3J0YW50O1xuICAgICAgICBsZWZ0OiAwICFpbXBvcnRhbnQ7XG4gICAgICAgIHdpZHRoOiAwICFpbXBvcnRhbnQ7XG4gICAgICAgIGhlaWdodDogMCAhaW1wb3J0YW50O1xuICAgICAgICBmb250LXNpemU6IDAgIWltcG9ydGFudDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDAgIWltcG9ydGFudDtcbiAgICAgICAgcGFkZGluZzogMCAhaW1wb3J0YW50O1xuICAgICAgICBtYXJnaW46IDAgIWltcG9ydGFudDtcbiAgICAgICAgb3V0bGluZTogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgICB6LWluZGV4OiAtOTk5OSAhaW1wb3J0YW50O1xuICAgICAgICBiYWNrZ3JvdW5kOiBub25lICFpbXBvcnRhbnQ7XG4gICAgICAgIGJvcmRlci1zdHlsZTogc29saWQgIWltcG9ydGFudDtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xuICAgIH1cblxuXG4gICAgLy9cbiAgICAvLyBCYWNrZ3JvdW5kIGxpbmVcbiAgICAvL1xuXG4gICAgLy8gQmFzZVxuICAgIC5pcnMtbGluZSB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgIG91dGxpbmU6IG5vbmU7XG4gICAgICAgIGhlaWdodDogJHNsaWRlci1oZWlnaHQ7XG4gICAgICAgIHRvcDogJHRvb2x0aXAtYXJyb3ctaGVpZ2h0ICsgKCR0b29sdGlwLXBhZGRpbmcteSAqIDIpICsgJHNsaWRlci1waXBzLWZvbnQtc2l6ZSArICgkc2xpZGVyLWhlaWdodCAqIDIpO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkc2xpZGVyLWJnO1xuICAgICAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRib3JkZXItcmFkaXVzLXJvdW5kKTtcbiAgICB9XG5cbiAgICAvLyBJdCBjb25zaXN0cyBvZiAzIHBhcnRzXG4gICAgLmlycy1saW5lLWxlZnQsXG4gICAgLmlycy1saW5lLW1pZCxcbiAgICAuaXJzLWxpbmUtcmlnaHQge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB0b3A6IDA7XG4gICAgfVxuXG4gICAgLy8gTGVmdFxuICAgIC5pcnMtbGluZS1sZWZ0IHtcbiAgICAgICAgLypydGw6aWdub3JlKi9cbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgd2lkdGg6IDExJTtcbiAgICB9XG5cbiAgICAvLyBNaWRkbGVcbiAgICAuaXJzLWxpbmUtbWlkIHtcbiAgICAgICAgLypydGw6aWdub3JlKi9cbiAgICAgICAgbGVmdDogOSU7XG4gICAgICAgIHdpZHRoOiA4MiU7XG4gICAgfVxuXG4gICAgLy8gQW5kIHJpZ2h0XG4gICAgLmlycy1saW5lLXJpZ2h0IHtcbiAgICAgICAgLypydGw6aWdub3JlKi9cbiAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgIHdpZHRoOiAxMSU7XG4gICAgfVxuXG5cbiAgICAvL1xuICAgIC8vIENvbG9yZWQgYmFyXG4gICAgLy9cblxuICAgIC8vIEJhc2VcbiAgICAuaXJzLWJhciB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIHRvcDogJHRvb2x0aXAtYXJyb3ctaGVpZ2h0ICsgKCR0b29sdGlwLXBhZGRpbmcteSAqIDIpICsgJHNsaWRlci1waXBzLWZvbnQtc2l6ZSArICgkc2xpZGVyLWhlaWdodCAqIDIpO1xuICAgICAgICAvKnJ0bDppZ25vcmUqL1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICB3aWR0aDogMDtcbiAgICAgICAgaGVpZ2h0OiAkc2xpZGVyLWhlaWdodDtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHNsaWRlci1jb25uZWN0LWJnO1xuICAgICAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRib3JkZXItcmFkaXVzLXJvdW5kKTtcbiAgICB9XG5cbiAgICAvLyBFZGdlXG4gICAgLmlycy1iYXItZWRnZSB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIHRvcDogJHRvb2x0aXAtYXJyb3ctaGVpZ2h0ICsgKCR0b29sdGlwLXBhZGRpbmcteSAqIDIpICsgJHNsaWRlci1waXBzLWZvbnQtc2l6ZSArICgkc2xpZGVyLWhlaWdodCAqIDIpO1xuICAgICAgICAvKnJ0bDppZ25vcmUqL1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICBoZWlnaHQ6IDAuNzVyZW07XG4gICAgICAgIHdpZHRoOiAwLjU2MjVyZW07XG4gICAgfVxuXG4gICAgLy8gU2hhZG93IGZvciBoaWdobGlnaHRpbmcgZGlzYWJsZWQgcmFuZ2VcbiAgICAuaXJzLXNoYWRvdyB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgdG9wOiAkdG9vbHRpcC1hcnJvdy1oZWlnaHQgKyAoJHRvb2x0aXAtcGFkZGluZy15ICogMikgKyAkc2xpZGVyLXBpcHMtZm9udC1zaXplICsgKCRzbGlkZXItaGVpZ2h0ICogMik7XG4gICAgICAgIC8qcnRsOmlnbm9yZSovXG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIHdpZHRoOiAwO1xuICAgICAgICBoZWlnaHQ6ICRzbGlkZXItaGVpZ2h0O1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYm9keS1jb2xvcjtcbiAgICAgICAgb3BhY2l0eTogMC4yNTtcbiAgICAgICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkYm9yZGVyLXJhZGl1cy1yb3VuZCk7XG4gICAgfVxuXG5cblxuICAgIC8vXG4gICAgLy8gSGFuZGxlc1xuICAgIC8vXG5cbiAgICAvLyBCYXNlXG4gICAgLmlycy1zbGlkZXIge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkc2xpZGVyLWhhbmRsZS1iZztcbiAgICAgICAgYm9yZGVyOiAkc2xpZGVyLWhhbmRsZS1ib3JkZXItd2lkdGggc29saWQgJHNsaWRlci1oYW5kbGUtYm9yZGVyLWNvbG9yO1xuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgIHRvcDogJHRvb2x0aXAtYXJyb3ctaGVpZ2h0ICsgKCR0b29sdGlwLXBhZGRpbmcteSAqIDIpICsgJHNsaWRlci1waXBzLWZvbnQtc2l6ZSArICRzbGlkZXItaGVpZ2h0O1xuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgIHotaW5kZXg6IDE7XG4gICAgICAgIEBpbmNsdWRlIHNpemUoJHNsaWRlci1oZWlnaHQgKiAzKTtcbiAgICAgICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkYm9yZGVyLXJhZGl1cy1yb3VuZCk7XG5cbiAgICAgICAgLy8gU21hbGwgY2lyY2xlXG4gICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICB0b3A6IDUwJTtcbiAgICAgICAgICAgIGxlZnQ6IDUwJTtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IC0oJHNsaWRlci1oZWlnaHQgLyAyKTtcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAtKCRzbGlkZXItaGVpZ2h0IC8gMik7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkc2xpZGVyLWhhbmRsZS1pbm5lci1iZztcbiAgICAgICAgICAgIEBpbmNsdWRlIHNpemUoJHNsaWRlci1oZWlnaHQpO1xuICAgICAgICAgICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkYm9yZGVyLXJhZGl1cy1yb3VuZCk7XG4gICAgICAgIH1cblxuICAgICAgICAvLyBBbmltYXRlIGhhbmRsZVxuICAgICAgICAmLFxuICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oYmFja2dyb3VuZC1jb2xvciBlYXNlLWluLW91dCAkY29tcG9uZW50LXRyYW5zaXRpb24tdGltZXIpO1xuICAgICAgICB9XG5cbiAgICAgICAgLy8gSG92ZXIgc3RhdGVcbiAgICAgICAgQGluY2x1ZGUgaG92ZXItZm9jdXMge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHNsaWRlci1oYW5kbGUtaG92ZXItYmc7XG5cbiAgICAgICAgICAgIC8vIE11dGUgY2lyY2xlXG4gICAgICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkc2xpZGVyLWhhbmRsZS1pbm5lci1ob3Zlci1iZztcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC8vIFRoZSBsYXN0IG9uZSBpcyBvbiB0b3Agb2YgdGhlIGZpcnN0IG9uZVxuICAgICAgICAmLnR5cGVfbGFzdCB7XG4gICAgICAgICAgICB6LWluZGV4OiAyO1xuICAgICAgICB9XG4gICAgfVxuXG5cblxuICAgIC8vXG4gICAgLy8gVG9vbHRpcHNcbiAgICAvL1xuXG4gICAgLy8gQmFzZVxuICAgIC5pcnMtbWluLFxuICAgIC5pcnMtbWF4LFxuICAgIC5pcnMtZnJvbSxcbiAgICAuaXJzLXRvLFxuICAgIC5pcnMtc2luZ2xlIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgY3Vyc29yOiBkZWZhdWx0O1xuICAgIH1cblxuICAgIC8vIE1pbmltdW0gYW5kIG1heGltdW0gbGFiZWxzXG4gICAgLmlycy1taW4sXG4gICAgLmlycy1tYXgge1xuICAgICAgICBjb2xvcjogJHNsaWRlci1waXBzLWNvbG9yO1xuICAgICAgICBmb250LXNpemU6ICRzbGlkZXItcGlwcy1mb250LXNpemU7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgIHBhZGRpbmc6ICR0b29sdGlwLXBhZGRpbmcteTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHNsaWRlci1iZztcbiAgICAgICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkYm9yZGVyLXJhZGl1cyk7XG4gICAgfVxuICAgIC5pcnMtbWluIHtcbiAgICAgICAgLypydGw6aWdub3JlKi9cbiAgICAgICAgbGVmdDogMDtcbiAgICB9XG4gICAgLmlycy1tYXgge1xuICAgICAgICAvKnJ0bDppZ25vcmUqL1xuICAgICAgICByaWdodDogMDtcbiAgICB9XG5cbiAgICAvLyBIYW5kbGUgdG9vbHRpcHNcbiAgICAuaXJzLWZyb20sXG4gICAgLmlycy10byxcbiAgICAuaXJzLXNpbmdsZSB7XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgLypydGw6aWdub3JlKi9cbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICAgICAgY29sb3I6ICR0b29sdGlwLWNvbG9yO1xuICAgICAgICBmb250LXNpemU6ICRzbGlkZXItcGlwcy1mb250LXNpemU7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgICAgICBwYWRkaW5nOiAkdG9vbHRpcC1wYWRkaW5nLXk7XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHRvb2x0aXAtYmc7XG4gICAgICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGJvcmRlci1yYWRpdXMpO1xuXG4gICAgICAgIC8vIFRvb2x0aXAgYXJyb3dcbiAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICBib3R0b206IC0oJHRvb2x0aXAtYXJyb3ctaGVpZ2h0ICogMik7XG4gICAgICAgICAgICBsZWZ0OiA1MCU7XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogLSgkdG9vbHRpcC1hcnJvdy1oZWlnaHQpO1xuICAgICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgICAgIGJvcmRlcjogJHRvb2x0aXAtYXJyb3ctaGVpZ2h0IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgICAgICAgICAgYm9yZGVyLXRvcC1jb2xvcjogJHRvb2x0aXAtYXJyb3ctY29sb3I7XG4gICAgICAgICAgICBAaW5jbHVkZSBzaXplKDApO1xuICAgICAgICB9XG4gICAgfVxuXG5cbiAgICAvL1xuICAgIC8vIFRoZSBncmlkXG4gICAgLy9cblxuICAgIC8vIEJhc2VcbiAgICAuaXJzLWdyaWQge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgLypydGw6aWdub3JlKi9cbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGhlaWdodDogKCRzbGlkZXItcGlwcy1mb250LXNpemUgKyAkc2xpZGVyLXBpcHMtc3BhY2VyLXkpO1xuICAgIH1cblxuICAgIC8vIElmIHNsaWRlciBoYXMgZ3JpZFxuICAgIC5pcnMtd2l0aC1ncmlkIHtcbiAgICAgICAgaGVpZ2h0OiAkdG9vbHRpcC1hcnJvdy1oZWlnaHQgKyAoJHRvb2x0aXAtcGFkZGluZy15ICogMikgKyAkc2xpZGVyLXBpcHMtZm9udC1zaXplICsgKCRzbGlkZXItaGVpZ2h0ICogNykgKyAkc2xpZGVyLXBpcHMtc3BhY2VyLXk7XG5cbiAgICAgICAgLy8gRGlzcGxheSBncmlkXG4gICAgICAgIC5pcnMtZ3JpZCB7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8vIE1hcmtlclxuICAgIC5pcnMtZ3JpZC1wb2wge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgLypydGw6aWdub3JlKi9cbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgd2lkdGg6ICRzbGlkZXItcGlwcy1tYXJrZXItd2lkdGg7XG4gICAgICAgIGhlaWdodDogKCRzbGlkZXItcGlwcy1tYXJrZXItaGVpZ2h0ICogMik7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRzbGlkZXItcGlwcy1jb2xvcjtcblxuICAgICAgICAvLyBTdWIgbWFya2VyXG4gICAgICAgICYuc21hbGwge1xuICAgICAgICAgICAgaGVpZ2h0OiAkc2xpZGVyLXBpcHMtbWFya2VyLWhlaWdodDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8vIFRleHQgbGFiZWxcbiAgICAuaXJzLWdyaWQtdGV4dCB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICAvKnJ0bDppZ25vcmUqL1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIGZvbnQtc2l6ZTogJHNsaWRlci1waXBzLWZvbnQtc2l6ZTtcbiAgICAgICAgY29sb3I6ICRzbGlkZXItcGlwcy1jb2xvcjtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgICAgIHBhZGRpbmc6IDAgJHNsaWRlci1waXBzLW1hcmtlci1oZWlnaHQ7XG4gICAgfVxuXG5cbiAgICAvL1xuICAgIC8vIERpc2FibGVkIHN0YXRlXG4gICAgLy9cblxuICAgIC8vIERpc2FibGVkIG1hc2tcbiAgICAuaXJzLWRpc2FibGUtbWFzayB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgLypydGw6aWdub3JlKi9cbiAgICAgICAgbGVmdDogLTElO1xuICAgICAgICB3aWR0aDogMTAyJTtcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICBjdXJzb3I6IGRlZmF1bHQ7XG4gICAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgICAgICB6LWluZGV4OiAyO1xuICAgIH1cblxuICAgIC8vIE11dGUgc2xpZGVyIGlmIGRpc2FibGVkXG4gICAgLmlycy1kaXNhYmxlZCB7XG4gICAgICAgIG9wYWNpdHk6ICRzbGlkZXItZGlzYWJsZWQtb3BhY2l0eTtcbiAgICB9XG59XG4iLCIvKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAqXG4gKiAgIyBqUXVlcnkgVUkgSW50ZXJhY3Rpb25zXG4gKlxuICogIFNlcGFyYXRlIHN0eWxlcyBmb3IgalF1ZXJ5IFVJIGxpYnJhcnkuIENvbXBvbmVudCdzIGludGVyYWN0aW9uc1xuICpcbiAqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cblxuLy8gQ2hlY2sgaWYgY29tcG9uZW50IGlzIGVuYWJsZWRcbkBpZiAkZW5hYmxlLWpxdWVyeXVpIHtcblxuXG5cdC8vIE1pc2Ncblx0Ly8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG5cdC8vIEhhbmRsZXNcblx0LnVpLWRyYWdnYWJsZS1oYW5kbGUsXG5cdC51aS1zb3J0YWJsZS1oYW5kbGUge1xuXHRcdHRvdWNoLWFjdGlvbjogbm9uZTtcblx0fVxuXG5cblx0Ly8gU29ydGFibGVcblx0Ly8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG5cdC8vIEJhc2Vcblx0LnVpLXNvcnRhYmxlIHtcblx0XHQudWktc3RhdGUtZGlzYWJsZWQge1xuXHRcdFx0Y29sb3I6ICR0ZXh0LW11dGVkO1xuXHRcdFx0Y3Vyc29yOiAkY3Vyc29yLWRpc2FibGVkO1xuXHRcdFx0b3BhY2l0eTogMC43NTtcblx0XHR9XG5cdH1cblxuXHQvLyBQbGFjZWhvbGRlclxuXHQuc29ydGFibGUtcGxhY2Vob2xkZXIge1xuXHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuXHRcdC8vIEJhY2tncm91bmRcblx0XHQmOmJlZm9yZSB7XG5cdFx0XHRjb250ZW50OiAnJztcblx0XHRcdGRpc3BsYXk6IGlubGluZS1ibG9jaztcblx0XHRcdGJhY2tncm91bmQtY29sb3I6IHJnYmEoJHdoaXRlLCAwLjgpO1xuXHRcdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdFx0bGVmdDogMDtcblx0XHRcdHRvcDogMDtcblx0XHRcdGJvcmRlcjogJGJvcmRlci13aWR0aCBkYXNoZWQgcmdiYSgkYmxhY2ssIDAuMik7XG5cdFx0XHRAaW5jbHVkZSBzaXplKDEwMCUpO1xuXHRcdH1cblx0fVxuXG5cblx0Ly9cblx0Ly8gQ2FyZCBwbGFjZWhvbGRlclxuXHQvL1xuXG5cdC8vIENhcmRcblx0LmNhcmQge1xuXG5cdFx0Ly8gUGxhY2Vob2xkZXIgYmVsb3cgY2FyZFxuXHRcdCsgLnNvcnRhYmxlLXBsYWNlaG9sZGVyIHtcblx0XHRcdG1hcmdpbi1ib3R0b206ICRzcGFjZXI7XG5cblx0XHRcdC5zaWRlYmFyICYge1xuXHRcdFx0XHRtYXJnaW4tYm90dG9tOiAwO1xuXHRcdFx0fVxuXHRcdH1cblxuXHRcdC8vIFBsYWNlaG9sZGVyIGFib3ZlIGNhcmRcblx0XHQuc29ydGFibGUtcGxhY2Vob2xkZXIgKyAmIHtcblx0XHRcdG1hcmdpbi10b3A6ICRzcGFjZXI7XG5cblx0XHRcdC5zaWRlYmFyICYge1xuXHRcdFx0XHRtYXJnaW4tdG9wOiAwO1xuXHRcdFx0fVxuXHRcdH1cblx0fVxuXG5cdC8vIENhcmQgZ3JvdXBcblx0LmNhcmQtZ3JvdXAge1xuXHRcdD4gLnNvcnRhYmxlLXBsYWNlaG9sZGVyOmJlZm9yZSB7XG5cdFx0XHRAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRjYXJkLWJvcmRlci1yYWRpdXMpO1xuXHRcdH1cblx0fVxuXG5cblx0Ly9cblx0Ly8gU2lkZWJhciBwbGFjZWhvbGRlclxuXHQvL1xuXG5cdC8vIEJhc2Vcblx0LnNpZGViYXIge1xuXG5cdFx0Ly8gUmVtb3ZlIGhvcml6b250YWwgYm9yZGVyc1xuXHRcdC5zb3J0YWJsZS1wbGFjZWhvbGRlcjpiZWZvcmUge1xuXHRcdFx0Ym9yZGVyLWxlZnQ6IDA7XG5cdFx0XHRib3JkZXItcmlnaHQ6IDA7XG5cdFx0fVxuXG5cdFx0Ly8gRGFyayBzaWRlYmFyXG5cdFx0Ji1kYXJrIHtcblxuXHRcdFx0Ly8gUmVtb3ZlIGhvcml6b250YWwgYm9yZGVyc1xuXHRcdFx0LnNvcnRhYmxlLXBsYWNlaG9sZGVyOmJlZm9yZSB7XG5cdFx0XHRcdGJhY2tncm91bmQtY29sb3I6IHJnYmEoJGJsYWNrLCAwLjUpO1xuXHRcdFx0fVxuXG5cdFx0XHQvLyBTaWRlYmFyIGNhdGVnb3J5IGFzIGEgaGVscGVyXG5cdFx0XHQuY2FyZDpub3QoW2NsYXNzKj1iZy1dKTpub3QoLmZpeGVkLXRvcCkge1xuXHRcdFx0XHQmLnVpLXNvcnRhYmxlLWhlbHBlciB7XG5cdFx0XHRcdFx0YmFja2dyb3VuZC1jb2xvcjogcmdiYSgkYmxhY2ssIDAuNSk7XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHR9XG5cblx0XHQvLyBMaWdodCBzaWRlYmFyXG5cdFx0Ji1saWdodCB7XG5cblx0XHRcdC8vIFJlbW92ZSBob3Jpem9udGFsIGJvcmRlcnNcblx0XHRcdC5zb3J0YWJsZS1wbGFjZWhvbGRlcjpiZWZvcmUge1xuXHRcdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkZ3JheS0xMDA7XG5cdFx0XHR9XG5cblx0XHRcdC8vIFNpZGViYXIgY2F0ZWdvcnkgYXMgYSBoZWxwZXJcblx0XHRcdC5jYXJkOm5vdChbY2xhc3MqPWJnLV0pOm5vdCguZml4ZWQtdG9wKSB7XG5cdFx0XHRcdCYudWktc29ydGFibGUtaGVscGVyIHtcblx0XHRcdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkY2FyZC1iZztcblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdH1cblx0fVxuXG5cblx0Ly9cblx0Ly8gVGFibGUgcGxhY2Vob2xkZXJcblx0Ly9cblxuXHQudGFibGUge1xuXG5cdFx0Ly8gSGVscGVyXG5cdFx0LnVpLXNvcnRhYmxlLWhlbHBlciB7XG5cdFx0XHR3aWR0aDogMTAwJTtcblx0XHRcdGJhY2tncm91bmQtY29sb3I6ICR0YWJsZS1iZztcblx0XHRcdGRpc3BsYXk6IHRhYmxlO1xuXHRcdH1cblxuXHRcdC8vIFBsYWNlaG9sZGVyXG5cdFx0LnNvcnRhYmxlLXBsYWNlaG9sZGVyIHtcblx0XHRcdG1hcmdpbjogMDtcblxuXHRcdFx0Ly8gUmVtb3ZlIHBsYWNlaG9sZGVyIGJvcmRlclxuXHRcdFx0JjpiZWZvcmUge1xuXHRcdFx0XHRjb250ZW50OiBub25lO1xuXHRcdFx0fVxuXHRcdH1cblxuXHRcdC8vIEVuYWRsZSBhYnNvbHV0ZSBwb3NpdGlvbmluZ1xuXHRcdCYudWktc29ydGFibGUge1xuXHRcdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRcdH1cblx0fVxuXG5cblx0Ly8gUmVzaXphYmxlXG5cdC8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuXHQvLyBIYW5kbGVcblx0LnVpLXJlc2l6YWJsZS1oYW5kbGUge1xuXHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRmb250LXNpemU6IDA7XG5cdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0dG91Y2gtYWN0aW9uOiBub25lO1xuXG5cdFx0Ly8gSWNvblxuXHRcdCYudWktaWNvbiB7XG5cdFx0XHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cdFx0XHRib3JkZXItc3R5bGU6IHNvbGlkO1xuXHRcdFx0Ym9yZGVyLXdpZHRoOiAwIDAgMC4zNzVyZW0gMC4zNzVyZW07XG5cdFx0XHRib3JkZXItY29sb3I6IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50ICRib2R5LWNvbG9yIHRyYW5zcGFyZW50O1xuXHRcdH1cblxuXHRcdC8vIEhpZGUgaWYgZGlzYWJsZWRcblx0XHQudWktcmVzaXphYmxlLWRpc2FibGVkICYsXG5cdFx0LnVpLXJlc2l6YWJsZS1hdXRvaGlkZSAmIHtcblx0XHRcdGRpc3BsYXk6IG5vbmU7XG5cdFx0fVxuXHR9XG5cblx0Ly8gSGFuZGxlIHBvc2l0aW9uc1xuXHQudWktcmVzaXphYmxlLW4ge1xuXHRcdGN1cnNvcjogbi1yZXNpemU7XG5cdFx0aGVpZ2h0OiAwLjQzNzVyZW07XG5cdFx0d2lkdGg6IDEwMCU7XG5cdFx0dG9wOiAtMC4zMTI1cmVtO1xuXHRcdGxlZnQ6IDA7XG5cdH1cblx0LnVpLXJlc2l6YWJsZS1zIHtcblx0XHRjdXJzb3I6IHMtcmVzaXplO1xuXHRcdGhlaWdodDogMC40Mzc1cmVtO1xuXHRcdHdpZHRoOiAxMDAlO1xuXHRcdGJvdHRvbTogLTAuMzEyNXJlbTtcblx0XHRsZWZ0OiAwO1xuXHR9XG5cdC51aS1yZXNpemFibGUtZSB7XG5cdFx0Y3Vyc29yOiBlLXJlc2l6ZTtcblx0XHR3aWR0aDogMC40Mzc1cmVtO1xuXHRcdHJpZ2h0OiAtMC4zMTI1cmVtO1xuXHRcdHRvcDogMDtcblx0XHRoZWlnaHQ6IDEwMCU7XG5cdH1cblx0LnVpLXJlc2l6YWJsZS13IHtcblx0XHRjdXJzb3I6IHctcmVzaXplO1xuXHRcdHdpZHRoOiAwLjQzNzVyZW07XG5cdFx0bGVmdDogLTAuMzEyNXJlbTtcblx0XHR0b3A6IDA7XG5cdFx0aGVpZ2h0OiAxMDAlO1xuXHR9XG5cdC51aS1yZXNpemFibGUtc2Uge1xuXHRcdGN1cnNvcjogc2UtcmVzaXplO1xuXHRcdHJpZ2h0OiAwLjA2MjVyZW07XG5cdFx0Ym90dG9tOiAwLjA2MjVyZW07XG5cdH1cblx0LnVpLXJlc2l6YWJsZS1zdyB7XG5cdFx0Y3Vyc29yOiBzdy1yZXNpemU7XG5cdFx0d2lkdGg6IDAuNTYyNXJlbTtcblx0XHRoZWlnaHQ6IDAuNTYyNXJlbTtcblx0XHRsZWZ0OiAtMC4zMTI1cmVtO1xuXHRcdGJvdHRvbTogLTAuMzEyNXJlbTtcblx0fVxuXHQudWktcmVzaXphYmxlLW53IHtcblx0XHRjdXJzb3I6IG53LXJlc2l6ZTtcblx0XHR3aWR0aDogMC41NjI1cmVtO1xuXHRcdGhlaWdodDogMC41NjI1cmVtO1xuXHRcdGxlZnQ6IC0wLjMxMjVyZW07XG5cdFx0dG9wOiAtMC4zMTI1cmVtO1xuXHR9XG5cdC51aS1yZXNpemFibGUtbmUge1xuXHRcdGN1cnNvcjogbmUtcmVzaXplO1xuXHRcdHdpZHRoOiAwLjU2MjVyZW07XG5cdFx0aGVpZ2h0OiAwLjU2MjVyZW07XG5cdFx0cmlnaHQ6IC0wLjMxMjVyZW07XG5cdFx0dG9wOiAtMC4zMTI1cmVtO1xuXHR9XG5cblxuXHQvLyBTZWxlY3RhYmxlXG5cdC8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuXHQvLyBEaXNhYmxlIGRlZmF1bHQgYmVoYXZpb3VyXG5cdC51aS1zZWxlY3RhYmxlIHtcblx0XHR0b3VjaC1hY3Rpb246IG5vbmU7XG5cdH1cblxuXHQvLyBTZWxlY3RhYmxlIGhlbHBlclxuXHQudWktc2VsZWN0YWJsZS1oZWxwZXIge1xuXHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHR6LWluZGV4OiAxMDA7XG5cdFx0Ym9yZGVyOiAkYm9yZGVyLXdpZHRoIGRhc2hlZCAkYm9keS1jb2xvcjtcblx0fVxufVxuIiwiLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gKlxuICogICMgalF1ZXJ5IFVJIFdpZGdldHNcbiAqXG4gKiAgU3R5bGVzIGZvciBqUXVlcnkgVUkgd2lkZ2V0c1xuICpcbiAqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cblxuLy8gQ2hlY2sgaWYgY29tcG9uZW50IGlzIGVuYWJsZWRcbkBpZiAkZW5hYmxlLWpxdWVyeXVpIHtcblxuXG5cdC8vIEFjY29yZGlvblxuXHQvLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cblx0Ly8gQmFzZVxuXHQudWktYWNjb3JkaW9uIHtcblxuXHRcdC8vIEhlYWRlclxuXHRcdC51aS1hY2NvcmRpb24taGVhZGVyIHtcblx0XHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdFx0Y3Vyc29yOiBwb2ludGVyO1xuXHRcdFx0bWFyZ2luOiAwO1xuXHRcdFx0b3V0bGluZTogMDtcblx0XHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0XHRcdGJhY2tncm91bmQtY29sb3I6ICRjYXJkLWJnO1xuXHRcdFx0cGFkZGluZzogJGNhcmQtc3BhY2VyLXkgJGNhcmQtc3BhY2VyLXg7XG5cdFx0XHRib3JkZXI6ICRjYXJkLWJvcmRlci13aWR0aCBzb2xpZCAkY2FyZC1ib3JkZXItY29sb3I7XG5cdFx0XHRtYXJnaW4tdG9wOiAkdWktYWNjb3JkaW9uLXNwYWNlci15O1xuXHRcdFx0QGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkY2FyZC1ib3JkZXItcmFkaXVzKTtcblxuXHRcdFx0Ly8gUmVtb3ZlIHRvcCBtYXJnaW4gZnJvbSB0aGUgZmlyc3QgaXRlbVxuXHRcdFx0JjpmaXJzdC1jaGlsZCB7XG5cdFx0XHRcdG1hcmdpbi10b3A6IDA7XG5cdFx0XHR9XG5cblx0XHRcdC8vIEJvcmRlciByYWRpdXMgY29ycmVjdGlvblxuXHRcdFx0Ji51aS1hY2NvcmRpb24taGVhZGVyLWFjdGl2ZSB7XG5cdFx0XHRcdEBpbmNsdWRlIGJvcmRlci1ib3R0b20tcmFkaXVzKDApO1xuXHRcdFx0fVxuXG5cdFx0XHQvLyBJY29uc1xuXHRcdFx0LnVpLWFjY29yZGlvbi1oZWFkZXItaWNvbiB7XG5cdFx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRcdFx0dG9wOiA1MCU7XG5cdFx0XHRcdHJpZ2h0OiAkY2FyZC1zcGFjZXIteDtcblx0XHRcdFx0bWFyZ2luLXRvcDogLSgkaWNvbi1mb250LXNpemUgLyAyKTtcblxuXHRcdFx0XHQvLyBJY29ubGxcblx0XHRcdFx0JjpiZWZvcmUge1xuXHRcdFx0XHRcdGNvbnRlbnQ6ICdcXGU5YjgnO1xuXHRcdFx0ICAgICAgICBmb250LWZhbWlseTogJGljb24tZm9udC1mYW1pbHk7XG5cdFx0XHQgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuXHRcdFx0ICAgICAgICB3aWR0aDogJGljb24tZm9udC1zaXplO1xuXHRcdFx0ICAgICAgICBmb250LXNpemU6ICRpY29uLWZvbnQtc2l6ZTtcblx0XHRcdCAgICAgICAgbGluZS1oZWlnaHQ6IDE7XG5cdFx0XHQgICAgICAgIEBpbmNsdWRlIGxsLWZvbnQtc21vb3RoaW5nKCk7XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHR9XG5cblx0XHQvLyBDaGFuZ2UgaWNvbiBpbiBhY3RpdmUgaGVhZGVyXG5cdFx0LnVpLWFjY29yZGlvbi1oZWFkZXItYWN0aXZlIHtcblx0XHRcdC51aS1hY2NvcmRpb24taGVhZGVyLWljb246YmVmb3JlIHtcblx0XHRcdFx0Y29udGVudDogJ1xcZTliNyc7XG5cdFx0XHR9XG5cdFx0fVxuXG5cdFx0Ly8gSWNvbnNcblx0XHQudWktYWNjb3JkaW9uLWljb25zIHtcblx0XHRcdHBhZGRpbmctcmlnaHQ6ICgoJGNhcmQtc3BhY2VyLXggKiAyKSArICRpY29uLWZvbnQtc2l6ZSk7XG5cdFx0fVxuXG5cdFx0Ly8gQ29udGVudFxuXHRcdC51aS1hY2NvcmRpb24tY29udGVudCB7XG5cdFx0XHRwYWRkaW5nOiAkY2FyZC1zcGFjZXIteDtcblx0XHRcdGJhY2tncm91bmQtY29sb3I6ICRjYXJkLWJnO1xuXHRcdFx0Ym9yZGVyOiAkY2FyZC1ib3JkZXItd2lkdGggc29saWQgJGNhcmQtYm9yZGVyLWNvbG9yO1xuXHRcdFx0Ym9yZGVyLXRvcDogMDtcblx0XHRcdG92ZXJmbG93OiBhdXRvO1xuXHRcdFx0QGluY2x1ZGUgYm9yZGVyLWJvdHRvbS1yYWRpdXMoJGNhcmQtYm9yZGVyLXJhZGl1cyk7XG5cdFx0fVxuXHR9XG5cblx0Ly8gU29ydGFibGUgdmVydGljYWwgc3BhY2luZ1xuXHQuYWNjb3JkaW9uLXNvcnRhYmxlLWdyb3VwIHtcblx0XHQmICsgJiB7XG5cdFx0XHRtYXJnaW4tdG9wOiAkdWktYWNjb3JkaW9uLXNwYWNlci15O1xuXHRcdH1cblx0fVxuXG5cblxuXHQvLyBBdXRvY29tcGxldGVcblx0Ly8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG5cdC8vIEJhc2Vcblx0LnVpLWF1dG9jb21wbGV0ZSB7IFxuXHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRkaXNwbGF5OiBub25lO1xuXHRcdHBhZGRpbmc6ICRkcm9wZG93bi1wYWRkaW5nLXkgMDtcblx0XHR6LWluZGV4OiAkemluZGV4LWRyb3Bkb3duO1xuXHRcdG1heC1oZWlnaHQ6ICR1aS1hdXRvY29tcGxldGUtaGVpZ2h0O1xuXHRcdG92ZXJmbG93OiBhdXRvO1xuXG5cdFx0Ly8gQ2F0ZWdvcnkgdGl0bGVcblx0XHQudWktYXV0b2NvbXBsZXRlLWNhdGVnb3J5IHtcblx0XHRcdHBhZGRpbmc6ICRkcm9wZG93bi1pdGVtLXBhZGRpbmcteSAkZHJvcGRvd24taXRlbS1wYWRkaW5nLXg7XG5cdFx0XHRmb250LXNpemU6ICRmb250LXNpemUtc207XG5cdFx0XHRsaW5lLWhlaWdodDogJGxpbmUtaGVpZ2h0LXNtO1xuXHRcdFx0dGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcblx0XHRcdGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtYm9sZDtcblxuXHRcdFx0Ly8gT3B0Z3JvdXAgaXRlbXMgaGF2ZSBkb3VibGUgaG9yaXpvbnRhbCBzcGFjaW5nXG5cdFx0XHR+IC51aS1tZW51LWl0ZW0ge1xuXHRcdFx0XHQudWktbWVudS1pdGVtLXdyYXBwZXIge1xuXHRcdFx0XHRcdHBhZGRpbmctbGVmdDogKCRkcm9wZG93bi1pdGVtLXBhZGRpbmcteCAqIDIpO1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG5cblx0Ly8gQW5pbWF0ZWQgcHJvY2Vzc2luZyBpY29uXG5cdC51aS1hdXRvY29tcGxldGUtcHJvY2Vzc2luZzphZnRlciB7IFxuXHQgICAgY29udGVudDogJ1xcZWI1MSc7XG5cdCAgICBmb250LWZhbWlseTogJGljb24tZm9udC1mYW1pbHk7XG5cdCAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cdCAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG5cdCAgICB0b3A6IDUwJTtcblx0ICAgIHJpZ2h0OiAkaW5wdXQtcGFkZGluZy14O1xuXHQgICAgd2lkdGg6ICRpY29uLWZvbnQtc2l6ZTtcblx0ICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuXHQgICAgbWFyZ2luLXRvcDogLSgkaWNvbi1mb250LXNpemUgLyAyKTtcblx0ICAgIGZvbnQtc2l6ZTogJGljb24tZm9udC1zaXplO1xuXHQgICAgbGluZS1oZWlnaHQ6IDE7XG5cdCAgICBjb2xvcjogaW5oZXJpdDtcblx0ICAgIGFuaW1hdGlvbjogcm90YXRpb24gMXMgbGluZWFyIGluZmluaXRlO1xuXHQgICAgQGluY2x1ZGUgbGwtZm9udC1zbW9vdGhpbmcoKTtcblx0fVxuXG5cdC8vIEluc2lkZSBpbnB1dCBncm91cCwgcmVtb3ZlIGJvcmRlciBhbmQgYm9yZGVyIHJhZGl1cyBmcm9tIHRoZSBsYXN0IGVsZW1lbnRcblx0LmlucHV0LWdyb3VwIHtcblx0XHQudWktYXV0b2NvbXBsZXRlLWlucHV0IHtcblx0XHRcdCsgLmlucHV0LWdyb3VwLWFwcGVuZCB7XG5cdFx0XHRcdD4gLmJ0bixcblx0XHRcdFx0PiAudWktYnV0dG9uIHtcblx0XHRcdFx0XHRib3JkZXItbGVmdDogMDtcblx0XHRcdFx0XHRAaW5jbHVkZSBib3JkZXItbGVmdC1yYWRpdXMoMCk7XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHR9XG5cdH1cblxuXG5cblx0Ly8gQnV0dG9uc1xuXHQvLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cblx0Ly8gQmFzZVxuXHQudWktYnV0dG9uIHtcblx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdFx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXHRcdGZvbnQtd2VpZ2h0OiAkYnRuLWZvbnQtd2VpZ2h0O1xuXHRcdHRleHQtYWxpZ246IGNlbnRlcjtcblx0XHR3aGl0ZS1zcGFjZTogbm93cmFwO1xuXHRcdHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG5cdFx0dXNlci1zZWxlY3Q6IG5vbmU7XG5cdFx0Y3Vyc29yOiBwb2ludGVyO1xuXHRcdGJhY2tncm91bmQtY29sb3I6ICRidG4tbGlnaHQtYmc7XG5cdFx0Ym9yZGVyOiAkYnRuLWJvcmRlci13aWR0aCBzb2xpZCAkYnRuLWxpZ2h0LWJvcmRlci1jb2xvcjtcblx0XHRjb2xvcjogJGJ0bi1saWdodC1jb2xvcjtcblx0XHRAaW5jbHVkZSBidXR0b24tc2l6ZSgkYnRuLXBhZGRpbmcteSwgJGJ0bi1wYWRkaW5nLXgsICRmb250LXNpemUtYmFzZSwgJGJ0bi1saW5lLWhlaWdodCwgJGJ0bi1ib3JkZXItcmFkaXVzKTtcblx0XHRAaW5jbHVkZSB0cmFuc2l0aW9uKCRidG4tdHJhbnNpdGlvbik7XG5cblx0XHQvLyBSZW1vdmUgb3V0bGluZVxuXHRcdCY6Zm9jdXMge1xuXHRcdFx0b3V0bGluZTogMDtcblx0XHR9XG5cblx0XHQvLyBIb3ZlciBhbmQgYWN0aXZlIHN0YXRlc1xuXHRcdCY6bm90KFtjbGFzcyo9YmctXSkge1xuXHRcdFx0Jjpob3Zlcixcblx0XHRcdCY6Zm9jdXMsXG5cdFx0XHQmOmFjdGl2ZSB7XG5cdFx0XHRcdGNvbG9yOiAkYnRuLWxpZ2h0LWhvdmVyLWNvbG9yO1xuXHRcdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkYnRuLWxpZ2h0LWhvdmVyLWJnO1xuXHRcdFx0XHRib3JkZXItY29sb3I6ICRidG4tbGlnaHQtaG92ZXItYm9yZGVyLWNvbG9yO1xuXHRcdFx0fVxuXHRcdH1cblxuXHRcdC8vIERpc2FibGVkXG5cdFx0Ji51aS1zdGF0ZS1kaXNhYmxlZCB7XG5cdFx0XHRjdXJzb3I6ICRjdXJzb3ItZGlzYWJsZWQ7XG5cdFx0XHRvcGFjaXR5OiAkYnRuLWRpc2FibGVkLW9wYWNpdHk7XG5cdFx0XHRib3gtc2hhZG93OiBub25lO1xuXHRcdH1cblxuXHRcdC8vIENvbG9yZWQgYnV0dG9uXG5cdFx0JltjbGFzcyo9YmctXTpub3QoLmJnLXRyYW5zcGFyZW50KTpub3QoLmJnLXdoaXRlKTpub3QoLmJnLWxpZ2h0KSB7XG5cdFx0XHQmOmhvdmVyLFxuXHRcdFx0Jjpmb2N1cyB7XG5cdFx0XHRcdGNvbG9yOiAkd2hpdGU7XG5cdFx0XHRcdGJveC1zaGFkb3c6ICRidG4tZGFyay1ob3Zlci1ib3gtc2hhZG93O1xuXHRcdFx0fVxuXHRcdFx0JjphY3RpdmUge1xuXHRcdFx0XHRib3gtc2hhZG93OiAkYnRuLWRhcmstaG92ZXItYm94LXNoYWRvdztcblx0XHRcdH1cblx0XHR9XG5cblx0XHQvLyBUcmFuc3BhcmVudCBidXR0b25cblx0XHQmLnVpLWJ1dHRvbi1saW5rIHtcblx0XHRcdGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuXHRcdFx0Ym9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcblxuXHRcdFx0Ly8gQ2hhbmdlIGxpbmsgY29sb3Igb24gaG92ZXIgYW5kIGZvY3VzXG5cdFx0XHRAaW5jbHVkZSBob3Zlci1mb2N1cyB7XG5cdFx0XHRcdGNvbG9yOiAkbGluay1ob3Zlci1jb2xvcjtcblx0XHRcdH1cblxuXHRcdFx0Ly8gUmVtb3ZlIGJveCBzaGFkb3dcblx0XHRcdCY6aG92ZXIsXG5cdFx0XHQmOmZvY3VzLFxuXHRcdFx0JjphY3RpdmUge1xuXHRcdFx0XHRib3gtc2hhZG93OiBub25lO1xuXHRcdFx0fVxuXHRcdH1cblxuXHRcdC8vIFJlc2V0IGV4dHJhIHBhZGRpbmcgaW4gRmlyZWZveFxuXHRcdCY6Oi1tb3otZm9jdXMtaW5uZXIge1xuXHRcdFx0Ym9yZGVyOiAwO1xuXHRcdFx0cGFkZGluZzogMDtcblx0XHR9XG5cblx0XHQvLyBTcGFjaW5nIGJldHdlZW4gaWNvbiBhbmQgdGV4dFxuXHRcdC51aS1idXR0b24taWNvbi1zcGFjZSB7XG5cdFx0XHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cdFx0XHR3aWR0aDogJGVsZW1lbnQtc3BhY2VyLXg7XG5cdFx0fVxuXHR9XG5cblxuXHQvL1xuXHQvLyBCdXR0b25zIHdpdGggaWNvbnNcblx0Ly9cblxuXHQvLyBJY29uIG9ubHlcblx0LnVpLWJ1dHRvbi1pY29uLW9ubHkge1xuXHQgICAgdGV4dC1pbmRlbnQ6IC05OTk5cHg7XG5cdCAgICBwYWRkaW5nLWxlZnQ6ICRidG4tcGFkZGluZy15ICsgKCgkbGluZS1oZWlnaHQtY29tcHV0ZWQgLSAkaWNvbi1mb250LXNpemUpIC8gMikgKyAoJGljb24tZm9udC1zaXplIC8gMik7XG5cdCAgICBwYWRkaW5nLXJpZ2h0OiAkYnRuLXBhZGRpbmcteSArICgoJGxpbmUtaGVpZ2h0LWNvbXB1dGVkIC0gJGljb24tZm9udC1zaXplKSAvIDIpICsgKCRpY29uLWZvbnQtc2l6ZSAvIDIpO1xuXHQgICAgb3ZlcmZsb3c6IGhpZGRlbjtcblxuXHQgICAgLy8gSWNvblxuXHQgICAgLnVpLWljb24ge1xuXHRcdCAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0ICAgIGxlZnQ6IDUwJTtcblx0XHQgICAgdG9wOiA1MCU7XG5cdFx0ICAgIHRleHQtaW5kZW50OiAwO1xuXHRcdCAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcblx0ICAgIH1cblxuXHQgICAgLy8gUmVtb3ZlIHNwYWNpbmcgYmV0d2VlbiB0ZXh0IGFuZCBpY29uXG5cdCAgICAvLyBhbmQgdGV4dFxuXHQgICAgLnVpLWJ1dHRvbi1pY29uLXNwYWNlLFxuXHQgICAgLnVpLWJ1dHRvbi10ZXh0IHtcblx0ICAgIFx0ZGlzcGxheTogbm9uZTtcblx0ICAgIH1cblx0fVxuXG5cblx0Ly9cblx0Ly8gQnV0dG9uIHNldHNcblx0Ly9cblxuXHQvLyBCYXNlXG5cdC51aS1jb250cm9sZ3JvdXAge1xuXHRcdGRpc3BsYXk6IGlubGluZS1ibG9jaztcblx0XHR2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuXHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuXHRcdC8vIENoaWxkIGJ1dHRvbnNcblx0XHQudWktYnV0dG9uIHtcblx0XHRcdGJvcmRlci1yYWRpdXM6IDA7XG5cdFx0XHRtYXJnaW4tbGVmdDogLSgkYnRuLWJvcmRlci13aWR0aCk7XG5cdFx0XHRmbG9hdDogbGVmdDtcblx0XHR9XG5cblx0XHQvLyBSZW1vdmUgbGVmdCBtYXJnaW4gZm9yIGZpcnN0IGNoaWxkc1xuXHRcdC51aS1idXR0b246Zmlyc3QtY2hpbGQsXG5cdFx0LnVpLWhlbHBlci1oaWRkZW4tYWNjZXNzaWJsZTpmaXJzdC1jaGlsZCArIC51aS1idXR0b24ge1xuXHRcdFx0bWFyZ2luLWxlZnQ6IDA7XG5cdFx0fVxuXG5cdFx0Ly8gQWRkIGJvcmRlciByYWRpdXMgZm9yIHRoZSBmaXJzdCBidXR0b25cblx0XHQudWktYnV0dG9uOmZpcnN0LWNoaWxkLFxuXHRcdC51aS1oZWxwZXItaGlkZGVuLWFjY2Vzc2libGU6Zmlyc3QtY2hpbGQgKyAudWktYnV0dG9uOm5vdCg6bGFzdC1jaGlsZCkge1xuXHRcdFx0QGluY2x1ZGUgYm9yZGVyLWxlZnQtcmFkaXVzKCRidG4tYm9yZGVyLXJhZGl1cyk7XG5cdFx0fVxuXG5cdFx0Ly8gQWRkIGJvcmRlciByYWRpdXMgZm9yIHRoZSBsYXN0IGJ1dHRvblxuXHRcdC51aS1idXR0b246bGFzdC1vZi10eXBlIHtcblx0XHRcdEBpbmNsdWRlIGJvcmRlci1yaWdodC1yYWRpdXMoJGJ0bi1ib3JkZXItcmFkaXVzKTtcblx0XHR9XG5cdH1cblxuXHQvLyBDaGVja2JveCBhbmQgcmFkaW9cblx0LnVpLWNoZWNrYm94cmFkaW8tbGFiZWwge1xuXG5cdFx0Ly8gU3RhdGVzXG5cdFx0Ji51aS1jaGVja2JveHJhZGlvLWNoZWNrZWQge1xuXHRcdFx0YmFja2dyb3VuZC1jb2xvcjogJGJ0bi1saWdodC1hY3RpdmUtYmc7XG5cdFx0XHRjb2xvcjogJGJ0bi1saWdodC1hY3RpdmUtY29sb3I7XG5cdFx0XHRib3JkZXItY29sb3I6ICRidG4tbGlnaHQtYWN0aXZlLWJvcmRlci1jb2xvcjtcblxuXHRcdFx0Ly8gQ3VzdG9tIGNvbG9yXG5cdFx0XHQmW2NsYXNzKj1iZy1dOm5vdCguYmctd2hpdGUpOm5vdCguYmctbGlnaHQpOm5vdCguYmctdHJhbnNwYXJlbnQpIHtcblx0XHRcdFx0Ym94LXNoYWRvdzogJGJ0bi1kYXJrLWFjdGl2ZS1ib3gtc2hhZG93O1xuXHRcdFx0fVxuXHRcdH1cblxuXHRcdC8vIERpc2FibGVkIHN0YXRlXG5cdFx0Ji51aS1jaGVja2JveHJhZGlvLWRpc2FibGVkIHtcblx0XHRcdHBvaW50ZXItZXZlbnRzOiBub25lO1xuXHRcdH1cblx0fVxuXG5cblxuXHQvLyBEYXRlcGlja2VyXG5cdC8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG5cdC8vIEJhc2Vcblx0LnVpLWRhdGVwaWNrZXIge1xuXHRcdG1pbi13aWR0aDogJHVpLWRhdGVwaWNrZXItd2lkdGg7XG5cdFx0cGFkZGluZzogJGRhdGVwaWNrZXItcGFkZGluZztcblxuXHRcdC8vIElnbm9yZSBpbmxpbmUgcGlja2VyXG5cdFx0Jjpub3QoLnVpLWRhdGVwaWNrZXItaW5saW5lKSB7XG5cdFx0XHRkaXNwbGF5OiBub25lO1xuXHRcdFx0YmFja2dyb3VuZC1jb2xvcjogJGRyb3Bkb3duLWJnO1xuXHRcdFx0Ym9yZGVyOiAkZHJvcGRvd24tYm9yZGVyLXdpZHRoIHNvbGlkICRkcm9wZG93bi1ib3JkZXItY29sb3I7XG5cdFx0XHR6LWluZGV4OiAkemluZGV4LXRvb2x0aXAhaW1wb3J0YW50O1xuXHRcdFx0QGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkZHJvcGRvd24tYm9yZGVyLXJhZGl1cyk7XG5cdFx0XHRAaW5jbHVkZSBib3gtc2hhZG93KCRkcm9wZG93bi1ib3gtc2hhZG93KTtcblx0XHR9XG5cblx0XHQvLyBNYWtlIGl0IGZsZXhpYmxlIGluIHNpZGViYXJcblx0XHQuc2lkZWJhciAmIHtcblx0XHRcdG1pbi13aWR0aDogMDtcblx0XHR9XG5cblx0XHQvLyBBTmltYXRlIGFsbCBsaW5rc1xuXHRcdGEge1xuXHRcdFx0QGluY2x1ZGUgdHJhbnNpdGlvbihhbGwgZWFzZS1pbi1vdXQgJGNvbXBvbmVudC10cmFuc2l0aW9uLXRpbWVyKTtcblx0XHR9XG5cblxuXHRcdC8vIEhlYWRlclxuXHRcdC8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG5cdFx0Ly8gQmFzZVxuXHRcdC51aS1kYXRlcGlja2VyLWhlYWRlciB7XG5cdFx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdFx0fVxuXG5cdFx0Ly8gVGl0bGVcblx0XHQudWktZGF0ZXBpY2tlci10aXRsZSB7XG5cdFx0XHRkaXNwbGF5OiBmbGV4O1xuXHRcdFx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG5cdFx0XHRhbGlnbi1pdGVtczogY2VudGVyO1xuXHQgICAgICAgIHBhZGRpbmctdG9wOiAoJGRhdGVwaWNrZXItcGFkZGluZyAvIDIpO1xuXHQgICAgICAgIHBhZGRpbmctYm90dG9tOiAoJGRhdGVwaWNrZXItcGFkZGluZyAvIDIpO1xuXHRcdFx0Zm9udC1zaXplOiAkZGF0ZXBpY2tlci10aXRsZS1mb250LXNpemU7XG5cdFx0XHRtYXJnaW4tbGVmdDogKCgkaWNvbi1mb250LXNpemUgKyAoJGRhdGVwaWNrZXItaXRlbS1wYWRkaW5nICogMikpICsgJGRhdGVwaWNrZXItcGFkZGluZyk7XG5cdFx0XHRtYXJnaW4tcmlnaHQ6ICgoJGljb24tZm9udC1zaXplICsgKCRkYXRlcGlja2VyLWl0ZW0tcGFkZGluZyAqIDIpKSArICRkYXRlcGlja2VyLXBhZGRpbmcpO1xuXG5cdFx0XHQvLyBTaG93IG1vbnRoXG5cdFx0XHQudWktZGF0ZXBpY2tlci1tb250aCB7XG5cdFx0XHRcdGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtc2VtaWJvbGQ7XG5cdFx0XHR9XG5cblx0XHRcdC8vIFNob3cgeWVhclxuXHRcdFx0LnVpLWRhdGVwaWNrZXIteWVhciB7XG5cdFx0XHRcdGZvbnQtc2l6ZTogODUlO1xuXHRcdFx0XHRjb2xvcjogJHRleHQtbXV0ZWQ7XG5cdFx0XHRcdG1hcmdpbi1sZWZ0OiAoJGRhdGVwaWNrZXItcGFkZGluZyAvIDIpO1xuXHRcdFx0fVxuXG5cdFx0XHQvLyBEYXRlIHNlbGVjdFxuXHRcdFx0c2VsZWN0IHtcblx0XHRcdFx0b3V0bGluZTogMDtcblx0XHRcdFx0aGVpZ2h0OiAkaW5wdXQtaGVpZ2h0LXNtO1xuXHRcdFx0XHRib3JkZXItY29sb3I6ICRpbnB1dC1ib3JkZXItY29sb3I7XG5cdFx0XHRcdGZsZXg6IDE7XG5cblx0XHRcdFx0Ji51aS1kYXRlcGlja2VyLW1vbnRoLFxuXHRcdFx0XHQmLnVpLWRhdGVwaWNrZXIteWVhciB7XG5cdFx0XHRcdFx0Zm9udC1zaXplOiAkZm9udC1zaXplLWJhc2U7XG5cdFx0XHRcdFx0Zm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1ub3JtYWw7XG5cdFx0XHRcdFx0Y29sb3I6ICRib2R5LWNvbG9yO1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0fVxuXG5cblx0XHQvLyBOYXYgYnV0dG9uc1xuXHRcdC8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG5cdFx0Ly8gQmFzZVxuXHRcdC51aS1kYXRlcGlja2VyLXByZXYsXG5cdFx0LnVpLWRhdGVwaWNrZXItbmV4dCB7XG5cdFx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0XHR0b3A6IDUwJTtcblx0XHRcdG1hcmdpbi10b3A6IC0oKCRpY29uLWZvbnQtc2l6ZSAvIDIpICsgJGRhdGVwaWNrZXItaXRlbS1wYWRkaW5nKTtcblx0XHRcdGxpbmUtaGVpZ2h0OiAxO1xuXHRcdFx0Y29sb3I6ICRib2R5LWNvbG9yO1xuXHRcdFx0cGFkZGluZzogJGRhdGVwaWNrZXItaXRlbS1wYWRkaW5nO1xuXHRcdFx0Y3Vyc29yOiBwb2ludGVyO1xuXHRcdFx0QGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkYm9yZGVyLXJhZGl1cyk7XG5cblx0XHRcdC8vIEljb24gYmFzZVxuXHRcdFx0JjphZnRlciB7XG5cdFx0XHRcdGZvbnQtZmFtaWx5OiAkaWNvbi1mb250LWZhbWlseTtcblx0XHRcdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0XHRcdGZvbnQtc2l6ZTogJGljb24tZm9udC1zaXplO1xuXHRcdFx0XHR3aWR0aDogJGljb24tZm9udC1zaXplO1xuXHRcdFx0XHR0ZXh0LWFsaWduOiBjZW50ZXI7XG5cdFx0XHRcdEBpbmNsdWRlIGxsLWZvbnQtc21vb3RoaW5nKCk7XG5cdFx0XHR9XG5cblx0XHRcdC8vIEhpZGUgdGV4dFxuXHRcdFx0c3BhbiB7XG5cdFx0XHRcdGRpc3BsYXk6IG5vbmU7XG5cdFx0XHR9XG5cdFx0fVxuXG5cdFx0Ly8gUHJldiBidXR0b24gaWNvblxuXHRcdC51aS1kYXRlcGlja2VyLXByZXYge1xuXHRcdFx0bGVmdDogMDtcblxuXHRcdFx0Ly8gSWNvblxuXHRcdFx0JjphZnRlciB7XG5cdFx0ICAgICAgICBAaWYgJGRpcmVjdGlvbiA9PSAnTFRSJyB7XG5cdFx0ICAgICAgICAgICAgY29udGVudDogJ1xcZTljOCc7XG5cdFx0ICAgICAgICB9XG5cdFx0ICAgICAgICBAZWxzZSB7XG5cdFx0ICAgICAgICAgICAgY29udGVudDogJ1xcZTljYic7XG5cdFx0ICAgICAgICB9XG5cdFx0XHR9XG5cdFx0fVxuXG5cdFx0Ly8gTmV4dCBidG4gaWNvblxuXHRcdC51aS1kYXRlcGlja2VyLW5leHQge1xuXHRcdFx0cmlnaHQ6IDA7XG5cblx0XHRcdC8vIEljb25cblx0XHRcdCY6YWZ0ZXIge1xuXHRcdCAgICAgICAgQGlmICRkaXJlY3Rpb24gPT0gJ0xUUicge1xuXHRcdCAgICAgICAgICAgIGNvbnRlbnQ6ICdcXGU5Y2InO1xuXHRcdCAgICAgICAgfVxuXHRcdCAgICAgICAgQGVsc2Uge1xuXHRcdCAgICAgICAgICAgIGNvbnRlbnQ6ICdcXGU5YzgnO1xuXHRcdCAgICAgICAgfVxuXHRcdFx0fVxuXHRcdH1cblxuXHRcdC8vIEhvdmVyIHN0YXRlXG5cdFx0LnVpLWRhdGVwaWNrZXItcHJldi1ob3Zlcixcblx0XHQudWktZGF0ZXBpY2tlci1uZXh0LWhvdmVyIHtcblx0XHRcdGNvbG9yOiAkZGF0ZXBpY2tlci1pdGVtLWhvdmVyLWNvbG9yO1xuXHRcdFx0YmFja2dyb3VuZC1jb2xvcjogJGRhdGVwaWNrZXItaXRlbS1ob3Zlci1iZztcblx0XHR9XG5cblxuXHRcdC8vIENvbXBvbmVudHNcblx0XHQvLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuXHRcdC8vIFRhYmxlXG5cdFx0LnVpLWRhdGVwaWNrZXItY2FsZW5kYXIge1xuXHRcdFx0d2lkdGg6IDEwMCU7XG5cdFx0XHRib3JkZXItY29sbGFwc2U6IGNvbGxhcHNlO1xuXHRcdFx0bWFyZ2luOiAwO1xuXG5cdFx0XHQvLyBIZWFkZXIgY2VsbHNcblx0XHRcdHRoIHtcblx0XHRcdFx0dGV4dC1hbGlnbjogY2VudGVyO1xuXHRcdFx0XHRmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LW5vcm1hbDtcblx0XHRcdFx0cGFkZGluZy10b3A6ICRkYXRlcGlja2VyLXBhZGRpbmc7XG5cdFx0XHRcdHBhZGRpbmctYm90dG9tOiAkZGF0ZXBpY2tlci1pdGVtLXBhZGRpbmc7XG5cdFx0XHRcdGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1zbTtcblx0XHRcdFx0Y29sb3I6ICRkYXRlcGlja2VyLWl0ZW0td2Vla2RheS1jb2xvcjtcblx0XHRcdH1cblxuXHRcdFx0Ly8gQm9keSBjZWxsc1xuXHRcdFx0dGQge1xuXHRcdFx0XHR0ZXh0LWFsaWduOiBjZW50ZXI7XG5cblx0XHRcdFx0Ly8gRGF5IGVsZW1lbnRcblx0XHRcdFx0c3Bhbixcblx0XHRcdFx0YSB7XG5cdFx0XHRcdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0XHRcdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRcdFx0XHRcdHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblx0XHRcdFx0XHRtaW4td2lkdGg6ICgoJGRhdGVwaWNrZXItaXRlbS1wYWRkaW5nICogMikgKyAkbGluZS1oZWlnaHQtY29tcHV0ZWQpO1xuXHRcdFx0XHRcdGNvbG9yOiAkYm9keS1jb2xvcjtcblx0XHRcdFx0XHRwYWRkaW5nOiAkZGF0ZXBpY2tlci1pdGVtLXBhZGRpbmc7XG5cdFx0XHRcdFx0QGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkYm9yZGVyLXJhZGl1cyk7XG5cdFx0XHRcdH1cblxuXHRcdFx0XHQvLyBIb3ZlciBzdGF0ZVxuXHRcdFx0XHQudWktc3RhdGUtaG92ZXIge1xuXHRcdFx0XHRcdGNvbG9yOiAkZGF0ZXBpY2tlci1pdGVtLWhvdmVyLWNvbG9yO1xuXHRcdFx0XHRcdGJhY2tncm91bmQtY29sb3I6ICRkYXRlcGlja2VyLWl0ZW0taG92ZXItYmc7XG5cdFx0XHRcdH1cblxuXHRcdFx0XHQvLyBEaXNhYmxlZCBzdGF0ZVxuXHRcdFx0XHQmLnVpLXN0YXRlLWRpc2FibGVkIHtcblx0XHRcdFx0XHRhLFxuXHRcdFx0XHRcdHNwYW4ge1xuXHRcdFx0XHRcdFx0Y29sb3I6ICRkYXRlcGlja2VyLWl0ZW0tZGlzYWJsZWQtY29sb3I7XG5cdFx0XHRcdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkZGF0ZXBpY2tlci1pdGVtLWRpc2FibGVkLWJnO1xuXHRcdFx0XHRcdH1cblx0XHRcdFx0fVxuXG5cdFx0XHRcdC8vIFdlZWsgY29sdW1uXG5cdFx0XHRcdCYudWktZGF0ZXBpY2tlci13ZWVrLWNvbCB7XG5cdFx0XHRcdFx0bWluLXdpZHRoOiAoKCRkYXRlcGlja2VyLWl0ZW0tcGFkZGluZyAqIDIpICsgJGxpbmUtaGVpZ2h0LWNvbXB1dGVkKTtcblx0XHRcdFx0XHRwYWRkaW5nOiAkZGF0ZXBpY2tlci1pdGVtLXBhZGRpbmc7XG5cdFx0XHRcdFx0Y29sb3I6ICRkYXRlcGlja2VyLWl0ZW0td2Vla2RheS1jb2xvcjtcblx0XHRcdFx0fVxuXG5cdFx0XHRcdC8vIEFjdGl2ZSBkYXlcblx0XHRcdFx0Ji51aS1kYXRlcGlja2VyLWN1cnJlbnQtZGF5IC51aS1zdGF0ZS1hY3RpdmUge1xuXHRcdFx0XHRcdGNvbG9yOiAkZGF0ZXBpY2tlci1pdGVtLWFjdGl2ZS1jb2xvcjtcblx0XHRcdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkZGF0ZXBpY2tlci1pdGVtLWFjdGl2ZS1iZztcblx0XHRcdFx0fVxuXG5cdFx0XHRcdC8vIFRvZGF5XG5cdFx0XHRcdCYudWktZGF0ZXBpY2tlci10b2RheSAudWktc3RhdGUtaGlnaGxpZ2h0IHtcblx0XHRcdFx0XHRjb2xvcjogJGRhdGVwaWNrZXItaXRlbS10b2RheS1jb2xvcjtcblx0XHRcdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkZGF0ZXBpY2tlci1pdGVtLXRvZGF5LWJnO1xuXG5cdFx0XHRcdFx0Ly8gQ29ybmVyIGluZGljYXRvclxuXHRcdFx0XHRcdCY6YWZ0ZXIge1xuXHRcdFx0XHRcdFx0Y29udGVudDogXCJcIjtcblx0XHRcdFx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRcdFx0XHRcdHRvcDogKCRkYXRlcGlja2VyLWl0ZW0tcGFkZGluZyAvIDMpO1xuXHRcdFx0XHRcdFx0cmlnaHQ6ICgkZGF0ZXBpY2tlci1pdGVtLXBhZGRpbmcgLyAzKTtcblx0XHRcdFx0XHRcdGJvcmRlci10b3A6ICRkYXRlcGlja2VyLWl0ZW0tcGFkZGluZyBzb2xpZCBkYXJrZW4oJGRhdGVwaWNrZXItaXRlbS10b2RheS1iZywgNTAlKTtcblx0XHRcdFx0XHRcdGJvcmRlci1sZWZ0OiAkZGF0ZXBpY2tlci1pdGVtLXBhZGRpbmcgc29saWQgdHJhbnNwYXJlbnQ7XG5cdFx0XHRcdFx0XHRAaW5jbHVkZSBzaXplKDApO1xuXHRcdFx0XHRcdH1cblx0XHRcdFx0fVxuXHRcdFx0fVxuXG5cdFx0XHQvLyBEYXRlcyBpbiBvdGhlciBtb250aHNcblx0XHRcdC51aS1kYXRlcGlja2VyLW90aGVyLW1vbnRoIHtcblx0XHRcdFx0LnVpLXByaW9yaXR5LXNlY29uZGFyeSB7XG5cdFx0XHRcdFx0Y29sb3I6ICRkYXRlcGlja2VyLWl0ZW0tZGlzYWJsZWQtY29sb3I7XG5cdFx0XHRcdH1cblx0XHRcdH1cblxuXHRcdFx0Ly8gV2Vla3Ncblx0XHRcdC51aS1kYXRlcGlja2VyLXdlZWstY29sIHtcblx0XHRcdFx0dGV4dC1hbGlnbjogbGVmdDtcblx0XHRcdH1cblx0XHR9XG5cblx0XHQvLyBNdWx0aXBsZSBjYWxlbmRhcnNcblx0XHQmLnVpLWRhdGVwaWNrZXItbXVsdGkge1xuXHRcdFx0d2lkdGg6IGF1dG8haW1wb3J0YW50O1xuXHRcdH1cblx0fVxuXG5cdC8vIEJ1dHRvbiBwYW5lbFxuXHQudWktZGF0ZXBpY2tlci1idXR0b25wYW5lIHtcblx0XHRkaXNwbGF5OiBmbGV4O1xuXHRcdGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2Vlbjtcblx0XHRwYWRkaW5nLXRvcDogJGRhdGVwaWNrZXItcGFkZGluZztcblxuXHRcdC8vIEJ1dHRvbnNcblx0XHRidXR0b24ge1xuXHRcdFx0QGV4dGVuZCAudWktYnV0dG9uO1xuXHRcdH1cblx0fVxuXG5cdC8vIElubGluZSBkYXRlcGlja2VyXG5cdC51aS1kYXRlcGlja2VyLWlubGluZSB7XG5cdFx0bWF4LXdpZHRoOiAxMDAlO1xuXHRcdG92ZXJmbG93LXg6IGF1dG87XG5cdH1cblxuXHQvLyBUcmlnZ2VyXG5cdC51aS1kYXRlcGlja2VyLXRyaWdnZXIge1xuXHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHR0b3A6IDRweDtcblx0XHRyaWdodDogNXB4O1xuXHRcdHotaW5kZXg6IDQ7XG5cdFx0cGFkZGluZzogNnB4O1xuXHRcdGN1cnNvcjogcG9pbnRlcjtcblx0fVxuXG5cdC8vIENsZWFyZml4XG5cdC51aS1kYXRlcGlja2VyLXJvdy1icmVhayB7XG5cdFx0Y2xlYXI6IGJvdGg7XG5cdFx0d2lkdGg6IDEwMCU7XG5cdH1cblxuXHQvLyBNdWx0aXBsZSBkYXRlcGlja2Vyc1xuXHQudWktZGF0ZXBpY2tlci1tdWx0aSB7XG5cdFx0LnVpLWRhdGVwaWNrZXItZ3JvdXAge1xuXHRcdFx0ZmxvYXQ6IGxlZnQ7XG5cblx0XHRcdC8vIFNwYWNpbmcgYmV0d2VlbiBjYWxlbmRhcnNcblx0XHRcdCsgLnVpLWRhdGVwaWNrZXItZ3JvdXAge1xuXHRcdFx0XHRwYWRkaW5nLWxlZnQ6ICRkYXRlcGlja2VyLXBhZGRpbmc7XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG5cdC51aS1kYXRlcGlja2VyLW11bHRpLTIgLnVpLWRhdGVwaWNrZXItZ3JvdXAge1xuXHRcdHdpZHRoOiA0NiU7XG5cdH1cblx0LnVpLWRhdGVwaWNrZXItbXVsdGktMyAudWktZGF0ZXBpY2tlci1ncm91cCB7XG5cdFx0d2lkdGg6IDMzLjMlO1xuXHR9XG5cdC51aS1kYXRlcGlja2VyLW11bHRpLTQgLnVpLWRhdGVwaWNrZXItZ3JvdXAge1xuXHRcdHdpZHRoOiAyNSU7XG5cdH1cblxuXG5cblx0Ly8gRGlhbG9nXG5cdC8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG5cdC8vIEJhc2Vcblx0LnVpLWRpYWxvZyB7XG5cdFx0cG9zaXRpb246IGZpeGVkO1xuXHRcdHRvcDogMDtcblx0XHQvKnJ0bDppZ25vcmUqL1xuXHRcdGxlZnQ6IDA7XHRcblx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkbW9kYWwtY29udGVudC1iZztcblx0XHRiYWNrZ3JvdW5kLWNsaXA6IHBhZGRpbmctYm94O1xuXHRcdGJvcmRlcjogJG1vZGFsLWNvbnRlbnQtYm9yZGVyLXdpZHRoIHNvbGlkICRtb2RhbC1jb250ZW50LWJvcmRlci1jb2xvcjtcblx0XHR6LWluZGV4OiAkemluZGV4LW1vZGFsO1xuXHRcdGRpc3BsYXk6IG5vbmU7XG5cdFx0b3ZlcmZsb3c6IGhpZGRlbjtcblx0XHRvdXRsaW5lOiAwO1xuXHRcdEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGJvcmRlci1yYWRpdXMtbGcpO1xuXHRcdEBpbmNsdWRlIGJveC1zaGFkb3coJG1vZGFsLWNvbnRlbnQtYm94LXNoYWRvdy14cyk7XG5cblx0XHQvLyBDaGFuZ2UgdGhlIHdpZHRoIG9uIG1vYmlsZVxuXHRcdEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihzbSkge1xuXHRcdFx0d2lkdGg6IDkwJSFpbXBvcnRhbnQ7XG5cdFx0fVxuXHR9XG5cblxuXHQvL1xuXHQvLyBEaWFsb2cgaGVhZGVyXG5cdC8vXG5cblx0Ly8gSGVhZGVyXG5cdC51aS1kaWFsb2ctdGl0bGViYXIge1xuXHRcdGRpc3BsYXk6IGZsZXg7XG5cdFx0YWxpZ24taXRlbXM6IGNlbnRlcjtcblx0XHRqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG5cdFx0cGFkZGluZzogJG1vZGFsLWhlYWRlci1wYWRkaW5nO1xuXHRcdHBhZGRpbmctYm90dG9tOiAwO1xuXG5cdFx0Ly8gRHJhZ2dhYmxlIGN1cnNvclxuXHRcdC51aS1kcmFnZ2FibGUgJiB7XG5cdFx0XHRjdXJzb3I6IG1vdmU7XG5cdFx0fVxuXHR9XG5cblx0Ly8gVGl0bGVcblx0LnVpLWRpYWxvZy10aXRsZSB7XG5cdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0Zm9udC1zaXplOiAkaDYtZm9udC1zaXplO1xuXHRcdGxpbmUtaGVpZ2h0OiAkbW9kYWwtdGl0bGUtbGluZS1oZWlnaHQ7XG5cdH1cblxuXHQvLyBDbG9zZSBidXR0b25cblx0LnVpLWRpYWxvZy10aXRsZWJhci1jbG9zZSB7XG5cdFx0bWFyZ2luLWxlZnQ6IGF1dG87XG5cdFx0YmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG5cdFx0cGFkZGluZzogMDtcblx0XHRib3JkZXI6IDA7XG5cdFx0Zm9udC1zaXplOiAwO1xuXHRcdHRleHQtaW5kZW50OiAwO1xuXG5cdFx0Ly8gQ3Jvc3MgaWNvblxuXHRcdCY6YWZ0ZXIge1xuXHRcdFx0Y29udGVudDogJ1xcZWQ2YSc7XG5cdFx0XHRmb250LWZhbWlseTogJGljb24tZm9udC1mYW1pbHk7XG5cdFx0XHRkaXNwbGF5OiBibG9jaztcblx0XHRcdHdpZHRoOiAkZm9udC1zaXplLWJhc2U7XG5cdFx0XHRmb250LXNpemU6ICRmb250LXNpemUtYmFzZTtcblx0XHRcdGxpbmUtaGVpZ2h0OiAxO1xuXHRcdFx0QGluY2x1ZGUgbGwtZm9udC1zbW9vdGhpbmcoKTtcblx0XHR9XG5cblx0XHQvLyBSZW1vdmUgZGVmYXVsdCBidXR0b24gc2hhZG93c1xuXHRcdCY6aG92ZXIsXG5cdFx0Jjpmb2N1cyB7XG5cdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xuXHRcdFx0Ym94LXNoYWRvdzogbm9uZTtcblx0XHR9XG5cdH1cblxuXG5cdC8vXG5cdC8vIERpYWxvZyBjb250ZW50XG5cdC8vXG5cblx0Ly8gQ29udGVudCBpdHNlbGZcblx0LnVpLWRpYWxvZy1jb250ZW50IHtcblx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdFx0b3ZlcmZsb3c6IGF1dG87XG5cdFx0cGFkZGluZzogJG1vZGFsLWlubmVyLXBhZGRpbmc7XG5cblx0XHQvLyBSZW1vdmUgYm90dG9tIG1hcmdpbiBmcm9tIGxhc3QgY2hpbGRzXG5cdFx0LmZvcm0tZ3JvdXA6bGFzdC1jaGlsZCxcblx0XHRwOmxhc3QtY2hpbGQge1xuXHRcdFx0bWFyZ2luLWJvdHRvbTogMDtcblx0XHR9XG5cdH1cblxuXHQvLyBCdXR0b25zXG5cdC51aS1kaWFsb2ctYnV0dG9ucGFuZSB7XG5cdFx0ZGlzcGxheTogZmxleDtcblx0XHRhbGlnbi1pdGVtczogY2VudGVyO1xuXHRcdGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG5cdFx0cGFkZGluZzogJG1vZGFsLWlubmVyLXBhZGRpbmc7XG5cdFx0cGFkZGluZy10b3A6IDA7XG5cblx0XHQvLyBTcGFjaW5nIGJldHdlZW4gYnV0dG9uc1xuXHRcdGJ1dHRvbiArIGJ1dHRvbiB7XG5cdFx0XHRtYXJnaW4tbGVmdDogJGVsZW1lbnQtc3BhY2VyLXg7XG5cdFx0fVxuXHR9XG5cblxuXG5cdC8vIE1lbnVcblx0Ly8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cblx0Ly8gQmFzZVxuXHQudWktbWVudSB7XG5cdFx0bGlzdC1zdHlsZTogbm9uZTtcblx0XHRwYWRkaW5nOiAkZHJvcGRvd24tcGFkZGluZy15IDA7XG5cdFx0bWFyZ2luOiAwO1xuXHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdG91dGxpbmU6IG5vbmU7XG5cdFx0bWluLXdpZHRoOiAkZHJvcGRvd24tbWluLXdpZHRoO1xuXHRcdHdoaXRlLXNwYWNlOiBub3dyYXA7XG5cdFx0YmFja2dyb3VuZC1jb2xvcjogJGRyb3Bkb3duLWJnO1xuXHRcdGJvcmRlcjogJGRyb3Bkb3duLWJvcmRlci13aWR0aCBzb2xpZCAkZHJvcGRvd24tYm9yZGVyLWNvbG9yO1xuXHRcdHotaW5kZXg6ICR6aW5kZXgtZHJvcGRvd247XG5cdFx0QGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkZHJvcGRvd24tYm9yZGVyLXJhZGl1cyk7XG5cdFx0QGluY2x1ZGUgYm94LXNoYWRvdygkZHJvcGRvd24tYm94LXNoYWRvdyk7XG5cblx0XHQvLyBOZXN0ZWQgbWVudVxuXHRcdC51aS1tZW51IHtcblx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRcdHRvcDogLSgkZHJvcGRvd24tcGFkZGluZy15IC0gcmVtLWNhbGMoJGRyb3Bkb3duLWJvcmRlci13aWR0aCkpIWltcG9ydGFudDtcblx0XHR9XG5cblx0XHQvLyBNZW51IGl0ZW1cblx0XHQudWktbWVudS1pdGVtIHtcblx0XHRcdG1hcmdpbjogMDtcblx0XHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuXHRcdFx0Ly8gSWNvbnNcblx0XHRcdGkge1xuXHRcdFx0XHRtYXJnaW4tcmlnaHQ6ICRkcm9wZG93bi1pdGVtLXBhZGRpbmcteDtcblx0XHRcdH1cblx0XHR9XG5cblx0XHQvLyBMaW5rXG5cdFx0LnVpLW1lbnUtaXRlbS13cmFwcGVyIHtcblx0XHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0XHRcdGRpc3BsYXk6IGZsZXg7XG5cdFx0XHRhbGlnbi1pdGVtczogZmxleC1zdGFydDtcblx0XHRcdGN1cnNvcjogcG9pbnRlcjtcblx0XHRcdHBhZGRpbmc6ICRkcm9wZG93bi1pdGVtLXBhZGRpbmcteSAkZHJvcGRvd24taXRlbS1wYWRkaW5nLXg7XG5cdFx0XHRvdXRsaW5lOiAwO1xuXHRcdFx0Y29sb3I6ICRkcm9wZG93bi1saW5rLWNvbG9yO1xuXHRcdFx0b3ZlcmZsb3c6IGhpZGRlbjtcblx0XHRcdEBpbmNsdWRlIHRyYW5zaXRpb24oYWxsIGVhc2UtaW4tb3V0ICRjb21wb25lbnQtdHJhbnNpdGlvbi10aW1lcik7XG5cblx0ICAgICAgICAvLyBTdWJtZW51IGFycm93IGljb25cblx0XHRcdD4gLnVpLW1lbnUtaWNvbiB7XG5cdCAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0ICAgICAgICAgICAgdG9wOiA1MCU7XG5cdCAgICAgICAgICAgIG1hcmdpbi10b3A6IC0oJGljb24tZm9udC1zaXplIC8gMik7XG5cdCAgICAgICAgICAgIHJpZ2h0OiAkZHJvcGRvd24taXRlbS1wYWRkaW5nLXg7XG5cblx0XHRcdFx0JjphZnRlciB7XG5cdFx0ICAgICAgICAgICAgQGlmICRkaXJlY3Rpb24gPT0gJ0xUUicge1xuXHRcdCAgICAgICAgICAgICAgICBjb250ZW50OiAnXFxlOWM3Jztcblx0XHQgICAgICAgICAgICB9XG5cdFx0ICAgICAgICAgICAgQGVsc2Uge1xuXHRcdCAgICAgICAgICAgICAgICBjb250ZW50OiAnXFxlOWM0Jztcblx0XHQgICAgICAgICAgICB9XG5cdFx0ICAgICAgICAgICAgZm9udC1mYW1pbHk6ICRpY29uLWZvbnQtZmFtaWx5O1xuXHRcdCAgICAgICAgICAgIGZvbnQtc2l6ZTogJGljb24tZm9udC1zaXplO1xuXHRcdCAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxO1xuXHRcdCAgICAgICAgICAgIEBpbmNsdWRlIGxsLWZvbnQtc21vb3RoaW5nKCk7XG5cdFx0ICAgICAgICB9XG5cdFx0XHR9XG5cdFx0fVxuXG5cdFx0Ly8gSGVhZGVyXG5cdFx0LnVpLW1lbnUtaGVhZGVyIHtcblx0XHRcdGRpc3BsYXk6IGZsZXg7XG5cdFx0XHRhbGlnbi1pdGVtczogZmxleC1zdGFydDtcblx0XHRcdHBhZGRpbmc6ICRkcm9wZG93bi1wYWRkaW5nLXkgJGRyb3Bkb3duLWl0ZW0tcGFkZGluZy14O1xuXHRcdFx0Zm9udC1zaXplOiAkZm9udC1zaXplLXNtO1xuXHRcdFx0bGluZS1oZWlnaHQ6ICRsaW5lLWhlaWdodC1zbTtcblx0XHRcdHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG5cdFx0XHRjb2xvcjogJGRyb3Bkb3duLWhlYWRlci1jb2xvcjtcblx0XHQgICAgbWFyZ2luLXRvcDogKCRkcm9wZG93bi1wYWRkaW5nLXkgLyAyKTtcblx0XHQgICAgbWFyZ2luLWJvdHRvbTogKCRkcm9wZG93bi1wYWRkaW5nLXkgLyAyKTtcblxuXHRcdCAgICAvLyBIaWdobGlnaHRlZCBoZWFkZXJcblx0XHQgICAgJi5oaWdobGlnaHQge1xuXHRcdCAgICAgICAgbWFyZ2luLXRvcDogMDtcblx0XHQgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRkcm9wZG93bi1oZWFkZXItYmc7XG5cdFx0ICAgIH1cblx0XHR9XG5cdCAgICAudWktbWVudS1pdGVtICsgLmhpZ2hsaWdodCxcblx0ICAgIC5oaWdobGlnaHQgKyAudWktbWVudS1pdGVtIHtcblx0ICAgICAgICBtYXJnaW4tdG9wOiAkZHJvcGRvd24tcGFkZGluZy15O1xuXHQgICAgfVxuXG5cdCAgICAvLyBJY29uc1xuXHQgICAgLnVpLW1lbnUtaXRlbS13cmFwcGVyLFxuXHQgICAgLnVpLW1lbnUtaGVhZGVyIHtcblx0ICAgIFx0PiBpIHtcblx0XHQgICAgICAgIHRvcDogMDtcblx0XHQgICAgICAgIG1hcmdpbi10b3A6ICgoJGxpbmUtaGVpZ2h0LWNvbXB1dGVkIC0gJGljb24tZm9udC1zaXplKSAvIDIpO1xuXHRcdFx0XHRtYXJnaW4tcmlnaHQ6ICRkcm9wZG93bi1pY29uLXNwYWNlci14O1xuXHQgICAgXHR9XG5cdCAgICB9XG5cblx0XHQvLyBEaXZpZGVyXG5cdFx0LnVpLW1lbnUtZGl2aWRlciB7XG5cdFx0XHRtYXJnaW46ICRkcm9wZG93bi1pdGVtLXBhZGRpbmcteSAwO1xuXHRcdFx0aGVpZ2h0OiAwO1xuXHRcdFx0Zm9udC1zaXplOiAwO1xuXHRcdFx0b3ZlcmZsb3c6IGhpZGRlbjtcblx0XHRcdGJvcmRlci10b3A6ICRib3JkZXItd2lkdGggc29saWQgJGRyb3Bkb3duLWRpdmlkZXItYmc7XG5cdFx0fVxuXG5cdFx0Ly8gRGlzYWJsZWQgc3RhdGVcblx0XHQudWktc3RhdGUtZGlzYWJsZWQge1xuXHRcdFx0LnVpLW1lbnUtaXRlbS13cmFwcGVyIHtcblx0XHQgICAgICAgIGNvbG9yOiAkZHJvcGRvd24tbGluay1kaXNhYmxlZC1jb2xvcjtcblx0XHQgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuXHRcdCAgICAgICAgY3Vyc29yOiAkY3Vyc29yLWRpc2FibGVkO1xuXHRcdFx0fVxuXHRcdH1cblxuXHRcdC8vIEhvdmVyIHN0YXRlXG5cdFx0LnVpLXN0YXRlLWZvY3VzLFxuXHRcdC51aS1zdGF0ZS1hY3RpdmUge1xuXHRcdCAgICBjb2xvcjogJGRyb3Bkb3duLWxpbmstaG92ZXItY29sb3I7XG5cdFx0ICAgIGJhY2tncm91bmQtY29sb3I6ICRkcm9wZG93bi1saW5rLWhvdmVyLWJnO1xuXHRcdH1cblx0fVxuXG5cblxuXHQvLyBQcm9ncmVzcyBiYXJcblx0Ly8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cblx0Ly8gQmFzZVxuXHQudWktcHJvZ3Jlc3NiYXIge1xuXHRcdGRpc3BsYXk6IGZsZXg7XG5cdFx0aGVpZ2h0OiAkcHJvZ3Jlc3MtaGVpZ2h0O1xuXHRcdG92ZXJmbG93OiBoaWRkZW47IC8vIGZvcmNlIHJvdW5kZWQgY29ybmVycyBieSBjcm9wcGluZyBpdFxuXHRcdGZvbnQtc2l6ZTogJHByb2dyZXNzLWZvbnQtc2l6ZTtcblx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkcHJvZ3Jlc3MtYmc7XG5cdFx0QGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkcHJvZ3Jlc3MtYm9yZGVyLXJhZGl1cyk7XG5cdFx0QGluY2x1ZGUgYm94LXNoYWRvdygkcHJvZ3Jlc3MtYm94LXNoYWRvdyk7XG5cdH1cblxuXHQvLyBWYWx1ZVxuXHQudWktcHJvZ3Jlc3NiYXItdmFsdWUge1xuXHRcdGRpc3BsYXk6IGZsZXg7XG5cdFx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcblx0XHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcblx0XHRjb2xvcjogJHByb2dyZXNzLWJhci1jb2xvcjtcblx0XHR0ZXh0LWFsaWduOiBjZW50ZXI7XG5cdFx0YmFja2dyb3VuZC1jb2xvcjogJHByb2dyZXNzLWJhci1iZztcblx0XHRiYWNrZ3JvdW5kLXNpemU6ICRwcm9ncmVzcy1oZWlnaHQgJHByb2dyZXNzLWhlaWdodDtcblx0XHRAaW5jbHVkZSB0cmFuc2l0aW9uKCRwcm9ncmVzcy1iYXItdHJhbnNpdGlvbik7XG5cblx0XHQvLyBTdHJpcGVzXG5cdFx0LnVpLXByb2dyZXNzYmFyLXN0cmlwZWQgJiB7XG5cdFx0XHRAaW5jbHVkZSBncmFkaWVudC1zdHJpcGVkKCk7XG5cdFx0fVxuXG5cdFx0Ly8gQW5pbWF0ZWQgc3RyaXBlc1xuXHRcdC51aS1wcm9ncmVzc2Jhci1hY3RpdmUgJiB7XG5cdFx0XHRhbmltYXRpb246IHByb2dyZXNzLWJhci1zdHJpcGVzICRwcm9ncmVzcy1iYXItYW5pbWF0aW9uLXRpbWluZztcblx0XHR9XG5cblx0XHQvLyBSZW1vdmUgc3RyaXBlcyBpbiBpbmRldGVybWluYXRlIG1vZGVcblx0XHQudWktcHJvZ3Jlc3NiYXItaW5kZXRlcm1pbmF0ZSAmIHtcblx0XHRcdGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XG5cdFx0fVxuXHR9XG5cblxuXG5cdC8vIFNlbGVjdCBtZW51XG5cdC8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG5cdC8vIEJhc2Vcblx0LnVpLXNlbGVjdG1lbnUtbWVudSB7XG5cdFx0cGFkZGluZzogMDtcblx0XHRtYXJnaW46IDA7XG5cdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdHRvcDogMDtcblx0XHQvKnJ0bDppZ25vcmUqL1xuXHRcdGxlZnQ6IDA7XG5cdFx0ZGlzcGxheTogbm9uZTtcblxuXHRcdC8vIFNldCBtYXggd2lkdGggZm9yIG1lbnVcblx0XHQudWktbWVudSB7XG5cdFx0XHRtYXgtaGVpZ2h0OiAkZHJvcGRvd24tc2Nyb2xsYWJsZS1tYXgtaGVpZ2h0O1xuXHRcdFx0b3ZlcmZsb3cteTogYXV0bztcblx0XHRcdG92ZXJmbG93LXg6IGhpZGRlbjtcblxuXHRcdFx0Ly8gT3B0Z3JvdXBzXG5cdFx0XHQudWktc2VsZWN0bWVudS1vcHRncm91cCB7XG5cdFx0XHRcdGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1zbTtcblx0XHRcdFx0Zm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1zZW1pYm9sZDtcblx0XHRcdFx0bGluZS1oZWlnaHQ6ICRsaW5lLWhlaWdodC1zbTtcblx0XHRcdFx0cGFkZGluZzogJGRyb3Bkb3duLWl0ZW0tcGFkZGluZy15ICRkcm9wZG93bi1pdGVtLXBhZGRpbmcteDtcblx0XHRcdFx0dGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcblx0XHRcdFx0aGVpZ2h0OiBhdXRvO1xuXHRcdFx0XHRib3JkZXI6IDA7XG5cblx0XHRcdFx0Ly8gQWRkIGRvdWJsZSBob3Jpem9udGFsIHBhZGRpbmcgZm9yIGl0ZW1zXG5cdFx0XHRcdH4gLnVpLW1lbnUtaXRlbSB7XG5cdFx0XHRcdFx0LnVpLW1lbnUtaXRlbS13cmFwcGVyIHtcblx0XHRcdFx0XHRcdHBhZGRpbmctbGVmdDogKCRkcm9wZG93bi1pdGVtLXBhZGRpbmcteCAqIDIpO1xuXHRcdFx0XHRcdH1cblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdH1cblx0fVxuXG5cdC8vIERpc3BsYXkgaWYgb3BlbmVkXG5cdC51aS1zZWxlY3RtZW51LW9wZW4ge1xuXHRcdGRpc3BsYXk6IGJsb2NrO1xuXHR9XG5cblx0Ly8gU2VsZWN0IGJ1dHRvblxuXHQudWktc2VsZWN0bWVudS1idXR0b24ge1xuXHRcdHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblx0XHR0ZXh0LWFsaWduOiBsZWZ0O1xuXHRcdG91dGxpbmU6IDA7XG5cblx0XHQvLyBCdXR0b25cblx0XHQmOm5vdCgudWktY29udHJvbGdyb3VwLWl0ZW0pIHtcblx0XHRcdGRpc3BsYXk6IGlubGluZS1ibG9jaztcblx0XHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0XHRcdGJhY2tncm91bmQtY29sb3I6ICRpbnB1dC1iZztcblx0XHRcdGJvcmRlcjogJGlucHV0LWJvcmRlci13aWR0aCBzb2xpZCAkaW5wdXQtYm9yZGVyLWNvbG9yO1xuXHRcdFx0Y3Vyc29yOiBwb2ludGVyO1xuXHRcdFx0QGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkaW5wdXQtYm9yZGVyLXJhZGl1cyk7XG5cdFx0fVxuXHRcdCY6bm90KC51aS1idXR0b24taWNvbi1vbmx5KSB7XG5cdFx0XHRwYWRkaW5nOiAkaW5wdXQtcGFkZGluZy15ICRpbnB1dC1wYWRkaW5nLXg7XG5cdFx0XHRwYWRkaW5nLXJpZ2h0OiAoKCRpbnB1dC1wYWRkaW5nLXggKiAyKSArICRpY29uLWZvbnQtc2l6ZSk7XG5cdFx0fVxuXG5cdFx0Ly8gRGFya2VuIG9uIGhvdmVyIGFuZCBmb2N1c1xuXHRcdEBpbmNsdWRlIGhvdmVyLWZvY3VzIHtcblx0XHRcdGJveC1zaGFkb3c6ICRob3Zlci1zaGFkb3ctbGlnaHRlcjtcblx0XHR9XG5cblx0XHQvLyBSZXNldCBidXR0b24gc3R5bGVzXG5cdFx0Jjpub3QoW2NsYXNzKj1iZy1dKSB7XG5cdFx0XHRAaW5jbHVkZSBob3Zlci1mb2N1cyB7XG5cdFx0XHRcdGJhY2tncm91bmQtY29sb3I6ICRpbnB1dC1iZztcblx0XHRcdH1cblx0XHR9XG5cblx0XHQvLyBEb3duIGFycm93XG5cdFx0JjphZnRlciB7XG5cdCAgICAgICAgY29udGVudDogJ1xcZTljNSc7XG5cdCAgICAgICAgZm9udC1mYW1pbHk6ICRpY29uLWZvbnQtZmFtaWx5O1xuXHQgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcblx0ICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG5cdCAgICAgICAgdG9wOiA1MCU7XG5cdCAgICAgICAgcmlnaHQ6ICRpbnB1dC1wYWRkaW5nLXg7XG5cdCAgICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XG5cdCAgICAgICAgbWFyZ2luLXRvcDogLSgkaWNvbi1mb250LXNpemUgLyAyKTtcblx0ICAgICAgICBmb250LXNpemU6ICRpY29uLWZvbnQtc2l6ZTtcblx0ICAgICAgICBsaW5lLWhlaWdodDogMTtcblx0ICAgICAgICBjb2xvcjogaW5oZXJpdDtcblx0ICAgICAgICBAaW5jbHVkZSBsbC1mb250LXNtb290aGluZygpO1xuXHRcdH1cblxuXHRcdC8vIEJ1dHRvbiB0ZXh0XG5cdFx0LnVpLXNlbGVjdG1lbnUtdGV4dCB7XG5cdFx0XHRkaXNwbGF5OiBibG9jaztcblx0XHRcdHRleHQtdHJhbnNmb3JtOiBub25lO1xuXHRcdFx0QGluY2x1ZGUgdGV4dC10cnVuY2F0ZSgpO1xuXHRcdH1cblxuXHRcdC8vIE9wZW5lZCBzdGF0ZVxuXHRcdCYudWktc2VsZWN0bWVudS1idXR0b24tb3BlbiB7XG5cdFx0XHRib3gtc2hhZG93OiAkaG92ZXItc2hhZG93LWxpZ2h0ZXI7XG5cdFx0fVxuXHR9XG5cblx0Ly8gRGlzYWJsZWQgbWVudVxuXHQudWktc2VsZWN0bWVudS1kaXNhYmxlZCB7XG5cdCAgICBjdXJzb3I6ICRjdXJzb3ItZGlzYWJsZWQ7XG5cdCAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaW5wdXQtZGlzYWJsZWQtYmc7XG5cblx0ICAgIC8vIFN0YXRlc1xuXHRcdEBpbmNsdWRlIGhvdmVyLWZvY3VzIHtcblx0XHRcdGJveC1zaGFkb3c6IG5vbmU7XG5cdFx0fVxuXHR9XG5cblxuXHQvL1xuXHQvLyBPcHRpb25hbCBzaXppbmcgdG8gbWF0Y2ggZm9ybSBjb250cm9sc1xuXHQvL1xuXG5cdC8vIExhcmdlXG5cdC51aS1zZWxlY3RtZW51LWxnIHtcblx0XHQudWktc2VsZWN0bWVudS1idXR0b24ge1xuXHRcdFx0LnVpLXNlbGVjdG1lbnUtdGV4dCB7XG5cdFx0XHRcdHBhZGRpbmc6ICRpbnB1dC1wYWRkaW5nLXktbGcgJGlucHV0LXBhZGRpbmcteC1sZztcblx0XHRcdFx0cGFkZGluZy1yaWdodDogKCgkaW5wdXQtcGFkZGluZy14LWxnICogMikgKyAkaWNvbi1mb250LXNpemUpO1xuXHRcdFx0XHRmb250LXNpemU6ICRmb250LXNpemUtbGc7XG5cdFx0XHRcdGxpbmUtaGVpZ2h0OiAkbGluZS1oZWlnaHQtbGc7XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG5cblx0Ly8gU21hbGxcblx0LnVpLXNlbGVjdG1lbnUtc20ge1xuXHRcdC51aS1zZWxlY3RtZW51LWJ1dHRvbiB7XG5cdFx0XHQudWktc2VsZWN0bWVudS10ZXh0IHtcblx0XHRcdFx0cGFkZGluZzogJGlucHV0LXBhZGRpbmcteS1zbSAkaW5wdXQtcGFkZGluZy14LXNtO1xuXHRcdFx0XHRwYWRkaW5nLXJpZ2h0OiAoKCRpbnB1dC1wYWRkaW5nLXgtc20gKiAyKSArICRpY29uLWZvbnQtc2l6ZSk7XG5cdFx0XHRcdGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1zbTtcblx0XHRcdFx0bGluZS1oZWlnaHQ6ICRsaW5lLWhlaWdodC1zbTtcblx0XHRcdH1cblx0XHR9XG5cdH1cblxuXG5cdC8vXG5cdC8vIEltYWdlc1xuXHQvL1xuXG5cdC51aS1zZWxlY3RtZW51LWltYWdlcyB7XG5cblx0XHQvLyBJbWFnZSBiYXNlXG5cdFx0LnVpLW1lbnUtaXRlbSBzcGFuIHtcblx0XHRcdGRpc3BsYXk6IGlubGluZS1ibG9jaztcblx0XHRcdG1hcmdpbi1yaWdodDogJGRyb3Bkb3duLWljb24tc3BhY2VyLXg7XG5cdFx0XHRiYWNrZ3JvdW5kLXNpemU6ICRsaW5lLWhlaWdodC1jb21wdXRlZCAkbGluZS1oZWlnaHQtY29tcHV0ZWQ7XG5cdFx0XHRmbG9hdDogbGVmdDtcblx0XHRcdEBpbmNsdWRlIHNpemUoJGxpbmUtaGVpZ2h0LWNvbXB1dGVkKTtcblx0XHRcdEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGJvcmRlci1yYWRpdXMpO1xuXHRcdH1cblxuXHRcdC8vIERlbW8gaW1hZ2VzLCByZXBsYWNlIHdpdGggeW91ciBvd25cblx0XHQuZGVtby1pbWctYW1hem9uIHtcblx0XHRcdGJhY2tncm91bmQ6IHVybCgnI3skaW1nLXBhdGh9L2JyYW5kcy9hbWF6b24ucG5nJykgbm8tcmVwZWF0O1xuXHRcdH1cblx0XHQuZGVtby1pbWcteW91dHViZSB7XG5cdFx0XHRiYWNrZ3JvdW5kOiB1cmwoJyN7JGltZy1wYXRofS9icmFuZHMveW91dHViZS5wbmcnKSBuby1yZXBlYXQ7XG5cdFx0fVxuXHRcdC5kZW1vLWltZy10d2l0dGVyIHtcblx0XHRcdGJhY2tncm91bmQ6IHVybCgnI3skaW1nLXBhdGh9L2JyYW5kcy90d2l0dGVyLnBuZycpIG5vLXJlcGVhdDtcblx0XHR9XG5cdFx0LmRlbW8taW1nLWJpbmcge1xuXHRcdFx0YmFja2dyb3VuZDogdXJsKCcjeyRpbWctcGF0aH0vYnJhbmRzL2JpbmcucG5nJykgbm8tcmVwZWF0O1xuXHRcdH1cblx0XHQuZGVtby1pbWctc3BvdGlmeSB7XG5cdFx0XHRiYWNrZ3JvdW5kOiB1cmwoJyN7JGltZy1wYXRofS9icmFuZHMvc3BvdGlmeS5wbmcnKSBuby1yZXBlYXQ7XG5cdFx0fVxuXHR9XG5cblxuXG5cdC8vIFNsaWRlcnNcblx0Ly8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cblx0LnVpLXNsaWRlciB7XG5cdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRcdHRleHQtYWxpZ246IGxlZnQ7XG5cdCAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkc2xpZGVyLWJnO1xuXHQgICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkYm9yZGVyLXJhZGl1cy1yb3VuZCk7XG5cdCAgICBAaW5jbHVkZSBib3gtc2hhZG93KCRzbGlkZXItYm94LXNoYWRvdyk7XG5cblx0XHQvLyBIYW5kbGVcblx0XHQudWktc2xpZGVyLWhhbmRsZSB7XG5cdFx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0XHR6LWluZGV4OiAyO1xuXHRcdFx0Y3Vyc29yOiBwb2ludGVyO1xuXHRcdFx0YmFja2dyb3VuZC1jb2xvcjogJHNsaWRlci1oYW5kbGUtYmc7XG5cdFx0ICAgIGJvcmRlcjogJHNsaWRlci1oYW5kbGUtYm9yZGVyLXdpZHRoIHNvbGlkICRzbGlkZXItaGFuZGxlLWJvcmRlci1jb2xvcjtcblx0XHRcdG91dGxpbmU6IDA7XG5cdFx0ICAgIEBpbmNsdWRlIHNpemUoJHNsaWRlci1oZWlnaHQgKiAzKTtcblx0XHQgICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkYm9yZGVyLXJhZGl1cy1yb3VuZCk7XG5cdFx0ICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oYmFja2dyb3VuZC1jb2xvciBlYXNlLWluLW91dCAkY29tcG9uZW50LXRyYW5zaXRpb24tdGltZXIpO1xuXG5cdFx0XHQvLyBIb3ZlciBjb2xvclxuXHRcdFx0Ji51aS1zdGF0ZS1ob3Zlcixcblx0XHRcdCYudWktc3RhdGUtZm9jdXMge1xuXHRcdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkc2xpZGVyLWhhbmRsZS1ob3Zlci1iZztcblxuXHRcdCAgICAgICAgLy8gSW5uZXIgY2lyY2xlXG5cdFx0ICAgICAgICAmOmFmdGVyIHtcblx0XHQgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkc2xpZGVyLWhhbmRsZS1pbm5lci1ob3Zlci1iZztcblx0XHQgICAgICAgIH1cblx0XHRcdH1cblxuXHRcdFx0Ly8gSW5uZXIgY2lyY2xlXG5cdFx0XHQmOmFmdGVyIHtcblx0XHQgICAgICAgIGNvbnRlbnQ6ICcnO1xuXHRcdCAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXHRcdCAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuXHRcdCAgICAgICAgdG9wOiA1MCU7XG5cdFx0ICAgICAgICBsZWZ0OiA1MCU7XG5cdFx0ICAgICAgICBtYXJnaW4tdG9wOiAtKCRzbGlkZXItaGVpZ2h0IC8gMik7XG5cdFx0ICAgICAgICBtYXJnaW4tbGVmdDogLSgkc2xpZGVyLWhlaWdodCAvIDIpO1xuXHRcdCAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHNsaWRlci1oYW5kbGUtaW5uZXItYmc7XG5cdFx0ICAgICAgICBAaW5jbHVkZSBzaXplKCRzbGlkZXItaGVpZ2h0KTtcblx0XHQgICAgICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGJvcmRlci1yYWRpdXMtcm91bmQpO1xuXHRcdCAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbihiYWNrZ3JvdW5kLWNvbG9yIGVhc2UtaW4tb3V0ICRjb21wb25lbnQtdHJhbnNpdGlvbi10aW1lcik7XG5cdFx0XHR9XG5cdFx0fVxuXG5cdFx0Ly8gUmFuZ2Vcblx0XHQudWktc2xpZGVyLXJhbmdlIHtcblx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRcdHotaW5kZXg6IDE7XG5cdFx0XHRkaXNwbGF5OiBibG9jaztcblx0XHRcdGJhY2tncm91bmQtY29sb3I6ICRzbGlkZXItY29ubmVjdC1iZztcblx0XHRcdEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGJvcmRlci1yYWRpdXMtcm91bmQpO1xuXHRcdH1cblxuXHRcdC8vIERpc2FibGVkIHN0YXRlXG5cdFx0Ji51aS1zbGlkZXItZGlzYWJsZWQge1xuXHRcdFx0b3BhY2l0eTogJHNsaWRlci1kaXNhYmxlZC1vcGFjaXR5O1xuXG5cdFx0XHQvLyBIYW5kbGVcblx0XHRcdC51aS1zbGlkZXItaGFuZGxlIHtcblx0XHRcdFx0Y3Vyc29yOiAkY3Vyc29yLWRpc2FibGVkO1xuXHRcdFx0fVxuXHRcdH1cblx0fVxuXG5cblx0Ly9cblx0Ly8gT3JpZW50YXRpb25zXG5cdC8vXG5cblx0Ly8gSG9yaXpvbnRhbFxuXHQudWktc2xpZGVyLWhvcml6b250YWwge1xuXHRcdGhlaWdodDogJHNsaWRlci1oZWlnaHQ7XG5cblx0XHQvLyBIYW5kbGVcblx0XHQudWktc2xpZGVyLWhhbmRsZSB7XG5cdCAgICAgICAgdG9wOiAtKCRzbGlkZXItaGVpZ2h0ICogMS41KSArICgkc2xpZGVyLWhlaWdodCAvIDIpO1xuXHQgICAgICAgIC8qcnRsOmlnbm9yZSovXG5cdCAgICAgICAgbWFyZ2luLWxlZnQ6IC0oJHNsaWRlci1oZWlnaHQgKiAxLjUpO1xuXHRcdH1cblxuXHRcdC8vIFJhbmdlc1xuXHRcdC51aS1zbGlkZXItcmFuZ2Uge1xuXHRcdFx0dG9wOiAwO1xuXHRcdFx0aGVpZ2h0OiAxMDAlO1xuXHRcdH1cblx0XHQudWktc2xpZGVyLXJhbmdlLW1pbiB7XG5cdFx0XHRsZWZ0OiAwO1xuXHRcdH1cblx0XHQudWktc2xpZGVyLXJhbmdlLW1heCB7XG5cdFx0XHRyaWdodDogMDtcblx0XHR9XG5cdH1cblxuXHQvLyBWZXJ0aWNhbFxuXHQudWktc2xpZGVyLXZlcnRpY2FsIHtcblx0XHR3aWR0aDogJHNsaWRlci1oZWlnaHQ7XG5cdFx0aGVpZ2h0OiAxNTBweDtcblx0XHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cdFx0bWFyZ2luOiAwICRlbGVtZW50LXNwYWNlci14O1xuXG5cdFx0Ly8gSGFuZGxlXG5cdFx0LnVpLXNsaWRlci1oYW5kbGUge1xuXHQgICAgICAgIGxlZnQ6IC0oJHNsaWRlci1oZWlnaHQgKiAxLjUpICsgKCRzbGlkZXItaGVpZ2h0IC8gMik7XG5cdCAgICAgICAgbWFyZ2luLWJvdHRvbTogLSgkc2xpZGVyLWhlaWdodCAqIDEuNSk7XG5cdFx0fVxuXG5cdFx0Ly8gUmFuZ2VzXG5cdFx0LnVpLXNsaWRlci1yYW5nZSB7XG5cdFx0XHRsZWZ0OiAwO1xuXHRcdFx0d2lkdGg6IDEwMCU7XG5cdFx0fVxuXHRcdC51aS1zbGlkZXItcmFuZ2UtbWluIHtcblx0XHRcdGJvdHRvbTogMDtcblx0XHR9XG5cdFx0LnVpLXNsaWRlci1yYW5nZS1tYXgge1xuXHRcdFx0dG9wOiAwO1xuXHRcdH1cblx0fVxuXG5cblx0Ly9cblx0Ly8gSGFuZGxlc1xuXHQvL1xuXG5cdC8vIFNsaWRlciB3aXRoIHNvbGlkIGhhbmRsZVxuXHQudWktc2xpZGVyLXNvbGlkIHtcblx0XHQudWktc2xpZGVyLWhhbmRsZSB7XG5cblx0XHRcdC8vIElubmVyXG5cdFx0XHQmOmFmdGVyIHtcblx0XHRcdFx0YmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuXHRcdFx0XHRAaW5jbHVkZSB0cmFuc2l0aW9uKG9wYWNpdHkgZWFzZS1pbi1vdXQgJGNvbXBvbmVudC10cmFuc2l0aW9uLXRpbWVyKTtcblx0XHRcdH1cblxuXHRcdFx0Ly8gU3RhdGVzXG5cdFx0XHQmLnVpLXN0YXRlLWhvdmVyOmFmdGVyLFxuXHRcdFx0Ji51aS1zdGF0ZS1hY3RpdmU6YWZ0ZXIge1xuXHRcdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG5cdFx0XHRcdG9wYWNpdHk6IDAuNzU7XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG5cblx0Ly8gV2hpdGUgaGFuZGxlXG5cdC51aS1oYW5kbGUtd2hpdGUgLnVpLXNsaWRlci1oYW5kbGU6YWZ0ZXIge1xuXHRcdGNvbnRlbnQ6IG5vbmU7XG5cdH1cblxuXG5cdC8vXG5cdC8vIFNpemluZ1xuXHQvL1xuXG5cdC8vIExhcmdlXG5cdC51aS1zbGlkZXItbGcge1xuXG5cdFx0Ly8gSGFuZGxlXG5cdFx0LnVpLXNsaWRlci1oYW5kbGUge1xuXHRcdCAgICBAaW5jbHVkZSBzaXplKCRzbGlkZXItaGVpZ2h0LWxnICogMyk7XG5cblx0XHQgICAgLy8gSW5uZXIgY2lyY2xlXG5cdFx0ICAgICY6YWZ0ZXIge1xuXHRcdFx0XHRtYXJnaW4tdG9wOiAtKCRzbGlkZXItaGVpZ2h0LWxnIC8gMik7XG5cdFx0XHRcdG1hcmdpbi1sZWZ0OiAtKCRzbGlkZXItaGVpZ2h0LWxnIC8gMik7XG5cdFx0XHRcdEBpbmNsdWRlIHNpemUoJHNsaWRlci1oZWlnaHQtbGcpO1xuXHRcdCAgICB9XG5cdFx0fVxuXG5cdFx0Ly8gSW4gaG9yaXpvbnRhbCBvcmllbnRhdGlvblxuXHRcdCYudWktc2xpZGVyLWhvcml6b250YWwge1xuXHRcdFx0aGVpZ2h0OiAkc2xpZGVyLWhlaWdodC1sZztcblxuXHRcdFx0LnVpLXNsaWRlci1oYW5kbGUge1xuXHRcdCAgICAgICAgdG9wOiAtKCRzbGlkZXItaGVpZ2h0LWxnICogMS41KSArICgkc2xpZGVyLWhlaWdodC1sZyAvIDIpO1xuXHRcdCAgICAgICAgLypydGw6aWdub3JlKi9cblx0XHQgICAgICAgIG1hcmdpbi1sZWZ0OiAtKCRzbGlkZXItaGVpZ2h0LWxnICogMS41KTtcblx0XHRcdH1cblx0XHR9XG5cblx0XHQvLyBJbiB2ZXJ0aWNhbCBvcmllbnRhdGlvblxuXHRcdCYudWktc2xpZGVyLXZlcnRpY2FsIHtcblx0XHRcdHdpZHRoOiAkc2xpZGVyLWhlaWdodC1sZztcblxuXHRcdFx0LnVpLXNsaWRlci1oYW5kbGUge1xuXHRcdCAgICAgICAgbGVmdDogLSgkc2xpZGVyLWhlaWdodC1sZyAqIDEuNSkgKyAoJHNsaWRlci1oZWlnaHQtbGcgLyAyKTtcblx0XHQgICAgICAgIG1hcmdpbi1ib3R0b206IC0oJHNsaWRlci1oZWlnaHQtbGcgKiAxLjUpO1xuXHRcdFx0fVxuXHRcdH1cblx0fVxuXG5cdC8vIFNtYWxsXG5cdC51aS1zbGlkZXItc20ge1xuXG5cdFx0Ly8gSGFuZGxlXG5cdFx0LnVpLXNsaWRlci1oYW5kbGUge1xuXHRcdCAgICBAaW5jbHVkZSBzaXplKCRzbGlkZXItaGVpZ2h0LXNtICogMyk7XG5cblx0XHQgICAgLy8gSW5uZXIgY2lyY2xlXG5cdFx0ICAgICY6YWZ0ZXIge1xuXHRcdFx0XHRtYXJnaW4tdG9wOiAtKCRzbGlkZXItaGVpZ2h0LXNtIC8gMik7XG5cdFx0XHRcdG1hcmdpbi1sZWZ0OiAtKCRzbGlkZXItaGVpZ2h0LXNtIC8gMik7XG5cdFx0XHRcdEBpbmNsdWRlIHNpemUoJHNsaWRlci1oZWlnaHQtc20pO1xuXHRcdCAgICB9XG5cdFx0fVxuXG5cdFx0Ly8gSW4gaG9yaXpvbnRhbCBvcmllbnRhdGlvblxuXHRcdCYudWktc2xpZGVyLWhvcml6b250YWwge1xuXHRcdFx0aGVpZ2h0OiAkc2xpZGVyLWhlaWdodC1zbTtcblxuXHRcdFx0LnVpLXNsaWRlci1oYW5kbGUge1xuXHRcdCAgICAgICAgdG9wOiAtKCRzbGlkZXItaGVpZ2h0LXNtICogMS41KSArICgkc2xpZGVyLWhlaWdodC1zbSAvIDIpO1xuXHRcdCAgICAgICAgLypydGw6aWdub3JlKi9cblx0XHQgICAgICAgIG1hcmdpbi1sZWZ0OiAtKCRzbGlkZXItaGVpZ2h0LXNtICogMS41KTtcblx0XHRcdH1cblx0XHR9XG5cblx0XHQvLyBJbiB2ZXJ0aWNhbCBvcmllbnRhdGlvblxuXHRcdCYudWktc2xpZGVyLXZlcnRpY2FsIHtcblx0XHRcdHdpZHRoOiAkc2xpZGVyLWhlaWdodC1zbTtcblxuXHRcdFx0LnVpLXNsaWRlci1oYW5kbGUge1xuXHRcdCAgICAgICAgbGVmdDogLSgkc2xpZGVyLWhlaWdodC1zbSAqIDEuNSkgKyAoJHNsaWRlci1oZWlnaHQtc20gLyAyKTtcblx0XHQgICAgICAgIG1hcmdpbi1ib3R0b206IC0oJHNsaWRlci1oZWlnaHQtc20gKiAxLjUpO1xuXHRcdFx0fVxuXHRcdH1cblx0fVxuXG5cblx0Ly9cblx0Ly8gQ29udGV4dHVhbCBjb2xvcnNcblx0Ly9cblxuXHQudWktc2xpZGVyLXByaW1hcnkgLnVpLXNsaWRlci1yYW5nZSxcblx0LnVpLXNsaWRlci1zb2xpZC51aS1zbGlkZXItcHJpbWFyeSAudWktc2xpZGVyLWhhbmRsZSB7XG5cdFx0YmFja2dyb3VuZC1jb2xvcjogdGhlbWUtY29sb3IoXCJwcmltYXJ5XCIpO1xuXHRcdGJvcmRlci1jb2xvcjogdGhlbWUtY29sb3IoXCJwcmltYXJ5XCIpO1xuXHR9XG5cdC51aS1zbGlkZXItZGFuZ2VyIC51aS1zbGlkZXItcmFuZ2UsXG5cdC51aS1zbGlkZXItc29saWQudWktc2xpZGVyLWRhbmdlciAudWktc2xpZGVyLWhhbmRsZSB7XG5cdFx0YmFja2dyb3VuZC1jb2xvcjogdGhlbWUtY29sb3IoXCJkYW5nZXJcIik7XG5cdFx0Ym9yZGVyLWNvbG9yOiB0aGVtZS1jb2xvcihcImRhbmdlclwiKTtcblx0fVxuXHQudWktc2xpZGVyLXN1Y2Nlc3MgLnVpLXNsaWRlci1yYW5nZSxcblx0LnVpLXNsaWRlci1zb2xpZC51aS1zbGlkZXItc3VjY2VzcyAudWktc2xpZGVyLWhhbmRsZSB7XG5cdFx0YmFja2dyb3VuZC1jb2xvcjogdGhlbWUtY29sb3IoXCJzdWNjZXNzXCIpO1xuXHRcdGJvcmRlci1jb2xvcjogdGhlbWUtY29sb3IoXCJzdWNjZXNzXCIpO1xuXHR9XG5cdC51aS1zbGlkZXItd2FybmluZyAudWktc2xpZGVyLXJhbmdlLFxuXHQudWktc2xpZGVyLXNvbGlkLnVpLXNsaWRlci13YXJuaW5nIC51aS1zbGlkZXItaGFuZGxlIHtcblx0XHRiYWNrZ3JvdW5kLWNvbG9yOiB0aGVtZS1jb2xvcihcIndhcm5pbmdcIik7XG5cdFx0Ym9yZGVyLWNvbG9yOiB0aGVtZS1jb2xvcihcIndhcm5pbmdcIik7XG5cdH1cblx0LnVpLXNsaWRlci1pbmZvIC51aS1zbGlkZXItcmFuZ2UsXG5cdC51aS1zbGlkZXItc29saWQudWktc2xpZGVyLWluZm8gLnVpLXNsaWRlci1oYW5kbGUge1xuXHRcdGJhY2tncm91bmQtY29sb3I6IHRoZW1lLWNvbG9yKFwiaW5mb1wiKTtcblx0XHRib3JkZXItY29sb3I6IHRoZW1lLWNvbG9yKFwiaW5mb1wiKTtcblx0fVxuXG5cblxuXHQvLyBTcGlubmVyXG5cdC8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG5cdC8vIEJhc2Vcblx0LnVpLXNwaW5uZXIge1xuXHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0XHRkaXNwbGF5OiBmbGV4O1xuXHQgICAgd2lkdGg6IDEwMCU7XG5cdH1cblxuXHQvLyBJbnB1dFxuXHQudWktc3Bpbm5lci1pbnB1dCB7XG5cdFx0Ym9yZGVyLXJpZ2h0OiAwO1xuXHRcdEBpbmNsdWRlIGJvcmRlci1yaWdodC1yYWRpdXMoMCk7XG5cdH1cblxuXG5cdC8vXG5cdC8vIEJ1dHRvbnNcblx0Ly9cblxuXHQvLyBCdXR0b24gYmFzZVxuXHQudWktc3Bpbm5lci1idXR0b24ge1xuXHRcdGRpc3BsYXk6IGZsZXg7XG5cdFx0YWxpZ24taXRlbXM6IGNlbnRlcjtcblx0XHRAaW5jbHVkZSBib3JkZXItcmFkaXVzKDApO1xuXG5cdFx0Ly8gQnV0dG9uIGljb25zIGJhc2Vcblx0XHQmOmFmdGVyIHtcblx0ICAgICAgICBmb250LWZhbWlseTogJGljb24tZm9udC1mYW1pbHk7XG5cdCAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1x0XG5cdCAgICAgICAgbGVmdDogNTAlO1xuXHQgICAgICAgIHRvcDogNTAlO1xuXHQgICAgICAgIHdpZHRoOiAkaWNvbi1mb250LXNpemU7XG5cdCAgICAgICAgZm9udC1zaXplOiAkaWNvbi1mb250LXNpemU7XG5cdCAgICAgICAgbGluZS1oZWlnaHQ6IDE7XG5cdCAgICAgICAgdGV4dC1pbmRlbnQ6IDA7XG5cdCAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG5cdCAgICAgICAgQGluY2x1ZGUgbGwtZm9udC1zbW9vdGhpbmcoKTtcblx0XHR9XG5cblx0XHQvLyBBZGQgcm91bmRlZCBjb3JkZXJzXG5cdFx0JjpsYXN0LWNoaWxkIHtcblx0XHRcdEBpbmNsdWRlIGJvcmRlci1yaWdodC1yYWRpdXMoJGJ0bi1ib3JkZXItcmFkaXVzKTtcblx0XHR9XG5cblx0XHQvLyBIaWRlIG9yaWdpbmFsIGljb25zXG5cdFx0PiBzcGFuIHtcblx0XHRcdGRpc3BsYXk6IG5vbmU7XG5cdFx0fVxuXG5cdFx0Ly8gUmVtb3ZlIGxlZnQgYm9yZGVyIGZyb20gMm5kIGJ1dHRvblxuXHRcdCYgKyAmIHtcblx0XHRcdGJvcmRlci1sZWZ0OiAwO1xuXHRcdH1cblx0fVxuXG5cdC8vIFVwIGJ1dHRvbiBpY29uXG5cdC51aS1zcGlubmVyLXVwIHtcblx0XHQmOmFmdGVyIHtcblx0XHRcdGNvbnRlbnQ6ICdcXGU5ZjcnO1xuXHRcdH1cblx0fVxuXG5cdC8vIERvd24gYnV0dG9uIGljb25cblx0LnVpLXNwaW5uZXItZG93biB7XG5cdFx0JjphZnRlciB7XG5cdFx0XHRjb250ZW50OiAnXFxlOWUyJztcblx0XHR9XG5cdH1cblxuXG5cblx0Ly8gVGFic1xuXHQvLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuXHQudWktdGFicyB7XG5cdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXG5cdFx0Ly8gVGFicyBuYXZpZ2F0aW9uXG5cdFx0LnVpLXRhYnMtbmF2IHtcblx0XHRcdGRpc3BsYXk6IGZsZXg7XG5cdFx0ICAgIGZsZXgtd3JhcDogd3JhcDtcblx0XHRcdG1hcmdpbi1ib3R0b206ICRzcGFjZXI7XG5cdFx0XHRib3JkZXItYm90dG9tOiAkbmF2LXRhYnMtYm9yZGVyLXdpZHRoIHNvbGlkICRuYXYtdGFicy1ib3JkZXItY29sb3I7XG5cdFx0fVxuXG5cdFx0Ly8gSXRlbXNcblx0XHQudWktdGFicy10YWIge1xuXHRcdFx0bGlzdC1zdHlsZTogbm9uZTtcblx0XHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0XHRcdHBhZGRpbmc6IDA7XG5cdFx0XHRtYXJnaW4tYm90dG9tOiAtJG5hdi10YWJzLWJvcmRlci13aWR0aDtcblx0XHR9XG5cblx0XHQvLyBMaW5rc1xuXHRcdC51aS10YWJzLWFuY2hvciB7XG5cdFx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdFx0XHRkaXNwbGF5OiBmbGV4O1xuXHRcdCAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcblx0XHQgICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG5cdFx0XHRjb2xvcjogJG5hdi10YWJzLWxpbmstY29sb3I7XG5cdFx0XHRwYWRkaW5nOiAkbmF2LWxpbmstcGFkZGluZy15ICRuYXYtbGluay1wYWRkaW5nLXg7XG5cdFx0XHRib3JkZXI6ICRuYXYtdGFicy1ib3JkZXItd2lkdGggc29saWQgdHJhbnNwYXJlbnQ7XG5cdFx0XHRAaW5jbHVkZSB0cmFuc2l0aW9uKGFsbCBlYXNlLWluLW91dCAkY29tcG9uZW50LXRyYW5zaXRpb24tdGltZXIpO1xuXG5cdFx0XHQvLyBUb3AgaGlnaGxpZ2h0XG5cdCAgICAgICAgJjpiZWZvcmUge1xuXHQgICAgICAgICAgICBjb250ZW50OiAnJztcblx0ICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuXHQgICAgICAgICAgICBoZWlnaHQ6ICRuYXYtdGFicy1oaWdobGlnaHQtbGluay1ib3JkZXItd2lkdGg7XG5cdCAgICAgICAgICAgIHRvcDogLSgkbmF2LXRhYnMtYm9yZGVyLXdpZHRoKTtcblx0ICAgICAgICAgICAgbGVmdDogLSgkbmF2LXRhYnMtYm9yZGVyLXdpZHRoKTtcblx0ICAgICAgICAgICAgcmlnaHQ6IC0oJG5hdi10YWJzLWJvcmRlci13aWR0aCk7XG5cdCAgICAgICAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oYmFja2dyb3VuZC1jb2xvciBlYXNlLWluLW91dCAkY29tcG9uZW50LXRyYW5zaXRpb24tdGltZXIpO1xuXHQgICAgICAgIH1cblxuXHQgICAgICAgIC8vIEljb25zXG5cdCAgICAgICAgaSB7XG5cdCAgICAgICAgXHR0b3A6IDA7XG5cdFx0ICAgICAgICBtYXJnaW4tdG9wOiAoKCRsaW5lLWhlaWdodC1jb21wdXRlZCAtICRpY29uLWZvbnQtc2l6ZSkgLyAyKTtcblx0ICAgICAgICB9XG5cdFx0fVxuXG5cdFx0Ly8gSG92ZXIvZm9jdXMgc3RhdGVzXG5cdFx0LnVpLXN0YXRlLWhvdmVyLFxuXHRcdC51aS1zdGF0ZS1mb2N1cyB7XG5cdFx0XHQudWktdGFicy1hbmNob3I6bm90KC51aS1zdGF0ZS1kaXNhYmxlZCkge1xuXHRcdFx0XHRjb2xvcjogJG5hdi10YWJzLWxpbmstaG92ZXItY29sb3I7XG5cdFx0XHR9XG5cdFx0fVxuXG5cdFx0Ly8gQWN0aXZlIGl0ZW1cblx0XHQudWktdGFicy1hY3RpdmUge1xuXHRcdFx0LnVpLXRhYnMtYW5jaG9yIHtcblx0XHQgICAgICAgIGNvbG9yOiAkbmF2LXRhYnMtbGluay1hY3RpdmUtY29sb3I7XG5cdFx0ICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbmF2LXRhYnMtbGluay1hY3RpdmUtYmc7XG5cdFx0ICAgICAgICBib3JkZXItY29sb3I6ICRuYXYtdGFicy1saW5rLWFjdGl2ZS1ib3JkZXItY29sb3I7XG5cblx0XHQgICAgICAgIC8vIFRvcCBoaWdobGlnaHRcblx0XHQgICAgICAgICY6YmVmb3JlIHtcblx0XHQgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbmF2LXRhYnMtaGlnaGxpZ2h0LWxpbmstYm9yZGVyLWNvbG9yO1xuXHRcdCAgICAgICAgfVxuXHRcdCAgICB9XG5cdFx0fVxuXG5cdFx0Ly8gRGlzYWJsZWQgaXRlbVxuXHRcdC51aS1zdGF0ZS1kaXNhYmxlZCB7XG5cdCAgICAgICAgY29sb3I6ICRuYXYtbGluay1kaXNhYmxlZC1jb2xvcjtcblx0ICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcblx0ICAgICAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xuXHQgICAgICAgIGN1cnNvcjogJGN1cnNvci1kaXNhYmxlZDtcblx0XHR9XG5cblx0XHQvLyBBZGQgYm90dG9tIGJvcmRlciBhbmQgYmcgdG8gc29ydGFibGUgaGVscGVyXG5cdFx0LnVpLXNvcnRhYmxlLWhlbHBlcjpub3QoLnVpLXRhYnMtYWN0aXZlKSB7XG5cdFx0XHQudWktdGFicy1hbmNob3Ige1xuXHRcdFx0XHRib3JkZXItY29sb3I6ICRuYXYtdGFicy1ib3JkZXItY29sb3I7XG5cdFx0XHR9XG5cdFx0fVxuXG5cdFx0Ly8gRGlzcGxheSB0YWJzIHBhbmVsXG5cdFx0LnVpLXRhYnMtcGFuZWwge1xuXHRcdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0fVxuXHR9XG5cblxuXG5cdC8vIFRvb2x0aXBcblx0Ly8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cblx0LnVpLXRvb2x0aXAge1xuXHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHR6LWluZGV4OiAkemluZGV4LXRvb2x0aXA7XG5cdFx0bWF4LXdpZHRoOiAkdG9vbHRpcC1tYXgtd2lkdGg7XG5cdFx0cGFkZGluZzogJHRvb2x0aXAtcGFkZGluZy15ICR0b29sdGlwLXBhZGRpbmcteDtcblx0XHRjb2xvcjogJHRvb2x0aXAtY29sb3I7XG5cdFx0dGV4dC1hbGlnbjogY2VudGVyO1xuXHRcdGJhY2tncm91bmQtY29sb3I6ICR0b29sdGlwLWJnO1xuXHRcdEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJHRvb2x0aXAtYm9yZGVyLXJhZGl1cyk7XG5cdH1cblxuXG5cblx0Ly8gTWlzY1xuXHQvLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuXHQvLyBPdmVybGF5XG5cdC51aS13aWRnZXQtb3ZlcmxheSB7XG5cdFx0cG9zaXRpb246IGZpeGVkO1xuXHRcdHRvcDogMDtcblx0XHQvKnJ0bDppZ25vcmUqL1xuXHRcdGxlZnQ6IDA7XG5cdFx0ei1pbmRleDogJHppbmRleC1tb2RhbC1iYWNrZHJvcDtcblx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkbW9kYWwtYmFja2Ryb3AtYmc7XG5cdFx0b3BhY2l0eTogJG1vZGFsLWJhY2tkcm9wLW9wYWNpdHk7XG5cdFx0QGluY2x1ZGUgc2l6ZSgxMDAlKTtcblx0fVxuXG5cdC8vXG5cdC8vIExheW91dCBoZWxwZXJzXG5cdC8vXG5cblx0Ly8gSGlkZSBlbGVtZW50XG5cdC51aS1oZWxwZXItaGlkZGVuIHtcblx0XHRkaXNwbGF5OiBub25lO1xuXHR9XG5cblx0Ly8gQWNjZXNzaWJsZSBlbGVtZW50XG5cdC51aS1oZWxwZXItaGlkZGVuLWFjY2Vzc2libGUge1xuXHRcdGJvcmRlcjogMDtcblx0XHRjbGlwOiByZWN0KDAgMCAwIDApO1xuXHRcdGhlaWdodDogMXB4O1xuXHRcdG1hcmdpbjogLTFweDtcblx0XHRvdmVyZmxvdzogaGlkZGVuO1xuXHRcdHBhZGRpbmc6IDA7XG5cdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdHdpZHRoOiAxcHg7XG5cdH1cblxuXHQvLyBSZXNldFxuXHQudWktaGVscGVyLXJlc2V0IHtcblx0XHRtYXJnaW46IDA7XG5cdFx0cGFkZGluZzogMDtcblx0XHRib3JkZXI6IDA7XG5cdFx0b3V0bGluZTogMDtcblx0XHRsaXN0LXN0eWxlOiBub25lO1xuXHR9XG5cblx0Ly8gQ2xlYXJmaXhcblx0LnVpLWhlbHBlci1jbGVhcmZpeCB7XG5cdFx0QGluY2x1ZGUgY2xlYXJmaXg7XG5cdH1cblxuXHQvLyBpRnJhbWUgZml4XG5cdC51aS1oZWxwZXItemZpeCB7XG5cdFx0dG9wOiAwO1xuXHRcdGxlZnQ6IDA7XG5cdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdG9wYWNpdHk6IDA7XG5cdFx0QGluY2x1ZGUgc2l6ZSgxMDAlKTtcblx0fVxuXG5cdC8vIE92ZXJsYXkgei1pbmRleFxuXHQudWktZnJvbnQge1xuXHRcdHotaW5kZXg6ICR6aW5kZXgtbW9kYWwtYmFja2Ryb3A7XG5cdH1cbn1cbiIsIi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICpcbiAqICAjIFByaXNtXG4gKlxuICogIFN0eWxlcyBmb3IgcHJpc20ubWluLmpzIC0gbGlnaHR3ZWlnaHQsIGV4dGVuc2libGUgc3ludGF4IGhpZ2hsaWdodGVyXG4gKlxuICogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuXG4vLyBDaGVjayBpZiBjb21wb25lbnQgaXMgZW5hYmxlZFxuQGlmICRlbmFibGUtcHJpc20ge1xuXG5cdC8vIEJhc2Vcblx0Y29kZSxcblx0cHJlIHtcblx0XHQmW2NsYXNzKj1cImxhbmd1YWdlLVwiXSB7XG5cdFx0XHR0ZXh0LXNoYWRvdzogMCAxcHggI2ZmZjtcblx0XHRcdHdvcmQtYnJlYWs6IGJyZWFrLWFsbDtcblx0XHRcdGxpbmUtaGVpZ2h0OiAxLjU7XG5cdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcblx0XHRcdC8qcnRsOmlnbm9yZSovXG5cdFx0XHRkaXJlY3Rpb246IGx0cjtcblxuXHRcdFx0QG1lZGlhIHByaW50IHtcblx0XHRcdFx0dGV4dC1zaGFkb3c6IG5vbmU7XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG5cblx0Ly8gVG9rZW4gY29sb3JzXG5cdC50b2tlbiB7XG5cdFx0Ji5jb21tZW50LFxuXHRcdCYucHJvbG9nLFxuXHRcdCYuZG9jdHlwZSxcblx0XHQmLmNkYXRhLFxuXHRcdCYucHVuY3R1YXRpb24ge1xuXHRcdFx0Y29sb3I6ICM5OTk7XG5cdFx0fVxuXG5cdFx0Ji5wcm9wZXJ0eSxcblx0XHQmLnRhZyxcblx0XHQmLmJvb2xlYW4sXG5cdFx0Ji5udW1iZXIsXG5cdFx0Ji5jb25zdGFudCxcblx0XHQmLnN5bWJvbCB7XG5cdFx0XHRjb2xvcjogIzkwNTtcblx0XHR9XG5cblx0XHQmLnNlbGVjdG9yLFxuXHRcdCYuYXR0ci1uYW1lLFxuXHRcdCYuc3RyaW5nLFxuXHRcdCYuYnVpbHRpbiB7XG5cdFx0XHRjb2xvcjogIzY5MDtcblx0XHR9XG5cblx0XHQmLm9wZXJhdG9yLFxuXHRcdCYuZW50aXR5LFxuXHRcdCYudXJsLFxuXHRcdC5sYW5ndWFnZS1jc3MgJi5zdHJpbmcsXG5cdFx0LnN0eWxlICYuc3RyaW5nLFxuXHRcdCYudmFyaWFibGUge1xuXHRcdFx0Y29sb3I6ICNhNjdmNTk7XG5cdFx0XHRiYWNrZ3JvdW5kOiBoc2xhKDAsMCUsMTAwJSwuNSk7XG5cdFx0fVxuXG5cdFx0Ji5hdHJ1bGUsXG5cdFx0Ji5hdHRyLXZhbHVlLFxuXHRcdCYua2V5d29yZCB7XG5cdFx0XHRjb2xvcjogIzA3YTtcblx0XHR9XG5cblx0XHQmLmZ1bmN0aW9uIHtcblx0XHRcdGNvbG9yOiAjREQ0QTY4O1xuXHRcdH1cblxuXHRcdCYucmVnZXgsXG5cdFx0Ji5pbXBvcnRhbnQge1xuXHRcdFx0Y29sb3I6ICNlOTA7XG5cdFx0fVxuXG5cdFx0Ji5pbXBvcnRhbnQge1xuXHRcdFx0Zm9udC13ZWlnaHQ6IGJvbGQ7XG5cdFx0fVxuXG5cdFx0Ji5lbnRpdHkge1xuXHRcdFx0Y3Vyc29yOiBoZWxwO1xuXHRcdH1cblx0fVxuXG5cdC8vIE5hbWVzcGFjZSBvcGFjaXR5XG5cdC5uYW1lc3BhY2Uge1xuXHRcdG9wYWNpdHk6IDAuNztcblx0fVxuXG5cdC8vIExpbmUgaGlnaGxpZ2h0XG5cdC5saW5lLWhpZ2hsaWdodCB7XG5cdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdGxlZnQ6IDA7XG5cdFx0cmlnaHQ6IDA7XG5cdFx0bWFyZ2luLXRvcDogMS4yNXJlbTtcblx0XHRiYWNrZ3JvdW5kOiByZ2JhKCM2NzhiZGMsIDAuMTIpOyAgXG5cdFx0cG9pbnRlci1ldmVudHM6IG5vbmU7XG5cdFx0d2hpdGUtc3BhY2U6IHByZTtcblx0XHRsaW5lLWhlaWdodDogaW5oZXJpdDtcblxuXHRcdCY6YmVmb3JlLFxuXHRcdCY6YWZ0ZXIge1xuXHRcdFx0Y29udGVudDogYXR0cihkYXRhLXN0YXJ0KTtcblx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRcdHRvcDogMHB4O1xuXHRcdFx0LypydGw6aWdub3JlKi9cblx0XHRcdGxlZnQ6IDEwcHg7XG5cdFx0XHRwYWRkaW5nOiAycHg7XG5cdFx0XHR0ZXh0LWFsaWduOiBjZW50ZXI7XG5cdFx0XHRmb250LXNpemU6IDEwcHg7XG5cdFx0XHRjb2xvcjogJHRleHQtbXV0ZWQ7XG5cdFx0fVxuXG5cdFx0JltkYXRhLWVuZF06YWZ0ZXIge1xuXHRcdFx0Y29udGVudDogYXR0cihkYXRhLWVuZCk7XG5cdFx0XHR0b3A6IGF1dG87XG5cdFx0XHRib3R0b206IDA7XG5cdFx0fVxuXHR9XG5cblx0Ly8gTGluZSBudW1iZXJzXG5cdC5saW5lLW51bWJlcnMge1xuXHRcdC5saW5lLW51bWJlcnMtcm93cyB7XG5cdFx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0XHRwb2ludGVyLWV2ZW50czogbm9uZTtcblx0XHRcdHRvcDogMDtcblx0XHRcdGZvbnQtc2l6ZTogMTAwJTtcblx0XHRcdHdpZHRoOiAzNnB4OyAvLyB3b3JrcyBmb3IgbGluZS1udW1iZXJzIGJlbG93IDEwMDAgbGluZXNcblx0XHRcdGxldHRlci1zcGFjaW5nOiAtMXB4O1xuXHRcdFx0LypydGw6YmVnaW46aWdub3JlKi9cblx0XHRcdGxlZnQ6IC01MHB4O1xuXHRcdFx0Ym9yZGVyLXJpZ2h0OiAxcHggc29saWQgIzk5OTtcblx0XHRcdC8qcnRsOmVuZDppZ25vcmUqL1xuXHRcdFx0dXNlci1zZWxlY3Q6IG5vbmU7XG5cblx0XHRcdD4gc3BhbiB7XG5cdFx0XHRcdHBvaW50ZXItZXZlbnRzOiBub25lO1xuXHRcdFx0XHRkaXNwbGF5OiBibG9jaztcblx0XHRcdFx0Y291bnRlci1pbmNyZW1lbnQ6IGxpbmVudW1iZXI7XG5cblx0XHRcdFx0JjpiZWZvcmUge1xuXHRcdFx0XHRcdGNvbnRlbnQ6IGNvdW50ZXIobGluZW51bWJlcik7XG5cdFx0XHRcdFx0Y29sb3I6ICR0ZXh0LW11dGVkO1xuXHRcdFx0XHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdFx0XHRcdC8qcnRsOmJlZ2luOmlnbm9yZSovXG5cdFx0XHRcdFx0cGFkZGluZy1yaWdodDogMTBweDtcblx0XHRcdFx0XHR0ZXh0LWFsaWduOiByaWdodDtcblx0XHRcdFx0XHQvKnJ0bDplbmQ6aWdub3JlKi9cblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdH1cblx0fVxuXHRwcmUubGluZS1udW1iZXJzIHtcblx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdFx0LypydGw6aWdub3JlKi9cblx0XHRwYWRkaW5nLWxlZnQ6IDUwcHg7XG5cdFx0Y291bnRlci1yZXNldDogbGluZW51bWJlcjtcblxuXHRcdD4gY29kZSB7XG5cdFx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdFx0fVxuXHR9XG5cblxuXHQvL1xuXHQvLyBDb2RlIGJsb2Nrc1xuXHQvL1xuXG5cdHByZSB7XG5cdFx0JltjbGFzcyo9XCJsYW5ndWFnZS1cIl0ge1xuXHRcdFx0b3ZlcmZsb3c6IGF1dG87XG5cdFx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdFx0ICAgIGJhY2tncm91bmQtY29sb3I6ICNmZGZkZmQ7XG5cdFx0ICAgIGJhY2tncm91bmQtaW1hZ2U6IC13ZWJraXQtbGluZWFyLWdyYWRpZW50KHRyYW5zcGFyZW50IDUwJSwgcmdiYSgkY29sb3ItcHJpbWFyeS03MDAsIDAuMDI1KSA1MCUpO1xuXHRcdCAgICBiYWNrZ3JvdW5kLWltYWdlOiAtbW96LWxpbmVhci1ncmFkaWVudCh0cmFuc3BhcmVudCA1MCUsIHJnYmEoJGNvbG9yLXByaW1hcnktNzAwLCAwLjAyNSkgNTAlKTtcblx0XHQgICAgYmFja2dyb3VuZC1pbWFnZTogLW1zLWxpbmVhci1ncmFkaWVudCh0cmFuc3BhcmVudCA1MCUsIHJnYmEoJGNvbG9yLXByaW1hcnktNzAwLCAwLjAyNSkgNTAlKTtcblx0XHQgICAgYmFja2dyb3VuZC1pbWFnZTogLW8tbGluZWFyLWdyYWRpZW50KHRyYW5zcGFyZW50IDUwJSwgcmdiYSgkY29sb3ItcHJpbWFyeS03MDAsIDAuMDI1KSA1MCUpO1xuXHRcdCAgICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodHJhbnNwYXJlbnQgNTAlLCByZ2JhKCRjb2xvci1wcmltYXJ5LTcwMCwgMC4wMjUpIDUwJSk7XG5cdFx0ICAgIGJhY2tncm91bmQtc2l6ZTogM2VtIDNlbTtcblx0XHQgICAgYmFja2dyb3VuZC1vcmlnaW46IGNvbnRlbnQtYm94O1xuXHRcdCAgICAvKnJ0bDpiZWdpbjppZ25vcmUqL1xuXHRcdFx0Ym9yZGVyLWxlZnQtd2lkdGg6IDA7XG5cdFx0ICAgIGJveC1zaGFkb3c6IDNweCAwIDAgMCAkY29sb3ItcHJpbWFyeS01MDAgaW5zZXQ7XG5cdFx0XHRAaW5jbHVkZSBib3JkZXItbGVmdC1yYWRpdXMoMCk7XG5cdFx0XHQvKnJ0bDplbmQ6aWdub3JlKi9cblx0XHR9XG5cblx0XHQmW2RhdGEtbGluZV0ge1xuXHRcdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRcdFx0LypydGw6aWdub3JlKi9cblx0XHRcdHBhZGRpbmctbGVmdDogMzZweDtcblx0XHR9XG5cdH1cblxuXG5cdC8vXG5cdC8vIFRvb2xiYXJcblx0Ly9cblxuXHRwcmUuY29kZS10b29sYmFyIHtcblx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cblx0XHQ+IC50b29sYmFyIHtcblx0XHRcdGJhY2tncm91bmQtY29sb3I6ICNmOGY4Zjg7XG5cdFx0XHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cdFx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0XHR0b3A6IDA7XG5cdFx0XHR0ZXh0LXNoYWRvdzogbm9uZTtcblx0XHRcdGNvbG9yOiAkYm9keS1jb2xvcjtcblx0XHRcdGJvcmRlci1ib3R0b206ICRib3JkZXItd2lkdGggc29saWQgJGJvcmRlci1jb2xvcjtcblx0XHRcdC8qcnRsOmJlZ2luOmlnbm9yZSovXG5cdFx0XHRib3JkZXItbGVmdDogJGJvcmRlci13aWR0aCBzb2xpZCAkYm9yZGVyLWNvbG9yO1xuXHRcdFx0cmlnaHQ6IDA7XG5cdFx0XHRib3JkZXItcmFkaXVzOiAwIDAgMCAkYm9yZGVyLXJhZGl1cztcblx0XHRcdC8qcnRsOmVuZDppZ25vcmUqL1xuXG5cdFx0XHQvLyBJdGVtc1xuXHRcdFx0c3Bhbixcblx0XHRcdC50b29sYmFyLWl0ZW0ge1xuXHRcdFx0XHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cdFx0XHR9XG5cblx0XHRcdC8vIExpbmtzXG5cdFx0XHRhIHtcblx0XHRcdFx0Y3Vyc29yOiBwb2ludGVyO1xuXHRcdFx0fVxuXG5cdFx0XHQvLyBCdXR0b25zXG5cdFx0XHRidXR0b24ge1xuXHRcdFx0XHRiYWNrZ3JvdW5kOiBub25lO1xuXHRcdFx0XHRib3JkZXI6IDA7XG5cdFx0XHRcdGNvbG9yOiBpbmhlcml0O1xuXHRcdFx0XHRmb250OiBpbmhlcml0O1xuXHRcdFx0XHRsaW5lLWhlaWdodDogbm9ybWFsO1xuXHRcdFx0XHRvdmVyZmxvdzogdmlzaWJsZTtcblx0XHRcdFx0dXNlci1zZWxlY3Q6IG5vbmU7XG5cdFx0XHR9XG5cblx0XHRcdC8vIEJhc2ljIHN0eWxlc1xuXHRcdFx0YSxcblx0XHRcdGJ1dHRvbixcblx0XHRcdHNwYW4ge1xuXHRcdFx0XHRwYWRkaW5nOiAwLjI1cmVtIDAuNXJlbTtcblx0XHRcdFx0Zm9udC1zaXplOiAkZm9udC1zaXplLXhzO1xuXHRcdFx0XHRvdXRsaW5lOiAwO1xuXG5cdFx0XHRcdEBpbmNsdWRlIGhvdmVyLWZvY3VzIHtcblx0XHRcdFx0XHRjb2xvcjogaW5oZXJpdDtcblx0XHRcdFx0XHR0ZXh0LWRlY29yYXRpb246IG5vbmU7XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHR9XG5cdH1cbn1cbiIsIi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICpcbiAqICAjIFNsaW5reVxuICpcbiAqICBTdHlsZXMgZm9yIHNsaW5reS5taW4uanMgLSBhbmltYXRlZCBtdWx0aSBsZXZlbCBuYXZpZ2F0aW9uXG4gKlxuICogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuXG4vLyBDaGVjayBpZiBjb21wb25lbnQgaXMgZW5hYmxlZFxuQGlmICRlbmFibGUtc2xpbmt5IHtcblxuICAgIC8vIEJhc2VcbiAgICAuc2xpbmt5LW1lbnUge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTtcblxuICAgICAgICAvLyBDaGlsZCBsZXZlbFxuICAgICAgICA+IHVsIHtcbiAgICAgICAgICAgIC8qcnRsOmlnbm9yZSovXG4gICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApO1xuICAgICAgICB9XG5cbiAgICAgICAgLy8gQWxsIGxldmVsc1xuICAgICAgICB1bCB7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcblxuICAgICAgICAgICAgLy8gQWN0aXZlIGxpc3RcbiAgICAgICAgICAgICYuYWN0aXZlIHtcbiAgICAgICAgICAgICAgICBtYXgtaGVpZ2h0OiAkZHJvcGRvd24tc2Nyb2xsYWJsZS1tYXgtaGVpZ2h0O1xuICAgICAgICAgICAgICAgIG92ZXJmbG93LXk6IGF1dG87XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAvLyBTdWJtZW51c1xuICAgICAgICBsaSB7XG5cbiAgICAgICAgICAgIC8vIEFkZCBzcGFjaW5nIGJldHdlZW4gaXRlbXNcbiAgICAgICAgICAgICsgbGk6bm90KC5kcm9wZG93bi1pdGVtKTpub3QoLmRyb3Bkb3duLWRpdmlkZXIpIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAkZHJvcGRvd24taXRlbS1zcGFjZXIteTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLy8gQ2hpbGRyZW4gbGlzdHNcbiAgICAgICAgICAgIHVsIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgICAgIC8qcnRsOmlnbm9yZSovXG4gICAgICAgICAgICAgICAgbGVmdDogMTAwJTtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLy8gSGVhZGVyIGxpbmtcbiAgICAgICAgLmhlYWRlciB7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgY29sb3I6ICRsaW5rLWNvbG9yO1xuICAgICAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbihhbGwgZWFzZS1pbi1vdXQgJGNvbXBvbmVudC10cmFuc2l0aW9uLXRpbWVyKTtcblxuICAgICAgICAgICAgLy8gSG92ZXIgc3RhdGVcbiAgICAgICAgICAgIEBpbmNsdWRlIGhvdmVyLWZvY3VzIHtcbiAgICAgICAgICAgICAgICBjb2xvcjogJGxpbmstaG92ZXItY29sb3I7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC8vIFRpdGxlXG4gICAgICAgICAgICAudGl0bGUge1xuICAgICAgICAgICAgICAgIGZsZXg6IDE7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogJGRyb3Bkb3duLWl0ZW0tcGFkZGluZy15ICRkcm9wZG93bi1pdGVtLXBhZGRpbmcteDtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6ICRkcm9wZG93bi1pdGVtLXBhZGRpbmcteCArICRkcm9wZG93bi1pY29uLXNwYWNlci14ICsgJGljb24tZm9udC1zaXplO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cblxuICAgICAgICAvL1xuICAgICAgICAvLyBEaXJlY3Rpb25zXG4gICAgICAgIC8vXG5cbiAgICAgICAgLy8gSWNvbnMgYmFzZVxuICAgICAgICAubmV4dCxcbiAgICAgICAgLmJhY2sge1xuICAgICAgICAgICAgJjphZnRlcixcbiAgICAgICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICBmb250LWZhbWlseTogJGljb24tZm9udC1mYW1pbHk7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgIHRvcDogNTAlO1xuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IC0oJGljb24tZm9udC1zaXplIC8gMik7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAkaWNvbi1mb250LXNpemU7XG4gICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgICAgICAgICAgICAgb3BhY2l0eTogMC43NTtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBsbC1mb250LXNtb290aGluZygpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLy8gTmV4dFxuICAgICAgICAubmV4dCB7XG4gICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAoKCRkcm9wZG93bi1pdGVtLXBhZGRpbmcteCAqIDIpICsgKCRpY29uLWZvbnQtc2l6ZSAvIDIpKTtcblxuICAgICAgICAgICAgLy8gQXJyb3dcbiAgICAgICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgICAgIEBpZiAkZGlyZWN0aW9uID09ICdMVFInIHtcbiAgICAgICAgICAgICAgICAgICAgY29udGVudDogJ1xcZTljNyc7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIEBlbHNlIHtcbiAgICAgICAgICAgICAgICAgICAgY29udGVudDogJ1xcZTljNCc7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIHJpZ2h0OiAkZHJvcGRvd24taXRlbS1wYWRkaW5nLXg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAvLyBQcmV2aW91c1xuICAgICAgICAuYmFjayB7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICBwYWRkaW5nOiAkZHJvcGRvd24taXRlbS1wYWRkaW5nLXkgJGRyb3Bkb3duLWl0ZW0tcGFkZGluZy14O1xuICAgICAgICAgICAgY29sb3I6IGluaGVyaXQ7XG4gICAgICAgICAgICBAaW5jbHVkZSBzaXplKDEwMCUpO1xuXG4gICAgICAgICAgICAvLyBJY29uXG4gICAgICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgQGlmICRkaXJlY3Rpb24gPT0gJ0xUUicge1xuICAgICAgICAgICAgICAgICAgICBjb250ZW50OiAnXFxlZGU3JztcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgQGVsc2Uge1xuICAgICAgICAgICAgICAgICAgICBjb250ZW50OiAnXFxlZGU1JztcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgbGVmdDogJGRyb3Bkb3duLWl0ZW0tcGFkZGluZy14O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuIiwiLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gKlxuICogICMgU3RpY2t5IGtpdFxuICpcbiAqICBTdHlsZXMgZm9yIHN0aWNreS5taW4uanMgLSBleHRlbnNpb24gdGhhdCBtYWtlcyBlbGVtZW50cyBzdGlja3lcbiAqXG4gKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5cbi8vIENoZWNrIGlmIGNvbXBvbmVudCBpcyBlbmFibGVkXG5AaWYgJGVuYWJsZS1zdGlja3kge1xuXG4gICAgLy8gQXBwbHkgY29ycmVjdCB6LWluZGV4IHRvIHN0aWNrZWQgZWxlbWVudFxuICAgIC5pc19zdHVjayB7XG4gICAgICAgIHotaW5kZXg6ICR6aW5kZXgtZml4ZWQgIWltcG9ydGFudDtcbiAgICB9XG5cbiAgICAubmF2YmFyLXRvcCB7XG4gICAgICAgIC5uYXZiYXIuaXNfc3R1Y2sge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogJG5hdi1saW5rLWhlaWdodCArIHJlbS1jYWxjKCRuYXZiYXItYm9yZGVyLXdpZHRoICogMik7XG4gICAgICAgIH1cbiAgICB9XG59XG4iLCIvKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAqXG4gKiAgIyBIZWFkcm9vbVxuICpcbiAqICBTdHlsZXMgZm9yIGhlYWRyb29tLm1pbi5qcyAtIGhpZGVzIEJTIG5hdmJhciBjb21wb25lbnQgb24gcGFnZSBzY3JvbGxcbiAqXG4gKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5cbi8vIENoZWNrIGlmIGNvbXBvbmVudCBpcyBlbmFibGVkXG5AaWYgJGVuYWJsZS1oZWFkcm9vbSB7XG5cblx0Ly8gQmFzZVxuXHQuaGVhZHJvb20ge1xuXHRcdHRyYW5zaXRpb246IHRyYW5zZm9ybSBlYXNlLWluLW91dCAwLjJzLCBib3gtc2hhZG93IGVhc2UtaW4tb3V0IDAuMnM7XG5cdFx0d2lsbC1jaGFuZ2U6IHRyYW5zZm9ybTtcblx0fVxuXG5cblx0Ly9cblx0Ly8gUG9zaXRpb25zXG5cdC8vXG5cblx0Ly8gVG9wXG5cdC5uYXZiYXItc2xpZGUtdG9wIHtcblxuXHRcdC8vIEhpZGRlblxuXHRcdCYuaGVhZHJvb20tLXBpbm5lZCB7XG5cdFx0ICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcblx0XHR9XG5cblx0XHQvLyBWaXNpYmxlXG5cdFx0Ji5oZWFkcm9vbS0tdW5waW5uZWQge1xuXHRcdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xMDAlKTtcblx0XHRcdEBpbmNsdWRlIGJveC1zaGFkb3cobm9uZSk7XG5cdFx0fVxuXHR9XG5cblx0Ly8gQm90dG9tXG5cdC5uYXZiYXItc2xpZGUtYm90dG9tIHtcblxuXHRcdC8vIEhpZGRlblxuXHRcdCYuaGVhZHJvb20tLXBpbm5lZCB7XG5cdFx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMTAwJSk7XG5cdFx0XHRAaW5jbHVkZSBib3gtc2hhZG93KG5vbmUpO1xuXHRcdH1cblxuXHRcdC8vIFZpc2libGVcblx0XHQmLmhlYWRyb29tLS11bnBpbm5lZCB7XG5cdFx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG5cdFx0fVxuXHR9XG59XG4iLCIvKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAqXG4gKiAgIyBEcmFndWxhIC0gZHJhZyBhbmQgZHJvcCBsaWJyYXJ5XG4gKlxuICogIFN0eWxlcyBmb3IgRHJhZ3VsYSBEcmFnIGFuZCBkcm9wIHBsdWdpblxuICpcbiAqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cblxuLy8gQ2hlY2sgaWYgY29tcG9uZW50IGlzIGVuYWJsZWRcbkBpZiAkZW5hYmxlLWRyYWd1bGEge1xuXG4gICAgLy8gQmFzZVxuICAgIC5ndS1taXJyb3Ige1xuICAgICAgICBwb3NpdGlvbjogZml4ZWQgIWltcG9ydGFudDtcbiAgICAgICAgbWFyZ2luOiAwICFpbXBvcnRhbnQ7XG4gICAgICAgIHotaW5kZXg6IDk5OTkgIWltcG9ydGFudDtcbiAgICAgICAgb3BhY2l0eTogMC44O1xuICAgIH1cblxuICAgIC8vIFJlbW92ZSBib3R0b20gbWFyZ2luIGZyb20gdGhlIHNlY29uZCBsYXN0IGl0ZW0gaW4gZHJvcGRvd24gbWVudVxuICAgIC5ndS11bnNlbGVjdGFibGUuZHJvcGRvd24tbWVudSBsaTpudGgtbGFzdC1jaGlsZCgyKSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgfVxuXG5cbiAgICAvLyBSZW1vdmUgYm9yZGVycyBmcm9tIHRvb2xiYXIgcGlsbHNcbiAgICAubmF2LXBpbGxzLXRvb2xiYXIgPiBsaS5ndS1taXJyb3I6bm90KC5hY3RpdmUpID4gYSB7XG4gICAgICAgIGJvcmRlcjogMDtcbiAgICB9XG5cbiAgICAvLyBIaWRlIGVsZW1lbnRcbiAgICAuZ3UtaGlkZSB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgICB9XG5cbiAgICAvLyBEaXNhYmxlIHNlbGVjdGlvblxuICAgIC5ndS11bnNlbGVjdGFibGUge1xuICAgICAgICB1c2VyLXNlbGVjdDogbm9uZTtcbiAgICB9XG5cbiAgICAvLyBNdXRlIGRyYWdnYWJsZSBlbGVtZW50XG4gICAgLmd1LXRyYW5zaXQge1xuICAgICAgICBvcGFjaXR5OiAwLjU7XG4gICAgfVxuXG4gICAgLy8gRHJhZ2dhYmxlIGhhbmRsZVxuICAgIC5kcmFndWxhLWhhbmRsZSB7XG4gICAgICAgIGNvbG9yOiAkZ3JheS02MDA7XG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcblxuICAgICAgICAvLyBIb3ZlciBzdGF0ZVxuICAgICAgICBAaW5jbHVkZSBob3Zlci1mb2N1cyB7XG4gICAgICAgICAgICBjb2xvcjogJGJvZHktY29sb3I7XG4gICAgICAgIH1cbiAgICB9XG59XG4iLCIvKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAqXG4gKiAgIyBQZXJmZWN0IFNjcm9sbGJhclxuICpcbiAqICBTdHlsZXMgZm9yIHBlcmZlY3Rfc2Nyb2xsYmFyLm1pbi5qcyAtIGN1c3RvbSBzY3JvbGxiYXIgZXh0ZW5zaW9uXG4gKlxuICogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuXG4vLyBDaGVjayBpZiBjb21wb25lbnQgaXMgZW5hYmxlZFxuQGlmICRlbmFibGUtc2Nyb2xsYmFyIHtcblxuICAgIC8vIENvbnRhaW5lclxuICAgIC5wcyB7XG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW4gIWltcG9ydGFudDtcbiAgICAgICAgb3ZlcmZsb3ctYW5jaG9yOiBub25lO1xuICAgICAgICB0b3VjaC1hY3Rpb246IGF1dG87XG4gICAgfVxuXG5cbiAgICAvL1xuICAgIC8vIFNjcm9sbGJhciByYWlsIHN0eWxlc1xuICAgIC8vXG5cbiAgICAvLyBCYXNlXG4gICAgLnBzX19yYWlsLXksXG4gICAgLnBzX19yYWlsLXgge1xuICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb24ob3BhY2l0eSAkY29tcG9uZW50LXRyYW5zaXRpb24tdGltZXIgbGluZWFyKTtcbiAgICB9XG4gICAgLnBzX19yYWlsLXgge1xuICAgICAgICBib3R0b206IDA7XG4gICAgfVxuICAgIC5wc19fcmFpbC15IHtcbiAgICAgICAgLypydGw6aWdub3JlKi9cbiAgICAgICAgcmlnaHQ6IDA7XG4gICAgfVxuXG4gICAgLy8gSG92ZXIgc3RhdGVcbiAgICAucHM6aG92ZXIgPiAucHNfX3JhaWwteCxcbiAgICAucHM6aG92ZXIgPiAucHNfX3JhaWwteSxcbiAgICAucHMtLWZvY3VzID4gLnBzX19yYWlsLXgsXG4gICAgLnBzLS1mb2N1cyA+IC5wc19fcmFpbC15LFxuICAgIC5wcy0tc2Nyb2xsaW5nLXggPiAucHNfX3JhaWwteCxcbiAgICAucHMtLXNjcm9sbGluZy15ID4gLnBzX19yYWlsLXkge1xuICAgICAgICBvcGFjaXR5OiAkcHMtb3BhY2l0eTtcbiAgICB9XG5cbiAgICBcbiAgICAvL1xuICAgIC8vIFNjcm9sbGJhciB0aHVtYiBzdHlsZXNcbiAgICAvL1xuXG4gICAgLy8gQmFzZVxuICAgIC5wc19fdGh1bWIteSxcbiAgICAucHNfX3RodW1iLXgge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcHMtYmc7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGJvcmRlci1yYWRpdXMtcm91bmQpO1xuICAgIH1cbiAgICAucHNfX3RodW1iLXkge1xuICAgICAgICB3aWR0aDogJHBzLXNpemU7XG4gICAgICAgIHJpZ2h0OiAkcHMtZ2FwO1xuICAgIH1cbiAgICAucHNfX3RodW1iLXgge1xuICAgICAgICBoZWlnaHQ6ICRwcy1zaXplO1xuICAgICAgICBib3R0b206ICRwcy1nYXA7XG4gICAgfVxuXG5cbiAgICAvL1xuICAgIC8vIE1TIHN1cHBvcnRzXG4gICAgLy9cblxuICAgIEBzdXBwb3J0cyAoLW1zLW92ZXJmbG93LXN0eWxlOiBub25lKSB7XG4gICAgICAgIC5wcyB7XG4gICAgICAgICAgICBvdmVyZmxvdzogYXV0byAhaW1wb3J0YW50O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKC1tcy1oaWdoLWNvbnRyYXN0OiBhY3RpdmUpLCAoLW1zLWhpZ2gtY29udHJhc3Q6IG5vbmUpIHtcbiAgICAgICAgLnBzIHtcbiAgICAgICAgICAgIG92ZXJmbG93OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICB9XG59XG4iLCIvKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbipcbiogICMgRmxvYXRpbmcgYWN0aW9uIGJ1dHRvbnNcbipcbiogIFN0eWxlcyBmb3IgZmFiLm1pbi5qcyAtIG1hdGVyaWFsIGRlc2lnbiBmbG9hdGluZyBhY3Rpb24gYnV0dG9uIHdpdGggbWVudVxuKlxuKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5cbi8vIENoZWNrIGlmIGNvbXBvbmVudCBpcyBlbmFibGVkXG5AaWYgJGVuYWJsZS1mYWIge1xuXG4gICAgLy8gQmFzZVxuICAgIC5mYWItbWVudSB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgICAgIHotaW5kZXg6ICgkemluZGV4LWZpeGVkIC0gMSk7XG4gICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMC44NSk7XG5cbiAgICAgICAgLy8gSW5zaWRlIHBhZ2UgaGVhZGVyXG4gICAgICAgIC5wYWdlLWhlYWRlciA+ICYge1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgYm90dG9tOiAtKCRmYWItbWFpbi1idG4tc2l6ZSAvIDIpO1xuICAgICAgICB9XG5cbiAgICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChtZCkge1xuICAgICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxKTtcbiAgICAgICAgfVxuICAgIH1cblxuXG4gICAgLy9cbiAgICAvLyBQb3NpdGlvbnNcbiAgICAvL1xuXG4gICAgLy8gQWJzb2x1dGVcbiAgICAuZmFiLW1lbnUtYWJzb2x1dGUge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgfVxuXG4gICAgLy8gRml4ZWRcbiAgICAuZmFiLW1lbnUtZml4ZWQge1xuICAgICAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgICAgIHotaW5kZXg6ICR6aW5kZXgtZml4ZWQ7XG4gICAgfVxuXG5cbiAgICAvL1xuICAgIC8vIEJ1dHRvbiBwbGFjZW1lbnRzXG4gICAgLy9cblxuICAgICAvLyBUb3AgcGxhY2VtZW50XG4gICAgLmZhYi1tZW51LXRvcC1sZWZ0LFxuICAgIC5mYWItbWVudS10b3AtcmlnaHQsIHtcblxuICAgICAgICAvLyBUb3Agc3BhY2luZ1xuICAgICAgICAuY29udGVudC13cmFwcGVyID4gJiB7XG4gICAgICAgICAgICB0b3A6IC0oJGZhYi1tYWluLWJ0bi1zaXplIC8gMik7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBCb3R0b20gcGxhY2VtZW50XG4gICAgLmZhYi1tZW51LWJvdHRvbS1sZWZ0LFxuICAgIC5mYWItbWVudS1ib3R0b20tcmlnaHQge1xuICAgICAgICBib3R0b206ICRzcGFjZXI7XG4gICAgICAgIHRyYW5zaXRpb246IGJvdHRvbSBlYXNlLWluLW91dCAkY29tcG9uZW50LXRyYW5zaXRpb24tdGltZXI7XG4gICAgICAgIFxuICAgICAgICAvLyBLZWVwIHNwYWNlIGZvciBmb290ZXJcbiAgICAgICAgJi5yZWFjaGVkLWJvdHRvbSB7XG4gICAgICAgICAgICBib3R0b206ICRuYXYtbGluay1oZWlnaHQgKyByZW0tY2FsYygkbmF2YmFyLWJvcmRlci13aWR0aCAqIDIpICsgKCRzcGFjZXIgKiAyKTtcbiAgICAgICAgfVxuICAgIH1cbiAgICBcbiAgICAvLyBSaWdodCBwbGFjZW1lbnRcbiAgICAuZmFiLW1lbnUtdG9wLXJpZ2h0LFxuICAgIC5mYWItbWVudS1ib3R0b20tcmlnaHQge1xuICAgICAgICByaWdodDogJGZhYi1ndXR0ZXIteDtcbiAgICB9XG5cblxuICAgIC8vXG4gICAgLy8gSW5uZXIgbWVudVxuICAgIC8vXG5cbiAgICAuZmFiLW1lbnUtaW5uZXIge1xuICAgICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgICAgLy8gTWVudSBpdGVtc1xuICAgICAgICA+IGxpIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgdG9wOiAkZmFiLWJ0bi1nYXA7XG4gICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICBwYWRkaW5nLXRvcDogJGZhYi1pbm5lci1idG4tc3BhY2luZztcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IC0oJGZhYi1pbm5lci1idG4tc3BhY2luZyk7XG5cbiAgICAgICAgICAgIC8vIFJlbW92ZSBib3JkZXIgZnJvbSBidXR0b25zXG4gICAgICAgICAgICAuYnRuIHtcbiAgICAgICAgICAgICAgICBib3JkZXItd2lkdGg6IDA7XG4gICAgICAgICAgICAgICAgYm94LXNoYWRvdzogJHNoYWRvdy1kZXB0aDE7XG5cbiAgICAgICAgICAgICAgICAvLyBTdGF0ZXMgc2hhZG93XG4gICAgICAgICAgICAgICAgJjpob3ZlcixcbiAgICAgICAgICAgICAgICAmOmZvY3VzLFxuICAgICAgICAgICAgICAgICYuZm9jdXMsXG4gICAgICAgICAgICAgICAgJjpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKTphY3RpdmUsXG4gICAgICAgICAgICAgICAgJjpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5hY3RpdmUge1xuICAgICAgICAgICAgICAgICAgICBib3gtc2hhZG93OiAkc2hhZG93LWRlcHRoMiAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLy8gTWFrZSBidXR0b25zIHNtYWxsZXIgdGhhbiBtYWluIG9uZVxuICAgICAgICAgICAgLmJ0bi1mbG9hdCB7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICAgICAgICB3aWR0aDogJGZhYi1pbm5lci1idG4tc2l6ZTtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6ICRmYWItaW5uZXItYnRuLXNpemU7XG5cbiAgICAgICAgICAgICAgICAvLyBJY29uIHNwYWNpbmdcbiAgICAgICAgICAgICAgICA+IGkge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW46ICgkYnRuLWZsb2F0LXBhZGRpbmcgLSAkZmFiLWJ0bi1nYXApO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLy8gS2VlcCBzaGFkb3cgZm9yIG9wZW5lZCBkcm9wZG93biB0b2dnbGVcbiAgICAgICAgICAgIC5zaG93ID4gLmJ0bi1mbG9hdC5kcm9wZG93bi10b2dnbGUge1xuICAgICAgICAgICAgICAgIGJveC1zaGFkb3c6ICRzaGFkb3ctZGVwdGgyO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAvLyBMZWZ0IGFuZCByaWdodCBtZW51c1xuICAgICAgICAgICAgLmRyb3BsZWZ0LFxuICAgICAgICAgICAgLmRyb3ByaWdodCB7XG4gICAgICAgICAgICAgICAgLmJ0bjpiZWZvcmUsXG4gICAgICAgICAgICAgICAgLmJ0bjphZnRlciB7XG4gICAgICAgICAgICAgICAgICAgIGNvbnRlbnQ6IG5vbmU7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG5cbiAgICAgICAgICAgIC8vXG4gICAgICAgICAgICAvLyBCYWRnZXMgYW5kIGJhZGdlIG1hcmtzXG4gICAgICAgICAgICAvL1xuXG4gICAgICAgICAgICAvLyBCYXNlXG4gICAgICAgICAgICAuYmFkZ2Uge1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICB0b3A6ICgkZmFiLWlubmVyLWJ0bi1zcGFjaW5nIC0gKCRmYWItYmFkZ2Utc3BhY2VyLXkgKiAyKSk7XG4gICAgICAgICAgICAgICAgcmlnaHQ6IC0oJGZhYi1iYWRnZS1zcGFjZXIteCk7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC8vIEJhZGdlIG1hcmtzXG4gICAgICAgICAgICAuYmFkZ2UtbWFyayB7XG4gICAgICAgICAgICAgICAgdG9wOiAoJGZhYi1pbm5lci1idG4tc3BhY2luZyAtICRmYWItYmFkZ2Utc3BhY2VyLXkgKyAoJGJhZGdlLW1hcmstc2l6ZSAvIDIpKTtcbiAgICAgICAgICAgICAgICByaWdodDogLSgkZmFiLWJhZGdlLXNwYWNlci14IC0gKCRiYWRnZS1tYXJrLXNpemUgLyAyKSk7XG4gICAgICAgICAgICB9XG5cblxuICAgICAgICAgICAgLy9cbiAgICAgICAgICAgIC8vIENoYW5nZSBhcHBlYXJhbmNlIGluIGJvdHRvbSBwb3NpdGlvblxuICAgICAgICAgICAgLy9cblxuICAgICAgICAgICAgLmZhYi1tZW51LWJvdHRvbS1sZWZ0ICYsXG4gICAgICAgICAgICAuZmFiLW1lbnUtYm90dG9tLXJpZ2h0ICYge1xuICAgICAgICAgICAgICAgIHBhZGRpbmctdG9wOiAwO1xuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICAgICAgICAgICAgcGFkZGluZy1ib3R0b206ICRmYWItaW5uZXItYnRuLXNwYWNpbmc7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogLSgkZmFiLWlubmVyLWJ0bi1zcGFjaW5nKTtcblxuICAgICAgICAgICAgICAgIC8vIEJhZGdlc1xuICAgICAgICAgICAgICAgIC5iYWRnZSB7XG4gICAgICAgICAgICAgICAgICAgIHRvcDogLSgkZmFiLWJhZGdlLXNwYWNlci15ICogMik7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgLy8gQmFkZ2UgbWFya3NcbiAgICAgICAgICAgICAgICAuYmFkZ2UtbWFyayB7XG4gICAgICAgICAgICAgICAgICAgIHRvcDogKCRmYWItYmFkZ2Utc3BhY2VyLXkgLSAoJGJhZGdlLW1hcmstc2l6ZSAvIDIpKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cblxuICAgIC8vXG4gICAgLy8gTWFpbiBidXR0b25cbiAgICAvL1xuXG4gICAgLy8gQmFzZVxuICAgIC5mYWItbWVudS1idG4ge1xuICAgICAgICB6LWluZGV4OiAoJHppbmRleC1maXhlZCArIDEpO1xuICAgICAgICBib3JkZXItd2lkdGg6IDA7XG4gICAgICAgIGJveC1zaGFkb3c6ICRzaGFkb3ctZGVwdGgxO1xuXG4gICAgICAgIC8vIEZsb2F0IGJ1dHRvbiBvdmVycmlkZXNcbiAgICAgICAgJi5idG4tZmxvYXQge1xuICAgICAgICAgICAgcGFkZGluZzogKCRmYWItbWFpbi1idG4tc2l6ZSAvIDIpO1xuXG4gICAgICAgICAgICAvLyBJY29uc1xuICAgICAgICAgICAgPiBpIHtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgdG9wOiA1MCU7XG4gICAgICAgICAgICAgICAgbGVmdDogNTAlO1xuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IC0oJGljb24tZm9udC1zaXplIC8gMik7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IC0oJGljb24tZm9udC1zaXplIC8gMik7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAvLyBCdXR0b24gc2hhZG93XG4gICAgICAgICY6aG92ZXIsXG4gICAgICAgICY6Zm9jdXMsXG4gICAgICAgICY6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCk6YWN0aXZlLFxuICAgICAgICAmOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpLmFjdGl2ZSxcbiAgICAgICAgJjpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKTphY3RpdmU6Zm9jdXMsXG4gICAgICAgIC5mYWItbWVudVtkYXRhLWZhYi10b2dnbGU9XCJob3ZlclwiXTpob3ZlciAmLFxuICAgICAgICAuZmFiLW1lbnVbZGF0YS1mYWItc3RhdGU9XCJvcGVuXCJdICYge1xuICAgICAgICAgICAgYm94LXNoYWRvdzogJHNoYWRvdy1kZXB0aDI7XG4gICAgICAgIH1cblxuICAgICAgICAvLyBTaG93IHNoYWRvdyBpbiBkaXNhYmxlZCBzdGF0ZVxuICAgICAgICAmOmRpc2FibGVkLFxuICAgICAgICAmLmRpc2FibGVkIHtcbiAgICAgICAgICAgYm94LXNoYWRvdzogJHNoYWRvdy1kZXB0aDE7IFxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLy8gQW5pbWF0aW9uXG4gICAgLmZhYi1pY29uLWNsb3NlLFxuICAgIC5mYWItaWNvbi1vcGVuIHtcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKTtcbiAgICAgICAgdHJhbnNpdGlvbjogYWxsIGVhc2UtaW4tb3V0ICgkY29tcG9uZW50LXRyYW5zaXRpb24tdGltZXIgKiAyKTtcblxuICAgICAgICAvLyBSZXZlcnNlIHJvdGF0aW9uIGlmIGFjdGl2ZVxuICAgICAgICAuZmFiLW1lbnVbZGF0YS1mYWItdG9nZ2xlPVwiaG92ZXJcIl06aG92ZXIgJixcbiAgICAgICAgLmZhYi1tZW51W2RhdGEtZmFiLXN0YXRlPVwib3BlblwiXSAmIHtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDBkZWcpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLy8gT3BlbiBpY29uXG4gICAgLmZhYi1pY29uLW9wZW4ge1xuICAgICAgICAuZmFiLW1lbnVbZGF0YS1mYWItdG9nZ2xlPVwiaG92ZXJcIl06aG92ZXIgJixcbiAgICAgICAgLmZhYi1tZW51W2RhdGEtZmFiLXN0YXRlPVwib3BlblwiXSAmIHtcbiAgICAgICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBDbG9zZSBpY29uXG4gICAgLmZhYi1pY29uLWNsb3NlIHtcbiAgICAgICAgb3BhY2l0eTogMDtcblxuICAgICAgICAvLyBEaXNwbGF5IGlmIGFjdGl2ZVxuICAgICAgICAuZmFiLW1lbnVbZGF0YS1mYWItdG9nZ2xlPVwiaG92ZXJcIl06aG92ZXIgJixcbiAgICAgICAgLmZhYi1tZW51W2RhdGEtZmFiLXN0YXRlPVwib3BlblwiXSAmIHtcbiAgICAgICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgIH1cbiAgICB9XG5cblxuICAgIC8vXG4gICAgLy8gSW5uZXIgbWVudSBhbmltYXRpb25cbiAgICAvL1xuXG4gICAgLy8gQmFzZVxuICAgIC5mYWItbWVudSB7XG5cbiAgICAgICAgLy8gSGlkZSBpdGVtc1xuICAgICAgICAuZmFiLW1lbnUtaW5uZXIgPiBsaSB7XG4gICAgICAgICAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICAgICAgdHJhbnNpdGlvbjogYWxsIGVhc2UtaW4tb3V0ICgkY29tcG9uZW50LXRyYW5zaXRpb24tdGltZXIgKiAyKTtcblxuICAgICAgICAgICAgLy8gSXRlbXMgbnVtYmVyXG4gICAgICAgICAgICAmOm50aC1jaGlsZCgxKSB7XG4gICAgICAgICAgICAgICAgdHJhbnNpdGlvbi1kZWxheTogMC4wNXM7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAmOm50aC1jaGlsZCgyKSB7XG4gICAgICAgICAgICAgICAgdHJhbnNpdGlvbi1kZWxheTogMC4xcztcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgICY6bnRoLWNoaWxkKDMpIHtcbiAgICAgICAgICAgICAgICB0cmFuc2l0aW9uLWRlbGF5OiAwLjE1cztcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgICY6bnRoLWNoaWxkKDQpIHtcbiAgICAgICAgICAgICAgICB0cmFuc2l0aW9uLWRlbGF5OiAwLjJzO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgJjpudGgtY2hpbGQoNSkge1xuICAgICAgICAgICAgICAgIHRyYW5zaXRpb24tZGVsYXk6IDAuMjVzO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLy8gU2hvdyBpdGVtc1xuICAgICAgICAmW2RhdGEtZmFiLXRvZ2dsZT1cImhvdmVyXCJdOmhvdmVyLFxuICAgICAgICAmW2RhdGEtZmFiLXN0YXRlPVwib3BlblwiXSB7XG4gICAgICAgICAgICAuZmFiLW1lbnUtaW5uZXIgPiBsaSB7XG4gICAgICAgICAgICAgICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgICAgICAgICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLy8gVG9wIHBvc2l0aW9uXG4gICAgLmZhYi1tZW51LXRvcCxcbiAgICAuZmFiLW1lbnUtdG9wLWxlZnQsXG4gICAgLmZhYi1tZW51LXRvcC1yaWdodCB7XG4gICAgICAgICZbZGF0YS1mYWItdG9nZ2xlPVwiaG92ZXJcIl06aG92ZXIsXG4gICAgICAgICZbZGF0YS1mYWItc3RhdGU9XCJvcGVuXCJdIHtcbiAgICAgICAgICAgIC5mYWItbWVudS1pbm5lciA+IGxpIHtcbiAgICAgICAgICAgICAgICAmOm50aC1jaGlsZCgxKSB7XG4gICAgICAgICAgICAgICAgICAgIHRvcDogKCRmYWItaW5uZXItYnRuLXNpemUgKyAkZmFiLWlubmVyLWJ0bi1zcGFjaW5nKSArICgkZmFiLWJ0bi1nYXAgKiAyKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgJjpudGgtY2hpbGQoMikge1xuICAgICAgICAgICAgICAgICAgICB0b3A6ICgoJGZhYi1pbm5lci1idG4tc2l6ZSArICRmYWItaW5uZXItYnRuLXNwYWNpbmcpICogMikgKyAoJGZhYi1idG4tZ2FwICogMik7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICY6bnRoLWNoaWxkKDMpIHtcbiAgICAgICAgICAgICAgICAgICAgdG9wOiAoKCRmYWItaW5uZXItYnRuLXNpemUgKyAkZmFiLWlubmVyLWJ0bi1zcGFjaW5nKSAqIDMpICsgKCRmYWItYnRuLWdhcCAqIDIpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAmOm50aC1jaGlsZCg0KSB7XG4gICAgICAgICAgICAgICAgICAgIHRvcDogKCgkZmFiLWlubmVyLWJ0bi1zaXplICsgJGZhYi1pbm5lci1idG4tc3BhY2luZykgKiA0KSArICgkZmFiLWJ0bi1nYXAgKiAyKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgJjpudGgtY2hpbGQoNSkge1xuICAgICAgICAgICAgICAgICAgICB0b3A6ICgoJGZhYi1pbm5lci1idG4tc2l6ZSArICRmYWItaW5uZXItYnRuLXNwYWNpbmcpICogNSkgKyAoJGZhYi1idG4tZ2FwICogMik7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLy8gQm90dG9tIHBvc2l0aW9uXG4gICAgLmZhYi1tZW51LWJvdHRvbSxcbiAgICAuZmFiLW1lbnUtYm90dG9tLWxlZnQsXG4gICAgLmZhYi1tZW51LWJvdHRvbS1yaWdodCB7XG4gICAgICAgICZbZGF0YS1mYWItdG9nZ2xlPVwiaG92ZXJcIl06aG92ZXIsXG4gICAgICAgICZbZGF0YS1mYWItc3RhdGU9XCJvcGVuXCJdIHtcbiAgICAgICAgICAgIC5mYWItbWVudS1pbm5lciA+IGxpIHtcbiAgICAgICAgICAgICAgICAmOm50aC1jaGlsZCgxKSB7XG4gICAgICAgICAgICAgICAgICAgIHRvcDogLSgkZmFiLWlubmVyLWJ0bi1zaXplICsgJGZhYi1pbm5lci1idG4tc3BhY2luZykgKyAoJGZhYi1idG4tZ2FwICogMik7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICY6bnRoLWNoaWxkKDIpIHtcbiAgICAgICAgICAgICAgICAgICAgdG9wOiAtKCgkZmFiLWlubmVyLWJ0bi1zaXplICsgJGZhYi1pbm5lci1idG4tc3BhY2luZykgKiAyKSArICgkZmFiLWJ0bi1nYXAgKiAyKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgJjpudGgtY2hpbGQoMykge1xuICAgICAgICAgICAgICAgICAgICB0b3A6IC0oKCRmYWItaW5uZXItYnRuLXNpemUgKyAkZmFiLWlubmVyLWJ0bi1zcGFjaW5nKSAqIDMpICsgKCRmYWItYnRuLWdhcCAqIDIpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAmOm50aC1jaGlsZCg0KSB7XG4gICAgICAgICAgICAgICAgICAgIHRvcDogLSgoJGZhYi1pbm5lci1idG4tc2l6ZSArICRmYWItaW5uZXItYnRuLXNwYWNpbmcpICogNCkgKyAoJGZhYi1idG4tZ2FwICogMik7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICY6bnRoLWNoaWxkKDUpIHtcbiAgICAgICAgICAgICAgICAgICAgdG9wOiAtKCgkZmFiLWlubmVyLWJ0bi1zaXplICsgJGZhYi1pbm5lci1idG4tc3BhY2luZykgKiA1KSArICgkZmFiLWJ0bi1nYXAgKiAyKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cblxuICAgIC8vXG4gICAgLy8gSXRlbSBsYWJlbHNcbiAgICAvL1xuXG4gICAgLmZhYi1tZW51LWlubmVyIGRpdltkYXRhLWZhYi1sYWJlbF0ge1xuXG4gICAgICAgIC8vIEJhc2VcbiAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICBjb250ZW50OiBhdHRyKGRhdGEtZmFiLWxhYmVsKTtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIHRvcDogNTAlO1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogLSgkdG9vbHRpcC1wYWRkaW5nLXkpO1xuICAgICAgICAgICAgcmlnaHQ6ICgkZmFiLWJ0bi1nYXAgKyAkZmFiLWlubmVyLWJ0bi1zaXplICsgJGZhYi1ndXR0ZXIteCk7XG4gICAgICAgICAgICBjb2xvcjogJHRvb2x0aXAtY29sb3I7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdG9vbHRpcC1iZztcbiAgICAgICAgICAgIHBhZGRpbmc6ICR0b29sdGlwLXBhZGRpbmcteSAkdG9vbHRpcC1wYWRkaW5nLXg7XG4gICAgICAgICAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICAgICAgYm94LXNoYWRvdzogJHNoYWRvdy1kZXB0aDE7XG4gICAgICAgICAgICB0cmFuc2l0aW9uOiBhbGwgZWFzZS1pbi1vdXQgKCRjb21wb25lbnQtdHJhbnNpdGlvbi10aW1lciAqIDIpO1xuICAgICAgICAgICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkYm9yZGVyLXJhZGl1cyk7XG5cbiAgICAgICAgICAgIC8vIFJlcG9zaXRpb24gdGhlbSBpbiBib3R0b20gcG9zaXRpb25cbiAgICAgICAgICAgIC5mYWItbWVudS1ib3R0b20tbGVmdCAmLFxuICAgICAgICAgICAgLmZhYi1tZW51LWJvdHRvbS1yaWdodCAmIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAtKCR0b29sdGlwLXBhZGRpbmcteSArICRmYWItaW5uZXItYnRuLXNwYWNpbmcpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLy8gUGxhY2VtZW50XG4gICAgICAgIC5mYWItbWVudS10b3AtbGVmdCAmOmFmdGVyLFxuICAgICAgICAuZmFiLW1lbnUtYm90dG9tLWxlZnQgJjphZnRlcixcbiAgICAgICAgJi5mYWItbGFiZWwtcmlnaHQ6YWZ0ZXIge1xuICAgICAgICAgICAgcmlnaHQ6IGF1dG87XG4gICAgICAgICAgICBsZWZ0OiAoJGZhYi1idG4tZ2FwICsgJGZhYi1pbm5lci1idG4tc2l6ZSArICRmYWItZ3V0dGVyLXgpO1xuICAgICAgICB9XG5cbiAgICAgICAgLy8gRGlzcGxheSBsYWJlbHNcbiAgICAgICAgLmZhYi1tZW51W2RhdGEtZmFiLXRvZ2dsZT1cImhvdmVyXCJdICY6aG92ZXI6YWZ0ZXIsXG4gICAgICAgIC5mYWItbWVudVtkYXRhLWZhYi1zdGF0ZT1cIm9wZW5cIl0gJjpob3ZlcjphZnRlciB7XG4gICAgICAgICAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICAgICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgfVxuXG4gICAgICAgIC8vIExpZ2h0IGxhYmVsXG4gICAgICAgICYuZmFiLWxhYmVsLWxpZ2h0OmFmdGVyIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRmYWItbGFiZWwtbGlnaHQtYmc7XG4gICAgICAgICAgICBjb2xvcjogJGZhYi1sYWJlbC1saWdodC1jb2xvcjtcbiAgICAgICAgfVxuXG4gICAgICAgIC8vIEFsd2F5cyB2aXNpYmxlXG4gICAgICAgICYuZmFiLWxhYmVsLXZpc2libGU6YWZ0ZXIge1xuICAgICAgICAgICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgICAgICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgIH1cbiAgICB9XG5cblxuXG4gICAgLy8gTGF5b3V0IHNwZWNpZmljIGFkZGl0aW9uc1xuICAgIC8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4gICAgLy9cbiAgICAvLyAjIExheW91dCA1XG4gICAgLy9cblxuICAgIEBpZiAkbGF5b3V0ID09ICdsYXlvdXRfNScge1xuXG4gICAgICAgIC8vIExlZnQgcGxhY2VtZW50XG4gICAgICAgIC5mYWItbWVudS10b3AtbGVmdCxcbiAgICAgICAgLmZhYi1tZW51LWJvdHRvbS1sZWZ0IHtcbiAgICAgICAgICAgIGxlZnQ6ICRmYWItZ3V0dGVyLXg7XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobWQpIHtcbiAgICAgICAgICAgICAgICBsZWZ0OiAoKCgkcGFnZS1jb250YWluZXItcGFkZGluZy14IC8gMikgLSAkZmFiLW1haW4tYnRuLXNpemUpIC8gMikgKyAkY29udGVudC1jb250YWluZXItcGFkZGluZy14O1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCh4bCkge1xuICAgICAgICAgICAgICAgIGxlZnQ6ICgoJHBhZ2UtY29udGFpbmVyLXBhZGRpbmcteCAtICRmYWItbWFpbi1idG4tc2l6ZSkgLyAyKSArICRjb250ZW50LWNvbnRhaW5lci1wYWRkaW5nLXg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIC8vIFJpZ2h0IHBsYWNlbWVudFxuICAgICAgICAuZmFiLW1lbnUtdG9wLXJpZ2h0LFxuICAgICAgICAuZmFiLW1lbnUtYm90dG9tLXJpZ2h0IHtcbiAgICAgICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobWQpIHtcbiAgICAgICAgICAgICAgICByaWdodDogKCgoJHBhZ2UtY29udGFpbmVyLXBhZGRpbmcteCAvIDIpIC0gJGZhYi1tYWluLWJ0bi1zaXplKSAvIDIpICsgJGNvbnRlbnQtY29udGFpbmVyLXBhZGRpbmcteDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoeGwpIHtcbiAgICAgICAgICAgICAgICByaWdodDogKCgkcGFnZS1jb250YWluZXItcGFkZGluZy14IC0gJGZhYi1tYWluLWJ0bi1zaXplKSAvIDIpICsgJGNvbnRlbnQtY29udGFpbmVyLXBhZGRpbmcteDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cbiIsIi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuKlxuKiAgIyBGYW5jeXRyZWVcbipcbiogIFN0eWxlcyBmb3IgZmFuY3l0cmVlX2FsbC5taW4uanMgLSB0cmVlIHBsdWdpbiBmb3IgalF1ZXJ5XG4qXG4qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cblxuLy8gQ2hlY2sgaWYgY29tcG9uZW50IGlzIGVuYWJsZWRcbkBpZiAkZW5hYmxlLWZhbmN5dHJlZSB7XG5cblxuICAgIC8vIEJhc2VcbiAgICAvLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuICAgIC8vIENvbnRhaW5lclxuICAgIC5mYW5jeXRyZWUtY29udGFpbmVyIHtcbiAgICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICBvdmVyZmxvdzogYXV0bztcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgICAgIC8vIFJlbW92ZSBvdXRsaW5lIG9uIGZvY3VzXG4gICAgICAgICY6Zm9jdXMge1xuICAgICAgICAgICAgb3V0bGluZTogMDtcbiAgICAgICAgfVxuXG4gICAgICAgIC8vIExpc3RcbiAgICAgICAgdWwge1xuICAgICAgICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogJGljb24tZm9udC1zaXplO1xuICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICB9XG5cbiAgICAgICAgLy8gRGlzYWJsZWQgc3RhdGVcbiAgICAgICAgLnVpLWZhbmN5dHJlZS1kaXNhYmxlZCAmIHtcbiAgICAgICAgICAgIG9wYWNpdHk6IDAuNjtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8vIERpc2FibGVkIHN0YXRlXG4gICAgLnVpLWZhbmN5dHJlZS1kaXNhYmxlZCB7XG4gICAgICAgIC5mYW5jeXRyZWUtY29udGFpbmVyLFxuICAgICAgICAuZmFuY3l0cmVlLXRpdGxlLFxuICAgICAgICAuZmFuY3l0cmVlLWV4cGFuZGVyIHtcbiAgICAgICAgICAgIGN1cnNvcjogJGN1cnNvci1kaXNhYmxlZDtcbiAgICAgICAgfVxuXG4gICAgICAgIC5mYW5jeXRyZWUtdHJlZWZvY3VzIC5mYW5jeXRyZWUtc2VsZWN0ZWQgLmZhbmN5dHJlZS10aXRsZSB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZmFuY3l0cmVlLW5vZGUtc2VsZWN0ZWQtYmc7XG4gICAgICAgICAgICBjb2xvcjogJGZhbmN5dHJlZS1ub2RlLXNlbGVjdGVkLWNvbG9yO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLy8gR2l2ZSBpY29ucyBjb21tb24gYmFzZVxuICAgIC5mYW5jeXRyZWUtZXhwYW5kZXI6YWZ0ZXIsXG4gICAgLmZhbmN5dHJlZS1pY29uOmFmdGVyLFxuICAgIC5mYW5jeXRyZWUtY2hlY2tib3g6YWZ0ZXIsXG4gICAgLmZhbmN5dHJlZS1kcmFnLWhlbHBlci1pbWc6YWZ0ZXIsXG4gICAgLmZhbmN5dHJlZS1kcm9wLWJlZm9yZTphZnRlcixcbiAgICAuZmFuY3l0cmVlLWRyb3AtYWZ0ZXI6YWZ0ZXIsXG4gICAgLmZhbmN5dHJlZS1sb2FkaW5nIC5mYW5jeXRyZWUtZXhwYW5kZXI6YWZ0ZXIsXG4gICAgLmZhbmN5dHJlZS1zdGF0dXNub2RlLXdhaXQgLmZhbmN5dHJlZS1pY29uOmFmdGVyIHtcbiAgICAgICAgZm9udC1mYW1pbHk6ICRpY29uLWZvbnQtZmFtaWx5O1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIGZvbnQtc2l6ZTogJGljb24tZm9udC1zaXplO1xuICAgICAgICBsaW5lLWhlaWdodDogMTtcbiAgICAgICAgdmVydGljYWwtYWxpZ246IHRvcDtcbiAgICAgICAgQGluY2x1ZGUgbGwtZm9udC1zbW9vdGhpbmcoKTtcbiAgICB9XG5cblxuICAgIC8vXG4gICAgLy8gQ29tbW9uIGljb24gZGVmaW5pdGlvbnNcbiAgICAvL1xuXG4gICAgLy8gQmFzZVxuICAgIC5mYW5jeXRyZWUtaWNvbixcbiAgICAuZmFuY3l0cmVlLWN1c3RvbS1pY29uLFxuICAgIC5mYW5jeXRyZWUtZXhwYW5kZXIge1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAkZmFuY3l0cmVlLW5vZGUtcGFkZGluZy14O1xuICAgICAgICBtYXJnaW4tdG9wOiAoJGxpbmUtaGVpZ2h0LWNvbXB1dGVkICsgKCRmYW5jeXRyZWUtbm9kZS1wYWRkaW5nLXkgKiAyKSAtICRpY29uLWZvbnQtc2l6ZSkgLyAyO1xuICAgICAgICBAaW5jbHVkZSBzaXplKCRpY29uLWZvbnQtc2l6ZSk7XG4gICAgfVxuXG4gICAgLy8gQ2hlY2tib3hlc1xuICAgIC5mYW5jeXRyZWUtY2hlY2tib3gge1xuICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuICAgICAgICBtYXJnaW4tdG9wOiAoJGxpbmUtaGVpZ2h0LWNvbXB1dGVkICsgKCRmYW5jeXRyZWUtbm9kZS1wYWRkaW5nLXkgKiAyKSAtICRjaGVja2JveC1zaXplKSAvIDI7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAkZmFuY3l0cmVlLW5vZGUtcGFkZGluZy14O1xuICAgIH1cblxuICAgIC8vIFVzZWQgYnkgJ2ljb24nIG5vZGUgb3B0aW9uXG4gICAgaW1nLmZhbmN5dHJlZS1pY29uIHtcbiAgICAgICAgYm9yZGVyOiAwO1xuICAgIH1cblxuXG5cbiAgICAvL1xuICAgIC8vIEV4cGFuZGVyIGljb25cbiAgICAvL1xuICAgIC8vIFByZWZpeDogZmFuY3l0cmVlLWV4cC1cbiAgICAvLyAxc3QgY2hhcmFjdGVyOiAnZSc6IGV4cGFuZGVkLCAnYyc6IGNvbGxhcHNlZCwgJ24nOiBubyBjaGlsZHJlblxuICAgIC8vIDJuZCBjaGFyYWN0ZXIgKG9wdGlvbmFsKTogJ2QnOiBsYXp5IChEZWxheWVkKVxuICAgIC8vIDNyZCBjaGFyYWN0ZXIgKG9wdGlvbmFsKTogJ2wnOiBMYXN0IHNpYmxpbmdcbiAgICAvLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbiAgICAvLyBJY29uc1xuICAgIC5mYW5jeXRyZWUtZXhwYW5kZXIge1xuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG5cbiAgICAgICAgLmZhbmN5dHJlZS1leHAtYyAmOmFmdGVyIHtcbiAgICAgICAgICAgIGNvbnRlbnQ6ICdcXGU5YzcnO1xuICAgICAgICB9XG4gICAgICAgIC5mYW5jeXRyZWUtZXhwLWNsICY6YWZ0ZXIge1xuICAgICAgICAgICAgY29udGVudDogJ1xcZTljNyc7XG4gICAgICAgIH1cbiAgICAgICAgLmZhbmN5dHJlZS1leHAtY2QgJjphZnRlcixcbiAgICAgICAgLmZhbmN5dHJlZS1leHAtY2RsICY6YWZ0ZXIge1xuICAgICAgICAgICAgY29udGVudDogJ1xcZTljNyc7XG4gICAgICAgIH1cbiAgICAgICAgLmZhbmN5dHJlZS1leHAtZSAmOmFmdGVyLFxuICAgICAgICAuZmFuY3l0cmVlLWV4cC1lZCAmOmFmdGVyIHtcbiAgICAgICAgICAgIGNvbnRlbnQ6ICdcXGU5YzUnO1xuICAgICAgICB9XG4gICAgICAgIC5mYW5jeXRyZWUtZXhwLWVsICY6YWZ0ZXIsXG4gICAgICAgIC5mYW5jeXRyZWUtZXhwLWVkbCAmOmFmdGVyIHtcbiAgICAgICAgICAgIGNvbnRlbnQ6ICdcXGU5YzUnO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLy8gU3RhdHVzIG5vZGUgaWNvbnNcbiAgICAuZmFuY3l0cmVlLXN0YXR1c25vZGUtZXJyb3IgLmZhbmN5dHJlZS1pY29uOmFmdGVyIHtcbiAgICAgICAgY29udGVudDogJ1xcZWQ2Myc7XG4gICAgfVxuXG4gICAgLy8gTG9hZGluZyBpY29uXG4gICAgLmZhbmN5dHJlZS1sb2FkaW5nIC5mYW5jeXRyZWUtZXhwYW5kZXIsXG4gICAgLmZhbmN5dHJlZS1zdGF0dXNub2RlLXdhaXQgLmZhbmN5dHJlZS1pY29uIHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIEBpbmNsdWRlIHNpemUoJGljb24tZm9udC1zaXplKTtcblxuICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgIGNvbnRlbnQ6ICdcXGVkNmMnO1xuICAgICAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbihhbGwgZWFzZS1pbi1vdXQgJGNvbXBvbmVudC10cmFuc2l0aW9uLXRpbWVyKTtcbiAgICAgICAgfVxuICAgIH1cblxuXG5cbiAgICAvL1xuICAgIC8vICMgTm9kZSB0eXBlIGljb25cbiAgICAvL1xuICAgIC8vIFByZWZpeDogZmFuY3l0cmVlLWljby1cbiAgICAvLyAxc3QgY2hhcmFjdGVyOiAnZSc6IGV4cGFuZGVkLCAnYyc6IGNvbGxhcHNlZCxcbiAgICAvLyAybmQgY2hhcmFjdGVyIChvcHRpb25hbCk6ICdmJzogZm9sZGVyXG4gICAgLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG5cbiAgICAvL1xuICAgIC8vIERvY3VtZW50c1xuICAgIC8vXG5cbiAgICAvLyBJY29uc1xuICAgIC5mYW5jeXRyZWUtaWNvLWMsXG4gICAgLmZhbmN5dHJlZS1pY28tZSB7XG4gICAgICAgIC5mYW5jeXRyZWUtaWNvbjphZnRlciB7XG4gICAgICAgICAgICBjb250ZW50OiAnXFxlYTFhJztcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8vIFdpdGggY2hpbGRyZW5cbiAgICAuZmFuY3l0cmVlLWhhcy1jaGlsZHJlbiB7XG4gICAgICAgICYuZmFuY3l0cmVlLWljby1jIC5mYW5jeXRyZWUtaWNvbjphZnRlciB7XG4gICAgICAgICAgICBjb250ZW50OiAnXFxlYTBmJztcbiAgICAgICAgfVxuXG4gICAgICAgICYuZmFuY3l0cmVlLWljby1lIC5mYW5jeXRyZWUtaWNvbjphZnRlciB7XG4gICAgICAgICAgICBjb250ZW50OiAnXFxlYTExJztcbiAgICAgICAgfVxuICAgIH1cblxuXG4gICAgLy9cbiAgICAvLyBGb2xkZXJzXG4gICAgLy9cblxuICAgIC8vIEljb25zXG4gICAgLmZhbmN5dHJlZS1pY28tY2YsXG4gICAgLmZhbmN5dHJlZS1pY28tZWYge1xuICAgICAgICAuZmFuY3l0cmVlLWljb246YWZ0ZXIge1xuICAgICAgICAgICAgY29udGVudDogJ1xcZWEzZCc7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBXaXRoIGNoaWxkcmVuXG4gICAgLmZhbmN5dHJlZS1oYXMtY2hpbGRyZW4ge1xuICAgICAgICAmLmZhbmN5dHJlZS1pY28tY2YgLmZhbmN5dHJlZS1pY29uOmFmdGVyIHtcbiAgICAgICAgICAgIGNvbnRlbnQ6ICdcXGVhNDEnO1xuICAgICAgICB9XG5cbiAgICAgICAgJi5mYW5jeXRyZWUtaWNvLWVmIC5mYW5jeXRyZWUtaWNvbjphZnRlciB7XG4gICAgICAgICAgICBjb250ZW50OiAnXFxlYTQzJztcbiAgICAgICAgfVxuICAgIH1cblxuXG4gICAgLy9cbiAgICAvLyBDaGVja2JveCBpY29uXG4gICAgLy9cblxuICAgIC5mYW5jeXRyZWUtY2hlY2tib3gge1xuICAgICAgICB3aWR0aDogJGNoZWNrYm94LXNpemU7XG4gICAgICAgIGhlaWdodDogJGNoZWNrYm94LXNpemU7XG4gICAgICAgIGJvcmRlcjogJGNoZWNrYm94LWJvcmRlci13aWR0aCBzb2xpZCAkY2hlY2tib3gtY29sb3I7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkYm9yZGVyLXJhZGl1cy1zbSk7XG5cbiAgICAgICAgLy8gQ2hlY2tlciBiYXNlXG4gICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIH1cblxuICAgICAgICAvLyBHcmV5IHNxdWFyZSBpbiBoaWVyYXJjaGljYWwgc2VsZWN0XG4gICAgICAgIC5mYW5jeXRyZWUtcGFydHNlbCAmOmFmdGVyLFxuICAgICAgICAuZmFuY3l0cmVlLXJhZGlvIC5mYW5jeXRyZWUtc2VsZWN0ZWQgJjphZnRlciB7XG4gICAgICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICAgICAgdG9wOiAoKCRjaGVja2JveC1zaXplIC8gMikgLSAkY2hlY2tib3gtYm9yZGVyLXdpZHRoIC0gKCgkY2hlY2tib3gtc2l6ZSAvIDIpIC8gMikpO1xuICAgICAgICAgICAgbGVmdDogKCgkY2hlY2tib3gtc2l6ZSAvIDIpIC0gJGNoZWNrYm94LWJvcmRlci13aWR0aCAtICgoJGNoZWNrYm94LXNpemUgLyAyKSAvIDIpKTtcbiAgICAgICAgICAgIGJvcmRlcjogKCgkY2hlY2tib3gtc2l6ZSAvIDIpIC8gMikgc29saWQ7XG4gICAgICAgICAgICBib3JkZXItY29sb3I6IGluaGVyaXQ7XG4gICAgICAgICAgICB3aWR0aDogMDtcbiAgICAgICAgICAgIGhlaWdodDogMDtcbiAgICAgICAgfVxuXG4gICAgICAgIC8vIEFkZCBpY29uc1xuICAgICAgICAuZmFuY3l0cmVlLXNlbGVjdGVkICY6YWZ0ZXIge1xuICAgICAgICAgICAgY29udGVudDogXCJcXGU2MDBcIjtcbiAgICAgICAgICAgIGJvcmRlcjogMDtcbiAgICAgICAgICAgIHRvcDogKCRjaGVja2JveC1zaXplIC0gJGljb24tZm9udC1zaXplIC0gKCRjaGVja2JveC1ib3JkZXItd2lkdGggKiAyKSkgLyAyO1xuICAgICAgICAgICAgbGVmdDogKCRjaGVja2JveC1zaXplIC0gJGljb24tZm9udC1zaXplIC0gKCRjaGVja2JveC1ib3JkZXItd2lkdGggKiAyKSkgLyAyO1xuICAgICAgICB9XG5cbiAgICAgICAgLy8gUmFkaW8gKHNpbmdsZSBzZWxlY3QgaW1pdGF0aW9uKVxuICAgICAgICAuZmFuY3l0cmVlLXJhZGlvICYsXG4gICAgICAgIC5mYW5jeXRyZWUtcmFkaW8gJjphZnRlciB7XG4gICAgICAgICAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRib3JkZXItcmFkaXVzLWNpcmNsZSk7XG4gICAgICAgIH1cbiAgICB9XG5cblxuXG4gICAgLy8gT3RoZXIgc3R5bGVzXG4gICAgLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbiAgICAvL1xuICAgIC8vIERyYWcnbidkcm9wIHN1cHBvcnRcbiAgICAvL1xuXG4gICAgLy8gSGVscGVyXG4gICAgLmZhbmN5dHJlZS1kcmFnLWhlbHBlciB7XG4gICAgICAgIC5mYW5jeXRyZWUtdGl0bGUge1xuICAgICAgICAgICAgcGFkZGluZy1yaWdodDogKCRmYW5jeXRyZWUtbm9kZS1wYWRkaW5nLXggKiAyKSArICRpY29uLWZvbnQtc2l6ZTtcbiAgICAgICAgICAgIGJvcmRlcjogJGNhcmQtYm9yZGVyLXdpZHRoIHNvbGlkICRib3JkZXItY29sb3I7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgICBvcGFjaXR5OiAwLjg7XG4gICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBEcmFnIGhlbHBlciBpbWFnZVxuICAgIC5mYW5jeXRyZWUtZHJhZy1oZWxwZXItaW1nIHtcbiAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICB0b3A6IDUwJTtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IC0oJGljb24tZm9udC1zaXplIC8gMik7XG4gICAgICAgICAgICByaWdodDogJGZhbmN5dHJlZS1ub2RlLXBhZGRpbmcteDtcbiAgICAgICAgICAgIHotaW5kZXg6IDEwO1xuICAgICAgICB9XG5cbiAgICAgICAgLy8gSWYgYWNjZXB0XG4gICAgICAgIC5mYW5jeXRyZWUtZHJvcC1hY2NlcHQgJjphZnRlciB7XG4gICAgICAgICAgICBjb250ZW50OiAnXFxlZTczJztcbiAgICAgICAgICAgIGNvbG9yOiAkY29sb3Itc3VjY2Vzcy01MDA7XG4gICAgICAgIH1cblxuICAgICAgICAvLyBJZiByZWplY3RcbiAgICAgICAgLmZhbmN5dHJlZS1kcm9wLXJlamVjdCAmOmFmdGVyIHtcbiAgICAgICAgICAgIGNvbnRlbnQ6ICdcXGVkNjMnO1xuICAgICAgICAgICAgY29sb3I6ICRjb2xvci1kYW5nZXItNTAwO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLy8gTWFya2VyIGljb25cbiAgICAjZmFuY3l0cmVlLWRyb3AtbWFya2VyIHtcbiAgICAgICAgJi5mYW5jeXRyZWUtZHJvcC1iZWZvcmUsXG4gICAgICAgICYuZmFuY3l0cmVlLWRyb3AtYWZ0ZXIge1xuICAgICAgICAgICAgd2lkdGg6IDE1cmVtO1xuICAgICAgICAgICAgYm9yZGVyLXRvcDogJGJvcmRlci13aWR0aCBzb2xpZCAkZ3JheS02MDA7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGUgIWltcG9ydGFudDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8vIFNvdXJjZSBub2RlIHdoaWxlIGRyYWdnaW5nXG4gICAgLmZhbmN5dHJlZS1kcmFnLXNvdXJjZSB7XG4gICAgICAgIG9wYWNpdHk6IDAuNTtcbiAgICB9XG5cbiAgICAvLyBUYXJnZXQgbm9kZSB3aGlsZSBkcmFnZ2luZyBjdXJzb3IgaXMgb3ZlciBpdFxuICAgIC5mYW5jeXRyZWUtZHJvcC10YXJnZXQuZmFuY3l0cmVlLWRyb3AtYWNjZXB0IGEge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0aGVtZS1jb2xvcihcInByaW1hcnlcIikgIWltcG9ydGFudDtcbiAgICAgICAgY29sb3I6ICR3aGl0ZSAhaW1wb3J0YW50O1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgfVxuXG5cbiAgICAvL1xuICAgIC8vIFN0eWxlcyBzcGVjaWZpYyB0byB0aGlzIHNraW5cbiAgICAvL1xuXG4gICAgLy8gTm9kZVxuICAgIC5mYW5jeXRyZWUtbm9kZSB7XG4gICAgICAgIGRpc3BsYXk6IGluaGVyaXQ7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDFweDtcbiAgICB9XG5cbiAgICAvLyBUaXRsZVxuICAgIC5mYW5jeXRyZWUtdGl0bGUge1xuICAgICAgICBib3JkZXI6IDA7XG4gICAgICAgIHBhZGRpbmc6ICRmYW5jeXRyZWUtbm9kZS1wYWRkaW5nLXkgJGZhbmN5dHJlZS1ub2RlLXBhZGRpbmcteDtcbiAgICAgICAgbWFyZ2luLWxlZnQ6ICRlbGVtZW50LXNwYWNlci14O1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkYm9yZGVyLXJhZGl1cyk7XG4gICAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oYWxsIGVhc2UtaW4tb3V0ICRjb21wb25lbnQtdHJhbnNpdGlvbi10aW1lcik7XG5cbiAgICAgICAgLy8gRWRpdGFibGUgbm9kZSBpbnB1dFxuICAgICAgICA+IGlucHV0IHtcbiAgICAgICAgICAgIGJvcmRlcjogMDtcbiAgICAgICAgICAgIG91dGxpbmU6IDA7XG4gICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgIH1cblxuICAgICAgICAvLyBTZWxlY3RlZCB0aXRsZVxuICAgICAgICAuZmFuY3l0cmVlLXNlbGVjdGVkICYsXG4gICAgICAgIC5mYW5jeXRyZWUtYWN0aXZlICYge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGZhbmN5dHJlZS1ub2RlLXNlbGVjdGVkLWJnO1xuICAgICAgICAgICAgY29sb3I6ICRmYW5jeXRyZWUtbm9kZS1zZWxlY3RlZC1jb2xvcjtcbiAgICAgICAgfVxuXG4gICAgICAgIC8vIFRpdGxlIHdoZW4gZm9jdXNlZFxuICAgICAgICAuZmFuY3l0cmVlLXRyZWVmb2N1cyAuZmFuY3l0cmVlLXNlbGVjdGVkICYge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGZhbmN5dHJlZS1ub2RlLWFjdGl2ZS1iZztcbiAgICAgICAgICAgIGNvbG9yOiAkZmFuY3l0cmVlLW5vZGUtYWN0aXZlLWNvbG9yO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLy8gSW5zaWRlIGRhcmsgc2lkZWJhclxuICAgIC5zaWRlYmFyOm5vdCguc2lkZWJhci1saWdodCkge1xuICAgICAgICAuZmFuY3l0cmVlLXNlbGVjdGVkIC5mYW5jeXRyZWUtdGl0bGUsXG4gICAgICAgIC5mYW5jeXRyZWUtYWN0aXZlIC5mYW5jeXRyZWUtdGl0bGUge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgkd2hpdGUsIDAuMik7XG4gICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICB9XG5cbiAgICAgICAgLmZhbmN5dHJlZS10cmVlZm9jdXMgLmZhbmN5dHJlZS1zZWxlY3RlZCAuZmFuY3l0cmVlLXRpdGxlIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICAgIGNvbG9yOiAkYm9keS1jb2xvcjtcbiAgICAgICAgfVxuICAgIH1cblxuXG4gICAgLy9cbiAgICAvLyBUYWJsZSBleHRlbnNpb25cbiAgICAvL1xuXG4gICAgLmZhbmN5dHJlZS1leHQtdGFibGUge1xuXG4gICAgICAgIC8vIE5vZGVcbiAgICAgICAgLmZhbmN5dHJlZS1ub2RlIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICB9XG5cbiAgICAgICAgLy8gVGl0bGVcbiAgICAgICAgLmZhbmN5dHJlZS10aXRsZSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmU7XG4gICAgICAgIH1cblxuICAgICAgICAvLyBDb250YWluZXJcbiAgICAgICAgJi5mYW5jeXRyZWUtY29udGFpbmVyIHtcbiAgICAgICAgICAgIHdoaXRlLXNwYWNlOiBub3JtYWw7XG4gICAgICAgIH1cblxuICAgICAgICAvLyBJY29uc1xuICAgICAgICAuZmFuY3l0cmVlLWV4cGFuZGVyLFxuICAgICAgICAuZmFuY3l0cmVlLWljb24sXG4gICAgICAgIC5mYW5jeXRyZWUtY3VzdG9tLWljb24ge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogKCgkaWNvbi1mb250LXNpemUgLSAkZm9udC1zaXplLWJhc2UpIC8gMik7XG4gICAgICAgIH1cblxuICAgICAgICAvLyBDaGVja2JveGVzXG4gICAgICAgIC5mYW5jeXRyZWUtY2hlY2tib3gge1xuICAgICAgICAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgICAgICAgICBmbG9hdDogbm9uZTtcbiAgICAgICAgfVxuXG4gICAgICAgIC8vIEFkZGl0aW9uYWwgY2hlY2tib3hlc1xuICAgICAgICAudW5pZm9ybS1jaGVja2VyIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgICAgIH1cblxuICAgICAgICAvLyBSb3dzXG4gICAgICAgIHRib2R5IHRyIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oYWxsIGVhc2UtaW4tb3V0ICRjb21wb25lbnQtdHJhbnNpdGlvbi10aW1lcik7XG5cbiAgICAgICAgICAgIC8vIENoZWNrYm94IGNlbGxcbiAgICAgICAgICAgIHRkOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC8vIFRpdGxlXG4gICAgICAgICAgICAuZmFuY3l0cmVlLXRpdGxlIHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgICAgICAgICBjb2xvcjogaW5oZXJpdCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbihub25lKTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLy8gRm9jdXNlZCBpdGVtc1xuICAgICAgICAgICAgJi5mYW5jeXRyZWUtZm9jdXNlZCxcbiAgICAgICAgICAgICYuZmFuY3l0cmVlLWFjdGl2ZSB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHRhYmxlLWFjY2VudC1iZztcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLy8gU2VsZWN0ZWQgaXRlbXNcbiAgICAgICAgICAgICYuZmFuY3l0cmVlLXNlbGVjdGVkIHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZmFuY3l0cmVlLW5vZGUtYWN0aXZlLWJnO1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkZmFuY3l0cmVlLW5vZGUtYWN0aXZlLWNvbG9yO1xuXG4gICAgICAgICAgICAgICAgLy8gQ2hlY2tib3hcbiAgICAgICAgICAgICAgICAuZmFuY3l0cmVlLWNoZWNrYm94LFxuICAgICAgICAgICAgICAgIC51bmlmb3JtLWNoZWNrZXIgc3BhbiB7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkZmFuY3l0cmVlLW5vZGUtYWN0aXZlLWNvbG9yO1xuICAgICAgICAgICAgICAgICAgICBib3JkZXItY29sb3I6ICRmYW5jeXRyZWUtbm9kZS1hY3RpdmUtY29sb3I7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgLy8gVGl0bGUgYmcgb3ZlcnJpZGVcbiAgICAgICAgICAgICAgICAuZmFuY3l0cmVlLXRpdGxlIHtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAvLyBGb2N1c2VkIGFuZCBzZWxlY3RlZFxuICAgICAgICAgICAgLmZhbmN5dHJlZS10cmVlZm9jdXMgJi5mYW5jeXRyZWUtc2VsZWN0ZWQge1xuICAgICAgICAgICAgICAgIC5mYW5jeXRyZWUtdGl0bGUge1xuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKGNvbG9yIGVhc2UtaW4tb3V0ICRjb21wb25lbnQtdHJhbnNpdGlvbi10aW1lcik7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG5cbiAgICAvL1xuICAgIC8vIENoaWxkIENvdW50ZXIgZXh0ZW5zaW9uXG4gICAgLy9cblxuICAgIC5mYW5jeXRyZWUtZXh0LWNoaWxkY291bnRlciAuZmFuY3l0cmVlLWNoaWxkY291bnRlciB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgIHRvcDogJGZhbmN5dHJlZS1ub2RlLXBhZGRpbmcteTtcbiAgICAgICAgY29sb3I6ICRncmF5LTYwMDtcbiAgICB9XG5cblxuICAgIC8vXG4gICAgLy8gSGVscGVyc1xuICAgIC8vXG5cbiAgICAvLyBIaWRlIG9yaWdpbmFsIGVsZW1lbnRzXG4gICAgLmZhbmN5dHJlZS1oZWxwZXItaGlkZGVuIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG5cbiAgICAvLyBJbmRldGVybWluYXRlIHN0YXRlXG4gICAgLmZhbmN5dHJlZS1oZWxwZXItaW5kZXRlcm1pbmF0ZS1jYiB7XG4gICAgICAgIGNvbG9yOiAkZ3JheS03MDA7XG4gICAgfVxuXG4gICAgLy8gRGlzYWJsZWQgc3RhdGVcbiAgICAuZmFuY3l0cmVlLWhlbHBlci1kaXNhYmxlZCB7XG4gICAgICAgIGNvbG9yOiAkZ3JheS05MDA7XG4gICAgfVxuXG4gICAgLy8gU3Bpbm5lclxuICAgIC5mYW5jeXRyZWUtaGVscGVyLXNwaW4ge1xuICAgICAgICBhbmltYXRpb246IHJvdGF0aW9uIDFzIGxpbmVhciBpbmZpbml0ZTtcbiAgICB9XG59XG4iLCIvKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAqXG4gKiAgIyBMYWRkYSBwcm9ncmVzcyBidXR0b25zXG4gKlxuICogIFN0eWxlcyBmb3IgbGFkZGEubWluLmpzIC0gYnV0dG9ucyB3aXRoIGJ1aWx0LWluIGxvYWRpbmcgaW5kaWNhdG9yc1xuICpcbiAqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cblxuLy8gQ2hlY2sgaWYgY29tcG9uZW50IGlzIGVuYWJsZWRcbkBpZiAkZW5hYmxlLWxhZGRhIHtcblxuICAgIC8vIENvbW1vbiBzdHlsZXNcbiAgICAuYnRuLWxhZGRhIHtcbiAgICAgICAgJixcbiAgICAgICAgLmxhZGRhLXNwaW5uZXIsXG4gICAgICAgIC5sYWRkYS1sYWJlbCB7XG4gICAgICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKGFsbCBjdWJpYy1iZXppZXIoMC4xNzUsIDAuODg1LCAwLjMyLCAxLjI3NSkgMC4zcyk7XG4gICAgICAgIH1cblxuICAgICAgICAvLyBTcGlubmVyXG4gICAgICAgIC5sYWRkYS1zcGlubmVyIHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIHotaW5kZXg6IDI7XG4gICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICB0b3A6IDUwJTtcbiAgICAgICAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgICAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgfVxuXG4gICAgICAgIC8vIExhYmVsXG4gICAgICAgIC5sYWRkYS1sYWJlbCB7XG4gICAgICAgICAgICB6LWluZGV4OiAzO1xuICAgICAgICB9XG5cbiAgICAgICAgLy8gUHJvZ3Jlc3MgYmFyXG4gICAgICAgIC5sYWRkYS1wcm9ncmVzcyB7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICB3aWR0aDogMDtcbiAgICAgICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKCRibGFjaywgMC4yKTtcbiAgICAgICAgICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICAgICAgICAgIG9wYWNpdHk6IDA7XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oYWxsIGxpbmVhciAwLjNzKTtcbiAgICAgICAgfVxuICAgICAgICAmW2RhdGEtbG9hZGluZ10gLmxhZGRhLXByb2dyZXNze1xuICAgICAgICAgICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgICAgICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgIH1cbiAgICB9XG5cblxuICAgIC8vXG4gICAgLy8gWm9vbSBhbmltYXRpb25cbiAgICAvL1xuXG4gICAgLmJ0bi1sYWRkYSB7XG5cbiAgICAgICAgLy8gQ29tbW9uXG4gICAgICAgICZbZGF0YS1zdHlsZT16b29tLWluXSxcbiAgICAgICAgJltkYXRhLXN0eWxlPXpvb20tb3V0XSB7XG4gICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuXG4gICAgICAgICAgICAmLFxuICAgICAgICAgICAgLmxhZGRhLXNwaW5uZXIsXG4gICAgICAgICAgICAubGFkZGEtbGFiZWwge1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oMC4zcyBlYXNlIGFsbCk7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC8vIExhYmVsXG4gICAgICAgICAgICAubGFkZGEtbGFiZWwge1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC8vIFNwaW5uZXJcbiAgICAgICAgICAgIC5sYWRkYS1zcGlubmVyIHtcbiAgICAgICAgICAgICAgICBsZWZ0OiA1MCU7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC8vIExvYWRpbmdcbiAgICAgICAgICAgICZbZGF0YS1sb2FkaW5nXSB7XG4gICAgICAgICAgICAgICAgLmxhZGRhLWxhYmVsIHtcbiAgICAgICAgICAgICAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAubGFkZGEtc3Bpbm5lciB7XG4gICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgICAgICAgICAgICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAvLyBab29tIGluXG4gICAgICAgICZbZGF0YS1zdHlsZT16b29tLWluXSB7XG4gICAgICAgICAgICAubGFkZGEtc3Bpbm5lciB7XG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgwLjIpO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmW2RhdGEtbG9hZGluZ10ge1xuICAgICAgICAgICAgICAgIC5sYWRkYS1sYWJlbCB7XG4gICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMi4yKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAvLyBab29tIG91dFxuICAgICAgICAmW2RhdGEtc3R5bGU9em9vbS1vdXRdIHtcbiAgICAgICAgICAgIC5sYWRkYS1zcGlubmVyIHtcbiAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDIuNSk7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICZbZGF0YS1sb2FkaW5nXSB7XG4gICAgICAgICAgICAgICAgLmxhZGRhLWxhYmVsIHtcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgwLjUpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuXG4gICAgLy9cbiAgICAvLyBFeHBhbmQgYW5pbWF0aW9uXG4gICAgLy9cblxuICAgIC5idG4tbGFkZGEge1xuXG4gICAgICAgIC8vIExlZnRcbiAgICAgICAgJltkYXRhLXN0eWxlPWV4cGFuZC1sZWZ0XSB7XG4gICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuXG4gICAgICAgICAgICAubGFkZGEtc3Bpbm5lciB7XG4gICAgICAgICAgICAgICAgbGVmdDogMjBweDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJltkYXRhLWxvYWRpbmddIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDM1cHg7XG5cbiAgICAgICAgICAgICAgICAubGFkZGEtc3Bpbm5lciB7XG4gICAgICAgICAgICAgICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLy8gUmlnaHRcbiAgICAgICAgJltkYXRhLXN0eWxlPWV4cGFuZC1yaWdodF0ge1xuICAgICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcblxuICAgICAgICAgICAgLmxhZGRhLXNwaW5uZXIge1xuICAgICAgICAgICAgICAgIHJpZ2h0OiAyMHB4O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmW2RhdGEtbG9hZGluZ10ge1xuICAgICAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDM1cHg7XG5cbiAgICAgICAgICAgICAgICAubGFkZGEtc3Bpbm5lciB7XG4gICAgICAgICAgICAgICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLy8gVXBcbiAgICAgICAgJltkYXRhLXN0eWxlPWV4cGFuZC11cF0ge1xuICAgICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcblxuICAgICAgICAgICAgLmxhZGRhLXNwaW5uZXIge1xuICAgICAgICAgICAgICAgIHRvcDogLTE2cHg7XG4gICAgICAgICAgICAgICAgbGVmdDogNTAlO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmW2RhdGEtbG9hZGluZ10ge1xuICAgICAgICAgICAgICAgIHBhZGRpbmctdG9wOiA0MHB4O1xuXG4gICAgICAgICAgICAgICAgLmxhZGRhLXNwaW5uZXIge1xuICAgICAgICAgICAgICAgICAgICB0b3A6IDEycHg7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDhweDtcbiAgICAgICAgICAgICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAvLyBEb3duXG4gICAgICAgICZbZGF0YS1zdHlsZT1leHBhbmQtZG93bl0ge1xuICAgICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcblxuICAgICAgICAgICAgLmxhZGRhLXNwaW5uZXIge1xuICAgICAgICAgICAgICAgIHRvcDogNDRweDtcbiAgICAgICAgICAgICAgICBsZWZ0OiA1MCU7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAmW2RhdGEtbG9hZGluZ10ge1xuICAgICAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiA0MHB4O1xuXG4gICAgICAgICAgICAgICAgLmxhZGRhLXNwaW5uZXIge1xuICAgICAgICAgICAgICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuXG4gICAgLy9cbiAgICAvLyBTbGlkZSBhbmltYXRpb25cbiAgICAvL1xuXG4gICAgLmJ0bi1sYWRkYSB7XG5cbiAgICAgICAgLy8gTGVmdFxuICAgICAgICAmW2RhdGEtc3R5bGU9c2xpZGUtbGVmdF0ge1xuICAgICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcblxuICAgICAgICAgICAgLmxhZGRhLWxhYmVsIHtcbiAgICAgICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLmxhZGRhLXNwaW5uZXIge1xuICAgICAgICAgICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmW2RhdGEtbG9hZGluZ10ge1xuICAgICAgICAgICAgICAgIC5sYWRkYS1sYWJlbCB7XG4gICAgICAgICAgICAgICAgICAgIGxlZnQ6IC0xMDAlO1xuICAgICAgICAgICAgICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIC5sYWRkYS1zcGlubmVyIHtcbiAgICAgICAgICAgICAgICAgICAgcmlnaHQ6IDUwJTtcbiAgICAgICAgICAgICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAvLyBSaWdodFxuICAgICAgICAmW2RhdGEtc3R5bGU9c2xpZGUtcmlnaHRdIHtcbiAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG5cbiAgICAgICAgICAgIC5sYWRkYS1sYWJlbCB7XG4gICAgICAgICAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAubGFkZGEtc3Bpbm5lciB7XG4gICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmW2RhdGEtbG9hZGluZ10ge1xuICAgICAgICAgICAgICAgIC5sYWRkYS1sYWJlbCB7XG4gICAgICAgICAgICAgICAgICAgIHJpZ2h0OiAtMTAwJTtcbiAgICAgICAgICAgICAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAubGFkZGEtc3Bpbm5lciB7XG4gICAgICAgICAgICAgICAgICAgIGxlZnQ6IDUwJTtcbiAgICAgICAgICAgICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAvLyBVcFxuICAgICAgICAmW2RhdGEtc3R5bGU9c2xpZGUtdXBdIHtcbiAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG5cbiAgICAgICAgICAgIC5sYWRkYS1sYWJlbCB7XG4gICAgICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLmxhZGRhLXNwaW5uZXIge1xuICAgICAgICAgICAgICAgIHRvcDogMTAwJTtcbiAgICAgICAgICAgICAgICBsZWZ0OiA1MCU7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICZbZGF0YS1sb2FkaW5nXSB7XG4gICAgICAgICAgICAgICAgLmxhZGRhLWxhYmVsIHtcbiAgICAgICAgICAgICAgICAgICAgdG9wOiAtMTZweDtcbiAgICAgICAgICAgICAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAubGFkZGEtc3Bpbm5lciB7XG4gICAgICAgICAgICAgICAgICAgIHRvcDogMTZweDtcbiAgICAgICAgICAgICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAvLyBEb3duXG4gICAgICAgICZbZGF0YS1zdHlsZT1zbGlkZS1kb3duXSB7XG4gICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuXG4gICAgICAgICAgICAubGFkZGEtbGFiZWwge1xuICAgICAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5sYWRkYS1zcGlubmVyIHtcbiAgICAgICAgICAgICAgICB0b3A6IC0xMDAlO1xuICAgICAgICAgICAgICAgIGxlZnQ6IDUwJTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJltkYXRhLWxvYWRpbmddIHtcbiAgICAgICAgICAgICAgICAubGFkZGEtbGFiZWwge1xuICAgICAgICAgICAgICAgICAgICB0b3A6IDE2cHg7XG4gICAgICAgICAgICAgICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgLmxhZGRhLXNwaW5uZXIge1xuICAgICAgICAgICAgICAgICAgICB0b3A6IDE2cHg7XG4gICAgICAgICAgICAgICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG5cbiAgICAvL1xuICAgIC8vIEZhZGUgYW5pbWF0aW9uXG4gICAgLy9cblxuICAgIC5idG4tbGFkZGEge1xuICAgICAgICAmW2RhdGEtc3R5bGU9ZmFkZV0ge1xuICAgICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcblxuICAgICAgICAgICAgLmxhZGRhLXNwaW5uZXIge1xuICAgICAgICAgICAgICAgIGxlZnQ6IDUwJTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJltkYXRhLWxvYWRpbmddIHtcbiAgICAgICAgICAgICAgICAubGFkZGEtbGFiZWwge1xuICAgICAgICAgICAgICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIC5sYWRkYS1zcGlubmVyIHtcbiAgICAgICAgICAgICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cblxuICAgIC8vXG4gICAgLy8gUmFkaXVzIGFuaW1hdGlvblxuICAgIC8vXG5cbiAgICAuYnRuLWxhZGRhIHtcbiAgICAgICAgJltkYXRhLXN0eWxlPXJhZGl1c10ge1xuICAgICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcblxuICAgICAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbihhbGwgZWFzZS1pbi1vdXQgMC41cyk7XG5cbiAgICAgICAgICAgIC5sYWRkYS1zcGlubmVyIHtcbiAgICAgICAgICAgICAgICBsZWZ0OiA1MCU7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICZbZGF0YS1sb2FkaW5nXSB7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkYm9yZGVyLXJhZGl1cy1yb3VuZCk7XG5cbiAgICAgICAgICAgICAgICAubGFkZGEtbGFiZWwge1xuICAgICAgICAgICAgICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIC5sYWRkYS1zcGlubmVyIHtcbiAgICAgICAgICAgICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG4iLCIvKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAqXG4gKiAgIyBGdWxsQ2FsZW5kYXJcbiAqXG4gKiAgU3R5bGVzIGZvciBmdWxsY2FsZW5kYXIubWluLmpzIC0gSmF2YVNjcmlwdCBldmVudCBjYWxlbmRhclxuICpcbiAqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cblxuLy8gQ2hlY2sgaWYgY29tcG9uZW50IGlzIGVuYWJsZWRcbkBpZiAkZW5hYmxlLWZ1bGxjYWxlbmRhciB7XG5cblxuXHQvLyBMYXlvdXRcblx0Ly8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cblx0Ly8gQ29udGFpbmVyXG5cdC5mYyB7XG5cdFx0ZGlyZWN0aW9uOiBsdHI7XG5cdFx0dGV4dC1hbGlnbjogbGVmdDtcblx0fVxuXG5cdC8vIEV2ZW50cyBjb250YWluZXJcblx0LmZjLWV2ZW50cy1jb250YWluZXIge1xuXHRcdGJhY2tncm91bmQtY29sb3I6ICRncmF5LTEwMDtcblx0XHRib3JkZXI6ICRib3JkZXItd2lkdGggc29saWQgJGJvcmRlci1jb2xvcjtcblx0XHRwYWRkaW5nOiBtYXAtZ2V0KCRzcGFjZXJzLCAyKTtcblx0XHRAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRib3JkZXItcmFkaXVzKTtcblxuXHRcdC5mYy1ldmVudCB7XG5cdFx0XHQvLyBtYXJnaW46IDA7XG5cdFx0XHRwYWRkaW5nOiAkZnVsbGNhbGVuZGFyLWV2ZW50LXBhZGRpbmcteSAkZnVsbGNhbGVuZGFyLWV2ZW50LXBhZGRpbmcteDtcblxuXHRcdFx0KyAuZmMtZXZlbnQge1xuXHRcdFx0XHRtYXJnaW4tdG9wOiAoJHNwYWNlciAvIDIpO1xuXHRcdFx0fVxuXHRcdH1cblx0fVxuXG5cblx0Ly8gQ29sb3JzXG5cdC8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG5cdC8vIERlZmF1bHQgdGhlbWVcblx0LmZjLXVudGhlbWVkIHtcblx0XHR0aCxcblx0XHR0ZCxcblx0XHR0aGVhZCxcblx0XHR0Ym9keSxcblx0XHQuZmMtZGl2aWRlcixcblx0XHQuZmMtcm93LFxuXHRcdC5mYy1jb250ZW50LFxuXHRcdC5mYy1wb3BvdmVyLFxuXHRcdC5mYy1saXN0LXZpZXcsXG5cdFx0LmZjLWxpc3QtaGVhZGluZyB0ZCB7XG5cdFx0XHRib3JkZXItY29sb3I6ICR0YWJsZS1ib3JkZXItY29sb3I7XG5cdFx0fVxuXG5cdFx0Ly8gQ2hhbmdlIGJvdHRvbSBib3JkZXIgY29sb3Jcblx0XHR0aGVhZCxcblx0XHR0aGVhZCB0ZCxcblx0XHR0aGVhZCB0aCB7XG5cdFx0XHRib3JkZXItYm90dG9tLWNvbG9yOiAkdGFibGUtaGVhZC1ib3JkZXItY29sb3I7XG5cdFx0fVxuXG5cdFx0Ly8gUG9wb3ZlclxuXHRcdC5mYy1wb3BvdmVyIHtcblx0XHRcdGJhY2tncm91bmQtY29sb3I6ICRwb3BvdmVyLWJnO1xuXHRcdFx0QGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkYm9yZGVyLXJhZGl1cyk7XG5cdFx0fVxuXG5cdFx0Ly8gSGlnaGxpZ2h0IHRvZGF5J3MgZGF0ZVxuXHRcdHRkLmZjLXRvZGF5IHtcblx0XHRcdGJhY2tncm91bmQtY29sb3I6ICRmdWxsY2FsZW5kYXItdG9kYXktYmc7XG5cdFx0fVxuXHR9XG5cblx0Ly8gV2hlbiB1c2VyIGlzIHNlbGVjdGluZyBjZWxsc1xuXHQuZmMtaGlnaGxpZ2h0IHsgXG5cdFx0YmFja2dyb3VuZC1jb2xvcjogJGZ1bGxjYWxlbmRhci1oaWdobGlnaHQtYmc7XG5cdH1cblxuXHQvLyBEZWZhdWx0IGxvb2sgZm9yIGJhY2tncm91bmQgZXZlbnRzXG5cdC5mYy1iZ2V2ZW50IHtcblx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkZnVsbGNhbGVuZGFyLWJnZXZlbnQtYmc7XG5cdFx0b3BhY2l0eTogMC4zO1xuXHR9XG5cblx0Ly8gRGVmYXVsdCBsb29rIGZvciBub24tYnVzaW5lc3MtaG91cnMgYXJlYXNcblx0Ly8gV2lsbCBpbmhlcml0IC5mYy1iZ2V2ZW50J3Mgc3R5bGVzXG5cdC5mYy1ub25idXNpbmVzcyB7XG5cdFx0YmFja2dyb3VuZC1jb2xvcjogJGZ1bGxjYWxlbmRhci1ub25idXNpbmVzcy1iZztcblx0fVxuXG5cblx0Ly8gSWNvbnNcblx0Ly8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cblx0Ly8gSWNvbiBiYXNlXG5cdC5mYy1pY29uIHtcblx0XHRkaXNwbGF5OiBibG9jaztcblx0XHR1c2VyLXNlbGVjdDogbm9uZTtcblx0XHRAaW5jbHVkZSB0cmFuc2l0aW9uKGFsbCBlYXNlLWluLW91dCAkY29tcG9uZW50LXRyYW5zaXRpb24tdGltZXIpO1xuXG5cdFx0Ly8gSWNvbiBiYXNlXG5cdFx0JjphZnRlciB7XG5cdFx0XHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cdFx0XHRmb250LWZhbWlseTogJGljb24tZm9udC1mYW1pbHk7XG5cdFx0XHRsaW5lLWhlaWdodDogMTtcblx0XHRcdGZvbnQtc2l6ZTogJGljb24tZm9udC1zaXplO1xuXHRcdFx0dmVydGljYWwtYWxpZ246IG1pZGRsZTtcblx0XHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0XHRcdHRvcDogKCRmb250LXNpemUtYmFzZSAtICRpY29uLWZvbnQtc2l6ZSkgLyAyO1xuXHRcdFx0QGluY2x1ZGUgbGwtZm9udC1zbW9vdGhpbmcoKTtcblx0XHR9XG5cdH1cblxuXHQvLyBBcnJvdyBpY29uc1xuXHQuZmMtaWNvbi1sZWZ0LXNpbmdsZS1hcnJvdzphZnRlciB7XG5cdCAgICBAaWYgJGRpcmVjdGlvbiA9PSAnTFRSJyB7XG5cdCAgICAgICAgY29udGVudDogJ1xcZTljMCc7XG5cdCAgICB9XG5cdCAgICBAZWxzZSB7XG5cdCAgICAgICAgY29udGVudDogJ1xcZTljMyc7XG5cdCAgICB9XG5cdCAgICAuZmMtcnRsICYge1xuXHQgICAgXHRjb250ZW50OiAnXFxlOWMwJztcblx0ICAgIH1cblx0fVxuXHQuZmMtaWNvbi1yaWdodC1zaW5nbGUtYXJyb3c6YWZ0ZXIge1xuXHQgICAgQGlmICRkaXJlY3Rpb24gPT0gJ0xUUicge1xuXHQgICAgICAgIGNvbnRlbnQ6ICdcXGU5YzMnO1xuXHQgICAgfVxuXHQgICAgQGVsc2Uge1xuXHQgICAgICAgIGNvbnRlbnQ6ICdcXGU5YzAnO1xuXHQgICAgfVxuXHQgICAgLmZjLXJ0bCAmIHtcblx0ICAgIFx0Y29udGVudDogJ1xcZTljMyc7XG5cdCAgICB9XG5cdH1cblx0LmZjLWljb24tbGVmdC1kb3VibGUtYXJyb3c6YWZ0ZXIge1xuXHQgICAgQGlmICRkaXJlY3Rpb24gPT0gJ0xUUicge1xuXHQgICAgICAgIGNvbnRlbnQ6ICdcXDAwMEFCJztcblx0ICAgIH1cblx0ICAgIEBlbHNlIHtcblx0ICAgICAgICBjb250ZW50OiAnXFwwMDBCQic7XG5cdCAgICB9XG5cdCAgICAuZmMtcnRsICYge1xuXHQgICAgXHRjb250ZW50OiAnXFwwMDBBQic7XG5cdCAgICB9XG5cdH1cblx0LmZjLWljb24tcmlnaHQtZG91YmxlLWFycm93OmFmdGVyIHtcblx0ICAgIEBpZiAkZGlyZWN0aW9uID09ICdMVFInIHtcblx0ICAgICAgICBjb250ZW50OiAnXFwwMDBCQic7XG5cdCAgICB9XG5cdCAgICBAZWxzZSB7XG5cdCAgICAgICAgY29udGVudDogJ1xcMDAwQUInO1xuXHQgICAgfVxuXHQgICAgLmZjLXJ0bCAmIHtcblx0ICAgIFx0Y29udGVudDogJ1xcMDAwQkInO1xuXHQgICAgfVxuXHR9XG5cblx0Ly8gQ2xvc2UgcG9wb3ZlciBpY29uXG5cdC5mYy1pY29uLXg6YWZ0ZXIge1xuXHRcdGNvbnRlbnQ6ICdcXGVkNmEnO1xuXHRcdGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1iYXNlO1xuXHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdG1hcmdpbi10b3A6ICgkbGluZS1oZWlnaHQtY29tcHV0ZWQgLSAkZm9udC1zaXplLWJhc2UpIC8gMjtcblx0XHR0b3A6IDA7XG5cdH1cblxuXG5cdC8vIEJ1dHRvbnNcblx0Ly8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cblx0Ly8gQmFzZSwgaWRlbnRpY2FsIHRvIC5idG4tbGlnaHRcblx0LmZjLWJ1dHRvbiB7XG5cdFx0bWFyZ2luOiAwO1xuXHRcdHBhZGRpbmc6ICRidG4tcGFkZGluZy15ICRidG4tcGFkZGluZy14O1xuXHRcdHdoaXRlLXNwYWNlOiBub3dyYXA7XG5cdFx0Y3Vyc29yOiBwb2ludGVyO1xuXHRcdEBpbmNsdWRlIHRyYW5zaXRpb24oYWxsIGVhc2UtaW4tb3V0ICRjb21wb25lbnQtdHJhbnNpdGlvbi10aW1lcik7XG5cblx0XHQvLyBGb2N1cyBzdGF0ZVxuXHRcdCY6Zm9jdXMge1xuXHRcdFx0b3V0bGluZTogMDtcblx0XHR9XG5cblx0XHQvLyBGaXJlZm94IGhhcyBhbiBhbm5veWluZyBpbm5lciBib3JkZXJcblx0XHQmOjotbW96LWZvY3VzLWlubmVyIHtcblx0XHRcdG1hcmdpbjogMDtcblx0XHRcdHBhZGRpbmc6IDA7XG5cdFx0fVxuXHR9XG5cblxuXHQvL1xuXHQvLyBCdXR0b24gc3RhdGVzXG5cdC8vXG5cblx0Ly8gRGVmYXVsdFxuXHQuZmMtc3RhdGUtZGVmYXVsdCB7XG5cdCAgICBjb2xvcjogJGJ0bi1saWdodC1jb2xvcjtcblx0ICAgIGJhY2tncm91bmQtY29sb3I6ICRidG4tbGlnaHQtYmc7XG5cdCAgICBib3JkZXI6ICRidG4tYm9yZGVyLXdpZHRoIHNvbGlkICRidG4tbGlnaHQtYm9yZGVyLWNvbG9yO1xuXG5cdCAgICAvLyBMZWZ0IHJvdW5kZWQgY29yZGVyc1xuXHRcdCYuZmMtY29ybmVyLWxlZnQge1xuXHRcdFx0QGluY2x1ZGUgYm9yZGVyLWxlZnQtcmFkaXVzKCRidG4tYm9yZGVyLXJhZGl1cyk7XG5cdFx0fVxuXG5cdFx0Ly8gUmlnaHQgcm91bmRlZCBjb3JuZXJzXG5cdFx0Ji5mYy1jb3JuZXItcmlnaHQge1xuXHRcdFx0QGluY2x1ZGUgYm9yZGVyLXJpZ2h0LXJhZGl1cygkYnRuLWJvcmRlci1yYWRpdXMpO1xuXHRcdH1cblx0fVxuXG5cdC8vIEhvdmVyXG5cdC5mYy1zdGF0ZS1kb3duLFxuXHQuZmMtc3RhdGUtaG92ZXIge1xuXHQgICAgY29sb3I6ICRidG4tbGlnaHQtaG92ZXItY29sb3I7XG5cdCAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYnRuLWxpZ2h0LWhvdmVyLWJnO1xuXHQgICAgYm9yZGVyLWNvbG9yOiAkYnRuLWxpZ2h0LWhvdmVyLWJvcmRlci1jb2xvcjtcblx0fVxuXG5cdC8vIEFjdGl2ZVxuXHQuZmMtc3RhdGUtYWN0aXZlIHtcblx0XHRiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xuXHQgICAgY29sb3I6ICRidG4tbGlnaHQtYWN0aXZlLWNvbG9yO1xuXHQgICAgYmFja2dyb3VuZC1jb2xvcjogJGJ0bi1saWdodC1hY3RpdmUtYmc7XG5cdCAgICBib3JkZXItY29sb3I6ICRidG4tbGlnaHQtYWN0aXZlLWJvcmRlci1jb2xvcjtcblx0fVxuXG5cdC8vIERpc2FibGVkXG5cdC5mYy1zdGF0ZS1kaXNhYmxlZCB7XG5cdFx0Y3Vyc29yOiAkY3Vyc29yLWRpc2FibGVkO1xuXHRcdG9wYWNpdHk6ICRidG4tZGlzYWJsZWQtb3BhY2l0eTtcblx0fVxuXG5cblx0Ly9cblx0Ly8gQnV0dG9uIGdyb3Vwc1xuXHQvL1xuXG5cdC5mYy1idXR0b24tZ3JvdXAge1xuXHRcdGRpc3BsYXk6IGlubGluZS1ibG9jaztcblxuXHRcdC5mYyAmIHtcblx0XHRcdD4gKiB7XG5cdFx0XHRcdGZsb2F0OiBsZWZ0O1xuXHRcdFx0XHRtYXJnaW46IDA7XG5cdFx0XHRcdG1hcmdpbi1sZWZ0OiAtKCRidG4tYm9yZGVyLXdpZHRoKTtcblx0XHRcdH1cblxuXHRcdFx0PiA6Zmlyc3QtY2hpbGQge1xuXHRcdFx0XHRtYXJnaW4tbGVmdDogMDtcblx0XHRcdH1cblx0XHR9XG5cdH1cblxuXG5cdC8vIFBvcG92ZXJcblx0Ly8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cblx0LmZjLXBvcG92ZXIge1xuXHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRib3JkZXI6ICRwb3BvdmVyLWJvcmRlci13aWR0aCBzb2xpZCAkcG9wb3Zlci1ib3JkZXItY29sb3I7XG5cdFx0ei1pbmRleDogJHppbmRleC1wb3BvdmVyO1xuXHRcdEBpbmNsdWRlIGJveC1zaGFkb3coJHBvcG92ZXItYm94LXNoYWRvdyk7XG5cblx0XHQvLyBIZWFkZXJcblx0XHQuZmMtaGVhZGVyIHtcblx0XHRcdHBhZGRpbmc6ICRwb3BvdmVyLWhlYWRlci1wYWRkaW5nLXkgJHBvcG92ZXItaGVhZGVyLXBhZGRpbmcteDtcblxuXHRcdFx0Ly8gVGl0bGVcblx0XHRcdC5mYy10aXRsZSB7XG5cdFx0XHRcdGZsb2F0OiBsZWZ0O1xuXHRcdFx0fVxuXG5cdFx0XHQvLyBDbG9zZSBidXR0b25cblx0XHRcdC5mYy1jbG9zZSB7XG5cdFx0XHRcdGN1cnNvcjogcG9pbnRlcjtcblx0XHRcdFx0ZmxvYXQ6IHJpZ2h0O1xuXHRcdFx0XHRtYXJnaW4tbGVmdDogJGVsZW1lbnQtc3BhY2VyLXg7XG5cdFx0XHR9XG5cdFx0fVxuXG5cdFx0Ly8gVW50aGVtZWRcblx0XHQuZmMtdW50aGVtZWQgJiB7XG5cdFx0XHQuZmMtaGVhZGVyIC5mYy1jbG9zZSB7XG5cdFx0XHRcdG9wYWNpdHk6IDAuNjtcblx0XHRcdFx0QGluY2x1ZGUgdHJhbnNpdGlvbihvcGFjaXR5IGVhc2UtaW4tb3V0ICRjb21wb25lbnQtdHJhbnNpdGlvbi10aW1lcik7XG5cblx0XHRcdFx0Ly8gSG92ZXIgc3RhdGVcblx0XHRcdFx0QGluY2x1ZGUgaG92ZXIge1xuXHRcdFx0XHRcdG9wYWNpdHk6IDE7XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHR9XG5cdH1cblxuXG5cdC8vIE1pc2MgcmV1c2FibGUgY29tcG9uZW50c1xuXHQvLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuXHQvLyBEaXZpZGVyXG5cdC5mYy1kaXZpZGVyIHtcblx0XHRib3JkZXItc3R5bGU6IHNvbGlkO1xuXHRcdGJvcmRlci13aWR0aDogJHRhYmxlLWJvcmRlci13aWR0aDtcblx0fVxuXHRoci5mYy1kaXZpZGVyIHtcblx0XHRoZWlnaHQ6IDA7XG5cdFx0bWFyZ2luOiAwO1xuXHRcdHBhZGRpbmc6IDA7XG5cdFx0Ym9yZGVyLXdpZHRoOiAkdGFibGUtYm9yZGVyLXdpZHRoIDA7XG5cdH1cblxuXG5cdC8vIENsZWFyIGhlbHBlclxuXHQuZmMtY2xlYXIge1xuXHRcdGNsZWFyOiBib3RoO1xuXHR9XG5cblx0Ly8gRWxlbWVudCBwb3NpdGlvbmluZ1xuXHQuZmMtYmcsXG5cdC5mYy1iZ2V2ZW50LXNrZWxldG9uLFxuXHQuZmMtaGlnaGxpZ2h0LXNrZWxldG9uLFxuXHQuZmMtaGVscGVyLXNrZWxldG9uIHtcblx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0dG9wOiAwO1xuXHRcdGxlZnQ6IDA7XG5cdFx0cmlnaHQ6IDA7XG5cdH1cblxuXHQvLyBHZW5lcmFsIGJhY2tncm91bmRcblx0LmZjLWJnIHtcblx0XHRib3R0b206IDA7XG5cblx0XHR0YWJsZSB7XG5cdFx0XHRoZWlnaHQ6IDEwMCU7XG5cdFx0fVxuXHR9XG5cblxuXHQvLyBUYWJsZXNcblx0Ly8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cblx0LmZjIHtcblx0XHR0YWJsZSB7XG5cdFx0XHR3aWR0aDogMTAwJTtcblx0XHRcdHRhYmxlLWxheW91dDogZml4ZWQ7XG5cdFx0XHRib3JkZXItY29sbGFwc2U6IGNvbGxhcHNlO1xuXHRcdFx0Ym9yZGVyLXNwYWNpbmc6IDA7XG5cdFx0XHRib3gtc2l6aW5nOiBib3JkZXItYm94O1xuXHRcdH1cblxuXHRcdHRoLFxuXHRcdHRkIHtcblx0XHRcdGJvcmRlci1zdHlsZTogc29saWQ7XG5cdFx0XHRib3JkZXItd2lkdGg6ICR0YWJsZS1ib3JkZXItd2lkdGg7XG5cdFx0XHRwYWRkaW5nOiAwO1xuXHRcdFx0dmVydGljYWwtYWxpZ246IHRvcDtcblx0XHR9XG5cblx0XHR0aCB7XG5cdFx0XHRwYWRkaW5nOiAkdGFibGUtY2VsbC1wYWRkaW5nO1xuXHRcdFx0cGFkZGluZy1sZWZ0OiAwO1xuXHRcdFx0cGFkZGluZy1yaWdodDogMDtcblx0XHRcdGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtc2VtaWJvbGQ7XG5cdFx0XHR0ZXh0LWFsaWduOiBjZW50ZXI7XG5cdFx0fVxuXG5cdFx0dGQuZmMtdG9kYXkge1xuXHRcdFx0Ym9yZGVyLXN0eWxlOiBkb3VibGU7XG5cdFx0fVxuXHR9XG5cblxuXHQvLyBJbnRlcm5hbCBOYXYgTGlua3Ncblx0Ly8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cblx0YVtkYXRhLWdvdG9dIHtcblx0XHRjdXJzb3I6IHBvaW50ZXI7XG5cdFx0Y29sb3I6ICRib2R5LWNvbG9yO1xuXHR9XG5cblxuXHQvLyBGYWtlIHRhYmxlIHJvd3Ncblx0Ly8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cblx0LmZjLXJvdyB7XG5cdFx0Ym9yZGVyLXN0eWxlOiBzb2xpZDtcblx0XHRib3JkZXItd2lkdGg6IDA7XG5cdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXG5cdFx0dGFibGUge1xuXHRcdFx0Ym9yZGVyLWxlZnQ6IDA7XG5cdFx0XHRib3JkZXItcmlnaHQ6IDA7XG5cdFx0XHRib3JkZXItYm90dG9tOiAwOyBcblx0XHR9XG5cblx0XHQmOmZpcnN0LWNoaWxkIHRhYmxlIHtcblx0XHRcdGJvcmRlci10b3A6IDA7XG5cdFx0fVxuXHR9XG5cblxuXHQvLyBEYXkgcm93ICh1c2VkIHdpdGhpbiB0aGUgaGVhZGVyIGFuZCB0aGUgRGF5R3JpZClcblx0Ly8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cblx0LmZjLXJvdyB7XG5cblx0XHQvLyBNYWluIGJhY2tncm91bmRcblx0XHQuZmMtYmcge1xuXHRcdFx0ei1pbmRleDogMTtcblx0XHR9XG5cblx0XHQvLyBIaWdobGlnaHRpbmcgY2VsbHMgJiBiYWNrZ3JvdW5kIGV2ZW50IHNrZWxldG9uXG5cdFx0LmZjLWJnZXZlbnQtc2tlbGV0b24sXG5cdFx0LmZjLWhpZ2hsaWdodC1za2VsZXRvbiB7XG5cdFx0XHRib3R0b206IDA7XG5cblx0XHRcdHRhYmxlIHtcblx0XHRcdFx0aGVpZ2h0OiAxMDAlO1xuXHRcdFx0fVxuXG5cdFx0XHR0ZCB7XG5cdFx0XHRcdGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG5cdFx0XHRcdGJvcmRlcjogMDtcblx0XHRcdH1cblx0XHR9XG5cdFx0LmZjLWJnZXZlbnQtc2tlbGV0b24ge1xuXHRcdFx0ei1pbmRleDogMjtcblx0XHR9XG5cdFx0LmZjLWhpZ2hsaWdodC1za2VsZXRvbiB7XG5cdFx0XHR6LWluZGV4OiAzO1xuXHRcdH1cblxuXHRcdC8vIFJvdyBjb250ZW50XG5cdFx0LmZjLWNvbnRlbnQtc2tlbGV0b24sXG5cdFx0LmZjLWhlbHBlci1za2VsZXRvbiB7XG5cdFx0XHR0ZCB7XG5cdFx0XHRcdGJhY2tncm91bmQ6IG5vbmU7XG5cdFx0XHRcdGJvcmRlci1ib3R0b206IDA7XG5cdFx0XHR9XG5cblx0XHRcdC8vIENlbGxzIHdpdGggZXZlbnRzIGluc2lkZSAoc28gTk9UIHRoZSBkYXkgbnVtYmVyIGNlbGwpXG5cdFx0XHR0Ym9keSB0ZCB7XG5cdFx0XHRcdGJvcmRlci10b3A6IDA7XG5cdFx0XHR9XG5cdFx0fVxuXHRcdC5mYy1jb250ZW50LXNrZWxldG9uIHtcblx0XHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0XHRcdHotaW5kZXg6IDQ7XG5cdFx0fVxuXHRcdC5mYy1oZWxwZXItc2tlbGV0b24ge1xuXHRcdFx0ei1pbmRleDogNTtcblx0XHR9XG5cdH1cblxuXG5cdC8vIFNjcm9sbGluZyBjb250YWluZXJcblx0Ly8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cblx0LmZjLXNjcm9sbGVyIHtcblx0XHQtd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzogdG91Y2g7XG5cblx0XHQvLyBUaW1pbmcgZ3JpZHNcblx0XHQ+IC5mYy1kYXktZ3JpZCxcblx0XHQ+IC5mYy10aW1lLWdyaWQge1xuXHRcdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRcdFx0d2lkdGg6IDEwMCU7XG5cdFx0fVxuXHR9XG5cblxuXHQvLyBHbG9iYWwgZXZlbnQgc3R5bGVzXG5cdC8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG5cdC5mYy1ldmVudCB7XG5cdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdGJvcmRlcjogJGZ1bGxjYWxlbmRhci1ldmVudC1ib3JkZXItd2lkdGggc29saWQgJGZ1bGxjYWxlbmRhci1ldmVudC1ib3JkZXItY29sb3I7XG5cdFx0Y29sb3I6ICRmdWxsY2FsZW5kYXItZXZlbnQtY29sb3IhaW1wb3J0YW50O1xuXHRcdEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGJvcmRlci1yYWRpdXMpO1xuXG5cdFx0Ly8gR2l2ZSBldmVudHMgd2l0aCBsaW5rcyBhbmQgZHJhZ2dhYmxlIGV2ZW50cyBhIGhhbmQgbW91c2UgcG9pbnRlclxuXHRcdCZbaHJlZl0sXG5cdFx0Ji5mYy1kcmFnZ2FibGUge1xuXHRcdFx0Y3Vyc29yOiBwb2ludGVyO1xuXHRcdH1cblxuXHRcdC8vIEV2ZW50IGJhY2tncm91bmRcblx0XHQuZmMtYmcge1xuXHRcdFx0ei1pbmRleDogMTtcblx0XHR9XG5cblx0XHQvLyBFdmVudCBjb250ZW50XG5cdFx0LmZjLWNvbnRlbnQge1xuXHRcdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRcdFx0ei1pbmRleDogMjtcblx0XHR9XG5cblxuXHRcdC8vXG5cdFx0Ly8gUmVzaXplclxuXHRcdC8vXG5cblx0XHQvLyBCYXNlXG5cdFx0LmZjLXJlc2l6ZXIge1xuXHRcdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdFx0ei1pbmRleDogNDtcblx0XHRcdGRpc3BsYXk6IG5vbmU7XG5cdFx0fVxuXG5cdFx0Ly8gU2hvdyByZXNpemVyXG5cdFx0Ji5mYy1hbGxvdy1tb3VzZS1yZXNpemUgLmZjLXJlc2l6ZXIsXG5cdFx0Ji5mYy1zZWxlY3RlZCAuZmMtcmVzaXplciB7XG5cdFx0XHRkaXNwbGF5OiBibG9jaztcblx0XHR9XG5cblx0XHQvLyBIaXQgYXJlYVxuXHRcdCYuZmMtc2VsZWN0ZWQgLmZjLXJlc2l6ZXI6YmVmb3JlIHtcblx0XHRcdGNvbnRlbnQ6IFwiXCI7XG5cdFx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0XHR6LWluZGV4OiAkemluZGV4LXRvb2x0aXA7XG5cdFx0XHR0b3A6IDUwJTtcblx0XHRcdGxlZnQ6IDUwJTtcblx0XHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xuXHRcdFx0QGluY2x1ZGUgc2l6ZSgoJGZ1bGxjYWxlbmRhci1ldmVudC1wYWRkaW5nLXkgKiAyKSArICRsaW5lLWhlaWdodC1jb21wdXRlZCk7XG5cdFx0fVxuXG5cblx0XHQvL1xuXHRcdC8vIEV2ZW50IHNlbGVjdGlvbiAob25seSBmb3IgdG91Y2ggZGV2aWNlcylcblx0XHQvL1xuXG5cdFx0LmZjLWV2ZW50IHtcblx0XHRcdCYuZmMtc2VsZWN0ZWQge1xuXHRcdFx0XHR6LWluZGV4OiAkemluZGV4LXRvb2x0aXAgIWltcG9ydGFudDtcblx0XHRcdH1cblx0XHR9XG5cdH1cblxuXHQvLyBCYWNrZ3JvdW5kc1xuXHQuZmMtZXZlbnQsXG5cdC5mYy1ldmVudC1kb3Qge1xuXHRcdGJhY2tncm91bmQtY29sb3I6ICRmdWxsY2FsZW5kYXItZXZlbnQtYmc7XG5cdH1cblxuXHQvLyBPdmVycmlkZSBhbiBldmVudCdzIGN1c3RvbSBjdXJzb3Jcblx0LmZjLW5vdC1hbGxvd2VkIHtcblx0XHQmLFxuXHRcdC5mYy1ldmVudCB7XG5cdFx0XHRjdXJzb3I6ICRjdXJzb3ItZGlzYWJsZWQ7XG5cdFx0fVxuXHR9XG5cblxuXHQvLyBIb3Jpem9udGFsIGV2ZW50c1xuXHQvLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuXHQuZmMtaC1ldmVudCB7XG5cblxuXHRcdC8vXG5cdFx0Ly8gUmVzaXplclxuXHRcdC8vXG5cblx0XHQvLyBFbmRcblx0XHQuZmMtZW5kLXJlc2l6ZXIge1xuXHRcdFx0Y3Vyc29yOiBlLXJlc2l6ZTtcblx0XHRcdHJpZ2h0OiAtKCRmdWxsY2FsZW5kYXItZXZlbnQtYm9yZGVyLXdpZHRoKTtcblx0XHR9XG5cblx0XHQvLyBJbiBzZWxlY3RlZCBldmVudFxuXHRcdCYuZmMtc2VsZWN0ZWQge1xuXHRcdFx0LmZjLWVuZC1yZXNpemVyIHtcblx0XHRcdFx0bWFyZ2luLXJpZ2h0OiBjYWxjKC0jeyRmdWxsY2FsZW5kYXItZXZlbnQtcmVzaXplci1zaXplLWggLyAyfSAtICN7JGZ1bGxjYWxlbmRhci1ldmVudC1ib3JkZXItd2lkdGh9KTtcblx0XHRcdH1cblx0XHR9XG5cblx0XHQvLyBSZXNpemVyIChtb3VzZSBkZXZpY2VzKVxuXHRcdCYuZmMtYWxsb3ctbW91c2UtcmVzaXplIC5mYy1yZXNpemVyIHtcblx0XHRcdHdpZHRoOiAkZnVsbGNhbGVuZGFyLWV2ZW50LXBhZGRpbmcteDtcblx0XHRcdHRvcDogLSgkZnVsbGNhbGVuZGFyLWV2ZW50LWJvcmRlci13aWR0aCk7XG5cdFx0XHRib3R0b206IC0oJGZ1bGxjYWxlbmRhci1ldmVudC1ib3JkZXItd2lkdGgpO1xuXHRcdH1cblxuXHRcdC8vIFJlc2l6ZXIgKHRvdWNoIGRldmljZXMpXG5cdFx0Ji5mYy1zZWxlY3RlZCAuZmMtcmVzaXplciB7XG5cdFx0XHRib3JkZXItd2lkdGg6ICRmdWxsY2FsZW5kYXItZXZlbnQtYm9yZGVyLXdpZHRoO1xuXHRcdFx0Ym9yZGVyLXN0eWxlOiBzb2xpZDtcblx0XHRcdGJvcmRlci1jb2xvcjogaW5oZXJpdDtcblx0XHRcdGJhY2tncm91bmQtY29sb3I6ICRmdWxsY2FsZW5kYXItZXZlbnQtY29sb3I7XG5cdFx0XHR0b3A6IDUwJTtcblx0XHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcblx0XHRcdEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGJvcmRlci1yYWRpdXMtY2lyY2xlKTtcblx0XHRcdEBpbmNsdWRlIHNpemUoJGZ1bGxjYWxlbmRhci1ldmVudC1yZXNpemVyLXNpemUtaCk7XG5cdFx0fVxuXHR9XG5cblxuXHQvLyBEYXlHcmlkIGV2ZW50c1xuXHQvLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuXHQuZmMtZGF5LWdyaWQtZXZlbnQge1xuXHRcdG1hcmdpbjogJGZ1bGxjYWxlbmRhci1ldmVudC1zcGFjZXI7XG5cdFx0bWFyZ2luLXRvcDogMDtcblx0XHRwYWRkaW5nOiAkZnVsbGNhbGVuZGFyLWV2ZW50LXBhZGRpbmcteSAkZnVsbGNhbGVuZGFyLWV2ZW50LXBhZGRpbmcteDtcblxuXHRcdC8vIERhcmtlbiBzZWxlY3RlZCBldmVudFxuXHRcdCYuZmMtc2VsZWN0ZWQ6YWZ0ZXIge1xuXHRcdFx0Y29udGVudDogXCJcIjtcblx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRcdHotaW5kZXg6IDE7XG5cdFx0XHR0b3A6IC0oJGZ1bGxjYWxlbmRhci1ldmVudC1ib3JkZXItd2lkdGgpO1xuXHRcdFx0cmlnaHQ6IC0oJGZ1bGxjYWxlbmRhci1ldmVudC1ib3JkZXItd2lkdGgpO1xuXHRcdFx0Ym90dG9tOiAtKCRmdWxsY2FsZW5kYXItZXZlbnQtYm9yZGVyLXdpZHRoKTtcblx0XHRcdGxlZnQ6IC0oJGZ1bGxjYWxlbmRhci1ldmVudC1ib3JkZXItd2lkdGgpO1xuXHRcdFx0YmFja2dyb3VuZC1jb2xvcjogcmdiYSgkYmxhY2ssIDAuMTUpO1xuXHRcdFx0QGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkYm9yZGVyLXJhZGl1cyk7XG5cdFx0fVxuXG5cdFx0Ly8gRm9yY2UgZXZlbnRzIHRvIGJlIG9uZS1saW5lIHRhbGxcblx0XHQ+IC5mYy1jb250ZW50IHtcblx0XHRcdEBpbmNsdWRlIHRleHQtdHJ1bmNhdGUoKTtcblx0XHR9XG5cblx0XHQvLyBNYWtlIHRoZSB0aW1lIHNlbWlib2xkXG5cdFx0LmZjLXRpbWUge1xuXHRcdFx0Zm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1zZW1pYm9sZDtcblx0XHR9XG5cblx0XHQvLyBSZXNpemVyXG5cdFx0Ji5mYy1hbGxvdy1tb3VzZS1yZXNpemUge1xuXHRcdFx0LmZjLWVuZC1yZXNpemVyIHtcblx0XHRcdFx0bWFyZ2luLXJpZ2h0OiAtKCRmdWxsY2FsZW5kYXItZXZlbnQtYm9yZGVyLXdpZHRoKTtcblx0XHRcdH1cblx0XHR9XG5cblx0XHQvLyBEZXNrdG9wIHZpZXdcblx0XHRAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKG1kKSB7XG5cblx0XHRcdC8vIFRpbWVcblx0XHRcdC5mYy10aW1lIHtcblx0XHRcdFx0ZmxvYXQ6IHJpZ2h0O1xuXHRcdFx0XHRwYWRkaW5nLWxlZnQ6ICRlbGVtZW50LXNwYWNlci14O1xuXHRcdFx0XHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cdFx0XHRcdHotaW5kZXg6IDI7XG5cdFx0XHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0XHRcdFx0YmFja2dyb3VuZC1jb2xvcjogaW5oZXJpdDtcblx0XHRcdH1cblxuXHRcdFx0Ly8gVGl0bGVcblx0XHRcdC5mYy10aXRsZSB7XG5cdFx0XHRcdHotaW5kZXg6IDE7XG5cdFx0XHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0XHRcdH1cblx0XHR9XG5cdH1cblxuXG5cdC8vIEV2ZW50IGxpbWl0aW5nXG5cdC8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG5cdC8vIFwiTW9yZVwiIGxpbmtcblx0YS5mYy1tb3JlIHtcblx0XHRtYXJnaW46IDAgJGZ1bGxjYWxlbmRhci1ldmVudC1zcGFjZXI7XG5cdFx0YmFja2dyb3VuZC1jb2xvcjogJGdyYXktMjAwO1xuXHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdHBhZGRpbmc6ICRmdWxsY2FsZW5kYXItZXZlbnQtcGFkZGluZy15ICRmdWxsY2FsZW5kYXItZXZlbnQtcGFkZGluZy14O1xuXHRcdHRleHQtYWxpZ246IGNlbnRlcjtcblx0XHRmb250LXNpemU6ICRmb250LXNpemUtc207XG5cdFx0bGluZS1oZWlnaHQ6ICRsaW5lLWhlaWdodC1zbTtcblx0XHRjdXJzb3I6IHBvaW50ZXI7XG5cdFx0QGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkYm9yZGVyLXJhZGl1cyk7XG5cdFx0QGluY2x1ZGUgdHJhbnNpdGlvbihhbGwgZWFzZS1pbi1vdXQgJGNvbXBvbmVudC10cmFuc2l0aW9uLXRpbWVyKTtcblxuXHRcdEBpbmNsdWRlIGhvdmVyIHtcblx0XHRcdGJhY2tncm91bmQtY29sb3I6ICRncmF5LTMwMDtcblx0XHR9XG5cdH1cblxuXHQvLyBSb3dzIGFuZCBjZWxscyB0aGF0IGFyZSBoaWRkZW4gYmVjYXVzZSBvZiBhIFwibW9yZVwiIGxpbmtcblx0LmZjLWxpbWl0ZWQge1xuXHRcdGRpc3BsYXk6IG5vbmU7XG5cdH1cblxuXHQvLyBQb3BvdmVyIHRoYXQgYXBwZWFycyB3aGVuIFwibW9yZVwiIGxpbmsgaXMgY2xpY2tlZFxuXHQuZmMtZGF5LWdyaWQgLmZjLXJvdyB7XG5cdFx0ei1pbmRleDogMTtcblx0fVxuXHQuZmMtbW9yZS1wb3BvdmVyIHtcblx0XHR6LWluZGV4OiAyO1xuXHRcdHdpZHRoOiAxNXJlbTtcblxuXHRcdC5mYy1ldmVudC1jb250YWluZXIge1xuXHRcdFx0cGFkZGluZzogJHBvcG92ZXItYm9keS1wYWRkaW5nLXkgJHBvcG92ZXItYm9keS1wYWRkaW5nLXg7XG5cdFx0XHRwYWRkaW5nLXRvcDogMDtcblx0XHR9XG5cdH1cblxuXG5cdC8vIFV0aWxpdGllc1xuXHQvLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuXHQvLyBOb3cgaW5kaWNhdG9yXG5cdC5mYy1ub3ctaW5kaWNhdG9yIHtcblx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdH1cblxuXHQvLyBOb3Qgc2VsZWN0YWJsZVxuXHQuZmMtdW5zZWxlY3RhYmxlIHtcblx0XHQtd2Via2l0LXRvdWNoLWNhbGxvdXQ6IG5vbmU7XG5cdFx0LXdlYmtpdC10YXAtaGlnaGxpZ2h0LWNvbG9yOiByZ2JhKDAsIDAsIDAsIDApO1xuXHRcdHVzZXItc2VsZWN0OiBub25lO1xuXHR9XG5cblxuXHQvLyBUb29sYmFyXG5cdC8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG5cdC5mYy10b29sYmFyIHtcblx0XHR0ZXh0LWFsaWduOiBjZW50ZXI7XG5cblx0XHQvLyBIZWFkZXIgdG9vbGJhclxuXHRcdCYuZmMtaGVhZGVyLXRvb2xiYXIge1xuXHRcdFx0bWFyZ2luLWJvdHRvbTogJHNwYWNlcjtcblx0XHR9XG5cblx0XHQvLyBGb290ZXIgdG9vbGJhclxuXHRcdCYuZmMtZm9vdGVyLXRvb2xiYXIge1xuXHRcdFx0bWFyZ2luLXRvcDogJHNwYWNlcjtcblx0XHR9XG5cblx0XHQvLyBUaXRsZSB0ZXh0XG5cdFx0aDIge1xuXHRcdFx0bWFyZ2luOiAoKCgkYnRuLXBhZGRpbmcteSAqIDIpICsgJGxpbmUtaGVpZ2h0LWNvbXB1dGVkICsgcmVtLWNhbGMoJGJ0bi1ib3JkZXItd2lkdGggKiAyKSAtICgkaDUtZm9udC1zaXplICogJGhlYWRpbmdzLWxpbmUtaGVpZ2h0KSkgLyAyKSAwO1xuXHRcdFx0Zm9udC1zaXplOiAkaDUtZm9udC1zaXplO1xuXHRcdH1cblxuXHRcdC8vIExlZnRcblx0XHQuZmMtbGVmdCB7XG5cdFx0XHRmbG9hdDogbGVmdDtcblx0XHRcdHdpZHRoOiAzMyU7XG5cdFx0fVxuXG5cdFx0Ly8gUmlnaHRcblx0XHQuZmMtcmlnaHQge1xuXHRcdFx0ZmxvYXQ6IHJpZ2h0O1xuXHRcdFx0d2lkdGg6IDMzJTtcblxuXHRcdFx0LmZjLWJ1dHRvbi1ncm91cCB7XG5cdFx0XHRcdGZsb2F0OiByaWdodDtcblx0XHRcdH1cblx0XHR9XG5cblx0XHQvLyBMZWZ0L3JpZ2h0IGJ1dHRvbnNcblx0XHQuZmMtbGVmdCxcblx0XHQuZmMtcmlnaHQge1xuXHRcdFx0PiAuZmMtYnV0dG9uIHtcblx0XHRcdFx0bWFyZ2luLWxlZnQ6ICRlbGVtZW50LXNwYWNlci14O1xuXHRcdFx0fVxuXHRcdH1cblxuXHRcdC8vIENlbnRlclxuXHRcdC5mYy1jZW50ZXIge1xuXHRcdFx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXHRcdFx0dmVydGljYWwtYWxpZ246IG1pZGRsZTtcblx0XHR9XG5cblx0XHQvLyBUaGUgdGhpbmdzIHdpdGhpbiBlYWNoIGxlZnQvcmlnaHQvY2VudGVyIHNlY3Rpb25cblx0XHQ+ICoge1xuXHRcdFx0PiAqIHtcblx0XHRcdFx0ZmxvYXQ6IGxlZnQ7XG5cdFx0XHR9XG5cblx0XHRcdC8vIFRoZSBmaXJzdCB0aGluZyB3aXRoaW4gZWFjaCBsZWZ0L2NlbnRlci9yaWdodCBzZWN0aW9uXG5cdFx0XHQ+IDpmaXJzdC1jaGlsZCB7XG5cdFx0XHRcdG1hcmdpbi1sZWZ0OiAwO1xuXHRcdFx0fVxuXHRcdH1cblxuXHRcdC8vIEJ1dHRvbiBsYXllcmluZyAoZm9yIGJvcmRlciBwcmVjZWRlbmNlKVxuXHRcdGJ1dHRvbiB7XG5cdFx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cblx0XHRcdCY6Zm9jdXMge1xuXHRcdFx0XHR6LWluZGV4OiA1O1xuXHRcdFx0fVxuXHRcdH1cblxuXHRcdC8vIFN0YXRlc1xuXHRcdC5mYy1zdGF0ZS1ob3Zlcixcblx0XHQudWktc3RhdGUtaG92ZXIge1xuXHRcdFx0ei1pbmRleDogMjtcblx0XHR9XG5cdFx0LmZjLXN0YXRlLWRvd24ge1xuXHRcdFx0ei1pbmRleDogMztcblx0XHR9XG5cdFx0LmZjLXN0YXRlLWFjdGl2ZSxcblx0XHQudWktc3RhdGUtYWN0aXZlIHtcblx0XHRcdHotaW5kZXg6IDQ7XG5cdFx0fVxuXHR9XG5cblxuXHQvLyBWaWV3IHN0cnVjdHVyZVxuXHQvLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuXHQuZmMtdmlldy1jb250YWluZXIge1xuXHRcdGJvcmRlcjogJGNhcmQtYm9yZGVyLXdpZHRoIHNvbGlkICRjYXJkLWJvcmRlci1jb2xvcjtcblx0XHRAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRjYXJkLWJvcmRlci1yYWRpdXMpO1xuXG5cdFx0Ly8gUmVtb3ZlIGJvcmRlcnMgZnJvbSB0YWJsZSBjZWxsc1xuXHRcdC5mYy12aWV3ID4gdGFibGUge1xuXG5cdFx0XHQvLyBSaWdodCBib3JkZXJcblx0XHRcdHRoLFxuXHRcdFx0dGQge1xuXHRcdFx0XHRib3JkZXItcmlnaHQtd2lkdGg6IDA7XG5cdFx0XHR9XG5cblx0XHRcdC8vIExlZnQgYm9yZGVyIGZyb20gZmlyc3QgY2VsbFxuXHRcdFx0dHI6Zmlyc3QtY2hpbGQge1xuXHRcdFx0XHR0aDpmaXJzdC1jaGlsZCxcblx0XHRcdFx0dGQ6Zmlyc3QtY2hpbGQge1xuXHRcdFx0XHRcdGJvcmRlci1sZWZ0LXdpZHRoOiAwO1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cblx0XHRcdC5mYy1oZWFkIHtcblx0XHRcdFx0dHI6Zmlyc3QtY2hpbGQge1xuXHRcdFx0XHRcdD4gdGgsXG5cdFx0XHRcdFx0PiB0ZCB7XG5cdFx0XHRcdFx0XHRib3JkZXItdG9wOiAwO1xuXHRcdFx0XHRcdH1cblx0XHRcdFx0fVxuXHRcdFx0fVxuXG5cdFx0XHQuZmMtaGVhZC1jb250YWluZXIge1xuXHRcdFx0XHRib3JkZXItdG9wOiAwO1xuXHRcdFx0XHRib3JkZXItYm90dG9tOiAwO1xuXG5cdFx0XHRcdC5mYy13aWRnZXQtaGVhZGVyIHtcblx0XHRcdFx0XHRib3JkZXItdG9wOiAwO1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cblx0XHRcdC5mYy1ib2R5IHtcblx0XHRcdFx0PiB0cjpmaXJzdC1jaGlsZCB7XG5cdFx0XHRcdFx0PiB0aCxcblx0XHRcdFx0XHQ+IHRkIHtcblx0XHRcdFx0XHRcdGJvcmRlci10b3A6IDA7XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHR9XG5cdFx0XHRcdD4gdHI6bGFzdC1jaGlsZCB7XG5cdFx0XHRcdFx0PiB0aCxcblx0XHRcdFx0XHQ+IHRkIHtcblx0XHRcdFx0XHRcdGJvcmRlci1ib3R0b206IDA7XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHR9XG5cblx0XHRcdFx0LmZjLXJvdzpmaXJzdC1jaGlsZCB7XG5cdFx0XHRcdFx0dHI6Zmlyc3QtY2hpbGQge1xuXHRcdFx0XHRcdFx0dGQsXG5cdFx0XHRcdFx0XHR0aCB7XG5cdFx0XHRcdFx0XHRcdGJvcmRlci10b3A6IDA7XG5cdFx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0fVxuXG5cdFx0Ly8gQ2hhbmdlIGJveCBzaXppbmdcblx0XHQqIHtcblx0XHRcdCYsXG5cdFx0XHQmOmJlZm9yZSxcblx0XHRcdCY6YWZ0ZXIge1xuXHRcdFx0XHRib3gtc2l6aW5nOiBjb250ZW50LWJveDtcblx0XHRcdH1cblx0XHR9XG5cdH1cblxuXHQvLyBTY29wZSBwb3NpdGlvbmluZyBhbmQgei1pbmRleCdzXG5cdC5mYy12aWV3IHtcblx0XHQmLFxuXHRcdD4gdGFibGUge1xuXHRcdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRcdFx0ei1pbmRleDogMTtcblx0XHR9XG5cdH0gXG5cblxuXHQvLyBCYXNpYyB2aWV3XG5cdC8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG5cdC8vIERheSByb3cgc3RydWN0dXJlXG5cdC5mYy1iYXNpY1dlZWstdmlldyxcblx0LmZjLWJhc2ljRGF5LXZpZXcge1xuXHRcdC5mYy1jb250ZW50LXNrZWxldG9uIHtcblx0XHRcdHBhZGRpbmctdG9wOiAkZnVsbGNhbGVuZGFyLWV2ZW50LXNwYWNlcjtcblx0XHRcdHBhZGRpbmctYm90dG9tOiAkZnVsbGNhbGVuZGFyLWV2ZW50LXNwYWNlcjtcblx0XHR9XG5cdH1cblxuXHQvLyBSb3dzXG5cdC5mYy1iYXNpYy12aWV3IHRib2R5IC5mYy1yb3cge1xuXHRcdG1pbi1oZWlnaHQ6IDZlbTtcblx0fVxuXG5cdC8vIEEgXCJyaWdpZFwiIHJvdyB3aWxsIHRha2UgdXAgYSBjb25zdGFudCBhbW91bnQgb2YgaGVpZ2h0XG5cdC8vIGJlY2F1c2UgY29udGVudC1za2VsZXRvbiBpcyBhYnNvbHV0ZVxuXHQuZmMtcm93LmZjLXJpZ2lkIHtcblx0XHRvdmVyZmxvdzogaGlkZGVuO1xuXG5cdFx0LmZjLWNvbnRlbnQtc2tlbGV0b24ge1xuXHRcdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdFx0dG9wOiAwO1xuXHRcdFx0bGVmdDogMDtcblx0XHRcdHJpZ2h0OiAwO1xuXHRcdH1cblx0fVxuXG5cdC8vIFdlZWsgYW5kIGRheSBudW1iZXIgc3R5bGluZ1xuXHQuZmMtYmFzaWMtdmlldyB7XG5cblx0XHQvLyBXZWVrIGFuZCBkYXlcblx0XHQuZmMtZGF5LW51bWJlciB7XG5cdFx0XHRwYWRkaW5nOiAkZnVsbGNhbGVuZGFyLWV2ZW50LXNwYWNlcjtcblx0XHR9XG5cblx0XHQuZmMtd2Vlay1udW1iZXIge1xuXHRcdFx0Y29sb3I6ICRmdWxsY2FsZW5kYXItd2Vla2RheS1jb2xvcjtcblx0XHR9XG5cblx0XHR0ZC5mYy13ZWVrLW51bWJlcixcblx0XHR0aC5mYy13ZWVrLW51bWJlciB7XG5cdFx0XHRwYWRkaW5nOiAkdGFibGUtY2VsbC1wYWRkaW5nO1xuXHRcdFx0YmFja2dyb3VuZC1jb2xvcjogJGZ1bGxjYWxlbmRhci13ZWVrZGF5LWJnO1xuXHRcdH1cblxuXHRcdC8vIFdlZWsgbnVtYmVyIG9ubHlcblx0XHR0ZC5mYy13ZWVrLW51bWJlciB7XG5cdFx0XHRmb250LXNpemU6ICRmb250LXNpemUtc207XG5cdFx0XHRwYWRkaW5nLXRvcDogJGZ1bGxjYWxlbmRhci1ldmVudC1zcGFjZXI7XG5cdFx0XHRwYWRkaW5nLWJvdHRvbTogJGZ1bGxjYWxlbmRhci1ldmVudC1zcGFjZXI7XG5cdFx0fVxuXG5cdFx0c3Bhbi5mYy13ZWVrLW51bWJlciB7XG5cdFx0XHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cdFx0XHRmb250LXNpemU6ICRmb250LXNpemUtc207XG5cdFx0XHRwYWRkaW5nOiAkZnVsbGNhbGVuZGFyLWV2ZW50LXNwYWNlcjtcblx0XHR9XG5cblx0XHQvLyBEYXkgbnVtYmVyIG9ubHlcblx0XHQuZmMtZGF5LW51bWJlciB7XG5cdFx0XHR0ZXh0LWFsaWduOiByaWdodDtcblx0XHR9XG5cblx0XHQvLyBUb3AgZGF0ZVxuXHRcdC5mYy1kYXktdG9wIHtcblxuXHRcdFx0Ly8gRGF5IG51bWJlclxuXHRcdFx0LmZjLWRheS1udW1iZXIge1xuXHRcdFx0XHRmbG9hdDogcmlnaHQ7XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG5cblx0Ly8gT3RoZXIgbW9udGhcblx0LmZjLW90aGVyLW1vbnRoIHtcblx0XHQmLmZjLWRheS10b3AsXG5cdFx0Ji5mYy1kYXktbnVtYmVyIHtcblx0XHRcdG9wYWNpdHk6IDAuMztcblx0XHR9XG5cdH1cblxuXG5cdC8vIEFnZW5kYVZpZXcgYWxsLWRheSBhcmVhXG5cdC8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG5cdC5mYy1hZ2VuZGEtdmlldyB7XG5cdFx0LmZjLWRheS1ncmlkIHtcblx0XHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0XHRcdHotaW5kZXg6IDI7XG5cblx0XHRcdC5mYy1yb3cge1xuXHRcdFx0XHRtaW4taGVpZ2h0OiAzZW07XG5cblx0XHRcdFx0LmZjLWNvbnRlbnQtc2tlbGV0b24ge1xuXHRcdFx0XHRcdHBhZGRpbmctdG9wOiAkZnVsbGNhbGVuZGFyLWV2ZW50LXNwYWNlcjtcblx0XHRcdFx0XHRwYWRkaW5nLWJvdHRvbTogMDtcblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdH1cblx0fVxuXG5cblx0Ly8gVGltZUdyaWQgYXhpc1xuXHQvLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuXHQuZmMtYXhpcyB7XG5cdFx0dGV4dC1hbGlnbjogcmlnaHQ7XG5cblx0XHQuZmMgJiB7XG5cdFx0XHR2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuXHRcdFx0cGFkZGluZzogMCAkZnVsbGNhbGVuZGFyLWV2ZW50LXBhZGRpbmcteDtcblx0XHRcdGhlaWdodDogKCgkZnVsbGNhbGVuZGFyLWV2ZW50LXBhZGRpbmcteCAqIDIpICsgJGxpbmUtaGVpZ2h0LWNvbXB1dGVkKTtcblx0XHRcdHdoaXRlLXNwYWNlOiBub3dyYXA7XG5cdFx0fVxuXHR9XG5cblxuXHQvLyBUaW1lR3JpZCBzdHJ1Y3R1cmVcblx0Ly8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cblx0Ly8gQmFzZVxuXHQuZmMtdGltZS1ncmlkLWNvbnRhaW5lcixcblx0LmZjLXRpbWUtZ3JpZCB7XG5cdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRcdHotaW5kZXg6IDE7XG5cdH1cblxuXHQvLyBHcmlkXG5cdC5mYy10aW1lLWdyaWQge1xuXHRcdG1pbi1oZWlnaHQ6IDEwMCU7XG5cblx0XHR0YWJsZSB7XG5cdFx0XHRib3JkZXI6IDAgaGlkZGVuIHRyYW5zcGFyZW50O1xuXHRcdH1cblxuXHRcdD4gLmZjLWJnIHtcblx0XHRcdHotaW5kZXg6IDE7XG5cdFx0fVxuXG5cdFx0LmZjLXNsYXRzLFxuXHRcdD4gaHIge1xuXHRcdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRcdFx0ei1pbmRleDogMjtcblx0XHR9XG5cblx0XHQuZmMtY29udGVudC1jb2wge1xuXHRcdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRcdH1cblxuXHRcdC8vIENvbnRhaW5lcnNcblx0XHQuZmMtY29udGVudC1za2VsZXRvbiB7XG5cdFx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0XHR0b3A6IDA7XG5cdFx0XHRsZWZ0OiAwO1xuXHRcdFx0cmlnaHQ6IDA7XG5cdFx0XHR6LWluZGV4OiAzO1xuXHRcdH1cblx0XHQuZmMtYnVzaW5lc3MtY29udGFpbmVyIHtcblx0XHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0XHRcdHotaW5kZXg6IDE7XG5cdFx0fVxuXHRcdC5mYy1iZ2V2ZW50LWNvbnRhaW5lciB7XG5cdFx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdFx0XHR6LWluZGV4OiAyO1xuXHRcdH1cblx0XHQuZmMtaGlnaGxpZ2h0LWNvbnRhaW5lciB7XG5cdFx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdFx0XHR6LWluZGV4OiAzO1xuXHRcdH1cblx0XHQuZmMtZXZlbnQtY29udGFpbmVyIHtcblx0XHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0XHRcdHotaW5kZXg6IDQ7XG5cdFx0fVxuXHRcdC5mYy1ub3ctaW5kaWNhdG9yLWxpbmUge1xuXHRcdFx0ei1pbmRleDogNTtcblx0XHR9XG5cdFx0LmZjLWhlbHBlci1jb250YWluZXIge1xuXHRcdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRcdFx0ei1pbmRleDogNjtcblx0XHR9XG5cblxuXHRcdC8vXG5cdFx0Ly8gVGltZUdyaWQgc2xhdHNcblx0XHQvL1xuXG5cdFx0LmZjLXNsYXRzIHtcblx0XHRcdHRkIHtcblx0XHRcdFx0Ym9yZGVyLWJvdHRvbTogMDtcblx0XHRcdH1cblxuXHRcdFx0LmZjLW1pbm9yIHRkIHtcblx0XHRcdFx0Ym9yZGVyLXRvcC1zdHlsZTogZG90dGVkO1xuXHRcdFx0fVxuXHRcdH1cblxuXG5cdFx0Ly9cblx0XHQvLyBUaW1lR3JpZCBoaWdobGlnaHRpbmcgc2xvdHNcblx0XHQvL1xuXG5cdFx0Ly8gQ29udGFpbmVyXG5cdFx0LmZjLWhpZ2hsaWdodC1jb250YWluZXIge1xuXHRcdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRcdH1cblxuXHRcdC8vIEhpZ2hsaWdodFxuXHRcdC5mYy1oaWdobGlnaHQge1xuXHRcdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdFx0bGVmdDogMDtcblx0XHRcdHJpZ2h0OiAwO1xuXHRcdH1cblxuXG5cdFx0Ly9cblx0XHQvLyBUaW1lR3JpZCBldmVudCBjb250YWlubWVudFxuXHRcdC8vXG5cblx0XHQvLyBDb250YWluZXJzXG5cdFx0LmZjLWV2ZW50LWNvbnRhaW5lcixcblx0XHQuZmMtYmdldmVudC1jb250YWluZXIge1xuXHRcdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRcdH1cblxuXHRcdC8vIEJsdWUgZXZlbnQgY29udGFpbmVyXG5cdFx0LmZjLWV2ZW50IHtcblx0XHRcdGJveC1zaGFkb3c6IDAgMCAwICRmdWxsY2FsZW5kYXItZXZlbnQtYm9yZGVyLXdpZHRoICR3aGl0ZTtcblx0XHR9XG5cblx0XHQvLyBFdmVudHNcblx0XHQuZmMtZXZlbnQsXG5cdFx0LmZjLWJnZXZlbnQge1xuXHRcdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdFx0ei1pbmRleDogMTtcblx0XHRcdHBhZGRpbmc6ICRmdWxsY2FsZW5kYXItZXZlbnQtcGFkZGluZy14O1xuXHRcdH1cblxuXHRcdC8vIEJhY2tncm91bmQgZXZlbnRcblx0XHQuZmMtYmdldmVudCB7XG5cdFx0XHRsZWZ0OiAwO1xuXHRcdFx0cmlnaHQ6IDA7XG5cdFx0fVxuXHR9XG5cblxuXHQvLyBHZW5lcmljIFZlcnRpY2FsIEV2ZW50XG5cdC8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG5cdC5mYy12LWV2ZW50IHtcblxuXHRcdC8vIEV2ZW50cyB0aGF0IGFyZSBjb250aW51aW5nIGZyb20gYW5vdGhlciBkYXlcblx0XHQmLmZjLW5vdC1zdGFydCB7XG5cdFx0XHRAaW5jbHVkZSBib3JkZXItdG9wLXJhZGl1cygwKTtcblx0XHR9XG5cblx0XHQvLyBSZXBsYWNlIHNwYWNlIG1hZGUgYnkgdGhlIHRvcCBib3JkZXIgd2l0aCBwYWRkaW5nXG5cdFx0Ji5mYy1ub3QtZW5kIHtcblx0XHRcdEBpbmNsdWRlIGJvcmRlci1ib3R0b20tcmFkaXVzKDApO1xuXHRcdH1cblx0fVxuXG5cblx0Ly8gVGltZUdyaWQgZXZlbnQgc3R5bGluZ1xuXHQvLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuXHQuZmMtdGltZS1ncmlkLWV2ZW50IHtcblx0XHRvdmVyZmxvdzogaGlkZGVuO1xuXG5cdFx0Ly8gTmVlZCB0byBhbGxvdyB0b3VjaCByZXNpemVycyB0byBleHRlbmQgb3V0c2lkZSBldmVudCdzIGJvdW5kaW5nIGJveFxuXHRcdCYuZmMtc2VsZWN0ZWQge1xuXHRcdFx0b3ZlcmZsb3c6IHZpc2libGU7XG5cblx0XHRcdC8vIEhpZGUgc2VtaS13aGl0ZSBiYWNrZ3JvdW5kLCB0byBhcHBlYXIgZGFya2VyXG5cdFx0XHQuZmMtYmcge1xuXHRcdFx0XHRkaXNwbGF5OiBub25lO1xuXHRcdFx0fVxuXHRcdH1cblxuXHRcdC8vIENvbnRhaW5zIHRoZSB0aW1lIGFuZCB0aXRsZSwgYnV0IG5vIGJnIGFuZCByZXNpemVyXG5cdFx0LmZjLWNvbnRlbnQge1xuXHRcdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRcdFx0b3ZlcmZsb3c6IGhpZGRlbjtcblx0XHR9XG5cblx0XHQvLyBUaW1lIGZvbnQgd2VpZ2h0XG5cdFx0LmZjLXRpbWUge1xuXHRcdFx0Zm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1zZW1pYm9sZDtcblx0XHR9XG5cblx0XHQvLyBTaG9ydCBtb2RlLCB3aGVyZSB0aW1lIGFuZCB0aXRsZSBhcmUgb24gdGhlIHNhbWUgbGluZVxuXHRcdCYuZmMtc2hvcnQge1xuXG5cdFx0XHQvLyBDb250ZW50XG5cdFx0XHQuZmMtY29udGVudCB7XG5cdFx0XHRcdHdoaXRlLXNwYWNlOiBub3dyYXA7XG5cdFx0XHR9XG5cblx0XHRcdC8vIFRpbWUgYW5kIHRpdGxlXG5cdFx0XHQuZmMtdGltZSxcblx0XHRcdC5mYy10aXRsZSB7XG5cdFx0XHRcdGRpc3BsYXk6IGlubGluZS1ibG9jaztcblx0XHRcdFx0dmVydGljYWwtYWxpZ246IHRvcDtcblx0XHRcdH1cblx0XHRcdC5mYy10aW1lIHtcblx0XHRcdFx0JjpiZWZvcmUge1xuXHRcdFx0XHRcdGNvbnRlbnQ6IGF0dHIoZGF0YS1zdGFydCk7XG5cdFx0XHRcdH1cblx0XHRcdFx0JjphZnRlciB7XG5cdFx0XHRcdFx0Y29udGVudDogXCJcXDAwMEEwLVxcMDAwQTBcIjtcblx0XHRcdFx0fVxuXG5cdFx0XHRcdHNwYW4ge1xuXHRcdFx0XHRcdGRpc3BsYXk6IG5vbmU7XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHRcdC5mYy10aXRsZSB7XG5cdFx0XHRcdGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1zbTtcblx0XHRcdFx0cGFkZGluZzogMDtcblx0XHRcdH1cblx0XHR9XG5cblxuXHRcdC8vXG5cdFx0Ly8gUmVzaXplclxuXHRcdC8vXG5cblx0XHQuZmMtcmVzaXplciB7XG5cblx0XHR9XG5cblx0XHQvLyBDdXJzb3IgZGV2aWNlXG5cdFx0Ji5mYy1hbGxvdy1tb3VzZS1yZXNpemUge1xuXHRcdFx0LmZjLXJlc2l6ZXIge1xuXHRcdFx0XHR6LWluZGV4OiAzO1xuXHRcdFx0XHRsZWZ0OiAwO1xuXHRcdFx0XHRyaWdodDogMDtcblx0XHRcdFx0Ym90dG9tOiAwO1xuXHRcdFx0XHRvdmVyZmxvdzogaGlkZGVuO1xuXHRcdFx0XHRsaW5lLWhlaWdodDogMTtcblx0XHRcdFx0dGV4dC1hbGlnbjogY2VudGVyO1xuXHRcdFx0XHRjdXJzb3I6IHMtcmVzaXplO1xuXHRcdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKCRibGFjaywgMC4xKTtcblxuXHRcdFx0XHQvLyBTbWFsbCBpY29uXG5cdFx0XHRcdCY6YWZ0ZXIge1xuXHRcdFx0XHRcdGNvbnRlbnQ6IFwiPVwiO1xuXHRcdFx0XHRcdGRpc3BsYXk6IGlubGluZS1ibG9jaztcblx0XHRcdFx0XHR2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0fVxuXG5cdFx0Ly8gVG91Y2ggZGV2aWRlXG5cdFx0Ji5mYy1zZWxlY3RlZCAuZmMtcmVzaXplciB7XG5cdFx0XHRib3JkZXItd2lkdGg6ICRmdWxsY2FsZW5kYXItZXZlbnQtYm9yZGVyLXdpZHRoO1xuXHRcdFx0Ym9yZGVyLXN0eWxlOiBzb2xpZDtcblx0XHRcdGJvcmRlci1jb2xvcjogaW5oZXJpdDtcblx0XHRcdGJhY2tncm91bmQtY29sb3I6ICRmdWxsY2FsZW5kYXItZXZlbnQtY29sb3I7XG5cdFx0XHRsZWZ0OiA1MCU7XG5cdFx0XHRib3R0b206IDA7XG5cdFx0XHRtYXJnaW4tYm90dG9tOiBjYWxjKC0jeyRmdWxsY2FsZW5kYXItZXZlbnQtcmVzaXplci1zaXplLWggLyAyfSAtICN7JGZ1bGxjYWxlbmRhci1ldmVudC1ib3JkZXItd2lkdGh9KTtcblx0XHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcblx0XHRcdEBpbmNsdWRlIHNpemUoJGZ1bGxjYWxlbmRhci1ldmVudC1yZXNpemVyLXNpemUtdik7XG5cdFx0XHRAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRib3JkZXItcmFkaXVzLWNpcmNsZSk7XG5cdFx0fVxuXHR9XG5cblxuXHQvLyBOb3cgaW5kaWNhdG9yXG5cdC8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG5cdC5mYy10aW1lLWdyaWQge1xuXG5cdFx0Ly8gTGluZVxuXHRcdC5mYy1ub3ctaW5kaWNhdG9yLWxpbmUge1xuXHRcdFx0Ym9yZGVyLXRvcC13aWR0aDogJHRhYmxlLWJvcmRlci13aWR0aDtcblx0XHRcdGxlZnQ6IDA7XG5cdFx0XHRyaWdodDogMDtcblx0XHR9XG5cblx0XHQvLyBBcnJvd1xuXHRcdC5mYy1ub3ctaW5kaWNhdG9yLWFycm93IHtcblx0XHRcdGxlZnQ6IDA7XG5cdFx0XHRtYXJnaW4tdG9wOiAtJHRvb2x0aXAtYXJyb3ctd2lkdGg7XG5cdFx0XHRib3JkZXItd2lkdGg6ICR0b29sdGlwLWFycm93LXdpZHRoIDAgJHRvb2x0aXAtYXJyb3ctd2lkdGggJHRvb2x0aXAtYXJyb3ctd2lkdGg7XG5cdFx0XHRib3JkZXItdG9wLWNvbG9yOiB0cmFuc3BhcmVudDtcblx0XHRcdGJvcmRlci1ib3R0b20tY29sb3I6IHRyYW5zcGFyZW50O1xuXHRcdH1cblx0fVxuXG5cblx0Ly8gTGlzdCB2aWV3XG5cdC8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG5cdC8vIEV2ZW50IGRvdFxuXHQuZmMtZXZlbnQtZG90IHtcblx0XHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cdFx0QGluY2x1ZGUgc2l6ZSgkYmFkZ2UtbWFyay1zaXplKTtcblx0XHRAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRib3JkZXItcmFkaXVzLWNpcmNsZSk7XG5cdH1cblxuXHQvLyBMaXN0IHZpZXcgYmFzZVxuXHQuZmMtbGlzdC12aWV3IHtcblx0XHRib3JkZXItd2lkdGg6IDA7XG5cdFx0Ym9yZGVyLXN0eWxlOiBzb2xpZDtcblx0XHRkaXJlY3Rpb246IGx0cjtcblx0fVxuXG5cblx0Ly9cblx0Ly8gVGFibGUgcmVzZXRzXG5cdC8vXG5cblx0LmZjLWxpc3QtdGFibGUge1xuXHRcdC5mYyAmIHtcblx0XHRcdHRhYmxlLWxheW91dDogYXV0bztcblx0XHR9XG5cblx0XHR0ZCB7XG5cdFx0XHRib3JkZXItd2lkdGg6ICR0YWJsZS1ib3JkZXItd2lkdGggMCAwO1xuXHRcdFx0cGFkZGluZzogJHRhYmxlLWNlbGwtcGFkZGluZztcblx0XHR9XG5cblx0XHR0cjpmaXJzdC1jaGlsZCB0ZCB7XG5cdFx0XHRib3JkZXItdG9wLXdpZHRoOiAwO1xuXHRcdH1cblx0fVxuXG5cblx0Ly9cblx0Ly8gRGF5IGhlYWRpbmdzIHdpdGggdGhlIGxpc3Rcblx0Ly9cblxuXHQuZmMtbGlzdC1oZWFkaW5nIHtcblx0XHRib3JkZXItYm90dG9tLXdpZHRoOiAkdGFibGUtYm9yZGVyLXdpZHRoO1xuXG5cdFx0dGQge1xuXHRcdFx0Zm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1zZW1pYm9sZDtcblx0XHR9XG5cdH1cblx0LmZjLWxpc3QtaGVhZGluZy1tYWluIHtcblx0XHRmbG9hdDogbGVmdDtcblx0fVxuXHQuZmMtbGlzdC1oZWFkaW5nLWFsdCB7XG5cdFx0ZmxvYXQ6IHJpZ2h0O1xuXHR9XG5cblxuXHQvL1xuXHQvLyBFdmVudCBsaXN0IGl0ZW1zXG5cdC8vXG5cblx0Ly8gSXRlbVxuXHQuZmMtbGlzdC1pdGVtIHtcblx0XHR0ZCB7XG5cdFx0XHRAaW5jbHVkZSB0cmFuc2l0aW9uKGFsbCBlYXNlLWluLW91dCAkY29tcG9uZW50LXRyYW5zaXRpb24tdGltZXIpO1xuXHRcdH1cblxuXHRcdCYuZmMtaGFzLXVybCB7XG5cdFx0XHRjdXJzb3I6IHBvaW50ZXI7XG5cdFx0fVxuXG5cdFx0Ly8gQ2hhbmdlIGJnIG9uIGhvdmVyXG5cdFx0QGluY2x1ZGUgaG92ZXIge1xuXHRcdFx0dGQge1xuXHRcdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkdGFibGUtaG92ZXItYmc7XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG5cblx0Ly8gTWFya2Vyc1xuXHQuZmMtbGlzdC1pdGVtLW1hcmtlcixcblx0LmZjLWxpc3QtaXRlbS10aW1lIHtcblx0XHR3aGl0ZS1zcGFjZTogbm93cmFwO1xuXHRcdHdpZHRoOiAxcHg7XG5cdH1cblxuXHQvLyBNYWtlIHRoZSBkb3QgY2xvc2VyIHRvIHRoZSBldmVudCB0aXRsZVxuXHQuZmMtbGlzdC1pdGVtLW1hcmtlciB7XG5cdFx0cGFkZGluZy1yaWdodDogMDtcblx0fVxuXG5cdC8vIFRpdGxlXG5cdC5mYy1saXN0LWl0ZW0tdGl0bGUgYSB7XG5cdFx0dGV4dC1kZWNvcmF0aW9uOiBub25lO1xuXHRcdGNvbG9yOiBpbmhlcml0O1xuXHR9XG5cblxuXHQvL1xuXHQvLyBNZXNzYWdlIHdoZW4gbm8gZXZlbnRzXG5cdC8vXG5cblx0LmZjLWxpc3QtZW1wdHktd3JhcDIge1xuXHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHR0b3A6IDA7XG5cdFx0bGVmdDogMDtcblx0XHRyaWdodDogMDtcblx0XHRib3R0b206IDA7XG5cdH1cblx0LmZjLWxpc3QtZW1wdHktd3JhcDEge1xuXHRcdGRpc3BsYXk6IHRhYmxlO1xuXHRcdEBpbmNsdWRlIHNpemUoMTAwJSk7XG5cdH1cblx0LmZjLWxpc3QtZW1wdHkge1xuXHRcdGRpc3BsYXk6IHRhYmxlLWNlbGw7XG5cdFx0dmVydGljYWwtYWxpZ246IG1pZGRsZTtcblx0XHR0ZXh0LWFsaWduOiBjZW50ZXI7XG5cdH1cblx0LmZjLXVudGhlbWVkIC5mYy1saXN0LWVtcHR5IHsgLyogdGhlbWUgd2lsbCBwcm92aWRlIG93biBiYWNrZ3JvdW5kICovXG5cdFx0YmFja2dyb3VuZC1jb2xvcjogJGZ1bGxjYWxlbmRhci1ub25idXNpbmVzcy1iZztcblx0fVxuXG5cblx0Ly8gUmVzcG9uc2l2ZSBzdHVmZlxuXHQvLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuXHRAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oc20pIHtcblx0XHQuZmMtdG9vbGJhciB7XG5cdFx0XHQuZmMtbGVmdCxcblx0XHRcdC5mYy1sZWZ0ID4gLmZjLWJ1dHRvbixcblx0XHRcdC5mYy1yaWdodCxcblx0XHRcdC5mYy1yaWdodCA+IC5mYy1idXR0b24sXG5cdFx0XHQuZmMtbGVmdCAuZmMtYnV0dG9uLWdyb3VwLFxuXHRcdFx0LmZjLXJpZ2h0IC5mYy1idXR0b24tZ3JvdXAge1xuXHRcdFx0XHRmbG9hdDogbm9uZTtcblx0XHRcdFx0d2lkdGg6IGF1dG87XG5cdFx0XHRcdHZlcnRpY2FsLWFsaWduOiB0b3A7XG5cdFx0XHR9XG5cblx0XHRcdC5mYy1sZWZ0LFxuXHRcdFx0LmZjLXJpZ2h0IHtcblx0XHRcdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0XHRcdG1hcmdpbi1ib3R0b206ICgkc3BhY2VyIC8gMik7XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG59XG4iLCIvKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAqXG4gKiAgIyBJbWFnZSBjcm9wcGVyXG4gKlxuICogIFN0eWxlcyBmb3IgY3JvcHBlci5taW4uanMgLSBhIHNpbXBsZSBqUXVlcnkgaW1hZ2UgY3JvcHBpbmcgcGx1Z2luXG4gKlxuICogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuXG4vLyBDaGVjayBpZiBjb21wb25lbnQgaXMgZW5hYmxlZFxuQGlmICRlbmFibGUtaW1hZ2UtY3JvcHBlciB7XG5cblxuXHQvL1xuXHQvLyBEZW1vXG5cdC8vXG5cblx0Ly8gR3JleSBkZW1vIGNvbnRhaW5lclxuXHQuaW1hZ2UtY3JvcHBlci1jb250YWluZXIge1xuXHRcdC8qcnRsOmlnbm9yZSovXG5cdFx0ZGlyZWN0aW9uOiBsdHI7XG5cdFx0aGVpZ2h0OiA0MDBweDtcblx0XHR3aWR0aDogMTAwJTtcblx0XHRvdmVyZmxvdzogaGlkZGVuO1xuXHRcdGJhY2tncm91bmQtaW1hZ2U6IHVybChcImRhdGE6aW1hZ2UvcG5nO2Jhc2U2NCxpVkJPUncwS0dnb0FBQUFOU1VoRVVnQUFBQkFBQUFBUUFRTUFBQUFsUFcwaUFBQUFBM05DU1ZRSUNBamI0VS9nQUFBQUJsQk1WRVhNek16Ly8vL1RqUlYyQUFBQUNYQklXWE1BQUFyckFBQUs2d0dDaXcxYUFBQUFISFJGV0hSVGIyWjBkMkZ5WlFCQlpHOWlaU0JHYVhKbGQyOXlhM01nUTFNMjZMeXlqQUFBQUJGSlJFRlVDSmxqK00vQWdCVmhGLzBQQUg2L0QvSGtEeE9HQUFBQUFFbEZUa1N1UW1DQ1wiKTtcblx0fVxuXG5cdC8vIERlbW8gcHJldmlld3Ncblx0LmVnLXByZXZpZXcge1xuXG5cdFx0Ly8gUHJldmlldyBjb250YWluZXJcblx0XHQucHJldmlldyB7XG5cdFx0XHQvKnJ0bDppZ25vcmUqL1xuXHRcdFx0ZGlyZWN0aW9uOiBsdHI7XG5cdFx0fVxuXG5cdFx0Ly8gTGFyZ2Vcblx0XHQucHJldmlldy1sZyB7XG5cdFx0XHRAaW5jbHVkZSBzaXplKDE1MHB4KTtcblx0XHR9XG5cblx0XHQvLyBCYXNlXG5cdFx0LnByZXZpZXctbWQge1xuXHRcdFx0QGluY2x1ZGUgc2l6ZSgxMjBweCk7XG5cdFx0fVxuXG5cdFx0Ly8gU21hbGxcblx0XHQucHJldmlldy1zbSB7XG5cdFx0XHRAaW5jbHVkZSBzaXplKDkwcHgpO1xuXHRcdH1cblxuXHRcdC8vIE1pbmlcblx0XHQucHJldmlldy14cyB7XG5cdFx0XHRAaW5jbHVkZSBzaXplKDYwcHgpO1xuXHRcdH1cblxuXHRcdC8vIE1pY3JvXG5cdFx0LnByZXZpZXcteHhzIHtcblx0XHRcdEBpbmNsdWRlIHNpemUoNDBweCk7XG5cdFx0fVxuXHR9XG5cblxuXHQvL1xuXHQvLyBDb3JlXG5cdC8vXG5cblx0Ly8gTWFpbiBjb250YWluZXJcblx0LmNyb3BwZXItY29udGFpbmVyIHtcblx0XHQvKnJ0bDppZ25vcmUqL1xuXHRcdGRpcmVjdGlvbjogbHRyICFpbXBvcnRhbnQ7XG5cdFx0Zm9udC1zaXplOiAwO1xuXHRcdGxpbmUtaGVpZ2h0OiAwO1xuXHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0XHR0b3VjaC1hY3Rpb246IG5vbmU7XG5cdFx0LXdlYmtpdC10YXAtaGlnaGxpZ2h0LWNvbG9yOiB0cmFuc3BhcmVudDtcblx0XHQtd2Via2l0LXRvdWNoLWNhbGxvdXQ6IG5vbmU7XG5cdFx0dXNlci1zZWxlY3Q6IG5vbmU7XG5cblx0XHQvLyBJbWFnZVxuXHRcdGltZyB7XG5cdFx0XHRkaXNwbGF5OiBibG9jaztcblx0XHRcdHdpZHRoOiAxMDAlO1xuXHRcdFx0bWluLXdpZHRoOiAwICFpbXBvcnRhbnQ7XG5cdFx0XHRtYXgtd2lkdGg6IG5vbmUgIWltcG9ydGFudDtcblx0XHRcdGhlaWdodDogMTAwJTtcblx0XHRcdG1pbi1oZWlnaHQ6IDAgIWltcG9ydGFudDtcblx0XHRcdG1heC1oZWlnaHQ6IG5vbmUgIWltcG9ydGFudDtcblx0XHRcdGltYWdlLW9yaWVudGF0aW9uOiAwZGVnICFpbXBvcnRhbnQ7XG5cdFx0fVxuXHR9XG5cblx0Ly8gQ29udGFpbmVyc1xuXHQuY3JvcHBlci13cmFwLWJveCxcblx0LmNyb3BwZXItY2FudmFzLFxuXHQuY3JvcHBlci1kcmFnLWJveCxcblx0LmNyb3BwZXItY3JvcC1ib3gsXG5cdC5jcm9wcGVyLW1vZGFsIHtcblx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0dG9wOiAwO1xuXHRcdHJpZ2h0OiAwO1xuXHRcdGJvdHRvbTogMDtcblx0XHRsZWZ0OiAwO1xuXHR9XG5cblx0Ly8gV3JhcCBib3hcblx0LmNyb3BwZXItd3JhcC1ib3gge1xuXHRcdG92ZXJmbG93OiBoaWRkZW47XG5cdH1cblxuXHQvLyBEcmFnIGJveFxuXHQuY3JvcHBlci1kcmFnLWJveCB7XG5cdFx0YmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuXHRcdG9wYWNpdHk6IDA7XG5cdH1cblxuXHQvLyBNb2RhbFxuXHQuY3JvcHBlci1tb2RhbCB7XG5cdFx0YmFja2dyb3VuZC1jb2xvcjogJG1vZGFsLWJhY2tkcm9wLWJnO1xuXHRcdG9wYWNpdHk6ICRtb2RhbC1iYWNrZHJvcC1vcGFjaXR5O1xuXHR9XG5cblx0Ly8gVmlldyBib3hcblx0LmNyb3BwZXItdmlldy1ib3gge1xuXHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdG92ZXJmbG93OiBoaWRkZW47XG5cdFx0QGluY2x1ZGUgc2l6ZSgxMDAlKTtcblx0fVxuXG5cdC8vIERhc2hlZCBjcm9wcGVyXG5cdC5jcm9wcGVyLWRhc2hlZCB7XG5cdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdGJvcmRlcjogMCBkYXNoZWQgJGNyb3BwZXItZ3JpZC1jb2xvcjtcblx0XHRvcGFjaXR5OiAwLjU7XG5cblx0XHQvLyBIb3Jpem9udGFsXG5cdFx0Ji5kYXNoZWQtaCB7XG5cdFx0XHR0b3A6IDMzLjMzMzMzJTtcblx0XHRcdC8qcnRsOmlnbm9yZSovXG5cdFx0XHRsZWZ0OiAwO1xuXHRcdFx0bGVmdDogMDtcblx0XHRcdHdpZHRoOiAxMDAlO1xuXHRcdFx0aGVpZ2h0OiAzMy4zMzMzMyU7XG5cdFx0XHRib3JkZXItdG9wLXdpZHRoOiAkY3JvcHBlci1ncmlkLXNpemU7XG5cdFx0XHRib3JkZXItYm90dG9tLXdpZHRoOiAkY3JvcHBlci1ncmlkLXNpemU7XG5cdFx0fVxuXG5cdFx0Ly8gVmVydGljYWxcblx0XHQmLmRhc2hlZC12IHtcblx0XHRcdHRvcDogMDtcblx0XHRcdC8qcnRsOmlnbm9yZSovXG5cdFx0XHRsZWZ0OiAzMy4zMzMzMyU7XG5cdFx0XHR3aWR0aDogMzMuMzMzMzMlO1xuXHRcdFx0aGVpZ2h0OiAxMDAlO1xuXHRcdFx0Ym9yZGVyLXJpZ2h0LXdpZHRoOiAkY3JvcHBlci1ncmlkLXNpemU7XG5cdFx0XHRib3JkZXItbGVmdC13aWR0aDogJGNyb3BwZXItZ3JpZC1zaXplO1xuXHRcdH1cblx0fVxuXG5cdC8vIENlbnRlciBjcm9wcGVyXG5cdC5jcm9wcGVyLWNlbnRlciB7XG5cdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdHRvcDogNTAlO1xuXHRcdC8qcnRsOmlnbm9yZSovXG5cdFx0bGVmdDogNTAlO1xuXHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdHdpZHRoOiAwO1xuXHRcdGhlaWdodDogMDtcblx0XHRvcGFjaXR5OiAwLjc1O1xuXHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xuXG5cdFx0Ly8gTGluZXNcblx0XHQmOmJlZm9yZSxcblx0XHQmOmFmdGVyIHtcblx0XHRcdGNvbnRlbnQ6ICcgJztcblx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdFx0YmFja2dyb3VuZC1jb2xvcjogJGNyb3BwZXItZ3JpZC1jb2xvcjtcblx0XHR9XG5cdFx0JjpiZWZvcmUge1xuXHRcdFx0dG9wOiAwO1xuXHRcdFx0LypydGw6aWdub3JlKi9cblx0XHRcdGxlZnQ6IC0oKCRjcm9wcGVyLWdyaWQtY2VudGVyLXNpemUgLSAkY3JvcHBlci1ncmlkLXNpemUpIC8gMik7XG5cdFx0XHR3aWR0aDogJGNyb3BwZXItZ3JpZC1jZW50ZXItc2l6ZTtcblx0XHRcdGhlaWdodDogJGNyb3BwZXItZ3JpZC1zaXplO1xuXHRcdH1cblx0XHQmOmFmdGVyIHtcblx0XHRcdHRvcDogLSgoJGNyb3BwZXItZ3JpZC1jZW50ZXItc2l6ZSAtICRjcm9wcGVyLWdyaWQtc2l6ZSkgLyAyKTtcblx0XHRcdC8qcnRsOmlnbm9yZSovXG5cdFx0XHRsZWZ0OiAwO1xuXHRcdFx0d2lkdGg6ICRjcm9wcGVyLWdyaWQtc2l6ZTtcblx0XHRcdGhlaWdodDogJGNyb3BwZXItZ3JpZC1jZW50ZXItc2l6ZTtcblx0XHR9XG5cdH1cblxuXG5cdC8vXG5cdC8vIENyb3BwZXIgYXJlYVxuXHQvL1xuXG5cdC8vIENvbW1vblxuXHQuY3JvcHBlci1mYWNlLFxuXHQuY3JvcHBlci1saW5lLFxuXHQuY3JvcHBlci1wb2ludCB7XG5cdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdHdpZHRoOiAxMDAlO1xuXHRcdGhlaWdodDogMTAwJTtcblx0XHRvcGFjaXR5OiAwLjE7XG5cdH1cblxuXHQvLyBNYWluIGFyZWFcblx0LmNyb3BwZXItZmFjZSB7XG5cdFx0dG9wOiAwO1xuXHRcdC8qcnRsOmlnbm9yZSovXG5cdFx0bGVmdDogMDtcblx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG5cdH1cblxuXHQvLyBMaW5lc1xuXHQuY3JvcHBlci1saW5lIHtcblx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkY3JvcHBlci1yZXNpemVyLWNvbG9yO1xuXG5cdFx0Ly8gUmlnaHRcblx0XHQmLmxpbmUtZSB7XG5cdFx0XHR0b3A6IDA7XG5cdFx0XHQvKnJ0bDppZ25vcmUqL1xuXHRcdFx0cmlnaHQ6IC0oJGNyb3BwZXItcmVzaXplci1zaXplIC8gMik7XG5cdFx0XHR3aWR0aDogJGNyb3BwZXItcmVzaXplci1zaXplO1xuXHRcdFx0Y3Vyc29yOiBlLXJlc2l6ZTtcblx0XHR9XG5cblx0XHQvLyBUb3Bcblx0XHQmLmxpbmUtbiB7XG5cdFx0XHR0b3A6IC0oJGNyb3BwZXItcmVzaXplci1zaXplIC8gMik7XG5cdFx0XHQvKnJ0bDppZ25vcmUqL1xuXHRcdFx0bGVmdDogMDtcblx0XHRcdGhlaWdodDogJGNyb3BwZXItcmVzaXplci1zaXplO1xuXHRcdFx0Y3Vyc29yOiBuLXJlc2l6ZTtcblx0XHR9XG5cblx0XHQvLyBMZWZ0XG5cdFx0Ji5saW5lLXcge1xuXHRcdFx0dG9wOiAwO1xuXHRcdFx0LypydGw6aWdub3JlKi9cblx0XHRcdGxlZnQ6IC0oJGNyb3BwZXItcmVzaXplci1zaXplIC8gMik7XG5cdFx0XHR3aWR0aDogJGNyb3BwZXItcmVzaXplci1zaXplO1xuXHRcdFx0Y3Vyc29yOiB3LXJlc2l6ZTtcblx0XHR9XG5cblx0XHQvLyBCb3R0b21cblx0XHQmLmxpbmUtcyB7XG5cdFx0XHRib3R0b206IC0oJGNyb3BwZXItcmVzaXplci1zaXplIC8gMik7XG5cdFx0XHQvKnJ0bDppZ25vcmUqL1xuXHRcdFx0bGVmdDogMDtcblx0XHRcdGhlaWdodDogJGNyb3BwZXItcmVzaXplci1zaXplO1xuXHRcdFx0Y3Vyc29yOiBzLXJlc2l6ZTtcblx0XHR9XG5cdH1cblxuXHQvLyBQb2ludHNcblx0LmNyb3BwZXItcG9pbnQge1xuXHRcdGJhY2tncm91bmQtY29sb3I6ICRjcm9wcGVyLXJlc2l6ZXItY29sb3I7XG5cdFx0b3BhY2l0eTogMC43NTtcblx0XHRAaW5jbHVkZSBzaXplKCRjcm9wcGVyLXJlc2l6ZXItc2l6ZSk7XG5cblx0XHQmLnBvaW50LWUge1xuXHRcdFx0dG9wOiA1MCU7XG5cdFx0XHQvKnJ0bDppZ25vcmUqL1xuXHRcdFx0cmlnaHQ6IC0oJGNyb3BwZXItcmVzaXplci1zaXplIC8gMik7XG5cdFx0XHRtYXJnaW4tdG9wOiAtKCRjcm9wcGVyLXJlc2l6ZXItc2l6ZSAvIDIpO1xuXHRcdFx0Y3Vyc29yOiBlLXJlc2l6ZTtcblx0XHR9XG5cblx0XHQmLnBvaW50LW4ge1xuXHRcdFx0dG9wOiAtKCRjcm9wcGVyLXJlc2l6ZXItc2l6ZSAvIDIpO1xuXHRcdFx0LypydGw6aWdub3JlKi9cblx0XHRcdGxlZnQ6IDUwJTtcblx0XHRcdG1hcmdpbi1sZWZ0OiAtKCRjcm9wcGVyLXJlc2l6ZXItc2l6ZSAvIDIpO1xuXHRcdFx0Y3Vyc29yOiBuLXJlc2l6ZTtcblx0XHR9XG5cblx0XHQmLnBvaW50LXcge1xuXHRcdFx0dG9wOiA1MCU7XG5cdFx0XHQvKnJ0bDppZ25vcmUqL1xuXHRcdFx0bGVmdDogLSgkY3JvcHBlci1yZXNpemVyLXNpemUgLyAyKTtcblx0XHRcdG1hcmdpbi10b3A6IC0oJGNyb3BwZXItcmVzaXplci1zaXplIC8gMik7XG5cdFx0XHRjdXJzb3I6IHctcmVzaXplO1xuXHRcdH1cblxuXHRcdCYucG9pbnQtcyB7XG5cdFx0XHRib3R0b206IC0oJGNyb3BwZXItcmVzaXplci1zaXplIC8gMik7XG5cdFx0XHQvKnJ0bDppZ25vcmUqL1xuXHRcdFx0bGVmdDogNTAlO1xuXHRcdFx0bWFyZ2luLWxlZnQ6IC0oJGNyb3BwZXItcmVzaXplci1zaXplIC8gMik7XG5cdFx0XHRjdXJzb3I6IHMtcmVzaXplO1xuXHRcdH1cblxuXHRcdCYucG9pbnQtbmUge1xuXHRcdFx0dG9wOiAtKCRjcm9wcGVyLXJlc2l6ZXItc2l6ZSAvIDIpO1xuXHRcdFx0LypydGw6aWdub3JlKi9cblx0XHRcdHJpZ2h0OiAtKCRjcm9wcGVyLXJlc2l6ZXItc2l6ZSAvIDIpO1xuXHRcdFx0Y3Vyc29yOiBuZS1yZXNpemU7XG5cdFx0fVxuXG5cdFx0Ji5wb2ludC1udyB7XG5cdFx0XHR0b3A6IC0oJGNyb3BwZXItcmVzaXplci1zaXplIC8gMik7XG5cdFx0XHQvKnJ0bDppZ25vcmUqL1xuXHRcdFx0bGVmdDogLSgkY3JvcHBlci1yZXNpemVyLXNpemUgLyAyKTtcblx0XHRcdGN1cnNvcjogbnctcmVzaXplO1xuXHRcdH1cblxuXHRcdCYucG9pbnQtc3cge1xuXHRcdFx0Ym90dG9tOiAtKCRjcm9wcGVyLXJlc2l6ZXItc2l6ZSAvIDIpO1xuXHRcdFx0LypydGw6aWdub3JlKi9cblx0XHRcdGxlZnQ6IC0oJGNyb3BwZXItcmVzaXplci1zaXplIC8gMik7XG5cdFx0XHRjdXJzb3I6IHN3LXJlc2l6ZTtcblx0XHR9XG5cblx0XHQmLnBvaW50LXNlIHtcblx0XHRcdC8qcnRsOmlnbm9yZSovXG5cdFx0XHRyaWdodDogLSgkY3JvcHBlci1yZXNpemVyLXNpemUgLyAyKTtcblx0XHRcdGJvdHRvbTogLSgkY3JvcHBlci1yZXNpemVyLXNpemUgLyAyKTtcblx0XHRcdGN1cnNvcjogc2UtcmVzaXplO1xuXHRcdFx0b3BhY2l0eTogMTtcblx0XHRcdEBpbmNsdWRlIHNpemUoJGNyb3BwZXItcmVzaXplci1zaXplKTtcblxuXHRcdFx0JjpiZWZvcmUge1xuXHRcdFx0XHRjb250ZW50OiAnICc7XG5cdFx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRcdFx0LypydGw6aWdub3JlKi9cblx0XHRcdFx0cmlnaHQ6IC01MCU7XG5cdFx0XHRcdGJvdHRvbTogLTUwJTtcblx0XHRcdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0XHRcdGJhY2tncm91bmQtY29sb3I6ICRjcm9wcGVyLXJlc2l6ZXItY29sb3I7XG5cdFx0XHRcdG9wYWNpdHk6IDA7XG5cdFx0XHRcdEBpbmNsdWRlIHNpemUoMjAwJSk7XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG5cblxuXHQvL1xuXHQvLyBNaXNjXG5cdC8vXG5cblx0Ly8gQmFja2dyb3VuZFxuXHQuY3JvcHBlci1iZyB7XG5cdFx0YmFja2dyb3VuZC1pbWFnZTogdXJsKCdkYXRhOmltYWdlL3BuZztiYXNlNjQsaVZCT1J3MEtHZ29BQUFBTlNVaEVVZ0FBQUJBQUFBQVFBUU1BQUFBbFBXMGlBQUFBQTNOQ1NWUUlDQWpiNFUvZ0FBQUFCbEJNVkVYTXpNei8vLy9UalJWMkFBQUFDWEJJV1hNQUFBcnJBQUFLNndHQ2l3MWFBQUFBSEhSRldIUlRiMlowZDJGeVpRQkJaRzlpWlNCR2FYSmxkMjl5YTNNZ1ExTTI2THl5akFBQUFCRkpSRUZVQ0psaitNL0FnQlZoRi8wUEFINi9EL0hrRHhPR0FBQUFBRWxGVGtTdVFtQ0MnKTtcblx0fVxuXG5cdC8vIEludmlzaWJsZSBlbGVtZW50c1xuXHQuY3JvcHBlci1pbnZpc2libGUge1xuXHRcdG9wYWNpdHk6IDA7XG5cdH1cblxuXHQvLyBIaWRkZW4gZWxlbWVudHNcblx0LmNyb3BwZXItaGlkZSB7XG5cdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdHdpZHRoOiAwO1xuXHRcdGhlaWdodDogMDtcblx0fVxuXHQuY3JvcHBlci1oaWRkZW4ge1xuXHRcdGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcblx0fVxuXG5cdC8vIERpc2FibGVkIGVsZW1lbnRzXG5cdC5jcm9wcGVyLWRpc2FibGVkIHtcblx0XHQuY3JvcHBlci1kcmFnLWJveCxcblx0XHQuY3JvcHBlci1mYWNlLFxuXHRcdC5jcm9wcGVyLWxpbmUsXG5cdFx0LmNyb3BwZXItcG9pbnQge1xuXHRcdFx0Y3Vyc29yOiAkY3Vyc29yLWRpc2FibGVkO1xuXHRcdH1cblx0fVxuXG5cblx0Ly9cblx0Ly8gQ3Vyc29yc1xuXHQvL1xuXG5cdC8vIE1vdmVcblx0LmNyb3BwZXItbW92ZSB7XG5cdFx0Y3Vyc29yOiBtb3ZlO1xuXHR9XG5cblx0Ly8gQ3JvcFxuXHQuY3JvcHBlci1jcm9wIHtcblx0ICBjdXJzb3I6IGNyb3NzaGFpcjtcblx0fVxufVxuIiwiLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gKlxuICogICMgRmFuY3lib3ggbGlnaHRib3hcbiAqXG4gKiAgU3R5bGVzIGZvciBmYW5jeWJveC5taW4uanMgLSBNYWMtc3R5bGUgXCJsaWdodGJveFwiIHBsdWdpblxuICpcbiAqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cblxuLy8gQ2hlY2sgaWYgY29tcG9uZW50IGlzIGVuYWJsZWRcbkBpZiAkZW5hYmxlLWZhbmN5Ym94IHtcblxuXG4gICAgLy8gQ29yZVxuICAgIC8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4gICAgLmZhbmN5Ym94LXdyYXAsXG4gICAgLmZhbmN5Ym94LXNraW4sXG4gICAgLmZhbmN5Ym94LW91dGVyLFxuICAgIC5mYW5jeWJveC1pbm5lcixcbiAgICAuZmFuY3lib3gtaW1hZ2UsXG4gICAgLmZhbmN5Ym94LXdyYXAgaWZyYW1lLFxuICAgIC5mYW5jeWJveC13cmFwIG9iamVjdCxcbiAgICAuZmFuY3lib3gtbmF2LFxuICAgIC5mYW5jeWJveC1uYXYgc3BhbixcbiAgICAuZmFuY3lib3gtdG1wIHtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICBib3JkZXI6IDA7XG4gICAgICAgIG91dGxpbmU6IG5vbmU7XG4gICAgICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gICAgfVxuXG4gICAgLy8gV3JhcHBlclxuICAgIC5mYW5jeWJveC13cmFwIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgIC8qcnRsOmlnbm9yZSovXG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIHotaW5kZXg6IDgwMjA7XG4gICAgfVxuXG4gICAgLy8gU2tpblxuICAgIC5mYW5jeWJveC1za2luIHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbW9kYWwtY29udGVudC1iZztcbiAgICAgICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkYm9yZGVyLXJhZGl1cyk7XG4gICAgfVxuXG4gICAgLy8gT3BlbmVkIGxpZ2h0Ym94XG4gICAgLmZhbmN5Ym94LW9wZW5lZCB7XG4gICAgICAgIHotaW5kZXg6IDgwMzA7XG5cbiAgICAgICAgLmZhbmN5Ym94LXNraW4ge1xuICAgICAgICAgICAgQGluY2x1ZGUgYm94LXNoYWRvdygkbW9kYWwtY29udGVudC1ib3gtc2hhZG93LXhzKTtcblxuICAgICAgICB9XG4gICAgfVxuXG5cbiAgICAvLyBDb250ZW50XG4gICAgLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbiAgICAvLyBJbWFnZSBjb250YWluZXJzXG4gICAgLmZhbmN5Ym94LW91dGVyLFxuICAgIC5mYW5jeWJveC1pbm5lciB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB9XG4gICAgLmZhbmN5Ym94LWlubmVyIHtcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcblxuICAgICAgICAuZmFuY3lib3gtdHlwZS1pZnJhbWUgJiB7XG4gICAgICAgICAgICAtd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzogdG91Y2g7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBJbWFnZVxuICAgIC5mYW5jeWJveC1pbWFnZSxcbiAgICAuZmFuY3lib3gtaWZyYW1lIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIEBpbmNsdWRlIHNpemUoMTAwJSk7XG4gICAgfVxuICAgIC5mYW5jeWJveC1pbWFnZSB7XG4gICAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICAgICAgbWF4LWhlaWdodDogMTAwJTtcbiAgICB9XG5cbiAgICAvLyBMb2FkaW5nIGluZGljYXRvclxuICAgICNmYW5jeWJveC1sb2FkaW5nIHtcbiAgICAgICAgcG9zaXRpb246IGZpeGVkO1xuICAgICAgICB0b3A6IDUwJTtcbiAgICAgICAgbGVmdDogNTAlO1xuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgIHotaW5kZXg6IDgwNjA7XG4gICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgIG9wYWNpdHk6IDAuODtcblxuICAgICAgICAvLyBJY29uIGNvbnRhaW5lclxuICAgICAgICBkaXYge1xuXG4gICAgICAgICAgICAvLyBJY29uXG4gICAgICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgICAgICBjb250ZW50OiAnXFxlYjU1JztcbiAgICAgICAgICAgICAgICBmb250LWZhbWlseTogJGljb24tZm9udC1mYW1pbHk7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAkaWNvbi1mb250LXNpemU7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogLSgkaWNvbi1mb250LXNpemUgLyAyKTtcbiAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogLSgkaWNvbi1mb250LXNpemUgLyAyKTtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMTtcbiAgICAgICAgICAgICAgICBhbmltYXRpb246IHJvdGF0aW9uIDFzIGVhc2UgaW5maW5pdGU7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgbGwtZm9udC1zbW9vdGhpbmcoKTtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBzaXplKCRpY29uLWZvbnQtc2l6ZSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBDbG9zZSBidXR0b25cbiAgICAuZmFuY3lib3gtY2xvc2Uge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHJpZ2h0OiAkZmFuY3lib3gtbmF2LXNwYWNlci14O1xuICAgICAgICB0b3A6ICRmYW5jeWJveC1uYXYtc3BhY2VyLXk7XG4gICAgICAgIHBhZGRpbmc6ICRmYW5jeWJveC1uYXYtcGFkZGluZztcbiAgICAgICAgei1pbmRleDogODA2MTtcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICBsaW5lLWhlaWdodDogMTtcbiAgICAgICAgY29sb3I6ICRmYW5jeWJveC1uYXYtY29sb3I7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRmYW5jeWJveC1uYXYtYmc7XG4gICAgICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGJvcmRlci1yYWRpdXMpO1xuICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKGFsbCBlYXNlLWluLW91dCAkY29tcG9uZW50LXRyYW5zaXRpb24tdGltZXIpO1xuXG4gICAgICAgIC8vIEhvdmVyIHN0YXRlXG4gICAgICAgIEBpbmNsdWRlIGhvdmVyLWZvY3VzIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRmYW5jeWJveC1uYXYtaG92ZXItYmc7XG4gICAgICAgICAgICBjb2xvcjogJGZhbmN5Ym94LW5hdi1ob3Zlci1jb2xvcjtcbiAgICAgICAgfVxuXG4gICAgICAgIC8vIEljb25cbiAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICBjb250ZW50OiAnXFxlZDZhJztcbiAgICAgICAgICAgIGZvbnQtZmFtaWx5OiAkaWNvbi1mb250LWZhbWlseTtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogJGljb24tZm9udC1zaXplO1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICBAaW5jbHVkZSBsbC1mb250LXNtb290aGluZygpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLy8gRXJyb3JcbiAgICAuZmFuY3lib3gtZXJyb3Ige1xuICAgICAgICBjb2xvcjogdGhlbWUtY29sb3IoXCJkYW5nZXJcIik7ICBcbiAgICAgICAgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1zZW1pYm9sZDsgIFxuICAgICAgICBtYXJnaW46IDA7ICBcbiAgICAgICAgcGFkZGluZzogJG1vZGFsLWlubmVyLXBhZGRpbmc7ICBcbiAgICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICB9XG5cblxuICAgIC8vXG4gICAgLy8gVGl0bGVcbiAgICAvL1xuXG4gICAgLy8gSGVscGVyXG4gICAgLmZhbmN5Ym94LXRpdGxlIHtcbiAgICAgICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIHotaW5kZXg6IDgwNTA7XG5cbiAgICAgICAgLmZhbmN5Ym94LW9wZW5lZCAmIHtcbiAgICAgICAgICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBXcmFwcGVyc1xuICAgIC5mYW5jeWJveC10aXRsZS1mbG9hdC13cmFwIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICBib3R0b206IDA7XG4gICAgICAgIHJpZ2h0OiA1MCU7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IC0oKCRmYW5jeWJveC1jYXB0aW9uLXBhZGRpbmcteSAqIDIpICsgJGxpbmUtaGVpZ2h0LWNvbXB1dGVkKTtcbiAgICAgICAgei1pbmRleDogODA1MDtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICBAaW5jbHVkZSBib3JkZXItYm90dG9tLXJhZGl1cygkYm9yZGVyLXJhZGl1cyk7XG5cbiAgICAgICAgLmNoaWxkIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogLTEwMCU7XG4gICAgICAgICAgICBwYWRkaW5nOiAkZmFuY3lib3gtY2FwdGlvbi1wYWRkaW5nLXkgJGZhbmN5Ym94LWNhcHRpb24tcGFkZGluZy14O1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGZhbmN5Ym94LWNhcHRpb24tYmc7XG4gICAgICAgICAgICBjb2xvcjogJGZhbmN5Ym94LWNhcHRpb24tY29sb3I7XG4gICAgICAgICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgICAgICB9XG4gICAgfVxuICAgIC5mYW5jeWJveC10aXRsZS1vdXRzaWRlLXdyYXAge1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIG1hcmdpbi10b3A6ICgkc3BhY2VyIC8gMik7XG4gICAgICAgIGNvbG9yOiAkZmFuY3lib3gtY2FwdGlvbi1jb2xvcjtcbiAgICB9XG4gICAgLmZhbmN5Ym94LXRpdGxlLWluc2lkZS13cmFwIHtcbiAgICAgICAgcGFkZGluZzogJGZhbmN5Ym94LWNhcHRpb24tcGFkZGluZy15ICRmYW5jeWJveC1jYXB0aW9uLXBhZGRpbmcteDtcbiAgICB9XG4gICAgLmZhbmN5Ym94LXRpdGxlLW92ZXItd3JhcCB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICByaWdodDogMDtcbiAgICAgICAgY29sb3I6ICRmYW5jeWJveC1jYXB0aW9uLWNvbG9yO1xuICAgICAgICBwYWRkaW5nOiAkZmFuY3lib3gtY2FwdGlvbi1wYWRkaW5nLXkgJGZhbmN5Ym94LWNhcHRpb24tcGFkZGluZy14O1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZmFuY3lib3gtY2FwdGlvbi1iZztcbiAgICB9XG5cblxuICAgIC8vIE5hdmlnYXRpb25cbiAgICAvLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuICAgIC8vIENvbnRhaW5lclxuICAgIC5mYW5jeWJveC1uYXYge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgd2lkdGg6IDQwJTtcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICAtd2Via2l0LXRhcC1oaWdobGlnaHQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICB6LWluZGV4OiA4MDQwO1xuXG4gICAgICAgIC8vIEljb25zXG4gICAgICAgIHNwYW4ge1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgdG9wOiA1MCU7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAtKCgkaWNvbi1mb250LXNpemUgLyAyKSArICRmYW5jeWJveC1uYXYtcGFkZGluZyk7XG4gICAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgICAgICBwYWRkaW5nOiAkZmFuY3lib3gtbmF2LXBhZGRpbmc7XG4gICAgICAgICAgICBjb2xvcjogJGZhbmN5Ym94LW5hdi1jb2xvcjtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRmYW5jeWJveC1uYXYtYmc7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgICAgICAgICAgbWluLXdpZHRoOiAoJGljb24tZm9udC1zaXplICsgKCRmYW5jeWJveC1uYXYtcGFkZGluZyAqIDIpKTtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICAgICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgICAgICB6LWluZGV4OiA4MDQwO1xuICAgICAgICAgICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkYm9yZGVyLXJhZGl1cyk7XG4gICAgICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKGFsbCBlYXNlLWluLW91dCAkY29tcG9uZW50LXRyYW5zaXRpb24tdGltZXIpO1xuXG4gICAgICAgICAgICAvLyBBcnJvdyBpY29uc1xuICAgICAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICAgICAgZm9udC1mYW1pbHk6ICRpY29uLWZvbnQtZmFtaWx5O1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgICAgICBmb250LXNpemU6ICRpY29uLWZvbnQtc2l6ZTtcbiAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMTtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBsbC1mb250LXNtb290aGluZygpO1xuICAgICAgICAgICAgfSBcblxuICAgICAgICAgICAgLy8gSG92ZXIgc3RhdGVcbiAgICAgICAgICAgIEBpbmNsdWRlIGhvdmVyLWZvY3VzIHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZmFuY3lib3gtbmF2LWhvdmVyLWJnO1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkZmFuY3lib3gtbmF2LWhvdmVyLWNvbG9yO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLy8gU2hvdyBvbiBob3ZlclxuICAgICAgICAmOmhvdmVyIHNwYW4ge1xuICAgICAgICAgICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgICAgICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBQcmV2aW91cyBidXR0b25cbiAgICAuZmFuY3lib3gtcHJldiB7XG4gICAgICAgIGxlZnQ6IDA7XG5cbiAgICAgICAgLy8gTmF2IGNvbnRhaW5lclxuICAgICAgICBzcGFuIHtcbiAgICAgICAgICAgIGxlZnQ6ICRmYW5jeWJveC1uYXYtc3BhY2VyLXg7XG5cbiAgICAgICAgICAgIC8vIEFycm93XG4gICAgICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgICAgICBAaWYgJGRpcmVjdGlvbiA9PSAnTFRSJyB7XG4gICAgICAgICAgICAgICAgICAgIGNvbnRlbnQ6ICdcXGU5YzgnO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBAZWxzZSB7XG4gICAgICAgICAgICAgICAgICAgIGNvbnRlbnQ6ICdcXGU5Y2InO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH0gXG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBOZXh0IGJ1dHRvblxuICAgIC5mYW5jeWJveC1uZXh0IHtcbiAgICAgICAgcmlnaHQ6IDA7XG5cbiAgICAgICAgLy8gTmF2IGNvbnRhaW5lclxuICAgICAgICBzcGFuIHtcbiAgICAgICAgICAgIHJpZ2h0OiAkZmFuY3lib3gtbmF2LXNwYWNlci14O1xuXG4gICAgICAgICAgICAvLyBBcnJvd1xuICAgICAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICAgICAgQGlmICRkaXJlY3Rpb24gPT0gJ0xUUicge1xuICAgICAgICAgICAgICAgICAgICBjb250ZW50OiAnXFxlOWNiJztcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgQGVsc2Uge1xuICAgICAgICAgICAgICAgICAgICBjb250ZW50OiAnXFxlOWM4JztcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9IFxuICAgICAgICB9XG4gICAgfVxuXG5cbiAgICAvLyBPdmVybGF5c1xuICAgIC8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4gICAgLy8gSGVscGVyXG4gICAgLmZhbmN5Ym94LWxvY2sge1xuICAgICAgICBvdmVyZmxvdzogdmlzaWJsZSAhaW1wb3J0YW50O1xuICAgICAgICB3aWR0aDogYXV0bztcblxuICAgICAgICAuZmFuY3lib3gtb3ZlcmxheSB7XG4gICAgICAgICAgICBvdmVyZmxvdzogYXV0bztcbiAgICAgICAgICAgIG92ZXJmbG93LXk6IHNjcm9sbDtcbiAgICAgICAgfVxuXG4gICAgICAgIGJvZHkge1xuICAgICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbiAhaW1wb3J0YW50O1xuICAgICAgICB9XG4gICAgfVxuICAgIC5mYW5jeWJveC1sb2NrLXRlc3Qge1xuICAgICAgICBvdmVyZmxvdy15OiBoaWRkZW4gIWltcG9ydGFudDtcbiAgICB9XG5cbiAgICAvLyBPdmVybGF5c1xuICAgIC5mYW5jeWJveC1vdmVybGF5IHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIHotaW5kZXg6IDgwMTA7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoJGJsYWNrLCAwLjgpO1xuICAgIH1cbiAgICAuZmFuY3lib3gtb3ZlcmxheS1maXhlZCB7XG4gICAgICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICByaWdodDogMDtcbiAgICB9XG59XG4iLCIvKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAqXG4gKiAgIyBGb290YWJsZVxuICpcbiAqICBqUXVlcnkgcGx1Z2luIHRoYXQgYWltcyB0byBtYWtlIEhUTUwgdGFibGVzIG9uIHNtYWxsZXIgZGV2aWNlcyBsb29rIGF3ZXNvbWUuXG4gKlxuICogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuXG4vLyBDaGVjayBpZiBjb21wb25lbnQgaXMgZW5hYmxlZFxuQGlmICRlbmFibGUtZm9vdGFibGUge1xuXG4gICAgLy8gQmFzZVxuICAgIC5mb290YWJsZSB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuXG4gICAgICAgIC8vIFJlbW92ZSB1c2VyIHNlbGVjdFxuICAgICAgICA+IHRoZWFkID4gdHIgPiB0aCB7XG4gICAgICAgICAgICAtd2Via2l0LXRvdWNoLWNhbGxvdXQ6IG5vbmU7XG4gICAgICAgICAgICB1c2VyLXNlbGVjdDogbm9uZTtcbiAgICAgICAgfVxuXG4gICAgICAgIC8vIFNldHVwIHRhYmxlIHN0eWxlc1xuICAgICAgICAmLmJyZWFrcG9pbnQge1xuICAgICAgICAgICAgPiB0Ym9keSB7XG4gICAgICAgICAgICAgICAgPiB0ciB7XG4gICAgICAgICAgICAgICAgICAgICYuZm9vdGFibGUtZGV0YWlsLXNob3cgPiB0ZCB7XG4gICAgICAgICAgICAgICAgICAgICAgICBib3JkZXItYm90dG9tOiAwO1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgLy8gUmVtb3ZlIGJhY2tncm91bmQgY29sb3IgZnJvbSBkZXRhaWxzIHJvd1xuICAgICAgICAgICAgICAgICAgICAmLmZvb3RhYmxlLXJvdy1kZXRhaWw6aG92ZXIge1xuICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAvLyBBZGQgcG9pbnRlclxuICAgICAgICAgICAgICAgICAgICAmOmhvdmVyOm5vdCguZm9vdGFibGUtcm93LWRldGFpbCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgLy8gQ2VsbCB3aXRoIGRldGFpbHNcbiAgICAgICAgICAgICAgICAgICAgPiAuZm9vdGFibGUtY2VsbC1kZXRhaWwge1xuICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGdyYXktMTAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyLXRvcDogMDtcbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgIC8vIEFkZCBleHBhbmQgaWNvblxuICAgICAgICAgICAgICAgICAgICAuZm9vdGFibGUtdG9nZ2xlOmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb250ZW50OiBcIlxcZTllNFwiO1xuICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrOyAgXG4gICAgICAgICAgICAgICAgICAgICAgICBmb250LWZhbWlseTogJGljb24tZm9udC1mYW1pbHk7XG4gICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6ICRpY29uLWZvbnQtc2l6ZTtcbiAgICAgICAgICAgICAgICAgICAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICAgICAgICAgICAgICB0b3A6ICgoJGZvbnQtc2l6ZS1iYXNlIC0gJGljb24tZm9udC1zaXplKSAvIDIpO1xuICAgICAgICAgICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAkZWxlbWVudC1zcGFjZXIteDtcbiAgICAgICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGxsLWZvbnQtc21vb3RoaW5nKCk7XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAvLyBBZGQgY29sbGFwc2UgaWNvblxuICAgICAgICAgICAgICAgICAgICAmLmZvb3RhYmxlLWRldGFpbC1zaG93IC5mb290YWJsZS10b2dnbGU6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbnRlbnQ6IFwiXFxlOWU3XCI7ICAgICAgIFxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG5cbiAgICAvL1xuICAgIC8vIFJvdyBzdHlsaW5nXG4gICAgLy9cblxuICAgIC8vIElubmVyIHdyYXBwZXJcbiAgICAuZm9vdGFibGUtcm93LWRldGFpbC1pbm5lciB7XG4gICAgICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgICAgICB0YWJsZS1sYXlvdXQ6IGZpeGVkO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICB9XG5cbiAgICAvLyBSb3cgZGV0YWlsc1xuICAgIC5mb290YWJsZS1yb3ctZGV0YWlsLXJvdyB7XG4gICAgICAgIGRpc3BsYXk6IHRhYmxlLXJvdztcbiAgICB9XG5cbiAgICAvLyBHcm91cGVkIGRldGFpbHNcbiAgICAuZm9vdGFibGUtcm93LWRldGFpbC1ncm91cCB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LXNlbWlib2xkO1xuICAgICAgICBtYXJnaW4tdG9wOiAkc3BhY2VyO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwLjVyZW07XG5cbiAgICAgICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAwLjVyZW07XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBOYW1lXG4gICAgLmZvb3RhYmxlLXJvdy1kZXRhaWwtbmFtZSB7XG4gICAgICAgIGRpc3BsYXk6IHRhYmxlLWNlbGw7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtc2VtaWJvbGQ7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6ICgkY2FyZC1zcGFjZXIteCAqIDIpO1xuICAgIH1cblxuICAgIC8vIFZhbHVlXG4gICAgLmZvb3RhYmxlLXJvdy1kZXRhaWwtdmFsdWUge1xuICAgICAgICBkaXNwbGF5OiB0YWJsZS1jZWxsO1xuICAgICAgICBwYWRkaW5nOiAwLjVyZW0gMDtcbiAgICB9XG59XG4iLCIvKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAqXG4gKiAgIyBIYW5kc29udGFibGVcbiAqXG4gKiAgU3R5bGVzIGZvciBoYW5kc29udGFibGUubWluLmpzIC0gSmF2YVNjcmlwdCBTcHJlYWRzaGVldCBsaWJyYXJ5XG4gKlxuICogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuXG4vLyBDaGVjayBpZiBjb21wb25lbnQgaXMgZW5hYmxlZFxuQGlmICRlbmFibGUtaGFuZHNvbnRhYmxlIHtcblxuICAgIC8qcnRsOmJlZ2luOmlnbm9yZSovXG5cbiAgICAvL1xuICAgIC8vIEJhc2VcbiAgICAvL1xuXG4gICAgLy8gQ29udGFpbmVyXG4gICAgLmhvdC1jb250YWluZXIge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIGJveC1zaGFkb3c6IDAgMCAwICR0YWJsZS1ib3JkZXItd2lkdGggJHRhYmxlLWJvcmRlci1jb2xvcjtcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcblxuICAgICAgICAvLyBTY3JvbGxpbmdcbiAgICAgICAgJi5ob3Qtc2Nyb2xsYWJsZSB7XG4gICAgICAgICAgICBoZWlnaHQ6ICRob3Qtc2Nyb2xsYWJsZS1tYXgtaGVpZ2h0O1xuICAgICAgICB9XG5cbiAgICAgICAgLy8gSWYgbm8gc2Nyb2xsaW5nLCBzdHJldGNoIGhvbGRlciB2ZXJ0aWNhbGx5XG4gICAgICAgICY6bm90KC5ob3Qtc2Nyb2xsYWJsZSkgPiAuaGFuZHNvbnRhYmxlID4gLmh0X21hc3RlciA+IC53dEhvbGRlciB7XG4gICAgICAgICAgICBoZWlnaHQ6IDEwMCUhaW1wb3J0YW50O1xuICAgICAgICB9XG5cbiAgICAgICAgLy8gTW9iaWxlIHZpZXdcbiAgICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKHNtKSB7XG4gICAgICAgICAgICBvdmVyZmxvdy14OiBoaWRkZW47XG4gICAgICAgICAgICBvdmVyZmxvdy15OiBhdXRvO1xuXG4gICAgICAgICAgICAvLyBSZW1vdmUgaG9sZGVyIHN0cnRjaGluZ1xuICAgICAgICAgICAgLmh0X21hc3RlciAud3RIb2xkZXIge1xuICAgICAgICAgICAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICBtaW4td2lkdGg6IGF1dG87XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC8vIElmIG5vIHNjcm9sbGluZywgc3RyZXRjaCBob2xkZXIgdmVydGljYWxseVxuICAgICAgICAgICAgJjpub3QoLmhvdC1zY3JvbGxhYmxlKSAud3RIb2xkZXIge1xuICAgICAgICAgICAgICAgIGhlaWdodDogMTAwJSFpbXBvcnRhbnQ7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBDb3JlXG4gICAgLmhhbmRzb250YWJsZSB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgZGlyZWN0aW9uOiBsdHI7XG5cbiAgICAgICAgLy8gSGlkZSBoZWxwZXJcbiAgICAgICAgLmhpZGUge1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgfVxuXG4gICAgICAgIC8vIFJlbGF0aXZlIHBvc2l0aW9uIGhlbHBlclxuICAgICAgICAucmVsYXRpdmUge1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICB9XG5cbiAgICAgICAgLy8gQXV0byBzaXplXG4gICAgICAgICYuaHRBdXRvU2l6ZSB7XG4gICAgICAgICAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgICAgICAgICBsZWZ0OiAtOTkwMDBweDtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIHRvcDogLTk5MDAwcHg7XG4gICAgICAgIH1cblxuICAgICAgICAvLyBIaWRlclxuICAgICAgICAud3RIaWRlciB7XG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICB3aWR0aDogMDtcbiAgICAgICAgfVxuXG4gICAgICAgIC8vIFNwcmVhZGVyXG4gICAgICAgIC53dFNwcmVhZGVyIHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgIHdpZHRoOiAwO1xuICAgICAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICB9XG5cbiAgICAgICAgLy8gUmVhZCBvbmx5IGNlbGxzXG4gICAgICAgIC5odERpbW1lZCB7XG4gICAgICAgICAgICBjb2xvcjogJGdyYXktNjAwO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLy8gVGFibGUgY29yZVxuICAgIC5oYW5kc29udGFibGUge1xuXG4gICAgICAgIC8vIEVsZW1lbnQncyBib3ggc2l6aW5nXG4gICAgICAgIHRhYmxlLFxuICAgICAgICB0Ym9keSxcbiAgICAgICAgdGhlYWQsXG4gICAgICAgIHRkLFxuICAgICAgICB0aCxcbiAgICAgICAgaW5wdXQsXG4gICAgICAgIHRleHRhcmVhLFxuICAgICAgICBkaXYge1xuICAgICAgICAgICAgYm94LXNpemluZzogY29udGVudC1ib3g7XG4gICAgICAgIH1cblxuICAgICAgICAvLyBJbnB1dHNcbiAgICAgICAgaW5wdXQsXG4gICAgICAgIHRleHRhcmVhIHtcbiAgICAgICAgICAgIG1pbi1oZWlnaHQ6IGluaXRpYWw7XG4gICAgICAgIH1cblxuICAgICAgICAvLyBDb3JlIHRhYmxlXG4gICAgICAgIHRhYmxlLmh0Q29yZSB7XG4gICAgICAgICAgICBib3JkZXItY29sbGFwc2U6IHNlcGFyYXRlO1xuICAgICAgICAgICAgYm9yZGVyLXNwYWNpbmc6IDA7XG4gICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICBib3JkZXItd2lkdGg6IDA7XG4gICAgICAgICAgICB0YWJsZS1sYXlvdXQ6IGZpeGVkO1xuICAgICAgICAgICAgd2lkdGg6IDA7XG4gICAgICAgICAgICBvdXRsaW5lLXdpZHRoOiAwO1xuICAgICAgICAgICAgbWF4LXdpZHRoOiBub25lO1xuICAgICAgICAgICAgbWF4LWhlaWdodDogbm9uZTtcbiAgICAgICAgfVxuXG4gICAgICAgIC8vIENvbHVtblxuICAgICAgICBjb2wge1xuICAgICAgICAgICAgJixcbiAgICAgICAgICAgICYucm93SGVhZGVyIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogJGhvdC1yb3ctaGVhZGVyLXdpZHRoO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG5cbiAgICAvLyBUYWJsZSBlbGVtZW50c1xuICAgIC8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4gICAgLmhhbmRzb250YWJsZSB7XG5cbiAgICAgICAgLy9cbiAgICAgICAgLy8gVGFibGUgY2VsbHMgYmFzZVxuICAgICAgICAvL1xuXG4gICAgICAgIC8vIENvbW1vbiBzdHlsZXNcbiAgICAgICAgdGgsXG4gICAgICAgIHRkIHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgIGJvcmRlci10b3Atd2lkdGg6IDA7XG4gICAgICAgICAgICBib3JkZXItbGVmdC13aWR0aDogMDtcbiAgICAgICAgICAgIGJvcmRlci1yaWdodDogJHRhYmxlLWJvcmRlci13aWR0aCBzb2xpZCAkdGFibGUtYm9yZGVyLWNvbG9yO1xuICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogJHRhYmxlLWJvcmRlci13aWR0aCBzb2xpZCAkdGFibGUtYm9yZGVyLWNvbG9yO1xuICAgICAgICAgICAgaGVpZ2h0OiAkaG90LWNlbGwtaGVpZ2h0O1xuICAgICAgICAgICAgZW1wdHktY2VsbHM6IHNob3c7XG4gICAgICAgICAgICBwYWRkaW5nOiAwICRob3QtY2VsbC1wYWRkaW5nLXg7XG4gICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICAgICAgb3V0bGluZS13aWR0aDogMDtcbiAgICAgICAgICAgIHdoaXRlLXNwYWNlOiBwcmUtbGluZTtcbiAgICAgICAgfVxuXG4gICAgICAgIC8vIENvbnRlbnQgY2VsbHNcbiAgICAgICAgdGQge1xuXG4gICAgICAgICAgICAvLyBEZWZhdWx0IGJhY2tncm91bmQgY29sb3JcbiAgICAgICAgICAgICY6bm90KFtjbGFzcyo9YmctXSkge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRob3QtY2VsbC1iZztcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLy8gSW52YWxpZCBzdGF0ZVxuICAgICAgICAgICAgJi5odEludmFsaWQge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1kYW5nZXItNTAgIWltcG9ydGFudDsgLy8gZ2l2ZXMgcHJpb3JpdHkgb3ZlciB0ZC5hcmVhIHNlbGVjdGlvbiBiYWNrZ3JvdW5kXG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC8vIFByZXZlbnQgd3JhcHBpbmdcbiAgICAgICAgICAgICYuaHROb1dyYXAge1xuICAgICAgICAgICAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC8vIEFjdGl2ZSBjZWxsXG4gICAgICAgICAgICAmLmFjdGl2ZSB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHRhYmxlLWFjdGl2ZS1iZztcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLy8gSGlnaGxpZ2h0ZWQgYXJlYVxuICAgICAgICAgICAgJi5hcmVhIHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaG90LWNlbGwtaGlnaGxpZ2h0LWJnO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLy8gVGFibGUgaGVhZGVyc1xuICAgICAgICB0aCB7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgICAgICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcblxuICAgICAgICAgICAgLy8gRGVmYXVsdCBiYWNrZ3JvdW5kIGNvbG9yXG4gICAgICAgICAgICAmOm5vdChbY2xhc3MqPWJnLV0pIHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaG90LWhlYWRlci1iZztcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC8vIENvbnRyb2wgcGFkZGluZ3MgaW4gdGFibGUgaGVhZFxuICAgICAgICB0aGVhZCB0aCB7XG4gICAgICAgICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAgICAgICAvLyBUZXh0XG4gICAgICAgICAgICAucmVsYXRpdmUge1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDAgJGhvdC1jZWxsLXBhZGRpbmcteDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG5cbiAgICAgICAgLy9cbiAgICAgICAgLy8gU2VsZWN0aW9uXG4gICAgICAgIC8vXG5cbiAgICAgICAgLy8gV2hlbiBjZWxsIGlzIHNlbGVjdGVkXG4gICAgICAgIHRib2R5IHRoLmh0X19oaWdobGlnaHQsXG4gICAgICAgIHRoZWFkIHRoLmh0X19oaWdobGlnaHQge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogZGFya2VuKCRob3QtaGVhZGVyLWJnLCAyLjUlKTtcbiAgICAgICAgfVxuXG4gICAgICAgIC8vIFdoZW4gY29sdW1uIGlzIHNlbGVjdGVkXG4gICAgICAgICYuaHRfX3NlbGVjdGlvbi0tY29sdW1ucyB0aGVhZCB0aC5odF9faGlnaGxpZ2h0LFxuICAgICAgICAmLmh0X19zZWxlY3Rpb24tLXJvd3MgdGJvZHkgdGguaHRfX2hpZ2hsaWdodCB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaG90LWNlbGwtaGlnaGxpZ2h0LWJnO1xuICAgICAgICB9XG5cblxuICAgICAgICAvL1xuICAgICAgICAvLyBCb3JkZXJzXG4gICAgICAgIC8vXG5cbiAgICAgICAgLy8gSWYgbm8gZnJhbWVcbiAgICAgICAgdHI6Zmlyc3QtY2hpbGQgdGguaHROb0ZyYW1lLFxuICAgICAgICB0aDpmaXJzdC1jaGlsZC5odE5vRnJhbWUsXG4gICAgICAgIHRoLmh0Tm9GcmFtZSB7XG4gICAgICAgICAgICBib3JkZXItbGVmdC13aWR0aDogMDtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRob3QtY2VsbC1iZztcbiAgICAgICAgICAgIGJvcmRlci1jb2xvcjogJGhvdC1jZWxsLWJnO1xuICAgICAgICB9XG5cbiAgICAgICAgLy8gQWRkIGxlZnQgYm9yZGVyIHRvIGZpcnN0IGNlbGxzXG4gICAgICAgIHRoOmZpcnN0LWNoaWxkLFxuICAgICAgICB0aDpudGgtY2hpbGQoMiksXG4gICAgICAgIHRkOmZpcnN0LW9mLXR5cGUsXG4gICAgICAgIC5odE5vRnJhbWUgKyB0aCxcbiAgICAgICAgLmh0Tm9GcmFtZSArIHRkIHtcbiAgICAgICAgICAgIGJvcmRlci1sZWZ0OiAkdGFibGUtYm9yZGVyLXdpZHRoIHNvbGlkICR0YWJsZS1ib3JkZXItY29sb3I7XG4gICAgICAgIH1cblxuICAgICAgICAvLyBBZGQgbGVmdCBib3JkZXIgdG8gaGVhZGVycyBzdGFydGluZyBmcm9tIHNlY29uZFxuICAgICAgICAmLmh0Um93SGVhZGVycyB0aGVhZCB0ciB0aDpudGgtY2hpbGQoMikge1xuICAgICAgICAgICAgYm9yZGVyLWxlZnQ6ICR0YWJsZS1ib3JkZXItd2lkdGggc29saWQgJHRhYmxlLWJvcmRlci1jb2xvcjtcbiAgICAgICAgfVxuXG4gICAgICAgIC8vIENlbGxzIGluIGZpcnN0IHJvdyBoYXZlIHRvcCBib3JkZXJcbiAgICAgICAgdHI6Zmlyc3QtY2hpbGQge1xuICAgICAgICAgICAgdGgsXG4gICAgICAgICAgICB0ZCB7XG4gICAgICAgICAgICAgICAgYm9yZGVyLXRvcDogJHRhYmxlLWJvcmRlci13aWR0aCBzb2xpZCAkdGFibGUtYm9yZGVyLWNvbG9yO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG5cbiAgICAvLyBCb3JkZXJzIGNvbnRyb2xcbiAgICAvLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuICAgIC8vIFJlbW92ZSBkb3VibGUgYm9yZGVycyBpbiBzY3JvbGxhYmxlIG1hc3RlciB0YWJsZVxuICAgIC5odF9tYXN0ZXIge1xuXG4gICAgICAgIC8vIExlZnQgYm9yZGVyc1xuICAgICAgICAmOm5vdCguaW5uZXJCb3JkZXJMZWZ0KTpub3QoLmVtcHR5Q29sdW1ucykge1xuICAgICAgICAgICAgfiAuaGFuZHNvbnRhYmxlIHRib2R5IHRyIHRoLFxuICAgICAgICAgICAgfiAuaGFuZHNvbnRhYmxlOm5vdCguaHRfY2xvbmVfdG9wKSB0aGVhZCB0ciB0aDpmaXJzdC1jaGlsZCB7XG4gICAgICAgICAgICAgICAgYm9yZGVyLXJpZ2h0LXdpZHRoOiAwO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLy8gQm90dG9tIGJvcmRlcnNcbiAgICAgICAgJjpub3QoLmlubmVyQm9yZGVyVG9wKSB7XG4gICAgICAgICAgICB0aGVhZCB0cjpsYXN0LWNoaWxkIHRoLFxuICAgICAgICAgICAgdGhlYWQgdHIubGFzdENoaWxkIHRoLFxuICAgICAgICAgICAgfiAuaGFuZHNvbnRhYmxlIHRoZWFkIHRyOmxhc3QtY2hpbGQgdGgsXG4gICAgICAgICAgICB+IC5oYW5kc29udGFibGUgdGhlYWQgdHIubGFzdENoaWxkIHRoIHtcbiAgICAgICAgICAgICAgICBib3JkZXItYm90dG9tLXdpZHRoOiAwO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLmh0Um93SGVhZGVycyAmLmlubmVyQm9yZGVyTGVmdCB7XG4gICAgICAgICAgICB+IC5odF9jbG9uZV90b3BfbGVmdF9jb3JuZXIgdGg6bnRoLWNoaWxkKDIpLFxuICAgICAgICAgICAgfiAuaHRfY2xvbmVfbGVmdCB0ZDpmaXJzdC1vZi10eXBlIHtcbiAgICAgICAgICAgICAgICBib3JkZXItbGVmdC13aWR0aDogMDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuXG4gICAgLy9cbiAgICAvLyBUb3AgYm9yZGVyXG4gICAgLy9cblxuICAgIC8vIFRvcCBib3JkZXIgaW4gZmlyc3QgY2VsbHNcbiAgICAuaHRfbWFzdGVyIHtcbiAgICAgICAgdGJvZHkgdHI6Zmlyc3QtY2hpbGQgdGQge1xuICAgICAgICAgICAgYm9yZGVyLXRvcC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBUb3AgY2xvbmVkXG4gICAgLmh0X2Nsb25lX3RvcCB7XG4gICAgICAgIHRyOmZpcnN0LWNoaWxkIHRoLFxuICAgICAgICB0cjpmaXJzdC1jaGlsZCB0ZCB7XG4gICAgICAgICAgICBib3JkZXItdG9wLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8vIExlZnQgY2xvbmVkXG4gICAgLmh0X2Nsb25lX2xlZnQsXG4gICAgLmh0X2Nsb25lX3RvcF9sZWZ0X2Nvcm5lciB7XG4gICAgICAgIHRoZWFkIHRyOmZpcnN0LWNoaWxkIHRoLFxuICAgICAgICB0Ym9keSB0cjpmaXJzdC1jaGlsZCB0ZCxcbiAgICAgICAgdGJvZHkgdHI6Zmlyc3QtY2hpbGQgdGgge1xuICAgICAgICAgICAgYm9yZGVyLXRvcC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgIH1cbiAgICB9XG5cblxuICAgIC8vXG4gICAgLy8gTGVmdCBib3JkZXJcbiAgICAvL1xuXG4gICAgLy8gTGVmdCBib3JkZXIgaW4gZmlyc3QgY2VsbHNcbiAgICAuaGFuZHNvbnRhYmxlIHtcbiAgICAgICAgdGg6Zmlyc3QtY2hpbGQsXG4gICAgICAgIHRkOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgICAgIGJvcmRlci1sZWZ0LWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgfVxuICAgIH1cblxuXG4gICAgLy9cbiAgICAvLyBSaWdodCBib3JkZXJcbiAgICAvL1xuXG4gICAgLy8gUmlnaHQgYm9yZGVyIGluIHJpZ2h0IGNlbGxzXG4gICAgLmh0X21hc3RlciB0ZDpsYXN0LWNoaWxkLFxuICAgIC5odF9jbG9uZV90b3AgdGg6bGFzdC1jaGlsZCxcbiAgICAuaHRfY2xvbmVfdG9wIHRkOmxhc3QtY2hpbGQge1xuICAgICAgICBib3JkZXItcmlnaHQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIH1cblxuXG4gICAgLy9cbiAgICAvLyBCb3R0b20gYm9yZGVyXG4gICAgLy9cblxuICAgIC8vIEJvdHRvbSBib3JkZXIgaW4gbGFzdCBjZWxsc1xuICAgIC5odF9tYXN0ZXIsXG4gICAgLmh0X2Nsb25lX2xlZnQge1xuICAgICAgICB0Ym9keSB0cjpsYXN0LWNoaWxkIHRoLFxuICAgICAgICB0Ym9keSB0cjpsYXN0LWNoaWxkIHRkIHtcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b20tY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICB9XG4gICAgfVxuXG5cbiAgICAvL1xuICAgIC8vIE92ZXJyaWRlIHRvcCBib3JkZXJzXG4gICAgLy9cblxuICAgIC8vIFRvcCBib3JkZXIgaWYgdGFibGUgaGFzIGJvdGggcm93IGFuZCBjb2x1bW4gaGVhZGVyc1xuICAgIC5odFJvd0hlYWRlcnMuaHRDb2x1bW5IZWFkZXJzIHtcbiAgICAgICAgLmh0X2Nsb25lX3RvcF9sZWZ0X2Nvcm5lcixcbiAgICAgICAgLmh0X2Nsb25lX2xlZnQge1xuICAgICAgICAgICAgdGJvZHkgdHI6Zmlyc3QtY2hpbGQgdGgge1xuICAgICAgICAgICAgICAgIGJvcmRlci10b3AtY29sb3I6ICR0YWJsZS1ib3JkZXItY29sb3I7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBUb3AgYm9yZGVyIGlmIG9ubHkgY29sdW1uIGhlYWRlclxuICAgIC5odENvbHVtbkhlYWRlcnMgLmhhbmRzb250YWJsZSB7XG4gICAgICAgIHRyOmZpcnN0LWNoaWxkIHRkIHtcbiAgICAgICAgICAgIGJvcmRlci10b3AtY29sb3I6ICR0YWJsZS1ib3JkZXItY29sb3I7XG4gICAgICAgIH1cbiAgICB9XG5cblxuICAgIC8vIFBsdWdpbnNcbiAgICAvLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuICAgIC8vXG4gICAgLy8gQ29sdW1uIGFuZCByb3cgcmVzaXplclxuICAgIC8vXG5cbiAgICAvLyBDb21tb24gc3R5bGVzXG4gICAgLm1hbnVhbENvbHVtblJlc2l6ZXIsXG4gICAgLm1hbnVhbFJvd1Jlc2l6ZXIge1xuXG4gICAgICAgIC8vIERpc3BsYXkgaWYgYWN0aXZlXG4gICAgICAgICYuYWN0aXZlIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgei1pbmRleDogMTk5O1xuICAgICAgICB9XG5cbiAgICAgICAgLy8gQXBwbHkgYmFja2dyb3VuZCBjb2xvclxuICAgICAgICAmOmhvdmVyLFxuICAgICAgICAmLmFjdGl2ZSB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGFibGUtYWN0aXZlLWJnO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLy8gQ29sdW1uIHJlc2l6ZXJcbiAgICAubWFudWFsQ29sdW1uUmVzaXplciB7XG4gICAgICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICBjdXJzb3I6IGNvbC1yZXNpemU7XG4gICAgICAgIHotaW5kZXg6IDExMDtcbiAgICAgICAgd2lkdGg6IDAuMzEyNXJlbTtcbiAgICAgICAgaGVpZ2h0OiAkaG90LWNlbGwtaGVpZ2h0O1xuICAgIH1cblxuICAgIC8vIFJvdyByZXNpemVyXG4gICAgLm1hbnVhbFJvd1Jlc2l6ZXIge1xuICAgICAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIGN1cnNvcjogcm93LXJlc2l6ZTtcbiAgICAgICAgei1pbmRleDogMTEwO1xuICAgICAgICBoZWlnaHQ6IDAuMzEyNXJlbTtcbiAgICAgICAgd2lkdGg6ICgkaG90LWNlbGwtaGVpZ2h0ICogMik7XG4gICAgfVxuXG4gICAgLy8gQ29sdW1uIHJlc2l6ZXIgZ3VpZGVcbiAgICAubWFudWFsQ29sdW1uUmVzaXplckd1aWRlIHtcbiAgICAgICAgcG9zaXRpb246IGZpeGVkO1xuICAgICAgICByaWdodDogMDtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGFibGUtYWN0aXZlLWJnO1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB3aWR0aDogMDtcbiAgICAgICAgYm9yZGVyLXJpZ2h0OiAkdGFibGUtYm9yZGVyLXdpZHRoIGRhc2hlZCAkdGFibGUtYm9yZGVyLWNvbG9yO1xuICAgICAgICBtYXJnaW4tbGVmdDogMC4zMTI1cmVtO1xuICAgIH1cblxuICAgIC8vIFJvdyByZXNpemVyIGd1aWRlXG4gICAgLm1hbnVhbFJvd1Jlc2l6ZXJHdWlkZSB7XG4gICAgICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGFibGUtYWN0aXZlLWJnO1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICBoZWlnaHQ6IDA7XG4gICAgICAgIGJvcmRlci1ib3R0b206ICR0YWJsZS1ib3JkZXItd2lkdGggZGFzaGVkICR0YWJsZS1ib3JkZXItY29sb3I7XG4gICAgICAgIG1hcmdpbi10b3A6IDAuMzEyNXJlbTtcbiAgICB9XG5cblxuICAgIC8vXG4gICAgLy8gU29ydGluZ1xuICAgIC8vXG5cbiAgICAuaGFuZHNvbnRhYmxlIHtcblxuICAgICAgICAvLyBDZWxsIHdpdGggZW5hYmxlZCBzb3J0aW5nXG4gICAgICAgIC5jb2x1bW5Tb3J0aW5nIHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcblxuICAgICAgICAgICAgLy8gQXJyb3dzXG4gICAgICAgICAgICAmOmJlZm9yZSxcbiAgICAgICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgICAgIGZvbnQtZmFtaWx5OiAkaWNvbi1mb250LWZhbWlseTtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6ICRmb250LXNpemUtc207XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgICAgICB0b3A6IDUwJTtcbiAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gICAgICAgICAgICAgICAgcmlnaHQ6IC0oJGljb24tZm9udC1zaXplICsgJGVsZW1lbnQtc3BhY2VyLXgpO1xuICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgICAgICAgICAgICAgIG9wYWNpdHk6IDAuNTtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBsbC1mb250LXNtb290aGluZygpO1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb24ob3BhY2l0eSBlYXNlLWluLW91dCAkY29tcG9uZW50LXRyYW5zaXRpb24tdGltZXIpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgICAgIGNvbnRlbnQ6ICdcXGU5YzEnO1xuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6ICgkZm9udC1zaXplLXNtIC8gMyk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgICAgICBjb250ZW50OiAnXFxlOWMyJztcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAtKCRmb250LXNpemUtc20gLyAzKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgICYuYXNjZW5kaW5nIHtcbiAgICAgICAgICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgICAgIGNvbnRlbnQ6IG5vbmU7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgJi5kZXNjZW5kaW5nIHtcbiAgICAgICAgICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICAgICAgICAgIGNvbnRlbnQ6IG5vbmU7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAvLyBIb3ZlciBzdGF0ZVxuICAgICAgICAgICAgQGluY2x1ZGUgaG92ZXIge1xuICAgICAgICAgICAgICAgICY6YmVmb3JlLFxuICAgICAgICAgICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuXG4gICAgLy9cbiAgICAvLyBCb3JkZXIgbGluZXNcbiAgICAvL1xuXG4gICAgLy8gV2lkdGggYm9yZGVyXG4gICAgLnd0Qm9yZGVyIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICBmb250LXNpemU6IDA7XG5cbiAgICAgICAgLy8gSGlkZGVuIGJvcmRlclxuICAgICAgICAmLmhpZGRlbiB7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lIWltcG9ydGFudDtcbiAgICAgICAgfVxuXG4gICAgICAgIC8vIENvcm5lcnNcbiAgICAgICAgJi5jb3JuZXIge1xuICAgICAgICAgICAgZm9udC1zaXplOiAwO1xuICAgICAgICAgICAgY3Vyc29yOiBjcm9zc2hhaXI7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBIZWlnaHQgYm9yZGVyXG4gICAgLmh0Qm9yZGVyIHtcbiAgICAgICAgJi5odEZpbGxCb3JkZXIge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdGhlbWUtY29sb3IoXCJwcmltYXJ5XCIpO1xuICAgICAgICAgICAgd2lkdGg6ICR0YWJsZS1ib3JkZXItd2lkdGg7XG4gICAgICAgICAgICBoZWlnaHQ6ICR0YWJsZS1ib3JkZXItd2lkdGg7XG4gICAgICAgIH1cbiAgICB9XG5cblxuICAgIC8vXG4gICAgLy8gSW5wdXRzXG4gICAgLy9cblxuICAgIC8vIElucHV0XG4gICAgLmhhbmRzb250YWJsZUlucHV0IHtcbiAgICAgICAgYm9yZGVyOiAwO1xuICAgICAgICBvdXRsaW5lLXdpZHRoOiAwO1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIHBhZGRpbmc6IDAgKCRob3QtY2VsbC1wYWRkaW5nLXggKyByZW0tY2FsYygkdGFibGUtYm9yZGVyLXdpZHRoKSk7XG4gICAgICAgIHBhZGRpbmctdG9wOiByZW0tY2FsYygkdGFibGUtYm9yZGVyLXdpZHRoKTtcbiAgICAgICAgZm9udC1mYW1pbHk6IGluaGVyaXQ7XG4gICAgICAgIGhlaWdodDogJGhvdC1jZWxsLWhlaWdodDtcbiAgICAgICAgbGluZS1oZWlnaHQ6ICRob3QtY2VsbC1oZWlnaHQ7XG4gICAgICAgIGZvbnQtc2l6ZTogaW5oZXJpdDtcbiAgICAgICAgcmVzaXplOiBub25lO1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgd2lkdGg6IGF1dG8haW1wb3J0YW50O1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaG90LWNlbGwtYmc7XG4gICAgICAgIGJveC1zaGFkb3c6IDAgMCAwICgkdGFibGUtYm9yZGVyLXdpZHRoICogMikgJGhvdC1jZWxsLWhpZ2hsaWdodC1ib3JkZXItY29sb3IgaW5zZXQ7XG4gICAgfVxuXG4gICAgLy8gSW5wdXQgaG9sZGVyXG4gICAgLmhhbmRzb250YWJsZUlucHV0SG9sZGVyIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIHotaW5kZXg6IDEwMDtcbiAgICB9XG5cbiAgICAvLyBFZGl0b3JcbiAgICAuaHRTZWxlY3RFZGl0b3Ige1xuICAgICAgICAtd2Via2l0LWFwcGVhcmFuY2U6IG1lbnVsaXN0LWJ1dHRvbiAhaW1wb3J0YW50O1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgICBvdXRsaW5lOiAwO1xuICAgICAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKDApO1xuICAgIH1cblxuXG4gICAgLy9cbiAgICAvLyBTdWJtZW51XG4gICAgLy9cblxuICAgIC5odFN1Ym1lbnUge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAgICAgLy8gQXJyb3dcbiAgICAgICAgPiBkaXY6YWZ0ZXJ7XG4gICAgICAgICAgICBjb250ZW50OiAnXFxlOWM3JztcbiAgICAgICAgICAgIGZvbnQtZmFtaWx5OiAkaWNvbi1mb250LWZhbWlseTtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIHRvcDogNTAlO1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogLSgkaWNvbi1mb250LXNpemUgLyAyKTtcbiAgICAgICAgICAgIHJpZ2h0OiAkZHJvcGRvd24taXRlbS1wYWRkaW5nLXg7XG4gICAgICAgICAgICBmb250LXNpemU6ICRpY29uLWZvbnQtc2l6ZTtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgICAgICAgICAgb3BhY2l0eTogMC44O1xuICAgICAgICAgICAgQGluY2x1ZGUgbGwtZm9udC1zbW9vdGhpbmcoKTtcbiAgICAgICAgfVxuICAgIH1cblxuXG4gICAgLy9cbiAgICAvLyBBbGlnbm1lbnQgY2xhc3Nlc1xuICAgIC8vXG5cbiAgICAuaGFuZHNvbnRhYmxlIHtcblxuICAgICAgICAvLyBIb3Jpem9udGFsXG4gICAgICAgIC5odExlZnQge1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgICAgfVxuICAgICAgICAuaHRDZW50ZXIge1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICB9XG4gICAgICAgIC5odFJpZ2h0IHtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgICAgICB9XG4gICAgICAgIC5odEp1c3RpZnkge1xuICAgICAgICAgICAgdGV4dC1hbGlnbjoganVzdGlmeTtcbiAgICAgICAgfVxuXG4gICAgICAgIC8vIFZlcnRpY2FsXG4gICAgICAgIC5odFRvcCB7XG4gICAgICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuICAgICAgICB9XG4gICAgICAgIC5odE1pZGRsZSB7XG4gICAgICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgICAgICB9XG4gICAgICAgIC5odEJvdHRvbSB7XG4gICAgICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogYm90dG9tO1xuICAgICAgICB9XG4gICAgfVxuXG5cbiAgICAvL1xuICAgIC8vIEF1dG9jb21wbGV0ZVxuICAgIC8vXG5cbiAgICAvLyBQbGFjZWhvbGRlclxuICAgIC5odFBsYWNlaG9sZGVyIHtcbiAgICAgICAgY29sb3I6ICRpbnB1dC1wbGFjZWhvbGRlci1jb2xvcjtcbiAgICB9XG5cbiAgICAvLyBBcnJvd1xuICAgIC5odEF1dG9jb21wbGV0ZUFycm93IHtcbiAgICAgICAgY3Vyc29yOiBkZWZhdWx0O1xuICAgICAgICB0ZXh0LWluZGVudDogLTk5OTk5OTlweDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiA1MCU7XG4gICAgICAgIHJpZ2h0OiAkY2FyZXQtd2lkdGg7XG4gICAgICAgIG1hcmdpbi10b3A6IC0oJGNhcmV0LXdpZHRoIC8gMik7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAkY2FyZXQtd2lkdGg7XG4gICAgICAgIGJvcmRlci10b3A6ICAgJGNhcmV0LXdpZHRoIGRhc2hlZDtcbiAgICAgICAgYm9yZGVyLXJpZ2h0OiAkY2FyZXQtd2lkdGggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgICAgIGJvcmRlci1sZWZ0OiAgJGNhcmV0LXdpZHRoIHNvbGlkIHRyYW5zcGFyZW50O1xuICAgICAgICBvcGFjaXR5OiAwLjc1O1xuICAgIH1cblxuICAgIC8vIEhvdmVyIHN0YXRlXG4gICAgLmhhbmRzb250YWJsZSB7XG4gICAgICAgIHRkOmhvdmVyLFxuICAgICAgICB0aDpob3ZlciB7XG4gICAgICAgICAgICAuaHRBdXRvY29tcGxldGVBcnJvdyB7XG4gICAgICAgICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC8vIFdoZW4gY29sdW1uIGlzIHNlbGVjdGVkXG4gICAgICAgIHRkLmFyZWEgLmh0QXV0b2NvbXBsZXRlQXJyb3cge1xuICAgICAgICAgICAgY29sb3I6ICRob3QtY2VsbC1oaWdobGlnaHQtYmc7XG4gICAgICAgIH1cbiAgICB9XG5cblxuICAgIC8vXG4gICAgLy8gQ2hlY2tib3ggcmVuZGVyZXJcbiAgICAvL1xuXG4gICAgLy8gSW5wdXRcbiAgICAuaHRDaGVja2JveFJlbmRlcmVySW5wdXQge1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG5cbiAgICAgICAgLy8gTXV0ZSBpZiBubyB2YWx1ZVxuICAgICAgICAmLm5vVmFsdWUge1xuICAgICAgICAgICAgb3BhY2l0eTogMC41O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLy8gTGFiZWxcbiAgICAuaHRDaGVja2JveFJlbmRlcmVyTGFiZWwge1xuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG5cbiAgICAgICAgLy8gQWRkIHJpZ2h0IHNwYWNpbmdcbiAgICAgICAgPiAuaHRDaGVja2JveFJlbmRlcmVySW5wdXQge1xuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAkZWxlbWVudC1zcGFjZXIteDtcbiAgICAgICAgfVxuICAgIH1cblxuXG4gICAgLy9cbiAgICAvLyBUd2VlbmluZ1xuICAgIC8vXG5cbiAgICAuaGFuZHNvbnRhYmxlIHtcblxuICAgICAgICAvLyBIaWRlXG4gICAgICAgICYuaGlkZS10d2VlbiB7XG4gICAgICAgICAgICBhbmltYXRpb246IG9wYWNpdHktaGlkZSAwLjNzO1xuICAgICAgICAgICAgYW5pbWF0aW9uLWZpbGwtbW9kZTogZm9yd2FyZHM7XG4gICAgICAgIH1cblxuICAgICAgICAvLyBTaG93XG4gICAgICAgICYuc2hvdy10d2VlbiB7XG4gICAgICAgICAgICBhbmltYXRpb246IG9wYWNpdHktc2hvdyAwLjNzO1xuICAgICAgICAgICAgYW5pbWF0aW9uLWZpbGwtbW9kZTogZm9yd2FyZHM7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBBbmltYXRpb25cbiAgICBALXdlYmtpdC1rZXlmcmFtZXMgb3BhY2l0eS1oaWRlIHtcbiAgICAgICAgZnJvbSB7XG4gICAgICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICB9XG4gICAgICAgIHRvIHtcbiAgICAgICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgIH1cbiAgICB9XG4gICAgQGtleWZyYW1lcyBvcGFjaXR5LWhpZGUge1xuICAgICAgICBmcm9tIHtcbiAgICAgICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgIH1cbiAgICAgICAgdG8ge1xuICAgICAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgfVxuICAgIH1cbiAgICBALXdlYmtpdC1rZXlmcmFtZXMgb3BhY2l0eS1zaG93IHtcbiAgICAgICAgZnJvbSB7XG4gICAgICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICB9XG4gICAgICAgIHRvIHtcbiAgICAgICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgIH1cbiAgICB9XG4gICAgQGtleWZyYW1lcyBvcGFjaXR5LXNob3cge1xuICAgICAgICBmcm9tIHtcbiAgICAgICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgIH1cbiAgICAgICAgdG8ge1xuICAgICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgfVxuICAgIH1cblxuXG4gICAgLy9cbiAgICAvLyBEcm9wZG93biBtZW51XG4gICAgLy9cblxuICAgIC5oYW5kc29udGFibGUge1xuXG4gICAgICAgIC8vIEJhc2VcbiAgICAgICAgJi5saXN0Ym94IHtcbiAgICAgICAgICAgIG1hcmdpbjogMDtcblxuICAgICAgICAgICAgLy8gVGFibGVcbiAgICAgICAgICAgIC5odF9tYXN0ZXIgdGFibGUge1xuICAgICAgICAgICAgICAgIGJvcmRlci1jb2xsYXBzZTogc2VwYXJhdGU7XG4gICAgICAgICAgICAgICAgYm9yZGVyOiAkdGFibGUtYm9yZGVyLXdpZHRoIHNvbGlkICR0YWJsZS1ib3JkZXItY29sb3I7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGhvdC1jZWxsLWJnO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAvLyBSZW1vdmUgYm9yZGVyc1xuICAgICAgICAgICAgdGgsXG4gICAgICAgICAgICB0cjpmaXJzdC1jaGlsZCB0aCxcbiAgICAgICAgICAgIHRyOmxhc3QtY2hpbGQgdGgsXG4gICAgICAgICAgICB0cjpmaXJzdC1jaGlsZCB0ZCxcbiAgICAgICAgICAgIHRkIHtcbiAgICAgICAgICAgICAgICBib3JkZXI6IDA7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC8vIENlbGwgYW5kIHJvdyB0cmFuc2l0aW9uXG4gICAgICAgICAgICB0cixcbiAgICAgICAgICAgIHRoLFxuICAgICAgICAgICAgdGQge1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oYWxsIGVhc2UtaW4tb3V0ICRjb21wb25lbnQtdHJhbnNpdGlvbi10aW1lcik7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC8vIFByZXZlbnQgd3JhcHBpbmdcbiAgICAgICAgICAgIHRoLFxuICAgICAgICAgICAgdGQge1xuICAgICAgICAgICAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgICAgICAgICAgICAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC8vIFJlYWQgb25seSBjZWxsXG4gICAgICAgICAgICB0ZC5odERpbW1lZCB7XG4gICAgICAgICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICAgICAgICAgIGNvbG9yOiBpbmhlcml0O1xuICAgICAgICAgICAgICAgIGZvbnQtc3R5bGU6IGluaGVyaXQ7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC8vIEhpZGUgYWRkaXRpb25hbCBib3JkZXJzXG4gICAgICAgICAgICAud3RCb3JkZXIge1xuICAgICAgICAgICAgICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLy8gQWN0aXZlIGFuZCBob3ZlciBzdGF0ZXNcbiAgICAgICAgICAgIHRyIHRkLmN1cnJlbnQsXG4gICAgICAgICAgICB0cjpob3ZlciB0ZCB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGRyb3Bkb3duLWxpbmstaG92ZXItYmc7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cblxuICAgIC8vXG4gICAgLy8gQ2hhbmdlIGNlbGwgdHlwZSBkcm9wZG93blxuICAgIC8vXG5cbiAgICAvLyBIZWFkZXIgYnV0dG9uXG4gICAgLmNoYW5nZVR5cGUge1xuICAgICAgICBib3JkZXI6IDA7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICBmbG9hdDogcmlnaHQ7XG4gICAgICAgIG1hcmdpbi1yaWdodDogJGhvdC1jZWxsLXBhZGRpbmcteDtcbiAgICAgICAgbGluZS1oZWlnaHQ6ICRpY29uLWZvbnQtc2l6ZTtcbiAgICAgICAgbWFyZ2luLXRvcDogKCRsaW5lLWhlaWdodC1jb21wdXRlZCAtICRpY29uLWZvbnQtc2l6ZSkgLyAyO1xuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgIG9wYWNpdHk6IDAuNzU7XG5cbiAgICAgICAgLy8gSG92ZXIgc3RhdGVcbiAgICAgICAgQGluY2x1ZGUgaG92ZXIge1xuICAgICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8vIERyb3Bkb3duXG4gICAgLmNoYW5nZVR5cGVNZW51IHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICBib3JkZXI6ICRkcm9wZG93bi1ib3JkZXItd2lkdGggc29saWQgJGRyb3Bkb3duLWJvcmRlci1jb2xvcjtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGRyb3Bkb3duLWJnO1xuICAgICAgICBwYWRkaW5nOiAkZHJvcGRvd24tcGFkZGluZy15IDA7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIHdpZHRoOiAkZHJvcGRvd24tbWluLXdpZHRoO1xuICAgICAgICB6LWluZGV4OiAkemluZGV4LWRyb3Bkb3duO1xuXG4gICAgICAgIC8vIE1lbnUgaXRlbXNcbiAgICAgICAgbGkge1xuICAgICAgICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICAgICAgICAgIHBhZGRpbmc6ICRkcm9wZG93bi1pdGVtLXBhZGRpbmcteSAkZHJvcGRvd24taXRlbS1wYWRkaW5nLXg7XG4gICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAoKCRkcm9wZG93bi1pdGVtLXBhZGRpbmcteCArICgkZHJvcGRvd24taXRlbS1wYWRkaW5nLXggLyAyKSkgKyAkaWNvbi1mb250LXNpemUpO1xuICAgICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbihhbGwgZWFzZS1pbi1vdXQgJGNvbXBvbmVudC10cmFuc2l0aW9uLXRpbWVyKTtcblxuICAgICAgICAgICAgLy8gSG92ZXIgc3RhdGVcbiAgICAgICAgICAgIEBpbmNsdWRlIGhvdmVyIHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZHJvcGRvd24tbGluay1ob3Zlci1iZztcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLy8gQWRkIGNoZWNrbWFyayBpY29uIHRvIHRoZSBhY3RpdmUgdHlwZVxuICAgICAgICAgICAgJi5hY3RpdmU6YWZ0ZXIge1xuICAgICAgICAgICAgICAgIGNvbnRlbnQ6ICdcXGU2MDAnO1xuICAgICAgICAgICAgICAgIGZvbnQtZmFtaWx5OiAkaWNvbi1mb250LWZhbWlseTtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgcmlnaHQ6ICRkcm9wZG93bi1pdGVtLXBhZGRpbmcteDtcbiAgICAgICAgICAgICAgICB0b3A6IDUwJTtcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAtKCRpY29uLWZvbnQtc2l6ZSAvIDIpO1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgICAgICBmb250LXNpemU6ICRpY29uLWZvbnQtc2l6ZTtcbiAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMTtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBsbC1mb250LXNtb290aGluZygpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG5cbiAgICAvL1xuICAgIC8vIENsb25lZCB0YWJsZXMgYXBwZWFyYW5jZVxuICAgIC8vXG5cbiAgICAvLyBUb3BcbiAgICAuaHRfY2xvbmVfdG9wIHtcbiAgICAgICAgei1pbmRleDogMTAxO1xuICAgIH1cblxuICAgIC8vIExlZnRcbiAgICAuaHRfY2xvbmVfbGVmdCB7XG4gICAgICAgIHotaW5kZXg6IDEwMjtcbiAgICB9XG5cbiAgICAvLyBUb3AgbGVmdCBhbmQgYm90dG9tIGxlZnRcbiAgICAuaHRfY2xvbmVfdG9wX2xlZnRfY29ybmVyLFxuICAgIC5odF9jbG9uZV9ib3R0b21fbGVmdF9jb3JuZXIge1xuICAgICAgICB6LWluZGV4OiAxMDM7XG4gICAgfVxuXG4gICAgLy8gRGVidWdcbiAgICAuaHRfY2xvbmVfZGVidWcge1xuICAgICAgICB6LWluZGV4OiAxMDM7XG4gICAgfVxuXG5cbiAgICAvL1xuICAgIC8vIFNlYXJjaCByZXN1bHRzXG4gICAgLy9cblxuICAgIC5oYW5kc29udGFibGUge1xuICAgICAgICB0ZC5odFNlYXJjaFJlc3VsdCB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaG90LXNlYXJjaC1yZXN1bHQtYmc7XG4gICAgICAgIH1cbiAgICB9XG5cblxuICAgIC8vXG4gICAgLy8gQ2VsbCBib3JkZXJzXG4gICAgLy9cblxuICAgIC8vIEJhc2VcbiAgICAuaHRCb3JkZXJlZCB7XG4gICAgICAgIGJvcmRlci13aWR0aDogJHRhYmxlLWJvcmRlci13aWR0aDtcblxuICAgICAgICAvLyBUb3BcbiAgICAgICAgJi5odFRvcEJvcmRlclNvbGlkIHtcbiAgICAgICAgICAgIGJvcmRlci10b3Atc3R5bGU6IHNvbGlkO1xuICAgICAgICAgICAgYm9yZGVyLXRvcC1jb2xvcjogJHRhYmxlLWJvcmRlci1jb2xvcjtcbiAgICAgICAgfVxuXG4gICAgICAgIC8vIFJpZ2h0XG4gICAgICAgICYuaHRSaWdodEJvcmRlclNvbGlkIHtcbiAgICAgICAgICAgIGJvcmRlci1yaWdodC1zdHlsZTogc29saWQ7XG4gICAgICAgICAgICBib3JkZXItcmlnaHQtY29sb3I6ICR0YWJsZS1ib3JkZXItY29sb3I7XG4gICAgICAgIH1cblxuICAgICAgICAvLyBCb3R0b21cbiAgICAgICAgJi5odEJvdHRvbUJvcmRlclNvbGlkIHtcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b20tc3R5bGU6IHNvbGlkO1xuICAgICAgICAgICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogJHRhYmxlLWJvcmRlci1jb2xvcjtcbiAgICAgICAgfVxuXG4gICAgICAgIC8vIExlZnRcbiAgICAgICAgJi5odExlZnRCb3JkZXJTb2xpZCB7XG4gICAgICAgICAgICBib3JkZXItbGVmdC1zdHlsZTogc29saWQ7XG4gICAgICAgICAgICBib3JkZXItbGVmdC1jb2xvcjogJHRhYmxlLWJvcmRlci1jb2xvcjtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8vIEdyb3VwIGluZGljYXRvclxuICAgIC5oYW5kc29udGFibGUgdGhlYWQgdHI6bnRoLWxhc3QtY2hpbGQoMikgdGguaHRHcm91cEluZGljYXRvckNvbnRhaW5lciB7XG4gICAgICAgIGJvcmRlci1ib3R0b206ICR0YWJsZS1ib3JkZXItd2lkdGggc29saWQgJHRhYmxlLWJvcmRlci1jb2xvcjtcbiAgICAgICAgcGFkZGluZy1ib3R0b206ICRob3QtY2VsbC1wYWRkaW5nLXk7XG4gICAgfVxuXG4gICAgLy8gUmlnaHQgYm9yZGVyc1xuICAgIC5oYW5kc29udGFibGUgdGJvZHkgdHIgdGg6bnRoLWxhc3QtY2hpbGQoMiksXG4gICAgLmh0X2Nsb25lX3RvcF9sZWZ0X2Nvcm5lciB0aGVhZCB0ciB0aDpudGgtbGFzdC1jaGlsZCgyKSB7XG4gICAgICAgIGJvcmRlci1yaWdodDogJHRhYmxlLWJvcmRlci13aWR0aCBzb2xpZCAkdGFibGUtYm9yZGVyLWNvbG9yO1xuICAgIH1cblxuXG4gICAgLy9cbiAgICAvLyBDb2xsYXBzaWJsZSBidXR0b25cbiAgICAvL1xuXG4gICAgLy8gQ29sbGFwc2UgYnV0dG9uXG4gICAgLmh0Q29sbGFwc2VCdXR0b24ge1xuICAgICAgICBsaW5lLWhlaWdodDogMC42MjVyZW07XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgYm9yZGVyOiAwO1xuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDAuMTg3NXJlbTtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBAaW5jbHVkZSBzaXplKDAuNjI1cmVtKTtcbiAgICAgICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkYm9yZGVyLXJhZGl1cyk7XG5cbiAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICAgICAgaGVpZ2h0OiAzMDAlO1xuICAgICAgICAgICAgd2lkdGg6ICR0YWJsZS1ib3JkZXItd2lkdGg7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNjY2M7XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogMC4yNXJlbTtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIGJvdHRvbTogMC42MjVyZW07XG4gICAgICAgIH1cblxuICAgICAgICAvLyBJbnNpZGUgdGhlYWRcbiAgICAgICAgdGhlYWQgJiB7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICB0b3A6IDAuMzEyNXJlbTtcbiAgICAgICAgICAgIHJpZ2h0OiAwLjMxMjVyZW07XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuXG4gICAgICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6ICR0YWJsZS1ib3JkZXItd2lkdGg7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDcwMCU7XG4gICAgICAgICAgICAgICAgcmlnaHQ6IDAuNjI1cmVtO1xuICAgICAgICAgICAgICAgIHRvcDogMC4yNXJlbTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8vIEV4cGFuZCBidXR0b25cbiAgICAuaGFuZHNvbnRhYmxlIHtcblxuICAgICAgICAvLyBJbnNpZGUgaGVhZGluZ1xuICAgICAgICB0aCAuaHRFeHBhbmRCdXR0b24ge1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDAuNjI1cmVtO1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgYm9yZGVyOiAwO1xuICAgICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgIEBpbmNsdWRlIHNpemUoMC42MjVyZW0pO1xuICAgICAgICAgICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkYm9yZGVyLXJhZGl1cyk7XG5cbiAgICAgICAgICAgIC8vIENsaWNrYWJsZVxuICAgICAgICAgICAgJi5jbGlja2FibGUge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLy8gSW5zaWRlIHRhYmxlIGhlYWRcbiAgICAgICAgdGhlYWQgdGggLmh0RXhwYW5kQnV0dG9uIHtcbiAgICAgICAgICAgIHRvcDogMC4zMTI1cmVtO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLy8gQ29sbGFwc2libGUgaW5kaWNhdG9yXG4gICAgLmNvbGxhcHNpYmxlSW5kaWNhdG9yIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IDUwJTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCUsIC01MCUpO1xuICAgICAgICByaWdodDogMC4zMTI1cmVtO1xuICAgICAgICBib3JkZXI6IDA7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAwLjYyNXJlbTtcbiAgICAgICAgY29sb3I6ICRib2R5LWNvbG9yO1xuICAgICAgICBmb250LXNpemU6ICRmb250LXNpemUtYmFzZTtcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZ3JheS0zMDA7XG4gICAgICAgIEBpbmNsdWRlIHNpemUoMC42MjVyZW0pO1xuICAgICAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRib3JkZXItcmFkaXVzLXJvdW5kKTtcbiAgICB9XG5cblxuICAgIC8vXG4gICAgLy8gSGlkZGVuIGVsZW1lbnRzXG4gICAgLy9cblxuICAgIC5oYW5kc29udGFibGUge1xuXG4gICAgICAgIC8vIEhpZGRlbiBjb2x1bW5cbiAgICAgICAgY29sLmhpZGRlbiB7XG4gICAgICAgICAgICB3aWR0aDogMCFpbXBvcnRhbnQ7XG4gICAgICAgIH1cblxuICAgICAgICAvLyBMaWdodGVuIGJvcmRlclxuICAgICAgICB0YWJsZSB0ciB0aC5saWdodFJpZ2h0Qm9yZGVyIHtcbiAgICAgICAgICAgIGJvcmRlci1yaWdodDogJHRhYmxlLWJvcmRlci13aWR0aCBzb2xpZCBsaWdodGVuKCR0YWJsZS1ib3JkZXItY29sb3IsIDE1JSk7XG4gICAgICAgIH1cblxuICAgICAgICAvLyBIaWRkZW4gcm93XG4gICAgICAgIHRyLmhpZGRlbiB7XG4gICAgICAgICAgICAmLFxuICAgICAgICAgICAgdGQsXG4gICAgICAgICAgICB0aCB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuXG4gICAgLy9cbiAgICAvLyBDbG9uZWQgdGFibGVzIG92ZXJmbG93c1xuICAgIC8vXG5cbiAgICAvLyBDb21tb25cbiAgICAuaHRfbWFzdGVyLFxuICAgIC5odF9jbG9uZV9sZWZ0LFxuICAgIC5odF9jbG9uZV90b3AsXG4gICAgLmh0X2Nsb25lX2JvdHRvbSB7XG4gICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIH1cblxuICAgIC8vIEhvbGRlclxuICAgIC53dEhvbGRlciB7XG5cbiAgICAgICAgLy8gTWFzdGVyXG4gICAgICAgIC5odF9tYXN0ZXIgJiB7XG4gICAgICAgICAgICBvdmVyZmxvdzogYXV0bztcbiAgICAgICAgfVxuXG4gICAgICAgIC8vIExlZnRcbiAgICAgICAgLmh0X2Nsb25lX2xlZnQgJiB7XG4gICAgICAgICAgICBvdmVyZmxvdy14OiBoaWRkZW47XG4gICAgICAgICAgICBvdmVyZmxvdy15OiBhdXRvO1xuICAgICAgICB9XG5cbiAgICAgICAgLy8gVG9wIGFuZCBib3R0b21cbiAgICAgICAgLmh0X2Nsb25lX3RvcCAmLFxuICAgICAgICAuaHRfY2xvbmVfYm90dG9tICYge1xuICAgICAgICAgICAgb3ZlcmZsb3cteDogaGlkZGVuO1xuICAgICAgICAgICAgb3ZlcmZsb3cteTogaGlkZGVuO1xuICAgICAgICB9XG4gICAgfVxuXG5cbiAgICAvL1xuICAgIC8vIFdhbGtvbnRhYmxlIGRlYnVnIG92ZXJsYXlcbiAgICAvL1xuXG4gICAgLy8gSGlkZGVuXG4gICAgLnd0RGVidWdIaWRkZW4ge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cblxuICAgIC8vIFZpc2libGVcbiAgICAud3REZWJ1Z1Zpc2libGUge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgYW5pbWF0aW9uLWR1cmF0aW9uOiAwLjVzO1xuICAgICAgICBhbmltYXRpb24tbmFtZTogd3RGYWRlSW5Gcm9tTm9uZTtcbiAgICB9XG5cbiAgICAvLyBBbmltYXRpb25cbiAgICBAa2V5ZnJhbWVzIHd0RmFkZUluRnJvbU5vbmUge1xuICAgICAgICAwJSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgfVxuXG4gICAgICAgIDElIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgfVxuXG4gICAgICAgIDEwMCUge1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICB9XG4gICAgfVxuICAgIEAtd2Via2l0LWtleWZyYW1lcyB3dEZhZGVJbkZyb21Ob25lIHtcbiAgICAgICAgMCUge1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgIH1cblxuICAgICAgICAxJSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgIH1cblxuICAgICAgICAxMDAlIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgfVxuICAgIH1cblxuXG4gICAgLy9cbiAgICAvLyBNb2JpbGUgdGV4dCBlZGl0b3JcbiAgICAvL1xuXG4gICAgLy8gQmFzZVxuICAgIC5oYW5kc29udGFibGUge1xuICAgICAgICAmLm1vYmlsZSB7XG4gICAgICAgICAgICAmLFxuICAgICAgICAgICAgLnd0SG9sZGVyIHtcbiAgICAgICAgICAgICAgICAtd2Via2l0LXRvdWNoLWNhbGxvdXQ6IG5vbmU7XG4gICAgICAgICAgICAgICAgLXdlYmtpdC10YXAtaGlnaGxpZ2h0LWNvbG9yOiByZ2JhKDAsMCwwLDApO1xuICAgICAgICAgICAgICAgIC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDtcbiAgICAgICAgICAgICAgICB1c2VyLXNlbGVjdDogbm9uZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8vIEVkaXRvciBjb250YWluZXJcbiAgICAuaHRNb2JpbGVFZGl0b3JDb250YWluZXIge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgd2lkdGg6IDcwJTtcbiAgICAgICAgaGVpZ2h0OiAzLjM3NXJlbTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGdyYXktMjAwO1xuICAgICAgICBib3JkZXI6ICR0YWJsZS1ib3JkZXItd2lkdGggc29saWQgJHRhYmxlLWJvcmRlci1jb2xvcjtcbiAgICAgICAgei1pbmRleDogOTk5O1xuICAgICAgICAtd2Via2l0LXRleHQtc2l6ZS1hZGp1c3Q6IG5vbmU7XG4gICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGJvcmRlci1yYWRpdXMtcm91bmQpO1xuXG4gICAgICAgIC8vIEFjdGl2ZVxuICAgICAgICAmLmFjdGl2ZSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgfVxuXG4gICAgICAgIC8vIElucHV0c1xuICAgICAgICAuaW5wdXRzIHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIHJpZ2h0OiAxMy4xM3JlbTtcbiAgICAgICAgICAgIGJvdHRvbTogMC42MjVyZW07XG4gICAgICAgICAgICB0b3A6IDAuNjI1cmVtO1xuICAgICAgICAgICAgbGVmdDogMC44NzVyZW07XG4gICAgICAgICAgICBoZWlnaHQ6ICRpbnB1dC1oZWlnaHQ7XG5cbiAgICAgICAgICAgIHRleHRhcmVhIHtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6ICRmb250LXNpemUtYmFzZTtcbiAgICAgICAgICAgICAgICBib3JkZXI6ICRpbnB1dC1ib3JkZXItd2lkdGggc29saWQgJGlucHV0LWJvcmRlci1jb2xvcjtcbiAgICAgICAgICAgICAgICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgIGxlZnQ6IDAuODc1cmVtO1xuICAgICAgICAgICAgICAgIHJpZ2h0OiAwLjg3NXJlbTtcbiAgICAgICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6ICRpbnB1dC1wYWRkaW5nLXk7XG4gICAgICAgICAgICAgICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC8vIENlbGwgcG9pbnRlclxuICAgICAgICAuY2VsbFBvaW50ZXIge1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgdG9wOiAtMC44MTI1cmVtO1xuICAgICAgICAgICAgaGVpZ2h0OiAwO1xuICAgICAgICAgICAgd2lkdGg6IDA7XG4gICAgICAgICAgICBsZWZ0OiAxLjg3NXJlbTtcbiAgICAgICAgICAgIGJvcmRlci1sZWZ0OiAwLjgxMjVyZW0gc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICBib3JkZXItcmlnaHQ6IDAuODEyNXJlbSBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDAuODEyNXJlbSBzb2xpZCAkZ3JheS0zMDA7XG5cbiAgICAgICAgICAgIC8vIEhpZGRlblxuICAgICAgICAgICAgJi5oaWRkZW4ge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC8vIEFycm93XG4gICAgICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgIHRvcDogMC4xMjVyZW07XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAwO1xuICAgICAgICAgICAgICAgIHdpZHRoOiAwO1xuICAgICAgICAgICAgICAgIGxlZnQ6IC0wLjgxMjVyZW07XG4gICAgICAgICAgICAgICAgYm9yZGVyLWxlZnQ6IDAuODEyNXJlbSBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICAgICAgICAgICAgICBib3JkZXItcmlnaHQ6IDAuODEyNXJlbSBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICAgICAgICAgICAgICBib3JkZXItYm90dG9tOiAwLjgxMjVyZW0gc29saWQgJGdyYXktMjAwO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLy8gTW92ZSBoYW5kbGVcbiAgICAgICAgLm1vdmVIYW5kbGUge1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgdG9wOiAwLjYyNXJlbTtcbiAgICAgICAgICAgIGxlZnQ6IDAuMzEyNXJlbTtcbiAgICAgICAgICAgIHdpZHRoOiAxLjg3NXJlbTtcbiAgICAgICAgICAgIGJvdHRvbTogMHB4O1xuICAgICAgICAgICAgY3Vyc29yOiBtb3ZlO1xuICAgICAgICAgICAgei1pbmRleDogOTk5OTtcblxuICAgICAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICAgICAgY29udGVudDogXCIuLlxcYS4uXFxhLi5cXGEuLlwiO1xuICAgICAgICAgICAgICAgIHdoaXRlLXNwYWNlOiBwcmU7XG4gICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDAuNjI1cmVtO1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMS4yNXJlbTtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogLTAuNXJlbTtcbiAgICAgICAgICAgICAgICBjb2xvcjogJGdyYXktMzAwO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLy8gUG9zaXRpb24gY29udHJvbHNcbiAgICAgICAgLnBvc2l0aW9uQ29udHJvbHMge1xuICAgICAgICAgICAgd2lkdGg6IDEyLjgxcmVtO1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgcmlnaHQ6IDAuMzEyNXJlbTtcbiAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICAgIGJvdHRvbTogMDtcblxuICAgICAgICAgICAgPiBkaXYge1xuICAgICAgICAgICAgICAgIHdpZHRoOiAzLjEyNXJlbTtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgICAgICAgZmxvYXQ6IGxlZnQ7XG5cbiAgICAgICAgICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgICAgICAgICAgY29udGVudDogXCIgXCI7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMXJlbTtcbiAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAxcmVtO1xuICAgICAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAzLjEyNXJlbTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuXG4gICAgICAgIC8vXG4gICAgICAgIC8vIEJ1dHRvbnNcbiAgICAgICAgLy9cblxuICAgICAgICAvLyBCYXNlXG4gICAgICAgIC5sZWZ0QnV0dG9uOmFmdGVyLFxuICAgICAgICAucmlnaHRCdXR0b246YWZ0ZXIsXG4gICAgICAgIC51cEJ1dHRvbjphZnRlcixcbiAgICAgICAgLmRvd25CdXR0b246YWZ0ZXIge1xuICAgICAgICAgICAgbWFyZ2luOiAxLjMxM3JlbSAwIDAgMS4zMTNyZW07XG4gICAgICAgICAgICB0cmFuc2Zvcm0tb3JpZ2luOiAwLjMxMjVyZW07XG4gICAgICAgIH1cblxuICAgICAgICAvLyBMZWZ0IGJ1dHRvblxuICAgICAgICAubGVmdEJ1dHRvbiB7XG4gICAgICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgICAgICBib3JkZXItdG9wOiAwLjEyNXJlbSBzb2xpZCAkaG90LWNlbGwtaGlnaGxpZ2h0LWJvcmRlci1jb2xvcjtcbiAgICAgICAgICAgICAgICBib3JkZXItbGVmdDogMC4xMjVyZW0gc29saWQgJGhvdC1jZWxsLWhpZ2hsaWdodC1ib3JkZXItY29sb3I7XG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoLTQ1ZGVnKTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJjphY3RpdmU6YWZ0ZXIge1xuICAgICAgICAgICAgICAgIGJvcmRlci1jb2xvcjogJGdyYXktNDAwO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLy8gUmlnaHQgYnV0dG9uXG4gICAgICAgIC5yaWdodEJ1dHRvbiB7XG4gICAgICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgICAgICBib3JkZXItdG9wOiAwLjEyNXJlbSBzb2xpZCAkaG90LWNlbGwtaGlnaGxpZ2h0LWJvcmRlci1jb2xvcjtcbiAgICAgICAgICAgICAgICBib3JkZXItbGVmdDogMC4xMjVyZW0gc29saWQgJGhvdC1jZWxsLWhpZ2hsaWdodC1ib3JkZXItY29sb3I7XG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMTM1ZGVnKTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJjphY3RpdmU6YWZ0ZXIge1xuICAgICAgICAgICAgICAgIGJvcmRlci1jb2xvcjogJGdyYXktNDAwO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLy8gVXAgYnV0dG9uXG4gICAgICAgIC51cEJ1dHRvbiB7XG4gICAgICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgICAgICBib3JkZXItdG9wOiAwLjEyNXJlbSBzb2xpZCAkaG90LWNlbGwtaGlnaGxpZ2h0LWJvcmRlci1jb2xvcjtcbiAgICAgICAgICAgICAgICBib3JkZXItbGVmdDogMC4xMjVyZW0gc29saWQgJGhvdC1jZWxsLWhpZ2hsaWdodC1ib3JkZXItY29sb3I7XG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoNDVkZWcpO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmOmFjdGl2ZTphZnRlciB7XG4gICAgICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiAkZ3JheS00MDA7ICAgICAgICAgICAgXG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAvLyBEb3duIGJ1dHRvblxuICAgICAgICAuZG93bkJ1dHRvbiB7XG4gICAgICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgICAgICBib3JkZXItdG9wOiAwLjEyNXJlbSBzb2xpZCAkaG90LWNlbGwtaGlnaGxpZ2h0LWJvcmRlci1jb2xvcjtcbiAgICAgICAgICAgICAgICBib3JkZXItbGVmdDogMC4xMjVyZW0gc29saWQgJGhvdC1jZWxsLWhpZ2hsaWdodC1ib3JkZXItY29sb3I7XG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMjI1ZGVnKTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJjphY3RpdmU6YWZ0ZXIge1xuICAgICAgICAgICAgICAgIGJvcmRlci1jb2xvcjogJGdyYXktNDAwO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLy8gU2V0IHotaW5kZXhcbiAgICAudG9wTGVmdFNlbGVjdGlvbkhhbmRsZTpub3QoLmh0X21hc3RlciAudG9wTGVmdFNlbGVjdGlvbkhhbmRsZSksXG4gICAgLnRvcExlZnRTZWxlY3Rpb25IYW5kbGUtSGl0QXJlYTpub3QoLmh0X21hc3RlciAudG9wTGVmdFNlbGVjdGlvbkhhbmRsZS1IaXRBcmVhKSB7XG4gICAgICAgIHotaW5kZXg6IDk5OTk7XG4gICAgfVxuXG4gICAgLy8gSW5pdGlhbCBsZWZ0L3RvcCBjb29yZGluYXRlcyAtIG92ZXJ3cml0dGVuIHdoZW4gYWN0dWFsIHBvc2l0aW9uIGlzIHNldFxuICAgIC50b3BMZWZ0U2VsZWN0aW9uSGFuZGxlLFxuICAgIC50b3BMZWZ0U2VsZWN0aW9uSGFuZGxlLUhpdEFyZWEsXG4gICAgLmJvdHRvbVJpZ2h0U2VsZWN0aW9uSGFuZGxlLFxuICAgIC5ib3R0b21SaWdodFNlbGVjdGlvbkhhbmRsZS1IaXRBcmVhIHtcbiAgICAgICAgbGVmdDogLTEwMDAwcHg7XG4gICAgICAgIHRvcDogLTEwMDAwcHg7XG4gICAgfVxuXG5cbiAgICAvL1xuICAgIC8vIENvbW1lbnRzXG4gICAgLy9cblxuICAgIC8vIENlbGwgc3R5bGVzXG4gICAgLmh0Q29tbWVudENlbGwge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAgICAgLy8gQ29ybmVyIGFycm93XG4gICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgICByaWdodDogMDtcbiAgICAgICAgICAgIGJvcmRlci1sZWZ0OiAwLjM3NXJlbSBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICAgICAgICAgIGJvcmRlci10b3A6IDAuMzc1cmVtIHNvbGlkIHJlZDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8vIENvbW1lbnRzIGNvbnRhaW5lclxuICAgIC5odENvbW1lbnRzIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgei1pbmRleDogJHppbmRleC10b29sdGlwO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgfVxuXG4gICAgLy8gQ29tbWVudCBzdHlsZXNcbiAgICAuaHRDb21tZW50VGV4dEFyZWEge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaW5wdXQtYmc7XG4gICAgICAgIGJvcmRlcjogJGRyb3Bkb3duLWJvcmRlci13aWR0aCBzb2xpZCAkZHJvcGRvd24tYm9yZGVyLWNvbG9yO1xuICAgICAgICBwYWRkaW5nOiAkaW5wdXQtcGFkZGluZy15ICRpbnB1dC1wYWRkaW5nLXg7XG4gICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgICAgIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbiAgICAgICAgQGluY2x1ZGUgYm94LXNoYWRvdygkZHJvcGRvd24tYm94LXNoYWRvdyk7XG4gICAgICAgIEBpbmNsdWRlIGJvcmRlci1ib3R0b20tcmFkaXVzKCRpbnB1dC1ib3JkZXItcmFkaXVzKTtcblxuICAgICAgICAmOmZvY3VzIHtcbiAgICAgICAgICAgIG91dGxpbmU6IDA7XG4gICAgICAgIH1cbiAgICB9XG5cblxuICAgIC8vXG4gICAgLy8gQ29udGV4dCBtZW51XG4gICAgLy9cblxuICAgIC5odENvbnRleHRNZW51IHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB6LWluZGV4OiAoJHppbmRleC1tb2RhbCArIDEpO1xuXG4gICAgICAgIC8vIEhpZGUgaW5uZXIgdGFibGVzXG4gICAgICAgIC5odF9jbG9uZV90b3AsXG4gICAgICAgIC5odF9jbG9uZV9sZWZ0LFxuICAgICAgICAuaHRfY2xvbmVfY29ybmVyLFxuICAgICAgICAuaHRfY2xvbmVfZGVidWcge1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgfVxuXG4gICAgICAgIC8vIFRhYmxlIHdpdGggY29udGVudFxuICAgICAgICB0YWJsZS5odENvcmUge1xuICAgICAgICAgICAgYm9yZGVyOiAkZHJvcGRvd24tYm9yZGVyLXdpZHRoIHNvbGlkICRkcm9wZG93bi1ib3JkZXItY29sb3I7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZHJvcGRvd24tYmc7XG4gICAgICAgICAgICBwYWRkaW5nOiAkZHJvcGRvd24tcGFkZGluZy15IDA7XG4gICAgICAgICAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRkcm9wZG93bi1ib3JkZXItcmFkaXVzKTtcbiAgICAgICAgICAgIEBpbmNsdWRlIGJveC1zaGFkb3coJGRyb3Bkb3duLWJveC1zaGFkb3cpO1xuICAgICAgICB9XG5cbiAgICAgICAgLy8gSGlkZSBib3JkZXJzXG4gICAgICAgIC53dEJvcmRlciB7XG4gICAgICAgICAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgICAgIH1cblxuICAgICAgICAvLyBUYWJsZVxuICAgICAgICB0YWJsZSB0Ym9keSB0ciB7XG5cbiAgICAgICAgICAgIC8vIENlbGxzXG4gICAgICAgICAgICB0ZCB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgICAgIGJvcmRlci13aWR0aDogMDtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAoJGRyb3Bkb3duLWl0ZW0tcGFkZGluZy15IC8gMikgJGRyb3Bkb3duLWl0ZW0tcGFkZGluZy14O1xuICAgICAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSB0ZXh0LXRydW5jYXRlKCk7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbihhbGwgZWFzZS1pbi1vdXQgJGNvbXBvbmVudC10cmFuc2l0aW9uLXRpbWVyKTtcblxuICAgICAgICAgICAgICAgIC8vIE5vIGJvcmRlciBpbiBmaXJzdCBjZWxsXG4gICAgICAgICAgICAgICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAgICAgICAgICAgICAgIGJvcmRlcjogMDtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAvLyBSZWFkIG9ubHlcbiAgICAgICAgICAgICAgICAmLmh0RGltbWVkIHtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRkcm9wZG93bi1saW5rLWNvbG9yO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIC8vIEhvdmVyIGFuZCBhY3RpdmUgc3RhdGVzXG4gICAgICAgICAgICAgICAgJi5jdXJyZW50LFxuICAgICAgICAgICAgICAgICYuemVyb2NsaXBib2FyZC1pcy1ob3ZlciB7XG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRkcm9wZG93bi1saW5rLWhvdmVyLWJnO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIC8vIFNlcGFyYXRvclxuICAgICAgICAgICAgICAgICYuaHRTZXBhcmF0b3Ige1xuICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDA7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICAgICAgICAgICAgICBjdXJzb3I6IGRlZmF1bHQ7XG5cbiAgICAgICAgICAgICAgICAgICAgPiBkaXYge1xuICAgICAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAxcHg7XG4gICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZHJvcGRvd24tYm9yZGVyLWNvbG9yO1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luOiAkZHJvcGRvd24tcGFkZGluZy15IDA7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAvLyBEaXNhYmxlZCBzdGF0ZVxuICAgICAgICAgICAgICAgICYuaHREaXNhYmxlZCB7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkZHJvcGRvd24tbGluay1kaXNhYmxlZC1jb2xvcjtcblxuICAgICAgICAgICAgICAgICAgICAmLFxuICAgICAgICAgICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGN1cnNvcjogZGVmYXVsdDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIC8vIFNlbGVjdGVkIGNlbGxcbiAgICAgICAgICAgICAgICBkaXYgc3Bhbi5zZWxlY3RlZCB7XG4gICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICAgICAgcmlnaHQ6ICRkcm9wZG93bi1pdGVtLXBhZGRpbmcteDtcbiAgICAgICAgICAgICAgICAgICAgdG9wOiA1MCU7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IC0oJGljb24tZm9udC1zaXplIC8gMik7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMDtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRjb2xvci1ncmV5LTUwMDtcblxuICAgICAgICAgICAgICAgICAgICAvLyBJY29uIGluZGljYXRvclxuICAgICAgICAgICAgICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbnRlbnQ6ICdcXGU2MDAnO1xuICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1mYW1pbHk6ICRpY29uLWZvbnQtZmFtaWx5O1xuICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAkaWNvbi1mb250LXNpemU7XG4gICAgICAgICAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMTtcbiAgICAgICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGxsLWZvbnQtc21vb3RoaW5nKCk7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC8vIEhpZGRlbiByb3dcbiAgICAgICAgICAgICYuaHRIaWRkZW4ge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAvLyBIaWRlIG92ZXJmbG93cyBpbiB0YWJsZSBob2xkZXJcbiAgICAgICAgLmh0X21hc3RlciAud3RIb2xkZXIge1xuICAgICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8vIFN1YiBtZW51XG4gICAgLmh0Q29udGV4dE1lbnVTdWJfQWxpZ25tZW50IHtcbiAgICAgICAgbWFyZ2luLXRvcDogLSgkZHJvcGRvd24tcGFkZGluZy15KTtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IC0oJGRyb3Bkb3duLWJvcmRlci13aWR0aCk7XG4gICAgfVxuXG4gICAgLy8gRGlzcGxheSBhcyBidXR0b25zXG4gICAgLmdsb2JhbC16ZXJvY2xpcGJvYXJkLWNvbnRhaW5lcixcbiAgICAuZ2xvYmFsLXplcm9jbGlwYm9hcmQtZmxhc2gtYnJpZGdlIHtcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIH1cblxuICAgIC8vIENvcHkgLSBwYXN0ZSB0ZXh0YXJlYVxuICAgIHRleHRhcmVhI0hhbmRzb250YWJsZUNvcHlQYXN0ZSB7XG4gICAgICAgIHBvc2l0aW9uOiBmaXhlZCAhaW1wb3J0YW50O1xuICAgICAgICB0b3A6IDAgIWltcG9ydGFudDtcbiAgICAgICAgcmlnaHQ6IDEwMCUgIWltcG9ydGFudDtcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgb3V0bGluZTogMCBub25lICFpbXBvcnRhbnQ7XG4gICAgfVxuXG5cbiAgICAvL1xuICAgIC8vIENvbHVtbnMgYW5kIHJvd3MgZHJhZ2dpbmdcbiAgICAvL1xuXG4gICAgLy8gQ3Vyc29yXG4gICAgLmh0X19tYW51YWxDb2x1bW5Nb3ZlLmFmdGVyLXNlbGVjdGlvbi0tY29sdW1ucyB0aGVhZCB0aC5odF9faGlnaGxpZ2h0LFxuICAgIC5odF9fbWFudWFsQ29sdW1uTW92ZS5vbi1tb3ZpbmctLWNvbHVtbnMsXG4gICAgLmh0X19tYW51YWxDb2x1bW5Nb3ZlLm9uLW1vdmluZy0tY29sdW1ucyB0aGVhZCB0aC5odF9faGlnaGxpZ2h0LFxuICAgIC5odF9fbWFudWFsUm93TW92ZS5hZnRlci1zZWxlY3Rpb24tLXJvd3MgdGJvZHkgdGguaHRfX2hpZ2hsaWdodCxcbiAgICAuaHRfX21hbnVhbFJvd01vdmUub24tbW92aW5nLS1yb3dzLFxuICAgIC5odF9fbWFudWFsUm93TW92ZS5vbi1tb3ZpbmctLXJvd3MgdGJvZHkgdGguaHRfX2hpZ2hsaWdodCB7XG4gICAgICAgIGN1cnNvcjogbW92ZTtcbiAgICB9XG5cbiAgICAvLyBIaWRlIHJlc2l6ZXJzIGJ5IGRlZmF1bHRcbiAgICAuaHRfX21hbnVhbENvbHVtbk1vdmUub24tbW92aW5nLS1jb2x1bW5zIC5tYW51YWxDb2x1bW5SZXNpemVyLFxuICAgIC5odF9fbWFudWFsUm93TW92ZS5vbi1tb3ZpbmctLXJvd3MgLm1hbnVhbFJvd1Jlc2l6ZXIge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cblxuICAgIC8vIEd1aWRsaW5lIGFuZCBvdmVybGF5XG4gICAgLmh0X19tYW51YWxDb2x1bW5Nb3ZlLS1ndWlkZWxpbmUsXG4gICAgLmh0X19tYW51YWxDb2x1bW5Nb3ZlLS1iYWNrbGlnaHQsXG4gICAgLmh0X19tYW51YWxSb3dNb3ZlLS1ndWlkZWxpbmUsXG4gICAgLmh0X19tYW51YWxSb3dNb3ZlLS1iYWNrbGlnaHQge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG5cbiAgICAvLyBHdWlkbGluZVxuICAgIC5odF9fbWFudWFsQ29sdW1uTW92ZS0tZ3VpZGVsaW5lLFxuICAgIC5odF9fbWFudWFsUm93TW92ZS0tZ3VpZGVsaW5lIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHRhYmxlLWFjdGl2ZS1iZztcbiAgICAgICAgei1pbmRleDogMTA1O1xuICAgIH1cbiAgICAuaHRfX21hbnVhbENvbHVtbk1vdmUtLWd1aWRlbGluZSB7XG4gICAgICAgIHdpZHRoOiAoJHRhYmxlLWJvcmRlci13aWR0aCAqIDIpO1xuICAgICAgICBtYXJnaW4tbGVmdDogLSgkdGFibGUtYm9yZGVyLXdpZHRoKTtcbiAgICAgICAgdG9wOiAwOyAgICBcbiAgICB9XG4gICAgLmh0X19tYW51YWxSb3dNb3ZlLS1ndWlkZWxpbmUge1xuICAgICAgICBoZWlnaHQ6ICgkdGFibGUtYm9yZGVyLXdpZHRoICogMik7XG4gICAgICAgIG1hcmdpbi10b3A6IC0oJHRhYmxlLWJvcmRlci13aWR0aCk7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgfVxuXG4gICAgLy8gT3ZlcmxheVxuICAgIC5odF9fbWFudWFsQ29sdW1uTW92ZS0tYmFja2xpZ2h0LFxuICAgIC5odF9fbWFudWFsUm93TW92ZS0tYmFja2xpZ2h0IHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHRhYmxlLWFjdGl2ZS1iZztcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgei1pbmRleDogMTA1O1xuICAgICAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICB9XG5cbiAgICAvLyBTaG93IG92ZXJsYXkgYW5kIGd1aWRlbGluZVxuICAgIC5vbi1tb3ZpbmctLWNvbHVtbnMuc2hvdy11aSAuaHRfX21hbnVhbENvbHVtbk1vdmUtLWd1aWRlbGluZSxcbiAgICAub24tbW92aW5nLS1jb2x1bW5zIC5odF9fbWFudWFsQ29sdW1uTW92ZS0tYmFja2xpZ2h0LFxuICAgIC5vbi1tb3ZpbmctLXJvd3Muc2hvdy11aSAuaHRfX21hbnVhbFJvd01vdmUtLWd1aWRlbGluZSxcbiAgICAub24tbW92aW5nLS1yb3dzIC5odF9fbWFudWFsUm93TW92ZS0tYmFja2xpZ2h0IHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgfVxuXG5cblxuICAgIC8vIFBpa2FkYXkgZGF0ZXBpY2tlclxuICAgIC8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4gICAgLy9cbiAgICAvLyBCYXNlXG4gICAgLy9cblxuICAgIC8vIFNpbmdsZSBwaWNrZXJcbiAgICAucGlrYS1zaW5nbGUge1xuICAgICAgICB6LWluZGV4OiAkemluZGV4LWRyb3Bkb3duO1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZHJvcGRvd24tYmc7XG4gICAgICAgIGJvcmRlcjogJGRyb3Bkb3duLWJvcmRlci13aWR0aCBzb2xpZCAkZHJvcGRvd24tYm9yZGVyLWNvbG9yO1xuICAgICAgICBtYXJnaW4tdG9wOiAtKCRkcm9wZG93bi1ib3JkZXItd2lkdGgpO1xuICAgICAgICBtYXJnaW4tbGVmdDogLSgkZHJvcGRvd24tYm9yZGVyLXdpZHRoKTtcbiAgICAgICAgYmFja2dyb3VuZC1jbGlwOiBwYWRkaW5nLWJveDtcbiAgICAgICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkYm9yZGVyLXJhZGl1cyk7XG4gICAgICAgIEBpbmNsdWRlIGJveC1zaGFkb3coJGRyb3Bkb3duLWJveC1zaGFkb3cpO1xuICAgICAgICBAaW5jbHVkZSBjbGVhcmZpeDtcblxuICAgICAgICAvLyBIaWRlIHBpY2tlclxuICAgICAgICAmLmlzLWhpZGRlbiB7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9XG5cbiAgICAgICAgLy8gQm91bmRlZFxuICAgICAgICAmLmlzLWJvdW5kIHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8vIENvbnRhaW5lclxuICAgIC5waWthLWxlbmRhciB7XG4gICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICBtYXgtd2lkdGg6ICRob3QtZGF0ZXBpY2tlci13aWR0aDtcbiAgICAgICAgbWFyZ2luOiAkZGF0ZXBpY2tlci1wYWRkaW5nO1xuICAgIH1cblxuXG4gICAgLy9cbiAgICAvLyBIZWFkZXJcbiAgICAvL1xuXG4gICAgLy8gVGl0bGVcbiAgICAucGlrYS10aXRsZSB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gICAgICAgIC8vIFNlbGVjdFxuICAgICAgICBzZWxlY3Qge1xuICAgICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgei1pbmRleDogKCR6aW5kZXgtZHJvcGRvd24gLSAxKTtcbiAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICBoZWlnaHQ6ICRpbnB1dC1oZWlnaHQ7XG4gICAgICAgICAgICBwYWRkaW5nOiAkaW5wdXQtcGFkZGluZy15ICRpbnB1dC1wYWRkaW5nLXg7XG4gICAgICAgICAgICBib3JkZXI6ICRpbnB1dC1ib3JkZXItd2lkdGggc29saWQgJGlucHV0LWJvcmRlci1jb2xvcjtcbiAgICAgICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBUaXRsZSBsYWJlbHNcbiAgICAucGlrYS1sYWJlbCB7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICB6LWluZGV4OiAkemluZGV4LWRyb3Bkb3duO1xuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIHBhZGRpbmctdG9wOiAoJGRhdGVwaWNrZXItcGFkZGluZyAvIDIpO1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogKCRkYXRlcGlja2VyLXBhZGRpbmcgLyAyKTtcbiAgICAgICAgZm9udC1zaXplOiAkZGF0ZXBpY2tlci10aXRsZS1mb250LXNpemU7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxO1xuXG4gICAgICAgIC8vIFN0eWxlIHllYXIgc2VsZWN0XG4gICAgICAgICYgKyAmIHtcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAoJGRhdGVwaWNrZXItcGFkZGluZyAvIDIpO1xuICAgICAgICAgICAgdG9wOiAoKCRmb250LXNpemUtYmFzZSAtICRkYXRlcGlja2VyLXRpdGxlLWZvbnQtc2l6ZSkgLyAyKTtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1iYXNlO1xuICAgICAgICAgICAgY29sb3I6ICR0ZXh0LW11dGVkO1xuICAgICAgICB9XG4gICAgfVxuXG5cbiAgICAvL1xuICAgIC8vIFByZXYgYW5kIE5leHQgbmF2aWdhdGlvblxuICAgIC8vXG5cbiAgICAvLyBCYXNlXG4gICAgLnBpa2EtcHJldixcbiAgICAucGlrYS1uZXh0IHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgYm9yZGVyOiAwO1xuICAgICAgICBwYWRkaW5nOiAkZGF0ZXBpY2tlci1pdGVtLXBhZGRpbmc7XG4gICAgICAgIGZvbnQtc2l6ZTogMDtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkYm9yZGVyLXJhZGl1cyk7XG4gICAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oYWxsIGVhc2UtaW4tb3V0ICRjb21wb25lbnQtdHJhbnNpdGlvbi10aW1lcik7XG5cbiAgICAgICAgLy8gSWNvbnMgYmFzZVxuICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgIGZvbnQtZmFtaWx5OiAkaWNvbi1mb250LWZhbWlseTtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgZm9udC1zaXplOiAkaWNvbi1mb250LXNpemU7XG4gICAgICAgICAgICB3aWR0aDogJGljb24tZm9udC1zaXplO1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgICAgICAgICBAaW5jbHVkZSBsbC1mb250LXNtb290aGluZygpO1xuICAgICAgICB9XG5cbiAgICAgICAgLy8gSGlnaGxpZ2h0IG9uIGhvdmVyXG4gICAgICAgIEBpbmNsdWRlIGhvdmVyIHtcbiAgICAgICAgICAgIGNvbG9yOiAkZGF0ZXBpY2tlci1pdGVtLWhvdmVyLWNvbG9yO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGRhdGVwaWNrZXItaXRlbS1ob3Zlci1iZztcbiAgICAgICAgfVxuXG4gICAgICAgIC8vIERpc2FibGVkXG4gICAgICAgICYuaXMtZGlzYWJsZWQge1xuICAgICAgICAgICAgY3Vyc29yOiBkZWZhdWx0O1xuICAgICAgICAgICAgb3BhY2l0eTogLjI7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBQcmV2aW91cyBidXR0b25cbiAgICAucGlrYS1wcmV2IHtcbiAgICAgICAgZmxvYXQ6IGxlZnQ7XG5cbiAgICAgICAgLy8gTGVmdCBhcnJvd1xuICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgIGNvbnRlbnQ6ICdcXGU5YzgnO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLy8gTmV4dCBidXR0b25cbiAgICAucGlrYS1uZXh0IHtcbiAgICAgICAgZmxvYXQ6IHJpZ2h0O1xuXG4gICAgICAgIC8vIFJpZ2h0IGFycm93XG4gICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgY29udGVudDogJ1xcZTljYic7XG4gICAgICAgIH1cbiAgICB9XG5cblxuICAgIC8vXG4gICAgLy8gVGFibGVcbiAgICAvL1xuXG4gICAgLy8gQmFzZVxuICAgIC5waWthLXRhYmxlIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGJvcmRlci1jb2xsYXBzZTogY29sbGFwc2U7XG4gICAgICAgIGJvcmRlci1zcGFjaW5nOiAwO1xuICAgICAgICBib3JkZXI6IDA7XG4gICAgICAgIHRhYmxlLWxheW91dDogZml4ZWQ7XG5cbiAgICAgICAgLy8gU2V0IHJlbGF0aXZlIHBvc2l0aW9uIHRvIHVzZSBhbmdsZSBhcnJvd1xuICAgICAgICB0aCxcbiAgICAgICAgdGQge1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICB9XG5cbiAgICAgICAgLy8gRGF5IG5hbWVzXG4gICAgICAgIHRoIHtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtbm9ybWFsO1xuICAgICAgICAgICAgcGFkZGluZy10b3A6ICRkYXRlcGlja2VyLXBhZGRpbmc7XG4gICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogJGRhdGVwaWNrZXItaXRlbS1wYWRkaW5nO1xuICAgICAgICAgICAgZm9udC1zaXplOiAkZm9udC1zaXplLXNtO1xuICAgICAgICAgICAgY29sb3I6ICRkYXRlcGlja2VyLWl0ZW0td2Vla2RheS1jb2xvcjtcbiAgICAgICAgfVxuXG4gICAgICAgIC8vIERheSBuYW1lcyBsYWJlbFxuICAgICAgICBhYmJyIHtcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDA7XG4gICAgICAgICAgICBjdXJzb3I6IGRlZmF1bHQ7XG4gICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBCdXR0b25zIGluc2lkZSB0YWJsZVxuICAgIC5waWthLWJ1dHRvbiB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBib3JkZXI6IDA7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIHBhZGRpbmc6ICRkYXRlcGlja2VyLWl0ZW0tcGFkZGluZztcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRib3JkZXItcmFkaXVzKTtcbiAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbihhbGwgZWFzZS1pbi1vdXQgJGNvbXBvbmVudC10cmFuc2l0aW9uLXRpbWVyKTtcblxuICAgICAgICAvLyBIb3ZlciBzdGF0ZVxuICAgICAgICBAaW5jbHVkZSBob3ZlciB7XG4gICAgICAgICAgICBjb2xvcjogJGRhdGVwaWNrZXItaXRlbS1ob3Zlci1jb2xvcjtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRkYXRlcGlja2VyLWl0ZW0taG92ZXItYmc7XG4gICAgICAgIH1cblxuICAgICAgICAvLyBTZWxlY3RlZCBhbmQgdG9kYXkgaGlnaGxpZ2h0c1xuICAgICAgICAuaXMtdG9kYXkgJiB7XG4gICAgICAgICAgICBjb2xvcjogJGRhdGVwaWNrZXItaXRlbS10b2RheS1jb2xvcjtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRkYXRlcGlja2VyLWl0ZW0tdG9kYXktYmc7XG4gICAgICAgIH1cbiAgICAgICAgLmlzLXNlbGVjdGVkICYge1xuICAgICAgICAgICAgY29sb3I6ICRkYXRlcGlja2VyLWl0ZW0tYWN0aXZlLWNvbG9yO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGRhdGVwaWNrZXItaXRlbS1hY3RpdmUtYmc7XG4gICAgICAgIH1cbiAgICAgICAgLmlzLXRvZGF5ICY6YmVmb3JlLFxuICAgICAgICAuaXMtc2VsZWN0ZWQgJjpiZWZvcmUsXG4gICAgICAgIC5pcy10b2RheS5pcy1zZWxlY3RlZCAmOmJlZm9yZSB7XG4gICAgICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgdG9wOiAoJGRhdGVwaWNrZXItaXRlbS1wYWRkaW5nIC8gMyk7XG4gICAgICAgICAgICByaWdodDogKCRkYXRlcGlja2VyLWl0ZW0tcGFkZGluZyAvIDMpO1xuICAgICAgICAgICAgYm9yZGVyLXRvcDogJGRhdGVwaWNrZXItaXRlbS1wYWRkaW5nIHNvbGlkICRkYXRlcGlja2VyLWl0ZW0tYWN0aXZlLWNvbG9yO1xuICAgICAgICAgICAgYm9yZGVyLWxlZnQ6ICRkYXRlcGlja2VyLWl0ZW0tcGFkZGluZyBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICAgICAgICAgIEBpbmNsdWRlIHNpemUoMCk7XG4gICAgICAgIH1cblxuICAgICAgICAvLyBSYW5nZVxuICAgICAgICAuaXMtc3RhcnRyYW5nZSAmLFxuICAgICAgICAuaXMtZW5kcmFuZ2UgJiB7XG4gICAgICAgICAgICBjb2xvcjogJGRhdGVwaWNrZXItaXRlbS1hY3RpdmUtY29sb3I7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZGF0ZXBpY2tlci1pdGVtLWFjdGl2ZS1iZztcbiAgICAgICAgfVxuICAgICAgICAuaXMtaW5yYW5nZSAmIHtcbiAgICAgICAgICAgIGNvbG9yOiAkZGF0ZXBpY2tlci1pdGVtLWhvdmVyLWNvbG9yO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGRhdGVwaWNrZXItaXRlbS1ob3Zlci1iZztcbiAgICAgICAgfVxuXG4gICAgICAgIC8vIERpc2FibGVkIGJ1dHRvblxuICAgICAgICAuaXMtZGlzYWJsZWQgJiB7XG4gICAgICAgICAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICAgICAgICAgIGN1cnNvcjogJGN1cnNvci1kaXNhYmxlZDtcbiAgICAgICAgICAgIG9wYWNpdHk6IDAuNTtcbiAgICAgICAgfVxuICAgIH1cblxuXG4gICAgLy9cbiAgICAvLyBPdGhlcnNcbiAgICAvL1xuXG4gICAgLy8gU2VsZWN0XG4gICAgLnBpa2Etc2VsZWN0IHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIH1cblxuICAgIC8vIFdlZWsgc2VsZWN0XG4gICAgLnBpa2Etd2VlayB7XG4gICAgICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1zbTtcbiAgICAgICAgY29sb3I6ICRkYXRlcGlja2VyLWl0ZW0td2Vla2RheS1jb2xvcjtcbiAgICB9XG5cbiAgICAvKnJ0bDplbmQ6aWdub3JlKi9cbn1cbiIsIi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICpcbiAqICAjIERhdGF0YWJsZXMgbGlicmFyeVxuICpcbiAqICBBZGQgYWR2YW5jZWQgaW50ZXJhY3Rpb24gY29udHJvbHMgdG8gYW55IEhUTUwgdGFibGVcbiAqXG4gKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5cbi8vIENoZWNrIGlmIGNvbXBvbmVudCBpcyBlbmFibGVkXG5AaWYgJGVuYWJsZS1kYXRhdGFibGUge1xuXG5cblx0Ly8gQmFzZVxuXHQvLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuXHQvLyBUYWJsZSBjb250YWluZXJcblx0LmRhdGFUYWJsZSB7XG5cdFx0bWFyZ2luOiAwO1xuXHRcdG1heC13aWR0aDogbm9uZTtcblxuXHRcdC8vIEhlYWRlclxuXHRcdHRoZWFkIHtcblx0XHRcdHRoLFxuXHRcdFx0dGQge1xuXHRcdFx0XHRvdXRsaW5lOiAwO1xuXHRcdFx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdFx0XHR9XG5cblx0XHRcdC8vIEFkZCBoYW5kIGN1cnNvciB0byBzb3J0YWJsZSBjZWxsc1xuXHRcdFx0LnNvcnRpbmdfYXNjLFxuXHRcdFx0LnNvcnRpbmdfZGVzYyxcblx0XHRcdC5zb3J0aW5nIHtcblx0XHRcdFx0Y3Vyc29yOiBwb2ludGVyO1xuXHRcdFx0fVxuXG5cdFx0XHQvLyBBZGQgcmlnaHQgc3BhY2UgdG8gYXZvaWQgdGV4dCBvdmVybGFwIG92ZXIgYXJyb3dcblx0XHRcdC5zb3J0aW5nLFxuXHRcdFx0LnNvcnRpbmdfYXNjLFxuXHRcdFx0LnNvcnRpbmdfZGVzYyxcblx0XHRcdC5zb3J0aW5nX2FzY19kaXNhYmxlZCxcblx0XHRcdC5zb3J0aW5nX2Rlc2NfZGlzYWJsZWQge1xuXHRcdFx0XHRwYWRkaW5nLXJpZ2h0OiAoJGR0LXNwYWNlci14ICogMik7XG5cdFx0XHR9XG5cblxuXHRcdFx0Ly8gQWRkIHNvcnRpbmcgaWNvbiBiYXNlXG5cdFx0XHQuc29ydGluZzpiZWZvcmUsXG5cdFx0XHQuc29ydGluZzphZnRlcixcblx0XHRcdC5zb3J0aW5nX2FzYzphZnRlcixcblx0XHRcdC5zb3J0aW5nX2Rlc2M6YWZ0ZXIsXG5cdFx0XHQuc29ydGluZ19hc2NfZGlzYWJsZWQ6YWZ0ZXIsXG5cdFx0XHQuc29ydGluZ19kZXNjX2Rpc2FibGVkOmFmdGVyIHtcblx0XHRcdFx0Y29udGVudDogJyc7XG5cdFx0XHRcdGZvbnQtZmFtaWx5OiAkaWNvbi1mb250LWZhbWlseTtcblx0XHRcdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdFx0XHR0b3A6IDUwJTtcblx0XHRcdFx0cmlnaHQ6ICRkdC1zcGFjZXIteDtcblx0XHRcdFx0Zm9udC1zaXplOiAkZm9udC1zaXplLXNtO1xuXHRcdFx0XHRtYXJnaW4tdG9wOiAtKCRmb250LXNpemUtc20gLyAyKTtcblx0XHRcdFx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXHRcdFx0XHRsaW5lLWhlaWdodDogMTtcblx0XHRcdFx0QGluY2x1ZGUgbGwtZm9udC1zbW9vdGhpbmcoKTtcblx0XHRcdH1cblxuXHRcdFx0Ly8gSWNvbnNcblx0XHRcdC5zb3J0aW5nIHtcblx0XHRcdFx0JjpiZWZvcmUge1xuXHRcdFx0XHRcdGNvbnRlbnQ6ICdcXGU5YzEnO1xuXHRcdFx0XHRcdG1hcmdpbi10b3A6IC0wLjEyNXJlbTtcblx0XHRcdFx0XHRvcGFjaXR5OiAwLjU7XG5cdFx0XHRcdH1cblx0XHRcdFx0JjphZnRlciB7XG5cdFx0XHRcdFx0Y29udGVudDogJ1xcZTljMic7XG5cdFx0XHRcdFx0bWFyZ2luLXRvcDogLSgkZm9udC1zaXplLXNtIC0gMC4xMjVyZW0pO1xuXHRcdFx0XHRcdG9wYWNpdHk6IDAuNTtcblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdFx0LnNvcnRpbmdfYXNjOmFmdGVyIHtcblx0XHRcdFx0Y29udGVudDogJ1xcZTljMic7XG5cdFx0XHRcdG9wYWNpdHk6IDE7XG5cdFx0XHR9XG5cdFx0XHQuc29ydGluZ19kZXNjOmFmdGVyIHtcblx0XHRcdFx0Y29udGVudDogJ1xcZTljMSc7XG5cdFx0XHRcdG9wYWNpdHk6IDE7XG5cdFx0XHR9XG5cdFx0XHQuc29ydGluZ19hc2NfZGlzYWJsZWQ6YWZ0ZXIge1xuXHRcdFx0XHRjb250ZW50OiAnXFxlOWMyJztcblx0XHRcdFx0b3BhY2l0eTogMC4yNTtcblx0XHRcdH1cblx0XHRcdC5zb3J0aW5nX2Rlc2NfZGlzYWJsZWQ6YWZ0ZXIge1xuXHRcdFx0XHRjb250ZW50OiAnXFxlOWMxJztcblx0XHRcdFx0b3BhY2l0eTogMC4yNTtcblx0XHRcdH1cblx0XHR9XG5cblx0XHQvLyBCb2R5XG5cdFx0dGJvZHkge1xuXG5cdFx0XHQvLyBSZW1vdmUgdG9wIGJvcmRlciBmcm9tIHRoZWFkIGJ5IGRlZmF1bHRcblx0XHQgICAgKyB0aGVhZCxcblx0XHQgICAgKyB0Zm9vdCArIHRoZWFkIHtcblx0XHQgICAgICAgID4gdHI6Zmlyc3QtY2hpbGQge1xuXHRcdCAgICAgICAgICAgID4gdGgsXG5cdFx0ICAgICAgICAgICAgPiB0ZCB7XG5cdFx0ICAgICAgICAgICAgICAgIGJvcmRlci10b3A6IDA7XG5cdFx0ICAgICAgICAgICAgfVxuXHRcdCAgICAgICAgfVxuXHRcdCAgICB9XG5cblx0XHQgICAgLy8gSGlnaGxpZ2h0IHJvd3MgYW5kIGNvbHVtbnNcblx0XHQgICAgdGgsXG5cdFx0ICAgIHRkIHtcblx0XHQgICAgXHRvdXRsaW5lOiAwO1xuXHRcdCAgICBcdFxuXHRcdCAgICBcdC8vIEFjdGl2ZSBjZWxsXG5cdFx0ICAgIFx0Ji5hY3RpdmUge1xuXHRcdCAgICBcdFx0YmFja2dyb3VuZC1jb2xvcjogJHRhYmxlLWhvdmVyLWJnO1xuXHRcdCAgICBcdH1cblx0XHQgICAgfVxuXHRcdH1cblxuXHRcdC8vIENlbnRlciB0ZXh0IGluIGVtcHR5IHRhYmxlXG5cdFx0LmRhdGFUYWJsZXNfZW1wdHkge1xuXHRcdFx0dGV4dC1hbGlnbjogY2VudGVyO1xuXHRcdH1cblxuXHRcdC8vIENvbGxhcHNlIGJvcmRlcnMgaW4gYm9yZGVyZWQgdGFibGVcblx0XHQmLnRhYmxlLWJvcmRlcmVkIHtcblx0XHRcdGJvcmRlci1jb2xsYXBzZTogY29sbGFwc2U7XG5cdFx0fVxuXHR9XG5cblx0Ly8gV3JhcHBlclxuXHQuZGF0YVRhYmxlc193cmFwcGVyIHtcblx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdFx0Y2xlYXI6IGJvdGg7XG5cdFx0QGluY2x1ZGUgY2xlYXJmaXgoKTtcblxuXHRcdC8vIFJlbW92ZSB0b3AgYm9yZGVyIGZyb20gYm9yZGVyZWQgdGFibGVcblx0XHQudGFibGUtYm9yZGVyZWQge1xuXHRcdFx0Ym9yZGVyLXRvcDogMDtcblx0XHR9XG5cblx0XHQvLyBBZGQgdG9wIGJvcmRlciBpZiBjYXJkIGJvZHkgY29tZXMgYWZ0ZXIgd3JhcHBlclxuXHRcdCsgLmNhcmQtYm9keSB7XG5cdFx0XHRib3JkZXItdG9wOiAkdGFibGUtYm9yZGVyLXdpZHRoIHNvbGlkICR0YWJsZS1ib3JkZXItY29sb3I7XG5cdFx0fVxuXHR9XG5cblx0Ly8gUHJvY2Vzc2luZyBpbmRpY2F0b3Jcblx0LmRhdGFUYWJsZXNfcHJvY2Vzc2luZyB7XG5cdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdHRvcDogNTAlO1xuXHRcdGxlZnQ6IDUwJTtcblx0XHR3aWR0aDogMTAwJTtcblx0XHRoZWlnaHQ6IDQwcHg7XG5cdFx0bWFyZ2luLWxlZnQ6IC01MCU7XG5cdFx0bWFyZ2luLXRvcDogLTI1cHg7XG5cdFx0cGFkZGluZy10b3A6IDIwcHg7XG5cdFx0dGV4dC1hbGlnbjogY2VudGVyO1xuXHRcdGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG5cdFx0YmFja2dyb3VuZDogLXdlYmtpdC1ncmFkaWVudChsaW5lYXIsIGxlZnQgdG9wLCByaWdodCB0b3AsIGNvbG9yLXN0b3AoMCUsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMCkpLCBjb2xvci1zdG9wKDI1JSwgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjkpKSwgY29sb3Itc3RvcCg3NSUsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC45KSksIGNvbG9yLXN0b3AoMTAwJSwgcmdiYSgyNTUsIDI1NSwgMjU1LCAwKSkpO1xuXHRcdGJhY2tncm91bmQ6IC13ZWJraXQtbGluZWFyLWdyYWRpZW50KGxlZnQsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMCkgMCUsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC45KSAyNSUsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC45KSA3NSUsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMCkgMTAwJSk7XG5cdFx0YmFja2dyb3VuZDogLW1vei1saW5lYXItZ3JhZGllbnQobGVmdCwgcmdiYSgyNTUsIDI1NSwgMjU1LCAwKSAwJSwgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjkpIDI1JSwgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjkpIDc1JSwgcmdiYSgyNTUsIDI1NSwgMjU1LCAwKSAxMDAlKTtcblx0XHRiYWNrZ3JvdW5kOiAtbXMtbGluZWFyLWdyYWRpZW50KGxlZnQsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMCkgMCUsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC45KSAyNSUsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC45KSA3NSUsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMCkgMTAwJSk7XG5cdFx0YmFja2dyb3VuZDogLW8tbGluZWFyLWdyYWRpZW50KGxlZnQsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMCkgMCUsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC45KSAyNSUsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC45KSA3NSUsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMCkgMTAwJSk7XG5cdFx0YmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCByZ2JhKDI1NSwgMjU1LCAyNTUsIDApIDAlLCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuOSkgMjUlLCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuOSkgNzUlLCByZ2JhKDI1NSwgMjU1LCAyNTUsIDApIDEwMCUpO1xuXHR9XG5cblxuXHQvLyBIZWFkZXIgYW5kIGZvb3RlclxuXHQvLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuXHQvLyBDb21tb25cblx0LmRhdGF0YWJsZS1oZWFkZXIsXG5cdC5kYXRhdGFibGUtZm9vdGVyIHtcblx0XHRwYWRkaW5nOiAkZHQtc3BhY2VyLXkgJGR0LXNwYWNlci14IDAgJGR0LXNwYWNlci14O1xuXHRcdEBpbmNsdWRlIGNsZWFyZml4KCk7XG5cblx0XHQvLyBSZW1vdmUgbGVmdCBtYXJnaW4gZnJvbSB0aGUgZmlyc3QgaXRlbVxuXHRcdD4gZGl2OmZpcnN0LWNoaWxkIHtcblx0XHRcdG1hcmdpbi1sZWZ0OiAwO1xuXHRcdH1cblxuXHRcdC8vIFJlbW92ZSBob3Jpem9udGFsIHNwYWNpbmcgaWYgaW5zaWRlIGNhcmQgYm9keVxuXHRcdC5jYXJkLWJvZHkgJiB7XG5cdFx0XHRwYWRkaW5nLWxlZnQ6IDA7XG5cdFx0XHRwYWRkaW5nLXJpZ2h0OiAwO1xuXHRcdH1cblxuXHRcdC8vIEhpZ2hsaWdodCBoZWFkZXIgb2YgZm9vdGVyIHdpdGggLiotYWNjZW50IGNsYXNzXG5cdFx0Ji1hY2NlbnQge1xuXHRcdFx0YmFja2dyb3VuZC1jb2xvcjogJHRhYmxlLWFjY2VudC1iZztcblx0XHR9XG5cdH1cblxuXHQvLyBIZWFkZXJcblx0LmRhdGF0YWJsZS1oZWFkZXIge1xuXHRcdGJvcmRlci1ib3R0b206ICR0YWJsZS1ib3JkZXItd2lkdGggc29saWQgJHRhYmxlLWJvcmRlci1jb2xvcjtcblx0fVxuXG5cdC8vIEZvb3RlclxuXHQuZGF0YXRhYmxlLWZvb3RlciB7XG5cdFx0Ym9yZGVyLXRvcDogJHRhYmxlLWJvcmRlci13aWR0aCBzb2xpZCAkdGFibGUtaGVhZC1ib3JkZXItY29sb3I7XG5cdH1cblxuXG5cdC8vIENvbnRyb2xzXG5cdC8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG5cdC8vIExlbmd0aCBtZW51XG5cdC5kYXRhVGFibGVzX2xlbmd0aCB7XG5cdFx0ZmxvYXQ6IHJpZ2h0O1xuXHRcdGRpc3BsYXk6IGlubGluZS1ibG9jaztcblx0XHRtYXJnaW46IDAgMCAkZHQtc3BhY2VyLXkgJGR0LXNwYWNlci14O1xuXG5cdFx0Ly8gVGV4dCBsYWJlbFxuXHRcdD4gbGFiZWwge1xuXHRcdFx0bWFyZ2luLWJvdHRvbTogMDtcblxuXHRcdFx0Ly8gVGV4dCwgZXhjbHVkaW5nIHNlbGVjdDIgY29udGFpbmVyXG5cdFx0XHQ+IHNwYW46Zmlyc3QtY2hpbGQge1xuXHRcdFx0XHRmbG9hdDogbGVmdDtcblx0XHRcdFx0bWFyZ2luOiAkZHQtY29udHJvbHMtbGFiZWwtc3BhY2VyLXkgJGR0LWNvbnRyb2xzLWxhYmVsLXNwYWNlci14O1xuXHRcdFx0XHRtYXJnaW4tbGVmdDogMDtcblx0XHRcdH1cblx0XHR9XG5cblx0XHQvLyBBcHBseSBkZWZhdWx0IC5mb3JtLWNvbnRyb2wgc3R5bGVzIHRvIHNlbGVjdFxuXHRcdHNlbGVjdCB7XG5cdFx0ICAgIGhlaWdodDogJGlucHV0LWhlaWdodDtcblx0XHQgICAgcGFkZGluZzogJGlucHV0LXBhZGRpbmcteSAkaW5wdXQtcGFkZGluZy14O1xuXHRcdCAgICBmb250LXNpemU6ICRmb250LXNpemUtYmFzZTtcblx0XHQgICAgbGluZS1oZWlnaHQ6ICRsaW5lLWhlaWdodC1iYXNlO1xuXHRcdCAgICBjb2xvcjogJGlucHV0LWNvbG9yO1xuXHRcdCAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaW5wdXQtYmc7XG5cdFx0ICAgIGJvcmRlcjogJGlucHV0LWJvcmRlci13aWR0aCBzb2xpZCAkaW5wdXQtYm9yZGVyLWNvbG9yO1xuXHRcdCAgICBvdXRsaW5lOiAwO1xuXHRcdH1cblxuXHRcdC8vIExlZnQgZGlzcGxheSBvcHRpb25cblx0XHQubGVuZ3RoLWxlZnQgJiB7XG5cdFx0XHRmbG9hdDogbGVmdDtcblx0XHR9XG5cblx0XHQvLyBBZGp1c3QgU2VsZWN0MiBtZW51XG5cdFx0LnNlbGVjdDItY29udGFpbmVyIHtcblx0XHRcdHdpZHRoOiBhdXRvO1xuXHRcdH1cblx0XHQuc2VsZWN0Mi1jaG9pY2Uge1xuXHRcdFx0bWluLXdpZHRoOiAzLjc1cmVtO1xuXHRcdH1cblx0fVxuXG5cdC8vIEZpbHRlclxuXHQuZGF0YVRhYmxlc19maWx0ZXIge1xuXHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0XHRkaXNwbGF5OiBibG9jaztcblx0XHRmbG9hdDogbGVmdDtcblx0XHRtYXJnaW46IDAgMCAkZHQtc3BhY2VyLXkgJGR0LXNwYWNlci14O1xuXG5cdFx0Ly8gVGV4dCBsYWJlbFxuXHRcdD4gbGFiZWwge1xuXHRcdFx0bWFyZ2luLWJvdHRvbTogMDtcblx0XHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuXHRcdFx0Ly8gQWRkIHNlYXJjaCBpY29uXG5cdFx0XHQmOmFmdGVyIHtcblx0XHRcdFx0Y29udGVudDogXCJcXGU5OGVcIjtcblx0XHRcdFx0Zm9udC1mYW1pbHk6ICRpY29uLWZvbnQtZmFtaWx5O1xuXHRcdFx0XHRmb250LXNpemU6ICRmb250LXNpemUtc207XG5cdFx0XHRcdGRpc3BsYXk6IGlubGluZS1ibG9jaztcblx0XHRcdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdFx0XHR0b3A6IDUwJTtcblx0XHRcdFx0cmlnaHQ6ICRpbnB1dC1wYWRkaW5nLXg7XG5cdFx0XHRcdG1hcmdpbi10b3A6IC0oJGZvbnQtc2l6ZS1zbSAvIDIpO1xuXHRcdFx0XHRsaW5lLWhlaWdodDogMTtcblx0XHRcdFx0b3BhY2l0eTogMC41O1xuXHRcdFx0XHRAaW5jbHVkZSBsbC1mb250LXNtb290aGluZygpO1xuXHRcdFx0fVxuXG5cdFx0XHQvLyBUZXh0IHNwYWNpbmdcblx0XHRcdD4gc3BhbiB7XG5cdFx0XHRcdGZsb2F0OiBsZWZ0O1xuXHRcdFx0XHRtYXJnaW46ICRkdC1jb250cm9scy1sYWJlbC1zcGFjZXIteSAkZHQtY29udHJvbHMtbGFiZWwtc3BhY2VyLXg7XG5cdFx0XHRcdG1hcmdpbi1sZWZ0OiAwO1xuXHRcdFx0fVxuXHRcdH1cblxuXHRcdC8vIEZpbHRlciBpbnB1dFxuXHRcdGlucHV0IHtcblx0XHRcdG91dGxpbmU6IDA7XG5cdFx0XHR3aWR0aDogJGR0LWZpbHRlci13aWR0aDtcblx0XHRcdHBhZGRpbmc6ICRpbnB1dC1wYWRkaW5nLXkgJGlucHV0LXBhZGRpbmcteDtcblx0XHRcdHBhZGRpbmctcmlnaHQ6ICgkaW5wdXQtcGFkZGluZy14ICsgKCRmb250LXNpemUtc20gKiAxLjUpKTtcblx0XHRcdGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1iYXNlO1xuXHRcdFx0bGluZS1oZWlnaHQ6ICRsaW5lLWhlaWdodC1iYXNlO1xuXHRcdFx0Y29sb3I6ICRpbnB1dC1jb2xvcjtcblx0XHRcdGJhY2tncm91bmQtY29sb3I6ICRpbnB1dC1iZztcblx0XHRcdGJvcmRlcjogJGlucHV0LWJvcmRlci13aWR0aCBzb2xpZCAkaW5wdXQtYm9yZGVyLWNvbG9yO1xuXHRcdFx0QGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkaW5wdXQtYm9yZGVyLXJhZGl1cyk7XG5cblx0XHRcdC8vIFBsYWNlaG9sZGVyIGNvbG9yXG5cdFx0ICAgICY6OnBsYWNlaG9sZGVyIHtcblx0XHQgICAgICAgIGNvbG9yOiAkaW5wdXQtcGxhY2Vob2xkZXItY29sb3I7XG5cdFx0ICAgICAgICBvcGFjaXR5OiAxO1xuXHRcdCAgICB9XG5cdFx0fVxuXG5cdFx0Ly8gUmlnaHQgZGlzcGxheSBvcHRpb25cblx0XHQuZmlsdGVyLXJpZ2h0ICYge1xuXHRcdFx0ZmxvYXQ6IHJpZ2h0O1xuXHRcdH1cblx0fVxuXG5cdC8vIEluZm9cblx0LmRhdGFUYWJsZXNfaW5mbyB7XG5cdFx0ZmxvYXQ6IGxlZnQ7XG5cdFx0cGFkZGluZzogJGlucHV0LXBhZGRpbmcteSAwO1xuXHRcdG1hcmdpbi1ib3R0b206ICRkdC1zcGFjZXIteTtcblxuXHRcdC8vIFJpZ2h0IGFsaWdubWVudFxuXHRcdC5pbmZvLXJpZ2h0ICYge1xuXHRcdFx0ZmxvYXQ6IHJpZ2h0O1xuXHRcdH1cblx0fVxuXG5cdC8vIFBhZ2luYXRpb24gY29tbW9uIHN0eWxlc1xuXHQuZGF0YVRhYmxlc19wYWdpbmF0ZSB7XG5cdFx0ZmxvYXQ6IHJpZ2h0O1xuXHRcdHRleHQtYWxpZ246IHJpZ2h0O1xuXHRcdG1hcmdpbjogMCAwICRkdC1zcGFjZXIteSAkZHQtc3BhY2VyLXg7XG5cblx0XHQvLyBCdXR0b25cblx0XHQucGFnaW5hdGVfYnV0dG9uIHtcblx0XHRcdGRpc3BsYXk6IGlubGluZS1ibG9jaztcblx0XHRcdHBhZGRpbmc6ICRidG4tcGFkZGluZy15O1xuXHRcdCAgICBtaW4td2lkdGg6ICgkZm9udC1zaXplLWJhc2UgKiAkbGluZS1oZWlnaHQtYmFzZSkgKyByZW0tY2FsYygkcGFnaW5hdGlvbi1ib3JkZXItd2lkdGggKiAyKSArICgkcGFnaW5hdGlvbi1wYWRkaW5nLXkgKiAyKTtcblx0XHRcdG1hcmdpbi1sZWZ0OiAwLjEyNXJlbTtcblx0XHRcdHRleHQtYWxpZ246IGNlbnRlcjtcblx0XHRcdHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblx0XHRcdGN1cnNvcjogcG9pbnRlcjtcblx0XHRcdGNvbG9yOiAkcGFnaW5hdGlvbi1jb2xvcjtcblx0XHRcdG91dGxpbmU6IDA7XG5cdFx0XHRib3JkZXI6ICRidG4tYm9yZGVyLXdpZHRoIHNvbGlkIHRyYW5zcGFyZW50O1xuXHRcdFx0QGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkYm9yZGVyLXJhZGl1cyk7XG5cdFx0XHRAaW5jbHVkZSB0cmFuc2l0aW9uKGFsbCBlYXNlLWluLW91dCAkY29tcG9uZW50LXRyYW5zaXRpb24tdGltZXIpO1xuXG5cdFx0XHQvLyBGaXJzdCBpdGVtXG5cdFx0XHQmOmZpcnN0LWNoaWxkIHtcblx0XHRcdFx0bWFyZ2luLWxlZnQ6IDA7XG5cdFx0XHR9XG5cblx0XHRcdC8vIEhvdmVyIHN0YXRlXG5cdFx0XHRAaW5jbHVkZSBob3Zlci1mb2N1cyB7XG5cdFx0XHRcdGJhY2tncm91bmQtY29sb3I6ICRwYWdpbmF0aW9uLWhvdmVyLWJnO1xuXHRcdFx0fVxuXG5cdFx0XHQvLyBDdXJyZW50IGFjdGl2ZSBzdGF0ZVxuXHRcdFx0Ji5jdXJyZW50IHtcblx0XHRcdFx0QGluY2x1ZGUgcGxhaW4taG92ZXItZm9jdXMge1xuXHRcdFx0XHRcdGNvbG9yOiAkZHQtcGFnaW5hdGlvbi1hY3RpdmUtY29sb3I7XG5cdFx0XHRcdFx0YmFja2dyb3VuZC1jb2xvcjogJGR0LXBhZ2luYXRpb24tYWN0aXZlLWJnO1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cblx0XHRcdC8vIERpc2FibGVkIHN0YXRlXG5cdFx0XHQmLmRpc2FibGVkIHtcblx0XHRcdFx0QGluY2x1ZGUgcGxhaW4taG92ZXItZm9jdXMge1xuXHRcdFx0XHRcdGN1cnNvcjogJGN1cnNvci1kaXNhYmxlZDtcblx0XHRcdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkcGFnaW5hdGlvbi1kaXNhYmxlZC1iZztcblx0XHRcdFx0XHRjb2xvcjogJHBhZ2luYXRpb24tZGlzYWJsZWQtY29sb3I7XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHR9XG5cblx0XHQvLyBTaW1wbGUgcGFnaW5hdGVcblx0XHQmLnBhZ2luZ19zaW1wbGUgLnBhZ2luYXRlX2J1dHRvbiB7XG5cdFx0XHRwYWRkaW5nLWxlZnQ6ICRidG4tcGFkZGluZy14O1xuXHRcdFx0cGFkZGluZy1yaWdodDogJGJ0bi1wYWRkaW5nLXg7XG5cblx0XHRcdC8vIEhvdmVyIHN0YXRlXG5cdFx0XHQmOm5vdCguZGlzYWJsZWQpIHtcblx0XHRcdFx0QGluY2x1ZGUgaG92ZXItZm9jdXMge1xuXHRcdFx0XHRcdGNvbG9yOiAkZHQtcGFnaW5hdGlvbi1hY3RpdmUtY29sb3I7XG5cdFx0XHRcdFx0YmFja2dyb3VuZC1jb2xvcjogJGR0LXBhZ2luYXRpb24tYWN0aXZlLWJnO1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0fVxuXG5cdFx0Ly8gTGVmdCBkaXNwbGF5IG9wdGlvblxuXHRcdC5wYWdpbmF0ZS1sZWZ0ICYge1xuXHRcdFx0ZmxvYXQ6IGxlZnQ7XG5cdFx0fVxuXHR9XG5cblx0Ly8gU2ltcGxlIHBhZ2luYXRpb24gc3R5bGVcblx0LnBhZ2luZ19zaW1wbGUge1xuXHRcdC5wYWdpbmF0ZV9idXR0b24ge1xuXHRcdFx0QGluY2x1ZGUgaG92ZXItZm9jdXMge1xuXHRcdFx0XHRjb2xvcjogJHBhZ2luYXRpb24tYWN0aXZlLWNvbG9yO1xuXHRcdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkcGFnaW5hdGlvbi1hY3RpdmUtYmc7XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG5cblxuXHQvLyBTY3JvbGxhYmxlIHRhYmxlXG5cdC8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG5cdC5kYXRhVGFibGVzX3Njcm9sbCB7XG5cdFx0Y2xlYXI6IGJvdGg7XG5cblx0XHQvLyBTY3JvbGxpbmcgaGVhZGVyXG5cdFx0LmRhdGFUYWJsZXNfc2Nyb2xsSGVhZCB7XG5cdFx0XHR0YWJsZSB7XG5cdFx0XHRcdGJvcmRlci1ib3R0b206IDA7XG5cdFx0XHR9XG5cblx0XHRcdHRoLFxuXHRcdFx0dGQge1xuXHRcdFx0XHR3aGl0ZS1zcGFjZTogbm93cmFwO1xuXHRcdFx0fVxuXHRcdH1cblxuXHRcdC8vIFNjcm9sbGluZyBib2R5XG5cdFx0LmRhdGFUYWJsZXNfc2Nyb2xsQm9keSB7XG5cdFx0XHQtd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzogdG91Y2g7XG5cblx0XHRcdHRhYmxlIHtcblx0XHRcdFx0Ym9yZGVyLWJvdHRvbTogMDtcblxuXHRcdFx0XHR0aGVhZCB0aFtjbGFzcyo9c29ydGluZ10ge1xuXHRcdFx0XHRcdCY6YmVmb3JlLFxuXHRcdFx0XHRcdCY6YWZ0ZXIge1xuXHRcdFx0XHRcdFx0Y29udGVudDogbm9uZTtcblx0XHRcdFx0XHR9XG5cdFx0XHRcdH1cblxuXHRcdFx0XHR0Ym9keSB0cjpmaXJzdC1jaGlsZCA+IHRkIHtcblx0XHRcdFx0XHRib3JkZXItdG9wOiAwO1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cblx0XHRcdHRoLFxuXHRcdFx0dGQge1xuXHRcdFx0XHR3aGl0ZS1zcGFjZTogbm93cmFwO1xuXG5cdFx0XHRcdD4gLmRhdGFUYWJsZXNfc2l6aW5nIHtcblx0XHRcdFx0XHRoZWlnaHQ6IDA7XG5cdFx0XHRcdFx0b3ZlcmZsb3c6IGhpZGRlbjtcblx0XHRcdFx0XHRtYXJnaW46IDA7XG5cdFx0XHRcdFx0cGFkZGluZzogMDtcblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdH1cblx0fVxuXG5cblx0Ly8gVGFibGUgaW5zaWRlIGNhcmRzXG5cdC8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG5cdC8vIEluc2lkZSBjYXJkIGJvZHlcblx0LmNhcmQtYm9keSB7XG5cdFx0KyAuZGF0YVRhYmxlc193cmFwcGVyLFxuXHRcdCsgKiA+IC5kYXRhVGFibGVzX3dyYXBwZXIge1xuXHRcdFx0Ym9yZGVyLXRvcDogJHRhYmxlLWJvcmRlci13aWR0aCBzb2xpZCAkdGFibGUtYm9yZGVyLWNvbG9yO1xuXHRcdH1cblxuXHRcdD4gLmRhdGFUYWJsZXNfd3JhcHBlciB7XG5cdFx0XHQuZGF0YXRhYmxlLWZvb3RlciB7XG5cdFx0XHRcdGJvcmRlci10b3A6IDA7XG5cdFx0XHRcdFxuXHRcdFx0XHQuZGF0YVRhYmxlc19sZW5ndGgsXG5cdFx0XHRcdC5kYXRhVGFibGVzX2ZpbHRlcixcblx0XHRcdFx0LmRhdGFUYWJsZXNfaW5mbyxcblx0XHRcdFx0LmRhdGFUYWJsZXNfcGFnaW5hdGUge1xuXHRcdFx0XHRcdG1hcmdpbi1ib3R0b206IDA7XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHR9XG5cdH1cblxuXHQvLyBJZiBjYXJkIGhlYWRlciBkb2Vzbid0IGhhdmUgYm90dG9tIGJvcmRlclxuXHQuY2FyZC1oZWFkZXI6bm90KFtjbGFzcyo9YmctXSkgKyAuZGF0YVRhYmxlc193cmFwcGVyIHtcblx0XHQ+IC5kYXRhdGFibGUtaGVhZGVyIHtcblx0XHRcdHBhZGRpbmctdG9wOiAwO1xuXHRcdH1cblx0fVxuXG5cdC8vIEJvcmRlcmVkIHRhYmxlIGluc2lkZSBjYXJkXG5cdC5jYXJkID4gLmRhdGFUYWJsZXNfd3JhcHBlciAudGFibGUtYm9yZGVyZWQge1xuXHRcdGJvcmRlcjogMDtcblxuXHRcdD4gdGhlYWQsXG5cdFx0PiB0Ym9keSxcblx0XHQ+IHRmb290IHtcblx0XHRcdD4gdHIge1xuXHRcdFx0XHQ+IHRkLFxuXHRcdFx0XHQ+IHRoIHtcblx0XHRcdFx0XHQmOmZpcnN0LWNoaWxkIHtcblx0XHRcdFx0XHRcdGJvcmRlci1sZWZ0OiAwO1xuXHRcdFx0XHRcdH1cblxuXHRcdFx0XHRcdCY6bGFzdC1jaGlsZCB7XG5cdFx0XHRcdFx0XHRib3JkZXItcmlnaHQ6IDA7XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0fVxuXG5cdFx0PiB0Ym9keSA+IHRyOmxhc3QtY2hpbGQge1xuXHRcdFx0PiB0aCxcblx0XHRcdD4gdGQge1xuXHRcdFx0XHRib3JkZXItYm90dG9tOiAwO1xuXHRcdFx0fVxuXHRcdH1cblx0fVxuXG5cblx0Ly8gUmVzcG9uc2l2ZSBzdHlsZSBhZGRpdGlvbnNcblx0Ly8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cblx0Ly8gU2ltcGxlIHJlc3BvbnNpdmUgc2V0dXBcblx0LmRhdGF0YWJsZS1zY3JvbGwtbGcsXG5cdC5kYXRhdGFibGUtc2Nyb2xsLFxuXHQuZGF0YXRhYmxlLXNjcm9sbC1zbSB7XG5cdFx0bWluLWhlaWdodDogLjAxJTtcblx0fVxuXG5cdC8vIFNjcm9sbGVyXG5cdC5kYXRhdGFibGUtc2Nyb2xsLXdyYXAge1xuXHRcdHdpZHRoOiAxMDAlO1xuXHRcdG1pbi1oZWlnaHQ6IC4wMSU7XG5cdFx0b3ZlcmZsb3cteDogYXV0bztcblx0fVxuXG5cdEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihzbSkge1xuXHRcdC5kYXRhdGFibGUtc2Nyb2xsLXNtIHtcblx0XHRcdHdpZHRoOiAxMDAlO1xuXHRcdFx0b3ZlcmZsb3cteDogc2Nyb2xsO1xuXG5cdFx0XHR0aCxcblx0XHRcdHRkIHtcblx0XHRcdFx0d2hpdGUtc3BhY2U6IG5vd3JhcDtcblx0XHRcdH1cblx0XHR9XG5cdH1cblx0QGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKG1kKSB7XG5cdFx0LmRhdGF0YWJsZS1zY3JvbGwge1xuXHRcdFx0d2lkdGg6IDEwMCU7XG5cdFx0XHRvdmVyZmxvdy14OiBzY3JvbGw7XG5cblx0XHRcdHRoLFxuXHRcdFx0dGQge1xuXHRcdFx0XHR3aGl0ZS1zcGFjZTogbm93cmFwO1xuXHRcdFx0fVxuXHRcdH1cblx0fVxuXHRAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24obGcpIHtcblx0XHQuZGF0YXRhYmxlLXNjcm9sbC1sZyB7XG5cdFx0XHR3aWR0aDogMTAwJTtcblx0XHRcdG92ZXJmbG93LXg6IHNjcm9sbDtcblxuXHRcdFx0dGgsXG5cdFx0XHR0ZCB7XG5cdFx0XHRcdHdoaXRlLXNwYWNlOiBub3dyYXA7XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG5cblx0Ly8gQ29tbW9uIG1lZGlhIHF1ZXJpZXNcblx0QGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKHNtKSB7XG5cdFx0LmRhdGFUYWJsZXNfaW5mbyxcblx0XHQuZGF0YVRhYmxlc19wYWdpbmF0ZSxcblx0XHQuZGF0YVRhYmxlc19sZW5ndGgsXG5cdFx0LmRhdGFUYWJsZXNfZmlsdGVyLFxuXHRcdC5EVFRUX2NvbnRhaW5lcixcblx0XHQuQ29sVmlzIHtcblx0XHRcdGZsb2F0OiBub25lIWltcG9ydGFudDtcblx0XHRcdHRleHQtYWxpZ246IGNlbnRlcjtcblx0XHRcdG1hcmdpbi1sZWZ0OiAwO1xuXHRcdH1cblx0XHQuZGF0YVRhYmxlc19pbmZvLFxuXHRcdC5kYXRhVGFibGVzX3BhZ2luYXRlIHtcblx0XHRcdG1hcmdpbi10b3A6IDA7XG5cdFx0fVxuXG5cdFx0LmRhdGF0YWJsZS1oZWFkZXIge1xuXHRcdFx0dGV4dC1hbGlnbjogY2VudGVyO1xuXHRcdH1cblx0fVxufVxuIiwiLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gKlxuICogICMgQ29sdW1ucyByZW9yZGVyXG4gKlxuICogIEVhc2lseSBtb2RpZnkgdGhlIGNvbHVtbiBvcmRlciBvZiBhIHRhYmxlIHRocm91Z2ggZHJvcC1hbmQtZHJhZyBvZiBjb2x1bW4gaGVhZGVyc1xuICpcbiAqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cblxuLy8gQ2hlY2sgaWYgY29tcG9uZW50IGlzIGVuYWJsZWRcbkBpZiAkZW5hYmxlLWRhdGF0YWJsZS1jb2xyZW9yZGVyIHtcblxuICAgIC8vIEhpZ2hsaWdodCBjbG9uZWQgaGVhZGVyXG4gICAgLkRUQ1JfY2xvbmVkVGFibGUge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKCR3aGl0ZSwgMC44KTtcbiAgICAgICAgei1pbmRleDogMjAyO1xuICAgICAgICBjdXJzb3I6IG1vdmU7XG5cbiAgICAgICAgLy8gTXV0ZSBiYWNrZ3JvdW5kIGFuZCBhZGQgYm9yZGVyXG4gICAgICAgIHRoLFxuICAgICAgICB0ZCB7XG4gICAgICAgICAgICBib3JkZXI6ICR0YWJsZS1ib3JkZXItd2lkdGggc29saWQgJHRhYmxlLWJvcmRlci1jb2xvciFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBBZGQgY29sb3JlZCBwb2ludGVyXG4gICAgLkRUQ1JfcG9pbnRlciB7XG4gICAgICAgIHdpZHRoOiAkdGFibGUtYm9yZGVyLXdpZHRoO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0aGVtZS1jb2xvcihcInByaW1hcnlcIik7XG4gICAgICAgIHotaW5kZXg6IDIwMTtcbiAgICB9XG59XG4iLCIvKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAqXG4gKiAgIyBSb3cgUmVvcmRlciBleHRlbnNpb25cbiAqXG4gKiAgUm93UmVvcmRlciBhZGRzIHRoZSBhYmlsaXR5IGZvciByb3dzIGluIGEgRGF0YVRhYmxlIHRvIGJlIHJlb3JkZXJlZCB0aHJvdWdoXG4gKiAgdXNlciBpbnRlcmFjdGlvbiB3aXRoIHRoZSB0YWJsZS5cbiAqXG4gKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5cbi8vIENoZWNrIGlmIGNvbXBvbmVudCBpcyBlbmFibGVkXG5AaWYgJGVuYWJsZS1kYXRhdGFibGUtcm93LXJlb3JkZXIge1xuXG4gICAgLy8gVGhlIG1vdmFibGUgcm93XG4gICAgLmR0LXJvd1Jlb3JkZXItZmxvYXQge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGUhaW1wb3J0YW50O1xuICAgICAgICB0YWJsZS1sYXlvdXQ6IHN0YXRpYztcbiAgICAgICAgb3V0bGluZTogJHRhYmxlLWJvcmRlci13aWR0aCBkYXNoZWQgJGNvbG9yLWdyZXktNTAwO1xuICAgICAgICBvdXRsaW5lLW9mZnNldDogLSgkdGFibGUtYm9yZGVyLXdpZHRoKTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNhcmQtYmc7XG4gICAgICAgIHotaW5kZXg6ICR6aW5kZXgtZml4ZWQ7XG4gICAgICAgIGN1cnNvcjogbW92ZTtcbiAgICAgICAgb3BhY2l0eTogMC45O1xuICAgIH1cblxuICAgIC8vIFRoZSB0YXJnZXQgcm93XG4gICAgLmR0LXJvd1Jlb3JkZXItbW92aW5nIHtcbiAgICAgICAgb3V0bGluZTogJHRhYmxlLWJvcmRlci13aWR0aCBzb2xpZCAkY29sb3ItZ3JleS01MDA7XG4gICAgICAgIG91dGxpbmUtb2Zmc2V0OiAtKCR0YWJsZS1ib3JkZXItd2lkdGgpO1xuICAgIH1cblxuICAgIC8vIEhpZGUgb3ZlcmZsb3cgZnJvbSA8Ym9keT4gdGFnIHdoZW4gbW92aW5nXG4gICAgLmR0LXJvd1Jlb3JkZXItbm9PdmVyZmxvdyB7XG4gICAgICAgIG92ZXJmbG93LXg6IGhpZGRlbjtcbiAgICB9XG5cbiAgICAvLyBSZW9yZGVyIGNlbGxcbiAgICAuZGF0YVRhYmxlIHRkLnJlb3JkZXIge1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIGN1cnNvcjogbW92ZTtcbiAgICB9XG59XG4iLCIvKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAqXG4gKiAgIyBGaXhlZCBjb2x1bW5zXG4gKlxuICogIEV4dGVuc2lvbiB0aGF0IFwiZnJlZXplc1wiIGluIHBsYWNlIHRoZSBsZWZ0IG1vc3QgY29sdW1ucyBpbiBhIHNjcm9sbGluZyBEYXRhVGFibGVcbiAqXG4gKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5cbi8vIENoZWNrIGlmIGNvbXBvbmVudCBpcyBlbmFibGVkXG5AaWYgJGVuYWJsZS1kYXRhdGFibGUtZml4ZWQtY29sdW1ucyB7XG5cbiAgICAvLyBQcmV2ZW50IHRleHQgZnJvbSB3cmFwcGluZ1xuICAgIC5EVEZDX1Njcm9sbFdyYXBwZXIge1xuICAgICAgICB0aGVhZCB0aCB7XG4gICAgICAgICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLy8gQmxvY2sgb3V0IHdoYXQgaXMgYmVoaW5kIHRoZSBmaXhlZCBjb2x1bW4ncyBoZWFkZXIgYW5kIGZvb3RlclxuICAgIC5EVEZDX0Nsb25lZCB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjYXJkLWJnO1xuICAgICAgICBib3JkZXItYm90dG9tOiAwO1xuICAgIH1cblxuICAgIC8vIEluIGxlZnQgY29sdW1uXG4gICAgLkRURkNfTGVmdFdyYXBwZXIge1xuICAgICAgICAuRFRGQ19MZWZ0SGVhZFdyYXBwZXIsXG4gICAgICAgIC5EVEZDX0xlZnRCb2R5V3JhcHBlcixcbiAgICAgICAgLkRURkNfTGVmdEZvb3RXcmFwcGVyIHtcbiAgICAgICAgICAgIGJvcmRlci1yaWdodDogJHRhYmxlLWJvcmRlci13aWR0aCBzb2xpZCAkdGFibGUtYm9yZGVyLWNvbG9yO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLy8gSW4gcmlnaHQgY29sdW1uXG4gICAgLkRURkNfUmlnaHRXcmFwcGVyIHtcbiAgICAgICAgLkRURkNfUmlnaHRIZWFkV3JhcHBlcixcbiAgICAgICAgLkRURkNfUmlnaHRCb2R5V3JhcHBlcixcbiAgICAgICAgLkRURkNfUmlnaHRGb290V3JhcHBlciB7XG4gICAgICAgICAgICBib3JkZXItbGVmdDogJHRhYmxlLWJvcmRlci13aWR0aCBzb2xpZCAkdGFibGUtYm9yZGVyLWNvbG9yO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLy8gUmVtb3ZlIGR1YmxpY2F0ZWQgaGVhZGVyIGFycm93cyBhbmQgYm9yZGVyc1xuICAgIC5EVEZDX0xlZnRCb2R5V3JhcHBlcixcbiAgICAuRFRGQ19SaWdodEJvZHlXcmFwcGVyIHtcbiAgICAgICAgLkRURkNfQ2xvbmVkIHtcbiAgICAgICAgICAgIHRoZWFkIHRoIHtcbiAgICAgICAgICAgICAgICAmOmJlZm9yZSxcbiAgICAgICAgICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgICAgICAgICAgY29udGVudDogbm9uZTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIHRib2R5ID4gdHI6Zmlyc3QtY2hpbGQge1xuICAgICAgICAgICAgICAgID4gdGQsXG4gICAgICAgICAgICAgICAgPiB0aCB7XG4gICAgICAgICAgICAgICAgICAgIGJvcmRlci10b3A6IDA7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLy8gQmxvY2sgb3V0IHRoZSBnYXAgYWJvdmUgdGhlIHNjcm9sbGJhciBvbiB0aGUgcmlnaHRcbiAgICAuRFRGQ19CbG9ja2VyIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7XG4gICAgfVxufVxuIiwiLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gKlxuICogICMgRml4ZWQgSGVhZGVyIGV4dGVuc2lvblxuICpcbiAqICBUaGlzIGV4dGVuc2lvbiBsZXRzIHlvdXIgdXNlcnMgcXVpY2tseSBkZXRlcm1pbmUgd2hhdCBlYWNoIGNvbHVtbiByZWZlcnMgdG9cbiAqICByYXRoZXIgdGhhbiBuZWVkaW5nIHRvIHNjcm9sbCBiYWNrIHRvIHRoZSB0b3Agb2YgdGhlIHRhYmxlLlxuICpcbiAqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cblxuLy8gQ2hlY2sgaWYgY29tcG9uZW50IGlzIGVuYWJsZWRcbkBpZiAkZW5hYmxlLWRhdGF0YWJsZS1maXhlZC1oZWFkZXIge1xuXG4gICAgLy8gSGVhZGVyc1xuICAgIC5maXhlZEhlYWRlci1mbG9hdGluZyxcbiAgICAuZml4ZWRIZWFkZXItbG9ja2VkIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNhcmQtYmc7XG4gICAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgfVxuXG4gICAgLy8gRmxvYXRpbmcgaGVhZGVyXG4gICAgLmZpeGVkSGVhZGVyLWZsb2F0aW5nIHtcbiAgICAgICAgcG9zaXRpb246IGZpeGVkO1xuXG4gICAgICAgIC8vIFJlbW92ZSB0b3AgYm9yZGVyIGlmIG11bHRpcGxlIHRhYmxlc1xuICAgICAgICAuZml4ZWRIZWFkZXItZmxvYXRpbmcgKyAmLFxuICAgICAgICAuZml4ZWRIZWFkZXItbG9ja2VkICsgJiB7XG4gICAgICAgICAgICBib3JkZXItdG9wOiAwIWltcG9ydGFudDtcbiAgICAgICAgfVxuXG4gICAgICAgIC8vIEhpZGUgb24gbW9iaWxlXG4gICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihzbSkge1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8vIExvY2tlZCBoZWFkZXJcbiAgICAuZml4ZWRIZWFkZXItbG9ja2VkIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuXG4gICAgICAgIC8vIEhpZGUgb24gbW9iaWxlXG4gICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihzbSkge1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8vIEhpZGUgaGVhZGVycyBvbiBwcmludFxuICAgIEBtZWRpYSBwcmludCB7XG4gICAgICAgIHRhYmxlLmZpeGVkSGVhZGVyLWZsb2F0aW5nIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIH1cbiAgICB9XG59XG4iLCIvKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAqXG4gKiAgIyBBdXRvZmlsbCBleHRlbnNpb25cbiAqXG4gKiAgU3ByZWFkc2hlZXRzIHN1Y2ggYXMgRXhjZWwgYW5kIEdvb2dsZSBEb2NzIGhhdmUgYSB2ZXJ5IGhhbmR5IGRhdGEgZHVwbGljYXRpb25cbiAqICBvcHRpb24gb2YgYW4gYXV0byBmaWxsIHRvb2xcbiAqXG4gKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5cbi8vIENoZWNrIGlmIGNvbXBvbmVudCBpcyBlbmFibGVkXG5AaWYgJGVuYWJsZS1kYXRhdGFibGUtYXV0b2ZpbGwge1xuXG4gICAgLy8gSGFuZGxlXG4gICAgLmR0LWF1dG9maWxsLWhhbmRsZSB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgei1pbmRleDogMTAyO1xuICAgICAgICBib3JkZXI6ICR0YWJsZS1ib3JkZXItd2lkdGggc29saWQgdGhlbWUtY29sb3IoXCJwcmltYXJ5XCIpO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0aGVtZS1jb2xvcihcInByaW1hcnlcIik7XG4gICAgICAgIEBpbmNsdWRlIHNpemUoMC41cmVtKTtcbiAgICB9XG5cbiAgICAvLyBTZWxlY3QgZnJhbWVcbiAgICAuZHQtYXV0b2ZpbGwtc2VsZWN0IHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB6LWluZGV4OiAxMDAxO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0aGVtZS1jb2xvcihcInByaW1hcnlcIik7XG4gICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHJlcGVhdGluZy1saW5lYXItZ3JhZGllbnQoNDVkZWcsIHRyYW5zcGFyZW50LCB0cmFuc3BhcmVudCAwLjMxMjVyZW0sIHJnYmEoJHdoaXRlLCAwLjc1KSAwLjMxMjVyZW0sIHJnYmEoJHdoaXRlLCAwLjc1KSAwLjYyNXJlbSk7XG5cbiAgICAgICAgLy8gVmVydGljYWwgbGluZXNcbiAgICAgICAgJi50b3AsXG4gICAgICAgICYuYm90dG9tIHtcbiAgICAgICAgICAgIGhlaWdodDogJHRhYmxlLWJvcmRlci13aWR0aDtcbiAgICAgICAgfVxuXG4gICAgICAgIC8vIEhvcml6b250YWwgbGluZXNcbiAgICAgICAgJi5sZWZ0LFxuICAgICAgICAmLnJpZ2h0IHtcbiAgICAgICAgICAgIHdpZHRoOiAkdGFibGUtYm9yZGVyLXdpZHRoO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLy8gQ29uZmlybWF0aW9uIGRpYWxvZ1xuICAgIC5kdC1hdXRvZmlsbC1saXN0IHtcbiAgICAgICAgcG9zaXRpb246IGZpeGVkO1xuICAgICAgICB0b3A6IDUwJTtcbiAgICAgICAgbGVmdDogNTAlO1xuICAgICAgICB3aWR0aDogMzEuMjVyZW07XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAtMTUuNjNyZW07XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRtb2RhbC1jb250ZW50LWJnO1xuICAgICAgICBib3JkZXI6ICRtb2RhbC1jb250ZW50LWJvcmRlci13aWR0aCBzb2xpZCAkbW9kYWwtY29udGVudC1ib3JkZXItY29sb3I7XG4gICAgICAgIHotaW5kZXg6ICR6aW5kZXgtbW9kYWw7XG4gICAgICAgIHBhZGRpbmc6ICRkcm9wZG93bi1wYWRkaW5nLXkgMDtcbiAgICAgICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkYm9yZGVyLXJhZGl1cyk7XG5cbiAgICAgICAgLy8gTGlzdFxuICAgICAgICB1bCB7XG4gICAgICAgICAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG5cbiAgICAgICAgICAgIC8vIExpc3QgaXRlbXNcbiAgICAgICAgICAgIGxpIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiB0YWJsZS1yb3c7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbihhbGwgZWFzZS1pbi1vdXQgJGNvbXBvbmVudC10cmFuc2l0aW9uLXRpbWVyKTtcblxuICAgICAgICAgICAgICAgIC8vIEhpZ2hsaWdodCByb3cgb24gaG92ZXJcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBob3ZlciB7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkZHJvcGRvd24tbGluay1ob3Zlci1jb2xvcjtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGRyb3Bkb3duLWxpbmstaG92ZXItYmc7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLy8gVGV4dCBsYWJlbFxuICAgICAgICAuZHQtYXV0b2ZpbGwtcXVlc3Rpb24ge1xuICAgICAgICAgICAgZGlzcGxheTogdGFibGUtY2VsbDtcbiAgICAgICAgICAgIHBhZGRpbmc6ICRkcm9wZG93bi1pdGVtLXBhZGRpbmcteSAkZHJvcGRvd24taXRlbS1wYWRkaW5nLXg7XG5cbiAgICAgICAgICAgIC8vIFRleHQgbGFiZWwgaW5wdXRcbiAgICAgICAgICAgIGlucHV0W3R5cGU9bnVtYmVyXSB7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogMC4zNzVyZW07XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEuODc1cmVtO1xuICAgICAgICAgICAgICAgIG1hcmdpbjogLTAuMTI1cmVtIDA7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAvLyBDb25maXJtIGJ1dHRvblxuICAgICAgICAuZHQtYXV0b2ZpbGwtYnV0dG9uIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IHRhYmxlLWNlbGw7XG4gICAgICAgICAgICBwYWRkaW5nOiAkZHJvcGRvd24taXRlbS1wYWRkaW5nLXkgJGRyb3Bkb3duLWl0ZW0tcGFkZGluZy14O1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XG5cbiAgICAgICAgICAgIC8vIEJ1dHRvbiBpdHNlbGZcbiAgICAgICAgICAgIC5idG4ge1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDAuMTg3NXJlbTtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0aGVtZS1jb2xvcihcInByaW1hcnlcIik7XG4gICAgICAgICAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDA7XG5cbiAgICAgICAgICAgICAgICAvLyBDaGVja21hcmsgaWNvblxuICAgICAgICAgICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgICAgICAgICBjb250ZW50OiAnXFxlOWMzJztcbiAgICAgICAgICAgICAgICAgICAgZm9udC1mYW1pbHk6ICRpY29uLWZvbnQtZmFtaWx5O1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAkaWNvbi1mb250LXNpemU7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAkaWNvbi1mb250LXNpemU7XG4gICAgICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBsbC1mb250LXNtb290aGluZygpO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIC8vIE11dGUgYnV0dG9uIG9uIGhvdmVyXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgaG92ZXIge1xuICAgICAgICAgICAgICAgICAgICBvcGFjaXR5OiAwLjg1O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8vIE92ZXJsYXlcbiAgICAuZHQtYXV0b2ZpbGwtYmFja2dyb3VuZCB7XG4gICAgICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbW9kYWwtYmFja2Ryb3AtYmc7XG4gICAgICAgIHotaW5kZXg6ICR6aW5kZXgtbW9kYWwtYmFja2Ryb3A7XG4gICAgICAgIG9wYWNpdHk6ICRtb2RhbC1iYWNrZHJvcC1vcGFjaXR5O1xuICAgICAgICBAaW5jbHVkZSBzaXplKDEwMCUpO1xuICAgIH1cbn1cbiIsIi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICpcbiAqICAjIFNlbGVjdCBleHRlbnNpb25cbiAqXG4gKiAgQWRkcyBpdGVtIHNlbGVjdGlvbiBjYXBhYmlsaXRpZXMgdG8gYSBEYXRhVGFibGVcbiAqXG4gKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5cbi8vIENoZWNrIGlmIGNvbXBvbmVudCBpcyBlbmFibGVkXG5AaWYgJGVuYWJsZS1kYXRhdGFibGUtc2VsZWN0IHtcblxuICAgIC8vIEhpZ2hsaWdodCBzZWxlY3RlZCByb3dcbiAgICAuZGF0YVRhYmxlIHtcbiAgICAgICAgdGJvZHkgPiB0ciB7XG4gICAgICAgICAgICAmLnNlbGVjdGVkLFxuICAgICAgICAgICAgPiAuc2VsZWN0ZWQge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRkdC1leHQtc2VsZWN0LWFjdGl2ZS1yb3ctYmc7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8vIEl0ZW0gc2VsZWN0XG4gICAgLmRhdGFUYWJsZXNfd3JhcHBlciB7XG4gICAgICAgIC5zZWxlY3QtaW5mbyxcbiAgICAgICAgLnNlbGVjdC1pdGVtIHtcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAkZWxlbWVudC1zcGFjZXIteDtcblxuICAgICAgICAgICAgLy8gT24gbW9iaWxlXG4gICAgICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oc20pIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8vIENoZWNrYm94XG4gICAgLmRhdGFUYWJsZSB0Ym9keSB7XG5cbiAgICAgICAgLy8gQ2hhY2tib3ggYmFzZVxuICAgICAgICAuc2VsZWN0LWNoZWNrYm94IHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICAgICAgICAgLy8gQ2hlY2tib3ggaWNvbiBiYXNlXG4gICAgICAgICAgICAmOmJlZm9yZSxcbiAgICAgICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgICAgICBjb2xvcjogJGNoZWNrYm94LWNvbG9yO1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICB0b3A6IDUwJTtcbiAgICAgICAgICAgICAgICBsZWZ0OiA1MCU7XG4gICAgICAgICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAvLyBCb3hcbiAgICAgICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY2FyZC1iZztcbiAgICAgICAgICAgICAgICB3aWR0aDogJGNoZWNrYm94LXNpemU7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAkY2hlY2tib3gtc2l6ZTtcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAtKCRjaGVja2JveC1zaXplIC8gMik7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IC0oJGNoZWNrYm94LXNpemUgLyAyKTtcbiAgICAgICAgICAgICAgICBib3JkZXI6ICRjaGVja2JveC1ib3JkZXItd2lkdGggc29saWQgJGNoZWNrYm94LWNvbG9yO1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGJvcmRlci1yYWRpdXMtc20pO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLy8gQ2hlY2ttYXJrIGljb25cbiAgICAgICAgLnNlbGVjdGVkIC5zZWxlY3QtY2hlY2tib3gge1xuICAgICAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICAgICAgY29udGVudDogXCJcXGU2MDBcIjtcbiAgICAgICAgICAgICAgICBmb250LWZhbWlseTogJGljb24tZm9udC1mYW1pbHk7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAkaWNvbi1mb250LXNpemU7XG4gICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogLSgoJGNoZWNrYm94LXNpemUgLSAoJGNoZWNrYm94LWJvcmRlci13aWR0aCAqIDIpKSAvIDIpO1xuICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAtKCgkY2hlY2tib3gtc2l6ZSAtICgkY2hlY2tib3gtYm9yZGVyLXdpZHRoICogMikpIC8gMik7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgbGwtZm9udC1zbW9vdGhpbmcoKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cbiIsIi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICpcbiAqICAjIEJ1dHRvbnMgZXh0ZW5zaW9uXG4gKlxuICogIFRoZSBCdXR0b25zIGV4dGVuc2lvbiBmb3IgRGF0YVRhYmxlcyBwcm92aWRlcyBhIGNvbW1vbiBzZXQgb2Ygb3B0aW9ucywgQVBJXG4gKiAgbWV0aG9kcyBhbmQgc3R5bGluZyB0byBkaXNwbGF5IGJ1dHRvbnMgdGhhdCB3aWxsIGludGVyYWN0IHdpdGggYSBEYXRhVGFibGVcbiAqXG4gKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5cbi8vIENoZWNrIGlmIGNvbXBvbmVudCBpcyBlbmFibGVkXG5AaWYgJGVuYWJsZS1kYXRhdGFibGUtYnV0dG9ucyB7XG5cbiAgICAvLyBGdWxsIHdpZHRoIGJ1dHRvbnNcbiAgICAuZHQtYnV0dG9ucy1mdWxsIHtcblxuICAgICAgICAvLyBDb250YWluZXJcbiAgICAgICAgLmR0LWJ1dHRvbnMge1xuICAgICAgICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICBib3JkZXItYm90dG9tOiAkdGFibGUtYm9yZGVyLXdpZHRoIHNvbGlkICR0YWJsZS1ib3JkZXItY29sb3I7XG4gICAgICAgICAgICBwYWRkaW5nLXRvcDogJGR0LXNwYWNlci15O1xuICAgICAgICAgICAgcGFkZGluZy1ib3R0b206ICgkZHQtc3BhY2VyLXkgLyAyKTtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR0YWJsZS1hY2NlbnQtYmc7XG5cbiAgICAgICAgICAgIC8vIEJ1dHRvblxuICAgICAgICAgICAgPiAuYnRuIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAoJGR0LXNwYWNlci15IC8gMik7XG4gICAgICAgICAgICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBCdXR0b25zLiBEZWZhdWx0IGFsaWdubWVudCBpcyByaWdodFxuICAgIC5kdC1idXR0b25zIHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBmbG9hdDogcmlnaHQ7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICAgICAgbWFyZ2luOiAwIDAgJGR0LXNwYWNlci15ICRkdC1zcGFjZXIteDtcblxuICAgICAgICAvLyBMZWZ0IGRpc3BsYXkgb3B0aW9uXG4gICAgICAgIC5kdC1idXR0b25zLWxlZnQgJiB7XG4gICAgICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgfVxuXG4gICAgICAgIC8vIERlZmF1bHQgYnV0dG9uc1xuICAgICAgICA+IC5idG4ge1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMDtcblxuICAgICAgICAgICAgLy8gRmlyc3QgYnV0dG9uXG4gICAgICAgICAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBib3JkZXItbGVmdC1yYWRpdXMoJGJ0bi1ib3JkZXItcmFkaXVzKTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLy8gTGFzdCBidXR0b25cbiAgICAgICAgICAgICY6bGFzdC1vZi10eXBlIHtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBib3JkZXItcmlnaHQtcmFkaXVzKCRidG4tYm9yZGVyLXJhZGl1cyk7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC8vIEFkZCAxcHggc3BhY2luZyBiZXR3ZWVuIGJ1dHRvbnNcbiAgICAgICAgICAgICYgKyAuYnRuIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogLSgkYnRuLWJvcmRlci13aWR0aCk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAvLyBNb2JpbGUgdmlld1xuICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oc20pIHtcbiAgICAgICAgICAgIGZsb2F0OiBub25lO1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG5cbiAgICAgICAgICAgIC5idG4ge1xuICAgICAgICAgICAgICAgIGZsb2F0OiBub25lO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLy8gT3ZlcmxheVxuICAgIC5kdC1idXR0b24tYmFja2dyb3VuZCB7XG4gICAgICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbW9kYWwtYmFja2Ryb3AtYmc7XG4gICAgICAgIHotaW5kZXg6ICR6aW5kZXgtbW9kYWwtYmFja2Ryb3A7XG4gICAgICAgIG9wYWNpdHk6ICRtb2RhbC1iYWNrZHJvcC1vcGFjaXR5O1xuICAgIH1cblxuICAgIC8vIEJ1dHRvbiBjb2xsZWN0aW9uXG4gICAgLmR0LWJ1dHRvbi1jb2xsZWN0aW9uIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZHJvcGRvd24tYmc7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB6LWluZGV4OiAkemluZGV4LW1vZGFsO1xuICAgICAgICBwYWRkaW5nOiAkZHJvcGRvd24tcGFkZGluZy15IDA7XG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgIG1pbi13aWR0aDogJGRyb3Bkb3duLW1pbi13aWR0aDtcbiAgICAgICAgY29sdW1uLWdhcDogMC4xMjVyZW07XG4gICAgICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGRyb3Bkb3duLWJvcmRlci1yYWRpdXMpO1xuICAgICAgICBAaW5jbHVkZSBib3gtc2hhZG93KCRkcm9wZG93bi1ib3gtc2hhZG93KTtcblxuICAgICAgICAvLyBGb3JjZSBjb2xsZWN0aW9uIGRyb3Bkb3duIHRvIGJlIHJpZ2h0IGFsaWduZWRcbiAgICAgICAgJjpub3QoLmZpeGVkKSB7XG4gICAgICAgICAgICB0b3A6IDEwMCUhaW1wb3J0YW50O1xuICAgICAgICAgICAgbGVmdDogYXV0byFpbXBvcnRhbnQ7XG4gICAgICAgICAgICByaWdodDogMCFpbXBvcnRhbnQ7XG4gICAgICAgIH1cblxuICAgICAgICAvLyBJbm5lciBidXR0b25zXG4gICAgICAgID4gLmR0LWJ1dHRvbiB7XG4gICAgICAgICAgICBwYWRkaW5nOiAkZHJvcGRvd24taXRlbS1wYWRkaW5nLXkgJGRyb3Bkb3duLWl0ZW0tcGFkZGluZy14O1xuICAgICAgICAgICAgY29sb3I6ICRkcm9wZG93bi1saW5rLWNvbG9yO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICBib3JkZXI6IDA7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIG91dGxpbmU6IDA7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKGFsbCBlYXNlLWluLW91dCAkY29tcG9uZW50LXRyYW5zaXRpb24tdGltZXIpO1xuXG4gICAgICAgICAgICAvLyBBZGQgMXB4IHRvcCBzcGFjaW5nIGJldHdlZW4gYnV0dG9uc1xuICAgICAgICAgICAgKyAuZHQtYnV0dG9uIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAkZHJvcGRvd24taXRlbS1zcGFjZXIteTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLy8gSG92ZXIgc3RhdGVcbiAgICAgICAgICAgIEBpbmNsdWRlIGhvdmVyLWZvY3VzIHtcbiAgICAgICAgICAgICAgICBjb2xvcjogJGRyb3Bkb3duLWxpbmstaG92ZXItY29sb3I7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGRyb3Bkb3duLWxpbmstaG92ZXItYmc7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC8vIEFjdGl2ZSBzdGF0ZVxuICAgICAgICAgICAgJi5hY3RpdmUge1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkZHJvcGRvd24tbGluay1hY3RpdmUtY29sb3I7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGRyb3Bkb3duLWxpbmstYWN0aXZlLWJnO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLy8gRml4ZWQgY2VudGVyZWQgbGF5b3V0XG4gICAgICAgICYuZml4ZWQge1xuICAgICAgICAgICAgcG9zaXRpb246IGZpeGVkO1xuICAgICAgICAgICAgdG9wOiA1MCU7XG4gICAgICAgICAgICBsZWZ0OiA1MCU7XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogLSgkZHQtYnV0dG9uLWNvbGxlY3Rpb24tMmNvbC13aWR0aCAvIDQpO1xuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAkZHJvcGRvd24tcGFkZGluZy15O1xuICAgICAgICAgICAgcGFkZGluZy1yaWdodDogJGRyb3Bkb3duLXBhZGRpbmcteTtcblxuICAgICAgICAgICAgLy8gVHdvIGNvbHVtbnNcbiAgICAgICAgICAgICYudHdvLWNvbHVtbiB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IC0oJGR0LWJ1dHRvbi1jb2xsZWN0aW9uLTJjb2wtd2lkdGggLyAyKTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLy8gVGhyZWUgY29sdW1uc1xuICAgICAgICAgICAgJi50aHJlZS1jb2x1bW4ge1xuICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAtKCRkdC1idXR0b24tY29sbGVjdGlvbi0zY29sLXdpZHRoIC8gMik7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC8vIEZvdXIgY29sdW1uc1xuICAgICAgICAgICAgJi5mb3VyLWNvbHVtbiB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IC0oJGR0LWJ1dHRvbi1jb2xsZWN0aW9uLTRjb2wtd2lkdGggLyAyKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC8vIElubmVyIGNvbnRlbnRcbiAgICAgICAgPiAqIHtcbiAgICAgICAgICAgIC13ZWJraXQtY29sdW1uLWJyZWFrLWluc2lkZTogYXZvaWQ7XG4gICAgICAgICAgICBicmVhay1pbnNpZGU6IGF2b2lkO1xuICAgICAgICB9XG5cbiAgICAgICAgLy8gVHdvIGNvbHVtbnNcbiAgICAgICAgJi50d28tY29sdW1uIHtcbiAgICAgICAgICAgIHdpZHRoOiAkZHQtYnV0dG9uLWNvbGxlY3Rpb24tMmNvbC13aWR0aDtcbiAgICAgICAgICAgIGNvbHVtbi1jb3VudDogMjtcbiAgICAgICAgfVxuXG4gICAgICAgIC8vIFRocmVlIGNvbHVtbnNcbiAgICAgICAgJi50aHJlZS1jb2x1bW4ge1xuICAgICAgICAgICAgd2lkdGg6ICRkdC1idXR0b24tY29sbGVjdGlvbi0zY29sLXdpZHRoO1xuICAgICAgICAgICAgY29sdW1uLWNvdW50OiAzO1xuICAgICAgICB9XG5cbiAgICAgICAgLy8gRm91ciBjb2x1bW5zXG4gICAgICAgICYuZm91ci1jb2x1bW4ge1xuICAgICAgICAgICAgd2lkdGg6ICRkdC1idXR0b24tY29sbGVjdGlvbi00Y29sLXdpZHRoO1xuICAgICAgICAgICAgY29sdW1uLWNvdW50OiA0O1xuICAgICAgICB9XG4gICAgfVxufVxuIiwiLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gKlxuICogICMgS2V5IFRhYmxlIGV4dGVuc2lvblxuICpcbiAqICBLZXlUYWJsZSBwcm92aWRlcyBFeGNlbCBsaWtlIGNlbGwgbmF2aWdhdGlvbiBvbiBhbnkgdGFibGUuIEV2ZW50cyAoZm9jdXMsIGJsdXIsXG4gKiAgYWN0aW9uIGV0YykgY2FuIGJlIGFzc2lnbmVkIHRvIGluZGl2aWR1YWwgY2VsbHMsIGNvbHVtbnMsIHJvd3Mgb3IgYWxsIGNlbGxzLlxuICpcbiAqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cblxuLy8gQ2hlY2sgaWYgY29tcG9uZW50IGlzIGVuYWJsZWRcbkBpZiAkZW5hYmxlLWRhdGF0YWJsZS1rZXl0YWJsZSB7XG5cbiAgICAvLyBGb2N1cyBjb2xvcnNcbiAgICAuZGF0YVRhYmxlIHtcbiAgICAgICAgdGgsXG4gICAgICAgIHRkIHtcblxuICAgICAgICAgICAgLy8gRGVmYXVsdFxuICAgICAgICAgICAgJi5mb2N1cyB7XG4gICAgICAgICAgICAgICAgb3V0bGluZTogKCR0YWJsZS1ib3JkZXItd2lkdGggKiAyKSBzb2xpZCAkY29sb3ItcHJpbWFyeS01MDA7XG4gICAgICAgICAgICAgICAgb3V0bGluZS1vZmZzZXQ6IC0oJHRhYmxlLWJvcmRlci13aWR0aCk7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC8vIFN1Y2Nlc3NcbiAgICAgICAgICAgICYuZm9jdXMtc3VjY2VzcyB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLXN1Y2Nlc3MtNTA7XG4gICAgICAgICAgICAgICAgb3V0bGluZS1jb2xvcjogJGNvbG9yLXN1Y2Nlc3MtNTAwO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAvLyBJbmZvXG4gICAgICAgICAgICAmLmZvY3VzLWluZm8ge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1wcmltYXJ5LTUwO1xuICAgICAgICAgICAgICAgIG91dGxpbmUtY29sb3I6ICRjb2xvci1wcmltYXJ5LTUwMDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLy8gV2FybmluZ1xuICAgICAgICAgICAgJi5mb2N1cy13YXJuaW5nIHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3Itd2FybmluZy01MDtcbiAgICAgICAgICAgICAgICBvdXRsaW5lLWNvbG9yOiAkY29sb3Itd2FybmluZy01MDA7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC8vIERhbmdlclxuICAgICAgICAgICAgJi5mb2N1cy1kYW5nZXIge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1kYW5nZXItNTA7XG4gICAgICAgICAgICAgICAgb3V0bGluZS1jb2xvcjogJGNvbG9yLWRhbmdlci01MDA7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG4iLCIvKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAqXG4gKiAgIyBEYXRhdGFibGVzIFNjcm9sbGVyXG4gKlxuICogIERyYXdpbmcgdGhlIHJvd3MgcmVxdWlyZWQgZm9yIHRoZSBjdXJyZW50IGRpc3BsYXkgb25seSwgZm9yIGZhc3Qgb3BlcmF0aW9uXG4gKlxuICogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuXG4vLyBDaGVjayBpZiBjb21wb25lbnQgaXMgZW5hYmxlZFxuQGlmICRlbmFibGUtZGF0YXRhYmxlLXNjcm9sbGVyIHtcblxuICAgIC8vIEJhc2VcbiAgICAuRFRTIHtcblxuICAgICAgICAvLyBQcmV2ZW50IHdvcmQgd3JhcFxuICAgICAgICB0Ym9keSB7XG4gICAgICAgICAgICB0aCxcbiAgICAgICAgICAgIHRkIHtcbiAgICAgICAgICAgICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLy8gTG9hZGluZyB0ZXh0XG4gICAgICAgIC5EVFNfTG9hZGluZyB7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICB0b3A6IDUwJTtcbiAgICAgICAgICAgIGxlZnQ6IDUwJTtcbiAgICAgICAgICAgIHdpZHRoOiAxMi41cmVtO1xuICAgICAgICAgICAgaGVpZ2h0OiAxLjI1cmVtO1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogLSgkc3BhY2VyKTtcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAtNi4yNXJlbTtcbiAgICAgICAgICAgIHotaW5kZXg6IDE7XG5cbiAgICAgICAgICAgIGJvcmRlcjogJHRhYmxlLWJvcmRlci13aWR0aCBzb2xpZCAkdGFibGUtYm9yZGVyLWNvbG9yO1xuICAgICAgICAgICAgcGFkZGluZzogMS4yNXJlbSAwO1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgkd2hpdGUsIDAuNSk7XG4gICAgICAgIH1cblxuICAgICAgICAvLyBTY3JvbGxlciBhcmVhc1xuICAgICAgICAuZGF0YVRhYmxlc19zY3JvbGxIZWFkLFxuICAgICAgICAuZGF0YVRhYmxlc19zY3JvbGxGb290IHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgfVxuICAgICAgICAuZGF0YVRhYmxlc19zY3JvbGxCb2R5IHtcbiAgICAgICAgICAgIHotaW5kZXg6IDI7XG4gICAgICAgIH1cbiAgICB9XG59XG4iLCIvKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAqXG4gKiAgIyBSZXNwb25zaXZlIGV4dGVuc2lvblxuICpcbiAqICBPcHRpbWlzZSB0aGUgdGFibGUncyBsYXlvdXQgZm9yIGRpZmZlcmVudCBzY3JlZW4gc2l6ZXMgdGhyb3VnaCB0aGUgZHluYW1pYyBcbiAqICBpbnNlcnRpb24gYW5kIHJlbW92YWwgb2YgY29sdW1ucyBmcm9tIHRoZSB0YWJsZVxuICpcbiAqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cblxuLy8gQ2hlY2sgaWYgY29tcG9uZW50IGlzIGVuYWJsZWRcbkBpZiAkZW5hYmxlLWRhdGF0YWJsZS1yZXNwb25zaXZlIHtcblxuICAgIC8vIElubGluZSBkZXRhaWxzIHJvd1xuICAgIC5kdHItaW5saW5lIHtcbiAgICAgICAgJi5jb2xsYXBzZWQgdGJvZHkge1xuICAgICAgICAgICAgdHIge1xuICAgICAgICAgICAgICAgIHRkLFxuICAgICAgICAgICAgICAgIHRoIHtcbiAgICAgICAgICAgICAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAkZWxlbWVudC1zcGFjZXIteDtcbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgICAgICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICAgICAgICAgICAgICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcblxuICAgICAgICAgICAgICAgICAgICAgICAgJi5kYXRhVGFibGVzX2VtcHR5OmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8vIENvbHVtbiBkZXRhaWxzIHJvd1xuICAgIC5kdHItY29sdW1uIHtcbiAgICAgICAgdGJvZHkge1xuICAgICAgICAgICAgdGQsXG4gICAgICAgICAgICB0aCB7XG4gICAgICAgICAgICAgICAgJi5jb250cm9sIHtcbiAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG5cbiAgICAvL1xuICAgIC8vIEV4cGFuZC9jb2xsYXBzZSBpY29uc1xuICAgIC8vXG5cbiAgICAuZHRyLWlubGluZS5jb2xsYXBzZWQgdGJvZHkgdHIgdGQ6Zmlyc3QtY2hpbGQ6YmVmb3JlLFxuICAgIC5kdHItaW5saW5lLmNvbGxhcHNlZCB0Ym9keSB0ciB0aDpmaXJzdC1jaGlsZDpiZWZvcmUsXG4gICAgLmR0ci1jb2x1bW4gdGJvZHkgdHIgdGQuY29udHJvbDpiZWZvcmUsXG4gICAgLmR0ci1jb2x1bW4gdGJvZHkgdHIgdGguY29udHJvbDpiZWZvcmUge1xuICAgICAgICBjb250ZW50OiAnXFxlOWU0JztcbiAgICAgICAgZm9udC1mYW1pbHk6ICRpY29uLWZvbnQtZmFtaWx5O1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIGZvbnQtc2l6ZTogJGljb24tZm9udC1zaXplO1xuICAgICAgICB3aWR0aDogJGljb24tZm9udC1zaXplO1xuICAgICAgICBsaW5lLWhlaWdodDogMTtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICB0b3A6ICgoJGZvbnQtc2l6ZS1iYXNlIC0gJGljb24tZm9udC1zaXplKSAvIDIpO1xuICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgICAgICBAaW5jbHVkZSBsbC1mb250LXNtb290aGluZygpO1xuICAgIH1cbiAgICAuZGF0YVRhYmxlLmR0ci1pbmxpbmUuY29sbGFwc2VkIHRib2R5IHRyLnBhcmVudCB0ZDpmaXJzdC1jaGlsZDpiZWZvcmUsXG4gICAgLmRhdGFUYWJsZS5kdHItaW5saW5lLmNvbGxhcHNlZCB0Ym9keSB0ci5wYXJlbnQgdGg6Zmlyc3QtY2hpbGQ6YmVmb3JlLFxuICAgIC5kYXRhVGFibGUuZHRyLWNvbHVtbiB0Ym9keSB0ci5wYXJlbnQgdGQuY29udHJvbDpiZWZvcmUsXG4gICAgLmRhdGFUYWJsZS5kdHItY29sdW1uIHRib2R5IHRyLnBhcmVudCB0aC5jb250cm9sOmJlZm9yZSB7XG4gICAgICAgIGNvbnRlbnQ6ICdcXGU5ZTcnO1xuICAgIH1cbiAgICAuZHRyLWlubGluZS5jb2xsYXBzZWQgdGJvZHkgdHIuY2hpbGQgdGQ6YmVmb3JlIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG5cblxuICAgIC8vXG4gICAgLy8gQ2hpbGQgcm93cyB3aXRoIGRldGFpbHNcbiAgICAvL1xuXG4gICAgLmRhdGFUYWJsZSB7XG4gICAgICAgIHRyIHtcblxuICAgICAgICAgICAgLy8gQ2hpbGQgcm93XG4gICAgICAgICAgICAmLmNoaWxkIHtcbiAgICAgICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgLmR0ci10aXRsZSB7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IHRhYmxlLWNlbGw7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtc2VtaWJvbGQ7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6ICgkY2FyZC1zcGFjZXIteCAqIDIpO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIC5kdHItZGF0YSB7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IHRhYmxlLWNlbGw7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDAuNXJlbSAwO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLy8gQ2hpbGQgY2VsbFxuICAgICAgICAgICAgdGQuY2hpbGQge1xuICAgICAgICAgICAgICAgIHdoaXRlLXNwYWNlOiBub3JtYWw7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgICAgICAgICAgICAgPiB1bCB7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgICAgICAgICAgICAgICAgICB0YWJsZS1sYXlvdXQ6IGZpeGVkO1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAgICAgICAgICAgICAgID4gbGkge1xuICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogdGFibGUtcm93O1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuIiwiLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4qXG4qICAjIEdvb2dsZSBNYXBzIG92ZXJyaWRlc1xuKlxuKiAgT3ZlcnJpZGUgR29vZ2xlIE1hcHMgZGVmYXVsdCBzdHlsZXNcbipcbiogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuXG4vLyBDaGVjayBpZiBjb21wb25lbnQgaXMgZW5hYmxlZFxuQGlmICRlbmFibGUtZ29vZ2xlLW1hcHMge1xuXG5cdC8vIENvbnRhaW5lclxuXHQubWFwLWNvbnRhaW5lciB7XG5cdFx0aGVpZ2h0OiAkbWFwLWNvbnRhaW5lci1oZWlnaHQ7XG5cdH1cblxuXHQvLyBPdmVycmlkZSBwb3BvdmVyIHRleHQgc3R5bGVzXG5cdC5nbS1zdHlsZSB7XG5cdFx0Zm9udC1zaXplOiAkZm9udC1zaXplLWJhc2U7XG5cblx0XHQuZ20tc3R5bGUtaXcge1xuXHRcdFx0Zm9udC1zaXplOiAkZm9udC1zaXplLWJhc2U7XG5cdFx0XHRmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LW5vcm1hbDtcblx0XHR9XG5cdH1cbn1cbiIsIi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuKlxuKiAgIyBWZWN0b3IgbWFwc1xuKlxuKiAgVmVjdG9yIG1hcCBjb250YWluZXIsIHRvb2x0aXAgYW5kIHpvb21pbmdcbipcbiogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuXG4vLyBDaGVjayBpZiBjb21wb25lbnQgaXMgZW5hYmxlZFxuQGlmICRlbmFibGUtdmVjdG9yLW1hcHMge1xuXG4gICAgLy8gQ29udGFpbmVyXG4gICAgLnZlY3Rvci1tYXAtY29udGFpbmVyIHtcbiAgICAgICAgaGVpZ2h0OiAkbWFwLWNvbnRhaW5lci1oZWlnaHQ7XG4gICAgfVxuXG4gICAgLy8gTWFwIHRvb2x0aXBcbiAgICAuanZlY3Rvcm1hcC1sYWJlbCB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHRvb2x0aXAtYmc7XG4gICAgICAgIGNvbG9yOiAkdG9vbHRpcC1jb2xvcjtcbiAgICAgICAgcGFkZGluZzogJHRvb2x0aXAtcGFkZGluZy15ICR0b29sdGlwLXBhZGRpbmcteDtcbiAgICAgICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkdG9vbHRpcC1ib3JkZXItcmFkaXVzKTtcbiAgICB9XG5cbiAgICAvLyBab29tIGJ1dHRvbnNcbiAgICAuanZlY3Rvcm1hcC16b29taW4sXG4gICAgLmp2ZWN0b3JtYXAtem9vbW91dCB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgbGVmdDogJGNhcmQtc3BhY2VyLXg7XG4gICAgICAgIHBhZGRpbmc6IDAuNXJlbTtcbiAgICAgICAgY29sb3I6IHdoaXRlO1xuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgIGZvbnQtc2l6ZTogJGljb24tZm9udC1zaXplO1xuICAgICAgICBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LWxpZ2h0O1xuICAgICAgICBsaW5lLWhlaWdodDogMC42MjVyZW07XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1zbGF0ZS03MDA7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkYm9yZGVyLXJhZGl1cyk7XG4gICAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oYWxsIGVhc2UtaW4tb3V0ICRjb21wb25lbnQtdHJhbnNpdGlvbi10aW1lcik7XG5cbiAgICAgICAgLy8gIEhvdmVyIHN0YXRlXG4gICAgICAgIEBpbmNsdWRlIGhvdmVyIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1zbGF0ZS04MDA7XG4gICAgICAgIH1cbiAgICB9XG4gICAgLmp2ZWN0b3JtYXAtem9vbWluIHtcbiAgICAgICAgdG9wOiAwLjYyNXJlbTtcbiAgICB9XG4gICAgLmp2ZWN0b3JtYXAtem9vbW91dCB7XG4gICAgICAgIHRvcDogMi41cmVtO1xuICAgIH1cbn1cbiIsIi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuKlxuKiAgIyBDaGFydCBzdHlsaW5nXG4qXG4qICBDaGFydHMgYmFzZSAtIGNvbnRhaW5lciBhbmQgc2l6aW5nIHNldHVwXG4qXG4qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cblxuLy8gQ2hlY2sgaWYgY29tcG9uZW50IGlzIGVuYWJsZWRcbkBpZiAkZW5hYmxlLWNoYXJ0cyB7XG5cbiAgICAvLyBDb250YWluZXJcbiAgICAuY2hhcnQtY29udGFpbmVyIHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICB3aWR0aDogMTAwJTtcblxuICAgICAgICAvLyBBZGQgc2Nyb2xsXG4gICAgICAgICYuaGFzLXNjcm9sbCB7XG4gICAgICAgICAgICBvdmVyZmxvdy14OiBzY3JvbGw7XG4gICAgICAgICAgICBvdmVyZmxvdy15OiB2aXNpYmxlO1xuICAgICAgICAgICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgICAgICB9XG5cbiAgICAgICAgLy8gQWRkIHNjcm9sbCBmb3IgYWxsIGNoYXJ0cyBvbiBtb2JpbGUgdG8gaGlkZSBvdmVyZmxvd1xuICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oc20pIHtcbiAgICAgICAgICAgIG92ZXJmbG93LXg6IHNjcm9sbDtcbiAgICAgICAgICAgIG92ZXJmbG93LXk6IHZpc2libGU7XG4gICAgICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBDaGFydCBpdHNlbGZcbiAgICAuY2hhcnQge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgQGlmICRkaXJlY3Rpb24gPT0gJ1JUTCcge1xuICAgICAgICAgICAgLypydGw6aWdub3JlKi9cbiAgICAgICAgICAgIGRpcmVjdGlvbjogbHRyO1xuICAgICAgICB9XG5cbiAgICAgICAgLy8gR2l2ZSBjaGFydCBtaW4gd2lkdGhcbiAgICAgICAgJi5oYXMtbWluaW11bS13aWR0aCB7XG4gICAgICAgICAgICBtaW4td2lkdGg6ICRjaGFydC1taW4td2lkdGg7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBHaXZlIGNoYXJ0IGZpeGVkIGhlaWdodFxuICAgIC5oYXMtZml4ZWQtaGVpZ2h0IHtcbiAgICAgICAgaGVpZ2h0OiAkY2hhcnQtY29udGFpbmVyLWhlaWdodDtcbiAgICB9XG5cbiAgICAvLyBQaWUgY2hhcnRzXG4gICAgLmNoYXJ0LXBpZSB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBoZWlnaHQ6ICRjaGFydC1jb250YWluZXItaGVpZ2h0O1xuICAgICAgICBtaW4td2lkdGg6ICRjaGFydC1waWUtbWluLXdpZHRoO1xuICAgIH1cbn1cbiIsIi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuKlxuKiAgIyBDMyBjaGFydHNcbipcbiogIFN0eWxlcyBmb3IgQzMuanMgdmlzdWFsaXphdGlvbiBsaWJyYXJ5XG4qXG4qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cblxuLy8gQ2hlY2sgaWYgY29tcG9uZW50IGlzIGVuYWJsZWRcbkBpZiAkZW5hYmxlLWMzIHtcblxuICAgIC8vIEJhc2VcbiAgICAuYzMge1xuXG4gICAgICAgIC8vIFVzZSBzbWFsbGVyIHRleHRcbiAgICAgICAgc3ZnIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1zbTtcbiAgICAgICAgfVxuXG4gICAgICAgIC8vIFBhdGhzIGFuZCBsaW5lcyBkZWZhdWx0c1xuICAgICAgICBwYXRoLFxuICAgICAgICBsaW5lIHtcbiAgICAgICAgICAgIGZpbGw6IG5vbmU7XG4gICAgICAgICAgICBzdHJva2U6ICRncmF5LTYwMDtcbiAgICAgICAgfVxuICAgICAgICBwYXRoLmRvbWFpbiB7XG4gICAgICAgICAgICBzaGFwZS1yZW5kZXJpbmc6IGNyaXNwRWRnZXM7XG4gICAgICAgIH1cblxuICAgICAgICAvLyBEaXNhYmxlIHRleHQgc2VsZWN0aW9uXG4gICAgICAgIHRleHQge1xuICAgICAgICAgICAgdXNlci1zZWxlY3Q6IG5vbmU7XG4gICAgICAgIH1cbiAgICB9XG5cblxuICAgIC8vXG4gICAgLy8gQ29tcG9uZW50c1xuICAgIC8vXG5cbiAgICAvLyBEZWZhdWx0IHNoYXBlIHJlbmRlcmluZyBzdHlsZVxuICAgIC5jMy1sZWdlbmQtaXRlbS10aWxlLFxuICAgIC5jMy14Z3JpZC1mb2N1cyxcbiAgICAuYzMteWdyaWQsXG4gICAgLmMzLWV2ZW50LXJlY3QsXG4gICAgLmMzLWJhcnMgcGF0aCB7XG4gICAgICAgIHNoYXBlLXJlbmRlcmluZzogY3Jpc3BFZGdlcztcbiAgICB9XG5cbiAgICAvLyBBcmNzXG4gICAgLmMzLWNoYXJ0LWFyYyB7XG4gICAgICAgIHBhdGgge1xuICAgICAgICAgICAgc3Ryb2tlOiAkd2hpdGU7XG4gICAgICAgIH1cblxuICAgICAgICB0ZXh0IHtcbiAgICAgICAgICAgIGZpbGw6ICR3aGl0ZTtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1iYXNlO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLy8gR3JpZFxuICAgIC5jMy1ncmlkIHtcbiAgICAgICAgbGluZSB7XG4gICAgICAgICAgICBzdHJva2U6ICRncmF5LTUwMDtcbiAgICAgICAgfVxuXG4gICAgICAgIHRleHQge1xuICAgICAgICAgICAgZmlsbDogJGdyYXktNTAwO1xuICAgICAgICB9XG4gICAgfVxuICAgIC5jMy14Z3JpZCxcbiAgICAuYzMteWdyaWQge1xuICAgICAgICBzdHJva2UtZGFzaGFycmF5OiAzIDM7XG4gICAgfVxuXG4gICAgLy8gVGV4dCBvbiBjaGFydFxuICAgIC5jMy10ZXh0IHtcbiAgICAgICAgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1zZW1pYm9sZDtcblxuICAgICAgICAmLmMzLWVtcHR5IHtcbiAgICAgICAgICAgIGZpbGw6ICRncmF5LTcwMDtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMmVtO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLy8gTGluZVxuICAgIC5jMy1saW5lIHtcbiAgICAgICAgc3Ryb2tlLXdpZHRoOiAycHg7XG4gICAgfVxuXG4gICAgLy8gQXJlYVxuICAgIC5jMy1hcmVhIHtcbiAgICAgICAgc3Ryb2tlLXdpZHRoOiAwO1xuICAgICAgICBvcGFjaXR5OiAwLjQ7XG4gICAgfVxuXG4gICAgLy8gUG9pbnRcbiAgICAuYzMtY2lyY2xlLl9leHBhbmRlZF8ge1xuICAgICAgICBzdHJva2Utd2lkdGg6IDEuNXB4O1xuICAgICAgICBzdHJva2U6ICR3aGl0ZTtcbiAgICB9XG4gICAgLmMzLXNlbGVjdGVkLWNpcmNsZSB7XG4gICAgICAgIGZpbGw6ICR3aGl0ZTtcbiAgICAgICAgc3Ryb2tlLXdpZHRoOiAycHg7XG4gICAgfVxuXG4gICAgLy8gQmFyXG4gICAgLmMzLWJhciB7XG4gICAgICAgIHN0cm9rZS13aWR0aDogMDtcblxuICAgICAgICAmLl9leHBhbmRlZF8ge1xuICAgICAgICAgICAgZmlsbC1vcGFjaXR5OiAwLjc1O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLy8gQXJjXG4gICAgLmMzLWNoYXJ0LWFyY3MtdGl0bGUge1xuICAgICAgICBmb250LXNpemU6ICRoNi1mb250LXNpemU7XG4gICAgfVxuICAgIC5jMy1jaGFydC1hcmNzIHtcbiAgICAgICAgLmMzLWNoYXJ0LWFyY3MtYmFja2dyb3VuZCB7XG4gICAgICAgICAgICBmaWxsOiAkZ3JheS0zMDA7XG4gICAgICAgICAgICBzdHJva2U6IG5vbmU7XG4gICAgICAgIH1cblxuICAgICAgICAuYzMtY2hhcnQtYXJjcy1nYXVnZS11bml0IHtcbiAgICAgICAgICAgIGZpbGw6ICRib2R5LWNvbG9yO1xuICAgICAgICAgICAgZm9udC1zaXplOiAkaDYtZm9udC1zaXplO1xuICAgICAgICB9XG5cbiAgICAgICAgLmMzLWNoYXJ0LWFyY3MtZ2F1Z2UtbWF4LFxuICAgICAgICAuYzMtY2hhcnQtYXJjcy1nYXVnZS1taW4ge1xuICAgICAgICAgICAgZmlsbDogJGdyYXktMjAwO1xuICAgICAgICB9XG4gICAgfVxuICAgIC5jMy1jaGFydC1hcmMgLmMzLWdhdWdlLXZhbHVlIHtcbiAgICAgICAgZmlsbDogJGJvZHktY29sb3I7XG4gICAgICAgIGZvbnQtc2l6ZTogJGgxLWZvbnQtc2l6ZTtcbiAgICB9XG5cbiAgICAvLyBGb2N1c1xuICAgIC5jMy10YXJnZXQge1xuICAgICAgICAmLmMzLWZvY3VzZWQge1xuICAgICAgICAgICAgb3BhY2l0eTogMTtcblxuICAgICAgICAgICAgcGF0aC5jMy1saW5lLFxuICAgICAgICAgICAgcGF0aC5jMy1zdGVwIHtcbiAgICAgICAgICAgICAgICBzdHJva2Utd2lkdGg6IDJweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICYuYzMtZGVmb2N1c2VkIHtcbiAgICAgICAgICAgIG9wYWNpdHk6IDAuMyAhaW1wb3J0YW50O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLy8gUmVnaW9uXG4gICAgLmMzLXJlZ2lvbiB7XG4gICAgICAgIGZpbGw6ICRjb2xvci1zbGF0ZS02MDA7XG4gICAgICAgIGZpbGwtb3BhY2l0eTogLjE7XG4gICAgfVxuXG4gICAgLy8gQnJ1c2hcbiAgICAuYzMtYnJ1c2ggLmV4dGVudCB7XG4gICAgICAgIGZpbGwtb3BhY2l0eTogLjE7XG4gICAgfVxuXG4gICAgLy8gTGVnZW5kXG4gICAgLmMzLWxlZ2VuZC1pdGVtIHtcbiAgICAgICAgZm9udC1zaXplOiAkZm9udC1zaXplLXNtO1xuICAgIH1cbiAgICAuYzMtbGVnZW5kLWJhY2tncm91bmQge1xuICAgICAgICBmaWxsOiAkd2hpdGU7XG4gICAgICAgIHN0cm9rZTogbGlnaHRncmF5O1xuICAgICAgICBzdHJva2Utd2lkdGg6IDE7XG4gICAgICAgIG9wYWNpdHk6IDAuNzU7XG4gICAgfVxuXG4gICAgLy8gVG9vbHRpcFxuICAgIC5jMy10b29sdGlwIHtcbiAgICAgICAgYm9yZGVyLWNvbGxhcHNlOiBjb2xsYXBzZTtcbiAgICAgICAgYm9yZGVyLXNwYWNpbmc6IDA7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgZW1wdHktY2VsbHM6IHNob3c7XG4gICAgICAgIG9wYWNpdHk6IDAuOTU7XG5cbiAgICAgICAgdGgge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGdyYXktOTAwO1xuICAgICAgICAgICAgcGFkZGluZzogJHRhYmxlLWNlbGwtcGFkZGluZy14cztcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgICBib3JkZXI6ICR0YWJsZS1ib3JkZXItd2lkdGggc29saWQgJGdyYXktOTAwO1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1zZW1pYm9sZDtcbiAgICAgICAgfVxuXG4gICAgICAgIHRkIHtcbiAgICAgICAgICAgIHBhZGRpbmc6ICR0YWJsZS1jZWxsLXBhZGRpbmcteHM7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgICBib3JkZXI6ICR0YWJsZS1ib3JkZXItd2lkdGggc29saWQgJGJvcmRlci1jb2xvcjtcblxuICAgICAgICAgICAgPiBzcGFuIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiBtYXAtZ2V0KCRzcGFjZXJzLCAyKTtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBzaXplKCRiYWRnZS1tYXJrLXNpemUpO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmLnZhbHVlIHtcbiAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cbiIsIi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuKlxuKiAgIyBEMy5qcyBsaWJyYXJ5XG4qXG4qICBCYXNpYyBzdHlsZXMgZm9yIEQzLmpzIHZpc3VhbGl6YXRpb24gbGlicmFyeVxuKlxuKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5cbi8vIENoZWNrIGlmIGNvbXBvbmVudCBpcyBlbmFibGVkXG5AaWYgJGVuYWJsZS1kMyB7XG5cblxuICAgIC8vIEF4aXNcbiAgICAvLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuICAgIC8vIEJhc2VcbiAgICAuZDMtYXhpcyB7XG5cbiAgICAgICAgLy8gUGF0aFxuICAgICAgICBwYXRoIHtcbiAgICAgICAgICAgIGZpbGw6IG5vbmU7XG4gICAgICAgICAgICBzdHJva2U6ICRncmF5LTYwMDtcbiAgICAgICAgICAgIHNoYXBlLXJlbmRlcmluZzogY3Jpc3BFZGdlcztcbiAgICAgICAgfVxuXG4gICAgICAgIC8vIExpbmVcbiAgICAgICAgbGluZSB7XG4gICAgICAgICAgICBzdHJva2U6ICRncmF5LTIwMDtcbiAgICAgICAgICAgIHNoYXBlLXJlbmRlcmluZzogY3Jpc3BFZGdlcztcbiAgICAgICAgfVxuXG4gICAgICAgIC8vIFRpY2tzXG4gICAgICAgIC50aWNrIHtcbiAgICAgICAgICAgICYsXG4gICAgICAgICAgICB0ZXh0IHtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6ICRmb250LXNpemUtc207XG4gICAgICAgICAgICAgICAgZmlsbDogJGdyYXktOTAwO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLy8gTGlnaHRlciBheGlzIHRleHRcbiAgICAuZDMtYXhpcy1zb2xpZCB7XG4gICAgICAgIHBhdGgsXG4gICAgICAgIGxpbmUge1xuICAgICAgICAgICAgc3Ryb2tlOiAkZ3JheS01MDA7XG4gICAgICAgIH1cblxuICAgICAgICAvLyBUaWNrc1xuICAgICAgICAudGljayB7XG4gICAgICAgICAgICBmaWxsOiAkZ3JheS02MDA7XG5cbiAgICAgICAgICAgIHRleHQge1xuICAgICAgICAgICAgICAgIGZpbGw6ICRncmF5LTYwMDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8vIFN0cm9uZ2VyIGF4aXMgdGV4dFxuICAgIC5kMy1heGlzLXN0cm9uZyB7XG4gICAgICAgIHBhdGgsXG4gICAgICAgIGxpbmUge1xuICAgICAgICAgICAgc3Ryb2tlOiAkZ3JheS01MDA7XG4gICAgICAgIH1cblxuICAgICAgICAvLyBUaWNrc1xuICAgICAgICAudGljayB7XG4gICAgICAgICAgICBmaWxsOiAkZ3JheS05MDA7XG5cbiAgICAgICAgICAgIHRleHQge1xuICAgICAgICAgICAgICAgIGZpbGw6ICRncmF5LTkwMDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8vIFRyYW5zcGFyZW50IGF4aXNcbiAgICAuZDMtYXhpcy10cmFuc3BhcmVudCB7XG5cbiAgICAgICAgLy8gSGlkZSBwYXRoXG4gICAgICAgIHBhdGgge1xuICAgICAgICAgICAgc3Ryb2tlOiBub25lO1xuICAgICAgICB9XG5cbiAgICAgICAgLy8gSGlkZSBsaW5lXG4gICAgICAgIGxpbmUge1xuICAgICAgICAgICAgc3Ryb2tlOiAkZ3JheS0zMDA7XG4gICAgICAgIH1cblxuICAgICAgICAvLyBDaGFuZ2UgdGljayBjb2xvcnNcbiAgICAgICAgLnRpY2sge1xuICAgICAgICAgICAgZmlsbDogJGdyYXktNjAwO1xuXG4gICAgICAgICAgICB0ZXh0IHtcbiAgICAgICAgICAgICAgICBmaWxsOiAkZ3JheS02MDA7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cblxuXG4gICAgLy8gVG9vbHRpcFxuICAgIC8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4gICAgLy9cbiAgICAvLyBCYXNpYyB0b29sdGlwXG4gICAgLy9cblxuICAgIC8vIEJhc2VcbiAgICAuZDMtdGlwIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICBwYWRkaW5nOiAkdG9vbHRpcC1wYWRkaW5nLXkgJHRvb2x0aXAtcGFkZGluZy14O1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdG9vbHRpcC1iZztcbiAgICAgICAgY29sb3I6ICR0b29sdGlwLWNvbG9yO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAtKCR0b29sdGlwLWFycm93LWhlaWdodCk7XG4gICAgICAgIGZvbnQtc2l6ZTogJHRvb2x0aXAtZm9udC1zaXplO1xuICAgICAgICB6LWluZGV4OiAkemluZGV4LXRvb2x0aXA7XG4gICAgICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJHRvb2x0aXAtYm9yZGVyLXJhZGl1cyk7XG5cbiAgICAgICAgLy8gQXJyb3dcbiAgICAgICAgLmQzLXRpcC1hcnJvdyB7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICB3aWR0aDogMDtcbiAgICAgICAgICAgIGhlaWdodDogMDtcbiAgICAgICAgICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLy8gVG9vbHRpcCBwb3NpdGlvbmluZ1xuICAgIC5kMy10aXAge1xuICAgICAgICAmLm4gLmQzLXRpcC1hcnJvdyB7XG4gICAgICAgICAgICBib3R0b206IC0oJHRvb2x0aXAtYXJyb3ctaGVpZ2h0KTtcbiAgICAgICAgICAgIGxlZnQ6IDUwJTtcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAtKCR0b29sdGlwLWFycm93LWhlaWdodCk7XG4gICAgICAgICAgICBib3JkZXItd2lkdGg6ICR0b29sdGlwLWFycm93LWhlaWdodCAkdG9vbHRpcC1hcnJvdy1oZWlnaHQgMDtcbiAgICAgICAgICAgIGJvcmRlci10b3AtY29sb3I6ICR0b29sdGlwLWFycm93LWNvbG9yO1xuICAgICAgICB9XG4gICAgICAgICYuZSAuZDMtdGlwLWFycm93IHtcbiAgICAgICAgICAgIHRvcDogNTAlO1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogLSR0b29sdGlwLWFycm93LWhlaWdodDtcbiAgICAgICAgICAgIC8qcnRsOmJlZ2luOmlnbm9yZSovXG4gICAgICAgICAgICBsZWZ0OiAtKCR0b29sdGlwLWFycm93LWhlaWdodCk7XG4gICAgICAgICAgICBib3JkZXItd2lkdGg6ICR0b29sdGlwLWFycm93LWhlaWdodCAkdG9vbHRpcC1hcnJvdy1oZWlnaHQgJHRvb2x0aXAtYXJyb3ctaGVpZ2h0IDA7XG4gICAgICAgICAgICBib3JkZXItcmlnaHQtY29sb3I6ICR0b29sdGlwLWFycm93LWNvbG9yO1xuICAgICAgICAgICAgLypydGw6ZW5kOmlnbm9yZSovXG4gICAgICAgIH1cbiAgICAgICAgJi53IC5kMy10aXAtYXJyb3cge1xuICAgICAgICAgICAgdG9wOiA1MCU7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAtJHRvb2x0aXAtYXJyb3ctaGVpZ2h0O1xuICAgICAgICAgICAgLypydGw6YmVnaW46aWdub3JlKi9cbiAgICAgICAgICAgIHJpZ2h0OiAtKCR0b29sdGlwLWFycm93LWhlaWdodCk7XG4gICAgICAgICAgICBib3JkZXItd2lkdGg6ICR0b29sdGlwLWFycm93LWhlaWdodCAwICR0b29sdGlwLWFycm93LWhlaWdodCAkdG9vbHRpcC1hcnJvdy1oZWlnaHQ7XG4gICAgICAgICAgICBib3JkZXItbGVmdC1jb2xvcjogJHRvb2x0aXAtYXJyb3ctY29sb3I7XG4gICAgICAgICAgICAvKnJ0bDplbmQ6aWdub3JlKi9cbiAgICAgICAgfVxuICAgICAgICAmLnMgLmQzLXRpcC1hcnJvdyB7XG4gICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgICBsZWZ0OiA1MCU7XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogLSR0b29sdGlwLWFycm93LWhlaWdodDtcbiAgICAgICAgICAgIGJvcmRlci13aWR0aDogMCAkdG9vbHRpcC1hcnJvdy1oZWlnaHQgJHRvb2x0aXAtYXJyb3ctaGVpZ2h0O1xuICAgICAgICAgICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogJHRvb2x0aXAtYXJyb3ctY29sb3I7XG4gICAgICAgIH1cbiAgICB9XG5cblxuICAgIC8vXG4gICAgLy8gVmVubiBkaWFncmFtIHRvb2x0aXBcbiAgICAvL1xuXG4gICAgLy8gQmFzZVxuICAgIC52ZW5udG9vbHRpcCB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdG9vbHRpcC1iZztcbiAgICAgICAgY29sb3I6ICR0b29sdGlwLWNvbG9yO1xuICAgICAgICBwYWRkaW5nOiAkdG9vbHRpcC1wYWRkaW5nLXkgJHRvb2x0aXAtcGFkZGluZy14O1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCR0b29sdGlwLWJvcmRlci1yYWRpdXMpO1xuICAgIH1cblxuXG5cbiAgICAvLyBDaGFydCB0eXBlc1xuICAgIC8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4gICAgLy8gTGluZXNcbiAgICAuZDMtbGluZSB7XG4gICAgICAgIGZpbGw6IG5vbmU7XG5cbiAgICAgICAgLy8gVGhpbiBzdHJva2VcbiAgICAgICAgJi10aGluIHtcbiAgICAgICAgICAgIHN0cm9rZS13aWR0aDogMXB4O1xuICAgICAgICB9XG5cbiAgICAgICAgLy8gTWVkaXVtIHN0cm9rZVxuICAgICAgICAmLW1lZGl1bSB7XG4gICAgICAgICAgICBzdHJva2Utd2lkdGg6IDEuNXB4O1xuICAgICAgICB9XG5cbiAgICAgICAgLy8gU3Ryb25nIHN0cm9rZVxuICAgICAgICAmLXN0cm9uZyB7XG4gICAgICAgICAgICBzdHJva2Utd2lkdGg6IDJweDtcbiAgICAgICAgfVxuICAgIH1cblxuXG4gICAgLy8gTGluZSBjaXJjbGVzXG4gICAgLmQzLWxpbmUtY2lyY2xlIHtcbiAgICAgICAgZmlsbDogbm9uZTtcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuXG4gICAgICAgIC8vIFRoaW4gc3Ryb2tlXG4gICAgICAgICYtdGhpbiB7XG4gICAgICAgICAgICBzdHJva2Utd2lkdGg6IDFweDtcbiAgICAgICAgfVxuXG4gICAgICAgIC8vIE1lZGl1bSBzdHJva2VcbiAgICAgICAgJi1tZWRpdW0ge1xuICAgICAgICAgICAgc3Ryb2tlLXdpZHRoOiAxLjVweDtcbiAgICAgICAgfVxuXG4gICAgICAgIC8vIFN0cm9uZyBzdHJva2VcbiAgICAgICAgJi1zdHJvbmcge1xuICAgICAgICAgICAgc3Ryb2tlLXdpZHRoOiAycHg7XG4gICAgICAgIH1cbiAgICB9XG5cblxuXG4gICAgLy8gR3JpZFxuICAgIC8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4gICAgLy8gQmFzaWMgZ3JpZFxuICAgIC5kMy1ncmlkIHtcbiAgICAgICAgLnRpY2sge1xuICAgICAgICAgICAgbGluZSB7XG4gICAgICAgICAgICAgICAgc3Ryb2tlLXdpZHRoOiAxcHg7XG4gICAgICAgICAgICAgICAgc3Ryb2tlOiAkZ3JheS0zMDA7XG4gICAgICAgICAgICAgICAgc2hhcGUtcmVuZGVyaW5nOiBjcmlzcEVkZ2VzO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICB0ZXh0IHtcbiAgICAgICAgICAgICAgICBmaWxsOiAkZ3JheS05MDA7XG4gICAgICAgICAgICAgICAgc3Ryb2tlOiBub25lO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG5cbiAgICAvLyBEYXNoZWQgZ3JpZFxuICAgIC5kMy1ncmlkLWRhc2hlZCB7XG4gICAgICAgIC50aWNrIHtcbiAgICAgICAgICAgIHN0cm9rZS1kYXNoYXJyYXk6IDQsMjtcbiAgICAgICAgICAgIHN0cm9rZS13aWR0aDogMXB4O1xuICAgICAgICAgICAgc3Ryb2tlOiAkZ3JheS0zMDA7XG4gICAgICAgICAgICBzaGFwZS1yZW5kZXJpbmc6IGNyaXNwRWRnZXM7XG4gICAgICAgIH1cblxuICAgICAgICBwYXRoIHtcbiAgICAgICAgICAgIHN0cm9rZS13aWR0aDogMDtcbiAgICAgICAgfVxuICAgIH1cblxuXG5cbiAgICAvLyBDb21wb25lbnRzXG4gICAgLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbiAgICAvLyBDcm9zc2hhaXIgb3ZlcmxheVxuICAgIC5kMy1jcm9zc2hhaXItb3ZlcmxheSB7XG4gICAgICAgIGZpbGw6IG5vbmU7XG4gICAgICAgIHBvaW50ZXItZXZlbnRzOiBhbGw7XG4gICAgfVxuXG5cblxuICAgIC8vIEJ1bGxldHNcbiAgICAvLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuICAgIC8vXG4gICAgLy8gQmFzZVxuICAgIC8vXG5cbiAgICAvLyBUaWNrc1xuICAgIC5idWxsZXQtdGljayB7XG5cbiAgICAgICAgLy8gTGluZSBzdHlsZXNcbiAgICAgICAgbGluZSB7XG4gICAgICAgICAgICBzdHJva2U6ICRncmF5LTYwMDtcbiAgICAgICAgICAgIHN0cm9rZS13aWR0aDogMXB4O1xuICAgICAgICAgICAgc2hhcGUtcmVuZGVyaW5nOiBjcmlzcEVkZ2VzO1xuICAgICAgICB9XG5cbiAgICAgICAgLy8gVGV4dCBzdHlsZXNcbiAgICAgICAgdGV4dCB7XG4gICAgICAgICAgICBmaWxsOiAkZ3JheS02MDA7XG4gICAgICAgICAgICBmb250LXNpemU6ICRmb250LXNpemUtc207XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBNYXJrZXJcbiAgICAuYnVsbGV0LW1hcmtlciB7XG4gICAgICAgIHN0cm9rZS13aWR0aDogMnB4O1xuICAgICAgICBzaGFwZS1yZW5kZXJpbmc6IGNyaXNwRWRnZXM7XG4gICAgfVxuXG4gICAgLy8gVGl0bGVcbiAgICAuYnVsbGV0LXRpdGxlIHtcbiAgICAgICAgZm9udC1zaXplOiAkZm9udC1zaXplLWJhc2U7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtc2VtaWJvbGQ7XG4gICAgfVxuXG4gICAgLy8gU3VidGl0bGVcbiAgICAuYnVsbGV0LXN1YnRpdGxlIHtcbiAgICAgICAgZmlsbDogJGdyYXktNjAwO1xuICAgIH1cblxuXG4gICAgLy9cbiAgICAvLyBGaXJzdCBidWxsZXRcbiAgICAvL1xuXG4gICAgLy8gUmFuZ2VzXG4gICAgLmJ1bGxldC0xIC5idWxsZXQtcmFuZ2UtMSB7XG4gICAgICAgIGZpbGw6IHJnYmEoJGNvbG9yLXNsYXRlLTUwMCwgMC44KTtcbiAgICB9XG4gICAgLmJ1bGxldC0xIC5idWxsZXQtcmFuZ2UtMiB7XG4gICAgICAgIGZpbGw6IHJnYmEoJGNvbG9yLXNsYXRlLTUwMCwgMC40KTtcbiAgICB9XG4gICAgLmJ1bGxldC0xIC5idWxsZXQtcmFuZ2UtMyB7XG4gICAgICAgIGZpbGw6ICRjb2xvci1zbGF0ZS01MDA7XG4gICAgfVxuXG4gICAgLy8gTWVhc3VyZXNcbiAgICAuYnVsbGV0LTEgLmJ1bGxldC1tZWFzdXJlLTEge1xuICAgICAgICBmaWxsOiByZ2JhKCRjb2xvci1zbGF0ZS02MDAsIDAuOSk7XG4gICAgfVxuICAgIC5idWxsZXQtMSAuYnVsbGV0LW1lYXN1cmUtMiB7XG4gICAgICAgIGZpbGw6ICR3aGl0ZTtcbiAgICB9XG5cbiAgICAvLyBNYXJrZXJcbiAgICAuYnVsbGV0LTEgLmJ1bGxldC1tYXJrZXIge1xuICAgICAgICBzdHJva2U6ICRjb2xvci1zbGF0ZS04MDA7XG4gICAgfVxuXG5cbiAgICAvL1xuICAgIC8vIFNlY29uZCBidWxsZXRcbiAgICAvL1xuXG4gICAgLy8gUmFuZ2VzXG4gICAgLmJ1bGxldC0yIC5idWxsZXQtcmFuZ2UtMSB7XG4gICAgICAgIGZpbGw6IHJnYmEoJGNvbG9yLXdhcm5pbmctNDAwLCAwLjYpO1xuICAgIH1cbiAgICAuYnVsbGV0LTIgLmJ1bGxldC1yYW5nZS0yIHtcbiAgICAgICAgZmlsbDogcmdiYSgkY29sb3Itd2FybmluZy00MDAsIDAuMyk7XG4gICAgfVxuICAgIC5idWxsZXQtMiAuYnVsbGV0LXJhbmdlLTMge1xuICAgICAgICBmaWxsOiAkY29sb3Itd2FybmluZy00MDA7XG4gICAgfVxuXG4gICAgLy8gTWVhc3VyZXNcbiAgICAuYnVsbGV0LTIgLmJ1bGxldC1tZWFzdXJlLTEge1xuICAgICAgICBmaWxsOiByZ2JhKCRjb2xvci13YXJuaW5nLTYwMCwgMC45KTtcbiAgICB9XG4gICAgLmJ1bGxldC0yIC5idWxsZXQtbWVhc3VyZS0yIHtcbiAgICAgICAgZmlsbDogJHdoaXRlO1xuICAgIH1cblxuICAgIC8vIE1hcmtlclxuICAgIC5idWxsZXQtMiAuYnVsbGV0LW1hcmtlciB7XG4gICAgICAgIHN0cm9rZTogJGNvbG9yLXdhcm5pbmctODAwO1xuICAgIH1cblxuXG4gICAgLy9cbiAgICAvLyBUaGlyZCBidWxsZXRcbiAgICAvL1xuXG4gICAgLy8gUmFuZ2VzXG4gICAgLmJ1bGxldC0zIC5idWxsZXQtcmFuZ2UtMSB7XG4gICAgICAgIGZpbGw6IHJnYmEoJGNvbG9yLXN1Y2Nlc3MtNDAwLCAwLjcpO1xuICAgIH1cbiAgICAuYnVsbGV0LTMgLmJ1bGxldC1yYW5nZS0yIHtcbiAgICAgICAgZmlsbDogcmdiYSgkY29sb3Itc3VjY2Vzcy00MDAsIDAuMzUpO1xuICAgIH1cbiAgICAuYnVsbGV0LTMgLmJ1bGxldC1yYW5nZS0zIHtcbiAgICAgICAgZmlsbDogJGNvbG9yLXN1Y2Nlc3MtNDAwO1xuICAgIH1cblxuICAgIC8vIE1lYXN1cmVzXG4gICAgLmJ1bGxldC0zIC5idWxsZXQtbWVhc3VyZS0xIHtcbiAgICAgICAgZmlsbDogcmdiYSgkY29sb3Itc3VjY2Vzcy02MDAsIDAuOSk7XG4gICAgfVxuICAgIC5idWxsZXQtMyAuYnVsbGV0LW1lYXN1cmUtMiB7XG4gICAgICAgIGZpbGw6ICR3aGl0ZTtcbiAgICB9XG5cbiAgICAvLyBNYXJrZXJcbiAgICAuYnVsbGV0LTMgLmJ1bGxldC1tYXJrZXIge1xuICAgICAgICBzdHJva2U6ICRjb2xvci1zdWNjZXNzLTgwMDtcbiAgICB9XG5cblxuXG4gICAgLy8gUHJvZ3Jlc3MgY291bnRlciBpY29uLiBTdHlsZXMgbW92ZWQgdG9cbiAgICAvLyBDU1MsIGJlY2F1c2UgSUU5IGRyb3ZlIG1lIGNyYXp5Li4uXG4gICAgLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbiAgICAuY291bnRlci1pY29uIHtcbiAgICAgICAgZm9udC1zaXplOiAoJGljb24tZm9udC1zaXplICogMik7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgbGVmdDogNTAlO1xuICAgICAgICBtYXJnaW4tbGVmdDogLSgkaWNvbi1mb250LXNpemUpO1xuICAgIH1cblxuXG4gICAgLy8gTGVnZW5kXG4gICAgLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbiAgICAuY2hhcnQtd2lkZ2V0LWxlZ2VuZCB7XG4gICAgICAgIG1hcmdpbjogMC42MjVyZW0gMCAwIDA7XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1zbTtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICBcbiAgICAgICAgbGkge1xuICAgICAgICAgICAgbWFyZ2luOiAwLjMxMjVyZW0gMC42MjVyZW0gMDtcbiAgICAgICAgICAgIHBhZGRpbmc6IDAuNDM3NXJlbSAwLjVyZW0gMC4zMTI1cmVtO1xuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICB9XG4gICAgfVxufVxuIiwiLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gKlxuICogICMgRWNvbW1lcmNlIHN0dWZmXG4gKlxuICogIFN0eWxlcyBmb3IgRWNvbW1lcmNlIHNldCBvZiBwYWdlc1xuICpcbiAqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cblxuLy8gQ2hlY2sgaWYgY29tcG9uZW50IGlzIGVuYWJsZWRcbkBpZiAkZW5hYmxlLWVjb21tZXJjZSB7XG5cblxuICAgIC8vXG4gICAgLy8gRWxlbWVudHNcbiAgICAvL1xuXG4gICAgLy8gU2lkZWJhciBjb2xvciBzZWxlY3RvclxuICAgIC5jb2xvci1zZWxlY3Rvci1hY3RpdmUge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAgICAgLy8gQ2hlY2ttYXJrIGljb25cbiAgICAgICAgaSB7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICB0b3A6IDUwJTtcbiAgICAgICAgICAgIGxlZnQ6IDUwJTtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IC0oJGljb24tZm9udC1zaXplIC8gMik7XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogLSgkaWNvbi1mb250LXNpemUgLyAyKTtcbiAgICAgICAgfVxuICAgIH1cblxuXG4gICAgLy9cbiAgICAvLyBQcmljaW5nIHRhYmxlc1xuICAgIC8vXG5cbiAgICAvLyBQcmljZSBsYWJlbFxuICAgIC5wcmljaW5nLXRhYmxlLXByaWNlIHtcbiAgICAgICAgZm9udC1zaXplOiAkcHJpY2luZy10aXRsZS1mb250LXNpemU7XG5cbiAgICAgICAgLy8gQ3VycmVuY3kgc2lnblxuICAgICAgICA+IHNwYW4ge1xuICAgICAgICAgICAgZm9udC1zaXplOiAkcHJpY2luZy1zdWJ0aXRsZS1mb250LXNpemU7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBTdGFja2VkIGxpc3Qgb2YgZmVhdHVyZXNcbiAgICAucHJpY2luZy10YWJsZS1saXN0IHtcbiAgICAgICAgbGkge1xuICAgICAgICAgICAgcGFkZGluZy10b3A6ICRwcmljaW5nLWxpc3QtaXRlbS1wYWRkaW5nLXk7XG4gICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogJHByaWNpbmctbGlzdC1pdGVtLXBhZGRpbmcteTtcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b206ICRwcmljaW5nLWxpc3QtaXRlbS1ib3JkZXItd2lkdGggc29saWQgJHByaWNpbmctbGlzdC1pdGVtLWJvcmRlci1jb2xvcjtcblxuICAgICAgICAgICAgLy8gQ2hhbmdlIGJvcmRlciBjb2xvciBpbiBkYXJrIGNhcmRzXG4gICAgICAgICAgICAuY2FyZFtjbGFzcyo9YmctXTpub3QoLmJnLXRyYW5zcGFyZW50KTpub3QoLmJnLXdoaXRlKTpub3QoLmJnLWxpZ2h0KSAmIHtcbiAgICAgICAgICAgICAgICBib3JkZXItYm90dG9tLWNvbG9yOiByZ2JhKCR3aGl0ZSwgMC4yKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuXG4gICAgLy9cbiAgICAvLyBSaWJib25zXG4gICAgLy9cblxuICAgIC8vIENvbnRhaW5lclxuICAgIC5yaWJib24tY29udGFpbmVyIHtcbiAgICAgICAgd2lkdGg6IDYuNXJlbTtcbiAgICAgICAgaGVpZ2h0OiA2LjYyNXJlbTtcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IC0oJGNhcmQtYm9yZGVyLXdpZHRoKTtcbiAgICAgICAgcmlnaHQ6IC0oJGNhcmQtYm9yZGVyLXdpZHRoKTtcbiAgICB9XG5cbiAgICAvLyBDb3JuZXIgcmliYm9uXG4gICAgLnJpYmJvbiB7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgZm9udC1zaXplOiAkZm9udC1zaXplLXNtO1xuICAgICAgICBsaW5lLWhlaWdodDogJGxpbmUtaGVpZ2h0LXNtO1xuICAgICAgICBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LXNlbWlib2xkO1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIHBhZGRpbmc6IDAuMzEyNXJlbSAwO1xuICAgICAgICBsZWZ0OiAtMC42ODc1cmVtO1xuICAgICAgICB0b3A6IDEuNTYzcmVtO1xuICAgICAgICB3aWR0aDogOS4zNzVyZW07XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRwcmljaW5nLXJpYmJvbi1iZztcbiAgICAgICAgY29sb3I6ICRwcmljaW5nLXJpYmJvbi1jb2xvcjtcbiAgICAgICAgei1pbmRleDogMTA7XG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKTtcbiAgICAgICAgQGluY2x1ZGUgYm94LXNoYWRvdygkcHJpY2luZy1yaWJib24tYm94LXNoYWRvdyk7XG4gICAgfVxufVxuIiwiLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gKlxuICogICMgQmxvZyBsYXlvdXRzXG4gKlxuICogIEJsb2cgbGF5b3V0cyB3aXRoIHZhcmlvdXMgYmxvZyBsYXlvdXRzXG4gKlxuICogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuXG4vLyBDaGVjayBpZiBjb21wb25lbnQgaXMgZW5hYmxlZFxuQGlmICRlbmFibGUtYmxvZyB7XG5cbiAgICAvLyBIb3Jpem9udGFsIGxheW91dFxuICAgIC5ibG9nLWhvcml6b250YWwge1xuXG4gICAgICAgIC8vIFN0aWNrIHRodW1iIHRvIHRoZSBsZWZ0IGFuZCBnaXZlIGl0IGZpeGVkIHdpZHRoXG4gICAgICAgIC5jYXJkLWltZy1hY3Rpb25zIHtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuXG4gICAgICAgICAgICAvLyBEZXNrdG9wIHNpemVcbiAgICAgICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoc20pIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogNDUlO1xuICAgICAgICAgICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICAgICAgICAgIG1heC13aWR0aDogJGJsb2ctaG9yaXpvbnRhbC1pbWctbWF4LXdpZHRoO1xuICAgICAgICAgICAgICAgIHotaW5kZXg6IDEwO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG5cbiAgICAvL1xuICAgIC8vIE1lZGlhIHNpemluZ1xuICAgIC8vXG5cbiAgICAvLyBNaW5pXG4gICAgLmJsb2ctaG9yaXpvbnRhbC14cyB7XG4gICAgICAgIC5jYXJkLWltZy1hY3Rpb25zIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoc20pIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogMzUlO1xuICAgICAgICAgICAgICAgIG1heC13aWR0aDogJGJsb2ctaG9yaXpvbnRhbC1pbWctbWF4LXdpZHRoLXhzO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLy8gTWVkaXVtXG4gICAgLmJsb2ctaG9yaXpvbnRhbC1zbSB7XG4gICAgICAgIC5jYXJkLWltZy1hY3Rpb25zIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoc20pIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogNDAlO1xuICAgICAgICAgICAgICAgIG1heC13aWR0aDogJGJsb2ctaG9yaXpvbnRhbC1pbWctbWF4LXdpZHRoLXNtO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLy8gTGFyZ2VcbiAgICAuYmxvZy1ob3Jpem9udGFsLWxnIHtcbiAgICAgICAgLmNhcmQtaW1nLWFjdGlvbnMge1xuICAgICAgICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChzbSkge1xuICAgICAgICAgICAgICAgIHdpZHRoOiA1MCU7XG4gICAgICAgICAgICAgICAgbWF4LXdpZHRoOiAkYmxvZy1ob3Jpem9udGFsLWltZy1tYXgtd2lkdGgtbGc7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG4iLCIvKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAqXG4gKiAgIyBUYXNrIG1hbmFnZXJcbiAqXG4gKiAgU3R5bGVzIHJlbGF0ZWQgdG8gdGFzayBtYW5hZ2VyIC0gZGV0YWlsZWQgdGFzaywgbGlzdCBhbmQgZ3JpZFxuICpcbiAqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cblxuLy8gQ2hlY2sgaWYgY29tcG9uZW50IGlzIGVuYWJsZWRcbkBpZiAkZW5hYmxlLXRhc2tzIHtcblxuXHQvLyBOdW1iZXJzXG5cdC50aW1lci1udW1iZXIge1xuXHRcdGZvbnQtc2l6ZTogKCRoMi1mb250LXNpemUgKiAyKTtcblx0XHRsaW5lLWhlaWdodDogMTtcblx0fVxuXG5cdC8vIERvdHMgYmV0d2VlbiBudW1iZXJzXG5cdC50aW1lci1kb3RzIHtcblx0XHRmb250LXNpemU6ICgkaDItZm9udC1zaXplKTtcblx0XHRwYWRkaW5nOiAoJGgyLWZvbnQtc2l6ZSAvIDIpIDA7XG5cdFx0bGluZS1oZWlnaHQ6IDE7XG5cdH1cbn1cbiIsIi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICpcbiAqICAjIE1haWwgbGlzdFxuICpcbiAqICBJbmJveCBwYWdlIC0gbGlzdCwgcmVhZCBhbmQgd3JpdGVcbiAqXG4gKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5cbi8vIENoZWNrIGlmIGNvbXBvbmVudCBpcyBlbmFibGVkXG5AaWYgJGVuYWJsZS1pbmJveCB7XG5cbiAgICAvLyBCYXNlXG4gICAgLnRhYmxlLWluYm94IHtcbiAgICAgICAgdGFibGUtbGF5b3V0OiBmaXhlZDtcbiAgICAgICAgbWluLXdpZHRoOiBtYXAtZ2V0KCRncmlkLWJyZWFrcG9pbnRzLCBcIm1kXCIpO1xuXG4gICAgICAgIC8vIFJvd3MgYW5kIGNlbGxzXG4gICAgICAgIHRyIHtcbiAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oYWxsIGVhc2UtaW4tb3V0ICRjb21wb25lbnQtdHJhbnNpdGlvbi10aW1lcik7XG5cbiAgICAgICAgICAgIC8vIFJlYWQgbWVzc2FnZSBiYWNrZ3JvdW5kIGNvbG9yXG4gICAgICAgICAgICAmOm5vdChbY2xhc3MqPWFscGhhLV0pOm5vdChbY2xhc3MqPWJnLV0pIHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaW5ib3gtcmVhZC1yb3ctYmc7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC8vIFJlbW92ZSBsZWZ0IHBhZGRpbmcgaW4gYWxsIGNlbGxzIGV4Y2VwdCBmaXJzdFxuICAgICAgICAgICAgdGQge1xuICAgICAgICAgICAgICAgICY6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAvLyBOZXcgbWFpbFxuICAgICAgICAgICAgJi51bnJlYWQge1xuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtYm9sZDtcblxuICAgICAgICAgICAgICAgIC8vIFVucmVhZCBtZXNzYWdlIGJhY2tncm91bmQgY29sb3JcbiAgICAgICAgICAgICAgICAmOm5vdChbY2xhc3MqPWFscGhhLV0pOm5vdChbY2xhc3MqPWJnLV0pIHtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGluYm94LXVucmVhZC1yb3ctYmc7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLy8gQ2VsbCB3aXRoIGNoZWNrYm94XG4gICAgLnRhYmxlLWluYm94LWNoZWNrYm94IHtcbiAgICAgICAgd2lkdGg6ICgoJGNhcmQtc3BhY2VyLXggKiAyKSArICRjaGVja2JveC1zaXplKTtcbiAgICB9XG5cbiAgICAvLyBTZXQgZml4ZWQgd2lkdGggdG8gc3RhciBhbmQgYXRhY2htZW50IGNlbGxzXG4gICAgLnRhYmxlLWluYm94LXN0YXIsXG4gICAgLnRhYmxlLWluYm94LWF0dGFjaG1lbnQge1xuICAgICAgICB3aWR0aDogKCRjYXJkLXNwYWNlci14ICsgJGljb24tZm9udC1zaXplKTtcbiAgICB9XG5cbiAgICAvLyBVc2VyIGltYWdlIGNlbGxcbiAgICAudGFibGUtaW5ib3gtaW1hZ2Uge1xuICAgICAgICB3aWR0aDogKCRjYXJkLXNwYWNlci14ICsgKCgoJGxpbmUtaGVpZ2h0LWNvbXB1dGVkIC0gJGljb24tZm9udC1zaXplICsgJGJ0bi1wYWRkaW5nLXktc20pIC0gcmVtLWNhbGMoJGJ0bi1ib3JkZXItd2lkdGgpKSAqIDIpICsgJGljb24tZm9udC1zaXplKTtcbiAgICB9XG5cbiAgICAvLyBTZW5kZXIgbmFtZVxuICAgIC50YWJsZS1pbmJveC1uYW1lIHtcbiAgICAgICAgd2lkdGg6IDExLjI1cmVtO1xuICAgIH1cblxuICAgIC8vIE1lc3NhZ2Ugc3ViamVjdFxuICAgIC50YWJsZS1pbmJveC1zdWJqZWN0IHtcbiAgICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKHNtKSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgICAgICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8vIE1lc3NhZ2VcbiAgICAudGFibGUtaW5ib3gtbWVzc2FnZSB7XG4gICAgICAgIEBpbmNsdWRlIHRleHQtdHJ1bmNhdGUoKTtcbiAgICB9XG5cbiAgICAvLyBUaW1lIGNlbGxcbiAgICAudGFibGUtaW5ib3gtdGltZSB7XG4gICAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgICAgICB3aWR0aDogNXJlbTtcbiAgICB9XG59XG4iLCIvKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAqXG4gKiAgIyBVc2VyIHByb2ZpbGVcbiAqXG4gKiAgU3R5bGVzIGZvciBhbGwgdXNlciBwcm9maWxlIGxheW91dHNcbiAqXG4gKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5cbi8vIENoZWNrIGlmIGNvbXBvbmVudCBpcyBlbmFibGVkXG5AaWYgJGVuYWJsZS1wcm9maWxlIHtcblxuXHQvLyBDb3ZlciBpbWFnZSBsYXlvdXQgYmFzZVxuXHQucHJvZmlsZS1jb3ZlciB7XG5cdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXG5cdFx0Ly8gQ292ZXIgZGV0YWlsc1xuXHRcdC5tZWRpYSB7XG5cdFx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0XHRsZWZ0OiAkY2FyZC1zcGFjZXIteDtcblx0XHRcdHJpZ2h0OiAkY2FyZC1zcGFjZXIteDtcblx0XHRcdGJvdHRvbTogNTAlO1xuXHRcdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGVZKDUwJSk7XG5cblx0XHRcdC8vIEFkZCBzaGFkb3cgdG8gYnV0dG9uc1xuXHRcdFx0LmJ0biB7XG5cdFx0XHRcdGJveC1zaGFkb3c6ICRwcm9maWxlLWNvdmVyLWVsZW1lbnQtc2hhZG93ICFpbXBvcnRhbnQ7XG5cdFx0XHR9XG5cblx0XHRcdC8vIERlc2t0b3Agdmlld1xuXHRcdFx0QGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChtZCkge1xuXHRcdFx0XHRib3R0b206ICRzcGFjZXI7XG5cdFx0XHRcdHRyYW5zZm9ybTogbm9uZTtcblx0XHRcdH1cblx0XHR9XG5cblx0XHQvLyBUZXh0IHN0eWxlc1xuXHRcdC5tZWRpYS1ib2R5IHtcblx0XHRcdHRleHQtc2hhZG93OiAkcHJvZmlsZS1jb3Zlci1lbGVtZW50LXNoYWRvdztcblx0XHR9XG5cdH1cblxuXHQvLyBDb3ZlciBpbWFnZVxuXHQucHJvZmlsZS1jb3Zlci1pbWcge1xuXHRcdGJhY2tncm91bmQtcG9zaXRpb246IDUwJSA1MCU7XG5cdFx0YmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcblx0XHRiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuXHRcdGhlaWdodDogJHByb2ZpbGUtY292ZXItaGVpZ2h0O1xuXHR9XG5cblx0Ly8gVXNlciB0aHVtYm5haWwgaW5zaWRlIGNvdmVyXG5cdC5wcm9maWxlLXRodW1iIGltZyB7XG5cdFx0Ym9yZGVyOiAkcHJvZmlsZS10aHVtYi1ib3JkZXItd2lkdGggc29saWQgJHByb2ZpbGUtdGh1bWItYm9yZGVyLWNvbG9yO1xuXHRcdGJveC1zaGFkb3c6ICRwcm9maWxlLWNvdmVyLWVsZW1lbnQtc2hhZG93O1xuXHRcdEBpbmNsdWRlIHNpemUoJHByb2ZpbGUtdGh1bWItc2l6ZSk7XG5cdH1cbn0iLCIvKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAqXG4gKiAgIyBMb2dpbiBhbmQgcmVsYXRlZCBmb3Jtc1xuICpcbiAqICBTdHlsZXMgcmVsYXRlZCB0byB1c2VyIGxvZ2luIC0gbG9naW5zLCByZWdpc3RyYXRpb24sIHBhc3N3b3JkIHJldm92ZXJ5LCB1bmxvY2sgZXRjLlxuICpcbiAqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cblxuLy8gQ2hlY2sgaWYgY29tcG9uZW50IGlzIGVuYWJsZWRcbkBpZiAkZW5hYmxlLWxvZ2luIHtcblxuICAgIC8vIENvdmVyIGltYWdlXG4gICAgLmxvZ2luLWNvdmVyIHtcbiAgICAgICAgYmFja2dyb3VuZDogdXJsKCN7JGltZy1wYXRofS9sb2dpbl9jb3Zlci5qcGcpIG5vLXJlcGVhdDtcbiAgICAgICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgICB9XG5cbiAgICAvLyBGb3JtXG4gICAgLmxvZ2luLWZvcm0ge1xuICAgICAgICB3aWR0aDogMTAwJTtcblxuICAgICAgICAvLyBUYWJzXG4gICAgICAgIC5uYXYtaXRlbSB7XG4gICAgICAgICAgICBAaWYgJGVuYWJsZS1yb3VuZGVkIHtcbiAgICAgICAgICAgICAgICAmOmZpcnN0LWNoaWxkIC5uYXYtbGluayB7XG4gICAgICAgICAgICAgICAgICAgIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6ICRjYXJkLWlubmVyLWJvcmRlci1yYWRpdXM7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICY6bGFzdC1jaGlsZCAubmF2LWxpbmsge1xuICAgICAgICAgICAgICAgICAgICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogJGNhcmQtaW5uZXItYm9yZGVyLXJhZGl1cztcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAvLyBTZXQgYSBmaXhlZCB3aWR0aCBmb3IgZGVza3RvcCBicm93c2Vyc1xuICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKHNtKSB7XG4gICAgICAgICAgICB3aWR0aDogJGxvZ2luLWZvcm0td2lkdGg7XG4gICAgICAgIH1cbiAgICB9XG59XG4iLCIvKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAqXG4gKiAgIyBUaW1lbGluZVxuICpcbiAqICBTdHlsZXMgZm9yIHRpbWVsaW5lIGluIDMgbGF5b3V0czogbGVmdCwgcmlnaHQgYW5kIGNlbnRlcmVkXG4gKlxuICogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuXG4vLyBDaGVjayBpZiBjb21wb25lbnQgaXMgZW5hYmxlZFxuQGlmICRlbmFibGUtdGltZWxpbmUge1xuXG5cdC8vIEJhc2Vcblx0LnRpbWVsaW5lIHtcblx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cblx0XHQvLyBEb3RzIGJhc2Vcblx0XHQmOmJlZm9yZSxcblx0XHQmOmFmdGVyIHtcblx0XHRcdGNvbnRlbnQ6IFwiXCI7XG5cdFx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0XHRsZWZ0OiA1MCU7XG5cdFx0XHRtYXJnaW4tbGVmdDogLSgkdGltZWxpbmUtbGluZS13aWR0aCk7XG5cdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkdGltZWxpbmUtbGluZS1jb2xvcjtcblx0XHRcdHotaW5kZXg6IDE7XG5cdFx0XHRAaW5jbHVkZSBzaXplKCR0aW1lbGluZS1saW5lLXdpZHRoICogMik7XG5cdFx0XHRAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRib3JkZXItcmFkaXVzLWNpcmNsZSk7XG5cdFx0fVxuXG5cdFx0Ly8gVG9wIGRvdFxuXHRcdCY6YmVmb3JlIHtcblx0XHRcdHRvcDogMDtcblx0XHR9XG5cblx0XHQvLyBCb3R0b20gZG90XG5cdFx0JjphZnRlciB7XG5cdFx0XHRib3R0b206IDA7XG5cdFx0fVxuXHR9XG5cblx0Ly8gQ29udGFpbmVyXG5cdC50aW1lbGluZS1jb250YWluZXIge1xuXHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0XHRwYWRkaW5nLXRvcDogKCRzcGFjZXIgLyAyKTtcblx0XHRtYXJnaW4tdG9wOiAtKCRzcGFjZXIgLyAyKTtcblx0XHRwYWRkaW5nLWJvdHRvbTogMXB4O1xuXG5cdFx0Ly8gVmVydGljYWwgbGluZVxuXHRcdCY6YWZ0ZXIge1xuXHRcdFx0Y29udGVudDogXCJcIjtcblx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRcdHRvcDogMDtcblx0XHRcdGxlZnQ6IDUwJTtcblx0XHRcdG1hcmdpbi1sZWZ0OiAtKCR0aW1lbGluZS1saW5lLXdpZHRoIC8gMik7XG5cdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkdGltZWxpbmUtbGluZS1jb2xvcjtcblx0XHRcdGhlaWdodDogMTAwJTtcblx0XHRcdHdpZHRoOiAkdGltZWxpbmUtbGluZS13aWR0aDtcblx0XHRcdHotaW5kZXg6IC0xO1xuXHRcdH1cblx0fVxuXG5cdC8vIFJvd1xuXHQudGltZWxpbmUtcm93IHtcblx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdH1cblxuXHQvLyBEYXRlXG5cdC50aW1lbGluZS1kYXRlIHtcblx0XHR0ZXh0LWFsaWduOiBjZW50ZXI7XG5cdFx0YmFja2dyb3VuZC1jb2xvcjogJGJvZHktYmc7XG5cdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRcdHotaW5kZXg6IDE7XG5cdFx0cGFkZGluZy10b3A6ICRzcGFjZXI7XG5cdFx0cGFkZGluZy1ib3R0b206ICRzcGFjZXI7XG5cdFx0bWFyZ2luLWJvdHRvbTogJHNwYWNlcjtcblxuXHRcdC8vIERvdHMgYmFzZVxuXHRcdCY6YmVmb3JlLFxuXHRcdCY6YWZ0ZXIge1xuXHRcdFx0Y29udGVudDogXCJcIjtcblx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRcdGxlZnQ6IDUwJTtcblx0XHRcdG1hcmdpbi1sZWZ0OiAtKCR0aW1lbGluZS1saW5lLXdpZHRoKTtcblx0XHRcdGJhY2tncm91bmQtY29sb3I6ICR0aW1lbGluZS1saW5lLWNvbG9yO1xuXHRcdFx0ei1pbmRleDogMTtcblx0XHRcdEBpbmNsdWRlIHNpemUoJHRpbWVsaW5lLWxpbmUtd2lkdGggKiAyKTtcblx0XHRcdEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGJvcmRlci1yYWRpdXMtY2lyY2xlKTtcblx0XHR9XG5cblx0XHQvLyBUb3AgZG90XG5cdFx0JjpiZWZvcmUge1xuXHRcdFx0dG9wOiAwO1xuXHRcdH1cblxuXHRcdC8vIEJvdHRvbSBkb3Rcblx0XHQmOmFmdGVyIHtcblx0XHRcdGJvdHRvbTogMDtcblx0XHR9XG5cblx0XHQvLyBDaGFuZ2UgYmcgY29sb3IgdG8gY2FyZCBiZyBpZiBpbnNpZGUgY2FyZFxuXHRcdC5jYXJkICYge1xuXHRcdFx0YmFja2dyb3VuZC1jb2xvcjogJGNhcmQtYmc7XG5cdFx0fVxuXHR9XG5cblx0Ly8gVGltZVxuXHQudGltZWxpbmUtdGltZSB7XG5cdFx0dGV4dC1hbGlnbjogY2VudGVyO1xuXHRcdHBhZGRpbmctdG9wOiAkc3BhY2VyO1xuXHRcdHBhZGRpbmctYm90dG9tOiAkc3BhY2VyO1xuXHRcdGJhY2tncm91bmQtY29sb3I6ICRib2R5LWJnO1xuXHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0XHRtYXJnaW4tYm90dG9tOiAkc3BhY2VyO1xuXG5cdFx0Ly8gRG90cyBiYXNlXG5cdFx0JjpiZWZvcmUsXG5cdFx0JjphZnRlciB7XG5cdFx0XHRjb250ZW50OiBcIlwiO1xuXHRcdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdFx0bGVmdDogNTAlO1xuXHRcdFx0bWFyZ2luLWxlZnQ6IC0oJHRpbWVsaW5lLWxpbmUtd2lkdGgpO1xuXHRcdFx0YmFja2dyb3VuZC1jb2xvcjogJHRpbWVsaW5lLWxpbmUtY29sb3I7XG5cdFx0XHRAaW5jbHVkZSBzaXplKCR0aW1lbGluZS1saW5lLXdpZHRoICogMik7XG5cdFx0XHRAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRib3JkZXItcmFkaXVzLWNpcmNsZSk7XG5cdFx0fVxuXG5cdFx0Ly8gVG9wIGRvdFxuXHRcdCY6YmVmb3JlIHtcblx0XHRcdHRvcDogMDtcblx0XHR9XG5cblx0XHQvLyBCb3R0b20gZG90XG5cdFx0JjphZnRlciB7XG5cdFx0XHRib3R0b206IDA7XG5cdFx0fVxuXG5cdFx0Ly8gQ2hhbmdlIGJnIGNvbG9yIHRvIGNhcmQgYmcgaWYgaW5zaWRlIGNhcmRcblx0XHQuY2FyZCAmIHtcblx0XHRcdGJhY2tncm91bmQtY29sb3I6ICRjYXJkLWJnO1xuXHRcdH1cblxuXHRcdC8vIEhpZGUgZG90cyBubyBkZXNrdG9wXG5cdFx0QGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChtZCkge1xuXHRcdFx0JjpiZWZvcmUsXG5cdFx0XHQmOmFmdGVyIHtcblx0XHRcdFx0Y29udGVudDogbm9uZTtcblx0XHRcdH1cblx0XHR9XG5cdH1cblxuXHQvLyBJY29uIGFuZCBpbWFnZVxuXHQudGltZWxpbmUtaWNvbiB7XG5cdFx0bWFyZ2luOiAwIGF1dG8gJHNwYWNlciBhdXRvO1xuXHRcdGJhY2tncm91bmQtY29sb3I6ICR0aW1lbGluZS1pY29uLWJnO1xuXHRcdGJvcmRlcjogJHRpbWVsaW5lLWljb24tYm9yZGVyLXdpZHRoIHNvbGlkICRib2R5LWJnO1xuXHRcdEBpbmNsdWRlIHNpemUoJHRpbWVsaW5lLWljb24tc2l6ZSk7XG5cdFx0QGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkYm9yZGVyLXJhZGl1cy1jaXJjbGUpO1xuXG5cdFx0Ly8gQ2hhbmdlIGJvcmRlciBjb2xvciBpZiBpdCdzIGluc2lkZSBjYXJkXG5cdFx0LmNhcmQgJiB7XG5cdFx0XHRib3JkZXItY29sb3I6ICRjYXJkLWJnO1xuXHRcdH1cblxuXHRcdC8vIEljb25cblx0XHRkaXYge1xuXHRcdFx0aGVpZ2h0OiAxMDAlO1xuXHRcdFx0ZGlzcGxheTogZmxleDtcblx0XHQgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcblx0XHQgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG5cdFx0XHRib3gtc2hhZG93OiAwIDAgMCAkdGltZWxpbmUtbGluZS13aWR0aCAkdGltZWxpbmUtbGluZS1jb2xvciBpbnNldDtcblx0XHRcdEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGJvcmRlci1yYWRpdXMtY2lyY2xlKTtcblxuXHRcdFx0Ly8gSGlkZSBib3JkZXIgaWYgaWNvbiB3cmFwcGVyIGhhcyBkYXJrIGNvbG9yXG5cdFx0XHQmW2NsYXNzKj1iZy1dOm5vdCguYmctd2hpdGUpOm5vdCguYmctbGlnaHQpOm5vdCguYmctdHJhbnNwYXJlbnQpIHtcblx0XHRcdFx0Ym94LXNoYWRvdzogbm9uZTtcblx0XHRcdH1cblxuXHRcdFx0Ly8gSWNvblxuXHRcdFx0PiBpIHtcblx0XHRcdFx0dG9wOiAwO1xuXHRcdFx0fVxuXHRcdH1cblxuXHRcdC8vIEltYWdlXG5cdFx0aW1nIHtcblx0XHRcdEBpbmNsdWRlIHNpemUoJHRpbWVsaW5lLWljb24tc2l6ZSAtIHJlbS1jYWxjKCR0aW1lbGluZS1pY29uLWJvcmRlci13aWR0aCAqIDIpKTtcblx0XHRcdEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGJvcmRlci1yYWRpdXMtY2lyY2xlKTtcblx0XHR9XG5cdH1cblxuXG5cdC8vXG5cdC8vIFJlc3BvbnNpdmUgY29uZmlnXG5cdC8vXG5cblx0QGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChtZCkge1xuXG5cblx0XHQvLyBQb3NpdGlvbnNcblx0XHQvLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuXHRcdC8vIENlbnRlciBsYXlvdXRcblx0XHQudGltZWxpbmUtY2VudGVyIHtcblxuXHRcdFx0Ly8gTGVmdCBibG9ja3Ncblx0XHRcdC50aW1lbGluZS1yb3ctbGVmdCB7XG5cdFx0XHRcdG1hcmdpbi1yaWdodDogNTAlO1xuXHRcdFx0XHRwYWRkaW5nLXJpZ2h0OiAkdGltZWxpbmUtaWNvbi1zaXplIC0gcmVtLWNhbGMoJHRpbWVsaW5lLWljb24tYm9yZGVyLXdpZHRoKTtcblx0XHRcdH1cblxuXHRcdFx0Ly8gUmlnaHQgYmxvY2tzXG5cdFx0XHQudGltZWxpbmUtcm93LXJpZ2h0IHtcblx0XHRcdFx0bWFyZ2luLWxlZnQ6IDUwJTtcblx0XHRcdFx0cGFkZGluZy1sZWZ0OiAkdGltZWxpbmUtaWNvbi1zaXplIC0gcmVtLWNhbGMoJHRpbWVsaW5lLWljb24tYm9yZGVyLXdpZHRoKTtcblx0XHRcdH1cblx0XHR9XG5cblx0XHQvLyBMZWZ0IGxheW91dFxuXHRcdC50aW1lbGluZS1sZWZ0IHtcblxuXHRcdFx0Ly8gVmVydGljYWwgbGluZVxuXHRcdFx0LnRpbWVsaW5lLWNvbnRhaW5lcjphZnRlcixcblx0XHRcdCY6YmVmb3JlLFxuXHRcdFx0JjphZnRlcixcblx0XHRcdC50aW1lbGluZS1kYXRlOmJlZm9yZSxcblx0XHRcdC50aW1lbGluZS1kYXRlOmFmdGVyIHtcblx0XHRcdFx0bGVmdDogKCR0aW1lbGluZS1pY29uLXNpemUgLyAyKTtcblx0XHRcdH1cblxuXHRcdFx0Ly8gQ29udGVudCBwYWRkaW5nXG5cdFx0XHQudGltZWxpbmUtcm93LFxuXHRcdFx0LnRpbWVsaW5lLWRhdGUge1xuXHRcdFx0XHRwYWRkaW5nLWxlZnQ6ICgkdGltZWxpbmUtaWNvbi1zaXplICsgJHRpbWVsaW5lLWNvbnRlbnQtcGFkZGluZy14KTtcblx0XHRcdH1cblx0XHR9XG5cblx0XHQvLyBSaWdodCBsYXlvdXRcblx0XHQudGltZWxpbmUtcmlnaHQge1xuXG5cdFx0XHQvLyBWZXJ0aWNhbCBsaW5lXG5cdFx0XHQudGltZWxpbmUtY29udGFpbmVyOmFmdGVyLFxuXHRcdFx0JjpiZWZvcmUsXG5cdFx0XHQmOmFmdGVyLFxuXHRcdFx0LnRpbWVsaW5lLWRhdGU6YmVmb3JlLFxuXHRcdFx0LnRpbWVsaW5lLWRhdGU6YWZ0ZXIge1xuXHRcdFx0XHRsZWZ0OiBhdXRvO1xuXHRcdFx0XHRyaWdodDogKCR0aW1lbGluZS1pY29uLXNpemUgLyAyKTtcblx0XHRcdFx0bWFyZ2luLWxlZnQ6IDA7XG5cdFx0XHRcdG1hcmdpbi1yaWdodDogLSgkdGltZWxpbmUtbGluZS13aWR0aCk7XG5cdFx0XHR9XG5cdFx0XHQudGltZWxpbmUtY29udGFpbmVyOmFmdGVyIHtcblx0XHRcdFx0bWFyZ2luLXJpZ2h0OiAtKCR0aW1lbGluZS1saW5lLXdpZHRoIC8gMik7XG5cdFx0XHR9XG5cblx0XHRcdC8vIENvbnRlbnQgcGFkZGluZ1xuXHRcdFx0LnRpbWVsaW5lLXJvdyxcblx0XHRcdC50aW1lbGluZS1kYXRlIHtcblx0XHRcdFx0cGFkZGluZy1yaWdodDogKCR0aW1lbGluZS1pY29uLXNpemUgKyAkdGltZWxpbmUtY29udGVudC1wYWRkaW5nLXgpO1xuXHRcdFx0fVxuXHRcdH1cblxuXHRcdC8vIFJlZHVjZSBkYXRlIHZlcnRpY2FsIHNwYWNpbmcgaW4gYm90aFxuXHRcdC50aW1lbGluZS1sZWZ0IC50aW1lbGluZS1kYXRlLFxuXHRcdC50aW1lbGluZS1yaWdodCAudGltZWxpbmUtZGF0ZSB7XG5cdFx0XHRwYWRkaW5nLXRvcDogKCRzcGFjZXIgLyAyKTtcblx0XHRcdHBhZGRpbmctYm90dG9tOiAoJHNwYWNlciAvIDIpO1xuXHRcdH1cblxuXG5cdFx0Ly8gSWNvblxuXHRcdC8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG5cdFx0Ly8gQmFzZVxuXHRcdC50aW1lbGluZS1pY29uIHtcblx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRcdHRvcDogKCRzcGFjZXIgLyAyKTtcblxuXHRcdFx0Ly8gSG9yaXpvbnRhbCBsaW5lIGJhc2Vcblx0XHRcdCY6YWZ0ZXIge1xuXHRcdFx0XHRjb250ZW50OiBcIlwiO1xuXHRcdFx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0XHRcdHRvcDogNTAlO1xuXHRcdFx0XHRtYXJnaW4tdG9wOiAtKCR0aW1lbGluZS1saW5lLXdpZHRoIC8gMik7XG5cdFx0XHRcdGhlaWdodDogJHRpbWVsaW5lLWxpbmUtd2lkdGg7XG5cdFx0XHRcdHdpZHRoOiAoJHRpbWVsaW5lLWljb24tc2l6ZSAvIDIpIC0gcmVtLWNhbGMoJHRpbWVsaW5lLWljb24tYm9yZGVyLXdpZHRoICogMik7XG5cdFx0XHRcdGJhY2tncm91bmQtY29sb3I6ICR0aW1lbGluZS1saW5lLWNvbG9yO1xuXHRcdFx0XHR6LWluZGV4OiAxO1xuXHRcdFx0fVxuXHRcdH1cblxuXHRcdC8vIEluIGxlZnQgbGF5b3V0XG5cdFx0LnRpbWVsaW5lLWxlZnQge1xuXHRcdFx0LnRpbWVsaW5lLWljb24ge1xuXHRcdFx0XHRsZWZ0OiAwO1xuXG5cdFx0XHRcdC8vIFJpZ2h0IGxpbmVcblx0XHRcdFx0JjphZnRlciB7XG5cdFx0XHRcdFx0bGVmdDogMTAwJTtcblx0XHRcdFx0XHRtYXJnaW4tbGVmdDogJHRpbWVsaW5lLWljb24tYm9yZGVyLXdpZHRoO1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0fVxuXG5cdFx0Ly8gSW4gcmlnaHQgbGF5b3V0XG5cdFx0LnRpbWVsaW5lLXJpZ2h0IHtcblx0XHRcdC50aW1lbGluZS1pY29uIHtcblx0XHRcdFx0cmlnaHQ6IDA7XG5cblx0XHRcdFx0Ly8gTGVmdCBsaW5lXG5cdFx0XHRcdCY6YWZ0ZXIge1xuXHRcdFx0XHRcdHJpZ2h0OiAxMDAlO1xuXHRcdFx0XHRcdG1hcmdpbi1yaWdodDogJHRpbWVsaW5lLWljb24tYm9yZGVyLXdpZHRoO1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0fVxuXG5cdFx0Ly8gSW4gY2VudGVyZWQgbGF5b3V0XG5cdFx0LnRpbWVsaW5lLWNlbnRlciB7XG5cblx0XHRcdC8vIEluIGxlZnQgYmxvY2tcblx0XHRcdC50aW1lbGluZS1yb3ctbGVmdCB7XG5cdFx0XHRcdC50aW1lbGluZS1pY29uIHtcblx0XHRcdFx0XHRsZWZ0OiAxMDAlO1xuXHRcdFx0XHRcdG1hcmdpbi1sZWZ0OiAtKCR0aW1lbGluZS1pY29uLXNpemUgLyAyKTtcblxuXHRcdFx0XHRcdC8vIExlZnQgaG9yaXpvbnRhbCBsaW5lXG5cdFx0XHRcdFx0JjphZnRlciB7XG5cdFx0XHRcdFx0XHRyaWdodDogMTAwJTtcblx0XHRcdFx0XHRcdG1hcmdpbi1yaWdodDogJHRpbWVsaW5lLWljb24tYm9yZGVyLXdpZHRoO1xuXHRcdFx0XHRcdH1cblx0XHRcdFx0fVxuXHRcdFx0fVxuXG5cdFx0XHQvLyBJbiByaWdodCBibG9ja1xuXHRcdFx0LnRpbWVsaW5lLXJvdy1yaWdodCB7XG5cdFx0XHRcdC50aW1lbGluZS1pY29uIHtcblx0XHRcdFx0XHRyaWdodDogMTAwJTtcblx0XHRcdFx0XHRtYXJnaW4tcmlnaHQ6IC0oJHRpbWVsaW5lLWljb24tc2l6ZSAvIDIpO1xuXG5cdFx0XHRcdFx0Ly8gUmlnaHQgaG9yaXpvbnRhbCBsaW5lXG5cdFx0XHRcdFx0JjphZnRlciB7XG5cdFx0XHRcdFx0XHRsZWZ0OiAxMDAlO1xuXHRcdFx0XHRcdFx0bWFyZ2luLWxlZnQ6ICR0aW1lbGluZS1pY29uLWJvcmRlci13aWR0aDtcblx0XHRcdFx0XHR9XG5cdFx0XHRcdH1cblx0XHRcdH1cblxuXHRcdFx0Ly8gRnVsbCB3aWR0aCBwb3N0XG5cdFx0XHQudGltZWxpbmUtcm93LWZ1bGwgLnRpbWVsaW5lLWljb24ge1xuXHRcdFx0XHRwb3NpdGlvbjogc3RhdGljO1xuXG5cdFx0XHRcdC8vIFJlbW92ZSBob3Jpem9udGFsIGxpbmVcblx0XHRcdFx0JjphZnRlciB7XG5cdFx0XHRcdFx0Y29udGVudDogbm9uZTtcblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdH1cblxuXG5cdFx0Ly8gVGltZVxuXHRcdC8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG5cdFx0LnRpbWVsaW5lLXRpbWUge1xuXHRcdFx0cGFkZGluZzogMDtcblx0XHRcdHRleHQtYWxpZ246IGluaGVyaXQ7XG5cdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcblxuXHRcdFx0Ly8gSGlkZSBkb3RzXG5cdFx0XHQmOmJlZm9yZSB7XG5cdFx0XHRcdGNvbnRlbnQ6IG5vbmU7XG5cdFx0XHR9XG5cdFx0fVxuXG5cdFx0Ly8gSW4gbGVmdCBhbmQgcmlnaHQgbGF5b3V0c1xuXHRcdC50aW1lbGluZS1sZWZ0LFxuXHRcdC50aW1lbGluZS1yaWdodCB7XG5cdFx0XHQudGltZWxpbmUtdGltZSB7XG5cdFx0XHRcdHBhZGRpbmctdG9wOiAoJHNwYWNlciAvIDIpO1xuXHRcdFx0XHRtYXJnaW4tYm90dG9tOiAkc3BhY2VyO1xuXHRcdFx0XHRwYWRkaW5nLWxlZnQ6ICgkdGltZWxpbmUtY29udGVudC1wYWRkaW5nLXggLyAyKTtcblx0XHRcdH1cblx0XHR9XG5cdFx0LnRpbWVsaW5lLXJpZ2h0IC50aW1lbGluZS10aW1lIHtcblx0XHRcdHRleHQtYWxpZ246IHJpZ2h0O1xuXHRcdFx0cGFkZGluZy1sZWZ0OiAwO1xuXHRcdFx0cGFkZGluZy1yaWdodDogKCR0aW1lbGluZS1jb250ZW50LXBhZGRpbmcteCAvIDIpO1xuXHRcdH1cblxuXHRcdC8vIEluIGNlbnRlciBsYXlvdXRcblx0XHQudGltZWxpbmUtY2VudGVyIHtcblx0XHRcdC50aW1lbGluZS10aW1lLFxuXHRcdFx0LnRpbWVsaW5lLXJvdy1mdWxsIC50aW1lbGluZS10aW1lIHtcblx0XHRcdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdFx0XHRsZWZ0OiAxMDAlO1xuXHRcdFx0XHR0b3A6ICgkc3BhY2VyIC8gMikgKyByZW0tY2FsYygkdGltZWxpbmUtaWNvbi1ib3JkZXItd2lkdGgpO1xuXHRcdFx0XHR3aWR0aDogMTAwJTtcblx0XHRcdFx0cGFkZGluZy1sZWZ0OiAkdGltZWxpbmUtaWNvbi1zaXplIC0gcmVtLWNhbGMoJHRpbWVsaW5lLWljb24tYm9yZGVyLXdpZHRoKTtcblx0XHRcdH1cblxuXHRcdFx0Ly8gUmlnaHQgYWxpZ25lZCBwb3N0XG5cdFx0XHQudGltZWxpbmUtcm93LXJpZ2h0LFxuXHRcdFx0LnRpbWVsaW5lLXJvdy1mdWxsIHtcblx0XHRcdFx0LnRpbWVsaW5lLXRpbWUge1xuXHRcdFx0XHRcdGxlZnQ6IGF1dG87XG5cdFx0XHRcdFx0cmlnaHQ6IDEwMCU7XG5cdFx0XHRcdFx0cGFkZGluZy1sZWZ0OiAwO1xuXHRcdFx0XHRcdHBhZGRpbmctcmlnaHQ6ICR0aW1lbGluZS1pY29uLXNpemUgLSByZW0tY2FsYygkdGltZWxpbmUtaWNvbi1ib3JkZXItd2lkdGgpO1xuXHRcdFx0XHRcdHRleHQtYWxpZ246IHJpZ2h0O1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cblx0XHRcdC8vIEZ1bGwgd2lkdGggcG9zdFxuXHRcdFx0LnRpbWVsaW5lLXJvdy1mdWxsIC50aW1lbGluZS10aW1lIHtcblx0XHRcdFx0cmlnaHQ6IDUwJTtcblx0XHRcdFx0dG9wOiAkdGltZWxpbmUtaWNvbi1ib3JkZXItd2lkdGg7XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG59XG4iLCIvKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAqXG4gKiAgIyBDaGF0IGxheW91dHNcbiAqXG4gKiAgQ29udmVyc2F0aW9uIGNoYXQgc3R5bGVzIC0gbGF5b3V0cywgY2hhdCBlbGVtZW50cywgY29sb3JzLCBvcHRpb25zXG4gKlxuICogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuXG4vLyBDaGVjayBpZiBjb21wb25lbnQgaXMgZW5hYmxlZFxuQGlmICRlbmFibGUtY2hhdCB7XG5cbiAgICAvLyBTZXQgc2Nyb2xsYmFyIHRvIHRoZSBsb25nIGNoYXQgbGlzdFxuICAgIC5tZWRpYS1jaGF0LXNjcm9sbGFibGUge1xuICAgICAgICBtYXgtaGVpZ2h0OiAkY2hhdC1saXN0LW1heC1oZWlnaHQ7IFxuICAgICAgICBvdmVyZmxvdzogYXV0bztcbiAgICB9XG5cbiAgICAvLyBNZXNzYWdlIGxpc3RcbiAgICAubWVkaWEtY2hhdCB7XG5cbiAgICAgICAgLy8gU2V0IHNpZGUgc3BhY2luZyBmb3IgbWVzc2FnZSBib2RpZXNcbiAgICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChzbSkge1xuICAgICAgICAgICAgLm1lZGlhIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDIwJTtcblxuICAgICAgICAgICAgICAgIC8vIFJldmVyc2VkIGl0ZW1cbiAgICAgICAgICAgICAgICAmLm1lZGlhLWNoYXQtaXRlbS1yZXZlcnNlIHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogMjAlO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8vIE1lc3NhZ2UgYm9keVxuICAgIC5tZWRpYS1jaGF0LWl0ZW0ge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIHBhZGRpbmc6ICRjaGF0LW1lc3NhZ2UtcGFkZGluZy15ICRjaGF0LW1lc3NhZ2UtcGFkZGluZy14O1xuICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICBjb2xvcjogJGNoYXQtbWVzc2FnZS1jb2xvcjtcbiAgICAgICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkY2hhdC1tZXNzYWdlLWJvcmRlci1yYWRpdXMpO1xuXG4gICAgICAgIC8vIFNldCBkZWZhdWx0IGJnIGNvbG9yXG4gICAgICAgICY6bm90KFtjbGFzcyo9YmctXSkge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNoYXQtbWVzc2FnZS1iZztcbiAgICAgICAgICAgIGJvcmRlci1jb2xvcjogJGNoYXQtbWVzc2FnZS1iZztcbiAgICAgICAgfVxuXG4gICAgICAgIC8vIEFycm93IGJhc2VcbiAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgICAgICBsZWZ0OiAtKCRjaGF0LW1lc3NhZ2UtYXJyb3ctc2l6ZSk7XG4gICAgICAgICAgICB0b3A6ICgkY2hhdC1tZXNzYWdlLXBhZGRpbmcteSArICgkbGluZS1oZWlnaHQtY29tcHV0ZWQgLyAyKSAtIHJlbS1jYWxjKCRjaGF0LW1lc3NhZ2UtYXJyb3ctc2l6ZSkpO1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICAgICAgICBib3JkZXItdG9wOiAkY2hhdC1tZXNzYWdlLWFycm93LXNpemUgc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICBib3JkZXItcmlnaHQ6ICRjaGF0LW1lc3NhZ2UtYXJyb3ctc2l6ZSBzb2xpZDtcbiAgICAgICAgICAgIGJvcmRlci1yaWdodC1jb2xvcjogaW5oZXJpdDtcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b206ICRjaGF0LW1lc3NhZ2UtYXJyb3ctc2l6ZSBzb2xpZCB0cmFuc3BhcmVudDtcblxuICAgICAgICAgICAgLy8gUmV2ZXJzZWQgYXJyb3dcbiAgICAgICAgICAgIC5tZWRpYS1jaGF0LWl0ZW0tcmV2ZXJzZSAmIHtcbiAgICAgICAgICAgICAgICBsZWZ0OiBhdXRvO1xuICAgICAgICAgICAgICAgIHJpZ2h0OiAtKCRjaGF0LW1lc3NhZ2UtYXJyb3ctc2l6ZSk7XG4gICAgICAgICAgICAgICAgYm9yZGVyLXJpZ2h0OiAwO1xuICAgICAgICAgICAgICAgIGJvcmRlci1sZWZ0OiAkY2hhdC1tZXNzYWdlLWFycm93LXNpemUgc29saWQ7XG4gICAgICAgICAgICAgICAgYm9yZGVyLWxlZnQtY29sb3I6IGluaGVyaXQ7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBSZXZlcnNlZCBtZXNzYWdlIGJvZHlcbiAgICAubWVkaWEtY2hhdC1pdGVtLXJldmVyc2Uge1xuXG4gICAgICAgIC8vIE1lc3NhZ2VcbiAgICAgICAgLm1lZGlhLWNoYXQtaXRlbSB7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgICAgICAgY29sb3I6ICRjaGF0LW1lc3NhZ2UtcmV2ZXJzZWQtY29sb3I7XG5cbiAgICAgICAgICAgIC8vIFNldCBkZWZhdWx0IGJnIGNvbG9yXG4gICAgICAgICAgICAmOm5vdChbY2xhc3MqPWJnLV0pIHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY2hhdC1tZXNzYWdlLXJldmVyc2VkLWJnO1xuICAgICAgICAgICAgICAgIGJvcmRlci1jb2xvcjogJGNoYXQtbWVzc2FnZS1yZXZlcnNlZC1iZztcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC8vIENoYW5nZSB0ZXh0IGFsaWdubWVudFxuICAgICAgICAubWVkaWEtYm9keSB7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8vIEludmVyc2VkIG1lc3NhZ2UgbGlzdFxuICAgIC5tZWRpYS1jaGF0LWludmVyc2Uge1xuICAgICAgICAubWVkaWEtY2hhdC1pdGVtIHtcbiAgICAgICAgICAgIGNvbG9yOiAkY2hhdC1tZXNzYWdlLXJldmVyc2VkLWNvbG9yO1xuXG4gICAgICAgICAgICAvLyBDb2xvcnNcbiAgICAgICAgICAgICY6bm90KFtjbGFzcyo9YmctXSkge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjaGF0LW1lc3NhZ2UtcmV2ZXJzZWQtYmc7XG4gICAgICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiAkY2hhdC1tZXNzYWdlLXJldmVyc2VkLWJnO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLy8gUmV2ZXJzZWQgbWVzc2FnZVxuICAgICAgICAubWVkaWEtY2hhdC1pdGVtLXJldmVyc2Uge1xuICAgICAgICAgICAgLm1lZGlhLWNoYXQtaXRlbSB7XG4gICAgICAgICAgICAgICAgY29sb3I6ICRjaGF0LW1lc3NhZ2UtY29sb3I7XG5cbiAgICAgICAgICAgICAgICAvLyBDb2xvcnNcbiAgICAgICAgICAgICAgICAmOm5vdChbY2xhc3MqPWJnLV0pIHtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNoYXQtbWVzc2FnZS1iZztcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiAkY2hhdC1tZXNzYWdlLWJnO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cbiIsIi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICpcbiAqICAjIEVycm9yIHBhZ2VzXG4gKlxuICogIFN0eWxlcyBmb3IgZXJyb3IgYW5kIG9mZmxpbmUgcGFnZXNcbiAqXG4gKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5cbi8vIENoZWNrIGlmIGNvbXBvbmVudCBpcyBlbmFibGVkXG5AaWYgJGVuYWJsZS1lcnJvciB7XG5cblx0Ly8gRGVmYXVsdCB0aXRsZVxuXHQuZXJyb3ItdGl0bGUgeyBcblx0XHRjb2xvcjogJGVycm9yLXRpdGxlLWNvbG9yOyBcblx0XHRmb250LXNpemU6ICRlcnJvci10aXRsZS1mb250LXNpemUtc207IFxuXHRcdGxpbmUtaGVpZ2h0OiAxOyBcblx0XHRtYXJnaW4tYm90dG9tOiAoJHNwYWNlciAqIDIpOyBcblx0XHRmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LWxpZ2h0OyBcblx0XHR0ZXh0LXN0cm9rZTogMXB4IHRyYW5zcGFyZW50OyBcblx0XHRkaXNwbGF5OiBibG9jazsgXG5cdFx0dGV4dC1zaGFkb3c6IDAgMXB4IDAgI2NjYyxcblx0XHRcdFx0XHQgMCAycHggMCAjYzljOWM5LFxuXHRcdFx0XHRcdCAwIDNweCAwICNiYmIsXG5cdFx0XHRcdFx0IDAgNHB4IDAgI2I5YjliOSxcblx0XHRcdFx0XHQgMCA1cHggMCAjYWFhLFxuXHRcdFx0XHRcdCAwIDZweCAxcHggcmdiYSgkYmxhY2ssIDAuMSksXG5cdFx0XHRcdFx0IDAgMCA1cHggcmdiYSgkYmxhY2ssIDAuMSksXG5cdFx0XHRcdFx0IDAgMXB4IDNweCByZ2JhKCRibGFjaywgMC4zKSxcblx0XHRcdFx0XHQgMCAzcHggNXB4IHJnYmEoJGJsYWNrLCAwLjIpLFxuXHRcdFx0XHRcdCAwIDVweCAxMHB4IHJnYmEoJGJsYWNrLCAwLjI1KSxcblx0XHRcdFx0XHQgMCAxMHB4IDEwcHggcmdiYSgkYmxhY2ssIDAuMiksXG5cdFx0XHRcdFx0IDAgMjBweCAyMHB4IHJnYmEoJGJsYWNrLCAwLjE1KTtcblxuXHRcdC8vIFVzZSBiaWdnZXIgZm9udCBzaXplIG9uIGRlc2t0b3Bcblx0XHRAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKHNtKSB7XG5cdFx0XHRmb250LXNpemU6ICRlcnJvci10aXRsZS1mb250LXNpemU7XG5cdFx0fVxuXHR9XG5cblx0Ly8gVGl0bGUgaW4gb2ZmbGluZSBwYWdlXG5cdC5vZmZsaW5lLXRpdGxlIHsgXG5cdFx0Zm9udC1zaXplOiAkZXJyb3Itb2ZmbGluZS10aXRsZS1mb250LXNpemUtc207IFxuXG5cdFx0Ly8gVXNlIGJpZ2dlciBmb250IHNpemUgb24gZGVza3RvcFxuXHRcdEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoc20pIHtcblx0XHRcdGZvbnQtc2l6ZTogJGVycm9yLW9mZmxpbmUtdGl0bGUtZm9udC1zaXplOyBcblx0XHR9XG5cdH1cbn1cbiIsIi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuKlxuKiAgIyBIZWFkZXIgZWxlbWVudHNcbipcbiogIERpc3BsYXkgZGVmYXVsdCBhbmQgY3VzdG9tIGNvbXBvbmVudHMgaW4gcGFnZSBoZWFkZXIsIGNhcmQgaGVhZGVyIGFuZCBicmVhZGNydW1ic1xuKlxuKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5cbi8vIENoZWNrIGlmIGNvbXBvbmVudCBpcyBlbmFibGVkXG5AaWYgJGVuYWJsZS1oZWFkZXItZWxlbWVudHMge1xuXG4gICAgLy8gQmFzZVxuICAgIC5oZWFkZXItZWxlbWVudHMge1xuXG4gICAgICAgIC8vIEluc2lkZSBjYXJkIGhlYWRlclxuICAgICAgICAuY2FyZC1oZWFkZXIgJiB7XG4gICAgICAgICAgICBwYWRkaW5nLXRvcDogJGNhcmQtc3BhY2VyLXk7XG4gICAgICAgIH1cblxuXG4gICAgICAgIC8vXG4gICAgICAgIC8vIEluc2lkZSBwYWdlIGhlYWRlclxuICAgICAgICAvL1xuXG4gICAgICAgIC8vIEJhc2VcbiAgICAgICAgLnBhZ2UtaGVhZGVyLWNvbnRlbnQgJiB7XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogLSgkcGFnZS1oZWFkZXItcGFkZGluZy14KTtcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogLSgkcGFnZS1oZWFkZXItcGFkZGluZy14KTtcbiAgICAgICAgICAgIHBhZGRpbmc6ICRoZWFkZXItZWxlbWVudHMtcGFkZGluZy15ICRoZWFkZXItZWxlbWVudHMtcGFkZGluZy14O1xuICAgICAgICAgICAgYm9yZGVyLXRvcDogJHBhZ2UtaGVhZGVyLWVsZW1lbnRzLWJvcmRlci13aWR0aCBzb2xpZCBkYXJrZW4oJGJvZHktYmcsIDE1JSk7XG4gICAgICAgICAgICBib3JkZXItYm90dG9tOiAkcGFnZS1oZWFkZXItZWxlbWVudHMtYm9yZGVyLXdpZHRoIHNvbGlkIGRhcmtlbigkYm9keS1iZywgMTUlKTtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IGRhcmtlbigkYm9keS1iZywgMi41JSk7XG4gICAgICAgIH1cblxuICAgICAgICAvLyBMaWdodCBwYWdlIGhlYWRlclxuICAgICAgICAucGFnZS1oZWFkZXItbGlnaHQgJiB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcGFnZS1oZWFkZXItbGlnaHQtZWxlbWVudHMtYmc7XG4gICAgICAgICAgICBib3JkZXItY29sb3I6ICRwYWdlLWhlYWRlci1saWdodC1lbGVtZW50cy1ib3JkZXItY29sb3I7XG4gICAgICAgICAgICBib3JkZXItYm90dG9tOiAwO1xuICAgICAgICB9XG5cbiAgICAgICAgLy8gRGFyayBwYWdlIGhlYWRlclxuICAgICAgICAucGFnZS1oZWFkZXItZGFyayAmIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRwYWdlLWhlYWRlci1kYXJrLWVsZW1lbnRzLWJnO1xuICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiAkcGFnZS1oZWFkZXItZGFyay1lbGVtZW50cy1ib3JkZXItY29sb3I7XG4gICAgICAgICAgICBib3JkZXItYm90dG9tOiAwO1xuICAgICAgICB9XG5cblxuICAgICAgICAvL1xuICAgICAgICAvLyBJbnNpZGUgYnJlYWRjcnVtYiBsaW5lXG4gICAgICAgIC8vXG5cbiAgICAgICAgLy8gQmFzZVxuICAgICAgICAuYnJlYWRjcnVtYi1saW5lICYge1xuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IC0oJGJyZWFkY3J1bWItbGluZS1wYWRkaW5nLXgpO1xuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAtKCRicmVhZGNydW1iLWxpbmUtcGFkZGluZy14KTtcbiAgICAgICAgICAgIHBhZGRpbmc6IDAgJGJyZWFkY3J1bWItbGluZS1wYWRkaW5nLXg7XG4gICAgICAgICAgICBib3JkZXItdG9wOiAkYnJlYWRjcnVtYi1saW5lLWVsZW1lbnRzLWJvcmRlci13aWR0aCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICAgICAgfVxuXG4gICAgICAgIC8vIExpZ2h0IGJyZWFkY3J1bWIgbGluZVxuICAgICAgICAuYnJlYWRjcnVtYi1saW5lLWxpZ2h0ICYge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGJyZWFkY3J1bWItbGluZS1saWdodC1lbGVtZW50cy1iZztcbiAgICAgICAgICAgIGJvcmRlci1jb2xvcjogJGJyZWFkY3J1bWItbGluZS1saWdodC1lbGVtZW50cy1ib3JkZXItY29sb3I7XG4gICAgICAgIH1cblxuICAgICAgICAvLyBEYXJrIGJyZWFkY3J1bWIgbGluZVxuICAgICAgICAuYnJlYWRjcnVtYi1saW5lLWRhcmsgJiB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYnJlYWRjcnVtYi1saW5lLWRhcmstZWxlbWVudHMtYmc7XG4gICAgICAgICAgICBib3JkZXItY29sb3I6ICRicmVhZGNydW1iLWxpbmUtZGFyay1lbGVtZW50cy1ib3JkZXItY29sb3I7XG4gICAgICAgIH1cblxuXG4gICAgICAgIC8vXG4gICAgICAgIC8vIE1pc2NcbiAgICAgICAgLy9cblxuICAgICAgICAvLyBSZW1vdmUgYm90dG9tIG1hcmdpbiBmcm9tIGxhc3QgZm9ybSBncm91cFxuICAgICAgICAuZm9ybS1ncm91cCB7XG4gICAgICAgICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBNb2JpbGUgdG9nZ2xlclxuICAgIC5oZWFkZXItZWxlbWVudHMtdG9nZ2xlLFxuICAgIC5mb290ZXItZWxlbWVudHMtdG9nZ2xlIHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgICAgIGFsaWduLXNlbGY6IGNlbnRlcjtcbiAgICB9XG5cblxuICAgIC8vXG4gICAgLy8gR2VuZXJhdGUgc3R5bGVzIGZvciBtdWx0aXBsZSBicmVha3BvaW50c1xuICAgIC8vXG4gICAgLy8gQ2xhc3NlczogLmhlYWRlci1lbGVtZW50cy1pbmxpbmUgYW5kIC5oZWFkZXItZWxlbWVudHMtW2JyZWFrcG9pbnRdLWlubGluZVxuICAgIC8vXG5cbiAgICBAZWFjaCAkYnJlYWtwb2ludCBpbiBtYXAta2V5cygkZ3JpZC1icmVha3BvaW50cykge1xuICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRicmVha3BvaW50KSB7XG4gICAgICAgICAgICAkaW5maXg6IGJyZWFrcG9pbnQtaW5maXgoJGJyZWFrcG9pbnQsICRncmlkLWJyZWFrcG9pbnRzKTtcblxuICAgICAgICAgICAgLmhlYWRlci1lbGVtZW50cyN7JGluZml4fS1pbmxpbmUge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgICAgICAgICAgICAgZmxleC13cmFwOiBub3dyYXA7XG5cbiAgICAgICAgICAgICAgICAvLyBIZWFkZXIgZWxlbWVudHMgY29udGFpbmVyXG4gICAgICAgICAgICAgICAgLmhlYWRlci1lbGVtZW50cyB7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXghaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAgICAgICAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICAgICAgICAgICAgICBib3JkZXI6IDA7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgLy8gVGFicyBpbnNpZGUgY2FyZCBoZWFkZXJcbiAgICAgICAgICAgICAgICAuY2FyZC1oZWFkZXItdGFicyB7XG4gICAgICAgICAgICAgICAgICAgIC5uYXYtbGluayB7XG4gICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLXRvcDogJGNhcmQtc3BhY2VyLXkgKyByZW0tY2FsYygkY2FyZC1ib3JkZXItd2lkdGgpO1xuICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1ib3R0b206ICRjYXJkLXNwYWNlci15ICsgcmVtLWNhbGMoJGNhcmQtYm9yZGVyLXdpZHRoKTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cbiIsIi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICpcbiAqICAjIEhlbHBlciBjbGFzc2VzXG4gKlxuICogIEN1c3RvbSBoZWxwZXIgY2xhc3NlcyB1c2VkIGluIHRoZSB0ZW1wbGF0ZS5cbiAqXG4gKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5cblxuLy8gQ29udGVudCBoZWxwZXJzXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi8vIEZvbnQgc2l6ZVxuLmZvbnQtc2l6ZS1sZyB7XG4gICAgZm9udC1zaXplOiAkZm9udC1zaXplLWxnO1xufVxuLmZvbnQtc2l6ZS1iYXNlIHtcbiAgICBmb250LXNpemU6ICRmb250LXNpemUtYmFzZTtcbn1cbi5mb250LXNpemUtc20ge1xuICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1zbTtcbn1cbi5mb250LXNpemUteHMge1xuICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS14cztcbn1cblxuLy8gTGluZSBoZWlnaHRcbi5saW5lLWhlaWdodC1sZyB7XG4gICAgbGluZS1oZWlnaHQ6ICRsaW5lLWhlaWdodC1sZztcbn1cbi5saW5lLWhlaWdodC1iYXNlIHtcbiAgICBsaW5lLWhlaWdodDogJGxpbmUtaGVpZ2h0LWJhc2U7XG59XG4ubGluZS1oZWlnaHQtc20ge1xuICAgIGxpbmUtaGVpZ2h0OiAkbGluZS1oZWlnaHQtc207XG59XG4ubGluZS1oZWlnaHQteHMge1xuICAgIGxpbmUtaGVpZ2h0OiAkbGluZS1oZWlnaHQteHM7XG59XG4ubGluZS1oZWlnaHQtMSB7XG4gICAgbGluZS1oZWlnaHQ6IDE7XG59XG5cbi8vIE9wYWNpdHlcbi5vcGFjaXR5LTc1IHtcbiAgICBvcGFjaXR5OiAwLjc1O1xufVxuLm9wYWNpdHktNTAge1xuICAgIG9wYWNpdHk6IDAuNTtcbn1cbi5vcGFjaXR5LTI1IHtcbiAgICBvcGFjaXR5OiAwLjI1O1xufVxuLm9wYWNpdHktMCB7XG4gICAgb3BhY2l0eTogMDtcbn1cblxuLy8gRWRnZXNcbi50b3Age1xuICAgICYtMCB7XG4gICAgICAgIHRvcDogMDtcbiAgICB9XG4gICAgJi1hdXRvIHtcbiAgICAgICAgdG9wOiBhdXRvO1xuICAgIH1cbn1cbi5ib3R0b20ge1xuICAgICYtMCB7XG4gICAgICAgIGJvdHRvbTogMDtcbiAgICB9XG4gICAgJi1hdXRvIHtcbiAgICAgICAgYm90dG9tOiBhdXRvO1xuICAgIH1cbn1cbi5sZWZ0IHtcbiAgICAmLTAge1xuICAgICAgICBsZWZ0OiAwO1xuICAgIH1cbiAgICAmLWF1dG8ge1xuICAgICAgICBsZWZ0OiBhdXRvO1xuICAgIH1cbn1cbi5yaWdodCB7XG4gICAgJi0wIHtcbiAgICAgICAgcmlnaHQ6IDA7XG4gICAgfVxuICAgICYtYXV0byB7XG4gICAgICAgIHJpZ2h0OiBhdXRvO1xuICAgIH1cbn1cblxuLy8gQ3Vyc29yc1xuLmN1cnNvci1wb2ludGVyIHtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG59XG4uY3Vyc29yLW1vdmUge1xuICAgIGN1cnNvcjogbW92ZTtcbn1cbi5jdXJzb3ItZGVmYXVsdCB7XG4gICAgY3Vyc29yOiBkZWZhdWx0O1xufVxuLmN1cnNvci1kaXNhYmxlZCB7XG4gICAgY3Vyc29yOiAkY3Vyc29yLWRpc2FibGVkO1xufVxuXG4vLyBPdmVyZmxvd1xuLm92ZXJmbG93LWhpZGRlbiB7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cbi5vdmVyZmxvdy12aXNpYmxlIHtcbiAgICBvdmVyZmxvdzogdmlzaWJsZTtcbn1cbi5vdmVyZmxvdy1hdXRvIHtcbiAgICBvdmVyZmxvdzogYXV0bztcbn1cblxuXG5cbi8vIEJvcmRlcnNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLy8gU2V0IGJvcmRlciB3aWR0aCB0byAwXG4uYm9yZGVyLXdpZHRoLTAge1xuICAgIGJvcmRlci13aWR0aDogMDtcbn1cblxuLy8gVmVydGljYWwgYm9yZGVyc1xuLmJvcmRlci15LTAge1xuICAgIGJvcmRlci10b3A6IDAgIWltcG9ydGFudDtcbiAgICBib3JkZXItYm90dG9tOiAwICFpbXBvcnRhbnQ7XG59XG5cbi8vIEhvcml6b250YWwgYm9yZGVyc1xuLmJvcmRlci14LTAge1xuICAgIGJvcmRlci1sZWZ0OiAwICFpbXBvcnRhbnQ7XG4gICAgYm9yZGVyLXJpZ2h0OiAwICFpbXBvcnRhbnQ7XG59XG5cblxuLy9cbi8vIEJvcmRlciB3aWR0aHNcbi8vXG5cbi8vIERlZmF1bHQgYm9yZGVyIHdpZHRoXG4uYm9yZGVyLTEge1xuICAgIGJvcmRlcjogJGJvcmRlci13aWR0aCBzb2xpZDtcbn1cbi5ib3JkZXItdG9wLTEge1xuICAgIGJvcmRlci10b3A6ICRib3JkZXItd2lkdGggc29saWQ7XG59XG4uYm9yZGVyLWJvdHRvbS0xIHtcbiAgICBib3JkZXItYm90dG9tOiAkYm9yZGVyLXdpZHRoIHNvbGlkO1xufVxuLmJvcmRlci1sZWZ0LTEge1xuICAgIGJvcmRlci1sZWZ0OiAkYm9yZGVyLXdpZHRoIHNvbGlkO1xufVxuLmJvcmRlci1yaWdodC0xIHtcbiAgICBib3JkZXItcmlnaHQ6ICRib3JkZXItd2lkdGggc29saWQ7XG59XG4uYm9yZGVyLXktMSB7XG4gICAgYm9yZGVyLXRvcDogJGJvcmRlci13aWR0aCBzb2xpZDtcbiAgICBib3JkZXItYm90dG9tOiAkYm9yZGVyLXdpZHRoIHNvbGlkO1xufVxuLmJvcmRlci14LTEge1xuICAgIGJvcmRlci1sZWZ0OiAkYm9yZGVyLXdpZHRoIHNvbGlkO1xuICAgIGJvcmRlci1yaWdodDogJGJvcmRlci13aWR0aCBzb2xpZDtcbn1cblxuLy8gRG91YmxlIGJvcmRlclxuLmJvcmRlci0yIHtcbiAgICBib3JkZXI6ICgkYm9yZGVyLXdpZHRoICogMikgc29saWQ7XG59XG4uYm9yZGVyLXRvcC0yIHtcbiAgICBib3JkZXItdG9wOiAoJGJvcmRlci13aWR0aCAqIDIpIHNvbGlkO1xufVxuLmJvcmRlci1ib3R0b20tMiB7XG4gICAgYm9yZGVyLWJvdHRvbTogKCRib3JkZXItd2lkdGggKiAyKSBzb2xpZDtcbn1cbi5ib3JkZXItbGVmdC0yIHtcbiAgICBib3JkZXItbGVmdDogKCRib3JkZXItd2lkdGggKiAyKSBzb2xpZDtcbn1cbi5ib3JkZXItcmlnaHQtMiB7XG4gICAgYm9yZGVyLXJpZ2h0OiAoJGJvcmRlci13aWR0aCAqIDIpIHNvbGlkO1xufVxuLmJvcmRlci15LTIge1xuICAgIGJvcmRlci10b3A6ICgkYm9yZGVyLXdpZHRoICogMikgc29saWQ7XG4gICAgYm9yZGVyLWJvdHRvbTogKCRib3JkZXItd2lkdGggKiAyKSBzb2xpZDtcbn1cbi5ib3JkZXIteC0yIHtcbiAgICBib3JkZXItbGVmdDogKCRib3JkZXItd2lkdGggKiAyKSBzb2xpZDtcbiAgICBib3JkZXItcmlnaHQ6ICgkYm9yZGVyLXdpZHRoICogMikgc29saWQ7XG59XG5cbi8vIFRyaXBwbGUgYm9yZGVyXG4uYm9yZGVyLTMge1xuICAgIGJvcmRlcjogKCRib3JkZXItd2lkdGggKiAzKSBzb2xpZDtcbn1cbi5ib3JkZXItdG9wLTMge1xuICAgIGJvcmRlci10b3A6ICgkYm9yZGVyLXdpZHRoICogMykgc29saWQ7XG59XG4uYm9yZGVyLWJvdHRvbS0zIHtcbiAgICBib3JkZXItYm90dG9tOiAoJGJvcmRlci13aWR0aCAqIDMpIHNvbGlkO1xufVxuLmJvcmRlci1sZWZ0LTMge1xuICAgIGJvcmRlci1sZWZ0OiAoJGJvcmRlci13aWR0aCAqIDMpIHNvbGlkO1xufVxuLmJvcmRlci1yaWdodC0zIHtcbiAgICBib3JkZXItcmlnaHQ6ICgkYm9yZGVyLXdpZHRoICogMykgc29saWQ7XG59XG4uYm9yZGVyLXktMyB7XG4gICAgYm9yZGVyLXRvcDogKCRib3JkZXItd2lkdGggKiAzKSBzb2xpZDtcbiAgICBib3JkZXItYm90dG9tOiAoJGJvcmRlci13aWR0aCAqIDMpIHNvbGlkO1xufVxuLmJvcmRlci14LTMge1xuICAgIGJvcmRlci1sZWZ0OiAoJGJvcmRlci13aWR0aCAqIDMpIHNvbGlkO1xuICAgIGJvcmRlci1yaWdodDogKCRib3JkZXItd2lkdGggKiAzKSBzb2xpZDtcbn1cblxuLy8gQm9yZGVyIHN0eWxlXG4uYm9yZGVyIHtcblxuICAgIC8vIERhc2hlZFxuICAgICYtZGFzaGVkIHtcbiAgICAgICAgYm9yZGVyLXN0eWxlOiBkYXNoZWQ7XG4gICAgfVxuICAgICYtdG9wLWRhc2hlZCB7XG4gICAgICAgIGJvcmRlci10b3Atc3R5bGU6IGRhc2hlZDtcbiAgICB9XG4gICAgJi1ib3R0b20tZGFzaGVkIHtcbiAgICAgICAgYm9yZGVyLWJvdHRvbS1zdHlsZTogZGFzaGVkO1xuICAgIH1cbiAgICAmLWxlZnQtZGFzaGVkIHtcbiAgICAgICAgYm9yZGVyLWxlZnQtc3R5bGU6IGRhc2hlZDtcbiAgICB9XG4gICAgJi1yaWdodC1kYXNoZWQge1xuICAgICAgICBib3JkZXItcmlnaHQtc3R5bGU6IGRhc2hlZDtcbiAgICB9XG5cbiAgICAvLyBEb3R0ZWRcbiAgICAmLWRvdHRlZCB7XG4gICAgICAgIGJvcmRlci1zdHlsZTogZG90dGVkO1xuICAgIH1cbn1cblxuXG5cbi8vIFJvdW5kZWQgY29ybmVyc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4vLyBGdWxseSByb3VuZGVkIGJvcmRlcnNcbi5yb3VuZGVkLXJvdW5kIHtcbiAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRib3JkZXItcmFkaXVzLXJvdW5kICFpbXBvcnRhbnQpO1xufVxuLnJvdW5kZWQtdG9wLXJvdW5kIHtcbiAgICBAaW5jbHVkZSBib3JkZXItdG9wLXJhZGl1cygkYm9yZGVyLXJhZGl1cy1yb3VuZCAhaW1wb3J0YW50KTtcbn1cbi5yb3VuZGVkLWJvdHRvbS1yb3VuZCB7XG4gICAgQGluY2x1ZGUgYm9yZGVyLWJvdHRvbS1yYWRpdXMoJGJvcmRlci1yYWRpdXMtcm91bmQgIWltcG9ydGFudCk7XG59XG4ucm91bmRlZC1sZWZ0LXJvdW5kIHtcbiAgICBAaW5jbHVkZSBib3JkZXItbGVmdC1yYWRpdXMoJGJvcmRlci1yYWRpdXMtcm91bmQgIWltcG9ydGFudCk7XG59XG4ucm91bmRlZC1yaWdodC1yb3VuZCB7XG4gICAgQGluY2x1ZGUgYm9yZGVyLXJpZ2h0LXJhZGl1cygkYm9yZGVyLXJhZGl1cy1yb3VuZCAhaW1wb3J0YW50KTtcbn1cblxuXG4vL1xuLy8gUmVtb3ZlIHJvdW5kZWQgY29ybmVycyBmcm9tIHNwZWNpZmljIHNpZGVcbi8vXG5cbi5yb3VuZGVkLXRvcC0wIHtcbiAgICBAaW5jbHVkZSBib3JkZXItdG9wLXJhZGl1cygwICFpbXBvcnRhbnQpO1xufVxuLnJvdW5kZWQtYm90dG9tLTAge1xuICAgIEBpbmNsdWRlIGJvcmRlci1ib3R0b20tcmFkaXVzKDAgIWltcG9ydGFudCk7XG59XG4ucm91bmRlZC1sZWZ0LTAge1xuICAgIEBpbmNsdWRlIGJvcmRlci1sZWZ0LXJhZGl1cygwICFpbXBvcnRhbnQpO1xufVxuLnJvdW5kZWQtcmlnaHQtMCB7XG4gICAgQGluY2x1ZGUgYm9yZGVyLXJpZ2h0LXJhZGl1cygwICFpbXBvcnRhbnQpO1xufVxuXG5cblxuLy8gVHJhbnNmb3Jtc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4vL1xuLy8gUm90YXRpb25cbi8vXG5cbi8vIEJhc2ljIGRpcmVjdGlvblxuLnJvdGF0ZS00NSB7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoNDVkZWcpO1xufVxuLnJvdGF0ZS05MCB7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoOTBkZWcpO1xufVxuLnJvdGF0ZS0xODAge1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDE4MGRlZyk7XG59XG5cbi8vIEludmVyc2VkXG4ucm90YXRlLTQ1LWludmVyc2Uge1xuICAgIHRyYW5zZm9ybTogcm90YXRlKC00NWRlZyk7XG59XG4ucm90YXRlLTkwLWludmVyc2Uge1xuICAgIHRyYW5zZm9ybTogcm90YXRlKC05MGRlZyk7XG59XG4ucm90YXRlLTE4MC1pbnZlcnNlIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtMTgwZGVnKTtcbn1cblxuXG4vL1xuLy8gU3Bpbm5lciBhbmltYXRpb25cbi8vXG5cbi8vIERlZmF1bHRcbi5zcGlubmVyIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgYW5pbWF0aW9uOiByb3RhdGlvbiAxcyBsaW5lYXIgaW5maW5pdGU7XG59XG5cbi8vIFJldmVyc2VkXG4uc3Bpbm5lci1yZXZlcnNlIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgYW5pbWF0aW9uOiByb3RhdGlvbiAxcyBsaW5lYXIgaW5maW5pdGU7XG59XG5cbi8vIERlZmF1bHQgcm90YXRpb25cbkAtd2Via2l0LWtleWZyYW1lcyByb3RhdGlvbiB7XG4gICAgMCUgey13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7fVxuICAgIDEwMCUgey13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKTt9XG59XG5ALW1vei1rZXlmcmFtZXMgcm90YXRpb24ge1xuICAgIDAlIHstbW96LXRyYW5zZm9ybTogcm90YXRlKDBkZWcpO31cbiAgICAxMDAlIHstbW96LXRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7fVxufVxuQC1tcy1rZXlmcmFtZXMgcm90YXRpb24ge1xuICAgIDAlIHstbXMtdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7fVxuICAgIDEwMCUgey1tcy10cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpO31cbn1cbkAtby1rZXlmcmFtZXMgcm90YXRpb24ge1xuICAgIDAlIHstby10cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTt9XG4gICAgMTAwJSB7LW8tdHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKTt9XG59XG5Aa2V5ZnJhbWVzIHJvdGF0aW9uIHtcbiAgICAwJSB7dHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7fVxuICAgIDEwMCUge3RyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7fVxufVxuXG4vLyBJbnZlcnNlZCByb3RhdGlvblxuQC13ZWJraXQta2V5ZnJhbWVzIHJvdGF0aW9uX3JldmVyc2Uge1xuICAgIDAlIHstd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDBkZWcpO31cbiAgICAxMDAlIHstd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKC0zNjBkZWcpO31cbn1cbkAtbW96LWtleWZyYW1lcyByb3RhdGlvbl9yZXZlcnNlIHtcbiAgICAwJSB7LW1vei10cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTt9XG4gICAgMTAwJSB7LW1vei10cmFuc2Zvcm06IHJvdGF0ZSgtMzYwZGVnKTt9XG59XG5ALW1zLWtleWZyYW1lcyByb3RhdGlvbl9yZXZlcnNlIHtcbiAgICAwJSB7LW1zLXRyYW5zZm9ybTogcm90YXRlKDBkZWcpO31cbiAgICAxMDAlIHstbXMtdHJhbnNmb3JtOiByb3RhdGUoLTM2MGRlZyk7fVxufVxuQC1vLWtleWZyYW1lcyByb3RhdGlvbl9yZXZlcnNlIHtcbiAgICAwJSB7LW8tdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7fVxuICAgIDEwMCUgey1vLXRyYW5zZm9ybTogcm90YXRlKC0zNjBkZWcpO31cbn1cbkBrZXlmcmFtZXMgcm90YXRpb25fcmV2ZXJzZSB7XG4gICAgMCUge3RyYW5zZm9ybTogcm90YXRlKDBkZWcpO31cbiAgICAxMDAlIHt0cmFuc2Zvcm06IHJvdGF0ZSgtMzYwZGVnKTt9XG59XG5cblxuXG4vLyBTaXppbmdcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLy8gQXV0byBoZWlnaHRcbi5oLWF1dG8ge1xuICAgIGhlaWdodDogYXV0bztcbn1cblxuLy8gRWxlbWVudCB3aWR0aHNcbkBlYWNoICRicmVha3BvaW50IGluIG1hcC1rZXlzKCRncmlkLWJyZWFrcG9pbnRzKSB7XG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgkYnJlYWtwb2ludCkge1xuICAgICAgICAkaW5maXg6IGJyZWFrcG9pbnQtaW5maXgoJGJyZWFrcG9pbnQsICRncmlkLWJyZWFrcG9pbnRzKTtcbiAgICAgICAgLncjeyRpbmZpeH0tYXV0byB7IHdpZHRoOiBhdXRvICFpbXBvcnRhbnQ7IH1cblxuICAgICAgICAudyN7JGluZml4fS0yNSB7IHdpZHRoOiAyNSUgIWltcG9ydGFudDsgfVxuICAgICAgICAudyN7JGluZml4fS01MCB7IHdpZHRoOiA1MCUgIWltcG9ydGFudDsgfVxuICAgICAgICAudyN7JGluZml4fS03NSB7IHdpZHRoOiA3NSUgIWltcG9ydGFudDsgfVxuICAgICAgICAudyN7JGluZml4fS0xMDAgeyB3aWR0aDogMTAwJSAhaW1wb3J0YW50OyB9XG5cbiAgICAgICAgLndtaW4jeyRpbmZpeH0tMCB7IG1pbi13aWR0aDogMCAhaW1wb3J0YW50OyB9XG4gICAgICAgIC53bWluI3skaW5maXh9LTIwMCB7IG1pbi13aWR0aDogMjAwcHggIWltcG9ydGFudDsgfVxuICAgICAgICAud21pbiN7JGluZml4fS0yNTAgeyBtaW4td2lkdGg6IDI1MHB4ICFpbXBvcnRhbnQ7IH1cbiAgICAgICAgLndtaW4jeyRpbmZpeH0tMzAwIHsgbWluLXdpZHRoOiAzMDBweCAhaW1wb3J0YW50OyB9XG4gICAgICAgIC53bWluI3skaW5maXh9LTM1MCB7IG1pbi13aWR0aDogMzUwcHggIWltcG9ydGFudDsgfVxuICAgICAgICAud21pbiN7JGluZml4fS00MDAgeyBtaW4td2lkdGg6IDQwMHB4ICFpbXBvcnRhbnQ7IH1cbiAgICAgICAgLndtaW4jeyRpbmZpeH0tNDUwIHsgbWluLXdpZHRoOiA0NTBweCAhaW1wb3J0YW50OyB9XG4gICAgICAgIC53bWluI3skaW5maXh9LTUwMCB7IG1pbi13aWR0aDogNTAwcHggIWltcG9ydGFudDsgfVxuICAgICAgICAud21pbiN7JGluZml4fS01NTAgeyBtaW4td2lkdGg6IDU1MHB4ICFpbXBvcnRhbnQ7IH1cbiAgICAgICAgLndtaW4jeyRpbmZpeH0tNjAwIHsgbWluLXdpZHRoOiA2MDBweCAhaW1wb3J0YW50OyB9XG5cbiAgICAgICAgLmZsZXgjeyRpbmZpeH0tMSB7IGZsZXg6IDE7IH1cbiAgICB9XG59XG5cblxuXG4vLyBNaXNjXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi8vIERpc2FibGUgYWxsIHRyYW5zaXRpb25zXG4ubm8tdHJhbnNpdGlvbnMgKiB7XG4gICAgJixcbiAgICAmOmJlZm9yZSxcbiAgICAmOmFmdGVyIHtcbiAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbihub25lICFpbXBvcnRhbnQpO1xuICAgIH1cbn1cblxuLy8gUmVtb3ZlIGNhcmV0IGZyb20gLmRyb3Bkb3duLXRvZ2dsZSBlbGVtZW50XG4uY2FyZXQtMCB7XG4gICAgJjo6YmVmb3JlLFxuICAgICY6OmFmdGVyIHtcbiAgICAgICAgY29udGVudDogbm9uZTtcbiAgICB9XG59XG5cbi8vIFJlbW92ZSBib3ggc2hhZG93XG4uc2hhZG93LTAge1xuICAgIGJveC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDtcbn1cblxuLy8gUmVtb3ZlIG91dGxpbmVcbi5vdXRsaW5lLTAge1xuICAgIEBpbmNsdWRlIHBsYWluLWhvdmVyLWZvY3VzIHtcbiAgICAgICAgb3V0bGluZTogMDtcbiAgICB9XG59XG5cbi8vIFRleHQgc2hhZG93XG4udGV4dC1zaGFkb3ctZGFyayB7XG4gICAgdGV4dC1zaGFkb3c6IDAgMCAwLjE4NzVyZW0gcmdiYSgkYmxhY2ssIDAuNSk7XG59XG4udGV4dC1zaGFkb3ctbGlnaHQge1xuICAgIHRleHQtc2hhZG93OiAwIDAgMC4xODc1cmVtIHJnYmEoJHdoaXRlLCAwLjUpO1xufVxuXG5cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICpcbiAqICBUaGVtZSBzcGVjaWZpYyBzdHlsZXNcbiAqXG4gKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cblxuLy8gTWF0ZXJpYWwgdGhlbWVcbkBpZiAkdGhlbWUgPT0gJ21hdGVyaWFsJyB7XG5cbiAgICAvLyBTaGFkb3dzXG4gICAgLnNoYWRvdy0xIHtcbiAgICAgICAgYm94LXNoYWRvdzogJHNoYWRvdy1kZXB0aDE7XG4gICAgfVxuICAgIC5zaGFkb3ctMiB7XG4gICAgICAgIGJveC1zaGFkb3c6ICRzaGFkb3ctZGVwdGgyO1xuICAgIH1cbiAgICAuc2hhZG93LTMge1xuICAgICAgICBib3gtc2hhZG93OiAkc2hhZG93LWRlcHRoMztcbiAgICB9XG4gICAgLnNoYWRvdy00IHtcbiAgICAgICAgYm94LXNoYWRvdzogJHNoYWRvdy1kZXB0aDQ7XG4gICAgfVxuICAgIC5zaGFkb3ctNSB7XG4gICAgICAgIGJveC1zaGFkb3c6ICRzaGFkb3ctZGVwdGg1O1xuICAgIH1cbn1cbiIsIi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICpcbiAqICAjIERlbW8gc3R5bGVzXG4gKlxuICogIFN0eWxlcyB1c2VkIGZvciBkZW1vc3RyYXRpb24gcHVycG9zZXMgb25seVxuICpcbiAqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cblxuLy8gQ2hlY2sgaWYgY29tcG9uZW50IGlzIGVuYWJsZWRcbkBpZiAkZW5hYmxlLWRlbW8ge1xuXG5cbiAgICAvLyBqUXVlcnkgVUlcbiAgICAvLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuICAgIC5qcXVlcnl1aS1kZW1vLWVsZW1lbnQge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZ3JheS0xMDA7XG4gICAgICAgIGJvcmRlcjogKCRib3JkZXItd2lkdGggKiAyKSBkYXNoZWQgJGJvcmRlci1jb2xvcjtcbiAgICAgICAgY29sb3I6ICRjb2xvci1ncmV5LTUwMDtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICB6LWluZGV4OiAxMDtcbiAgICAgICAgQGluY2x1ZGUgc2l6ZSg5MHB4KTtcblxuICAgICAgICA+IHNwYW4ge1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgdG9wOiA1MCU7XG4gICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBTZWxlY3RhYmxlXG4gICAgLnNlbGVjdGFibGUtZGVtby1saXN0IHtcbiAgICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBtYXgtd2lkdGg6IDIwMHB4O1xuXG4gICAgICAgID4gLnVpLXNvcnRhYmxlLWhhbmRsZSxcbiAgICAgICAgPiAudWktc2VsZWN0ZWUge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGJ0bi1saWdodC1iZztcbiAgICAgICAgICAgIGJvcmRlcjogJGJ0bi1ib3JkZXItd2lkdGggc29saWQgJGJ0bi1saWdodC1ib3JkZXItY29sb3I7XG5cbiAgICAgICAgICAgICYudWktc2VsZWN0aW5nLFxuICAgICAgICAgICAgJi51aS1zZWxlY3RlZCB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLWJsdWUtNTAwIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICBib3JkZXItY29sb3I6ICRjb2xvci1ibHVlLTcwMCFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgID4gLnVpLXNvcnRhYmxlLWhlbHBlcjpmaXJzdC1jaGlsZCArIGxpIHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBTZWxlY3RhYmxlXG4gICAgLnNlbGVjdGFibGUtZGVtby1jb25uZWN0ZWQge1xuICAgICAgICAmICsgJiB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAkc3BhY2VyO1xuXG4gICAgICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKHNtKSB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogJGdyaWQtZ3V0dGVyLXdpZHRoO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLy8gRHJvcHBhYmxlXG4gICAgLmRyb3BwYWJsZS1kZW1vLXRhcmdldCB7XG4gICAgICAgIHdpZHRoOiAxMTBweDtcbiAgICAgICAgaGVpZ2h0OiAxMTBweDtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLXByaW1hcnktNTA7XG4gICAgICAgIGJvcmRlci1jb2xvcjogJGNvbG9yLXByaW1hcnktNTAwO1xuICAgICAgICBjb2xvcjogJGNvbG9yLXByaW1hcnktODAwO1xuICAgICAgICB6LWluZGV4OiA5O1xuICAgIH1cbiAgICAuZHJvcHBhYmxlLWRlbW8tZHJvcCB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1zdWNjZXNzLTUwO1xuICAgICAgICBib3JkZXItY29sb3I6ICRjb2xvci1zdWNjZXNzLTUwMDtcbiAgICAgICAgY29sb3I6ICRjb2xvci1zdWNjZXNzLTgwMDtcbiAgICB9XG5cblxuICAgIC8vIENvbG9yIHBhbGV0dGVcbiAgICAvLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuICAgIC5kZW1vLWNvbG9yIHtcbiAgICAgICAgaGVpZ2h0OiAxMHJlbTtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBAaW5jbHVkZSBib3JkZXItdG9wLXJhZGl1cygkYm9yZGVyLXJhZGl1cyk7XG5cbiAgICAgICAgPiBzcGFuIHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgIHBhZGRpbmc6IDAuMzc1cmVtO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgkYmxhY2ssIDAuMik7XG4gICAgICAgICAgICBmb250LXNpemU6ICRmb250LXNpemUtc207XG4gICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICB9XG4gICAgfVxuXG5cbiAgICAvLyBJY29ucyBzaG93Y2FzZVxuICAgIC8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4gICAgLmdseXBocyB7XG4gICAgICAgID4gZGl2ID4gZGl2IHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDAuNXJlbSAxcmVtO1xuICAgICAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbihhbGwgZWFzZS1pbi1vdXQgJGNvbXBvbmVudC10cmFuc2l0aW9uLXRpbWVyKTtcblxuICAgICAgICAgICAgLy8gSG92ZXIgc3RhdGVcbiAgICAgICAgICAgIEBpbmNsdWRlIGhvdmVyIHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3ItZGFyay01MDA7XG4gICAgICAgICAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRib3JkZXItcmFkaXVzKTtcblxuICAgICAgICAgICAgICAgIC50ZXh0LW11dGVkIHtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6IHJnYmEoJHdoaXRlLCAwLjc1KTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cblxuICAgIC8vIFZlbG9jaXR5IGFuaW1hdGlvbnMgYm94XG4gICAgLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbiAgICAuZGVtby12ZWxvY2l0eS1ib3gge1xuICAgICAgICBwYWRkaW5nOiAwLjc1cmVtIDFyZW07XG4gICAgICAgIG1hcmdpbi1ib3R0b206ICRzcGFjZXI7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAkZ3JheS01MDA7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGdyYXktMTAwO1xuICAgICAgICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cztcbiAgICAgICAgYm94LXNoYWRvdzogMCAwIDAgMCB0aGVtZS1jb2xvcihcInByaW1hcnlcIik7XG4gICAgfVxufVxuIiwiLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gKlxuICogICMgQ3VzdG9tIGNvbG9yIHN5c3RlbVxuICpcbiAqICBDdXN0b20gY29sb3Igc3lzdGVtIHN0eWxlcywgaW5jbHVkZXMgYmFja2dyb3VuZCwgYm9yZGVyIGFuZCB0ZXh0IGNvbG9yc1xuICpcbiAqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cblxuLy8gSW1wb3J0IGN1c3RvbSB0ZW1wbGF0ZSBjb25maWdcbkBpbXBvcnQgXCIuLi8uLi8uLi8uLi9jb25maWdcIjtcbkBpbXBvcnQgXCIuLi8uLi8uLi8uLi9zaGFyZWQvdXRpbHMvbGwtZnVuY3Rpb25zXCI7XG5AaW1wb3J0IFwiLi4vLi4vLi4vLi4vc2hhcmVkL3V0aWxzL2xsLW1peGluc1wiO1xuQGltcG9ydCBcIi4uLy4uLy4uLy4uL3RoZW1lcy9kZWZhdWx0L2NvbG9ycy9wYWxldHRlXCI7XG5cbi8vIENvcmUgdmFyaWFibGVzIGFuZCBtaXhpbnNcbkBpbXBvcnQgXCJ+Ym9vdHN0cmFwL3Njc3MvZnVuY3Rpb25zXCI7XG5AaW1wb3J0IFwifmJvb3RzdHJhcC9zY3NzL3ZhcmlhYmxlc1wiO1xuQGltcG9ydCBcIn5ib290c3RyYXAvc2Nzcy9taXhpbnNcIjtcblxuLy8gSW1wb3J0IHRlbXBsYXRlJ3MgdmFyaWFibGVzXG5AaW1wb3J0IFwiLi4vdmFyaWFibGVzL3ZhcmlhYmxlcy1jb3JlXCI7XG5AaW1wb3J0IFwiLi4vdmFyaWFibGVzL3ZhcmlhYmxlcy1jdXN0b21cIjtcbkBpbXBvcnQgXCIuLi8uLi8uLi8uLi90aGVtZXMvZGVmYXVsdC9ib290c3RyYXBfbGltaXRsZXNzL21peGluc1wiO1xuXG4vLyBDb2xvciBzeXN0ZW0sIGFsd2F5cyBsb2FkIGxhc3RcbkBpbXBvcnQgXCIuLi8uLi8uLi8uLi90aGVtZXMvZGVmYXVsdC9jb2xvcnMvY29sb3JzXCI7XG4iLCIvKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAqXG4gKiAgIyBDdXN0b20gY29sb3Igc3lzdGVtXG4gKlxuICogIEN1c3RvbSBjb2xvciBzeXN0ZW0gc3R5bGVzLiBJbmNsdWRlcyBiYWNrZ3JvdW5kLCBib3JkZXIgYW5kIHRleHQgY29sb3JzXG4gKlxuICogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuXG5cbi8vXG4vLyBDcmVhdGUgY29sb3IgbWFwXG4vL1xuXG4kbGwtdGhlbWUtY29sb3JzOiAoXG4gICAgcHJpbWFyeTogKFxuICAgICAgICBiYXNlOiAkY29sb3ItcHJpbWFyeS01MDAsXG4gICAgICAgIDUwOiAkY29sb3ItcHJpbWFyeS01MCxcbiAgICAgICAgMzAwOiAkY29sb3ItcHJpbWFyeS0zMDAsXG4gICAgICAgIDQwMDogJGNvbG9yLXByaW1hcnktNDAwLFxuICAgICAgICA2MDA6ICRjb2xvci1wcmltYXJ5LTYwMCxcbiAgICAgICAgNzAwOiAkY29sb3ItcHJpbWFyeS03MDAsXG4gICAgICAgIDgwMDogJGNvbG9yLXByaW1hcnktODAwXG4gICAgKSxcbiAgICBkYW5nZXI6IChcbiAgICAgICAgYmFzZTogJGNvbG9yLWRhbmdlci01MDAsXG4gICAgICAgIDUwOiAkY29sb3ItZGFuZ2VyLTUwLFxuICAgICAgICAzMDA6ICRjb2xvci1kYW5nZXItMzAwLFxuICAgICAgICA0MDA6ICRjb2xvci1kYW5nZXItNDAwLFxuICAgICAgICA2MDA6ICRjb2xvci1kYW5nZXItNjAwLFxuICAgICAgICA3MDA6ICRjb2xvci1kYW5nZXItNzAwLFxuICAgICAgICA4MDA6ICRjb2xvci1kYW5nZXItODAwXG4gICAgKSxcbiAgICBzdWNjZXNzOiAoXG4gICAgICAgIGJhc2U6ICRjb2xvci1zdWNjZXNzLTUwMCxcbiAgICAgICAgNTA6ICRjb2xvci1zdWNjZXNzLTUwLFxuICAgICAgICAzMDA6ICRjb2xvci1zdWNjZXNzLTMwMCxcbiAgICAgICAgNDAwOiAkY29sb3Itc3VjY2Vzcy00MDAsXG4gICAgICAgIDYwMDogJGNvbG9yLXN1Y2Nlc3MtNjAwLFxuICAgICAgICA3MDA6ICRjb2xvci1zdWNjZXNzLTcwMCxcbiAgICAgICAgODAwOiAkY29sb3Itc3VjY2Vzcy04MDBcbiAgICApLFxuICAgIHdhcm5pbmc6IChcbiAgICAgICAgYmFzZTogJGNvbG9yLXdhcm5pbmctNTAwLFxuICAgICAgICA1MDogJGNvbG9yLXdhcm5pbmctNTAsXG4gICAgICAgIDMwMDogJGNvbG9yLXdhcm5pbmctMzAwLFxuICAgICAgICA0MDA6ICRjb2xvci13YXJuaW5nLTQwMCxcbiAgICAgICAgNjAwOiAkY29sb3Itd2FybmluZy02MDAsXG4gICAgICAgIDcwMDogJGNvbG9yLXdhcm5pbmctNzAwLFxuICAgICAgICA4MDA6ICRjb2xvci13YXJuaW5nLTgwMFxuICAgICksXG4gICAgaW5mbzogKFxuICAgICAgICBiYXNlOiAkY29sb3ItaW5mby01MDAsXG4gICAgICAgIDUwOiAkY29sb3ItaW5mby01MCxcbiAgICAgICAgMzAwOiAkY29sb3ItaW5mby0zMDAsXG4gICAgICAgIDQwMDogJGNvbG9yLWluZm8tNDAwLFxuICAgICAgICA2MDA6ICRjb2xvci1pbmZvLTYwMCxcbiAgICAgICAgNzAwOiAkY29sb3ItaW5mby03MDAsXG4gICAgICAgIDgwMDogJGNvbG9yLWluZm8tODAwXG4gICAgKSxcbiAgICBwaW5rOiAoXG4gICAgICAgIGJhc2U6ICRjb2xvci1waW5rLTUwMCxcbiAgICAgICAgNTA6ICRjb2xvci1waW5rLTUwLFxuICAgICAgICAzMDA6ICRjb2xvci1waW5rLTMwMCxcbiAgICAgICAgNDAwOiAkY29sb3ItcGluay00MDAsXG4gICAgICAgIDYwMDogJGNvbG9yLXBpbmstNjAwLFxuICAgICAgICA3MDA6ICRjb2xvci1waW5rLTcwMCxcbiAgICAgICAgODAwOiAkY29sb3ItcGluay04MDBcbiAgICApLFxuICAgIHZpb2xldDogKFxuICAgICAgICBiYXNlOiAkY29sb3ItdmlvbGV0LTUwMCxcbiAgICAgICAgNTA6ICRjb2xvci12aW9sZXQtNTAsXG4gICAgICAgIDMwMDogJGNvbG9yLXZpb2xldC0zMDAsXG4gICAgICAgIDQwMDogJGNvbG9yLXZpb2xldC00MDAsXG4gICAgICAgIDYwMDogJGNvbG9yLXZpb2xldC02MDAsXG4gICAgICAgIDcwMDogJGNvbG9yLXZpb2xldC03MDAsXG4gICAgICAgIDgwMDogJGNvbG9yLXZpb2xldC04MDBcbiAgICApLFxuICAgIHB1cnBsZTogKFxuICAgICAgICBiYXNlOiAkY29sb3ItcHVycGxlLTUwMCxcbiAgICAgICAgNTA6ICRjb2xvci1wdXJwbGUtNTAsXG4gICAgICAgIDMwMDogJGNvbG9yLXB1cnBsZS0zMDAsXG4gICAgICAgIDQwMDogJGNvbG9yLXB1cnBsZS00MDAsXG4gICAgICAgIDYwMDogJGNvbG9yLXB1cnBsZS02MDAsXG4gICAgICAgIDcwMDogJGNvbG9yLXB1cnBsZS03MDAsXG4gICAgICAgIDgwMDogJGNvbG9yLXB1cnBsZS04MDBcbiAgICApLFxuICAgIGluZGlnbzogKFxuICAgICAgICBiYXNlOiAkY29sb3ItaW5kaWdvLTUwMCxcbiAgICAgICAgNTA6ICRjb2xvci1pbmRpZ28tNTAsXG4gICAgICAgIDMwMDogJGNvbG9yLWluZGlnby0zMDAsXG4gICAgICAgIDQwMDogJGNvbG9yLWluZGlnby00MDAsXG4gICAgICAgIDYwMDogJGNvbG9yLWluZGlnby02MDAsXG4gICAgICAgIDcwMDogJGNvbG9yLWluZGlnby03MDAsXG4gICAgICAgIDgwMDogJGNvbG9yLWluZGlnby04MDBcbiAgICApLFxuICAgIGJsdWU6IChcbiAgICAgICAgYmFzZTogJGNvbG9yLWJsdWUtNTAwLFxuICAgICAgICA1MDogJGNvbG9yLWJsdWUtNTAsXG4gICAgICAgIDMwMDogJGNvbG9yLWJsdWUtMzAwLFxuICAgICAgICA0MDA6ICRjb2xvci1ibHVlLTQwMCxcbiAgICAgICAgNjAwOiAkY29sb3ItYmx1ZS02MDAsXG4gICAgICAgIDcwMDogJGNvbG9yLWJsdWUtNzAwLFxuICAgICAgICA4MDA6ICRjb2xvci1ibHVlLTgwMFxuICAgICksXG4gICAgdGVhbDogKFxuICAgICAgICBiYXNlOiAkY29sb3ItdGVhbC01MDAsXG4gICAgICAgIDUwOiAkY29sb3ItdGVhbC01MCxcbiAgICAgICAgMzAwOiAkY29sb3ItdGVhbC0zMDAsXG4gICAgICAgIDQwMDogJGNvbG9yLXRlYWwtNDAwLFxuICAgICAgICA2MDA6ICRjb2xvci10ZWFsLTYwMCxcbiAgICAgICAgNzAwOiAkY29sb3ItdGVhbC03MDAsXG4gICAgICAgIDgwMDogJGNvbG9yLXRlYWwtODAwXG4gICAgKSxcbiAgICBncmVlbjogKFxuICAgICAgICBiYXNlOiAkY29sb3ItZ3JlZW4tNTAwLFxuICAgICAgICA1MDogJGNvbG9yLWdyZWVuLTUwLFxuICAgICAgICAzMDA6ICRjb2xvci1ncmVlbi0zMDAsXG4gICAgICAgIDQwMDogJGNvbG9yLWdyZWVuLTQwMCxcbiAgICAgICAgNjAwOiAkY29sb3ItZ3JlZW4tNjAwLFxuICAgICAgICA3MDA6ICRjb2xvci1ncmVlbi03MDAsXG4gICAgICAgIDgwMDogJGNvbG9yLWdyZWVuLTgwMFxuICAgICksXG4gICAgb3JhbmdlOiAoXG4gICAgICAgIGJhc2U6ICRjb2xvci1vcmFuZ2UtNTAwLFxuICAgICAgICA1MDogJGNvbG9yLW9yYW5nZS01MCxcbiAgICAgICAgMzAwOiAkY29sb3Itb3JhbmdlLTMwMCxcbiAgICAgICAgNDAwOiAkY29sb3Itb3JhbmdlLTQwMCxcbiAgICAgICAgNjAwOiAkY29sb3Itb3JhbmdlLTYwMCxcbiAgICAgICAgNzAwOiAkY29sb3Itb3JhbmdlLTcwMCxcbiAgICAgICAgODAwOiAkY29sb3Itb3JhbmdlLTgwMFxuICAgICksXG4gICAgYnJvd246IChcbiAgICAgICAgYmFzZTogJGNvbG9yLWJyb3duLTUwMCxcbiAgICAgICAgNTA6ICRjb2xvci1icm93bi01MCxcbiAgICAgICAgMzAwOiAkY29sb3ItYnJvd24tMzAwLFxuICAgICAgICA0MDA6ICRjb2xvci1icm93bi00MDAsXG4gICAgICAgIDYwMDogJGNvbG9yLWJyb3duLTYwMCxcbiAgICAgICAgNzAwOiAkY29sb3ItYnJvd24tNzAwLFxuICAgICAgICA4MDA6ICRjb2xvci1icm93bi04MDBcbiAgICApLFxuICAgIGdyZXk6IChcbiAgICAgICAgYmFzZTogJGNvbG9yLWdyZXktNTAwLFxuICAgICAgICA1MDogJGNvbG9yLWdyZXktNTAsXG4gICAgICAgIDMwMDogJGNvbG9yLWdyZXktMzAwLFxuICAgICAgICA0MDA6ICRjb2xvci1ncmV5LTQwMCxcbiAgICAgICAgNjAwOiAkY29sb3ItZ3JleS02MDAsXG4gICAgICAgIDcwMDogJGNvbG9yLWdyZXktNzAwLFxuICAgICAgICA4MDA6ICRjb2xvci1ncmV5LTgwMFxuICAgICksXG4gICAgc2xhdGU6IChcbiAgICAgICAgYmFzZTogJGNvbG9yLXNsYXRlLTUwMCxcbiAgICAgICAgNTA6ICRjb2xvci1zbGF0ZS01MCxcbiAgICAgICAgMzAwOiAkY29sb3Itc2xhdGUtMzAwLFxuICAgICAgICA0MDA6ICRjb2xvci1zbGF0ZS00MDAsXG4gICAgICAgIDYwMDogJGNvbG9yLXNsYXRlLTYwMCxcbiAgICAgICAgNzAwOiAkY29sb3Itc2xhdGUtNzAwLFxuICAgICAgICA4MDA6ICRjb2xvci1zbGF0ZS04MDBcbiAgICApXG4pO1xuXG5cbi8vXG4vLyBHZW5lcmF0ZSBjbGFzcyBuYW1lc1xuLy9cblxuLy8gNTAgKGFscGhhKSBhbmQgNTAwIChtYWluKSBzaGFkZXNcbkBlYWNoICRjb2xvci1rZXksICRjb2xvci12YXJpYW50cyBpbiAkbGwtdGhlbWUtY29sb3JzIHtcblxuICAgIC8vIEdldCBtYWluIGFuZCA1MCBzaGFkZXMgZnJvbSB0aGUgbWFwXG4gICAgJGJhc2UtY29sb3ItdmFsdWU6IG1hcC1nZXQoJGNvbG9yLXZhcmlhbnRzLCAnYmFzZScpO1xuICAgICRzaGFkZS01MDogbWFwLWdldCgkY29sb3ItdmFyaWFudHMsIDUwKTtcblxuICAgIC8vIEdlbmVyYXRlIC5hbHBoYS0qIGNsYXNzZXNcbiAgICAuYWxwaGEtI3skY29sb3Ita2V5fSB7XG4gICAgICAgIEBpbmNsdWRlIGxsLWJhY2tncm91bmQtdmFyaWFudCgkc2hhZGUtNTApO1xuICAgIH1cblxuICAgIC8vIEdlbmVyYXRlIC50ZXh0LSogY2xhc3Nlc1xuICAgIC50ZXh0LSN7JGNvbG9yLWtleX0ge1xuICAgICAgICBAaW5jbHVkZSBsbC10ZXh0LWNvbG9yLXZhcmlhbnQoJGJhc2UtY29sb3ItdmFsdWUpO1xuICAgIH1cblxuICAgIC8vIEdlbmVyYXRlIC5iZy0qIGNsYXNzZXNcbiAgICAuYmctI3skY29sb3Ita2V5fSB7XG4gICAgICAgIEBpbmNsdWRlIGxsLWJhY2tncm91bmQtdmFyaWFudCgkYmFzZS1jb2xvci12YWx1ZSk7XG4gICAgfVxuXG4gICAgLy8gR2VuZXJhdGUgLmJvcmRlci0qIGNsYXNzZXNcbiAgICAuYm9yZGVyLSN7JGNvbG9yLWtleX0ge1xuICAgICAgICBAaW5jbHVkZSBsbC1ib3JkZXItY29sb3ItdmFyaWFudCgkYmFzZS1jb2xvci12YWx1ZSk7XG4gICAgfVxuXG4gICAgLy8gR2VuZXJhdGUgLmJvcmRlci10b3AtKiBjbGFzc2VzXG4gICAgLmJvcmRlci10b3AtI3skY29sb3Ita2V5fSB7XG4gICAgICAgIEBpbmNsdWRlIGxsLWJvcmRlci10b3AtY29sb3ItdmFyaWFudCgkYmFzZS1jb2xvci12YWx1ZSk7XG4gICAgfVxuXG4gICAgLy8gR2VuZXJhdGUgLmJvcmRlci1ib3R0b20tKiBjbGFzc2VzXG4gICAgLmJvcmRlci1ib3R0b20tI3skY29sb3Ita2V5fSB7XG4gICAgICAgIEBpbmNsdWRlIGxsLWJvcmRlci1ib3R0b20tY29sb3ItdmFyaWFudCgkYmFzZS1jb2xvci12YWx1ZSk7XG4gICAgfVxuXG4gICAgLy8gR2VuZXJhdGUgLmJvcmRlci1sZWZ0LSogY2xhc3Nlc1xuICAgIC5ib3JkZXItbGVmdC0jeyRjb2xvci1rZXl9IHtcbiAgICAgICAgQGluY2x1ZGUgbGwtYm9yZGVyLWxlZnQtY29sb3ItdmFyaWFudCgkYmFzZS1jb2xvci12YWx1ZSk7XG4gICAgfVxuXG4gICAgLy8gR2VuZXJhdGUgLmJvcmRlci1yaWdodC0qIGNsYXNzZXNcbiAgICAuYm9yZGVyLXJpZ2h0LSN7JGNvbG9yLWtleX0ge1xuICAgICAgICBAaW5jbHVkZSBsbC1ib3JkZXItcmlnaHQtY29sb3ItdmFyaWFudCgkYmFzZS1jb2xvci12YWx1ZSk7XG4gICAgfVxuXG5cbiAgICAvL1xuICAgIC8vIEFjY2VzcyBjb2xvciB2YXJpYW50cyBhbmQgdmFsdWVzXG4gICAgLy9cblxuICAgIEBlYWNoICR2YXJpYW50LW5hbWUsICR2YXJpYW50LXZhbHVlIGluICRjb2xvci12YXJpYW50cyB7XG4gICAgICAgICRzaGFkZS1jb2xvci12YWx1ZTogbWFwLWdldCgkY29sb3ItdmFyaWFudHMsICR2YXJpYW50LW5hbWUpO1xuXG4gICAgICAgIC8vIElnbm9yZSAnYmFzZScgYW5kICc1MCcgdG9uZXNcbiAgICAgICAgQGlmICgkdmFyaWFudC1uYW1lICE9ICdiYXNlJyBhbmQgJHZhcmlhbnQtbmFtZSAhPSA1MCkge1xuXG4gICAgICAgICAgICAvLyBHZW5lcmF0ZSAudGV4dC0qLSogY2xhc3Nlc1xuICAgICAgICAgICAgLnRleHQtI3skY29sb3Ita2V5fS0jeyR2YXJpYW50LW5hbWV9IHtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBsbC10ZXh0LWNvbG9yLXZhcmlhbnQoJHNoYWRlLWNvbG9yLXZhbHVlKTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLy8gR2VuZXJhdGUgLmJnLSotKiBjbGFzc2VzXG4gICAgICAgICAgICAuYmctI3skY29sb3Ita2V5fS0jeyR2YXJpYW50LW5hbWV9IHtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBsbC1iYWNrZ3JvdW5kLXZhcmlhbnQoJHNoYWRlLWNvbG9yLXZhbHVlKTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLy8gR2VuZXJhdGUgLmJvcmRlci0qLSogY2xhc3Nlc1xuICAgICAgICAgICAgLmJvcmRlci0jeyRjb2xvci1rZXl9LSN7JHZhcmlhbnQtbmFtZX0ge1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGxsLWJvcmRlci1jb2xvci12YXJpYW50KCRzaGFkZS1jb2xvci12YWx1ZSk7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC8vIEdlbmVyYXRlIC5ib3JkZXItdG9wLSotKiBjbGFzc2VzXG4gICAgICAgICAgICAuYm9yZGVyLXRvcC0jeyRjb2xvci1rZXl9LSN7JHZhcmlhbnQtbmFtZX0ge1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGxsLWJvcmRlci10b3AtY29sb3ItdmFyaWFudCgkc2hhZGUtY29sb3ItdmFsdWUpO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAvLyBHZW5lcmF0ZSAuYm9yZGVyLWJvdHRvbS0qLSogY2xhc3Nlc1xuICAgICAgICAgICAgLmJvcmRlci1ib3R0b20tI3skY29sb3Ita2V5fS0jeyR2YXJpYW50LW5hbWV9IHtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBsbC1ib3JkZXItYm90dG9tLWNvbG9yLXZhcmlhbnQoJHNoYWRlLWNvbG9yLXZhbHVlKTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLy8gR2VuZXJhdGUgLmJvcmRlci1sZWZ0LSotKiBjbGFzc2VzXG4gICAgICAgICAgICAuYm9yZGVyLWxlZnQtI3skY29sb3Ita2V5fS0jeyR2YXJpYW50LW5hbWV9IHtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBsbC1ib3JkZXItbGVmdC1jb2xvci12YXJpYW50KCRzaGFkZS1jb2xvci12YWx1ZSk7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC8vIEdlbmVyYXRlIC5ib3JkZXItcmlnaHQtKi0qIGNsYXNzZXNcbiAgICAgICAgICAgIC5ib3JkZXItcmlnaHQtI3skY29sb3Ita2V5fS0jeyR2YXJpYW50LW5hbWV9IHtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBsbC1ib3JkZXItcmlnaHQtY29sb3ItdmFyaWFudCgkc2hhZGUtY29sb3ItdmFsdWUpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG5cbi8vXG4vLyBPdGhlciBjb2xvciBjbGFzc2VzXG4vL1xuXG4vLyBUcmFuc3BhcmVudCBib3JkZXJcbi5ib3JkZXItdHJhbnNwYXJlbnQge1xuICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbn1cbi5ib3JkZXItdG9wLXRyYW5zcGFyZW50IHtcbiAgICBib3JkZXItdG9wLWNvbG9yOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xufVxuLmJvcmRlci1ib3R0b20tdHJhbnNwYXJlbnQge1xuICAgIGJvcmRlci1ib3R0b20tY29sb3I6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG59XG4uYm9yZGVyLWxlZnQtdHJhbnNwYXJlbnQge1xuICAgIGJvcmRlci1sZWZ0LWNvbG9yOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xufVxuLmJvcmRlci1yaWdodC10cmFuc3BhcmVudCB7XG4gICAgYm9yZGVyLXJpZ2h0LWNvbG9yOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xufVxuXG4vLyBMaWdodCBib3JkZXIgY29sb3Igb24gZGFyayBiYWNrZ3JvdW5kXG4uYm9yZGVyLWxpZ2h0LWFscGhhIHtcbiAgICBAaW5jbHVkZSBsbC1ib3JkZXItY29sb3ItdmFyaWFudChyZ2JhKCR3aGl0ZSwgMC4xKSk7XG59XG4uYm9yZGVyLXRvcC1saWdodC1hbHBoYSB7XG4gICAgQGluY2x1ZGUgbGwtYm9yZGVyLXRvcC1jb2xvci12YXJpYW50KHJnYmEoJHdoaXRlLCAwLjEpKTtcbn1cbi5ib3JkZXItYm90dG9tLWxpZ2h0LWFscGhhIHtcbiAgICBAaW5jbHVkZSBsbC1ib3JkZXItYm90dG9tLWNvbG9yLXZhcmlhbnQocmdiYSgkd2hpdGUsIDAuMSkpO1xufVxuLmJvcmRlci1sZWZ0LWxpZ2h0LWFscGhhIHtcbiAgICBAaW5jbHVkZSBsbC1ib3JkZXItbGVmdC1jb2xvci12YXJpYW50KHJnYmEoJHdoaXRlLCAwLjEpKTtcbn1cbi5ib3JkZXItcmlnaHQtbGlnaHQtYWxwaGEge1xuICAgIEBpbmNsdWRlIGxsLWJvcmRlci1yaWdodC1jb2xvci12YXJpYW50KHJnYmEoJHdoaXRlLCAwLjEpKTtcbn1cblxuLy8gRGFyayBib3JkZXIgY29sb3Igb24gbGlnaHQgYmFja2dyb3VuZFxuLmJvcmRlci1kYXJrLWFscGhhIHtcbiAgICBAaW5jbHVkZSBsbC1ib3JkZXItY29sb3ItdmFyaWFudChyZ2JhKCRibGFjaywgMC4xKSk7XG59XG4uYm9yZGVyLXRvcC1kYXJrLWFscGhhIHtcbiAgICBAaW5jbHVkZSBsbC1ib3JkZXItdG9wLWNvbG9yLXZhcmlhbnQocmdiYSgkYmxhY2ssIDAuMSkpO1xufVxuLmJvcmRlci1ib3R0b20tZGFyay1hbHBoYSB7XG4gICAgQGluY2x1ZGUgbGwtYm9yZGVyLWJvdHRvbS1jb2xvci12YXJpYW50KHJnYmEoJGJsYWNrLCAwLjEpKTtcbn1cbi5ib3JkZXItbGVmdC1kYXJrLWFscGhhIHtcbiAgICBAaW5jbHVkZSBsbC1ib3JkZXItbGVmdC1jb2xvci12YXJpYW50KHJnYmEoJGJsYWNrLCAwLjEpKTtcbn1cbi5ib3JkZXItcmlnaHQtZGFyay1hbHBoYSB7XG4gICAgQGluY2x1ZGUgbGwtYm9yZGVyLXJpZ2h0LWNvbG9yLXZhcmlhbnQocmdiYSgkYmxhY2ssIDAuMSkpO1xufVxuXG4vLyBCYWNrZ3JvdW5kIGNvbG9yIHdpdGggdHJhbnNwYXJlbmN5XG4uYmctZGFyay1hbHBoYSB7XG4gICAgQGluY2x1ZGUgbGwtYmFja2dyb3VuZC12YXJpYW50KHJnYmEoJGJsYWNrLCAwLjIpKTtcbn1cbi5iZy1saWdodC1hbHBoYSB7XG4gICAgQGluY2x1ZGUgbGwtYmFja2dyb3VuZC12YXJpYW50KHJnYmEoJHdoaXRlLCAwLjEpKTtcbn1cbiJdLCJzb3VyY2VSb290IjoiIn0=*/