@charset "UTF-8";
html{
  line-height: 1.15;
  -ms-text-size-adjust: 100%;
  -webkit-text-size-adjust: 100%; }
h1{
  font-size: 2em;
  margin: 0.67em 0; }
hr{
  -webkit-box-sizing: content-box;
          box-sizing: content-box;
  height: 0;
  overflow: visible; }
main{
  display: block; }
pre{
  font-family: monospace, monospace;
  font-size: 1em; }
a{
  background-color: transparent;
  -webkit-text-decoration-skip: objects; }
abbr[title]{
  text-decoration: underline;
  -webkit-text-decoration: underline dotted;
          text-decoration: underline dotted; }
b,
strong{
  font-weight: bolder; }
code,
kbd,
samp{
  font-family: monospace, monospace;
  font-size: 1em; }
small{
  font-size: 80%; }
img{
  border-style: none; }
svg:not(:root){
  overflow: hidden; }
button,
input,
optgroup,
select,
textarea{
  margin: 0; }
button{
  overflow: visible;
  text-transform: none; }
button,
[type="button"],
[type="reset"],
[type="submit"]{
  -webkit-appearance: button; }
button::-moz-focus-inner,
[type="button"]::-moz-focus-inner,
[type="reset"]::-moz-focus-inner,
[type="submit"]::-moz-focus-inner{
  border-style: none;
  padding: 0; }
button:-moz-focusring,
[type="button"]:-moz-focusring,
[type="reset"]:-moz-focusring,
[type="submit"]:-moz-focusring{
  outline: 1px dotted ButtonText; }
fieldset{
  padding: 0.35em 0.75em 0.625em; }
input{
  overflow: visible; }
legend{
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  color: inherit;
  display: table;
  max-width: 100%;
  padding: 0;
  white-space: normal; }
progress{
  display: inline-block;
  vertical-align: baseline; }
select{
  text-transform: none; }
textarea{
  overflow: auto; }
[type="checkbox"],
[type="radio"]{
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  padding: 0; }
[type="number"]::-webkit-inner-spin-button,
[type="number"]::-webkit-outer-spin-button{
  height: auto; }
[type="search"]{
  -webkit-appearance: textfield;
  outline-offset: -2px; }
[type="search"]::-webkit-search-cancel-button,
[type="search"]::-webkit-search-decoration{
  -webkit-appearance: none; }
::-webkit-file-upload-button{
  -webkit-appearance: button;
  font: inherit; }
details{
  display: block; }
summary{
  display: list-item; }
template{
  display: none; }
[hidden]{
  display: none; }
@font-face {
  font-display: swap;
  /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Open Sans';
  font-style: normal;
  font-weight: 400;
  src: url("/app/themes/ji_starter/assets/fonts/open-sans/open-sans-latin-regular.eot");
  /* IE9 Compat Modes */
  src: url("/app/themes/ji_starter/assets/fonts/open-sans/open-sans-latin-regular.eot?#iefix") format("embedded-opentype"), url("/app/themes/ji_starter/assets/fonts/open-sans/open-sans-latin-regular.woff2") format("woff2"), url("/app/themes/ji_starter/assets/fonts/open-sans/open-sans-latin-regular.woff") format("woff"), url("/app/themes/ji_starter/assets/fonts/open-sans/open-sans-latin-regular.ttf") format("truetype"), url("/app/themes/ji_starter/assets/fonts/open-sans/open-sans-latin-regular.svg#OpenSans") format("svg");
  /* Legacy iOS */ }

/* open-sans-italic - latin */
@font-face {
  font-display: swap;
  /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Open Sans';
  font-style: italic;
  font-weight: 400;
  src: url("/app/themes/ji_starter/assets/fonts/open-sans/open-sans-latin-italic.eot");
  /* IE9 Compat Modes */
  src: url("/app/themes/ji_starter/assets/fonts/open-sans/open-sans-latin-italic.eot?#iefix") format("embedded-opentype"), url("/app/themes/ji_starter/assets/fonts/open-sans/open-sans-latin-italic.woff2") format("woff2"), url("/app/themes/ji_starter/assets/fonts/open-sans/open-sans-latin-italic.woff") format("woff"), url("/app/themes/ji_starter/assets/fonts/open-sans/open-sans-latin-italic.ttf") format("truetype"), url("/app/themes/ji_starter/assets/fonts/open-sans/open-sans-latin-italic.svg#OpenSans") format("svg");
  /* Legacy iOS */ }

/* open-sans-800 - latin */
@font-face {
  font-display: swap;
  /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Open Sans';
  font-style: normal;
  font-weight: 800;
  src: url("/app/themes/ji_starter/assets/fonts/open-sans/open-sans-latin-800.eot");
  /* IE9 Compat Modes */
  src: url("/app/themes/ji_starter/assets/fonts/open-sans/open-sans-latin-800.eot?#iefix") format("embedded-opentype"), url("/app/themes/ji_starter/assets/fonts/open-sans/open-sans-latin-800.woff2") format("woff2"), url("/app/themes/ji_starter/assets/fonts/open-sans/open-sans-latin-800.woff") format("woff"), url("/app/themes/ji_starter/assets/fonts/open-sans/open-sans-latin-800.ttf") format("truetype"), url("/app/themes/ji_starter/assets/fonts/open-sans/open-sans-latin-800.svg#OpenSans") format("svg");
  /* Legacy iOS */ }

html {
  font-size: 13px; }
  @media (min-width: 800px) {
    html {
      font-size: 14px; } }
  @media (min-width: 1300px) {
    html {
      font-size: 15px; } }
  @media (min-width: 1500px) {
    html {
      font-size: 16px; } }
  @media (min-width: 1800px) {
    html {
      font-size: 17px; } }
  @media (min-width: 2100px) {
    html {
      font-size: 18px; } }
  @media (min-width: 2600px) {
    html {
      font-size: 19px; } }

body {
  font-family: 'Open Sans', Arial, sans-serif;
  font-weight: 400;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  line-height: 1.5;
  -webkit-font-feature-settings: 'tnum';
          font-feature-settings: 'tnum';
  color: #484646; }

p {
  margin-bottom: 1rem; }

em, i {
  font-weight: 400i; }

h1, h2, h3, h4, h5 {
  font-weight: 800;
  letter-spacing: -0.03em;
  margin-top: 0; }

h1 {
  font-size: 2.2rem;
  margin-bottom: 2rem;
  line-height: 1; }

h2 {
  font-size: 1.75rem;
  margin-bottom: 1rem;
  margin-top: 3rem;
  line-height: 1.145; }

h3 {
  font-size: 1.25rem;
  line-height: 1.25;
  margin-bottom: 1rem;
  margin-top: 2rem; }

h4 {
  font-size: 1rem;
  line-height: 1.5;
  margin-bottom: 1rem;
  margin-top: 1.5rem; }

h5 {
  font-size: 0.813rem;
  line-height: 1.538;
  margin-bottom: 0;
  margin-top: 1rem; }

a {
  text-decoration: none;
  color: #69913b;
  -webkit-transition: .2s color;
  -o-transition: .2s color;
  transition: .2s color; }
  a:visited {
    text-decoration: none;
    color: #69913b; }
    a:visited:hover {
      color: #484646; }
  a:hover {
    text-decoration: none;
    color: #484646; }

table {
  border-collapse: collapse;
  width: 100%; }
  table td, table th {
    padding: .6rem .6rem .6rem 0;
    border-bottom: 1px solid gainsboro; }
    table td:first-child, table th:first-child {
      padding-left: 0; }
    table td:last-child, table th:last-child {
      padding-right: 0; }
    table td:nth-child(3):nth-last-child(1), table td:nth-child(2):nth-last-child(2), table td:nth-child(1):nth-last-child(3), table th:nth-child(3):nth-last-child(1), table th:nth-child(2):nth-last-child(2), table th:nth-child(1):nth-last-child(3) {
      width: 33.33333%; }
    table td:nth-child(2):nth-last-child(1), table th:nth-child(2):nth-last-child(1) {
      width: 67%; }
    table td:nth-child(1):nth-last-child(2), table th:nth-child(1):nth-last-child(2) {
      width: 33%; }
  table th {
    text-align: left; }
  table tr:last-of-type td {
    border-bottom: 0; }

.button {
  padding: 10px 25px;
  display: inline-block;
  background: #69913b;
  color: white;
  -webkit-transition: .2s background;
  -o-transition: .2s background;
  transition: .2s background;
  cursor: pointer;
  border: 0;
  font-size: inherit;
  line-height: 1; }
  .button:hover {
    background: #4f6d2c;
    color: white; }
  .button + .button {
    margin-left: .5rem; }
  .button:focus {
    outline: none; }

.f-small, .widgets, .tease-post .read-more, .events__table {
  font-size: 0.813rem;
  line-height: 1.538; }

.content > ul, .g-content__left article > ul, .wp-block-column > ul, .widget ul {
  list-style: none;
  padding: 0; }
  .content > ul li, .g-content__left article > ul li, .wp-block-column > ul li, .widget ul li {
    padding-left: 1em; }
    .content > ul li:before, .g-content__left article > ul li:before, .wp-block-column > ul li:before, .widget ul li:before {
      content: "–";
      display: inline-block;
      margin-left: -1em;
      width: 1em;
      color: inherit; }

.widget > ul {
  list-style: none;
  padding: 0; }
  .widget > ul li:before {
    content: '\2192';
    display: inline-block;
    margin-left: -1.3em;
    width: 1.3em;
    color: #69913b; }

.content > ol, .g-content__left article > ol, .wp-block-column > ol {
  padding: 0 0 0 1em; }
  .content > ol li, .g-content__left article > ol li, .wp-block-column > ol li {
    padding-left: 0em; }

@media (min-width: 800px) {
  h1 {
    font-size: 2.75rem; } }

.button-back {
  display: inline-block;
  margin-bottom: 30px;
  font-size: 1.25rem; }
  .button-back:before {
    content: '\2190';
    display: inline-block;
    margin-right: .5em; }

@font-face {
  font-family: 'ji';
  src: url("/app/themes/ji_starter/assets/fonts/icons/ji.ttf?or9d7q") format("truetype"), url("/app/themes/ji_starter/assets/fonts/icons/ji.woff?or9d7q") format("woff"), url("/app/themes/ji_starter/assets/fonts/icons/ji.svg?or9d7q#ji") format("svg");
  font-weight: normal;
  font-style: normal; }

.icon, .nav-main .nav-arrow:before, [class^="icon--"], [class*=" icon--"] {
  /* use !important to prevent issues with browser extensions that change fonts */
  font-family: 'ji' !important;
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  /* Better Font Rendering =========== */
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale; }

.icon--arrow-circle-down:before {
  content: ""; }

.icon--arrow-circle-up:before {
  content: ""; }

.icon--long-arrow-right:before {
  content: ""; }

.icon--times:before {
  content: ""; }

.icon--menu:before {
  content: ""; }

.icon--chevron::before, article .wp-block-query.two-columns-layout .wp-block-post-excerpt .wp-block-post-excerpt__more-text a.wp-block-post-excerpt__more-link::before {
  content: '';
  display: inline-block;
  width: 15px;
  height: 15px;
  border-bottom: 4px solid;
  border-right: 4px solid;
  -webkit-transform: rotate(-45deg);
      -ms-transform: rotate(-45deg);
          transform: rotate(-45deg);
  margin-left: -7px;
  margin-right: 5px; }
.g-flexible {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  height: 100%;
  min-height: 100vh; }
  .g-flexible__top {
    -webkit-box-flex: 1;
        -ms-flex: 1 0 auto;
            flex: 1 0 auto; }
  .g-flexible__bottom {
    -ms-flex-negative: 0;
        flex-shrink: 0; }

.g-content {
  margin: 3.5rem 0; }
  .g-content__left {
    -webkit-box-flex: 0;
        -ms-flex-positive: 0;
            flex-grow: 0;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    -ms-flex-preferred-size: calc(99.9% * 12/12 - (3% - 3% * 12/12));
        flex-basis: calc(99.9% * 12/12 - (3% - 3% * 12/12));
    max-width: calc(99.9% * 12/12 - (3% - 3% * 12/12));
    width: calc(99.9% * 12/12 - (3% - 3% * 12/12)); }
  .g-content__left:nth-child(1n) {
    margin-right: 3%;
    margin-left: 0; }
  .g-content__left:last-child {
    margin-right: 0; }
  .g-content__left:nth-child(1n) {
    margin-right: 0;
    margin-left: auto; }
    @media (min-width: 1150px) {
      .g-content__left {
        -webkit-box-flex: 0;
            -ms-flex-positive: 0;
                flex-grow: 0;
        -ms-flex-negative: 0;
            flex-shrink: 0;
        -ms-flex-preferred-size: calc(99.9% * 7/10 - (5rem - 5rem * 7/10));
            flex-basis: calc(99.9% * 7/10 - (5rem - 5rem * 7/10));
        max-width: calc(99.9% * 7/10 - (5rem - 5rem * 7/10));
        width: calc(99.9% * 7/10 - (5rem - 5rem * 7/10)); }
      .g-content__left:nth-child(1n) {
        margin-right: 5rem;
        margin-left: 0; }
      .g-content__left:last-child {
        margin-right: 0; }
      .g-content__left:nth-child(2n) {
        margin-right: 0;
        margin-left: auto; } }
    @media (min-width: 1300px) {
      .g-content__left {
        -webkit-box-flex: 0;
            -ms-flex-positive: 0;
                flex-grow: 0;
        -ms-flex-negative: 0;
            flex-shrink: 0;
        -ms-flex-preferred-size: calc(99.9% * 6.5/10 - (10rem - 10rem * 6.5/10));
            flex-basis: calc(99.9% * 6.5/10 - (10rem - 10rem * 6.5/10));
        max-width: calc(99.9% * 6.5/10 - (10rem - 10rem * 6.5/10));
        width: calc(99.9% * 6.5/10 - (10rem - 10rem * 6.5/10)); }
      .g-content__left:nth-child(1n) {
        margin-right: 10rem;
        margin-left: 0; }
      .g-content__left:last-child {
        margin-right: 0; }
      .g-content__left:nth-child(2n) {
        margin-right: 0;
        margin-left: auto; } }
  .g-content__right {
    display: none; }
    @media (min-width: 1150px) {
      .g-content__right {
        display: block;
        -webkit-box-flex: 0;
            -ms-flex-positive: 0;
                flex-grow: 0;
        -ms-flex-negative: 0;
            flex-shrink: 0;
        -ms-flex-preferred-size: calc(99.9% * 3/10 - (5rem - 5rem * 3/10));
            flex-basis: calc(99.9% * 3/10 - (5rem - 5rem * 3/10));
        max-width: calc(99.9% * 3/10 - (5rem - 5rem * 3/10));
        width: calc(99.9% * 3/10 - (5rem - 5rem * 3/10)); }
      .g-content__right:nth-child(1n) {
        margin-right: 5rem;
        margin-left: 0; }
      .g-content__right:last-child {
        margin-right: 0; }
      .g-content__right:nth-child(2n) {
        margin-right: 0;
        margin-left: auto; } }
    @media (min-width: 1300px) {
      .g-content__right {
        -webkit-box-flex: 0;
            -ms-flex-positive: 0;
                flex-grow: 0;
        -ms-flex-negative: 0;
            flex-shrink: 0;
        -ms-flex-preferred-size: calc(99.9% * 3.5/10 - (10rem - 10rem * 3.5/10));
            flex-basis: calc(99.9% * 3.5/10 - (10rem - 10rem * 3.5/10));
        max-width: calc(99.9% * 3.5/10 - (10rem - 10rem * 3.5/10));
        width: calc(99.9% * 3.5/10 - (10rem - 10rem * 3.5/10)); }
      .g-content__right:nth-child(1n) {
        margin-right: 10rem;
        margin-left: 0; }
      .g-content__right:last-child {
        margin-right: 0; }
      .g-content__right:nth-child(2n) {
        margin-right: 0;
        margin-left: auto; } }
    .g-content__right--widget_sidebar {
      display: block; }
  .g-content__with_sidebar__left {
    -ms-flex-preferred-size: 100%;
        flex-basis: 100%; }
    @media (min-width: 1150px) {
      .g-content__with_sidebar__left {
        -ms-flex-preferred-size: 65%;
            flex-basis: 65%; } }
  .g-content__with_sidebar__right {
    -ms-flex-preferred-size: 100%;
        flex-basis: 100%;
    margin-bottom: 3rem; }
    @media (min-width: 1150px) {
      .g-content__with_sidebar__right {
        -ms-flex-preferred-size: 30%;
            flex-basis: 30%;
        margin-bottom: 0; } }

.g-wrapper {
  padding: 0 6%;
  max-width: 80rem;
  margin: 0 auto; }
  @media (min-width: 800px) {
    .g-wrapper {
      padding: 0 13%; } }
  @media (min-width: 1150px) {
    .g-wrapper {
      padding: 0 8%; } }

.g-row {
  overflow: hidden;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-flow: row wrap;
          flex-flow: row wrap; }
  .g-row--with_sidebar {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: reverse;
        -ms-flex-direction: column-reverse;
            flex-direction: column-reverse; }
    @media (min-width: 1150px) {
      .g-row--with_sidebar {
        -webkit-box-pack: justify;
            -ms-flex-pack: justify;
                justify-content: space-between;
        -webkit-box-orient: horizontal;
        -webkit-box-direction: normal;
            -ms-flex-direction: row;
                flex-direction: row; } }

.g-col--2 {
  -webkit-box-flex: 0;
      -ms-flex-positive: 0;
          flex-grow: 0;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  -ms-flex-preferred-size: calc(99.9% * 12/12 - (3% - 3% * 12/12));
      flex-basis: calc(99.9% * 12/12 - (3% - 3% * 12/12));
  max-width: calc(99.9% * 12/12 - (3% - 3% * 12/12));
  width: calc(99.9% * 12/12 - (3% - 3% * 12/12)); }

.g-col--2:nth-child(1n) {
  margin-right: 3%;
  margin-left: 0; }

.g-col--2:last-child {
  margin-right: 0; }

.g-col--2:nth-child(1n) {
  margin-right: 0;
  margin-left: auto; }
  @media (min-width: 800px) {
    .g-col--2 {
      -webkit-box-flex: 0;
          -ms-flex-positive: 0;
              flex-grow: 0;
      -ms-flex-negative: 0;
          flex-shrink: 0;
      -ms-flex-preferred-size: calc(99.9% * 6/12 - (3% - 3% * 6/12));
          flex-basis: calc(99.9% * 6/12 - (3% - 3% * 6/12));
      max-width: calc(99.9% * 6/12 - (3% - 3% * 6/12));
      width: calc(99.9% * 6/12 - (3% - 3% * 6/12)); }
    .g-col--2:nth-child(1n) {
      margin-right: 3%;
      margin-left: 0; }
    .g-col--2:last-child {
      margin-right: 0; }
    .g-col--2:nth-child(12n) {
      margin-right: 0;
      margin-left: auto; } }

.g-col--3 {
  -webkit-box-flex: 0;
      -ms-flex-positive: 0;
          flex-grow: 0;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  -ms-flex-preferred-size: calc(99.9% * 12/12 - (3% - 3% * 12/12));
      flex-basis: calc(99.9% * 12/12 - (3% - 3% * 12/12));
  max-width: calc(99.9% * 12/12 - (3% - 3% * 12/12));
  width: calc(99.9% * 12/12 - (3% - 3% * 12/12)); }

.g-col--3:nth-child(1n) {
  margin-right: 3%;
  margin-left: 0; }

.g-col--3:last-child {
  margin-right: 0; }

.g-col--3:nth-child(1n) {
  margin-right: 0;
  margin-left: auto; }
  @media (min-width: 800px) {
    .g-col--3 {
      -webkit-box-flex: 0;
          -ms-flex-positive: 0;
              flex-grow: 0;
      -ms-flex-negative: 0;
          flex-shrink: 0;
      -ms-flex-preferred-size: calc(99.9% * 4/12 - (3% - 3% * 4/12));
          flex-basis: calc(99.9% * 4/12 - (3% - 3% * 4/12));
      max-width: calc(99.9% * 4/12 - (3% - 3% * 4/12));
      width: calc(99.9% * 4/12 - (3% - 3% * 4/12)); }
    .g-col--3:nth-child(1n) {
      margin-right: 3%;
      margin-left: 0; }
    .g-col--3:last-child {
      margin-right: 0; }
    .g-col--3:nth-child(12n) {
      margin-right: 0;
      margin-left: auto; } }

.g-col--1-3 {
  -webkit-box-flex: 0;
      -ms-flex-positive: 0;
          flex-grow: 0;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  -ms-flex-preferred-size: calc(99.9% * 4/12 - (3% - 3% * 4/12));
      flex-basis: calc(99.9% * 4/12 - (3% - 3% * 4/12));
  max-width: calc(99.9% * 4/12 - (3% - 3% * 4/12));
  width: calc(99.9% * 4/12 - (3% - 3% * 4/12)); }

.g-col--1-3:nth-child(1n) {
  margin-right: 3%;
  margin-left: 0; }

.g-col--1-3:last-child {
  margin-right: 0; }

.g-col--1-3:nth-child(12n) {
  margin-right: 0;
  margin-left: auto; }

.g-col--2-3 {
  -webkit-box-flex: 0;
      -ms-flex-positive: 0;
          flex-grow: 0;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  -ms-flex-preferred-size: calc(99.9% * 8/12 - (3% - 3% * 8/12));
      flex-basis: calc(99.9% * 8/12 - (3% - 3% * 8/12));
  max-width: calc(99.9% * 8/12 - (3% - 3% * 8/12));
  width: calc(99.9% * 8/12 - (3% - 3% * 8/12)); }

.g-col--2-3:nth-child(1n) {
  margin-right: 3%;
  margin-left: 0; }

.g-col--2-3:last-child {
  margin-right: 0; }

.g-col--2-3:nth-child(12n) {
  margin-right: 0;
  margin-left: auto; }

.header__inner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  overflow: hidden;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  min-height: 7rem;
  padding: .4rem 0; }

.logo {
  margin: 0; }
  .logo--header {
    margin: 0; }
    @media (min-width: 1150px) {
      .logo--header {
        max-width: none !important;
        max-height: none !important; } }
    .logo--header__inner {
      display: block; }
      .logo--header__inner--subtitle {
        display: block;
        font-size: 1.1rem;
        margin-top: 1.1rem; }
        @media (min-width: 800px) {
          .logo--header__inner--subtitle {
            font-size: 1.37rem;
            margin-top: 1.37rem; } }
  @media (min-width: 1150px) {
    .logo--footer {
      max-width: none !important;
      max-height: none !important; } }
  .logo--footer__inner {
    display: block; }

.nav-main {
  display: none; }
  .nav-main ul {
    list-style: none;
    margin: 0;
    padding: 0; }
    .nav-main ul li {
      padding-left: 0.8rem;
      display: inline-block; }
      .nav-main ul li.current-menu-item > a, .nav-main ul li.current-page-ancestor > a {
        color: #484646; }
      .nav-main ul li a {
        font-weight: 800; }
      @media (min-width: 1150px) {
        .nav-main ul li {
          font-size: 1.25rem;
          padding-left: 1.5rem; } }
      .nav-main ul li > ul {
        display: none; }
  @media (max-width: 1150px) {
    .nav-main > ul > li.menu-item-has-children > a:last-of-type {
      display: none; } }
  .nav-main .nav-arrow {
    cursor: pointer;
    display: none; }
    .nav-main .nav-arrow:before {
      content: ""; }
  @media (max-width: 1150px) {
    .nav-main.is-active {
      display: block;
      position: fixed;
      overflow: scroll;
      left: 0;
      top: 0;
      right: 0;
      bottom: 0;
      width: 100%;
      height: 100%;
      background: white;
      z-index: 25; }
      .nav-main.is-active ul {
        margin: 0 auto;
        max-width: 570px; }
        .nav-main.is-active ul li {
          padding: 0;
          display: block;
          border-bottom: 1px solid gainsboro; }
          .nav-main.is-active ul li a {
            display: block;
            padding: 0.5rem 0; }
      .nav-main.is-active > ul {
        padding: 20px; }
        .nav-main.is-active > ul > li {
          position: relative;
          padding-left: 35px; }
          .nav-main.is-active > ul > li.is-active ul {
            display: block; }
          .nav-main.is-active > ul > li.is-active .nav-arrow {
            color: #484646; }
            .nav-main.is-active > ul > li.is-active .nav-arrow:visited {
              color: #484646; }
            .nav-main.is-active > ul > li.is-active .nav-arrow + a {
              color: #484646; }
          .nav-main.is-active > ul > li > a {
            font-size: 20px; }
          .nav-main.is-active > ul > li .nav-arrow {
            display: block;
            font-size: 20px;
            color: #69913b;
            position: relative; }
            .nav-main.is-active > ul > li .nav-arrow:hover {
              color: #484646; }
            .nav-main.is-active > ul > li .nav-arrow:before {
              position: absolute;
              left: -35px;
              top: 11px; }
          .nav-main.is-active > ul > li ul {
            display: none; }
            .nav-main.is-active > ul > li ul li {
              border-bottom: 0; }
      .nav-main.is-active.nav-main--spacer-top > ul {
        padding: 100px 20px 20px 20px; } }
  @media (min-width: 1150px) {
    .nav-main {
      display: block; } }

.second-level-menu {
  display: none; }
  @media (min-width: 1150px) {
    .second-level-menu {
      display: block; } }
  .second-level-menu ul {
    list-style: none;
    margin: 0;
    padding: 0; }
    .second-level-menu ul li.current-menu-item > a {
      color: #484646;
      font-weight: 800; }
    .second-level-menu ul a {
      display: block;
      padding: 0.5rem 0;
      border-bottom: 1px solid gainsboro; }
    .second-level-menu ul > li {
      display: none; }
      .second-level-menu ul > li.current-menu-ancestor.menu-item-has-children, .second-level-menu ul > li.current-menu-item.menu-item-has-children {
        display: block; }
      .second-level-menu ul > li > ul > li {
        display: block; }

.nav-trigger {
  position: fixed;
  z-index: 30;
  right: 20px;
  border-radius: 50%;
  background: #69913b;
  color: white;
  width: 60px;
  height: 60px;
  line-height: 60px;
  display: block;
  text-align: center;
  font-size: 13px;
  letter-spacing: 1px; }
  .nav-trigger--top {
    top: 20px; }
  .nav-trigger--bottom {
    bottom: 20px; }
  .nav-trigger > span {
    font-size: 20px;
    line-height: 60px !important; }
    .nav-trigger > span:first-of-type {
      display: inline-block; }
    .nav-trigger > span:last-of-type {
      display: none; }
  .nav-trigger.is-active > span:first-of-type {
    display: none; }
  .nav-trigger.is-active > span:last-of-type {
    display: inline-block; }
  .nav-trigger:hover {
    color: white; }
  .nav-trigger:visited {
    color: white; }
  @media (min-width: 1150px) {
    .nav-trigger {
      display: none; } }

.footer {
  padding: 2rem 0;
  background: #fafaf4;
  overflow: hidden; }
  @media (min-width: 800px) {
    .footer__logo {
      float: right; } }
  .footer__inner {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-flow: row wrap;
            flex-flow: row wrap; }
  .footer__left {
    -webkit-box-flex: 0;
        -ms-flex-positive: 0;
            flex-grow: 0;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    -ms-flex-preferred-size: calc(99.9% * 12/12 - (3% - 3% * 12/12));
        flex-basis: calc(99.9% * 12/12 - (3% - 3% * 12/12));
    max-width: calc(99.9% * 12/12 - (3% - 3% * 12/12));
    width: calc(99.9% * 12/12 - (3% - 3% * 12/12)); }
  .footer__left:nth-child(1n) {
    margin-right: 3%;
    margin-left: 0; }
  .footer__left:last-child {
    margin-right: 0; }
  .footer__left:nth-child(1n) {
    margin-right: 0;
    margin-left: auto; }
    @media (min-width: 800px) {
      .footer__left {
        -webkit-box-flex: 0;
            -ms-flex-positive: 0;
                flex-grow: 0;
        -ms-flex-negative: 0;
            flex-shrink: 0;
        -ms-flex-preferred-size: calc(99.9% * 9/12 - (3% - 3% * 9/12));
            flex-basis: calc(99.9% * 9/12 - (3% - 3% * 9/12));
        max-width: calc(99.9% * 9/12 - (3% - 3% * 9/12));
        width: calc(99.9% * 9/12 - (3% - 3% * 9/12)); }
      .footer__left:nth-child(1n) {
        margin-right: 3%;
        margin-left: 0; }
      .footer__left:last-child {
        margin-right: 0; }
      .footer__left:nth-child(12n) {
        margin-right: 0;
        margin-left: auto; } }
  .footer__right {
    margin-top: 2rem;
    -webkit-box-flex: 0;
        -ms-flex-positive: 0;
            flex-grow: 0;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    -ms-flex-preferred-size: calc(99.9% * 12/12 - (3% - 3% * 12/12));
        flex-basis: calc(99.9% * 12/12 - (3% - 3% * 12/12));
    max-width: calc(99.9% * 12/12 - (3% - 3% * 12/12));
    width: calc(99.9% * 12/12 - (3% - 3% * 12/12)); }
  .footer__right:nth-child(1n) {
    margin-right: 3%;
    margin-left: 0; }
  .footer__right:last-child {
    margin-right: 0; }
  .footer__right:nth-child(1n) {
    margin-right: 0;
    margin-left: auto; }
    @media (min-width: 800px) {
      .footer__right {
        margin-top: 0;
        -webkit-box-flex: 0;
            -ms-flex-positive: 0;
                flex-grow: 0;
        -ms-flex-negative: 0;
            flex-shrink: 0;
        -ms-flex-preferred-size: calc(99.9% * 3/12 - (3% - 3% * 3/12));
            flex-basis: calc(99.9% * 3/12 - (3% - 3% * 3/12));
        max-width: calc(99.9% * 3/12 - (3% - 3% * 3/12));
        width: calc(99.9% * 3/12 - (3% - 3% * 3/12)); }
      .footer__right:nth-child(1n) {
        margin-right: 3%;
        margin-left: 0; }
      .footer__right:last-child {
        margin-right: 0; }
      .footer__right:nth-child(12n) {
        margin-right: 0;
        margin-left: auto; } }

.widgets {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-flow: row wrap;
          flex-flow: row wrap; }

.widget {
  -webkit-box-flex: 0;
      -ms-flex-positive: 0;
          flex-grow: 0;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  -ms-flex-preferred-size: calc(99.9% * 3/3 - (3% - 3% * 3/3));
      flex-basis: calc(99.9% * 3/3 - (3% - 3% * 3/3));
  max-width: calc(99.9% * 3/3 - (3% - 3% * 3/3));
  width: calc(99.9% * 3/3 - (3% - 3% * 3/3));
  margin-bottom: 2rem; }

.widget:nth-child(1n) {
  margin-right: 3%;
  margin-left: 0; }

.widget:last-child {
  margin-right: 0; }

.widget:nth-child(1n) {
  margin-right: 0;
  margin-left: auto; }
  .widget__title {
    margin-top: 0;
    display: block;
    white-space: nowrap;
    -o-text-overflow: ellipsis;
       text-overflow: ellipsis;
    overflow: hidden; }
  @media (min-width: 1150px) {
    .widget {
      -webkit-box-flex: 0;
          -ms-flex-positive: 0;
              flex-grow: 0;
      -ms-flex-negative: 0;
          flex-shrink: 0;
      -ms-flex-preferred-size: calc(99.9% * 1/3 - (3% - 3% * 1/3));
          flex-basis: calc(99.9% * 1/3 - (3% - 3% * 1/3));
      max-width: calc(99.9% * 1/3 - (3% - 3% * 1/3));
      width: calc(99.9% * 1/3 - (3% - 3% * 1/3));
      margin-bottom: 0; }
    .widget:nth-child(1n) {
      margin-right: 3%;
      margin-left: 0; }
    .widget:last-child {
      margin-right: 0; }
    .widget:nth-child(3n) {
      margin-right: 0;
      margin-left: auto; } }
  .widget:last-child {
    margin-bottom: 0; }

.hero {
  width: 100%;
  height: 50vh;
  min-height: 20rem; }

.tease-post__title {
  margin-top: 0; }

.tease-post .read-more {
  margin-top: 1rem;
  display: table; }
  .tease-post .read-more:after {
    content: '\2192';
    display: inline-block;
    margin-left: .3rem; }

.list {
  margin: 0;
  padding: 0;
  list-style: none; }
  .list__item {
    padding: 2rem 0;
    border-top: 1px solid gainsboro; }
    .list__item:last-child {
      border-bottom: 1px solid gainsboro; }

.wp-block-column img[class^='wp-image-'],
.wp-block-column img[class*=' wp-image-'] {
  width: auto !important;
  height: auto !important; }

.wp-block-column h1:first-of-type,
.wp-block-column h2:first-of-type,
.wp-block-column h3:first-of-type,
.wp-block-column h4:first-of-type,
.wp-block-column h5:first-of-type,
.wp-block-column p:first-of-type {
  margin-top: 0; }

.events__filter__list {
  list-style: none;
  padding: 0;
  margin-bottom: 3rem; }
  .events__filter__list li {
    padding: 0;
    display: inline-block;
    margin-right: 1.5rem;
    margin-bottom: .5rem; }
    .events__filter__list li a.is-active {
      color: #484646;
      border-bottom: 1px solid #484646; }

.password-form input[type="password"] {
  padding: 8px;
  border: 1px solid gainsboro;
  line-height: 1;
  font-size: inherit; }
  .password-form input[type="password"]:focus {
    outline: none;
    border-color: #484646; }

.anchor-nav {
  margin-left: 0;
  padding: 0;
  margin-top: 2rem;
  list-style: none; }
  .anchor-nav li a {
    padding: 0.5rem 0;
    display: block;
    border-bottom: 1px solid gainsboro; }

article .wp-block-query.two-columns-layout li {
  margin-bottom: 1.25em;
  width: calc((100% / 2) - 1.25em + (1.25em / 2)); }
  article .wp-block-query.two-columns-layout li .wp-block-post-featured-image {
    position: relative;
    width: 100%;
    padding-top: 65%; }
    article .wp-block-query.two-columns-layout li .wp-block-post-featured-image img {
      height: 100%;
      width: 100%;
      position: absolute;
      top: 0;
      left: 0;
      -o-object-fit: cover;
         object-fit: cover; }
  article .wp-block-query.two-columns-layout li h2.wp-block-post-title {
    margin-top: 0.5em;
    margin-bottom: 0.5em; }
  @media (max-width: 1150px) {
    article .wp-block-query.two-columns-layout li {
      width: 100%; } }
  article .wp-block-query.two-columns-layout li .wp-block-post-date {
    margin-bottom: 0.5rem; }
  article .wp-block-query.two-columns-layout li .wp-block-post-excerpt p {
    margin-top: 0; }

article .wp-block-query.two-columns-layout .wp-block-post-excerpt p {
  margin-top: 0; }

article .wp-block-query.two-columns-layout .wp-block-post-excerpt .wp-block-post-excerpt__more-text a.wp-block-post-excerpt__more-link {
  position: relative;
  text-decoration: none;
  padding-bottom: 0.5rem;
  min-width: 5rem; }
  article .wp-block-query.two-columns-layout .wp-block-post-excerpt .wp-block-post-excerpt__more-text a.wp-block-post-excerpt__more-link::after {
    position: absolute;
    content: "";
    width: 5rem;
    height: 2px;
    left: 0;
    bottom: 0; }

article .wp-block-query.two-columns-layout .is-flex-container.columns-2 {
  gap: 0;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between; }

article .wp-block-query.horizontal-layout li:first-child hr.wp-block-separator {
  margin-top: 0; }

article .wp-block-query.horizontal-layout li hr.wp-block-separator {
  margin-bottom: 2rem;
  margin-top: 2rem; }

article .wp-block-query.horizontal-layout li > .wp-block-columns {
  -ms-flex-wrap: nowrap !important;
      flex-wrap: nowrap !important;
  margin-bottom: 0;
  gap: 0;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between; }
  article .wp-block-query.horizontal-layout li > .wp-block-columns .wp-block-column {
    margin-bottom: 0; }
    @media (max-width: 781px) {
      article .wp-block-query.horizontal-layout li > .wp-block-columns .wp-block-column:nth-child(1) {
        -ms-flex-preferred-size: 33.33% !important;
            flex-basis: 33.33% !important; }
      article .wp-block-query.horizontal-layout li > .wp-block-columns .wp-block-column:nth-child(2) {
        -ms-flex-preferred-size: 66.66% !important;
            flex-basis: 66.66% !important; } }

article .wp-block-query.horizontal-layout li h2.wp-block-post-title {
  font-size: 1.45rem; }

article .wp-block-query.horizontal-layout li .wp-block-post-featured-image {
  position: relative;
  width: 100%;
  padding-top: 70%; }
  article .wp-block-query.horizontal-layout li .wp-block-post-featured-image img {
    height: 100%;
    width: 100%;
    position: absolute;
    top: 0;
    left: 0;
    -o-object-fit: cover;
       object-fit: cover; }

article .wp-block-query.horizontal-layout li .wp-block-post-excerpt__more-text a.wp-block-post-excerpt__more-link::after {
  content: '\2192';
  display: inline-block;
  margin-left: 0.3rem; }

article .wp-block-query .wp-block-query-pagination {
  margin-top: 40px; }

.wp-block-eedee-block-gutenslider .slide-content .wp-block-buttons .wp-block-button__link {
  border-radius: 0; }

.wp-block-columns .wp-block-column .wp-block-image img {
  height: auto;
  width: 100%; }

.wp-block-image img {
  height: auto;
  width: auto; }

.wp-block-column:not(:last-child) {
  margin-right: 0; }
  @media (min-width: 800px) {
    .wp-block-column:not(:last-child) {
      margin-right: 1.5%; } }

.wp-block-column:not(:first-child) {
  margin-right: 0; }
  @media (min-width: 800px) {
    .wp-block-column:not(:first-child) {
      margin-right: 1.5%; } }

.pswp-item {
  cursor: pointer; }

/*! PhotoSwipe main CSS by Dmitry Semenov | photoswipe.com | MIT license */
/*
	Styles for basic PhotoSwipe functionality (sliding area, open/close transitions)
*/
/* pswp = photoswipe */
.pswp {
  display: none;
  position: absolute;
  width: 100%;
  height: 100%;
  left: 0;
  top: 0;
  overflow: hidden;
  -ms-touch-action: none;
  touch-action: none;
  z-index: 1500;
  -webkit-text-size-adjust: 100%;
  /* create separate layer, to avoid paint on window.onscroll in webkit/blink */
  -webkit-backface-visibility: hidden;
  outline: none; }
  .pswp * {
    -webkit-box-sizing: border-box;
            box-sizing: border-box; }
  .pswp img {
    max-width: none; }

/* style is added when JS option showHideOpacity is set to true */
.pswp--animate_opacity {
  /* 0.001, because opacity:0 doesn't trigger Paint action, which causes lag at start of transition */
  opacity: 0.001;
  will-change: opacity;
  /* for open/close transition */
  -webkit-transition: opacity 333ms cubic-bezier(0.4, 0, 0.22, 1);
  -o-transition: opacity 333ms cubic-bezier(0.4, 0, 0.22, 1);
  transition: opacity 333ms cubic-bezier(0.4, 0, 0.22, 1); }

.pswp--open {
  display: block; }

.pswp--zoom-allowed .pswp__img {
  /* autoprefixer: off */
  cursor: -webkit-zoom-in;
  cursor: -moz-zoom-in;
  cursor: zoom-in; }

.pswp--zoomed-in .pswp__img {
  /* autoprefixer: off */
  cursor: -webkit-grab;
  cursor: -moz-grab;
  cursor: grab; }

.pswp--dragging .pswp__img {
  /* autoprefixer: off */
  cursor: -webkit-grabbing;
  cursor: -moz-grabbing;
  cursor: grabbing; }

/*
	Background is added as a separate element.
	As animating opacity is much faster than animating rgba() background-color.
*/
.pswp__bg {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background: white;
  opacity: 0;
  -webkit-transform: translateZ(0);
          transform: translateZ(0);
  -webkit-backface-visibility: hidden;
  will-change: opacity; }

.pswp__scroll-wrap {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  overflow: hidden; }

.pswp__container,
.pswp__zoom-wrap {
  -ms-touch-action: none;
  touch-action: none;
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0; }

/* Prevent selection and tap highlights */
.pswp__container,
.pswp__img {
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
      user-select: none;
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
  -webkit-touch-callout: none; }

.pswp__zoom-wrap {
  position: absolute;
  width: 100%;
  -webkit-transform-origin: left top;
  -ms-transform-origin: left top;
  transform-origin: left top;
  /* for open/close transition */
  -webkit-transition: -webkit-transform 333ms cubic-bezier(0.4, 0, 0.22, 1);
  transition: -webkit-transform 333ms cubic-bezier(0.4, 0, 0.22, 1);
  -o-transition: transform 333ms cubic-bezier(0.4, 0, 0.22, 1);
  transition: transform 333ms cubic-bezier(0.4, 0, 0.22, 1);
  transition: transform 333ms cubic-bezier(0.4, 0, 0.22, 1), -webkit-transform 333ms cubic-bezier(0.4, 0, 0.22, 1); }

.pswp__bg {
  will-change: opacity;
  /* for open/close transition */
  -webkit-transition: opacity 333ms cubic-bezier(0.4, 0, 0.22, 1);
  -o-transition: opacity 333ms cubic-bezier(0.4, 0, 0.22, 1);
  transition: opacity 333ms cubic-bezier(0.4, 0, 0.22, 1); }

.pswp--animated-in .pswp__bg,
.pswp--animated-in .pswp__zoom-wrap {
  -webkit-transition: none;
  -o-transition: none;
  transition: none; }

.pswp__container,
.pswp__zoom-wrap {
  -webkit-backface-visibility: hidden; }

.pswp__item {
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
  overflow: hidden; }

.pswp__img {
  position: absolute;
  width: auto;
  height: auto;
  top: 0;
  left: 0; }

/*
	stretched thumbnail or div placeholder element (see below)
	style is added to avoid flickering in webkit/blink when layers overlap
*/
.pswp__img--placeholder {
  -webkit-backface-visibility: hidden; }

/*
	div element that matches size of large image
	large image loads on top of it
*/
.pswp__img--placeholder--blank {
  background: #222; }

.pswp--ie .pswp__img {
  width: 100% !important;
  height: auto !important;
  left: 0;
  top: 0; }

/*
	Error message appears when image is not loaded
	(JS option errorMsg controls markup)
*/
.pswp__error-msg {
  position: absolute;
  left: 0;
  top: 50%;
  width: 100%;
  text-align: center;
  font-size: 14px;
  line-height: 16px;
  margin-top: -8px;
  color: #CCC; }

.pswp__error-msg a {
  color: #CCC;
  text-decoration: underline; }

/*! PhotoSwipe Default UI CSS by Dmitry Semenov | photoswipe.com | MIT license */
/*

	Contents:

	1. Buttons
	2. Share modal and links
	3. Index indicator ("1 of X" counter)
	4. Caption
	5. Loading indicator
	6. Additional styles (root element, top bar, idle state, hidden state, etc.)

*/
/*
	
	1. Buttons

 */
/* <button> css reset */
.pswp__button {
  width: 44px;
  height: 44px;
  position: relative;
  background: none;
  cursor: pointer;
  overflow: visible;
  -webkit-appearance: none;
  display: block;
  border: 0;
  padding: 0;
  margin: 0;
  float: right;
  opacity: 0.75;
  -webkit-transition: opacity 0.2s;
  -o-transition: opacity 0.2s;
  transition: opacity 0.2s;
  -webkit-box-shadow: none;
          box-shadow: none; }
  .pswp__button:focus, .pswp__button:hover {
    opacity: 1; }
  .pswp__button:active {
    outline: none;
    opacity: 0.9; }
  .pswp__button::-moz-focus-inner {
    padding: 0;
    border: 0; }

/* pswp__ui--over-close class it added when mouse is over element that should close gallery */
.pswp__ui--over-close .pswp__button--close {
  opacity: 1; }

.pswp__button,
.pswp__button--arrow--left:before,
.pswp__button--arrow--right:before {
  background: url(../../../images/photoswipe/default-skin.png) 0 0 no-repeat;
  background-size: 264px 88px;
  width: 44px;
  height: 44px; }

@media (-webkit-min-device-pixel-ratio: 1.1), (-webkit-min-device-pixel-ratio: 1.09375), (-o-min-device-pixel-ratio: 35/32), (min-resolution: 105dpi), (-o-min-device-pixel-ratio: 11/10), (min-resolution: 1.1dppx) {
  /* Serve SVG sprite if browser supports SVG and resolution is more than 105dpi */
  .pswp--svg .pswp__button,
  .pswp--svg .pswp__button--arrow--left:before,
  .pswp--svg .pswp__button--arrow--right:before {
    background-image: url(../../../images/photoswipe/default-skin.svg); }
  .pswp--svg .pswp__button--arrow--left,
  .pswp--svg .pswp__button--arrow--right {
    background: none; } }

.pswp__button--close {
  background-position: 0 -44px; }

.pswp__button--share {
  background-position: -44px -44px; }

.pswp__button--fs {
  display: none; }

.pswp--supports-fs .pswp__button--fs {
  display: block; }

.pswp--fs .pswp__button--fs {
  background-position: -44px 0; }

.pswp__button--zoom {
  display: none;
  background-position: -88px 0; }

.pswp--zoom-allowed .pswp__button--zoom {
  display: block; }

.pswp--zoomed-in .pswp__button--zoom {
  background-position: -132px 0; }

/* no arrows on touch screens */
.pswp--touch .pswp__button--arrow--left,
.pswp--touch .pswp__button--arrow--right {
  visibility: hidden; }

/*
	Arrow buttons hit area
	(icon is added to :before pseudo-element)
*/
.pswp__button--arrow--left,
.pswp__button--arrow--right {
  background: none;
  top: 50%;
  margin-top: -50px;
  width: 70px;
  height: 100px;
  position: absolute; }

.pswp__button--arrow--left {
  left: 0; }

.pswp__button--arrow--right {
  right: 0; }

.pswp__button--arrow--left:before,
.pswp__button--arrow--right:before {
  content: '';
  top: 35px;
  background-color: rgba(0, 0, 0, 0.3);
  height: 30px;
  width: 32px;
  position: absolute; }

.pswp__button--arrow--left:before {
  left: 6px;
  background-position: -138px -44px; }

.pswp__button--arrow--right:before {
  right: 6px;
  background-position: -94px -44px; }

/*

	2. Share modal/popup and links

 */
.pswp__counter,
.pswp__share-modal {
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
      user-select: none; }

.pswp__share-modal {
  display: block;
  background: rgba(0, 0, 0, 0.5);
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  padding: 10px;
  position: absolute;
  z-index: 1600;
  opacity: 0;
  -webkit-transition: opacity 0.25s ease-out;
  -o-transition: opacity 0.25s ease-out;
  transition: opacity 0.25s ease-out;
  -webkit-backface-visibility: hidden;
  will-change: opacity; }

.pswp__share-modal--hidden {
  display: none; }

.pswp__share-tooltip {
  z-index: 1620;
  position: absolute;
  background: #FFF;
  top: 56px;
  border-radius: 2px;
  display: block;
  width: auto;
  right: 44px;
  -webkit-box-shadow: 0 2px 5px rgba(0, 0, 0, 0.25);
          box-shadow: 0 2px 5px rgba(0, 0, 0, 0.25);
  -webkit-transform: translateY(6px);
      -ms-transform: translateY(6px);
          transform: translateY(6px);
  -webkit-transition: -webkit-transform 0.25s;
  transition: -webkit-transform 0.25s;
  -o-transition: transform 0.25s;
  transition: transform 0.25s;
  transition: transform 0.25s, -webkit-transform 0.25s;
  -webkit-backface-visibility: hidden;
  will-change: transform; }
  .pswp__share-tooltip a {
    display: block;
    padding: 8px 12px;
    color: #000;
    text-decoration: none;
    font-size: 14px;
    line-height: 18px; }
    .pswp__share-tooltip a:hover {
      text-decoration: none;
      color: #000; }
    .pswp__share-tooltip a:first-child {
      /* round corners on the first/last list item */
      border-radius: 2px 2px 0 0; }
    .pswp__share-tooltip a:last-child {
      border-radius: 0 0 2px 2px; }

.pswp__share-modal--fade-in {
  opacity: 1; }
  .pswp__share-modal--fade-in .pswp__share-tooltip {
    -webkit-transform: translateY(0);
        -ms-transform: translateY(0);
            transform: translateY(0); }

/* increase size of share links on touch devices */
.pswp--touch .pswp__share-tooltip a {
  padding: 16px 12px; }

a.pswp__share--facebook:before {
  content: '';
  display: block;
  width: 0;
  height: 0;
  position: absolute;
  top: -12px;
  right: 15px;
  border: 6px solid rgba(0, 0, 0, 0);
  border-bottom-color: #FFF;
  -webkit-pointer-events: none;
  -moz-pointer-events: none;
  pointer-events: none; }

a.pswp__share--facebook:hover {
  background: #3E5C9A;
  color: #FFF; }
  a.pswp__share--facebook:hover:before {
    border-bottom-color: #3E5C9A; }

a.pswp__share--twitter:hover {
  background: #55ACEE;
  color: #FFF; }

a.pswp__share--pinterest:hover {
  background: #CCC;
  color: #CE272D; }

a.pswp__share--download:hover {
  background: #DDD; }

/*

	3. Index indicator ("1 of X" counter)

 */
.pswp__counter {
  position: absolute;
  left: 0;
  top: 0;
  height: 44px;
  font-size: 13px;
  line-height: 44px;
  color: #FFF;
  opacity: 0.75;
  padding: 0 10px; }

/*
	
	4. Caption

 */
.pswp__caption {
  position: absolute;
  left: 0;
  bottom: 0;
  width: 100%;
  min-height: 44px; }
  .pswp__caption small {
    font-size: 11px;
    color: #BBB; }

.pswp__caption__center {
  text-align: left;
  max-width: 420px;
  margin: 0 auto;
  font-size: 13px;
  padding: 10px;
  line-height: 20px;
  color: #CCC; }

.pswp__caption--empty {
  display: none; }

/* Fake caption element, used to calculate height of next/prev image */
.pswp__caption--fake {
  visibility: hidden; }

/*

	5. Loading indicator (preloader)

	You can play with it here - http://codepen.io/dimsemenov/pen/yyBWoR

 */
.pswp__preloader {
  width: 44px;
  height: 44px;
  position: absolute;
  top: 0;
  left: 50%;
  margin-left: -22px;
  opacity: 0;
  -webkit-transition: opacity 0.25s ease-out;
  -o-transition: opacity 0.25s ease-out;
  transition: opacity 0.25s ease-out;
  will-change: opacity;
  direction: ltr; }

.pswp__preloader__icn {
  width: 20px;
  height: 20px;
  margin: 12px; }

.pswp__preloader--active {
  opacity: 1; }
  .pswp__preloader--active .pswp__preloader__icn {
    /* We use .gif in browsers that don't support CSS animation */
    background: url(../../../images/photoswipe/preloader.gif) 0 0 no-repeat; }

.pswp--css_animation .pswp__preloader--active {
  opacity: 1; }
  .pswp--css_animation .pswp__preloader--active .pswp__preloader__icn {
    -webkit-animation: clockwise 500ms linear infinite;
            animation: clockwise 500ms linear infinite; }
  .pswp--css_animation .pswp__preloader--active .pswp__preloader__donut {
    -webkit-animation: donut-rotate 1000ms cubic-bezier(0.4, 0, 0.22, 1) infinite;
            animation: donut-rotate 1000ms cubic-bezier(0.4, 0, 0.22, 1) infinite; }

.pswp--css_animation .pswp__preloader__icn {
  background: none;
  opacity: 0.75;
  width: 14px;
  height: 14px;
  position: absolute;
  left: 15px;
  top: 15px;
  margin: 0; }

.pswp--css_animation .pswp__preloader__cut {
  /* 
			The idea of animating inner circle is based on Polymer ("material") loading indicator 
			 by Keanu Lee https://blog.keanulee.com/2014/10/20/the-tale-of-three-spinners.html
		*/
  position: relative;
  width: 7px;
  height: 14px;
  overflow: hidden; }

.pswp--css_animation .pswp__preloader__donut {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  width: 14px;
  height: 14px;
  border: 2px solid #FFF;
  border-radius: 50%;
  border-left-color: transparent;
  border-bottom-color: transparent;
  position: absolute;
  top: 0;
  left: 0;
  background: none;
  margin: 0; }

@media screen and (max-width: 1024px) {
  .pswp__preloader {
    position: relative;
    left: auto;
    top: auto;
    margin: 0;
    float: right; } }

@-webkit-keyframes clockwise {
  0% {
    -webkit-transform: rotate(0deg);
            transform: rotate(0deg); }
  100% {
    -webkit-transform: rotate(360deg);
            transform: rotate(360deg); } }

@keyframes clockwise {
  0% {
    -webkit-transform: rotate(0deg);
            transform: rotate(0deg); }
  100% {
    -webkit-transform: rotate(360deg);
            transform: rotate(360deg); } }

@-webkit-keyframes donut-rotate {
  0% {
    -webkit-transform: rotate(0);
            transform: rotate(0); }
  50% {
    -webkit-transform: rotate(-140deg);
            transform: rotate(-140deg); }
  100% {
    -webkit-transform: rotate(0);
            transform: rotate(0); } }

@keyframes donut-rotate {
  0% {
    -webkit-transform: rotate(0);
            transform: rotate(0); }
  50% {
    -webkit-transform: rotate(-140deg);
            transform: rotate(-140deg); }
  100% {
    -webkit-transform: rotate(0);
            transform: rotate(0); } }

/*
	
	6. Additional styles

 */
/* root element of UI */
.pswp__ui {
  -webkit-font-smoothing: auto;
  visibility: visible;
  opacity: 1;
  z-index: 1550; }

/* top black bar with buttons and "1 of X" indicator */
.pswp__top-bar {
  position: absolute;
  left: 0;
  top: 0;
  height: 44px;
  width: 100%; }

.pswp__caption,
.pswp__top-bar,
.pswp--has_mouse .pswp__button--arrow--left,
.pswp--has_mouse .pswp__button--arrow--right {
  -webkit-backface-visibility: hidden;
  will-change: opacity;
  -webkit-transition: opacity 333ms cubic-bezier(0.4, 0, 0.22, 1);
  -o-transition: opacity 333ms cubic-bezier(0.4, 0, 0.22, 1);
  transition: opacity 333ms cubic-bezier(0.4, 0, 0.22, 1); }

/* pswp--has_mouse class is added only when two subsequent mousemove events occur */
.pswp--has_mouse .pswp__button--arrow--left,
.pswp--has_mouse .pswp__button--arrow--right {
  visibility: visible; }

.pswp__top-bar,
.pswp__caption {
  background-color: rgba(0, 0, 0, 0.5); }

/* pswp__ui--fit class is added when main image "fits" between top bar and bottom bar (caption) */
.pswp__ui--fit .pswp__top-bar,
.pswp__ui--fit .pswp__caption {
  background-color: rgba(0, 0, 0, 0.3); }

/* pswp__ui--idle class is added when mouse isn't moving for several seconds (JS option timeToIdle) */
.pswp__ui--idle .pswp__top-bar {
  opacity: 0; }

.pswp__ui--idle .pswp__button--arrow--left,
.pswp__ui--idle .pswp__button--arrow--right {
  opacity: 0; }

/*
	pswp__ui--hidden class is added when controls are hidden
	e.g. when user taps to toggle visibility of controls
*/
.pswp__ui--hidden .pswp__top-bar,
.pswp__ui--hidden .pswp__caption,
.pswp__ui--hidden .pswp__button--arrow--left,
.pswp__ui--hidden .pswp__button--arrow--right {
  /* Force paint & create composition layer for controls. */
  opacity: 0.001; }

/* pswp__ui--one-slide class is added when there is just one item in gallery */
.pswp__ui--one-slide .pswp__button--arrow--left,
.pswp__ui--one-slide .pswp__button--arrow--right,
.pswp__ui--one-slide .pswp__counter {
  display: none; }

.pswp__element--disabled {
  display: none !important; }

.pswp--minimal--dark .pswp__top-bar {
  background: none; }

.pswp__button--arrow--left:before,
.pswp__button--arrow--right:before {
  background-color: white; }

.pswp__ui .pswp__top-bar,
.pswp__ui .pswp__caption {
  background-color: white; }

.pswp__counter {
  color: #484646; }

.pswp__img--placeholder--blank {
  background: white; }

.pswp__caption__center {
  text-align: center;
  color: #484646; }

.pswp__item__video {
  height: calc(100% - 40px - 44px);
  margin-top: 44px;
  overflow: hidden;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center; }
  .pswp__item__video__inner {
    max-width: 1024px;
    width: 1024px; }
    .pswp__item__video__inner__inner {
      position: relative;
      width: 100%;
      padding-bottom: 56.25%; }
      .pswp__item__video__inner__inner iframe {
        position: absolute;
        left: 0;
        top: 0;
        width: 100%;
        height: 100%; }

input[type=submit].gform_button.button {
  background-color: var(--gform-theme-color-primary, #69913b);
  color: var(--gform-theme-color-primary-contrast, white); }

/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImluZGV4LmNzcyIsIjxpbnB1dCBjc3MgMT4iLCJfZm9udHMuc2NzcyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9icmVha3BvaW50LXNhc3Mvc3R5bGVzaGVldHMvX2JyZWFrcG9pbnQuc2NzcyIsIl9mb250c19jb21tb24uc2NzcyIsIl9jb2xvcnMuc2NzcyIsIl9pY29ucy5zY3NzIiwiX2dyaWQuc2NzcyIsIl9oZWFkZXIuc2NzcyIsIl9sb2dvLnNjc3MiLCJfbmF2LnNjc3MiLCJfZm9vdGVyLnNjc3MiLCJfd2lkZ2V0LnNjc3MiLCJfaGVyby5zY3NzIiwiX3RlYXNlX3Bvc3Quc2NzcyIsIl9saXN0LnNjc3MiLCJfY29udGVudC5zY3NzIiwiX2V2ZW50cy5zY3NzIiwiX3Bhc3N3b3JkX2Zvcm0uc2NzcyIsIl9hbmNob3JfbmF2LnNjc3MiLCJfcXVlcnlfbG9vcC5zY3NzIiwiX2d1dGVuc2xpZGVyLnNjc3MiLCJ3cF9ibG9jay9faW1nLnNjc3MiLCJ3cF9ibG9jay9fY29sdW1uLnNjc3MiLCJfcGhvdG9zd2lwZS5zY3NzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL3Bob3Rvc3dpcGUvc3JjL2Nzcy9tYWluLnNjc3MiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvcGhvdG9zd2lwZS9zcmMvY3NzL19tYWluLXNldHRpbmdzLnNjc3MiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvcGhvdG9zd2lwZS9zcmMvY3NzL2RlZmF1bHQtc2tpbi9kZWZhdWx0LXNraW4uc2NzcyIsIl9mb3Jtcy5zY3NzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGlCQUFpQjtBQ1dqQjtFQUNFLGtCQUFrQjtFQUNsQiwyQkFBMkI7RUFDM0IsK0JBQStCLEVBQ2hDO0FBdUJEO0VBQ0UsZUFBZTtFQUNmLGlCQUFpQixFQUNsQjtBQTJCRDtFQUNFLGdDQUF3QjtVQUF4Qix3QkFBd0I7RUFDeEIsVUFB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bUJVaEM7O0FBRUQ7O0VBR0ksd0JuQmY2QixFbUJnQjlCOztBR3VTSDtFSG5TRSxlbkJ2QnlCLEVtQndCMUI7O0FDMkpEO0VEeEpFLGtCbkJ4QitCLEVtQnlCaEM7O0FHOFREO0VIM1RFLG1CQUFrQjtFQUNsQixlbkJoQ3lCLEVtQmlDMUI7O0FBRUQ7RUFDRSxpQ0FBZ0M7RUFDaEMsaUJBQWdCO0VBQ2hCLGlCQUFnQjtFQUNoQixxQkFBYTtFQUFiLHFCQUFhO0VBQWIsY0FBYTtFQUNiLDBCQUFtQjtNQUFuQix1QkFBbUI7VUFBbkIsb0JBQW1CO0VBQ25CLHlCQUF1QjtNQUF2QixzQkFBdUI7VUFBdkIsd0JBQXVCLEVBa0J4QjtFQWpCQztJQUVFLGtCQUFpQjtJQUNqQixjQUFhLEVBYWQ7SUFaQztNQUNFLG1CQUFrQjtNQUNsQixZQUFXO01BQ1gsdUJBQXNCLEVBUXZCO01BWEE7UUFLRyxtQkFBa0I7UUFDbEIsUUFBTztRQUNQLE9BQU07UUFDTixZQUFXO1FBQ1gsYUFBWSxFQUNiOztBSXhEUDtFQUNJLDREQUFrRTtFQUNsRSx3REFBK0QsRUFDbEUiLCJmaWxlIjoiaW5kZXguY3NzIiwic291cmNlc0NvbnRlbnQiOlsiQGNoYXJzZXQgXCJVVEYtOFwiO1xuQGltcG9ydC1ub3JtYWxpemU7XG5AZm9udC1mYWNlIHtcbiAgZm9udC1kaXNwbGF5OiBzd2FwO1xuICAvKiBDaGVjayBodHRwczovL2RldmVsb3Blci5tb3ppbGxhLm9yZy9lbi1VUy9kb2NzL1dlYi9DU1MvQGZvbnQtZmFjZS9mb250LWRpc3BsYXkgZm9yIG90aGVyIG9wdGlvbnMuICovXG4gIGZvbnQtZmFtaWx5OiAnT3BlbiBTYW5zJztcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LXdlaWdodDogNDAwO1xuICBzcmM6IHVybChcIi9hcHAvdGhlbWVzL2ppX3N0YXJ0ZXIvYXNzZXRzL2ZvbnRzL29wZW4tc2Fucy9vcGVuLXNhbnMtbGF0aW4tcmVndWxhci5lb3RcIik7XG4gIC8qIElFOSBDb21wYXQgTW9kZXMgKi9cbiAgc3JjOiB1cmwoXCIvYXBwL3RoZW1lcy9qaV9zdGFydGVyL2Fzc2V0cy9mb250cy9vcGVuLXNhbnMvb3Blbi1zYW5zLWxhdGluLXJlZ3VsYXIuZW90PyNpZWZpeFwiKSBmb3JtYXQoXCJlbWJlZGRlZC1vcGVudHlwZVwiKSwgdXJsKFwiL2FwcC90aGVtZXMvamlfc3RhcnRlci9hc3NldHMvZm9udHMvb3Blbi1zYW5zL29wZW4tc2Fucy1sYXRpbi1yZWd1bGFyLndvZmYyXCIpIGZvcm1hdChcIndvZmYyXCIpLCB1cmwoXCIvYXBwL3RoZW1lcy9qaV9zdGFydGVyL2Fzc2V0cy9mb250cy9vcGVuLXNhbnMvb3Blbi1zYW5zLWxhdGluLXJlZ3VsYXIud29mZlwiKSBmb3JtYXQoXCJ3b2ZmXCIpLCB1cmwoXCIvYXBwL3RoZW1lcy9qaV9zdGFydGVyL2Fzc2V0cy9mb250cy9vcGVuLXNhbnMvb3Blbi1zYW5zLWxhdGluLXJlZ3VsYXIudHRmXCIpIGZvcm1hdChcInRydWV0eXBlXCIpLCB1cmwoXCIvYXBwL3RoZW1lcy9qaV9zdGFydGVyL2Fzc2V0cy9mb250cy9vcGVuLXNhbnMvb3Blbi1zYW5zLWxhdGluLXJlZ3VsYXIuc3ZnI09wZW5TYW5zXCIpIGZvcm1hdChcInN2Z1wiKTtcbiAgLyogTGVnYWN5IGlPUyAqLyB9XG5cbi8qIG9wZW4tc2Fucy1pdGFsaWMgLSBsYXRpbiAqL1xuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZGlzcGxheTogc3dhcDtcbiAgLyogQ2hlY2sgaHR0cHM6Ly9kZXZlbG9wZXIubW96aWxsYS5vcmcvZW4tVVMvZG9jcy9XZWIvQ1NTL0Bmb250LWZhY2UvZm9udC1kaXNwbGF5IGZvciBvdGhlciBvcHRpb25zLiAqL1xuICBmb250LWZhbWlseTogJ09wZW4gU2Fucyc7XG4gIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgc3JjOiB1cmwoXCIvYXBwL3RoZW1lcy9qaV9zdGFydGVyL2Fzc2V0cy9mb250cy9vcGVuLXNhbnMvb3Blbi1zYW5zLWxhdGluLWl0YWxpYy5lb3RcIik7XG4gIC8qIElFOSBDb21wYXQgTW9kZXMgKi9cbiAgc3JjOiB1cmwoXCIvYXBwL3RoZW1lcy9qaV9zdGFydGVyL2Fzc2V0cy9mb250cy9vcGVuLXNhbnMvb3Blbi1zYW5zLWxhdGluLWl0YWxpYy5lb3Q/I2llZml4XCIpIGZvcm1hdChcImVtYmVkZGVkLW9wZW50eXBlXCIpLCB1cmwoXCIvYXBwL3RoZW1lcy9qaV9zdGFydGVyL2Fzc2V0cy9mb250cy9vcGVuLXNhbnMvb3Blbi1zYW5zLWxhdGluLWl0YWxpYy53b2ZmMlwiKSBmb3JtYXQoXCJ3b2ZmMlwiKSwgdXJsKFwiL2FwcC90aGVtZXMvamlfc3RhcnRlci9hc3NldHMvZm9udHMvb3Blbi1zYW5zL29wZW4tc2Fucy1sYXRpbi1pdGFsaWMud29mZlwiKSBmb3JtYXQoXCJ3b2ZmXCIpLCB1cmwoXCIvYXBwL3RoZW1lcy9qaV9zdGFydGVyL2Fzc2V0cy9mb250cy9vcGVuLXNhbnMvb3Blbi1zYW5zLWxhdGluLWl0YWxpYy50dGZcIikgZm9ybWF0KFwidHJ1ZXR5cGVcIiksIHVybChcIi9hcHAvdGhlbWVzL2ppX3N0YXJ0ZXIvYXNzZXRzL2ZvbnRzL29wZW4tc2Fucy9vcGVuLXNhbnMtbGF0aW4taXRhbGljLnN2ZyNPcGVuU2Fuc1wiKSBmb3JtYXQoXCJzdmdcIik7XG4gIC8qIExlZ2FjeSBpT1MgKi8gfVxuXG4vKiBvcGVuLXNhbnMtODAwIC0gbGF0aW4gKi9cbkBmb250LWZhY2Uge1xuICBmb250LWRpc3BsYXk6IHN3YXA7XG4gIC8qIENoZWNrIGh0dHBzOi8vZGV2ZWxvcGVyLm1vemlsbGEub3JnL2VuLVVTL2RvY3MvV2ViL0NTUy9AZm9udC1mYWNlL2ZvbnQtZGlzcGxheSBmb3Igb3RoZXIgb3B0aW9ucy4gKi9cbiAgZm9udC1mYW1pbHk6ICdPcGVuIFNhbnMnO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtd2VpZ2h0OiA4MDA7XG4gIHNyYzogdXJsKFwiL2FwcC90aGVtZXMvamlfc3RhcnRlci9hc3NldHMvZm9udHMvb3Blbi1zYW5zL29wZW4tc2Fucy1sYXRpbi04MDAuZW90XCIpO1xuICAvKiBJRTkgQ29tcGF0IE1vZGVzICovXG4gIHNyYzogdXJsKFwiL2FwcC90aGVtZXMvamlfc3RhcnRlci9hc3NldHMvZm9udHMvb3Blbi1zYW5zL29wZW4tc2Fucy1sYXRpbi04MDAuZW90PyNpZWZpeFwiKSBmb3JtYXQoXCJlbWJlZGRlZC1vcGVudHlwZVwiKSwgdXJsKFwiL2FwcC90aGVtZXMvamlfc3RhcnRlci9hc3NldHMvZm9udHMvb3Blbi1zYW5zL29wZW4tc2Fucy1sYXRpbi04MDAud29mZjJcIikgZm9ybWF0KFwid29mZjJcIiksIHVybChcIi9hcHAvdGhlbWVzL2ppX3N0YXJ0ZXIvYXNzZXRzL2ZvbnRzL29wZW4tc2Fucy9vcGVuLXNhbnMtbGF0aW4tODAwLndvZmZcIikgZm9ybWF0KFwid29mZlwiKSwgdXJsKFwiL2FwcC90aGVtZXMvamlfc3RhcnRlci9hc3NldHMvZm9udHMvb3Blbi1zYW5zL29wZW4tc2Fucy1sYXRpbi04MDAudHRmXCIpIGZvcm1hdChcInRydWV0eXBlXCIpLCB1cmwoXCIvYXBwL3RoZW1lcy9qaV9zdGFydGVyL2Fzc2V0cy9mb250cy9vcGVuLXNhbnMvb3Blbi1zYW5zLWxhdGluLTgwMC5zdmcjT3BlblNhbnNcIikgZm9ybWF0KFwic3ZnXCIpO1xuICAvKiBMZWdhY3kgaU9TICovIH1cblxuaHRtbCB7XG4gIGZvbnQtc2l6ZTogMTNweDsgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogODAwcHgpIHtcbiAgICBodG1sIHtcbiAgICAgIGZvbnQtc2l6ZTogMTRweDsgfSB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiAxMzAwcHgpIHtcbiAgICBodG1sIHtcbiAgICAgIGZvbnQtc2l6ZTogMTVweDsgfSB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiAxNTAwcHgpIHtcbiAgICBodG1sIHtcbiAgICAgIGZvbnQtc2l6ZTogMTZweDsgfSB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiAxODAwcHgpIHtcbiAgICBodG1sIHtcbiAgICAgIGZvbnQtc2l6ZTogMTdweDsgfSB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiAyMTAwcHgpIHtcbiAgICBodG1sIHtcbiAgICAgIGZvbnQtc2l6ZTogMThweDsgfSB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiAyNjAwcHgpIHtcbiAgICBodG1sIHtcbiAgICAgIGZvbnQtc2l6ZTogMTlweDsgfSB9XG5cbmJvZHkge1xuICBmb250LWZhbWlseTogJ09wZW4gU2FucycsIEFyaWFsLCBzYW5zLXNlcmlmO1xuICBmb250LXdlaWdodDogNDAwO1xuICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcbiAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcbiAgbGluZS1oZWlnaHQ6IDEuNTtcbiAgZm9udC1mZWF0dXJlLXNldHRpbmdzOiAndG51bSc7XG4gIGNvbG9yOiAjNDg0NjQ2OyB9XG5cbnAge1xuICBtYXJnaW4tYm90dG9tOiAxcmVtOyB9XG5cbmVtLCBpIHtcbiAgZm9udC13ZWlnaHQ6IDQwMGk7IH1cblxuaDEsIGgyLCBoMywgaDQsIGg1IHtcbiAgZm9udC13ZWlnaHQ6IDgwMDtcbiAgbGV0dGVyLXNwYWNpbmc6IC0wLjAzZW07XG4gIG1hcmdpbi10b3A6IDA7IH1cblxuaDEge1xuICBmb250LXNpemU6IDIuMnJlbTtcbiAgbWFyZ2luLWJvdHRvbTogMnJlbTtcbiAgbGluZS1oZWlnaHQ6IDE7IH1cblxuaDIge1xuICBmb250LXNpemU6IDEuNzVyZW07XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG4gIG1hcmdpbi10b3A6IDNyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjE0NTsgfVxuXG5oMyB7XG4gIGZvbnQtc2l6ZTogMS4yNXJlbTtcbiAgbGluZS1oZWlnaHQ6IDEuMjU7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG4gIG1hcmdpbi10b3A6IDJyZW07IH1cblxuaDQge1xuICBmb250LXNpemU6IDFyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjU7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG4gIG1hcmdpbi10b3A6IDEuNXJlbTsgfVxuXG5oNSB7XG4gIGZvbnQtc2l6ZTogMC44MTNyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjUzODtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgbWFyZ2luLXRvcDogMXJlbTsgfVxuXG5hIHtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICBjb2xvcjogIzY5OTEzYjtcbiAgdHJhbnNpdGlvbjogLjJzIGNvbG9yOyB9XG4gIGE6dmlzaXRlZCB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIGNvbG9yOiAjNjk5MTNiOyB9XG4gICAgYTp2aXNpdGVkOmhvdmVyIHtcbiAgICAgIGNvbG9yOiAjNDg0NjQ2OyB9XG4gIGE6aG92ZXIge1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICBjb2xvcjogIzQ4NDY0NjsgfVxuXG50YWJsZSB7XG4gIGJvcmRlci1jb2xsYXBzZTogY29sbGFwc2U7XG4gIHdpZHRoOiAxMDAlOyB9XG4gIHRhYmxlIHRkLCB0YWJsZSB0aCB7XG4gICAgcGFkZGluZzogLjZyZW0gLjZyZW0gLjZyZW0gMDtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgZ2FpbnNib3JvOyB9XG4gICAgdGFibGUgdGQ6Zmlyc3QtY2hpbGQsIHRhYmxlIHRoOmZpcnN0LWNoaWxkIHtcbiAgICAgIHBhZGRpbmctbGVmdDogMDsgfVxuICAgIHRhYmxlIHRkOmxhc3QtY2hpbGQsIHRhYmxlIHRoOmxhc3QtY2hpbGQge1xuICAgICAgcGFkZGluZy1yaWdodDogMDsgfVxuICAgIHRhYmxlIHRkOm50aC1jaGlsZCgzKTpudGgtbGFzdC1jaGlsZCgxKSwgdGFibGUgdGQ6bnRoLWNoaWxkKDIpOm50aC1sYXN0LWNoaWxkKDIpLCB0YWJsZSB0ZDpudGgtY2hpbGQoMSk6bnRoLWxhc3QtY2hpbGQoMyksIHRhYmxlIHRoOm50aC1jaGlsZCgzKTpudGgtbGFzdC1jaGlsZCgxKSwgdGFibGUgdGg6bnRoLWNoaWxkKDIpOm50aC1sYXN0LWNoaWxkKDIpLCB0YWJsZSB0aDpudGgtY2hpbGQoMSk6bnRoLWxhc3QtY2hpbGQoMykge1xuICAgICAgd2lkdGg6IDMzLjMzMzMzJTsgfVxuICAgIHRhYmxlIHRkOm50aC1jaGlsZCgyKTpudGgtbGFzdC1jaGlsZCgxKSwgdGFibGUgdGg6bnRoLWNoaWxkKDIpOm50aC1sYXN0LWNoaWxkKDEpIHtcbiAgICAgIHdpZHRoOiA2NyU7IH1cbiAgICB0YWJsZSB0ZDpudGgtY2hpbGQoMSk6bnRoLWxhc3QtY2hpbGQoMiksIHRhYmxlIHRoOm50aC1jaGlsZCgxKTpudGgtbGFzdC1jaGlsZCgyKSB7XG4gICAgICB3aWR0aDogMzMlOyB9XG4gIHRhYmxlIHRoIHtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0OyB9XG4gIHRhYmxlIHRyOmxhc3Qtb2YtdHlwZSB0ZCB7XG4gICAgYm9yZGVyLWJvdHRvbTogMDsgfVxuXG4uYnV0dG9uIHtcbiAgcGFkZGluZzogMTBweCAyNXB4O1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGJhY2tncm91bmQ6ICM2OTkxM2I7XG4gIGNvbG9yOiB3aGl0ZTtcbiAgdHJhbnNpdGlvbjogLjJzIGJhY2tncm91bmQ7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgYm9yZGVyOiAwO1xuICBmb250LXNpemU6IGluaGVyaXQ7XG4gIGxpbmUtaGVpZ2h0OiAxOyB9XG4gIC5idXR0b246aG92ZXIge1xuICAgIGJhY2tncm91bmQ6ICM0ZjZkMmM7XG4gICAgY29sb3I6IHdoaXRlOyB9XG4gIC5idXR0b24gKyAuYnV0dG9uIHtcbiAgICBtYXJnaW4tbGVmdDogLjVyZW07IH1cbiAgLmJ1dHRvbjpmb2N1cyB7XG4gICAgb3V0bGluZTogbm9uZTsgfVxuXG4uZi1zbWFsbCwgLndpZGdldHMsIC50ZWFzZS1wb3N0IC5yZWFkLW1vcmUsIC5ldmVudHNfX3RhYmxlIHtcbiAgZm9udC1zaXplOiAwLjgxM3JlbTtcbiAgbGluZS1oZWlnaHQ6IDEuNTM4OyB9XG5cbi5jb250ZW50ID4gdWwsIC5nLWNvbnRlbnRfX2xlZnQgYXJ0aWNsZSA+IHVsLCAud3AtYmxvY2stY29sdW1uID4gdWwsIC53aWRnZXQgdWwge1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBwYWRkaW5nOiAwOyB9XG4gIC5jb250ZW50ID4gdWwgbGksIC5nLWNvbnRlbnRfX2xlZnQgYXJ0aWNsZSA+IHVsIGxpLCAud3AtYmxvY2stY29sdW1uID4gdWwgbGksIC53aWRnZXQgdWwgbGkge1xuICAgIHBhZGRpbmctbGVmdDogMWVtOyB9XG4gICAgLmNvbnRlbnQgPiB1bCBsaTpiZWZvcmUsIC5nLWNvbnRlbnRfX2xlZnQgYXJ0aWNsZSA+IHVsIGxpOmJlZm9yZSwgLndwLWJsb2NrLWNvbHVtbiA+IHVsIGxpOmJlZm9yZSwgLndpZGdldCB1bCBsaTpiZWZvcmUge1xuICAgICAgY29udGVudDogXCLigJNcIjtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIG1hcmdpbi1sZWZ0OiAtMWVtO1xuICAgICAgd2lkdGg6IDFlbTtcbiAgICAgIGNvbG9yOiBpbmhlcml0OyB9XG5cbi53aWRnZXQgPiB1bCB7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIHBhZGRpbmc6IDA7IH1cbiAgLndpZGdldCA+IHVsIGxpOmJlZm9yZSB7XG4gICAgY29udGVudDogJ1xcMjE5Mic7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIG1hcmdpbi1sZWZ0OiAtMS4zZW07XG4gICAgd2lkdGg6IDEuM2VtO1xuICAgIGNvbG9yOiAjNjk5MTNiOyB9XG5cbi5jb250ZW50ID4gb2wsIC5nLWNvbnRlbnRfX2xlZnQgYXJ0aWNsZSA+IG9sLCAud3AtYmxvY2stY29sdW1uID4gb2wge1xuICBwYWRkaW5nOiAwIDAgMCAxZW07IH1cbiAgLmNvbnRlbnQgPiBvbCBsaSwgLmctY29udGVudF9fbGVmdCBhcnRpY2xlID4gb2wgbGksIC53cC1ibG9jay1jb2x1bW4gPiBvbCBsaSB7XG4gICAgcGFkZGluZy1sZWZ0OiAwZW07IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDgwMHB4KSB7XG4gIGgxIHtcbiAgICBmb250LXNpemU6IDIuNzVyZW07IH0gfVxuXG4uYnV0dG9uLWJhY2sge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIG1hcmdpbi1ib3R0b206IDMwcHg7XG4gIGZvbnQtc2l6ZTogMS4yNXJlbTsgfVxuICAuYnV0dG9uLWJhY2s6YmVmb3JlIHtcbiAgICBjb250ZW50OiAnXFwyMTkwJztcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgbWFyZ2luLXJpZ2h0OiAuNWVtOyB9XG5cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogJ2ppJztcbiAgc3JjOiB1cmwoXCIvYXBwL3RoZW1lcy9qaV9zdGFydGVyL2Fzc2V0cy9mb250cy9pY29ucy9qaS50dGY/b3I5ZDdxXCIpIGZvcm1hdChcInRydWV0eXBlXCIpLCB1cmwoXCIvYXBwL3RoZW1lcy9qaV9zdGFydGVyL2Fzc2V0cy9mb250cy9pY29ucy9qaS53b2ZmP29yOWQ3cVwiKSBmb3JtYXQoXCJ3b2ZmXCIpLCB1cmwoXCIvYXBwL3RoZW1lcy9qaV9zdGFydGVyL2Fzc2V0cy9mb250cy9pY29ucy9qaS5zdmc/b3I5ZDdxI2ppXCIpIGZvcm1hdChcInN2Z1wiKTtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgZm9udC1zdHlsZTogbm9ybWFsOyB9XG5cbi5pY29uLCAubmF2LW1haW4gLm5hdi1hcnJvdzpiZWZvcmUsIFtjbGFzc149XCJpY29uLS1cIl0sIFtjbGFzcyo9XCIgaWNvbi0tXCJdIHtcbiAgLyogdXNlICFpbXBvcnRhbnQgdG8gcHJldmVudCBpc3N1ZXMgd2l0aCBicm93c2VyIGV4dGVuc2lvbnMgdGhhdCBjaGFuZ2UgZm9udHMgKi9cbiAgZm9udC1mYW1pbHk6ICdqaScgIWltcG9ydGFudDtcbiAgc3BlYWs6IG5vbmU7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgZm9udC12YXJpYW50OiBub3JtYWw7XG4gIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICBsaW5lLWhlaWdodDogMTtcbiAgLyogQmV0dGVyIEZvbnQgUmVuZGVyaW5nID09PT09PT09PT09ICovXG4gIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlOyB9XG5cbi5pY29uLS1hcnJvdy1jaXJjbGUtZG93bjpiZWZvcmUge1xuICBjb250ZW50OiBcIu6kgFwiOyB9XG5cbi5pY29uLS1hcnJvdy1jaXJjbGUtdXA6YmVmb3JlIHtcbiAgY29udGVudDogXCLupIFcIjsgfVxuXG4uaWNvbi0tbG9uZy1hcnJvdy1yaWdodDpiZWZvcmUge1xuICBjb250ZW50OiBcIu6kglwiOyB9XG5cbi5pY29uLS10aW1lczpiZWZvcmUge1xuICBjb250ZW50OiBcIu6kg1wiOyB9XG5cbi5pY29uLS1tZW51OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74OJXCI7IH1cblxuLmljb24tLWNoZXZyb246OmJlZm9yZSwgYXJ0aWNsZSAud3AtYmxvY2stcXVlcnkudHdvLWNvbHVtbnMtbGF5b3V0IC53cC1ibG9jay1wb3N0LWV4Y2VycHQgLndwLWJsb2NrLXBvc3QtZXhjZXJwdF9fbW9yZS10ZXh0IGEud3AtYmxvY2stcG9zdC1leGNlcnB0X19tb3JlLWxpbms6OmJlZm9yZSB7XG4gIGNvbnRlbnQ6ICcnO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHdpZHRoOiAxNXB4O1xuICBoZWlnaHQ6IDE1cHg7XG4gIGJvcmRlci1ib3R0b206IDRweCBzb2xpZDtcbiAgYm9yZGVyLXJpZ2h0OiA0cHggc29saWQ7XG4gIHRyYW5zZm9ybTogcm90YXRlKC00NWRlZyk7XG4gIG1hcmdpbi1sZWZ0OiAtN3B4O1xuICBtYXJnaW4tcmlnaHQ6IDVweDsgfVxuXG5AbG9zdCBmbGV4Ym94IGZsZXg7XG5AbG9zdCBndXR0ZXIgMyU7XG4uZy1mbGV4aWJsZSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGhlaWdodDogMTAwJTtcbiAgbWluLWhlaWdodDogMTAwdmg7IH1cbiAgLmctZmxleGlibGVfX3RvcCB7XG4gICAgZmxleDogMSAwIGF1dG87IH1cbiAgLmctZmxleGlibGVfX2JvdHRvbSB7XG4gICAgZmxleC1zaHJpbms6IDA7IH1cblxuLmctY29udGVudCB7XG4gIG1hcmdpbjogMy41cmVtIDA7IH1cbiAgLmctY29udGVudF9fbGVmdCB7XG4gICAgbG9zdC1jb2x1bW46IDEyLzEyIDE7IH1cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogMTE1MHB4KSB7XG4gICAgICAuZy1jb250ZW50X19sZWZ0IHtcbiAgICAgICAgbG9zdC1jb2x1bW46IDcvMTAgMiA1cmVtOyB9IH1cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogMTMwMHB4KSB7XG4gICAgICAuZy1jb250ZW50X19sZWZ0IHtcbiAgICAgICAgbG9zdC1jb2x1bW46IDYuNS8xMCAyIDEwcmVtOyB9IH1cbiAgLmctY29udGVudF9fcmlnaHQge1xuICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogMTE1MHB4KSB7XG4gICAgICAuZy1jb250ZW50X19yaWdodCB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBsb3N0LWNvbHVtbjogMy8xMCAyIDVyZW07IH0gfVxuICAgIEBtZWRpYSAobWluLXdpZHRoOiAxMzAwcHgpIHtcbiAgICAgIC5nLWNvbnRlbnRfX3JpZ2h0IHtcbiAgICAgICAgbG9zdC1jb2x1bW46IDMuNS8xMCAyIDEwcmVtOyB9IH1cbiAgICAuZy1jb250ZW50X19yaWdodC0td2lkZ2V0X3NpZGViYXIge1xuICAgICAgZGlzcGxheTogYmxvY2s7IH1cbiAgLmctY29udGVudF9fd2l0aF9zaWRlYmFyX19sZWZ0IHtcbiAgICBmbGV4LWJhc2lzOiAxMDAlOyB9XG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDExNTBweCkge1xuICAgICAgLmctY29udGVudF9fd2l0aF9zaWRlYmFyX19sZWZ0IHtcbiAgICAgICAgZmxleC1iYXNpczogNjUlOyB9IH1cbiAgLmctY29udGVudF9fd2l0aF9zaWRlYmFyX19yaWdodCB7XG4gICAgZmxleC1iYXNpczogMTAwJTtcbiAgICBtYXJnaW4tYm90dG9tOiAzcmVtOyB9XG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDExNTBweCkge1xuICAgICAgLmctY29udGVudF9fd2l0aF9zaWRlYmFyX19yaWdodCB7XG4gICAgICAgIGZsZXgtYmFzaXM6IDMwJTtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDsgfSB9XG5cbi5nLXdyYXBwZXIge1xuICBwYWRkaW5nOiAwIDYlO1xuICBtYXgtd2lkdGg6IDgwcmVtO1xuICBtYXJnaW46IDAgYXV0bzsgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogODAwcHgpIHtcbiAgICAuZy13cmFwcGVyIHtcbiAgICAgIHBhZGRpbmc6IDAgMTMlOyB9IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDExNTBweCkge1xuICAgIC5nLXdyYXBwZXIge1xuICAgICAgcGFkZGluZzogMCA4JTsgfSB9XG5cbi5nLXJvdyB7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGxvc3QtZmxleC1jb250YWluZXI6IHJvdzsgfVxuICAuZy1yb3ctLXdpdGhfc2lkZWJhciB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uLXJldmVyc2U7IH1cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogMTE1MHB4KSB7XG4gICAgICAuZy1yb3ctLXdpdGhfc2lkZWJhciB7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IHJvdzsgfSB9XG5cbi5nLWNvbC0tMiB7XG4gIGxvc3QtY29sdW1uOiAxMi8xMiAxOyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA4MDBweCkge1xuICAgIC5nLWNvbC0tMiB7XG4gICAgICBsb3N0LWNvbHVtbjogNi8xMjsgfSB9XG5cbi5nLWNvbC0tMyB7XG4gIGxvc3QtY29sdW1uOiAxMi8xMiAxOyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA4MDBweCkge1xuICAgIC5nLWNvbC0tMyB7XG4gICAgICBsb3N0LWNvbHVtbjogNC8xMjsgfSB9XG5cbi5nLWNvbC0tMS0zIHtcbiAgbG9zdC1jb2x1bW46IDQvMTI7IH1cblxuLmctY29sLS0yLTMge1xuICBsb3N0LWNvbHVtbjogOC8xMjsgfVxuXG4uaGVhZGVyX19pbm5lciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgbWluLWhlaWdodDogN3JlbTtcbiAgcGFkZGluZzogLjRyZW0gMDsgfVxuXG4ubG9nbyB7XG4gIG1hcmdpbjogMDsgfVxuICAubG9nby0taGVhZGVyIHtcbiAgICBtYXJnaW46IDA7IH1cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogMTE1MHB4KSB7XG4gICAgICAubG9nby0taGVhZGVyIHtcbiAgICAgICAgbWF4LXdpZHRoOiBub25lICFpbXBvcnRhbnQ7XG4gICAgICAgIG1heC1oZWlnaHQ6IG5vbmUgIWltcG9ydGFudDsgfSB9XG4gICAgLmxvZ28tLWhlYWRlcl9faW5uZXIge1xuICAgICAgZGlzcGxheTogYmxvY2s7IH1cbiAgICAgIC5sb2dvLS1oZWFkZXJfX2lubmVyLS1zdWJ0aXRsZSB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBmb250LXNpemU6IDEuMXJlbTtcbiAgICAgICAgbWFyZ2luLXRvcDogMS4xcmVtOyB9XG4gICAgICAgIEBtZWRpYSAobWluLXdpZHRoOiA4MDBweCkge1xuICAgICAgICAgIC5sb2dvLS1oZWFkZXJfX2lubmVyLS1zdWJ0aXRsZSB7XG4gICAgICAgICAgICBmb250LXNpemU6IDEuMzdyZW07XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAxLjM3cmVtOyB9IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDExNTBweCkge1xuICAgIC5sb2dvLS1mb290ZXIge1xuICAgICAgbWF4LXdpZHRoOiBub25lICFpbXBvcnRhbnQ7XG4gICAgICBtYXgtaGVpZ2h0OiBub25lICFpbXBvcnRhbnQ7IH0gfVxuICAubG9nby0tZm9vdGVyX19pbm5lciB7XG4gICAgZGlzcGxheTogYmxvY2s7IH1cblxuLm5hdi1tYWluIHtcbiAgZGlzcGxheTogbm9uZTsgfVxuICAubmF2LW1haW4gdWwge1xuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDA7IH1cbiAgICAubmF2LW1haW4gdWwgbGkge1xuICAgICAgcGFkZGluZy1sZWZ0OiAwLjhyZW07XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IH1cbiAgICAgIC5uYXYtbWFpbiB1bCBsaS5jdXJyZW50LW1lbnUtaXRlbSA+IGEsIC5uYXYtbWFpbiB1bCBsaS5jdXJyZW50LXBhZ2UtYW5jZXN0b3IgPiBhIHtcbiAgICAgICAgY29sb3I6ICM0ODQ2NDY7IH1cbiAgICAgIC5uYXYtbWFpbiB1bCBsaSBhIHtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDgwMDsgfVxuICAgICAgQG1lZGlhIChtaW4td2lkdGg6IDExNTBweCkge1xuICAgICAgICAubmF2LW1haW4gdWwgbGkge1xuICAgICAgICAgIGZvbnQtc2l6ZTogMS4yNXJlbTtcbiAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDEuNXJlbTsgfSB9XG4gICAgICAubmF2LW1haW4gdWwgbGkgPiB1bCB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDExNTBweCkge1xuICAgIC5uYXYtbWFpbiA+IHVsID4gbGkubWVudS1pdGVtLWhhcy1jaGlsZHJlbiA+IGE6bGFzdC1vZi10eXBlIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7IH0gfVxuICAubmF2LW1haW4gLm5hdi1hcnJvdyB7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgICAubmF2LW1haW4gLm5hdi1hcnJvdzpiZWZvcmUge1xuICAgICAgY29udGVudDogXCLupIBcIjsgfVxuICBAbWVkaWEgKG1heC13aWR0aDogMTE1MHB4KSB7XG4gICAgLm5hdi1tYWluLmlzLWFjdGl2ZSB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICAgIG92ZXJmbG93OiBzY3JvbGw7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgdG9wOiAwO1xuICAgICAgcmlnaHQ6IDA7XG4gICAgICBib3R0b206IDA7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgIGJhY2tncm91bmQ6IHdoaXRlO1xuICAgICAgei1pbmRleDogMjU7IH1cbiAgICAgIC5uYXYtbWFpbi5pcy1hY3RpdmUgdWwge1xuICAgICAgICBtYXJnaW46IDAgYXV0bztcbiAgICAgICAgbWF4LXdpZHRoOiA1NzBweDsgfVxuICAgICAgICAubmF2LW1haW4uaXMtYWN0aXZlIHVsIGxpIHtcbiAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCBnYWluc2Jvcm87IH1cbiAgICAgICAgICAubmF2LW1haW4uaXMtYWN0aXZlIHVsIGxpIGEge1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICBwYWRkaW5nOiAwLjVyZW0gMDsgfVxuICAgICAgLm5hdi1tYWluLmlzLWFjdGl2ZSA+IHVsIHtcbiAgICAgICAgcGFkZGluZzogMjBweDsgfVxuICAgICAgICAubmF2LW1haW4uaXMtYWN0aXZlID4gdWwgPiBsaSB7XG4gICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgIHBhZGRpbmctbGVmdDogMzVweDsgfVxuICAgICAgICAgIC5uYXYtbWFpbi5pcy1hY3RpdmUgPiB1bCA+IGxpLmlzLWFjdGl2ZSB1bCB7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jazsgfVxuICAgICAgICAgIC5uYXYtbWFpbi5pcy1hY3RpdmUgPiB1bCA+IGxpLmlzLWFjdGl2ZSAubmF2LWFycm93IHtcbiAgICAgICAgICAgIGNvbG9yOiAjNDg0NjQ2OyB9XG4gICAgICAgICAgICAubmF2LW1haW4uaXMtYWN0aXZlID4gdWwgPiBsaS5pcy1hY3RpdmUgLm5hdi1hcnJvdzp2aXNpdGVkIHtcbiAgICAgICAgICAgICAgY29sb3I6ICM0ODQ2NDY7IH1cbiAgICAgICAgICAgIC5uYXYtbWFpbi5pcy1hY3RpdmUgPiB1bCA+IGxpLmlzLWFjdGl2ZSAubmF2LWFycm93ICsgYSB7XG4gICAgICAgICAgICAgIGNvbG9yOiAjNDg0NjQ2OyB9XG4gICAgICAgICAgLm5hdi1tYWluLmlzLWFjdGl2ZSA+IHVsID4gbGkgPiBhIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMjBweDsgfVxuICAgICAgICAgIC5uYXYtbWFpbi5pcy1hY3RpdmUgPiB1bCA+IGxpIC5uYXYtYXJyb3cge1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICBmb250LXNpemU6IDIwcHg7XG4gICAgICAgICAgICBjb2xvcjogIzY5OTEzYjtcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAgICAgICAgICAgLm5hdi1tYWluLmlzLWFjdGl2ZSA+IHVsID4gbGkgLm5hdi1hcnJvdzpob3ZlciB7XG4gICAgICAgICAgICAgIGNvbG9yOiAjNDg0NjQ2OyB9XG4gICAgICAgICAgICAubmF2LW1haW4uaXMtYWN0aXZlID4gdWwgPiBsaSAubmF2LWFycm93OmJlZm9yZSB7XG4gICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgbGVmdDogLTM1cHg7XG4gICAgICAgICAgICAgIHRvcDogMTFweDsgfVxuICAgICAgICAgIC5uYXYtbWFpbi5pcy1hY3RpdmUgPiB1bCA+IGxpIHVsIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgICAgICAgICAgIC5uYXYtbWFpbi5pcy1hY3RpdmUgPiB1bCA+IGxpIHVsIGxpIHtcbiAgICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogMDsgfVxuICAgICAgLm5hdi1tYWluLmlzLWFjdGl2ZS5uYXYtbWFpbi0tc3BhY2VyLXRvcCA+IHVsIHtcbiAgICAgICAgcGFkZGluZzogMTAwcHggMjBweCAyMHB4IDIwcHg7IH0gfVxuICBAbWVkaWEgKG1pbi13aWR0aDogMTE1MHB4KSB7XG4gICAgLm5hdi1tYWluIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrOyB9IH1cblxuLnNlY29uZC1sZXZlbC1tZW51IHtcbiAgZGlzcGxheTogbm9uZTsgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogMTE1MHB4KSB7XG4gICAgLnNlY29uZC1sZXZlbC1tZW51IHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrOyB9IH1cbiAgLnNlY29uZC1sZXZlbC1tZW51IHVsIHtcbiAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwOyB9XG4gICAgLnNlY29uZC1sZXZlbC1tZW51IHVsIGxpLmN1cnJlbnQtbWVudS1pdGVtID4gYSB7XG4gICAgICBjb2xvcjogIzQ4NDY0NjtcbiAgICAgIGZvbnQtd2VpZ2h0OiA4MDA7IH1cbiAgICAuc2Vjb25kLWxldmVsLW1lbnUgdWwgYSB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIHBhZGRpbmc6IDAuNXJlbSAwO1xuICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIGdhaW5zYm9ybzsgfVxuICAgIC5zZWNvbmQtbGV2ZWwtbWVudSB1bCA+IGxpIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgICAgIC5zZWNvbmQtbGV2ZWwtbWVudSB1bCA+IGxpLmN1cnJlbnQtbWVudS1hbmNlc3Rvci5tZW51LWl0ZW0taGFzLWNoaWxkcmVuLCAuc2Vjb25kLWxldmVsLW1lbnUgdWwgPiBsaS5jdXJyZW50LW1lbnUtaXRlbS5tZW51LWl0ZW0taGFzLWNoaWxkcmVuIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7IH1cbiAgICAgIC5zZWNvbmQtbGV2ZWwtbWVudSB1bCA+IGxpID4gdWwgPiBsaSB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrOyB9XG5cbi5uYXYtdHJpZ2dlciB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgei1pbmRleDogMzA7XG4gIHJpZ2h0OiAyMHB4O1xuICBib3JkZXItcmFkaXVzOiA1MCU7XG4gIGJhY2tncm91bmQ6ICM2OTkxM2I7XG4gIGNvbG9yOiB3aGl0ZTtcbiAgd2lkdGg6IDYwcHg7XG4gIGhlaWdodDogNjBweDtcbiAgbGluZS1oZWlnaHQ6IDYwcHg7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGZvbnQtc2l6ZTogMTNweDtcbiAgbGV0dGVyLXNwYWNpbmc6IDFweDsgfVxuICAubmF2LXRyaWdnZXItLXRvcCB7XG4gICAgdG9wOiAyMHB4OyB9XG4gIC5uYXYtdHJpZ2dlci0tYm90dG9tIHtcbiAgICBib3R0b206IDIwcHg7IH1cbiAgLm5hdi10cmlnZ2VyID4gc3BhbiB7XG4gICAgZm9udC1zaXplOiAyMHB4O1xuICAgIGxpbmUtaGVpZ2h0OiA2MHB4ICFpbXBvcnRhbnQ7IH1cbiAgICAubmF2LXRyaWdnZXIgPiBzcGFuOmZpcnN0LW9mLXR5cGUge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrOyB9XG4gICAgLm5hdi10cmlnZ2VyID4gc3BhbjpsYXN0LW9mLXR5cGUge1xuICAgICAgZGlzcGxheTogbm9uZTsgfVxuICAubmF2LXRyaWdnZXIuaXMtYWN0aXZlID4gc3BhbjpmaXJzdC1vZi10eXBlIHtcbiAgICBkaXNwbGF5OiBub25lOyB9XG4gIC5uYXYtdHJpZ2dlci5pcy1hY3RpdmUgPiBzcGFuOmxhc3Qtb2YtdHlwZSB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrOyB9XG4gIC5uYXYtdHJpZ2dlcjpob3ZlciB7XG4gICAgY29sb3I6IHdoaXRlOyB9XG4gIC5uYXYtdHJpZ2dlcjp2aXNpdGVkIHtcbiAgICBjb2xvcjogd2hpdGU7IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDExNTBweCkge1xuICAgIC5uYXYtdHJpZ2dlciB7XG4gICAgICBkaXNwbGF5OiBub25lOyB9IH1cblxuLmZvb3RlciB7XG4gIHBhZGRpbmc6IDJyZW0gMDtcbiAgYmFja2dyb3VuZDogI2ZhZmFmNDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjsgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogODAwcHgpIHtcbiAgICAuZm9vdGVyX19sb2dvIHtcbiAgICAgIGZsb2F0OiByaWdodDsgfSB9XG4gIC5mb290ZXJfX2lubmVyIHtcbiAgICBsb3N0LWZsZXgtY29udGFpbmVyOiByb3c7IH1cbiAgLmZvb3Rlcl9fbGVmdCB7XG4gICAgbG9zdC1jb2x1bW46IDEyLzEyIDE7IH1cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogODAwcHgpIHtcbiAgICAgIC5mb290ZXJfX2xlZnQge1xuICAgICAgICBsb3N0LWNvbHVtbjogOS8xMjsgfSB9XG4gIC5mb290ZXJfX3JpZ2h0IHtcbiAgICBtYXJnaW4tdG9wOiAycmVtO1xuICAgIGxvc3QtY29sdW1uOiAxMi8xMiAxOyB9XG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDgwMHB4KSB7XG4gICAgICAuZm9vdGVyX19yaWdodCB7XG4gICAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICAgIGxvc3QtY29sdW1uOiAzLzEyOyB9IH1cblxuLndpZGdldHMge1xuICBsb3N0LWZsZXgtY29udGFpbmVyOiByb3c7IH1cblxuLndpZGdldCB7XG4gIGxvc3QtY29sdW1uOiAzLzMgMTtcbiAgbWFyZ2luLWJvdHRvbTogMnJlbTsgfVxuICAud2lkZ2V0X190aXRsZSB7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuICAgIG92ZXJmbG93OiBoaWRkZW47IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDExNTBweCkge1xuICAgIC53aWRnZXQge1xuICAgICAgbG9zdC1jb2x1bW46IDEvMztcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7IH0gfVxuICAud2lkZ2V0Omxhc3QtY2hpbGQge1xuICAgIG1hcmdpbi1ib3R0b206IDA7IH1cblxuLmhlcm8ge1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiA1MHZoO1xuICBtaW4taGVpZ2h0OiAyMHJlbTsgfVxuXG4udGVhc2UtcG9zdF9fdGl0bGUge1xuICBtYXJnaW4tdG9wOiAwOyB9XG5cbi50ZWFzZS1wb3N0IC5yZWFkLW1vcmUge1xuICBtYXJnaW4tdG9wOiAxcmVtO1xuICBkaXNwbGF5OiB0YWJsZTsgfVxuICAudGVhc2UtcG9zdCAucmVhZC1tb3JlOmFmdGVyIHtcbiAgICBjb250ZW50OiAnXFwyMTkyJztcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgbWFyZ2luLWxlZnQ6IC4zcmVtOyB9XG5cbi5saXN0IHtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xuICBsaXN0LXN0eWxlOiBub25lOyB9XG4gIC5saXN0X19pdGVtIHtcbiAgICBwYWRkaW5nOiAycmVtIDA7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIGdhaW5zYm9ybzsgfVxuICAgIC5saXN0X19pdGVtOmxhc3QtY2hpbGQge1xuICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIGdhaW5zYm9ybzsgfVxuXG4ud3AtYmxvY2stY29sdW1uIGltZ1tjbGFzc149J3dwLWltYWdlLSddLFxuLndwLWJsb2NrLWNvbHVtbiBpbWdbY2xhc3MqPScgd3AtaW1hZ2UtJ10ge1xuICB3aWR0aDogYXV0byAhaW1wb3J0YW50O1xuICBoZWlnaHQ6IGF1dG8gIWltcG9ydGFudDsgfVxuXG4ud3AtYmxvY2stY29sdW1uIGgxOmZpcnN0LW9mLXR5cGUsXG4ud3AtYmxvY2stY29sdW1uIGgyOmZpcnN0LW9mLXR5cGUsXG4ud3AtYmxvY2stY29sdW1uIGgzOmZpcnN0LW9mLXR5cGUsXG4ud3AtYmxvY2stY29sdW1uIGg0OmZpcnN0LW9mLXR5cGUsXG4ud3AtYmxvY2stY29sdW1uIGg1OmZpcnN0LW9mLXR5cGUsXG4ud3AtYmxvY2stY29sdW1uIHA6Zmlyc3Qtb2YtdHlwZSB7XG4gIG1hcmdpbi10b3A6IDA7IH1cblxuLmV2ZW50c19fZmlsdGVyX19saXN0IHtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgcGFkZGluZzogMDtcbiAgbWFyZ2luLWJvdHRvbTogM3JlbTsgfVxuICAuZXZlbnRzX19maWx0ZXJfX2xpc3QgbGkge1xuICAgIHBhZGRpbmc6IDA7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIG1hcmdpbi1yaWdodDogMS41cmVtO1xuICAgIG1hcmdpbi1ib3R0b206IC41cmVtOyB9XG4gICAgLmV2ZW50c19fZmlsdGVyX19saXN0IGxpIGEuaXMtYWN0aXZlIHtcbiAgICAgIGNvbG9yOiAjNDg0NjQ2O1xuICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICM0ODQ2NDY7IH1cblxuLnBhc3N3b3JkLWZvcm0gaW5wdXRbdHlwZT1cInBhc3N3b3JkXCJdIHtcbiAgcGFkZGluZzogOHB4O1xuICBib3JkZXI6IDFweCBzb2xpZCBnYWluc2Jvcm87XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICBmb250LXNpemU6IGluaGVyaXQ7IH1cbiAgLnBhc3N3b3JkLWZvcm0gaW5wdXRbdHlwZT1cInBhc3N3b3JkXCJdOmZvY3VzIHtcbiAgICBvdXRsaW5lOiBub25lO1xuICAgIGJvcmRlci1jb2xvcjogIzQ4NDY0NjsgfVxuXG4uYW5jaG9yLW5hdiB7XG4gIG1hcmdpbi1sZWZ0OiAwO1xuICBwYWRkaW5nOiAwO1xuICBtYXJnaW4tdG9wOiAycmVtO1xuICBsaXN0LXN0eWxlOiBub25lOyB9XG4gIC5hbmNob3ItbmF2IGxpIGEge1xuICAgIHBhZGRpbmc6IDAuNXJlbSAwO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCBnYWluc2Jvcm87IH1cblxuYXJ0aWNsZSAud3AtYmxvY2stcXVlcnkudHdvLWNvbHVtbnMtbGF5b3V0IGxpIHtcbiAgbWFyZ2luLWJvdHRvbTogMS4yNWVtO1xuICB3aWR0aDogY2FsYygoMTAwJSAvIDIpIC0gMS4yNWVtICsgKDEuMjVlbSAvIDIpKTsgfVxuICBhcnRpY2xlIC53cC1ibG9jay1xdWVyeS50d28tY29sdW1ucy1sYXlvdXQgbGkgLndwLWJsb2NrLXBvc3QtZmVhdHVyZWQtaW1hZ2Uge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBwYWRkaW5nLXRvcDogNjUlOyB9XG4gICAgYXJ0aWNsZSAud3AtYmxvY2stcXVlcnkudHdvLWNvbHVtbnMtbGF5b3V0IGxpIC53cC1ibG9jay1wb3N0LWZlYXR1cmVkLWltYWdlIGltZyB7XG4gICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogMDtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICBvYmplY3QtZml0OiBjb3ZlcjsgfVxuICBhcnRpY2xlIC53cC1ibG9jay1xdWVyeS50d28tY29sdW1ucy1sYXlvdXQgbGkgaDIud3AtYmxvY2stcG9zdC10aXRsZSB7XG4gICAgbWFyZ2luLXRvcDogMC41ZW07XG4gICAgbWFyZ2luLWJvdHRvbTogMC41ZW07IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDExNTBweCkge1xuICAgIGFydGljbGUgLndwLWJsb2NrLXF1ZXJ5LnR3by1jb2x1bW5zLWxheW91dCBsaSB7XG4gICAgICB3aWR0aDogMTAwJTsgfSB9XG4gIGFydGljbGUgLndwLWJsb2NrLXF1ZXJ5LnR3by1jb2x1bW5zLWxheW91dCBsaSAud3AtYmxvY2stcG9zdC1kYXRlIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwLjVyZW07IH1cbiAgYXJ0aWNsZSAud3AtYmxvY2stcXVlcnkudHdvLWNvbHVtbnMtbGF5b3V0IGxpIC53cC1ibG9jay1wb3N0LWV4Y2VycHQgcCB7XG4gICAgbWFyZ2luLXRvcDogMDsgfVxuXG5hcnRpY2xlIC53cC1ibG9jay1xdWVyeS50d28tY29sdW1ucy1sYXlvdXQgLndwLWJsb2NrLXBvc3QtZXhjZXJwdCBwIHtcbiAgbWFyZ2luLXRvcDogMDsgfVxuXG5hcnRpY2xlIC53cC1ibG9jay1xdWVyeS50d28tY29sdW1ucy1sYXlvdXQgLndwLWJsb2NrLXBvc3QtZXhjZXJwdCAud3AtYmxvY2stcG9zdC1leGNlcnB0X19tb3JlLXRleHQgYS53cC1ibG9jay1wb3N0LWV4Y2VycHRfX21vcmUtbGluayB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICBwYWRkaW5nLWJvdHRvbTogMC41cmVtO1xuICBtaW4td2lkdGg6IDVyZW07IH1cbiAgYXJ0aWNsZSAud3AtYmxvY2stcXVlcnkudHdvLWNvbHVtbnMtbGF5b3V0IC53cC1ibG9jay1wb3N0LWV4Y2VycHQgLndwLWJsb2NrLXBvc3QtZXhjZXJwdF9fbW9yZS10ZXh0IGEud3AtYmxvY2stcG9zdC1leGNlcnB0X19tb3JlLWxpbms6OmFmdGVyIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgY29udGVudDogXCJcIjtcbiAgICB3aWR0aDogNXJlbTtcbiAgICBoZWlnaHQ6IDJweDtcbiAgICBsZWZ0OiAwO1xuICAgIGJvdHRvbTogMDsgfVxuXG5hcnRpY2xlIC53cC1ibG9jay1xdWVyeS50d28tY29sdW1ucy1sYXlvdXQgLmlzLWZsZXgtY29udGFpbmVyLmNvbHVtbnMtMiB7XG4gIGdhcDogMDtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuOyB9XG5cbmFydGljbGUgLndwLWJsb2NrLXF1ZXJ5Lmhvcml6b250YWwtbGF5b3V0IGxpOmZpcnN0LWNoaWxkIGhyLndwLWJsb2NrLXNlcGFyYXRvciB7XG4gIG1hcmdpbi10b3A6IDA7IH1cblxuYXJ0aWNsZSAud3AtYmxvY2stcXVlcnkuaG9yaXpvbnRhbC1sYXlvdXQgbGkgaHIud3AtYmxvY2stc2VwYXJhdG9yIHtcbiAgbWFyZ2luLWJvdHRvbTogMnJlbTtcbiAgbWFyZ2luLXRvcDogMnJlbTsgfVxuXG5hcnRpY2xlIC53cC1ibG9jay1xdWVyeS5ob3Jpem9udGFsLWxheW91dCBsaSA+IC53cC1ibG9jay1jb2x1bW5zIHtcbiAgZmxleC13cmFwOiBub3dyYXAgIWltcG9ydGFudDtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgZ2FwOiAwO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47IH1cbiAgYXJ0aWNsZSAud3AtYmxvY2stcXVlcnkuaG9yaXpvbnRhbC1sYXlvdXQgbGkgPiAud3AtYmxvY2stY29sdW1ucyAud3AtYmxvY2stY29sdW1uIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwOyB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDc4MXB4KSB7XG4gICAgICBhcnRpY2xlIC53cC1ibG9jay1xdWVyeS5ob3Jpem9udGFsLWxheW91dCBsaSA+IC53cC1ibG9jay1jb2x1bW5zIC53cC1ibG9jay1jb2x1bW46bnRoLWNoaWxkKDEpIHtcbiAgICAgICAgZmxleC1iYXNpczogMzMuMzMlICFpbXBvcnRhbnQ7IH1cbiAgICAgIGFydGljbGUgLndwLWJsb2NrLXF1ZXJ5Lmhvcml6b250YWwtbGF5b3V0IGxpID4gLndwLWJsb2NrLWNvbHVtbnMgLndwLWJsb2NrLWNvbHVtbjpudGgtY2hpbGQoMikge1xuICAgICAgICBmbGV4LWJhc2lzOiA2Ni42NiUgIWltcG9ydGFudDsgfSB9XG5cbmFydGljbGUgLndwLWJsb2NrLXF1ZXJ5Lmhvcml6b250YWwtbGF5b3V0IGxpIGgyLndwLWJsb2NrLXBvc3QtdGl0bGUge1xuICBmb250LXNpemU6IDEuNDVyZW07IH1cblxuYXJ0aWNsZSAud3AtYmxvY2stcXVlcnkuaG9yaXpvbnRhbC1sYXlvdXQgbGkgLndwLWJsb2NrLXBvc3QtZmVhdHVyZWQtaW1hZ2Uge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHdpZHRoOiAxMDAlO1xuICBwYWRkaW5nLXRvcDogNzAlOyB9XG4gIGFydGljbGUgLndwLWJsb2NrLXF1ZXJ5Lmhvcml6b250YWwtbGF5b3V0IGxpIC53cC1ibG9jay1wb3N0LWZlYXR1cmVkLWltYWdlIGltZyB7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICBvYmplY3QtZml0OiBjb3ZlcjsgfVxuXG5hcnRpY2xlIC53cC1ibG9jay1xdWVyeS5ob3Jpem9udGFsLWxheW91dCBsaSAud3AtYmxvY2stcG9zdC1leGNlcnB0X19tb3JlLXRleHQgYS53cC1ibG9jay1wb3N0LWV4Y2VycHRfX21vcmUtbGluazo6YWZ0ZXIge1xuICBjb250ZW50OiAnXFwyMTkyJztcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBtYXJnaW4tbGVmdDogMC4zcmVtOyB9XG5cbmFydGljbGUgLndwLWJsb2NrLXF1ZXJ5IC53cC1ibG9jay1xdWVyeS1wYWdpbmF0aW9uIHtcbiAgbWFyZ2luLXRvcDogNDBweDsgfVxuXG4ud3AtYmxvY2stZWVkZWUtYmxvY2stZ3V0ZW5zbGlkZXIgLnNsaWRlLWNvbnRlbnQgLndwLWJsb2NrLWJ1dHRvbnMgLndwLWJsb2NrLWJ1dHRvbl9fbGluayB7XG4gIGJvcmRlci1yYWRpdXM6IDA7IH1cblxuLndwLWJsb2NrLWNvbHVtbnMgLndwLWJsb2NrLWNvbHVtbiAud3AtYmxvY2staW1hZ2UgaW1nIHtcbiAgaGVpZ2h0OiBhdXRvO1xuICB3aWR0aDogMTAwJTsgfVxuXG4ud3AtYmxvY2staW1hZ2UgaW1nIHtcbiAgaGVpZ2h0OiBhdXRvO1xuICB3aWR0aDogYXV0bzsgfVxuXG4ud3AtYmxvY2stY29sdW1uOm5vdCg6bGFzdC1jaGlsZCkge1xuICBtYXJnaW4tcmlnaHQ6IDA7IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDgwMHB4KSB7XG4gICAgLndwLWJsb2NrLWNvbHVtbjpub3QoOmxhc3QtY2hpbGQpIHtcbiAgICAgIG1hcmdpbi1yaWdodDogMS41JTsgfSB9XG5cbi53cC1ibG9jay1jb2x1bW46bm90KDpmaXJzdC1jaGlsZCkge1xuICBtYXJnaW4tcmlnaHQ6IDA7IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDgwMHB4KSB7XG4gICAgLndwLWJsb2NrLWNvbHVtbjpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDEuNSU7IH0gfVxuXG4ucHN3cC1pdGVtIHtcbiAgY3Vyc29yOiBwb2ludGVyOyB9XG5cbi8qISBQaG90b1N3aXBlIG1haW4gQ1NTIGJ5IERtaXRyeSBTZW1lbm92IHwgcGhvdG9zd2lwZS5jb20gfCBNSVQgbGljZW5zZSAqL1xuLypcblx0U3R5bGVzIGZvciBiYXNpYyBQaG90b1N3aXBlIGZ1bmN0aW9uYWxpdHkgKHNsaWRpbmcgYXJlYSwgb3Blbi9jbG9zZSB0cmFuc2l0aW9ucylcbiovXG4vKiBwc3dwID0gcGhvdG9zd2lwZSAqL1xuLnBzd3Age1xuICBkaXNwbGF5OiBub25lO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIGxlZnQ6IDA7XG4gIHRvcDogMDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgLW1zLXRvdWNoLWFjdGlvbjogbm9uZTtcbiAgdG91Y2gtYWN0aW9uOiBub25lO1xuICB6LWluZGV4OiAxNTAwO1xuICAtd2Via2l0LXRleHQtc2l6ZS1hZGp1c3Q6IDEwMCU7XG4gIC8qIGNyZWF0ZSBzZXBhcmF0ZSBsYXllciwgdG8gYXZvaWQgcGFpbnQgb24gd2luZG93Lm9uc2Nyb2xsIGluIHdlYmtpdC9ibGluayAqL1xuICAtd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgb3V0bGluZTogbm9uZTsgfVxuICAucHN3cCAqIHtcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94OyB9XG4gIC5wc3dwIGltZyB7XG4gICAgbWF4LXdpZHRoOiBub25lOyB9XG5cbi8qIHN0eWxlIGlzIGFkZGVkIHdoZW4gSlMgb3B0aW9uIHNob3dIaWRlT3BhY2l0eSBpcyBzZXQgdG8gdHJ1ZSAqL1xuLnBzd3AtLWFuaW1hdGVfb3BhY2l0eSB7XG4gIC8qIDAuMDAxLCBiZWNhdXNlIG9wYWNpdHk6MCBkb2Vzbid0IHRyaWdnZXIgUGFpbnQgYWN0aW9uLCB3aGljaCBjYXVzZXMgbGFnIGF0IHN0YXJ0IG9mIHRyYW5zaXRpb24gKi9cbiAgb3BhY2l0eTogMC4wMDE7XG4gIHdpbGwtY2hhbmdlOiBvcGFjaXR5O1xuICAvKiBmb3Igb3Blbi9jbG9zZSB0cmFuc2l0aW9uICovXG4gIHRyYW5zaXRpb246IG9wYWNpdHkgMzMzbXMgY3ViaWMtYmV6aWVyKDAuNCwgMCwgMC4yMiwgMSk7IH1cblxuLnBzd3AtLW9wZW4ge1xuICBkaXNwbGF5OiBibG9jazsgfVxuXG4ucHN3cC0tem9vbS1hbGxvd2VkIC5wc3dwX19pbWcge1xuICAvKiBhdXRvcHJlZml4ZXI6IG9mZiAqL1xuICBjdXJzb3I6IC13ZWJraXQtem9vbS1pbjtcbiAgY3Vyc29yOiAtbW96LXpvb20taW47XG4gIGN1cnNvcjogem9vbS1pbjsgfVxuXG4ucHN3cC0tem9vbWVkLWluIC5wc3dwX19pbWcge1xuICAvKiBhdXRvcHJlZml4ZXI6IG9mZiAqL1xuICBjdXJzb3I6IC13ZWJraXQtZ3JhYjtcbiAgY3Vyc29yOiAtbW96LWdyYWI7XG4gIGN1cnNvcjogZ3JhYjsgfVxuXG4ucHN3cC0tZHJhZ2dpbmcgLnBzd3BfX2ltZyB7XG4gIC8qIGF1dG9wcmVmaXhlcjogb2ZmICovXG4gIGN1cnNvcjogLXdlYmtpdC1ncmFiYmluZztcbiAgY3Vyc29yOiAtbW96LWdyYWJiaW5nO1xuICBjdXJzb3I6IGdyYWJiaW5nOyB9XG5cbi8qXG5cdEJhY2tncm91bmQgaXMgYWRkZWQgYXMgYSBzZXBhcmF0ZSBlbGVtZW50LlxuXHRBcyBhbmltYXRpbmcgb3BhY2l0eSBpcyBtdWNoIGZhc3RlciB0aGFuIGFuaW1hdGluZyByZ2JhKCkgYmFja2dyb3VuZC1jb2xvci5cbiovXG4ucHN3cF9fYmcge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IDA7XG4gIHRvcDogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgYmFja2dyb3VuZDogd2hpdGU7XG4gIG9wYWNpdHk6IDA7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTtcbiAgLXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gIHdpbGwtY2hhbmdlOiBvcGFjaXR5OyB9XG5cbi5wc3dwX19zY3JvbGwtd3JhcCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogMDtcbiAgdG9wOiAwO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBvdmVyZmxvdzogaGlkZGVuOyB9XG5cbi5wc3dwX19jb250YWluZXIsXG4ucHN3cF9fem9vbS13cmFwIHtcbiAgLW1zLXRvdWNoLWFjdGlvbjogbm9uZTtcbiAgdG91Y2gtYWN0aW9uOiBub25lO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IDA7XG4gIHJpZ2h0OiAwO1xuICB0b3A6IDA7XG4gIGJvdHRvbTogMDsgfVxuXG4vKiBQcmV2ZW50IHNlbGVjdGlvbiBhbmQgdGFwIGhpZ2hsaWdodHMgKi9cbi5wc3dwX19jb250YWluZXIsXG4ucHN3cF9faW1nIHtcbiAgLXdlYmtpdC11c2VyLXNlbGVjdDogbm9uZTtcbiAgLW1vei11c2VyLXNlbGVjdDogbm9uZTtcbiAgdXNlci1zZWxlY3Q6IG5vbmU7XG4gIC13ZWJraXQtdGFwLWhpZ2hsaWdodC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwKTtcbiAgLXdlYmtpdC10b3VjaC1jYWxsb3V0OiBub25lOyB9XG5cbi5wc3dwX196b29tLXdyYXAge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHdpZHRoOiAxMDAlO1xuICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IGxlZnQgdG9wO1xuICAtbW96LXRyYW5zZm9ybS1vcmlnaW46IGxlZnQgdG9wO1xuICAtbXMtdHJhbnNmb3JtLW9yaWdpbjogbGVmdCB0b3A7XG4gIHRyYW5zZm9ybS1vcmlnaW46IGxlZnQgdG9wO1xuICAvKiBmb3Igb3Blbi9jbG9zZSB0cmFuc2l0aW9uICovXG4gIHRyYW5zaXRpb246IHRyYW5zZm9ybSAzMzNtcyBjdWJpYy1iZXppZXIoMC40LCAwLCAwLjIyLCAxKTsgfVxuXG4ucHN3cF9fYmcge1xuICB3aWxsLWNoYW5nZTogb3BhY2l0eTtcbiAgLyogZm9yIG9wZW4vY2xvc2UgdHJhbnNpdGlvbiAqL1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IDMzM21zIGN1YmljLWJlemllcigwLjQsIDAsIDAuMjIsIDEpOyB9XG5cbi5wc3dwLS1hbmltYXRlZC1pbiAucHN3cF9fYmcsXG4ucHN3cC0tYW5pbWF0ZWQtaW4gLnBzd3BfX3pvb20td3JhcCB7XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogbm9uZTtcbiAgdHJhbnNpdGlvbjogbm9uZTsgfVxuXG4ucHN3cF9fY29udGFpbmVyLFxuLnBzd3BfX3pvb20td3JhcCB7XG4gIC13ZWJraXQtYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuOyB9XG5cbi5wc3dwX19pdGVtIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiAwO1xuICByaWdodDogMDtcbiAgdG9wOiAwO1xuICBib3R0b206IDA7XG4gIG92ZXJmbG93OiBoaWRkZW47IH1cblxuLnBzd3BfX2ltZyB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgd2lkdGg6IGF1dG87XG4gIGhlaWdodDogYXV0bztcbiAgdG9wOiAwO1xuICBsZWZ0OiAwOyB9XG5cbi8qXG5cdHN0cmV0Y2hlZCB0aHVtYm5haWwgb3IgZGl2IHBsYWNlaG9sZGVyIGVsZW1lbnQgKHNlZSBiZWxvdylcblx0c3R5bGUgaXMgYWRkZWQgdG8gYXZvaWQgZmxpY2tlcmluZyBpbiB3ZWJraXQvYmxpbmsgd2hlbiBsYXllcnMgb3ZlcmxhcFxuKi9cbi5wc3dwX19pbWctLXBsYWNlaG9sZGVyIHtcbiAgLXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47IH1cblxuLypcblx0ZGl2IGVsZW1lbnQgdGhhdCBtYXRjaGVzIHNpemUgb2YgbGFyZ2UgaW1hZ2Vcblx0bGFyZ2UgaW1hZ2UgbG9hZHMgb24gdG9wIG9mIGl0XG4qL1xuLnBzd3BfX2ltZy0tcGxhY2Vob2xkZXItLWJsYW5rIHtcbiAgYmFja2dyb3VuZDogIzIyMjsgfVxuXG4ucHN3cC0taWUgLnBzd3BfX2ltZyB7XG4gIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gIGhlaWdodDogYXV0byAhaW1wb3J0YW50O1xuICBsZWZ0OiAwO1xuICB0b3A6IDA7IH1cblxuLypcblx0RXJyb3IgbWVzc2FnZSBhcHBlYXJzIHdoZW4gaW1hZ2UgaXMgbm90IGxvYWRlZFxuXHQoSlMgb3B0aW9uIGVycm9yTXNnIGNvbnRyb2xzIG1hcmt1cClcbiovXG4ucHN3cF9fZXJyb3ItbXNnIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiAwO1xuICB0b3A6IDUwJTtcbiAgd2lkdGg6IDEwMCU7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgZm9udC1zaXplOiAxNHB4O1xuICBsaW5lLWhlaWdodDogMTZweDtcbiAgbWFyZ2luLXRvcDogLThweDtcbiAgY29sb3I6ICNDQ0M7IH1cblxuLnBzd3BfX2Vycm9yLW1zZyBhIHtcbiAgY29sb3I6ICNDQ0M7XG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lOyB9XG5cbi8qISBQaG90b1N3aXBlIERlZmF1bHQgVUkgQ1NTIGJ5IERtaXRyeSBTZW1lbm92IHwgcGhvdG9zd2lwZS5jb20gfCBNSVQgbGljZW5zZSAqL1xuLypcblxuXHRDb250ZW50czpcblxuXHQxLiBCdXR0b25zXG5cdDIuIFNoYXJlIG1vZGFsIGFuZCBsaW5rc1xuXHQzLiBJbmRleCBpbmRpY2F0b3IgKFwiMSBvZiBYXCIgY291bnRlcilcblx0NC4gQ2FwdGlvblxuXHQ1LiBMb2FkaW5nIGluZGljYXRvclxuXHQ2LiBBZGRpdGlvbmFsIHN0eWxlcyAocm9vdCBlbGVtZW50LCB0b3AgYmFyLCBpZGxlIHN0YXRlLCBoaWRkZW4gc3RhdGUsIGV0Yy4pXG5cbiovXG4vKlxuXHRcblx0MS4gQnV0dG9uc1xuXG4gKi9cbi8qIDxidXR0b24+IGNzcyByZXNldCAqL1xuLnBzd3BfX2J1dHRvbiB7XG4gIHdpZHRoOiA0NHB4O1xuICBoZWlnaHQ6IDQ0cHg7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgYmFja2dyb3VuZDogbm9uZTtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xuICBkaXNwbGF5OiBibG9jaztcbiAgYm9yZGVyOiAwO1xuICBwYWRkaW5nOiAwO1xuICBtYXJnaW46IDA7XG4gIGZsb2F0OiByaWdodDtcbiAgb3BhY2l0eTogMC43NTtcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjJzO1xuICBib3gtc2hhZG93OiBub25lOyB9XG4gIC5wc3dwX19idXR0b246Zm9jdXMsIC5wc3dwX19idXR0b246aG92ZXIge1xuICAgIG9wYWNpdHk6IDE7IH1cbiAgLnBzd3BfX2J1dHRvbjphY3RpdmUge1xuICAgIG91dGxpbmU6IG5vbmU7XG4gICAgb3BhY2l0eTogMC45OyB9XG4gIC5wc3dwX19idXR0b246Oi1tb3otZm9jdXMtaW5uZXIge1xuICAgIHBhZGRpbmc6IDA7XG4gICAgYm9yZGVyOiAwOyB9XG5cbi8qIHBzd3BfX3VpLS1vdmVyLWNsb3NlIGNsYXNzIGl0IGFkZGVkIHdoZW4gbW91c2UgaXMgb3ZlciBlbGVtZW50IHRoYXQgc2hvdWxkIGNsb3NlIGdhbGxlcnkgKi9cbi5wc3dwX191aS0tb3Zlci1jbG9zZSAucHN3cF9fYnV0dG9uLS1jbG9zZSB7XG4gIG9wYWNpdHk6IDE7IH1cblxuLnBzd3BfX2J1dHRvbixcbi5wc3dwX19idXR0b24tLWFycm93LS1sZWZ0OmJlZm9yZSxcbi5wc3dwX19idXR0b24tLWFycm93LS1yaWdodDpiZWZvcmUge1xuICBiYWNrZ3JvdW5kOiB1cmwoLi4vLi4vLi4vaW1hZ2VzL3Bob3Rvc3dpcGUvZGVmYXVsdC1za2luLnBuZykgMCAwIG5vLXJlcGVhdDtcbiAgYmFja2dyb3VuZC1zaXplOiAyNjRweCA4OHB4O1xuICB3aWR0aDogNDRweDtcbiAgaGVpZ2h0OiA0NHB4OyB9XG5cbkBtZWRpYSAoLXdlYmtpdC1taW4tZGV2aWNlLXBpeGVsLXJhdGlvOiAxLjEpLCAobWluLXJlc29sdXRpb246IDEwNWRwaSksIChtaW4tcmVzb2x1dGlvbjogMS4xZHBweCkge1xuICAvKiBTZXJ2ZSBTVkcgc3ByaXRlIGlmIGJyb3dzZXIgc3VwcG9ydHMgU1ZHIGFuZCByZXNvbHV0aW9uIGlzIG1vcmUgdGhhbiAxMDVkcGkgKi9cbiAgLnBzd3AtLXN2ZyAucHN3cF9fYnV0dG9uLFxuICAucHN3cC0tc3ZnIC5wc3dwX19idXR0b24tLWFycm93LS1sZWZ0OmJlZm9yZSxcbiAgLnBzd3AtLXN2ZyAucHN3cF9fYnV0dG9uLS1hcnJvdy0tcmlnaHQ6YmVmb3JlIHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vLi4vLi4vaW1hZ2VzL3Bob3Rvc3dpcGUvZGVmYXVsdC1za2luLnN2Zyk7IH1cbiAgLnBzd3AtLXN2ZyAucHN3cF9fYnV0dG9uLS1hcnJvdy0tbGVmdCxcbiAgLnBzd3AtLXN2ZyAucHN3cF9fYnV0dG9uLS1hcnJvdy0tcmlnaHQge1xuICAgIGJhY2tncm91bmQ6IG5vbmU7IH0gfVxuXG4ucHN3cF9fYnV0dG9uLS1jbG9zZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IDAgLTQ0cHg7IH1cblxuLnBzd3BfX2J1dHRvbi0tc2hhcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNDRweCAtNDRweDsgfVxuXG4ucHN3cF9fYnV0dG9uLS1mcyB7XG4gIGRpc3BsYXk6IG5vbmU7IH1cblxuLnBzd3AtLXN1cHBvcnRzLWZzIC5wc3dwX19idXR0b24tLWZzIHtcbiAgZGlzcGxheTogYmxvY2s7IH1cblxuLnBzd3AtLWZzIC5wc3dwX19idXR0b24tLWZzIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTQ0cHggMDsgfVxuXG4ucHN3cF9fYnV0dG9uLS16b29tIHtcbiAgZGlzcGxheTogbm9uZTtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTg4cHggMDsgfVxuXG4ucHN3cC0tem9vbS1hbGxvd2VkIC5wc3dwX19idXR0b24tLXpvb20ge1xuICBkaXNwbGF5OiBibG9jazsgfVxuXG4ucHN3cC0tem9vbWVkLWluIC5wc3dwX19idXR0b24tLXpvb20ge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTMycHggMDsgfVxuXG4vKiBubyBhcnJvd3Mgb24gdG91Y2ggc2NyZWVucyAqL1xuLnBzd3AtLXRvdWNoIC5wc3dwX19idXR0b24tLWFycm93LS1sZWZ0LFxuLnBzd3AtLXRvdWNoIC5wc3dwX19idXR0b24tLWFycm93LS1yaWdodCB7XG4gIHZpc2liaWxpdHk6IGhpZGRlbjsgfVxuXG4vKlxuXHRBcnJvdyBidXR0b25zIGhpdCBhcmVhXG5cdChpY29uIGlzIGFkZGVkIHRvIDpiZWZvcmUgcHNldWRvLWVsZW1lbnQpXG4qL1xuLnBzd3BfX2J1dHRvbi0tYXJyb3ctLWxlZnQsXG4ucHN3cF9fYnV0dG9uLS1hcnJvdy0tcmlnaHQge1xuICBiYWNrZ3JvdW5kOiBub25lO1xuICB0b3A6IDUwJTtcbiAgbWFyZ2luLXRvcDogLTUwcHg7XG4gIHdpZHRoOiA3MHB4O1xuICBoZWlnaHQ6IDEwMHB4O1xuICBwb3NpdGlvbjogYWJzb2x1dGU7IH1cblxuLnBzd3BfX2J1dHRvbi0tYXJyb3ctLWxlZnQge1xuICBsZWZ0OiAwOyB9XG5cbi5wc3dwX19idXR0b24tLWFycm93LS1yaWdodCB7XG4gIHJpZ2h0OiAwOyB9XG5cbi5wc3dwX19idXR0b24tLWFycm93LS1sZWZ0OmJlZm9yZSxcbi5wc3dwX19idXR0b24tLWFycm93LS1yaWdodDpiZWZvcmUge1xuICBjb250ZW50OiAnJztcbiAgdG9wOiAzNXB4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMyk7XG4gIGhlaWdodDogMzBweDtcbiAgd2lkdGg6IDMycHg7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTsgfVxuXG4ucHN3cF9fYnV0dG9uLS1hcnJvdy0tbGVmdDpiZWZvcmUge1xuICBsZWZ0OiA2cHg7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC0xMzhweCAtNDRweDsgfVxuXG4ucHN3cF9fYnV0dG9uLS1hcnJvdy0tcmlnaHQ6YmVmb3JlIHtcbiAgcmlnaHQ6IDZweDtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTk0cHggLTQ0cHg7IH1cblxuLypcblxuXHQyLiBTaGFyZSBtb2RhbC9wb3B1cCBhbmQgbGlua3NcblxuICovXG4ucHN3cF9fY291bnRlcixcbi5wc3dwX19zaGFyZS1tb2RhbCB7XG4gIC13ZWJraXQtdXNlci1zZWxlY3Q6IG5vbmU7XG4gIC1tb3otdXNlci1zZWxlY3Q6IG5vbmU7XG4gIHVzZXItc2VsZWN0OiBub25lOyB9XG5cbi5wc3dwX19zaGFyZS1tb2RhbCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuNSk7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgcGFkZGluZzogMTBweDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB6LWluZGV4OiAxNjAwO1xuICBvcGFjaXR5OiAwO1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuMjVzIGVhc2Utb3V0O1xuICAtd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgd2lsbC1jaGFuZ2U6IG9wYWNpdHk7IH1cblxuLnBzd3BfX3NoYXJlLW1vZGFsLS1oaWRkZW4ge1xuICBkaXNwbGF5OiBub25lOyB9XG5cbi5wc3dwX19zaGFyZS10b29sdGlwIHtcbiAgei1pbmRleDogMTYyMDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBiYWNrZ3JvdW5kOiAjRkZGO1xuICB0b3A6IDU2cHg7XG4gIGJvcmRlci1yYWRpdXM6IDJweDtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiBhdXRvO1xuICByaWdodDogNDRweDtcbiAgYm94LXNoYWRvdzogMCAycHggNXB4IHJnYmEoMCwgMCwgMCwgMC4yNSk7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSg2cHgpO1xuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4yNXM7XG4gIC13ZWJraXQtYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICB3aWxsLWNoYW5nZTogdHJhbnNmb3JtOyB9XG4gIC5wc3dwX19zaGFyZS10b29sdGlwIGEge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBhZGRpbmc6IDhweCAxMnB4O1xuICAgIGNvbG9yOiAjMDAwO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICBmb250LXNpemU6IDE0cHg7XG4gICAgbGluZS1oZWlnaHQ6IDE4cHg7IH1cbiAgICAucHN3cF9fc2hhcmUtdG9vbHRpcCBhOmhvdmVyIHtcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgIGNvbG9yOiAjMDAwOyB9XG4gICAgLnBzd3BfX3NoYXJlLXRvb2x0aXAgYTpmaXJzdC1jaGlsZCB7XG4gICAgICAvKiByb3VuZCBjb3JuZXJzIG9uIHRoZSBmaXJzdC9sYXN0IGxpc3QgaXRlbSAqL1xuICAgICAgYm9yZGVyLXJhZGl1czogMnB4IDJweCAwIDA7IH1cbiAgICAucHN3cF9fc2hhcmUtdG9vbHRpcCBhOmxhc3QtY2hpbGQge1xuICAgICAgYm9yZGVyLXJhZGl1czogMCAwIDJweCAycHg7IH1cblxuLnBzd3BfX3NoYXJlLW1vZGFsLS1mYWRlLWluIHtcbiAgb3BhY2l0eTogMTsgfVxuICAucHN3cF9fc2hhcmUtbW9kYWwtLWZhZGUtaW4gLnBzd3BfX3NoYXJlLXRvb2x0aXAge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTsgfVxuXG4vKiBpbmNyZWFzZSBzaXplIG9mIHNoYXJlIGxpbmtzIG9uIHRvdWNoIGRldmljZXMgKi9cbi5wc3dwLS10b3VjaCAucHN3cF9fc2hhcmUtdG9vbHRpcCBhIHtcbiAgcGFkZGluZzogMTZweCAxMnB4OyB9XG5cbmEucHN3cF9fc2hhcmUtLWZhY2Vib29rOmJlZm9yZSB7XG4gIGNvbnRlbnQ6ICcnO1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDA7XG4gIGhlaWdodDogMDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IC0xMnB4O1xuICByaWdodDogMTVweDtcbiAgYm9yZGVyOiA2cHggc29saWQgcmdiYSgwLCAwLCAwLCAwKTtcbiAgYm9yZGVyLWJvdHRvbS1jb2xvcjogI0ZGRjtcbiAgLXdlYmtpdC1wb2ludGVyLWV2ZW50czogbm9uZTtcbiAgLW1vei1wb2ludGVyLWV2ZW50czogbm9uZTtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7IH1cblxuYS5wc3dwX19zaGFyZS0tZmFjZWJvb2s6aG92ZXIge1xuICBiYWNrZ3JvdW5kOiAjM0U1QzlBO1xuICBjb2xvcjogI0ZGRjsgfVxuICBhLnBzd3BfX3NoYXJlLS1mYWNlYm9vazpob3ZlcjpiZWZvcmUge1xuICAgIGJvcmRlci1ib3R0b20tY29sb3I6ICMzRTVDOUE7IH1cblxuYS5wc3dwX19zaGFyZS0tdHdpdHRlcjpob3ZlciB7XG4gIGJhY2tncm91bmQ6ICM1NUFDRUU7XG4gIGNvbG9yOiAjRkZGOyB9XG5cbmEucHN3cF9fc2hhcmUtLXBpbnRlcmVzdDpob3ZlciB7XG4gIGJhY2tncm91bmQ6ICNDQ0M7XG4gIGNvbG9yOiAjQ0UyNzJEOyB9XG5cbmEucHN3cF9fc2hhcmUtLWRvd25sb2FkOmhvdmVyIHtcbiAgYmFja2dyb3VuZDogI0RERDsgfVxuXG4vKlxuXG5cdDMuIEluZGV4IGluZGljYXRvciAoXCIxIG9mIFhcIiBjb3VudGVyKVxuXG4gKi9cbi5wc3dwX19jb3VudGVyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiAwO1xuICB0b3A6IDA7XG4gIGhlaWdodDogNDRweDtcbiAgZm9udC1zaXplOiAxM3B4O1xuICBsaW5lLWhlaWdodDogNDRweDtcbiAgY29sb3I6ICNGRkY7XG4gIG9wYWNpdHk6IDAuNzU7XG4gIHBhZGRpbmc6IDAgMTBweDsgfVxuXG4vKlxuXHRcblx0NC4gQ2FwdGlvblxuXG4gKi9cbi5wc3dwX19jYXB0aW9uIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiAwO1xuICBib3R0b206IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBtaW4taGVpZ2h0OiA0NHB4OyB9XG4gIC5wc3dwX19jYXB0aW9uIHNtYWxsIHtcbiAgICBmb250LXNpemU6IDExcHg7XG4gICAgY29sb3I6ICNCQkI7IH1cblxuLnBzd3BfX2NhcHRpb25fX2NlbnRlciB7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG4gIG1heC13aWR0aDogNDIwcHg7XG4gIG1hcmdpbjogMCBhdXRvO1xuICBmb250LXNpemU6IDEzcHg7XG4gIHBhZGRpbmc6IDEwcHg7XG4gIGxpbmUtaGVpZ2h0OiAyMHB4O1xuICBjb2xvcjogI0NDQzsgfVxuXG4ucHN3cF9fY2FwdGlvbi0tZW1wdHkge1xuICBkaXNwbGF5OiBub25lOyB9XG5cbi8qIEZha2UgY2FwdGlvbiBlbGVtZW50LCB1c2VkIHRvIGNhbGN1bGF0ZSBoZWlnaHQgb2YgbmV4dC9wcmV2IGltYWdlICovXG4ucHN3cF9fY2FwdGlvbi0tZmFrZSB7XG4gIHZpc2liaWxpdHk6IGhpZGRlbjsgfVxuXG4vKlxuXG5cdDUuIExvYWRpbmcgaW5kaWNhdG9yIChwcmVsb2FkZXIpXG5cblx0WW91IGNhbiBwbGF5IHdpdGggaXQgaGVyZSAtIGh0dHA6Ly9jb2RlcGVuLmlvL2RpbXNlbWVub3YvcGVuL3l5QldvUlxuXG4gKi9cbi5wc3dwX19wcmVsb2FkZXIge1xuICB3aWR0aDogNDRweDtcbiAgaGVpZ2h0OiA0NHB4O1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgbGVmdDogNTAlO1xuICBtYXJnaW4tbGVmdDogLTIycHg7XG4gIG9wYWNpdHk6IDA7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgMC4yNXMgZWFzZS1vdXQ7XG4gIHdpbGwtY2hhbmdlOiBvcGFjaXR5O1xuICBkaXJlY3Rpb246IGx0cjsgfVxuXG4ucHN3cF9fcHJlbG9hZGVyX19pY24ge1xuICB3aWR0aDogMjBweDtcbiAgaGVpZ2h0OiAyMHB4O1xuICBtYXJnaW46IDEycHg7IH1cblxuLnBzd3BfX3ByZWxvYWRlci0tYWN0aXZlIHtcbiAgb3BhY2l0eTogMTsgfVxuICAucHN3cF9fcHJlbG9hZGVyLS1hY3RpdmUgLnBzd3BfX3ByZWxvYWRlcl9faWNuIHtcbiAgICAvKiBXZSB1c2UgLmdpZiBpbiBicm93c2VycyB0aGF0IGRvbid0IHN1cHBvcnQgQ1NTIGFuaW1hdGlvbiAqL1xuICAgIGJhY2tncm91bmQ6IHVybCguLi8uLi8uLi9pbWFnZXMvcGhvdG9zd2lwZS9wcmVsb2FkZXIuZ2lmKSAwIDAgbm8tcmVwZWF0OyB9XG5cbi5wc3dwLS1jc3NfYW5pbWF0aW9uIC5wc3dwX19wcmVsb2FkZXItLWFjdGl2ZSB7XG4gIG9wYWNpdHk6IDE7IH1cbiAgLnBzd3AtLWNzc19hbmltYXRpb24gLnBzd3BfX3ByZWxvYWRlci0tYWN0aXZlIC5wc3dwX19wcmVsb2FkZXJfX2ljbiB7XG4gICAgYW5pbWF0aW9uOiBjbG9ja3dpc2UgNTAwbXMgbGluZWFyIGluZmluaXRlOyB9XG4gIC5wc3dwLS1jc3NfYW5pbWF0aW9uIC5wc3dwX19wcmVsb2FkZXItLWFjdGl2ZSAucHN3cF9fcHJlbG9hZGVyX19kb251dCB7XG4gICAgYW5pbWF0aW9uOiBkb251dC1yb3RhdGUgMTAwMG1zIGN1YmljLWJlemllcigwLjQsIDAsIDAuMjIsIDEpIGluZmluaXRlOyB9XG5cbi5wc3dwLS1jc3NfYW5pbWF0aW9uIC5wc3dwX19wcmVsb2FkZXJfX2ljbiB7XG4gIGJhY2tncm91bmQ6IG5vbmU7XG4gIG9wYWNpdHk6IDAuNzU7XG4gIHdpZHRoOiAxNHB4O1xuICBoZWlnaHQ6IDE0cHg7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogMTVweDtcbiAgdG9wOiAxNXB4O1xuICBtYXJnaW46IDA7IH1cblxuLnBzd3AtLWNzc19hbmltYXRpb24gLnBzd3BfX3ByZWxvYWRlcl9fY3V0IHtcbiAgLyogXG5cdFx0XHRUaGUgaWRlYSBvZiBhbmltYXRpbmcgaW5uZXIgY2lyY2xlIGlzIGJhc2VkIG9uIFBvbHltZXIgKFwibWF0ZXJpYWxcIikgbG9hZGluZyBpbmRpY2F0b3IgXG5cdFx0XHQgYnkgS2VhbnUgTGVlIGh0dHBzOi8vYmxvZy5rZWFudWxlZS5jb20vMjAxNC8xMC8yMC90aGUtdGFsZS1vZi10aHJlZS1zcGlubmVycy5odG1sXG5cdFx0Ki9cbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB3aWR0aDogN3B4O1xuICBoZWlnaHQ6IDE0cHg7XG4gIG92ZXJmbG93OiBoaWRkZW47IH1cblxuLnBzd3AtLWNzc19hbmltYXRpb24gLnBzd3BfX3ByZWxvYWRlcl9fZG9udXQge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICB3aWR0aDogMTRweDtcbiAgaGVpZ2h0OiAxNHB4O1xuICBib3JkZXI6IDJweCBzb2xpZCAjRkZGO1xuICBib3JkZXItcmFkaXVzOiA1MCU7XG4gIGJvcmRlci1sZWZ0LWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLWJvdHRvbS1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICBiYWNrZ3JvdW5kOiBub25lO1xuICBtYXJnaW46IDA7IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTAyNHB4KSB7XG4gIC5wc3dwX19wcmVsb2FkZXIge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiBhdXRvO1xuICAgIHRvcDogYXV0bztcbiAgICBtYXJnaW46IDA7XG4gICAgZmxvYXQ6IHJpZ2h0OyB9IH1cblxuQGtleWZyYW1lcyBjbG9ja3dpc2Uge1xuICAwJSB7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7IH1cbiAgMTAwJSB7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKTsgfSB9XG5cbkBrZXlmcmFtZXMgZG9udXQtcm90YXRlIHtcbiAgMCUge1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDApOyB9XG4gIDUwJSB7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoLTE0MGRlZyk7IH1cbiAgMTAwJSB7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoMCk7IH0gfVxuXG4vKlxuXHRcblx0Ni4gQWRkaXRpb25hbCBzdHlsZXNcblxuICovXG4vKiByb290IGVsZW1lbnQgb2YgVUkgKi9cbi5wc3dwX191aSB7XG4gIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGF1dG87XG4gIHZpc2liaWxpdHk6IHZpc2libGU7XG4gIG9wYWNpdHk6IDE7XG4gIHotaW5kZXg6IDE1NTA7IH1cblxuLyogdG9wIGJsYWNrIGJhciB3aXRoIGJ1dHRvbnMgYW5kIFwiMSBvZiBYXCIgaW5kaWNhdG9yICovXG4ucHN3cF9fdG9wLWJhciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogMDtcbiAgdG9wOiAwO1xuICBoZWlnaHQ6IDQ0cHg7XG4gIHdpZHRoOiAxMDAlOyB9XG5cbi5wc3dwX19jYXB0aW9uLFxuLnBzd3BfX3RvcC1iYXIsXG4ucHN3cC0taGFzX21vdXNlIC5wc3dwX19idXR0b24tLWFycm93LS1sZWZ0LFxuLnBzd3AtLWhhc19tb3VzZSAucHN3cF9fYnV0dG9uLS1hcnJvdy0tcmlnaHQge1xuICAtd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgd2lsbC1jaGFuZ2U6IG9wYWNpdHk7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgMzMzbXMgY3ViaWMtYmV6aWVyKDAuNCwgMCwgMC4yMiwgMSk7IH1cblxuLyogcHN3cC0taGFzX21vdXNlIGNsYXNzIGlzIGFkZGVkIG9ubHkgd2hlbiB0d28gc3Vic2VxdWVudCBtb3VzZW1vdmUgZXZlbnRzIG9jY3VyICovXG4ucHN3cC0taGFzX21vdXNlIC5wc3dwX19idXR0b24tLWFycm93LS1sZWZ0LFxuLnBzd3AtLWhhc19tb3VzZSAucHN3cF9fYnV0dG9uLS1hcnJvdy0tcmlnaHQge1xuICB2aXNpYmlsaXR5OiB2aXNpYmxlOyB9XG5cbi5wc3dwX190b3AtYmFyLFxuLnBzd3BfX2NhcHRpb24ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuNSk7IH1cblxuLyogcHN3cF9fdWktLWZpdCBjbGFzcyBpcyBhZGRlZCB3aGVuIG1haW4gaW1hZ2UgXCJmaXRzXCIgYmV0d2VlbiB0b3AgYmFyIGFuZCBib3R0b20gYmFyIChjYXB0aW9uKSAqL1xuLnBzd3BfX3VpLS1maXQgLnBzd3BfX3RvcC1iYXIsXG4ucHN3cF9fdWktLWZpdCAucHN3cF9fY2FwdGlvbiB7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4zKTsgfVxuXG4vKiBwc3dwX191aS0taWRsZSBjbGFzcyBpcyBhZGRlZCB3aGVuIG1vdXNlIGlzbid0IG1vdmluZyBmb3Igc2V2ZXJhbCBzZWNvbmRzIChKUyBvcHRpb24gdGltZVRvSWRsZSkgKi9cbi5wc3dwX191aS0taWRsZSAucHN3cF9fdG9wLWJhciB7XG4gIG9wYWNpdHk6IDA7IH1cblxuLnBzd3BfX3VpLS1pZGxlIC5wc3dwX19idXR0b24tLWFycm93LS1sZWZ0LFxuLnBzd3BfX3VpLS1pZGxlIC5wc3dwX19idXR0b24tLWFycm93LS1yaWdodCB7XG4gIG9wYWNpdHk6IDA7IH1cblxuLypcblx0cHN3cF9fdWktLWhpZGRlbiBjbGFzcyBpcyBhZGRlZCB3aGVuIGNvbnRyb2xzIGFyZSBoaWRkZW5cblx0ZS5nLiB3aGVuIHVzZXIgdGFwcyB0byB0b2dnbGUgdmlzaWJpbGl0eSBvZiBjb250cm9sc1xuKi9cbi5wc3dwX191aS0taGlkZGVuIC5wc3dwX190b3AtYmFyLFxuLnBzd3BfX3VpLS1oaWRkZW4gLnBzd3BfX2NhcHRpb24sXG4ucHN3cF9fdWktLWhpZGRlbiAucHN3cF9fYnV0dG9uLS1hcnJvdy0tbGVmdCxcbi5wc3dwX191aS0taGlkZGVuIC5wc3dwX19idXR0b24tLWFycm93LS1yaWdodCB7XG4gIC8qIEZvcmNlIHBhaW50ICYgY3JlYXRlIGNvbXBvc2l0aW9uIGxheWVyIGZvciBjb250cm9scy4gKi9cbiAgb3BhY2l0eTogMC4wMDE7IH1cblxuLyogcHN3cF9fdWktLW9uZS1zbGlkZSBjbGFzcyBpcyBhZGRlZCB3aGVuIHRoZXJlIGlzIGp1c3Qgb25lIGl0ZW0gaW4gZ2FsbGVyeSAqL1xuLnBzd3BfX3VpLS1vbmUtc2xpZGUgLnBzd3BfX2J1dHRvbi0tYXJyb3ctLWxlZnQsXG4ucHN3cF9fdWktLW9uZS1zbGlkZSAucHN3cF9fYnV0dG9uLS1hcnJvdy0tcmlnaHQsXG4ucHN3cF9fdWktLW9uZS1zbGlkZSAucHN3cF9fY291bnRlciB7XG4gIGRpc3BsYXk6IG5vbmU7IH1cblxuLnBzd3BfX2VsZW1lbnQtLWRpc2FibGVkIHtcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9XG5cbi5wc3dwLS1taW5pbWFsLS1kYXJrIC5wc3dwX190b3AtYmFyIHtcbiAgYmFja2dyb3VuZDogbm9uZTsgfVxuXG4ucHN3cF9fYnV0dG9uLS1hcnJvdy0tbGVmdDpiZWZvcmUsXG4ucHN3cF9fYnV0dG9uLS1hcnJvdy0tcmlnaHQ6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7IH1cblxuLnBzd3BfX3VpIC5wc3dwX190b3AtYmFyLFxuLnBzd3BfX3VpIC5wc3dwX19jYXB0aW9uIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7IH1cblxuLnBzd3BfX2NvdW50ZXIge1xuICBjb2xvcjogIzQ4NDY0NjsgfVxuXG4ucHN3cF9faW1nLS1wbGFjZWhvbGRlci0tYmxhbmsge1xuICBiYWNrZ3JvdW5kOiB3aGl0ZTsgfVxuXG4ucHN3cF9fY2FwdGlvbl9fY2VudGVyIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBjb2xvcjogIzQ4NDY0NjsgfVxuXG4ucHN3cF9faXRlbV9fdmlkZW8ge1xuICBoZWlnaHQ6IGNhbGMoMTAwJSAtIDQwcHggLSA0NHB4KTtcbiAgbWFyZ2luLXRvcDogNDRweDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7IH1cbiAgLnBzd3BfX2l0ZW1fX3ZpZGVvX19pbm5lciB7XG4gICAgbWF4LXdpZHRoOiAxMDI0cHg7XG4gICAgd2lkdGg6IDEwMjRweDsgfVxuICAgIC5wc3dwX19pdGVtX192aWRlb19faW5uZXJfX2lubmVyIHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgcGFkZGluZy1ib3R0b206IDU2LjI1JTsgfVxuICAgICAgLnBzd3BfX2l0ZW1fX3ZpZGVvX19pbm5lcl9faW5uZXIgaWZyYW1lIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBoZWlnaHQ6IDEwMCU7IH1cblxuaW5wdXRbdHlwZT1zdWJtaXRdLmdmb3JtX2J1dHRvbi5idXR0b24ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1nZm9ybS10aGVtZS1jb2xvci1wcmltYXJ5LCAjNjk5MTNiKTtcbiAgY29sb3I6IHZhcigtLWdmb3JtLXRoZW1lLWNvbG9yLXByaW1hcnktY29udHJhc3QsIHdoaXRlKTsgfVxuIiwiLyohIG5vcm1hbGl6ZS5jc3MgdjcuMC4wIHwgTUlUIExpY2Vuc2UgfCBnaXRodWIuY29tL2pvbmF0aGFudG5lYWwvbm9ybWFsaXplLmNzcyAqL1xuXG4vKiBEb2N1bWVudFxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLyoqXG4gKiAxLiBDb3JyZWN0IHRoZSBsaW5lIGhlaWdodCBpbiBhbGwgYnJvd3NlcnMuXG4gKiAyLiBQcmV2ZW50IGFkanVzdG1lbnRzIG9mIGZvbnQgc2l6ZSBhZnRlciBvcmllbnRhdGlvbiBjaGFuZ2VzIGluXG4gKiAgICBJRSBvbiBXaW5kb3dzIFBob25lIGFuZCBpbiBpT1MuXG4gKi9cblxuaHRtbCB7XG4gIGxpbmUtaGVpZ2h0OiAxLjE1OyAvKiAxICovXG4gIC1tcy10ZXh0LXNpemUtYWRqdXN0OiAxMDAlOyAvKiAyICovXG4gIC13ZWJraXQtdGV4dC1zaXplLWFkanVzdDogMTAwJTsgLyogMiAqL1xufVxuXG4vKiBTZWN0aW9uc1xuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLyoqXG4gKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRSA4LS5cbiAqL1xuXG5hcnRpY2xlLFxuYXNpZGUsXG5mb290ZXIsXG5oZWFkZXIsXG5uYXYsXG5zZWN0aW9uIHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi8qKlxuICogQ29ycmVjdCB0aGUgZm9udCBzaXplIGFuZCBtYXJnaW4gb24gYGgxYCBlbGVtZW50cyB3aXRoaW4gYHNlY3Rpb25gIGFuZFxuICogYGFydGljbGVgIGNvbnRleHRzIGluIENocm9tZSwgRmlyZWZveCwgYW5kIFNhZmFyaS5cbiAqL1xuXG5oMSB7XG4gIGZvbnQtc2l6ZTogMmVtO1xuICBtYXJnaW46IDAuNjdlbSAwO1xufVxuXG4vKiBHcm91cGluZyBjb250ZW50XG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKipcbiAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFIDgtLlxuICovXG5cbmZpZ2NhcHRpb24sXG5maWd1cmUge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLyoqXG4gKiBBZGQgdGhlIGNvcnJlY3QgbWFyZ2luIGluIElFIDgtLlxuICovXG5cbmZpZ3VyZSB7XG4gIG1hcmdpbjogMWVtIDQwcHg7XG59XG5cbi8qKlxuICogMS4gQWRkIHRoZSBjb3JyZWN0IGJveCBzaXppbmcgaW4gRmlyZWZveC5cbiAqIDIuIFNob3cgdGhlIG92ZXJmbG93IGluIEVkZ2UgYW5kIElFLlxuICovXG5cbmhyIHtcbiAgYm94LXNpemluZzogY29udGVudC1ib3g7IC8qIDEgKi9cbiAgaGVpZ2h0OiAwOyAvKiAxICovXG4gIG92ZXJmbG93OiB2aXNpYmxlOyAvKiAyICovXG59XG5cbi8qKlxuICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUuXG4gKi9cblxubWFpbiB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4vKipcbiAqIDEuIENvcnJlY3QgdGhlIGluaGVyaXRhbmNlIGFuZCBzY2FsaW5nIG9mIGZvbnQgc2l6ZSBpbiBhbGwgYnJvd3NlcnMuXG4gKiAyLiBDb3JyZWN0IHRoZSBvZGQgYGVtYCBmb250IHNpemluZyBpbiBhbGwgYnJvd3NlcnMuXG4gKi9cblxucHJlIHtcbiAgZm9udC1mYW1pbHk6IG1vbm9zcGFjZSwgbW9ub3NwYWNlOyAvKiAxICovXG4gIGZvbnQtc2l6ZTogMWVtOyAvKiAyICovXG59XG5cbi8qIFRleHQtbGV2ZWwgc2VtYW50aWNzXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKipcbiAqIDEuIFJlbW92ZSB0aGUgZ3JheSBiYWNrZ3JvdW5kIG9uIGFjdGl2ZSBsaW5rcyBpbiBJRSAxMC5cbiAqIDIuIFJlbW92ZSBnYXBzIGluIGxpbmtzIHVuZGVybGluZSBpbiBpT1MgOCsgYW5kIFNhZmFyaSA4Ky5cbiAqL1xuXG5hIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7IC8qIDEgKi9cbiAgLXdlYmtpdC10ZXh0LWRlY29yYXRpb24tc2tpcDogb2JqZWN0czsgLyogMiAqL1xufVxuXG4vKipcbiAqIDEuIFJlbW92ZSB0aGUgYm90dG9tIGJvcmRlciBpbiBGaXJlZm94IDM5LS5cbiAqIDIuIEFkZCB0aGUgY29ycmVjdCB0ZXh0IGRlY29yYXRpb24gaW4gQ2hyb21lIDU3LSwgRWRnZSwgSUUsIE9wZXJhLFxuICAgICAgYW5kIFNhZmFyaS5cbiAqL1xuXG5hYmJyW3RpdGxlXSB7XG4gIGJvcmRlci1ib3R0b206IG5vbmU7IC8qIDEgKi9cbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7IC8qIDIgKi9cbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmUgZG90dGVkOyAvKiAyICovXG59XG5cbi8qKlxuICogUHJldmVudCB0aGUgZHVwbGljYXRlIGFwcGxpY2F0aW9uIG9mIGBib2xkZXJgIGJ5IHRoZSBuZXh0IHJ1bGUgaW4gU2FmYXJpIDYuXG4gKi9cblxuYixcbnN0cm9uZyB7XG4gIGZvbnQtd2VpZ2h0OiBpbmhlcml0O1xufVxuXG4vKipcbiAqIEFkZCB0aGUgY29ycmVjdCBmb250IHdlaWdodCBpbiBDaHJvbWUsIEVkZ2UsIGFuZCBTYWZhcmkuXG4gKi9cblxuYixcbnN0cm9uZyB7XG4gIGZvbnQtd2VpZ2h0OiBib2xkZXI7XG59XG5cbi8qKlxuICogMS4gQ29ycmVjdCB0aGUgaW5oZXJpdGFuY2UgYW5kIHNjYWxpbmcgb2YgZm9udCBzaXplIGluIGFsbCBicm93c2Vycy5cbiAqIDIuIENvcnJlY3QgdGhlIG9kZCBgZW1gIGZvbnQgc2l6aW5nIGluIGFsbCBicm93c2Vycy5cbiAqL1xuXG5jb2RlLFxua2JkLFxuc2FtcCB7XG4gIGZvbnQtZmFtaWx5OiBtb25vc3BhY2UsIG1vbm9zcGFjZTsgLyogMSAqL1xuICBmb250LXNpemU6IDFlbTsgLyogMiAqL1xufVxuXG4vKipcbiAqIEFkZCB0aGUgY29ycmVjdCBmb250IHN0eWxlIGluIEFuZHJvaWQgNC4zLS5cbiAqL1xuXG5kZm4ge1xuICBmb250LXN0eWxlOiBpdGFsaWM7XG59XG5cbi8qKlxuICogQWRkIHRoZSBjb3JyZWN0IGJhY2tncm91bmQgYW5kIGNvbG9yIGluIElFIDgtLlxuICovXG5cbm1hcmsge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmYwO1xuICBjb2xvcjogIzAwMDtcbn1cblxuLyoqXG4gKiBBZGQgdGhlIGNvcnJlY3QgZm9udCBzaXplIGluIGFsbCBicm93c2Vycy5cbiAqL1xuXG5zbWFsbCB7XG4gIGZvbnQtc2l6ZTogODAlO1xufVxuXG4vKiBFbWJlZGRlZCBjb250ZW50XG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKipcbiAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFIDktLlxuICovXG5cbmF1ZGlvLFxudmlkZW8ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG59XG5cbi8qKlxuICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gaU9TIDQtNy5cbiAqL1xuXG5hdWRpbzpub3QoW2NvbnRyb2xzXSkge1xuICBkaXNwbGF5OiBub25lO1xuICBoZWlnaHQ6IDA7XG59XG5cbi8qKlxuICogUmVtb3ZlIHRoZSBib3JkZXIgb24gaW1hZ2VzIGluc2lkZSBsaW5rcyBpbiBJRSAxMC0uXG4gKi9cblxuaW1nIHtcbiAgYm9yZGVyLXN0eWxlOiBub25lO1xufVxuXG4vKipcbiAqIEhpZGUgdGhlIG92ZXJmbG93IGluIElFLlxuICovXG5cbnN2Zzpub3QoOnJvb3QpIHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cblxuLyogRm9ybXNcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qKlxuICogUmVtb3ZlIHRoZSBtYXJnaW4gaW4gRmlyZWZveCBhbmQgU2FmYXJpLlxuICovXG5cbmJ1dHRvbixcbmlucHV0LFxub3B0Z3JvdXAsXG5zZWxlY3QsXG50ZXh0YXJlYSB7XG4gIG1hcmdpbjogMDtcbn1cblxuLyoqXG4gKiAxLiBTaG93IHRoZSBvdmVyZmxvdyBpbiBJRS5cbiAqIDIuIFJlbW92ZSB0aGUgaW5oZXJpdGFuY2Ugb2YgdGV4dCB0cmFuc2Zvcm0gaW4gRWRnZSwgRmlyZWZveCwgYW5kIElFLlxuICovXG5cbmJ1dHRvbiB7XG4gIG92ZXJmbG93OiB2aXNpYmxlOyAvKiAxICovXG4gIHRleHQtdHJhbnNmb3JtOiBub25lOyAvKiAyICovXG59XG5cbi8qKlxuICogQ29ycmVjdCB0aGUgaW5hYmlsaXR5IHRvIHN0eWxlIGNsaWNrYWJsZSB0eXBlcyBpbiBpT1MgYW5kIFNhZmFyaS5cbiAqL1xuXG5idXR0b24sXG5bdHlwZT1cImJ1dHRvblwiXSxcblt0eXBlPVwicmVzZXRcIl0sXG5bdHlwZT1cInN1Ym1pdFwiXSB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogYnV0dG9uO1xufVxuXG4vKipcbiAqIFByZXZlbnQgYSBXZWJLaXQgYnVnIHdoZXJlICgyKSBkZXN0cm95cyBuYXRpdmUgYGF1ZGlvYCBhbmQgYHZpZGVvYCBjb250cm9sc1xuICogaW4gQW5kcm9pZCA0LlxuICovXG5cbmh0bWwgW3R5cGU9XCJidXR0b25cIl0ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IGJ1dHRvbjtcbn1cblxuLyoqXG4gKiBSZW1vdmUgdGhlIGlubmVyIGJvcmRlciBhbmQgcGFkZGluZyBpbiBGaXJlZm94LlxuICovXG5cbmJ1dHRvbjo6LW1vei1mb2N1cy1pbm5lcixcblt0eXBlPVwiYnV0dG9uXCJdOjotbW96LWZvY3VzLWlubmVyLFxuW3R5cGU9XCJyZXNldFwiXTo6LW1vei1mb2N1cy1pbm5lcixcblt0eXBlPVwic3VibWl0XCJdOjotbW96LWZvY3VzLWlubmVyIHtcbiAgYm9yZGVyLXN0eWxlOiBub25lO1xuICBwYWRkaW5nOiAwO1xufVxuXG4vKipcbiAqIFJlc3RvcmUgdGhlIGZvY3VzIHN0eWxlcyB1bnNldCBieSB0aGUgcHJldmlvdXMgcnVsZS5cbiAqL1xuXG5idXR0b246LW1vei1mb2N1c3JpbmcsXG5bdHlwZT1cImJ1dHRvblwiXTotbW96LWZvY3VzcmluZyxcblt0eXBlPVwicmVzZXRcIl06LW1vei1mb2N1c3JpbmcsXG5bdHlwZT1cInN1Ym1pdFwiXTotbW96LWZvY3VzcmluZyB7XG4gIG91dGxpbmU6IDFweCBkb3R0ZWQgQnV0dG9uVGV4dDtcbn1cblxuLyoqXG4gKiBDb3JyZWN0IHRoZSBwYWRkaW5nIGluIEZpcmVmb3guXG4gKi9cblxuZmllbGRzZXQge1xuICBwYWRkaW5nOiAwLjM1ZW0gMC43NWVtIDAuNjI1ZW07XG59XG5cbi8qKlxuICogU2hvdyB0aGUgb3ZlcmZsb3cgaW4gRWRnZSBhbmQgSUUuXG4gKi9cblxuaW5wdXQge1xuICBvdmVyZmxvdzogdmlzaWJsZTtcbn1cblxuLyoqXG4gKiAxLiBDb3JyZWN0IHRoZSB0ZXh0IHdyYXBwaW5nIGluIEVkZ2UgYW5kIElFLlxuICogMi4gQ29ycmVjdCB0aGUgY29sb3IgaW5oZXJpdGFuY2UgZnJvbSBgZmllbGRzZXRgIGVsZW1lbnRzIGluIElFLlxuICogMy4gUmVtb3ZlIHRoZSBwYWRkaW5nIHNvIGRldmVsb3BlcnMgYXJlIG5vdCBjYXVnaHQgb3V0IHdoZW4gdGhleSB6ZXJvIG91dFxuICogICAgYGZpZWxkc2V0YCBlbGVtZW50cyBpbiBhbGwgYnJvd3NlcnMuXG4gKi9cblxubGVnZW5kIHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDsgLyogMSAqL1xuICBjb2xvcjogaW5oZXJpdDsgLyogMiAqL1xuICBkaXNwbGF5OiB0YWJsZTsgLyogMSAqL1xuICBtYXgtd2lkdGg6IDEwMCU7IC8qIDEgKi9cbiAgcGFkZGluZzogMDsgLyogMyAqL1xuICB3aGl0ZS1zcGFjZTogbm9ybWFsOyAvKiAxICovXG59XG5cbi8qKlxuICogMS4gQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gRWRnZSBhbmQgSUUuXG4gKiAyLiBBZGQgdGhlIGNvcnJlY3QgdmVydGljYWwgYWxpZ25tZW50IGluIENocm9tZSwgRmlyZWZveCwgYW5kIE9wZXJhLlxuICovXG5cbnByb2dyZXNzIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrOyAvKiAxICovXG4gIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTsgLyogMiAqL1xufVxuXG4vKipcbiAqIFJlbW92ZSB0aGUgaW5oZXJpdGFuY2Ugb2YgdGV4dCB0cmFuc2Zvcm0gaW4gRmlyZWZveC5cbiAqL1xuXG5zZWxlY3Qge1xuICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbn1cblxuLyoqXG4gKiBSZW1vdmUgdGhlIGRlZmF1bHQgdmVydGljYWwgc2Nyb2xsYmFyIGluIElFLlxuICovXG5cbnRleHRhcmVhIHtcbiAgb3ZlcmZsb3c6IGF1dG87XG59XG5cbi8qKlxuICogMS4gQWRkIHRoZSBjb3JyZWN0IGJveCBzaXppbmcgaW4gSUUgMTAtLlxuICogMi4gUmVtb3ZlIHRoZSBwYWRkaW5nIGluIElFIDEwLS5cbiAqL1xuXG5bdHlwZT1cImNoZWNrYm94XCJdLFxuW3R5cGU9XCJyYWRpb1wiXSB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7IC8qIDEgKi9cbiAgcGFkZGluZzogMDsgLyogMiAqL1xufVxuXG4vKipcbiAqIENvcnJlY3QgdGhlIGN1cnNvciBzdHlsZSBvZiBpbmNyZW1lbnQgYW5kIGRlY3JlbWVudCBidXR0b25zIGluIENocm9tZS5cbiAqL1xuXG5bdHlwZT1cIm51bWJlclwiXTo6LXdlYmtpdC1pbm5lci1zcGluLWJ1dHRvbixcblt0eXBlPVwibnVtYmVyXCJdOjotd2Via2l0LW91dGVyLXNwaW4tYnV0dG9uIHtcbiAgaGVpZ2h0OiBhdXRvO1xufVxuXG4vKipcbiAqIDEuIENvcnJlY3QgdGhlIG9kZCBhcHBlYXJhbmNlIGluIENocm9tZSBhbmQgU2FmYXJpLlxuICogMi4gQ29ycmVjdCB0aGUgb3V0bGluZSBzdHlsZSBpbiBTYWZhcmkuXG4gKi9cblxuW3R5cGU9XCJzZWFyY2hcIl0ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IHRleHRmaWVsZDsgLyogMSAqL1xuICBvdXRsaW5lLW9mZnNldDogLTJweDsgLyogMiAqL1xufVxuXG4vKipcbiAqIFJlbW92ZSB0aGUgaW5uZXIgcGFkZGluZyBhbmQgY2FuY2VsIGJ1dHRvbnMgaW4gQ2hyb21lIGFuZCBTYWZhcmkgb24gbWFjT1MuXG4gKi9cblxuW3R5cGU9XCJzZWFyY2hcIl06Oi13ZWJraXQtc2VhcmNoLWNhbmNlbC1idXR0b24sXG5bdHlwZT1cInNlYXJjaFwiXTo6LXdlYmtpdC1zZWFyY2gtZGVjb3JhdGlvbiB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbn1cblxuLyoqXG4gKiAxLiBDb3JyZWN0IHRoZSBpbmFiaWxpdHkgdG8gc3R5bGUgY2xpY2thYmxlIHR5cGVzIGluIGlPUyBhbmQgU2FmYXJpLlxuICogMi4gQ2hhbmdlIGZvbnQgcHJvcGVydGllcyB0byBgaW5oZXJpdGAgaW4gU2FmYXJpLlxuICovXG5cbjo6LXdlYmtpdC1maWxlLXVwbG9hZC1idXR0b24ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IGJ1dHRvbjsgLyogMSAqL1xuICBmb250OiBpbmhlcml0OyAvKiAyICovXG59XG5cbi8qIEludGVyYWN0aXZlXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKlxuICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gRWRnZSwgRmlyZWZveCA0OC0sIGFuZCBJRS5cbiAqL1xuXG5kZXRhaWxzIHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi8qXG4gKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBhbGwgYnJvd3NlcnMuXG4gKi9cblxuc3VtbWFyeSB7XG4gIGRpc3BsYXk6IGxpc3QtaXRlbTtcbn1cblxuLyogU2NyaXB0aW5nXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKipcbiAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFIDktLlxuICovXG5cbmNhbnZhcyB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbn1cblxuLyoqXG4gKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRS5cbiAqL1xuXG50ZW1wbGF0ZSB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi8qIEhpZGRlblxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLyoqXG4gKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRSAxMC0uXG4gKi9cblxuW2hpZGRlbl0ge1xuICBkaXNwbGF5OiBub25lO1xufVxuIiwiJGZvbnQtcGF0aDogXCIvYXBwL3RoZW1lcy9qaV9zdGFydGVyL2Fzc2V0cy9mb250c1wiICFkZWZhdWx0O1xyXG5AZm9udC1mYWNlIHtcclxuXHRmb250LWRpc3BsYXk6IHN3YXA7IC8qIENoZWNrIGh0dHBzOi8vZGV2ZWxvcGVyLm1vemlsbGEub3JnL2VuLVVTL2RvY3MvV2ViL0NTUy9AZm9udC1mYWNlL2ZvbnQtZGlzcGxheSBmb3Igb3RoZXIgb3B0aW9ucy4gKi9cclxuXHRmb250LWZhbWlseTogJ09wZW4gU2Fucyc7XHJcblx0Zm9udC1zdHlsZTogbm9ybWFsO1xyXG5cdGZvbnQtd2VpZ2h0OiA0MDA7XHJcblx0c3JjOiB1cmwoJyN7JGZvbnQtcGF0aH0vb3Blbi1zYW5zL29wZW4tc2Fucy1sYXRpbi1yZWd1bGFyLmVvdCcpOyAvKiBJRTkgQ29tcGF0IE1vZGVzICovXHJcblx0c3JjOiB1cmwoJyN7JGZvbnQtcGF0aH0vb3Blbi1zYW5zL29wZW4tc2Fucy1sYXRpbi1yZWd1bGFyLmVvdD8jaWVmaXgnKSBmb3JtYXQoJ2VtYmVkZGVkLW9wZW50eXBlJyksIC8qIElFNi1JRTggKi9cclxuXHRcdCB1cmwoJyN7JGZvbnQtcGF0aH0vb3Blbi1zYW5zL29wZW4tc2Fucy1sYXRpbi1yZWd1bGFyLndvZmYyJykgZm9ybWF0KCd3b2ZmMicpLCAvKiBTdXBlciBNb2Rlcm4gQnJvd3NlcnMgKi9cclxuXHRcdCB1cmwoJyN7JGZvbnQtcGF0aH0vb3Blbi1zYW5zL29wZW4tc2Fucy1sYXRpbi1yZWd1bGFyLndvZmYnKSBmb3JtYXQoJ3dvZmYnKSwgLyogTW9kZXJuIEJyb3dzZXJzICovXHJcblx0XHQgdXJsKCcjeyRmb250LXBhdGh9L29wZW4tc2Fucy9vcGVuLXNhbnMtbGF0aW4tcmVndWxhci50dGYnKSBmb3JtYXQoJ3RydWV0eXBlJyksIC8qIFNhZmFyaSwgQW5kcm9pZCwgaU9TICovXHJcblx0XHQgdXJsKCcjeyRmb250LXBhdGh9L29wZW4tc2Fucy9vcGVuLXNhbnMtbGF0aW4tcmVndWxhci5zdmcjT3BlblNhbnMnKSBmb3JtYXQoJ3N2ZycpOyAvKiBMZWdhY3kgaU9TICovXHJcbiAgfVxyXG4gIC8qIG9wZW4tc2Fucy1pdGFsaWMgLSBsYXRpbiAqL1xyXG4gIEBmb250LWZhY2Uge1xyXG5cdGZvbnQtZGlzcGxheTogc3dhcDsgLyogQ2hlY2sgaHR0cHM6Ly9kZXZlbG9wZXIubW96aWxsYS5vcmcvZW4tVVMvZG9jcy9XZWIvQ1NTL0Bmb250LWZhY2UvZm9udC1kaXNwbGF5IGZvciBvdGhlciBvcHRpb25zLiAqL1xyXG5cdGZvbnQtZmFtaWx5OiAnT3BlbiBTYW5zJztcclxuXHRmb250LXN0eWxlOiBpdGFsaWM7XHJcblx0Zm9udC13ZWlnaHQ6IDQwMDtcclxuXHRzcmM6IHVybCgnI3skZm9udC1wYXRofS9vcGVuLXNhbnMvb3Blbi1zYW5zLWxhdGluLWl0YWxpYy5lb3QnKTsgLyogSUU5IENvbXBhdCBNb2RlcyAqL1xyXG5cdHNyYzogdXJsKCcjeyRmb250LXBhdGh9L29wZW4tc2Fucy9vcGVuLXNhbnMtbGF0aW4taXRhbGljLmVvdD8jaWVmaXgnKSBmb3JtYXQoJ2VtYmVkZGVkLW9wZW50eXBlJyksIC8qIElFNi1JRTggKi9cclxuXHRcdCB1cmwoJyN7JGZvbnQtcGF0aH0vb3Blbi1zYW5zL29wZW4tc2Fucy1sYXRpbi1pdGFsaWMud29mZjInKSBmb3JtYXQoJ3dvZmYyJyksIC8qIFN1cGVyIE1vZGVybiBCcm93c2VycyAqL1xyXG5cdFx0IHVybCgnI3skZm9udC1wYXRofS9vcGVuLXNhbnMvb3Blbi1zYW5zLWxhdGluLWl0YWxpYy53b2ZmJykgZm9ybWF0KCd3b2ZmJyksIC8qIE1vZGVybiBCcm93c2VycyAqL1xyXG5cdFx0IHVybCgnI3skZm9udC1wYXRofS9vcGVuLXNhbnMvb3Blbi1zYW5zLWxhdGluLWl0YWxpYy50dGYnKSBmb3JtYXQoJ3RydWV0eXBlJyksIC8qIFNhZmFyaSwgQW5kcm9pZCwgaU9TICovXHJcblx0XHQgdXJsKCcjeyRmb250LXBhdGh9L29wZW4tc2Fucy9vcGVuLXNhbnMtbGF0aW4taXRhbGljLnN2ZyNPcGVuU2FucycpIGZvcm1hdCgnc3ZnJyk7IC8qIExlZ2FjeSBpT1MgKi9cclxuICB9XHJcbiAgLyogb3Blbi1zYW5zLTgwMCAtIGxhdGluICovXHJcbiAgQGZvbnQtZmFjZSB7XHJcblx0Zm9udC1kaXNwbGF5OiBzd2FwOyAvKiBDaGVjayBodHRwczovL2RldmVsb3Blci5tb3ppbGxhLm9yZy9lbi1VUy9kb2NzL1dlYi9DU1MvQGZvbnQtZmFjZS9mb250LWRpc3BsYXkgZm9yIG90aGVyIG9wdGlvbnMuICovXHJcblx0Zm9udC1mYW1pbHk6ICdPcGVuIFNhbnMnO1xyXG5cdGZvbnQtc3R5bGU6IG5vcm1hbDtcclxuXHRmb250LXdlaWdodDogODAwO1xyXG5cdHNyYzogdXJsKCcjeyRmb250LXBhdGh9L29wZW4tc2Fucy9vcGVuLXNhbnMtbGF0aW4tODAwLmVvdCcpOyAvKiBJRTkgQ29tcGF0IE1vZGVzICovXHJcblx0c3JjOiB1cmwoJyN7JGZvbnQtcGF0aH0vb3Blbi1zYW5zL29wZW4tc2Fucy1sYXRpbi04MDAuZW90PyNpZWZpeCcpIGZvcm1hdCgnZW1iZWRkZWQtb3BlbnR5cGUnKSwgLyogSUU2LUlFOCAqL1xyXG5cdFx0IHVybCgnI3skZm9udC1wYXRofS9vcGVuLXNhbnMvb3Blbi1zYW5zLWxhdGluLTgwMC53b2ZmMicpIGZvcm1hdCgnd29mZjInKSwgLyogU3VwZXIgTW9kZXJuIEJyb3dzZXJzICovXHJcblx0XHQgdXJsKCcjeyRmb250LXBhdGh9L29wZW4tc2Fucy9vcGVuLXNhbnMtbGF0aW4tODAwLndvZmYnKSBmb3JtYXQoJ3dvZmYnKSwgLyogTW9kZXJuIEJyb3dzZXJzICovXHJcblx0XHQgdXJsKCcjeyRmb250LXBhdGh9L29wZW4tc2Fucy9vcGVuLXNhbnMtbGF0aW4tODAwLnR0ZicpIGZvcm1hdCgndHJ1ZXR5cGUnKSwgLyogU2FmYXJpLCBBbmRyb2lkLCBpT1MgKi9cclxuXHRcdCB1cmwoJyN7JGZvbnQtcGF0aH0vb3Blbi1zYW5zL29wZW4tc2Fucy1sYXRpbi04MDAuc3ZnI09wZW5TYW5zJykgZm9ybWF0KCdzdmcnKTsgLyogTGVnYWN5IGlPUyAqL1xyXG4gIH1cclxuXHJcbmh0bWx7XHJcblx0Zm9udC1zaXplOiAxM3B4O1xyXG5cdEBpbmNsdWRlIGJyZWFrcG9pbnQoJGxheW91dC1zKXtcclxuXHRcdGZvbnQtc2l6ZTogMTRweDtcclxuXHR9XHJcblx0QGluY2x1ZGUgYnJlYWtwb2ludCgkbGF5b3V0LWwpe1xyXG5cdFx0Zm9udC1zaXplOiAxNXB4O1xyXG5cdH1cclxuXHRAaW5jbHVkZSBicmVha3BvaW50KCRsYXlvdXQteGwpe1xyXG5cdFx0Zm9udC1zaXplOiAxNnB4O1xyXG5cdH1cclxuXHRAaW5jbHVkZSBicmVha3BvaW50KCRsYXlvdXQteHhsKXtcclxuXHRcdGZvbnQtc2l6ZTogMTdweDtcclxuXHR9XHJcblx0QGluY2x1ZGUgYnJlYWtwb2ludCgkbGF5b3V0LWh1Z2Upe1xyXG5cdFx0Zm9udC1zaXplOiAxOHB4O1xyXG5cdH1cclxuXHRAaW5jbHVkZSBicmVha3BvaW50KCRsYXlvdXQtZ2lhbnQpe1xyXG5cdFx0Zm9udC1zaXplOiAxOXB4O1xyXG5cdH1cclxufVxyXG5cclxuQGltcG9ydCAnZm9udHNfY29tbW9uJztcclxuXHJcbmgxe1xyXG5cdEBpbmNsdWRlIGJyZWFrcG9pbnQoJGxheW91dC1zKXtcclxuXHRcdGZvbnQtc2l6ZTogMi43NXJlbTtcclxuXHR9XHJcbn1cclxuXHJcbi5idXR0b24tYmFja3tcclxuXHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcblx0bWFyZ2luLWJvdHRvbTogMzBweDtcclxuXHRmb250LXNpemU6IDEuMjVyZW07XHJcblx0JjpiZWZvcmV7XHJcblx0XHRjb250ZW50OiAnXFwyMTkwJztcclxuXHRcdGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuXHRcdG1hcmdpbi1yaWdodDogLjVlbTtcclxuXHR9XHJcbn0iLCIvLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cbi8vIERlZmF1bHQgVmFyaWFibGVzXG4vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cbiRCcmVha3BvaW50LVNldHRpbmdzOiAoXG4gICdkZWZhdWx0IG1lZGlhJzogYWxsLFxuICAnZGVmYXVsdCBmZWF0dXJlJzogbWluLXdpZHRoLFxuICAnZGVmYXVsdCBwYWlyJzogd2lkdGgsXG5cbiAgJ2ZvcmNlIGFsbCBtZWRpYSB0eXBlJzogZmFsc2UsXG4gICd0byBlbXMnOiBmYWxzZSxcbiAgJ3RyYW5zZm9ybSByZXNvbHV0aW9ucyc6IHRydWUsXG5cbiAgJ25vIHF1ZXJpZXMnOiBmYWxzZSxcbiAgJ25vIHF1ZXJ5IGZhbGxiYWNrcyc6IGZhbHNlLFxuXG4gICdiYXNlIGZvbnQgc2l6ZSc6IDE2cHgsXG5cbiAgJ2xlZ2FjeSBzeW50YXgnOiBmYWxzZVxuKTtcblxuJGJyZWFrcG9pbnQ6ICgpICFkZWZhdWx0O1xuXG4vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cbi8vIEltcG9ydHNcbi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuQGltcG9ydCBcImJyZWFrcG9pbnQvc2V0dGluZ3NcIjtcbkBpbXBvcnQgJ2JyZWFrcG9pbnQvY29udGV4dCc7XG5AaW1wb3J0ICdicmVha3BvaW50L2hlbHBlcnMnO1xuQGltcG9ydCAnYnJlYWtwb2ludC9wYXJzZXJzJztcbkBpbXBvcnQgJ2JyZWFrcG9pbnQvbm8tcXVlcnknO1xuXG5AaW1wb3J0ICdicmVha3BvaW50L3Jlc3BvbmQtdG8nO1xuXG5AaW1wb3J0IFwiYnJlYWtwb2ludC9sZWdhY3ktc2V0dGluZ3NcIjtcblxuLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXG4vLyBCcmVha3BvaW50IE1peGluXG4vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cblxuQG1peGluIGJyZWFrcG9pbnQoJHF1ZXJ5LCAkbm8tcXVlcnk6IGZhbHNlKSB7XG4gIEBpbmNsdWRlIGxlZ2FjeS1zZXR0aW5ncy13YXJuaW5nO1xuXG4gIC8vIFJlc2V0IGNvbnRleHRzXG4gIEBpbmNsdWRlIHByaXZhdGUtYnJlYWtwb2ludC1yZXNldC1jb250ZXh0cygpO1xuXG4gICRicmVha3BvaW50OiBicmVha3BvaW50KCRxdWVyeSwgZmFsc2UpO1xuXG4gICRxdWVyeS1zdHJpbmc6IG1hcC1nZXQoJGJyZWFrcG9pbnQsICdxdWVyeScpO1xuICAkcXVlcnktZmFsbGJhY2s6IG1hcC1nZXQoJGJyZWFrcG9pbnQsICdmYWxsYmFjaycpO1xuXG4gICRwcml2YXRlLWJyZWFrcG9pbnQtY29udGV4dC1ob2xkZXI6IG1hcC1nZXQoJGJyZWFrcG9pbnQsICdjb250ZXh0IGhvbGRlcicpICFnbG9iYWw7XG4gICRwcml2YXRlLWJyZWFrcG9pbnQtcXVlcnktY291bnQ6IG1hcC1nZXQoJGJyZWFrcG9pbnQsICdxdWVyeSBjb3VudCcpICFnbG9iYWw7XG5cbiAgLy8gQWxsb3cgZm9yIGFuIGFzLW5lZWRlZCBvdmVycmlkZSBvciB1c2FnZSBvZiBubyBxdWVyeSBmYWxsYmFjay5cbiAgQGlmICRuby1xdWVyeSAhPSBmYWxzZSB7XG4gICAgJHF1ZXJ5LWZhbGxiYWNrOiAkbm8tcXVlcnk7XG4gIH1cblxuICBAaWYgJHF1ZXJ5LWZhbGxiYWNrICE9IGZhbHNlIHtcbiAgICAkY29udGV4dC1zZXR0ZXI6IHByaXZhdGUtYnJlYWtwb2ludC1zZXQtY29udGV4dCgnbm8tcXVlcnknLCAkcXVlcnktZmFsbGJhY2spO1xuICB9XG5cbiAgLy8gUHJpbnQgT3V0IFF1ZXJ5IFN0cmluZ1xuICBAaWYgbm90IGJyZWFrcG9pbnQtZ2V0KCdubyBxdWVyaWVzJykge1xuICAgIEBtZWRpYSAjeyRxdWVyeS1zdHJpbmd9IHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfVxuXG4gIEBpZiBicmVha3BvaW50LWdldCgnbm8gcXVlcnkgZmFsbGJhY2tzJykgIT0gZmFsc2Ugb3IgYnJlYWtwb2ludC1nZXQoJ25vIHF1ZXJpZXMnKSA9PSB0cnVlIHtcblxuICAgICR0eXBlOiB0eXBlLW9mKGJyZWFrcG9pbnQtZ2V0KCdubyBxdWVyeSBmYWxsYmFja3MnKSk7XG4gICAgJHByaW50OiBmYWxzZTtcblxuICAgIEBpZiAoJHR5cGUgPT0gJ2Jvb2wnKSB7XG4gICAgICAkcHJpbnQ6IHRydWU7XG4gICAgfVxuICAgIEBlbHNlIGlmICgkdHlwZSA9PSAnc3RyaW5nJykge1xuICAgICAgQGlmICRxdWVyeS1mYWxsYmFjayA9PSBicmVha3BvaW50LWdldCgnbm8gcXVlcnkgZmFsbGJhY2tzJykge1xuICAgICAgICAkcHJpbnQ6IHRydWU7XG4gICAgICB9XG4gICAgfVxuICAgIEBlbHNlIGlmICgkdHlwZSA9PSAnbGlzdCcpIHtcbiAgICAgIEBlYWNoICR3cmFwcGVyIGluIGJyZWFrcG9pbnQtZ2V0KCdubyBxdWVyeSBmYWxsYmFja3MnKSB7XG4gICAgICAgIEBpZiAkcXVlcnktZmFsbGJhY2sgPT0gJHdyYXBwZXIge1xuICAgICAgICAgICRwcmludDogdHJ1ZTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC8vIFdyaXRlIEZhbGxiYWNrXG4gICAgQGlmICgkcXVlcnktZmFsbGJhY2sgIT0gZmFsc2UpIGFuZCAoJHByaW50ID09IHRydWUpIHtcbiAgICAgICR0eXBlLWZhbGxiYWNrOiB0eXBlLW9mKCRxdWVyeS1mYWxsYmFjayk7XG5cbiAgICAgIEBpZiAoJHR5cGUtZmFsbGJhY2sgIT0gJ2Jvb2wnKSB7XG4gICAgICAgICN7JHF1ZXJ5LWZhbGxiYWNrfSAmIHtcbiAgICAgICAgICBAY29udGVudDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgQGVsc2Uge1xuICAgICAgICBAY29udGVudDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBAaW5jbHVkZSBwcml2YXRlLWJyZWFrcG9pbnQtcmVzZXQtY29udGV4dHMoKTtcbn1cblxuXG5AbWl4aW4gbXEoJHF1ZXJ5LCAkbm8tcXVlcnk6IGZhbHNlKSB7XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQoJHF1ZXJ5LCAkbm8tcXVlcnkpIHtcbiAgICBAY29udGVudDtcbiAgfVxufVxuIiwiYm9keXtcblx0Zm9udC1mYW1pbHk6ICdPcGVuIFNhbnMnLCBBcmlhbCwgc2Fucy1zZXJpZjtcblx0Zm9udC13ZWlnaHQ6IDQwMDtcblx0LXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG5cdC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XG5cdGxpbmUtaGVpZ2h0OjEuNTtcblx0Zm9udC1mZWF0dXJlLXNldHRpbmdzOiAndG51bSc7XG5cdGNvbG9yOiAkY29sb3JfYmFzZTtcbn1cblxucHtcblx0bWFyZ2luLWJvdHRvbTogMXJlbTtcbn1cblxuZW0sIGl7XG5cdGZvbnQtd2VpZ2h0OiA0MDBpO1xufVxuXG5cbmgxLGgyLGgzLGg0LGg1e1xuXHRmb250LXdlaWdodDo4MDA7XG5cdGxldHRlci1zcGFjaW5nOiAtMC4wM2VtO1xuXHRtYXJnaW4tdG9wOiAwO1xufVxuXG5oMXtcblx0Zm9udC1zaXplOiAyLjJyZW07XG5cdG1hcmdpbi1ib3R0b206MnJlbTtcblx0bGluZS1oZWlnaHQ6IDE7XG59XG5cbmgye1xuXHRmb250LXNpemU6IDEuNzVyZW07XG5cdG1hcmdpbi1ib3R0b206MXJlbTtcblx0bWFyZ2luLXRvcDozcmVtO1xuXHRsaW5lLWhlaWdodDogMS4xNDU7XG59XG5cbmgze1xuXHRmb250LXNpemU6IDEuMjVyZW07XG5cdGxpbmUtaGVpZ2h0OiAxLjI1O1xuXHRtYXJnaW4tYm90dG9tOjFyZW07XG5cdG1hcmdpbi10b3A6MnJlbTtcbn1cblxuaDR7XG5cdGZvbnQtc2l6ZTogMXJlbTtcblx0bGluZS1oZWlnaHQ6IDEuNTtcblx0bWFyZ2luLWJvdHRvbToxcmVtO1xuXHRtYXJnaW4tdG9wOjEuNXJlbTtcbn1cblxuaDV7XG5cdGZvbnQtc2l6ZTogMC44MTNyZW07XG5cdGxpbmUtaGVpZ2h0OiAxLjUzODtcblx0bWFyZ2luLWJvdHRvbTowO1xuXHRtYXJnaW4tdG9wOjFyZW07XG59XG5cbmF7XG5cdHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblx0Y29sb3I6ICRjb2xvcl9wcmltYXJ5O1xuXHR0cmFuc2l0aW9uOi4ycyBjb2xvcjtcblx0Jjp2aXNpdGVke1xuXHRcdHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblx0XHRjb2xvcjogJGNvbG9yX3ByaW1hcnk7XG5cdFx0Jjpob3Zlcntcblx0XHRcdGNvbG9yOiAkY29sb3JfYmFzZTtcblx0XHR9XG5cdH1cblx0Jjpob3Zlcntcblx0XHR0ZXh0LWRlY29yYXRpb246IG5vbmU7XG5cdFx0Y29sb3I6ICRjb2xvcl9iYXNlO1xuXHR9XG59XG5cbnRhYmxle1xuXHRib3JkZXItY29sbGFwc2U6IGNvbGxhcHNlO1xuXHR3aWR0aDogMTAwJTtcblx0dGQsdGh7XG5cdFx0cGFkZGluZzogLjZyZW0gLjZyZW0gLjZyZW0gMDtcblx0XHRib3JkZXItYm90dG9tOiAxcHggc29saWQgJGNvbG9yX2dyZXlfMTtcblx0XHQmOmZpcnN0LWNoaWxke1xuXHRcdFx0cGFkZGluZy1sZWZ0OiAwO1xuXHRcdH1cblx0XHQmOmxhc3QtY2hpbGR7XG5cdFx0XHRwYWRkaW5nLXJpZ2h0OiAwO1xuXHRcdH1cblx0XHQmOm50aC1jaGlsZCgzKTpudGgtbGFzdC1jaGlsZCgxKSxcblx0XHQmOm50aC1jaGlsZCgyKTpudGgtbGFzdC1jaGlsZCgyKSxcblx0XHQmOm50aC1jaGlsZCgxKTpudGgtbGFzdC1jaGlsZCgzKXtcblx0XHRcdHdpZHRoOiAzMy4zMzMzMyU7XG5cdFx0fVxuXHRcdCY6bnRoLWNoaWxkKDIpOm50aC1sYXN0LWNoaWxkKDEpe1xuXHRcdFx0d2lkdGg6IDY3JTtcblx0XHR9XG5cdFx0JjpudGgtY2hpbGQoMSk6bnRoLWxhc3QtY2hpbGQoMil7XG5cdFx0XHR3aWR0aDogMzMlO1xuXHRcdH1cblx0fVxuXHR0aHtcblx0XHR0ZXh0LWFsaWduOiBsZWZ0O1xuXHR9XG5cdHRyOmxhc3Qtb2YtdHlwZXtcblx0XHR0ZHtcblx0XHRcdGJvcmRlci1ib3R0b206IDA7XG5cdFx0fVxuXHR9XG59XG5cbi5idXR0b257XG5cdHBhZGRpbmc6IDEwcHggMjVweDtcblx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXHRiYWNrZ3JvdW5kOiAkY29sb3JfcHJpbWFyeTtcblx0Y29sb3I6ICRjb2xvcl9uZXV0cmFsO1xuXHR0cmFuc2l0aW9uOi4ycyBiYWNrZ3JvdW5kO1xuXHRjdXJzb3I6IHBvaW50ZXI7XG5cdGJvcmRlcjowO1xuXHRmb250LXNpemU6IGluaGVyaXQ7XG5cdGxpbmUtaGVpZ2h0OiAxO1xuXHQmOmhvdmVye1xuXHRcdGJhY2tncm91bmQ6IGRhcmtlbigkY29sb3JfcHJpbWFyeSwxMCUpO1xuXHRcdGNvbG9yOiAkY29sb3JfbmV1dHJhbDtcblx0fVxuXHQrIC5idXR0b257XG5cdFx0bWFyZ2luLWxlZnQ6IC41cmVtO1xuXHR9XG5cdCY6Zm9jdXN7XG5cdFx0b3V0bGluZTpub25lO1xuXHR9XG59XG5cbi5mLXNtYWxsIHtcblx0Zm9udC1zaXplOiAwLjgxM3JlbTtcblx0bGluZS1oZWlnaHQ6IDEuNTM4O1xufVxuXG4lYnVsbGV0LWxpc3R7XG5cdGxpc3Qtc3R5bGU6IG5vbmU7XG5cdHBhZGRpbmc6IDA7XG5cdGxpe1xuXHRcdHBhZGRpbmctbGVmdDogMWVtO1x0XG5cdFx0JjpiZWZvcmV7XG5cdFx0XHRjb250ZW50OiBcIuKAk1wiO1xuXHRcdFx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXHRcdFx0bWFyZ2luLWxlZnQ6IC0xZW07XG5cdFx0XHR3aWR0aDogMWVtO1xuXHRcdFx0Y29sb3I6IGluaGVyaXQ7XG5cdFx0fVx0XHRcblx0fVxufVxuXG4lYXJyb3ctbGlzdHtcblx0bGlzdC1zdHlsZTogbm9uZTtcblx0cGFkZGluZzogMDtcblx0bGl7XG5cdFx0JjpiZWZvcmV7XG5cdFx0XHRjb250ZW50OiAnXFwyMTkyJztcblx0XHRcdGRpc3BsYXk6IGlubGluZS1ibG9jaztcblx0XHRcdG1hcmdpbi1sZWZ0OiAtMS4zZW07XG5cdFx0XHR3aWR0aDogMS4zZW07XG5cdFx0XHRjb2xvcjogJGNvbG9yX3ByaW1hcnk7XG5cdFx0fVx0XHRcblx0fVxufVxuXG4lbnVtYmVyZWQtbGlzdHtcblx0cGFkZGluZzogMCAwIDAgMWVtO1xuXHRsaXtcblx0XHRwYWRkaW5nLWxlZnQ6IDBlbTtcdFx0XG5cdH1cbn1cblxuLmNvbnRlbnQsIC5nLWNvbnRlbnRfX2xlZnQgYXJ0aWNsZSwgLndwLWJsb2NrLWNvbHVtbntcblx0PiB1bHtcblx0XHRAZXh0ZW5kICVidWxsZXQtbGlzdDtcblx0fVxuXHQ+IG9se1xuXHRcdEBleHRlbmQgJW51bWJlcmVkLWxpc3Q7XG5cdH1cbn0iLCIkY29sb3JfYmFzZSA6IHJnYig3Miw3MCw3MCk7XG4kY29sb3JfcHJpbWFyeSA6IHJnYigxMDUsMTQ1LDU5KTtcbiRjb2xvcl9zZWNvbmRhcnkgOiByZ2IoMjUwLDI1MCwyNDQpO1xuJGNvbG9yX25ldXRyYWwgOiByZ2IoMjU1LDI1NSwyNTUpO1xuJGNvbG9yX2JsYWNrIDogcmdiKDAsMCwwKTtcbiRjb2xvcl9ncmV5XzE6IHJnYigyMjAsMjIwLDIyMCk7XG4kY29sb3JfZ3JleV8yOiByZ2IoMjAwLDIwMCwyMDApO1xuJGNvbG9yX2FsZXJ0OiByZ2IoMjU1LDAsMCk7XG4kY29sb3Jfc3VjY2VzczogcmdiKDAsMjU1LDApOyIsIiRmb250LXBhdGg6IFwiL2FwcC90aGVtZXMvamlfc3RhcnRlci9hc3NldHMvZm9udHMvaWNvbnNcIjtcblxuJGljb24tLWFycm93LWNpcmNsZS1kb3duOiBcIlxcZTkwMFwiO1xuJGljb24tLWFycm93LWNpcmNsZS11cDogXCJcXGU5MDFcIjtcbiRpY29uLS1sb25nLWFycm93LXJpZ2h0OiBcIlxcZTkwMlwiO1xuJGljb24tLXRpbWVzOiBcIlxcZTkwM1wiO1xuJGljb24tLW1lbnU6IFwiXFxmMGM5XCI7XG5cbkBmb250LWZhY2Uge1xuICAgIGZvbnQtZmFtaWx5OiAnamknO1xuICAgIHNyYzpcbiAgICAgICAgdXJsKCcjeyRmb250LXBhdGh9L2ppLnR0Zj9vcjlkN3EnKSBmb3JtYXQoJ3RydWV0eXBlJyksXG4gICAgICAgIHVybCgnI3skZm9udC1wYXRofS9qaS53b2ZmP29yOWQ3cScpIGZvcm1hdCgnd29mZicpLFxuICAgICAgICB1cmwoJyN7JGZvbnQtcGF0aH0vamkuc3ZnP29yOWQ3cSNqaScpIGZvcm1hdCgnc3ZnJyk7XG4gICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICBmb250LXN0eWxlOiBub3JtYWw7XG59XG5cbi5pY29uLCBbY2xhc3NePVwiaWNvbi0tXCJdLCBbY2xhc3MqPVwiIGljb24tLVwiXSB7XG4gICAgLyogdXNlICFpbXBvcnRhbnQgdG8gcHJldmVudCBpc3N1ZXMgd2l0aCBicm93c2VyIGV4dGVuc2lvbnMgdGhhdCBjaGFuZ2UgZm9udHMgKi9cbiAgICBmb250LWZhbWlseTogJ2ppJyAhaW1wb3J0YW50O1xuICAgIHNwZWFrOiBub25lO1xuICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgIGZvbnQtdmFyaWFudDogbm9ybWFsO1xuICAgIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICAgIGxpbmUtaGVpZ2h0OiAxO1xuXG4gICAgLyogQmV0dGVyIEZvbnQgUmVuZGVyaW5nID09PT09PT09PT09ICovXG4gICAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG4gICAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcbn1cblxuLmljb24tLWFycm93LWNpcmNsZS1kb3duIHtcbiAgICAmOmJlZm9yZSB7XG4gICAgICAgIGNvbnRlbnQ6ICRpY29uLS1hcnJvdy1jaXJjbGUtZG93bjtcbiAgICB9XG59XG4uaWNvbi0tYXJyb3ctY2lyY2xlLXVwIHtcbiAgICAmOmJlZm9yZSB7XG4gICAgICAgIGNvbnRlbnQ6ICRpY29uLS1hcnJvdy1jaXJjbGUtdXA7XG4gICAgfVxufVxuLmljb24tLWxvbmctYXJyb3ctcmlnaHQge1xuICAgICY6YmVmb3JlIHtcbiAgICAgICAgY29udGVudDogJGljb24tLWxvbmctYXJyb3ctcmlnaHQ7XG4gICAgfVxufVxuLmljb24tLXRpbWVzIHtcbiAgICAmOmJlZm9yZSB7XG4gICAgICAgIGNvbnRlbnQ6ICRpY29uLS10aW1lcztcbiAgICB9XG59XG4uaWNvbi0tbWVudSB7XG4gICAgJjpiZWZvcmUge1xuICAgICAgICBjb250ZW50OiAkaWNvbi0tbWVudTtcbiAgICB9XG59XG4uaWNvbi0tY2hldnJvbntcbiAgICAmOjpiZWZvcmUge1xuICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICB3aWR0aDogMTVweDtcbiAgICAgICAgaGVpZ2h0OiAxNXB4O1xuICAgICAgICBib3JkZXItYm90dG9tOiA0cHggc29saWQ7XG4gICAgICAgIGJvcmRlci1yaWdodDogNHB4IHNvbGlkO1xuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtNDVkZWcpO1xuICAgICAgICBtYXJnaW4tbGVmdDogLTdweDtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiA1cHg7XG4gICAgfVxufSIsIkBsb3N0IGZsZXhib3ggZmxleDtcbkBsb3N0IGd1dHRlciAzJTtcblxuLmctZmxleGlibGV7XG5cdGRpc3BsYXk6IGZsZXg7XG5cdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG5cdGhlaWdodDogMTAwJTtcblx0bWluLWhlaWdodDogMTAwdmg7XG5cdCZfX3RvcHtcblx0XHRmbGV4OjEgMCBhdXRvO1xuXHR9XG5cdCZfX2JvdHRvbXtcblx0XHRmbGV4LXNocmluazowO1xuXHR9XG59XG5cbi5nLWNvbnRlbnR7XG5cdG1hcmdpbjogMy41cmVtIDA7XG5cdCZfX2xlZnR7XG5cdFx0bG9zdC1jb2x1bW46IDEyLzEyIDE7XG5cdFx0QGluY2x1ZGUgYnJlYWtwb2ludCgkbGF5b3V0LW0pe1xuXHRcdFx0bG9zdC1jb2x1bW46IDcvMTAgMiA1cmVtO1xuXHRcdH1cblx0XHRAaW5jbHVkZSBicmVha3BvaW50KCRsYXlvdXQtbCl7XG5cdFx0XHRsb3N0LWNvbHVtbjogNi41LzEwIDIgMTByZW07XG5cdFx0fVxuXHR9XG5cdCZfX3JpZ2h0e1xuXHRcdGRpc3BsYXk6IG5vbmU7XG5cdFx0QGluY2x1ZGUgYnJlYWtwb2ludCgkbGF5b3V0LW0pe1xuXHRcdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0XHRsb3N0LWNvbHVtbjogMy8xMCAyIDVyZW07XG5cdFx0fVxuXHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQoJGxheW91dC1sKXtcblx0XHRcdGxvc3QtY29sdW1uOiAzLjUvMTAgMiAxMHJlbTtcblx0XHR9XG5cdFx0Ji0td2lkZ2V0X3NpZGViYXJ7XG5cdFx0XHRkaXNwbGF5OiBibG9jaztcblx0XHR9XG5cdH1cblx0Jl9fd2l0aF9zaWRlYmFye1xuXHRcdCZfX2xlZnR7XG5cdFx0XHRmbGV4LWJhc2lzOiAxMDAlO1xuXHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludCgkbGF5b3V0LW0gKXtcblx0XHRcdFx0ZmxleC1iYXNpczo2NSU7XG5cdFx0XHR9XG5cdFx0fVxuXHRcdCZfX3JpZ2h0e1xuXHRcdFx0ZmxleC1iYXNpczogMTAwJTtcblx0XHRcdG1hcmdpbi1ib3R0b206IDNyZW07XG5cdFx0XHRAaW5jbHVkZSBicmVha3BvaW50KCRsYXlvdXQtbSApe1xuXHRcdFx0XHRmbGV4LWJhc2lzOiAzMCU7XG5cdFx0XHRcdG1hcmdpbi1ib3R0b206IDA7XG5cdFx0XHR9XG5cdFx0fVx0XG5cdH1cbn1cblxuLmctd3JhcHBlcntcbiAgICBwYWRkaW5nOiAwIDYlO1xuICAgIG1heC13aWR0aDogODByZW07XG4gICAgbWFyZ2luOiAwIGF1dG87XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkbGF5b3V0LXMpe1xuICAgIFx0cGFkZGluZzogMCAxMyU7XG4gICAgfVxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGxheW91dC1tKXtcbiAgICBcdHBhZGRpbmc6IDAgOCU7XG4gICAgfVxufVxuXG4uZy1yb3d7XG5cdG92ZXJmbG93OiBoaWRkZW47XG5cdGxvc3QtZmxleC1jb250YWluZXI6IHJvdztcblx0Ji0td2l0aF9zaWRlYmFye1xuXHRcdGRpc3BsYXk6IGZsZXg7XG5cdFx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbi1yZXZlcnNlO1xuXHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQoJGxheW91dC1tICl7XG5cdFx0XHRqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG5cdFx0XHRmbGV4LWRpcmVjdGlvbjogcm93O1xuXHRcdH1cblx0fVxufVxuXG4uZy1jb2x7XG5cdCYtLTJ7XG5cdFx0bG9zdC1jb2x1bW46IDEyLzEyIDE7XG5cdFx0QGluY2x1ZGUgYnJlYWtwb2ludCgkbGF5b3V0LXMpe1xuXHRcdFx0bG9zdC1jb2x1bW46IDYvMTI7XG5cdFx0fVxuXHR9XG5cdCYtLTN7XG5cdFx0bG9zdC1jb2x1bW46IDEyLzEyIDE7XHRcblx0XHRAaW5jbHVkZSBicmVha3BvaW50KCRsYXlvdXQtcyl7XG5cdFx0XHRsb3N0LWNvbHVtbjogNC8xMjtcblx0XHR9XG5cdH1cblx0Ji0tMS0ze1xuXHRcdGxvc3QtY29sdW1uOiA0LzEyO1x0XG5cdH1cblx0Ji0tMi0ze1xuXHRcdGxvc3QtY29sdW1uOiA4LzEyO1x0XG5cdH1cbn0iLCIuaGVhZGVye1xuXHQmX19pbm5lcntcblx0XHRkaXNwbGF5OiBmbGV4O1xuXHRcdG92ZXJmbG93OiBoaWRkZW47XG5cdFx0anVzdGlmeS1jb250ZW50OnNwYWNlLWJldHdlZW47XG5cdFx0YWxpZ24taXRlbXM6Y2VudGVyO1xuXHRcdG1pbi1oZWlnaHQ6IDdyZW07XG5cdFx0cGFkZGluZzogLjRyZW0gMDtcblx0fVxufSIsIi5sb2dve1xuXHRtYXJnaW46IDA7XG5cdCYtLWhlYWRlcntcblx0XHRtYXJnaW46IDA7XG5cdFx0QGluY2x1ZGUgYnJlYWtwb2ludCgkbGF5b3V0LW0pe1xuXHRcdFx0bWF4LXdpZHRoOiBub25lICFpbXBvcnRhbnQ7XG5cdFx0XHRtYXgtaGVpZ2h0OiBub25lICFpbXBvcnRhbnQ7XG5cdFx0fVxuXHRcdCZfX2lubmVye1xuXHRcdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0XHQmLS1zdWJ0aXRsZXtcblx0XHRcdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0XHRcdGZvbnQtc2l6ZTogMS4xcmVtO1xuXHRcdFx0XHRtYXJnaW4tdG9wOiAxLjFyZW07XG5cdFx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQoJGxheW91dC1zKXtcblx0XHRcdFx0XHRmb250LXNpemU6IDEuMzdyZW07XG5cdFx0XHRcdFx0bWFyZ2luLXRvcDogMS4zN3JlbTtcblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdH1cblx0fVxuXHQmLS1mb290ZXJ7XG5cdFx0QGluY2x1ZGUgYnJlYWtwb2ludCgkbGF5b3V0LW0pe1xuXHRcdFx0bWF4LXdpZHRoOiBub25lICFpbXBvcnRhbnQ7XG5cdFx0XHRtYXgtaGVpZ2h0OiBub25lICFpbXBvcnRhbnQ7XG5cdFx0fVxuXHRcdCZfX2lubmVye1xuXHRcdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0fVxuXHR9XG59IiwiLm5hdi1tYWlue1xuXHRkaXNwbGF5OiBub25lO1xuXHR1bHtcblx0XHRsaXN0LXN0eWxlOiBub25lO1xuXHRcdG1hcmdpbjogMDtcblx0XHRwYWRkaW5nOiAwO1xuXHRcdGxpe1xuXHRcdFx0cGFkZGluZy1sZWZ0OjAuOHJlbTtcblx0XHRcdGRpc3BsYXk6IGlubGluZS1ibG9jaztcblx0XHRcdCYuY3VycmVudC1tZW51LWl0ZW0sXG5cdFx0XHQmLmN1cnJlbnQtcGFnZS1hbmNlc3Rvcntcblx0XHRcdFx0PiBhe1xuXHRcdFx0XHRcdGNvbG9yOiAkY29sb3JfYmFzZTtcblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdFx0YXtcblx0XHRcdFx0Zm9udC13ZWlnaHQ6IDgwMDtcblx0XHRcdH1cblx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQoJGxheW91dC1tKXtcblx0XHRcdFx0Zm9udC1zaXplOiAxLjI1cmVtO1xuXHRcdFx0XHRwYWRkaW5nLWxlZnQ6MS41cmVtO1xuXHRcdFx0fVxuXHRcdFx0PiB1bHtcblx0XHRcdFx0ZGlzcGxheTogbm9uZTtcblx0XHRcdH1cblx0XHR9XG5cdH1cblx0QGluY2x1ZGUgYnJlYWtwb2ludCgkbGF5b3V0LW1heC1tKXtcblx0XHQ+IHVse1xuXHRcdFx0PiBsaS5tZW51LWl0ZW0taGFzLWNoaWxkcmVue1xuXHRcdFx0XHQ+IGE6bGFzdC1vZi10eXBle1xuXHRcdFx0XHRcdGRpc3BsYXk6IG5vbmU7XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHR9XG5cdH1cblx0Lm5hdi1hcnJvd3tcblx0XHRjdXJzb3I6IHBvaW50ZXI7XG5cdFx0ZGlzcGxheTogbm9uZTtcblx0XHQmOmJlZm9yZXtcblx0XHRcdEBleHRlbmQgLmljb247XG5cdFx0XHRjb250ZW50OiAkaWNvbi0tYXJyb3ctY2lyY2xlLWRvd247XG5cdFx0fVxuXHR9XG5cdCYuaXMtYWN0aXZle1xuXHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQoJGxheW91dC1tYXgtbSl7XG5cdFx0XHRkaXNwbGF5OiBibG9jaztcblx0XHRcdHBvc2l0aW9uOiBmaXhlZDtcblx0XHRcdG92ZXJmbG93OiBzY3JvbGw7XG5cdFx0XHRsZWZ0OjA7XG5cdFx0XHR0b3A6IDA7XG5cdFx0XHRyaWdodDogMDtcblx0XHRcdGJvdHRvbTogMDtcblx0XHRcdHdpZHRoOiAxMDAlO1xuXHRcdFx0aGVpZ2h0OiAxMDAlO1xuXHRcdFx0YmFja2dyb3VuZDogJGNvbG9yX25ldXRyYWw7XG5cdFx0XHR6LWluZGV4OiAyNTtcblx0XHRcdHVse1xuXHRcdFx0XHRtYXJnaW46IDAgYXV0bztcblx0XHRcdFx0bWF4LXdpZHRoOiA1NzBweDtcblx0XHRcdFx0bGl7XG5cdFx0XHRcdFx0cGFkZGluZzogMDtcblx0XHRcdFx0XHRkaXNwbGF5OiBibG9jaztcblx0XHRcdFx0XHRib3JkZXItYm90dG9tIDogMXB4IHNvbGlkICRjb2xvcl9ncmV5XzE7XG5cdFx0XHRcdFx0YXtcblx0XHRcdFx0XHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdFx0XHRcdFx0cGFkZGluZzogMC41cmVtIDA7XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0XHQ+IHVse1xuXHRcdFx0XHRwYWRkaW5nOiAyMHB4O1xuXHRcdFx0XHQ+IGxpe1xuXHRcdFx0XHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0XHRcdFx0XHRwYWRkaW5nLWxlZnQ6IDM1cHg7XG5cdFx0XHRcdFx0Ji5pcy1hY3RpdmV7XG5cdFx0XHRcdFx0XHR1bHtcblx0XHRcdFx0XHRcdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0XHQubmF2LWFycm93e1xuXHRcdFx0XHRcdFx0XHRjb2xvcjogJGNvbG9yX2Jhc2U7XG5cdFx0XHRcdFx0XHRcdCY6dmlzaXRlZHtcblx0XHRcdFx0XHRcdFx0XHRjb2xvcjogJGNvbG9yX2Jhc2U7XG5cdFx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHRcdFx0KyBhe1xuXHRcdFx0XHRcdFx0XHRcdGNvbG9yOiAkY29sb3JfYmFzZTtcdFxuXHRcdFx0XHRcdFx0XHR9IFxuXHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdH1cblx0XHRcdFx0XHQ+IGF7XG5cdFx0XHRcdFx0XHRmb250LXNpemU6IDIwcHg7XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHRcdC5uYXYtYXJyb3d7XG5cdFx0XHRcdFx0XHRkaXNwbGF5OiBibG9jaztcblx0XHRcdFx0XHRcdGZvbnQtc2l6ZTogMjBweDtcblx0XHRcdFx0XHRcdGNvbG9yOiAkY29sb3JfcHJpbWFyeTtcblx0XHRcdFx0XHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0XHRcdFx0XHRcdCY6aG92ZXJ7XG5cdFx0XHRcdFx0XHRcdGNvbG9yOiAkY29sb3JfYmFzZTtcblx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHRcdCY6YmVmb3Jle1xuXHRcdFx0XHRcdFx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0XHRcdFx0XHRcdGxlZnQ6IC0zNXB4O1xuXHRcdFx0XHRcdFx0XHR0b3A6MTFweDtcblx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0dWx7XG5cdFx0XHRcdFx0XHRkaXNwbGF5OiBub25lO1xuXHRcdFx0XHRcdFx0bGl7XG5cdFx0XHRcdFx0XHRcdGJvcmRlci1ib3R0b206IDA7XG5cdFx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0XHQmLm5hdi1tYWluLS1zcGFjZXItdG9we1xuXHRcdFx0XHQ+dWx7XG5cdFxuXHRcdFx0XHRcdHBhZGRpbmc6IDEwMHB4IDIwcHggMjBweCAyMHB4O1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG5cdEBpbmNsdWRlIGJyZWFrcG9pbnQoJGxheW91dC1tKXtcblx0XHRkaXNwbGF5OiBibG9jaztcblx0fVxufVxuXG4uc2Vjb25kLWxldmVsLW1lbnV7XG5cdGRpc3BsYXk6IG5vbmU7XG5cdEBpbmNsdWRlIGJyZWFrcG9pbnQoJGxheW91dC1tKXtcblx0XHRkaXNwbGF5OiBibG9jaztcblx0fVxuXHR1bHtcblx0XHRsaXN0LXN0eWxlOiBub25lO1xuXHRcdG1hcmdpbjogMDtcblx0XHRwYWRkaW5nOiAwO1xuXHRcdGxpe1xuXHRcdFx0Ji5jdXJyZW50LW1lbnUtaXRlbXtcblx0XHRcdFx0PiBhe1xuXHRcdFx0XHRcdGNvbG9yOiAkY29sb3JfYmFzZTtcblx0XHRcdFx0XHRmb250LXdlaWdodDogODAwO1xuXHRcdFx0XHR9XG5cdFx0XHR9XHRcdFxuXHRcdH1cblx0XHRhe1xuXHRcdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0XHRwYWRkaW5nOiAwLjVyZW0gMDtcblx0XHRcdGJvcmRlci1ib3R0b20gOiAxcHggc29saWQgJGNvbG9yX2dyZXlfMTtcblx0XHR9XG5cdFx0PiBsaXtcblx0XHRcdGRpc3BsYXk6IG5vbmU7XG5cdFx0XHQmLmN1cnJlbnQtbWVudS1hbmNlc3Rvci5tZW51LWl0ZW0taGFzLWNoaWxkcmVuLFxuXHRcdFx0Ji5jdXJyZW50LW1lbnUtaXRlbS5tZW51LWl0ZW0taGFzLWNoaWxkcmVue1xuXHRcdFx0XHRkaXNwbGF5OiBibG9jaztcblx0XHRcdH1cblx0XHRcdD4gdWx7XG5cdFx0XHRcdD4gbGl7XG5cdFx0XHRcdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHR9XHRcdFxuXHR9XG59XG5cbi5uYXYtdHJpZ2dlcntcblx0cG9zaXRpb246IGZpeGVkO1xuXHR6LWluZGV4OiAzMDtcblx0cmlnaHQ6IDIwcHg7XG5cdGJvcmRlci1yYWRpdXM6IDUwJTtcblx0YmFja2dyb3VuZDogJGNvbG9yX3ByaW1hcnk7XG5cdGNvbG9yOiAkY29sb3JfbmV1dHJhbDtcblx0d2lkdGg6IDYwcHg7XG5cdGhlaWdodDogNjBweDtcblx0bGluZS1oZWlnaHQ6IDYwcHg7XG5cdGRpc3BsYXk6IGJsb2NrO1xuXHR0ZXh0LWFsaWduOiBjZW50ZXI7XG5cdGZvbnQtc2l6ZTogMTNweDtcblx0bGV0dGVyLXNwYWNpbmc6IDFweDtcblxuXHQmLS10b3B7XG5cdFx0dG9wOiAyMHB4O1xuXHR9XG5cblx0Ji0tYm90dG9te1xuXHRcdGJvdHRvbTogMjBweDtcblx0fVxuXG5cdD4gc3Bhbntcblx0XHRmb250LXNpemU6IDIwcHg7XG5cdFx0bGluZS1oZWlnaHQ6IDYwcHggIWltcG9ydGFudDtcblxuXHRcdCY6Zmlyc3Qtb2YtdHlwZXtcblx0XHRcdGRpc3BsYXk6IGlubGluZS1ibG9jaztcblx0XHR9XG5cdFx0JjpsYXN0LW9mLXR5cGV7XG5cdFx0XHRkaXNwbGF5OiBub25lXG5cdFx0fVxuXHR9XG5cdCYuaXMtYWN0aXZle1xuXHRcdD4gc3Bhbntcblx0XHRcdCY6Zmlyc3Qtb2YtdHlwZXtcblx0XHRcdFx0ZGlzcGxheTogbm9uZTtcblx0XHRcdH1cblx0XHRcdCY6bGFzdC1vZi10eXBle1xuXHRcdFx0XHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG5cdCY6aG92ZXJ7XG5cdFx0Y29sb3I6ICRjb2xvcl9uZXV0cmFsO1xuXHR9XG5cdCY6dmlzaXRlZHtcblx0XHRjb2xvcjogJGNvbG9yX25ldXRyYWw7XG5cdH1cblx0QGluY2x1ZGUgYnJlYWtwb2ludCgkbGF5b3V0LW0pe1xuXHRcdGRpc3BsYXk6IG5vbmU7XG5cdH1cbn0iLCIuZm9vdGVye1xuXHRwYWRkaW5nOiAycmVtIDA7XG5cdGJhY2tncm91bmQ6ICRjb2xvcl9zZWNvbmRhcnk7XG5cdG92ZXJmbG93OiBoaWRkZW47XG5cdCZfX2xvZ297XG5cdFx0QGluY2x1ZGUgYnJlYWtwb2ludCgkbGF5b3V0LXMpe1xuXHRcdFx0ZmxvYXQ6IHJpZ2h0O1xuXHRcdH1cblx0fVxuXHQmX19pbm5lcntcblx0XHRsb3N0LWZsZXgtY29udGFpbmVyOiByb3c7XG5cdH1cblx0Jl9fbGVmdHtcblx0XHRsb3N0LWNvbHVtbjogMTIvMTIgMTtcblx0XHRAaW5jbHVkZSBicmVha3BvaW50KCRsYXlvdXQtcyl7XG5cdFx0XHRsb3N0LWNvbHVtbjogOS8xMjtcblx0XHR9XG5cdH1cblx0Jl9fcmlnaHR7XG5cdFx0bWFyZ2luLXRvcDogMnJlbTtcblx0XHRsb3N0LWNvbHVtbjogMTIvMTIgMTtcblx0XHRAaW5jbHVkZSBicmVha3BvaW50KCRsYXlvdXQtcyl7XG5cdFx0XHRtYXJnaW4tdG9wOiAwO1xuXHRcdFx0bG9zdC1jb2x1bW46IDMvMTI7XG5cdFx0fVxuXHR9XG59IiwiLndpZGdldHN7XG5cdGxvc3QtZmxleC1jb250YWluZXI6IHJvdztcblx0QGV4dGVuZCAuZi1zbWFsbDtcbn1cblxuLndpZGdldHtcblx0bG9zdC1jb2x1bW46IDMvMyAxO1xuXHRtYXJnaW4tYm90dG9tOiAycmVtO1xuXHQmX190aXRsZXtcblx0XHRtYXJnaW4tdG9wOiAwO1xuXHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdHdoaXRlLXNwYWNlOiBub3dyYXA7XG5cdFx0dGV4dC1vdmVyZmxvdzplbGxpcHNpcztcblx0XHRvdmVyZmxvdzogaGlkZGVuO1xuXHR9XG5cdHVse1xuXHRcdEBleHRlbmQgJWJ1bGxldC1saXN0O1xuXHR9XG5cdD4gdWx7XG5cdFx0QGV4dGVuZCAlYXJyb3ctbGlzdDtcblx0fVxuXHRAaW5jbHVkZSBicmVha3BvaW50KCRsYXlvdXQtbSl7XG5cdFx0bG9zdC1jb2x1bW46IDEvMztcblx0XHRtYXJnaW4tYm90dG9tOiAwO1xuXHR9XG5cdCY6bGFzdC1jaGlsZHtcblx0XHRtYXJnaW4tYm90dG9tOiAwO1xuXHR9XG59IiwiLmhlcm97XG5cdHdpZHRoOjEwMCU7XG5cdGhlaWdodDo1MHZoO1xuXHRtaW4taGVpZ2h0OjIwcmVtO1xufSIsIi50ZWFzZS1wb3N0e1xuXHQmX190aXRsZXtcblx0XHRtYXJnaW4tdG9wOiAwO1xuXHR9XHRcblx0LnJlYWQtbW9yZXtcblx0XHRtYXJnaW4tdG9wOiAxcmVtO1xuXHRcdGRpc3BsYXk6IHRhYmxlO1xuXHRcdEBleHRlbmQgLmYtc21hbGw7XG5cdFx0JjphZnRlcntcblx0XHRcdGNvbnRlbnQ6ICdcXDIxOTInO1xuXHRcdFx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXHRcdFx0bWFyZ2luLWxlZnQ6IC4zcmVtO1xuXHRcdH1cblx0fVxufSIsIi5saXN0e1xuXHRtYXJnaW46IDA7XG5cdHBhZGRpbmc6IDA7XG5cdGxpc3Qtc3R5bGU6IG5vbmU7XG5cdCZfX2l0ZW17XG5cdFx0cGFkZGluZzogMnJlbSAwO1xuXHRcdGJvcmRlci10b3A6MXB4IHNvbGlkICRjb2xvcl9ncmV5XzE7XG5cdFx0JjpsYXN0LWNoaWxke1xuXHRcdFx0Ym9yZGVyLWJvdHRvbToxcHggc29saWQgJGNvbG9yX2dyZXlfMTtcblx0XHR9XG5cdH1cdFxufSIsIi53cC1ibG9jay1jb2x1bW4ge1xuICBpbWdbY2xhc3NePSd3cC1pbWFnZS0nXSxcbiAgaW1nW2NsYXNzKj0nIHdwLWltYWdlLSddIHtcbiAgICB3aWR0aDogYXV0byAhaW1wb3J0YW50O1xuICAgIGhlaWdodDogYXV0byAhaW1wb3J0YW50O1xuICB9XG4gIGgxLFxuICBoMixcbiAgaDMsXG4gIGg0LFxuICBoNSxcbiAgcCB7XG4gICAgJjpmaXJzdC1vZi10eXBlIHtcbiAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgfVxuICB9XG59XG4iLCIuZXZlbnRze1xuXHQmX19maWx0ZXJ7XG5cdFx0Jl9fbGlzdHtcblx0XHRcdGxpc3Qtc3R5bGU6IG5vbmU7XG5cdFx0XHRwYWRkaW5nOiAwO1xuXHRcdFx0bWFyZ2luLWJvdHRvbTogM3JlbTtcblx0XHRcdGxpe1xuXHRcdFx0XHRwYWRkaW5nOiAwO1xuXHRcdFx0XHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cdFx0XHRcdG1hcmdpbi1yaWdodDogMS41cmVtO1xuXHRcdFx0XHRtYXJnaW4tYm90dG9tOiAuNXJlbTtcblx0XHRcdFx0YXtcblx0XHRcdFx0XHQmLmlzLWFjdGl2ZXtcblx0XHRcdFx0XHRcdGNvbG9yOiAkY29sb3JfYmFzZTtcblx0XHRcdFx0XHRcdGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkY29sb3JfYmFzZTtcblx0XHRcdFx0XHR9XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHR9XG5cdH1cblx0Jl9fdGFibGV7XG5cdFx0QGV4dGVuZCAuZi1zbWFsbDtcblx0fVxufSIsIi5wYXNzd29yZC1mb3Jte1xuXHRpbnB1dFt0eXBlPVwicGFzc3dvcmRcIl17XG5cdFx0cGFkZGluZzogOHB4O1xuXHRcdGJvcmRlcjoxcHggc29saWQgJGNvbG9yX2dyZXlfMTtcblx0XHRsaW5lLWhlaWdodDogMTtcblx0XHRmb250LXNpemU6IGluaGVyaXQ7XG5cdFx0Jjpmb2N1c3tcblx0XHRcdG91dGxpbmU6bm9uZTtcblx0XHRcdGJvcmRlci1jb2xvcjokY29sb3JfYmFzZTtcblx0XHR9XG5cdH1cbn0iLCIuYW5jaG9yLW5hdntcblx0bWFyZ2luLWxlZnQ6IDA7XG5cdHBhZGRpbmc6IDA7XG5cdG1hcmdpbi10b3A6IDJyZW07XG5cdGxpc3Qtc3R5bGU6IG5vbmU7XG5cdGxpe1xuXHRcdGF7XG5cdFx0XHRwYWRkaW5nOiAwLjVyZW0gMDtcblx0XHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdFx0Ym9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRjb2xvcl9ncmV5XzE7XG5cdFx0fVxuXHR9XG59IiwiYXJ0aWNsZXtcbiAgICAud3AtYmxvY2stcXVlcnl7XG4gICAgICAgICYudHdvLWNvbHVtbnMtbGF5b3V0e1xuICAgICAgICAgICAgbGl7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMS4yNWVtO1xuICAgICAgICAgICAgICAgIC53cC1ibG9jay1wb3N0LWZlYXR1cmVkLWltYWdlIHtcbiAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZy10b3A6IDY1JTtcblxuICAgICAgICAgICAgICAgICAgICBpbWd7XG4gICAgICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICAgICAgICAgICAgICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBoMntcbiAgICAgICAgICAgICAgICAgICAgJi53cC1ibG9jay1wb3N0LXRpdGxle1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDowLjVlbTtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206MC41ZW07XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICB3aWR0aDogY2FsYygoMTAwJSAvIDIpIC0gMS4yNWVtICsgKDEuMjVlbSAvIDIpKTtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRsYXlvdXQtbWF4LW0pe1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTsgXG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgLndwLWJsb2NrLXBvc3QtZGF0ZXtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMC41cmVtO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAud3AtYmxvY2stcG9zdC1leGNlcnB0e1xuICAgICAgICAgICAgICAgICAgICBwe21hcmdpbi10b3A6IDA7fVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLndwLWJsb2NrLXBvc3QtZXhjZXJwdHtcbiAgICAgICAgICAgICAgICBwe21hcmdpbi10b3A6IDA7fVxuICAgICAgICAgICAgICAgIC53cC1ibG9jay1wb3N0LWV4Y2VycHRfX21vcmUtdGV4dHtcbiAgICAgICAgICAgICAgICAgICAgYXtcbiAgICAgICAgICAgICAgICAgICAgICAgICYud3AtYmxvY2stcG9zdC1leGNlcnB0X19tb3JlLWxpbmt7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgQGV4dGVuZCAuaWNvbi0tY2hldnJvbjtcblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDAuNXJlbTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBtaW4td2lkdGg6IDVyZW07XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgJjo6YWZ0ZXJ7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDVyZW07XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodDogMnB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBib3R0b206IDA7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAuaXMtZmxleC1jb250YWluZXIuY29sdW1ucy0ye1xuICAgICAgICAgICAgICAgIGdhcDowO1xuICAgICAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICYuaG9yaXpvbnRhbC1sYXlvdXR7XG4gICAgICAgICAgICBsaXtcbiAgICAgICAgICAgICAgICAmOmZpcnN0LWNoaWxke1xuICAgICAgICAgICAgICAgICAgICBoci53cC1ibG9jay1zZXBhcmF0b3J7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIGhyLndwLWJsb2NrLXNlcGFyYXRvcntcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMnJlbTtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMnJlbTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgJj4ud3AtYmxvY2stY29sdW1uc3tcbiAgICAgICAgICAgICAgICAgICAgZmxleC13cmFwOiBub3dyYXAgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgICAgICAgICAgICAgZ2FwOiAwO1xuICAgICAgICAgICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgICAgICAgICAgICAgICAgIC53cC1ibG9jay1jb2x1bW57XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgLy8gb3ZlcndyaXRlIHdwIG1lZGlhIHF1ZXJ5XG4gICAgICAgICAgICAgICAgICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogNzgxcHgpe1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICY6bnRoLWNoaWxkKDEpe1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmbGV4LWJhc2lzOiAzMy4zMyUgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgJjpudGgtY2hpbGQoMil7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZsZXgtYmFzaXM6IDY2LjY2JSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBoMntcbiAgICAgICAgICAgICAgICAgICAgJi53cC1ibG9jay1wb3N0LXRpdGxle1xuICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxLjQ1cmVtO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIC53cC1ibG9jay1wb3N0LWZlYXR1cmVkLWltYWdlIHtcbiAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZy10b3A6IDcwJTtcblxuICAgICAgICAgICAgICAgICAgICBpbWd7XG4gICAgICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICAgICAgICAgICAgICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAud3AtYmxvY2stcG9zdC1leGNlcnB0X19tb3JlLXRleHR7XG4gICAgICAgICAgICAgICAgICAgIGF7XG4gICAgICAgICAgICAgICAgICAgICAgICAmLndwLWJsb2NrLXBvc3QtZXhjZXJwdF9fbW9yZS1saW5re1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICY6OmFmdGVye1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb250ZW50OiAnXFwyMTkyJztcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogMC4zcmVtO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgLndwLWJsb2NrLXF1ZXJ5LXBhZ2luYXRpb257XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiA0MHB4O1xuICAgICAgICB9XG4gICAgfVxufSIsIi53cC1ibG9jay1lZWRlZS1ibG9jay1ndXRlbnNsaWRlcntcbiAgICAuc2xpZGUtY29udGVudHtcbiAgICAgICAgLndwLWJsb2NrLWJ1dHRvbnN7XG4gICAgICAgICAgICAud3AtYmxvY2stYnV0dG9ue1xuICAgICAgICAgICAgICAgICZfX2xpbmt7XG4gICAgICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufSIsIi53cC1ibG9jay1jb2x1bW5zIHtcbiAgLndwLWJsb2NrLWNvbHVtbiB7XG4gICAgLndwLWJsb2NrLWltYWdlIGltZyB7XG4gICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICB9XG4gIH1cbn1cbi53cC1ibG9jay1pbWFnZSBpbWcge1xuICBoZWlnaHQ6IGF1dG87XG4gIHdpZHRoOiBhdXRvO1xufSIsIi53cC1ibG9jayB7XG4gICAgJi1jb2x1bW4ge1xuICAgICAgJjpub3QoOmxhc3QtY2hpbGQpIHtcbiAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkbGF5b3V0LXMpe1xuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAxLjUlO1xuICAgICAgICAgIH1cbiAgICAgIH1cbiAgICAgICY6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkbGF5b3V0LXMpe1xuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAxLjUlO1xuICAgICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgIiwiLnBzd3AtaXRlbSB7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cblxuJHBzd3BfX2JhY2tncm91bmQtY29sb3I6ICRjb2xvcl9uZXV0cmFsO1xuJHBzd3BfX2Fzc2V0cy1wYXRoOiBcIi4uLy4uLy4uL2ltYWdlcy9waG90b3N3aXBlL1wiO1xuXG5AaW1wb3J0IFwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL3Bob3Rvc3dpcGUvc3JjL2Nzcy9tYWluXCI7XG5AaW1wb3J0IFwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL3Bob3Rvc3dpcGUvc3JjL2Nzcy9kZWZhdWx0LXNraW4vZGVmYXVsdC1za2luLnNjc3NcIjtcblxuLnBzd3BfX2J1dHRvbi0tYXJyb3ctLWxlZnQ6YmVmb3JlLFxuLnBzd3BfX2J1dHRvbi0tYXJyb3ctLXJpZ2h0OmJlZm9yZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICRjb2xvcl9uZXV0cmFsO1xufVxuXG4ucHN3cF9fdWkge1xuICAucHN3cF9fdG9wLWJhcixcbiAgLnBzd3BfX2NhcHRpb24ge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvcl9uZXV0cmFsO1xuICB9XG59XG5cbi5wc3dwX19jb3VudGVyIHtcbiAgY29sb3I6ICRjb2xvcl9iYXNlO1xufVxuXG4ucHN3cF9faW1nLS1wbGFjZWhvbGRlci0tYmxhbmsge1xuICBiYWNrZ3JvdW5kOiAkY29sb3JfbmV1dHJhbDtcbn1cblxuLnBzd3BfX2NhcHRpb25fX2NlbnRlciB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgY29sb3I6ICRjb2xvcl9iYXNlO1xufVxuXG4ucHN3cF9faXRlbV9fdmlkZW8ge1xuICBoZWlnaHQ6IGNhbGMoMTAwJSAtIDQwcHggLSA0NHB4KTtcbiAgbWFyZ2luLXRvcDogNDRweDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICZfX2lubmVyIHtcbiAgICAvL3Bvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBtYXgtd2lkdGg6IDEwMjRweDtcbiAgICB3aWR0aDogMTAyNHB4O1xuICAgICZfX2lubmVyIHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgcGFkZGluZy1ib3R0b206IDU2LjI1JTtcbiAgICAgIGlmcmFtZSB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLyohIFBob3RvU3dpcGUgbWFpbiBDU1MgYnkgRG1pdHJ5IFNlbWVub3YgfCBwaG90b3N3aXBlLmNvbSB8IE1JVCBsaWNlbnNlICovXG5cbi8qXG5cdFN0eWxlcyBmb3IgYmFzaWMgUGhvdG9Td2lwZSBmdW5jdGlvbmFsaXR5IChzbGlkaW5nIGFyZWEsIG9wZW4vY2xvc2UgdHJhbnNpdGlvbnMpXG4qL1xuXG4vLyBQaG90b1N3aXBlIHVzZXMgQXV0b3ByZWZpeGVyLCBzbyB2ZW5kb3IgcHJlZml4ZWQgYXJlIGFkZGVkIGF1dG9tYXRpY2FsbHkgd2hlbiBuZWVkZWQuXG5cbkBpbXBvcnQgXCJtYWluLXNldHRpbmdzXCI7XG5cbiBcbi8qIHBzd3AgPSBwaG90b3N3aXBlICovXG4ucHN3cCB7XG5cdGRpc3BsYXk6IG5vbmU7XG5cdHBvc2l0aW9uOmFic29sdXRlO1xuXHR3aWR0aDogMTAwJTtcblx0aGVpZ2h0OiAxMDAlO1xuXHRsZWZ0OjA7XG5cdHRvcDowO1xuXHRvdmVyZmxvdzogaGlkZGVuO1xuXHQtbXMtdG91Y2gtYWN0aW9uOiBub25lO1xuXHR0b3VjaC1hY3Rpb246IG5vbmU7XG5cdHotaW5kZXg6ICRwc3dwX19yb290LXotaW5kZXg7XG5cdC13ZWJraXQtdGV4dC1zaXplLWFkanVzdDogMTAwJTtcblx0LyogY3JlYXRlIHNlcGFyYXRlIGxheWVyLCB0byBhdm9pZCBwYWludCBvbiB3aW5kb3cub25zY3JvbGwgaW4gd2Via2l0L2JsaW5rICovXG5cdC13ZWJraXQtYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuXHRvdXRsaW5lOiBub25lO1xuXG5cdEBpZiAkcHN3cF9fYm94LXNpemluZy1ib3JkZXItYm94ID09IHRydWUge1xuXHRcdCoge1xuXHRcdFx0Ym94LXNpemluZzogYm9yZGVyLWJveDtcblx0XHR9XG5cdH1cblx0XG5cdGltZyB7XG5cdFx0bWF4LXdpZHRoOiBub25lO1xuXHR9XG59XG5cbi8qIHN0eWxlIGlzIGFkZGVkIHdoZW4gSlMgb3B0aW9uIHNob3dIaWRlT3BhY2l0eSBpcyBzZXQgdG8gdHJ1ZSAqL1xuLnBzd3AtLWFuaW1hdGVfb3BhY2l0eSB7XG5cdC8qIDAuMDAxLCBiZWNhdXNlIG9wYWNpdHk6MCBkb2Vzbid0IHRyaWdnZXIgUGFpbnQgYWN0aW9uLCB3aGljaCBjYXVzZXMgbGFnIGF0IHN0YXJ0IG9mIHRyYW5zaXRpb24gKi9cblx0b3BhY2l0eTogMC4wMDE7XG5cdHdpbGwtY2hhbmdlOm9wYWNpdHk7XG5cdC8qIGZvciBvcGVuL2Nsb3NlIHRyYW5zaXRpb24gKi9cblx0dHJhbnNpdGlvbjogb3BhY2l0eSAkcHN3cF9fc2hvdy1oaWRlLXRyYW5zaXRpb24tZHVyYXRpb24gY3ViaWMtYmV6aWVyKC40LDAsLjIyLDEpO1xufVxuXG4ucHN3cC0tb3BlbiB7XG5cdGRpc3BsYXk6IGJsb2NrO1xufVxuXG4ucHN3cC0tem9vbS1hbGxvd2VkIC5wc3dwX19pbWcge1xuXHQvKiBhdXRvcHJlZml4ZXI6IG9mZiAqL1xuXHRjdXJzb3I6IC13ZWJraXQtem9vbS1pbjtcblx0Y3Vyc29yOiAtbW96LXpvb20taW47XG5cdGN1cnNvcjogem9vbS1pbjtcbn1cblxuLnBzd3AtLXpvb21lZC1pbiAucHN3cF9faW1nIHtcblx0LyogYXV0b3ByZWZpeGVyOiBvZmYgKi9cblx0Y3Vyc29yOiAtd2Via2l0LWdyYWI7XG5cdGN1cnNvcjogLW1vei1ncmFiO1xuXHRjdXJzb3I6IGdyYWI7XG59XG5cbi5wc3dwLS1kcmFnZ2luZyAgLnBzd3BfX2ltZyB7XG5cdC8qIGF1dG9wcmVmaXhlcjogb2ZmICovXG5cdGN1cnNvcjogLXdlYmtpdC1ncmFiYmluZztcblx0Y3Vyc29yOiAtbW96LWdyYWJiaW5nO1xuXHRjdXJzb3I6IGdyYWJiaW5nO1xufVxuXG4vKlxuXHRCYWNrZ3JvdW5kIGlzIGFkZGVkIGFzIGEgc2VwYXJhdGUgZWxlbWVudC5cblx0QXMgYW5pbWF0aW5nIG9wYWNpdHkgaXMgbXVjaCBmYXN0ZXIgdGhhbiBhbmltYXRpbmcgcmdiYSgpIGJhY2tncm91bmQtY29sb3IuXG4qL1xuLnBzd3BfX2JnIHtcblx0cG9zaXRpb246IGFic29sdXRlO1xuXHRsZWZ0OiAwO1xuXHR0b3A6IDA7XG5cdHdpZHRoOiAxMDAlO1xuXHRoZWlnaHQ6IDEwMCU7XG5cdGJhY2tncm91bmQ6ICRwc3dwX19iYWNrZ3JvdW5kLWNvbG9yO1xuXHRvcGFjaXR5OiAwO1xuXHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7XG5cdC13ZWJraXQtYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuXHR3aWxsLWNoYW5nZTpvcGFjaXR5O1xufVxuXG4ucHN3cF9fc2Nyb2xsLXdyYXAge1xuXHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdGxlZnQ6IDA7XG5cdHRvcDogMDtcblx0d2lkdGg6IDEwMCU7XG5cdGhlaWdodDogMTAwJTtcblx0b3ZlcmZsb3c6aGlkZGVuO1xufVxuXG4ucHN3cF9fY29udGFpbmVyLFxuLnBzd3BfX3pvb20td3JhcCB7XG5cdC1tcy10b3VjaC1hY3Rpb246IG5vbmU7IFxuXHR0b3VjaC1hY3Rpb246IG5vbmU7XG5cdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0bGVmdDogMDtcblx0cmlnaHQ6IDA7XG5cdHRvcDogMDtcblx0Ym90dG9tOiAwO1xufVxuXG4vKiBQcmV2ZW50IHNlbGVjdGlvbiBhbmQgdGFwIGhpZ2hsaWdodHMgKi9cbi5wc3dwX19jb250YWluZXIsXG4ucHN3cF9faW1nIHtcblx0LXdlYmtpdC11c2VyLXNlbGVjdDogbm9uZTtcblx0LW1vei11c2VyLXNlbGVjdDogbm9uZTtcblx0dXNlci1zZWxlY3Q6IG5vbmU7XG5cdC13ZWJraXQtdGFwLWhpZ2hsaWdodC1jb2xvcjogcmdiYSgwLDAsMCwwKTtcblx0LXdlYmtpdC10b3VjaC1jYWxsb3V0OiBub25lO1xufVxuXG4ucHN3cF9fem9vbS13cmFwIHtcblx0cG9zaXRpb246IGFic29sdXRlO1xuXHR3aWR0aDogMTAwJTtcblx0LXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0IHRvcDtcblx0LW1vei10cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0IHRvcDtcblx0LW1zLXRyYW5zZm9ybS1vcmlnaW46IGxlZnQgdG9wO1xuXHR0cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0IHRvcDtcblx0LyogZm9yIG9wZW4vY2xvc2UgdHJhbnNpdGlvbiAqL1xuXHR0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gJHBzd3BfX3Nob3ctaGlkZS10cmFuc2l0aW9uLWR1cmF0aW9uIGN1YmljLWJlemllciguNCwwLC4yMiwxKTtcbn1cblxuLnBzd3BfX2JnIHtcblx0d2lsbC1jaGFuZ2U6IG9wYWNpdHk7XG5cdC8qIGZvciBvcGVuL2Nsb3NlIHRyYW5zaXRpb24gKi9cblx0dHJhbnNpdGlvbjogb3BhY2l0eSAkcHN3cF9fc2hvdy1oaWRlLXRyYW5zaXRpb24tZHVyYXRpb24gY3ViaWMtYmV6aWVyKC40LDAsLjIyLDEpO1xufVxuXG4ucHN3cC0tYW5pbWF0ZWQtaW4ge1xuXHQucHN3cF9fYmcsXG5cdC5wc3dwX196b29tLXdyYXAge1xuXHRcdC13ZWJraXQtdHJhbnNpdGlvbjogbm9uZTtcblx0XHR0cmFuc2l0aW9uOiBub25lO1xuXHR9XG59XG5cbi5wc3dwX19jb250YWluZXIsXG4ucHN3cF9fem9vbS13cmFwIHtcblx0LXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG59XG5cbi5wc3dwX19pdGVtIHtcblx0cG9zaXRpb246IGFic29sdXRlO1xuXHRsZWZ0OiAwO1xuXHRyaWdodDogMDtcblx0dG9wOiAwO1xuXHRib3R0b206IDA7XG5cdG92ZXJmbG93OiBoaWRkZW47XG59XG5cbi5wc3dwX19pbWcge1xuXHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdHdpZHRoOiBhdXRvO1xuXHRoZWlnaHQ6IGF1dG87XG5cdHRvcDogMDtcblx0bGVmdDogMDtcbn1cblxuLypcblx0c3RyZXRjaGVkIHRodW1ibmFpbCBvciBkaXYgcGxhY2Vob2xkZXIgZWxlbWVudCAoc2VlIGJlbG93KVxuXHRzdHlsZSBpcyBhZGRlZCB0byBhdm9pZCBmbGlja2VyaW5nIGluIHdlYmtpdC9ibGluayB3aGVuIGxheWVycyBvdmVybGFwXG4qL1xuLnBzd3BfX2ltZy0tcGxhY2Vob2xkZXIge1xuXHQtd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbn1cblxuLypcblx0ZGl2IGVsZW1lbnQgdGhhdCBtYXRjaGVzIHNpemUgb2YgbGFyZ2UgaW1hZ2Vcblx0bGFyZ2UgaW1hZ2UgbG9hZHMgb24gdG9wIG9mIGl0XG4qL1xuLnBzd3BfX2ltZy0tcGxhY2Vob2xkZXItLWJsYW5rIHtcblx0YmFja2dyb3VuZDogJHBzd3BfX3BsYWNlaG9sZGVyLWNvbG9yO1xufVxuXG4ucHN3cC0taWUgLnBzd3BfX2ltZyB7XG5cdHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG5cdGhlaWdodDogYXV0byAhaW1wb3J0YW50O1xuXHRsZWZ0OiAwO1xuXHR0b3A6IDA7XG59XG5cbi8qXG5cdEVycm9yIG1lc3NhZ2UgYXBwZWFycyB3aGVuIGltYWdlIGlzIG5vdCBsb2FkZWRcblx0KEpTIG9wdGlvbiBlcnJvck1zZyBjb250cm9scyBtYXJrdXApXG4qL1xuLnBzd3BfX2Vycm9yLW1zZyB7XG5cdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0bGVmdDogMDtcblx0dG9wOiA1MCU7XG5cdHdpZHRoOiAxMDAlO1xuXHR0ZXh0LWFsaWduOiBjZW50ZXI7XG5cdGZvbnQtc2l6ZTogMTRweDtcblx0bGluZS1oZWlnaHQ6IDE2cHg7XG5cdG1hcmdpbi10b3A6IC04cHg7XG5cdGNvbG9yOiAkcHN3cF9fZXJyb3ItdGV4dC1jb2xvcjtcbn1cblxuLnBzd3BfX2Vycm9yLW1zZyBhIHtcblx0Y29sb3I6ICRwc3dwX19lcnJvci10ZXh0LWNvbG9yO1xuXHR0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbn1cbiIsIiRwc3dwX19zaG93LWhpZGUtdHJhbnNpdGlvbi1kdXJhdGlvbjogMzMzbXMgIWRlZmF1bHQ7XG4kcHN3cF9fY29udHJvbHMtdHJhbnNpdGlvbi1kdXJhdGlvbjogMzMzbXMgIWRlZmF1bHQ7XG4kcHN3cF9fYmFja2dyb3VuZC1jb2xvcjogIzAwMCAhZGVmYXVsdDtcbiRwc3dwX19wbGFjZWhvbGRlci1jb2xvcjogIzIyMiAhZGVmYXVsdDtcbiRwc3dwX19ib3gtc2l6aW5nLWJvcmRlci1ib3g6IHRydWUgIWRlZmF1bHQ7IC8vIGRpc2FibGUgLnBzd3AgKiB7IGJveC1zaXppbmc6Ym9yZGVyLWJveCB9IChpbiBjYXNlIHlvdSBhbHJlYWR5IGhhdmUgaXQgaW4geW91ciBzaXRlIGNzcylcbiRwc3dwX19yb290LXotaW5kZXg6IDE1MDAgIWRlZmF1bHQ7XG4kcHN3cF9fYXNzZXRzLXBhdGg6ICcnICFkZWZhdWx0OyAvLyBwYXRoIHRvIHNraW4gYXNzZXRzIGZvbGRlciAocHJlbG9hZGVyLCBQTkcgYW5kIFNWRyBzcHJpdGUpXG4kcHN3cF9fZXJyb3ItdGV4dC1jb2xvcjogI0NDQyAhZGVmYXVsdDsgLy8gXCJJbWFnZSBub3QgbG9hZGVkXCIgdGV4dCBjb2xvclxuJHBzd3BfX2luY2x1ZGUtbWluaW1hbC1zdHlsZTogdHJ1ZSAhZGVmYXVsdDsiLCIvKiEgUGhvdG9Td2lwZSBEZWZhdWx0IFVJIENTUyBieSBEbWl0cnkgU2VtZW5vdiB8IHBob3Rvc3dpcGUuY29tIHwgTUlUIGxpY2Vuc2UgKi9cblxuLypcblxuXHRDb250ZW50czpcblxuXHQxLiBCdXR0b25zXG5cdDIuIFNoYXJlIG1vZGFsIGFuZCBsaW5rc1xuXHQzLiBJbmRleCBpbmRpY2F0b3IgKFwiMSBvZiBYXCIgY291bnRlcilcblx0NC4gQ2FwdGlvblxuXHQ1LiBMb2FkaW5nIGluZGljYXRvclxuXHQ2LiBBZGRpdGlvbmFsIHN0eWxlcyAocm9vdCBlbGVtZW50LCB0b3AgYmFyLCBpZGxlIHN0YXRlLCBoaWRkZW4gc3RhdGUsIGV0Yy4pXG5cbiovXG5cbi8vIFBob3RvU3dpcGUgdXNlcyBBdXRvcHJlZml4ZXIsIHNvIHZlbmRvciBwcmVmaXhlZCBhcmUgYWRkZWQgYXV0b21hdGljYWxseSB3aGVuIG5lZWRlZC5cblxuXG5cbkBpbXBvcnQgXCIuLi9tYWluLXNldHRpbmdzXCI7XG5cblxuLypcblx0XG5cdDEuIEJ1dHRvbnNcblxuICovXG5cbi8qIDxidXR0b24+IGNzcyByZXNldCAqL1xuLnBzd3BfX2J1dHRvbiB7XG5cdHdpZHRoOiA0NHB4O1xuXHRoZWlnaHQ6IDQ0cHg7XG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0YmFja2dyb3VuZDogbm9uZTtcblx0Y3Vyc29yOiBwb2ludGVyO1xuXHRvdmVyZmxvdzogdmlzaWJsZTtcblx0LXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xuXHRkaXNwbGF5OiBibG9jaztcblx0Ym9yZGVyOiAwO1xuXHRwYWRkaW5nOiAwO1xuXHRtYXJnaW46IDA7XG5cdGZsb2F0OiByaWdodDtcblx0b3BhY2l0eTogMC43NTtcblx0dHJhbnNpdGlvbjogb3BhY2l0eSAwLjJzO1xuXHRib3gtc2hhZG93OiBub25lO1xuXG5cdCY6Zm9jdXMsXG5cdCY6aG92ZXIge1xuXHRcdG9wYWNpdHk6IDE7XG5cdH1cblx0XG5cdCY6YWN0aXZlIHtcblx0XHRvdXRsaW5lOiBub25lO1xuXHRcdG9wYWNpdHk6IDAuOTtcblx0fVxuXG5cdCY6Oi1tb3otZm9jdXMtaW5uZXIge1xuXHRcdHBhZGRpbmc6IDA7XG5cdFx0Ym9yZGVyOiAwXG5cdH1cbn1cblxuLyogcHN3cF9fdWktLW92ZXItY2xvc2UgY2xhc3MgaXQgYWRkZWQgd2hlbiBtb3VzZSBpcyBvdmVyIGVsZW1lbnQgdGhhdCBzaG91bGQgY2xvc2UgZ2FsbGVyeSAqL1xuLnBzd3BfX3VpLS1vdmVyLWNsb3NlIC5wc3dwX19idXR0b24tLWNsb3NlIHtcblx0b3BhY2l0eTogMTtcbn1cblxuLnBzd3BfX2J1dHRvbixcbi5wc3dwX19idXR0b24tLWFycm93LS1sZWZ0OmJlZm9yZSxcbi5wc3dwX19idXR0b24tLWFycm93LS1yaWdodDpiZWZvcmUge1xuXHRiYWNrZ3JvdW5kOiB1cmwoI3skcHN3cF9fYXNzZXRzLXBhdGh9ZGVmYXVsdC1za2luLnBuZykgMCAwIG5vLXJlcGVhdDtcblx0YmFja2dyb3VuZC1zaXplOiAyNjRweCA4OHB4O1xuXHR3aWR0aDogNDRweDtcblx0aGVpZ2h0OiA0NHB4O1xufVxuXG5AbWVkaWEgKC13ZWJraXQtbWluLWRldmljZS1waXhlbC1yYXRpbzogMS4xKSwgIChtaW4tcmVzb2x1dGlvbjogMTA1ZHBpKSwgKG1pbi1yZXNvbHV0aW9uOiAxLjFkcHB4KSB7XG5cblx0LyogU2VydmUgU1ZHIHNwcml0ZSBpZiBicm93c2VyIHN1cHBvcnRzIFNWRyBhbmQgcmVzb2x1dGlvbiBpcyBtb3JlIHRoYW4gMTA1ZHBpICovXG4gICAgLnBzd3AtLXN2ZyAucHN3cF9fYnV0dG9uLFxuICAgIC5wc3dwLS1zdmcgLnBzd3BfX2J1dHRvbi0tYXJyb3ctLWxlZnQ6YmVmb3JlLFxuXHQucHN3cC0tc3ZnIC5wc3dwX19idXR0b24tLWFycm93LS1yaWdodDpiZWZvcmUge1xuICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoI3skcHN3cF9fYXNzZXRzLXBhdGh9ZGVmYXVsdC1za2luLnN2Zyk7XG4gICAgfVxuXG4gICAgLnBzd3AtLXN2ZyAucHN3cF9fYnV0dG9uLS1hcnJvdy0tbGVmdCxcblx0LnBzd3AtLXN2ZyAucHN3cF9fYnV0dG9uLS1hcnJvdy0tcmlnaHQge1xuXHRcdGJhY2tncm91bmQ6IG5vbmU7XG5cdH1cbn1cblxuLnBzd3BfX2J1dHRvbi0tY2xvc2Uge1xuXHRiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIC00NHB4O1xufVxuXG4ucHN3cF9fYnV0dG9uLS1zaGFyZSB7XG5cdGJhY2tncm91bmQtcG9zaXRpb246IC00NHB4IC00NHB4O1xufVxuXG4ucHN3cF9fYnV0dG9uLS1mcyB7XG5cdGRpc3BsYXk6IG5vbmU7XG59XG5cbi5wc3dwLS1zdXBwb3J0cy1mcyAucHN3cF9fYnV0dG9uLS1mcyB7XG5cdGRpc3BsYXk6IGJsb2NrO1xufVxuXG4ucHN3cC0tZnMgLnBzd3BfX2J1dHRvbi0tZnMge1xuXHRiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNDRweCAwO1xufVxuXG4ucHN3cF9fYnV0dG9uLS16b29tIHtcblx0ZGlzcGxheTogbm9uZTtcblx0YmFja2dyb3VuZC1wb3NpdGlvbjogLTg4cHggMDtcbn1cblxuLnBzd3AtLXpvb20tYWxsb3dlZCAucHN3cF9fYnV0dG9uLS16b29tIHtcblx0ZGlzcGxheTogYmxvY2s7XG59XG5cbi5wc3dwLS16b29tZWQtaW4gLnBzd3BfX2J1dHRvbi0tem9vbSB7XG5cdGJhY2tncm91bmQtcG9zaXRpb246IC0xMzJweCAwO1xufVxuXG4vKiBubyBhcnJvd3Mgb24gdG91Y2ggc2NyZWVucyAqL1xuLnBzd3AtLXRvdWNoIHtcblx0LnBzd3BfX2J1dHRvbi0tYXJyb3ctLWxlZnQsXG5cdC5wc3dwX19idXR0b24tLWFycm93LS1yaWdodCB7XG5cdFx0dmlzaWJpbGl0eTogaGlkZGVuO1x0XHRcblx0fVxufVxuXG4vKlxuXHRBcnJvdyBidXR0b25zIGhpdCBhcmVhXG5cdChpY29uIGlzIGFkZGVkIHRvIDpiZWZvcmUgcHNldWRvLWVsZW1lbnQpXG4qL1xuLnBzd3BfX2J1dHRvbi0tYXJyb3ctLWxlZnQsXG4ucHN3cF9fYnV0dG9uLS1hcnJvdy0tcmlnaHQge1xuXHRiYWNrZ3JvdW5kOiBub25lO1xuXHR0b3A6IDUwJTtcblx0bWFyZ2luLXRvcDogLTUwcHg7XG5cdHdpZHRoOiA3MHB4O1xuXHRoZWlnaHQ6IDEwMHB4O1xuXHRwb3NpdGlvbjogYWJzb2x1dGU7XG59XG5cbi5wc3dwX19idXR0b24tLWFycm93LS1sZWZ0IHtcblx0bGVmdDogMDtcbn1cblxuLnBzd3BfX2J1dHRvbi0tYXJyb3ctLXJpZ2h0IHtcblx0cmlnaHQ6IDA7XG59XG5cbi5wc3dwX19idXR0b24tLWFycm93LS1sZWZ0OmJlZm9yZSxcbi5wc3dwX19idXR0b24tLWFycm93LS1yaWdodDpiZWZvcmUge1xuXHRjb250ZW50OiAnJztcblx0dG9wOiAzNXB4O1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsMCwwLDAuMyk7XG5cdGhlaWdodDogMzBweDtcblx0d2lkdGg6IDMycHg7XG5cdHBvc2l0aW9uOiBhYnNvbHV0ZTtcbn1cblxuLnBzd3BfX2J1dHRvbi0tYXJyb3ctLWxlZnQ6YmVmb3JlIHtcblx0bGVmdDogNnB4O1xuXHRiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTM4cHggLTQ0cHg7XG59XG5cbi5wc3dwX19idXR0b24tLWFycm93LS1yaWdodDpiZWZvcmUge1xuXHRyaWdodDogNnB4O1xuXHRiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtOTRweCAtNDRweDtcbn1cblxuXG4vKlxuXG5cdDIuIFNoYXJlIG1vZGFsL3BvcHVwIGFuZCBsaW5rc1xuXG4gKi9cblxuLnBzd3BfX2NvdW50ZXIsXG4ucHN3cF9fc2hhcmUtbW9kYWwge1xuXHQtd2Via2l0LXVzZXItc2VsZWN0OiBub25lO1xuXHQtbW96LXVzZXItc2VsZWN0OiBub25lO1xuXHR1c2VyLXNlbGVjdDogbm9uZTtcbn1cblxuLnBzd3BfX3NoYXJlLW1vZGFsIHtcblx0ZGlzcGxheTogYmxvY2s7XG5cdGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgMC41KTtcblx0d2lkdGg6IDEwMCU7XG5cdGhlaWdodDogMTAwJTtcblx0dG9wOiAwO1xuXHRsZWZ0OiAwO1xuXHRwYWRkaW5nOiAxMHB4O1xuXHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdHotaW5kZXg6ICRwc3dwX19yb290LXotaW5kZXggKyAxMDA7XG5cdG9wYWNpdHk6IDA7XG5cdHRyYW5zaXRpb246IG9wYWNpdHkgMC4yNXMgZWFzZS1vdXQ7XG5cdC13ZWJraXQtYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuXHR3aWxsLWNoYW5nZTogb3BhY2l0eTtcbn1cblxuLnBzd3BfX3NoYXJlLW1vZGFsLS1oaWRkZW4ge1xuXHRkaXNwbGF5OiBub25lO1xufVxuXG4ucHN3cF9fc2hhcmUtdG9vbHRpcCB7XG5cdHotaW5kZXg6ICRwc3dwX19yb290LXotaW5kZXggKyAxMjA7XG5cdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0YmFja2dyb3VuZDogI0ZGRjtcblx0dG9wOiA1NnB4O1xuXHRib3JkZXItcmFkaXVzOiAycHg7XG5cdGRpc3BsYXk6IGJsb2NrO1xuXHR3aWR0aDogYXV0bztcblx0cmlnaHQ6IDQ0cHg7XG5cdGJveC1zaGFkb3c6IDAgMnB4IDVweCByZ2JhKDAsIDAsIDAsIDAuMjUpO1xuXHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoNnB4KTtcblx0dHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuMjVzO1xuXHQtd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcblx0d2lsbC1jaGFuZ2U6IHRyYW5zZm9ybTtcblxuXHRhIHtcblx0XHRkaXNwbGF5OiBibG9jaztcblx0XHRwYWRkaW5nOiA4cHggMTJweDtcblx0XHRjb2xvcjogIzAwMDtcblx0XHR0ZXh0LWRlY29yYXRpb246IG5vbmU7XG5cdFx0Zm9udC1zaXplOiAxNHB4O1xuXHRcdGxpbmUtaGVpZ2h0OiAxOHB4O1xuXG5cdFx0Jjpob3ZlciB7XG5cdFx0XHR0ZXh0LWRlY29yYXRpb246IG5vbmU7XG5cdFx0XHRjb2xvcjogIzAwMDtcblx0XHR9XG5cblx0XHRcblx0XHQmOmZpcnN0LWNoaWxkIHtcblx0XHRcdC8qIHJvdW5kIGNvcm5lcnMgb24gdGhlIGZpcnN0L2xhc3QgbGlzdCBpdGVtICovXG5cdFx0XHRib3JkZXItcmFkaXVzOiAycHggMnB4IDAgMDtcblx0XHR9XG5cdFx0XG5cdFx0JjpsYXN0LWNoaWxkIHtcblx0XHRcdGJvcmRlci1yYWRpdXM6IDAgMCAycHggMnB4O1xuXHRcdH1cblx0fVxufVxuXG4ucHN3cF9fc2hhcmUtbW9kYWwtLWZhZGUtaW4ge1xuXHRvcGFjaXR5OiAxO1xuXG5cdC5wc3dwX19zaGFyZS10b29sdGlwIHtcblx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG5cdH1cbn1cblxuLyogaW5jcmVhc2Ugc2l6ZSBvZiBzaGFyZSBsaW5rcyBvbiB0b3VjaCBkZXZpY2VzICovXG4ucHN3cC0tdG91Y2ggLnBzd3BfX3NoYXJlLXRvb2x0aXAgYSB7XG5cdHBhZGRpbmc6IDE2cHggMTJweDtcbn1cblxuYS5wc3dwX19zaGFyZS0tZmFjZWJvb2sge1xuXHQmOmJlZm9yZSB7XG5cdFx0Y29udGVudDogJyc7XG5cdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0d2lkdGg6IDA7XG5cdFx0aGVpZ2h0OiAwO1xuXHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHR0b3A6IC0xMnB4O1xuXHRcdHJpZ2h0OiAxNXB4O1xuXHRcdGJvcmRlcjogNnB4IHNvbGlkIHJnYmEoMCwgMCwgMCwgMCk7XG5cdFx0Ym9yZGVyLWJvdHRvbS1jb2xvcjogI0ZGRjtcblx0XHQtd2Via2l0LXBvaW50ZXItZXZlbnRzOiBub25lO1xuXHRcdC1tb3otcG9pbnRlci1ldmVudHM6IG5vbmU7XG5cdFx0cG9pbnRlci1ldmVudHM6IG5vbmU7XG5cdH1cblxuXHQmOmhvdmVyIHtcblx0XHRiYWNrZ3JvdW5kOiAjM0U1QzlBO1xuXHRcdGNvbG9yOiAjRkZGO1xuXG5cdFx0JjpiZWZvcmUge1xuXHRcdFx0Ym9yZGVyLWJvdHRvbS1jb2xvcjogIzNFNUM5QTtcblx0XHR9XG5cdH1cbn1cblxuYS5wc3dwX19zaGFyZS0tdHdpdHRlciB7XG5cdCY6aG92ZXIge1xuXHRcdGJhY2tncm91bmQ6ICM1NUFDRUU7XG5cdFx0Y29sb3I6ICNGRkY7XG5cdH1cbn1cblxuYS5wc3dwX19zaGFyZS0tcGludGVyZXN0IHtcblx0Jjpob3ZlciB7XG5cdFx0YmFja2dyb3VuZDogI0NDQztcblx0XHRjb2xvcjogI0NFMjcyRDtcblx0fVxufVxuXG5hLnBzd3BfX3NoYXJlLS1kb3dubG9hZCB7XG5cdCY6aG92ZXIge1xuXHRcdGJhY2tncm91bmQ6ICNEREQ7XG5cdH1cbn1cblxuXG4vKlxuXG5cdDMuIEluZGV4IGluZGljYXRvciAoXCIxIG9mIFhcIiBjb3VudGVyKVxuXG4gKi9cblxuLnBzd3BfX2NvdW50ZXIge1xuXHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdGxlZnQ6IDA7XG5cdHRvcDogMDtcblx0aGVpZ2h0OiA0NHB4O1xuXHRmb250LXNpemU6IDEzcHg7XG5cdGxpbmUtaGVpZ2h0OiA0NHB4O1xuXHRjb2xvcjogI0ZGRjtcblx0b3BhY2l0eTogMC43NTtcblx0cGFkZGluZzogMCAxMHB4O1xufVxuXG5cbi8qXG5cdFxuXHQ0LiBDYXB0aW9uXG5cbiAqL1xuXG4ucHN3cF9fY2FwdGlvbiB7XG5cdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0bGVmdDogMDtcblx0Ym90dG9tOiAwO1xuXHR3aWR0aDogMTAwJTtcblx0bWluLWhlaWdodDogNDRweDtcblx0XG5cdHNtYWxsIHtcblx0XHRmb250LXNpemU6IDExcHg7XG5cdFx0Y29sb3I6ICNCQkI7XG5cdH1cbn1cblxuLnBzd3BfX2NhcHRpb25fX2NlbnRlciB7XG5cdHRleHQtYWxpZ246IGxlZnQ7XG5cdG1heC13aWR0aDogNDIwcHg7XG5cdG1hcmdpbjogMCBhdXRvO1xuXHRmb250LXNpemU6IDEzcHg7XG5cdHBhZGRpbmc6IDEwcHg7XG5cdGxpbmUtaGVpZ2h0OiAyMHB4O1xuXHRjb2xvcjogI0NDQztcbn1cblxuLnBzd3BfX2NhcHRpb24tLWVtcHR5IHtcblx0ZGlzcGxheTogbm9uZTtcbn1cblxuLyogRmFrZSBjYXB0aW9uIGVsZW1lbnQsIHVzZWQgdG8gY2FsY3VsYXRlIGhlaWdodCBvZiBuZXh0L3ByZXYgaW1hZ2UgKi9cbi5wc3dwX19jYXB0aW9uLS1mYWtlIHtcblx0dmlzaWJpbGl0eTogaGlkZGVuO1xufVxuXG5cbi8qXG5cblx0NS4gTG9hZGluZyBpbmRpY2F0b3IgKHByZWxvYWRlcilcblxuXHRZb3UgY2FuIHBsYXkgd2l0aCBpdCBoZXJlIC0gaHR0cDovL2NvZGVwZW4uaW8vZGltc2VtZW5vdi9wZW4veXlCV29SXG5cbiAqL1xuXG4ucHN3cF9fcHJlbG9hZGVyIHtcblx0d2lkdGg6IDQ0cHg7XG5cdGhlaWdodDogNDRweDtcblx0cG9zaXRpb246IGFic29sdXRlO1xuXHR0b3A6IDA7XG5cdGxlZnQ6IDUwJTtcblx0bWFyZ2luLWxlZnQ6IC0yMnB4O1xuXHRvcGFjaXR5OiAwO1xuXHR0cmFuc2l0aW9uOiBvcGFjaXR5IDAuMjVzIGVhc2Utb3V0OyBcblx0d2lsbC1jaGFuZ2U6IG9wYWNpdHk7XG5cdGRpcmVjdGlvbjogbHRyO1xufVxuXG4ucHN3cF9fcHJlbG9hZGVyX19pY24ge1xuXHR3aWR0aDogMjBweDtcblx0aGVpZ2h0OiAyMHB4O1xuXHRtYXJnaW46IDEycHg7XG59XG5cbi5wc3dwX19wcmVsb2FkZXItLWFjdGl2ZSB7XG5cdG9wYWNpdHk6IDE7XG5cblx0LnBzd3BfX3ByZWxvYWRlcl9faWNuIHtcblx0XHQvKiBXZSB1c2UgLmdpZiBpbiBicm93c2VycyB0aGF0IGRvbid0IHN1cHBvcnQgQ1NTIGFuaW1hdGlvbiAqL1xuXHRcdGJhY2tncm91bmQ6IHVybCgjeyRwc3dwX19hc3NldHMtcGF0aH1wcmVsb2FkZXIuZ2lmKSAwIDAgbm8tcmVwZWF0O1xuXHR9XG59XG5cbi5wc3dwLS1jc3NfYW5pbWF0aW9uIHtcblx0LnBzd3BfX3ByZWxvYWRlci0tYWN0aXZlIHtcblx0XHRvcGFjaXR5OiAxO1xuXG5cdFx0LnBzd3BfX3ByZWxvYWRlcl9faWNuIHtcblx0XHRcdGFuaW1hdGlvbjogY2xvY2t3aXNlIDUwMG1zIGxpbmVhciBpbmZpbml0ZTtcblx0XHR9XG5cblx0XHQucHN3cF9fcHJlbG9hZGVyX19kb251dCB7XG5cdFx0XHRhbmltYXRpb246IGRvbnV0LXJvdGF0ZSAxMDAwbXMgY3ViaWMtYmV6aWVyKC40LDAsLjIyLDEpIGluZmluaXRlO1xuXHRcdH1cblx0fVxuXHRcblx0LnBzd3BfX3ByZWxvYWRlcl9faWNuIHtcblx0XHRiYWNrZ3JvdW5kOiBub25lO1xuXHRcdG9wYWNpdHk6IDAuNzU7XG5cdFx0d2lkdGg6IDE0cHg7XG5cdFx0aGVpZ2h0OiAxNHB4O1xuXHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRsZWZ0OiAxNXB4O1xuXHRcdHRvcDogMTVweDtcblx0XHRtYXJnaW46IDA7XG5cdH1cblxuXHRcblx0LnBzd3BfX3ByZWxvYWRlcl9fY3V0IHtcblx0XHQvKiBcblx0XHRcdFRoZSBpZGVhIG9mIGFuaW1hdGluZyBpbm5lciBjaXJjbGUgaXMgYmFzZWQgb24gUG9seW1lciAoXCJtYXRlcmlhbFwiKSBsb2FkaW5nIGluZGljYXRvciBcblx0XHRcdCBieSBLZWFudSBMZWUgaHR0cHM6Ly9ibG9nLmtlYW51bGVlLmNvbS8yMDE0LzEwLzIwL3RoZS10YWxlLW9mLXRocmVlLXNwaW5uZXJzLmh0bWxcblx0XHQqL1xuXHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0XHR3aWR0aDogN3B4O1xuXHRcdGhlaWdodDogMTRweDtcblx0XHRvdmVyZmxvdzogaGlkZGVuO1xuXHR9XG5cblx0LnBzd3BfX3ByZWxvYWRlcl9fZG9udXQge1xuXHRcdGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG5cdFx0d2lkdGg6IDE0cHg7XG5cdFx0aGVpZ2h0OiAxNHB4O1xuXHRcdGJvcmRlcjogMnB4IHNvbGlkICNGRkY7XG5cdFx0Ym9yZGVyLXJhZGl1czogNTAlO1xuXHRcdGJvcmRlci1sZWZ0LWNvbG9yOiB0cmFuc3BhcmVudDtcblx0XHRib3JkZXItYm90dG9tLWNvbG9yOiB0cmFuc3BhcmVudDtcblx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0dG9wOiAwO1xuXHRcdGxlZnQ6IDA7XG5cdFx0YmFja2dyb3VuZDogbm9uZTtcblx0XHRtYXJnaW46IDA7XG5cdH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTAyNHB4KSB7XG5cdC5wc3dwX19wcmVsb2FkZXIge1xuXHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0XHRsZWZ0OiBhdXRvO1xuXHRcdHRvcDogYXV0bztcblx0XHRtYXJnaW46IDA7XG5cdFx0ZmxvYXQ6IHJpZ2h0O1xuXHR9XG59XG5cbkBrZXlmcmFtZXMgY2xvY2t3aXNlIHtcbiAgMCUgeyB0cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKSB9XG4gIDEwMCUgeyB0cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpIH1cbn1cblxuQGtleWZyYW1lcyBkb251dC1yb3RhdGUge1xuICAwJSB7IHRyYW5zZm9ybTogcm90YXRlKDApIH1cbiAgNTAlIHsgdHJhbnNmb3JtOiByb3RhdGUoLTE0MGRlZykgfVxuICAxMDAlIHsgdHJhbnNmb3JtOiByb3RhdGUoMCkgfVxufVxuXG5cbi8qXG5cdFxuXHQ2LiBBZGRpdGlvbmFsIHN0eWxlc1xuXG4gKi9cblxuLyogcm9vdCBlbGVtZW50IG9mIFVJICovXG4ucHN3cF9fdWkge1xuXHQtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhdXRvO1xuXHR2aXNpYmlsaXR5OiB2aXNpYmxlO1xuXHRvcGFjaXR5OiAxO1xuXHR6LWluZGV4OiAkcHN3cF9fcm9vdC16LWluZGV4ICsgNTA7XG59XG5cbi8qIHRvcCBibGFjayBiYXIgd2l0aCBidXR0b25zIGFuZCBcIjEgb2YgWFwiIGluZGljYXRvciAqL1xuLnBzd3BfX3RvcC1iYXIge1xuXHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdGxlZnQ6IDA7XG5cdHRvcDogMDtcblx0aGVpZ2h0OiA0NHB4O1xuXHR3aWR0aDogMTAwJTtcbn1cblxuLnBzd3BfX2NhcHRpb24sXG4ucHN3cF9fdG9wLWJhcixcbi5wc3dwLS1oYXNfbW91c2UgLnBzd3BfX2J1dHRvbi0tYXJyb3ctLWxlZnQsXG4ucHN3cC0taGFzX21vdXNlIC5wc3dwX19idXR0b24tLWFycm93LS1yaWdodCB7XG5cdC13ZWJraXQtYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuOyBcblx0d2lsbC1jaGFuZ2U6IG9wYWNpdHk7XG5cdHRyYW5zaXRpb246IG9wYWNpdHkgJHBzd3BfX2NvbnRyb2xzLXRyYW5zaXRpb24tZHVyYXRpb24gY3ViaWMtYmV6aWVyKC40LDAsLjIyLDEpO1xufVxuXG4vKiBwc3dwLS1oYXNfbW91c2UgY2xhc3MgaXMgYWRkZWQgb25seSB3aGVuIHR3byBzdWJzZXF1ZW50IG1vdXNlbW92ZSBldmVudHMgb2NjdXIgKi9cbi5wc3dwLS1oYXNfbW91c2Uge1xuXHQucHN3cF9fYnV0dG9uLS1hcnJvdy0tbGVmdCxcblx0LnBzd3BfX2J1dHRvbi0tYXJyb3ctLXJpZ2h0IHtcblx0XHR2aXNpYmlsaXR5OiB2aXNpYmxlO1xuXHR9XG59XG5cbi5wc3dwX190b3AtYmFyLFxuLnBzd3BfX2NhcHRpb24ge1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsMCwwLDAuNSk7XG59XG5cbi8qIHBzd3BfX3VpLS1maXQgY2xhc3MgaXMgYWRkZWQgd2hlbiBtYWluIGltYWdlIFwiZml0c1wiIGJldHdlZW4gdG9wIGJhciBhbmQgYm90dG9tIGJhciAoY2FwdGlvbikgKi9cbi5wc3dwX191aS0tZml0IHtcblx0LnBzd3BfX3RvcC1iYXIsXG5cdC5wc3dwX19jYXB0aW9uIHtcblx0XHRiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsMCwwLDAuMyk7XG5cdH1cbn1cblxuLyogcHN3cF9fdWktLWlkbGUgY2xhc3MgaXMgYWRkZWQgd2hlbiBtb3VzZSBpc24ndCBtb3ZpbmcgZm9yIHNldmVyYWwgc2Vjb25kcyAoSlMgb3B0aW9uIHRpbWVUb0lkbGUpICovXG5cdFxuLnBzd3BfX3VpLS1pZGxlIHtcblx0LnBzd3BfX3RvcC1iYXIgeyBcblx0XHRvcGFjaXR5OiAwOyBcblx0fVxuXG5cdC5wc3dwX19idXR0b24tLWFycm93LS1sZWZ0LFxuXHQucHN3cF9fYnV0dG9uLS1hcnJvdy0tcmlnaHQge1xuXHRcdG9wYWNpdHk6IDA7XG5cdH1cbn1cblxuLypcblx0cHN3cF9fdWktLWhpZGRlbiBjbGFzcyBpcyBhZGRlZCB3aGVuIGNvbnRyb2xzIGFyZSBoaWRkZW5cblx0ZS5nLiB3aGVuIHVzZXIgdGFwcyB0byB0b2dnbGUgdmlzaWJpbGl0eSBvZiBjb250cm9sc1xuKi9cbi5wc3dwX191aS0taGlkZGVuIHtcblx0LnBzd3BfX3RvcC1iYXIsXG5cdC5wc3dwX19jYXB0aW9uLFxuXHQucHN3cF9fYnV0dG9uLS1hcnJvdy0tbGVmdCxcblx0LnBzd3BfX2J1dHRvbi0tYXJyb3ctLXJpZ2h0IHtcblx0XHQvKiBGb3JjZSBwYWludCAmIGNyZWF0ZSBjb21wb3NpdGlvbiBsYXllciBmb3IgY29udHJvbHMuICovXG5cdFx0b3BhY2l0eTogMC4wMDE7IFxuXHR9XG59XG5cbi8qIHBzd3BfX3VpLS1vbmUtc2xpZGUgY2xhc3MgaXMgYWRkZWQgd2hlbiB0aGVyZSBpcyBqdXN0IG9uZSBpdGVtIGluIGdhbGxlcnkgKi9cbi5wc3dwX191aS0tb25lLXNsaWRlIHtcblx0LnBzd3BfX2J1dHRvbi0tYXJyb3ctLWxlZnQsXG5cdC5wc3dwX19idXR0b24tLWFycm93LS1yaWdodCxcblx0LnBzd3BfX2NvdW50ZXIge1xuXHRcdGRpc3BsYXk6IG5vbmU7XG5cdH1cbn1cblxuLnBzd3BfX2VsZW1lbnQtLWRpc2FibGVkIHtcblx0ZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xufVxuXG5AaWYgJHBzd3BfX2luY2x1ZGUtbWluaW1hbC1zdHlsZSA9PSB0cnVlIHtcblx0LnBzd3AtLW1pbmltYWwtLWRhcmsge1xuXHRcdC5wc3dwX190b3AtYmFyIHtcblx0XHRcdGJhY2tncm91bmQ6IG5vbmU7XG5cdFx0fVxuXHR9XG59XG5cblxuXG5cblxuXG5cblxuXG5cblxuXG4iLCJpbnB1dFt0eXBlPXN1Ym1pdF0uZ2Zvcm1fYnV0dG9uLmJ1dHRvbntcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1nZm9ybS10aGVtZS1jb2xvci1wcmltYXJ5LCAkY29sb3JfcHJpbWFyeSk7XG4gICAgY29sb3I6IHZhcigtLWdmb3JtLXRoZW1lLWNvbG9yLXByaW1hcnktY29udHJhc3QsJGNvbG9yX25ldXRyYWwpO1xufSJdfQ== */
