@charset "UTF-8";
/**
 * Foundation for Sites by ZURB
 * Version 6.4.3
 * foundation.zurb.com
 * Licensed under MIT Open Source
 */
@media print, screen and (min-width: 40em) {
  .reveal, .reveal.tiny, .reveal.small, .reveal.large {
    right: auto;
    left: auto;
    margin: 0 auto; } }

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

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

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

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

.mall-0 {
  margin-all: 0 !important; }

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

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

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

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

.pall-0 {
  padding-all: 0 !important; }

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

@media print, screen and (min-width: 64em) {
  .mt-large-0 {
    margin-top: 0 !important; } }

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

@media print, screen and (min-width: 64em) {
  .mr-large-0 {
    margin-right: 0 !important; } }

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

@media print, screen and (min-width: 64em) {
  .mb-large-0 {
    margin-bottom: 0 !important; } }

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

@media print, screen and (min-width: 64em) {
  .ml-large-0 {
    margin-left: 0 !important; } }

.mall-0 {
  margin-all: 0 !important; }

@media print, screen and (min-width: 64em) {
  .mall-large-0 {
    margin-all: 0 !important; } }

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

@media print, screen and (min-width: 64em) {
  .pt-large-0 {
    padding-top: 0 !important; } }

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

@media print, screen and (min-width: 64em) {
  .pr-large-0 {
    padding-right: 0 !important; } }

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

@media print, screen and (min-width: 64em) {
  .pb-large-0 {
    padding-bottom: 0 !important; } }

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

@media print, screen and (min-width: 64em) {
  .pl-large-0 {
    padding-left: 0 !important; } }

.pall-0 {
  padding-all: 0 !important; }

@media print, screen and (min-width: 64em) {
  .pall-large-0 {
    padding-all: 0 !important; } }

.mt-1 {
  margin-top: 1.09375rem; }

.mr-1 {
  margin-right: 1.09375rem; }

.mb-1 {
  margin-bottom: 1.09375rem; }

.ml-1 {
  margin-left: 1.09375rem; }

.mall-1 {
  margin-all: 1.09375rem; }

.pt-1 {
  padding-top: 1.09375rem; }

.pr-1 {
  padding-right: 1.09375rem; }

.pb-1 {
  padding-bottom: 1.09375rem; }

.pl-1 {
  padding-left: 1.09375rem; }

.pall-1 {
  padding-all: 1.09375rem; }

@media print, screen and (min-width: 40em) {
  .mt-1 {
    margin-top: 0.78125rem; } }

@media print, screen and (min-width: 40em) and (min-width: 40em) {
  .mt-medium-1 {
    margin-top: 0.78125rem !important; } }

@media print, screen and (min-width: 40em) {
  .mr-1 {
    margin-right: 0.78125rem; } }

@media print, screen and (min-width: 40em) and (min-width: 40em) {
  .mr-medium-1 {
    margin-right: 0.78125rem !important; } }

@media print, screen and (min-width: 40em) {
  .mb-1 {
    margin-bottom: 0.78125rem; } }

@media print, screen and (min-width: 40em) and (min-width: 40em) {
  .mb-medium-1 {
    margin-bottom: 0.78125rem !important; } }

@media print, screen and (min-width: 40em) {
  .ml-1 {
    margin-left: 0.78125rem; } }

@media print, screen and (min-width: 40em) and (min-width: 40em) {
  .ml-medium-1 {
    margin-left: 0.78125rem !important; } }

@media print, screen and (min-width: 40em) {
  .mall-1 {
    margin-all: 0.78125rem; } }

@media print, screen and (min-width: 40em) and (min-width: 40em) {
  .mall-medium-1 {
    margin-all: 0.78125rem !important; } }

@media print, screen and (min-width: 40em) {
  .pt-1 {
    padding-top: 0.78125rem; } }

@media print, screen and (min-width: 40em) and (min-width: 40em) {
  .pt-medium-1 {
    padding-top: 0.78125rem !important; } }

@media print, screen and (min-width: 40em) {
  .pr-1 {
    padding-right: 0.78125rem; } }

@media print, screen and (min-width: 40em) and (min-width: 40em) {
  .pr-medium-1 {
    padding-right: 0.78125rem !important; } }

@media print, screen and (min-width: 40em) {
  .pb-1 {
    padding-bottom: 0.78125rem; } }

@media print, screen and (min-width: 40em) and (min-width: 40em) {
  .pb-medium-1 {
    padding-bottom: 0.78125rem !important; } }

@media print, screen and (min-width: 40em) {
  .pl-1 {
    padding-left: 0.78125rem; } }

@media print, screen and (min-width: 40em) and (min-width: 40em) {
  .pl-medium-1 {
    padding-left: 0.78125rem !important; } }

@media print, screen and (min-width: 40em) {
  .pall-1 {
    padding-all: 0.78125rem; } }

@media print, screen and (min-width: 40em) and (min-width: 40em) {
  .pall-medium-1 {
    padding-all: 0.78125rem !important; } }

@media print, screen and (min-width: 64em) {
  .mt-1 {
    margin-top: 0.78125rem; } }

@media print, screen and (min-width: 64em) and (min-width: 64em) {
  .mt-large-1 {
    margin-top: 0.78125rem !important; } }

@media print, screen and (min-width: 64em) {
  .mr-1 {
    margin-right: 0.78125rem; } }

@media print, screen and (min-width: 64em) and (min-width: 64em) {
  .mr-large-1 {
    margin-right: 0.78125rem !important; } }

@media print, screen and (min-width: 64em) {
  .mb-1 {
    margin-bottom: 0.78125rem; } }

@media print, screen and (min-width: 64em) and (min-width: 64em) {
  .mb-large-1 {
    margin-bottom: 0.78125rem !important; } }

@media print, screen and (min-width: 64em) {
  .ml-1 {
    margin-left: 0.78125rem; } }

@media print, screen and (min-width: 64em) and (min-width: 64em) {
  .ml-large-1 {
    margin-left: 0.78125rem !important; } }

@media print, screen and (min-width: 64em) {
  .mall-1 {
    margin-all: 0.78125rem; } }

@media print, screen and (min-width: 64em) and (min-width: 64em) {
  .mall-large-1 {
    margin-all: 0.78125rem !important; } }

@media print, screen and (min-width: 64em) {
  .pt-1 {
    padding-top: 0.78125rem; } }

@media print, screen and (min-width: 64em) and (min-width: 64em) {
  .pt-large-1 {
    padding-top: 0.78125rem !important; } }

@media print, screen and (min-width: 64em) {
  .pr-1 {
    padding-right: 0.78125rem; } }

@media print, screen and (min-width: 64em) and (min-width: 64em) {
  .pr-large-1 {
    padding-right: 0.78125rem !important; } }

@media print, screen and (min-width: 64em) {
  .pb-1 {
    padding-bottom: 0.78125rem; } }

@media print, screen and (min-width: 64em) and (min-width: 64em) {
  .pb-large-1 {
    padding-bottom: 0.78125rem !important; } }

@media print, screen and (min-width: 64em) {
  .pl-1 {
    padding-left: 0.78125rem; } }

@media print, screen and (min-width: 64em) and (min-width: 64em) {
  .pl-large-1 {
    padding-left: 0.78125rem !important; } }

@media print, screen and (min-width: 64em) {
  .pall-1 {
    padding-all: 0.78125rem; } }

@media print, screen and (min-width: 64em) and (min-width: 64em) {
  .pall-large-1 {
    padding-all: 0.78125rem !important; } }

@media screen and (min-width: 75em) {
  .mt-1 {
    margin-top: 0.9375rem; } }

@media screen and (min-width: 75em) and (min-width: 75em) {
  .mt-xlarge-1 {
    margin-top: 0.9375rem !important; } }

@media screen and (min-width: 75em) {
  .mr-1 {
    margin-right: 0.9375rem; } }

@media screen and (min-width: 75em) and (min-width: 75em) {
  .mr-xlarge-1 {
    margin-right: 0.9375rem !important; } }

@media screen and (min-width: 75em) {
  .mb-1 {
    margin-bottom: 0.9375rem; } }

@media screen and (min-width: 75em) and (min-width: 75em) {
  .mb-xlarge-1 {
    margin-bottom: 0.9375rem !important; } }

@media screen and (min-width: 75em) {
  .ml-1 {
    margin-left: 0.9375rem; } }

@media screen and (min-width: 75em) and (min-width: 75em) {
  .ml-xlarge-1 {
    margin-left: 0.9375rem !important; } }

@media screen and (min-width: 75em) {
  .mall-1 {
    margin-all: 0.9375rem; } }

@media screen and (min-width: 75em) and (min-width: 75em) {
  .mall-xlarge-1 {
    margin-all: 0.9375rem !important; } }

@media screen and (min-width: 75em) {
  .pt-1 {
    padding-top: 0.9375rem; } }

@media screen and (min-width: 75em) and (min-width: 75em) {
  .pt-xlarge-1 {
    padding-top: 0.9375rem !important; } }

@media screen and (min-width: 75em) {
  .pr-1 {
    padding-right: 0.9375rem; } }

@media screen and (min-width: 75em) and (min-width: 75em) {
  .pr-xlarge-1 {
    padding-right: 0.9375rem !important; } }

@media screen and (min-width: 75em) {
  .pb-1 {
    padding-bottom: 0.9375rem; } }

@media screen and (min-width: 75em) and (min-width: 75em) {
  .pb-xlarge-1 {
    padding-bottom: 0.9375rem !important; } }

@media screen and (min-width: 75em) {
  .pl-1 {
    padding-left: 0.9375rem; } }

@media screen and (min-width: 75em) and (min-width: 75em) {
  .pl-xlarge-1 {
    padding-left: 0.9375rem !important; } }

@media screen and (min-width: 75em) {
  .pall-1 {
    padding-all: 0.9375rem; } }

@media screen and (min-width: 75em) and (min-width: 75em) {
  .pall-xlarge-1 {
    padding-all: 0.9375rem !important; } }

@media screen and (min-width: 90em) {
  .mt-1 {
    margin-top: 0.9375rem; } }

@media screen and (min-width: 90em) and (min-width: 90em) {
  .mt-xxlarge-1 {
    margin-top: 0.9375rem !important; } }

@media screen and (min-width: 90em) {
  .mr-1 {
    margin-right: 0.9375rem; } }

@media screen and (min-width: 90em) and (min-width: 90em) {
  .mr-xxlarge-1 {
    margin-right: 0.9375rem !important; } }

@media screen and (min-width: 90em) {
  .mb-1 {
    margin-bottom: 0.9375rem; } }

@media screen and (min-width: 90em) and (min-width: 90em) {
  .mb-xxlarge-1 {
    margin-bottom: 0.9375rem !important; } }

@media screen and (min-width: 90em) {
  .ml-1 {
    margin-left: 0.9375rem; } }

@media screen and (min-width: 90em) and (min-width: 90em) {
  .ml-xxlarge-1 {
    margin-left: 0.9375rem !important; } }

@media screen and (min-width: 90em) {
  .mall-1 {
    margin-all: 0.9375rem; } }

@media screen and (min-width: 90em) and (min-width: 90em) {
  .mall-xxlarge-1 {
    margin-all: 0.9375rem !important; } }

@media screen and (min-width: 90em) {
  .pt-1 {
    padding-top: 0.9375rem; } }

@media screen and (min-width: 90em) and (min-width: 90em) {
  .pt-xxlarge-1 {
    padding-top: 0.9375rem !important; } }

@media screen and (min-width: 90em) {
  .pr-1 {
    padding-right: 0.9375rem; } }

@media screen and (min-width: 90em) and (min-width: 90em) {
  .pr-xxlarge-1 {
    padding-right: 0.9375rem !important; } }

@media screen and (min-width: 90em) {
  .pb-1 {
    padding-bottom: 0.9375rem; } }

@media screen and (min-width: 90em) and (min-width: 90em) {
  .pb-xxlarge-1 {
    padding-bottom: 0.9375rem !important; } }

@media screen and (min-width: 90em) {
  .pl-1 {
    padding-left: 0.9375rem; } }

@media screen and (min-width: 90em) and (min-width: 90em) {
  .pl-xxlarge-1 {
    padding-left: 0.9375rem !important; } }

@media screen and (min-width: 90em) {
  .pall-1 {
    padding-all: 0.9375rem; } }

@media screen and (min-width: 90em) and (min-width: 90em) {
  .pall-xxlarge-1 {
    padding-all: 0.9375rem !important; } }

.mt-2 {
  margin-top: 2.1875rem; }

.mr-2 {
  margin-right: 2.1875rem; }

.mb-2 {
  margin-bottom: 2.1875rem; }

.ml-2 {
  margin-left: 2.1875rem; }

.mall-2 {
  margin-all: 2.1875rem; }

.pt-2 {
  padding-top: 2.1875rem; }

.pr-2 {
  padding-right: 2.1875rem; }

.pb-2 {
  padding-bottom: 2.1875rem; }

.pl-2 {
  padding-left: 2.1875rem; }

.pall-2 {
  padding-all: 2.1875rem; }

@media print, screen and (min-width: 40em) {
  .mt-2 {
    margin-top: 1.5625rem; } }

@media print, screen and (min-width: 40em) and (min-width: 40em) {
  .mt-medium-2 {
    margin-top: 1.5625rem !important; } }

@media print, screen and (min-width: 40em) {
  .mr-2 {
    margin-right: 1.5625rem; } }

@media print, screen and (min-width: 40em) and (min-width: 40em) {
  .mr-medium-2 {
    margin-right: 1.5625rem !important; } }

@media print, screen and (min-width: 40em) {
  .mb-2 {
    margin-bottom: 1.5625rem; } }

@media print, screen and (min-width: 40em) and (min-width: 40em) {
  .mb-medium-2 {
    margin-bottom: 1.5625rem !important; } }

@media print, screen and (min-width: 40em) {
  .ml-2 {
    margin-left: 1.5625rem; } }

@media print, screen and (min-width: 40em) and (min-width: 40em) {
  .ml-medium-2 {
    margin-left: 1.5625rem !important; } }

@media print, screen and (min-width: 40em) {
  .mall-2 {
    margin-all: 1.5625rem; } }

@media print, screen and (min-width: 40em) and (min-width: 40em) {
  .mall-medium-2 {
    margin-all: 1.5625rem !important; } }

@media print, screen and (min-width: 40em) {
  .pt-2 {
    padding-top: 1.5625rem; } }

@media print, screen and (min-width: 40em) and (min-width: 40em) {
  .pt-medium-2 {
    padding-top: 1.5625rem !important; } }

@media print, screen and (min-width: 40em) {
  .pr-2 {
    padding-right: 1.5625rem; } }

@media print, screen and (min-width: 40em) and (min-width: 40em) {
  .pr-medium-2 {
    padding-right: 1.5625rem !important; } }

@media print, screen and (min-width: 40em) {
  .pb-2 {
    padding-bottom: 1.5625rem; } }

@media print, screen and (min-width: 40em) and (min-width: 40em) {
  .pb-medium-2 {
    padding-bottom: 1.5625rem !important; } }

@media print, screen and (min-width: 40em) {
  .pl-2 {
    padding-left: 1.5625rem; } }

@media print, screen and (min-width: 40em) and (min-width: 40em) {
  .pl-medium-2 {
    padding-left: 1.5625rem !important; } }

@media print, screen and (min-width: 40em) {
  .pall-2 {
    padding-all: 1.5625rem; } }

@media print, screen and (min-width: 40em) and (min-width: 40em) {
  .pall-medium-2 {
    padding-all: 1.5625rem !important; } }

@media print, screen and (min-width: 64em) {
  .mt-2 {
    margin-top: 1.5625rem; } }

@media print, screen and (min-width: 64em) and (min-width: 64em) {
  .mt-large-2 {
    margin-top: 1.5625rem !important; } }

@media print, screen and (min-width: 64em) {
  .mr-2 {
    margin-right: 1.5625rem; } }

@media print, screen and (min-width: 64em) and (min-width: 64em) {
  .mr-large-2 {
    margin-right: 1.5625rem !important; } }

@media print, screen and (min-width: 64em) {
  .mb-2 {
    margin-bottom: 1.5625rem; } }

@media print, screen and (min-width: 64em) and (min-width: 64em) {
  .mb-large-2 {
    margin-bottom: 1.5625rem !important; } }

@media print, screen and (min-width: 64em) {
  .ml-2 {
    margin-left: 1.5625rem; } }

@media print, screen and (min-width: 64em) and (min-width: 64em) {
  .ml-large-2 {
    margin-left: 1.5625rem !important; } }

@media print, screen and (min-width: 64em) {
  .mall-2 {
    margin-all: 1.5625rem; } }

@media print, screen and (min-width: 64em) and (min-width: 64em) {
  .mall-large-2 {
    margin-all: 1.5625rem !important; } }

@media print, screen and (min-width: 64em) {
  .pt-2 {
    padding-top: 1.5625rem; } }

@media print, screen and (min-width: 64em) and (min-width: 64em) {
  .pt-large-2 {
    padding-top: 1.5625rem !important; } }

@media print, screen and (min-width: 64em) {
  .pr-2 {
    padding-right: 1.5625rem; } }

@media print, screen and (min-width: 64em) and (min-width: 64em) {
  .pr-large-2 {
    padding-right: 1.5625rem !important; } }

@media print, screen and (min-width: 64em) {
  .pb-2 {
    padding-bottom: 1.5625rem; } }

@media print, screen and (min-width: 64em) and (min-width: 64em) {
  .pb-large-2 {
    padding-bottom: 1.5625rem !important; } }

@media print, screen and (min-width: 64em) {
  .pl-2 {
    padding-left: 1.5625rem; } }

@media print, screen and (min-width: 64em) and (min-width: 64em) {
  .pl-large-2 {
    padding-left: 1.5625rem !important; } }

@media print, screen and (min-width: 64em) {
  .pall-2 {
    padding-all: 1.5625rem; } }

@media print, screen and (min-width: 64em) and (min-width: 64em) {
  .pall-large-2 {
    padding-all: 1.5625rem !important; } }

@media screen and (min-width: 75em) {
  .mt-2 {
    margin-top: 1.875rem; } }

@media screen and (min-width: 75em) and (min-width: 75em) {
  .mt-xlarge-2 {
    margin-top: 1.875rem !important; } }

@media screen and (min-width: 75em) {
  .mr-2 {
    margin-right: 1.875rem; } }

@media screen and (min-width: 75em) and (min-width: 75em) {
  .mr-xlarge-2 {
    margin-right: 1.875rem !important; } }

@media screen and (min-width: 75em) {
  .mb-2 {
    margin-bottom: 1.875rem; } }

@media screen and (min-width: 75em) and (min-width: 75em) {
  .mb-xlarge-2 {
    margin-bottom: 1.875rem !important; } }

@media screen and (min-width: 75em) {
  .ml-2 {
    margin-left: 1.875rem; } }

@media screen and (min-width: 75em) and (min-width: 75em) {
  .ml-xlarge-2 {
    margin-left: 1.875rem !important; } }

@media screen and (min-width: 75em) {
  .mall-2 {
    margin-all: 1.875rem; } }

@media screen and (min-width: 75em) and (min-width: 75em) {
  .mall-xlarge-2 {
    margin-all: 1.875rem !important; } }

@media screen and (min-width: 75em) {
  .pt-2 {
    padding-top: 1.875rem; } }

@media screen and (min-width: 75em) and (min-width: 75em) {
  .pt-xlarge-2 {
    padding-top: 1.875rem !important; } }

@media screen and (min-width: 75em) {
  .pr-2 {
    padding-right: 1.875rem; } }

@media screen and (min-width: 75em) and (min-width: 75em) {
  .pr-xlarge-2 {
    padding-right: 1.875rem !important; } }

@media screen and (min-width: 75em) {
  .pb-2 {
    padding-bottom: 1.875rem; } }

@media screen and (min-width: 75em) and (min-width: 75em) {
  .pb-xlarge-2 {
    padding-bottom: 1.875rem !important; } }

@media screen and (min-width: 75em) {
  .pl-2 {
    padding-left: 1.875rem; } }

@media screen and (min-width: 75em) and (min-width: 75em) {
  .pl-xlarge-2 {
    padding-left: 1.875rem !important; } }

@media screen and (min-width: 75em) {
  .pall-2 {
    padding-all: 1.875rem; } }

@media screen and (min-width: 75em) and (min-width: 75em) {
  .pall-xlarge-2 {
    padding-all: 1.875rem !important; } }

@media screen and (min-width: 90em) {
  .mt-2 {
    margin-top: 1.875rem; } }

@media screen and (min-width: 90em) and (min-width: 90em) {
  .mt-xxlarge-2 {
    margin-top: 1.875rem !important; } }

@media screen and (min-width: 90em) {
  .mr-2 {
    margin-right: 1.875rem; } }

@media screen and (min-width: 90em) and (min-width: 90em) {
  .mr-xxlarge-2 {
    margin-right: 1.875rem !important; } }

@media screen and (min-width: 90em) {
  .mb-2 {
    margin-bottom: 1.875rem; } }

@media screen and (min-width: 90em) and (min-width: 90em) {
  .mb-xxlarge-2 {
    margin-bottom: 1.875rem !important; } }

@media screen and (min-width: 90em) {
  .ml-2 {
    margin-left: 1.875rem; } }

@media screen and (min-width: 90em) and (min-width: 90em) {
  .ml-xxlarge-2 {
    margin-left: 1.875rem !important; } }

@media screen and (min-width: 90em) {
  .mall-2 {
    margin-all: 1.875rem; } }

@media screen and (min-width: 90em) and (min-width: 90em) {
  .mall-xxlarge-2 {
    margin-all: 1.875rem !important; } }

@media screen and (min-width: 90em) {
  .pt-2 {
    padding-top: 1.875rem; } }

@media screen and (min-width: 90em) and (min-width: 90em) {
  .pt-xxlarge-2 {
    padding-top: 1.875rem !important; } }

@media screen and (min-width: 90em) {
  .pr-2 {
    padding-right: 1.875rem; } }

@media screen and (min-width: 90em) and (min-width: 90em) {
  .pr-xxlarge-2 {
    padding-right: 1.875rem !important; } }

@media screen and (min-width: 90em) {
  .pb-2 {
    padding-bottom: 1.875rem; } }

@media screen and (min-width: 90em) and (min-width: 90em) {
  .pb-xxlarge-2 {
    padding-bottom: 1.875rem !important; } }

@media screen and (min-width: 90em) {
  .pl-2 {
    padding-left: 1.875rem; } }

@media screen and (min-width: 90em) and (min-width: 90em) {
  .pl-xxlarge-2 {
    padding-left: 1.875rem !important; } }

@media screen and (min-width: 90em) {
  .pall-2 {
    padding-all: 1.875rem; } }

@media screen and (min-width: 90em) and (min-width: 90em) {
  .pall-xxlarge-2 {
    padding-all: 1.875rem !important; } }

.mt-3 {
  margin-top: 4.375rem; }

.mr-3 {
  margin-right: 4.375rem; }

.mb-3 {
  margin-bottom: 4.375rem; }

.ml-3 {
  margin-left: 4.375rem; }

.mall-3 {
  margin-all: 4.375rem; }

.pt-3 {
  padding-top: 4.375rem; }

.pr-3 {
  padding-right: 4.375rem; }

.pb-3 {
  padding-bottom: 4.375rem; }

.pl-3 {
  padding-left: 4.375rem; }

.pall-3 {
  padding-all: 4.375rem; }

@media print, screen and (min-width: 40em) {
  .mt-3 {
    margin-top: 3.125rem; } }

@media print, screen and (min-width: 40em) and (min-width: 40em) {
  .mt-medium-3 {
    margin-top: 3.125rem !important; } }

@media print, screen and (min-width: 40em) {
  .mr-3 {
    margin-right: 3.125rem; } }

@media print, screen and (min-width: 40em) and (min-width: 40em) {
  .mr-medium-3 {
    margin-right: 3.125rem !important; } }

@media print, screen and (min-width: 40em) {
  .mb-3 {
    margin-bottom: 3.125rem; } }

@media print, screen and (min-width: 40em) and (min-width: 40em) {
  .mb-medium-3 {
    margin-bottom: 3.125rem !important; } }

@media print, screen and (min-width: 40em) {
  .ml-3 {
    margin-left: 3.125rem; } }

@media print, screen and (min-width: 40em) and (min-width: 40em) {
  .ml-medium-3 {
    margin-left: 3.125rem !important; } }

@media print, screen and (min-width: 40em) {
  .mall-3 {
    margin-all: 3.125rem; } }

@media print, screen and (min-width: 40em) and (min-width: 40em) {
  .mall-medium-3 {
    margin-all: 3.125rem !important; } }

@media print, screen and (min-width: 40em) {
  .pt-3 {
    padding-top: 3.125rem; } }

@media print, screen and (min-width: 40em) and (min-width: 40em) {
  .pt-medium-3 {
    padding-top: 3.125rem !important; } }

@media print, screen and (min-width: 40em) {
  .pr-3 {
    padding-right: 3.125rem; } }

@media print, screen and (min-width: 40em) and (min-width: 40em) {
  .pr-medium-3 {
    padding-right: 3.125rem !important; } }

@media print, screen and (min-width: 40em) {
  .pb-3 {
    padding-bottom: 3.125rem; } }

@media print, screen and (min-width: 40em) and (min-width: 40em) {
  .pb-medium-3 {
    padding-bottom: 3.125rem !important; } }

@media print, screen and (min-width: 40em) {
  .pl-3 {
    padding-left: 3.125rem; } }

@media print, screen and (min-width: 40em) and (min-width: 40em) {
  .pl-medium-3 {
    padding-left: 3.125rem !important; } }

@media print, screen and (min-width: 40em) {
  .pall-3 {
    padding-all: 3.125rem; } }

@media print, screen and (min-width: 40em) and (min-width: 40em) {
  .pall-medium-3 {
    padding-all: 3.125rem !important; } }

@media print, screen and (min-width: 64em) {
  .mt-3 {
    margin-top: 3.125rem; } }

@media print, screen and (min-width: 64em) and (min-width: 64em) {
  .mt-large-3 {
    margin-top: 3.125rem !important; } }

@media print, screen and (min-width: 64em) {
  .mr-3 {
    margin-right: 3.125rem; } }

@media print, screen and (min-width: 64em) and (min-width: 64em) {
  .mr-large-3 {
    margin-right: 3.125rem !important; } }

@media print, screen and (min-width: 64em) {
  .mb-3 {
    margin-bottom: 3.125rem; } }

@media print, screen and (min-width: 64em) and (min-width: 64em) {
  .mb-large-3 {
    margin-bottom: 3.125rem !important; } }

@media print, screen and (min-width: 64em) {
  .ml-3 {
    margin-left: 3.125rem; } }

@media print, screen and (min-width: 64em) and (min-width: 64em) {
  .ml-large-3 {
    margin-left: 3.125rem !important; } }

@media print, screen and (min-width: 64em) {
  .mall-3 {
    margin-all: 3.125rem; } }

@media print, screen and (min-width: 64em) and (min-width: 64em) {
  .mall-large-3 {
    margin-all: 3.125rem !important; } }

@media print, screen and (min-width: 64em) {
  .pt-3 {
    padding-top: 3.125rem; } }

@media print, screen and (min-width: 64em) and (min-width: 64em) {
  .pt-large-3 {
    padding-top: 3.125rem !important; } }

@media print, screen and (min-width: 64em) {
  .pr-3 {
    padding-right: 3.125rem; } }

@media print, screen and (min-width: 64em) and (min-width: 64em) {
  .pr-large-3 {
    padding-right: 3.125rem !important; } }

@media print, screen and (min-width: 64em) {
  .pb-3 {
    padding-bottom: 3.125rem; } }

@media print, screen and (min-width: 64em) and (min-width: 64em) {
  .pb-large-3 {
    padding-bottom: 3.125rem !important; } }

@media print, screen and (min-width: 64em) {
  .pl-3 {
    padding-left: 3.125rem; } }

@media print, screen and (min-width: 64em) and (min-width: 64em) {
  .pl-large-3 {
    padding-left: 3.125rem !important; } }

@media print, screen and (min-width: 64em) {
  .pall-3 {
    padding-all: 3.125rem; } }

@media print, screen and (min-width: 64em) and (min-width: 64em) {
  .pall-large-3 {
    padding-all: 3.125rem !important; } }

@media screen and (min-width: 75em) {
  .mt-3 {
    margin-top: 3.75rem; } }

@media screen and (min-width: 75em) and (min-width: 75em) {
  .mt-xlarge-3 {
    margin-top: 3.75rem !important; } }

@media screen and (min-width: 75em) {
  .mr-3 {
    margin-right: 3.75rem; } }

@media screen and (min-width: 75em) and (min-width: 75em) {
  .mr-xlarge-3 {
    margin-right: 3.75rem !important; } }

@media screen and (min-width: 75em) {
  .mb-3 {
    margin-bottom: 3.75rem; } }

@media screen and (min-width: 75em) and (min-width: 75em) {
  .mb-xlarge-3 {
    margin-bottom: 3.75rem !important; } }

@media screen and (min-width: 75em) {
  .ml-3 {
    margin-left: 3.75rem; } }

@media screen and (min-width: 75em) and (min-width: 75em) {
  .ml-xlarge-3 {
    margin-left: 3.75rem !important; } }

@media screen and (min-width: 75em) {
  .mall-3 {
    margin-all: 3.75rem; } }

@media screen and (min-width: 75em) and (min-width: 75em) {
  .mall-xlarge-3 {
    margin-all: 3.75rem !important; } }

@media screen and (min-width: 75em) {
  .pt-3 {
    padding-top: 3.75rem; } }

@media screen and (min-width: 75em) and (min-width: 75em) {
  .pt-xlarge-3 {
    padding-top: 3.75rem !important; } }

@media screen and (min-width: 75em) {
  .pr-3 {
    padding-right: 3.75rem; } }

@media screen and (min-width: 75em) and (min-width: 75em) {
  .pr-xlarge-3 {
    padding-right: 3.75rem !important; } }

@media screen and (min-width: 75em) {
  .pb-3 {
    padding-bottom: 3.75rem; } }

@media screen and (min-width: 75em) and (min-width: 75em) {
  .pb-xlarge-3 {
    padding-bottom: 3.75rem !important; } }

@media screen and (min-width: 75em) {
  .pl-3 {
    padding-left: 3.75rem; } }

@media screen and (min-width: 75em) and (min-width: 75em) {
  .pl-xlarge-3 {
    padding-left: 3.75rem !important; } }

@media screen and (min-width: 75em) {
  .pall-3 {
    padding-all: 3.75rem; } }

@media screen and (min-width: 75em) and (min-width: 75em) {
  .pall-xlarge-3 {
    padding-all: 3.75rem !important; } }

@media screen and (min-width: 90em) {
  .mt-3 {
    margin-top: 3.75rem; } }

@media screen and (min-width: 90em) and (min-width: 90em) {
  .mt-xxlarge-3 {
    margin-top: 3.75rem !important; } }

@media screen and (min-width: 90em) {
  .mr-3 {
    margin-right: 3.75rem; } }

@media screen and (min-width: 90em) and (min-width: 90em) {
  .mr-xxlarge-3 {
    margin-right: 3.75rem !important; } }

@media screen and (min-width: 90em) {
  .mb-3 {
    margin-bottom: 3.75rem; } }

@media screen and (min-width: 90em) and (min-width: 90em) {
  .mb-xxlarge-3 {
    margin-bottom: 3.75rem !important; } }

@media screen and (min-width: 90em) {
  .ml-3 {
    margin-left: 3.75rem; } }

@media screen and (min-width: 90em) and (min-width: 90em) {
  .ml-xxlarge-3 {
    margin-left: 3.75rem !important; } }

@media screen and (min-width: 90em) {
  .mall-3 {
    margin-all: 3.75rem; } }

@media screen and (min-width: 90em) and (min-width: 90em) {
  .mall-xxlarge-3 {
    margin-all: 3.75rem !important; } }

@media screen and (min-width: 90em) {
  .pt-3 {
    padding-top: 3.75rem; } }

@media screen and (min-width: 90em) and (min-width: 90em) {
  .pt-xxlarge-3 {
    padding-top: 3.75rem !important; } }

@media screen and (min-width: 90em) {
  .pr-3 {
    padding-right: 3.75rem; } }

@media screen and (min-width: 90em) and (min-width: 90em) {
  .pr-xxlarge-3 {
    padding-right: 3.75rem !important; } }

@media screen and (min-width: 90em) {
  .pb-3 {
    padding-bottom: 3.75rem; } }

@media screen and (min-width: 90em) and (min-width: 90em) {
  .pb-xxlarge-3 {
    padding-bottom: 3.75rem !important; } }

@media screen and (min-width: 90em) {
  .pl-3 {
    padding-left: 3.75rem; } }

@media screen and (min-width: 90em) and (min-width: 90em) {
  .pl-xxlarge-3 {
    padding-left: 3.75rem !important; } }

@media screen and (min-width: 90em) {
  .pall-3 {
    padding-all: 3.75rem; } }

@media screen and (min-width: 90em) and (min-width: 90em) {
  .pall-xxlarge-3 {
    padding-all: 3.75rem !important; } }

.mt-4 {
  margin-top: 8.75rem; }

.mr-4 {
  margin-right: 8.75rem; }

.mb-4 {
  margin-bottom: 8.75rem; }

.ml-4 {
  margin-left: 8.75rem; }

.mall-4 {
  margin-all: 8.75rem; }

.pt-4 {
  padding-top: 8.75rem; }

.pr-4 {
  padding-right: 8.75rem; }

.pb-4 {
  padding-bottom: 8.75rem; }

.pl-4 {
  padding-left: 8.75rem; }

.pall-4 {
  padding-all: 8.75rem; }

@media print, screen and (min-width: 40em) {
  .mt-4 {
    margin-top: 6.25rem; } }

@media print, screen and (min-width: 40em) and (min-width: 40em) {
  .mt-medium-4 {
    margin-top: 6.25rem !important; } }

@media print, screen and (min-width: 40em) {
  .mr-4 {
    margin-right: 6.25rem; } }

@media print, screen and (min-width: 40em) and (min-width: 40em) {
  .mr-medium-4 {
    margin-right: 6.25rem !important; } }

@media print, screen and (min-width: 40em) {
  .mb-4 {
    margin-bottom: 6.25rem; } }

@media print, screen and (min-width: 40em) and (min-width: 40em) {
  .mb-medium-4 {
    margin-bottom: 6.25rem !important; } }

@media print, screen and (min-width: 40em) {
  .ml-4 {
    margin-left: 6.25rem; } }

@media print, screen and (min-width: 40em) and (min-width: 40em) {
  .ml-medium-4 {
    margin-left: 6.25rem !important; } }

@media print, screen and (min-width: 40em) {
  .mall-4 {
    margin-all: 6.25rem; } }

@media print, screen and (min-width: 40em) and (min-width: 40em) {
  .mall-medium-4 {
    margin-all: 6.25rem !important; } }

@media print, screen and (min-width: 40em) {
  .pt-4 {
    padding-top: 6.25rem; } }

@media print, screen and (min-width: 40em) and (min-width: 40em) {
  .pt-medium-4 {
    padding-top: 6.25rem !important; } }

@media print, screen and (min-width: 40em) {
  .pr-4 {
    padding-right: 6.25rem; } }

@media print, screen and (min-width: 40em) and (min-width: 40em) {
  .pr-medium-4 {
    padding-right: 6.25rem !important; } }

@media print, screen and (min-width: 40em) {
  .pb-4 {
    padding-bottom: 6.25rem; } }

@media print, screen and (min-width: 40em) and (min-width: 40em) {
  .pb-medium-4 {
    padding-bottom: 6.25rem !important; } }

@media print, screen and (min-width: 40em) {
  .pl-4 {
    padding-left: 6.25rem; } }

@media print, screen and (min-width: 40em) and (min-width: 40em) {
  .pl-medium-4 {
    padding-left: 6.25rem !important; } }

@media print, screen and (min-width: 40em) {
  .pall-4 {
    padding-all: 6.25rem; } }

@media print, screen and (min-width: 40em) and (min-width: 40em) {
  .pall-medium-4 {
    padding-all: 6.25rem !important; } }

@media print, screen and (min-width: 64em) {
  .mt-4 {
    margin-top: 6.25rem; } }

@media print, screen and (min-width: 64em) and (min-width: 64em) {
  .mt-large-4 {
    margin-top: 6.25rem !important; } }

@media print, screen and (min-width: 64em) {
  .mr-4 {
    margin-right: 6.25rem; } }

@media print, screen and (min-width: 64em) and (min-width: 64em) {
  .mr-large-4 {
    margin-right: 6.25rem !important; } }

@media print, screen and (min-width: 64em) {
  .mb-4 {
    margin-bottom: 6.25rem; } }

@media print, screen and (min-width: 64em) and (min-width: 64em) {
  .mb-large-4 {
    margin-bottom: 6.25rem !important; } }

@media print, screen and (min-width: 64em) {
  .ml-4 {
    margin-left: 6.25rem; } }

@media print, screen and (min-width: 64em) and (min-width: 64em) {
  .ml-large-4 {
    margin-left: 6.25rem !important; } }

@media print, screen and (min-width: 64em) {
  .mall-4 {
    margin-all: 6.25rem; } }

@media print, screen and (min-width: 64em) and (min-width: 64em) {
  .mall-large-4 {
    margin-all: 6.25rem !important; } }

@media print, screen and (min-width: 64em) {
  .pt-4 {
    padding-top: 6.25rem; } }

@media print, screen and (min-width: 64em) and (min-width: 64em) {
  .pt-large-4 {
    padding-top: 6.25rem !important; } }

@media print, screen and (min-width: 64em) {
  .pr-4 {
    padding-right: 6.25rem; } }

@media print, screen and (min-width: 64em) and (min-width: 64em) {
  .pr-large-4 {
    padding-right: 6.25rem !important; } }

@media print, screen and (min-width: 64em) {
  .pb-4 {
    padding-bottom: 6.25rem; } }

@media print, screen and (min-width: 64em) and (min-width: 64em) {
  .pb-large-4 {
    padding-bottom: 6.25rem !important; } }

@media print, screen and (min-width: 64em) {
  .pl-4 {
    padding-left: 6.25rem; } }

@media print, screen and (min-width: 64em) and (min-width: 64em) {
  .pl-large-4 {
    padding-left: 6.25rem !important; } }

@media print, screen and (min-width: 64em) {
  .pall-4 {
    padding-all: 6.25rem; } }

@media print, screen and (min-width: 64em) and (min-width: 64em) {
  .pall-large-4 {
    padding-all: 6.25rem !important; } }

@media screen and (min-width: 75em) {
  .mt-4 {
    margin-top: 7.5rem; } }

@media screen and (min-width: 75em) and (min-width: 75em) {
  .mt-xlarge-4 {
    margin-top: 7.5rem !important; } }

@media screen and (min-width: 75em) {
  .mr-4 {
    margin-right: 7.5rem; } }

@media screen and (min-width: 75em) and (min-width: 75em) {
  .mr-xlarge-4 {
    margin-right: 7.5rem !important; } }

@media screen and (min-width: 75em) {
  .mb-4 {
    margin-bottom: 7.5rem; } }

@media screen and (min-width: 75em) and (min-width: 75em) {
  .mb-xlarge-4 {
    margin-bottom: 7.5rem !important; } }

@media screen and (min-width: 75em) {
  .ml-4 {
    margin-left: 7.5rem; } }

@media screen and (min-width: 75em) and (min-width: 75em) {
  .ml-xlarge-4 {
    margin-left: 7.5rem !important; } }

@media screen and (min-width: 75em) {
  .mall-4 {
    margin-all: 7.5rem; } }

@media screen and (min-width: 75em) and (min-width: 75em) {
  .mall-xlarge-4 {
    margin-all: 7.5rem !important; } }

@media screen and (min-width: 75em) {
  .pt-4 {
    padding-top: 7.5rem; } }

@media screen and (min-width: 75em) and (min-width: 75em) {
  .pt-xlarge-4 {
    padding-top: 7.5rem !important; } }

@media screen and (min-width: 75em) {
  .pr-4 {
    padding-right: 7.5rem; } }

@media screen and (min-width: 75em) and (min-width: 75em) {
  .pr-xlarge-4 {
    padding-right: 7.5rem !important; } }

@media screen and (min-width: 75em) {
  .pb-4 {
    padding-bottom: 7.5rem; } }

@media screen and (min-width: 75em) and (min-width: 75em) {
  .pb-xlarge-4 {
    padding-bottom: 7.5rem !important; } }

@media screen and (min-width: 75em) {
  .pl-4 {
    padding-left: 7.5rem; } }

@media screen and (min-width: 75em) and (min-width: 75em) {
  .pl-xlarge-4 {
    padding-left: 7.5rem !important; } }

@media screen and (min-width: 75em) {
  .pall-4 {
    padding-all: 7.5rem; } }

@media screen and (min-width: 75em) and (min-width: 75em) {
  .pall-xlarge-4 {
    padding-all: 7.5rem !important; } }

@media screen and (min-width: 90em) {
  .mt-4 {
    margin-top: 7.5rem; } }

@media screen and (min-width: 90em) and (min-width: 90em) {
  .mt-xxlarge-4 {
    margin-top: 7.5rem !important; } }

@media screen and (min-width: 90em) {
  .mr-4 {
    margin-right: 7.5rem; } }

@media screen and (min-width: 90em) and (min-width: 90em) {
  .mr-xxlarge-4 {
    margin-right: 7.5rem !important; } }

@media screen and (min-width: 90em) {
  .mb-4 {
    margin-bottom: 7.5rem; } }

@media screen and (min-width: 90em) and (min-width: 90em) {
  .mb-xxlarge-4 {
    margin-bottom: 7.5rem !important; } }

@media screen and (min-width: 90em) {
  .ml-4 {
    margin-left: 7.5rem; } }

@media screen and (min-width: 90em) and (min-width: 90em) {
  .ml-xxlarge-4 {
    margin-left: 7.5rem !important; } }

@media screen and (min-width: 90em) {
  .mall-4 {
    margin-all: 7.5rem; } }

@media screen and (min-width: 90em) and (min-width: 90em) {
  .mall-xxlarge-4 {
    margin-all: 7.5rem !important; } }

@media screen and (min-width: 90em) {
  .pt-4 {
    padding-top: 7.5rem; } }

@media screen and (min-width: 90em) and (min-width: 90em) {
  .pt-xxlarge-4 {
    padding-top: 7.5rem !important; } }

@media screen and (min-width: 90em) {
  .pr-4 {
    padding-right: 7.5rem; } }

@media screen and (min-width: 90em) and (min-width: 90em) {
  .pr-xxlarge-4 {
    padding-right: 7.5rem !important; } }

@media screen and (min-width: 90em) {
  .pb-4 {
    padding-bottom: 7.5rem; } }

@media screen and (min-width: 90em) and (min-width: 90em) {
  .pb-xxlarge-4 {
    padding-bottom: 7.5rem !important; } }

@media screen and (min-width: 90em) {
  .pl-4 {
    padding-left: 7.5rem; } }

@media screen and (min-width: 90em) and (min-width: 90em) {
  .pl-xxlarge-4 {
    padding-left: 7.5rem !important; } }

@media screen and (min-width: 90em) {
  .pall-4 {
    padding-all: 7.5rem; } }

@media screen and (min-width: 90em) and (min-width: 90em) {
  .pall-xxlarge-4 {
    padding-all: 7.5rem !important; } }

.mt-5 {
  margin-top: 13.125rem; }

.mr-5 {
  margin-right: 13.125rem; }

.mb-5 {
  margin-bottom: 13.125rem; }

.ml-5 {
  margin-left: 13.125rem; }

.mall-5 {
  margin-all: 13.125rem; }

.pt-5 {
  padding-top: 13.125rem; }

.pr-5 {
  padding-right: 13.125rem; }

.pb-5 {
  padding-bottom: 13.125rem; }

.pl-5 {
  padding-left: 13.125rem; }

.pall-5 {
  padding-all: 13.125rem; }

@media print, screen and (min-width: 40em) {
  .mt-5 {
    margin-top: 9.375rem; } }

@media print, screen and (min-width: 40em) and (min-width: 40em) {
  .mt-medium-5 {
    margin-top: 9.375rem !important; } }

@media print, screen and (min-width: 40em) {
  .mr-5 {
    margin-right: 9.375rem; } }

@media print, screen and (min-width: 40em) and (min-width: 40em) {
  .mr-medium-5 {
    margin-right: 9.375rem !important; } }

@media print, screen and (min-width: 40em) {
  .mb-5 {
    margin-bottom: 9.375rem; } }

@media print, screen and (min-width: 40em) and (min-width: 40em) {
  .mb-medium-5 {
    margin-bottom: 9.375rem !important; } }

@media print, screen and (min-width: 40em) {
  .ml-5 {
    margin-left: 9.375rem; } }

@media print, screen and (min-width: 40em) and (min-width: 40em) {
  .ml-medium-5 {
    margin-left: 9.375rem !important; } }

@media print, screen and (min-width: 40em) {
  .mall-5 {
    margin-all: 9.375rem; } }

@media print, screen and (min-width: 40em) and (min-width: 40em) {
  .mall-medium-5 {
    margin-all: 9.375rem !important; } }

@media print, screen and (min-width: 40em) {
  .pt-5 {
    padding-top: 9.375rem; } }

@media print, screen and (min-width: 40em) and (min-width: 40em) {
  .pt-medium-5 {
    padding-top: 9.375rem !important; } }

@media print, screen and (min-width: 40em) {
  .pr-5 {
    padding-right: 9.375rem; } }

@media print, screen and (min-width: 40em) and (min-width: 40em) {
  .pr-medium-5 {
    padding-right: 9.375rem !important; } }

@media print, screen and (min-width: 40em) {
  .pb-5 {
    padding-bottom: 9.375rem; } }

@media print, screen and (min-width: 40em) and (min-width: 40em) {
  .pb-medium-5 {
    padding-bottom: 9.375rem !important; } }

@media print, screen and (min-width: 40em) {
  .pl-5 {
    padding-left: 9.375rem; } }

@media print, screen and (min-width: 40em) and (min-width: 40em) {
  .pl-medium-5 {
    padding-left: 9.375rem !important; } }

@media print, screen and (min-width: 40em) {
  .pall-5 {
    padding-all: 9.375rem; } }

@media print, screen and (min-width: 40em) and (min-width: 40em) {
  .pall-medium-5 {
    padding-all: 9.375rem !important; } }

@media print, screen and (min-width: 64em) {
  .mt-5 {
    margin-top: 9.375rem; } }

@media print, screen and (min-width: 64em) and (min-width: 64em) {
  .mt-large-5 {
    margin-top: 9.375rem !important; } }

@media print, screen and (min-width: 64em) {
  .mr-5 {
    margin-right: 9.375rem; } }

@media print, screen and (min-width: 64em) and (min-width: 64em) {
  .mr-large-5 {
    margin-right: 9.375rem !important; } }

@media print, screen and (min-width: 64em) {
  .mb-5 {
    margin-bottom: 9.375rem; } }

@media print, screen and (min-width: 64em) and (min-width: 64em) {
  .mb-large-5 {
    margin-bottom: 9.375rem !important; } }

@media print, screen and (min-width: 64em) {
  .ml-5 {
    margin-left: 9.375rem; } }

@media print, screen and (min-width: 64em) and (min-width: 64em) {
  .ml-large-5 {
    margin-left: 9.375rem !important; } }

@media print, screen and (min-width: 64em) {
  .mall-5 {
    margin-all: 9.375rem; } }

@media print, screen and (min-width: 64em) and (min-width: 64em) {
  .mall-large-5 {
    margin-all: 9.375rem !important; } }

@media print, screen and (min-width: 64em) {
  .pt-5 {
    padding-top: 9.375rem; } }

@media print, screen and (min-width: 64em) and (min-width: 64em) {
  .pt-large-5 {
    padding-top: 9.375rem !important; } }

@media print, screen and (min-width: 64em) {
  .pr-5 {
    padding-right: 9.375rem; } }

@media print, screen and (min-width: 64em) and (min-width: 64em) {
  .pr-large-5 {
    padding-right: 9.375rem !important; } }

@media print, screen and (min-width: 64em) {
  .pb-5 {
    padding-bottom: 9.375rem; } }

@media print, screen and (min-width: 64em) and (min-width: 64em) {
  .pb-large-5 {
    padding-bottom: 9.375rem !important; } }

@media print, screen and (min-width: 64em) {
  .pl-5 {
    padding-left: 9.375rem; } }

@media print, screen and (min-width: 64em) and (min-width: 64em) {
  .pl-large-5 {
    padding-left: 9.375rem !important; } }

@media print, screen and (min-width: 64em) {
  .pall-5 {
    padding-all: 9.375rem; } }

@media print, screen and (min-width: 64em) and (min-width: 64em) {
  .pall-large-5 {
    padding-all: 9.375rem !important; } }

@media screen and (min-width: 75em) {
  .mt-5 {
    margin-top: 11.25rem; } }

@media screen and (min-width: 75em) and (min-width: 75em) {
  .mt-xlarge-5 {
    margin-top: 11.25rem !important; } }

@media screen and (min-width: 75em) {
  .mr-5 {
    margin-right: 11.25rem; } }

@media screen and (min-width: 75em) and (min-width: 75em) {
  .mr-xlarge-5 {
    margin-right: 11.25rem !important; } }

@media screen and (min-width: 75em) {
  .mb-5 {
    margin-bottom: 11.25rem; } }

@media screen and (min-width: 75em) and (min-width: 75em) {
  .mb-xlarge-5 {
    margin-bottom: 11.25rem !important; } }

@media screen and (min-width: 75em) {
  .ml-5 {
    margin-left: 11.25rem; } }

@media screen and (min-width: 75em) and (min-width: 75em) {
  .ml-xlarge-5 {
    margin-left: 11.25rem !important; } }

@media screen and (min-width: 75em) {
  .mall-5 {
    margin-all: 11.25rem; } }

@media screen and (min-width: 75em) and (min-width: 75em) {
  .mall-xlarge-5 {
    margin-all: 11.25rem !important; } }

@media screen and (min-width: 75em) {
  .pt-5 {
    padding-top: 11.25rem; } }

@media screen and (min-width: 75em) and (min-width: 75em) {
  .pt-xlarge-5 {
    padding-top: 11.25rem !important; } }

@media screen and (min-width: 75em) {
  .pr-5 {
    padding-right: 11.25rem; } }

@media screen and (min-width: 75em) and (min-width: 75em) {
  .pr-xlarge-5 {
    padding-right: 11.25rem !important; } }

@media screen and (min-width: 75em) {
  .pb-5 {
    padding-bottom: 11.25rem; } }

@media screen and (min-width: 75em) and (min-width: 75em) {
  .pb-xlarge-5 {
    padding-bottom: 11.25rem !important; } }

@media screen and (min-width: 75em) {
  .pl-5 {
    padding-left: 11.25rem; } }

@media screen and (min-width: 75em) and (min-width: 75em) {
  .pl-xlarge-5 {
    padding-left: 11.25rem !important; } }

@media screen and (min-width: 75em) {
  .pall-5 {
    padding-all: 11.25rem; } }

@media screen and (min-width: 75em) and (min-width: 75em) {
  .pall-xlarge-5 {
    padding-all: 11.25rem !important; } }

@media screen and (min-width: 90em) {
  .mt-5 {
    margin-top: 11.25rem; } }

@media screen and (min-width: 90em) and (min-width: 90em) {
  .mt-xxlarge-5 {
    margin-top: 11.25rem !important; } }

@media screen and (min-width: 90em) {
  .mr-5 {
    margin-right: 11.25rem; } }

@media screen and (min-width: 90em) and (min-width: 90em) {
  .mr-xxlarge-5 {
    margin-right: 11.25rem !important; } }

@media screen and (min-width: 90em) {
  .mb-5 {
    margin-bottom: 11.25rem; } }

@media screen and (min-width: 90em) and (min-width: 90em) {
  .mb-xxlarge-5 {
    margin-bottom: 11.25rem !important; } }

@media screen and (min-width: 90em) {
  .ml-5 {
    margin-left: 11.25rem; } }

@media screen and (min-width: 90em) and (min-width: 90em) {
  .ml-xxlarge-5 {
    margin-left: 11.25rem !important; } }

@media screen and (min-width: 90em) {
  .mall-5 {
    margin-all: 11.25rem; } }

@media screen and (min-width: 90em) and (min-width: 90em) {
  .mall-xxlarge-5 {
    margin-all: 11.25rem !important; } }

@media screen and (min-width: 90em) {
  .pt-5 {
    padding-top: 11.25rem; } }

@media screen and (min-width: 90em) and (min-width: 90em) {
  .pt-xxlarge-5 {
    padding-top: 11.25rem !important; } }

@media screen and (min-width: 90em) {
  .pr-5 {
    padding-right: 11.25rem; } }

@media screen and (min-width: 90em) and (min-width: 90em) {
  .pr-xxlarge-5 {
    padding-right: 11.25rem !important; } }

@media screen and (min-width: 90em) {
  .pb-5 {
    padding-bottom: 11.25rem; } }

@media screen and (min-width: 90em) and (min-width: 90em) {
  .pb-xxlarge-5 {
    padding-bottom: 11.25rem !important; } }

@media screen and (min-width: 90em) {
  .pl-5 {
    padding-left: 11.25rem; } }

@media screen and (min-width: 90em) and (min-width: 90em) {
  .pl-xxlarge-5 {
    padding-left: 11.25rem !important; } }

@media screen and (min-width: 90em) {
  .pall-5 {
    padding-all: 11.25rem; } }

@media screen and (min-width: 90em) and (min-width: 90em) {
  .pall-xxlarge-5 {
    padding-all: 11.25rem !important; } }

.mt-1_8pt {
  margin-top: 0.5rem; }

.mr-1_8pt {
  margin-right: 0.5rem; }

.mb-1_8pt {
  margin-bottom: 0.5rem; }

.ml-1_8pt {
  margin-left: 0.5rem; }

.mall-1_8pt {
  margin-all: 0.5rem; }

.pt-1_8pt {
  padding-top: 0.5rem; }

.pr-1_8pt {
  padding-right: 0.5rem; }

.pb-1_8pt {
  padding-bottom: 0.5rem; }

.pl-1_8pt {
  padding-left: 0.5rem; }

.pall-1_8pt {
  padding-all: 0.5rem; }

.mt-2_8pt {
  margin-top: 1rem; }

.mr-2_8pt {
  margin-right: 1rem; }

.mb-2_8pt {
  margin-bottom: 1rem; }

.ml-2_8pt {
  margin-left: 1rem; }

.mall-2_8pt {
  margin-all: 1rem; }

.pt-2_8pt {
  padding-top: 1rem; }

.pr-2_8pt {
  padding-right: 1rem; }

.pb-2_8pt {
  padding-bottom: 1rem; }

.pl-2_8pt {
  padding-left: 1rem; }

.pall-2_8pt {
  padding-all: 1rem; }

.mt-3_8pt {
  margin-top: 1.5rem; }

.mr-3_8pt {
  margin-right: 1.5rem; }

.mb-3_8pt {
  margin-bottom: 1.5rem; }

.ml-3_8pt {
  margin-left: 1.5rem; }

.mall-3_8pt {
  margin-all: 1.5rem; }

.pt-3_8pt {
  padding-top: 1.5rem; }

.pr-3_8pt {
  padding-right: 1.5rem; }

.pb-3_8pt {
  padding-bottom: 1.5rem; }

.pl-3_8pt {
  padding-left: 1.5rem; }

.pall-3_8pt {
  padding-all: 1.5rem; }

.mt-4_8pt {
  margin-top: 2rem; }

.mr-4_8pt {
  margin-right: 2rem; }

.mb-4_8pt {
  margin-bottom: 2rem; }

.ml-4_8pt {
  margin-left: 2rem; }

.mall-4_8pt {
  margin-all: 2rem; }

.pt-4_8pt {
  padding-top: 2rem; }

.pr-4_8pt {
  padding-right: 2rem; }

.pb-4_8pt {
  padding-bottom: 2rem; }

.pl-4_8pt {
  padding-left: 2rem; }

.pall-4_8pt {
  padding-all: 2rem; }

.mt-5_8pt {
  margin-top: 2.5rem; }

.mr-5_8pt {
  margin-right: 2.5rem; }

.mb-5_8pt {
  margin-bottom: 2.5rem; }

.ml-5_8pt {
  margin-left: 2.5rem; }

.mall-5_8pt {
  margin-all: 2.5rem; }

.pt-5_8pt {
  padding-top: 2.5rem; }

.pr-5_8pt {
  padding-right: 2.5rem; }

.pb-5_8pt {
  padding-bottom: 2.5rem; }

.pl-5_8pt {
  padding-left: 2.5rem; }

.pall-5_8pt {
  padding-all: 2.5rem; }

.mt-6_8pt {
  margin-top: 3rem; }

.mr-6_8pt {
  margin-right: 3rem; }

.mb-6_8pt {
  margin-bottom: 3rem; }

.ml-6_8pt {
  margin-left: 3rem; }

.mall-6_8pt {
  margin-all: 3rem; }

.pt-6_8pt {
  padding-top: 3rem; }

.pr-6_8pt {
  padding-right: 3rem; }

.pb-6_8pt {
  padding-bottom: 3rem; }

.pl-6_8pt {
  padding-left: 3rem; }

.pall-6_8pt {
  padding-all: 3rem; }

.mt-7_8pt {
  margin-top: 3.5rem; }

.mr-7_8pt {
  margin-right: 3.5rem; }

.mb-7_8pt {
  margin-bottom: 3.5rem; }

.ml-7_8pt {
  margin-left: 3.5rem; }

.mall-7_8pt {
  margin-all: 3.5rem; }

.pt-7_8pt {
  padding-top: 3.5rem; }

.pr-7_8pt {
  padding-right: 3.5rem; }

.pb-7_8pt {
  padding-bottom: 3.5rem; }

.pl-7_8pt {
  padding-left: 3.5rem; }

.pall-7_8pt {
  padding-all: 3.5rem; }

.mt-8_8pt {
  margin-top: 4rem; }

.mr-8_8pt {
  margin-right: 4rem; }

.mb-8_8pt {
  margin-bottom: 4rem; }

.ml-8_8pt {
  margin-left: 4rem; }

.mall-8_8pt {
  margin-all: 4rem; }

.pt-8_8pt {
  padding-top: 4rem; }

.pr-8_8pt {
  padding-right: 4rem; }

.pb-8_8pt {
  padding-bottom: 4rem; }

.pl-8_8pt {
  padding-left: 4rem; }

.pall-8_8pt {
  padding-all: 4rem; }

.mt-9_8pt {
  margin-top: 4.5rem; }

.mr-9_8pt {
  margin-right: 4.5rem; }

.mb-9_8pt {
  margin-bottom: 4.5rem; }

.ml-9_8pt {
  margin-left: 4.5rem; }

.mall-9_8pt {
  margin-all: 4.5rem; }

.pt-9_8pt {
  padding-top: 4.5rem; }

.pr-9_8pt {
  padding-right: 4.5rem; }

.pb-9_8pt {
  padding-bottom: 4.5rem; }

.pl-9_8pt {
  padding-left: 4.5rem; }

.pall-9_8pt {
  padding-all: 4.5rem; }

.mt-10_8pt {
  margin-top: 5rem; }

.mr-10_8pt {
  margin-right: 5rem; }

.mb-10_8pt {
  margin-bottom: 5rem; }

.ml-10_8pt {
  margin-left: 5rem; }

.mall-10_8pt {
  margin-all: 5rem; }

.pt-10_8pt {
  padding-top: 5rem; }

.pr-10_8pt {
  padding-right: 5rem; }

.pb-10_8pt {
  padding-bottom: 5rem; }

.pl-10_8pt {
  padding-left: 5rem; }

.pall-10_8pt {
  padding-all: 5rem; }

.mt-11_8pt {
  margin-top: 5.5rem; }

.mr-11_8pt {
  margin-right: 5.5rem; }

.mb-11_8pt {
  margin-bottom: 5.5rem; }

.ml-11_8pt {
  margin-left: 5.5rem; }

.mall-11_8pt {
  margin-all: 5.5rem; }

.pt-11_8pt {
  padding-top: 5.5rem; }

.pr-11_8pt {
  padding-right: 5.5rem; }

.pb-11_8pt {
  padding-bottom: 5.5rem; }

.pl-11_8pt {
  padding-left: 5.5rem; }

.pall-11_8pt {
  padding-all: 5.5rem; }

.mt-12_8pt {
  margin-top: 6rem; }

.mr-12_8pt {
  margin-right: 6rem; }

.mb-12_8pt {
  margin-bottom: 6rem; }

.ml-12_8pt {
  margin-left: 6rem; }

.mall-12_8pt {
  margin-all: 6rem; }

.pt-12_8pt {
  padding-top: 6rem; }

.pr-12_8pt {
  padding-right: 6rem; }

.pb-12_8pt {
  padding-bottom: 6rem; }

.pl-12_8pt {
  padding-left: 6rem; }

.pall-12_8pt {
  padding-all: 6rem; }

.mt-13_8pt {
  margin-top: 6.5rem; }

.mr-13_8pt {
  margin-right: 6.5rem; }

.mb-13_8pt {
  margin-bottom: 6.5rem; }

.ml-13_8pt {
  margin-left: 6.5rem; }

.mall-13_8pt {
  margin-all: 6.5rem; }

.pt-13_8pt {
  padding-top: 6.5rem; }

.pr-13_8pt {
  padding-right: 6.5rem; }

.pb-13_8pt {
  padding-bottom: 6.5rem; }

.pl-13_8pt {
  padding-left: 6.5rem; }

.pall-13_8pt {
  padding-all: 6.5rem; }

.mt-14_8pt {
  margin-top: 7rem; }

.mr-14_8pt {
  margin-right: 7rem; }

.mb-14_8pt {
  margin-bottom: 7rem; }

.ml-14_8pt {
  margin-left: 7rem; }

.mall-14_8pt {
  margin-all: 7rem; }

.pt-14_8pt {
  padding-top: 7rem; }

.pr-14_8pt {
  padding-right: 7rem; }

.pb-14_8pt {
  padding-bottom: 7rem; }

.pl-14_8pt {
  padding-left: 7rem; }

.pall-14_8pt {
  padding-all: 7rem; }

.mt-15_8pt {
  margin-top: 7.5rem; }

.mr-15_8pt {
  margin-right: 7.5rem; }

.mb-15_8pt {
  margin-bottom: 7.5rem; }

.ml-15_8pt {
  margin-left: 7.5rem; }

.mall-15_8pt {
  margin-all: 7.5rem; }

.pt-15_8pt {
  padding-top: 7.5rem; }

.pr-15_8pt {
  padding-right: 7.5rem; }

.pb-15_8pt {
  padding-bottom: 7.5rem; }

.pl-15_8pt {
  padding-left: 7.5rem; }

.pall-15_8pt {
  padding-all: 7.5rem; }

.mt-16_8pt {
  margin-top: 8rem; }

.mr-16_8pt {
  margin-right: 8rem; }

.mb-16_8pt {
  margin-bottom: 8rem; }

.ml-16_8pt {
  margin-left: 8rem; }

.mall-16_8pt {
  margin-all: 8rem; }

.pt-16_8pt {
  padding-top: 8rem; }

.pr-16_8pt {
  padding-right: 8rem; }

.pb-16_8pt {
  padding-bottom: 8rem; }

.pl-16_8pt {
  padding-left: 8rem; }

.pall-16_8pt {
  padding-all: 8rem; }

.mt-17_8pt {
  margin-top: 8.5rem; }

.mr-17_8pt {
  margin-right: 8.5rem; }

.mb-17_8pt {
  margin-bottom: 8.5rem; }

.ml-17_8pt {
  margin-left: 8.5rem; }

.mall-17_8pt {
  margin-all: 8.5rem; }

.pt-17_8pt {
  padding-top: 8.5rem; }

.pr-17_8pt {
  padding-right: 8.5rem; }

.pb-17_8pt {
  padding-bottom: 8.5rem; }

.pl-17_8pt {
  padding-left: 8.5rem; }

.pall-17_8pt {
  padding-all: 8.5rem; }

.mt-18_8pt {
  margin-top: 9rem; }

.mr-18_8pt {
  margin-right: 9rem; }

.mb-18_8pt {
  margin-bottom: 9rem; }

.ml-18_8pt {
  margin-left: 9rem; }

.mall-18_8pt {
  margin-all: 9rem; }

.pt-18_8pt {
  padding-top: 9rem; }

.pr-18_8pt {
  padding-right: 9rem; }

.pb-18_8pt {
  padding-bottom: 9rem; }

.pl-18_8pt {
  padding-left: 9rem; }

.pall-18_8pt {
  padding-all: 9rem; }

.mt-19_8pt {
  margin-top: 9.5rem; }

.mr-19_8pt {
  margin-right: 9.5rem; }

.mb-19_8pt {
  margin-bottom: 9.5rem; }

.ml-19_8pt {
  margin-left: 9.5rem; }

.mall-19_8pt {
  margin-all: 9.5rem; }

.pt-19_8pt {
  padding-top: 9.5rem; }

.pr-19_8pt {
  padding-right: 9.5rem; }

.pb-19_8pt {
  padding-bottom: 9.5rem; }

.pl-19_8pt {
  padding-left: 9.5rem; }

.pall-19_8pt {
  padding-all: 9.5rem; }

.mt-20_8pt {
  margin-top: 10rem; }

.mr-20_8pt {
  margin-right: 10rem; }

.mb-20_8pt {
  margin-bottom: 10rem; }

.ml-20_8pt {
  margin-left: 10rem; }

.mall-20_8pt {
  margin-all: 10rem; }

.pt-20_8pt {
  padding-top: 10rem; }

.pr-20_8pt {
  padding-right: 10rem; }

.pb-20_8pt {
  padding-bottom: 10rem; }

.pl-20_8pt {
  padding-left: 10rem; }

.pall-20_8pt {
  padding-all: 10rem; }

.mt-21_8pt {
  margin-top: 10.5rem; }

.mr-21_8pt {
  margin-right: 10.5rem; }

.mb-21_8pt {
  margin-bottom: 10.5rem; }

.ml-21_8pt {
  margin-left: 10.5rem; }

.mall-21_8pt {
  margin-all: 10.5rem; }

.pt-21_8pt {
  padding-top: 10.5rem; }

.pr-21_8pt {
  padding-right: 10.5rem; }

.pb-21_8pt {
  padding-bottom: 10.5rem; }

.pl-21_8pt {
  padding-left: 10.5rem; }

.pall-21_8pt {
  padding-all: 10.5rem; }

.mt-22_8pt {
  margin-top: 11rem; }

.mr-22_8pt {
  margin-right: 11rem; }

.mb-22_8pt {
  margin-bottom: 11rem; }

.ml-22_8pt {
  margin-left: 11rem; }

.mall-22_8pt {
  margin-all: 11rem; }

.pt-22_8pt {
  padding-top: 11rem; }

.pr-22_8pt {
  padding-right: 11rem; }

.pb-22_8pt {
  padding-bottom: 11rem; }

.pl-22_8pt {
  padding-left: 11rem; }

.pall-22_8pt {
  padding-all: 11rem; }

.mt-23_8pt {
  margin-top: 11.5rem; }

.mr-23_8pt {
  margin-right: 11.5rem; }

.mb-23_8pt {
  margin-bottom: 11.5rem; }

.ml-23_8pt {
  margin-left: 11.5rem; }

.mall-23_8pt {
  margin-all: 11.5rem; }

.pt-23_8pt {
  padding-top: 11.5rem; }

.pr-23_8pt {
  padding-right: 11.5rem; }

.pb-23_8pt {
  padding-bottom: 11.5rem; }

.pl-23_8pt {
  padding-left: 11.5rem; }

.pall-23_8pt {
  padding-all: 11.5rem; }

.mt-24_8pt {
  margin-top: 12rem; }

.mr-24_8pt {
  margin-right: 12rem; }

.mb-24_8pt {
  margin-bottom: 12rem; }

.ml-24_8pt {
  margin-left: 12rem; }

.mall-24_8pt {
  margin-all: 12rem; }

.pt-24_8pt {
  padding-top: 12rem; }

.pr-24_8pt {
  padding-right: 12rem; }

.pb-24_8pt {
  padding-bottom: 12rem; }

.pl-24_8pt {
  padding-left: 12rem; }

.pall-24_8pt {
  padding-all: 12rem; }

.mt-25_8pt {
  margin-top: 12.5rem; }

.mr-25_8pt {
  margin-right: 12.5rem; }

.mb-25_8pt {
  margin-bottom: 12.5rem; }

.ml-25_8pt {
  margin-left: 12.5rem; }

.mall-25_8pt {
  margin-all: 12.5rem; }

.pt-25_8pt {
  padding-top: 12.5rem; }

.pr-25_8pt {
  padding-right: 12.5rem; }

.pb-25_8pt {
  padding-bottom: 12.5rem; }

.pl-25_8pt {
  padding-left: 12.5rem; }

.pall-25_8pt {
  padding-all: 12.5rem; }

.mt-26_8pt {
  margin-top: 13rem; }

.mr-26_8pt {
  margin-right: 13rem; }

.mb-26_8pt {
  margin-bottom: 13rem; }

.ml-26_8pt {
  margin-left: 13rem; }

.mall-26_8pt {
  margin-all: 13rem; }

.pt-26_8pt {
  padding-top: 13rem; }

.pr-26_8pt {
  padding-right: 13rem; }

.pb-26_8pt {
  padding-bottom: 13rem; }

.pl-26_8pt {
  padding-left: 13rem; }

.pall-26_8pt {
  padding-all: 13rem; }

.mt-27_8pt {
  margin-top: 13.5rem; }

.mr-27_8pt {
  margin-right: 13.5rem; }

.mb-27_8pt {
  margin-bottom: 13.5rem; }

.ml-27_8pt {
  margin-left: 13.5rem; }

.mall-27_8pt {
  margin-all: 13.5rem; }

.pt-27_8pt {
  padding-top: 13.5rem; }

.pr-27_8pt {
  padding-right: 13.5rem; }

.pb-27_8pt {
  padding-bottom: 13.5rem; }

.pl-27_8pt {
  padding-left: 13.5rem; }

.pall-27_8pt {
  padding-all: 13.5rem; }

.mt-28_8pt {
  margin-top: 14rem; }

.mr-28_8pt {
  margin-right: 14rem; }

.mb-28_8pt {
  margin-bottom: 14rem; }

.ml-28_8pt {
  margin-left: 14rem; }

.mall-28_8pt {
  margin-all: 14rem; }

.pt-28_8pt {
  padding-top: 14rem; }

.pr-28_8pt {
  padding-right: 14rem; }

.pb-28_8pt {
  padding-bottom: 14rem; }

.pl-28_8pt {
  padding-left: 14rem; }

.pall-28_8pt {
  padding-all: 14rem; }

.mt-29_8pt {
  margin-top: 14.5rem; }

.mr-29_8pt {
  margin-right: 14.5rem; }

.mb-29_8pt {
  margin-bottom: 14.5rem; }

.ml-29_8pt {
  margin-left: 14.5rem; }

.mall-29_8pt {
  margin-all: 14.5rem; }

.pt-29_8pt {
  padding-top: 14.5rem; }

.pr-29_8pt {
  padding-right: 14.5rem; }

.pb-29_8pt {
  padding-bottom: 14.5rem; }

.pl-29_8pt {
  padding-left: 14.5rem; }

.pall-29_8pt {
  padding-all: 14.5rem; }

.mt-30_8pt {
  margin-top: 15rem; }

.mr-30_8pt {
  margin-right: 15rem; }

.mb-30_8pt {
  margin-bottom: 15rem; }

.ml-30_8pt {
  margin-left: 15rem; }

.mall-30_8pt {
  margin-all: 15rem; }

.pt-30_8pt {
  padding-top: 15rem; }

.pr-30_8pt {
  padding-right: 15rem; }

.pb-30_8pt {
  padding-bottom: 15rem; }

.pl-30_8pt {
  padding-left: 15rem; }

.pall-30_8pt {
  padding-all: 15rem; }

.mt-31_8pt {
  margin-top: 15.5rem; }

.mr-31_8pt {
  margin-right: 15.5rem; }

.mb-31_8pt {
  margin-bottom: 15.5rem; }

.ml-31_8pt {
  margin-left: 15.5rem; }

.mall-31_8pt {
  margin-all: 15.5rem; }

.pt-31_8pt {
  padding-top: 15.5rem; }

.pr-31_8pt {
  padding-right: 15.5rem; }

.pb-31_8pt {
  padding-bottom: 15.5rem; }

.pl-31_8pt {
  padding-left: 15.5rem; }

.pall-31_8pt {
  padding-all: 15.5rem; }

.mt-32_8pt {
  margin-top: 16rem; }

.mr-32_8pt {
  margin-right: 16rem; }

.mb-32_8pt {
  margin-bottom: 16rem; }

.ml-32_8pt {
  margin-left: 16rem; }

.mall-32_8pt {
  margin-all: 16rem; }

.pt-32_8pt {
  padding-top: 16rem; }

.pr-32_8pt {
  padding-right: 16rem; }

.pb-32_8pt {
  padding-bottom: 16rem; }

.pl-32_8pt {
  padding-left: 16rem; }

.pall-32_8pt {
  padding-all: 16rem; }

.mt-33_8pt {
  margin-top: 16.5rem; }

.mr-33_8pt {
  margin-right: 16.5rem; }

.mb-33_8pt {
  margin-bottom: 16.5rem; }

.ml-33_8pt {
  margin-left: 16.5rem; }

.mall-33_8pt {
  margin-all: 16.5rem; }

.pt-33_8pt {
  padding-top: 16.5rem; }

.pr-33_8pt {
  padding-right: 16.5rem; }

.pb-33_8pt {
  padding-bottom: 16.5rem; }

.pl-33_8pt {
  padding-left: 16.5rem; }

.pall-33_8pt {
  padding-all: 16.5rem; }

.mt-34_8pt {
  margin-top: 17rem; }

.mr-34_8pt {
  margin-right: 17rem; }

.mb-34_8pt {
  margin-bottom: 17rem; }

.ml-34_8pt {
  margin-left: 17rem; }

.mall-34_8pt {
  margin-all: 17rem; }

.pt-34_8pt {
  padding-top: 17rem; }

.pr-34_8pt {
  padding-right: 17rem; }

.pb-34_8pt {
  padding-bottom: 17rem; }

.pl-34_8pt {
  padding-left: 17rem; }

.pall-34_8pt {
  padding-all: 17rem; }

.mt-35_8pt {
  margin-top: 17.5rem; }

.mr-35_8pt {
  margin-right: 17.5rem; }

.mb-35_8pt {
  margin-bottom: 17.5rem; }

.ml-35_8pt {
  margin-left: 17.5rem; }

.mall-35_8pt {
  margin-all: 17.5rem; }

.pt-35_8pt {
  padding-top: 17.5rem; }

.pr-35_8pt {
  padding-right: 17.5rem; }

.pb-35_8pt {
  padding-bottom: 17.5rem; }

.pl-35_8pt {
  padding-left: 17.5rem; }

.pall-35_8pt {
  padding-all: 17.5rem; }

.mt-36_8pt {
  margin-top: 18rem; }

.mr-36_8pt {
  margin-right: 18rem; }

.mb-36_8pt {
  margin-bottom: 18rem; }

.ml-36_8pt {
  margin-left: 18rem; }

.mall-36_8pt {
  margin-all: 18rem; }

.pt-36_8pt {
  padding-top: 18rem; }

.pr-36_8pt {
  padding-right: 18rem; }

.pb-36_8pt {
  padding-bottom: 18rem; }

.pl-36_8pt {
  padding-left: 18rem; }

.pall-36_8pt {
  padding-all: 18rem; }

.mt-37_8pt {
  margin-top: 18.5rem; }

.mr-37_8pt {
  margin-right: 18.5rem; }

.mb-37_8pt {
  margin-bottom: 18.5rem; }

.ml-37_8pt {
  margin-left: 18.5rem; }

.mall-37_8pt {
  margin-all: 18.5rem; }

.pt-37_8pt {
  padding-top: 18.5rem; }

.pr-37_8pt {
  padding-right: 18.5rem; }

.pb-37_8pt {
  padding-bottom: 18.5rem; }

.pl-37_8pt {
  padding-left: 18.5rem; }

.pall-37_8pt {
  padding-all: 18.5rem; }

.mt-38_8pt {
  margin-top: 19rem; }

.mr-38_8pt {
  margin-right: 19rem; }

.mb-38_8pt {
  margin-bottom: 19rem; }

.ml-38_8pt {
  margin-left: 19rem; }

.mall-38_8pt {
  margin-all: 19rem; }

.pt-38_8pt {
  padding-top: 19rem; }

.pr-38_8pt {
  padding-right: 19rem; }

.pb-38_8pt {
  padding-bottom: 19rem; }

.pl-38_8pt {
  padding-left: 19rem; }

.pall-38_8pt {
  padding-all: 19rem; }

.mt-39_8pt {
  margin-top: 19.5rem; }

.mr-39_8pt {
  margin-right: 19.5rem; }

.mb-39_8pt {
  margin-bottom: 19.5rem; }

.ml-39_8pt {
  margin-left: 19.5rem; }

.mall-39_8pt {
  margin-all: 19.5rem; }

.pt-39_8pt {
  padding-top: 19.5rem; }

.pr-39_8pt {
  padding-right: 19.5rem; }

.pb-39_8pt {
  padding-bottom: 19.5rem; }

.pl-39_8pt {
  padding-left: 19.5rem; }

.pall-39_8pt {
  padding-all: 19.5rem; }

.mt-40_8pt {
  margin-top: 20rem; }

.mr-40_8pt {
  margin-right: 20rem; }

.mb-40_8pt {
  margin-bottom: 20rem; }

.ml-40_8pt {
  margin-left: 20rem; }

.mall-40_8pt {
  margin-all: 20rem; }

.pt-40_8pt {
  padding-top: 20rem; }

.pr-40_8pt {
  padding-right: 20rem; }

.pb-40_8pt {
  padding-bottom: 20rem; }

.pl-40_8pt {
  padding-left: 20rem; }

.pall-40_8pt {
  padding-all: 20rem; }

.mt-41_8pt {
  margin-top: 20.5rem; }

.mr-41_8pt {
  margin-right: 20.5rem; }

.mb-41_8pt {
  margin-bottom: 20.5rem; }

.ml-41_8pt {
  margin-left: 20.5rem; }

.mall-41_8pt {
  margin-all: 20.5rem; }

.pt-41_8pt {
  padding-top: 20.5rem; }

.pr-41_8pt {
  padding-right: 20.5rem; }

.pb-41_8pt {
  padding-bottom: 20.5rem; }

.pl-41_8pt {
  padding-left: 20.5rem; }

.pall-41_8pt {
  padding-all: 20.5rem; }

.mt-42_8pt {
  margin-top: 21rem; }

.mr-42_8pt {
  margin-right: 21rem; }

.mb-42_8pt {
  margin-bottom: 21rem; }

.ml-42_8pt {
  margin-left: 21rem; }

.mall-42_8pt {
  margin-all: 21rem; }

.pt-42_8pt {
  padding-top: 21rem; }

.pr-42_8pt {
  padding-right: 21rem; }

.pb-42_8pt {
  padding-bottom: 21rem; }

.pl-42_8pt {
  padding-left: 21rem; }

.pall-42_8pt {
  padding-all: 21rem; }

.mt-43_8pt {
  margin-top: 21.5rem; }

.mr-43_8pt {
  margin-right: 21.5rem; }

.mb-43_8pt {
  margin-bottom: 21.5rem; }

.ml-43_8pt {
  margin-left: 21.5rem; }

.mall-43_8pt {
  margin-all: 21.5rem; }

.pt-43_8pt {
  padding-top: 21.5rem; }

.pr-43_8pt {
  padding-right: 21.5rem; }

.pb-43_8pt {
  padding-bottom: 21.5rem; }

.pl-43_8pt {
  padding-left: 21.5rem; }

.pall-43_8pt {
  padding-all: 21.5rem; }

.mt-44_8pt {
  margin-top: 22rem; }

.mr-44_8pt {
  margin-right: 22rem; }

.mb-44_8pt {
  margin-bottom: 22rem; }

.ml-44_8pt {
  margin-left: 22rem; }

.mall-44_8pt {
  margin-all: 22rem; }

.pt-44_8pt {
  padding-top: 22rem; }

.pr-44_8pt {
  padding-right: 22rem; }

.pb-44_8pt {
  padding-bottom: 22rem; }

.pl-44_8pt {
  padding-left: 22rem; }

.pall-44_8pt {
  padding-all: 22rem; }

.text--white {
  color: #ffffff !important; }

.text--almost-white {
  color: #F5F5F5 !important; }

.text--lightest-gray {
  color: #f7f7f7 !important; }

.text--light-gray {
  color: #e6e6e6 !important; }

.text--medium-gray {
  color: #cacaca !important; }

.text--dark-gray {
  color: #8a8a8a !important; }

.text--almost-black {
  color: #212121 !important; }

.text--black {
  color: #000000 !important; }

.text--primary {
  color: #2DC9D7 !important; }

.text--primary-a20 {
  color: rgba(45, 201, 215, 0.2) !important; }

.text--secondary {
  color: #FCB536 !important; }

.bg--white {
  background-color: #ffffff !important; }

.bg--almost-white {
  background-color: #F5F5F5 !important; }

.bg--lightest-gray, .icon-text-grid {
  background-color: #f7f7f7 !important; }

.bg--light-gray {
  background-color: #e6e6e6 !important; }

.bg--medium-gray {
  background-color: #cacaca !important; }

.bg--dark-gray {
  background-color: #8a8a8a !important; }

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

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

.bg--primary {
  background-color: #2DC9D7 !important; }

.bg--primary-a20 {
  background-color: rgba(45, 201, 215, 0.2) !important; }

.bg--secondary {
  background-color: #FCB536 !important; }

.bg--transparent {
  background-color: transparent !important; }

.bg--gradient-primary-primarya20 {
  background: linear-gradient(90deg, #2DC9D7 0%, rgba(45, 201, 215, 0.2) 100%) no-repeat !important; }

.bg--gradient-primary-primarya20-45 {
  background: linear-gradient(45deg, #2DC9D7 0%, rgba(45, 201, 215, 0.2) 100%) no-repeat !important; }

.list-style--none {
  list-style: none;
  margin-left: 0; }

.clearfix::before, .clearfix::after {
  content: ' ';
  display: table;
  clear: both; }

.flex-halign-center {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center; }

.flex-valign-center {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center; }

.has-bg-img, .featured-hero.vip-hero .featured-image {
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  background-color: #f7f7f7; }

/*! normalize-scss | MIT/GPLv2 License | bit.ly/normalize-scss */
/* Document
       ========================================================================== */
/**
     * 1. Change the default font family in all browsers (opinionated).
     * 2. Correct the line height in all browsers.
     * 3. Prevent adjustments of font size after orientation changes in
     *    IE on Windows Phone and in iOS.
     */
html {
  font-family: sans-serif;
  /* 1 */
  line-height: 1.15;
  /* 2 */
  -ms-text-size-adjust: 100%;
  /* 3 */
  -webkit-text-size-adjust: 100%;
  /* 3 */ }

/* Sections
       ========================================================================== */
/**
     * Remove the margin in all browsers (opinionated).
     */
body {
  margin: 0; }

/**
     * Add the correct display in IE 9-.
     */
article,
aside,
footer,
header,
nav,
section {
  display: block; }

/**
     * Correct the font size and margin on `h1` elements within `section` and
     * `article` contexts in Chrome, Firefox, and Safari.
     */
h1 {
  font-size: 2em;
  margin: 0.67em 0; }

/* Grouping content
       ========================================================================== */
/**
     * Add the correct display in IE 9-.
     */
figcaption,
figure {
  display: block; }

/**
     * Add the correct margin in IE 8.
     */
figure {
  margin: 1em 40px; }

/**
     * 1. Add the correct box sizing in Firefox.
     * 2. Show the overflow in Edge and IE.
     */
hr {
  box-sizing: content-box;
  /* 1 */
  height: 0;
  /* 1 */
  overflow: visible;
  /* 2 */ }

/**
     * Add the correct display in IE.
     */
main {
  display: block; }

/**
     * 1. Correct the inheritance and scaling of font size in all browsers.
     * 2. Correct the odd `em` font sizing in all browsers.
     */
pre {
  font-family: monospace, monospace;
  /* 1 */
  font-size: 1em;
  /* 2 */ }

/* Links
       ========================================================================== */
/**
     * 1. Remove the gray background on active links in IE 10.
     * 2. Remove gaps in links underline in iOS 8+ and Safari 8+.
     */
a {
  background-color: transparent;
  /* 1 */
  -webkit-text-decoration-skip: objects;
  /* 2 */ }

/**
     * Remove the outline on focused links when they are also active or hovered
     * in all browsers (opinionated).
     */
a:active,
a:hover {
  outline-width: 0; }

/* Text-level semantics
       ========================================================================== */
/**
     * 1. Remove the bottom border in Firefox 39-.
     * 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.
     */
abbr[title] {
  border-bottom: none;
  /* 1 */
  text-decoration: underline;
  /* 2 */
  text-decoration: underline dotted;
  /* 2 */ }

/**
     * Prevent the duplicate application of `bolder` by the next rule in Safari 6.
     */
b,
strong {
  font-weight: inherit; }

/**
     * Add the correct font weight in Chrome, Edge, and Safari.
     */
b,
strong {
  font-weight: bolder; }

/**
     * 1. Correct the inheritance and scaling of font size in all browsers.
     * 2. Correct the odd `em` font sizing in all browsers.
     */
code,
kbd,
samp {
  font-family: monospace, monospace;
  /* 1 */
  font-size: 1em;
  /* 2 */ }

/**
     * Add the correct font style in Android 4.3-.
     */
dfn {
  font-style: italic; }

/**
     * Add the correct background and color in IE 9-.
     */
mark {
  background-color: #ff0;
  color: #000; }

/**
     * Add the correct font size in all browsers.
     */
small {
  font-size: 80%; }

/**
     * Prevent `sub` and `sup` elements from affecting the line height in
     * all browsers.
     */
sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline; }

sub {
  bottom: -0.25em; }

sup {
  top: -0.5em; }

/* Embedded content
       ========================================================================== */
/**
     * Add the correct display in IE 9-.
     */
audio,
video {
  display: inline-block; }

/**
     * Add the correct display in iOS 4-7.
     */
audio:not([controls]) {
  display: none;
  height: 0; }

/**
     * Remove the border on images inside links in IE 10-.
     */
img {
  border-style: none; }

/**
     * Hide the overflow in IE.
     */
svg:not(:root) {
  overflow: hidden; }

/* Forms
       ========================================================================== */
/**
     * 1. Change the font styles in all browsers (opinionated).
     * 2. Remove the margin in Firefox and Safari.
     */
button,
input,
optgroup,
select,
textarea {
  font-family: sans-serif;
  /* 1 */
  font-size: 100%;
  /* 1 */
  line-height: 1.15;
  /* 1 */
  margin: 0;
  /* 2 */ }

/**
     * Show the overflow in IE.
     */
button {
  overflow: visible; }

/**
     * Remove the inheritance of text transform in Edge, Firefox, and IE.
     * 1. Remove the inheritance of text transform in Firefox.
     */
button,
select {
  /* 1 */
  text-transform: none; }

/**
     * 1. Prevent a WebKit bug where (2) destroys native `audio` and `video`
     *    controls in Android 4.
     * 2. Correct the inability to style clickable types in iOS and Safari.
     */
button,
html [type="button"],
[type="reset"],
[type="submit"] {
  -webkit-appearance: button;
  /* 2 */ }

button,
[type="button"],
[type="reset"],
[type="submit"] {
  /**
       * Remove the inner border and padding in Firefox.
       */
  /**
       * Restore the focus styles unset by the previous rule.
       */ }
  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; }

/**
     * Show the overflow in Edge.
     */
input {
  overflow: visible; }

/**
     * 1. Add the correct box sizing in IE 10-.
     * 2. Remove the padding in IE 10-.
     */
[type="checkbox"],
[type="radio"] {
  box-sizing: border-box;
  /* 1 */
  padding: 0;
  /* 2 */ }

/**
     * Correct the cursor style of increment and decrement buttons in Chrome.
     */
[type="number"]::-webkit-inner-spin-button,
[type="number"]::-webkit-outer-spin-button {
  height: auto; }

/**
     * 1. Correct the odd appearance in Chrome and Safari.
     * 2. Correct the outline style in Safari.
     */
[type="search"] {
  -webkit-appearance: textfield;
  /* 1 */
  outline-offset: -2px;
  /* 2 */
  /**
       * Remove the inner padding and cancel buttons in Chrome and Safari on macOS.
       */ }
  [type="search"]::-webkit-search-cancel-button, [type="search"]::-webkit-search-decoration {
    -webkit-appearance: none; }

/**
     * 1. Correct the inability to style clickable types in iOS and Safari.
     * 2. Change font properties to `inherit` in Safari.
     */
::-webkit-file-upload-button {
  -webkit-appearance: button;
  /* 1 */
  font: inherit;
  /* 2 */ }

/**
     * Change the border, margin, and padding in all browsers (opinionated).
     */
fieldset {
  border: 1px solid #c0c0c0;
  margin: 0 2px;
  padding: 0.35em 0.625em 0.75em; }

/**
     * 1. Correct the text wrapping in Edge and IE.
     * 2. Correct the color inheritance from `fieldset` elements in IE.
     * 3. Remove the padding so developers are not caught out when they zero out
     *    `fieldset` elements in all browsers.
     */
legend {
  box-sizing: border-box;
  /* 1 */
  display: table;
  /* 1 */
  max-width: 100%;
  /* 1 */
  padding: 0;
  /* 3 */
  color: inherit;
  /* 2 */
  white-space: normal;
  /* 1 */ }

/**
     * 1. Add the correct display in IE 9-.
     * 2. Add the correct vertical alignment in Chrome, Firefox, and Opera.
     */
progress {
  display: inline-block;
  /* 1 */
  vertical-align: baseline;
  /* 2 */ }

/**
     * Remove the default vertical scrollbar in IE.
     */
textarea {
  overflow: auto; }

/* Interactive
       ========================================================================== */
/*
     * Add the correct display in Edge, IE, and Firefox.
     */
details {
  display: block; }

/*
     * Add the correct display in all browsers.
     */
summary {
  display: list-item; }

/*
     * Add the correct display in IE 9-.
     */
menu {
  display: block; }

/* Scripting
       ========================================================================== */
/**
     * Add the correct display in IE 9-.
     */
canvas {
  display: inline-block; }

/**
     * Add the correct display in IE.
     */
template {
  display: none; }

/* Hidden
       ========================================================================== */
/**
     * Add the correct display in IE 10-.
     */
[hidden] {
  display: none; }

.foundation-mq {
  font-family: "small=0em&medium=40em&large=64em&xlarge=75em&xxlarge=90em"; }

html {
  box-sizing: border-box;
  font-size: 100%; }

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

body {
  margin: 0;
  padding: 0;
  background: #ffffff;
  font-family: "gorditaregular", -apple-system, BlinkMacSystemFont, "Segoe UI", "Roboto", "Oxygen", "Ubuntu", "Cantarell", "Fira Sans", "Droid Sans", "Helvetica Neue", sans-serif;
  font-weight: 400;
  line-height: 1.5;
  color: #000000;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale; }

img {
  display: inline-block;
  vertical-align: middle;
  max-width: 100%;
  height: auto;
  -ms-interpolation-mode: bicubic; }

textarea {
  height: auto;
  min-height: 50px;
  border-radius: 0; }

select {
  box-sizing: border-box;
  width: 100%;
  border-radius: 0; }

.map_canvas img,
.map_canvas embed,
.map_canvas object,
.mqa-display img,
.mqa-display embed,
.mqa-display object {
  max-width: none !important; }

button {
  padding: 0;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  border: 0;
  border-radius: 0;
  background: transparent;
  line-height: 1;
  cursor: auto; }
  [data-whatinput='mouse'] button {
    outline: 0; }

pre {
  overflow: auto; }

button,
input,
optgroup,
select,
textarea {
  font-family: inherit; }

.is-visible {
  display: block !important; }

.is-hidden {
  display: none !important; }

.grid-container, .top-bar {
  padding-right: 1.5rem;
  padding-left: 1.5rem;
  max-width: 90rem;
  margin: 0 auto; }
  @media print, screen and (min-width: 40em) {
    .grid-container, .top-bar {
      padding-right: 4.375rem;
      padding-left: 4.375rem; } }
  @media print, screen and (min-width: 64em) {
    .grid-container, .top-bar {
      padding-right: 6.25rem;
      padding-left: 6.25rem; } }
  @media screen and (min-width: 75em) {
    .grid-container, .top-bar {
      padding-right: 7.5rem;
      padding-left: 7.5rem; } }
  @media screen and (min-width: 90em) {
    .grid-container, .top-bar {
      padding-right: 7.5rem;
      padding-left: 7.5rem; } }
  .grid-container.fluid, .fluid.top-bar {
    padding-right: 1.5rem;
    padding-left: 1.5rem;
    max-width: 100%;
    margin: 0 auto; }
    @media print, screen and (min-width: 40em) {
      .grid-container.fluid, .fluid.top-bar {
        padding-right: 4.375rem;
        padding-left: 4.375rem; } }
    @media print, screen and (min-width: 64em) {
      .grid-container.fluid, .fluid.top-bar {
        padding-right: 6.25rem;
        padding-left: 6.25rem; } }
    @media screen and (min-width: 75em) {
      .grid-container.fluid, .fluid.top-bar {
        padding-right: 7.5rem;
        padding-left: 7.5rem; } }
    @media screen and (min-width: 90em) {
      .grid-container.fluid, .fluid.top-bar {
        padding-right: 7.5rem;
        padding-left: 7.5rem; } }
  .grid-container.full, .full.top-bar {
    padding-right: 0;
    padding-left: 0;
    max-width: 100%;
    margin: 0 auto; }

.grid-x {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-flow: row wrap;
      -ms-flex-flow: row wrap;
          flex-flow: row wrap; }

.cell {
  -webkit-flex: 0 0 auto;
      -ms-flex: 0 0 auto;
          flex: 0 0 auto;
  min-height: 0px;
  min-width: 0px;
  width: 100%; }
  .cell.auto {
    -webkit-flex: 1 1 0px;
        -ms-flex: 1 1 0px;
            flex: 1 1 0px; }
  .cell.shrink {
    -webkit-flex: 0 0 auto;
        -ms-flex: 0 0 auto;
            flex: 0 0 auto; }

.grid-x > .auto {
  width: auto; }

.grid-x > .shrink {
  width: auto; }

.grid-x > .small-shrink, .grid-x > .small-full, .grid-x > .small-1, .grid-x > .small-2, .grid-x > .small-3, .grid-x > .small-4, .grid-x > .small-5, .grid-x > .small-6, .grid-x > .small-7, .grid-x > .small-8, .grid-x > .small-9, .grid-x > .small-10, .grid-x > .small-11, .grid-x > .small-12 {
  -webkit-flex-basis: auto;
      -ms-flex-preferred-size: auto;
          flex-basis: auto; }

@media print, screen and (min-width: 40em) {
  .grid-x > .medium-shrink, .grid-x > .medium-full, .grid-x > .medium-1, .grid-x > .medium-2, .grid-x > .medium-3, .grid-x > .medium-4, .grid-x > .medium-5, .grid-x > .medium-6, .grid-x > .medium-7, .grid-x > .medium-8, .grid-x > .medium-9, .grid-x > .medium-10, .grid-x > .medium-11, .grid-x > .medium-12 {
    -webkit-flex-basis: auto;
        -ms-flex-preferred-size: auto;
            flex-basis: auto; } }

@media print, screen and (min-width: 64em) {
  .grid-x > .large-shrink, .grid-x > .large-full, .grid-x > .large-1, .grid-x > .large-2, .grid-x > .large-3, .grid-x > .large-4, .grid-x > .large-5, .grid-x > .large-6, .grid-x > .large-7, .grid-x > .large-8, .grid-x > .large-9, .grid-x > .large-10, .grid-x > .large-11, .grid-x > .large-12 {
    -webkit-flex-basis: auto;
        -ms-flex-preferred-size: auto;
            flex-basis: auto; } }

@media screen and (min-width: 75em) {
  .grid-x > .xlarge-shrink, .grid-x > .xlarge-full, .grid-x > .xlarge-1, .grid-x > .xlarge-2, .grid-x > .xlarge-3, .grid-x > .xlarge-4, .grid-x > .xlarge-5, .grid-x > .xlarge-6, .grid-x > .xlarge-7, .grid-x > .xlarge-8, .grid-x > .xlarge-9, .grid-x > .xlarge-10, .grid-x > .xlarge-11, .grid-x > .xlarge-12 {
    -webkit-flex-basis: auto;
        -ms-flex-preferred-size: auto;
            flex-basis: auto; } }

@media screen and (min-width: 90em) {
  .grid-x > .xxlarge-shrink, .grid-x > .xxlarge-full, .grid-x > .xxlarge-1, .grid-x > .xxlarge-2, .grid-x > .xxlarge-3, .grid-x > .xxlarge-4, .grid-x > .xxlarge-5, .grid-x > .xxlarge-6, .grid-x > .xxlarge-7, .grid-x > .xxlarge-8, .grid-x > .xxlarge-9, .grid-x > .xxlarge-10, .grid-x > .xxlarge-11, .grid-x > .xxlarge-12 {
    -webkit-flex-basis: auto;
        -ms-flex-preferred-size: auto;
            flex-basis: auto; } }

.grid-x > .small-1 {
  width: 8.33333%; }

.grid-x > .small-2 {
  width: 16.66667%; }

.grid-x > .small-3 {
  width: 25%; }

.grid-x > .small-4 {
  width: 33.33333%; }

.grid-x > .small-5 {
  width: 41.66667%; }

.grid-x > .small-6 {
  width: 50%; }

.grid-x > .small-7 {
  width: 58.33333%; }

.grid-x > .small-8 {
  width: 66.66667%; }

.grid-x > .small-9 {
  width: 75%; }

.grid-x > .small-10 {
  width: 83.33333%; }

.grid-x > .small-11 {
  width: 91.66667%; }

.grid-x > .small-12 {
  width: 100%; }

@media print, screen and (min-width: 40em) {
  .grid-x > .medium-auto {
    -webkit-flex: 1 1 0px;
        -ms-flex: 1 1 0px;
            flex: 1 1 0px;
    width: auto; }
  .grid-x > .medium-shrink {
    -webkit-flex: 0 0 auto;
        -ms-flex: 0 0 auto;
            flex: 0 0 auto;
    width: auto; }
  .grid-x > .medium-1 {
    width: 8.33333%; }
  .grid-x > .medium-2 {
    width: 16.66667%; }
  .grid-x > .medium-3 {
    width: 25%; }
  .grid-x > .medium-4 {
    width: 33.33333%; }
  .grid-x > .medium-5 {
    width: 41.66667%; }
  .grid-x > .medium-6 {
    width: 50%; }
  .grid-x > .medium-7 {
    width: 58.33333%; }
  .grid-x > .medium-8 {
    width: 66.66667%; }
  .grid-x > .medium-9 {
    width: 75%; }
  .grid-x > .medium-10 {
    width: 83.33333%; }
  .grid-x > .medium-11 {
    width: 91.66667%; }
  .grid-x > .medium-12 {
    width: 100%; } }

@media print, screen and (min-width: 64em) {
  .grid-x > .large-auto {
    -webkit-flex: 1 1 0px;
        -ms-flex: 1 1 0px;
            flex: 1 1 0px;
    width: auto; }
  .grid-x > .large-shrink {
    -webkit-flex: 0 0 auto;
        -ms-flex: 0 0 auto;
            flex: 0 0 auto;
    width: auto; }
  .grid-x > .large-1 {
    width: 8.33333%; }
  .grid-x > .large-2 {
    width: 16.66667%; }
  .grid-x > .large-3 {
    width: 25%; }
  .grid-x > .large-4 {
    width: 33.33333%; }
  .grid-x > .large-5 {
    width: 41.66667%; }
  .grid-x > .large-6 {
    width: 50%; }
  .grid-x > .large-7 {
    width: 58.33333%; }
  .grid-x > .large-8 {
    width: 66.66667%; }
  .grid-x > .large-9 {
    width: 75%; }
  .grid-x > .large-10 {
    width: 83.33333%; }
  .grid-x > .large-11 {
    width: 91.66667%; }
  .grid-x > .large-12 {
    width: 100%; } }

@media screen and (min-width: 75em) {
  .grid-x > .xlarge-auto {
    -webkit-flex: 1 1 0px;
        -ms-flex: 1 1 0px;
            flex: 1 1 0px;
    width: auto; }
  .grid-x > .xlarge-shrink {
    -webkit-flex: 0 0 auto;
        -ms-flex: 0 0 auto;
            flex: 0 0 auto;
    width: auto; }
  .grid-x > .xlarge-1 {
    width: 8.33333%; }
  .grid-x > .xlarge-2 {
    width: 16.66667%; }
  .grid-x > .xlarge-3 {
    width: 25%; }
  .grid-x > .xlarge-4 {
    width: 33.33333%; }
  .grid-x > .xlarge-5 {
    width: 41.66667%; }
  .grid-x > .xlarge-6 {
    width: 50%; }
  .grid-x > .xlarge-7 {
    width: 58.33333%; }
  .grid-x > .xlarge-8 {
    width: 66.66667%; }
  .grid-x > .xlarge-9 {
    width: 75%; }
  .grid-x > .xlarge-10 {
    width: 83.33333%; }
  .grid-x > .xlarge-11 {
    width: 91.66667%; }
  .grid-x > .xlarge-12 {
    width: 100%; } }

@media screen and (min-width: 90em) {
  .grid-x > .xxlarge-auto {
    -webkit-flex: 1 1 0px;
        -ms-flex: 1 1 0px;
            flex: 1 1 0px;
    width: auto; }
  .grid-x > .xxlarge-shrink {
    -webkit-flex: 0 0 auto;
        -ms-flex: 0 0 auto;
            flex: 0 0 auto;
    width: auto; }
  .grid-x > .xxlarge-1 {
    width: 8.33333%; }
  .grid-x > .xxlarge-2 {
    width: 16.66667%; }
  .grid-x > .xxlarge-3 {
    width: 25%; }
  .grid-x > .xxlarge-4 {
    width: 33.33333%; }
  .grid-x > .xxlarge-5 {
    width: 41.66667%; }
  .grid-x > .xxlarge-6 {
    width: 50%; }
  .grid-x > .xxlarge-7 {
    width: 58.33333%; }
  .grid-x > .xxlarge-8 {
    width: 66.66667%; }
  .grid-x > .xxlarge-9 {
    width: 75%; }
  .grid-x > .xxlarge-10 {
    width: 83.33333%; }
  .grid-x > .xxlarge-11 {
    width: 91.66667%; }
  .grid-x > .xxlarge-12 {
    width: 100%; } }

.grid-margin-x:not(.grid-x) > .cell {
  width: auto; }

.grid-margin-y:not(.grid-y) > .cell {
  height: auto; }

.grid-margin-x {
  margin-left: -0.5625rem;
  margin-right: -0.5625rem; }
  @media print, screen and (min-width: 40em) {
    .grid-margin-x {
      margin-left: -0.625rem;
      margin-right: -0.625rem; } }
  @media print, screen and (min-width: 64em) {
    .grid-margin-x {
      margin-left: -0.75rem;
      margin-right: -0.75rem; } }
  @media screen and (min-width: 75em) {
    .grid-margin-x {
      margin-left: -0.75rem;
      margin-right: -0.75rem; } }
  @media screen and (min-width: 90em) {
    .grid-margin-x {
      margin-left: -0.75rem;
      margin-right: -0.75rem; } }
  .grid-margin-x > .cell {
    width: calc(100% - 1.125rem);
    margin-left: 0.5625rem;
    margin-right: 0.5625rem; }
  @media print, screen and (min-width: 40em) {
    .grid-margin-x > .cell {
      width: calc(100% - 1.25rem);
      margin-left: 0.625rem;
      margin-right: 0.625rem; } }
  @media print, screen and (min-width: 64em) {
    .grid-margin-x > .cell {
      width: calc(100% - 1.5rem);
      margin-left: 0.75rem;
      margin-right: 0.75rem; } }
  @media screen and (min-width: 75em) {
    .grid-margin-x > .cell {
      width: calc(100% - 1.5rem);
      margin-left: 0.75rem;
      margin-right: 0.75rem; } }
  @media screen and (min-width: 90em) {
    .grid-margin-x > .cell {
      width: calc(100% - 1.5rem);
      margin-left: 0.75rem;
      margin-right: 0.75rem; } }
  .grid-margin-x > .auto {
    width: auto; }
  .grid-margin-x > .shrink {
    width: auto; }
  .grid-margin-x > .small-1 {
    width: calc(8.33333% - 1.125rem); }
  .grid-margin-x > .small-2 {
    width: calc(16.66667% - 1.125rem); }
  .grid-margin-x > .small-3 {
    width: calc(25% - 1.125rem); }
  .grid-margin-x > .small-4 {
    width: calc(33.33333% - 1.125rem); }
  .grid-margin-x > .small-5 {
    width: calc(41.66667% - 1.125rem); }
  .grid-margin-x > .small-6 {
    width: calc(50% - 1.125rem); }
  .grid-margin-x > .small-7 {
    width: calc(58.33333% - 1.125rem); }
  .grid-margin-x > .small-8 {
    width: calc(66.66667% - 1.125rem); }
  .grid-margin-x > .small-9 {
    width: calc(75% - 1.125rem); }
  .grid-margin-x > .small-10 {
    width: calc(83.33333% - 1.125rem); }
  .grid-margin-x > .small-11 {
    width: calc(91.66667% - 1.125rem); }
  .grid-margin-x > .small-12 {
    width: calc(100% - 1.125rem); }
  @media print, screen and (min-width: 40em) {
    .grid-margin-x > .auto {
      width: auto; }
    .grid-margin-x > .shrink {
      width: auto; }
    .grid-margin-x > .small-1 {
      width: calc(8.33333% - 1.25rem); }
    .grid-margin-x > .small-2 {
      width: calc(16.66667% - 1.25rem); }
    .grid-margin-x > .small-3 {
      width: calc(25% - 1.25rem); }
    .grid-margin-x > .small-4 {
      width: calc(33.33333% - 1.25rem); }
    .grid-margin-x > .small-5 {
      width: calc(41.66667% - 1.25rem); }
    .grid-margin-x > .small-6 {
      width: calc(50% - 1.25rem); }
    .grid-margin-x > .small-7 {
      width: calc(58.33333% - 1.25rem); }
    .grid-margin-x > .small-8 {
      width: calc(66.66667% - 1.25rem); }
    .grid-margin-x > .small-9 {
      width: calc(75% - 1.25rem); }
    .grid-margin-x > .small-10 {
      width: calc(83.33333% - 1.25rem); }
    .grid-margin-x > .small-11 {
      width: calc(91.66667% - 1.25rem); }
    .grid-margin-x > .small-12 {
      width: calc(100% - 1.25rem); }
    .grid-margin-x > .medium-auto {
      width: auto; }
    .grid-margin-x > .medium-shrink {
      width: auto; }
    .grid-margin-x > .medium-1 {
      width: calc(8.33333% - 1.25rem); }
    .grid-margin-x > .medium-2 {
      width: calc(16.66667% - 1.25rem); }
    .grid-margin-x > .medium-3 {
      width: calc(25% - 1.25rem); }
    .grid-margin-x > .medium-4 {
      width: calc(33.33333% - 1.25rem); }
    .grid-margin-x > .medium-5 {
      width: calc(41.66667% - 1.25rem); }
    .grid-margin-x > .medium-6 {
      width: calc(50% - 1.25rem); }
    .grid-margin-x > .medium-7 {
      width: calc(58.33333% - 1.25rem); }
    .grid-margin-x > .medium-8 {
      width: calc(66.66667% - 1.25rem); }
    .grid-margin-x > .medium-9 {
      width: calc(75% - 1.25rem); }
    .grid-margin-x > .medium-10 {
      width: calc(83.33333% - 1.25rem); }
    .grid-margin-x > .medium-11 {
      width: calc(91.66667% - 1.25rem); }
    .grid-margin-x > .medium-12 {
      width: calc(100% - 1.25rem); } }
  @media print, screen and (min-width: 64em) {
    .grid-margin-x > .auto {
      width: auto; }
    .grid-margin-x > .shrink {
      width: auto; }
    .grid-margin-x > .small-1 {
      width: calc(8.33333% - 1.5rem); }
    .grid-margin-x > .small-2 {
      width: calc(16.66667% - 1.5rem); }
    .grid-margin-x > .small-3 {
      width: calc(25% - 1.5rem); }
    .grid-margin-x > .small-4 {
      width: calc(33.33333% - 1.5rem); }
    .grid-margin-x > .small-5 {
      width: calc(41.66667% - 1.5rem); }
    .grid-margin-x > .small-6 {
      width: calc(50% - 1.5rem); }
    .grid-margin-x > .small-7 {
      width: calc(58.33333% - 1.5rem); }
    .grid-margin-x > .small-8 {
      width: calc(66.66667% - 1.5rem); }
    .grid-margin-x > .small-9 {
      width: calc(75% - 1.5rem); }
    .grid-margin-x > .small-10 {
      width: calc(83.33333% - 1.5rem); }
    .grid-margin-x > .small-11 {
      width: calc(91.66667% - 1.5rem); }
    .grid-margin-x > .small-12 {
      width: calc(100% - 1.5rem); }
    .grid-margin-x > .medium-auto {
      width: auto; }
    .grid-margin-x > .medium-shrink {
      width: auto; }
    .grid-margin-x > .medium-1 {
      width: calc(8.33333% - 1.5rem); }
    .grid-margin-x > .medium-2 {
      width: calc(16.66667% - 1.5rem); }
    .grid-margin-x > .medium-3 {
      width: calc(25% - 1.5rem); }
    .grid-margin-x > .medium-4 {
      width: calc(33.33333% - 1.5rem); }
    .grid-margin-x > .medium-5 {
      width: calc(41.66667% - 1.5rem); }
    .grid-margin-x > .medium-6 {
      width: calc(50% - 1.5rem); }
    .grid-margin-x > .medium-7 {
      width: calc(58.33333% - 1.5rem); }
    .grid-margin-x > .medium-8 {
      width: calc(66.66667% - 1.5rem); }
    .grid-margin-x > .medium-9 {
      width: calc(75% - 1.5rem); }
    .grid-margin-x > .medium-10 {
      width: calc(83.33333% - 1.5rem); }
    .grid-margin-x > .medium-11 {
      width: calc(91.66667% - 1.5rem); }
    .grid-margin-x > .medium-12 {
      width: calc(100% - 1.5rem); }
    .grid-margin-x > .large-auto {
      width: auto; }
    .grid-margin-x > .large-shrink {
      width: auto; }
    .grid-margin-x > .large-1 {
      width: calc(8.33333% - 1.5rem); }
    .grid-margin-x > .large-2 {
      width: calc(16.66667% - 1.5rem); }
    .grid-margin-x > .large-3 {
      width: calc(25% - 1.5rem); }
    .grid-margin-x > .large-4 {
      width: calc(33.33333% - 1.5rem); }
    .grid-margin-x > .large-5 {
      width: calc(41.66667% - 1.5rem); }
    .grid-margin-x > .large-6 {
      width: calc(50% - 1.5rem); }
    .grid-margin-x > .large-7 {
      width: calc(58.33333% - 1.5rem); }
    .grid-margin-x > .large-8 {
      width: calc(66.66667% - 1.5rem); }
    .grid-margin-x > .large-9 {
      width: calc(75% - 1.5rem); }
    .grid-margin-x > .large-10 {
      width: calc(83.33333% - 1.5rem); }
    .grid-margin-x > .large-11 {
      width: calc(91.66667% - 1.5rem); }
    .grid-margin-x > .large-12 {
      width: calc(100% - 1.5rem); } }
  @media screen and (min-width: 75em) {
    .grid-margin-x > .auto {
      width: auto; }
    .grid-margin-x > .shrink {
      width: auto; }
    .grid-margin-x > .small-1 {
      width: calc(8.33333% - 1.5rem); }
    .grid-margin-x > .small-2 {
      width: calc(16.66667% - 1.5rem); }
    .grid-margin-x > .small-3 {
      width: calc(25% - 1.5rem); }
    .grid-margin-x > .small-4 {
      width: calc(33.33333% - 1.5rem); }
    .grid-margin-x > .small-5 {
      width: calc(41.66667% - 1.5rem); }
    .grid-margin-x > .small-6 {
      width: calc(50% - 1.5rem); }
    .grid-margin-x > .small-7 {
      width: calc(58.33333% - 1.5rem); }
    .grid-margin-x > .small-8 {
      width: calc(66.66667% - 1.5rem); }
    .grid-margin-x > .small-9 {
      width: calc(75% - 1.5rem); }
    .grid-margin-x > .small-10 {
      width: calc(83.33333% - 1.5rem); }
    .grid-margin-x > .small-11 {
      width: calc(91.66667% - 1.5rem); }
    .grid-margin-x > .small-12 {
      width: calc(100% - 1.5rem); }
    .grid-margin-x > .medium-auto {
      width: auto; }
    .grid-margin-x > .medium-shrink {
      width: auto; }
    .grid-margin-x > .medium-1 {
      width: calc(8.33333% - 1.5rem); }
    .grid-margin-x > .medium-2 {
      width: calc(16.66667% - 1.5rem); }
    .grid-margin-x > .medium-3 {
      width: calc(25% - 1.5rem); }
    .grid-margin-x > .medium-4 {
      width: calc(33.33333% - 1.5rem); }
    .grid-margin-x > .medium-5 {
      width: calc(41.66667% - 1.5rem); }
    .grid-margin-x > .medium-6 {
      width: calc(50% - 1.5rem); }
    .grid-margin-x > .medium-7 {
      width: calc(58.33333% - 1.5rem); }
    .grid-margin-x > .medium-8 {
      width: calc(66.66667% - 1.5rem); }
    .grid-margin-x > .medium-9 {
      width: calc(75% - 1.5rem); }
    .grid-margin-x > .medium-10 {
      width: calc(83.33333% - 1.5rem); }
    .grid-margin-x > .medium-11 {
      width: calc(91.66667% - 1.5rem); }
    .grid-margin-x > .medium-12 {
      width: calc(100% - 1.5rem); }
    .grid-margin-x > .large-auto {
      width: auto; }
    .grid-margin-x > .large-shrink {
      width: auto; }
    .grid-margin-x > .large-1 {
      width: calc(8.33333% - 1.5rem); }
    .grid-margin-x > .large-2 {
      width: calc(16.66667% - 1.5rem); }
    .grid-margin-x > .large-3 {
      width: calc(25% - 1.5rem); }
    .grid-margin-x > .large-4 {
      width: calc(33.33333% - 1.5rem); }
    .grid-margin-x > .large-5 {
      width: calc(41.66667% - 1.5rem); }
    .grid-margin-x > .large-6 {
      width: calc(50% - 1.5rem); }
    .grid-margin-x > .large-7 {
      width: calc(58.33333% - 1.5rem); }
    .grid-margin-x > .large-8 {
      width: calc(66.66667% - 1.5rem); }
    .grid-margin-x > .large-9 {
      width: calc(75% - 1.5rem); }
    .grid-margin-x > .large-10 {
      width: calc(83.33333% - 1.5rem); }
    .grid-margin-x > .large-11 {
      width: calc(91.66667% - 1.5rem); }
    .grid-margin-x > .large-12 {
      width: calc(100% - 1.5rem); }
    .grid-margin-x > .xlarge-auto {
      width: auto; }
    .grid-margin-x > .xlarge-shrink {
      width: auto; }
    .grid-margin-x > .xlarge-1 {
      width: calc(8.33333% - 1.5rem); }
    .grid-margin-x > .xlarge-2 {
      width: calc(16.66667% - 1.5rem); }
    .grid-margin-x > .xlarge-3 {
      width: calc(25% - 1.5rem); }
    .grid-margin-x > .xlarge-4 {
      width: calc(33.33333% - 1.5rem); }
    .grid-margin-x > .xlarge-5 {
      width: calc(41.66667% - 1.5rem); }
    .grid-margin-x > .xlarge-6 {
      width: calc(50% - 1.5rem); }
    .grid-margin-x > .xlarge-7 {
      width: calc(58.33333% - 1.5rem); }
    .grid-margin-x > .xlarge-8 {
      width: calc(66.66667% - 1.5rem); }
    .grid-margin-x > .xlarge-9 {
      width: calc(75% - 1.5rem); }
    .grid-margin-x > .xlarge-10 {
      width: calc(83.33333% - 1.5rem); }
    .grid-margin-x > .xlarge-11 {
      width: calc(91.66667% - 1.5rem); }
    .grid-margin-x > .xlarge-12 {
      width: calc(100% - 1.5rem); } }
  @media screen and (min-width: 90em) {
    .grid-margin-x > .auto {
      width: auto; }
    .grid-margin-x > .shrink {
      width: auto; }
    .grid-margin-x > .small-1 {
      width: calc(8.33333% - 1.5rem); }
    .grid-margin-x > .small-2 {
      width: calc(16.66667% - 1.5rem); }
    .grid-margin-x > .small-3 {
      width: calc(25% - 1.5rem); }
    .grid-margin-x > .small-4 {
      width: calc(33.33333% - 1.5rem); }
    .grid-margin-x > .small-5 {
      width: calc(41.66667% - 1.5rem); }
    .grid-margin-x > .small-6 {
      width: calc(50% - 1.5rem); }
    .grid-margin-x > .small-7 {
      width: calc(58.33333% - 1.5rem); }
    .grid-margin-x > .small-8 {
      width: calc(66.66667% - 1.5rem); }
    .grid-margin-x > .small-9 {
      width: calc(75% - 1.5rem); }
    .grid-margin-x > .small-10 {
      width: calc(83.33333% - 1.5rem); }
    .grid-margin-x > .small-11 {
      width: calc(91.66667% - 1.5rem); }
    .grid-margin-x > .small-12 {
      width: calc(100% - 1.5rem); }
    .grid-margin-x > .medium-auto {
      width: auto; }
    .grid-margin-x > .medium-shrink {
      width: auto; }
    .grid-margin-x > .medium-1 {
      width: calc(8.33333% - 1.5rem); }
    .grid-margin-x > .medium-2 {
      width: calc(16.66667% - 1.5rem); }
    .grid-margin-x > .medium-3 {
      width: calc(25% - 1.5rem); }
    .grid-margin-x > .medium-4 {
      width: calc(33.33333% - 1.5rem); }
    .grid-margin-x > .medium-5 {
      width: calc(41.66667% - 1.5rem); }
    .grid-margin-x > .medium-6 {
      width: calc(50% - 1.5rem); }
    .grid-margin-x > .medium-7 {
      width: calc(58.33333% - 1.5rem); }
    .grid-margin-x > .medium-8 {
      width: calc(66.66667% - 1.5rem); }
    .grid-margin-x > .medium-9 {
      width: calc(75% - 1.5rem); }
    .grid-margin-x > .medium-10 {
      width: calc(83.33333% - 1.5rem); }
    .grid-margin-x > .medium-11 {
      width: calc(91.66667% - 1.5rem); }
    .grid-margin-x > .medium-12 {
      width: calc(100% - 1.5rem); }
    .grid-margin-x > .large-auto {
      width: auto; }
    .grid-margin-x > .large-shrink {
      width: auto; }
    .grid-margin-x > .large-1 {
      width: calc(8.33333% - 1.5rem); }
    .grid-margin-x > .large-2 {
      width: calc(16.66667% - 1.5rem); }
    .grid-margin-x > .large-3 {
      width: calc(25% - 1.5rem); }
    .grid-margin-x > .large-4 {
      width: calc(33.33333% - 1.5rem); }
    .grid-margin-x > .large-5 {
      width: calc(41.66667% - 1.5rem); }
    .grid-margin-x > .large-6 {
      width: calc(50% - 1.5rem); }
    .grid-margin-x > .large-7 {
      width: calc(58.33333% - 1.5rem); }
    .grid-margin-x > .large-8 {
      width: calc(66.66667% - 1.5rem); }
    .grid-margin-x > .large-9 {
      width: calc(75% - 1.5rem); }
    .grid-margin-x > .large-10 {
      width: calc(83.33333% - 1.5rem); }
    .grid-margin-x > .large-11 {
      width: calc(91.66667% - 1.5rem); }
    .grid-margin-x > .large-12 {
      width: calc(100% - 1.5rem); }
    .grid-margin-x > .xlarge-auto {
      width: auto; }
    .grid-margin-x > .xlarge-shrink {
      width: auto; }
    .grid-margin-x > .xlarge-1 {
      width: calc(8.33333% - 1.5rem); }
    .grid-margin-x > .xlarge-2 {
      width: calc(16.66667% - 1.5rem); }
    .grid-margin-x > .xlarge-3 {
      width: calc(25% - 1.5rem); }
    .grid-margin-x > .xlarge-4 {
      width: calc(33.33333% - 1.5rem); }
    .grid-margin-x > .xlarge-5 {
      width: calc(41.66667% - 1.5rem); }
    .grid-margin-x > .xlarge-6 {
      width: calc(50% - 1.5rem); }
    .grid-margin-x > .xlarge-7 {
      width: calc(58.33333% - 1.5rem); }
    .grid-margin-x > .xlarge-8 {
      width: calc(66.66667% - 1.5rem); }
    .grid-margin-x > .xlarge-9 {
      width: calc(75% - 1.5rem); }
    .grid-margin-x > .xlarge-10 {
      width: calc(83.33333% - 1.5rem); }
    .grid-margin-x > .xlarge-11 {
      width: calc(91.66667% - 1.5rem); }
    .grid-margin-x > .xlarge-12 {
      width: calc(100% - 1.5rem); }
    .grid-margin-x > .xxlarge-auto {
      width: auto; }
    .grid-margin-x > .xxlarge-shrink {
      width: auto; }
    .grid-margin-x > .xxlarge-1 {
      width: calc(8.33333% - 1.5rem); }
    .grid-margin-x > .xxlarge-2 {
      width: calc(16.66667% - 1.5rem); }
    .grid-margin-x > .xxlarge-3 {
      width: calc(25% - 1.5rem); }
    .grid-margin-x > .xxlarge-4 {
      width: calc(33.33333% - 1.5rem); }
    .grid-margin-x > .xxlarge-5 {
      width: calc(41.66667% - 1.5rem); }
    .grid-margin-x > .xxlarge-6 {
      width: calc(50% - 1.5rem); }
    .grid-margin-x > .xxlarge-7 {
      width: calc(58.33333% - 1.5rem); }
    .grid-margin-x > .xxlarge-8 {
      width: calc(66.66667% - 1.5rem); }
    .grid-margin-x > .xxlarge-9 {
      width: calc(75% - 1.5rem); }
    .grid-margin-x > .xxlarge-10 {
      width: calc(83.33333% - 1.5rem); }
    .grid-margin-x > .xxlarge-11 {
      width: calc(91.66667% - 1.5rem); }
    .grid-margin-x > .xxlarge-12 {
      width: calc(100% - 1.5rem); } }

.grid-padding-x .grid-padding-x {
  margin-right: -0.5625rem;
  margin-left: -0.5625rem; }
  @media print, screen and (min-width: 40em) {
    .grid-padding-x .grid-padding-x {
      margin-right: -0.625rem;
      margin-left: -0.625rem; } }
  @media print, screen and (min-width: 64em) {
    .grid-padding-x .grid-padding-x {
      margin-right: -0.75rem;
      margin-left: -0.75rem; } }
  @media screen and (min-width: 75em) {
    .grid-padding-x .grid-padding-x {
      margin-right: -0.75rem;
      margin-left: -0.75rem; } }
  @media screen and (min-width: 90em) {
    .grid-padding-x .grid-padding-x {
      margin-right: -0.75rem;
      margin-left: -0.75rem; } }

.grid-container:not(.full) > .grid-padding-x, .top-bar:not(.full) > .grid-padding-x {
  margin-right: -0.5625rem;
  margin-left: -0.5625rem; }
  @media print, screen and (min-width: 40em) {
    .grid-container:not(.full) > .grid-padding-x, .top-bar:not(.full) > .grid-padding-x {
      margin-right: -0.625rem;
      margin-left: -0.625rem; } }
  @media print, screen and (min-width: 64em) {
    .grid-container:not(.full) > .grid-padding-x, .top-bar:not(.full) > .grid-padding-x {
      margin-right: -0.75rem;
      margin-left: -0.75rem; } }
  @media screen and (min-width: 75em) {
    .grid-container:not(.full) > .grid-padding-x, .top-bar:not(.full) > .grid-padding-x {
      margin-right: -0.75rem;
      margin-left: -0.75rem; } }
  @media screen and (min-width: 90em) {
    .grid-container:not(.full) > .grid-padding-x, .top-bar:not(.full) > .grid-padding-x {
      margin-right: -0.75rem;
      margin-left: -0.75rem; } }

.grid-padding-x > .cell {
  padding-right: 0.5625rem;
  padding-left: 0.5625rem; }
  @media print, screen and (min-width: 40em) {
    .grid-padding-x > .cell {
      padding-right: 0.625rem;
      padding-left: 0.625rem; } }
  @media print, screen and (min-width: 64em) {
    .grid-padding-x > .cell {
      padding-right: 0.75rem;
      padding-left: 0.75rem; } }
  @media screen and (min-width: 75em) {
    .grid-padding-x > .cell {
      padding-right: 0.75rem;
      padding-left: 0.75rem; } }
  @media screen and (min-width: 90em) {
    .grid-padding-x > .cell {
      padding-right: 0.75rem;
      padding-left: 0.75rem; } }

.small-up-1 > .cell {
  width: 100%; }

.small-up-2 > .cell {
  width: 50%; }

.small-up-3 > .cell {
  width: 33.33333%; }

.small-up-4 > .cell {
  width: 25%; }

.small-up-5 > .cell {
  width: 20%; }

.small-up-6 > .cell {
  width: 16.66667%; }

.small-up-7 > .cell {
  width: 14.28571%; }

.small-up-8 > .cell {
  width: 12.5%; }

@media print, screen and (min-width: 40em) {
  .medium-up-1 > .cell {
    width: 100%; }
  .medium-up-2 > .cell {
    width: 50%; }
  .medium-up-3 > .cell {
    width: 33.33333%; }
  .medium-up-4 > .cell {
    width: 25%; }
  .medium-up-5 > .cell {
    width: 20%; }
  .medium-up-6 > .cell {
    width: 16.66667%; }
  .medium-up-7 > .cell {
    width: 14.28571%; }
  .medium-up-8 > .cell {
    width: 12.5%; } }

@media print, screen and (min-width: 64em) {
  .large-up-1 > .cell {
    width: 100%; }
  .large-up-2 > .cell {
    width: 50%; }
  .large-up-3 > .cell {
    width: 33.33333%; }
  .large-up-4 > .cell {
    width: 25%; }
  .large-up-5 > .cell {
    width: 20%; }
  .large-up-6 > .cell {
    width: 16.66667%; }
  .large-up-7 > .cell {
    width: 14.28571%; }
  .large-up-8 > .cell {
    width: 12.5%; } }

@media screen and (min-width: 75em) {
  .xlarge-up-1 > .cell {
    width: 100%; }
  .xlarge-up-2 > .cell {
    width: 50%; }
  .xlarge-up-3 > .cell {
    width: 33.33333%; }
  .xlarge-up-4 > .cell {
    width: 25%; }
  .xlarge-up-5 > .cell {
    width: 20%; }
  .xlarge-up-6 > .cell {
    width: 16.66667%; }
  .xlarge-up-7 > .cell {
    width: 14.28571%; }
  .xlarge-up-8 > .cell {
    width: 12.5%; } }

@media screen and (min-width: 90em) {
  .xxlarge-up-1 > .cell {
    width: 100%; }
  .xxlarge-up-2 > .cell {
    width: 50%; }
  .xxlarge-up-3 > .cell {
    width: 33.33333%; }
  .xxlarge-up-4 > .cell {
    width: 25%; }
  .xxlarge-up-5 > .cell {
    width: 20%; }
  .xxlarge-up-6 > .cell {
    width: 16.66667%; }
  .xxlarge-up-7 > .cell {
    width: 14.28571%; }
  .xxlarge-up-8 > .cell {
    width: 12.5%; } }

.grid-margin-x.small-up-1 > .cell {
  width: calc(100% - 1.125rem); }

.grid-margin-x.small-up-2 > .cell {
  width: calc(50% - 1.125rem); }

.grid-margin-x.small-up-3 > .cell {
  width: calc(33.33333% - 1.125rem); }

.grid-margin-x.small-up-4 > .cell {
  width: calc(25% - 1.125rem); }

.grid-margin-x.small-up-5 > .cell {
  width: calc(20% - 1.125rem); }

.grid-margin-x.small-up-6 > .cell {
  width: calc(16.66667% - 1.125rem); }

.grid-margin-x.small-up-7 > .cell {
  width: calc(14.28571% - 1.125rem); }

.grid-margin-x.small-up-8 > .cell {
  width: calc(12.5% - 1.125rem); }

@media print, screen and (min-width: 40em) {
  .grid-margin-x.small-up-1 > .cell {
    width: calc(100% - 1.125rem); }
  .grid-margin-x.small-up-2 > .cell {
    width: calc(50% - 1.125rem); }
  .grid-margin-x.small-up-3 > .cell {
    width: calc(33.33333% - 1.125rem); }
  .grid-margin-x.small-up-4 > .cell {
    width: calc(25% - 1.125rem); }
  .grid-margin-x.small-up-5 > .cell {
    width: calc(20% - 1.125rem); }
  .grid-margin-x.small-up-6 > .cell {
    width: calc(16.66667% - 1.125rem); }
  .grid-margin-x.small-up-7 > .cell {
    width: calc(14.28571% - 1.125rem); }
  .grid-margin-x.small-up-8 > .cell {
    width: calc(12.5% - 1.125rem); }
  .grid-margin-x.medium-up-1 > .cell {
    width: calc(100% - 1.25rem); }
  .grid-margin-x.medium-up-2 > .cell {
    width: calc(50% - 1.25rem); }
  .grid-margin-x.medium-up-3 > .cell {
    width: calc(33.33333% - 1.25rem); }
  .grid-margin-x.medium-up-4 > .cell {
    width: calc(25% - 1.25rem); }
  .grid-margin-x.medium-up-5 > .cell {
    width: calc(20% - 1.25rem); }
  .grid-margin-x.medium-up-6 > .cell {
    width: calc(16.66667% - 1.25rem); }
  .grid-margin-x.medium-up-7 > .cell {
    width: calc(14.28571% - 1.25rem); }
  .grid-margin-x.medium-up-8 > .cell {
    width: calc(12.5% - 1.25rem); } }

@media print, screen and (min-width: 64em) {
  .grid-margin-x.small-up-1 > .cell {
    width: calc(100% - 1.125rem); }
  .grid-margin-x.medium-up-1 > .cell {
    width: calc(100% - 1.25rem); }
  .grid-margin-x.small-up-2 > .cell {
    width: calc(50% - 1.125rem); }
  .grid-margin-x.medium-up-2 > .cell {
    width: calc(50% - 1.25rem); }
  .grid-margin-x.small-up-3 > .cell {
    width: calc(33.33333% - 1.125rem); }
  .grid-margin-x.medium-up-3 > .cell {
    width: calc(33.33333% - 1.25rem); }
  .grid-margin-x.small-up-4 > .cell {
    width: calc(25% - 1.125rem); }
  .grid-margin-x.medium-up-4 > .cell {
    width: calc(25% - 1.25rem); }
  .grid-margin-x.small-up-5 > .cell {
    width: calc(20% - 1.125rem); }
  .grid-margin-x.medium-up-5 > .cell {
    width: calc(20% - 1.25rem); }
  .grid-margin-x.small-up-6 > .cell {
    width: calc(16.66667% - 1.125rem); }
  .grid-margin-x.medium-up-6 > .cell {
    width: calc(16.66667% - 1.25rem); }
  .grid-margin-x.small-up-7 > .cell {
    width: calc(14.28571% - 1.125rem); }
  .grid-margin-x.medium-up-7 > .cell {
    width: calc(14.28571% - 1.25rem); }
  .grid-margin-x.small-up-8 > .cell {
    width: calc(12.5% - 1.125rem); }
  .grid-margin-x.medium-up-8 > .cell {
    width: calc(12.5% - 1.25rem); }
  .grid-margin-x.large-up-1 > .cell {
    width: calc(100% - 1.5rem); }
  .grid-margin-x.large-up-2 > .cell {
    width: calc(50% - 1.5rem); }
  .grid-margin-x.large-up-3 > .cell {
    width: calc(33.33333% - 1.5rem); }
  .grid-margin-x.large-up-4 > .cell {
    width: calc(25% - 1.5rem); }
  .grid-margin-x.large-up-5 > .cell {
    width: calc(20% - 1.5rem); }
  .grid-margin-x.large-up-6 > .cell {
    width: calc(16.66667% - 1.5rem); }
  .grid-margin-x.large-up-7 > .cell {
    width: calc(14.28571% - 1.5rem); }
  .grid-margin-x.large-up-8 > .cell {
    width: calc(12.5% - 1.5rem); } }

@media screen and (min-width: 75em) {
  .grid-margin-x.small-up-1 > .cell {
    width: calc(100% - 1.125rem); }
  .grid-margin-x.medium-up-1 > .cell {
    width: calc(100% - 1.25rem); }
  .grid-margin-x.large-up-1 > .cell {
    width: calc(100% - 1.5rem); }
  .grid-margin-x.small-up-2 > .cell {
    width: calc(50% - 1.125rem); }
  .grid-margin-x.medium-up-2 > .cell {
    width: calc(50% - 1.25rem); }
  .grid-margin-x.large-up-2 > .cell {
    width: calc(50% - 1.5rem); }
  .grid-margin-x.small-up-3 > .cell {
    width: calc(33.33333% - 1.125rem); }
  .grid-margin-x.medium-up-3 > .cell {
    width: calc(33.33333% - 1.25rem); }
  .grid-margin-x.large-up-3 > .cell {
    width: calc(33.33333% - 1.5rem); }
  .grid-margin-x.small-up-4 > .cell {
    width: calc(25% - 1.125rem); }
  .grid-margin-x.medium-up-4 > .cell {
    width: calc(25% - 1.25rem); }
  .grid-margin-x.large-up-4 > .cell {
    width: calc(25% - 1.5rem); }
  .grid-margin-x.small-up-5 > .cell {
    width: calc(20% - 1.125rem); }
  .grid-margin-x.medium-up-5 > .cell {
    width: calc(20% - 1.25rem); }
  .grid-margin-x.large-up-5 > .cell {
    width: calc(20% - 1.5rem); }
  .grid-margin-x.small-up-6 > .cell {
    width: calc(16.66667% - 1.125rem); }
  .grid-margin-x.medium-up-6 > .cell {
    width: calc(16.66667% - 1.25rem); }
  .grid-margin-x.large-up-6 > .cell {
    width: calc(16.66667% - 1.5rem); }
  .grid-margin-x.small-up-7 > .cell {
    width: calc(14.28571% - 1.125rem); }
  .grid-margin-x.medium-up-7 > .cell {
    width: calc(14.28571% - 1.25rem); }
  .grid-margin-x.large-up-7 > .cell {
    width: calc(14.28571% - 1.5rem); }
  .grid-margin-x.small-up-8 > .cell {
    width: calc(12.5% - 1.125rem); }
  .grid-margin-x.medium-up-8 > .cell {
    width: calc(12.5% - 1.25rem); }
  .grid-margin-x.large-up-8 > .cell {
    width: calc(12.5% - 1.5rem); }
  .grid-margin-x.xlarge-up-1 > .cell {
    width: calc(100% - 1.5rem); }
  .grid-margin-x.xlarge-up-2 > .cell {
    width: calc(50% - 1.5rem); }
  .grid-margin-x.xlarge-up-3 > .cell {
    width: calc(33.33333% - 1.5rem); }
  .grid-margin-x.xlarge-up-4 > .cell {
    width: calc(25% - 1.5rem); }
  .grid-margin-x.xlarge-up-5 > .cell {
    width: calc(20% - 1.5rem); }
  .grid-margin-x.xlarge-up-6 > .cell {
    width: calc(16.66667% - 1.5rem); }
  .grid-margin-x.xlarge-up-7 > .cell {
    width: calc(14.28571% - 1.5rem); }
  .grid-margin-x.xlarge-up-8 > .cell {
    width: calc(12.5% - 1.5rem); } }

@media screen and (min-width: 90em) {
  .grid-margin-x.small-up-1 > .cell {
    width: calc(100% - 1.125rem); }
  .grid-margin-x.medium-up-1 > .cell {
    width: calc(100% - 1.25rem); }
  .grid-margin-x.large-up-1 > .cell {
    width: calc(100% - 1.5rem); }
  .grid-margin-x.xlarge-up-1 > .cell {
    width: calc(100% - 1.5rem); }
  .grid-margin-x.small-up-2 > .cell {
    width: calc(50% - 1.125rem); }
  .grid-margin-x.medium-up-2 > .cell {
    width: calc(50% - 1.25rem); }
  .grid-margin-x.large-up-2 > .cell {
    width: calc(50% - 1.5rem); }
  .grid-margin-x.xlarge-up-2 > .cell {
    width: calc(50% - 1.5rem); }
  .grid-margin-x.small-up-3 > .cell {
    width: calc(33.33333% - 1.125rem); }
  .grid-margin-x.medium-up-3 > .cell {
    width: calc(33.33333% - 1.25rem); }
  .grid-margin-x.large-up-3 > .cell {
    width: calc(33.33333% - 1.5rem); }
  .grid-margin-x.xlarge-up-3 > .cell {
    width: calc(33.33333% - 1.5rem); }
  .grid-margin-x.small-up-4 > .cell {
    width: calc(25% - 1.125rem); }
  .grid-margin-x.medium-up-4 > .cell {
    width: calc(25% - 1.25rem); }
  .grid-margin-x.large-up-4 > .cell {
    width: calc(25% - 1.5rem); }
  .grid-margin-x.xlarge-up-4 > .cell {
    width: calc(25% - 1.5rem); }
  .grid-margin-x.small-up-5 > .cell {
    width: calc(20% - 1.125rem); }
  .grid-margin-x.medium-up-5 > .cell {
    width: calc(20% - 1.25rem); }
  .grid-margin-x.large-up-5 > .cell {
    width: calc(20% - 1.5rem); }
  .grid-margin-x.xlarge-up-5 > .cell {
    width: calc(20% - 1.5rem); }
  .grid-margin-x.small-up-6 > .cell {
    width: calc(16.66667% - 1.125rem); }
  .grid-margin-x.medium-up-6 > .cell {
    width: calc(16.66667% - 1.25rem); }
  .grid-margin-x.large-up-6 > .cell {
    width: calc(16.66667% - 1.5rem); }
  .grid-margin-x.xlarge-up-6 > .cell {
    width: calc(16.66667% - 1.5rem); }
  .grid-margin-x.small-up-7 > .cell {
    width: calc(14.28571% - 1.125rem); }
  .grid-margin-x.medium-up-7 > .cell {
    width: calc(14.28571% - 1.25rem); }
  .grid-margin-x.large-up-7 > .cell {
    width: calc(14.28571% - 1.5rem); }
  .grid-margin-x.xlarge-up-7 > .cell {
    width: calc(14.28571% - 1.5rem); }
  .grid-margin-x.small-up-8 > .cell {
    width: calc(12.5% - 1.125rem); }
  .grid-margin-x.medium-up-8 > .cell {
    width: calc(12.5% - 1.25rem); }
  .grid-margin-x.large-up-8 > .cell {
    width: calc(12.5% - 1.5rem); }
  .grid-margin-x.xlarge-up-8 > .cell {
    width: calc(12.5% - 1.5rem); }
  .grid-margin-x.xxlarge-up-1 > .cell {
    width: calc(100% - 1.5rem); }
  .grid-margin-x.xxlarge-up-2 > .cell {
    width: calc(50% - 1.5rem); }
  .grid-margin-x.xxlarge-up-3 > .cell {
    width: calc(33.33333% - 1.5rem); }
  .grid-margin-x.xxlarge-up-4 > .cell {
    width: calc(25% - 1.5rem); }
  .grid-margin-x.xxlarge-up-5 > .cell {
    width: calc(20% - 1.5rem); }
  .grid-margin-x.xxlarge-up-6 > .cell {
    width: calc(16.66667% - 1.5rem); }
  .grid-margin-x.xxlarge-up-7 > .cell {
    width: calc(14.28571% - 1.5rem); }
  .grid-margin-x.xxlarge-up-8 > .cell {
    width: calc(12.5% - 1.5rem); } }

.small-margin-collapse {
  margin-right: 0;
  margin-left: 0; }
  .small-margin-collapse > .cell {
    margin-right: 0;
    margin-left: 0; }
  .small-margin-collapse > .small-1 {
    width: 8.33333%; }
  .small-margin-collapse > .small-2 {
    width: 16.66667%; }
  .small-margin-collapse > .small-3 {
    width: 25%; }
  .small-margin-collapse > .small-4 {
    width: 33.33333%; }
  .small-margin-collapse > .small-5 {
    width: 41.66667%; }
  .small-margin-collapse > .small-6 {
    width: 50%; }
  .small-margin-collapse > .small-7 {
    width: 58.33333%; }
  .small-margin-collapse > .small-8 {
    width: 66.66667%; }
  .small-margin-collapse > .small-9 {
    width: 75%; }
  .small-margin-collapse > .small-10 {
    width: 83.33333%; }
  .small-margin-collapse > .small-11 {
    width: 91.66667%; }
  .small-margin-collapse > .small-12 {
    width: 100%; }
  @media print, screen and (min-width: 40em) {
    .small-margin-collapse > .medium-1 {
      width: 8.33333%; }
    .small-margin-collapse > .medium-2 {
      width: 16.66667%; }
    .small-margin-collapse > .medium-3 {
      width: 25%; }
    .small-margin-collapse > .medium-4 {
      width: 33.33333%; }
    .small-margin-collapse > .medium-5 {
      width: 41.66667%; }
    .small-margin-collapse > .medium-6 {
      width: 50%; }
    .small-margin-collapse > .medium-7 {
      width: 58.33333%; }
    .small-margin-collapse > .medium-8 {
      width: 66.66667%; }
    .small-margin-collapse > .medium-9 {
      width: 75%; }
    .small-margin-collapse > .medium-10 {
      width: 83.33333%; }
    .small-margin-collapse > .medium-11 {
      width: 91.66667%; }
    .small-margin-collapse > .medium-12 {
      width: 100%; } }
  @media print, screen and (min-width: 64em) {
    .small-margin-collapse > .large-1 {
      width: 8.33333%; }
    .small-margin-collapse > .large-2 {
      width: 16.66667%; }
    .small-margin-collapse > .large-3 {
      width: 25%; }
    .small-margin-collapse > .large-4 {
      width: 33.33333%; }
    .small-margin-collapse > .large-5 {
      width: 41.66667%; }
    .small-margin-collapse > .large-6 {
      width: 50%; }
    .small-margin-collapse > .large-7 {
      width: 58.33333%; }
    .small-margin-collapse > .large-8 {
      width: 66.66667%; }
    .small-margin-collapse > .large-9 {
      width: 75%; }
    .small-margin-collapse > .large-10 {
      width: 83.33333%; }
    .small-margin-collapse > .large-11 {
      width: 91.66667%; }
    .small-margin-collapse > .large-12 {
      width: 100%; } }
  @media screen and (min-width: 75em) {
    .small-margin-collapse > .xlarge-1 {
      width: 8.33333%; }
    .small-margin-collapse > .xlarge-2 {
      width: 16.66667%; }
    .small-margin-collapse > .xlarge-3 {
      width: 25%; }
    .small-margin-collapse > .xlarge-4 {
      width: 33.33333%; }
    .small-margin-collapse > .xlarge-5 {
      width: 41.66667%; }
    .small-margin-collapse > .xlarge-6 {
      width: 50%; }
    .small-margin-collapse > .xlarge-7 {
      width: 58.33333%; }
    .small-margin-collapse > .xlarge-8 {
      width: 66.66667%; }
    .small-margin-collapse > .xlarge-9 {
      width: 75%; }
    .small-margin-collapse > .xlarge-10 {
      width: 83.33333%; }
    .small-margin-collapse > .xlarge-11 {
      width: 91.66667%; }
    .small-margin-collapse > .xlarge-12 {
      width: 100%; } }
  @media screen and (min-width: 90em) {
    .small-margin-collapse > .xxlarge-1 {
      width: 8.33333%; }
    .small-margin-collapse > .xxlarge-2 {
      width: 16.66667%; }
    .small-margin-collapse > .xxlarge-3 {
      width: 25%; }
    .small-margin-collapse > .xxlarge-4 {
      width: 33.33333%; }
    .small-margin-collapse > .xxlarge-5 {
      width: 41.66667%; }
    .small-margin-collapse > .xxlarge-6 {
      width: 50%; }
    .small-margin-collapse > .xxlarge-7 {
      width: 58.33333%; }
    .small-margin-collapse > .xxlarge-8 {
      width: 66.66667%; }
    .small-margin-collapse > .xxlarge-9 {
      width: 75%; }
    .small-margin-collapse > .xxlarge-10 {
      width: 83.33333%; }
    .small-margin-collapse > .xxlarge-11 {
      width: 91.66667%; }
    .small-margin-collapse > .xxlarge-12 {
      width: 100%; } }

.small-padding-collapse {
  margin-right: 0;
  margin-left: 0; }
  .small-padding-collapse > .cell {
    padding-right: 0;
    padding-left: 0; }

@media print, screen and (min-width: 40em) {
  .medium-margin-collapse {
    margin-right: 0;
    margin-left: 0; }
    .medium-margin-collapse > .cell {
      margin-right: 0;
      margin-left: 0; } }

@media print, screen and (min-width: 40em) {
  .medium-margin-collapse > .small-1 {
    width: 8.33333%; }
  .medium-margin-collapse > .small-2 {
    width: 16.66667%; }
  .medium-margin-collapse > .small-3 {
    width: 25%; }
  .medium-margin-collapse > .small-4 {
    width: 33.33333%; }
  .medium-margin-collapse > .small-5 {
    width: 41.66667%; }
  .medium-margin-collapse > .small-6 {
    width: 50%; }
  .medium-margin-collapse > .small-7 {
    width: 58.33333%; }
  .medium-margin-collapse > .small-8 {
    width: 66.66667%; }
  .medium-margin-collapse > .small-9 {
    width: 75%; }
  .medium-margin-collapse > .small-10 {
    width: 83.33333%; }
  .medium-margin-collapse > .small-11 {
    width: 91.66667%; }
  .medium-margin-collapse > .small-12 {
    width: 100%; } }

@media print, screen and (min-width: 40em) {
  .medium-margin-collapse > .medium-1 {
    width: 8.33333%; }
  .medium-margin-collapse > .medium-2 {
    width: 16.66667%; }
  .medium-margin-collapse > .medium-3 {
    width: 25%; }
  .medium-margin-collapse > .medium-4 {
    width: 33.33333%; }
  .medium-margin-collapse > .medium-5 {
    width: 41.66667%; }
  .medium-margin-collapse > .medium-6 {
    width: 50%; }
  .medium-margin-collapse > .medium-7 {
    width: 58.33333%; }
  .medium-margin-collapse > .medium-8 {
    width: 66.66667%; }
  .medium-margin-collapse > .medium-9 {
    width: 75%; }
  .medium-margin-collapse > .medium-10 {
    width: 83.33333%; }
  .medium-margin-collapse > .medium-11 {
    width: 91.66667%; }
  .medium-margin-collapse > .medium-12 {
    width: 100%; } }

@media print, screen and (min-width: 64em) {
  .medium-margin-collapse > .large-1 {
    width: 8.33333%; }
  .medium-margin-collapse > .large-2 {
    width: 16.66667%; }
  .medium-margin-collapse > .large-3 {
    width: 25%; }
  .medium-margin-collapse > .large-4 {
    width: 33.33333%; }
  .medium-margin-collapse > .large-5 {
    width: 41.66667%; }
  .medium-margin-collapse > .large-6 {
    width: 50%; }
  .medium-margin-collapse > .large-7 {
    width: 58.33333%; }
  .medium-margin-collapse > .large-8 {
    width: 66.66667%; }
  .medium-margin-collapse > .large-9 {
    width: 75%; }
  .medium-margin-collapse > .large-10 {
    width: 83.33333%; }
  .medium-margin-collapse > .large-11 {
    width: 91.66667%; }
  .medium-margin-collapse > .large-12 {
    width: 100%; } }

@media screen and (min-width: 75em) {
  .medium-margin-collapse > .xlarge-1 {
    width: 8.33333%; }
  .medium-margin-collapse > .xlarge-2 {
    width: 16.66667%; }
  .medium-margin-collapse > .xlarge-3 {
    width: 25%; }
  .medium-margin-collapse > .xlarge-4 {
    width: 33.33333%; }
  .medium-margin-collapse > .xlarge-5 {
    width: 41.66667%; }
  .medium-margin-collapse > .xlarge-6 {
    width: 50%; }
  .medium-margin-collapse > .xlarge-7 {
    width: 58.33333%; }
  .medium-margin-collapse > .xlarge-8 {
    width: 66.66667%; }
  .medium-margin-collapse > .xlarge-9 {
    width: 75%; }
  .medium-margin-collapse > .xlarge-10 {
    width: 83.33333%; }
  .medium-margin-collapse > .xlarge-11 {
    width: 91.66667%; }
  .medium-margin-collapse > .xlarge-12 {
    width: 100%; } }

@media screen and (min-width: 90em) {
  .medium-margin-collapse > .xxlarge-1 {
    width: 8.33333%; }
  .medium-margin-collapse > .xxlarge-2 {
    width: 16.66667%; }
  .medium-margin-collapse > .xxlarge-3 {
    width: 25%; }
  .medium-margin-collapse > .xxlarge-4 {
    width: 33.33333%; }
  .medium-margin-collapse > .xxlarge-5 {
    width: 41.66667%; }
  .medium-margin-collapse > .xxlarge-6 {
    width: 50%; }
  .medium-margin-collapse > .xxlarge-7 {
    width: 58.33333%; }
  .medium-margin-collapse > .xxlarge-8 {
    width: 66.66667%; }
  .medium-margin-collapse > .xxlarge-9 {
    width: 75%; }
  .medium-margin-collapse > .xxlarge-10 {
    width: 83.33333%; }
  .medium-margin-collapse > .xxlarge-11 {
    width: 91.66667%; }
  .medium-margin-collapse > .xxlarge-12 {
    width: 100%; } }

@media print, screen and (min-width: 40em) {
  .medium-padding-collapse {
    margin-right: 0;
    margin-left: 0; }
    .medium-padding-collapse > .cell {
      padding-right: 0;
      padding-left: 0; } }

@media print, screen and (min-width: 64em) {
  .large-margin-collapse {
    margin-right: 0;
    margin-left: 0; }
    .large-margin-collapse > .cell {
      margin-right: 0;
      margin-left: 0; } }

@media print, screen and (min-width: 64em) {
  .large-margin-collapse > .small-1 {
    width: 8.33333%; }
  .large-margin-collapse > .small-2 {
    width: 16.66667%; }
  .large-margin-collapse > .small-3 {
    width: 25%; }
  .large-margin-collapse > .small-4 {
    width: 33.33333%; }
  .large-margin-collapse > .small-5 {
    width: 41.66667%; }
  .large-margin-collapse > .small-6 {
    width: 50%; }
  .large-margin-collapse > .small-7 {
    width: 58.33333%; }
  .large-margin-collapse > .small-8 {
    width: 66.66667%; }
  .large-margin-collapse > .small-9 {
    width: 75%; }
  .large-margin-collapse > .small-10 {
    width: 83.33333%; }
  .large-margin-collapse > .small-11 {
    width: 91.66667%; }
  .large-margin-collapse > .small-12 {
    width: 100%; } }

@media print, screen and (min-width: 64em) {
  .large-margin-collapse > .medium-1 {
    width: 8.33333%; }
  .large-margin-collapse > .medium-2 {
    width: 16.66667%; }
  .large-margin-collapse > .medium-3 {
    width: 25%; }
  .large-margin-collapse > .medium-4 {
    width: 33.33333%; }
  .large-margin-collapse > .medium-5 {
    width: 41.66667%; }
  .large-margin-collapse > .medium-6 {
    width: 50%; }
  .large-margin-collapse > .medium-7 {
    width: 58.33333%; }
  .large-margin-collapse > .medium-8 {
    width: 66.66667%; }
  .large-margin-collapse > .medium-9 {
    width: 75%; }
  .large-margin-collapse > .medium-10 {
    width: 83.33333%; }
  .large-margin-collapse > .medium-11 {
    width: 91.66667%; }
  .large-margin-collapse > .medium-12 {
    width: 100%; } }

@media print, screen and (min-width: 64em) {
  .large-margin-collapse > .large-1 {
    width: 8.33333%; }
  .large-margin-collapse > .large-2 {
    width: 16.66667%; }
  .large-margin-collapse > .large-3 {
    width: 25%; }
  .large-margin-collapse > .large-4 {
    width: 33.33333%; }
  .large-margin-collapse > .large-5 {
    width: 41.66667%; }
  .large-margin-collapse > .large-6 {
    width: 50%; }
  .large-margin-collapse > .large-7 {
    width: 58.33333%; }
  .large-margin-collapse > .large-8 {
    width: 66.66667%; }
  .large-margin-collapse > .large-9 {
    width: 75%; }
  .large-margin-collapse > .large-10 {
    width: 83.33333%; }
  .large-margin-collapse > .large-11 {
    width: 91.66667%; }
  .large-margin-collapse > .large-12 {
    width: 100%; } }

@media screen and (min-width: 75em) {
  .large-margin-collapse > .xlarge-1 {
    width: 8.33333%; }
  .large-margin-collapse > .xlarge-2 {
    width: 16.66667%; }
  .large-margin-collapse > .xlarge-3 {
    width: 25%; }
  .large-margin-collapse > .xlarge-4 {
    width: 33.33333%; }
  .large-margin-collapse > .xlarge-5 {
    width: 41.66667%; }
  .large-margin-collapse > .xlarge-6 {
    width: 50%; }
  .large-margin-collapse > .xlarge-7 {
    width: 58.33333%; }
  .large-margin-collapse > .xlarge-8 {
    width: 66.66667%; }
  .large-margin-collapse > .xlarge-9 {
    width: 75%; }
  .large-margin-collapse > .xlarge-10 {
    width: 83.33333%; }
  .large-margin-collapse > .xlarge-11 {
    width: 91.66667%; }
  .large-margin-collapse > .xlarge-12 {
    width: 100%; } }

@media screen and (min-width: 90em) {
  .large-margin-collapse > .xxlarge-1 {
    width: 8.33333%; }
  .large-margin-collapse > .xxlarge-2 {
    width: 16.66667%; }
  .large-margin-collapse > .xxlarge-3 {
    width: 25%; }
  .large-margin-collapse > .xxlarge-4 {
    width: 33.33333%; }
  .large-margin-collapse > .xxlarge-5 {
    width: 41.66667%; }
  .large-margin-collapse > .xxlarge-6 {
    width: 50%; }
  .large-margin-collapse > .xxlarge-7 {
    width: 58.33333%; }
  .large-margin-collapse > .xxlarge-8 {
    width: 66.66667%; }
  .large-margin-collapse > .xxlarge-9 {
    width: 75%; }
  .large-margin-collapse > .xxlarge-10 {
    width: 83.33333%; }
  .large-margin-collapse > .xxlarge-11 {
    width: 91.66667%; }
  .large-margin-collapse > .xxlarge-12 {
    width: 100%; } }

@media print, screen and (min-width: 64em) {
  .large-padding-collapse {
    margin-right: 0;
    margin-left: 0; }
    .large-padding-collapse > .cell {
      padding-right: 0;
      padding-left: 0; } }

@media screen and (min-width: 75em) {
  .xlarge-margin-collapse {
    margin-right: 0;
    margin-left: 0; }
    .xlarge-margin-collapse > .cell {
      margin-right: 0;
      margin-left: 0; } }

@media screen and (min-width: 75em) {
  .xlarge-margin-collapse > .small-1 {
    width: 8.33333%; }
  .xlarge-margin-collapse > .small-2 {
    width: 16.66667%; }
  .xlarge-margin-collapse > .small-3 {
    width: 25%; }
  .xlarge-margin-collapse > .small-4 {
    width: 33.33333%; }
  .xlarge-margin-collapse > .small-5 {
    width: 41.66667%; }
  .xlarge-margin-collapse > .small-6 {
    width: 50%; }
  .xlarge-margin-collapse > .small-7 {
    width: 58.33333%; }
  .xlarge-margin-collapse > .small-8 {
    width: 66.66667%; }
  .xlarge-margin-collapse > .small-9 {
    width: 75%; }
  .xlarge-margin-collapse > .small-10 {
    width: 83.33333%; }
  .xlarge-margin-collapse > .small-11 {
    width: 91.66667%; }
  .xlarge-margin-collapse > .small-12 {
    width: 100%; } }

@media screen and (min-width: 75em) {
  .xlarge-margin-collapse > .medium-1 {
    width: 8.33333%; }
  .xlarge-margin-collapse > .medium-2 {
    width: 16.66667%; }
  .xlarge-margin-collapse > .medium-3 {
    width: 25%; }
  .xlarge-margin-collapse > .medium-4 {
    width: 33.33333%; }
  .xlarge-margin-collapse > .medium-5 {
    width: 41.66667%; }
  .xlarge-margin-collapse > .medium-6 {
    width: 50%; }
  .xlarge-margin-collapse > .medium-7 {
    width: 58.33333%; }
  .xlarge-margin-collapse > .medium-8 {
    width: 66.66667%; }
  .xlarge-margin-collapse > .medium-9 {
    width: 75%; }
  .xlarge-margin-collapse > .medium-10 {
    width: 83.33333%; }
  .xlarge-margin-collapse > .medium-11 {
    width: 91.66667%; }
  .xlarge-margin-collapse > .medium-12 {
    width: 100%; } }

@media screen and (min-width: 75em) {
  .xlarge-margin-collapse > .large-1 {
    width: 8.33333%; }
  .xlarge-margin-collapse > .large-2 {
    width: 16.66667%; }
  .xlarge-margin-collapse > .large-3 {
    width: 25%; }
  .xlarge-margin-collapse > .large-4 {
    width: 33.33333%; }
  .xlarge-margin-collapse > .large-5 {
    width: 41.66667%; }
  .xlarge-margin-collapse > .large-6 {
    width: 50%; }
  .xlarge-margin-collapse > .large-7 {
    width: 58.33333%; }
  .xlarge-margin-collapse > .large-8 {
    width: 66.66667%; }
  .xlarge-margin-collapse > .large-9 {
    width: 75%; }
  .xlarge-margin-collapse > .large-10 {
    width: 83.33333%; }
  .xlarge-margin-collapse > .large-11 {
    width: 91.66667%; }
  .xlarge-margin-collapse > .large-12 {
    width: 100%; } }

@media screen and (min-width: 75em) {
  .xlarge-margin-collapse > .xlarge-1 {
    width: 8.33333%; }
  .xlarge-margin-collapse > .xlarge-2 {
    width: 16.66667%; }
  .xlarge-margin-collapse > .xlarge-3 {
    width: 25%; }
  .xlarge-margin-collapse > .xlarge-4 {
    width: 33.33333%; }
  .xlarge-margin-collapse > .xlarge-5 {
    width: 41.66667%; }
  .xlarge-margin-collapse > .xlarge-6 {
    width: 50%; }
  .xlarge-margin-collapse > .xlarge-7 {
    width: 58.33333%; }
  .xlarge-margin-collapse > .xlarge-8 {
    width: 66.66667%; }
  .xlarge-margin-collapse > .xlarge-9 {
    width: 75%; }
  .xlarge-margin-collapse > .xlarge-10 {
    width: 83.33333%; }
  .xlarge-margin-collapse > .xlarge-11 {
    width: 91.66667%; }
  .xlarge-margin-collapse > .xlarge-12 {
    width: 100%; } }

@media screen and (min-width: 90em) {
  .xlarge-margin-collapse > .xxlarge-1 {
    width: 8.33333%; }
  .xlarge-margin-collapse > .xxlarge-2 {
    width: 16.66667%; }
  .xlarge-margin-collapse > .xxlarge-3 {
    width: 25%; }
  .xlarge-margin-collapse > .xxlarge-4 {
    width: 33.33333%; }
  .xlarge-margin-collapse > .xxlarge-5 {
    width: 41.66667%; }
  .xlarge-margin-collapse > .xxlarge-6 {
    width: 50%; }
  .xlarge-margin-collapse > .xxlarge-7 {
    width: 58.33333%; }
  .xlarge-margin-collapse > .xxlarge-8 {
    width: 66.66667%; }
  .xlarge-margin-collapse > .xxlarge-9 {
    width: 75%; }
  .xlarge-margin-collapse > .xxlarge-10 {
    width: 83.33333%; }
  .xlarge-margin-collapse > .xxlarge-11 {
    width: 91.66667%; }
  .xlarge-margin-collapse > .xxlarge-12 {
    width: 100%; } }

@media screen and (min-width: 75em) {
  .xlarge-padding-collapse {
    margin-right: 0;
    margin-left: 0; }
    .xlarge-padding-collapse > .cell {
      padding-right: 0;
      padding-left: 0; } }

@media screen and (min-width: 90em) {
  .xxlarge-margin-collapse {
    margin-right: 0;
    margin-left: 0; }
    .xxlarge-margin-collapse > .cell {
      margin-right: 0;
      margin-left: 0; } }

@media screen and (min-width: 90em) {
  .xxlarge-margin-collapse > .small-1 {
    width: 8.33333%; }
  .xxlarge-margin-collapse > .small-2 {
    width: 16.66667%; }
  .xxlarge-margin-collapse > .small-3 {
    width: 25%; }
  .xxlarge-margin-collapse > .small-4 {
    width: 33.33333%; }
  .xxlarge-margin-collapse > .small-5 {
    width: 41.66667%; }
  .xxlarge-margin-collapse > .small-6 {
    width: 50%; }
  .xxlarge-margin-collapse > .small-7 {
    width: 58.33333%; }
  .xxlarge-margin-collapse > .small-8 {
    width: 66.66667%; }
  .xxlarge-margin-collapse > .small-9 {
    width: 75%; }
  .xxlarge-margin-collapse > .small-10 {
    width: 83.33333%; }
  .xxlarge-margin-collapse > .small-11 {
    width: 91.66667%; }
  .xxlarge-margin-collapse > .small-12 {
    width: 100%; } }

@media screen and (min-width: 90em) {
  .xxlarge-margin-collapse > .medium-1 {
    width: 8.33333%; }
  .xxlarge-margin-collapse > .medium-2 {
    width: 16.66667%; }
  .xxlarge-margin-collapse > .medium-3 {
    width: 25%; }
  .xxlarge-margin-collapse > .medium-4 {
    width: 33.33333%; }
  .xxlarge-margin-collapse > .medium-5 {
    width: 41.66667%; }
  .xxlarge-margin-collapse > .medium-6 {
    width: 50%; }
  .xxlarge-margin-collapse > .medium-7 {
    width: 58.33333%; }
  .xxlarge-margin-collapse > .medium-8 {
    width: 66.66667%; }
  .xxlarge-margin-collapse > .medium-9 {
    width: 75%; }
  .xxlarge-margin-collapse > .medium-10 {
    width: 83.33333%; }
  .xxlarge-margin-collapse > .medium-11 {
    width: 91.66667%; }
  .xxlarge-margin-collapse > .medium-12 {
    width: 100%; } }

@media screen and (min-width: 90em) {
  .xxlarge-margin-collapse > .large-1 {
    width: 8.33333%; }
  .xxlarge-margin-collapse > .large-2 {
    width: 16.66667%; }
  .xxlarge-margin-collapse > .large-3 {
    width: 25%; }
  .xxlarge-margin-collapse > .large-4 {
    width: 33.33333%; }
  .xxlarge-margin-collapse > .large-5 {
    width: 41.66667%; }
  .xxlarge-margin-collapse > .large-6 {
    width: 50%; }
  .xxlarge-margin-collapse > .large-7 {
    width: 58.33333%; }
  .xxlarge-margin-collapse > .large-8 {
    width: 66.66667%; }
  .xxlarge-margin-collapse > .large-9 {
    width: 75%; }
  .xxlarge-margin-collapse > .large-10 {
    width: 83.33333%; }
  .xxlarge-margin-collapse > .large-11 {
    width: 91.66667%; }
  .xxlarge-margin-collapse > .large-12 {
    width: 100%; } }

@media screen and (min-width: 90em) {
  .xxlarge-margin-collapse > .xlarge-1 {
    width: 8.33333%; }
  .xxlarge-margin-collapse > .xlarge-2 {
    width: 16.66667%; }
  .xxlarge-margin-collapse > .xlarge-3 {
    width: 25%; }
  .xxlarge-margin-collapse > .xlarge-4 {
    width: 33.33333%; }
  .xxlarge-margin-collapse > .xlarge-5 {
    width: 41.66667%; }
  .xxlarge-margin-collapse > .xlarge-6 {
    width: 50%; }
  .xxlarge-margin-collapse > .xlarge-7 {
    width: 58.33333%; }
  .xxlarge-margin-collapse > .xlarge-8 {
    width: 66.66667%; }
  .xxlarge-margin-collapse > .xlarge-9 {
    width: 75%; }
  .xxlarge-margin-collapse > .xlarge-10 {
    width: 83.33333%; }
  .xxlarge-margin-collapse > .xlarge-11 {
    width: 91.66667%; }
  .xxlarge-margin-collapse > .xlarge-12 {
    width: 100%; } }

@media screen and (min-width: 90em) {
  .xxlarge-margin-collapse > .xxlarge-1 {
    width: 8.33333%; }
  .xxlarge-margin-collapse > .xxlarge-2 {
    width: 16.66667%; }
  .xxlarge-margin-collapse > .xxlarge-3 {
    width: 25%; }
  .xxlarge-margin-collapse > .xxlarge-4 {
    width: 33.33333%; }
  .xxlarge-margin-collapse > .xxlarge-5 {
    width: 41.66667%; }
  .xxlarge-margin-collapse > .xxlarge-6 {
    width: 50%; }
  .xxlarge-margin-collapse > .xxlarge-7 {
    width: 58.33333%; }
  .xxlarge-margin-collapse > .xxlarge-8 {
    width: 66.66667%; }
  .xxlarge-margin-collapse > .xxlarge-9 {
    width: 75%; }
  .xxlarge-margin-collapse > .xxlarge-10 {
    width: 83.33333%; }
  .xxlarge-margin-collapse > .xxlarge-11 {
    width: 91.66667%; }
  .xxlarge-margin-collapse > .xxlarge-12 {
    width: 100%; } }

@media screen and (min-width: 90em) {
  .xxlarge-padding-collapse {
    margin-right: 0;
    margin-left: 0; }
    .xxlarge-padding-collapse > .cell {
      padding-right: 0;
      padding-left: 0; } }

.small-offset-0 {
  margin-left: 0%; }

.grid-margin-x > .small-offset-0 {
  margin-left: calc(0% + 0.5625rem); }

.small-offset-1 {
  margin-left: 8.33333%; }

.grid-margin-x > .small-offset-1 {
  margin-left: calc(8.33333% + 0.5625rem); }

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

.grid-margin-x > .small-offset-2 {
  margin-left: calc(16.66667% + 0.5625rem); }

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

.grid-margin-x > .small-offset-3 {
  margin-left: calc(25% + 0.5625rem); }

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

.grid-margin-x > .small-offset-4 {
  margin-left: calc(33.33333% + 0.5625rem); }

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

.grid-margin-x > .small-offset-5 {
  margin-left: calc(41.66667% + 0.5625rem); }

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

.grid-margin-x > .small-offset-6 {
  margin-left: calc(50% + 0.5625rem); }

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

.grid-margin-x > .small-offset-7 {
  margin-left: calc(58.33333% + 0.5625rem); }

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

.grid-margin-x > .small-offset-8 {
  margin-left: calc(66.66667% + 0.5625rem); }

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

.grid-margin-x > .small-offset-9 {
  margin-left: calc(75% + 0.5625rem); }

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

.grid-margin-x > .small-offset-10 {
  margin-left: calc(83.33333% + 0.5625rem); }

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

.grid-margin-x > .small-offset-11 {
  margin-left: calc(91.66667% + 0.5625rem); }

@media print, screen and (min-width: 40em) {
  .medium-offset-0 {
    margin-left: 0%; }
  .grid-margin-x > .medium-offset-0 {
    margin-left: calc(0% + 0.625rem); }
  .medium-offset-1 {
    margin-left: 8.33333%; }
  .grid-margin-x > .medium-offset-1 {
    margin-left: calc(8.33333% + 0.625rem); }
  .medium-offset-2 {
    margin-left: 16.66667%; }
  .grid-margin-x > .medium-offset-2 {
    margin-left: calc(16.66667% + 0.625rem); }
  .medium-offset-3 {
    margin-left: 25%; }
  .grid-margin-x > .medium-offset-3 {
    margin-left: calc(25% + 0.625rem); }
  .medium-offset-4 {
    margin-left: 33.33333%; }
  .grid-margin-x > .medium-offset-4 {
    margin-left: calc(33.33333% + 0.625rem); }
  .medium-offset-5 {
    margin-left: 41.66667%; }
  .grid-margin-x > .medium-offset-5 {
    margin-left: calc(41.66667% + 0.625rem); }
  .medium-offset-6 {
    margin-left: 50%; }
  .grid-margin-x > .medium-offset-6 {
    margin-left: calc(50% + 0.625rem); }
  .medium-offset-7 {
    margin-left: 58.33333%; }
  .grid-margin-x > .medium-offset-7 {
    margin-left: calc(58.33333% + 0.625rem); }
  .medium-offset-8 {
    margin-left: 66.66667%; }
  .grid-margin-x > .medium-offset-8 {
    margin-left: calc(66.66667% + 0.625rem); }
  .medium-offset-9 {
    margin-left: 75%; }
  .grid-margin-x > .medium-offset-9 {
    margin-left: calc(75% + 0.625rem); }
  .medium-offset-10 {
    margin-left: 83.33333%; }
  .grid-margin-x > .medium-offset-10 {
    margin-left: calc(83.33333% + 0.625rem); }
  .medium-offset-11 {
    margin-left: 91.66667%; }
  .grid-margin-x > .medium-offset-11 {
    margin-left: calc(91.66667% + 0.625rem); } }

@media print, screen and (min-width: 64em) {
  .large-offset-0 {
    margin-left: 0%; }
  .grid-margin-x > .large-offset-0 {
    margin-left: calc(0% + 0.75rem); }
  .large-offset-1 {
    margin-left: 8.33333%; }
  .grid-margin-x > .large-offset-1 {
    margin-left: calc(8.33333% + 0.75rem); }
  .large-offset-2 {
    margin-left: 16.66667%; }
  .grid-margin-x > .large-offset-2 {
    margin-left: calc(16.66667% + 0.75rem); }
  .large-offset-3 {
    margin-left: 25%; }
  .grid-margin-x > .large-offset-3 {
    margin-left: calc(25% + 0.75rem); }
  .large-offset-4 {
    margin-left: 33.33333%; }
  .grid-margin-x > .large-offset-4 {
    margin-left: calc(33.33333% + 0.75rem); }
  .large-offset-5 {
    margin-left: 41.66667%; }
  .grid-margin-x > .large-offset-5 {
    margin-left: calc(41.66667% + 0.75rem); }
  .large-offset-6 {
    margin-left: 50%; }
  .grid-margin-x > .large-offset-6 {
    margin-left: calc(50% + 0.75rem); }
  .large-offset-7 {
    margin-left: 58.33333%; }
  .grid-margin-x > .large-offset-7 {
    margin-left: calc(58.33333% + 0.75rem); }
  .large-offset-8 {
    margin-left: 66.66667%; }
  .grid-margin-x > .large-offset-8 {
    margin-left: calc(66.66667% + 0.75rem); }
  .large-offset-9 {
    margin-left: 75%; }
  .grid-margin-x > .large-offset-9 {
    margin-left: calc(75% + 0.75rem); }
  .large-offset-10 {
    margin-left: 83.33333%; }
  .grid-margin-x > .large-offset-10 {
    margin-left: calc(83.33333% + 0.75rem); }
  .large-offset-11 {
    margin-left: 91.66667%; }
  .grid-margin-x > .large-offset-11 {
    margin-left: calc(91.66667% + 0.75rem); } }

@media screen and (min-width: 75em) {
  .xlarge-offset-0 {
    margin-left: 0%; }
  .grid-margin-x > .xlarge-offset-0 {
    margin-left: calc(0% + 0.75rem); }
  .xlarge-offset-1 {
    margin-left: 8.33333%; }
  .grid-margin-x > .xlarge-offset-1 {
    margin-left: calc(8.33333% + 0.75rem); }
  .xlarge-offset-2 {
    margin-left: 16.66667%; }
  .grid-margin-x > .xlarge-offset-2 {
    margin-left: calc(16.66667% + 0.75rem); }
  .xlarge-offset-3 {
    margin-left: 25%; }
  .grid-margin-x > .xlarge-offset-3 {
    margin-left: calc(25% + 0.75rem); }
  .xlarge-offset-4 {
    margin-left: 33.33333%; }
  .grid-margin-x > .xlarge-offset-4 {
    margin-left: calc(33.33333% + 0.75rem); }
  .xlarge-offset-5 {
    margin-left: 41.66667%; }
  .grid-margin-x > .xlarge-offset-5 {
    margin-left: calc(41.66667% + 0.75rem); }
  .xlarge-offset-6 {
    margin-left: 50%; }
  .grid-margin-x > .xlarge-offset-6 {
    margin-left: calc(50% + 0.75rem); }
  .xlarge-offset-7 {
    margin-left: 58.33333%; }
  .grid-margin-x > .xlarge-offset-7 {
    margin-left: calc(58.33333% + 0.75rem); }
  .xlarge-offset-8 {
    margin-left: 66.66667%; }
  .grid-margin-x > .xlarge-offset-8 {
    margin-left: calc(66.66667% + 0.75rem); }
  .xlarge-offset-9 {
    margin-left: 75%; }
  .grid-margin-x > .xlarge-offset-9 {
    margin-left: calc(75% + 0.75rem); }
  .xlarge-offset-10 {
    margin-left: 83.33333%; }
  .grid-margin-x > .xlarge-offset-10 {
    margin-left: calc(83.33333% + 0.75rem); }
  .xlarge-offset-11 {
    margin-left: 91.66667%; }
  .grid-margin-x > .xlarge-offset-11 {
    margin-left: calc(91.66667% + 0.75rem); } }

@media screen and (min-width: 90em) {
  .xxlarge-offset-0 {
    margin-left: 0%; }
  .grid-margin-x > .xxlarge-offset-0 {
    margin-left: calc(0% + 0.75rem); }
  .xxlarge-offset-1 {
    margin-left: 8.33333%; }
  .grid-margin-x > .xxlarge-offset-1 {
    margin-left: calc(8.33333% + 0.75rem); }
  .xxlarge-offset-2 {
    margin-left: 16.66667%; }
  .grid-margin-x > .xxlarge-offset-2 {
    margin-left: calc(16.66667% + 0.75rem); }
  .xxlarge-offset-3 {
    margin-left: 25%; }
  .grid-margin-x > .xxlarge-offset-3 {
    margin-left: calc(25% + 0.75rem); }
  .xxlarge-offset-4 {
    margin-left: 33.33333%; }
  .grid-margin-x > .xxlarge-offset-4 {
    margin-left: calc(33.33333% + 0.75rem); }
  .xxlarge-offset-5 {
    margin-left: 41.66667%; }
  .grid-margin-x > .xxlarge-offset-5 {
    margin-left: calc(41.66667% + 0.75rem); }
  .xxlarge-offset-6 {
    margin-left: 50%; }
  .grid-margin-x > .xxlarge-offset-6 {
    margin-left: calc(50% + 0.75rem); }
  .xxlarge-offset-7 {
    margin-left: 58.33333%; }
  .grid-margin-x > .xxlarge-offset-7 {
    margin-left: calc(58.33333% + 0.75rem); }
  .xxlarge-offset-8 {
    margin-left: 66.66667%; }
  .grid-margin-x > .xxlarge-offset-8 {
    margin-left: calc(66.66667% + 0.75rem); }
  .xxlarge-offset-9 {
    margin-left: 75%; }
  .grid-margin-x > .xxlarge-offset-9 {
    margin-left: calc(75% + 0.75rem); }
  .xxlarge-offset-10 {
    margin-left: 83.33333%; }
  .grid-margin-x > .xxlarge-offset-10 {
    margin-left: calc(83.33333% + 0.75rem); }
  .xxlarge-offset-11 {
    margin-left: 91.66667%; }
  .grid-margin-x > .xxlarge-offset-11 {
    margin-left: calc(91.66667% + 0.75rem); } }

.grid-y {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-flow: column nowrap;
      -ms-flex-flow: column nowrap;
          flex-flow: column nowrap; }
  .grid-y > .cell {
    width: auto; }
  .grid-y > .auto {
    height: auto; }
  .grid-y > .shrink {
    height: auto; }
  .grid-y > .small-shrink, .grid-y > .small-full, .grid-y > .small-1, .grid-y > .small-2, .grid-y > .small-3, .grid-y > .small-4, .grid-y > .small-5, .grid-y > .small-6, .grid-y > .small-7, .grid-y > .small-8, .grid-y > .small-9, .grid-y > .small-10, .grid-y > .small-11, .grid-y > .small-12 {
    -webkit-flex-basis: auto;
        -ms-flex-preferred-size: auto;
            flex-basis: auto; }
  @media print, screen and (min-width: 40em) {
    .grid-y > .medium-shrink, .grid-y > .medium-full, .grid-y > .medium-1, .grid-y > .medium-2, .grid-y > .medium-3, .grid-y > .medium-4, .grid-y > .medium-5, .grid-y > .medium-6, .grid-y > .medium-7, .grid-y > .medium-8, .grid-y > .medium-9, .grid-y > .medium-10, .grid-y > .medium-11, .grid-y > .medium-12 {
      -webkit-flex-basis: auto;
          -ms-flex-preferred-size: auto;
              flex-basis: auto; } }
  @media print, screen and (min-width: 64em) {
    .grid-y > .large-shrink, .grid-y > .large-full, .grid-y > .large-1, .grid-y > .large-2, .grid-y > .large-3, .grid-y > .large-4, .grid-y > .large-5, .grid-y > .large-6, .grid-y > .large-7, .grid-y > .large-8, .grid-y > .large-9, .grid-y > .large-10, .grid-y > .large-11, .grid-y > .large-12 {
      -webkit-flex-basis: auto;
          -ms-flex-preferred-size: auto;
              flex-basis: auto; } }
  @media screen and (min-width: 75em) {
    .grid-y > .xlarge-shrink, .grid-y > .xlarge-full, .grid-y > .xlarge-1, .grid-y > .xlarge-2, .grid-y > .xlarge-3, .grid-y > .xlarge-4, .grid-y > .xlarge-5, .grid-y > .xlarge-6, .grid-y > .xlarge-7, .grid-y > .xlarge-8, .grid-y > .xlarge-9, .grid-y > .xlarge-10, .grid-y > .xlarge-11, .grid-y > .xlarge-12 {
      -webkit-flex-basis: auto;
          -ms-flex-preferred-size: auto;
              flex-basis: auto; } }
  @media screen and (min-width: 90em) {
    .grid-y > .xxlarge-shrink, .grid-y > .xxlarge-full, .grid-y > .xxlarge-1, .grid-y > .xxlarge-2, .grid-y > .xxlarge-3, .grid-y > .xxlarge-4, .grid-y > .xxlarge-5, .grid-y > .xxlarge-6, .grid-y > .xxlarge-7, .grid-y > .xxlarge-8, .grid-y > .xxlarge-9, .grid-y > .xxlarge-10, .grid-y > .xxlarge-11, .grid-y > .xxlarge-12 {
      -webkit-flex-basis: auto;
          -ms-flex-preferred-size: auto;
              flex-basis: auto; } }
  .grid-y > .small-1 {
    height: 8.33333%; }
  .grid-y > .small-2 {
    height: 16.66667%; }
  .grid-y > .small-3 {
    height: 25%; }
  .grid-y > .small-4 {
    height: 33.33333%; }
  .grid-y > .small-5 {
    height: 41.66667%; }
  .grid-y > .small-6 {
    height: 50%; }
  .grid-y > .small-7 {
    height: 58.33333%; }
  .grid-y > .small-8 {
    height: 66.66667%; }
  .grid-y > .small-9 {
    height: 75%; }
  .grid-y > .small-10 {
    height: 83.33333%; }
  .grid-y > .small-11 {
    height: 91.66667%; }
  .grid-y > .small-12 {
    height: 100%; }
  @media print, screen and (min-width: 40em) {
    .grid-y > .medium-auto {
      -webkit-flex: 1 1 0px;
          -ms-flex: 1 1 0px;
              flex: 1 1 0px;
      height: auto; }
    .grid-y > .medium-shrink {
      height: auto; }
    .grid-y > .medium-1 {
      height: 8.33333%; }
    .grid-y > .medium-2 {
      height: 16.66667%; }
    .grid-y > .medium-3 {
      height: 25%; }
    .grid-y > .medium-4 {
      height: 33.33333%; }
    .grid-y > .medium-5 {
      height: 41.66667%; }
    .grid-y > .medium-6 {
      height: 50%; }
    .grid-y > .medium-7 {
      height: 58.33333%; }
    .grid-y > .medium-8 {
      height: 66.66667%; }
    .grid-y > .medium-9 {
      height: 75%; }
    .grid-y > .medium-10 {
      height: 83.33333%; }
    .grid-y > .medium-11 {
      height: 91.66667%; }
    .grid-y > .medium-12 {
      height: 100%; } }
  @media print, screen and (min-width: 64em) {
    .grid-y > .large-auto {
      -webkit-flex: 1 1 0px;
          -ms-flex: 1 1 0px;
              flex: 1 1 0px;
      height: auto; }
    .grid-y > .large-shrink {
      height: auto; }
    .grid-y > .large-1 {
      height: 8.33333%; }
    .grid-y > .large-2 {
      height: 16.66667%; }
    .grid-y > .large-3 {
      height: 25%; }
    .grid-y > .large-4 {
      height: 33.33333%; }
    .grid-y > .large-5 {
      height: 41.66667%; }
    .grid-y > .large-6 {
      height: 50%; }
    .grid-y > .large-7 {
      height: 58.33333%; }
    .grid-y > .large-8 {
      height: 66.66667%; }
    .grid-y > .large-9 {
      height: 75%; }
    .grid-y > .large-10 {
      height: 83.33333%; }
    .grid-y > .large-11 {
      height: 91.66667%; }
    .grid-y > .large-12 {
      height: 100%; } }
  @media screen and (min-width: 75em) {
    .grid-y > .xlarge-auto {
      -webkit-flex: 1 1 0px;
          -ms-flex: 1 1 0px;
              flex: 1 1 0px;
      height: auto; }
    .grid-y > .xlarge-shrink {
      height: auto; }
    .grid-y > .xlarge-1 {
      height: 8.33333%; }
    .grid-y > .xlarge-2 {
      height: 16.66667%; }
    .grid-y > .xlarge-3 {
      height: 25%; }
    .grid-y > .xlarge-4 {
      height: 33.33333%; }
    .grid-y > .xlarge-5 {
      height: 41.66667%; }
    .grid-y > .xlarge-6 {
      height: 50%; }
    .grid-y > .xlarge-7 {
      height: 58.33333%; }
    .grid-y > .xlarge-8 {
      height: 66.66667%; }
    .grid-y > .xlarge-9 {
      height: 75%; }
    .grid-y > .xlarge-10 {
      height: 83.33333%; }
    .grid-y > .xlarge-11 {
      height: 91.66667%; }
    .grid-y > .xlarge-12 {
      height: 100%; } }
  @media screen and (min-width: 90em) {
    .grid-y > .xxlarge-auto {
      -webkit-flex: 1 1 0px;
          -ms-flex: 1 1 0px;
              flex: 1 1 0px;
      height: auto; }
    .grid-y > .xxlarge-shrink {
      height: auto; }
    .grid-y > .xxlarge-1 {
      height: 8.33333%; }
    .grid-y > .xxlarge-2 {
      height: 16.66667%; }
    .grid-y > .xxlarge-3 {
      height: 25%; }
    .grid-y > .xxlarge-4 {
      height: 33.33333%; }
    .grid-y > .xxlarge-5 {
      height: 41.66667%; }
    .grid-y > .xxlarge-6 {
      height: 50%; }
    .grid-y > .xxlarge-7 {
      height: 58.33333%; }
    .grid-y > .xxlarge-8 {
      height: 66.66667%; }
    .grid-y > .xxlarge-9 {
      height: 75%; }
    .grid-y > .xxlarge-10 {
      height: 83.33333%; }
    .grid-y > .xxlarge-11 {
      height: 91.66667%; }
    .grid-y > .xxlarge-12 {
      height: 100%; } }

.grid-padding-y .grid-padding-y {
  margin-top: -0.5625rem;
  margin-bottom: -0.5625rem; }
  @media print, screen and (min-width: 40em) {
    .grid-padding-y .grid-padding-y {
      margin-top: -0.625rem;
      margin-bottom: -0.625rem; } }
  @media print, screen and (min-width: 64em) {
    .grid-padding-y .grid-padding-y {
      margin-top: -0.75rem;
      margin-bottom: -0.75rem; } }
  @media screen and (min-width: 75em) {
    .grid-padding-y .grid-padding-y {
      margin-top: -0.75rem;
      margin-bottom: -0.75rem; } }
  @media screen and (min-width: 90em) {
    .grid-padding-y .grid-padding-y {
      margin-top: -0.75rem;
      margin-bottom: -0.75rem; } }

.grid-padding-y > .cell {
  padding-top: 0.5625rem;
  padding-bottom: 0.5625rem; }
  @media print, screen and (min-width: 40em) {
    .grid-padding-y > .cell {
      padding-top: 0.625rem;
      padding-bottom: 0.625rem; } }
  @media print, screen and (min-width: 64em) {
    .grid-padding-y > .cell {
      padding-top: 0.75rem;
      padding-bottom: 0.75rem; } }
  @media screen and (min-width: 75em) {
    .grid-padding-y > .cell {
      padding-top: 0.75rem;
      padding-bottom: 0.75rem; } }
  @media screen and (min-width: 90em) {
    .grid-padding-y > .cell {
      padding-top: 0.75rem;
      padding-bottom: 0.75rem; } }

.grid-margin-y {
  margin-top: -0.5625rem;
  margin-bottom: -0.5625rem; }
  @media print, screen and (min-width: 40em) {
    .grid-margin-y {
      margin-top: -0.625rem;
      margin-bottom: -0.625rem; } }
  @media print, screen and (min-width: 64em) {
    .grid-margin-y {
      margin-top: -0.75rem;
      margin-bottom: -0.75rem; } }
  @media screen and (min-width: 75em) {
    .grid-margin-y {
      margin-top: -0.75rem;
      margin-bottom: -0.75rem; } }
  @media screen and (min-width: 90em) {
    .grid-margin-y {
      margin-top: -0.75rem;
      margin-bottom: -0.75rem; } }
  .grid-margin-y > .cell {
    height: calc(100% - 1.125rem);
    margin-top: 0.5625rem;
    margin-bottom: 0.5625rem; }
  @media print, screen and (min-width: 40em) {
    .grid-margin-y > .cell {
      height: calc(100% - 1.25rem);
      margin-top: 0.625rem;
      margin-bottom: 0.625rem; } }
  @media print, screen and (min-width: 64em) {
    .grid-margin-y > .cell {
      height: calc(100% - 1.5rem);
      margin-top: 0.75rem;
      margin-bottom: 0.75rem; } }
  @media screen and (min-width: 75em) {
    .grid-margin-y > .cell {
      height: calc(100% - 1.5rem);
      margin-top: 0.75rem;
      margin-bottom: 0.75rem; } }
  @media screen and (min-width: 90em) {
    .grid-margin-y > .cell {
      height: calc(100% - 1.5rem);
      margin-top: 0.75rem;
      margin-bottom: 0.75rem; } }
  .grid-margin-y > .auto {
    height: auto; }
  .grid-margin-y > .shrink {
    height: auto; }
  .grid-margin-y > .small-1 {
    height: calc(8.33333% - 1.125rem); }
  .grid-margin-y > .small-2 {
    height: calc(16.66667% - 1.125rem); }
  .grid-margin-y > .small-3 {
    height: calc(25% - 1.125rem); }
  .grid-margin-y > .small-4 {
    height: calc(33.33333% - 1.125rem); }
  .grid-margin-y > .small-5 {
    height: calc(41.66667% - 1.125rem); }
  .grid-margin-y > .small-6 {
    height: calc(50% - 1.125rem); }
  .grid-margin-y > .small-7 {
    height: calc(58.33333% - 1.125rem); }
  .grid-margin-y > .small-8 {
    height: calc(66.66667% - 1.125rem); }
  .grid-margin-y > .small-9 {
    height: calc(75% - 1.125rem); }
  .grid-margin-y > .small-10 {
    height: calc(83.33333% - 1.125rem); }
  .grid-margin-y > .small-11 {
    height: calc(91.66667% - 1.125rem); }
  .grid-margin-y > .small-12 {
    height: calc(100% - 1.125rem); }
  @media print, screen and (min-width: 40em) {
    .grid-margin-y > .auto {
      height: auto; }
    .grid-margin-y > .shrink {
      height: auto; }
    .grid-margin-y > .small-1 {
      height: calc(8.33333% - 1.25rem); }
    .grid-margin-y > .small-2 {
      height: calc(16.66667% - 1.25rem); }
    .grid-margin-y > .small-3 {
      height: calc(25% - 1.25rem); }
    .grid-margin-y > .small-4 {
      height: calc(33.33333% - 1.25rem); }
    .grid-margin-y > .small-5 {
      height: calc(41.66667% - 1.25rem); }
    .grid-margin-y > .small-6 {
      height: calc(50% - 1.25rem); }
    .grid-margin-y > .small-7 {
      height: calc(58.33333% - 1.25rem); }
    .grid-margin-y > .small-8 {
      height: calc(66.66667% - 1.25rem); }
    .grid-margin-y > .small-9 {
      height: calc(75% - 1.25rem); }
    .grid-margin-y > .small-10 {
      height: calc(83.33333% - 1.25rem); }
    .grid-margin-y > .small-11 {
      height: calc(91.66667% - 1.25rem); }
    .grid-margin-y > .small-12 {
      height: calc(100% - 1.25rem); }
    .grid-margin-y > .medium-auto {
      height: auto; }
    .grid-margin-y > .medium-shrink {
      height: auto; }
    .grid-margin-y > .medium-1 {
      height: calc(8.33333% - 1.25rem); }
    .grid-margin-y > .medium-2 {
      height: calc(16.66667% - 1.25rem); }
    .grid-margin-y > .medium-3 {
      height: calc(25% - 1.25rem); }
    .grid-margin-y > .medium-4 {
      height: calc(33.33333% - 1.25rem); }
    .grid-margin-y > .medium-5 {
      height: calc(41.66667% - 1.25rem); }
    .grid-margin-y > .medium-6 {
      height: calc(50% - 1.25rem); }
    .grid-margin-y > .medium-7 {
      height: calc(58.33333% - 1.25rem); }
    .grid-margin-y > .medium-8 {
      height: calc(66.66667% - 1.25rem); }
    .grid-margin-y > .medium-9 {
      height: calc(75% - 1.25rem); }
    .grid-margin-y > .medium-10 {
      height: calc(83.33333% - 1.25rem); }
    .grid-margin-y > .medium-11 {
      height: calc(91.66667% - 1.25rem); }
    .grid-margin-y > .medium-12 {
      height: calc(100% - 1.25rem); } }
  @media print, screen and (min-width: 64em) {
    .grid-margin-y > .auto {
      height: auto; }
    .grid-margin-y > .shrink {
      height: auto; }
    .grid-margin-y > .small-1 {
      height: calc(8.33333% - 1.5rem); }
    .grid-margin-y > .small-2 {
      height: calc(16.66667% - 1.5rem); }
    .grid-margin-y > .small-3 {
      height: calc(25% - 1.5rem); }
    .grid-margin-y > .small-4 {
      height: calc(33.33333% - 1.5rem); }
    .grid-margin-y > .small-5 {
      height: calc(41.66667% - 1.5rem); }
    .grid-margin-y > .small-6 {
      height: calc(50% - 1.5rem); }
    .grid-margin-y > .small-7 {
      height: calc(58.33333% - 1.5rem); }
    .grid-margin-y > .small-8 {
      height: calc(66.66667% - 1.5rem); }
    .grid-margin-y > .small-9 {
      height: calc(75% - 1.5rem); }
    .grid-margin-y > .small-10 {
      height: calc(83.33333% - 1.5rem); }
    .grid-margin-y > .small-11 {
      height: calc(91.66667% - 1.5rem); }
    .grid-margin-y > .small-12 {
      height: calc(100% - 1.5rem); }
    .grid-margin-y > .medium-auto {
      height: auto; }
    .grid-margin-y > .medium-shrink {
      height: auto; }
    .grid-margin-y > .medium-1 {
      height: calc(8.33333% - 1.5rem); }
    .grid-margin-y > .medium-2 {
      height: calc(16.66667% - 1.5rem); }
    .grid-margin-y > .medium-3 {
      height: calc(25% - 1.5rem); }
    .grid-margin-y > .medium-4 {
      height: calc(33.33333% - 1.5rem); }
    .grid-margin-y > .medium-5 {
      height: calc(41.66667% - 1.5rem); }
    .grid-margin-y > .medium-6 {
      height: calc(50% - 1.5rem); }
    .grid-margin-y > .medium-7 {
      height: calc(58.33333% - 1.5rem); }
    .grid-margin-y > .medium-8 {
      height: calc(66.66667% - 1.5rem); }
    .grid-margin-y > .medium-9 {
      height: calc(75% - 1.5rem); }
    .grid-margin-y > .medium-10 {
      height: calc(83.33333% - 1.5rem); }
    .grid-margin-y > .medium-11 {
      height: calc(91.66667% - 1.5rem); }
    .grid-margin-y > .medium-12 {
      height: calc(100% - 1.5rem); }
    .grid-margin-y > .large-auto {
      height: auto; }
    .grid-margin-y > .large-shrink {
      height: auto; }
    .grid-margin-y > .large-1 {
      height: calc(8.33333% - 1.5rem); }
    .grid-margin-y > .large-2 {
      height: calc(16.66667% - 1.5rem); }
    .grid-margin-y > .large-3 {
      height: calc(25% - 1.5rem); }
    .grid-margin-y > .large-4 {
      height: calc(33.33333% - 1.5rem); }
    .grid-margin-y > .large-5 {
      height: calc(41.66667% - 1.5rem); }
    .grid-margin-y > .large-6 {
      height: calc(50% - 1.5rem); }
    .grid-margin-y > .large-7 {
      height: calc(58.33333% - 1.5rem); }
    .grid-margin-y > .large-8 {
      height: calc(66.66667% - 1.5rem); }
    .grid-margin-y > .large-9 {
      height: calc(75% - 1.5rem); }
    .grid-margin-y > .large-10 {
      height: calc(83.33333% - 1.5rem); }
    .grid-margin-y > .large-11 {
      height: calc(91.66667% - 1.5rem); }
    .grid-margin-y > .large-12 {
      height: calc(100% - 1.5rem); } }
  @media screen and (min-width: 75em) {
    .grid-margin-y > .auto {
      height: auto; }
    .grid-margin-y > .shrink {
      height: auto; }
    .grid-margin-y > .small-1 {
      height: calc(8.33333% - 1.5rem); }
    .grid-margin-y > .small-2 {
      height: calc(16.66667% - 1.5rem); }
    .grid-margin-y > .small-3 {
      height: calc(25% - 1.5rem); }
    .grid-margin-y > .small-4 {
      height: calc(33.33333% - 1.5rem); }
    .grid-margin-y > .small-5 {
      height: calc(41.66667% - 1.5rem); }
    .grid-margin-y > .small-6 {
      height: calc(50% - 1.5rem); }
    .grid-margin-y > .small-7 {
      height: calc(58.33333% - 1.5rem); }
    .grid-margin-y > .small-8 {
      height: calc(66.66667% - 1.5rem); }
    .grid-margin-y > .small-9 {
      height: calc(75% - 1.5rem); }
    .grid-margin-y > .small-10 {
      height: calc(83.33333% - 1.5rem); }
    .grid-margin-y > .small-11 {
      height: calc(91.66667% - 1.5rem); }
    .grid-margin-y > .small-12 {
      height: calc(100% - 1.5rem); }
    .grid-margin-y > .medium-auto {
      height: auto; }
    .grid-margin-y > .medium-shrink {
      height: auto; }
    .grid-margin-y > .medium-1 {
      height: calc(8.33333% - 1.5rem); }
    .grid-margin-y > .medium-2 {
      height: calc(16.66667% - 1.5rem); }
    .grid-margin-y > .medium-3 {
      height: calc(25% - 1.5rem); }
    .grid-margin-y > .medium-4 {
      height: calc(33.33333% - 1.5rem); }
    .grid-margin-y > .medium-5 {
      height: calc(41.66667% - 1.5rem); }
    .grid-margin-y > .medium-6 {
      height: calc(50% - 1.5rem); }
    .grid-margin-y > .medium-7 {
      height: calc(58.33333% - 1.5rem); }
    .grid-margin-y > .medium-8 {
      height: calc(66.66667% - 1.5rem); }
    .grid-margin-y > .medium-9 {
      height: calc(75% - 1.5rem); }
    .grid-margin-y > .medium-10 {
      height: calc(83.33333% - 1.5rem); }
    .grid-margin-y > .medium-11 {
      height: calc(91.66667% - 1.5rem); }
    .grid-margin-y > .medium-12 {
      height: calc(100% - 1.5rem); }
    .grid-margin-y > .large-auto {
      height: auto; }
    .grid-margin-y > .large-shrink {
      height: auto; }
    .grid-margin-y > .large-1 {
      height: calc(8.33333% - 1.5rem); }
    .grid-margin-y > .large-2 {
      height: calc(16.66667% - 1.5rem); }
    .grid-margin-y > .large-3 {
      height: calc(25% - 1.5rem); }
    .grid-margin-y > .large-4 {
      height: calc(33.33333% - 1.5rem); }
    .grid-margin-y > .large-5 {
      height: calc(41.66667% - 1.5rem); }
    .grid-margin-y > .large-6 {
      height: calc(50% - 1.5rem); }
    .grid-margin-y > .large-7 {
      height: calc(58.33333% - 1.5rem); }
    .grid-margin-y > .large-8 {
      height: calc(66.66667% - 1.5rem); }
    .grid-margin-y > .large-9 {
      height: calc(75% - 1.5rem); }
    .grid-margin-y > .large-10 {
      height: calc(83.33333% - 1.5rem); }
    .grid-margin-y > .large-11 {
      height: calc(91.66667% - 1.5rem); }
    .grid-margin-y > .large-12 {
      height: calc(100% - 1.5rem); }
    .grid-margin-y > .xlarge-auto {
      height: auto; }
    .grid-margin-y > .xlarge-shrink {
      height: auto; }
    .grid-margin-y > .xlarge-1 {
      height: calc(8.33333% - 1.5rem); }
    .grid-margin-y > .xlarge-2 {
      height: calc(16.66667% - 1.5rem); }
    .grid-margin-y > .xlarge-3 {
      height: calc(25% - 1.5rem); }
    .grid-margin-y > .xlarge-4 {
      height: calc(33.33333% - 1.5rem); }
    .grid-margin-y > .xlarge-5 {
      height: calc(41.66667% - 1.5rem); }
    .grid-margin-y > .xlarge-6 {
      height: calc(50% - 1.5rem); }
    .grid-margin-y > .xlarge-7 {
      height: calc(58.33333% - 1.5rem); }
    .grid-margin-y > .xlarge-8 {
      height: calc(66.66667% - 1.5rem); }
    .grid-margin-y > .xlarge-9 {
      height: calc(75% - 1.5rem); }
    .grid-margin-y > .xlarge-10 {
      height: calc(83.33333% - 1.5rem); }
    .grid-margin-y > .xlarge-11 {
      height: calc(91.66667% - 1.5rem); }
    .grid-margin-y > .xlarge-12 {
      height: calc(100% - 1.5rem); } }
  @media screen and (min-width: 90em) {
    .grid-margin-y > .auto {
      height: auto; }
    .grid-margin-y > .shrink {
      height: auto; }
    .grid-margin-y > .small-1 {
      height: calc(8.33333% - 1.5rem); }
    .grid-margin-y > .small-2 {
      height: calc(16.66667% - 1.5rem); }
    .grid-margin-y > .small-3 {
      height: calc(25% - 1.5rem); }
    .grid-margin-y > .small-4 {
      height: calc(33.33333% - 1.5rem); }
    .grid-margin-y > .small-5 {
      height: calc(41.66667% - 1.5rem); }
    .grid-margin-y > .small-6 {
      height: calc(50% - 1.5rem); }
    .grid-margin-y > .small-7 {
      height: calc(58.33333% - 1.5rem); }
    .grid-margin-y > .small-8 {
      height: calc(66.66667% - 1.5rem); }
    .grid-margin-y > .small-9 {
      height: calc(75% - 1.5rem); }
    .grid-margin-y > .small-10 {
      height: calc(83.33333% - 1.5rem); }
    .grid-margin-y > .small-11 {
      height: calc(91.66667% - 1.5rem); }
    .grid-margin-y > .small-12 {
      height: calc(100% - 1.5rem); }
    .grid-margin-y > .medium-auto {
      height: auto; }
    .grid-margin-y > .medium-shrink {
      height: auto; }
    .grid-margin-y > .medium-1 {
      height: calc(8.33333% - 1.5rem); }
    .grid-margin-y > .medium-2 {
      height: calc(16.66667% - 1.5rem); }
    .grid-margin-y > .medium-3 {
      height: calc(25% - 1.5rem); }
    .grid-margin-y > .medium-4 {
      height: calc(33.33333% - 1.5rem); }
    .grid-margin-y > .medium-5 {
      height: calc(41.66667% - 1.5rem); }
    .grid-margin-y > .medium-6 {
      height: calc(50% - 1.5rem); }
    .grid-margin-y > .medium-7 {
      height: calc(58.33333% - 1.5rem); }
    .grid-margin-y > .medium-8 {
      height: calc(66.66667% - 1.5rem); }
    .grid-margin-y > .medium-9 {
      height: calc(75% - 1.5rem); }
    .grid-margin-y > .medium-10 {
      height: calc(83.33333% - 1.5rem); }
    .grid-margin-y > .medium-11 {
      height: calc(91.66667% - 1.5rem); }
    .grid-margin-y > .medium-12 {
      height: calc(100% - 1.5rem); }
    .grid-margin-y > .large-auto {
      height: auto; }
    .grid-margin-y > .large-shrink {
      height: auto; }
    .grid-margin-y > .large-1 {
      height: calc(8.33333% - 1.5rem); }
    .grid-margin-y > .large-2 {
      height: calc(16.66667% - 1.5rem); }
    .grid-margin-y > .large-3 {
      height: calc(25% - 1.5rem); }
    .grid-margin-y > .large-4 {
      height: calc(33.33333% - 1.5rem); }
    .grid-margin-y > .large-5 {
      height: calc(41.66667% - 1.5rem); }
    .grid-margin-y > .large-6 {
      height: calc(50% - 1.5rem); }
    .grid-margin-y > .large-7 {
      height: calc(58.33333% - 1.5rem); }
    .grid-margin-y > .large-8 {
      height: calc(66.66667% - 1.5rem); }
    .grid-margin-y > .large-9 {
      height: calc(75% - 1.5rem); }
    .grid-margin-y > .large-10 {
      height: calc(83.33333% - 1.5rem); }
    .grid-margin-y > .large-11 {
      height: calc(91.66667% - 1.5rem); }
    .grid-margin-y > .large-12 {
      height: calc(100% - 1.5rem); }
    .grid-margin-y > .xlarge-auto {
      height: auto; }
    .grid-margin-y > .xlarge-shrink {
      height: auto; }
    .grid-margin-y > .xlarge-1 {
      height: calc(8.33333% - 1.5rem); }
    .grid-margin-y > .xlarge-2 {
      height: calc(16.66667% - 1.5rem); }
    .grid-margin-y > .xlarge-3 {
      height: calc(25% - 1.5rem); }
    .grid-margin-y > .xlarge-4 {
      height: calc(33.33333% - 1.5rem); }
    .grid-margin-y > .xlarge-5 {
      height: calc(41.66667% - 1.5rem); }
    .grid-margin-y > .xlarge-6 {
      height: calc(50% - 1.5rem); }
    .grid-margin-y > .xlarge-7 {
      height: calc(58.33333% - 1.5rem); }
    .grid-margin-y > .xlarge-8 {
      height: calc(66.66667% - 1.5rem); }
    .grid-margin-y > .xlarge-9 {
      height: calc(75% - 1.5rem); }
    .grid-margin-y > .xlarge-10 {
      height: calc(83.33333% - 1.5rem); }
    .grid-margin-y > .xlarge-11 {
      height: calc(91.66667% - 1.5rem); }
    .grid-margin-y > .xlarge-12 {
      height: calc(100% - 1.5rem); }
    .grid-margin-y > .xxlarge-auto {
      height: auto; }
    .grid-margin-y > .xxlarge-shrink {
      height: auto; }
    .grid-margin-y > .xxlarge-1 {
      height: calc(8.33333% - 1.5rem); }
    .grid-margin-y > .xxlarge-2 {
      height: calc(16.66667% - 1.5rem); }
    .grid-margin-y > .xxlarge-3 {
      height: calc(25% - 1.5rem); }
    .grid-margin-y > .xxlarge-4 {
      height: calc(33.33333% - 1.5rem); }
    .grid-margin-y > .xxlarge-5 {
      height: calc(41.66667% - 1.5rem); }
    .grid-margin-y > .xxlarge-6 {
      height: calc(50% - 1.5rem); }
    .grid-margin-y > .xxlarge-7 {
      height: calc(58.33333% - 1.5rem); }
    .grid-margin-y > .xxlarge-8 {
      height: calc(66.66667% - 1.5rem); }
    .grid-margin-y > .xxlarge-9 {
      height: calc(75% - 1.5rem); }
    .grid-margin-y > .xxlarge-10 {
      height: calc(83.33333% - 1.5rem); }
    .grid-margin-y > .xxlarge-11 {
      height: calc(91.66667% - 1.5rem); }
    .grid-margin-y > .xxlarge-12 {
      height: calc(100% - 1.5rem); } }

.grid-frame {
  overflow: hidden;
  position: relative;
  -webkit-flex-wrap: nowrap;
      -ms-flex-wrap: nowrap;
          flex-wrap: nowrap;
  -webkit-align-items: stretch;
      -ms-flex-align: stretch;
          align-items: stretch;
  width: 100vw; }

.cell .grid-frame {
  width: 100%; }

.cell-block {
  overflow-x: auto;
  max-width: 100%;
  -webkit-overflow-scrolling: touch;
  -ms-overflow-stype: -ms-autohiding-scrollbar; }

.cell-block-y {
  overflow-y: auto;
  max-height: 100%;
  -webkit-overflow-scrolling: touch;
  -ms-overflow-stype: -ms-autohiding-scrollbar; }

.cell-block-container {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  max-height: 100%; }
  .cell-block-container > .grid-x {
    max-height: 100%;
    -webkit-flex-wrap: nowrap;
        -ms-flex-wrap: nowrap;
            flex-wrap: nowrap; }

@media print, screen and (min-width: 40em) {
  .medium-grid-frame {
    overflow: hidden;
    position: relative;
    -webkit-flex-wrap: nowrap;
        -ms-flex-wrap: nowrap;
            flex-wrap: nowrap;
    -webkit-align-items: stretch;
        -ms-flex-align: stretch;
            align-items: stretch;
    width: 100vw; }
  .cell .medium-grid-frame {
    width: 100%; }
  .medium-cell-block {
    overflow-x: auto;
    max-width: 100%;
    -webkit-overflow-scrolling: touch;
    -ms-overflow-stype: -ms-autohiding-scrollbar; }
  .medium-cell-block-container {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
    max-height: 100%; }
    .medium-cell-block-container > .grid-x {
      max-height: 100%;
      -webkit-flex-wrap: nowrap;
          -ms-flex-wrap: nowrap;
              flex-wrap: nowrap; }
  .medium-cell-block-y {
    overflow-y: auto;
    max-height: 100%;
    -webkit-overflow-scrolling: touch;
    -ms-overflow-stype: -ms-autohiding-scrollbar; } }

@media print, screen and (min-width: 64em) {
  .large-grid-frame {
    overflow: hidden;
    position: relative;
    -webkit-flex-wrap: nowrap;
        -ms-flex-wrap: nowrap;
            flex-wrap: nowrap;
    -webkit-align-items: stretch;
        -ms-flex-align: stretch;
            align-items: stretch;
    width: 100vw; }
  .cell .large-grid-frame {
    width: 100%; }
  .large-cell-block {
    overflow-x: auto;
    max-width: 100%;
    -webkit-overflow-scrolling: touch;
    -ms-overflow-stype: -ms-autohiding-scrollbar; }
  .large-cell-block-container {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
    max-height: 100%; }
    .large-cell-block-container > .grid-x {
      max-height: 100%;
      -webkit-flex-wrap: nowrap;
          -ms-flex-wrap: nowrap;
              flex-wrap: nowrap; }
  .large-cell-block-y {
    overflow-y: auto;
    max-height: 100%;
    -webkit-overflow-scrolling: touch;
    -ms-overflow-stype: -ms-autohiding-scrollbar; } }

@media screen and (min-width: 75em) {
  .xlarge-grid-frame {
    overflow: hidden;
    position: relative;
    -webkit-flex-wrap: nowrap;
        -ms-flex-wrap: nowrap;
            flex-wrap: nowrap;
    -webkit-align-items: stretch;
        -ms-flex-align: stretch;
            align-items: stretch;
    width: 100vw; }
  .cell .xlarge-grid-frame {
    width: 100%; }
  .xlarge-cell-block {
    overflow-x: auto;
    max-width: 100%;
    -webkit-overflow-scrolling: touch;
    -ms-overflow-stype: -ms-autohiding-scrollbar; }
  .xlarge-cell-block-container {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
    max-height: 100%; }
    .xlarge-cell-block-container > .grid-x {
      max-height: 100%;
      -webkit-flex-wrap: nowrap;
          -ms-flex-wrap: nowrap;
              flex-wrap: nowrap; }
  .xlarge-cell-block-y {
    overflow-y: auto;
    max-height: 100%;
    -webkit-overflow-scrolling: touch;
    -ms-overflow-stype: -ms-autohiding-scrollbar; } }

@media screen and (min-width: 90em) {
  .xxlarge-grid-frame {
    overflow: hidden;
    position: relative;
    -webkit-flex-wrap: nowrap;
        -ms-flex-wrap: nowrap;
            flex-wrap: nowrap;
    -webkit-align-items: stretch;
        -ms-flex-align: stretch;
            align-items: stretch;
    width: 100vw; }
  .cell .xxlarge-grid-frame {
    width: 100%; }
  .xxlarge-cell-block {
    overflow-x: auto;
    max-width: 100%;
    -webkit-overflow-scrolling: touch;
    -ms-overflow-stype: -ms-autohiding-scrollbar; }
  .xxlarge-cell-block-container {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
    max-height: 100%; }
    .xxlarge-cell-block-container > .grid-x {
      max-height: 100%;
      -webkit-flex-wrap: nowrap;
          -ms-flex-wrap: nowrap;
              flex-wrap: nowrap; }
  .xxlarge-cell-block-y {
    overflow-y: auto;
    max-height: 100%;
    -webkit-overflow-scrolling: touch;
    -ms-overflow-stype: -ms-autohiding-scrollbar; } }

.grid-y.grid-frame {
  width: auto;
  overflow: hidden;
  position: relative;
  -webkit-flex-wrap: nowrap;
      -ms-flex-wrap: nowrap;
          flex-wrap: nowrap;
  -webkit-align-items: stretch;
      -ms-flex-align: stretch;
          align-items: stretch;
  height: 100vh; }

@media print, screen and (min-width: 40em) {
  .grid-y.medium-grid-frame {
    width: auto;
    overflow: hidden;
    position: relative;
    -webkit-flex-wrap: nowrap;
        -ms-flex-wrap: nowrap;
            flex-wrap: nowrap;
    -webkit-align-items: stretch;
        -ms-flex-align: stretch;
            align-items: stretch;
    height: 100vh; } }

@media print, screen and (min-width: 64em) {
  .grid-y.large-grid-frame {
    width: auto;
    overflow: hidden;
    position: relative;
    -webkit-flex-wrap: nowrap;
        -ms-flex-wrap: nowrap;
            flex-wrap: nowrap;
    -webkit-align-items: stretch;
        -ms-flex-align: stretch;
            align-items: stretch;
    height: 100vh; } }

@media screen and (min-width: 75em) {
  .grid-y.xlarge-grid-frame {
    width: auto;
    overflow: hidden;
    position: relative;
    -webkit-flex-wrap: nowrap;
        -ms-flex-wrap: nowrap;
            flex-wrap: nowrap;
    -webkit-align-items: stretch;
        -ms-flex-align: stretch;
            align-items: stretch;
    height: 100vh; } }

@media screen and (min-width: 90em) {
  .grid-y.xxlarge-grid-frame {
    width: auto;
    overflow: hidden;
    position: relative;
    -webkit-flex-wrap: nowrap;
        -ms-flex-wrap: nowrap;
            flex-wrap: nowrap;
    -webkit-align-items: stretch;
        -ms-flex-align: stretch;
            align-items: stretch;
    height: 100vh; } }

.cell .grid-y.grid-frame {
  height: 100%; }

@media print, screen and (min-width: 40em) {
  .cell .grid-y.medium-grid-frame {
    height: 100%; } }

@media print, screen and (min-width: 64em) {
  .cell .grid-y.large-grid-frame {
    height: 100%; } }

@media screen and (min-width: 75em) {
  .cell .grid-y.xlarge-grid-frame {
    height: 100%; } }

@media screen and (min-width: 90em) {
  .cell .grid-y.xxlarge-grid-frame {
    height: 100%; } }

.grid-margin-y {
  margin-top: -0.5625rem;
  margin-bottom: -0.5625rem; }
  @media print, screen and (min-width: 40em) {
    .grid-margin-y {
      margin-top: -0.625rem;
      margin-bottom: -0.625rem; } }
  @media print, screen and (min-width: 64em) {
    .grid-margin-y {
      margin-top: -0.75rem;
      margin-bottom: -0.75rem; } }
  @media screen and (min-width: 75em) {
    .grid-margin-y {
      margin-top: -0.75rem;
      margin-bottom: -0.75rem; } }
  @media screen and (min-width: 90em) {
    .grid-margin-y {
      margin-top: -0.75rem;
      margin-bottom: -0.75rem; } }
  .grid-margin-y > .cell {
    height: calc(100% - 1.125rem);
    margin-top: 0.5625rem;
    margin-bottom: 0.5625rem; }
  @media print, screen and (min-width: 40em) {
    .grid-margin-y > .cell {
      height: calc(100% - 1.25rem);
      margin-top: 0.625rem;
      margin-bottom: 0.625rem; } }
  @media print, screen and (min-width: 64em) {
    .grid-margin-y > .cell {
      height: calc(100% - 1.5rem);
      margin-top: 0.75rem;
      margin-bottom: 0.75rem; } }
  @media screen and (min-width: 75em) {
    .grid-margin-y > .cell {
      height: calc(100% - 1.5rem);
      margin-top: 0.75rem;
      margin-bottom: 0.75rem; } }
  @media screen and (min-width: 90em) {
    .grid-margin-y > .cell {
      height: calc(100% - 1.5rem);
      margin-top: 0.75rem;
      margin-bottom: 0.75rem; } }
  .grid-margin-y > .auto {
    height: auto; }
  .grid-margin-y > .shrink {
    height: auto; }
  .grid-margin-y > .small-1 {
    height: calc(8.33333% - 1.125rem); }
  .grid-margin-y > .small-2 {
    height: calc(16.66667% - 1.125rem); }
  .grid-margin-y > .small-3 {
    height: calc(25% - 1.125rem); }
  .grid-margin-y > .small-4 {
    height: calc(33.33333% - 1.125rem); }
  .grid-margin-y > .small-5 {
    height: calc(41.66667% - 1.125rem); }
  .grid-margin-y > .small-6 {
    height: calc(50% - 1.125rem); }
  .grid-margin-y > .small-7 {
    height: calc(58.33333% - 1.125rem); }
  .grid-margin-y > .small-8 {
    height: calc(66.66667% - 1.125rem); }
  .grid-margin-y > .small-9 {
    height: calc(75% - 1.125rem); }
  .grid-margin-y > .small-10 {
    height: calc(83.33333% - 1.125rem); }
  .grid-margin-y > .small-11 {
    height: calc(91.66667% - 1.125rem); }
  .grid-margin-y > .small-12 {
    height: calc(100% - 1.125rem); }
  @media print, screen and (min-width: 40em) {
    .grid-margin-y > .auto {
      height: auto; }
    .grid-margin-y > .shrink {
      height: auto; }
    .grid-margin-y > .small-1 {
      height: calc(8.33333% - 1.25rem); }
    .grid-margin-y > .small-2 {
      height: calc(16.66667% - 1.25rem); }
    .grid-margin-y > .small-3 {
      height: calc(25% - 1.25rem); }
    .grid-margin-y > .small-4 {
      height: calc(33.33333% - 1.25rem); }
    .grid-margin-y > .small-5 {
      height: calc(41.66667% - 1.25rem); }
    .grid-margin-y > .small-6 {
      height: calc(50% - 1.25rem); }
    .grid-margin-y > .small-7 {
      height: calc(58.33333% - 1.25rem); }
    .grid-margin-y > .small-8 {
      height: calc(66.66667% - 1.25rem); }
    .grid-margin-y > .small-9 {
      height: calc(75% - 1.25rem); }
    .grid-margin-y > .small-10 {
      height: calc(83.33333% - 1.25rem); }
    .grid-margin-y > .small-11 {
      height: calc(91.66667% - 1.25rem); }
    .grid-margin-y > .small-12 {
      height: calc(100% - 1.25rem); }
    .grid-margin-y > .medium-auto {
      height: auto; }
    .grid-margin-y > .medium-shrink {
      height: auto; }
    .grid-margin-y > .medium-1 {
      height: calc(8.33333% - 1.25rem); }
    .grid-margin-y > .medium-2 {
      height: calc(16.66667% - 1.25rem); }
    .grid-margin-y > .medium-3 {
      height: calc(25% - 1.25rem); }
    .grid-margin-y > .medium-4 {
      height: calc(33.33333% - 1.25rem); }
    .grid-margin-y > .medium-5 {
      height: calc(41.66667% - 1.25rem); }
    .grid-margin-y > .medium-6 {
      height: calc(50% - 1.25rem); }
    .grid-margin-y > .medium-7 {
      height: calc(58.33333% - 1.25rem); }
    .grid-margin-y > .medium-8 {
      height: calc(66.66667% - 1.25rem); }
    .grid-margin-y > .medium-9 {
      height: calc(75% - 1.25rem); }
    .grid-margin-y > .medium-10 {
      height: calc(83.33333% - 1.25rem); }
    .grid-margin-y > .medium-11 {
      height: calc(91.66667% - 1.25rem); }
    .grid-margin-y > .medium-12 {
      height: calc(100% - 1.25rem); } }
  @media print, screen and (min-width: 64em) {
    .grid-margin-y > .auto {
      height: auto; }
    .grid-margin-y > .shrink {
      height: auto; }
    .grid-margin-y > .small-1 {
      height: calc(8.33333% - 1.5rem); }
    .grid-margin-y > .small-2 {
      height: calc(16.66667% - 1.5rem); }
    .grid-margin-y > .small-3 {
      height: calc(25% - 1.5rem); }
    .grid-margin-y > .small-4 {
      height: calc(33.33333% - 1.5rem); }
    .grid-margin-y > .small-5 {
      height: calc(41.66667% - 1.5rem); }
    .grid-margin-y > .small-6 {
      height: calc(50% - 1.5rem); }
    .grid-margin-y > .small-7 {
      height: calc(58.33333% - 1.5rem); }
    .grid-margin-y > .small-8 {
      height: calc(66.66667% - 1.5rem); }
    .grid-margin-y > .small-9 {
      height: calc(75% - 1.5rem); }
    .grid-margin-y > .small-10 {
      height: calc(83.33333% - 1.5rem); }
    .grid-margin-y > .small-11 {
      height: calc(91.66667% - 1.5rem); }
    .grid-margin-y > .small-12 {
      height: calc(100% - 1.5rem); }
    .grid-margin-y > .medium-auto {
      height: auto; }
    .grid-margin-y > .medium-shrink {
      height: auto; }
    .grid-margin-y > .medium-1 {
      height: calc(8.33333% - 1.5rem); }
    .grid-margin-y > .medium-2 {
      height: calc(16.66667% - 1.5rem); }
    .grid-margin-y > .medium-3 {
      height: calc(25% - 1.5rem); }
    .grid-margin-y > .medium-4 {
      height: calc(33.33333% - 1.5rem); }
    .grid-margin-y > .medium-5 {
      height: calc(41.66667% - 1.5rem); }
    .grid-margin-y > .medium-6 {
      height: calc(50% - 1.5rem); }
    .grid-margin-y > .medium-7 {
      height: calc(58.33333% - 1.5rem); }
    .grid-margin-y > .medium-8 {
      height: calc(66.66667% - 1.5rem); }
    .grid-margin-y > .medium-9 {
      height: calc(75% - 1.5rem); }
    .grid-margin-y > .medium-10 {
      height: calc(83.33333% - 1.5rem); }
    .grid-margin-y > .medium-11 {
      height: calc(91.66667% - 1.5rem); }
    .grid-margin-y > .medium-12 {
      height: calc(100% - 1.5rem); }
    .grid-margin-y > .large-auto {
      height: auto; }
    .grid-margin-y > .large-shrink {
      height: auto; }
    .grid-margin-y > .large-1 {
      height: calc(8.33333% - 1.5rem); }
    .grid-margin-y > .large-2 {
      height: calc(16.66667% - 1.5rem); }
    .grid-margin-y > .large-3 {
      height: calc(25% - 1.5rem); }
    .grid-margin-y > .large-4 {
      height: calc(33.33333% - 1.5rem); }
    .grid-margin-y > .large-5 {
      height: calc(41.66667% - 1.5rem); }
    .grid-margin-y > .large-6 {
      height: calc(50% - 1.5rem); }
    .grid-margin-y > .large-7 {
      height: calc(58.33333% - 1.5rem); }
    .grid-margin-y > .large-8 {
      height: calc(66.66667% - 1.5rem); }
    .grid-margin-y > .large-9 {
      height: calc(75% - 1.5rem); }
    .grid-margin-y > .large-10 {
      height: calc(83.33333% - 1.5rem); }
    .grid-margin-y > .large-11 {
      height: calc(91.66667% - 1.5rem); }
    .grid-margin-y > .large-12 {
      height: calc(100% - 1.5rem); } }
  @media screen and (min-width: 75em) {
    .grid-margin-y > .auto {
      height: auto; }
    .grid-margin-y > .shrink {
      height: auto; }
    .grid-margin-y > .small-1 {
      height: calc(8.33333% - 1.5rem); }
    .grid-margin-y > .small-2 {
      height: calc(16.66667% - 1.5rem); }
    .grid-margin-y > .small-3 {
      height: calc(25% - 1.5rem); }
    .grid-margin-y > .small-4 {
      height: calc(33.33333% - 1.5rem); }
    .grid-margin-y > .small-5 {
      height: calc(41.66667% - 1.5rem); }
    .grid-margin-y > .small-6 {
      height: calc(50% - 1.5rem); }
    .grid-margin-y > .small-7 {
      height: calc(58.33333% - 1.5rem); }
    .grid-margin-y > .small-8 {
      height: calc(66.66667% - 1.5rem); }
    .grid-margin-y > .small-9 {
      height: calc(75% - 1.5rem); }
    .grid-margin-y > .small-10 {
      height: calc(83.33333% - 1.5rem); }
    .grid-margin-y > .small-11 {
      height: calc(91.66667% - 1.5rem); }
    .grid-margin-y > .small-12 {
      height: calc(100% - 1.5rem); }
    .grid-margin-y > .medium-auto {
      height: auto; }
    .grid-margin-y > .medium-shrink {
      height: auto; }
    .grid-margin-y > .medium-1 {
      height: calc(8.33333% - 1.5rem); }
    .grid-margin-y > .medium-2 {
      height: calc(16.66667% - 1.5rem); }
    .grid-margin-y > .medium-3 {
      height: calc(25% - 1.5rem); }
    .grid-margin-y > .medium-4 {
      height: calc(33.33333% - 1.5rem); }
    .grid-margin-y > .medium-5 {
      height: calc(41.66667% - 1.5rem); }
    .grid-margin-y > .medium-6 {
      height: calc(50% - 1.5rem); }
    .grid-margin-y > .medium-7 {
      height: calc(58.33333% - 1.5rem); }
    .grid-margin-y > .medium-8 {
      height: calc(66.66667% - 1.5rem); }
    .grid-margin-y > .medium-9 {
      height: calc(75% - 1.5rem); }
    .grid-margin-y > .medium-10 {
      height: calc(83.33333% - 1.5rem); }
    .grid-margin-y > .medium-11 {
      height: calc(91.66667% - 1.5rem); }
    .grid-margin-y > .medium-12 {
      height: calc(100% - 1.5rem); }
    .grid-margin-y > .large-auto {
      height: auto; }
    .grid-margin-y > .large-shrink {
      height: auto; }
    .grid-margin-y > .large-1 {
      height: calc(8.33333% - 1.5rem); }
    .grid-margin-y > .large-2 {
      height: calc(16.66667% - 1.5rem); }
    .grid-margin-y > .large-3 {
      height: calc(25% - 1.5rem); }
    .grid-margin-y > .large-4 {
      height: calc(33.33333% - 1.5rem); }
    .grid-margin-y > .large-5 {
      height: calc(41.66667% - 1.5rem); }
    .grid-margin-y > .large-6 {
      height: calc(50% - 1.5rem); }
    .grid-margin-y > .large-7 {
      height: calc(58.33333% - 1.5rem); }
    .grid-margin-y > .large-8 {
      height: calc(66.66667% - 1.5rem); }
    .grid-margin-y > .large-9 {
      height: calc(75% - 1.5rem); }
    .grid-margin-y > .large-10 {
      height: calc(83.33333% - 1.5rem); }
    .grid-margin-y > .large-11 {
      height: calc(91.66667% - 1.5rem); }
    .grid-margin-y > .large-12 {
      height: calc(100% - 1.5rem); }
    .grid-margin-y > .xlarge-auto {
      height: auto; }
    .grid-margin-y > .xlarge-shrink {
      height: auto; }
    .grid-margin-y > .xlarge-1 {
      height: calc(8.33333% - 1.5rem); }
    .grid-margin-y > .xlarge-2 {
      height: calc(16.66667% - 1.5rem); }
    .grid-margin-y > .xlarge-3 {
      height: calc(25% - 1.5rem); }
    .grid-margin-y > .xlarge-4 {
      height: calc(33.33333% - 1.5rem); }
    .grid-margin-y > .xlarge-5 {
      height: calc(41.66667% - 1.5rem); }
    .grid-margin-y > .xlarge-6 {
      height: calc(50% - 1.5rem); }
    .grid-margin-y > .xlarge-7 {
      height: calc(58.33333% - 1.5rem); }
    .grid-margin-y > .xlarge-8 {
      height: calc(66.66667% - 1.5rem); }
    .grid-margin-y > .xlarge-9 {
      height: calc(75% - 1.5rem); }
    .grid-margin-y > .xlarge-10 {
      height: calc(83.33333% - 1.5rem); }
    .grid-margin-y > .xlarge-11 {
      height: calc(91.66667% - 1.5rem); }
    .grid-margin-y > .xlarge-12 {
      height: calc(100% - 1.5rem); } }
  @media screen and (min-width: 90em) {
    .grid-margin-y > .auto {
      height: auto; }
    .grid-margin-y > .shrink {
      height: auto; }
    .grid-margin-y > .small-1 {
      height: calc(8.33333% - 1.5rem); }
    .grid-margin-y > .small-2 {
      height: calc(16.66667% - 1.5rem); }
    .grid-margin-y > .small-3 {
      height: calc(25% - 1.5rem); }
    .grid-margin-y > .small-4 {
      height: calc(33.33333% - 1.5rem); }
    .grid-margin-y > .small-5 {
      height: calc(41.66667% - 1.5rem); }
    .grid-margin-y > .small-6 {
      height: calc(50% - 1.5rem); }
    .grid-margin-y > .small-7 {
      height: calc(58.33333% - 1.5rem); }
    .grid-margin-y > .small-8 {
      height: calc(66.66667% - 1.5rem); }
    .grid-margin-y > .small-9 {
      height: calc(75% - 1.5rem); }
    .grid-margin-y > .small-10 {
      height: calc(83.33333% - 1.5rem); }
    .grid-margin-y > .small-11 {
      height: calc(91.66667% - 1.5rem); }
    .grid-margin-y > .small-12 {
      height: calc(100% - 1.5rem); }
    .grid-margin-y > .medium-auto {
      height: auto; }
    .grid-margin-y > .medium-shrink {
      height: auto; }
    .grid-margin-y > .medium-1 {
      height: calc(8.33333% - 1.5rem); }
    .grid-margin-y > .medium-2 {
      height: calc(16.66667% - 1.5rem); }
    .grid-margin-y > .medium-3 {
      height: calc(25% - 1.5rem); }
    .grid-margin-y > .medium-4 {
      height: calc(33.33333% - 1.5rem); }
    .grid-margin-y > .medium-5 {
      height: calc(41.66667% - 1.5rem); }
    .grid-margin-y > .medium-6 {
      height: calc(50% - 1.5rem); }
    .grid-margin-y > .medium-7 {
      height: calc(58.33333% - 1.5rem); }
    .grid-margin-y > .medium-8 {
      height: calc(66.66667% - 1.5rem); }
    .grid-margin-y > .medium-9 {
      height: calc(75% - 1.5rem); }
    .grid-margin-y > .medium-10 {
      height: calc(83.33333% - 1.5rem); }
    .grid-margin-y > .medium-11 {
      height: calc(91.66667% - 1.5rem); }
    .grid-margin-y > .medium-12 {
      height: calc(100% - 1.5rem); }
    .grid-margin-y > .large-auto {
      height: auto; }
    .grid-margin-y > .large-shrink {
      height: auto; }
    .grid-margin-y > .large-1 {
      height: calc(8.33333% - 1.5rem); }
    .grid-margin-y > .large-2 {
      height: calc(16.66667% - 1.5rem); }
    .grid-margin-y > .large-3 {
      height: calc(25% - 1.5rem); }
    .grid-margin-y > .large-4 {
      height: calc(33.33333% - 1.5rem); }
    .grid-margin-y > .large-5 {
      height: calc(41.66667% - 1.5rem); }
    .grid-margin-y > .large-6 {
      height: calc(50% - 1.5rem); }
    .grid-margin-y > .large-7 {
      height: calc(58.33333% - 1.5rem); }
    .grid-margin-y > .large-8 {
      height: calc(66.66667% - 1.5rem); }
    .grid-margin-y > .large-9 {
      height: calc(75% - 1.5rem); }
    .grid-margin-y > .large-10 {
      height: calc(83.33333% - 1.5rem); }
    .grid-margin-y > .large-11 {
      height: calc(91.66667% - 1.5rem); }
    .grid-margin-y > .large-12 {
      height: calc(100% - 1.5rem); }
    .grid-margin-y > .xlarge-auto {
      height: auto; }
    .grid-margin-y > .xlarge-shrink {
      height: auto; }
    .grid-margin-y > .xlarge-1 {
      height: calc(8.33333% - 1.5rem); }
    .grid-margin-y > .xlarge-2 {
      height: calc(16.66667% - 1.5rem); }
    .grid-margin-y > .xlarge-3 {
      height: calc(25% - 1.5rem); }
    .grid-margin-y > .xlarge-4 {
      height: calc(33.33333% - 1.5rem); }
    .grid-margin-y > .xlarge-5 {
      height: calc(41.66667% - 1.5rem); }
    .grid-margin-y > .xlarge-6 {
      height: calc(50% - 1.5rem); }
    .grid-margin-y > .xlarge-7 {
      height: calc(58.33333% - 1.5rem); }
    .grid-margin-y > .xlarge-8 {
      height: calc(66.66667% - 1.5rem); }
    .grid-margin-y > .xlarge-9 {
      height: calc(75% - 1.5rem); }
    .grid-margin-y > .xlarge-10 {
      height: calc(83.33333% - 1.5rem); }
    .grid-margin-y > .xlarge-11 {
      height: calc(91.66667% - 1.5rem); }
    .grid-margin-y > .xlarge-12 {
      height: calc(100% - 1.5rem); }
    .grid-margin-y > .xxlarge-auto {
      height: auto; }
    .grid-margin-y > .xxlarge-shrink {
      height: auto; }
    .grid-margin-y > .xxlarge-1 {
      height: calc(8.33333% - 1.5rem); }
    .grid-margin-y > .xxlarge-2 {
      height: calc(16.66667% - 1.5rem); }
    .grid-margin-y > .xxlarge-3 {
      height: calc(25% - 1.5rem); }
    .grid-margin-y > .xxlarge-4 {
      height: calc(33.33333% - 1.5rem); }
    .grid-margin-y > .xxlarge-5 {
      height: calc(41.66667% - 1.5rem); }
    .grid-margin-y > .xxlarge-6 {
      height: calc(50% - 1.5rem); }
    .grid-margin-y > .xxlarge-7 {
      height: calc(58.33333% - 1.5rem); }
    .grid-margin-y > .xxlarge-8 {
      height: calc(66.66667% - 1.5rem); }
    .grid-margin-y > .xxlarge-9 {
      height: calc(75% - 1.5rem); }
    .grid-margin-y > .xxlarge-10 {
      height: calc(83.33333% - 1.5rem); }
    .grid-margin-y > .xxlarge-11 {
      height: calc(91.66667% - 1.5rem); }
    .grid-margin-y > .xxlarge-12 {
      height: calc(100% - 1.5rem); } }

.grid-frame.grid-margin-y {
  height: calc(100vh + 1.125rem); }
  @media print, screen and (min-width: 40em) {
    .grid-frame.grid-margin-y {
      height: calc(100vh + 1.25rem); } }
  @media print, screen and (min-width: 64em) {
    .grid-frame.grid-margin-y {
      height: calc(100vh + 1.5rem); } }
  @media screen and (min-width: 75em) {
    .grid-frame.grid-margin-y {
      height: calc(100vh + 1.5rem); } }
  @media screen and (min-width: 90em) {
    .grid-frame.grid-margin-y {
      height: calc(100vh + 1.5rem); } }

@media print, screen and (min-width: 40em) {
  .grid-margin-y.medium-grid-frame {
    height: calc(100vh + 1.25rem); } }

@media print, screen and (min-width: 64em) {
  .grid-margin-y.large-grid-frame {
    height: calc(100vh + 1.5rem); } }

@media screen and (min-width: 75em) {
  .grid-margin-y.xlarge-grid-frame {
    height: calc(100vh + 1.5rem); } }

@media screen and (min-width: 90em) {
  .grid-margin-y.xxlarge-grid-frame {
    height: calc(100vh + 1.5rem); } }

div,
dl,
dt,
dd,
ul,
ol,
li,
h1,
h2,
h3,
h4,
h5,
h6,
pre,
form,
p,
blockquote,
th,
td {
  margin: 0;
  padding: 0; }

p {
  margin-bottom: 1rem;
  font-size: inherit;
  line-height: 1.5;
  text-rendering: optimizeLegibility; }

em,
i {
  font-style: italic;
  line-height: inherit; }

strong,
b {
  font-weight: 700;
  line-height: inherit; }

small {
  font-size: 80%;
  line-height: inherit; }

h1, .h1,
h2, .h2,
h3, .h3,
h4, .h4,
h5, .h5,
h6, .h6 {
  font-family: "gorditabold", -apple-system, BlinkMacSystemFont, "Segoe UI", "Roboto", "Oxygen", "Ubuntu", "Cantarell", "Fira Sans", "Droid Sans", "Helvetica Neue", sans-serif;
  font-style: normal;
  font-weight: 700;
  color: inherit;
  text-rendering: optimizeLegibility; }
  h1 small, .h1 small,
  h2 small, .h2 small,
  h3 small, .h3 small,
  h4 small, .h4 small,
  h5 small, .h5 small,
  h6 small, .h6 small {
    line-height: 0;
    color: #cacaca; }

h1, .h1 {
  font-size: 2.5rem;
  line-height: 1.222;
  margin-top: 0;
  margin-bottom: 0.5rem; }

h2, .h2 {
  font-size: 1.75rem;
  line-height: 1.222;
  margin-top: 0;
  margin-bottom: 0.5rem; }

h3, .h3 {
  font-size: 1.5rem;
  line-height: 1.222;
  margin-top: 0;
  margin-bottom: 0.5rem; }

h4, .h4 {
  font-size: 1.3125rem;
  line-height: 1.222;
  margin-top: 0;
  margin-bottom: 0.5rem; }

h5, .h5 {
  font-size: 1.125rem;
  line-height: 1.222;
  margin-top: 0;
  margin-bottom: 0.5rem; }

h6, .h6 {
  font-size: 1rem;
  line-height: 1.222;
  margin-top: 0;
  margin-bottom: 0.5rem; }

@media print, screen and (min-width: 40em) {
  h1, .h1 {
    font-size: 3rem; }
  h2, .h2 {
    font-size: 1.875rem; }
  h3, .h3 {
    font-size: 1.5rem; }
  h4, .h4 {
    font-size: 1.3125rem; }
  h5, .h5 {
    font-size: 1.125rem; }
  h6, .h6 {
    font-size: 1rem; } }

@media print, screen and (min-width: 64em) {
  h1, .h1 {
    font-size: 3.375rem; }
  h2, .h2 {
    font-size: 2.25rem; }
  h3, .h3 {
    font-size: 1.875rem; }
  h4, .h4 {
    font-size: 1.3125rem; }
  h5, .h5 {
    font-size: 1.125rem; }
  h6, .h6 {
    font-size: 1rem; } }

a {
  line-height: inherit;
  color: #2DC9D7;
  text-decoration: none;
  cursor: pointer; }
  a:hover, a:focus {
    color: #24afbc; }
  a img {
    border: 0; }

hr {
  clear: both;
  max-width: 90rem;
  height: 0;
  margin: 1.25rem auto;
  border-top: 0;
  border-right: 0;
  border-bottom: 1px solid #cacaca;
  border-left: 0; }

ul,
ol,
dl {
  margin-bottom: 1rem;
  list-style-position: outside;
  line-height: 1.5; }

li {
  font-size: inherit; }

ul {
  margin-left: 1.25rem;
  list-style-type: disc; }

ol {
  margin-left: 1.25rem; }

ul ul, ol ul, ul ol, ol ol {
  margin-left: 1.25rem;
  margin-bottom: 0; }

dl {
  margin-bottom: 1rem; }
  dl dt {
    margin-bottom: 0.3rem;
    font-weight: 700; }

blockquote {
  margin: 0 0 1rem;
  padding: 0.5625rem 1.25rem 0 1.1875rem;
  border-left: 1px solid #cacaca; }
  blockquote, blockquote p {
    line-height: 1.5;
    color: #8a8a8a; }

cite {
  display: block;
  font-size: 0.8125rem;
  color: #8a8a8a; }
  cite:before {
    content: "— "; }

abbr, abbr[title] {
  border-bottom: 1px dotted #000000;
  cursor: help;
  text-decoration: none; }

figure {
  margin: 0; }

code {
  padding: 0.125rem 0.3125rem 0.0625rem;
  border: 1px solid #cacaca;
  background-color: #e6e6e6;
  font-family: Consolas, "Liberation Mono", Courier, monospace;
  font-weight: 400;
  color: #000000; }

kbd {
  margin: 0;
  padding: 0.125rem 0.25rem 0;
  background-color: #e6e6e6;
  font-family: Consolas, "Liberation Mono", Courier, monospace;
  color: #000000; }

.subheader {
  margin-top: 0.2rem;
  margin-bottom: 0.5rem;
  font-weight: 400;
  line-height: 1.4;
  color: #8a8a8a; }

.lead {
  font-size: 125%;
  line-height: 1.6; }

.stat {
  font-size: 2.5rem;
  line-height: 1; }
  p + .stat {
    margin-top: -1rem; }

ul.no-bullet, ol.no-bullet {
  margin-left: 0;
  list-style: none; }

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

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

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

.text-justify {
  text-align: justify; }

@media print, screen and (min-width: 40em) {
  .medium-text-left {
    text-align: left; }
  .medium-text-right {
    text-align: right; }
  .medium-text-center {
    text-align: center; }
  .medium-text-justify {
    text-align: justify; } }

@media print, screen and (min-width: 64em) {
  .large-text-left {
    text-align: left; }
  .large-text-right {
    text-align: right; }
  .large-text-center {
    text-align: center; }
  .large-text-justify {
    text-align: justify; } }

@media screen and (min-width: 75em) {
  .xlarge-text-left {
    text-align: left; }
  .xlarge-text-right {
    text-align: right; }
  .xlarge-text-center {
    text-align: center; }
  .xlarge-text-justify {
    text-align: justify; } }

@media screen and (min-width: 90em) {
  .xxlarge-text-left {
    text-align: left; }
  .xxlarge-text-right {
    text-align: right; }
  .xxlarge-text-center {
    text-align: center; }
  .xxlarge-text-justify {
    text-align: justify; } }

.show-for-print {
  display: none !important; }

@media print {
  * {
    background: transparent !important;
    box-shadow: none !important;
    color: black !important;
    text-shadow: none !important; }
  .show-for-print {
    display: block !important; }
  .hide-for-print {
    display: none !important; }
  table.show-for-print {
    display: table !important; }
  thead.show-for-print {
    display: table-header-group !important; }
  tbody.show-for-print {
    display: table-row-group !important; }
  tr.show-for-print {
    display: table-row !important; }
  td.show-for-print {
    display: table-cell !important; }
  th.show-for-print {
    display: table-cell !important; }
  a,
  a:visited {
    text-decoration: underline; }
  a[href]:after {
    content: " (" attr(href) ")"; }
  .ir a:after,
  a[href^='javascript:']:after,
  a[href^='#']:after {
    content: ''; }
  abbr[title]:after {
    content: " (" attr(title) ")"; }
  pre,
  blockquote {
    border: 1px solid #8a8a8a;
    page-break-inside: avoid; }
  thead {
    display: table-header-group; }
  tr,
  img {
    page-break-inside: avoid; }
  img {
    max-width: 100% !important; }
  @page {
    margin: 0.5cm; }
  p,
  h2,
  h3 {
    orphans: 3;
    widows: 3; }
  h2,
  h3 {
    page-break-after: avoid; }
  .print-break-inside {
    page-break-inside: auto; } }

.button {
  display: inline-block;
  vertical-align: middle;
  margin: 0 0 1rem 0;
  font-family: inherit;
  padding: 0.85em 1em;
  -webkit-appearance: none;
  border: 1px solid transparent;
  border-radius: 0;
  transition: background-color 0.25s ease-out, color 0.25s ease-out;
  font-size: 0.9rem;
  line-height: 1;
  text-align: center;
  cursor: pointer;
  background-color: #2DC9D7;
  color: #ffffff; }
  [data-whatinput='mouse'] .button {
    outline: 0; }
  .button:hover, .button:focus {
    background-color: #23adba;
    color: #ffffff; }
  .button.tiny {
    font-size: 0.6rem; }
  .button.small {
    font-size: 0.75rem; }
  .button.large {
    font-size: 1.25rem; }
  .button.expanded {
    display: block;
    width: 100%;
    margin-right: 0;
    margin-left: 0; }
  .button.primary {
    background-color: #2DC9D7;
    color: #000000; }
    .button.primary:hover, .button.primary:focus {
      background-color: #21a3af;
      color: #000000; }
  .button.secondary {
    background-color: #FCB536;
    color: #000000; }
    .button.secondary:hover, .button.secondary:focus {
      background-color: #f19c04;
      color: #000000; }
  .button.success {
    background-color: #3adb76;
    color: #000000; }
    .button.success:hover, .button.success:focus {
      background-color: #22bb5b;
      color: #000000; }
  .button.warning {
    background-color: #ffae00;
    color: #000000; }
    .button.warning:hover, .button.warning:focus {
      background-color: #cc8b00;
      color: #000000; }
  .button.alert {
    background-color: #cc4b37;
    color: #000000; }
    .button.alert:hover, .button.alert:focus {
      background-color: #a53b2a;
      color: #000000; }
  .button.disabled, .button[disabled] {
    opacity: 0.25;
    cursor: not-allowed; }
    .button.disabled, .button.disabled:hover, .button.disabled:focus, .button[disabled], .button[disabled]:hover, .button[disabled]:focus {
      background-color: #2DC9D7;
      color: #ffffff; }
    .button.disabled.primary, .button[disabled].primary {
      opacity: 0.25;
      cursor: not-allowed; }
      .button.disabled.primary, .button.disabled.primary:hover, .button.disabled.primary:focus, .button[disabled].primary, .button[disabled].primary:hover, .button[disabled].primary:focus {
        background-color: #2DC9D7;
        color: #000000; }
    .button.disabled.secondary, .button[disabled].secondary {
      opacity: 0.25;
      cursor: not-allowed; }
      .button.disabled.secondary, .button.disabled.secondary:hover, .button.disabled.secondary:focus, .button[disabled].secondary, .button[disabled].secondary:hover, .button[disabled].secondary:focus {
        background-color: #FCB536;
        color: #000000; }
    .button.disabled.success, .button[disabled].success {
      opacity: 0.25;
      cursor: not-allowed; }
      .button.disabled.success, .button.disabled.success:hover, .button.disabled.success:focus, .button[disabled].success, .button[disabled].success:hover, .button[disabled].success:focus {
        background-color: #3adb76;
        color: #000000; }
    .button.disabled.warning, .button[disabled].warning {
      opacity: 0.25;
      cursor: not-allowed; }
      .button.disabled.warning, .button.disabled.warning:hover, .button.disabled.warning:focus, .button[disabled].warning, .button[disabled].warning:hover, .button[disabled].warning:focus {
        background-color: #ffae00;
        color: #000000; }
    .button.disabled.alert, .button[disabled].alert {
      opacity: 0.25;
      cursor: not-allowed; }
      .button.disabled.alert, .button.disabled.alert:hover, .button.disabled.alert:focus, .button[disabled].alert, .button[disabled].alert:hover, .button[disabled].alert:focus {
        background-color: #cc4b37;
        color: #000000; }
  .button.hollow {
    border: 1px solid #2DC9D7;
    color: #2DC9D7; }
    .button.hollow, .button.hollow:hover, .button.hollow:focus {
      background-color: transparent; }
    .button.hollow.disabled, .button.hollow.disabled:hover, .button.hollow.disabled:focus, .button.hollow[disabled], .button.hollow[disabled]:hover, .button.hollow[disabled]:focus {
      background-color: transparent; }
    .button.hollow:hover, .button.hollow:focus {
      border-color: #15666d;
      color: #15666d; }
      .button.hollow:hover.disabled, .button.hollow:hover[disabled], .button.hollow:focus.disabled, .button.hollow:focus[disabled] {
        border: 1px solid #2DC9D7;
        color: #2DC9D7; }
    .button.hollow.primary {
      border: 1px solid #2DC9D7;
      color: #2DC9D7; }
      .button.hollow.primary:hover, .button.hollow.primary:focus {
        border-color: #15666d;
        color: #15666d; }
        .button.hollow.primary:hover.disabled, .button.hollow.primary:hover[disabled], .button.hollow.primary:focus.disabled, .button.hollow.primary:focus[disabled] {
          border: 1px solid #2DC9D7;
          color: #2DC9D7; }
    .button.hollow.secondary {
      border: 1px solid #FCB536;
      color: #FCB536; }
      .button.hollow.secondary:hover, .button.hollow.secondary:focus {
        border-color: #976202;
        color: #976202; }
        .button.hollow.secondary:hover.disabled, .button.hollow.secondary:hover[disabled], .button.hollow.secondary:focus.disabled, .button.hollow.secondary:focus[disabled] {
          border: 1px solid #FCB536;
          color: #FCB536; }
    .button.hollow.success {
      border: 1px solid #3adb76;
      color: #3adb76; }
      .button.hollow.success:hover, .button.hollow.success:focus {
        border-color: #157539;
        color: #157539; }
        .button.hollow.success:hover.disabled, .button.hollow.success:hover[disabled], .button.hollow.success:focus.disabled, .button.hollow.success:focus[disabled] {
          border: 1px solid #3adb76;
          color: #3adb76; }
    .button.hollow.warning {
      border: 1px solid #ffae00;
      color: #ffae00; }
      .button.hollow.warning:hover, .button.hollow.warning:focus {
        border-color: #805700;
        color: #805700; }
        .button.hollow.warning:hover.disabled, .button.hollow.warning:hover[disabled], .button.hollow.warning:focus.disabled, .button.hollow.warning:focus[disabled] {
          border: 1px solid #ffae00;
          color: #ffae00; }
    .button.hollow.alert {
      border: 1px solid #cc4b37;
      color: #cc4b37; }
      .button.hollow.alert:hover, .button.hollow.alert:focus {
        border-color: #67251a;
        color: #67251a; }
        .button.hollow.alert:hover.disabled, .button.hollow.alert:hover[disabled], .button.hollow.alert:focus.disabled, .button.hollow.alert:focus[disabled] {
          border: 1px solid #cc4b37;
          color: #cc4b37; }
  .button.clear {
    border: 1px solid #2DC9D7;
    color: #2DC9D7; }
    .button.clear, .button.clear:hover, .button.clear:focus {
      background-color: transparent; }
    .button.clear.disabled, .button.clear.disabled:hover, .button.clear.disabled:focus, .button.clear[disabled], .button.clear[disabled]:hover, .button.clear[disabled]:focus {
      background-color: transparent; }
    .button.clear:hover, .button.clear:focus {
      border-color: #15666d;
      color: #15666d; }
      .button.clear:hover.disabled, .button.clear:hover[disabled], .button.clear:focus.disabled, .button.clear:focus[disabled] {
        border: 1px solid #2DC9D7;
        color: #2DC9D7; }
    .button.clear, .button.clear.disabled, .button.clear[disabled], .button.clear:hover, .button.clear:hover.disabled, .button.clear:hover[disabled], .button.clear:focus, .button.clear:focus.disabled, .button.clear:focus[disabled] {
      border-color: transparent; }
    .button.clear.primary {
      border: 1px solid #2DC9D7;
      color: #2DC9D7; }
      .button.clear.primary:hover, .button.clear.primary:focus {
        border-color: #15666d;
        color: #15666d; }
        .button.clear.primary:hover.disabled, .button.clear.primary:hover[disabled], .button.clear.primary:focus.disabled, .button.clear.primary:focus[disabled] {
          border: 1px solid #2DC9D7;
          color: #2DC9D7; }
      .button.clear.primary, .button.clear.primary.disabled, .button.clear.primary[disabled], .button.clear.primary:hover, .button.clear.primary:hover.disabled, .button.clear.primary:hover[disabled], .button.clear.primary:focus, .button.clear.primary:focus.disabled, .button.clear.primary:focus[disabled] {
        border-color: transparent; }
    .button.clear.secondary {
      border: 1px solid #FCB536;
      color: #FCB536; }
      .button.clear.secondary:hover, .button.clear.secondary:focus {
        border-color: #976202;
        color: #976202; }
        .button.clear.secondary:hover.disabled, .button.clear.secondary:hover[disabled], .button.clear.secondary:focus.disabled, .button.clear.secondary:focus[disabled] {
          border: 1px solid #FCB536;
          color: #FCB536; }
      .button.clear.secondary, .button.clear.secondary.disabled, .button.clear.secondary[disabled], .button.clear.secondary:hover, .button.clear.secondary:hover.disabled, .button.clear.secondary:hover[disabled], .button.clear.secondary:focus, .button.clear.secondary:focus.disabled, .button.clear.secondary:focus[disabled] {
        border-color: transparent; }
    .button.clear.success {
      border: 1px solid #3adb76;
      color: #3adb76; }
      .button.clear.success:hover, .button.clear.success:focus {
        border-color: #157539;
        color: #157539; }
        .button.clear.success:hover.disabled, .button.clear.success:hover[disabled], .button.clear.success:focus.disabled, .button.clear.success:focus[disabled] {
          border: 1px solid #3adb76;
          color: #3adb76; }
      .button.clear.success, .button.clear.success.disabled, .button.clear.success[disabled], .button.clear.success:hover, .button.clear.success:hover.disabled, .button.clear.success:hover[disabled], .button.clear.success:focus, .button.clear.success:focus.disabled, .button.clear.success:focus[disabled] {
        border-color: transparent; }
    .button.clear.warning {
      border: 1px solid #ffae00;
      color: #ffae00; }
      .button.clear.warning:hover, .button.clear.warning:focus {
        border-color: #805700;
        color: #805700; }
        .button.clear.warning:hover.disabled, .button.clear.warning:hover[disabled], .button.clear.warning:focus.disabled, .button.clear.warning:focus[disabled] {
          border: 1px solid #ffae00;
          color: #ffae00; }
      .button.clear.warning, .button.clear.warning.disabled, .button.clear.warning[disabled], .button.clear.warning:hover, .button.clear.warning:hover.disabled, .button.clear.warning:hover[disabled], .button.clear.warning:focus, .button.clear.warning:focus.disabled, .button.clear.warning:focus[disabled] {
        border-color: transparent; }
    .button.clear.alert {
      border: 1px solid #cc4b37;
      color: #cc4b37; }
      .button.clear.alert:hover, .button.clear.alert:focus {
        border-color: #67251a;
        color: #67251a; }
        .button.clear.alert:hover.disabled, .button.clear.alert:hover[disabled], .button.clear.alert:focus.disabled, .button.clear.alert:focus[disabled] {
          border: 1px solid #cc4b37;
          color: #cc4b37; }
      .button.clear.alert, .button.clear.alert.disabled, .button.clear.alert[disabled], .button.clear.alert:hover, .button.clear.alert:hover.disabled, .button.clear.alert:hover[disabled], .button.clear.alert:focus, .button.clear.alert:focus.disabled, .button.clear.alert:focus[disabled] {
        border-color: transparent; }
  .button.dropdown::after {
    display: block;
    width: 0;
    height: 0;
    border: inset 0.4em;
    content: '';
    border-bottom-width: 0;
    border-top-style: solid;
    border-color: #ffffff transparent transparent;
    position: relative;
    top: 0.4em;
    display: inline-block;
    float: right;
    margin-left: 1em; }
  .button.dropdown.hollow::after {
    border-top-color: #2DC9D7; }
  .button.dropdown.hollow.primary::after {
    border-top-color: #2DC9D7; }
  .button.dropdown.hollow.secondary::after {
    border-top-color: #FCB536; }
  .button.dropdown.hollow.success::after {
    border-top-color: #3adb76; }
  .button.dropdown.hollow.warning::after {
    border-top-color: #ffae00; }
  .button.dropdown.hollow.alert::after {
    border-top-color: #cc4b37; }
  .button.arrow-only::after {
    top: -0.1em;
    float: none;
    margin-left: 0; }

a.button:hover, a.button:focus {
  text-decoration: none; }

[type='text'], [type='password'], [type='date'], [type='datetime'], [type='datetime-local'], [type='month'], [type='week'], [type='email'], [type='number'], [type='search'], [type='tel'], [type='time'], [type='url'], [type='color'],
textarea {
  display: block;
  box-sizing: border-box;
  width: 100%;
  height: 2.9375rem;
  margin: 0 0 1rem;
  padding: 0.75rem;
  border: 1px solid #e6e6e6;
  border-radius: 0;
  background-color: #f7f7f7;
  box-shadow: none;
  font-family: inherit;
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.5;
  color: #000000;
  transition: box-shadow 0.5s, border-color 0.25s ease-in-out;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none; }
  [type='text']:focus, [type='password']:focus, [type='date']:focus, [type='datetime']:focus, [type='datetime-local']:focus, [type='month']:focus, [type='week']:focus, [type='email']:focus, [type='number']:focus, [type='search']:focus, [type='tel']:focus, [type='time']:focus, [type='url']:focus, [type='color']:focus,
  textarea:focus {
    outline: none;
    border: 2px solid #2DC9D7;
    background-color: #ffffff;
    box-shadow: none;
    transition: box-shadow 0.5s, border-color 0.25s ease-in-out; }

textarea {
  max-width: 100%; }
  textarea[rows] {
    height: auto; }

input::-webkit-input-placeholder,
textarea::-webkit-input-placeholder {
  color: #cacaca; }

input:-ms-input-placeholder,
textarea:-ms-input-placeholder {
  color: #cacaca; }

input::placeholder,
textarea::placeholder {
  color: #cacaca; }

input:disabled, input[readonly],
textarea:disabled,
textarea[readonly] {
  background-color: #f7f7f7;
  cursor: not-allowed; }

[type='submit'],
[type='button'] {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  border-radius: 0; }

input[type='search'] {
  box-sizing: border-box; }

[type='file'],
[type='checkbox'],
[type='radio'] {
  margin: 0 0 1rem; }

[type='checkbox'] + label,
[type='radio'] + label {
  display: inline-block;
  vertical-align: baseline;
  margin-left: 0.5rem;
  margin-right: 1rem;
  margin-bottom: 0; }
  [type='checkbox'] + label[for],
  [type='radio'] + label[for] {
    cursor: pointer; }

label > [type='checkbox'],
label > [type='radio'] {
  margin-right: 0.5rem; }

[type='file'] {
  width: 100%; }

label {
  display: block;
  margin: 0;
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1.2;
  color: rgba(0, 0, 0, 0.6); }
  label.middle {
    margin: 0 0 1rem;
    padding: 0.5625rem 0; }

.help-text {
  margin-top: -0.5rem;
  font-size: 0.8125rem;
  font-style: italic;
  color: #000000; }

.input-group {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  width: 100%;
  margin-bottom: 1rem;
  -webkit-align-items: stretch;
      -ms-flex-align: stretch;
          align-items: stretch; }
  .input-group > :first-child {
    border-radius: 0 0 0 0; }
  .input-group > :last-child > * {
    border-radius: 0 0 0 0; }

.input-group-label, .input-group-field, .input-group-button, .input-group-button a,
.input-group-button input,
.input-group-button button,
.input-group-button label {
  margin: 0;
  white-space: nowrap; }

.input-group-label {
  padding: 0 1rem;
  border: 1px solid #e6e6e6;
  background: #f7f7f7;
  color: #000000;
  text-align: center;
  white-space: nowrap;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex: 0 0 auto;
      -ms-flex: 0 0 auto;
          flex: 0 0 auto;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center; }
  .input-group-label:first-child {
    border-right: 0; }
  .input-group-label:last-child {
    border-left: 0; }

.input-group-field {
  border-radius: 0;
  -webkit-flex: 1 1 0px;
      -ms-flex: 1 1 0px;
          flex: 1 1 0px;
  height: auto;
  min-width: 0; }

.input-group-button {
  padding-top: 0;
  padding-bottom: 0;
  text-align: center;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex: 0 0 auto;
      -ms-flex: 0 0 auto;
          flex: 0 0 auto; }
  .input-group-button a,
  .input-group-button input,
  .input-group-button button,
  .input-group-button label {
    height: auto;
    -webkit-align-self: stretch;
        -ms-flex-item-align: stretch;
                -ms-grid-row-align: stretch;
            align-self: stretch;
    padding-top: 0;
    padding-bottom: 0;
    font-size: 1rem; }

fieldset {
  margin: 0;
  padding: 0;
  border: 0; }

legend {
  max-width: 100%;
  margin-bottom: 0.5rem; }

.fieldset {
  margin: 1.125rem 0;
  padding: 1.25rem;
  border: 1px solid #cacaca; }
  .fieldset legend {
    margin: 0;
    margin-left: -0.1875rem;
    padding: 0 0.1875rem; }

select {
  height: 2.9375rem;
  margin: 0 0 1rem;
  padding: 0.75rem;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  border: 1px solid #e6e6e6;
  border-radius: 0;
  background-color: #ffffff;
  font-family: inherit;
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.5;
  color: #000000;
  background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' version='1.1' width='32' height='24' viewBox='0 0 32 24'><polygon points='0,0 32,0 16,24' style='fill: rgb%2845, 201, 215%29'></polygon></svg>");
  background-origin: content-box;
  background-position: right -1rem center;
  background-repeat: no-repeat;
  background-size: 9px 6px;
  padding-right: 1.5rem;
  transition: box-shadow 0.5s, border-color 0.25s ease-in-out; }
  @media screen and (min-width: 0\0) {
    select {
      background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAYCAYAAACbU/80AAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAIpJREFUeNrEkckNgDAMBBfRkEt0ObRBBdsGXUDgmQfK4XhH2m8czQAAy27R3tsw4Qfe2x8uOO6oYLb6GlOor3GF+swURAOmUJ+RwtEJs9WvTGEYxBXqI1MQAZhCfUQKRzDMVj+TwrAIV6jvSUEkYAr1LSkcyTBb/V+KYfX7xAeusq3sLDtGH3kEGACPWIflNZfhRQAAAABJRU5ErkJggg=="); } }
  select:focus {
    outline: none;
    border: 2px solid #2DC9D7;
    background-color: #ffffff;
    box-shadow: none;
    transition: box-shadow 0.5s, border-color 0.25s ease-in-out; }
  select:disabled {
    background-color: #f7f7f7;
    cursor: not-allowed; }
  select::-ms-expand {
    display: none; }
  select[multiple] {
    height: auto;
    background-image: none; }

.is-invalid-input:not(:focus) {
  border-color: #cc4b37;
  background-color: #faedeb; }
  .is-invalid-input:not(:focus)::-webkit-input-placeholder {
    color: #cc4b37; }
  .is-invalid-input:not(:focus):-ms-input-placeholder {
    color: #cc4b37; }
  .is-invalid-input:not(:focus)::placeholder {
    color: #cc4b37; }

.is-invalid-label {
  color: #cc4b37; }

.form-error {
  display: none;
  margin-top: -0.5rem;
  margin-bottom: 1rem;
  font-size: 0.75rem;
  font-weight: 700;
  color: #cc4b37; }
  .form-error.is-visible {
    display: block; }

.accordion {
  margin-left: 0;
  background: #ffffff;
  list-style-type: none; }
  .accordion[disabled] .accordion-title {
    cursor: not-allowed; }

.accordion-item:first-child > :first-child {
  border-radius: 0 0 0 0; }

.accordion-item:last-child > :last-child {
  border-radius: 0 0 0 0; }

.accordion-title {
  position: relative;
  display: block;
  padding: 1.25rem 1rem;
  border: 1px solid #e6e6e6;
  border-bottom: 0;
  font-size: 0.75rem;
  line-height: 1;
  color: #2DC9D7; }
  :last-child:not(.is-active) > .accordion-title {
    border-bottom: 1px solid #e6e6e6;
    border-radius: 0 0 0 0; }
  .accordion-title:hover, .accordion-title:focus {
    background-color: #e6e6e6; }
  .accordion-title::before {
    position: absolute;
    top: 50%;
    right: 1rem;
    margin-top: -0.5rem;
    content: '+'; }
  .is-active > .accordion-title::before {
    content: '\2013'; }

.accordion-content {
  display: none;
  padding: 1rem;
  border: 1px solid #e6e6e6;
  border-bottom: 0;
  background-color: #ffffff;
  color: #000000; }
  :last-child > .accordion-content:last-child {
    border-bottom: 1px solid #e6e6e6; }

.accordion-menu li {
  width: 100%; }

.accordion-menu a {
  padding: 0.7rem 1rem; }

.accordion-menu .is-accordion-submenu a {
  padding: 0.7rem 1rem; }

.accordion-menu .nested.is-accordion-submenu {
  margin-right: 0;
  margin-left: 1rem; }

.accordion-menu.align-right .nested.is-accordion-submenu {
  margin-right: 1rem;
  margin-left: 0; }

.accordion-menu .is-accordion-submenu-parent:not(.has-submenu-toggle) > a {
  position: relative; }
  .accordion-menu .is-accordion-submenu-parent:not(.has-submenu-toggle) > a::after {
    display: block;
    width: 0;
    height: 0;
    border: inset 6px;
    content: '';
    border-bottom-width: 0;
    border-top-style: solid;
    border-color: #ffffff transparent transparent;
    position: absolute;
    top: 50%;
    margin-top: -3px;
    right: 1rem; }

.accordion-menu.align-left .is-accordion-submenu-parent > a::after {
  left: auto;
  right: 1rem; }

.accordion-menu.align-right .is-accordion-submenu-parent > a::after {
  right: auto;
  left: 1rem; }

.accordion-menu .is-accordion-submenu-parent[aria-expanded='true'] > a::after {
  -webkit-transform: rotate(180deg);
      -ms-transform: rotate(180deg);
          transform: rotate(180deg);
  -webkit-transform-origin: 50% 50%;
      -ms-transform-origin: 50% 50%;
          transform-origin: 50% 50%; }

.is-accordion-submenu-parent {
  position: relative; }

.has-submenu-toggle > a {
  margin-right: 40px; }

.submenu-toggle {
  position: absolute;
  top: 0;
  right: 0;
  cursor: pointer;
  width: 40px;
  height: 40px; }
  .submenu-toggle::after {
    display: block;
    width: 0;
    height: 0;
    border: inset 6px;
    content: '';
    border-bottom-width: 0;
    border-top-style: solid;
    border-color: #ffffff transparent transparent;
    top: 0;
    bottom: 0;
    margin: auto; }

.submenu-toggle[aria-expanded='true']::after {
  -webkit-transform: scaleY(-1);
      -ms-transform: scaleY(-1);
          transform: scaleY(-1);
  -webkit-transform-origin: 50% 50%;
      -ms-transform-origin: 50% 50%;
          transform-origin: 50% 50%; }

.submenu-toggle-text {
  position: absolute !important;
  width: 1px;
  height: 1px;
  padding: 0;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  -webkit-clip-path: inset(50%);
          clip-path: inset(50%);
  border: 0; }

.badge {
  display: inline-block;
  min-width: 2.1em;
  padding: 0.3em;
  border-radius: 50%;
  font-size: 0.6rem;
  text-align: center;
  background: #2DC9D7;
  color: #ffffff; }
  .badge.primary {
    background: #2DC9D7;
    color: #000000; }
  .badge.secondary {
    background: #FCB536;
    color: #000000; }
  .badge.success {
    background: #3adb76;
    color: #000000; }
  .badge.warning {
    background: #ffae00;
    color: #000000; }
  .badge.alert {
    background: #cc4b37;
    color: #000000; }

.breadcrumbs {
  margin: 0 0 1rem 0;
  list-style: none; }
  .breadcrumbs::before, .breadcrumbs::after {
    display: table;
    content: ' ';
    -webkit-flex-basis: 0;
        -ms-flex-preferred-size: 0;
            flex-basis: 0;
    -webkit-order: 1;
        -ms-flex-order: 1;
            order: 1; }
  .breadcrumbs::after {
    clear: both; }
  .breadcrumbs li {
    float: left;
    font-size: 0.6875rem;
    color: #000000;
    cursor: default;
    text-transform: uppercase; }
    .breadcrumbs li:not(:last-child)::after {
      position: relative;
      margin: 0 0.75rem;
      opacity: 1;
      content: "/";
      color: #cacaca; }
  .breadcrumbs a {
    color: #2DC9D7; }
    .breadcrumbs a:hover {
      text-decoration: underline; }
  .breadcrumbs .disabled {
    color: #cacaca;
    cursor: not-allowed; }

.button-group {
  margin-bottom: 1rem;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: nowrap;
      -ms-flex-wrap: nowrap;
          flex-wrap: nowrap;
  -webkit-align-items: stretch;
      -ms-flex-align: stretch;
          align-items: stretch; }
  .button-group::before, .button-group::after {
    display: table;
    content: ' ';
    -webkit-flex-basis: 0;
        -ms-flex-preferred-size: 0;
            flex-basis: 0;
    -webkit-order: 1;
        -ms-flex-order: 1;
            order: 1; }
  .button-group::after {
    clear: both; }
  .button-group .button {
    margin: 0;
    margin-right: 1px;
    margin-bottom: 1px;
    font-size: 0.9rem;
    -webkit-flex: 0 0 auto;
        -ms-flex: 0 0 auto;
            flex: 0 0 auto; }
    .button-group .button:last-child {
      margin-right: 0; }
  .button-group.tiny .button {
    font-size: 0.6rem; }
  .button-group.small .button {
    font-size: 0.75rem; }
  .button-group.large .button {
    font-size: 1.25rem; }
  .button-group.expanded .button {
    -webkit-flex: 1 1 0px;
        -ms-flex: 1 1 0px;
            flex: 1 1 0px; }
  .button-group.primary .button {
    background-color: #2DC9D7;
    color: #000000; }
    .button-group.primary .button:hover, .button-group.primary .button:focus {
      background-color: #21a3af;
      color: #000000; }
  .button-group.secondary .button {
    background-color: #FCB536;
    color: #000000; }
    .button-group.secondary .button:hover, .button-group.secondary .button:focus {
      background-color: #f19c04;
      color: #000000; }
  .button-group.success .button {
    background-color: #3adb76;
    color: #000000; }
    .button-group.success .button:hover, .button-group.success .button:focus {
      background-color: #22bb5b;
      color: #000000; }
  .button-group.warning .button {
    background-color: #ffae00;
    color: #000000; }
    .button-group.warning .button:hover, .button-group.warning .button:focus {
      background-color: #cc8b00;
      color: #000000; }
  .button-group.alert .button {
    background-color: #cc4b37;
    color: #000000; }
    .button-group.alert .button:hover, .button-group.alert .button:focus {
      background-color: #a53b2a;
      color: #000000; }
  .button-group.stacked, .button-group.stacked-for-small, .button-group.stacked-for-medium {
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap; }
    .button-group.stacked .button, .button-group.stacked-for-small .button, .button-group.stacked-for-medium .button {
      -webkit-flex: 0 0 100%;
          -ms-flex: 0 0 100%;
              flex: 0 0 100%; }
      .button-group.stacked .button:last-child, .button-group.stacked-for-small .button:last-child, .button-group.stacked-for-medium .button:last-child {
        margin-bottom: 0; }
  @media print, screen and (min-width: 40em) {
    .button-group.stacked-for-small .button {
      -webkit-flex: 1 1 0px;
          -ms-flex: 1 1 0px;
              flex: 1 1 0px;
      margin-bottom: 0; } }
  @media print, screen and (min-width: 64em) {
    .button-group.stacked-for-medium .button {
      -webkit-flex: 1 1 0px;
          -ms-flex: 1 1 0px;
              flex: 1 1 0px;
      margin-bottom: 0; } }
  @media screen and (max-width: 39.9375em) {
    .button-group.stacked-for-small.expanded {
      display: block; }
      .button-group.stacked-for-small.expanded .button {
        display: block;
        margin-right: 0; } }

.callout {
  position: relative;
  margin: 0 0 1rem 0;
  padding: 1rem;
  border: 1px solid rgba(0, 0, 0, 0.25);
  border-radius: 0;
  background-color: white;
  color: #000000; }
  .callout > :first-child {
    margin-top: 0; }
  .callout > :last-child {
    margin-bottom: 0; }
  .callout.primary {
    background-color: #e0f7f9;
    color: #000000; }
  .callout.secondary {
    background-color: #fff4e1;
    color: #000000; }
  .callout.success {
    background-color: #e1faea;
    color: #000000; }
  .callout.warning {
    background-color: #fff3d9;
    color: #000000; }
  .callout.alert {
    background-color: #f7e4e1;
    color: #000000; }
  .callout.small {
    padding-top: 0.5rem;
    padding-right: 0.5rem;
    padding-bottom: 0.5rem;
    padding-left: 0.5rem; }
  .callout.large {
    padding-top: 3rem;
    padding-right: 3rem;
    padding-bottom: 3rem;
    padding-left: 3rem; }

.card {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-flex-grow: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
  margin-bottom: 1rem;
  border: 1px solid #e6e6e6;
  border-radius: 0;
  background: #ffffff;
  box-shadow: none;
  overflow: hidden;
  color: #000000; }
  .card > :last-child {
    margin-bottom: 0; }

.card-divider {
  -webkit-flex: 0 1 auto;
      -ms-flex: 0 1 auto;
          flex: 0 1 auto;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  padding: 1rem;
  background: #e6e6e6; }
  .card-divider > :last-child {
    margin-bottom: 0; }

.card-section {
  -webkit-flex: 1 0 auto;
      -ms-flex: 1 0 auto;
          flex: 1 0 auto;
  padding: 1rem; }
  .card-section > :last-child {
    margin-bottom: 0; }

.card-image {
  min-height: 1px; }

.close-button {
  position: absolute;
  color: #8a8a8a;
  cursor: pointer; }
  [data-whatinput='mouse'] .close-button {
    outline: 0; }
  .close-button:hover, .close-button:focus {
    color: #000000; }
  .close-button.small {
    right: 0.66rem;
    top: 0.33em;
    font-size: 1.5em;
    line-height: 1; }
  .close-button, .close-button.medium {
    right: 1rem;
    top: 0.5rem;
    font-size: 2em;
    line-height: 1; }

.menu {
  padding: 0;
  margin: 0;
  list-style: none;
  position: relative;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap; }
  [data-whatinput='mouse'] .menu li {
    outline: 0; }
  .menu a,
  .menu .button {
    line-height: 1;
    text-decoration: none;
    display: block;
    padding: 0.7rem 1rem; }
  .menu input,
  .menu select,
  .menu a,
  .menu button {
    margin-bottom: 0; }
  .menu input {
    display: inline-block; }
  .menu, .menu.horizontal {
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
    -webkit-flex-direction: row;
        -ms-flex-direction: row;
            flex-direction: row; }
  .menu.vertical {
    -webkit-flex-wrap: nowrap;
        -ms-flex-wrap: nowrap;
            flex-wrap: nowrap;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column; }
  .menu.expanded li {
    -webkit-flex: 1 1 0px;
        -ms-flex: 1 1 0px;
            flex: 1 1 0px; }
  .menu.simple {
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center; }
    .menu.simple li + li {
      margin-left: 1rem; }
    .menu.simple a {
      padding: 0; }
  @media print, screen and (min-width: 40em) {
    .menu.medium-horizontal {
      -webkit-flex-wrap: wrap;
          -ms-flex-wrap: wrap;
              flex-wrap: wrap;
      -webkit-flex-direction: row;
          -ms-flex-direction: row;
              flex-direction: row; }
    .menu.medium-vertical {
      -webkit-flex-wrap: nowrap;
          -ms-flex-wrap: nowrap;
              flex-wrap: nowrap;
      -webkit-flex-direction: column;
          -ms-flex-direction: column;
              flex-direction: column; }
    .menu.medium-expanded li {
      -webkit-flex: 1 1 0px;
          -ms-flex: 1 1 0px;
              flex: 1 1 0px; }
    .menu.medium-simple li {
      -webkit-flex: 1 1 0px;
          -ms-flex: 1 1 0px;
              flex: 1 1 0px; } }
  @media print, screen and (min-width: 64em) {
    .menu.large-horizontal {
      -webkit-flex-wrap: wrap;
          -ms-flex-wrap: wrap;
              flex-wrap: wrap;
      -webkit-flex-direction: row;
          -ms-flex-direction: row;
              flex-direction: row; }
    .menu.large-vertical {
      -webkit-flex-wrap: nowrap;
          -ms-flex-wrap: nowrap;
              flex-wrap: nowrap;
      -webkit-flex-direction: column;
          -ms-flex-direction: column;
              flex-direction: column; }
    .menu.large-expanded li {
      -webkit-flex: 1 1 0px;
          -ms-flex: 1 1 0px;
              flex: 1 1 0px; }
    .menu.large-simple li {
      -webkit-flex: 1 1 0px;
          -ms-flex: 1 1 0px;
              flex: 1 1 0px; } }
  @media screen and (min-width: 75em) {
    .menu.xlarge-horizontal {
      -webkit-flex-wrap: wrap;
          -ms-flex-wrap: wrap;
              flex-wrap: wrap;
      -webkit-flex-direction: row;
          -ms-flex-direction: row;
              flex-direction: row; }
    .menu.xlarge-vertical {
      -webkit-flex-wrap: nowrap;
          -ms-flex-wrap: nowrap;
              flex-wrap: nowrap;
      -webkit-flex-direction: column;
          -ms-flex-direction: column;
              flex-direction: column; }
    .menu.xlarge-expanded li {
      -webkit-flex: 1 1 0px;
          -ms-flex: 1 1 0px;
              flex: 1 1 0px; }
    .menu.xlarge-simple li {
      -webkit-flex: 1 1 0px;
          -ms-flex: 1 1 0px;
              flex: 1 1 0px; } }
  @media screen and (min-width: 90em) {
    .menu.xxlarge-horizontal {
      -webkit-flex-wrap: wrap;
          -ms-flex-wrap: wrap;
              flex-wrap: wrap;
      -webkit-flex-direction: row;
          -ms-flex-direction: row;
              flex-direction: row; }
    .menu.xxlarge-vertical {
      -webkit-flex-wrap: nowrap;
          -ms-flex-wrap: nowrap;
              flex-wrap: nowrap;
      -webkit-flex-direction: column;
          -ms-flex-direction: column;
              flex-direction: column; }
    .menu.xxlarge-expanded li {
      -webkit-flex: 1 1 0px;
          -ms-flex: 1 1 0px;
              flex: 1 1 0px; }
    .menu.xxlarge-simple li {
      -webkit-flex: 1 1 0px;
          -ms-flex: 1 1 0px;
              flex: 1 1 0px; } }
  .menu.nested {
    margin-right: 0;
    margin-left: 1rem; }
  .menu.icons a {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex; }
  .menu.icon-top a, .menu.icon-right a, .menu.icon-bottom a, .menu.icon-left a {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex; }
  .menu.icon-left li a {
    -webkit-flex-flow: row nowrap;
        -ms-flex-flow: row nowrap;
            flex-flow: row nowrap; }
    .menu.icon-left li a img,
    .menu.icon-left li a i,
    .menu.icon-left li a svg {
      margin-right: 0.25rem; }
  .menu.icon-right li a {
    -webkit-flex-flow: row nowrap;
        -ms-flex-flow: row nowrap;
            flex-flow: row nowrap; }
    .menu.icon-right li a img,
    .menu.icon-right li a i,
    .menu.icon-right li a svg {
      margin-left: 0.25rem; }
  .menu.icon-top li a {
    -webkit-flex-flow: column nowrap;
        -ms-flex-flow: column nowrap;
            flex-flow: column nowrap; }
    .menu.icon-top li a img,
    .menu.icon-top li a i,
    .menu.icon-top li a svg {
      -webkit-align-self: stretch;
          -ms-flex-item-align: stretch;
                  -ms-grid-row-align: stretch;
              align-self: stretch;
      margin-bottom: 0.25rem;
      text-align: center; }
  .menu.icon-bottom li a {
    -webkit-flex-flow: column nowrap;
        -ms-flex-flow: column nowrap;
            flex-flow: column nowrap; }
    .menu.icon-bottom li a img,
    .menu.icon-bottom li a i,
    .menu.icon-bottom li a svg {
      -webkit-align-self: stretch;
          -ms-flex-item-align: stretch;
                  -ms-grid-row-align: stretch;
              align-self: stretch;
      margin-bottom: 0.25rem;
      text-align: center; }
  .menu .is-active > a {
    background: #2DC9D7;
    color: #ffffff; }
  .menu .active > a {
    background: #2DC9D7;
    color: #ffffff; }
  .menu.align-left {
    -webkit-justify-content: flex-start;
        -ms-flex-pack: start;
            justify-content: flex-start; }
  .menu.align-right li {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-justify-content: flex-end;
        -ms-flex-pack: end;
            justify-content: flex-end; }
    .menu.align-right li .submenu li {
      -webkit-justify-content: flex-start;
          -ms-flex-pack: start;
              justify-content: flex-start; }
  .menu.align-right.vertical li {
    display: block;
    text-align: right; }
    .menu.align-right.vertical li .submenu li {
      text-align: right; }
  .menu.align-right .nested {
    margin-right: 1rem;
    margin-left: 0; }
  .menu.align-center li {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center; }
    .menu.align-center li .submenu li {
      -webkit-justify-content: flex-start;
          -ms-flex-pack: start;
              justify-content: flex-start; }
  .menu .menu-text {
    padding: 0.7rem 1rem;
    font-weight: bold;
    line-height: 1;
    color: inherit; }

.menu-centered > .menu {
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center; }
  .menu-centered > .menu li {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center; }
    .menu-centered > .menu li .submenu li {
      -webkit-justify-content: flex-start;
          -ms-flex-pack: start;
              justify-content: flex-start; }

.no-js [data-responsive-menu] ul {
  display: none; }

.menu-icon {
  position: relative;
  display: inline-block;
  vertical-align: middle;
  width: 20px;
  height: 16px;
  cursor: pointer; }
  .menu-icon::after {
    position: absolute;
    top: 0;
    left: 0;
    display: block;
    width: 100%;
    height: 2px;
    background: #ffffff;
    box-shadow: 0 7px 0 #ffffff, 0 14px 0 #ffffff;
    content: ''; }
  .menu-icon:hover::after {
    background: #cacaca;
    box-shadow: 0 7px 0 #cacaca, 0 14px 0 #cacaca; }

.menu-icon.dark {
  position: relative;
  display: inline-block;
  vertical-align: middle;
  width: 20px;
  height: 16px;
  cursor: pointer; }
  .menu-icon.dark::after {
    position: absolute;
    top: 0;
    left: 0;
    display: block;
    width: 100%;
    height: 2px;
    background: #000000;
    box-shadow: 0 7px 0 #000000, 0 14px 0 #000000;
    content: ''; }
  .menu-icon.dark:hover::after {
    background: #8a8a8a;
    box-shadow: 0 7px 0 #8a8a8a, 0 14px 0 #8a8a8a; }

.is-drilldown {
  position: relative;
  overflow: hidden; }
  .is-drilldown li {
    display: block; }
  .is-drilldown.animate-height {
    transition: height 0.5s; }

.drilldown a {
  padding: 0.7rem 1rem;
  background: #ffffff; }

.drilldown .is-drilldown-submenu {
  position: absolute;
  top: 0;
  left: 100%;
  z-index: -1;
  width: 100%;
  background: #ffffff;
  transition: -webkit-transform 0.15s linear;
  transition: transform 0.15s linear;
  transition: transform 0.15s linear, -webkit-transform 0.15s linear; }
  .drilldown .is-drilldown-submenu.is-active {
    z-index: 1;
    display: block;
    -webkit-transform: translateX(-100%);
        -ms-transform: translateX(-100%);
            transform: translateX(-100%); }
  .drilldown .is-drilldown-submenu.is-closing {
    -webkit-transform: translateX(100%);
        -ms-transform: translateX(100%);
            transform: translateX(100%); }
  .drilldown .is-drilldown-submenu a {
    padding: 0.7rem 1rem; }

.drilldown .nested.is-drilldown-submenu {
  margin-right: 0;
  margin-left: 0; }

.drilldown .drilldown-submenu-cover-previous {
  min-height: 100%; }

.drilldown .is-drilldown-submenu-parent > a {
  position: relative; }
  .drilldown .is-drilldown-submenu-parent > a::after {
    position: absolute;
    top: 50%;
    margin-top: -6px;
    right: 1rem;
    display: block;
    width: 0;
    height: 0;
    border: inset 6px;
    content: '';
    border-right-width: 0;
    border-left-style: solid;
    border-color: transparent transparent transparent #2DC9D7; }

.drilldown.align-left .is-drilldown-submenu-parent > a::after {
  left: auto;
  right: 1rem;
  display: block;
  width: 0;
  height: 0;
  border: inset 6px;
  content: '';
  border-right-width: 0;
  border-left-style: solid;
  border-color: transparent transparent transparent #2DC9D7; }

.drilldown.align-right .is-drilldown-submenu-parent > a::after {
  right: auto;
  left: 1rem;
  display: block;
  width: 0;
  height: 0;
  border: inset 6px;
  content: '';
  border-left-width: 0;
  border-right-style: solid;
  border-color: transparent #2DC9D7 transparent transparent; }

.drilldown .js-drilldown-back > a::before {
  display: block;
  width: 0;
  height: 0;
  border: inset 6px;
  content: '';
  border-left-width: 0;
  border-right-style: solid;
  border-color: transparent #2DC9D7 transparent transparent;
  border-left-width: 0;
  display: inline-block;
  vertical-align: middle;
  margin-right: 0.75rem;
  border-left-width: 0; }

.dropdown-pane {
  position: absolute;
  z-index: 10;
  width: 300px;
  padding: 1rem;
  visibility: hidden;
  display: none;
  border: 1px solid #cacaca;
  border-radius: 0;
  background-color: #ffffff;
  font-size: 1rem; }
  .dropdown-pane.is-opening {
    display: block; }
  .dropdown-pane.is-open {
    visibility: visible;
    display: block; }

.dropdown-pane.tiny {
  width: 100px; }

.dropdown-pane.small {
  width: 200px; }

.dropdown-pane.large {
  width: 400px; }

.dropdown.menu > li.opens-left > .is-dropdown-submenu {
  top: 100%;
  right: 0;
  left: auto; }

.dropdown.menu > li.opens-right > .is-dropdown-submenu {
  top: 100%;
  right: auto;
  left: 0; }

.dropdown.menu > li.is-dropdown-submenu-parent > a {
  position: relative;
  padding-right: 1.5rem; }

.dropdown.menu > li.is-dropdown-submenu-parent > a::after {
  display: block;
  width: 0;
  height: 0;
  border: inset 6px;
  content: '';
  border-bottom-width: 0;
  border-top-style: solid;
  border-color: #2DC9D7 transparent transparent;
  right: 5px;
  left: auto;
  margin-top: -3px; }

.dropdown.menu a {
  padding: 0.7rem 1rem; }
  [data-whatinput='mouse'] .dropdown.menu a {
    outline: 0; }

.dropdown.menu .is-active > a {
  background: transparent;
  color: #e6e6e6; }

.no-js .dropdown.menu ul {
  display: none; }

.dropdown.menu .nested.is-dropdown-submenu {
  margin-right: 0;
  margin-left: 0; }

.dropdown.menu.vertical > li .is-dropdown-submenu {
  top: 0; }

.dropdown.menu.vertical > li.opens-left > .is-dropdown-submenu {
  right: 100%;
  left: auto;
  top: 0; }

.dropdown.menu.vertical > li.opens-right > .is-dropdown-submenu {
  right: auto;
  left: 100%; }

.dropdown.menu.vertical > li > a::after {
  right: 14px; }

.dropdown.menu.vertical > li.opens-left > a::after {
  right: auto;
  left: 5px;
  display: block;
  width: 0;
  height: 0;
  border: inset 6px;
  content: '';
  border-left-width: 0;
  border-right-style: solid;
  border-color: transparent #2DC9D7 transparent transparent; }

.dropdown.menu.vertical > li.opens-right > a::after {
  display: block;
  width: 0;
  height: 0;
  border: inset 6px;
  content: '';
  border-right-width: 0;
  border-left-style: solid;
  border-color: transparent transparent transparent #2DC9D7; }

@media print, screen and (min-width: 40em) {
  .dropdown.menu.medium-horizontal > li.opens-left > .is-dropdown-submenu {
    top: 100%;
    right: 0;
    left: auto; }
  .dropdown.menu.medium-horizontal > li.opens-right > .is-dropdown-submenu {
    top: 100%;
    right: auto;
    left: 0; }
  .dropdown.menu.medium-horizontal > li.is-dropdown-submenu-parent > a {
    position: relative;
    padding-right: 1.5rem; }
  .dropdown.menu.medium-horizontal > li.is-dropdown-submenu-parent > a::after {
    display: block;
    width: 0;
    height: 0;
    border: inset 6px;
    content: '';
    border-bottom-width: 0;
    border-top-style: solid;
    border-color: #2DC9D7 transparent transparent;
    right: 5px;
    left: auto;
    margin-top: -3px; }
  .dropdown.menu.medium-vertical > li .is-dropdown-submenu {
    top: 0; }
  .dropdown.menu.medium-vertical > li.opens-left > .is-dropdown-submenu {
    right: 100%;
    left: auto;
    top: 0; }
  .dropdown.menu.medium-vertical > li.opens-right > .is-dropdown-submenu {
    right: auto;
    left: 100%; }
  .dropdown.menu.medium-vertical > li > a::after {
    right: 14px; }
  .dropdown.menu.medium-vertical > li.opens-left > a::after {
    right: auto;
    left: 5px;
    display: block;
    width: 0;
    height: 0;
    border: inset 6px;
    content: '';
    border-left-width: 0;
    border-right-style: solid;
    border-color: transparent #2DC9D7 transparent transparent; }
  .dropdown.menu.medium-vertical > li.opens-right > a::after {
    display: block;
    width: 0;
    height: 0;
    border: inset 6px;
    content: '';
    border-right-width: 0;
    border-left-style: solid;
    border-color: transparent transparent transparent #2DC9D7; } }

@media print, screen and (min-width: 64em) {
  .dropdown.menu.large-horizontal > li.opens-left > .is-dropdown-submenu {
    top: 100%;
    right: 0;
    left: auto; }
  .dropdown.menu.large-horizontal > li.opens-right > .is-dropdown-submenu {
    top: 100%;
    right: auto;
    left: 0; }
  .dropdown.menu.large-horizontal > li.is-dropdown-submenu-parent > a {
    position: relative;
    padding-right: 1.5rem; }
  .dropdown.menu.large-horizontal > li.is-dropdown-submenu-parent > a::after {
    display: block;
    width: 0;
    height: 0;
    border: inset 6px;
    content: '';
    border-bottom-width: 0;
    border-top-style: solid;
    border-color: #2DC9D7 transparent transparent;
    right: 5px;
    left: auto;
    margin-top: -3px; }
  .dropdown.menu.large-vertical > li .is-dropdown-submenu {
    top: 0; }
  .dropdown.menu.large-vertical > li.opens-left > .is-dropdown-submenu {
    right: 100%;
    left: auto;
    top: 0; }
  .dropdown.menu.large-vertical > li.opens-right > .is-dropdown-submenu {
    right: auto;
    left: 100%; }
  .dropdown.menu.large-vertical > li > a::after {
    right: 14px; }
  .dropdown.menu.large-vertical > li.opens-left > a::after {
    right: auto;
    left: 5px;
    display: block;
    width: 0;
    height: 0;
    border: inset 6px;
    content: '';
    border-left-width: 0;
    border-right-style: solid;
    border-color: transparent #2DC9D7 transparent transparent; }
  .dropdown.menu.large-vertical > li.opens-right > a::after {
    display: block;
    width: 0;
    height: 0;
    border: inset 6px;
    content: '';
    border-right-width: 0;
    border-left-style: solid;
    border-color: transparent transparent transparent #2DC9D7; } }

@media screen and (min-width: 75em) {
  .dropdown.menu.xlarge-horizontal > li.opens-left > .is-dropdown-submenu {
    top: 100%;
    right: 0;
    left: auto; }
  .dropdown.menu.xlarge-horizontal > li.opens-right > .is-dropdown-submenu {
    top: 100%;
    right: auto;
    left: 0; }
  .dropdown.menu.xlarge-horizontal > li.is-dropdown-submenu-parent > a {
    position: relative;
    padding-right: 1.5rem; }
  .dropdown.menu.xlarge-horizontal > li.is-dropdown-submenu-parent > a::after {
    display: block;
    width: 0;
    height: 0;
    border: inset 6px;
    content: '';
    border-bottom-width: 0;
    border-top-style: solid;
    border-color: #2DC9D7 transparent transparent;
    right: 5px;
    left: auto;
    margin-top: -3px; }
  .dropdown.menu.xlarge-vertical > li .is-dropdown-submenu {
    top: 0; }
  .dropdown.menu.xlarge-vertical > li.opens-left > .is-dropdown-submenu {
    right: 100%;
    left: auto;
    top: 0; }
  .dropdown.menu.xlarge-vertical > li.opens-right > .is-dropdown-submenu {
    right: auto;
    left: 100%; }
  .dropdown.menu.xlarge-vertical > li > a::after {
    right: 14px; }
  .dropdown.menu.xlarge-vertical > li.opens-left > a::after {
    right: auto;
    left: 5px;
    display: block;
    width: 0;
    height: 0;
    border: inset 6px;
    content: '';
    border-left-width: 0;
    border-right-style: solid;
    border-color: transparent #2DC9D7 transparent transparent; }
  .dropdown.menu.xlarge-vertical > li.opens-right > a::after {
    display: block;
    width: 0;
    height: 0;
    border: inset 6px;
    content: '';
    border-right-width: 0;
    border-left-style: solid;
    border-color: transparent transparent transparent #2DC9D7; } }

@media screen and (min-width: 90em) {
  .dropdown.menu.xxlarge-horizontal > li.opens-left > .is-dropdown-submenu {
    top: 100%;
    right: 0;
    left: auto; }
  .dropdown.menu.xxlarge-horizontal > li.opens-right > .is-dropdown-submenu {
    top: 100%;
    right: auto;
    left: 0; }
  .dropdown.menu.xxlarge-horizontal > li.is-dropdown-submenu-parent > a {
    position: relative;
    padding-right: 1.5rem; }
  .dropdown.menu.xxlarge-horizontal > li.is-dropdown-submenu-parent > a::after {
    display: block;
    width: 0;
    height: 0;
    border: inset 6px;
    content: '';
    border-bottom-width: 0;
    border-top-style: solid;
    border-color: #2DC9D7 transparent transparent;
    right: 5px;
    left: auto;
    margin-top: -3px; }
  .dropdown.menu.xxlarge-vertical > li .is-dropdown-submenu {
    top: 0; }
  .dropdown.menu.xxlarge-vertical > li.opens-left > .is-dropdown-submenu {
    right: 100%;
    left: auto;
    top: 0; }
  .dropdown.menu.xxlarge-vertical > li.opens-right > .is-dropdown-submenu {
    right: auto;
    left: 100%; }
  .dropdown.menu.xxlarge-vertical > li > a::after {
    right: 14px; }
  .dropdown.menu.xxlarge-vertical > li.opens-left > a::after {
    right: auto;
    left: 5px;
    display: block;
    width: 0;
    height: 0;
    border: inset 6px;
    content: '';
    border-left-width: 0;
    border-right-style: solid;
    border-color: transparent #2DC9D7 transparent transparent; }
  .dropdown.menu.xxlarge-vertical > li.opens-right > a::after {
    display: block;
    width: 0;
    height: 0;
    border: inset 6px;
    content: '';
    border-right-width: 0;
    border-left-style: solid;
    border-color: transparent transparent transparent #2DC9D7; } }

.dropdown.menu.align-right .is-dropdown-submenu.first-sub {
  top: 100%;
  right: 0;
  left: auto; }

.is-dropdown-menu.vertical {
  width: 100px; }
  .is-dropdown-menu.vertical.align-right {
    float: right; }

.is-dropdown-submenu-parent {
  position: relative; }
  .is-dropdown-submenu-parent a::after {
    position: absolute;
    top: 50%;
    right: 5px;
    left: auto;
    margin-top: -6px; }
  .is-dropdown-submenu-parent.opens-inner > .is-dropdown-submenu {
    top: 100%;
    left: auto; }
  .is-dropdown-submenu-parent.opens-left > .is-dropdown-submenu {
    right: 100%;
    left: auto; }
  .is-dropdown-submenu-parent.opens-right > .is-dropdown-submenu {
    right: auto;
    left: 100%; }

.is-dropdown-submenu {
  position: absolute;
  top: 0;
  left: 100%;
  z-index: 1;
  display: none;
  min-width: 200px;
  border: 1px solid #cacaca;
  background: #ffffff; }
  .dropdown .is-dropdown-submenu a {
    padding: 0.7rem 1rem; }
  .is-dropdown-submenu .is-dropdown-submenu-parent > a::after {
    right: 14px; }
  .is-dropdown-submenu .is-dropdown-submenu-parent.opens-left > a::after {
    right: auto;
    left: 5px;
    display: block;
    width: 0;
    height: 0;
    border: inset 6px;
    content: '';
    border-left-width: 0;
    border-right-style: solid;
    border-color: transparent #2DC9D7 transparent transparent; }
  .is-dropdown-submenu .is-dropdown-submenu-parent.opens-right > a::after {
    display: block;
    width: 0;
    height: 0;
    border: inset 6px;
    content: '';
    border-right-width: 0;
    border-left-style: solid;
    border-color: transparent transparent transparent #2DC9D7; }
  .is-dropdown-submenu .is-dropdown-submenu {
    margin-top: -1px; }
  .is-dropdown-submenu > li {
    width: 100%; }
  .is-dropdown-submenu.js-dropdown-active {
    display: block; }

.responsive-embed,
.flex-video {
  position: relative;
  height: 0;
  margin-bottom: 1rem;
  padding-bottom: 75%;
  overflow: hidden; }
  .responsive-embed iframe,
  .responsive-embed object,
  .responsive-embed embed,
  .responsive-embed video,
  .flex-video iframe,
  .flex-video object,
  .flex-video embed,
  .flex-video video {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%; }
  .responsive-embed.widescreen,
  .flex-video.widescreen {
    padding-bottom: 56.25%; }

.label {
  display: inline-block;
  padding: 0.33333rem 0.5rem;
  border-radius: 0;
  font-size: 0.8rem;
  line-height: 1;
  white-space: nowrap;
  cursor: default;
  background: #2DC9D7;
  color: #ffffff; }
  .label.primary {
    background: #2DC9D7;
    color: #000000; }
  .label.secondary {
    background: #FCB536;
    color: #000000; }
  .label.success {
    background: #3adb76;
    color: #000000; }
  .label.warning {
    background: #ffae00;
    color: #000000; }
  .label.alert {
    background: #cc4b37;
    color: #000000; }

.media-object {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  margin-bottom: 1rem;
  -webkit-flex-wrap: nowrap;
      -ms-flex-wrap: nowrap;
          flex-wrap: nowrap; }
  .media-object img {
    max-width: none; }
  @media screen and (max-width: 39.9375em) {
    .media-object.stack-for-small {
      -webkit-flex-wrap: wrap;
          -ms-flex-wrap: wrap;
              flex-wrap: wrap; } }
  @media screen and (max-width: 39.9375em) {
    .media-object.stack-for-small .media-object-section {
      padding: 0;
      padding-bottom: 1rem;
      -webkit-flex-basis: 100%;
          -ms-flex-preferred-size: 100%;
              flex-basis: 100%;
      max-width: 100%; }
      .media-object.stack-for-small .media-object-section img {
        width: 100%; } }

.media-object-section {
  -webkit-flex: 0 1 auto;
      -ms-flex: 0 1 auto;
          flex: 0 1 auto; }
  .media-object-section:first-child {
    padding-right: 1rem; }
  .media-object-section:last-child:not(:nth-child(2)) {
    padding-left: 1rem; }
  .media-object-section > :last-child {
    margin-bottom: 0; }
  .media-object-section.main-section {
    -webkit-flex: 1 1 0px;
        -ms-flex: 1 1 0px;
            flex: 1 1 0px; }

.is-off-canvas-open {
  overflow: hidden; }

.js-off-canvas-overlay {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 11;
  width: 100%;
  height: 100%;
  transition: opacity 0.5s ease, visibility 0.5s ease;
  background: rgba(255, 255, 255, 0.25);
  opacity: 0;
  visibility: hidden;
  overflow: hidden; }
  .js-off-canvas-overlay.is-visible {
    opacity: 1;
    visibility: visible; }
  .js-off-canvas-overlay.is-closable {
    cursor: pointer; }
  .js-off-canvas-overlay.is-overlay-absolute {
    position: absolute; }
  .js-off-canvas-overlay.is-overlay-fixed {
    position: fixed; }

.off-canvas-wrapper {
  position: relative;
  overflow: hidden; }

.off-canvas {
  position: fixed;
  z-index: 12;
  transition: -webkit-transform 0.5s ease;
  transition: transform 0.5s ease;
  transition: transform 0.5s ease, -webkit-transform 0.5s ease;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  background: #ffffff; }
  [data-whatinput='mouse'] .off-canvas {
    outline: 0; }
  .off-canvas.is-transition-push {
    z-index: 12; }
  .off-canvas.is-closed {
    visibility: hidden; }
  .off-canvas.is-transition-overlap {
    z-index: 13; }
    .off-canvas.is-transition-overlap.is-open {
      box-shadow: 0 0 10px rgba(0, 0, 0, 0.7); }
  .off-canvas.is-open {
    -webkit-transform: translate(0, 0);
        -ms-transform: translate(0, 0);
            transform: translate(0, 0); }

.off-canvas-absolute {
  position: absolute;
  z-index: 12;
  transition: -webkit-transform 0.5s ease;
  transition: transform 0.5s ease;
  transition: transform 0.5s ease, -webkit-transform 0.5s ease;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  background: #ffffff; }
  [data-whatinput='mouse'] .off-canvas-absolute {
    outline: 0; }
  .off-canvas-absolute.is-transition-push {
    z-index: 12; }
  .off-canvas-absolute.is-closed {
    visibility: hidden; }
  .off-canvas-absolute.is-transition-overlap {
    z-index: 13; }
    .off-canvas-absolute.is-transition-overlap.is-open {
      box-shadow: 0 0 10px rgba(0, 0, 0, 0.7); }
  .off-canvas-absolute.is-open {
    -webkit-transform: translate(0, 0);
        -ms-transform: translate(0, 0);
            transform: translate(0, 0); }

.position-left {
  top: 0;
  left: 0;
  height: 100%;
  overflow-y: auto;
  width: 250px;
  -webkit-transform: translateX(-250px);
      -ms-transform: translateX(-250px);
          transform: translateX(-250px); }
  .off-canvas-content .off-canvas.position-left {
    -webkit-transform: translateX(-250px);
        -ms-transform: translateX(-250px);
            transform: translateX(-250px); }
    .off-canvas-content .off-canvas.position-left.is-transition-overlap.is-open {
      -webkit-transform: translate(0, 0);
          -ms-transform: translate(0, 0);
              transform: translate(0, 0); }
  .off-canvas-content.is-open-left.has-transition-push {
    -webkit-transform: translateX(250px);
        -ms-transform: translateX(250px);
            transform: translateX(250px); }
  .position-left.is-transition-push {
    box-shadow: inset -13px 0 20px -13px rgba(0, 0, 0, 0.25); }

.position-right {
  top: 0;
  right: 0;
  height: 100%;
  overflow-y: auto;
  width: 250px;
  -webkit-transform: translateX(250px);
      -ms-transform: translateX(250px);
          transform: translateX(250px); }
  .off-canvas-content .off-canvas.position-right {
    -webkit-transform: translateX(250px);
        -ms-transform: translateX(250px);
            transform: translateX(250px); }
    .off-canvas-content .off-canvas.position-right.is-transition-overlap.is-open {
      -webkit-transform: translate(0, 0);
          -ms-transform: translate(0, 0);
              transform: translate(0, 0); }
  .off-canvas-content.is-open-right.has-transition-push {
    -webkit-transform: translateX(-250px);
        -ms-transform: translateX(-250px);
            transform: translateX(-250px); }
  .position-right.is-transition-push {
    box-shadow: inset 13px 0 20px -13px rgba(0, 0, 0, 0.25); }

.position-top {
  top: 0;
  left: 0;
  width: 100%;
  overflow-x: auto;
  height: 250px;
  -webkit-transform: translateY(-250px);
      -ms-transform: translateY(-250px);
          transform: translateY(-250px); }
  .off-canvas-content .off-canvas.position-top {
    -webkit-transform: translateY(-250px);
        -ms-transform: translateY(-250px);
            transform: translateY(-250px); }
    .off-canvas-content .off-canvas.position-top.is-transition-overlap.is-open {
      -webkit-transform: translate(0, 0);
          -ms-transform: translate(0, 0);
              transform: translate(0, 0); }
  .off-canvas-content.is-open-top.has-transition-push {
    -webkit-transform: translateY(250px);
        -ms-transform: translateY(250px);
            transform: translateY(250px); }
  .position-top.is-transition-push {
    box-shadow: inset 0 -13px 20px -13px rgba(0, 0, 0, 0.25); }

.position-bottom {
  bottom: 0;
  left: 0;
  width: 100%;
  overflow-x: auto;
  height: 250px;
  -webkit-transform: translateY(250px);
      -ms-transform: translateY(250px);
          transform: translateY(250px); }
  .off-canvas-content .off-canvas.position-bottom {
    -webkit-transform: translateY(250px);
        -ms-transform: translateY(250px);
            transform: translateY(250px); }
    .off-canvas-content .off-canvas.position-bottom.is-transition-overlap.is-open {
      -webkit-transform: translate(0, 0);
          -ms-transform: translate(0, 0);
              transform: translate(0, 0); }
  .off-canvas-content.is-open-bottom.has-transition-push {
    -webkit-transform: translateY(-250px);
        -ms-transform: translateY(-250px);
            transform: translateY(-250px); }
  .position-bottom.is-transition-push {
    box-shadow: inset 0 13px 20px -13px rgba(0, 0, 0, 0.25); }

.off-canvas-content {
  -webkit-transform: none;
      -ms-transform: none;
          transform: none;
  transition: -webkit-transform 0.5s ease;
  transition: transform 0.5s ease;
  transition: transform 0.5s ease, -webkit-transform 0.5s ease;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden; }
  .off-canvas-content.has-transition-push {
    -webkit-transform: translate(0, 0);
        -ms-transform: translate(0, 0);
            transform: translate(0, 0); }
  .off-canvas-content .off-canvas.is-open {
    -webkit-transform: translate(0, 0);
        -ms-transform: translate(0, 0);
            transform: translate(0, 0); }

@media print, screen and (min-width: 40em) {
  .position-left.reveal-for-medium {
    -webkit-transform: none;
        -ms-transform: none;
            transform: none;
    z-index: 12;
    transition: none;
    visibility: visible; }
    .position-left.reveal-for-medium .close-button {
      display: none; }
    .off-canvas-content .position-left.reveal-for-medium {
      -webkit-transform: none;
          -ms-transform: none;
              transform: none; }
    .off-canvas-content.has-reveal-left {
      margin-left: 250px; }
    .position-left.reveal-for-medium ~ .off-canvas-content {
      margin-left: 250px; }
  .position-right.reveal-for-medium {
    -webkit-transform: none;
        -ms-transform: none;
            transform: none;
    z-index: 12;
    transition: none;
    visibility: visible; }
    .position-right.reveal-for-medium .close-button {
      display: none; }
    .off-canvas-content .position-right.reveal-for-medium {
      -webkit-transform: none;
          -ms-transform: none;
              transform: none; }
    .off-canvas-content.has-reveal-right {
      margin-right: 250px; }
    .position-right.reveal-for-medium ~ .off-canvas-content {
      margin-right: 250px; }
  .position-top.reveal-for-medium {
    -webkit-transform: none;
        -ms-transform: none;
            transform: none;
    z-index: 12;
    transition: none;
    visibility: visible; }
    .position-top.reveal-for-medium .close-button {
      display: none; }
    .off-canvas-content .position-top.reveal-for-medium {
      -webkit-transform: none;
          -ms-transform: none;
              transform: none; }
    .off-canvas-content.has-reveal-top {
      margin-top: 250px; }
    .position-top.reveal-for-medium ~ .off-canvas-content {
      margin-top: 250px; }
  .position-bottom.reveal-for-medium {
    -webkit-transform: none;
        -ms-transform: none;
            transform: none;
    z-index: 12;
    transition: none;
    visibility: visible; }
    .position-bottom.reveal-for-medium .close-button {
      display: none; }
    .off-canvas-content .position-bottom.reveal-for-medium {
      -webkit-transform: none;
          -ms-transform: none;
              transform: none; }
    .off-canvas-content.has-reveal-bottom {
      margin-bottom: 250px; }
    .position-bottom.reveal-for-medium ~ .off-canvas-content {
      margin-bottom: 250px; } }

@media print, screen and (min-width: 64em) {
  .position-left.reveal-for-large {
    -webkit-transform: none;
        -ms-transform: none;
            transform: none;
    z-index: 12;
    transition: none;
    visibility: visible; }
    .position-left.reveal-for-large .close-button {
      display: none; }
    .off-canvas-content .position-left.reveal-for-large {
      -webkit-transform: none;
          -ms-transform: none;
              transform: none; }
    .off-canvas-content.has-reveal-left {
      margin-left: 250px; }
    .position-left.reveal-for-large ~ .off-canvas-content {
      margin-left: 250px; }
  .position-right.reveal-for-large {
    -webkit-transform: none;
        -ms-transform: none;
            transform: none;
    z-index: 12;
    transition: none;
    visibility: visible; }
    .position-right.reveal-for-large .close-button {
      display: none; }
    .off-canvas-content .position-right.reveal-for-large {
      -webkit-transform: none;
          -ms-transform: none;
              transform: none; }
    .off-canvas-content.has-reveal-right {
      margin-right: 250px; }
    .position-right.reveal-for-large ~ .off-canvas-content {
      margin-right: 250px; }
  .position-top.reveal-for-large {
    -webkit-transform: none;
        -ms-transform: none;
            transform: none;
    z-index: 12;
    transition: none;
    visibility: visible; }
    .position-top.reveal-for-large .close-button {
      display: none; }
    .off-canvas-content .position-top.reveal-for-large {
      -webkit-transform: none;
          -ms-transform: none;
              transform: none; }
    .off-canvas-content.has-reveal-top {
      margin-top: 250px; }
    .position-top.reveal-for-large ~ .off-canvas-content {
      margin-top: 250px; }
  .position-bottom.reveal-for-large {
    -webkit-transform: none;
        -ms-transform: none;
            transform: none;
    z-index: 12;
    transition: none;
    visibility: visible; }
    .position-bottom.reveal-for-large .close-button {
      display: none; }
    .off-canvas-content .position-bottom.reveal-for-large {
      -webkit-transform: none;
          -ms-transform: none;
              transform: none; }
    .off-canvas-content.has-reveal-bottom {
      margin-bottom: 250px; }
    .position-bottom.reveal-for-large ~ .off-canvas-content {
      margin-bottom: 250px; } }

@media screen and (min-width: 75em) {
  .position-left.reveal-for-xlarge {
    -webkit-transform: none;
        -ms-transform: none;
            transform: none;
    z-index: 12;
    transition: none;
    visibility: visible; }
    .position-left.reveal-for-xlarge .close-button {
      display: none; }
    .off-canvas-content .position-left.reveal-for-xlarge {
      -webkit-transform: none;
          -ms-transform: none;
              transform: none; }
    .off-canvas-content.has-reveal-left {
      margin-left: 250px; }
    .position-left.reveal-for-xlarge ~ .off-canvas-content {
      margin-left: 250px; }
  .position-right.reveal-for-xlarge {
    -webkit-transform: none;
        -ms-transform: none;
            transform: none;
    z-index: 12;
    transition: none;
    visibility: visible; }
    .position-right.reveal-for-xlarge .close-button {
      display: none; }
    .off-canvas-content .position-right.reveal-for-xlarge {
      -webkit-transform: none;
          -ms-transform: none;
              transform: none; }
    .off-canvas-content.has-reveal-right {
      margin-right: 250px; }
    .position-right.reveal-for-xlarge ~ .off-canvas-content {
      margin-right: 250px; }
  .position-top.reveal-for-xlarge {
    -webkit-transform: none;
        -ms-transform: none;
            transform: none;
    z-index: 12;
    transition: none;
    visibility: visible; }
    .position-top.reveal-for-xlarge .close-button {
      display: none; }
    .off-canvas-content .position-top.reveal-for-xlarge {
      -webkit-transform: none;
          -ms-transform: none;
              transform: none; }
    .off-canvas-content.has-reveal-top {
      margin-top: 250px; }
    .position-top.reveal-for-xlarge ~ .off-canvas-content {
      margin-top: 250px; }
  .position-bottom.reveal-for-xlarge {
    -webkit-transform: none;
        -ms-transform: none;
            transform: none;
    z-index: 12;
    transition: none;
    visibility: visible; }
    .position-bottom.reveal-for-xlarge .close-button {
      display: none; }
    .off-canvas-content .position-bottom.reveal-for-xlarge {
      -webkit-transform: none;
          -ms-transform: none;
              transform: none; }
    .off-canvas-content.has-reveal-bottom {
      margin-bottom: 250px; }
    .position-bottom.reveal-for-xlarge ~ .off-canvas-content {
      margin-bottom: 250px; } }

@media screen and (min-width: 90em) {
  .position-left.reveal-for-xxlarge {
    -webkit-transform: none;
        -ms-transform: none;
            transform: none;
    z-index: 12;
    transition: none;
    visibility: visible; }
    .position-left.reveal-for-xxlarge .close-button {
      display: none; }
    .off-canvas-content .position-left.reveal-for-xxlarge {
      -webkit-transform: none;
          -ms-transform: none;
              transform: none; }
    .off-canvas-content.has-reveal-left {
      margin-left: 250px; }
    .position-left.reveal-for-xxlarge ~ .off-canvas-content {
      margin-left: 250px; }
  .position-right.reveal-for-xxlarge {
    -webkit-transform: none;
        -ms-transform: none;
            transform: none;
    z-index: 12;
    transition: none;
    visibility: visible; }
    .position-right.reveal-for-xxlarge .close-button {
      display: none; }
    .off-canvas-content .position-right.reveal-for-xxlarge {
      -webkit-transform: none;
          -ms-transform: none;
              transform: none; }
    .off-canvas-content.has-reveal-right {
      margin-right: 250px; }
    .position-right.reveal-for-xxlarge ~ .off-canvas-content {
      margin-right: 250px; }
  .position-top.reveal-for-xxlarge {
    -webkit-transform: none;
        -ms-transform: none;
            transform: none;
    z-index: 12;
    transition: none;
    visibility: visible; }
    .position-top.reveal-for-xxlarge .close-button {
      display: none; }
    .off-canvas-content .position-top.reveal-for-xxlarge {
      -webkit-transform: none;
          -ms-transform: none;
              transform: none; }
    .off-canvas-content.has-reveal-top {
      margin-top: 250px; }
    .position-top.reveal-for-xxlarge ~ .off-canvas-content {
      margin-top: 250px; }
  .position-bottom.reveal-for-xxlarge {
    -webkit-transform: none;
        -ms-transform: none;
            transform: none;
    z-index: 12;
    transition: none;
    visibility: visible; }
    .position-bottom.reveal-for-xxlarge .close-button {
      display: none; }
    .off-canvas-content .position-bottom.reveal-for-xxlarge {
      -webkit-transform: none;
          -ms-transform: none;
              transform: none; }
    .off-canvas-content.has-reveal-bottom {
      margin-bottom: 250px; }
    .position-bottom.reveal-for-xxlarge ~ .off-canvas-content {
      margin-bottom: 250px; } }

@media print, screen and (min-width: 40em) {
  .off-canvas.in-canvas-for-medium {
    visibility: visible;
    height: auto;
    position: static;
    background: inherit;
    width: inherit;
    overflow: inherit;
    transition: inherit; }
    .off-canvas.in-canvas-for-medium.position-left, .off-canvas.in-canvas-for-medium.position-right, .off-canvas.in-canvas-for-medium.position-top, .off-canvas.in-canvas-for-medium.position-bottom {
      box-shadow: none;
      -webkit-transform: none;
          -ms-transform: none;
              transform: none; }
    .off-canvas.in-canvas-for-medium .close-button {
      display: none; } }

@media print, screen and (min-width: 64em) {
  .off-canvas.in-canvas-for-large {
    visibility: visible;
    height: auto;
    position: static;
    background: inherit;
    width: inherit;
    overflow: inherit;
    transition: inherit; }
    .off-canvas.in-canvas-for-large.position-left, .off-canvas.in-canvas-for-large.position-right, .off-canvas.in-canvas-for-large.position-top, .off-canvas.in-canvas-for-large.position-bottom {
      box-shadow: none;
      -webkit-transform: none;
          -ms-transform: none;
              transform: none; }
    .off-canvas.in-canvas-for-large .close-button {
      display: none; } }

@media screen and (min-width: 75em) {
  .off-canvas.in-canvas-for-xlarge {
    visibility: visible;
    height: auto;
    position: static;
    background: inherit;
    width: inherit;
    overflow: inherit;
    transition: inherit; }
    .off-canvas.in-canvas-for-xlarge.position-left, .off-canvas.in-canvas-for-xlarge.position-right, .off-canvas.in-canvas-for-xlarge.position-top, .off-canvas.in-canvas-for-xlarge.position-bottom {
      box-shadow: none;
      -webkit-transform: none;
          -ms-transform: none;
              transform: none; }
    .off-canvas.in-canvas-for-xlarge .close-button {
      display: none; } }

@media screen and (min-width: 90em) {
  .off-canvas.in-canvas-for-xxlarge {
    visibility: visible;
    height: auto;
    position: static;
    background: inherit;
    width: inherit;
    overflow: inherit;
    transition: inherit; }
    .off-canvas.in-canvas-for-xxlarge.position-left, .off-canvas.in-canvas-for-xxlarge.position-right, .off-canvas.in-canvas-for-xxlarge.position-top, .off-canvas.in-canvas-for-xxlarge.position-bottom {
      box-shadow: none;
      -webkit-transform: none;
          -ms-transform: none;
              transform: none; }
    .off-canvas.in-canvas-for-xxlarge .close-button {
      display: none; } }

.orbit {
  position: relative; }

.orbit-container {
  position: relative;
  height: 0;
  margin: 0;
  list-style: none;
  overflow: hidden; }

.orbit-slide {
  width: 100%; }
  .orbit-slide.no-motionui.is-active {
    top: 0;
    left: 0; }

.orbit-figure {
  margin: 0; }

.orbit-image {
  width: 100%;
  max-width: 100%;
  margin: 0; }

.orbit-caption {
  position: absolute;
  bottom: 0;
  width: 100%;
  margin-bottom: 0;
  padding: 1rem;
  background-color: rgba(0, 0, 0, 0.5);
  color: #ffffff; }

.orbit-previous, .orbit-next {
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
      -ms-transform: translateY(-50%);
          transform: translateY(-50%);
  z-index: 10;
  padding: 1rem;
  color: #ffffff; }
  [data-whatinput='mouse'] .orbit-previous, [data-whatinput='mouse'] .orbit-next {
    outline: 0; }
  .orbit-previous:hover, .orbit-next:hover, .orbit-previous:active, .orbit-next:active, .orbit-previous:focus, .orbit-next:focus {
    background-color: rgba(0, 0, 0, 0.5); }

.orbit-previous {
  left: 0; }

.orbit-next {
  left: auto;
  right: 0; }

.orbit-bullets {
  position: relative;
  margin-top: 0.8rem;
  margin-bottom: 0.8rem;
  text-align: center; }
  [data-whatinput='mouse'] .orbit-bullets {
    outline: 0; }
  .orbit-bullets button {
    width: 1.2rem;
    height: 1.2rem;
    margin: 0.1rem;
    border-radius: 50%;
    background-color: #cacaca; }
    .orbit-bullets button:hover {
      background-color: #8a8a8a; }
    .orbit-bullets button.is-active {
      background-color: #8a8a8a; }

.pagination {
  margin-left: 0;
  margin-bottom: 1rem; }
  .pagination::before, .pagination::after {
    display: table;
    content: ' ';
    -webkit-flex-basis: 0;
        -ms-flex-preferred-size: 0;
            flex-basis: 0;
    -webkit-order: 1;
        -ms-flex-order: 1;
            order: 1; }
  .pagination::after {
    clear: both; }
  .pagination li {
    margin-right: 0.25rem;
    border-radius: 2px;
    font-size: 0.875rem;
    display: none; }
    .pagination li:last-child, .pagination li:first-child {
      display: inline-block; }
    @media print, screen and (min-width: 40em) {
      .pagination li {
        display: inline-block; } }
  .pagination a,
  .pagination button {
    display: block;
    padding: 0.3125rem 0.625rem;
    border-radius: 2px;
    color: #000000; }
    .pagination a:hover,
    .pagination button:hover {
      background: #e6e6e6; }
  .pagination .current {
    padding: 0.3125rem 0.625rem;
    background: #2DC9D7;
    color: #ffffff;
    cursor: default; }
  .pagination .disabled {
    padding: 0.3125rem 0.625rem;
    color: #cacaca;
    cursor: not-allowed; }
    .pagination .disabled:hover {
      background: transparent; }
  .pagination .ellipsis::after {
    padding: 0.3125rem 0.625rem;
    content: '\2026';
    color: #000000; }

.pagination-previous a::before,
.pagination-previous.disabled::before {
  display: inline-block;
  margin-right: 0.5rem;
  content: '\00ab'; }

.pagination-next a::after,
.pagination-next.disabled::after {
  display: inline-block;
  margin-left: 0.5rem;
  content: '\00bb'; }

.progress {
  height: 1rem;
  margin-bottom: 1rem;
  border-radius: 0;
  background-color: #cacaca; }
  .progress.primary .progress-meter {
    background-color: #2DC9D7; }
  .progress.secondary .progress-meter {
    background-color: #FCB536; }
  .progress.success .progress-meter {
    background-color: #3adb76; }
  .progress.warning .progress-meter {
    background-color: #ffae00; }
  .progress.alert .progress-meter {
    background-color: #cc4b37; }

.progress-meter {
  position: relative;
  display: block;
  width: 0%;
  height: 100%;
  background-color: #2DC9D7; }

.progress-meter-text {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
      -ms-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  position: absolute;
  margin: 0;
  font-size: 0.75rem;
  font-weight: bold;
  color: #ffffff;
  white-space: nowrap; }

.slider {
  position: relative;
  height: 0.5rem;
  margin-top: 1.25rem;
  margin-bottom: 2.25rem;
  background-color: #e6e6e6;
  cursor: pointer;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
  -ms-touch-action: none;
      touch-action: none; }

.slider-fill {
  position: absolute;
  top: 0;
  left: 0;
  display: inline-block;
  max-width: 100%;
  height: 0.5rem;
  background-color: #cacaca;
  transition: all 0.2s ease-in-out; }
  .slider-fill.is-dragging {
    transition: all 0s linear; }

.slider-handle {
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
      -ms-transform: translateY(-50%);
          transform: translateY(-50%);
  left: 0;
  z-index: 1;
  display: inline-block;
  width: 1.4rem;
  height: 1.4rem;
  border-radius: 0;
  background-color: #2DC9D7;
  transition: all 0.2s ease-in-out;
  -ms-touch-action: manipulation;
      touch-action: manipulation; }
  [data-whatinput='mouse'] .slider-handle {
    outline: 0; }
  .slider-handle:hover {
    background-color: #23adba; }
  .slider-handle.is-dragging {
    transition: all 0s linear; }

.slider.disabled,
.slider[disabled] {
  opacity: 0.25;
  cursor: not-allowed; }

.slider.vertical {
  display: inline-block;
  width: 0.5rem;
  height: 12.5rem;
  margin: 0 1.25rem;
  -webkit-transform: scale(1, -1);
      -ms-transform: scale(1, -1);
          transform: scale(1, -1); }
  .slider.vertical .slider-fill {
    top: 0;
    width: 0.5rem;
    max-height: 100%; }
  .slider.vertical .slider-handle {
    position: absolute;
    top: 0;
    left: 50%;
    width: 1.4rem;
    height: 1.4rem;
    -webkit-transform: translateX(-50%);
        -ms-transform: translateX(-50%);
            transform: translateX(-50%); }

.sticky-container {
  position: relative; }

.sticky {
  position: relative;
  z-index: 0;
  -webkit-transform: translate3d(0, 0, 0);
          transform: translate3d(0, 0, 0); }

.sticky.is-stuck {
  position: fixed;
  z-index: 5;
  width: 100%; }
  .sticky.is-stuck.is-at-top {
    top: 0; }
  .sticky.is-stuck.is-at-bottom {
    bottom: 0; }

.sticky.is-anchored {
  position: relative;
  right: auto;
  left: auto; }
  .sticky.is-anchored.is-at-bottom {
    bottom: 0; }

body.is-reveal-open {
  overflow: hidden; }

html.is-reveal-open,
html.is-reveal-open body {
  min-height: 100%;
  overflow: hidden;
  position: fixed;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none; }

.reveal-overlay {
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 1005;
  display: none;
  background-color: rgba(0, 0, 0, 0.85);
  overflow-y: scroll; }

.reveal {
  z-index: 1006;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  display: none;
  padding: 2rem;
  border: none;
  border-radius: 3px;
  background-color: #ffffff;
  position: relative;
  top: 100px;
  margin-right: auto;
  margin-left: auto;
  overflow-y: auto; }
  [data-whatinput='mouse'] .reveal {
    outline: 0; }
  @media print, screen and (min-width: 40em) {
    .reveal {
      min-height: 0; } }
  .reveal .column {
    min-width: 0; }
  .reveal > :last-child {
    margin-bottom: 0; }
  @media print, screen and (min-width: 40em) {
    .reveal {
      width: 600px;
      max-width: 90rem; } }
  .reveal.collapse {
    padding: 0; }
  @media print, screen and (min-width: 40em) {
    .reveal.tiny {
      width: 30%;
      max-width: 90rem; } }
  @media print, screen and (min-width: 40em) {
    .reveal.small {
      width: 50%;
      max-width: 90rem; } }
  @media print, screen and (min-width: 40em) {
    .reveal.large {
      width: 90%;
      max-width: 90rem; } }
  .reveal.full {
    top: 0;
    left: 0;
    width: 100%;
    max-width: none;
    height: 100%;
    height: 100vh;
    min-height: 100vh;
    margin-left: 0;
    border: 0;
    border-radius: 0; }
  @media screen and (max-width: 39.9375em) {
    .reveal {
      top: 0;
      left: 0;
      width: 100%;
      max-width: none;
      height: 100%;
      height: 100vh;
      min-height: 100vh;
      margin-left: 0;
      border: 0;
      border-radius: 0; } }
  .reveal.without-overlay {
    position: fixed; }

.switch {
  height: 2rem;
  position: relative;
  margin-bottom: 1rem;
  outline: 0;
  font-size: 0.875rem;
  font-weight: bold;
  color: #ffffff;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none; }

.switch-input {
  position: absolute;
  margin-bottom: 0;
  opacity: 0; }

.switch-paddle {
  position: relative;
  display: block;
  width: 4rem;
  height: 2rem;
  border-radius: 0;
  background: #cacaca;
  transition: all 0.25s ease-out;
  font-weight: inherit;
  color: inherit;
  cursor: pointer; }
  input + .switch-paddle {
    margin: 0; }
  .switch-paddle::after {
    position: absolute;
    top: 0.25rem;
    left: 0.25rem;
    display: block;
    width: 1.5rem;
    height: 1.5rem;
    -webkit-transform: translate3d(0, 0, 0);
            transform: translate3d(0, 0, 0);
    border-radius: 0;
    background: #ffffff;
    transition: all 0.25s ease-out;
    content: ''; }
  input:checked ~ .switch-paddle {
    background: #2DC9D7; }
    input:checked ~ .switch-paddle::after {
      left: 2.25rem; }
  [data-whatinput='mouse'] input:focus ~ .switch-paddle {
    outline: 0; }

.switch-active, .switch-inactive {
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
      -ms-transform: translateY(-50%);
          transform: translateY(-50%); }

.switch-active {
  left: 8%;
  display: none; }
  input:checked + label > .switch-active {
    display: block; }

.switch-inactive {
  right: 15%; }
  input:checked + label > .switch-inactive {
    display: none; }

.switch.tiny {
  height: 1.5rem; }
  .switch.tiny .switch-paddle {
    width: 3rem;
    height: 1.5rem;
    font-size: 0.625rem; }
  .switch.tiny .switch-paddle::after {
    top: 0.25rem;
    left: 0.25rem;
    width: 1rem;
    height: 1rem; }
  .switch.tiny input:checked ~ .switch-paddle::after {
    left: 1.75rem; }

.switch.small {
  height: 1.75rem; }
  .switch.small .switch-paddle {
    width: 3.5rem;
    height: 1.75rem;
    font-size: 0.75rem; }
  .switch.small .switch-paddle::after {
    top: 0.25rem;
    left: 0.25rem;
    width: 1.25rem;
    height: 1.25rem; }
  .switch.small input:checked ~ .switch-paddle::after {
    left: 2rem; }

.switch.large {
  height: 2.5rem; }
  .switch.large .switch-paddle {
    width: 5rem;
    height: 2.5rem;
    font-size: 1rem; }
  .switch.large .switch-paddle::after {
    top: 0.25rem;
    left: 0.25rem;
    width: 2rem;
    height: 2rem; }
  .switch.large input:checked ~ .switch-paddle::after {
    left: 2.75rem; }

table {
  border-collapse: collapse;
  width: 100%;
  margin-bottom: 1rem;
  border-radius: 0; }
  thead,
  tbody,
  tfoot {
    border: 1px solid #f2f2f2;
    background-color: #ffffff; }
  caption {
    padding: 0.5rem 0.625rem 0.625rem;
    font-weight: 700; }
  thead {
    background: #f9f9f9;
    color: #000000; }
  tfoot {
    background: #f2f2f2;
    color: #000000; }
  thead tr,
  tfoot tr {
    background: transparent; }
  thead th,
  thead td,
  tfoot th,
  tfoot td {
    padding: 0.5rem 0.625rem 0.625rem;
    font-weight: 700;
    text-align: left; }
  tbody th,
  tbody td {
    padding: 0.5rem 0.625rem 0.625rem; }
  tbody tr:nth-child(even) {
    border-bottom: 0;
    background-color: #f2f2f2; }
  table.unstriped tbody {
    background-color: #ffffff; }
    table.unstriped tbody tr {
      border-bottom: 0;
      border-bottom: 1px solid #f2f2f2;
      background-color: #ffffff; }

@media screen and (max-width: 63.9375em) {
  table.stack thead {
    display: none; }
  table.stack tfoot {
    display: none; }
  table.stack tr,
  table.stack th,
  table.stack td {
    display: block; }
  table.stack td {
    border-top: 0; } }

table.scroll {
  display: block;
  width: 100%;
  overflow-x: auto; }

table.hover thead tr:hover {
  background-color: #f4f4f4; }

table.hover tfoot tr:hover {
  background-color: #ededed; }

table.hover tbody tr:hover {
  background-color: #fafafa; }

table.hover:not(.unstriped) tr:nth-of-type(even):hover {
  background-color: #ededed; }

.table-scroll {
  overflow-x: auto; }
  .table-scroll table {
    width: auto; }

.tabs {
  margin: 0;
  border: 1px solid #e6e6e6;
  background: #ffffff;
  list-style-type: none; }
  .tabs::before, .tabs::after {
    display: table;
    content: ' ';
    -webkit-flex-basis: 0;
        -ms-flex-preferred-size: 0;
            flex-basis: 0;
    -webkit-order: 1;
        -ms-flex-order: 1;
            order: 1; }
  .tabs::after {
    clear: both; }

.tabs.vertical > li {
  display: block;
  float: none;
  width: auto; }

.tabs.simple > li > a {
  padding: 0; }
  .tabs.simple > li > a:hover {
    background: transparent; }

.tabs.primary {
  background: #2DC9D7; }
  .tabs.primary > li > a {
    color: #000000; }
    .tabs.primary > li > a:hover, .tabs.primary > li > a:focus {
      background: #28c2cf; }

.tabs-title {
  float: left; }
  .tabs-title > a {
    display: block;
    padding: 1.25rem 1.5rem;
    font-size: 0.75rem;
    line-height: 1;
    color: #2DC9D7; }
    .tabs-title > a:hover {
      background: #ffffff;
      color: #24afbc; }
    .tabs-title > a:focus, .tabs-title > a[aria-selected='true'] {
      background: #e6e6e6;
      color: #2DC9D7; }

.tabs-content {
  border: 1px solid #e6e6e6;
  border-top: 0;
  background: #ffffff;
  color: #000000;
  transition: all 0.5s ease; }

.tabs-content.vertical {
  border: 1px solid #e6e6e6;
  border-left: 0; }

.tabs-panel {
  display: none;
  padding: 1rem; }
  .tabs-panel.is-active {
    display: block; }

.thumbnail {
  display: inline-block;
  max-width: 100%;
  margin-bottom: 1rem;
  border: solid 4px #ffffff;
  border-radius: 0;
  box-shadow: 0 0 0 1px rgba(0, 0, 0, 0.2);
  line-height: 0; }

a.thumbnail {
  transition: box-shadow 200ms ease-out; }
  a.thumbnail:hover, a.thumbnail:focus {
    box-shadow: 0 0 6px 1px rgba(45, 201, 215, 0.5); }
  a.thumbnail image {
    box-shadow: none; }

.title-bar {
  padding: 0.5rem;
  background: #2C3840;
  color: #ffffff;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-justify-content: flex-start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center; }
  .title-bar .menu-icon {
    margin-left: 0.25rem;
    margin-right: 0.25rem; }

.title-bar-left,
.title-bar-right {
  -webkit-flex: 1 1 0px;
      -ms-flex: 1 1 0px;
          flex: 1 1 0px; }

.title-bar-right {
  text-align: right; }

.title-bar-title {
  display: inline-block;
  vertical-align: middle;
  font-weight: bold; }

.has-tip {
  position: relative;
  display: inline-block;
  border-bottom: dotted 1px #8a8a8a;
  font-weight: 700;
  cursor: help; }

.tooltip {
  position: absolute;
  top: calc(100% + 0.6495rem);
  z-index: 1200;
  max-width: 10rem;
  padding: 0.75rem;
  border-radius: 0;
  background-color: #000000;
  font-size: 80%;
  color: #ffffff; }
  .tooltip::before {
    position: absolute; }
  .tooltip.bottom::before {
    display: block;
    width: 0;
    height: 0;
    border: inset 0.75rem;
    content: '';
    border-top-width: 0;
    border-bottom-style: solid;
    border-color: transparent transparent #000000;
    bottom: 100%; }
  .tooltip.bottom.align-center::before {
    left: 50%;
    -webkit-transform: translateX(-50%);
        -ms-transform: translateX(-50%);
            transform: translateX(-50%); }
  .tooltip.top::before {
    display: block;
    width: 0;
    height: 0;
    border: inset 0.75rem;
    content: '';
    border-bottom-width: 0;
    border-top-style: solid;
    border-color: #000000 transparent transparent;
    top: 100%;
    bottom: auto; }
  .tooltip.top.align-center::before {
    left: 50%;
    -webkit-transform: translateX(-50%);
        -ms-transform: translateX(-50%);
            transform: translateX(-50%); }
  .tooltip.left::before {
    display: block;
    width: 0;
    height: 0;
    border: inset 0.75rem;
    content: '';
    border-right-width: 0;
    border-left-style: solid;
    border-color: transparent transparent transparent #000000;
    left: 100%; }
  .tooltip.left.align-center::before {
    bottom: auto;
    top: 50%;
    -webkit-transform: translateY(-50%);
        -ms-transform: translateY(-50%);
            transform: translateY(-50%); }
  .tooltip.right::before {
    display: block;
    width: 0;
    height: 0;
    border: inset 0.75rem;
    content: '';
    border-left-width: 0;
    border-right-style: solid;
    border-color: transparent #000000 transparent transparent;
    right: 100%;
    left: auto; }
  .tooltip.right.align-center::before {
    bottom: auto;
    top: 50%;
    -webkit-transform: translateY(-50%);
        -ms-transform: translateY(-50%);
            transform: translateY(-50%); }
  .tooltip.align-top::before {
    bottom: auto;
    top: 10%; }
  .tooltip.align-bottom::before {
    bottom: 10%;
    top: auto; }
  .tooltip.align-left::before {
    left: 10%;
    right: auto; }
  .tooltip.align-right::before {
    left: auto;
    right: 10%; }

.top-bar {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: nowrap;
      -ms-flex-wrap: nowrap;
          flex-wrap: nowrap;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  padding: 0;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap; }
  .top-bar,
  .top-bar ul {
    background-color: #2C3840; }
  .top-bar input {
    max-width: 200px;
    margin-right: 1rem; }
  .top-bar .input-group-field {
    width: 100%;
    margin-right: 0; }
  .top-bar input.button {
    width: auto; }
  .top-bar .top-bar-left,
  .top-bar .top-bar-right {
    -webkit-flex: 0 0 100%;
        -ms-flex: 0 0 100%;
            flex: 0 0 100%;
    max-width: 100%; }
  @media print, screen and (min-width: 40em) {
    .top-bar {
      -webkit-flex-wrap: nowrap;
          -ms-flex-wrap: nowrap;
              flex-wrap: nowrap; }
      .top-bar .top-bar-left {
        -webkit-flex: 1 1 auto;
            -ms-flex: 1 1 auto;
                flex: 1 1 auto;
        margin-right: auto; }
      .top-bar .top-bar-right {
        -webkit-flex: 0 1 auto;
            -ms-flex: 0 1 auto;
                flex: 0 1 auto;
        margin-left: auto; } }
  @media screen and (max-width: 63.9375em) {
    .top-bar.stacked-for-medium {
      -webkit-flex-wrap: wrap;
          -ms-flex-wrap: wrap;
              flex-wrap: wrap; }
      .top-bar.stacked-for-medium .top-bar-left,
      .top-bar.stacked-for-medium .top-bar-right {
        -webkit-flex: 0 0 100%;
            -ms-flex: 0 0 100%;
                flex: 0 0 100%;
        max-width: 100%; } }
  @media screen and (max-width: 74.9375em) {
    .top-bar.stacked-for-large {
      -webkit-flex-wrap: wrap;
          -ms-flex-wrap: wrap;
              flex-wrap: wrap; }
      .top-bar.stacked-for-large .top-bar-left,
      .top-bar.stacked-for-large .top-bar-right {
        -webkit-flex: 0 0 100%;
            -ms-flex: 0 0 100%;
                flex: 0 0 100%;
        max-width: 100%; } }
  @media screen and (max-width: 89.9375em) {
    .top-bar.stacked-for-xlarge {
      -webkit-flex-wrap: wrap;
          -ms-flex-wrap: wrap;
              flex-wrap: wrap; }
      .top-bar.stacked-for-xlarge .top-bar-left,
      .top-bar.stacked-for-xlarge .top-bar-right {
        -webkit-flex: 0 0 100%;
            -ms-flex: 0 0 100%;
                flex: 0 0 100%;
        max-width: 100%; } }
  .top-bar.stacked-for-xxlarge {
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap; }
    .top-bar.stacked-for-xxlarge .top-bar-left,
    .top-bar.stacked-for-xxlarge .top-bar-right {
      -webkit-flex: 0 0 100%;
          -ms-flex: 0 0 100%;
              flex: 0 0 100%;
      max-width: 100%; }

.top-bar-title {
  -webkit-flex: 0 0 auto;
      -ms-flex: 0 0 auto;
          flex: 0 0 auto;
  margin: 0.5rem 1rem 0.5rem 0; }

.top-bar-left,
.top-bar-right {
  -webkit-flex: 0 0 auto;
      -ms-flex: 0 0 auto;
          flex: 0 0 auto; }

.hide {
  display: none !important; }

.invisible {
  visibility: hidden; }

@media screen and (max-width: 39.9375em) {
  .hide-for-small-only {
    display: none !important; } }

@media screen and (max-width: 0em), screen and (min-width: 40em) {
  .show-for-small-only {
    display: none !important; } }

@media print, screen and (min-width: 40em) {
  .hide-for-medium {
    display: none !important; } }

@media screen and (max-width: 39.9375em) {
  .show-for-medium {
    display: none !important; } }

@media screen and (min-width: 40em) and (max-width: 63.9375em) {
  .hide-for-medium-only {
    display: none !important; } }

@media screen and (max-width: 39.9375em), screen and (min-width: 64em) {
  .show-for-medium-only {
    display: none !important; } }

@media print, screen and (min-width: 64em) {
  .hide-for-large {
    display: none !important; } }

@media screen and (max-width: 63.9375em) {
  .show-for-large {
    display: none !important; } }

@media screen and (min-width: 64em) and (max-width: 74.9375em) {
  .hide-for-large-only {
    display: none !important; } }

@media screen and (max-width: 63.9375em), screen and (min-width: 75em) {
  .show-for-large-only {
    display: none !important; } }

@media screen and (min-width: 75em) {
  .hide-for-xlarge {
    display: none !important; } }

@media screen and (max-width: 74.9375em) {
  .show-for-xlarge {
    display: none !important; } }

@media screen and (min-width: 75em) and (max-width: 89.9375em) {
  .hide-for-xlarge-only {
    display: none !important; } }

@media screen and (max-width: 74.9375em), screen and (min-width: 90em) {
  .show-for-xlarge-only {
    display: none !important; } }

@media screen and (min-width: 90em) {
  .hide-for-xxlarge {
    display: none !important; } }

@media screen and (max-width: 89.9375em) {
  .show-for-xxlarge {
    display: none !important; } }

@media screen and (min-width: 90em) {
  .hide-for-xxlarge-only {
    display: none !important; } }

@media screen and (max-width: 89.9375em) {
  .show-for-xxlarge-only {
    display: none !important; } }

.show-for-sr,
.show-on-focus {
  position: absolute !important;
  width: 1px;
  height: 1px;
  padding: 0;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  -webkit-clip-path: inset(50%);
          clip-path: inset(50%);
  border: 0; }

.show-on-focus:active, .show-on-focus:focus {
  position: static !important;
  width: auto;
  height: auto;
  overflow: visible;
  clip: auto;
  white-space: normal;
  -webkit-clip-path: none;
          clip-path: none; }

.show-for-landscape,
.hide-for-portrait {
  display: block !important; }
  @media screen and (orientation: landscape) {
    .show-for-landscape,
    .hide-for-portrait {
      display: block !important; } }
  @media screen and (orientation: portrait) {
    .show-for-landscape,
    .hide-for-portrait {
      display: none !important; } }

.hide-for-landscape,
.show-for-portrait {
  display: none !important; }
  @media screen and (orientation: landscape) {
    .hide-for-landscape,
    .show-for-portrait {
      display: none !important; } }
  @media screen and (orientation: portrait) {
    .hide-for-landscape,
    .show-for-portrait {
      display: block !important; } }

.align-right {
  -webkit-justify-content: flex-end;
      -ms-flex-pack: end;
          justify-content: flex-end; }

.align-center {
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center; }

.align-justify {
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between; }

.align-spaced {
  -webkit-justify-content: space-around;
      -ms-flex-pack: distribute;
          justify-content: space-around; }

.align-right.vertical.menu > li > a {
  -webkit-justify-content: flex-end;
      -ms-flex-pack: end;
          justify-content: flex-end; }

.align-center.vertical.menu > li > a {
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center; }

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

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

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

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

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

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

.align-stretch {
  -webkit-align-items: stretch;
      -ms-flex-align: stretch;
          align-items: stretch; }

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

.align-center-middle {
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-align-content: center;
      -ms-flex-line-pack: center;
          align-content: center; }

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

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

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

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

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

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

@media print, screen and (min-width: 40em) {
  .medium-order-1 {
    -webkit-order: 1;
        -ms-flex-order: 1;
            order: 1; }
  .medium-order-2 {
    -webkit-order: 2;
        -ms-flex-order: 2;
            order: 2; }
  .medium-order-3 {
    -webkit-order: 3;
        -ms-flex-order: 3;
            order: 3; }
  .medium-order-4 {
    -webkit-order: 4;
        -ms-flex-order: 4;
            order: 4; }
  .medium-order-5 {
    -webkit-order: 5;
        -ms-flex-order: 5;
            order: 5; }
  .medium-order-6 {
    -webkit-order: 6;
        -ms-flex-order: 6;
            order: 6; } }

@media print, screen and (min-width: 64em) {
  .large-order-1 {
    -webkit-order: 1;
        -ms-flex-order: 1;
            order: 1; }
  .large-order-2 {
    -webkit-order: 2;
        -ms-flex-order: 2;
            order: 2; }
  .large-order-3 {
    -webkit-order: 3;
        -ms-flex-order: 3;
            order: 3; }
  .large-order-4 {
    -webkit-order: 4;
        -ms-flex-order: 4;
            order: 4; }
  .large-order-5 {
    -webkit-order: 5;
        -ms-flex-order: 5;
            order: 5; }
  .large-order-6 {
    -webkit-order: 6;
        -ms-flex-order: 6;
            order: 6; } }

@media screen and (min-width: 75em) {
  .xlarge-order-1 {
    -webkit-order: 1;
        -ms-flex-order: 1;
            order: 1; }
  .xlarge-order-2 {
    -webkit-order: 2;
        -ms-flex-order: 2;
            order: 2; }
  .xlarge-order-3 {
    -webkit-order: 3;
        -ms-flex-order: 3;
            order: 3; }
  .xlarge-order-4 {
    -webkit-order: 4;
        -ms-flex-order: 4;
            order: 4; }
  .xlarge-order-5 {
    -webkit-order: 5;
        -ms-flex-order: 5;
            order: 5; }
  .xlarge-order-6 {
    -webkit-order: 6;
        -ms-flex-order: 6;
            order: 6; } }

@media screen and (min-width: 90em) {
  .xxlarge-order-1 {
    -webkit-order: 1;
        -ms-flex-order: 1;
            order: 1; }
  .xxlarge-order-2 {
    -webkit-order: 2;
        -ms-flex-order: 2;
            order: 2; }
  .xxlarge-order-3 {
    -webkit-order: 3;
        -ms-flex-order: 3;
            order: 3; }
  .xxlarge-order-4 {
    -webkit-order: 4;
        -ms-flex-order: 4;
            order: 4; }
  .xxlarge-order-5 {
    -webkit-order: 5;
        -ms-flex-order: 5;
            order: 5; }
  .xxlarge-order-6 {
    -webkit-order: 6;
        -ms-flex-order: 6;
            order: 6; } }

.flex-container {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex; }

.flex-child-auto {
  -webkit-flex: 1 1 auto;
      -ms-flex: 1 1 auto;
          flex: 1 1 auto; }

.flex-child-grow {
  -webkit-flex: 1 0 auto;
      -ms-flex: 1 0 auto;
          flex: 1 0 auto; }

.flex-child-shrink {
  -webkit-flex: 0 1 auto;
      -ms-flex: 0 1 auto;
          flex: 0 1 auto; }

.flex-dir-row {
  -webkit-flex-direction: row;
      -ms-flex-direction: row;
          flex-direction: row; }

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

.flex-dir-column {
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column; }

.flex-dir-column-reverse {
  -webkit-flex-direction: column-reverse;
      -ms-flex-direction: column-reverse;
          flex-direction: column-reverse; }

@media print, screen and (min-width: 40em) {
  .medium-flex-container {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex; }
  .medium-flex-child-auto {
    -webkit-flex: 1 1 auto;
        -ms-flex: 1 1 auto;
            flex: 1 1 auto; }
  .medium-flex-child-grow {
    -webkit-flex: 1 0 auto;
        -ms-flex: 1 0 auto;
            flex: 1 0 auto; }
  .medium-flex-child-shrink {
    -webkit-flex: 0 1 auto;
        -ms-flex: 0 1 auto;
            flex: 0 1 auto; }
  .medium-flex-dir-row {
    -webkit-flex-direction: row;
        -ms-flex-direction: row;
            flex-direction: row; }
  .medium-flex-dir-row-reverse {
    -webkit-flex-direction: row-reverse;
        -ms-flex-direction: row-reverse;
            flex-direction: row-reverse; }
  .medium-flex-dir-column {
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column; }
  .medium-flex-dir-column-reverse {
    -webkit-flex-direction: column-reverse;
        -ms-flex-direction: column-reverse;
            flex-direction: column-reverse; } }

@media print, screen and (min-width: 64em) {
  .large-flex-container {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex; }
  .large-flex-child-auto {
    -webkit-flex: 1 1 auto;
        -ms-flex: 1 1 auto;
            flex: 1 1 auto; }
  .large-flex-child-grow {
    -webkit-flex: 1 0 auto;
        -ms-flex: 1 0 auto;
            flex: 1 0 auto; }
  .large-flex-child-shrink {
    -webkit-flex: 0 1 auto;
        -ms-flex: 0 1 auto;
            flex: 0 1 auto; }
  .large-flex-dir-row {
    -webkit-flex-direction: row;
        -ms-flex-direction: row;
            flex-direction: row; }
  .large-flex-dir-row-reverse {
    -webkit-flex-direction: row-reverse;
        -ms-flex-direction: row-reverse;
            flex-direction: row-reverse; }
  .large-flex-dir-column {
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column; }
  .large-flex-dir-column-reverse {
    -webkit-flex-direction: column-reverse;
        -ms-flex-direction: column-reverse;
            flex-direction: column-reverse; } }

@media screen and (min-width: 75em) {
  .xlarge-flex-container {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex; }
  .xlarge-flex-child-auto {
    -webkit-flex: 1 1 auto;
        -ms-flex: 1 1 auto;
            flex: 1 1 auto; }
  .xlarge-flex-child-grow {
    -webkit-flex: 1 0 auto;
        -ms-flex: 1 0 auto;
            flex: 1 0 auto; }
  .xlarge-flex-child-shrink {
    -webkit-flex: 0 1 auto;
        -ms-flex: 0 1 auto;
            flex: 0 1 auto; }
  .xlarge-flex-dir-row {
    -webkit-flex-direction: row;
        -ms-flex-direction: row;
            flex-direction: row; }
  .xlarge-flex-dir-row-reverse {
    -webkit-flex-direction: row-reverse;
        -ms-flex-direction: row-reverse;
            flex-direction: row-reverse; }
  .xlarge-flex-dir-column {
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column; }
  .xlarge-flex-dir-column-reverse {
    -webkit-flex-direction: column-reverse;
        -ms-flex-direction: column-reverse;
            flex-direction: column-reverse; } }

@media screen and (min-width: 90em) {
  .xxlarge-flex-container {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex; }
  .xxlarge-flex-child-auto {
    -webkit-flex: 1 1 auto;
        -ms-flex: 1 1 auto;
            flex: 1 1 auto; }
  .xxlarge-flex-child-grow {
    -webkit-flex: 1 0 auto;
        -ms-flex: 1 0 auto;
            flex: 1 0 auto; }
  .xxlarge-flex-child-shrink {
    -webkit-flex: 0 1 auto;
        -ms-flex: 0 1 auto;
            flex: 0 1 auto; }
  .xxlarge-flex-dir-row {
    -webkit-flex-direction: row;
        -ms-flex-direction: row;
            flex-direction: row; }
  .xxlarge-flex-dir-row-reverse {
    -webkit-flex-direction: row-reverse;
        -ms-flex-direction: row-reverse;
            flex-direction: row-reverse; }
  .xxlarge-flex-dir-column {
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column; }
  .xxlarge-flex-dir-column-reverse {
    -webkit-flex-direction: column-reverse;
        -ms-flex-direction: column-reverse;
            flex-direction: column-reverse; } }

.slide-in-down.mui-enter {
  transition-duration: 500ms;
  transition-timing-function: linear;
  -webkit-transform: translateY(-100%);
      -ms-transform: translateY(-100%);
          transform: translateY(-100%);
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden; }

.slide-in-down.mui-enter.mui-enter-active {
  -webkit-transform: translateY(0);
      -ms-transform: translateY(0);
          transform: translateY(0); }

.slide-in-left.mui-enter {
  transition-duration: 500ms;
  transition-timing-function: linear;
  -webkit-transform: translateX(-100%);
      -ms-transform: translateX(-100%);
          transform: translateX(-100%);
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden; }

.slide-in-left.mui-enter.mui-enter-active {
  -webkit-transform: translateX(0);
      -ms-transform: translateX(0);
          transform: translateX(0); }

.slide-in-up.mui-enter {
  transition-duration: 500ms;
  transition-timing-function: linear;
  -webkit-transform: translateY(100%);
      -ms-transform: translateY(100%);
          transform: translateY(100%);
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden; }

.slide-in-up.mui-enter.mui-enter-active {
  -webkit-transform: translateY(0);
      -ms-transform: translateY(0);
          transform: translateY(0); }

.slide-in-right.mui-enter {
  transition-duration: 500ms;
  transition-timing-function: linear;
  -webkit-transform: translateX(100%);
      -ms-transform: translateX(100%);
          transform: translateX(100%);
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden; }

.slide-in-right.mui-enter.mui-enter-active {
  -webkit-transform: translateX(0);
      -ms-transform: translateX(0);
          transform: translateX(0); }

.slide-out-down.mui-leave {
  transition-duration: 500ms;
  transition-timing-function: linear;
  -webkit-transform: translateY(0);
      -ms-transform: translateY(0);
          transform: translateY(0);
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden; }

.slide-out-down.mui-leave.mui-leave-active {
  -webkit-transform: translateY(100%);
      -ms-transform: translateY(100%);
          transform: translateY(100%); }

.slide-out-right.mui-leave {
  transition-duration: 500ms;
  transition-timing-function: linear;
  -webkit-transform: translateX(0);
      -ms-transform: translateX(0);
          transform: translateX(0);
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden; }

.slide-out-right.mui-leave.mui-leave-active {
  -webkit-transform: translateX(100%);
      -ms-transform: translateX(100%);
          transform: translateX(100%); }

.slide-out-up.mui-leave {
  transition-duration: 500ms;
  transition-timing-function: linear;
  -webkit-transform: translateY(0);
      -ms-transform: translateY(0);
          transform: translateY(0);
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden; }

.slide-out-up.mui-leave.mui-leave-active {
  -webkit-transform: translateY(-100%);
      -ms-transform: translateY(-100%);
          transform: translateY(-100%); }

.slide-out-left.mui-leave {
  transition-duration: 500ms;
  transition-timing-function: linear;
  -webkit-transform: translateX(0);
      -ms-transform: translateX(0);
          transform: translateX(0);
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden; }

.slide-out-left.mui-leave.mui-leave-active {
  -webkit-transform: translateX(-100%);
      -ms-transform: translateX(-100%);
          transform: translateX(-100%); }

.fade-in.mui-enter {
  transition-duration: 500ms;
  transition-timing-function: linear;
  opacity: 0;
  transition-property: opacity; }

.fade-in.mui-enter.mui-enter-active {
  opacity: 1; }

.fade-out.mui-leave {
  transition-duration: 500ms;
  transition-timing-function: linear;
  opacity: 1;
  transition-property: opacity; }

.fade-out.mui-leave.mui-leave-active {
  opacity: 0; }

.hinge-in-from-top.mui-enter {
  transition-duration: 500ms;
  transition-timing-function: linear;
  -webkit-transform: perspective(2000px) rotateX(-90deg);
          transform: perspective(2000px) rotateX(-90deg);
  -webkit-transform-origin: top;
      -ms-transform-origin: top;
          transform-origin: top;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  opacity: 0; }

.hinge-in-from-top.mui-enter.mui-enter-active {
  -webkit-transform: perspective(2000px) rotate(0deg);
          transform: perspective(2000px) rotate(0deg);
  opacity: 1; }

.hinge-in-from-right.mui-enter {
  transition-duration: 500ms;
  transition-timing-function: linear;
  -webkit-transform: perspective(2000px) rotateY(-90deg);
          transform: perspective(2000px) rotateY(-90deg);
  -webkit-transform-origin: right;
      -ms-transform-origin: right;
          transform-origin: right;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  opacity: 0; }

.hinge-in-from-right.mui-enter.mui-enter-active {
  -webkit-transform: perspective(2000px) rotate(0deg);
          transform: perspective(2000px) rotate(0deg);
  opacity: 1; }

.hinge-in-from-bottom.mui-enter {
  transition-duration: 500ms;
  transition-timing-function: linear;
  -webkit-transform: perspective(2000px) rotateX(90deg);
          transform: perspective(2000px) rotateX(90deg);
  -webkit-transform-origin: bottom;
      -ms-transform-origin: bottom;
          transform-origin: bottom;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  opacity: 0; }

.hinge-in-from-bottom.mui-enter.mui-enter-active {
  -webkit-transform: perspective(2000px) rotate(0deg);
          transform: perspective(2000px) rotate(0deg);
  opacity: 1; }

.hinge-in-from-left.mui-enter {
  transition-duration: 500ms;
  transition-timing-function: linear;
  -webkit-transform: perspective(2000px) rotateY(90deg);
          transform: perspective(2000px) rotateY(90deg);
  -webkit-transform-origin: left;
      -ms-transform-origin: left;
          transform-origin: left;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  opacity: 0; }

.hinge-in-from-left.mui-enter.mui-enter-active {
  -webkit-transform: perspective(2000px) rotate(0deg);
          transform: perspective(2000px) rotate(0deg);
  opacity: 1; }

.hinge-in-from-middle-x.mui-enter {
  transition-duration: 500ms;
  transition-timing-function: linear;
  -webkit-transform: perspective(2000px) rotateX(-90deg);
          transform: perspective(2000px) rotateX(-90deg);
  -webkit-transform-origin: center;
      -ms-transform-origin: center;
          transform-origin: center;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  opacity: 0; }

.hinge-in-from-middle-x.mui-enter.mui-enter-active {
  -webkit-transform: perspective(2000px) rotate(0deg);
          transform: perspective(2000px) rotate(0deg);
  opacity: 1; }

.hinge-in-from-middle-y.mui-enter {
  transition-duration: 500ms;
  transition-timing-function: linear;
  -webkit-transform: perspective(2000px) rotateY(-90deg);
          transform: perspective(2000px) rotateY(-90deg);
  -webkit-transform-origin: center;
      -ms-transform-origin: center;
          transform-origin: center;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  opacity: 0; }

.hinge-in-from-middle-y.mui-enter.mui-enter-active {
  -webkit-transform: perspective(2000px) rotate(0deg);
          transform: perspective(2000px) rotate(0deg);
  opacity: 1; }

.hinge-out-from-top.mui-leave {
  transition-duration: 500ms;
  transition-timing-function: linear;
  -webkit-transform: perspective(2000px) rotate(0deg);
          transform: perspective(2000px) rotate(0deg);
  -webkit-transform-origin: top;
      -ms-transform-origin: top;
          transform-origin: top;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  opacity: 1; }

.hinge-out-from-top.mui-leave.mui-leave-active {
  -webkit-transform: perspective(2000px) rotateX(-90deg);
          transform: perspective(2000px) rotateX(-90deg);
  opacity: 0; }

.hinge-out-from-right.mui-leave {
  transition-duration: 500ms;
  transition-timing-function: linear;
  -webkit-transform: perspective(2000px) rotate(0deg);
          transform: perspective(2000px) rotate(0deg);
  -webkit-transform-origin: right;
      -ms-transform-origin: right;
          transform-origin: right;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  opacity: 1; }

.hinge-out-from-right.mui-leave.mui-leave-active {
  -webkit-transform: perspective(2000px) rotateY(-90deg);
          transform: perspective(2000px) rotateY(-90deg);
  opacity: 0; }

.hinge-out-from-bottom.mui-leave {
  transition-duration: 500ms;
  transition-timing-function: linear;
  -webkit-transform: perspective(2000px) rotate(0deg);
          transform: perspective(2000px) rotate(0deg);
  -webkit-transform-origin: bottom;
      -ms-transform-origin: bottom;
          transform-origin: bottom;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  opacity: 1; }

.hinge-out-from-bottom.mui-leave.mui-leave-active {
  -webkit-transform: perspective(2000px) rotateX(90deg);
          transform: perspective(2000px) rotateX(90deg);
  opacity: 0; }

.hinge-out-from-left.mui-leave {
  transition-duration: 500ms;
  transition-timing-function: linear;
  -webkit-transform: perspective(2000px) rotate(0deg);
          transform: perspective(2000px) rotate(0deg);
  -webkit-transform-origin: left;
      -ms-transform-origin: left;
          transform-origin: left;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  opacity: 1; }

.hinge-out-from-left.mui-leave.mui-leave-active {
  -webkit-transform: perspective(2000px) rotateY(90deg);
          transform: perspective(2000px) rotateY(90deg);
  opacity: 0; }

.hinge-out-from-middle-x.mui-leave {
  transition-duration: 500ms;
  transition-timing-function: linear;
  -webkit-transform: perspective(2000px) rotate(0deg);
          transform: perspective(2000px) rotate(0deg);
  -webkit-transform-origin: center;
      -ms-transform-origin: center;
          transform-origin: center;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  opacity: 1; }

.hinge-out-from-middle-x.mui-leave.mui-leave-active {
  -webkit-transform: perspective(2000px) rotateX(-90deg);
          transform: perspective(2000px) rotateX(-90deg);
  opacity: 0; }

.hinge-out-from-middle-y.mui-leave {
  transition-duration: 500ms;
  transition-timing-function: linear;
  -webkit-transform: perspective(2000px) rotate(0deg);
          transform: perspective(2000px) rotate(0deg);
  -webkit-transform-origin: center;
      -ms-transform-origin: center;
          transform-origin: center;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  opacity: 1; }

.hinge-out-from-middle-y.mui-leave.mui-leave-active {
  -webkit-transform: perspective(2000px) rotateY(-90deg);
          transform: perspective(2000px) rotateY(-90deg);
  opacity: 0; }

.scale-in-up.mui-enter {
  transition-duration: 500ms;
  transition-timing-function: linear;
  -webkit-transform: scale(0.5);
      -ms-transform: scale(0.5);
          transform: scale(0.5);
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  opacity: 0; }

.scale-in-up.mui-enter.mui-enter-active {
  -webkit-transform: scale(1);
      -ms-transform: scale(1);
          transform: scale(1);
  opacity: 1; }

.scale-in-down.mui-enter {
  transition-duration: 500ms;
  transition-timing-function: linear;
  -webkit-transform: scale(1.5);
      -ms-transform: scale(1.5);
          transform: scale(1.5);
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  opacity: 0; }

.scale-in-down.mui-enter.mui-enter-active {
  -webkit-transform: scale(1);
      -ms-transform: scale(1);
          transform: scale(1);
  opacity: 1; }

.scale-out-up.mui-leave {
  transition-duration: 500ms;
  transition-timing-function: linear;
  -webkit-transform: scale(1);
      -ms-transform: scale(1);
          transform: scale(1);
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  opacity: 1; }

.scale-out-up.mui-leave.mui-leave-active {
  -webkit-transform: scale(1.5);
      -ms-transform: scale(1.5);
          transform: scale(1.5);
  opacity: 0; }

.scale-out-down.mui-leave {
  transition-duration: 500ms;
  transition-timing-function: linear;
  -webkit-transform: scale(1);
      -ms-transform: scale(1);
          transform: scale(1);
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  opacity: 1; }

.scale-out-down.mui-leave.mui-leave-active {
  -webkit-transform: scale(0.5);
      -ms-transform: scale(0.5);
          transform: scale(0.5);
  opacity: 0; }

.spin-in.mui-enter {
  transition-duration: 500ms;
  transition-timing-function: linear;
  -webkit-transform: rotate(-0.75turn);
      -ms-transform: rotate(-0.75turn);
          transform: rotate(-0.75turn);
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  opacity: 0; }

.spin-in.mui-enter.mui-enter-active {
  -webkit-transform: rotate(0);
      -ms-transform: rotate(0);
          transform: rotate(0);
  opacity: 1; }

.spin-out.mui-leave {
  transition-duration: 500ms;
  transition-timing-function: linear;
  -webkit-transform: rotate(0);
      -ms-transform: rotate(0);
          transform: rotate(0);
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  opacity: 1; }

.spin-out.mui-leave.mui-leave-active {
  -webkit-transform: rotate(0.75turn);
      -ms-transform: rotate(0.75turn);
          transform: rotate(0.75turn);
  opacity: 0; }

.spin-in-ccw.mui-enter {
  transition-duration: 500ms;
  transition-timing-function: linear;
  -webkit-transform: rotate(0.75turn);
      -ms-transform: rotate(0.75turn);
          transform: rotate(0.75turn);
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  opacity: 0; }

.spin-in-ccw.mui-enter.mui-enter-active {
  -webkit-transform: rotate(0);
      -ms-transform: rotate(0);
          transform: rotate(0);
  opacity: 1; }

.spin-out-ccw.mui-leave {
  transition-duration: 500ms;
  transition-timing-function: linear;
  -webkit-transform: rotate(0);
      -ms-transform: rotate(0);
          transform: rotate(0);
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  opacity: 1; }

.spin-out-ccw.mui-leave.mui-leave-active {
  -webkit-transform: rotate(-0.75turn);
      -ms-transform: rotate(-0.75turn);
          transform: rotate(-0.75turn);
  opacity: 0; }

.slow {
  transition-duration: 750ms !important; }

.fast {
  transition-duration: 250ms !important; }

.linear {
  transition-timing-function: linear !important; }

.ease {
  transition-timing-function: ease !important; }

.ease-in {
  transition-timing-function: ease-in !important; }

.ease-out {
  transition-timing-function: ease-out !important; }

.ease-in-out {
  transition-timing-function: ease-in-out !important; }

.bounce-in {
  transition-timing-function: cubic-bezier(0.485, 0.155, 0.24, 1.245) !important; }

.bounce-out {
  transition-timing-function: cubic-bezier(0.485, 0.155, 0.515, 0.845) !important; }

.bounce-in-out {
  transition-timing-function: cubic-bezier(0.76, -0.245, 0.24, 1.245) !important; }

.short-delay {
  transition-delay: 300ms !important; }

.long-delay {
  transition-delay: 700ms !important; }

.shake {
  -webkit-animation-name: shake-7;
          animation-name: shake-7; }

@-webkit-keyframes shake-7 {
  0%, 10%, 20%, 30%, 40%, 50%, 60%, 70%, 80%, 90% {
    -webkit-transform: translateX(7%);
            transform: translateX(7%); }
  5%, 15%, 25%, 35%, 45%, 55%, 65%, 75%, 85%, 95% {
    -webkit-transform: translateX(-7%);
            transform: translateX(-7%); } }

@keyframes shake-7 {
  0%, 10%, 20%, 30%, 40%, 50%, 60%, 70%, 80%, 90% {
    -webkit-transform: translateX(7%);
            transform: translateX(7%); }
  5%, 15%, 25%, 35%, 45%, 55%, 65%, 75%, 85%, 95% {
    -webkit-transform: translateX(-7%);
            transform: translateX(-7%); } }

.spin-cw {
  -webkit-animation-name: spin-cw-1turn;
          animation-name: spin-cw-1turn; }

@-webkit-keyframes spin-cw-1turn {
  0% {
    -webkit-transform: rotate(-1turn);
            transform: rotate(-1turn); }
  100% {
    -webkit-transform: rotate(0);
            transform: rotate(0); } }

@keyframes spin-cw-1turn {
  0% {
    -webkit-transform: rotate(-1turn);
            transform: rotate(-1turn); }
  100% {
    -webkit-transform: rotate(0);
            transform: rotate(0); } }

.spin-ccw {
  -webkit-animation-name: spin-cw-1turn;
          animation-name: spin-cw-1turn; }

@keyframes spin-cw-1turn {
  0% {
    -webkit-transform: rotate(0);
            transform: rotate(0); }
  100% {
    -webkit-transform: rotate(1turn);
            transform: rotate(1turn); } }

.wiggle {
  -webkit-animation-name: wiggle-7deg;
          animation-name: wiggle-7deg; }

@-webkit-keyframes wiggle-7deg {
  40%, 50%, 60% {
    -webkit-transform: rotate(7deg);
            transform: rotate(7deg); }
  35%, 45%, 55%, 65% {
    -webkit-transform: rotate(-7deg);
            transform: rotate(-7deg); }
  0%, 30%, 70%, 100% {
    -webkit-transform: rotate(0);
            transform: rotate(0); } }

@keyframes wiggle-7deg {
  40%, 50%, 60% {
    -webkit-transform: rotate(7deg);
            transform: rotate(7deg); }
  35%, 45%, 55%, 65% {
    -webkit-transform: rotate(-7deg);
            transform: rotate(-7deg); }
  0%, 30%, 70%, 100% {
    -webkit-transform: rotate(0);
            transform: rotate(0); } }

.shake,
.spin-cw,
.spin-ccw,
.wiggle {
  -webkit-animation-duration: 500ms;
          animation-duration: 500ms; }

.infinite {
  -webkit-animation-iteration-count: infinite;
          animation-iteration-count: infinite; }

.slow {
  -webkit-animation-duration: 750ms !important;
          animation-duration: 750ms !important; }

.fast {
  -webkit-animation-duration: 250ms !important;
          animation-duration: 250ms !important; }

.linear {
  -webkit-animation-timing-function: linear !important;
          animation-timing-function: linear !important; }

.ease {
  -webkit-animation-timing-function: ease !important;
          animation-timing-function: ease !important; }

.ease-in {
  -webkit-animation-timing-function: ease-in !important;
          animation-timing-function: ease-in !important; }

.ease-out {
  -webkit-animation-timing-function: ease-out !important;
          animation-timing-function: ease-out !important; }

.ease-in-out {
  -webkit-animation-timing-function: ease-in-out !important;
          animation-timing-function: ease-in-out !important; }

.bounce-in {
  -webkit-animation-timing-function: cubic-bezier(0.485, 0.155, 0.24, 1.245) !important;
          animation-timing-function: cubic-bezier(0.485, 0.155, 0.24, 1.245) !important; }

.bounce-out {
  -webkit-animation-timing-function: cubic-bezier(0.485, 0.155, 0.515, 0.845) !important;
          animation-timing-function: cubic-bezier(0.485, 0.155, 0.515, 0.845) !important; }

.bounce-in-out {
  -webkit-animation-timing-function: cubic-bezier(0.76, -0.245, 0.24, 1.245) !important;
          animation-timing-function: cubic-bezier(0.76, -0.245, 0.24, 1.245) !important; }

.short-delay {
  -webkit-animation-delay: 300ms !important;
          animation-delay: 300ms !important; }

.long-delay {
  -webkit-animation-delay: 700ms !important;
          animation-delay: 700ms !important; }

/*
  My custom styles:
  Add your scss files below to structure your project styles
*/
.screen-reader-text {
  clip: rect(1px, 1px, 1px, 1px);
  position: absolute !important;
  height: 1px;
  width: 1px;
  overflow: hidden; }

.screen-reader-text:focus {
  background-color: #f1f1f1;
  border-radius: 3px;
  box-shadow: 0 0 2px 2px rgba(0, 0, 0, 0.6);
  clip: auto !important;
  color: #21759b;
  display: block;
  font-size: 14px;
  font-size: 0.875rem;
  font-weight: bold;
  height: auto;
  left: 5px;
  line-height: normal;
  padding: 15px 23px 14px;
  text-decoration: none;
  top: 5px;
  width: auto;
  z-index: 100000; }

#wpadminbar {
  position: fixed !important; }

body.admin-bar.f-topbar-fixed .sticky.fixed {
  margin-top: 2rem; }

body.admin-bar.offcanvas .off-canvas.is-open {
  top: 2.875rem; }
  @media screen and (min-width: 48.9375em) {
    body.admin-bar.offcanvas .off-canvas.is-open {
      top: 2rem; } }

.wp-caption > figcaption {
  max-width: 100%;
  font-size: 0.8rem;
  color: #999;
  padding: 0.25rem 0; }

p.wp-caption-text {
  font-size: 90%;
  color: #666;
  padding: 0.625rem 0; }

.alignleft {
  float: left;
  padding-right: 1rem;
  margin: 0; }

.alignright {
  float: right;
  padding-left: 1rem;
  margin: 0; }

.aligncenter {
  display: block;
  margin-left: auto;
  margin-right: auto; }

.section-padding-lr {
  padding-left: 1.5rem;
  padding-right: 1.5rem; }
  @media print, screen and (min-width: 40em) {
    .section-padding-lr {
      padding-left: 4.375rem;
      padding-right: 4.375rem; } }
  @media print, screen and (min-width: 64em) {
    .section-padding-lr {
      padding-left: 6.25rem;
      padding-right: 6.25rem; } }
  @media screen and (min-width: 75em) {
    .section-padding-lr {
      padding-left: 7.5rem;
      padding-right: 7.5rem; } }
  @media screen and (min-width: 90em) {
    .section-padding-lr {
      padding-left: 7.5rem;
      padding-right: 7.5rem; } }

.section-padding-l {
  padding-left: 1.5rem; }
  @media print, screen and (min-width: 40em) {
    .section-padding-l {
      padding-left: 4.375rem; } }
  @media print, screen and (min-width: 64em) {
    .section-padding-l {
      padding-left: 6.25rem; } }
  @media screen and (min-width: 75em) {
    .section-padding-l {
      padding-left: 7.5rem; } }
  @media screen and (min-width: 90em) {
    .section-padding-l {
      padding-left: 7.5rem; } }

.section-padding-r {
  padding-right: 1.5rem; }
  @media print, screen and (min-width: 40em) {
    .section-padding-r {
      padding-right: 4.375rem; } }
  @media print, screen and (min-width: 64em) {
    .section-padding-r {
      padding-right: 6.25rem; } }
  @media screen and (min-width: 75em) {
    .section-padding-r {
      padding-right: 7.5rem; } }
  @media screen and (min-width: 90em) {
    .section-padding-r {
      padding-right: 7.5rem; } }

.section-padding-tb {
  padding-top: 4.5rem;
  padding-bottom: 4.5rem; }
  @media print, screen and (min-width: 40em) {
    .section-padding-tb {
      padding-top: 8.75rem;
      padding-bottom: 8.75rem; } }
  @media print, screen and (min-width: 64em) {
    .section-padding-tb {
      padding-top: 7.5rem;
      padding-bottom: 7.5rem; } }
  @media screen and (min-width: 75em) {
    .section-padding-tb {
      padding-top: 9rem;
      padding-bottom: 9rem; } }
  @media screen and (min-width: 90em) {
    .section-padding-tb {
      padding-top: 9rem;
      padding-bottom: 9rem; } }

.section-padding-t {
  padding-top: 4.5rem; }
  @media print, screen and (min-width: 40em) {
    .section-padding-t {
      padding-top: 8.75rem; } }
  @media print, screen and (min-width: 64em) {
    .section-padding-t {
      padding-top: 7.5rem; } }
  @media screen and (min-width: 75em) {
    .section-padding-t {
      padding-top: 9rem; } }
  @media screen and (min-width: 90em) {
    .section-padding-t {
      padding-top: 9rem; } }

.section-padding-b {
  padding-bottom: 4.5rem; }
  @media print, screen and (min-width: 40em) {
    .section-padding-b {
      padding-bottom: 8.75rem; } }
  @media print, screen and (min-width: 64em) {
    .section-padding-b {
      padding-bottom: 7.5rem; } }
  @media screen and (min-width: 75em) {
    .section-padding-b {
      padding-bottom: 9rem; } }
  @media screen and (min-width: 90em) {
    .section-padding-b {
      padding-bottom: 9rem; } }

@media print, screen and (min-width: 64em) {
  .mobile-menu,
  .title-bar {
    display: none !important; } }

@media screen and (max-width: 63.9375em) {
  .desktop-menu,
  .site-navigation {
    display: none !important; } }

a.silent {
  width: auto;
  transition: all 0.5s ease; }

/**
Entire NAV container (mobile & desktop)
 */
#site-header {
  transition: height 0.3s ease-in-out, width 0.3s ease-in-out;
  background-color: #ffffff; }
  #site-header.sticky {
    position: fixed;
    width: 100%;
    top: 0;
    left: 0;
    right: 0;
    z-index: 100;
    box-shadow: 0px 1px 10px rgba(0, 0, 0, 0.15); }
    #site-header.sticky .top-bar-r-premenu {
      display: none; }
    @media print, screen and (min-width: 64em) {
      #site-header.sticky a.silent {
        padding-top: 0.5rem;
        padding-bottom: 0.5rem; } }
    #site-header.sticky .site-logo-cont {
      padding: 0;
      margin: 0; }
    #site-header.sticky .site-logo {
      max-height: 2.5rem; }

.site-logo {
  width: auto;
  height: 1.5625rem;
  transition: all 0.5s ease; }
  @media print, screen and (min-width: 64em) {
    .site-logo {
      max-height: none;
      height: 2.25rem;
      width: auto;
      max-width: none; } }

.top-bar-title {
  margin-top: 0;
  margin-bottom: 0; }

.site-desktop-title a {
  font-weight: 600;
  font-size: 1rem;
  height: auto; }
  .site-desktop-title a .site-logo-cont {
    padding: 1rem;
    position: relative;
    display: inline-block;
    width: auto; }
    .site-desktop-title a .site-logo-cont > img {
      position: relative;
      z-index: 1; }

/**
*********************
START MOBILE
*****************
 */
.mobile-menu {
  display: none; }

.title-bar {
  transition: all 0.5s ease;
  background-color: #ffffff;
  width: 100%;
  padding: 0; }
  .title-bar .title-bar-left {
    padding-top: 0.5rem;
    padding-bottom: 0.5rem;
    padding-left: 1.5rem;
    -webkit-flex: 1 1 0px;
        -ms-flex: 1 1 0px;
            flex: 1 1 0px; }
    @media print, screen and (min-width: 40em) {
      .title-bar .title-bar-left {
        padding-left: 4.375rem; } }
    @media print, screen and (min-width: 64em) {
      .title-bar .title-bar-left {
        padding-left: 6.25rem; } }
    @media screen and (min-width: 75em) {
      .title-bar .title-bar-left {
        padding-left: 7.5rem; } }
    @media screen and (min-width: 90em) {
      .title-bar .title-bar-left {
        padding-left: 7.5rem; } }
  .title-bar .title-bar-right {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-justify-content: flex-end;
        -ms-flex-pack: end;
            justify-content: flex-end;
    padding-right: 1.5rem;
    height: 4.0625rem;
    -webkit-flex: 0 1 0px;
        -ms-flex: 0 1 0px;
            flex: 0 1 0px; }
    @media print, screen and (min-width: 40em) {
      .title-bar .title-bar-right {
        padding-right: 4.375rem; } }
    @media print, screen and (min-width: 64em) {
      .title-bar .title-bar-right {
        padding-right: 6.25rem; } }
    @media screen and (min-width: 75em) {
      .title-bar .title-bar-right {
        padding-right: 7.5rem; } }
    @media screen and (min-width: 90em) {
      .title-bar .title-bar-right {
        padding-right: 7.5rem; } }
    .title-bar .title-bar-right .searchform-cont form .input-group button.searchsubmit:hover, .title-bar .title-bar-right .searchform-cont form .input-group button.searchsubmit:focus, .title-bar .title-bar-right .searchform-cont form .input-group button.searchsubmit:active {
      color: #2DC9D7; }

.custom-menu-icon {
  font-size: 1.5rem;
  cursor: pointer;
  color: #2DC9D7;
  padding: 0.5rem;
  border-radius: 4px;
  background-color: transparent;
  margin-right: -0.5rem; }
  .custom-menu-icon:hover, .custom-menu-icon:active, .custom-menu-icon:focus {
    background-color: rgba(0, 0, 0, 0.05); }
    .custom-menu-icon:hover span::before, .custom-menu-icon:active span::before, .custom-menu-icon:focus span::before {
      color: #000000; }

.title-bar-title a {
  font-size: 1rem;
  color: #000000; }

.off-canvas > ul.menu {
  height: 100vh;
  padding: 1rem; }
  .off-canvas > ul.menu .is-active {
    border-color: transparent; }
    .off-canvas > ul.menu .is-active > a {
      background: transparent; }
  .off-canvas > ul.menu .current-menu-item > a {
    border-left-color: #2DC9D7; }
  .off-canvas > ul.menu a {
    color: #000000;
    font-weight: 600;
    font-size: 0.9375rem;
    border-left: 2px solid transparent;
    background-color: transparent;
    padding: 1rem 0.7rem; }
    .off-canvas > ul.menu a:hover, .off-canvas > ul.menu a:active, .off-canvas > ul.menu a:focus {
      background-color: rgba(252, 181, 54, 0.05); }

.off-canvas ul.menu.nested {
  margin-right: 0;
  margin-left: 0;
  padding-left: 1rem;
  border-top: 2px solid rgba(45, 201, 215, 0.2); }
  .off-canvas ul.menu.nested a {
    border-left: 2px solid rgba(45, 201, 215, 0.2);
    background-color: rgba(45, 201, 215, 0.05); }
    .off-canvas ul.menu.nested a:hover, .off-canvas ul.menu.nested a:focus {
      background-color: rgba(45, 201, 215, 0.2); }
  .off-canvas ul.menu.nested .current-menu-item > a {
    border-left-color: #2DC9D7; }

.mobile-menu .menu .is-active > a,
.mobile-off-canvas-menu .menu .is-active > a {
  background-color: #36454f; }

.off-canvas-content {
  transition: all 0.5s ease; }
  .off-canvas-content.is-open-right {
    position: relative; }
    .off-canvas-content.is-open-right:after {
      content: ' ';
      position: absolute;
      top: 0rem;
      bottom: 0rem;
      left: 0rem;
      right: 0rem;
      background-color: rgba(0, 0, 0, 0.8);
      z-index: 10; }

.js-off-canvas-overlay.is-visible {
  background: transparent; }

body.offcanvas #site-header.sticky {
  position: fixed;
  top: 0rem;
  left: 0rem;
  right: 0rem;
  z-index: 100; }
  body.offcanvas #site-header.sticky.off-canvas-pushed {
    z-index: 2;
    left: -250px; }

.top-bar-right {
  position: relative;
  -webkit-flex: 1 1 auto;
      -ms-flex: 1 1 auto;
          flex: 1 1 auto;
  z-index: 2; }

.top-bar-left {
  position: relative;
  z-index: 2; }

.top-bar {
  height: auto;
  margin-left: auto;
  margin-right: auto;
  padding-left: 1.5rem;
  background: transparent;
  /**
  PRE-MENU nav styling
   */
  /**
  Primary Nav Menu immediate parent
   */ }
  @media print, screen and (min-width: 40em) {
    .top-bar {
      padding-left: 4.375rem; } }
  @media print, screen and (min-width: 64em) {
    .top-bar {
      padding-left: 6.25rem; } }
  @media screen and (min-width: 75em) {
    .top-bar {
      padding-left: 7.5rem; } }
  @media screen and (min-width: 90em) {
    .top-bar {
      padding-left: 7.5rem; } }
  .top-bar .top-bar-r-premenu {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-align-items: stretch;
        -ms-flex-align: stretch;
            align-items: stretch;
    -webkit-justify-content: flex-end;
        -ms-flex-pack: end;
            justify-content: flex-end;
    position: relative;
    background-color: #F5F5F5;
    position: relative;
    padding-right: 1.5rem; }
    .top-bar .top-bar-r-premenu:after {
      content: ' ';
      display: block;
      position: absolute;
      top: 0rem;
      bottom: 0rem;
      height: 100%;
      background-color: #F5F5F5; }
    .top-bar .top-bar-r-premenu:after {
      right: calc(45rem - 50vw);
      width: calc(50vw - 45rem); }
    @media print, screen and (min-width: 40em) {
      .top-bar .top-bar-r-premenu {
        padding-right: 4.375rem; } }
    @media print, screen and (min-width: 64em) {
      .top-bar .top-bar-r-premenu {
        padding-right: 6.25rem; } }
    @media screen and (min-width: 75em) {
      .top-bar .top-bar-r-premenu {
        padding-right: 7.5rem; } }
    @media screen and (min-width: 90em) {
      .top-bar .top-bar-r-premenu {
        padding-right: 7.5rem; } }
    .top-bar .top-bar-r-premenu .menu > li:not(.menu-text) {
      /**
      Default link styling for pre-nav
       */ }
      .top-bar .top-bar-r-premenu .menu > li:not(.menu-text) > a {
        height: 2.5rem;
        padding: 0.5rem;
        font-size: 0.875rem;
        font-weight: 400;
        -webkit-justify-content: center;
            -ms-flex-pack: center;
                justify-content: center;
        -webkit-align-items: center;
            -ms-flex-align: center;
                align-items: center;
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex; }
      .top-bar .top-bar-r-premenu .menu > li:not(.menu-text).current_page_item > a {
        text-decoration: underline;
        border: none;
        color: inherit; }
    .top-bar .top-bar-r-premenu .menu > li:not(.menu-text):last-of-type a:after {
      content: none; }
    .top-bar .top-bar-r-premenu .premenu-cont {
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      -webkit-align-items: center;
          -ms-flex-align: center;
              align-items: center;
      padding: 0; }
    .top-bar .top-bar-r-premenu .searchform-cont {
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      -webkit-align-items: stretch;
          -ms-flex-align: stretch;
              align-items: stretch;
      height: 100%;
      padding: 0rem;
      margin-right: 1rem; }
      .top-bar .top-bar-r-premenu .searchform-cont input {
        font-size: 0.875rem; }
  .top-bar .top-bar-r-menu {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-justify-content: flex-end;
        -ms-flex-pack: end;
            justify-content: flex-end;
    padding-right: 1.5rem; }
    @media print, screen and (min-width: 40em) {
      .top-bar .top-bar-r-menu {
        padding-right: 4.375rem; } }
    @media print, screen and (min-width: 64em) {
      .top-bar .top-bar-r-menu {
        padding-right: 6.25rem; } }
    @media screen and (min-width: 75em) {
      .top-bar .top-bar-r-menu {
        padding-right: 7.5rem; } }
    @media screen and (min-width: 90em) {
      .top-bar .top-bar-r-menu {
        padding-right: 7.5rem; } }
  .top-bar ul {
    background-color: transparent; }
  .top-bar .menu a {
    color: #000000;
    font-weight: 600;
    font-size: 0.8rem;
    line-height: 1;
    padding: 1rem 1.2rem; }
    .top-bar .menu a:hover:not(.button) {
      background-color: rgba(45, 201, 215, 0.1);
      color: #000000; }
    .top-bar .menu a > li:not(.menu-text) > a {
      padding: 1rem; }
  .top-bar ul.menu:not(.submenu) > li > a {
    padding: 2rem 0.75rem;
    font-size: 0.875rem;
    text-transform: none;
    font-weight: 700;
    border-bottom: 3px solid transparent; }
    @media screen and (min-width: 75em) {
      .top-bar ul.menu:not(.submenu) > li > a {
        padding: 2rem 1.5rem; } }
  .top-bar ul.menu:not(.submenu) > li.current-menu-item > a {
    color: #000000;
    border-bottom: 3px solid #2DC9D7; }
  .top-bar ul.menu:not(.submenu) > li > .submenu {
    border-top: none;
    box-shadow: 0 5px 10px rgba(0, 0, 0, 0.2);
    z-index: 0; }
  .top-bar .menu > li.is-active > a {
    color: #000000;
    background: transparent; }
  .top-bar .dropdown.menu:first-child > li.is-dropdown-submenu-parent > a::after {
    right: 1rem;
    background: transparent url(../images/icons/linecaret_down_black.svg) center center;
    width: 18px;
    height: 18px;
    border: none;
    top: 50%;
    -webkit-transform: translateY(-50%);
        -ms-transform: translateY(-50%);
            transform: translateY(-50%);
    margin-top: 2px; }
  .top-bar .dropdown.menu .submenu {
    border: 0; }
    .top-bar .dropdown.menu .submenu li.current-menu-item > a {
      border-left: 3px solid #2DC9D7;
      color: #000000; }
  .top-bar .dropdown.menu .has-submenu.is-down-arrow a:after {
    border: 0; }
  .top-bar .dropdown.menu:first-child li .is-dropdown-submenu-parent a:after {
    display: none; }
  .top-bar .dropdown.menu li.is-dropdown-submenu-parent > a {
    padding-right: 2.5rem;
    white-space: nowrap; }
  .top-bar .dropdown.menu li.opens-left .is-dropdown-submenu {
    z-index: 4;
    background-color: #ffffff;
    width: -webkit-max-content;
    width: -moz-max-content;
    width: max-content;
    right: 0;
    left: 0; }

.top-bar-container {
  background-color: #ffffff;
  transition: height 0.3s ease-in-out, width 0.3s ease-in-out;
  width: 100%; }

@media screen and (max-width: 39.9375em) {
  .site-navigation {
    padding: 0; } }

.post-navigation::before, .post-navigation::after {
  display: table;
  content: ' ';
  -webkit-flex-basis: 0;
      -ms-flex-preferred-size: 0;
          flex-basis: 0;
  -webkit-order: 1;
      -ms-flex-order: 1;
          order: 1; }

.post-navigation::after {
  clear: both; }

.nav-previous {
  float: left; }

.nav-next {
  float: right; }

.input-group {
  position: relative; }
  .input-group .input-group-field {
    margin-bottom: 0rem;
    border-radius: 0;
    padding-right: 3rem;
    border: 2px solid #cacaca;
    box-shadow: none;
    color: #001E62; }
    .input-group .input-group-field::-webkit-input-placeholder {
      color: rgba(0, 0, 0, 0.3); }
    .input-group .input-group-field:-ms-input-placeholder {
      color: rgba(0, 0, 0, 0.3); }
    .input-group .input-group-field::placeholder {
      color: rgba(0, 0, 0, 0.3); }
    .input-group .input-group-field:focus {
      box-shadow: none;
      border: 2px solid #2DC9D7; }
  .input-group .input-group-button {
    position: absolute;
    right: 0;
    top: 0;
    bottom: 0;
    font-size: 1.2rem; }
    .input-group .input-group-button .searchsubmit {
      border: none;
      background-color: transparent;
      color: #001E62;
      cursor: pointer;
      transition: 0.5s ease;
      border-radius: 0px 2px 2px 0px; }
      .input-group .input-group-button .searchsubmit:before {
        font-family: 'Font Awesome 5 Pro';
        font-weight: 400;
        content: "\f002";
        padding: 0 1rem 0 0;
        font-size: 1.5rem; }
      .input-group .input-group-button .searchsubmit:hover, .input-group .input-group-button .searchsubmit:active, .input-group .input-group-button .searchsubmit:focus {
        color: #2DC9D7; }

.heading-searchform-cont {
  overflow: hidden;
  margin-right: 0.75rem;
  margin-left: 0.75rem; }
  @media print, screen and (min-width: 40em) {
    .heading-searchform-cont {
      margin-right: 2.1875rem; } }
  @media print, screen and (min-width: 64em) {
    .heading-searchform-cont {
      margin-right: 3.125rem; } }
  @media screen and (min-width: 75em) {
    .heading-searchform-cont {
      margin-right: 3.75rem; } }
  @media screen and (min-width: 90em) {
    .heading-searchform-cont {
      margin-right: 3.75rem; } }
  @media print, screen and (min-width: 40em) {
    .heading-searchform-cont {
      margin-left: 2.1875rem; } }
  @media print, screen and (min-width: 64em) {
    .heading-searchform-cont {
      margin-left: 3.125rem; } }
  @media screen and (min-width: 75em) {
    .heading-searchform-cont {
      margin-left: 3.75rem; } }
  @media screen and (min-width: 90em) {
    .heading-searchform-cont {
      margin-left: 3.75rem; } }
  @media print, screen and (min-width: 40em) {
    .heading-searchform-cont {
      margin-left: 0rem; } }
  @media print, screen and (min-width: 64em) {
    .heading-searchform-cont {
      margin-right: 1.5rem;
      margin-left: 1.5rem; } }
  @media print, screen and (min-width: 64em) and (min-width: 40em) {
    .heading-searchform-cont {
      margin-right: 4.375rem; } }
  @media print, screen and (min-width: 64em) and (min-width: 64em) {
    .heading-searchform-cont {
      margin-right: 6.25rem; } }
  @media screen and (min-width: 64em) and (min-width: 75em) {
    .heading-searchform-cont {
      margin-right: 7.5rem; } }
  @media screen and (min-width: 64em) and (min-width: 90em) {
    .heading-searchform-cont {
      margin-right: 7.5rem; } }
  @media print, screen and (min-width: 64em) and (min-width: 40em) {
    .heading-searchform-cont {
      margin-left: 4.375rem; } }
  @media print, screen and (min-width: 64em) and (min-width: 64em) {
    .heading-searchform-cont {
      margin-left: 6.25rem; } }
  @media screen and (min-width: 64em) and (min-width: 75em) {
    .heading-searchform-cont {
      margin-left: 7.5rem; } }
  @media screen and (min-width: 64em) and (min-width: 90em) {
    .heading-searchform-cont {
      margin-left: 7.5rem; } }
  .heading-searchform-cont .input-group {
    margin-bottom: 0rem;
    height: 100%;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center; }
  .heading-searchform-cont .input-group-field {
    background-color: rgba(0, 0, 0, 0.05);
    color: #000000;
    box-shadow: none;
    font-size: 1rem;
    border: none;
    transition: width 0.5s ease, background-color 0.5s ease, border-color 0.5s ease;
    width: 2.5rem;
    height: 4.0625rem;
    padding: 0; }
    @media print, screen and (min-width: 64em) {
      .heading-searchform-cont .input-group-field {
        height: 2.5rem;
        width: 2rem; } }
    .heading-searchform-cont .input-group-field:hover, .heading-searchform-cont .input-group-field:active, .heading-searchform-cont .input-group-field:focus {
      color: #000000; }
    .heading-searchform-cont .input-group-field::-webkit-input-placeholder {
      color: transparent;
      font-size: 1rem; }
    .heading-searchform-cont .input-group-field:-ms-input-placeholder {
      color: transparent;
      font-size: 1rem; }
    .heading-searchform-cont .input-group-field::placeholder {
      color: transparent;
      font-size: 1rem; }
  .heading-searchform-cont .input-group-button {
    top: 0rem;
    bottom: 0rem;
    transition: background-color 0.5s ease-in; }
    .heading-searchform-cont .input-group-button .searchsubmit {
      padding: 0rem;
      color: rgba(0, 0, 0, 0.7); }
  .heading-searchform-cont #searchform-desktop, .heading-searchform-cont #searchform-mobile {
    transition: all 0.5s ease; }
    .heading-searchform-cont #searchform-desktop:not(.form-active) .input-group-field, .heading-searchform-cont #searchform-mobile:not(.form-active) .input-group-field {
      background-color: transparent;
      color: transparent; }
    .heading-searchform-cont #searchform-desktop.form-active .input-group-field, .heading-searchform-cont #searchform-mobile.form-active .input-group-field {
      background-color: rgba(45, 201, 215, 0.2);
      padding-left: 1rem;
      padding-right: 2.5rem;
      width: 10rem;
      color: #000000;
      border-color: rgba(45, 201, 215, 0.2);
      font-weight: 600; }
      @media print, screen and (min-width: 64em) {
        .heading-searchform-cont #searchform-desktop.form-active .input-group-field, .heading-searchform-cont #searchform-mobile.form-active .input-group-field {
          padding-left: 0.5rem;
          padding-right: 1rem; } }
      .heading-searchform-cont #searchform-desktop.form-active .input-group-field:focus, .heading-searchform-cont #searchform-mobile.form-active .input-group-field:focus {
        border-color: #2DC9D7;
        background-color: #ffffff; }
      .heading-searchform-cont #searchform-desktop.form-active .input-group-field::-webkit-input-placeholder, .heading-searchform-cont #searchform-mobile.form-active .input-group-field::-webkit-input-placeholder {
        transition-delay: unset;
        color: rgba(0, 0, 0, 0.6); }
      .heading-searchform-cont #searchform-desktop.form-active .input-group-field:-ms-input-placeholder, .heading-searchform-cont #searchform-mobile.form-active .input-group-field:-ms-input-placeholder {
        transition-delay: unset;
        color: rgba(0, 0, 0, 0.6); }
      .heading-searchform-cont #searchform-desktop.form-active .input-group-field::placeholder, .heading-searchform-cont #searchform-mobile.form-active .input-group-field::placeholder {
        transition-delay: unset;
        color: rgba(0, 0, 0, 0.6); }
    .heading-searchform-cont #searchform-desktop.form-active .input-group-button .searchsubmit, .heading-searchform-cont #searchform-mobile.form-active .input-group-button .searchsubmit {
      color: #000000; }
      .heading-searchform-cont #searchform-desktop.form-active .input-group-button .searchsubmit:hover, .heading-searchform-cont #searchform-desktop.form-active .input-group-button .searchsubmit:focus, .heading-searchform-cont #searchform-mobile.form-active .input-group-button .searchsubmit:hover, .heading-searchform-cont #searchform-mobile.form-active .input-group-button .searchsubmit:focus {
        color: #2DC9D7; }

body.logged-in.admin-bar {
  /* mobile flyout menu */ }
  body.logged-in.admin-bar #site-header.sticky {
    top: 46px; }
    @media print, screen and (min-width: 40em) {
      body.logged-in.admin-bar #site-header.sticky {
        top: 32px; } }
  body.logged-in.admin-bar .mobile-flyout {
    top: 46px;
    max-height: calc(100vh - 46px); }
    @media print, screen and (min-width: 64em) {
      body.logged-in.admin-bar .mobile-flyout {
        top: 32px;
        max-height: calc(100vh - 32px); } }

.submenu-toggle::after {
  border-color: #2DC9D7 transparent transparent; }

/**
TOP OF NAV EMERGENCY BANNER
 */
.banner-cta {
  width: 100%;
  position: relative;
  z-index: 1000;
  background: #FCB536;
  padding-top: .5rem;
  padding-bottom: .5rem; }
  .banner-cta .content-cell {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center; }
    .banner-cta .content-cell .content-wrap .banner-text {
      color: #ffffff;
      margin-bottom: 0; }
      @media screen and (max-width: 39.9375em) {
        .banner-cta .content-cell .content-wrap .banner-text {
          text-align: center; } }
      @media print, screen and (min-width: 64em) {
        .banner-cta .content-cell .content-wrap .banner-text {
          display: inline; } }
    .banner-cta .content-cell .content-wrap .banner-link {
      font-size: 1rem;
      text-decoration: underline;
      color: rgba(255, 255, 255, 0.8);
      text-align: center;
      display: block; }
      @media print, screen and (min-width: 40em) {
        .banner-cta .content-cell .content-wrap .banner-link {
          display: -webkit-inline-flex;
          display: -ms-inline-flexbox;
          display: inline-flex;
          text-align: left; } }
      @media print, screen and (min-width: 64em) {
        .banner-cta .content-cell .content-wrap .banner-link {
          font-size: 1.25rem; } }

/* mobile flyout menu */
.mobile-flyout {
  position: fixed;
  box-shadow: 0rem 4px 40px rgba(0, 0, 0, 0.1);
  top: 0rem;
  max-width: 100vw;
  max-height: 100vh;
  transition: all 0.5s ease;
  z-index: 102;
  background-color: #ffffff;
  overflow-y: auto; }
  .mobile-flyout.opens-right {
    right: -100vw; }
    .mobile-flyout.opens-right.is-open {
      right: 0vw; }
  .mobile-flyout.opens-left {
    left: -100vw; }
    .mobile-flyout.opens-left.is-open {
      left: 0vw; }
  .mobile-flyout .menu-close-cont .custom-menu-icon {
    width: auto;
    margin-left: auto;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-justify-content: flex-end;
        -ms-flex-pack: end;
            justify-content: flex-end;
    border-radius: 0rem;
    transition: all 0.5s ease;
    height: 4.0625rem;
    padding: 1.5rem;
    color: #2DC9D7; }
    .mobile-flyout .menu-close-cont .custom-menu-icon:hover > span::before, .mobile-flyout .menu-close-cont .custom-menu-icon:focus > span::before, .mobile-flyout .menu-close-cont .custom-menu-icon:active > span::before {
      color: #000000; }
    .mobile-flyout .menu-close-cont .custom-menu-icon > span::before {
      transition: color 0.5s ease; }
  .mobile-flyout .menu {
    min-width: 20rem;
    padding-bottom: 1rem; }
    .mobile-flyout .menu .menu-item.menu-section-start {
      margin-top: 0.5rem;
      padding-top: 1.5rem;
      border-top: 1px solid #cacaca; }
    .mobile-flyout .menu .menu-item.is-submenu-item {
      border-left: 1px solid #2DC9D7; }
    .mobile-flyout .menu .menu-item.is-active > a {
      background-color: rgba(45, 201, 215, 0.15); }
    .mobile-flyout .menu .menu-item a {
      color: black;
      width: 100%;
      padding: 1rem 2rem;
      font-weight: 700; }
      .mobile-flyout .menu .menu-item a:hover, .mobile-flyout .menu .menu-item a:focus, .mobile-flyout .menu .menu-item a:active {
        background-color: rgba(45, 201, 215, 0.25); }

.body-main {
  overflow: hidden; }

.page-wrap {
  min-height: 50vh; }
  @media print, screen and (min-width: 64em) {
    .page-wrap {
      min-height: 25rem; } }

.entry-content {
  color: #333333; }
  .entry-content h1, .entry-content h2, .entry-content h3, .entry-content h4, .entry-content h5, .entry-content h6 {
    margin-top: 3.38346rem;
    margin-bottom: 0.5625rem; }
    @media print, screen and (min-width: 40em) {
      .entry-content h1, .entry-content h2, .entry-content h3, .entry-content h4, .entry-content h5, .entry-content h6 {
        margin-top: 6.57895rem; } }
    @media print, screen and (min-width: 64em) {
      .entry-content h1, .entry-content h2, .entry-content h3, .entry-content h4, .entry-content h5, .entry-content h6 {
        margin-top: 5.6391rem; } }
    @media screen and (min-width: 75em) {
      .entry-content h1, .entry-content h2, .entry-content h3, .entry-content h4, .entry-content h5, .entry-content h6 {
        margin-top: 6.76692rem; } }
    @media screen and (min-width: 90em) {
      .entry-content h1, .entry-content h2, .entry-content h3, .entry-content h4, .entry-content h5, .entry-content h6 {
        margin-top: 6.76692rem; } }
    @media print, screen and (min-width: 40em) {
      .entry-content h1, .entry-content h2, .entry-content h3, .entry-content h4, .entry-content h5, .entry-content h6 {
        margin-bottom: 1.09375rem; } }
    @media print, screen and (min-width: 64em) {
      .entry-content h1, .entry-content h2, .entry-content h3, .entry-content h4, .entry-content h5, .entry-content h6 {
        margin-bottom: 0.9375rem; } }
    @media screen and (min-width: 75em) {
      .entry-content h1, .entry-content h2, .entry-content h3, .entry-content h4, .entry-content h5, .entry-content h6 {
        margin-bottom: 1.125rem; } }
    @media screen and (min-width: 90em) {
      .entry-content h1, .entry-content h2, .entry-content h3, .entry-content h4, .entry-content h5, .entry-content h6 {
        margin-bottom: 1.125rem; } }

.sidebar {
  width: calc(100% - 1.125rem);
  margin-right: 0.5625rem;
  margin-left: 0.5625rem; }
  @media print, screen and (min-width: 40em) {
    .sidebar {
      width: calc(33.33333% - 1.25rem);
      margin-right: 0.625rem;
      margin-left: 0.625rem;
      margin-top: 1rem; } }

.result-item .entry-title {
  margin-bottom: 0.75rem;
  display: block; }

.result-item .post-featured-image > div {
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center center;
  height: 3.75rem;
  width: 100%;
  max-width: 5rem;
  margin-left: auto;
  margin-right: 0;
  border-radius: 2px;
  border: 2px solid transparent;
  transition: all 0.5s ease; }

@media print, screen and (min-width: 40em) {
  .result-item .meta-cont {
    margin-bottom: 0.5rem; } }

.result-item .meta-cont > * {
  font-size: 0.875rem;
  color: rgba(0, 0, 0, 0.7);
  margin-bottom: 0.25rem;
  display: block;
  font-weight: 600;
  line-height: 1.2; }
  .result-item .meta-cont > *:last-child {
    margin-bottom: 0; }

.result-item p:last-of-type {
  margin-bottom: 0; }

.result-link {
  display: block;
  background-color: #ffffff;
  color: #000000;
  border-bottom: 1px solid #e6e6e6;
  padding: 1.25rem 1.25rem 1.25rem 0;
  position: relative; }
  .result-link:after {
    content: '';
    display: block;
    height: 2px;
    width: 0;
    position: absolute;
    left: 0;
    bottom: 0;
    background: transparent;
    transition: width .5s ease, background-color .5s ease;
    margin-top: 3px; }
  .result-link:hover, .result-link:focus, .result-link:active {
    border-color: transparent; }
    .result-link:hover:after, .result-link:focus:after, .result-link:active:after {
      width: 100%;
      background: #2DC9D7; }
    .result-link:hover .entry-title, .result-link:focus .entry-title, .result-link:active .entry-title {
      color: #2DC9D7; }
    .result-link:hover > *:not(.entry-title), .result-link:focus > *:not(.entry-title), .result-link:active > *:not(.entry-title) {
      color: #000000; }
    .result-link:hover .post-featured-image > div, .result-link:focus .post-featured-image > div, .result-link:active .post-featured-image > div {
      border-color: #2DC9D7; }

.tag-list {
  color: rgba(0, 0, 0, 0.3);
  margin-bottom: 0.5rem; }
  .tag-list > a {
    padding: 0.25rem 0.5rem;
    color: #2DC9D7;
    display: inline-block;
    position: relative;
    overflow: hidden;
    z-index: 0;
    background-color: rgba(0, 0, 0, 0.05);
    font-size: 0.9375rem; }
    .tag-list > a:before {
      content: '';
      width: 100%;
      background: transparent;
      transition: height .2s ease, background-color .2s ease;
      position: absolute;
      right: 0;
      left: 0;
      bottom: auto;
      top: 0;
      height: 0%;
      z-index: -1; }
    .tag-list > a:hover, .tag-list > a:focus {
      text-decoration: none;
      color: #ffffff; }
      .tag-list > a:hover:before, .tag-list > a:focus:before {
        height: 100%;
        background-color: #2DC9D7; }

.no-results-container {
  padding: 2rem 1.5rem;
  background-color: rgba(0, 0, 0, 0.1);
  border-radius: 0; }
  @media print, screen and (min-width: 40em) {
    .no-results-container {
      width: 90%;
      margin-left: 0;
      margin-right: auto; } }
  @media print, screen and (min-width: 64em) {
    .no-results-container {
      padding: 2.5rem; } }

.pagination > li > * {
  border-radius: 2px;
  font-weight: 600; }

@media print, screen and (min-width: 40em) {
  .archive-content {
    padding-top: 2.75rem; } }

@media screen and (max-width: 39.9375em) {
  .archive-content .grid-container, .archive-content .top-bar {
    padding: 1rem; } }

.archive-content .tiles .main-tile-cell {
  padding-bottom: 1rem; }
  @media screen and (max-width: 39.9375em) {
    .archive-content .tiles .main-tile-cell:last-child {
      padding-bottom: 0; } }
  @media print, screen and (min-width: 40em) {
    .archive-content .tiles .main-tile-cell {
      padding-bottom: 2.125rem; } }

.archive-content .archive-tile {
  height: 100%; }
  .archive-content .archive-tile .tile-result-link {
    display: block;
    background-color: #ffffff;
    color: #000000;
    border: 1px solid #cacaca;
    border-radius: 2px;
    position: relative; }
    .archive-content .archive-tile .tile-result-link:hover, .archive-content .archive-tile .tile-result-link:focus, .archive-content .archive-tile .tile-result-link:active {
      box-shadow: 0 0.5rem 1.375rem 0 rgba(0, 0, 0, 0.12); }
      .archive-content .archive-tile .tile-result-link:hover:after, .archive-content .archive-tile .tile-result-link:focus:after, .archive-content .archive-tile .tile-result-link:active:after {
        width: 100%;
        background: #2DC9D7; }
      .archive-content .archive-tile .tile-result-link:hover .entry-title, .archive-content .archive-tile .tile-result-link:focus .entry-title, .archive-content .archive-tile .tile-result-link:active .entry-title {
        color: #2DC9D7; }
      .archive-content .archive-tile .tile-result-link:hover > *:not(.entry-title), .archive-content .archive-tile .tile-result-link:focus > *:not(.entry-title), .archive-content .archive-tile .tile-result-link:active > *:not(.entry-title) {
        color: #000000; }
      .archive-content .archive-tile .tile-result-link:hover .post-featured-image > div, .archive-content .archive-tile .tile-result-link:focus .post-featured-image > div, .archive-content .archive-tile .tile-result-link:active .post-featured-image > div {
        border-color: #2DC9D7; }
    .archive-content .archive-tile .tile-result-link .grid-x {
      height: 100%; }
  .archive-content .archive-tile .post-featured-image div {
    height: 100%;
    border: none;
    max-width: unset;
    border-radius: 0;
    margin: 0; }
  .archive-content .archive-tile .entry-content {
    padding: 1rem 1.1875rem 1.375rem 1.125rem; }
    .archive-content .archive-tile .entry-content .meta-cont {
      margin-bottom: 0; }
      .archive-content .archive-tile .entry-content .meta-cont time {
        font-size: 0.625rem;
        color: rgba(138, 138, 138, 0.8);
        line-height: 1.6; }
    .archive-content .archive-tile .entry-content .entry-title {
      line-height: 1.2;
      margin-bottom: 0.5rem; }
    .archive-content .archive-tile .entry-content p {
      color: #8a8a8a;
      font-size: 0.875rem;
      line-height: 1.21; }

.hidden, .load-more-hidden {
  display: none !important; }

.embed-container {
  position: relative;
  padding-bottom: 56.25%;
  overflow: hidden;
  max-width: 100%;
  height: auto;
  border-radius: 20px;
  overflow: hidden;
  background-color: #212121; }
  @media print, screen and (min-width: 64em) {
    .embed-container {
      min-height: 29.625rem; } }

.embed-container iframe,
.embed-container object,
.embed-container embed {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 5; }

.single .type-post {
  margin-bottom: 2.25rem; }
  @media print, screen and (min-width: 40em) {
    .single .type-post {
      margin-bottom: 4.375rem; } }
  @media print, screen and (min-width: 64em) {
    .single .type-post {
      margin-bottom: 3.75rem; } }
  @media screen and (min-width: 75em) {
    .single .type-post {
      margin-bottom: 4.5rem; } }
  @media screen and (min-width: 90em) {
    .single .type-post {
      margin-bottom: 4.5rem; } }
  .single .type-post .post-content .content-wrap {
    position: relative;
    margin-left: 0;
    min-height: 18.75rem; }
    @media screen and (max-width: 63.9375em) {
      .single .type-post .post-content .content-wrap {
        margin-bottom: 2.25rem; } }
  @media screen and (max-width: 63.9375em) and (min-width: 40em) {
    .single .type-post .post-content .content-wrap {
      margin-bottom: 4.375rem; } }
  @media screen and (max-width: 63.9375em) and (min-width: 64em) {
    .single .type-post .post-content .content-wrap {
      margin-bottom: 3.75rem; } }
  @media screen and (max-width: 63.9375em) and (min-width: 75em) {
    .single .type-post .post-content .content-wrap {
      margin-bottom: 4.5rem; } }
  @media screen and (max-width: 63.9375em) and (min-width: 90em) {
    .single .type-post .post-content .content-wrap {
      margin-bottom: 4.5rem; } }
    @media print, screen and (min-width: 64em) {
      .single .type-post .post-content .content-wrap {
        padding-right: 2.25rem;
        min-height: 37.5rem; } }
  @media print, screen and (min-width: 64em) and (min-width: 40em) {
    .single .type-post .post-content .content-wrap {
      padding-right: 4.375rem; } }
  @media print, screen and (min-width: 64em) and (min-width: 64em) {
    .single .type-post .post-content .content-wrap {
      padding-right: 3.75rem; } }
  @media screen and (min-width: 64em) and (min-width: 75em) {
    .single .type-post .post-content .content-wrap {
      padding-right: 4.5rem; } }
  @media screen and (min-width: 64em) and (min-width: 90em) {
    .single .type-post .post-content .content-wrap {
      padding-right: 4.5rem; } }
    .single .type-post .post-content .content-wrap figure:not(.custom-width) img, .single .type-post .post-content .content-wrap img:not(.custom-width) {
      min-width: 100%; }
    .single .type-post .post-content .content-wrap figure.custom-width img, .single .type-post .post-content .content-wrap img.custom-width {
      min-width: inherit; }
    .single .type-post .post-content .content-wrap img {
      object-fit: cover;
      border-radius: 20px; }
    .single .type-post .post-content .content-wrap h1, .single .type-post .post-content .content-wrap h2, .single .type-post .post-content .content-wrap h3, .single .type-post .post-content .content-wrap h4, .single .type-post .post-content .content-wrap h5, .single .type-post .post-content .content-wrap h6 {
      margin-top: 1.5rem; }
      @media print, screen and (min-width: 40em) {
        .single .type-post .post-content .content-wrap h1, .single .type-post .post-content .content-wrap h2, .single .type-post .post-content .content-wrap h3, .single .type-post .post-content .content-wrap h4, .single .type-post .post-content .content-wrap h5, .single .type-post .post-content .content-wrap h6 {
          margin-top: 2.91667rem; } }
      @media print, screen and (min-width: 64em) {
        .single .type-post .post-content .content-wrap h1, .single .type-post .post-content .content-wrap h2, .single .type-post .post-content .content-wrap h3, .single .type-post .post-content .content-wrap h4, .single .type-post .post-content .content-wrap h5, .single .type-post .post-content .content-wrap h6 {
          margin-top: 2.5rem; } }
      @media screen and (min-width: 75em) {
        .single .type-post .post-content .content-wrap h1, .single .type-post .post-content .content-wrap h2, .single .type-post .post-content .content-wrap h3, .single .type-post .post-content .content-wrap h4, .single .type-post .post-content .content-wrap h5, .single .type-post .post-content .content-wrap h6 {
          margin-top: 3rem; } }
      @media screen and (min-width: 90em) {
        .single .type-post .post-content .content-wrap h1, .single .type-post .post-content .content-wrap h2, .single .type-post .post-content .content-wrap h3, .single .type-post .post-content .content-wrap h4, .single .type-post .post-content .content-wrap h5, .single .type-post .post-content .content-wrap h6 {
          margin-top: 3rem; } }
    .single .type-post .post-content .content-wrap > * {
      color: #333333; }
    @media print, screen and (min-width: 64em) {
      .single .type-post .post-content .content-wrap > p {
        font-size: 1.125rem; } }
  .single .type-post .post-content .content-footer {
    padding-top: 1rem; }
    @media print, screen and (min-width: 64em) {
      .single .type-post .post-content .content-footer {
        padding-top: 2.5rem; } }
    .single .type-post .post-content .content-footer .post-meta-wrap {
      padding-bottom: 1rem;
      margin-bottom: 1rem;
      border-bottom: 1px solid rgba(33, 33, 33, 0.1); }
      @media print, screen and (min-width: 64em) {
        .single .type-post .post-content .content-footer .post-meta-wrap {
          padding-bottom: 2rem;
          margin-bottom: 1.5rem; } }
    .single .type-post .post-content .content-footer .share-text {
      font-size: 1rem;
      text-transform: uppercase; }
    .single .type-post .post-content .content-footer .post-share-wrap {
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      -webkit-align-items: center;
          -ms-flex-align: center;
              align-items: center;
      -webkit-flex-direction: column;
          -ms-flex-direction: column;
              flex-direction: column;
      -webkit-justify-content: center;
          -ms-flex-pack: center;
              justify-content: center; }
      @media screen and (max-width: 39.9375em) {
        .single .type-post .post-content .content-footer .post-share-wrap .share-text {
          display: block;
          margin-bottom: 1rem; } }
      @media print, screen and (min-width: 40em) {
        .single .type-post .post-content .content-footer .post-share-wrap {
          -webkit-flex-direction: row;
              -ms-flex-direction: row;
                  flex-direction: row;
          -webkit-justify-content: space-between;
              -ms-flex-pack: justify;
                  justify-content: space-between; } }

.single-authors .author-archive, .blog .author-archive {
  padding-top: 2.25rem;
  padding-bottom: 2.25rem; }
  @media print, screen and (min-width: 40em) {
    .single-authors .author-archive, .blog .author-archive {
      padding-top: 4.375rem;
      padding-bottom: 4.375rem; } }
  @media print, screen and (min-width: 64em) {
    .single-authors .author-archive, .blog .author-archive {
      padding-top: 3.75rem;
      padding-bottom: 3.75rem; } }
  @media screen and (min-width: 75em) {
    .single-authors .author-archive, .blog .author-archive {
      padding-top: 4.5rem;
      padding-bottom: 4.5rem; } }
  @media screen and (min-width: 90em) {
    .single-authors .author-archive, .blog .author-archive {
      padding-top: 4.5rem;
      padding-bottom: 4.5rem; } }
  .single-authors .author-archive .section-title, .blog .author-archive .section-title {
    margin-bottom: 1rem;
    text-align: center;
    color: #001E62; }
    @media print, screen and (min-width: 64em) {
      .single-authors .author-archive .section-title, .blog .author-archive .section-title {
        margin-bottom: 2rem; } }
  .single-authors .author-archive .post-card-row-grid, .blog .author-archive .post-card-row-grid {
    margin-bottom: 0; }

.card-play-button {
  height: 2.5rem;
  width: 2.5rem;
  border-radius: 50%;
  background-color: #ffffff; }
  .card-play-button svg {
    max-height: 1rem;
    position: absolute;
    top: 50%;
    left: calc(50% + 2px);
    -webkit-transform: translate(-50%, -50%);
        -ms-transform: translate(-50%, -50%);
            transform: translate(-50%, -50%); }

.page-wrap.press-page .featured-posts {
  margin-top: 2.25rem;
  margin-bottom: 4.5rem; }
  @media print, screen and (min-width: 40em) {
    .page-wrap.press-page .featured-posts {
      margin-top: 4.375rem; } }
  @media print, screen and (min-width: 64em) {
    .page-wrap.press-page .featured-posts {
      margin-top: 3.75rem; } }
  @media screen and (min-width: 75em) {
    .page-wrap.press-page .featured-posts {
      margin-top: 4.5rem; } }
  @media screen and (min-width: 90em) {
    .page-wrap.press-page .featured-posts {
      margin-top: 4.5rem; } }
  @media print, screen and (min-width: 40em) {
    .page-wrap.press-page .featured-posts {
      margin-bottom: 8.75rem; } }
  @media print, screen and (min-width: 64em) {
    .page-wrap.press-page .featured-posts {
      margin-bottom: 7.5rem; } }
  @media screen and (min-width: 75em) {
    .page-wrap.press-page .featured-posts {
      margin-bottom: 9rem; } }
  @media screen and (min-width: 90em) {
    .page-wrap.press-page .featured-posts {
      margin-bottom: 9rem; } }

.page-wrap.press-page section:last-of-type .content-cell {
  margin-bottom: 0; }

.page-wrap.type-page {
  margin-bottom: 2.25rem; }
  @media print, screen and (min-width: 40em) {
    .page-wrap.type-page {
      margin-bottom: 4.375rem; } }
  @media print, screen and (min-width: 64em) {
    .page-wrap.type-page {
      margin-bottom: 3.75rem; } }
  @media screen and (min-width: 75em) {
    .page-wrap.type-page {
      margin-bottom: 4.5rem; } }
  @media screen and (min-width: 90em) {
    .page-wrap.type-page {
      margin-bottom: 4.5rem; } }

.sti-mobile-btn {
  display: none !important; }

#sti-box {
  z-index: 9 !important;
  border-top-left-radius: 20px; }
  #sti-box.has-elems {
    display: block !important; }

@media screen and (max-width: 39.9375em) {
  .padding-t-small-only {
    padding-top: 4.5rem; } }
  @media screen and (max-width: 39.9375em) and (min-width: 40em) {
    .padding-t-small-only {
      padding-top: 8.75rem; } }
  @media screen and (max-width: 39.9375em) and (min-width: 64em) {
    .padding-t-small-only {
      padding-top: 7.5rem; } }
  @media screen and (max-width: 39.9375em) and (min-width: 75em) {
    .padding-t-small-only {
      padding-top: 9rem; } }
  @media screen and (max-width: 39.9375em) and (min-width: 90em) {
    .padding-t-small-only {
      padding-top: 9rem; } }

.optanon-alert-box-wrapper .center-tile-banner-title {
  margin-bottom: 1rem !important; }

.optanon-alert-box-wrapper .optanon-alert-box-accept-button {
  cursor: pointer;
  border-radius: 20px !important; }

.optanon-alert-box-wrapper .center-tile-banner-title, .optanon-alert-box-wrapper .optanon-allow-all {
  font-family: "gorditabold", -apple-system, BlinkMacSystemFont, "Segoe UI", "Roboto", "Oxygen", "Ubuntu", "Cantarell", "Fira Sans", "Droid Sans", "Helvetica Neue", sans-serif !important; }

.optanon-alert-box-wrapper .optanon-allow-all {
  font-size: 0.825rem !important; }

.optanon-alert-box-wrapper .cookie-settings-button {
  font-family: "gorditaregular", -apple-system, BlinkMacSystemFont, "Segoe UI", "Roboto", "Oxygen", "Ubuntu", "Cantarell", "Fira Sans", "Droid Sans", "Helvetica Neue", sans-serif !important; }

.optanon-alert-box-wrapper .optanon-alert-box-notice {
  font-family: "gorditaregular", -apple-system, BlinkMacSystemFont, "Segoe UI", "Roboto", "Oxygen", "Ubuntu", "Cantarell", "Fira Sans", "Droid Sans", "Helvetica Neue", sans-serif !important;
  margin-bottom: 20px !important; }

@media screen and (max-width: 39.9375em) {
  .type-search {
    padding-top: 2.25rem; } }
  @media screen and (max-width: 39.9375em) and (min-width: 40em) {
    .type-search {
      padding-top: 4.375rem; } }
  @media screen and (max-width: 39.9375em) and (min-width: 64em) {
    .type-search {
      padding-top: 3.75rem; } }
  @media screen and (max-width: 39.9375em) and (min-width: 75em) {
    .type-search {
      padding-top: 4.5rem; } }
  @media screen and (max-width: 39.9375em) and (min-width: 90em) {
    .type-search {
      padding-top: 4.5rem; } }

.type-search .search-results .main-grid {
  margin-bottom: 2.25rem; }
  @media print, screen and (min-width: 40em) {
    .type-search .search-results .main-grid {
      margin-bottom: 4.375rem; } }
  @media print, screen and (min-width: 64em) {
    .type-search .search-results .main-grid {
      margin-bottom: 3.75rem; } }
  @media screen and (min-width: 75em) {
    .type-search .search-results .main-grid {
      margin-bottom: 4.5rem; } }
  @media screen and (min-width: 90em) {
    .type-search .search-results .main-grid {
      margin-bottom: 4.5rem; } }

.type-search .search-results .load-more-cell {
  margin-top: 0 !important;
  margin-bottom: 0 !important;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center; }
  .type-search .search-results .load-more-cell .button {
    margin-top: 1.125rem; }
    @media print, screen and (min-width: 40em) {
      .type-search .search-results .load-more-cell .button {
        margin-top: 2.1875rem; } }
    @media print, screen and (min-width: 64em) {
      .type-search .search-results .load-more-cell .button {
        margin-top: 1.875rem; } }
    @media screen and (min-width: 75em) {
      .type-search .search-results .load-more-cell .button {
        margin-top: 2.25rem; } }
    @media screen and (min-width: 90em) {
      .type-search .search-results .load-more-cell .button {
        margin-top: 2.25rem; } }

.rk-placeholder {
  position: absolute;
  top: 0;
  left: 0;
  height: 100%;
  width: 100%;
  background-image: url("../images/placeholder_blog_tile.svg");
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center; }

.reveal#lang-switch-modal {
  padding-top: 2.25rem;
  padding-bottom: 2.25rem;
  padding-left: 0.75rem;
  padding-right: 0.75rem;
  z-index: 999999999999; }
  @media print, screen and (min-width: 40em) {
    .reveal#lang-switch-modal {
      padding-top: 4.375rem;
      padding-bottom: 4.375rem; } }
  @media print, screen and (min-width: 64em) {
    .reveal#lang-switch-modal {
      padding-top: 3.75rem;
      padding-bottom: 3.75rem; } }
  @media screen and (min-width: 75em) {
    .reveal#lang-switch-modal {
      padding-top: 4.5rem;
      padding-bottom: 4.5rem; } }
  @media screen and (min-width: 90em) {
    .reveal#lang-switch-modal {
      padding-top: 4.5rem;
      padding-bottom: 4.5rem; } }
  @media print, screen and (min-width: 40em) {
    .reveal#lang-switch-modal {
      padding-left: 2.1875rem;
      padding-right: 2.1875rem; } }
  @media print, screen and (min-width: 64em) {
    .reveal#lang-switch-modal {
      padding-left: 3.125rem;
      padding-right: 3.125rem; } }
  @media screen and (min-width: 75em) {
    .reveal#lang-switch-modal {
      padding-left: 3.75rem;
      padding-right: 3.75rem; } }
  @media screen and (min-width: 90em) {
    .reveal#lang-switch-modal {
      padding-left: 3.75rem;
      padding-right: 3.75rem; } }
  .reveal#lang-switch-modal .modal-content {
    margin-bottom: 1.5rem; }
    @media print, screen and (min-width: 64em) {
      .reveal#lang-switch-modal .modal-content {
        margin-bottom: 3rem; } }

.footer-container {
  background-color: #f7f7f7;
  overflow: hidden;
  font-family: "gorditamedium", -apple-system, BlinkMacSystemFont, "Segoe UI", "Roboto", "Oxygen", "Ubuntu", "Cantarell", "Fira Sans", "Droid Sans", "Helvetica Neue", sans-serif;
  text-align: center; }
  @media print, screen and (min-width: 40em) {
    .footer-container {
      text-align: left; } }
  .footer-container .grid-x {
    padding-top: 2.25rem;
    padding-bottom: 2.25rem; }
    @media print, screen and (min-width: 40em) {
      .footer-container .grid-x {
        padding-top: 4.375rem;
        padding-bottom: 4.375rem; } }
    @media print, screen and (min-width: 64em) {
      .footer-container .grid-x {
        padding-top: 3.75rem;
        padding-bottom: 3.75rem; } }
    @media screen and (min-width: 75em) {
      .footer-container .grid-x {
        padding-top: 4.5rem;
        padding-bottom: 4.5rem; } }
    @media screen and (min-width: 90em) {
      .footer-container .grid-x {
        padding-top: 4.5rem;
        padding-bottom: 4.5rem; } }
    .footer-container .grid-x > .cell {
      padding-top: 2.5rem; }
      .footer-container .grid-x > .cell:last-child {
        padding-bottom: 3rem; }
  @media print, screen and (min-width: 40em) {
    .footer-container .footer-menu-col {
      padding-bottom: 2.25rem; } }
  @media print, screen and (min-width: 40em) and (min-width: 40em) {
    .footer-container .footer-menu-col {
      padding-bottom: 4.375rem; } }
  @media print, screen and (min-width: 40em) and (min-width: 64em) {
    .footer-container .footer-menu-col {
      padding-bottom: 3.75rem; } }
  @media screen and (min-width: 40em) and (min-width: 75em) {
    .footer-container .footer-menu-col {
      padding-bottom: 4.5rem; } }
  @media screen and (min-width: 40em) and (min-width: 90em) {
    .footer-container .footer-menu-col {
      padding-bottom: 4.5rem; } }
  @media print, screen and (min-width: 64em) {
    .footer-container .footer-menu-col {
      padding-bottom: 4.5rem; } }
  @media print, screen and (min-width: 64em) and (min-width: 40em) {
    .footer-container .footer-menu-col {
      padding-bottom: 8.75rem; } }
  @media print, screen and (min-width: 64em) and (min-width: 64em) {
    .footer-container .footer-menu-col {
      padding-bottom: 7.5rem; } }
  @media screen and (min-width: 64em) and (min-width: 75em) {
    .footer-container .footer-menu-col {
      padding-bottom: 9rem; } }
  @media screen and (min-width: 64em) and (min-width: 90em) {
    .footer-container .footer-menu-col {
      padding-bottom: 9rem; } }
  .footer-container .footer-menu-col .footer-menu {
    display: block;
    text-align: center; }
    @media print, screen and (min-width: 40em) {
      .footer-container .footer-menu-col .footer-menu {
        -webkit-columns: 3;
                columns: 3;
        text-align: left; } }
    .footer-container .footer-menu-col .footer-menu .menu-item {
      color: #212121; }
      .footer-container .footer-menu-col .footer-menu .menu-item a {
        color: #212121;
        padding: 0 0 0 0;
        margin-bottom: 1.5rem;
        font-family: "gorditamedium", -apple-system, BlinkMacSystemFont, "Segoe UI", "Roboto", "Oxygen", "Ubuntu", "Cantarell", "Fira Sans", "Droid Sans", "Helvetica Neue", sans-serif; }
        .footer-container .footer-menu-col .footer-menu .menu-item a:hover {
          text-decoration: underline; }
      .footer-container .footer-menu-col .footer-menu .menu-item.is-active {
        background-color: transparent; }
        .footer-container .footer-menu-col .footer-menu .menu-item.is-active a {
          background-color: transparent; }
  .footer-container .social-icon-list {
    display: block; }
  .footer-container .footer-info-cell {
    text-align: center; }
  .footer-container .store-link {
    display: block;
    margin-bottom: 0.5rem; }
    .footer-container .store-link > img {
      display: block;
      width: auto;
      height: 2.5rem;
      margin-left: auto;
      margin-right: auto;
      display: block; }
      @media screen and (min-width: 40em) and (max-width: 63.9375em) {
        .footer-container .store-link > img {
          height: 3.125rem; } }
  .footer-container a.store-link {
    transition: all 0.5s ease; }
    .footer-container a.store-link:hover, .footer-container a.store-link:focus {
      opacity: 0.7; }

body#tinymce {
  height: auto;
  max-width: 90rem;
  padding: 1.25rem !important; }

.gform_wrapper {
  margin: 0 !important; }
  .gform_wrapper .form-heading {
    margin-bottom: 1.5rem; }
  .gform_wrapper ul.gform_fields li.gfield select, .gform_wrapper ul.gform_fields li.gfield textarea, .gform_wrapper ul.gform_fields li.gfield input:not([type=radio]):not([type=checkbox]):not([type=submit]):not([type=button]):not([type=image]):not([type='file']) {
    padding-left: 1rem;
    padding-right: 1rem;
    margin-bottom: 0; }
  .gform_wrapper ul.gform_fields li.gfield select {
    background-position: right 0 center; }
    .gform_wrapper ul.gform_fields li.gfield select:hover {
      cursor: pointer; }
  .gform_wrapper ul.gform_fields li.gfield textarea {
    height: 9.375rem; }
  .gform_wrapper ul.gform_fields li.gfield label.gfield_label {
    font-size: 0.875rem; }
  .gform_wrapper ul.gform_fields li.gfield .ginput_container {
    margin-top: 4px; }
    @media print, screen and (min-width: 64em) {
      .gform_wrapper ul.gform_fields li.gfield .ginput_container {
        margin-top: 8px; } }
  .gform_wrapper form .field_description_below .gfield_description {
    padding-top: 0.5rem; }
  .gform_wrapper.gform_validation_error form .gform_body ul li.gfield.gfield_error:not(.gf_left_half):not(.gf_right_half) {
    max-width: none !important; }
  .gform_wrapper form .validation_message {
    color: #a63b2a; }
  .gform_wrapper form div.validation_error {
    border: none;
    background-color: rgba(204, 75, 55, 0.1);
    color: #ca4834;
    border-radius: 4px;
    line-height: 1.5; }
  .gform_wrapper form ul.gform_fields li.gfield.gfield_error, .gform_wrapper form li.gfield.gfield_error.gfield_contains_required.gfield_creditcard_warning {
    border: none;
    background: none;
    padding-top: 0;
    padding-bottom: 0;
    margin-bottom: 0 !important; }
    .gform_wrapper form ul.gform_fields li.gfield.gfield_error label.gfield_label, .gform_wrapper form li.gfield.gfield_error.gfield_contains_required.gfield_creditcard_warning label.gfield_label {
      color: #cc4b37; }
    .gform_wrapper form ul.gform_fields li.gfield.gfield_error.gfield_contains_required label.gfield_label, .gform_wrapper form li.gfield.gfield_error.gfield_contains_required.gfield_creditcard_warning.gfield_contains_required label.gfield_label {
      margin-top: 0; }
    .gform_wrapper form ul.gform_fields li.gfield.gfield_error.gfield_contains_required div.ginput_container, .gform_wrapper form li.gfield.gfield_error.gfield_contains_required.gfield_creditcard_warning.gfield_contains_required div.ginput_container {
      margin-top: 4px; }
      @media print, screen and (min-width: 64em) {
        .gform_wrapper form ul.gform_fields li.gfield.gfield_error.gfield_contains_required div.ginput_container, .gform_wrapper form li.gfield.gfield_error.gfield_contains_required.gfield_creditcard_warning.gfield_contains_required div.ginput_container {
          margin-top: 8px; } }
    .gform_wrapper form ul.gform_fields li.gfield.gfield_error + li.gfield.gfield_error, .gform_wrapper form li.gfield.gfield_error.gfield_contains_required.gfield_creditcard_warning + li.gfield.gfield_error {
      margin-top: 1rem; }
    .gform_wrapper form ul.gform_fields li.gfield.gfield_error select, .gform_wrapper form ul.gform_fields li.gfield.gfield_error textarea, .gform_wrapper form ul.gform_fields li.gfield.gfield_error input:not([type=radio]):not([type=checkbox]):not([type=submit]):not([type=button]):not([type=image]):not([type='file']), .gform_wrapper form li.gfield.gfield_error.gfield_contains_required.gfield_creditcard_warning select, .gform_wrapper form li.gfield.gfield_error.gfield_contains_required.gfield_creditcard_warning textarea, .gform_wrapper form li.gfield.gfield_error.gfield_contains_required.gfield_creditcard_warning input:not([type=radio]):not([type=checkbox]):not([type=submit]):not([type=button]):not([type=image]):not([type='file']) {
      border: 1px solid #cc4b37; }
  .gform_wrapper .gform_body .gform_fields .gfield .ginput_container input.gform_button_select_files, .gform_wrapper .gform_body .gform_fields .gfield .ginput_container textarea.gform_button_select_files, .gform_wrapper .gform_body .gform_fields .gf_left_half .ginput_container input.gform_button_select_files, .gform_wrapper .gform_body .gform_fields .gf_left_half .ginput_container textarea.gform_button_select_files, .gform_wrapper .gform_body .gform_fields .gf_right_half .ginput_container input.gform_button_select_files, .gform_wrapper .gform_body .gform_fields .gf_right_half .ginput_container textarea.gform_button_select_files {
    text-transform: none; }
  .gform_wrapper .gform_body .gform_fields .gfield {
    padding: 0; }
  .gform_wrapper .gform_body .gform_fields .gfield.gf_left_half {
    padding: 0 0.5rem 0 0; }
    @media screen and (max-width: 39.9375em) {
      .gform_wrapper .gform_body .gform_fields .gfield.gf_left_half {
        padding: 0; } }
  .gform_wrapper .gform_body .gform_fields .gfield.gf_right_half {
    padding: 0 0 0 0.5rem; }
    @media screen and (max-width: 39.9375em) {
      .gform_wrapper .gform_body .gform_fields .gfield.gf_right_half {
        padding: 0; } }

.gform_confirmation_wrapper {
  padding: 1.5rem;
  font-weight: 700;
  border: 1px solid #e6e6e6;
  position: relative;
  background-color: #f7f7f7;
  border-radius: 4px;
  margin-top: 1.5rem;
  margin-bottom: 1.5rem;
  text-align: center; }
  @media print, screen and (min-width: 64em) {
    .gform_confirmation_wrapper {
      padding: 1.5rem 1.5rem 1.5rem 3.5rem;
      text-align: left; } }
  .gform_confirmation_wrapper:before {
    display: inline-block;
    padding: 0 9px;
    width: 2.125rem;
    height: 2.125rem;
    color: #3adb76;
    border-radius: 50%;
    font-size: 1rem;
    content: '\f00c';
    background-color: #ffffff;
    font-family: FontAwesome;
    line-height: 2.2;
    box-shadow: 0 1px 6px rgba(252, 181, 54, 0.4);
    margin-bottom: 0.6rem; }
    @media print, screen and (min-width: 64em) {
      .gform_confirmation_wrapper:before {
        position: absolute;
        display: block;
        left: 0.65rem;
        top: 50%;
        margin-top: -1.0625rem; } }

select {
  padding-top: 0;
  padding-bottom: 0;
  border-radius: 4px;
  border: 1px solid #001E62;
  -webkit-appearance: none;
  -moz-appearance: none;
       appearance: none;
  background-image: url(../fonts/fontawesome-pro-5.13.0-web/svgs/regular/chevron-down.svg);
  background-size: 0.625rem;
  background-position: right;
  background-repeat: no-repeat; }

input[type='text'] {
  background-color: #ffffff; }

input[type="color"],
input[type="date"],
input[type="datetime"],
input[type="datetime-local"],
input[type="email"],
input[type="month"],
input[type="number"],
input[type="password"],
input[type="search"],
input[type="tel"],
input[type="text"],
input[type="time"],
input[type="url"],
input[type="week"],
select:focus,
textarea {
  font-size: 16px; }

select:focus {
  box-shadow: none; }

body {
  font-size: 0.875rem;
  letter-spacing: 0.5px; }
  @media print, screen and (min-width: 40em) {
    body {
      font-size: 1rem; } }

.show-as-h1, .banner-page-break .banner-content, .top-post .top-post-grid .content-col .post-title-link .post-title, .top-post.top-post-video .top-post-row-image .top-post-controls-links .post-title,
.show-as-h2,
.user-login .login-title,
.show-as-h3,
.post-card-row-content .post-title,
.browse-by-category .browse-by-category-title,
.blog-home .latest-title,
.show-as-h4,
.result-item .entry-title,
.banner-page-break .author-line,
.browse-by-category .category-cell .content-col .category-title,
.search-result-item .content-cell .item-title,
.show-as-h5,
.post-meta.large .author-name,
.show-as-h6,
.archive-content .archive-tile .entry-content .entry-title,
.post-navigation .view-all-button {
  font-weight: 700;
  line-height: 1.222;
  font-family: "gorditabold", -apple-system, BlinkMacSystemFont, "Segoe UI", "Roboto", "Oxygen", "Ubuntu", "Cantarell", "Fira Sans", "Droid Sans", "Helvetica Neue", sans-serif; }

.show-as-h1, .banner-page-break .banner-content, .top-post .top-post-grid .content-col .post-title-link .post-title, .top-post.top-post-video .top-post-row-image .top-post-controls-links .post-title {
  font-size: 2.5rem; }
  @media print, screen and (min-width: 40em) {
    .show-as-h1, .banner-page-break .banner-content, .top-post .top-post-grid .content-col .post-title-link .post-title, .top-post.top-post-video .top-post-row-image .top-post-controls-links .post-title {
      font-size: 3rem; } }
  @media print, screen and (min-width: 64em) {
    .show-as-h1, .banner-page-break .banner-content, .top-post .top-post-grid .content-col .post-title-link .post-title, .top-post.top-post-video .top-post-row-image .top-post-controls-links .post-title {
      font-size: 3.375rem; } }


.show-as-h2,
.user-login .login-title {
  font-size: 1.75rem; }
  @media print, screen and (min-width: 40em) {
    
    .show-as-h2,
    .user-login .login-title {
      font-size: 1.875rem; } }
  @media print, screen and (min-width: 64em) {
    
    .show-as-h2,
    .user-login .login-title {
      font-size: 2.25rem; } }


.show-as-h3,
.post-card-row-content .post-title,
.browse-by-category .browse-by-category-title,
.blog-home .latest-title {
  font-size: 1.5rem; }
  @media print, screen and (min-width: 40em) {
    
    .show-as-h3,
    .post-card-row-content .post-title,
    .browse-by-category .browse-by-category-title,
    .blog-home .latest-title {
      font-size: 1.5rem; } }
  @media print, screen and (min-width: 64em) {
    
    .show-as-h3,
    .post-card-row-content .post-title,
    .browse-by-category .browse-by-category-title,
    .blog-home .latest-title {
      font-size: 1.875rem; } }


.show-as-h4,
.result-item .entry-title,
.banner-page-break .author-line,
.browse-by-category .category-cell .content-col .category-title,
.search-result-item .content-cell .item-title {
  font-size: 1.3125rem; }
  @media print, screen and (min-width: 40em) {
    
    .show-as-h4,
    .result-item .entry-title,
    .banner-page-break .author-line,
    .browse-by-category .category-cell .content-col .category-title,
    .search-result-item .content-cell .item-title {
      font-size: 1.3125rem; } }
  @media print, screen and (min-width: 64em) {
    
    .show-as-h4,
    .result-item .entry-title,
    .banner-page-break .author-line,
    .browse-by-category .category-cell .content-col .category-title,
    .search-result-item .content-cell .item-title {
      font-size: 1.3125rem; } }


.show-as-h5,
.post-meta.large .author-name {
  font-size: 1.125rem; }
  @media print, screen and (min-width: 40em) {
    
    .show-as-h5,
    .post-meta.large .author-name {
      font-size: 1.125rem; } }
  @media print, screen and (min-width: 64em) {
    
    .show-as-h5,
    .post-meta.large .author-name {
      font-size: 1.125rem; } }


.show-as-h6,
.archive-content .archive-tile .entry-content .entry-title,
.post-navigation .view-all-button {
  font-size: 1rem; }
  @media print, screen and (min-width: 40em) {
    
    .show-as-h6,
    .archive-content .archive-tile .entry-content .entry-title,
    .post-navigation .view-all-button {
      font-size: 1rem; } }
  @media print, screen and (min-width: 64em) {
    
    .show-as-h6,
    .archive-content .archive-tile .entry-content .entry-title,
    .post-navigation .view-all-button {
      font-size: 1rem; } }

.post-navigation {
  background-color: #ffffff;
  padding: 1rem 0 1.5rem;
  width: 100%;
  font-weight: 600;
  border-top: solid 1px #e6e6e6; }
  @media print, screen and (min-width: 40em) {
    .post-navigation {
      padding-top: 2rem;
      padding-bottom: 2.75rem; } }
  @media screen and (min-width: 75em) {
    .post-navigation {
      padding-top: 3rem;
      padding-bottom: 3.5rem; } }
  .post-navigation .prev-link, .post-navigation .next-link {
    margin-bottom: 1rem;
    text-align: left; }
    @media print, screen and (min-width: 40em) {
      .post-navigation .prev-link, .post-navigation .next-link {
        margin-bottom: 0;
        -webkit-align-self: center;
            -ms-flex-item-align: center;
                    -ms-grid-row-align: center;
                align-self: center; } }
    .post-navigation .prev-link > a, .post-navigation .next-link > a {
      display: inline-block;
      padding-bottom: 0;
      position: relative;
      color: #000000; }
      .post-navigation .prev-link > a:after, .post-navigation .next-link > a:after {
        content: '';
        display: block;
        height: 2px;
        width: 0;
        background: transparent;
        transition: width .5s ease, background-color .5s ease;
        margin-top: 3px; }
      .post-navigation .prev-link > a:hover:after, .post-navigation .prev-link > a:focus:after, .post-navigation .prev-link > a:active:after, .post-navigation .next-link > a:hover:after, .post-navigation .next-link > a:focus:after, .post-navigation .next-link > a:active:after {
        width: 100%;
        background: #000000; }
  .post-navigation .prev-link > a::after {
    position: absolute;
    right: 0rem;
    bottom: -2px; }
  .post-navigation .next-link {
    margin-bottom: 1rem;
    text-align: right; }
    @media print, screen and (min-width: 40em) {
      .post-navigation .next-link {
        margin-bottom: 0;
        -webkit-align-self: center;
            -ms-flex-item-align: center;
                    -ms-grid-row-align: center;
                align-self: center; } }
  .post-navigation .view-all-button {
    text-align: center; }
    .post-navigation .view-all-button a {
      border: 3px solid rgba(1, 86, 151, 0.4);
      letter-spacing: 0rem;
      padding: 0.75rem 1rem;
      margin-bottom: 0; }
      .post-navigation .view-all-button a:hover, .post-navigation .view-all-button a:active, .post-navigation .view-all-button a:focus {
        color: #ffffff;
        background-color: #2DC9D7; }

.banner-page-break {
  position: relative;
  padding-top: 9rem;
  padding-bottom: 9rem;
  color: #ffffff; }
  @media print, screen and (min-width: 40em) {
    .banner-page-break {
      padding-top: 17.5rem;
      padding-bottom: 17.5rem; } }
  @media print, screen and (min-width: 64em) {
    .banner-page-break {
      padding-top: 15rem;
      padding-bottom: 15rem; } }
  @media screen and (min-width: 75em) {
    .banner-page-break {
      padding-top: 18rem;
      padding-bottom: 18rem; } }
  @media screen and (min-width: 90em) {
    .banner-page-break {
      padding-top: 18rem;
      padding-bottom: 18rem; } }
  .banner-page-break::after {
    position: absolute;
    content: '';
    background-color: rgba(3, 48, 52, 0.2);
    top: 0;
    bottom: 0;
    right: 0;
    left: 0;
    z-index: 1; }
  .banner-page-break > .grid-container, .banner-page-break > .top-bar {
    position: relative;
    z-index: 2; }
  .banner-page-break .author-line {
    font-weight: 700 !important;
    margin-top: 4.5rem; }
    @media print, screen and (min-width: 40em) {
      .banner-page-break .author-line {
        margin-top: 8.75rem; } }
    @media print, screen and (min-width: 64em) {
      .banner-page-break .author-line {
        margin-top: 7.5rem; } }
    @media screen and (min-width: 75em) {
      .banner-page-break .author-line {
        margin-top: 9rem; } }
    @media screen and (min-width: 90em) {
      .banner-page-break .author-line {
        margin-top: 9rem; } }
    @media screen and (max-width: 39.9375em) {
      .banner-page-break .author-line {
        font-size: 1.125rem; } }
    @media print, screen and (min-width: 40em) {
      .banner-page-break .author-line {
        margin-top: 1.125rem; } }
  @media print, screen and (min-width: 40em) and (min-width: 40em) {
    .banner-page-break .author-line {
      margin-top: 2.1875rem; } }
  @media print, screen and (min-width: 40em) and (min-width: 64em) {
    .banner-page-break .author-line {
      margin-top: 1.875rem; } }
  @media screen and (min-width: 40em) and (min-width: 75em) {
    .banner-page-break .author-line {
      margin-top: 2.25rem; } }
  @media screen and (min-width: 40em) and (min-width: 90em) {
    .banner-page-break .author-line {
      margin-top: 2.25rem; } }
  .banner-page-break .content-wrapper {
    position: relative;
    z-index: 2;
    text-align: center;
    margin: 0 auto; }
    @media print, screen and (min-width: 64em) {
      .banner-page-break .content-wrapper.left {
        margin: 0 auto 0 0;
        text-align: left; } }
    @media print, screen and (min-width: 64em) {
      .banner-page-break .content-wrapper.right {
        margin: 0 0 0 auto;
        text-align: right; } }
  .banner-page-break .banner-image {
    position: absolute;
    z-index: 0;
    object-fit: cover;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    height: 100%;
    width: 100%; }
  @media screen and (max-width: 39.9375em) {
    .banner-page-break#banner-page-break-3.adjusted-mobile-image .banner-image {
      object-position: 72%; } }

.icon-text-grid {
  padding-top: 1.5rem;
  padding-bottom: 1.5rem; }
  @media print, screen and (min-width: 40em) {
    .icon-text-grid {
      padding-top: 2.91667rem;
      padding-bottom: 2.91667rem; } }
  @media print, screen and (min-width: 64em) {
    .icon-text-grid {
      padding-top: 2.5rem;
      padding-bottom: 2.5rem; } }
  @media screen and (min-width: 75em) {
    .icon-text-grid {
      padding-top: 3rem;
      padding-bottom: 3rem; } }
  @media screen and (min-width: 90em) {
    .icon-text-grid {
      padding-top: 3rem;
      padding-bottom: 3rem; } }
  @media print, screen and (min-width: 64em) {
    .icon-text-grid {
      padding-top: 1.125rem;
      padding-bottom: 1.125rem; } }
  @media print, screen and (min-width: 64em) and (min-width: 40em) {
    .icon-text-grid {
      padding-top: 2.1875rem;
      padding-bottom: 2.1875rem; } }
  @media print, screen and (min-width: 64em) and (min-width: 64em) {
    .icon-text-grid {
      padding-top: 1.875rem;
      padding-bottom: 1.875rem; } }
  @media screen and (min-width: 64em) and (min-width: 75em) {
    .icon-text-grid {
      padding-top: 2.25rem;
      padding-bottom: 2.25rem; } }
  @media screen and (min-width: 64em) and (min-width: 90em) {
    .icon-text-grid {
      padding-top: 2.25rem;
      padding-bottom: 2.25rem; } }
  @media screen and (max-width: 63.9375em) {
    .icon-text-grid .inner-grid {
      margin-bottom: -1.125rem; } }
  @media screen and (max-width: 63.9375em) and (min-width: 40em) {
    .icon-text-grid .inner-grid {
      margin-bottom: -2.1875rem; } }
  @media screen and (max-width: 63.9375em) and (min-width: 64em) {
    .icon-text-grid .inner-grid {
      margin-bottom: -1.875rem; } }
  @media screen and (max-width: 63.9375em) and (min-width: 75em) {
    .icon-text-grid .inner-grid {
      margin-bottom: -2.25rem; } }
  @media screen and (max-width: 63.9375em) and (min-width: 90em) {
    .icon-text-grid .inner-grid {
      margin-bottom: -2.25rem; } }
  .icon-text-grid .inner-grid .cell {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex; }
    @media screen and (max-width: 63.9375em) {
      .icon-text-grid .inner-grid .cell {
        margin-bottom: 1.125rem; } }
  @media screen and (max-width: 63.9375em) and (min-width: 40em) {
    .icon-text-grid .inner-grid .cell {
      margin-bottom: 2.1875rem; } }
  @media screen and (max-width: 63.9375em) and (min-width: 64em) {
    .icon-text-grid .inner-grid .cell {
      margin-bottom: 1.875rem; } }
  @media screen and (max-width: 63.9375em) and (min-width: 75em) {
    .icon-text-grid .inner-grid .cell {
      margin-bottom: 2.25rem; } }
  @media screen and (max-width: 63.9375em) and (min-width: 90em) {
    .icon-text-grid .inner-grid .cell {
      margin-bottom: 2.25rem; } }
    .icon-text-grid .inner-grid .cell .cell-content {
      margin-bottom: 0; }
  .icon-text-grid .icon-wrap {
    min-width: 1.5rem; }
    .icon-text-grid .icon-wrap > img {
      display: block;
      width: auto; }
  .icon-text-grid .content-wrap {
    padding-left: 9px; }
    @media print, screen and (min-width: 40em) {
      .icon-text-grid .content-wrap {
        padding-left: 10px; } }
    @media print, screen and (min-width: 64em) {
      .icon-text-grid .content-wrap {
        padding-left: 12px; } }
    @media screen and (min-width: 75em) {
      .icon-text-grid .content-wrap {
        padding-left: 12px; } }
    @media screen and (min-width: 90em) {
      .icon-text-grid .content-wrap {
        padding-left: 12px; } }

.image-with-bubble {
  padding-top: 4.5rem;
  padding-bottom: 4.5rem; }
  @media print, screen and (min-width: 40em) {
    .image-with-bubble {
      padding-top: 8.75rem;
      padding-bottom: 8.75rem; } }
  @media print, screen and (min-width: 64em) {
    .image-with-bubble {
      padding-top: 7.5rem;
      padding-bottom: 7.5rem; } }
  @media screen and (min-width: 75em) {
    .image-with-bubble {
      padding-top: 9rem;
      padding-bottom: 9rem; } }
  @media screen and (min-width: 90em) {
    .image-with-bubble {
      padding-top: 9rem;
      padding-bottom: 9rem; } }
  @media screen and (min-width: 40em) and (max-width: 63.9375em) {
    .image-with-bubble {
      padding-top: 3rem;
      padding-bottom: 3rem; } }
  @media screen and (min-width: 40em) and (max-width: 63.9375em) and (min-width: 40em) {
    .image-with-bubble {
      padding-top: 5.83333rem;
      padding-bottom: 5.83333rem; } }
  @media screen and (min-width: 40em) and (max-width: 63.9375em) and (min-width: 64em) {
    .image-with-bubble {
      padding-top: 5rem;
      padding-bottom: 5rem; } }
  @media screen and (min-width: 40em) and (max-width: 63.9375em) and (min-width: 75em) {
    .image-with-bubble {
      padding-top: 6rem;
      padding-bottom: 6rem; } }
  @media screen and (min-width: 40em) and (max-width: 63.9375em) and (min-width: 90em) {
    .image-with-bubble {
      padding-top: 6rem;
      padding-bottom: 6rem; } }
  .image-with-bubble .image-cell {
    position: relative;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
    margin-bottom: 2.25rem; }
    @media print, screen and (min-width: 40em) {
      .image-with-bubble .image-cell {
        margin-bottom: 4.375rem; } }
    @media print, screen and (min-width: 64em) {
      .image-with-bubble .image-cell {
        margin-bottom: 3.75rem; } }
    @media screen and (min-width: 75em) {
      .image-with-bubble .image-cell {
        margin-bottom: 4.5rem; } }
    @media screen and (min-width: 90em) {
      .image-with-bubble .image-cell {
        margin-bottom: 4.5rem; } }
    @media print, screen and (min-width: 40em) {
      .image-with-bubble .image-cell {
        margin-bottom: 1.125rem;
        -webkit-justify-content: center;
            -ms-flex-pack: center;
                justify-content: center;
        -webkit-align-items: center;
            -ms-flex-align: center;
                align-items: center; } }
  @media print, screen and (min-width: 40em) and (min-width: 40em) {
    .image-with-bubble .image-cell {
      margin-bottom: 2.1875rem; } }
  @media print, screen and (min-width: 40em) and (min-width: 64em) {
    .image-with-bubble .image-cell {
      margin-bottom: 1.875rem; } }
  @media screen and (min-width: 40em) and (min-width: 75em) {
    .image-with-bubble .image-cell {
      margin-bottom: 2.25rem; } }
  @media screen and (min-width: 40em) and (min-width: 90em) {
    .image-with-bubble .image-cell {
      margin-bottom: 2.25rem; } }
    @media print, screen and (min-width: 64em) {
      .image-with-bubble .image-cell {
        margin-bottom: 0; } }
  .image-with-bubble .text-overlay {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
    font-family: "gorditabold", -apple-system, BlinkMacSystemFont, "Segoe UI", "Roboto", "Oxygen", "Ubuntu", "Cantarell", "Fira Sans", "Droid Sans", "Helvetica Neue", sans-serif;
    color: #212121;
    width: 60%;
    font-size: 0.875rem; }
    @media print, screen and (min-width: 40em) {
      .image-with-bubble .text-overlay {
        position: absolute;
        top: 0;
        z-index: 3;
        left: 0;
        width: auto; } }
    @media print, screen and (min-width: 64em) {
      .image-with-bubble .text-overlay span:first-child {
        font-size: 1.125rem; } }
  .image-with-bubble .image-wrap {
    position: relative;
    height: 100%;
    width: 100%; }
    .image-with-bubble .image-wrap .text-overlay {
      color: #ffffff;
      top: 20%;
      left: 50%;
      -webkit-transform: translateX(-110%);
          -ms-transform: translateX(-110%);
              transform: translateX(-110%); }
    .image-with-bubble .image-wrap .bubble-link {
      position: absolute;
      bottom: 1.5rem;
      padding-left: 2rem;
      padding-right: 2rem;
      left: 50%;
      -webkit-transform: translateX(-140%);
          -ms-transform: translateX(-140%);
              transform: translateX(-140%); }
    .image-with-bubble .image-wrap .goal-image {
      position: relative;
      object-fit: cover;
      border-radius: 50%;
      display: block;
      margin-right: auto;
      margin-left: auto;
      height: 15.9375rem;
      max-height: 15.9375rem;
      width: 15.9375rem; }
      @media print, screen and (min-width: 40em) {
        .image-with-bubble .image-wrap .goal-image {
          height: 21.0625rem;
          max-height: 21.0625rem;
          width: 21.0625rem; } }
      @media print, screen and (min-width: 64em) {
        .image-with-bubble .image-wrap .goal-image {
          height: 30rem;
          max-height: 30rem;
          width: 30rem; } }
  .image-with-bubble .content-cell {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center; }
  .image-with-bubble .section-title, .image-with-bubble .section-content {
    text-align: center; }
    @media print, screen and (min-width: 40em) {
      .image-with-bubble .section-title, .image-with-bubble .section-content {
        margin-bottom: 1.5rem; } }
    @media print, screen and (min-width: 64em) {
      .image-with-bubble .section-title, .image-with-bubble .section-content {
        text-align: left;
        margin-bottom: 2.5rem; } }
  .image-with-bubble .section-content {
    margin-bottom: 2.5rem; }
    .image-with-bubble .section-content p {
      margin-bottom: 0; }
      .image-with-bubble .section-content p:not(:last-child) {
        margin-bottom: 1rem; }
  .image-with-bubble .button-wrap {
    text-align: center; }
    @media print, screen and (min-width: 64em) {
      .image-with-bubble .button-wrap {
        text-align: left; } }

@-webkit-keyframes dash-ticker-down {
  from {
    stroke-dashoffset: 112; }
  to {
    stroke-dashoffset: 0; } }

@keyframes dash-ticker-down {
  from {
    stroke-dashoffset: 112; }
  to {
    stroke-dashoffset: 0; } }

@-webkit-keyframes dash-ticker-up {
  from {
    stroke-dashoffset: 8; }
  to {
    stroke-dashoffset: 112; } }

@keyframes dash-ticker-up {
  from {
    stroke-dashoffset: 8; }
  to {
    stroke-dashoffset: 112; } }

.dash-ticker-line-down path, .icon-bubble-pin .dashed-line path, .bubble-pin .dashed-line path {
  stroke-dashoffset: 8;
  -webkit-animation: dash-ticker-down 5s linear infinite;
          animation: dash-ticker-down 5s linear infinite; }

.dash-ticker-line-up path {
  stroke-dashoffset: 8;
  -webkit-animation: dash-ticker-up 5s linear infinite;
          animation: dash-ticker-up 5s linear infinite; }

@-webkit-keyframes bubble-pin-pulse-small {
  0% {
    -webkit-transform: scale(0.95) translate(-50%, -50%);
            transform: scale(0.95) translate(-50%, -50%);
    box-shadow: 0 0 0 0 rgba(45, 201, 215, 0.7); }
  70% {
    -webkit-transform: scale(0.95) translate(-50%, -50%);
            transform: scale(0.95) translate(-50%, -50%);
    box-shadow: 0 0 0 50px rgba(45, 201, 215, 0); }
  100% {
    -webkit-transform: scale(0.95) translate(-50%, -50%);
            transform: scale(0.95) translate(-50%, -50%);
    box-shadow: 0 0 0 0 rgba(45, 201, 215, 0); } }

@keyframes bubble-pin-pulse-small {
  0% {
    -webkit-transform: scale(0.95) translate(-50%, -50%);
            transform: scale(0.95) translate(-50%, -50%);
    box-shadow: 0 0 0 0 rgba(45, 201, 215, 0.7); }
  70% {
    -webkit-transform: scale(0.95) translate(-50%, -50%);
            transform: scale(0.95) translate(-50%, -50%);
    box-shadow: 0 0 0 50px rgba(45, 201, 215, 0); }
  100% {
    -webkit-transform: scale(0.95) translate(-50%, -50%);
            transform: scale(0.95) translate(-50%, -50%);
    box-shadow: 0 0 0 0 rgba(45, 201, 215, 0); } }

@-webkit-keyframes bubble-pin-pulse {
  0% {
    -webkit-transform: scale(0.95) translate(-50%, -50%);
            transform: scale(0.95) translate(-50%, -50%);
    box-shadow: 0 0 0 0 rgba(45, 201, 215, 0.7); }
  70% {
    -webkit-transform: scale(1.1) translate(-50%, -50%);
            transform: scale(1.1) translate(-50%, -50%);
    box-shadow: 0 0 0 50px rgba(45, 201, 215, 0); }
  100% {
    -webkit-transform: scale(0.95) translate(-50%, -50%);
            transform: scale(0.95) translate(-50%, -50%);
    box-shadow: 0 0 0 0 rgba(45, 201, 215, 0); } }

@keyframes bubble-pin-pulse {
  0% {
    -webkit-transform: scale(0.95) translate(-50%, -50%);
            transform: scale(0.95) translate(-50%, -50%);
    box-shadow: 0 0 0 0 rgba(45, 201, 215, 0.7); }
  70% {
    -webkit-transform: scale(1.1) translate(-50%, -50%);
            transform: scale(1.1) translate(-50%, -50%);
    box-shadow: 0 0 0 50px rgba(45, 201, 215, 0); }
  100% {
    -webkit-transform: scale(0.95) translate(-50%, -50%);
            transform: scale(0.95) translate(-50%, -50%);
    box-shadow: 0 0 0 0 rgba(45, 201, 215, 0); } }

.icon-bubble-pin {
  height: 7.75rem;
  width: 7.75rem;
  position: relative;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  padding: 0.5rem;
  background-color: #2DC9D7;
  border-radius: 50%;
  margin-left: auto;
  margin-right: auto;
  margin-top: 3.39062rem;
  margin-bottom: 7.0625rem; }
  .icon-bubble-pin::after {
    position: absolute;
    top: 50%;
    left: 50%;
    content: '';
    border-radius: 50%;
    background-color: rgba(45, 201, 215, 0.3);
    height: 175%;
    width: 175%;
    -webkit-transform: scale(1) translate(-50%, -50%);
        -ms-transform: scale(1) translate(-50%, -50%);
            transform: scale(1) translate(-50%, -50%);
    -webkit-transform-origin: 0 0;
        -ms-transform-origin: 0 0;
            transform-origin: 0 0;
    -webkit-animation: bubble-pin-pulse-small 2s infinite;
            animation: bubble-pin-pulse-small 2s infinite; }
    @media print, screen and (min-width: 40em) {
      .icon-bubble-pin::after {
        -webkit-animation: bubble-pin-pulse 2s infinite;
                animation: bubble-pin-pulse 2s infinite; } }
    @media screen and (-ms-high-contrast: active), (-ms-high-contrast: none) {
      .icon-bubble-pin::after {
        -webkit-animation: none;
                animation: none; } }
  .icon-bubble-pin.line-top {
    margin-top: 7.0625rem;
    margin-bottom: 3.39062rem; }
    .icon-bubble-pin.line-top .dashed-line {
      top: unset;
      bottom: 50%;
      -webkit-transform: translateX(50%);
          -ms-transform: translateX(50%);
              transform: translateX(50%); }
  .icon-bubble-pin img {
    width: 100%;
    max-width: 4.5rem;
    max-height: 4.5rem;
    position: relative;
    z-index: 2; }
  .icon-bubble-pin .dashed-line {
    height: 10.9375rem;
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translateX(-50%);
        -ms-transform: translateX(-50%);
            transform: translateX(-50%); }

@-webkit-keyframes bubble-pin-pulse-sm {
  0% {
    -webkit-transform: scale(0.95);
            transform: scale(0.95);
    box-shadow: 0 0 0 0 rgba(45, 201, 215, 0.7); }
  70% {
    -webkit-transform: scale(1.1);
            transform: scale(1.1);
    box-shadow: 0 0 0 20px rgba(45, 201, 215, 0); }
  100% {
    -webkit-transform: scale(0.95);
            transform: scale(0.95);
    box-shadow: 0 0 0 0 rgba(45, 201, 215, 0); } }

@keyframes bubble-pin-pulse-sm {
  0% {
    -webkit-transform: scale(0.95);
            transform: scale(0.95);
    box-shadow: 0 0 0 0 rgba(45, 201, 215, 0.7); }
  70% {
    -webkit-transform: scale(1.1);
            transform: scale(1.1);
    box-shadow: 0 0 0 20px rgba(45, 201, 215, 0); }
  100% {
    -webkit-transform: scale(0.95);
            transform: scale(0.95);
    box-shadow: 0 0 0 0 rgba(45, 201, 215, 0); } }

.bubble-pin {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-flow: column;
      -ms-flex-flow: column;
          flex-flow: column;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  width: 20px;
  position: relative; }
  .bubble-pin .dot {
    height: 1.25rem;
    width: 1.25rem;
    background-color: #2DC9D7;
    border-radius: 50%;
    -webkit-transform: scale(1);
        -ms-transform: scale(1);
            transform: scale(1);
    -webkit-animation: bubble-pin-pulse-sm 2s infinite;
            animation: bubble-pin-pulse-sm 2s infinite; }
  .bubble-pin .dashed-line {
    height: 48px; }

.text-cta.with-repeater .section-content {
  margin-bottom: 1.5rem; }
  @media print, screen and (min-width: 40em) {
    .text-cta.with-repeater .section-content {
      margin-bottom: 2.91667rem; } }
  @media print, screen and (min-width: 64em) {
    .text-cta.with-repeater .section-content {
      margin-bottom: 2.5rem; } }
  @media screen and (min-width: 75em) {
    .text-cta.with-repeater .section-content {
      margin-bottom: 3rem; } }
  @media screen and (min-width: 90em) {
    .text-cta.with-repeater .section-content {
      margin-bottom: 3rem; } }

.text-cta .content-cell {
  padding-top: 2.25rem;
  padding-bottom: 2.25rem;
  padding-left: 1.5rem;
  padding-right: 1.5rem;
  margin-bottom: 2.25rem;
  background-color: #f7f7f7;
  border-radius: 20px;
  text-align: center; }
  @media print, screen and (min-width: 40em) {
    .text-cta .content-cell {
      padding-top: 4.375rem;
      padding-bottom: 4.375rem; } }
  @media print, screen and (min-width: 64em) {
    .text-cta .content-cell {
      padding-top: 3.75rem;
      padding-bottom: 3.75rem; } }
  @media screen and (min-width: 75em) {
    .text-cta .content-cell {
      padding-top: 4.5rem;
      padding-bottom: 4.5rem; } }
  @media screen and (min-width: 90em) {
    .text-cta .content-cell {
      padding-top: 4.5rem;
      padding-bottom: 4.5rem; } }
  @media print, screen and (min-width: 40em) {
    .text-cta .content-cell {
      padding-left: 4.375rem;
      padding-right: 4.375rem; } }
  @media print, screen and (min-width: 64em) {
    .text-cta .content-cell {
      padding-left: 6.25rem;
      padding-right: 6.25rem; } }
  @media screen and (min-width: 75em) {
    .text-cta .content-cell {
      padding-left: 7.5rem;
      padding-right: 7.5rem; } }
  @media screen and (min-width: 90em) {
    .text-cta .content-cell {
      padding-left: 7.5rem;
      padding-right: 7.5rem; } }
  @media print, screen and (min-width: 40em) {
    .text-cta .content-cell {
      margin-bottom: 4.375rem; } }
  @media print, screen and (min-width: 64em) {
    .text-cta .content-cell {
      margin-bottom: 3.75rem; } }
  @media screen and (min-width: 75em) {
    .text-cta .content-cell {
      margin-bottom: 4.5rem; } }
  @media screen and (min-width: 90em) {
    .text-cta .content-cell {
      margin-bottom: 4.5rem; } }
  .text-cta .content-cell .section-title {
    margin-bottom: 1rem; }
    @media print, screen and (min-width: 64em) {
      .text-cta .content-cell .section-title {
        margin-bottom: 1.5rem; } }
  .text-cta .content-cell .section-content > * {
    margin-bottom: 0; }
    .text-cta .content-cell .section-content > *:not(:last-child) {
      margin-bottom: 1rem; }
  .text-cta .content-cell .logo-grid {
    margin-bottom: 1.5rem; }
    @media print, screen and (min-width: 40em) {
      .text-cta .content-cell .logo-grid {
        margin-bottom: 2.91667rem; } }
    @media print, screen and (min-width: 64em) {
      .text-cta .content-cell .logo-grid {
        margin-bottom: 2.5rem; } }
    @media screen and (min-width: 75em) {
      .text-cta .content-cell .logo-grid {
        margin-bottom: 3rem; } }
    @media screen and (min-width: 90em) {
      .text-cta .content-cell .logo-grid {
        margin-bottom: 3rem; } }
    .text-cta .content-cell .logo-grid .cell {
      padding-top: 1.5rem;
      padding-bottom: 1.5rem;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      -webkit-align-items: center;
          -ms-flex-align: center;
              align-items: center;
      -webkit-justify-content: center;
          -ms-flex-pack: center;
              justify-content: center;
      padding-right: 1.5rem;
      padding-left: 1.5rem; }
      @media print, screen and (min-width: 40em) {
        .text-cta .content-cell .logo-grid .cell {
          padding-top: 2.91667rem;
          padding-bottom: 2.91667rem; } }
      @media print, screen and (min-width: 64em) {
        .text-cta .content-cell .logo-grid .cell {
          padding-top: 2.5rem;
          padding-bottom: 2.5rem; } }
      @media screen and (min-width: 75em) {
        .text-cta .content-cell .logo-grid .cell {
          padding-top: 3rem;
          padding-bottom: 3rem; } }
      @media screen and (min-width: 90em) {
        .text-cta .content-cell .logo-grid .cell {
          padding-top: 3rem;
          padding-bottom: 3rem; } }
      .text-cta .content-cell .logo-grid .cell:first-child {
        background-color: #ffffff; }
      .text-cta .content-cell .logo-grid .cell:last-child {
        background-color: #2DC9D7; }
  .text-cta .content-cell .column-grid .cta-image {
    margin-bottom: 1.5rem;
    border-radius: 20px; }
  @media screen and (max-width: 63.9375em) {
    .text-cta .content-cell .column-grid .cell:not(:last-child) {
      margin-bottom: 2.25rem; } }
  @media screen and (max-width: 63.9375em) and (min-width: 40em) {
    .text-cta .content-cell .column-grid .cell:not(:last-child) {
      margin-bottom: 4.375rem; } }
  @media screen and (max-width: 63.9375em) and (min-width: 64em) {
    .text-cta .content-cell .column-grid .cell:not(:last-child) {
      margin-bottom: 3.75rem; } }
  @media screen and (max-width: 63.9375em) and (min-width: 75em) {
    .text-cta .content-cell .column-grid .cell:not(:last-child) {
      margin-bottom: 4.5rem; } }
  @media screen and (max-width: 63.9375em) and (min-width: 90em) {
    .text-cta .content-cell .column-grid .cell:not(:last-child) {
      margin-bottom: 4.5rem; } }

.button, a.button, input[type="submit"] {
  background-color: #FCB536;
  color: #212121;
  font-family: "gorditabold", -apple-system, BlinkMacSystemFont, "Segoe UI", "Roboto", "Oxygen", "Ubuntu", "Cantarell", "Fira Sans", "Droid Sans", "Helvetica Neue", sans-serif;
  font-size: 0.875rem;
  padding: 1rem 1.5rem;
  border: none;
  transition: all 0.5s ease;
  width: 100%;
  min-width: 14.5rem;
  border-radius: 1.5625rem;
  text-decoration: none;
  line-height: 1.1;
  margin-bottom: 0; }
  @media print, screen and (min-width: 40em) {
    .button, a.button, input[type="submit"] {
      width: auto;
      padding: 1rem 2rem; } }
  @media print, screen and (min-width: 64em) {
    .button, a.button, input[type="submit"] {
      padding: 1rem 2rem; } }
  .button svg path, a.button svg path, input[type="submit"] svg path {
    transition: all 0.5s ease; }
  .button:hover, .button:active, .button:focus, a.button:hover, a.button:active, a.button:focus, input[type="submit"]:hover, input[type="submit"]:active, input[type="submit"]:focus {
    background-color: #F1A622;
    color: #212121; }
    .button:hover svg path, .button:active svg path, .button:focus svg path, a.button:hover svg path, a.button:active svg path, a.button:focus svg path, input[type="submit"]:hover svg path, input[type="submit"]:active svg path, input[type="submit"]:focus svg path {
      fill: #ffffff !important; }
  .button.button--icon-left, .button.button--icon-right, a.button.button--icon-left, a.button.button--icon-right, input[type="submit"].button--icon-left, input[type="submit"].button--icon-right {
    position: relative; }
    .button.button--icon-left > span, .button.button--icon-left i, .button.button--icon-right > span, .button.button--icon-right i, a.button.button--icon-left > span, a.button.button--icon-left i, a.button.button--icon-right > span, a.button.button--icon-right i, input[type="submit"].button--icon-left > span, input[type="submit"].button--icon-left i, input[type="submit"].button--icon-right > span, input[type="submit"].button--icon-right i {
      position: absolute;
      height: 1.5rem;
      width: 1.5rem;
      top: 50%;
      -webkit-transform: translateY(-50%);
          -ms-transform: translateY(-50%);
              transform: translateY(-50%);
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      -webkit-justify-content: center;
          -ms-flex-pack: center;
              justify-content: center;
      -webkit-align-items: center;
          -ms-flex-align: center;
              align-items: center; }
      .button.button--icon-left > span > img, .button.button--icon-left > span > svg, .button.button--icon-left i > img, .button.button--icon-left i > svg, .button.button--icon-right > span > img, .button.button--icon-right > span > svg, .button.button--icon-right i > img, .button.button--icon-right i > svg, a.button.button--icon-left > span > img, a.button.button--icon-left > span > svg, a.button.button--icon-left i > img, a.button.button--icon-left i > svg, a.button.button--icon-right > span > img, a.button.button--icon-right > span > svg, a.button.button--icon-right i > img, a.button.button--icon-right i > svg, input[type="submit"].button--icon-left > span > img, input[type="submit"].button--icon-left > span > svg, input[type="submit"].button--icon-left i > img, input[type="submit"].button--icon-left i > svg, input[type="submit"].button--icon-right > span > img, input[type="submit"].button--icon-right > span > svg, input[type="submit"].button--icon-right i > img, input[type="submit"].button--icon-right i > svg {
        width: auto;
        height: 1.5rem; }
  .button.button--icon-only, a.button.button--icon-only, input[type="submit"].button--icon-only {
    padding: 0.75rem; }
    @media screen and (min-width: 90em) {
      .button.button--icon-only, a.button.button--icon-only, input[type="submit"].button--icon-only {
        padding: 1rem; } }
    .button.button--icon-only svg, a.button.button--icon-only svg, input[type="submit"].button--icon-only svg {
      display: block; }
  .button.light-bg, a.button.light-bg, input[type="submit"].light-bg {
    background-color: rgba(33, 33, 33, 0.05); }
    .button.light-bg:hover, .button.light-bg:active, .button.light-bg:focus, a.button.light-bg:hover, a.button.light-bg:active, a.button.light-bg:focus, input[type="submit"].light-bg:hover, input[type="submit"].light-bg:active, input[type="submit"].light-bg:focus {
      background-color: rgba(33, 33, 33, 0.1); }
  .button.button--icon-left, a.button.button--icon-left, input[type="submit"].button--icon-left {
    padding-left: 2.75rem; }
    .button.button--icon-left > span, .button.button--icon-left i, a.button.button--icon-left > span, a.button.button--icon-left i, input[type="submit"].button--icon-left > span, input[type="submit"].button--icon-left i {
      left: 0.75rem; }
  .button.button--icon-right, a.button.button--icon-right, input[type="submit"].button--icon-right {
    padding-right: 2.75rem; }
    .button.button--icon-right > span, .button.button--icon-right i, a.button.button--icon-right > span, a.button.button--icon-right i, input[type="submit"].button--icon-right > span, input[type="submit"].button--icon-right i {
      right: 0.75rem; }
  .button.tile-button, .button.inverted, a.button.tile-button, a.button.inverted, input[type="submit"].tile-button, input[type="submit"].inverted {
    background-color: #ffffff;
    color: #2DC9D7;
    border: 0.1875rem solid rgba(45, 201, 215, 0.4); }
    .button.tile-button:hover, .button.tile-button:active, .button.tile-button:focus, .button.inverted:hover, .button.inverted:active, .button.inverted:focus, a.button.tile-button:hover, a.button.tile-button:active, a.button.tile-button:focus, a.button.inverted:hover, a.button.inverted:active, a.button.inverted:focus, input[type="submit"].tile-button:hover, input[type="submit"].tile-button:active, input[type="submit"].tile-button:focus, input[type="submit"].inverted:hover, input[type="submit"].inverted:active, input[type="submit"].inverted:focus {
      background-color: #2DC9D7;
      border-color: #2DC9D7;
      color: #ffffff; }
  .button.button--small, a.button.button--small, input[type="submit"].button--small {
    font-size: 0.875rem;
    padding: 0.5rem; }

@media print, screen and (min-width: 40em) {
  .button--mw {
    min-width: 11.875rem !important; } }

.cards-container {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-flow: row wrap;
      -ms-flex-flow: row wrap;
          flex-flow: row wrap; }
  .cards-container .card {
    width: calc(100% - 1.125rem);
    margin-right: 0.5625rem;
    margin-left: 0.5625rem; }
    .cards-container .card .card-content {
      padding: 1rem; }
    @media print, screen and (min-width: 40em) {
      .cards-container .card {
        width: calc(33.33333% - 0.7rem);
        margin-right: 0.35rem;
        margin-left: 0.35rem; } }

.hero-height {
  min-height: 37.5rem; }
  @media print, screen and (min-width: 40em) {
    .hero-height {
      min-height: 37.5rem;
      height: 37.5rem; } }
  @media print, screen and (min-width: 64em) {
    .hero-height {
      min-height: 50rem;
      height: 50rem; } }

@media screen and (max-width: 63.9375em) {
  .featured-hero {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center; } }

.featured-hero.press, .featured-hero.default-hero {
  height: 25rem;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  position: relative; }
  .featured-hero.press:after, .featured-hero.default-hero:after {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    width: 100%;
    height: 100%;
    z-index: 1;
    background: linear-gradient(90deg, rgba(3, 48, 52, 0.6) 10%, rgba(3, 48, 52, 0.4) 80%); }
    @media print, screen and (min-width: 40em) {
      .featured-hero.press:after, .featured-hero.default-hero:after {
        background: linear-gradient(90deg, rgba(3, 48, 52, 0.6) 0%, rgba(3, 48, 52, 0.1) 100%); } }
    @media print, screen and (min-width: 64em) {
      .featured-hero.press:after, .featured-hero.default-hero:after {
        background: linear-gradient(90deg, rgba(3, 48, 52, 0.6) 0%, rgba(3, 48, 52, 0) 70%); } }
  .featured-hero.press .grid-container, .featured-hero.press .top-bar, .featured-hero.default-hero .grid-container, .featured-hero.default-hero .top-bar {
    width: 100%; }
  @media print, screen and (min-width: 64em) {
    .featured-hero.press, .featured-hero.default-hero {
      height: 31.25rem; } }

.featured-hero.vip-hero {
  padding-top: 9rem;
  padding-bottom: 9rem; }
  @media print, screen and (min-width: 40em) {
    .featured-hero.vip-hero {
      padding-top: 17.5rem;
      padding-bottom: 17.5rem; } }
  @media print, screen and (min-width: 64em) {
    .featured-hero.vip-hero {
      padding-top: 15rem;
      padding-bottom: 15rem; } }
  @media screen and (min-width: 75em) {
    .featured-hero.vip-hero {
      padding-top: 18rem;
      padding-bottom: 18rem; } }
  @media screen and (min-width: 90em) {
    .featured-hero.vip-hero {
      padding-top: 18rem;
      padding-bottom: 18rem; } }
  @media print, screen and (min-width: 40em) {
    .featured-hero.vip-hero {
      padding-top: 6rem;
      padding-bottom: 6rem; } }
  @media print, screen and (min-width: 40em) and (min-width: 40em) {
    .featured-hero.vip-hero {
      padding-top: 11.66667rem;
      padding-bottom: 11.66667rem; } }
  @media print, screen and (min-width: 40em) and (min-width: 64em) {
    .featured-hero.vip-hero {
      padding-top: 10rem;
      padding-bottom: 10rem; } }
  @media screen and (min-width: 40em) and (min-width: 75em) {
    .featured-hero.vip-hero {
      padding-top: 12rem;
      padding-bottom: 12rem; } }
  @media screen and (min-width: 40em) and (min-width: 90em) {
    .featured-hero.vip-hero {
      padding-top: 12rem;
      padding-bottom: 12rem; } }
  @media print, screen and (min-width: 64em) {
    .featured-hero.vip-hero {
      padding-bottom: 7.5rem; } }
  @media print, screen and (min-width: 64em) and (min-width: 40em) {
    .featured-hero.vip-hero {
      padding-bottom: 14.58333rem; } }
  @media print, screen and (min-width: 64em) and (min-width: 64em) {
    .featured-hero.vip-hero {
      padding-bottom: 12.5rem; } }
  @media screen and (min-width: 64em) and (min-width: 75em) {
    .featured-hero.vip-hero {
      padding-bottom: 15rem; } }
  @media screen and (min-width: 64em) and (min-width: 90em) {
    .featured-hero.vip-hero {
      padding-bottom: 15rem; } }
  .featured-hero.vip-hero.has-bg-img, .featured-hero.vip-hero .featured-hero.vip-hero.featured-image {
    position: relative;
    overflow: hidden; }
    .featured-hero.vip-hero.has-bg-img:after, .featured-hero.vip-hero .featured-hero.vip-hero.featured-image:after {
      content: '';
      position: absolute;
      top: 0;
      left: 0;
      right: 0;
      bottom: 0;
      width: 100%;
      height: 100%;
      z-index: 1;
      background: linear-gradient(90deg, rgba(3, 48, 52, 0.6) 0%, rgba(3, 48, 52, 0.4) 70%); }
      @media print, screen and (min-width: 40em) {
        .featured-hero.vip-hero.has-bg-img:after, .featured-hero.vip-hero .featured-hero.vip-hero.featured-image:after {
          background: linear-gradient(90deg, rgba(3, 48, 52, 0.6) 0%, rgba(3, 48, 52, 0.1) 100%); } }
      @media print, screen and (min-width: 64em) {
        .featured-hero.vip-hero.has-bg-img:after, .featured-hero.vip-hero .featured-hero.vip-hero.featured-image:after {
          background: linear-gradient(90deg, rgba(3, 48, 52, 0.6) 0%, rgba(3, 48, 52, 0) 70%); } }
    .featured-hero.vip-hero.has-bg-img > .grid-container, .featured-hero.vip-hero .featured-hero.vip-hero.featured-image > .grid-container, .featured-hero.vip-hero.has-bg-img > .top-bar, .featured-hero.vip-hero .featured-hero.vip-hero.featured-image > .top-bar {
      position: relative;
      z-index: 2; }
  .featured-hero.vip-hero .featured-image {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    width: 100%;
    height: 100%;
    z-index: 0; }
  @media screen and (min-width: 40em) and (max-width: 63.9375em) {
    .featured-hero.vip-hero.front .featured-image {
      -webkit-transform: scale(1.4);
          -ms-transform: scale(1.4);
              transform: scale(1.4);
      top: 6%; } }
  .featured-hero.vip-hero.upgrade {
    padding-top: 7.5rem;
    padding-bottom: 7.5rem; }
    @media print, screen and (min-width: 40em) {
      .featured-hero.vip-hero.upgrade {
        padding-top: 14.58333rem;
        padding-bottom: 14.58333rem; } }
    @media print, screen and (min-width: 64em) {
      .featured-hero.vip-hero.upgrade {
        padding-top: 12.5rem;
        padding-bottom: 12.5rem; } }
    @media screen and (min-width: 75em) {
      .featured-hero.vip-hero.upgrade {
        padding-top: 15rem;
        padding-bottom: 15rem; } }
    @media screen and (min-width: 90em) {
      .featured-hero.vip-hero.upgrade {
        padding-top: 15rem;
        padding-bottom: 15rem; } }
    @media screen and (min-width: 40em) and (max-width: 63.9375em) {
      .featured-hero.vip-hero.upgrade {
        padding-top: 5.625rem;
        padding-bottom: 5.625rem; } }
  @media screen and (min-width: 40em) and (max-width: 63.9375em) and (min-width: 40em) {
    .featured-hero.vip-hero.upgrade {
      padding-top: 10.9375rem;
      padding-bottom: 10.9375rem; } }
  @media screen and (min-width: 40em) and (max-width: 63.9375em) and (min-width: 64em) {
    .featured-hero.vip-hero.upgrade {
      padding-top: 9.375rem;
      padding-bottom: 9.375rem; } }
  @media screen and (min-width: 40em) and (max-width: 63.9375em) and (min-width: 75em) {
    .featured-hero.vip-hero.upgrade {
      padding-top: 11.25rem;
      padding-bottom: 11.25rem; } }
  @media screen and (min-width: 40em) and (max-width: 63.9375em) and (min-width: 90em) {
    .featured-hero.vip-hero.upgrade {
      padding-top: 11.25rem;
      padding-bottom: 11.25rem; } }
    @media screen and (max-width: 63.9375em) {
      .featured-hero.vip-hero.upgrade .featured-image {
        width: 76.5rem;
        right: 0px;
        left: unset; } }
    @media screen and (max-width: 39.9375em) {
      .featured-hero.vip-hero.upgrade .featured-image {
        right: -100px; } }
    .featured-hero.vip-hero.upgrade.has-bg-img:after, .featured-hero.vip-hero .featured-hero.vip-hero.upgrade.featured-image:after {
      opacity: 1;
      background: linear-gradient(90deg, rgba(255, 255, 255, 0.8) 0%, rgba(255, 255, 255, 0) 100%); }
      @media screen and (max-width: 39.9375em) {
        .featured-hero.vip-hero.upgrade.has-bg-img:after, .featured-hero.vip-hero .featured-hero.vip-hero.upgrade.featured-image:after {
          width: 150%; } }
      @media print, screen and (min-width: 40em) {
        .featured-hero.vip-hero.upgrade.has-bg-img:after, .featured-hero.vip-hero .featured-hero.vip-hero.upgrade.featured-image:after {
          background: linear-gradient(90deg, rgba(255, 255, 255, 0.6) 0%, rgba(255, 255, 255, 0) 100%); } }
      @media print, screen and (min-width: 64em) {
        .featured-hero.vip-hero.upgrade.has-bg-img:after, .featured-hero.vip-hero .featured-hero.vip-hero.upgrade.featured-image:after {
          background: linear-gradient(90deg, rgba(255, 255, 255, 0.6) 0%, rgba(255, 255, 255, 0) 70%); } }
    .featured-hero.vip-hero.upgrade.has-bg-img .hero-content .page-title, .featured-hero.vip-hero .featured-hero.vip-hero.upgrade.featured-image .hero-content .page-title, .featured-hero.vip-hero.upgrade.has-bg-img .hero-content .page-content, .featured-hero.vip-hero .featured-hero.vip-hero.upgrade.featured-image .hero-content .page-content {
      color: #000000; }

.featured-hero .logo-wrapper {
  margin-bottom: 1.5rem; }
  @media print, screen and (min-width: 40em) {
    .featured-hero .logo-wrapper {
      margin-bottom: 2.91667rem; } }
  @media print, screen and (min-width: 64em) {
    .featured-hero .logo-wrapper {
      margin-bottom: 2.5rem; } }
  @media screen and (min-width: 75em) {
    .featured-hero .logo-wrapper {
      margin-bottom: 3rem; } }
  @media screen and (min-width: 90em) {
    .featured-hero .logo-wrapper {
      margin-bottom: 3rem; } }
  @media print, screen and (min-width: 40em) {
    .featured-hero .logo-wrapper {
      margin-bottom: 0.75rem; } }
  @media print, screen and (min-width: 40em) and (min-width: 40em) {
    .featured-hero .logo-wrapper {
      margin-bottom: 1.45833rem; } }
  @media print, screen and (min-width: 40em) and (min-width: 64em) {
    .featured-hero .logo-wrapper {
      margin-bottom: 1.25rem; } }
  @media screen and (min-width: 40em) and (min-width: 75em) {
    .featured-hero .logo-wrapper {
      margin-bottom: 1.5rem; } }
  @media screen and (min-width: 40em) and (min-width: 90em) {
    .featured-hero .logo-wrapper {
      margin-bottom: 1.5rem; } }
  .featured-hero .logo-wrapper > img {
    height: 2.5rem;
    width: auto; }
    @media print, screen and (min-width: 40em) {
      .featured-hero .logo-wrapper > img {
        height: 3rem; } }

@media screen and (max-width: 63.9375em) {
  .featured-hero .medium-offset-3 .hero-content {
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    margin-left: auto;
    margin-right: auto;
    text-align: center; } }

.featured-hero .hero-content {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  width: 100%;
  -webkit-flex-flow: column;
      -ms-flex-flow: column;
          flex-flow: column;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center; }
  @media screen and (max-width: 39.9375em) {
    .featured-hero .hero-content {
      -webkit-align-items: center;
          -ms-flex-align: center;
              align-items: center;
      margin-left: auto;
      margin-right: auto;
      text-align: center; } }
  .featured-hero .hero-content .page-title, .featured-hero .hero-content .page-content {
    color: #ffffff; }
  .featured-hero .hero-content .page-title {
    font-weight: 700;
    margin-bottom: 0; }
  .featured-hero .hero-content .page-content {
    line-height: 1.5;
    margin-top: 2.25rem; }
    @media print, screen and (min-width: 40em) {
      .featured-hero .hero-content .page-content {
        margin-top: 4.375rem; } }
    @media print, screen and (min-width: 64em) {
      .featured-hero .hero-content .page-content {
        margin-top: 3.75rem; } }
    @media screen and (min-width: 75em) {
      .featured-hero .hero-content .page-content {
        margin-top: 4.5rem; } }
    @media screen and (min-width: 90em) {
      .featured-hero .hero-content .page-content {
        margin-top: 4.5rem; } }
    @media print, screen and (min-width: 40em) {
      .featured-hero .hero-content .page-content {
        margin-top: 0.75rem; } }
  @media print, screen and (min-width: 40em) and (min-width: 40em) {
    .featured-hero .hero-content .page-content {
      margin-top: 1.45833rem; } }
  @media print, screen and (min-width: 40em) and (min-width: 64em) {
    .featured-hero .hero-content .page-content {
      margin-top: 1.25rem; } }
  @media screen and (min-width: 40em) and (min-width: 75em) {
    .featured-hero .hero-content .page-content {
      margin-top: 1.5rem; } }
  @media screen and (min-width: 40em) and (min-width: 90em) {
    .featured-hero .hero-content .page-content {
      margin-top: 1.5rem; } }
  .featured-hero .hero-content .button {
    margin-top: 3rem;
    width: -webkit-max-content;
    width: -moz-max-content;
    width: max-content; }
    @media print, screen and (min-width: 40em) {
      .featured-hero .hero-content .button {
        margin-top: 5.83333rem; } }
    @media print, screen and (min-width: 64em) {
      .featured-hero .hero-content .button {
        margin-top: 5rem; } }
    @media screen and (min-width: 75em) {
      .featured-hero .hero-content .button {
        margin-top: 6rem; } }
    @media screen and (min-width: 90em) {
      .featured-hero .hero-content .button {
        margin-top: 6rem; } }
    @media print, screen and (min-width: 40em) {
      .featured-hero .hero-content .button {
        margin-top: 1.125rem; } }
  @media print, screen and (min-width: 40em) and (min-width: 40em) {
    .featured-hero .hero-content .button {
      margin-top: 2.1875rem; } }
  @media print, screen and (min-width: 40em) and (min-width: 64em) {
    .featured-hero .hero-content .button {
      margin-top: 1.875rem; } }
  @media screen and (min-width: 40em) and (min-width: 75em) {
    .featured-hero .hero-content .button {
      margin-top: 2.25rem; } }
  @media screen and (min-width: 40em) and (min-width: 90em) {
    .featured-hero .hero-content .button {
      margin-top: 2.25rem; } }

.featured-hero > * {
  z-index: 2;
  position: relative; }

.featured-hero.title-only:after {
  background: #2DC9D7; }

.blog-hero {
  margin-bottom: 2.25rem;
  background-color: #001E62;
  position: relative;
  overflow: hidden; }
  @media print, screen and (min-width: 40em) {
    .blog-hero {
      margin-bottom: 4.375rem; } }
  @media print, screen and (min-width: 64em) {
    .blog-hero {
      margin-bottom: 3.75rem; } }
  @media screen and (min-width: 75em) {
    .blog-hero {
      margin-bottom: 4.5rem; } }
  @media screen and (min-width: 90em) {
    .blog-hero {
      margin-bottom: 4.5rem; } }
  .blog-hero .grid-x .content-cell {
    padding-bottom: 2rem;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center; }
    @media print, screen and (min-width: 40em) {
      .blog-hero .grid-x .content-cell {
        padding-bottom: 3.88889rem; } }
    @media print, screen and (min-width: 64em) {
      .blog-hero .grid-x .content-cell {
        padding-bottom: 3.33333rem; } }
    @media screen and (min-width: 75em) {
      .blog-hero .grid-x .content-cell {
        padding-bottom: 4rem; } }
    @media screen and (min-width: 90em) {
      .blog-hero .grid-x .content-cell {
        padding-bottom: 4rem; } }
    @media screen and (max-width: 39.9375em) {
      .blog-hero .grid-x .content-cell {
        padding-top: 3rem;
        padding-bottom: 3rem; } }
    @media print, screen and (min-width: 40em) {
      .blog-hero .grid-x .content-cell {
        padding-top: 2.57143rem;
        padding-right: 1.125rem; } }
  @media print, screen and (min-width: 40em) and (min-width: 40em) {
    .blog-hero .grid-x .content-cell {
      padding-top: 5rem; } }
  @media print, screen and (min-width: 40em) and (min-width: 64em) {
    .blog-hero .grid-x .content-cell {
      padding-top: 4.28571rem; } }
  @media screen and (min-width: 40em) and (min-width: 75em) {
    .blog-hero .grid-x .content-cell {
      padding-top: 5.14286rem; } }
  @media screen and (min-width: 40em) and (min-width: 90em) {
    .blog-hero .grid-x .content-cell {
      padding-top: 5.14286rem; } }
  @media print, screen and (min-width: 40em) and (min-width: 40em) {
    .blog-hero .grid-x .content-cell {
      padding-right: 2.1875rem; } }
  @media print, screen and (min-width: 40em) and (min-width: 64em) {
    .blog-hero .grid-x .content-cell {
      padding-right: 1.875rem; } }
  @media screen and (min-width: 40em) and (min-width: 75em) {
    .blog-hero .grid-x .content-cell {
      padding-right: 2.25rem; } }
  @media screen and (min-width: 40em) and (min-width: 90em) {
    .blog-hero .grid-x .content-cell {
      padding-right: 2.25rem; } }
    .blog-hero .grid-x .content-cell .post-title {
      color: #2DC9D7;
      margin-bottom: 1rem; }
      @media print, screen and (min-width: 64em) {
        .blog-hero .grid-x .content-cell .post-title {
          margin-bottom: 1.5rem; } }
    .blog-hero .grid-x .content-cell .post-excerpt {
      color: #ffffff;
      margin-bottom: 0; }
    .blog-hero .grid-x .content-cell .button-wrap {
      margin-top: 1rem; }
      @media print, screen and (min-width: 64em) {
        .blog-hero .grid-x .content-cell .button-wrap {
          margin-top: 1.5rem; } }
  .blog-hero .grid-x .image-cell img {
    height: 18.75rem;
    min-width: 100%;
    object-fit: cover;
    position: relative;
    transition: height .25s ease;
    z-index: 2;
    display: block; }
    @media print, screen and (min-width: 40em) {
      .blog-hero .grid-x .image-cell img {
        height: 25rem; } }
    @media print, screen and (min-width: 64em) {
      .blog-hero .grid-x .image-cell img {
        height: 29.625rem; } }
  .blog-hero.blog-single.has-image, .blog-hero.blog-single.has-video {
    position: relative; }
    .blog-hero.blog-single.has-image::before, .blog-hero.blog-single.has-video::before {
      position: absolute;
      background-color: #ffffff;
      height: 11.8125rem;
      width: 100%;
      bottom: 0;
      left: 0;
      z-index: 1; }
      @media print, screen and (min-width: 40em) {
        .blog-hero.blog-single.has-image::before, .blog-hero.blog-single.has-video::before {
          content: ''; } }
  .blog-hero.blog-single .grid-x .content-cell {
    text-align: center; }
    .blog-hero.blog-single .grid-x .content-cell .cat-link {
      margin-bottom: 1rem;
      text-transform: uppercase; }
    .blog-hero.blog-single .grid-x .content-cell .post-excerpt {
      margin-bottom: 1rem; }
      @media print, screen and (min-width: 64em) {
        .blog-hero.blog-single .grid-x .content-cell .post-excerpt {
          margin-bottom: 2.5rem; } }
    .blog-hero.blog-single .grid-x .content-cell .post-meta {
      -webkit-justify-content: center;
          -ms-flex-pack: center;
              justify-content: center; }
      .blog-hero.blog-single .grid-x .content-cell .post-meta .author-name {
        color: #ffffff; }
  .blog-hero.blog-single .grid-x .image-cell {
    position: relative; }
    .blog-hero.blog-single .grid-x .image-cell.has-video:hover, .blog-hero.blog-single .grid-x .image-cell.has-video:active, .blog-hero.blog-single .grid-x .image-cell.has-video:focus {
      cursor: pointer; }
      .blog-hero.blog-single .grid-x .image-cell.has-video:hover .play-button, .blog-hero.blog-single .grid-x .image-cell.has-video:active .play-button, .blog-hero.blog-single .grid-x .image-cell.has-video:focus .play-button {
        transition: opacity .25s ease; }
        .blog-hero.blog-single .grid-x .image-cell.has-video:hover .play-button svg path, .blog-hero.blog-single .grid-x .image-cell.has-video:active .play-button svg path, .blog-hero.blog-single .grid-x .image-cell.has-video:focus .play-button svg path {
          fill: #FCB536; }
    .blog-hero.blog-single .grid-x .image-cell.has-video .play-button {
      height: 3.75rem;
      width: 3.75rem;
      border-radius: 50%;
      background-color: #ffffff;
      z-index: 10;
      position: absolute;
      right: 1.5rem;
      bottom: 1.5rem;
      pointer-events: none; }
      .blog-hero.blog-single .grid-x .image-cell.has-video .play-button svg {
        max-height: 2rem;
        position: absolute;
        top: 50%;
        left: calc(50% + 2px);
        -webkit-transform: translate(-50%, -50%);
            -ms-transform: translate(-50%, -50%);
                transform: translate(-50%, -50%); }
        .blog-hero.blog-single .grid-x .image-cell.has-video .play-button svg path {
          transition: fill .25s ease; }
    .blog-hero.blog-single .grid-x .image-cell .featured-media-wrapper {
      position: relative;
      /**
  extend element the distance of the grid-container padding so that
  it's flush with left/right edges of the screen
   */
      max-width: none; }
      @media screen and (max-width: 39.9375em) {
        .blog-hero.blog-single .grid-x .image-cell .featured-media-wrapper {
          margin-left: -1.5rem;
          margin-right: -1.5rem;
          width: calc(100% + (1.5rem * 2)); } }
      @media print, screen and (min-width: 40em) {
        .blog-hero.blog-single .grid-x .image-cell .featured-media-wrapper {
          border-radius: 20px;
          overflow: hidden; } }
      .blog-hero.blog-single .grid-x .image-cell .featured-media-wrapper img {
        width: 100%; }
    .blog-hero.blog-single .grid-x .image-cell .featured-image {
      transition: opacity .25s ease; }
      .blog-hero.blog-single .grid-x .image-cell .featured-image.overlay {
        position: absolute;
        height: 100%;
        width: 100%;
        top: 0;
        left: 0;
        right: 0;
        z-index: 9; }
  @media screen and (max-width: 39.9375em) {
    .blog-hero.blog-topic::before {
      content: '';
      position: absolute;
      width: 100%;
      height: 100%;
      top: 0;
      left: 0;
      background-color: rgba(0, 30, 98, 0.8);
      z-index: 3; } }
  @media screen and (max-width: 63.9375em) {
    .blog-hero.blog-topic .grid-x .content-cell {
      padding-top: 4.5rem;
      padding-bottom: 4.5rem;
      position: relative;
      z-index: 4; } }
  @media screen and (max-width: 63.9375em) and (min-width: 40em) {
    .blog-hero.blog-topic .grid-x .content-cell {
      padding-top: 8.75rem;
      padding-bottom: 8.75rem; } }
  @media screen and (max-width: 63.9375em) and (min-width: 64em) {
    .blog-hero.blog-topic .grid-x .content-cell {
      padding-top: 7.5rem;
      padding-bottom: 7.5rem; } }
  @media screen and (max-width: 63.9375em) and (min-width: 75em) {
    .blog-hero.blog-topic .grid-x .content-cell {
      padding-top: 9rem;
      padding-bottom: 9rem; } }
  @media screen and (max-width: 63.9375em) and (min-width: 90em) {
    .blog-hero.blog-topic .grid-x .content-cell {
      padding-top: 9rem;
      padding-bottom: 9rem; } }
  @media print, screen and (min-width: 64em) {
    .blog-hero.blog-topic .grid-x .content-cell .post-excerpt {
      font-size: 1rem; } }
  @media screen and (max-width: 39.9375em) {
    .blog-hero.blog-topic .grid-x .image-cell {
      position: absolute;
      height: 100%;
      width: 100%;
      left: 0;
      top: 0; }
      .blog-hero.blog-topic .grid-x .image-cell > img {
        display: block;
        object-fit: cover;
        height: 100%;
        width: auto; } }
  .blog-hero.blog-topic .grid-x .image-cell .featured-media-wrapper {
    /**
  extend element the distance of the grid-container padding so that
  it's flush with left/right edges of the screen
   */
    margin-right: -1.5rem;
    width: calc(100% + (1.5rem * 1));
    min-height: 100%;
    height: 100%; }
    @media print, screen and (min-width: 40em) {
      .blog-hero.blog-topic .grid-x .image-cell .featured-media-wrapper {
        margin-right: -4.375rem;
        width: calc(100% + (4.375rem * 1)); } }
    @media print, screen and (min-width: 64em) {
      .blog-hero.blog-topic .grid-x .image-cell .featured-media-wrapper {
        margin-right: -6.25rem;
        width: calc(100% + (6.25rem * 1)); } }
    @media screen and (min-width: 75em) {
      .blog-hero.blog-topic .grid-x .image-cell .featured-media-wrapper {
        margin-right: -7.5rem;
        width: calc(100% + (7.5rem * 1)); } }
    @media screen and (min-width: 90em) {
      .blog-hero.blog-topic .grid-x .image-cell .featured-media-wrapper {
        margin-right: -7.5rem;
        width: calc(100% + (7.5rem * 1)); } }
  .blog-hero.blog-topic .grid-x .image-cell img {
    display: block;
    width: 100%;
    min-height: 100%;
    height: auto;
    max-height: 100%; }

.dotted, .section-divider hr {
  border-style: dashed;
  margin: 2rem 0; }

ul.horizontal-list {
  list-style-type: none;
  margin: 0rem;
  display: inline-block; }
  ul.horizontal-list > li {
    display: inline-block;
    padding: 0rem 0.25rem; }
  ul.horizontal-list:after {
    content: ' ';
    display: block;
    clear: both; }

ul.social-icon-list a.social-link .fab, ul.social-icon-list a.social-link .far, ul.social-icon-list a.social-link .fal, ul.social-icon-list a.social-link .fa {
  font-size: 1.25rem; }

ul.social-icon-list a.social-link:hover, ul.social-icon-list a.social-link:focus, ul.social-icon-list a.social-link:active {
  opacity: 0.6; }

[data-whatinput="mouse"] a:focus, button:focus [data-whatinput="touch"] a:focus, button:focus {
  outline: none; }

a {
  transition: 0.5s ease;
  opacity: 1;
  /**
SVG Icon Link Variants
 */
  /**
  DEPRECATED
   */ }
  a.reg-link, .entry-content a:not(.button), p a:not(.button), .reveal a:not(.button) {
    font-weight: 700;
    display: inline-block;
    color: #000000;
    border-bottom: 1px dotted rgba(0, 0, 0, 0.5);
    text-decoration: none !important;
    position: relative;
    padding-left: 0;
    padding-right: 0.25rem;
    z-index: 0; }
    a.reg-link:before, .entry-content a:not(.button):before, p a:not(.button):before, .reveal a:not(.button):before {
      content: '';
      width: 0%;
      background: transparent;
      transition: width .2s ease, background-color .2s ease;
      position: absolute;
      left: 0;
      bottom: -1px;
      top: auto;
      height: 1px;
      z-index: -1; }
    a.reg-link:hover, .entry-content a:hover:not(.button), p a:hover:not(.button), .reveal a:hover:not(.button), a.reg-link:focus, .entry-content a:focus:not(.button), p a:focus:not(.button), .reveal a:focus:not(.button) {
      text-decoration: none;
      color: #21a4b0; }
      a.reg-link:hover:before, .entry-content a:not(.button):hover:before, p a:not(.button):hover:before, .reveal a:not(.button):hover:before, a.reg-link:focus:before, .entry-content a:not(.button):focus:before, p a:not(.button):focus:before, .reveal a:not(.button):focus:before {
        width: 100%;
        background-color: #2DC9D7; }
  a.silent {
    height: 100%;
    width: 100%;
    display: block; }
  a.link--icon-right, a.link--icon-left {
    position: relative; }
    a.link--icon-right > span, a.link--icon-right i, a.link--icon-left > span, a.link--icon-left i {
      position: absolute;
      height: 1rem;
      width: 1rem;
      top: 50%;
      -webkit-transform: translateY(-50%);
          -ms-transform: translateY(-50%);
              transform: translateY(-50%);
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      -webkit-justify-content: center;
          -ms-flex-pack: center;
              justify-content: center;
      -webkit-align-items: center;
          -ms-flex-align: center;
              align-items: center;
      transition: all 0.5s ease; }
      a.link--icon-right > span > img, a.link--icon-right > span > svg, a.link--icon-right i > img, a.link--icon-right i > svg, a.link--icon-left > span > img, a.link--icon-left > span > svg, a.link--icon-left i > img, a.link--icon-left i > svg {
        width: auto;
        height: 1rem; }
  a.link--icon-left > span, a.link--icon-left i {
    left: -1.25rem; }
  a.link--icon-left:hover > span, a.link--icon-left:hover i, a.link--icon-left:focus > span, a.link--icon-left:focus i {
    left: -1.5rem; }
  a.link--icon-right > span, a.link--icon-right i {
    right: -1.25rem; }
  a.link--icon-right:hover > span, a.link--icon-right:hover i, a.link--icon-right:focus > span, a.link--icon-right:focus i {
    right: -1.5rem; }
  a.arrow-link {
    position: relative;
    box-sizing: border-box; }
    a.arrow-link:after {
      font-family: 'FontAwesome';
      content: '\f178';
      color: #2DC9D7;
      position: absolute;
      font-size: 18px;
      top: calc(50% - 9px);
      bottom: calc(50% - 9px);
      right: -1rem;
      transition: 0.5s ease; }
    a.arrow-link:hover:after, a.arrow-link:focus:after, a.arrow-link:active:after {
      right: -2rem; }

.bubble-link {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  text-align: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  z-index: 3;
  background-color: #FCB536;
  color: #212121;
  font-family: "gorditabold", -apple-system, BlinkMacSystemFont, "Segoe UI", "Roboto", "Oxygen", "Ubuntu", "Cantarell", "Fira Sans", "Droid Sans", "Helvetica Neue", sans-serif;
  border-radius: 50%;
  text-transform: uppercase;
  padding: 1rem 1.5rem;
  font-size: 0.875rem;
  height: 7.5rem;
  max-height: 7.5rem;
  width: 7.5rem; }
  .bubble-link:hover, .bubble-link:focus {
    background-color: #fdc868;
    color: #212121;
    text-decoration: none; }
  @media print, screen and (min-width: 40em) {
    .bubble-link {
      height: 10rem;
      max-height: 10rem;
      width: 10rem; } }
  @media print, screen and (min-width: 64em) {
    .bubble-link {
      height: 13.25rem;
      max-height: 13.25rem;
      width: 13.25rem; } }
  @media print, screen and (min-width: 40em) {
    .bubble-link {
      font-size: 1.5rem; } }

.breadcrumb-section {
  background-color: #ffffff; }
  .breadcrumb-section ul.breadcrumbs {
    background-color: transparent;
    border: none;
    margin: 0;
    padding-top: 1.8rem;
    padding-bottom: 1.8rem; }
    @media print, screen and (min-width: 40em) {
      .breadcrumb-section ul.breadcrumbs {
        padding-top: 3.5rem;
        padding-bottom: 3.5rem; } }
    @media print, screen and (min-width: 64em) {
      .breadcrumb-section ul.breadcrumbs {
        padding-top: 3rem;
        padding-bottom: 3rem; } }
    @media screen and (min-width: 75em) {
      .breadcrumb-section ul.breadcrumbs {
        padding-top: 3.6rem;
        padding-bottom: 3.6rem; } }
    @media screen and (min-width: 90em) {
      .breadcrumb-section ul.breadcrumbs {
        padding-top: 3.6rem;
        padding-bottom: 3.6rem; } }
    .breadcrumb-section ul.breadcrumbs > li {
      font-size: 1rem;
      text-transform: capitalize;
      font-weight: 600;
      color: rgba(0, 0, 0, 0.5); }
      .breadcrumb-section ul.breadcrumbs > li > a {
        text-transform: capitalize;
        color: #000000;
        text-decoration: none; }
        .breadcrumb-section ul.breadcrumbs > li > a:hover, .breadcrumb-section ul.breadcrumbs > li > a:focus, .breadcrumb-section ul.breadcrumbs > li > a:active {
          text-decoration: underline;
          color: #2DC9D7; }
      .breadcrumb-section ul.breadcrumbs > li:before {
        content: '';
        display: none; }
      .breadcrumb-section ul.breadcrumbs > li:after {
        color: rgba(0, 0, 0, 0.2); }
  .breadcrumb-section .breadcrumbs li:not(:last-child)::after {
    margin: 0 0.5rem; }
  .breadcrumb-section.search-results-breadcrumbs {
    padding-bottom: 0; }
    .breadcrumb-section.search-results-breadcrumbs > .grid-container, .breadcrumb-section.search-results-breadcrumbs > .top-bar {
      padding-bottom: 0; }
    .breadcrumb-section.search-results-breadcrumbs ul.breadcrumbs {
      margin-bottom: 0; }

.reveal {
  height: auto;
  min-height: inherit;
  text-align: center;
  position: relative;
  overflow: hidden;
  padding: 4rem 1.5rem 1.5rem 1.5rem; }
  @media print, screen and (min-width: 40em) {
    .reveal {
      padding: 4rem 2rem 2rem 2rem; } }
  .reveal button.close-button {
    font-size: 2.5rem;
    transition: all 0.5s ease;
    background-color: rgba(0, 0, 0, 0.05);
    color: #000000;
    position: absolute;
    top: 0;
    right: 0;
    padding: 0.25rem 1rem;
    line-height: 1; }
    .reveal button.close-button:focus, .reveal button.close-button:hover, .reveal button.close-button:active {
      background-color: #2DC9D7;
      color: #ffffff; }

.get-started-section {
  position: relative;
  padding-top: 2.25rem;
  padding-bottom: 4.5rem; }
  @media print, screen and (min-width: 40em) {
    .get-started-section {
      padding-top: 4.375rem; } }
  @media print, screen and (min-width: 64em) {
    .get-started-section {
      padding-top: 3.75rem; } }
  @media screen and (min-width: 75em) {
    .get-started-section {
      padding-top: 4.5rem; } }
  @media screen and (min-width: 90em) {
    .get-started-section {
      padding-top: 4.5rem; } }
  @media print, screen and (min-width: 40em) {
    .get-started-section {
      padding-bottom: 8.75rem; } }
  @media print, screen and (min-width: 64em) {
    .get-started-section {
      padding-bottom: 7.5rem; } }
  @media screen and (min-width: 75em) {
    .get-started-section {
      padding-bottom: 9rem; } }
  @media screen and (min-width: 90em) {
    .get-started-section {
      padding-bottom: 9rem; } }
  .get-started-section::after {
    background: linear-gradient(180deg, rgba(255, 255, 255, 0) 0%, #ffffff 80%);
    position: absolute;
    content: '';
    top: 0;
    bottom: 0;
    right: 0;
    left: 0;
    z-index: 0; }
  .get-started-section > * {
    position: relative;
    z-index: 2; }

.bubble-pin-section {
  position: relative; }
  .bubble-pin-section .section-cell {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-flow: column;
        -ms-flex-flow: column;
            flex-flow: column;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center; }
  .bubble-pin-section .text-wrapper {
    text-align: center;
    width: 100%; }
    .bubble-pin-section .text-wrapper .section-title {
      margin-top: 2rem; }
    .bubble-pin-section .text-wrapper .section-content {
      margin-top: 1.125rem; }
      @media print, screen and (min-width: 40em) {
        .bubble-pin-section .text-wrapper .section-content {
          margin-top: 2.1875rem; } }
      @media print, screen and (min-width: 64em) {
        .bubble-pin-section .text-wrapper .section-content {
          margin-top: 1.875rem; } }
      @media screen and (min-width: 75em) {
        .bubble-pin-section .text-wrapper .section-content {
          margin-top: 2.25rem; } }
      @media screen and (min-width: 90em) {
        .bubble-pin-section .text-wrapper .section-content {
          margin-top: 2.25rem; } }
  .bubble-pin-section .button {
    margin-top: 1.125rem; }
    @media print, screen and (min-width: 40em) {
      .bubble-pin-section .button {
        margin-top: 2.1875rem; } }
    @media print, screen and (min-width: 64em) {
      .bubble-pin-section .button {
        margin-top: 1.875rem; } }
    @media screen and (min-width: 75em) {
      .bubble-pin-section .button {
        margin-top: 2.25rem; } }
    @media screen and (min-width: 90em) {
      .bubble-pin-section .button {
        margin-top: 2.25rem; } }

@media print, screen and (min-width: 64em) {
  .goal-section {
    padding-top: 3rem;
    padding-bottom: 3rem; } }
  @media print, screen and (min-width: 64em) and (min-width: 40em) {
    .goal-section {
      padding-top: 5.83333rem;
      padding-bottom: 5.83333rem; } }
  @media print, screen and (min-width: 64em) and (min-width: 64em) {
    .goal-section {
      padding-top: 5rem;
      padding-bottom: 5rem; } }
  @media screen and (min-width: 64em) and (min-width: 75em) {
    .goal-section {
      padding-top: 6rem;
      padding-bottom: 6rem; } }
  @media screen and (min-width: 64em) and (min-width: 90em) {
    .goal-section {
      padding-top: 6rem;
      padding-bottom: 6rem; } }

.goal-section .goal-section-grid {
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center; }

.goal-section .goal-cta-col {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center; }
  @media print, screen and (min-width: 64em) {
    .goal-section .goal-cta-col {
      -webkit-justify-content: flex-end;
          -ms-flex-pack: end;
              justify-content: flex-end; } }
  .goal-section .goal-cta-col .cta-wrapper {
    width: auto;
    position: relative; }
    @media screen and (max-width: 39.9375em) {
      .goal-section .goal-cta-col .cta-wrapper {
        margin-right: calc( (1.5rem + 20%)*-1);
        width: calc(100% + (1.5rem * 1));
        max-width: none; } }
    @media print, screen and (min-width: 40em) {
      .goal-section .goal-cta-col .cta-wrapper {
        max-width: calc(24.375rem + 10%); } }
    @media print, screen and (min-width: 64em) {
      .goal-section .goal-cta-col .cta-wrapper {
        max-width: none; } }
    .goal-section .goal-cta-col .cta-wrapper .main-image {
      border-radius: 20px;
      object-fit: cover;
      width: 100%;
      height: 21.25rem;
      position: relative;
      z-index: 0; }
      @media print, screen and (min-width: 40em) {
        .goal-section .goal-cta-col .cta-wrapper .main-image {
          height: 24.375rem; } }
      @media print, screen and (min-width: 64em) {
        .goal-section .goal-cta-col .cta-wrapper .main-image {
          height: 31.25rem;
          width: 90%;
          max-width: none;
          margin-left: 10%; } }
    .goal-section .goal-cta-col .cta-wrapper .graphic {
      position: absolute;
      width: auto;
      max-width: none;
      height: 8.125rem;
      display: block;
      left: 0;
      bottom: 10%;
      margin-left: calc((15% + 20px) * -1);
      z-index: 1; }
      @media print, screen and (min-width: 40em) {
        .goal-section .goal-cta-col .cta-wrapper .graphic {
          height: 10rem;
          margin-left: calc((15% + 40px) * -1); } }
      @media print, screen and (min-width: 64em) {
        .goal-section .goal-cta-col .cta-wrapper .graphic {
          margin-left: -40px; } }

.goal-section .content-col {
  padding-top: 2.25rem; }
  .goal-section .content-col .content-wrapper {
    max-width: 29.1875rem; }
    @media screen and (max-width: 63.9375em) {
      .goal-section .content-col .content-wrapper {
        margin: 0 auto;
        text-align: center; } }
    @media screen and (max-width: 63.9375em) {
      .goal-section .content-col .content-wrapper .bubble-pin {
        margin: 0 auto; } }
    .goal-section .content-col .content-wrapper .goal-section-title {
      margin-top: 2.25rem;
      margin-bottom: 2.25rem; }

.guidance-section {
  padding-top: 4.5rem;
  padding-bottom: 4.5rem; }
  @media print, screen and (min-width: 40em) {
    .guidance-section {
      padding-top: 8.75rem;
      padding-bottom: 8.75rem; } }
  @media print, screen and (min-width: 64em) {
    .guidance-section {
      padding-top: 7.5rem;
      padding-bottom: 7.5rem; } }
  @media screen and (min-width: 75em) {
    .guidance-section {
      padding-top: 9rem;
      padding-bottom: 9rem; } }
  @media screen and (min-width: 90em) {
    .guidance-section {
      padding-top: 9rem;
      padding-bottom: 9rem; } }
  .guidance-section .image-collection-wrapper {
    /**
  extend element the distance of the grid-container padding so that
  it's flush with left/right edges of the screen
   */
    position: relative; }
    @media screen and (max-width: 39.9375em) {
      .guidance-section .image-collection-wrapper {
        margin-left: -1.5rem;
        margin-right: -1.5rem;
        width: calc(100% + (1.5rem * 2)); } }
    .guidance-section .image-collection-wrapper .guidance-section-side-image {
      height: 33.1875rem;
      width: 100%;
      object-fit: cover;
      margin-bottom: 6rem;
      position: relative;
      z-index: 0; }
      @media print, screen and (min-width: 40em) {
        .guidance-section .image-collection-wrapper .guidance-section-side-image {
          margin-bottom: 11.66667rem; } }
      @media print, screen and (min-width: 64em) {
        .guidance-section .image-collection-wrapper .guidance-section-side-image {
          margin-bottom: 10rem; } }
      @media screen and (min-width: 75em) {
        .guidance-section .image-collection-wrapper .guidance-section-side-image {
          margin-bottom: 12rem; } }
      @media screen and (min-width: 90em) {
        .guidance-section .image-collection-wrapper .guidance-section-side-image {
          margin-bottom: 12rem; } }
      @media print, screen and (min-width: 40em) {
        .guidance-section .image-collection-wrapper .guidance-section-side-image {
          border-radius: 20px;
          width: 70%;
          margin-right: auto;
          margin-left: 0;
          height: 28.75rem;
          margin-bottom: 2.25rem; } }
  @media print, screen and (min-width: 40em) and (min-width: 40em) {
    .guidance-section .image-collection-wrapper .guidance-section-side-image {
      margin-bottom: 4.375rem; } }
  @media print, screen and (min-width: 40em) and (min-width: 64em) {
    .guidance-section .image-collection-wrapper .guidance-section-side-image {
      margin-bottom: 3.75rem; } }
  @media screen and (min-width: 40em) and (min-width: 75em) {
    .guidance-section .image-collection-wrapper .guidance-section-side-image {
      margin-bottom: 4.5rem; } }
  @media screen and (min-width: 40em) and (min-width: 90em) {
    .guidance-section .image-collection-wrapper .guidance-section-side-image {
      margin-bottom: 4.5rem; } }
      @media print, screen and (min-width: 64em) {
        .guidance-section .image-collection-wrapper .guidance-section-side-image {
          width: 100%;
          height: 37.5rem; } }
    .guidance-section .image-collection-wrapper .card-graphic {
      height: auto;
      position: absolute;
      display: block;
      left: 50%;
      object-fit: contain;
      bottom: -44px;
      width: 100%;
      max-width: 20rem;
      z-index: 1; }
      @media screen and (max-width: 39.9375em) {
        .guidance-section .image-collection-wrapper .card-graphic {
          margin-left: calc( ( ( 19.375rem / 2) + (44px / 6) ) *-1); } }
      @media print, screen and (min-width: 40em) {
        .guidance-section .image-collection-wrapper .card-graphic {
          height: 23.125rem;
          right: -44px;
          width: auto;
          max-width: none;
          left: auto; } }
      @media print, screen and (min-width: 64em) {
        .guidance-section .image-collection-wrapper .card-graphic {
          right: -30%; } }
  @media print, screen and (min-width: 64em) {
    .guidance-section .content-col {
      padding-left: 2.25rem; } }
  @media print, screen and (min-width: 64em) and (min-width: 40em) {
    .guidance-section .content-col {
      padding-left: 4.375rem; } }
  @media print, screen and (min-width: 64em) and (min-width: 64em) {
    .guidance-section .content-col {
      padding-left: 3.75rem; } }
  @media screen and (min-width: 64em) and (min-width: 75em) {
    .guidance-section .content-col {
      padding-left: 4.5rem; } }
  @media screen and (min-width: 64em) and (min-width: 90em) {
    .guidance-section .content-col {
      padding-left: 4.5rem; } }
  .guidance-section .content-wrapper {
    padding-top: 4.5rem;
    margin: 0 auto;
    text-align: center;
    max-width: 21rem; }
    @media print, screen and (min-width: 40em) {
      .guidance-section .content-wrapper {
        padding-top: 8.75rem; } }
    @media print, screen and (min-width: 64em) {
      .guidance-section .content-wrapper {
        padding-top: 7.5rem; } }
    @media screen and (min-width: 75em) {
      .guidance-section .content-wrapper {
        padding-top: 9rem; } }
    @media screen and (min-width: 90em) {
      .guidance-section .content-wrapper {
        padding-top: 9rem; } }
    @media print, screen and (min-width: 40em) {
      .guidance-section .content-wrapper {
        padding-top: 2.25rem; } }
  @media print, screen and (min-width: 40em) and (min-width: 40em) {
    .guidance-section .content-wrapper {
      padding-top: 4.375rem; } }
  @media print, screen and (min-width: 40em) and (min-width: 64em) {
    .guidance-section .content-wrapper {
      padding-top: 3.75rem; } }
  @media screen and (min-width: 40em) and (min-width: 75em) {
    .guidance-section .content-wrapper {
      padding-top: 4.5rem; } }
  @media screen and (min-width: 40em) and (min-width: 90em) {
    .guidance-section .content-wrapper {
      padding-top: 4.5rem; } }
    @media print, screen and (min-width: 64em) {
      .guidance-section .content-wrapper {
        padding: 0;
        margin: 0;
        text-align: left; } }
    .guidance-section .content-wrapper .bubble-pin {
      margin: 0 auto 1.5rem; }
      @media print, screen and (min-width: 64em) {
        .guidance-section .content-wrapper .bubble-pin {
          margin: 0 0 1.5rem; } }
    .guidance-section .content-wrapper .guidance-section-title {
      margin-bottom: 1.5rem; }
    .guidance-section .content-wrapper .guidance-section-content {
      margin-bottom: 1.5rem; }

.tracking-section {
  padding-top: 4.5rem;
  padding-bottom: 4.5rem; }
  @media print, screen and (min-width: 40em) {
    .tracking-section {
      padding-top: 8.75rem;
      padding-bottom: 8.75rem; } }
  @media print, screen and (min-width: 64em) {
    .tracking-section {
      padding-top: 7.5rem;
      padding-bottom: 7.5rem; } }
  @media screen and (min-width: 75em) {
    .tracking-section {
      padding-top: 9rem;
      padding-bottom: 9rem; } }
  @media screen and (min-width: 90em) {
    .tracking-section {
      padding-top: 9rem;
      padding-bottom: 9rem; } }
  .tracking-section .content-col {
    margin-bottom: 2.25rem; }
    @media print, screen and (min-width: 40em) {
      .tracking-section .content-col {
        margin-bottom: 4.375rem; } }
    @media print, screen and (min-width: 64em) {
      .tracking-section .content-col {
        margin-bottom: 3.75rem; } }
    @media screen and (min-width: 75em) {
      .tracking-section .content-col {
        margin-bottom: 4.5rem; } }
    @media screen and (min-width: 90em) {
      .tracking-section .content-col {
        margin-bottom: 4.5rem; } }
    .tracking-section .content-col .content-wrapper {
      margin: 0 0 0 auto; }
      @media screen and (max-width: 63.9375em) {
        .tracking-section .content-col .content-wrapper {
          margin: 0 auto;
          text-align: center; } }
      @media print, screen and (min-width: 64em) {
        .tracking-section .content-col .content-wrapper {
          width: 95%;
          margin-right: auto; } }
      .tracking-section .content-col .content-wrapper .bubble-pin {
        margin: 0 auto 1.5rem; }
        @media print, screen and (min-width: 64em) {
          .tracking-section .content-col .content-wrapper .bubble-pin {
            margin: 0 0 1.5rem; } }
      .tracking-section .content-col .content-wrapper .tracking-section-title {
        margin-bottom: 2.25rem; }
        @media print, screen and (min-width: 40em) {
          .tracking-section .content-col .content-wrapper .tracking-section-title {
            margin-bottom: 4.375rem; } }
        @media print, screen and (min-width: 64em) {
          .tracking-section .content-col .content-wrapper .tracking-section-title {
            margin-bottom: 3.75rem; } }
        @media screen and (min-width: 75em) {
          .tracking-section .content-col .content-wrapper .tracking-section-title {
            margin-bottom: 4.5rem; } }
        @media screen and (min-width: 90em) {
          .tracking-section .content-col .content-wrapper .tracking-section-title {
            margin-bottom: 4.5rem; } }
        @media print, screen and (min-width: 40em) {
          .tracking-section .content-col .content-wrapper .tracking-section-title {
            margin-bottom: 1.125rem; } }
  @media print, screen and (min-width: 40em) and (min-width: 40em) {
    .tracking-section .content-col .content-wrapper .tracking-section-title {
      margin-bottom: 2.1875rem; } }
  @media print, screen and (min-width: 40em) and (min-width: 64em) {
    .tracking-section .content-col .content-wrapper .tracking-section-title {
      margin-bottom: 1.875rem; } }
  @media screen and (min-width: 40em) and (min-width: 75em) {
    .tracking-section .content-col .content-wrapper .tracking-section-title {
      margin-bottom: 2.25rem; } }
  @media screen and (min-width: 40em) and (min-width: 90em) {
    .tracking-section .content-col .content-wrapper .tracking-section-title {
      margin-bottom: 2.25rem; } }
        @media print, screen and (min-width: 64em) {
          .tracking-section .content-col .content-wrapper .tracking-section-title {
            margin-bottom: 1.125rem; } }
  @media print, screen and (min-width: 64em) and (min-width: 40em) {
    .tracking-section .content-col .content-wrapper .tracking-section-title {
      margin-bottom: 2.1875rem; } }
  @media print, screen and (min-width: 64em) and (min-width: 64em) {
    .tracking-section .content-col .content-wrapper .tracking-section-title {
      margin-bottom: 1.875rem; } }
  @media screen and (min-width: 64em) and (min-width: 75em) {
    .tracking-section .content-col .content-wrapper .tracking-section-title {
      margin-bottom: 2.25rem; } }
  @media screen and (min-width: 64em) and (min-width: 90em) {
    .tracking-section .content-col .content-wrapper .tracking-section-title {
      margin-bottom: 2.25rem; } }
  .tracking-section .image-cont {
    position: relative; }
    .tracking-section .image-cont .image-cell {
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      -webkit-align-items: baseline;
          -ms-flex-align: baseline;
              align-items: baseline; }
      .tracking-section .image-cont .image-cell--1 {
        -webkit-justify-content: flex-end;
            -ms-flex-pack: end;
                justify-content: flex-end; }
      .tracking-section .image-cont .image-cell--2 {
        -webkit-justify-content: flex-start;
            -ms-flex-pack: start;
                justify-content: flex-start; }
    .tracking-section .image-cont .tracking-section-image {
      height: auto;
      box-shadow: 0rem 4px 40px rgba(0, 0, 0, 0.1);
      border-radius: 30px; }
      @media screen and (max-width: 39.9375em) {
        .tracking-section .image-cont .tracking-section-image {
          width: calc(100% + (1.5rem * 2));
          max-width: none; } }
      @media print, screen and (min-width: 40em) {
        .tracking-section .image-cont .tracking-section-image {
          width: 97%; } }
      .tracking-section .image-cont .tracking-section-image--1 {
        margin-right: auto; }
        @media screen and (max-width: 39.9375em) {
          .tracking-section .image-cont .tracking-section-image--1 {
            margin-left: -1.5rem; } }
      .tracking-section .image-cont .tracking-section-image--2 {
        margin-left: auto;
        margin-top: 6rem; }
        @media print, screen and (min-width: 40em) {
          .tracking-section .image-cont .tracking-section-image--2 {
            margin-top: 11.66667rem; } }
        @media print, screen and (min-width: 64em) {
          .tracking-section .image-cont .tracking-section-image--2 {
            margin-top: 10rem; } }
        @media screen and (min-width: 75em) {
          .tracking-section .image-cont .tracking-section-image--2 {
            margin-top: 12rem; } }
        @media screen and (min-width: 90em) {
          .tracking-section .image-cont .tracking-section-image--2 {
            margin-top: 12rem; } }
        @media screen and (max-width: 39.9375em) {
          .tracking-section .image-cont .tracking-section-image--2 {
            margin-right: -1.5rem; } }
        @media print, screen and (min-width: 40em) {
          .tracking-section .image-cont .tracking-section-image--2 {
            margin-top: 4.5rem; } }
  @media print, screen and (min-width: 40em) and (min-width: 40em) {
    .tracking-section .image-cont .tracking-section-image--2 {
      margin-top: 8.75rem; } }
  @media print, screen and (min-width: 40em) and (min-width: 64em) {
    .tracking-section .image-cont .tracking-section-image--2 {
      margin-top: 7.5rem; } }
  @media screen and (min-width: 40em) and (min-width: 75em) {
    .tracking-section .image-cont .tracking-section-image--2 {
      margin-top: 9rem; } }
  @media screen and (min-width: 40em) and (min-width: 90em) {
    .tracking-section .image-cont .tracking-section-image--2 {
      margin-top: 9rem; } }
        @media print, screen and (min-width: 64em) {
          .tracking-section .image-cont .tracking-section-image--2 {
            width: 95%;
            margin-top: -4.5rem; } }
  @media print, screen and (min-width: 64em) and (min-width: 40em) {
    .tracking-section .image-cont .tracking-section-image--2 {
      margin-top: -8.75rem; } }
  @media print, screen and (min-width: 64em) and (min-width: 64em) {
    .tracking-section .image-cont .tracking-section-image--2 {
      margin-top: -7.5rem; } }
  @media screen and (min-width: 64em) and (min-width: 75em) {
    .tracking-section .image-cont .tracking-section-image--2 {
      margin-top: -9rem; } }
  @media screen and (min-width: 64em) and (min-width: 90em) {
    .tracking-section .image-cont .tracking-section-image--2 {
      margin-top: -9rem; } }

.progress-section {
  padding-top: 4.5rem;
  padding-bottom: 4.5rem; }
  @media print, screen and (min-width: 40em) {
    .progress-section {
      padding-top: 8.75rem;
      padding-bottom: 8.75rem; } }
  @media print, screen and (min-width: 64em) {
    .progress-section {
      padding-top: 7.5rem;
      padding-bottom: 7.5rem; } }
  @media screen and (min-width: 75em) {
    .progress-section {
      padding-top: 9rem;
      padding-bottom: 9rem; } }
  @media screen and (min-width: 90em) {
    .progress-section {
      padding-top: 9rem;
      padding-bottom: 9rem; } }
  .progress-section .image-collection-wrapper {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-align-items: baseline;
        -ms-flex-align: baseline;
            align-items: baseline;
    -webkit-justify-content: flex-end;
        -ms-flex-pack: end;
            justify-content: flex-end;
    position: relative; }
    @media print, screen and (min-width: 40em) {
      .progress-section .image-collection-wrapper {
        -webkit-justify-content: center;
            -ms-flex-pack: center;
                justify-content: center; } }
    @media print, screen and (min-width: 64em) {
      .progress-section .image-collection-wrapper {
        -webkit-justify-content: flex-end;
            -ms-flex-pack: end;
                justify-content: flex-end;
        height: 100%; } }
  .progress-section .progress-section-side-image {
    border-radius: 20px;
    width: 100%;
    height: 19.625rem;
    object-fit: cover;
    margin-top: 2.25rem;
    position: relative;
    z-index: 0; }
    @media print, screen and (min-width: 40em) {
      .progress-section .progress-section-side-image {
        margin-top: 4.375rem; } }
    @media print, screen and (min-width: 64em) {
      .progress-section .progress-section-side-image {
        margin-top: 3.75rem; } }
    @media screen and (min-width: 75em) {
      .progress-section .progress-section-side-image {
        margin-top: 4.5rem; } }
    @media screen and (min-width: 90em) {
      .progress-section .progress-section-side-image {
        margin-top: 4.5rem; } }
    @media screen and (max-width: 39.9375em) {
      .progress-section .progress-section-side-image {
        margin-left: -1.5rem;
        margin-right: 10%;
        width: calc(100% + (1.5rem * 2));
        max-width: none; } }
    @media print, screen and (min-width: 40em) {
      .progress-section .progress-section-side-image {
        margin-top: 4.5rem;
        width: 70%;
        min-height: 0;
        height: 24.75rem;
        margin-right: auto; } }
  @media print, screen and (min-width: 40em) and (min-width: 40em) {
    .progress-section .progress-section-side-image {
      margin-top: 8.75rem; } }
  @media print, screen and (min-width: 40em) and (min-width: 64em) {
    .progress-section .progress-section-side-image {
      margin-top: 7.5rem; } }
  @media screen and (min-width: 40em) and (min-width: 75em) {
    .progress-section .progress-section-side-image {
      margin-top: 9rem; } }
  @media screen and (min-width: 40em) and (min-width: 90em) {
    .progress-section .progress-section-side-image {
      margin-top: 9rem; } }
    @media print, screen and (min-width: 64em) {
      .progress-section .progress-section-side-image {
        width: 100%;
        height: calc(100% - 7.5rem);
        min-height: 31.25rem;
        margin-left: auto;
        margin-right: 0; } }
  .progress-section .card-graphic {
    position: absolute;
    width: auto;
    height: 15.0625rem;
    max-width: none;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    top: -44px;
    left: 20%;
    z-index: 1; }
    @media print, screen and (min-width: 40em) {
      .progress-section .card-graphic {
        height: 17rem;
        right: -88px;
        left: unset; } }
    @media print, screen and (min-width: 64em) {
      .progress-section .card-graphic {
        right: -50%;
        height: 20.125rem; } }
  @media print, screen and (min-width: 64em) {
    .progress-section .content-col {
      padding-top: 0;
      margin-bottom: 2.25rem; } }
  @media print, screen and (min-width: 64em) and (min-width: 40em) {
    .progress-section .content-col {
      margin-bottom: 4.375rem; } }
  @media print, screen and (min-width: 64em) and (min-width: 64em) {
    .progress-section .content-col {
      margin-bottom: 3.75rem; } }
  @media screen and (min-width: 64em) and (min-width: 75em) {
    .progress-section .content-col {
      margin-bottom: 4.5rem; } }
  @media screen and (min-width: 64em) and (min-width: 90em) {
    .progress-section .content-col {
      margin-bottom: 4.5rem; } }
  .progress-section .content-col .content-wrapper {
    margin-right: auto;
    margin-left: auto;
    padding-top: 4.5rem;
    text-align: center; }
    @media print, screen and (min-width: 40em) {
      .progress-section .content-col .content-wrapper {
        padding-top: 8.75rem; } }
    @media print, screen and (min-width: 64em) {
      .progress-section .content-col .content-wrapper {
        padding-top: 7.5rem; } }
    @media screen and (min-width: 75em) {
      .progress-section .content-col .content-wrapper {
        padding-top: 9rem; } }
    @media screen and (min-width: 90em) {
      .progress-section .content-col .content-wrapper {
        padding-top: 9rem; } }
    @media print, screen and (min-width: 40em) {
      .progress-section .content-col .content-wrapper {
        padding-top: 2.25rem; } }
  @media print, screen and (min-width: 40em) and (min-width: 40em) {
    .progress-section .content-col .content-wrapper {
      padding-top: 4.375rem; } }
  @media print, screen and (min-width: 40em) and (min-width: 64em) {
    .progress-section .content-col .content-wrapper {
      padding-top: 3.75rem; } }
  @media screen and (min-width: 40em) and (min-width: 75em) {
    .progress-section .content-col .content-wrapper {
      padding-top: 4.5rem; } }
  @media screen and (min-width: 40em) and (min-width: 90em) {
    .progress-section .content-col .content-wrapper {
      padding-top: 4.5rem; } }
    @media print, screen and (min-width: 64em) {
      .progress-section .content-col .content-wrapper {
        text-align: left;
        margin-top: calc(20.125rem - 44px);
        padding-top: 0; } }
    .progress-section .content-col .content-wrapper .bubble-pin {
      margin: 0 auto 1.5rem; }
      @media print, screen and (min-width: 64em) {
        .progress-section .content-col .content-wrapper .bubble-pin {
          margin: 0 0 1.5rem; } }
    .progress-section .content-col .content-wrapper .progress-section-title {
      margin-bottom: 1.5rem; }

.community-section {
  margin-bottom: 4.5rem; }
  @media print, screen and (min-width: 40em) {
    .community-section {
      margin-bottom: 8.75rem; } }
  @media print, screen and (min-width: 64em) {
    .community-section {
      margin-bottom: 7.5rem; } }
  @media screen and (min-width: 75em) {
    .community-section {
      margin-bottom: 9rem; } }
  @media screen and (min-width: 90em) {
    .community-section {
      margin-bottom: 9rem; } }
  .community-section .banner-image {
    height: 50rem;
    z-index: 1;
    width: 100%;
    overflow: hidden;
    position: relative; }
    .community-section .banner-image::after {
      position: absolute;
      content: '';
      background-color: rgba(3, 48, 52, 0.2);
      top: 0;
      bottom: 0;
      right: 0;
      left: 0;
      z-index: 0; }
    .community-section .banner-image > img {
      object-fit: cover;
      width: 100%;
      height: 100%;
      display: block; }
  .community-section > .grid-container, .community-section > .top-bar {
    position: relative;
    z-index: 2;
    -webkit-transform: translateY(-11.25rem);
        -ms-transform: translateY(-11.25rem);
            transform: translateY(-11.25rem);
    margin-bottom: -11.25rem; }
    @media print, screen and (min-width: 40em) {
      .community-section > .grid-container, .community-section > .top-bar {
        -webkit-transform: translateY(-16.5625rem);
            -ms-transform: translateY(-16.5625rem);
                transform: translateY(-16.5625rem);
        margin-bottom: -16.5625rem; } }
  .community-section .card-container {
    position: relative;
    z-index: 2;
    width: 100%; }
    .community-section .card-container > img {
      width: auto;
      box-shadow: 0rem 4px 40px rgba(0, 0, 0, 0.1);
      border-radius: 20px;
      object-fit: contain;
      background-color: #ffffff;
      margin-left: auto;
      margin-right: auto;
      display: block;
      height: 22.5rem; }
      @media print, screen and (min-width: 40em) {
        .community-section .card-container > img {
          height: 33.125rem; } }
  .community-section .content-row {
    margin-top: 2.25rem; }
    @media print, screen and (min-width: 40em) {
      .community-section .content-row {
        margin-top: 4.375rem; } }
    @media print, screen and (min-width: 64em) {
      .community-section .content-row {
        margin-top: 3.75rem; } }
    @media screen and (min-width: 75em) {
      .community-section .content-row {
        margin-top: 4.5rem; } }
    @media screen and (min-width: 90em) {
      .community-section .content-row {
        margin-top: 4.5rem; } }
  .community-section .content-wrapper {
    margin: 0 auto;
    text-align: center; }
    .community-section .content-wrapper .bubble-pin {
      margin: 0 auto 1.5rem; }
    .community-section .content-wrapper .tracking-section-title {
      margin-bottom: 2.25rem; }
  @media screen and (max-width: 39.9375em) {
    .community-section.adjusted-mobile-image-en .banner-image img {
      object-position: -100px; } }
  @media screen and (max-width: 39.9375em) {
    .community-section.adjusted-mobile-image-ja .banner-image {
      width: 250%; } }

@media screen and (max-width: 63.9375em) {
  .virtual-races-section {
    padding-top: 4.5rem;
    padding-bottom: 4.5rem; } }
  @media screen and (max-width: 63.9375em) and (min-width: 40em) {
    .virtual-races-section {
      padding-top: 8.75rem;
      padding-bottom: 8.75rem; } }
  @media screen and (max-width: 63.9375em) and (min-width: 64em) {
    .virtual-races-section {
      padding-top: 7.5rem;
      padding-bottom: 7.5rem; } }
  @media screen and (max-width: 63.9375em) and (min-width: 75em) {
    .virtual-races-section {
      padding-top: 9rem;
      padding-bottom: 9rem; } }
  @media screen and (max-width: 63.9375em) and (min-width: 90em) {
    .virtual-races-section {
      padding-top: 9rem;
      padding-bottom: 9rem; } }

@media print, screen and (min-width: 64em) {
  .virtual-races-section {
    padding-top: 2.25rem;
    padding-bottom: 4.5rem; } }
  @media print, screen and (min-width: 64em) and (min-width: 40em) {
    .virtual-races-section {
      padding-top: 4.375rem; } }
  @media print, screen and (min-width: 64em) and (min-width: 64em) {
    .virtual-races-section {
      padding-top: 3.75rem; } }
  @media screen and (min-width: 64em) and (min-width: 75em) {
    .virtual-races-section {
      padding-top: 4.5rem; } }
  @media screen and (min-width: 64em) and (min-width: 90em) {
    .virtual-races-section {
      padding-top: 4.5rem; } }
  @media print, screen and (min-width: 64em) and (min-width: 40em) {
    .virtual-races-section {
      padding-bottom: 8.75rem; } }
  @media print, screen and (min-width: 64em) and (min-width: 64em) {
    .virtual-races-section {
      padding-bottom: 7.5rem; } }
  @media screen and (min-width: 64em) and (min-width: 75em) {
    .virtual-races-section {
      padding-bottom: 9rem; } }
  @media screen and (min-width: 64em) and (min-width: 90em) {
    .virtual-races-section {
      padding-bottom: 9rem; } }

.virtual-races-section .image-grid {
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center; }

.virtual-races-section .image-col-right {
  padding-left: 18px; }
  @media screen and (max-width: 39.9375em) {
    .virtual-races-section .image-col-right {
      padding-left: 0; } }
  @media print, screen and (min-width: 40em) {
    .virtual-races-section .image-col-right {
      padding-left: 20px; } }
  @media print, screen and (min-width: 64em) {
    .virtual-races-section .image-col-right {
      padding-left: 24px; } }
  @media screen and (min-width: 75em) {
    .virtual-races-section .image-col-right {
      padding-left: 24px; } }
  @media screen and (min-width: 90em) {
    .virtual-races-section .image-col-right {
      padding-left: 24px; } }

.virtual-races-section .image-col-left {
  padding-right: 18px; }
  @media screen and (max-width: 39.9375em) {
    .virtual-races-section .image-col-left {
      padding-right: 0; } }
  @media print, screen and (min-width: 40em) {
    .virtual-races-section .image-col-left {
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      -webkit-flex-flow: column;
          -ms-flex-flow: column;
              flex-flow: column;
      -webkit-align-items: flex-end;
          -ms-flex-align: end;
              align-items: flex-end; } }
  @media print, screen and (min-width: 40em) {
    .virtual-races-section .image-col-left {
      padding-right: 20px; } }
  @media print, screen and (min-width: 64em) {
    .virtual-races-section .image-col-left {
      padding-right: 24px; } }
  @media screen and (min-width: 75em) {
    .virtual-races-section .image-col-left {
      padding-right: 24px; } }
  @media screen and (min-width: 90em) {
    .virtual-races-section .image-col-left {
      padding-right: 24px; } }
  @media print, screen and (min-width: 40em) {
    .virtual-races-section .image-col-left .image-wrapper:nth-of-type(2) .virtual-race-section-image {
      width: 80%;
      margin-left: auto;
      margin-right: 0; } }
  .virtual-races-section .image-col-left .image-wrapper:not(:last-child) {
    margin-bottom: 36px; }
    @media screen and (max-width: 39.9375em) {
      .virtual-races-section .image-col-left .image-wrapper:not(:last-child) {
        margin-bottom: 1.5rem; } }
  @media screen and (max-width: 39.9375em) and (min-width: 40em) {
    .virtual-races-section .image-col-left .image-wrapper:not(:last-child) {
      margin-bottom: 4.375rem; } }
  @media screen and (max-width: 39.9375em) and (min-width: 64em) {
    .virtual-races-section .image-col-left .image-wrapper:not(:last-child) {
      margin-bottom: 6.25rem; } }
  @media screen and (max-width: 39.9375em) and (min-width: 75em) {
    .virtual-races-section .image-col-left .image-wrapper:not(:last-child) {
      margin-bottom: 7.5rem; } }
  @media screen and (max-width: 39.9375em) and (min-width: 90em) {
    .virtual-races-section .image-col-left .image-wrapper:not(:last-child) {
      margin-bottom: 7.5rem; } }
    @media print, screen and (min-width: 40em) {
      .virtual-races-section .image-col-left .image-wrapper:not(:last-child) {
        margin-bottom: 40px; } }
    @media print, screen and (min-width: 64em) {
      .virtual-races-section .image-col-left .image-wrapper:not(:last-child) {
        margin-bottom: 48px; } }
    @media screen and (min-width: 75em) {
      .virtual-races-section .image-col-left .image-wrapper:not(:last-child) {
        margin-bottom: 48px; } }
    @media screen and (min-width: 90em) {
      .virtual-races-section .image-col-left .image-wrapper:not(:last-child) {
        margin-bottom: 48px; } }

.virtual-races-section .image-wrapper {
  width: 100%; }

.virtual-races-section .virtual-race-section-image {
  border-radius: 20px;
  object-fit: cover;
  box-shadow: 0rem 4px 40px rgba(0, 0, 0, 0.1);
  display: block;
  width: 100%;
  height: auto; }
  .virtual-races-section .virtual-race-section-image--1 {
    height: 19.375rem; }
    @media print, screen and (min-width: 40em) {
      .virtual-races-section .virtual-race-section-image--1 {
        height: 19.375rem; } }
    @media print, screen and (min-width: 64em) {
      .virtual-races-section .virtual-race-section-image--1 {
        height: 31.25rem; } }
  .virtual-races-section .virtual-race-section-image--2 {
    height: 19.375rem; }
    @media print, screen and (min-width: 40em) {
      .virtual-races-section .virtual-race-section-image--2 {
        height: 12.625rem; } }
    @media print, screen and (min-width: 64em) {
      .virtual-races-section .virtual-race-section-image--2 {
        height: 20.75rem; } }
  .virtual-races-section .virtual-race-section-image--3 {
    height: 19.375rem; }
    @media print, screen and (min-width: 40em) {
      .virtual-races-section .virtual-race-section-image--3 {
        height: 15.75rem; } }
    @media print, screen and (min-width: 64em) {
      .virtual-races-section .virtual-race-section-image--3 {
        height: 25.75rem; } }

.virtual-races-section .content-col {
  padding-top: 2.25rem;
  position: relative;
  padding-left: 18px; }
  @media print, screen and (min-width: 40em) {
    .virtual-races-section .content-col {
      padding-top: 4.375rem; } }
  @media print, screen and (min-width: 64em) {
    .virtual-races-section .content-col {
      padding-top: 3.75rem; } }
  @media screen and (min-width: 75em) {
    .virtual-races-section .content-col {
      padding-top: 4.5rem; } }
  @media screen and (min-width: 90em) {
    .virtual-races-section .content-col {
      padding-top: 4.5rem; } }
  @media print, screen and (min-width: 40em) {
    .virtual-races-section .content-col {
      padding-left: 20px; } }
  @media print, screen and (min-width: 64em) {
    .virtual-races-section .content-col {
      padding-left: 24px; } }
  @media screen and (min-width: 75em) {
    .virtual-races-section .content-col {
      padding-left: 24px; } }
  @media screen and (min-width: 90em) {
    .virtual-races-section .content-col {
      padding-left: 24px; } }
  @media screen and (max-width: 39.9375em) {
    .virtual-races-section .content-col {
      padding-left: 0; } }
  @media print, screen and (min-width: 40em) {
    .virtual-races-section .content-col {
      padding-top: 1.125rem; } }
  @media print, screen and (min-width: 40em) and (min-width: 40em) {
    .virtual-races-section .content-col {
      padding-top: 2.1875rem; } }
  @media print, screen and (min-width: 40em) and (min-width: 64em) {
    .virtual-races-section .content-col {
      padding-top: 1.875rem; } }
  @media screen and (min-width: 40em) and (min-width: 75em) {
    .virtual-races-section .content-col {
      padding-top: 2.25rem; } }
  @media screen and (min-width: 40em) and (min-width: 90em) {
    .virtual-races-section .content-col {
      padding-top: 2.25rem; } }
  @media print, screen and (min-width: 64em) {
    .virtual-races-section .content-col {
      padding-top: 0;
      -webkit-transform: translateY(-10.375rem);
          -ms-transform: translateY(-10.375rem);
              transform: translateY(-10.375rem);
      margin-bottom: -10.375rem; } }
  @media screen and (max-width: 63.9375em) {
    .virtual-races-section .content-col .content-wrapper {
      margin: 0 auto;
      text-align: center; } }
  .virtual-races-section .content-col .content-wrapper .bubble-pin {
    margin: 0 auto 1.5rem; }
    @media print, screen and (min-width: 64em) {
      .virtual-races-section .content-col .content-wrapper .bubble-pin {
        margin: 0 0 1.5rem; } }
  .virtual-races-section .content-col .content-wrapper .virtual-race-section-title {
    margin-bottom: 2.25rem; }

.sign-up-section {
  position: relative;
  padding-top: 2.25rem;
  padding-bottom: 18rem; }
  @media print, screen and (min-width: 40em) {
    .sign-up-section {
      padding-top: 4.375rem; } }
  @media print, screen and (min-width: 64em) {
    .sign-up-section {
      padding-top: 3.75rem; } }
  @media screen and (min-width: 75em) {
    .sign-up-section {
      padding-top: 4.5rem; } }
  @media screen and (min-width: 90em) {
    .sign-up-section {
      padding-top: 4.5rem; } }
  @media print, screen and (min-width: 40em) {
    .sign-up-section {
      padding-bottom: 35rem; } }
  @media print, screen and (min-width: 64em) {
    .sign-up-section {
      padding-bottom: 30rem; } }
  @media screen and (min-width: 75em) {
    .sign-up-section {
      padding-bottom: 36rem; } }
  @media screen and (min-width: 90em) {
    .sign-up-section {
      padding-bottom: 36rem; } }
  @media print, screen and (min-width: 40em) {
    .sign-up-section {
      padding-bottom: 9rem; } }
  @media print, screen and (min-width: 40em) and (min-width: 40em) {
    .sign-up-section {
      padding-bottom: 17.5rem; } }
  @media print, screen and (min-width: 40em) and (min-width: 64em) {
    .sign-up-section {
      padding-bottom: 15rem; } }
  @media screen and (min-width: 40em) and (min-width: 75em) {
    .sign-up-section {
      padding-bottom: 18rem; } }
  @media screen and (min-width: 40em) and (min-width: 90em) {
    .sign-up-section {
      padding-bottom: 18rem; } }
  .sign-up-section::after {
    background: linear-gradient(0deg, rgba(255, 255, 255, 0) 0%, #ffffff 79.19%);
    position: absolute;
    content: '';
    top: 0;
    bottom: 0;
    right: 0;
    left: 0; }
  .sign-up-section > * {
    position: relative;
    z-index: 2; }

.up-sell-section {
  padding-top: 4.5rem; }
  @media print, screen and (min-width: 40em) {
    .up-sell-section {
      padding-top: 8.75rem; } }
  @media print, screen and (min-width: 64em) {
    .up-sell-section {
      padding-top: 7.5rem; } }
  @media screen and (min-width: 75em) {
    .up-sell-section {
      padding-top: 9rem; } }
  @media screen and (min-width: 90em) {
    .up-sell-section {
      padding-top: 9rem; } }
  .up-sell-section .up-sell-section-grid {
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    position: relative; }
    @media screen and (max-width: 39.9375em) {
      .up-sell-section .up-sell-section-grid {
        -webkit-justify-content: center;
            -ms-flex-pack: center;
                justify-content: center; } }
  .up-sell-section .content-col {
    padding-top: 2.25rem;
    padding-bottom: 4.5rem; }
    @media print, screen and (min-width: 40em) {
      .up-sell-section .content-col {
        padding-top: 4.375rem; } }
    @media print, screen and (min-width: 64em) {
      .up-sell-section .content-col {
        padding-top: 3.75rem; } }
    @media screen and (min-width: 75em) {
      .up-sell-section .content-col {
        padding-top: 4.5rem; } }
    @media screen and (min-width: 90em) {
      .up-sell-section .content-col {
        padding-top: 4.5rem; } }
    @media print, screen and (min-width: 40em) {
      .up-sell-section .content-col {
        padding-bottom: 8.75rem; } }
    @media print, screen and (min-width: 64em) {
      .up-sell-section .content-col {
        padding-bottom: 7.5rem; } }
    @media screen and (min-width: 75em) {
      .up-sell-section .content-col {
        padding-bottom: 9rem; } }
    @media screen and (min-width: 90em) {
      .up-sell-section .content-col {
        padding-bottom: 9rem; } }
    @media screen and (max-width: 39.9375em) {
      .up-sell-section .content-col {
        text-align: center; } }
    .up-sell-section .content-col .runkeeper-logo {
      margin-bottom: 1.5rem; }
    .up-sell-section .content-col .up-sell-section-title {
      margin-bottom: 1.75rem; }
    .up-sell-section .content-col .up-sell-section-content {
      margin-bottom: 1.5rem; }
  .up-sell-section .image-col {
    position: relative; }
    .up-sell-section .image-col .image-wrapper {
      height: 100%;
      width: 100%;
      position: relative; }
  .up-sell-section .app-image {
    display: block;
    width: auto;
    border-radius: 40px 40px 0 0; }
    .up-sell-section .app-image--1 {
      box-shadow: 0rem 4px 40px rgba(0, 0, 0, 0.1);
      height: 31.25rem;
      position: relative;
      z-index: 1; }
    .up-sell-section .app-image--2 {
      height: 37.5rem;
      position: absolute;
      right: 0;
      top: 0;
      z-index: 2; }

.featured-author {
  padding-top: 2.25rem;
  padding-bottom: 2.25rem;
  background-color: #001E62; }
  @media print, screen and (min-width: 40em) {
    .featured-author {
      padding-top: 4.375rem;
      padding-bottom: 4.375rem; } }
  @media print, screen and (min-width: 64em) {
    .featured-author {
      padding-top: 3.75rem;
      padding-bottom: 3.75rem; } }
  @media screen and (min-width: 75em) {
    .featured-author {
      padding-top: 4.5rem;
      padding-bottom: 4.5rem; } }
  @media screen and (min-width: 90em) {
    .featured-author {
      padding-top: 4.5rem;
      padding-bottom: 4.5rem; } }
  .featured-author .grid-x .image-cell img {
    border-radius: 50%;
    width: 275px;
    height: 275px;
    object-fit: cover; }
  @media screen and (max-width: 74.9375em) {
    .featured-author .grid-x .image-cell {
      margin-bottom: 1.5rem;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      -webkit-align-items: center;
          -ms-flex-align: center;
              align-items: center;
      -webkit-justify-content: center;
          -ms-flex-pack: center;
              justify-content: center; } }
  @media screen and (max-width: 74.9375em) and (min-width: 40em) {
    .featured-author .grid-x .image-cell {
      margin-bottom: 2.91667rem; } }
  @media screen and (max-width: 74.9375em) and (min-width: 64em) {
    .featured-author .grid-x .image-cell {
      margin-bottom: 2.5rem; } }
  @media screen and (max-width: 74.9375em) and (min-width: 75em) {
    .featured-author .grid-x .image-cell {
      margin-bottom: 3rem; } }
  @media screen and (max-width: 74.9375em) and (min-width: 90em) {
    .featured-author .grid-x .image-cell {
      margin-bottom: 3rem; } }
  .featured-author .grid-x .content-cell {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
    text-align: center; }
    @media screen and (min-width: 75em) {
      .featured-author .grid-x .content-cell {
        text-align: left; } }
    .featured-author .grid-x .content-cell .author-name {
      color: #2DC9D7; }
    .featured-author .grid-x .content-cell .author-description {
      color: #ffffff;
      margin-bottom: 0; }
      @media print, screen and (min-width: 64em) {
        .featured-author .grid-x .content-cell .author-description {
          font-size: 1.125rem; } }
    .featured-author .grid-x .content-cell .instagram-link-wrap {
      margin-top: 2rem; }
      @media print, screen and (min-width: 64em) {
        .featured-author .grid-x .content-cell .instagram-link-wrap {
          margin-top: 1rem; } }
      .featured-author .grid-x .content-cell .instagram-link-wrap .ig-link {
        display: -webkit-inline-flex;
        display: -ms-inline-flexbox;
        display: inline-flex;
        -webkit-align-items: center;
            -ms-flex-align: center;
                align-items: center; }
        .featured-author .grid-x .content-cell .instagram-link-wrap .ig-link:hover span {
          text-decoration: underline; }
      .featured-author .grid-x .content-cell .instagram-link-wrap i {
        margin-right: .5rem;
        font-size: 1.5rem; }
      .featured-author .grid-x .content-cell .instagram-link-wrap span {
        font-size: 1rem; }
      @media print, screen and (min-width: 64em) {
        .featured-author .grid-x .content-cell .instagram-link-wrap {
          margin-top: 2.5rem; } }

.blog-navigation {
  background-color: rgba(45, 201, 215, 0.1); }
  .blog-navigation.height {
    height: 79px !important; }
  .blog-navigation.scrolled {
    height: 0;
    overflow: hidden;
    position: fixed;
    top: 65px;
    width: 100%;
    background-color: #E5F9FA;
    z-index: 101;
    transition: height .3s ease !important; }
  .blog-navigation .blog-nav-grid .blog-nav-controller.hidden-while-search-open {
    opacity: 0; }
    @media screen and (min-width: 90em) {
      .blog-navigation .blog-nav-grid .blog-nav-controller.hidden-while-search-open {
        opacity: 1; } }
  .blog-navigation .blog-nav-grid .nav-col {
    padding-top: 1rem;
    padding-bottom: 1rem; }
    @media print, screen and (min-width: 64em) {
      .blog-navigation .blog-nav-grid .nav-col {
        padding-top: 0;
        padding-bottom: 0; } }
    .blog-navigation .blog-nav-grid .nav-col .blog-nav-mobile {
      margin: 0; }
    .blog-navigation .blog-nav-grid .nav-col .blog-nav-desktop {
      margin: 0;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      -webkit-flex-flow: row nowrap;
          -ms-flex-flow: row nowrap;
              flex-flow: row nowrap; }
      .blog-navigation .blog-nav-grid .nav-col .blog-nav-desktop .blog-nav-item {
        list-style: none;
        display: block; }
        .blog-navigation .blog-nav-grid .nav-col .blog-nav-desktop .blog-nav-item a {
          font-size: 0.875rem;
          display: block;
          padding: 2rem 1.5rem;
          color: #000000;
          font-family: "gorditamedium", -apple-system, BlinkMacSystemFont, "Segoe UI", "Roboto", "Oxygen", "Ubuntu", "Cantarell", "Fira Sans", "Droid Sans", "Helvetica Neue", sans-serif; }
          .blog-navigation .blog-nav-grid .nav-col .blog-nav-desktop .blog-nav-item a.is-active {
            background-color: #ffffff;
            position: relative; }
            .blog-navigation .blog-nav-grid .nav-col .blog-nav-desktop .blog-nav-item a.is-active::after {
              position: absolute;
              content: '';
              height: 4px;
              background-color: #2DC9D7;
              bottom: 0;
              right: 0;
              left: 0; }
          .blog-navigation .blog-nav-grid .nav-col .blog-nav-desktop .blog-nav-item a:hover, .blog-navigation .blog-nav-grid .nav-col .blog-nav-desktop .blog-nav-item a:active, .blog-navigation .blog-nav-grid .nav-col .blog-nav-desktop .blog-nav-item a:focus {
            background-color: #ffffff; }
  .blog-navigation .blog-nav-grid .search-col {
    position: relative; }
    .blog-navigation .blog-nav-grid .search-col .blog-nav-searchform-cont {
      position: absolute;
      top: 0;
      bottom: 0;
      right: 0;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      -webkit-align-items: center;
          -ms-flex-align: center;
              align-items: center; }
      .blog-navigation .blog-nav-grid .search-col .blog-nav-searchform-cont form .input-group {
        margin: 0; }
        .blog-navigation .blog-nav-grid .search-col .blog-nav-searchform-cont form .input-group .input-group-button {
          position: relative;
          display: -webkit-flex;
          display: -ms-flexbox;
          display: flex; }
      .blog-navigation .blog-nav-grid .search-col .blog-nav-searchform-cont form .input-group-field {
        display: none;
        border-radius: 1.5625rem;
        border: 1px solid rgba(45, 201, 215, 0.5);
        min-width: 272px;
        width: 100%;
        position: relative;
        right: -36px; }
        @media screen and (min-width: 90em) {
          .blog-navigation .blog-nav-grid .search-col .blog-nav-searchform-cont form .input-group-field {
            display: block; } }
      .blog-navigation .blog-nav-grid .search-col .blog-nav-searchform-cont form.form-active .input-group-field {
        display: block; }

.admin-bar .blog-navigation.scrolled {
  top: calc(46px + 65px) !important; }
  @media print, screen and (min-width: 40em) {
    .admin-bar .blog-navigation.scrolled {
      top: calc(65px + 32px) !important; } }

.post-card-row-image {
  display: block;
  position: relative;
  border-radius: 20px;
  overflow: hidden;
  position: relative;
  margin-bottom: 1.5rem;
  height: 21.125rem; }
  .post-card-row-image:hover .card-play-button svg path, .post-card-row-image:active .card-play-button svg path, .post-card-row-image:focus .card-play-button svg path {
    fill: #FCB536; }
  @media screen and (min-width: 75em) {
    .post-card-row-image {
      margin-bottom: 0; } }
  .post-card-row-image .featured-image {
    height: 100%;
    min-width: 100%;
    object-fit: cover; }
  .post-card-row-image .embed-container {
    height: 100%; }
  .post-card-row-image .card-play-button {
    position: absolute;
    bottom: 1.5rem;
    right: 1.5rem; }
    .post-card-row-image .card-play-button svg path {
      transition: fill .25s ease; }

.post-card-row-content {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center; }
  @media print, screen and (min-width: 64em) {
    .post-card-row-content {
      padding-left: 1.5rem; } }
  @media print, screen and (min-width: 64em) and (min-width: 40em) {
    .post-card-row-content {
      padding-left: 2.91667rem; } }
  @media print, screen and (min-width: 64em) and (min-width: 64em) {
    .post-card-row-content {
      padding-left: 2.5rem; } }
  @media screen and (min-width: 64em) and (min-width: 75em) {
    .post-card-row-content {
      padding-left: 3rem; } }
  @media screen and (min-width: 64em) and (min-width: 90em) {
    .post-card-row-content {
      padding-left: 3rem; } }
  .post-card-row-content .cat-name {
    color: #001E62;
    text-transform: uppercase;
    margin-bottom: 1rem; }
    .post-card-row-content .cat-name:hover, .post-card-row-content .cat-name:active, .post-card-row-content .cat-name:focus {
      text-decoration: underline; }
  .post-card-row-content .post-title {
    margin-bottom: 0;
    color: #212121; }
    .post-card-row-content .post-title:hover, .post-card-row-content .post-title:active, .post-card-row-content .post-title:focus {
      text-decoration: underline;
      color: #000000; }
    @media print, screen and (min-width: 64em) {
      .post-card-row-content .post-title {
        max-width: 66.667%; } }
  .post-card-row-content .post-excerpt {
    margin-top: 1.5rem; }
    .post-card-row-content .post-excerpt > * {
      color: rgba(51, 51, 51, 0.5); }
    .post-card-row-content .post-excerpt > p:last-child {
      margin-bottom: 0; }

@-webkit-keyframes loadShimmer {
  0% {
    background-position: 0px 0; }
  100% {
    background-position: 100em 0; } }

@keyframes loadShimmer {
  0% {
    background-position: 0px 0; }
  100% {
    background-position: 100em 0; } }

.c-animated-background {
  -webkit-animation-duration: 8s;
          animation-duration: 8s;
  -webkit-animation-fill-mode: forwards;
          animation-fill-mode: forwards;
  -webkit-animation-iteration-count: infinite;
          animation-iteration-count: infinite;
  -webkit-animation-name: loadShimmer;
          animation-name: loadShimmer;
  -webkit-animation-timing-function: linear;
          animation-timing-function: linear;
  background: linear-gradient(to right, #eeeeee 8%, #dddddd 18%, #eeeeee 33%); }

.post-card-row-grid {
  margin-bottom: 2.25rem; }
  @media print, screen and (min-width: 40em) {
    .post-card-row-grid {
      margin-bottom: 4.375rem; } }
  @media print, screen and (min-width: 64em) {
    .post-card-row-grid {
      margin-bottom: 3.75rem; } }
  @media screen and (min-width: 75em) {
    .post-card-row-grid {
      margin-bottom: 4.5rem; } }
  @media screen and (min-width: 90em) {
    .post-card-row-grid {
      margin-bottom: 4.5rem; } }
  .post-card-row-grid .load-more-cell {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center; }
    .post-card-row-grid .load-more-cell .button {
      position: relative;
      margin-top: 1.5rem; }
      @media print, screen and (min-width: 40em) {
        .post-card-row-grid .load-more-cell .button {
          margin-top: 2.91667rem; } }
      @media print, screen and (min-width: 64em) {
        .post-card-row-grid .load-more-cell .button {
          margin-top: 2.5rem; } }
      @media screen and (min-width: 75em) {
        .post-card-row-grid .load-more-cell .button {
          margin-top: 3rem; } }
      @media screen and (min-width: 90em) {
        .post-card-row-grid .load-more-cell .button {
          margin-top: 3rem; } }
  .post-card-row-grid .post-card-item:not(.item-1) {
    margin-top: 3rem; }
    @media print, screen and (min-width: 64em) {
      .post-card-row-grid .post-card-item:not(.item-1) {
        margin-top: 1.5rem; } }
  @media print, screen and (min-width: 64em) and (min-width: 40em) {
    .post-card-row-grid .post-card-item:not(.item-1) {
      margin-top: 2.91667rem; } }
  @media print, screen and (min-width: 64em) and (min-width: 64em) {
    .post-card-row-grid .post-card-item:not(.item-1) {
      margin-top: 2.5rem; } }
  @media screen and (min-width: 64em) and (min-width: 75em) {
    .post-card-row-grid .post-card-item:not(.item-1) {
      margin-top: 3rem; } }
  @media screen and (min-width: 64em) and (min-width: 90em) {
    .post-card-row-grid .post-card-item:not(.item-1) {
      margin-top: 3rem; } }

.post-card-featured {
  text-align: center;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-flow: column;
      -ms-flex-flow: column;
          flex-flow: column; }
  .post-card-featured a {
    display: block; }
    .post-card-featured a:hover, .post-card-featured a:active, .post-card-featured a:focus {
      text-decoration: underline; }
  .post-card-featured .featured-post-image {
    margin: 0 auto 1rem;
    height: 16.125rem;
    width: 22.625rem;
    max-width: 100%;
    display: block;
    border-radius: 20px; }
    @media print, screen and (min-width: 40em) {
      .post-card-featured .featured-post-image {
        margin-bottom: 1.5rem; } }
  .post-card-featured .category-link {
    text-transform: uppercase;
    font-size: 0.875rem;
    color: #001E62;
    margin-bottom: 1rem; }
  .post-card-featured .post-title-link {
    color: #333333;
    padding-left: 0.5rem;
    padding-right: 0.5rem; }
    @media print, screen and (min-width: 40em) {
      .post-card-featured .post-title-link {
        padding-left: 1.45833rem;
        padding-right: 1.45833rem; } }
    @media print, screen and (min-width: 64em) {
      .post-card-featured .post-title-link {
        padding-left: 2.08333rem;
        padding-right: 2.08333rem; } }
    @media screen and (min-width: 75em) {
      .post-card-featured .post-title-link {
        padding-left: 2.5rem;
        padding-right: 2.5rem; } }
    @media screen and (min-width: 90em) {
      .post-card-featured .post-title-link {
        padding-left: 2.5rem;
        padding-right: 2.5rem; } }
    .post-card-featured .post-title-link .post-title {
      color: #333333;
      font-size: 1.375rem;
      font-weight: 700; }
      @media print, screen and (min-width: 64em) {
        .post-card-featured .post-title-link .post-title {
          font-size: 1.625rem; } }

@media screen and (max-width: 63.9375em) {
  .top-post .grid-container, .top-post .top-bar {
    padding: 0; } }

@media screen and (max-width: 39.9375em) {
  .top-post .top-post-grid {
    position: relative; } }

@media print, screen and (min-width: 64em) {
  .top-post .top-post-grid {
    border-radius: 20px;
    overflow: hidden; } }

.top-post .top-post-grid .image-col {
  border-radius: 0;
  margin-bottom: 0;
  position: relative; }
  @media screen and (max-width: 39.9375em) {
    .top-post .top-post-grid .image-col {
      z-index: 1;
      position: absolute;
      top: 0;
      bottom: 0;
      right: 0;
      left: 0;
      height: 100%;
      width: 100%;
      background-color: transparent; }
      .top-post .top-post-grid .image-col::before {
        content: '';
        position: absolute;
        width: 100%;
        height: 100%;
        top: 0;
        left: 0;
        background-color: rgba(0, 30, 98, 0.8);
        z-index: 2; } }
  .top-post .top-post-grid .image-col .featured-image {
    position: absolute;
    z-index: 0; }

.top-post .top-post-grid .content-col {
  min-height: 21.125rem;
  background-color: #001E62;
  color: #ffffff;
  padding-top: 4.5rem;
  padding-bottom: 4.5rem;
  padding-left: 0.75rem;
  padding-right: 0.75rem;
  text-align: center;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  position: relative;
  z-index: 3; }
  @media print, screen and (min-width: 40em) {
    .top-post .top-post-grid .content-col {
      padding-top: 8.75rem;
      padding-bottom: 8.75rem; } }
  @media print, screen and (min-width: 64em) {
    .top-post .top-post-grid .content-col {
      padding-top: 7.5rem;
      padding-bottom: 7.5rem; } }
  @media screen and (min-width: 75em) {
    .top-post .top-post-grid .content-col {
      padding-top: 9rem;
      padding-bottom: 9rem; } }
  @media screen and (min-width: 90em) {
    .top-post .top-post-grid .content-col {
      padding-top: 9rem;
      padding-bottom: 9rem; } }
  @media print, screen and (min-width: 40em) {
    .top-post .top-post-grid .content-col {
      padding-left: 2.1875rem;
      padding-right: 2.1875rem; } }
  @media print, screen and (min-width: 64em) {
    .top-post .top-post-grid .content-col {
      padding-left: 3.125rem;
      padding-right: 3.125rem; } }
  @media screen and (min-width: 75em) {
    .top-post .top-post-grid .content-col {
      padding-left: 3.75rem;
      padding-right: 3.75rem; } }
  @media screen and (min-width: 90em) {
    .top-post .top-post-grid .content-col {
      padding-left: 3.75rem;
      padding-right: 3.75rem; } }
  @media screen and (max-width: 39.9375em) {
    .top-post .top-post-grid .content-col {
      background: transparent; } }
  .top-post .top-post-grid .content-col a {
    display: block; }
    .top-post .top-post-grid .content-col a:hover, .top-post .top-post-grid .content-col a:active, .top-post .top-post-grid .content-col a:focus {
      text-decoration: underline; }
  .top-post .top-post-grid .content-col .category-link {
    text-transform: uppercase;
    font-size: 0.875rem;
    margin-bottom: 1rem; }
  .top-post .top-post-grid .content-col .post-title-link {
    margin-bottom: 1.5rem; }
    .top-post .top-post-grid .content-col .post-title-link .post-title {
      font-weight: 700; }

.top-post.top-post-video {
  margin-bottom: 1.5rem; }
  .top-post.top-post-video .top-post-row {
    box-sizing: border-box;
    display: block;
    position: relative;
    overflow: hidden;
    background-color: #212121; }
    @media print, screen and (min-width: 64em) {
      .top-post.top-post-video .top-post-row {
        border-radius: 20px; } }
  .top-post.top-post-video .top-post-row-image {
    position: relative;
    transition: opacity 0.5s ease;
    z-index: 6; }
    .top-post.top-post-video .top-post-row-image.opacity-0 {
      opacity: 0;
      z-index: -1; }
    .top-post.top-post-video .top-post-row-image::after {
      content: '';
      position: absolute;
      background-color: rgba(0, 30, 98, 0.5);
      top: 0;
      bottom: 0;
      right: 0;
      left: 0; }
    .top-post.top-post-video .top-post-row-image .top-post-controls-links {
      position: relative;
      z-index: 2;
      padding-left: 0.75rem;
      padding-right: 0.75rem;
      padding-top: 4.5rem;
      padding-bottom: 4.5rem;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      -webkit-justify-content: center;
          -ms-flex-pack: center;
              justify-content: center;
      -webkit-align-items: center;
          -ms-flex-align: center;
              align-items: center;
      -webkit-flex-flow: column;
          -ms-flex-flow: column;
              flex-flow: column;
      height: 100%;
      text-align: center; }
      @media print, screen and (min-width: 40em) {
        .top-post.top-post-video .top-post-row-image .top-post-controls-links {
          padding-left: 2.1875rem;
          padding-right: 2.1875rem; } }
      @media print, screen and (min-width: 64em) {
        .top-post.top-post-video .top-post-row-image .top-post-controls-links {
          padding-left: 3.125rem;
          padding-right: 3.125rem; } }
      @media screen and (min-width: 75em) {
        .top-post.top-post-video .top-post-row-image .top-post-controls-links {
          padding-left: 3.75rem;
          padding-right: 3.75rem; } }
      @media screen and (min-width: 90em) {
        .top-post.top-post-video .top-post-row-image .top-post-controls-links {
          padding-left: 3.75rem;
          padding-right: 3.75rem; } }
      @media print, screen and (min-width: 40em) {
        .top-post.top-post-video .top-post-row-image .top-post-controls-links {
          padding-top: 8.75rem;
          padding-bottom: 8.75rem; } }
      @media print, screen and (min-width: 64em) {
        .top-post.top-post-video .top-post-row-image .top-post-controls-links {
          padding-top: 7.5rem;
          padding-bottom: 7.5rem; } }
      @media screen and (min-width: 75em) {
        .top-post.top-post-video .top-post-row-image .top-post-controls-links {
          padding-top: 9rem;
          padding-bottom: 9rem; } }
      @media screen and (min-width: 90em) {
        .top-post.top-post-video .top-post-row-image .top-post-controls-links {
          padding-top: 9rem;
          padding-bottom: 9rem; } }
      .top-post.top-post-video .top-post-row-image .top-post-controls-links .category-link {
        text-transform: uppercase;
        font-size: 0.875rem;
        color: #ffffff;
        margin-bottom: 1rem; }
        .top-post.top-post-video .top-post-row-image .top-post-controls-links .category-link:hover, .top-post.top-post-video .top-post-row-image .top-post-controls-links .category-link:active, .top-post.top-post-video .top-post-row-image .top-post-controls-links .category-link:focus {
          text-decoration: underline; }
      .top-post.top-post-video .top-post-row-image .top-post-controls-links .post-title {
        text-align: center;
        color: #ffffff;
        margin-bottom: 2rem; }
        @media screen and (max-width: 63.9375em) {
          .top-post.top-post-video .top-post-row-image .top-post-controls-links .post-title {
            font-size: 1.875rem; } }
        .top-post.top-post-video .top-post-row-image .top-post-controls-links .post-title:hover, .top-post.top-post-video .top-post-row-image .top-post-controls-links .post-title:active, .top-post.top-post-video .top-post-row-image .top-post-controls-links .post-title:focus {
          text-decoration: underline; }
      .top-post.top-post-video .top-post-row-image .top-post-controls-links .card-play-button {
        position: relative;
        top: unset;
        bottom: unset;
        right: unset;
        left: unset;
        margin: 0 auto;
        height: 4rem;
        width: 4rem; }
        @media print, screen and (min-width: 40em) {
          .top-post.top-post-video .top-post-row-image .top-post-controls-links .card-play-button {
            height: 6rem;
            width: 6rem; } }
        .top-post.top-post-video .top-post-row-image .top-post-controls-links .card-play-button svg {
          max-height: 1.5rem; }
          @media print, screen and (min-width: 40em) {
            .top-post.top-post-video .top-post-row-image .top-post-controls-links .card-play-button svg {
              max-height: 2rem; } }
        .top-post.top-post-video .top-post-row-image .top-post-controls-links .card-play-button:hover, .top-post.top-post-video .top-post-row-image .top-post-controls-links .card-play-button:active, .top-post.top-post-video .top-post-row-image .top-post-controls-links .card-play-button:focus {
          cursor: pointer; }
          .top-post.top-post-video .top-post-row-image .top-post-controls-links .card-play-button:hover svg path, .top-post.top-post-video .top-post-row-image .top-post-controls-links .card-play-button:active svg path, .top-post.top-post-video .top-post-row-image .top-post-controls-links .card-play-button:focus svg path {
            fill: #FCB536; }
  .top-post.top-post-video .embed-container {
    border-radius: 0;
    position: absolute;
    top: 50%;
    -webkit-transform: translateY(-50%);
        -ms-transform: translateY(-50%);
            transform: translateY(-50%);
    width: 100%;
    left: 0;
    right: 0;
    z-index: 1; }
    .top-post.top-post-video .embed-container iframe {
      box-sizing: border-box; }

.top-post .article-col {
  padding-top: 0.75rem;
  padding-bottom: 0.75rem;
  padding-left: 0.375rem;
  padding-right: 0.375rem; }
  @media print, screen and (min-width: 40em) {
    .top-post .article-col {
      padding-top: 1.45833rem;
      padding-bottom: 1.45833rem; } }
  @media print, screen and (min-width: 64em) {
    .top-post .article-col {
      padding-top: 1.25rem;
      padding-bottom: 1.25rem; } }
  @media screen and (min-width: 75em) {
    .top-post .article-col {
      padding-top: 1.5rem;
      padding-bottom: 1.5rem; } }
  @media screen and (min-width: 90em) {
    .top-post .article-col {
      padding-top: 1.5rem;
      padding-bottom: 1.5rem; } }
  @media print, screen and (min-width: 40em) {
    .top-post .article-col {
      padding-left: 1.09375rem;
      padding-right: 1.09375rem; } }
  @media print, screen and (min-width: 64em) {
    .top-post .article-col {
      padding-left: 1.5625rem;
      padding-right: 1.5625rem; } }
  @media screen and (min-width: 75em) {
    .top-post .article-col {
      padding-left: 1.875rem;
      padding-right: 1.875rem; } }
  @media screen and (min-width: 90em) {
    .top-post .article-col {
      padding-left: 1.875rem;
      padding-right: 1.875rem; } }
  .top-post .article-col .go-to-article-text {
    text-align: center;
    margin-bottom: 0;
    color: #001E62; }
    .top-post .article-col .go-to-article-text:hover, .top-post .article-col .go-to-article-text:active, .top-post .article-col .go-to-article-text:focus {
      text-decoration: underline; }

.featured-posts {
  background-color: rgba(45, 201, 215, 0.1);
  padding-top: 1.5rem;
  padding-bottom: 1.5rem; }
  @media print, screen and (min-width: 40em) {
    .featured-posts {
      padding-top: 2.91667rem;
      padding-bottom: 2.91667rem; } }
  @media print, screen and (min-width: 64em) {
    .featured-posts {
      padding-top: 2.5rem;
      padding-bottom: 2.5rem; } }
  @media screen and (min-width: 75em) {
    .featured-posts {
      padding-top: 3rem;
      padding-bottom: 3rem; } }
  @media screen and (min-width: 90em) {
    .featured-posts {
      padding-top: 3rem;
      padding-bottom: 3rem; } }
  .featured-posts .featured-posts-title {
    color: #001E62;
    text-align: center;
    margin-bottom: 1.5rem; }
    @media print, screen and (min-width: 40em) {
      .featured-posts .featured-posts-title {
        margin-bottom: 2.91667rem; } }
    @media print, screen and (min-width: 64em) {
      .featured-posts .featured-posts-title {
        margin-bottom: 2.5rem; } }
    @media screen and (min-width: 75em) {
      .featured-posts .featured-posts-title {
        margin-bottom: 3rem; } }
    @media screen and (min-width: 90em) {
      .featured-posts .featured-posts-title {
        margin-bottom: 3rem; } }
  .featured-posts .featured-posts-slider .slick-arrow {
    background-color: #ffffff;
    color: #000000;
    width: 2.5rem;
    height: 2.5rem;
    position: absolute;
    z-index: 11; }
    .featured-posts .featured-posts-slider .slick-arrow::before {
      position: absolute;
      font-family: 'Font Awesome 5 Pro';
      font-weight: 400;
      background-size: cover;
      background-position: center;
      background-repeat: no-repeat;
      height: 0.75rem;
      width: 0.75rem;
      color: #000000;
      opacity: 1;
      display: block;
      top: 50%;
      left: 50%;
      -webkit-transform: translate(-50%, -50%);
          -ms-transform: translate(-50%, -50%);
              transform: translate(-50%, -50%); }
    .featured-posts .featured-posts-slider .slick-arrow.slick-prev {
      left: 0; }
      .featured-posts .featured-posts-slider .slick-arrow.slick-prev::before {
        content: '\f104'; }
    .featured-posts .featured-posts-slider .slick-arrow.slick-next {
      right: 0; }
      .featured-posts .featured-posts-slider .slick-arrow.slick-next::before {
        content: '\f105'; }

.post-share {
  display: -webkit-inline-flex;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center; }
  @media screen and (max-width: 63.9375em) {
    .post-share.share-column {
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      -webkit-justify-content: center;
          -ms-flex-pack: center;
              justify-content: center;
      -webkit-align-items: center;
          -ms-flex-align: center;
              align-items: center;
      margin-bottom: 2.25rem; } }
  @media screen and (max-width: 63.9375em) and (min-width: 40em) {
    .post-share.share-column {
      margin-bottom: 4.375rem; } }
  @media screen and (max-width: 63.9375em) and (min-width: 64em) {
    .post-share.share-column {
      margin-bottom: 3.75rem; } }
  @media screen and (max-width: 63.9375em) and (min-width: 75em) {
    .post-share.share-column {
      margin-bottom: 4.5rem; } }
  @media screen and (max-width: 63.9375em) and (min-width: 90em) {
    .post-share.share-column {
      margin-bottom: 4.5rem; } }
  @media screen and (max-width: 63.9375em) {
      .post-share.share-column .share-icon:not(:last-child) {
        margin-right: 1rem; } }
  .post-share.share-column .share-icon i {
    font-size: 1.5rem; }
  @media print, screen and (min-width: 64em) {
    .post-share.share-column {
      -webkit-flex-direction: column;
          -ms-flex-direction: column;
              flex-direction: column;
      position: absolute;
      right: 0;
      -webkit-transform: translateX(-50%);
          -ms-transform: translateX(-50%);
              transform: translateX(-50%); }
      .post-share.share-column .share-icon:not(:last-child) {
        margin-bottom: 1.5rem; } }
  .post-share.share-row .share-icon:not(:first-child) {
    margin-left: 1rem; }
    @media print, screen and (min-width: 64em) {
      .post-share.share-row .share-icon:not(:first-child) {
        margin-left: 1.5rem; } }
  .post-share .share-icon i {
    font-size: 1.5rem;
    font-weight: 400; }

.post-meta {
  display: -webkit-inline-flex;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center; }
  .post-meta img {
    border-radius: 50%;
    height: 48px;
    width: 48px; }
  .post-meta:hover .author-name {
    text-decoration: underline; }
  .post-meta.large img {
    height: 80px;
    width: 80px; }
  .post-meta .author-name {
    margin-left: 1rem;
    margin-bottom: 0;
    color: #212121; }

.browse-by-category .browse-by-category-title {
  color: #001E62;
  margin-bottom: 1.5rem;
  text-align: center; }
  @media print, screen and (min-width: 40em) {
    .browse-by-category .browse-by-category-title {
      margin-bottom: 2.91667rem; } }
  @media print, screen and (min-width: 64em) {
    .browse-by-category .browse-by-category-title {
      margin-bottom: 2.5rem; } }
  @media screen and (min-width: 75em) {
    .browse-by-category .browse-by-category-title {
      margin-bottom: 3rem; } }
  @media screen and (min-width: 90em) {
    .browse-by-category .browse-by-category-title {
      margin-bottom: 3rem; } }

.browse-by-category .category-cell {
  background-color: rgba(45, 201, 215, 0.1);
  border-radius: 20px;
  overflow: hidden; }
  .browse-by-category .category-cell .image-col img {
    height: 100%;
    width: 100%;
    object-fit: cover;
    object-position: center; }
  .browse-by-category .category-cell .content-col {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    min-height: 6.25rem;
    padding-top: 2.25rem;
    padding-bottom: 2.25rem;
    padding-left: 1.5rem;
    padding-right: 1.5rem; }
    @media print, screen and (min-width: 40em) {
      .browse-by-category .category-cell .content-col {
        padding-top: 4.375rem;
        padding-bottom: 4.375rem; } }
    @media print, screen and (min-width: 64em) {
      .browse-by-category .category-cell .content-col {
        padding-top: 3.75rem;
        padding-bottom: 3.75rem; } }
    @media screen and (min-width: 75em) {
      .browse-by-category .category-cell .content-col {
        padding-top: 4.5rem;
        padding-bottom: 4.5rem; } }
    @media screen and (min-width: 90em) {
      .browse-by-category .category-cell .content-col {
        padding-top: 4.5rem;
        padding-bottom: 4.5rem; } }
    @media print, screen and (min-width: 40em) {
      .browse-by-category .category-cell .content-col {
        padding-left: 4.375rem;
        padding-right: 4.375rem; } }
    @media print, screen and (min-width: 64em) {
      .browse-by-category .category-cell .content-col {
        padding-left: 6.25rem;
        padding-right: 6.25rem; } }
    @media screen and (min-width: 75em) {
      .browse-by-category .category-cell .content-col {
        padding-left: 7.5rem;
        padding-right: 7.5rem; } }
    @media screen and (min-width: 90em) {
      .browse-by-category .category-cell .content-col {
        padding-left: 7.5rem;
        padding-right: 7.5rem; } }
    @media screen and (min-width: 40em) and (max-width: 63.9375em) {
      .browse-by-category .category-cell .content-col {
        padding-top: 1.5rem;
        padding-bottom: 1.5rem; } }
  @media screen and (min-width: 40em) and (max-width: 63.9375em) and (min-width: 40em) {
    .browse-by-category .category-cell .content-col {
      padding-top: 2.91667rem;
      padding-bottom: 2.91667rem; } }
  @media screen and (min-width: 40em) and (max-width: 63.9375em) and (min-width: 64em) {
    .browse-by-category .category-cell .content-col {
      padding-top: 2.5rem;
      padding-bottom: 2.5rem; } }
  @media screen and (min-width: 40em) and (max-width: 63.9375em) and (min-width: 75em) {
    .browse-by-category .category-cell .content-col {
      padding-top: 3rem;
      padding-bottom: 3rem; } }
  @media screen and (min-width: 40em) and (max-width: 63.9375em) and (min-width: 90em) {
    .browse-by-category .category-cell .content-col {
      padding-top: 3rem;
      padding-bottom: 3rem; } }
    @media print, screen and (min-width: 40em) {
      .browse-by-category .category-cell .content-col {
        padding-left: 0.5rem;
        padding-right: 0.5rem; } }
  @media print, screen and (min-width: 40em) and (min-width: 40em) {
    .browse-by-category .category-cell .content-col {
      padding-left: 1.45833rem;
      padding-right: 1.45833rem; } }
  @media print, screen and (min-width: 40em) and (min-width: 64em) {
    .browse-by-category .category-cell .content-col {
      padding-left: 2.08333rem;
      padding-right: 2.08333rem; } }
  @media screen and (min-width: 40em) and (min-width: 75em) {
    .browse-by-category .category-cell .content-col {
      padding-left: 2.5rem;
      padding-right: 2.5rem; } }
  @media screen and (min-width: 40em) and (min-width: 90em) {
    .browse-by-category .category-cell .content-col {
      padding-left: 2.5rem;
      padding-right: 2.5rem; } }
    .browse-by-category .category-cell .content-col .category-title {
      margin-bottom: 0;
      color: #001E62;
      width: 100%; }
      @media screen and (max-width: 39.9375em) {
        .browse-by-category .category-cell .content-col .category-title {
          font-size: 1.125rem; } }
      @media print, screen and (min-width: 64em) {
        .browse-by-category .category-cell .content-col .category-title {
          font-size: 1.625rem; } }
  .browse-by-category .category-cell:hover .content-col .category-title, .browse-by-category .category-cell:active .content-col .category-title, .browse-by-category .category-cell:focus .content-col .category-title {
    text-decoration: underline; }

.search-result-item {
  padding-top: 0.75rem;
  padding-bottom: 0.75rem; }
  @media print, screen and (min-width: 40em) {
    .search-result-item {
      padding-top: 1.45833rem;
      padding-bottom: 1.45833rem; } }
  @media print, screen and (min-width: 64em) {
    .search-result-item {
      padding-top: 1.25rem;
      padding-bottom: 1.25rem; } }
  @media screen and (min-width: 75em) {
    .search-result-item {
      padding-top: 1.5rem;
      padding-bottom: 1.5rem; } }
  @media screen and (min-width: 90em) {
    .search-result-item {
      padding-top: 1.5rem;
      padding-bottom: 1.5rem; } }
  .search-result-item .image-link {
    border-radius: 20px;
    position: relative;
    overflow: hidden;
    display: block;
    height: 100%;
    width: 100%; }
    @media screen and (max-width: 39.9375em) {
      .search-result-item .image-link {
        min-height: 15rem; } }
    .search-result-item .image-link:hover img, .search-result-item .image-link:active img, .search-result-item .image-link:focus img {
      -webkit-transform: scale(1.05);
          -ms-transform: scale(1.05);
              transform: scale(1.05); }
    .search-result-item .image-link img {
      position: absolute;
      height: 100%;
      width: 100%;
      object-fit: cover;
      transition: -webkit-transform .25s ease;
      transition: transform .25s ease;
      transition: transform .25s ease, -webkit-transform .25s ease; }
  .search-result-item .content-cell {
    padding-top: 1.5rem;
    padding-bottom: 1.5rem; }
    @media print, screen and (min-width: 40em) {
      .search-result-item .content-cell {
        padding-top: 2.91667rem;
        padding-bottom: 2.91667rem; } }
    @media print, screen and (min-width: 64em) {
      .search-result-item .content-cell {
        padding-top: 2.5rem;
        padding-bottom: 2.5rem; } }
    @media screen and (min-width: 75em) {
      .search-result-item .content-cell {
        padding-top: 3rem;
        padding-bottom: 3rem; } }
    @media screen and (min-width: 90em) {
      .search-result-item .content-cell {
        padding-top: 3rem;
        padding-bottom: 3rem; } }
    .search-result-item .content-cell .item-title {
      display: block;
      margin-bottom: .5rem;
      font-weight: 700;
      color: #212121; }
    .search-result-item .content-cell .description {
      margin-bottom: 0; }
    .search-result-item .content-cell .cat-name {
      display: block;
      margin-bottom: .5rem;
      text-transform: uppercase;
      color: #001E62; }
    .search-result-item .content-cell .item-title:hover, .search-result-item .content-cell .item-title:active, .search-result-item .content-cell .item-title:focus, .search-result-item .content-cell a.cat-name:hover, .search-result-item .content-cell a.cat-name:active, .search-result-item .content-cell a.cat-name:focus {
      text-decoration: underline; }
    @media print, screen and (min-width: 40em) {
      .search-result-item .content-cell {
        padding-right: 1.5rem; } }
    @media print, screen and (min-width: 64em) {
      .search-result-item .content-cell {
        padding-right: 3rem; } }

@media print, screen and (min-width: 64em) {
  .instagram-feed #sb_instagram {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex; } }

.instagram-feed #sb_instagram .sb_instagram_header {
  margin: 0 !important; }
  @media print, screen and (min-width: 64em) {
    .instagram-feed #sb_instagram .sb_instagram_header {
      width: 20%; } }
  .instagram-feed #sb_instagram .sb_instagram_header a.sbi_header_link {
    padding-top: 4.5rem;
    padding-bottom: 4.5rem;
    padding-left: 1.5rem;
    padding-right: 1.5rem;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-flow: column-reverse;
        -ms-flex-flow: column-reverse;
            flex-flow: column-reverse;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
    height: 100%;
    width: 100%;
    background-color: #f7f7f7; }
    @media print, screen and (min-width: 40em) {
      .instagram-feed #sb_instagram .sb_instagram_header a.sbi_header_link {
        padding-top: 8.75rem;
        padding-bottom: 8.75rem; } }
    @media print, screen and (min-width: 64em) {
      .instagram-feed #sb_instagram .sb_instagram_header a.sbi_header_link {
        padding-top: 7.5rem;
        padding-bottom: 7.5rem; } }
    @media screen and (min-width: 75em) {
      .instagram-feed #sb_instagram .sb_instagram_header a.sbi_header_link {
        padding-top: 9rem;
        padding-bottom: 9rem; } }
    @media screen and (min-width: 90em) {
      .instagram-feed #sb_instagram .sb_instagram_header a.sbi_header_link {
        padding-top: 9rem;
        padding-bottom: 9rem; } }
    @media print, screen and (min-width: 40em) {
      .instagram-feed #sb_instagram .sb_instagram_header a.sbi_header_link {
        padding-left: 4.375rem;
        padding-right: 4.375rem; } }
    @media print, screen and (min-width: 64em) {
      .instagram-feed #sb_instagram .sb_instagram_header a.sbi_header_link {
        padding-left: 6.25rem;
        padding-right: 6.25rem; } }
    @media screen and (min-width: 75em) {
      .instagram-feed #sb_instagram .sb_instagram_header a.sbi_header_link {
        padding-left: 7.5rem;
        padding-right: 7.5rem; } }
    @media screen and (min-width: 90em) {
      .instagram-feed #sb_instagram .sb_instagram_header a.sbi_header_link {
        padding-left: 7.5rem;
        padding-right: 7.5rem; } }
    @media print, screen and (min-width: 64em) {
      .instagram-feed #sb_instagram .sb_instagram_header a.sbi_header_link {
        padding: 1rem; } }
    .instagram-feed #sb_instagram .sb_instagram_header a.sbi_header_link .sbi_header_text {
      padding: 0;
      text-align: center;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      -webkit-flex-flow: column-reverse;
          -ms-flex-flow: column-reverse;
              flex-flow: column-reverse;
      -webkit-align-items: center;
          -ms-flex-align: center;
              align-items: center;
      -webkit-justify-content: center;
          -ms-flex-pack: center;
              justify-content: center; }
      .instagram-feed #sb_instagram .sb_instagram_header a.sbi_header_link .sbi_header_text * {
        margin: 0 auto !important;
        display: block;
        float: none;
        color: #001E62; }
      .instagram-feed #sb_instagram .sb_instagram_header a.sbi_header_link .sbi_header_text h3 {
        position: relative;
        padding-left: 1rem !important;
        font-size: 1rem;
        font-family: "gorditaregular", -apple-system, BlinkMacSystemFont, "Segoe UI", "Roboto", "Oxygen", "Ubuntu", "Cantarell", "Fira Sans", "Droid Sans", "Helvetica Neue", sans-serif; }
        .instagram-feed #sb_instagram .sb_instagram_header a.sbi_header_link .sbi_header_text h3::before {
          content: '@';
          position: absolute;
          left: 0; }
      .instagram-feed #sb_instagram .sb_instagram_header a.sbi_header_link .sbi_header_text .sbi_bio {
        font-size: 1.25rem;
        font-family: "gorditabold", -apple-system, BlinkMacSystemFont, "Segoe UI", "Roboto", "Oxygen", "Ubuntu", "Cantarell", "Fira Sans", "Droid Sans", "Helvetica Neue", sans-serif; }
    .instagram-feed #sb_instagram .sb_instagram_header a.sbi_header_link .sbi_header_img {
      margin: 0 !important;
      background: none;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      -webkit-align-items: center;
          -ms-flex-align: center;
              align-items: center;
      -webkit-justify-content: center;
          -ms-flex-pack: center;
              justify-content: center;
      height: 2rem;
      width: 2rem; }
      .instagram-feed #sb_instagram .sb_instagram_header a.sbi_header_link .sbi_header_img .sbi_header_img_hover {
        opacity: 1 !important;
        background: none !important; }
      .instagram-feed #sb_instagram .sb_instagram_header a.sbi_header_link .sbi_header_img svg {
        position: relative;
        margin: 0;
        height: 2rem;
        width: 2rem;
        top: auto;
        left: auto;
        color: #001E62; }
      .instagram-feed #sb_instagram .sb_instagram_header a.sbi_header_link .sbi_header_img img {
        display: none !important; }

@media print, screen and (min-width: 64em) {
  .instagram-feed #sb_instagram #sbi_images {
    width: 80%; } }

.instagram-feed #sb_instagram #sbi_load {
  display: none; }

.app-cta {
  padding-top: 2.25rem;
  padding-bottom: 2.25rem; }
  @media print, screen and (min-width: 40em) {
    .app-cta {
      padding-top: 4.375rem;
      padding-bottom: 4.375rem; } }
  @media print, screen and (min-width: 64em) {
    .app-cta {
      padding-top: 3.75rem;
      padding-bottom: 3.75rem; } }
  @media screen and (min-width: 75em) {
    .app-cta {
      padding-top: 4.5rem;
      padding-bottom: 4.5rem; } }
  @media screen and (min-width: 90em) {
    .app-cta {
      padding-top: 4.5rem;
      padding-bottom: 4.5rem; } }
  .app-cta .app-cta-logo {
    max-width: 300px;
    margin: 0 auto 1.5rem;
    display: block; }
    @media print, screen and (min-width: 40em) {
      .app-cta .app-cta-logo {
        margin-bottom: 2rem; } }
  .app-cta .app-cta-content {
    text-align: center;
    font-size: 1.375rem;
    margin-bottom: 1.5rem; }
    @media print, screen and (min-width: 40em) {
      .app-cta .app-cta-content {
        font-size: 1.625rem;
        margin-bottom: 2rem; } }
  .app-cta .app-cta-action-link {
    margin: 0 auto;
    display: block;
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content; }

.slanted-bg-section {
  overflow: hidden;
  position: relative; }
  .slanted-bg-section.content-left .image-cell::after {
    left: 0; }
  @media print, screen and (min-width: 40em) {
    .slanted-bg-section.content-left .bg-image {
      left: 0;
      right: auto; } }
  .slanted-bg-section.content-right .image-cell::after {
    right: 0; }
  @media print, screen and (min-width: 40em) {
    .slanted-bg-section.content-right .bg-image {
      right: 0;
      left: auto; } }
  .slanted-bg-section .image-cell {
    position: relative;
    z-index: 1;
    padding-top: 3.6rem;
    padding-bottom: 3.6rem; }
    @media print, screen and (min-width: 40em) {
      .slanted-bg-section .image-cell {
        padding-top: 7rem;
        padding-bottom: 7rem; } }
    @media print, screen and (min-width: 64em) {
      .slanted-bg-section .image-cell {
        padding-top: 6rem;
        padding-bottom: 6rem; } }
    @media screen and (min-width: 75em) {
      .slanted-bg-section .image-cell {
        padding-top: 7.2rem;
        padding-bottom: 7.2rem; } }
    @media screen and (min-width: 90em) {
      .slanted-bg-section .image-cell {
        padding-top: 7.2rem;
        padding-bottom: 7.2rem; } }
    @media print, screen and (min-width: 40em) {
      .slanted-bg-section .image-cell {
        padding-top: 3.21429rem;
        padding-bottom: 3.21429rem; } }
  @media print, screen and (min-width: 40em) and (min-width: 40em) {
    .slanted-bg-section .image-cell {
      padding-top: 6.25rem;
      padding-bottom: 6.25rem; } }
  @media print, screen and (min-width: 40em) and (min-width: 64em) {
    .slanted-bg-section .image-cell {
      padding-top: 5.35714rem;
      padding-bottom: 5.35714rem; } }
  @media screen and (min-width: 40em) and (min-width: 75em) {
    .slanted-bg-section .image-cell {
      padding-top: 6.42857rem;
      padding-bottom: 6.42857rem; } }
  @media screen and (min-width: 40em) and (min-width: 90em) {
    .slanted-bg-section .image-cell {
      padding-top: 6.42857rem;
      padding-bottom: 6.42857rem; } }
    @media print, screen and (min-width: 64em) {
      .slanted-bg-section .image-cell {
        padding-top: 3rem;
        padding-bottom: 3rem; } }
  @media print, screen and (min-width: 64em) and (min-width: 40em) {
    .slanted-bg-section .image-cell {
      padding-top: 5.83333rem;
      padding-bottom: 5.83333rem; } }
  @media print, screen and (min-width: 64em) and (min-width: 64em) {
    .slanted-bg-section .image-cell {
      padding-top: 5rem;
      padding-bottom: 5rem; } }
  @media screen and (min-width: 64em) and (min-width: 75em) {
    .slanted-bg-section .image-cell {
      padding-top: 6rem;
      padding-bottom: 6rem; } }
  @media screen and (min-width: 64em) and (min-width: 90em) {
    .slanted-bg-section .image-cell {
      padding-top: 6rem;
      padding-bottom: 6rem; } }
    .slanted-bg-section .image-cell::after {
      position: absolute;
      height: 100%;
      width: 100%;
      bottom: 0;
      z-index: 1; }
      @media print, screen and (min-width: 40em) {
        .slanted-bg-section .image-cell::after {
          content: ''; } }
  .slanted-bg-section .bg-image {
    position: absolute;
    top: 0;
    height: 100%;
    z-index: 0;
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    width: calc(100% + (1.5rem *2));
    left: 0;
    margin-left: -1.5rem; }
    @media print, screen and (min-width: 40em) {
      .slanted-bg-section .bg-image {
        width: 60vw;
        margin-left: unset; } }
    @media screen and (min-width: 64em) and (max-width: 74.9375em) {
      .slanted-bg-section .bg-image {
        width: 70vw; } }
  .slanted-bg-section .overlay-img {
    position: relative;
    z-index: 2;
    width: auto;
    max-width: none;
    display: block; }
    @media screen and (max-width: 39.9375em) {
      .slanted-bg-section .overlay-img {
        margin-left: auto; } }
    .slanted-bg-section .overlay-img:not(.give-shadow) {
      max-height: 26rem;
      height: calc(100% + (80px*2));
      margin-top: -40px;
      margin-bottom: -40px; }
      @media screen and (max-width: 39.9375em) {
        .slanted-bg-section .overlay-img:not(.give-shadow) {
          height: auto;
          max-height: none;
          width: calc(55% + 80px);
          margin-right: -40px; } }
      @media print, screen and (min-width: 40em) {
        .slanted-bg-section .overlay-img:not(.give-shadow) {
          max-height: 30rem; } }
      @media print, screen and (min-width: 64em) {
        .slanted-bg-section .overlay-img:not(.give-shadow) {
          max-height: 43.75rem; } }
      @media print, screen and (min-width: 40em) {
        .slanted-bg-section .overlay-img:not(.give-shadow) {
          margin-top: -80px;
          margin-bottom: -80px; } }
    .slanted-bg-section .overlay-img.give-shadow {
      border-radius: 10px;
      box-shadow: 0rem 4px 40px rgba(0, 0, 0, 0.1);
      height: 16rem; }
      @media screen and (max-width: 39.9375em) {
        .slanted-bg-section .overlay-img.give-shadow {
          height: auto;
          max-height: none;
          width: 50%; } }
      @media print, screen and (min-width: 40em) {
        .slanted-bg-section .overlay-img.give-shadow {
          height: 23.75rem; } }
      @media print, screen and (min-width: 64em) {
        .slanted-bg-section .overlay-img.give-shadow {
          height: 33.75rem; } }
      @media print, screen and (min-width: 40em) {
        .slanted-bg-section .overlay-img.give-shadow {
          border-radius: 30px; } }
      @media print, screen and (min-width: 64em) {
        .slanted-bg-section .overlay-img.give-shadow {
          border-radius: 40px; } }
  .slanted-bg-section .content-cell {
    padding-top: 4.5rem;
    padding-bottom: 4.5rem;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
    position: relative;
    z-index: 3; }
    @media print, screen and (min-width: 40em) {
      .slanted-bg-section .content-cell {
        padding-top: 8.75rem;
        padding-bottom: 8.75rem; } }
    @media print, screen and (min-width: 64em) {
      .slanted-bg-section .content-cell {
        padding-top: 7.5rem;
        padding-bottom: 7.5rem; } }
    @media screen and (min-width: 75em) {
      .slanted-bg-section .content-cell {
        padding-top: 9rem;
        padding-bottom: 9rem; } }
    @media screen and (min-width: 90em) {
      .slanted-bg-section .content-cell {
        padding-top: 9rem;
        padding-bottom: 9rem; } }
    @media screen and (min-width: 40em) and (max-width: 63.9375em) {
      .slanted-bg-section .content-cell {
        padding-top: 1.125rem;
        padding-bottom: 1.125rem; } }
  @media screen and (min-width: 40em) and (max-width: 63.9375em) and (min-width: 40em) {
    .slanted-bg-section .content-cell {
      padding-top: 2.1875rem;
      padding-bottom: 2.1875rem; } }
  @media screen and (min-width: 40em) and (max-width: 63.9375em) and (min-width: 64em) {
    .slanted-bg-section .content-cell {
      padding-top: 1.875rem;
      padding-bottom: 1.875rem; } }
  @media screen and (min-width: 40em) and (max-width: 63.9375em) and (min-width: 75em) {
    .slanted-bg-section .content-cell {
      padding-top: 2.25rem;
      padding-bottom: 2.25rem; } }
  @media screen and (min-width: 40em) and (max-width: 63.9375em) and (min-width: 90em) {
    .slanted-bg-section .content-cell {
      padding-top: 2.25rem;
      padding-bottom: 2.25rem; } }
    @media print, screen and (min-width: 64em) {
      .slanted-bg-section .content-cell {
        padding-top: 4.5rem;
        padding-bottom: 4.5rem; } }
  @media print, screen and (min-width: 64em) and (min-width: 40em) {
    .slanted-bg-section .content-cell {
      padding-top: 8.75rem;
      padding-bottom: 8.75rem; } }
  @media print, screen and (min-width: 64em) and (min-width: 64em) {
    .slanted-bg-section .content-cell {
      padding-top: 7.5rem;
      padding-bottom: 7.5rem; } }
  @media screen and (min-width: 64em) and (min-width: 75em) {
    .slanted-bg-section .content-cell {
      padding-top: 9rem;
      padding-bottom: 9rem; } }
  @media screen and (min-width: 64em) and (min-width: 90em) {
    .slanted-bg-section .content-cell {
      padding-top: 9rem;
      padding-bottom: 9rem; } }
    .slanted-bg-section .content-cell .section-title, .slanted-bg-section .content-cell .bullet-points {
      margin-bottom: 1.5rem; }
      @media screen and (min-width: 75em) {
        .slanted-bg-section .content-cell .section-title, .slanted-bg-section .content-cell .bullet-points {
          margin-bottom: 2.5rem; } }

section.slanted-bg-section:nth-of-type(odd) {
  background-color: #f7f7f7; }
  section.slanted-bg-section:nth-of-type(odd) .image-cell::after {
    background-color: #f7f7f7;
    -webkit-transform: translateX(-60%) skewX(20deg);
        -ms-transform: translateX(-60%) skewX(20deg);
            transform: translateX(-60%) skewX(20deg); }
  @media print, screen and (min-width: 40em) {
    section.slanted-bg-section:nth-of-type(odd) .overlay-img {
      margin-right: auto !important; } }
  @media print, screen and (min-width: 64em) {
    section.slanted-bg-section:nth-of-type(odd) .overlay-img.give-shadow {
      margin-left: 40px; } }

section.slanted-bg-section:nth-of-type(even) {
  background-color: #ffffff; }
  section.slanted-bg-section:nth-of-type(even) .image-cell::after {
    background-color: #ffffff;
    -webkit-transform: translateX(60%) skewX(-20deg);
        -ms-transform: translateX(60%) skewX(-20deg);
            transform: translateX(60%) skewX(-20deg); }
  @media print, screen and (min-width: 40em) {
    section.slanted-bg-section:nth-of-type(even) .overlay-img {
      margin-left: auto !important; } }
  @media print, screen and (min-width: 64em) {
    section.slanted-bg-section:nth-of-type(even) .overlay-img.give-shadow {
      margin-right: 40px; } }

@media screen and (max-width: 39.9375em) {
  .slanted-bg-section .bg-image {
    width: calc(150% + (1.5rem *2));
    margin-left: -50%;
    -webkit-transform: matrix(-1, 0, 0, 1, 0, 0);
        -ms-transform: matrix(-1, 0, 0, 1, 0, 0);
            transform: matrix(-1, 0, 0, 1, 0, 0); } }

@media screen and (min-width: 90.0625em) {
  .slanted-bg-section .bg-image {
    width: 50vw; } }

@media screen and (max-width: 39.9375em) {
  .slanted-bg-section-3 .overlay-img {
    margin-right: auto;
    margin-left: 0; }
    .slanted-bg-section-3 .overlay-img:not(.give-shadow) {
      margin-left: -40px; } }

@media screen and (max-width: 39.9375em) {
  .slanted-bg-section-3 .bg-image {
    width: 150%; } }

@media print, screen and (min-width: 40em) {
  .slanted-bg-section-3 .bg-image {
    width: 70vw; } }

@media screen and (min-width: 64em) and (max-width: 74.9375em) {
  .slanted-bg-section-3 .bg-image {
    width: 80vw; } }

@media screen and (min-width: 90.0625em) {
  .slanted-bg-section-3 .bg-image {
    width: 50vw; } }

.video-with-text-section {
  padding-top: 3rem;
  padding-bottom: 3rem; }
  @media print, screen and (min-width: 40em) {
    .video-with-text-section {
      padding-top: 5.83333rem;
      padding-bottom: 5.83333rem; } }
  @media print, screen and (min-width: 64em) {
    .video-with-text-section {
      padding-top: 5rem;
      padding-bottom: 5rem; } }
  @media screen and (min-width: 75em) {
    .video-with-text-section {
      padding-top: 6rem;
      padding-bottom: 6rem; } }
  @media screen and (min-width: 90em) {
    .video-with-text-section {
      padding-top: 6rem;
      padding-bottom: 6rem; } }
  @media print, screen and (min-width: 64em) {
    .video-with-text-section {
      padding-top: 6rem;
      padding-bottom: 6rem; } }
  @media print, screen and (min-width: 64em) and (min-width: 40em) {
    .video-with-text-section {
      padding-top: 11.66667rem;
      padding-bottom: 11.66667rem; } }
  @media print, screen and (min-width: 64em) and (min-width: 64em) {
    .video-with-text-section {
      padding-top: 10rem;
      padding-bottom: 10rem; } }
  @media screen and (min-width: 64em) and (min-width: 75em) {
    .video-with-text-section {
      padding-top: 12rem;
      padding-bottom: 12rem; } }
  @media screen and (min-width: 64em) and (min-width: 90em) {
    .video-with-text-section {
      padding-top: 12rem;
      padding-bottom: 12rem; } }
  .video-with-text-section .content-cell {
    margin-top: 1.8rem; }
    @media print, screen and (min-width: 40em) {
      .video-with-text-section .content-cell {
        margin-top: 3.5rem; } }
    @media print, screen and (min-width: 64em) {
      .video-with-text-section .content-cell {
        margin-top: 3rem; } }
    @media screen and (min-width: 75em) {
      .video-with-text-section .content-cell {
        margin-top: 3.6rem; } }
    @media screen and (min-width: 90em) {
      .video-with-text-section .content-cell {
        margin-top: 3.6rem; } }
    @media print, screen and (min-width: 64em) {
      .video-with-text-section .content-cell {
        margin-top: 0; } }
    @media screen and (min-width: 75em) {
      .video-with-text-section .content-cell {
        margin-top: 2.25rem; } }
  @media screen and (min-width: 75em) and (min-width: 40em) {
    .video-with-text-section .content-cell {
      margin-top: 4.375rem; } }
  @media screen and (min-width: 75em) and (min-width: 64em) {
    .video-with-text-section .content-cell {
      margin-top: 3.75rem; } }
  @media screen and (min-width: 75em) and (min-width: 75em) {
    .video-with-text-section .content-cell {
      margin-top: 4.5rem; } }
  @media screen and (min-width: 75em) and (min-width: 90em) {
    .video-with-text-section .content-cell {
      margin-top: 4.5rem; } }
  .video-with-text-section .content-wrapper {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
    text-align: center; }
    @media screen and (min-width: 40em) and (max-width: 63.9375em) {
      .video-with-text-section .content-wrapper {
        width: calc(66.66667% - 1.25rem);
        margin-right: 0.625rem;
        margin-left: 0.625rem;
        margin-left: auto;
        margin-right: auto; } }
    @media print, screen and (min-width: 64em) {
      .video-with-text-section .content-wrapper {
        text-align: left; } }
  .video-with-text-section .section-title, .video-with-text-section .section-content {
    margin-bottom: 1.5rem; }
    @media screen and (min-width: 75em) {
      .video-with-text-section .section-title, .video-with-text-section .section-content {
        margin-bottom: 2.5rem; } }
  @media print, screen and (min-width: 64em) {
    .video-with-text-section .section-title {
      font-size: 1.5rem; } }
  @media print, screen and (min-width: 64em) and (min-width: 40em) {
    .video-with-text-section .section-title {
      font-size: 1.5rem; } }
  @media print, screen and (min-width: 64em) and (min-width: 64em) {
    .video-with-text-section .section-title {
      font-size: 1.875rem; } }
  .video-with-text-section .video-footer {
    margin-top: 1rem;
    text-align: center; }
    .video-with-text-section .video-footer a {
      font-size: 0.875rem;
      color: #000000;
      text-decoration: underline; }
      .video-with-text-section .video-footer a:hover, .video-with-text-section .video-footer a:focus {
        text-decoration: none; }
    @media print, screen and (min-width: 64em) {
      .video-with-text-section .video-footer {
        text-align: left;
        margin-top: 0.5rem; } }

.two-col-cta-section {
  padding-top: 3rem;
  padding-bottom: 3rem;
  background-color: #f7f7f7;
  text-align: center; }
  @media print, screen and (min-width: 40em) {
    .two-col-cta-section {
      padding-top: 5.83333rem;
      padding-bottom: 5.83333rem; } }
  @media print, screen and (min-width: 64em) {
    .two-col-cta-section {
      padding-top: 5rem;
      padding-bottom: 5rem; } }
  @media screen and (min-width: 75em) {
    .two-col-cta-section {
      padding-top: 6rem;
      padding-bottom: 6rem; } }
  @media screen and (min-width: 90em) {
    .two-col-cta-section {
      padding-top: 6rem;
      padding-bottom: 6rem; } }
  .two-col-cta-section .outer-grid .section-title {
    margin-bottom: 1rem; }
  .two-col-cta-section .inner-grid {
    margin-top: 2.25rem; }
    @media print, screen and (min-width: 40em) {
      .two-col-cta-section .inner-grid {
        margin-top: 4.375rem; } }
    @media print, screen and (min-width: 64em) {
      .two-col-cta-section .inner-grid {
        margin-top: 3.75rem; } }
    @media screen and (min-width: 75em) {
      .two-col-cta-section .inner-grid {
        margin-top: 4.5rem; } }
    @media screen and (min-width: 90em) {
      .two-col-cta-section .inner-grid {
        margin-top: 4.5rem; } }
    .two-col-cta-section .inner-grid .cell:not(:first-child) {
      margin-top: calc(4.5rem / 2); }
      @media print, screen and (min-width: 40em) {
        .two-col-cta-section .inner-grid .cell:not(:first-child) {
          margin-top: calc(8.75rem / 2); } }
      @media print, screen and (min-width: 64em) {
        .two-col-cta-section .inner-grid .cell:not(:first-child) {
          margin-top: 0; } }
  .two-col-cta-section .tile-naked {
    -webkit-text-decoration-color: #000000;
            text-decoration-color: #000000; }
    .two-col-cta-section .tile-naked:hover, .two-col-cta-section .tile-naked:active, .two-col-cta-section .tile-naked:focus {
      text-decoration: underline;
      -webkit-text-decoration-color: #000000;
              text-decoration-color: #000000; }
    .two-col-cta-section .tile-naked .image-wrap {
      height: 11.125rem;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      -webkit-align-items: center;
          -ms-flex-align: center;
              align-items: center;
      -webkit-justify-content: center;
          -ms-flex-pack: center;
              justify-content: center;
      margin-bottom: 1rem;
      -webkit-flex-direction: column;
          -ms-flex-direction: column;
              flex-direction: column; }
      .two-col-cta-section .tile-naked .image-wrap img {
        width: auto;
        min-width: 0;
        max-width: none;
        height: auto;
        max-height: 100%; }
    .two-col-cta-section .tile-naked .item-title, .two-col-cta-section .tile-naked .item-description {
      color: #212121; }

.front-hero {
  background: url("../images/demo/hero-bg-foundation-6-small.svg") bottom center;
  background-size: cover;
  background-position: bottom;
  padding: 4.0625rem 0;
  margin: 0 0 2rem;
  height: auto;
  position: relative;
  text-align: left; }
  .front-hero .marketing {
    padding-right: 1.5rem;
    padding-left: 1.5rem;
    max-width: 55rem;
    margin: 0 auto;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-flow: row wrap;
        -ms-flex-flow: row wrap;
            flex-flow: row wrap; }
    @media print, screen and (min-width: 40em) {
      .front-hero .marketing {
        padding-right: 4.375rem;
        padding-left: 4.375rem; } }
    @media print, screen and (min-width: 64em) {
      .front-hero .marketing {
        padding-right: 6.25rem;
        padding-left: 6.25rem; } }
    @media screen and (min-width: 75em) {
      .front-hero .marketing {
        padding-right: 7.5rem;
        padding-left: 7.5rem; } }
    @media screen and (min-width: 90em) {
      .front-hero .marketing {
        padding-right: 7.5rem;
        padding-left: 7.5rem; } }
  @media print, screen and (min-width: 40em) {
    .front-hero {
      background: url("../images/demo/hero-bg-foundation-6-large.svg") bottom center;
      background-size: cover;
      background-position: center;
      height: 42.8125rem;
      margin: 0 0 4.5rem; } }
  .front-hero .watch {
    width: calc(58.33333% - 1.125rem);
    margin-right: 0.5625rem;
    margin-left: 0.5625rem; }
    @media print, screen and (min-width: 40em) {
      .front-hero .watch {
        width: calc(100% - 1.25rem);
        margin-right: 0.625rem;
        margin-left: 0.625rem; } }
    .front-hero .watch a {
      color: #B4C9D1;
      cursor: pointer;
      font-weight: 400;
      margin-right: 1.25rem; }
    .front-hero .watch a:hover {
      color: #fff; }
    .front-hero .watch #stargazers :before {
      content: "\f09b";
      font-family: FontAwesome;
      font-style: normal;
      font-weight: normal;
      text-decoration: inherit;
      color: #B4C9D1;
      margin-right: 0.5rem; }
    .front-hero .watch #twitter :before {
      content: "\f099";
      font-family: FontAwesome;
      font-style: normal;
      font-weight: normal;
      text-decoration: inherit;
      color: #B4C9D1;
      margin-right: 0.5rem; }
  .front-hero .tagline {
    width: calc(66.66667% - 1.125rem);
    margin-right: 0.5625rem;
    margin-left: 0.5625rem; }
    @media print, screen and (min-width: 40em) {
      .front-hero .tagline {
        width: calc(41.66667% - 1.25rem);
        margin-right: 0.625rem;
        margin-left: 0.625rem;
        padding-top: 6rem; } }
  .front-hero h1 {
    color: #fff;
    font-weight: 500;
    font-size: 2.2rem; }
    @media print, screen and (min-width: 40em) {
      .front-hero h1 {
        font-size: 2.875rem; } }
  .front-hero h4 {
    color: #fefefe;
    font-weight: 300;
    font-size: 1.3125rem; }
  .front-hero .download {
    margin-top: 1.25rem; }

.intro {
  padding-right: 1.5rem;
  padding-left: 1.5rem;
  max-width: 90rem;
  margin: 0 auto;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-flow: row wrap;
      -ms-flex-flow: row wrap;
          flex-flow: row wrap; }
  @media print, screen and (min-width: 40em) {
    .intro {
      padding-right: 4.375rem;
      padding-left: 4.375rem; } }
  @media print, screen and (min-width: 64em) {
    .intro {
      padding-right: 6.25rem;
      padding-left: 6.25rem; } }
  @media screen and (min-width: 75em) {
    .intro {
      padding-right: 7.5rem;
      padding-left: 7.5rem; } }
  @media screen and (min-width: 90em) {
    .intro {
      padding-right: 7.5rem;
      padding-left: 7.5rem; } }
  .intro .fp-intro {
    width: calc(100% - 1.125rem);
    margin-right: 0.5625rem;
    margin-left: 0.5625rem; }
    @media print, screen and (min-width: 40em) {
      .intro .fp-intro {
        width: calc(83.33333% - 1.25rem);
        margin-right: 0.625rem;
        margin-left: 0.625rem;
        margin-left: calc(8.33333% + 0.5625rem); }
        .intro .fp-intro h2 {
          font-weight: 300;
          margin-bottom: 1.5rem; }
        .intro .fp-intro h4 {
          font-size: 1.125rem;
          line-height: 1.6;
          color: #777;
          margin-bottom: 2rem; } }

.section-divider {
  padding-right: 1.5rem;
  padding-left: 1.5rem;
  max-width: 90rem;
  margin: 0 auto;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-flow: row wrap;
      -ms-flex-flow: row wrap;
          flex-flow: row wrap; }
  @media print, screen and (min-width: 40em) {
    .section-divider {
      padding-right: 4.375rem;
      padding-left: 4.375rem; } }
  @media print, screen and (min-width: 64em) {
    .section-divider {
      padding-right: 6.25rem;
      padding-left: 6.25rem; } }
  @media screen and (min-width: 75em) {
    .section-divider {
      padding-right: 7.5rem;
      padding-left: 7.5rem; } }
  @media screen and (min-width: 90em) {
    .section-divider {
      padding-right: 7.5rem;
      padding-left: 7.5rem; } }
  .section-divider hr {
    width: calc(100% - 1.5rem);
    margin-right: 0.75rem;
    margin-left: 0.75rem;
    box-sizing: border-box; }

.benefits {
  padding-right: 1.5rem;
  padding-left: 1.5rem;
  max-width: 90rem;
  margin: 0 auto;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-flow: row wrap;
      -ms-flex-flow: row wrap;
          flex-flow: row wrap;
  text-align: center; }
  @media print, screen and (min-width: 40em) {
    .benefits {
      padding-right: 4.375rem;
      padding-left: 4.375rem; } }
  @media print, screen and (min-width: 64em) {
    .benefits {
      padding-right: 6.25rem;
      padding-left: 6.25rem; } }
  @media screen and (min-width: 75em) {
    .benefits {
      padding-right: 7.5rem;
      padding-left: 7.5rem; } }
  @media screen and (min-width: 90em) {
    .benefits {
      padding-right: 7.5rem;
      padding-left: 7.5rem; } }
  .benefits header {
    width: calc(100% - 1.5rem);
    margin-right: 0.75rem;
    margin-left: 0.75rem; }
    .benefits header h2 {
      font-weight: 300; }
    .benefits header h4 {
      font-size: 1.125rem;
      line-height: 1.6;
      color: #777; }
  .benefits .semantic,
  .benefits .responsive,
  .benefits .customizable,
  .benefits .professional {
    width: calc(100% - 1.125rem);
    margin-right: 0.5625rem;
    margin-left: 0.5625rem; }
    @media print, screen and (min-width: 40em) {
      .benefits .semantic,
      .benefits .responsive,
      .benefits .customizable,
      .benefits .professional {
        width: calc(25% - 1.25rem);
        margin-right: 0.625rem;
        margin-left: 0.625rem; } }
    .benefits .semantic img,
    .benefits .responsive img,
    .benefits .customizable img,
    .benefits .professional img {
      padding: 1.25rem;
      margin: 1rem auto 0 auto; }
    .benefits .semantic h3,
    .benefits .responsive h3,
    .benefits .customizable h3,
    .benefits .professional h3 {
      color: #0a0a0a;
      font-weight: 300;
      font-size: 1.75rem; }
    .benefits .semantic p,
    .benefits .responsive p,
    .benefits .customizable p,
    .benefits .professional p {
      font-size: 0.9375rem; }
  .benefits .why-foundation {
    width: calc(100% - 1.5rem);
    margin-right: 0.75rem;
    margin-left: 0.75rem;
    margin-top: 4rem; }

.kitchen-sink-header {
  width: calc(100% - 1.5rem);
  margin-right: 0.75rem;
  margin-left: 0.75rem; }

.kitchen-sink-components {
  width: calc(100% - 1.125rem);
  margin-right: 0.5625rem;
  margin-left: 0.5625rem; }
  .kitchen-sink-components hr {
    margin: 3rem 0; }
  @media print, screen and (min-width: 64em) {
    .kitchen-sink-components {
      width: calc(75% - 1.5rem);
      margin-right: 0.75rem;
      margin-left: 0.75rem; } }

.kitchen-sink-nav {
  display: none; }
  @media print, screen and (min-width: 64em) {
    .kitchen-sink-nav {
      width: calc(25% - 1.5rem);
      margin-right: 0.75rem;
      margin-left: 0.75rem;
      display: block;
      float: right; }
      .kitchen-sink-nav .docs-sub-menu {
        font-size: 0.85rem;
        margin-top: 1rem; }
      .kitchen-sink-nav .docs-menu-title {
        text-transform: uppercase;
        font-size: 0.75rem;
        color: #8a8a8a;
        font-weight: bold;
        line-height: 1;
        padding-left: 0.9rem;
        margin-bottom: 0.5rem;
        border-top: 1px solid #cacaca;
        margin-top: 1rem;
        padding-top: 1.5rem; }
      .kitchen-sink-nav .docs-toc {
        width: 100%;
        padding-left: 4rem;
        padding-right: 1rem; }
      .kitchen-sink-nav .docs-toc .active {
        background: #2199e8;
        color: white; }
      .kitchen-sink-nav .docs-toc .docs-sub-menu:first-child .docs-menu-title {
        margin-top: 0;
        border-top: 0;
        padding-top: 0; } }

.kitchen-sink-grid .grid-x {
  background: #d6ecfa;
  font-size: 12px;
  line-height: 2rem;
  margin-bottom: 1.5rem; }
  .kitchen-sink-grid .grid-x .cell, .kitchen-sink-grid .grid-x :nth-child(odd) {
    background: #7bc1ef;
    color: #0a0a0a; }
  .kitchen-sink-grid .grid-x .cell:nth-child(even) {
    background: #1779ba;
    color: #fefefe; }

.type-error {
  padding-bottom: 3.5rem;
  text-align: center; }
  @media print, screen and (min-width: 40em) {
    .type-error {
      padding-top: 5.3125rem; } }
  .type-error .entry-title {
    line-height: 1;
    color: #2DC9D7; }
  .type-error hr {
    margin-top: 2rem;
    margin-bottom: 2rem; }
    @media print, screen and (min-width: 64em) {
      .type-error hr {
        margin-top: 3rem;
        margin-bottom: 3rem; } }
  .type-error .entry-content {
    max-width: 37.5rem;
    margin-left: auto;
    margin-right: auto;
    display: block;
    width: 95%; }
    .type-error .entry-content ul {
      text-align: left;
      max-width: 350px;
      margin-left: auto;
      margin-right: auto;
      padding-top: 0.5rem;
      padding-left: 3rem; }
      @media print, screen and (min-width: 40em) {
        .type-error .entry-content ul {
          padding-top: 0.5rem;
          padding-left: 4rem; } }
      .type-error .entry-content ul li > a {
        text-transform: capitalize;
        text-decoration: underline;
        display: inline; }
  .type-error .bottom {
    font-size: 1.1rem;
    line-height: 1.5rem; }
    @media print, screen and (min-width: 40em) {
      .type-error .bottom {
        font-size: 1.2rem;
        line-height: 1.8rem; } }
  .type-error .error span {
    text-align: center;
    color: #2DC9D7;
    font-size: 10rem; }
    @media print, screen and (min-width: 40em) {
      .type-error .error span {
        font-size: 15rem; } }
    @media print, screen and (min-width: 64em) {
      .type-error .error span {
        font-size: 20rem; } }
  .type-error .info-block p {
    font-weight: 600;
    margin-bottom: 0; }

@media screen and (max-width: 39.9375em) {
  .blog-home > .top-post:first-child {
    margin-bottom: 0; } }

@media print, screen and (min-width: 64em) {
  .blog-home {
    padding-top: 2.25rem; } }
  @media print, screen and (min-width: 64em) and (min-width: 40em) {
    .blog-home {
      padding-top: 4.375rem; } }
  @media print, screen and (min-width: 64em) and (min-width: 64em) {
    .blog-home {
      padding-top: 3.75rem; } }
  @media screen and (min-width: 64em) and (min-width: 75em) {
    .blog-home {
      padding-top: 4.5rem; } }
  @media screen and (min-width: 64em) and (min-width: 90em) {
    .blog-home {
      padding-top: 4.5rem; } }

@media screen and (max-width: 63.9375em) {
  .blog-home > section:not(:last-of-type) {
    margin-bottom: 3rem; } }

@media print, screen and (min-width: 64em) {
  .blog-home > section:not(:last-of-type) {
    margin-bottom: 2.25rem; } }
  @media print, screen and (min-width: 64em) and (min-width: 40em) {
    .blog-home > section:not(:last-of-type) {
      margin-bottom: 4.375rem; } }
  @media print, screen and (min-width: 64em) and (min-width: 64em) {
    .blog-home > section:not(:last-of-type) {
      margin-bottom: 3.75rem; } }
  @media screen and (min-width: 64em) and (min-width: 75em) {
    .blog-home > section:not(:last-of-type) {
      margin-bottom: 4.5rem; } }
  @media screen and (min-width: 64em) and (min-width: 90em) {
    .blog-home > section:not(:last-of-type) {
      margin-bottom: 4.5rem; } }

.blog-home #browse-by-category {
  margin-top: 3rem; }
  @media print, screen and (min-width: 64em) {
    .blog-home #browse-by-category {
      margin-top: 0; } }

.blog-home .latest-title {
  color: #001E62;
  margin-bottom: 1.5rem;
  text-align: center; }
  @media print, screen and (min-width: 40em) {
    .blog-home .latest-title {
      margin-bottom: 2.91667rem; } }
  @media print, screen and (min-width: 64em) {
    .blog-home .latest-title {
      margin-bottom: 2.5rem; } }
  @media screen and (min-width: 75em) {
    .blog-home .latest-title {
      margin-bottom: 3rem; } }
  @media screen and (min-width: 90em) {
    .blog-home .latest-title {
      margin-bottom: 3rem; } }

.user-login {
  height: 50vh;
  min-height: 18.75rem;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  text-align: center; }
  .user-login a {
    display: block; }
  .user-login .login-title {
    text-transform: uppercase;
    margin-bottom: 1.5rem; }
  .user-login .login-link {
    margin-bottom: 1rem; }
  .user-login .forgot-password-link {
    margin-bottom: 1rem; }
  .user-login .sign-up-copy {
    color: #8a8a8a; }
  .user-login .sign-up-link {
    color: #2DC9D7; }

/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImFwcC5jc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2ZvdW5kYXRpb24uc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvdXRpbC9fYnJlYWtwb2ludC5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19yZXZlYWwuc2NzcyIsIl91dGlsaXR5LWNsYXNzZXMuc2NzcyIsIl9zZXR0aW5ncy5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvX3ZlbmRvci9ub3JtYWxpemUtc2Nzcy9zYXNzL25vcm1hbGl6ZS9fbm9ybWFsaXplLW1peGluLnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9fdmVuZG9yL25vcm1hbGl6ZS1zY3NzL3Nhc3Mvbm9ybWFsaXplL192YXJpYWJsZXMuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL192ZW5kb3Ivbm9ybWFsaXplLXNjc3Mvc2Fzcy9ub3JtYWxpemUvX3ZlcnRpY2FsLXJoeXRobS5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9fZ2xvYmFsLnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL3V0aWwvX21peGlucy5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy94eS1ncmlkL19jbGFzc2VzLnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL3h5LWdyaWQvX2d1dHRlcnMuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MveHktZ3JpZC9fZ3JpZC5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy91dGlsL191bml0LnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL3h5LWdyaWQvX2NlbGwuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MveHktZ3JpZC9fbGF5b3V0LnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL3h5LWdyaWQvX2NvbGxhcHNlLnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL3h5LWdyaWQvX3Bvc2l0aW9uLnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL3h5LWdyaWQvX2ZyYW1lLnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL3R5cG9ncmFwaHkvX2Jhc2Uuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvdHlwb2dyYXBoeS9faGVscGVycy5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy90eXBvZ3JhcGh5L19hbGlnbm1lbnQuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvdHlwb2dyYXBoeS9fcHJpbnQuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fYnV0dG9uLnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2Zvcm1zL190ZXh0LnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2Zvcm1zL19jaGVja2JveC5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9mb3Jtcy9fbGFiZWwuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZm9ybXMvX2hlbHAtdGV4dC5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9mb3Jtcy9faW5wdXQtZ3JvdXAuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZm9ybXMvX2ZpZWxkc2V0LnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2Zvcm1zL19zZWxlY3Quc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZm9ybXMvX2Vycm9yLnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX2FjY29yZGlvbi5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19hY2NvcmRpb24tbWVudS5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19tZW51LnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX2JhZGdlLnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX2JyZWFkY3J1bWJzLnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX2J1dHRvbi1ncm91cC5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19jYWxsb3V0LnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX2NhcmQuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fY2xvc2UtYnV0dG9uLnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX21lbnUtaWNvbi5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19kcmlsbGRvd24uc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fZHJvcGRvd24uc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fZHJvcGRvd24tbWVudS5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19yZXNwb25zaXZlLWVtYmVkLnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL3V0aWwvX21hdGguc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fbGFiZWwuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fbWVkaWEtb2JqZWN0LnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX29mZi1jYW52YXMuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fb3JiaXQuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fcGFnaW5hdGlvbi5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19wcm9ncmVzcy1iYXIuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fc2xpZGVyLnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX3N0aWNreS5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19zd2l0Y2guc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fdGFibGUuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvdXRpbC9fY29sb3Iuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fdGFicy5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL190aHVtYm5haWwuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fdGl0bGUtYmFyLnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX3Rvb2x0aXAuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fdG9wLWJhci5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL192aXNpYmlsaXR5LnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX2ZsZXguc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvdXRpbC9fZmxleC5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL21vdGlvbi11aS9zcmMvdXRpbC9fdHJhbnNpdGlvbi5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL21vdGlvbi11aS9zcmMvX2NsYXNzZXMuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9tb3Rpb24tdWkvc3JjL19zZXR0aW5ncy5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL21vdGlvbi11aS9zcmMvdXRpbC9fa2V5ZnJhbWUuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9tb3Rpb24tdWkvc3JjL3RyYW5zaXRpb25zL19zbGlkZS5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL21vdGlvbi11aS9zcmMvdHJhbnNpdGlvbnMvX2ZhZGUuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9tb3Rpb24tdWkvc3JjL2VmZmVjdHMvX2hpbmdlLnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvbW90aW9uLXVpL3NyYy90cmFuc2l0aW9ucy9faGluZ2Uuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9tb3Rpb24tdWkvc3JjL3RyYW5zaXRpb25zL196b29tLnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvbW90aW9uLXVpL3NyYy90cmFuc2l0aW9ucy9fc3Bpbi5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL21vdGlvbi11aS9zcmMvdXRpbC9fYW5pbWF0aW9uLnNjc3MiLCJhcHAuc2NzcyIsImdsb2JhbC9fYWNjZXNzaWJpbGl0eS5zY3NzIiwiZ2xvYmFsL193cC1hZG1pbi5zY3NzIiwiZ2xvYmFsL193cC1vdmVycmlkZXMuc2NzcyIsImdsb2JhbC9fbWl4aW5zLnNjc3MiLCJtb2R1bGVzL19uYXZpZ2F0aW9uLnNjc3MiLCJtb2R1bGVzL19jb250ZW50LnNjc3MiLCJtb2R1bGVzL19mb290ZXIuc2NzcyIsIm1vZHVsZXMvX2VkaXRvci1zdHlsZS5zY3NzIiwibW9kdWxlcy9fZm9ybXMuc2NzcyIsIm1vZHVsZXMvX3R5cG9ncmFwaHkuc2NzcyIsIm1vZHVsZXMvX3Bvc3QtbmF2aWdhdGlvbi5zY3NzIiwibW9kdWxlcy9fYmFubmVyLXBhZ2UtYnJlYWsuc2NzcyIsIm1vZHVsZXMvX2ljb24tdGV4dC1ncmlkLnNjc3MiLCJtb2R1bGVzL19pbWFnZS13aXRoLWJ1YmJsZS1saW5rLnNjc3MiLCJtb2R1bGVzL19pY29uLWJ1YmJsZS1waW4uc2NzcyIsIm1vZHVsZXMvX3RleHQtY3RhLnNjc3MiLCJjb21wb25lbnRzL19idXR0b25zLnNjc3MiLCJjb21wb25lbnRzL19jYXJkcy5zY3NzIiwiY29tcG9uZW50cy9fZmVhdHVyZWQtaW1hZ2Uuc2NzcyIsImNvbXBvbmVudHMvX2RpdmlkZXJzLnNjc3MiLCJjb21wb25lbnRzL19saXN0cy5zY3NzIiwiY29tcG9uZW50cy9fbGlua3Muc2NzcyIsImNvbXBvbmVudHMvX2JyZWFkY3J1bWJzLnNjc3MiLCJjb21wb25lbnRzL19yZXZlYWwtbW9kYWwuc2NzcyIsImNvbXBvbmVudHMvX2dldC1zdGFydGVkLXNlY3Rpb24uc2NzcyIsImNvbXBvbmVudHMvX2dvYWwtc2VjdGlvbi5zY3NzIiwiY29tcG9uZW50cy9fZ3VpZGFuY2Utc2VjdGlvbi5zY3NzIiwiY29tcG9uZW50cy9fdHJhY2tpbmctc2VjdGlvbi5zY3NzIiwiY29tcG9uZW50cy9fcHJvZ3Jlc3Mtc2VjdGlvbi5zY3NzIiwiY29tcG9uZW50cy9fY29tbXVuaXR5LXNlY3Rpb24uc2NzcyIsImNvbXBvbmVudHMvX3ZpcnR1YWwtcmFjZXMtc2VjdGlvbi5zY3NzIiwiY29tcG9uZW50cy9fc2lnbi11cC1zZWN0aW9uLnNjc3MiLCJjb21wb25lbnRzL191cC1zZWxsLXNlY3Rpb24uc2NzcyIsImNvbXBvbmVudHMvX2ZlYXR1cmVkLWF1dGhvci5zY3NzIiwiY29tcG9uZW50cy9fYmxvZy1uYXZpZ2F0aW9uLnNjc3MiLCJjb21wb25lbnRzL19wb3N0LWNhcmQuc2NzcyIsImNvbXBvbmVudHMvX2ZlYXR1cmVkLXBvc3RzLnNjc3MiLCJjb21wb25lbnRzL19wb3N0LXNoYXJlLnNjc3MiLCJjb21wb25lbnRzL19wb3N0LW1ldGEuc2NzcyIsImNvbXBvbmVudHMvX2Jyb3dzZS1ieS1jYXRlZ29yeS5zY3NzIiwiY29tcG9uZW50cy9fc2VhcmNoLXJlc3VsdC5zY3NzIiwiY29tcG9uZW50cy9faW5zdGFncmFtLWZlZWQuc2NzcyIsImNvbXBvbmVudHMvX2FwcC1jdGEuc2NzcyIsInNlY3Rpb25zL19zbGFudGVkLWJnLXNlY3Rpb24uc2NzcyIsInNlY3Rpb25zL192aWRlby13aXRoLXRleHQtc2VjdGlvbi5zY3NzIiwic2VjdGlvbnMvX3R3by1jb2wtY3RhLXNlY3Rpb24uc2NzcyIsInRlbXBsYXRlcy9fZnJvbnQuc2NzcyIsInRlbXBsYXRlcy9fa2l0Y2hlbi1zaW5rLnNjc3MiLCJ0ZW1wbGF0ZXMvNDA0LnNjc3MiLCJ0ZW1wbGF0ZXMvX2Jsb2ctaG9tZS5zY3NzIiwidGVtcGxhdGVzL191c2VyLWxvZ2luLnNjc3MiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsaUJBQWlCO0FDQWpCOzs7OztHQUtHO0FDOEpHO0VDdkhKO0lBQ0UsWUFBVztJQUNYLFdBQVU7SUFDVixlQUFjLEVBQ2YsRUFBQTs7QUN2Q0E7RUFFRSx5QkFBc0QsRUFJdkQ7O0FBTkQ7RUFFRSwyQkFBc0QsRUFJdkQ7O0FBTkQ7RUFFRSw0QkFBc0QsRUFJdkQ7O0FBTkQ7RUFFRSwwQkFBc0QsRUFJdkQ7O0FBTkQ7RUFFRSx5QkFBc0QsRUFJdkQ7O0FBTkQ7RUFFRSwwQkFBc0QsRUFJdkQ7O0FBTkQ7RUFFRSw0QkFBc0QsRUFJdkQ7O0FBTkQ7RUFFRSw2QkFBc0QsRUFJdkQ7O0FBTkQ7RUFFRSwyQkFBc0QsRUFJdkQ7O0FBTkQ7RUFFRSwwQkFBc0QsRUFJdkQ7O0FBTkQ7RUFFRSx5QkFBc0QsRUFJdkQ7O0FGb0pFO0VFakpGO0lBRUUseUJBQXNELEVBRXZELEVBQUE7O0FBYkY7RUFFRSwyQkFBc0QsRUFJdkQ7O0FGb0pFO0VFakpGO0lBRUUsMkJBQXNELEVBRXZELEVBQUE7O0FBYkY7RUFFRSw0QkFBc0QsRUFJdkQ7O0FGb0pFO0VFakpGO0lBRUUsNEJBQXNELEVBRXZELEVBQUE7O0FBYkY7RUFFRSwwQkFBc0QsRUFJdkQ7O0FGb0pFO0VFakpGO0lBRUUsMEJBQXNELEVBRXZELEVBQUE7O0FBYkY7RUFFRSx5QkFBc0QsRUFJdkQ7O0FGb0pFO0VFakpGO0lBRUUseUJBQXNELEVBRXZELEVBQUE7O0FBYkY7RUFFRSwwQkFBc0QsRUFJdkQ7O0FGb0pFO0VFakpGO0lBRUUsMEJBQXNELEVBRXZELEVBQUE7O0FBYkY7RUFFRSw0QkFBc0QsRUFJdkQ7O0FGb0pFO0VFakpGO0lBRUUsNEJBQXNELEVBRXZELEVBQUE7O0FBYkY7RUFFRSw2QkFBc0QsRUFJdkQ7O0FGb0pFO0VFakpGO0lBRUUsNkJBQXNELEVBRXZELEVBQUE7O0FBYkY7RUFFRSwyQkFBc0QsRUFJdkQ7O0FGb0pFO0VFakpGO0lBRUUsMkJBQXNELEVBRXZELEVBQUE7O0FBYkY7RUFFRSwwQkFBc0QsRUFJdkQ7O0FGb0pFO0VFakpGO0lBRUUsMEJBQXNELEVBRXZELEVBQUE7O0FBYkY7RUFJRSx1QkFBb0MsRUFFckM7O0FBTkQ7RUFJRSx5QkFBb0MsRUFFckM7O0FBTkQ7RUFJRSwwQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSx3QkFBb0MsRUFFckM7O0FBTkQ7RUFJRSx1QkFBb0MsRUFFckM7O0FBTkQ7RUFJRSx3QkFBb0MsRUFFckM7O0FBTkQ7RUFJRSwwQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSwyQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSx5QkFBb0MsRUFFckM7O0FBTkQ7RUFJRSx3QkFBb0MsRUFFckM7O0FGb0pFO0VFMUpIO0lBSUUsdUJBQW9DLEVBRXJDLEVBQUE7O0FGb0pFO0VFakpGO0lBRUUsa0NBQXNELEVBRXZELEVBQUE7O0FGNklDO0VFMUpIO0lBSUUseUJBQW9DLEVBRXJDLEVBQUE7O0FGb0pFO0VFakpGO0lBRUUsb0NBQXNELEVBRXZELEVBQUE7O0FGNklDO0VFMUpIO0lBSUUsMEJBQW9DLEVBRXJDLEVBQUE7O0FGb0pFO0VFakpGO0lBRUUscUNBQXNELEVBRXZELEVBQUE7O0FGNklDO0VFMUpIO0lBSUUsd0JBQW9DLEVBRXJDLEVBQUE7O0FGb0pFO0VFakpGO0lBRUUsbUNBQXNELEVBRXZELEVBQUE7O0FGNklDO0VFMUpIO0lBSUUsdUJBQW9DLEVBRXJDLEVBQUE7O0FGb0pFO0VFakpGO0lBRUUsa0NBQXNELEVBRXZELEVBQUE7O0FGNklDO0VFMUpIO0lBSUUsd0JBQW9DLEVBRXJDLEVBQUE7O0FGb0pFO0VFakpGO0lBRUUsbUNBQXNELEVBRXZELEVBQUE7O0FGNklDO0VFMUpIO0lBSUUsMEJBQW9DLEVBRXJDLEVBQUE7O0FGb0pFO0VFakpGO0lBRUUscUNBQXNELEVBRXZELEVBQUE7O0FGNklDO0VFMUpIO0lBSUUsMkJBQW9DLEVBRXJDLEVBQUE7O0FGb0pFO0VFakpGO0lBRUUsc0NBQXNELEVBRXZELEVBQUE7O0FGNklDO0VFMUpIO0lBSUUseUJBQW9DLEVBRXJDLEVBQUE7O0FGb0pFO0VFakpGO0lBRUUsb0NBQXNELEVBRXZELEVBQUE7O0FGNklDO0VFMUpIO0lBSUUsd0JBQW9DLEVBRXJDLEVBQUE7O0FGb0pFO0VFakpGO0lBRUUsbUNBQXNELEVBRXZELEVBQUE7O0FGNklDO0VFMUpIO0lBSUUsdUJBQW9DLEVBRXJDLEVBQUE7O0FGb0pFO0VFakpGO0lBRUUsa0NBQXNELEVBRXZELEVBQUE7O0FGNklDO0VFMUpIO0lBSUUseUJBQW9DLEVBRXJDLEVBQUE7O0FGb0pFO0VFakpGO0lBRUUsb0NBQXNELEVBRXZELEVBQUE7O0FGNklDO0VFMUpIO0lBSUUsMEJBQW9DLEVBRXJDLEVBQUE7O0FGb0pFO0VFakpGO0lBRUUscUNBQXNELEVBRXZELEVBQUE7O0FGNklDO0VFMUpIO0lBSUUsd0JBQW9DLEVBRXJDLEVBQUE7O0FGb0pFO0VFakpGO0lBRUUsbUNBQXNELEVBRXZELEVBQUE7O0FGNklDO0VFMUpIO0lBSUUsdUJBQW9DLEVBRXJDLEVBQUE7O0FGb0pFO0VFakpGO0lBRUUsa0NBQXNELEVBRXZELEVBQUE7O0FGNklDO0VFMUpIO0lBSUUsd0JBQW9DLEVBRXJDLEVBQUE7O0FGb0pFO0VFakpGO0lBRUUsbUNBQXNELEVBRXZELEVBQUE7O0FGNklDO0VFMUpIO0lBSUUsMEJBQW9DLEVBRXJDLEVBQUE7O0FGb0pFO0VFakpGO0lBRUUscUNBQXNELEVBRXZELEVBQUE7O0FGNklDO0VFMUpIO0lBSUUsMkJBQW9DLEVBRXJDLEVBQUE7O0FGb0pFO0VFakpGO0lBRUUsc0NBQXNELEVBRXZELEVBQUE7O0FGNklDO0VFMUpIO0lBSUUseUJBQW9DLEVBRXJDLEVBQUE7O0FGb0pFO0VFakpGO0lBRUUsb0NBQXNELEVBRXZELEVBQUE7O0FGNklDO0VFMUpIO0lBSUUsd0JBQW9DLEVBRXJDLEVBQUE7O0FGb0pFO0VFakpGO0lBRUUsbUNBQXNELEVBRXZELEVBQUE7O0FGa0pDO0VFL0pIO0lBSUUsc0JBQW9DLEVBRXJDLEVBQUE7O0FGeUpFO0VFdEpGO0lBRUUsaUNBQXNELEVBRXZELEVBQUE7O0FGa0pDO0VFL0pIO0lBSUUsd0JBQW9DLEVBRXJDLEVBQUE7O0FGeUpFO0VFdEpGO0lBRUUsbUNBQXNELEVBRXZELEVBQUE7O0FGa0pDO0VFL0pIO0lBSUUseUJBQW9DLEVBRXJDLEVBQUE7O0FGeUpFO0VFdEpGO0lBRUUsb0NBQXNELEVBRXZELEVBQUE7O0FGa0pDO0VFL0pIO0lBSUUsdUJBQW9DLEVBRXJDLEVBQUE7O0FGeUpFO0VFdEpGO0lBRUUsa0NBQXNELEVBRXZELEVBQUE7O0FGa0pDO0VFL0pIO0lBSUUsc0JBQW9DLEVBRXJDLEVBQUE7O0FGeUpFO0VFdEpGO0lBRUUsaUNBQXNELEVBRXZELEVBQUE7O0FGa0pDO0VFL0pIO0lBSUUsdUJBQW9DLEVBRXJDLEVBQUE7O0FGeUpFO0VFdEpGO0lBRUUsa0NBQXNELEVBRXZELEVBQUE7O0FGa0pDO0VFL0pIO0lBSUUseUJBQW9DLEVBRXJDLEVBQUE7O0FGeUpFO0VFdEpGO0lBRUUsb0NBQXNELEVBRXZELEVBQUE7O0FGa0pDO0VFL0pIO0lBSUUsMEJBQW9DLEVBRXJDLEVBQUE7O0FGeUpFO0VFdEpGO0lBRUUscUNBQXNELEVBRXZELEVBQUE7O0FGa0pDO0VFL0pIO0lBSUUsd0JBQW9DLEVBRXJDLEVBQUE7O0FGeUpFO0VFdEpGO0lBRUUsbUNBQXNELEVBRXZELEVBQUE7O0FGa0pDO0VFL0pIO0lBSUUsdUJBQW9DLEVBRXJDLEVBQUE7O0FGeUpFO0VFdEpGO0lBRUUsa0NBQXNELEVBRXZELEVBQUE7O0FGa0pDO0VFL0pIO0lBSUUsc0JBQW9DLEVBRXJDLEVBQUE7O0FGeUpFO0VFdEpGO0lBRUUsaUNBQXNELEVBRXZELEVBQUE7O0FGa0pDO0VFL0pIO0lBSUUsd0JBQW9DLEVBRXJDLEVBQUE7O0FGeUpFO0VFdEpGO0lBRUUsbUNBQXNELEVBRXZELEVBQUE7O0FGa0pDO0VFL0pIO0lBSUUseUJBQW9DLEVBRXJDLEVBQUE7O0FGeUpFO0VFdEpGO0lBRUUsb0NBQXNELEVBRXZELEVBQUE7O0FGa0pDO0VFL0pIO0lBSUUsdUJBQW9DLEVBRXJDLEVBQUE7O0FGeUpFO0VFdEpGO0lBRUUsa0NBQXNELEVBRXZELEVBQUE7O0FGa0pDO0VFL0pIO0lBSUUsc0JBQW9DLEVBRXJDLEVBQUE7O0FGeUpFO0VFdEpGO0lBRUUsaUNBQXNELEVBRXZELEVBQUE7O0FGa0pDO0VFL0pIO0lBSUUsdUJBQW9DLEVBRXJDLEVBQUE7O0FGeUpFO0VFdEpGO0lBRUUsa0NBQXNELEVBRXZELEVBQUE7O0FGa0pDO0VFL0pIO0lBSUUseUJBQW9DLEVBRXJDLEVBQUE7O0FGeUpFO0VFdEpGO0lBRUUsb0NBQXNELEVBRXZELEVBQUE7O0FGa0pDO0VFL0pIO0lBSUUsMEJBQW9DLEVBRXJDLEVBQUE7O0FGeUpFO0VFdEpGO0lBRUUscUNBQXNELEVBRXZELEVBQUE7O0FGa0pDO0VFL0pIO0lBSUUsd0JBQW9DLEVBRXJDLEVBQUE7O0FGeUpFO0VFdEpGO0lBRUUsbUNBQXNELEVBRXZELEVBQUE7O0FGa0pDO0VFL0pIO0lBSUUsdUJBQW9DLEVBRXJDLEVBQUE7O0FGeUpFO0VFdEpGO0lBRUUsa0NBQXNELEVBRXZELEVBQUE7O0FBYkY7RUFJRSxzQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSx3QkFBb0MsRUFFckM7O0FBTkQ7RUFJRSx5QkFBb0MsRUFFckM7O0FBTkQ7RUFJRSx1QkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxzQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSx1QkFBb0MsRUFFckM7O0FBTkQ7RUFJRSx5QkFBb0MsRUFFckM7O0FBTkQ7RUFJRSwwQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSx3QkFBb0MsRUFFckM7O0FBTkQ7RUFJRSx1QkFBb0MsRUFFckM7O0FGb0pFO0VFMUpIO0lBSUUsc0JBQW9DLEVBRXJDLEVBQUE7O0FGb0pFO0VFakpGO0lBRUUsaUNBQXNELEVBRXZELEVBQUE7O0FGNklDO0VFMUpIO0lBSUUsd0JBQW9DLEVBRXJDLEVBQUE7O0FGb0pFO0VFakpGO0lBRUUsbUNBQXNELEVBRXZELEVBQUE7O0FGNklDO0VFMUpIO0lBSUUseUJBQW9DLEVBRXJDLEVBQUE7O0FGb0pFO0VFakpGO0lBRUUsb0NBQXNELEVBRXZELEVBQUE7O0FGNklDO0VFMUpIO0lBSUUsdUJBQW9DLEVBRXJDLEVBQUE7O0FGb0pFO0VFakpGO0lBRUUsa0NBQXNELEVBRXZELEVBQUE7O0FGNklDO0VFMUpIO0lBSUUsc0JBQW9DLEVBRXJDLEVBQUE7O0FGb0pFO0VFakpGO0lBRUUsaUNBQXNELEVBRXZELEVBQUE7O0FGNklDO0VFMUpIO0lBSUUsdUJBQW9DLEVBRXJDLEVBQUE7O0FGb0pFO0VFakpGO0lBRUUsa0NBQXNELEVBRXZELEVBQUE7O0FGNklDO0VFMUpIO0lBSUUseUJBQW9DLEVBRXJDLEVBQUE7O0FGb0pFO0VFakpGO0lBRUUsb0NBQXNELEVBRXZELEVBQUE7O0FGNklDO0VFMUpIO0lBSUUsMEJBQW9DLEVBRXJDLEVBQUE7O0FGb0pFO0VFakpGO0lBRUUscUNBQXNELEVBRXZELEVBQUE7O0FGNklDO0VFMUpIO0lBSUUsd0JBQW9DLEVBRXJDLEVBQUE7O0FGb0pFO0VFakpGO0lBRUUsbUNBQXNELEVBRXZELEVBQUE7O0FGNklDO0VFMUpIO0lBSUUsdUJBQW9DLEVBRXJDLEVBQUE7O0FGb0pFO0VFakpGO0lBRUUsa0NBQXNELEVBRXZELEVBQUE7O0FGNklDO0VFMUpIO0lBSUUsc0JBQW9DLEVBRXJDLEVBQUE7O0FGb0pFO0VFakpGO0lBRUUsaUNBQXNELEVBRXZELEVBQUE7O0FGNklDO0VFMUpIO0lBSUUsd0JBQW9DLEVBRXJDLEVBQUE7O0FGb0pFO0VFakpGO0lBRUUsbUNBQXNELEVBRXZELEVBQUE7O0FGNklDO0VFMUpIO0lBSUUseUJBQW9DLEVBRXJDLEVBQUE7O0FGb0pFO0VFakpGO0lBRUUsb0NBQXNELEVBRXZELEVBQUE7O0FGNklDO0VFMUpIO0lBSUUsdUJBQW9DLEVBRXJDLEVBQUE7O0FGb0pFO0VFakpGO0lBRUUsa0NBQXNELEVBRXZELEVBQUE7O0FGNklDO0VFMUpIO0lBSUUsc0JBQW9DLEVBRXJDLEVBQUE7O0FGb0pFO0VFakpGO0lBRUUsaUNBQXNELEVBRXZELEVBQUE7O0FGNklDO0VFMUpIO0lBSUUsdUJBQW9DLEVBRXJDLEVBQUE7O0FGb0pFO0VFakpGO0lBRUUsa0NBQXNELEVBRXZELEVBQUE7O0FGNklDO0VFMUpIO0lBSUUseUJBQW9DLEVBRXJDLEVBQUE7O0FGb0pFO0VFakpGO0lBRUUsb0NBQXNELEVBRXZELEVBQUE7O0FGNklDO0VFMUpIO0lBSUUsMEJBQW9DLEVBRXJDLEVBQUE7O0FGb0pFO0VFakpGO0lBRUUscUNBQXNELEVBRXZELEVBQUE7O0FGNklDO0VFMUpIO0lBSUUsd0JBQW9DLEVBRXJDLEVBQUE7O0FGb0pFO0VFakpGO0lBRUUsbUNBQXNELEVBRXZELEVBQUE7O0FGNklDO0VFMUpIO0lBSUUsdUJBQW9DLEVBRXJDLEVBQUE7O0FGb0pFO0VFakpGO0lBRUUsa0NBQXNELEVBRXZELEVBQUE7O0FGa0pDO0VFL0pIO0lBSUUscUJBQW9DLEVBRXJDLEVBQUE7O0FGeUpFO0VFdEpGO0lBRUUsZ0NBQXNELEVBRXZELEVBQUE7O0FGa0pDO0VFL0pIO0lBSUUsdUJBQW9DLEVBRXJDLEVBQUE7O0FGeUpFO0VFdEpGO0lBRUUsa0NBQXNELEVBRXZELEVBQUE7O0FGa0pDO0VFL0pIO0lBSUUsd0JBQW9DLEVBRXJDLEVBQUE7O0FGeUpFO0VFdEpGO0lBRUUsbUNBQXNELEVBRXZELEVBQUE7O0FGa0pDO0VFL0pIO0lBSUUsc0JBQW9DLEVBRXJDLEVBQUE7O0FGeUpFO0VFdEpGO0lBRUUsaUNBQXNELEVBRXZELEVBQUE7O0FGa0pDO0VFL0pIO0lBSUUscUJBQW9DLEVBRXJDLEVBQUE7O0FGeUpFO0VFdEpGO0lBRUUsZ0NBQXNELEVBRXZELEVBQUE7O0FGa0pDO0VFL0pIO0lBSUUsc0JBQW9DLEVBRXJDLEVBQUE7O0FGeUpFO0VFdEpGO0lBRUUsaUNBQXNELEVBRXZELEVBQUE7O0FGa0pDO0VFL0pIO0lBSUUsd0JBQW9DLEVBRXJDLEVBQUE7O0FGeUpFO0VFdEpGO0lBRUUsbUNBQXNELEVBRXZELEVBQUE7O0FGa0pDO0VFL0pIO0lBSUUseUJBQW9DLEVBRXJDLEVBQUE7O0FGeUpFO0VFdEpGO0lBRUUsb0NBQXNELEVBRXZELEVBQUE7O0FGa0pDO0VFL0pIO0lBSUUsdUJBQW9DLEVBRXJDLEVBQUE7O0FGeUpFO0VFdEpGO0lBRUUsa0NBQXNELEVBRXZELEVBQUE7O0FGa0pDO0VFL0pIO0lBSUUsc0JBQW9DLEVBRXJDLEVBQUE7O0FGeUpFO0VFdEpGO0lBRUUsaUNBQXNELEVBRXZELEVBQUE7O0FGa0pDO0VFL0pIO0lBSUUscUJBQW9DLEVBRXJDLEVBQUE7O0FGeUpFO0VFdEpGO0lBRUUsZ0NBQXNELEVBRXZELEVBQUE7O0FGa0pDO0VFL0pIO0lBSUUsdUJBQW9DLEVBRXJDLEVBQUE7O0FGeUpFO0VFdEpGO0lBRUUsa0NBQXNELEVBRXZELEVBQUE7O0FGa0pDO0VFL0pIO0lBSUUsd0JBQW9DLEVBRXJDLEVBQUE7O0FGeUpFO0VFdEpGO0lBRUUsbUNBQXNELEVBRXZELEVBQUE7O0FGa0pDO0VFL0pIO0lBSUUsc0JBQW9DLEVBRXJDLEVBQUE7O0FGeUpFO0VFdEpGO0lBRUUsaUNBQXNELEVBRXZELEVBQUE7O0FGa0pDO0VFL0pIO0lBSUUscUJBQW9DLEVBRXJDLEVBQUE7O0FGeUpFO0VFdEpGO0lBRUUsZ0NBQXNELEVBRXZELEVBQUE7O0FGa0pDO0VFL0pIO0lBSUUsc0JBQW9DLEVBRXJDLEVBQUE7O0FGeUpFO0VFdEpGO0lBRUUsaUNBQXNELEVBRXZELEVBQUE7O0FGa0pDO0VFL0pIO0lBSUUsd0JBQW9DLEVBRXJDLEVBQUE7O0FGeUpFO0VFdEpGO0lBRUUsbUNBQXNELEVBRXZELEVBQUE7O0FGa0pDO0VFL0pIO0lBSUUseUJBQW9DLEVBRXJDLEVBQUE7O0FGeUpFO0VFdEpGO0lBRUUsb0NBQXNELEVBRXZELEVBQUE7O0FGa0pDO0VFL0pIO0lBSUUsdUJBQW9DLEVBRXJDLEVBQUE7O0FGeUpFO0VFdEpGO0lBRUUsa0NBQXNELEVBRXZELEVBQUE7O0FGa0pDO0VFL0pIO0lBSUUsc0JBQW9DLEVBRXJDLEVBQUE7O0FGeUpFO0VFdEpGO0lBRUUsaUNBQXNELEVBRXZELEVBQUE7O0FBYkY7RUFJRSxxQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSx1QkFBb0MsRUFFckM7O0FBTkQ7RUFJRSx3QkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxzQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxxQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxzQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSx3QkFBb0MsRUFFckM7O0FBTkQ7RUFJRSx5QkFBb0MsRUFFckM7O0FBTkQ7RUFJRSx1QkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxzQkFBb0MsRUFFckM7O0FGb0pFO0VFMUpIO0lBSUUscUJBQW9DLEVBRXJDLEVBQUE7O0FGb0pFO0VFakpGO0lBRUUsZ0NBQXNELEVBRXZELEVBQUE7O0FGNklDO0VFMUpIO0lBSUUsdUJBQW9DLEVBRXJDLEVBQUE7O0FGb0pFO0VFakpGO0lBRUUsa0NBQXNELEVBRXZELEVBQUE7O0FGNklDO0VFMUpIO0lBSUUsd0JBQW9DLEVBRXJDLEVBQUE7O0FGb0pFO0VFakpGO0lBRUUsbUNBQXNELEVBRXZELEVBQUE7O0FGNklDO0VFMUpIO0lBSUUsc0JBQW9DLEVBRXJDLEVBQUE7O0FGb0pFO0VFakpGO0lBRUUsaUNBQXNELEVBRXZELEVBQUE7O0FGNklDO0VFMUpIO0lBSUUscUJBQW9DLEVBRXJDLEVBQUE7O0FGb0pFO0VFakpGO0lBRUUsZ0NBQXNELEVBRXZELEVBQUE7O0FGNklDO0VFMUpIO0lBSUUsc0JBQW9DLEVBRXJDLEVBQUE7O0FGb0pFO0VFakpGO0lBRUUsaUNBQXNELEVBRXZELEVBQUE7O0FGNklDO0VFMUpIO0lBSUUsd0JBQW9DLEVBRXJDLEVBQUE7O0FGb0pFO0VFakpGO0lBRUUsbUNBQXNELEVBRXZELEVBQUE7O0FGNklDO0VFMUpIO0lBSUUseUJBQW9DLEVBRXJDLEVBQUE7O0FGb0pFO0VFakpGO0lBRUUsb0NBQXNELEVBRXZELEVBQUE7O0FGNklDO0VFMUpIO0lBSUUsdUJBQW9DLEVBRXJDLEVBQUE7O0FGb0pFO0VFakpGO0lBRUUsa0NBQXNELEVBRXZELEVBQUE7O0FGNklDO0VFMUpIO0lBSUUsc0JBQW9DLEVBRXJDLEVBQUE7O0FGb0pFO0VFakpGO0lBRUUsaUNBQXNELEVBRXZELEVBQUE7O0FGNklDO0VFMUpIO0lBSUUscUJBQW9DLEVBRXJDLEVBQUE7O0FGb0pFO0VFakpGO0lBRUUsZ0NBQXNELEVBRXZELEVBQUE7O0FGNklDO0VFMUpIO0lBSUUsdUJBQW9DLEVBRXJDLEVBQUE7O0FGb0pFO0VFakpGO0lBRUUsa0NBQXNELEVBRXZELEVBQUE7O0FGNklDO0VFMUpIO0lBSUUsd0JBQW9DLEVBRXJDLEVBQUE7O0FGb0pFO0VFakpGO0lBRUUsbUNBQXNELEVBRXZELEVBQUE7O0FGNklDO0VFMUpIO0lBSUUsc0JBQW9DLEVBRXJDLEVBQUE7O0FGb0pFO0VFakpGO0lBRUUsaUNBQXNELEVBRXZELEVBQUE7O0FGNklDO0VFMUpIO0lBSUUscUJBQW9DLEVBRXJDLEVBQUE7O0FGb0pFO0VFakpGO0lBRUUsZ0NBQXNELEVBRXZELEVBQUE7O0FGNklDO0VFMUpIO0lBSUUsc0JBQW9DLEVBRXJDLEVBQUE7O0FGb0pFO0VFakpGO0lBRUUsaUNBQXNELEVBRXZELEVBQUE7O0FGNklDO0VFMUpIO0lBSUUsd0JBQW9DLEVBRXJDLEVBQUE7O0FGb0pFO0VFakpGO0lBRUUsbUNBQXNELEVBRXZELEVBQUE7O0FGNklDO0VFMUpIO0lBSUUseUJBQW9DLEVBRXJDLEVBQUE7O0FGb0pFO0VFakpGO0lBRUUsb0NBQXNELEVBRXZELEVBQUE7O0FGNklDO0VFMUpIO0lBSUUsdUJBQW9DLEVBRXJDLEVBQUE7O0FGb0pFO0VFakpGO0lBRUUsa0NBQXNELEVBRXZELEVBQUE7O0FGNklDO0VFMUpIO0lBSUUsc0JBQW9DLEVBRXJDLEVBQUE7O0FGb0pFO0VFakpGO0lBRUUsaUNBQXNELEVBRXZELEVBQUE7O0FGa0pDO0VFL0pIO0lBSUUsb0JBQW9DLEVBRXJDLEVBQUE7O0FGeUpFO0VFdEpGO0lBRUUsK0JBQXNELEVBRXZELEVBQUE7O0FGa0pDO0VFL0pIO0lBSUUsc0JBQW9DLEVBRXJDLEVBQUE7O0FGeUpFO0VFdEpGO0lBRUUsaUNBQXNELEVBRXZELEVBQUE7O0FGa0pDO0VFL0pIO0lBSUUsdUJBQW9DLEVBRXJDLEVBQUE7O0FGeUpFO0VFdEpGO0lBRUUsa0NBQXNELEVBRXZELEVBQUE7O0FGa0pDO0VFL0pIO0lBSUUscUJBQW9DLEVBRXJDLEVBQUE7O0FGeUpFO0VFdEpGO0lBRUUsZ0NBQXNELEVBRXZELEVBQUE7O0FGa0pDO0VFL0pIO0lBSUUsb0JBQW9DLEVBRXJDLEVBQUE7O0FGeUpFO0VFdEpGO0lBRUUsK0JBQXNELEVBRXZELEVBQUE7O0FGa0pDO0VFL0pIO0lBSUUscUJBQW9DLEVBRXJDLEVBQUE7O0FGeUpFO0VFdEpGO0lBRUUsZ0NBQXNELEVBRXZELEVBQUE7O0FGa0pDO0VFL0pIO0lBSUUsdUJBQW9DLEVBRXJDLEVBQUE7O0FGeUpFO0VFdEpGO0lBRUUsa0NBQXNELEVBRXZELEVBQUE7O0FGa0pDO0VFL0pIO0lBSUUsd0JBQW9DLEVBRXJDLEVBQUE7O0FGeUpFO0VFdEpGO0lBRUUsbUNBQXNELEVBRXZELEVBQUE7O0FGa0pDO0VFL0pIO0lBSUUsc0JBQW9DLEVBRXJDLEVBQUE7O0FGeUpFO0VFdEpGO0lBRUUsaUNBQXNELEVBRXZELEVBQUE7O0FGa0pDO0VFL0pIO0lBSUUscUJBQW9DLEVBRXJDLEVBQUE7O0FGeUpFO0VFdEpGO0lBRUUsZ0NBQXNELEVBRXZELEVBQUE7O0FGa0pDO0VFL0pIO0lBSUUsb0JBQW9DLEVBRXJDLEVBQUE7O0FGeUpFO0VFdEpGO0lBRUUsK0JBQXNELEVBRXZELEVBQUE7O0FGa0pDO0VFL0pIO0lBSUUsc0JBQW9DLEVBRXJDLEVBQUE7O0FGeUpFO0VFdEpGO0lBRUUsaUNBQXNELEVBRXZELEVBQUE7O0FGa0pDO0VFL0pIO0lBSUUsdUJBQW9DLEVBRXJDLEVBQUE7O0FGeUpFO0VFdEpGO0lBRUUsa0NBQXNELEVBRXZELEVBQUE7O0FGa0pDO0VFL0pIO0lBSUUscUJBQW9DLEVBRXJDLEVBQUE7O0FGeUpFO0VFdEpGO0lBRUUsZ0NBQXNELEVBRXZELEVBQUE7O0FGa0pDO0VFL0pIO0lBSUUsb0JBQW9DLEVBRXJDLEVBQUE7O0FGeUpFO0VFdEpGO0lBRUUsK0JBQXNELEVBRXZELEVBQUE7O0FGa0pDO0VFL0pIO0lBSUUscUJBQW9DLEVBRXJDLEVBQUE7O0FGeUpFO0VFdEpGO0lBRUUsZ0NBQXNELEVBRXZELEVBQUE7O0FGa0pDO0VFL0pIO0lBSUUsdUJBQW9DLEVBRXJDLEVBQUE7O0FGeUpFO0VFdEpGO0lBRUUsa0NBQXNELEVBRXZELEVBQUE7O0FGa0pDO0VFL0pIO0lBSUUsd0JBQW9DLEVBRXJDLEVBQUE7O0FGeUpFO0VFdEpGO0lBRUUsbUNBQXNELEVBRXZELEVBQUE7O0FGa0pDO0VFL0pIO0lBSUUsc0JBQW9DLEVBRXJDLEVBQUE7O0FGeUpFO0VFdEpGO0lBRUUsaUNBQXNELEVBRXZELEVBQUE7O0FGa0pDO0VFL0pIO0lBSUUscUJBQW9DLEVBRXJDLEVBQUE7O0FGeUpFO0VFdEpGO0lBRUUsZ0NBQXNELEVBRXZELEVBQUE7O0FBYkY7RUFJRSxvQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxzQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSx1QkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxxQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxvQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxxQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSx1QkFBb0MsRUFFckM7O0FBTkQ7RUFJRSx3QkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxzQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxxQkFBb0MsRUFFckM7O0FGb0pFO0VFMUpIO0lBSUUsb0JBQW9DLEVBRXJDLEVBQUE7O0FGb0pFO0VFakpGO0lBRUUsK0JBQXNELEVBRXZELEVBQUE7O0FGNklDO0VFMUpIO0lBSUUsc0JBQW9DLEVBRXJDLEVBQUE7O0FGb0pFO0VFakpGO0lBRUUsaUNBQXNELEVBRXZELEVBQUE7O0FGNklDO0VFMUpIO0lBSUUsdUJBQW9DLEVBRXJDLEVBQUE7O0FGb0pFO0VFakpGO0lBRUUsa0NBQXNELEVBRXZELEVBQUE7O0FGNklDO0VFMUpIO0lBSUUscUJBQW9DLEVBRXJDLEVBQUE7O0FGb0pFO0VFakpGO0lBRUUsZ0NBQXNELEVBRXZELEVBQUE7O0FGNklDO0VFMUpIO0lBSUUsb0JBQW9DLEVBRXJDLEVBQUE7O0FGb0pFO0VFakpGO0lBRUUsK0JBQXNELEVBRXZELEVBQUE7O0FGNklDO0VFMUpIO0lBSUUscUJBQW9DLEVBRXJDLEVBQUE7O0FGb0pFO0VFakpGO0lBRUUsZ0NBQXNELEVBRXZELEVBQUE7O0FGNklDO0VFMUpIO0lBSUUsdUJBQW9DLEVBRXJDLEVBQUE7O0FGb0pFO0VFakpGO0lBRUUsa0NBQXNELEVBRXZELEVBQUE7O0FGNklDO0VFMUpIO0lBSUUsd0JBQW9DLEVBRXJDLEVBQUE7O0FGb0pFO0VFakpGO0lBRUUsbUNBQXNELEVBRXZELEVBQUE7O0FGNklDO0VFMUpIO0lBSUUsc0JBQW9DLEVBRXJDLEVBQUE7O0FGb0pFO0VFakpGO0lBRUUsaUNBQXNELEVBRXZELEVBQUE7O0FGNklDO0VFMUpIO0lBSUUscUJBQW9DLEVBRXJDLEVBQUE7O0FGb0pFO0VFakpGO0lBRUUsZ0NBQXNELEVBRXZELEVBQUE7O0FGNklDO0VFMUpIO0lBSUUsb0JBQW9DLEVBRXJDLEVBQUE7O0FGb0pFO0VFakpGO0lBRUUsK0JBQXNELEVBRXZELEVBQUE7O0FGNklDO0VFMUpIO0lBSUUsc0JBQW9DLEVBRXJDLEVBQUE7O0FGb0pFO0VFakpGO0lBRUUsaUNBQXNELEVBRXZELEVBQUE7O0FGNklDO0VFMUpIO0lBSUUsdUJBQW9DLEVBRXJDLEVBQUE7O0FGb0pFO0VFakpGO0lBRUUsa0NBQXNELEVBRXZELEVBQUE7O0FGNklDO0VFMUpIO0lBSUUscUJBQW9DLEVBRXJDLEVBQUE7O0FGb0pFO0VFakpGO0lBRUUsZ0NBQXNELEVBRXZELEVBQUE7O0FGNklDO0VFMUpIO0lBSUUsb0JBQW9DLEVBRXJDLEVBQUE7O0FGb0pFO0VFakpGO0lBRUUsK0JBQXNELEVBRXZELEVBQUE7O0FGNklDO0VFMUpIO0lBSUUscUJBQW9DLEVBRXJDLEVBQUE7O0FGb0pFO0VFakpGO0lBRUUsZ0NBQXNELEVBRXZELEVBQUE7O0FGNklDO0VFMUpIO0lBSUUsdUJBQW9DLEVBRXJDLEVBQUE7O0FGb0pFO0VFakpGO0lBRUUsa0NBQXNELEVBRXZELEVBQUE7O0FGNklDO0VFMUpIO0lBSUUsd0JBQW9DLEVBRXJDLEVBQUE7O0FGb0pFO0VFakpGO0lBRUUsbUNBQXNELEVBRXZELEVBQUE7O0FGNklDO0VFMUpIO0lBSUUsc0JBQW9DLEVBRXJDLEVBQUE7O0FGb0pFO0VFakpGO0lBRUUsaUNBQXNELEVBRXZELEVBQUE7O0FGNklDO0VFMUpIO0lBSUUscUJBQW9DLEVBRXJDLEVBQUE7O0FGb0pFO0VFakpGO0lBRUUsZ0NBQXNELEVBRXZELEVBQUE7O0FGa0pDO0VFL0pIO0lBSUUsbUJBQW9DLEVBRXJDLEVBQUE7O0FGeUpFO0VFdEpGO0lBRUUsOEJBQXNELEVBRXZELEVBQUE7O0FGa0pDO0VFL0pIO0lBSUUscUJBQW9DLEVBRXJDLEVBQUE7O0FGeUpFO0VFdEpGO0lBRUUsZ0NBQXNELEVBRXZELEVBQUE7O0FGa0pDO0VFL0pIO0lBSUUsc0JBQW9DLEVBRXJDLEVBQUE7O0FGeUpFO0VFdEpGO0lBRUUsaUNBQXNELEVBRXZELEVBQUE7O0FGa0pDO0VFL0pIO0lBSUUsb0JBQW9DLEVBRXJDLEVBQUE7O0FGeUpFO0VFdEpGO0lBRUUsK0JBQXNELEVBRXZELEVBQUE7O0FGa0pDO0VFL0pIO0lBSUUsbUJBQW9DLEVBRXJDLEVBQUE7O0FGeUpFO0VFdEpGO0lBRUUsOEJBQXNELEVBRXZELEVBQUE7O0FGa0pDO0VFL0pIO0lBSUUsb0JBQW9DLEVBRXJDLEVBQUE7O0FGeUpFO0VFdEpGO0lBRUUsK0JBQXNELEVBRXZELEVBQUE7O0FGa0pDO0VFL0pIO0lBSUUsc0JBQW9DLEVBRXJDLEVBQUE7O0FGeUpFO0VFdEpGO0lBRUUsaUNBQXNELEVBRXZELEVBQUE7O0FGa0pDO0VFL0pIO0lBSUUsdUJBQW9DLEVBRXJDLEVBQUE7O0FGeUpFO0VFdEpGO0lBRUUsa0NBQXNELEVBRXZELEVBQUE7O0FGa0pDO0VFL0pIO0lBSUUscUJBQW9DLEVBRXJDLEVBQUE7O0FGeUpFO0VFdEpGO0lBRUUsZ0NBQXNELEVBRXZELEVBQUE7O0FGa0pDO0VFL0pIO0lBSUUsb0JBQW9DLEVBRXJDLEVBQUE7O0FGeUpFO0VFdEpGO0lBRUUsK0JBQXNELEVBRXZELEVBQUE7O0FGa0pDO0VFL0pIO0lBSUUsbUJBQW9DLEVBRXJDLEVBQUE7O0FGeUpFO0VFdEpGO0lBRUUsOEJBQXNELEVBRXZELEVBQUE7O0FGa0pDO0VFL0pIO0lBSUUscUJBQW9DLEVBRXJDLEVBQUE7O0FGeUpFO0VFdEpGO0lBRUUsZ0NBQXNELEVBRXZELEVBQUE7O0FGa0pDO0VFL0pIO0lBSUUsc0JBQW9DLEVBRXJDLEVBQUE7O0FGeUpFO0VFdEpGO0lBRUUsaUNBQXNELEVBRXZELEVBQUE7O0FGa0pDO0VFL0pIO0lBSUUsb0JBQW9DLEVBRXJDLEVBQUE7O0FGeUpFO0VFdEpGO0lBRUUsK0JBQXNELEVBRXZELEVBQUE7O0FGa0pDO0VFL0pIO0lBSUUsbUJBQW9DLEVBRXJDLEVBQUE7O0FGeUpFO0VFdEpGO0lBRUUsOEJBQXNELEVBRXZELEVBQUE7O0FGa0pDO0VFL0pIO0lBSUUsb0JBQW9DLEVBRXJDLEVBQUE7O0FGeUpFO0VFdEpGO0lBRUUsK0JBQXNELEVBRXZELEVBQUE7O0FGa0pDO0VFL0pIO0lBSUUsc0JBQW9DLEVBRXJDLEVBQUE7O0FGeUpFO0VFdEpGO0lBRUUsaUNBQXNELEVBRXZELEVBQUE7O0FGa0pDO0VFL0pIO0lBSUUsdUJBQW9DLEVBRXJDLEVBQUE7O0FGeUpFO0VFdEpGO0lBRUUsa0NBQXNELEVBRXZELEVBQUE7O0FGa0pDO0VFL0pIO0lBSUUscUJBQW9DLEVBRXJDLEVBQUE7O0FGeUpFO0VFdEpGO0lBRUUsZ0NBQXNELEVBRXZELEVBQUE7O0FGa0pDO0VFL0pIO0lBSUUsb0JBQW9DLEVBRXJDLEVBQUE7O0FGeUpFO0VFdEpGO0lBRUUsK0JBQXNELEVBRXZELEVBQUE7O0FBYkY7RUFJRSxzQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSx3QkFBb0MsRUFFckM7O0FBTkQ7RUFJRSx5QkFBb0MsRUFFckM7O0FBTkQ7RUFJRSx1QkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxzQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSx1QkFBb0MsRUFFckM7O0FBTkQ7RUFJRSx5QkFBb0MsRUFFckM7O0FBTkQ7RUFJRSwwQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSx3QkFBb0MsRUFFckM7O0FBTkQ7RUFJRSx1QkFBb0MsRUFFckM7O0FGb0pFO0VFMUpIO0lBSUUscUJBQW9DLEVBRXJDLEVBQUE7O0FGb0pFO0VFakpGO0lBRUUsZ0NBQXNELEVBRXZELEVBQUE7O0FGNklDO0VFMUpIO0lBSUUsdUJBQW9DLEVBRXJDLEVBQUE7O0FGb0pFO0VFakpGO0lBRUUsa0NBQXNELEVBRXZELEVBQUE7O0FGNklDO0VFMUpIO0lBSUUsd0JBQW9DLEVBRXJDLEVBQUE7O0FGb0pFO0VFakpGO0lBRUUsbUNBQXNELEVBRXZELEVBQUE7O0FGNklDO0VFMUpIO0lBSUUsc0JBQW9DLEVBRXJDLEVBQUE7O0FGb0pFO0VFakpGO0lBRUUsaUNBQXNELEVBRXZELEVBQUE7O0FGNklDO0VFMUpIO0lBSUUscUJBQW9DLEVBRXJDLEVBQUE7O0FGb0pFO0VFakpGO0lBRUUsZ0NBQXNELEVBRXZELEVBQUE7O0FGNklDO0VFMUpIO0lBSUUsc0JBQW9DLEVBRXJDLEVBQUE7O0FGb0pFO0VFakpGO0lBRUUsaUNBQXNELEVBRXZELEVBQUE7O0FGNklDO0VFMUpIO0lBSUUsd0JBQW9DLEVBRXJDLEVBQUE7O0FGb0pFO0VFakpGO0lBRUUsbUNBQXNELEVBRXZELEVBQUE7O0FGNklDO0VFMUpIO0lBSUUseUJBQW9DLEVBRXJDLEVBQUE7O0FGb0pFO0VFakpGO0lBRUUsb0NBQXNELEVBRXZELEVBQUE7O0FGNklDO0VFMUpIO0lBSUUsdUJBQW9DLEVBRXJDLEVBQUE7O0FGb0pFO0VFakpGO0lBRUUsa0NBQXNELEVBRXZELEVBQUE7O0FGNklDO0VFMUpIO0lBSUUsc0JBQW9DLEVBRXJDLEVBQUE7O0FGb0pFO0VFakpGO0lBRUUsaUNBQXNELEVBRXZELEVBQUE7O0FGNklDO0VFMUpIO0lBSUUscUJBQW9DLEVBRXJDLEVBQUE7O0FGb0pFO0VFakpGO0lBRUUsZ0NBQXNELEVBRXZELEVBQUE7O0FGNklDO0VFMUpIO0lBSUUsdUJBQW9DLEVBRXJDLEVBQUE7O0FGb0pFO0VFakpGO0lBRUUsa0NBQXNELEVBRXZELEVBQUE7O0FGNklDO0VFMUpIO0lBSUUsd0JBQW9DLEVBRXJDLEVBQUE7O0FGb0pFO0VFakpGO0lBRUUsbUNBQXNELEVBRXZELEVBQUE7O0FGNklDO0VFMUpIO0lBSUUsc0JBQW9DLEVBRXJDLEVBQUE7O0FGb0pFO0VFakpGO0lBRUUsaUNBQXNELEVBRXZELEVBQUE7O0FGNklDO0VFMUpIO0lBSUUscUJBQW9DLEVBRXJDLEVBQUE7O0FGb0pFO0VFakpGO0lBRUUsZ0NBQXNELEVBRXZELEVBQUE7O0FGNklDO0VFMUpIO0lBSUUsc0JBQW9DLEVBRXJDLEVBQUE7O0FGb0pFO0VFakpGO0lBRUUsaUNBQXNELEVBRXZELEVBQUE7O0FGNklDO0VFMUpIO0lBSUUsd0JBQW9DLEVBRXJDLEVBQUE7O0FGb0pFO0VFakpGO0lBRUUsbUNBQXNELEVBRXZELEVBQUE7O0FGNklDO0VFMUpIO0lBSUUseUJBQW9DLEVBRXJDLEVBQUE7O0FGb0pFO0VFakpGO0lBRUUsb0NBQXNELEVBRXZELEVBQUE7O0FGNklDO0VFMUpIO0lBSUUsdUJBQW9DLEVBRXJDLEVBQUE7O0FGb0pFO0VFakpGO0lBRUUsa0NBQXNELEVBRXZELEVBQUE7O0FGNklDO0VFMUpIO0lBSUUsc0JBQW9DLEVBRXJDLEVBQUE7O0FGb0pFO0VFakpGO0lBRUUsaUNBQXNELEVBRXZELEVBQUE7O0FGa0pDO0VFL0pIO0lBSUUscUJBQW9DLEVBRXJDLEVBQUE7O0FGeUpFO0VFdEpGO0lBRUUsZ0NBQXNELEVBRXZELEVBQUE7O0FGa0pDO0VFL0pIO0lBSUUsdUJBQW9DLEVBRXJDLEVBQUE7O0FGeUpFO0VFdEpGO0lBRUUsa0NBQXNELEVBRXZELEVBQUE7O0FGa0pDO0VFL0pIO0lBSUUsd0JBQW9DLEVBRXJDLEVBQUE7O0FGeUpFO0VFdEpGO0lBRUUsbUNBQXNELEVBRXZELEVBQUE7O0FGa0pDO0VFL0pIO0lBSUUsc0JBQW9DLEVBRXJDLEVBQUE7O0FGeUpFO0VFdEpGO0lBRUUsaUNBQXNELEVBRXZELEVBQUE7O0FGa0pDO0VFL0pIO0lBSUUscUJBQW9DLEVBRXJDLEVBQUE7O0FGeUpFO0VFdEpGO0lBRUUsZ0NBQXNELEVBRXZELEVBQUE7O0FGa0pDO0VFL0pIO0lBSUUsc0JBQW9DLEVBRXJDLEVBQUE7O0FGeUpFO0VFdEpGO0lBRUUsaUNBQXNELEVBRXZELEVBQUE7O0FGa0pDO0VFL0pIO0lBSUUsd0JBQW9DLEVBRXJDLEVBQUE7O0FGeUpFO0VFdEpGO0lBRUUsbUNBQXNELEVBRXZELEVBQUE7O0FGa0pDO0VFL0pIO0lBSUUseUJBQW9DLEVBRXJDLEVBQUE7O0FGeUpFO0VFdEpGO0lBRUUsb0NBQXNELEVBRXZELEVBQUE7O0FGa0pDO0VFL0pIO0lBSUUsdUJBQW9DLEVBRXJDLEVBQUE7O0FGeUpFO0VFdEpGO0lBRUUsa0NBQXNELEVBRXZELEVBQUE7O0FGa0pDO0VFL0pIO0lBSUUsc0JBQW9DLEVBRXJDLEVBQUE7O0FGeUpFO0VFdEpGO0lBRUUsaUNBQXNELEVBRXZELEVBQUE7O0FGa0pDO0VFL0pIO0lBSUUscUJBQW9DLEVBRXJDLEVBQUE7O0FGeUpFO0VFdEpGO0lBRUUsZ0NBQXNELEVBRXZELEVBQUE7O0FGa0pDO0VFL0pIO0lBSUUsdUJBQW9DLEVBRXJDLEVBQUE7O0FGeUpFO0VFdEpGO0lBRUUsa0NBQXNELEVBRXZELEVBQUE7O0FGa0pDO0VFL0pIO0lBSUUsd0JBQW9DLEVBRXJDLEVBQUE7O0FGeUpFO0VFdEpGO0lBRUUsbUNBQXNELEVBRXZELEVBQUE7O0FGa0pDO0VFL0pIO0lBSUUsc0JBQW9DLEVBRXJDLEVBQUE7O0FGeUpFO0VFdEpGO0lBRUUsaUNBQXNELEVBRXZELEVBQUE7O0FGa0pDO0VFL0pIO0lBSUUscUJBQW9DLEVBRXJDLEVBQUE7O0FGeUpFO0VFdEpGO0lBRUUsZ0NBQXNELEVBRXZELEVBQUE7O0FGa0pDO0VFL0pIO0lBSUUsc0JBQW9DLEVBRXJDLEVBQUE7O0FGeUpFO0VFdEpGO0lBRUUsaUNBQXNELEVBRXZELEVBQUE7O0FGa0pDO0VFL0pIO0lBSUUsd0JBQW9DLEVBRXJDLEVBQUE7O0FGeUpFO0VFdEpGO0lBRUUsbUNBQXNELEVBRXZELEVBQUE7O0FGa0pDO0VFL0pIO0lBSUUseUJBQW9DLEVBRXJDLEVBQUE7O0FGeUpFO0VFdEpGO0lBRUUsb0NBQXNELEVBRXZELEVBQUE7O0FGa0pDO0VFL0pIO0lBSUUsdUJBQW9DLEVBRXJDLEVBQUE7O0FGeUpFO0VFdEpGO0lBRUUsa0NBQXNELEVBRXZELEVBQUE7O0FGa0pDO0VFL0pIO0lBSUUsc0JBQW9DLEVBRXJDLEVBQUE7O0FGeUpFO0VFdEpGO0lBRUUsaUNBQXNELEVBRXZELEVBQUE7O0FBYkY7RUFJRSxtQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxxQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxzQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxvQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxtQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxvQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxzQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSx1QkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxxQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxvQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxpQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxtQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxvQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxrQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxpQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxrQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxvQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxxQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxtQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxrQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxtQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxxQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxzQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxvQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxtQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxvQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxzQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSx1QkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxxQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxvQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxpQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxtQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxvQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxrQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxpQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxrQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxvQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxxQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxtQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxrQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxtQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxxQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxzQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxvQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxtQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxvQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxzQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSx1QkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxxQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxvQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxpQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxtQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxvQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxrQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxpQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxrQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxvQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxxQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxtQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxrQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxtQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxxQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxzQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxvQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxtQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxvQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxzQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSx1QkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxxQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxvQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxpQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxtQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxvQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxrQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxpQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxrQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxvQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxxQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxtQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxrQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxtQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxxQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxzQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxvQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxtQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxvQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxzQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSx1QkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxxQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxvQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxpQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxtQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxvQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxrQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxpQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxrQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxvQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxxQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxtQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxrQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxtQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxxQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxzQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxvQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxtQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxvQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxzQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSx1QkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxxQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxvQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxpQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxtQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxvQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxrQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxpQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxrQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxvQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxxQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxtQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxrQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxtQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxxQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxzQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxvQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxtQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxvQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxzQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSx1QkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxxQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxvQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxpQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxtQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxvQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxrQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxpQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxrQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxvQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxxQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxtQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxrQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxtQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxxQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxzQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxvQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxtQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxvQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxzQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSx1QkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxxQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxvQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxpQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxtQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxvQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxrQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxpQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxrQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxvQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxxQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxtQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxrQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxtQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxxQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxzQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxvQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxtQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxvQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxzQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSx1QkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxxQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxvQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxpQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxtQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxvQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxrQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxpQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxrQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxvQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxxQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxtQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxrQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxtQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxxQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxzQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxvQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxtQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxvQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxzQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSx1QkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxxQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxvQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxrQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxvQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxxQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxtQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxrQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxtQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxxQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxzQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxvQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxtQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxvQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxzQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSx1QkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxxQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxvQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxxQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSx1QkFBb0MsRUFFckM7O0FBTkQ7RUFJRSx3QkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxzQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxxQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxrQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxvQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxxQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxtQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxrQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxtQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxxQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxzQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxvQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxtQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxvQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxzQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSx1QkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxxQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxvQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxxQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSx1QkFBb0MsRUFFckM7O0FBTkQ7RUFJRSx3QkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxzQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxxQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxrQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxvQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxxQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxtQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxrQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxtQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxxQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxzQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxvQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxtQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxvQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxzQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSx1QkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxxQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxvQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxxQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSx1QkFBb0MsRUFFckM7O0FBTkQ7RUFJRSx3QkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxzQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxxQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxrQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxvQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxxQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxtQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxrQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxtQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxxQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxzQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxvQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxtQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxvQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxzQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSx1QkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxxQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxvQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxxQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSx1QkFBb0MsRUFFckM7O0FBTkQ7RUFJRSx3QkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxzQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxxQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxrQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxvQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxxQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxtQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxrQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxtQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxxQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxzQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxvQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxtQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxvQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxzQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSx1QkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxxQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxvQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxxQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSx1QkFBb0MsRUFFckM7O0FBTkQ7RUFJRSx3QkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxzQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxxQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxrQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxvQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxxQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxtQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxrQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxtQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxxQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxzQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxvQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxtQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxvQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxzQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSx1QkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxxQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxvQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxxQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSx1QkFBb0MsRUFFckM7O0FBTkQ7RUFJRSx3QkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxzQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxxQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxrQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxvQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxxQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxtQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxrQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxtQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxxQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxzQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxvQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxtQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxvQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxzQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSx1QkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxxQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxvQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxxQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSx1QkFBb0MsRUFFckM7O0FBTkQ7RUFJRSx3QkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxzQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxxQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxrQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxvQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxxQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxtQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxrQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxtQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxxQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxzQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxvQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxtQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxvQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxzQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSx1QkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxxQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxvQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxxQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSx1QkFBb0MsRUFFckM7O0FBTkQ7RUFJRSx3QkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxzQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxxQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxrQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxvQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxxQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxtQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxrQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxtQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxxQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxzQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxvQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxtQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxvQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxzQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSx1QkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxxQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxvQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxxQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSx1QkFBb0MsRUFFckM7O0FBTkQ7RUFJRSx3QkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxzQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxxQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxrQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxvQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxxQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxtQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxrQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxtQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxxQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxzQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxvQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxtQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxvQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxzQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSx1QkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxxQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxvQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxxQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSx1QkFBb0MsRUFFckM7O0FBTkQ7RUFJRSx3QkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxzQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxxQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxrQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxvQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxxQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxtQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxrQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxtQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxxQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxzQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxvQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxtQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxvQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxzQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSx1QkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxxQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxvQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxxQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSx1QkFBb0MsRUFFckM7O0FBTkQ7RUFJRSx3QkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxzQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxxQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxrQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxvQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxxQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxtQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxrQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxtQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxxQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxzQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxvQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxtQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxvQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxzQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSx1QkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxxQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxvQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxxQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSx1QkFBb0MsRUFFckM7O0FBTkQ7RUFJRSx3QkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxzQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxxQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxrQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxvQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxxQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxtQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxrQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxtQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxxQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxzQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxvQkFBb0MsRUFFckM7O0FBTkQ7RUFJRSxtQkFBb0MsRUFFckM7O0FBb0RIO0VBQ0MsMEJBQXdCLEVBQ3hCOztBQUZEO0VBQ0MsMEJBQXdCLEVBQ3hCOztBQUZEO0VBQ0MsMEJBQXdCLEVBQ3hCOztBQUZEO0VBQ0MsMEJBQXdCLEVBQ3hCOztBQUZEO0VBQ0MsMEJBQXdCLEVBQ3hCOztBQUZEO0VBQ0MsMEJBQXdCLEVBQ3hCOztBQUZEO0VBQ0MsMEJBQXdCLEVBQ3hCOztBQUZEO0VBQ0MsMEJBQXdCLEVBQ3hCOztBQUZEO0VBQ0MsMEJBQXdCLEVBQ3hCOztBQUZEO0VBQ0MsMENBQXdCLEVBQ3hCOztBQUZEO0VBQ0MsMEJBQXdCLEVBQ3hCOztBQUlEO0VBQ0MscUNBQW1DLEVBQ25DOztBQUZEO0VBQ0MscUNBQW1DLEVBQ25DOztBQUZEO0VBQ0MscUNBQW1DLEVBQ25DOztBQUZEO0VBQ0MscUNBQW1DLEVBQ25DOztBQUZEO0VBQ0MscUNBQW1DLEVBQ25DOztBQUZEO0VBQ0MscUNBQW1DLEVBQ25DOztBQUZEO0VBQ0MscUNBQW1DLEVBQ25DOztBQUZEO0VBQ0MscUNBQW1DLEVBQ25DOztBQUZEO0VBQ0MscUNBQW1DLEVBQ25DOztBQUZEO0VBQ0MscURBQW1DLEVBQ25DOztBQUZEO0VBQ0MscUNBQW1DLEVBQ25DOztBQUZEO0VBQ0MseUNBQW1DLEVBQ25DOztBQUlBO0VBQ0Usa0dBQTBDLEVBQzNDOztBQUZEO0VBQ0Usa0dBQTBDLEVBQzNDOztBQUdIO0VBQ0MsaUJBQWdCO0VBQ2hCLGVBQWMsRUFDZDs7QUFFRDtFQUNDLGFBQVk7RUFDWixlQUFjO0VBQ2QsWUFBVyxFQUNYOztBQUVEO0VBQ0Msc0JBQWE7RUFBYixxQkFBYTtFQUFiLGNBQWE7RUFFYixnQ0FBK0I7RUFDL0Isc0JBQXFCO0VBQ3JCLHdCQUF1QixFQUN2Qjs7QUFFRDtFQUNDLHNCQUFhO0VBQWIscUJBQWE7RUFBYixjQUFhO0VBQ2IsNEJBQW1CO01BQW5CLHVCQUFtQjtVQUFuQixvQkFBbUIsRUFDbkI7O0FBV0Q7RUFDQyx1QkFBc0I7RUFDdEIsNEJBQTJCO0VBQzNCLDZCQUE0QjtFQUM1QiwwQkN0QnFCLEVEdUJyQjs7QUU3RUMsaUVBQWlFO0FBRy9EO29GQUNnRjtBQUVoRjs7Ozs7T0FLRztBQUVIO0VBQ0Usd0JDMUN1QjtFRDBDUyxPQUFPO0VBUXJDLGtCQUFpQjtFQUFFLE9BQU87RUFFNUIsMkJBQTBCO0VBQUUsT0FBTztFQUNuQywrQkFBOEI7RUFBRSxPQUFPLEVBQ3hDOztBQUlEO29GQUNnRjtBQUVoRjs7T0FFRztBQUVIO0VBQ0UsVUFBUyxFQUNWOztBQUVEOztPQUVHO0FBRUg7Ozs7OztFQU1FLGVBQWMsRUFDZjs7QUFFRDs7O09BR0c7QUFFSDtFRTlFRixlQVh1QztFRm9HakMsaUJBQWdCLEVBRW5COztBQW9DRDtvRkFDZ0Y7QUF1Q2hGOztPQUVHO0FBRUg7O0VBRUUsZUFBYyxFQUNmOztBQUVEOztPQUVHO0FBRUg7RUFLSSxpQkN2TFksRUR5TGY7O0FBRUQ7OztPQUdHO0FBRUg7RUFDRSx3QkFBdUI7RUFBRSxPQUFPO0VBQ2hDLFVBQVM7RUFBRSxPQUFPO0VBQ2xCLGtCQUFpQjtFQUFFLE9BQU8sRUFDM0I7O0FBRUQ7O09BRUc7QUFFSDtFQUNFLGVBQWMsRUFDZjs7QUFhRDs7O09BR0c7QUFFSDtFQUNFLGtDQUFpQztFQUFFLE9BQU87RUFDMUMsZUFBYztFQUFFLE9BQU8sRUFDeEI7O0FBSUQ7b0ZBQ2dGO0FBRWhGOzs7T0FHRztBQUVIO0VBQ0UsOEJBQTZCO0VBQUUsT0FBTztFQUN0QyxzQ0FBcUM7RUFBRSxPQUFPLEVBQy9DOztBQUVEOzs7T0FHRztBQUVIOztFQUVFLGlCQUFnQixFQUNqQjs7QUFJRDtvRkFDZ0Y7QUFFaEY7OztPQUdHO0FBRUg7RUFDRSxvQkFBbUI7RUFBRSxPQUFPO0VBQzVCLDJCQUEwQjtFQUFFLE9BQU87RUFDbkMsa0NBQWlDO0VBQUUsT0FBTyxFQUMzQzs7QUFFRDs7T0FFRztBQUVIOztFQUVFLHFCQUFvQixFQUNyQjs7QUFFRDs7T0FFRztBQVBIOztFQVdFLG9CQUFtQixFQUNwQjs7QUFFRDs7O09BR0c7QUFFSDs7O0VBR0Usa0NBQWlDO0VBQUUsT0FBTztFQUMxQyxlQUFjO0VBQUUsT0FBTyxFQUN4Qjs7QUFFRDs7T0FFRztBQUVIO0VBQ0UsbUJBQWtCLEVBQ25COztBQUVEOztPQUVHO0FBRUg7RUFDRSx1QkFBc0I7RUFDdEIsWUFBVyxFQUNaOztBQUVEOztPQUVHO0FBRUg7RUFDRSxlQUFjLEVBQ2Y7O0FBRUQ7OztPQUdHO0FBRUg7O0VBRUUsZUFBYztFQUNkLGVBQWM7RUFDZCxtQkFBa0I7RUFDbEIseUJBQXdCLEVBQ3pCOztBQUVEO0VBQ0UsZ0JBQWUsRUFDaEI7O0FBRUQ7RUFDRSxZQUFXLEVBQ1o7O0FBSUQ7b0ZBQ2dGO0FBRWhGOztPQUVHO0FBRUg7O0VBRUUsc0JBQXFCLEVBQ3RCOztBQUVEOztPQUVHO0FBRUg7RUFDRSxjQUFhO0VBQ2IsVUFBUyxFQUNWOztBQUVEOztPQUVHO0FBRUg7RUFDRSxtQkFBa0IsRUFDbkI7O0FBRUQ7O09BRUc7QUFFSDtFQUNFLGlCQUFnQixFQUNqQjs7QUFJRDtvRkFDZ0Y7QUFFaEY7OztPQUdHO0FBRUg7Ozs7O0VBS0Usd0JDelp1QjtFRHlaUyxPQUFPO0VBQ3ZDLGdCQUFlO0VBQUUsT0FBTztFQUt0QixrQkFBaUI7RUFBRSxPQUFPO0VBRTVCLFVBQVM7RUFBRSxPQUFPLEVBQ25COztBQUVEOztPQUVHO0FBRUg7RUFDRSxrQkFBaUIsRUFDbEI7O0FBRUQ7OztPQUdHO0FBRUg7O0VBQ1MsT0FBTztFQUNkLHFCQUFvQixFQUNyQjs7QUFFRDs7OztPQUlHO0FBRUg7Ozs7RUFJRSwyQkFBMEI7RUFBRSxPQUFPLEVBQ3BDOztBQUVEOzs7O0VBS0U7O1NBRUc7RUFPSDs7U0FFRyxFQUtKO0VBckJEOzs7O0lBVUksbUJBQWtCO0lBQ2xCLFdBQVUsRUFDWDtFQVpIOzs7O0lBbUJJLCtCQUE4QixFQUMvQjs7QUFHSDs7T0FFRztBQUVIO0VBQ0Usa0JBQWlCLEVBQ2xCOztBQUVEOzs7T0FHRztBTmtnR1A7O0VNOS9GTSx1QkFBc0I7RUFBRSxPQUFPO0VBQy9CLFdBQVU7RUFBRSxPQUFPLEVBQ3BCOztBQUVEOztPQUVHO0FOa2dHUDs7RU05L0ZNLGFBQVksRUFDYjs7QUFFRDs7O09BR0c7QU5nZ0dQO0VNNy9GTSw4QkFBNkI7RUFBRSxPQUFPO0VBQ3RDLHFCQUFvQjtFQUFFLE9BQU87RUFFN0I7O1NBRUcsRUFNSjtFTjAvRkg7SU01L0ZNLHlCQUF3QixFQUN6Qjs7QUFHSDs7O09BR0c7QUFFSDtFQUNFLDJCQUEwQjtFQUFFLE9BQU87RUFDbkMsY0FBYTtFQUFFLE9BQU8sRUFDdkI7O0FBRUQ7O09BRUc7QUFFSDtFQUNFLDBCQUF5QjtFQUN6QixjQUFhO0VBQ2IsK0JBQThCLEVBQy9COztBQUVEOzs7OztPQUtHO0FBRUg7RUFDRSx1QkFBc0I7RUFBRSxPQUFPO0VBQy9CLGVBQWM7RUFBRSxPQUFPO0VBQ3ZCLGdCQUFlO0VBQUUsT0FBTztFQUN4QixXQUFVO0VBQUUsT0FBTztFQUNuQixlQUFjO0VBQUUsT0FBTztFQUN2QixvQkFBbUI7RUFBRSxPQUFPLEVBQzdCOztBQUVEOzs7T0FHRztBQUVIO0VBQ0Usc0JBQXFCO0VBQUUsT0FBTztFQUM5Qix5QkFBd0I7RUFBRSxPQUFPLEVBQ2xDOztBQUVEOztPQUVHO0FBRUg7RUFDRSxlQUFjLEVBQ2Y7O0FBSUQ7b0ZBQ2dGO0FBRWhGOztPQUVHO0FBRUg7RUFDRSxlQUFjLEVBQ2Y7O0FBRUQ7O09BRUc7QUFFSDtFQUNFLG1CQUFrQixFQUNuQjs7QUFFRDs7T0FFRztBQUVIO0VBQ0UsZUFBYyxFQXFCZjs7QUFJRDtvRkFDZ0Y7QUFFaEY7O09BRUc7QUFFSDtFQUNFLHNCQUFxQixFQUN0Qjs7QUFFRDs7T0FFRztBQUVIO0VBQ0UsY0FBYSxFQUNkOztBQUlEO29GQUNnRjtBQUVoRjs7T0FFRztBTnE5RlA7RU1sOUZNLGNBQWEsRUFDZDs7QUd2aEJIO0VBQ0UseUVBQWdELEVBQ2pEOztBSGxGQztFR3FGQSx1QkFBc0I7RUFDdEIsZ0JKM0VtQixFSTRFcEI7O0FBR0Q7OztFQUdFLG9CQUFtQixFQUNwQjs7QUh0RUM7RUcwRUEsVUFBUztFQUNULFdBQVU7RUFFVixvQko5RFc7RUlnRVgsaUxKeEY2SztFSXlGN0ssaUJKUXNCO0VJUHRCLGlCSjVGbUI7RUk2Rm5CLGVKdkRXO0VJMERULG9DQUFtQztFQUNuQyxtQ0FBa0MsRUFFckM7O0FIcU9DO0VHak9BLHNCQUFxQjtFQUNyQix1QkFBc0I7RUFHdEIsZ0JBQWU7RUFDZixhQUFZO0VBQ1osZ0NBQStCLEVBQ2hDOztBSHVaQztFR25aQSxhQUFZO0VBQ1osaUJBQWdCO0VBQ2hCLGlCSmJhLEVJY2Q7O0FBR0Q7RUFDRSx1QkFBc0I7RUFDdEIsWUFBVztFQUNYLGlCSnBCYSxFSXFCZDs7QUFJRDs7Ozs7O0VBS0ksMkJBQTBCLEVBQzNCOztBSDRPRDtFR3RPQSxXQUFVO0VBQ1YseUJBQWdCO0tBQWhCLHNCQUFnQjtVQUFoQixpQkFBZ0I7RUFDaEIsVUFBUztFQUNULGlCSnhDYTtFSXlDYix3QkFBdUI7RUFDdkIsZUFBYztFQUNkLGFKckN1QixFSXNDeEI7RVRtOUdEO0lVbitHRSxXQUFVLEVBQ1g7O0FKK0NDO0VHNUJBLGVBQWMsRUFDZjs7QUhzTUM7Ozs7O0VHOUxBLHFCQUFvQixFQUNyQjs7QUFHRDtFQUNFLDBCQUF5QixFQUMxQjs7QUFFRDtFQUNFLHlCQUF3QixFQUN6Qjs7QUVyT0Q7RUNvQk0sc0JBQTRCO0VBQTVCLHFCQUE0QjtFQ2ZsQyxpQkN1RXVEO0VEdEV2RCxlQUFjLEVGSWI7RVQ2SUc7SVN2Sko7TUNvQk0sd0JBQTRCO01BQTVCLHVCQUE0QixFRFZqQyxFQUFBO0VUNklHO0lTdkpKO01Db0JNLHVCQUE0QjtNQUE1QixzQkFBNEIsRURWakMsRUFBQTtFVGtKRztJUzVKSjtNQ29CTSxzQkFBNEI7TUFBNUIscUJBQTRCLEVEVmpDLEVBQUE7RVRrSkc7SVM1Sko7TUNvQk0sc0JBQTRCO01BQTVCLHFCQUE0QixFRFZqQyxFQUFBO0VBVkQ7SUNvQk0sc0JBQTRCO0lBQTVCLHFCQUE0QjtJQ2ZsQyxnQkZEbUM7SUVFbkMsZUFBYyxFRkRYO0lUa0pDO01TdkpKO1FDb0JNLHdCQUE0QjtRQUE1Qix1QkFBNEIsRURmL0IsRUFBQTtJVGtKQztNU3ZKSjtRQ29CTSx1QkFBNEI7UUFBNUIsc0JBQTRCLEVEZi9CLEVBQUE7SVR1SkM7TVM1Sko7UUNvQk0sc0JBQTRCO1FBQTVCLHFCQUE0QixFRGYvQixFQUFBO0lUdUpDO01TNUpKO1FDb0JNLHNCQUE0QjtRQUE1QixxQkFBNEIsRURmL0IsRUFBQTtFQUxIO0lDNkJJLGlCQUE0QjtJQUE1QixnQkFBNEI7SUN4QmhDLGdCRkdtQztJRUZuQyxlQUFjLEVGR1g7O0FBSUg7RUVPQSxzQkFBYTtFQUFiLHFCQUFhO0VBQWIsY0FBYTtFQUNiLDRCQUhxQjtNQUdyQix3QkFIcUI7VUFHckIsb0JBSHFCLEVGSHBCOztBQUVEO0VJcUJFLHVCQUFjO01BQWQsbUJBQWM7VUFBZCxlQUFjO0VBQ2QsZ0JBQWU7RUFDZixlQUFjO0VBa0NkLFlBRG9ELEVKNUNyRDtFQVpEO0lJMEJFLHNCQUFhO1FBQWIsa0JBQWE7WUFBYixjQUFhLEVKcEJaO0VBTkg7SUk2QkUsdUJBQWM7UUFBZCxtQkFBYztZQUFkLGVBQWMsRUpuQmI7O0FBR0g7RUlvQ0UsWUFBbUIsRUpqQ2xCOztBQUhIO0VJd0NFLFlBQW1CLEVKakNsQjs7QUFTRDtFQU1JLHlCQUFnQjtNQUFoQiw4QkFBZ0I7VUFBaEIsaUJBQWdCLEVBQ2pCOztBVGtHRDtFU3pHRjtJQU1JLHlCQUFnQjtRQUFoQiw4QkFBZ0I7WUFBaEIsaUJBQWdCLEVBQ2pCLEVBQUE7O0FUa0dEO0VTekdGO0lBTUkseUJBQWdCO1FBQWhCLDhCQUFnQjtZQUFoQixpQkFBZ0IsRUFDakIsRUFBQTs7QVR1R0Q7RVM5R0Y7SUFNSSx5QkFBZ0I7UUFBaEIsOEJBQWdCO1lBQWhCLGlCQUFnQixFQUNqQixFQUFBOztBVHVHRDtFUzlHRjtJQU1JLHlCQUFnQjtRQUFoQiw4QkFBZ0I7WUFBaEIsaUJBQWdCLEVBQ2pCLEVBQUE7O0FBbUJEO0VJRUYsZ0JBRG9ELEVKQ2pEOztBQUZEO0VJRUYsaUJBRG9ELEVKQ2pEOztBQUZEO0VJRUYsV0FEb0QsRUpDakQ7O0FBRkQ7RUlFRixpQkFEb0QsRUpDakQ7O0FBRkQ7RUlFRixpQkFEb0QsRUpDakQ7O0FBRkQ7RUlFRixXQURvRCxFSkNqRDs7QUFGRDtFSUVGLGlCQURvRCxFSkNqRDs7QUFGRDtFSUVGLGlCQURvRCxFSkNqRDs7QUFGRDtFSUVGLFdBRG9ELEVKQ2pEOztBQUZEO0VJRUYsaUJBRG9ELEVKQ2pEOztBQUZEO0VJRUYsaUJBRG9ELEVKQ2pEOztBQUZEO0VJRUYsWUFEb0QsRUpDakQ7O0FUNkVEO0VTNUZBO0lJaEJGLHNCQUFhO1FBQWIsa0JBQWE7WUFBYixjQUFhO0lBdUJiLFlBQW1CLEVKSmhCO0VBRUQ7SUlsQkYsdUJBQWM7UUFBZCxtQkFBYztZQUFkLGVBQWM7SUF3QmQsWUFBbUIsRUpIaEI7RUFLRDtJSUVGLGdCQURvRCxFSkNqRDtFQUZEO0lJRUYsaUJBRG9ELEVKQ2pEO0VBRkQ7SUlFRixXQURvRCxFSkNqRDtFQUZEO0lJRUYsaUJBRG9ELEVKQ2pEO0VBRkQ7SUlFRixpQkFEb0QsRUpDakQ7RUFGRDtJSUVGLFdBRG9ELEVKQ2pEO0VBRkQ7SUlFRixpQkFEb0QsRUpDakQ7RUFGRDtJSUVGLGlCQURvRCxFSkNqRDtFQUZEO0lJRUYsV0FEb0QsRUpDakQ7RUFGRDtJSUVGLGlCQURvRCxFSkNqRDtFQUZEO0lJRUYsaUJBRG9ELEVKQ2pEO0VBRkQ7SUlFRixZQURvRCxFSkNqRCxFQUFBOztBVDZFRDtFUzVGQTtJSWhCRixzQkFBYTtRQUFiLGtCQUFhO1lBQWIsY0FBYTtJQXVCYixZQUFtQixFSkpoQjtFQUVEO0lJbEJGLHVCQUFjO1FBQWQsbUJBQWM7WUFBZCxlQUFjO0lBd0JkLFlBQW1CLEVKSGhCO0VBS0Q7SUlFRixnQkFEb0QsRUpDakQ7RUFGRDtJSUVGLGlCQURvRCxFSkNqRDtFQUZEO0lJRUYsV0FEb0QsRUpDakQ7RUFGRDtJSUVGLGlCQURvRCxFSkNqRDtFQUZEO0lJRUYsaUJBRG9ELEVKQ2pEO0VBRkQ7SUlFRixXQURvRCxFSkNqRDtFQUZEO0lJRUYsaUJBRG9ELEVKQ2pEO0VBRkQ7SUlFRixpQkFEb0QsRUpDakQ7RUFGRDtJSUVGLFdBRG9ELEVKQ2pEO0VBRkQ7SUlFRixpQkFEb0QsRUpDakQ7RUFGRDtJSUVGLGlCQURvRCxFSkNqRDtFQUZEO0lJRUYsWUFEb0QsRUpDakQsRUFBQTs7QVRrRkQ7RVNqR0E7SUloQkYsc0JBQWE7UUFBYixrQkFBYTtZQUFiLGNBQWE7SUF1QmIsWUFBbUIsRUpKaEI7RUFFRDtJSWxCRix1QkFBYztRQUFkLG1CQUFjO1lBQWQsZUFBYztJQXdCZCxZQUFtQixFSkhoQjtFQUtEO0lJRUYsZ0JBRG9ELEVKQ2pEO0VBRkQ7SUlFRixpQkFEb0QsRUpDakQ7RUFGRDtJSUVGLFdBRG9ELEVKQ2pEO0VBRkQ7SUlFRixpQkFEb0QsRUpDakQ7RUFGRDtJSUVGLGlCQURvRCxFSkNqRDtFQUZEO0lJRUYsV0FEb0QsRUpDakQ7RUFGRDtJSUVGLGlCQURvRCxFSkNqRDtFQUZEO0lJRUYsaUJBRG9ELEVKQ2pEO0VBRkQ7SUlFRixXQURvRCxFSkNqRDtFQUZEO0lJRUYsaUJBRG9ELEVKQ2pEO0VBRkQ7SUlFRixpQkFEb0QsRUpDakQ7RUFGRDtJSUVGLFlBRG9ELEVKQ2pELEVBQUE7O0FUa0ZEO0VTakdBO0lJaEJGLHNCQUFhO1FBQWIsa0JBQWE7WUFBYixjQUFhO0lBdUJiLFlBQW1CLEVKSmhCO0VBRUQ7SUlsQkYsdUJBQWM7UUFBZCxtQkFBYztZQUFkLGVBQWM7SUF3QmQsWUFBbUIsRUpIaEI7RUFLRDtJSUVGLGdCQURvRCxFSkNqRDtFQUZEO0lJRUYsaUJBRG9ELEVKQ2pEO0VBRkQ7SUlFRixXQURvRCxFSkNqRDtFQUZEO0lJRUYsaUJBRG9ELEVKQ2pEO0VBRkQ7SUlFRixpQkFEb0QsRUpDakQ7RUFGRDtJSUVGLFdBRG9ELEVKQ2pEO0VBRkQ7SUlFRixpQkFEb0QsRUpDakQ7RUFGRDtJSUVGLGlCQURvRCxFSkNqRDtFQUZEO0lJRUYsV0FEb0QsRUpDakQ7RUFGRDtJSUVGLGlCQURvRCxFSkNqRDtFQUZEO0lJRUYsaUJBRG9ELEVKQ2pEO0VBRkQ7SUlFRixZQURvRCxFSkNqRCxFQUFBOztBQUtMO0VBQ0UsWUFBVyxFQUNaOztBQUdEO0VBQ0UsYUFBWSxFQUNiOztBQTZCRDtFQy9GTSx3QkFBNEI7RUFBNUIseUJBQTRCLEVEOEhqQztFVEtHO0lTcENKO01DL0ZNLHVCQUE0QjtNQUE1Qix3QkFBNEIsRUQ4SGpDLEVBQUE7RVRLRztJU3BDSjtNQy9GTSxzQkFBNEI7TUFBNUIsdUJBQTRCLEVEOEhqQyxFQUFBO0VUVUc7SVN6Q0o7TUMvRk0sc0JBQTRCO01BQTVCLHVCQUE0QixFRDhIakMsRUFBQTtFVFVHO0lTekNKO01DL0ZNLHNCQUE0QjtNQUE1Qix1QkFBNEIsRUQ4SGpDLEVBQUE7RUEvQkQ7SUlwREUsNkJBRDRFO0lIakMxRSx1QkFBNEI7SUFBNUIsd0JBQTRCLEVENEY3QjtFVDhCQztJU3BDSjtNSXBERSw0QkFENEU7TUhqQzFFLHNCQUE0QjtNQUE1Qix1QkFBNEIsRURtR3pCLEVBQUE7RVR1Qkg7SVNwQ0o7TUlwREUsMkJBRDRFO01IakMxRSxxQkFBNEI7TUFBNUIsc0JBQTRCLEVEbUd6QixFQUFBO0VUNEJIO0lTekNKO01JcERFLDJCQUQ0RTtNSGpDMUUscUJBQTRCO01BQTVCLHNCQUE0QixFRG1HekIsRUFBQTtFVDRCSDtJU3pDSjtNSXBERSwyQkFENEU7TUhqQzFFLHFCQUE0QjtNQUE1QixzQkFBNEIsRURtR3pCLEVBQUE7RUFyQ1A7SUl6QkUsWUFBbUIsRUoyQnBCO0VBRUQ7SUl6QkUsWUFBbUIsRUoyQnBCO0VBTUM7SUk3QkEsaUNBRGdILEVKZ0MvRztFQUZEO0lJN0JBLGtDQURnSCxFSmdDL0c7RUFGRDtJSTdCQSw0QkFEZ0gsRUpnQy9HO0VBRkQ7SUk3QkEsa0NBRGdILEVKZ0MvRztFQUZEO0lJN0JBLGtDQURnSCxFSmdDL0c7RUFGRDtJSTdCQSw0QkFEZ0gsRUpnQy9HO0VBRkQ7SUk3QkEsa0NBRGdILEVKZ0MvRztFQUZEO0lJN0JBLGtDQURnSCxFSmdDL0c7RUFGRDtJSTdCQSw0QkFEZ0gsRUpnQy9HO0VBRkQ7SUk3QkEsa0NBRGdILEVKZ0MvRztFQUZEO0lJN0JBLGtDQURnSCxFSmdDL0c7RUFGRDtJSTdCQSw2QkFEZ0gsRUpnQy9HO0VUOENDO0lTNURKO01JekJFLFlBQW1CLEVKMkJwQjtJQUVEO01JekJFLFlBQW1CLEVKMkJwQjtJQU1DO01JN0JBLGdDQURnSCxFSmdDL0c7SUFGRDtNSTdCQSxpQ0FEZ0gsRUpnQy9HO0lBRkQ7TUk3QkEsMkJBRGdILEVKZ0MvRztJQUZEO01JN0JBLGlDQURnSCxFSmdDL0c7SUFGRDtNSTdCQSxpQ0FEZ0gsRUpnQy9HO0lBRkQ7TUk3QkEsMkJBRGdILEVKZ0MvRztJQUZEO01JN0JBLGlDQURnSCxFSmdDL0c7SUFGRDtNSTdCQSxpQ0FEZ0gsRUpnQy9HO0lBRkQ7TUk3QkEsMkJBRGdILEVKZ0MvRztJQUZEO01JN0JBLGlDQURnSCxFSmdDL0c7SUFGRDtNSTdCQSxpQ0FEZ0gsRUpnQy9HO0lBRkQ7TUk3QkEsNEJBRGdILEVKZ0MvRztJQWRIO01JekJFLFlBQW1CLEVKMkJwQjtJQUVEO01JekJFLFlBQW1CLEVKMkJwQjtJQU1DO01JN0JBLGdDQURnSCxFSmdDL0c7SUFGRDtNSTdCQSxpQ0FEZ0gsRUpnQy9HO0lBRkQ7TUk3QkEsMkJBRGdILEVKZ0MvRztJQUZEO01JN0JBLGlDQURnSCxFSmdDL0c7SUFGRDtNSTdCQSxpQ0FEZ0gsRUpnQy9HO0lBRkQ7TUk3QkEsMkJBRGdILEVKZ0MvRztJQUZEO01JN0JBLGlDQURnSCxFSmdDL0c7SUFGRDtNSTdCQSxpQ0FEZ0gsRUpnQy9HO0lBRkQ7TUk3QkEsMkJBRGdILEVKZ0MvRztJQUZEO01JN0JBLGlDQURnSCxFSmdDL0c7SUFGRDtNSTdCQSxpQ0FEZ0gsRUpnQy9HO0lBRkQ7TUk3QkEsNEJBRGdILEVKZ0MvRyxFQUFBO0VUOENDO0lTNURKO01JekJFLFlBQW1CLEVKMkJwQjtJQUVEO01JekJFLFlBQW1CLEVKMkJwQjtJQU1DO01JN0JBLCtCQURnSCxFSmdDL0c7SUFGRDtNSTdCQSxnQ0FEZ0gsRUpnQy9HO0lBRkQ7TUk3QkEsMEJBRGdILEVKZ0MvRztJQUZEO01JN0JBLGdDQURnSCxFSmdDL0c7SUFGRDtNSTdCQSxnQ0FEZ0gsRUpnQy9HO0lBRkQ7TUk3QkEsMEJBRGdILEVKZ0MvRztJQUZEO01JN0JBLGdDQURnSCxFSmdDL0c7SUFGRDtNSTdCQSxnQ0FEZ0gsRUpnQy9HO0lBRkQ7TUk3QkEsMEJBRGdILEVKZ0MvRztJQUZEO01JN0JBLGdDQURnSCxFSmdDL0c7SUFGRDtNSTdCQSxnQ0FEZ0gsRUpnQy9HO0lBRkQ7TUk3QkEsMkJBRGdILEVKZ0MvRztJQWRIO01JekJFLFlBQW1CLEVKMkJwQjtJQUVEO01JekJFLFlBQW1CLEVKMkJwQjtJQU1DO01JN0JBLCtCQURnSCxFSmdDL0c7SUFGRDtNSTdCQSxnQ0FEZ0gsRUpnQy9HO0lBRkQ7TUk3QkEsMEJBRGdILEVKZ0MvRztJQUZEO01JN0JBLGdDQURnSCxFSmdDL0c7SUFGRDtNSTdCQSxnQ0FEZ0gsRUpnQy9HO0lBRkQ7TUk3QkEsMEJBRGdILEVKZ0MvRztJQUZEO01JN0JBLGdDQURnSCxFSmdDL0c7SUFGRDtNSTdCQSxnQ0FEZ0gsRUpnQy9HO0lBRkQ7TUk3QkEsMEJBRGdILEVKZ0MvRztJQUZEO01JN0JBLGdDQURnSCxFSmdDL0c7SUFGRDtNSTdCQSxnQ0FEZ0gsRUpnQy9HO0lBRkQ7TUk3QkEsMkJBRGdILEVKZ0MvRztJQWRIO01JekJFLFlBQW1CLEVKMkJwQjtJQUVEO01JekJFLFlBQW1CLEVKMkJwQjtJQU1DO01JN0JBLCtCQURnSCxFSmdDL0c7SUFGRDtNSTdCQSxnQ0FEZ0gsRUpnQy9HO0lBRkQ7TUk3QkEsMEJBRGdILEVKZ0MvRztJQUZEO01JN0JBLGdDQURnSCxFSmdDL0c7SUFGRDtNSTdCQSxnQ0FEZ0gsRUpnQy9HO0lBRkQ7TUk3QkEsMEJBRGdILEVKZ0MvRztJQUZEO01JN0JBLGdDQURnSCxFSmdDL0c7SUFGRDtNSTdCQSxnQ0FEZ0gsRUpnQy9HO0lBRkQ7TUk3QkEsMEJBRGdILEVKZ0MvRztJQUZEO01JN0JBLGdDQURnSCxFSmdDL0c7SUFGRDtNSTdCQSxnQ0FEZ0gsRUpnQy9HO0lBRkQ7TUk3QkEsMkJBRGdILEVKZ0MvRyxFQUFBO0VUbURDO0lTakVKO01JekJFLFlBQW1CLEVKMkJwQjtJQUVEO01JekJFLFlBQW1CLEVKMkJwQjtJQU1DO01JN0JBLCtCQURnSCxFSmdDL0c7SUFGRDtNSTdCQSxnQ0FEZ0gsRUpnQy9HO0lBRkQ7TUk3QkEsMEJBRGdILEVKZ0MvRztJQUZEO01JN0JBLGdDQURnSCxFSmdDL0c7SUFGRDtNSTdCQSxnQ0FEZ0gsRUpnQy9HO0lBRkQ7TUk3QkEsMEJBRGdILEVKZ0MvRztJQUZEO01JN0JBLGdDQURnSCxFSmdDL0c7SUFGRDtNSTdCQSxnQ0FEZ0gsRUpnQy9HO0lBRkQ7TUk3QkEsMEJBRGdILEVKZ0MvRztJQUZEO01JN0JBLGdDQURnSCxFSmdDL0c7SUFGRDtNSTdCQSxnQ0FEZ0gsRUpnQy9HO0lBRkQ7TUk3QkEsMkJBRGdILEVKZ0MvRztJQWRIO01JekJFLFlBQW1CLEVKMkJwQjtJQUVEO01JekJFLFlBQW1CLEVKMkJwQjtJQU1DO01JN0JBLCtCQURnSCxFSmdDL0c7SUFGRDtNSTdCQSxnQ0FEZ0gsRUpnQy9HO0lBRkQ7TUk3QkEsMEJBRGdILEVKZ0MvRztJQUZEO01JN0JBLGdDQURnSCxFSmdDL0c7SUFGRDtNSTdCQSxnQ0FEZ0gsRUpnQy9HO0lBRkQ7TUk3QkEsMEJBRGdILEVKZ0MvRztJQUZEO01JN0JBLGdDQURnSCxFSmdDL0c7SUFGRDtNSTdCQSxnQ0FEZ0gsRUpnQy9HO0lBRkQ7TUk3QkEsMEJBRGdILEVKZ0MvRztJQUZEO01JN0JBLGdDQURnSCxFSmdDL0c7SUFGRDtNSTdCQSxnQ0FEZ0gsRUpnQy9HO0lBRkQ7TUk3QkEsMkJBRGdILEVKZ0MvRztJQWRIO01JekJFLFlBQW1CLEVKMkJwQjtJQUVEO01JekJFLFlBQW1CLEVKMkJwQjtJQU1DO01JN0JBLCtCQURnSCxFSmdDL0c7SUFGRDtNSTdCQSxnQ0FEZ0gsRUpnQy9HO0lBRkQ7TUk3QkEsMEJBRGdILEVKZ0MvRztJQUZEO01JN0JBLGdDQURnSCxFSmdDL0c7SUFGRDtNSTdCQSxnQ0FEZ0gsRUpnQy9HO0lBRkQ7TUk3QkEsMEJBRGdILEVKZ0MvRztJQUZEO01JN0JBLGdDQURnSCxFSmdDL0c7SUFGRDtNSTdCQSxnQ0FEZ0gsRUpnQy9HO0lBRkQ7TUk3QkEsMEJBRGdILEVKZ0MvRztJQUZEO01JN0JBLGdDQURnSCxFSmdDL0c7SUFGRDtNSTdCQSxnQ0FEZ0gsRUpnQy9HO0lBRkQ7TUk3QkEsMkJBRGdILEVKZ0MvRztJQWRIO01JekJFLFlBQW1CLEVKMkJwQjtJQUVEO01JekJFLFlBQW1CLEVKMkJwQjtJQU1DO01JN0JBLCtCQURnSCxFSmdDL0c7SUFGRDtNSTdCQSxnQ0FEZ0gsRUpnQy9HO0lBRkQ7TUk3QkEsMEJBRGdILEVKZ0MvRztJQUZEO01JN0JBLGdDQURnSCxFSmdDL0c7SUFGRDtNSTdCQSxnQ0FEZ0gsRUpnQy9HO0lBRkQ7TUk3QkEsMEJBRGdILEVKZ0MvRztJQUZEO01JN0JBLGdDQURnSCxFSmdDL0c7SUFGRDtNSTdCQSxnQ0FEZ0gsRUpnQy9HO0lBRkQ7TUk3QkEsMEJBRGdILEVKZ0MvRztJQUZEO01JN0JBLGdDQURnSCxFSmdDL0c7SUFGRDtNSTdCQSxnQ0FEZ0gsRUpnQy9HO0lBRkQ7TUk3QkEsMkJBRGdILEVKZ0MvRyxFQUFBO0VUbURDO0lTakVKO01JekJFLFlBQW1CLEVKMkJwQjtJQUVEO01JekJFLFlBQW1CLEVKMkJwQjtJQU1DO01JN0JBLCtCQURnSCxFSmdDL0c7SUFGRDtNSTdCQSxnQ0FEZ0gsRUpnQy9HO0lBRkQ7TUk3QkEsMEJBRGdILEVKZ0MvRztJQUZEO01JN0JBLGdDQURnSCxFSmdDL0c7SUFGRDtNSTdCQSxnQ0FEZ0gsRUpnQy9HO0lBRkQ7TUk3QkEsMEJBRGdILEVKZ0MvRztJQUZEO01JN0JBLGdDQURnSCxFSmdDL0c7SUFGRDtNSTdCQSxnQ0FEZ0gsRUpnQy9HO0lBRkQ7TUk3QkEsMEJBRGdILEVKZ0MvRztJQUZEO01JN0JBLGdDQURnSCxFSmdDL0c7SUFGRDtNSTdCQSxnQ0FEZ0gsRUpnQy9HO0lBRkQ7TUk3QkEsMkJBRGdILEVKZ0MvRztJQWRIO01JekJFLFlBQW1CLEVKMkJwQjtJQUVEO01JekJFLFlBQW1CLEVKMkJwQjtJQU1DO01JN0JBLCtCQURnSCxFSmdDL0c7SUFGRDtNSTdCQSxnQ0FEZ0gsRUpnQy9HO0lBRkQ7TUk3QkEsMEJBRGdILEVKZ0MvRztJQUZEO01JN0JBLGdDQURnSCxFSmdDL0c7SUFGRDtNSTdCQSxnQ0FEZ0gsRUpnQy9HO0lBRkQ7TUk3QkEsMEJBRGdILEVKZ0MvRztJQUZEO01JN0JBLGdDQURnSCxFSmdDL0c7SUFGRDtNSTdCQSxnQ0FEZ0gsRUpnQy9HO0lBRkQ7TUk3QkEsMEJBRGdILEVKZ0MvRztJQUZEO01JN0JBLGdDQURnSCxFSmdDL0c7SUFGRDtNSTdCQSxnQ0FEZ0gsRUpnQy9HO0lBRkQ7TUk3QkEsMkJBRGdILEVKZ0MvRztJQWRIO01JekJFLFlBQW1CLEVKMkJwQjtJQUVEO01JekJFLFlBQW1CLEVKMkJwQjtJQU1DO01JN0JBLCtCQURnSCxFSmdDL0c7SUFGRDtNSTdCQSxnQ0FEZ0gsRUpnQy9HO0lBRkQ7TUk3QkEsMEJBRGdILEVKZ0MvRztJQUZEO01JN0JBLGdDQURnSCxFSmdDL0c7SUFGRDtNSTdCQSxnQ0FEZ0gsRUpnQy9HO0lBRkQ7TUk3QkEsMEJBRGdILEVKZ0MvRztJQUZEO01JN0JBLGdDQURnSCxFSmdDL0c7SUFGRDtNSTdCQSxnQ0FEZ0gsRUpnQy9HO0lBRkQ7TUk3QkEsMEJBRGdILEVKZ0MvRztJQUZEO01JN0JBLGdDQURnSCxFSmdDL0c7SUFGRDtNSTdCQSxnQ0FEZ0gsRUpnQy9HO0lBRkQ7TUk3QkEsMkJBRGdILEVKZ0MvRztJQWRIO01JekJFLFlBQW1CLEVKMkJwQjtJQUVEO01JekJFLFlBQW1CLEVKMkJwQjtJQU1DO01JN0JBLCtCQURnSCxFSmdDL0c7SUFGRDtNSTdCQSxnQ0FEZ0gsRUpnQy9HO0lBRkQ7TUk3QkEsMEJBRGdILEVKZ0MvRztJQUZEO01JN0JBLGdDQURnSCxFSmdDL0c7SUFGRDtNSTdCQSxnQ0FEZ0gsRUpnQy9HO0lBRkQ7TUk3QkEsMEJBRGdILEVKZ0MvRztJQUZEO01JN0JBLGdDQURnSCxFSmdDL0c7SUFGRDtNSTdCQSxnQ0FEZ0gsRUpnQy9HO0lBRkQ7TUk3QkEsMEJBRGdILEVKZ0MvRztJQUZEO01JN0JBLGdDQURnSCxFSmdDL0c7SUFGRDtNSTdCQSxnQ0FEZ0gsRUpnQy9HO0lBRkQ7TUk3QkEsMkJBRGdILEVKZ0MvRztJQWRIO01JekJFLFlBQW1CLEVKMkJwQjtJQUVEO01JekJFLFlBQW1CLEVKMkJwQjtJQU1DO01JN0JBLCtCQURnSCxFSmdDL0c7SUFGRDtNSTdCQSxnQ0FEZ0gsRUpnQy9HO0lBRkQ7TUk3QkEsMEJBRGdILEVKZ0MvRztJQUZEO01JN0JBLGdDQURnSCxFSmdDL0c7SUFGRDtNSTdCQSxnQ0FEZ0gsRUpnQy9HO0lBRkQ7TUk3QkEsMEJBRGdILEVKZ0MvRztJQUZEO01JN0JBLGdDQURnSCxFSmdDL0c7SUFGRDtNSTdCQSxnQ0FEZ0gsRUpnQy9HO0lBRkQ7TUk3QkEsMEJBRGdILEVKZ0MvRztJQUZEO01JN0JBLGdDQURnSCxFSmdDL0c7SUFGRDtNSTdCQSxnQ0FEZ0gsRUpnQy9HO0lBRkQ7TUk3QkEsMkJBRGdILEVKZ0MvRyxFQUFBOztBQThDSDtFQ25JTSx5QkFBNEI7RUFBNUIsd0JBQTRCLEVEd0kvQjtFVExDO0lTQUo7TUNuSU0sd0JBQTRCO01BQTVCLHVCQUE0QixFRHdJL0IsRUFBQTtFVExDO0lTQUo7TUNuSU0sdUJBQTRCO01BQTVCLHNCQUE0QixFRHdJL0IsRUFBQTtFVEFDO0lTTEo7TUNuSU0sdUJBQTRCO01BQTVCLHNCQUE0QixFRHdJL0IsRUFBQTtFVEFDO0lTTEo7TUNuSU0sdUJBQTRCO01BQTVCLHNCQUE0QixFRHdJL0IsRUFBQTs7QUFJRDtFQzVJSSx5QkFBNEI7RUFBNUIsd0JBQTRCLEVEOEkvQjtFVFhDO0lTU0Y7TUM1SUksd0JBQTRCO01BQTVCLHVCQUE0QixFRDhJL0IsRUFBQTtFVFhDO0lTU0Y7TUM1SUksdUJBQTRCO01BQTVCLHNCQUE0QixFRDhJL0IsRUFBQTtFVE5DO0lTSUY7TUM1SUksdUJBQTRCO01BQTVCLHNCQUE0QixFRDhJL0IsRUFBQTtFVE5DO0lTSUY7TUM1SUksdUJBQTRCO01BQTVCLHNCQUE0QixFRDhJL0IsRUFBQTs7QUFYSDtFQ25JTSx5QkFBNEI7RUFBNUIsd0JBQTRCLEVEbUovQjtFVGhCQztJU0FKO01DbklNLHdCQUE0QjtNQUE1Qix1QkFBNEIsRURtSi9CLEVBQUE7RVRoQkM7SVNBSjtNQ25JTSx1QkFBNEI7TUFBNUIsc0JBQTRCLEVEbUovQixFQUFBO0VUWEM7SVNMSjtNQ25JTSx1QkFBNEI7TUFBNUIsc0JBQTRCLEVEbUovQixFQUFBO0VUWEM7SVNMSjtNQ25JTSx1QkFBNEI7TUFBNUIsc0JBQTRCLEVEbUovQixFQUFBOztBS3RKSDtFRHlERSxZQURvRCxFQ3REckQ7O0FBRkQ7RUR5REUsV0FEb0QsRUN0RHJEOztBQUZEO0VEeURFLGlCQURvRCxFQ3REckQ7O0FBRkQ7RUR5REUsV0FEb0QsRUN0RHJEOztBQUZEO0VEeURFLFdBRG9ELEVDdERyRDs7QUFGRDtFRHlERSxpQkFEb0QsRUN0RHJEOztBQUZEO0VEeURFLGlCQURvRCxFQ3REckQ7O0FBRkQ7RUR5REUsYUFEb0QsRUN0RHJEOztBZG9JRztFY3RJSjtJRHlERSxZQURvRCxFQ3REckQ7RUFGRDtJRHlERSxXQURvRCxFQ3REckQ7RUFGRDtJRHlERSxpQkFEb0QsRUN0RHJEO0VBRkQ7SUR5REUsV0FEb0QsRUN0RHJEO0VBRkQ7SUR5REUsV0FEb0QsRUN0RHJEO0VBRkQ7SUR5REUsaUJBRG9ELEVDdERyRDtFQUZEO0lEeURFLGlCQURvRCxFQ3REckQ7RUFGRDtJRHlERSxhQURvRCxFQ3REckQsRUFBQTs7QWRvSUc7RWN0SUo7SUR5REUsWUFEb0QsRUN0RHJEO0VBRkQ7SUR5REUsV0FEb0QsRUN0RHJEO0VBRkQ7SUR5REUsaUJBRG9ELEVDdERyRDtFQUZEO0lEeURFLFdBRG9ELEVDdERyRDtFQUZEO0lEeURFLFdBRG9ELEVDdERyRDtFQUZEO0lEeURFLGlCQURvRCxFQ3REckQ7RUFGRDtJRHlERSxpQkFEb0QsRUN0RHJEO0VBRkQ7SUR5REUsYUFEb0QsRUN0RHJELEVBQUE7O0FkeUlHO0VjM0lKO0lEeURFLFlBRG9ELEVDdERyRDtFQUZEO0lEeURFLFdBRG9ELEVDdERyRDtFQUZEO0lEeURFLGlCQURvRCxFQ3REckQ7RUFGRDtJRHlERSxXQURvRCxFQ3REckQ7RUFGRDtJRHlERSxXQURvRCxFQ3REckQ7RUFGRDtJRHlERSxpQkFEb0QsRUN0RHJEO0VBRkQ7SUR5REUsaUJBRG9ELEVDdERyRDtFQUZEO0lEeURFLGFBRG9ELEVDdERyRCxFQUFBOztBZHlJRztFYzNJSjtJRHlERSxZQURvRCxFQ3REckQ7RUFGRDtJRHlERSxXQURvRCxFQ3REckQ7RUFGRDtJRHlERSxpQkFEb0QsRUN0RHJEO0VBRkQ7SUR5REUsV0FEb0QsRUN0RHJEO0VBRkQ7SUR5REUsV0FEb0QsRUN0RHJEO0VBRkQ7SUR5REUsaUJBRG9ELEVDdERyRDtFQUZEO0lEeURFLGlCQURvRCxFQ3REckQ7RUFGRDtJRHlERSxhQURvRCxFQ3REckQsRUFBQTs7QUFGRDtFRHlERSw2QkFEZ0gsRUN0RGpIOztBQUZEO0VEeURFLDRCQURnSCxFQ3REakg7O0FBRkQ7RUR5REUsa0NBRGdILEVDdERqSDs7QUFGRDtFRHlERSw0QkFEZ0gsRUN0RGpIOztBQUZEO0VEeURFLDRCQURnSCxFQ3REakg7O0FBRkQ7RUR5REUsa0NBRGdILEVDdERqSDs7QUFGRDtFRHlERSxrQ0FEZ0gsRUN0RGpIOztBQUZEO0VEeURFLDhCQURnSCxFQ3REakg7O0Fkb0lHO0VjdElKO0lEeURFLDZCQURnSCxFQ3REakg7RUFGRDtJRHlERSw0QkFEZ0gsRUN0RGpIO0VBRkQ7SUR5REUsa0NBRGdILEVDdERqSDtFQUZEO0lEeURFLDRCQURnSCxFQ3REakg7RUFGRDtJRHlERSw0QkFEZ0gsRUN0RGpIO0VBRkQ7SUR5REUsa0NBRGdILEVDdERqSDtFQUZEO0lEeURFLGtDQURnSCxFQ3REakg7RUFGRDtJRHlERSw4QkFEZ0gsRUN0RGpIO0VBRkQ7SUR5REUsNEJBRGdILEVDdERqSDtFQUZEO0lEeURFLDJCQURnSCxFQ3REakg7RUFGRDtJRHlERSxpQ0FEZ0gsRUN0RGpIO0VBRkQ7SUR5REUsMkJBRGdILEVDdERqSDtFQUZEO0lEeURFLDJCQURnSCxFQ3REakg7RUFGRDtJRHlERSxpQ0FEZ0gsRUN0RGpIO0VBRkQ7SUR5REUsaUNBRGdILEVDdERqSDtFQUZEO0lEeURFLDZCQURnSCxFQ3REakgsRUFBQTs7QWRvSUc7RWN0SUo7SUR5REUsNkJBRGdILEVDdERqSDtFQUZEO0lEeURFLDRCQURnSCxFQ3REakg7RUFGRDtJRHlERSw0QkFEZ0gsRUN0RGpIO0VBRkQ7SUR5REUsMkJBRGdILEVDdERqSDtFQUZEO0lEeURFLGtDQURnSCxFQ3REakg7RUFGRDtJRHlERSxpQ0FEZ0gsRUN0RGpIO0VBRkQ7SUR5REUsNEJBRGdILEVDdERqSDtFQUZEO0lEeURFLDJCQURnSCxFQ3REakg7RUFGRDtJRHlERSw0QkFEZ0gsRUN0RGpIO0VBRkQ7SUR5REUsMkJBRGdILEVDdERqSDtFQUZEO0lEeURFLGtDQURnSCxFQ3REakg7RUFGRDtJRHlERSxpQ0FEZ0gsRUN0RGpIO0VBRkQ7SUR5REUsa0NBRGdILEVDdERqSDtFQUZEO0lEeURFLGlDQURnSCxFQ3REakg7RUFGRDtJRHlERSw4QkFEZ0gsRUN0RGpIO0VBRkQ7SUR5REUsNkJBRGdILEVDdERqSDtFQUZEO0lEeURFLDJCQURnSCxFQ3REakg7RUFGRDtJRHlERSwwQkFEZ0gsRUN0RGpIO0VBRkQ7SUR5REUsZ0NBRGdILEVDdERqSDtFQUZEO0lEeURFLDBCQURnSCxFQ3REakg7RUFGRDtJRHlERSwwQkFEZ0gsRUN0RGpIO0VBRkQ7SUR5REUsZ0NBRGdILEVDdERqSDtFQUZEO0lEeURFLGdDQURnSCxFQ3REakg7RUFGRDtJRHlERSw0QkFEZ0gsRUN0RGpILEVBQUE7O0FkeUlHO0VjM0lKO0lEeURFLDZCQURnSCxFQ3REakg7RUFGRDtJRHlERSw0QkFEZ0gsRUN0RGpIO0VBRkQ7SUR5REUsMkJBRGdILEVDdERqSDtFQUZEO0lEeURFLDRCQURnSCxFQ3REakg7RUFGRDtJRHlERSwyQkFEZ0gsRUN0RGpIO0VBRkQ7SUR5REUsMEJBRGdILEVDdERqSDtFQUZEO0lEeURFLGtDQURnSCxFQ3REakg7RUFGRDtJRHlERSxpQ0FEZ0gsRUN0RGpIO0VBRkQ7SUR5REUsZ0NBRGdILEVDdERqSDtFQUZEO0lEeURFLDRCQURnSCxFQ3REakg7RUFGRDtJRHlERSwyQkFEZ0gsRUN0RGpIO0VBRkQ7SUR5REUsMEJBRGdILEVDdERqSDtFQUZEO0lEeURFLDRCQURnSCxFQ3REakg7RUFGRDtJRHlERSwyQkFEZ0gsRUN0RGpIO0VBRkQ7SUR5REUsMEJBRGdILEVDdERqSDtFQUZEO0lEeURFLGtDQURnSCxFQ3REakg7RUFGRDtJRHlERSxpQ0FEZ0gsRUN0RGpIO0VBRkQ7SUR5REUsZ0NBRGdILEVDdERqSDtFQUZEO0lEeURFLGtDQURnSCxFQ3REakg7RUFGRDtJRHlERSxpQ0FEZ0gsRUN0RGpIO0VBRkQ7SUR5REUsZ0NBRGdILEVDdERqSDtFQUZEO0lEeURFLDhCQURnSCxFQ3REakg7RUFGRDtJRHlERSw2QkFEZ0gsRUN0RGpIO0VBRkQ7SUR5REUsNEJBRGdILEVDdERqSDtFQUZEO0lEeURFLDJCQURnSCxFQ3REakg7RUFGRDtJRHlERSwwQkFEZ0gsRUN0RGpIO0VBRkQ7SUR5REUsZ0NBRGdILEVDdERqSDtFQUZEO0lEeURFLDBCQURnSCxFQ3REakg7RUFGRDtJRHlERSwwQkFEZ0gsRUN0RGpIO0VBRkQ7SUR5REUsZ0NBRGdILEVDdERqSDtFQUZEO0lEeURFLGdDQURnSCxFQ3REakg7RUFGRDtJRHlERSw0QkFEZ0gsRUN0RGpILEVBQUE7O0FkeUlHO0VjM0lKO0lEeURFLDZCQURnSCxFQ3REakg7RUFGRDtJRHlERSw0QkFEZ0gsRUN0RGpIO0VBRkQ7SUR5REUsMkJBRGdILEVDdERqSDtFQUZEO0lEeURFLDJCQURnSCxFQ3REakg7RUFGRDtJRHlERSw0QkFEZ0gsRUN0RGpIO0VBRkQ7SUR5REUsMkJBRGdILEVDdERqSDtFQUZEO0lEeURFLDBCQURnSCxFQ3REakg7RUFGRDtJRHlERSwwQkFEZ0gsRUN0RGpIO0VBRkQ7SUR5REUsa0NBRGdILEVDdERqSDtFQUZEO0lEeURFLGlDQURnSCxFQ3REakg7RUFGRDtJRHlERSxnQ0FEZ0gsRUN0RGpIO0VBRkQ7SUR5REUsZ0NBRGdILEVDdERqSDtFQUZEO0lEeURFLDRCQURnSCxFQ3REakg7RUFGRDtJRHlERSwyQkFEZ0gsRUN0RGpIO0VBRkQ7SUR5REUsMEJBRGdILEVDdERqSDtFQUZEO0lEeURFLDBCQURnSCxFQ3REakg7RUFGRDtJRHlERSw0QkFEZ0gsRUN0RGpIO0VBRkQ7SUR5REUsMkJBRGdILEVDdERqSDtFQUZEO0lEeURFLDBCQURnSCxFQ3REakg7RUFGRDtJRHlERSwwQkFEZ0gsRUN0RGpIO0VBRkQ7SUR5REUsa0NBRGdILEVDdERqSDtFQUZEO0lEeURFLGlDQURnSCxFQ3REakg7RUFGRDtJRHlERSxnQ0FEZ0gsRUN0RGpIO0VBRkQ7SUR5REUsZ0NBRGdILEVDdERqSDtFQUZEO0lEeURFLGtDQURnSCxFQ3REakg7RUFGRDtJRHlERSxpQ0FEZ0gsRUN0RGpIO0VBRkQ7SUR5REUsZ0NBRGdILEVDdERqSDtFQUZEO0lEeURFLGdDQURnSCxFQ3REakg7RUFGRDtJRHlERSw4QkFEZ0gsRUN0RGpIO0VBRkQ7SUR5REUsNkJBRGdILEVDdERqSDtFQUZEO0lEeURFLDRCQURnSCxFQ3REakg7RUFGRDtJRHlERSw0QkFEZ0gsRUN0RGpIO0VBRkQ7SUR5REUsMkJBRGdILEVDdERqSDtFQUZEO0lEeURFLDBCQURnSCxFQ3REakg7RUFGRDtJRHlERSxnQ0FEZ0gsRUN0RGpIO0VBRkQ7SUR5REUsMEJBRGdILEVDdERqSDtFQUZEO0lEeURFLDBCQURnSCxFQ3REakg7RUFGRDtJRHlERSxnQ0FEZ0gsRUN0RGpIO0VBRkQ7SUR5REUsZ0NBRGdILEVDdERqSDtFQUZEO0lEeURFLDRCQURnSCxFQ3REakgsRUFBQTs7QUxnTUc7RU12TUUsZ0JBQTBCO0VBQTFCLGVBQTBCLEVOeU0zQjtFTXRNRDtJQUVJLGdCQUEwQjtJQUExQixlQUEwQixFQUU3QjtFQW9CSztJRm1DUixnQkFEb0QsRUVoQzNDO0VBRkQ7SUZtQ1IsaUJBRG9ELEVFaEMzQztFQUZEO0lGbUNSLFdBRG9ELEVFaEMzQztFQUZEO0lGbUNSLGlCQURvRCxFRWhDM0M7RUFGRDtJRm1DUixpQkFEb0QsRUVoQzNDO0VBRkQ7SUZtQ1IsV0FEb0QsRUVoQzNDO0VBRkQ7SUZtQ1IsaUJBRG9ELEVFaEMzQztFQUZEO0lGbUNSLGlCQURvRCxFRWhDM0M7RUFGRDtJRm1DUixXQURvRCxFRWhDM0M7RUFGRDtJRm1DUixpQkFEb0QsRUVoQzNDO0VBRkQ7SUZtQ1IsaUJBRG9ELEVFaEMzQztFQUZEO0lGbUNSLFlBRG9ELEVFaEMzQztFZjhHUDtJZWhITTtNRm1DUixnQkFEb0QsRUVoQzNDO0lBRkQ7TUZtQ1IsaUJBRG9ELEVFaEMzQztJQUZEO01GbUNSLFdBRG9ELEVFaEMzQztJQUZEO01GbUNSLGlCQURvRCxFRWhDM0M7SUFGRDtNRm1DUixpQkFEb0QsRUVoQzNDO0lBRkQ7TUZtQ1IsV0FEb0QsRUVoQzNDO0lBRkQ7TUZtQ1IsaUJBRG9ELEVFaEMzQztJQUZEO01GbUNSLGlCQURvRCxFRWhDM0M7SUFGRDtNRm1DUixXQURvRCxFRWhDM0M7SUFGRDtNRm1DUixpQkFEb0QsRUVoQzNDO0lBRkQ7TUZtQ1IsaUJBRG9ELEVFaEMzQztJQUZEO01GbUNSLFlBRG9ELEVFaEMzQyxFQUFBO0VmOEdQO0llaEhNO01GbUNSLGdCQURvRCxFRWhDM0M7SUFGRDtNRm1DUixpQkFEb0QsRUVoQzNDO0lBRkQ7TUZtQ1IsV0FEb0QsRUVoQzNDO0lBRkQ7TUZtQ1IsaUJBRG9ELEVFaEMzQztJQUZEO01GbUNSLGlCQURvRCxFRWhDM0M7SUFGRDtNRm1DUixXQURvRCxFRWhDM0M7SUFGRDtNRm1DUixpQkFEb0QsRUVoQzNDO0lBRkQ7TUZtQ1IsaUJBRG9ELEVFaEMzQztJQUZEO01GbUNSLFdBRG9ELEVFaEMzQztJQUZEO01GbUNSLGlCQURvRCxFRWhDM0M7SUFGRDtNRm1DUixpQkFEb0QsRUVoQzNDO0lBRkQ7TUZtQ1IsWUFEb0QsRUVoQzNDLEVBQUE7RWZtSFA7SWVySE07TUZtQ1IsZ0JBRG9ELEVFaEMzQztJQUZEO01GbUNSLGlCQURvRCxFRWhDM0M7SUFGRDtNRm1DUixXQURvRCxFRWhDM0M7SUFGRDtNRm1DUixpQkFEb0QsRUVoQzNDO0lBRkQ7TUZtQ1IsaUJBRG9ELEVFaEMzQztJQUZEO01GbUNSLFdBRG9ELEVFaEMzQztJQUZEO01GbUNSLGlCQURvRCxFRWhDM0M7SUFGRDtNRm1DUixpQkFEb0QsRUVoQzNDO0lBRkQ7TUZtQ1IsV0FEb0QsRUVoQzNDO0lBRkQ7TUZtQ1IsaUJBRG9ELEVFaEMzQztJQUZEO01GbUNSLGlCQURvRCxFRWhDM0M7SUFGRDtNRm1DUixZQURvRCxFRWhDM0MsRUFBQTtFZm1IUDtJZXJITTtNRm1DUixnQkFEb0QsRUVoQzNDO0lBRkQ7TUZtQ1IsaUJBRG9ELEVFaEMzQztJQUZEO01GbUNSLFdBRG9ELEVFaEMzQztJQUZEO01GbUNSLGlCQURvRCxFRWhDM0M7SUFGRDtNRm1DUixpQkFEb0QsRUVoQzNDO0lBRkQ7TUZtQ1IsV0FEb0QsRUVoQzNDO0lBRkQ7TUZtQ1IsaUJBRG9ELEVFaEMzQztJQUZEO01GbUNSLGlCQURvRCxFRWhDM0M7SUFGRDtNRm1DUixXQURvRCxFRWhDM0M7SUFGRDtNRm1DUixpQkFEb0QsRUVoQzNDO0lBRkQ7TUZtQ1IsaUJBRG9ELEVFaEMzQztJQUZEO01GbUNSLFlBRG9ELEVFaEMzQyxFQUFBOztBTmdMUDtFTXRLRSxnQkFBMEI7RUFBMUIsZUFBMEIsRU53SzNCO0VNcktEO0lBRUksaUJBQTRCO0lBQTVCLGdCQUE0QixFQUUvQjs7QWY2RkQ7RVM0REE7SU12TUUsZ0JBQTBCO0lBQTFCLGVBQTBCLEVOeU0zQjtJTXRNRDtNQUVJLGdCQUEwQjtNQUExQixlQUEwQixFQUU3QixFQUFBOztBZm9JRDtFZXpITTtJRjRDUixnQkFEb0QsRUV6QzNDO0VBRkQ7SUY0Q1IsaUJBRG9ELEVFekMzQztFQUZEO0lGNENSLFdBRG9ELEVFekMzQztFQUZEO0lGNENSLGlCQURvRCxFRXpDM0M7RUFGRDtJRjRDUixpQkFEb0QsRUV6QzNDO0VBRkQ7SUY0Q1IsV0FEb0QsRUV6QzNDO0VBRkQ7SUY0Q1IsaUJBRG9ELEVFekMzQztFQUZEO0lGNENSLGlCQURvRCxFRXpDM0M7RUFGRDtJRjRDUixXQURvRCxFRXpDM0M7RUFGRDtJRjRDUixpQkFEb0QsRUV6QzNDO0VBRkQ7SUY0Q1IsaUJBRG9ELEVFekMzQztFQUZEO0lGNENSLFlBRG9ELEVFekMzQyxFQUFBOztBZnVIUDtFZWhITTtJRm1DUixnQkFEb0QsRUVoQzNDO0VBRkQ7SUZtQ1IsaUJBRG9ELEVFaEMzQztFQUZEO0lGbUNSLFdBRG9ELEVFaEMzQztFQUZEO0lGbUNSLGlCQURvRCxFRWhDM0M7RUFGRDtJRm1DUixpQkFEb0QsRUVoQzNDO0VBRkQ7SUZtQ1IsV0FEb0QsRUVoQzNDO0VBRkQ7SUZtQ1IsaUJBRG9ELEVFaEMzQztFQUZEO0lGbUNSLGlCQURvRCxFRWhDM0M7RUFGRDtJRm1DUixXQURvRCxFRWhDM0M7RUFGRDtJRm1DUixpQkFEb0QsRUVoQzNDO0VBRkQ7SUZtQ1IsaUJBRG9ELEVFaEMzQztFQUZEO0lGbUNSLFlBRG9ELEVFaEMzQyxFQUFBOztBZjhHUDtFZWhITTtJRm1DUixnQkFEb0QsRUVoQzNDO0VBRkQ7SUZtQ1IsaUJBRG9ELEVFaEMzQztFQUZEO0lGbUNSLFdBRG9ELEVFaEMzQztFQUZEO0lGbUNSLGlCQURvRCxFRWhDM0M7RUFGRDtJRm1DUixpQkFEb0QsRUVoQzNDO0VBRkQ7SUZtQ1IsV0FEb0QsRUVoQzNDO0VBRkQ7SUZtQ1IsaUJBRG9ELEVFaEMzQztFQUZEO0lGbUNSLGlCQURvRCxFRWhDM0M7RUFGRDtJRm1DUixXQURvRCxFRWhDM0M7RUFGRDtJRm1DUixpQkFEb0QsRUVoQzNDO0VBRkQ7SUZtQ1IsaUJBRG9ELEVFaEMzQztFQUZEO0lGbUNSLFlBRG9ELEVFaEMzQyxFQUFBOztBZm1IUDtFZXJITTtJRm1DUixnQkFEb0QsRUVoQzNDO0VBRkQ7SUZtQ1IsaUJBRG9ELEVFaEMzQztFQUZEO0lGbUNSLFdBRG9ELEVFaEMzQztFQUZEO0lGbUNSLGlCQURvRCxFRWhDM0M7RUFGRDtJRm1DUixpQkFEb0QsRUVoQzNDO0VBRkQ7SUZtQ1IsV0FEb0QsRUVoQzNDO0VBRkQ7SUZtQ1IsaUJBRG9ELEVFaEMzQztFQUZEO0lGbUNSLGlCQURvRCxFRWhDM0M7RUFGRDtJRm1DUixXQURvRCxFRWhDM0M7RUFGRDtJRm1DUixpQkFEb0QsRUVoQzNDO0VBRkQ7SUZtQ1IsaUJBRG9ELEVFaEMzQztFQUZEO0lGbUNSLFlBRG9ELEVFaEMzQyxFQUFBOztBZm1IUDtFZXJITTtJRm1DUixnQkFEb0QsRUVoQzNDO0VBRkQ7SUZtQ1IsaUJBRG9ELEVFaEMzQztFQUZEO0lGbUNSLFdBRG9ELEVFaEMzQztFQUZEO0lGbUNSLGlCQURvRCxFRWhDM0M7RUFGRDtJRm1DUixpQkFEb0QsRUVoQzNDO0VBRkQ7SUZtQ1IsV0FEb0QsRUVoQzNDO0VBRkQ7SUZtQ1IsaUJBRG9ELEVFaEMzQztFQUZEO0lGbUNSLGlCQURvRCxFRWhDM0M7RUFGRDtJRm1DUixXQURvRCxFRWhDM0M7RUFGRDtJRm1DUixpQkFEb0QsRUVoQzNDO0VBRkQ7SUZtQ1IsaUJBRG9ELEVFaEMzQztFQUZEO0lGbUNSLFlBRG9ELEVFaEMzQyxFQUFBOztBZjhHUDtFU2tFQTtJTXRLRSxnQkFBMEI7SUFBMUIsZUFBMEIsRU53SzNCO0lNcktEO01BRUksaUJBQTRCO01BQTVCLGdCQUE0QixFQUUvQixFQUFBOztBZjZGRDtFUzREQTtJTXZNRSxnQkFBMEI7SUFBMUIsZUFBMEIsRU55TTNCO0lNdE1EO01BRUksZ0JBQTBCO01BQTFCLGVBQTBCLEVBRTdCLEVBQUE7O0Fmb0lEO0VlekhNO0lGNENSLGdCQURvRCxFRXpDM0M7RUFGRDtJRjRDUixpQkFEb0QsRUV6QzNDO0VBRkQ7SUY0Q1IsV0FEb0QsRUV6QzNDO0VBRkQ7SUY0Q1IsaUJBRG9ELEVFekMzQztFQUZEO0lGNENSLGlCQURvRCxFRXpDM0M7RUFGRDtJRjRDUixXQURvRCxFRXpDM0M7RUFGRDtJRjRDUixpQkFEb0QsRUV6QzNDO0VBRkQ7SUY0Q1IsaUJBRG9ELEVFekMzQztFQUZEO0lGNENSLFdBRG9ELEVFekMzQztFQUZEO0lGNENSLGlCQURvRCxFRXpDM0M7RUFGRDtJRjRDUixpQkFEb0QsRUV6QzNDO0VBRkQ7SUY0Q1IsWUFEb0QsRUV6QzNDLEVBQUE7O0FmdUhQO0VlekhNO0lGNENSLGdCQURvRCxFRXpDM0M7RUFGRDtJRjRDUixpQkFEb0QsRUV6QzNDO0VBRkQ7SUY0Q1IsV0FEb0QsRUV6QzNDO0VBRkQ7SUY0Q1IsaUJBRG9ELEVFekMzQztFQUZEO0lGNENSLGlCQURvRCxFRXpDM0M7RUFGRDtJRjRDUixXQURvRCxFRXpDM0M7RUFGRDtJRjRDUixpQkFEb0QsRUV6QzNDO0VBRkQ7SUY0Q1IsaUJBRG9ELEVFekMzQztFQUZEO0lGNENSLFdBRG9ELEVFekMzQztFQUZEO0lGNENSLGlCQURvRCxFRXpDM0M7RUFGRDtJRjRDUixpQkFEb0QsRUV6QzNDO0VBRkQ7SUY0Q1IsWUFEb0QsRUV6QzNDLEVBQUE7O0FmdUhQO0VlaEhNO0lGbUNSLGdCQURvRCxFRWhDM0M7RUFGRDtJRm1DUixpQkFEb0QsRUVoQzNDO0VBRkQ7SUZtQ1IsV0FEb0QsRUVoQzNDO0VBRkQ7SUZtQ1IsaUJBRG9ELEVFaEMzQztFQUZEO0lGbUNSLGlCQURvRCxFRWhDM0M7RUFGRDtJRm1DUixXQURvRCxFRWhDM0M7RUFGRDtJRm1DUixpQkFEb0QsRUVoQzNDO0VBRkQ7SUZtQ1IsaUJBRG9ELEVFaEMzQztFQUZEO0lGbUNSLFdBRG9ELEVFaEMzQztFQUZEO0lGbUNSLGlCQURvRCxFRWhDM0M7RUFGRDtJRm1DUixpQkFEb0QsRUVoQzNDO0VBRkQ7SUZtQ1IsWUFEb0QsRUVoQzNDLEVBQUE7O0FmbUhQO0VlckhNO0lGbUNSLGdCQURvRCxFRWhDM0M7RUFGRDtJRm1DUixpQkFEb0QsRUVoQzNDO0VBRkQ7SUZtQ1IsV0FEb0QsRUVoQzNDO0VBRkQ7SUZtQ1IsaUJBRG9ELEVFaEMzQztFQUZEO0lGbUNSLGlCQURvRCxFRWhDM0M7RUFGRDtJRm1DUixXQURvRCxFRWhDM0M7RUFGRDtJRm1DUixpQkFEb0QsRUVoQzNDO0VBRkQ7SUZtQ1IsaUJBRG9ELEVFaEMzQztFQUZEO0lGbUNSLFdBRG9ELEVFaEMzQztFQUZEO0lGbUNSLGlCQURvRCxFRWhDM0M7RUFGRDtJRm1DUixpQkFEb0QsRUVoQzNDO0VBRkQ7SUZtQ1IsWUFEb0QsRUVoQzNDLEVBQUE7O0FmbUhQO0VlckhNO0lGbUNSLGdCQURvRCxFRWhDM0M7RUFGRDtJRm1DUixpQkFEb0QsRUVoQzNDO0VBRkQ7SUZtQ1IsV0FEb0QsRUVoQzNDO0VBRkQ7SUZtQ1IsaUJBRG9ELEVFaEMzQztFQUZEO0lGbUNSLGlCQURvRCxFRWhDM0M7RUFGRDtJRm1DUixXQURvRCxFRWhDM0M7RUFGRDtJRm1DUixpQkFEb0QsRUVoQzNDO0VBRkQ7SUZtQ1IsaUJBRG9ELEVFaEMzQztFQUZEO0lGbUNSLFdBRG9ELEVFaEMzQztFQUZEO0lGbUNSLGlCQURvRCxFRWhDM0M7RUFGRDtJRm1DUixpQkFEb0QsRUVoQzNDO0VBRkQ7SUZtQ1IsWUFEb0QsRUVoQzNDLEVBQUE7O0FmOEdQO0VTa0VBO0lNdEtFLGdCQUEwQjtJQUExQixlQUEwQixFTndLM0I7SU1yS0Q7TUFFSSxpQkFBNEI7TUFBNUIsZ0JBQTRCLEVBRS9CLEVBQUE7O0Fma0dEO0VTdURBO0lNdk1FLGdCQUEwQjtJQUExQixlQUEwQixFTnlNM0I7SU10TUQ7TUFFSSxnQkFBMEI7TUFBMUIsZUFBMEIsRUFFN0IsRUFBQTs7QWZ5SUQ7RWU5SE07SUY0Q1IsZ0JBRG9ELEVFekMzQztFQUZEO0lGNENSLGlCQURvRCxFRXpDM0M7RUFGRDtJRjRDUixXQURvRCxFRXpDM0M7RUFGRDtJRjRDUixpQkFEb0QsRUV6QzNDO0VBRkQ7SUY0Q1IsaUJBRG9ELEVFekMzQztFQUZEO0lGNENSLFdBRG9ELEVFekMzQztFQUZEO0lGNENSLGlCQURvRCxFRXpDM0M7RUFGRDtJRjRDUixpQkFEb0QsRUV6QzNDO0VBRkQ7SUY0Q1IsV0FEb0QsRUV6QzNDO0VBRkQ7SUY0Q1IsaUJBRG9ELEVFekMzQztFQUZEO0lGNENSLGlCQURvRCxFRXpDM0M7RUFGRDtJRjRDUixZQURvRCxFRXpDM0MsRUFBQTs7QWY0SFA7RWU5SE07SUY0Q1IsZ0JBRG9ELEVFekMzQztFQUZEO0lGNENSLGlCQURvRCxFRXpDM0M7RUFGRDtJRjRDUixXQURvRCxFRXpDM0M7RUFGRDtJRjRDUixpQkFEb0QsRUV6QzNDO0VBRkQ7SUY0Q1IsaUJBRG9ELEVFekMzQztFQUZEO0lGNENSLFdBRG9ELEVFekMzQztFQUZEO0lGNENSLGlCQURvRCxFRXpDM0M7RUFGRDtJRjRDUixpQkFEb0QsRUV6QzNDO0VBRkQ7SUY0Q1IsV0FEb0QsRUV6QzNDO0VBRkQ7SUY0Q1IsaUJBRG9ELEVFekMzQztFQUZEO0lGNENSLGlCQURvRCxFRXpDM0M7RUFGRDtJRjRDUixZQURvRCxFRXpDM0MsRUFBQTs7QWY0SFA7RWU5SE07SUY0Q1IsZ0JBRG9ELEVFekMzQztFQUZEO0lGNENSLGlCQURvRCxFRXpDM0M7RUFGRDtJRjRDUixXQURvRCxFRXpDM0M7RUFGRDtJRjRDUixpQkFEb0QsRUV6QzNDO0VBRkQ7SUY0Q1IsaUJBRG9ELEVFekMzQztFQUZEO0lGNENSLFdBRG9ELEVFekMzQztFQUZEO0lGNENSLGlCQURvRCxFRXpDM0M7RUFGRDtJRjRDUixpQkFEb0QsRUV6QzNDO0VBRkQ7SUY0Q1IsV0FEb0QsRUV6QzNDO0VBRkQ7SUY0Q1IsaUJBRG9ELEVFekMzQztFQUZEO0lGNENSLGlCQURvRCxFRXpDM0M7RUFGRDtJRjRDUixZQURvRCxFRXpDM0MsRUFBQTs7QWY0SFA7RWVySE07SUZtQ1IsZ0JBRG9ELEVFaEMzQztFQUZEO0lGbUNSLGlCQURvRCxFRWhDM0M7RUFGRDtJRm1DUixXQURvRCxFRWhDM0M7RUFGRDtJRm1DUixpQkFEb0QsRUVoQzNDO0VBRkQ7SUZtQ1IsaUJBRG9ELEVFaEMzQztFQUZEO0lGbUNSLFdBRG9ELEVFaEMzQztFQUZEO0lGbUNSLGlCQURvRCxFRWhDM0M7RUFGRDtJRm1DUixpQkFEb0QsRUVoQzNDO0VBRkQ7SUZtQ1IsV0FEb0QsRUVoQzNDO0VBRkQ7SUZtQ1IsaUJBRG9ELEVFaEMzQztFQUZEO0lGbUNSLGlCQURvRCxFRWhDM0M7RUFGRDtJRm1DUixZQURvRCxFRWhDM0MsRUFBQTs7QWZtSFA7RWVySE07SUZtQ1IsZ0JBRG9ELEVFaEMzQztFQUZEO0lGbUNSLGlCQURvRCxFRWhDM0M7RUFGRDtJRm1DUixXQURvRCxFRWhDM0M7RUFGRDtJRm1DUixpQkFEb0QsRUVoQzNDO0VBRkQ7SUZtQ1IsaUJBRG9ELEVFaEMzQztFQUZEO0lGbUNSLFdBRG9ELEVFaEMzQztFQUZEO0lGbUNSLGlCQURvRCxFRWhDM0M7RUFGRDtJRm1DUixpQkFEb0QsRUVoQzNDO0VBRkQ7SUZtQ1IsV0FEb0QsRUVoQzNDO0VBRkQ7SUZtQ1IsaUJBRG9ELEVFaEMzQztFQUZEO0lGbUNSLGlCQURvRCxFRWhDM0M7RUFGRDtJRm1DUixZQURvRCxFRWhDM0MsRUFBQTs7QWZtSFA7RVM2REE7SU10S0UsZ0JBQTBCO0lBQTFCLGVBQTBCLEVOd0szQjtJTXJLRDtNQUVJLGlCQUE0QjtNQUE1QixnQkFBNEIsRUFFL0IsRUFBQTs7QWZrR0Q7RVN1REE7SU12TUUsZ0JBQTBCO0lBQTFCLGVBQTBCLEVOeU0zQjtJTXRNRDtNQUVJLGdCQUEwQjtNQUExQixlQUEwQixFQUU3QixFQUFBOztBZnlJRDtFZTlITTtJRjRDUixnQkFEb0QsRUV6QzNDO0VBRkQ7SUY0Q1IsaUJBRG9ELEVFekMzQztFQUZEO0lGNENSLFdBRG9ELEVFekMzQztFQUZEO0lGNENSLGlCQURvRCxFRXpDM0M7RUFGRDtJRjRDUixpQkFEb0QsRUV6QzNDO0VBRkQ7SUY0Q1IsV0FEb0QsRUV6QzNDO0VBRkQ7SUY0Q1IsaUJBRG9ELEVFekMzQztFQUZEO0lGNENSLGlCQURvRCxFRXpDM0M7RUFGRDtJRjRDUixXQURvRCxFRXpDM0M7RUFGRDtJRjRDUixpQkFEb0QsRUV6QzNDO0VBRkQ7SUY0Q1IsaUJBRG9ELEVFekMzQztFQUZEO0lGNENSLFlBRG9ELEVFekMzQyxFQUFBOztBZjRIUDtFZTlITTtJRjRDUixnQkFEb0QsRUV6QzNDO0VBRkQ7SUY0Q1IsaUJBRG9ELEVFekMzQztFQUZEO0lGNENSLFdBRG9ELEVFekMzQztFQUZEO0lGNENSLGlCQURvRCxFRXpDM0M7RUFGRDtJRjRDUixpQkFEb0QsRUV6QzNDO0VBRkQ7SUY0Q1IsV0FEb0QsRUV6QzNDO0VBRkQ7SUY0Q1IsaUJBRG9ELEVFekMzQztFQUZEO0lGNENSLGlCQURvRCxFRXpDM0M7RUFGRDtJRjRDUixXQURvRCxFRXpDM0M7RUFGRDtJRjRDUixpQkFEb0QsRUV6QzNDO0VBRkQ7SUY0Q1IsaUJBRG9ELEVFekMzQztFQUZEO0lGNENSLFlBRG9ELEVFekMzQyxFQUFBOztBZjRIUDtFZTlITTtJRjRDUixnQkFEb0QsRUV6QzNDO0VBRkQ7SUY0Q1IsaUJBRG9ELEVFekMzQztFQUZEO0lGNENSLFdBRG9ELEVFekMzQztFQUZEO0lGNENSLGlCQURvRCxFRXpDM0M7RUFGRDtJRjRDUixpQkFEb0QsRUV6QzNDO0VBRkQ7SUY0Q1IsV0FEb0QsRUV6QzNDO0VBRkQ7SUY0Q1IsaUJBRG9ELEVFekMzQztFQUZEO0lGNENSLGlCQURvRCxFRXpDM0M7RUFGRDtJRjRDUixXQURvRCxFRXpDM0M7RUFGRDtJRjRDUixpQkFEb0QsRUV6QzNDO0VBRkQ7SUY0Q1IsaUJBRG9ELEVFekMzQztFQUZEO0lGNENSLFlBRG9ELEVFekMzQyxFQUFBOztBZjRIUDtFZTlITTtJRjRDUixnQkFEb0QsRUV6QzNDO0VBRkQ7SUY0Q1IsaUJBRG9ELEVFekMzQztFQUZEO0lGNENSLFdBRG9ELEVFekMzQztFQUZEO0lGNENSLGlCQURvRCxFRXpDM0M7RUFGRDtJRjRDUixpQkFEb0QsRUV6QzNDO0VBRkQ7SUY0Q1IsV0FEb0QsRUV6QzNDO0VBRkQ7SUY0Q1IsaUJBRG9ELEVFekMzQztFQUZEO0lGNENSLGlCQURvRCxFRXpDM0M7RUFGRDtJRjRDUixXQURvRCxFRXpDM0M7RUFGRDtJRjRDUixpQkFEb0QsRUV6QzNDO0VBRkQ7SUY0Q1IsaUJBRG9ELEVFekMzQztFQUZEO0lGNENSLFlBRG9ELEVFekMzQyxFQUFBOztBZjRIUDtFZXJITTtJRm1DUixnQkFEb0QsRUVoQzNDO0VBRkQ7SUZtQ1IsaUJBRG9ELEVFaEMzQztFQUZEO0lGbUNSLFdBRG9ELEVFaEMzQztFQUZEO0lGbUNSLGlCQURvRCxFRWhDM0M7RUFGRDtJRm1DUixpQkFEb0QsRUVoQzNDO0VBRkQ7SUZtQ1IsV0FEb0QsRUVoQzNDO0VBRkQ7SUZtQ1IsaUJBRG9ELEVFaEMzQztFQUZEO0lGbUNSLGlCQURvRCxFRWhDM0M7RUFGRDtJRm1DUixXQURvRCxFRWhDM0M7RUFGRDtJRm1DUixpQkFEb0QsRUVoQzNDO0VBRkQ7SUZtQ1IsaUJBRG9ELEVFaEMzQztFQUZEO0lGbUNSLFlBRG9ELEVFaEMzQyxFQUFBOztBZm1IUDtFUzZEQTtJTXRLRSxnQkFBMEI7SUFBMUIsZUFBMEIsRU53SzNCO0lNcktEO01BRUksaUJBQTRCO01BQTVCLGdCQUE0QixFQUUvQixFQUFBOztBTjZLRDtFTzFORixnQkFBNkIsRVA0TjFCOztBQUVEO0VPOU5GLGtDQUE2QixFUGdPMUI7O0FBTkQ7RU8xTkYsc0JBQTZCLEVQNE4xQjs7QUFFRDtFTzlORix3Q0FBNkIsRVBnTzFCOztBQU5EO0VPMU5GLHVCQUE2QixFUDROMUI7O0FBRUQ7RU85TkYseUNBQTZCLEVQZ08xQjs7QUFORDtFTzFORixpQkFBNkIsRVA0TjFCOztBQUVEO0VPOU5GLG1DQUE2QixFUGdPMUI7O0FBTkQ7RU8xTkYsdUJBQTZCLEVQNE4xQjs7QUFFRDtFTzlORix5Q0FBNkIsRVBnTzFCOztBQU5EO0VPMU5GLHVCQUE2QixFUDROMUI7O0FBRUQ7RU85TkYseUNBQTZCLEVQZ08xQjs7QUFORDtFTzFORixpQkFBNkIsRVA0TjFCOztBQUVEO0VPOU5GLG1DQUE2QixFUGdPMUI7O0FBTkQ7RU8xTkYsdUJBQTZCLEVQNE4xQjs7QUFFRDtFTzlORix5Q0FBNkIsRVBnTzFCOztBQU5EO0VPMU5GLHVCQUE2QixFUDROMUI7O0FBRUQ7RU85TkYseUNBQTZCLEVQZ08xQjs7QUFORDtFTzFORixpQkFBNkIsRVA0TjFCOztBQUVEO0VPOU5GLG1DQUE2QixFUGdPMUI7O0FBTkQ7RU8xTkYsdUJBQTZCLEVQNE4xQjs7QUFFRDtFTzlORix5Q0FBNkIsRVBnTzFCOztBQU5EO0VPMU5GLHVCQUE2QixFUDROMUI7O0FBRUQ7RU85TkYseUNBQTZCLEVQZ08xQjs7QVR0RkQ7RVNnRkE7SU8xTkYsZ0JBQTZCLEVQNE4xQjtFQUVEO0lPOU5GLGlDQUE2QixFUGdPMUI7RUFORDtJTzFORixzQkFBNkIsRVA0TjFCO0VBRUQ7SU85TkYsdUNBQTZCLEVQZ08xQjtFQU5EO0lPMU5GLHVCQUE2QixFUDROMUI7RUFFRDtJTzlORix3Q0FBNkIsRVBnTzFCO0VBTkQ7SU8xTkYsaUJBQTZCLEVQNE4xQjtFQUVEO0lPOU5GLGtDQUE2QixFUGdPMUI7RUFORDtJTzFORix1QkFBNkIsRVA0TjFCO0VBRUQ7SU85TkYsd0NBQTZCLEVQZ08xQjtFQU5EO0lPMU5GLHVCQUE2QixFUDROMUI7RUFFRDtJTzlORix3Q0FBNkIsRVBnTzFCO0VBTkQ7SU8xTkYsaUJBQTZCLEVQNE4xQjtFQUVEO0lPOU5GLGtDQUE2QixFUGdPMUI7RUFORDtJTzFORix1QkFBNkIsRVA0TjFCO0VBRUQ7SU85TkYsd0NBQTZCLEVQZ08xQjtFQU5EO0lPMU5GLHVCQUE2QixFUDROMUI7RUFFRDtJTzlORix3Q0FBNkIsRVBnTzFCO0VBTkQ7SU8xTkYsaUJBQTZCLEVQNE4xQjtFQUVEO0lPOU5GLGtDQUE2QixFUGdPMUI7RUFORDtJTzFORix1QkFBNkIsRVA0TjFCO0VBRUQ7SU85TkYsd0NBQTZCLEVQZ08xQjtFQU5EO0lPMU5GLHVCQUE2QixFUDROMUI7RUFFRDtJTzlORix3Q0FBNkIsRVBnTzFCLEVBQUE7O0FUdEZEO0VTZ0ZBO0lPMU5GLGdCQUE2QixFUDROMUI7RUFFRDtJTzlORixnQ0FBNkIsRVBnTzFCO0VBTkQ7SU8xTkYsc0JBQTZCLEVQNE4xQjtFQUVEO0lPOU5GLHNDQUE2QixFUGdPMUI7RUFORDtJTzFORix1QkFBNkIsRVA0TjFCO0VBRUQ7SU85TkYsdUNBQTZCLEVQZ08xQjtFQU5EO0lPMU5GLGlCQUE2QixFUDROMUI7RUFFRDtJTzlORixpQ0FBNkIsRVBnTzFCO0VBTkQ7SU8xTkYsdUJBQTZCLEVQNE4xQjtFQUVEO0lPOU5GLHVDQUE2QixFUGdPMUI7RUFORDtJTzFORix1QkFBNkIsRVA0TjFCO0VBRUQ7SU85TkYsdUNBQTZCLEVQZ08xQjtFQU5EO0lPMU5GLGlCQUE2QixFUDROMUI7RUFFRDtJTzlORixpQ0FBNkIsRVBnTzFCO0VBTkQ7SU8xTkYsdUJBQTZCLEVQNE4xQjtFQUVEO0lPOU5GLHVDQUE2QixFUGdPMUI7RUFORDtJTzFORix1QkFBNkIsRVA0TjFCO0VBRUQ7SU85TkYsdUNBQTZCLEVQZ08xQjtFQU5EO0lPMU5GLGlCQUE2QixFUDROMUI7RUFFRDtJTzlORixpQ0FBNkIsRVBnTzFCO0VBTkQ7SU8xTkYsdUJBQTZCLEVQNE4xQjtFQUVEO0lPOU5GLHVDQUE2QixFUGdPMUI7RUFORDtJTzFORix1QkFBNkIsRVA0TjFCO0VBRUQ7SU85TkYsdUNBQTZCLEVQZ08xQixFQUFBOztBVGpGRDtFUzJFQTtJTzFORixnQkFBNkIsRVA0TjFCO0VBRUQ7SU85TkYsZ0NBQTZCLEVQZ08xQjtFQU5EO0lPMU5GLHNCQUE2QixFUDROMUI7RUFFRDtJTzlORixzQ0FBNkIsRVBnTzFCO0VBTkQ7SU8xTkYsdUJBQTZCLEVQNE4xQjtFQUVEO0lPOU5GLHVDQUE2QixFUGdPMUI7RUFORDtJTzFORixpQkFBNkIsRVA0TjFCO0VBRUQ7SU85TkYsaUNBQTZCLEVQZ08xQjtFQU5EO0lPMU5GLHVCQUE2QixFUDROMUI7RUFFRDtJTzlORix1Q0FBNkIsRVBnTzFCO0VBTkQ7SU8xTkYsdUJBQTZCLEVQNE4xQjtFQUVEO0lPOU5GLHVDQUE2QixFUGdPMUI7RUFORDtJTzFORixpQkFBNkIsRVA0TjFCO0VBRUQ7SU85TkYsaUNBQTZCLEVQZ08xQjtFQU5EO0lPMU5GLHVCQUE2QixFUDROMUI7RUFFRDtJTzlORix1Q0FBNkIsRVBnTzFCO0VBTkQ7SU8xTkYsdUJBQTZCLEVQNE4xQjtFQUVEO0lPOU5GLHVDQUE2QixFUGdPMUI7RUFORDtJTzFORixpQkFBNkIsRVA0TjFCO0VBRUQ7SU85TkYsaUNBQTZCLEVQZ08xQjtFQU5EO0lPMU5GLHVCQUE2QixFUDROMUI7RUFFRDtJTzlORix1Q0FBNkIsRVBnTzFCO0VBTkQ7SU8xTkYsdUJBQTZCLEVQNE4xQjtFQUVEO0lPOU5GLHVDQUE2QixFUGdPMUIsRUFBQTs7QVRqRkQ7RVMyRUE7SU8xTkYsZ0JBQTZCLEVQNE4xQjtFQUVEO0lPOU5GLGdDQUE2QixFUGdPMUI7RUFORDtJTzFORixzQkFBNkIsRVA0TjFCO0VBRUQ7SU85TkYsc0NBQTZCLEVQZ08xQjtFQU5EO0lPMU5GLHVCQUE2QixFUDROMUI7RUFFRDtJTzlORix1Q0FBNkIsRVBnTzFCO0VBTkQ7SU8xTkYsaUJBQTZCLEVQNE4xQjtFQUVEO0lPOU5GLGlDQUE2QixFUGdPMUI7RUFORDtJTzFORix1QkFBNkIsRVA0TjFCO0VBRUQ7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RSxvQkFBNEI7TUFBNUIsdUJBQTRCLEVEbUd6QixFQUFBO0VUNEJIO0lTekNKO01JcERFLDRCQUQ0RTtNSGpDMUUsb0JBQTRCO01BQTVCLHVCQUE0QixFRG1HekIsRUFBQTtFVDRCSDtJU3pDSjtNSXBERSw0QkFENEU7TUhqQzFFLG9CQUE0QjtNQUE1Qix1QkFBNEIsRURtR3pCLEVBQUE7RUFyQ1A7SUl6QkUsYUFBbUIsRUoyQnBCO0VBRUQ7SUl6QkUsYUFBbUIsRUoyQnBCO0VBTUM7SUk3QkEsa0NBRGdILEVKZ0MvRztFQUZEO0lJN0JBLG1DQURnSCxFSmdDL0c7RUFGRDtJSTdCQSw2QkFEZ0gsRUpnQy9HO0VBRkQ7SUk3QkEsbUNBRGdILEVKZ0MvRztFQUZEO0lJN0JBLG1DQURnSCxFSmdDL0c7RUFGRDtJSTdCQSw2QkFEZ0gsRUpnQy9HO0VBRkQ7SUk3QkEsbUNBRGdILEVKZ0MvRztFQUZEO0lJN0JBLG1DQURnSCxFSmdDL0c7RUFGRDtJSTdCQSw2QkFEZ0gsRUpnQy9HO0VBRkQ7SUk3QkEsbUNBRGdILEVKZ0MvRztFQUZEO0lJN0JBLG1DQURnSCxFSmdDL0c7RUFGRDtJSTdCQSw4QkFEZ0gsRUpnQy9HO0VUOENDO0lTNURKO01JekJFLGFBQW1CLEVKMkJwQjtJQUVEO01JekJFLGFBQW1CLEVKMkJwQjtJQU1DO01JN0JBLGlDQURnSCxFSmdDL0c7SUFGRDtNSTdCQSxrQ0FEZ0gsRUpnQy9HO0lBRkQ7TUk3QkEsNEJBRGdILEVKZ0MvRztJQUZEO01JN0JBLGtDQURnSCxFSmdDL0c7SUFGRDtNSTdCQSxrQ0FEZ0gsRUpnQy9HO0lBRkQ7TUk3QkEsNEJBRGdILEVKZ0MvRztJQUZEO01JN0JBLGtDQURnSCxFSmdDL0c7SUFGRDtNSTdCQSxrQ0FEZ0gsRUpnQy9HO0lBRkQ7TUk3QkEsNEJBRGdILEVKZ0MvRztJQUZEO01JN0JBLGtDQURnSCxFSmdDL0c7SUFGRDtNSTdCQSxrQ0FEZ0gsRUpnQy9HO0lBRkQ7TUk3QkEsNkJBRGdILEVKZ0MvRztJQWRIO01JekJFLGFBQW1CLEVKMkJwQjtJQUVEO01JekJFLGFBQW1CLEVKMkJwQjtJQU1DO01JN0JBLGlDQURnSCxFSmdDL0c7SUFGRDtNSTdCQSxrQ0FEZ0gsRUpnQy9HO0lBRkQ7TUk3QkEsNEJBRGdILEVKZ0MvRztJQUZEO01JN0JBLGtDQURnSCxFSmdDL0c7SUFGRDtNSTdCQSxrQ0FEZ0gsRUpnQy9HO0lBRkQ7TUk3QkEsNEJBRGdILEVKZ0MvRztJQUZEO01JN0JBLGtDQURnSCxFSmdDL0c7SUFGRDtNSTdCQSxrQ0FEZ0gsRUpnQy9HO0lBRkQ7TUk3QkEsNEJBRGdILEVKZ0MvRztJQUZEO01JN0JBLGtDQURnSCxFSmdDL0c7SUFGRDtNSTdCQSxrQ0FEZ0gsRUpnQy9HO0lBRkQ7TUk3QkEsNkJBRGdILEVKZ0MvRyxFQUFBO0VUOENDO0lTNURKO01JekJFLGFBQW1CLEVKMkJwQjtJQUVEO01JekJFLGFBQW1CLEVKMkJwQjtJQU1DO01JN0JBLGdDQURnSCxFSmdDL0c7SUFGRDtNSTdCQSxpQ0FEZ0gsRUpnQy9HO0lBRkQ7TUk3QkEsMkJBRGdILEVKZ0MvRztJQUZEO01JN0JBLGlDQURnSCxFSmdDL0c7SUFGRDtNSTdCQSxpQ0FEZ0gsRUpnQy9HO0lBRkQ7TUk3QkEsMkJBRGdILEVKZ0MvRztJQUZEO01JN0JBLGlDQURnSCxFSmdDL0c7SUFGRDtNSTdCQSxpQ0FEZ0gsRUpnQy9HO0lBRkQ7TUk3QkEsMkJBRGdILEVKZ0MvRztJQUZEO01JN0JBLGlDQURnSCxFSmdDL0c7SUFGRDtNSTdCQSxpQ0FEZ0gsRUpnQy9HO0lBRkQ7TUk3QkEsNEJBRGdILEVKZ0MvRztJQWRIO01JekJFLGFBQW1CLEVKMkJwQjtJQUVEO01JekJFLGFBQW1CLEVKMkJwQjtJQU1DO01JN0JBLGdDQURnSCxFSmdDL0c7SUFGRDtNSTdCQSxpQ0FEZ0gsRUpnQy9HO0lBRkQ7TUk3QkEsMkJBRGdILEVKZ0MvRztJQUZEO01JN0JBLGlDQURnSCxFSmdDL0c7SUFGRDtNSTdCQSxpQ0FEZ0gsRUpnQy9HO0lBRkQ7TUk3QkEsMkJBRGdILEVKZ0MvRztJQUZEO01JN0JBLGlDQURnSCxFSmdDL0c7SUFGRDtNSTdCQSxpQ0FEZ0gsRUpnQy9HO0lBRkQ7TUk3QkEsMkJBRGdILEVKZ0MvRztJQUZEO01JN0JBLGlDQURnSCxFSmdDL0c7SUFGRDtNSTdCQSxpQ0FEZ0gsRUpnQy9HO0lBRkQ7TUk3QkEsNEJBRGdILEVKZ0MvRztJQWRIO01JekJFLGFBQW1CLEVKMkJwQjtJQUVEO01JekJFLGFBQW1CLEVKMkJwQjtJQU1DO01JN0JBLGdDQURnSCxFSmdDL0c7SUFGRDtNSTdCQSxpQ0FEZ0gsRUpnQy9HO0lBRkQ7TUk3QkEsMkJBRGdILEVKZ0MvRztJQUZEO01JN0JBLGlDQURnSCxFSmdDL0c7SUFGRDtNSTdCQSxpQ0FEZ0gsRUpnQy9HO0lBRkQ7TUk3QkEsMkJBRGdILEVKZ0MvRztJQUZEO01JN0JBLGlDQURnSCxFSmdDL0c7SUFGRDtNSTdCQSxpQ0FEZ0gsRUpnQy9HO0lBRkQ7TUk3QkEsMkJBRGdILEVKZ0MvRztJQUZEO01JN0JBLGlDQURnSCxFSmdDL0c7SUFGRDtNSTdCQSxpQ0FEZ0gsRUpnQy9HO0lBRkQ7TUk3QkEsNEJBRGdILEVKZ0MvRyxFQUFBO0VUbURDO0lTakVKO01JekJFLGFBQW1CLEVKMkJwQjtJQUVEO01JekJFLGFBQW1CLEVKMkJwQjtJQU1DO01JN0JBLGdDQURnSCxFSmdDL0c7SUFGRDtNSTdCQSxpQ0FEZ0gsRUpnQy9HO0lBRkQ7TUk3QkEsMkJBRGdILEVKZ0MvRztJQUZEO01JN0JBLGlDQURnSCxFSmdDL0c7SUFGRDtNSTdCQSxpQ0FEZ0gsRUpnQy9HO0lBRkQ7TUk3QkEsMkJBRGdILEVKZ0MvRztJQUZEO01JN0JBLGlDQURnSCxFSmdDL0c7SUFGRDtNSTdCQSxpQ0FEZ0gsRUpnQy9HO0lBRkQ7TUk3QkEsMkJBRGdILEVKZ0MvRztJQUZEO01JN0JBLGlDQURnSCxFSmdDL0c7SUFGRDtNSTdCQSxpQ0FEZ0gsRUpnQy9HO0lBRkQ7TUk3QkEsNEJBRGdILEVKZ0MvRztJQWRIO01JekJFLGFBQW1CLEVKMkJwQjtJQUVEO01JekJFLGFBQW1CLEVKMkJwQjtJQU1DO01JN0JBLGdDQURnSCxFSmdDL0c7SUFGRDtNSTdCQSxpQ0FEZ0gsRUpnQy9HO0lBRkQ7TUk3QkEsMkJBRGdILEVKZ0MvRztJQUZEO01JN0JBLGlDQURnSCxFSmdDL0c7SUFGRDtNSTdCQSxpQ0FEZ0gsRUpnQy9HO0lBRkQ7TUk3QkEsMkJBRGdILEVKZ0MvRztJQUZEO01JN0JBLGlDQURnSCxFSmdDL0c7SUFGRDtNSTdCQSxpQ0FEZ0gsRUpnQy9HO0lBRkQ7TUk3QkEsMkJBRGdILEVKZ0MvRztJQUZEO01JN0JBLGlDQURnSCxFSmdDL0c7SUFGRDtNSTdCQSxpQ0FEZ0gsRUpnQy9HO0lBRkQ7TUk3QkEsNEJBRGdILEVKZ0MvRztJQWRIO01JekJFLGFBQW1CLEVKMkJwQjtJQUVEO01JekJFLGFBQW1CLEVKMkJwQjtJQU1DO01JN0JBLGdDQURnSCxFSmdDL0c7SUFGRDtNSTdCQSxpQ0FEZ0gsRUpnQy9HO0lBRkQ7TUk3QkEsMkJBRGdILEVKZ0MvRztJQUZEO01JN0JBLGlDQURnSCxFSmdDL0c7SUFGRDtNSTdCQSxpQ0FEZ0gsRUpnQy9HO0lBRkQ7TUk3QkEsMkJBRGdILEVKZ0MvRztJQUZEO01JN0JBLGlDQURnSCxFSmdDL0c7SUFGRDtNSTdCQSxpQ0FEZ0gsRUpnQy9HO0lBRkQ7TUk3QkEsMkJBRGdILEVKZ0MvRztJQUZEO01JN0JBLGlDQURnSCxFSmdDL0c7SUFGRDtNSTdCQSxpQ0FEZ0gsRUpnQy9HO0lBRkQ7TUk3QkEsNEJBRGdILEVKZ0MvRztJQWRIO01JekJFLGFBQW1CLEVKMkJwQjtJQUVEO01JekJFLGFBQW1CLEVKMkJwQjtJQU1DO01JN0JBLGdDQURnSCxFSmdDL0c7SUFGRDtNSTdCQSxpQ0FEZ0gsRUpnQy9HO0lBRkQ7TUk3QkEsMkJBRGdILEVKZ0MvRztJQUZEO01JN0JBLGlDQURnSCxFSmdDL0c7SUFGRDtNSTdCQSxpQ0FEZ0gsRUpnQy9HO0lBRkQ7TUk3QkEsMkJBRGdILEVKZ0MvRztJQUZEO01JN0JBLGlDQURnSCxFSmdDL0c7SUFGRDtNSTdCQSxpQ0FEZ0gsRUpnQy9HO0lBRkQ7TUk3QkEsMkJBRGdILEVKZ0MvRztJQUZEO01JN0JBLGlDQURnSCxFSmdDL0c7SUFGRDtNSTdCQSxpQ0FEZ0gsRUpnQy9HO0lBRkQ7TUk3QkEsNEJBRGdILEVKZ0MvRyxFQUFBO0VUbURDO0lTakVKO01JekJFLGFBQW1CLEVKMkJwQjtJQUVEO01JekJFLGFBQW1CLEVKMkJwQjtJQU1DO01JN0JBLGdDQURnSCxFSmdDL0c7SUFGRDtNSTdCQSxpQ0FEZ0gsRUpnQy9HO0lBRkQ7TUk3QkEsMkJBRGdILEVKZ0MvRztJQUZEO01JN0JBLGlDQURnSCxFSmdDL0c7SUFGRDtNSTdCQSxpQ0FEZ0gsRUpnQy9HO0lBRkQ7TUk3QkEsMkJBRGdILEVKZ0MvRztJQUZEO01JN0JBLGlDQURnSCxFSmdDL0c7SUFGRDtNSTdCQSxpQ0FEZ0gsRUpnQy9HO0lBRkQ7TUk3QkEsMkJBRGdILEVKZ0MvRztJQUZEO01JN0JBLGlDQURnSCxFSmdDL0c7SUFGRDtNSTdCQSxpQ0FEZ0gsRUpnQy9HO0lBRkQ7TUk3QkEsNEJBRGdILEVKZ0MvRztJQWRIO01JekJFLGFBQW1CLEVKMkJwQjtJQUVEO01JekJFLGFBQW1CLEVKMkJwQjtJQU1DO01JN0JBLGdDQURnSCxFSmdDL0c7SUFGRDtNSTdCQSxpQ0FEZ0gsRUpnQy9HO0lBRkQ7TUk3QkEsMkJBRGdILEVKZ0MvRztJQUZEO01JN0JBLGlDQURnSCxFSmdDL0c7SUFGRDtNSTdCQSxpQ0FEZ0gsRUpnQy9HO0lBRkQ7TUk3QkEsMkJBRGdILEVKZ0MvRztJQUZEO01JN0JBLGlDQURnSCxFSmdDL0c7SUFGRDtNSTdCQSxpQ0FEZ0gsRUpnQy9HO0lBRkQ7TUk3QkEsMkJBRGdILEVKZ0MvRztJQUZEO01JN0JBLGlDQURnSCxFSmdDL0c7SUFGRDtNSTdCQSxpQ0FEZ0gsRUpnQy9HO0lBRkQ7TUk3QkEsNEJBRGdILEVKZ0MvRztJQWRIO01JekJFLGFBQW1CLEVKMkJwQjtJQUVEO01JekJFLGFBQW1CLEVKMkJwQjtJQU1DO01JN0JBLGdDQURnSCxFSmdDL0c7SUFGRDtNSTdCQSxpQ0FEZ0gsRUpnQy9HO0lBRkQ7TUk3QkEsMkJBRGdILEVKZ0MvRztJQUZEO01JN0JBLGlDQURnSCxFSmdDL0c7SUFGRDtNSTdCQSxpQ0FEZ0gsRUpnQy9HO0lBRkQ7TUk3QkEsMkJBRGdILEVKZ0MvRztJQUZEO01JN0JBLGlDQURnSCxFSmdDL0c7SUFGRDtNSTdCQSxpQ0FEZ0gsRUpnQy9HO0lBRkQ7TUk3QkEsMkJBRGdILEVKZ0MvRztJQUZEO01JN0JBLGlDQURnSCxFSmdDL0c7SUFGRDtNSTdCQSxpQ0FEZ0gsRUpnQy9HO0lBRkQ7TUk3QkEsNEJBRGdILEVKZ0MvRztJQWRIO01JekJFLGFBQW1CLEVKMkJwQjtJQUVEO01JekJFLGFBQW1CLEVKMkJwQjtJQU1DO01JN0JBLGdDQURnSCxFSmdDL0c7SUFGRDtNSTdCQSxpQ0FEZ0gsRUpnQy9HO0lBRkQ7TUk3QkEsMkJBRGdILEVKZ0MvRztJQUZEO01JN0JBLGlDQURnSCxFSmdDL0c7SUFGRDtNSTdCQSxpQ0FEZ0gsRUpnQy9HO0lBRkQ7TUk3QkEsMkJBRGdILEVKZ0MvRztJQUZEO01JN0JBLGlDQURnSCxFSmdDL0c7SUFGRDtNSTdCQSxpQ0FEZ0gsRUpnQy9HO0lBRkQ7TUk3QkEsMkJBRGdILEVKZ0MvRztJQUZEO01JN0JBLGlDQURnSCxFSmdDL0c7SUFGRDtNSTdCQSxpQ0FEZ0gsRUpnQy9HO0lBRkQ7TUk3QkEsNEJBRGdILEVKZ0MvRztJQWRIO01JekJFLGFBQW1CLEVKMkJwQjtJQUVEO01JekJFLGFBQW1CLEVKMkJwQjtJQU1DO01JN0JBLGdDQURnSCxFSmdDL0c7SUFGRDtNSTdCQSxpQ0FEZ0gsRUpnQy9HO0lBRkQ7TUk3QkEsMkJBRGdILEVKZ0MvRztJQUZEO01JN0JBLGlDQURnSCxFSmdDL0c7SUFGRDtNSTdCQSxpQ0FEZ0gsRUpnQy9HO0lBRkQ7TUk3QkEsMkJBRGdILEVKZ0MvRztJQUZEO01JN0JBLGlDQURnSCxFSmdDL0c7SUFGRDtNSTdCQSxpQ0FEZ0gsRUpnQy9HO0lBRkQ7TUk3QkEsMkJBRGdILEVKZ0MvRztJQUZEO01JN0JBLGlDQURnSCxFSmdDL0c7SUFGRDtNSTdCQSxpQ0FEZ0gsRUpnQy9H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cERFLDRCQUQ0RTtNSGpDMUUsb0JBQTRCO01BQTVCLHVCQUE0QixFRG1HekIsRUFBQTtFVDRCSDtJU3pDSjtNSXBERSw0QkFENEU7TUhqQzFFLG9CQUE0QjtNQUE1Qix1QkFBNEIsRURtR3pCLEVBQUE7RUFyQ1A7SUl6QkUsYUFBbUIsRUoyQnBCO0VBRUQ7SUl6QkUsYUFBbUIsRUoyQnBCO0VBTUM7SUk3QkEsa0NBRGdILEVKZ0MvRztFQUZEO0lJN0JBLG1DQURnSCxFSmdDL0c7RUFGRDtJSTdCQSw2QkFEZ0gsRUpnQy9HO0VBRkQ7SUk3QkEsbUNBRGdILEVKZ0MvRztFQUZEO0lJN0JBLG1DQURnSCxFSmdDL0c7RUFGRDtJSTdCQSw2QkFEZ0gsRUpnQy9HO0VBRkQ7SUk3QkEsbUNBRGdILEVKZ0MvRztFQUZEO0lJN0JBLG1DQURnSCxFSmdDL0c7RUFGRDtJSTdCQSw2QkFEZ0gsRUpnQy9HO0VBRkQ7SUk3QkEsbUNBRGdILEVKZ0MvRztFQUZEO0lJN0JBLG1DQURnSCxFSmdDL0c7RUFGRDtJSTdCQSw4QkFEZ0gsRUpnQy9HO0VUOENDO0lTNURKO01JekJFLGFBQW1CLEVKMkJwQjtJQUVEO01JekJFLGFBQW1CLEVKMkJwQjtJQU1DO01JN0JBLGlDQURnSCxFSmdDL0c7SUFGRDtNSTdCQSxrQ0FEZ0gsRUpnQy9HO0lBRkQ7TUk3QkEsNEJBRGdILEVKZ0MvRztJQUZEO01JN0JBLGtDQURnSCxFSmdDL0c7SUFGRDtNSTdCQSxrQ0FEZ0gsRUpnQy9HO0lBRkQ7TUk3QkEsNEJBRGdILEVKZ0MvRztJQUZEO01JN0JBLGtDQURnSCxFSmdDL0c7SUFGRDtNSTdCQSxrQ0FEZ0gsRUpnQy9HO0lBRkQ7TUk3QkEsNEJBRGdILEVKZ0MvRztJQUZEO01JN0JBLGtDQURnSCxFSmdDL0c7SUFGRDtNSTdCQSxrQ0FEZ0gsRUpnQy9HO0lBRkQ7TUk3QkEsNkJBRGdILEVKZ0MvRztJQWRIO01JekJFLGFBQW1CLEVKMkJwQjtJQUVEO01JekJFLGFBQW1CLEVKMkJwQjtJQU1DO01JN0JBLGlDQURnSCxFSmdDL0c7SUFGRDtNSTdCQSxrQ0FEZ0gsRUpnQy9HO0lBRkQ7TUk3QkEsNEJBRGdILEVKZ0MvRztJQUZEO01JN0JBLGtDQURnSCxFSmdDL0c7SUFGRDtNSTdCQSxrQ0FEZ0gsRUpnQy9HO0lBRkQ7TUk3QkEsNEJBRGdILEVKZ0MvRztJQUZEO01JN0JBLGtDQURnSCxFSmdDL0c7SUFGRDtNSTdCQSxrQ0FEZ0gsRUpnQy9HO0lBRkQ7TUk3QkEsNEJBRGdILEVKZ0MvRztJQUZEO01JN0JBLGtDQURnSCxFSmdDL0c7SUFGRDtNSTdCQSxrQ0FEZ0gsRUpnQy9HO0lBRkQ7TUk3QkEsNkJBRGdILEVKZ0MvRyxFQUFBO0VUOENDO0lTNURKO01JekJFLGFBQW1CLEVKMkJwQjtJQUVEO01JekJFLGFBQW1CLEVKMkJwQjtJQU1DO01JN0JBLGdDQURnSCxFSmdDL0c7SUFGRDtNSTdCQSxpQ0FEZ0gsRUpnQy9HO0lBRkQ7TUk3QkEsMkJBRGdILEVKZ0MvRztJQUZEO01JN0JBLGlDQURnSCxFSmdDL0c7SUFGRDtNSTdCQSxpQ0FEZ0gsRUpnQy9HO0lBRkQ7TUk3QkEsMkJBRGdILEVKZ0MvRztJQUZEO01JN0JBLGlDQURnSCxFSmdDL0c7SUFGRDtNSTdCQSxpQ0FEZ0gsRUpnQy9HO0lBRkQ7TUk3QkEsMkJBRGdILEVKZ0MvRztJQUZEO01JN0JBLGlDQURnSCxFSmdDL0c7SUFGRDtNSTdCQSxpQ0FEZ0gsRUpnQy9HO0lBRkQ7TUk3QkEsNEJBRGdILEVKZ0MvRztJQWRIO01JekJFLGFBQW1CLEVKMkJwQjtJQUVEO01JekJFLGFBQW1CLEVKMkJwQjtJQU1DO01JN0JBLGdDQURnSCxFSmdDL0c7SUFGRDtNSTdCQSxpQ0FEZ0gsRUpnQy9HO0lBRkQ7TUk3QkEsMkJBRGdILEVKZ0MvRztJQUZEO01JN0JBLGlDQURnSCxFSmdDL0c7SUFGRDtNSTdCQSxpQ0FEZ0gsRUpnQy9HO0lBRkQ7TUk3QkEsMkJBRGdILEVKZ0MvRztJQUZEO01JN0JBLGlDQURnSCxFSmdDL0c7SUFGRDtNSTdCQSxpQ0FEZ0gsRUpnQy9HO0lBRkQ7TUk3QkEsMkJBRGdILEVKZ0MvRztJQUZEO01JN0JBLGlDQURnSCxFSmdDL0c7SUFGRDtNSTdCQSxpQ0FEZ0gsRUpnQy9HO0lBRkQ7TUk3QkEsNEJBRGdILEVKZ0MvRztJQWRIO01JekJFLGFBQW1CLEVKMkJwQjtJQUVEO01JekJFLGFBQW1CLEVKMkJwQjtJQU1DO01JN0JBLGdDQURnSCxFSmdDL0c7SUFGRDtNSTdCQSxpQ0FEZ0gsRUpnQy9HO0lBRkQ7TUk3QkEsMkJBRGdILEVKZ0MvRztJQUZEO01JN0JBLGlDQURnSCxFSmdDL0c7SUFGRDtNSTdCQSxpQ0FEZ0gsRUpnQy9HO0lBRkQ7TUk3QkEsMkJBRGdILEVKZ0MvRztJQUZEO01JN0JBLGlDQURnSCxFSmdDL0c7SUFGRDtNSTdCQSxpQ0FEZ0gsRUpnQy9HO0lBRkQ7TUk3QkEsMkJBRGdILEVKZ0MvRztJQUZEO01JN0JBLGlDQURnSCxFSmdDL0c7SUFGRDtNSTdCQSxpQ0FEZ0gsRUpnQy9HO0lBRkQ7TUk3QkEsNEJBRGdILEVKZ0MvRyxFQUFBO0VUbURDO0lTakVKO01JekJFLGFBQW1CLEVKMkJwQjtJQUVEO01JekJFLGFBQW1CLEVKMkJwQjtJQU1DO01JN0JBLGdDQURnSCxFSmdDL0c7SUFGRDtNSTdCQSxpQ0FEZ0gsRUpnQy9HO0lBRkQ7TUk3QkEsMkJBRGdILEVKZ0MvRztJQUZEO01JN0JBLGlDQURnSCxFSmdDL0c7SUFGRDtNSTdCQSxpQ0FEZ0gsRUpnQy9HO0lBRkQ7TUk3QkEsMkJBRGdILEVKZ0MvRztJQUZEO01JN0JBLGlDQURnSCxFSmdDL0c7SUFGRDtNSTdCQSxpQ0FEZ0gsRUpnQy9HO0lBRkQ7TUk3QkEsMkJBRGdILEVKZ0MvRztJQUZEO01JN0JBLGlDQURnSCxFSmdDL0c7SUFGRDtNSTdCQSxpQ0FEZ0gsRUpnQy9HO0lBRkQ7TUk3QkEsNEJBRGdILEVKZ0MvRztJQWRIO01JekJFLGFBQW1CLEVKMkJwQjtJQUVEO01JekJFLGFBQW1CLEVKMkJwQjtJQU1DO01JN0JBLGdDQURnSCxFSmdDL0c7SUFGRDtNSTdCQSxpQ0FEZ0gsRUpnQy9HO0lBRkQ7TUk3QkEsMkJBRGdILEVKZ0MvRztJQUZEO01JN0JBLGlDQURnSCxFSmdDL0c7SUFGRDtNSTdCQSxpQ0FEZ0gsRUpnQy9HO0lBRkQ7TUk3QkEsMkJBRGdILEVKZ0MvRztJQUZEO01JN0JBLGlDQURnSCxFSmdDL0c7SUFGRDtNSTdCQSxpQ0FEZ0gsRUpnQy9HO0lBRkQ7TUk3QkEsMkJBRGdILEVKZ0MvRztJQUZEO01JN0JBLGlDQURnSCxFSmdDL0c7SUFGRDtNSTdCQSxpQ0FEZ0gsRUpnQy9HO0lBRkQ7TUk3QkEsNEJBRGdILEVKZ0MvRztJQWRIO01JekJFLGFBQW1CLEVKMkJwQjtJQUVEO01JekJFLGFBQW1CLEVKMkJwQjtJQU1DO01JN0JBLGdDQURnSCxFSmdDL0c7SUFGRDtNSTdCQSxpQ0FEZ0gsRUpnQy9HO0lBRkQ7TUk3QkEsMkJBRGdILEVKZ0MvRztJQUZEO01JN0JBLGlDQURnSCxFSmdDL0c7SUFGRDtNSTdCQSxpQ0FEZ0gsRUpnQy9HO0lBRkQ7TUk3QkEsMkJBRGdILEVKZ0MvRztJQUZEO01JN0JBLGlDQURnSCxFSmdDL0c7SUFGRDtNSTdCQSxpQ0FEZ0gsRUpnQy9HO0lBRkQ7TUk3QkEsMkJBRGdILEVKZ0MvRztJQUZEO01JN0JBLGlDQURnSCxFSmdDL0c7SUFGRDtNSTdCQSxpQ0FEZ0gsRUpnQy9HO0lBRkQ7TUk3QkEsNEJBRGdILEVKZ0MvRztJQWRIO01JekJFLGFBQW1CLEVKMkJwQjtJQUVEO01JekJFLGFBQW1CLEVKMkJwQjtJQU1DO01JN0JBLGdDQURnSCxFSmdDL0c7SUFGRDtNSTdCQSxpQ0FEZ0gsRUpnQy9HO0lBRkQ7TUk3QkEsMkJBRGdILEVKZ0MvRztJQUZEO01JN0JBLGlDQURnSCxFSmdDL0c7SUFGRDtNSTdCQSxpQ0FEZ0gsRUpnQy9HO0lBRkQ7TUk3QkEsMkJBRGdILEVKZ0MvRztJQUZEO01JN0JBLGlDQURnSCxFSmdDL0c7SUFGRDtNSTdCQSxpQ0FEZ0gsRUpnQy9HO0lBRkQ7TUk3QkEsMkJBRGdILEVKZ0MvRztJQUZEO01JN0JBLGlDQURnSCxFSmdDL0c7SUFGRDtNSTdCQSxpQ0FEZ0gsRUpnQy9HO0lBRkQ7TUk3QkEsNEJBRGdILEVKZ0MvRyxFQUFBO0VUbURDO0lTakVKO01JekJFLGFBQW1CLEVKMkJwQjtJQUVEO01JekJFLGFBQW1CLEVKMkJwQjtJQU1DO01JN0JBLGdDQURnSCxFSmdDL0c7SUFGRDtNSTdCQSxpQ0FEZ0gsRUpnQy9HO0lBRkQ7TUk3QkEsMkJBRGdILEVKZ0MvRztJQUZEO01JN0JBLGlDQURnSCxFSmdDL0c7SUFGRDtNSTdCQSxpQ0FEZ0gsRUpnQy9HO0lBRkQ7TUk3QkEsMkJBRGdILEVKZ0MvRztJQUZEO01JN0JBLGlDQURnSCxFSmdDL0c7SUFGRDtNSTdCQSxpQ0FEZ0gsRUpnQy9HO0lBRkQ7TUk3QkEsMkJBRGdILEVKZ0MvRztJQUZEO01JN0JBLGlDQURnSCxFSmdDL0c7SUFGRDtNSTdCQSxpQ0FEZ0gsRUpnQy9HO0lBRkQ7TUk3QkEsNEJBRGdILEVKZ0MvRztJQWRIO01JekJFLGFBQW1CLEVKMkJwQjtJQUVEO01JekJFLGFBQW1CLEVKMkJwQjtJQU1DO01JN0JBLGdDQURnSCxFSmdDL0c7SUFGRDtNSTdCQSxpQ0FEZ0gsRUpnQy9HO0lBRkQ7TUk3QkEsMkJBRGdILEVKZ0MvRztJQUZEO01JN0JBLGlDQURnSCxFSmdDL0c7SUFGRDtNSTdCQSxpQ0FEZ0gsRUpnQy9HO0lBRkQ7TUk3QkEsMkJBRGdILEVKZ0MvRztJQUZEO01JN0JBLGlDQURnSCxFSmdDL0c7SUFGRDtNSTdCQSxpQ0FEZ0gsRUpnQy9HO0lBRkQ7TUk3QkEsMkJBRGdILEVKZ0MvRztJQUZEO01JN0JBLGlDQURnSCxFSmdDL0c7SUFGRDtNSTdCQSxpQ0FEZ0gsRUpnQy9HO0lBRkQ7TUk3QkEsNEJBRGdILEVKZ0MvRztJQWRIO01JekJFLGFBQW1CLEVKMkJwQjtJQUVEO01JekJFLGFBQW1CLEVKMkJwQjtJQU1DO01JN0JBLGdDQURnSCxFSmdDL0c7SUFGRDtNSTdCQSxpQ0FEZ0gsRUpnQy9HO0lBRkQ7TUk3QkEsMkJBRGdILEVKZ0MvRztJQUZEO01JN0JBLGlDQURnSCxFSmdDL0c7SUFGRDtNSTdCQSxpQ0FEZ0gsRUpnQy9HO0lBRkQ7TUk3QkEsMkJBRGdILEVKZ0MvRztJQUZEO01JN0JBLGlDQURnSCxFSmdDL0c7SUFGRDtNSTdCQSxpQ0FEZ0gsRUpnQy9HO0lBRkQ7TUk3QkEsMkJBRGdILEVKZ0MvRztJQUZEO01JN0JBLGlDQURnSCxFSmdDL0c7SUFGRDtNSTdCQSxpQ0FEZ0gsRUpnQy9HO0lBRkQ7TUk3QkEsNEJBRGdILEVKZ0MvRztJQWRIO01JekJFLGFBQW1CLEVKMkJwQjtJQUVEO01JekJFLGFBQW1CLEVKMkJwQjtJQU1DO01JN0JBLGdDQURnSCxFSmdDL0c7SUFGRDtNSTdCQSxpQ0FEZ0gsRUpnQy9HO0lBRkQ7TUk3QkEsMkJBRGdILEVKZ0MvRztJQUZEO01JN0JBLGlDQURnSCxFSmdDL0c7SUFGRDtNSTdCQSxpQ0FEZ0gsRUpnQy9HO0lBRkQ7TUk3QkEsMkJBRGdILEVKZ0MvRztJQUZEO01JN0JBLGlDQURnSCxFSmdDL0c7SUFGRDtNSTdCQSxpQ0FEZ0gsRUpnQy9HO0lBRkQ7TUk3QkEsMkJBRGdILEVKZ0MvRztJQUZEO01JN0JBLGlDQURnSCxFSmdDL0c7SUFGRDtNSTdCQSxpQ0FEZ0gsRUpnQy9HO0lBRkQ7TUk3QkEsNEJBRGdILEVKZ0MvRztJQWRIO01JekJFLGFBQW1CLEVKMkJwQjtJQUVEO01JekJFLGFBQW1CLEVKMkJwQjtJQU1DO01JN0JBLGdDQURnSCxFSmdDL0c7SUFGRDtNSTdCQSxpQ0FEZ0gsRUpnQy9HO0lBRkQ7TUk3QkEsMkJBRGdILEVKZ0MvRztJQUZEO01JN0JBLGlDQURnSCxFSmdDL0c7SUFGRDtNSTdCQSxpQ0FEZ0gsRUpnQy9HO0lBRkQ7TUk3QkEsMkJBRGdILEVKZ0MvRztJQUZEO01JN0JBLGlDQURnSCxFSmdDL0c7SUFGRDtNSTdCQSxpQ0FEZ0gsRUpnQy9HO0lBRkQ7TUk3QkEsMkJBRGdILEVKZ0MvRztJQUZEO01JN0JBLGlDQURnSCxFSmdDL0c7SUFGRDtNSTdCQSxpQ0FEZ0gsRUpnQy9HO0lBRkQ7TUk3QkEsNEJBRGdILEVKZ0MvRyxFQUFBOztBQXlTRDtFUTNYSSwrQkFBbUMsRVI2WHRDO0VUN1BDO0lTMlBGO01RM1hJLDhCQUFtQyxFUjZYdEMsRUFBQTtFVDdQQztJUzJQRjtNUTNYSSw2QkFBbUMsRVI2WHRDLEVBQUE7RVR4UEM7SVNzUEY7TVEzWEksNkJBQW1DLEVSNlh0QyxFQUFBO0VUeFBDO0lTc1BGO01RM1hJLDZCQUFtQyxFUjZYdEMsRUFBQTs7QVQ3UEM7RVMrUEE7SVEvWEUsOEJBQW1DLEVSaVlwQyxFQUFBOztBVGpRRDtFUytQQTtJUS9YRSw2QkFBbUMsRVJpWXBDLEVBQUE7O0FUNVBEO0VTMFBBO0lRL1hFLDZCQUFtQyxFUmlZcEMsRUFBQTs7QVQ1UEQ7RVMwUEE7SVEvWEUsNkJBQW1DLEVSaVlwQyxFQUFBOztBU3JLTDs7Ozs7Ozs7Ozs7Ozs7Ozs7OztFQW1CRSxVQUFTO0VBQ1QsV0FBVSxFQUNYOztBQUdEO0VBQ0Usb0JmNUIwQjtFZThCMUIsbUJBQWtCO0VBQ2xCLGlCZnBObUI7RWVxTm5CLG1DZi9CeUMsRWVnQzFDOztBQUdEOztFQUVFLG1CQUFrQjtFQUNsQixxQkFBb0IsRUFDckI7O0FBR0Q7O0VBRUUsaUJmNUhvQjtFZTZIcEIscUJBQW9CLEVBQ3JCOztBZGdEQztFYzVDQSxlZnREaUI7RWV1RGpCLHFCQUFvQixFQUNyQjs7QUFHRDs7Ozs7O0VBTUUsOEtmL091SztFZWdQdkssbUJmbEdzQjtFZW1HdEIsaUJmL0lvQjtFZWdKcEIsZWZsR2tCO0VlbUdsQixtQ2Z0RXNDLEVlNEV2QztFQWhCRDs7Ozs7O0lBYUksZUFBYztJQUNkLGVmN05lLEVlOE5oQjs7QUFRRztFQUlJLGtCTnZQNkM7RU1tUTdDLG1CZi9IYTtFZXVJYixjQUFhO0VBT2Isc0JmN0lpQixFZStJcEI7O0FBakNEO0VBSUksbUJOdlA2QztFTW1RN0MsbUJmL0hhO0VldUliLGNBQWE7RUFPYixzQmY3SWlCLEVlK0lwQjs7QUFqQ0Q7RUFJSSxrQk52UDZDO0VNbVE3QyxtQmYvSGE7RWV1SWIsY0FBYTtFQU9iLHNCZjdJaUIsRWUrSXBCOztBQWpDRDtFQUlJLHFCTnZQNkM7RU1tUTdDLG1CZi9IYTtFZXVJYixjQUFhO0VBT2Isc0JmN0lpQixFZStJcEI7O0FBakNEO0VBSUksb0JOdlA2QztFTW1RN0MsbUJmL0hhO0VldUliLGNBQWE7RUFPYixzQmY3SWlCLEVlK0lwQjs7QUFqQ0Q7RUFJSSxnQk52UDZDO0VNbVE3QyxtQmYvSGE7RWV1SWIsY0FBYTtFQU9iLHNCZjdJaUIsRWUrSXBCOztBbEJ6TUg7RWtCd0tFO0lBSUksZ0JOdlA2QyxFTW9SaEQ7RUFqQ0Q7SUFJSSxvQk52UDZDLEVNb1JoRDtFQWpDRDtJQUlJLGtCTnZQNkMsRU1vUmhEO0VBakNEO0lBSUkscUJOdlA2QyxFTW9SaEQ7RUFqQ0Q7SUFJSSxvQk52UDZDLEVNb1JoRDtFQWpDRDtJQUlJLGdCTnZQNkMsRU1vUmhELEVBQUE7O0FsQnpNSDtFa0J3S0U7SUFJSSxvQk52UDZDLEVNb1JoRDtFQWpDRDtJQUlJLG1CTnZQNkMsRU1vUmhEO0VBakNEO0lBSUksb0JOdlA2QyxFTW9SaEQ7RUFqQ0Q7SUFJSSxxQk52UDZDLEVNb1JoRDtFQWpDRDtJQUlJLG9CTnZQNkMsRU1vUmhEO0VBakNEO0lBSUksZ0JOdlA2QyxFTW9SaEQsRUFBQTs7QWRuR0w7RWMwR0EscUJBQW9CO0VBQ3BCLGVmdlNlO0Vld1NmLHNCZi9HeUI7RWVpSHpCLGdCQUFlLEVBYWhCO0VBbEJEO0lBU0ksZWZ0SDJELEVlMEg1RDtFQWJIO0lBZ0JJLFVBQVMsRUFDVjs7QWR2S0Q7RWM0S0EsWUFBVztFQUVYLGlCTmxUcUQ7RU1tVHJELFVBQVM7RUFDVCxxQmZsSXlCO0Vlb0l6QixjQUFhO0VBQ2IsZ0JBQWU7RUFDZixpQ2YzU2lCO0VlNFNqQixlQUFjLEVBQ2Y7O0FBR0Q7OztFQUdFLG9CZjVKMEI7RWU2SjFCLDZCZjNJeUI7RWU0SXpCLGlCZm5WbUIsRWVvVnBCOztBQUdEO0VBQ0UsbUJBQWtCLEVBQ25COztBQUdEO0VBQ0UscUJmckpzQjtFZXNKdEIsc0JmeEprQixFZXlKbkI7O0FBR0Q7RUFDRSxxQmYzSnNCLEVlNEp2Qjs7QUFHRDtFQUVJLHFCZmhLMkI7RWVpSzNCLGlCQUFnQixFQUNqQjs7QUFJSDtFQUNFLG9CZnRLeUIsRWU0SzFCO0VBUEQ7SUFJSSxzQmZ2SzhCO0lld0s5QixpQmY5UWtCLEVlK1FuQjs7QUFJSDtFQUNFLGlCZnJNMEI7RWVzTTFCLHVDTjFXcUQ7RU0yV3JELCtCZjlWaUIsRWVvV2xCO0VBVEQ7SUFNSSxpQmYvWGlCO0llZ1lqQixlZmpXYSxFZWtXZDs7QUFJSDtFQUNFLGVBQWM7RUFDZCxxQk50WHFEO0VNdVhyRCxlZnpXZSxFZThXaEI7RUFSRDtJQU1JLGNmekw2QixFQUFBOztBZThMakM7RUFDRSxrQ2YzV1c7RWU0V1gsYUFBWTtFQUNaLHNCQUFxQixFQUN0Qjs7QWQ3UUM7RWNpUkEsVUFBUyxFQUNWOztBQUdEO0VBQ0Usc0NONVlxRDtFTThZckQsMEJmallpQjtFZWtZakIsMEJmbllnQjtFZXFZaEIsNkRmL1FtRTtFZWdSbkUsaUJmaFVzQjtFZWlVdEIsZWY5WFcsRWUrWFo7O0FBR0Q7RUFDRSxVQUFTO0VBQ1QsNEJOcFpTO0VNc1pULDBCZi9ZZ0I7RWVpWmhCLDZEZjNSbUU7RWU0Um5FLGVmellXLEVlOFlaOztBQzVjRDtFQUNFLG1CaEJ5UHlCO0VnQnhQekIsc0JoQnlQNEI7RWdCdlA1QixpQmhCdUhzQjtFZ0J0SHRCLGlCaEJrUHNCO0VnQmpQdEIsZWhCaURlLEVnQmhEaEI7O0FBR0Q7RUFDRSxnQmhCME9xQztFZ0J6T3JDLGlCaEIwT2lCLEVnQnpPbEI7O0FBR0Q7RUFDRSxrQmhCMk9tQjtFZ0IxT25CLGVBQWMsRUFLZjtFQUhDO0lBQ0Usa0JBQWlCLEVBQ2xCOztBQUdIO0VBR0ksZUFBZ0M7RUFDaEMsaUJBQWdCLEVBQ2pCOztBQy9ESztFQUNFLGlCQVJlLEVBU2hCOztBQUZEO0VBQ0Usa0JBUnNCLEVBU3ZCOztBQUZEO0VBQ0UsbUJBUjhCLEVBUy9COztBQUZEO0VBQ0Usb0JBUnVDLEVBU3hDOztBcEJtSkw7RW9CMUpJO0lBQ0UsaUJBSGUsRUFJaEI7RUFGRDtJQUNFLGtCQUhzQixFQUl2QjtFQUZEO0lBQ0UsbUJBSDhCLEVBSS9CO0VBRkQ7SUFDRSxvQkFIdUMsRUFJeEMsRUFBQTs7QXBCd0pMO0VvQjFKSTtJQUNFLGlCQUhlLEVBSWhCO0VBRkQ7SUFDRSxrQkFIc0IsRUFJdkI7RUFGRDtJQUNFLG1CQUg4QixFQUkvQjtFQUZEO0lBQ0Usb0JBSHVDLEVBSXhDLEVBQUE7O0FwQjZKTDtFb0IvSkk7SUFDRSxpQkFIZSxFQUloQjtFQUZEO0lBQ0Usa0JBSHNCLEVBSXZCO0VBRkQ7SUFDRSxtQkFIOEIsRUFJL0I7RUFGRDtJQUNFLG9CQUh1QyxFQUl4QyxFQUFBOztBcEI2Skw7RW9CL0pJO0lBQ0UsaUJBSGUsRUFJaEI7RUFGRDtJQUNFLGtCQUhzQixFQUl2QjtFQUZEO0lBQ0UsbUJBSDhCLEVBSS9CO0VBRkQ7SUFDRSxvQkFIdUMsRUFJeEMsRUFBQTs7QUNFVDtFQUFrQix5QkFBd0IsRUFBSTs7QUFFOUM7RUFDRTtJQUVJLG1DQUFrQztJQUdwQyw0QkFBMkI7SUFFM0Isd0JBQXVCO0lBQ3ZCLDZCQUE0QixFQUM3QjtFQVpIO0lBY29CLDBCQUF5QixFQUFJO0VBQy9DO0lBQWtCLHlCQUF3QixFQUFJO0VBRTlDO0lBQXVCLDBCQUF5QixFQUFJO0VBQ3BEO0lBQXVCLHVDQUFzQyxFQUFJO0VBQ2pFO0lBQXVCLG9DQUFtQyxFQUFJO0VBQzlEO0lBQW9CLDhCQUE2QixFQUFJO0VBQ3JEO0lBQW9CLCtCQUE4QixFQUFJO0VBQ3REO0lBQW9CLCtCQUE4QixFQUFJO0VBR3REOztJQUNZLDJCQUEwQixFQUFHO0VBRXZDO0lBQWdCLDZCQUE0QixFQUFJO0VBSWxEOzs7SUFFcUIsWUFBVyxFQUFJO0VBR3BDO0lBQW9CLDhCQUE2QixFQUFJO0VBR3JEOztJQUVFLDBCbEIrQ2E7SWtCOUNiLHlCQUF3QixFQUN6QjtFQUdEO0lBQVEsNEJBQTJCLEVBQUk7RUFFdkM7O0lBQ00seUJBQXdCLEVBQUk7RWpCZ1ZsQztJaUI5VU0sMkJBQTBCLEVBQUk7RUFFcEM7SUFBUSxjQUFhLEVBQUE7RUFFckI7OztJQUdFLFdBQVU7SUFDVixVQUFTLEVBQ1Y7RUFHRDs7SUFDSyx3QkFBdUIsRUFBSTtFQUdoQztJQUNFLHdCQUF1QixFQUN4QixFQUFBOztBQ2tMSDtFQWhMQSxzQkFBcUI7RUFDckIsdUJBQXNCO0VBQ3RCLG1CbkI4UmtDO0VtQjdSbEMscUJuQjJSMEI7RW1CalJ4QixvQm5Ca1J1QjtFbUIvUXpCLHlCQUF3QjtFQUN4Qiw4QkFBNkI7RUFDN0IsaUJuQnVFZTtFbUJ0RWYsa0VuQitSdUU7RW1CN1J2RSxrQm5Cc1JlO0VtQnJSZixlQUFjO0VBQ2QsbUJBQWtCO0VBQ2xCLGdCQUFlO0VBcUNmLDBCbkJyRWlCO0VtQnNFakIsZW5CbERhLEVtQndSWjtFeEJrbU9EO0lVanhPRSxXQUFVLEVBQ1g7RWN0REQ7SUFDRSwwQm5Ca091RTtJbUJqT3ZFLGVuQnREVyxFbUJ1RFo7RUE2R0Q7SUFNTSxrQm5CbUhNLEVtQmxIUDtFQVBMO0lBTU0sbUJuQm9IUSxFbUJuSFQ7RUFQTDtJQU1NLG1CbkJzSFEsRW1CckhUO0VBUEw7SUFqSkUsZUFBYztJQUNkLFlBQVc7SUFDWCxnQkFBZTtJQUNmLGVBQWMsRUF3SnlCO0VBVnpDO0lBbkhBLDBCbkJyRWlCO0ltQnNFakIsZW5CdENhLEVtQnlLTjtJQWpJUDtNQUNFLDBCQVBvRjtNQVFwRixlbkIxQ1csRW1CMkNaO0VBNkdEO0lBbkhBLDBCbkJwRWlCO0ltQnFFakIsZW5CdENhLEVtQnlLTjtJQWpJUDtNQUNFLDBCQVBvRjtNQVFwRixlbkIxQ1csRW1CMkNaO0VBNkdEO0lBbkhBLDBCbkIzRGdCO0ltQjREaEIsZW5CdENhLEVtQnlLTjtJQWpJUDtNQUNFLDBCQVBvRjtNQVFwRixlbkIxQ1csRW1CMkNaO0VBNkdEO0lBbkhBLDBCbkIxRGdCO0ltQjJEaEIsZW5CdENhLEVtQnlLTjtJQWpJUDtNQUNFLDBCQVBvRjtNQVFwRixlbkIxQ1csRW1CMkNaO0VBNkdEO0lBbkhBLDBCbkJ6RGM7SW1CMERkLGVuQnRDYSxFbUJ5S047SUFqSVA7TUFDRSwwQkFQb0Y7TUFRcEYsZW5CMUNXLEVtQjJDWjtFQTZHRDtJQTFEQSxjbkJ5TDRCO0ltQnhMNUIsb0JBQW1CLEVBaUdoQjtJQS9GSDtNQUNFLDBCbkJsSWU7TW1CbUlmLGVuQi9HVyxFbUJnSFo7SUFvREQ7TUExREEsY25CeUw0QjtNbUJ4TDVCLG9CQUFtQixFQStGWjtNQTdGUDtRQUNFLDBCbkJsSWU7UW1CbUlmLGVuQm5HVyxFbUJvR1o7SUFvREQ7TUExREEsY25CeUw0QjtNbUJ4TDVCLG9CQUFtQixFQStGWjtNQTdGUDtRQUNFLDBCbkJqSWU7UW1Ca0lmLGVuQm5HVyxFbUJvR1o7SUFvREQ7TUExREEsY25CeUw0QjtNbUJ4TDVCLG9CQUFtQixFQStGWjtNQTdGUDtRQUNFLDBCbkJ4SGM7UW1CeUhkLGVuQm5HVyxFbUJvR1o7SUFvREQ7TUExREEsY25CeUw0QjtNbUJ4TDVCLG9CQUFtQixFQStGWjtNQTdGUDtRQUNFLDBCbkJ2SGM7UW1Cd0hkLGVuQm5HVyxFbUJvR1o7SUFvREQ7TUExREEsY25CeUw0QjtNbUJ4TDVCLG9CQUFtQixFQStGWjtNQTdGUDtRQUNFLDBCbkJ0SFk7UW1CdUhaLGVuQm5HVyxFbUJvR1o7RUFvREQ7SUFuRkEsMEJuQnJHaUI7SW1Cc0dqQixlbkJ0R2lCLEVtQjZPWjtJQTdKTDtNQUVFLDhCQUE2QixFQUM5QjtJQUlDO01BRUUsOEJBQTZCLEVBQzlCO0lBY0g7TUFDRSxzQkFONkQ7TUFPN0QsZUFQNkQsRUFhOUQ7TUFMQztRQUVFLDBCbkI3R2E7UW1COEdiLGVuQjlHYSxFbUIrR2Q7SUF5RUg7TUFuRkEsMEJuQnJHaUI7TW1Cc0dqQixlbkJ0R2lCLEVtQjJPUjtNQW5JVDtRQUNFLHNCQU42RDtRQU83RCxlQVA2RCxFQWE5RDtRQUxDO1VBRUUsMEJuQjdHYTtVbUI4R2IsZW5COUdhLEVtQitHZDtJQXlFSDtNQW5GQSwwQm5CcEdpQjtNbUJxR2pCLGVuQnJHaUIsRW1CME9SO01BbklUO1FBQ0Usc0JBTjZEO1FBTzdELGVBUDZELEVBYTlEO1FBTEM7VUFFRSwwQm5CNUdhO1VtQjZHYixlbkI3R2EsRW1COEdkO0lBeUVIO01BbkZBLDBCbkIzRmdCO01tQjRGaEIsZW5CNUZnQixFbUJpT1A7TUFuSVQ7UUFDRSxzQkFONkQ7UUFPN0QsZUFQNkQsRUFhOUQ7UUFMQztVQUVFLDBCbkJuR1k7VW1Cb0daLGVuQnBHWSxFbUJxR2I7SUF5RUg7TUFuRkEsMEJuQjFGZ0I7TW1CMkZoQixlbkIzRmdCLEVtQmdPUDtNQW5JVDtRQUNFLHNCQU42RDtRQU83RCxlQVA2RCxFQWE5RDtRQUxDO1VBRUUsMEJuQmxHWTtVbUJtR1osZW5CbkdZLEVtQm9HYjtJQXlFSDtNQW5GQSwwQm5CekZjO01tQjBGZCxlbkIxRmMsRW1CK05MO01BbklUO1FBQ0Usc0JBTjZEO1FBTzdELGVBUDZELEVBYTlEO1FBTEM7VUFFRSwwQm5CakdVO1VtQmtHVixlbkJsR1UsRW1CbUdYO0VBeUVIO0lBbkZBLDBCbkJyR2lCO0ltQnNHakIsZW5CdEdpQixFbUIwUVo7SUExTEw7TUFFRSw4QkFBNkIsRUFDOUI7SUFJQztNQUVFLDhCQUE2QixFQUM5QjtJQWNIO01BQ0Usc0JBTjZEO01BTzdELGVBUDZELEVBYTlEO01BTEM7UUFFRSwwQm5CN0dhO1FtQjhHYixlbkI5R2EsRW1CK0dkO0lBeUVIO01BZ0VVLDBCQUF5QixFQUMxQjtJQWpFVDtNQW5GQSwwQm5CckdpQjtNbUJzR2pCLGVuQnRHaUIsRW1Cd1FSO01BaEtUO1FBQ0Usc0JBTjZEO1FBTzdELGVBUDZELEVBYTlEO1FBTEM7VUFFRSwwQm5CN0dhO1VtQjhHYixlbkI5R2EsRW1CK0dkO01BeUVIO1FBNkVjLDBCQUF5QixFQUMxQjtJQTlFYjtNQW5GQSwwQm5CcEdpQjtNbUJxR2pCLGVuQnJHaUIsRW1CdVFSO01BaEtUO1FBQ0Usc0JBTjZEO1FBTzdELGVBUDZELEVBYTlEO1FBTEM7VUFFRSwwQm5CNUdhO1VtQjZHYixlbkI3R2EsRW1COEdkO01BeUVIO1FBNkVjLDBCQUF5QixFQUMxQjtJQTlFYjtNQW5GQSwwQm5CM0ZnQjtNbUI0RmhCLGVuQjVGZ0IsRW1COFBQO01BaEtUO1FBQ0Usc0JBTjZEO1FBTzdELGVBUDZELEVBYTlEO1FBTEM7VUFFRSwwQm5CbkdZO1VtQm9HWixlbkJwR1ksRW1CcUdiO01BeUVIO1FBNkVjLDBCQUF5QixFQUMxQjtJQTlFYjtNQW5GQSwwQm5CMUZnQjtNbUIyRmhCLGVuQjNGZ0IsRW1CNlBQO01BaEtUO1FBQ0Usc0JBTjZEO1FBTzdELGVBUDZELEVBYTlEO1FBTEM7VUFFRSwwQm5CbEdZO1VtQm1HWixlbkJuR1ksRW1Cb0diO01BeUVIO1FBNkVjLDBCQUF5QixFQUMxQjtJQTlFYjtNQW5GQSwwQm5CekZjO01tQjBGZCxlbkIxRmMsRW1CNFBMO01BaEtUO1FBQ0Usc0JBTjZEO1FBTzdELGVBUDZELEVBYTlEO1FBTEM7VUFFRSwwQm5CakdVO1VtQmtHVixlbkJsR1UsRW1CbUdYO01BeUVIO1FBNkVjLDBCQUF5QixFQUMxQjtFQXRIYjtJZG5MQSxlQUFjO0lBQ2QsU0FBUTtJQUNSLFVBQVM7SUFFVCxvQmMyS1k7SWR6S1osWUFBVztJQUdULHVCQUFzQjtJQUN0Qix3QkFBdUI7SUFDdkIsOENBQXFEO0ljMEtyRCxtQkFBa0I7SUFDbEIsV0FBVTtJQUVWLHNCQUFxQjtJQUNyQixhQUFPO0lBQ1AsaUJuQmdKdUIsRW1CL0l4QjtFQWdDRDtJQWlHUSwwQm5CelJTLEVtQjBSVjtFQWxHUDtJQXVHWSwwQm5CL1JLLEVtQmdTTjtFQXhHWDtJQXVHWSwwQm5COVJLLEVtQitSTjtFQXhHWDtJQXVHWSwwQm5CclJJLEVtQnNSTDtFQXhHWDtJQXVHWSwwQm5CcFJJLEVtQnFSTDtFQXhHWDtJQXVHWSwwQm5CblJFLEVtQm9SSDtFQXhHWDtJQWdISSxZQUFXO0lBQ1gsWUFBVztJQUNYLGVBQWdDLEVBQ2pDOztBQUVIO0VBR0ksc0JBQXFCLEVBQ3RCOztBeEJpMU9MOztFeUJ4blBFLGVBQWM7RUFDZCx1QkFBc0I7RUFDdEIsWUFBVztFQUNYLGtCQUxzSjtFQU10SixpQlhIdUQ7RVdJdkQsaUJwQnVicUM7RW9CcmJyQywwQnBCTWtCO0VvQkxsQixpQnBCK0VlO0VvQjlFZiwwQnBCR29CO0VvQkZwQixpQnBCbWJpQjtFb0JqYmpCLHFCcEJ1YXlCO0VvQnRhekIsZ0JYWnVEO0VXYXZELGlCcEJxRXdCO0VvQnBFeEIsaUJwQi9CcUI7RW9CZ0NyQixlcEJNYTtFb0JIWCw0RHBCNmE4RDtFb0J4WjlELHlCQUFnQjtLQUFoQixzQkFBZ0I7VUFBaEIsaUJBQWdCLEVBQ2pCO0V6QmttUEQ7O0l5Qm5uUEUsY0FBYTtJQUNiLDBCcEJuQ2U7SW9Cb0NmLDBCcEJoQlc7SW9CaUJYLGlCcEJtYXFCO0lvQmhhbkIsNERwQmthNEQsRW9CaGEvRDs7QW5CcWRDO0VtQnhjQSxnQkFBZSxFQUtoQjtFQU5EO0lBSUksYUFBWSxFQUNiOztBQUdIOztFQUlJLGVwQjFDZSxFb0IyQ2hCOztBQUxIOztFQUlJLGVwQjFDZSxFb0IyQ2hCOztBQUxIOztFQUlJLGVwQjFDZSxFb0IyQ2hCOztBQUxIOzs7RUFVSSwwQnBCbERnQjtFb0JtRGhCLG9CcEJnWTZCLEVvQi9YOUI7O0F6QmttUEw7O0V5QjVsUEkseUJBQWdCO0tBQWhCLHNCQUFnQjtVQUFoQixpQkFBZ0I7RUFDaEIsaUJwQmdCYSxFb0JmZDs7QUFHRDtFQUNFLHVCQUFzQixFQUN2Qjs7QXpCNmxQSDs7O0UwQnJ2UEksaUJaNEVxRCxFWTNFdEQ7O0ExQnl2UEg7O0UwQnB2UEksc0JBQXFCO0VBQ3JCLHlCQUF3QjtFQUV4QixvQkFBa0Q7RUFDbEQsbUJaa0VxRDtFWWpFckQsaUJBQWdCLEVBS2pCO0UxQml2UEQ7O0kwQm52UEksZ0JBQWUsRUFDaEI7O0FBSUg7O0VBRUUscUJBQW1ELEVBQ3BEOztBMUJtdlBIO0UwQi91UEksWUFBVyxFQUNaOztBQ0dEO0VBakJBLGVBQWM7RUFDZCxVQUFTO0VBRVQsb0JiNER1RDtFYTNEdkQsaUJ0QjZJd0I7RXNCNUl4QixpQnRCc2UwQjtFc0JyZTFCLDBCdEI4RWEsRXNCN0RaO0VBTkQ7SUFMQSxpQmJtRHVEO0lhbER2RCxxQkFBOEQsRUFTM0Q7O0FDMUJIO0VBR0Usb0JBRnVDO0VBR3ZDLHFCZCtEcUQ7RWM5RHJELG1CdkJrZXdCO0V1QmpleEIsZXZCa0ZXLEV1QmpGWjs7QUNGRDtFQUNFLHNCQUFpQztFQUFqQyxxQkFBaUM7RUFBakMsY0FBaUM7RUFDakMsWUFBVztFQUNYLG9CZjJEcUQ7RWV4RG5ELDZCQUFvQjtNQUFwQix3QkFBb0I7VUFBcEIscUJBQW9CLEVBWXZCO0VBbEJEO0lBVUksdUJ4QjBJVyxFd0J6SVo7RUFYSDtJQWVNLHVCQUFpSCxFQUNsSDs7QUFJTDs7OztFQUNFLFVBQVM7RUFDVCxvQkFBbUIsRUFNcEI7O0FBRUQ7RUFFRSxnQnhCc2N1QjtFd0JyY3ZCLDBCeEJ5Q2dCO0V3QnhDaEIsb0J4QnVDa0I7RXdCckNsQixleEIrQ1c7RXdCOUNYLG1CQUFrQjtFQUNsQixvQkFBbUI7RUFHakIsc0JBQWE7RUFBYixxQkFBYTtFQUFiLGNBQWE7RUFDYix1QkFBYztNQUFkLG1CQUFjO1VBQWQsZUFBYztFQUNkLDRCQUFtQjtNQUFuQix1QkFBbUI7VUFBbkIsb0JBQW1CLEVBZ0J0QjtFQTdCRDtJQXNCTSxnQkFBaUMsRUFDbEM7RUF2Qkw7SUEwQk0sZUFBZ0MsRUFDakM7O0FBSUw7RUFFRSxpQkFBZ0I7RUFHZCxzQkFBYTtNQUFiLGtCQUFhO1VBQWIsY0FBYTtFQUNiLGFBQVk7RUFDWixhQUFZLEVBS2Y7O0FBRUQ7RUFFRSxlQUFjO0VBQ2Qsa0JBQWlCO0VBQ2pCLG1CQUFrQjtFQUdoQixzQkFBYTtFQUFiLHFCQUFhO0VBQWIsY0FBYTtFQUNiLHVCQUFjO01BQWQsbUJBQWM7VUFBZCxlQUFjLEVBd0JqQjtFQWhDRDs7OztJQXNCTSxhQUFZO0lBQ1osNEJBQW1CO1FBQW5CLDZCQUFtQjtnQkFBbkIsNEJBQW1CO1lBQW5CLG9CQUFtQjtJQUtyQixlQUFjO0lBQ2Qsa0JBQWlCO0lBQ2pCLGdCZjNDbUQsRWU0Q3BEOztBdkJvYUQ7RXdCamdCQSxVQUFTO0VBQ1QsV0FBVTtFQUNWLFVBQVMsRUFDVjs7QXhCMmdCQztFd0J4Z0JBLGdCQUFlO0VBQ2Ysc0JBQWtDLEVBQ25DOztBQUVEO0VBeEJBLG1CaEJvRVc7RWdCbkVYLGlCaEI4RHVEO0VnQjdEdkQsMEJ6QjBFbUIsRXlCbERsQjtFQXRCRDtJQUVFLFVBQVM7SUFDVCx3QmhCd0RxRDtJZ0J2RHJELHFCaEJ1RHFELEVnQnREdEQ7O0FyQjZKRDtFc0J4S0Esa0JBRnNKO0VBR3RKLGlCakJnRXVEO0VpQi9EdkQsaUIxQjBmcUM7RTBCeGZyQyx5QkFBZ0I7S0FBaEIsc0JBQWdCO1VBQWhCLGlCQUFnQjtFQUNoQiwwQjFCd0VrQjtFMEJ2RWxCLGlCMUJpSmU7RTBCaEpmLDBCMUJtRWE7RTBCakViLHFCMUIwZXlCO0UwQnplekIsZ0JqQnVEdUQ7RWlCdER2RCxpQjFCd0l3QjtFMEJ2SXhCLGlCMUJvQ3FCO0UwQm5DckIsZTFCeUVhO0VLeUNiLHdPQUF5TjtFcUI5R3ZOLCtCQUE4QjtFQUM5Qix3Q0FBMEQ7RUFDMUQsNkJBQTRCO0VBQzVCLHlCQUF3QjtFQUV4QixzQkFBdUQ7RUFJdkQsNEQxQnNlOEQsRTBCbmMvRDtFckJvRUQ7SUR1Q0E7TUNwQ0ksd1dBQXVXLEVxQnZFMVcsRUFBQTtFQS9CRDtJQUNFLGNBQWE7SUFDYiwwQjFCc0JlO0kwQnJCZiwwQjFCeUNXO0kwQnhDWCxpQjFCNGRxQjtJMEJ6ZG5CLDREMUIyZDRELEUwQnpkL0Q7RUFHRDtJQUNFLDBCMUJpQ2tCO0kwQmhDbEIsb0IxQm1kK0IsRTBCbGRoQztFQUdEO0lBQ0UsY0FBYSxFQUNkO0VBRUQ7SUFDRSxhQUFZO0lBQ1osdUJBQXNCLEVBQ3ZCOztBQ2xDRDtFQUNFLHNCM0I0Q1k7RTJCM0NaLDBCQUErRCxFQUloRTtFQUhDO0lBQ0UsZTNCeUNVLEUyQnhDWDtFQUZEO0lBQ0UsZTNCeUNVLEUyQnhDWDtFQUZEO0lBQ0UsZTNCeUNVLEUyQnhDWDs7QUF5QkQ7RUFDRSxlM0JjVSxFMkJiWDs7QUFJSDtFQXpCQSxjQUFhO0VBQ2Isb0JBQWdDO0VBQ2hDLG9CbEIrQnVEO0VrQjdCdkQsbUJsQjZCdUQ7RWtCNUJ2RCxpQjNCaUhzQjtFMkJoSHRCLGUzQjRCYyxFMkJIYjtFQU5EO0lBSUksZUFBYyxFQUNmOztBQ3NESDtFQXZGQSxlQUFnQztFQUNoQyxvQjVCNENhO0U0QjNDYixzQkFBcUIsRUF1RnBCO0VBckZD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Q2dCO1FDbENoQixrQkRrQ2dCO1lDbENoQixTRGtDZ0IsRUFHWDtFQUZEO0lDbkNKLGlCRGtDZ0I7UUNsQ2hCLGtCRGtDZ0I7WUNsQ2hCLFNEa0NnQixFQUdYO0VBRkQ7SUNuQ0osaUJEa0NnQjtRQ2xDaEIsa0JEa0NnQjtZQ2xDaEIsU0RrQ2dCLEVBR1g7RUFGRDtJQ25DSixpQkRrQ2dCO1FDbENoQixrQkRrQ2dCO1lDbENoQixTRGtDZ0IsRUFHWCxFQUFBOztBL0RxREQ7RStEdkRBO0lDbkNKLGlCRGtDZ0I7UUNsQ2hCLGtCRGtDZ0I7WUNsQ2hCLFNEa0NnQixFQUdYO0VBRkQ7SUNuQ0osaUJEa0NnQjtRQ2xDaEIsa0JEa0NnQjtZQ2xDaEIsU0RrQ2dCLEVBR1g7RUFGRDtJQ25DSixpQkRrQ2dCO1FDbENoQixrQkRrQ2dCO1lDbENoQixTRGtDZ0IsRUFHWDtFQUZEO0lDbkNKLGlCRGtDZ0I7UUNsQ2hCLGtCRGtDZ0I7WUNsQ2hCLFNEa0NnQixFQUdYO0VBRkQ7SUNuQ0osaUJEa0NnQjtRQ2xDaEIsa0JEa0NnQjtZQ2xDaEIsU0RrQ2dCLEVBR1g7RUFGRDtJQ25DSixpQkRrQ2dCO1FDbENoQixrQkRrQ2dCO1lDbENoQixTRGtDZ0IsRUFHWCxFQUFBOztBL0QwREQ7RStENURBO0lDbkNKLGlCRGtDZ0I7UUNsQ2hCLGtCRGtDZ0I7WUNsQ2hCLFNEa0NnQixFQUdYO0VBRkQ7SUNuQ0osaUJEa0NnQjtRQ2xDaEIsa0JEa0NnQjtZQ2xDaEIsU0RrQ2dCLEVBR1g7RUFGRDtJQ25DSixpQkRrQ2dCO1FDbENoQixrQkRrQ2dCO1lDbENoQixTRGtDZ0IsRUFHWDtFQUZEO0lDbkNKLGlCRGtDZ0I7UUNsQ2hCLGtCRGtDZ0I7WUNsQ2hCLFNEa0NnQixFQUdYO0VBRkQ7SUNuQ0osaUJEa0NnQjtRQ2xDaEIsa0JEa0NnQjtZQ2xDaEIsU0RrQ2dCLEVBR1g7RUFGRDtJQ25DSixpQkRrQ2dCO1FDbENoQixrQkRrQ2dCO1lDbENoQixTRGtDZ0IsRUFHWCxFQUFBOztBL0QwREQ7RStENURBO0lDbkNKLGlCRGtDZ0I7UUNs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NEJBQTJCLEVKUjFCOztBQVVEO0VHb0JBLHFDQUZ5QjtNQUV6QixpQ0FGeUI7VUFFekIsNkJBRnlCLEVIaEJ4Qjs7QUFkRDtFQ2xCRiwyQkNrQmM7RURqQmQsbUNDaUNlO0VDZ0JiLGlDQUZ5QjtNQUV6Qiw2QkFGeUI7VUFFekIseUJBRnlCO0VDdkJ2QixnREFBdUM7RUFBdkMsd0NBQXVDO0VBQXZDLDJEQUF1QztFQUd6QyxvQ0FBMkI7VUFBM0IsNEJBQTJCLEVKUjFCOztBQVVEO0VHb0JBLHFDQUZ5QjtNQUV6QixpQ0FGeUI7VUFFekIsNkJBRnlCLEVIaEJ4Qjs7QUFkRDtFQ2xCRiwyQkNrQmM7RURqQmQsbUNDaUNlO0VDZ0JiLFdGaENrQztFSUFsQyw2QkFBNEIsRUxFM0I7O0FBVUQ7RUdvQkEsV0ZoQ3FDLEVEY3BDOztBQWREO0VDbEJGLDJCQ2tCYztFRGpCZCxtQ0NpQ2U7RUNnQmIsV0YvQmtDO0VJRGxDLDZCQUE0QixFTEUzQjs7QUFVRDtFR29CQSxXRi9CcUMsRURhcEM7O0FBZEQ7RUNsQkYsMkJDa0JjO0VEakJkLG1DQ2lDZTtFQ2dCYix1REdyQ21DO1VIcUNuQywrQ0dyQ21DO0VIcUNuQyw4QkY1Qm1EO01FNEJuRCwwQkY1Qm1EO1VFNEJuRCxzQkY1Qm1EO0VNR2pELGdEQUF1QztFQUF2Qyx3Q0FBdUM7RUFBdkMsMkRBQXVDO0VBQ3ZDLFdBQTJCLEVQTjVCOztBQVVEO0VHb0JBLG9ER1Y0QztVSFU1Qyw0Q0dWNEM7RUNKMUMsV0FBMkIsRVBKNUI7O0FBZEQ7RUNsQkYsMkJDa0JjO0VEakJkLG1DQ2lDZTtFQ2dCYix1REdwQ3FDO1VIb0NyQywrQ0dwQ3FDO0VIb0NyQyxnQ0YzQnFEO01FMkJyRCw0QkYzQnFEO1VFMkJyRCx3QkYzQnFEO0VNRW5ELGdEQUF1QztFQUF2Qyx3Q0FBdUM7RUFBdkMsMkRBQXVDO0VBQ3ZDLFdBQTJCLEVQTjVCOztBQVVEO0VHb0JBLG9ER1Y0QztVSFU1Qyw0Q0dWNEM7RUNKMUMsV0FBMkIsRVBKNUI7O0FBZEQ7RUNsQkYsMkJDa0JjO0VEakJkLG1DQ2lDZTtFQ2dCYixzREduQ2lDO1VIbUNqQyw4Q0duQ2lDO0VIbUNqQyxpQ0YxQnNEO01FMEJ0RCw2QkYxQnNEO1VFMEJ0RCx5QkYxQnNEO0VNQ3BELGdEQUF1QztFQUF2Qyx3Q0FBdUM7RUFBdkMsMkRBQXVDO0VBQ3ZDLFdBQTJCLEVQTjVCOztBQVVEO0VHb0JBLG9ER1Y0QztVSFU1Qyw0Q0dWNEM7RUNKMUMsV0FBMkIsRVBKNUI7O0FBZEQ7RUNsQkYsMkJDa0JjO0VEakJkLG1DQ2lDZTtFQ2dCYixzREdsQytCO1VIa0MvQiw4Q0dsQytCO0VIa0MvQiwrQkZ6Qm9EO01FeUJwRCwyQkZ6Qm9EO1VFeUJwRCx1QkZ6Qm9EO0VNQWxELGdEQUF1QztFQUF2Qyx3Q0FBdUM7RUFBdkMsMkRBQXVDO0VBQ3ZDLFdBQTJCLEVQTjVCOztBQVVEO0VHb0JBLG9ER1Y0QztVSFU1Qyw0Q0dWNEM7RUNKMUMsV0FBMkIsRVBKNUI7O0FBZEQ7RUNsQkYsMkJDa0JjO0VEakJkLG1DQ2lDZTtFQ2dCYix1REdyQ21DO1VIcUNuQywrQ0dyQ21DO0VIcUNuQyxpQ0dDZTtNSERmLDZCR0NlO1VIRGYseUJHQ2U7RUMxQmIsZ0RBQXVDO0VBQXZDLHdDQUF1QztFQUF2QywyREFBdUM7RUFDdkMsV0FBMkIsRVBONUI7O0FBVUQ7RUdvQkEsb0RHVjRDO1VIVTVDLDRDR1Y0QztFQ0oxQyxXQUEyQixFUEo1Qjs7QUFkRDtFQ2xCRiwyQkNrQmM7RURqQmQsbUNDaUNlO0VDZ0JiLHVER3BDcUM7VUhvQ3JDLCtDR3BDcUM7RUhvQ3JDLGlDR0NlO01IRGYsNkJHQ2U7VUhEZix5QkdDZTtFQzFCYixnREFBdUM7RUFBdkMsd0NBQXVDO0VBQXZDLDJEQUF1QztFQUN2QyxXQUEyQixFUE41Qjs7QUFVRDtFR29CQSxvREdWNEM7VUhVNUMsNENHVjRDO0VDSjFDLFdBQTJCLEVQSjVCOztBQWREO0VDbEJGLDJCQ2tCYztFRGpCZCxtQ0NpQ2U7RUNnQmIsb0RHUjhDO1VIUTlDLDRDR1I4QztFSFE5Qyw4QkZ0Qm1EO01Fc0JuRCwwQkZ0Qm1EO1VFc0JuRCxzQkZ0Qm1EO0VNSGpELGdEQUF1QztFQUF2Qyx3Q0FBdUM7RUFBdkMsMkRBQXVDO0VBQ3ZDLFdBQThCLEVQTi9COztBQVVEO0VHb0JBLHVER3JDbUM7VUhxQ25DLCtDR3JDbUM7RUN1QmpDLFdBQThCLEVQSi9COztBQWREO0VDbEJGLDJCQ2tCYztFRGpCZCxtQ0NpQ2U7RUNnQmIsb0RHUjhDO1VIUTlDLDRDR1I4QztFSFE5QyxnQ0ZyQnFEO01FcUJyRCw0QkZyQnFEO1VFcUJyRCx3QkZyQnFEO0VNSm5ELGdEQUF1QztFQUF2Qyx3Q0FBdUM7RUFBdkMsMkRBQXVDO0VBQ3ZDLFdBQThCLEVQTi9COztBQVVEO0VHb0JBLHVER3BDcUM7VUhvQ3JDLCtDR3BDcUM7RUNzQm5DLFdBQThCLEVQSi9COztBQWREO0VDbEJGLDJCQ2tCYztFRGpCZCxtQ0NpQ2U7RUNnQmIsb0RHUjhDO1VIUTlDLDRDR1I4QztFSFE5QyxpQ0ZwQnNEO01Fb0J0RCw2QkZwQnNEO1VFb0J0RCx5QkZwQnNEO0VNTHBELGdEQUF1QztFQUF2Qyx3Q0FBdUM7RUFBdkMsMkRBQXVDO0VBQ3ZDLFdBQThCLEVQTi9COztBQVVEO0VHb0JBLHNER25DaUM7VUhtQ2pDLDhDR25DaUM7RUNxQi9CLFdBQThCLEVQSi9COztBQWREO0VDbEJGLDJCQ2tCYztFRGpCZCxtQ0NpQ2U7RUNnQmIsb0RHUjhDO1VIUTlDLDRDR1I4QztFSFE5QywrQkZuQm9EO01FbUJwRCwyQkZuQm9EO1VFbUJwRCx1QkZuQm9EO0VNTmxELGdEQUF1QztFQUF2Qyx3Q0FBdUM7RUFBdkMsMkRBQXVDO0VBQ3ZDLFdBQThCLEVQTi9COztBQVVEO0VHb0JBLHNER2xDK0I7VUhrQy9CLDhDR2xDK0I7RUNvQjdCLFdBQThCLEVQSi9COztBQWREO0VDbEJGLDJCQ2tCYztFRGpCZCxtQ0NpQ2U7RUNnQmIsb0RHUjhDO1VIUTlDLDRDR1I4QztFSFE5QyxpQ0dDZTtNSERmLDZCR0NlO1VIRGYseUJHQ2U7RUMxQmIsZ0RBQXVDO0VBQXZDLHdDQUF1QztFQUF2QywyREFBdUM7RUFDdkMsV0FBOEIsRVBOL0I7O0FB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Z0JLO0lpRjhaTjtNRGxqQkksdUJBQTJDLEVDcXBCOUMsRUFBQTtFakY1Zks7SWlGeVpOO01EbGpCSSxzQkFBMkMsRUNxcEI5QyxFQUFBO0VqRjVmSztJaUZ5Wk47TURsakJJLHNCQUEyQyxFQ3FwQjlDLEVBQUE7RWpGamdCSztJaUY4Wk47TURsakJJLHVCQUEyQyxFQ3FwQjlDLEVBQUE7RWpGamdCSztJaUY4Wk47TURsakJJLHNCQUEyQyxFQ3FwQjlDLEVBQUE7RWpGNWZLO0lpRnlaTjtNRGxqQkkscUJBQTJDLEVDcXBCOUMsRUFBQTtFakY1Zks7SWlGeVpOO01EbGpCSSxxQkFBMkMsRUNxcEI5QyxFQUFBO0VqRmpnQks7SWlGOFpOO01BS0ksa0JBQWlCLEVBOEZwQixFQUFBO0VqRmpnQks7SWlGOFpOO01EbGpCSSxxQkFBMkM7TUFBM0Msb0JBQTJDLEVDcXBCOUMsRUFBQTtFakZqZ0JLO0lpRjhaTjtNRGxqQkksdUJBQTJDLEVDcXBCOUMsRUFBQTtFakZqZ0JLO0lpRjhaTjtNRGxqQkksc0JBQTJDLEVDcXBCOUMsRUFBQTtFakY1Zks7SWlGeVpOO01EbGpCSSxxQkFBMkMsRUNxcEI5QyxFQUFBO0VqRjVmSztJaUZ5Wk47TURsakJJLHFCQUEyQyxFQ3FwQjlDLEVBQUE7RWpGamdCSztJaUY4Wk47TURsakJJLHNCQUEyQyxFQ3FwQjlDLEVBQUE7RWpGamdCSztJaUY4Wk47TURsakJJLHFCQUEyQyxFQ3FwQjlDLEVBQUE7RWpGNWZLO0lpRnlaTjtNRGxqQkksb0JBQTJDLEVDcXBCOUMsRUFBQTtFakY1Zks7SWlGeVpOO01EbGpCSSxvQkFBMkMsRUNxcEI5QyxFQUFBO0VBbkdEO0lBYUksb0JBQW1CO0lBQ25CLGFBQVk7SUFDWiw0QkFBbUI7UUFBbkIsdUJBQW1CO1lBQW5CLG9CQUFtQixFQUNwQjtFQWhCSDtJQWtCSSxzQzlFdGVXO0k4RXVlWCxlOUV2ZVc7SThFd2VYLGlCQUFnQjtJQUNoQixnQkFBZTtJQUNmLGFBQVc7SUFDWCxnRkFBK0U7SUFDL0UsY0FBYTtJQUNiLGtCckVsZ0JxRDtJcUVtZ0Jy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O0lzRnpKTjtNTnFGSSxvQnBFUHFELEUwRWxFeEQsRUFBQTs7O0FBWEQ7O0VOK0VFLG1CcEVGdUQsRTBFOUR4RDtFdEZ5SUs7O0lzRnhKTjs7TU5pRkksb0JwRUpxRCxFMEU5RHhELEVBQUE7RXRGeUlLOztJc0Z4Sk47O01Ob0ZJLG1CcEVQcUQsRTBFOUR4RCxFQUFBOzs7QUFkRDs7OztFTjhFRSxrQnBFRnVELEUwRTFEeEQ7RXRGcUlLOztJc0Z2Sk47Ozs7TU5nRkksa0JwRUpxRCxFMEUxRHhELEVBQUE7RXRGcUlLOztJc0Z2Sk47Ozs7TU5tRkksb0JwRVBxRCxFMEUxRHhELEVBQUE7OztBQWpCRDs7Ozs7RU42RUUscUJwRUZ1RCxFMEV0RHhEO0V0RmlJSzs7SXNGdEpOOzs7OztNTitFSSxxQnBFSnFELEUwRXREeEQsRUFBQTtFdEZpSUs7O0lzRnRKTjs7Ozs7TU5rRkkscUJwRVBxRCxFMEV0RHhELEVBQUE7OztBQXBCRDs7RU40RUUsb0JwRUZ1RCxFMEVsRHhEO0V0RjZISzs7SXNGckpOOztNTjhFSSxvQnBFSnFELEUwRWxEeEQsRUFBQTtFdEY2SEs7O0lzRnJKTjs7TU5pRkksb0JwRVBxRCxFMEVsRHhELEVBQUE7OztBQXZCRDs7O0VOMkVFLGdCcEVGdUQsRTBFOUN4RDtFdEZ5SEs7O0lzRnBKTjs7O01ONkVJLGdCcEVKcUQsRTBFOUN4RCxFQUFBO0V0RnlISzs7SXNGcEpOOzs7TU5nRkksZ0JwRVBxRCxFMEU5Q3hELEVBQUE7O0FDMUNEO0VBQ0MsMEJwRmdHYztFb0YvRmQsdUJBQXNCO0VBQ3RCLFlBQVc7RUFDWCxpQnBGd0swQjtFb0Z2SzFCLDhCcEYrRm1CLEVvRnJDbkI7RXZGb0dLO0l1Rm5LTjtNQU9FLGtCQUFnQjtNQUNoQix3QkFBc0IsRUF1RHZCLEVBQUE7RXZGeUdLO0l1RnhLTjtNQVdFLGtCQUFnQjtNQUNoQix1QkFBcUIsRUFtRHRCLEVBQUE7RUEvREQ7SUFnQkUsb0JBQW1CO0lBQ25CLGlCQUFnQixFQVdoQjtJdkZ1SUk7TXVGbktOO1FBb0JHLGlCQUFnQjtRQUNoQiwyQkFBa0I7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cEMsdUJBQXVDLEVTeUIxQyxFQUFBO0V6RnNJSztJeUZ4S047TVRRSSxrQkFBb0M7TUFDcEMscUJBQXVDLEVTeUIxQyxFQUFBO0V6RnNJSztJeUZ4S047TVRRSSxrQkFBb0M7TUFDcEMscUJBQXVDLEVTeUIxQyxFQUFBO0V6RmlJSztJeUZuS047TVRRSSxzQkFBb0M7TUFDcEMseUJBQXVDLEVTeUIxQyxFQUFBO0V6RmlJSztJeUZuS047TVRRSSx1QkFBb0M7TUFDcEMsMEJBQXVDLEVTeUIxQyxFQUFBO0V6RmlJSztJeUZuS047TVRRSSxzQkFBb0M7TUFDcEMseUJBQXVDLEVTeUIxQyxFQUFBO0V6RnNJSztJeUZ4S047TVRRSSxxQkFBb0M7TUFDcEMsd0JBQXVDLEVTeUIxQyxFQUFBO0V6RnNJSztJeUZ4S047TVRRSSxxQkFBb0M7TUFDcEMsd0JBQXVDLEVTeUIxQyxFQUFBO0V6RnNJSztJeUZ4S047TVRlSSx5QkFBMkMsRVNNNUMsRUFBQTtFekY4SUc7SXlGbktOO01UZUksMEJBQTJDLEVTTTVDLEVBQUE7RXpGOElHO0l5Rm5LTjtNVGVJLHlCQUEyQyxFU001QyxFQUFBO0V6Rm1KRztJeUZ4S047TVRlSSx3QkFBMkMsRVNNNUMsRUFBQTtFekZtSkc7SXlGeEtOO01UZUksd0JBQTJDLEVTTTVDLEVBQUE7RUFyQkg7SUFZTSxzQkFBYTtJQUFiLHFCQUFhO0lBQWIsY0FBYSxFQVFkO0l6Rm9KQztNeUZ4S047UVRlSSx3QkFBMkMsRVNLMUMsRUFBQTtFekYrSUM7SXlGbktOO01UZUkseUJBQTJDLEVTSzFDLEVBQUE7RXpGK0lDO0l5Rm5LTjtNVGVJLHdCQUEyQyxFU0sxQyxFQUFBO0V6Rm9KQztJeUZ4S047TVRlSSx1QkFBMkMsRVNLMUMsRUFBQTtFekZvSkM7SXlGeEtOO01UZUksdUJBQTJDLEVTSzFDLEVBQUE7SUFwQkw7TUFrQlEsaUJBQWdCLEVBQ2pCO0VBbkJQO0lBdUJJLGtCN0VpRXFELEU2RTVEdEQ7SUE1Qkg7TUF5Qk0sZUFBYTtNQUNiLFlBQVUsRUFDWDtFQTNCTDtJQStCTSxrQkFBNkIsRUFF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SXdHbktOO014QlFJLHFCQUFvQztNQUNwQyx3QkFBdUMsRXdCMEUxQyxFQUFBO0V4R2dGSztJd0duS047TXhCUUksb0JBQW9DO01BQ3BDLHVCQUF1QyxFd0IwRTFDLEVBQUE7RXhHcUZLO0l3R3hLTjtNeEJRSSxrQkFBb0M7TUFDcEMscUJBQXVDLEV3QjBFMUMsRUFBQTtFeEdxRks7SXdHeEtOO014QlFJLGtCQUFvQztNQUNwQyxxQkFBdUMsRXdCMEUxQyxFQUFBO0VBbkZEO0l4QmVJLHVCQUEyQyxFd0JrQjdDO0l4R2tJSTtNd0duS047UXhCZUksd0JBQTJDLEV3QmtCN0MsRUFBQTtJeEdrSUk7TXdHbktOO1F4QmVJLHVCQUEyQyxFd0JrQjdDLEVBQUE7SXhHdUlJO013R3hLTjtReEJlSSxzQkFBMkMsRXdCa0I3QyxFQUFBO0l4R3VJSTtNd0d4S047UXhCZUksc0JBQTJDLEV3QmtCN0MsRUFBQTtJQWpDRjtNQU1HLG1CQUFrQixFQTBCbEI7TXhHd0lHO1F3R3hLTjtVQVFJLGVBQWM7VUFDZCxtQkFBa0IsRUF1Qm5CLEVBQUE7TXhHbUlHO1F3R25LTjtVQVlRLFdBQVM7VUFDVCxtQkFBaUIsRUFtQnRCLEVBQUE7TUFoQ0g7UUFpQkksc0JBQXFCLEVBS3JCO1F4RzZJRTtVd0duS047WUFvQkssbUJBQWtCLEVBRW5CLEVBQUE7TUF0Qko7UXhCZUksdUJBQTJDLEV3QmdCM0M7UXhHb0lFO1V3R25LTjtZeEJlSSx3QkFBMkMsRXdCZ0IzQyxFQUFBO1F4R29JRTtVd0duS047WXhCZUksdUJBQTJDLEV3QmdCM0MsRUFBQTtReEd5SUU7VXdHeEtOO1l4QmVJLHNCQUEyQyxFd0JnQjNDLEVBQUE7UXhHeUlFO1V3R3hLTjtZeEJlSSxzQkFBMkMsRXdCZ0IzQyxFQUFBO1F4R29JRTtVd0duS047WXhCZUksd0JBQTJDLEV3QmdCM0MsRUFBQTtFeEdvSUU7SXdHbktOO014QmVJLHlCQUEyQyxFd0JnQjNDLEVBQUE7RXhHb0lFO0l3R25LTjtNeEJlSSx3QkFBMkMsRXdCZ0IzQyxFQUFBO0V4R3lJRTtJd0d4S047TXhC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RCxhQUF3QjtRQUN4QixZQUFVLEVBTWIsRUFBQTtJekcwRkc7TXlHbktOO1FBc0VNLFlBQVU7UUFDVixrQjdGaUJtRCxFNkZmdEQsRUFBQTtFekcwRkc7SXlHbktOO01BNkVHLGVBQWM7TXpCOURiLHVCQUEyQyxFeUIyRjdDLEVBQUE7RXpHeURJO0l5R25LTjtNekJlSSx3QkFBMkMsRXlCMkY3QyxFQUFBO0V6R3lESTtJeUduS047TXpCZUksdUJBQTJDLEV5QjJGN0MsRUFBQTtFekc4REk7SXlHeEtOO016QmVJLHNCQUEyQyxFeUIyRjdDLEVBQUE7RXpHOERJO0l5R3hLTjtNekJlSSxzQkFBMkMsRXlCMkY3QyxFQUFBO0VBMUdGO0lBaUZHLG1CQUFrQjtJQUNsQixrQkFBaUI7SXpCbkVoQixvQkFBMkM7SXlCcUU1QyxtQkFBa0IsRUFxQmxCO0l6RzBERztNeUduS047UXpCZUkscUJBQTJDLEV5QjBGNUMsRUFBQTtJekcwREc7TXlHbktOO1F6QmVJLG9CQUEyQyxFeUIwRjVDLEVBQUE7SXpHK0RHO015R3hLTjtRekJlSSxrQkFBMkMsRXlCMEY1QyxFQUFBO0l6RytERztNeUd4S047UXpCZUksa0JBQTJDLEV5QjBGNUMsRUFBQTtJekcwREc7TXlHbktOO1F6QmVJLHFCQUEyQyxFeUIwRjVDLEVBQUE7RXpHMERHO0l5R25LTjtNekJlSSxzQkFBMkMsRXlCMEY1QyxFQUFBO0V6RzBERztJeUduS047TXpCZUkscUJBQTJDLEV5QjBGNUMsRUFBQTtFekcrREc7SXlHeEtOO016QmVJLG9CQUEyQyxFeUIwRjVDLEVBQUE7RXpHK0RHO0l5R3hLTjtNekJlSSxvQkFBMkMsRXlCMEY1QyxFQUFBO0l6RzBERztNeUduS047UUEwRkksaUJBQWdCO1FBQ1osbUNBQWtEO1FBQ2xELGVBQWEsRUFhbEIsRUFBQTtJQXpHSDtNQWdHSSxzQkFBcUIsRUFLckI7TXpHOERFO1F5R25LTjtVQW1HSyxtQkFBa0IsRUFFbkIsRUFBQTtJQXJHSjtNQXVHSSxzQkFBcUIsRUFDckI7O0FDeEdKO0UxQmVJLHNCQUEyQyxFMEI4RTlDO0UxR3NFSztJMEduS047TTFCZUksdUJBQTJDLEUwQjhFOUMsRUFBQTtFMUdzRUs7STBHbktOO00xQmVJLHNCQUEyQyxFMEI4RTlDLEVBQUE7RTFHMkVLO0kwR3hLTjtNMUJlSSxvQkFBMkMsRTBCOEU5QyxFQUFBO0UxRzJFSztJMEd4S047TTFCZUksb0JBQTJDLEUwQjhFOUMsRUFBQTtFQTdGRDtJQUlJLGM5Rm9GcUQ7SThGbkZyRCxXQUFTO0lBQ1QsWUFBVTtJQUNWLGlCQUFlO0lBQ2YsbUJBQWtCLEVBa0JwQjtJQTFCRjtNQVVNLG1CQUFrQjtNQUNsQixZQUFXO01BQ1gsdUN2R21FdUI7TXVHbEV2QixPQUFNO01BQ04sVUFBUztNQUNULFNBQVE7TUFDUixRQUFPO01BQ1AsV0FBUyxFQUNWO0lBbEJMO01BcUJNLGtCQUFpQjtNQUNqQixZQUFVO01BQ1YsYUFBVztNQUNYLGVBQWEsRUFDZDtFQXpCTDtJQWlDSSxtQkFBa0I7SUFDbEIsV0FBUztJQUlULHlDQUF3QztRQUF4QyxxQ0FBd0M7WUFBeEMsaUNBQXdDO0lBQ3hDLHlCQUE4QixFQUsvQjtJMUd1SEc7TTBHbktOO1FBeUNNLDJDQUF5QztZQUF6Qyx1Q0FBeUM7Z0JBQXpDLG1DQUF5QztRQUN6QywyQkFBK0IsRUFFbEMsRUFBQTtFQTVDSDtJQThDSSxtQkFBa0I7SUFDbEIsV0FBVTtJQUNWLFlBQVUsRUFhWDtJQTdESDtNQWtETSxZQUFVO01BQ1YsNkN2RzBEUztNdUd6RFQsb0J2R3lHd0I7TXVHeEd4QixvQkFBbUI7TUFDbkIsMEJ2RzJDUztNNkUxRGIsa0JBQWdCO01BQ2hCLG1CQUFpQjtNQUNqQixlQUhpQztNMEJrQjdCLGdCOUZnQ21ELEU4RjVCcEQ7TTFHdUdDO1EwR25LTjtVQTBEUSxrQjlGOEJpRCxFOEY1QnBELEVBQUE7RUE1REw7STFCZUksb0JBQTJDLEUwQmtENUM7STFHa0dHO00wR25LTjtRMUJlSSxxQkFBMkMsRTBCa0Q1QyxFQUFBO0kxR2tHRztNMEduS047UTFCZUksb0JBQTJDLEUwQmtENUMsRUFBQTtJMUd1R0c7TTBHeEtOO1ExQmVJLG1CQUEyQyxFMEJrRDVDLEVBQUE7STFHdUdHO00wR3hLTjtRMUJlSSxtQkFBMkMsRTBCa0Q1QyxFQUFBO0VBakVIO0lBbUVJLGVBQWM7SUFDZCxtQkFBa0IsRUFRbkI7SUE1RUg7TUF1RU0sc0JBQXFCLEVBQ3RCO0lBeEVMO01BMEVNLHVCQUFzQixFQUN2QjtFMUc2RkM7STBHeEtOO01BaUZLLHdCQUF1QixFQUV4QixFQUFBO0UxR3FGRTtJMEd4S047TUF5RkssWUFBVyxFQUVaLEVBQUE7O0ExRzZFRTtFMkdySU47STNCM0JJLG9CQUFvQztJQUNwQyx1QkFBdUMsRTJCK0kxQyxFQUFBO0UzR1dLO0kyR2hJTjtNM0IzQkkscUJBQW9DO01BQ3BDLHdCQUF1QyxFMkIrSTFDLEVBQUE7RTNHV0s7STJHaElOO00zQjNCSSxvQkFBb0M7TUFDcEMsdUJBQXVDLEUyQitJMUMsRUFBQTtFM0dnQks7STJHcklOO00zQjNCSSxrQkFBb0M7TUFDcEMscUJBQXVDLEUyQitJMUMsRUFBQTtFM0dnQks7STJHcklOO00zQjNCSSxrQkFBb0M7TUFDcEMscUJBQXVDLEUyQitJMUMsRUFBQTs7QTNHV0s7RTJHaElOO0kzQnBCSSxxQkFBMkM7SUFBM0MsdUJBQTJDLEUyQnlJOUMsRUFBQTtFM0dXSztJMkdoSU47TTNCcEJJLHNCQUEyQyxFMkJ5STlDLEVBQUE7RTNHV0s7STJHaElOO00zQnBCSSxxQkFBMkMsRTJCeUk5QyxFQUFBO0UzR2dCSztJMkdySU47TTNCcEJJLG9CQUEyQyxFMkJ5STlDLEVBQUE7RTNHZ0JLO0kyR3JJTjtNM0JwQkksb0JBQTJDLEUyQnlJOUMsRUFBQTtFM0dXSztJMkdoSU47TTNCcEJJLHdCQUEyQyxFMkJ5STlDLEVBQUE7RTNHV0s7STJHaElOO00zQnBCSSx1QkFBMkMsRTJCeUk5QyxFQUFBO0UzR2dCSztJMkdySU47TTNCcEJJLHFCQUEyQyxFMkJ5STlDLEVBQUE7RTNHZ0JLO0kyR3JJTjtNM0JwQkkscUJBQTJDLEUyQnlJOUMsRUFBQTs7QUFySEQ7RUFTSSw0QkFBbUI7TUFBbkIsdUJBQW1CO1VBQW5CLG9CQUFtQixFQUNwQjs7QUFWSDtFQW1CTSxtQnhHazRCTyxFd0doNEJWO0UzR2dIRztJMkdySU47TUFnQk0sZ0JBQWMsRUFLakIsRUFBQTtFM0cyR0c7STJHaElOO01BbUJNLG1CeEdtNEJRLEV3R2o0QlgsRUFBQTtFM0cyR0c7STJHaElOO01BbUJNLG1CeEdvNEJPLEV3R2w0QlYsRUFBQTtFM0dnSEc7STJHcklOO01BbUJNLG1CeEdxNEJRLEV3R240QlgsRUFBQTtFM0dnSEc7STJHcklOO01BbUJNLG1CeEdzNEJTLEV3R3A0QlosRUFBQTs7QUFyQkg7RUFpQ00sb0J4R28zQk8sRXdHLzFCVjtFM0crRUc7STJHcklOO01BeUJNLGlCQUFlLEVBNkJsQixFQUFBO0UzRzBFRztJMkdoSU47TUE0Qk0sc0JBQWE7TUFBYixxQkFBYTtNQUFiLGNBQWE7TUFDYiwwQkFBaUI7VUFBakIsc0JBQWlCO2NBQWpCLGtCQUFpQjtNQUNqQiw4QkFBcUI7VUFBckIsb0JBQXFCO2NBQXJCLHNCQUFxQixFQXdCeEIsRUFBQTtFM0cwRUc7STJHaElOO01BaUNNLG9CeEdxM0JRLEV3R2gyQlgsRUFBQTtFM0cwRUc7STJHaElOO01BaUNNLG9CeEdzM0JPLEV3R2oyQlYsRUFBQTtFM0crRUc7STJHcklOO01BaUNNLG9CeEd1M0JRLEV3R2wyQlgsRUFBQTtFM0crRUc7STJHcklOO01BaUNNLG9CeEd3M0JTLEV3R24yQlosRUFBQTtFM0cwRUc7STJHaElOO01BdUNZLFdBQVM7TUFDVCxrQkFBZ0I7TUFDaEIsZ0JBQWMsRUFDZixFQUFBO0VBMUNYO0lBa0RVLG9CQUFnQyxFQUVuQztJM0dpRkQ7TTJHcklOO1EzQnBCSSxzQkFBMkMsRTJCd0V4QyxFQUFBO0UzRzRFRDtJMkdoSU47TTNCcEJJLHdCQUEyQyxFMkJ3RXhDLEVBQUE7RTNHNEVEO0kyR2hJTjtNM0JwQkksdUJBQTJDLEUyQndFeEMsRUFBQTtFM0dpRkQ7STJHcklOO00zQnBCSSxzQkFBMkMsRTJCd0V4QyxFQUFBO0UzR2lGRDtJMkdySU47TTNCcEJJLHNCQUEyQyxFMkJ3RXhDLEVBQUE7STNHNEVEO00yR2hJTjtRQWtEVSxvQkFBZ0MsRUFFbkMsRUFBQTtJM0c0RUQ7TTJHaElOO1FBa0RVLG9CQUFnQyxFQUVuQyxFQUFBO0kzR2lGRDtNMkdySU47UUFrRFUsb0JBQWdDLEVBRW5DLEVBQUE7STNHaUZEO00yR3JJTjtRQWtEVSxvQkFBZ0MsRUFFbkMsRUFBQTs7QUFwRFA7RUF3REksWUFBVSxFQUNYOztBQXpESDtFQTJESSxvQnhHK0QwQjtFd0c5RDFCLGtCQUFpQjtFQUNqQiw2Q3hHYVc7RXdHWlgsZUFBYTtFQUNiLFlBQVc7RUFDWCxhQUFZLEVBV2I7RUEzRUg7SUFUSSxrQi9GOERxRCxFK0ZjcEQ7STNHNkRDO00yR2hJTjtRQVBJLGtCL0Y0RHFELEUrRmNwRCxFQUFBO0kzRzZEQztNMkdoSU47UUFKSSxpQi9GeURxRCxFK0ZjcEQsRUFBQTtFQW5FTDtJQVRJLGtCL0Y4RHFELEUrRmlCcEQ7STNHMERDO00yR2hJTjtRQVBJLGtCL0Y0RHFELEUrRmlCcEQsRUFBQTtJM0cwREM7TTJHaElOO1FBSkksaUIvRnlEcUQsRStGaUJwRCxFQUFBO0VBdEVMO0lBVEksa0IvRjhEcUQsRStGcUJwRDtJM0dzREM7TTJHaElOO1FBUEksaUIvRjREcUQsRStGcUJwRCxFQUFBO0kzR3NEQztNMkdoSU47UUFKSSxpQi9GeURxRCxFK0ZxQnBELEVBQUE7O0FBMUVMO0UzQnBCSSxxQkFBMkM7RTJCbUc3QyxtQkFBa0I7RUFHZCxtQnhHbTBCTyxFd0dqeUJYO0UzR1lJO0kyR2hJTjtNM0JwQkksc0JBQTJDLEUyQndJN0MsRUFBQTtFM0dZSTtJMkdoSU47TTNCcEJJLHFCQUEyQyxFMkJ3STdDLEVBQUE7RTNHaUJJO0kyR3JJTjtNM0JwQkksb0JBQTJDLEUyQndJN0MsRUFBQTtFM0dpQkk7STJHcklOO00zQnBCSSxvQkFBMkMsRTJCd0k3QyxFQUFBO0UzR1lJO0kyR2hJTjtNQWtGTSxtQnhHbzBCUSxFd0dseUJaLEVBQUE7RTNHWUk7STJHaElOO01Ba0ZNLG1CeEdxMEJPLEV3R255QlgsRUFBQTtFM0dpQkk7STJHcklOO01Ba0ZNLG1CeEdzMEJRLEV3R3B5QlosRUFBQTtFM0dpQkk7STJHcklOO01Ba0ZNLG1CeEd1MEJTLEV3R3J5QmIsRUFBQTtFM0dpQkk7STJHcklOO01Bc0ZNLGdCQUFjLEVBOEJsQixFQUFBO0UzR1lJO0kyR2hJTjtNM0JwQkksc0JBQTJDLEUyQndJN0MsRUFBQTtFM0dZSTtJMkdoSU47TTNCcEJJLHVCQUEyQyxFMkJ3STdDLEVBQUE7RTNHWUk7STJHaElOO00zQnBCSSxzQkFBMkMsRTJCd0k3QyxFQUFBO0UzR2lCSTtJMkdySU47TTNCcEJJLHFCQUEyQyxFMkJ3STdDLEVBQUE7RTNHaUJJO0kyR3JJTjtNM0JwQkkscUJBQTJDLEUyQndJN0MsRUFBQTtFM0dZSTtJMkdoSU47TUE0Rk0sZUFBYTtNQUloQiwwQ0FBb0M7VUFBcEMsc0NBQW9DO2NBQXBDLGtDQUFvQztNQUVqQywwQkFBNEIsRUFrQmhDLEVBQUE7RTNHaUJJO0kyR3JJTjtNQXNHSSxlQUFjO01BQ2QsbUJBQWtCLEVBWW5CLEVBQUE7RUFuSEg7SUEyR0ksc0JBQXFCLEVBSXJCO0kzR2lCRTtNMkdoSU47UUE2R0ssbUJBQWtCLEVBRW5CLEVBQUE7RUEvR0o7SUFpSEksdUJBQXNCLEVBQ3RCOztBQ3JKSjtFQUNDLG1CQUFrQjtFNUJjZixxQkFBMkM7RUFBM0Msc0JBQTJDLEU0Qk85QztFNUc2SUs7STRHbktOO001QmVJLHNCQUEyQyxFNEJPOUMsRUFBQTtFNUc2SUs7STRHbktOO001QmVJLHFCQUEyQyxFNEJPOUMsRUFBQTtFNUdrSks7STRHeEtOO001QmVJLG9CQUEyQyxFNEJPOUMsRUFBQTtFNUdrSks7STRHeEtOO001QmVJLG9CQUEyQyxFNEJPOUMsRUFBQTtFNUc2SUs7STRHbktOO001QmVJLHNCQUEyQyxFNEJPOUMsRUFBQTtFNUc2SUs7STRHbktOO001QmVJLHNCQUEyQyxFNEJPOUMsRUFBQTtFNUdrSks7STRHeEtOO001QmVJLHNCQUEyQyxFNEJPOUMsRUFBQTtFNUdrSks7STRHeEtOO001QmVJLHNC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N0htR0M7TTZIbktOO1FBOERRLGlCQUFlLEVBRWxCLEVBQUE7RUFoRUw7SUFvRU0saUIxSHdHcUI7STBIdkdyQixpQkFBZSxFQUNoQjs7QTdIa0dDO0U4SHhLTjtJQUtJLGlCQUFnQixFQUNoQixFQUFBOztBOUg2SkU7RThIbktOO0k5Q2VJLHFCQUEyQyxFOENzQjlDLEVBQUE7RTlIOEhLO0k4SG5LTjtNOUNlSSxzQkFBMkMsRThDc0I5QyxFQUFBO0U5SDhISztJOEhuS047TTlDZUkscUJBQTJDLEU4Q3NCOUMsRUFBQTtFOUhtSUs7SThIeEtOO005Q2VJLG9CQUEyQyxFOENzQjlDLEVBQUE7RTlIbUlLO0k4SHhLTjtNOUNlSSxvQkFBMkMsRThDc0I5QyxFQUFBOztBOUhtSUs7RThIeEtOO0lBZ0JJLG9CQUFtQixFQUtwQixFQUFBOztBOUg4SUc7RThIbktOO0k5Q2VJLHVCQUEyQyxFOENNNUMsRUFBQTtFOUg4SUc7SThIbktOO005Q2VJLHdCQUEyQyxFOENNNUMsRUFBQTtFOUg4SUc7SThIbktOO005Q2VJLHVCQUEyQyxFOENNNUMsRUFBQTtFOUhtSkc7SThIeEtOO005Q2VJLHNCQUEyQyxFOENNNUMsRUFBQTtFOUhtSkc7SThIeEtOO005Q2VJLHNCQUEyQyxFOENNNUMsRUFBQTs7QUFyQkg7RUF5QkUsaUJBQWdCLEVBSWhCO0U5SHNJSTtJOEhuS047TUEyQkcsY0FBYSxFQUVkLEVBQUE7O0FBN0JGO0VBZ0NFLGUzSGtEa0I7RTZFbkVoQixzQkFBMkM7RThDbUI3QyxtQkFBa0IsRUFFbEI7RTlIK0hJO0k4SG5LTjtNOUNlSSwwQkFBMkMsRThDcUI3QyxFQUFBO0U5SCtISTtJOEhuS047TTlDZUksc0JBQTJDLEU4Q3FCN0MsRUFBQTtFOUhvSUk7SThIeEtOO005Q2VJLG9CQUEyQyxFOENxQjdDLEVBQUE7RTlIb0lJO0k4SHhLTjtNOUNlSSxvQkFBMkMsRThDcUI3QyxFQUFBOztBQ3BDRjtFQUNDLGFBQVk7RUFDWixxQkFBb0I7RUFDcEIsc0JBQWE7RUFBYixxQkFBYTtFQUFiLGNBQWE7RUFDYiw0QkFBbUI7TUFBbkIsdUJBQW1CO1VBQW5CLG9CQUFtQjtFQUNuQixtQkFBa0IsRUF5QmxCO0VBOUJEO0lBUUUsZUFBYyxFQUNkO0VBVEY7SUFhRSwwQkFBeUI7SUFDekIsc0JBQXFCLEVBQ3JCO0VBZkY7SUFrQkUsb0JBQW1CLEVBQ25CO0VBbkJGO0lBcUJFLG9CQUFtQixFQUNuQjtFQXRCRjtJQXdCRSxlNUg4RWlCLEU0SDdFakI7RUF6QkY7SUEyQkUsZTVIa0RpQixFNEhqRGpCIiwiZmlsZSI6ImFwcC5jc3MiLCJzb3VyY2VzQ29udGVudCI6WyJAY2hhcnNldCBcIlVURi04XCI7XG4vKipcbiAqIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbiAqIFZlcnNpb24gNi40LjNcbiAqIGZvdW5kYXRpb24uenVyYi5jb21cbiAqIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuICovXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAucmV2ZWFsLCAucmV2ZWFsLnRpbnksIC5yZXZlYWwuc21hbGwsIC5yZXZlYWwubGFyZ2Uge1xuICAgIHJpZ2h0OiBhdXRvO1xuICAgIGxlZnQ6IGF1dG87XG4gICAgbWFyZ2luOiAwIGF1dG87IH0gfVxuXG4ubXQtMCB7XG4gIG1hcmdpbi10b3A6IDAgIWltcG9ydGFudDsgfVxuXG4ubXItMCB7XG4gIG1hcmdpbi1yaWdodDogMCAhaW1wb3J0YW50OyB9XG5cbi5tYi0wIHtcbiAgbWFyZ2luLWJvdHRvbTogMCAhaW1wb3J0YW50OyB9XG5cbi5tbC0wIHtcbiAgbWFyZ2luLWxlZnQ6IDAgIWltcG9ydGFudDsgfVxuXG4ubWFsbC0wIHtcbiAgbWFyZ2luLWFsbDogMCAhaW1wb3J0YW50OyB9XG5cbi5wdC0wIHtcbiAgcGFkZGluZy10b3A6IDAgIWltcG9ydGFudDsgfVxuXG4ucHItMCB7XG4gIHBhZGRpbmctcmlnaHQ6IDAgIWltcG9ydGFudDsgfVxuXG4ucGItMCB7XG4gIHBhZGRpbmctYm90dG9tOiAwICFpbXBvcnRhbnQ7IH1cblxuLnBsLTAge1xuICBwYWRkaW5nLWxlZnQ6IDAgIWltcG9ydGFudDsgfVxuXG4ucGFsbC0wIHtcbiAgcGFkZGluZy1hbGw6IDAgIWltcG9ydGFudDsgfVxuXG4ubXQtMCB7XG4gIG1hcmdpbi10b3A6IDAgIWltcG9ydGFudDsgfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAubXQtbGFyZ2UtMCB7XG4gICAgbWFyZ2luLXRvcDogMCAhaW1wb3J0YW50OyB9IH1cblxuLm1yLTAge1xuICBtYXJnaW4tcmlnaHQ6IDAgIWltcG9ydGFudDsgfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAubXItbGFyZ2UtMCB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwICFpbXBvcnRhbnQ7IH0gfVxuXG4ubWItMCB7XG4gIG1hcmdpbi1ib3R0b206IDAgIWltcG9ydGFudDsgfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAubWItbGFyZ2UtMCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMCAhaW1wb3J0YW50OyB9IH1cblxuLm1sLTAge1xuICBtYXJnaW4tbGVmdDogMCAhaW1wb3J0YW50OyB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5tbC1sYXJnZS0wIHtcbiAgICBtYXJnaW4tbGVmdDogMCAhaW1wb3J0YW50OyB9IH1cblxuLm1hbGwtMCB7XG4gIG1hcmdpbi1hbGw6IDAgIWltcG9ydGFudDsgfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAubWFsbC1sYXJnZS0wIHtcbiAgICBtYXJnaW4tYWxsOiAwICFpbXBvcnRhbnQ7IH0gfVxuXG4ucHQtMCB7XG4gIHBhZGRpbmctdG9wOiAwICFpbXBvcnRhbnQ7IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLnB0LWxhcmdlLTAge1xuICAgIHBhZGRpbmctdG9wOiAwICFpbXBvcnRhbnQ7IH0gfVxuXG4ucHItMCB7XG4gIHBhZGRpbmctcmlnaHQ6IDAgIWltcG9ydGFudDsgfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAucHItbGFyZ2UtMCB7XG4gICAgcGFkZGluZy1yaWdodDogMCAhaW1wb3J0YW50OyB9IH1cblxuLnBiLTAge1xuICBwYWRkaW5nLWJvdHRvbTogMCAhaW1wb3J0YW50OyB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5wYi1sYXJnZS0wIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogMCAhaW1wb3J0YW50OyB9IH1cblxuLnBsLTAge1xuICBwYWRkaW5nLWxlZnQ6IDAgIWltcG9ydGFudDsgfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAucGwtbGFyZ2UtMCB7XG4gICAgcGFkZGluZy1sZWZ0OiAwICFpbXBvcnRhbnQ7IH0gfVxuXG4ucGFsbC0wIHtcbiAgcGFkZGluZy1hbGw6IDAgIWltcG9ydGFudDsgfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAucGFsbC1sYXJnZS0wIHtcbiAgICBwYWRkaW5nLWFsbDogMCAhaW1wb3J0YW50OyB9IH1cblxuLm10LTEge1xuICBtYXJnaW4tdG9wOiAxLjA5Mzc1cmVtOyB9XG5cbi5tci0xIHtcbiAgbWFyZ2luLXJpZ2h0OiAxLjA5Mzc1cmVtOyB9XG5cbi5tYi0xIHtcbiAgbWFyZ2luLWJvdHRvbTogMS4wOTM3NXJlbTsgfVxuXG4ubWwtMSB7XG4gIG1hcmdpbi1sZWZ0OiAxLjA5Mzc1cmVtOyB9XG5cbi5tYWxsLTEge1xuICBtYXJnaW4tYWxsOiAxLjA5Mzc1cmVtOyB9XG5cbi5wdC0xIHtcbiAgcGFkZGluZy10b3A6IDEuMDkzNzVyZW07IH1cblxuLnByLTEge1xuICBwYWRkaW5nLXJpZ2h0OiAxLjA5Mzc1cmVtOyB9XG5cbi5wYi0xIHtcbiAgcGFkZGluZy1ib3R0b206IDEuMDkzNzVyZW07IH1cblxuLnBsLTEge1xuICBwYWRkaW5nLWxlZnQ6IDEuMDkzNzVyZW07IH1cblxuLnBhbGwtMSB7XG4gIHBhZGRpbmctYWxsOiAxLjA5Mzc1cmVtOyB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5tdC0xIHtcbiAgICBtYXJnaW4tdG9wOiAwLjc4MTI1cmVtOyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5tdC1tZWRpdW0tMSB7XG4gICAgbWFyZ2luLXRvcDogMC43ODEyNXJlbSAhaW1wb3J0YW50OyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLm1yLTEge1xuICAgIG1hcmdpbi1yaWdodDogMC43ODEyNXJlbTsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAubXItbWVkaXVtLTEge1xuICAgIG1hcmdpbi1yaWdodDogMC43ODEyNXJlbSAhaW1wb3J0YW50OyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLm1iLTEge1xuICAgIG1hcmdpbi1ib3R0b206IDAuNzgxMjVyZW07IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkgYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLm1iLW1lZGl1bS0xIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwLjc4MTI1cmVtICFpbXBvcnRhbnQ7IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAubWwtMSB7XG4gICAgbWFyZ2luLWxlZnQ6IDAuNzgxMjVyZW07IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkgYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLm1sLW1lZGl1bS0xIHtcbiAgICBtYXJnaW4tbGVmdDogMC43ODEyNXJlbSAhaW1wb3J0YW50OyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLm1hbGwtMSB7XG4gICAgbWFyZ2luLWFsbDogMC43ODEyNXJlbTsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAubWFsbC1tZWRpdW0tMSB7XG4gICAgbWFyZ2luLWFsbDogMC43ODEyNXJlbSAhaW1wb3J0YW50OyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLnB0LTEge1xuICAgIHBhZGRpbmctdG9wOiAwLjc4MTI1cmVtOyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5wdC1tZWRpdW0tMSB7XG4gICAgcGFkZGluZy10b3A6IDAuNzgxMjVyZW0gIWltcG9ydGFudDsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5wci0xIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjc4MTI1cmVtOyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5wci1tZWRpdW0tMSB7XG4gICAgcGFkZGluZy1yaWdodDogMC43ODEyNXJlbSAhaW1wb3J0YW50OyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLnBiLTEge1xuICAgIHBhZGRpbmctYm90dG9tOiAwLjc4MTI1cmVtOyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5wYi1tZWRpdW0tMSB7XG4gICAgcGFkZGluZy1ib3R0b206IDAuNzgxMjVyZW0gIWltcG9ydGFudDsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5wbC0xIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDAuNzgxMjVyZW07IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkgYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLnBsLW1lZGl1bS0xIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDAuNzgxMjVyZW0gIWltcG9ydGFudDsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5wYWxsLTEge1xuICAgIHBhZGRpbmctYWxsOiAwLjc4MTI1cmVtOyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5wYWxsLW1lZGl1bS0xIHtcbiAgICBwYWRkaW5nLWFsbDogMC43ODEyNXJlbSAhaW1wb3J0YW50OyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLm10LTEge1xuICAgIG1hcmdpbi10b3A6IDAuNzgxMjVyZW07IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkgYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLm10LWxhcmdlLTEge1xuICAgIG1hcmdpbi10b3A6IDAuNzgxMjVyZW0gIWltcG9ydGFudDsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5tci0xIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDAuNzgxMjVyZW07IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkgYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLm1yLWxhcmdlLTEge1xuICAgIG1hcmdpbi1yaWdodDogMC43ODEyNXJlbSAhaW1wb3J0YW50OyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLm1iLTEge1xuICAgIG1hcmdpbi1ib3R0b206IDAuNzgxMjVyZW07IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkgYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLm1iLWxhcmdlLTEge1xuICAgIG1hcmdpbi1ib3R0b206IDAuNzgxMjVyZW0gIWltcG9ydGFudDsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5tbC0xIHtcbiAgICBtYXJnaW4tbGVmdDogMC43ODEyNXJlbTsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAubWwtbGFyZ2UtMSB7XG4gICAgbWFyZ2luLWxlZnQ6IDAuNzgxMjVyZW0gIWltcG9ydGFudDsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5tYWxsLTEge1xuICAgIG1hcmdpbi1hbGw6IDAuNzgxMjVyZW07IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkgYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLm1hbGwtbGFyZ2UtMSB7XG4gICAgbWFyZ2luLWFsbDogMC43ODEyNXJlbSAhaW1wb3J0YW50OyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLnB0LTEge1xuICAgIHBhZGRpbmctdG9wOiAwLjc4MTI1cmVtOyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5wdC1sYXJnZS0xIHtcbiAgICBwYWRkaW5nLXRvcDogMC43ODEyNXJlbSAhaW1wb3J0YW50OyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLnByLTEge1xuICAgIHBhZGRpbmctcmlnaHQ6IDAuNzgxMjVyZW07IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkgYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLnByLWxhcmdlLTEge1xuICAgIHBhZGRpbmctcmlnaHQ6IDAuNzgxMjVyZW0gIWltcG9ydGFudDsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5wYi0xIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogMC43ODEyNXJlbTsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAucGItbGFyZ2UtMSB7XG4gICAgcGFkZGluZy1ib3R0b206IDAuNzgxMjVyZW0gIWltcG9ydGFudDsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5wbC0xIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDAuNzgxMjVyZW07IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkgYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLnBsLWxhcmdlLTEge1xuICAgIHBhZGRpbmctbGVmdDogMC43ODEyNXJlbSAhaW1wb3J0YW50OyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLnBhbGwtMSB7XG4gICAgcGFkZGluZy1hbGw6IDAuNzgxMjVyZW07IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkgYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLnBhbGwtbGFyZ2UtMSB7XG4gICAgcGFkZGluZy1hbGw6IDAuNzgxMjVyZW0gIWltcG9ydGFudDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgLm10LTEge1xuICAgIG1hcmdpbi10b3A6IDAuOTM3NXJlbTsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gIC5tdC14bGFyZ2UtMSB7XG4gICAgbWFyZ2luLXRvcDogMC45Mzc1cmVtICFpbXBvcnRhbnQ7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gIC5tci0xIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDAuOTM3NXJlbTsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gIC5tci14bGFyZ2UtMSB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwLjkzNzVyZW0gIWltcG9ydGFudDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgLm1iLTEge1xuICAgIG1hcmdpbi1ib3R0b206IDAuOTM3NXJlbTsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gIC5tYi14bGFyZ2UtMSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMC45Mzc1cmVtICFpbXBvcnRhbnQ7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gIC5tbC0xIHtcbiAgICBtYXJnaW4tbGVmdDogMC45Mzc1cmVtOyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkgYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgLm1sLXhsYXJnZS0xIHtcbiAgICBtYXJnaW4tbGVmdDogMC45Mzc1cmVtICFpbXBvcnRhbnQ7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gIC5tYWxsLTEge1xuICAgIG1hcmdpbi1hbGw6IDAuOTM3NXJlbTsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gIC5tYWxsLXhsYXJnZS0xIHtcbiAgICBtYXJnaW4tYWxsOiAwLjkzNzVyZW0gIWltcG9ydGFudDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgLnB0LTEge1xuICAgIHBhZGRpbmctdG9wOiAwLjkzNzVyZW07IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAucHQteGxhcmdlLTEge1xuICAgIHBhZGRpbmctdG9wOiAwLjkzNzVyZW0gIWltcG9ydGFudDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgLnByLTEge1xuICAgIHBhZGRpbmctcmlnaHQ6IDAuOTM3NXJlbTsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gIC5wci14bGFyZ2UtMSB7XG4gICAgcGFkZGluZy1yaWdodDogMC45Mzc1cmVtICFpbXBvcnRhbnQ7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gIC5wYi0xIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogMC45Mzc1cmVtOyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkgYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgLnBiLXhsYXJnZS0xIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogMC45Mzc1cmVtICFpbXBvcnRhbnQ7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gIC5wbC0xIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDAuOTM3NXJlbTsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gIC5wbC14bGFyZ2UtMSB7XG4gICAgcGFkZGluZy1sZWZ0OiAwLjkzNzVyZW0gIWltcG9ydGFudDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgLnBhbGwtMSB7XG4gICAgcGFkZGluZy1hbGw6IDAuOTM3NXJlbTsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gIC5wYWxsLXhsYXJnZS0xIHtcbiAgICBwYWRkaW5nLWFsbDogMC45Mzc1cmVtICFpbXBvcnRhbnQ7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5MGVtKSB7XG4gIC5tdC0xIHtcbiAgICBtYXJnaW4tdG9wOiAwLjkzNzVyZW07IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5MGVtKSBhbmQgKG1pbi13aWR0aDogOTBlbSkge1xuICAubXQteHhsYXJnZS0xIHtcbiAgICBtYXJnaW4tdG9wOiAwLjkzNzVyZW0gIWltcG9ydGFudDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDkwZW0pIHtcbiAgLm1yLTEge1xuICAgIG1hcmdpbi1yaWdodDogMC45Mzc1cmVtOyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTBlbSkgYW5kIChtaW4td2lkdGg6IDkwZW0pIHtcbiAgLm1yLXh4bGFyZ2UtMSB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwLjkzNzVyZW0gIWltcG9ydGFudDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDkwZW0pIHtcbiAgLm1iLTEge1xuICAgIG1hcmdpbi1ib3R0b206IDAuOTM3NXJlbTsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDkwZW0pIGFuZCAobWluLXdpZHRoOiA5MGVtKSB7XG4gIC5tYi14eGxhcmdlLTEge1xuICAgIG1hcmdpbi1ib3R0b206IDAuOTM3NXJlbSAhaW1wb3J0YW50OyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTBlbSkge1xuICAubWwtMSB7XG4gICAgbWFyZ2luLWxlZnQ6IDAuOTM3NXJlbTsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDkwZW0pIGFuZCAobWluLXdpZHRoOiA5MGVtKSB7XG4gIC5tbC14eGxhcmdlLTEge1xuICAgIG1hcmdpbi1sZWZ0OiAwLjkzNzVyZW0gIWltcG9ydGFudDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDkwZW0pIHtcbiAgLm1hbGwtMSB7XG4gICAgbWFyZ2luLWFsbDogMC45Mzc1cmVtOyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTBlbSkgYW5kIChtaW4td2lkdGg6IDkwZW0pIHtcbiAgLm1hbGwteHhsYXJnZS0xIHtcbiAgICBtYXJnaW4tYWxsOiAwLjkzNzVyZW0gIWltcG9ydGFudDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDkwZW0pIHtcbiAgLnB0LTEge1xuICAgIHBhZGRpbmctdG9wOiAwLjkzNzVyZW07IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5MGVtKSBhbmQgKG1pbi13aWR0aDogOTBlbSkge1xuICAucHQteHhsYXJnZS0xIHtcbiAgICBwYWRkaW5nLXRvcDogMC45Mzc1cmVtICFpbXBvcnRhbnQ7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5MGVtKSB7XG4gIC5wci0xIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjkzNzVyZW07IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5MGVtKSBhbmQgKG1pbi13aWR0aDogOTBlbSkge1xuICAucHIteHhsYXJnZS0xIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjkzNzVyZW0gIWltcG9ydGFudDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDkwZW0pIHtcbiAgLnBiLTEge1xuICAgIHBhZGRpbmctYm90dG9tOiAwLjkzNzVyZW07IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5MGVtKSBhbmQgKG1pbi13aWR0aDogOTBlbSkge1xuICAucGIteHhsYXJnZS0xIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogMC45Mzc1cmVtICFpbXBvcnRhbnQ7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5MGVtKSB7XG4gIC5wbC0xIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDAuOTM3NXJlbTsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDkwZW0pIGFuZCAobWluLXdpZHRoOiA5MGVtKSB7XG4gIC5wbC14eGxhcmdlLTEge1xuICAgIHBhZGRpbmctbGVmdDogMC45Mzc1cmVtICFpbXBvcnRhbnQ7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5MGVtKSB7XG4gIC5wYWxsLTEge1xuICAgIHBhZGRpbmctYWxsOiAwLjkzNzVyZW07IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5MGVtKSBhbmQgKG1pbi13aWR0aDogOTBlbSkge1xuICAucGFsbC14eGxhcmdlLTEge1xuICAgIHBhZGRpbmctYWxsOiAwLjkzNzVyZW0gIWltcG9ydGFudDsgfSB9XG5cbi5tdC0yIHtcbiAgbWFyZ2luLXRvcDogMi4xODc1cmVtOyB9XG5cbi5tci0yIHtcbiAgbWFyZ2luLXJpZ2h0OiAyLjE4NzVyZW07IH1cblxuLm1iLTIge1xuICBtYXJnaW4tYm90dG9tOiAyLjE4NzVyZW07IH1cblxuLm1sLTIge1xuICBtYXJnaW4tbGVmdDogMi4xODc1cmVtOyB9XG5cbi5tYWxsLTIge1xuICBtYXJnaW4tYWxsOiAyLjE4NzVyZW07IH1cblxuLnB0LTIge1xuICBwYWRkaW5nLXRvcDogMi4xODc1cmVtOyB9XG5cbi5wci0yIHtcbiAgcGFkZGluZy1yaWdodDogMi4xODc1cmVtOyB9XG5cbi5wYi0yIHtcbiAgcGFkZGluZy1ib3R0b206IDIuMTg3NXJlbTsgfVxuXG4ucGwtMiB7XG4gIHBhZGRpbmctbGVmdDogMi4xODc1cmVtOyB9XG5cbi5wYWxsLTIge1xuICBwYWRkaW5nLWFsbDogMi4xODc1cmVtOyB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5tdC0yIHtcbiAgICBtYXJnaW4tdG9wOiAxLjU2MjVyZW07IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkgYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLm10LW1lZGl1bS0yIHtcbiAgICBtYXJnaW4tdG9wOiAxLjU2MjVyZW0gIWltcG9ydGFudDsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5tci0yIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDEuNTYyNXJlbTsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAubXItbWVkaXVtLTIge1xuICAgIG1hcmdpbi1yaWdodDogMS41NjI1cmVtICFpbXBvcnRhbnQ7IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAubWItMiB7XG4gICAgbWFyZ2luLWJvdHRvbTogMS41NjI1cmVtOyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5tYi1tZWRpdW0tMiB7XG4gICAgbWFyZ2luLWJvdHRvbTogMS41NjI1cmVtICFpbXBvcnRhbnQ7IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAubWwtMiB7XG4gICAgbWFyZ2luLWxlZnQ6IDEuNTYyNXJlbTsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAubWwtbWVkaXVtLTIge1xuICAgIG1hcmdpbi1sZWZ0OiAxLjU2MjVyZW0gIWltcG9ydGFudDsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5tYWxsLTIge1xuICAgIG1hcmdpbi1hbGw6IDEuNTYyNXJlbTsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAubWFsbC1tZWRpdW0tMiB7XG4gICAgbWFyZ2luLWFsbDogMS41NjI1cmVtICFpbXBvcnRhbnQ7IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAucHQtMiB7XG4gICAgcGFkZGluZy10b3A6IDEuNTYyNXJlbTsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAucHQtbWVkaXVtLTIge1xuICAgIHBhZGRpbmctdG9wOiAxLjU2MjVyZW0gIWltcG9ydGFudDsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5wci0yIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAxLjU2MjVyZW07IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkgYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLnByLW1lZGl1bS0yIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAxLjU2MjVyZW0gIWltcG9ydGFudDsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5wYi0yIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogMS41NjI1cmVtOyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5wYi1tZWRpdW0tMiB7XG4gICAgcGFkZGluZy1ib3R0b206IDEuNTYyNXJlbSAhaW1wb3J0YW50OyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLnBsLTIge1xuICAgIHBhZGRpbmctbGVmdDogMS41NjI1cmVtOyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5wbC1tZWRpdW0tMiB7XG4gICAgcGFkZGluZy1sZWZ0OiAxLjU2MjVyZW0gIWltcG9ydGFudDsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5wYWxsLTIge1xuICAgIHBhZGRpbmctYWxsOiAxLjU2MjVyZW07IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkgYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLnBhbGwtbWVkaXVtLTIge1xuICAgIHBhZGRpbmctYWxsOiAxLjU2MjVyZW0gIWltcG9ydGFudDsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5tdC0yIHtcbiAgICBtYXJnaW4tdG9wOiAxLjU2MjVyZW07IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkgYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLm10LWxhcmdlLTIge1xuICAgIG1hcmdpbi10b3A6IDEuNTYyNXJlbSAhaW1wb3J0YW50OyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLm1yLTIge1xuICAgIG1hcmdpbi1yaWdodDogMS41NjI1cmVtOyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5tci1sYXJnZS0yIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDEuNTYyNXJlbSAhaW1wb3J0YW50OyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLm1iLTIge1xuICAgIG1hcmdpbi1ib3R0b206IDEuNTYyNXJlbTsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAubWItbGFyZ2UtMiB7XG4gICAgbWFyZ2luLWJvdHRvbTogMS41NjI1cmVtICFpbXBvcnRhbnQ7IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAubWwtMiB7XG4gICAgbWFyZ2luLWxlZnQ6IDEuNTYyNXJlbTsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAubWwtbGFyZ2UtMiB7XG4gICAgbWFyZ2luLWxlZnQ6IDEuNTYyNXJlbSAhaW1wb3J0YW50OyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLm1hbGwtMiB7XG4gICAgbWFyZ2luLWFsbDogMS41NjI1cmVtOyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5tYWxsLWxhcmdlLTIge1xuICAgIG1hcmdpbi1hbGw6IDEuNTYyNXJlbSAhaW1wb3J0YW50OyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLnB0LTIge1xuICAgIHBhZGRpbmctdG9wOiAxLjU2MjVyZW07IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkgYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLnB0LWxhcmdlLTIge1xuICAgIHBhZGRpbmctdG9wOiAxLjU2MjVyZW0gIWltcG9ydGFudDsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5wci0yIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAxLjU2MjVyZW07IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkgYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLnByLWxhcmdlLTIge1xuICAgIHBhZGRpbmctcmlnaHQ6IDEuNTYyNXJlbSAhaW1wb3J0YW50OyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLnBiLTIge1xuICAgIHBhZGRpbmctYm90dG9tOiAxLjU2MjVyZW07IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkgYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLnBiLWxhcmdlLTIge1xuICAgIHBhZGRpbmctYm90dG9tOiAxLjU2MjVyZW0gIWltcG9ydGFudDsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5wbC0yIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDEuNTYyNXJlbTsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAucGwtbGFyZ2UtMiB7XG4gICAgcGFkZGluZy1sZWZ0OiAxLjU2MjVyZW0gIWltcG9ydGFudDsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5wYWxsLTIge1xuICAgIHBhZGRpbmctYWxsOiAxLjU2MjVyZW07IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkgYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLnBhbGwtbGFyZ2UtMiB7XG4gICAgcGFkZGluZy1hbGw6IDEuNTYyNXJlbSAhaW1wb3J0YW50OyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAubXQtMiB7XG4gICAgbWFyZ2luLXRvcDogMS44NzVyZW07IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAubXQteGxhcmdlLTIge1xuICAgIG1hcmdpbi10b3A6IDEuODc1cmVtICFpbXBvcnRhbnQ7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gIC5tci0yIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDEuODc1cmVtOyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkgYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgLm1yLXhsYXJnZS0yIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDEuODc1cmVtICFpbXBvcnRhbnQ7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gIC5tYi0yIHtcbiAgICBtYXJnaW4tYm90dG9tOiAxLjg3NXJlbTsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gIC5tYi14bGFyZ2UtMiB7XG4gICAgbWFyZ2luLWJvdHRvbTogMS44NzVyZW0gIWltcG9ydGFudDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgLm1sLTIge1xuICAgIG1hcmdpbi1sZWZ0OiAxLjg3NXJlbTsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gIC5tbC14bGFyZ2UtMiB7XG4gICAgbWFyZ2luLWxlZnQ6IDEuODc1cmVtICFpbXBvcnRhbnQ7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gIC5tYWxsLTIge1xuICAgIG1hcmdpbi1hbGw6IDEuODc1cmVtOyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkgYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgLm1hbGwteGxhcmdlLTIge1xuICAgIG1hcmdpbi1hbGw6IDEuODc1cmVtICFpbXBvcnRhbnQ7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gIC5wdC0yIHtcbiAgICBwYWRkaW5nLXRvcDogMS44NzVyZW07IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAucHQteGxhcmdlLTIge1xuICAgIHBhZGRpbmctdG9wOiAxLjg3NXJlbSAhaW1wb3J0YW50OyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAucHItMiB7XG4gICAgcGFkZGluZy1yaWdodDogMS44NzVyZW07IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAucHIteGxhcmdlLTIge1xuICAgIHBhZGRpbmctcmlnaHQ6IDEuODc1cmVtICFpbXBvcnRhbnQ7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gIC5wYi0yIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogMS44NzVyZW07IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAucGIteGxhcmdlLTIge1xuICAgIHBhZGRpbmctYm90dG9tOiAxLjg3NXJlbSAhaW1wb3J0YW50OyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAucGwtMiB7XG4gICAgcGFkZGluZy1sZWZ0OiAxLjg3NXJlbTsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gIC5wbC14bGFyZ2UtMiB7XG4gICAgcGFkZGluZy1sZWZ0OiAxLjg3NXJlbSAhaW1wb3J0YW50OyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAucGFsbC0yIHtcbiAgICBwYWRkaW5nLWFsbDogMS44NzVyZW07IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAucGFsbC14bGFyZ2UtMiB7XG4gICAgcGFkZGluZy1hbGw6IDEuODc1cmVtICFpbXBvcnRhbnQ7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5MGVtKSB7XG4gIC5tdC0yIHtcbiAgICBtYXJnaW4tdG9wOiAxLjg3NXJlbTsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDkwZW0pIGFuZCAobWluLXdpZHRoOiA5MGVtKSB7XG4gIC5tdC14eGxhcmdlLTIge1xuICAgIG1hcmdpbi10b3A6IDEuODc1cmVtICFpbXBvcnRhbnQ7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5MGVtKSB7XG4gIC5tci0yIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDEuODc1cmVtOyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTBlbSkgYW5kIChtaW4td2lkdGg6IDkwZW0pIHtcbiAgLm1yLXh4bGFyZ2UtMiB7XG4gICAgbWFyZ2luLXJpZ2h0OiAxLjg3NXJlbSAhaW1wb3J0YW50OyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTBlbSkge1xuICAubWItMiB7XG4gICAgbWFyZ2luLWJvdHRvbTogMS44NzVyZW07IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5MGVtKSBhbmQgKG1pbi13aWR0aDogOTBlbSkge1xuICAubWIteHhsYXJnZS0yIHtcbiAgICBtYXJnaW4tYm90dG9tOiAxLjg3NXJlbSAhaW1wb3J0YW50OyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTBlbSkge1xuICAubWwtMiB7XG4gICAgbWFyZ2luLWxlZnQ6IDEuODc1cmVtOyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTBlbSkgYW5kIChtaW4td2lkdGg6IDkwZW0pIHtcbiAgLm1sLXh4bGFyZ2UtMiB7XG4gICAgbWFyZ2luLWxlZnQ6IDEuODc1cmVtICFpbXBvcnRhbnQ7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5MGVtKSB7XG4gIC5tYWxsLTIge1xuICAgIG1hcmdpbi1hbGw6IDEuODc1cmVtOyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTBlbSkgYW5kIChtaW4td2lkdGg6IDkwZW0pIHtcbiAgLm1hbGwteHhsYXJnZS0yIHtcbiAgICBtYXJnaW4tYWxsOiAxLjg3NXJlbSAhaW1wb3J0YW50OyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTBlbSkge1xuICAucHQtMiB7XG4gICAgcGFkZGluZy10b3A6IDEuODc1cmVtOyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTBlbSkgYW5kIChtaW4td2lkdGg6IDkwZW0pIHtcbiAgLnB0LXh4bGFyZ2UtMiB7XG4gICAgcGFkZGluZy10b3A6IDEuODc1cmVtICFpbXBvcnRhbnQ7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5MGVtKSB7XG4gIC5wci0yIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAxLjg3NXJlbTsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDkwZW0pIGFuZCAobWluLXdpZHRoOiA5MGVtKSB7XG4gIC5wci14eGxhcmdlLTIge1xuICAgIHBhZGRpbmctcmlnaHQ6IDEuODc1cmVtICFpbXBvcnRhbnQ7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5MGVtKSB7XG4gIC5wYi0yIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogMS44NzVyZW07IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5MGVtKSBhbmQgKG1pbi13aWR0aDogOTBlbSkge1xuICAucGIteHhsYXJnZS0yIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogMS44NzVyZW0gIWltcG9ydGFudDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDkwZW0pIHtcbiAgLnBsLTIge1xuICAgIHBhZGRpbmctbGVmdDogMS44NzVyZW07IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5MGVtKSBhbmQgKG1pbi13aWR0aDogOTBlbSkge1xuICAucGwteHhsYXJnZS0yIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDEuODc1cmVtICFpbXBvcnRhbnQ7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5MGVtKSB7XG4gIC5wYWxsLTIge1xuICAgIHBhZGRpbmctYWxsOiAxLjg3NXJlbTsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDkwZW0pIGFuZCAobWluLXdpZHRoOiA5MGVtKSB7XG4gIC5wYWxsLXh4bGFyZ2UtMiB7XG4gICAgcGFkZGluZy1hbGw6IDEuODc1cmVtICFpbXBvcnRhbnQ7IH0gfVxuXG4ubXQtMyB7XG4gIG1hcmdpbi10b3A6IDQuMzc1cmVtOyB9XG5cbi5tci0zIHtcbiAgbWFyZ2luLXJpZ2h0OiA0LjM3NXJlbTsgfVxuXG4ubWItMyB7XG4gIG1hcmdpbi1ib3R0b206IDQuMzc1cmVtOyB9XG5cbi5tbC0zIHtcbiAgbWFyZ2luLWxlZnQ6IDQuMzc1cmVtOyB9XG5cbi5tYWxsLTMge1xuICBtYXJnaW4tYWxsOiA0LjM3NXJlbTsgfVxuXG4ucHQtMyB7XG4gIHBhZGRpbmctdG9wOiA0LjM3NXJlbTsgfVxuXG4ucHItMyB7XG4gIHBhZGRpbmctcmlnaHQ6IDQuMzc1cmVtOyB9XG5cbi5wYi0zIHtcbiAgcGFkZGluZy1ib3R0b206IDQuMzc1cmVtOyB9XG5cbi5wbC0zIHtcbiAgcGFkZGluZy1sZWZ0OiA0LjM3NXJlbTsgfVxuXG4ucGFsbC0zIHtcbiAgcGFkZGluZy1hbGw6IDQuMzc1cmVtOyB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5tdC0zIHtcbiAgICBtYXJnaW4tdG9wOiAzLjEyNXJlbTsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAubXQtbWVkaXVtLTMge1xuICAgIG1hcmdpbi10b3A6IDMuMTI1cmVtICFpbXBvcnRhbnQ7IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAubXItMyB7XG4gICAgbWFyZ2luLXJpZ2h0OiAzLjEyNXJlbTsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAubXItbWVkaXVtLTMge1xuICAgIG1hcmdpbi1yaWdodDogMy4xMjVyZW0gIWltcG9ydGFudDsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5tYi0zIHtcbiAgICBtYXJnaW4tYm90dG9tOiAzLjEyNXJlbTsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAubWItbWVkaXVtLTMge1xuICAgIG1hcmdpbi1ib3R0b206IDMuMTI1cmVtICFpbXBvcnRhbnQ7IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAubWwtMyB7XG4gICAgbWFyZ2luLWxlZnQ6IDMuMTI1cmVtOyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5tbC1tZWRpdW0tMyB7XG4gICAgbWFyZ2luLWxlZnQ6IDMuMTI1cmVtICFpbXBvcnRhbnQ7IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAubWFsbC0zIHtcbiAgICBtYXJnaW4tYWxsOiAzLjEyNXJlbTsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAubWFsbC1tZWRpdW0tMyB7XG4gICAgbWFyZ2luLWFsbDogMy4xMjVyZW0gIWltcG9ydGFudDsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5wdC0zIHtcbiAgICBwYWRkaW5nLXRvcDogMy4xMjVyZW07IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkgYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLnB0LW1lZGl1bS0zIHtcbiAgICBwYWRkaW5nLXRvcDogMy4xMjVyZW0gIWltcG9ydGFudDsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5wci0zIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAzLjEyNXJlbTsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAucHItbWVkaXVtLTMge1xuICAgIHBhZGRpbmctcmlnaHQ6IDMuMTI1cmVtICFpbXBvcnRhbnQ7IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAucGItMyB7XG4gICAgcGFkZGluZy1ib3R0b206IDMuMTI1cmVtOyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5wYi1tZWRpdW0tMyB7XG4gICAgcGFkZGluZy1ib3R0b206IDMuMTI1cmVtICFpbXBvcnRhbnQ7IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAucGwtMyB7XG4gICAgcGFkZGluZy1sZWZ0OiAzLjEyNXJlbTsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAucGwtbWVkaXVtLTMge1xuICAgIHBhZGRpbmctbGVmdDogMy4xMjVyZW0gIWltcG9ydGFudDsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5wYWxsLTMge1xuICAgIHBhZGRpbmctYWxsOiAzLjEyNXJlbTsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAucGFsbC1tZWRpdW0tMyB7XG4gICAgcGFkZGluZy1hbGw6IDMuMTI1cmVtICFpbXBvcnRhbnQ7IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAubXQtMyB7XG4gICAgbWFyZ2luLXRvcDogMy4xMjVyZW07IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkgYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLm10LWxhcmdlLTMge1xuICAgIG1hcmdpbi10b3A6IDMuMTI1cmVtICFpbXBvcnRhbnQ7IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAubXItMyB7XG4gICAgbWFyZ2luLXJpZ2h0OiAzLjEyNXJlbTsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAubXItbGFyZ2UtMyB7XG4gICAgbWFyZ2luLXJpZ2h0OiAzLjEyNXJlbSAhaW1wb3J0YW50OyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLm1iLTMge1xuICAgIG1hcmdpbi1ib3R0b206IDMuMTI1cmVtOyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5tYi1sYXJnZS0zIHtcbiAgICBtYXJnaW4tYm90dG9tOiAzLjEyNXJlbSAhaW1wb3J0YW50OyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLm1sLTMge1xuICAgIG1hcmdpbi1sZWZ0OiAzLjEyNXJlbTsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAubWwtbGFyZ2UtMyB7XG4gICAgbWFyZ2luLWxlZnQ6IDMuMTI1cmVtICFpbXBvcnRhbnQ7IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAubWFsbC0zIHtcbiAgICBtYXJnaW4tYWxsOiAzLjEyNXJlbTsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAubWFsbC1sYXJnZS0zIHtcbiAgICBtYXJnaW4tYWxsOiAzLjEyNXJlbSAhaW1wb3J0YW50OyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLnB0LTMge1xuICAgIHBhZGRpbmctdG9wOiAzLjEyNXJlbTsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAucHQtbGFyZ2UtMyB7XG4gICAgcGFkZGluZy10b3A6IDMuMTI1cmVtICFpbXBvcnRhbnQ7IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAucHItMyB7XG4gICAgcGFkZGluZy1yaWdodDogMy4xMjVyZW07IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkgYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLnByLWxhcmdlLTMge1xuICAgIHBhZGRpbmctcmlnaHQ6IDMuMTI1cmVtICFpbXBvcnRhbnQ7IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAucGItMyB7XG4gICAgcGFkZGluZy1ib3R0b206IDMuMTI1cmVtOyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5wYi1sYXJnZS0zIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogMy4xMjVyZW0gIWltcG9ydGFudDsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5wbC0zIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDMuMTI1cmVtOyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5wbC1sYXJnZS0zIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDMuMTI1cmVtICFpbXBvcnRhbnQ7IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAucGFsbC0zIHtcbiAgICBwYWRkaW5nLWFsbDogMy4xMjVyZW07IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkgYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLnBhbGwtbGFyZ2UtMyB7XG4gICAgcGFkZGluZy1hbGw6IDMuMTI1cmVtICFpbXBvcnRhbnQ7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gIC5tdC0zIHtcbiAgICBtYXJnaW4tdG9wOiAzLjc1cmVtOyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkgYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgLm10LXhsYXJnZS0zIHtcbiAgICBtYXJnaW4tdG9wOiAzLjc1cmVtICFpbXBvcnRhbnQ7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gIC5tci0zIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDMuNzVyZW07IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAubXIteGxhcmdlLTMge1xuICAgIG1hcmdpbi1yaWdodDogMy43NXJlbSAhaW1wb3J0YW50OyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAubWItMyB7XG4gICAgbWFyZ2luLWJvdHRvbTogMy43NXJlbTsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gIC5tYi14bGFyZ2UtMyB7XG4gICAgbWFyZ2luLWJvdHRvbTogMy43NXJlbSAhaW1wb3J0YW50OyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAubWwtMyB7XG4gICAgbWFyZ2luLWxlZnQ6IDMuNzVyZW07IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAubWwteGxhcmdlLTMge1xuICAgIG1hcmdpbi1sZWZ0OiAzLjc1cmVtICFpbXBvcnRhbnQ7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gIC5tYWxsLTMge1xuICAgIG1hcmdpbi1hbGw6IDMuNzVyZW07IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAubWFsbC14bGFyZ2UtMyB7XG4gICAgbWFyZ2luLWFsbDogMy43NXJlbSAhaW1wb3J0YW50OyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAucHQtMyB7XG4gICAgcGFkZGluZy10b3A6IDMuNzVyZW07IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAucHQteGxhcmdlLTMge1xuICAgIHBhZGRpbmctdG9wOiAzLjc1cmVtICFpbXBvcnRhbnQ7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gIC5wci0zIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAzLjc1cmVtOyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkgYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgLnByLXhsYXJnZS0zIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAzLjc1cmVtICFpbXBvcnRhbnQ7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gIC5wYi0zIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogMy43NXJlbTsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gIC5wYi14bGFyZ2UtMyB7XG4gICAgcGFkZGluZy1ib3R0b206IDMuNzVyZW0gIWltcG9ydGFudDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgLnBsLTMge1xuICAgIHBhZGRpbmctbGVmdDogMy43NXJlbTsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gIC5wbC14bGFyZ2UtMyB7XG4gICAgcGFkZGluZy1sZWZ0OiAzLjc1cmVtICFpbXBvcnRhbnQ7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gIC5wYWxsLTMge1xuICAgIHBhZGRpbmctYWxsOiAzLjc1cmVtOyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkgYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgLnBhbGwteGxhcmdlLTMge1xuICAgIHBhZGRpbmctYWxsOiAzLjc1cmVtICFpbXBvcnRhbnQ7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5MGVtKSB7XG4gIC5tdC0zIHtcbiAgICBtYXJnaW4tdG9wOiAzLjc1cmVtOyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTBlbSkgYW5kIChtaW4td2lkdGg6IDkwZW0pIHtcbiAgLm10LXh4bGFyZ2UtMyB7XG4gICAgbWFyZ2luLXRvcDogMy43NXJlbSAhaW1wb3J0YW50OyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTBlbSkge1xuICAubXItMyB7XG4gICAgbWFyZ2luLXJpZ2h0OiAzLjc1cmVtOyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTBlbSkgYW5kIChtaW4td2lkdGg6IDkwZW0pIHtcbiAgLm1yLXh4bGFyZ2UtMyB7XG4gICAgbWFyZ2luLXJpZ2h0OiAzLjc1cmVtICFpbXBvcnRhbnQ7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5MGVtKSB7XG4gIC5tYi0zIHtcbiAgICBtYXJnaW4tYm90dG9tOiAzLjc1cmVtOyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTBlbSkgYW5kIChtaW4td2lkdGg6IDkwZW0pIHtcbiAgLm1iLXh4bGFyZ2UtMyB7XG4gICAgbWFyZ2luLWJvdHRvbTogMy43NXJlbSAhaW1wb3J0YW50OyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTBlbSkge1xuICAubWwtMyB7XG4gICAgbWFyZ2luLWxlZnQ6IDMuNzVyZW07IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5MGVtKSBhbmQgKG1pbi13aWR0aDogOTBlbSkge1xuICAubWwteHhsYXJnZS0zIHtcbiAgICBtYXJnaW4tbGVmdDogMy43NXJlbSAhaW1wb3J0YW50OyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTBlbSkge1xuICAubWFsbC0zIHtcbiAgICBtYXJnaW4tYWxsOiAzLjc1cmVtOyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTBlbSkgYW5kIChtaW4td2lkdGg6IDkwZW0pIHtcbiAgLm1hbGwteHhsYXJnZS0zIHtcbiAgICBtYXJnaW4tYWxsOiAzLjc1cmVtICFpbXBvcnRhbnQ7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5MGVtKSB7XG4gIC5wdC0zIHtcbiAgICBwYWRkaW5nLXRvcDogMy43NXJlbTsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDkwZW0pIGFuZCAobWluLXdpZHRoOiA5MGVtKSB7XG4gIC5wdC14eGxhcmdlLTMge1xuICAgIHBhZGRpbmctdG9wOiAzLjc1cmVtICFpbXBvcnRhbnQ7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5MGVtKSB7XG4gIC5wci0zIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAzLjc1cmVtOyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTBlbSkgYW5kIChtaW4td2lkdGg6IDkwZW0pIHtcbiAgLnByLXh4bGFyZ2UtMyB7XG4gICAgcGFkZGluZy1yaWdodDogMy43NXJlbSAhaW1wb3J0YW50OyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTBlbSkge1xuICAucGItMyB7XG4gICAgcGFkZGluZy1ib3R0b206IDMuNzVyZW07IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5MGVtKSBhbmQgKG1pbi13aWR0aDogOTBlbSkge1xuICAucGIteHhsYXJnZS0zIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogMy43NXJlbSAhaW1wb3J0YW50OyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTBlbSkge1xuICAucGwtMyB7XG4gICAgcGFkZGluZy1sZWZ0OiAzLjc1cmVtOyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTBlbSkgYW5kIChtaW4td2lkdGg6IDkwZW0pIHtcbiAgLnBsLXh4bGFyZ2UtMyB7XG4gICAgcGFkZGluZy1sZWZ0OiAzLjc1cmVtICFpbXBvcnRhbnQ7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5MGVtKSB7XG4gIC5wYWxsLTMge1xuICAgIHBhZGRpbmctYWxsOiAzLjc1cmVtOyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTBlbSkgYW5kIChtaW4td2lkdGg6IDkwZW0pIHtcbiAgLnBhbGwteHhsYXJnZS0zIHtcbiAgICBwYWRkaW5nLWFsbDogMy43NXJlbSAhaW1wb3J0YW50OyB9IH1cblxuLm10LTQge1xuICBtYXJnaW4tdG9wOiA4Ljc1cmVtOyB9XG5cbi5tci00IHtcbiAgbWFyZ2luLXJpZ2h0OiA4Ljc1cmVtOyB9XG5cbi5tYi00IHtcbiAgbWFyZ2luLWJvdHRvbTogOC43NXJlbTsgfVxuXG4ubWwtNCB7XG4gIG1hcmdpbi1sZWZ0OiA4Ljc1cmVtOyB9XG5cbi5tYWxsLTQge1xuICBtYXJnaW4tYWxsOiA4Ljc1cmVtOyB9XG5cbi5wdC00IHtcbiAgcGFkZGluZy10b3A6IDguNzVyZW07IH1cblxuLnByLTQge1xuICBwYWRkaW5nLXJpZ2h0OiA4Ljc1cmVtOyB9XG5cbi5wYi00IHtcbiAgcGFkZGluZy1ib3R0b206IDguNzVyZW07IH1cblxuLnBsLTQge1xuICBwYWRkaW5nLWxlZnQ6IDguNzVyZW07IH1cblxuLnBhbGwtNCB7XG4gIHBhZGRpbmctYWxsOiA4Ljc1cmVtOyB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5tdC00IHtcbiAgICBtYXJnaW4tdG9wOiA2LjI1cmVtOyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5tdC1tZWRpdW0tNCB7XG4gICAgbWFyZ2luLXRvcDogNi4yNXJlbSAhaW1wb3J0YW50OyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLm1yLTQge1xuICAgIG1hcmdpbi1yaWdodDogNi4yNXJlbTsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAubXItbWVkaXVtLTQge1xuICAgIG1hcmdpbi1yaWdodDogNi4yNXJlbSAhaW1wb3J0YW50OyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLm1iLTQge1xuICAgIG1hcmdpbi1ib3R0b206IDYuMjVyZW07IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkgYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLm1iLW1lZGl1bS00IHtcbiAgICBtYXJnaW4tYm90dG9tOiA2LjI1cmVtICFpbXBvcnRhbnQ7IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAubWwtNCB7XG4gICAgbWFyZ2luLWxlZnQ6IDYuMjVyZW07IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkgYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLm1sLW1lZGl1bS00IHtcbiAgICBtYXJnaW4tbGVmdDogNi4yNXJlbSAhaW1wb3J0YW50OyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLm1hbGwtNCB7XG4gICAgbWFyZ2luLWFsbDogNi4yNXJlbTsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAubWFsbC1tZWRpdW0tNCB7XG4gICAgbWFyZ2luLWFsbDogNi4yNXJlbSAhaW1wb3J0YW50OyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLnB0LTQge1xuICAgIHBhZGRpbmctdG9wOiA2LjI1cmVtOyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5wdC1tZWRpdW0tNCB7XG4gICAgcGFkZGluZy10b3A6IDYuMjVyZW0gIWltcG9ydGFudDsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5wci00IHtcbiAgICBwYWRkaW5nLXJpZ2h0OiA2LjI1cmVtOyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5wci1tZWRpdW0tNCB7XG4gICAgcGFkZGluZy1yaWdodDogNi4yNXJlbSAhaW1wb3J0YW50OyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLnBiLTQge1xuICAgIHBhZGRpbmctYm90dG9tOiA2LjI1cmVtOyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5wYi1tZWRpdW0tNCB7XG4gICAgcGFkZGluZy1ib3R0b206IDYuMjVyZW0gIWltcG9ydGFudDsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5wbC00IHtcbiAgICBwYWRkaW5nLWxlZnQ6IDYuMjVyZW07IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkgYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLnBsLW1lZGl1bS00IHtcbiAgICBwYWRkaW5nLWxlZnQ6IDYuMjVyZW0gIWltcG9ydGFudDsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5wYWxsLTQge1xuICAgIHBhZGRpbmctYWxsOiA2LjI1cmVtOyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5wYWxsLW1lZGl1bS00IHtcbiAgICBwYWRkaW5nLWFsbDogNi4yNXJlbSAhaW1wb3J0YW50OyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLm10LTQge1xuICAgIG1hcmdpbi10b3A6IDYuMjVyZW07IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkgYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLm10LWxhcmdlLTQge1xuICAgIG1hcmdpbi10b3A6IDYuMjVyZW0gIWltcG9ydGFudDsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5tci00IHtcbiAgICBtYXJnaW4tcmlnaHQ6IDYuMjVyZW07IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkgYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLm1yLWxhcmdlLTQge1xuICAgIG1hcmdpbi1yaWdodDogNi4yNXJlbSAhaW1wb3J0YW50OyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLm1iLTQge1xuICAgIG1hcmdpbi1ib3R0b206IDYuMjVyZW07IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkgYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLm1iLWxhcmdlLTQge1xuICAgIG1hcmdpbi1ib3R0b206IDYuMjVyZW0gIWltcG9ydGFudDsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5tbC00IHtcbiAgICBtYXJnaW4tbGVmdDogNi4yNXJlbTsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAubWwtbGFyZ2UtNCB7XG4gICAgbWFyZ2luLWxlZnQ6IDYuMjVyZW0gIWltcG9ydGFudDsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5tYWxsLTQge1xuICAgIG1hcmdpbi1hbGw6IDYuMjVyZW07IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkgYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLm1hbGwtbGFyZ2UtNCB7XG4gICAgbWFyZ2luLWFsbDogNi4yNXJlbSAhaW1wb3J0YW50OyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLnB0LTQge1xuICAgIHBhZGRpbmctdG9wOiA2LjI1cmVtOyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5wdC1sYXJnZS00IHtcbiAgICBwYWRkaW5nLXRvcDogNi4yNXJlbSAhaW1wb3J0YW50OyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLnByLTQge1xuICAgIHBhZGRpbmctcmlnaHQ6IDYuMjVyZW07IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkgYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLnByLWxhcmdlLTQge1xuICAgIHBhZGRpbmctcmlnaHQ6IDYuMjVyZW0gIWltcG9ydGFudDsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5wYi00IHtcbiAgICBwYWRkaW5nLWJvdHRvbTogNi4yNXJlbTsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAucGItbGFyZ2UtNCB7XG4gICAgcGFkZGluZy1ib3R0b206IDYuMjVyZW0gIWltcG9ydGFudDsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5wbC00IHtcbiAgICBwYWRkaW5nLWxlZnQ6IDYuMjVyZW07IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkgYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLnBsLWxhcmdlLTQge1xuICAgIHBhZGRpbmctbGVmdDogNi4yNXJlbSAhaW1wb3J0YW50OyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLnBhbGwtNCB7XG4gICAgcGFkZGluZy1hbGw6IDYuMjVyZW07IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkgYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLnBhbGwtbGFyZ2UtNCB7XG4gICAgcGFkZGluZy1hbGw6IDYuMjVyZW0gIWltcG9ydGFudDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgLm10LTQge1xuICAgIG1hcmdpbi10b3A6IDcuNXJlbTsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gIC5tdC14bGFyZ2UtNCB7XG4gICAgbWFyZ2luLXRvcDogNy41cmVtICFpbXBvcnRhbnQ7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gIC5tci00IHtcbiAgICBtYXJnaW4tcmlnaHQ6IDcuNXJlbTsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gIC5tci14bGFyZ2UtNCB7XG4gICAgbWFyZ2luLXJpZ2h0OiA3LjVyZW0gIWltcG9ydGFudDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgLm1iLTQge1xuICAgIG1hcmdpbi1ib3R0b206IDcuNXJlbTsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gIC5tYi14bGFyZ2UtNCB7XG4gICAgbWFyZ2luLWJvdHRvbTogNy41cmVtICFpbXBvcnRhbnQ7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gIC5tbC00IHtcbiAgICBtYXJnaW4tbGVmdDogNy41cmVtOyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkgYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgLm1sLXhsYXJnZS00IHtcbiAgICBtYXJnaW4tbGVmdDogNy41cmVtICFpbXBvcnRhbnQ7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gIC5tYWxsLTQge1xuICAgIG1hcmdpbi1hbGw6IDcuNXJlbTsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gIC5tYWxsLXhsYXJnZS00IHtcbiAgICBtYXJnaW4tYWxsOiA3LjVyZW0gIWltcG9ydGFudDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgLnB0LTQge1xuICAgIHBhZGRpbmctdG9wOiA3LjVyZW07IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAucHQteGxhcmdlLTQge1xuICAgIHBhZGRpbmctdG9wOiA3LjVyZW0gIWltcG9ydGFudDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgLnByLTQge1xuICAgIHBhZGRpbmctcmlnaHQ6IDcuNXJlbTsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gIC5wci14bGFyZ2UtNCB7XG4gICAgcGFkZGluZy1yaWdodDogNy41cmVtICFpbXBvcnRhbnQ7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gIC5wYi00IHtcbiAgICBwYWRkaW5nLWJvdHRvbTogNy41cmVtOyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkgYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgLnBiLXhsYXJnZS00IHtcbiAgICBwYWRkaW5nLWJvdHRvbTogNy41cmVtICFpbXBvcnRhbnQ7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gIC5wbC00IHtcbiAgICBwYWRkaW5nLWxlZnQ6IDcuNXJlbTsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gIC5wbC14bGFyZ2UtNCB7XG4gICAgcGFkZGluZy1sZWZ0OiA3LjVyZW0gIWltcG9ydGFudDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgLnBhbGwtNCB7XG4gICAgcGFkZGluZy1hbGw6IDcuNXJlbTsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gIC5wYWxsLXhsYXJnZS00IHtcbiAgICBwYWRkaW5nLWFsbDogNy41cmVtICFpbXBvcnRhbnQ7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5MGVtKSB7XG4gIC5tdC00IHtcbiAgICBtYXJnaW4tdG9wOiA3LjVyZW07IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5MGVtKSBhbmQgKG1pbi13aWR0aDogOTBlbSkge1xuICAubXQteHhsYXJnZS00IHtcbiAgICBtYXJnaW4tdG9wOiA3LjVyZW0gIWltcG9ydGFudDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDkwZW0pIHtcbiAgLm1yLTQge1xuICAgIG1hcmdpbi1yaWdodDogNy41cmVtOyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTBlbSkgYW5kIChtaW4td2lkdGg6IDkwZW0pIHtcbiAgLm1yLXh4bGFyZ2UtNCB7XG4gICAgbWFyZ2luLXJpZ2h0OiA3LjVyZW0gIWltcG9ydGFudDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDkwZW0pIHtcbiAgLm1iLTQge1xuICAgIG1hcmdpbi1ib3R0b206IDcuNXJlbTsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDkwZW0pIGFuZCAobWluLXdpZHRoOiA5MGVtKSB7XG4gIC5tYi14eGxhcmdlLTQge1xuICAgIG1hcmdpbi1ib3R0b206IDcuNXJlbSAhaW1wb3J0YW50OyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTBlbSkge1xuICAubWwtNCB7XG4gICAgbWFyZ2luLWxlZnQ6IDcuNXJlbTsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDkwZW0pIGFuZCAobWluLXdpZHRoOiA5MGVtKSB7XG4gIC5tbC14eGxhcmdlLTQge1xuICAgIG1hcmdpbi1sZWZ0OiA3LjVyZW0gIWltcG9ydGFudDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDkwZW0pIHtcbiAgLm1hbGwtNCB7XG4gICAgbWFyZ2luLWFsbDogNy41cmVtOyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTBlbSkgYW5kIChtaW4td2lkdGg6IDkwZW0pIHtcbiAgLm1hbGwteHhsYXJnZS00IHtcbiAgICBtYXJnaW4tYWxsOiA3LjVyZW0gIWltcG9ydGFudDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDkwZW0pIHtcbiAgLnB0LTQge1xuICAgIHBhZGRpbmctdG9wOiA3LjVyZW07IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5MGVtKSBhbmQgKG1pbi13aWR0aDogOTBlbSkge1xuICAucHQteHhsYXJnZS00IHtcbiAgICBwYWRkaW5nLXRvcDogNy41cmVtICFpbXBvcnRhbnQ7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5MGVtKSB7XG4gIC5wci00IHtcbiAgICBwYWRkaW5nLXJpZ2h0OiA3LjVyZW07IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5MGVtKSBhbmQgKG1pbi13aWR0aDogOTBlbSkge1xuICAucHIteHhsYXJnZS00IHtcbiAgICBwYWRkaW5nLXJpZ2h0OiA3LjVyZW0gIWltcG9ydGFudDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDkwZW0pIHtcbiAgLnBiLTQge1xuICAgIHBhZGRpbmctYm90dG9tOiA3LjVyZW07IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5MGVtKSBhbmQgKG1pbi13aWR0aDogOTBlbSkge1xuICAucGIteHhsYXJnZS00IHtcbiAgICBwYWRkaW5nLWJvdHRvbTogNy41cmVtICFpbXBvcnRhbnQ7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5MGVtKSB7XG4gIC5wbC00IHtcbiAgICBwYWRkaW5nLWxlZnQ6IDcuNXJlbTsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDkwZW0pIGFuZCAobWluLXdpZHRoOiA5MGVtKSB7XG4gIC5wbC14eGxhcmdlLTQge1xuICAgIHBhZGRpbmctbGVmdDogNy41cmVtICFpbXBvcnRhbnQ7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5MGVtKSB7XG4gIC5wYWxsLTQge1xuICAgIHBhZGRpbmctYWxsOiA3LjVyZW07IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5MGVtKSBhbmQgKG1pbi13aWR0aDogOTBlbSkge1xuICAucGFsbC14eGxhcmdlLTQge1xuICAgIHBhZGRpbmctYWxsOiA3LjVyZW0gIWltcG9ydGFudDsgfSB9XG5cbi5tdC01IHtcbiAgbWFyZ2luLXRvcDogMTMuMTI1cmVtOyB9XG5cbi5tci01IHtcbiAgbWFyZ2luLXJpZ2h0OiAxMy4xMjVyZW07IH1cblxuLm1iLTUge1xuICBtYXJnaW4tYm90dG9tOiAxMy4xMjVyZW07IH1cblxuLm1sLTUge1xuICBtYXJnaW4tbGVmdDogMTMuMTI1cmVtOyB9XG5cbi5tYWxsLTUge1xuICBtYXJnaW4tYWxsOiAxMy4xMjVyZW07IH1cblxuLnB0LTUge1xuICBwYWRkaW5nLXRvcDogMTMuMTI1cmVtOyB9XG5cbi5wci01IHtcbiAgcGFkZGluZy1yaWdodDogMTMuMTI1cmVtOyB9XG5cbi5wYi01IHtcbiAgcGFkZGluZy1ib3R0b206IDEzLjEyNXJlbTsgfVxuXG4ucGwtNSB7XG4gIHBhZGRpbmctbGVmdDogMTMuMTI1cmVtOyB9XG5cbi5wYWxsLTUge1xuICBwYWRkaW5nLWFsbDogMTMuMTI1cmVtOyB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5tdC01IHtcbiAgICBtYXJnaW4tdG9wOiA5LjM3NXJlbTsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAubXQtbWVkaXVtLTUge1xuICAgIG1hcmdpbi10b3A6IDkuMzc1cmVtICFpbXBvcnRhbnQ7IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAubXItNSB7XG4gICAgbWFyZ2luLXJpZ2h0OiA5LjM3NXJlbTsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAubXItbWVkaXVtLTUge1xuICAgIG1hcmdpbi1yaWdodDogOS4zNzVyZW0gIWltcG9ydGFudDsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5tYi01IHtcbiAgICBtYXJnaW4tYm90dG9tOiA5LjM3NXJlbTsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAubWItbWVkaXVtLTUge1xuICAgIG1hcmdpbi1ib3R0b206IDkuMzc1cmVtICFpbXBvcnRhbnQ7IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAubWwtNSB7XG4gICAgbWFyZ2luLWxlZnQ6IDkuMzc1cmVtOyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5tbC1tZWRpdW0tNSB7XG4gICAgbWFyZ2luLWxlZnQ6IDkuMzc1cmVtICFpbXBvcnRhbnQ7IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAubWFsbC01IHtcbiAgICBtYXJnaW4tYWxsOiA5LjM3NXJlbTsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAubWFsbC1tZWRpdW0tNSB7XG4gICAgbWFyZ2luLWFsbDogOS4zNzVyZW0gIWltcG9ydGFudDsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5wdC01IHtcbiAgICBwYWRkaW5nLXRvcDogOS4zNzVyZW07IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkgYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLnB0LW1lZGl1bS01IHtcbiAgICBwYWRkaW5nLXRvcDogOS4zNzVyZW0gIWltcG9ydGFudDsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5wci01IHtcbiAgICBwYWRkaW5nLXJpZ2h0OiA5LjM3NXJlbTsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAucHItbWVkaXVtLTUge1xuICAgIHBhZGRpbmctcmlnaHQ6IDkuMzc1cmVtICFpbXBvcnRhbnQ7IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAucGItNSB7XG4gICAgcGFkZGluZy1ib3R0b206IDkuMzc1cmVtOyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5wYi1tZWRpdW0tNSB7XG4gICAgcGFkZGluZy1ib3R0b206IDkuMzc1cmVtICFpbXBvcnRhbnQ7IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAucGwtNSB7XG4gICAgcGFkZGluZy1sZWZ0OiA5LjM3NXJlbTsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAucGwtbWVkaXVtLTUge1xuICAgIHBhZGRpbmctbGVmdDogOS4zNzVyZW0gIWltcG9ydGFudDsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5wYWxsLTUge1xuICAgIHBhZGRpbmctYWxsOiA5LjM3NXJlbTsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAucGFsbC1tZWRpdW0tNSB7XG4gICAgcGFkZGluZy1hbGw6IDkuMzc1cmVtICFpbXBvcnRhbnQ7IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAubXQtNSB7XG4gICAgbWFyZ2luLXRvcDogOS4zNzVyZW07IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkgYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLm10LWxhcmdlLTUge1xuICAgIG1hcmdpbi10b3A6IDkuMzc1cmVtICFpbXBvcnRhbnQ7IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAubXItNSB7XG4gICAgbWFyZ2luLXJpZ2h0OiA5LjM3NXJlbTsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAubXItbGFyZ2UtNSB7XG4gICAgbWFyZ2luLXJpZ2h0OiA5LjM3NXJlbSAhaW1wb3J0YW50OyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLm1iLTUge1xuICAgIG1hcmdpbi1ib3R0b206IDkuMzc1cmVtOyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5tYi1sYXJnZS01IHtcbiAgICBtYXJnaW4tYm90dG9tOiA5LjM3NXJlbSAhaW1wb3J0YW50OyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLm1sLTUge1xuICAgIG1hcmdpbi1sZWZ0OiA5LjM3NXJlbTsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAubWwtbGFyZ2UtNSB7XG4gICAgbWFyZ2luLWxlZnQ6IDkuMzc1cmVtICFpbXBvcnRhbnQ7IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAubWFsbC01IHtcbiAgICBtYXJnaW4tYWxsOiA5LjM3NXJlbTsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAubWFsbC1sYXJnZS01IHtcbiAgICBtYXJnaW4tYWxsOiA5LjM3NXJlbSAhaW1wb3J0YW50OyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLnB0LTUge1xuICAgIHBhZGRpbmctdG9wOiA5LjM3NXJlbTsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAucHQtbGFyZ2UtNSB7XG4gICAgcGFkZGluZy10b3A6IDkuMzc1cmVtICFpbXBvcnRhbnQ7IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAucHItNSB7XG4gICAgcGFkZGluZy1yaWdodDogOS4zNzVyZW07IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkgYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLnByLWxhcmdlLTUge1xuICAgIHBhZGRpbmctcmlnaHQ6IDkuMzc1cmVtICFpbXBvcnRhbnQ7IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAucGItNSB7XG4gICAgcGFkZGluZy1ib3R0b206IDkuMzc1cmVtOyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5wYi1sYXJnZS01IHtcbiAgICBwYWRkaW5nLWJvdHRvbTogOS4zNzVyZW0gIWltcG9ydGFudDsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5wbC01IHtcbiAgICBwYWRkaW5nLWxlZnQ6IDkuMzc1cmVtOyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5wbC1sYXJnZS01IHtcbiAgICBwYWRkaW5nLWxlZnQ6IDkuMzc1cmVtICFpbXBvcnRhbnQ7IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAucGFsbC01IHtcbiAgICBwYWRkaW5nLWFsbDogOS4zNzVyZW07IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkgYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLnBhbGwtbGFyZ2UtNSB7XG4gICAgcGFkZGluZy1hbGw6IDkuMzc1cmVtICFpbXBvcnRhbnQ7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gIC5tdC01IHtcbiAgICBtYXJnaW4tdG9wOiAxMS4yNXJlbTsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gIC5tdC14bGFyZ2UtNSB7XG4gICAgbWFyZ2luLXRvcDogMTEuMjVyZW0gIWltcG9ydGFudDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgLm1yLTUge1xuICAgIG1hcmdpbi1yaWdodDogMTEuMjVyZW07IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAubXIteGxhcmdlLTUge1xuICAgIG1hcmdpbi1yaWdodDogMTEuMjVyZW0gIWltcG9ydGFudDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgLm1iLTUge1xuICAgIG1hcmdpbi1ib3R0b206IDExLjI1cmVtOyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkgYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgLm1iLXhsYXJnZS01IHtcbiAgICBtYXJnaW4tYm90dG9tOiAxMS4yNXJlbSAhaW1wb3J0YW50OyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAubWwtNSB7XG4gICAgbWFyZ2luLWxlZnQ6IDExLjI1cmVtOyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkgYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgLm1sLXhsYXJnZS01IHtcbiAgICBtYXJnaW4tbGVmdDogMTEuMjVyZW0gIWltcG9ydGFudDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgLm1hbGwtNSB7XG4gICAgbWFyZ2luLWFsbDogMTEuMjVyZW07IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAubWFsbC14bGFyZ2UtNSB7XG4gICAgbWFyZ2luLWFsbDogMTEuMjVyZW0gIWltcG9ydGFudDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgLnB0LTUge1xuICAgIHBhZGRpbmctdG9wOiAxMS4yNXJlbTsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gIC5wdC14bGFyZ2UtNSB7XG4gICAgcGFkZGluZy10b3A6IDExLjI1cmVtICFpbXBvcnRhbnQ7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gIC5wci01IHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAxMS4yNXJlbTsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gIC5wci14bGFyZ2UtNSB7XG4gICAgcGFkZGluZy1yaWdodDogMTEuMjVyZW0gIWltcG9ydGFudDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgLnBiLTUge1xuICAgIHBhZGRpbmctYm90dG9tOiAxMS4yNXJlbTsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gIC5wYi14bGFyZ2UtNSB7XG4gICAgcGFkZGluZy1ib3R0b206IDExLjI1cmVtICFpbXBvcnRhbnQ7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gIC5wbC01IHtcbiAgICBwYWRkaW5nLWxlZnQ6IDExLjI1cmVtOyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkgYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgLnBsLXhsYXJnZS01IHtcbiAgICBwYWRkaW5nLWxlZnQ6IDExLjI1cmVtICFpbXBvcnRhbnQ7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gIC5wYWxsLTUge1xuICAgIHBhZGRpbmctYWxsOiAxMS4yNXJlbTsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gIC5wYWxsLXhsYXJnZS01IHtcbiAgICBwYWRkaW5nLWFsbDogMTEuMjVyZW0gIWltcG9ydGFudDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDkwZW0pIHtcbiAgLm10LTUge1xuICAgIG1hcmdpbi10b3A6IDExLjI1cmVtOyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTBlbSkgYW5kIChtaW4td2lkdGg6IDkwZW0pIHtcbiAgLm10LXh4bGFyZ2UtNSB7XG4gICAgbWFyZ2luLXRvcDogMTEuMjVyZW0gIWltcG9ydGFudDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDkwZW0pIHtcbiAgLm1yLTUge1xuICAgIG1hcmdpbi1yaWdodDogMTEuMjVyZW07IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5MGVtKSBhbmQgKG1pbi13aWR0aDogOTBlbSkge1xuICAubXIteHhsYXJnZS01IHtcbiAgICBtYXJnaW4tcmlnaHQ6IDExLjI1cmVtICFpbXBvcnRhbnQ7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5MGVtKSB7XG4gIC5tYi01IHtcbiAgICBtYXJnaW4tYm90dG9tOiAxMS4yNXJlbTsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDkwZW0pIGFuZCAobWluLXdpZHRoOiA5MGVtKSB7XG4gIC5tYi14eGxhcmdlLTUge1xuICAgIG1hcmdpbi1ib3R0b206IDExLjI1cmVtICFpbXBvcnRhbnQ7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5MGVtKSB7XG4gIC5tbC01IHtcbiAgICBtYXJnaW4tbGVmdDogMTEuMjVyZW07IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5MGVtKSBhbmQgKG1pbi13aWR0aDogOTBlbSkge1xuICAubWwteHhsYXJnZS01IHtcbiAgICBtYXJnaW4tbGVmdDogMTEuMjVyZW0gIWltcG9ydGFudDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDkwZW0pIHtcbiAgLm1hbGwtNSB7XG4gICAgbWFyZ2luLWFsbDogMTEuMjVyZW07IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5MGVtKSBhbmQgKG1pbi13aWR0aDogOTBlbSkge1xuICAubWFsbC14eGxhcmdlLTUge1xuICAgIG1hcmdpbi1hbGw6IDExLjI1cmVtICFpbXBvcnRhbnQ7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5MGVtKSB7XG4gIC5wdC01IHtcbiAgICBwYWRkaW5nLXRvcDogMTEuMjVyZW07IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5MGVtKSBhbmQgKG1pbi13aWR0aDogOTBlbSkge1xuICAucHQteHhsYXJnZS01IHtcbiAgICBwYWRkaW5nLXRvcDogMTEuMjVyZW0gIWltcG9ydGFudDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDkwZW0pIHtcbiAgLnByLTUge1xuICAgIHBhZGRpbmctcmlnaHQ6IDExLjI1cmVtOyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTBlbSkgYW5kIChtaW4td2lkdGg6IDkwZW0pIHtcbiAgLnByLXh4bGFyZ2UtNSB7XG4gICAgcGFkZGluZy1yaWdodDogMTEuMjVyZW0gIWltcG9ydGFudDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDkwZW0pIHtcbiAgLnBiLTUge1xuICAgIHBhZGRpbmctYm90dG9tOiAxMS4yNXJlbTsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDkwZW0pIGFuZCAobWluLXdpZHRoOiA5MGVtKSB7XG4gIC5wYi14eGxhcmdlLTUge1xuICAgIHBhZGRpbmctYm90dG9tOiAxMS4yNXJlbSAhaW1wb3J0YW50OyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTBlbSkge1xuICAucGwtNSB7XG4gICAgcGFkZGluZy1sZWZ0OiAxMS4yNXJlbTsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDkwZW0pIGFuZCAobWluLXdpZHRoOiA5MGVtKSB7XG4gIC5wbC14eGxhcmdlLTUge1xuICAgIHBhZGRpbmctbGVmdDogMTEuMjVyZW0gIWltcG9ydGFudDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDkwZW0pIHtcbiAgLnBhbGwtNSB7XG4gICAgcGFkZGluZy1hbGw6IDExLjI1cmVtOyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTBlbSkgYW5kIChtaW4td2lkdGg6IDkwZW0pIHtcbiAgLnBhbGwteHhsYXJnZS01IHtcbiAgICBwYWRkaW5nLWFsbDogMTEuMjVyZW0gIWltcG9ydGFudDsgfSB9XG5cbi5tdC0xXzhwdCB7XG4gIG1hcmdpbi10b3A6IDAuNXJlbTsgfVxuXG4ubXItMV84cHQge1xuICBtYXJnaW4tcmlnaHQ6IDAuNXJlbTsgfVxuXG4ubWItMV84cHQge1xuICBtYXJnaW4tYm90dG9tOiAwLjVyZW07IH1cblxuLm1sLTFfOHB0IHtcbiAgbWFyZ2luLWxlZnQ6IDAuNXJlbTsgfVxuXG4ubWFsbC0xXzhwdCB7XG4gIG1hcmdpbi1hbGw6IDAuNXJlbTsgfVxuXG4ucHQtMV84cHQge1xuICBwYWRkaW5nLXRvcDogMC41cmVtOyB9XG5cbi5wci0xXzhwdCB7XG4gIHBhZGRpbmctcmlnaHQ6IDAuNXJlbTsgfVxuXG4ucGItMV84cHQge1xuICBwYWRkaW5nLWJvdHRvbTogMC41cmVtOyB9XG5cbi5wbC0xXzhwdCB7XG4gIHBhZGRpbmctbGVmdDogMC41cmVtOyB9XG5cbi5wYWxsLTFfOHB0IHtcbiAgcGFkZGluZy1hbGw6IDAuNXJlbTsgfVxuXG4ubXQtMl84cHQge1xuICBtYXJnaW4tdG9wOiAxcmVtOyB9XG5cbi5tci0yXzhwdCB7XG4gIG1hcmdpbi1yaWdodDogMXJlbTsgfVxuXG4ubWItMl84cHQge1xuICBtYXJnaW4tYm90dG9tOiAxcmVtOyB9XG5cbi5tbC0yXzhwdCB7XG4gIG1hcmdpbi1sZWZ0OiAxcmVtOyB9XG5cbi5tYWxsLTJfOHB0IHtcbiAgbWFyZ2luLWFsbDogMXJlbTsgfVxuXG4ucHQtMl84cHQge1xuICBwYWRkaW5nLXRvcDogMXJlbTsgfVxuXG4ucHItMl84cHQge1xuICBwYWRkaW5nLXJpZ2h0OiAxcmVtOyB9XG5cbi5wYi0yXzhwdCB7XG4gIHBhZGRpbmctYm90dG9tOiAxcmVtOyB9XG5cbi5wbC0yXzhwdCB7XG4gIHBhZGRpbmctbGVmdDogMXJlbTsgfVxuXG4ucGFsbC0yXzhwdCB7XG4gIHBhZGRpbmctYWxsOiAxcmVtOyB9XG5cbi5tdC0zXzhwdCB7XG4gIG1hcmdpbi10b3A6IDEuNXJlbTsgfVxuXG4ubXItM184cHQge1xuICBtYXJnaW4tcmlnaHQ6IDEuNXJlbTsgfVxuXG4ubWItM184cHQge1xuICBtYXJnaW4tYm90dG9tOiAxLjVyZW07IH1cblxuLm1sLTNfOHB0IHtcbiAgbWFyZ2luLWxlZnQ6IDEuNXJlbTsgfVxuXG4ubWFsbC0zXzhwdCB7XG4gIG1hcmdpbi1hbGw6IDEuNXJlbTsgfVxuXG4ucHQtM184cHQge1xuICBwYWRkaW5nLXRvcDogMS41cmVtOyB9XG5cbi5wci0zXzhwdCB7XG4gIHBhZGRpbmctcmlnaHQ6IDEuNXJlbTsgfVxuXG4ucGItM184cHQge1xuICBwYWRkaW5nLWJvdHRvbTogMS41cmVtOyB9XG5cbi5wbC0zXzhwdCB7XG4gIHBhZGRpbmctbGVmdDogMS41cmVtOyB9XG5cbi5wYWxsLTNfOHB0IHtcbiAgcGFkZGluZy1hbGw6IDEuNXJlbTsgfVxuXG4ubXQtNF84cHQge1xuICBtYXJnaW4tdG9wOiAycmVtOyB9XG5cbi5tci00XzhwdCB7XG4gIG1hcmdpbi1yaWdodDogMnJlbTsgfVxuXG4ubWItNF84cHQge1xuICBtYXJnaW4tYm90dG9tOiAycmVtOyB9XG5cbi5tbC00XzhwdCB7XG4gIG1hcmdpbi1sZWZ0OiAycmVtOyB9XG5cbi5tYWxsLTRfOHB0IHtcbiAgbWFyZ2luLWFsbDogMnJlbTsgfVxuXG4ucHQtNF84cHQge1xuICBwYWRkaW5nLXRvcDogMnJlbTsgfVxuXG4ucHItNF84cHQge1xuICBwYWRkaW5nLXJpZ2h0OiAycmVtOyB9XG5cbi5wYi00XzhwdCB7XG4gIHBhZGRpbmctYm90dG9tOiAycmVtOyB9XG5cbi5wbC00XzhwdCB7XG4gIHBhZGRpbmctbGVmdDogMnJlbTsgfVxuXG4ucGFsbC00XzhwdCB7XG4gIHBhZGRpbmctYWxsOiAycmVtOyB9XG5cbi5tdC01XzhwdCB7XG4gIG1hcmdpbi10b3A6IDIuNXJlbTsgfVxuXG4ubXItNV84cHQge1xuICBtYXJnaW4tcmlnaHQ6IDIuNXJlbTsgfVxuXG4ubWItNV84cHQge1xuICBtYXJnaW4tYm90dG9tOiAyLjVyZW07IH1cblxuLm1sLTVfOHB0IHtcbiAgbWFyZ2luLWxlZnQ6IDIuNXJlbTsgfVxuXG4ubWFsbC01XzhwdCB7XG4gIG1hcmdpbi1hbGw6IDIuNXJlbTsgfVxuXG4ucHQtNV84cHQge1xuICBwYWRkaW5nLXRvcDogMi41cmVtOyB9XG5cbi5wci01XzhwdCB7XG4gIHBhZGRpbmctcmlnaHQ6IDIuNXJlbTsgfVxuXG4ucGItNV84cHQge1xuICBwYWRkaW5nLWJvdHRvbTogMi41cmVtOyB9XG5cbi5wbC01XzhwdCB7XG4gIHBhZGRpbmctbGVmdDogMi41cmVtOyB9XG5cbi5wYWxsLTVfOHB0IHtcbiAgcGFkZGluZy1hbGw6IDIuNXJlbTsgfVxuXG4ubXQtNl84cHQge1xuICBtYXJnaW4tdG9wOiAzcmVtOyB9XG5cbi5tci02XzhwdCB7XG4gIG1hcmdpbi1yaWdodDogM3JlbTsgfVxuXG4ubWItNl84cHQge1xuICBtYXJnaW4tYm90dG9tOiAzcmVtOyB9XG5cbi5tbC02XzhwdCB7XG4gIG1hcmdpbi1sZWZ0OiAzcmVtOyB9XG5cbi5tYWxsLTZfOHB0IHtcbiAgbWFyZ2luLWFsbDogM3JlbTsgfVxuXG4ucHQtNl84cHQge1xuICBwYWRkaW5nLXRvcDogM3JlbTsgfVxuXG4ucHItNl84cHQge1xuICBwYWRkaW5nLXJpZ2h0OiAzcmVtOyB9XG5cbi5wYi02XzhwdCB7XG4gIHBhZGRpbmctYm90dG9tOiAzcmVtOyB9XG5cbi5wbC02XzhwdCB7XG4gIHBhZGRpbmctbGVmdDogM3JlbTsgfVxuXG4ucGFsbC02XzhwdCB7XG4gIHBhZGRpbmctYWxsOiAzcmVtOyB9XG5cbi5tdC03XzhwdCB7XG4gIG1hcmdpbi10b3A6IDMuNXJlbTsgfVxuXG4ubXItN184cHQge1xuICBtYXJnaW4tcmlnaHQ6IDMuNXJlbTsgfVxuXG4ubWItN184cHQge1xuICBtYXJnaW4tYm90dG9tOiAzLjVyZW07IH1cblxuLm1sLTdfOHB0IHtcbiAgbWFyZ2luLWxlZnQ6IDMuNXJlbTsgfVxuXG4ubWFsbC03XzhwdCB7XG4gIG1hcmdpbi1hbGw6IDMuNXJlbTsgfVxuXG4ucHQtN184cHQge1xuICBwYWRkaW5nLXRvcDogMy41cmVtOyB9XG5cbi5wci03XzhwdCB7XG4gIHBhZGRpbmctcmlnaHQ6IDMuNXJlbTsgfVxuXG4ucGItN184cHQge1xuICBwYWRkaW5nLWJvdHRvbTogMy41cmVtOyB9XG5cbi5wbC03XzhwdCB7XG4gIHBhZGRpbmctbGVmdDogMy41cmVtOyB9XG5cbi5wYWxsLTdfOHB0IHtcbiAgcGFkZGluZy1hbGw6IDMuNXJlbTsgfVxuXG4ubXQtOF84cHQge1xuICBtYXJnaW4tdG9wOiA0cmVtOyB9XG5cbi5tci04XzhwdCB7XG4gIG1hcmdpbi1yaWdodDogNHJlbTsgfVxuXG4ubWItOF84cHQge1xuICBtYXJnaW4tYm90dG9tOiA0cmVtOyB9XG5cbi5tbC04XzhwdCB7XG4gIG1hcmdpbi1sZWZ0OiA0cmVtOyB9XG5cbi5tYWxsLThfOHB0IHtcbiAgbWFyZ2luLWFsbDogNHJlbTsgfVxuXG4ucHQtOF84cHQge1xuICBwYWRkaW5nLXRvcDogNHJlbTsgfVxuXG4ucHItOF84cHQge1xuICBwYWRkaW5nLXJpZ2h0OiA0cmVtOyB9XG5cbi5wYi04XzhwdCB7XG4gIHBhZGRpbmctYm90dG9tOiA0cmVtOyB9XG5cbi5wbC04XzhwdCB7XG4gIHBhZGRpbmctbGVmdDogNHJlbTsgfVxuXG4ucGFsbC04XzhwdCB7XG4gIHBhZGRpbmctYWxsOiA0cmVtOyB9XG5cbi5tdC05XzhwdCB7XG4gIG1hcmdpbi10b3A6IDQuNXJlbTsgfVxuXG4ubXItOV84cHQge1xuICBtYXJnaW4tcmlnaHQ6IDQuNXJlbTsgfVxuXG4ubWItOV84cHQge1xuICBtYXJnaW4tYm90dG9tOiA0LjVyZW07IH1cblxuLm1sLTlfOHB0IHtcbiAgbWFyZ2luLWxlZnQ6IDQuNXJlbTsgfVxuXG4ubWFsbC05XzhwdCB7XG4gIG1hcmdpbi1hbGw6IDQuNXJlbTsgfVxuXG4ucHQtOV84cHQge1xuICBwYWRkaW5nLXRvcDogNC41cmVtOyB9XG5cbi5wci05XzhwdCB7XG4gIHBhZGRpbmctcmlnaHQ6IDQuNXJlbTsgfVxuXG4ucGItOV84cHQge1xuICBwYWRkaW5nLWJvdHRvbTogNC41cmVtOyB9XG5cbi5wbC05XzhwdCB7XG4gIHBhZGRpbmctbGVmdDogNC41cmVtOyB9XG5cbi5wYWxsLTlfOHB0IHtcbiAgcGFkZGluZy1hbGw6IDQuNXJlbTsgfVxuXG4ubXQtMTBfOHB0IHtcbiAgbWFyZ2luLXRvcDogNXJlbTsgfVxuXG4ubXItMTBfOHB0IHtcbiAgbWFyZ2luLXJpZ2h0OiA1cmVtOyB9XG5cbi5tYi0xMF84cHQge1xuICBtYXJnaW4tYm90dG9tOiA1cmVtOyB9XG5cbi5tbC0xMF84cHQge1xuICBtYXJnaW4tbGVmdDogNXJlbTsgfVxuXG4ubWFsbC0xMF84cHQge1xuICBtYXJnaW4tYWxsOiA1cmVtOyB9XG5cbi5wdC0xMF84cHQge1xuICBwYWRkaW5nLXRvcDogNXJlbTsgfVxuXG4ucHItMTBfOHB0IHtcbiAgcGFkZGluZy1yaWdodDogNXJlbTsgfVxuXG4ucGItMTBfOHB0IHtcbiAgcGFkZGluZy1ib3R0b206IDVyZW07IH1cblxuLnBsLTEwXzhwdCB7XG4gIHBhZGRpbmctbGVmdDogNXJlbTsgfVxuXG4ucGFsbC0xMF84cHQge1xuICBwYWRkaW5nLWFsbDogNXJlbTsgfVxuXG4ubXQtMTFfOHB0IHtcbiAgbWFyZ2luLXRvcDogNS41cmVtOyB9XG5cbi5tci0xMV84cHQge1xuICBtYXJnaW4tcmlnaHQ6IDUuNXJlbTsgfVxuXG4ubWItMTFfOHB0IHtcbiAgbWFyZ2luLWJvdHRvbTogNS41cmVtOyB9XG5cbi5tbC0xMV84cHQge1xuICBtYXJnaW4tbGVmdDogNS41cmVtOyB9XG5cbi5tYWxsLTExXzhwdCB7XG4gIG1hcmdpbi1hbGw6IDUuNXJlbTsgfVxuXG4ucHQtMTFfOHB0IHtcbiAgcGFkZGluZy10b3A6IDUuNXJlbTsgfVxuXG4ucHItMTFfOHB0IHtcbiAgcGFkZGluZy1yaWdodDogNS41cmVtOyB9XG5cbi5wYi0xMV84cHQge1xuICBwYWRkaW5nLWJvdHRvbTogNS41cmVtOyB9XG5cbi5wbC0xMV84cHQge1xuICBwYWRkaW5nLWxlZnQ6IDUuNXJlbTsgfVxuXG4ucGFsbC0xMV84cHQge1xuICBwYWRkaW5nLWFsbDogNS41cmVtOyB9XG5cbi5tdC0xMl84cHQge1xuICBtYXJnaW4tdG9wOiA2cmVtOyB9XG5cbi5tci0xMl84cHQge1xuICBtYXJnaW4tcmlnaHQ6IDZyZW07IH1cblxuLm1iLTEyXzhwdCB7XG4gIG1hcmdpbi1ib3R0b206IDZyZW07IH1cblxuLm1sLTEyXzhwdCB7XG4gIG1hcmdpbi1sZWZ0OiA2cmVtOyB9XG5cbi5tYWxsLTEyXzhwdCB7XG4gIG1hcmdpbi1hbGw6IDZyZW07IH1cblxuLnB0LTEyXzhwdCB7XG4gIHBhZGRpbmctdG9wOiA2cmVtOyB9XG5cbi5wci0xMl84cHQge1xuICBwYWRkaW5nLXJpZ2h0OiA2cmVtOyB9XG5cbi5wYi0xMl84cHQge1xuICBwYWRkaW5nLWJvdHRvbTogNnJlbTsgfVxuXG4ucGwtMTJfOHB0IHtcbiAgcGFkZGluZy1sZWZ0OiA2cmVtOyB9XG5cbi5wYWxsLTEyXzhwdCB7XG4gIHBhZGRpbmctYWxsOiA2cmVtOyB9XG5cbi5tdC0xM184cHQge1xuICBtYXJnaW4tdG9wOiA2LjVyZW07IH1cblxuLm1yLTEzXzhwdCB7XG4gIG1hcmdpbi1yaWdodDogNi41cmVtOyB9XG5cbi5tYi0xM184cHQge1xuICBtYXJnaW4tYm90dG9tOiA2LjVyZW07IH1cblxuLm1sLTEzXzhwdCB7XG4gIG1hcmdpbi1sZWZ0OiA2LjVyZW07IH1cblxuLm1hbGwtMTNfOHB0IHtcbiAgbWFyZ2luLWFsbDogNi41cmVtOyB9XG5cbi5wdC0xM184cHQge1xuICBwYWRkaW5nLXRvcDogNi41cmVtOyB9XG5cbi5wci0xM184cHQge1xuICBwYWRkaW5nLXJpZ2h0OiA2LjVyZW07IH1cblxuLnBiLTEzXzhwdCB7XG4gIHBhZGRpbmctYm90dG9tOiA2LjVyZW07IH1cblxuLnBsLTEzXzhwdCB7XG4gIHBhZGRpbmctbGVmdDogNi41cmVtOyB9XG5cbi5wYWxsLTEzXzhwdCB7XG4gIHBhZGRpbmctYWxsOiA2LjVyZW07IH1cblxuLm10LTE0XzhwdCB7XG4gIG1hcmdpbi10b3A6IDdyZW07IH1cblxuLm1yLTE0XzhwdCB7XG4gIG1hcmdpbi1yaWdodDogN3JlbTsgfVxuXG4ubWItMTRfOHB0IHtcbiAgbWFyZ2luLWJvdHRvbTogN3JlbTsgfVxuXG4ubWwtMTRfOHB0IHtcbiAgbWFyZ2luLWxlZnQ6IDdyZW07IH1cblxuLm1hbGwtMTRfOHB0IHtcbiAgbWFyZ2luLWFsbDogN3JlbTsgfVxuXG4ucHQtMTRfOHB0IHtcbiAgcGFkZGluZy10b3A6IDdyZW07IH1cblxuLnByLTE0XzhwdCB7XG4gIHBhZGRpbmctcmlnaHQ6IDdyZW07IH1cblxuLnBiLTE0XzhwdCB7XG4gIHBhZGRpbmctYm90dG9tOiA3cmVtOyB9XG5cbi5wbC0xNF84cHQge1xuICBwYWRkaW5nLWxlZnQ6IDdyZW07IH1cblxuLnBhbGwtMTRfOHB0IHtcbiAgcGFkZGluZy1hbGw6IDdyZW07IH1cblxuLm10LTE1XzhwdCB7XG4gIG1hcmdpbi10b3A6IDcuNXJlbTsgfVxuXG4ubXItMTVfOHB0IHtcbiAgbWFyZ2luLXJpZ2h0OiA3LjVyZW07IH1cblxuLm1iLTE1XzhwdCB7XG4gIG1hcmdpbi1ib3R0b206IDcuNXJlbTsgfVxuXG4ubWwtMTVfOHB0IHtcbiAgbWFyZ2luLWxlZnQ6IDcuNXJlbTsgfVxuXG4ubWFsbC0xNV84cHQge1xuICBtYXJnaW4tYWxsOiA3LjVyZW07IH1cblxuLnB0LTE1XzhwdCB7XG4gIHBhZGRpbmctdG9wOiA3LjVyZW07IH1cblxuLnByLTE1XzhwdCB7XG4gIHBhZGRpbmctcmlnaHQ6IDcuNXJlbTsgfVxuXG4ucGItMTVfOHB0IHtcbiAgcGFkZGluZy1ib3R0b206IDcuNXJlbTsgfVxuXG4ucGwtMTVfOHB0IHtcbiAgcGFkZGluZy1sZWZ0OiA3LjVyZW07IH1cblxuLnBhbGwtMTVfOHB0IHtcbiAgcGFkZGluZy1hbGw6IDcuNXJlbTsgfVxuXG4ubXQtMTZfOHB0IHtcbiAgbWFyZ2luLXRvcDogOHJlbTsgfVxuXG4ubXItMTZfOHB0IHtcbiAgbWFyZ2luLXJpZ2h0OiA4cmVtOyB9XG5cbi5tYi0xNl84cHQge1xuICBtYXJnaW4tYm90dG9tOiA4cmVtOyB9XG5cbi5tbC0xNl84cHQge1xuICBtYXJnaW4tbGVmdDogOHJlbTsgfVxuXG4ubWFsbC0xNl84cHQge1xuICBtYXJnaW4tYWxsOiA4cmVtOyB9XG5cbi5wdC0xNl84cHQge1xuICBwYWRkaW5nLXRvcDogOHJlbTsgfVxuXG4ucHItMTZfOHB0IHtcbiAgcGFkZGluZy1yaWdodDogOHJlbTsgfVxuXG4ucGItMTZfOHB0IHtcbiAgcGFkZGluZy1ib3R0b206IDhyZW07IH1cblxuLnBsLTE2XzhwdCB7XG4gIHBhZGRpbmctbGVmdDogOHJlbTsgfVxuXG4ucGFsbC0xNl84cHQge1xuICBwYWRkaW5nLWFsbDogOHJlbTsgfVxuXG4ubXQtMTdfOHB0IHtcbiAgbWFyZ2luLXRvcDogOC41cmVtOyB9XG5cbi5tci0xN184cHQge1xuICBtYXJnaW4tcmlnaHQ6IDguNXJlbTsgfVxuXG4ubWItMTdfOHB0IHtcbiAgbWFyZ2luLWJvdHRvbTogOC41cmVtOyB9XG5cbi5tbC0xN184cHQge1xuICBtYXJnaW4tbGVmdDogOC41cmVtOyB9XG5cbi5tYWxsLTE3XzhwdCB7XG4gIG1hcmdpbi1hbGw6IDguNXJlbTsgfVxuXG4ucHQtMTdfOHB0IHtcbiAgcGFkZGluZy10b3A6IDguNXJlbTsgfVxuXG4ucHItMTdfOHB0IHtcbiAgcGFkZGluZy1yaWdodDogOC41cmVtOyB9XG5cbi5wYi0xN184cHQge1xuICBwYWRkaW5nLWJvdHRvbTogOC41cmVtOyB9XG5cbi5wbC0xN184cHQge1xuICBwYWRkaW5nLWxlZnQ6IDguNXJlbTsgfVxuXG4ucGFsbC0xN184cHQge1xuICBwYWRkaW5nLWFsbDogOC41cmVtOyB9XG5cbi5tdC0xOF84cHQge1xuICBtYXJnaW4tdG9wOiA5cmVtOyB9XG5cbi5tci0xOF84cHQge1xuICBtYXJnaW4tcmlnaHQ6IDlyZW07IH1cblxuLm1iLTE4XzhwdCB7XG4gIG1hcmdpbi1ib3R0b206IDlyZW07IH1cblxuLm1sLTE4XzhwdCB7XG4gIG1hcmdpbi1sZWZ0OiA5cmVtOyB9XG5cbi5tYWxsLTE4XzhwdCB7XG4gIG1hcmdpbi1hbGw6IDlyZW07IH1cblxuLnB0LTE4XzhwdCB7XG4gIHBhZGRpbmctdG9wOiA5cmVtOyB9XG5cbi5wci0xOF84cHQge1xuICBwYWRkaW5nLXJpZ2h0OiA5cmVtOyB9XG5cbi5wYi0xOF84cHQge1xuICBwYWRkaW5nLWJvdHRvbTogOXJlbTsgfVxuXG4ucGwtMThfOHB0IHtcbiAgcGFkZGluZy1sZWZ0OiA5cmVtOyB9XG5cbi5wYWxsLTE4XzhwdCB7XG4gIHBhZGRpbmctYWxsOiA5cmVtOyB9XG5cbi5tdC0xOV84cHQge1xuICBtYXJnaW4tdG9wOiA5LjVyZW07IH1cblxuLm1yLTE5XzhwdCB7XG4gIG1hcmdpbi1yaWdodDogOS41cmVtOyB9XG5cbi5tYi0xOV84cHQge1xuICBtYXJnaW4tYm90dG9tOiA5LjVyZW07IH1cblxuLm1sLTE5XzhwdCB7XG4gIG1hcmdpbi1sZWZ0OiA5LjVyZW07IH1cblxuLm1hbGwtMTlfOHB0IHtcbiAgbWFyZ2luLWFsbDogOS41cmVtOyB9XG5cbi5wdC0xOV84cHQge1xuICBwYWRkaW5nLXRvcDogOS41cmVtOyB9XG5cbi5wci0xOV84cHQge1xuICBwYWRkaW5nLXJpZ2h0OiA5LjVyZW07IH1cblxuLnBiLTE5XzhwdCB7XG4gIHBhZGRpbmctYm90dG9tOiA5LjVyZW07IH1cblxuLnBsLTE5XzhwdCB7XG4gIHBhZGRpbmctbGVmdDogOS41cmVtOyB9XG5cbi5wYWxsLTE5XzhwdCB7XG4gIHBhZGRpbmctYWxsOiA5LjVyZW07IH1cblxuLm10LTIwXzhwdCB7XG4gIG1hcmdpbi10b3A6IDEwcmVtOyB9XG5cbi5tci0yMF84cHQge1xuICBtYXJnaW4tcmlnaHQ6IDEwcmVtOyB9XG5cbi5tYi0yMF84cHQge1xuICBtYXJnaW4tYm90dG9tOiAxMHJlbTsgfVxuXG4ubWwtMjBfOHB0IHtcbiAgbWFyZ2luLWxlZnQ6IDEwcmVtOyB9XG5cbi5tYWxsLTIwXzhwdCB7XG4gIG1hcmdpbi1hbGw6IDEwcmVtOyB9XG5cbi5wdC0yMF84cHQge1xuICBwYWRkaW5nLXRvcDogMTByZW07IH1cblxuLnByLTIwXzhwdCB7XG4gIHBhZGRpbmctcmlnaHQ6IDEwcmVtOyB9XG5cbi5wYi0yMF84cHQge1xuICBwYWRkaW5nLWJvdHRvbTogMTByZW07IH1cblxuLnBsLTIwXzhwdCB7XG4gIHBhZGRpbmctbGVmdDogMTByZW07IH1cblxuLnBhbGwtMjBfOHB0IHtcbiAgcGFkZGluZy1hbGw6IDEwcmVtOyB9XG5cbi5tdC0yMV84cHQge1xuICBtYXJnaW4tdG9wOiAxMC41cmVtOyB9XG5cbi5tci0yMV84cHQge1xuICBtYXJnaW4tcmlnaHQ6IDEwLjVyZW07IH1cblxuLm1iLTIxXzhwdCB7XG4gIG1hcmdpbi1ib3R0b206IDEwLjVyZW07IH1cblxuLm1sLTIxXzhwdCB7XG4gIG1hcmdpbi1sZWZ0OiAxMC41cmVtOyB9XG5cbi5tYWxsLTIxXzhwdCB7XG4gIG1hcmdpbi1hbGw6IDEwLjVyZW07IH1cblxuLnB0LTIxXzhwdCB7XG4gIHBhZGRpbmctdG9wOiAxMC41cmVtOyB9XG5cbi5wci0yMV84cHQge1xuICBwYWRkaW5nLXJpZ2h0OiAxMC41cmVtOyB9XG5cbi5wYi0yMV84cHQge1xuICBwYWRkaW5nLWJvdHRvbTogMTAuNXJlbTsgfVxuXG4ucGwtMjFfOHB0IHtcbiAgcGFkZGluZy1sZWZ0OiAxMC41cmVtOyB9XG5cbi5wYWxsLTIxXzhwdCB7XG4gIHBhZGRpbmctYWxsOiAxMC41cmVtOyB9XG5cbi5tdC0yMl84cHQge1xuICBtYXJnaW4tdG9wOiAxMXJlbTsgfVxuXG4ubXItMjJfOHB0IHtcbiAgbWFyZ2luLXJpZ2h0OiAxMXJlbTsgfVxuXG4ubWItMjJfOHB0IHtcbiAgbWFyZ2luLWJvdHRvbTogMTFyZW07IH1cblxuLm1sLTIyXzhwdCB7XG4gIG1hcmdpbi1sZWZ0OiAxMXJlbTsgfVxuXG4ubWFsbC0yMl84cHQge1xuICBtYXJnaW4tYWxsOiAxMXJlbTsgfVxuXG4ucHQtMjJfOHB0IHtcbiAgcGFkZGluZy10b3A6IDExcmVtOyB9XG5cbi5wci0yMl84cHQge1xuICBwYWRkaW5nLXJpZ2h0OiAxMXJlbTsgfVxuXG4ucGItMjJfOHB0IHtcbiAgcGFkZGluZy1ib3R0b206IDExcmVtOyB9XG5cbi5wbC0yMl84cHQge1xuICBwYWRkaW5nLWxlZnQ6IDExcmVtOyB9XG5cbi5wYWxsLTIyXzhwdCB7XG4gIHBhZGRpbmctYWxsOiAxMXJlbTsgfVxuXG4ubXQtMjNfOHB0IHtcbiAgbWFyZ2luLXRvcDogMTEuNXJlbTsgfVxuXG4ubXItMjNfOHB0IHtcbiAgbWFyZ2luLXJpZ2h0OiAxMS41cmVtOyB9XG5cbi5tYi0yM184cHQge1xuICBtYXJnaW4tYm90dG9tOiAxMS41cmVtOyB9XG5cbi5tbC0yM184cHQge1xuICBtYXJnaW4tbGVmdDogMTEuNXJlbTsgfVxuXG4ubWFsbC0yM184cHQge1xuICBtYXJnaW4tYWxsOiAxMS41cmVtOyB9XG5cbi5wdC0yM184cHQge1xuICBwYWRkaW5nLXRvcDogMTEuNXJlbTsgfVxuXG4ucHItMjNfOHB0IHtcbiAgcGFkZGluZy1yaWdodDogMTEuNXJlbTsgfVxuXG4ucGItMjNfOHB0IHtcbiAgcGFkZGluZy1ib3R0b206IDExLjVyZW07IH1cblxuLnBsLTIzXzhwdCB7XG4gIHBhZGRpbmctbGVmdDogMTEuNXJlbTsgfVxuXG4ucGFsbC0yM184cHQge1xuICBwYWRkaW5nLWFsbDogMTEuNXJlbTsgfVxuXG4ubXQtMjRfOHB0IHtcbiAgbWFyZ2luLXRvcDogMTJyZW07IH1cblxuLm1yLTI0XzhwdCB7XG4gIG1hcmdpbi1yaWdodDogMTJyZW07IH1cblxuLm1iLTI0XzhwdCB7XG4gIG1hcmdpbi1ib3R0b206IDEycmVtOyB9XG5cbi5tbC0yNF84cHQge1xuICBtYXJnaW4tbGVmdDogMTJyZW07IH1cblxuLm1hbGwtMjRfOHB0IHtcbiAgbWFyZ2luLWFsbDogMTJyZW07IH1cblxuLnB0LTI0XzhwdCB7XG4gIHBhZGRpbmctdG9wOiAxMnJlbTsgfVxuXG4ucHItMjRfOHB0IHtcbiAgcGFkZGluZy1yaWdodDogMTJyZW07IH1cblxuLnBiLTI0XzhwdCB7XG4gIHBhZGRpbmctYm90dG9tOiAxMnJlbTsgfVxuXG4ucGwtMjRfOHB0IHtcbiAgcGFkZGluZy1sZWZ0OiAxMnJlbTsgfVxuXG4ucGFsbC0yNF84cHQge1xuICBwYWRkaW5nLWFsbDogMTJyZW07IH1cblxuLm10LTI1XzhwdCB7XG4gIG1hcmdpbi10b3A6IDEyLjVyZW07IH1cblxuLm1yLTI1XzhwdCB7XG4gIG1hcmdpbi1yaWdodDogMTIuNXJlbTsgfVxuXG4ubWItMjVfOHB0IHtcbiAgbWFyZ2luLWJvdHRvbTogMTIuNXJlbTsgfVxuXG4ubWwtMjVfOHB0IHtcbiAgbWFyZ2luLWxlZnQ6IDEyLjVyZW07IH1cblxuLm1hbGwtMjVfOHB0IHtcbiAgbWFyZ2luLWFsbDogMTIuNXJlbTsgfVxuXG4ucHQtMjVfOHB0IHtcbiAgcGFkZGluZy10b3A6IDEyLjVyZW07IH1cblxuLnByLTI1XzhwdCB7XG4gIHBhZGRpbmctcmlnaHQ6IDEyLjVyZW07IH1cblxuLnBiLTI1XzhwdCB7XG4gIHBhZGRpbmctYm90dG9tOiAxMi41cmVtOyB9XG5cbi5wbC0yNV84cHQge1xuICBwYWRkaW5nLWxlZnQ6IDEyLjVyZW07IH1cblxuLnBhbGwtMjVfOHB0IHtcbiAgcGFkZGluZy1hbGw6IDEyLjVyZW07IH1cblxuLm10LTI2XzhwdCB7XG4gIG1hcmdpbi10b3A6IDEzcmVtOyB9XG5cbi5tci0yNl84cHQge1xuICBtYXJnaW4tcmlnaHQ6IDEzcmVtOyB9XG5cbi5tYi0yNl84cHQge1xuICBtYXJnaW4tYm90dG9tOiAxM3JlbTsgfVxuXG4ubWwtMjZfOHB0IHtcbiAgbWFyZ2luLWxlZnQ6IDEzcmVtOyB9XG5cbi5tYWxsLTI2XzhwdCB7XG4gIG1hcmdpbi1hbGw6IDEzcmVtOyB9XG5cbi5wdC0yNl84cHQge1xuICBwYWRkaW5nLXRvcDogMTNyZW07IH1cblxuLnByLTI2XzhwdCB7XG4gIHBhZGRpbmctcmlnaHQ6IDEzcmVtOyB9XG5cbi5wYi0yNl84cHQge1xuICBwYWRkaW5nLWJvdHRvbTogMTNyZW07IH1cblxuLnBsLTI2XzhwdCB7XG4gIHBhZGRpbmctbGVmdDogMTNyZW07IH1cblxuLnBhbGwtMjZfOHB0IHtcbiAgcGFkZGluZy1hbGw6IDEzcmVtOyB9XG5cbi5tdC0yN184cHQge1xuICBtYXJnaW4tdG9wOiAxMy41cmVtOyB9XG5cbi5tci0yN184cHQge1xuICBtYXJnaW4tcmlnaHQ6IDEzLjVyZW07IH1cblxuLm1iLTI3XzhwdCB7XG4gIG1hcmdpbi1ib3R0b206IDEzLjVyZW07IH1cblxuLm1sLTI3XzhwdCB7XG4gIG1hcmdpbi1sZWZ0OiAxMy41cmVtOyB9XG5cbi5tYWxsLTI3XzhwdCB7XG4gIG1hcmdpbi1hbGw6IDEzLjVyZW07IH1cblxuLnB0LTI3XzhwdCB7XG4gIHBhZGRpbmctdG9wOiAxMy41cmVtOyB9XG5cbi5wci0yN184cHQge1xuICBwYWRkaW5nLXJpZ2h0OiAxMy41cmVtOyB9XG5cbi5wYi0yN184cHQge1xuICBwYWRkaW5nLWJvdHRvbTogMTMuNXJlbTsgfVxuXG4ucGwtMjdfOHB0IHtcbiAgcGFkZGluZy1sZWZ0OiAxMy41cmVtOyB9XG5cbi5wYWxsLTI3XzhwdCB7XG4gIHBhZGRpbmctYWxsOiAxMy41cmVtOyB9XG5cbi5tdC0yOF84cHQge1xuICBtYXJnaW4tdG9wOiAxNHJlbTsgfVxuXG4ubXItMjhfOHB0IHtcbiAgbWFyZ2luLXJpZ2h0OiAxNHJlbTsgfVxuXG4ubWItMjhfOHB0IHtcbiAgbWFyZ2luLWJvdHRvbTogMTRyZW07IH1cblxuLm1sLTI4XzhwdCB7XG4gIG1hcmdpbi1sZWZ0OiAxNHJlbTsgfVxuXG4ubWFsbC0yOF84cHQge1xuICBtYXJnaW4tYWxsOiAxNHJlbTsgfVxuXG4ucHQtMjhfOHB0IHtcbiAgcGFkZGluZy10b3A6IDE0cmVtOyB9XG5cbi5wci0yOF84cHQge1xuICBwYWRkaW5nLXJpZ2h0OiAxNHJlbTsgfVxuXG4ucGItMjhfOHB0IHtcbiAgcGFkZGluZy1ib3R0b206IDE0cmVtOyB9XG5cbi5wbC0yOF84cHQge1xuICBwYWRkaW5nLWxlZnQ6IDE0cmVtOyB9XG5cbi5wYWxsLTI4XzhwdCB7XG4gIHBhZGRpbmctYWxsOiAxNHJlbTsgfVxuXG4ubXQtMjlfOHB0IHtcbiAgbWFyZ2luLXRvcDogMTQuNXJlbTsgfVxuXG4ubXItMjlfOHB0IHtcbiAgbWFyZ2luLXJpZ2h0OiAxNC41cmVtOyB9XG5cbi5tYi0yOV84cHQge1xuICBtYXJnaW4tYm90dG9tOiAxNC41cmVtOyB9XG5cbi5tbC0yOV84cHQge1xuICBtYXJnaW4tbGVmdDogMTQuNXJlbTsgfVxuXG4ubWFsbC0yOV84cHQge1xuICBtYXJnaW4tYWxsOiAxNC41cmVtOyB9XG5cbi5wdC0yOV84cHQge1xuICBwYWRkaW5nLXRvcDogMTQuNXJlbTsgfVxuXG4ucHItMjlfOHB0IHtcbiAgcGFkZGluZy1yaWdodDogMTQuNXJlbTsgfVxuXG4ucGItMjlfOHB0IHtcbiAgcGFkZGluZy1ib3R0b206IDE0LjVyZW07IH1cblxuLnBsLTI5XzhwdCB7XG4gIHBhZGRpbmctbGVmdDogMTQuNXJlbTsgfVxuXG4ucGFsbC0yOV84cHQge1xuICBwYWRkaW5nLWFsbDogMTQuNXJlbTsgfVxuXG4ubXQtMzBfOHB0IHtcbiAgbWFyZ2luLXRvcDogMTVyZW07IH1cblxuLm1yLTMwXzhwdCB7XG4gIG1hcmdpbi1yaWdodDogMTVyZW07IH1cblxuLm1iLTMwXzhwdCB7XG4gIG1hcmdpbi1ib3R0b206IDE1cmVtOyB9XG5cbi5tbC0zMF84cHQge1xuICBtYXJnaW4tbGVmdDogMTVyZW07IH1cblxuLm1hbGwtMzBfOHB0IHtcbiAgbWFyZ2luLWFsbDogMTVyZW07IH1cblxuLnB0LTMwXzhwdCB7XG4gIHBhZGRpbmctdG9wOiAxNXJlbTsgfVxuXG4ucHItMzBfOHB0IHtcbiAgcGFkZGluZy1yaWdodDogMTVyZW07IH1cblxuLnBiLTMwXzhwdCB7XG4gIHBhZGRpbmctYm90dG9tOiAxNXJlbTsgfVxuXG4ucGwtMzBfOHB0IHtcbiAgcGFkZGluZy1sZWZ0OiAxNXJlbTsgfVxuXG4ucGFsbC0zMF84cHQge1xuICBwYWRkaW5nLWFsbDogMTVyZW07IH1cblxuLm10LTMxXzhwdCB7XG4gIG1hcmdpbi10b3A6IDE1LjVyZW07IH1cblxuLm1yLTMxXzhwdCB7XG4gIG1hcmdpbi1yaWdodDogMTUuNXJlbTsgfVxuXG4ubWItMzFfOHB0IHtcbiAgbWFyZ2luLWJvdHRvbTogMTUuNXJlbTsgfVxuXG4ubWwtMzFfOHB0IHtcbiAgbWFyZ2luLWxlZnQ6IDE1LjVyZW07IH1cblxuLm1hbGwtMzFfOHB0IHtcbiAgbWFyZ2luLWFsbDogMTUuNXJlbTsgfVxuXG4ucHQtMzFfOHB0IHtcbiAgcGFkZGluZy10b3A6IDE1LjVyZW07IH1cblxuLnByLTMxXzhwdCB7XG4gIHBhZGRpbmctcmlnaHQ6IDE1LjVyZW07IH1cblxuLnBiLTMxXzhwdCB7XG4gIHBhZGRpbmctYm90dG9tOiAxNS41cmVtOyB9XG5cbi5wbC0zMV84cHQge1xuICBwYWRkaW5nLWxlZnQ6IDE1LjVyZW07IH1cblxuLnBhbGwtMzFfOHB0IHtcbiAgcGFkZGluZy1hbGw6IDE1LjVyZW07IH1cblxuLm10LTMyXzhwdCB7XG4gIG1hcmdpbi10b3A6IDE2cmVtOyB9XG5cbi5tci0zMl84cHQge1xuICBtYXJnaW4tcmlnaHQ6IDE2cmVtOyB9XG5cbi5tYi0zMl84cHQge1xuICBtYXJnaW4tYm90dG9tOiAxNnJlbTsgfVxuXG4ubWwtMzJfOHB0IHtcbiAgbWFyZ2luLWxlZnQ6IDE2cmVtOyB9XG5cbi5tYWxsLTMyXzhwdCB7XG4gIG1hcmdpbi1hbGw6IDE2cmVtOyB9XG5cbi5wdC0zMl84cHQge1xuICBwYWRkaW5nLXRvcDogMTZyZW07IH1cblxuLnByLTMyXzhwdCB7XG4gIHBhZGRpbmctcmlnaHQ6IDE2cmVtOyB9XG5cbi5wYi0zMl84cHQge1xuICBwYWRkaW5nLWJvdHRvbTogMTZyZW07IH1cblxuLnBsLTMyXzhwdCB7XG4gIHBhZGRpbmctbGVmdDogMTZyZW07IH1cblxuLnBhbGwtMzJfOHB0IHtcbiAgcGFkZGluZy1hbGw6IDE2cmVtOyB9XG5cbi5tdC0zM184cHQge1xuICBtYXJnaW4tdG9wOiAxNi41cmVtOyB9XG5cbi5tci0zM184cHQge1xuICBtYXJnaW4tcmlnaHQ6IDE2LjVyZW07IH1cblxuLm1iLTMzXzhwdCB7XG4gIG1hcmdpbi1ib3R0b206IDE2LjVyZW07IH1cblxuLm1sLTMzXzhwdCB7XG4gIG1hcmdpbi1sZWZ0OiAxNi41cmVtOyB9XG5cbi5tYWxsLTMzXzhwdCB7XG4gIG1hcmdpbi1hbGw6IDE2LjVyZW07IH1cblxuLnB0LTMzXzhwdCB7XG4gIHBhZGRpbmctdG9wOiAxNi41cmVtOyB9XG5cbi5wci0zM184cHQge1xuICBwYWRkaW5nLXJpZ2h0OiAxNi41cmVtOyB9XG5cbi5wYi0zM184cHQge1xuICBwYWRkaW5nLWJvdHRvbTogMTYuNXJlbTsgfVxuXG4ucGwtMzNfOHB0IHtcbiAgcGFkZGluZy1sZWZ0OiAxNi41cmVtOyB9XG5cbi5wYWxsLTMzXzhwdCB7XG4gIHBhZGRpbmctYWxsOiAxNi41cmVtOyB9XG5cbi5tdC0zNF84cHQge1xuICBtYXJnaW4tdG9wOiAxN3JlbTsgfVxuXG4ubXItMzRfOHB0IHtcbiAgbWFyZ2luLXJpZ2h0OiAxN3JlbTsgfVxuXG4ubWItMzRfOHB0IHtcbiAgbWFyZ2luLWJvdHRvbTogMTdyZW07IH1cblxuLm1sLTM0XzhwdCB7XG4gIG1hcmdpbi1sZWZ0OiAxN3JlbTsgfVxuXG4ubWFsbC0zNF84cHQge1xuICBtYXJnaW4tYWxsOiAxN3JlbTsgfVxuXG4ucHQtMzRfOHB0IHtcbiAgcGFkZGluZy10b3A6IDE3cmVtOyB9XG5cbi5wci0zNF84cHQge1xuICBwYWRkaW5nLXJpZ2h0OiAxN3JlbTsgfVxuXG4ucGItMzRfOHB0IHtcbiAgcGFkZGluZy1ib3R0b206IDE3cmVtOyB9XG5cbi5wbC0zNF84cHQge1xuICBwYWRkaW5nLWxlZnQ6IDE3cmVtOyB9XG5cbi5wYWxsLTM0XzhwdCB7XG4gIHBhZGRpbmctYWxsOiAxN3JlbTsgfVxuXG4ubXQtMzVfOHB0IHtcbiAgbWFyZ2luLXRvcDogMTcuNXJlbTsgfVxuXG4ubXItMzVfOHB0IHtcbiAgbWFyZ2luLXJpZ2h0OiAxNy41cmVtOyB9XG5cbi5tYi0zNV84cHQge1xuICBtYXJnaW4tYm90dG9tOiAxNy41cmVtOyB9XG5cbi5tbC0zNV84cHQge1xuICBtYXJnaW4tbGVmdDogMTcuNXJlbTsgfVxuXG4ubWFsbC0zNV84cHQge1xuICBtYXJnaW4tYWxsOiAxNy41cmVtOyB9XG5cbi5wdC0zNV84cHQge1xuICBwYWRkaW5nLXRvcDogMTcuNXJlbTsgfVxuXG4ucHItMzVfOHB0IHtcbiAgcGFkZGluZy1yaWdodDogMTcuNXJlbTsgfVxuXG4ucGItMzVfOHB0IHtcbiAgcGFkZGluZy1ib3R0b206IDE3LjVyZW07IH1cblxuLnBsLTM1XzhwdCB7XG4gIHBhZGRpbmctbGVmdDogMTcuNXJlbTsgfVxuXG4ucGFsbC0zNV84cHQge1xuICBwYWRkaW5nLWFsbDogMTcuNXJlbTsgfVxuXG4ubXQtMzZfOHB0IHtcbiAgbWFyZ2luLXRvcDogMThyZW07IH1cblxuLm1yLTM2XzhwdCB7XG4gIG1hcmdpbi1yaWdodDogMThyZW07IH1cblxuLm1iLTM2XzhwdCB7XG4gIG1hcmdpbi1ib3R0b206IDE4cmVtOyB9XG5cbi5tbC0zNl84cHQge1xuICBtYXJnaW4tbGVmdDogMThyZW07IH1cblxuLm1hbGwtMzZfOHB0IHtcbiAgbWFyZ2luLWFsbDogMThyZW07IH1cblxuLnB0LTM2XzhwdCB7XG4gIHBhZGRpbmctdG9wOiAxOHJlbTsgfVxuXG4ucHItMzZfOHB0IHtcbiAgcGFkZGluZy1yaWdodDogMThyZW07IH1cblxuLnBiLTM2XzhwdCB7XG4gIHBhZGRpbmctYm90dG9tOiAxOHJlbTsgfVxuXG4ucGwtMzZfOHB0IHtcbiAgcGFkZGluZy1sZWZ0OiAxOHJlbTsgfVxuXG4ucGFsbC0zNl84cHQge1xuICBwYWRkaW5nLWFsbDogMThyZW07IH1cblxuLm10LTM3XzhwdCB7XG4gIG1hcmdpbi10b3A6IDE4LjVyZW07IH1cblxuLm1yLTM3XzhwdCB7XG4gIG1hcmdpbi1yaWdodDogMTguNXJlbTsgfVxuXG4ubWItMzdfOHB0IHtcbiAgbWFyZ2luLWJvdHRvbTogMTguNXJlbTsgfVxuXG4ubWwtMzdfOHB0IHtcbiAgbWFyZ2luLWxlZnQ6IDE4LjVyZW07IH1cblxuLm1hbGwtMzdfOHB0IHtcbiAgbWFyZ2luLWFsbDogMTguNXJlbTsgfVxuXG4ucHQtMzdfOHB0IHtcbiAgcGFkZGluZy10b3A6IDE4LjVyZW07IH1cblxuLnByLTM3XzhwdCB7XG4gIHBhZGRpbmctcmlnaHQ6IDE4LjVyZW07IH1cblxuLnBiLTM3XzhwdCB7XG4gIHBhZGRpbmctYm90dG9tOiAxOC41cmVtOyB9XG5cbi5wbC0zN184cHQge1xuICBwYWRkaW5nLWxlZnQ6IDE4LjVyZW07IH1cblxuLnBhbGwtMzdfOHB0IHtcbiAgcGFkZGluZy1hbGw6IDE4LjVyZW07IH1cblxuLm10LTM4XzhwdCB7XG4gIG1hcmdpbi10b3A6IDE5cmVtOyB9XG5cbi5tci0zOF84cHQge1xuICBtYXJnaW4tcmlnaHQ6IDE5cmVtOyB9XG5cbi5tYi0zOF84cHQge1xuICBtYXJnaW4tYm90dG9tOiAxOXJlbTsgfVxuXG4ubWwtMzhfOHB0IHtcbiAgbWFyZ2luLWxlZnQ6IDE5cmVtOyB9XG5cbi5tYWxsLTM4XzhwdCB7XG4gIG1hcmdpbi1hbGw6IDE5cmVtOyB9XG5cbi5wdC0zOF84cHQge1xuICBwYWRkaW5nLXRvcDogMTlyZW07IH1cblxuLnByLTM4XzhwdCB7XG4gIHBhZGRpbmctcmlnaHQ6IDE5cmVtOyB9XG5cbi5wYi0zOF84cHQge1xuICBwYWRkaW5nLWJvdHRvbTogMTlyZW07IH1cblxuLnBsLTM4XzhwdCB7XG4gIHBhZGRpbmctbGVmdDogMTlyZW07IH1cblxuLnBhbGwtMzhfOHB0IHtcbiAgcGFkZGluZy1hbGw6IDE5cmVtOyB9XG5cbi5tdC0zOV84cHQge1xuICBtYXJnaW4tdG9wOiAxOS41cmVtOyB9XG5cbi5tci0zOV84cHQge1xuICBtYXJnaW4tcmlnaHQ6IDE5LjVyZW07IH1cblxuLm1iLTM5XzhwdCB7XG4gIG1hcmdpbi1ib3R0b206IDE5LjVyZW07IH1cblxuLm1sLTM5XzhwdCB7XG4gIG1hcmdpbi1sZWZ0OiAxOS41cmVtOyB9XG5cbi5tYWxsLTM5XzhwdCB7XG4gIG1hcmdpbi1hbGw6IDE5LjVyZW07IH1cblxuLnB0LTM5XzhwdCB7XG4gIHBhZGRpbmctdG9wOiAxOS41cmVtOyB9XG5cbi5wci0zOV84cHQge1xuICBwYWRkaW5nLXJpZ2h0OiAxOS41cmVtOyB9XG5cbi5wYi0zOV84cHQge1xuICBwYWRkaW5nLWJvdHRvbTogMTkuNXJlbTsgfVxuXG4ucGwtMzlfOHB0IHtcbiAgcGFkZGluZy1sZWZ0OiAxOS41cmVtOyB9XG5cbi5wYWxsLTM5XzhwdCB7XG4gIHBhZGRpbmctYWxsOiAxOS41cmVtOyB9XG5cbi5tdC00MF84cHQge1xuICBtYXJnaW4tdG9wOiAyMHJlbTsgfVxuXG4ubXItNDBfOHB0IHtcbiAgbWFyZ2luLXJpZ2h0OiAyMHJlbTsgfVxuXG4ubWItNDBfOHB0IHtcbiAgbWFyZ2luLWJvdHRvbTogMjByZW07IH1cblxuLm1sLTQwXzhwdCB7XG4gIG1hcmdpbi1sZWZ0OiAyMHJlbTsgfVxuXG4ubWFsbC00MF84cHQge1xuICBtYXJnaW4tYWxsOiAyMHJlbTsgfVxuXG4ucHQtNDBfOHB0IHtcbiAgcGFkZGluZy10b3A6IDIwcmVtOyB9XG5cbi5wci00MF84cHQge1xuICBwYWRkaW5nLXJpZ2h0OiAyMHJlbTsgfVxuXG4ucGItNDBfOHB0IHtcbiAgcGFkZGluZy1ib3R0b206IDIwcmVtOyB9XG5cbi5wbC00MF84cHQge1xuICBwYWRkaW5nLWxlZnQ6IDIwcmVtOyB9XG5cbi5wYWxsLTQwXzhwdCB7XG4gIHBhZGRpbmctYWxsOiAyMHJlbTsgfVxuXG4ubXQtNDFfOHB0IHtcbiAgbWFyZ2luLXRvcDogMjAuNXJlbTsgfVxuXG4ubXItNDFfOHB0IHtcbiAgbWFyZ2luLXJpZ2h0OiAyMC41cmVtOyB9XG5cbi5tYi00MV84cHQge1xuICBtYXJnaW4tYm90dG9tOiAyMC41cmVtOyB9XG5cbi5tbC00MV84cHQge1xuICBtYXJnaW4tbGVmdDogMjAuNXJlbTsgfVxuXG4ubWFsbC00MV84cHQge1xuICBtYXJnaW4tYWxsOiAyMC41cmVtOyB9XG5cbi5wdC00MV84cHQge1xuICBwYWRkaW5nLXRvcDogMjAuNXJlbTsgfVxuXG4ucHItNDFfOHB0IHtcbiAgcGFkZGluZy1yaWdodDogMjAuNXJlbTsgfVxuXG4ucGItNDFfOHB0IHtcbiAgcGFkZGluZy1ib3R0b206IDIwLjVyZW07IH1cblxuLnBsLTQxXzhwdCB7XG4gIHBhZGRpbmctbGVmdDogMjAuNXJlbTsgfVxuXG4ucGFsbC00MV84cHQge1xuICBwYWRkaW5nLWFsbDogMjAuNXJlbTsgfVxuXG4ubXQtNDJfOHB0IHtcbiAgbWFyZ2luLXRvcDogMjFyZW07IH1cblxuLm1yLTQyXzhwdCB7XG4gIG1hcmdpbi1yaWdodDogMjFyZW07IH1cblxuLm1iLTQyXzhwdCB7XG4gIG1hcmdpbi1ib3R0b206IDIxcmVtOyB9XG5cbi5tbC00Ml84cHQge1xuICBtYXJnaW4tbGVmdDogMjFyZW07IH1cblxuLm1hbGwtNDJfOHB0IHtcbiAgbWFyZ2luLWFsbDogMjFyZW07IH1cblxuLnB0LTQyXzhwdCB7XG4gIHBhZGRpbmctdG9wOiAyMXJlbTsgfVxuXG4ucHItNDJfOHB0IHtcbiAgcGFkZGluZy1yaWdodDogMjFyZW07IH1cblxuLnBiLTQyXzhwdCB7XG4gIHBhZGRpbmctYm90dG9tOiAyMXJlbTsgfVxuXG4ucGwtNDJfOHB0IHtcbiAgcGFkZGluZy1sZWZ0OiAyMXJlbTsgfVxuXG4ucGFsbC00Ml84cHQge1xuICBwYWRkaW5nLWFsbDogMjFyZW07IH1cblxuLm10LTQzXzhwdCB7XG4gIG1hcmdpbi10b3A6IDIxLjVyZW07IH1cblxuLm1yLTQzXzhwdCB7XG4gIG1hcmdpbi1yaWdodDogMjEuNXJlbTsgfVxuXG4ubWItNDNfOHB0IHtcbiAgbWFyZ2luLWJvdHRvbTogMjEuNXJlbTsgfVxuXG4ubWwtNDNfOHB0IHtcbiAgbWFyZ2luLWxlZnQ6IDIxLjVyZW07IH1cblxuLm1hbGwtNDNfOHB0IHtcbiAgbWFyZ2luLWFsbDogMjEuNXJlbTsgfVxuXG4ucHQtNDNfOHB0IHtcbiAgcGFkZGluZy10b3A6IDIxLjVyZW07IH1cblxuLnByLTQzXzhwdCB7XG4gIHBhZGRpbmctcmlnaHQ6IDIxLjVyZW07IH1cblxuLnBiLTQzXzhwdCB7XG4gIHBhZGRpbmctYm90dG9tOiAyMS41cmVtOyB9XG5cbi5wbC00M184cHQge1xuICBwYWRkaW5nLWxlZnQ6IDIxLjVyZW07IH1cblxuLnBhbGwtNDNfOHB0IHtcbiAgcGFkZGluZy1hbGw6IDIxLjVyZW07IH1cblxuLm10LTQ0XzhwdCB7XG4gIG1hcmdpbi10b3A6IDIycmVtOyB9XG5cbi5tci00NF84cHQge1xuICBtYXJnaW4tcmlnaHQ6IDIycmVtOyB9XG5cbi5tYi00NF84cHQge1xuICBtYXJnaW4tYm90dG9tOiAyMnJlbTsgfVxuXG4ubWwtNDRfOHB0IHtcbiAgbWFyZ2luLWxlZnQ6IDIycmVtOyB9XG5cbi5tYWxsLTQ0XzhwdCB7XG4gIG1hcmdpbi1hbGw6IDIycmVtOyB9XG5cbi5wdC00NF84cHQge1xuICBwYWRkaW5nLXRvcDogMjJyZW07IH1cblxuLnByLTQ0XzhwdCB7XG4gIHBhZGRpbmctcmlnaHQ6IDIycmVtOyB9XG5cbi5wYi00NF84cHQge1xuICBwYWRkaW5nLWJvdHRvbTogMjJyZW07IH1cblxuLnBsLTQ0XzhwdCB7XG4gIHBhZGRpbmctbGVmdDogMjJyZW07IH1cblxuLnBhbGwtNDRfOHB0IHtcbiAgcGFkZGluZy1hbGw6IDIycmVtOyB9XG5cbi50ZXh0LS13aGl0ZSB7XG4gIGNvbG9yOiAjZmZmZmZmICFpbXBvcnRhbnQ7IH1cblxuLnRleHQtLWFsbW9zdC13aGl0ZSB7XG4gIGNvbG9yOiAjRjVGNUY1ICFpbXBvcnRhbnQ7IH1cblxuLnRleHQtLWxpZ2h0ZXN0LWdyYXkge1xuICBjb2xvcjogI2Y3ZjdmNyAhaW1wb3J0YW50OyB9XG5cbi50ZXh0LS1saWdodC1ncmF5IHtcbiAgY29sb3I6ICNlNmU2ZTYgIWltcG9ydGFudDsgfVxuXG4udGV4dC0tbWVkaXVtLWdyYXkge1xuICBjb2xvcjogI2NhY2FjYSAhaW1wb3J0YW50OyB9XG5cbi50ZXh0LS1kYXJrLWdyYXkge1xuICBjb2xvcjogIzhhOGE4YSAhaW1wb3J0YW50OyB9XG5cbi50ZXh0LS1hbG1vc3QtYmxhY2sge1xuICBjb2xvcjogIzIxMjEyMSAhaW1wb3J0YW50OyB9XG5cbi50ZXh0LS1ibGFjayB7XG4gIGNvbG9yOiAjMDAwMDAwICFpbXBvcnRhbnQ7IH1cblxuLnRleHQtLXByaW1hcnkge1xuICBjb2xvcjogIzJEQzlENyAhaW1wb3J0YW50OyB9XG5cbi50ZXh0LS1wcmltYXJ5LWEyMCB7XG4gIGNvbG9yOiByZ2JhKDQ1LCAyMDEsIDIxNSwgMC4yKSAhaW1wb3J0YW50OyB9XG5cbi50ZXh0LS1zZWNvbmRhcnkge1xuICBjb2xvcjogI0ZDQjUzNiAhaW1wb3J0YW50OyB9XG5cbi5iZy0td2hpdGUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmZmZmICFpbXBvcnRhbnQ7IH1cblxuLmJnLS1hbG1vc3Qtd2hpdGUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRjVGNUY1ICFpbXBvcnRhbnQ7IH1cblxuLmJnLS1saWdodGVzdC1ncmF5LCAuaWNvbi10ZXh0LWdyaWQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjdmN2Y3ICFpbXBvcnRhbnQ7IH1cblxuLmJnLS1saWdodC1ncmF5IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2U2ZTZlNiAhaW1wb3J0YW50OyB9XG5cbi5iZy0tbWVkaXVtLWdyYXkge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjY2FjYWNhICFpbXBvcnRhbnQ7IH1cblxuLmJnLS1kYXJrLWdyYXkge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjOGE4YThhICFpbXBvcnRhbnQ7IH1cblxuLmJnLS1hbG1vc3QtYmxhY2sge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMjEyMTIxICFpbXBvcnRhbnQ7IH1cblxuLmJnLS1ibGFjayB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwMDAwMDAgIWltcG9ydGFudDsgfVxuXG4uYmctLXByaW1hcnkge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMkRDOUQ3ICFpbXBvcnRhbnQ7IH1cblxuLmJnLS1wcmltYXJ5LWEyMCB7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoNDUsIDIwMSwgMjE1LCAwLjIpICFpbXBvcnRhbnQ7IH1cblxuLmJnLS1zZWNvbmRhcnkge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRkNCNTM2ICFpbXBvcnRhbnQ7IH1cblxuLmJnLS10cmFuc3BhcmVudCB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7IH1cblxuLmJnLS1ncmFkaWVudC1wcmltYXJ5LXByaW1hcnlhMjAge1xuICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoOTBkZWcsICMyREM5RDcgMCUsIHJnYmEoNDUsIDIwMSwgMjE1LCAwLjIpIDEwMCUpIG5vLXJlcGVhdCAhaW1wb3J0YW50OyB9XG5cbi5iZy0tZ3JhZGllbnQtcHJpbWFyeS1wcmltYXJ5YTIwLTQ1IHtcbiAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDQ1ZGVnLCAjMkRDOUQ3IDAlLCByZ2JhKDQ1LCAyMDEsIDIxNSwgMC4yKSAxMDAlKSBuby1yZXBlYXQgIWltcG9ydGFudDsgfVxuXG4ubGlzdC1zdHlsZS0tbm9uZSB7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIG1hcmdpbi1sZWZ0OiAwOyB9XG5cbi5jbGVhcmZpeDo6YmVmb3JlLCAuY2xlYXJmaXg6OmFmdGVyIHtcbiAgY29udGVudDogJyAnO1xuICBkaXNwbGF5OiB0YWJsZTtcbiAgY2xlYXI6IGJvdGg7IH1cblxuLmZsZXgtaGFsaWduLWNlbnRlciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIC13ZWJraXQtYm94LXBhY2s6IGNlbnRlcjtcbiAgLXdlYmtpdC1qdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgLW1zLWZsZXgtcGFjazogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsgfVxuXG4uZmxleC12YWxpZ24tY2VudGVyIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjsgfVxuXG4uaGFzLWJnLWltZywgLmZlYXR1cmVkLWhlcm8udmlwLWhlcm8gLmZlYXR1cmVkLWltYWdlIHtcbiAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjdmN2Y3OyB9XG5cbi8qISBub3JtYWxpemUtc2NzcyB8IE1JVC9HUEx2MiBMaWNlbnNlIHwgYml0Lmx5L25vcm1hbGl6ZS1zY3NzICovXG4vKiBEb2N1bWVudFxuICAgICAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKipcbiAgICAgKiAxLiBDaGFuZ2UgdGhlIGRlZmF1bHQgZm9udCBmYW1pbHkgaW4gYWxsIGJyb3dzZXJzIChvcGluaW9uYXRlZCkuXG4gICAgICogMi4gQ29ycmVjdCB0aGUgbGluZSBoZWlnaHQgaW4gYWxsIGJyb3dzZXJzLlxuICAgICAqIDMuIFByZXZlbnQgYWRqdXN0bWVudHMgb2YgZm9udCBzaXplIGFmdGVyIG9yaWVudGF0aW9uIGNoYW5nZXMgaW5cbiAgICAgKiAgICBJRSBvbiBXaW5kb3dzIFBob25lIGFuZCBpbiBpT1MuXG4gICAgICovXG5odG1sIHtcbiAgZm9udC1mYW1pbHk6IHNhbnMtc2VyaWY7XG4gIC8qIDEgKi9cbiAgbGluZS1oZWlnaHQ6IDEuMTU7XG4gIC8qIDIgKi9cbiAgLW1zLXRleHQtc2l6ZS1hZGp1c3Q6IDEwMCU7XG4gIC8qIDMgKi9cbiAgLXdlYmtpdC10ZXh0LXNpemUtYWRqdXN0OiAxMDAlO1xuICAvKiAzICovIH1cblxuLyogU2VjdGlvbnNcbiAgICAgICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyoqXG4gICAgICogUmVtb3ZlIHRoZSBtYXJnaW4gaW4gYWxsIGJyb3dzZXJzIChvcGluaW9uYXRlZCkuXG4gICAgICovXG5ib2R5IHtcbiAgbWFyZ2luOiAwOyB9XG5cbi8qKlxuICAgICAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFIDktLlxuICAgICAqL1xuYXJ0aWNsZSxcbmFzaWRlLFxuZm9vdGVyLFxuaGVhZGVyLFxubmF2LFxuc2VjdGlvbiB7XG4gIGRpc3BsYXk6IGJsb2NrOyB9XG5cbi8qKlxuICAgICAqIENvcnJlY3QgdGhlIGZvbnQgc2l6ZSBhbmQgbWFyZ2luIG9uIGBoMWAgZWxlbWVudHMgd2l0aGluIGBzZWN0aW9uYCBhbmRcbiAgICAgKiBgYXJ0aWNsZWAgY29udGV4dHMgaW4gQ2hyb21lLCBGaXJlZm94LCBhbmQgU2FmYXJpLlxuICAgICAqL1xuaDEge1xuICBmb250LXNpemU6IDJlbTtcbiAgbWFyZ2luOiAwLjY3ZW0gMDsgfVxuXG4vKiBHcm91cGluZyBjb250ZW50XG4gICAgICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qKlxuICAgICAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFIDktLlxuICAgICAqL1xuZmlnY2FwdGlvbixcbmZpZ3VyZSB7XG4gIGRpc3BsYXk6IGJsb2NrOyB9XG5cbi8qKlxuICAgICAqIEFkZCB0aGUgY29ycmVjdCBtYXJnaW4gaW4gSUUgOC5cbiAgICAgKi9cbmZpZ3VyZSB7XG4gIG1hcmdpbjogMWVtIDQwcHg7IH1cblxuLyoqXG4gICAgICogMS4gQWRkIHRoZSBjb3JyZWN0IGJveCBzaXppbmcgaW4gRmlyZWZveC5cbiAgICAgKiAyLiBTaG93IHRoZSBvdmVyZmxvdyBpbiBFZGdlIGFuZCBJRS5cbiAgICAgKi9cbmhyIHtcbiAgYm94LXNpemluZzogY29udGVudC1ib3g7XG4gIC8qIDEgKi9cbiAgaGVpZ2h0OiAwO1xuICAvKiAxICovXG4gIG92ZXJmbG93OiB2aXNpYmxlO1xuICAvKiAyICovIH1cblxuLyoqXG4gICAgICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUuXG4gICAgICovXG5tYWluIHtcbiAgZGlzcGxheTogYmxvY2s7IH1cblxuLyoqXG4gICAgICogMS4gQ29ycmVjdCB0aGUgaW5oZXJpdGFuY2UgYW5kIHNjYWxpbmcgb2YgZm9udCBzaXplIGluIGFsbCBicm93c2Vycy5cbiAgICAgKiAyLiBDb3JyZWN0IHRoZSBvZGQgYGVtYCBmb250IHNpemluZyBpbiBhbGwgYnJvd3NlcnMuXG4gICAgICovXG5wcmUge1xuICBmb250LWZhbWlseTogbW9ub3NwYWNlLCBtb25vc3BhY2U7XG4gIC8qIDEgKi9cbiAgZm9udC1zaXplOiAxZW07XG4gIC8qIDIgKi8gfVxuXG4vKiBMaW5rc1xuICAgICAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKipcbiAgICAgKiAxLiBSZW1vdmUgdGhlIGdyYXkgYmFja2dyb3VuZCBvbiBhY3RpdmUgbGlua3MgaW4gSUUgMTAuXG4gICAgICogMi4gUmVtb3ZlIGdhcHMgaW4gbGlua3MgdW5kZXJsaW5lIGluIGlPUyA4KyBhbmQgU2FmYXJpIDgrLlxuICAgICAqL1xuYSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAvKiAxICovXG4gIC13ZWJraXQtdGV4dC1kZWNvcmF0aW9uLXNraXA6IG9iamVjdHM7XG4gIC8qIDIgKi8gfVxuXG4vKipcbiAgICAgKiBSZW1vdmUgdGhlIG91dGxpbmUgb24gZm9jdXNlZCBsaW5rcyB3aGVuIHRoZXkgYXJlIGFsc28gYWN0aXZlIG9yIGhvdmVyZWRcbiAgICAgKiBpbiBhbGwgYnJvd3NlcnMgKG9waW5pb25hdGVkKS5cbiAgICAgKi9cbmE6YWN0aXZlLFxuYTpob3ZlciB7XG4gIG91dGxpbmUtd2lkdGg6IDA7IH1cblxuLyogVGV4dC1sZXZlbCBzZW1hbnRpY3NcbiAgICAgICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyoqXG4gICAgICogMS4gUmVtb3ZlIHRoZSBib3R0b20gYm9yZGVyIGluIEZpcmVmb3ggMzktLlxuICAgICAqIDIuIEFkZCB0aGUgY29ycmVjdCB0ZXh0IGRlY29yYXRpb24gaW4gQ2hyb21lLCBFZGdlLCBJRSwgT3BlcmEsIGFuZCBTYWZhcmkuXG4gICAgICovXG5hYmJyW3RpdGxlXSB7XG4gIGJvcmRlci1ib3R0b206IG5vbmU7XG4gIC8qIDEgKi9cbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gIC8qIDIgKi9cbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmUgZG90dGVkO1xuICAvKiAyICovIH1cblxuLyoqXG4gICAgICogUHJldmVudCB0aGUgZHVwbGljYXRlIGFwcGxpY2F0aW9uIG9mIGBib2xkZXJgIGJ5IHRoZSBuZXh0IHJ1bGUgaW4gU2FmYXJpIDYuXG4gICAgICovXG5iLFxuc3Ryb25nIHtcbiAgZm9udC13ZWlnaHQ6IGluaGVyaXQ7IH1cblxuLyoqXG4gICAgICogQWRkIHRoZSBjb3JyZWN0IGZvbnQgd2VpZ2h0IGluIENocm9tZSwgRWRnZSwgYW5kIFNhZmFyaS5cbiAgICAgKi9cbmIsXG5zdHJvbmcge1xuICBmb250LXdlaWdodDogYm9sZGVyOyB9XG5cbi8qKlxuICAgICAqIDEuIENvcnJlY3QgdGhlIGluaGVyaXRhbmNlIGFuZCBzY2FsaW5nIG9mIGZvbnQgc2l6ZSBpbiBhbGwgYnJvd3NlcnMuXG4gICAgICogMi4gQ29ycmVjdCB0aGUgb2RkIGBlbWAgZm9udCBzaXppbmcgaW4gYWxsIGJyb3dzZXJzLlxuICAgICAqL1xuY29kZSxcbmtiZCxcbnNhbXAge1xuICBmb250LWZhbWlseTogbW9ub3NwYWNlLCBtb25vc3BhY2U7XG4gIC8qIDEgKi9cbiAgZm9udC1zaXplOiAxZW07XG4gIC8qIDIgKi8gfVxuXG4vKipcbiAgICAgKiBBZGQgdGhlIGNvcnJlY3QgZm9udCBzdHlsZSBpbiBBbmRyb2lkIDQuMy0uXG4gICAgICovXG5kZm4ge1xuICBmb250LXN0eWxlOiBpdGFsaWM7IH1cblxuLyoqXG4gICAgICogQWRkIHRoZSBjb3JyZWN0IGJhY2tncm91bmQgYW5kIGNvbG9yIGluIElFIDktLlxuICAgICAqL1xubWFyayB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZjA7XG4gIGNvbG9yOiAjMDAwOyB9XG5cbi8qKlxuICAgICAqIEFkZCB0aGUgY29ycmVjdCBmb250IHNpemUgaW4gYWxsIGJyb3dzZXJzLlxuICAgICAqL1xuc21hbGwge1xuICBmb250LXNpemU6IDgwJTsgfVxuXG4vKipcbiAgICAgKiBQcmV2ZW50IGBzdWJgIGFuZCBgc3VwYCBlbGVtZW50cyBmcm9tIGFmZmVjdGluZyB0aGUgbGluZSBoZWlnaHQgaW5cbiAgICAgKiBhbGwgYnJvd3NlcnMuXG4gICAgICovXG5zdWIsXG5zdXAge1xuICBmb250LXNpemU6IDc1JTtcbiAgbGluZS1oZWlnaHQ6IDA7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lOyB9XG5cbnN1YiB7XG4gIGJvdHRvbTogLTAuMjVlbTsgfVxuXG5zdXAge1xuICB0b3A6IC0wLjVlbTsgfVxuXG4vKiBFbWJlZGRlZCBjb250ZW50XG4gICAgICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qKlxuICAgICAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFIDktLlxuICAgICAqL1xuYXVkaW8sXG52aWRlbyB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jazsgfVxuXG4vKipcbiAgICAgKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBpT1MgNC03LlxuICAgICAqL1xuYXVkaW86bm90KFtjb250cm9sc10pIHtcbiAgZGlzcGxheTogbm9uZTtcbiAgaGVpZ2h0OiAwOyB9XG5cbi8qKlxuICAgICAqIFJlbW92ZSB0aGUgYm9yZGVyIG9uIGltYWdlcyBpbnNpZGUgbGlua3MgaW4gSUUgMTAtLlxuICAgICAqL1xuaW1nIHtcbiAgYm9yZGVyLXN0eWxlOiBub25lOyB9XG5cbi8qKlxuICAgICAqIEhpZGUgdGhlIG92ZXJmbG93IGluIElFLlxuICAgICAqL1xuc3ZnOm5vdCg6cm9vdCkge1xuICBvdmVyZmxvdzogaGlkZGVuOyB9XG5cbi8qIEZvcm1zXG4gICAgICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qKlxuICAgICAqIDEuIENoYW5nZSB0aGUgZm9udCBzdHlsZXMgaW4gYWxsIGJyb3dzZXJzIChvcGluaW9uYXRlZCkuXG4gICAgICogMi4gUmVtb3ZlIHRoZSBtYXJnaW4gaW4gRmlyZWZveCBhbmQgU2FmYXJpLlxuICAgICAqL1xuYnV0dG9uLFxuaW5wdXQsXG5vcHRncm91cCxcbnNlbGVjdCxcbnRleHRhcmVhIHtcbiAgZm9udC1mYW1pbHk6IHNhbnMtc2VyaWY7XG4gIC8qIDEgKi9cbiAgZm9udC1zaXplOiAxMDAlO1xuICAvKiAxICovXG4gIGxpbmUtaGVpZ2h0OiAxLjE1O1xuICAvKiAxICovXG4gIG1hcmdpbjogMDtcbiAgLyogMiAqLyB9XG5cbi8qKlxuICAgICAqIFNob3cgdGhlIG92ZXJmbG93IGluIElFLlxuICAgICAqL1xuYnV0dG9uIHtcbiAgb3ZlcmZsb3c6IHZpc2libGU7IH1cblxuLyoqXG4gICAgICogUmVtb3ZlIHRoZSBpbmhlcml0YW5jZSBvZiB0ZXh0IHRyYW5zZm9ybSBpbiBFZGdlLCBGaXJlZm94LCBhbmQgSUUuXG4gICAgICogMS4gUmVtb3ZlIHRoZSBpbmhlcml0YW5jZSBvZiB0ZXh0IHRyYW5zZm9ybSBpbiBGaXJlZm94LlxuICAgICAqL1xuYnV0dG9uLFxuc2VsZWN0IHtcbiAgLyogMSAqL1xuICB0ZXh0LXRyYW5zZm9ybTogbm9uZTsgfVxuXG4vKipcbiAgICAgKiAxLiBQcmV2ZW50IGEgV2ViS2l0IGJ1ZyB3aGVyZSAoMikgZGVzdHJveXMgbmF0aXZlIGBhdWRpb2AgYW5kIGB2aWRlb2BcbiAgICAgKiAgICBjb250cm9scyBpbiBBbmRyb2lkIDQuXG4gICAgICogMi4gQ29ycmVjdCB0aGUgaW5hYmlsaXR5IHRvIHN0eWxlIGNsaWNrYWJsZSB0eXBlcyBpbiBpT1MgYW5kIFNhZmFyaS5cbiAgICAgKi9cbmJ1dHRvbixcbmh0bWwgW3R5cGU9XCJidXR0b25cIl0sXG5bdHlwZT1cInJlc2V0XCJdLFxuW3R5cGU9XCJzdWJtaXRcIl0ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IGJ1dHRvbjtcbiAgLyogMiAqLyB9XG5cbmJ1dHRvbixcblt0eXBlPVwiYnV0dG9uXCJdLFxuW3R5cGU9XCJyZXNldFwiXSxcblt0eXBlPVwic3VibWl0XCJdIHtcbiAgLyoqXG4gICAgICAgKiBSZW1vdmUgdGhlIGlubmVyIGJvcmRlciBhbmQgcGFkZGluZyBpbiBGaXJlZm94LlxuICAgICAgICovXG4gIC8qKlxuICAgICAgICogUmVzdG9yZSB0aGUgZm9jdXMgc3R5bGVzIHVuc2V0IGJ5IHRoZSBwcmV2aW91cyBydWxlLlxuICAgICAgICovIH1cbiAgYnV0dG9uOjotbW96LWZvY3VzLWlubmVyLFxuICBbdHlwZT1cImJ1dHRvblwiXTo6LW1vei1mb2N1cy1pbm5lcixcbiAgW3R5cGU9XCJyZXNldFwiXTo6LW1vei1mb2N1cy1pbm5lcixcbiAgW3R5cGU9XCJzdWJtaXRcIl06Oi1tb3otZm9jdXMtaW5uZXIge1xuICAgIGJvcmRlci1zdHlsZTogbm9uZTtcbiAgICBwYWRkaW5nOiAwOyB9XG4gIGJ1dHRvbjotbW96LWZvY3VzcmluZyxcbiAgW3R5cGU9XCJidXR0b25cIl06LW1vei1mb2N1c3JpbmcsXG4gIFt0eXBlPVwicmVzZXRcIl06LW1vei1mb2N1c3JpbmcsXG4gIFt0eXBlPVwic3VibWl0XCJdOi1tb3otZm9jdXNyaW5nIHtcbiAgICBvdXRsaW5lOiAxcHggZG90dGVkIEJ1dHRvblRleHQ7IH1cblxuLyoqXG4gICAgICogU2hvdyB0aGUgb3ZlcmZsb3cgaW4gRWRnZS5cbiAgICAgKi9cbmlucHV0IHtcbiAgb3ZlcmZsb3c6IHZpc2libGU7IH1cblxuLyoqXG4gICAgICogMS4gQWRkIHRoZSBjb3JyZWN0IGJveCBzaXppbmcgaW4gSUUgMTAtLlxuICAgICAqIDIuIFJlbW92ZSB0aGUgcGFkZGluZyBpbiBJRSAxMC0uXG4gICAgICovXG5bdHlwZT1cImNoZWNrYm94XCJdLFxuW3R5cGU9XCJyYWRpb1wiXSB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIC8qIDEgKi9cbiAgcGFkZGluZzogMDtcbiAgLyogMiAqLyB9XG5cbi8qKlxuICAgICAqIENvcnJlY3QgdGhlIGN1cnNvciBzdHlsZSBvZiBpbmNyZW1lbnQgYW5kIGRlY3JlbWVudCBidXR0b25zIGluIENocm9tZS5cbiAgICAgKi9cblt0eXBlPVwibnVtYmVyXCJdOjotd2Via2l0LWlubmVyLXNwaW4tYnV0dG9uLFxuW3R5cGU9XCJudW1iZXJcIl06Oi13ZWJraXQtb3V0ZXItc3Bpbi1idXR0b24ge1xuICBoZWlnaHQ6IGF1dG87IH1cblxuLyoqXG4gICAgICogMS4gQ29ycmVjdCB0aGUgb2RkIGFwcGVhcmFuY2UgaW4gQ2hyb21lIGFuZCBTYWZhcmkuXG4gICAgICogMi4gQ29ycmVjdCB0aGUgb3V0bGluZSBzdHlsZSBpbiBTYWZhcmkuXG4gICAgICovXG5bdHlwZT1cInNlYXJjaFwiXSB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogdGV4dGZpZWxkO1xuICAvKiAxICovXG4gIG91dGxpbmUtb2Zmc2V0OiAtMnB4O1xuICAvKiAyICovXG4gIC8qKlxuICAgICAgICogUmVtb3ZlIHRoZSBpbm5lciBwYWRkaW5nIGFuZCBjYW5jZWwgYnV0dG9ucyBpbiBDaHJvbWUgYW5kIFNhZmFyaSBvbiBtYWNPUy5cbiAgICAgICAqLyB9XG4gIFt0eXBlPVwic2VhcmNoXCJdOjotd2Via2l0LXNlYXJjaC1jYW5jZWwtYnV0dG9uLCBbdHlwZT1cInNlYXJjaFwiXTo6LXdlYmtpdC1zZWFyY2gtZGVjb3JhdGlvbiB7XG4gICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lOyB9XG5cbi8qKlxuICAgICAqIDEuIENvcnJlY3QgdGhlIGluYWJpbGl0eSB0byBzdHlsZSBjbGlja2FibGUgdHlwZXMgaW4gaU9TIGFuZCBTYWZhcmkuXG4gICAgICogMi4gQ2hhbmdlIGZvbnQgcHJvcGVydGllcyB0byBgaW5oZXJpdGAgaW4gU2FmYXJpLlxuICAgICAqL1xuOjotd2Via2l0LWZpbGUtdXBsb2FkLWJ1dHRvbiB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogYnV0dG9uO1xuICAvKiAxICovXG4gIGZvbnQ6IGluaGVyaXQ7XG4gIC8qIDIgKi8gfVxuXG4vKipcbiAgICAgKiBDaGFuZ2UgdGhlIGJvcmRlciwgbWFyZ2luLCBhbmQgcGFkZGluZyBpbiBhbGwgYnJvd3NlcnMgKG9waW5pb25hdGVkKS5cbiAgICAgKi9cbmZpZWxkc2V0IHtcbiAgYm9yZGVyOiAxcHggc29saWQgI2MwYzBjMDtcbiAgbWFyZ2luOiAwIDJweDtcbiAgcGFkZGluZzogMC4zNWVtIDAuNjI1ZW0gMC43NWVtOyB9XG5cbi8qKlxuICAgICAqIDEuIENvcnJlY3QgdGhlIHRleHQgd3JhcHBpbmcgaW4gRWRnZSBhbmQgSUUuXG4gICAgICogMi4gQ29ycmVjdCB0aGUgY29sb3IgaW5oZXJpdGFuY2UgZnJvbSBgZmllbGRzZXRgIGVsZW1lbnRzIGluIElFLlxuICAgICAqIDMuIFJlbW92ZSB0aGUgcGFkZGluZyBzbyBkZXZlbG9wZXJzIGFyZSBub3QgY2F1Z2h0IG91dCB3aGVuIHRoZXkgemVybyBvdXRcbiAgICAgKiAgICBgZmllbGRzZXRgIGVsZW1lbnRzIGluIGFsbCBicm93c2Vycy5cbiAgICAgKi9cbmxlZ2VuZCB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIC8qIDEgKi9cbiAgZGlzcGxheTogdGFibGU7XG4gIC8qIDEgKi9cbiAgbWF4LXdpZHRoOiAxMDAlO1xuICAvKiAxICovXG4gIHBhZGRpbmc6IDA7XG4gIC8qIDMgKi9cbiAgY29sb3I6IGluaGVyaXQ7XG4gIC8qIDIgKi9cbiAgd2hpdGUtc3BhY2U6IG5vcm1hbDtcbiAgLyogMSAqLyB9XG5cbi8qKlxuICAgICAqIDEuIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFIDktLlxuICAgICAqIDIuIEFkZCB0aGUgY29ycmVjdCB2ZXJ0aWNhbCBhbGlnbm1lbnQgaW4gQ2hyb21lLCBGaXJlZm94LCBhbmQgT3BlcmEuXG4gICAgICovXG5wcm9ncmVzcyB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgLyogMSAqL1xuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG4gIC8qIDIgKi8gfVxuXG4vKipcbiAgICAgKiBSZW1vdmUgdGhlIGRlZmF1bHQgdmVydGljYWwgc2Nyb2xsYmFyIGluIElFLlxuICAgICAqL1xudGV4dGFyZWEge1xuICBvdmVyZmxvdzogYXV0bzsgfVxuXG4vKiBJbnRlcmFjdGl2ZVxuICAgICAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKlxuICAgICAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIEVkZ2UsIElFLCBhbmQgRmlyZWZveC5cbiAgICAgKi9cbmRldGFpbHMge1xuICBkaXNwbGF5OiBibG9jazsgfVxuXG4vKlxuICAgICAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIGFsbCBicm93c2Vycy5cbiAgICAgKi9cbnN1bW1hcnkge1xuICBkaXNwbGF5OiBsaXN0LWl0ZW07IH1cblxuLypcbiAgICAgKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRSA5LS5cbiAgICAgKi9cbm1lbnUge1xuICBkaXNwbGF5OiBibG9jazsgfVxuXG4vKiBTY3JpcHRpbmdcbiAgICAgICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyoqXG4gICAgICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUgOS0uXG4gICAgICovXG5jYW52YXMge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IH1cblxuLyoqXG4gICAgICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUuXG4gICAgICovXG50ZW1wbGF0ZSB7XG4gIGRpc3BsYXk6IG5vbmU7IH1cblxuLyogSGlkZGVuXG4gICAgICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qKlxuICAgICAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFIDEwLS5cbiAgICAgKi9cbltoaWRkZW5dIHtcbiAgZGlzcGxheTogbm9uZTsgfVxuXG4uZm91bmRhdGlvbi1tcSB7XG4gIGZvbnQtZmFtaWx5OiBcInNtYWxsPTBlbSZtZWRpdW09NDBlbSZsYXJnZT02NGVtJnhsYXJnZT03NWVtJnh4bGFyZ2U9OTBlbVwiOyB9XG5cbmh0bWwge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICBmb250LXNpemU6IDEwMCU7IH1cblxuKixcbio6OmJlZm9yZSxcbio6OmFmdGVyIHtcbiAgYm94LXNpemluZzogaW5oZXJpdDsgfVxuXG5ib2R5IHtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xuICBiYWNrZ3JvdW5kOiAjZmZmZmZmO1xuICBmb250LWZhbWlseTogXCJnb3JkaXRhcmVndWxhclwiLCAtYXBwbGUtc3lzdGVtLCBCbGlua01hY1N5c3RlbUZvbnQsIFwiU2Vnb2UgVUlcIiwgXCJSb2JvdG9cIiwgXCJPeHlnZW5cIiwgXCJVYnVudHVcIiwgXCJDYW50YXJlbGxcIiwgXCJGaXJhIFNhbnNcIiwgXCJEcm9pZCBTYW5zXCIsIFwiSGVsdmV0aWNhIE5ldWVcIiwgc2Fucy1zZXJpZjtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgbGluZS1oZWlnaHQ6IDEuNTtcbiAgY29sb3I6ICMwMDAwMDA7XG4gIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlOyB9XG5cbmltZyB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IGF1dG87XG4gIC1tcy1pbnRlcnBvbGF0aW9uLW1vZGU6IGJpY3ViaWM7IH1cblxudGV4dGFyZWEge1xuICBoZWlnaHQ6IGF1dG87XG4gIG1pbi1oZWlnaHQ6IDUwcHg7XG4gIGJvcmRlci1yYWRpdXM6IDA7IH1cblxuc2VsZWN0IHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgd2lkdGg6IDEwMCU7XG4gIGJvcmRlci1yYWRpdXM6IDA7IH1cblxuLm1hcF9jYW52YXMgaW1nLFxuLm1hcF9jYW52YXMgZW1iZWQsXG4ubWFwX2NhbnZhcyBvYmplY3QsXG4ubXFhLWRpc3BsYXkgaW1nLFxuLm1xYS1kaXNwbGF5IGVtYmVkLFxuLm1xYS1kaXNwbGF5IG9iamVjdCB7XG4gIG1heC13aWR0aDogbm9uZSAhaW1wb3J0YW50OyB9XG5cbmJ1dHRvbiB7XG4gIHBhZGRpbmc6IDA7XG4gIGFwcGVhcmFuY2U6IG5vbmU7XG4gIGJvcmRlcjogMDtcbiAgYm9yZGVyLXJhZGl1czogMDtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICBjdXJzb3I6IGF1dG87IH1cbiAgW2RhdGEtd2hhdGlucHV0PSdtb3VzZSddIGJ1dHRvbiB7XG4gICAgb3V0bGluZTogMDsgfVxuXG5wcmUge1xuICBvdmVyZmxvdzogYXV0bzsgfVxuXG5idXR0b24sXG5pbnB1dCxcbm9wdGdyb3VwLFxuc2VsZWN0LFxudGV4dGFyZWEge1xuICBmb250LWZhbWlseTogaW5oZXJpdDsgfVxuXG4uaXMtdmlzaWJsZSB7XG4gIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7IH1cblxuLmlzLWhpZGRlbiB7XG4gIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfVxuXG4uZ3JpZC1jb250YWluZXIsIC50b3AtYmFyIHtcbiAgcGFkZGluZy1yaWdodDogMS41cmVtO1xuICBwYWRkaW5nLWxlZnQ6IDEuNXJlbTtcbiAgbWF4LXdpZHRoOiA5MHJlbTtcbiAgbWFyZ2luOiAwIGF1dG87IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuZ3JpZC1jb250YWluZXIsIC50b3AtYmFyIHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDQuMzc1cmVtO1xuICAgICAgcGFkZGluZy1sZWZ0OiA0LjM3NXJlbTsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmdyaWQtY29udGFpbmVyLCAudG9wLWJhciB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiA2LjI1cmVtO1xuICAgICAgcGFkZGluZy1sZWZ0OiA2LjI1cmVtOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgIC5ncmlkLWNvbnRhaW5lciwgLnRvcC1iYXIge1xuICAgICAgcGFkZGluZy1yaWdodDogNy41cmVtO1xuICAgICAgcGFkZGluZy1sZWZ0OiA3LjVyZW07IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5MGVtKSB7XG4gICAgLmdyaWQtY29udGFpbmVyLCAudG9wLWJhciB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiA3LjVyZW07XG4gICAgICBwYWRkaW5nLWxlZnQ6IDcuNXJlbTsgfSB9XG4gIC5ncmlkLWNvbnRhaW5lci5mbHVpZCwgLmZsdWlkLnRvcC1iYXIge1xuICAgIHBhZGRpbmctcmlnaHQ6IDEuNXJlbTtcbiAgICBwYWRkaW5nLWxlZnQ6IDEuNXJlbTtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgbWFyZ2luOiAwIGF1dG87IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgLmdyaWQtY29udGFpbmVyLmZsdWlkLCAuZmx1aWQudG9wLWJhciB7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDQuMzc1cmVtO1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDQuMzc1cmVtOyB9IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgLmdyaWQtY29udGFpbmVyLmZsdWlkLCAuZmx1aWQudG9wLWJhciB7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDYuMjVyZW07XG4gICAgICAgIHBhZGRpbmctbGVmdDogNi4yNXJlbTsgfSB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgICAgLmdyaWQtY29udGFpbmVyLmZsdWlkLCAuZmx1aWQudG9wLWJhciB7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDcuNXJlbTtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiA3LjVyZW07IH0gfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDkwZW0pIHtcbiAgICAgIC5ncmlkLWNvbnRhaW5lci5mbHVpZCwgLmZsdWlkLnRvcC1iYXIge1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiA3LjVyZW07XG4gICAgICAgIHBhZGRpbmctbGVmdDogNy41cmVtOyB9IH1cbiAgLmdyaWQtY29udGFpbmVyLmZ1bGwsIC5mdWxsLnRvcC1iYXIge1xuICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgICBtYXJnaW46IDAgYXV0bzsgfVxuXG4uZ3JpZC14IHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1mbG93OiByb3cgd3JhcDsgfVxuXG4uY2VsbCB7XG4gIGZsZXg6IDAgMCBhdXRvO1xuICBtaW4taGVpZ2h0OiAwcHg7XG4gIG1pbi13aWR0aDogMHB4O1xuICB3aWR0aDogMTAwJTsgfVxuICAuY2VsbC5hdXRvIHtcbiAgICBmbGV4OiAxIDEgMHB4OyB9XG4gIC5jZWxsLnNocmluayB7XG4gICAgZmxleDogMCAwIGF1dG87IH1cblxuLmdyaWQteCA+IC5hdXRvIHtcbiAgd2lkdGg6IGF1dG87IH1cblxuLmdyaWQteCA+IC5zaHJpbmsge1xuICB3aWR0aDogYXV0bzsgfVxuXG4uZ3JpZC14ID4gLnNtYWxsLXNocmluaywgLmdyaWQteCA+IC5zbWFsbC1mdWxsLCAuZ3JpZC14ID4gLnNtYWxsLTEsIC5ncmlkLXggPiAuc21hbGwtMiwgLmdyaWQteCA+IC5zbWFsbC0zLCAuZ3JpZC14ID4gLnNtYWxsLTQsIC5ncmlkLXggPiAuc21hbGwtNSwgLmdyaWQteCA+IC5zbWFsbC02LCAuZ3JpZC14ID4gLnNtYWxsLTcsIC5ncmlkLXggPiAuc21hbGwtOCwgLmdyaWQteCA+IC5zbWFsbC05LCAuZ3JpZC14ID4gLnNtYWxsLTEwLCAuZ3JpZC14ID4gLnNtYWxsLTExLCAuZ3JpZC14ID4gLnNtYWxsLTEyIHtcbiAgZmxleC1iYXNpczogYXV0bzsgfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAuZ3JpZC14ID4gLm1lZGl1bS1zaHJpbmssIC5ncmlkLXggPiAubWVkaXVtLWZ1bGwsIC5ncmlkLXggPiAubWVkaXVtLTEsIC5ncmlkLXggPiAubWVkaXVtLTIsIC5ncmlkLXggPiAubWVkaXVtLTMsIC5ncmlkLXggPiAubWVkaXVtLTQsIC5ncmlkLXggPiAubWVkaXVtLTUsIC5ncmlkLXggPiAubWVkaXVtLTYsIC5ncmlkLXggPiAubWVkaXVtLTcsIC5ncmlkLXggPiAubWVkaXVtLTgsIC5ncmlkLXggPiAubWVkaXVtLTksIC5ncmlkLXggPiAubWVkaXVtLTEwLCAuZ3JpZC14ID4gLm1lZGl1bS0xMSwgLmdyaWQteCA+IC5tZWRpdW0tMTIge1xuICAgIGZsZXgtYmFzaXM6IGF1dG87IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuZ3JpZC14ID4gLmxhcmdlLXNocmluaywgLmdyaWQteCA+IC5sYXJnZS1mdWxsLCAuZ3JpZC14ID4gLmxhcmdlLTEsIC5ncmlkLXggPiAubGFyZ2UtMiwgLmdyaWQteCA+IC5sYXJnZS0zLCAuZ3JpZC14ID4gLmxhcmdlLTQsIC5ncmlkLXggPiAubGFyZ2UtNSwgLmdyaWQteCA+IC5sYXJnZS02LCAuZ3JpZC14ID4gLmxhcmdlLTcsIC5ncmlkLXggPiAubGFyZ2UtOCwgLmdyaWQteCA+IC5sYXJnZS05LCAuZ3JpZC14ID4gLmxhcmdlLTEwLCAuZ3JpZC14ID4gLmxhcmdlLTExLCAuZ3JpZC14ID4gLmxhcmdlLTEyIHtcbiAgICBmbGV4LWJhc2lzOiBhdXRvOyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAuZ3JpZC14ID4gLnhsYXJnZS1zaHJpbmssIC5ncmlkLXggPiAueGxhcmdlLWZ1bGwsIC5ncmlkLXggPiAueGxhcmdlLTEsIC5ncmlkLXggPiAueGxhcmdlLTIsIC5ncmlkLXggPiAueGxhcmdlLTMsIC5ncmlkLXggPiAueGxhcmdlLTQsIC5ncmlkLXggPiAueGxhcmdlLTUsIC5ncmlkLXggPiAueGxhcmdlLTYsIC5ncmlkLXggPiAueGxhcmdlLTcsIC5ncmlkLXggPiAueGxhcmdlLTgsIC5ncmlkLXggPiAueGxhcmdlLTksIC5ncmlkLXggPiAueGxhcmdlLTEwLCAuZ3JpZC14ID4gLnhsYXJnZS0xMSwgLmdyaWQteCA+IC54bGFyZ2UtMTIge1xuICAgIGZsZXgtYmFzaXM6IGF1dG87IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5MGVtKSB7XG4gIC5ncmlkLXggPiAueHhsYXJnZS1zaHJpbmssIC5ncmlkLXggPiAueHhsYXJnZS1mdWxsLCAuZ3JpZC14ID4gLnh4bGFyZ2UtMSwgLmdyaWQteCA+IC54eGxhcmdlLTIsIC5ncmlkLXggPiAueHhsYXJnZS0zLCAuZ3JpZC14ID4gLnh4bGFyZ2UtNCwgLmdyaWQteCA+IC54eGxhcmdlLTUsIC5ncmlkLXggPiAueHhsYXJnZS02LCAuZ3JpZC14ID4gLnh4bGFyZ2UtNywgLmdyaWQteCA+IC54eGxhcmdlLTgsIC5ncmlkLXggPiAueHhsYXJnZS05LCAuZ3JpZC14ID4gLnh4bGFyZ2UtMTAsIC5ncmlkLXggPiAueHhsYXJnZS0xMSwgLmdyaWQteCA+IC54eGxhcmdlLTEyIHtcbiAgICBmbGV4LWJhc2lzOiBhdXRvOyB9IH1cblxuLmdyaWQteCA+IC5zbWFsbC0xIHtcbiAgd2lkdGg6IDguMzMzMzMlOyB9XG5cbi5ncmlkLXggPiAuc21hbGwtMiB7XG4gIHdpZHRoOiAxNi42NjY2NyU7IH1cblxuLmdyaWQteCA+IC5zbWFsbC0zIHtcbiAgd2lkdGg6IDI1JTsgfVxuXG4uZ3JpZC14ID4gLnNtYWxsLTQge1xuICB3aWR0aDogMzMuMzMzMzMlOyB9XG5cbi5ncmlkLXggPiAuc21hbGwtNSB7XG4gIHdpZHRoOiA0MS42NjY2NyU7IH1cblxuLmdyaWQteCA+IC5zbWFsbC02IHtcbiAgd2lkdGg6IDUwJTsgfVxuXG4uZ3JpZC14ID4gLnNtYWxsLTcge1xuICB3aWR0aDogNTguMzMzMzMlOyB9XG5cbi5ncmlkLXggPiAuc21hbGwtOCB7XG4gIHdpZHRoOiA2Ni42NjY2NyU7IH1cblxuLmdyaWQteCA+IC5zbWFsbC05IHtcbiAgd2lkdGg6IDc1JTsgfVxuXG4uZ3JpZC14ID4gLnNtYWxsLTEwIHtcbiAgd2lkdGg6IDgzLjMzMzMzJTsgfVxuXG4uZ3JpZC14ID4gLnNtYWxsLTExIHtcbiAgd2lkdGg6IDkxLjY2NjY3JTsgfVxuXG4uZ3JpZC14ID4gLnNtYWxsLTEyIHtcbiAgd2lkdGg6IDEwMCU7IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLmdyaWQteCA+IC5tZWRpdW0tYXV0byB7XG4gICAgZmxleDogMSAxIDBweDtcbiAgICB3aWR0aDogYXV0bzsgfVxuICAuZ3JpZC14ID4gLm1lZGl1bS1zaHJpbmsge1xuICAgIGZsZXg6IDAgMCBhdXRvO1xuICAgIHdpZHRoOiBhdXRvOyB9XG4gIC5ncmlkLXggPiAubWVkaXVtLTEge1xuICAgIHdpZHRoOiA4LjMzMzMzJTsgfVxuICAuZ3JpZC14ID4gLm1lZGl1bS0yIHtcbiAgICB3aWR0aDogMTYuNjY2NjclOyB9XG4gIC5ncmlkLXggPiAubWVkaXVtLTMge1xuICAgIHdpZHRoOiAyNSU7IH1cbiAgLmdyaWQteCA+IC5tZWRpdW0tNCB7XG4gICAgd2lkdGg6IDMzLjMzMzMzJTsgfVxuICAuZ3JpZC14ID4gLm1lZGl1bS01IHtcbiAgICB3aWR0aDogNDEuNjY2NjclOyB9XG4gIC5ncmlkLXggPiAubWVkaXVtLTYge1xuICAgIHdpZHRoOiA1MCU7IH1cbiAgLmdyaWQteCA+IC5tZWRpdW0tNyB7XG4gICAgd2lkdGg6IDU4LjMzMzMzJTsgfVxuICAuZ3JpZC14ID4gLm1lZGl1bS04IHtcbiAgICB3aWR0aDogNjYuNjY2NjclOyB9XG4gIC5ncmlkLXggPiAubWVkaXVtLTkge1xuICAgIHdpZHRoOiA3NSU7IH1cbiAgLmdyaWQteCA+IC5tZWRpdW0tMTAge1xuICAgIHdpZHRoOiA4My4zMzMzMyU7IH1cbiAgLmdyaWQteCA+IC5tZWRpdW0tMTEge1xuICAgIHdpZHRoOiA5MS42NjY2NyU7IH1cbiAgLmdyaWQteCA+IC5tZWRpdW0tMTIge1xuICAgIHdpZHRoOiAxMDAlOyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmdyaWQteCA+IC5sYXJnZS1hdXRvIHtcbiAgICBmbGV4OiAxIDEgMHB4O1xuICAgIHdpZHRoOiBhdXRvOyB9XG4gIC5ncmlkLXggPiAubGFyZ2Utc2hyaW5rIHtcbiAgICBmbGV4OiAwIDAgYXV0bztcbiAgICB3aWR0aDogYXV0bzsgfVxuICAuZ3JpZC14ID4gLmxhcmdlLTEge1xuICAgIHdpZHRoOiA4LjMzMzMzJTsgfVxuICAuZ3JpZC14ID4gLmxhcmdlLTIge1xuICAgIHdpZHRoOiAxNi42NjY2NyU7IH1cbiAgLmdyaWQteCA+IC5sYXJnZS0zIHtcbiAgICB3aWR0aDogMjUlOyB9XG4gIC5ncmlkLXggPiAubGFyZ2UtNCB7XG4gICAgd2lkdGg6IDMzLjMzMzMzJTsgfVxuICAuZ3JpZC14ID4gLmxhcmdlLTUge1xuICAgIHdpZHRoOiA0MS42NjY2NyU7IH1cbiAgLmdyaWQteCA+IC5sYXJnZS02IHtcbiAgICB3aWR0aDogNTAlOyB9XG4gIC5ncmlkLXggPiAubGFyZ2UtNyB7XG4gICAgd2lkdGg6IDU4LjMzMzMzJTsgfVxuICAuZ3JpZC14ID4gLmxhcmdlLTgge1xuICAgIHdpZHRoOiA2Ni42NjY2NyU7IH1cbiAgLmdyaWQteCA+IC5sYXJnZS05IHtcbiAgICB3aWR0aDogNzUlOyB9XG4gIC5ncmlkLXggPiAubGFyZ2UtMTAge1xuICAgIHdpZHRoOiA4My4zMzMzMyU7IH1cbiAgLmdyaWQteCA+IC5sYXJnZS0xMSB7XG4gICAgd2lkdGg6IDkxLjY2NjY3JTsgfVxuICAuZ3JpZC14ID4gLmxhcmdlLTEyIHtcbiAgICB3aWR0aDogMTAwJTsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgLmdyaWQteCA+IC54bGFyZ2UtYXV0byB7XG4gICAgZmxleDogMSAxIDBweDtcbiAgICB3aWR0aDogYXV0bzsgfVxuICAuZ3JpZC14ID4gLnhsYXJnZS1zaHJpbmsge1xuICAgIGZsZXg6IDAgMCBhdXRvO1xuICAgIHdpZHRoOiBhdXRvOyB9XG4gIC5ncmlkLXggPiAueGxhcmdlLTEge1xuICAgIHdpZHRoOiA4LjMzMzMzJTsgfVxuICAuZ3JpZC14ID4gLnhsYXJnZS0yIHtcbiAgICB3aWR0aDogMTYuNjY2NjclOyB9XG4gIC5ncmlkLXggPiAueGxhcmdlLTMge1xuICAgIHdpZHRoOiAyNSU7IH1cbiAgLmdyaWQteCA+IC54bGFyZ2UtNCB7XG4gICAgd2lkdGg6IDMzLjMzMzMzJTsgfVxuICAuZ3JpZC14ID4gLnhsYXJnZS01IHtcbiAgICB3aWR0aDogNDEuNjY2NjclOyB9XG4gIC5ncmlkLXggPiAueGxhcmdlLTYge1xuICAgIHdpZHRoOiA1MCU7IH1cbiAgLmdyaWQteCA+IC54bGFyZ2UtNyB7XG4gICAgd2lkdGg6IDU4LjMzMzMzJTsgfVxuICAuZ3JpZC14ID4gLnhsYXJnZS04IHtcbiAgICB3aWR0aDogNjYuNjY2NjclOyB9XG4gIC5ncmlkLXggPiAueGxhcmdlLTkge1xuICAgIHdpZHRoOiA3NSU7IH1cbiAgLmdyaWQteCA+IC54bGFyZ2UtMTAge1xuICAgIHdpZHRoOiA4My4zMzMzMyU7IH1cbiAgLmdyaWQteCA+IC54bGFyZ2UtMTEge1xuICAgIHdpZHRoOiA5MS42NjY2NyU7IH1cbiAgLmdyaWQteCA+IC54bGFyZ2UtMTIge1xuICAgIHdpZHRoOiAxMDAlOyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTBlbSkge1xuICAuZ3JpZC14ID4gLnh4bGFyZ2UtYXV0byB7XG4gICAgZmxleDogMSAxIDBweDtcbiAgICB3aWR0aDogYXV0bzsgfVxuICAuZ3JpZC14ID4gLnh4bGFyZ2Utc2hyaW5rIHtcbiAgICBmbGV4OiAwIDAgYXV0bztcbiAgICB3aWR0aDogYXV0bzsgfVxuICAuZ3JpZC14ID4gLnh4bGFyZ2UtMSB7XG4gICAgd2lkdGg6IDguMzMzMzMlOyB9XG4gIC5ncmlkLXggPiAueHhsYXJnZS0yIHtcbiAgICB3aWR0aDogMTYuNjY2NjclOyB9XG4gIC5ncmlkLXggPiAueHhsYXJnZS0zIHtcbiAgICB3aWR0aDogMjUlOyB9XG4gIC5ncmlkLXggPiAueHhsYXJnZS00IHtcbiAgICB3aWR0aDogMzMuMzMzMzMlOyB9XG4gIC5ncmlkLXggPiAueHhsYXJnZS01IHtcbiAgICB3aWR0aDogNDEuNjY2NjclOyB9XG4gIC5ncmlkLXggPiAueHhsYXJnZS02IHtcbiAgICB3aWR0aDogNTAlOyB9XG4gIC5ncmlkLXggPiAueHhsYXJnZS03IHtcbiAgICB3aWR0aDogNTguMzMzMzMlOyB9XG4gIC5ncmlkLXggPiAueHhsYXJnZS04IHtcbiAgICB3aWR0aDogNjYuNjY2NjclOyB9XG4gIC5ncmlkLXggPiAueHhsYXJnZS05IHtcbiAgICB3aWR0aDogNzUlOyB9XG4gIC5ncmlkLXggPiAueHhsYXJnZS0xMCB7XG4gICAgd2lkdGg6IDgzLjMzMzMzJTsgfVxuICAuZ3JpZC14ID4gLnh4bGFyZ2UtMTEge1xuICAgIHdpZHRoOiA5MS42NjY2NyU7IH1cbiAgLmdyaWQteCA+IC54eGxhcmdlLTEyIHtcbiAgICB3aWR0aDogMTAwJTsgfSB9XG5cbi5ncmlkLW1hcmdpbi14Om5vdCguZ3JpZC14KSA+IC5jZWxsIHtcbiAgd2lkdGg6IGF1dG87IH1cblxuLmdyaWQtbWFyZ2luLXk6bm90KC5ncmlkLXkpID4gLmNlbGwge1xuICBoZWlnaHQ6IGF1dG87IH1cblxuLmdyaWQtbWFyZ2luLXgge1xuICBtYXJnaW4tbGVmdDogLTAuNTYyNXJlbTtcbiAgbWFyZ2luLXJpZ2h0OiAtMC41NjI1cmVtOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLmdyaWQtbWFyZ2luLXgge1xuICAgICAgbWFyZ2luLWxlZnQ6IC0wLjYyNXJlbTtcbiAgICAgIG1hcmdpbi1yaWdodDogLTAuNjI1cmVtOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuZ3JpZC1tYXJnaW4teCB7XG4gICAgICBtYXJnaW4tbGVmdDogLTAuNzVyZW07XG4gICAgICBtYXJnaW4tcmlnaHQ6IC0wLjc1cmVtOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgIC5ncmlkLW1hcmdpbi14IHtcbiAgICAgIG1hcmdpbi1sZWZ0OiAtMC43NXJlbTtcbiAgICAgIG1hcmdpbi1yaWdodDogLTAuNzVyZW07IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5MGVtKSB7XG4gICAgLmdyaWQtbWFyZ2luLXgge1xuICAgICAgbWFyZ2luLWxlZnQ6IC0wLjc1cmVtO1xuICAgICAgbWFyZ2luLXJpZ2h0OiAtMC43NXJlbTsgfSB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLmNlbGwge1xuICAgIHdpZHRoOiBjYWxjKDEwMCUgLSAxLjEyNXJlbSk7XG4gICAgbWFyZ2luLWxlZnQ6IDAuNTYyNXJlbTtcbiAgICBtYXJnaW4tcmlnaHQ6IDAuNTYyNXJlbTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5ncmlkLW1hcmdpbi14ID4gLmNlbGwge1xuICAgICAgd2lkdGg6IGNhbGMoMTAwJSAtIDEuMjVyZW0pO1xuICAgICAgbWFyZ2luLWxlZnQ6IDAuNjI1cmVtO1xuICAgICAgbWFyZ2luLXJpZ2h0OiAwLjYyNXJlbTsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmdyaWQtbWFyZ2luLXggPiAuY2VsbCB7XG4gICAgICB3aWR0aDogY2FsYygxMDAlIC0gMS41cmVtKTtcbiAgICAgIG1hcmdpbi1sZWZ0OiAwLjc1cmVtO1xuICAgICAgbWFyZ2luLXJpZ2h0OiAwLjc1cmVtOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgIC5ncmlkLW1hcmdpbi14ID4gLmNlbGwge1xuICAgICAgd2lkdGg6IGNhbGMoMTAwJSAtIDEuNXJlbSk7XG4gICAgICBtYXJnaW4tbGVmdDogMC43NXJlbTtcbiAgICAgIG1hcmdpbi1yaWdodDogMC43NXJlbTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDkwZW0pIHtcbiAgICAuZ3JpZC1tYXJnaW4teCA+IC5jZWxsIHtcbiAgICAgIHdpZHRoOiBjYWxjKDEwMCUgLSAxLjVyZW0pO1xuICAgICAgbWFyZ2luLWxlZnQ6IDAuNzVyZW07XG4gICAgICBtYXJnaW4tcmlnaHQ6IDAuNzVyZW07IH0gfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5hdXRvIHtcbiAgICB3aWR0aDogYXV0bzsgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5zaHJpbmsge1xuICAgIHdpZHRoOiBhdXRvOyB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLnNtYWxsLTEge1xuICAgIHdpZHRoOiBjYWxjKDguMzMzMzMlIC0gMS4xMjVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLnNtYWxsLTIge1xuICAgIHdpZHRoOiBjYWxjKDE2LjY2NjY3JSAtIDEuMTI1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5zbWFsbC0zIHtcbiAgICB3aWR0aDogY2FsYygyNSUgLSAxLjEyNXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXggPiAuc21hbGwtNCB7XG4gICAgd2lkdGg6IGNhbGMoMzMuMzMzMzMlIC0gMS4xMjVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLnNtYWxsLTUge1xuICAgIHdpZHRoOiBjYWxjKDQxLjY2NjY3JSAtIDEuMTI1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5zbWFsbC02IHtcbiAgICB3aWR0aDogY2FsYyg1MCUgLSAxLjEyNXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXggPiAuc21hbGwtNyB7XG4gICAgd2lkdGg6IGNhbGMoNTguMzMzMzMlIC0gMS4xMjVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLnNtYWxsLTgge1xuICAgIHdpZHRoOiBjYWxjKDY2LjY2NjY3JSAtIDEuMTI1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5zbWFsbC05IHtcbiAgICB3aWR0aDogY2FsYyg3NSUgLSAxLjEyNXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXggPiAuc21hbGwtMTAge1xuICAgIHdpZHRoOiBjYWxjKDgzLjMzMzMzJSAtIDEuMTI1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5zbWFsbC0xMSB7XG4gICAgd2lkdGg6IGNhbGMoOTEuNjY2NjclIC0gMS4xMjVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLnNtYWxsLTEyIHtcbiAgICB3aWR0aDogY2FsYygxMDAlIC0gMS4xMjVyZW0pOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLmdyaWQtbWFyZ2luLXggPiAuYXV0byB7XG4gICAgICB3aWR0aDogYXV0bzsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLnNocmluayB7XG4gICAgICB3aWR0aDogYXV0bzsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLnNtYWxsLTEge1xuICAgICAgd2lkdGg6IGNhbGMoOC4zMzMzMyUgLSAxLjI1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLnNtYWxsLTIge1xuICAgICAgd2lkdGg6IGNhbGMoMTYuNjY2NjclIC0gMS4yNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC5zbWFsbC0zIHtcbiAgICAgIHdpZHRoOiBjYWxjKDI1JSAtIDEuMjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAuc21hbGwtNCB7XG4gICAgICB3aWR0aDogY2FsYygzMy4zMzMzMyUgLSAxLjI1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLnNtYWxsLTUge1xuICAgICAgd2lkdGg6IGNhbGMoNDEuNjY2NjclIC0gMS4yNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC5zbWFsbC02IHtcbiAgICAgIHdpZHRoOiBjYWxjKDUwJSAtIDEuMjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAuc21hbGwtNyB7XG4gICAgICB3aWR0aDogY2FsYyg1OC4zMzMzMyUgLSAxLjI1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLnNtYWxsLTgge1xuICAgICAgd2lkdGg6IGNhbGMoNjYuNjY2NjclIC0gMS4yNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC5zbWFsbC05IHtcbiAgICAgIHdpZHRoOiBjYWxjKDc1JSAtIDEuMjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAuc21hbGwtMTAge1xuICAgICAgd2lkdGg6IGNhbGMoODMuMzMzMzMlIC0gMS4yNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC5zbWFsbC0xMSB7XG4gICAgICB3aWR0aDogY2FsYyg5MS42NjY2NyUgLSAxLjI1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLnNtYWxsLTEyIHtcbiAgICAgIHdpZHRoOiBjYWxjKDEwMCUgLSAxLjI1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLm1lZGl1bS1hdXRvIHtcbiAgICAgIHdpZHRoOiBhdXRvOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAubWVkaXVtLXNocmluayB7XG4gICAgICB3aWR0aDogYXV0bzsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLm1lZGl1bS0xIHtcbiAgICAgIHdpZHRoOiBjYWxjKDguMzMzMzMlIC0gMS4yNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC5tZWRpdW0tMiB7XG4gICAgICB3aWR0aDogY2FsYygxNi42NjY2NyUgLSAxLjI1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLm1lZGl1bS0zIHtcbiAgICAgIHdpZHRoOiBjYWxjKDI1JSAtIDEuMjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAubWVkaXVtLTQge1xuICAgICAgd2lkdGg6IGNhbGMoMzMuMzMzMzMlIC0gMS4yNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC5tZWRpdW0tNSB7XG4gICAgICB3aWR0aDogY2FsYyg0MS42NjY2NyUgLSAxLjI1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLm1lZGl1bS02IHtcbiAgICAgIHdpZHRoOiBjYWxjKDUwJSAtIDEuMjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAubWVkaXVtLTcge1xuICAgICAgd2lkdGg6IGNhbGMoNTguMzMzMzMlIC0gMS4yNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC5tZWRpdW0tOCB7XG4gICAgICB3aWR0aDogY2FsYyg2Ni42NjY2NyUgLSAxLjI1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLm1lZGl1bS05IHtcbiAgICAgIHdpZHRoOiBjYWxjKDc1JSAtIDEuMjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAubWVkaXVtLTEwIHtcbiAgICAgIHdpZHRoOiBjYWxjKDgzLjMzMzMzJSAtIDEuMjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAubWVkaXVtLTExIHtcbiAgICAgIHdpZHRoOiBjYWxjKDkxLjY2NjY3JSAtIDEuMjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAubWVkaXVtLTEyIHtcbiAgICAgIHdpZHRoOiBjYWxjKDEwMCUgLSAxLjI1cmVtKTsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmdyaWQtbWFyZ2luLXggPiAuYXV0byB7XG4gICAgICB3aWR0aDogYXV0bzsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLnNocmluayB7XG4gICAgICB3aWR0aDogYXV0bzsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLnNtYWxsLTEge1xuICAgICAgd2lkdGg6IGNhbGMoOC4zMzMzMyUgLSAxLjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAuc21hbGwtMiB7XG4gICAgICB3aWR0aDogY2FsYygxNi42NjY2NyUgLSAxLjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAuc21hbGwtMyB7XG4gICAgICB3aWR0aDogY2FsYygyNSUgLSAxLjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAuc21hbGwtNCB7XG4gICAgICB3aWR0aDogY2FsYygzMy4zMzMzMyUgLSAxLjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAuc21hbGwtNSB7XG4gICAgICB3aWR0aDogY2FsYyg0MS42NjY2NyUgLSAxLjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAuc21hbGwtNiB7XG4gICAgICB3aWR0aDogY2FsYyg1MCUgLSAxLjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAuc21hbGwtNyB7XG4gICAgICB3aWR0aDogY2FsYyg1OC4zMzMzMyUgLSAxLjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAuc21hbGwtOCB7XG4gICAgICB3aWR0aDogY2FsYyg2Ni42NjY2NyUgLSAxLjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAuc21hbGwtOSB7XG4gICAgICB3aWR0aDogY2FsYyg3NSUgLSAxLjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAuc21hbGwtMTAge1xuICAgICAgd2lkdGg6IGNhbGMoODMuMzMzMzMlIC0gMS41cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLnNtYWxsLTExIHtcbiAgICAgIHdpZHRoOiBjYWxjKDkxLjY2NjY3JSAtIDEuNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC5zbWFsbC0xMiB7XG4gICAgICB3aWR0aDogY2FsYygxMDAlIC0gMS41cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLm1lZGl1bS1hdXRvIHtcbiAgICAgIHdpZHRoOiBhdXRvOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAubWVkaXVtLXNocmluayB7XG4gICAgICB3aWR0aDogYXV0bzsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLm1lZGl1bS0xIHtcbiAgICAgIHdpZHRoOiBjYWxjKDguMzMzMzMlIC0gMS41cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLm1lZGl1bS0yIHtcbiAgICAgIHdpZHRoOiBjYWxjKDE2LjY2NjY3JSAtIDEuNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC5tZWRpdW0tMyB7XG4gICAgICB3aWR0aDogY2FsYygyNSUgLSAxLjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAubWVkaXVtLTQge1xuICAgICAgd2lkdGg6IGNhbGMoMzMuMzMzMzMlIC0gMS41cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLm1lZGl1bS01IHtcbiAgICAgIHdpZHRoOiBjYWxjKDQxLjY2NjY3JSAtIDEuNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC5tZWRpdW0tNiB7XG4gICAgICB3aWR0aDogY2FsYyg1MCUgLSAxLjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAubWVkaXVtLTcge1xuICAgICAgd2lkdGg6IGNhbGMoNTguMzMzMzMlIC0gMS41cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLm1lZGl1bS04IHtcbiAgICAgIHdpZHRoOiBjYWxjKDY2LjY2NjY3JSAtIDEuNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC5tZWRpdW0tOSB7XG4gICAgICB3aWR0aDogY2FsYyg3NSUgLSAxLjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAubWVkaXVtLTEwIHtcbiAgICAgIHdpZHRoOiBjYWxjKDgzLjMzMzMzJSAtIDEuNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC5tZWRpdW0tMTEge1xuICAgICAgd2lkdGg6IGNhbGMoOTEuNjY2NjclIC0gMS41cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLm1lZGl1bS0xMiB7XG4gICAgICB3aWR0aDogY2FsYygxMDAlIC0gMS41cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLmxhcmdlLWF1dG8ge1xuICAgICAgd2lkdGg6IGF1dG87IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC5sYXJnZS1zaHJpbmsge1xuICAgICAgd2lkdGg6IGF1dG87IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC5sYXJnZS0xIHtcbiAgICAgIHdpZHRoOiBjYWxjKDguMzMzMzMlIC0gMS41cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLmxhcmdlLTIge1xuICAgICAgd2lkdGg6IGNhbGMoMTYuNjY2NjclIC0gMS41cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLmxhcmdlLTMge1xuICAgICAgd2lkdGg6IGNhbGMoMjUlIC0gMS41cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLmxhcmdlLTQge1xuICAgICAgd2lkdGg6IGNhbGMoMzMuMzMzMzMlIC0gMS41cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLmxhcmdlLTUge1xuICAgICAgd2lkdGg6IGNhbGMoNDEuNjY2NjclIC0gMS41cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLmxhcmdlLTYge1xuICAgICAgd2lkdGg6IGNhbGMoNTAlIC0gMS41cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLmxhcmdlLTcge1xuICAgICAgd2lkdGg6IGNhbGMoNTguMzMzMzMlIC0gMS41cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLmxhcmdlLTgge1xuICAgICAgd2lkdGg6IGNhbGMoNjYuNjY2NjclIC0gMS41cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLmxhcmdlLTkge1xuICAgICAgd2lkdGg6IGNhbGMoNzUlIC0gMS41cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLmxhcmdlLTEwIHtcbiAgICAgIHdpZHRoOiBjYWxjKDgzLjMzMzMzJSAtIDEuNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC5sYXJnZS0xMSB7XG4gICAgICB3aWR0aDogY2FsYyg5MS42NjY2NyUgLSAxLjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAubGFyZ2UtMTIge1xuICAgICAgd2lkdGg6IGNhbGMoMTAwJSAtIDEuNXJlbSk7IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgLmdyaWQtbWFyZ2luLXggPiAuYXV0byB7XG4gICAgICB3aWR0aDogYXV0bzsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLnNocmluayB7XG4gICAgICB3aWR0aDogYXV0bzsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLnNtYWxsLTEge1xuICAgICAgd2lkdGg6IGNhbGMoOC4zMzMzMyUgLSAxLjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAuc21hbGwtMiB7XG4gICAgICB3aWR0aDogY2FsYygxNi42NjY2NyUgLSAxLjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAuc21hbGwtMyB7XG4gICAgICB3aWR0aDogY2FsYygyNSUgLSAxLjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAuc21hbGwtNCB7XG4gICAgICB3aWR0aDogY2FsYygzMy4zMzMzMyUgLSAxLjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAuc21hbGwtNSB7XG4gICAgICB3aWR0aDogY2FsYyg0MS42NjY2NyUgLSAxLjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAuc21hbGwtNiB7XG4gICAgICB3aWR0aDogY2FsYyg1MCUgLSAxLjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAuc21hbGwtNyB7XG4gICAgICB3aWR0aDogY2FsYyg1OC4zMzMzMyUgLSAxLjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAuc21hbGwtOCB7XG4gICAgICB3aWR0aDogY2FsYyg2Ni42NjY2NyUgLSAxLjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAuc21hbGwtOSB7XG4gICAgICB3aWR0aDogY2FsYyg3NSUgLSAxLjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAuc21hbGwtMTAge1xuICAgICAgd2lkdGg6IGNhbGMoODMuMzMzMzMlIC0gMS41cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLnNtYWxsLTExIHtcbiAgICAgIHdpZHRoOiBjYWxjKDkxLjY2NjY3JSAtIDEuNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC5zbWFsbC0xMiB7XG4gICAgICB3aWR0aDogY2FsYygxMDAlIC0gMS41cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLm1lZGl1bS1hdXRvIHtcbiAgICAgIHdpZHRoOiBhdXRvOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAubWVkaXVtLXNocmluayB7XG4gICAgICB3aWR0aDogYXV0bzsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLm1lZGl1bS0xIHtcbiAgICAgIHdpZHRoOiBjYWxjKDguMzMzMzMlIC0gMS41cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLm1lZGl1bS0yIHtcbiAgICAgIHdpZHRoOiBjYWxjKDE2LjY2NjY3JSAtIDEuNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC5tZWRpdW0tMyB7XG4gICAgICB3aWR0aDogY2FsYygyNSUgLSAxLjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAubWVkaXVtLTQge1xuICAgICAgd2lkdGg6IGNhbGMoMzMuMzMzMzMlIC0gMS41cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLm1lZGl1bS01IHtcbiAgICAgIHdpZHRoOiBjYWxjKDQxLjY2NjY3JSAtIDEuNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC5tZWRpdW0tNiB7XG4gICAgICB3aWR0aDogY2FsYyg1MCUgLSAxLjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAubWVkaXVtLTcge1xuICAgICAgd2lkdGg6IGNhbGMoNTguMzMzMzMlIC0gMS41cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLm1lZGl1bS04IHtcbiAgICAgIHdpZHRoOiBjYWxjKDY2LjY2NjY3JSAtIDEuNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC5tZWRpdW0tOSB7XG4gICAgICB3aWR0aDogY2FsYyg3NSUgLSAxLjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAubWVkaXVtLTEwIHtcbiAgICAgIHdpZHRoOiBjYWxjKDgzLjMzMzMzJSAtIDEuNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC5tZWRpdW0tMTEge1xuICAgICAgd2lkdGg6IGNhbGMoOTEuNjY2NjclIC0gMS41cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLm1lZGl1bS0xMiB7XG4gICAgICB3aWR0aDogY2FsYygxMDAlIC0gMS41cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLmxhcmdlLWF1dG8ge1xuICAgICAgd2lkdGg6IGF1dG87IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC5sYXJnZS1zaHJpbmsge1xuICAgICAgd2lkdGg6IGF1dG87IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC5sYXJnZS0xIHtcbiAgICAgIHdpZHRoOiBjYWxjKDguMzMzMzMlIC0gMS41cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLmxhcmdlLTIge1xuICAgICAgd2lkdGg6IGNhbGMoMTYuNjY2NjclIC0gMS41cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLmxhcmdlLTMge1xuICAgICAgd2lkdGg6IGNhbGMoMjUlIC0gMS41cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLmxhcmdlLTQge1xuICAgICAgd2lkdGg6IGNhbGMoMzMuMzMzMzMlIC0gMS41cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLmxhcmdlLTUge1xuICAgICAgd2lkdGg6IGNhbGMoNDEuNjY2NjclIC0gMS41cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLmxhcmdlLTYge1xuICAgICAgd2lkdGg6IGNhbGMoNTAlIC0gMS41cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLmxhcmdlLTcge1xuICAgICAgd2lkdGg6IGNhbGMoNTguMzMzMzMlIC0gMS41cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLmxhcmdlLTgge1xuICAgICAgd2lkdGg6IGNhbGMoNjYuNjY2NjclIC0gMS41cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLmxhcmdlLTkge1xuICAgICAgd2lkdGg6IGNhbGMoNzUlIC0gMS41cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLmxhcmdlLTEwIHtcbiAgICAgIHdpZHRoOiBjYWxjKDgzLjMzMzMzJSAtIDEuNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC5sYXJnZS0xMSB7XG4gICAgICB3aWR0aDogY2FsYyg5MS42NjY2NyUgLSAxLjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAubGFyZ2UtMTIge1xuICAgICAgd2lkdGg6IGNhbGMoMTAwJSAtIDEuNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC54bGFyZ2UtYXV0byB7XG4gICAgICB3aWR0aDogYXV0bzsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLnhsYXJnZS1zaHJpbmsge1xuICAgICAgd2lkdGg6IGF1dG87IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC54bGFyZ2UtMSB7XG4gICAgICB3aWR0aDogY2FsYyg4LjMzMzMzJSAtIDEuNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC54bGFyZ2UtMiB7XG4gICAgICB3aWR0aDogY2FsYygxNi42NjY2NyUgLSAxLjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAueGxhcmdlLTMge1xuICAgICAgd2lkdGg6IGNhbGMoMjUlIC0gMS41cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLnhsYXJnZS00IHtcbiAgICAgIHdpZHRoOiBjYWxjKDMzLjMzMzMzJSAtIDEuNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC54bGFyZ2UtNSB7XG4gICAgICB3aWR0aDogY2FsYyg0MS42NjY2NyUgLSAxLjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAueGxhcmdlLTYge1xuICAgICAgd2lkdGg6IGNhbGMoNTAlIC0gMS41cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLnhsYXJnZS03IHtcbiAgICAgIHdpZHRoOiBjYWxjKDU4LjMzMzMzJSAtIDEuNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC54bGFyZ2UtOCB7XG4gICAgICB3aWR0aDogY2FsYyg2Ni42NjY2NyUgLSAxLjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAueGxhcmdlLTkge1xuICAgICAgd2lkdGg6IGNhbGMoNzUlIC0gMS41cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLnhsYXJnZS0xMCB7XG4gICAgICB3aWR0aDogY2FsYyg4My4zMzMzMyUgLSAxLjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAueGxhcmdlLTExIHtcbiAgICAgIHdpZHRoOiBjYWxjKDkxLjY2NjY3JSAtIDEuNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC54bGFyZ2UtMTIge1xuICAgICAgd2lkdGg6IGNhbGMoMTAwJSAtIDEuNXJlbSk7IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5MGVtKSB7XG4gICAgLmdyaWQtbWFyZ2luLXggPiAuYXV0byB7XG4gICAgICB3aWR0aDogYXV0bzsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLnNocmluayB7XG4gICAgICB3aWR0aDogYXV0bzsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLnNtYWxsLTEge1xuICAgICAgd2lkdGg6IGNhbGMoOC4zMzMzMyUgLSAxLjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAuc21hbGwtMiB7XG4gICAgICB3aWR0aDogY2FsYygxNi42NjY2NyUgLSAxLjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAuc21hbGwtMyB7XG4gICAgICB3aWR0aDogY2FsYygyNSUgLSAxLjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAuc21hbGwtNCB7XG4gICAgICB3aWR0aDogY2FsYygzMy4zMzMzMyUgLSAxLjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAuc21hbGwtNSB7XG4gICAgICB3aWR0aDogY2FsYyg0MS42NjY2NyUgLSAxLjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAuc21hbGwtNiB7XG4gICAgICB3aWR0aDogY2FsYyg1MCUgLSAxLjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAuc21hbGwtNyB7XG4gICAgICB3aWR0aDogY2FsYyg1OC4zMzMzMyUgLSAxLjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAuc21hbGwtOCB7XG4gICAgICB3aWR0aDogY2FsYyg2Ni42NjY2NyUgLSAxLjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAuc21hbGwtOSB7XG4gICAgICB3aWR0aDogY2FsYyg3NSUgLSAxLjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAuc21hbGwtMTAge1xuICAgICAgd2lkdGg6IGNhbGMoODMuMzMzMzMlIC0gMS41cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLnNtYWxsLTExIHtcbiAgICAgIHdpZHRoOiBjYWxjKDkxLjY2NjY3JSAtIDEuNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC5zbWFsbC0xMiB7XG4gICAgICB3aWR0aDogY2FsYygxMDAlIC0gMS41cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLm1lZGl1bS1hdXRvIHtcbiAgICAgIHdpZHRoOiBhdXRvOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAubWVkaXVtLXNocmluayB7XG4gICAgICB3aWR0aDogYXV0bzsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLm1lZGl1bS0xIHtcbiAgICAgIHdpZHRoOiBjYWxjKDguMzMzMzMlIC0gMS41cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLm1lZGl1bS0yIHtcbiAgICAgIHdpZHRoOiBjYWxjKDE2LjY2NjY3JSAtIDEuNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC5tZWRpdW0tMyB7XG4gICAgICB3aWR0aDogY2FsYygyNSUgLSAxLjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAubWVkaXVtLTQge1xuICAgICAgd2lkdGg6IGNhbGMoMzMuMzMzMzMlIC0gMS41cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLm1lZGl1bS01IHtcbiAgICAgIHdpZHRoOiBjYWxjKDQxLjY2NjY3JSAtIDEuNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC5tZWRpdW0tNiB7XG4gICAgICB3aWR0aDogY2FsYyg1MCUgLSAxLjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAubWVkaXVtLTcge1xuICAgICAgd2lkdGg6IGNhbGMoNTguMzMzMzMlIC0gMS41cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLm1lZGl1bS04IHtcbiAgICAgIHdpZHRoOiBjYWxjKDY2LjY2NjY3JSAtIDEuNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC5tZWRpdW0tOSB7XG4gICAgICB3aWR0aDogY2FsYyg3NSUgLSAxLjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAubWVkaXVtLTEwIHtcbiAgICAgIHdpZHRoOiBjYWxjKDgzLjMzMzMzJSAtIDEuNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC5tZWRpdW0tMTEge1xuICAgICAgd2lkdGg6IGNhbGMoOTEuNjY2NjclIC0gMS41cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLm1lZGl1bS0xMiB7XG4gICAgICB3aWR0aDogY2FsYygxMDAlIC0gMS41cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLmxhcmdlLWF1dG8ge1xuICAgICAgd2lkdGg6IGF1dG87IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC5sYXJnZS1zaHJpbmsge1xuICAgICAgd2lkdGg6IGF1dG87IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC5sYXJnZS0xIHtcbiAgICAgIHdpZHRoOiBjYWxjKDguMzMzMzMlIC0gMS41cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLmxhcmdlLTIge1xuICAgICAgd2lkdGg6IGNhbGMoMTYuNjY2NjclIC0gMS41cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLmxhcmdlLTMge1xuICAgICAgd2lkdGg6IGNhbGMoMjUlIC0gMS41cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLmxhcmdlLTQge1xuICAgICAgd2lkdGg6IGNhbGMoMzMuMzMzMzMlIC0gMS41cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLmxhcmdlLTUge1xuICAgICAgd2lkdGg6IGNhbGMoNDEuNjY2NjclIC0gMS41cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLmxhcmdlLTYge1xuICAgICAgd2lkdGg6IGNhbGMoNTAlIC0gMS41cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLmxhcmdlLTcge1xuICAgICAgd2lkdGg6IGNhbGMoNTguMzMzMzMlIC0gMS41cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLmxhcmdlLTgge1xuICAgICAgd2lkdGg6IGNhbGMoNjYuNjY2NjclIC0gMS41cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLmxhcmdlLTkge1xuICAgICAgd2lkdGg6IGNhbGMoNzUlIC0gMS41cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLmxhcmdlLTEwIHtcbiAgICAgIHdpZHRoOiBjYWxjKDgzLjMzMzMzJSAtIDEuNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC5sYXJnZS0xMSB7XG4gICAgICB3aWR0aDogY2FsYyg5MS42NjY2NyUgLSAxLjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAubGFyZ2UtMTIge1xuICAgICAgd2lkdGg6IGNhbGMoMTAwJSAtIDEuNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC54bGFyZ2UtYXV0byB7XG4gICAgICB3aWR0aDogYXV0bzsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLnhsYXJnZS1zaHJpbmsge1xuICAgICAgd2lkdGg6IGF1dG87IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC54bGFyZ2UtMSB7XG4gICAgICB3aWR0aDogY2FsYyg4LjMzMzMzJSAtIDEuNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC54bGFyZ2UtMiB7XG4gICAgICB3aWR0aDogY2FsYygxNi42NjY2NyUgLSAxLjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAueGxhcmdlLTMge1xuICAgICAgd2lkdGg6IGNhbGMoMjUlIC0gMS41cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLnhsYXJnZS00IHtcbiAgICAgIHdpZHRoOiBjYWxjKDMzLjMzMzMzJSAtIDEuNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC54bGFyZ2UtNSB7XG4gICAgICB3aWR0aDogY2FsYyg0MS42NjY2NyUgLSAxLjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAueGxhcmdlLTYge1xuICAgICAgd2lkdGg6IGNhbGMoNTAlIC0gMS41cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLnhsYXJnZS03IHtcbiAgICAgIHdpZHRoOiBjYWxjKDU4LjMzMzMzJSAtIDEuNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC54bGFyZ2UtOCB7XG4gICAgICB3aWR0aDogY2FsYyg2Ni42NjY2NyUgLSAxLjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAueGxhcmdlLTkge1xuICAgICAgd2lkdGg6IGNhbGMoNzUlIC0gMS41cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLnhsYXJnZS0xMCB7XG4gICAgICB3aWR0aDogY2FsYyg4My4zMzMzMyUgLSAxLjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAueGxhcmdlLTExIHtcbiAgICAgIHdpZHRoOiBjYWxjKDkxLjY2NjY3JSAtIDEuNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC54bGFyZ2UtMTIge1xuICAgICAgd2lkdGg6IGNhbGMoMTAwJSAtIDEuNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC54eGxhcmdlLWF1dG8ge1xuICAgICAgd2lkdGg6IGF1dG87IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC54eGxhcmdlLXNocmluayB7XG4gICAgICB3aWR0aDogYXV0bzsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLnh4bGFyZ2UtMSB7XG4gICAgICB3aWR0aDogY2FsYyg4LjMzMzMzJSAtIDEuNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC54eGxhcmdlLTIge1xuICAgICAgd2lkdGg6IGNhbGMoMTYuNjY2NjclIC0gMS41cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLnh4bGFyZ2UtMyB7XG4gICAgICB3aWR0aDogY2FsYygyNSUgLSAxLjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAueHhsYXJnZS00IHtcbiAgICAgIHdpZHRoOiBjYWxjKDMzLjMzMzMzJSAtIDEuNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC54eGxhcmdlLTUge1xuICAgICAgd2lkdGg6IGNhbGMoNDEuNjY2NjclIC0gMS41cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLnh4bGFyZ2UtNiB7XG4gICAgICB3aWR0aDogY2FsYyg1MCUgLSAxLjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAueHhsYXJnZS03IHtcbiAgICAgIHdpZHRoOiBjYWxjKDU4LjMzMzMzJSAtIDEuNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC54eGxhcmdlLTgge1xuICAgICAgd2lkdGg6IGNhbGMoNjYuNjY2NjclIC0gMS41cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLnh4bGFyZ2UtOSB7XG4gICAgICB3aWR0aDogY2FsYyg3NSUgLSAxLjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAueHhsYXJnZS0xMCB7XG4gICAgICB3aWR0aDogY2FsYyg4My4zMzMzMyUgLSAxLjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAueHhsYXJnZS0xMSB7XG4gICAgICB3aWR0aDogY2FsYyg5MS42NjY2NyUgLSAxLjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAueHhsYXJnZS0xMiB7XG4gICAgICB3aWR0aDogY2FsYygxMDAlIC0gMS41cmVtKTsgfSB9XG5cbi5ncmlkLXBhZGRpbmcteCAuZ3JpZC1wYWRkaW5nLXgge1xuICBtYXJnaW4tcmlnaHQ6IC0wLjU2MjVyZW07XG4gIG1hcmdpbi1sZWZ0OiAtMC41NjI1cmVtOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLmdyaWQtcGFkZGluZy14IC5ncmlkLXBhZGRpbmcteCB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IC0wLjYyNXJlbTtcbiAgICAgIG1hcmdpbi1sZWZ0OiAtMC42MjVyZW07IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5ncmlkLXBhZGRpbmcteCAuZ3JpZC1wYWRkaW5nLXgge1xuICAgICAgbWFyZ2luLXJpZ2h0OiAtMC43NXJlbTtcbiAgICAgIG1hcmdpbi1sZWZ0OiAtMC43NXJlbTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICAuZ3JpZC1wYWRkaW5nLXggLmdyaWQtcGFkZGluZy14IHtcbiAgICAgIG1hcmdpbi1yaWdodDogLTAuNzVyZW07XG4gICAgICBtYXJnaW4tbGVmdDogLTAuNzVyZW07IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5MGVtKSB7XG4gICAgLmdyaWQtcGFkZGluZy14IC5ncmlkLXBhZGRpbmcteCB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IC0wLjc1cmVtO1xuICAgICAgbWFyZ2luLWxlZnQ6IC0wLjc1cmVtOyB9IH1cblxuLmdyaWQtY29udGFpbmVyOm5vdCguZnVsbCkgPiAuZ3JpZC1wYWRkaW5nLXgsIC50b3AtYmFyOm5vdCguZnVsbCkgPiAuZ3JpZC1wYWRkaW5nLXgge1xuICBtYXJnaW4tcmlnaHQ6IC0wLjU2MjVyZW07XG4gIG1hcmdpbi1sZWZ0OiAtMC41NjI1cmVtOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLmdyaWQtY29udGFpbmVyOm5vdCguZnVsbCkgPiAuZ3JpZC1wYWRkaW5nLXgsIC50b3AtYmFyOm5vdCguZnVsbCkgPiAuZ3JpZC1wYWRkaW5nLXgge1xuICAgICAgbWFyZ2luLXJpZ2h0OiAtMC42MjVyZW07XG4gICAgICBtYXJnaW4tbGVmdDogLTAuNjI1cmVtOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuZ3JpZC1jb250YWluZXI6bm90KC5mdWxsKSA+IC5ncmlkLXBhZGRpbmcteCwgLnRvcC1iYXI6bm90KC5mdWxsKSA+IC5ncmlkLXBhZGRpbmcteCB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IC0wLjc1cmVtO1xuICAgICAgbWFyZ2luLWxlZnQ6IC0wLjc1cmVtOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgIC5ncmlkLWNvbnRhaW5lcjpub3QoLmZ1bGwpID4gLmdyaWQtcGFkZGluZy14LCAudG9wLWJhcjpub3QoLmZ1bGwpID4gLmdyaWQtcGFkZGluZy14IHtcbiAgICAgIG1hcmdpbi1yaWdodDogLTAuNzVyZW07XG4gICAgICBtYXJnaW4tbGVmdDogLTAuNzVyZW07IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5MGVtKSB7XG4gICAgLmdyaWQtY29udGFpbmVyOm5vdCguZnVsbCkgPiAuZ3JpZC1wYWRkaW5nLXgsIC50b3AtYmFyOm5vdCguZnVsbCkgPiAuZ3JpZC1wYWRkaW5nLXgge1xuICAgICAgbWFyZ2luLXJpZ2h0OiAtMC43NXJlbTtcbiAgICAgIG1hcmdpbi1sZWZ0OiAtMC43NXJlbTsgfSB9XG5cbi5ncmlkLXBhZGRpbmcteCA+IC5jZWxsIHtcbiAgcGFkZGluZy1yaWdodDogMC41NjI1cmVtO1xuICBwYWRkaW5nLWxlZnQ6IDAuNTYyNXJlbTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5ncmlkLXBhZGRpbmcteCA+IC5jZWxsIHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDAuNjI1cmVtO1xuICAgICAgcGFkZGluZy1sZWZ0OiAwLjYyNXJlbTsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmdyaWQtcGFkZGluZy14ID4gLmNlbGwge1xuICAgICAgcGFkZGluZy1yaWdodDogMC43NXJlbTtcbiAgICAgIHBhZGRpbmctbGVmdDogMC43NXJlbTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICAuZ3JpZC1wYWRkaW5nLXggPiAuY2VsbCB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwLjc1cmVtO1xuICAgICAgcGFkZGluZy1sZWZ0OiAwLjc1cmVtOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTBlbSkge1xuICAgIC5ncmlkLXBhZGRpbmcteCA+IC5jZWxsIHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDAuNzVyZW07XG4gICAgICBwYWRkaW5nLWxlZnQ6IDAuNzVyZW07IH0gfVxuXG4uc21hbGwtdXAtMSA+IC5jZWxsIHtcbiAgd2lkdGg6IDEwMCU7IH1cblxuLnNtYWxsLXVwLTIgPiAuY2VsbCB7XG4gIHdpZHRoOiA1MCU7IH1cblxuLnNtYWxsLXVwLTMgPiAuY2VsbCB7XG4gIHdpZHRoOiAzMy4zMzMzMyU7IH1cblxuLnNtYWxsLXVwLTQgPiAuY2VsbCB7XG4gIHdpZHRoOiAyNSU7IH1cblxuLnNtYWxsLXVwLTUgPiAuY2VsbCB7XG4gIHdpZHRoOiAyMCU7IH1cblxuLnNtYWxsLXVwLTYgPiAuY2VsbCB7XG4gIHdpZHRoOiAxNi42NjY2NyU7IH1cblxuLnNtYWxsLXVwLTcgPiAuY2VsbCB7XG4gIHdpZHRoOiAxNC4yODU3MSU7IH1cblxuLnNtYWxsLXVwLTggPiAuY2VsbCB7XG4gIHdpZHRoOiAxMi41JTsgfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAubWVkaXVtLXVwLTEgPiAuY2VsbCB7XG4gICAgd2lkdGg6IDEwMCU7IH1cbiAgLm1lZGl1bS11cC0yID4gLmNlbGwge1xuICAgIHdpZHRoOiA1MCU7IH1cbiAgLm1lZGl1bS11cC0zID4gLmNlbGwge1xuICAgIHdpZHRoOiAzMy4zMzMzMyU7IH1cbiAgLm1lZGl1bS11cC00ID4gLmNlbGwge1xuICAgIHdpZHRoOiAyNSU7IH1cbiAgLm1lZGl1bS11cC01ID4gLmNlbGwge1xuICAgIHdpZHRoOiAyMCU7IH1cbiAgLm1lZGl1bS11cC02ID4gLmNlbGwge1xuICAgIHdpZHRoOiAxNi42NjY2NyU7IH1cbiAgLm1lZGl1bS11cC03ID4gLmNlbGwge1xuICAgIHdpZHRoOiAxNC4yODU3MSU7IH1cbiAgLm1lZGl1bS11cC04ID4gLmNlbGwge1xuICAgIHdpZHRoOiAxMi41JTsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5sYXJnZS11cC0xID4gLmNlbGwge1xuICAgIHdpZHRoOiAxMDAlOyB9XG4gIC5sYXJnZS11cC0yID4gLmNlbGwge1xuICAgIHdpZHRoOiA1MCU7IH1cbiAgLmxhcmdlLXVwLTMgPiAuY2VsbCB7XG4gICAgd2lkdGg6IDMzLjMzMzMzJTsgfVxuICAubGFyZ2UtdXAtNCA+IC5jZWxsIHtcbiAgICB3aWR0aDogMjUlOyB9XG4gIC5sYXJnZS11cC01ID4gLmNlbGwge1xuICAgIHdpZHRoOiAyMCU7IH1cbiAgLmxhcmdlLXVwLTYgPiAuY2VsbCB7XG4gICAgd2lkdGg6IDE2LjY2NjY3JTsgfVxuICAubGFyZ2UtdXAtNyA+IC5jZWxsIHtcbiAgICB3aWR0aDogMTQuMjg1NzElOyB9XG4gIC5sYXJnZS11cC04ID4gLmNlbGwge1xuICAgIHdpZHRoOiAxMi41JTsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgLnhsYXJnZS11cC0xID4gLmNlbGwge1xuICAgIHdpZHRoOiAxMDAlOyB9XG4gIC54bGFyZ2UtdXAtMiA+IC5jZWxsIHtcbiAgICB3aWR0aDogNTAlOyB9XG4gIC54bGFyZ2UtdXAtMyA+IC5jZWxsIHtcbiAgICB3aWR0aDogMzMuMzMzMzMlOyB9XG4gIC54bGFyZ2UtdXAtNCA+IC5jZWxsIHtcbiAgICB3aWR0aDogMjUlOyB9XG4gIC54bGFyZ2UtdXAtNSA+IC5jZWxsIHtcbiAgICB3aWR0aDogMjAlOyB9XG4gIC54bGFyZ2UtdXAtNiA+IC5jZWxsIHtcbiAgICB3aWR0aDogMTYuNjY2NjclOyB9XG4gIC54bGFyZ2UtdXAtNyA+IC5jZWxsIHtcbiAgICB3aWR0aDogMTQuMjg1NzElOyB9XG4gIC54bGFyZ2UtdXAtOCA+IC5jZWxsIHtcbiAgICB3aWR0aDogMTIuNSU7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5MGVtKSB7XG4gIC54eGxhcmdlLXVwLTEgPiAuY2VsbCB7XG4gICAgd2lkdGg6IDEwMCU7IH1cbiAgLnh4bGFyZ2UtdXAtMiA+IC5jZWxsIHtcbiAgICB3aWR0aDogNTAlOyB9XG4gIC54eGxhcmdlLXVwLTMgPiAuY2VsbCB7XG4gICAgd2lkdGg6IDMzLjMzMzMzJTsgfVxuICAueHhsYXJnZS11cC00ID4gLmNlbGwge1xuICAgIHdpZHRoOiAyNSU7IH1cbiAgLnh4bGFyZ2UtdXAtNSA+IC5jZWxsIHtcbiAgICB3aWR0aDogMjAlOyB9XG4gIC54eGxhcmdlLXVwLTYgPiAuY2VsbCB7XG4gICAgd2lkdGg6IDE2LjY2NjY3JTsgfVxuICAueHhsYXJnZS11cC03ID4gLmNlbGwge1xuICAgIHdpZHRoOiAxNC4yODU3MSU7IH1cbiAgLnh4bGFyZ2UtdXAtOCA+IC5jZWxsIHtcbiAgICB3aWR0aDogMTIuNSU7IH0gfVxuXG4uZ3JpZC1tYXJnaW4teC5zbWFsbC11cC0xID4gLmNlbGwge1xuICB3aWR0aDogY2FsYygxMDAlIC0gMS4xMjVyZW0pOyB9XG5cbi5ncmlkLW1hcmdpbi14LnNtYWxsLXVwLTIgPiAuY2VsbCB7XG4gIHdpZHRoOiBjYWxjKDUwJSAtIDEuMTI1cmVtKTsgfVxuXG4uZ3JpZC1tYXJnaW4teC5zbWFsbC11cC0zID4gLmNlbGwge1xuICB3aWR0aDogY2FsYygzMy4zMzMzMyUgLSAxLjEyNXJlbSk7IH1cblxuLmdyaWQtbWFyZ2luLXguc21hbGwtdXAtNCA+IC5jZWxsIHtcbiAgd2lkdGg6IGNhbGMoMjUlIC0gMS4xMjVyZW0pOyB9XG5cbi5ncmlkLW1hcmdpbi14LnNtYWxsLXVwLTUgPiAuY2VsbCB7XG4gIHdpZHRoOiBjYWxjKDIwJSAtIDEuMTI1cmVtKTsgfVxuXG4uZ3JpZC1tYXJnaW4teC5zbWFsbC11cC02ID4gLmNlbGwge1xuICB3aWR0aDogY2FsYygxNi42NjY2NyUgLSAxLjEyNXJlbSk7IH1cblxuLmdyaWQtbWFyZ2luLXguc21hbGwtdXAtNyA+IC5jZWxsIHtcbiAgd2lkdGg6IGNhbGMoMTQuMjg1NzElIC0gMS4xMjVyZW0pOyB9XG5cbi5ncmlkLW1hcmdpbi14LnNtYWxsLXVwLTggPiAuY2VsbCB7XG4gIHdpZHRoOiBjYWxjKDEyLjUlIC0gMS4xMjVyZW0pOyB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5ncmlkLW1hcmdpbi14LnNtYWxsLXVwLTEgPiAuY2VsbCB7XG4gICAgd2lkdGg6IGNhbGMoMTAwJSAtIDEuMTI1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teC5zbWFsbC11cC0yID4gLmNlbGwge1xuICAgIHdpZHRoOiBjYWxjKDUwJSAtIDEuMTI1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teC5zbWFsbC11cC0zID4gLmNlbGwge1xuICAgIHdpZHRoOiBjYWxjKDMzLjMzMzMzJSAtIDEuMTI1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teC5zbWFsbC11cC00ID4gLmNlbGwge1xuICAgIHdpZHRoOiBjYWxjKDI1JSAtIDEuMTI1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teC5zbWFsbC11cC01ID4gLmNlbGwge1xuICAgIHdpZHRoOiBjYWxjKDIwJSAtIDEuMTI1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teC5zbWFsbC11cC02ID4gLmNlbGwge1xuICAgIHdpZHRoOiBjYWxjKDE2LjY2NjY3JSAtIDEuMTI1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teC5zbWFsbC11cC03ID4gLmNlbGwge1xuICAgIHdpZHRoOiBjYWxjKDE0LjI4NTcxJSAtIDEuMTI1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teC5zbWFsbC11cC04ID4gLmNlbGwge1xuICAgIHdpZHRoOiBjYWxjKDEyLjUlIC0gMS4xMjVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi14Lm1lZGl1bS11cC0xID4gLmNlbGwge1xuICAgIHdpZHRoOiBjYWxjKDEwMCUgLSAxLjI1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teC5tZWRpdW0tdXAtMiA+IC5jZWxsIHtcbiAgICB3aWR0aDogY2FsYyg1MCUgLSAxLjI1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teC5tZWRpdW0tdXAtMyA+IC5jZWxsIHtcbiAgICB3aWR0aDogY2FsYygzMy4zMzMzMyUgLSAxLjI1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teC5tZWRpdW0tdXAtNCA+IC5jZWxsIHtcbiAgICB3aWR0aDogY2FsYygyNSUgLSAxLjI1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teC5tZWRpdW0tdXAtNSA+IC5jZWxsIHtcbiAgICB3aWR0aDogY2FsYygyMCUgLSAxLjI1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teC5tZWRpdW0tdXAtNiA+IC5jZWxsIHtcbiAgICB3aWR0aDogY2FsYygxNi42NjY2NyUgLSAxLjI1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teC5tZWRpdW0tdXAtNyA+IC5jZWxsIHtcbiAgICB3aWR0aDogY2FsYygxNC4yODU3MSUgLSAxLjI1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teC5tZWRpdW0tdXAtOCA+IC5jZWxsIHtcbiAgICB3aWR0aDogY2FsYygxMi41JSAtIDEuMjVyZW0pOyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmdyaWQtbWFyZ2luLXguc21hbGwtdXAtMSA+IC5jZWxsIHtcbiAgICB3aWR0aDogY2FsYygxMDAlIC0gMS4xMjVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi14Lm1lZGl1bS11cC0xID4gLmNlbGwge1xuICAgIHdpZHRoOiBjYWxjKDEwMCUgLSAxLjI1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teC5zbWFsbC11cC0yID4gLmNlbGwge1xuICAgIHdpZHRoOiBjYWxjKDUwJSAtIDEuMTI1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teC5tZWRpdW0tdXAtMiA+IC5jZWxsIHtcbiAgICB3aWR0aDogY2FsYyg1MCUgLSAxLjI1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teC5zbWFsbC11cC0zID4gLmNlbGwge1xuICAgIHdpZHRoOiBjYWxjKDMzLjMzMzMzJSAtIDEuMTI1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teC5tZWRpdW0tdXAtMyA+IC5jZWxsIHtcbiAgICB3aWR0aDogY2FsYygzMy4zMzMzMyUgLSAxLjI1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teC5zbWFsbC11cC00ID4gLmNlbGwge1xuICAgIHdpZHRoOiBjYWxjKDI1JSAtIDEuMTI1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teC5tZWRpdW0tdXAtNCA+IC5jZWxsIHtcbiAgICB3aWR0aDogY2FsYygyNSUgLSAxLjI1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teC5zbWFsbC11cC01ID4gLmNlbGwge1xuICAgIHdpZHRoOiBjYWxjKDIwJSAtIDEuMTI1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teC5tZWRpdW0tdXAtNSA+IC5jZWxsIHtcbiAgICB3aWR0aDogY2FsYygyMCUgLSAxLjI1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teC5zbWFsbC11cC02ID4gLmNlbGwge1xuICAgIHdpZHRoOiBjYWxjKDE2LjY2NjY3JSAtIDEuMTI1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teC5tZWRpdW0tdXAtNiA+IC5jZWxsIHtcbiAgICB3aWR0aDogY2FsYygxNi42NjY2NyUgLSAxLjI1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teC5zbWFsbC11cC03ID4gLmNlbGwge1xuICAgIHdpZHRoOiBjYWxjKDE0LjI4NTcxJSAtIDEuMTI1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teC5tZWRpdW0tdXAtNyA+IC5jZWxsIHtcbiAgICB3aWR0aDogY2FsYygxNC4yODU3MSUgLSAxLjI1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teC5zbWFsbC11cC04ID4gLmNlbGwge1xuICAgIHdpZHRoOiBjYWxjKDEyLjUlIC0gMS4xMjVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi14Lm1lZGl1bS11cC04ID4gLmNlbGwge1xuICAgIHdpZHRoOiBjYWxjKDEyLjUlIC0gMS4yNXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXgubGFyZ2UtdXAtMSA+IC5jZWxsIHtcbiAgICB3aWR0aDogY2FsYygxMDAlIC0gMS41cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teC5sYXJnZS11cC0yID4gLmNlbGwge1xuICAgIHdpZHRoOiBjYWxjKDUwJSAtIDEuNXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXgubGFyZ2UtdXAtMyA+IC5jZWxsIHtcbiAgICB3aWR0aDogY2FsYygzMy4zMzMzMyUgLSAxLjVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi14LmxhcmdlLXVwLTQgPiAuY2VsbCB7XG4gICAgd2lkdGg6IGNhbGMoMjUlIC0gMS41cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teC5sYXJnZS11cC01ID4gLmNlbGwge1xuICAgIHdpZHRoOiBjYWxjKDIwJSAtIDEuNXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXgubGFyZ2UtdXAtNiA+IC5jZWxsIHtcbiAgICB3aWR0aDogY2FsYygxNi42NjY2NyUgLSAxLjVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi14LmxhcmdlLXVwLTcgPiAuY2VsbCB7XG4gICAgd2lkdGg6IGNhbGMoMTQuMjg1NzElIC0gMS41cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teC5sYXJnZS11cC04ID4gLmNlbGwge1xuICAgIHdpZHRoOiBjYWxjKDEyLjUlIC0gMS41cmVtKTsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgLmdyaWQtbWFyZ2luLXguc21hbGwtdXAtMSA+IC5jZWxsIHtcbiAgICB3aWR0aDogY2FsYygxMDAlIC0gMS4xMjVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi14Lm1lZGl1bS11cC0xID4gLmNlbGwge1xuICAgIHdpZHRoOiBjYWxjKDEwMCUgLSAxLjI1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teC5sYXJnZS11cC0xID4gLmNlbGwge1xuICAgIHdpZHRoOiBjYWxjKDEwMCUgLSAxLjVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi14LnNtYWxsLXVwLTIgPiAuY2VsbCB7XG4gICAgd2lkdGg6IGNhbGMoNTAlIC0gMS4xMjVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi14Lm1lZGl1bS11cC0yID4gLmNlbGwge1xuICAgIHdpZHRoOiBjYWxjKDUwJSAtIDEuMjVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi14LmxhcmdlLXVwLTIgPiAuY2VsbCB7XG4gICAgd2lkdGg6IGNhbGMoNTAlIC0gMS41cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teC5zbWFsbC11cC0zID4gLmNlbGwge1xuICAgIHdpZHRoOiBjYWxjKDMzLjMzMzMzJSAtIDEuMTI1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teC5tZWRpdW0tdXAtMyA+IC5jZWxsIHtcbiAgICB3aWR0aDogY2FsYygzMy4zMzMzMyUgLSAxLjI1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teC5sYXJnZS11cC0zID4gLmNlbGwge1xuICAgIHdpZHRoOiBjYWxjKDMzLjMzMzMzJSAtIDEuNXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXguc21hbGwtdXAtNCA+IC5jZWxsIHtcbiAgICB3aWR0aDogY2FsYygyNSUgLSAxLjEyNXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXgubWVkaXVtLXVwLTQgPiAuY2VsbCB7XG4gICAgd2lkdGg6IGNhbGMoMjUlIC0gMS4yNXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXgubGFyZ2UtdXAtNCA+IC5jZWxsIHtcbiAgICB3aWR0aDogY2FsYygyNSUgLSAxLjVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi14LnNtYWxsLXVwLTUgPiAuY2VsbCB7XG4gICAgd2lkdGg6IGNhbGMoMjAlIC0gMS4xMjVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi14Lm1lZGl1bS11cC01ID4gLmNlbGwge1xuICAgIHdpZHRoOiBjYWxjKDIwJSAtIDEuMjVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi14LmxhcmdlLXVwLTUgPiAuY2VsbCB7XG4gICAgd2lkdGg6IGNhbGMoMjAlIC0gMS41cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teC5zbWFsbC11cC02ID4gLmNlbGwge1xuICAgIHdpZHRoOiBjYWxjKDE2LjY2NjY3JSAtIDEuMTI1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teC5tZWRpdW0tdXAtNiA+IC5jZWxsIHtcbiAgICB3aWR0aDogY2FsYygxNi42NjY2NyUgLSAxLjI1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teC5sYXJnZS11cC02ID4gLmNlbGwge1xuICAgIHdpZHRoOiBjYWxjKDE2LjY2NjY3JSAtIDEuNXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXguc21hbGwtdXAtNyA+IC5jZWxsIHtcbiAgICB3aWR0aDogY2FsYygxNC4yODU3MSUgLSAxLjEyNXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXgubWVkaXVtLXVwLTcgPiAuY2VsbCB7XG4gICAgd2lkdGg6IGNhbGMoMTQuMjg1NzElIC0gMS4yNXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXgubGFyZ2UtdXAtNyA+IC5jZWxsIHtcbiAgICB3aWR0aDogY2FsYygxNC4yODU3MSUgLSAxLjVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi14LnNtYWxsLXVwLTggPiAuY2VsbCB7XG4gICAgd2lkdGg6IGNhbGMoMTIuNSUgLSAxLjEyNXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXgubWVkaXVtLXVwLTggPiAuY2VsbCB7XG4gICAgd2lkdGg6IGNhbGMoMTIuNSUgLSAxLjI1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teC5sYXJnZS11cC04ID4gLmNlbGwge1xuICAgIHdpZHRoOiBjYWxjKDEyLjUlIC0gMS41cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teC54bGFyZ2UtdXAtMSA+IC5jZWxsIHtcbiAgICB3aWR0aDogY2FsYygxMDAlIC0gMS41cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teC54bGFyZ2UtdXAtMiA+IC5jZWxsIHtcbiAgICB3aWR0aDogY2FsYyg1MCUgLSAxLjVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi14LnhsYXJnZS11cC0zID4gLmNlbGwge1xuICAgIHdpZHRoOiBjYWxjKDMzLjMzMzMzJSAtIDEuNXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXgueGxhcmdlLXVwLTQgPiAuY2VsbCB7XG4gICAgd2lkdGg6IGNhbGMoMjUlIC0gMS41cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teC54bGFyZ2UtdXAtNSA+IC5jZWxsIHtcbiAgICB3aWR0aDogY2FsYygyMCUgLSAxLjVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi14LnhsYXJnZS11cC02ID4gLmNlbGwge1xuICAgIHdpZHRoOiBjYWxjKDE2LjY2NjY3JSAtIDEuNXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXgueGxhcmdlLXVwLTcgPiAuY2VsbCB7XG4gICAgd2lkdGg6IGNhbGMoMTQuMjg1NzElIC0gMS41cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teC54bGFyZ2UtdXAtOCA+IC5jZWxsIHtcbiAgICB3aWR0aDogY2FsYygxMi41JSAtIDEuNXJlbSk7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5MGVtKSB7XG4gIC5ncmlkLW1hcmdpbi14LnNtYWxsLXVwLTEgPiAuY2VsbCB7XG4gICAgd2lkdGg6IGNhbGMoMTAwJSAtIDEuMTI1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teC5tZWRpdW0tdXAtMSA+IC5jZWxsIHtcbiAgICB3aWR0aDogY2FsYygxMDAlIC0gMS4yNXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXgubGFyZ2UtdXAtMSA+IC5jZWxsIHtcbiAgICB3aWR0aDogY2FsYygxMDAlIC0gMS41cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teC54bGFyZ2UtdXAtMSA+IC5jZWxsIHtcbiAgICB3aWR0aDogY2FsYygxMDAlIC0gMS41cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teC5zbWFsbC11cC0yID4gLmNlbGwge1xuICAgIHdpZHRoOiBjYWxjKDUwJSAtIDEuMTI1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teC5tZWRpdW0tdXAtMiA+IC5jZWxsIHtcbiAgICB3aWR0aDogY2FsYyg1MCUgLSAxLjI1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teC5sYXJnZS11cC0yID4gLmNlbGwge1xuICAgIHdpZHRoOiBjYWxjKDUwJSAtIDEuNXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXgueGxhcmdlLXVwLTIgPiAuY2VsbCB7XG4gICAgd2lkdGg6IGNhbGMoNTAlIC0gMS41cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teC5zbWFsbC11cC0zID4gLmNlbGwge1xuICAgIHdpZHRoOiBjYWxjKDMzLjMzMzMzJSAtIDEuMTI1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teC5tZWRpdW0tdXAtMyA+IC5jZWxsIHtcbiAgICB3aWR0aDogY2FsYygzMy4zMzMzMyUgLSAxLjI1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teC5sYXJnZS11cC0zID4gLmNlbGwge1xuICAgIHdpZHRoOiBjYWxjKDMzLjMzMzMzJSAtIDEuNXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXgueGxhcmdlLXVwLTMgPiAuY2VsbCB7XG4gICAgd2lkdGg6IGNhbGMoMzMuMzMzMzMlIC0gMS41cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teC5zbWFsbC11cC00ID4gLmNlbGwge1xuICAgIHdpZHRoOiBjYWxjKDI1JSAtIDEuMTI1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teC5tZWRpdW0tdXAtNCA+IC5jZWxsIHtcbiAgICB3aWR0aDogY2FsYygyNSUgLSAxLjI1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teC5sYXJnZS11cC00ID4gLmNlbGwge1xuICAgIHdpZHRoOiBjYWxjKDI1JSAtIDEuNXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXgueGxhcmdlLXVwLTQgPiAuY2VsbCB7XG4gICAgd2lkdGg6IGNhbGMoMjUlIC0gMS41cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teC5zbWFsbC11cC01ID4gLmNlbGwge1xuICAgIHdpZHRoOiBjYWxjKDIwJSAtIDEuMTI1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teC5tZWRpdW0tdXAtNSA+IC5jZWxsIHtcbiAgICB3aWR0aDogY2FsYygyMCUgLSAxLjI1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teC5sYXJnZS11cC01ID4gLmNlbGwge1xuICAgIHdpZHRoOiBjYWxjKDIwJSAtIDEuNXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXgueGxhcmdlLXVwLTUgPiAuY2VsbCB7XG4gICAgd2lkdGg6IGNhbGMoMjAlIC0gMS41cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teC5zbWFsbC11cC02ID4gLmNlbGwge1xuICAgIHdpZHRoOiBjYWxjKDE2LjY2NjY3JSAtIDEuMTI1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teC5tZWRpdW0tdXAtNiA+IC5jZWxsIHtcbiAgICB3aWR0aDogY2FsYygxNi42NjY2NyUgLSAxLjI1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teC5sYXJnZS11cC02ID4gLmNlbGwge1xuICAgIHdpZHRoOiBjYWxjKDE2LjY2NjY3JSAtIDEuNXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXgueGxhcmdlLXVwLTYgPiAuY2VsbCB7XG4gICAgd2lkdGg6IGNhbGMoMTYuNjY2NjclIC0gMS41cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teC5zbWFsbC11cC03ID4gLmNlbGwge1xuICAgIHdpZHRoOiBjYWxjKDE0LjI4NTcxJSAtIDEuMTI1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teC5tZWRpdW0tdXAtNyA+IC5jZWxsIHtcbiAgICB3aWR0aDogY2FsYygxNC4yODU3MSUgLSAxLjI1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teC5sYXJnZS11cC03ID4gLmNlbGwge1xuICAgIHdpZHRoOiBjYWxjKDE0LjI4NTcxJSAtIDEuNXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXgueGxhcmdlLXVwLTcgPiAuY2VsbCB7XG4gICAgd2lkdGg6IGNhbGMoMTQuMjg1NzElIC0gMS41cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teC5zbWFsbC11cC04ID4gLmNlbGwge1xuICAgIHdpZHRoOiBjYWxjKDEyLjUlIC0gMS4xMjVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi14Lm1lZGl1bS11cC04ID4gLmNlbGwge1xuICAgIHdpZHRoOiBjYWxjKDEyLjUlIC0gMS4yNXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXgubGFyZ2UtdXAtOCA+IC5jZWxsIHtcbiAgICB3aWR0aDogY2FsYygxMi41JSAtIDEuNXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXgueGxhcmdlLXVwLTggPiAuY2VsbCB7XG4gICAgd2lkdGg6IGNhbGMoMTIuNSUgLSAxLjVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi14Lnh4bGFyZ2UtdXAtMSA+IC5jZWxsIHtcbiAgICB3aWR0aDogY2FsYygxMDAlIC0gMS41cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teC54eGxhcmdlLXVwLTIgPiAuY2VsbCB7XG4gICAgd2lkdGg6IGNhbGMoNTAlIC0gMS41cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teC54eGxhcmdlLXVwLTMgPiAuY2VsbCB7XG4gICAgd2lkdGg6IGNhbGMoMzMuMzMzMzMlIC0gMS41cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teC54eGxhcmdlLXVwLTQgPiAuY2VsbCB7XG4gICAgd2lkdGg6IGNhbGMoMjUlIC0gMS41cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teC54eGxhcmdlLXVwLTUgPiAuY2VsbCB7XG4gICAgd2lkdGg6IGNhbGMoMjAlIC0gMS41cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teC54eGxhcmdlLXVwLTYgPiAuY2VsbCB7XG4gICAgd2lkdGg6IGNhbGMoMTYuNjY2NjclIC0gMS41cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teC54eGxhcmdlLXVwLTcgPiAuY2VsbCB7XG4gICAgd2lkdGg6IGNhbGMoMTQuMjg1NzElIC0gMS41cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teC54eGxhcmdlLXVwLTggPiAuY2VsbCB7XG4gICAgd2lkdGg6IGNhbGMoMTIuNSUgLSAxLjVyZW0pOyB9IH1cblxuLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSB7XG4gIG1hcmdpbi1yaWdodDogMDtcbiAgbWFyZ2luLWxlZnQ6IDA7IH1cbiAgLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSA+IC5jZWxsIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgbWFyZ2luLWxlZnQ6IDA7IH1cbiAgLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSA+IC5zbWFsbC0xIHtcbiAgICB3aWR0aDogOC4zMzMzMyU7IH1cbiAgLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSA+IC5zbWFsbC0yIHtcbiAgICB3aWR0aDogMTYuNjY2NjclOyB9XG4gIC5zbWFsbC1tYXJnaW4tY29sbGFwc2UgPiAuc21hbGwtMyB7XG4gICAgd2lkdGg6IDI1JTsgfVxuICAuc21hbGwtbWFyZ2luLWNvbGxhcHNlID4gLnNtYWxsLTQge1xuICAgIHdpZHRoOiAzMy4zMzMzMyU7IH1cbiAgLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSA+IC5zbWFsbC01IHtcbiAgICB3aWR0aDogNDEuNjY2NjclOyB9XG4gIC5zbWFsbC1tYXJnaW4tY29sbGFwc2UgPiAuc21hbGwtNiB7XG4gICAgd2lkdGg6IDUwJTsgfVxuICAuc21hbGwtbWFyZ2luLWNvbGxhcHNlID4gLnNtYWxsLTcge1xuICAgIHdpZHRoOiA1OC4zMzMzMyU7IH1cbiAgLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSA+IC5zbWFsbC04IHtcbiAgICB3aWR0aDogNjYuNjY2NjclOyB9XG4gIC5zbWFsbC1tYXJnaW4tY29sbGFwc2UgPiAuc21hbGwtOSB7XG4gICAgd2lkdGg6IDc1JTsgfVxuICAuc21hbGwtbWFyZ2luLWNvbGxhcHNlID4gLnNtYWxsLTEwIHtcbiAgICB3aWR0aDogODMuMzMzMzMlOyB9XG4gIC5zbWFsbC1tYXJnaW4tY29sbGFwc2UgPiAuc21hbGwtMTEge1xuICAgIHdpZHRoOiA5MS42NjY2NyU7IH1cbiAgLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSA+IC5zbWFsbC0xMiB7XG4gICAgd2lkdGg6IDEwMCU7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuc21hbGwtbWFyZ2luLWNvbGxhcHNlID4gLm1lZGl1bS0xIHtcbiAgICAgIHdpZHRoOiA4LjMzMzMzJTsgfVxuICAgIC5zbWFsbC1tYXJnaW4tY29sbGFwc2UgPiAubWVkaXVtLTIge1xuICAgICAgd2lkdGg6IDE2LjY2NjY3JTsgfVxuICAgIC5zbWFsbC1tYXJnaW4tY29sbGFwc2UgPiAubWVkaXVtLTMge1xuICAgICAgd2lkdGg6IDI1JTsgfVxuICAgIC5zbWFsbC1tYXJnaW4tY29sbGFwc2UgPiAubWVkaXVtLTQge1xuICAgICAgd2lkdGg6IDMzLjMzMzMzJTsgfVxuICAgIC5zbWFsbC1tYXJnaW4tY29sbGFwc2UgPiAubWVkaXVtLTUge1xuICAgICAgd2lkdGg6IDQxLjY2NjY3JTsgfVxuICAgIC5zbWFsbC1tYXJnaW4tY29sbGFwc2UgPiAubWVkaXVtLTYge1xuICAgICAgd2lkdGg6IDUwJTsgfVxuICAgIC5zbWFsbC1tYXJnaW4tY29sbGFwc2UgPiAubWVkaXVtLTcge1xuICAgICAgd2lkdGg6IDU4LjMzMzMzJTsgfVxuICAgIC5zbWFsbC1tYXJnaW4tY29sbGFwc2UgPiAubWVkaXVtLTgge1xuICAgICAgd2lkdGg6IDY2LjY2NjY3JTsgfVxuICAgIC5zbWFsbC1tYXJnaW4tY29sbGFwc2UgPiAubWVkaXVtLTkge1xuICAgICAgd2lkdGg6IDc1JTsgfVxuICAgIC5zbWFsbC1tYXJnaW4tY29sbGFwc2UgPiAubWVkaXVtLTEwIHtcbiAgICAgIHdpZHRoOiA4My4zMzMzMyU7IH1cbiAgICAuc21hbGwtbWFyZ2luLWNvbGxhcHNlID4gLm1lZGl1bS0xMSB7XG4gICAgICB3aWR0aDogOTEuNjY2NjclOyB9XG4gICAgLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tMTIge1xuICAgICAgd2lkdGg6IDEwMCU7IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5zbWFsbC1tYXJnaW4tY29sbGFwc2UgPiAubGFyZ2UtMSB7XG4gICAgICB3aWR0aDogOC4zMzMzMyU7IH1cbiAgICAuc21hbGwtbWFyZ2luLWNvbGxhcHNlID4gLmxhcmdlLTIge1xuICAgICAgd2lkdGg6IDE2LjY2NjY3JTsgfVxuICAgIC5zbWFsbC1tYXJnaW4tY29sbGFwc2UgPiAubGFyZ2UtMyB7XG4gICAgICB3aWR0aDogMjUlOyB9XG4gICAgLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSA+IC5sYXJnZS00IHtcbiAgICAgIHdpZHRoOiAzMy4zMzMzMyU7IH1cbiAgICAuc21hbGwtbWFyZ2luLWNvbGxhcHNlID4gLmxhcmdlLTUge1xuICAgICAgd2lkdGg6IDQxLjY2NjY3JTsgfVxuICAgIC5zbWFsbC1tYXJnaW4tY29sbGFwc2UgPiAubGFyZ2UtNiB7XG4gICAgICB3aWR0aDogNTAlOyB9XG4gICAgLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSA+IC5sYXJnZS03IHtcbiAgICAgIHdpZHRoOiA1OC4zMzMzMyU7IH1cbiAgICAuc21hbGwtbWFyZ2luLWNvbGxhcHNlID4gLmxhcmdlLTgge1xuICAgICAgd2lkdGg6IDY2LjY2NjY3JTsgfVxuICAgIC5zbWFsbC1tYXJnaW4tY29sbGFwc2UgPiAubGFyZ2UtOSB7XG4gICAgICB3aWR0aDogNzUlOyB9XG4gICAgLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSA+IC5sYXJnZS0xMCB7XG4gICAgICB3aWR0aDogODMuMzMzMzMlOyB9XG4gICAgLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSA+IC5sYXJnZS0xMSB7XG4gICAgICB3aWR0aDogOTEuNjY2NjclOyB9XG4gICAgLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSA+IC5sYXJnZS0xMiB7XG4gICAgICB3aWR0aDogMTAwJTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICAuc21hbGwtbWFyZ2luLWNvbGxhcHNlID4gLnhsYXJnZS0xIHtcbiAgICAgIHdpZHRoOiA4LjMzMzMzJTsgfVxuICAgIC5zbWFsbC1tYXJnaW4tY29sbGFwc2UgPiAueGxhcmdlLTIge1xuICAgICAgd2lkdGg6IDE2LjY2NjY3JTsgfVxuICAgIC5zbWFsbC1tYXJnaW4tY29sbGFwc2UgPiAueGxhcmdlLTMge1xuICAgICAgd2lkdGg6IDI1JTsgfVxuICAgIC5zbWFsbC1tYXJnaW4tY29sbGFwc2UgPiAueGxhcmdlLTQge1xuICAgICAgd2lkdGg6IDMzLjMzMzMzJTsgfVxuICAgIC5zbWFsbC1tYXJnaW4tY29sbGFwc2UgPiAueGxhcmdlLTUge1xuICAgICAgd2lkdGg6IDQxLjY2NjY3JTsgfVxuICAgIC5zbWFsbC1tYXJnaW4tY29sbGFwc2UgPiAueGxhcmdlLTYge1xuICAgICAgd2lkdGg6IDUwJTsgfVxuICAgIC5zbWFsbC1tYXJnaW4tY29sbGFwc2UgPiAueGxhcmdlLTcge1xuICAgICAgd2lkdGg6IDU4LjMzMzMzJTsgfVxuICAgIC5zbWFsbC1tYXJnaW4tY29sbGFwc2UgPiAueGxhcmdlLTgge1xuICAgICAgd2lkdGg6IDY2LjY2NjY3JTsgfVxuICAgIC5zbWFsbC1tYXJnaW4tY29sbGFwc2UgPiAueGxhcmdlLTkge1xuICAgICAgd2lkdGg6IDc1JTsgfVxuICAgIC5zbWFsbC1tYXJnaW4tY29sbGFwc2UgPiAueGxhcmdlLTEwIHtcbiAgICAgIHdpZHRoOiA4My4zMzMzMyU7IH1cbiAgICAuc21hbGwtbWFyZ2luLWNvbGxhcHNlID4gLnhsYXJnZS0xMSB7XG4gICAgICB3aWR0aDogOTEuNjY2NjclOyB9XG4gICAgLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSA+IC54bGFyZ2UtMTIge1xuICAgICAgd2lkdGg6IDEwMCU7IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5MGVtKSB7XG4gICAgLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSA+IC54eGxhcmdlLTEge1xuICAgICAgd2lkdGg6IDguMzMzMzMlOyB9XG4gICAgLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSA+IC54eGxhcmdlLTIge1xuICAgICAgd2lkdGg6IDE2LjY2NjY3JTsgfVxuICAgIC5zbWFsbC1tYXJnaW4tY29sbGFwc2UgPiAueHhsYXJnZS0zIHtcbiAgICAgIHdpZHRoOiAyNSU7IH1cbiAgICAuc21hbGwtbWFyZ2luLWNvbGxhcHNlID4gLnh4bGFyZ2UtNCB7XG4gICAgICB3aWR0aDogMzMuMzMzMzMlOyB9XG4gICAgLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSA+IC54eGxhcmdlLTUge1xuICAgICAgd2lkdGg6IDQxLjY2NjY3JTsgfVxuICAgIC5zbWFsbC1tYXJnaW4tY29sbGFwc2UgPiAueHhsYXJnZS02IHtcbiAgICAgIHdpZHRoOiA1MCU7IH1cbiAgICAuc21hbGwtbWFyZ2luLWNvbGxhcHNlID4gLnh4bGFyZ2UtNyB7XG4gICAgICB3aWR0aDogNTguMzMzMzMlOyB9XG4gICAgLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSA+IC54eGxhcmdlLTgge1xuICAgICAgd2lkdGg6IDY2LjY2NjY3JTsgfVxuICAgIC5zbWFsbC1tYXJnaW4tY29sbGFwc2UgPiAueHhsYXJnZS05IHtcbiAgICAgIHdpZHRoOiA3NSU7IH1cbiAgICAuc21hbGwtbWFyZ2luLWNvbGxhcHNlID4gLnh4bGFyZ2UtMTAge1xuICAgICAgd2lkdGg6IDgzLjMzMzMzJTsgfVxuICAgIC5zbWFsbC1tYXJnaW4tY29sbGFwc2UgPiAueHhsYXJnZS0xMSB7XG4gICAgICB3aWR0aDogOTEuNjY2NjclOyB9XG4gICAgLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSA+IC54eGxhcmdlLTEyIHtcbiAgICAgIHdpZHRoOiAxMDAlOyB9IH1cblxuLnNtYWxsLXBhZGRpbmctY29sbGFwc2Uge1xuICBtYXJnaW4tcmlnaHQ6IDA7XG4gIG1hcmdpbi1sZWZ0OiAwOyB9XG4gIC5zbWFsbC1wYWRkaW5nLWNvbGxhcHNlID4gLmNlbGwge1xuICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgcGFkZGluZy1sZWZ0OiAwOyB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5tZWRpdW0tbWFyZ2luLWNvbGxhcHNlIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgbWFyZ2luLWxlZnQ6IDA7IH1cbiAgICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSA+IC5jZWxsIHtcbiAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICAgIG1hcmdpbi1sZWZ0OiAwOyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2UgPiAuc21hbGwtMSB7XG4gICAgd2lkdGg6IDguMzMzMzMlOyB9XG4gIC5tZWRpdW0tbWFyZ2luLWNvbGxhcHNlID4gLnNtYWxsLTIge1xuICAgIHdpZHRoOiAxNi42NjY2NyU7IH1cbiAgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2UgPiAuc21hbGwtMyB7XG4gICAgd2lkdGg6IDI1JTsgfVxuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSA+IC5zbWFsbC00IHtcbiAgICB3aWR0aDogMzMuMzMzMzMlOyB9XG4gIC5tZWRpdW0tbWFyZ2luLWNvbGxhcHNlID4gLnNtYWxsLTUge1xuICAgIHdpZHRoOiA0MS42NjY2NyU7IH1cbiAgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2UgPiAuc21hbGwtNiB7XG4gICAgd2lkdGg6IDUwJTsgfVxuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSA+IC5zbWFsbC03IHtcbiAgICB3aWR0aDogNTguMzMzMzMlOyB9XG4gIC5tZWRpdW0tbWFyZ2luLWNvbGxhcHNlID4gLnNtYWxsLTgge1xuICAgIHdpZHRoOiA2Ni42NjY2NyU7IH1cbiAgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2UgPiAuc21hbGwtOSB7XG4gICAgd2lkdGg6IDc1JTsgfVxuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSA+IC5zbWFsbC0xMCB7XG4gICAgd2lkdGg6IDgzLjMzMzMzJTsgfVxuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSA+IC5zbWFsbC0xMSB7XG4gICAgd2lkdGg6IDkxLjY2NjY3JTsgfVxuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSA+IC5zbWFsbC0xMiB7XG4gICAgd2lkdGg6IDEwMCU7IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tMSB7XG4gICAgd2lkdGg6IDguMzMzMzMlOyB9XG4gIC5tZWRpdW0tbWFyZ2luLWNvbGxhcHNlID4gLm1lZGl1bS0yIHtcbiAgICB3aWR0aDogMTYuNjY2NjclOyB9XG4gIC5tZWRpdW0tbWFyZ2luLWNvbGxhcHNlID4gLm1lZGl1bS0zIHtcbiAgICB3aWR0aDogMjUlOyB9XG4gIC5tZWRpdW0tbWFyZ2luLWNvbGxhcHNlID4gLm1lZGl1bS00IHtcbiAgICB3aWR0aDogMzMuMzMzMzMlOyB9XG4gIC5tZWRpdW0tbWFyZ2luLWNvbGxhcHNlID4gLm1lZGl1bS01IHtcbiAgICB3aWR0aDogNDEuNjY2NjclOyB9XG4gIC5tZWRpdW0tbWFyZ2luLWNvbGxhcHNlID4gLm1lZGl1bS02IHtcbiAgICB3aWR0aDogNTAlOyB9XG4gIC5tZWRpdW0tbWFyZ2luLWNvbGxhcHNlID4gLm1lZGl1bS03IHtcbiAgICB3aWR0aDogNTguMzMzMzMlOyB9XG4gIC5tZWRpdW0tbWFyZ2luLWNvbGxhcHNlID4gLm1lZGl1bS04IHtcbiAgICB3aWR0aDogNjYuNjY2NjclOyB9XG4gIC5tZWRpdW0tbWFyZ2luLWNvbGxhcHNlID4gLm1lZGl1bS05IHtcbiAgICB3aWR0aDogNzUlOyB9XG4gIC5tZWRpdW0tbWFyZ2luLWNvbGxhcHNlID4gLm1lZGl1bS0xMCB7XG4gICAgd2lkdGg6IDgzLjMzMzMzJTsgfVxuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tMTEge1xuICAgIHdpZHRoOiA5MS42NjY2NyU7IH1cbiAgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2UgPiAubWVkaXVtLTEyIHtcbiAgICB3aWR0aDogMTAwJTsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5tZWRpdW0tbWFyZ2luLWNvbGxhcHNlID4gLmxhcmdlLTEge1xuICAgIHdpZHRoOiA4LjMzMzMzJTsgfVxuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSA+IC5sYXJnZS0yIHtcbiAgICB3aWR0aDogMTYuNjY2NjclOyB9XG4gIC5tZWRpdW0tbWFyZ2luLWNvbGxhcHNlID4gLmxhcmdlLTMge1xuICAgIHdpZHRoOiAyNSU7IH1cbiAgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2UgPiAubGFyZ2UtNCB7XG4gICAgd2lkdGg6IDMzLjMzMzMzJTsgfVxuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSA+IC5sYXJnZS01IHtcbiAgICB3aWR0aDogNDEuNjY2NjclOyB9XG4gIC5tZWRpdW0tbWFyZ2luLWNvbGxhcHNlID4gLmxhcmdlLTYge1xuICAgIHdpZHRoOiA1MCU7IH1cbiAgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2UgPiAubGFyZ2UtNyB7XG4gICAgd2lkdGg6IDU4LjMzMzMzJTsgfVxuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSA+IC5sYXJnZS04IHtcbiAgICB3aWR0aDogNjYuNjY2NjclOyB9XG4gIC5tZWRpdW0tbWFyZ2luLWNvbGxhcHNlID4gLmxhcmdlLTkge1xuICAgIHdpZHRoOiA3NSU7IH1cbiAgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2UgPiAubGFyZ2UtMTAge1xuICAgIHdpZHRoOiA4My4zMzMzMyU7IH1cbiAgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2UgPiAubGFyZ2UtMTEge1xuICAgIHdpZHRoOiA5MS42NjY2NyU7IH1cbiAgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2UgPiAubGFyZ2UtMTIge1xuICAgIHdpZHRoOiAxMDAlOyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSA+IC54bGFyZ2UtMSB7XG4gICAgd2lkdGg6IDguMzMzMzMlOyB9XG4gIC5tZWRpdW0tbWFyZ2luLWNvbGxhcHNlID4gLnhsYXJnZS0yIHtcbiAgICB3aWR0aDogMTYuNjY2NjclOyB9XG4gIC5tZWRpdW0tbWFyZ2luLWNvbGxhcHNlID4gLnhsYXJnZS0zIHtcbiAgICB3aWR0aDogMjUlOyB9XG4gIC5tZWRpdW0tbWFyZ2luLWNvbGxhcHNlID4gLnhsYXJnZS00IHtcbiAgICB3aWR0aDogMzMuMzMzMzMlOyB9XG4gIC5tZWRpdW0tbWFyZ2luLWNvbGxhcHNlID4gLnhsYXJnZS01IHtcbiAgICB3aWR0aDogNDEuNjY2NjclOyB9XG4gIC5tZWRpdW0tbWFyZ2luLWNvbGxhcHNlID4gLnhsYXJnZS02IHtcbiAgICB3aWR0aDogNTAlOyB9XG4gIC5tZWRpdW0tbWFyZ2luLWNvbGxhcHNlID4gLnhsYXJnZS03IHtcbiAgICB3aWR0aDogNTguMzMzMzMlOyB9XG4gIC5tZWRpdW0tbWFyZ2luLWNvbGxhcHNlID4gLnhsYXJnZS04IHtcbiAgICB3aWR0aDogNjYuNjY2NjclOyB9XG4gIC5tZWRpdW0tbWFyZ2luLWNvbGxhcHNlID4gLnhsYXJnZS05IHtcbiAgICB3aWR0aDogNzUlOyB9XG4gIC5tZWRpdW0tbWFyZ2luLWNvbGxhcHNlID4gLnhsYXJnZS0xMCB7XG4gICAgd2lkdGg6IDgzLjMzMzMzJTsgfVxuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSA+IC54bGFyZ2UtMTEge1xuICAgIHdpZHRoOiA5MS42NjY2NyU7IH1cbiAgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2UgPiAueGxhcmdlLTEyIHtcbiAgICB3aWR0aDogMTAwJTsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDkwZW0pIHtcbiAgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2UgPiAueHhsYXJnZS0xIHtcbiAgICB3aWR0aDogOC4zMzMzMyU7IH1cbiAgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2UgPiAueHhsYXJnZS0yIHtcbiAgICB3aWR0aDogMTYuNjY2NjclOyB9XG4gIC5tZWRpdW0tbWFyZ2luLWNvbGxhcHNlID4gLnh4bGFyZ2UtMyB7XG4gICAgd2lkdGg6IDI1JTsgfVxuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSA+IC54eGxhcmdlLTQge1xuICAgIHdpZHRoOiAzMy4zMzMzMyU7IH1cbiAgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2UgPiAueHhsYXJnZS01IHtcbiAgICB3aWR0aDogNDEuNjY2NjclOyB9XG4gIC5tZWRpdW0tbWFyZ2luLWNvbGxhcHNlID4gLnh4bGFyZ2UtNiB7XG4gICAgd2lkdGg6IDUwJTsgfVxuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSA+IC54eGxhcmdlLTcge1xuICAgIHdpZHRoOiA1OC4zMzMzMyU7IH1cbiAgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2UgPiAueHhsYXJnZS04IHtcbiAgICB3aWR0aDogNjYuNjY2NjclOyB9XG4gIC5tZWRpdW0tbWFyZ2luLWNvbGxhcHNlID4gLnh4bGFyZ2UtOSB7XG4gICAgd2lkdGg6IDc1JTsgfVxuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSA+IC54eGxhcmdlLTEwIHtcbiAgICB3aWR0aDogODMuMzMzMzMlOyB9XG4gIC5tZWRpdW0tbWFyZ2luLWNvbGxhcHNlID4gLnh4bGFyZ2UtMTEge1xuICAgIHdpZHRoOiA5MS42NjY2NyU7IH1cbiAgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2UgPiAueHhsYXJnZS0xMiB7XG4gICAgd2lkdGg6IDEwMCU7IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAubWVkaXVtLXBhZGRpbmctY29sbGFwc2Uge1xuICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICBtYXJnaW4tbGVmdDogMDsgfVxuICAgIC5tZWRpdW0tcGFkZGluZy1jb2xsYXBzZSA+IC5jZWxsIHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDA7IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAubGFyZ2UtbWFyZ2luLWNvbGxhcHNlIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgbWFyZ2luLWxlZnQ6IDA7IH1cbiAgICAubGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLmNlbGwge1xuICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgICAgbWFyZ2luLWxlZnQ6IDA7IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAubGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLnNtYWxsLTEge1xuICAgIHdpZHRoOiA4LjMzMzMzJTsgfVxuICAubGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLnNtYWxsLTIge1xuICAgIHdpZHRoOiAxNi42NjY2NyU7IH1cbiAgLmxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5zbWFsbC0zIHtcbiAgICB3aWR0aDogMjUlOyB9XG4gIC5sYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAuc21hbGwtNCB7XG4gICAgd2lkdGg6IDMzLjMzMzMzJTsgfVxuICAubGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLnNtYWxsLTUge1xuICAgIHdpZHRoOiA0MS42NjY2NyU7IH1cbiAgLmxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5zbWFsbC02IHtcbiAgICB3aWR0aDogNTAlOyB9XG4gIC5sYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAuc21hbGwtNyB7XG4gICAgd2lkdGg6IDU4LjMzMzMzJTsgfVxuICAubGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLnNtYWxsLTgge1xuICAgIHdpZHRoOiA2Ni42NjY2NyU7IH1cbiAgLmxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5zbWFsbC05IHtcbiAgICB3aWR0aDogNzUlOyB9XG4gIC5sYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAuc21hbGwtMTAge1xuICAgIHdpZHRoOiA4My4zMzMzMyU7IH1cbiAgLmxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5zbWFsbC0xMSB7XG4gICAgd2lkdGg6IDkxLjY2NjY3JTsgfVxuICAubGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLnNtYWxsLTEyIHtcbiAgICB3aWR0aDogMTAwJTsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5sYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAubWVkaXVtLTEge1xuICAgIHdpZHRoOiA4LjMzMzMzJTsgfVxuICAubGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLm1lZGl1bS0yIHtcbiAgICB3aWR0aDogMTYuNjY2NjclOyB9XG4gIC5sYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAubWVkaXVtLTMge1xuICAgIHdpZHRoOiAyNSU7IH1cbiAgLmxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tNCB7XG4gICAgd2lkdGg6IDMzLjMzMzMzJTsgfVxuICAubGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLm1lZGl1bS01IHtcbiAgICB3aWR0aDogNDEuNjY2NjclOyB9XG4gIC5sYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAubWVkaXVtLTYge1xuICAgIHdpZHRoOiA1MCU7IH1cbiAgLmxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tNyB7XG4gICAgd2lkdGg6IDU4LjMzMzMzJTsgfVxuICAubGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLm1lZGl1bS04IHtcbiAgICB3aWR0aDogNjYuNjY2NjclOyB9XG4gIC5sYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAubWVkaXVtLTkge1xuICAgIHdpZHRoOiA3NSU7IH1cbiAgLmxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tMTAge1xuICAgIHdpZHRoOiA4My4zMzMzMyU7IH1cbiAgLmxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tMTEge1xuICAgIHdpZHRoOiA5MS42NjY2NyU7IH1cbiAgLmxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tMTIge1xuICAgIHdpZHRoOiAxMDAlOyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5sYXJnZS0xIHtcbiAgICB3aWR0aDogOC4zMzMzMyU7IH1cbiAgLmxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5sYXJnZS0yIHtcbiAgICB3aWR0aDogMTYuNjY2NjclOyB9XG4gIC5sYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAubGFyZ2UtMyB7XG4gICAgd2lkdGg6IDI1JTsgfVxuICAubGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLmxhcmdlLTQge1xuICAgIHdpZHRoOiAzMy4zMzMzMyU7IH1cbiAgLmxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5sYXJnZS01IHtcbiAgICB3aWR0aDogNDEuNjY2NjclOyB9XG4gIC5sYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAubGFyZ2UtNiB7XG4gICAgd2lkdGg6IDUwJTsgfVxuICAubGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLmxhcmdlLTcge1xuICAgIHdpZHRoOiA1OC4zMzMzMyU7IH1cbiAgLmxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5sYXJnZS04IHtcbiAgICB3aWR0aDogNjYuNjY2NjclOyB9XG4gIC5sYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAubGFyZ2UtOSB7XG4gICAgd2lkdGg6IDc1JTsgfVxuICAubGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLmxhcmdlLTEwIHtcbiAgICB3aWR0aDogODMuMzMzMzMlOyB9XG4gIC5sYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAubGFyZ2UtMTEge1xuICAgIHdpZHRoOiA5MS42NjY2NyU7IH1cbiAgLmxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5sYXJnZS0xMiB7XG4gICAgd2lkdGg6IDEwMCU7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gIC5sYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAueGxhcmdlLTEge1xuICAgIHdpZHRoOiA4LjMzMzMzJTsgfVxuICAubGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLnhsYXJnZS0yIHtcbiAgICB3aWR0aDogMTYuNjY2NjclOyB9XG4gIC5sYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAueGxhcmdlLTMge1xuICAgIHdpZHRoOiAyNSU7IH1cbiAgLmxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC54bGFyZ2UtNCB7XG4gICAgd2lkdGg6IDMzLjMzMzMzJTsgfVxuICAubGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLnhsYXJnZS01IHtcbiAgICB3aWR0aDogNDEuNjY2NjclOyB9XG4gIC5sYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAueGxhcmdlLTYge1xuICAgIHdpZHRoOiA1MCU7IH1cbiAgLmxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC54bGFyZ2UtNyB7XG4gICAgd2lkdGg6IDU4LjMzMzMzJTsgfVxuICAubGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLnhsYXJnZS04IHtcbiAgICB3aWR0aDogNjYuNjY2NjclOyB9XG4gIC5sYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAueGxhcmdlLTkge1xuICAgIHdpZHRoOiA3NSU7IH1cbiAgLmxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC54bGFyZ2UtMTAge1xuICAgIHdpZHRoOiA4My4zMzMzMyU7IH1cbiAgLmxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC54bGFyZ2UtMTEge1xuICAgIHdpZHRoOiA5MS42NjY2NyU7IH1cbiAgLmxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC54bGFyZ2UtMTIge1xuICAgIHdpZHRoOiAxMDAlOyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTBlbSkge1xuICAubGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLnh4bGFyZ2UtMSB7XG4gICAgd2lkdGg6IDguMzMzMzMlOyB9XG4gIC5sYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAueHhsYXJnZS0yIHtcbiAgICB3aWR0aDogMTYuNjY2NjclOyB9XG4gIC5sYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAueHhsYXJnZS0zIHtcbiAgICB3aWR0aDogMjUlOyB9XG4gIC5sYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAueHhsYXJnZS00IHtcbiAgICB3aWR0aDogMzMuMzMzMzMlOyB9XG4gIC5sYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAueHhsYXJnZS01IHtcbiAgICB3aWR0aDogNDEuNjY2NjclOyB9XG4gIC5sYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAueHhsYXJnZS02IHtcbiAgICB3aWR0aDogNTAlOyB9XG4gIC5sYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAueHhsYXJnZS03IHtcbiAgICB3aWR0aDogNTguMzMzMzMlOyB9XG4gIC5sYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAueHhsYXJnZS04IHtcbiAgICB3aWR0aDogNjYuNjY2NjclOyB9XG4gIC5sYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAueHhsYXJnZS05IHtcbiAgICB3aWR0aDogNzUlOyB9XG4gIC5sYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAueHhsYXJnZS0xMCB7XG4gICAgd2lkdGg6IDgzLjMzMzMzJTsgfVxuICAubGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLnh4bGFyZ2UtMTEge1xuICAgIHdpZHRoOiA5MS42NjY2NyU7IH1cbiAgLmxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC54eGxhcmdlLTEyIHtcbiAgICB3aWR0aDogMTAwJTsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5sYXJnZS1wYWRkaW5nLWNvbGxhcHNlIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgbWFyZ2luLWxlZnQ6IDA7IH1cbiAgICAubGFyZ2UtcGFkZGluZy1jb2xsYXBzZSA+IC5jZWxsIHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDA7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gIC54bGFyZ2UtbWFyZ2luLWNvbGxhcHNlIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgbWFyZ2luLWxlZnQ6IDA7IH1cbiAgICAueGxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5jZWxsIHtcbiAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICAgIG1hcmdpbi1sZWZ0OiAwOyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAueGxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5zbWFsbC0xIHtcbiAgICB3aWR0aDogOC4zMzMzMyU7IH1cbiAgLnhsYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAuc21hbGwtMiB7XG4gICAgd2lkdGg6IDE2LjY2NjY3JTsgfVxuICAueGxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5zbWFsbC0zIHtcbiAgICB3aWR0aDogMjUlOyB9XG4gIC54bGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLnNtYWxsLTQge1xuICAgIHdpZHRoOiAzMy4zMzMzMyU7IH1cbiAgLnhsYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAuc21hbGwtNSB7XG4gICAgd2lkdGg6IDQxLjY2NjY3JTsgfVxuICAueGxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5zbWFsbC02IHtcbiAgICB3aWR0aDogNTAlOyB9XG4gIC54bGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLnNtYWxsLTcge1xuICAgIHdpZHRoOiA1OC4zMzMzMyU7IH1cbiAgLnhsYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAuc21hbGwtOCB7XG4gICAgd2lkdGg6IDY2LjY2NjY3JTsgfVxuICAueGxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5zbWFsbC05IHtcbiAgICB3aWR0aDogNzUlOyB9XG4gIC54bGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLnNtYWxsLTEwIHtcbiAgICB3aWR0aDogODMuMzMzMzMlOyB9XG4gIC54bGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLnNtYWxsLTExIHtcbiAgICB3aWR0aDogOTEuNjY2NjclOyB9XG4gIC54bGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLnNtYWxsLTEyIHtcbiAgICB3aWR0aDogMTAwJTsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgLnhsYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAubWVkaXVtLTEge1xuICAgIHdpZHRoOiA4LjMzMzMzJTsgfVxuICAueGxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tMiB7XG4gICAgd2lkdGg6IDE2LjY2NjY3JTsgfVxuICAueGxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tMyB7XG4gICAgd2lkdGg6IDI1JTsgfVxuICAueGxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tNCB7XG4gICAgd2lkdGg6IDMzLjMzMzMzJTsgfVxuICAueGxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tNSB7XG4gICAgd2lkdGg6IDQxLjY2NjY3JTsgfVxuICAueGxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tNiB7XG4gICAgd2lkdGg6IDUwJTsgfVxuICAueGxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tNyB7XG4gICAgd2lkdGg6IDU4LjMzMzMzJTsgfVxuICAueGxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tOCB7XG4gICAgd2lkdGg6IDY2LjY2NjY3JTsgfVxuICAueGxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tOSB7XG4gICAgd2lkdGg6IDc1JTsgfVxuICAueGxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tMTAge1xuICAgIHdpZHRoOiA4My4zMzMzMyU7IH1cbiAgLnhsYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAubWVkaXVtLTExIHtcbiAgICB3aWR0aDogOTEuNjY2NjclOyB9XG4gIC54bGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLm1lZGl1bS0xMiB7XG4gICAgd2lkdGg6IDEwMCU7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gIC54bGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLmxhcmdlLTEge1xuICAgIHdpZHRoOiA4LjMzMzMzJTsgfVxuICAueGxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5sYXJnZS0yIHtcbiAgICB3aWR0aDogMTYuNjY2NjclOyB9XG4gIC54bGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLmxhcmdlLTMge1xuICAgIHdpZHRoOiAyNSU7IH1cbiAgLnhsYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAubGFyZ2UtNCB7XG4gICAgd2lkdGg6IDMzLjMzMzMzJTsgfVxuICAueGxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5sYXJnZS01IHtcbiAgICB3aWR0aDogNDEuNjY2NjclOyB9XG4gIC54bGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLmxhcmdlLTYge1xuICAgIHdpZHRoOiA1MCU7IH1cbiAgLnhsYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAubGFyZ2UtNyB7XG4gICAgd2lkdGg6IDU4LjMzMzMzJTsgfVxuICAueGxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5sYXJnZS04IHtcbiAgICB3aWR0aDogNjYuNjY2NjclOyB9XG4gIC54bGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLmxhcmdlLTkge1xuICAgIHdpZHRoOiA3NSU7IH1cbiAgLnhsYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAubGFyZ2UtMTAge1xuICAgIHdpZHRoOiA4My4zMzMzMyU7IH1cbiAgLnhsYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAubGFyZ2UtMTEge1xuICAgIHdpZHRoOiA5MS42NjY2NyU7IH1cbiAgLnhsYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAubGFyZ2UtMTIge1xuICAgIHdpZHRoOiAxMDAlOyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAueGxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC54bGFyZ2UtMSB7XG4gICAgd2lkdGg6IDguMzMzMzMlOyB9XG4gIC54bGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLnhsYXJnZS0yIHtcbiAgICB3aWR0aDogMTYuNjY2NjclOyB9XG4gIC54bGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLnhsYXJnZS0zIHtcbiAgICB3aWR0aDogMjUlOyB9XG4gIC54bGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLnhsYXJnZS00IHtcbiAgICB3aWR0aDogMzMuMzMzMzMlOyB9XG4gIC54bGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLnhsYXJnZS01IHtcbiAgICB3aWR0aDogNDEuNjY2NjclOyB9XG4gIC54bGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLnhsYXJnZS02IHtcbiAgICB3aWR0aDogNTAlOyB9XG4gIC54bGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLnhsYXJnZS03IHtcbiAgICB3aWR0aDogNTguMzMzMzMlOyB9XG4gIC54bGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLnhsYXJnZS04IHtcbiAgICB3aWR0aDogNjYuNjY2NjclOyB9XG4gIC54bGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLnhsYXJnZS05IHtcbiAgICB3aWR0aDogNzUlOyB9XG4gIC54bGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLnhsYXJnZS0xMCB7XG4gICAgd2lkdGg6IDgzLjMzMzMzJTsgfVxuICAueGxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC54bGFyZ2UtMTEge1xuICAgIHdpZHRoOiA5MS42NjY2NyU7IH1cbiAgLnhsYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAueGxhcmdlLTEyIHtcbiAgICB3aWR0aDogMTAwJTsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDkwZW0pIHtcbiAgLnhsYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAueHhsYXJnZS0xIHtcbiAgICB3aWR0aDogOC4zMzMzMyU7IH1cbiAgLnhsYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAueHhsYXJnZS0yIHtcbiAgICB3aWR0aDogMTYuNjY2NjclOyB9XG4gIC54bGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLnh4bGFyZ2UtMyB7XG4gICAgd2lkdGg6IDI1JTsgfVxuICAueGxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC54eGxhcmdlLTQge1xuICAgIHdpZHRoOiAzMy4zMzMzMyU7IH1cbiAgLnhsYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAueHhsYXJnZS01IHtcbiAgICB3aWR0aDogNDEuNjY2NjclOyB9XG4gIC54bGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLnh4bGFyZ2UtNiB7XG4gICAgd2lkdGg6IDUwJTsgfVxuICAueGxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC54eGxhcmdlLTcge1xuICAgIHdpZHRoOiA1OC4zMzMzMyU7IH1cbiAgLnhsYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAueHhsYXJnZS04IHtcbiAgICB3aWR0aDogNjYuNjY2NjclOyB9XG4gIC54bGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLnh4bGFyZ2UtOSB7XG4gICAgd2lkdGg6IDc1JTsgfVxuICAueGxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC54eGxhcmdlLTEwIHtcbiAgICB3aWR0aDogODMuMzMzMzMlOyB9XG4gIC54bGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLnh4bGFyZ2UtMTEge1xuICAgIHdpZHRoOiA5MS42NjY2NyU7IH1cbiAgLnhsYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAueHhsYXJnZS0xMiB7XG4gICAgd2lkdGg6IDEwMCU7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gIC54bGFyZ2UtcGFkZGluZy1jb2xsYXBzZSB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgIG1hcmdpbi1sZWZ0OiAwOyB9XG4gICAgLnhsYXJnZS1wYWRkaW5nLWNvbGxhcHNlID4gLmNlbGwge1xuICAgICAgcGFkZGluZy1yaWdodDogMDtcbiAgICAgIHBhZGRpbmctbGVmdDogMDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDkwZW0pIHtcbiAgLnh4bGFyZ2UtbWFyZ2luLWNvbGxhcHNlIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgbWFyZ2luLWxlZnQ6IDA7IH1cbiAgICAueHhsYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAuY2VsbCB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICBtYXJnaW4tbGVmdDogMDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDkwZW0pIHtcbiAgLnh4bGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLnNtYWxsLTEge1xuICAgIHdpZHRoOiA4LjMzMzMzJTsgfVxuICAueHhsYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAuc21hbGwtMiB7XG4gICAgd2lkdGg6IDE2LjY2NjY3JTsgfVxuICAueHhsYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAuc21hbGwtMyB7XG4gICAgd2lkdGg6IDI1JTsgfVxuICAueHhsYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAuc21hbGwtNCB7XG4gICAgd2lkdGg6IDMzLjMzMzMzJTsgfVxuICAueHhsYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAuc21hbGwtNSB7XG4gICAgd2lkdGg6IDQxLjY2NjY3JTsgfVxuICAueHhsYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAuc21hbGwtNiB7XG4gICAgd2lkdGg6IDUwJTsgfVxuICAueHhsYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAuc21hbGwtNyB7XG4gICAgd2lkdGg6IDU4LjMzMzMzJTsgfVxuICAueHhsYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAuc21hbGwtOCB7XG4gICAgd2lkdGg6IDY2LjY2NjY3JTsgfVxuICAueHhsYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAuc21hbGwtOSB7XG4gICAgd2lkdGg6IDc1JTsgfVxuICAueHhsYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAuc21hbGwtMTAge1xuICAgIHdpZHRoOiA4My4zMzMzMyU7IH1cbiAgLnh4bGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLnNtYWxsLTExIHtcbiAgICB3aWR0aDogOTEuNjY2NjclOyB9XG4gIC54eGxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5zbWFsbC0xMiB7XG4gICAgd2lkdGg6IDEwMCU7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5MGVtKSB7XG4gIC54eGxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tMSB7XG4gICAgd2lkdGg6IDguMzMzMzMlOyB9XG4gIC54eGxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tMiB7XG4gICAgd2lkdGg6IDE2LjY2NjY3JTsgfVxuICAueHhsYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAubWVkaXVtLTMge1xuICAgIHdpZHRoOiAyNSU7IH1cbiAgLnh4bGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLm1lZGl1bS00IHtcbiAgICB3aWR0aDogMzMuMzMzMzMlOyB9XG4gIC54eGxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tNSB7XG4gICAgd2lkdGg6IDQxLjY2NjY3JTsgfVxuICAueHhsYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAubWVkaXVtLTYge1xuICAgIHdpZHRoOiA1MCU7IH1cbiAgLnh4bGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLm1lZGl1bS03IHtcbiAgICB3aWR0aDogNTguMzMzMzMlOyB9XG4gIC54eGxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tOCB7XG4gICAgd2lkdGg6IDY2LjY2NjY3JTsgfVxuICAueHhsYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAubWVkaXVtLTkge1xuICAgIHdpZHRoOiA3NSU7IH1cbiAgLnh4bGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLm1lZGl1bS0xMCB7XG4gICAgd2lkdGg6IDgzLjMzMzMzJTsgfVxuICAueHhsYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAubWVkaXVtLTExIHtcbiAgICB3aWR0aDogOTEuNjY2NjclOyB9XG4gIC54eGxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tMTIge1xuICAgIHdpZHRoOiAxMDAlOyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTBlbSkge1xuICAueHhsYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAubGFyZ2UtMSB7XG4gICAgd2lkdGg6IDguMzMzMzMlOyB9XG4gIC54eGxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5sYXJnZS0yIHtcbiAgICB3aWR0aDogMTYuNjY2NjclOyB9XG4gIC54eGxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5sYXJnZS0zIHtcbiAgICB3aWR0aDogMjUlOyB9XG4gIC54eGxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5sYXJnZS00IHtcbiAgICB3aWR0aDogMzMuMzMzMzMlOyB9XG4gIC54eGxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5sYXJnZS01IHtcbiAgICB3aWR0aDogNDEuNjY2NjclOyB9XG4gIC54eGxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5sYXJnZS02IHtcbiAgICB3aWR0aDogNTAlOyB9XG4gIC54eGxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5sYXJnZS03IHtcbiAgICB3aWR0aDogNTguMzMzMzMlOyB9XG4gIC54eGxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5sYXJnZS04IHtcbiAgICB3aWR0aDogNjYuNjY2NjclOyB9XG4gIC54eGxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5sYXJnZS05IHtcbiAgICB3aWR0aDogNzUlOyB9XG4gIC54eGxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5sYXJnZS0xMCB7XG4gICAgd2lkdGg6IDgzLjMzMzMzJTsgfVxuICAueHhsYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAubGFyZ2UtMTEge1xuICAgIHdpZHRoOiA5MS42NjY2NyU7IH1cbiAgLnh4bGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLmxhcmdlLTEyIHtcbiAgICB3aWR0aDogMTAwJTsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDkwZW0pIHtcbiAgLnh4bGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLnhsYXJnZS0xIHtcbiAgICB3aWR0aDogOC4zMzMzMyU7IH1cbiAgLnh4bGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLnhsYXJnZS0yIHtcbiAgICB3aWR0aDogMTYuNjY2NjclOyB9XG4gIC54eGxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC54bGFyZ2UtMyB7XG4gICAgd2lkdGg6IDI1JTsgfVxuICAueHhsYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAueGxhcmdlLTQge1xuICAgIHdpZHRoOiAzMy4zMzMzMyU7IH1cbiAgLnh4bGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLnhsYXJnZS01IHtcbiAgICB3aWR0aDogNDEuNjY2NjclOyB9XG4gIC54eGxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC54bGFyZ2UtNiB7XG4gICAgd2lkdGg6IDUwJTsgfVxuICAueHhsYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAueGxhcmdlLTcge1xuICAgIHdpZHRoOiA1OC4zMzMzMyU7IH1cbiAgLnh4bGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLnhsYXJnZS04IHtcbiAgICB3aWR0aDogNjYuNjY2NjclOyB9XG4gIC54eGxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC54bGFyZ2UtOSB7XG4gICAgd2lkdGg6IDc1JTsgfVxuICAueHhsYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAueGxhcmdlLTEwIHtcbiAgICB3aWR0aDogODMuMzMzMzMlOyB9XG4gIC54eGxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC54bGFyZ2UtMTEge1xuICAgIHdpZHRoOiA5MS42NjY2NyU7IH1cbiAgLnh4bGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLnhsYXJnZS0xMiB7XG4gICAgd2lkdGg6IDEwMCU7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5MGVtKSB7XG4gIC54eGxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC54eGxhcmdlLTEge1xuICAgIHdpZHRoOiA4LjMzMzMzJTsgfVxuICAueHhsYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAueHhsYXJnZS0yIHtcbiAgICB3aWR0aDogMTYuNjY2NjclOyB9XG4gIC54eGxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC54eGxhcmdlLTMge1xuICAgIHdpZHRoOiAyNSU7IH1cbiAgLnh4bGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLnh4bGFyZ2UtNCB7XG4gICAgd2lkdGg6IDMzLjMzMzMzJTsgfVxuICAueHhsYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAueHhsYXJnZS01IHtcbiAgICB3aWR0aDogNDEuNjY2NjclOyB9XG4gIC54eGxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC54eGxhcmdlLTYge1xuICAgIHdpZHRoOiA1MCU7IH1cbiAgLnh4bGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLnh4bGFyZ2UtNyB7XG4gICAgd2lkdGg6IDU4LjMzMzMzJTsgfVxuICAueHhsYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAueHhsYXJnZS04IHtcbiAgICB3aWR0aDogNjYuNjY2NjclOyB9XG4gIC54eGxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC54eGxhcmdlLTkge1xuICAgIHdpZHRoOiA3NSU7IH1cbiAgLnh4bGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLnh4bGFyZ2UtMTAge1xuICAgIHdpZHRoOiA4My4zMzMzMyU7IH1cbiAgLnh4bGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLnh4bGFyZ2UtMTEge1xuICAgIHdpZHRoOiA5MS42NjY2NyU7IH1cbiAgLnh4bGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLnh4bGFyZ2UtMTIge1xuICAgIHdpZHRoOiAxMDAlOyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTBlbSkge1xuICAueHhsYXJnZS1wYWRkaW5nLWNvbGxhcHNlIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgbWFyZ2luLWxlZnQ6IDA7IH1cbiAgICAueHhsYXJnZS1wYWRkaW5nLWNvbGxhcHNlID4gLmNlbGwge1xuICAgICAgcGFkZGluZy1yaWdodDogMDtcbiAgICAgIHBhZGRpbmctbGVmdDogMDsgfSB9XG5cbi5zbWFsbC1vZmZzZXQtMCB7XG4gIG1hcmdpbi1sZWZ0OiAwJTsgfVxuXG4uZ3JpZC1tYXJnaW4teCA+IC5zbWFsbC1vZmZzZXQtMCB7XG4gIG1hcmdpbi1sZWZ0OiBjYWxjKDAlICsgMC41NjI1cmVtKTsgfVxuXG4uc21hbGwtb2Zmc2V0LTEge1xuICBtYXJnaW4tbGVmdDogOC4zMzMzMyU7IH1cblxuLmdyaWQtbWFyZ2luLXggPiAuc21hbGwtb2Zmc2V0LTEge1xuICBtYXJnaW4tbGVmdDogY2FsYyg4LjMzMzMzJSArIDAuNTYyNXJlbSk7IH1cblxuLnNtYWxsLW9mZnNldC0yIHtcbiAgbWFyZ2luLWxlZnQ6IDE2LjY2NjY3JTsgfVxuXG4uZ3JpZC1tYXJnaW4teCA+IC5zbWFsbC1vZmZzZXQtMiB7XG4gIG1hcmdpbi1sZWZ0OiBjYWxjKDE2LjY2NjY3JSArIDAuNTYyNXJlbSk7IH1cblxuLnNtYWxsLW9mZnNldC0zIHtcbiAgbWFyZ2luLWxlZnQ6IDI1JTsgfVxuXG4uZ3JpZC1tYXJnaW4teCA+IC5zbWFsbC1vZmZzZXQtMyB7XG4gIG1hcmdpbi1sZWZ0OiBjYWxjKDI1JSArIDAuNTYyNXJlbSk7IH1cblxuLnNtYWxsLW9mZnNldC00IHtcbiAgbWFyZ2luLWxlZnQ6IDMzLjMzMzMzJTsgfVxuXG4uZ3JpZC1tYXJnaW4teCA+IC5zbWFsbC1vZmZzZXQtNCB7XG4gIG1hcmdpbi1sZWZ0OiBjYWxjKDMzLjMzMzMzJSArIDAuNTYyNXJlbSk7IH1cblxuLnNtYWxsLW9mZnNldC01IHtcbiAgbWFyZ2luLWxlZnQ6IDQxLjY2NjY3JTsgfVxuXG4uZ3JpZC1tYXJnaW4teCA+IC5zbWFsbC1vZmZzZXQtNSB7XG4gIG1hcmdpbi1sZWZ0OiBjYWxjKDQxLjY2NjY3JSArIDAuNTYyNXJlbSk7IH1cblxuLnNtYWxsLW9mZnNldC02IHtcbiAgbWFyZ2luLWxlZnQ6IDUwJTsgfVxuXG4uZ3JpZC1tYXJnaW4teCA+IC5zbWFsbC1vZmZzZXQtNiB7XG4gIG1hcmdpbi1sZWZ0OiBjYWxjKDUwJSArIDAuNTYyNXJlbSk7IH1cblxuLnNtYWxsLW9mZnNldC03IHtcbiAgbWFyZ2luLWxlZnQ6IDU4LjMzMzMzJTsgfVxuXG4uZ3JpZC1tYXJnaW4teCA+IC5zbWFsbC1vZmZzZXQtNyB7XG4gIG1hcmdpbi1sZWZ0OiBjYWxjKDU4LjMzMzMzJSArIDAuNTYyNXJlbSk7IH1cblxuLnNtYWxsLW9mZnNldC04IHtcbiAgbWFyZ2luLWxlZnQ6IDY2LjY2NjY3JTsgfVxuXG4uZ3JpZC1tYXJnaW4teCA+IC5zbWFsbC1vZmZzZXQtOCB7XG4gIG1hcmdpbi1sZWZ0OiBjYWxjKDY2LjY2NjY3JSArIDAuNTYyNXJlbSk7IH1cblxuLnNtYWxsLW9mZnNldC05IHtcbiAgbWFyZ2luLWxlZnQ6IDc1JTsgfVxuXG4uZ3JpZC1tYXJnaW4teCA+IC5zbWFsbC1vZmZzZXQtOSB7XG4gIG1hcmdpbi1sZWZ0OiBjYWxjKDc1JSArIDAuNTYyNXJlbSk7IH1cblxuLnNtYWxsLW9mZnNldC0xMCB7XG4gIG1hcmdpbi1sZWZ0OiA4My4zMzMzMyU7IH1cblxuLmdyaWQtbWFyZ2luLXggPiAuc21hbGwtb2Zmc2V0LTEwIHtcbiAgbWFyZ2luLWxlZnQ6IGNhbGMoODMuMzMzMzMlICsgMC41NjI1cmVtKTsgfVxuXG4uc21hbGwtb2Zmc2V0LTExIHtcbiAgbWFyZ2luLWxlZnQ6IDkxLjY2NjY3JTsgfVxuXG4uZ3JpZC1tYXJnaW4teCA+IC5zbWFsbC1vZmZzZXQtMTEge1xuICBtYXJnaW4tbGVmdDogY2FsYyg5MS42NjY2NyUgKyAwLjU2MjVyZW0pOyB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5tZWRpdW0tb2Zmc2V0LTAge1xuICAgIG1hcmdpbi1sZWZ0OiAwJTsgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5tZWRpdW0tb2Zmc2V0LTAge1xuICAgIG1hcmdpbi1sZWZ0OiBjYWxjKDAlICsgMC42MjVyZW0pOyB9XG4gIC5tZWRpdW0tb2Zmc2V0LTEge1xuICAgIG1hcmdpbi1sZWZ0OiA4LjMzMzMzJTsgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5tZWRpdW0tb2Zmc2V0LTEge1xuICAgIG1hcmdpbi1sZWZ0OiBjYWxjKDguMzMzMzMlICsgMC42MjVyZW0pOyB9XG4gIC5tZWRpdW0tb2Zmc2V0LTIge1xuICAgIG1hcmdpbi1sZWZ0OiAxNi42NjY2NyU7IH1cbiAgLmdyaWQtbWFyZ2luLXggPiAubWVkaXVtLW9mZnNldC0yIHtcbiAgICBtYXJnaW4tbGVmdDogY2FsYygxNi42NjY2NyUgKyAwLjYyNXJlbSk7IH1cbiAgLm1lZGl1bS1vZmZzZXQtMyB7XG4gICAgbWFyZ2luLWxlZnQ6IDI1JTsgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5tZWRpdW0tb2Zmc2V0LTMge1xuICAgIG1hcmdpbi1sZWZ0OiBjYWxjKDI1JSArIDAuNjI1cmVtKTsgfVxuICAubWVkaXVtLW9mZnNldC00IHtcbiAgICBtYXJnaW4tbGVmdDogMzMuMzMzMzMlOyB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLm1lZGl1bS1vZmZzZXQtNCB7XG4gICAgbWFyZ2luLWxlZnQ6IGNhbGMoMzMuMzMzMzMlICsgMC42MjVyZW0pOyB9XG4gIC5tZWRpdW0tb2Zmc2V0LTUge1xuICAgIG1hcmdpbi1sZWZ0OiA0MS42NjY2NyU7IH1cbiAgLmdyaWQtbWFyZ2luLXggPiAubWVkaXVtLW9mZnNldC01IHtcbiAgICBtYXJnaW4tbGVmdDogY2FsYyg0MS42NjY2NyUgKyAwLjYyNXJlbSk7IH1cbiAgLm1lZGl1bS1vZmZzZXQtNiB7XG4gICAgbWFyZ2luLWxlZnQ6IDUwJTsgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5tZWRpdW0tb2Zmc2V0LTYge1xuICAgIG1hcmdpbi1sZWZ0OiBjYWxjKDUwJSArIDAuNjI1cmVtKTsgfVxuICAubWVkaXVtLW9mZnNldC03IHtcbiAgICBtYXJnaW4tbGVmdDogNTguMzMzMzMlOyB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLm1lZGl1bS1vZmZzZXQtNyB7XG4gICAgbWFyZ2luLWxlZnQ6IGNhbGMoNTguMzMzMzMlICsgMC42MjVyZW0pOyB9XG4gIC5tZWRpdW0tb2Zmc2V0LTgge1xuICAgIG1hcmdpbi1sZWZ0OiA2Ni42NjY2NyU7IH1cbiAgLmdyaWQtbWFyZ2luLXggPiAubWVkaXVtLW9mZnNldC04IHtcbiAgICBtYXJnaW4tbGVmdDogY2FsYyg2Ni42NjY2NyUgKyAwLjYyNXJlbSk7IH1cbiAgLm1lZGl1bS1vZmZzZXQtOSB7XG4gICAgbWFyZ2luLWxlZnQ6IDc1JTsgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5tZWRpdW0tb2Zmc2V0LTkge1xuICAgIG1hcmdpbi1sZWZ0OiBjYWxjKDc1JSArIDAuNjI1cmVtKTsgfVxuICAubWVkaXVtLW9mZnNldC0xMCB7XG4gICAgbWFyZ2luLWxlZnQ6IDgzLjMzMzMzJTsgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5tZWRpdW0tb2Zmc2V0LTEwIHtcbiAgICBtYXJnaW4tbGVmdDogY2FsYyg4My4zMzMzMyUgKyAwLjYyNXJlbSk7IH1cbiAgLm1lZGl1bS1vZmZzZXQtMTEge1xuICAgIG1hcmdpbi1sZWZ0OiA5MS42NjY2NyU7IH1cbiAgLmdyaWQtbWFyZ2luLXggPiAubWVkaXVtLW9mZnNldC0xMSB7XG4gICAgbWFyZ2luLWxlZnQ6IGNhbGMoOTEuNjY2NjclICsgMC42MjVyZW0pOyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmxhcmdlLW9mZnNldC0wIHtcbiAgICBtYXJnaW4tbGVmdDogMCU7IH1cbiAgLmdyaWQtbWFyZ2luLXggPiAubGFyZ2Utb2Zmc2V0LTAge1xuICAgIG1hcmdpbi1sZWZ0OiBjYWxjKDAlICsgMC43NXJlbSk7IH1cbiAgLmxhcmdlLW9mZnNldC0xIHtcbiAgICBtYXJnaW4tbGVmdDogOC4zMzMzMyU7IH1cbiAgLmdyaWQtbWFyZ2luLXggPiAubGFyZ2Utb2Zmc2V0LTEge1xuICAgIG1hcmdpbi1sZWZ0OiBjYWxjKDguMzMzMzMlICsgMC43NXJlbSk7IH1cbiAgLmxhcmdlLW9mZnNldC0yIHtcbiAgICBtYXJnaW4tbGVmdDogMTYuNjY2NjclOyB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLmxhcmdlLW9mZnNldC0yIHtcbiAgICBtYXJnaW4tbGVmdDogY2FsYygxNi42NjY2NyUgKyAwLjc1cmVtKTsgfVxuICAubGFyZ2Utb2Zmc2V0LTMge1xuICAgIG1hcmdpbi1sZWZ0OiAyNSU7IH1cbiAgLmdyaWQtbWFyZ2luLXggPiAubGFyZ2Utb2Zmc2V0LTMge1xuICAgIG1hcmdpbi1sZWZ0OiBjYWxjKDI1JSArIDAuNzVyZW0pOyB9XG4gIC5sYXJnZS1vZmZzZXQtNCB7XG4gICAgbWFyZ2luLWxlZnQ6IDMzLjMzMzMzJTsgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5sYXJnZS1vZmZzZXQtNCB7XG4gICAgbWFyZ2luLWxlZnQ6IGNhbGMoMzMuMzMzMzMlICsgMC43NXJlbSk7IH1cbiAgLmxhcmdlLW9mZnNldC01IHtcbiAgICBtYXJnaW4tbGVmdDogNDEuNjY2NjclOyB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLmxhcmdlLW9mZnNldC01IHtcbiAgICBtYXJnaW4tbGVmdDogY2FsYyg0MS42NjY2NyUgKyAwLjc1cmVtKTsgfVxuICAubGFyZ2Utb2Zmc2V0LTYge1xuICAgIG1hcmdpbi1sZWZ0OiA1MCU7IH1cbiAgLmdyaWQtbWFyZ2luLXggPiAubGFyZ2Utb2Zmc2V0LTYge1xuICAgIG1hcmdpbi1sZWZ0OiBjYWxjKDUwJSArIDAuNzVyZW0pOyB9XG4gIC5sYXJnZS1vZmZzZXQtNyB7XG4gICAgbWFyZ2luLWxlZnQ6IDU4LjMzMzMzJTsgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5sYXJnZS1vZmZzZXQtNyB7XG4gICAgbWFyZ2luLWxlZnQ6IGNhbGMoNTguMzMzMzMlICsgMC43NXJlbSk7IH1cbiAgLmxhcmdlLW9mZnNldC04IHtcbiAgICBtYXJnaW4tbGVmdDogNjYuNjY2NjclOyB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLmxhcmdlLW9mZnNldC04IHtcbiAgICBtYXJnaW4tbGVmdDogY2FsYyg2Ni42NjY2NyUgKyAwLjc1cmVtKTsgfVxuICAubGFyZ2Utb2Zmc2V0LTkge1xuICAgIG1hcmdpbi1sZWZ0OiA3NSU7IH1cbiAgLmdyaWQtbWFyZ2luLXggPiAubGFyZ2Utb2Zmc2V0LTkge1xuICAgIG1hcmdpbi1sZWZ0OiBjYWxjKDc1JSArIDAuNzVyZW0pOyB9XG4gIC5sYXJnZS1vZmZzZXQtMTAge1xuICAgIG1hcmdpbi1sZWZ0OiA4My4zMzMzMyU7IH1cbiAgLmdyaWQtbWFyZ2luLXggPiAubGFyZ2Utb2Zmc2V0LTEwIHtcbiAgICBtYXJnaW4tbGVmdDogY2FsYyg4My4zMzMzMyUgKyAwLjc1cmVtKTsgfVxuICAubGFyZ2Utb2Zmc2V0LTExIHtcbiAgICBtYXJnaW4tbGVmdDogOTEuNjY2NjclOyB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLmxhcmdlLW9mZnNldC0xMSB7XG4gICAgbWFyZ2luLWxlZnQ6IGNhbGMoOTEuNjY2NjclICsgMC43NXJlbSk7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gIC54bGFyZ2Utb2Zmc2V0LTAge1xuICAgIG1hcmdpbi1sZWZ0OiAwJTsgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC54bGFyZ2Utb2Zmc2V0LTAge1xuICAgIG1hcmdpbi1sZWZ0OiBjYWxjKDAlICsgMC43NXJlbSk7IH1cbiAgLnhsYXJnZS1vZmZzZXQtMSB7XG4gICAgbWFyZ2luLWxlZnQ6IDguMzMzMzMlOyB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLnhsYXJnZS1vZmZzZXQtMSB7XG4gICAgbWFyZ2luLWxlZnQ6IGNhbGMoOC4zMzMzMyUgKyAwLjc1cmVtKTsgfVxuICAueGxhcmdlLW9mZnNldC0yIHtcbiAgICBtYXJnaW4tbGVmdDogMTYuNjY2NjclOyB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLnhsYXJnZS1vZmZzZXQtMiB7XG4gICAgbWFyZ2luLWxlZnQ6IGNhbGMoMTYuNjY2NjclICsgMC43NXJlbSk7IH1cbiAgLnhsYXJnZS1vZmZzZXQtMyB7XG4gICAgbWFyZ2luLWxlZnQ6IDI1JTsgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC54bGFyZ2Utb2Zmc2V0LTMge1xuICAgIG1hcmdpbi1sZWZ0OiBjYWxjKDI1JSArIDAuNzVyZW0pOyB9XG4gIC54bGFyZ2Utb2Zmc2V0LTQge1xuICAgIG1hcmdpbi1sZWZ0OiAzMy4zMzMzMyU7IH1cbiAgLmdyaWQtbWFyZ2luLXggPiAueGxhcmdlLW9mZnNldC00IHtcbiAgICBtYXJnaW4tbGVmdDogY2FsYygzMy4zMzMzMyUgKyAwLjc1cmVtKTsgfVxuICAueGxhcmdlLW9mZnNldC01IHtcbiAgICBtYXJnaW4tbGVmdDogNDEuNjY2NjclOyB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLnhsYXJnZS1vZmZzZXQtNSB7XG4gICAgbWFyZ2luLWxlZnQ6IGNhbGMoNDEuNjY2NjclICsgMC43NXJlbSk7IH1cbiAgLnhsYXJnZS1vZmZzZXQtNiB7XG4gICAgbWFyZ2luLWxlZnQ6IDUwJTsgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC54bGFyZ2Utb2Zmc2V0LTYge1xuICAgIG1hcmdpbi1sZWZ0OiBjYWxjKDUwJSArIDAuNzVyZW0pOyB9XG4gIC54bGFyZ2Utb2Zmc2V0LTcge1xuICAgIG1hcmdpbi1sZWZ0OiA1OC4zMzMzMyU7IH1cbiAgLmdyaWQtbWFyZ2luLXggPiAueGxhcmdlLW9mZnNldC03IHtcbiAgICBtYXJnaW4tbGVmdDogY2FsYyg1OC4zMzMzMyUgKyAwLjc1cmVtKTsgfVxuICAueGxhcmdlLW9mZnNldC04IHtcbiAgICBtYXJnaW4tbGVmdDogNjYuNjY2NjclOyB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLnhsYXJnZS1vZmZzZXQtOCB7XG4gICAgbWFyZ2luLWxlZnQ6IGNhbGMoNjYuNjY2NjclICsgMC43NXJlbSk7IH1cbiAgLnhsYXJnZS1vZmZzZXQtOSB7XG4gICAgbWFyZ2luLWxlZnQ6IDc1JTsgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC54bGFyZ2Utb2Zmc2V0LTkge1xuICAgIG1hcmdpbi1sZWZ0OiBjYWxjKDc1JSArIDAuNzVyZW0pOyB9XG4gIC54bGFyZ2Utb2Zmc2V0LTEwIHtcbiAgICBtYXJnaW4tbGVmdDogODMuMzMzMzMlOyB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLnhsYXJnZS1vZmZzZXQtMTAge1xuICAgIG1hcmdpbi1sZWZ0OiBjYWxjKDgzLjMzMzMzJSArIDAuNzVyZW0pOyB9XG4gIC54bGFyZ2Utb2Zmc2V0LTExIHtcbiAgICBtYXJnaW4tbGVmdDogOTEuNjY2NjclOyB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLnhsYXJnZS1vZmZzZXQtMTEge1xuICAgIG1hcmdpbi1sZWZ0OiBjYWxjKDkxLjY2NjY3JSArIDAuNzVyZW0pOyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTBlbSkge1xuICAueHhsYXJnZS1vZmZzZXQtMCB7XG4gICAgbWFyZ2luLWxlZnQ6IDAlOyB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLnh4bGFyZ2Utb2Zmc2V0LTAge1xuICAgIG1hcmdpbi1sZWZ0OiBjYWxjKDAlICsgMC43NXJlbSk7IH1cbiAgLnh4bGFyZ2Utb2Zmc2V0LTEge1xuICAgIG1hcmdpbi1sZWZ0OiA4LjMzMzMzJTsgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC54eGxhcmdlLW9mZnNldC0xIHtcbiAgICBtYXJnaW4tbGVmdDogY2FsYyg4LjMzMzMzJSArIDAuNzVyZW0pOyB9XG4gIC54eGxhcmdlLW9mZnNldC0yIHtcbiAgICBtYXJnaW4tbGVmdDogMTYuNjY2NjclOyB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLnh4bGFyZ2Utb2Zmc2V0LTIge1xuICAgIG1hcmdpbi1sZWZ0OiBjYWxjKDE2LjY2NjY3JSArIDAuNzVyZW0pOyB9XG4gIC54eGxhcmdlLW9mZnNldC0zIHtcbiAgICBtYXJnaW4tbGVmdDogMjUlOyB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLnh4bGFyZ2Utb2Zmc2V0LTMge1xuICAgIG1hcmdpbi1sZWZ0OiBjYWxjKDI1JSArIDAuNzVyZW0pOyB9XG4gIC54eGxhcmdlLW9mZnNldC00IHtcbiAgICBtYXJnaW4tbGVmdDogMzMuMzMzMzMlOyB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLnh4bGFyZ2Utb2Zmc2V0LTQge1xuICAgIG1hcmdpbi1sZWZ0OiBjYWxjKDMzLjMzMzMzJSArIDAuNzVyZW0pOyB9XG4gIC54eGxhcmdlLW9mZnNldC01IHtcbiAgICBtYXJnaW4tbGVmdDogNDEuNjY2NjclOyB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLnh4bGFyZ2Utb2Zmc2V0LTUge1xuICAgIG1hcmdpbi1sZWZ0OiBjYWxjKDQxLjY2NjY3JSArIDAuNzVyZW0pOyB9XG4gIC54eGxhcmdlLW9mZnNldC02IHtcbiAgICBtYXJnaW4tbGVmdDogNTAlOyB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLnh4bGFyZ2Utb2Zmc2V0LTYge1xuICAgIG1hcmdpbi1sZWZ0OiBjYWxjKDUwJSArIDAuNzVyZW0pOyB9XG4gIC54eGxhcmdlLW9mZnNldC03IHtcbiAgICBtYXJnaW4tbGVmdDogNTguMzMzMzMlOyB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLnh4bGFyZ2Utb2Zmc2V0LTcge1xuICAgIG1hcmdpbi1sZWZ0OiBjYWxjKDU4LjMzMzMzJSArIDAuNzVyZW0pOyB9XG4gIC54eGxhcmdlLW9mZnNldC04IHtcbiAgICBtYXJnaW4tbGVmdDogNjYuNjY2NjclOyB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLnh4bGFyZ2Utb2Zmc2V0LTgge1xuICAgIG1hcmdpbi1sZWZ0OiBjYWxjKDY2LjY2NjY3JSArIDAuNzVyZW0pOyB9XG4gIC54eGxhcmdlLW9mZnNldC05IHtcbiAgICBtYXJnaW4tbGVmdDogNzUlOyB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLnh4bGFyZ2Utb2Zmc2V0LTkge1xuICAgIG1hcmdpbi1sZWZ0OiBjYWxjKDc1JSArIDAuNzVyZW0pOyB9XG4gIC54eGxhcmdlLW9mZnNldC0xMCB7XG4gICAgbWFyZ2luLWxlZnQ6IDgzLjMzMzMzJTsgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC54eGxhcmdlLW9mZnNldC0xMCB7XG4gICAgbWFyZ2luLWxlZnQ6IGNhbGMoODMuMzMzMzMlICsgMC43NXJlbSk7IH1cbiAgLnh4bGFyZ2Utb2Zmc2V0LTExIHtcbiAgICBtYXJnaW4tbGVmdDogOTEuNjY2NjclOyB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLnh4bGFyZ2Utb2Zmc2V0LTExIHtcbiAgICBtYXJnaW4tbGVmdDogY2FsYyg5MS42NjY2NyUgKyAwLjc1cmVtKTsgfSB9XG5cbi5ncmlkLXkge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWZsb3c6IGNvbHVtbiBub3dyYXA7IH1cbiAgLmdyaWQteSA+IC5jZWxsIHtcbiAgICB3aWR0aDogYXV0bzsgfVxuICAuZ3JpZC15ID4gLmF1dG8ge1xuICAgIGhlaWdodDogYXV0bzsgfVxuICAuZ3JpZC15ID4gLnNocmluayB7XG4gICAgaGVpZ2h0OiBhdXRvOyB9XG4gIC5ncmlkLXkgPiAuc21hbGwtc2hyaW5rLCAuZ3JpZC15ID4gLnNtYWxsLWZ1bGwsIC5ncmlkLXkgPiAuc21hbGwtMSwgLmdyaWQteSA+IC5zbWFsbC0yLCAuZ3JpZC15ID4gLnNtYWxsLTMsIC5ncmlkLXkgPiAuc21hbGwtNCwgLmdyaWQteSA+IC5zbWFsbC01LCAuZ3JpZC15ID4gLnNtYWxsLTYsIC5ncmlkLXkgPiAuc21hbGwtNywgLmdyaWQteSA+IC5zbWFsbC04LCAuZ3JpZC15ID4gLnNtYWxsLTksIC5ncmlkLXkgPiAuc21hbGwtMTAsIC5ncmlkLXkgPiAuc21hbGwtMTEsIC5ncmlkLXkgPiAuc21hbGwtMTIge1xuICAgIGZsZXgtYmFzaXM6IGF1dG87IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuZ3JpZC15ID4gLm1lZGl1bS1zaHJpbmssIC5ncmlkLXkgPiAubWVkaXVtLWZ1bGwsIC5ncmlkLXkgPiAubWVkaXVtLTEsIC5ncmlkLXkgPiAubWVkaXVtLTIsIC5ncmlkLXkgPiAubWVkaXVtLTMsIC5ncmlkLXkgPiAubWVkaXVtLTQsIC5ncmlkLXkgPiAubWVkaXVtLTUsIC5ncmlkLXkgPiAubWVkaXVtLTYsIC5ncmlkLXkgPiAubWVkaXVtLTcsIC5ncmlkLXkgPiAubWVkaXVtLTgsIC5ncmlkLXkgPiAubWVkaXVtLTksIC5ncmlkLXkgPiAubWVkaXVtLTEwLCAuZ3JpZC15ID4gLm1lZGl1bS0xMSwgLmdyaWQteSA+IC5tZWRpdW0tMTIge1xuICAgICAgZmxleC1iYXNpczogYXV0bzsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmdyaWQteSA+IC5sYXJnZS1zaHJpbmssIC5ncmlkLXkgPiAubGFyZ2UtZnVsbCwgLmdyaWQteSA+IC5sYXJnZS0xLCAuZ3JpZC15ID4gLmxhcmdlLTIsIC5ncmlkLXkgPiAubGFyZ2UtMywgLmdyaWQteSA+IC5sYXJnZS00LCAuZ3JpZC15ID4gLmxhcmdlLTUsIC5ncmlkLXkgPiAubGFyZ2UtNiwgLmdyaWQteSA+IC5sYXJnZS03LCAuZ3JpZC15ID4gLmxhcmdlLTgsIC5ncmlkLXkgPiAubGFyZ2UtOSwgLmdyaWQteSA+IC5sYXJnZS0xMCwgLmdyaWQteSA+IC5sYXJnZS0xMSwgLmdyaWQteSA+IC5sYXJnZS0xMiB7XG4gICAgICBmbGV4LWJhc2lzOiBhdXRvOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgIC5ncmlkLXkgPiAueGxhcmdlLXNocmluaywgLmdyaWQteSA+IC54bGFyZ2UtZnVsbCwgLmdyaWQteSA+IC54bGFyZ2UtMSwgLmdyaWQteSA+IC54bGFyZ2UtMiwgLmdyaWQteSA+IC54bGFyZ2UtMywgLmdyaWQteSA+IC54bGFyZ2UtNCwgLmdyaWQteSA+IC54bGFyZ2UtNSwgLmdyaWQteSA+IC54bGFyZ2UtNiwgLmdyaWQteSA+IC54bGFyZ2UtNywgLmdyaWQteSA+IC54bGFyZ2UtOCwgLmdyaWQteSA+IC54bGFyZ2UtOSwgLmdyaWQteSA+IC54bGFyZ2UtMTAsIC5ncmlkLXkgPiAueGxhcmdlLTExLCAuZ3JpZC15ID4gLnhsYXJnZS0xMiB7XG4gICAgICBmbGV4LWJhc2lzOiBhdXRvOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTBlbSkge1xuICAgIC5ncmlkLXkgPiAueHhsYXJnZS1zaHJpbmssIC5ncmlkLXkgPiAueHhsYXJnZS1mdWxsLCAuZ3JpZC15ID4gLnh4bGFyZ2UtMSwgLmdyaWQteSA+IC54eGxhcmdlLTIsIC5ncmlkLXkgPiAueHhsYXJnZS0zLCAuZ3JpZC15ID4gLnh4bGFyZ2UtNCwgLmdyaWQteSA+IC54eGxhcmdlLTUsIC5ncmlkLXkgPiAueHhsYXJnZS02LCAuZ3JpZC15ID4gLnh4bGFyZ2UtNywgLmdyaWQteSA+IC54eGxhcmdlLTgsIC5ncmlkLXkgPiAueHhsYXJnZS05LCAuZ3JpZC15ID4gLnh4bGFyZ2UtMTAsIC5ncmlkLXkgPiAueHhsYXJnZS0xMSwgLmdyaWQteSA+IC54eGxhcmdlLTEyIHtcbiAgICAgIGZsZXgtYmFzaXM6IGF1dG87IH0gfVxuICAuZ3JpZC15ID4gLnNtYWxsLTEge1xuICAgIGhlaWdodDogOC4zMzMzMyU7IH1cbiAgLmdyaWQteSA+IC5zbWFsbC0yIHtcbiAgICBoZWlnaHQ6IDE2LjY2NjY3JTsgfVxuICAuZ3JpZC15ID4gLnNtYWxsLTMge1xuICAgIGhlaWdodDogMjUlOyB9XG4gIC5ncmlkLXkgPiAuc21hbGwtNCB7XG4gICAgaGVpZ2h0OiAzMy4zMzMzMyU7IH1cbiAgLmdyaWQteSA+IC5zbWFsbC01IHtcbiAgICBoZWlnaHQ6IDQxLjY2NjY3JTsgfVxuICAuZ3JpZC15ID4gLnNtYWxsLTYge1xuICAgIGhlaWdodDogNTAlOyB9XG4gIC5ncmlkLXkgPiAuc21hbGwtNyB7XG4gICAgaGVpZ2h0OiA1OC4zMzMzMyU7IH1cbiAgLmdyaWQteSA+IC5zbWFsbC04IHtcbiAgICBoZWlnaHQ6IDY2LjY2NjY3JTsgfVxuICAuZ3JpZC15ID4gLnNtYWxsLTkge1xuICAgIGhlaWdodDogNzUlOyB9XG4gIC5ncmlkLXkgPiAuc21hbGwtMTAge1xuICAgIGhlaWdodDogODMuMzMzMzMlOyB9XG4gIC5ncmlkLXkgPiAuc21hbGwtMTEge1xuICAgIGhlaWdodDogOTEuNjY2NjclOyB9XG4gIC5ncmlkLXkgPiAuc21hbGwtMTIge1xuICAgIGhlaWdodDogMTAwJTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5ncmlkLXkgPiAubWVkaXVtLWF1dG8ge1xuICAgICAgZmxleDogMSAxIDBweDtcbiAgICAgIGhlaWdodDogYXV0bzsgfVxuICAgIC5ncmlkLXkgPiAubWVkaXVtLXNocmluayB7XG4gICAgICBoZWlnaHQ6IGF1dG87IH1cbiAgICAuZ3JpZC15ID4gLm1lZGl1bS0xIHtcbiAgICAgIGhlaWdodDogOC4zMzMzMyU7IH1cbiAgICAuZ3JpZC15ID4gLm1lZGl1bS0yIHtcbiAgICAgIGhlaWdodDogMTYuNjY2NjclOyB9XG4gICAgLmdyaWQteSA+IC5tZWRpdW0tMyB7XG4gICAgICBoZWlnaHQ6IDI1JTsgfVxuICAgIC5ncmlkLXkgPiAubWVkaXVtLTQge1xuICAgICAgaGVpZ2h0OiAzMy4zMzMzMyU7IH1cbiAgICAuZ3JpZC15ID4gLm1lZGl1bS01IHtcbiAgICAgIGhlaWdodDogNDEuNjY2NjclOyB9XG4gICAgLmdyaWQteSA+IC5tZWRpdW0tNiB7XG4gICAgICBoZWlnaHQ6IDUwJTsgfVxuICAgIC5ncmlkLXkgPiAubWVkaXVtLTcge1xuICAgICAgaGVpZ2h0OiA1OC4zMzMzMyU7IH1cbiAgICAuZ3JpZC15ID4gLm1lZGl1bS04IHtcbiAgICAgIGhlaWdodDogNjYuNjY2NjclOyB9XG4gICAgLmdyaWQteSA+IC5tZWRpdW0tOSB7XG4gICAgICBoZWlnaHQ6IDc1JTsgfVxuICAgIC5ncmlkLXkgPiAubWVkaXVtLTEwIHtcbiAgICAgIGhlaWdodDogODMuMzMzMzMlOyB9XG4gICAgLmdyaWQteSA+IC5tZWRpdW0tMTEge1xuICAgICAgaGVpZ2h0OiA5MS42NjY2NyU7IH1cbiAgICAuZ3JpZC15ID4gLm1lZGl1bS0xMiB7XG4gICAgICBoZWlnaHQ6IDEwMCU7IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5ncmlkLXkgPiAubGFyZ2UtYXV0byB7XG4gICAgICBmbGV4OiAxIDEgMHB4O1xuICAgICAgaGVpZ2h0OiBhdXRvOyB9XG4gICAgLmdyaWQteSA+IC5sYXJnZS1zaHJpbmsge1xuICAgICAgaGVpZ2h0OiBhdXRvOyB9XG4gICAgLmdyaWQteSA+IC5sYXJnZS0xIHtcbiAgICAgIGhlaWdodDogOC4zMzMzMyU7IH1cbiAgICAuZ3JpZC15ID4gLmxhcmdlLTIge1xuICAgICAgaGVpZ2h0OiAxNi42NjY2NyU7IH1cbiAgICAuZ3JpZC15ID4gLmxhcmdlLTMge1xuICAgICAgaGVpZ2h0OiAyNSU7IH1cbiAgICAuZ3JpZC15ID4gLmxhcmdlLTQge1xuICAgICAgaGVpZ2h0OiAzMy4zMzMzMyU7IH1cbiAgICAuZ3JpZC15ID4gLmxhcmdlLTUge1xuICAgICAgaGVpZ2h0OiA0MS42NjY2NyU7IH1cbiAgICAuZ3JpZC15ID4gLmxhcmdlLTYge1xuICAgICAgaGVpZ2h0OiA1MCU7IH1cbiAgICAuZ3JpZC15ID4gLmxhcmdlLTcge1xuICAgICAgaGVpZ2h0OiA1OC4zMzMzMyU7IH1cbiAgICAuZ3JpZC15ID4gLmxhcmdlLTgge1xuICAgICAgaGVpZ2h0OiA2Ni42NjY2NyU7IH1cbiAgICAuZ3JpZC15ID4gLmxhcmdlLTkge1xuICAgICAgaGVpZ2h0OiA3NSU7IH1cbiAgICAuZ3JpZC15ID4gLmxhcmdlLTEwIHtcbiAgICAgIGhlaWdodDogODMuMzMzMzMlOyB9XG4gICAgLmdyaWQteSA+IC5sYXJnZS0xMSB7XG4gICAgICBoZWlnaHQ6IDkxLjY2NjY3JTsgfVxuICAgIC5ncmlkLXkgPiAubGFyZ2UtMTIge1xuICAgICAgaGVpZ2h0OiAxMDAlOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgIC5ncmlkLXkgPiAueGxhcmdlLWF1dG8ge1xuICAgICAgZmxleDogMSAxIDBweDtcbiAgICAgIGhlaWdodDogYXV0bzsgfVxuICAgIC5ncmlkLXkgPiAueGxhcmdlLXNocmluayB7XG4gICAgICBoZWlnaHQ6IGF1dG87IH1cbiAgICAuZ3JpZC15ID4gLnhsYXJnZS0xIHtcbiAgICAgIGhlaWdodDogOC4zMzMzMyU7IH1cbiAgICAuZ3JpZC15ID4gLnhsYXJnZS0yIHtcbiAgICAgIGhlaWdodDogMTYuNjY2NjclOyB9XG4gICAgLmdyaWQteSA+IC54bGFyZ2UtMyB7XG4gICAgICBoZWlnaHQ6IDI1JTsgfVxuICAgIC5ncmlkLXkgPiAueGxhcmdlLTQge1xuICAgICAgaGVpZ2h0OiAzMy4zMzMzMyU7IH1cbiAgICAuZ3JpZC15ID4gLnhsYXJnZS01IHtcbiAgICAgIGhlaWdodDogNDEuNjY2NjclOyB9XG4gICAgLmdyaWQteSA+IC54bGFyZ2UtNiB7XG4gICAgICBoZWlnaHQ6IDUwJTsgfVxuICAgIC5ncmlkLXkgPiAueGxhcmdlLTcge1xuICAgICAgaGVpZ2h0OiA1OC4zMzMzMyU7IH1cbiAgICAuZ3JpZC15ID4gLnhsYXJnZS04IHtcbiAgICAgIGhlaWdodDogNjYuNjY2NjclOyB9XG4gICAgLmdyaWQteSA+IC54bGFyZ2UtOSB7XG4gICAgICBoZWlnaHQ6IDc1JTsgfVxuICAgIC5ncmlkLXkgPiAueGxhcmdlLTEwIHtcbiAgICAgIGhlaWdodDogODMuMzMzMzMlOyB9XG4gICAgLmdyaWQteSA+IC54bGFyZ2UtMTEge1xuICAgICAgaGVpZ2h0OiA5MS42NjY2NyU7IH1cbiAgICAuZ3JpZC15ID4gLnhsYXJnZS0xMiB7XG4gICAgICBoZWlnaHQ6IDEwMCU7IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5MGVtKSB7XG4gICAgLmdyaWQteSA+IC54eGxhcmdlLWF1dG8ge1xuICAgICAgZmxleDogMSAxIDBweDtcbiAgICAgIGhlaWdodDogYXV0bzsgfVxuICAgIC5ncmlkLXkgPiAueHhsYXJnZS1zaHJpbmsge1xuICAgICAgaGVpZ2h0OiBhdXRvOyB9XG4gICAgLmdyaWQteSA+IC54eGxhcmdlLTEge1xuICAgICAgaGVpZ2h0OiA4LjMzMzMzJTsgfVxuICAgIC5ncmlkLXkgPiAueHhsYXJnZS0yIHtcbiAgICAgIGhlaWdodDogMTYuNjY2NjclOyB9XG4gICAgLmdyaWQteSA+IC54eGxhcmdlLTMge1xuICAgICAgaGVpZ2h0OiAyNSU7IH1cbiAgICAuZ3JpZC15ID4gLnh4bGFyZ2UtNCB7XG4gICAgICBoZWlnaHQ6IDMzLjMzMzMzJTsgfVxuICAgIC5ncmlkLXkgPiAueHhsYXJnZS01IHtcbiAgICAgIGhlaWdodDogNDEuNjY2NjclOyB9XG4gICAgLmdyaWQteSA+IC54eGxhcmdlLTYge1xuICAgICAgaGVpZ2h0OiA1MCU7IH1cbiAgICAuZ3JpZC15ID4gLnh4bGFyZ2UtNyB7XG4gICAgICBoZWlnaHQ6IDU4LjMzMzMzJTsgfVxuICAgIC5ncmlkLXkgPiAueHhsYXJnZS04IHtcbiAgICAgIGhlaWdodDogNjYuNjY2NjclOyB9XG4gICAgLmdyaWQteSA+IC54eGxhcmdlLTkge1xuICAgICAgaGVpZ2h0OiA3NSU7IH1cbiAgICAuZ3JpZC15ID4gLnh4bGFyZ2UtMTAge1xuICAgICAgaGVpZ2h0OiA4My4zMzMzMyU7IH1cbiAgICAuZ3JpZC15ID4gLnh4bGFyZ2UtMTEge1xuICAgICAgaGVpZ2h0OiA5MS42NjY2NyU7IH1cbiAgICAuZ3JpZC15ID4gLnh4bGFyZ2UtMTIge1xuICAgICAgaGVpZ2h0OiAxMDAlOyB9IH1cblxuLmdyaWQtcGFkZGluZy15IC5ncmlkLXBhZGRpbmcteSB7XG4gIG1hcmdpbi10b3A6IC0wLjU2MjVyZW07XG4gIG1hcmdpbi1ib3R0b206IC0wLjU2MjVyZW07IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuZ3JpZC1wYWRkaW5nLXkgLmdyaWQtcGFkZGluZy15IHtcbiAgICAgIG1hcmdpbi10b3A6IC0wLjYyNXJlbTtcbiAgICAgIG1hcmdpbi1ib3R0b206IC0wLjYyNXJlbTsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmdyaWQtcGFkZGluZy15IC5ncmlkLXBhZGRpbmcteSB7XG4gICAgICBtYXJnaW4tdG9wOiAtMC43NXJlbTtcbiAgICAgIG1hcmdpbi1ib3R0b206IC0wLjc1cmVtOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgIC5ncmlkLXBhZGRpbmcteSAuZ3JpZC1wYWRkaW5nLXkge1xuICAgICAgbWFyZ2luLXRvcDogLTAuNzVyZW07XG4gICAgICBtYXJnaW4tYm90dG9tOiAtMC43NXJlbTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDkwZW0pIHtcbiAgICAuZ3JpZC1wYWRkaW5nLXkgLmdyaWQtcGFkZGluZy15IHtcbiAgICAgIG1hcmdpbi10b3A6IC0wLjc1cmVtO1xuICAgICAgbWFyZ2luLWJvdHRvbTogLTAuNzVyZW07IH0gfVxuXG4uZ3JpZC1wYWRkaW5nLXkgPiAuY2VsbCB7XG4gIHBhZGRpbmctdG9wOiAwLjU2MjVyZW07XG4gIHBhZGRpbmctYm90dG9tOiAwLjU2MjVyZW07IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuZ3JpZC1wYWRkaW5nLXkgPiAuY2VsbCB7XG4gICAgICBwYWRkaW5nLXRvcDogMC42MjVyZW07XG4gICAgICBwYWRkaW5nLWJvdHRvbTogMC42MjVyZW07IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5ncmlkLXBhZGRpbmcteSA+IC5jZWxsIHtcbiAgICAgIHBhZGRpbmctdG9wOiAwLjc1cmVtO1xuICAgICAgcGFkZGluZy1ib3R0b206IDAuNzVyZW07IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgLmdyaWQtcGFkZGluZy15ID4gLmNlbGwge1xuICAgICAgcGFkZGluZy10b3A6IDAuNzVyZW07XG4gICAgICBwYWRkaW5nLWJvdHRvbTogMC43NXJlbTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDkwZW0pIHtcbiAgICAuZ3JpZC1wYWRkaW5nLXkgPiAuY2VsbCB7XG4gICAgICBwYWRkaW5nLXRvcDogMC43NXJlbTtcbiAgICAgIHBhZGRpbmctYm90dG9tOiAwLjc1cmVtOyB9IH1cblxuLmdyaWQtbWFyZ2luLXkge1xuICBtYXJnaW4tdG9wOiAtMC41NjI1cmVtO1xuICBtYXJnaW4tYm90dG9tOiAtMC41NjI1cmVtOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLmdyaWQtbWFyZ2luLXkge1xuICAgICAgbWFyZ2luLXRvcDogLTAuNjI1cmVtO1xuICAgICAgbWFyZ2luLWJvdHRvbTogLTAuNjI1cmVtOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuZ3JpZC1tYXJnaW4teSB7XG4gICAgICBtYXJnaW4tdG9wOiAtMC43NXJlbTtcbiAgICAgIG1hcmdpbi1ib3R0b206IC0wLjc1cmVtOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgIC5ncmlkLW1hcmdpbi15IHtcbiAgICAgIG1hcmdpbi10b3A6IC0wLjc1cmVtO1xuICAgICAgbWFyZ2luLWJvdHRvbTogLTAuNzVyZW07IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5MGVtKSB7XG4gICAgLmdyaWQtbWFyZ2luLXkge1xuICAgICAgbWFyZ2luLXRvcDogLTAuNzVyZW07XG4gICAgICBtYXJnaW4tYm90dG9tOiAtMC43NXJlbTsgfSB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLmNlbGwge1xuICAgIGhlaWdodDogY2FsYygxMDAlIC0gMS4xMjVyZW0pO1xuICAgIG1hcmdpbi10b3A6IDAuNTYyNXJlbTtcbiAgICBtYXJnaW4tYm90dG9tOiAwLjU2MjVyZW07IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5jZWxsIHtcbiAgICAgIGhlaWdodDogY2FsYygxMDAlIC0gMS4yNXJlbSk7XG4gICAgICBtYXJnaW4tdG9wOiAwLjYyNXJlbTtcbiAgICAgIG1hcmdpbi1ib3R0b206IDAuNjI1cmVtOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5jZWxsIHtcbiAgICAgIGhlaWdodDogY2FsYygxMDAlIC0gMS41cmVtKTtcbiAgICAgIG1hcmdpbi10b3A6IDAuNzVyZW07XG4gICAgICBtYXJnaW4tYm90dG9tOiAwLjc1cmVtOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgIC5ncmlkLW1hcmdpbi15ID4gLmNlbGwge1xuICAgICAgaGVpZ2h0OiBjYWxjKDEwMCUgLSAxLjVyZW0pO1xuICAgICAgbWFyZ2luLXRvcDogMC43NXJlbTtcbiAgICAgIG1hcmdpbi1ib3R0b206IDAuNzVyZW07IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5MGVtKSB7XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAuY2VsbCB7XG4gICAgICBoZWlnaHQ6IGNhbGMoMTAwJSAtIDEuNXJlbSk7XG4gICAgICBtYXJnaW4tdG9wOiAwLjc1cmVtO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMC43NXJlbTsgfSB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLmF1dG8ge1xuICAgIGhlaWdodDogYXV0bzsgfVxuICAuZ3JpZC1tYXJnaW4teSA+IC5zaHJpbmsge1xuICAgIGhlaWdodDogYXV0bzsgfVxuICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC0xIHtcbiAgICBoZWlnaHQ6IGNhbGMoOC4zMzMzMyUgLSAxLjEyNXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtMiB7XG4gICAgaGVpZ2h0OiBjYWxjKDE2LjY2NjY3JSAtIDEuMTI1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC0zIHtcbiAgICBoZWlnaHQ6IGNhbGMoMjUlIC0gMS4xMjVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTQge1xuICAgIGhlaWdodDogY2FsYygzMy4zMzMzMyUgLSAxLjEyNXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtNSB7XG4gICAgaGVpZ2h0OiBjYWxjKDQxLjY2NjY3JSAtIDEuMTI1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC02IHtcbiAgICBoZWlnaHQ6IGNhbGMoNTAlIC0gMS4xMjVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTcge1xuICAgIGhlaWdodDogY2FsYyg1OC4zMzMzMyUgLSAxLjEyNXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtOCB7XG4gICAgaGVpZ2h0OiBjYWxjKDY2LjY2NjY3JSAtIDEuMTI1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC05IHtcbiAgICBoZWlnaHQ6IGNhbGMoNzUlIC0gMS4xMjVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTEwIHtcbiAgICBoZWlnaHQ6IGNhbGMoODMuMzMzMzMlIC0gMS4xMjVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTExIHtcbiAgICBoZWlnaHQ6IGNhbGMoOTEuNjY2NjclIC0gMS4xMjVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTEyIHtcbiAgICBoZWlnaHQ6IGNhbGMoMTAwJSAtIDEuMTI1cmVtKTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5ncmlkLW1hcmdpbi15ID4gLmF1dG8ge1xuICAgICAgaGVpZ2h0OiBhdXRvOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAuc2hyaW5rIHtcbiAgICAgIGhlaWdodDogYXV0bzsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTEge1xuICAgICAgaGVpZ2h0OiBjYWxjKDguMzMzMzMlIC0gMS4yNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC0yIHtcbiAgICAgIGhlaWdodDogY2FsYygxNi42NjY2NyUgLSAxLjI1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTMge1xuICAgICAgaGVpZ2h0OiBjYWxjKDI1JSAtIDEuMjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtNCB7XG4gICAgICBoZWlnaHQ6IGNhbGMoMzMuMzMzMzMlIC0gMS4yNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC01IHtcbiAgICAgIGhlaWdodDogY2FsYyg0MS42NjY2NyUgLSAxLjI1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTYge1xuICAgICAgaGVpZ2h0OiBjYWxjKDUwJSAtIDEuMjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtNyB7XG4gICAgICBoZWlnaHQ6IGNhbGMoNTguMzMzMzMlIC0gMS4yNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC04IHtcbiAgICAgIGhlaWdodDogY2FsYyg2Ni42NjY2NyUgLSAxLjI1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTkge1xuICAgICAgaGVpZ2h0OiBjYWxjKDc1JSAtIDEuMjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtMTAge1xuICAgICAgaGVpZ2h0OiBjYWxjKDgzLjMzMzMzJSAtIDEuMjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtMTEge1xuICAgICAgaGVpZ2h0OiBjYWxjKDkxLjY2NjY3JSAtIDEuMjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtMTIge1xuICAgICAgaGVpZ2h0OiBjYWxjKDEwMCUgLSAxLjI1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLm1lZGl1bS1hdXRvIHtcbiAgICAgIGhlaWdodDogYXV0bzsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLm1lZGl1bS1zaHJpbmsge1xuICAgICAgaGVpZ2h0OiBhdXRvOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubWVkaXVtLTEge1xuICAgICAgaGVpZ2h0OiBjYWxjKDguMzMzMzMlIC0gMS4yNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5tZWRpdW0tMiB7XG4gICAgICBoZWlnaHQ6IGNhbGMoMTYuNjY2NjclIC0gMS4yNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5tZWRpdW0tMyB7XG4gICAgICBoZWlnaHQ6IGNhbGMoMjUlIC0gMS4yNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5tZWRpdW0tNCB7XG4gICAgICBoZWlnaHQ6IGNhbGMoMzMuMzMzMzMlIC0gMS4yNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5tZWRpdW0tNSB7XG4gICAgICBoZWlnaHQ6IGNhbGMoNDEuNjY2NjclIC0gMS4yNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5tZWRpdW0tNiB7XG4gICAgICBoZWlnaHQ6IGNhbGMoNTAlIC0gMS4yNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5tZWRpdW0tNyB7XG4gICAgICBoZWlnaHQ6IGNhbGMoNTguMzMzMzMlIC0gMS4yNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5tZWRpdW0tOCB7XG4gICAgICBoZWlnaHQ6IGNhbGMoNjYuNjY2NjclIC0gMS4yNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5tZWRpdW0tOSB7XG4gICAgICBoZWlnaHQ6IGNhbGMoNzUlIC0gMS4yNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5tZWRpdW0tMTAge1xuICAgICAgaGVpZ2h0OiBjYWxjKDgzLjMzMzMzJSAtIDEuMjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubWVkaXVtLTExIHtcbiAgICAgIGhlaWdodDogY2FsYyg5MS42NjY2NyUgLSAxLjI1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLm1lZGl1bS0xMiB7XG4gICAgICBoZWlnaHQ6IGNhbGMoMTAwJSAtIDEuMjVyZW0pOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5hdXRvIHtcbiAgICAgIGhlaWdodDogYXV0bzsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnNocmluayB7XG4gICAgICBoZWlnaHQ6IGF1dG87IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC0xIHtcbiAgICAgIGhlaWdodDogY2FsYyg4LjMzMzMzJSAtIDEuNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC0yIHtcbiAgICAgIGhlaWdodDogY2FsYygxNi42NjY2NyUgLSAxLjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtMyB7XG4gICAgICBoZWlnaHQ6IGNhbGMoMjUlIC0gMS41cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTQge1xuICAgICAgaGVpZ2h0OiBjYWxjKDMzLjMzMzMzJSAtIDEuNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC01IHtcbiAgICAgIGhlaWdodDogY2FsYyg0MS42NjY2NyUgLSAxLjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtNiB7XG4gICAgICBoZWlnaHQ6IGNhbGMoNTAlIC0gMS41cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTcge1xuICAgICAgaGVpZ2h0OiBjYWxjKDU4LjMzMzMzJSAtIDEuNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC04IHtcbiAgICAgIGhlaWdodDogY2FsYyg2Ni42NjY2NyUgLSAxLjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtOSB7XG4gICAgICBoZWlnaHQ6IGNhbGMoNzUlIC0gMS41cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTEwIHtcbiAgICAgIGhlaWdodDogY2FsYyg4My4zMzMzMyUgLSAxLjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtMTEge1xuICAgICAgaGVpZ2h0OiBjYWxjKDkxLjY2NjY3JSAtIDEuNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC0xMiB7XG4gICAgICBoZWlnaHQ6IGNhbGMoMTAwJSAtIDEuNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5tZWRpdW0tYXV0byB7XG4gICAgICBoZWlnaHQ6IGF1dG87IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5tZWRpdW0tc2hyaW5rIHtcbiAgICAgIGhlaWdodDogYXV0bzsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLm1lZGl1bS0xIHtcbiAgICAgIGhlaWdodDogY2FsYyg4LjMzMzMzJSAtIDEuNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5tZWRpdW0tMiB7XG4gICAgICBoZWlnaHQ6IGNhbGMoMTYuNjY2NjclIC0gMS41cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLm1lZGl1bS0zIHtcbiAgICAgIGhlaWdodDogY2FsYygyNSUgLSAxLjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubWVkaXVtLTQge1xuICAgICAgaGVpZ2h0OiBjYWxjKDMzLjMzMzMzJSAtIDEuNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5tZWRpdW0tNSB7XG4gICAgICBoZWlnaHQ6IGNhbGMoNDEuNjY2NjclIC0gMS41cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLm1lZGl1bS02IHtcbiAgICAgIGhlaWdodDogY2FsYyg1MCUgLSAxLjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubWVkaXVtLTcge1xuICAgICAgaGVpZ2h0OiBjYWxjKDU4LjMzMzMzJSAtIDEuNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5tZWRpdW0tOCB7XG4gICAgICBoZWlnaHQ6IGNhbGMoNjYuNjY2NjclIC0gMS41cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLm1lZGl1bS05IHtcbiAgICAgIGhlaWdodDogY2FsYyg3NSUgLSAxLjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubWVkaXVtLTEwIHtcbiAgICAgIGhlaWdodDogY2FsYyg4My4zMzMzMyUgLSAxLjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubWVkaXVtLTExIHtcbiAgICAgIGhlaWdodDogY2FsYyg5MS42NjY2NyUgLSAxLjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubWVkaXVtLTEyIHtcbiAgICAgIGhlaWdodDogY2FsYygxMDAlIC0gMS41cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLmxhcmdlLWF1dG8ge1xuICAgICAgaGVpZ2h0OiBhdXRvOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubGFyZ2Utc2hyaW5rIHtcbiAgICAgIGhlaWdodDogYXV0bzsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLmxhcmdlLTEge1xuICAgICAgaGVpZ2h0OiBjYWxjKDguMzMzMzMlIC0gMS41cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLmxhcmdlLTIge1xuICAgICAgaGVpZ2h0OiBjYWxjKDE2LjY2NjY3JSAtIDEuNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5sYXJnZS0zIHtcbiAgICAgIGhlaWdodDogY2FsYygyNSUgLSAxLjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubGFyZ2UtNCB7XG4gICAgICBoZWlnaHQ6IGNhbGMoMzMuMzMzMzMlIC0gMS41cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLmxhcmdlLTUge1xuICAgICAgaGVpZ2h0OiBjYWxjKDQxLjY2NjY3JSAtIDEuNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5sYXJnZS02IHtcbiAgICAgIGhlaWdodDogY2FsYyg1MCUgLSAxLjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubGFyZ2UtNyB7XG4gICAgICBoZWlnaHQ6IGNhbGMoNTguMzMzMzMlIC0gMS41cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLmxhcmdlLTgge1xuICAgICAgaGVpZ2h0OiBjYWxjKDY2LjY2NjY3JSAtIDEuNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5sYXJnZS05IHtcbiAgICAgIGhlaWdodDogY2FsYyg3NSUgLSAxLjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubGFyZ2UtMTAge1xuICAgICAgaGVpZ2h0OiBjYWxjKDgzLjMzMzMzJSAtIDEuNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5sYXJnZS0xMSB7XG4gICAgICBoZWlnaHQ6IGNhbGMoOTEuNjY2NjclIC0gMS41cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLmxhcmdlLTEyIHtcbiAgICAgIGhlaWdodDogY2FsYygxMDAlIC0gMS41cmVtKTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5hdXRvIHtcbiAgICAgIGhlaWdodDogYXV0bzsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnNocmluayB7XG4gICAgICBoZWlnaHQ6IGF1dG87IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC0xIHtcbiAgICAgIGhlaWdodDogY2FsYyg4LjMzMzMzJSAtIDEuNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC0yIHtcbiAgICAgIGhlaWdodDogY2FsYygxNi42NjY2NyUgLSAxLjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtMyB7XG4gICAgICBoZWlnaHQ6IGNhbGMoMjUlIC0gMS41cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTQge1xuICAgICAgaGVpZ2h0OiBjYWxjKDMzLjMzMzMzJSAtIDEuNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC01IHtcbiAgICAgIGhlaWdodDogY2FsYyg0MS42NjY2NyUgLSAxLjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtNiB7XG4gICAgICBoZWlnaHQ6IGNhbGMoNTAlIC0gMS41cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTcge1xuICAgICAgaGVpZ2h0OiBjYWxjKDU4LjMzMzMzJSAtIDEuNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC04IHtcbiAgICAgIGhlaWdodDogY2FsYyg2Ni42NjY2NyUgLSAxLjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtOSB7XG4gICAgICBoZWlnaHQ6IGNhbGMoNzUlIC0gMS41cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTEwIHtcbiAgICAgIGhlaWdodDogY2FsYyg4My4zMzMzMyUgLSAxLjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtMTEge1xuICAgICAgaGVpZ2h0OiBjYWxjKDkxLjY2NjY3JSAtIDEuNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC0xMiB7XG4gICAgICBoZWlnaHQ6IGNhbGMoMTAwJSAtIDEuNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5tZWRpdW0tYXV0byB7XG4gICAgICBoZWlnaHQ6IGF1dG87IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5tZWRpdW0tc2hyaW5rIHtcbiAgICAgIGhlaWdodDogYXV0bzsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLm1lZGl1bS0xIHtcbiAgICAgIGhlaWdodDogY2FsYyg4LjMzMzMzJSAtIDEuNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5tZWRpdW0tMiB7XG4gICAgICBoZWlnaHQ6IGNhbGMoMTYuNjY2NjclIC0gMS41cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLm1lZGl1bS0zIHtcbiAgICAgIGhlaWdodDogY2FsYygyNSUgLSAxLjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubWVkaXVtLTQge1xuICAgICAgaGVpZ2h0OiBjYWxjKDMzLjMzMzMzJSAtIDEuNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5tZWRpdW0tNSB7XG4gICAgICBoZWlnaHQ6IGNhbGMoNDEuNjY2NjclIC0gMS41cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLm1lZGl1bS02IHtcbiAgICAgIGhlaWdodDogY2FsYyg1MCUgLSAxLjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubWVkaXVtLTcge1xuICAgICAgaGVpZ2h0OiBjYWxjKDU4LjMzMzMzJSAtIDEuNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5tZWRpdW0tOCB7XG4gICAgICBoZWlnaHQ6IGNhbGMoNjYuNjY2NjclIC0gMS41cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLm1lZGl1bS05IHtcbiAgICAgIGhlaWdodDogY2FsYyg3NSUgLSAxLjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubWVkaXVtLTEwIHtcbiAgICAgIGhlaWdodDogY2FsYyg4My4zMzMzMyUgLSAxLjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubWVkaXVtLTExIHtcbiAgICAgIGhlaWdodDogY2FsYyg5MS42NjY2NyUgLSAxLjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubWVkaXVtLTEyIHtcbiAgICAgIGhlaWdodDogY2FsYygxMDAlIC0gMS41cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLmxhcmdlLWF1dG8ge1xuICAgICAgaGVpZ2h0OiBhdXRvOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubGFyZ2Utc2hyaW5rIHtcbiAgICAgIGhlaWdodDogYXV0bzsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLmxhcmdlLTEge1xuICAgICAgaGVpZ2h0OiBjYWxjKDguMzMzMzMlIC0gMS41cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLmxhcmdlLTIge1xuICAgICAgaGVpZ2h0OiBjYWxjKDE2LjY2NjY3JSAtIDEuNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5sYXJnZS0zIHtcbiAgICAgIGhlaWdodDogY2FsYygyNSUgLSAxLjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubGFyZ2UtNCB7XG4gICAgICBoZWlnaHQ6IGNhbGMoMzMuMzMzMzMlIC0gMS41cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLmxhcmdlLTUge1xuICAgICAgaGVpZ2h0OiBjYWxjKDQxLjY2NjY3JSAtIDEuNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5sYXJnZS02IHtcbiAgICAgIGhlaWdodDogY2FsYyg1MCUgLSAxLjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubGFyZ2UtNyB7XG4gICAgICBoZWlnaHQ6IGNhbGMoNTguMzMzMzMlIC0gMS41cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLmxhcmdlLTgge1xuICAgICAgaGVpZ2h0OiBjYWxjKDY2LjY2NjY3JSAtIDEuNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5sYXJnZS05IHtcbiAgICAgIGhlaWdodDogY2FsYyg3NSUgLSAxLjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubGFyZ2UtMTAge1xuICAgICAgaGVpZ2h0OiBjYWxjKDgzLjMzMzMzJSAtIDEuNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5sYXJnZS0xMSB7XG4gICAgICBoZWlnaHQ6IGNhbGMoOTEuNjY2NjclIC0gMS41cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLmxhcmdlLTEyIHtcbiAgICAgIGhlaWdodDogY2FsYygxMDAlIC0gMS41cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnhsYXJnZS1hdXRvIHtcbiAgICAgIGhlaWdodDogYXV0bzsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnhsYXJnZS1zaHJpbmsge1xuICAgICAgaGVpZ2h0OiBhdXRvOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAueGxhcmdlLTEge1xuICAgICAgaGVpZ2h0OiBjYWxjKDguMzMzMzMlIC0gMS41cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnhsYXJnZS0yIHtcbiAgICAgIGhlaWdodDogY2FsYygxNi42NjY2NyUgLSAxLjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAueGxhcmdlLTMge1xuICAgICAgaGVpZ2h0OiBjYWxjKDI1JSAtIDEuNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC54bGFyZ2UtNCB7XG4gICAgICBoZWlnaHQ6IGNhbGMoMzMuMzMzMzMlIC0gMS41cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnhsYXJnZS01IHtcbiAgICAgIGhlaWdodDogY2FsYyg0MS42NjY2NyUgLSAxLjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAueGxhcmdlLTYge1xuICAgICAgaGVpZ2h0OiBjYWxjKDUwJSAtIDEuNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC54bGFyZ2UtNyB7XG4gICAgICBoZWlnaHQ6IGNhbGMoNTguMzMzMzMlIC0gMS41cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnhsYXJnZS04IHtcbiAgICAgIGhlaWdodDogY2FsYyg2Ni42NjY2NyUgLSAxLjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAueGxhcmdlLTkge1xuICAgICAgaGVpZ2h0OiBjYWxjKDc1JSAtIDEuNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC54bGFyZ2UtMTAge1xuICAgICAgaGVpZ2h0OiBjYWxjKDgzLjMzMzMzJSAtIDEuNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC54bGFyZ2UtMTEge1xuICAgICAgaGVpZ2h0OiBjYWxjKDkxLjY2NjY3JSAtIDEuNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC54bGFyZ2UtMTIge1xuICAgICAgaGVpZ2h0OiBjYWxjKDEwMCUgLSAxLjVyZW0pOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTBlbSkge1xuICAgIC5ncmlkLW1hcmdpbi15ID4gLmF1dG8ge1xuICAgICAgaGVpZ2h0OiBhdXRvOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAuc2hyaW5rIHtcbiAgICAgIGhlaWdodDogYXV0bzsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTEge1xuICAgICAgaGVpZ2h0OiBjYWxjKDguMzMzMzMlIC0gMS41cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTIge1xuICAgICAgaGVpZ2h0OiBjYWxjKDE2LjY2NjY3JSAtIDEuNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC0zIHtcbiAgICAgIGhlaWdodDogY2FsYygyNSUgLSAxLjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtNCB7XG4gICAgICBoZWlnaHQ6IGNhbGMoMzMuMzMzMzMlIC0gMS41cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTUge1xuICAgICAgaGVpZ2h0OiBjYWxjKDQxLjY2NjY3JSAtIDEuNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC02IHtcbiAgICAgIGhlaWdodDogY2FsYyg1MCUgLSAxLjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtNyB7XG4gICAgICBoZWlnaHQ6IGNhbGMoNTguMzMzMzMlIC0gMS41cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTgge1xuICAgICAgaGVpZ2h0OiBjYWxjKDY2LjY2NjY3JSAtIDEuNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC05IHtcbiAgICAgIGhlaWdodDogY2FsYyg3NSUgLSAxLjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtMTAge1xuICAgICAgaGVpZ2h0OiBjYWxjKDgzLjMzMzMzJSAtIDEuNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC0xMSB7XG4gICAgICBoZWlnaHQ6IGNhbGMoOTEuNjY2NjclIC0gMS41cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTEyIHtcbiAgICAgIGhlaWdodDogY2FsYygxMDAlIC0gMS41cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLm1lZGl1bS1hdXRvIHtcbiAgICAgIGhlaWdodDogYXV0bzsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLm1lZGl1bS1zaHJpbmsge1xuICAgICAgaGVpZ2h0OiBhdXRvOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubWVkaXVtLTEge1xuICAgICAgaGVpZ2h0OiBjYWxjKDguMzMzMzMlIC0gMS41cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLm1lZGl1bS0yIHtcbiAgICAgIGhlaWdodDogY2FsYygxNi42NjY2NyUgLSAxLjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubWVkaXVtLTMge1xuICAgICAgaGVpZ2h0OiBjYWxjKDI1JSAtIDEuNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5tZWRpdW0tNCB7XG4gICAgICBoZWlnaHQ6IGNhbGMoMzMuMzMzMzMlIC0gMS41cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLm1lZGl1bS01IHtcbiAgICAgIGhlaWdodDogY2FsYyg0MS42NjY2NyUgLSAxLjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubWVkaXVtLTYge1xuICAgICAgaGVpZ2h0OiBjYWxjKDUwJSAtIDEuNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5tZWRpdW0tNyB7XG4gICAgICBoZWlnaHQ6IGNhbGMoNTguMzMzMzMlIC0gMS41cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLm1lZGl1bS04IHtcbiAgICAgIGhlaWdodDogY2FsYyg2Ni42NjY2NyUgLSAxLjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubWVkaXVtLTkge1xuICAgICAgaGVpZ2h0OiBjYWxjKDc1JSAtIDEuNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5tZWRpdW0tMTAge1xuICAgICAgaGVpZ2h0OiBjYWxjKDgzLjMzMzMzJSAtIDEuNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5tZWRpdW0tMTEge1xuICAgICAgaGVpZ2h0OiBjYWxjKDkxLjY2NjY3JSAtIDEuNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5tZWRpdW0tMTIge1xuICAgICAgaGVpZ2h0OiBjYWxjKDEwMCUgLSAxLjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubGFyZ2UtYXV0byB7XG4gICAgICBoZWlnaHQ6IGF1dG87IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5sYXJnZS1zaHJpbmsge1xuICAgICAgaGVpZ2h0OiBhdXRvOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubGFyZ2UtMSB7XG4gICAgICBoZWlnaHQ6IGNhbGMoOC4zMzMzMyUgLSAxLjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubGFyZ2UtMiB7XG4gICAgICBoZWlnaHQ6IGNhbGMoMTYuNjY2NjclIC0gMS41cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLmxhcmdlLTMge1xuICAgICAgaGVpZ2h0OiBjYWxjKDI1JSAtIDEuNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5sYXJnZS00IHtcbiAgICAgIGhlaWdodDogY2FsYygzMy4zMzMzMyUgLSAxLjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubGFyZ2UtNSB7XG4gICAgICBoZWlnaHQ6IGNhbGMoNDEuNjY2NjclIC0gMS41cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLmxhcmdlLTYge1xuICAgICAgaGVpZ2h0OiBjYWxjKDUwJSAtIDEuNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5sYXJnZS03IHtcbiAgICAgIGhlaWdodDogY2FsYyg1OC4zMzMzMyUgLSAxLjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubGFyZ2UtOCB7XG4gICAgICBoZWlnaHQ6IGNhbGMoNjYuNjY2NjclIC0gMS41cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLmxhcmdlLTkge1xuICAgICAgaGVpZ2h0OiBjYWxjKDc1JSAtIDEuNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5sYXJnZS0xMCB7XG4gICAgICBoZWlnaHQ6IGNhbGMoODMuMzMzMzMlIC0gMS41cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLmxhcmdlLTExIHtcbiAgICAgIGhlaWdodDogY2FsYyg5MS42NjY2NyUgLSAxLjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubGFyZ2UtMTIge1xuICAgICAgaGVpZ2h0OiBjYWxjKDEwMCUgLSAxLjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAueGxhcmdlLWF1dG8ge1xuICAgICAgaGVpZ2h0OiBhdXRvOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAueGxhcmdlLXNocmluayB7XG4gICAgICBoZWlnaHQ6IGF1dG87IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC54bGFyZ2UtMSB7XG4gICAgICBoZWlnaHQ6IGNhbGMoOC4zMzMzMyUgLSAxLjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAueGxhcmdlLTIge1xuICAgICAgaGVpZ2h0OiBjYWxjKDE2LjY2NjY3JSAtIDEuNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC54bGFyZ2UtMyB7XG4gICAgICBoZWlnaHQ6IGNhbGMoMjUlIC0gMS41cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnhsYXJnZS00IHtcbiAgICAgIGhlaWdodDogY2FsYygzMy4zMzMzMyUgLSAxLjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAueGxhcmdlLTUge1xuICAgICAgaGVpZ2h0OiBjYWxjKDQxLjY2NjY3JSAtIDEuNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC54bGFyZ2UtNiB7XG4gICAgICBoZWlnaHQ6IGNhbGMoNTAlIC0gMS41cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnhsYXJnZS03IHtcbiAgICAgIGhlaWdodDogY2FsYyg1OC4zMzMzMyUgLSAxLjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAueGxhcmdlLTgge1xuICAgICAgaGVpZ2h0OiBjYWxjKDY2LjY2NjY3JSAtIDEuNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC54bGFyZ2UtOSB7XG4gICAgICBoZWlnaHQ6IGNhbGMoNzUlIC0gMS41cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnhsYXJnZS0xMCB7XG4gICAgICBoZWlnaHQ6IGNhbGMoODMuMzMzMzMlIC0gMS41cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnhsYXJnZS0xMSB7XG4gICAgICBoZWlnaHQ6IGNhbGMoOTEuNjY2NjclIC0gMS41cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnhsYXJnZS0xMiB7XG4gICAgICBoZWlnaHQ6IGNhbGMoMTAwJSAtIDEuNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC54eGxhcmdlLWF1dG8ge1xuICAgICAgaGVpZ2h0OiBhdXRvOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAueHhsYXJnZS1zaHJpbmsge1xuICAgICAgaGVpZ2h0OiBhdXRvOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAueHhsYXJnZS0xIHtcbiAgICAgIGhlaWdodDogY2FsYyg4LjMzMzMzJSAtIDEuNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC54eGxhcmdlLTIge1xuICAgICAgaGVpZ2h0OiBjYWxjKDE2LjY2NjY3JSAtIDEuNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC54eGxhcmdlLTMge1xuICAgICAgaGVpZ2h0OiBjYWxjKDI1JSAtIDEuNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC54eGxhcmdlLTQge1xuICAgICAgaGVpZ2h0OiBjYWxjKDMzLjMzMzMzJSAtIDEuNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC54eGxhcmdlLTUge1xuICAgICAgaGVpZ2h0OiBjYWxjKDQxLjY2NjY3JSAtIDEuNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC54eGxhcmdlLTYge1xuICAgICAgaGVpZ2h0OiBjYWxjKDUwJSAtIDEuNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC54eGxhcmdlLTcge1xuICAgICAgaGVpZ2h0OiBjYWxjKDU4LjMzMzMzJSAtIDEuNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC54eGxhcmdlLTgge1xuICAgICAgaGVpZ2h0OiBjYWxjKDY2LjY2NjY3JSAtIDEuNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC54eGxhcmdlLTkge1xuICAgICAgaGVpZ2h0OiBjYWxjKDc1JSAtIDEuNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC54eGxhcmdlLTEwIHtcbiAgICAgIGhlaWdodDogY2FsYyg4My4zMzMzMyUgLSAxLjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAueHhsYXJnZS0xMSB7XG4gICAgICBoZWlnaHQ6IGNhbGMoOTEuNjY2NjclIC0gMS41cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnh4bGFyZ2UtMTIge1xuICAgICAgaGVpZ2h0OiBjYWxjKDEwMCUgLSAxLjVyZW0pOyB9IH1cblxuLmdyaWQtZnJhbWUge1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGZsZXgtd3JhcDogbm93cmFwO1xuICBhbGlnbi1pdGVtczogc3RyZXRjaDtcbiAgd2lkdGg6IDEwMHZ3OyB9XG5cbi5jZWxsIC5ncmlkLWZyYW1lIHtcbiAgd2lkdGg6IDEwMCU7IH1cblxuLmNlbGwtYmxvY2sge1xuICBvdmVyZmxvdy14OiBhdXRvO1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDtcbiAgLW1zLW92ZXJmbG93LXN0eXBlOiAtbXMtYXV0b2hpZGluZy1zY3JvbGxiYXI7IH1cblxuLmNlbGwtYmxvY2steSB7XG4gIG92ZXJmbG93LXk6IGF1dG87XG4gIG1heC1oZWlnaHQ6IDEwMCU7XG4gIC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDtcbiAgLW1zLW92ZXJmbG93LXN0eXBlOiAtbXMtYXV0b2hpZGluZy1zY3JvbGxiYXI7IH1cblxuLmNlbGwtYmxvY2stY29udGFpbmVyIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgbWF4LWhlaWdodDogMTAwJTsgfVxuICAuY2VsbC1ibG9jay1jb250YWluZXIgPiAuZ3JpZC14IHtcbiAgICBtYXgtaGVpZ2h0OiAxMDAlO1xuICAgIGZsZXgtd3JhcDogbm93cmFwOyB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5tZWRpdW0tZ3JpZC1mcmFtZSB7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgZmxleC13cmFwOiBub3dyYXA7XG4gICAgYWxpZ24taXRlbXM6IHN0cmV0Y2g7XG4gICAgd2lkdGg6IDEwMHZ3OyB9XG4gIC5jZWxsIC5tZWRpdW0tZ3JpZC1mcmFtZSB7XG4gICAgd2lkdGg6IDEwMCU7IH1cbiAgLm1lZGl1bS1jZWxsLWJsb2NrIHtcbiAgICBvdmVyZmxvdy14OiBhdXRvO1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgICAtd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzogdG91Y2g7XG4gICAgLW1zLW92ZXJmbG93LXN0eXBlOiAtbXMtYXV0b2hpZGluZy1zY3JvbGxiYXI7IH1cbiAgLm1lZGl1bS1jZWxsLWJsb2NrLWNvbnRhaW5lciB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIG1heC1oZWlnaHQ6IDEwMCU7IH1cbiAgICAubWVkaXVtLWNlbGwtYmxvY2stY29udGFpbmVyID4gLmdyaWQteCB7XG4gICAgICBtYXgtaGVpZ2h0OiAxMDAlO1xuICAgICAgZmxleC13cmFwOiBub3dyYXA7IH1cbiAgLm1lZGl1bS1jZWxsLWJsb2NrLXkge1xuICAgIG92ZXJmbG93LXk6IGF1dG87XG4gICAgbWF4LWhlaWdodDogMTAwJTtcbiAgICAtd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzogdG91Y2g7XG4gICAgLW1zLW92ZXJmbG93LXN0eXBlOiAtbXMtYXV0b2hpZGluZy1zY3JvbGxiYXI7IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAubGFyZ2UtZ3JpZC1mcmFtZSB7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgZmxleC13cmFwOiBub3dyYXA7XG4gICAgYWxpZ24taXRlbXM6IHN0cmV0Y2g7XG4gICAgd2lkdGg6IDEwMHZ3OyB9XG4gIC5jZWxsIC5sYXJnZS1ncmlkLWZyYW1lIHtcbiAgICB3aWR0aDogMTAwJTsgfVxuICAubGFyZ2UtY2VsbC1ibG9jayB7XG4gICAgb3ZlcmZsb3cteDogYXV0bztcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgLXdlYmtpdC1vdmVyZmxvdy1zY3JvbGxpbmc6IHRvdWNoO1xuICAgIC1tcy1vdmVyZmxvdy1zdHlwZTogLW1zLWF1dG9oaWRpbmctc2Nyb2xsYmFyOyB9XG4gIC5sYXJnZS1jZWxsLWJsb2NrLWNvbnRhaW5lciB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIG1heC1oZWlnaHQ6IDEwMCU7IH1cbiAgICAubGFyZ2UtY2VsbC1ibG9jay1jb250YWluZXIgPiAuZ3JpZC14IHtcbiAgICAgIG1heC1oZWlnaHQ6IDEwMCU7XG4gICAgICBmbGV4LXdyYXA6IG5vd3JhcDsgfVxuICAubGFyZ2UtY2VsbC1ibG9jay15IHtcbiAgICBvdmVyZmxvdy15OiBhdXRvO1xuICAgIG1heC1oZWlnaHQ6IDEwMCU7XG4gICAgLXdlYmtpdC1vdmVyZmxvdy1zY3JvbGxpbmc6IHRvdWNoO1xuICAgIC1tcy1vdmVyZmxvdy1zdHlwZTogLW1zLWF1dG9oaWRpbmctc2Nyb2xsYmFyOyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAueGxhcmdlLWdyaWQtZnJhbWUge1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGZsZXgtd3JhcDogbm93cmFwO1xuICAgIGFsaWduLWl0ZW1zOiBzdHJldGNoO1xuICAgIHdpZHRoOiAxMDB2dzsgfVxuICAuY2VsbCAueGxhcmdlLWdyaWQtZnJhbWUge1xuICAgIHdpZHRoOiAxMDAlOyB9XG4gIC54bGFyZ2UtY2VsbC1ibG9jayB7XG4gICAgb3ZlcmZsb3cteDogYXV0bztcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgLXdlYmtpdC1vdmVyZmxvdy1zY3JvbGxpbmc6IHRvdWNoO1xuICAgIC1tcy1vdmVyZmxvdy1zdHlwZTogLW1zLWF1dG9oaWRpbmctc2Nyb2xsYmFyOyB9XG4gIC54bGFyZ2UtY2VsbC1ibG9jay1jb250YWluZXIge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBtYXgtaGVpZ2h0OiAxMDAlOyB9XG4gICAgLnhsYXJnZS1jZWxsLWJsb2NrLWNvbnRhaW5lciA+IC5ncmlkLXgge1xuICAgICAgbWF4LWhlaWdodDogMTAwJTtcbiAgICAgIGZsZXgtd3JhcDogbm93cmFwOyB9XG4gIC54bGFyZ2UtY2VsbC1ibG9jay15IHtcbiAgICBvdmVyZmxvdy15OiBhdXRvO1xuICAgIG1heC1oZWlnaHQ6IDEwMCU7XG4gICAgLXdlYmtpdC1vdmVyZmxvdy1zY3JvbGxpbmc6IHRvdWNoO1xuICAgIC1tcy1vdmVyZmxvdy1zdHlwZTogLW1zLWF1dG9oaWRpbmctc2Nyb2xsYmFyOyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTBlbSkge1xuICAueHhsYXJnZS1ncmlkLWZyYW1lIHtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBmbGV4LXdyYXA6IG5vd3JhcDtcbiAgICBhbGlnbi1pdGVtczogc3RyZXRjaDtcbiAgICB3aWR0aDogMTAwdnc7IH1cbiAgLmNlbGwgLnh4bGFyZ2UtZ3JpZC1mcmFtZSB7XG4gICAgd2lkdGg6IDEwMCU7IH1cbiAgLnh4bGFyZ2UtY2VsbC1ibG9jayB7XG4gICAgb3ZlcmZsb3cteDogYXV0bztcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgLXdlYmtpdC1vdmVyZmxvdy1zY3JvbGxpbmc6IHRvdWNoO1xuICAgIC1tcy1vdmVyZmxvdy1zdHlwZTogLW1zLWF1dG9oaWRpbmctc2Nyb2xsYmFyOyB9XG4gIC54eGxhcmdlLWNlbGwtYmxvY2stY29udGFpbmVyIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgbWF4LWhlaWdodDogMTAwJTsgfVxuICAgIC54eGxhcmdlLWNlbGwtYmxvY2stY29udGFpbmVyID4gLmdyaWQteCB7XG4gICAgICBtYXgtaGVpZ2h0OiAxMDAlO1xuICAgICAgZmxleC13cmFwOiBub3dyYXA7IH1cbiAgLnh4bGFyZ2UtY2VsbC1ibG9jay15IHtcbiAgICBvdmVyZmxvdy15OiBhdXRvO1xuICAgIG1heC1oZWlnaHQ6IDEwMCU7XG4gICAgLXdlYmtpdC1vdmVyZmxvdy1zY3JvbGxpbmc6IHRvdWNoO1xuICAgIC1tcy1vdmVyZmxvdy1zdHlwZTogLW1zLWF1dG9oaWRpbmctc2Nyb2xsYmFyOyB9IH1cblxuLmdyaWQteS5ncmlkLWZyYW1lIHtcbiAgd2lkdGg6IGF1dG87XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZmxleC13cmFwOiBub3dyYXA7XG4gIGFsaWduLWl0ZW1zOiBzdHJldGNoO1xuICBoZWlnaHQ6IDEwMHZoOyB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5ncmlkLXkubWVkaXVtLWdyaWQtZnJhbWUge1xuICAgIHdpZHRoOiBhdXRvO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGZsZXgtd3JhcDogbm93cmFwO1xuICAgIGFsaWduLWl0ZW1zOiBzdHJldGNoO1xuICAgIGhlaWdodDogMTAwdmg7IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuZ3JpZC15LmxhcmdlLWdyaWQtZnJhbWUge1xuICAgIHdpZHRoOiBhdXRvO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGZsZXgtd3JhcDogbm93cmFwO1xuICAgIGFsaWduLWl0ZW1zOiBzdHJldGNoO1xuICAgIGhlaWdodDogMTAwdmg7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gIC5ncmlkLXkueGxhcmdlLWdyaWQtZnJhbWUge1xuICAgIHdpZHRoOiBhdXRvO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGZsZXgtd3JhcDogbm93cmFwO1xuICAgIGFsaWduLWl0ZW1zOiBzdHJldGNoO1xuICAgIGhlaWdodDogMTAwdmg7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5MGVtKSB7XG4gIC5ncmlkLXkueHhsYXJnZS1ncmlkLWZyYW1lIHtcbiAgICB3aWR0aDogYXV0bztcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBmbGV4LXdyYXA6IG5vd3JhcDtcbiAgICBhbGlnbi1pdGVtczogc3RyZXRjaDtcbiAgICBoZWlnaHQ6IDEwMHZoOyB9IH1cblxuLmNlbGwgLmdyaWQteS5ncmlkLWZyYW1lIHtcbiAgaGVpZ2h0OiAxMDAlOyB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5jZWxsIC5ncmlkLXkubWVkaXVtLWdyaWQtZnJhbWUge1xuICAgIGhlaWdodDogMTAwJTsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5jZWxsIC5ncmlkLXkubGFyZ2UtZ3JpZC1mcmFtZSB7XG4gICAgaGVpZ2h0OiAxMDAlOyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAuY2VsbCAuZ3JpZC15LnhsYXJnZS1ncmlkLWZyYW1lIHtcbiAgICBoZWlnaHQ6IDEwMCU7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5MGVtKSB7XG4gIC5jZWxsIC5ncmlkLXkueHhsYXJnZS1ncmlkLWZyYW1lIHtcbiAgICBoZWlnaHQ6IDEwMCU7IH0gfVxuXG4uZ3JpZC1tYXJnaW4teSB7XG4gIG1hcmdpbi10b3A6IC0wLjU2MjVyZW07XG4gIG1hcmdpbi1ib3R0b206IC0wLjU2MjVyZW07IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuZ3JpZC1tYXJnaW4teSB7XG4gICAgICBtYXJnaW4tdG9wOiAtMC42MjVyZW07XG4gICAgICBtYXJnaW4tYm90dG9tOiAtMC42MjVyZW07IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5ncmlkLW1hcmdpbi15IHtcbiAgICAgIG1hcmdpbi10b3A6IC0wLjc1cmVtO1xuICAgICAgbWFyZ2luLWJvdHRvbTogLTAuNzVyZW07IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgLmdyaWQtbWFyZ2luLXkge1xuICAgICAgbWFyZ2luLXRvcDogLTAuNzVyZW07XG4gICAgICBtYXJnaW4tYm90dG9tOiAtMC43NXJlbTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDkwZW0pIHtcbiAgICAuZ3JpZC1tYXJnaW4teSB7XG4gICAgICBtYXJnaW4tdG9wOiAtMC43NXJlbTtcbiAgICAgIG1hcmdpbi1ib3R0b206IC0wLjc1cmVtOyB9IH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAuY2VsbCB7XG4gICAgaGVpZ2h0OiBjYWxjKDEwMCUgLSAxLjEyNXJlbSk7XG4gICAgbWFyZ2luLXRvcDogMC41NjI1cmVtO1xuICAgIG1hcmdpbi1ib3R0b206IDAuNTYyNXJlbTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5ncmlkLW1hcmdpbi15ID4gLmNlbGwge1xuICAgICAgaGVpZ2h0OiBjYWxjKDEwMCUgLSAxLjI1cmVtKTtcbiAgICAgIG1hcmdpbi10b3A6IDAuNjI1cmVtO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMC42MjVyZW07IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5ncmlkLW1hcmdpbi15ID4gLmNlbGwge1xuICAgICAgaGVpZ2h0OiBjYWxjKDEwMCUgLSAxLjVyZW0pO1xuICAgICAgbWFyZ2luLXRvcDogMC43NXJlbTtcbiAgICAgIG1hcmdpbi1ib3R0b206IDAuNzVyZW07IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAuY2VsbCB7XG4gICAgICBoZWlnaHQ6IGNhbGMoMTAwJSAtIDEuNXJlbSk7XG4gICAgICBtYXJnaW4tdG9wOiAwLjc1cmVtO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMC43NXJlbTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDkwZW0pIHtcbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5jZWxsIHtcbiAgICAgIGhlaWdodDogY2FsYygxMDAlIC0gMS41cmVtKTtcbiAgICAgIG1hcmdpbi10b3A6IDAuNzVyZW07XG4gICAgICBtYXJnaW4tYm90dG9tOiAwLjc1cmVtOyB9IH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAuYXV0byB7XG4gICAgaGVpZ2h0OiBhdXRvOyB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLnNocmluayB7XG4gICAgaGVpZ2h0OiBhdXRvOyB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTEge1xuICAgIGhlaWdodDogY2FsYyg4LjMzMzMzJSAtIDEuMTI1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC0yIHtcbiAgICBoZWlnaHQ6IGNhbGMoMTYuNjY2NjclIC0gMS4xMjVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTMge1xuICAgIGhlaWdodDogY2FsYygyNSUgLSAxLjEyNXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtNCB7XG4gICAgaGVpZ2h0OiBjYWxjKDMzLjMzMzMzJSAtIDEuMTI1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC01IHtcbiAgICBoZWlnaHQ6IGNhbGMoNDEuNjY2NjclIC0gMS4xMjVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTYge1xuICAgIGhlaWdodDogY2FsYyg1MCUgLSAxLjEyNXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtNyB7XG4gICAgaGVpZ2h0OiBjYWxjKDU4LjMzMzMzJSAtIDEuMTI1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC04IHtcbiAgICBoZWlnaHQ6IGNhbGMoNjYuNjY2NjclIC0gMS4xMjVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTkge1xuICAgIGhlaWdodDogY2FsYyg3NSUgLSAxLjEyNXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtMTAge1xuICAgIGhlaWdodDogY2FsYyg4My4zMzMzMyUgLSAxLjEyNXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtMTEge1xuICAgIGhlaWdodDogY2FsYyg5MS42NjY2NyUgLSAxLjEyNXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtMTIge1xuICAgIGhlaWdodDogY2FsYygxMDAlIC0gMS4xMjVyZW0pOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAuYXV0byB7XG4gICAgICBoZWlnaHQ6IGF1dG87IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5zaHJpbmsge1xuICAgICAgaGVpZ2h0OiBhdXRvOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtMSB7XG4gICAgICBoZWlnaHQ6IGNhbGMoOC4zMzMzMyUgLSAxLjI1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTIge1xuICAgICAgaGVpZ2h0OiBjYWxjKDE2LjY2NjY3JSAtIDEuMjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtMyB7XG4gICAgICBoZWlnaHQ6IGNhbGMoMjUlIC0gMS4yNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC00IHtcbiAgICAgIGhlaWdodDogY2FsYygzMy4zMzMzMyUgLSAxLjI1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTUge1xuICAgICAgaGVpZ2h0OiBjYWxjKDQxLjY2NjY3JSAtIDEuMjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtNiB7XG4gICAgICBoZWlnaHQ6IGNhbGMoNTAlIC0gMS4yNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC03IHtcbiAgICAgIGhlaWdodDogY2FsYyg1OC4zMzMzMyUgLSAxLjI1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTgge1xuICAgICAgaGVpZ2h0OiBjYWxjKDY2LjY2NjY3JSAtIDEuMjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtOSB7XG4gICAgICBoZWlnaHQ6IGNhbGMoNzUlIC0gMS4yNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC0xMCB7XG4gICAgICBoZWlnaHQ6IGNhbGMoODMuMzMzMzMlIC0gMS4yNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC0xMSB7XG4gICAgICBoZWlnaHQ6IGNhbGMoOTEuNjY2NjclIC0gMS4yNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC0xMiB7XG4gICAgICBoZWlnaHQ6IGNhbGMoMTAwJSAtIDEuMjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubWVkaXVtLWF1dG8ge1xuICAgICAgaGVpZ2h0OiBhdXRvOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubWVkaXVtLXNocmluayB7XG4gICAgICBoZWlnaHQ6IGF1dG87IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5tZWRpdW0tMSB7XG4gICAgICBoZWlnaHQ6IGNhbGMoOC4zMzMzMyUgLSAxLjI1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLm1lZGl1bS0yIHtcbiAgICAgIGhlaWdodDogY2FsYygxNi42NjY2NyUgLSAxLjI1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLm1lZGl1bS0zIHtcbiAgICAgIGhlaWdodDogY2FsYygyNSUgLSAxLjI1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLm1lZGl1bS00IHtcbiAgICAgIGhlaWdodDogY2FsYygzMy4zMzMzMyUgLSAxLjI1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLm1lZGl1bS01IHtcbiAgICAgIGhlaWdodDogY2FsYyg0MS42NjY2NyUgLSAxLjI1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLm1lZGl1bS02IHtcbiAgICAgIGhlaWdodDogY2FsYyg1MCUgLSAxLjI1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLm1lZGl1bS03IHtcbiAgICAgIGhlaWdodDogY2FsYyg1OC4zMzMzMyUgLSAxLjI1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLm1lZGl1bS04IHtcbiAgICAgIGhlaWdodDogY2FsYyg2Ni42NjY2NyUgLSAxLjI1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLm1lZGl1bS05IHtcbiAgICAgIGhlaWdodDogY2FsYyg3NSUgLSAxLjI1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLm1lZGl1bS0xMCB7XG4gICAgICBoZWlnaHQ6IGNhbGMoODMuMzMzMzMlIC0gMS4yNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5tZWRpdW0tMTEge1xuICAgICAgaGVpZ2h0OiBjYWxjKDkxLjY2NjY3JSAtIDEuMjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubWVkaXVtLTEyIHtcbiAgICAgIGhlaWdodDogY2FsYygxMDAlIC0gMS4yNXJlbSk7IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5ncmlkLW1hcmdpbi15ID4gLmF1dG8ge1xuICAgICAgaGVpZ2h0OiBhdXRvOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAuc2hyaW5rIHtcbiAgICAgIGhlaWdodDogYXV0bzsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTEge1xuICAgICAgaGVpZ2h0OiBjYWxjKDguMzMzMzMlIC0gMS41cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTIge1xuICAgICAgaGVpZ2h0OiBjYWxjKDE2LjY2NjY3JSAtIDEuNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC0zIHtcbiAgICAgIGhlaWdodDogY2FsYygyNSUgLSAxLjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtNCB7XG4gICAgICBoZWlnaHQ6IGNhbGMoMzMuMzMzMzMlIC0gMS41cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTUge1xuICAgICAgaGVpZ2h0OiBjYWxjKDQxLjY2NjY3JSAtIDEuNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC02IHtcbiAgICAgIGhlaWdodDogY2FsYyg1MCUgLSAxLjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtNyB7XG4gICAgICBoZWlnaHQ6IGNhbGMoNTguMzMzMzMlIC0gMS41cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTgge1xuICAgICAgaGVpZ2h0OiBjYWxjKDY2LjY2NjY3JSAtIDEuNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC05IHtcbiAgICAgIGhlaWdodDogY2FsYyg3NSUgLSAxLjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtMTAge1xuICAgICAgaGVpZ2h0OiBjYWxjKDgzLjMzMzMzJSAtIDEuNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC0xMSB7XG4gICAgICBoZWlnaHQ6IGNhbGMoOTEuNjY2NjclIC0gMS41cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTEyIHtcbiAgICAgIGhlaWdodDogY2FsYygxMDAlIC0gMS41cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLm1lZGl1bS1hdXRvIHtcbiAgICAgIGhlaWdodDogYXV0bzsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLm1lZGl1bS1zaHJpbmsge1xuICAgICAgaGVpZ2h0OiBhdXRvOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubWVkaXVtLTEge1xuICAgICAgaGVpZ2h0OiBjYWxjKDguMzMzMzMlIC0gMS41cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLm1lZGl1bS0yIHtcbiAgICAgIGhlaWdodDogY2FsYygxNi42NjY2NyUgLSAxLjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubWVkaXVtLTMge1xuICAgICAgaGVpZ2h0OiBjYWxjKDI1JSAtIDEuNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5tZWRpdW0tNCB7XG4gICAgICBoZWlnaHQ6IGNhbGMoMzMuMzMzMzMlIC0gMS41cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLm1lZGl1bS01IHtcbiAgICAgIGhlaWdodDogY2FsYyg0MS42NjY2NyUgLSAxLjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubWVkaXVtLTYge1xuICAgICAgaGVpZ2h0OiBjYWxjKDUwJSAtIDEuNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5tZWRpdW0tNyB7XG4gICAgICBoZWlnaHQ6IGNhbGMoNTguMzMzMzMlIC0gMS41cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLm1lZGl1bS04IHtcbiAgICAgIGhlaWdodDogY2FsYyg2Ni42NjY2NyUgLSAxLjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubWVkaXVtLTkge1xuICAgICAgaGVpZ2h0OiBjYWxjKDc1JSAtIDEuNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5tZWRpdW0tMTAge1xuICAgICAgaGVpZ2h0OiBjYWxjKDgzLjMzMzMzJSAtIDEuNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5tZWRpdW0tMTEge1xuICAgICAgaGVpZ2h0OiBjYWxjKDkxLjY2NjY3JSAtIDEuNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5tZWRpdW0tMTIge1xuICAgICAgaGVpZ2h0OiBjYWxjKDEwMCUgLSAxLjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubGFyZ2UtYXV0byB7XG4gICAgICBoZWlnaHQ6IGF1dG87IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5sYXJnZS1zaHJpbmsge1xuICAgICAgaGVpZ2h0OiBhdXRvOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubGFyZ2UtMSB7XG4gICAgICBoZWlnaHQ6IGNhbGMoOC4zMzMzMyUgLSAxLjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubGFyZ2UtMiB7XG4gICAgICBoZWlnaHQ6IGNhbGMoMTYuNjY2NjclIC0gMS41cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLmxhcmdlLTMge1xuICAgICAgaGVpZ2h0OiBjYWxjKDI1JSAtIDEuNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5sYXJnZS00IHtcbiAgICAgIGhlaWdodDogY2FsYygzMy4zMzMzMyUgLSAxLjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubGFyZ2UtNSB7XG4gICAgICBoZWlnaHQ6IGNhbGMoNDEuNjY2NjclIC0gMS41cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLmxhcmdlLTYge1xuICAgICAgaGVpZ2h0OiBjYWxjKDUwJSAtIDEuNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5sYXJnZS03IHtcbiAgICAgIGhlaWdodDogY2FsYyg1OC4zMzMzMyUgLSAxLjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubGFyZ2UtOCB7XG4gICAgICBoZWlnaHQ6IGNhbGMoNjYuNjY2NjclIC0gMS41cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLmxhcmdlLTkge1xuICAgICAgaGVpZ2h0OiBjYWxjKDc1JSAtIDEuNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5sYXJnZS0xMCB7XG4gICAgICBoZWlnaHQ6IGNhbGMoODMuMzMzMzMlIC0gMS41cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLmxhcmdlLTExIHtcbiAgICAgIGhlaWdodDogY2FsYyg5MS42NjY2NyUgLSAxLjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubGFyZ2UtMTIge1xuICAgICAgaGVpZ2h0OiBjYWxjKDEwMCUgLSAxLjVyZW0pOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgIC5ncmlkLW1hcmdpbi15ID4gLmF1dG8ge1xuICAgICAgaGVpZ2h0OiBhdXRvOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAuc2hyaW5rIHtcbiAgICAgIGhlaWdodDogYXV0bzsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTEge1xuICAgICAgaGVpZ2h0OiBjYWxjKDguMzMzMzMlIC0gMS41cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTIge1xuICAgICAgaGVpZ2h0OiBjYWxjKDE2LjY2NjY3JSAtIDEuNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC0zIHtcbiAgICAgIGhlaWdodDogY2FsYygyNSUgLSAxLjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtNCB7XG4gICAgICBoZWlnaHQ6IGNhbGMoMzMuMzMzMzMlIC0gMS41cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTUge1xuICAgICAgaGVpZ2h0OiBjYWxjKDQxLjY2NjY3JSAtIDEuNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC02IHtcbiAgICAgIGhlaWdodDogY2FsYyg1MCUgLSAxLjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtNyB7XG4gICAgICBoZWlnaHQ6IGNhbGMoNTguMzMzMzMlIC0gMS41cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTgge1xuICAgICAgaGVpZ2h0OiBjYWxjKDY2LjY2NjY3JSAtIDEuNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC05IHtcbiAgICAgIGhlaWdodDogY2FsYyg3NSUgLSAxLjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtMTAge1xuICAgICAgaGVpZ2h0OiBjYWxjKDgzLjMzMzMzJSAtIDEuNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC0xMSB7XG4gICAgICBoZWlnaHQ6IGNhbGMoOTEuNjY2NjclIC0gMS41cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTEyIHtcbiAgICAgIGhlaWdodDogY2FsYygxMDAlIC0gMS41cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLm1lZGl1bS1hdXRvIHtcbiAgICAgIGhlaWdodDogYXV0bzsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLm1lZGl1bS1zaHJpbmsge1xuICAgICAgaGVpZ2h0OiBhdXRvOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubWVkaXVtLTEge1xuICAgICAgaGVpZ2h0OiBjYWxjKDguMzMzMzMlIC0gMS41cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLm1lZGl1bS0yIHtcbiAgICAgIGhlaWdodDogY2FsYygxNi42NjY2NyUgLSAxLjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubWVkaXVtLTMge1xuICAgICAgaGVpZ2h0OiBjYWxjKDI1JSAtIDEuNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5tZWRpdW0tNCB7XG4gICAgICBoZWlnaHQ6IGNhbGMoMzMuMzMzMzMlIC0gMS41cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLm1lZGl1bS01IHtcbiAgICAgIGhlaWdodDogY2FsYyg0MS42NjY2NyUgLSAxLjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubWVkaXVtLTYge1xuICAgICAgaGVpZ2h0OiBjYWxjKDUwJSAtIDEuNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5tZWRpdW0tNyB7XG4gICAgICBoZWlnaHQ6IGNhbGMoNTguMzMzMzMlIC0gMS41cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLm1lZGl1bS04IHtcbiAgICAgIGhlaWdodDogY2FsYyg2Ni42NjY2NyUgLSAxLjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubWVkaXVtLTkge1xuICAgICAgaGVpZ2h0OiBjYWxjKDc1JSAtIDEuNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5tZWRpdW0tMTAge1xuICAgICAgaGVpZ2h0OiBjYWxjKDgzLjMzMzMzJSAtIDEuNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5tZWRpdW0tMTEge1xuICAgICAgaGVpZ2h0OiBjYWxjKDkxLjY2NjY3JSAtIDEuNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5tZWRpdW0tMTIge1xuICAgICAgaGVpZ2h0OiBjYWxjKDEwMCUgLSAxLjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubGFyZ2UtYXV0byB7XG4gICAgICBoZWlnaHQ6IGF1dG87IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5sYXJnZS1zaHJpbmsge1xuICAgICAgaGVpZ2h0OiBhdXRvOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubGFyZ2UtMSB7XG4gICAgICBoZWlnaHQ6IGNhbGMoOC4zMzMzMyUgLSAxLjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubGFyZ2UtMiB7XG4gICAgICBoZWlnaHQ6IGNhbGMoMTYuNjY2NjclIC0gMS41cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLmxhcmdlLTMge1xuICAgICAgaGVpZ2h0OiBjYWxjKDI1JSAtIDEuNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5sYXJnZS00IHtcbiAgICAgIGhlaWdodDogY2FsYygzMy4zMzMzMyUgLSAxLjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubGFyZ2UtNSB7XG4gICAgICBoZWlnaHQ6IGNhbGMoNDEuNjY2NjclIC0gMS41cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLmxhcmdlLTYge1xuICAgICAgaGVpZ2h0OiBjYWxjKDUwJSAtIDEuNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5sYXJnZS03IHtcbiAgICAgIGhlaWdodDogY2FsYyg1OC4zMzMzMyUgLSAxLjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubGFyZ2UtOCB7XG4gICAgICBoZWlnaHQ6IGNhbGMoNjYuNjY2NjclIC0gMS41cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLmxhcmdlLTkge1xuICAgICAgaGVpZ2h0OiBjYWxjKDc1JSAtIDEuNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5sYXJnZS0xMCB7XG4gICAgICBoZWlnaHQ6IGNhbGMoODMuMzMzMzMlIC0gMS41cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLmxhcmdlLTExIHtcbiAgICAgIGhlaWdodDogY2FsYyg5MS42NjY2NyUgLSAxLjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubGFyZ2UtMTIge1xuICAgICAgaGVpZ2h0OiBjYWxjKDEwMCUgLSAxLjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAueGxhcmdlLWF1dG8ge1xuICAgICAgaGVpZ2h0OiBhdXRvOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAueGxhcmdlLXNocmluayB7XG4gICAgICBoZWlnaHQ6IGF1dG87IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC54bGFyZ2UtMSB7XG4gICAgICBoZWlnaHQ6IGNhbGMoOC4zMzMzMyUgLSAxLjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAueGxhcmdlLTIge1xuICAgICAgaGVpZ2h0OiBjYWxjKDE2LjY2NjY3JSAtIDEuNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC54bGFyZ2UtMyB7XG4gICAgICBoZWlnaHQ6IGNhbGMoMjUlIC0gMS41cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnhsYXJnZS00IHtcbiAgICAgIGhlaWdodDogY2FsYygzMy4zMzMzMyUgLSAxLjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAueGxhcmdlLTUge1xuICAgICAgaGVpZ2h0OiBjYWxjKDQxLjY2NjY3JSAtIDEuNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC54bGFyZ2UtNiB7XG4gICAgICBoZWlnaHQ6IGNhbGMoNTAlIC0gMS41cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnhsYXJnZS03IHtcbiAgICAgIGhlaWdodDogY2FsYyg1OC4zMzMzMyUgLSAxLjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAueGxhcmdlLTgge1xuICAgICAgaGVpZ2h0OiBjYWxjKDY2LjY2NjY3JSAtIDEuNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC54bGFyZ2UtOSB7XG4gICAgICBoZWlnaHQ6IGNhbGMoNzUlIC0gMS41cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnhsYXJnZS0xMCB7XG4gICAgICBoZWlnaHQ6IGNhbGMoODMuMzMzMzMlIC0gMS41cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnhsYXJnZS0xMSB7XG4gICAgICBoZWlnaHQ6IGNhbGMoOTEuNjY2NjclIC0gMS41cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnhsYXJnZS0xMiB7XG4gICAgICBoZWlnaHQ6IGNhbGMoMTAwJSAtIDEuNXJlbSk7IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5MGVtKSB7XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAuYXV0byB7XG4gICAgICBoZWlnaHQ6IGF1dG87IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5zaHJpbmsge1xuICAgICAgaGVpZ2h0OiBhdXRvOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtMSB7XG4gICAgICBoZWlnaHQ6IGNhbGMoOC4zMzMzMyUgLSAxLjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtMiB7XG4gICAgICBoZWlnaHQ6IGNhbGMoMTYuNjY2NjclIC0gMS41cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTMge1xuICAgICAgaGVpZ2h0OiBjYWxjKDI1JSAtIDEuNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC00IHtcbiAgICAgIGhlaWdodDogY2FsYygzMy4zMzMzMyUgLSAxLjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtNSB7XG4gICAgICBoZWlnaHQ6IGNhbGMoNDEuNjY2NjclIC0gMS41cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTYge1xuICAgICAgaGVpZ2h0OiBjYWxjKDUwJSAtIDEuNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC03IHtcbiAgICAgIGhlaWdodDogY2FsYyg1OC4zMzMzMyUgLSAxLjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtOCB7XG4gICAgICBoZWlnaHQ6IGNhbGMoNjYuNjY2NjclIC0gMS41cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTkge1xuICAgICAgaGVpZ2h0OiBjYWxjKDc1JSAtIDEuNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC0xMCB7XG4gICAgICBoZWlnaHQ6IGNhbGMoODMuMzMzMzMlIC0gMS41cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTExIHtcbiAgICAgIGhlaWdodDogY2FsYyg5MS42NjY2NyUgLSAxLjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtMTIge1xuICAgICAgaGVpZ2h0OiBjYWxjKDEwMCUgLSAxLjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubWVkaXVtLWF1dG8ge1xuICAgICAgaGVpZ2h0OiBhdXRvOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubWVkaXVtLXNocmluayB7XG4gICAgICBoZWlnaHQ6IGF1dG87IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5tZWRpdW0tMSB7XG4gICAgICBoZWlnaHQ6IGNhbGMoOC4zMzMzMyUgLSAxLjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubWVkaXVtLTIge1xuICAgICAgaGVpZ2h0OiBjYWxjKDE2LjY2NjY3JSAtIDEuNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5tZWRpdW0tMyB7XG4gICAgICBoZWlnaHQ6IGNhbGMoMjUlIC0gMS41cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLm1lZGl1bS00IHtcbiAgICAgIGhlaWdodDogY2FsYygzMy4zMzMzMyUgLSAxLjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubWVkaXVtLTUge1xuICAgICAgaGVpZ2h0OiBjYWxjKDQxLjY2NjY3JSAtIDEuNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5tZWRpdW0tNiB7XG4gICAgICBoZWlnaHQ6IGNhbGMoNTAlIC0gMS41cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLm1lZGl1bS03IHtcbiAgICAgIGhlaWdodDogY2FsYyg1OC4zMzMzMyUgLSAxLjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubWVkaXVtLTgge1xuICAgICAgaGVpZ2h0OiBjYWxjKDY2LjY2NjY3JSAtIDEuNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5tZWRpdW0tOSB7XG4gICAgICBoZWlnaHQ6IGNhbGMoNzUlIC0gMS41cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLm1lZGl1bS0xMCB7XG4gICAgICBoZWlnaHQ6IGNhbGMoODMuMzMzMzMlIC0gMS41cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLm1lZGl1bS0xMSB7XG4gICAgICBoZWlnaHQ6IGNhbGMoOTEuNjY2NjclIC0gMS41cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLm1lZGl1bS0xMiB7XG4gICAgICBoZWlnaHQ6IGNhbGMoMTAwJSAtIDEuNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5sYXJnZS1hdXRvIHtcbiAgICAgIGhlaWdodDogYXV0bzsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLmxhcmdlLXNocmluayB7XG4gICAgICBoZWlnaHQ6IGF1dG87IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5sYXJnZS0xIHtcbiAgICAgIGhlaWdodDogY2FsYyg4LjMzMzMzJSAtIDEuNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5sYXJnZS0yIHtcbiAgICAgIGhlaWdodDogY2FsYygxNi42NjY2NyUgLSAxLjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubGFyZ2UtMyB7XG4gICAgICBoZWlnaHQ6IGNhbGMoMjUlIC0gMS41cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLmxhcmdlLTQge1xuICAgICAgaGVpZ2h0OiBjYWxjKDMzLjMzMzMzJSAtIDEuNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5sYXJnZS01IHtcbiAgICAgIGhlaWdodDogY2FsYyg0MS42NjY2NyUgLSAxLjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubGFyZ2UtNiB7XG4gICAgICBoZWlnaHQ6IGNhbGMoNTAlIC0gMS41cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLmxhcmdlLTcge1xuICAgICAgaGVpZ2h0OiBjYWxjKDU4LjMzMzMzJSAtIDEuNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5sYXJnZS04IHtcbiAgICAgIGhlaWdodDogY2FsYyg2Ni42NjY2NyUgLSAxLjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubGFyZ2UtOSB7XG4gICAgICBoZWlnaHQ6IGNhbGMoNzUlIC0gMS41cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLmxhcmdlLTEwIHtcbiAgICAgIGhlaWdodDogY2FsYyg4My4zMzMzMyUgLSAxLjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubGFyZ2UtMTEge1xuICAgICAgaGVpZ2h0OiBjYWxjKDkxLjY2NjY3JSAtIDEuNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5sYXJnZS0xMiB7XG4gICAgICBoZWlnaHQ6IGNhbGMoMTAwJSAtIDEuNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC54bGFyZ2UtYXV0byB7XG4gICAgICBoZWlnaHQ6IGF1dG87IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC54bGFyZ2Utc2hyaW5rIHtcbiAgICAgIGhlaWdodDogYXV0bzsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnhsYXJnZS0xIHtcbiAgICAgIGhlaWdodDogY2FsYyg4LjMzMzMzJSAtIDEuNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC54bGFyZ2UtMiB7XG4gICAgICBoZWlnaHQ6IGNhbGMoMTYuNjY2NjclIC0gMS41cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnhsYXJnZS0zIHtcbiAgICAgIGhlaWdodDogY2FsYygyNSUgLSAxLjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAueGxhcmdlLTQge1xuICAgICAgaGVpZ2h0OiBjYWxjKDMzLjMzMzMzJSAtIDEuNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC54bGFyZ2UtNSB7XG4gICAgICBoZWlnaHQ6IGNhbGMoNDEuNjY2NjclIC0gMS41cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnhsYXJnZS02IHtcbiAgICAgIGhlaWdodDogY2FsYyg1MCUgLSAxLjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAueGxhcmdlLTcge1xuICAgICAgaGVpZ2h0OiBjYWxjKDU4LjMzMzMzJSAtIDEuNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC54bGFyZ2UtOCB7XG4gICAgICBoZWlnaHQ6IGNhbGMoNjYuNjY2NjclIC0gMS41cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnhsYXJnZS05IHtcbiAgICAgIGhlaWdodDogY2FsYyg3NSUgLSAxLjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAueGxhcmdlLTEwIHtcbiAgICAgIGhlaWdodDogY2FsYyg4My4zMzMzMyUgLSAxLjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAueGxhcmdlLTExIHtcbiAgICAgIGhlaWdodDogY2FsYyg5MS42NjY2NyUgLSAxLjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAueGxhcmdlLTEyIHtcbiAgICAgIGhlaWdodDogY2FsYygxMDAlIC0gMS41cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnh4bGFyZ2UtYXV0byB7XG4gICAgICBoZWlnaHQ6IGF1dG87IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC54eGxhcmdlLXNocmluayB7XG4gICAgICBoZWlnaHQ6IGF1dG87IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC54eGxhcmdlLTEge1xuICAgICAgaGVpZ2h0OiBjYWxjKDguMzMzMzMlIC0gMS41cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnh4bGFyZ2UtMiB7XG4gICAgICBoZWlnaHQ6IGNhbGMoMTYuNjY2NjclIC0gMS41cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnh4bGFyZ2UtMyB7XG4gICAgICBoZWlnaHQ6IGNhbGMoMjUlIC0gMS41cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnh4bGFyZ2UtNCB7XG4gICAgICBoZWlnaHQ6IGNhbGMoMzMuMzMzMzMlIC0gMS41cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnh4bGFyZ2UtNSB7XG4gICAgICBoZWlnaHQ6IGNhbGMoNDEuNjY2NjclIC0gMS41cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnh4bGFyZ2UtNiB7XG4gICAgICBoZWlnaHQ6IGNhbGMoNTAlIC0gMS41cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnh4bGFyZ2UtNyB7XG4gICAgICBoZWlnaHQ6IGNhbGMoNTguMzMzMzMlIC0gMS41cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnh4bGFyZ2UtOCB7XG4gICAgICBoZWlnaHQ6IGNhbGMoNjYuNjY2NjclIC0gMS41cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnh4bGFyZ2UtOSB7XG4gICAgICBoZWlnaHQ6IGNhbGMoNzUlIC0gMS41cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnh4bGFyZ2UtMTAge1xuICAgICAgaGVpZ2h0OiBjYWxjKDgzLjMzMzMzJSAtIDEuNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC54eGxhcmdlLTExIHtcbiAgICAgIGhlaWdodDogY2FsYyg5MS42NjY2NyUgLSAxLjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAueHhsYXJnZS0xMiB7XG4gICAgICBoZWlnaHQ6IGNhbGMoMTAwJSAtIDEuNXJlbSk7IH0gfVxuXG4uZ3JpZC1mcmFtZS5ncmlkLW1hcmdpbi15IHtcbiAgaGVpZ2h0OiBjYWxjKDEwMHZoICsgMS4xMjVyZW0pOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLmdyaWQtZnJhbWUuZ3JpZC1tYXJnaW4teSB7XG4gICAgICBoZWlnaHQ6IGNhbGMoMTAwdmggKyAxLjI1cmVtKTsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmdyaWQtZnJhbWUuZ3JpZC1tYXJnaW4teSB7XG4gICAgICBoZWlnaHQ6IGNhbGMoMTAwdmggKyAxLjVyZW0pOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgIC5ncmlkLWZyYW1lLmdyaWQtbWFyZ2luLXkge1xuICAgICAgaGVpZ2h0OiBjYWxjKDEwMHZoICsgMS41cmVtKTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDkwZW0pIHtcbiAgICAuZ3JpZC1mcmFtZS5ncmlkLW1hcmdpbi15IHtcbiAgICAgIGhlaWdodDogY2FsYygxMDB2aCArIDEuNXJlbSk7IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAuZ3JpZC1tYXJnaW4teS5tZWRpdW0tZ3JpZC1mcmFtZSB7XG4gICAgaGVpZ2h0OiBjYWxjKDEwMHZoICsgMS4yNXJlbSk7IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuZ3JpZC1tYXJnaW4teS5sYXJnZS1ncmlkLWZyYW1lIHtcbiAgICBoZWlnaHQ6IGNhbGMoMTAwdmggKyAxLjVyZW0pOyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAuZ3JpZC1tYXJnaW4teS54bGFyZ2UtZ3JpZC1mcmFtZSB7XG4gICAgaGVpZ2h0OiBjYWxjKDEwMHZoICsgMS41cmVtKTsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDkwZW0pIHtcbiAgLmdyaWQtbWFyZ2luLXkueHhsYXJnZS1ncmlkLWZyYW1lIHtcbiAgICBoZWlnaHQ6IGNhbGMoMTAwdmggKyAxLjVyZW0pOyB9IH1cblxuZGl2LFxuZGwsXG5kdCxcbmRkLFxudWwsXG5vbCxcbmxpLFxuaDEsXG5oMixcbmgzLFxuaDQsXG5oNSxcbmg2LFxucHJlLFxuZm9ybSxcbnAsXG5ibG9ja3F1b3RlLFxudGgsXG50ZCB7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDsgfVxuXG5wIHtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgZm9udC1zaXplOiBpbmhlcml0O1xuICBsaW5lLWhlaWdodDogMS41O1xuICB0ZXh0LXJlbmRlcmluZzogb3B0aW1pemVMZWdpYmlsaXR5OyB9XG5cbmVtLFxuaSB7XG4gIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7IH1cblxuc3Ryb25nLFxuYiB7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIGxpbmUtaGVpZ2h0OiBpbmhlcml0OyB9XG5cbnNtYWxsIHtcbiAgZm9udC1zaXplOiA4MCU7XG4gIGxpbmUtaGVpZ2h0OiBpbmhlcml0OyB9XG5cbmgxLCAuaDEsXG5oMiwgLmgyLFxuaDMsIC5oMyxcbmg0LCAuaDQsXG5oNSwgLmg1LFxuaDYsIC5oNiB7XG4gIGZvbnQtZmFtaWx5OiBcImdvcmRpdGFib2xkXCIsIC1hcHBsZS1zeXN0ZW0sIEJsaW5rTWFjU3lzdGVtRm9udCwgXCJTZWdvZSBVSVwiLCBcIlJvYm90b1wiLCBcIk94eWdlblwiLCBcIlVidW50dVwiLCBcIkNhbnRhcmVsbFwiLCBcIkZpcmEgU2Fuc1wiLCBcIkRyb2lkIFNhbnNcIiwgXCJIZWx2ZXRpY2EgTmV1ZVwiLCBzYW5zLXNlcmlmO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIGNvbG9yOiBpbmhlcml0O1xuICB0ZXh0LXJlbmRlcmluZzogb3B0aW1pemVMZWdpYmlsaXR5OyB9XG4gIGgxIHNtYWxsLCAuaDEgc21hbGwsXG4gIGgyIHNtYWxsLCAuaDIgc21hbGwsXG4gIGgzIHNtYWxsLCAuaDMgc21hbGwsXG4gIGg0IHNtYWxsLCAuaDQgc21hbGwsXG4gIGg1IHNtYWxsLCAuaDUgc21hbGwsXG4gIGg2IHNtYWxsLCAuaDYgc21hbGwge1xuICAgIGxpbmUtaGVpZ2h0OiAwO1xuICAgIGNvbG9yOiAjY2FjYWNhOyB9XG5cbmgxLCAuaDEge1xuICBmb250LXNpemU6IDIuNXJlbTtcbiAgbGluZS1oZWlnaHQ6IDEuMjIyO1xuICBtYXJnaW4tdG9wOiAwO1xuICBtYXJnaW4tYm90dG9tOiAwLjVyZW07IH1cblxuaDIsIC5oMiB7XG4gIGZvbnQtc2l6ZTogMS43NXJlbTtcbiAgbGluZS1oZWlnaHQ6IDEuMjIyO1xuICBtYXJnaW4tdG9wOiAwO1xuICBtYXJnaW4tYm90dG9tOiAwLjVyZW07IH1cblxuaDMsIC5oMyB7XG4gIGZvbnQtc2l6ZTogMS41cmVtO1xuICBsaW5lLWhlaWdodDogMS4yMjI7XG4gIG1hcmdpbi10b3A6IDA7XG4gIG1hcmdpbi1ib3R0b206IDAuNXJlbTsgfVxuXG5oNCwgLmg0IHtcbiAgZm9udC1zaXplOiAxLjMxMjVyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjIyMjtcbiAgbWFyZ2luLXRvcDogMDtcbiAgbWFyZ2luLWJvdHRvbTogMC41cmVtOyB9XG5cbmg1LCAuaDUge1xuICBmb250LXNpemU6IDEuMTI1cmVtO1xuICBsaW5lLWhlaWdodDogMS4yMjI7XG4gIG1hcmdpbi10b3A6IDA7XG4gIG1hcmdpbi1ib3R0b206IDAuNXJlbTsgfVxuXG5oNiwgLmg2IHtcbiAgZm9udC1zaXplOiAxcmVtO1xuICBsaW5lLWhlaWdodDogMS4yMjI7XG4gIG1hcmdpbi10b3A6IDA7XG4gIG1hcmdpbi1ib3R0b206IDAuNXJlbTsgfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICBoMSwgLmgxIHtcbiAgICBmb250LXNpemU6IDNyZW07IH1cbiAgaDIsIC5oMiB7XG4gICAgZm9udC1zaXplOiAxLjg3NXJlbTsgfVxuICBoMywgLmgzIHtcbiAgICBmb250LXNpemU6IDEuNXJlbTsgfVxuICBoNCwgLmg0IHtcbiAgICBmb250LXNpemU6IDEuMzEyNXJlbTsgfVxuICBoNSwgLmg1IHtcbiAgICBmb250LXNpemU6IDEuMTI1cmVtOyB9XG4gIGg2LCAuaDYge1xuICAgIGZvbnQtc2l6ZTogMXJlbTsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIGgxLCAuaDEge1xuICAgIGZvbnQtc2l6ZTogMy4zNzVyZW07IH1cbiAgaDIsIC5oMiB7XG4gICAgZm9udC1zaXplOiAyLjI1cmVtOyB9XG4gIGgzLCAuaDMge1xuICAgIGZvbnQtc2l6ZTogMS44NzVyZW07IH1cbiAgaDQsIC5oNCB7XG4gICAgZm9udC1zaXplOiAxLjMxMjVyZW07IH1cbiAgaDUsIC5oNSB7XG4gICAgZm9udC1zaXplOiAxLjEyNXJlbTsgfVxuICBoNiwgLmg2IHtcbiAgICBmb250LXNpemU6IDFyZW07IH0gfVxuXG5hIHtcbiAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7XG4gIGNvbG9yOiAjMkRDOUQ3O1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIGN1cnNvcjogcG9pbnRlcjsgfVxuICBhOmhvdmVyLCBhOmZvY3VzIHtcbiAgICBjb2xvcjogIzI0YWZiYzsgfVxuICBhIGltZyB7XG4gICAgYm9yZGVyOiAwOyB9XG5cbmhyIHtcbiAgY2xlYXI6IGJvdGg7XG4gIG1heC13aWR0aDogOTByZW07XG4gIGhlaWdodDogMDtcbiAgbWFyZ2luOiAxLjI1cmVtIGF1dG87XG4gIGJvcmRlci10b3A6IDA7XG4gIGJvcmRlci1yaWdodDogMDtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNjYWNhY2E7XG4gIGJvcmRlci1sZWZ0OiAwOyB9XG5cbnVsLFxub2wsXG5kbCB7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG4gIGxpc3Qtc3R5bGUtcG9zaXRpb246IG91dHNpZGU7XG4gIGxpbmUtaGVpZ2h0OiAxLjU7IH1cblxubGkge1xuICBmb250LXNpemU6IGluaGVyaXQ7IH1cblxudWwge1xuICBtYXJnaW4tbGVmdDogMS4yNXJlbTtcbiAgbGlzdC1zdHlsZS10eXBlOiBkaXNjOyB9XG5cbm9sIHtcbiAgbWFyZ2luLWxlZnQ6IDEuMjVyZW07IH1cblxudWwgdWwsIG9sIHVsLCB1bCBvbCwgb2wgb2wge1xuICBtYXJnaW4tbGVmdDogMS4yNXJlbTtcbiAgbWFyZ2luLWJvdHRvbTogMDsgfVxuXG5kbCB7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07IH1cbiAgZGwgZHQge1xuICAgIG1hcmdpbi1ib3R0b206IDAuM3JlbTtcbiAgICBmb250LXdlaWdodDogNzAwOyB9XG5cbmJsb2NrcXVvdGUge1xuICBtYXJnaW46IDAgMCAxcmVtO1xuICBwYWRkaW5nOiAwLjU2MjVyZW0gMS4yNXJlbSAwIDEuMTg3NXJlbTtcbiAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAjY2FjYWNhOyB9XG4gIGJsb2NrcXVvdGUsIGJsb2NrcXVvdGUgcCB7XG4gICAgbGluZS1oZWlnaHQ6IDEuNTtcbiAgICBjb2xvcjogIzhhOGE4YTsgfVxuXG5jaXRlIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGZvbnQtc2l6ZTogMC44MTI1cmVtO1xuICBjb2xvcjogIzhhOGE4YTsgfVxuICBjaXRlOmJlZm9yZSB7XG4gICAgY29udGVudDogXCLigJQgXCI7IH1cblxuYWJiciwgYWJiclt0aXRsZV0ge1xuICBib3JkZXItYm90dG9tOiAxcHggZG90dGVkICMwMDAwMDA7XG4gIGN1cnNvcjogaGVscDtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lOyB9XG5cbmZpZ3VyZSB7XG4gIG1hcmdpbjogMDsgfVxuXG5jb2RlIHtcbiAgcGFkZGluZzogMC4xMjVyZW0gMC4zMTI1cmVtIDAuMDYyNXJlbTtcbiAgYm9yZGVyOiAxcHggc29saWQgI2NhY2FjYTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2U2ZTZlNjtcbiAgZm9udC1mYW1pbHk6IENvbnNvbGFzLCBcIkxpYmVyYXRpb24gTW9ub1wiLCBDb3VyaWVyLCBtb25vc3BhY2U7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGNvbG9yOiAjMDAwMDAwOyB9XG5cbmtiZCB7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMC4xMjVyZW0gMC4yNXJlbSAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTZlNmU2O1xuICBmb250LWZhbWlseTogQ29uc29sYXMsIFwiTGliZXJhdGlvbiBNb25vXCIsIENvdXJpZXIsIG1vbm9zcGFjZTtcbiAgY29sb3I6ICMwMDAwMDA7IH1cblxuLnN1YmhlYWRlciB7XG4gIG1hcmdpbi10b3A6IDAuMnJlbTtcbiAgbWFyZ2luLWJvdHRvbTogMC41cmVtO1xuICBmb250LXdlaWdodDogNDAwO1xuICBsaW5lLWhlaWdodDogMS40O1xuICBjb2xvcjogIzhhOGE4YTsgfVxuXG4ubGVhZCB7XG4gIGZvbnQtc2l6ZTogMTI1JTtcbiAgbGluZS1oZWlnaHQ6IDEuNjsgfVxuXG4uc3RhdCB7XG4gIGZvbnQtc2l6ZTogMi41cmVtO1xuICBsaW5lLWhlaWdodDogMTsgfVxuICBwICsgLnN0YXQge1xuICAgIG1hcmdpbi10b3A6IC0xcmVtOyB9XG5cbnVsLm5vLWJ1bGxldCwgb2wubm8tYnVsbGV0IHtcbiAgbWFyZ2luLWxlZnQ6IDA7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7IH1cblxuLnRleHQtbGVmdCB7XG4gIHRleHQtYWxpZ246IGxlZnQ7IH1cblxuLnRleHQtcmlnaHQge1xuICB0ZXh0LWFsaWduOiByaWdodDsgfVxuXG4udGV4dC1jZW50ZXIge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cblxuLnRleHQtanVzdGlmeSB7XG4gIHRleHQtYWxpZ246IGp1c3RpZnk7IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLm1lZGl1bS10ZXh0LWxlZnQge1xuICAgIHRleHQtYWxpZ246IGxlZnQ7IH1cbiAgLm1lZGl1bS10ZXh0LXJpZ2h0IHtcbiAgICB0ZXh0LWFsaWduOiByaWdodDsgfVxuICAubWVkaXVtLXRleHQtY2VudGVyIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgLm1lZGl1bS10ZXh0LWp1c3RpZnkge1xuICAgIHRleHQtYWxpZ246IGp1c3RpZnk7IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAubGFyZ2UtdGV4dC1sZWZ0IHtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0OyB9XG4gIC5sYXJnZS10ZXh0LXJpZ2h0IHtcbiAgICB0ZXh0LWFsaWduOiByaWdodDsgfVxuICAubGFyZ2UtdGV4dC1jZW50ZXIge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuICAubGFyZ2UtdGV4dC1qdXN0aWZ5IHtcbiAgICB0ZXh0LWFsaWduOiBqdXN0aWZ5OyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAueGxhcmdlLXRleHQtbGVmdCB7XG4gICAgdGV4dC1hbGlnbjogbGVmdDsgfVxuICAueGxhcmdlLXRleHQtcmlnaHQge1xuICAgIHRleHQtYWxpZ246IHJpZ2h0OyB9XG4gIC54bGFyZ2UtdGV4dC1jZW50ZXIge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuICAueGxhcmdlLXRleHQtanVzdGlmeSB7XG4gICAgdGV4dC1hbGlnbjoganVzdGlmeTsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDkwZW0pIHtcbiAgLnh4bGFyZ2UtdGV4dC1sZWZ0IHtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0OyB9XG4gIC54eGxhcmdlLXRleHQtcmlnaHQge1xuICAgIHRleHQtYWxpZ246IHJpZ2h0OyB9XG4gIC54eGxhcmdlLXRleHQtY2VudGVyIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgLnh4bGFyZ2UtdGV4dC1qdXN0aWZ5IHtcbiAgICB0ZXh0LWFsaWduOiBqdXN0aWZ5OyB9IH1cblxuLnNob3ctZm9yLXByaW50IHtcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9XG5cbkBtZWRpYSBwcmludCB7XG4gICoge1xuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG4gICAgYm94LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xuICAgIGNvbG9yOiBibGFjayAhaW1wb3J0YW50O1xuICAgIHRleHQtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7IH1cbiAgLnNob3ctZm9yLXByaW50IHtcbiAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50OyB9XG4gIC5oaWRlLWZvci1wcmludCB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9XG4gIHRhYmxlLnNob3ctZm9yLXByaW50IHtcbiAgICBkaXNwbGF5OiB0YWJsZSAhaW1wb3J0YW50OyB9XG4gIHRoZWFkLnNob3ctZm9yLXByaW50IHtcbiAgICBkaXNwbGF5OiB0YWJsZS1oZWFkZXItZ3JvdXAgIWltcG9ydGFudDsgfVxuICB0Ym9keS5zaG93LWZvci1wcmludCB7XG4gICAgZGlzcGxheTogdGFibGUtcm93LWdyb3VwICFpbXBvcnRhbnQ7IH1cbiAgdHIuc2hvdy1mb3ItcHJpbnQge1xuICAgIGRpc3BsYXk6IHRhYmxlLXJvdyAhaW1wb3J0YW50OyB9XG4gIHRkLnNob3ctZm9yLXByaW50IHtcbiAgICBkaXNwbGF5OiB0YWJsZS1jZWxsICFpbXBvcnRhbnQ7IH1cbiAgdGguc2hvdy1mb3ItcHJpbnQge1xuICAgIGRpc3BsYXk6IHRhYmxlLWNlbGwgIWltcG9ydGFudDsgfVxuICBhLFxuICBhOnZpc2l0ZWQge1xuICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lOyB9XG4gIGFbaHJlZl06YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwiIChcIiBhdHRyKGhyZWYpIFwiKVwiOyB9XG4gIC5pciBhOmFmdGVyLFxuICBhW2hyZWZePSdqYXZhc2NyaXB0OiddOmFmdGVyLFxuICBhW2hyZWZePScjJ106YWZ0ZXIge1xuICAgIGNvbnRlbnQ6ICcnOyB9XG4gIGFiYnJbdGl0bGVdOmFmdGVyIHtcbiAgICBjb250ZW50OiBcIiAoXCIgYXR0cih0aXRsZSkgXCIpXCI7IH1cbiAgcHJlLFxuICBibG9ja3F1b3RlIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjOGE4YThhO1xuICAgIHBhZ2UtYnJlYWstaW5zaWRlOiBhdm9pZDsgfVxuICB0aGVhZCB7XG4gICAgZGlzcGxheTogdGFibGUtaGVhZGVyLWdyb3VwOyB9XG4gIHRyLFxuICBpbWcge1xuICAgIHBhZ2UtYnJlYWstaW5zaWRlOiBhdm9pZDsgfVxuICBpbWcge1xuICAgIG1heC13aWR0aDogMTAwJSAhaW1wb3J0YW50OyB9XG4gIEBwYWdlIHtcbiAgICBtYXJnaW46IDAuNWNtOyB9XG4gIHAsXG4gIGgyLFxuICBoMyB7XG4gICAgb3JwaGFuczogMztcbiAgICB3aWRvd3M6IDM7IH1cbiAgaDIsXG4gIGgzIHtcbiAgICBwYWdlLWJyZWFrLWFmdGVyOiBhdm9pZDsgfVxuICAucHJpbnQtYnJlYWstaW5zaWRlIHtcbiAgICBwYWdlLWJyZWFrLWluc2lkZTogYXV0bzsgfSB9XG5cbi5idXR0b24ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIG1hcmdpbjogMCAwIDFyZW0gMDtcbiAgZm9udC1mYW1pbHk6IGluaGVyaXQ7XG4gIHBhZGRpbmc6IDAuODVlbSAxZW07XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbiAgYm9yZGVyOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMC4yNXMgZWFzZS1vdXQsIGNvbG9yIDAuMjVzIGVhc2Utb3V0O1xuICBmb250LXNpemU6IDAuOXJlbTtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMkRDOUQ3O1xuICBjb2xvcjogI2ZmZmZmZjsgfVxuICBbZGF0YS13aGF0aW5wdXQ9J21vdXNlJ10gLmJ1dHRvbiB7XG4gICAgb3V0bGluZTogMDsgfVxuICAuYnV0dG9uOmhvdmVyLCAuYnV0dG9uOmZvY3VzIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMjNhZGJhO1xuICAgIGNvbG9yOiAjZmZmZmZmOyB9XG4gIC5idXR0b24udGlueSB7XG4gICAgZm9udC1zaXplOiAwLjZyZW07IH1cbiAgLmJ1dHRvbi5zbWFsbCB7XG4gICAgZm9udC1zaXplOiAwLjc1cmVtOyB9XG4gIC5idXR0b24ubGFyZ2Uge1xuICAgIGZvbnQtc2l6ZTogMS4yNXJlbTsgfVxuICAuYnV0dG9uLmV4cGFuZGVkIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgbWFyZ2luLWxlZnQ6IDA7IH1cbiAgLmJ1dHRvbi5wcmltYXJ5IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMkRDOUQ3O1xuICAgIGNvbG9yOiAjMDAwMDAwOyB9XG4gICAgLmJ1dHRvbi5wcmltYXJ5OmhvdmVyLCAuYnV0dG9uLnByaW1hcnk6Zm9jdXMge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzIxYTNhZjtcbiAgICAgIGNvbG9yOiAjMDAwMDAwOyB9XG4gIC5idXR0b24uc2Vjb25kYXJ5IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjRkNCNTM2O1xuICAgIGNvbG9yOiAjMDAwMDAwOyB9XG4gICAgLmJ1dHRvbi5zZWNvbmRhcnk6aG92ZXIsIC5idXR0b24uc2Vjb25kYXJ5OmZvY3VzIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmMTljMDQ7XG4gICAgICBjb2xvcjogIzAwMDAwMDsgfVxuICAuYnV0dG9uLnN1Y2Nlc3Mge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMzYWRiNzY7XG4gICAgY29sb3I6ICMwMDAwMDA7IH1cbiAgICAuYnV0dG9uLnN1Y2Nlc3M6aG92ZXIsIC5idXR0b24uc3VjY2Vzczpmb2N1cyB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMjJiYjViO1xuICAgICAgY29sb3I6ICMwMDAwMDA7IH1cbiAgLmJ1dHRvbi53YXJuaW5nIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZhZTAwO1xuICAgIGNvbG9yOiAjMDAwMDAwOyB9XG4gICAgLmJ1dHRvbi53YXJuaW5nOmhvdmVyLCAuYnV0dG9uLndhcm5pbmc6Zm9jdXMge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2NjOGIwMDtcbiAgICAgIGNvbG9yOiAjMDAwMDAwOyB9XG4gIC5idXR0b24uYWxlcnQge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNjYzRiMzc7XG4gICAgY29sb3I6ICMwMDAwMDA7IH1cbiAgICAuYnV0dG9uLmFsZXJ0OmhvdmVyLCAuYnV0dG9uLmFsZXJ0OmZvY3VzIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNhNTNiMmE7XG4gICAgICBjb2xvcjogIzAwMDAwMDsgfVxuICAuYnV0dG9uLmRpc2FibGVkLCAuYnV0dG9uW2Rpc2FibGVkXSB7XG4gICAgb3BhY2l0eTogMC4yNTtcbiAgICBjdXJzb3I6IG5vdC1hbGxvd2VkOyB9XG4gICAgLmJ1dHRvbi5kaXNhYmxlZCwgLmJ1dHRvbi5kaXNhYmxlZDpob3ZlciwgLmJ1dHRvbi5kaXNhYmxlZDpmb2N1cywgLmJ1dHRvbltkaXNhYmxlZF0sIC5idXR0b25bZGlzYWJsZWRdOmhvdmVyLCAuYnV0dG9uW2Rpc2FibGVkXTpmb2N1cyB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMkRDOUQ3O1xuICAgICAgY29sb3I6ICNmZmZmZmY7IH1cbiAgICAuYnV0dG9uLmRpc2FibGVkLnByaW1hcnksIC5idXR0b25bZGlzYWJsZWRdLnByaW1hcnkge1xuICAgICAgb3BhY2l0eTogMC4yNTtcbiAgICAgIGN1cnNvcjogbm90LWFsbG93ZWQ7IH1cbiAgICAgIC5idXR0b24uZGlzYWJsZWQucHJpbWFyeSwgLmJ1dHRvbi5kaXNhYmxlZC5wcmltYXJ5OmhvdmVyLCAuYnV0dG9uLmRpc2FibGVkLnByaW1hcnk6Zm9jdXMsIC5idXR0b25bZGlzYWJsZWRdLnByaW1hcnksIC5idXR0b25bZGlzYWJsZWRdLnByaW1hcnk6aG92ZXIsIC5idXR0b25bZGlzYWJsZWRdLnByaW1hcnk6Zm9jdXMge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMkRDOUQ3O1xuICAgICAgICBjb2xvcjogIzAwMDAwMDsgfVxuICAgIC5idXR0b24uZGlzYWJsZWQuc2Vjb25kYXJ5LCAuYnV0dG9uW2Rpc2FibGVkXS5zZWNvbmRhcnkge1xuICAgICAgb3BhY2l0eTogMC4yNTtcbiAgICAgIGN1cnNvcjogbm90LWFsbG93ZWQ7IH1cbiAgICAgIC5idXR0b24uZGlzYWJsZWQuc2Vjb25kYXJ5LCAuYnV0dG9uLmRpc2FibGVkLnNlY29uZGFyeTpob3ZlciwgLmJ1dHRvbi5kaXNhYmxlZC5zZWNvbmRhcnk6Zm9jdXMsIC5idXR0b25bZGlzYWJsZWRdLnNlY29uZGFyeSwgLmJ1dHRvbltkaXNhYmxlZF0uc2Vjb25kYXJ5OmhvdmVyLCAuYnV0dG9uW2Rpc2FibGVkXS5zZWNvbmRhcnk6Zm9jdXMge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjRkNCNTM2O1xuICAgICAgICBjb2xvcjogIzAwMDAwMDsgfVxuICAgIC5idXR0b24uZGlzYWJsZWQuc3VjY2VzcywgLmJ1dHRvbltkaXNhYmxlZF0uc3VjY2VzcyB7XG4gICAgICBvcGFjaXR5OiAwLjI1O1xuICAgICAgY3Vyc29yOiBub3QtYWxsb3dlZDsgfVxuICAgICAgLmJ1dHRvbi5kaXNhYmxlZC5zdWNjZXNzLCAuYnV0dG9uLmRpc2FibGVkLnN1Y2Nlc3M6aG92ZXIsIC5idXR0b24uZGlzYWJsZWQuc3VjY2Vzczpmb2N1cywgLmJ1dHRvbltkaXNhYmxlZF0uc3VjY2VzcywgLmJ1dHRvbltkaXNhYmxlZF0uc3VjY2Vzczpob3ZlciwgLmJ1dHRvbltkaXNhYmxlZF0uc3VjY2Vzczpmb2N1cyB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICMzYWRiNzY7XG4gICAgICAgIGNvbG9yOiAjMDAwMDAwOyB9XG4gICAgLmJ1dHRvbi5kaXNhYmxlZC53YXJuaW5nLCAuYnV0dG9uW2Rpc2FibGVkXS53YXJuaW5nIHtcbiAgICAgIG9wYWNpdHk6IDAuMjU7XG4gICAgICBjdXJzb3I6IG5vdC1hbGxvd2VkOyB9XG4gICAgICAuYnV0dG9uLmRpc2FibGVkLndhcm5pbmcsIC5idXR0b24uZGlzYWJsZWQud2FybmluZzpob3ZlciwgLmJ1dHRvbi5kaXNhYmxlZC53YXJuaW5nOmZvY3VzLCAuYnV0dG9uW2Rpc2FibGVkXS53YXJuaW5nLCAuYnV0dG9uW2Rpc2FibGVkXS53YXJuaW5nOmhvdmVyLCAuYnV0dG9uW2Rpc2FibGVkXS53YXJuaW5nOmZvY3VzIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmYWUwMDtcbiAgICAgICAgY29sb3I6ICMwMDAwMDA7IH1cbiAgICAuYnV0dG9uLmRpc2FibGVkLmFsZXJ0LCAuYnV0dG9uW2Rpc2FibGVkXS5hbGVydCB7XG4gICAgICBvcGFjaXR5OiAwLjI1O1xuICAgICAgY3Vyc29yOiBub3QtYWxsb3dlZDsgfVxuICAgICAgLmJ1dHRvbi5kaXNhYmxlZC5hbGVydCwgLmJ1dHRvbi5kaXNhYmxlZC5hbGVydDpob3ZlciwgLmJ1dHRvbi5kaXNhYmxlZC5hbGVydDpmb2N1cywgLmJ1dHRvbltkaXNhYmxlZF0uYWxlcnQsIC5idXR0b25bZGlzYWJsZWRdLmFsZXJ0OmhvdmVyLCAuYnV0dG9uW2Rpc2FibGVkXS5hbGVydDpmb2N1cyB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNjYzRiMzc7XG4gICAgICAgIGNvbG9yOiAjMDAwMDAwOyB9XG4gIC5idXR0b24uaG9sbG93IHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjMkRDOUQ3O1xuICAgIGNvbG9yOiAjMkRDOUQ3OyB9XG4gICAgLmJ1dHRvbi5ob2xsb3csIC5idXR0b24uaG9sbG93OmhvdmVyLCAuYnV0dG9uLmhvbGxvdzpmb2N1cyB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsgfVxuICAgIC5idXR0b24uaG9sbG93LmRpc2FibGVkLCAuYnV0dG9uLmhvbGxvdy5kaXNhYmxlZDpob3ZlciwgLmJ1dHRvbi5ob2xsb3cuZGlzYWJsZWQ6Zm9jdXMsIC5idXR0b24uaG9sbG93W2Rpc2FibGVkXSwgLmJ1dHRvbi5ob2xsb3dbZGlzYWJsZWRdOmhvdmVyLCAuYnV0dG9uLmhvbGxvd1tkaXNhYmxlZF06Zm9jdXMge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7IH1cbiAgICAuYnV0dG9uLmhvbGxvdzpob3ZlciwgLmJ1dHRvbi5ob2xsb3c6Zm9jdXMge1xuICAgICAgYm9yZGVyLWNvbG9yOiAjMTU2NjZkO1xuICAgICAgY29sb3I6ICMxNTY2NmQ7IH1cbiAgICAgIC5idXR0b24uaG9sbG93OmhvdmVyLmRpc2FibGVkLCAuYnV0dG9uLmhvbGxvdzpob3ZlcltkaXNhYmxlZF0sIC5idXR0b24uaG9sbG93OmZvY3VzLmRpc2FibGVkLCAuYnV0dG9uLmhvbGxvdzpmb2N1c1tkaXNhYmxlZF0ge1xuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAjMkRDOUQ3O1xuICAgICAgICBjb2xvcjogIzJEQzlENzsgfVxuICAgIC5idXR0b24uaG9sbG93LnByaW1hcnkge1xuICAgICAgYm9yZGVyOiAxcHggc29saWQgIzJEQzlENztcbiAgICAgIGNvbG9yOiAjMkRDOUQ3OyB9XG4gICAgICAuYnV0dG9uLmhvbGxvdy5wcmltYXJ5OmhvdmVyLCAuYnV0dG9uLmhvbGxvdy5wcmltYXJ5OmZvY3VzIHtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAjMTU2NjZkO1xuICAgICAgICBjb2xvcjogIzE1NjY2ZDsgfVxuICAgICAgICAuYnV0dG9uLmhvbGxvdy5wcmltYXJ5OmhvdmVyLmRpc2FibGVkLCAuYnV0dG9uLmhvbGxvdy5wcmltYXJ5OmhvdmVyW2Rpc2FibGVkXSwgLmJ1dHRvbi5ob2xsb3cucHJpbWFyeTpmb2N1cy5kaXNhYmxlZCwgLmJ1dHRvbi5ob2xsb3cucHJpbWFyeTpmb2N1c1tkaXNhYmxlZF0ge1xuICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICMyREM5RDc7XG4gICAgICAgICAgY29sb3I6ICMyREM5RDc7IH1cbiAgICAuYnV0dG9uLmhvbGxvdy5zZWNvbmRhcnkge1xuICAgICAgYm9yZGVyOiAxcHggc29saWQgI0ZDQjUzNjtcbiAgICAgIGNvbG9yOiAjRkNCNTM2OyB9XG4gICAgICAuYnV0dG9uLmhvbGxvdy5zZWNvbmRhcnk6aG92ZXIsIC5idXR0b24uaG9sbG93LnNlY29uZGFyeTpmb2N1cyB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogIzk3NjIwMjtcbiAgICAgICAgY29sb3I6ICM5NzYyMDI7IH1cbiAgICAgICAgLmJ1dHRvbi5ob2xsb3cuc2Vjb25kYXJ5OmhvdmVyLmRpc2FibGVkLCAuYnV0dG9uLmhvbGxvdy5zZWNvbmRhcnk6aG92ZXJbZGlzYWJsZWRdLCAuYnV0dG9uLmhvbGxvdy5zZWNvbmRhcnk6Zm9jdXMuZGlzYWJsZWQsIC5idXR0b24uaG9sbG93LnNlY29uZGFyeTpmb2N1c1tkaXNhYmxlZF0ge1xuICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICNGQ0I1MzY7XG4gICAgICAgICAgY29sb3I6ICNGQ0I1MzY7IH1cbiAgICAuYnV0dG9uLmhvbGxvdy5zdWNjZXNzIHtcbiAgICAgIGJvcmRlcjogMXB4IHNvbGlkICMzYWRiNzY7XG4gICAgICBjb2xvcjogIzNhZGI3NjsgfVxuICAgICAgLmJ1dHRvbi5ob2xsb3cuc3VjY2Vzczpob3ZlciwgLmJ1dHRvbi5ob2xsb3cuc3VjY2Vzczpmb2N1cyB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogIzE1NzUzOTtcbiAgICAgICAgY29sb3I6ICMxNTc1Mzk7IH1cbiAgICAgICAgLmJ1dHRvbi5ob2xsb3cuc3VjY2Vzczpob3Zlci5kaXNhYmxlZCwgLmJ1dHRvbi5ob2xsb3cuc3VjY2Vzczpob3ZlcltkaXNhYmxlZF0sIC5idXR0b24uaG9sbG93LnN1Y2Nlc3M6Zm9jdXMuZGlzYWJsZWQsIC5idXR0b24uaG9sbG93LnN1Y2Nlc3M6Zm9jdXNbZGlzYWJsZWRdIHtcbiAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAjM2FkYjc2O1xuICAgICAgICAgIGNvbG9yOiAjM2FkYjc2OyB9XG4gICAgLmJ1dHRvbi5ob2xsb3cud2FybmluZyB7XG4gICAgICBib3JkZXI6IDFweCBzb2xpZCAjZmZhZTAwO1xuICAgICAgY29sb3I6ICNmZmFlMDA7IH1cbiAgICAgIC5idXR0b24uaG9sbG93Lndhcm5pbmc6aG92ZXIsIC5idXR0b24uaG9sbG93Lndhcm5pbmc6Zm9jdXMge1xuICAgICAgICBib3JkZXItY29sb3I6ICM4MDU3MDA7XG4gICAgICAgIGNvbG9yOiAjODA1NzAwOyB9XG4gICAgICAgIC5idXR0b24uaG9sbG93Lndhcm5pbmc6aG92ZXIuZGlzYWJsZWQsIC5idXR0b24uaG9sbG93Lndhcm5pbmc6aG92ZXJbZGlzYWJsZWRdLCAuYnV0dG9uLmhvbGxvdy53YXJuaW5nOmZvY3VzLmRpc2FibGVkLCAuYnV0dG9uLmhvbGxvdy53YXJuaW5nOmZvY3VzW2Rpc2FibGVkXSB7XG4gICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgI2ZmYWUwMDtcbiAgICAgICAgICBjb2xvcjogI2ZmYWUwMDsgfVxuICAgIC5idXR0b24uaG9sbG93LmFsZXJ0IHtcbiAgICAgIGJvcmRlcjogMXB4IHNvbGlkICNjYzRiMzc7XG4gICAgICBjb2xvcjogI2NjNGIzNzsgfVxuICAgICAgLmJ1dHRvbi5ob2xsb3cuYWxlcnQ6aG92ZXIsIC5idXR0b24uaG9sbG93LmFsZXJ0OmZvY3VzIHtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAjNjcyNTFhO1xuICAgICAgICBjb2xvcjogIzY3MjUxYTsgfVxuICAgICAgICAuYnV0dG9uLmhvbGxvdy5hbGVydDpob3Zlci5kaXNhYmxlZCwgLmJ1dHRvbi5ob2xsb3cuYWxlcnQ6aG92ZXJbZGlzYWJsZWRdLCAuYnV0dG9uLmhvbGxvdy5hbGVydDpmb2N1cy5kaXNhYmxlZCwgLmJ1dHRvbi5ob2xsb3cuYWxlcnQ6Zm9jdXNbZGlzYWJsZWRdIHtcbiAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAjY2M0YjM3O1xuICAgICAgICAgIGNvbG9yOiAjY2M0YjM3OyB9XG4gIC5idXR0b24uY2xlYXIge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICMyREM5RDc7XG4gICAgY29sb3I6ICMyREM5RDc7IH1cbiAgICAuYnV0dG9uLmNsZWFyLCAuYnV0dG9uLmNsZWFyOmhvdmVyLCAuYnV0dG9uLmNsZWFyOmZvY3VzIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50OyB9XG4gICAgLmJ1dHRvbi5jbGVhci5kaXNhYmxlZCwgLmJ1dHRvbi5jbGVhci5kaXNhYmxlZDpob3ZlciwgLmJ1dHRvbi5jbGVhci5kaXNhYmxlZDpmb2N1cywgLmJ1dHRvbi5jbGVhcltkaXNhYmxlZF0sIC5idXR0b24uY2xlYXJbZGlzYWJsZWRdOmhvdmVyLCAuYnV0dG9uLmNsZWFyW2Rpc2FibGVkXTpmb2N1cyB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsgfVxuICAgIC5idXR0b24uY2xlYXI6aG92ZXIsIC5idXR0b24uY2xlYXI6Zm9jdXMge1xuICAgICAgYm9yZGVyLWNvbG9yOiAjMTU2NjZkO1xuICAgICAgY29sb3I6ICMxNTY2NmQ7IH1cbiAgICAgIC5idXR0b24uY2xlYXI6aG92ZXIuZGlzYWJsZWQsIC5idXR0b24uY2xlYXI6aG92ZXJbZGlzYWJsZWRdLCAuYnV0dG9uLmNsZWFyOmZvY3VzLmRpc2FibGVkLCAuYnV0dG9uLmNsZWFyOmZvY3VzW2Rpc2FibGVkXSB7XG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICMyREM5RDc7XG4gICAgICAgIGNvbG9yOiAjMkRDOUQ3OyB9XG4gICAgLmJ1dHRvbi5jbGVhciwgLmJ1dHRvbi5jbGVhci5kaXNhYmxlZCwgLmJ1dHRvbi5jbGVhcltkaXNhYmxlZF0sIC5idXR0b24uY2xlYXI6aG92ZXIsIC5idXR0b24uY2xlYXI6aG92ZXIuZGlzYWJsZWQsIC5idXR0b24uY2xlYXI6aG92ZXJbZGlzYWJsZWRdLCAuYnV0dG9uLmNsZWFyOmZvY3VzLCAuYnV0dG9uLmNsZWFyOmZvY3VzLmRpc2FibGVkLCAuYnV0dG9uLmNsZWFyOmZvY3VzW2Rpc2FibGVkXSB7XG4gICAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50OyB9XG4gICAgLmJ1dHRvbi5jbGVhci5wcmltYXJ5IHtcbiAgICAgIGJvcmRlcjogMXB4IHNvbGlkICMyREM5RDc7XG4gICAgICBjb2xvcjogIzJEQzlENzsgfVxuICAgICAgLmJ1dHRvbi5jbGVhci5wcmltYXJ5OmhvdmVyLCAuYnV0dG9uLmNsZWFyLnByaW1hcnk6Zm9jdXMge1xuICAgICAgICBib3JkZXItY29sb3I6ICMxNTY2NmQ7XG4gICAgICAgIGNvbG9yOiAjMTU2NjZkOyB9XG4gICAgICAgIC5idXR0b24uY2xlYXIucHJpbWFyeTpob3Zlci5kaXNhYmxlZCwgLmJ1dHRvbi5jbGVhci5wcmltYXJ5OmhvdmVyW2Rpc2FibGVkXSwgLmJ1dHRvbi5jbGVhci5wcmltYXJ5OmZvY3VzLmRpc2FibGVkLCAuYnV0dG9uLmNsZWFyLnByaW1hcnk6Zm9jdXNbZGlzYWJsZWRdIHtcbiAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAjMkRDOUQ3O1xuICAgICAgICAgIGNvbG9yOiAjMkRDOUQ3OyB9XG4gICAgICAuYnV0dG9uLmNsZWFyLnByaW1hcnksIC5idXR0b24uY2xlYXIucHJpbWFyeS5kaXNhYmxlZCwgLmJ1dHRvbi5jbGVhci5wcmltYXJ5W2Rpc2FibGVkXSwgLmJ1dHRvbi5jbGVhci5wcmltYXJ5OmhvdmVyLCAuYnV0dG9uLmNsZWFyLnByaW1hcnk6aG92ZXIuZGlzYWJsZWQsIC5idXR0b24uY2xlYXIucHJpbWFyeTpob3ZlcltkaXNhYmxlZF0sIC5idXR0b24uY2xlYXIucHJpbWFyeTpmb2N1cywgLmJ1dHRvbi5jbGVhci5wcmltYXJ5OmZvY3VzLmRpc2FibGVkLCAuYnV0dG9uLmNsZWFyLnByaW1hcnk6Zm9jdXNbZGlzYWJsZWRdIHtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDsgfVxuICAgIC5idXR0b24uY2xlYXIuc2Vjb25kYXJ5IHtcbiAgICAgIGJvcmRlcjogMXB4IHNvbGlkICNGQ0I1MzY7XG4gICAgICBjb2xvcjogI0ZDQjUzNjsgfVxuICAgICAgLmJ1dHRvbi5jbGVhci5zZWNvbmRhcnk6aG92ZXIsIC5idXR0b24uY2xlYXIuc2Vjb25kYXJ5OmZvY3VzIHtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAjOTc2MjAyO1xuICAgICAgICBjb2xvcjogIzk3NjIwMjsgfVxuICAgICAgICAuYnV0dG9uLmNsZWFyLnNlY29uZGFyeTpob3Zlci5kaXNhYmxlZCwgLmJ1dHRvbi5jbGVhci5zZWNvbmRhcnk6aG92ZXJbZGlzYWJsZWRdLCAuYnV0dG9uLmNsZWFyLnNlY29uZGFyeTpmb2N1cy5kaXNhYmxlZCwgLmJ1dHRvbi5jbGVhci5zZWNvbmRhcnk6Zm9jdXNbZGlzYWJsZWRdIHtcbiAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAjRkNCNTM2O1xuICAgICAgICAgIGNvbG9yOiAjRkNCNTM2OyB9XG4gICAgICAuYnV0dG9uLmNsZWFyLnNlY29uZGFyeSwgLmJ1dHRvbi5jbGVhci5zZWNvbmRhcnkuZGlzYWJsZWQsIC5idXR0b24uY2xlYXIuc2Vjb25kYXJ5W2Rpc2FibGVkXSwgLmJ1dHRvbi5jbGVhci5zZWNvbmRhcnk6aG92ZXIsIC5idXR0b24uY2xlYXIuc2Vjb25kYXJ5OmhvdmVyLmRpc2FibGVkLCAuYnV0dG9uLmNsZWFyLnNlY29uZGFyeTpob3ZlcltkaXNhYmxlZF0sIC5idXR0b24uY2xlYXIuc2Vjb25kYXJ5OmZvY3VzLCAuYnV0dG9uLmNsZWFyLnNlY29uZGFyeTpmb2N1cy5kaXNhYmxlZCwgLmJ1dHRvbi5jbGVhci5zZWNvbmRhcnk6Zm9jdXNbZGlzYWJsZWRdIHtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDsgfVxuICAgIC5idXR0b24uY2xlYXIuc3VjY2VzcyB7XG4gICAgICBib3JkZXI6IDFweCBzb2xpZCAjM2FkYjc2O1xuICAgICAgY29sb3I6ICMzYWRiNzY7IH1cbiAgICAgIC5idXR0b24uY2xlYXIuc3VjY2Vzczpob3ZlciwgLmJ1dHRvbi5jbGVhci5zdWNjZXNzOmZvY3VzIHtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAjMTU3NTM5O1xuICAgICAgICBjb2xvcjogIzE1NzUzOTsgfVxuICAgICAgICAuYnV0dG9uLmNsZWFyLnN1Y2Nlc3M6aG92ZXIuZGlzYWJsZWQsIC5idXR0b24uY2xlYXIuc3VjY2Vzczpob3ZlcltkaXNhYmxlZF0sIC5idXR0b24uY2xlYXIuc3VjY2Vzczpmb2N1cy5kaXNhYmxlZCwgLmJ1dHRvbi5jbGVhci5zdWNjZXNzOmZvY3VzW2Rpc2FibGVkXSB7XG4gICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgIzNhZGI3NjtcbiAgICAgICAgICBjb2xvcjogIzNhZGI3NjsgfVxuICAgICAgLmJ1dHRvbi5jbGVhci5zdWNjZXNzLCAuYnV0dG9uLmNsZWFyLnN1Y2Nlc3MuZGlzYWJsZWQsIC5idXR0b24uY2xlYXIuc3VjY2Vzc1tkaXNhYmxlZF0sIC5idXR0b24uY2xlYXIuc3VjY2Vzczpob3ZlciwgLmJ1dHRvbi5jbGVhci5zdWNjZXNzOmhvdmVyLmRpc2FibGVkLCAuYnV0dG9uLmNsZWFyLnN1Y2Nlc3M6aG92ZXJbZGlzYWJsZWRdLCAuYnV0dG9uLmNsZWFyLnN1Y2Nlc3M6Zm9jdXMsIC5idXR0b24uY2xlYXIuc3VjY2Vzczpmb2N1cy5kaXNhYmxlZCwgLmJ1dHRvbi5jbGVhci5zdWNjZXNzOmZvY3VzW2Rpc2FibGVkXSB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7IH1cbiAgICAuYnV0dG9uLmNsZWFyLndhcm5pbmcge1xuICAgICAgYm9yZGVyOiAxcHggc29saWQgI2ZmYWUwMDtcbiAgICAgIGNvbG9yOiAjZmZhZTAwOyB9XG4gICAgICAuYnV0dG9uLmNsZWFyLndhcm5pbmc6aG92ZXIsIC5idXR0b24uY2xlYXIud2FybmluZzpmb2N1cyB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogIzgwNTcwMDtcbiAgICAgICAgY29sb3I6ICM4MDU3MDA7IH1cbiAgICAgICAgLmJ1dHRvbi5jbGVhci53YXJuaW5nOmhvdmVyLmRpc2FibGVkLCAuYnV0dG9uLmNsZWFyLndhcm5pbmc6aG92ZXJbZGlzYWJsZWRdLCAuYnV0dG9uLmNsZWFyLndhcm5pbmc6Zm9jdXMuZGlzYWJsZWQsIC5idXR0b24uY2xlYXIud2FybmluZzpmb2N1c1tkaXNhYmxlZF0ge1xuICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICNmZmFlMDA7XG4gICAgICAgICAgY29sb3I6ICNmZmFlMDA7IH1cbiAgICAgIC5idXR0b24uY2xlYXIud2FybmluZywgLmJ1dHRvbi5jbGVhci53YXJuaW5nLmRpc2FibGVkLCAuYnV0dG9uLmNsZWFyLndhcm5pbmdbZGlzYWJsZWRdLCAuYnV0dG9uLmNsZWFyLndhcm5pbmc6aG92ZXIsIC5idXR0b24uY2xlYXIud2FybmluZzpob3Zlci5kaXNhYmxlZCwgLmJ1dHRvbi5jbGVhci53YXJuaW5nOmhvdmVyW2Rpc2FibGVkXSwgLmJ1dHRvbi5jbGVhci53YXJuaW5nOmZvY3VzLCAuYnV0dG9uLmNsZWFyLndhcm5pbmc6Zm9jdXMuZGlzYWJsZWQsIC5idXR0b24uY2xlYXIud2FybmluZzpmb2N1c1tkaXNhYmxlZF0ge1xuICAgICAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50OyB9XG4gICAgLmJ1dHRvbi5jbGVhci5hbGVydCB7XG4gICAgICBib3JkZXI6IDFweCBzb2xpZCAjY2M0YjM3O1xuICAgICAgY29sb3I6ICNjYzRiMzc7IH1cbiAgICAgIC5idXR0b24uY2xlYXIuYWxlcnQ6aG92ZXIsIC5idXR0b24uY2xlYXIuYWxlcnQ6Zm9jdXMge1xuICAgICAgICBib3JkZXItY29sb3I6ICM2NzI1MWE7XG4gICAgICAgIGNvbG9yOiAjNjcyNTFhOyB9XG4gICAgICAgIC5idXR0b24uY2xlYXIuYWxlcnQ6aG92ZXIuZGlzYWJsZWQsIC5idXR0b24uY2xlYXIuYWxlcnQ6aG92ZXJbZGlzYWJsZWRdLCAuYnV0dG9uLmNsZWFyLmFsZXJ0OmZvY3VzLmRpc2FibGVkLCAuYnV0dG9uLmNsZWFyLmFsZXJ0OmZvY3VzW2Rpc2FibGVkXSB7XG4gICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgI2NjNGIzNztcbiAgICAgICAgICBjb2xvcjogI2NjNGIzNzsgfVxuICAgICAgLmJ1dHRvbi5jbGVhci5hbGVydCwgLmJ1dHRvbi5jbGVhci5hbGVydC5kaXNhYmxlZCwgLmJ1dHRvbi5jbGVhci5hbGVydFtkaXNhYmxlZF0sIC5idXR0b24uY2xlYXIuYWxlcnQ6aG92ZXIsIC5idXR0b24uY2xlYXIuYWxlcnQ6aG92ZXIuZGlzYWJsZWQsIC5idXR0b24uY2xlYXIuYWxlcnQ6aG92ZXJbZGlzYWJsZWRdLCAuYnV0dG9uLmNsZWFyLmFsZXJ0OmZvY3VzLCAuYnV0dG9uLmNsZWFyLmFsZXJ0OmZvY3VzLmRpc2FibGVkLCAuYnV0dG9uLmNsZWFyLmFsZXJ0OmZvY3VzW2Rpc2FibGVkXSB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7IH1cbiAgLmJ1dHRvbi5kcm9wZG93bjo6YWZ0ZXIge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAwO1xuICAgIGhlaWdodDogMDtcbiAgICBib3JkZXI6IGluc2V0IDAuNGVtO1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGJvcmRlci1ib3R0b20td2lkdGg6IDA7XG4gICAgYm9yZGVyLXRvcC1zdHlsZTogc29saWQ7XG4gICAgYm9yZGVyLWNvbG9yOiAjZmZmZmZmIHRyYW5zcGFyZW50IHRyYW5zcGFyZW50O1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB0b3A6IDAuNGVtO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBmbG9hdDogcmlnaHQ7XG4gICAgbWFyZ2luLWxlZnQ6IDFlbTsgfVxuICAuYnV0dG9uLmRyb3Bkb3duLmhvbGxvdzo6YWZ0ZXIge1xuICAgIGJvcmRlci10b3AtY29sb3I6ICMyREM5RDc7IH1cbiAgLmJ1dHRvbi5kcm9wZG93bi5ob2xsb3cucHJpbWFyeTo6YWZ0ZXIge1xuICAgIGJvcmRlci10b3AtY29sb3I6ICMyREM5RDc7IH1cbiAgLmJ1dHRvbi5kcm9wZG93bi5ob2xsb3cuc2Vjb25kYXJ5OjphZnRlciB7XG4gICAgYm9yZGVyLXRvcC1jb2xvcjogI0ZDQjUzNjsgfVxuICAuYnV0dG9uLmRyb3Bkb3duLmhvbGxvdy5zdWNjZXNzOjphZnRlciB7XG4gICAgYm9yZGVyLXRvcC1jb2xvcjogIzNhZGI3NjsgfVxuICAuYnV0dG9uLmRyb3Bkb3duLmhvbGxvdy53YXJuaW5nOjphZnRlciB7XG4gICAgYm9yZGVyLXRvcC1jb2xvcjogI2ZmYWUwMDsgfVxuICAuYnV0dG9uLmRyb3Bkb3duLmhvbGxvdy5hbGVydDo6YWZ0ZXIge1xuICAgIGJvcmRlci10b3AtY29sb3I6ICNjYzRiMzc7IH1cbiAgLmJ1dHRvbi5hcnJvdy1vbmx5OjphZnRlciB7XG4gICAgdG9wOiAtMC4xZW07XG4gICAgZmxvYXQ6IG5vbmU7XG4gICAgbWFyZ2luLWxlZnQ6IDA7IH1cblxuYS5idXR0b246aG92ZXIsIGEuYnV0dG9uOmZvY3VzIHtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lOyB9XG5cblt0eXBlPSd0ZXh0J10sIFt0eXBlPSdwYXNzd29yZCddLCBbdHlwZT0nZGF0ZSddLCBbdHlwZT0nZGF0ZXRpbWUnXSwgW3R5cGU9J2RhdGV0aW1lLWxvY2FsJ10sIFt0eXBlPSdtb250aCddLCBbdHlwZT0nd2VlayddLCBbdHlwZT0nZW1haWwnXSwgW3R5cGU9J251bWJlciddLCBbdHlwZT0nc2VhcmNoJ10sIFt0eXBlPSd0ZWwnXSwgW3R5cGU9J3RpbWUnXSwgW3R5cGU9J3VybCddLCBbdHlwZT0nY29sb3InXSxcbnRleHRhcmVhIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDIuOTM3NXJlbTtcbiAgbWFyZ2luOiAwIDAgMXJlbTtcbiAgcGFkZGluZzogMC43NXJlbTtcbiAgYm9yZGVyOiAxcHggc29saWQgI2U2ZTZlNjtcbiAgYm9yZGVyLXJhZGl1czogMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2Y3ZjdmNztcbiAgYm94LXNoYWRvdzogbm9uZTtcbiAgZm9udC1mYW1pbHk6IGluaGVyaXQ7XG4gIGZvbnQtc2l6ZTogMXJlbTtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgbGluZS1oZWlnaHQ6IDEuNTtcbiAgY29sb3I6ICMwMDAwMDA7XG4gIHRyYW5zaXRpb246IGJveC1zaGFkb3cgMC41cywgYm9yZGVyLWNvbG9yIDAuMjVzIGVhc2UtaW4tb3V0O1xuICBhcHBlYXJhbmNlOiBub25lOyB9XG4gIFt0eXBlPSd0ZXh0J106Zm9jdXMsIFt0eXBlPSdwYXNzd29yZCddOmZvY3VzLCBbdHlwZT0nZGF0ZSddOmZvY3VzLCBbdHlwZT0nZGF0ZXRpbWUnXTpmb2N1cywgW3R5cGU9J2RhdGV0aW1lLWxvY2FsJ106Zm9jdXMsIFt0eXBlPSdtb250aCddOmZvY3VzLCBbdHlwZT0nd2VlayddOmZvY3VzLCBbdHlwZT0nZW1haWwnXTpmb2N1cywgW3R5cGU9J251bWJlciddOmZvY3VzLCBbdHlwZT0nc2VhcmNoJ106Zm9jdXMsIFt0eXBlPSd0ZWwnXTpmb2N1cywgW3R5cGU9J3RpbWUnXTpmb2N1cywgW3R5cGU9J3VybCddOmZvY3VzLCBbdHlwZT0nY29sb3InXTpmb2N1cyxcbiAgdGV4dGFyZWE6Zm9jdXMge1xuICAgIG91dGxpbmU6IG5vbmU7XG4gICAgYm9yZGVyOiAycHggc29saWQgIzJEQzlENztcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmZmZmO1xuICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gICAgdHJhbnNpdGlvbjogYm94LXNoYWRvdyAwLjVzLCBib3JkZXItY29sb3IgMC4yNXMgZWFzZS1pbi1vdXQ7IH1cblxudGV4dGFyZWEge1xuICBtYXgtd2lkdGg6IDEwMCU7IH1cbiAgdGV4dGFyZWFbcm93c10ge1xuICAgIGhlaWdodDogYXV0bzsgfVxuXG5pbnB1dDo6cGxhY2Vob2xkZXIsXG50ZXh0YXJlYTo6cGxhY2Vob2xkZXIge1xuICBjb2xvcjogI2NhY2FjYTsgfVxuXG5pbnB1dDpkaXNhYmxlZCwgaW5wdXRbcmVhZG9ubHldLFxudGV4dGFyZWE6ZGlzYWJsZWQsXG50ZXh0YXJlYVtyZWFkb25seV0ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjdmN2Y3O1xuICBjdXJzb3I6IG5vdC1hbGxvd2VkOyB9XG5cblt0eXBlPSdzdWJtaXQnXSxcblt0eXBlPSdidXR0b24nXSB7XG4gIGFwcGVhcmFuY2U6IG5vbmU7XG4gIGJvcmRlci1yYWRpdXM6IDA7IH1cblxuaW5wdXRbdHlwZT0nc2VhcmNoJ10ge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94OyB9XG5cblt0eXBlPSdmaWxlJ10sXG5bdHlwZT0nY2hlY2tib3gnXSxcblt0eXBlPSdyYWRpbyddIHtcbiAgbWFyZ2luOiAwIDAgMXJlbTsgfVxuXG5bdHlwZT0nY2hlY2tib3gnXSArIGxhYmVsLFxuW3R5cGU9J3JhZGlvJ10gKyBsYWJlbCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xuICBtYXJnaW4tbGVmdDogMC41cmVtO1xuICBtYXJnaW4tcmlnaHQ6IDFyZW07XG4gIG1hcmdpbi1ib3R0b206IDA7IH1cbiAgW3R5cGU9J2NoZWNrYm94J10gKyBsYWJlbFtmb3JdLFxuICBbdHlwZT0ncmFkaW8nXSArIGxhYmVsW2Zvcl0ge1xuICAgIGN1cnNvcjogcG9pbnRlcjsgfVxuXG5sYWJlbCA+IFt0eXBlPSdjaGVja2JveCddLFxubGFiZWwgPiBbdHlwZT0ncmFkaW8nXSB7XG4gIG1hcmdpbi1yaWdodDogMC41cmVtOyB9XG5cblt0eXBlPSdmaWxlJ10ge1xuICB3aWR0aDogMTAwJTsgfVxuXG5sYWJlbCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW46IDA7XG4gIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGxpbmUtaGVpZ2h0OiAxLjI7XG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuNik7IH1cbiAgbGFiZWwubWlkZGxlIHtcbiAgICBtYXJnaW46IDAgMCAxcmVtO1xuICAgIHBhZGRpbmc6IDAuNTYyNXJlbSAwOyB9XG5cbi5oZWxwLXRleHQge1xuICBtYXJnaW4tdG9wOiAtMC41cmVtO1xuICBmb250LXNpemU6IDAuODEyNXJlbTtcbiAgZm9udC1zdHlsZTogaXRhbGljO1xuICBjb2xvcjogIzAwMDAwMDsgfVxuXG4uaW5wdXQtZ3JvdXAge1xuICBkaXNwbGF5OiBmbGV4O1xuICB3aWR0aDogMTAwJTtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgYWxpZ24taXRlbXM6IHN0cmV0Y2g7IH1cbiAgLmlucHV0LWdyb3VwID4gOmZpcnN0LWNoaWxkIHtcbiAgICBib3JkZXItcmFkaXVzOiAwIDAgMCAwOyB9XG4gIC5pbnB1dC1ncm91cCA+IDpsYXN0LWNoaWxkID4gKiB7XG4gICAgYm9yZGVyLXJhZGl1czogMCAwIDAgMDsgfVxuXG4uaW5wdXQtZ3JvdXAtbGFiZWwsIC5pbnB1dC1ncm91cC1maWVsZCwgLmlucHV0LWdyb3VwLWJ1dHRvbiwgLmlucHV0LWdyb3VwLWJ1dHRvbiBhLFxuLmlucHV0LWdyb3VwLWJ1dHRvbiBpbnB1dCxcbi5pbnB1dC1ncm91cC1idXR0b24gYnV0dG9uLFxuLmlucHV0LWdyb3VwLWJ1dHRvbiBsYWJlbCB7XG4gIG1hcmdpbjogMDtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDsgfVxuXG4uaW5wdXQtZ3JvdXAtbGFiZWwge1xuICBwYWRkaW5nOiAwIDFyZW07XG4gIGJvcmRlcjogMXB4IHNvbGlkICNlNmU2ZTY7XG4gIGJhY2tncm91bmQ6ICNmN2Y3Zjc7XG4gIGNvbG9yOiAjMDAwMDAwO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXg6IDAgMCBhdXRvO1xuICBhbGlnbi1pdGVtczogY2VudGVyOyB9XG4gIC5pbnB1dC1ncm91cC1sYWJlbDpmaXJzdC1jaGlsZCB7XG4gICAgYm9yZGVyLXJpZ2h0OiAwOyB9XG4gIC5pbnB1dC1ncm91cC1sYWJlbDpsYXN0LWNoaWxkIHtcbiAgICBib3JkZXItbGVmdDogMDsgfVxuXG4uaW5wdXQtZ3JvdXAtZmllbGQge1xuICBib3JkZXItcmFkaXVzOiAwO1xuICBmbGV4OiAxIDEgMHB4O1xuICBoZWlnaHQ6IGF1dG87XG4gIG1pbi13aWR0aDogMDsgfVxuXG4uaW5wdXQtZ3JvdXAtYnV0dG9uIHtcbiAgcGFkZGluZy10b3A6IDA7XG4gIHBhZGRpbmctYm90dG9tOiAwO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXg6IDAgMCBhdXRvOyB9XG4gIC5pbnB1dC1ncm91cC1idXR0b24gYSxcbiAgLmlucHV0LWdyb3VwLWJ1dHRvbiBpbnB1dCxcbiAgLmlucHV0LWdyb3VwLWJ1dHRvbiBidXR0b24sXG4gIC5pbnB1dC1ncm91cC1idXR0b24gbGFiZWwge1xuICAgIGhlaWdodDogYXV0bztcbiAgICBhbGlnbi1zZWxmOiBzdHJldGNoO1xuICAgIHBhZGRpbmctdG9wOiAwO1xuICAgIHBhZGRpbmctYm90dG9tOiAwO1xuICAgIGZvbnQtc2l6ZTogMXJlbTsgfVxuXG5maWVsZHNldCB7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcbiAgYm9yZGVyOiAwOyB9XG5cbmxlZ2VuZCB7XG4gIG1heC13aWR0aDogMTAwJTtcbiAgbWFyZ2luLWJvdHRvbTogMC41cmVtOyB9XG5cbi5maWVsZHNldCB7XG4gIG1hcmdpbjogMS4xMjVyZW0gMDtcbiAgcGFkZGluZzogMS4yNXJlbTtcbiAgYm9yZGVyOiAxcHggc29saWQgI2NhY2FjYTsgfVxuICAuZmllbGRzZXQgbGVnZW5kIHtcbiAgICBtYXJnaW46IDA7XG4gICAgbWFyZ2luLWxlZnQ6IC0wLjE4NzVyZW07XG4gICAgcGFkZGluZzogMCAwLjE4NzVyZW07IH1cblxuc2VsZWN0IHtcbiAgaGVpZ2h0OiAyLjkzNzVyZW07XG4gIG1hcmdpbjogMCAwIDFyZW07XG4gIHBhZGRpbmc6IDAuNzVyZW07XG4gIGFwcGVhcmFuY2U6IG5vbmU7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNlNmU2ZTY7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmZmZmY7XG4gIGZvbnQtZmFtaWx5OiBpbmhlcml0O1xuICBmb250LXNpemU6IDFyZW07XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGxpbmUtaGVpZ2h0OiAxLjU7XG4gIGNvbG9yOiAjMDAwMDAwO1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWw7dXRmOCw8c3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZycgdmVyc2lvbj0nMS4xJyB3aWR0aD0nMzInIGhlaWdodD0nMjQnIHZpZXdCb3g9JzAgMCAzMiAyNCc+PHBvbHlnb24gcG9pbnRzPScwLDAgMzIsMCAxNiwyNCcgc3R5bGU9J2ZpbGw6IHJnYiUyODQ1LCAyMDEsIDIxNSUyOSc+PC9wb2x5Z29uPjwvc3ZnPlwiKTtcbiAgYmFja2dyb3VuZC1vcmlnaW46IGNvbnRlbnQtYm94O1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiByaWdodCAtMXJlbSBjZW50ZXI7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIGJhY2tncm91bmQtc2l6ZTogOXB4IDZweDtcbiAgcGFkZGluZy1yaWdodDogMS41cmVtO1xuICB0cmFuc2l0aW9uOiBib3gtc2hhZG93IDAuNXMsIGJvcmRlci1jb2xvciAwLjI1cyBlYXNlLWluLW91dDsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAwXFwwKSB7XG4gICAgc2VsZWN0IHtcbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcImRhdGE6aW1hZ2UvcG5nO2Jhc2U2NCxpVkJPUncwS0dnb0FBQUFOU1VoRVVnQUFBQ0FBQUFBWUNBWUFBQUNiVS84MEFBQUFHWFJGV0hSVGIyWjBkMkZ5WlFCQlpHOWlaU0JKYldGblpWSmxZV1I1Y2NsbFBBQUFBSXBKUkVGVWVOckVrY2tOZ0RBTUJCZlJrRXQwT2JSQkJkc0dYVURnbVFmSzRYaEgybThjelFBQXkyN1IzdHN3NFFmZTJ4OHVPTzZvWUxiNkdsT29yM0dGK3N3VVJBT21VSitSd3RFSnM5V3ZUR0VZeEJYcUkxTVFBWmhDZlVRS1J6RE1WaitUd3JBSVY2anZTVUVrWUFyMUxTa2N5VEJiL1YrS1lmWDd4QWV1c3Ezc0xEdEdIM2tFR0FDUFdJZmxOWmZoUlFBQUFBQkpSVTVFcmtKZ2dnPT1cIik7IH0gfVxuICBzZWxlY3Q6Zm9jdXMge1xuICAgIG91dGxpbmU6IG5vbmU7XG4gICAgYm9yZGVyOiAycHggc29saWQgIzJEQzlENztcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmZmZmO1xuICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gICAgdHJhbnNpdGlvbjogYm94LXNoYWRvdyAwLjVzLCBib3JkZXItY29sb3IgMC4yNXMgZWFzZS1pbi1vdXQ7IH1cbiAgc2VsZWN0OmRpc2FibGVkIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjdmN2Y3O1xuICAgIGN1cnNvcjogbm90LWFsbG93ZWQ7IH1cbiAgc2VsZWN0OjotbXMtZXhwYW5kIHtcbiAgICBkaXNwbGF5OiBub25lOyB9XG4gIHNlbGVjdFttdWx0aXBsZV0ge1xuICAgIGhlaWdodDogYXV0bztcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiBub25lOyB9XG5cbi5pcy1pbnZhbGlkLWlucHV0Om5vdCg6Zm9jdXMpIHtcbiAgYm9yZGVyLWNvbG9yOiAjY2M0YjM3O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmFlZGViOyB9XG4gIC5pcy1pbnZhbGlkLWlucHV0Om5vdCg6Zm9jdXMpOjpwbGFjZWhvbGRlciB7XG4gICAgY29sb3I6ICNjYzRiMzc7IH1cblxuLmlzLWludmFsaWQtbGFiZWwge1xuICBjb2xvcjogI2NjNGIzNzsgfVxuXG4uZm9ybS1lcnJvciB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIG1hcmdpbi10b3A6IC0wLjVyZW07XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG4gIGZvbnQtc2l6ZTogMC43NXJlbTtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgY29sb3I6ICNjYzRiMzc7IH1cbiAgLmZvcm0tZXJyb3IuaXMtdmlzaWJsZSB7XG4gICAgZGlzcGxheTogYmxvY2s7IH1cblxuLmFjY29yZGlvbiB7XG4gIG1hcmdpbi1sZWZ0OiAwO1xuICBiYWNrZ3JvdW5kOiAjZmZmZmZmO1xuICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7IH1cbiAgLmFjY29yZGlvbltkaXNhYmxlZF0gLmFjY29yZGlvbi10aXRsZSB7XG4gICAgY3Vyc29yOiBub3QtYWxsb3dlZDsgfVxuXG4uYWNjb3JkaW9uLWl0ZW06Zmlyc3QtY2hpbGQgPiA6Zmlyc3QtY2hpbGQge1xuICBib3JkZXItcmFkaXVzOiAwIDAgMCAwOyB9XG5cbi5hY2NvcmRpb24taXRlbTpsYXN0LWNoaWxkID4gOmxhc3QtY2hpbGQge1xuICBib3JkZXItcmFkaXVzOiAwIDAgMCAwOyB9XG5cbi5hY2NvcmRpb24tdGl0bGUge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwYWRkaW5nOiAxLjI1cmVtIDFyZW07XG4gIGJvcmRlcjogMXB4IHNvbGlkICNlNmU2ZTY7XG4gIGJvcmRlci1ib3R0b206IDA7XG4gIGZvbnQtc2l6ZTogMC43NXJlbTtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIGNvbG9yOiAjMkRDOUQ3OyB9XG4gIDpsYXN0LWNoaWxkOm5vdCguaXMtYWN0aXZlKSA+IC5hY2NvcmRpb24tdGl0bGUge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZTZlNmU2O1xuICAgIGJvcmRlci1yYWRpdXM6IDAgMCAwIDA7IH1cbiAgLmFjY29yZGlvbi10aXRsZTpob3ZlciwgLmFjY29yZGlvbi10aXRsZTpmb2N1cyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2U2ZTZlNjsgfVxuICAuYWNjb3JkaW9uLXRpdGxlOjpiZWZvcmUge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDUwJTtcbiAgICByaWdodDogMXJlbTtcbiAgICBtYXJnaW4tdG9wOiAtMC41cmVtO1xuICAgIGNvbnRlbnQ6ICcrJzsgfVxuICAuaXMtYWN0aXZlID4gLmFjY29yZGlvbi10aXRsZTo6YmVmb3JlIHtcbiAgICBjb250ZW50OiAnXFwyMDEzJzsgfVxuXG4uYWNjb3JkaW9uLWNvbnRlbnQge1xuICBkaXNwbGF5OiBub25lO1xuICBwYWRkaW5nOiAxcmVtO1xuICBib3JkZXI6IDFweCBzb2xpZCAjZTZlNmU2O1xuICBib3JkZXItYm90dG9tOiAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmZmZmO1xuICBjb2xvcjogIzAwMDAwMDsgfVxuICA6bGFzdC1jaGlsZCA+IC5hY2NvcmRpb24tY29udGVudDpsYXN0LWNoaWxkIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2U2ZTZlNjsgfVxuXG4uYWNjb3JkaW9uLW1lbnUgbGkge1xuICB3aWR0aDogMTAwJTsgfVxuXG4uYWNjb3JkaW9uLW1lbnUgYSB7XG4gIHBhZGRpbmc6IDAuN3JlbSAxcmVtOyB9XG5cbi5hY2NvcmRpb24tbWVudSAuaXMtYWNjb3JkaW9uLXN1Ym1lbnUgYSB7XG4gIHBhZGRpbmc6IDAuN3JlbSAxcmVtOyB9XG5cbi5hY2NvcmRpb24tbWVudSAubmVzdGVkLmlzLWFjY29yZGlvbi1zdWJtZW51IHtcbiAgbWFyZ2luLXJpZ2h0OiAwO1xuICBtYXJnaW4tbGVmdDogMXJlbTsgfVxuXG4uYWNjb3JkaW9uLW1lbnUuYWxpZ24tcmlnaHQgLm5lc3RlZC5pcy1hY2NvcmRpb24tc3VibWVudSB7XG4gIG1hcmdpbi1yaWdodDogMXJlbTtcbiAgbWFyZ2luLWxlZnQ6IDA7IH1cblxuLmFjY29yZGlvbi1tZW51IC5pcy1hY2NvcmRpb24tc3VibWVudS1wYXJlbnQ6bm90KC5oYXMtc3VibWVudS10b2dnbGUpID4gYSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAuYWNjb3JkaW9uLW1lbnUgLmlzLWFjY29yZGlvbi1zdWJtZW51LXBhcmVudDpub3QoLmhhcy1zdWJtZW51LXRvZ2dsZSkgPiBhOjphZnRlciB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDA7XG4gICAgaGVpZ2h0OiAwO1xuICAgIGJvcmRlcjogaW5zZXQgNnB4O1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGJvcmRlci1ib3R0b20td2lkdGg6IDA7XG4gICAgYm9yZGVyLXRvcC1zdHlsZTogc29saWQ7XG4gICAgYm9yZGVyLWNvbG9yOiAjZmZmZmZmIHRyYW5zcGFyZW50IHRyYW5zcGFyZW50O1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDUwJTtcbiAgICBtYXJnaW4tdG9wOiAtM3B4O1xuICAgIHJpZ2h0OiAxcmVtOyB9XG5cbi5hY2NvcmRpb24tbWVudS5hbGlnbi1sZWZ0IC5pcy1hY2NvcmRpb24tc3VibWVudS1wYXJlbnQgPiBhOjphZnRlciB7XG4gIGxlZnQ6IGF1dG87XG4gIHJpZ2h0OiAxcmVtOyB9XG5cbi5hY2NvcmRpb24tbWVudS5hbGlnbi1yaWdodCAuaXMtYWNjb3JkaW9uLXN1Ym1lbnUtcGFyZW50ID4gYTo6YWZ0ZXIge1xuICByaWdodDogYXV0bztcbiAgbGVmdDogMXJlbTsgfVxuXG4uYWNjb3JkaW9uLW1lbnUgLmlzLWFjY29yZGlvbi1zdWJtZW51LXBhcmVudFthcmlhLWV4cGFuZGVkPSd0cnVlJ10gPiBhOjphZnRlciB7XG4gIHRyYW5zZm9ybTogcm90YXRlKDE4MGRlZyk7XG4gIHRyYW5zZm9ybS1vcmlnaW46IDUwJSA1MCU7IH1cblxuLmlzLWFjY29yZGlvbi1zdWJtZW51LXBhcmVudCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuXG4uaGFzLXN1Ym1lbnUtdG9nZ2xlID4gYSB7XG4gIG1hcmdpbi1yaWdodDogNDBweDsgfVxuXG4uc3VibWVudS10b2dnbGUge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IDA7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgd2lkdGg6IDQwcHg7XG4gIGhlaWdodDogNDBweDsgfVxuICAuc3VibWVudS10b2dnbGU6OmFmdGVyIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMDtcbiAgICBoZWlnaHQ6IDA7XG4gICAgYm9yZGVyOiBpbnNldCA2cHg7XG4gICAgY29udGVudDogJyc7XG4gICAgYm9yZGVyLWJvdHRvbS13aWR0aDogMDtcbiAgICBib3JkZXItdG9wLXN0eWxlOiBzb2xpZDtcbiAgICBib3JkZXItY29sb3I6ICNmZmZmZmYgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQ7XG4gICAgdG9wOiAwO1xuICAgIGJvdHRvbTogMDtcbiAgICBtYXJnaW46IGF1dG87IH1cblxuLnN1Ym1lbnUtdG9nZ2xlW2FyaWEtZXhwYW5kZWQ9J3RydWUnXTo6YWZ0ZXIge1xuICB0cmFuc2Zvcm06IHNjYWxlWSgtMSk7XG4gIHRyYW5zZm9ybS1vcmlnaW46IDUwJSA1MCU7IH1cblxuLnN1Ym1lbnUtdG9nZ2xlLXRleHQge1xuICBwb3NpdGlvbjogYWJzb2x1dGUgIWltcG9ydGFudDtcbiAgd2lkdGg6IDFweDtcbiAgaGVpZ2h0OiAxcHg7XG4gIHBhZGRpbmc6IDA7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGNsaXA6IHJlY3QoMCwgMCwgMCwgMCk7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIGNsaXAtcGF0aDogaW5zZXQoNTAlKTtcbiAgYm9yZGVyOiAwOyB9XG5cbi5iYWRnZSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWluLXdpZHRoOiAyLjFlbTtcbiAgcGFkZGluZzogMC4zZW07XG4gIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgZm9udC1zaXplOiAwLjZyZW07XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgYmFja2dyb3VuZDogIzJEQzlENztcbiAgY29sb3I6ICNmZmZmZmY7IH1cbiAgLmJhZGdlLnByaW1hcnkge1xuICAgIGJhY2tncm91bmQ6ICMyREM5RDc7XG4gICAgY29sb3I6ICMwMDAwMDA7IH1cbiAgLmJhZGdlLnNlY29uZGFyeSB7XG4gICAgYmFja2dyb3VuZDogI0ZDQjUzNjtcbiAgICBjb2xvcjogIzAwMDAwMDsgfVxuICAuYmFkZ2Uuc3VjY2VzcyB7XG4gICAgYmFja2dyb3VuZDogIzNhZGI3NjtcbiAgICBjb2xvcjogIzAwMDAwMDsgfVxuICAuYmFkZ2Uud2FybmluZyB7XG4gICAgYmFja2dyb3VuZDogI2ZmYWUwMDtcbiAgICBjb2xvcjogIzAwMDAwMDsgfVxuICAuYmFkZ2UuYWxlcnQge1xuICAgIGJhY2tncm91bmQ6ICNjYzRiMzc7XG4gICAgY29sb3I6ICMwMDAwMDA7IH1cblxuLmJyZWFkY3J1bWJzIHtcbiAgbWFyZ2luOiAwIDAgMXJlbSAwO1xuICBsaXN0LXN0eWxlOiBub25lOyB9XG4gIC5icmVhZGNydW1iczo6YmVmb3JlLCAuYnJlYWRjcnVtYnM6OmFmdGVyIHtcbiAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICBjb250ZW50OiAnICc7XG4gICAgZmxleC1iYXNpczogMDtcbiAgICBvcmRlcjogMTsgfVxuICAuYnJlYWRjcnVtYnM6OmFmdGVyIHtcbiAgICBjbGVhcjogYm90aDsgfVxuICAuYnJlYWRjcnVtYnMgbGkge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIGZvbnQtc2l6ZTogMC42ODc1cmVtO1xuICAgIGNvbG9yOiAjMDAwMDAwO1xuICAgIGN1cnNvcjogZGVmYXVsdDtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlOyB9XG4gICAgLmJyZWFkY3J1bWJzIGxpOm5vdCg6bGFzdC1jaGlsZCk6OmFmdGVyIHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIG1hcmdpbjogMCAwLjc1cmVtO1xuICAgICAgb3BhY2l0eTogMTtcbiAgICAgIGNvbnRlbnQ6IFwiL1wiO1xuICAgICAgY29sb3I6ICNjYWNhY2E7IH1cbiAgLmJyZWFkY3J1bWJzIGEge1xuICAgIGNvbG9yOiAjMkRDOUQ3OyB9XG4gICAgLmJyZWFkY3J1bWJzIGE6aG92ZXIge1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7IH1cbiAgLmJyZWFkY3J1bWJzIC5kaXNhYmxlZCB7XG4gICAgY29sb3I6ICNjYWNhY2E7XG4gICAgY3Vyc29yOiBub3QtYWxsb3dlZDsgfVxuXG4uYnV0dG9uLWdyb3VwIHtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiBub3dyYXA7XG4gIGFsaWduLWl0ZW1zOiBzdHJldGNoOyB9XG4gIC5idXR0b24tZ3JvdXA6OmJlZm9yZSwgLmJ1dHRvbi1ncm91cDo6YWZ0ZXIge1xuICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgIGNvbnRlbnQ6ICcgJztcbiAgICBmbGV4LWJhc2lzOiAwO1xuICAgIG9yZGVyOiAxOyB9XG4gIC5idXR0b24tZ3JvdXA6OmFmdGVyIHtcbiAgICBjbGVhcjogYm90aDsgfVxuICAuYnV0dG9uLWdyb3VwIC5idXR0b24ge1xuICAgIG1hcmdpbjogMDtcbiAgICBtYXJnaW4tcmlnaHQ6IDFweDtcbiAgICBtYXJnaW4tYm90dG9tOiAxcHg7XG4gICAgZm9udC1zaXplOiAwLjlyZW07XG4gICAgZmxleDogMCAwIGF1dG87IH1cbiAgICAuYnV0dG9uLWdyb3VwIC5idXR0b246bGFzdC1jaGlsZCB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDA7IH1cbiAgLmJ1dHRvbi1ncm91cC50aW55IC5idXR0b24ge1xuICAgIGZvbnQtc2l6ZTogMC42cmVtOyB9XG4gIC5idXR0b24tZ3JvdXAuc21hbGwgLmJ1dHRvbiB7XG4gICAgZm9udC1zaXplOiAwLjc1cmVtOyB9XG4gIC5idXR0b24tZ3JvdXAubGFyZ2UgLmJ1dHRvbiB7XG4gICAgZm9udC1zaXplOiAxLjI1cmVtOyB9XG4gIC5idXR0b24tZ3JvdXAuZXhwYW5kZWQgLmJ1dHRvbiB7XG4gICAgZmxleDogMSAxIDBweDsgfVxuICAuYnV0dG9uLWdyb3VwLnByaW1hcnkgLmJ1dHRvbiB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzJEQzlENztcbiAgICBjb2xvcjogIzAwMDAwMDsgfVxuICAgIC5idXR0b24tZ3JvdXAucHJpbWFyeSAuYnV0dG9uOmhvdmVyLCAuYnV0dG9uLWdyb3VwLnByaW1hcnkgLmJ1dHRvbjpmb2N1cyB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMjFhM2FmO1xuICAgICAgY29sb3I6ICMwMDAwMDA7IH1cbiAgLmJ1dHRvbi1ncm91cC5zZWNvbmRhcnkgLmJ1dHRvbiB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI0ZDQjUzNjtcbiAgICBjb2xvcjogIzAwMDAwMDsgfVxuICAgIC5idXR0b24tZ3JvdXAuc2Vjb25kYXJ5IC5idXR0b246aG92ZXIsIC5idXR0b24tZ3JvdXAuc2Vjb25kYXJ5IC5idXR0b246Zm9jdXMge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2YxOWMwNDtcbiAgICAgIGNvbG9yOiAjMDAwMDAwOyB9XG4gIC5idXR0b24tZ3JvdXAuc3VjY2VzcyAuYnV0dG9uIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjM2FkYjc2O1xuICAgIGNvbG9yOiAjMDAwMDAwOyB9XG4gICAgLmJ1dHRvbi1ncm91cC5zdWNjZXNzIC5idXR0b246aG92ZXIsIC5idXR0b24tZ3JvdXAuc3VjY2VzcyAuYnV0dG9uOmZvY3VzIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICMyMmJiNWI7XG4gICAgICBjb2xvcjogIzAwMDAwMDsgfVxuICAuYnV0dG9uLWdyb3VwLndhcm5pbmcgLmJ1dHRvbiB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmYWUwMDtcbiAgICBjb2xvcjogIzAwMDAwMDsgfVxuICAgIC5idXR0b24tZ3JvdXAud2FybmluZyAuYnV0dG9uOmhvdmVyLCAuYnV0dG9uLWdyb3VwLndhcm5pbmcgLmJ1dHRvbjpmb2N1cyB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjY2M4YjAwO1xuICAgICAgY29sb3I6ICMwMDAwMDA7IH1cbiAgLmJ1dHRvbi1ncm91cC5hbGVydCAuYnV0dG9uIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjY2M0YjM3O1xuICAgIGNvbG9yOiAjMDAwMDAwOyB9XG4gICAgLmJ1dHRvbi1ncm91cC5hbGVydCAuYnV0dG9uOmhvdmVyLCAuYnV0dG9uLWdyb3VwLmFsZXJ0IC5idXR0b246Zm9jdXMge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2E1M2IyYTtcbiAgICAgIGNvbG9yOiAjMDAwMDAwOyB9XG4gIC5idXR0b24tZ3JvdXAuc3RhY2tlZCwgLmJ1dHRvbi1ncm91cC5zdGFja2VkLWZvci1zbWFsbCwgLmJ1dHRvbi1ncm91cC5zdGFja2VkLWZvci1tZWRpdW0ge1xuICAgIGZsZXgtd3JhcDogd3JhcDsgfVxuICAgIC5idXR0b24tZ3JvdXAuc3RhY2tlZCAuYnV0dG9uLCAuYnV0dG9uLWdyb3VwLnN0YWNrZWQtZm9yLXNtYWxsIC5idXR0b24sIC5idXR0b24tZ3JvdXAuc3RhY2tlZC1mb3ItbWVkaXVtIC5idXR0b24ge1xuICAgICAgZmxleDogMCAwIDEwMCU7IH1cbiAgICAgIC5idXR0b24tZ3JvdXAuc3RhY2tlZCAuYnV0dG9uOmxhc3QtY2hpbGQsIC5idXR0b24tZ3JvdXAuc3RhY2tlZC1mb3Itc21hbGwgLmJ1dHRvbjpsYXN0LWNoaWxkLCAuYnV0dG9uLWdyb3VwLnN0YWNrZWQtZm9yLW1lZGl1bSAuYnV0dG9uOmxhc3QtY2hpbGQge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLmJ1dHRvbi1ncm91cC5zdGFja2VkLWZvci1zbWFsbCAuYnV0dG9uIHtcbiAgICAgIGZsZXg6IDEgMSAwcHg7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuYnV0dG9uLWdyb3VwLnN0YWNrZWQtZm9yLW1lZGl1bSAuYnV0dG9uIHtcbiAgICAgIGZsZXg6IDEgMSAwcHg7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTM3NWVtKSB7XG4gICAgLmJ1dHRvbi1ncm91cC5zdGFja2VkLWZvci1zbWFsbC5leHBhbmRlZCB7XG4gICAgICBkaXNwbGF5OiBibG9jazsgfVxuICAgICAgLmJ1dHRvbi1ncm91cC5zdGFja2VkLWZvci1zbWFsbC5leHBhbmRlZCAuYnV0dG9uIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMDsgfSB9XG5cbi5jYWxsb3V0IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBtYXJnaW46IDAgMCAxcmVtIDA7XG4gIHBhZGRpbmc6IDFyZW07XG4gIGJvcmRlcjogMXB4IHNvbGlkIHJnYmEoMCwgMCwgMCwgMC4yNSk7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIGJhY2tncm91bmQtY29sb3I6IHdoaXRlO1xuICBjb2xvcjogIzAwMDAwMDsgfVxuICAuY2FsbG91dCA+IDpmaXJzdC1jaGlsZCB7XG4gICAgbWFyZ2luLXRvcDogMDsgfVxuICAuY2FsbG91dCA+IDpsYXN0LWNoaWxkIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwOyB9XG4gIC5jYWxsb3V0LnByaW1hcnkge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNlMGY3Zjk7XG4gICAgY29sb3I6ICMwMDAwMDA7IH1cbiAgLmNhbGxvdXQuc2Vjb25kYXJ5IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmNGUxO1xuICAgIGNvbG9yOiAjMDAwMDAwOyB9XG4gIC5jYWxsb3V0LnN1Y2Nlc3Mge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNlMWZhZWE7XG4gICAgY29sb3I6ICMwMDAwMDA7IH1cbiAgLmNhbGxvdXQud2FybmluZyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjNkOTtcbiAgICBjb2xvcjogIzAwMDAwMDsgfVxuICAuY2FsbG91dC5hbGVydCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2Y3ZTRlMTtcbiAgICBjb2xvcjogIzAwMDAwMDsgfVxuICAuY2FsbG91dC5zbWFsbCB7XG4gICAgcGFkZGluZy10b3A6IDAuNXJlbTtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjVyZW07XG4gICAgcGFkZGluZy1ib3R0b206IDAuNXJlbTtcbiAgICBwYWRkaW5nLWxlZnQ6IDAuNXJlbTsgfVxuICAuY2FsbG91dC5sYXJnZSB7XG4gICAgcGFkZGluZy10b3A6IDNyZW07XG4gICAgcGFkZGluZy1yaWdodDogM3JlbTtcbiAgICBwYWRkaW5nLWJvdHRvbTogM3JlbTtcbiAgICBwYWRkaW5nLWxlZnQ6IDNyZW07IH1cblxuLmNhcmQge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBmbGV4LWdyb3c6IDE7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG4gIGJvcmRlcjogMXB4IHNvbGlkICNlNmU2ZTY7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIGJhY2tncm91bmQ6ICNmZmZmZmY7XG4gIGJveC1zaGFkb3c6IG5vbmU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGNvbG9yOiAjMDAwMDAwOyB9XG4gIC5jYXJkID4gOmxhc3QtY2hpbGQge1xuICAgIG1hcmdpbi1ib3R0b206IDA7IH1cblxuLmNhcmQtZGl2aWRlciB7XG4gIGZsZXg6IDAgMSBhdXRvO1xuICBkaXNwbGF5OiBmbGV4O1xuICBwYWRkaW5nOiAxcmVtO1xuICBiYWNrZ3JvdW5kOiAjZTZlNmU2OyB9XG4gIC5jYXJkLWRpdmlkZXIgPiA6bGFzdC1jaGlsZCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDsgfVxuXG4uY2FyZC1zZWN0aW9uIHtcbiAgZmxleDogMSAwIGF1dG87XG4gIHBhZGRpbmc6IDFyZW07IH1cbiAgLmNhcmQtc2VjdGlvbiA+IDpsYXN0LWNoaWxkIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwOyB9XG5cbi5jYXJkLWltYWdlIHtcbiAgbWluLWhlaWdodDogMXB4OyB9XG5cbi5jbG9zZS1idXR0b24ge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGNvbG9yOiAjOGE4YThhO1xuICBjdXJzb3I6IHBvaW50ZXI7IH1cbiAgW2RhdGEtd2hhdGlucHV0PSdtb3VzZSddIC5jbG9zZS1idXR0b24ge1xuICAgIG91dGxpbmU6IDA7IH1cbiAgLmNsb3NlLWJ1dHRvbjpob3ZlciwgLmNsb3NlLWJ1dHRvbjpmb2N1cyB7XG4gICAgY29sb3I6ICMwMDAwMDA7IH1cbiAgLmNsb3NlLWJ1dHRvbi5zbWFsbCB7XG4gICAgcmlnaHQ6IDAuNjZyZW07XG4gICAgdG9wOiAwLjMzZW07XG4gICAgZm9udC1zaXplOiAxLjVlbTtcbiAgICBsaW5lLWhlaWdodDogMTsgfVxuICAuY2xvc2UtYnV0dG9uLCAuY2xvc2UtYnV0dG9uLm1lZGl1bSB7XG4gICAgcmlnaHQ6IDFyZW07XG4gICAgdG9wOiAwLjVyZW07XG4gICAgZm9udC1zaXplOiAyZW07XG4gICAgbGluZS1oZWlnaHQ6IDE7IH1cblxuLm1lbnUge1xuICBwYWRkaW5nOiAwO1xuICBtYXJnaW46IDA7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwOyB9XG4gIFtkYXRhLXdoYXRpbnB1dD0nbW91c2UnXSAubWVudSBsaSB7XG4gICAgb3V0bGluZTogMDsgfVxuICAubWVudSBhLFxuICAubWVudSAuYnV0dG9uIHtcbiAgICBsaW5lLWhlaWdodDogMTtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcGFkZGluZzogMC43cmVtIDFyZW07IH1cbiAgLm1lbnUgaW5wdXQsXG4gIC5tZW51IHNlbGVjdCxcbiAgLm1lbnUgYSxcbiAgLm1lbnUgYnV0dG9uIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwOyB9XG4gIC5tZW51IGlucHV0IHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IH1cbiAgLm1lbnUsIC5tZW51Lmhvcml6b250YWwge1xuICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93OyB9XG4gIC5tZW51LnZlcnRpY2FsIHtcbiAgICBmbGV4LXdyYXA6IG5vd3JhcDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uOyB9XG4gIC5tZW51LmV4cGFuZGVkIGxpIHtcbiAgICBmbGV4OiAxIDEgMHB4OyB9XG4gIC5tZW51LnNpbXBsZSB7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjsgfVxuICAgIC5tZW51LnNpbXBsZSBsaSArIGxpIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiAxcmVtOyB9XG4gICAgLm1lbnUuc2ltcGxlIGEge1xuICAgICAgcGFkZGluZzogMDsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5tZW51Lm1lZGl1bS1ob3Jpem9udGFsIHtcbiAgICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7IH1cbiAgICAubWVudS5tZWRpdW0tdmVydGljYWwge1xuICAgICAgZmxleC13cmFwOiBub3dyYXA7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uOyB9XG4gICAgLm1lbnUubWVkaXVtLWV4cGFuZGVkIGxpIHtcbiAgICAgIGZsZXg6IDEgMSAwcHg7IH1cbiAgICAubWVudS5tZWRpdW0tc2ltcGxlIGxpIHtcbiAgICAgIGZsZXg6IDEgMSAwcHg7IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5tZW51LmxhcmdlLWhvcml6b250YWwge1xuICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgICAgZmxleC1kaXJlY3Rpb246IHJvdzsgfVxuICAgIC5tZW51LmxhcmdlLXZlcnRpY2FsIHtcbiAgICAgIGZsZXgtd3JhcDogbm93cmFwO1xuICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjsgfVxuICAgIC5tZW51LmxhcmdlLWV4cGFuZGVkIGxpIHtcbiAgICAgIGZsZXg6IDEgMSAwcHg7IH1cbiAgICAubWVudS5sYXJnZS1zaW1wbGUgbGkge1xuICAgICAgZmxleDogMSAxIDBweDsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICAubWVudS54bGFyZ2UtaG9yaXpvbnRhbCB7XG4gICAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogcm93OyB9XG4gICAgLm1lbnUueGxhcmdlLXZlcnRpY2FsIHtcbiAgICAgIGZsZXgtd3JhcDogbm93cmFwO1xuICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjsgfVxuICAgIC5tZW51LnhsYXJnZS1leHBhbmRlZCBsaSB7XG4gICAgICBmbGV4OiAxIDEgMHB4OyB9XG4gICAgLm1lbnUueGxhcmdlLXNpbXBsZSBsaSB7XG4gICAgICBmbGV4OiAxIDEgMHB4OyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTBlbSkge1xuICAgIC5tZW51Lnh4bGFyZ2UtaG9yaXpvbnRhbCB7XG4gICAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogcm93OyB9XG4gICAgLm1lbnUueHhsYXJnZS12ZXJ0aWNhbCB7XG4gICAgICBmbGV4LXdyYXA6IG5vd3JhcDtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47IH1cbiAgICAubWVudS54eGxhcmdlLWV4cGFuZGVkIGxpIHtcbiAgICAgIGZsZXg6IDEgMSAwcHg7IH1cbiAgICAubWVudS54eGxhcmdlLXNpbXBsZSBsaSB7XG4gICAgICBmbGV4OiAxIDEgMHB4OyB9IH1cbiAgLm1lbnUubmVzdGVkIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgbWFyZ2luLWxlZnQ6IDFyZW07IH1cbiAgLm1lbnUuaWNvbnMgYSB7XG4gICAgZGlzcGxheTogZmxleDsgfVxuICAubWVudS5pY29uLXRvcCBhLCAubWVudS5pY29uLXJpZ2h0IGEsIC5tZW51Lmljb24tYm90dG9tIGEsIC5tZW51Lmljb24tbGVmdCBhIHtcbiAgICBkaXNwbGF5OiBmbGV4OyB9XG4gIC5tZW51Lmljb24tbGVmdCBsaSBhIHtcbiAgICBmbGV4LWZsb3c6IHJvdyBub3dyYXA7IH1cbiAgICAubWVudS5pY29uLWxlZnQgbGkgYSBpbWcsXG4gICAgLm1lbnUuaWNvbi1sZWZ0IGxpIGEgaSxcbiAgICAubWVudS5pY29uLWxlZnQgbGkgYSBzdmcge1xuICAgICAgbWFyZ2luLXJpZ2h0OiAwLjI1cmVtOyB9XG4gIC5tZW51Lmljb24tcmlnaHQgbGkgYSB7XG4gICAgZmxleC1mbG93OiByb3cgbm93cmFwOyB9XG4gICAgLm1lbnUuaWNvbi1yaWdodCBsaSBhIGltZyxcbiAgICAubWVudS5pY29uLXJpZ2h0IGxpIGEgaSxcbiAgICAubWVudS5pY29uLXJpZ2h0IGxpIGEgc3ZnIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiAwLjI1cmVtOyB9XG4gIC5tZW51Lmljb24tdG9wIGxpIGEge1xuICAgIGZsZXgtZmxvdzogY29sdW1uIG5vd3JhcDsgfVxuICAgIC5tZW51Lmljb24tdG9wIGxpIGEgaW1nLFxuICAgIC5tZW51Lmljb24tdG9wIGxpIGEgaSxcbiAgICAubWVudS5pY29uLXRvcCBsaSBhIHN2ZyB7XG4gICAgICBhbGlnbi1zZWxmOiBzdHJldGNoO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMC4yNXJlbTtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuICAubWVudS5pY29uLWJvdHRvbSBsaSBhIHtcbiAgICBmbGV4LWZsb3c6IGNvbHVtbiBub3dyYXA7IH1cbiAgICAubWVudS5pY29uLWJvdHRvbSBsaSBhIGltZyxcbiAgICAubWVudS5pY29uLWJvdHRvbSBsaSBhIGksXG4gICAgLm1lbnUuaWNvbi1ib3R0b20gbGkgYSBzdmcge1xuICAgICAgYWxpZ24tc2VsZjogc3RyZXRjaDtcbiAgICAgIG1hcmdpbi1ib3R0b206IDAuMjVyZW07XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgLm1lbnUgLmlzLWFjdGl2ZSA+IGEge1xuICAgIGJhY2tncm91bmQ6ICMyREM5RDc7XG4gICAgY29sb3I6ICNmZmZmZmY7IH1cbiAgLm1lbnUgLmFjdGl2ZSA+IGEge1xuICAgIGJhY2tncm91bmQ6ICMyREM5RDc7XG4gICAgY29sb3I6ICNmZmZmZmY7IH1cbiAgLm1lbnUuYWxpZ24tbGVmdCB7XG4gICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0OyB9XG4gIC5tZW51LmFsaWduLXJpZ2h0IGxpIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7IH1cbiAgICAubWVudS5hbGlnbi1yaWdodCBsaSAuc3VibWVudSBsaSB7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7IH1cbiAgLm1lbnUuYWxpZ24tcmlnaHQudmVydGljYWwgbGkge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHRleHQtYWxpZ246IHJpZ2h0OyB9XG4gICAgLm1lbnUuYWxpZ24tcmlnaHQudmVydGljYWwgbGkgLnN1Ym1lbnUgbGkge1xuICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7IH1cbiAgLm1lbnUuYWxpZ24tcmlnaHQgLm5lc3RlZCB7XG4gICAgbWFyZ2luLXJpZ2h0OiAxcmVtO1xuICAgIG1hcmdpbi1sZWZ0OiAwOyB9XG4gIC5tZW51LmFsaWduLWNlbnRlciBsaSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsgfVxuICAgIC5tZW51LmFsaWduLWNlbnRlciBsaSAuc3VibWVudSBsaSB7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7IH1cbiAgLm1lbnUgLm1lbnUtdGV4dCB7XG4gICAgcGFkZGluZzogMC43cmVtIDFyZW07XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgY29sb3I6IGluaGVyaXQ7IH1cblxuLm1lbnUtY2VudGVyZWQgPiAubWVudSB7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyOyB9XG4gIC5tZW51LWNlbnRlcmVkID4gLm1lbnUgbGkge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7IH1cbiAgICAubWVudS1jZW50ZXJlZCA+IC5tZW51IGxpIC5zdWJtZW51IGxpIHtcbiAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDsgfVxuXG4ubm8tanMgW2RhdGEtcmVzcG9uc2l2ZS1tZW51XSB1bCB7XG4gIGRpc3BsYXk6IG5vbmU7IH1cblxuLm1lbnUtaWNvbiB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICB3aWR0aDogMjBweDtcbiAgaGVpZ2h0OiAxNnB4O1xuICBjdXJzb3I6IHBvaW50ZXI7IH1cbiAgLm1lbnUtaWNvbjo6YWZ0ZXIge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDJweDtcbiAgICBiYWNrZ3JvdW5kOiAjZmZmZmZmO1xuICAgIGJveC1zaGFkb3c6IDAgN3B4IDAgI2ZmZmZmZiwgMCAxNHB4IDAgI2ZmZmZmZjtcbiAgICBjb250ZW50OiAnJzsgfVxuICAubWVudS1pY29uOmhvdmVyOjphZnRlciB7XG4gICAgYmFja2dyb3VuZDogI2NhY2FjYTtcbiAgICBib3gtc2hhZG93OiAwIDdweCAwICNjYWNhY2EsIDAgMTRweCAwICNjYWNhY2E7IH1cblxuLm1lbnUtaWNvbi5kYXJrIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIHdpZHRoOiAyMHB4O1xuICBoZWlnaHQ6IDE2cHg7XG4gIGN1cnNvcjogcG9pbnRlcjsgfVxuICAubWVudS1pY29uLmRhcms6OmFmdGVyIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAycHg7XG4gICAgYmFja2dyb3VuZDogIzAwMDAwMDtcbiAgICBib3gtc2hhZG93OiAwIDdweCAwICMwMDAwMDAsIDAgMTRweCAwICMwMDAwMDA7XG4gICAgY29udGVudDogJyc7IH1cbiAgLm1lbnUtaWNvbi5kYXJrOmhvdmVyOjphZnRlciB7XG4gICAgYmFja2dyb3VuZDogIzhhOGE4YTtcbiAgICBib3gtc2hhZG93OiAwIDdweCAwICM4YThhOGEsIDAgMTRweCAwICM4YThhOGE7IH1cblxuLmlzLWRyaWxsZG93biB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjsgfVxuICAuaXMtZHJpbGxkb3duIGxpIHtcbiAgICBkaXNwbGF5OiBibG9jazsgfVxuICAuaXMtZHJpbGxkb3duLmFuaW1hdGUtaGVpZ2h0IHtcbiAgICB0cmFuc2l0aW9uOiBoZWlnaHQgMC41czsgfVxuXG4uZHJpbGxkb3duIGEge1xuICBwYWRkaW5nOiAwLjdyZW0gMXJlbTtcbiAgYmFja2dyb3VuZDogI2ZmZmZmZjsgfVxuXG4uZHJpbGxkb3duIC5pcy1kcmlsbGRvd24tc3VibWVudSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAxMDAlO1xuICB6LWluZGV4OiAtMTtcbiAgd2lkdGg6IDEwMCU7XG4gIGJhY2tncm91bmQ6ICNmZmZmZmY7XG4gIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjE1cyBsaW5lYXI7IH1cbiAgLmRyaWxsZG93biAuaXMtZHJpbGxkb3duLXN1Ym1lbnUuaXMtYWN0aXZlIHtcbiAgICB6LWluZGV4OiAxO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMTAwJSk7IH1cbiAgLmRyaWxsZG93biAuaXMtZHJpbGxkb3duLXN1Ym1lbnUuaXMtY2xvc2luZyB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDEwMCUpOyB9XG4gIC5kcmlsbGRvd24gLmlzLWRyaWxsZG93bi1zdWJtZW51IGEge1xuICAgIHBhZGRpbmc6IDAuN3JlbSAxcmVtOyB9XG5cbi5kcmlsbGRvd24gLm5lc3RlZC5pcy1kcmlsbGRvd24tc3VibWVudSB7XG4gIG1hcmdpbi1yaWdodDogMDtcbiAgbWFyZ2luLWxlZnQ6IDA7IH1cblxuLmRyaWxsZG93biAuZHJpbGxkb3duLXN1Ym1lbnUtY292ZXItcHJldmlvdXMge1xuICBtaW4taGVpZ2h0OiAxMDAlOyB9XG5cbi5kcmlsbGRvd24gLmlzLWRyaWxsZG93bi1zdWJtZW51LXBhcmVudCA+IGEge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgLmRyaWxsZG93biAuaXMtZHJpbGxkb3duLXN1Ym1lbnUtcGFyZW50ID4gYTo6YWZ0ZXIge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDUwJTtcbiAgICBtYXJnaW4tdG9wOiAtNnB4O1xuICAgIHJpZ2h0OiAxcmVtO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAwO1xuICAgIGhlaWdodDogMDtcbiAgICBib3JkZXI6IGluc2V0IDZweDtcbiAgICBjb250ZW50OiAnJztcbiAgICBib3JkZXItcmlnaHQtd2lkdGg6IDA7XG4gICAgYm9yZGVyLWxlZnQtc3R5bGU6IHNvbGlkO1xuICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgIzJEQzlENzsgfVxuXG4uZHJpbGxkb3duLmFsaWduLWxlZnQgLmlzLWRyaWxsZG93bi1zdWJtZW51LXBhcmVudCA+IGE6OmFmdGVyIHtcbiAgbGVmdDogYXV0bztcbiAgcmlnaHQ6IDFyZW07XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMDtcbiAgaGVpZ2h0OiAwO1xuICBib3JkZXI6IGluc2V0IDZweDtcbiAgY29udGVudDogJyc7XG4gIGJvcmRlci1yaWdodC13aWR0aDogMDtcbiAgYm9yZGVyLWxlZnQtc3R5bGU6IHNvbGlkO1xuICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50ICMyREM5RDc7IH1cblxuLmRyaWxsZG93bi5hbGlnbi1yaWdodCAuaXMtZHJpbGxkb3duLXN1Ym1lbnUtcGFyZW50ID4gYTo6YWZ0ZXIge1xuICByaWdodDogYXV0bztcbiAgbGVmdDogMXJlbTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAwO1xuICBoZWlnaHQ6IDA7XG4gIGJvcmRlcjogaW5zZXQgNnB4O1xuICBjb250ZW50OiAnJztcbiAgYm9yZGVyLWxlZnQtd2lkdGg6IDA7XG4gIGJvcmRlci1yaWdodC1zdHlsZTogc29saWQ7XG4gIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQgIzJEQzlENyB0cmFuc3BhcmVudCB0cmFuc3BhcmVudDsgfVxuXG4uZHJpbGxkb3duIC5qcy1kcmlsbGRvd24tYmFjayA+IGE6OmJlZm9yZSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMDtcbiAgaGVpZ2h0OiAwO1xuICBib3JkZXI6IGluc2V0IDZweDtcbiAgY29udGVudDogJyc7XG4gIGJvcmRlci1sZWZ0LXdpZHRoOiAwO1xuICBib3JkZXItcmlnaHQtc3R5bGU6IHNvbGlkO1xuICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50ICMyREM5RDcgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1sZWZ0LXdpZHRoOiAwO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIG1hcmdpbi1yaWdodDogMC43NXJlbTtcbiAgYm9yZGVyLWxlZnQtd2lkdGg6IDA7IH1cblxuLmRyb3Bkb3duLXBhbmUge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHotaW5kZXg6IDEwO1xuICB3aWR0aDogMzAwcHg7XG4gIHBhZGRpbmc6IDFyZW07XG4gIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgZGlzcGxheTogbm9uZTtcbiAgYm9yZGVyOiAxcHggc29saWQgI2NhY2FjYTtcbiAgYm9yZGVyLXJhZGl1czogMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZmZmZjtcbiAgZm9udC1zaXplOiAxcmVtOyB9XG4gIC5kcm9wZG93bi1wYW5lLmlzLW9wZW5pbmcge1xuICAgIGRpc3BsYXk6IGJsb2NrOyB9XG4gIC5kcm9wZG93bi1wYW5lLmlzLW9wZW4ge1xuICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gICAgZGlzcGxheTogYmxvY2s7IH1cblxuLmRyb3Bkb3duLXBhbmUudGlueSB7XG4gIHdpZHRoOiAxMDBweDsgfVxuXG4uZHJvcGRvd24tcGFuZS5zbWFsbCB7XG4gIHdpZHRoOiAyMDBweDsgfVxuXG4uZHJvcGRvd24tcGFuZS5sYXJnZSB7XG4gIHdpZHRoOiA0MDBweDsgfVxuXG4uZHJvcGRvd24ubWVudSA+IGxpLm9wZW5zLWxlZnQgPiAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gIHRvcDogMTAwJTtcbiAgcmlnaHQ6IDA7XG4gIGxlZnQ6IGF1dG87IH1cblxuLmRyb3Bkb3duLm1lbnUgPiBsaS5vcGVucy1yaWdodCA+IC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgdG9wOiAxMDAlO1xuICByaWdodDogYXV0bztcbiAgbGVmdDogMDsgfVxuXG4uZHJvcGRvd24ubWVudSA+IGxpLmlzLWRyb3Bkb3duLXN1Ym1lbnUtcGFyZW50ID4gYSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgcGFkZGluZy1yaWdodDogMS41cmVtOyB9XG5cbi5kcm9wZG93bi5tZW51ID4gbGkuaXMtZHJvcGRvd24tc3VibWVudS1wYXJlbnQgPiBhOjphZnRlciB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMDtcbiAgaGVpZ2h0OiAwO1xuICBib3JkZXI6IGluc2V0IDZweDtcbiAgY29udGVudDogJyc7XG4gIGJvcmRlci1ib3R0b20td2lkdGg6IDA7XG4gIGJvcmRlci10b3Atc3R5bGU6IHNvbGlkO1xuICBib3JkZXItY29sb3I6ICMyREM5RDcgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQ7XG4gIHJpZ2h0OiA1cHg7XG4gIGxlZnQ6IGF1dG87XG4gIG1hcmdpbi10b3A6IC0zcHg7IH1cblxuLmRyb3Bkb3duLm1lbnUgYSB7XG4gIHBhZGRpbmc6IDAuN3JlbSAxcmVtOyB9XG4gIFtkYXRhLXdoYXRpbnB1dD0nbW91c2UnXSAuZHJvcGRvd24ubWVudSBhIHtcbiAgICBvdXRsaW5lOiAwOyB9XG5cbi5kcm9wZG93bi5tZW51IC5pcy1hY3RpdmUgPiBhIHtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gIGNvbG9yOiAjZTZlNmU2OyB9XG5cbi5uby1qcyAuZHJvcGRvd24ubWVudSB1bCB7XG4gIGRpc3BsYXk6IG5vbmU7IH1cblxuLmRyb3Bkb3duLm1lbnUgLm5lc3RlZC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgbWFyZ2luLXJpZ2h0OiAwO1xuICBtYXJnaW4tbGVmdDogMDsgfVxuXG4uZHJvcGRvd24ubWVudS52ZXJ0aWNhbCA+IGxpIC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgdG9wOiAwOyB9XG5cbi5kcm9wZG93bi5tZW51LnZlcnRpY2FsID4gbGkub3BlbnMtbGVmdCA+IC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgcmlnaHQ6IDEwMCU7XG4gIGxlZnQ6IGF1dG87XG4gIHRvcDogMDsgfVxuXG4uZHJvcGRvd24ubWVudS52ZXJ0aWNhbCA+IGxpLm9wZW5zLXJpZ2h0ID4gLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICByaWdodDogYXV0bztcbiAgbGVmdDogMTAwJTsgfVxuXG4uZHJvcGRvd24ubWVudS52ZXJ0aWNhbCA+IGxpID4gYTo6YWZ0ZXIge1xuICByaWdodDogMTRweDsgfVxuXG4uZHJvcGRvd24ubWVudS52ZXJ0aWNhbCA+IGxpLm9wZW5zLWxlZnQgPiBhOjphZnRlciB7XG4gIHJpZ2h0OiBhdXRvO1xuICBsZWZ0OiA1cHg7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMDtcbiAgaGVpZ2h0OiAwO1xuICBib3JkZXI6IGluc2V0IDZweDtcbiAgY29udGVudDogJyc7XG4gIGJvcmRlci1sZWZ0LXdpZHRoOiAwO1xuICBib3JkZXItcmlnaHQtc3R5bGU6IHNvbGlkO1xuICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50ICMyREM5RDcgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQ7IH1cblxuLmRyb3Bkb3duLm1lbnUudmVydGljYWwgPiBsaS5vcGVucy1yaWdodCA+IGE6OmFmdGVyIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAwO1xuICBoZWlnaHQ6IDA7XG4gIGJvcmRlcjogaW5zZXQgNnB4O1xuICBjb250ZW50OiAnJztcbiAgYm9yZGVyLXJpZ2h0LXdpZHRoOiAwO1xuICBib3JkZXItbGVmdC1zdHlsZTogc29saWQ7XG4gIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgIzJEQzlENzsgfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAuZHJvcGRvd24ubWVudS5tZWRpdW0taG9yaXpvbnRhbCA+IGxpLm9wZW5zLWxlZnQgPiAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gICAgdG9wOiAxMDAlO1xuICAgIHJpZ2h0OiAwO1xuICAgIGxlZnQ6IGF1dG87IH1cbiAgLmRyb3Bkb3duLm1lbnUubWVkaXVtLWhvcml6b250YWwgPiBsaS5vcGVucy1yaWdodCA+IC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgICB0b3A6IDEwMCU7XG4gICAgcmlnaHQ6IGF1dG87XG4gICAgbGVmdDogMDsgfVxuICAuZHJvcGRvd24ubWVudS5tZWRpdW0taG9yaXpvbnRhbCA+IGxpLmlzLWRyb3Bkb3duLXN1Ym1lbnUtcGFyZW50ID4gYSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHBhZGRpbmctcmlnaHQ6IDEuNXJlbTsgfVxuICAuZHJvcGRvd24ubWVudS5tZWRpdW0taG9yaXpvbnRhbCA+IGxpLmlzLWRyb3Bkb3duLXN1Ym1lbnUtcGFyZW50ID4gYTo6YWZ0ZXIge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAwO1xuICAgIGhlaWdodDogMDtcbiAgICBib3JkZXI6IGluc2V0IDZweDtcbiAgICBjb250ZW50OiAnJztcbiAgICBib3JkZXItYm90dG9tLXdpZHRoOiAwO1xuICAgIGJvcmRlci10b3Atc3R5bGU6IHNvbGlkO1xuICAgIGJvcmRlci1jb2xvcjogIzJEQzlENyB0cmFuc3BhcmVudCB0cmFuc3BhcmVudDtcbiAgICByaWdodDogNXB4O1xuICAgIGxlZnQ6IGF1dG87XG4gICAgbWFyZ2luLXRvcDogLTNweDsgfVxuICAuZHJvcGRvd24ubWVudS5tZWRpdW0tdmVydGljYWwgPiBsaSAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gICAgdG9wOiAwOyB9XG4gIC5kcm9wZG93bi5tZW51Lm1lZGl1bS12ZXJ0aWNhbCA+IGxpLm9wZW5zLWxlZnQgPiAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gICAgcmlnaHQ6IDEwMCU7XG4gICAgbGVmdDogYXV0bztcbiAgICB0b3A6IDA7IH1cbiAgLmRyb3Bkb3duLm1lbnUubWVkaXVtLXZlcnRpY2FsID4gbGkub3BlbnMtcmlnaHQgPiAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gICAgcmlnaHQ6IGF1dG87XG4gICAgbGVmdDogMTAwJTsgfVxuICAuZHJvcGRvd24ubWVudS5tZWRpdW0tdmVydGljYWwgPiBsaSA+IGE6OmFmdGVyIHtcbiAgICByaWdodDogMTRweDsgfVxuICAuZHJvcGRvd24ubWVudS5tZWRpdW0tdmVydGljYWwgPiBsaS5vcGVucy1sZWZ0ID4gYTo6YWZ0ZXIge1xuICAgIHJpZ2h0OiBhdXRvO1xuICAgIGxlZnQ6IDVweDtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMDtcbiAgICBoZWlnaHQ6IDA7XG4gICAgYm9yZGVyOiBpbnNldCA2cHg7XG4gICAgY29udGVudDogJyc7XG4gICAgYm9yZGVyLWxlZnQtd2lkdGg6IDA7XG4gICAgYm9yZGVyLXJpZ2h0LXN0eWxlOiBzb2xpZDtcbiAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50ICMyREM5RDcgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQ7IH1cbiAgLmRyb3Bkb3duLm1lbnUubWVkaXVtLXZlcnRpY2FsID4gbGkub3BlbnMtcmlnaHQgPiBhOjphZnRlciB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDA7XG4gICAgaGVpZ2h0OiAwO1xuICAgIGJvcmRlcjogaW5zZXQgNnB4O1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGJvcmRlci1yaWdodC13aWR0aDogMDtcbiAgICBib3JkZXItbGVmdC1zdHlsZTogc29saWQ7XG4gICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCAjMkRDOUQ3OyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmRyb3Bkb3duLm1lbnUubGFyZ2UtaG9yaXpvbnRhbCA+IGxpLm9wZW5zLWxlZnQgPiAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gICAgdG9wOiAxMDAlO1xuICAgIHJpZ2h0OiAwO1xuICAgIGxlZnQ6IGF1dG87IH1cbiAgLmRyb3Bkb3duLm1lbnUubGFyZ2UtaG9yaXpvbnRhbCA+IGxpLm9wZW5zLXJpZ2h0ID4gLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICAgIHRvcDogMTAwJTtcbiAgICByaWdodDogYXV0bztcbiAgICBsZWZ0OiAwOyB9XG4gIC5kcm9wZG93bi5tZW51LmxhcmdlLWhvcml6b250YWwgPiBsaS5pcy1kcm9wZG93bi1zdWJtZW51LXBhcmVudCA+IGEge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBwYWRkaW5nLXJpZ2h0OiAxLjVyZW07IH1cbiAgLmRyb3Bkb3duLm1lbnUubGFyZ2UtaG9yaXpvbnRhbCA+IGxpLmlzLWRyb3Bkb3duLXN1Ym1lbnUtcGFyZW50ID4gYTo6YWZ0ZXIge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAwO1xuICAgIGhlaWdodDogMDtcbiAgICBib3JkZXI6IGluc2V0IDZweDtcbiAgICBjb250ZW50OiAnJztcbiAgICBib3JkZXItYm90dG9tLXdpZHRoOiAwO1xuICAgIGJvcmRlci10b3Atc3R5bGU6IHNvbGlkO1xuICAgIGJvcmRlci1jb2xvcjogIzJEQzlENyB0cmFuc3BhcmVudCB0cmFuc3BhcmVudDtcbiAgICByaWdodDogNXB4O1xuICAgIGxlZnQ6IGF1dG87XG4gICAgbWFyZ2luLXRvcDogLTNweDsgfVxuICAuZHJvcGRvd24ubWVudS5sYXJnZS12ZXJ0aWNhbCA+IGxpIC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgICB0b3A6IDA7IH1cbiAgLmRyb3Bkb3duLm1lbnUubGFyZ2UtdmVydGljYWwgPiBsaS5vcGVucy1sZWZ0ID4gLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICAgIHJpZ2h0OiAxMDAlO1xuICAgIGxlZnQ6IGF1dG87XG4gICAgdG9wOiAwOyB9XG4gIC5kcm9wZG93bi5tZW51LmxhcmdlLXZlcnRpY2FsID4gbGkub3BlbnMtcmlnaHQgPiAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gICAgcmlnaHQ6IGF1dG87XG4gICAgbGVmdDogMTAwJTsgfVxuICAuZHJvcGRvd24ubWVudS5sYXJnZS12ZXJ0aWNhbCA+IGxpID4gYTo6YWZ0ZXIge1xuICAgIHJpZ2h0OiAxNHB4OyB9XG4gIC5kcm9wZG93bi5tZW51LmxhcmdlLXZlcnRpY2FsID4gbGkub3BlbnMtbGVmdCA+IGE6OmFmdGVyIHtcbiAgICByaWdodDogYXV0bztcbiAgICBsZWZ0OiA1cHg7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDA7XG4gICAgaGVpZ2h0OiAwO1xuICAgIGJvcmRlcjogaW5zZXQgNnB4O1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGJvcmRlci1sZWZ0LXdpZHRoOiAwO1xuICAgIGJvcmRlci1yaWdodC1zdHlsZTogc29saWQ7XG4gICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudCAjMkRDOUQ3IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50OyB9XG4gIC5kcm9wZG93bi5tZW51LmxhcmdlLXZlcnRpY2FsID4gbGkub3BlbnMtcmlnaHQgPiBhOjphZnRlciB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDA7XG4gICAgaGVpZ2h0OiAwO1xuICAgIGJvcmRlcjogaW5zZXQgNnB4O1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGJvcmRlci1yaWdodC13aWR0aDogMDtcbiAgICBib3JkZXItbGVmdC1zdHlsZTogc29saWQ7XG4gICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCAjMkRDOUQ3OyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAuZHJvcGRvd24ubWVudS54bGFyZ2UtaG9yaXpvbnRhbCA+IGxpLm9wZW5zLWxlZnQgPiAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gICAgdG9wOiAxMDAlO1xuICAgIHJpZ2h0OiAwO1xuICAgIGxlZnQ6IGF1dG87IH1cbiAgLmRyb3Bkb3duLm1lbnUueGxhcmdlLWhvcml6b250YWwgPiBsaS5vcGVucy1yaWdodCA+IC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgICB0b3A6IDEwMCU7XG4gICAgcmlnaHQ6IGF1dG87XG4gICAgbGVmdDogMDsgfVxuICAuZHJvcGRvd24ubWVudS54bGFyZ2UtaG9yaXpvbnRhbCA+IGxpLmlzLWRyb3Bkb3duLXN1Ym1lbnUtcGFyZW50ID4gYSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHBhZGRpbmctcmlnaHQ6IDEuNXJlbTsgfVxuICAuZHJvcGRvd24ubWVudS54bGFyZ2UtaG9yaXpvbnRhbCA+IGxpLmlzLWRyb3Bkb3duLXN1Ym1lbnUtcGFyZW50ID4gYTo6YWZ0ZXIge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAwO1xuICAgIGhlaWdodDogMDtcbiAgICBib3JkZXI6IGluc2V0IDZweDtcbiAgICBjb250ZW50OiAnJztcbiAgICBib3JkZXItYm90dG9tLXdpZHRoOiAwO1xuICAgIGJvcmRlci10b3Atc3R5bGU6IHNvbGlkO1xuICAgIGJvcmRlci1jb2xvcjogIzJEQzlENyB0cmFuc3BhcmVudCB0cmFuc3BhcmVudDtcbiAgICByaWdodDogNXB4O1xuICAgIGxlZnQ6IGF1dG87XG4gICAgbWFyZ2luLXRvcDogLTNweDsgfVxuICAuZHJvcGRvd24ubWVudS54bGFyZ2UtdmVydGljYWwgPiBsaSAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gICAgdG9wOiAwOyB9XG4gIC5kcm9wZG93bi5tZW51LnhsYXJnZS12ZXJ0aWNhbCA+IGxpLm9wZW5zLWxlZnQgPiAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gICAgcmlnaHQ6IDEwMCU7XG4gICAgbGVmdDogYXV0bztcbiAgICB0b3A6IDA7IH1cbiAgLmRyb3Bkb3duLm1lbnUueGxhcmdlLXZlcnRpY2FsID4gbGkub3BlbnMtcmlnaHQgPiAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gICAgcmlnaHQ6IGF1dG87XG4gICAgbGVmdDogMTAwJTsgfVxuICAuZHJvcGRvd24ubWVudS54bGFyZ2UtdmVydGljYWwgPiBsaSA+IGE6OmFmdGVyIHtcbiAgICByaWdodDogMTRweDsgfVxuICAuZHJvcGRvd24ubWVudS54bGFyZ2UtdmVydGljYWwgPiBsaS5vcGVucy1sZWZ0ID4gYTo6YWZ0ZXIge1xuICAgIHJpZ2h0OiBhdXRvO1xuICAgIGxlZnQ6IDVweDtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMDtcbiAgICBoZWlnaHQ6IDA7XG4gICAgYm9yZGVyOiBpbnNldCA2cHg7XG4gICAgY29udGVudDogJyc7XG4gICAgYm9yZGVyLWxlZnQtd2lkdGg6IDA7XG4gICAgYm9yZGVyLXJpZ2h0LXN0eWxlOiBzb2xpZDtcbiAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50ICMyREM5RDcgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQ7IH1cbiAgLmRyb3Bkb3duLm1lbnUueGxhcmdlLXZlcnRpY2FsID4gbGkub3BlbnMtcmlnaHQgPiBhOjphZnRlciB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDA7XG4gICAgaGVpZ2h0OiAwO1xuICAgIGJvcmRlcjogaW5zZXQgNnB4O1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGJvcmRlci1yaWdodC13aWR0aDogMDtcbiAgICBib3JkZXItbGVmdC1zdHlsZTogc29saWQ7XG4gICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCAjMkRDOUQ3OyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTBlbSkge1xuICAuZHJvcGRvd24ubWVudS54eGxhcmdlLWhvcml6b250YWwgPiBsaS5vcGVucy1sZWZ0ID4gLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICAgIHRvcDogMTAwJTtcbiAgICByaWdodDogMDtcbiAgICBsZWZ0OiBhdXRvOyB9XG4gIC5kcm9wZG93bi5tZW51Lnh4bGFyZ2UtaG9yaXpvbnRhbCA+IGxpLm9wZW5zLXJpZ2h0ID4gLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICAgIHRvcDogMTAwJTtcbiAgICByaWdodDogYXV0bztcbiAgICBsZWZ0OiAwOyB9XG4gIC5kcm9wZG93bi5tZW51Lnh4bGFyZ2UtaG9yaXpvbnRhbCA+IGxpLmlzLWRyb3Bkb3duLXN1Ym1lbnUtcGFyZW50ID4gYSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHBhZGRpbmctcmlnaHQ6IDEuNXJlbTsgfVxuICAuZHJvcGRvd24ubWVudS54eGxhcmdlLWhvcml6b250YWwgPiBsaS5pcy1kcm9wZG93bi1zdWJtZW51LXBhcmVudCA+IGE6OmFmdGVyIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMDtcbiAgICBoZWlnaHQ6IDA7XG4gICAgYm9yZGVyOiBpbnNldCA2cHg7XG4gICAgY29udGVudDogJyc7XG4gICAgYm9yZGVyLWJvdHRvbS13aWR0aDogMDtcbiAgICBib3JkZXItdG9wLXN0eWxlOiBzb2xpZDtcbiAgICBib3JkZXItY29sb3I6ICMyREM5RDcgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQ7XG4gICAgcmlnaHQ6IDVweDtcbiAgICBsZWZ0OiBhdXRvO1xuICAgIG1hcmdpbi10b3A6IC0zcHg7IH1cbiAgLmRyb3Bkb3duLm1lbnUueHhsYXJnZS12ZXJ0aWNhbCA+IGxpIC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgICB0b3A6IDA7IH1cbiAgLmRyb3Bkb3duLm1lbnUueHhsYXJnZS12ZXJ0aWNhbCA+IGxpLm9wZW5zLWxlZnQgPiAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gICAgcmlnaHQ6IDEwMCU7XG4gICAgbGVmdDogYXV0bztcbiAgICB0b3A6IDA7IH1cbiAgLmRyb3Bkb3duLm1lbnUueHhsYXJnZS12ZXJ0aWNhbCA+IGxpLm9wZW5zLXJpZ2h0ID4gLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICAgIHJpZ2h0OiBhdXRvO1xuICAgIGxlZnQ6IDEwMCU7IH1cbiAgLmRyb3Bkb3duLm1lbnUueHhsYXJnZS12ZXJ0aWNhbCA+IGxpID4gYTo6YWZ0ZXIge1xuICAgIHJpZ2h0OiAxNHB4OyB9XG4gIC5kcm9wZG93bi5tZW51Lnh4bGFyZ2UtdmVydGljYWwgPiBsaS5vcGVucy1sZWZ0ID4gYTo6YWZ0ZXIge1xuICAgIHJpZ2h0OiBhdXRvO1xuICAgIGxlZnQ6IDVweDtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMDtcbiAgICBoZWlnaHQ6IDA7XG4gICAgYm9yZGVyOiBpbnNldCA2cHg7XG4gICAgY29udGVudDogJyc7XG4gICAgYm9yZGVyLWxlZnQtd2lkdGg6IDA7XG4gICAgYm9yZGVyLXJpZ2h0LXN0eWxlOiBzb2xpZDtcbiAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50ICMyREM5RDcgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQ7IH1cbiAgLmRyb3Bkb3duLm1lbnUueHhsYXJnZS12ZXJ0aWNhbCA+IGxpLm9wZW5zLXJpZ2h0ID4gYTo6YWZ0ZXIge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAwO1xuICAgIGhlaWdodDogMDtcbiAgICBib3JkZXI6IGluc2V0IDZweDtcbiAgICBjb250ZW50OiAnJztcbiAgICBib3JkZXItcmlnaHQtd2lkdGg6IDA7XG4gICAgYm9yZGVyLWxlZnQtc3R5bGU6IHNvbGlkO1xuICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgIzJEQzlENzsgfSB9XG5cbi5kcm9wZG93bi5tZW51LmFsaWduLXJpZ2h0IC5pcy1kcm9wZG93bi1zdWJtZW51LmZpcnN0LXN1YiB7XG4gIHRvcDogMTAwJTtcbiAgcmlnaHQ6IDA7XG4gIGxlZnQ6IGF1dG87IH1cblxuLmlzLWRyb3Bkb3duLW1lbnUudmVydGljYWwge1xuICB3aWR0aDogMTAwcHg7IH1cbiAgLmlzLWRyb3Bkb3duLW1lbnUudmVydGljYWwuYWxpZ24tcmlnaHQge1xuICAgIGZsb2F0OiByaWdodDsgfVxuXG4uaXMtZHJvcGRvd24tc3VibWVudS1wYXJlbnQge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgLmlzLWRyb3Bkb3duLXN1Ym1lbnUtcGFyZW50IGE6OmFmdGVyIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiA1MCU7XG4gICAgcmlnaHQ6IDVweDtcbiAgICBsZWZ0OiBhdXRvO1xuICAgIG1hcmdpbi10b3A6IC02cHg7IH1cbiAgLmlzLWRyb3Bkb3duLXN1Ym1lbnUtcGFyZW50Lm9wZW5zLWlubmVyID4gLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICAgIHRvcDogMTAwJTtcbiAgICBsZWZ0OiBhdXRvOyB9XG4gIC5pcy1kcm9wZG93bi1zdWJtZW51LXBhcmVudC5vcGVucy1sZWZ0ID4gLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICAgIHJpZ2h0OiAxMDAlO1xuICAgIGxlZnQ6IGF1dG87IH1cbiAgLmlzLWRyb3Bkb3duLXN1Ym1lbnUtcGFyZW50Lm9wZW5zLXJpZ2h0ID4gLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICAgIHJpZ2h0OiBhdXRvO1xuICAgIGxlZnQ6IDEwMCU7IH1cblxuLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgbGVmdDogMTAwJTtcbiAgei1pbmRleDogMTtcbiAgZGlzcGxheTogbm9uZTtcbiAgbWluLXdpZHRoOiAyMDBweDtcbiAgYm9yZGVyOiAxcHggc29saWQgI2NhY2FjYTtcbiAgYmFja2dyb3VuZDogI2ZmZmZmZjsgfVxuICAuZHJvcGRvd24gLmlzLWRyb3Bkb3duLXN1Ym1lbnUgYSB7XG4gICAgcGFkZGluZzogMC43cmVtIDFyZW07IH1cbiAgLmlzLWRyb3Bkb3duLXN1Ym1lbnUgLmlzLWRyb3Bkb3duLXN1Ym1lbnUtcGFyZW50ID4gYTo6YWZ0ZXIge1xuICAgIHJpZ2h0OiAxNHB4OyB9XG4gIC5pcy1kcm9wZG93bi1zdWJtZW51IC5pcy1kcm9wZG93bi1zdWJtZW51LXBhcmVudC5vcGVucy1sZWZ0ID4gYTo6YWZ0ZXIge1xuICAgIHJpZ2h0OiBhdXRvO1xuICAgIGxlZnQ6IDVweDtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMDtcbiAgICBoZWlnaHQ6IDA7XG4gICAgYm9yZGVyOiBpbnNldCA2cHg7XG4gICAgY29udGVudDogJyc7XG4gICAgYm9yZGVyLWxlZnQtd2lkdGg6IDA7XG4gICAgYm9yZGVyLXJpZ2h0LXN0eWxlOiBzb2xpZDtcbiAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50ICMyREM5RDcgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQ7IH1cbiAgLmlzLWRyb3Bkb3duLXN1Ym1lbnUgLmlzLWRyb3Bkb3duLXN1Ym1lbnUtcGFyZW50Lm9wZW5zLXJpZ2h0ID4gYTo6YWZ0ZXIge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAwO1xuICAgIGhlaWdodDogMDtcbiAgICBib3JkZXI6IGluc2V0IDZweDtcbiAgICBjb250ZW50OiAnJztcbiAgICBib3JkZXItcmlnaHQtd2lkdGg6IDA7XG4gICAgYm9yZGVyLWxlZnQtc3R5bGU6IHNvbGlkO1xuICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgIzJEQzlENzsgfVxuICAuaXMtZHJvcGRvd24tc3VibWVudSAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gICAgbWFyZ2luLXRvcDogLTFweDsgfVxuICAuaXMtZHJvcGRvd24tc3VibWVudSA+IGxpIHtcbiAgICB3aWR0aDogMTAwJTsgfVxuICAuaXMtZHJvcGRvd24tc3VibWVudS5qcy1kcm9wZG93bi1hY3RpdmUge1xuICAgIGRpc3BsYXk6IGJsb2NrOyB9XG5cbi5yZXNwb25zaXZlLWVtYmVkLFxuLmZsZXgtdmlkZW8ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGhlaWdodDogMDtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgcGFkZGluZy1ib3R0b206IDc1JTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjsgfVxuICAucmVzcG9uc2l2ZS1lbWJlZCBpZnJhbWUsXG4gIC5yZXNwb25zaXZlLWVtYmVkIG9iamVjdCxcbiAgLnJlc3BvbnNpdmUtZW1iZWQgZW1iZWQsXG4gIC5yZXNwb25zaXZlLWVtYmVkIHZpZGVvLFxuICAuZmxleC12aWRlbyBpZnJhbWUsXG4gIC5mbGV4LXZpZGVvIG9iamVjdCxcbiAgLmZsZXgtdmlkZW8gZW1iZWQsXG4gIC5mbGV4LXZpZGVvIHZpZGVvIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlOyB9XG4gIC5yZXNwb25zaXZlLWVtYmVkLndpZGVzY3JlZW4sXG4gIC5mbGV4LXZpZGVvLndpZGVzY3JlZW4ge1xuICAgIHBhZGRpbmctYm90dG9tOiA1Ni4yNSU7IH1cblxuLmxhYmVsIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBwYWRkaW5nOiAwLjMzMzMzcmVtIDAuNXJlbTtcbiAgYm9yZGVyLXJhZGl1czogMDtcbiAgZm9udC1zaXplOiAwLjhyZW07XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICBjdXJzb3I6IGRlZmF1bHQ7XG4gIGJhY2tncm91bmQ6ICMyREM5RDc7XG4gIGNvbG9yOiAjZmZmZmZmOyB9XG4gIC5sYWJlbC5wcmltYXJ5IHtcbiAgICBiYWNrZ3JvdW5kOiAjMkRDOUQ3O1xuICAgIGNvbG9yOiAjMDAwMDAwOyB9XG4gIC5sYWJlbC5zZWNvbmRhcnkge1xuICAgIGJhY2tncm91bmQ6ICNGQ0I1MzY7XG4gICAgY29sb3I6ICMwMDAwMDA7IH1cbiAgLmxhYmVsLnN1Y2Nlc3Mge1xuICAgIGJhY2tncm91bmQ6ICMzYWRiNzY7XG4gICAgY29sb3I6ICMwMDAwMDA7IH1cbiAgLmxhYmVsLndhcm5pbmcge1xuICAgIGJhY2tncm91bmQ6ICNmZmFlMDA7XG4gICAgY29sb3I6ICMwMDAwMDA7IH1cbiAgLmxhYmVsLmFsZXJ0IHtcbiAgICBiYWNrZ3JvdW5kOiAjY2M0YjM3O1xuICAgIGNvbG9yOiAjMDAwMDAwOyB9XG5cbi5tZWRpYS1vYmplY3Qge1xuICBkaXNwbGF5OiBmbGV4O1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICBmbGV4LXdyYXA6IG5vd3JhcDsgfVxuICAubWVkaWEtb2JqZWN0IGltZyB7XG4gICAgbWF4LXdpZHRoOiBub25lOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5LjkzNzVlbSkge1xuICAgIC5tZWRpYS1vYmplY3Quc3RhY2stZm9yLXNtYWxsIHtcbiAgICAgIGZsZXgtd3JhcDogd3JhcDsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5LjkzNzVlbSkge1xuICAgIC5tZWRpYS1vYmplY3Quc3RhY2stZm9yLXNtYWxsIC5tZWRpYS1vYmplY3Qtc2VjdGlvbiB7XG4gICAgICBwYWRkaW5nOiAwO1xuICAgICAgcGFkZGluZy1ib3R0b206IDFyZW07XG4gICAgICBmbGV4LWJhc2lzOiAxMDAlO1xuICAgICAgbWF4LXdpZHRoOiAxMDAlOyB9XG4gICAgICAubWVkaWEtb2JqZWN0LnN0YWNrLWZvci1zbWFsbCAubWVkaWEtb2JqZWN0LXNlY3Rpb24gaW1nIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7IH0gfVxuXG4ubWVkaWEtb2JqZWN0LXNlY3Rpb24ge1xuICBmbGV4OiAwIDEgYXV0bzsgfVxuICAubWVkaWEtb2JqZWN0LXNlY3Rpb246Zmlyc3QtY2hpbGQge1xuICAgIHBhZGRpbmctcmlnaHQ6IDFyZW07IH1cbiAgLm1lZGlhLW9iamVjdC1zZWN0aW9uOmxhc3QtY2hpbGQ6bm90KDpudGgtY2hpbGQoMikpIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDFyZW07IH1cbiAgLm1lZGlhLW9iamVjdC1zZWN0aW9uID4gOmxhc3QtY2hpbGQge1xuICAgIG1hcmdpbi1ib3R0b206IDA7IH1cbiAgLm1lZGlhLW9iamVjdC1zZWN0aW9uLm1haW4tc2VjdGlvbiB7XG4gICAgZmxleDogMSAxIDBweDsgfVxuXG4uaXMtb2ZmLWNhbnZhcy1vcGVuIHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjsgfVxuXG4uanMtb2ZmLWNhbnZhcy1vdmVybGF5IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHotaW5kZXg6IDExO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuNXMgZWFzZSwgdmlzaWJpbGl0eSAwLjVzIGVhc2U7XG4gIGJhY2tncm91bmQ6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4yNSk7XG4gIG9wYWNpdHk6IDA7XG4gIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgb3ZlcmZsb3c6IGhpZGRlbjsgfVxuICAuanMtb2ZmLWNhbnZhcy1vdmVybGF5LmlzLXZpc2libGUge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTsgfVxuICAuanMtb2ZmLWNhbnZhcy1vdmVybGF5LmlzLWNsb3NhYmxlIHtcbiAgICBjdXJzb3I6IHBvaW50ZXI7IH1cbiAgLmpzLW9mZi1jYW52YXMtb3ZlcmxheS5pcy1vdmVybGF5LWFic29sdXRlIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7IH1cbiAgLmpzLW9mZi1jYW52YXMtb3ZlcmxheS5pcy1vdmVybGF5LWZpeGVkIHtcbiAgICBwb3NpdGlvbjogZml4ZWQ7IH1cblxuLm9mZi1jYW52YXMtd3JhcHBlciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjsgfVxuXG4ub2ZmLWNhbnZhcyB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgei1pbmRleDogMTI7XG4gIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjVzIGVhc2U7XG4gIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgYmFja2dyb3VuZDogI2ZmZmZmZjsgfVxuICBbZGF0YS13aGF0aW5wdXQ9J21vdXNlJ10gLm9mZi1jYW52YXMge1xuICAgIG91dGxpbmU6IDA7IH1cbiAgLm9mZi1jYW52YXMuaXMtdHJhbnNpdGlvbi1wdXNoIHtcbiAgICB6LWluZGV4OiAxMjsgfVxuICAub2ZmLWNhbnZhcy5pcy1jbG9zZWQge1xuICAgIHZpc2liaWxpdHk6IGhpZGRlbjsgfVxuICAub2ZmLWNhbnZhcy5pcy10cmFuc2l0aW9uLW92ZXJsYXAge1xuICAgIHotaW5kZXg6IDEzOyB9XG4gICAgLm9mZi1jYW52YXMuaXMtdHJhbnNpdGlvbi1vdmVybGFwLmlzLW9wZW4ge1xuICAgICAgYm94LXNoYWRvdzogMCAwIDEwcHggcmdiYSgwLCAwLCAwLCAwLjcpOyB9XG4gIC5vZmYtY2FudmFzLmlzLW9wZW4ge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIDApOyB9XG5cbi5vZmYtY2FudmFzLWFic29sdXRlIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB6LWluZGV4OiAxMjtcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuNXMgZWFzZTtcbiAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICBiYWNrZ3JvdW5kOiAjZmZmZmZmOyB9XG4gIFtkYXRhLXdoYXRpbnB1dD0nbW91c2UnXSAub2ZmLWNhbnZhcy1hYnNvbHV0ZSB7XG4gICAgb3V0bGluZTogMDsgfVxuICAub2ZmLWNhbnZhcy1hYnNvbHV0ZS5pcy10cmFuc2l0aW9uLXB1c2gge1xuICAgIHotaW5kZXg6IDEyOyB9XG4gIC5vZmYtY2FudmFzLWFic29sdXRlLmlzLWNsb3NlZCB7XG4gICAgdmlzaWJpbGl0eTogaGlkZGVuOyB9XG4gIC5vZmYtY2FudmFzLWFic29sdXRlLmlzLXRyYW5zaXRpb24tb3ZlcmxhcCB7XG4gICAgei1pbmRleDogMTM7IH1cbiAgICAub2ZmLWNhbnZhcy1hYnNvbHV0ZS5pcy10cmFuc2l0aW9uLW92ZXJsYXAuaXMtb3BlbiB7XG4gICAgICBib3gtc2hhZG93OiAwIDAgMTBweCByZ2JhKDAsIDAsIDAsIDAuNyk7IH1cbiAgLm9mZi1jYW52YXMtYWJzb2x1dGUuaXMtb3BlbiB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgMCk7IH1cblxuLnBvc2l0aW9uLWxlZnQge1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIGhlaWdodDogMTAwJTtcbiAgb3ZlcmZsb3cteTogYXV0bztcbiAgd2lkdGg6IDI1MHB4O1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTI1MHB4KTsgfVxuICAub2ZmLWNhbnZhcy1jb250ZW50IC5vZmYtY2FudmFzLnBvc2l0aW9uLWxlZnQge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMjUwcHgpOyB9XG4gICAgLm9mZi1jYW52YXMtY29udGVudCAub2ZmLWNhbnZhcy5wb3NpdGlvbi1sZWZ0LmlzLXRyYW5zaXRpb24tb3ZlcmxhcC5pcy1vcGVuIHtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIDApOyB9XG4gIC5vZmYtY2FudmFzLWNvbnRlbnQuaXMtb3Blbi1sZWZ0Lmhhcy10cmFuc2l0aW9uLXB1c2gge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgyNTBweCk7IH1cbiAgLnBvc2l0aW9uLWxlZnQuaXMtdHJhbnNpdGlvbi1wdXNoIHtcbiAgICBib3gtc2hhZG93OiBpbnNldCAtMTNweCAwIDIwcHggLTEzcHggcmdiYSgwLCAwLCAwLCAwLjI1KTsgfVxuXG4ucG9zaXRpb24tcmlnaHQge1xuICB0b3A6IDA7XG4gIHJpZ2h0OiAwO1xuICBoZWlnaHQ6IDEwMCU7XG4gIG92ZXJmbG93LXk6IGF1dG87XG4gIHdpZHRoOiAyNTBweDtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDI1MHB4KTsgfVxuICAub2ZmLWNhbnZhcy1jb250ZW50IC5vZmYtY2FudmFzLnBvc2l0aW9uLXJpZ2h0IHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMjUwcHgpOyB9XG4gICAgLm9mZi1jYW52YXMtY29udGVudCAub2ZmLWNhbnZhcy5wb3NpdGlvbi1yaWdodC5pcy10cmFuc2l0aW9uLW92ZXJsYXAuaXMtb3BlbiB7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAwKTsgfVxuICAub2ZmLWNhbnZhcy1jb250ZW50LmlzLW9wZW4tcmlnaHQuaGFzLXRyYW5zaXRpb24tcHVzaCB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0yNTBweCk7IH1cbiAgLnBvc2l0aW9uLXJpZ2h0LmlzLXRyYW5zaXRpb24tcHVzaCB7XG4gICAgYm94LXNoYWRvdzogaW5zZXQgMTNweCAwIDIwcHggLTEzcHggcmdiYSgwLCAwLCAwLCAwLjI1KTsgfVxuXG4ucG9zaXRpb24tdG9wIHtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICB3aWR0aDogMTAwJTtcbiAgb3ZlcmZsb3cteDogYXV0bztcbiAgaGVpZ2h0OiAyNTBweDtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0yNTBweCk7IH1cbiAgLm9mZi1jYW52YXMtY29udGVudCAub2ZmLWNhbnZhcy5wb3NpdGlvbi10b3Age1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMjUwcHgpOyB9XG4gICAgLm9mZi1jYW52YXMtY29udGVudCAub2ZmLWNhbnZhcy5wb3NpdGlvbi10b3AuaXMtdHJhbnNpdGlvbi1vdmVybGFwLmlzLW9wZW4ge1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgMCk7IH1cbiAgLm9mZi1jYW52YXMtY29udGVudC5pcy1vcGVuLXRvcC5oYXMtdHJhbnNpdGlvbi1wdXNoIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMjUwcHgpOyB9XG4gIC5wb3NpdGlvbi10b3AuaXMtdHJhbnNpdGlvbi1wdXNoIHtcbiAgICBib3gtc2hhZG93OiBpbnNldCAwIC0xM3B4IDIwcHggLTEzcHggcmdiYSgwLCAwLCAwLCAwLjI1KTsgfVxuXG4ucG9zaXRpb24tYm90dG9tIHtcbiAgYm90dG9tOiAwO1xuICBsZWZ0OiAwO1xuICB3aWR0aDogMTAwJTtcbiAgb3ZlcmZsb3cteDogYXV0bztcbiAgaGVpZ2h0OiAyNTBweDtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDI1MHB4KTsgfVxuICAub2ZmLWNhbnZhcy1jb250ZW50IC5vZmYtY2FudmFzLnBvc2l0aW9uLWJvdHRvbSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDI1MHB4KTsgfVxuICAgIC5vZmYtY2FudmFzLWNvbnRlbnQgLm9mZi1jYW52YXMucG9zaXRpb24tYm90dG9tLmlzLXRyYW5zaXRpb24tb3ZlcmxhcC5pcy1vcGVuIHtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIDApOyB9XG4gIC5vZmYtY2FudmFzLWNvbnRlbnQuaXMtb3Blbi1ib3R0b20uaGFzLXRyYW5zaXRpb24tcHVzaCB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0yNTBweCk7IH1cbiAgLnBvc2l0aW9uLWJvdHRvbS5pcy10cmFuc2l0aW9uLXB1c2gge1xuICAgIGJveC1zaGFkb3c6IGluc2V0IDAgMTNweCAyMHB4IC0xM3B4IHJnYmEoMCwgMCwgMCwgMC4yNSk7IH1cblxuLm9mZi1jYW52YXMtY29udGVudCB7XG4gIHRyYW5zZm9ybTogbm9uZTtcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuNXMgZWFzZTtcbiAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuOyB9XG4gIC5vZmYtY2FudmFzLWNvbnRlbnQuaGFzLXRyYW5zaXRpb24tcHVzaCB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgMCk7IH1cbiAgLm9mZi1jYW52YXMtY29udGVudCAub2ZmLWNhbnZhcy5pcy1vcGVuIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAwKTsgfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAucG9zaXRpb24tbGVmdC5yZXZlYWwtZm9yLW1lZGl1bSB7XG4gICAgdHJhbnNmb3JtOiBub25lO1xuICAgIHotaW5kZXg6IDEyO1xuICAgIHRyYW5zaXRpb246IG5vbmU7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTsgfVxuICAgIC5wb3NpdGlvbi1sZWZ0LnJldmVhbC1mb3ItbWVkaXVtIC5jbG9zZS1idXR0b24ge1xuICAgICAgZGlzcGxheTogbm9uZTsgfVxuICAgIC5vZmYtY2FudmFzLWNvbnRlbnQgLnBvc2l0aW9uLWxlZnQucmV2ZWFsLWZvci1tZWRpdW0ge1xuICAgICAgdHJhbnNmb3JtOiBub25lOyB9XG4gICAgLm9mZi1jYW52YXMtY29udGVudC5oYXMtcmV2ZWFsLWxlZnQge1xuICAgICAgbWFyZ2luLWxlZnQ6IDI1MHB4OyB9XG4gICAgLnBvc2l0aW9uLWxlZnQucmV2ZWFsLWZvci1tZWRpdW0gfiAub2ZmLWNhbnZhcy1jb250ZW50IHtcbiAgICAgIG1hcmdpbi1sZWZ0OiAyNTBweDsgfVxuICAucG9zaXRpb24tcmlnaHQucmV2ZWFsLWZvci1tZWRpdW0ge1xuICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgICB6LWluZGV4OiAxMjtcbiAgICB0cmFuc2l0aW9uOiBub25lO1xuICAgIHZpc2liaWxpdHk6IHZpc2libGU7IH1cbiAgICAucG9zaXRpb24tcmlnaHQucmV2ZWFsLWZvci1tZWRpdW0gLmNsb3NlLWJ1dHRvbiB7XG4gICAgICBkaXNwbGF5OiBub25lOyB9XG4gICAgLm9mZi1jYW52YXMtY29udGVudCAucG9zaXRpb24tcmlnaHQucmV2ZWFsLWZvci1tZWRpdW0ge1xuICAgICAgdHJhbnNmb3JtOiBub25lOyB9XG4gICAgLm9mZi1jYW52YXMtY29udGVudC5oYXMtcmV2ZWFsLXJpZ2h0IHtcbiAgICAgIG1hcmdpbi1yaWdodDogMjUwcHg7IH1cbiAgICAucG9zaXRpb24tcmlnaHQucmV2ZWFsLWZvci1tZWRpdW0gfiAub2ZmLWNhbnZhcy1jb250ZW50IHtcbiAgICAgIG1hcmdpbi1yaWdodDogMjUwcHg7IH1cbiAgLnBvc2l0aW9uLXRvcC5yZXZlYWwtZm9yLW1lZGl1bSB7XG4gICAgdHJhbnNmb3JtOiBub25lO1xuICAgIHotaW5kZXg6IDEyO1xuICAgIHRyYW5zaXRpb246IG5vbmU7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTsgfVxuICAgIC5wb3NpdGlvbi10b3AucmV2ZWFsLWZvci1tZWRpdW0gLmNsb3NlLWJ1dHRvbiB7XG4gICAgICBkaXNwbGF5OiBub25lOyB9XG4gICAgLm9mZi1jYW52YXMtY29udGVudCAucG9zaXRpb24tdG9wLnJldmVhbC1mb3ItbWVkaXVtIHtcbiAgICAgIHRyYW5zZm9ybTogbm9uZTsgfVxuICAgIC5vZmYtY2FudmFzLWNvbnRlbnQuaGFzLXJldmVhbC10b3Age1xuICAgICAgbWFyZ2luLXRvcDogMjUwcHg7IH1cbiAgICAucG9zaXRpb24tdG9wLnJldmVhbC1mb3ItbWVkaXVtIH4gLm9mZi1jYW52YXMtY29udGVudCB7XG4gICAgICBtYXJnaW4tdG9wOiAyNTBweDsgfVxuICAucG9zaXRpb24tYm90dG9tLnJldmVhbC1mb3ItbWVkaXVtIHtcbiAgICB0cmFuc2Zvcm06IG5vbmU7XG4gICAgei1pbmRleDogMTI7XG4gICAgdHJhbnNpdGlvbjogbm9uZTtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlOyB9XG4gICAgLnBvc2l0aW9uLWJvdHRvbS5yZXZlYWwtZm9yLW1lZGl1bSAuY2xvc2UtYnV0dG9uIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgICAub2ZmLWNhbnZhcy1jb250ZW50IC5wb3NpdGlvbi1ib3R0b20ucmV2ZWFsLWZvci1tZWRpdW0ge1xuICAgICAgdHJhbnNmb3JtOiBub25lOyB9XG4gICAgLm9mZi1jYW52YXMtY29udGVudC5oYXMtcmV2ZWFsLWJvdHRvbSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAyNTBweDsgfVxuICAgIC5wb3NpdGlvbi1ib3R0b20ucmV2ZWFsLWZvci1tZWRpdW0gfiAub2ZmLWNhbnZhcy1jb250ZW50IHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDI1MHB4OyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLnBvc2l0aW9uLWxlZnQucmV2ZWFsLWZvci1sYXJnZSB7XG4gICAgdHJhbnNmb3JtOiBub25lO1xuICAgIHotaW5kZXg6IDEyO1xuICAgIHRyYW5zaXRpb246IG5vbmU7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTsgfVxuICAgIC5wb3NpdGlvbi1sZWZ0LnJldmVhbC1mb3ItbGFyZ2UgLmNsb3NlLWJ1dHRvbiB7XG4gICAgICBkaXNwbGF5OiBub25lOyB9XG4gICAgLm9mZi1jYW52YXMtY29udGVudCAucG9zaXRpb24tbGVmdC5yZXZlYWwtZm9yLWxhcmdlIHtcbiAgICAgIHRyYW5zZm9ybTogbm9uZTsgfVxuICAgIC5vZmYtY2FudmFzLWNvbnRlbnQuaGFzLXJldmVhbC1sZWZ0IHtcbiAgICAgIG1hcmdpbi1sZWZ0OiAyNTBweDsgfVxuICAgIC5wb3NpdGlvbi1sZWZ0LnJldmVhbC1mb3ItbGFyZ2UgfiAub2ZmLWNhbnZhcy1jb250ZW50IHtcbiAgICAgIG1hcmdpbi1sZWZ0OiAyNTBweDsgfVxuICAucG9zaXRpb24tcmlnaHQucmV2ZWFsLWZvci1sYXJnZSB7XG4gICAgdHJhbnNmb3JtOiBub25lO1xuICAgIHotaW5kZXg6IDEyO1xuICAgIHRyYW5zaXRpb246IG5vbmU7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTsgfVxuICAgIC5wb3NpdGlvbi1yaWdodC5yZXZlYWwtZm9yLWxhcmdlIC5jbG9zZS1idXR0b24ge1xuICAgICAgZGlzcGxheTogbm9uZTsgfVxuICAgIC5vZmYtY2FudmFzLWNvbnRlbnQgLnBvc2l0aW9uLXJpZ2h0LnJldmVhbC1mb3ItbGFyZ2Uge1xuICAgICAgdHJhbnNmb3JtOiBub25lOyB9XG4gICAgLm9mZi1jYW52YXMtY29udGVudC5oYXMtcmV2ZWFsLXJpZ2h0IHtcbiAgICAgIG1hcmdpbi1yaWdodDogMjUwcHg7IH1cbiAgICAucG9zaXRpb24tcmlnaHQucmV2ZWFsLWZvci1sYXJnZSB+IC5vZmYtY2FudmFzLWNvbnRlbnQge1xuICAgICAgbWFyZ2luLXJpZ2h0OiAyNTBweDsgfVxuICAucG9zaXRpb24tdG9wLnJldmVhbC1mb3ItbGFyZ2Uge1xuICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgICB6LWluZGV4OiAxMjtcbiAgICB0cmFuc2l0aW9uOiBub25lO1xuICAgIHZpc2liaWxpdHk6IHZpc2libGU7IH1cbiAgICAucG9zaXRpb24tdG9wLnJldmVhbC1mb3ItbGFyZ2UgLmNsb3NlLWJ1dHRvbiB7XG4gICAgICBkaXNwbGF5OiBub25lOyB9XG4gICAgLm9mZi1jYW52YXMtY29udGVudCAucG9zaXRpb24tdG9wLnJldmVhbC1mb3ItbGFyZ2Uge1xuICAgICAgdHJhbnNmb3JtOiBub25lOyB9XG4gICAgLm9mZi1jYW52YXMtY29udGVudC5oYXMtcmV2ZWFsLXRvcCB7XG4gICAgICBtYXJnaW4tdG9wOiAyNTBweDsgfVxuICAgIC5wb3NpdGlvbi10b3AucmV2ZWFsLWZvci1sYXJnZSB+IC5vZmYtY2FudmFzLWNvbnRlbnQge1xuICAgICAgbWFyZ2luLXRvcDogMjUwcHg7IH1cbiAgLnBvc2l0aW9uLWJvdHRvbS5yZXZlYWwtZm9yLWxhcmdlIHtcbiAgICB0cmFuc2Zvcm06IG5vbmU7XG4gICAgei1pbmRleDogMTI7XG4gICAgdHJhbnNpdGlvbjogbm9uZTtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlOyB9XG4gICAgLnBvc2l0aW9uLWJvdHRvbS5yZXZlYWwtZm9yLWxhcmdlIC5jbG9zZS1idXR0b24ge1xuICAgICAgZGlzcGxheTogbm9uZTsgfVxuICAgIC5vZmYtY2FudmFzLWNvbnRlbnQgLnBvc2l0aW9uLWJvdHRvbS5yZXZlYWwtZm9yLWxhcmdlIHtcbiAgICAgIHRyYW5zZm9ybTogbm9uZTsgfVxuICAgIC5vZmYtY2FudmFzLWNvbnRlbnQuaGFzLXJldmVhbC1ib3R0b20ge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMjUwcHg7IH1cbiAgICAucG9zaXRpb24tYm90dG9tLnJldmVhbC1mb3ItbGFyZ2UgfiAub2ZmLWNhbnZhcy1jb250ZW50IHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDI1MHB4OyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAucG9zaXRpb24tbGVmdC5yZXZlYWwtZm9yLXhsYXJnZSB7XG4gICAgdHJhbnNmb3JtOiBub25lO1xuICAgIHotaW5kZXg6IDEyO1xuICAgIHRyYW5zaXRpb246IG5vbmU7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTsgfVxuICAgIC5wb3NpdGlvbi1sZWZ0LnJldmVhbC1mb3IteGxhcmdlIC5jbG9zZS1idXR0b24ge1xuICAgICAgZGlzcGxheTogbm9uZTsgfVxuICAgIC5vZmYtY2FudmFzLWNvbnRlbnQgLnBvc2l0aW9uLWxlZnQucmV2ZWFsLWZvci14bGFyZ2Uge1xuICAgICAgdHJhbnNmb3JtOiBub25lOyB9XG4gICAgLm9mZi1jYW52YXMtY29udGVudC5oYXMtcmV2ZWFsLWxlZnQge1xuICAgICAgbWFyZ2luLWxlZnQ6IDI1MHB4OyB9XG4gICAgLnBvc2l0aW9uLWxlZnQucmV2ZWFsLWZvci14bGFyZ2UgfiAub2ZmLWNhbnZhcy1jb250ZW50IHtcbiAgICAgIG1hcmdpbi1sZWZ0OiAyNTBweDsgfVxuICAucG9zaXRpb24tcmlnaHQucmV2ZWFsLWZvci14bGFyZ2Uge1xuICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgICB6LWluZGV4OiAxMjtcbiAgICB0cmFuc2l0aW9uOiBub25lO1xuICAgIHZpc2liaWxpdHk6IHZpc2libGU7IH1cbiAgICAucG9zaXRpb24tcmlnaHQucmV2ZWFsLWZvci14bGFyZ2UgLmNsb3NlLWJ1dHRvbiB7XG4gICAgICBkaXNwbGF5OiBub25lOyB9XG4gICAgLm9mZi1jYW52YXMtY29udGVudCAucG9zaXRpb24tcmlnaHQucmV2ZWFsLWZvci14bGFyZ2Uge1xuICAgICAgdHJhbnNmb3JtOiBub25lOyB9XG4gICAgLm9mZi1jYW52YXMtY29udGVudC5oYXMtcmV2ZWFsLXJpZ2h0IHtcbiAgICAgIG1hcmdpbi1yaWdodDogMjUwcHg7IH1cbiAgICAucG9zaXRpb24tcmlnaHQucmV2ZWFsLWZvci14bGFyZ2UgfiAub2ZmLWNhbnZhcy1jb250ZW50IHtcbiAgICAgIG1hcmdpbi1yaWdodDogMjUwcHg7IH1cbiAgLnBvc2l0aW9uLXRvcC5yZXZlYWwtZm9yLXhsYXJnZSB7XG4gICAgdHJhbnNmb3JtOiBub25lO1xuICAgIHotaW5kZXg6IDEyO1xuICAgIHRyYW5zaXRpb246IG5vbmU7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTsgfVxuICAgIC5wb3NpdGlvbi10b3AucmV2ZWFsLWZvci14bGFyZ2UgLmNsb3NlLWJ1dHRvbiB7XG4gICAgICBkaXNwbGF5OiBub25lOyB9XG4gICAgLm9mZi1jYW52YXMtY29udGVudCAucG9zaXRpb24tdG9wLnJldmVhbC1mb3IteGxhcmdlIHtcbiAgICAgIHRyYW5zZm9ybTogbm9uZTsgfVxuICAgIC5vZmYtY2FudmFzLWNvbnRlbnQuaGFzLXJldmVhbC10b3Age1xuICAgICAgbWFyZ2luLXRvcDogMjUwcHg7IH1cbiAgICAucG9zaXRpb24tdG9wLnJldmVhbC1mb3IteGxhcmdlIH4gLm9mZi1jYW52YXMtY29udGVudCB7XG4gICAgICBtYXJnaW4tdG9wOiAyNTBweDsgfVxuICAucG9zaXRpb24tYm90dG9tLnJldmVhbC1mb3IteGxhcmdlIHtcbiAgICB0cmFuc2Zvcm06IG5vbmU7XG4gICAgei1pbmRleDogMTI7XG4gICAgdHJhbnNpdGlvbjogbm9uZTtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlOyB9XG4gICAgLnBvc2l0aW9uLWJvdHRvbS5yZXZlYWwtZm9yLXhsYXJnZSAuY2xvc2UtYnV0dG9uIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgICAub2ZmLWNhbnZhcy1jb250ZW50IC5wb3NpdGlvbi1ib3R0b20ucmV2ZWFsLWZvci14bGFyZ2Uge1xuICAgICAgdHJhbnNmb3JtOiBub25lOyB9XG4gICAgLm9mZi1jYW52YXMtY29udGVudC5oYXMtcmV2ZWFsLWJvdHRvbSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAyNTBweDsgfVxuICAgIC5wb3NpdGlvbi1ib3R0b20ucmV2ZWFsLWZvci14bGFyZ2UgfiAub2ZmLWNhbnZhcy1jb250ZW50IHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDI1MHB4OyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTBlbSkge1xuICAucG9zaXRpb24tbGVmdC5yZXZlYWwtZm9yLXh4bGFyZ2Uge1xuICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgICB6LWluZGV4OiAxMjtcbiAgICB0cmFuc2l0aW9uOiBub25lO1xuICAgIHZpc2liaWxpdHk6IHZpc2libGU7IH1cbiAgICAucG9zaXRpb24tbGVmdC5yZXZlYWwtZm9yLXh4bGFyZ2UgLmNsb3NlLWJ1dHRvbiB7XG4gICAgICBkaXNwbGF5OiBub25lOyB9XG4gICAgLm9mZi1jYW52YXMtY29udGVudCAucG9zaXRpb24tbGVmdC5yZXZlYWwtZm9yLXh4bGFyZ2Uge1xuICAgICAgdHJhbnNmb3JtOiBub25lOyB9XG4gICAgLm9mZi1jYW52YXMtY29udGVudC5oYXMtcmV2ZWFsLWxlZnQge1xuICAgICAgbWFyZ2luLWxlZnQ6IDI1MHB4OyB9XG4gICAgLnBvc2l0aW9uLWxlZnQucmV2ZWFsLWZvci14eGxhcmdlIH4gLm9mZi1jYW52YXMtY29udGVudCB7XG4gICAgICBtYXJnaW4tbGVmdDogMjUwcHg7IH1cbiAgLnBvc2l0aW9uLXJpZ2h0LnJldmVhbC1mb3IteHhsYXJnZSB7XG4gICAgdHJhbnNmb3JtOiBub25lO1xuICAgIHotaW5kZXg6IDEyO1xuICAgIHRyYW5zaXRpb246IG5vbmU7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTsgfVxuICAgIC5wb3NpdGlvbi1yaWdodC5yZXZlYWwtZm9yLXh4bGFyZ2UgLmNsb3NlLWJ1dHRvbiB7XG4gICAgICBkaXNwbGF5OiBub25lOyB9XG4gICAgLm9mZi1jYW52YXMtY29udGVudCAucG9zaXRpb24tcmlnaHQucmV2ZWFsLWZvci14eGxhcmdlIHtcbiAgICAgIHRyYW5zZm9ybTogbm9uZTsgfVxuICAgIC5vZmYtY2FudmFzLWNvbnRlbnQuaGFzLXJldmVhbC1yaWdodCB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDI1MHB4OyB9XG4gICAgLnBvc2l0aW9uLXJpZ2h0LnJldmVhbC1mb3IteHhsYXJnZSB+IC5vZmYtY2FudmFzLWNvbnRlbnQge1xuICAgICAgbWFyZ2luLXJpZ2h0OiAyNTBweDsgfVxuICAucG9zaXRpb24tdG9wLnJldmVhbC1mb3IteHhsYXJnZSB7XG4gICAgdHJhbnNmb3JtOiBub25lO1xuICAgIHotaW5kZXg6IDEyO1xuICAgIHRyYW5zaXRpb246IG5vbmU7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTsgfVxuICAgIC5wb3NpdGlvbi10b3AucmV2ZWFsLWZvci14eGxhcmdlIC5jbG9zZS1idXR0b24ge1xuICAgICAgZGlzcGxheTogbm9uZTsgfVxuICAgIC5vZmYtY2FudmFzLWNvbnRlbnQgLnBvc2l0aW9uLXRvcC5yZXZlYWwtZm9yLXh4bGFyZ2Uge1xuICAgICAgdHJhbnNmb3JtOiBub25lOyB9XG4gICAgLm9mZi1jYW52YXMtY29udGVudC5oYXMtcmV2ZWFsLXRvcCB7XG4gICAgICBtYXJnaW4tdG9wOiAyNTBweDsgfVxuICAgIC5wb3NpdGlvbi10b3AucmV2ZWFsLWZvci14eGxhcmdlIH4gLm9mZi1jYW52YXMtY29udGVudCB7XG4gICAgICBtYXJnaW4tdG9wOiAyNTBweDsgfVxuICAucG9zaXRpb24tYm90dG9tLnJldmVhbC1mb3IteHhsYXJnZSB7XG4gICAgdHJhbnNmb3JtOiBub25lO1xuICAgIHotaW5kZXg6IDEyO1xuICAgIHRyYW5zaXRpb246IG5vbmU7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTsgfVxuICAgIC5wb3NpdGlvbi1ib3R0b20ucmV2ZWFsLWZvci14eGxhcmdlIC5jbG9zZS1idXR0b24ge1xuICAgICAgZGlzcGxheTogbm9uZTsgfVxuICAgIC5vZmYtY2FudmFzLWNvbnRlbnQgLnBvc2l0aW9uLWJvdHRvbS5yZXZlYWwtZm9yLXh4bGFyZ2Uge1xuICAgICAgdHJhbnNmb3JtOiBub25lOyB9XG4gICAgLm9mZi1jYW52YXMtY29udGVudC5oYXMtcmV2ZWFsLWJvdHRvbSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAyNTBweDsgfVxuICAgIC5wb3NpdGlvbi1ib3R0b20ucmV2ZWFsLWZvci14eGxhcmdlIH4gLm9mZi1jYW52YXMtY29udGVudCB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAyNTBweDsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5vZmYtY2FudmFzLmluLWNhbnZhcy1mb3ItbWVkaXVtIHtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICAgIGhlaWdodDogYXV0bztcbiAgICBwb3NpdGlvbjogc3RhdGljO1xuICAgIGJhY2tncm91bmQ6IGluaGVyaXQ7XG4gICAgd2lkdGg6IGluaGVyaXQ7XG4gICAgb3ZlcmZsb3c6IGluaGVyaXQ7XG4gICAgdHJhbnNpdGlvbjogaW5oZXJpdDsgfVxuICAgIC5vZmYtY2FudmFzLmluLWNhbnZhcy1mb3ItbWVkaXVtLnBvc2l0aW9uLWxlZnQsIC5vZmYtY2FudmFzLmluLWNhbnZhcy1mb3ItbWVkaXVtLnBvc2l0aW9uLXJpZ2h0LCAub2ZmLWNhbnZhcy5pbi1jYW52YXMtZm9yLW1lZGl1bS5wb3NpdGlvbi10b3AsIC5vZmYtY2FudmFzLmluLWNhbnZhcy1mb3ItbWVkaXVtLnBvc2l0aW9uLWJvdHRvbSB7XG4gICAgICBib3gtc2hhZG93OiBub25lO1xuICAgICAgdHJhbnNmb3JtOiBub25lOyB9XG4gICAgLm9mZi1jYW52YXMuaW4tY2FudmFzLWZvci1tZWRpdW0gLmNsb3NlLWJ1dHRvbiB7XG4gICAgICBkaXNwbGF5OiBub25lOyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLm9mZi1jYW52YXMuaW4tY2FudmFzLWZvci1sYXJnZSB7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgcG9zaXRpb246IHN0YXRpYztcbiAgICBiYWNrZ3JvdW5kOiBpbmhlcml0O1xuICAgIHdpZHRoOiBpbmhlcml0O1xuICAgIG92ZXJmbG93OiBpbmhlcml0O1xuICAgIHRyYW5zaXRpb246IGluaGVyaXQ7IH1cbiAgICAub2ZmLWNhbnZhcy5pbi1jYW52YXMtZm9yLWxhcmdlLnBvc2l0aW9uLWxlZnQsIC5vZmYtY2FudmFzLmluLWNhbnZhcy1mb3ItbGFyZ2UucG9zaXRpb24tcmlnaHQsIC5vZmYtY2FudmFzLmluLWNhbnZhcy1mb3ItbGFyZ2UucG9zaXRpb24tdG9wLCAub2ZmLWNhbnZhcy5pbi1jYW52YXMtZm9yLWxhcmdlLnBvc2l0aW9uLWJvdHRvbSB7XG4gICAgICBib3gtc2hhZG93OiBub25lO1xuICAgICAgdHJhbnNmb3JtOiBub25lOyB9XG4gICAgLm9mZi1jYW52YXMuaW4tY2FudmFzLWZvci1sYXJnZSAuY2xvc2UtYnV0dG9uIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gIC5vZmYtY2FudmFzLmluLWNhbnZhcy1mb3IteGxhcmdlIHtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICAgIGhlaWdodDogYXV0bztcbiAgICBwb3NpdGlvbjogc3RhdGljO1xuICAgIGJhY2tncm91bmQ6IGluaGVyaXQ7XG4gICAgd2lkdGg6IGluaGVyaXQ7XG4gICAgb3ZlcmZsb3c6IGluaGVyaXQ7XG4gICAgdHJhbnNpdGlvbjogaW5oZXJpdDsgfVxuICAgIC5vZmYtY2FudmFzLmluLWNhbnZhcy1mb3IteGxhcmdlLnBvc2l0aW9uLWxlZnQsIC5vZmYtY2FudmFzLmluLWNhbnZhcy1mb3IteGxhcmdlLnBvc2l0aW9uLXJpZ2h0LCAub2ZmLWNhbnZhcy5pbi1jYW52YXMtZm9yLXhsYXJnZS5wb3NpdGlvbi10b3AsIC5vZmYtY2FudmFzLmluLWNhbnZhcy1mb3IteGxhcmdlLnBvc2l0aW9uLWJvdHRvbSB7XG4gICAgICBib3gtc2hhZG93OiBub25lO1xuICAgICAgdHJhbnNmb3JtOiBub25lOyB9XG4gICAgLm9mZi1jYW52YXMuaW4tY2FudmFzLWZvci14bGFyZ2UgLmNsb3NlLWJ1dHRvbiB7XG4gICAgICBkaXNwbGF5OiBub25lOyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTBlbSkge1xuICAub2ZmLWNhbnZhcy5pbi1jYW52YXMtZm9yLXh4bGFyZ2Uge1xuICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIHBvc2l0aW9uOiBzdGF0aWM7XG4gICAgYmFja2dyb3VuZDogaW5oZXJpdDtcbiAgICB3aWR0aDogaW5oZXJpdDtcbiAgICBvdmVyZmxvdzogaW5oZXJpdDtcbiAgICB0cmFuc2l0aW9uOiBpbmhlcml0OyB9XG4gICAgLm9mZi1jYW52YXMuaW4tY2FudmFzLWZvci14eGxhcmdlLnBvc2l0aW9uLWxlZnQsIC5vZmYtY2FudmFzLmluLWNhbnZhcy1mb3IteHhsYXJnZS5wb3NpdGlvbi1yaWdodCwgLm9mZi1jYW52YXMuaW4tY2FudmFzLWZvci14eGxhcmdlLnBvc2l0aW9uLXRvcCwgLm9mZi1jYW52YXMuaW4tY2FudmFzLWZvci14eGxhcmdlLnBvc2l0aW9uLWJvdHRvbSB7XG4gICAgICBib3gtc2hhZG93OiBub25lO1xuICAgICAgdHJhbnNmb3JtOiBub25lOyB9XG4gICAgLm9mZi1jYW52YXMuaW4tY2FudmFzLWZvci14eGxhcmdlIC5jbG9zZS1idXR0b24ge1xuICAgICAgZGlzcGxheTogbm9uZTsgfSB9XG5cbi5vcmJpdCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuXG4ub3JiaXQtY29udGFpbmVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBoZWlnaHQ6IDA7XG4gIG1hcmdpbjogMDtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjsgfVxuXG4ub3JiaXQtc2xpZGUge1xuICB3aWR0aDogMTAwJTsgfVxuICAub3JiaXQtc2xpZGUubm8tbW90aW9udWkuaXMtYWN0aXZlIHtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDsgfVxuXG4ub3JiaXQtZmlndXJlIHtcbiAgbWFyZ2luOiAwOyB9XG5cbi5vcmJpdC1pbWFnZSB7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIG1hcmdpbjogMDsgfVxuXG4ub3JiaXQtY2FwdGlvbiB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgYm90dG9tOiAwO1xuICB3aWR0aDogMTAwJTtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgcGFkZGluZzogMXJlbTtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjUpO1xuICBjb2xvcjogI2ZmZmZmZjsgfVxuXG4ub3JiaXQtcHJldmlvdXMsIC5vcmJpdC1uZXh0IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDUwJTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICB6LWluZGV4OiAxMDtcbiAgcGFkZGluZzogMXJlbTtcbiAgY29sb3I6ICNmZmZmZmY7IH1cbiAgW2RhdGEtd2hhdGlucHV0PSdtb3VzZSddIC5vcmJpdC1wcmV2aW91cywgW2RhdGEtd2hhdGlucHV0PSdtb3VzZSddIC5vcmJpdC1uZXh0IHtcbiAgICBvdXRsaW5lOiAwOyB9XG4gIC5vcmJpdC1wcmV2aW91czpob3ZlciwgLm9yYml0LW5leHQ6aG92ZXIsIC5vcmJpdC1wcmV2aW91czphY3RpdmUsIC5vcmJpdC1uZXh0OmFjdGl2ZSwgLm9yYml0LXByZXZpb3VzOmZvY3VzLCAub3JiaXQtbmV4dDpmb2N1cyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjUpOyB9XG5cbi5vcmJpdC1wcmV2aW91cyB7XG4gIGxlZnQ6IDA7IH1cblxuLm9yYml0LW5leHQge1xuICBsZWZ0OiBhdXRvO1xuICByaWdodDogMDsgfVxuXG4ub3JiaXQtYnVsbGV0cyB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbWFyZ2luLXRvcDogMC44cmVtO1xuICBtYXJnaW4tYm90dG9tOiAwLjhyZW07XG4gIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuICBbZGF0YS13aGF0aW5wdXQ9J21vdXNlJ10gLm9yYml0LWJ1bGxldHMge1xuICAgIG91dGxpbmU6IDA7IH1cbiAgLm9yYml0LWJ1bGxldHMgYnV0dG9uIHtcbiAgICB3aWR0aDogMS4ycmVtO1xuICAgIGhlaWdodDogMS4ycmVtO1xuICAgIG1hcmdpbjogMC4xcmVtO1xuICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjY2FjYWNhOyB9XG4gICAgLm9yYml0LWJ1bGxldHMgYnV0dG9uOmhvdmVyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICM4YThhOGE7IH1cbiAgICAub3JiaXQtYnVsbGV0cyBidXR0b24uaXMtYWN0aXZlIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICM4YThhOGE7IH1cblxuLnBhZ2luYXRpb24ge1xuICBtYXJnaW4tbGVmdDogMDtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTsgfVxuICAucGFnaW5hdGlvbjo6YmVmb3JlLCAucGFnaW5hdGlvbjo6YWZ0ZXIge1xuICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgIGNvbnRlbnQ6ICcgJztcbiAgICBmbGV4LWJhc2lzOiAwO1xuICAgIG9yZGVyOiAxOyB9XG4gIC5wYWdpbmF0aW9uOjphZnRlciB7XG4gICAgY2xlYXI6IGJvdGg7IH1cbiAgLnBhZ2luYXRpb24gbGkge1xuICAgIG1hcmdpbi1yaWdodDogMC4yNXJlbTtcbiAgICBib3JkZXItcmFkaXVzOiAycHg7XG4gICAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgICBkaXNwbGF5OiBub25lOyB9XG4gICAgLnBhZ2luYXRpb24gbGk6bGFzdC1jaGlsZCwgLnBhZ2luYXRpb24gbGk6Zmlyc3QtY2hpbGQge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIC5wYWdpbmF0aW9uIGxpIHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrOyB9IH1cbiAgLnBhZ2luYXRpb24gYSxcbiAgLnBhZ2luYXRpb24gYnV0dG9uIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwYWRkaW5nOiAwLjMxMjVyZW0gMC42MjVyZW07XG4gICAgYm9yZGVyLXJhZGl1czogMnB4O1xuICAgIGNvbG9yOiAjMDAwMDAwOyB9XG4gICAgLnBhZ2luYXRpb24gYTpob3ZlcixcbiAgICAucGFnaW5hdGlvbiBidXR0b246aG92ZXIge1xuICAgICAgYmFja2dyb3VuZDogI2U2ZTZlNjsgfVxuICAucGFnaW5hdGlvbiAuY3VycmVudCB7XG4gICAgcGFkZGluZzogMC4zMTI1cmVtIDAuNjI1cmVtO1xuICAgIGJhY2tncm91bmQ6ICMyREM5RDc7XG4gICAgY29sb3I6ICNmZmZmZmY7XG4gICAgY3Vyc29yOiBkZWZhdWx0OyB9XG4gIC5wYWdpbmF0aW9uIC5kaXNhYmxlZCB7XG4gICAgcGFkZGluZzogMC4zMTI1cmVtIDAuNjI1cmVtO1xuICAgIGNvbG9yOiAjY2FjYWNhO1xuICAgIGN1cnNvcjogbm90LWFsbG93ZWQ7IH1cbiAgICAucGFnaW5hdGlvbiAuZGlzYWJsZWQ6aG92ZXIge1xuICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7IH1cbiAgLnBhZ2luYXRpb24gLmVsbGlwc2lzOjphZnRlciB7XG4gICAgcGFkZGluZzogMC4zMTI1cmVtIDAuNjI1cmVtO1xuICAgIGNvbnRlbnQ6ICdcXDIwMjYnO1xuICAgIGNvbG9yOiAjMDAwMDAwOyB9XG5cbi5wYWdpbmF0aW9uLXByZXZpb3VzIGE6OmJlZm9yZSxcbi5wYWdpbmF0aW9uLXByZXZpb3VzLmRpc2FibGVkOjpiZWZvcmUge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIG1hcmdpbi1yaWdodDogMC41cmVtO1xuICBjb250ZW50OiAnXFwwMGFiJzsgfVxuXG4ucGFnaW5hdGlvbi1uZXh0IGE6OmFmdGVyLFxuLnBhZ2luYXRpb24tbmV4dC5kaXNhYmxlZDo6YWZ0ZXIge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIG1hcmdpbi1sZWZ0OiAwLjVyZW07XG4gIGNvbnRlbnQ6ICdcXDAwYmInOyB9XG5cbi5wcm9ncmVzcyB7XG4gIGhlaWdodDogMXJlbTtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgYm9yZGVyLXJhZGl1czogMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2NhY2FjYTsgfVxuICAucHJvZ3Jlc3MucHJpbWFyeSAucHJvZ3Jlc3MtbWV0ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMyREM5RDc7IH1cbiAgLnByb2dyZXNzLnNlY29uZGFyeSAucHJvZ3Jlc3MtbWV0ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNGQ0I1MzY7IH1cbiAgLnByb2dyZXNzLnN1Y2Nlc3MgLnByb2dyZXNzLW1ldGVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjM2FkYjc2OyB9XG4gIC5wcm9ncmVzcy53YXJuaW5nIC5wcm9ncmVzcy1tZXRlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmYWUwMDsgfVxuICAucHJvZ3Jlc3MuYWxlcnQgLnByb2dyZXNzLW1ldGVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjY2M0YjM3OyB9XG5cbi5wcm9ncmVzcy1tZXRlciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMkRDOUQ3OyB9XG5cbi5wcm9ncmVzcy1tZXRlci10ZXh0IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDUwJTtcbiAgbGVmdDogNTAlO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBtYXJnaW46IDA7XG4gIGZvbnQtc2l6ZTogMC43NXJlbTtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIGNvbG9yOiAjZmZmZmZmO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwOyB9XG5cbi5zbGlkZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGhlaWdodDogMC41cmVtO1xuICBtYXJnaW4tdG9wOiAxLjI1cmVtO1xuICBtYXJnaW4tYm90dG9tOiAyLjI1cmVtO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTZlNmU2O1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIHVzZXItc2VsZWN0OiBub25lO1xuICB0b3VjaC1hY3Rpb246IG5vbmU7IH1cblxuLnNsaWRlci1maWxsIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDAuNXJlbTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2NhY2FjYTtcbiAgdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZS1pbi1vdXQ7IH1cbiAgLnNsaWRlci1maWxsLmlzLWRyYWdnaW5nIHtcbiAgICB0cmFuc2l0aW9uOiBhbGwgMHMgbGluZWFyOyB9XG5cbi5zbGlkZXItaGFuZGxlIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDUwJTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICBsZWZ0OiAwO1xuICB6LWluZGV4OiAxO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHdpZHRoOiAxLjRyZW07XG4gIGhlaWdodDogMS40cmVtO1xuICBib3JkZXItcmFkaXVzOiAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMkRDOUQ3O1xuICB0cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlLWluLW91dDtcbiAgdG91Y2gtYWN0aW9uOiBtYW5pcHVsYXRpb247IH1cbiAgW2RhdGEtd2hhdGlucHV0PSdtb3VzZSddIC5zbGlkZXItaGFuZGxlIHtcbiAgICBvdXRsaW5lOiAwOyB9XG4gIC5zbGlkZXItaGFuZGxlOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMjNhZGJhOyB9XG4gIC5zbGlkZXItaGFuZGxlLmlzLWRyYWdnaW5nIHtcbiAgICB0cmFuc2l0aW9uOiBhbGwgMHMgbGluZWFyOyB9XG5cbi5zbGlkZXIuZGlzYWJsZWQsXG4uc2xpZGVyW2Rpc2FibGVkXSB7XG4gIG9wYWNpdHk6IDAuMjU7XG4gIGN1cnNvcjogbm90LWFsbG93ZWQ7IH1cblxuLnNsaWRlci52ZXJ0aWNhbCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgd2lkdGg6IDAuNXJlbTtcbiAgaGVpZ2h0OiAxMi41cmVtO1xuICBtYXJnaW46IDAgMS4yNXJlbTtcbiAgdHJhbnNmb3JtOiBzY2FsZSgxLCAtMSk7IH1cbiAgLnNsaWRlci52ZXJ0aWNhbCAuc2xpZGVyLWZpbGwge1xuICAgIHRvcDogMDtcbiAgICB3aWR0aDogMC41cmVtO1xuICAgIG1heC1oZWlnaHQ6IDEwMCU7IH1cbiAgLnNsaWRlci52ZXJ0aWNhbCAuc2xpZGVyLWhhbmRsZSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiA1MCU7XG4gICAgd2lkdGg6IDEuNHJlbTtcbiAgICBoZWlnaHQ6IDEuNHJlbTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7IH1cblxuLnN0aWNreS1jb250YWluZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cblxuLnN0aWNreSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgei1pbmRleDogMDtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTsgfVxuXG4uc3RpY2t5LmlzLXN0dWNrIHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB6LWluZGV4OiA1O1xuICB3aWR0aDogMTAwJTsgfVxuICAuc3RpY2t5LmlzLXN0dWNrLmlzLWF0LXRvcCB7XG4gICAgdG9wOiAwOyB9XG4gIC5zdGlja3kuaXMtc3R1Y2suaXMtYXQtYm90dG9tIHtcbiAgICBib3R0b206IDA7IH1cblxuLnN0aWNreS5pcy1hbmNob3JlZCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgcmlnaHQ6IGF1dG87XG4gIGxlZnQ6IGF1dG87IH1cbiAgLnN0aWNreS5pcy1hbmNob3JlZC5pcy1hdC1ib3R0b20ge1xuICAgIGJvdHRvbTogMDsgfVxuXG5ib2R5LmlzLXJldmVhbC1vcGVuIHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjsgfVxuXG5odG1sLmlzLXJldmVhbC1vcGVuLFxuaHRtbC5pcy1yZXZlYWwtb3BlbiBib2R5IHtcbiAgbWluLWhlaWdodDogMTAwJTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB1c2VyLXNlbGVjdDogbm9uZTsgfVxuXG4ucmV2ZWFsLW92ZXJsYXkge1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IDA7XG4gIGJvdHRvbTogMDtcbiAgbGVmdDogMDtcbiAgei1pbmRleDogMTAwNTtcbiAgZGlzcGxheTogbm9uZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjg1KTtcbiAgb3ZlcmZsb3cteTogc2Nyb2xsOyB9XG5cbi5yZXZlYWwge1xuICB6LWluZGV4OiAxMDA2O1xuICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gIGRpc3BsYXk6IG5vbmU7XG4gIHBhZGRpbmc6IDJyZW07XG4gIGJvcmRlcjogbm9uZTtcbiAgYm9yZGVyLXJhZGl1czogM3B4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmZmZmO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHRvcDogMTAwcHg7XG4gIG1hcmdpbi1yaWdodDogYXV0bztcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIG92ZXJmbG93LXk6IGF1dG87IH1cbiAgW2RhdGEtd2hhdGlucHV0PSdtb3VzZSddIC5yZXZlYWwge1xuICAgIG91dGxpbmU6IDA7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAucmV2ZWFsIHtcbiAgICAgIG1pbi1oZWlnaHQ6IDA7IH0gfVxuICAucmV2ZWFsIC5jb2x1bW4ge1xuICAgIG1pbi13aWR0aDogMDsgfVxuICAucmV2ZWFsID4gOmxhc3QtY2hpbGQge1xuICAgIG1hcmdpbi1ib3R0b206IDA7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAucmV2ZWFsIHtcbiAgICAgIHdpZHRoOiA2MDBweDtcbiAgICAgIG1heC13aWR0aDogOTByZW07IH0gfVxuICAucmV2ZWFsLmNvbGxhcHNlIHtcbiAgICBwYWRkaW5nOiAwOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLnJldmVhbC50aW55IHtcbiAgICAgIHdpZHRoOiAzMCU7XG4gICAgICBtYXgtd2lkdGg6IDkwcmVtOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAucmV2ZWFsLnNtYWxsIHtcbiAgICAgIHdpZHRoOiA1MCU7XG4gICAgICBtYXgtd2lkdGg6IDkwcmVtOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAucmV2ZWFsLmxhcmdlIHtcbiAgICAgIHdpZHRoOiA5MCU7XG4gICAgICBtYXgtd2lkdGg6IDkwcmVtOyB9IH1cbiAgLnJldmVhbC5mdWxsIHtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXgtd2lkdGg6IG5vbmU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIGhlaWdodDogMTAwdmg7XG4gICAgbWluLWhlaWdodDogMTAwdmg7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgYm9yZGVyOiAwO1xuICAgIGJvcmRlci1yYWRpdXM6IDA7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTM3NWVtKSB7XG4gICAgLnJldmVhbCB7XG4gICAgICB0b3A6IDA7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBtYXgtd2lkdGg6IG5vbmU7XG4gICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICBoZWlnaHQ6IDEwMHZoO1xuICAgICAgbWluLWhlaWdodDogMTAwdmg7XG4gICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgIGJvcmRlcjogMDtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDA7IH0gfVxuICAucmV2ZWFsLndpdGhvdXQtb3ZlcmxheSB7XG4gICAgcG9zaXRpb246IGZpeGVkOyB9XG5cbi5zd2l0Y2gge1xuICBoZWlnaHQ6IDJyZW07XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgb3V0bGluZTogMDtcbiAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIGNvbG9yOiAjZmZmZmZmO1xuICB1c2VyLXNlbGVjdDogbm9uZTsgfVxuXG4uc3dpdGNoLWlucHV0IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBvcGFjaXR5OiAwOyB9XG5cbi5zd2l0Y2gtcGFkZGxlIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDRyZW07XG4gIGhlaWdodDogMnJlbTtcbiAgYm9yZGVyLXJhZGl1czogMDtcbiAgYmFja2dyb3VuZDogI2NhY2FjYTtcbiAgdHJhbnNpdGlvbjogYWxsIDAuMjVzIGVhc2Utb3V0O1xuICBmb250LXdlaWdodDogaW5oZXJpdDtcbiAgY29sb3I6IGluaGVyaXQ7XG4gIGN1cnNvcjogcG9pbnRlcjsgfVxuICBpbnB1dCArIC5zd2l0Y2gtcGFkZGxlIHtcbiAgICBtYXJnaW46IDA7IH1cbiAgLnN3aXRjaC1wYWRkbGU6OmFmdGVyIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwLjI1cmVtO1xuICAgIGxlZnQ6IDAuMjVyZW07XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDEuNXJlbTtcbiAgICBoZWlnaHQ6IDEuNXJlbTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgYmFja2dyb3VuZDogI2ZmZmZmZjtcbiAgICB0cmFuc2l0aW9uOiBhbGwgMC4yNXMgZWFzZS1vdXQ7XG4gICAgY29udGVudDogJyc7IH1cbiAgaW5wdXQ6Y2hlY2tlZCB+IC5zd2l0Y2gtcGFkZGxlIHtcbiAgICBiYWNrZ3JvdW5kOiAjMkRDOUQ3OyB9XG4gICAgaW5wdXQ6Y2hlY2tlZCB+IC5zd2l0Y2gtcGFkZGxlOjphZnRlciB7XG4gICAgICBsZWZ0OiAyLjI1cmVtOyB9XG4gIFtkYXRhLXdoYXRpbnB1dD0nbW91c2UnXSBpbnB1dDpmb2N1cyB+IC5zd2l0Y2gtcGFkZGxlIHtcbiAgICBvdXRsaW5lOiAwOyB9XG5cbi5zd2l0Y2gtYWN0aXZlLCAuc3dpdGNoLWluYWN0aXZlIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDUwJTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpOyB9XG5cbi5zd2l0Y2gtYWN0aXZlIHtcbiAgbGVmdDogOCU7XG4gIGRpc3BsYXk6IG5vbmU7IH1cbiAgaW5wdXQ6Y2hlY2tlZCArIGxhYmVsID4gLnN3aXRjaC1hY3RpdmUge1xuICAgIGRpc3BsYXk6IGJsb2NrOyB9XG5cbi5zd2l0Y2gtaW5hY3RpdmUge1xuICByaWdodDogMTUlOyB9XG4gIGlucHV0OmNoZWNrZWQgKyBsYWJlbCA+IC5zd2l0Y2gtaW5hY3RpdmUge1xuICAgIGRpc3BsYXk6IG5vbmU7IH1cblxuLnN3aXRjaC50aW55IHtcbiAgaGVpZ2h0OiAxLjVyZW07IH1cbiAgLnN3aXRjaC50aW55IC5zd2l0Y2gtcGFkZGxlIHtcbiAgICB3aWR0aDogM3JlbTtcbiAgICBoZWlnaHQ6IDEuNXJlbTtcbiAgICBmb250LXNpemU6IDAuNjI1cmVtOyB9XG4gIC5zd2l0Y2gudGlueSAuc3dpdGNoLXBhZGRsZTo6YWZ0ZXIge1xuICAgIHRvcDogMC4yNXJlbTtcbiAgICBsZWZ0OiAwLjI1cmVtO1xuICAgIHdpZHRoOiAxcmVtO1xuICAgIGhlaWdodDogMXJlbTsgfVxuICAuc3dpdGNoLnRpbnkgaW5wdXQ6Y2hlY2tlZCB+IC5zd2l0Y2gtcGFkZGxlOjphZnRlciB7XG4gICAgbGVmdDogMS43NXJlbTsgfVxuXG4uc3dpdGNoLnNtYWxsIHtcbiAgaGVpZ2h0OiAxLjc1cmVtOyB9XG4gIC5zd2l0Y2guc21hbGwgLnN3aXRjaC1wYWRkbGUge1xuICAgIHdpZHRoOiAzLjVyZW07XG4gICAgaGVpZ2h0OiAxLjc1cmVtO1xuICAgIGZvbnQtc2l6ZTogMC43NXJlbTsgfVxuICAuc3dpdGNoLnNtYWxsIC5zd2l0Y2gtcGFkZGxlOjphZnRlciB7XG4gICAgdG9wOiAwLjI1cmVtO1xuICAgIGxlZnQ6IDAuMjVyZW07XG4gICAgd2lkdGg6IDEuMjVyZW07XG4gICAgaGVpZ2h0OiAxLjI1cmVtOyB9XG4gIC5zd2l0Y2guc21hbGwgaW5wdXQ6Y2hlY2tlZCB+IC5zd2l0Y2gtcGFkZGxlOjphZnRlciB7XG4gICAgbGVmdDogMnJlbTsgfVxuXG4uc3dpdGNoLmxhcmdlIHtcbiAgaGVpZ2h0OiAyLjVyZW07IH1cbiAgLnN3aXRjaC5sYXJnZSAuc3dpdGNoLXBhZGRsZSB7XG4gICAgd2lkdGg6IDVyZW07XG4gICAgaGVpZ2h0OiAyLjVyZW07XG4gICAgZm9udC1zaXplOiAxcmVtOyB9XG4gIC5zd2l0Y2gubGFyZ2UgLnN3aXRjaC1wYWRkbGU6OmFmdGVyIHtcbiAgICB0b3A6IDAuMjVyZW07XG4gICAgbGVmdDogMC4yNXJlbTtcbiAgICB3aWR0aDogMnJlbTtcbiAgICBoZWlnaHQ6IDJyZW07IH1cbiAgLnN3aXRjaC5sYXJnZSBpbnB1dDpjaGVja2VkIH4gLnN3aXRjaC1wYWRkbGU6OmFmdGVyIHtcbiAgICBsZWZ0OiAyLjc1cmVtOyB9XG5cbnRhYmxlIHtcbiAgYm9yZGVyLWNvbGxhcHNlOiBjb2xsYXBzZTtcbiAgd2lkdGg6IDEwMCU7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG4gIGJvcmRlci1yYWRpdXM6IDA7IH1cbiAgdGhlYWQsXG4gIHRib2R5LFxuICB0Zm9vdCB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgI2YyZjJmMjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmZmZmOyB9XG4gIGNhcHRpb24ge1xuICAgIHBhZGRpbmc6IDAuNXJlbSAwLjYyNXJlbSAwLjYyNXJlbTtcbiAgICBmb250LXdlaWdodDogNzAwOyB9XG4gIHRoZWFkIHtcbiAgICBiYWNrZ3JvdW5kOiAjZjlmOWY5O1xuICAgIGNvbG9yOiAjMDAwMDAwOyB9XG4gIHRmb290IHtcbiAgICBiYWNrZ3JvdW5kOiAjZjJmMmYyO1xuICAgIGNvbG9yOiAjMDAwMDAwOyB9XG4gIHRoZWFkIHRyLFxuICB0Zm9vdCB0ciB7XG4gICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7IH1cbiAgdGhlYWQgdGgsXG4gIHRoZWFkIHRkLFxuICB0Zm9vdCB0aCxcbiAgdGZvb3QgdGQge1xuICAgIHBhZGRpbmc6IDAuNXJlbSAwLjYyNXJlbSAwLjYyNXJlbTtcbiAgICBmb250LXdlaWdodDogNzAwO1xuICAgIHRleHQtYWxpZ246IGxlZnQ7IH1cbiAgdGJvZHkgdGgsXG4gIHRib2R5IHRkIHtcbiAgICBwYWRkaW5nOiAwLjVyZW0gMC42MjVyZW0gMC42MjVyZW07IH1cbiAgdGJvZHkgdHI6bnRoLWNoaWxkKGV2ZW4pIHtcbiAgICBib3JkZXItYm90dG9tOiAwO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmMmYyZjI7IH1cbiAgdGFibGUudW5zdHJpcGVkIHRib2R5IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmZmZmOyB9XG4gICAgdGFibGUudW5zdHJpcGVkIHRib2R5IHRyIHtcbiAgICAgIGJvcmRlci1ib3R0b206IDA7XG4gICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2YyZjJmMjtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmZmZmY7IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTM3NWVtKSB7XG4gIHRhYmxlLnN0YWNrIHRoZWFkIHtcbiAgICBkaXNwbGF5OiBub25lOyB9XG4gIHRhYmxlLnN0YWNrIHRmb290IHtcbiAgICBkaXNwbGF5OiBub25lOyB9XG4gIHRhYmxlLnN0YWNrIHRyLFxuICB0YWJsZS5zdGFjayB0aCxcbiAgdGFibGUuc3RhY2sgdGQge1xuICAgIGRpc3BsYXk6IGJsb2NrOyB9XG4gIHRhYmxlLnN0YWNrIHRkIHtcbiAgICBib3JkZXItdG9wOiAwOyB9IH1cblxudGFibGUuc2Nyb2xsIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xuICBvdmVyZmxvdy14OiBhdXRvOyB9XG5cbnRhYmxlLmhvdmVyIHRoZWFkIHRyOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2Y0ZjRmNDsgfVxuXG50YWJsZS5ob3ZlciB0Zm9vdCB0cjpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlZGVkZWQ7IH1cblxudGFibGUuaG92ZXIgdGJvZHkgdHI6aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmFmYWZhOyB9XG5cbnRhYmxlLmhvdmVyOm5vdCgudW5zdHJpcGVkKSB0cjpudGgtb2YtdHlwZShldmVuKTpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlZGVkZWQ7IH1cblxuLnRhYmxlLXNjcm9sbCB7XG4gIG92ZXJmbG93LXg6IGF1dG87IH1cbiAgLnRhYmxlLXNjcm9sbCB0YWJsZSB7XG4gICAgd2lkdGg6IGF1dG87IH1cblxuLnRhYnMge1xuICBtYXJnaW46IDA7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNlNmU2ZTY7XG4gIGJhY2tncm91bmQ6ICNmZmZmZmY7XG4gIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTsgfVxuICAudGFiczo6YmVmb3JlLCAudGFiczo6YWZ0ZXIge1xuICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgIGNvbnRlbnQ6ICcgJztcbiAgICBmbGV4LWJhc2lzOiAwO1xuICAgIG9yZGVyOiAxOyB9XG4gIC50YWJzOjphZnRlciB7XG4gICAgY2xlYXI6IGJvdGg7IH1cblxuLnRhYnMudmVydGljYWwgPiBsaSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBmbG9hdDogbm9uZTtcbiAgd2lkdGg6IGF1dG87IH1cblxuLnRhYnMuc2ltcGxlID4gbGkgPiBhIHtcbiAgcGFkZGluZzogMDsgfVxuICAudGFicy5zaW1wbGUgPiBsaSA+IGE6aG92ZXIge1xuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50OyB9XG5cbi50YWJzLnByaW1hcnkge1xuICBiYWNrZ3JvdW5kOiAjMkRDOUQ3OyB9XG4gIC50YWJzLnByaW1hcnkgPiBsaSA+IGEge1xuICAgIGNvbG9yOiAjMDAwMDAwOyB9XG4gICAgLnRhYnMucHJpbWFyeSA+IGxpID4gYTpob3ZlciwgLnRhYnMucHJpbWFyeSA+IGxpID4gYTpmb2N1cyB7XG4gICAgICBiYWNrZ3JvdW5kOiAjMjhjMmNmOyB9XG5cbi50YWJzLXRpdGxlIHtcbiAgZmxvYXQ6IGxlZnQ7IH1cbiAgLnRhYnMtdGl0bGUgPiBhIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwYWRkaW5nOiAxLjI1cmVtIDEuNXJlbTtcbiAgICBmb250LXNpemU6IDAuNzVyZW07XG4gICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgY29sb3I6ICMyREM5RDc7IH1cbiAgICAudGFicy10aXRsZSA+IGE6aG92ZXIge1xuICAgICAgYmFja2dyb3VuZDogI2ZmZmZmZjtcbiAgICAgIGNvbG9yOiAjMjRhZmJjOyB9XG4gICAgLnRhYnMtdGl0bGUgPiBhOmZvY3VzLCAudGFicy10aXRsZSA+IGFbYXJpYS1zZWxlY3RlZD0ndHJ1ZSddIHtcbiAgICAgIGJhY2tncm91bmQ6ICNlNmU2ZTY7XG4gICAgICBjb2xvcjogIzJEQzlENzsgfVxuXG4udGFicy1jb250ZW50IHtcbiAgYm9yZGVyOiAxcHggc29saWQgI2U2ZTZlNjtcbiAgYm9yZGVyLXRvcDogMDtcbiAgYmFja2dyb3VuZDogI2ZmZmZmZjtcbiAgY29sb3I6ICMwMDAwMDA7XG4gIHRyYW5zaXRpb246IGFsbCAwLjVzIGVhc2U7IH1cblxuLnRhYnMtY29udGVudC52ZXJ0aWNhbCB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNlNmU2ZTY7XG4gIGJvcmRlci1sZWZ0OiAwOyB9XG5cbi50YWJzLXBhbmVsIHtcbiAgZGlzcGxheTogbm9uZTtcbiAgcGFkZGluZzogMXJlbTsgfVxuICAudGFicy1wYW5lbC5pcy1hY3RpdmUge1xuICAgIGRpc3BsYXk6IGJsb2NrOyB9XG5cbi50aHVtYm5haWwge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIG1heC13aWR0aDogMTAwJTtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgYm9yZGVyOiBzb2xpZCA0cHggI2ZmZmZmZjtcbiAgYm9yZGVyLXJhZGl1czogMDtcbiAgYm94LXNoYWRvdzogMCAwIDAgMXB4IHJnYmEoMCwgMCwgMCwgMC4yKTtcbiAgbGluZS1oZWlnaHQ6IDA7IH1cblxuYS50aHVtYm5haWwge1xuICB0cmFuc2l0aW9uOiBib3gtc2hhZG93IDIwMG1zIGVhc2Utb3V0OyB9XG4gIGEudGh1bWJuYWlsOmhvdmVyLCBhLnRodW1ibmFpbDpmb2N1cyB7XG4gICAgYm94LXNoYWRvdzogMCAwIDZweCAxcHggcmdiYSg0NSwgMjAxLCAyMTUsIDAuNSk7IH1cbiAgYS50aHVtYm5haWwgaW1hZ2Uge1xuICAgIGJveC1zaGFkb3c6IG5vbmU7IH1cblxuLnRpdGxlLWJhciB7XG4gIHBhZGRpbmc6IDAuNXJlbTtcbiAgYmFja2dyb3VuZDogIzJDMzg0MDtcbiAgY29sb3I6ICNmZmZmZmY7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjsgfVxuICAudGl0bGUtYmFyIC5tZW51LWljb24ge1xuICAgIG1hcmdpbi1sZWZ0OiAwLjI1cmVtO1xuICAgIG1hcmdpbi1yaWdodDogMC4yNXJlbTsgfVxuXG4udGl0bGUtYmFyLWxlZnQsXG4udGl0bGUtYmFyLXJpZ2h0IHtcbiAgZmxleDogMSAxIDBweDsgfVxuXG4udGl0bGUtYmFyLXJpZ2h0IHtcbiAgdGV4dC1hbGlnbjogcmlnaHQ7IH1cblxuLnRpdGxlLWJhci10aXRsZSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7IH1cblxuLmhhcy10aXAge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgYm9yZGVyLWJvdHRvbTogZG90dGVkIDFweCAjOGE4YThhO1xuICBmb250LXdlaWdodDogNzAwO1xuICBjdXJzb3I6IGhlbHA7IH1cblxuLnRvb2x0aXAge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogY2FsYygxMDAlICsgMC42NDk1cmVtKTtcbiAgei1pbmRleDogMTIwMDtcbiAgbWF4LXdpZHRoOiAxMHJlbTtcbiAgcGFkZGluZzogMC43NXJlbTtcbiAgYm9yZGVyLXJhZGl1czogMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAwMDAwMDtcbiAgZm9udC1zaXplOiA4MCU7XG4gIGNvbG9yOiAjZmZmZmZmOyB9XG4gIC50b29sdGlwOjpiZWZvcmUge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsgfVxuICAudG9vbHRpcC5ib3R0b206OmJlZm9yZSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDA7XG4gICAgaGVpZ2h0OiAwO1xuICAgIGJvcmRlcjogaW5zZXQgMC43NXJlbTtcbiAgICBjb250ZW50OiAnJztcbiAgICBib3JkZXItdG9wLXdpZHRoOiAwO1xuICAgIGJvcmRlci1ib3R0b20tc3R5bGU6IHNvbGlkO1xuICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgIzAwMDAwMDtcbiAgICBib3R0b206IDEwMCU7IH1cbiAgLnRvb2x0aXAuYm90dG9tLmFsaWduLWNlbnRlcjo6YmVmb3JlIHtcbiAgICBsZWZ0OiA1MCU7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpOyB9XG4gIC50b29sdGlwLnRvcDo6YmVmb3JlIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMDtcbiAgICBoZWlnaHQ6IDA7XG4gICAgYm9yZGVyOiBpbnNldCAwLjc1cmVtO1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGJvcmRlci1ib3R0b20td2lkdGg6IDA7XG4gICAgYm9yZGVyLXRvcC1zdHlsZTogc29saWQ7XG4gICAgYm9yZGVyLWNvbG9yOiAjMDAwMDAwIHRyYW5zcGFyZW50IHRyYW5zcGFyZW50O1xuICAgIHRvcDogMTAwJTtcbiAgICBib3R0b206IGF1dG87IH1cbiAgLnRvb2x0aXAudG9wLmFsaWduLWNlbnRlcjo6YmVmb3JlIHtcbiAgICBsZWZ0OiA1MCU7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpOyB9XG4gIC50b29sdGlwLmxlZnQ6OmJlZm9yZSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDA7XG4gICAgaGVpZ2h0OiAwO1xuICAgIGJvcmRlcjogaW5zZXQgMC43NXJlbTtcbiAgICBjb250ZW50OiAnJztcbiAgICBib3JkZXItcmlnaHQtd2lkdGg6IDA7XG4gICAgYm9yZGVyLWxlZnQtc3R5bGU6IHNvbGlkO1xuICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgIzAwMDAwMDtcbiAgICBsZWZ0OiAxMDAlOyB9XG4gIC50b29sdGlwLmxlZnQuYWxpZ24tY2VudGVyOjpiZWZvcmUge1xuICAgIGJvdHRvbTogYXV0bztcbiAgICB0b3A6IDUwJTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7IH1cbiAgLnRvb2x0aXAucmlnaHQ6OmJlZm9yZSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDA7XG4gICAgaGVpZ2h0OiAwO1xuICAgIGJvcmRlcjogaW5zZXQgMC43NXJlbTtcbiAgICBjb250ZW50OiAnJztcbiAgICBib3JkZXItbGVmdC13aWR0aDogMDtcbiAgICBib3JkZXItcmlnaHQtc3R5bGU6IHNvbGlkO1xuICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQgIzAwMDAwMCB0cmFuc3BhcmVudCB0cmFuc3BhcmVudDtcbiAgICByaWdodDogMTAwJTtcbiAgICBsZWZ0OiBhdXRvOyB9XG4gIC50b29sdGlwLnJpZ2h0LmFsaWduLWNlbnRlcjo6YmVmb3JlIHtcbiAgICBib3R0b206IGF1dG87XG4gICAgdG9wOiA1MCU7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpOyB9XG4gIC50b29sdGlwLmFsaWduLXRvcDo6YmVmb3JlIHtcbiAgICBib3R0b206IGF1dG87XG4gICAgdG9wOiAxMCU7IH1cbiAgLnRvb2x0aXAuYWxpZ24tYm90dG9tOjpiZWZvcmUge1xuICAgIGJvdHRvbTogMTAlO1xuICAgIHRvcDogYXV0bzsgfVxuICAudG9vbHRpcC5hbGlnbi1sZWZ0OjpiZWZvcmUge1xuICAgIGxlZnQ6IDEwJTtcbiAgICByaWdodDogYXV0bzsgfVxuICAudG9vbHRpcC5hbGlnbi1yaWdodDo6YmVmb3JlIHtcbiAgICBsZWZ0OiBhdXRvO1xuICAgIHJpZ2h0OiAxMCU7IH1cblxuLnRvcC1iYXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IG5vd3JhcDtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBwYWRkaW5nOiAwO1xuICBmbGV4LXdyYXA6IHdyYXA7IH1cbiAgLnRvcC1iYXIsXG4gIC50b3AtYmFyIHVsIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMkMzODQwOyB9XG4gIC50b3AtYmFyIGlucHV0IHtcbiAgICBtYXgtd2lkdGg6IDIwMHB4O1xuICAgIG1hcmdpbi1yaWdodDogMXJlbTsgfVxuICAudG9wLWJhciAuaW5wdXQtZ3JvdXAtZmllbGQge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1hcmdpbi1yaWdodDogMDsgfVxuICAudG9wLWJhciBpbnB1dC5idXR0b24ge1xuICAgIHdpZHRoOiBhdXRvOyB9XG4gIC50b3AtYmFyIC50b3AtYmFyLWxlZnQsXG4gIC50b3AtYmFyIC50b3AtYmFyLXJpZ2h0IHtcbiAgICBmbGV4OiAwIDAgMTAwJTtcbiAgICBtYXgtd2lkdGg6IDEwMCU7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAudG9wLWJhciB7XG4gICAgICBmbGV4LXdyYXA6IG5vd3JhcDsgfVxuICAgICAgLnRvcC1iYXIgLnRvcC1iYXItbGVmdCB7XG4gICAgICAgIGZsZXg6IDEgMSBhdXRvO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IGF1dG87IH1cbiAgICAgIC50b3AtYmFyIC50b3AtYmFyLXJpZ2h0IHtcbiAgICAgICAgZmxleDogMCAxIGF1dG87XG4gICAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTM3NWVtKSB7XG4gICAgLnRvcC1iYXIuc3RhY2tlZC1mb3ItbWVkaXVtIHtcbiAgICAgIGZsZXgtd3JhcDogd3JhcDsgfVxuICAgICAgLnRvcC1iYXIuc3RhY2tlZC1mb3ItbWVkaXVtIC50b3AtYmFyLWxlZnQsXG4gICAgICAudG9wLWJhci5zdGFja2VkLWZvci1tZWRpdW0gLnRvcC1iYXItcmlnaHQge1xuICAgICAgICBmbGV4OiAwIDAgMTAwJTtcbiAgICAgICAgbWF4LXdpZHRoOiAxMDAlOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzQuOTM3NWVtKSB7XG4gICAgLnRvcC1iYXIuc3RhY2tlZC1mb3ItbGFyZ2Uge1xuICAgICAgZmxleC13cmFwOiB3cmFwOyB9XG4gICAgICAudG9wLWJhci5zdGFja2VkLWZvci1sYXJnZSAudG9wLWJhci1sZWZ0LFxuICAgICAgLnRvcC1iYXIuc3RhY2tlZC1mb3ItbGFyZ2UgLnRvcC1iYXItcmlnaHQge1xuICAgICAgICBmbGV4OiAwIDAgMTAwJTtcbiAgICAgICAgbWF4LXdpZHRoOiAxMDAlOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogODkuOTM3NWVtKSB7XG4gICAgLnRvcC1iYXIuc3RhY2tlZC1mb3IteGxhcmdlIHtcbiAgICAgIGZsZXgtd3JhcDogd3JhcDsgfVxuICAgICAgLnRvcC1iYXIuc3RhY2tlZC1mb3IteGxhcmdlIC50b3AtYmFyLWxlZnQsXG4gICAgICAudG9wLWJhci5zdGFja2VkLWZvci14bGFyZ2UgLnRvcC1iYXItcmlnaHQge1xuICAgICAgICBmbGV4OiAwIDAgMTAwJTtcbiAgICAgICAgbWF4LXdpZHRoOiAxMDAlOyB9IH1cbiAgLnRvcC1iYXIuc3RhY2tlZC1mb3IteHhsYXJnZSB7XG4gICAgZmxleC13cmFwOiB3cmFwOyB9XG4gICAgLnRvcC1iYXIuc3RhY2tlZC1mb3IteHhsYXJnZSAudG9wLWJhci1sZWZ0LFxuICAgIC50b3AtYmFyLnN0YWNrZWQtZm9yLXh4bGFyZ2UgLnRvcC1iYXItcmlnaHQge1xuICAgICAgZmxleDogMCAwIDEwMCU7XG4gICAgICBtYXgtd2lkdGg6IDEwMCU7IH1cblxuLnRvcC1iYXItdGl0bGUge1xuICBmbGV4OiAwIDAgYXV0bztcbiAgbWFyZ2luOiAwLjVyZW0gMXJlbSAwLjVyZW0gMDsgfVxuXG4udG9wLWJhci1sZWZ0LFxuLnRvcC1iYXItcmlnaHQge1xuICBmbGV4OiAwIDAgYXV0bzsgfVxuXG4uaGlkZSB7XG4gIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfVxuXG4uaW52aXNpYmxlIHtcbiAgdmlzaWJpbGl0eTogaGlkZGVuOyB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5LjkzNzVlbSkge1xuICAuaGlkZS1mb3Itc21hbGwtb25seSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMGVtKSwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5zaG93LWZvci1zbWFsbC1vbmx5IHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAuaGlkZS1mb3ItbWVkaXVtIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45Mzc1ZW0pIHtcbiAgLnNob3ctZm9yLW1lZGl1bSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkgYW5kIChtYXgtd2lkdGg6IDYzLjkzNzVlbSkge1xuICAuaGlkZS1mb3ItbWVkaXVtLW9ubHkge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5LjkzNzVlbSksIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuc2hvdy1mb3ItbWVkaXVtLW9ubHkge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5oaWRlLWZvci1sYXJnZSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTM3NWVtKSB7XG4gIC5zaG93LWZvci1sYXJnZSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkgYW5kIChtYXgtd2lkdGg6IDc0LjkzNzVlbSkge1xuICAuaGlkZS1mb3ItbGFyZ2Utb25seSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTM3NWVtKSwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gIC5zaG93LWZvci1sYXJnZS1vbmx5IHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gIC5oaWRlLWZvci14bGFyZ2Uge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc0LjkzNzVlbSkge1xuICAuc2hvdy1mb3IteGxhcmdlIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSBhbmQgKG1heC13aWR0aDogODkuOTM3NWVtKSB7XG4gIC5oaWRlLWZvci14bGFyZ2Utb25seSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzQuOTM3NWVtKSwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5MGVtKSB7XG4gIC5zaG93LWZvci14bGFyZ2Utb25seSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTBlbSkge1xuICAuaGlkZS1mb3IteHhsYXJnZSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogODkuOTM3NWVtKSB7XG4gIC5zaG93LWZvci14eGxhcmdlIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5MGVtKSB7XG4gIC5oaWRlLWZvci14eGxhcmdlLW9ubHkge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDg5LjkzNzVlbSkge1xuICAuc2hvdy1mb3IteHhsYXJnZS1vbmx5IHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH0gfVxuXG4uc2hvdy1mb3Itc3IsXG4uc2hvdy1vbi1mb2N1cyB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZSAhaW1wb3J0YW50O1xuICB3aWR0aDogMXB4O1xuICBoZWlnaHQ6IDFweDtcbiAgcGFkZGluZzogMDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgY2xpcDogcmVjdCgwLCAwLCAwLCAwKTtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgY2xpcC1wYXRoOiBpbnNldCg1MCUpO1xuICBib3JkZXI6IDA7IH1cblxuLnNob3ctb24tZm9jdXM6YWN0aXZlLCAuc2hvdy1vbi1mb2N1czpmb2N1cyB7XG4gIHBvc2l0aW9uOiBzdGF0aWMgIWltcG9ydGFudDtcbiAgd2lkdGg6IGF1dG87XG4gIGhlaWdodDogYXV0bztcbiAgb3ZlcmZsb3c6IHZpc2libGU7XG4gIGNsaXA6IGF1dG87XG4gIHdoaXRlLXNwYWNlOiBub3JtYWw7XG4gIGNsaXAtcGF0aDogbm9uZTsgfVxuXG4uc2hvdy1mb3ItbGFuZHNjYXBlLFxuLmhpZGUtZm9yLXBvcnRyYWl0IHtcbiAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAob3JpZW50YXRpb246IGxhbmRzY2FwZSkge1xuICAgIC5zaG93LWZvci1sYW5kc2NhcGUsXG4gICAgLmhpZGUtZm9yLXBvcnRyYWl0IHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAob3JpZW50YXRpb246IHBvcnRyYWl0KSB7XG4gICAgLnNob3ctZm9yLWxhbmRzY2FwZSxcbiAgICAuaGlkZS1mb3ItcG9ydHJhaXQge1xuICAgICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9IH1cblxuLmhpZGUtZm9yLWxhbmRzY2FwZSxcbi5zaG93LWZvci1wb3J0cmFpdCB7XG4gIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAob3JpZW50YXRpb246IGxhbmRzY2FwZSkge1xuICAgIC5oaWRlLWZvci1sYW5kc2NhcGUsXG4gICAgLnNob3ctZm9yLXBvcnRyYWl0IHtcbiAgICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChvcmllbnRhdGlvbjogcG9ydHJhaXQpIHtcbiAgICAuaGlkZS1mb3ItbGFuZHNjYXBlLFxuICAgIC5zaG93LWZvci1wb3J0cmFpdCB7XG4gICAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50OyB9IH1cblxuLmFsaWduLXJpZ2h0IHtcbiAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDsgfVxuXG4uYWxpZ24tY2VudGVyIHtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7IH1cblxuLmFsaWduLWp1c3RpZnkge1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47IH1cblxuLmFsaWduLXNwYWNlZCB7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYXJvdW5kOyB9XG5cbi5hbGlnbi1yaWdodC52ZXJ0aWNhbC5tZW51ID4gbGkgPiBhIHtcbiAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDsgfVxuXG4uYWxpZ24tY2VudGVyLnZlcnRpY2FsLm1lbnUgPiBsaSA+IGEge1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsgfVxuXG4uYWxpZ24tdG9wIHtcbiAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7IH1cblxuLmFsaWduLXNlbGYtdG9wIHtcbiAgYWxpZ24tc2VsZjogZmxleC1zdGFydDsgfVxuXG4uYWxpZ24tYm90dG9tIHtcbiAgYWxpZ24taXRlbXM6IGZsZXgtZW5kOyB9XG5cbi5hbGlnbi1zZWxmLWJvdHRvbSB7XG4gIGFsaWduLXNlbGY6IGZsZXgtZW5kOyB9XG5cbi5hbGlnbi1taWRkbGUge1xuICBhbGlnbi1pdGVtczogY2VudGVyOyB9XG5cbi5hbGlnbi1zZWxmLW1pZGRsZSB7XG4gIGFsaWduLXNlbGY6IGNlbnRlcjsgfVxuXG4uYWxpZ24tc3RyZXRjaCB7XG4gIGFsaWduLWl0ZW1zOiBzdHJldGNoOyB9XG5cbi5hbGlnbi1zZWxmLXN0cmV0Y2gge1xuICBhbGlnbi1zZWxmOiBzdHJldGNoOyB9XG5cbi5hbGlnbi1jZW50ZXItbWlkZGxlIHtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGFsaWduLWNvbnRlbnQ6IGNlbnRlcjsgfVxuXG4uc21hbGwtb3JkZXItMSB7XG4gIG9yZGVyOiAxOyB9XG5cbi5zbWFsbC1vcmRlci0yIHtcbiAgb3JkZXI6IDI7IH1cblxuLnNtYWxsLW9yZGVyLTMge1xuICBvcmRlcjogMzsgfVxuXG4uc21hbGwtb3JkZXItNCB7XG4gIG9yZGVyOiA0OyB9XG5cbi5zbWFsbC1vcmRlci01IHtcbiAgb3JkZXI6IDU7IH1cblxuLnNtYWxsLW9yZGVyLTYge1xuICBvcmRlcjogNjsgfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAubWVkaXVtLW9yZGVyLTEge1xuICAgIG9yZGVyOiAxOyB9XG4gIC5tZWRpdW0tb3JkZXItMiB7XG4gICAgb3JkZXI6IDI7IH1cbiAgLm1lZGl1bS1vcmRlci0zIHtcbiAgICBvcmRlcjogMzsgfVxuICAubWVkaXVtLW9yZGVyLTQge1xuICAgIG9yZGVyOiA0OyB9XG4gIC5tZWRpdW0tb3JkZXItNSB7XG4gICAgb3JkZXI6IDU7IH1cbiAgLm1lZGl1bS1vcmRlci02IHtcbiAgICBvcmRlcjogNjsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5sYXJnZS1vcmRlci0xIHtcbiAgICBvcmRlcjogMTsgfVxuICAubGFyZ2Utb3JkZXItMiB7XG4gICAgb3JkZXI6IDI7IH1cbiAgLmxhcmdlLW9yZGVyLTMge1xuICAgIG9yZGVyOiAzOyB9XG4gIC5sYXJnZS1vcmRlci00IHtcbiAgICBvcmRlcjogNDsgfVxuICAubGFyZ2Utb3JkZXItNSB7XG4gICAgb3JkZXI6IDU7IH1cbiAgLmxhcmdlLW9yZGVyLTYge1xuICAgIG9yZGVyOiA2OyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAueGxhcmdlLW9yZGVyLTEge1xuICAgIG9yZGVyOiAxOyB9XG4gIC54bGFyZ2Utb3JkZXItMiB7XG4gICAgb3JkZXI6IDI7IH1cbiAgLnhsYXJnZS1vcmRlci0zIHtcbiAgICBvcmRlcjogMzsgfVxuICAueGxhcmdlLW9yZGVyLTQge1xuICAgIG9yZGVyOiA0OyB9XG4gIC54bGFyZ2Utb3JkZXItNSB7XG4gICAgb3JkZXI6IDU7IH1cbiAgLnhsYXJnZS1vcmRlci02IHtcbiAgICBvcmRlcjogNjsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDkwZW0pIHtcbiAgLnh4bGFyZ2Utb3JkZXItMSB7XG4gICAgb3JkZXI6IDE7IH1cbiAgLnh4bGFyZ2Utb3JkZXItMiB7XG4gICAgb3JkZXI6IDI7IH1cbiAgLnh4bGFyZ2Utb3JkZXItMyB7XG4gICAgb3JkZXI6IDM7IH1cbiAgLnh4bGFyZ2Utb3JkZXItNCB7XG4gICAgb3JkZXI6IDQ7IH1cbiAgLnh4bGFyZ2Utb3JkZXItNSB7XG4gICAgb3JkZXI6IDU7IH1cbiAgLnh4bGFyZ2Utb3JkZXItNiB7XG4gICAgb3JkZXI6IDY7IH0gfVxuXG4uZmxleC1jb250YWluZXIge1xuICBkaXNwbGF5OiBmbGV4OyB9XG5cbi5mbGV4LWNoaWxkLWF1dG8ge1xuICBmbGV4OiAxIDEgYXV0bzsgfVxuXG4uZmxleC1jaGlsZC1ncm93IHtcbiAgZmxleDogMSAwIGF1dG87IH1cblxuLmZsZXgtY2hpbGQtc2hyaW5rIHtcbiAgZmxleDogMCAxIGF1dG87IH1cblxuLmZsZXgtZGlyLXJvdyB7XG4gIGZsZXgtZGlyZWN0aW9uOiByb3c7IH1cblxuLmZsZXgtZGlyLXJvdy1yZXZlcnNlIHtcbiAgZmxleC1kaXJlY3Rpb246IHJvdy1yZXZlcnNlOyB9XG5cbi5mbGV4LWRpci1jb2x1bW4ge1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uOyB9XG5cbi5mbGV4LWRpci1jb2x1bW4tcmV2ZXJzZSB7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW4tcmV2ZXJzZTsgfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAubWVkaXVtLWZsZXgtY29udGFpbmVyIHtcbiAgICBkaXNwbGF5OiBmbGV4OyB9XG4gIC5tZWRpdW0tZmxleC1jaGlsZC1hdXRvIHtcbiAgICBmbGV4OiAxIDEgYXV0bzsgfVxuICAubWVkaXVtLWZsZXgtY2hpbGQtZ3JvdyB7XG4gICAgZmxleDogMSAwIGF1dG87IH1cbiAgLm1lZGl1bS1mbGV4LWNoaWxkLXNocmluayB7XG4gICAgZmxleDogMCAxIGF1dG87IH1cbiAgLm1lZGl1bS1mbGV4LWRpci1yb3cge1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7IH1cbiAgLm1lZGl1bS1mbGV4LWRpci1yb3ctcmV2ZXJzZSB7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdy1yZXZlcnNlOyB9XG4gIC5tZWRpdW0tZmxleC1kaXItY29sdW1uIHtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uOyB9XG4gIC5tZWRpdW0tZmxleC1kaXItY29sdW1uLXJldmVyc2Uge1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW4tcmV2ZXJzZTsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5sYXJnZS1mbGV4LWNvbnRhaW5lciB7XG4gICAgZGlzcGxheTogZmxleDsgfVxuICAubGFyZ2UtZmxleC1jaGlsZC1hdXRvIHtcbiAgICBmbGV4OiAxIDEgYXV0bzsgfVxuICAubGFyZ2UtZmxleC1jaGlsZC1ncm93IHtcbiAgICBmbGV4OiAxIDAgYXV0bzsgfVxuICAubGFyZ2UtZmxleC1jaGlsZC1zaHJpbmsge1xuICAgIGZsZXg6IDAgMSBhdXRvOyB9XG4gIC5sYXJnZS1mbGV4LWRpci1yb3cge1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7IH1cbiAgLmxhcmdlLWZsZXgtZGlyLXJvdy1yZXZlcnNlIHtcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93LXJldmVyc2U7IH1cbiAgLmxhcmdlLWZsZXgtZGlyLWNvbHVtbiB7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjsgfVxuICAubGFyZ2UtZmxleC1kaXItY29sdW1uLXJldmVyc2Uge1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW4tcmV2ZXJzZTsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgLnhsYXJnZS1mbGV4LWNvbnRhaW5lciB7XG4gICAgZGlzcGxheTogZmxleDsgfVxuICAueGxhcmdlLWZsZXgtY2hpbGQtYXV0byB7XG4gICAgZmxleDogMSAxIGF1dG87IH1cbiAgLnhsYXJnZS1mbGV4LWNoaWxkLWdyb3cge1xuICAgIGZsZXg6IDEgMCBhdXRvOyB9XG4gIC54bGFyZ2UtZmxleC1jaGlsZC1zaHJpbmsge1xuICAgIGZsZXg6IDAgMSBhdXRvOyB9XG4gIC54bGFyZ2UtZmxleC1kaXItcm93IHtcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93OyB9XG4gIC54bGFyZ2UtZmxleC1kaXItcm93LXJldmVyc2Uge1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3ctcmV2ZXJzZTsgfVxuICAueGxhcmdlLWZsZXgtZGlyLWNvbHVtbiB7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjsgfVxuICAueGxhcmdlLWZsZXgtZGlyLWNvbHVtbi1yZXZlcnNlIHtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uLXJldmVyc2U7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5MGVtKSB7XG4gIC54eGxhcmdlLWZsZXgtY29udGFpbmVyIHtcbiAgICBkaXNwbGF5OiBmbGV4OyB9XG4gIC54eGxhcmdlLWZsZXgtY2hpbGQtYXV0byB7XG4gICAgZmxleDogMSAxIGF1dG87IH1cbiAgLnh4bGFyZ2UtZmxleC1jaGlsZC1ncm93IHtcbiAgICBmbGV4OiAxIDAgYXV0bzsgfVxuICAueHhsYXJnZS1mbGV4LWNoaWxkLXNocmluayB7XG4gICAgZmxleDogMCAxIGF1dG87IH1cbiAgLnh4bGFyZ2UtZmxleC1kaXItcm93IHtcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93OyB9XG4gIC54eGxhcmdlLWZsZXgtZGlyLXJvdy1yZXZlcnNlIHtcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93LXJldmVyc2U7IH1cbiAgLnh4bGFyZ2UtZmxleC1kaXItY29sdW1uIHtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uOyB9XG4gIC54eGxhcmdlLWZsZXgtZGlyLWNvbHVtbi1yZXZlcnNlIHtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uLXJldmVyc2U7IH0gfVxuXG4uc2xpZGUtaW4tZG93bi5tdWktZW50ZXIge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiA1MDBtcztcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xMDAlKTtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47IH1cblxuLnNsaWRlLWluLWRvd24ubXVpLWVudGVyLm11aS1lbnRlci1hY3RpdmUge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7IH1cblxuLnNsaWRlLWluLWxlZnQubXVpLWVudGVyIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogNTAwbXM7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMTAwJSk7XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuOyB9XG5cbi5zbGlkZS1pbi1sZWZ0Lm11aS1lbnRlci5tdWktZW50ZXItYWN0aXZlIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApOyB9XG5cbi5zbGlkZS1pbi11cC5tdWktZW50ZXIge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiA1MDBtcztcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDEwMCUpO1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG4gIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjsgfVxuXG4uc2xpZGUtaW4tdXAubXVpLWVudGVyLm11aS1lbnRlci1hY3RpdmUge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7IH1cblxuLnNsaWRlLWluLXJpZ2h0Lm11aS1lbnRlciB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDUwMG1zO1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMTAwJSk7XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuOyB9XG5cbi5zbGlkZS1pbi1yaWdodC5tdWktZW50ZXIubXVpLWVudGVyLWFjdGl2ZSB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTsgfVxuXG4uc2xpZGUtb3V0LWRvd24ubXVpLWxlYXZlIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogNTAwbXM7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47IH1cblxuLnNsaWRlLW91dC1kb3duLm11aS1sZWF2ZS5tdWktbGVhdmUtYWN0aXZlIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDEwMCUpOyB9XG5cbi5zbGlkZS1vdXQtcmlnaHQubXVpLWxlYXZlIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogNTAwbXM7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47IH1cblxuLnNsaWRlLW91dC1yaWdodC5tdWktbGVhdmUubXVpLWxlYXZlLWFjdGl2ZSB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgxMDAlKTsgfVxuXG4uc2xpZGUtb3V0LXVwLm11aS1sZWF2ZSB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDUwMG1zO1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuOyB9XG5cbi5zbGlkZS1vdXQtdXAubXVpLWxlYXZlLm11aS1sZWF2ZS1hY3RpdmUge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTEwMCUpOyB9XG5cbi5zbGlkZS1vdXQtbGVmdC5tdWktbGVhdmUge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiA1MDBtcztcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApO1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG4gIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjsgfVxuXG4uc2xpZGUtb3V0LWxlZnQubXVpLWxlYXZlLm11aS1sZWF2ZS1hY3RpdmUge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTEwMCUpOyB9XG5cbi5mYWRlLWluLm11aS1lbnRlciB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDUwMG1zO1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyO1xuICBvcGFjaXR5OiAwO1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiBvcGFjaXR5OyB9XG5cbi5mYWRlLWluLm11aS1lbnRlci5tdWktZW50ZXItYWN0aXZlIHtcbiAgb3BhY2l0eTogMTsgfVxuXG4uZmFkZS1vdXQubXVpLWxlYXZlIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogNTAwbXM7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7XG4gIG9wYWNpdHk6IDE7XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IG9wYWNpdHk7IH1cblxuLmZhZGUtb3V0Lm11aS1sZWF2ZS5tdWktbGVhdmUtYWN0aXZlIHtcbiAgb3BhY2l0eTogMDsgfVxuXG4uaGluZ2UtaW4tZnJvbS10b3AubXVpLWVudGVyIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogNTAwbXM7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7XG4gIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMjAwMHB4KSByb3RhdGVYKC05MGRlZyk7XG4gIHRyYW5zZm9ybS1vcmlnaW46IHRvcDtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuICBvcGFjaXR5OiAwOyB9XG5cbi5oaW5nZS1pbi1mcm9tLXRvcC5tdWktZW50ZXIubXVpLWVudGVyLWFjdGl2ZSB7XG4gIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMjAwMHB4KSByb3RhdGUoMGRlZyk7XG4gIG9wYWNpdHk6IDE7IH1cblxuLmhpbmdlLWluLWZyb20tcmlnaHQubXVpLWVudGVyIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogNTAwbXM7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7XG4gIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMjAwMHB4KSByb3RhdGVZKC05MGRlZyk7XG4gIHRyYW5zZm9ybS1vcmlnaW46IHJpZ2h0O1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG4gIG9wYWNpdHk6IDA7IH1cblxuLmhpbmdlLWluLWZyb20tcmlnaHQubXVpLWVudGVyLm11aS1lbnRlci1hY3RpdmUge1xuICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDIwMDBweCkgcm90YXRlKDBkZWcpO1xuICBvcGFjaXR5OiAxOyB9XG5cbi5oaW5nZS1pbi1mcm9tLWJvdHRvbS5tdWktZW50ZXIge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiA1MDBtcztcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjtcbiAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgyMDAwcHgpIHJvdGF0ZVgoOTBkZWcpO1xuICB0cmFuc2Zvcm0tb3JpZ2luOiBib3R0b207XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgb3BhY2l0eTogMDsgfVxuXG4uaGluZ2UtaW4tZnJvbS1ib3R0b20ubXVpLWVudGVyLm11aS1lbnRlci1hY3RpdmUge1xuICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDIwMDBweCkgcm90YXRlKDBkZWcpO1xuICBvcGFjaXR5OiAxOyB9XG5cbi5oaW5nZS1pbi1mcm9tLWxlZnQubXVpLWVudGVyIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogNTAwbXM7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7XG4gIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMjAwMHB4KSByb3RhdGVZKDkwZGVnKTtcbiAgdHJhbnNmb3JtLW9yaWdpbjogbGVmdDtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuICBvcGFjaXR5OiAwOyB9XG5cbi5oaW5nZS1pbi1mcm9tLWxlZnQubXVpLWVudGVyLm11aS1lbnRlci1hY3RpdmUge1xuICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDIwMDBweCkgcm90YXRlKDBkZWcpO1xuICBvcGFjaXR5OiAxOyB9XG5cbi5oaW5nZS1pbi1mcm9tLW1pZGRsZS14Lm11aS1lbnRlciB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDUwMG1zO1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyO1xuICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDIwMDBweCkgcm90YXRlWCgtOTBkZWcpO1xuICB0cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXI7XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgb3BhY2l0eTogMDsgfVxuXG4uaGluZ2UtaW4tZnJvbS1taWRkbGUteC5tdWktZW50ZXIubXVpLWVudGVyLWFjdGl2ZSB7XG4gIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMjAwMHB4KSByb3RhdGUoMGRlZyk7XG4gIG9wYWNpdHk6IDE7IH1cblxuLmhpbmdlLWluLWZyb20tbWlkZGxlLXkubXVpLWVudGVyIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogNTAwbXM7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7XG4gIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMjAwMHB4KSByb3RhdGVZKC05MGRlZyk7XG4gIHRyYW5zZm9ybS1vcmlnaW46IGNlbnRlcjtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuICBvcGFjaXR5OiAwOyB9XG5cbi5oaW5nZS1pbi1mcm9tLW1pZGRsZS15Lm11aS1lbnRlci5tdWktZW50ZXItYWN0aXZlIHtcbiAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgyMDAwcHgpIHJvdGF0ZSgwZGVnKTtcbiAgb3BhY2l0eTogMTsgfVxuXG4uaGluZ2Utb3V0LWZyb20tdG9wLm11aS1sZWF2ZSB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDUwMG1zO1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyO1xuICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDIwMDBweCkgcm90YXRlKDBkZWcpO1xuICB0cmFuc2Zvcm0tb3JpZ2luOiB0b3A7XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgb3BhY2l0eTogMTsgfVxuXG4uaGluZ2Utb3V0LWZyb20tdG9wLm11aS1sZWF2ZS5tdWktbGVhdmUtYWN0aXZlIHtcbiAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgyMDAwcHgpIHJvdGF0ZVgoLTkwZGVnKTtcbiAgb3BhY2l0eTogMDsgfVxuXG4uaGluZ2Utb3V0LWZyb20tcmlnaHQubXVpLWxlYXZlIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogNTAwbXM7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7XG4gIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMjAwMHB4KSByb3RhdGUoMGRlZyk7XG4gIHRyYW5zZm9ybS1vcmlnaW46IHJpZ2h0O1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG4gIG9wYWNpdHk6IDE7IH1cblxuLmhpbmdlLW91dC1mcm9tLXJpZ2h0Lm11aS1sZWF2ZS5tdWktbGVhdmUtYWN0aXZlIHtcbiAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgyMDAwcHgpIHJvdGF0ZVkoLTkwZGVnKTtcbiAgb3BhY2l0eTogMDsgfVxuXG4uaGluZ2Utb3V0LWZyb20tYm90dG9tLm11aS1sZWF2ZSB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDUwMG1zO1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyO1xuICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDIwMDBweCkgcm90YXRlKDBkZWcpO1xuICB0cmFuc2Zvcm0tb3JpZ2luOiBib3R0b207XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgb3BhY2l0eTogMTsgfVxuXG4uaGluZ2Utb3V0LWZyb20tYm90dG9tLm11aS1sZWF2ZS5tdWktbGVhdmUtYWN0aXZlIHtcbiAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgyMDAwcHgpIHJvdGF0ZVgoOTBkZWcpO1xuICBvcGFjaXR5OiAwOyB9XG5cbi5oaW5nZS1vdXQtZnJvbS1sZWZ0Lm11aS1sZWF2ZSB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDUwMG1zO1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyO1xuICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDIwMDBweCkgcm90YXRlKDBkZWcpO1xuICB0cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0O1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG4gIG9wYWNpdHk6IDE7IH1cblxuLmhpbmdlLW91dC1mcm9tLWxlZnQubXVpLWxlYXZlLm11aS1sZWF2ZS1hY3RpdmUge1xuICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDIwMDBweCkgcm90YXRlWSg5MGRlZyk7XG4gIG9wYWNpdHk6IDA7IH1cblxuLmhpbmdlLW91dC1mcm9tLW1pZGRsZS14Lm11aS1sZWF2ZSB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDUwMG1zO1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyO1xuICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDIwMDBweCkgcm90YXRlKDBkZWcpO1xuICB0cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXI7XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgb3BhY2l0eTogMTsgfVxuXG4uaGluZ2Utb3V0LWZyb20tbWlkZGxlLXgubXVpLWxlYXZlLm11aS1sZWF2ZS1hY3RpdmUge1xuICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDIwMDBweCkgcm90YXRlWCgtOTBkZWcpO1xuICBvcGFjaXR5OiAwOyB9XG5cbi5oaW5nZS1vdXQtZnJvbS1taWRkbGUteS5tdWktbGVhdmUge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiA1MDBtcztcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjtcbiAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgyMDAwcHgpIHJvdGF0ZSgwZGVnKTtcbiAgdHJhbnNmb3JtLW9yaWdpbjogY2VudGVyO1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG4gIG9wYWNpdHk6IDE7IH1cblxuLmhpbmdlLW91dC1mcm9tLW1pZGRsZS15Lm11aS1sZWF2ZS5tdWktbGVhdmUtYWN0aXZlIHtcbiAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgyMDAwcHgpIHJvdGF0ZVkoLTkwZGVnKTtcbiAgb3BhY2l0eTogMDsgfVxuXG4uc2NhbGUtaW4tdXAubXVpLWVudGVyIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogNTAwbXM7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7XG4gIHRyYW5zZm9ybTogc2NhbGUoMC41KTtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuICBvcGFjaXR5OiAwOyB9XG5cbi5zY2FsZS1pbi11cC5tdWktZW50ZXIubXVpLWVudGVyLWFjdGl2ZSB7XG4gIHRyYW5zZm9ybTogc2NhbGUoMSk7XG4gIG9wYWNpdHk6IDE7IH1cblxuLnNjYWxlLWluLWRvd24ubXVpLWVudGVyIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogNTAwbXM7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7XG4gIHRyYW5zZm9ybTogc2NhbGUoMS41KTtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuICBvcGFjaXR5OiAwOyB9XG5cbi5zY2FsZS1pbi1kb3duLm11aS1lbnRlci5tdWktZW50ZXItYWN0aXZlIHtcbiAgdHJhbnNmb3JtOiBzY2FsZSgxKTtcbiAgb3BhY2l0eTogMTsgfVxuXG4uc2NhbGUtb3V0LXVwLm11aS1sZWF2ZSB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDUwMG1zO1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyO1xuICB0cmFuc2Zvcm06IHNjYWxlKDEpO1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG4gIG9wYWNpdHk6IDE7IH1cblxuLnNjYWxlLW91dC11cC5tdWktbGVhdmUubXVpLWxlYXZlLWFjdGl2ZSB7XG4gIHRyYW5zZm9ybTogc2NhbGUoMS41KTtcbiAgb3BhY2l0eTogMDsgfVxuXG4uc2NhbGUtb3V0LWRvd24ubXVpLWxlYXZlIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogNTAwbXM7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7XG4gIHRyYW5zZm9ybTogc2NhbGUoMSk7XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgb3BhY2l0eTogMTsgfVxuXG4uc2NhbGUtb3V0LWRvd24ubXVpLWxlYXZlLm11aS1sZWF2ZS1hY3RpdmUge1xuICB0cmFuc2Zvcm06IHNjYWxlKDAuNSk7XG4gIG9wYWNpdHk6IDA7IH1cblxuLnNwaW4taW4ubXVpLWVudGVyIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogNTAwbXM7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7XG4gIHRyYW5zZm9ybTogcm90YXRlKC0wLjc1dHVybik7XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgb3BhY2l0eTogMDsgfVxuXG4uc3Bpbi1pbi5tdWktZW50ZXIubXVpLWVudGVyLWFjdGl2ZSB7XG4gIHRyYW5zZm9ybTogcm90YXRlKDApO1xuICBvcGFjaXR5OiAxOyB9XG5cbi5zcGluLW91dC5tdWktbGVhdmUge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiA1MDBtcztcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjtcbiAgdHJhbnNmb3JtOiByb3RhdGUoMCk7XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgb3BhY2l0eTogMTsgfVxuXG4uc3Bpbi1vdXQubXVpLWxlYXZlLm11aS1sZWF2ZS1hY3RpdmUge1xuICB0cmFuc2Zvcm06IHJvdGF0ZSgwLjc1dHVybik7XG4gIG9wYWNpdHk6IDA7IH1cblxuLnNwaW4taW4tY2N3Lm11aS1lbnRlciB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDUwMG1zO1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyO1xuICB0cmFuc2Zvcm06IHJvdGF0ZSgwLjc1dHVybik7XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgb3BhY2l0eTogMDsgfVxuXG4uc3Bpbi1pbi1jY3cubXVpLWVudGVyLm11aS1lbnRlci1hY3RpdmUge1xuICB0cmFuc2Zvcm06IHJvdGF0ZSgwKTtcbiAgb3BhY2l0eTogMTsgfVxuXG4uc3Bpbi1vdXQtY2N3Lm11aS1sZWF2ZSB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDUwMG1zO1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyO1xuICB0cmFuc2Zvcm06IHJvdGF0ZSgwKTtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuICBvcGFjaXR5OiAxOyB9XG5cbi5zcGluLW91dC1jY3cubXVpLWxlYXZlLm11aS1sZWF2ZS1hY3RpdmUge1xuICB0cmFuc2Zvcm06IHJvdGF0ZSgtMC43NXR1cm4pO1xuICBvcGFjaXR5OiAwOyB9XG5cbi5zbG93IHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogNzUwbXMgIWltcG9ydGFudDsgfVxuXG4uZmFzdCB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDI1MG1zICFpbXBvcnRhbnQ7IH1cblxuLmxpbmVhciB7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXIgIWltcG9ydGFudDsgfVxuXG4uZWFzZSB7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlICFpbXBvcnRhbnQ7IH1cblxuLmVhc2UtaW4ge1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbiAhaW1wb3J0YW50OyB9XG5cbi5lYXNlLW91dCB7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLW91dCAhaW1wb3J0YW50OyB9XG5cbi5lYXNlLWluLW91dCB7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluLW91dCAhaW1wb3J0YW50OyB9XG5cbi5ib3VuY2UtaW4ge1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNDg1LCAwLjE1NSwgMC4yNCwgMS4yNDUpICFpbXBvcnRhbnQ7IH1cblxuLmJvdW5jZS1vdXQge1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNDg1LCAwLjE1NSwgMC41MTUsIDAuODQ1KSAhaW1wb3J0YW50OyB9XG5cbi5ib3VuY2UtaW4tb3V0IHtcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjc2LCAtMC4yNDUsIDAuMjQsIDEuMjQ1KSAhaW1wb3J0YW50OyB9XG5cbi5zaG9ydC1kZWxheSB7XG4gIHRyYW5zaXRpb24tZGVsYXk6IDMwMG1zICFpbXBvcnRhbnQ7IH1cblxuLmxvbmctZGVsYXkge1xuICB0cmFuc2l0aW9uLWRlbGF5OiA3MDBtcyAhaW1wb3J0YW50OyB9XG5cbi5zaGFrZSB7XG4gIGFuaW1hdGlvbi1uYW1lOiBzaGFrZS03OyB9XG5cbkBrZXlmcmFtZXMgc2hha2UtNyB7XG4gIDAlLCAxMCUsIDIwJSwgMzAlLCA0MCUsIDUwJSwgNjAlLCA3MCUsIDgwJSwgOTAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoNyUpOyB9XG4gIDUlLCAxNSUsIDI1JSwgMzUlLCA0NSUsIDU1JSwgNjUlLCA3NSUsIDg1JSwgOTUlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTclKTsgfSB9XG5cbi5zcGluLWN3IHtcbiAgYW5pbWF0aW9uLW5hbWU6IHNwaW4tY3ctMXR1cm47IH1cblxuQGtleWZyYW1lcyBzcGluLWN3LTF0dXJuIHtcbiAgMCUge1xuICAgIHRyYW5zZm9ybTogcm90YXRlKC0xdHVybik7IH1cbiAgMTAwJSB7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoMCk7IH0gfVxuXG4uc3Bpbi1jY3cge1xuICBhbmltYXRpb24tbmFtZTogc3Bpbi1jdy0xdHVybjsgfVxuXG5Aa2V5ZnJhbWVzIHNwaW4tY3ctMXR1cm4ge1xuICAwJSB7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoMCk7IH1cbiAgMTAwJSB7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoMXR1cm4pOyB9IH1cblxuLndpZ2dsZSB7XG4gIGFuaW1hdGlvbi1uYW1lOiB3aWdnbGUtN2RlZzsgfVxuXG5Aa2V5ZnJhbWVzIHdpZ2dsZS03ZGVnIHtcbiAgNDAlLCA1MCUsIDYwJSB7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoN2RlZyk7IH1cbiAgMzUlLCA0NSUsIDU1JSwgNjUlIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtN2RlZyk7IH1cbiAgMCUsIDMwJSwgNzAlLCAxMDAlIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgwKTsgfSB9XG5cbi5zaGFrZSxcbi5zcGluLWN3LFxuLnNwaW4tY2N3LFxuLndpZ2dsZSB7XG4gIGFuaW1hdGlvbi1kdXJhdGlvbjogNTAwbXM7IH1cblxuLmluZmluaXRlIHtcbiAgYW5pbWF0aW9uLWl0ZXJhdGlvbi1jb3VudDogaW5maW5pdGU7IH1cblxuLnNsb3cge1xuICBhbmltYXRpb24tZHVyYXRpb246IDc1MG1zICFpbXBvcnRhbnQ7IH1cblxuLmZhc3Qge1xuICBhbmltYXRpb24tZHVyYXRpb246IDI1MG1zICFpbXBvcnRhbnQ7IH1cblxuLmxpbmVhciB7XG4gIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhciAhaW1wb3J0YW50OyB9XG5cbi5lYXNlIHtcbiAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZSAhaW1wb3J0YW50OyB9XG5cbi5lYXNlLWluIHtcbiAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbiAhaW1wb3J0YW50OyB9XG5cbi5lYXNlLW91dCB7XG4gIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2Utb3V0ICFpbXBvcnRhbnQ7IH1cblxuLmVhc2UtaW4tb3V0IHtcbiAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbi1vdXQgIWltcG9ydGFudDsgfVxuXG4uYm91bmNlLWluIHtcbiAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNDg1LCAwLjE1NSwgMC4yNCwgMS4yNDUpICFpbXBvcnRhbnQ7IH1cblxuLmJvdW5jZS1vdXQge1xuICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC40ODUsIDAuMTU1LCAwLjUxNSwgMC44NDUpICFpbXBvcnRhbnQ7IH1cblxuLmJvdW5jZS1pbi1vdXQge1xuICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC43NiwgLTAuMjQ1LCAwLjI0LCAxLjI0NSkgIWltcG9ydGFudDsgfVxuXG4uc2hvcnQtZGVsYXkge1xuICBhbmltYXRpb24tZGVsYXk6IDMwMG1zICFpbXBvcnRhbnQ7IH1cblxuLmxvbmctZGVsYXkge1xuICBhbmltYXRpb24tZGVsYXk6IDcwMG1zICFpbXBvcnRhbnQ7IH1cblxuLypcbiAgTXkgY3VzdG9tIHN0eWxlczpcbiAgQWRkIHlvdXIgc2NzcyBmaWxlcyBiZWxvdyB0byBzdHJ1Y3R1cmUgeW91ciBwcm9qZWN0IHN0eWxlc1xuKi9cbi5zY3JlZW4tcmVhZGVyLXRleHQge1xuICBjbGlwOiByZWN0KDFweCwgMXB4LCAxcHgsIDFweCk7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZSAhaW1wb3J0YW50O1xuICBoZWlnaHQ6IDFweDtcbiAgd2lkdGg6IDFweDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjsgfVxuXG4uc2NyZWVuLXJlYWRlci10ZXh0OmZvY3VzIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2YxZjFmMTtcbiAgYm9yZGVyLXJhZGl1czogM3B4O1xuICBib3gtc2hhZG93OiAwIDAgMnB4IDJweCByZ2JhKDAsIDAsIDAsIDAuNik7XG4gIGNsaXA6IGF1dG8gIWltcG9ydGFudDtcbiAgY29sb3I6ICMyMTc1OWI7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBmb250LXNpemU6IDE0cHg7XG4gIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBoZWlnaHQ6IGF1dG87XG4gIGxlZnQ6IDVweDtcbiAgbGluZS1oZWlnaHQ6IG5vcm1hbDtcbiAgcGFkZGluZzogMTVweCAyM3B4IDE0cHg7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgdG9wOiA1cHg7XG4gIHdpZHRoOiBhdXRvO1xuICB6LWluZGV4OiAxMDAwMDA7IH1cblxuI3dwYWRtaW5iYXIge1xuICBwb3NpdGlvbjogZml4ZWQgIWltcG9ydGFudDsgfVxuXG5ib2R5LmFkbWluLWJhci5mLXRvcGJhci1maXhlZCAuc3RpY2t5LmZpeGVkIHtcbiAgbWFyZ2luLXRvcDogMnJlbTsgfVxuXG5ib2R5LmFkbWluLWJhci5vZmZjYW52YXMgLm9mZi1jYW52YXMuaXMtb3BlbiB7XG4gIHRvcDogMi44NzVyZW07IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDguOTM3NWVtKSB7XG4gICAgYm9keS5hZG1pbi1iYXIub2ZmY2FudmFzIC5vZmYtY2FudmFzLmlzLW9wZW4ge1xuICAgICAgdG9wOiAycmVtOyB9IH1cblxuLndwLWNhcHRpb24gPiBmaWdjYXB0aW9uIHtcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBmb250LXNpemU6IDAuOHJlbTtcbiAgY29sb3I6ICM5OTk7XG4gIHBhZGRpbmc6IDAuMjVyZW0gMDsgfVxuXG5wLndwLWNhcHRpb24tdGV4dCB7XG4gIGZvbnQtc2l6ZTogOTAlO1xuICBjb2xvcjogIzY2NjtcbiAgcGFkZGluZzogMC42MjVyZW0gMDsgfVxuXG4uYWxpZ25sZWZ0IHtcbiAgZmxvYXQ6IGxlZnQ7XG4gIHBhZGRpbmctcmlnaHQ6IDFyZW07XG4gIG1hcmdpbjogMDsgfVxuXG4uYWxpZ25yaWdodCB7XG4gIGZsb2F0OiByaWdodDtcbiAgcGFkZGluZy1sZWZ0OiAxcmVtO1xuICBtYXJnaW46IDA7IH1cblxuLmFsaWduY2VudGVyIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87IH1cblxuLnNlY3Rpb24tcGFkZGluZy1sciB7XG4gIHBhZGRpbmctbGVmdDogMS41cmVtO1xuICBwYWRkaW5nLXJpZ2h0OiAxLjVyZW07IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuc2VjdGlvbi1wYWRkaW5nLWxyIHtcbiAgICAgIHBhZGRpbmctbGVmdDogNC4zNzVyZW07XG4gICAgICBwYWRkaW5nLXJpZ2h0OiA0LjM3NXJlbTsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLnNlY3Rpb24tcGFkZGluZy1sciB7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDYuMjVyZW07XG4gICAgICBwYWRkaW5nLXJpZ2h0OiA2LjI1cmVtOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgIC5zZWN0aW9uLXBhZGRpbmctbHIge1xuICAgICAgcGFkZGluZy1sZWZ0OiA3LjVyZW07XG4gICAgICBwYWRkaW5nLXJpZ2h0OiA3LjVyZW07IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5MGVtKSB7XG4gICAgLnNlY3Rpb24tcGFkZGluZy1sciB7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDcuNXJlbTtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDcuNXJlbTsgfSB9XG5cbi5zZWN0aW9uLXBhZGRpbmctbCB7XG4gIHBhZGRpbmctbGVmdDogMS41cmVtOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLnNlY3Rpb24tcGFkZGluZy1sIHtcbiAgICAgIHBhZGRpbmctbGVmdDogNC4zNzVyZW07IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5zZWN0aW9uLXBhZGRpbmctbCB7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDYuMjVyZW07IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgLnNlY3Rpb24tcGFkZGluZy1sIHtcbiAgICAgIHBhZGRpbmctbGVmdDogNy41cmVtOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTBlbSkge1xuICAgIC5zZWN0aW9uLXBhZGRpbmctbCB7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDcuNXJlbTsgfSB9XG5cbi5zZWN0aW9uLXBhZGRpbmctciB7XG4gIHBhZGRpbmctcmlnaHQ6IDEuNXJlbTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5zZWN0aW9uLXBhZGRpbmctciB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiA0LjM3NXJlbTsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLnNlY3Rpb24tcGFkZGluZy1yIHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDYuMjVyZW07IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgLnNlY3Rpb24tcGFkZGluZy1yIHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDcuNXJlbTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDkwZW0pIHtcbiAgICAuc2VjdGlvbi1wYWRkaW5nLXIge1xuICAgICAgcGFkZGluZy1yaWdodDogNy41cmVtOyB9IH1cblxuLnNlY3Rpb24tcGFkZGluZy10YiB7XG4gIHBhZGRpbmctdG9wOiA0LjVyZW07XG4gIHBhZGRpbmctYm90dG9tOiA0LjVyZW07IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuc2VjdGlvbi1wYWRkaW5nLXRiIHtcbiAgICAgIHBhZGRpbmctdG9wOiA4Ljc1cmVtO1xuICAgICAgcGFkZGluZy1ib3R0b206IDguNzVyZW07IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5zZWN0aW9uLXBhZGRpbmctdGIge1xuICAgICAgcGFkZGluZy10b3A6IDcuNXJlbTtcbiAgICAgIHBhZGRpbmctYm90dG9tOiA3LjVyZW07IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgLnNlY3Rpb24tcGFkZGluZy10YiB7XG4gICAgICBwYWRkaW5nLXRvcDogOXJlbTtcbiAgICAgIHBhZGRpbmctYm90dG9tOiA5cmVtOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTBlbSkge1xuICAgIC5zZWN0aW9uLXBhZGRpbmctdGIge1xuICAgICAgcGFkZGluZy10b3A6IDlyZW07XG4gICAgICBwYWRkaW5nLWJvdHRvbTogOXJlbTsgfSB9XG5cbi5zZWN0aW9uLXBhZGRpbmctdCB7XG4gIHBhZGRpbmctdG9wOiA0LjVyZW07IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuc2VjdGlvbi1wYWRkaW5nLXQge1xuICAgICAgcGFkZGluZy10b3A6IDguNzVyZW07IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5zZWN0aW9uLXBhZGRpbmctdCB7XG4gICAgICBwYWRkaW5nLXRvcDogNy41cmVtOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgIC5zZWN0aW9uLXBhZGRpbmctdCB7XG4gICAgICBwYWRkaW5nLXRvcDogOXJlbTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDkwZW0pIHtcbiAgICAuc2VjdGlvbi1wYWRkaW5nLXQge1xuICAgICAgcGFkZGluZy10b3A6IDlyZW07IH0gfVxuXG4uc2VjdGlvbi1wYWRkaW5nLWIge1xuICBwYWRkaW5nLWJvdHRvbTogNC41cmVtOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLnNlY3Rpb24tcGFkZGluZy1iIHtcbiAgICAgIHBhZGRpbmctYm90dG9tOiA4Ljc1cmVtOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuc2VjdGlvbi1wYWRkaW5nLWIge1xuICAgICAgcGFkZGluZy1ib3R0b206IDcuNXJlbTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICAuc2VjdGlvbi1wYWRkaW5nLWIge1xuICAgICAgcGFkZGluZy1ib3R0b206IDlyZW07IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5MGVtKSB7XG4gICAgLnNlY3Rpb24tcGFkZGluZy1iIHtcbiAgICAgIHBhZGRpbmctYm90dG9tOiA5cmVtOyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLm1vYmlsZS1tZW51LFxuICAudGl0bGUtYmFyIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45Mzc1ZW0pIHtcbiAgLmRlc2t0b3AtbWVudSxcbiAgLnNpdGUtbmF2aWdhdGlvbiB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9IH1cblxuYS5zaWxlbnQge1xuICB3aWR0aDogYXV0bztcbiAgdHJhbnNpdGlvbjogYWxsIDAuNXMgZWFzZTsgfVxuXG4vKipcbkVudGlyZSBOQVYgY29udGFpbmVyIChtb2JpbGUgJiBkZXNrdG9wKVxuICovXG4jc2l0ZS1oZWFkZXIge1xuICB0cmFuc2l0aW9uOiBoZWlnaHQgMC4zcyBlYXNlLWluLW91dCwgd2lkdGggMC4zcyBlYXNlLWluLW91dDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZmZmZjsgfVxuICAjc2l0ZS1oZWFkZXIuc3RpY2t5IHtcbiAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgei1pbmRleDogMTAwO1xuICAgIGJveC1zaGFkb3c6IDBweCAxcHggMTBweCByZ2JhKDAsIDAsIDAsIDAuMTUpOyB9XG4gICAgI3NpdGUtaGVhZGVyLnN0aWNreSAudG9wLWJhci1yLXByZW1lbnUge1xuICAgICAgZGlzcGxheTogbm9uZTsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAjc2l0ZS1oZWFkZXIuc3RpY2t5IGEuc2lsZW50IHtcbiAgICAgICAgcGFkZGluZy10b3A6IDAuNXJlbTtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDAuNXJlbTsgfSB9XG4gICAgI3NpdGUtaGVhZGVyLnN0aWNreSAuc2l0ZS1sb2dvLWNvbnQge1xuICAgICAgcGFkZGluZzogMDtcbiAgICAgIG1hcmdpbjogMDsgfVxuICAgICNzaXRlLWhlYWRlci5zdGlja3kgLnNpdGUtbG9nbyB7XG4gICAgICBtYXgtaGVpZ2h0OiAyLjVyZW07IH1cblxuLnNpdGUtbG9nbyB7XG4gIHdpZHRoOiBhdXRvO1xuICBoZWlnaHQ6IDEuNTYyNXJlbTtcbiAgdHJhbnNpdGlvbjogYWxsIDAuNXMgZWFzZTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5zaXRlLWxvZ28ge1xuICAgICAgbWF4LWhlaWdodDogbm9uZTtcbiAgICAgIGhlaWdodDogMi4yNXJlbTtcbiAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgbWF4LXdpZHRoOiBub25lOyB9IH1cblxuLnRvcC1iYXItdGl0bGUge1xuICBtYXJnaW4tdG9wOiAwO1xuICBtYXJnaW4tYm90dG9tOiAwOyB9XG5cbi5zaXRlLWRlc2t0b3AtdGl0bGUgYSB7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIGZvbnQtc2l6ZTogMXJlbTtcbiAgaGVpZ2h0OiBhdXRvOyB9XG4gIC5zaXRlLWRlc2t0b3AtdGl0bGUgYSAuc2l0ZS1sb2dvLWNvbnQge1xuICAgIHBhZGRpbmc6IDFyZW07XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB3aWR0aDogYXV0bzsgfVxuICAgIC5zaXRlLWRlc2t0b3AtdGl0bGUgYSAuc2l0ZS1sb2dvLWNvbnQgPiBpbWcge1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgei1pbmRleDogMTsgfVxuXG4vKipcbioqKioqKioqKioqKioqKioqKioqKlxuU1RBUlQgTU9CSUxFXG4qKioqKioqKioqKioqKioqKlxuICovXG4ubW9iaWxlLW1lbnUge1xuICBkaXNwbGF5OiBub25lOyB9XG5cbi50aXRsZS1iYXIge1xuICB0cmFuc2l0aW9uOiBhbGwgMC41cyBlYXNlO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmZmZmO1xuICB3aWR0aDogMTAwJTtcbiAgcGFkZGluZzogMDsgfVxuICAudGl0bGUtYmFyIC50aXRsZS1iYXItbGVmdCB7XG4gICAgcGFkZGluZy10b3A6IDAuNXJlbTtcbiAgICBwYWRkaW5nLWJvdHRvbTogMC41cmVtO1xuICAgIHBhZGRpbmctbGVmdDogMS41cmVtO1xuICAgIGZsZXg6IDEgMSAwcHg7IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgLnRpdGxlLWJhciAudGl0bGUtYmFyLWxlZnQge1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDQuMzc1cmVtOyB9IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgLnRpdGxlLWJhciAudGl0bGUtYmFyLWxlZnQge1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDYuMjVyZW07IH0gfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICAgIC50aXRsZS1iYXIgLnRpdGxlLWJhci1sZWZ0IHtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiA3LjVyZW07IH0gfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDkwZW0pIHtcbiAgICAgIC50aXRsZS1iYXIgLnRpdGxlLWJhci1sZWZ0IHtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiA3LjVyZW07IH0gfVxuICAudGl0bGUtYmFyIC50aXRsZS1iYXItcmlnaHQge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xuICAgIHBhZGRpbmctcmlnaHQ6IDEuNXJlbTtcbiAgICBoZWlnaHQ6IDQuMDYyNXJlbTtcbiAgICBmbGV4OiAwIDEgMHB4OyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIC50aXRsZS1iYXIgLnRpdGxlLWJhci1yaWdodCB7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDQuMzc1cmVtOyB9IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgLnRpdGxlLWJhciAudGl0bGUtYmFyLXJpZ2h0IHtcbiAgICAgICAgcGFkZGluZy1yaWdodDogNi4yNXJlbTsgfSB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgICAgLnRpdGxlLWJhciAudGl0bGUtYmFyLXJpZ2h0IHtcbiAgICAgICAgcGFkZGluZy1yaWdodDogNy41cmVtOyB9IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5MGVtKSB7XG4gICAgICAudGl0bGUtYmFyIC50aXRsZS1iYXItcmlnaHQge1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiA3LjVyZW07IH0gfVxuICAgIC50aXRsZS1iYXIgLnRpdGxlLWJhci1yaWdodCAuc2VhcmNoZm9ybS1jb250IGZvcm0gLmlucHV0LWdyb3VwIGJ1dHRvbi5zZWFyY2hzdWJtaXQ6aG92ZXIsIC50aXRsZS1iYXIgLnRpdGxlLWJhci1yaWdodCAuc2VhcmNoZm9ybS1jb250IGZvcm0gLmlucHV0LWdyb3VwIGJ1dHRvbi5zZWFyY2hzdWJtaXQ6Zm9jdXMsIC50aXRsZS1iYXIgLnRpdGxlLWJhci1yaWdodCAuc2VhcmNoZm9ybS1jb250IGZvcm0gLmlucHV0LWdyb3VwIGJ1dHRvbi5zZWFyY2hzdWJtaXQ6YWN0aXZlIHtcbiAgICAgIGNvbG9yOiAjMkRDOUQ3OyB9XG5cbi5jdXN0b20tbWVudS1pY29uIHtcbiAgZm9udC1zaXplOiAxLjVyZW07XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgY29sb3I6ICMyREM5RDc7XG4gIHBhZGRpbmc6IDAuNXJlbTtcbiAgYm9yZGVyLXJhZGl1czogNHB4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgbWFyZ2luLXJpZ2h0OiAtMC41cmVtOyB9XG4gIC5jdXN0b20tbWVudS1pY29uOmhvdmVyLCAuY3VzdG9tLW1lbnUtaWNvbjphY3RpdmUsIC5jdXN0b20tbWVudS1pY29uOmZvY3VzIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMDUpOyB9XG4gICAgLmN1c3RvbS1tZW51LWljb246aG92ZXIgc3Bhbjo6YmVmb3JlLCAuY3VzdG9tLW1lbnUtaWNvbjphY3RpdmUgc3Bhbjo6YmVmb3JlLCAuY3VzdG9tLW1lbnUtaWNvbjpmb2N1cyBzcGFuOjpiZWZvcmUge1xuICAgICAgY29sb3I6ICMwMDAwMDA7IH1cblxuLnRpdGxlLWJhci10aXRsZSBhIHtcbiAgZm9udC1zaXplOiAxcmVtO1xuICBjb2xvcjogIzAwMDAwMDsgfVxuXG4ub2ZmLWNhbnZhcyA+IHVsLm1lbnUge1xuICBoZWlnaHQ6IDEwMHZoO1xuICBwYWRkaW5nOiAxcmVtOyB9XG4gIC5vZmYtY2FudmFzID4gdWwubWVudSAuaXMtYWN0aXZlIHtcbiAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50OyB9XG4gICAgLm9mZi1jYW52YXMgPiB1bC5tZW51IC5pcy1hY3RpdmUgPiBhIHtcbiAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50OyB9XG4gIC5vZmYtY2FudmFzID4gdWwubWVudSAuY3VycmVudC1tZW51LWl0ZW0gPiBhIHtcbiAgICBib3JkZXItbGVmdC1jb2xvcjogIzJEQzlENzsgfVxuICAub2ZmLWNhbnZhcyA+IHVsLm1lbnUgYSB7XG4gICAgY29sb3I6ICMwMDAwMDA7XG4gICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICBmb250LXNpemU6IDAuOTM3NXJlbTtcbiAgICBib3JkZXItbGVmdDogMnB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIHBhZGRpbmc6IDFyZW0gMC43cmVtOyB9XG4gICAgLm9mZi1jYW52YXMgPiB1bC5tZW51IGE6aG92ZXIsIC5vZmYtY2FudmFzID4gdWwubWVudSBhOmFjdGl2ZSwgLm9mZi1jYW52YXMgPiB1bC5tZW51IGE6Zm9jdXMge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyNTIsIDE4MSwgNTQsIDAuMDUpOyB9XG5cbi5vZmYtY2FudmFzIHVsLm1lbnUubmVzdGVkIHtcbiAgbWFyZ2luLXJpZ2h0OiAwO1xuICBtYXJnaW4tbGVmdDogMDtcbiAgcGFkZGluZy1sZWZ0OiAxcmVtO1xuICBib3JkZXItdG9wOiAycHggc29saWQgcmdiYSg0NSwgMjAxLCAyMTUsIDAuMik7IH1cbiAgLm9mZi1jYW52YXMgdWwubWVudS5uZXN0ZWQgYSB7XG4gICAgYm9yZGVyLWxlZnQ6IDJweCBzb2xpZCByZ2JhKDQ1LCAyMDEsIDIxNSwgMC4yKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDQ1LCAyMDEsIDIxNSwgMC4wNSk7IH1cbiAgICAub2ZmLWNhbnZhcyB1bC5tZW51Lm5lc3RlZCBhOmhvdmVyLCAub2ZmLWNhbnZhcyB1bC5tZW51Lm5lc3RlZCBhOmZvY3VzIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoNDUsIDIwMSwgMjE1LCAwLjIpOyB9XG4gIC5vZmYtY2FudmFzIHVsLm1lbnUubmVzdGVkIC5jdXJyZW50LW1lbnUtaXRlbSA+IGEge1xuICAgIGJvcmRlci1sZWZ0LWNvbG9yOiAjMkRDOUQ3OyB9XG5cbi5tb2JpbGUtbWVudSAubWVudSAuaXMtYWN0aXZlID4gYSxcbi5tb2JpbGUtb2ZmLWNhbnZhcy1tZW51IC5tZW51IC5pcy1hY3RpdmUgPiBhIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzM2NDU0ZjsgfVxuXG4ub2ZmLWNhbnZhcy1jb250ZW50IHtcbiAgdHJhbnNpdGlvbjogYWxsIDAuNXMgZWFzZTsgfVxuICAub2ZmLWNhbnZhcy1jb250ZW50LmlzLW9wZW4tcmlnaHQge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAgIC5vZmYtY2FudmFzLWNvbnRlbnQuaXMtb3Blbi1yaWdodDphZnRlciB7XG4gICAgICBjb250ZW50OiAnICc7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDByZW07XG4gICAgICBib3R0b206IDByZW07XG4gICAgICBsZWZ0OiAwcmVtO1xuICAgICAgcmlnaHQ6IDByZW07XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuOCk7XG4gICAgICB6LWluZGV4OiAxMDsgfVxuXG4uanMtb2ZmLWNhbnZhcy1vdmVybGF5LmlzLXZpc2libGUge1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDsgfVxuXG5ib2R5Lm9mZmNhbnZhcyAjc2l0ZS1oZWFkZXIuc3RpY2t5IHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB0b3A6IDByZW07XG4gIGxlZnQ6IDByZW07XG4gIHJpZ2h0OiAwcmVtO1xuICB6LWluZGV4OiAxMDA7IH1cbiAgYm9keS5vZmZjYW52YXMgI3NpdGUtaGVhZGVyLnN0aWNreS5vZmYtY2FudmFzLXB1c2hlZCB7XG4gICAgei1pbmRleDogMjtcbiAgICBsZWZ0OiAtMjUwcHg7IH1cblxuLnRvcC1iYXItcmlnaHQge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGZsZXg6IDEgMSBhdXRvO1xuICB6LWluZGV4OiAyOyB9XG5cbi50b3AtYmFyLWxlZnQge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHotaW5kZXg6IDI7IH1cblxuLnRvcC1iYXIge1xuICBoZWlnaHQ6IGF1dG87XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gIHBhZGRpbmctbGVmdDogMS41cmVtO1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgLyoqXG4gIFBSRS1NRU5VIG5hdiBzdHlsaW5nXG4gICAqL1xuICAvKipcbiAgUHJpbWFyeSBOYXYgTWVudSBpbW1lZGlhdGUgcGFyZW50XG4gICAqLyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLnRvcC1iYXIge1xuICAgICAgcGFkZGluZy1sZWZ0OiA0LjM3NXJlbTsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLnRvcC1iYXIge1xuICAgICAgcGFkZGluZy1sZWZ0OiA2LjI1cmVtOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgIC50b3AtYmFyIHtcbiAgICAgIHBhZGRpbmctbGVmdDogNy41cmVtOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTBlbSkge1xuICAgIC50b3AtYmFyIHtcbiAgICAgIHBhZGRpbmctbGVmdDogNy41cmVtOyB9IH1cbiAgLnRvcC1iYXIgLnRvcC1iYXItci1wcmVtZW51IHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBzdHJldGNoO1xuICAgIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNGNUY1RjU7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHBhZGRpbmctcmlnaHQ6IDEuNXJlbTsgfVxuICAgIC50b3AtYmFyIC50b3AtYmFyLXItcHJlbWVudTphZnRlciB7XG4gICAgICBjb250ZW50OiAnICc7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogMHJlbTtcbiAgICAgIGJvdHRvbTogMHJlbTtcbiAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNGNUY1RjU7IH1cbiAgICAudG9wLWJhciAudG9wLWJhci1yLXByZW1lbnU6YWZ0ZXIge1xuICAgICAgcmlnaHQ6IGNhbGMoNDVyZW0gLSA1MHZ3KTtcbiAgICAgIHdpZHRoOiBjYWxjKDUwdncgLSA0NXJlbSk7IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgLnRvcC1iYXIgLnRvcC1iYXItci1wcmVtZW51IHtcbiAgICAgICAgcGFkZGluZy1yaWdodDogNC4zNzVyZW07IH0gfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAudG9wLWJhciAudG9wLWJhci1yLXByZW1lbnUge1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiA2LjI1cmVtOyB9IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgICAudG9wLWJhciAudG9wLWJhci1yLXByZW1lbnUge1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiA3LjVyZW07IH0gfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDkwZW0pIHtcbiAgICAgIC50b3AtYmFyIC50b3AtYmFyLXItcHJlbWVudSB7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDcuNXJlbTsgfSB9XG4gICAgLnRvcC1iYXIgLnRvcC1iYXItci1wcmVtZW51IC5tZW51ID4gbGk6bm90KC5tZW51LXRleHQpIHtcbiAgICAgIC8qKlxuICAgICAgRGVmYXVsdCBsaW5rIHN0eWxpbmcgZm9yIHByZS1uYXZcbiAgICAgICAqLyB9XG4gICAgICAudG9wLWJhciAudG9wLWJhci1yLXByZW1lbnUgLm1lbnUgPiBsaTpub3QoLm1lbnUtdGV4dCkgPiBhIHtcbiAgICAgICAgaGVpZ2h0OiAyLjVyZW07XG4gICAgICAgIHBhZGRpbmc6IDAuNXJlbTtcbiAgICAgICAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7IH1cbiAgICAgIC50b3AtYmFyIC50b3AtYmFyLXItcHJlbWVudSAubWVudSA+IGxpOm5vdCgubWVudS10ZXh0KS5jdXJyZW50X3BhZ2VfaXRlbSA+IGEge1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICBjb2xvcjogaW5oZXJpdDsgfVxuICAgIC50b3AtYmFyIC50b3AtYmFyLXItcHJlbWVudSAubWVudSA+IGxpOm5vdCgubWVudS10ZXh0KTpsYXN0LW9mLXR5cGUgYTphZnRlciB7XG4gICAgICBjb250ZW50OiBub25lOyB9XG4gICAgLnRvcC1iYXIgLnRvcC1iYXItci1wcmVtZW51IC5wcmVtZW51LWNvbnQge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICBwYWRkaW5nOiAwOyB9XG4gICAgLnRvcC1iYXIgLnRvcC1iYXItci1wcmVtZW51IC5zZWFyY2hmb3JtLWNvbnQge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGFsaWduLWl0ZW1zOiBzdHJldGNoO1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgcGFkZGluZzogMHJlbTtcbiAgICAgIG1hcmdpbi1yaWdodDogMXJlbTsgfVxuICAgICAgLnRvcC1iYXIgLnRvcC1iYXItci1wcmVtZW51IC5zZWFyY2hmb3JtLWNvbnQgaW5wdXQge1xuICAgICAgICBmb250LXNpemU6IDAuODc1cmVtOyB9XG4gIC50b3AtYmFyIC50b3AtYmFyLXItbWVudSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG4gICAgcGFkZGluZy1yaWdodDogMS41cmVtOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIC50b3AtYmFyIC50b3AtYmFyLXItbWVudSB7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDQuMzc1cmVtOyB9IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgLnRvcC1iYXIgLnRvcC1iYXItci1tZW51IHtcbiAgICAgICAgcGFkZGluZy1yaWdodDogNi4yNXJlbTsgfSB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgICAgLnRvcC1iYXIgLnRvcC1iYXItci1tZW51IHtcbiAgICAgICAgcGFkZGluZy1yaWdodDogNy41cmVtOyB9IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5MGVtKSB7XG4gICAgICAudG9wLWJhciAudG9wLWJhci1yLW1lbnUge1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiA3LjVyZW07IH0gfVxuICAudG9wLWJhciB1bCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7IH1cbiAgLnRvcC1iYXIgLm1lbnUgYSB7XG4gICAgY29sb3I6ICMwMDAwMDA7XG4gICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICBmb250LXNpemU6IDAuOHJlbTtcbiAgICBsaW5lLWhlaWdodDogMTtcbiAgICBwYWRkaW5nOiAxcmVtIDEuMnJlbTsgfVxuICAgIC50b3AtYmFyIC5tZW51IGE6aG92ZXI6bm90KC5idXR0b24pIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoNDUsIDIwMSwgMjE1LCAwLjEpO1xuICAgICAgY29sb3I6ICMwMDAwMDA7IH1cbiAgICAudG9wLWJhciAubWVudSBhID4gbGk6bm90KC5tZW51LXRleHQpID4gYSB7XG4gICAgICBwYWRkaW5nOiAxcmVtOyB9XG4gIC50b3AtYmFyIHVsLm1lbnU6bm90KC5zdWJtZW51KSA+IGxpID4gYSB7XG4gICAgcGFkZGluZzogMnJlbSAwLjc1cmVtO1xuICAgIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICBib3JkZXItYm90dG9tOiAzcHggc29saWQgdHJhbnNwYXJlbnQ7IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgICAudG9wLWJhciB1bC5tZW51Om5vdCguc3VibWVudSkgPiBsaSA+IGEge1xuICAgICAgICBwYWRkaW5nOiAycmVtIDEuNXJlbTsgfSB9XG4gIC50b3AtYmFyIHVsLm1lbnU6bm90KC5zdWJtZW51KSA+IGxpLmN1cnJlbnQtbWVudS1pdGVtID4gYSB7XG4gICAgY29sb3I6ICMwMDAwMDA7XG4gICAgYm9yZGVyLWJvdHRvbTogM3B4IHNvbGlkICMyREM5RDc7IH1cbiAgLnRvcC1iYXIgdWwubWVudTpub3QoLnN1Ym1lbnUpID4gbGkgPiAuc3VibWVudSB7XG4gICAgYm9yZGVyLXRvcDogbm9uZTtcbiAgICBib3gtc2hhZG93OiAwIDVweCAxMHB4IHJnYmEoMCwgMCwgMCwgMC4yKTtcbiAgICB6LWluZGV4OiAwOyB9XG4gIC50b3AtYmFyIC5tZW51ID4gbGkuaXMtYWN0aXZlID4gYSB7XG4gICAgY29sb3I6ICMwMDAwMDA7XG4gICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7IH1cbiAgLnRvcC1iYXIgLmRyb3Bkb3duLm1lbnU6Zmlyc3QtY2hpbGQgPiBsaS5pcy1kcm9wZG93bi1zdWJtZW51LXBhcmVudCA+IGE6OmFmdGVyIHtcbiAgICByaWdodDogMXJlbTtcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudCB1cmwoLi4vaW1hZ2VzL2ljb25zL2xpbmVjYXJldF9kb3duX2JsYWNrLnN2ZykgY2VudGVyIGNlbnRlcjtcbiAgICB3aWR0aDogMThweDtcbiAgICBoZWlnaHQ6IDE4cHg7XG4gICAgYm9yZGVyOiBub25lO1xuICAgIHRvcDogNTAlO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgICBtYXJnaW4tdG9wOiAycHg7IH1cbiAgLnRvcC1iYXIgLmRyb3Bkb3duLm1lbnUgLnN1Ym1lbnUge1xuICAgIGJvcmRlcjogMDsgfVxuICAgIC50b3AtYmFyIC5kcm9wZG93bi5tZW51IC5zdWJtZW51IGxpLmN1cnJlbnQtbWVudS1pdGVtID4gYSB7XG4gICAgICBib3JkZXItbGVmdDogM3B4IHNvbGlkICMyREM5RDc7XG4gICAgICBjb2xvcjogIzAwMDAwMDsgfVxuICAudG9wLWJhciAuZHJvcGRvd24ubWVudSAuaGFzLXN1Ym1lbnUuaXMtZG93bi1hcnJvdyBhOmFmdGVyIHtcbiAgICBib3JkZXI6IDA7IH1cbiAgLnRvcC1iYXIgLmRyb3Bkb3duLm1lbnU6Zmlyc3QtY2hpbGQgbGkgLmlzLWRyb3Bkb3duLXN1Ym1lbnUtcGFyZW50IGE6YWZ0ZXIge1xuICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgLnRvcC1iYXIgLmRyb3Bkb3duLm1lbnUgbGkuaXMtZHJvcGRvd24tc3VibWVudS1wYXJlbnQgPiBhIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAyLjVyZW07XG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDsgfVxuICAudG9wLWJhciAuZHJvcGRvd24ubWVudSBsaS5vcGVucy1sZWZ0IC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgICB6LWluZGV4OiA0O1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmZmZmY7XG4gICAgd2lkdGg6IG1heC1jb250ZW50O1xuICAgIHJpZ2h0OiAwO1xuICAgIGxlZnQ6IDA7IH1cblxuLnRvcC1iYXItY29udGFpbmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZmZmZjtcbiAgdHJhbnNpdGlvbjogaGVpZ2h0IDAuM3MgZWFzZS1pbi1vdXQsIHdpZHRoIDAuM3MgZWFzZS1pbi1vdXQ7XG4gIHdpZHRoOiAxMDAlOyB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5LjkzNzVlbSkge1xuICAuc2l0ZS1uYXZpZ2F0aW9uIHtcbiAgICBwYWRkaW5nOiAwOyB9IH1cblxuLnBvc3QtbmF2aWdhdGlvbjo6YmVmb3JlLCAucG9zdC1uYXZpZ2F0aW9uOjphZnRlciB7XG4gIGRpc3BsYXk6IHRhYmxlO1xuICBjb250ZW50OiAnICc7XG4gIGZsZXgtYmFzaXM6IDA7XG4gIG9yZGVyOiAxOyB9XG5cbi5wb3N0LW5hdmlnYXRpb246OmFmdGVyIHtcbiAgY2xlYXI6IGJvdGg7IH1cblxuLm5hdi1wcmV2aW91cyB7XG4gIGZsb2F0OiBsZWZ0OyB9XG5cbi5uYXYtbmV4dCB7XG4gIGZsb2F0OiByaWdodDsgfVxuXG4uaW5wdXQtZ3JvdXAge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgLmlucHV0LWdyb3VwIC5pbnB1dC1ncm91cC1maWVsZCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMHJlbTtcbiAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgIHBhZGRpbmctcmlnaHQ6IDNyZW07XG4gICAgYm9yZGVyOiAycHggc29saWQgI2NhY2FjYTtcbiAgICBib3gtc2hhZG93OiBub25lO1xuICAgIGNvbG9yOiAjMDAxRTYyOyB9XG4gICAgLmlucHV0LWdyb3VwIC5pbnB1dC1ncm91cC1maWVsZDo6cGxhY2Vob2xkZXIge1xuICAgICAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4zKTsgfVxuICAgIC5pbnB1dC1ncm91cCAuaW5wdXQtZ3JvdXAtZmllbGQ6Zm9jdXMge1xuICAgICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICAgIGJvcmRlcjogMnB4IHNvbGlkICMyREM5RDc7IH1cbiAgLmlucHV0LWdyb3VwIC5pbnB1dC1ncm91cC1idXR0b24ge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICByaWdodDogMDtcbiAgICB0b3A6IDA7XG4gICAgYm90dG9tOiAwO1xuICAgIGZvbnQtc2l6ZTogMS4ycmVtOyB9XG4gICAgLmlucHV0LWdyb3VwIC5pbnB1dC1ncm91cC1idXR0b24gLnNlYXJjaHN1Ym1pdCB7XG4gICAgICBib3JkZXI6IG5vbmU7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgIGNvbG9yOiAjMDAxRTYyO1xuICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgdHJhbnNpdGlvbjogMC41cyBlYXNlO1xuICAgICAgYm9yZGVyLXJhZGl1czogMHB4IDJweCAycHggMHB4OyB9XG4gICAgICAuaW5wdXQtZ3JvdXAgLmlucHV0LWdyb3VwLWJ1dHRvbiAuc2VhcmNoc3VibWl0OmJlZm9yZSB7XG4gICAgICAgIGZvbnQtZmFtaWx5OiAnRm9udCBBd2Vzb21lIDUgUHJvJztcbiAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgICAgY29udGVudDogXCJcXGYwMDJcIjtcbiAgICAgICAgcGFkZGluZzogMCAxcmVtIDAgMDtcbiAgICAgICAgZm9udC1zaXplOiAxLjVyZW07IH1cbiAgICAgIC5pbnB1dC1ncm91cCAuaW5wdXQtZ3JvdXAtYnV0dG9uIC5zZWFyY2hzdWJtaXQ6aG92ZXIsIC5pbnB1dC1ncm91cCAuaW5wdXQtZ3JvdXAtYnV0dG9uIC5zZWFyY2hzdWJtaXQ6YWN0aXZlLCAuaW5wdXQtZ3JvdXAgLmlucHV0LWdyb3VwLWJ1dHRvbiAuc2VhcmNoc3VibWl0OmZvY3VzIHtcbiAgICAgICAgY29sb3I6ICMyREM5RDc7IH1cblxuLmhlYWRpbmctc2VhcmNoZm9ybS1jb250IHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgbWFyZ2luLXJpZ2h0OiAwLjc1cmVtO1xuICBtYXJnaW4tbGVmdDogMC43NXJlbTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5oZWFkaW5nLXNlYXJjaGZvcm0tY29udCB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDIuMTg3NXJlbTsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmhlYWRpbmctc2VhcmNoZm9ybS1jb250IHtcbiAgICAgIG1hcmdpbi1yaWdodDogMy4xMjVyZW07IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgLmhlYWRpbmctc2VhcmNoZm9ybS1jb250IHtcbiAgICAgIG1hcmdpbi1yaWdodDogMy43NXJlbTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDkwZW0pIHtcbiAgICAuaGVhZGluZy1zZWFyY2hmb3JtLWNvbnQge1xuICAgICAgbWFyZ2luLXJpZ2h0OiAzLjc1cmVtOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuaGVhZGluZy1zZWFyY2hmb3JtLWNvbnQge1xuICAgICAgbWFyZ2luLWxlZnQ6IDIuMTg3NXJlbTsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmhlYWRpbmctc2VhcmNoZm9ybS1jb250IHtcbiAgICAgIG1hcmdpbi1sZWZ0OiAzLjEyNXJlbTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICAuaGVhZGluZy1zZWFyY2hmb3JtLWNvbnQge1xuICAgICAgbWFyZ2luLWxlZnQ6IDMuNzVyZW07IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5MGVtKSB7XG4gICAgLmhlYWRpbmctc2VhcmNoZm9ybS1jb250IHtcbiAgICAgIG1hcmdpbi1sZWZ0OiAzLjc1cmVtOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuaGVhZGluZy1zZWFyY2hmb3JtLWNvbnQge1xuICAgICAgbWFyZ2luLWxlZnQ6IDByZW07IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5oZWFkaW5nLXNlYXJjaGZvcm0tY29udCB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDEuNXJlbTtcbiAgICAgIG1hcmdpbi1sZWZ0OiAxLjVyZW07IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkgYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuaGVhZGluZy1zZWFyY2hmb3JtLWNvbnQge1xuICAgICAgbWFyZ2luLXJpZ2h0OiA0LjM3NXJlbTsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5oZWFkaW5nLXNlYXJjaGZvcm0tY29udCB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDYuMjVyZW07IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgIC5oZWFkaW5nLXNlYXJjaGZvcm0tY29udCB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDcuNXJlbTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIGFuZCAobWluLXdpZHRoOiA5MGVtKSB7XG4gICAgLmhlYWRpbmctc2VhcmNoZm9ybS1jb250IHtcbiAgICAgIG1hcmdpbi1yaWdodDogNy41cmVtOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLmhlYWRpbmctc2VhcmNoZm9ybS1jb250IHtcbiAgICAgIG1hcmdpbi1sZWZ0OiA0LjM3NXJlbTsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5oZWFkaW5nLXNlYXJjaGZvcm0tY29udCB7XG4gICAgICBtYXJnaW4tbGVmdDogNi4yNXJlbTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgLmhlYWRpbmctc2VhcmNoZm9ybS1jb250IHtcbiAgICAgIG1hcmdpbi1sZWZ0OiA3LjVyZW07IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSBhbmQgKG1pbi13aWR0aDogOTBlbSkge1xuICAgIC5oZWFkaW5nLXNlYXJjaGZvcm0tY29udCB7XG4gICAgICBtYXJnaW4tbGVmdDogNy41cmVtOyB9IH1cbiAgLmhlYWRpbmctc2VhcmNoZm9ybS1jb250IC5pbnB1dC1ncm91cCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMHJlbTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjsgfVxuICAuaGVhZGluZy1zZWFyY2hmb3JtLWNvbnQgLmlucHV0LWdyb3VwLWZpZWxkIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMDUpO1xuICAgIGNvbG9yOiAjMDAwMDAwO1xuICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gICAgZm9udC1zaXplOiAxcmVtO1xuICAgIGJvcmRlcjogbm9uZTtcbiAgICB0cmFuc2l0aW9uOiB3aWR0aCAwLjVzIGVhc2UsIGJhY2tncm91bmQtY29sb3IgMC41cyBlYXNlLCBib3JkZXItY29sb3IgMC41cyBlYXNlO1xuICAgIHdpZHRoOiAyLjVyZW07XG4gICAgaGVpZ2h0OiA0LjA2MjVyZW07XG4gICAgcGFkZGluZzogMDsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAuaGVhZGluZy1zZWFyY2hmb3JtLWNvbnQgLmlucHV0LWdyb3VwLWZpZWxkIHtcbiAgICAgICAgaGVpZ2h0OiAyLjVyZW07XG4gICAgICAgIHdpZHRoOiAycmVtOyB9IH1cbiAgICAuaGVhZGluZy1zZWFyY2hmb3JtLWNvbnQgLmlucHV0LWdyb3VwLWZpZWxkOmhvdmVyLCAuaGVhZGluZy1zZWFyY2hmb3JtLWNvbnQgLmlucHV0LWdyb3VwLWZpZWxkOmFjdGl2ZSwgLmhlYWRpbmctc2VhcmNoZm9ybS1jb250IC5pbnB1dC1ncm91cC1maWVsZDpmb2N1cyB7XG4gICAgICBjb2xvcjogIzAwMDAwMDsgfVxuICAgIC5oZWFkaW5nLXNlYXJjaGZvcm0tY29udCAuaW5wdXQtZ3JvdXAtZmllbGQ6OnBsYWNlaG9sZGVyIHtcbiAgICAgIGNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgIGZvbnQtc2l6ZTogMXJlbTsgfVxuICAuaGVhZGluZy1zZWFyY2hmb3JtLWNvbnQgLmlucHV0LWdyb3VwLWJ1dHRvbiB7XG4gICAgdG9wOiAwcmVtO1xuICAgIGJvdHRvbTogMHJlbTtcbiAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDAuNXMgZWFzZS1pbjsgfVxuICAgIC5oZWFkaW5nLXNlYXJjaGZvcm0tY29udCAuaW5wdXQtZ3JvdXAtYnV0dG9uIC5zZWFyY2hzdWJtaXQge1xuICAgICAgcGFkZGluZzogMHJlbTtcbiAgICAgIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuNyk7IH1cbiAgLmhlYWRpbmctc2VhcmNoZm9ybS1jb250ICNzZWFyY2hmb3JtLWRlc2t0b3AsIC5oZWFkaW5nLXNlYXJjaGZvcm0tY29udCAjc2VhcmNoZm9ybS1tb2JpbGUge1xuICAgIHRyYW5zaXRpb246IGFsbCAwLjVzIGVhc2U7IH1cbiAgICAuaGVhZGluZy1zZWFyY2hmb3JtLWNvbnQgI3NlYXJjaGZvcm0tZGVza3RvcDpub3QoLmZvcm0tYWN0aXZlKSAuaW5wdXQtZ3JvdXAtZmllbGQsIC5oZWFkaW5nLXNlYXJjaGZvcm0tY29udCAjc2VhcmNoZm9ybS1tb2JpbGU6bm90KC5mb3JtLWFjdGl2ZSkgLmlucHV0LWdyb3VwLWZpZWxkIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgY29sb3I6IHRyYW5zcGFyZW50OyB9XG4gICAgLmhlYWRpbmctc2VhcmNoZm9ybS1jb250ICNzZWFyY2hmb3JtLWRlc2t0b3AuZm9ybS1hY3RpdmUgLmlucHV0LWdyb3VwLWZpZWxkLCAuaGVhZGluZy1zZWFyY2hmb3JtLWNvbnQgI3NlYXJjaGZvcm0tbW9iaWxlLmZvcm0tYWN0aXZlIC5pbnB1dC1ncm91cC1maWVsZCB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDQ1LCAyMDEsIDIxNSwgMC4yKTtcbiAgICAgIHBhZGRpbmctbGVmdDogMXJlbTtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDIuNXJlbTtcbiAgICAgIHdpZHRoOiAxMHJlbTtcbiAgICAgIGNvbG9yOiAjMDAwMDAwO1xuICAgICAgYm9yZGVyLWNvbG9yOiByZ2JhKDQ1LCAyMDEsIDIxNSwgMC4yKTtcbiAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7IH1cbiAgICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAgIC5oZWFkaW5nLXNlYXJjaGZvcm0tY29udCAjc2VhcmNoZm9ybS1kZXNrdG9wLmZvcm0tYWN0aXZlIC5pbnB1dC1ncm91cC1maWVsZCwgLmhlYWRpbmctc2VhcmNoZm9ybS1jb250ICNzZWFyY2hmb3JtLW1vYmlsZS5mb3JtLWFjdGl2ZSAuaW5wdXQtZ3JvdXAtZmllbGQge1xuICAgICAgICAgIHBhZGRpbmctbGVmdDogMC41cmVtO1xuICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDFyZW07IH0gfVxuICAgICAgLmhlYWRpbmctc2VhcmNoZm9ybS1jb250ICNzZWFyY2hmb3JtLWRlc2t0b3AuZm9ybS1hY3RpdmUgLmlucHV0LWdyb3VwLWZpZWxkOmZvY3VzLCAuaGVhZGluZy1zZWFyY2hmb3JtLWNvbnQgI3NlYXJjaGZvcm0tbW9iaWxlLmZvcm0tYWN0aXZlIC5pbnB1dC1ncm91cC1maWVsZDpmb2N1cyB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogIzJEQzlENztcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZmZmZjsgfVxuICAgICAgLmhlYWRpbmctc2VhcmNoZm9ybS1jb250ICNzZWFyY2hmb3JtLWRlc2t0b3AuZm9ybS1hY3RpdmUgLmlucHV0LWdyb3VwLWZpZWxkOjpwbGFjZWhvbGRlciwgLmhlYWRpbmctc2VhcmNoZm9ybS1jb250ICNzZWFyY2hmb3JtLW1vYmlsZS5mb3JtLWFjdGl2ZSAuaW5wdXQtZ3JvdXAtZmllbGQ6OnBsYWNlaG9sZGVyIHtcbiAgICAgICAgdHJhbnNpdGlvbi1kZWxheTogdW5zZXQ7XG4gICAgICAgIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuNik7IH1cbiAgICAuaGVhZGluZy1zZWFyY2hmb3JtLWNvbnQgI3NlYXJjaGZvcm0tZGVza3RvcC5mb3JtLWFjdGl2ZSAuaW5wdXQtZ3JvdXAtYnV0dG9uIC5zZWFyY2hzdWJtaXQsIC5oZWFkaW5nLXNlYXJjaGZvcm0tY29udCAjc2VhcmNoZm9ybS1tb2JpbGUuZm9ybS1hY3RpdmUgLmlucHV0LWdyb3VwLWJ1dHRvbiAuc2VhcmNoc3VibWl0IHtcbiAgICAgIGNvbG9yOiAjMDAwMDAwOyB9XG4gICAgICAuaGVhZGluZy1zZWFyY2hmb3JtLWNvbnQgI3NlYXJjaGZvcm0tZGVza3RvcC5mb3JtLWFjdGl2ZSAuaW5wdXQtZ3JvdXAtYnV0dG9uIC5zZWFyY2hzdWJtaXQ6aG92ZXIsIC5oZWFkaW5nLXNlYXJjaGZvcm0tY29udCAjc2VhcmNoZm9ybS1kZXNrdG9wLmZvcm0tYWN0aXZlIC5pbnB1dC1ncm91cC1idXR0b24gLnNlYXJjaHN1Ym1pdDpmb2N1cywgLmhlYWRpbmctc2VhcmNoZm9ybS1jb250ICNzZWFyY2hmb3JtLW1vYmlsZS5mb3JtLWFjdGl2ZSAuaW5wdXQtZ3JvdXAtYnV0dG9uIC5zZWFyY2hzdWJtaXQ6aG92ZXIsIC5oZWFkaW5nLXNlYXJjaGZvcm0tY29udCAjc2VhcmNoZm9ybS1tb2JpbGUuZm9ybS1hY3RpdmUgLmlucHV0LWdyb3VwLWJ1dHRvbiAuc2VhcmNoc3VibWl0OmZvY3VzIHtcbiAgICAgICAgY29sb3I6ICMyREM5RDc7IH1cblxuYm9keS5sb2dnZWQtaW4uYWRtaW4tYmFyIHtcbiAgLyogbW9iaWxlIGZseW91dCBtZW51ICovIH1cbiAgYm9keS5sb2dnZWQtaW4uYWRtaW4tYmFyICNzaXRlLWhlYWRlci5zdGlja3kge1xuICAgIHRvcDogNDZweDsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICBib2R5LmxvZ2dlZC1pbi5hZG1pbi1iYXIgI3NpdGUtaGVhZGVyLnN0aWNreSB7XG4gICAgICAgIHRvcDogMzJweDsgfSB9XG4gIGJvZHkubG9nZ2VkLWluLmFkbWluLWJhciAubW9iaWxlLWZseW91dCB7XG4gICAgdG9wOiA0NnB4O1xuICAgIG1heC1oZWlnaHQ6IGNhbGMoMTAwdmggLSA0NnB4KTsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICBib2R5LmxvZ2dlZC1pbi5hZG1pbi1iYXIgLm1vYmlsZS1mbHlvdXQge1xuICAgICAgICB0b3A6IDMycHg7XG4gICAgICAgIG1heC1oZWlnaHQ6IGNhbGMoMTAwdmggLSAzMnB4KTsgfSB9XG5cbi5zdWJtZW51LXRvZ2dsZTo6YWZ0ZXIge1xuICBib3JkZXItY29sb3I6ICMyREM5RDcgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQ7IH1cblxuLyoqXG5UT1AgT0YgTkFWIEVNRVJHRU5DWSBCQU5ORVJcbiAqL1xuLmJhbm5lci1jdGEge1xuICB3aWR0aDogMTAwJTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB6LWluZGV4OiAxMDAwO1xuICBiYWNrZ3JvdW5kOiAjRkNCNTM2O1xuICBwYWRkaW5nLXRvcDogLjVyZW07XG4gIHBhZGRpbmctYm90dG9tOiAuNXJlbTsgfVxuICAuYmFubmVyLWN0YSAuY29udGVudC1jZWxsIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7IH1cbiAgICAuYmFubmVyLWN0YSAuY29udGVudC1jZWxsIC5jb250ZW50LXdyYXAgLmJhbm5lci10ZXh0IHtcbiAgICAgIGNvbG9yOiAjZmZmZmZmO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDsgfVxuICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTM3NWVtKSB7XG4gICAgICAgIC5iYW5uZXItY3RhIC5jb250ZW50LWNlbGwgLmNvbnRlbnQtd3JhcCAuYmFubmVyLXRleHQge1xuICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjsgfSB9XG4gICAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgICAuYmFubmVyLWN0YSAuY29udGVudC1jZWxsIC5jb250ZW50LXdyYXAgLmJhbm5lci10ZXh0IHtcbiAgICAgICAgICBkaXNwbGF5OiBpbmxpbmU7IH0gfVxuICAgIC5iYW5uZXItY3RhIC5jb250ZW50LWNlbGwgLmNvbnRlbnQtd3JhcCAuYmFubmVyLWxpbmsge1xuICAgICAgZm9udC1zaXplOiAxcmVtO1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gICAgICBjb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjgpO1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgZGlzcGxheTogYmxvY2s7IH1cbiAgICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAgIC5iYW5uZXItY3RhIC5jb250ZW50LWNlbGwgLmNvbnRlbnQtd3JhcCAuYmFubmVyLWxpbmsge1xuICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICAgICAgICAgIHRleHQtYWxpZ246IGxlZnQ7IH0gfVxuICAgICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgICAgLmJhbm5lci1jdGEgLmNvbnRlbnQtY2VsbCAuY29udGVudC13cmFwIC5iYW5uZXItbGluayB7XG4gICAgICAgICAgZm9udC1zaXplOiAxLjI1cmVtOyB9IH1cblxuLyogbW9iaWxlIGZseW91dCBtZW51ICovXG4ubW9iaWxlLWZseW91dCB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgYm94LXNoYWRvdzogMHJlbSA0cHggNDBweCByZ2JhKDAsIDAsIDAsIDAuMSk7XG4gIHRvcDogMHJlbTtcbiAgbWF4LXdpZHRoOiAxMDB2dztcbiAgbWF4LWhlaWdodDogMTAwdmg7XG4gIHRyYW5zaXRpb246IGFsbCAwLjVzIGVhc2U7XG4gIHotaW5kZXg6IDEwMjtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZmZmZjtcbiAgb3ZlcmZsb3cteTogYXV0bzsgfVxuICAubW9iaWxlLWZseW91dC5vcGVucy1yaWdodCB7XG4gICAgcmlnaHQ6IC0xMDB2dzsgfVxuICAgIC5tb2JpbGUtZmx5b3V0Lm9wZW5zLXJpZ2h0LmlzLW9wZW4ge1xuICAgICAgcmlnaHQ6IDB2dzsgfVxuICAubW9iaWxlLWZseW91dC5vcGVucy1sZWZ0IHtcbiAgICBsZWZ0OiAtMTAwdnc7IH1cbiAgICAubW9iaWxlLWZseW91dC5vcGVucy1sZWZ0LmlzLW9wZW4ge1xuICAgICAgbGVmdDogMHZ3OyB9XG4gIC5tb2JpbGUtZmx5b3V0IC5tZW51LWNsb3NlLWNvbnQgLmN1c3RvbS1tZW51LWljb24ge1xuICAgIHdpZHRoOiBhdXRvO1xuICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xuICAgIGJvcmRlci1yYWRpdXM6IDByZW07XG4gICAgdHJhbnNpdGlvbjogYWxsIDAuNXMgZWFzZTtcbiAgICBoZWlnaHQ6IDQuMDYyNXJlbTtcbiAgICBwYWRkaW5nOiAxLjVyZW07XG4gICAgY29sb3I6ICMyREM5RDc7IH1cbiAgICAubW9iaWxlLWZseW91dCAubWVudS1jbG9zZS1jb250IC5jdXN0b20tbWVudS1pY29uOmhvdmVyID4gc3Bhbjo6YmVmb3JlLCAubW9iaWxlLWZseW91dCAubWVudS1jbG9zZS1jb250IC5jdXN0b20tbWVudS1pY29uOmZvY3VzID4gc3Bhbjo6YmVmb3JlLCAubW9iaWxlLWZseW91dCAubWVudS1jbG9zZS1jb250IC5jdXN0b20tbWVudS1pY29uOmFjdGl2ZSA+IHNwYW46OmJlZm9yZSB7XG4gICAgICBjb2xvcjogIzAwMDAwMDsgfVxuICAgIC5tb2JpbGUtZmx5b3V0IC5tZW51LWNsb3NlLWNvbnQgLmN1c3RvbS1tZW51LWljb24gPiBzcGFuOjpiZWZvcmUge1xuICAgICAgdHJhbnNpdGlvbjogY29sb3IgMC41cyBlYXNlOyB9XG4gIC5tb2JpbGUtZmx5b3V0IC5tZW51IHtcbiAgICBtaW4td2lkdGg6IDIwcmVtO1xuICAgIHBhZGRpbmctYm90dG9tOiAxcmVtOyB9XG4gICAgLm1vYmlsZS1mbHlvdXQgLm1lbnUgLm1lbnUtaXRlbS5tZW51LXNlY3Rpb24tc3RhcnQge1xuICAgICAgbWFyZ2luLXRvcDogMC41cmVtO1xuICAgICAgcGFkZGluZy10b3A6IDEuNXJlbTtcbiAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAjY2FjYWNhOyB9XG4gICAgLm1vYmlsZS1mbHlvdXQgLm1lbnUgLm1lbnUtaXRlbS5pcy1zdWJtZW51LWl0ZW0ge1xuICAgICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAjMkRDOUQ3OyB9XG4gICAgLm1vYmlsZS1mbHlvdXQgLm1lbnUgLm1lbnUtaXRlbS5pcy1hY3RpdmUgPiBhIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoNDUsIDIwMSwgMjE1LCAwLjE1KTsgfVxuICAgIC5tb2JpbGUtZmx5b3V0IC5tZW51IC5tZW51LWl0ZW0gYSB7XG4gICAgICBjb2xvcjogYmxhY2s7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIHBhZGRpbmc6IDFyZW0gMnJlbTtcbiAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7IH1cbiAgICAgIC5tb2JpbGUtZmx5b3V0IC5tZW51IC5tZW51LWl0ZW0gYTpob3ZlciwgLm1vYmlsZS1mbHlvdXQgLm1lbnUgLm1lbnUtaXRlbSBhOmZvY3VzLCAubW9iaWxlLWZseW91dCAubWVudSAubWVudS1pdGVtIGE6YWN0aXZlIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSg0NSwgMjAxLCAyMTUsIDAuMjUpOyB9XG5cbi5ib2R5LW1haW4ge1xuICBvdmVyZmxvdzogaGlkZGVuOyB9XG5cbi5wYWdlLXdyYXAge1xuICBtaW4taGVpZ2h0OiA1MHZoOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLnBhZ2Utd3JhcCB7XG4gICAgICBtaW4taGVpZ2h0OiAyNXJlbTsgfSB9XG5cbi5lbnRyeS1jb250ZW50IHtcbiAgY29sb3I6ICMzMzMzMzM7IH1cbiAgLmVudHJ5LWNvbnRlbnQgaDEsIC5lbnRyeS1jb250ZW50IGgyLCAuZW50cnktY29udGVudCBoMywgLmVudHJ5LWNvbnRlbnQgaDQsIC5lbnRyeS1jb250ZW50IGg1LCAuZW50cnktY29udGVudCBoNiB7XG4gICAgbWFyZ2luLXRvcDogMy4zODM0NnJlbTtcbiAgICBtYXJnaW4tYm90dG9tOiAwLjU2MjVyZW07IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgLmVudHJ5LWNvbnRlbnQgaDEsIC5lbnRyeS1jb250ZW50IGgyLCAuZW50cnktY29udGVudCBoMywgLmVudHJ5LWNvbnRlbnQgaDQsIC5lbnRyeS1jb250ZW50IGg1LCAuZW50cnktY29udGVudCBoNiB7XG4gICAgICAgIG1hcmdpbi10b3A6IDYuNTc4OTVyZW07IH0gfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAuZW50cnktY29udGVudCBoMSwgLmVudHJ5LWNvbnRlbnQgaDIsIC5lbnRyeS1jb250ZW50IGgzLCAuZW50cnktY29udGVudCBoNCwgLmVudHJ5LWNvbnRlbnQgaDUsIC5lbnRyeS1jb250ZW50IGg2IHtcbiAgICAgICAgbWFyZ2luLXRvcDogNS42MzkxcmVtOyB9IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgICAuZW50cnktY29udGVudCBoMSwgLmVudHJ5LWNvbnRlbnQgaDIsIC5lbnRyeS1jb250ZW50IGgzLCAuZW50cnktY29udGVudCBoNCwgLmVudHJ5LWNvbnRlbnQgaDUsIC5lbnRyeS1jb250ZW50IGg2IHtcbiAgICAgICAgbWFyZ2luLXRvcDogNi43NjY5MnJlbTsgfSB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTBlbSkge1xuICAgICAgLmVudHJ5LWNvbnRlbnQgaDEsIC5lbnRyeS1jb250ZW50IGgyLCAuZW50cnktY29udGVudCBoMywgLmVudHJ5LWNvbnRlbnQgaDQsIC5lbnRyeS1jb250ZW50IGg1LCAuZW50cnktY29udGVudCBoNiB7XG4gICAgICAgIG1hcmdpbi10b3A6IDYuNzY2OTJyZW07IH0gfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAuZW50cnktY29udGVudCBoMSwgLmVudHJ5LWNvbnRlbnQgaDIsIC5lbnRyeS1jb250ZW50IGgzLCAuZW50cnktY29udGVudCBoNCwgLmVudHJ5LWNvbnRlbnQgaDUsIC5lbnRyeS1jb250ZW50IGg2IHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMS4wOTM3NXJlbTsgfSB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgIC5lbnRyeS1jb250ZW50IGgxLCAuZW50cnktY29udGVudCBoMiwgLmVudHJ5LWNvbnRlbnQgaDMsIC5lbnRyeS1jb250ZW50IGg0LCAuZW50cnktY29udGVudCBoNSwgLmVudHJ5LWNvbnRlbnQgaDYge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwLjkzNzVyZW07IH0gfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICAgIC5lbnRyeS1jb250ZW50IGgxLCAuZW50cnktY29udGVudCBoMiwgLmVudHJ5LWNvbnRlbnQgaDMsIC5lbnRyeS1jb250ZW50IGg0LCAuZW50cnktY29udGVudCBoNSwgLmVudHJ5LWNvbnRlbnQgaDYge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAxLjEyNXJlbTsgfSB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTBlbSkge1xuICAgICAgLmVudHJ5LWNvbnRlbnQgaDEsIC5lbnRyeS1jb250ZW50IGgyLCAuZW50cnktY29udGVudCBoMywgLmVudHJ5LWNvbnRlbnQgaDQsIC5lbnRyeS1jb250ZW50IGg1LCAuZW50cnktY29udGVudCBoNiB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDEuMTI1cmVtOyB9IH1cblxuLnNpZGViYXIge1xuICB3aWR0aDogY2FsYygxMDAlIC0gMS4xMjVyZW0pO1xuICBtYXJnaW4tcmlnaHQ6IDAuNTYyNXJlbTtcbiAgbWFyZ2luLWxlZnQ6IDAuNTYyNXJlbTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5zaWRlYmFyIHtcbiAgICAgIHdpZHRoOiBjYWxjKDMzLjMzMzMzJSAtIDEuMjVyZW0pO1xuICAgICAgbWFyZ2luLXJpZ2h0OiAwLjYyNXJlbTtcbiAgICAgIG1hcmdpbi1sZWZ0OiAwLjYyNXJlbTtcbiAgICAgIG1hcmdpbi10b3A6IDFyZW07IH0gfVxuXG4ucmVzdWx0LWl0ZW0gLmVudHJ5LXRpdGxlIHtcbiAgbWFyZ2luLWJvdHRvbTogMC43NXJlbTtcbiAgZGlzcGxheTogYmxvY2s7IH1cblxuLnJlc3VsdC1pdGVtIC5wb3N0LWZlYXR1cmVkLWltYWdlID4gZGl2IHtcbiAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIGNlbnRlcjtcbiAgaGVpZ2h0OiAzLjc1cmVtO1xuICB3aWR0aDogMTAwJTtcbiAgbWF4LXdpZHRoOiA1cmVtO1xuICBtYXJnaW4tbGVmdDogYXV0bztcbiAgbWFyZ2luLXJpZ2h0OiAwO1xuICBib3JkZXItcmFkaXVzOiAycHg7XG4gIGJvcmRlcjogMnB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICB0cmFuc2l0aW9uOiBhbGwgMC41cyBlYXNlOyB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5yZXN1bHQtaXRlbSAubWV0YS1jb250IHtcbiAgICBtYXJnaW4tYm90dG9tOiAwLjVyZW07IH0gfVxuXG4ucmVzdWx0LWl0ZW0gLm1ldGEtY29udCA+ICoge1xuICBmb250LXNpemU6IDAuODc1cmVtO1xuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjcpO1xuICBtYXJnaW4tYm90dG9tOiAwLjI1cmVtO1xuICBkaXNwbGF5OiBibG9jaztcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgbGluZS1oZWlnaHQ6IDEuMjsgfVxuICAucmVzdWx0LWl0ZW0gLm1ldGEtY29udCA+ICo6bGFzdC1jaGlsZCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDsgfVxuXG4ucmVzdWx0LWl0ZW0gcDpsYXN0LW9mLXR5cGUge1xuICBtYXJnaW4tYm90dG9tOiAwOyB9XG5cbi5yZXN1bHQtbGluayB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmZmZmO1xuICBjb2xvcjogIzAwMDAwMDtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNlNmU2ZTY7XG4gIHBhZGRpbmc6IDEuMjVyZW0gMS4yNXJlbSAxLjI1cmVtIDA7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAucmVzdWx0LWxpbms6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGhlaWdodDogMnB4O1xuICAgIHdpZHRoOiAwO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBsZWZ0OiAwO1xuICAgIGJvdHRvbTogMDtcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICB0cmFuc2l0aW9uOiB3aWR0aCAuNXMgZWFzZSwgYmFja2dyb3VuZC1jb2xvciAuNXMgZWFzZTtcbiAgICBtYXJnaW4tdG9wOiAzcHg7IH1cbiAgLnJlc3VsdC1saW5rOmhvdmVyLCAucmVzdWx0LWxpbms6Zm9jdXMsIC5yZXN1bHQtbGluazphY3RpdmUge1xuICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7IH1cbiAgICAucmVzdWx0LWxpbms6aG92ZXI6YWZ0ZXIsIC5yZXN1bHQtbGluazpmb2N1czphZnRlciwgLnJlc3VsdC1saW5rOmFjdGl2ZTphZnRlciB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGJhY2tncm91bmQ6ICMyREM5RDc7IH1cbiAgICAucmVzdWx0LWxpbms6aG92ZXIgLmVudHJ5LXRpdGxlLCAucmVzdWx0LWxpbms6Zm9jdXMgLmVudHJ5LXRpdGxlLCAucmVzdWx0LWxpbms6YWN0aXZlIC5lbnRyeS10aXRsZSB7XG4gICAgICBjb2xvcjogIzJEQzlENzsgfVxuICAgIC5yZXN1bHQtbGluazpob3ZlciA+ICo6bm90KC5lbnRyeS10aXRsZSksIC5yZXN1bHQtbGluazpmb2N1cyA+ICo6bm90KC5lbnRyeS10aXRsZSksIC5yZXN1bHQtbGluazphY3RpdmUgPiAqOm5vdCguZW50cnktdGl0bGUpIHtcbiAgICAgIGNvbG9yOiAjMDAwMDAwOyB9XG4gICAgLnJlc3VsdC1saW5rOmhvdmVyIC5wb3N0LWZlYXR1cmVkLWltYWdlID4gZGl2LCAucmVzdWx0LWxpbms6Zm9jdXMgLnBvc3QtZmVhdHVyZWQtaW1hZ2UgPiBkaXYsIC5yZXN1bHQtbGluazphY3RpdmUgLnBvc3QtZmVhdHVyZWQtaW1hZ2UgPiBkaXYge1xuICAgICAgYm9yZGVyLWNvbG9yOiAjMkRDOUQ3OyB9XG5cbi50YWctbGlzdCB7XG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMyk7XG4gIG1hcmdpbi1ib3R0b206IDAuNXJlbTsgfVxuICAudGFnLWxpc3QgPiBhIHtcbiAgICBwYWRkaW5nOiAwLjI1cmVtIDAuNXJlbTtcbiAgICBjb2xvcjogIzJEQzlENztcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgei1pbmRleDogMDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMDUpO1xuICAgIGZvbnQtc2l6ZTogMC45Mzc1cmVtOyB9XG4gICAgLnRhZy1saXN0ID4gYTpiZWZvcmUge1xuICAgICAgY29udGVudDogJyc7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgICAgdHJhbnNpdGlvbjogaGVpZ2h0IC4ycyBlYXNlLCBiYWNrZ3JvdW5kLWNvbG9yIC4ycyBlYXNlO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgcmlnaHQ6IDA7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgYm90dG9tOiBhdXRvO1xuICAgICAgdG9wOiAwO1xuICAgICAgaGVpZ2h0OiAwJTtcbiAgICAgIHotaW5kZXg6IC0xOyB9XG4gICAgLnRhZy1saXN0ID4gYTpob3ZlciwgLnRhZy1saXN0ID4gYTpmb2N1cyB7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICBjb2xvcjogI2ZmZmZmZjsgfVxuICAgICAgLnRhZy1saXN0ID4gYTpob3ZlcjpiZWZvcmUsIC50YWctbGlzdCA+IGE6Zm9jdXM6YmVmb3JlIHtcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMkRDOUQ3OyB9XG5cbi5uby1yZXN1bHRzLWNvbnRhaW5lciB7XG4gIHBhZGRpbmc6IDJyZW0gMS41cmVtO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMSk7XG4gIGJvcmRlci1yYWRpdXM6IDA7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAubm8tcmVzdWx0cy1jb250YWluZXIge1xuICAgICAgd2lkdGg6IDkwJTtcbiAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgbWFyZ2luLXJpZ2h0OiBhdXRvOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAubm8tcmVzdWx0cy1jb250YWluZXIge1xuICAgICAgcGFkZGluZzogMi41cmVtOyB9IH1cblxuLnBhZ2luYXRpb24gPiBsaSA+ICoge1xuICBib3JkZXItcmFkaXVzOiAycHg7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLmFyY2hpdmUtY29udGVudCB7XG4gICAgcGFkZGluZy10b3A6IDIuNzVyZW07IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45Mzc1ZW0pIHtcbiAgLmFyY2hpdmUtY29udGVudCAuZ3JpZC1jb250YWluZXIsIC5hcmNoaXZlLWNvbnRlbnQgLnRvcC1iYXIge1xuICAgIHBhZGRpbmc6IDFyZW07IH0gfVxuXG4uYXJjaGl2ZS1jb250ZW50IC50aWxlcyAubWFpbi10aWxlLWNlbGwge1xuICBwYWRkaW5nLWJvdHRvbTogMXJlbTsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45Mzc1ZW0pIHtcbiAgICAuYXJjaGl2ZS1jb250ZW50IC50aWxlcyAubWFpbi10aWxlLWNlbGw6bGFzdC1jaGlsZCB7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogMDsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLmFyY2hpdmUtY29udGVudCAudGlsZXMgLm1haW4tdGlsZS1jZWxsIHtcbiAgICAgIHBhZGRpbmctYm90dG9tOiAyLjEyNXJlbTsgfSB9XG5cbi5hcmNoaXZlLWNvbnRlbnQgLmFyY2hpdmUtdGlsZSB7XG4gIGhlaWdodDogMTAwJTsgfVxuICAuYXJjaGl2ZS1jb250ZW50IC5hcmNoaXZlLXRpbGUgLnRpbGUtcmVzdWx0LWxpbmsge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmZmZmY7XG4gICAgY29sb3I6ICMwMDAwMDA7XG4gICAgYm9yZGVyOiAxcHggc29saWQgI2NhY2FjYTtcbiAgICBib3JkZXItcmFkaXVzOiAycHg7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gICAgLmFyY2hpdmUtY29udGVudCAuYXJjaGl2ZS10aWxlIC50aWxlLXJlc3VsdC1saW5rOmhvdmVyLCAuYXJjaGl2ZS1jb250ZW50IC5hcmNoaXZlLXRpbGUgLnRpbGUtcmVzdWx0LWxpbms6Zm9jdXMsIC5hcmNoaXZlLWNvbnRlbnQgLmFyY2hpdmUtdGlsZSAudGlsZS1yZXN1bHQtbGluazphY3RpdmUge1xuICAgICAgYm94LXNoYWRvdzogMCAwLjVyZW0gMS4zNzVyZW0gMCByZ2JhKDAsIDAsIDAsIDAuMTIpOyB9XG4gICAgICAuYXJjaGl2ZS1jb250ZW50IC5hcmNoaXZlLXRpbGUgLnRpbGUtcmVzdWx0LWxpbms6aG92ZXI6YWZ0ZXIsIC5hcmNoaXZlLWNvbnRlbnQgLmFyY2hpdmUtdGlsZSAudGlsZS1yZXN1bHQtbGluazpmb2N1czphZnRlciwgLmFyY2hpdmUtY29udGVudCAuYXJjaGl2ZS10aWxlIC50aWxlLXJlc3VsdC1saW5rOmFjdGl2ZTphZnRlciB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBiYWNrZ3JvdW5kOiAjMkRDOUQ3OyB9XG4gICAgICAuYXJjaGl2ZS1jb250ZW50IC5hcmNoaXZlLXRpbGUgLnRpbGUtcmVzdWx0LWxpbms6aG92ZXIgLmVudHJ5LXRpdGxlLCAuYXJjaGl2ZS1jb250ZW50IC5hcmNoaXZlLXRpbGUgLnRpbGUtcmVzdWx0LWxpbms6Zm9jdXMgLmVudHJ5LXRpdGxlLCAuYXJjaGl2ZS1jb250ZW50IC5hcmNoaXZlLXRpbGUgLnRpbGUtcmVzdWx0LWxpbms6YWN0aXZlIC5lbnRyeS10aXRsZSB7XG4gICAgICAgIGNvbG9yOiAjMkRDOUQ3OyB9XG4gICAgICAuYXJjaGl2ZS1jb250ZW50IC5hcmNoaXZlLXRpbGUgLnRpbGUtcmVzdWx0LWxpbms6aG92ZXIgPiAqOm5vdCguZW50cnktdGl0bGUpLCAuYXJjaGl2ZS1jb250ZW50IC5hcmNoaXZlLXRpbGUgLnRpbGUtcmVzdWx0LWxpbms6Zm9jdXMgPiAqOm5vdCguZW50cnktdGl0bGUpLCAuYXJjaGl2ZS1jb250ZW50IC5hcmNoaXZlLXRpbGUgLnRpbGUtcmVzdWx0LWxpbms6YWN0aXZlID4gKjpub3QoLmVudHJ5LXRpdGxlKSB7XG4gICAgICAgIGNvbG9yOiAjMDAwMDAwOyB9XG4gICAgICAuYXJjaGl2ZS1jb250ZW50IC5hcmNoaXZlLXRpbGUgLnRpbGUtcmVzdWx0LWxpbms6aG92ZXIgLnBvc3QtZmVhdHVyZWQtaW1hZ2UgPiBkaXYsIC5hcmNoaXZlLWNvbnRlbnQgLmFyY2hpdmUtdGlsZSAudGlsZS1yZXN1bHQtbGluazpmb2N1cyAucG9zdC1mZWF0dXJlZC1pbWFnZSA+IGRpdiwgLmFyY2hpdmUtY29udGVudCAuYXJjaGl2ZS10aWxlIC50aWxlLXJlc3VsdC1saW5rOmFjdGl2ZSAucG9zdC1mZWF0dXJlZC1pbWFnZSA+IGRpdiB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogIzJEQzlENzsgfVxuICAgIC5hcmNoaXZlLWNvbnRlbnQgLmFyY2hpdmUtdGlsZSAudGlsZS1yZXN1bHQtbGluayAuZ3JpZC14IHtcbiAgICAgIGhlaWdodDogMTAwJTsgfVxuICAuYXJjaGl2ZS1jb250ZW50IC5hcmNoaXZlLXRpbGUgLnBvc3QtZmVhdHVyZWQtaW1hZ2UgZGl2IHtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgYm9yZGVyOiBub25lO1xuICAgIG1heC13aWR0aDogdW5zZXQ7XG4gICAgYm9yZGVyLXJhZGl1czogMDtcbiAgICBtYXJnaW46IDA7IH1cbiAgLmFyY2hpdmUtY29udGVudCAuYXJjaGl2ZS10aWxlIC5lbnRyeS1jb250ZW50IHtcbiAgICBwYWRkaW5nOiAxcmVtIDEuMTg3NXJlbSAxLjM3NXJlbSAxLjEyNXJlbTsgfVxuICAgIC5hcmNoaXZlLWNvbnRlbnQgLmFyY2hpdmUtdGlsZSAuZW50cnktY29udGVudCAubWV0YS1jb250IHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7IH1cbiAgICAgIC5hcmNoaXZlLWNvbnRlbnQgLmFyY2hpdmUtdGlsZSAuZW50cnktY29udGVudCAubWV0YS1jb250IHRpbWUge1xuICAgICAgICBmb250LXNpemU6IDAuNjI1cmVtO1xuICAgICAgICBjb2xvcjogcmdiYSgxMzgsIDEzOCwgMTM4LCAwLjgpO1xuICAgICAgICBsaW5lLWhlaWdodDogMS42OyB9XG4gICAgLmFyY2hpdmUtY29udGVudCAuYXJjaGl2ZS10aWxlIC5lbnRyeS1jb250ZW50IC5lbnRyeS10aXRsZSB7XG4gICAgICBsaW5lLWhlaWdodDogMS4yO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMC41cmVtOyB9XG4gICAgLmFyY2hpdmUtY29udGVudCAuYXJjaGl2ZS10aWxlIC5lbnRyeS1jb250ZW50IHAge1xuICAgICAgY29sb3I6ICM4YThhOGE7XG4gICAgICBmb250LXNpemU6IDAuODc1cmVtO1xuICAgICAgbGluZS1oZWlnaHQ6IDEuMjE7IH1cblxuLmhpZGRlbiwgLmxvYWQtbW9yZS1oaWRkZW4ge1xuICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH1cblxuLmVtYmVkLWNvbnRhaW5lciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgcGFkZGluZy1ib3R0b206IDU2LjI1JTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IGF1dG87XG4gIGJvcmRlci1yYWRpdXM6IDIwcHg7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGJhY2tncm91bmQtY29sb3I6ICMyMTIxMjE7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuZW1iZWQtY29udGFpbmVyIHtcbiAgICAgIG1pbi1oZWlnaHQ6IDI5LjYyNXJlbTsgfSB9XG5cbi5lbWJlZC1jb250YWluZXIgaWZyYW1lLFxuLmVtYmVkLWNvbnRhaW5lciBvYmplY3QsXG4uZW1iZWQtY29udGFpbmVyIGVtYmVkIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIHotaW5kZXg6IDU7IH1cblxuLnNpbmdsZSAudHlwZS1wb3N0IHtcbiAgbWFyZ2luLWJvdHRvbTogMi4yNXJlbTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5zaW5nbGUgLnR5cGUtcG9zdCB7XG4gICAgICBtYXJnaW4tYm90dG9tOiA0LjM3NXJlbTsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLnNpbmdsZSAudHlwZS1wb3N0IHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDMuNzVyZW07IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgLnNpbmdsZSAudHlwZS1wb3N0IHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDQuNXJlbTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDkwZW0pIHtcbiAgICAuc2luZ2xlIC50eXBlLXBvc3Qge1xuICAgICAgbWFyZ2luLWJvdHRvbTogNC41cmVtOyB9IH1cbiAgLnNpbmdsZSAudHlwZS1wb3N0IC5wb3N0LWNvbnRlbnQgLmNvbnRlbnQtd3JhcCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgIG1pbi1oZWlnaHQ6IDE4Ljc1cmVtOyB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTM3NWVtKSB7XG4gICAgICAuc2luZ2xlIC50eXBlLXBvc3QgLnBvc3QtY29udGVudCAuY29udGVudC13cmFwIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMi4yNXJlbTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjkzNzVlbSkgYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuc2luZ2xlIC50eXBlLXBvc3QgLnBvc3QtY29udGVudCAuY29udGVudC13cmFwIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDQuMzc1cmVtOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTM3NWVtKSBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5zaW5nbGUgLnR5cGUtcG9zdCAucG9zdC1jb250ZW50IC5jb250ZW50LXdyYXAge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMy43NXJlbTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjkzNzVlbSkgYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICAuc2luZ2xlIC50eXBlLXBvc3QgLnBvc3QtY29udGVudCAuY29udGVudC13cmFwIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDQuNXJlbTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjkzNzVlbSkgYW5kIChtaW4td2lkdGg6IDkwZW0pIHtcbiAgICAuc2luZ2xlIC50eXBlLXBvc3QgLnBvc3QtY29udGVudCAuY29udGVudC13cmFwIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDQuNXJlbTsgfSB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgIC5zaW5nbGUgLnR5cGUtcG9zdCAucG9zdC1jb250ZW50IC5jb250ZW50LXdyYXAge1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAyLjI1cmVtO1xuICAgICAgICBtaW4taGVpZ2h0OiAzNy41cmVtOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLnNpbmdsZSAudHlwZS1wb3N0IC5wb3N0LWNvbnRlbnQgLmNvbnRlbnQtd3JhcCB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiA0LjM3NXJlbTsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5zaW5nbGUgLnR5cGUtcG9zdCAucG9zdC1jb250ZW50IC5jb250ZW50LXdyYXAge1xuICAgICAgcGFkZGluZy1yaWdodDogMy43NXJlbTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgLnNpbmdsZSAudHlwZS1wb3N0IC5wb3N0LWNvbnRlbnQgLmNvbnRlbnQtd3JhcCB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiA0LjVyZW07IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSBhbmQgKG1pbi13aWR0aDogOTBlbSkge1xuICAgIC5zaW5nbGUgLnR5cGUtcG9zdCAucG9zdC1jb250ZW50IC5jb250ZW50LXdyYXAge1xuICAgICAgcGFkZGluZy1yaWdodDogNC41cmVtOyB9IH1cbiAgICAuc2luZ2xlIC50eXBlLXBvc3QgLnBvc3QtY29udGVudCAuY29udGVudC13cmFwIGZpZ3VyZTpub3QoLmN1c3RvbS13aWR0aCkgaW1nLCAuc2luZ2xlIC50eXBlLXBvc3QgLnBvc3QtY29udGVudCAuY29udGVudC13cmFwIGltZzpub3QoLmN1c3RvbS13aWR0aCkge1xuICAgICAgbWluLXdpZHRoOiAxMDAlOyB9XG4gICAgLnNpbmdsZSAudHlwZS1wb3N0IC5wb3N0LWNvbnRlbnQgLmNvbnRlbnQtd3JhcCBmaWd1cmUuY3VzdG9tLXdpZHRoIGltZywgLnNpbmdsZSAudHlwZS1wb3N0IC5wb3N0LWNvbnRlbnQgLmNvbnRlbnQtd3JhcCBpbWcuY3VzdG9tLXdpZHRoIHtcbiAgICAgIG1pbi13aWR0aDogaW5oZXJpdDsgfVxuICAgIC5zaW5nbGUgLnR5cGUtcG9zdCAucG9zdC1jb250ZW50IC5jb250ZW50LXdyYXAgaW1nIHtcbiAgICAgIG9iamVjdC1maXQ6IGNvdmVyO1xuICAgICAgYm9yZGVyLXJhZGl1czogMjBweDsgfVxuICAgIC5zaW5nbGUgLnR5cGUtcG9zdCAucG9zdC1jb250ZW50IC5jb250ZW50LXdyYXAgaDEsIC5zaW5nbGUgLnR5cGUtcG9zdCAucG9zdC1jb250ZW50IC5jb250ZW50LXdyYXAgaDIsIC5zaW5nbGUgLnR5cGUtcG9zdCAucG9zdC1jb250ZW50IC5jb250ZW50LXdyYXAgaDMsIC5zaW5nbGUgLnR5cGUtcG9zdCAucG9zdC1jb250ZW50IC5jb250ZW50LXdyYXAgaDQsIC5zaW5nbGUgLnR5cGUtcG9zdCAucG9zdC1jb250ZW50IC5jb250ZW50LXdyYXAgaDUsIC5zaW5nbGUgLnR5cGUtcG9zdCAucG9zdC1jb250ZW50IC5jb250ZW50LXdyYXAgaDYge1xuICAgICAgbWFyZ2luLXRvcDogMS41cmVtOyB9XG4gICAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgICAuc2luZ2xlIC50eXBlLXBvc3QgLnBvc3QtY29udGVudCAuY29udGVudC13cmFwIGgxLCAuc2luZ2xlIC50eXBlLXBvc3QgLnBvc3QtY29udGVudCAuY29udGVudC13cmFwIGgyLCAuc2luZ2xlIC50eXBlLXBvc3QgLnBvc3QtY29udGVudCAuY29udGVudC13cmFwIGgzLCAuc2luZ2xlIC50eXBlLXBvc3QgLnBvc3QtY29udGVudCAuY29udGVudC13cmFwIGg0LCAuc2luZ2xlIC50eXBlLXBvc3QgLnBvc3QtY29udGVudCAuY29udGVudC13cmFwIGg1LCAuc2luZ2xlIC50eXBlLXBvc3QgLnBvc3QtY29udGVudCAuY29udGVudC13cmFwIGg2IHtcbiAgICAgICAgICBtYXJnaW4tdG9wOiAyLjkxNjY3cmVtOyB9IH1cbiAgICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAgIC5zaW5nbGUgLnR5cGUtcG9zdCAucG9zdC1jb250ZW50IC5jb250ZW50LXdyYXAgaDEsIC5zaW5nbGUgLnR5cGUtcG9zdCAucG9zdC1jb250ZW50IC5jb250ZW50LXdyYXAgaDIsIC5zaW5nbGUgLnR5cGUtcG9zdCAucG9zdC1jb250ZW50IC5jb250ZW50LXdyYXAgaDMsIC5zaW5nbGUgLnR5cGUtcG9zdCAucG9zdC1jb250ZW50IC5jb250ZW50LXdyYXAgaDQsIC5zaW5nbGUgLnR5cGUtcG9zdCAucG9zdC1jb250ZW50IC5jb250ZW50LXdyYXAgaDUsIC5zaW5nbGUgLnR5cGUtcG9zdCAucG9zdC1jb250ZW50IC5jb250ZW50LXdyYXAgaDYge1xuICAgICAgICAgIG1hcmdpbi10b3A6IDIuNXJlbTsgfSB9XG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgICAgIC5zaW5nbGUgLnR5cGUtcG9zdCAucG9zdC1jb250ZW50IC5jb250ZW50LXdyYXAgaDEsIC5zaW5nbGUgLnR5cGUtcG9zdCAucG9zdC1jb250ZW50IC5jb250ZW50LXdyYXAgaDIsIC5zaW5nbGUgLnR5cGUtcG9zdCAucG9zdC1jb250ZW50IC5jb250ZW50LXdyYXAgaDMsIC5zaW5nbGUgLnR5cGUtcG9zdCAucG9zdC1jb250ZW50IC5jb250ZW50LXdyYXAgaDQsIC5zaW5nbGUgLnR5cGUtcG9zdCAucG9zdC1jb250ZW50IC5jb250ZW50LXdyYXAgaDUsIC5zaW5nbGUgLnR5cGUtcG9zdCAucG9zdC1jb250ZW50IC5jb250ZW50LXdyYXAgaDYge1xuICAgICAgICAgIG1hcmdpbi10b3A6IDNyZW07IH0gfVxuICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTBlbSkge1xuICAgICAgICAuc2luZ2xlIC50eXBlLXBvc3QgLnBvc3QtY29udGVudCAuY29udGVudC13cmFwIGgxLCAuc2luZ2xlIC50eXBlLXBvc3QgLnBvc3QtY29udGVudCAuY29udGVudC13cmFwIGgyLCAuc2luZ2xlIC50eXBlLXBvc3QgLnBvc3QtY29udGVudCAuY29udGVudC13cmFwIGgzLCAuc2luZ2xlIC50eXBlLXBvc3QgLnBvc3QtY29udGVudCAuY29udGVudC13cmFwIGg0LCAuc2luZ2xlIC50eXBlLXBvc3QgLnBvc3QtY29udGVudCAuY29udGVudC13cmFwIGg1LCAuc2luZ2xlIC50eXBlLXBvc3QgLnBvc3QtY29udGVudCAuY29udGVudC13cmFwIGg2IHtcbiAgICAgICAgICBtYXJnaW4tdG9wOiAzcmVtOyB9IH1cbiAgICAuc2luZ2xlIC50eXBlLXBvc3QgLnBvc3QtY29udGVudCAuY29udGVudC13cmFwID4gKiB7XG4gICAgICBjb2xvcjogIzMzMzMzMzsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAuc2luZ2xlIC50eXBlLXBvc3QgLnBvc3QtY29udGVudCAuY29udGVudC13cmFwID4gcCB7XG4gICAgICAgIGZvbnQtc2l6ZTogMS4xMjVyZW07IH0gfVxuICAuc2luZ2xlIC50eXBlLXBvc3QgLnBvc3QtY29udGVudCAuY29udGVudC1mb290ZXIge1xuICAgIHBhZGRpbmctdG9wOiAxcmVtOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgIC5zaW5nbGUgLnR5cGUtcG9zdCAucG9zdC1jb250ZW50IC5jb250ZW50LWZvb3RlciB7XG4gICAgICAgIHBhZGRpbmctdG9wOiAyLjVyZW07IH0gfVxuICAgIC5zaW5nbGUgLnR5cGUtcG9zdCAucG9zdC1jb250ZW50IC5jb250ZW50LWZvb3RlciAucG9zdC1tZXRhLXdyYXAge1xuICAgICAgcGFkZGluZy1ib3R0b206IDFyZW07XG4gICAgICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHJnYmEoMzMsIDMzLCAzMywgMC4xKTsgfVxuICAgICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgICAgLnNpbmdsZSAudHlwZS1wb3N0IC5wb3N0LWNvbnRlbnQgLmNvbnRlbnQtZm9vdGVyIC5wb3N0LW1ldGEtd3JhcCB7XG4gICAgICAgICAgcGFkZGluZy1ib3R0b206IDJyZW07XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogMS41cmVtOyB9IH1cbiAgICAuc2luZ2xlIC50eXBlLXBvc3QgLnBvc3QtY29udGVudCAuY29udGVudC1mb290ZXIgLnNoYXJlLXRleHQge1xuICAgICAgZm9udC1zaXplOiAxcmVtO1xuICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTsgfVxuICAgIC5zaW5nbGUgLnR5cGUtcG9zdCAucG9zdC1jb250ZW50IC5jb250ZW50LWZvb3RlciAucG9zdC1zaGFyZS13cmFwIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyOyB9XG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45Mzc1ZW0pIHtcbiAgICAgICAgLnNpbmdsZSAudHlwZS1wb3N0IC5wb3N0LWNvbnRlbnQgLmNvbnRlbnQtZm9vdGVyIC5wb3N0LXNoYXJlLXdyYXAgLnNoYXJlLXRleHQge1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206IDFyZW07IH0gfVxuICAgICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgICAgLnNpbmdsZSAudHlwZS1wb3N0IC5wb3N0LWNvbnRlbnQgLmNvbnRlbnQtZm9vdGVyIC5wb3N0LXNoYXJlLXdyYXAge1xuICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuOyB9IH1cblxuLnNpbmdsZS1hdXRob3JzIC5hdXRob3ItYXJjaGl2ZSwgLmJsb2cgLmF1dGhvci1hcmNoaXZlIHtcbiAgcGFkZGluZy10b3A6IDIuMjVyZW07XG4gIHBhZGRpbmctYm90dG9tOiAyLjI1cmVtOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLnNpbmdsZS1hdXRob3JzIC5hdXRob3ItYXJjaGl2ZSwgLmJsb2cgLmF1dGhvci1hcmNoaXZlIHtcbiAgICAgIHBhZGRpbmctdG9wOiA0LjM3NXJlbTtcbiAgICAgIHBhZGRpbmctYm90dG9tOiA0LjM3NXJlbTsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLnNpbmdsZS1hdXRob3JzIC5hdXRob3ItYXJjaGl2ZSwgLmJsb2cgLmF1dGhvci1hcmNoaXZlIHtcbiAgICAgIHBhZGRpbmctdG9wOiAzLjc1cmVtO1xuICAgICAgcGFkZGluZy1ib3R0b206IDMuNzVyZW07IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgLnNpbmdsZS1hdXRob3JzIC5hdXRob3ItYXJjaGl2ZSwgLmJsb2cgLmF1dGhvci1hcmNoaXZlIHtcbiAgICAgIHBhZGRpbmctdG9wOiA0LjVyZW07XG4gICAgICBwYWRkaW5nLWJvdHRvbTogNC41cmVtOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTBlbSkge1xuICAgIC5zaW5nbGUtYXV0aG9ycyAuYXV0aG9yLWFyY2hpdmUsIC5ibG9nIC5hdXRob3ItYXJjaGl2ZSB7XG4gICAgICBwYWRkaW5nLXRvcDogNC41cmVtO1xuICAgICAgcGFkZGluZy1ib3R0b206IDQuNXJlbTsgfSB9XG4gIC5zaW5nbGUtYXV0aG9ycyAuYXV0aG9yLWFyY2hpdmUgLnNlY3Rpb24tdGl0bGUsIC5ibG9nIC5hdXRob3ItYXJjaGl2ZSAuc2VjdGlvbi10aXRsZSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgY29sb3I6ICMwMDFFNjI7IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgLnNpbmdsZS1hdXRob3JzIC5hdXRob3ItYXJjaGl2ZSAuc2VjdGlvbi10aXRsZSwgLmJsb2cgLmF1dGhvci1hcmNoaXZlIC5zZWN0aW9uLXRpdGxlIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMnJlbTsgfSB9XG4gIC5zaW5nbGUtYXV0aG9ycyAuYXV0aG9yLWFyY2hpdmUgLnBvc3QtY2FyZC1yb3ctZ3JpZCwgLmJsb2cgLmF1dGhvci1hcmNoaXZlIC5wb3N0LWNhcmQtcm93LWdyaWQge1xuICAgIG1hcmdpbi1ib3R0b206IDA7IH1cblxuLmNhcmQtcGxheS1idXR0b24ge1xuICBoZWlnaHQ6IDIuNXJlbTtcbiAgd2lkdGg6IDIuNXJlbTtcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmZmZmOyB9XG4gIC5jYXJkLXBsYXktYnV0dG9uIHN2ZyB7XG4gICAgbWF4LWhlaWdodDogMXJlbTtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiA1MCU7XG4gICAgbGVmdDogY2FsYyg1MCUgKyAycHgpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpOyB9XG5cbi5wYWdlLXdyYXAucHJlc3MtcGFnZSAuZmVhdHVyZWQtcG9zdHMge1xuICBtYXJnaW4tdG9wOiAyLjI1cmVtO1xuICBtYXJnaW4tYm90dG9tOiA0LjVyZW07IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAucGFnZS13cmFwLnByZXNzLXBhZ2UgLmZlYXR1cmVkLXBvc3RzIHtcbiAgICAgIG1hcmdpbi10b3A6IDQuMzc1cmVtOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAucGFnZS13cmFwLnByZXNzLXBhZ2UgLmZlYXR1cmVkLXBvc3RzIHtcbiAgICAgIG1hcmdpbi10b3A6IDMuNzVyZW07IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgLnBhZ2Utd3JhcC5wcmVzcy1wYWdlIC5mZWF0dXJlZC1wb3N0cyB7XG4gICAgICBtYXJnaW4tdG9wOiA0LjVyZW07IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5MGVtKSB7XG4gICAgLnBhZ2Utd3JhcC5wcmVzcy1wYWdlIC5mZWF0dXJlZC1wb3N0cyB7XG4gICAgICBtYXJnaW4tdG9wOiA0LjVyZW07IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5wYWdlLXdyYXAucHJlc3MtcGFnZSAuZmVhdHVyZWQtcG9zdHMge1xuICAgICAgbWFyZ2luLWJvdHRvbTogOC43NXJlbTsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLnBhZ2Utd3JhcC5wcmVzcy1wYWdlIC5mZWF0dXJlZC1wb3N0cyB7XG4gICAgICBtYXJnaW4tYm90dG9tOiA3LjVyZW07IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgLnBhZ2Utd3JhcC5wcmVzcy1wYWdlIC5mZWF0dXJlZC1wb3N0cyB7XG4gICAgICBtYXJnaW4tYm90dG9tOiA5cmVtOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTBlbSkge1xuICAgIC5wYWdlLXdyYXAucHJlc3MtcGFnZSAuZmVhdHVyZWQtcG9zdHMge1xuICAgICAgbWFyZ2luLWJvdHRvbTogOXJlbTsgfSB9XG5cbi5wYWdlLXdyYXAucHJlc3MtcGFnZSBzZWN0aW9uOmxhc3Qtb2YtdHlwZSAuY29udGVudC1jZWxsIHtcbiAgbWFyZ2luLWJvdHRvbTogMDsgfVxuXG4ucGFnZS13cmFwLnR5cGUtcGFnZSB7XG4gIG1hcmdpbi1ib3R0b206IDIuMjVyZW07IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAucGFnZS13cmFwLnR5cGUtcGFnZSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiA0LjM3NXJlbTsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLnBhZ2Utd3JhcC50eXBlLXBhZ2Uge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMy43NXJlbTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICAucGFnZS13cmFwLnR5cGUtcGFnZSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiA0LjVyZW07IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5MGVtKSB7XG4gICAgLnBhZ2Utd3JhcC50eXBlLXBhZ2Uge1xuICAgICAgbWFyZ2luLWJvdHRvbTogNC41cmVtOyB9IH1cblxuLnN0aS1tb2JpbGUtYnRuIHtcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9XG5cbiNzdGktYm94IHtcbiAgei1pbmRleDogOSAhaW1wb3J0YW50O1xuICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAyMHB4OyB9XG4gICNzdGktYm94Lmhhcy1lbGVtcyB7XG4gICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDsgfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45Mzc1ZW0pIHtcbiAgLnBhZGRpbmctdC1zbWFsbC1vbmx5IHtcbiAgICBwYWRkaW5nLXRvcDogNC41cmVtOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTM3NWVtKSBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5wYWRkaW5nLXQtc21hbGwtb25seSB7XG4gICAgICBwYWRkaW5nLXRvcDogOC43NXJlbTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5LjkzNzVlbSkgYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAucGFkZGluZy10LXNtYWxsLW9ubHkge1xuICAgICAgcGFkZGluZy10b3A6IDcuNXJlbTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5LjkzNzVlbSkgYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICAucGFkZGluZy10LXNtYWxsLW9ubHkge1xuICAgICAgcGFkZGluZy10b3A6IDlyZW07IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45Mzc1ZW0pIGFuZCAobWluLXdpZHRoOiA5MGVtKSB7XG4gICAgLnBhZGRpbmctdC1zbWFsbC1vbmx5IHtcbiAgICAgIHBhZGRpbmctdG9wOiA5cmVtOyB9IH1cblxuLm9wdGFub24tYWxlcnQtYm94LXdyYXBwZXIgLmNlbnRlci10aWxlLWJhbm5lci10aXRsZSB7XG4gIG1hcmdpbi1ib3R0b206IDFyZW0gIWltcG9ydGFudDsgfVxuXG4ub3B0YW5vbi1hbGVydC1ib3gtd3JhcHBlciAub3B0YW5vbi1hbGVydC1ib3gtYWNjZXB0LWJ1dHRvbiB7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgYm9yZGVyLXJhZGl1czogMjBweCAhaW1wb3J0YW50OyB9XG5cbi5vcHRhbm9uLWFsZXJ0LWJveC13cmFwcGVyIC5jZW50ZXItdGlsZS1iYW5uZXItdGl0bGUsIC5vcHRhbm9uLWFsZXJ0LWJveC13cmFwcGVyIC5vcHRhbm9uLWFsbG93LWFsbCB7XG4gIGZvbnQtZmFtaWx5OiBcImdvcmRpdGFib2xkXCIsIC1hcHBsZS1zeXN0ZW0sIEJsaW5rTWFjU3lzdGVtRm9udCwgXCJTZWdvZSBVSVwiLCBcIlJvYm90b1wiLCBcIk94eWdlblwiLCBcIlVidW50dVwiLCBcIkNhbnRhcmVsbFwiLCBcIkZpcmEgU2Fuc1wiLCBcIkRyb2lkIFNhbnNcIiwgXCJIZWx2ZXRpY2EgTmV1ZVwiLCBzYW5zLXNlcmlmICFpbXBvcnRhbnQ7IH1cblxuLm9wdGFub24tYWxlcnQtYm94LXdyYXBwZXIgLm9wdGFub24tYWxsb3ctYWxsIHtcbiAgZm9udC1zaXplOiAwLjgyNXJlbSAhaW1wb3J0YW50OyB9XG5cbi5vcHRhbm9uLWFsZXJ0LWJveC13cmFwcGVyIC5jb29raWUtc2V0dGluZ3MtYnV0dG9uIHtcbiAgZm9udC1mYW1pbHk6IFwiZ29yZGl0YXJlZ3VsYXJcIiwgLWFwcGxlLXN5c3RlbSwgQmxpbmtNYWNTeXN0ZW1Gb250LCBcIlNlZ29lIFVJXCIsIFwiUm9ib3RvXCIsIFwiT3h5Z2VuXCIsIFwiVWJ1bnR1XCIsIFwiQ2FudGFyZWxsXCIsIFwiRmlyYSBTYW5zXCIsIFwiRHJvaWQgU2Fuc1wiLCBcIkhlbHZldGljYSBOZXVlXCIsIHNhbnMtc2VyaWYgIWltcG9ydGFudDsgfVxuXG4ub3B0YW5vbi1hbGVydC1ib3gtd3JhcHBlciAub3B0YW5vbi1hbGVydC1ib3gtbm90aWNlIHtcbiAgZm9udC1mYW1pbHk6IFwiZ29yZGl0YXJlZ3VsYXJcIiwgLWFwcGxlLXN5c3RlbSwgQmxpbmtNYWNTeXN0ZW1Gb250LCBcIlNlZ29lIFVJXCIsIFwiUm9ib3RvXCIsIFwiT3h5Z2VuXCIsIFwiVWJ1bnR1XCIsIFwiQ2FudGFyZWxsXCIsIFwiRmlyYSBTYW5zXCIsIFwiRHJvaWQgU2Fuc1wiLCBcIkhlbHZldGljYSBOZXVlXCIsIHNhbnMtc2VyaWYgIWltcG9ydGFudDtcbiAgbWFyZ2luLWJvdHRvbTogMjBweCAhaW1wb3J0YW50OyB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5LjkzNzVlbSkge1xuICAudHlwZS1zZWFyY2gge1xuICAgIHBhZGRpbmctdG9wOiAyLjI1cmVtOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTM3NWVtKSBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC50eXBlLXNlYXJjaCB7XG4gICAgICBwYWRkaW5nLXRvcDogNC4zNzVyZW07IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45Mzc1ZW0pIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLnR5cGUtc2VhcmNoIHtcbiAgICAgIHBhZGRpbmctdG9wOiAzLjc1cmVtOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTM3NWVtKSBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgIC50eXBlLXNlYXJjaCB7XG4gICAgICBwYWRkaW5nLXRvcDogNC41cmVtOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTM3NWVtKSBhbmQgKG1pbi13aWR0aDogOTBlbSkge1xuICAgIC50eXBlLXNlYXJjaCB7XG4gICAgICBwYWRkaW5nLXRvcDogNC41cmVtOyB9IH1cblxuLnR5cGUtc2VhcmNoIC5zZWFyY2gtcmVzdWx0cyAubWFpbi1ncmlkIHtcbiAgbWFyZ2luLWJvdHRvbTogMi4yNXJlbTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC50eXBlLXNlYXJjaCAuc2VhcmNoLXJlc3VsdHMgLm1haW4tZ3JpZCB7XG4gICAgICBtYXJnaW4tYm90dG9tOiA0LjM3NXJlbTsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLnR5cGUtc2VhcmNoIC5zZWFyY2gtcmVzdWx0cyAubWFpbi1ncmlkIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDMuNzVyZW07IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgLnR5cGUtc2VhcmNoIC5zZWFyY2gtcmVzdWx0cyAubWFpbi1ncmlkIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDQuNXJlbTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDkwZW0pIHtcbiAgICAudHlwZS1zZWFyY2ggLnNlYXJjaC1yZXN1bHRzIC5tYWluLWdyaWQge1xuICAgICAgbWFyZ2luLWJvdHRvbTogNC41cmVtOyB9IH1cblxuLnR5cGUtc2VhcmNoIC5zZWFyY2gtcmVzdWx0cyAubG9hZC1tb3JlLWNlbGwge1xuICBtYXJnaW4tdG9wOiAwICFpbXBvcnRhbnQ7XG4gIG1hcmdpbi1ib3R0b206IDAgIWltcG9ydGFudDtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7IH1cbiAgLnR5cGUtc2VhcmNoIC5zZWFyY2gtcmVzdWx0cyAubG9hZC1tb3JlLWNlbGwgLmJ1dHRvbiB7XG4gICAgbWFyZ2luLXRvcDogMS4xMjVyZW07IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgLnR5cGUtc2VhcmNoIC5zZWFyY2gtcmVzdWx0cyAubG9hZC1tb3JlLWNlbGwgLmJ1dHRvbiB7XG4gICAgICAgIG1hcmdpbi10b3A6IDIuMTg3NXJlbTsgfSB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgIC50eXBlLXNlYXJjaCAuc2VhcmNoLXJlc3VsdHMgLmxvYWQtbW9yZS1jZWxsIC5idXR0b24ge1xuICAgICAgICBtYXJnaW4tdG9wOiAxLjg3NXJlbTsgfSB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgICAgLnR5cGUtc2VhcmNoIC5zZWFyY2gtcmVzdWx0cyAubG9hZC1tb3JlLWNlbGwgLmJ1dHRvbiB7XG4gICAgICAgIG1hcmdpbi10b3A6IDIuMjVyZW07IH0gfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDkwZW0pIHtcbiAgICAgIC50eXBlLXNlYXJjaCAuc2VhcmNoLXJlc3VsdHMgLmxvYWQtbW9yZS1jZWxsIC5idXR0b24ge1xuICAgICAgICBtYXJnaW4tdG9wOiAyLjI1cmVtOyB9IH1cblxuLnJrLXBsYWNlaG9sZGVyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIGhlaWdodDogMTAwJTtcbiAgd2lkdGg6IDEwMCU7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uL2ltYWdlcy9wbGFjZWhvbGRlcl9ibG9nX3RpbGUuc3ZnXCIpO1xuICBiYWNrZ3JvdW5kLXNpemU6IGNvbnRhaW47XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjsgfVxuXG4ucmV2ZWFsI2xhbmctc3dpdGNoLW1vZGFsIHtcbiAgcGFkZGluZy10b3A6IDIuMjVyZW07XG4gIHBhZGRpbmctYm90dG9tOiAyLjI1cmVtO1xuICBwYWRkaW5nLWxlZnQ6IDAuNzVyZW07XG4gIHBhZGRpbmctcmlnaHQ6IDAuNzVyZW07XG4gIHotaW5kZXg6IDk5OTk5OTk5OTk5OTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5yZXZlYWwjbGFuZy1zd2l0Y2gtbW9kYWwge1xuICAgICAgcGFkZGluZy10b3A6IDQuMzc1cmVtO1xuICAgICAgcGFkZGluZy1ib3R0b206IDQuMzc1cmVtOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAucmV2ZWFsI2xhbmctc3dpdGNoLW1vZGFsIHtcbiAgICAgIHBhZGRpbmctdG9wOiAzLjc1cmVtO1xuICAgICAgcGFkZGluZy1ib3R0b206IDMuNzVyZW07IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgLnJldmVhbCNsYW5nLXN3aXRjaC1tb2RhbCB7XG4gICAgICBwYWRkaW5nLXRvcDogNC41cmVtO1xuICAgICAgcGFkZGluZy1ib3R0b206IDQuNXJlbTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDkwZW0pIHtcbiAgICAucmV2ZWFsI2xhbmctc3dpdGNoLW1vZGFsIHtcbiAgICAgIHBhZGRpbmctdG9wOiA0LjVyZW07XG4gICAgICBwYWRkaW5nLWJvdHRvbTogNC41cmVtOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAucmV2ZWFsI2xhbmctc3dpdGNoLW1vZGFsIHtcbiAgICAgIHBhZGRpbmctbGVmdDogMi4xODc1cmVtO1xuICAgICAgcGFkZGluZy1yaWdodDogMi4xODc1cmVtOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAucmV2ZWFsI2xhbmctc3dpdGNoLW1vZGFsIHtcbiAgICAgIHBhZGRpbmctbGVmdDogMy4xMjVyZW07XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAzLjEyNXJlbTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICAucmV2ZWFsI2xhbmctc3dpdGNoLW1vZGFsIHtcbiAgICAgIHBhZGRpbmctbGVmdDogMy43NXJlbTtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDMuNzVyZW07IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5MGVtKSB7XG4gICAgLnJldmVhbCNsYW5nLXN3aXRjaC1tb2RhbCB7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDMuNzVyZW07XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAzLjc1cmVtOyB9IH1cbiAgLnJldmVhbCNsYW5nLXN3aXRjaC1tb2RhbCAubW9kYWwtY29udGVudCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMS41cmVtOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgIC5yZXZlYWwjbGFuZy1zd2l0Y2gtbW9kYWwgLm1vZGFsLWNvbnRlbnQge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAzcmVtOyB9IH1cblxuLmZvb3Rlci1jb250YWluZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjdmN2Y3O1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBmb250LWZhbWlseTogXCJnb3JkaXRhbWVkaXVtXCIsIC1hcHBsZS1zeXN0ZW0sIEJsaW5rTWFjU3lzdGVtRm9udCwgXCJTZWdvZSBVSVwiLCBcIlJvYm90b1wiLCBcIk94eWdlblwiLCBcIlVidW50dVwiLCBcIkNhbnRhcmVsbFwiLCBcIkZpcmEgU2Fuc1wiLCBcIkRyb2lkIFNhbnNcIiwgXCJIZWx2ZXRpY2EgTmV1ZVwiLCBzYW5zLXNlcmlmO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuZm9vdGVyLWNvbnRhaW5lciB7XG4gICAgICB0ZXh0LWFsaWduOiBsZWZ0OyB9IH1cbiAgLmZvb3Rlci1jb250YWluZXIgLmdyaWQteCB7XG4gICAgcGFkZGluZy10b3A6IDIuMjVyZW07XG4gICAgcGFkZGluZy1ib3R0b206IDIuMjVyZW07IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgLmZvb3Rlci1jb250YWluZXIgLmdyaWQteCB7XG4gICAgICAgIHBhZGRpbmctdG9wOiA0LjM3NXJlbTtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDQuMzc1cmVtOyB9IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgLmZvb3Rlci1jb250YWluZXIgLmdyaWQteCB7XG4gICAgICAgIHBhZGRpbmctdG9wOiAzLjc1cmVtO1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogMy43NXJlbTsgfSB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgICAgLmZvb3Rlci1jb250YWluZXIgLmdyaWQteCB7XG4gICAgICAgIHBhZGRpbmctdG9wOiA0LjVyZW07XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiA0LjVyZW07IH0gfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDkwZW0pIHtcbiAgICAgIC5mb290ZXItY29udGFpbmVyIC5ncmlkLXgge1xuICAgICAgICBwYWRkaW5nLXRvcDogNC41cmVtO1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogNC41cmVtOyB9IH1cbiAgICAuZm9vdGVyLWNvbnRhaW5lciAuZ3JpZC14ID4gLmNlbGwge1xuICAgICAgcGFkZGluZy10b3A6IDIuNXJlbTsgfVxuICAgICAgLmZvb3Rlci1jb250YWluZXIgLmdyaWQteCA+IC5jZWxsOmxhc3QtY2hpbGQge1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogM3JlbTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5mb290ZXItY29udGFpbmVyIC5mb290ZXItbWVudS1jb2wge1xuICAgICAgcGFkZGluZy1ib3R0b206IDIuMjVyZW07IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkgYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuZm9vdGVyLWNvbnRhaW5lciAuZm9vdGVyLW1lbnUtY29sIHtcbiAgICAgIHBhZGRpbmctYm90dG9tOiA0LjM3NXJlbTsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5mb290ZXItY29udGFpbmVyIC5mb290ZXItbWVudS1jb2wge1xuICAgICAgcGFkZGluZy1ib3R0b206IDMuNzVyZW07IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgIC5mb290ZXItY29udGFpbmVyIC5mb290ZXItbWVudS1jb2wge1xuICAgICAgcGFkZGluZy1ib3R0b206IDQuNXJlbTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIGFuZCAobWluLXdpZHRoOiA5MGVtKSB7XG4gICAgLmZvb3Rlci1jb250YWluZXIgLmZvb3Rlci1tZW51LWNvbCB7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogNC41cmVtOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuZm9vdGVyLWNvbnRhaW5lciAuZm9vdGVyLW1lbnUtY29sIHtcbiAgICAgIHBhZGRpbmctYm90dG9tOiA0LjVyZW07IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkgYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuZm9vdGVyLWNvbnRhaW5lciAuZm9vdGVyLW1lbnUtY29sIHtcbiAgICAgIHBhZGRpbmctYm90dG9tOiA4Ljc1cmVtOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmZvb3Rlci1jb250YWluZXIgLmZvb3Rlci1tZW51LWNvbCB7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogNy41cmVtOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkgYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICAuZm9vdGVyLWNvbnRhaW5lciAuZm9vdGVyLW1lbnUtY29sIHtcbiAgICAgIHBhZGRpbmctYm90dG9tOiA5cmVtOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkgYW5kIChtaW4td2lkdGg6IDkwZW0pIHtcbiAgICAuZm9vdGVyLWNvbnRhaW5lciAuZm9vdGVyLW1lbnUtY29sIHtcbiAgICAgIHBhZGRpbmctYm90dG9tOiA5cmVtOyB9IH1cbiAgLmZvb3Rlci1jb250YWluZXIgLmZvb3Rlci1tZW51LWNvbCAuZm9vdGVyLW1lbnUge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAuZm9vdGVyLWNvbnRhaW5lciAuZm9vdGVyLW1lbnUtY29sIC5mb290ZXItbWVudSB7XG4gICAgICAgIGNvbHVtbnM6IDM7XG4gICAgICAgIHRleHQtYWxpZ246IGxlZnQ7IH0gfVxuICAgIC5mb290ZXItY29udGFpbmVyIC5mb290ZXItbWVudS1jb2wgLmZvb3Rlci1tZW51IC5tZW51LWl0ZW0ge1xuICAgICAgY29sb3I6ICMyMTIxMjE7IH1cbiAgICAgIC5mb290ZXItY29udGFpbmVyIC5mb290ZXItbWVudS1jb2wgLmZvb3Rlci1tZW51IC5tZW51LWl0ZW0gYSB7XG4gICAgICAgIGNvbG9yOiAjMjEyMTIxO1xuICAgICAgICBwYWRkaW5nOiAwIDAgMCAwO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAxLjVyZW07XG4gICAgICAgIGZvbnQtZmFtaWx5OiBcImdvcmRpdGFtZWRpdW1cIiwgLWFwcGxlLXN5c3RlbSwgQmxpbmtNYWNTeXN0ZW1Gb250LCBcIlNlZ29lIFVJXCIsIFwiUm9ib3RvXCIsIFwiT3h5Z2VuXCIsIFwiVWJ1bnR1XCIsIFwiQ2FudGFyZWxsXCIsIFwiRmlyYSBTYW5zXCIsIFwiRHJvaWQgU2Fuc1wiLCBcIkhlbHZldGljYSBOZXVlXCIsIHNhbnMtc2VyaWY7IH1cbiAgICAgICAgLmZvb3Rlci1jb250YWluZXIgLmZvb3Rlci1tZW51LWNvbCAuZm9vdGVyLW1lbnUgLm1lbnUtaXRlbSBhOmhvdmVyIHtcbiAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTsgfVxuICAgICAgLmZvb3Rlci1jb250YWluZXIgLmZvb3Rlci1tZW51LWNvbCAuZm9vdGVyLW1lbnUgLm1lbnUtaXRlbS5pcy1hY3RpdmUge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsgfVxuICAgICAgICAuZm9vdGVyLWNvbnRhaW5lciAuZm9vdGVyLW1lbnUtY29sIC5mb290ZXItbWVudSAubWVudS1pdGVtLmlzLWFjdGl2ZSBhIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsgfVxuICAuZm9vdGVyLWNvbnRhaW5lciAuc29jaWFsLWljb24tbGlzdCB7XG4gICAgZGlzcGxheTogYmxvY2s7IH1cbiAgLmZvb3Rlci1jb250YWluZXIgLmZvb3Rlci1pbmZvLWNlbGwge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuICAuZm9vdGVyLWNvbnRhaW5lciAuc3RvcmUtbGluayB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgbWFyZ2luLWJvdHRvbTogMC41cmVtOyB9XG4gICAgLmZvb3Rlci1jb250YWluZXIgLnN0b3JlLWxpbmsgPiBpbWcge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICB3aWR0aDogYXV0bztcbiAgICAgIGhlaWdodDogMi41cmVtO1xuICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgICBkaXNwbGF5OiBibG9jazsgfVxuICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkgYW5kIChtYXgtd2lkdGg6IDYzLjkzNzVlbSkge1xuICAgICAgICAuZm9vdGVyLWNvbnRhaW5lciAuc3RvcmUtbGluayA+IGltZyB7XG4gICAgICAgICAgaGVpZ2h0OiAzLjEyNXJlbTsgfSB9XG4gIC5mb290ZXItY29udGFpbmVyIGEuc3RvcmUtbGluayB7XG4gICAgdHJhbnNpdGlvbjogYWxsIDAuNXMgZWFzZTsgfVxuICAgIC5mb290ZXItY29udGFpbmVyIGEuc3RvcmUtbGluazpob3ZlciwgLmZvb3Rlci1jb250YWluZXIgYS5zdG9yZS1saW5rOmZvY3VzIHtcbiAgICAgIG9wYWNpdHk6IDAuNzsgfVxuXG5ib2R5I3RpbnltY2Uge1xuICBoZWlnaHQ6IGF1dG87XG4gIG1heC13aWR0aDogOTByZW07XG4gIHBhZGRpbmc6IDEuMjVyZW0gIWltcG9ydGFudDsgfVxuXG4uZ2Zvcm1fd3JhcHBlciB7XG4gIG1hcmdpbjogMCAhaW1wb3J0YW50OyB9XG4gIC5nZm9ybV93cmFwcGVyIC5mb3JtLWhlYWRpbmcge1xuICAgIG1hcmdpbi1ib3R0b206IDEuNXJlbTsgfVxuICAuZ2Zvcm1fd3JhcHBlciB1bC5nZm9ybV9maWVsZHMgbGkuZ2ZpZWxkIHNlbGVjdCwgLmdmb3JtX3dyYXBwZXIgdWwuZ2Zvcm1fZmllbGRzIGxpLmdmaWVsZCB0ZXh0YXJlYSwgLmdmb3JtX3dyYXBwZXIgdWwuZ2Zvcm1fZmllbGRzIGxpLmdmaWVsZCBpbnB1dDpub3QoW3R5cGU9cmFkaW9dKTpub3QoW3R5cGU9Y2hlY2tib3hdKTpub3QoW3R5cGU9c3VibWl0XSk6bm90KFt0eXBlPWJ1dHRvbl0pOm5vdChbdHlwZT1pbWFnZV0pOm5vdChbdHlwZT0nZmlsZSddKSB7XG4gICAgcGFkZGluZy1sZWZ0OiAxcmVtO1xuICAgIHBhZGRpbmctcmlnaHQ6IDFyZW07XG4gICAgbWFyZ2luLWJvdHRvbTogMDsgfVxuICAuZ2Zvcm1fd3JhcHBlciB1bC5nZm9ybV9maWVsZHMgbGkuZ2ZpZWxkIHNlbGVjdCB7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogcmlnaHQgMCBjZW50ZXI7IH1cbiAgICAuZ2Zvcm1fd3JhcHBlciB1bC5nZm9ybV9maWVsZHMgbGkuZ2ZpZWxkIHNlbGVjdDpob3ZlciB7XG4gICAgICBjdXJzb3I6IHBvaW50ZXI7IH1cbiAgLmdmb3JtX3dyYXBwZXIgdWwuZ2Zvcm1fZmllbGRzIGxpLmdmaWVsZCB0ZXh0YXJlYSB7XG4gICAgaGVpZ2h0OiA5LjM3NXJlbTsgfVxuICAuZ2Zvcm1fd3JhcHBlciB1bC5nZm9ybV9maWVsZHMgbGkuZ2ZpZWxkIGxhYmVsLmdmaWVsZF9sYWJlbCB7XG4gICAgZm9udC1zaXplOiAwLjg3NXJlbTsgfVxuICAuZ2Zvcm1fd3JhcHBlciB1bC5nZm9ybV9maWVsZHMgbGkuZ2ZpZWxkIC5naW5wdXRfY29udGFpbmVyIHtcbiAgICBtYXJnaW4tdG9wOiA0cHg7IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgLmdmb3JtX3dyYXBwZXIgdWwuZ2Zvcm1fZmllbGRzIGxpLmdmaWVsZCAuZ2lucHV0X2NvbnRhaW5lciB7XG4gICAgICAgIG1hcmdpbi10b3A6IDhweDsgfSB9XG4gIC5nZm9ybV93cmFwcGVyIGZvcm0gLmZpZWxkX2Rlc2NyaXB0aW9uX2JlbG93IC5nZmllbGRfZGVzY3JpcHRpb24ge1xuICAgIHBhZGRpbmctdG9wOiAwLjVyZW07IH1cbiAgLmdmb3JtX3dyYXBwZXIuZ2Zvcm1fdmFsaWRhdGlvbl9lcnJvciBmb3JtIC5nZm9ybV9ib2R5IHVsIGxpLmdmaWVsZC5nZmllbGRfZXJyb3I6bm90KC5nZl9sZWZ0X2hhbGYpOm5vdCguZ2ZfcmlnaHRfaGFsZikge1xuICAgIG1heC13aWR0aDogbm9uZSAhaW1wb3J0YW50OyB9XG4gIC5nZm9ybV93cmFwcGVyIGZvcm0gLnZhbGlkYXRpb25fbWVzc2FnZSB7XG4gICAgY29sb3I6ICNhNjNiMmE7IH1cbiAgLmdmb3JtX3dyYXBwZXIgZm9ybSBkaXYudmFsaWRhdGlvbl9lcnJvciB7XG4gICAgYm9yZGVyOiBub25lO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjA0LCA3NSwgNTUsIDAuMSk7XG4gICAgY29sb3I6ICNjYTQ4MzQ7XG4gICAgYm9yZGVyLXJhZGl1czogNHB4O1xuICAgIGxpbmUtaGVpZ2h0OiAxLjU7IH1cbiAgLmdmb3JtX3dyYXBwZXIgZm9ybSB1bC5nZm9ybV9maWVsZHMgbGkuZ2ZpZWxkLmdmaWVsZF9lcnJvciwgLmdmb3JtX3dyYXBwZXIgZm9ybSBsaS5nZmllbGQuZ2ZpZWxkX2Vycm9yLmdmaWVsZF9jb250YWluc19yZXF1aXJlZC5nZmllbGRfY3JlZGl0Y2FyZF93YXJuaW5nIHtcbiAgICBib3JkZXI6IG5vbmU7XG4gICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICBwYWRkaW5nLXRvcDogMDtcbiAgICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgICBtYXJnaW4tYm90dG9tOiAwICFpbXBvcnRhbnQ7IH1cbiAgICAuZ2Zvcm1fd3JhcHBlciBmb3JtIHVsLmdmb3JtX2ZpZWxkcyBsaS5nZmllbGQuZ2ZpZWxkX2Vycm9yIGxhYmVsLmdmaWVsZF9sYWJlbCwgLmdmb3JtX3dyYXBwZXIgZm9ybSBsaS5nZmllbGQuZ2ZpZWxkX2Vycm9yLmdmaWVsZF9jb250YWluc19yZXF1aXJlZC5nZmllbGRfY3JlZGl0Y2FyZF93YXJuaW5nIGxhYmVsLmdmaWVsZF9sYWJlbCB7XG4gICAgICBjb2xvcjogI2NjNGIzNzsgfVxuICAgIC5nZm9ybV93cmFwcGVyIGZvcm0gdWwuZ2Zvcm1fZmllbGRzIGxpLmdmaWVsZC5nZmllbGRfZXJyb3IuZ2ZpZWxkX2NvbnRhaW5zX3JlcXVpcmVkIGxhYmVsLmdmaWVsZF9sYWJlbCwgLmdmb3JtX3dyYXBwZXIgZm9ybSBsaS5nZmllbGQuZ2ZpZWxkX2Vycm9yLmdmaWVsZF9jb250YWluc19yZXF1aXJlZC5nZmllbGRfY3JlZGl0Y2FyZF93YXJuaW5nLmdmaWVsZF9jb250YWluc19yZXF1aXJlZCBsYWJlbC5nZmllbGRfbGFiZWwge1xuICAgICAgbWFyZ2luLXRvcDogMDsgfVxuICAgIC5nZm9ybV93cmFwcGVyIGZvcm0gdWwuZ2Zvcm1fZmllbGRzIGxpLmdmaWVsZC5nZmllbGRfZXJyb3IuZ2ZpZWxkX2NvbnRhaW5zX3JlcXVpcmVkIGRpdi5naW5wdXRfY29udGFpbmVyLCAuZ2Zvcm1fd3JhcHBlciBmb3JtIGxpLmdmaWVsZC5nZmllbGRfZXJyb3IuZ2ZpZWxkX2NvbnRhaW5zX3JlcXVpcmVkLmdmaWVsZF9jcmVkaXRjYXJkX3dhcm5pbmcuZ2ZpZWxkX2NvbnRhaW5zX3JlcXVpcmVkIGRpdi5naW5wdXRfY29udGFpbmVyIHtcbiAgICAgIG1hcmdpbi10b3A6IDRweDsgfVxuICAgICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgICAgLmdmb3JtX3dyYXBwZXIgZm9ybSB1bC5nZm9ybV9maWVsZHMgbGkuZ2ZpZWxkLmdmaWVsZF9lcnJvci5nZmllbGRfY29udGFpbnNfcmVxdWlyZWQgZGl2LmdpbnB1dF9jb250YWluZXIsIC5nZm9ybV93cmFwcGVyIGZvcm0gbGkuZ2ZpZWxkLmdmaWVsZF9lcnJvci5nZmllbGRfY29udGFpbnNfcmVxdWlyZWQuZ2ZpZWxkX2NyZWRpdGNhcmRfd2FybmluZy5nZmllbGRfY29udGFpbnNfcmVxdWlyZWQgZGl2LmdpbnB1dF9jb250YWluZXIge1xuICAgICAgICAgIG1hcmdpbi10b3A6IDhweDsgfSB9XG4gICAgLmdmb3JtX3dyYXBwZXIgZm9ybSB1bC5nZm9ybV9maWVsZHMgbGkuZ2ZpZWxkLmdmaWVsZF9lcnJvciArIGxpLmdmaWVsZC5nZmllbGRfZXJyb3IsIC5nZm9ybV93cmFwcGVyIGZvcm0gbGkuZ2ZpZWxkLmdmaWVsZF9lcnJvci5nZmllbGRfY29udGFpbnNfcmVxdWlyZWQuZ2ZpZWxkX2NyZWRpdGNhcmRfd2FybmluZyArIGxpLmdmaWVsZC5nZmllbGRfZXJyb3Ige1xuICAgICAgbWFyZ2luLXRvcDogMXJlbTsgfVxuICAgIC5nZm9ybV93cmFwcGVyIGZvcm0gdWwuZ2Zvcm1fZmllbGRzIGxpLmdmaWVsZC5nZmllbGRfZXJyb3Igc2VsZWN0LCAuZ2Zvcm1fd3JhcHBlciBmb3JtIHVsLmdmb3JtX2ZpZWxkcyBsaS5nZmllbGQuZ2ZpZWxkX2Vycm9yIHRleHRhcmVhLCAuZ2Zvcm1fd3JhcHBlciBmb3JtIHVsLmdmb3JtX2ZpZWxkcyBsaS5nZmllbGQuZ2ZpZWxkX2Vycm9yIGlucHV0Om5vdChbdHlwZT1yYWRpb10pOm5vdChbdHlwZT1jaGVja2JveF0pOm5vdChbdHlwZT1zdWJtaXRdKTpub3QoW3R5cGU9YnV0dG9uXSk6bm90KFt0eXBlPWltYWdlXSk6bm90KFt0eXBlPSdmaWxlJ10pLCAuZ2Zvcm1fd3JhcHBlciBmb3JtIGxpLmdmaWVsZC5nZmllbGRfZXJyb3IuZ2ZpZWxkX2NvbnRhaW5zX3JlcXVpcmVkLmdmaWVsZF9jcmVkaXRjYXJkX3dhcm5pbmcgc2VsZWN0LCAuZ2Zvcm1fd3JhcHBlciBmb3JtIGxpLmdmaWVsZC5nZmllbGRfZXJyb3IuZ2ZpZWxkX2NvbnRhaW5zX3JlcXVpcmVkLmdmaWVsZF9jcmVkaXRjYXJkX3dhcm5pbmcgdGV4dGFyZWEsIC5nZm9ybV93cmFwcGVyIGZvcm0gbGkuZ2ZpZWxkLmdmaWVsZF9lcnJvci5nZmllbGRfY29udGFpbnNfcmVxdWlyZWQuZ2ZpZWxkX2NyZWRpdGNhcmRfd2FybmluZyBpbnB1dDpub3QoW3R5cGU9cmFkaW9dKTpub3QoW3R5cGU9Y2hlY2tib3hdKTpub3QoW3R5cGU9c3VibWl0XSk6bm90KFt0eXBlPWJ1dHRvbl0pOm5vdChbdHlwZT1pbWFnZV0pOm5vdChbdHlwZT0nZmlsZSddKSB7XG4gICAgICBib3JkZXI6IDFweCBzb2xpZCAjY2M0YjM3OyB9XG4gIC5nZm9ybV93cmFwcGVyIC5nZm9ybV9ib2R5IC5nZm9ybV9maWVsZHMgLmdmaWVsZCAuZ2lucHV0X2NvbnRhaW5lciBpbnB1dC5nZm9ybV9idXR0b25fc2VsZWN0X2ZpbGVzLCAuZ2Zvcm1fd3JhcHBlciAuZ2Zvcm1fYm9keSAuZ2Zvcm1fZmllbGRzIC5nZmllbGQgLmdpbnB1dF9jb250YWluZXIgdGV4dGFyZWEuZ2Zvcm1fYnV0dG9uX3NlbGVjdF9maWxlcywgLmdmb3JtX3dyYXBwZXIgLmdmb3JtX2JvZHkgLmdmb3JtX2ZpZWxkcyAuZ2ZfbGVmdF9oYWxmIC5naW5wdXRfY29udGFpbmVyIGlucHV0Lmdmb3JtX2J1dHRvbl9zZWxlY3RfZmlsZXMsIC5nZm9ybV93cmFwcGVyIC5nZm9ybV9ib2R5IC5nZm9ybV9maWVsZHMgLmdmX2xlZnRfaGFsZiAuZ2lucHV0X2NvbnRhaW5lciB0ZXh0YXJlYS5nZm9ybV9idXR0b25fc2VsZWN0X2ZpbGVzLCAuZ2Zvcm1fd3JhcHBlciAuZ2Zvcm1fYm9keSAuZ2Zvcm1fZmllbGRzIC5nZl9yaWdodF9oYWxmIC5naW5wdXRfY29udGFpbmVyIGlucHV0Lmdmb3JtX2J1dHRvbl9zZWxlY3RfZmlsZXMsIC5nZm9ybV93cmFwcGVyIC5nZm9ybV9ib2R5IC5nZm9ybV9maWVsZHMgLmdmX3JpZ2h0X2hhbGYgLmdpbnB1dF9jb250YWluZXIgdGV4dGFyZWEuZ2Zvcm1fYnV0dG9uX3NlbGVjdF9maWxlcyB7XG4gICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7IH1cbiAgLmdmb3JtX3dyYXBwZXIgLmdmb3JtX2JvZHkgLmdmb3JtX2ZpZWxkcyAuZ2ZpZWxkIHtcbiAgICBwYWRkaW5nOiAwOyB9XG4gIC5nZm9ybV93cmFwcGVyIC5nZm9ybV9ib2R5IC5nZm9ybV9maWVsZHMgLmdmaWVsZC5nZl9sZWZ0X2hhbGYge1xuICAgIHBhZGRpbmc6IDAgMC41cmVtIDAgMDsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5LjkzNzVlbSkge1xuICAgICAgLmdmb3JtX3dyYXBwZXIgLmdmb3JtX2JvZHkgLmdmb3JtX2ZpZWxkcyAuZ2ZpZWxkLmdmX2xlZnRfaGFsZiB7XG4gICAgICAgIHBhZGRpbmc6IDA7IH0gfVxuICAuZ2Zvcm1fd3JhcHBlciAuZ2Zvcm1fYm9keSAuZ2Zvcm1fZmllbGRzIC5nZmllbGQuZ2ZfcmlnaHRfaGFsZiB7XG4gICAgcGFkZGluZzogMCAwIDAgMC41cmVtOyB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTM3NWVtKSB7XG4gICAgICAuZ2Zvcm1fd3JhcHBlciAuZ2Zvcm1fYm9keSAuZ2Zvcm1fZmllbGRzIC5nZmllbGQuZ2ZfcmlnaHRfaGFsZiB7XG4gICAgICAgIHBhZGRpbmc6IDA7IH0gfVxuXG4uZ2Zvcm1fY29uZmlybWF0aW9uX3dyYXBwZXIge1xuICBwYWRkaW5nOiAxLjVyZW07XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNlNmU2ZTY7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2Y3ZjdmNztcbiAgYm9yZGVyLXJhZGl1czogNHB4O1xuICBtYXJnaW4tdG9wOiAxLjVyZW07XG4gIG1hcmdpbi1ib3R0b206IDEuNXJlbTtcbiAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmdmb3JtX2NvbmZpcm1hdGlvbl93cmFwcGVyIHtcbiAgICAgIHBhZGRpbmc6IDEuNXJlbSAxLjVyZW0gMS41cmVtIDMuNXJlbTtcbiAgICAgIHRleHQtYWxpZ246IGxlZnQ7IH0gfVxuICAuZ2Zvcm1fY29uZmlybWF0aW9uX3dyYXBwZXI6YmVmb3JlIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgcGFkZGluZzogMCA5cHg7XG4gICAgd2lkdGg6IDIuMTI1cmVtO1xuICAgIGhlaWdodDogMi4xMjVyZW07XG4gICAgY29sb3I6ICMzYWRiNzY7XG4gICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICBjb250ZW50OiAnXFxmMDBjJztcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmZmZmO1xuICAgIGZvbnQtZmFtaWx5OiBGb250QXdlc29tZTtcbiAgICBsaW5lLWhlaWdodDogMi4yO1xuICAgIGJveC1zaGFkb3c6IDAgMXB4IDZweCByZ2JhKDI1MiwgMTgxLCA1NCwgMC40KTtcbiAgICBtYXJnaW4tYm90dG9tOiAwLjZyZW07IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgLmdmb3JtX2NvbmZpcm1hdGlvbl93cmFwcGVyOmJlZm9yZSB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIGxlZnQ6IDAuNjVyZW07XG4gICAgICAgIHRvcDogNTAlO1xuICAgICAgICBtYXJnaW4tdG9wOiAtMS4wNjI1cmVtOyB9IH1cblxuc2VsZWN0IHtcbiAgcGFkZGluZy10b3A6IDA7XG4gIHBhZGRpbmctYm90dG9tOiAwO1xuICBib3JkZXItcmFkaXVzOiA0cHg7XG4gIGJvcmRlcjogMXB4IHNvbGlkICMwMDFFNjI7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbiAgYXBwZWFyYW5jZTogbm9uZTtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKC4uL2ZvbnRzL2ZvbnRhd2Vzb21lLXByby01LjEzLjAtd2ViL3N2Z3MvcmVndWxhci9jaGV2cm9uLWRvd24uc3ZnKTtcbiAgYmFja2dyb3VuZC1zaXplOiAwLjYyNXJlbTtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogcmlnaHQ7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7IH1cblxuaW5wdXRbdHlwZT0ndGV4dCddIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZmZmZjsgfVxuXG5pbnB1dFt0eXBlPVwiY29sb3JcIl0sXG5pbnB1dFt0eXBlPVwiZGF0ZVwiXSxcbmlucHV0W3R5cGU9XCJkYXRldGltZVwiXSxcbmlucHV0W3R5cGU9XCJkYXRldGltZS1sb2NhbFwiXSxcbmlucHV0W3R5cGU9XCJlbWFpbFwiXSxcbmlucHV0W3R5cGU9XCJtb250aFwiXSxcbmlucHV0W3R5cGU9XCJudW1iZXJcIl0sXG5pbnB1dFt0eXBlPVwicGFzc3dvcmRcIl0sXG5pbnB1dFt0eXBlPVwic2VhcmNoXCJdLFxuaW5wdXRbdHlwZT1cInRlbFwiXSxcbmlucHV0W3R5cGU9XCJ0ZXh0XCJdLFxuaW5wdXRbdHlwZT1cInRpbWVcIl0sXG5pbnB1dFt0eXBlPVwidXJsXCJdLFxuaW5wdXRbdHlwZT1cIndlZWtcIl0sXG5zZWxlY3Q6Zm9jdXMsXG50ZXh0YXJlYSB7XG4gIGZvbnQtc2l6ZTogMTZweDsgfVxuXG5zZWxlY3Q6Zm9jdXMge1xuICBib3gtc2hhZG93OiBub25lOyB9XG5cbmJvZHkge1xuICBmb250LXNpemU6IDAuODc1cmVtO1xuICBsZXR0ZXItc3BhY2luZzogMC41cHg7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICBib2R5IHtcbiAgICAgIGZvbnQtc2l6ZTogMXJlbTsgfSB9XG5cbi5zaG93LWFzLWgxLCAuYmFubmVyLXBhZ2UtYnJlYWsgLmJhbm5lci1jb250ZW50LCAudG9wLXBvc3QgLnRvcC1wb3N0LWdyaWQgLmNvbnRlbnQtY29sIC5wb3N0LXRpdGxlLWxpbmsgLnBvc3QtdGl0bGUsIC50b3AtcG9zdC50b3AtcG9zdC12aWRlbyAudG9wLXBvc3Qtcm93LWltYWdlIC50b3AtcG9zdC1jb250cm9scy1saW5rcyAucG9zdC10aXRsZSxcbi5zaG93LWFzLWgyLFxuLnVzZXItbG9naW4gLmxvZ2luLXRpdGxlLFxuLnNob3ctYXMtaDMsXG4ucG9zdC1jYXJkLXJvdy1jb250ZW50IC5wb3N0LXRpdGxlLFxuLmJyb3dzZS1ieS1jYXRlZ29yeSAuYnJvd3NlLWJ5LWNhdGVnb3J5LXRpdGxlLFxuLmJsb2ctaG9tZSAubGF0ZXN0LXRpdGxlLFxuLnNob3ctYXMtaDQsXG4ucmVzdWx0LWl0ZW0gLmVudHJ5LXRpdGxlLFxuLmJhbm5lci1wYWdlLWJyZWFrIC5hdXRob3ItbGluZSxcbi5icm93c2UtYnktY2F0ZWdvcnkgLmNhdGVnb3J5LWNlbGwgLmNvbnRlbnQtY29sIC5jYXRlZ29yeS10aXRsZSxcbi5zZWFyY2gtcmVzdWx0LWl0ZW0gLmNvbnRlbnQtY2VsbCAuaXRlbS10aXRsZSxcbi5zaG93LWFzLWg1LFxuLnBvc3QtbWV0YS5sYXJnZSAuYXV0aG9yLW5hbWUsXG4uc2hvdy1hcy1oNixcbi5hcmNoaXZlLWNvbnRlbnQgLmFyY2hpdmUtdGlsZSAuZW50cnktY29udGVudCAuZW50cnktdGl0bGUsXG4ucG9zdC1uYXZpZ2F0aW9uIC52aWV3LWFsbC1idXR0b24ge1xuICBmb250LXdlaWdodDogNzAwO1xuICBsaW5lLWhlaWdodDogMS4yMjI7XG4gIGZvbnQtZmFtaWx5OiBcImdvcmRpdGFib2xkXCIsIC1hcHBsZS1zeXN0ZW0sIEJsaW5rTWFjU3lzdGVtRm9udCwgXCJTZWdvZSBVSVwiLCBcIlJvYm90b1wiLCBcIk94eWdlblwiLCBcIlVidW50dVwiLCBcIkNhbnRhcmVsbFwiLCBcIkZpcmEgU2Fuc1wiLCBcIkRyb2lkIFNhbnNcIiwgXCJIZWx2ZXRpY2EgTmV1ZVwiLCBzYW5zLXNlcmlmOyB9XG5cbi5zaG93LWFzLWgxLCAuYmFubmVyLXBhZ2UtYnJlYWsgLmJhbm5lci1jb250ZW50LCAudG9wLXBvc3QgLnRvcC1wb3N0LWdyaWQgLmNvbnRlbnQtY29sIC5wb3N0LXRpdGxlLWxpbmsgLnBvc3QtdGl0bGUsIC50b3AtcG9zdC50b3AtcG9zdC12aWRlbyAudG9wLXBvc3Qtcm93LWltYWdlIC50b3AtcG9zdC1jb250cm9scy1saW5rcyAucG9zdC10aXRsZSB7XG4gIGZvbnQtc2l6ZTogMi41cmVtOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLnNob3ctYXMtaDEsIC5iYW5uZXItcGFnZS1icmVhayAuYmFubmVyLWNvbnRlbnQsIC50b3AtcG9zdCAudG9wLXBvc3QtZ3JpZCAuY29udGVudC1jb2wgLnBvc3QtdGl0bGUtbGluayAucG9zdC10aXRsZSwgLnRvcC1wb3N0LnRvcC1wb3N0LXZpZGVvIC50b3AtcG9zdC1yb3ctaW1hZ2UgLnRvcC1wb3N0LWNvbnRyb2xzLWxpbmtzIC5wb3N0LXRpdGxlIHtcbiAgICAgIGZvbnQtc2l6ZTogM3JlbTsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLnNob3ctYXMtaDEsIC5iYW5uZXItcGFnZS1icmVhayAuYmFubmVyLWNvbnRlbnQsIC50b3AtcG9zdCAudG9wLXBvc3QtZ3JpZCAuY29udGVudC1jb2wgLnBvc3QtdGl0bGUtbGluayAucG9zdC10aXRsZSwgLnRvcC1wb3N0LnRvcC1wb3N0LXZpZGVvIC50b3AtcG9zdC1yb3ctaW1hZ2UgLnRvcC1wb3N0LWNvbnRyb2xzLWxpbmtzIC5wb3N0LXRpdGxlIHtcbiAgICAgIGZvbnQtc2l6ZTogMy4zNzVyZW07IH0gfVxuXG5cbi5zaG93LWFzLWgyLFxuLnVzZXItbG9naW4gLmxvZ2luLXRpdGxlIHtcbiAgZm9udC1zaXplOiAxLjc1cmVtOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgXG4gICAgLnNob3ctYXMtaDIsXG4gICAgLnVzZXItbG9naW4gLmxvZ2luLXRpdGxlIHtcbiAgICAgIGZvbnQtc2l6ZTogMS44NzVyZW07IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIFxuICAgIC5zaG93LWFzLWgyLFxuICAgIC51c2VyLWxvZ2luIC5sb2dpbi10aXRsZSB7XG4gICAgICBmb250LXNpemU6IDIuMjVyZW07IH0gfVxuXG5cbi5zaG93LWFzLWgzLFxuLnBvc3QtY2FyZC1yb3ctY29udGVudCAucG9zdC10aXRsZSxcbi5icm93c2UtYnktY2F0ZWdvcnkgLmJyb3dzZS1ieS1jYXRlZ29yeS10aXRsZSxcbi5ibG9nLWhvbWUgLmxhdGVzdC10aXRsZSB7XG4gIGZvbnQtc2l6ZTogMS41cmVtOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgXG4gICAgLnNob3ctYXMtaDMsXG4gICAgLnBvc3QtY2FyZC1yb3ctY29udGVudCAucG9zdC10aXRsZSxcbiAgICAuYnJvd3NlLWJ5LWNhdGVnb3J5IC5icm93c2UtYnktY2F0ZWdvcnktdGl0bGUsXG4gICAgLmJsb2ctaG9tZSAubGF0ZXN0LXRpdGxlIHtcbiAgICAgIGZvbnQtc2l6ZTogMS41cmVtOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICBcbiAgICAuc2hvdy1hcy1oMyxcbiAgICAucG9zdC1jYXJkLXJvdy1jb250ZW50IC5wb3N0LXRpdGxlLFxuICAgIC5icm93c2UtYnktY2F0ZWdvcnkgLmJyb3dzZS1ieS1jYXRlZ29yeS10aXRsZSxcbiAgICAuYmxvZy1ob21lIC5sYXRlc3QtdGl0bGUge1xuICAgICAgZm9udC1zaXplOiAxLjg3NXJlbTsgfSB9XG5cblxuLnNob3ctYXMtaDQsXG4ucmVzdWx0LWl0ZW0gLmVudHJ5LXRpdGxlLFxuLmJhbm5lci1wYWdlLWJyZWFrIC5hdXRob3ItbGluZSxcbi5icm93c2UtYnktY2F0ZWdvcnkgLmNhdGVnb3J5LWNlbGwgLmNvbnRlbnQtY29sIC5jYXRlZ29yeS10aXRsZSxcbi5zZWFyY2gtcmVzdWx0LWl0ZW0gLmNvbnRlbnQtY2VsbCAuaXRlbS10aXRsZSB7XG4gIGZvbnQtc2l6ZTogMS4zMTI1cmVtOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgXG4gICAgLnNob3ctYXMtaDQsXG4gICAgLnJlc3VsdC1pdGVtIC5lbnRyeS10aXRsZSxcbiAgICAuYmFubmVyLXBhZ2UtYnJlYWsgLmF1dGhvci1saW5lLFxuICAgIC5icm93c2UtYnktY2F0ZWdvcnkgLmNhdGVnb3J5LWNlbGwgLmNvbnRlbnQtY29sIC5jYXRlZ29yeS10aXRsZSxcbiAgICAuc2VhcmNoLXJlc3VsdC1pdGVtIC5jb250ZW50LWNlbGwgLml0ZW0tdGl0bGUge1xuICAgICAgZm9udC1zaXplOiAxLjMxMjVyZW07IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIFxuICAgIC5zaG93LWFzLWg0LFxuICAgIC5yZXN1bHQtaXRlbSAuZW50cnktdGl0bGUsXG4gICAgLmJhbm5lci1wYWdlLWJyZWFrIC5hdXRob3ItbGluZSxcbiAgICAuYnJvd3NlLWJ5LWNhdGVnb3J5IC5jYXRlZ29yeS1jZWxsIC5jb250ZW50LWNvbCAuY2F0ZWdvcnktdGl0bGUsXG4gICAgLnNlYXJjaC1yZXN1bHQtaXRlbSAuY29udGVudC1jZWxsIC5pdGVtLXRpdGxlIHtcbiAgICAgIGZvbnQtc2l6ZTogMS4zMTI1cmVtOyB9IH1cblxuXG4uc2hvdy1hcy1oNSxcbi5wb3N0LW1ldGEubGFyZ2UgLmF1dGhvci1uYW1lIHtcbiAgZm9udC1zaXplOiAxLjEyNXJlbTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIFxuICAgIC5zaG93LWFzLWg1LFxuICAgIC5wb3N0LW1ldGEubGFyZ2UgLmF1dGhvci1uYW1lIHtcbiAgICAgIGZvbnQtc2l6ZTogMS4xMjVyZW07IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIFxuICAgIC5zaG93LWFzLWg1LFxuICAgIC5wb3N0LW1ldGEubGFyZ2UgLmF1dGhvci1uYW1lIHtcbiAgICAgIGZvbnQtc2l6ZTogMS4xMjVyZW07IH0gfVxuXG5cbi5zaG93LWFzLWg2LFxuLmFyY2hpdmUtY29udGVudCAuYXJjaGl2ZS10aWxlIC5lbnRyeS1jb250ZW50IC5lbnRyeS10aXRsZSxcbi5wb3N0LW5hdmlnYXRpb24gLnZpZXctYWxsLWJ1dHRvbiB7XG4gIGZvbnQtc2l6ZTogMXJlbTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIFxuICAgIC5zaG93LWFzLWg2LFxuICAgIC5hcmNoaXZlLWNvbnRlbnQgLmFyY2hpdmUtdGlsZSAuZW50cnktY29udGVudCAuZW50cnktdGl0bGUsXG4gICAgLnBvc3QtbmF2aWdhdGlvbiAudmlldy1hbGwtYnV0dG9uIHtcbiAgICAgIGZvbnQtc2l6ZTogMXJlbTsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgXG4gICAgLnNob3ctYXMtaDYsXG4gICAgLmFyY2hpdmUtY29udGVudCAuYXJjaGl2ZS10aWxlIC5lbnRyeS1jb250ZW50IC5lbnRyeS10aXRsZSxcbiAgICAucG9zdC1uYXZpZ2F0aW9uIC52aWV3LWFsbC1idXR0b24ge1xuICAgICAgZm9udC1zaXplOiAxcmVtOyB9IH1cblxuLnBvc3QtbmF2aWdhdGlvbiB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmZmZmY7XG4gIHBhZGRpbmc6IDFyZW0gMCAxLjVyZW07XG4gIHdpZHRoOiAxMDAlO1xuICBmb250LXdlaWdodDogNjAwO1xuICBib3JkZXItdG9wOiBzb2xpZCAxcHggI2U2ZTZlNjsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5wb3N0LW5hdmlnYXRpb24ge1xuICAgICAgcGFkZGluZy10b3A6IDJyZW07XG4gICAgICBwYWRkaW5nLWJvdHRvbTogMi43NXJlbTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICAucG9zdC1uYXZpZ2F0aW9uIHtcbiAgICAgIHBhZGRpbmctdG9wOiAzcmVtO1xuICAgICAgcGFkZGluZy1ib3R0b206IDMuNXJlbTsgfSB9XG4gIC5wb3N0LW5hdmlnYXRpb24gLnByZXYtbGluaywgLnBvc3QtbmF2aWdhdGlvbiAubmV4dC1saW5rIHtcbiAgICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICAgIHRleHQtYWxpZ246IGxlZnQ7IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgLnBvc3QtbmF2aWdhdGlvbiAucHJldi1saW5rLCAucG9zdC1uYXZpZ2F0aW9uIC5uZXh0LWxpbmsge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICBhbGlnbi1zZWxmOiBjZW50ZXI7IH0gfVxuICAgIC5wb3N0LW5hdmlnYXRpb24gLnByZXYtbGluayA+IGEsIC5wb3N0LW5hdmlnYXRpb24gLm5leHQtbGluayA+IGEge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgcGFkZGluZy1ib3R0b206IDA7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBjb2xvcjogIzAwMDAwMDsgfVxuICAgICAgLnBvc3QtbmF2aWdhdGlvbiAucHJldi1saW5rID4gYTphZnRlciwgLnBvc3QtbmF2aWdhdGlvbiAubmV4dC1saW5rID4gYTphZnRlciB7XG4gICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgaGVpZ2h0OiAycHg7XG4gICAgICAgIHdpZHRoOiAwO1xuICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICAgICAgdHJhbnNpdGlvbjogd2lkdGggLjVzIGVhc2UsIGJhY2tncm91bmQtY29sb3IgLjVzIGVhc2U7XG4gICAgICAgIG1hcmdpbi10b3A6IDNweDsgfVxuICAgICAgLnBvc3QtbmF2aWdhdGlvbiAucHJldi1saW5rID4gYTpob3ZlcjphZnRlciwgLnBvc3QtbmF2aWdhdGlvbiAucHJldi1saW5rID4gYTpmb2N1czphZnRlciwgLnBvc3QtbmF2aWdhdGlvbiAucHJldi1saW5rID4gYTphY3RpdmU6YWZ0ZXIsIC5wb3N0LW5hdmlnYXRpb24gLm5leHQtbGluayA+IGE6aG92ZXI6YWZ0ZXIsIC5wb3N0LW5hdmlnYXRpb24gLm5leHQtbGluayA+IGE6Zm9jdXM6YWZ0ZXIsIC5wb3N0LW5hdmlnYXRpb24gLm5leHQtbGluayA+IGE6YWN0aXZlOmFmdGVyIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGJhY2tncm91bmQ6ICMwMDAwMDA7IH1cbiAgLnBvc3QtbmF2aWdhdGlvbiAucHJldi1saW5rID4gYTo6YWZ0ZXIge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICByaWdodDogMHJlbTtcbiAgICBib3R0b206IC0ycHg7IH1cbiAgLnBvc3QtbmF2aWdhdGlvbiAubmV4dC1saW5rIHtcbiAgICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICAgIHRleHQtYWxpZ246IHJpZ2h0OyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIC5wb3N0LW5hdmlnYXRpb24gLm5leHQtbGluayB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgIGFsaWduLXNlbGY6IGNlbnRlcjsgfSB9XG4gIC5wb3N0LW5hdmlnYXRpb24gLnZpZXctYWxsLWJ1dHRvbiB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gICAgLnBvc3QtbmF2aWdhdGlvbiAudmlldy1hbGwtYnV0dG9uIGEge1xuICAgICAgYm9yZGVyOiAzcHggc29saWQgcmdiYSgxLCA4NiwgMTUxLCAwLjQpO1xuICAgICAgbGV0dGVyLXNwYWNpbmc6IDByZW07XG4gICAgICBwYWRkaW5nOiAwLjc1cmVtIDFyZW07XG4gICAgICBtYXJnaW4tYm90dG9tOiAwOyB9XG4gICAgICAucG9zdC1uYXZpZ2F0aW9uIC52aWV3LWFsbC1idXR0b24gYTpob3ZlciwgLnBvc3QtbmF2aWdhdGlvbiAudmlldy1hbGwtYnV0dG9uIGE6YWN0aXZlLCAucG9zdC1uYXZpZ2F0aW9uIC52aWV3LWFsbC1idXR0b24gYTpmb2N1cyB7XG4gICAgICAgIGNvbG9yOiAjZmZmZmZmO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMkRDOUQ3OyB9XG5cbi5iYW5uZXItcGFnZS1icmVhayB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgcGFkZGluZy10b3A6IDlyZW07XG4gIHBhZGRpbmctYm90dG9tOiA5cmVtO1xuICBjb2xvcjogI2ZmZmZmZjsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5iYW5uZXItcGFnZS1icmVhayB7XG4gICAgICBwYWRkaW5nLXRvcDogMTcuNXJlbTtcbiAgICAgIHBhZGRpbmctYm90dG9tOiAxNy41cmVtOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuYmFubmVyLXBhZ2UtYnJlYWsge1xuICAgICAgcGFkZGluZy10b3A6IDE1cmVtO1xuICAgICAgcGFkZGluZy1ib3R0b206IDE1cmVtOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgIC5iYW5uZXItcGFnZS1icmVhayB7XG4gICAgICBwYWRkaW5nLXRvcDogMThyZW07XG4gICAgICBwYWRkaW5nLWJvdHRvbTogMThyZW07IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5MGVtKSB7XG4gICAgLmJhbm5lci1wYWdlLWJyZWFrIHtcbiAgICAgIHBhZGRpbmctdG9wOiAxOHJlbTtcbiAgICAgIHBhZGRpbmctYm90dG9tOiAxOHJlbTsgfSB9XG4gIC5iYW5uZXItcGFnZS1icmVhazo6YWZ0ZXIge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBjb250ZW50OiAnJztcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDMsIDQ4LCA1MiwgMC4yKTtcbiAgICB0b3A6IDA7XG4gICAgYm90dG9tOiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgei1pbmRleDogMTsgfVxuICAuYmFubmVyLXBhZ2UtYnJlYWsgPiAuZ3JpZC1jb250YWluZXIsIC5iYW5uZXItcGFnZS1icmVhayA+IC50b3AtYmFyIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgei1pbmRleDogMjsgfVxuICAuYmFubmVyLXBhZ2UtYnJlYWsgLmF1dGhvci1saW5lIHtcbiAgICBmb250LXdlaWdodDogNzAwICFpbXBvcnRhbnQ7XG4gICAgbWFyZ2luLXRvcDogNC41cmVtOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIC5iYW5uZXItcGFnZS1icmVhayAuYXV0aG9yLWxpbmUge1xuICAgICAgICBtYXJnaW4tdG9wOiA4Ljc1cmVtOyB9IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgLmJhbm5lci1wYWdlLWJyZWFrIC5hdXRob3ItbGluZSB7XG4gICAgICAgIG1hcmdpbi10b3A6IDcuNXJlbTsgfSB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgICAgLmJhbm5lci1wYWdlLWJyZWFrIC5hdXRob3ItbGluZSB7XG4gICAgICAgIG1hcmdpbi10b3A6IDlyZW07IH0gfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDkwZW0pIHtcbiAgICAgIC5iYW5uZXItcGFnZS1icmVhayAuYXV0aG9yLWxpbmUge1xuICAgICAgICBtYXJnaW4tdG9wOiA5cmVtOyB9IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45Mzc1ZW0pIHtcbiAgICAgIC5iYW5uZXItcGFnZS1icmVhayAuYXV0aG9yLWxpbmUge1xuICAgICAgICBmb250LXNpemU6IDEuMTI1cmVtOyB9IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgLmJhbm5lci1wYWdlLWJyZWFrIC5hdXRob3ItbGluZSB7XG4gICAgICAgIG1hcmdpbi10b3A6IDEuMTI1cmVtOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLmJhbm5lci1wYWdlLWJyZWFrIC5hdXRob3ItbGluZSB7XG4gICAgICBtYXJnaW4tdG9wOiAyLjE4NzVyZW07IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkgYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuYmFubmVyLXBhZ2UtYnJlYWsgLmF1dGhvci1saW5lIHtcbiAgICAgIG1hcmdpbi10b3A6IDEuODc1cmVtOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkgYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICAuYmFubmVyLXBhZ2UtYnJlYWsgLmF1dGhvci1saW5lIHtcbiAgICAgIG1hcmdpbi10b3A6IDIuMjVyZW07IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSBhbmQgKG1pbi13aWR0aDogOTBlbSkge1xuICAgIC5iYW5uZXItcGFnZS1icmVhayAuYXV0aG9yLWxpbmUge1xuICAgICAgbWFyZ2luLXRvcDogMi4yNXJlbTsgfSB9XG4gIC5iYW5uZXItcGFnZS1icmVhayAuY29udGVudC13cmFwcGVyIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgei1pbmRleDogMjtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgbWFyZ2luOiAwIGF1dG87IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgLmJhbm5lci1wYWdlLWJyZWFrIC5jb250ZW50LXdyYXBwZXIubGVmdCB7XG4gICAgICAgIG1hcmdpbjogMCBhdXRvIDAgMDtcbiAgICAgICAgdGV4dC1hbGlnbjogbGVmdDsgfSB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgIC5iYW5uZXItcGFnZS1icmVhayAuY29udGVudC13cmFwcGVyLnJpZ2h0IHtcbiAgICAgICAgbWFyZ2luOiAwIDAgMCBhdXRvO1xuICAgICAgICB0ZXh0LWFsaWduOiByaWdodDsgfSB9XG4gIC5iYW5uZXItcGFnZS1icmVhayAuYmFubmVyLWltYWdlIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgei1pbmRleDogMDtcbiAgICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICByaWdodDogMDtcbiAgICBib3R0b206IDA7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIHdpZHRoOiAxMDAlOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5LjkzNzVlbSkge1xuICAgIC5iYW5uZXItcGFnZS1icmVhayNiYW5uZXItcGFnZS1icmVhay0zLmFkanVzdGVkLW1vYmlsZS1pbWFnZSAuYmFubmVyLWltYWdlIHtcbiAgICAgIG9iamVjdC1wb3NpdGlvbjogNzIlOyB9IH1cblxuLmljb24tdGV4dC1ncmlkIHtcbiAgcGFkZGluZy10b3A6IDEuNXJlbTtcbiAgcGFkZGluZy1ib3R0b206IDEuNXJlbTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5pY29uLXRleHQtZ3JpZCB7XG4gICAgICBwYWRkaW5nLXRvcDogMi45MTY2N3JlbTtcbiAgICAgIHBhZGRpbmctYm90dG9tOiAyLjkxNjY3cmVtOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuaWNvbi10ZXh0LWdyaWQge1xuICAgICAgcGFkZGluZy10b3A6IDIuNXJlbTtcbiAgICAgIHBhZGRpbmctYm90dG9tOiAyLjVyZW07IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgLmljb24tdGV4dC1ncmlkIHtcbiAgICAgIHBhZGRpbmctdG9wOiAzcmVtO1xuICAgICAgcGFkZGluZy1ib3R0b206IDNyZW07IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5MGVtKSB7XG4gICAgLmljb24tdGV4dC1ncmlkIHtcbiAgICAgIHBhZGRpbmctdG9wOiAzcmVtO1xuICAgICAgcGFkZGluZy1ib3R0b206IDNyZW07IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5pY29uLXRleHQtZ3JpZCB7XG4gICAgICBwYWRkaW5nLXRvcDogMS4xMjVyZW07XG4gICAgICBwYWRkaW5nLWJvdHRvbTogMS4xMjVyZW07IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkgYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuaWNvbi10ZXh0LWdyaWQge1xuICAgICAgcGFkZGluZy10b3A6IDIuMTg3NXJlbTtcbiAgICAgIHBhZGRpbmctYm90dG9tOiAyLjE4NzVyZW07IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkgYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuaWNvbi10ZXh0LWdyaWQge1xuICAgICAgcGFkZGluZy10b3A6IDEuODc1cmVtO1xuICAgICAgcGFkZGluZy1ib3R0b206IDEuODc1cmVtOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkgYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICAuaWNvbi10ZXh0LWdyaWQge1xuICAgICAgcGFkZGluZy10b3A6IDIuMjVyZW07XG4gICAgICBwYWRkaW5nLWJvdHRvbTogMi4yNXJlbTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIGFuZCAobWluLXdpZHRoOiA5MGVtKSB7XG4gICAgLmljb24tdGV4dC1ncmlkIHtcbiAgICAgIHBhZGRpbmctdG9wOiAyLjI1cmVtO1xuICAgICAgcGFkZGluZy1ib3R0b206IDIuMjVyZW07IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45Mzc1ZW0pIHtcbiAgICAuaWNvbi10ZXh0LWdyaWQgLmlubmVyLWdyaWQge1xuICAgICAgbWFyZ2luLWJvdHRvbTogLTEuMTI1cmVtOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTM3NWVtKSBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5pY29uLXRleHQtZ3JpZCAuaW5uZXItZ3JpZCB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAtMi4xODc1cmVtOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTM3NWVtKSBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5pY29uLXRleHQtZ3JpZCAuaW5uZXItZ3JpZCB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAtMS44NzVyZW07IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45Mzc1ZW0pIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgLmljb24tdGV4dC1ncmlkIC5pbm5lci1ncmlkIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IC0yLjI1cmVtOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTM3NWVtKSBhbmQgKG1pbi13aWR0aDogOTBlbSkge1xuICAgIC5pY29uLXRleHQtZ3JpZCAuaW5uZXItZ3JpZCB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAtMi4yNXJlbTsgfSB9XG4gIC5pY29uLXRleHQtZ3JpZCAuaW5uZXItZ3JpZCAuY2VsbCB7XG4gICAgZGlzcGxheTogZmxleDsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjkzNzVlbSkge1xuICAgICAgLmljb24tdGV4dC1ncmlkIC5pbm5lci1ncmlkIC5jZWxsIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMS4xMjVyZW07IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45Mzc1ZW0pIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLmljb24tdGV4dC1ncmlkIC5pbm5lci1ncmlkIC5jZWxsIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDIuMTg3NXJlbTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjkzNzVlbSkgYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuaWNvbi10ZXh0LWdyaWQgLmlubmVyLWdyaWQgLmNlbGwge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMS44NzVyZW07IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45Mzc1ZW0pIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgLmljb24tdGV4dC1ncmlkIC5pbm5lci1ncmlkIC5jZWxsIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDIuMjVyZW07IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45Mzc1ZW0pIGFuZCAobWluLXdpZHRoOiA5MGVtKSB7XG4gICAgLmljb24tdGV4dC1ncmlkIC5pbm5lci1ncmlkIC5jZWxsIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDIuMjVyZW07IH0gfVxuICAgIC5pY29uLXRleHQtZ3JpZCAuaW5uZXItZ3JpZCAuY2VsbCAuY2VsbC1jb250ZW50IHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7IH1cbiAgLmljb24tdGV4dC1ncmlkIC5pY29uLXdyYXAge1xuICAgIG1pbi13aWR0aDogMS41cmVtOyB9XG4gICAgLmljb24tdGV4dC1ncmlkIC5pY29uLXdyYXAgPiBpbWcge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICB3aWR0aDogYXV0bzsgfVxuICAuaWNvbi10ZXh0LWdyaWQgLmNvbnRlbnQtd3JhcCB7XG4gICAgcGFkZGluZy1sZWZ0OiA5cHg7IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgLmljb24tdGV4dC1ncmlkIC5jb250ZW50LXdyYXAge1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDEwcHg7IH0gfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAuaWNvbi10ZXh0LWdyaWQgLmNvbnRlbnQtd3JhcCB7XG4gICAgICAgIHBhZGRpbmctbGVmdDogMTJweDsgfSB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgICAgLmljb24tdGV4dC1ncmlkIC5jb250ZW50LXdyYXAge1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDEycHg7IH0gfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDkwZW0pIHtcbiAgICAgIC5pY29uLXRleHQtZ3JpZCAuY29udGVudC13cmFwIHtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAxMnB4OyB9IH1cblxuLmltYWdlLXdpdGgtYnViYmxlIHtcbiAgcGFkZGluZy10b3A6IDQuNXJlbTtcbiAgcGFkZGluZy1ib3R0b206IDQuNXJlbTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5pbWFnZS13aXRoLWJ1YmJsZSB7XG4gICAgICBwYWRkaW5nLXRvcDogOC43NXJlbTtcbiAgICAgIHBhZGRpbmctYm90dG9tOiA4Ljc1cmVtOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuaW1hZ2Utd2l0aC1idWJibGUge1xuICAgICAgcGFkZGluZy10b3A6IDcuNXJlbTtcbiAgICAgIHBhZGRpbmctYm90dG9tOiA3LjVyZW07IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgLmltYWdlLXdpdGgtYnViYmxlIHtcbiAgICAgIHBhZGRpbmctdG9wOiA5cmVtO1xuICAgICAgcGFkZGluZy1ib3R0b206IDlyZW07IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5MGVtKSB7XG4gICAgLmltYWdlLXdpdGgtYnViYmxlIHtcbiAgICAgIHBhZGRpbmctdG9wOiA5cmVtO1xuICAgICAgcGFkZGluZy1ib3R0b206IDlyZW07IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSBhbmQgKG1heC13aWR0aDogNjMuOTM3NWVtKSB7XG4gICAgLmltYWdlLXdpdGgtYnViYmxlIHtcbiAgICAgIHBhZGRpbmctdG9wOiAzcmVtO1xuICAgICAgcGFkZGluZy1ib3R0b206IDNyZW07IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSBhbmQgKG1heC13aWR0aDogNjMuOTM3NWVtKSBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5pbWFnZS13aXRoLWJ1YmJsZSB7XG4gICAgICBwYWRkaW5nLXRvcDogNS44MzMzM3JlbTtcbiAgICAgIHBhZGRpbmctYm90dG9tOiA1LjgzMzMzcmVtOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkgYW5kIChtYXgtd2lkdGg6IDYzLjkzNzVlbSkgYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuaW1hZ2Utd2l0aC1idWJibGUge1xuICAgICAgcGFkZGluZy10b3A6IDVyZW07XG4gICAgICBwYWRkaW5nLWJvdHRvbTogNXJlbTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIGFuZCAobWF4LXdpZHRoOiA2My45Mzc1ZW0pIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgLmltYWdlLXdpdGgtYnViYmxlIHtcbiAgICAgIHBhZGRpbmctdG9wOiA2cmVtO1xuICAgICAgcGFkZGluZy1ib3R0b206IDZyZW07IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSBhbmQgKG1heC13aWR0aDogNjMuOTM3NWVtKSBhbmQgKG1pbi13aWR0aDogOTBlbSkge1xuICAgIC5pbWFnZS13aXRoLWJ1YmJsZSB7XG4gICAgICBwYWRkaW5nLXRvcDogNnJlbTtcbiAgICAgIHBhZGRpbmctYm90dG9tOiA2cmVtOyB9IH1cbiAgLmltYWdlLXdpdGgtYnViYmxlIC5pbWFnZS1jZWxsIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIG1hcmdpbi1ib3R0b206IDIuMjVyZW07IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgLmltYWdlLXdpdGgtYnViYmxlIC5pbWFnZS1jZWxsIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogNC4zNzVyZW07IH0gfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAuaW1hZ2Utd2l0aC1idWJibGUgLmltYWdlLWNlbGwge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAzLjc1cmVtOyB9IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgICAuaW1hZ2Utd2l0aC1idWJibGUgLmltYWdlLWNlbGwge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiA0LjVyZW07IH0gfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDkwZW0pIHtcbiAgICAgIC5pbWFnZS13aXRoLWJ1YmJsZSAuaW1hZ2UtY2VsbCB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDQuNXJlbTsgfSB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIC5pbWFnZS13aXRoLWJ1YmJsZSAuaW1hZ2UtY2VsbCB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDEuMTI1cmVtO1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5pbWFnZS13aXRoLWJ1YmJsZSAuaW1hZ2UtY2VsbCB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAyLjE4NzVyZW07IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkgYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuaW1hZ2Utd2l0aC1idWJibGUgLmltYWdlLWNlbGwge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMS44NzVyZW07IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgIC5pbWFnZS13aXRoLWJ1YmJsZSAuaW1hZ2UtY2VsbCB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAyLjI1cmVtOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkgYW5kIChtaW4td2lkdGg6IDkwZW0pIHtcbiAgICAuaW1hZ2Utd2l0aC1idWJibGUgLmltYWdlLWNlbGwge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMi4yNXJlbTsgfSB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgIC5pbWFnZS13aXRoLWJ1YmJsZSAuaW1hZ2UtY2VsbCB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7IH0gfVxuICAuaW1hZ2Utd2l0aC1idWJibGUgLnRleHQtb3ZlcmxheSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIGZvbnQtZmFtaWx5OiBcImdvcmRpdGFib2xkXCIsIC1hcHBsZS1zeXN0ZW0sIEJsaW5rTWFjU3lzdGVtRm9udCwgXCJTZWdvZSBVSVwiLCBcIlJvYm90b1wiLCBcIk94eWdlblwiLCBcIlVidW50dVwiLCBcIkNhbnRhcmVsbFwiLCBcIkZpcmEgU2Fuc1wiLCBcIkRyb2lkIFNhbnNcIiwgXCJIZWx2ZXRpY2EgTmV1ZVwiLCBzYW5zLXNlcmlmO1xuICAgIGNvbG9yOiAjMjEyMTIxO1xuICAgIHdpZHRoOiA2MCU7XG4gICAgZm9udC1zaXplOiAwLjg3NXJlbTsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAuaW1hZ2Utd2l0aC1idWJibGUgLnRleHQtb3ZlcmxheSB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICB6LWluZGV4OiAzO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICB3aWR0aDogYXV0bzsgfSB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgIC5pbWFnZS13aXRoLWJ1YmJsZSAudGV4dC1vdmVybGF5IHNwYW46Zmlyc3QtY2hpbGQge1xuICAgICAgICBmb250LXNpemU6IDEuMTI1cmVtOyB9IH1cbiAgLmltYWdlLXdpdGgtYnViYmxlIC5pbWFnZS13cmFwIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIHdpZHRoOiAxMDAlOyB9XG4gICAgLmltYWdlLXdpdGgtYnViYmxlIC5pbWFnZS13cmFwIC50ZXh0LW92ZXJsYXkge1xuICAgICAgY29sb3I6ICNmZmZmZmY7XG4gICAgICB0b3A6IDIwJTtcbiAgICAgIGxlZnQ6IDUwJTtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMTEwJSk7IH1cbiAgICAuaW1hZ2Utd2l0aC1idWJibGUgLmltYWdlLXdyYXAgLmJ1YmJsZS1saW5rIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGJvdHRvbTogMS41cmVtO1xuICAgICAgcGFkZGluZy1sZWZ0OiAycmVtO1xuICAgICAgcGFkZGluZy1yaWdodDogMnJlbTtcbiAgICAgIGxlZnQ6IDUwJTtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMTQwJSk7IH1cbiAgICAuaW1hZ2Utd2l0aC1idWJibGUgLmltYWdlLXdyYXAgLmdvYWwtaW1hZ2Uge1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgb2JqZWN0LWZpdDogY292ZXI7XG4gICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgICAgaGVpZ2h0OiAxNS45Mzc1cmVtO1xuICAgICAgbWF4LWhlaWdodDogMTUuOTM3NXJlbTtcbiAgICAgIHdpZHRoOiAxNS45Mzc1cmVtOyB9XG4gICAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgICAuaW1hZ2Utd2l0aC1idWJibGUgLmltYWdlLXdyYXAgLmdvYWwtaW1hZ2Uge1xuICAgICAgICAgIGhlaWdodDogMjEuMDYyNXJlbTtcbiAgICAgICAgICBtYXgtaGVpZ2h0OiAyMS4wNjI1cmVtO1xuICAgICAgICAgIHdpZHRoOiAyMS4wNjI1cmVtOyB9IH1cbiAgICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAgIC5pbWFnZS13aXRoLWJ1YmJsZSAuaW1hZ2Utd3JhcCAuZ29hbC1pbWFnZSB7XG4gICAgICAgICAgaGVpZ2h0OiAzMHJlbTtcbiAgICAgICAgICBtYXgtaGVpZ2h0OiAzMHJlbTtcbiAgICAgICAgICB3aWR0aDogMzByZW07IH0gfVxuICAuaW1hZ2Utd2l0aC1idWJibGUgLmNvbnRlbnQtY2VsbCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyOyB9XG4gIC5pbWFnZS13aXRoLWJ1YmJsZSAuc2VjdGlvbi10aXRsZSwgLmltYWdlLXdpdGgtYnViYmxlIC5zZWN0aW9uLWNvbnRlbnQge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAuaW1hZ2Utd2l0aC1idWJibGUgLnNlY3Rpb24tdGl0bGUsIC5pbWFnZS13aXRoLWJ1YmJsZSAuc2VjdGlvbi1jb250ZW50IHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMS41cmVtOyB9IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgLmltYWdlLXdpdGgtYnViYmxlIC5zZWN0aW9uLXRpdGxlLCAuaW1hZ2Utd2l0aC1idWJibGUgLnNlY3Rpb24tY29udGVudCB7XG4gICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDIuNXJlbTsgfSB9XG4gIC5pbWFnZS13aXRoLWJ1YmJsZSAuc2VjdGlvbi1jb250ZW50IHtcbiAgICBtYXJnaW4tYm90dG9tOiAyLjVyZW07IH1cbiAgICAuaW1hZ2Utd2l0aC1idWJibGUgLnNlY3Rpb24tY29udGVudCBwIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7IH1cbiAgICAgIC5pbWFnZS13aXRoLWJ1YmJsZSAuc2VjdGlvbi1jb250ZW50IHA6bm90KDpsYXN0LWNoaWxkKSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDFyZW07IH1cbiAgLmltYWdlLXdpdGgtYnViYmxlIC5idXR0b24td3JhcCB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgIC5pbWFnZS13aXRoLWJ1YmJsZSAuYnV0dG9uLXdyYXAge1xuICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0OyB9IH1cblxuQGtleWZyYW1lcyBkYXNoLXRpY2tlci1kb3duIHtcbiAgZnJvbSB7XG4gICAgc3Ryb2tlLWRhc2hvZmZzZXQ6IDExMjsgfVxuICB0byB7XG4gICAgc3Ryb2tlLWRhc2hvZmZzZXQ6IDA7IH0gfVxuXG5Aa2V5ZnJhbWVzIGRhc2gtdGlja2VyLXVwIHtcbiAgZnJvbSB7XG4gICAgc3Ryb2tlLWRhc2hvZmZzZXQ6IDg7IH1cbiAgdG8ge1xuICAgIHN0cm9rZS1kYXNob2Zmc2V0OiAxMTI7IH0gfVxuXG4uZGFzaC10aWNrZXItbGluZS1kb3duIHBhdGgsIC5pY29uLWJ1YmJsZS1waW4gLmRhc2hlZC1saW5lIHBhdGgsIC5idWJibGUtcGluIC5kYXNoZWQtbGluZSBwYXRoIHtcbiAgc3Ryb2tlLWRhc2hvZmZzZXQ6IDg7XG4gIGFuaW1hdGlvbjogZGFzaC10aWNrZXItZG93biA1cyBsaW5lYXIgaW5maW5pdGU7IH1cblxuLmRhc2gtdGlja2VyLWxpbmUtdXAgcGF0aCB7XG4gIHN0cm9rZS1kYXNob2Zmc2V0OiA4O1xuICBhbmltYXRpb246IGRhc2gtdGlja2VyLXVwIDVzIGxpbmVhciBpbmZpbml0ZTsgfVxuXG5Aa2V5ZnJhbWVzIGJ1YmJsZS1waW4tcHVsc2Utc21hbGwge1xuICAwJSB7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgwLjk1KSB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG4gICAgYm94LXNoYWRvdzogMCAwIDAgMCByZ2JhKDQ1LCAyMDEsIDIxNSwgMC43KTsgfVxuICA3MCUge1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMC45NSkgdHJhbnNsYXRlKC01MCUsIC01MCUpO1xuICAgIGJveC1zaGFkb3c6IDAgMCAwIDUwcHggcmdiYSg0NSwgMjAxLCAyMTUsIDApOyB9XG4gIDEwMCUge1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMC45NSkgdHJhbnNsYXRlKC01MCUsIC01MCUpO1xuICAgIGJveC1zaGFkb3c6IDAgMCAwIDAgcmdiYSg0NSwgMjAxLCAyMTUsIDApOyB9IH1cblxuQGtleWZyYW1lcyBidWJibGUtcGluLXB1bHNlIHtcbiAgMCUge1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMC45NSkgdHJhbnNsYXRlKC01MCUsIC01MCUpO1xuICAgIGJveC1zaGFkb3c6IDAgMCAwIDAgcmdiYSg0NSwgMjAxLCAyMTUsIDAuNyk7IH1cbiAgNzAlIHtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDEuMSkgdHJhbnNsYXRlKC01MCUsIC01MCUpO1xuICAgIGJveC1zaGFkb3c6IDAgMCAwIDUwcHggcmdiYSg0NSwgMjAxLCAyMTUsIDApOyB9XG4gIDEwMCUge1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMC45NSkgdHJhbnNsYXRlKC01MCUsIC01MCUpO1xuICAgIGJveC1zaGFkb3c6IDAgMCAwIDAgcmdiYSg0NSwgMjAxLCAyMTUsIDApOyB9IH1cblxuLmljb24tYnViYmxlLXBpbiB7XG4gIGhlaWdodDogNy43NXJlbTtcbiAgd2lkdGg6IDcuNzVyZW07XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIHBhZGRpbmc6IDAuNXJlbTtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzJEQzlENztcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xuICBtYXJnaW4tbGVmdDogYXV0bztcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICBtYXJnaW4tdG9wOiAzLjM5MDYycmVtO1xuICBtYXJnaW4tYm90dG9tOiA3LjA2MjVyZW07IH1cbiAgLmljb24tYnViYmxlLXBpbjo6YWZ0ZXIge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDUwJTtcbiAgICBsZWZ0OiA1MCU7XG4gICAgY29udGVudDogJyc7XG4gICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoNDUsIDIwMSwgMjE1LCAwLjMpO1xuICAgIGhlaWdodDogMTc1JTtcbiAgICB3aWR0aDogMTc1JTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDEpIHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcbiAgICB0cmFuc2Zvcm0tb3JpZ2luOiAwIDA7XG4gICAgYW5pbWF0aW9uOiBidWJibGUtcGluLXB1bHNlLXNtYWxsIDJzIGluZmluaXRlOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIC5pY29uLWJ1YmJsZS1waW46OmFmdGVyIHtcbiAgICAgICAgYW5pbWF0aW9uOiBidWJibGUtcGluLXB1bHNlIDJzIGluZmluaXRlOyB9IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAoLW1zLWhpZ2gtY29udHJhc3Q6IGFjdGl2ZSksICgtbXMtaGlnaC1jb250cmFzdDogbm9uZSkge1xuICAgICAgLmljb24tYnViYmxlLXBpbjo6YWZ0ZXIge1xuICAgICAgICBhbmltYXRpb246IG5vbmU7IH0gfVxuICAuaWNvbi1idWJibGUtcGluLmxpbmUtdG9wIHtcbiAgICBtYXJnaW4tdG9wOiA3LjA2MjVyZW07XG4gICAgbWFyZ2luLWJvdHRvbTogMy4zOTA2MnJlbTsgfVxuICAgIC5pY29uLWJ1YmJsZS1waW4ubGluZS10b3AgLmRhc2hlZC1saW5lIHtcbiAgICAgIHRvcDogdW5zZXQ7XG4gICAgICBib3R0b206IDUwJTtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCg1MCUpOyB9XG4gIC5pY29uLWJ1YmJsZS1waW4gaW1nIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXgtd2lkdGg6IDQuNXJlbTtcbiAgICBtYXgtaGVpZ2h0OiA0LjVyZW07XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHotaW5kZXg6IDI7IH1cbiAgLmljb24tYnViYmxlLXBpbiAuZGFzaGVkLWxpbmUge1xuICAgIGhlaWdodDogMTAuOTM3NXJlbTtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiA1MCU7XG4gICAgbGVmdDogNTAlO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTsgfVxuXG5Aa2V5ZnJhbWVzIGJ1YmJsZS1waW4tcHVsc2Utc20ge1xuICAwJSB7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgwLjk1KTtcbiAgICBib3gtc2hhZG93OiAwIDAgMCAwIHJnYmEoNDUsIDIwMSwgMjE1LCAwLjcpOyB9XG4gIDcwJSB7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgxLjEpO1xuICAgIGJveC1zaGFkb3c6IDAgMCAwIDIwcHggcmdiYSg0NSwgMjAxLCAyMTUsIDApOyB9XG4gIDEwMCUge1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMC45NSk7XG4gICAgYm94LXNoYWRvdzogMCAwIDAgMCByZ2JhKDQ1LCAyMDEsIDIxNSwgMCk7IH0gfVxuXG4uYnViYmxlLXBpbiB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZmxvdzogY29sdW1uO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgd2lkdGg6IDIwcHg7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAuYnViYmxlLXBpbiAuZG90IHtcbiAgICBoZWlnaHQ6IDEuMjVyZW07XG4gICAgd2lkdGg6IDEuMjVyZW07XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzJEQzlENztcbiAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgxKTtcbiAgICBhbmltYXRpb246IGJ1YmJsZS1waW4tcHVsc2Utc20gMnMgaW5maW5pdGU7IH1cbiAgLmJ1YmJsZS1waW4gLmRhc2hlZC1saW5lIHtcbiAgICBoZWlnaHQ6IDQ4cHg7IH1cblxuLnRleHQtY3RhLndpdGgtcmVwZWF0ZXIgLnNlY3Rpb24tY29udGVudCB7XG4gIG1hcmdpbi1ib3R0b206IDEuNXJlbTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC50ZXh0LWN0YS53aXRoLXJlcGVhdGVyIC5zZWN0aW9uLWNvbnRlbnQge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMi45MTY2N3JlbTsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLnRleHQtY3RhLndpdGgtcmVwZWF0ZXIgLnNlY3Rpb24tY29udGVudCB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAyLjVyZW07IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgLnRleHQtY3RhLndpdGgtcmVwZWF0ZXIgLnNlY3Rpb24tY29udGVudCB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAzcmVtOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTBlbSkge1xuICAgIC50ZXh0LWN0YS53aXRoLXJlcGVhdGVyIC5zZWN0aW9uLWNvbnRlbnQge1xuICAgICAgbWFyZ2luLWJvdHRvbTogM3JlbTsgfSB9XG5cbi50ZXh0LWN0YSAuY29udGVudC1jZWxsIHtcbiAgcGFkZGluZy10b3A6IDIuMjVyZW07XG4gIHBhZGRpbmctYm90dG9tOiAyLjI1cmVtO1xuICBwYWRkaW5nLWxlZnQ6IDEuNXJlbTtcbiAgcGFkZGluZy1yaWdodDogMS41cmVtO1xuICBtYXJnaW4tYm90dG9tOiAyLjI1cmVtO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjdmN2Y3O1xuICBib3JkZXItcmFkaXVzOiAyMHB4O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAudGV4dC1jdGEgLmNvbnRlbnQtY2VsbCB7XG4gICAgICBwYWRkaW5nLXRvcDogNC4zNzVyZW07XG4gICAgICBwYWRkaW5nLWJvdHRvbTogNC4zNzVyZW07IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC50ZXh0LWN0YSAuY29udGVudC1jZWxsIHtcbiAgICAgIHBhZGRpbmctdG9wOiAzLjc1cmVtO1xuICAgICAgcGFkZGluZy1ib3R0b206IDMuNzVyZW07IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgLnRleHQtY3RhIC5jb250ZW50LWNlbGwge1xuICAgICAgcGFkZGluZy10b3A6IDQuNXJlbTtcbiAgICAgIHBhZGRpbmctYm90dG9tOiA0LjVyZW07IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5MGVtKSB7XG4gICAgLnRleHQtY3RhIC5jb250ZW50LWNlbGwge1xuICAgICAgcGFkZGluZy10b3A6IDQuNXJlbTtcbiAgICAgIHBhZGRpbmctYm90dG9tOiA0LjVyZW07IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC50ZXh0LWN0YSAuY29udGVudC1jZWxsIHtcbiAgICAgIHBhZGRpbmctbGVmdDogNC4zNzVyZW07XG4gICAgICBwYWRkaW5nLXJpZ2h0OiA0LjM3NXJlbTsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLnRleHQtY3RhIC5jb250ZW50LWNlbGwge1xuICAgICAgcGFkZGluZy1sZWZ0OiA2LjI1cmVtO1xuICAgICAgcGFkZGluZy1yaWdodDogNi4yNXJlbTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICAudGV4dC1jdGEgLmNvbnRlbnQtY2VsbCB7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDcuNXJlbTtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDcuNXJlbTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDkwZW0pIHtcbiAgICAudGV4dC1jdGEgLmNvbnRlbnQtY2VsbCB7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDcuNXJlbTtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDcuNXJlbTsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLnRleHQtY3RhIC5jb250ZW50LWNlbGwge1xuICAgICAgbWFyZ2luLWJvdHRvbTogNC4zNzVyZW07IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC50ZXh0LWN0YSAuY29udGVudC1jZWxsIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDMuNzVyZW07IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgLnRleHQtY3RhIC5jb250ZW50LWNlbGwge1xuICAgICAgbWFyZ2luLWJvdHRvbTogNC41cmVtOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTBlbSkge1xuICAgIC50ZXh0LWN0YSAuY29udGVudC1jZWxsIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDQuNXJlbTsgfSB9XG4gIC50ZXh0LWN0YSAuY29udGVudC1jZWxsIC5zZWN0aW9uLXRpdGxlIHtcbiAgICBtYXJnaW4tYm90dG9tOiAxcmVtOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgIC50ZXh0LWN0YSAuY29udGVudC1jZWxsIC5zZWN0aW9uLXRpdGxlIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMS41cmVtOyB9IH1cbiAgLnRleHQtY3RhIC5jb250ZW50LWNlbGwgLnNlY3Rpb24tY29udGVudCA+ICoge1xuICAgIG1hcmdpbi1ib3R0b206IDA7IH1cbiAgICAudGV4dC1jdGEgLmNvbnRlbnQtY2VsbCAuc2VjdGlvbi1jb250ZW50ID4gKjpub3QoOmxhc3QtY2hpbGQpIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDFyZW07IH1cbiAgLnRleHQtY3RhIC5jb250ZW50LWNlbGwgLmxvZ28tZ3JpZCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMS41cmVtOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIC50ZXh0LWN0YSAuY29udGVudC1jZWxsIC5sb2dvLWdyaWQge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAyLjkxNjY3cmVtOyB9IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgLnRleHQtY3RhIC5jb250ZW50LWNlbGwgLmxvZ28tZ3JpZCB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDIuNXJlbTsgfSB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgICAgLnRleHQtY3RhIC5jb250ZW50LWNlbGwgLmxvZ28tZ3JpZCB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDNyZW07IH0gfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDkwZW0pIHtcbiAgICAgIC50ZXh0LWN0YSAuY29udGVudC1jZWxsIC5sb2dvLWdyaWQge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAzcmVtOyB9IH1cbiAgICAudGV4dC1jdGEgLmNvbnRlbnQtY2VsbCAubG9nby1ncmlkIC5jZWxsIHtcbiAgICAgIHBhZGRpbmctdG9wOiAxLjVyZW07XG4gICAgICBwYWRkaW5nLWJvdHRvbTogMS41cmVtO1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDEuNXJlbTtcbiAgICAgIHBhZGRpbmctbGVmdDogMS41cmVtOyB9XG4gICAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgICAudGV4dC1jdGEgLmNvbnRlbnQtY2VsbCAubG9nby1ncmlkIC5jZWxsIHtcbiAgICAgICAgICBwYWRkaW5nLXRvcDogMi45MTY2N3JlbTtcbiAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMi45MTY2N3JlbTsgfSB9XG4gICAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgICAudGV4dC1jdGEgLmNvbnRlbnQtY2VsbCAubG9nby1ncmlkIC5jZWxsIHtcbiAgICAgICAgICBwYWRkaW5nLXRvcDogMi41cmVtO1xuICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAyLjVyZW07IH0gfVxuICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgICAgICAudGV4dC1jdGEgLmNvbnRlbnQtY2VsbCAubG9nby1ncmlkIC5jZWxsIHtcbiAgICAgICAgICBwYWRkaW5nLXRvcDogM3JlbTtcbiAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogM3JlbTsgfSB9XG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5MGVtKSB7XG4gICAgICAgIC50ZXh0LWN0YSAuY29udGVudC1jZWxsIC5sb2dvLWdyaWQgLmNlbGwge1xuICAgICAgICAgIHBhZGRpbmctdG9wOiAzcmVtO1xuICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAzcmVtOyB9IH1cbiAgICAgIC50ZXh0LWN0YSAuY29udGVudC1jZWxsIC5sb2dvLWdyaWQgLmNlbGw6Zmlyc3QtY2hpbGQge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmZmZmOyB9XG4gICAgICAudGV4dC1jdGEgLmNvbnRlbnQtY2VsbCAubG9nby1ncmlkIC5jZWxsOmxhc3QtY2hpbGQge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMkRDOUQ3OyB9XG4gIC50ZXh0LWN0YSAuY29udGVudC1jZWxsIC5jb2x1bW4tZ3JpZCAuY3RhLWltYWdlIHtcbiAgICBtYXJnaW4tYm90dG9tOiAxLjVyZW07XG4gICAgYm9yZGVyLXJhZGl1czogMjBweDsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45Mzc1ZW0pIHtcbiAgICAudGV4dC1jdGEgLmNvbnRlbnQtY2VsbCAuY29sdW1uLWdyaWQgLmNlbGw6bm90KDpsYXN0LWNoaWxkKSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAyLjI1cmVtOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTM3NWVtKSBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC50ZXh0LWN0YSAuY29udGVudC1jZWxsIC5jb2x1bW4tZ3JpZCAuY2VsbDpub3QoOmxhc3QtY2hpbGQpIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDQuMzc1cmVtOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTM3NWVtKSBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC50ZXh0LWN0YSAuY29udGVudC1jZWxsIC5jb2x1bW4tZ3JpZCAuY2VsbDpub3QoOmxhc3QtY2hpbGQpIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDMuNzVyZW07IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45Mzc1ZW0pIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgLnRleHQtY3RhIC5jb250ZW50LWNlbGwgLmNvbHVtbi1ncmlkIC5jZWxsOm5vdCg6bGFzdC1jaGlsZCkge1xuICAgICAgbWFyZ2luLWJvdHRvbTogNC41cmVtOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTM3NWVtKSBhbmQgKG1pbi13aWR0aDogOTBlbSkge1xuICAgIC50ZXh0LWN0YSAuY29udGVudC1jZWxsIC5jb2x1bW4tZ3JpZCAuY2VsbDpub3QoOmxhc3QtY2hpbGQpIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDQuNXJlbTsgfSB9XG5cbi5idXR0b24sIGEuYnV0dG9uLCBpbnB1dFt0eXBlPVwic3VibWl0XCJdIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0ZDQjUzNjtcbiAgY29sb3I6ICMyMTIxMjE7XG4gIGZvbnQtZmFtaWx5OiBcImdvcmRpdGFib2xkXCIsIC1hcHBsZS1zeXN0ZW0sIEJsaW5rTWFjU3lzdGVtRm9udCwgXCJTZWdvZSBVSVwiLCBcIlJvYm90b1wiLCBcIk94eWdlblwiLCBcIlVidW50dVwiLCBcIkNhbnRhcmVsbFwiLCBcIkZpcmEgU2Fuc1wiLCBcIkRyb2lkIFNhbnNcIiwgXCJIZWx2ZXRpY2EgTmV1ZVwiLCBzYW5zLXNlcmlmO1xuICBmb250LXNpemU6IDAuODc1cmVtO1xuICBwYWRkaW5nOiAxcmVtIDEuNXJlbTtcbiAgYm9yZGVyOiBub25lO1xuICB0cmFuc2l0aW9uOiBhbGwgMC41cyBlYXNlO1xuICB3aWR0aDogMTAwJTtcbiAgbWluLXdpZHRoOiAxNC41cmVtO1xuICBib3JkZXItcmFkaXVzOiAxLjU2MjVyZW07XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgbGluZS1oZWlnaHQ6IDEuMTtcbiAgbWFyZ2luLWJvdHRvbTogMDsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5idXR0b24sIGEuYnV0dG9uLCBpbnB1dFt0eXBlPVwic3VibWl0XCJdIHtcbiAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgcGFkZGluZzogMXJlbSAycmVtOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuYnV0dG9uLCBhLmJ1dHRvbiwgaW5wdXRbdHlwZT1cInN1Ym1pdFwiXSB7XG4gICAgICBwYWRkaW5nOiAxcmVtIDJyZW07IH0gfVxuICAuYnV0dG9uIHN2ZyBwYXRoLCBhLmJ1dHRvbiBzdmcgcGF0aCwgaW5wdXRbdHlwZT1cInN1Ym1pdFwiXSBzdmcgcGF0aCB7XG4gICAgdHJhbnNpdGlvbjogYWxsIDAuNXMgZWFzZTsgfVxuICAuYnV0dG9uOmhvdmVyLCAuYnV0dG9uOmFjdGl2ZSwgLmJ1dHRvbjpmb2N1cywgYS5idXR0b246aG92ZXIsIGEuYnV0dG9uOmFjdGl2ZSwgYS5idXR0b246Zm9jdXMsIGlucHV0W3R5cGU9XCJzdWJtaXRcIl06aG92ZXIsIGlucHV0W3R5cGU9XCJzdWJtaXRcIl06YWN0aXZlLCBpbnB1dFt0eXBlPVwic3VibWl0XCJdOmZvY3VzIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjRjFBNjIyO1xuICAgIGNvbG9yOiAjMjEyMTIxOyB9XG4gICAgLmJ1dHRvbjpob3ZlciBzdmcgcGF0aCwgLmJ1dHRvbjphY3RpdmUgc3ZnIHBhdGgsIC5idXR0b246Zm9jdXMgc3ZnIHBhdGgsIGEuYnV0dG9uOmhvdmVyIHN2ZyBwYXRoLCBhLmJ1dHRvbjphY3RpdmUgc3ZnIHBhdGgsIGEuYnV0dG9uOmZvY3VzIHN2ZyBwYXRoLCBpbnB1dFt0eXBlPVwic3VibWl0XCJdOmhvdmVyIHN2ZyBwYXRoLCBpbnB1dFt0eXBlPVwic3VibWl0XCJdOmFjdGl2ZSBzdmcgcGF0aCwgaW5wdXRbdHlwZT1cInN1Ym1pdFwiXTpmb2N1cyBzdmcgcGF0aCB7XG4gICAgICBmaWxsOiAjZmZmZmZmICFpbXBvcnRhbnQ7IH1cbiAgLmJ1dHRvbi5idXR0b24tLWljb24tbGVmdCwgLmJ1dHRvbi5idXR0b24tLWljb24tcmlnaHQsIGEuYnV0dG9uLmJ1dHRvbi0taWNvbi1sZWZ0LCBhLmJ1dHRvbi5idXR0b24tLWljb24tcmlnaHQsIGlucHV0W3R5cGU9XCJzdWJtaXRcIl0uYnV0dG9uLS1pY29uLWxlZnQsIGlucHV0W3R5cGU9XCJzdWJtaXRcIl0uYnV0dG9uLS1pY29uLXJpZ2h0IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgICAuYnV0dG9uLmJ1dHRvbi0taWNvbi1sZWZ0ID4gc3BhbiwgLmJ1dHRvbi5idXR0b24tLWljb24tbGVmdCBpLCAuYnV0dG9uLmJ1dHRvbi0taWNvbi1yaWdodCA+IHNwYW4sIC5idXR0b24uYnV0dG9uLS1pY29uLXJpZ2h0IGksIGEuYnV0dG9uLmJ1dHRvbi0taWNvbi1sZWZ0ID4gc3BhbiwgYS5idXR0b24uYnV0dG9uLS1pY29uLWxlZnQgaSwgYS5idXR0b24uYnV0dG9uLS1pY29uLXJpZ2h0ID4gc3BhbiwgYS5idXR0b24uYnV0dG9uLS1pY29uLXJpZ2h0IGksIGlucHV0W3R5cGU9XCJzdWJtaXRcIl0uYnV0dG9uLS1pY29uLWxlZnQgPiBzcGFuLCBpbnB1dFt0eXBlPVwic3VibWl0XCJdLmJ1dHRvbi0taWNvbi1sZWZ0IGksIGlucHV0W3R5cGU9XCJzdWJtaXRcIl0uYnV0dG9uLS1pY29uLXJpZ2h0ID4gc3BhbiwgaW5wdXRbdHlwZT1cInN1Ym1pdFwiXS5idXR0b24tLWljb24tcmlnaHQgaSB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBoZWlnaHQ6IDEuNXJlbTtcbiAgICAgIHdpZHRoOiAxLjVyZW07XG4gICAgICB0b3A6IDUwJTtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7IH1cbiAgICAgIC5idXR0b24uYnV0dG9uLS1pY29uLWxlZnQgPiBzcGFuID4gaW1nLCAuYnV0dG9uLmJ1dHRvbi0taWNvbi1sZWZ0ID4gc3BhbiA+IHN2ZywgLmJ1dHRvbi5idXR0b24tLWljb24tbGVmdCBpID4gaW1nLCAuYnV0dG9uLmJ1dHRvbi0taWNvbi1sZWZ0IGkgPiBzdmcsIC5idXR0b24uYnV0dG9uLS1pY29uLXJpZ2h0ID4gc3BhbiA+IGltZywgLmJ1dHRvbi5idXR0b24tLWljb24tcmlnaHQgPiBzcGFuID4gc3ZnLCAuYnV0dG9uLmJ1dHRvbi0taWNvbi1yaWdodCBpID4gaW1nLCAuYnV0dG9uLmJ1dHRvbi0taWNvbi1yaWdodCBpID4gc3ZnLCBhLmJ1dHRvbi5idXR0b24tLWljb24tbGVmdCA+IHNwYW4gPiBpbWcsIGEuYnV0dG9uLmJ1dHRvbi0taWNvbi1sZWZ0ID4gc3BhbiA+IHN2ZywgYS5idXR0b24uYnV0dG9uLS1pY29uLWxlZnQgaSA+IGltZywgYS5idXR0b24uYnV0dG9uLS1pY29uLWxlZnQgaSA+IHN2ZywgYS5idXR0b24uYnV0dG9uLS1pY29uLXJpZ2h0ID4gc3BhbiA+IGltZywgYS5idXR0b24uYnV0dG9uLS1pY29uLXJpZ2h0ID4gc3BhbiA+IHN2ZywgYS5idXR0b24uYnV0dG9uLS1pY29uLXJpZ2h0IGkgPiBpbWcsIGEuYnV0dG9uLmJ1dHRvbi0taWNvbi1yaWdodCBpID4gc3ZnLCBpbnB1dFt0eXBlPVwic3VibWl0XCJdLmJ1dHRvbi0taWNvbi1sZWZ0ID4gc3BhbiA+IGltZywgaW5wdXRbdHlwZT1cInN1Ym1pdFwiXS5idXR0b24tLWljb24tbGVmdCA+IHNwYW4gPiBzdmcsIGlucHV0W3R5cGU9XCJzdWJtaXRcIl0uYnV0dG9uLS1pY29uLWxlZnQgaSA+IGltZywgaW5wdXRbdHlwZT1cInN1Ym1pdFwiXS5idXR0b24tLWljb24tbGVmdCBpID4gc3ZnLCBpbnB1dFt0eXBlPVwic3VibWl0XCJdLmJ1dHRvbi0taWNvbi1yaWdodCA+IHNwYW4gPiBpbWcsIGlucHV0W3R5cGU9XCJzdWJtaXRcIl0uYnV0dG9uLS1pY29uLXJpZ2h0ID4gc3BhbiA+IHN2ZywgaW5wdXRbdHlwZT1cInN1Ym1pdFwiXS5idXR0b24tLWljb24tcmlnaHQgaSA+IGltZywgaW5wdXRbdHlwZT1cInN1Ym1pdFwiXS5idXR0b24tLWljb24tcmlnaHQgaSA+IHN2ZyB7XG4gICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgICBoZWlnaHQ6IDEuNXJlbTsgfVxuICAuYnV0dG9uLmJ1dHRvbi0taWNvbi1vbmx5LCBhLmJ1dHRvbi5idXR0b24tLWljb24tb25seSwgaW5wdXRbdHlwZT1cInN1Ym1pdFwiXS5idXR0b24tLWljb24tb25seSB7XG4gICAgcGFkZGluZzogMC43NXJlbTsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDkwZW0pIHtcbiAgICAgIC5idXR0b24uYnV0dG9uLS1pY29uLW9ubHksIGEuYnV0dG9uLmJ1dHRvbi0taWNvbi1vbmx5LCBpbnB1dFt0eXBlPVwic3VibWl0XCJdLmJ1dHRvbi0taWNvbi1vbmx5IHtcbiAgICAgICAgcGFkZGluZzogMXJlbTsgfSB9XG4gICAgLmJ1dHRvbi5idXR0b24tLWljb24tb25seSBzdmcsIGEuYnV0dG9uLmJ1dHRvbi0taWNvbi1vbmx5IHN2ZywgaW5wdXRbdHlwZT1cInN1Ym1pdFwiXS5idXR0b24tLWljb24tb25seSBzdmcge1xuICAgICAgZGlzcGxheTogYmxvY2s7IH1cbiAgLmJ1dHRvbi5saWdodC1iZywgYS5idXR0b24ubGlnaHQtYmcsIGlucHV0W3R5cGU9XCJzdWJtaXRcIl0ubGlnaHQtYmcge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMzMsIDMzLCAzMywgMC4wNSk7IH1cbiAgICAuYnV0dG9uLmxpZ2h0LWJnOmhvdmVyLCAuYnV0dG9uLmxpZ2h0LWJnOmFjdGl2ZSwgLmJ1dHRvbi5saWdodC1iZzpmb2N1cywgYS5idXR0b24ubGlnaHQtYmc6aG92ZXIsIGEuYnV0dG9uLmxpZ2h0LWJnOmFjdGl2ZSwgYS5idXR0b24ubGlnaHQtYmc6Zm9jdXMsIGlucHV0W3R5cGU9XCJzdWJtaXRcIl0ubGlnaHQtYmc6aG92ZXIsIGlucHV0W3R5cGU9XCJzdWJtaXRcIl0ubGlnaHQtYmc6YWN0aXZlLCBpbnB1dFt0eXBlPVwic3VibWl0XCJdLmxpZ2h0LWJnOmZvY3VzIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMzMsIDMzLCAzMywgMC4xKTsgfVxuICAuYnV0dG9uLmJ1dHRvbi0taWNvbi1sZWZ0LCBhLmJ1dHRvbi5idXR0b24tLWljb24tbGVmdCwgaW5wdXRbdHlwZT1cInN1Ym1pdFwiXS5idXR0b24tLWljb24tbGVmdCB7XG4gICAgcGFkZGluZy1sZWZ0OiAyLjc1cmVtOyB9XG4gICAgLmJ1dHRvbi5idXR0b24tLWljb24tbGVmdCA+IHNwYW4sIC5idXR0b24uYnV0dG9uLS1pY29uLWxlZnQgaSwgYS5idXR0b24uYnV0dG9uLS1pY29uLWxlZnQgPiBzcGFuLCBhLmJ1dHRvbi5idXR0b24tLWljb24tbGVmdCBpLCBpbnB1dFt0eXBlPVwic3VibWl0XCJdLmJ1dHRvbi0taWNvbi1sZWZ0ID4gc3BhbiwgaW5wdXRbdHlwZT1cInN1Ym1pdFwiXS5idXR0b24tLWljb24tbGVmdCBpIHtcbiAgICAgIGxlZnQ6IDAuNzVyZW07IH1cbiAgLmJ1dHRvbi5idXR0b24tLWljb24tcmlnaHQsIGEuYnV0dG9uLmJ1dHRvbi0taWNvbi1yaWdodCwgaW5wdXRbdHlwZT1cInN1Ym1pdFwiXS5idXR0b24tLWljb24tcmlnaHQge1xuICAgIHBhZGRpbmctcmlnaHQ6IDIuNzVyZW07IH1cbiAgICAuYnV0dG9uLmJ1dHRvbi0taWNvbi1yaWdodCA+IHNwYW4sIC5idXR0b24uYnV0dG9uLS1pY29uLXJpZ2h0IGksIGEuYnV0dG9uLmJ1dHRvbi0taWNvbi1yaWdodCA+IHNwYW4sIGEuYnV0dG9uLmJ1dHRvbi0taWNvbi1yaWdodCBpLCBpbnB1dFt0eXBlPVwic3VibWl0XCJdLmJ1dHRvbi0taWNvbi1yaWdodCA+IHNwYW4sIGlucHV0W3R5cGU9XCJzdWJtaXRcIl0uYnV0dG9uLS1pY29uLXJpZ2h0IGkge1xuICAgICAgcmlnaHQ6IDAuNzVyZW07IH1cbiAgLmJ1dHRvbi50aWxlLWJ1dHRvbiwgLmJ1dHRvbi5pbnZlcnRlZCwgYS5idXR0b24udGlsZS1idXR0b24sIGEuYnV0dG9uLmludmVydGVkLCBpbnB1dFt0eXBlPVwic3VibWl0XCJdLnRpbGUtYnV0dG9uLCBpbnB1dFt0eXBlPVwic3VibWl0XCJdLmludmVydGVkIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmZmZmO1xuICAgIGNvbG9yOiAjMkRDOUQ3O1xuICAgIGJvcmRlcjogMC4xODc1cmVtIHNvbGlkIHJnYmEoNDUsIDIwMSwgMjE1LCAwLjQpOyB9XG4gICAgLmJ1dHRvbi50aWxlLWJ1dHRvbjpob3ZlciwgLmJ1dHRvbi50aWxlLWJ1dHRvbjphY3RpdmUsIC5idXR0b24udGlsZS1idXR0b246Zm9jdXMsIC5idXR0b24uaW52ZXJ0ZWQ6aG92ZXIsIC5idXR0b24uaW52ZXJ0ZWQ6YWN0aXZlLCAuYnV0dG9uLmludmVydGVkOmZvY3VzLCBhLmJ1dHRvbi50aWxlLWJ1dHRvbjpob3ZlciwgYS5idXR0b24udGlsZS1idXR0b246YWN0aXZlLCBhLmJ1dHRvbi50aWxlLWJ1dHRvbjpmb2N1cywgYS5idXR0b24uaW52ZXJ0ZWQ6aG92ZXIsIGEuYnV0dG9uLmludmVydGVkOmFjdGl2ZSwgYS5idXR0b24uaW52ZXJ0ZWQ6Zm9jdXMsIGlucHV0W3R5cGU9XCJzdWJtaXRcIl0udGlsZS1idXR0b246aG92ZXIsIGlucHV0W3R5cGU9XCJzdWJtaXRcIl0udGlsZS1idXR0b246YWN0aXZlLCBpbnB1dFt0eXBlPVwic3VibWl0XCJdLnRpbGUtYnV0dG9uOmZvY3VzLCBpbnB1dFt0eXBlPVwic3VibWl0XCJdLmludmVydGVkOmhvdmVyLCBpbnB1dFt0eXBlPVwic3VibWl0XCJdLmludmVydGVkOmFjdGl2ZSwgaW5wdXRbdHlwZT1cInN1Ym1pdFwiXS5pbnZlcnRlZDpmb2N1cyB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMkRDOUQ3O1xuICAgICAgYm9yZGVyLWNvbG9yOiAjMkRDOUQ3O1xuICAgICAgY29sb3I6ICNmZmZmZmY7IH1cbiAgLmJ1dHRvbi5idXR0b24tLXNtYWxsLCBhLmJ1dHRvbi5idXR0b24tLXNtYWxsLCBpbnB1dFt0eXBlPVwic3VibWl0XCJdLmJ1dHRvbi0tc21hbGwge1xuICAgIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gICAgcGFkZGluZzogMC41cmVtOyB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5idXR0b24tLW13IHtcbiAgICBtaW4td2lkdGg6IDExLjg3NXJlbSAhaW1wb3J0YW50OyB9IH1cblxuLmNhcmRzLWNvbnRhaW5lciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZmxvdzogcm93IHdyYXA7IH1cbiAgLmNhcmRzLWNvbnRhaW5lciAuY2FyZCB7XG4gICAgd2lkdGg6IGNhbGMoMTAwJSAtIDEuMTI1cmVtKTtcbiAgICBtYXJnaW4tcmlnaHQ6IDAuNTYyNXJlbTtcbiAgICBtYXJnaW4tbGVmdDogMC41NjI1cmVtOyB9XG4gICAgLmNhcmRzLWNvbnRhaW5lciAuY2FyZCAuY2FyZC1jb250ZW50IHtcbiAgICAgIHBhZGRpbmc6IDFyZW07IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgLmNhcmRzLWNvbnRhaW5lciAuY2FyZCB7XG4gICAgICAgIHdpZHRoOiBjYWxjKDMzLjMzMzMzJSAtIDAuN3JlbSk7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMC4zNXJlbTtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDAuMzVyZW07IH0gfVxuXG4uaGVyby1oZWlnaHQge1xuICBtaW4taGVpZ2h0OiAzNy41cmVtOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLmhlcm8taGVpZ2h0IHtcbiAgICAgIG1pbi1oZWlnaHQ6IDM3LjVyZW07XG4gICAgICBoZWlnaHQ6IDM3LjVyZW07IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5oZXJvLWhlaWdodCB7XG4gICAgICBtaW4taGVpZ2h0OiA1MHJlbTtcbiAgICAgIGhlaWdodDogNTByZW07IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45Mzc1ZW0pIHtcbiAgLmZlYXR1cmVkLWhlcm8ge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjsgfSB9XG5cbi5mZWF0dXJlZC1oZXJvLnByZXNzLCAuZmVhdHVyZWQtaGVyby5kZWZhdWx0LWhlcm8ge1xuICBoZWlnaHQ6IDI1cmVtO1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gIC5mZWF0dXJlZC1oZXJvLnByZXNzOmFmdGVyLCAuZmVhdHVyZWQtaGVyby5kZWZhdWx0LWhlcm86YWZ0ZXIge1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICByaWdodDogMDtcbiAgICBib3R0b206IDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIHotaW5kZXg6IDE7XG4gICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDkwZGVnLCByZ2JhKDMsIDQ4LCA1MiwgMC42KSAxMCUsIHJnYmEoMywgNDgsIDUyLCAwLjQpIDgwJSk7IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgLmZlYXR1cmVkLWhlcm8ucHJlc3M6YWZ0ZXIsIC5mZWF0dXJlZC1oZXJvLmRlZmF1bHQtaGVybzphZnRlciB7XG4gICAgICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCg5MGRlZywgcmdiYSgzLCA0OCwgNTIsIDAuNikgMCUsIHJnYmEoMywgNDgsIDUyLCAwLjEpIDEwMCUpOyB9IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgLmZlYXR1cmVkLWhlcm8ucHJlc3M6YWZ0ZXIsIC5mZWF0dXJlZC1oZXJvLmRlZmF1bHQtaGVybzphZnRlciB7XG4gICAgICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCg5MGRlZywgcmdiYSgzLCA0OCwgNTIsIDAuNikgMCUsIHJnYmEoMywgNDgsIDUyLCAwKSA3MCUpOyB9IH1cbiAgLmZlYXR1cmVkLWhlcm8ucHJlc3MgLmdyaWQtY29udGFpbmVyLCAuZmVhdHVyZWQtaGVyby5wcmVzcyAudG9wLWJhciwgLmZlYXR1cmVkLWhlcm8uZGVmYXVsdC1oZXJvIC5ncmlkLWNvbnRhaW5lciwgLmZlYXR1cmVkLWhlcm8uZGVmYXVsdC1oZXJvIC50b3AtYmFyIHtcbiAgICB3aWR0aDogMTAwJTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5mZWF0dXJlZC1oZXJvLnByZXNzLCAuZmVhdHVyZWQtaGVyby5kZWZhdWx0LWhlcm8ge1xuICAgICAgaGVpZ2h0OiAzMS4yNXJlbTsgfSB9XG5cbi5mZWF0dXJlZC1oZXJvLnZpcC1oZXJvIHtcbiAgcGFkZGluZy10b3A6IDlyZW07XG4gIHBhZGRpbmctYm90dG9tOiA5cmVtOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLmZlYXR1cmVkLWhlcm8udmlwLWhlcm8ge1xuICAgICAgcGFkZGluZy10b3A6IDE3LjVyZW07XG4gICAgICBwYWRkaW5nLWJvdHRvbTogMTcuNXJlbTsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmZlYXR1cmVkLWhlcm8udmlwLWhlcm8ge1xuICAgICAgcGFkZGluZy10b3A6IDE1cmVtO1xuICAgICAgcGFkZGluZy1ib3R0b206IDE1cmVtOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgIC5mZWF0dXJlZC1oZXJvLnZpcC1oZXJvIHtcbiAgICAgIHBhZGRpbmctdG9wOiAxOHJlbTtcbiAgICAgIHBhZGRpbmctYm90dG9tOiAxOHJlbTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDkwZW0pIHtcbiAgICAuZmVhdHVyZWQtaGVyby52aXAtaGVybyB7XG4gICAgICBwYWRkaW5nLXRvcDogMThyZW07XG4gICAgICBwYWRkaW5nLWJvdHRvbTogMThyZW07IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5mZWF0dXJlZC1oZXJvLnZpcC1oZXJvIHtcbiAgICAgIHBhZGRpbmctdG9wOiA2cmVtO1xuICAgICAgcGFkZGluZy1ib3R0b206IDZyZW07IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkgYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuZmVhdHVyZWQtaGVyby52aXAtaGVybyB7XG4gICAgICBwYWRkaW5nLXRvcDogMTEuNjY2NjdyZW07XG4gICAgICBwYWRkaW5nLWJvdHRvbTogMTEuNjY2NjdyZW07IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkgYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuZmVhdHVyZWQtaGVyby52aXAtaGVybyB7XG4gICAgICBwYWRkaW5nLXRvcDogMTByZW07XG4gICAgICBwYWRkaW5nLWJvdHRvbTogMTByZW07IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgIC5mZWF0dXJlZC1oZXJvLnZpcC1oZXJvIHtcbiAgICAgIHBhZGRpbmctdG9wOiAxMnJlbTtcbiAgICAgIHBhZGRpbmctYm90dG9tOiAxMnJlbTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIGFuZCAobWluLXdpZHRoOiA5MGVtKSB7XG4gICAgLmZlYXR1cmVkLWhlcm8udmlwLWhlcm8ge1xuICAgICAgcGFkZGluZy10b3A6IDEycmVtO1xuICAgICAgcGFkZGluZy1ib3R0b206IDEycmVtOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuZmVhdHVyZWQtaGVyby52aXAtaGVybyB7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogNy41cmVtOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLmZlYXR1cmVkLWhlcm8udmlwLWhlcm8ge1xuICAgICAgcGFkZGluZy1ib3R0b206IDE0LjU4MzMzcmVtOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmZlYXR1cmVkLWhlcm8udmlwLWhlcm8ge1xuICAgICAgcGFkZGluZy1ib3R0b206IDEyLjVyZW07IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgIC5mZWF0dXJlZC1oZXJvLnZpcC1oZXJvIHtcbiAgICAgIHBhZGRpbmctYm90dG9tOiAxNXJlbTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIGFuZCAobWluLXdpZHRoOiA5MGVtKSB7XG4gICAgLmZlYXR1cmVkLWhlcm8udmlwLWhlcm8ge1xuICAgICAgcGFkZGluZy1ib3R0b206IDE1cmVtOyB9IH1cbiAgLmZlYXR1cmVkLWhlcm8udmlwLWhlcm8uaGFzLWJnLWltZywgLmZlYXR1cmVkLWhlcm8udmlwLWhlcm8gLmZlYXR1cmVkLWhlcm8udmlwLWhlcm8uZmVhdHVyZWQtaW1hZ2Uge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBvdmVyZmxvdzogaGlkZGVuOyB9XG4gICAgLmZlYXR1cmVkLWhlcm8udmlwLWhlcm8uaGFzLWJnLWltZzphZnRlciwgLmZlYXR1cmVkLWhlcm8udmlwLWhlcm8gLmZlYXR1cmVkLWhlcm8udmlwLWhlcm8uZmVhdHVyZWQtaW1hZ2U6YWZ0ZXIge1xuICAgICAgY29udGVudDogJyc7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDA7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgcmlnaHQ6IDA7XG4gICAgICBib3R0b206IDA7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgIHotaW5kZXg6IDE7XG4gICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoOTBkZWcsIHJnYmEoMywgNDgsIDUyLCAwLjYpIDAlLCByZ2JhKDMsIDQ4LCA1MiwgMC40KSA3MCUpOyB9XG4gICAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgICAuZmVhdHVyZWQtaGVyby52aXAtaGVyby5oYXMtYmctaW1nOmFmdGVyLCAuZmVhdHVyZWQtaGVyby52aXAtaGVybyAuZmVhdHVyZWQtaGVyby52aXAtaGVyby5mZWF0dXJlZC1pbWFnZTphZnRlciB7XG4gICAgICAgICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDkwZGVnLCByZ2JhKDMsIDQ4LCA1MiwgMC42KSAwJSwgcmdiYSgzLCA0OCwgNTIsIDAuMSkgMTAwJSk7IH0gfVxuICAgICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgICAgLmZlYXR1cmVkLWhlcm8udmlwLWhlcm8uaGFzLWJnLWltZzphZnRlciwgLmZlYXR1cmVkLWhlcm8udmlwLWhlcm8gLmZlYXR1cmVkLWhlcm8udmlwLWhlcm8uZmVhdHVyZWQtaW1hZ2U6YWZ0ZXIge1xuICAgICAgICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCg5MGRlZywgcmdiYSgzLCA0OCwgNTIsIDAuNikgMCUsIHJnYmEoMywgNDgsIDUyLCAwKSA3MCUpOyB9IH1cbiAgICAuZmVhdHVyZWQtaGVyby52aXAtaGVyby5oYXMtYmctaW1nID4gLmdyaWQtY29udGFpbmVyLCAuZmVhdHVyZWQtaGVyby52aXAtaGVybyAuZmVhdHVyZWQtaGVyby52aXAtaGVyby5mZWF0dXJlZC1pbWFnZSA+IC5ncmlkLWNvbnRhaW5lciwgLmZlYXR1cmVkLWhlcm8udmlwLWhlcm8uaGFzLWJnLWltZyA+IC50b3AtYmFyLCAuZmVhdHVyZWQtaGVyby52aXAtaGVybyAuZmVhdHVyZWQtaGVyby52aXAtaGVyby5mZWF0dXJlZC1pbWFnZSA+IC50b3AtYmFyIHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIHotaW5kZXg6IDI7IH1cbiAgLmZlYXR1cmVkLWhlcm8udmlwLWhlcm8gLmZlYXR1cmVkLWltYWdlIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgYm90dG9tOiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICB6LWluZGV4OiAwOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIGFuZCAobWF4LXdpZHRoOiA2My45Mzc1ZW0pIHtcbiAgICAuZmVhdHVyZWQtaGVyby52aXAtaGVyby5mcm9udCAuZmVhdHVyZWQtaW1hZ2Uge1xuICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxLjQpO1xuICAgICAgdG9wOiA2JTsgfSB9XG4gIC5mZWF0dXJlZC1oZXJvLnZpcC1oZXJvLnVwZ3JhZGUge1xuICAgIHBhZGRpbmctdG9wOiA3LjVyZW07XG4gICAgcGFkZGluZy1ib3R0b206IDcuNXJlbTsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAuZmVhdHVyZWQtaGVyby52aXAtaGVyby51cGdyYWRlIHtcbiAgICAgICAgcGFkZGluZy10b3A6IDE0LjU4MzMzcmVtO1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogMTQuNTgzMzNyZW07IH0gfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAuZmVhdHVyZWQtaGVyby52aXAtaGVyby51cGdyYWRlIHtcbiAgICAgICAgcGFkZGluZy10b3A6IDEyLjVyZW07XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAxMi41cmVtOyB9IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgICAuZmVhdHVyZWQtaGVyby52aXAtaGVyby51cGdyYWRlIHtcbiAgICAgICAgcGFkZGluZy10b3A6IDE1cmVtO1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogMTVyZW07IH0gfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDkwZW0pIHtcbiAgICAgIC5mZWF0dXJlZC1oZXJvLnZpcC1oZXJvLnVwZ3JhZGUge1xuICAgICAgICBwYWRkaW5nLXRvcDogMTVyZW07XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAxNXJlbTsgfSB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkgYW5kIChtYXgtd2lkdGg6IDYzLjkzNzVlbSkge1xuICAgICAgLmZlYXR1cmVkLWhlcm8udmlwLWhlcm8udXBncmFkZSB7XG4gICAgICAgIHBhZGRpbmctdG9wOiA1LjYyNXJlbTtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDUuNjI1cmVtOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkgYW5kIChtYXgtd2lkdGg6IDYzLjkzNzVlbSkgYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuZmVhdHVyZWQtaGVyby52aXAtaGVyby51cGdyYWRlIHtcbiAgICAgIHBhZGRpbmctdG9wOiAxMC45Mzc1cmVtO1xuICAgICAgcGFkZGluZy1ib3R0b206IDEwLjkzNzVyZW07IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSBhbmQgKG1heC13aWR0aDogNjMuOTM3NWVtKSBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5mZWF0dXJlZC1oZXJvLnZpcC1oZXJvLnVwZ3JhZGUge1xuICAgICAgcGFkZGluZy10b3A6IDkuMzc1cmVtO1xuICAgICAgcGFkZGluZy1ib3R0b206IDkuMzc1cmVtOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkgYW5kIChtYXgtd2lkdGg6IDYzLjkzNzVlbSkgYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICAuZmVhdHVyZWQtaGVyby52aXAtaGVyby51cGdyYWRlIHtcbiAgICAgIHBhZGRpbmctdG9wOiAxMS4yNXJlbTtcbiAgICAgIHBhZGRpbmctYm90dG9tOiAxMS4yNXJlbTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIGFuZCAobWF4LXdpZHRoOiA2My45Mzc1ZW0pIGFuZCAobWluLXdpZHRoOiA5MGVtKSB7XG4gICAgLmZlYXR1cmVkLWhlcm8udmlwLWhlcm8udXBncmFkZSB7XG4gICAgICBwYWRkaW5nLXRvcDogMTEuMjVyZW07XG4gICAgICBwYWRkaW5nLWJvdHRvbTogMTEuMjVyZW07IH0gfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjkzNzVlbSkge1xuICAgICAgLmZlYXR1cmVkLWhlcm8udmlwLWhlcm8udXBncmFkZSAuZmVhdHVyZWQtaW1hZ2Uge1xuICAgICAgICB3aWR0aDogNzYuNXJlbTtcbiAgICAgICAgcmlnaHQ6IDBweDtcbiAgICAgICAgbGVmdDogdW5zZXQ7IH0gfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5LjkzNzVlbSkge1xuICAgICAgLmZlYXR1cmVkLWhlcm8udmlwLWhlcm8udXBncmFkZSAuZmVhdHVyZWQtaW1hZ2Uge1xuICAgICAgICByaWdodDogLTEwMHB4OyB9IH1cbiAgICAuZmVhdHVyZWQtaGVyby52aXAtaGVyby51cGdyYWRlLmhhcy1iZy1pbWc6YWZ0ZXIsIC5mZWF0dXJlZC1oZXJvLnZpcC1oZXJvIC5mZWF0dXJlZC1oZXJvLnZpcC1oZXJvLnVwZ3JhZGUuZmVhdHVyZWQtaW1hZ2U6YWZ0ZXIge1xuICAgICAgb3BhY2l0eTogMTtcbiAgICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCg5MGRlZywgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjgpIDAlLCByZ2JhKDI1NSwgMjU1LCAyNTUsIDApIDEwMCUpOyB9XG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45Mzc1ZW0pIHtcbiAgICAgICAgLmZlYXR1cmVkLWhlcm8udmlwLWhlcm8udXBncmFkZS5oYXMtYmctaW1nOmFmdGVyLCAuZmVhdHVyZWQtaGVyby52aXAtaGVybyAuZmVhdHVyZWQtaGVyby52aXAtaGVyby51cGdyYWRlLmZlYXR1cmVkLWltYWdlOmFmdGVyIHtcbiAgICAgICAgICB3aWR0aDogMTUwJTsgfSB9XG4gICAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgICAuZmVhdHVyZWQtaGVyby52aXAtaGVyby51cGdyYWRlLmhhcy1iZy1pbWc6YWZ0ZXIsIC5mZWF0dXJlZC1oZXJvLnZpcC1oZXJvIC5mZWF0dXJlZC1oZXJvLnZpcC1oZXJvLnVwZ3JhZGUuZmVhdHVyZWQtaW1hZ2U6YWZ0ZXIge1xuICAgICAgICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCg5MGRlZywgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjYpIDAlLCByZ2JhKDI1NSwgMjU1LCAyNTUsIDApIDEwMCUpOyB9IH1cbiAgICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAgIC5mZWF0dXJlZC1oZXJvLnZpcC1oZXJvLnVwZ3JhZGUuaGFzLWJnLWltZzphZnRlciwgLmZlYXR1cmVkLWhlcm8udmlwLWhlcm8gLmZlYXR1cmVkLWhlcm8udmlwLWhlcm8udXBncmFkZS5mZWF0dXJlZC1pbWFnZTphZnRlciB7XG4gICAgICAgICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDkwZGVnLCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNikgMCUsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMCkgNzAlKTsgfSB9XG4gICAgLmZlYXR1cmVkLWhlcm8udmlwLWhlcm8udXBncmFkZS5oYXMtYmctaW1nIC5oZXJvLWNvbnRlbnQgLnBhZ2UtdGl0bGUsIC5mZWF0dXJlZC1oZXJvLnZpcC1oZXJvIC5mZWF0dXJlZC1oZXJvLnZpcC1oZXJvLnVwZ3JhZGUuZmVhdHVyZWQtaW1hZ2UgLmhlcm8tY29udGVudCAucGFnZS10aXRsZSwgLmZlYXR1cmVkLWhlcm8udmlwLWhlcm8udXBncmFkZS5oYXMtYmctaW1nIC5oZXJvLWNvbnRlbnQgLnBhZ2UtY29udGVudCwgLmZlYXR1cmVkLWhlcm8udmlwLWhlcm8gLmZlYXR1cmVkLWhlcm8udmlwLWhlcm8udXBncmFkZS5mZWF0dXJlZC1pbWFnZSAuaGVyby1jb250ZW50IC5wYWdlLWNvbnRlbnQge1xuICAgICAgY29sb3I6ICMwMDAwMDA7IH1cblxuLmZlYXR1cmVkLWhlcm8gLmxvZ28td3JhcHBlciB7XG4gIG1hcmdpbi1ib3R0b206IDEuNXJlbTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5mZWF0dXJlZC1oZXJvIC5sb2dvLXdyYXBwZXIge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMi45MTY2N3JlbTsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmZlYXR1cmVkLWhlcm8gLmxvZ28td3JhcHBlciB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAyLjVyZW07IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgLmZlYXR1cmVkLWhlcm8gLmxvZ28td3JhcHBlciB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAzcmVtOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTBlbSkge1xuICAgIC5mZWF0dXJlZC1oZXJvIC5sb2dvLXdyYXBwZXIge1xuICAgICAgbWFyZ2luLWJvdHRvbTogM3JlbTsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLmZlYXR1cmVkLWhlcm8gLmxvZ28td3JhcHBlciB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwLjc1cmVtOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLmZlYXR1cmVkLWhlcm8gLmxvZ28td3JhcHBlciB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAxLjQ1ODMzcmVtOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmZlYXR1cmVkLWhlcm8gLmxvZ28td3JhcHBlciB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAxLjI1cmVtOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkgYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICAuZmVhdHVyZWQtaGVybyAubG9nby13cmFwcGVyIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDEuNXJlbTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIGFuZCAobWluLXdpZHRoOiA5MGVtKSB7XG4gICAgLmZlYXR1cmVkLWhlcm8gLmxvZ28td3JhcHBlciB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAxLjVyZW07IH0gfVxuICAuZmVhdHVyZWQtaGVybyAubG9nby13cmFwcGVyID4gaW1nIHtcbiAgICBoZWlnaHQ6IDIuNXJlbTtcbiAgICB3aWR0aDogYXV0bzsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAuZmVhdHVyZWQtaGVybyAubG9nby13cmFwcGVyID4gaW1nIHtcbiAgICAgICAgaGVpZ2h0OiAzcmVtOyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTM3NWVtKSB7XG4gIC5mZWF0dXJlZC1oZXJvIC5tZWRpdW0tb2Zmc2V0LTMgLmhlcm8tY29udGVudCB7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgdGV4dC1hbGlnbjogY2VudGVyOyB9IH1cblxuLmZlYXR1cmVkLWhlcm8gLmhlcm8tY29udGVudCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIHdpZHRoOiAxMDAlO1xuICBmbGV4LWZsb3c6IGNvbHVtbjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTM3NWVtKSB7XG4gICAgLmZlYXR1cmVkLWhlcm8gLmhlcm8tY29udGVudCB7XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH0gfVxuICAuZmVhdHVyZWQtaGVybyAuaGVyby1jb250ZW50IC5wYWdlLXRpdGxlLCAuZmVhdHVyZWQtaGVybyAuaGVyby1jb250ZW50IC5wYWdlLWNvbnRlbnQge1xuICAgIGNvbG9yOiAjZmZmZmZmOyB9XG4gIC5mZWF0dXJlZC1oZXJvIC5oZXJvLWNvbnRlbnQgLnBhZ2UtdGl0bGUge1xuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgbWFyZ2luLWJvdHRvbTogMDsgfVxuICAuZmVhdHVyZWQtaGVybyAuaGVyby1jb250ZW50IC5wYWdlLWNvbnRlbnQge1xuICAgIGxpbmUtaGVpZ2h0OiAxLjU7XG4gICAgbWFyZ2luLXRvcDogMi4yNXJlbTsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAuZmVhdHVyZWQtaGVybyAuaGVyby1jb250ZW50IC5wYWdlLWNvbnRlbnQge1xuICAgICAgICBtYXJnaW4tdG9wOiA0LjM3NXJlbTsgfSB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgIC5mZWF0dXJlZC1oZXJvIC5oZXJvLWNvbnRlbnQgLnBhZ2UtY29udGVudCB7XG4gICAgICAgIG1hcmdpbi10b3A6IDMuNzVyZW07IH0gfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICAgIC5mZWF0dXJlZC1oZXJvIC5oZXJvLWNvbnRlbnQgLnBhZ2UtY29udGVudCB7XG4gICAgICAgIG1hcmdpbi10b3A6IDQuNXJlbTsgfSB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTBlbSkge1xuICAgICAgLmZlYXR1cmVkLWhlcm8gLmhlcm8tY29udGVudCAucGFnZS1jb250ZW50IHtcbiAgICAgICAgbWFyZ2luLXRvcDogNC41cmVtOyB9IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgLmZlYXR1cmVkLWhlcm8gLmhlcm8tY29udGVudCAucGFnZS1jb250ZW50IHtcbiAgICAgICAgbWFyZ2luLXRvcDogMC43NXJlbTsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5mZWF0dXJlZC1oZXJvIC5oZXJvLWNvbnRlbnQgLnBhZ2UtY29udGVudCB7XG4gICAgICBtYXJnaW4tdG9wOiAxLjQ1ODMzcmVtOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmZlYXR1cmVkLWhlcm8gLmhlcm8tY29udGVudCAucGFnZS1jb250ZW50IHtcbiAgICAgIG1hcmdpbi10b3A6IDEuMjVyZW07IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgIC5mZWF0dXJlZC1oZXJvIC5oZXJvLWNvbnRlbnQgLnBhZ2UtY29udGVudCB7XG4gICAgICBtYXJnaW4tdG9wOiAxLjVyZW07IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSBhbmQgKG1pbi13aWR0aDogOTBlbSkge1xuICAgIC5mZWF0dXJlZC1oZXJvIC5oZXJvLWNvbnRlbnQgLnBhZ2UtY29udGVudCB7XG4gICAgICBtYXJnaW4tdG9wOiAxLjVyZW07IH0gfVxuICAuZmVhdHVyZWQtaGVybyAuaGVyby1jb250ZW50IC5idXR0b24ge1xuICAgIG1hcmdpbi10b3A6IDNyZW07XG4gICAgd2lkdGg6IG1heC1jb250ZW50OyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIC5mZWF0dXJlZC1oZXJvIC5oZXJvLWNvbnRlbnQgLmJ1dHRvbiB7XG4gICAgICAgIG1hcmdpbi10b3A6IDUuODMzMzNyZW07IH0gfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAuZmVhdHVyZWQtaGVybyAuaGVyby1jb250ZW50IC5idXR0b24ge1xuICAgICAgICBtYXJnaW4tdG9wOiA1cmVtOyB9IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgICAuZmVhdHVyZWQtaGVybyAuaGVyby1jb250ZW50IC5idXR0b24ge1xuICAgICAgICBtYXJnaW4tdG9wOiA2cmVtOyB9IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5MGVtKSB7XG4gICAgICAuZmVhdHVyZWQtaGVybyAuaGVyby1jb250ZW50IC5idXR0b24ge1xuICAgICAgICBtYXJnaW4tdG9wOiA2cmVtOyB9IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgLmZlYXR1cmVkLWhlcm8gLmhlcm8tY29udGVudCAuYnV0dG9uIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMS4xMjVyZW07IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkgYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuZmVhdHVyZWQtaGVybyAuaGVyby1jb250ZW50IC5idXR0b24ge1xuICAgICAgbWFyZ2luLXRvcDogMi4xODc1cmVtOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmZlYXR1cmVkLWhlcm8gLmhlcm8tY29udGVudCAuYnV0dG9uIHtcbiAgICAgIG1hcmdpbi10b3A6IDEuODc1cmVtOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkgYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICAuZmVhdHVyZWQtaGVybyAuaGVyby1jb250ZW50IC5idXR0b24ge1xuICAgICAgbWFyZ2luLXRvcDogMi4yNXJlbTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIGFuZCAobWluLXdpZHRoOiA5MGVtKSB7XG4gICAgLmZlYXR1cmVkLWhlcm8gLmhlcm8tY29udGVudCAuYnV0dG9uIHtcbiAgICAgIG1hcmdpbi10b3A6IDIuMjVyZW07IH0gfVxuXG4uZmVhdHVyZWQtaGVybyA+ICoge1xuICB6LWluZGV4OiAyO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cblxuLmZlYXR1cmVkLWhlcm8udGl0bGUtb25seTphZnRlciB7XG4gIGJhY2tncm91bmQ6ICMyREM5RDc7IH1cblxuLmJsb2ctaGVybyB7XG4gIG1hcmdpbi1ib3R0b206IDIuMjVyZW07XG4gIGJhY2tncm91bmQtY29sb3I6ICMwMDFFNjI7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5ibG9nLWhlcm8ge1xuICAgICAgbWFyZ2luLWJvdHRvbTogNC4zNzVyZW07IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5ibG9nLWhlcm8ge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMy43NXJlbTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICAuYmxvZy1oZXJvIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDQuNXJlbTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDkwZW0pIHtcbiAgICAuYmxvZy1oZXJvIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDQuNXJlbTsgfSB9XG4gIC5ibG9nLWhlcm8gLmdyaWQteCAuY29udGVudC1jZWxsIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogMnJlbTtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgLmJsb2ctaGVybyAuZ3JpZC14IC5jb250ZW50LWNlbGwge1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogMy44ODg4OXJlbTsgfSB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgIC5ibG9nLWhlcm8gLmdyaWQteCAuY29udGVudC1jZWxsIHtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDMuMzMzMzNyZW07IH0gfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICAgIC5ibG9nLWhlcm8gLmdyaWQteCAuY29udGVudC1jZWxsIHtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDRyZW07IH0gfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDkwZW0pIHtcbiAgICAgIC5ibG9nLWhlcm8gLmdyaWQteCAuY29udGVudC1jZWxsIHtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDRyZW07IH0gfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5LjkzNzVlbSkge1xuICAgICAgLmJsb2ctaGVybyAuZ3JpZC14IC5jb250ZW50LWNlbGwge1xuICAgICAgICBwYWRkaW5nLXRvcDogM3JlbTtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDNyZW07IH0gfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAuYmxvZy1oZXJvIC5ncmlkLXggLmNvbnRlbnQtY2VsbCB7XG4gICAgICAgIHBhZGRpbmctdG9wOiAyLjU3MTQzcmVtO1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAxLjEyNXJlbTsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5ibG9nLWhlcm8gLmdyaWQteCAuY29udGVudC1jZWxsIHtcbiAgICAgIHBhZGRpbmctdG9wOiA1cmVtOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmJsb2ctaGVybyAuZ3JpZC14IC5jb250ZW50LWNlbGwge1xuICAgICAgcGFkZGluZy10b3A6IDQuMjg1NzFyZW07IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgIC5ibG9nLWhlcm8gLmdyaWQteCAuY29udGVudC1jZWxsIHtcbiAgICAgIHBhZGRpbmctdG9wOiA1LjE0Mjg2cmVtOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkgYW5kIChtaW4td2lkdGg6IDkwZW0pIHtcbiAgICAuYmxvZy1oZXJvIC5ncmlkLXggLmNvbnRlbnQtY2VsbCB7XG4gICAgICBwYWRkaW5nLXRvcDogNS4xNDI4NnJlbTsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5ibG9nLWhlcm8gLmdyaWQteCAuY29udGVudC1jZWxsIHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDIuMTg3NXJlbTsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5ibG9nLWhlcm8gLmdyaWQteCAuY29udGVudC1jZWxsIHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDEuODc1cmVtOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkgYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICAuYmxvZy1oZXJvIC5ncmlkLXggLmNvbnRlbnQtY2VsbCB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAyLjI1cmVtOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkgYW5kIChtaW4td2lkdGg6IDkwZW0pIHtcbiAgICAuYmxvZy1oZXJvIC5ncmlkLXggLmNvbnRlbnQtY2VsbCB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAyLjI1cmVtOyB9IH1cbiAgICAuYmxvZy1oZXJvIC5ncmlkLXggLmNvbnRlbnQtY2VsbCAucG9zdC10aXRsZSB7XG4gICAgICBjb2xvcjogIzJEQzlENztcbiAgICAgIG1hcmdpbi1ib3R0b206IDFyZW07IH1cbiAgICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAgIC5ibG9nLWhlcm8gLmdyaWQteCAuY29udGVudC1jZWxsIC5wb3N0LXRpdGxlIHtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxLjVyZW07IH0gfVxuICAgIC5ibG9nLWhlcm8gLmdyaWQteCAuY29udGVudC1jZWxsIC5wb3N0LWV4Y2VycHQge1xuICAgICAgY29sb3I6ICNmZmZmZmY7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwOyB9XG4gICAgLmJsb2ctaGVybyAuZ3JpZC14IC5jb250ZW50LWNlbGwgLmJ1dHRvbi13cmFwIHtcbiAgICAgIG1hcmdpbi10b3A6IDFyZW07IH1cbiAgICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAgIC5ibG9nLWhlcm8gLmdyaWQteCAuY29udGVudC1jZWxsIC5idXR0b24td3JhcCB7XG4gICAgICAgICAgbWFyZ2luLXRvcDogMS41cmVtOyB9IH1cbiAgLmJsb2ctaGVybyAuZ3JpZC14IC5pbWFnZS1jZWxsIGltZyB7XG4gICAgaGVpZ2h0OiAxOC43NXJlbTtcbiAgICBtaW4td2lkdGg6IDEwMCU7XG4gICAgb2JqZWN0LWZpdDogY292ZXI7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHRyYW5zaXRpb246IGhlaWdodCAuMjVzIGVhc2U7XG4gICAgei1pbmRleDogMjtcbiAgICBkaXNwbGF5OiBibG9jazsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAuYmxvZy1oZXJvIC5ncmlkLXggLmltYWdlLWNlbGwgaW1nIHtcbiAgICAgICAgaGVpZ2h0OiAyNXJlbTsgfSB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgIC5ibG9nLWhlcm8gLmdyaWQteCAuaW1hZ2UtY2VsbCBpbWcge1xuICAgICAgICBoZWlnaHQ6IDI5LjYyNXJlbTsgfSB9XG4gIC5ibG9nLWhlcm8uYmxvZy1zaW5nbGUuaGFzLWltYWdlLCAuYmxvZy1oZXJvLmJsb2ctc2luZ2xlLmhhcy12aWRlbyB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gICAgLmJsb2ctaGVyby5ibG9nLXNpbmdsZS5oYXMtaW1hZ2U6OmJlZm9yZSwgLmJsb2ctaGVyby5ibG9nLXNpbmdsZS5oYXMtdmlkZW86OmJlZm9yZSB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmZmZmO1xuICAgICAgaGVpZ2h0OiAxMS44MTI1cmVtO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBib3R0b206IDA7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgei1pbmRleDogMTsgfVxuICAgICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgICAgLmJsb2ctaGVyby5ibG9nLXNpbmdsZS5oYXMtaW1hZ2U6OmJlZm9yZSwgLmJsb2ctaGVyby5ibG9nLXNpbmdsZS5oYXMtdmlkZW86OmJlZm9yZSB7XG4gICAgICAgICAgY29udGVudDogJyc7IH0gfVxuICAuYmxvZy1oZXJvLmJsb2ctc2luZ2xlIC5ncmlkLXggLmNvbnRlbnQtY2VsbCB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gICAgLmJsb2ctaGVyby5ibG9nLXNpbmdsZSAuZ3JpZC14IC5jb250ZW50LWNlbGwgLmNhdC1saW5rIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDFyZW07XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlOyB9XG4gICAgLmJsb2ctaGVyby5ibG9nLXNpbmdsZSAuZ3JpZC14IC5jb250ZW50LWNlbGwgLnBvc3QtZXhjZXJwdCB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAxcmVtOyB9XG4gICAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgICAuYmxvZy1oZXJvLmJsb2ctc2luZ2xlIC5ncmlkLXggLmNvbnRlbnQtY2VsbCAucG9zdC1leGNlcnB0IHtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiAyLjVyZW07IH0gfVxuICAgIC5ibG9nLWhlcm8uYmxvZy1zaW5nbGUgLmdyaWQteCAuY29udGVudC1jZWxsIC5wb3N0LW1ldGEge1xuICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7IH1cbiAgICAgIC5ibG9nLWhlcm8uYmxvZy1zaW5nbGUgLmdyaWQteCAuY29udGVudC1jZWxsIC5wb3N0LW1ldGEgLmF1dGhvci1uYW1lIHtcbiAgICAgICAgY29sb3I6ICNmZmZmZmY7IH1cbiAgLmJsb2ctaGVyby5ibG9nLXNpbmdsZSAuZ3JpZC14IC5pbWFnZS1jZWxsIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgICAuYmxvZy1oZXJvLmJsb2ctc2luZ2xlIC5ncmlkLXggLmltYWdlLWNlbGwuaGFzLXZpZGVvOmhvdmVyLCAuYmxvZy1oZXJvLmJsb2ctc2luZ2xlIC5ncmlkLXggLmltYWdlLWNlbGwuaGFzLXZpZGVvOmFjdGl2ZSwgLmJsb2ctaGVyby5ibG9nLXNpbmdsZSAuZ3JpZC14IC5pbWFnZS1jZWxsLmhhcy12aWRlbzpmb2N1cyB7XG4gICAgICBjdXJzb3I6IHBvaW50ZXI7IH1cbiAgICAgIC5ibG9nLWhlcm8uYmxvZy1zaW5nbGUgLmdyaWQteCAuaW1hZ2UtY2VsbC5oYXMtdmlkZW86aG92ZXIgLnBsYXktYnV0dG9uLCAuYmxvZy1oZXJvLmJsb2ctc2luZ2xlIC5ncmlkLXggLmltYWdlLWNlbGwuaGFzLXZpZGVvOmFjdGl2ZSAucGxheS1idXR0b24sIC5ibG9nLWhlcm8uYmxvZy1zaW5nbGUgLmdyaWQteCAuaW1hZ2UtY2VsbC5oYXMtdmlkZW86Zm9jdXMgLnBsYXktYnV0dG9uIHtcbiAgICAgICAgdHJhbnNpdGlvbjogb3BhY2l0eSAuMjVzIGVhc2U7IH1cbiAgICAgICAgLmJsb2ctaGVyby5ibG9nLXNpbmdsZSAuZ3JpZC14IC5pbWFnZS1jZWxsLmhhcy12aWRlbzpob3ZlciAucGxheS1idXR0b24gc3ZnIHBhdGgsIC5ibG9nLWhlcm8uYmxvZy1zaW5nbGUgLmdyaWQteCAuaW1hZ2UtY2VsbC5oYXMtdmlkZW86YWN0aXZlIC5wbGF5LWJ1dHRvbiBzdmcgcGF0aCwgLmJsb2ctaGVyby5ibG9nLXNpbmdsZSAuZ3JpZC14IC5pbWFnZS1jZWxsLmhhcy12aWRlbzpmb2N1cyAucGxheS1idXR0b24gc3ZnIHBhdGgge1xuICAgICAgICAgIGZpbGw6ICNGQ0I1MzY7IH1cbiAgICAuYmxvZy1oZXJvLmJsb2ctc2luZ2xlIC5ncmlkLXggLmltYWdlLWNlbGwuaGFzLXZpZGVvIC5wbGF5LWJ1dHRvbiB7XG4gICAgICBoZWlnaHQ6IDMuNzVyZW07XG4gICAgICB3aWR0aDogMy43NXJlbTtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmZmZmY7XG4gICAgICB6LWluZGV4OiAxMDtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHJpZ2h0OiAxLjVyZW07XG4gICAgICBib3R0b206IDEuNXJlbTtcbiAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lOyB9XG4gICAgICAuYmxvZy1oZXJvLmJsb2ctc2luZ2xlIC5ncmlkLXggLmltYWdlLWNlbGwuaGFzLXZpZGVvIC5wbGF5LWJ1dHRvbiBzdmcge1xuICAgICAgICBtYXgtaGVpZ2h0OiAycmVtO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogNTAlO1xuICAgICAgICBsZWZ0OiBjYWxjKDUwJSArIDJweCk7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpOyB9XG4gICAgICAgIC5ibG9nLWhlcm8uYmxvZy1zaW5nbGUgLmdyaWQteCAuaW1hZ2UtY2VsbC5oYXMtdmlkZW8gLnBsYXktYnV0dG9uIHN2ZyBwYXRoIHtcbiAgICAgICAgICB0cmFuc2l0aW9uOiBmaWxsIC4yNXMgZWFzZTsgfVxuICAgIC5ibG9nLWhlcm8uYmxvZy1zaW5nbGUgLmdyaWQteCAuaW1hZ2UtY2VsbCAuZmVhdHVyZWQtbWVkaWEtd3JhcHBlciB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAvKipcbiAgZXh0ZW5kIGVsZW1lbnQgdGhlIGRpc3RhbmNlIG9mIHRoZSBncmlkLWNvbnRhaW5lciBwYWRkaW5nIHNvIHRoYXRcbiAgaXQncyBmbHVzaCB3aXRoIGxlZnQvcmlnaHQgZWRnZXMgb2YgdGhlIHNjcmVlblxuICAgKi9cbiAgICAgIG1heC13aWR0aDogbm9uZTsgfVxuICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTM3NWVtKSB7XG4gICAgICAgIC5ibG9nLWhlcm8uYmxvZy1zaW5nbGUgLmdyaWQteCAuaW1hZ2UtY2VsbCAuZmVhdHVyZWQtbWVkaWEtd3JhcHBlciB7XG4gICAgICAgICAgbWFyZ2luLWxlZnQ6IC0xLjVyZW07XG4gICAgICAgICAgbWFyZ2luLXJpZ2h0OiAtMS41cmVtO1xuICAgICAgICAgIHdpZHRoOiBjYWxjKDEwMCUgKyAoMS41cmVtICogMikpOyB9IH1cbiAgICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAgIC5ibG9nLWhlcm8uYmxvZy1zaW5nbGUgLmdyaWQteCAuaW1hZ2UtY2VsbCAuZmVhdHVyZWQtbWVkaWEtd3JhcHBlciB7XG4gICAgICAgICAgYm9yZGVyLXJhZGl1czogMjBweDtcbiAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuOyB9IH1cbiAgICAgIC5ibG9nLWhlcm8uYmxvZy1zaW5nbGUgLmdyaWQteCAuaW1hZ2UtY2VsbCAuZmVhdHVyZWQtbWVkaWEtd3JhcHBlciBpbWcge1xuICAgICAgICB3aWR0aDogMTAwJTsgfVxuICAgIC5ibG9nLWhlcm8uYmxvZy1zaW5nbGUgLmdyaWQteCAuaW1hZ2UtY2VsbCAuZmVhdHVyZWQtaW1hZ2Uge1xuICAgICAgdHJhbnNpdGlvbjogb3BhY2l0eSAuMjVzIGVhc2U7IH1cbiAgICAgIC5ibG9nLWhlcm8uYmxvZy1zaW5nbGUgLmdyaWQteCAuaW1hZ2UtY2VsbCAuZmVhdHVyZWQtaW1hZ2Uub3ZlcmxheSB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICByaWdodDogMDtcbiAgICAgICAgei1pbmRleDogOTsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45Mzc1ZW0pIHtcbiAgICAuYmxvZy1oZXJvLmJsb2ctdG9waWM6OmJlZm9yZSB7XG4gICAgICBjb250ZW50OiAnJztcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgdG9wOiAwO1xuICAgICAgbGVmdDogMDtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMzAsIDk4LCAwLjgpO1xuICAgICAgei1pbmRleDogMzsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjkzNzVlbSkge1xuICAgIC5ibG9nLWhlcm8uYmxvZy10b3BpYyAuZ3JpZC14IC5jb250ZW50LWNlbGwge1xuICAgICAgcGFkZGluZy10b3A6IDQuNXJlbTtcbiAgICAgIHBhZGRpbmctYm90dG9tOiA0LjVyZW07XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICB6LWluZGV4OiA0OyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTM3NWVtKSBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5ibG9nLWhlcm8uYmxvZy10b3BpYyAuZ3JpZC14IC5jb250ZW50LWNlbGwge1xuICAgICAgcGFkZGluZy10b3A6IDguNzVyZW07XG4gICAgICBwYWRkaW5nLWJvdHRvbTogOC43NXJlbTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjkzNzVlbSkgYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuYmxvZy1oZXJvLmJsb2ctdG9waWMgLmdyaWQteCAuY29udGVudC1jZWxsIHtcbiAgICAgIHBhZGRpbmctdG9wOiA3LjVyZW07XG4gICAgICBwYWRkaW5nLWJvdHRvbTogNy41cmVtOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTM3NWVtKSBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgIC5ibG9nLWhlcm8uYmxvZy10b3BpYyAuZ3JpZC14IC5jb250ZW50LWNlbGwge1xuICAgICAgcGFkZGluZy10b3A6IDlyZW07XG4gICAgICBwYWRkaW5nLWJvdHRvbTogOXJlbTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjkzNzVlbSkgYW5kIChtaW4td2lkdGg6IDkwZW0pIHtcbiAgICAuYmxvZy1oZXJvLmJsb2ctdG9waWMgLmdyaWQteCAuY29udGVudC1jZWxsIHtcbiAgICAgIHBhZGRpbmctdG9wOiA5cmVtO1xuICAgICAgcGFkZGluZy1ib3R0b206IDlyZW07IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5ibG9nLWhlcm8uYmxvZy10b3BpYyAuZ3JpZC14IC5jb250ZW50LWNlbGwgLnBvc3QtZXhjZXJwdCB7XG4gICAgICBmb250LXNpemU6IDFyZW07IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45Mzc1ZW0pIHtcbiAgICAuYmxvZy1oZXJvLmJsb2ctdG9waWMgLmdyaWQteCAuaW1hZ2UtY2VsbCB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICB0b3A6IDA7IH1cbiAgICAgIC5ibG9nLWhlcm8uYmxvZy10b3BpYyAuZ3JpZC14IC5pbWFnZS1jZWxsID4gaW1nIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIG9iamVjdC1maXQ6IGNvdmVyO1xuICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgIHdpZHRoOiBhdXRvOyB9IH1cbiAgLmJsb2ctaGVyby5ibG9nLXRvcGljIC5ncmlkLXggLmltYWdlLWNlbGwgLmZlYXR1cmVkLW1lZGlhLXdyYXBwZXIge1xuICAgIC8qKlxuICBleHRlbmQgZWxlbWVudCB0aGUgZGlzdGFuY2Ugb2YgdGhlIGdyaWQtY29udGFpbmVyIHBhZGRpbmcgc28gdGhhdFxuICBpdCdzIGZsdXNoIHdpdGggbGVmdC9yaWdodCBlZGdlcyBvZiB0aGUgc2NyZWVuXG4gICAqL1xuICAgIG1hcmdpbi1yaWdodDogLTEuNXJlbTtcbiAgICB3aWR0aDogY2FsYygxMDAlICsgKDEuNXJlbSAqIDEpKTtcbiAgICBtaW4taGVpZ2h0OiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAuYmxvZy1oZXJvLmJsb2ctdG9waWMgLmdyaWQteCAuaW1hZ2UtY2VsbCAuZmVhdHVyZWQtbWVkaWEtd3JhcHBlciB7XG4gICAgICAgIG1hcmdpbi1yaWdodDogLTQuMzc1cmVtO1xuICAgICAgICB3aWR0aDogY2FsYygxMDAlICsgKDQuMzc1cmVtICogMSkpOyB9IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgLmJsb2ctaGVyby5ibG9nLXRvcGljIC5ncmlkLXggLmltYWdlLWNlbGwgLmZlYXR1cmVkLW1lZGlhLXdyYXBwZXIge1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IC02LjI1cmVtO1xuICAgICAgICB3aWR0aDogY2FsYygxMDAlICsgKDYuMjVyZW0gKiAxKSk7IH0gfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICAgIC5ibG9nLWhlcm8uYmxvZy10b3BpYyAuZ3JpZC14IC5pbWFnZS1jZWxsIC5mZWF0dXJlZC1tZWRpYS13cmFwcGVyIHtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAtNy41cmVtO1xuICAgICAgICB3aWR0aDogY2FsYygxMDAlICsgKDcuNXJlbSAqIDEpKTsgfSB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTBlbSkge1xuICAgICAgLmJsb2ctaGVyby5ibG9nLXRvcGljIC5ncmlkLXggLmltYWdlLWNlbGwgLmZlYXR1cmVkLW1lZGlhLXdyYXBwZXIge1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IC03LjVyZW07XG4gICAgICAgIHdpZHRoOiBjYWxjKDEwMCUgKyAoNy41cmVtICogMSkpOyB9IH1cbiAgLmJsb2ctaGVyby5ibG9nLXRvcGljIC5ncmlkLXggLmltYWdlLWNlbGwgaW1nIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtaW4taGVpZ2h0OiAxMDAlO1xuICAgIGhlaWdodDogYXV0bztcbiAgICBtYXgtaGVpZ2h0OiAxMDAlOyB9XG5cbi5kb3R0ZWQsIC5zZWN0aW9uLWRpdmlkZXIgaHIge1xuICBib3JkZXItc3R5bGU6IGRhc2hlZDtcbiAgbWFyZ2luOiAycmVtIDA7IH1cblxudWwuaG9yaXpvbnRhbC1saXN0IHtcbiAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xuICBtYXJnaW46IDByZW07XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jazsgfVxuICB1bC5ob3Jpem9udGFsLWxpc3QgPiBsaSB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHBhZGRpbmc6IDByZW0gMC4yNXJlbTsgfVxuICB1bC5ob3Jpem9udGFsLWxpc3Q6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6ICcgJztcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBjbGVhcjogYm90aDsgfVxuXG51bC5zb2NpYWwtaWNvbi1saXN0IGEuc29jaWFsLWxpbmsgLmZhYiwgdWwuc29jaWFsLWljb24tbGlzdCBhLnNvY2lhbC1saW5rIC5mYXIsIHVsLnNvY2lhbC1pY29uLWxpc3QgYS5zb2NpYWwtbGluayAuZmFsLCB1bC5zb2NpYWwtaWNvbi1saXN0IGEuc29jaWFsLWxpbmsgLmZhIHtcbiAgZm9udC1zaXplOiAxLjI1cmVtOyB9XG5cbnVsLnNvY2lhbC1pY29uLWxpc3QgYS5zb2NpYWwtbGluazpob3ZlciwgdWwuc29jaWFsLWljb24tbGlzdCBhLnNvY2lhbC1saW5rOmZvY3VzLCB1bC5zb2NpYWwtaWNvbi1saXN0IGEuc29jaWFsLWxpbms6YWN0aXZlIHtcbiAgb3BhY2l0eTogMC42OyB9XG5cbltkYXRhLXdoYXRpbnB1dD1cIm1vdXNlXCJdIGE6Zm9jdXMsIGJ1dHRvbjpmb2N1cyBbZGF0YS13aGF0aW5wdXQ9XCJ0b3VjaFwiXSBhOmZvY3VzLCBidXR0b246Zm9jdXMge1xuICBvdXRsaW5lOiBub25lOyB9XG5cbmEge1xuICB0cmFuc2l0aW9uOiAwLjVzIGVhc2U7XG4gIG9wYWNpdHk6IDE7XG4gIC8qKlxuU1ZHIEljb24gTGluayBWYXJpYW50c1xuICovXG4gIC8qKlxuICBERVBSRUNBVEVEXG4gICAqLyB9XG4gIGEucmVnLWxpbmssIC5lbnRyeS1jb250ZW50IGE6bm90KC5idXR0b24pLCBwIGE6bm90KC5idXR0b24pLCAucmV2ZWFsIGE6bm90KC5idXR0b24pIHtcbiAgICBmb250LXdlaWdodDogNzAwO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBjb2xvcjogIzAwMDAwMDtcbiAgICBib3JkZXItYm90dG9tOiAxcHggZG90dGVkIHJnYmEoMCwgMCwgMCwgMC41KTtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmUgIWltcG9ydGFudDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgIHBhZGRpbmctcmlnaHQ6IDAuMjVyZW07XG4gICAgei1pbmRleDogMDsgfVxuICAgIGEucmVnLWxpbms6YmVmb3JlLCAuZW50cnktY29udGVudCBhOm5vdCguYnV0dG9uKTpiZWZvcmUsIHAgYTpub3QoLmJ1dHRvbik6YmVmb3JlLCAucmV2ZWFsIGE6bm90KC5idXR0b24pOmJlZm9yZSB7XG4gICAgICBjb250ZW50OiAnJztcbiAgICAgIHdpZHRoOiAwJTtcbiAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgICAgdHJhbnNpdGlvbjogd2lkdGggLjJzIGVhc2UsIGJhY2tncm91bmQtY29sb3IgLjJzIGVhc2U7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgYm90dG9tOiAtMXB4O1xuICAgICAgdG9wOiBhdXRvO1xuICAgICAgaGVpZ2h0OiAxcHg7XG4gICAgICB6LWluZGV4OiAtMTsgfVxuICAgIGEucmVnLWxpbms6aG92ZXIsIC5lbnRyeS1jb250ZW50IGE6aG92ZXI6bm90KC5idXR0b24pLCBwIGE6aG92ZXI6bm90KC5idXR0b24pLCAucmV2ZWFsIGE6aG92ZXI6bm90KC5idXR0b24pLCBhLnJlZy1saW5rOmZvY3VzLCAuZW50cnktY29udGVudCBhOmZvY3VzOm5vdCguYnV0dG9uKSwgcCBhOmZvY3VzOm5vdCguYnV0dG9uKSwgLnJldmVhbCBhOmZvY3VzOm5vdCguYnV0dG9uKSB7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICBjb2xvcjogIzIxYTRiMDsgfVxuICAgICAgYS5yZWctbGluazpob3ZlcjpiZWZvcmUsIC5lbnRyeS1jb250ZW50IGE6bm90KC5idXR0b24pOmhvdmVyOmJlZm9yZSwgcCBhOm5vdCguYnV0dG9uKTpob3ZlcjpiZWZvcmUsIC5yZXZlYWwgYTpub3QoLmJ1dHRvbik6aG92ZXI6YmVmb3JlLCBhLnJlZy1saW5rOmZvY3VzOmJlZm9yZSwgLmVudHJ5LWNvbnRlbnQgYTpub3QoLmJ1dHRvbik6Zm9jdXM6YmVmb3JlLCBwIGE6bm90KC5idXR0b24pOmZvY3VzOmJlZm9yZSwgLnJldmVhbCBhOm5vdCguYnV0dG9uKTpmb2N1czpiZWZvcmUge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzJEQzlENzsgfVxuICBhLnNpbGVudCB7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGRpc3BsYXk6IGJsb2NrOyB9XG4gIGEubGluay0taWNvbi1yaWdodCwgYS5saW5rLS1pY29uLWxlZnQge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAgIGEubGluay0taWNvbi1yaWdodCA+IHNwYW4sIGEubGluay0taWNvbi1yaWdodCBpLCBhLmxpbmstLWljb24tbGVmdCA+IHNwYW4sIGEubGluay0taWNvbi1sZWZ0IGkge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgaGVpZ2h0OiAxcmVtO1xuICAgICAgd2lkdGg6IDFyZW07XG4gICAgICB0b3A6IDUwJTtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICB0cmFuc2l0aW9uOiBhbGwgMC41cyBlYXNlOyB9XG4gICAgICBhLmxpbmstLWljb24tcmlnaHQgPiBzcGFuID4gaW1nLCBhLmxpbmstLWljb24tcmlnaHQgPiBzcGFuID4gc3ZnLCBhLmxpbmstLWljb24tcmlnaHQgaSA+IGltZywgYS5saW5rLS1pY29uLXJpZ2h0IGkgPiBzdmcsIGEubGluay0taWNvbi1sZWZ0ID4gc3BhbiA+IGltZywgYS5saW5rLS1pY29uLWxlZnQgPiBzcGFuID4gc3ZnLCBhLmxpbmstLWljb24tbGVmdCBpID4gaW1nLCBhLmxpbmstLWljb24tbGVmdCBpID4gc3ZnIHtcbiAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICAgIGhlaWdodDogMXJlbTsgfVxuICBhLmxpbmstLWljb24tbGVmdCA+IHNwYW4sIGEubGluay0taWNvbi1sZWZ0IGkge1xuICAgIGxlZnQ6IC0xLjI1cmVtOyB9XG4gIGEubGluay0taWNvbi1sZWZ0OmhvdmVyID4gc3BhbiwgYS5saW5rLS1pY29uLWxlZnQ6aG92ZXIgaSwgYS5saW5rLS1pY29uLWxlZnQ6Zm9jdXMgPiBzcGFuLCBhLmxpbmstLWljb24tbGVmdDpmb2N1cyBpIHtcbiAgICBsZWZ0OiAtMS41cmVtOyB9XG4gIGEubGluay0taWNvbi1yaWdodCA+IHNwYW4sIGEubGluay0taWNvbi1yaWdodCBpIHtcbiAgICByaWdodDogLTEuMjVyZW07IH1cbiAgYS5saW5rLS1pY29uLXJpZ2h0OmhvdmVyID4gc3BhbiwgYS5saW5rLS1pY29uLXJpZ2h0OmhvdmVyIGksIGEubGluay0taWNvbi1yaWdodDpmb2N1cyA+IHNwYW4sIGEubGluay0taWNvbi1yaWdodDpmb2N1cyBpIHtcbiAgICByaWdodDogLTEuNXJlbTsgfVxuICBhLmFycm93LWxpbmsge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94OyB9XG4gICAgYS5hcnJvdy1saW5rOmFmdGVyIHtcbiAgICAgIGZvbnQtZmFtaWx5OiAnRm9udEF3ZXNvbWUnO1xuICAgICAgY29udGVudDogJ1xcZjE3OCc7XG4gICAgICBjb2xvcjogIzJEQzlENztcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGZvbnQtc2l6ZTogMThweDtcbiAgICAgIHRvcDogY2FsYyg1MCUgLSA5cHgpO1xuICAgICAgYm90dG9tOiBjYWxjKDUwJSAtIDlweCk7XG4gICAgICByaWdodDogLTFyZW07XG4gICAgICB0cmFuc2l0aW9uOiAwLjVzIGVhc2U7IH1cbiAgICBhLmFycm93LWxpbms6aG92ZXI6YWZ0ZXIsIGEuYXJyb3ctbGluazpmb2N1czphZnRlciwgYS5hcnJvdy1saW5rOmFjdGl2ZTphZnRlciB7XG4gICAgICByaWdodDogLTJyZW07IH1cblxuLmJ1YmJsZS1saW5rIHtcbiAgZGlzcGxheTogZmxleDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgei1pbmRleDogMztcbiAgYmFja2dyb3VuZC1jb2xvcjogI0ZDQjUzNjtcbiAgY29sb3I6ICMyMTIxMjE7XG4gIGZvbnQtZmFtaWx5OiBcImdvcmRpdGFib2xkXCIsIC1hcHBsZS1zeXN0ZW0sIEJsaW5rTWFjU3lzdGVtRm9udCwgXCJTZWdvZSBVSVwiLCBcIlJvYm90b1wiLCBcIk94eWdlblwiLCBcIlVidW50dVwiLCBcIkNhbnRhcmVsbFwiLCBcIkZpcmEgU2Fuc1wiLCBcIkRyb2lkIFNhbnNcIiwgXCJIZWx2ZXRpY2EgTmV1ZVwiLCBzYW5zLXNlcmlmO1xuICBib3JkZXItcmFkaXVzOiA1MCU7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIHBhZGRpbmc6IDFyZW0gMS41cmVtO1xuICBmb250LXNpemU6IDAuODc1cmVtO1xuICBoZWlnaHQ6IDcuNXJlbTtcbiAgbWF4LWhlaWdodDogNy41cmVtO1xuICB3aWR0aDogNy41cmVtOyB9XG4gIC5idWJibGUtbGluazpob3ZlciwgLmJ1YmJsZS1saW5rOmZvY3VzIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmRjODY4O1xuICAgIGNvbG9yOiAjMjEyMTIxO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5idWJibGUtbGluayB7XG4gICAgICBoZWlnaHQ6IDEwcmVtO1xuICAgICAgbWF4LWhlaWdodDogMTByZW07XG4gICAgICB3aWR0aDogMTByZW07IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5idWJibGUtbGluayB7XG4gICAgICBoZWlnaHQ6IDEzLjI1cmVtO1xuICAgICAgbWF4LWhlaWdodDogMTMuMjVyZW07XG4gICAgICB3aWR0aDogMTMuMjVyZW07IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5idWJibGUtbGluayB7XG4gICAgICBmb250LXNpemU6IDEuNXJlbTsgfSB9XG5cbi5icmVhZGNydW1iLXNlY3Rpb24ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmZmZmOyB9XG4gIC5icmVhZGNydW1iLXNlY3Rpb24gdWwuYnJlYWRjcnVtYnMge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGJvcmRlcjogbm9uZTtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZy10b3A6IDEuOHJlbTtcbiAgICBwYWRkaW5nLWJvdHRvbTogMS44cmVtOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIC5icmVhZGNydW1iLXNlY3Rpb24gdWwuYnJlYWRjcnVtYnMge1xuICAgICAgICBwYWRkaW5nLXRvcDogMy41cmVtO1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogMy41cmVtOyB9IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgLmJyZWFkY3J1bWItc2VjdGlvbiB1bC5icmVhZGNydW1icyB7XG4gICAgICAgIHBhZGRpbmctdG9wOiAzcmVtO1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogM3JlbTsgfSB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgICAgLmJyZWFkY3J1bWItc2VjdGlvbiB1bC5icmVhZGNydW1icyB7XG4gICAgICAgIHBhZGRpbmctdG9wOiAzLjZyZW07XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAzLjZyZW07IH0gfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDkwZW0pIHtcbiAgICAgIC5icmVhZGNydW1iLXNlY3Rpb24gdWwuYnJlYWRjcnVtYnMge1xuICAgICAgICBwYWRkaW5nLXRvcDogMy42cmVtO1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogMy42cmVtOyB9IH1cbiAgICAuYnJlYWRjcnVtYi1zZWN0aW9uIHVsLmJyZWFkY3J1bWJzID4gbGkge1xuICAgICAgZm9udC1zaXplOiAxcmVtO1xuICAgICAgdGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemU7XG4gICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC41KTsgfVxuICAgICAgLmJyZWFkY3J1bWItc2VjdGlvbiB1bC5icmVhZGNydW1icyA+IGxpID4gYSB7XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiBjYXBpdGFsaXplO1xuICAgICAgICBjb2xvcjogIzAwMDAwMDtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lOyB9XG4gICAgICAgIC5icmVhZGNydW1iLXNlY3Rpb24gdWwuYnJlYWRjcnVtYnMgPiBsaSA+IGE6aG92ZXIsIC5icmVhZGNydW1iLXNlY3Rpb24gdWwuYnJlYWRjcnVtYnMgPiBsaSA+IGE6Zm9jdXMsIC5icmVhZGNydW1iLXNlY3Rpb24gdWwuYnJlYWRjcnVtYnMgPiBsaSA+IGE6YWN0aXZlIHtcbiAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICAgICAgICBjb2xvcjogIzJEQzlENzsgfVxuICAgICAgLmJyZWFkY3J1bWItc2VjdGlvbiB1bC5icmVhZGNydW1icyA+IGxpOmJlZm9yZSB7XG4gICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICBkaXNwbGF5OiBub25lOyB9XG4gICAgICAuYnJlYWRjcnVtYi1zZWN0aW9uIHVsLmJyZWFkY3J1bWJzID4gbGk6YWZ0ZXIge1xuICAgICAgICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjIpOyB9XG4gIC5icmVhZGNydW1iLXNlY3Rpb24gLmJyZWFkY3J1bWJzIGxpOm5vdCg6bGFzdC1jaGlsZCk6OmFmdGVyIHtcbiAgICBtYXJnaW46IDAgMC41cmVtOyB9XG4gIC5icmVhZGNydW1iLXNlY3Rpb24uc2VhcmNoLXJlc3VsdHMtYnJlYWRjcnVtYnMge1xuICAgIHBhZGRpbmctYm90dG9tOiAwOyB9XG4gICAgLmJyZWFkY3J1bWItc2VjdGlvbi5zZWFyY2gtcmVzdWx0cy1icmVhZGNydW1icyA+IC5ncmlkLWNvbnRhaW5lciwgLmJyZWFkY3J1bWItc2VjdGlvbi5zZWFyY2gtcmVzdWx0cy1icmVhZGNydW1icyA+IC50b3AtYmFyIHtcbiAgICAgIHBhZGRpbmctYm90dG9tOiAwOyB9XG4gICAgLmJyZWFkY3J1bWItc2VjdGlvbi5zZWFyY2gtcmVzdWx0cy1icmVhZGNydW1icyB1bC5icmVhZGNydW1icyB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwOyB9XG5cbi5yZXZlYWwge1xuICBoZWlnaHQ6IGF1dG87XG4gIG1pbi1oZWlnaHQ6IGluaGVyaXQ7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBwYWRkaW5nOiA0cmVtIDEuNXJlbSAxLjVyZW0gMS41cmVtOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLnJldmVhbCB7XG4gICAgICBwYWRkaW5nOiA0cmVtIDJyZW0gMnJlbSAycmVtOyB9IH1cbiAgLnJldmVhbCBidXR0b24uY2xvc2UtYnV0dG9uIHtcbiAgICBmb250LXNpemU6IDIuNXJlbTtcbiAgICB0cmFuc2l0aW9uOiBhbGwgMC41cyBlYXNlO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4wNSk7XG4gICAgY29sb3I6ICMwMDAwMDA7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICByaWdodDogMDtcbiAgICBwYWRkaW5nOiAwLjI1cmVtIDFyZW07XG4gICAgbGluZS1oZWlnaHQ6IDE7IH1cbiAgICAucmV2ZWFsIGJ1dHRvbi5jbG9zZS1idXR0b246Zm9jdXMsIC5yZXZlYWwgYnV0dG9uLmNsb3NlLWJ1dHRvbjpob3ZlciwgLnJldmVhbCBidXR0b24uY2xvc2UtYnV0dG9uOmFjdGl2ZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMkRDOUQ3O1xuICAgICAgY29sb3I6ICNmZmZmZmY7IH1cblxuLmdldC1zdGFydGVkLXNlY3Rpb24ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHBhZGRpbmctdG9wOiAyLjI1cmVtO1xuICBwYWRkaW5nLWJvdHRvbTogNC41cmVtOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLmdldC1zdGFydGVkLXNlY3Rpb24ge1xuICAgICAgcGFkZGluZy10b3A6IDQuMzc1cmVtOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuZ2V0LXN0YXJ0ZWQtc2VjdGlvbiB7XG4gICAgICBwYWRkaW5nLXRvcDogMy43NXJlbTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICAuZ2V0LXN0YXJ0ZWQtc2VjdGlvbiB7XG4gICAgICBwYWRkaW5nLXRvcDogNC41cmVtOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTBlbSkge1xuICAgIC5nZXQtc3RhcnRlZC1zZWN0aW9uIHtcbiAgICAgIHBhZGRpbmctdG9wOiA0LjVyZW07IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5nZXQtc3RhcnRlZC1zZWN0aW9uIHtcbiAgICAgIHBhZGRpbmctYm90dG9tOiA4Ljc1cmVtOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuZ2V0LXN0YXJ0ZWQtc2VjdGlvbiB7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogNy41cmVtOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgIC5nZXQtc3RhcnRlZC1zZWN0aW9uIHtcbiAgICAgIHBhZGRpbmctYm90dG9tOiA5cmVtOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTBlbSkge1xuICAgIC5nZXQtc3RhcnRlZC1zZWN0aW9uIHtcbiAgICAgIHBhZGRpbmctYm90dG9tOiA5cmVtOyB9IH1cbiAgLmdldC1zdGFydGVkLXNlY3Rpb246OmFmdGVyIHtcbiAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMTgwZGVnLCByZ2JhKDI1NSwgMjU1LCAyNTUsIDApIDAlLCAjZmZmZmZmIDgwJSk7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIHRvcDogMDtcbiAgICBib3R0b206IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgbGVmdDogMDtcbiAgICB6LWluZGV4OiAwOyB9XG4gIC5nZXQtc3RhcnRlZC1zZWN0aW9uID4gKiB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHotaW5kZXg6IDI7IH1cblxuLmJ1YmJsZS1waW4tc2VjdGlvbiB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAuYnViYmxlLXBpbi1zZWN0aW9uIC5zZWN0aW9uLWNlbGwge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1mbG93OiBjb2x1bW47XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjsgfVxuICAuYnViYmxlLXBpbi1zZWN0aW9uIC50ZXh0LXdyYXBwZXIge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICB3aWR0aDogMTAwJTsgfVxuICAgIC5idWJibGUtcGluLXNlY3Rpb24gLnRleHQtd3JhcHBlciAuc2VjdGlvbi10aXRsZSB7XG4gICAgICBtYXJnaW4tdG9wOiAycmVtOyB9XG4gICAgLmJ1YmJsZS1waW4tc2VjdGlvbiAudGV4dC13cmFwcGVyIC5zZWN0aW9uLWNvbnRlbnQge1xuICAgICAgbWFyZ2luLXRvcDogMS4xMjVyZW07IH1cbiAgICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAgIC5idWJibGUtcGluLXNlY3Rpb24gLnRleHQtd3JhcHBlciAuc2VjdGlvbi1jb250ZW50IHtcbiAgICAgICAgICBtYXJnaW4tdG9wOiAyLjE4NzVyZW07IH0gfVxuICAgICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgICAgLmJ1YmJsZS1waW4tc2VjdGlvbiAudGV4dC13cmFwcGVyIC5zZWN0aW9uLWNvbnRlbnQge1xuICAgICAgICAgIG1hcmdpbi10b3A6IDEuODc1cmVtOyB9IH1cbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICAgICAgLmJ1YmJsZS1waW4tc2VjdGlvbiAudGV4dC13cmFwcGVyIC5zZWN0aW9uLWNvbnRlbnQge1xuICAgICAgICAgIG1hcmdpbi10b3A6IDIuMjVyZW07IH0gfVxuICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTBlbSkge1xuICAgICAgICAuYnViYmxlLXBpbi1zZWN0aW9uIC50ZXh0LXdyYXBwZXIgLnNlY3Rpb24tY29udGVudCB7XG4gICAgICAgICAgbWFyZ2luLXRvcDogMi4yNXJlbTsgfSB9XG4gIC5idWJibGUtcGluLXNlY3Rpb24gLmJ1dHRvbiB7XG4gICAgbWFyZ2luLXRvcDogMS4xMjVyZW07IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgLmJ1YmJsZS1waW4tc2VjdGlvbiAuYnV0dG9uIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMi4xODc1cmVtOyB9IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgLmJ1YmJsZS1waW4tc2VjdGlvbiAuYnV0dG9uIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMS44NzVyZW07IH0gfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICAgIC5idWJibGUtcGluLXNlY3Rpb24gLmJ1dHRvbiB7XG4gICAgICAgIG1hcmdpbi10b3A6IDIuMjVyZW07IH0gfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDkwZW0pIHtcbiAgICAgIC5idWJibGUtcGluLXNlY3Rpb24gLmJ1dHRvbiB7XG4gICAgICAgIG1hcmdpbi10b3A6IDIuMjVyZW07IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuZ29hbC1zZWN0aW9uIHtcbiAgICBwYWRkaW5nLXRvcDogM3JlbTtcbiAgICBwYWRkaW5nLWJvdHRvbTogM3JlbTsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5nb2FsLXNlY3Rpb24ge1xuICAgICAgcGFkZGluZy10b3A6IDUuODMzMzNyZW07XG4gICAgICBwYWRkaW5nLWJvdHRvbTogNS44MzMzM3JlbTsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5nb2FsLXNlY3Rpb24ge1xuICAgICAgcGFkZGluZy10b3A6IDVyZW07XG4gICAgICBwYWRkaW5nLWJvdHRvbTogNXJlbTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgLmdvYWwtc2VjdGlvbiB7XG4gICAgICBwYWRkaW5nLXRvcDogNnJlbTtcbiAgICAgIHBhZGRpbmctYm90dG9tOiA2cmVtOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkgYW5kIChtaW4td2lkdGg6IDkwZW0pIHtcbiAgICAuZ29hbC1zZWN0aW9uIHtcbiAgICAgIHBhZGRpbmctdG9wOiA2cmVtO1xuICAgICAgcGFkZGluZy1ib3R0b206IDZyZW07IH0gfVxuXG4uZ29hbC1zZWN0aW9uIC5nb2FsLXNlY3Rpb24tZ3JpZCB7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7IH1cblxuLmdvYWwtc2VjdGlvbiAuZ29hbC1jdGEtY29sIHtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuZ29hbC1zZWN0aW9uIC5nb2FsLWN0YS1jb2wge1xuICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDsgfSB9XG4gIC5nb2FsLXNlY3Rpb24gLmdvYWwtY3RhLWNvbCAuY3RhLXdyYXBwZXIge1xuICAgIHdpZHRoOiBhdXRvO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5LjkzNzVlbSkge1xuICAgICAgLmdvYWwtc2VjdGlvbiAuZ29hbC1jdGEtY29sIC5jdGEtd3JhcHBlciB7XG4gICAgICAgIG1hcmdpbi1yaWdodDogY2FsYyggKDEuNXJlbSArIDIwJSkqLTEpO1xuICAgICAgICB3aWR0aDogY2FsYygxMDAlICsgKDEuNXJlbSAqIDEpKTtcbiAgICAgICAgbWF4LXdpZHRoOiBub25lOyB9IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgLmdvYWwtc2VjdGlvbiAuZ29hbC1jdGEtY29sIC5jdGEtd3JhcHBlciB7XG4gICAgICAgIG1heC13aWR0aDogY2FsYygyNC4zNzVyZW0gKyAxMCUpOyB9IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgLmdvYWwtc2VjdGlvbiAuZ29hbC1jdGEtY29sIC5jdGEtd3JhcHBlciB7XG4gICAgICAgIG1heC13aWR0aDogbm9uZTsgfSB9XG4gICAgLmdvYWwtc2VjdGlvbiAuZ29hbC1jdGEtY29sIC5jdGEtd3JhcHBlciAubWFpbi1pbWFnZSB7XG4gICAgICBib3JkZXItcmFkaXVzOiAyMHB4O1xuICAgICAgb2JqZWN0LWZpdDogY292ZXI7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGhlaWdodDogMjEuMjVyZW07XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICB6LWluZGV4OiAwOyB9XG4gICAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgICAuZ29hbC1zZWN0aW9uIC5nb2FsLWN0YS1jb2wgLmN0YS13cmFwcGVyIC5tYWluLWltYWdlIHtcbiAgICAgICAgICBoZWlnaHQ6IDI0LjM3NXJlbTsgfSB9XG4gICAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgICAuZ29hbC1zZWN0aW9uIC5nb2FsLWN0YS1jb2wgLmN0YS13cmFwcGVyIC5tYWluLWltYWdlIHtcbiAgICAgICAgICBoZWlnaHQ6IDMxLjI1cmVtO1xuICAgICAgICAgIHdpZHRoOiA5MCU7XG4gICAgICAgICAgbWF4LXdpZHRoOiBub25lO1xuICAgICAgICAgIG1hcmdpbi1sZWZ0OiAxMCU7IH0gfVxuICAgIC5nb2FsLXNlY3Rpb24gLmdvYWwtY3RhLWNvbCAuY3RhLXdyYXBwZXIgLmdyYXBoaWMge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgd2lkdGg6IGF1dG87XG4gICAgICBtYXgtd2lkdGg6IG5vbmU7XG4gICAgICBoZWlnaHQ6IDguMTI1cmVtO1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgYm90dG9tOiAxMCU7XG4gICAgICBtYXJnaW4tbGVmdDogY2FsYygoMTUlICsgMjBweCkgKiAtMSk7XG4gICAgICB6LWluZGV4OiAxOyB9XG4gICAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgICAuZ29hbC1zZWN0aW9uIC5nb2FsLWN0YS1jb2wgLmN0YS13cmFwcGVyIC5ncmFwaGljIHtcbiAgICAgICAgICBoZWlnaHQ6IDEwcmVtO1xuICAgICAgICAgIG1hcmdpbi1sZWZ0OiBjYWxjKCgxNSUgKyA0MHB4KSAqIC0xKTsgfSB9XG4gICAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgICAuZ29hbC1zZWN0aW9uIC5nb2FsLWN0YS1jb2wgLmN0YS13cmFwcGVyIC5ncmFwaGljIHtcbiAgICAgICAgICBtYXJnaW4tbGVmdDogLTQwcHg7IH0gfVxuXG4uZ29hbC1zZWN0aW9uIC5jb250ZW50LWNvbCB7XG4gIHBhZGRpbmctdG9wOiAyLjI1cmVtOyB9XG4gIC5nb2FsLXNlY3Rpb24gLmNvbnRlbnQtY29sIC5jb250ZW50LXdyYXBwZXIge1xuICAgIG1heC13aWR0aDogMjkuMTg3NXJlbTsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjkzNzVlbSkge1xuICAgICAgLmdvYWwtc2VjdGlvbiAuY29udGVudC1jb2wgLmNvbnRlbnQtd3JhcHBlciB7XG4gICAgICAgIG1hcmdpbjogMCBhdXRvO1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH0gfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjkzNzVlbSkge1xuICAgICAgLmdvYWwtc2VjdGlvbiAuY29udGVudC1jb2wgLmNvbnRlbnQtd3JhcHBlciAuYnViYmxlLXBpbiB7XG4gICAgICAgIG1hcmdpbjogMCBhdXRvOyB9IH1cbiAgICAuZ29hbC1zZWN0aW9uIC5jb250ZW50LWNvbCAuY29udGVudC13cmFwcGVyIC5nb2FsLXNlY3Rpb24tdGl0bGUge1xuICAgICAgbWFyZ2luLXRvcDogMi4yNXJlbTtcbiAgICAgIG1hcmdpbi1ib3R0b206IDIuMjVyZW07IH1cblxuLmd1aWRhbmNlLXNlY3Rpb24ge1xuICBwYWRkaW5nLXRvcDogNC41cmVtO1xuICBwYWRkaW5nLWJvdHRvbTogNC41cmVtOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLmd1aWRhbmNlLXNlY3Rpb24ge1xuICAgICAgcGFkZGluZy10b3A6IDguNzVyZW07XG4gICAgICBwYWRkaW5nLWJvdHRvbTogOC43NXJlbTsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmd1aWRhbmNlLXNlY3Rpb24ge1xuICAgICAgcGFkZGluZy10b3A6IDcuNXJlbTtcbiAgICAgIHBhZGRpbmctYm90dG9tOiA3LjVyZW07IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgLmd1aWRhbmNlLXNlY3Rpb24ge1xuICAgICAgcGFkZGluZy10b3A6IDlyZW07XG4gICAgICBwYWRkaW5nLWJvdHRvbTogOXJlbTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDkwZW0pIHtcbiAgICAuZ3VpZGFuY2Utc2VjdGlvbiB7XG4gICAgICBwYWRkaW5nLXRvcDogOXJlbTtcbiAgICAgIHBhZGRpbmctYm90dG9tOiA5cmVtOyB9IH1cbiAgLmd1aWRhbmNlLXNlY3Rpb24gLmltYWdlLWNvbGxlY3Rpb24td3JhcHBlciB7XG4gICAgLyoqXG4gIGV4dGVuZCBlbGVtZW50IHRoZSBkaXN0YW5jZSBvZiB0aGUgZ3JpZC1jb250YWluZXIgcGFkZGluZyBzbyB0aGF0XG4gIGl0J3MgZmx1c2ggd2l0aCBsZWZ0L3JpZ2h0IGVkZ2VzIG9mIHRoZSBzY3JlZW5cbiAgICovXG4gICAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTM3NWVtKSB7XG4gICAgICAuZ3VpZGFuY2Utc2VjdGlvbiAuaW1hZ2UtY29sbGVjdGlvbi13cmFwcGVyIHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IC0xLjVyZW07XG4gICAgICAgIG1hcmdpbi1yaWdodDogLTEuNXJlbTtcbiAgICAgICAgd2lkdGg6IGNhbGMoMTAwJSArICgxLjVyZW0gKiAyKSk7IH0gfVxuICAgIC5ndWlkYW5jZS1zZWN0aW9uIC5pbWFnZS1jb2xsZWN0aW9uLXdyYXBwZXIgLmd1aWRhbmNlLXNlY3Rpb24tc2lkZS1pbWFnZSB7XG4gICAgICBoZWlnaHQ6IDMzLjE4NzVyZW07XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIG9iamVjdC1maXQ6IGNvdmVyO1xuICAgICAgbWFyZ2luLWJvdHRvbTogNnJlbTtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIHotaW5kZXg6IDA7IH1cbiAgICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAgIC5ndWlkYW5jZS1zZWN0aW9uIC5pbWFnZS1jb2xsZWN0aW9uLXdyYXBwZXIgLmd1aWRhbmNlLXNlY3Rpb24tc2lkZS1pbWFnZSB7XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogMTEuNjY2NjdyZW07IH0gfVxuICAgICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgICAgLmd1aWRhbmNlLXNlY3Rpb24gLmltYWdlLWNvbGxlY3Rpb24td3JhcHBlciAuZ3VpZGFuY2Utc2VjdGlvbi1zaWRlLWltYWdlIHtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxMHJlbTsgfSB9XG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgICAgIC5ndWlkYW5jZS1zZWN0aW9uIC5pbWFnZS1jb2xsZWN0aW9uLXdyYXBwZXIgLmd1aWRhbmNlLXNlY3Rpb24tc2lkZS1pbWFnZSB7XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogMTJyZW07IH0gfVxuICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTBlbSkge1xuICAgICAgICAuZ3VpZGFuY2Utc2VjdGlvbiAuaW1hZ2UtY29sbGVjdGlvbi13cmFwcGVyIC5ndWlkYW5jZS1zZWN0aW9uLXNpZGUtaW1hZ2Uge1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206IDEycmVtOyB9IH1cbiAgICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAgIC5ndWlkYW5jZS1zZWN0aW9uIC5pbWFnZS1jb2xsZWN0aW9uLXdyYXBwZXIgLmd1aWRhbmNlLXNlY3Rpb24tc2lkZS1pbWFnZSB7XG4gICAgICAgICAgYm9yZGVyLXJhZGl1czogMjBweDtcbiAgICAgICAgICB3aWR0aDogNzAlO1xuICAgICAgICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgICAgICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgICAgICBoZWlnaHQ6IDI4Ljc1cmVtO1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206IDIuMjVyZW07IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkgYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuZ3VpZGFuY2Utc2VjdGlvbiAuaW1hZ2UtY29sbGVjdGlvbi13cmFwcGVyIC5ndWlkYW5jZS1zZWN0aW9uLXNpZGUtaW1hZ2Uge1xuICAgICAgbWFyZ2luLWJvdHRvbTogNC4zNzVyZW07IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkgYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuZ3VpZGFuY2Utc2VjdGlvbiAuaW1hZ2UtY29sbGVjdGlvbi13cmFwcGVyIC5ndWlkYW5jZS1zZWN0aW9uLXNpZGUtaW1hZ2Uge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMy43NXJlbTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgLmd1aWRhbmNlLXNlY3Rpb24gLmltYWdlLWNvbGxlY3Rpb24td3JhcHBlciAuZ3VpZGFuY2Utc2VjdGlvbi1zaWRlLWltYWdlIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDQuNXJlbTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIGFuZCAobWluLXdpZHRoOiA5MGVtKSB7XG4gICAgLmd1aWRhbmNlLXNlY3Rpb24gLmltYWdlLWNvbGxlY3Rpb24td3JhcHBlciAuZ3VpZGFuY2Utc2VjdGlvbi1zaWRlLWltYWdlIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDQuNXJlbTsgfSB9XG4gICAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgICAuZ3VpZGFuY2Utc2VjdGlvbiAuaW1hZ2UtY29sbGVjdGlvbi13cmFwcGVyIC5ndWlkYW5jZS1zZWN0aW9uLXNpZGUtaW1hZ2Uge1xuICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgIGhlaWdodDogMzcuNXJlbTsgfSB9XG4gICAgLmd1aWRhbmNlLXNlY3Rpb24gLmltYWdlLWNvbGxlY3Rpb24td3JhcHBlciAuY2FyZC1ncmFwaGljIHtcbiAgICAgIGhlaWdodDogYXV0bztcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgbGVmdDogNTAlO1xuICAgICAgb2JqZWN0LWZpdDogY29udGFpbjtcbiAgICAgIGJvdHRvbTogLTQ0cHg7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIG1heC13aWR0aDogMjByZW07XG4gICAgICB6LWluZGV4OiAxOyB9XG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45Mzc1ZW0pIHtcbiAgICAgICAgLmd1aWRhbmNlLXNlY3Rpb24gLmltYWdlLWNvbGxlY3Rpb24td3JhcHBlciAuY2FyZC1ncmFwaGljIHtcbiAgICAgICAgICBtYXJnaW4tbGVmdDogY2FsYyggKCAoIDE5LjM3NXJlbSAvIDIpICsgKDQ0cHggLyA2KSApICotMSk7IH0gfVxuICAgICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgICAgLmd1aWRhbmNlLXNlY3Rpb24gLmltYWdlLWNvbGxlY3Rpb24td3JhcHBlciAuY2FyZC1ncmFwaGljIHtcbiAgICAgICAgICBoZWlnaHQ6IDIzLjEyNXJlbTtcbiAgICAgICAgICByaWdodDogLTQ0cHg7XG4gICAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICAgICAgbWF4LXdpZHRoOiBub25lO1xuICAgICAgICAgIGxlZnQ6IGF1dG87IH0gfVxuICAgICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgICAgLmd1aWRhbmNlLXNlY3Rpb24gLmltYWdlLWNvbGxlY3Rpb24td3JhcHBlciAuY2FyZC1ncmFwaGljIHtcbiAgICAgICAgICByaWdodDogLTMwJTsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmd1aWRhbmNlLXNlY3Rpb24gLmNvbnRlbnQtY29sIHtcbiAgICAgIHBhZGRpbmctbGVmdDogMi4yNXJlbTsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5ndWlkYW5jZS1zZWN0aW9uIC5jb250ZW50LWNvbCB7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDQuMzc1cmVtOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmd1aWRhbmNlLXNlY3Rpb24gLmNvbnRlbnQtY29sIHtcbiAgICAgIHBhZGRpbmctbGVmdDogMy43NXJlbTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgLmd1aWRhbmNlLXNlY3Rpb24gLmNvbnRlbnQtY29sIHtcbiAgICAgIHBhZGRpbmctbGVmdDogNC41cmVtOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkgYW5kIChtaW4td2lkdGg6IDkwZW0pIHtcbiAgICAuZ3VpZGFuY2Utc2VjdGlvbiAuY29udGVudC1jb2wge1xuICAgICAgcGFkZGluZy1sZWZ0OiA0LjVyZW07IH0gfVxuICAuZ3VpZGFuY2Utc2VjdGlvbiAuY29udGVudC13cmFwcGVyIHtcbiAgICBwYWRkaW5nLXRvcDogNC41cmVtO1xuICAgIG1hcmdpbjogMCBhdXRvO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBtYXgtd2lkdGg6IDIxcmVtOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIC5ndWlkYW5jZS1zZWN0aW9uIC5jb250ZW50LXdyYXBwZXIge1xuICAgICAgICBwYWRkaW5nLXRvcDogOC43NXJlbTsgfSB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgIC5ndWlkYW5jZS1zZWN0aW9uIC5jb250ZW50LXdyYXBwZXIge1xuICAgICAgICBwYWRkaW5nLXRvcDogNy41cmVtOyB9IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgICAuZ3VpZGFuY2Utc2VjdGlvbiAuY29udGVudC13cmFwcGVyIHtcbiAgICAgICAgcGFkZGluZy10b3A6IDlyZW07IH0gfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDkwZW0pIHtcbiAgICAgIC5ndWlkYW5jZS1zZWN0aW9uIC5jb250ZW50LXdyYXBwZXIge1xuICAgICAgICBwYWRkaW5nLXRvcDogOXJlbTsgfSB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIC5ndWlkYW5jZS1zZWN0aW9uIC5jb250ZW50LXdyYXBwZXIge1xuICAgICAgICBwYWRkaW5nLXRvcDogMi4yNXJlbTsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5ndWlkYW5jZS1zZWN0aW9uIC5jb250ZW50LXdyYXBwZXIge1xuICAgICAgcGFkZGluZy10b3A6IDQuMzc1cmVtOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmd1aWRhbmNlLXNlY3Rpb24gLmNvbnRlbnQtd3JhcHBlciB7XG4gICAgICBwYWRkaW5nLXRvcDogMy43NXJlbTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgLmd1aWRhbmNlLXNlY3Rpb24gLmNvbnRlbnQtd3JhcHBlciB7XG4gICAgICBwYWRkaW5nLXRvcDogNC41cmVtOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkgYW5kIChtaW4td2lkdGg6IDkwZW0pIHtcbiAgICAuZ3VpZGFuY2Utc2VjdGlvbiAuY29udGVudC13cmFwcGVyIHtcbiAgICAgIHBhZGRpbmctdG9wOiA0LjVyZW07IH0gfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAuZ3VpZGFuY2Utc2VjdGlvbiAuY29udGVudC13cmFwcGVyIHtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0OyB9IH1cbiAgICAuZ3VpZGFuY2Utc2VjdGlvbiAuY29udGVudC13cmFwcGVyIC5idWJibGUtcGluIHtcbiAgICAgIG1hcmdpbjogMCBhdXRvIDEuNXJlbTsgfVxuICAgICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgICAgLmd1aWRhbmNlLXNlY3Rpb24gLmNvbnRlbnQtd3JhcHBlciAuYnViYmxlLXBpbiB7XG4gICAgICAgICAgbWFyZ2luOiAwIDAgMS41cmVtOyB9IH1cbiAgICAuZ3VpZGFuY2Utc2VjdGlvbiAuY29udGVudC13cmFwcGVyIC5ndWlkYW5jZS1zZWN0aW9uLXRpdGxlIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDEuNXJlbTsgfVxuICAgIC5ndWlkYW5jZS1zZWN0aW9uIC5jb250ZW50LXdyYXBwZXIgLmd1aWRhbmNlLXNlY3Rpb24tY29udGVudCB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAxLjVyZW07IH1cblxuLnRyYWNraW5nLXNlY3Rpb24ge1xuICBwYWRkaW5nLXRvcDogNC41cmVtO1xuICBwYWRkaW5nLWJvdHRvbTogNC41cmVtOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLnRyYWNraW5nLXNlY3Rpb24ge1xuICAgICAgcGFkZGluZy10b3A6IDguNzVyZW07XG4gICAgICBwYWRkaW5nLWJvdHRvbTogOC43NXJlbTsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLnRyYWNraW5nLXNlY3Rpb24ge1xuICAgICAgcGFkZGluZy10b3A6IDcuNXJlbTtcbiAgICAgIHBhZGRpbmctYm90dG9tOiA3LjVyZW07IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgLnRyYWNraW5nLXNlY3Rpb24ge1xuICAgICAgcGFkZGluZy10b3A6IDlyZW07XG4gICAgICBwYWRkaW5nLWJvdHRvbTogOXJlbTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDkwZW0pIHtcbiAgICAudHJhY2tpbmctc2VjdGlvbiB7XG4gICAgICBwYWRkaW5nLXRvcDogOXJlbTtcbiAgICAgIHBhZGRpbmctYm90dG9tOiA5cmVtOyB9IH1cbiAgLnRyYWNraW5nLXNlY3Rpb24gLmNvbnRlbnQtY29sIHtcbiAgICBtYXJnaW4tYm90dG9tOiAyLjI1cmVtOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIC50cmFja2luZy1zZWN0aW9uIC5jb250ZW50LWNvbCB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDQuMzc1cmVtOyB9IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgLnRyYWNraW5nLXNlY3Rpb24gLmNvbnRlbnQtY29sIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMy43NXJlbTsgfSB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgICAgLnRyYWNraW5nLXNlY3Rpb24gLmNvbnRlbnQtY29sIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogNC41cmVtOyB9IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5MGVtKSB7XG4gICAgICAudHJhY2tpbmctc2VjdGlvbiAuY29udGVudC1jb2wge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiA0LjVyZW07IH0gfVxuICAgIC50cmFja2luZy1zZWN0aW9uIC5jb250ZW50LWNvbCAuY29udGVudC13cmFwcGVyIHtcbiAgICAgIG1hcmdpbjogMCAwIDAgYXV0bzsgfVxuICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTM3NWVtKSB7XG4gICAgICAgIC50cmFja2luZy1zZWN0aW9uIC5jb250ZW50LWNvbCAuY29udGVudC13cmFwcGVyIHtcbiAgICAgICAgICBtYXJnaW46IDAgYXV0bztcbiAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH0gfVxuICAgICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgICAgLnRyYWNraW5nLXNlY3Rpb24gLmNvbnRlbnQtY29sIC5jb250ZW50LXdyYXBwZXIge1xuICAgICAgICAgIHdpZHRoOiA5NSU7XG4gICAgICAgICAgbWFyZ2luLXJpZ2h0OiBhdXRvOyB9IH1cbiAgICAgIC50cmFja2luZy1zZWN0aW9uIC5jb250ZW50LWNvbCAuY29udGVudC13cmFwcGVyIC5idWJibGUtcGluIHtcbiAgICAgICAgbWFyZ2luOiAwIGF1dG8gMS41cmVtOyB9XG4gICAgICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAgICAgLnRyYWNraW5nLXNlY3Rpb24gLmNvbnRlbnQtY29sIC5jb250ZW50LXdyYXBwZXIgLmJ1YmJsZS1waW4ge1xuICAgICAgICAgICAgbWFyZ2luOiAwIDAgMS41cmVtOyB9IH1cbiAgICAgIC50cmFja2luZy1zZWN0aW9uIC5jb250ZW50LWNvbCAuY29udGVudC13cmFwcGVyIC50cmFja2luZy1zZWN0aW9uLXRpdGxlIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMi4yNXJlbTsgfVxuICAgICAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgICAgIC50cmFja2luZy1zZWN0aW9uIC5jb250ZW50LWNvbCAuY29udGVudC13cmFwcGVyIC50cmFja2luZy1zZWN0aW9uLXRpdGxlIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDQuMzc1cmVtOyB9IH1cbiAgICAgICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgICAgICAudHJhY2tpbmctc2VjdGlvbiAuY29udGVudC1jb2wgLmNvbnRlbnQtd3JhcHBlciAudHJhY2tpbmctc2VjdGlvbi10aXRsZSB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAzLjc1cmVtOyB9IH1cbiAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgICAgICAgIC50cmFja2luZy1zZWN0aW9uIC5jb250ZW50LWNvbCAuY29udGVudC13cmFwcGVyIC50cmFja2luZy1zZWN0aW9uLXRpdGxlIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDQuNXJlbTsgfSB9XG4gICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDkwZW0pIHtcbiAgICAgICAgICAudHJhY2tpbmctc2VjdGlvbiAuY29udGVudC1jb2wgLmNvbnRlbnQtd3JhcHBlciAudHJhY2tpbmctc2VjdGlvbi10aXRsZSB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiA0LjVyZW07IH0gfVxuICAgICAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgICAgIC50cmFja2luZy1zZWN0aW9uIC5jb250ZW50LWNvbCAuY29udGVudC13cmFwcGVyIC50cmFja2luZy1zZWN0aW9uLXRpdGxlIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDEuMTI1cmVtOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLnRyYWNraW5nLXNlY3Rpb24gLmNvbnRlbnQtY29sIC5jb250ZW50LXdyYXBwZXIgLnRyYWNraW5nLXNlY3Rpb24tdGl0bGUge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMi4xODc1cmVtOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLnRyYWNraW5nLXNlY3Rpb24gLmNvbnRlbnQtY29sIC5jb250ZW50LXdyYXBwZXIgLnRyYWNraW5nLXNlY3Rpb24tdGl0bGUge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMS44NzVyZW07IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgIC50cmFja2luZy1zZWN0aW9uIC5jb250ZW50LWNvbCAuY29udGVudC13cmFwcGVyIC50cmFja2luZy1zZWN0aW9uLXRpdGxlIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDIuMjVyZW07IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSBhbmQgKG1pbi13aWR0aDogOTBlbSkge1xuICAgIC50cmFja2luZy1zZWN0aW9uIC5jb250ZW50LWNvbCAuY29udGVudC13cmFwcGVyIC50cmFja2luZy1zZWN0aW9uLXRpdGxlIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDIuMjVyZW07IH0gfVxuICAgICAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgICAgIC50cmFja2luZy1zZWN0aW9uIC5jb250ZW50LWNvbCAuY29udGVudC13cmFwcGVyIC50cmFja2luZy1zZWN0aW9uLXRpdGxlIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDEuMTI1cmVtOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLnRyYWNraW5nLXNlY3Rpb24gLmNvbnRlbnQtY29sIC5jb250ZW50LXdyYXBwZXIgLnRyYWNraW5nLXNlY3Rpb24tdGl0bGUge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMi4xODc1cmVtOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLnRyYWNraW5nLXNlY3Rpb24gLmNvbnRlbnQtY29sIC5jb250ZW50LXdyYXBwZXIgLnRyYWNraW5nLXNlY3Rpb24tdGl0bGUge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMS44NzVyZW07IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgIC50cmFja2luZy1zZWN0aW9uIC5jb250ZW50LWNvbCAuY29udGVudC13cmFwcGVyIC50cmFja2luZy1zZWN0aW9uLXRpdGxlIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDIuMjVyZW07IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSBhbmQgKG1pbi13aWR0aDogOTBlbSkge1xuICAgIC50cmFja2luZy1zZWN0aW9uIC5jb250ZW50LWNvbCAuY29udGVudC13cmFwcGVyIC50cmFja2luZy1zZWN0aW9uLXRpdGxlIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDIuMjVyZW07IH0gfVxuICAudHJhY2tpbmctc2VjdGlvbiAuaW1hZ2UtY29udCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gICAgLnRyYWNraW5nLXNlY3Rpb24gLmltYWdlLWNvbnQgLmltYWdlLWNlbGwge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGFsaWduLWl0ZW1zOiBiYXNlbGluZTsgfVxuICAgICAgLnRyYWNraW5nLXNlY3Rpb24gLmltYWdlLWNvbnQgLmltYWdlLWNlbGwtLTEge1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kOyB9XG4gICAgICAudHJhY2tpbmctc2VjdGlvbiAuaW1hZ2UtY29udCAuaW1hZ2UtY2VsbC0tMiB7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDsgfVxuICAgIC50cmFja2luZy1zZWN0aW9uIC5pbWFnZS1jb250IC50cmFja2luZy1zZWN0aW9uLWltYWdlIHtcbiAgICAgIGhlaWdodDogYXV0bztcbiAgICAgIGJveC1zaGFkb3c6IDByZW0gNHB4IDQwcHggcmdiYSgwLCAwLCAwLCAwLjEpO1xuICAgICAgYm9yZGVyLXJhZGl1czogMzBweDsgfVxuICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTM3NWVtKSB7XG4gICAgICAgIC50cmFja2luZy1zZWN0aW9uIC5pbWFnZS1jb250IC50cmFja2luZy1zZWN0aW9uLWltYWdlIHtcbiAgICAgICAgICB3aWR0aDogY2FsYygxMDAlICsgKDEuNXJlbSAqIDIpKTtcbiAgICAgICAgICBtYXgtd2lkdGg6IG5vbmU7IH0gfVxuICAgICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgICAgLnRyYWNraW5nLXNlY3Rpb24gLmltYWdlLWNvbnQgLnRyYWNraW5nLXNlY3Rpb24taW1hZ2Uge1xuICAgICAgICAgIHdpZHRoOiA5NyU7IH0gfVxuICAgICAgLnRyYWNraW5nLXNlY3Rpb24gLmltYWdlLWNvbnQgLnRyYWNraW5nLXNlY3Rpb24taW1hZ2UtLTEge1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IGF1dG87IH1cbiAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTM3NWVtKSB7XG4gICAgICAgICAgLnRyYWNraW5nLXNlY3Rpb24gLmltYWdlLWNvbnQgLnRyYWNraW5nLXNlY3Rpb24taW1hZ2UtLTEge1xuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IC0xLjVyZW07IH0gfVxuICAgICAgLnRyYWNraW5nLXNlY3Rpb24gLmltYWdlLWNvbnQgLnRyYWNraW5nLXNlY3Rpb24taW1hZ2UtLTIge1xuICAgICAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICAgICAgbWFyZ2luLXRvcDogNnJlbTsgfVxuICAgICAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgICAgIC50cmFja2luZy1zZWN0aW9uIC5pbWFnZS1jb250IC50cmFja2luZy1zZWN0aW9uLWltYWdlLS0yIHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDExLjY2NjY3cmVtOyB9IH1cbiAgICAgICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgICAgICAudHJhY2tpbmctc2VjdGlvbiAuaW1hZ2UtY29udCAudHJhY2tpbmctc2VjdGlvbi1pbWFnZS0tMiB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAxMHJlbTsgfSB9XG4gICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICAgICAgICAudHJhY2tpbmctc2VjdGlvbiAuaW1hZ2UtY29udCAudHJhY2tpbmctc2VjdGlvbi1pbWFnZS0tMiB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAxMnJlbTsgfSB9XG4gICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDkwZW0pIHtcbiAgICAgICAgICAudHJhY2tpbmctc2VjdGlvbiAuaW1hZ2UtY29udCAudHJhY2tpbmctc2VjdGlvbi1pbWFnZS0tMiB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAxMnJlbTsgfSB9XG4gICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5LjkzNzVlbSkge1xuICAgICAgICAgIC50cmFja2luZy1zZWN0aW9uIC5pbWFnZS1jb250IC50cmFja2luZy1zZWN0aW9uLWltYWdlLS0yIHtcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogLTEuNXJlbTsgfSB9XG4gICAgICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAgICAgLnRyYWNraW5nLXNlY3Rpb24gLmltYWdlLWNvbnQgLnRyYWNraW5nLXNlY3Rpb24taW1hZ2UtLTIge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogNC41cmVtOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLnRyYWNraW5nLXNlY3Rpb24gLmltYWdlLWNvbnQgLnRyYWNraW5nLXNlY3Rpb24taW1hZ2UtLTIge1xuICAgICAgbWFyZ2luLXRvcDogOC43NXJlbTsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC50cmFja2luZy1zZWN0aW9uIC5pbWFnZS1jb250IC50cmFja2luZy1zZWN0aW9uLWltYWdlLS0yIHtcbiAgICAgIG1hcmdpbi10b3A6IDcuNXJlbTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgLnRyYWNraW5nLXNlY3Rpb24gLmltYWdlLWNvbnQgLnRyYWNraW5nLXNlY3Rpb24taW1hZ2UtLTIge1xuICAgICAgbWFyZ2luLXRvcDogOXJlbTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIGFuZCAobWluLXdpZHRoOiA5MGVtKSB7XG4gICAgLnRyYWNraW5nLXNlY3Rpb24gLmltYWdlLWNvbnQgLnRyYWNraW5nLXNlY3Rpb24taW1hZ2UtLTIge1xuICAgICAgbWFyZ2luLXRvcDogOXJlbTsgfSB9XG4gICAgICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAgICAgLnRyYWNraW5nLXNlY3Rpb24gLmltYWdlLWNvbnQgLnRyYWNraW5nLXNlY3Rpb24taW1hZ2UtLTIge1xuICAgICAgICAgICAgd2lkdGg6IDk1JTtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IC00LjVyZW07IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkgYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAudHJhY2tpbmctc2VjdGlvbiAuaW1hZ2UtY29udCAudHJhY2tpbmctc2VjdGlvbi1pbWFnZS0tMiB7XG4gICAgICBtYXJnaW4tdG9wOiAtOC43NXJlbTsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC50cmFja2luZy1zZWN0aW9uIC5pbWFnZS1jb250IC50cmFja2luZy1zZWN0aW9uLWltYWdlLS0yIHtcbiAgICAgIG1hcmdpbi10b3A6IC03LjVyZW07IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgIC50cmFja2luZy1zZWN0aW9uIC5pbWFnZS1jb250IC50cmFja2luZy1zZWN0aW9uLWltYWdlLS0yIHtcbiAgICAgIG1hcmdpbi10b3A6IC05cmVtOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkgYW5kIChtaW4td2lkdGg6IDkwZW0pIHtcbiAgICAudHJhY2tpbmctc2VjdGlvbiAuaW1hZ2UtY29udCAudHJhY2tpbmctc2VjdGlvbi1pbWFnZS0tMiB7XG4gICAgICBtYXJnaW4tdG9wOiAtOXJlbTsgfSB9XG5cbi5wcm9ncmVzcy1zZWN0aW9uIHtcbiAgcGFkZGluZy10b3A6IDQuNXJlbTtcbiAgcGFkZGluZy1ib3R0b206IDQuNXJlbTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5wcm9ncmVzcy1zZWN0aW9uIHtcbiAgICAgIHBhZGRpbmctdG9wOiA4Ljc1cmVtO1xuICAgICAgcGFkZGluZy1ib3R0b206IDguNzVyZW07IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5wcm9ncmVzcy1zZWN0aW9uIHtcbiAgICAgIHBhZGRpbmctdG9wOiA3LjVyZW07XG4gICAgICBwYWRkaW5nLWJvdHRvbTogNy41cmVtOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgIC5wcm9ncmVzcy1zZWN0aW9uIHtcbiAgICAgIHBhZGRpbmctdG9wOiA5cmVtO1xuICAgICAgcGFkZGluZy1ib3R0b206IDlyZW07IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5MGVtKSB7XG4gICAgLnByb2dyZXNzLXNlY3Rpb24ge1xuICAgICAgcGFkZGluZy10b3A6IDlyZW07XG4gICAgICBwYWRkaW5nLWJvdHRvbTogOXJlbTsgfSB9XG4gIC5wcm9ncmVzcy1zZWN0aW9uIC5pbWFnZS1jb2xsZWN0aW9uLXdyYXBwZXIge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGJhc2VsaW5lO1xuICAgIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIC5wcm9ncmVzcy1zZWN0aW9uIC5pbWFnZS1jb2xsZWN0aW9uLXdyYXBwZXIge1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsgfSB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgIC5wcm9ncmVzcy1zZWN0aW9uIC5pbWFnZS1jb2xsZWN0aW9uLXdyYXBwZXIge1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xuICAgICAgICBoZWlnaHQ6IDEwMCU7IH0gfVxuICAucHJvZ3Jlc3Mtc2VjdGlvbiAucHJvZ3Jlc3Mtc2VjdGlvbi1zaWRlLWltYWdlIHtcbiAgICBib3JkZXItcmFkaXVzOiAyMHB4O1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTkuNjI1cmVtO1xuICAgIG9iamVjdC1maXQ6IGNvdmVyO1xuICAgIG1hcmdpbi10b3A6IDIuMjVyZW07XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHotaW5kZXg6IDA7IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgLnByb2dyZXNzLXNlY3Rpb24gLnByb2dyZXNzLXNlY3Rpb24tc2lkZS1pbWFnZSB7XG4gICAgICAgIG1hcmdpbi10b3A6IDQuMzc1cmVtOyB9IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgLnByb2dyZXNzLXNlY3Rpb24gLnByb2dyZXNzLXNlY3Rpb24tc2lkZS1pbWFnZSB7XG4gICAgICAgIG1hcmdpbi10b3A6IDMuNzVyZW07IH0gfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICAgIC5wcm9ncmVzcy1zZWN0aW9uIC5wcm9ncmVzcy1zZWN0aW9uLXNpZGUtaW1hZ2Uge1xuICAgICAgICBtYXJnaW4tdG9wOiA0LjVyZW07IH0gfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDkwZW0pIHtcbiAgICAgIC5wcm9ncmVzcy1zZWN0aW9uIC5wcm9ncmVzcy1zZWN0aW9uLXNpZGUtaW1hZ2Uge1xuICAgICAgICBtYXJnaW4tdG9wOiA0LjVyZW07IH0gfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5LjkzNzVlbSkge1xuICAgICAgLnByb2dyZXNzLXNlY3Rpb24gLnByb2dyZXNzLXNlY3Rpb24tc2lkZS1pbWFnZSB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAtMS41cmVtO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDEwJTtcbiAgICAgICAgd2lkdGg6IGNhbGMoMTAwJSArICgxLjVyZW0gKiAyKSk7XG4gICAgICAgIG1heC13aWR0aDogbm9uZTsgfSB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIC5wcm9ncmVzcy1zZWN0aW9uIC5wcm9ncmVzcy1zZWN0aW9uLXNpZGUtaW1hZ2Uge1xuICAgICAgICBtYXJnaW4tdG9wOiA0LjVyZW07XG4gICAgICAgIHdpZHRoOiA3MCU7XG4gICAgICAgIG1pbi1oZWlnaHQ6IDA7XG4gICAgICAgIGhlaWdodDogMjQuNzVyZW07XG4gICAgICAgIG1hcmdpbi1yaWdodDogYXV0bzsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5wcm9ncmVzcy1zZWN0aW9uIC5wcm9ncmVzcy1zZWN0aW9uLXNpZGUtaW1hZ2Uge1xuICAgICAgbWFyZ2luLXRvcDogOC43NXJlbTsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5wcm9ncmVzcy1zZWN0aW9uIC5wcm9ncmVzcy1zZWN0aW9uLXNpZGUtaW1hZ2Uge1xuICAgICAgbWFyZ2luLXRvcDogNy41cmVtOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkgYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICAucHJvZ3Jlc3Mtc2VjdGlvbiAucHJvZ3Jlc3Mtc2VjdGlvbi1zaWRlLWltYWdlIHtcbiAgICAgIG1hcmdpbi10b3A6IDlyZW07IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSBhbmQgKG1pbi13aWR0aDogOTBlbSkge1xuICAgIC5wcm9ncmVzcy1zZWN0aW9uIC5wcm9ncmVzcy1zZWN0aW9uLXNpZGUtaW1hZ2Uge1xuICAgICAgbWFyZ2luLXRvcDogOXJlbTsgfSB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgIC5wcm9ncmVzcy1zZWN0aW9uIC5wcm9ncmVzcy1zZWN0aW9uLXNpZGUtaW1hZ2Uge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgaGVpZ2h0OiBjYWxjKDEwMCUgLSA3LjVyZW0pO1xuICAgICAgICBtaW4taGVpZ2h0OiAzMS4yNXJlbTtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgICAgIG1hcmdpbi1yaWdodDogMDsgfSB9XG4gIC5wcm9ncmVzcy1zZWN0aW9uIC5jYXJkLWdyYXBoaWMge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB3aWR0aDogYXV0bztcbiAgICBoZWlnaHQ6IDE1LjA2MjVyZW07XG4gICAgbWF4LXdpZHRoOiBub25lO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgdG9wOiAtNDRweDtcbiAgICBsZWZ0OiAyMCU7XG4gICAgei1pbmRleDogMTsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAucHJvZ3Jlc3Mtc2VjdGlvbiAuY2FyZC1ncmFwaGljIHtcbiAgICAgICAgaGVpZ2h0OiAxN3JlbTtcbiAgICAgICAgcmlnaHQ6IC04OHB4O1xuICAgICAgICBsZWZ0OiB1bnNldDsgfSB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgIC5wcm9ncmVzcy1zZWN0aW9uIC5jYXJkLWdyYXBoaWMge1xuICAgICAgICByaWdodDogLTUwJTtcbiAgICAgICAgaGVpZ2h0OiAyMC4xMjVyZW07IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5wcm9ncmVzcy1zZWN0aW9uIC5jb250ZW50LWNvbCB7XG4gICAgICBwYWRkaW5nLXRvcDogMDtcbiAgICAgIG1hcmdpbi1ib3R0b206IDIuMjVyZW07IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkgYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAucHJvZ3Jlc3Mtc2VjdGlvbiAuY29udGVudC1jb2wge1xuICAgICAgbWFyZ2luLWJvdHRvbTogNC4zNzVyZW07IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkgYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAucHJvZ3Jlc3Mtc2VjdGlvbiAuY29udGVudC1jb2wge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMy43NXJlbTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgLnByb2dyZXNzLXNlY3Rpb24gLmNvbnRlbnQtY29sIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDQuNXJlbTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIGFuZCAobWluLXdpZHRoOiA5MGVtKSB7XG4gICAgLnByb2dyZXNzLXNlY3Rpb24gLmNvbnRlbnQtY29sIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDQuNXJlbTsgfSB9XG4gIC5wcm9ncmVzcy1zZWN0aW9uIC5jb250ZW50LWNvbCAuY29udGVudC13cmFwcGVyIHtcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgcGFkZGluZy10b3A6IDQuNXJlbTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgLnByb2dyZXNzLXNlY3Rpb24gLmNvbnRlbnQtY29sIC5jb250ZW50LXdyYXBwZXIge1xuICAgICAgICBwYWRkaW5nLXRvcDogOC43NXJlbTsgfSB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgIC5wcm9ncmVzcy1zZWN0aW9uIC5jb250ZW50LWNvbCAuY29udGVudC13cmFwcGVyIHtcbiAgICAgICAgcGFkZGluZy10b3A6IDcuNXJlbTsgfSB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgICAgLnByb2dyZXNzLXNlY3Rpb24gLmNvbnRlbnQtY29sIC5jb250ZW50LXdyYXBwZXIge1xuICAgICAgICBwYWRkaW5nLXRvcDogOXJlbTsgfSB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTBlbSkge1xuICAgICAgLnByb2dyZXNzLXNlY3Rpb24gLmNvbnRlbnQtY29sIC5jb250ZW50LXdyYXBwZXIge1xuICAgICAgICBwYWRkaW5nLXRvcDogOXJlbTsgfSB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIC5wcm9ncmVzcy1zZWN0aW9uIC5jb250ZW50LWNvbCAuY29udGVudC13cmFwcGVyIHtcbiAgICAgICAgcGFkZGluZy10b3A6IDIuMjVyZW07IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkgYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAucHJvZ3Jlc3Mtc2VjdGlvbiAuY29udGVudC1jb2wgLmNvbnRlbnQtd3JhcHBlciB7XG4gICAgICBwYWRkaW5nLXRvcDogNC4zNzVyZW07IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkgYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAucHJvZ3Jlc3Mtc2VjdGlvbiAuY29udGVudC1jb2wgLmNvbnRlbnQtd3JhcHBlciB7XG4gICAgICBwYWRkaW5nLXRvcDogMy43NXJlbTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgLnByb2dyZXNzLXNlY3Rpb24gLmNvbnRlbnQtY29sIC5jb250ZW50LXdyYXBwZXIge1xuICAgICAgcGFkZGluZy10b3A6IDQuNXJlbTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIGFuZCAobWluLXdpZHRoOiA5MGVtKSB7XG4gICAgLnByb2dyZXNzLXNlY3Rpb24gLmNvbnRlbnQtY29sIC5jb250ZW50LXdyYXBwZXIge1xuICAgICAgcGFkZGluZy10b3A6IDQuNXJlbTsgfSB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgIC5wcm9ncmVzcy1zZWN0aW9uIC5jb250ZW50LWNvbCAuY29udGVudC13cmFwcGVyIHtcbiAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgICAgbWFyZ2luLXRvcDogY2FsYygyMC4xMjVyZW0gLSA0NHB4KTtcbiAgICAgICAgcGFkZGluZy10b3A6IDA7IH0gfVxuICAgIC5wcm9ncmVzcy1zZWN0aW9uIC5jb250ZW50LWNvbCAuY29udGVudC13cmFwcGVyIC5idWJibGUtcGluIHtcbiAgICAgIG1hcmdpbjogMCBhdXRvIDEuNXJlbTsgfVxuICAgICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgICAgLnByb2dyZXNzLXNlY3Rpb24gLmNvbnRlbnQtY29sIC5jb250ZW50LXdyYXBwZXIgLmJ1YmJsZS1waW4ge1xuICAgICAgICAgIG1hcmdpbjogMCAwIDEuNXJlbTsgfSB9XG4gICAgLnByb2dyZXNzLXNlY3Rpb24gLmNvbnRlbnQtY29sIC5jb250ZW50LXdyYXBwZXIgLnByb2dyZXNzLXNlY3Rpb24tdGl0bGUge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMS41cmVtOyB9XG5cbi5jb21tdW5pdHktc2VjdGlvbiB7XG4gIG1hcmdpbi1ib3R0b206IDQuNXJlbTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5jb21tdW5pdHktc2VjdGlvbiB7XG4gICAgICBtYXJnaW4tYm90dG9tOiA4Ljc1cmVtOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuY29tbXVuaXR5LXNlY3Rpb24ge1xuICAgICAgbWFyZ2luLWJvdHRvbTogNy41cmVtOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgIC5jb21tdW5pdHktc2VjdGlvbiB7XG4gICAgICBtYXJnaW4tYm90dG9tOiA5cmVtOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTBlbSkge1xuICAgIC5jb21tdW5pdHktc2VjdGlvbiB7XG4gICAgICBtYXJnaW4tYm90dG9tOiA5cmVtOyB9IH1cbiAgLmNvbW11bml0eS1zZWN0aW9uIC5iYW5uZXItaW1hZ2Uge1xuICAgIGhlaWdodDogNTByZW07XG4gICAgei1pbmRleDogMTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAgIC5jb21tdW5pdHktc2VjdGlvbiAuYmFubmVyLWltYWdlOjphZnRlciB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBjb250ZW50OiAnJztcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMywgNDgsIDUyLCAwLjIpO1xuICAgICAgdG9wOiAwO1xuICAgICAgYm90dG9tOiAwO1xuICAgICAgcmlnaHQ6IDA7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgei1pbmRleDogMDsgfVxuICAgIC5jb21tdW5pdHktc2VjdGlvbiAuYmFubmVyLWltYWdlID4gaW1nIHtcbiAgICAgIG9iamVjdC1maXQ6IGNvdmVyO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICBkaXNwbGF5OiBibG9jazsgfVxuICAuY29tbXVuaXR5LXNlY3Rpb24gPiAuZ3JpZC1jb250YWluZXIsIC5jb21tdW5pdHktc2VjdGlvbiA+IC50b3AtYmFyIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgei1pbmRleDogMjtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTExLjI1cmVtKTtcbiAgICBtYXJnaW4tYm90dG9tOiAtMTEuMjVyZW07IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgLmNvbW11bml0eS1zZWN0aW9uID4gLmdyaWQtY29udGFpbmVyLCAuY29tbXVuaXR5LXNlY3Rpb24gPiAudG9wLWJhciB7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTYuNTYyNXJlbSk7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IC0xNi41NjI1cmVtOyB9IH1cbiAgLmNvbW11bml0eS1zZWN0aW9uIC5jYXJkLWNvbnRhaW5lciB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHotaW5kZXg6IDI7XG4gICAgd2lkdGg6IDEwMCU7IH1cbiAgICAuY29tbXVuaXR5LXNlY3Rpb24gLmNhcmQtY29udGFpbmVyID4gaW1nIHtcbiAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgYm94LXNoYWRvdzogMHJlbSA0cHggNDBweCByZ2JhKDAsIDAsIDAsIDAuMSk7XG4gICAgICBib3JkZXItcmFkaXVzOiAyMHB4O1xuICAgICAgb2JqZWN0LWZpdDogY29udGFpbjtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmZmZmY7XG4gICAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgaGVpZ2h0OiAyMi41cmVtOyB9XG4gICAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgICAuY29tbXVuaXR5LXNlY3Rpb24gLmNhcmQtY29udGFpbmVyID4gaW1nIHtcbiAgICAgICAgICBoZWlnaHQ6IDMzLjEyNXJlbTsgfSB9XG4gIC5jb21tdW5pdHktc2VjdGlvbiAuY29udGVudC1yb3cge1xuICAgIG1hcmdpbi10b3A6IDIuMjVyZW07IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgLmNvbW11bml0eS1zZWN0aW9uIC5jb250ZW50LXJvdyB7XG4gICAgICAgIG1hcmdpbi10b3A6IDQuMzc1cmVtOyB9IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgLmNvbW11bml0eS1zZWN0aW9uIC5jb250ZW50LXJvdyB7XG4gICAgICAgIG1hcmdpbi10b3A6IDMuNzVyZW07IH0gfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICAgIC5jb21tdW5pdHktc2VjdGlvbiAuY29udGVudC1yb3cge1xuICAgICAgICBtYXJnaW4tdG9wOiA0LjVyZW07IH0gfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDkwZW0pIHtcbiAgICAgIC5jb21tdW5pdHktc2VjdGlvbiAuY29udGVudC1yb3cge1xuICAgICAgICBtYXJnaW4tdG9wOiA0LjVyZW07IH0gfVxuICAuY29tbXVuaXR5LXNlY3Rpb24gLmNvbnRlbnQtd3JhcHBlciB7XG4gICAgbWFyZ2luOiAwIGF1dG87XG4gICAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gICAgLmNvbW11bml0eS1zZWN0aW9uIC5jb250ZW50LXdyYXBwZXIgLmJ1YmJsZS1waW4ge1xuICAgICAgbWFyZ2luOiAwIGF1dG8gMS41cmVtOyB9XG4gICAgLmNvbW11bml0eS1zZWN0aW9uIC5jb250ZW50LXdyYXBwZXIgLnRyYWNraW5nLXNlY3Rpb24tdGl0bGUge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMi4yNXJlbTsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45Mzc1ZW0pIHtcbiAgICAuY29tbXVuaXR5LXNlY3Rpb24uYWRqdXN0ZWQtbW9iaWxlLWltYWdlLWVuIC5iYW5uZXItaW1hZ2UgaW1nIHtcbiAgICAgIG9iamVjdC1wb3NpdGlvbjogLTEwMHB4OyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTM3NWVtKSB7XG4gICAgLmNvbW11bml0eS1zZWN0aW9uLmFkanVzdGVkLW1vYmlsZS1pbWFnZS1qYSAuYmFubmVyLWltYWdlIHtcbiAgICAgIHdpZHRoOiAyNTAlOyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTM3NWVtKSB7XG4gIC52aXJ0dWFsLXJhY2VzLXNlY3Rpb24ge1xuICAgIHBhZGRpbmctdG9wOiA0LjVyZW07XG4gICAgcGFkZGluZy1ib3R0b206IDQuNXJlbTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjkzNzVlbSkgYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAudmlydHVhbC1yYWNlcy1zZWN0aW9uIHtcbiAgICAgIHBhZGRpbmctdG9wOiA4Ljc1cmVtO1xuICAgICAgcGFkZGluZy1ib3R0b206IDguNzVyZW07IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45Mzc1ZW0pIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLnZpcnR1YWwtcmFjZXMtc2VjdGlvbiB7XG4gICAgICBwYWRkaW5nLXRvcDogNy41cmVtO1xuICAgICAgcGFkZGluZy1ib3R0b206IDcuNXJlbTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjkzNzVlbSkgYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICAudmlydHVhbC1yYWNlcy1zZWN0aW9uIHtcbiAgICAgIHBhZGRpbmctdG9wOiA5cmVtO1xuICAgICAgcGFkZGluZy1ib3R0b206IDlyZW07IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45Mzc1ZW0pIGFuZCAobWluLXdpZHRoOiA5MGVtKSB7XG4gICAgLnZpcnR1YWwtcmFjZXMtc2VjdGlvbiB7XG4gICAgICBwYWRkaW5nLXRvcDogOXJlbTtcbiAgICAgIHBhZGRpbmctYm90dG9tOiA5cmVtOyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLnZpcnR1YWwtcmFjZXMtc2VjdGlvbiB7XG4gICAgcGFkZGluZy10b3A6IDIuMjVyZW07XG4gICAgcGFkZGluZy1ib3R0b206IDQuNXJlbTsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC52aXJ0dWFsLXJhY2VzLXNlY3Rpb24ge1xuICAgICAgcGFkZGluZy10b3A6IDQuMzc1cmVtOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLnZpcnR1YWwtcmFjZXMtc2VjdGlvbiB7XG4gICAgICBwYWRkaW5nLXRvcDogMy43NXJlbTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgLnZpcnR1YWwtcmFjZXMtc2VjdGlvbiB7XG4gICAgICBwYWRkaW5nLXRvcDogNC41cmVtOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkgYW5kIChtaW4td2lkdGg6IDkwZW0pIHtcbiAgICAudmlydHVhbC1yYWNlcy1zZWN0aW9uIHtcbiAgICAgIHBhZGRpbmctdG9wOiA0LjVyZW07IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkgYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAudmlydHVhbC1yYWNlcy1zZWN0aW9uIHtcbiAgICAgIHBhZGRpbmctYm90dG9tOiA4Ljc1cmVtOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLnZpcnR1YWwtcmFjZXMtc2VjdGlvbiB7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogNy41cmVtOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkgYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICAudmlydHVhbC1yYWNlcy1zZWN0aW9uIHtcbiAgICAgIHBhZGRpbmctYm90dG9tOiA5cmVtOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkgYW5kIChtaW4td2lkdGg6IDkwZW0pIHtcbiAgICAudmlydHVhbC1yYWNlcy1zZWN0aW9uIHtcbiAgICAgIHBhZGRpbmctYm90dG9tOiA5cmVtOyB9IH1cblxuLnZpcnR1YWwtcmFjZXMtc2VjdGlvbiAuaW1hZ2UtZ3JpZCB7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7IH1cblxuLnZpcnR1YWwtcmFjZXMtc2VjdGlvbiAuaW1hZ2UtY29sLXJpZ2h0IHtcbiAgcGFkZGluZy1sZWZ0OiAxOHB4OyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5LjkzNzVlbSkge1xuICAgIC52aXJ0dWFsLXJhY2VzLXNlY3Rpb24gLmltYWdlLWNvbC1yaWdodCB7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDA7IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC52aXJ0dWFsLXJhY2VzLXNlY3Rpb24gLmltYWdlLWNvbC1yaWdodCB7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDIwcHg7IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC52aXJ0dWFsLXJhY2VzLXNlY3Rpb24gLmltYWdlLWNvbC1yaWdodCB7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDI0cHg7IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgLnZpcnR1YWwtcmFjZXMtc2VjdGlvbiAuaW1hZ2UtY29sLXJpZ2h0IHtcbiAgICAgIHBhZGRpbmctbGVmdDogMjRweDsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDkwZW0pIHtcbiAgICAudmlydHVhbC1yYWNlcy1zZWN0aW9uIC5pbWFnZS1jb2wtcmlnaHQge1xuICAgICAgcGFkZGluZy1sZWZ0OiAyNHB4OyB9IH1cblxuLnZpcnR1YWwtcmFjZXMtc2VjdGlvbiAuaW1hZ2UtY29sLWxlZnQge1xuICBwYWRkaW5nLXJpZ2h0OiAxOHB4OyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5LjkzNzVlbSkge1xuICAgIC52aXJ0dWFsLXJhY2VzLXNlY3Rpb24gLmltYWdlLWNvbC1sZWZ0IHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDA7IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC52aXJ0dWFsLXJhY2VzLXNlY3Rpb24gLmltYWdlLWNvbC1sZWZ0IHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBmbGV4LWZsb3c6IGNvbHVtbjtcbiAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LWVuZDsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLnZpcnR1YWwtcmFjZXMtc2VjdGlvbiAuaW1hZ2UtY29sLWxlZnQge1xuICAgICAgcGFkZGluZy1yaWdodDogMjBweDsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLnZpcnR1YWwtcmFjZXMtc2VjdGlvbiAuaW1hZ2UtY29sLWxlZnQge1xuICAgICAgcGFkZGluZy1yaWdodDogMjRweDsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICAudmlydHVhbC1yYWNlcy1zZWN0aW9uIC5pbWFnZS1jb2wtbGVmdCB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAyNHB4OyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTBlbSkge1xuICAgIC52aXJ0dWFsLXJhY2VzLXNlY3Rpb24gLmltYWdlLWNvbC1sZWZ0IHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDI0cHg7IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC52aXJ0dWFsLXJhY2VzLXNlY3Rpb24gLmltYWdlLWNvbC1sZWZ0IC5pbWFnZS13cmFwcGVyOm50aC1vZi10eXBlKDIpIC52aXJ0dWFsLXJhY2Utc2VjdGlvbi1pbWFnZSB7XG4gICAgICB3aWR0aDogODAlO1xuICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgICBtYXJnaW4tcmlnaHQ6IDA7IH0gfVxuICAudmlydHVhbC1yYWNlcy1zZWN0aW9uIC5pbWFnZS1jb2wtbGVmdCAuaW1hZ2Utd3JhcHBlcjpub3QoOmxhc3QtY2hpbGQpIHtcbiAgICBtYXJnaW4tYm90dG9tOiAzNnB4OyB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTM3NWVtKSB7XG4gICAgICAudmlydHVhbC1yYWNlcy1zZWN0aW9uIC5pbWFnZS1jb2wtbGVmdCAuaW1hZ2Utd3JhcHBlcjpub3QoOmxhc3QtY2hpbGQpIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMS41cmVtOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTM3NWVtKSBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC52aXJ0dWFsLXJhY2VzLXNlY3Rpb24gLmltYWdlLWNvbC1sZWZ0IC5pbWFnZS13cmFwcGVyOm5vdCg6bGFzdC1jaGlsZCkge1xuICAgICAgbWFyZ2luLWJvdHRvbTogNC4zNzVyZW07IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45Mzc1ZW0pIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLnZpcnR1YWwtcmFjZXMtc2VjdGlvbiAuaW1hZ2UtY29sLWxlZnQgLmltYWdlLXdyYXBwZXI6bm90KDpsYXN0LWNoaWxkKSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiA2LjI1cmVtOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTM3NWVtKSBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgIC52aXJ0dWFsLXJhY2VzLXNlY3Rpb24gLmltYWdlLWNvbC1sZWZ0IC5pbWFnZS13cmFwcGVyOm5vdCg6bGFzdC1jaGlsZCkge1xuICAgICAgbWFyZ2luLWJvdHRvbTogNy41cmVtOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTM3NWVtKSBhbmQgKG1pbi13aWR0aDogOTBlbSkge1xuICAgIC52aXJ0dWFsLXJhY2VzLXNlY3Rpb24gLmltYWdlLWNvbC1sZWZ0IC5pbWFnZS13cmFwcGVyOm5vdCg6bGFzdC1jaGlsZCkge1xuICAgICAgbWFyZ2luLWJvdHRvbTogNy41cmVtOyB9IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgLnZpcnR1YWwtcmFjZXMtc2VjdGlvbiAuaW1hZ2UtY29sLWxlZnQgLmltYWdlLXdyYXBwZXI6bm90KDpsYXN0LWNoaWxkKSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDQwcHg7IH0gfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAudmlydHVhbC1yYWNlcy1zZWN0aW9uIC5pbWFnZS1jb2wtbGVmdCAuaW1hZ2Utd3JhcHBlcjpub3QoOmxhc3QtY2hpbGQpIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogNDhweDsgfSB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgICAgLnZpcnR1YWwtcmFjZXMtc2VjdGlvbiAuaW1hZ2UtY29sLWxlZnQgLmltYWdlLXdyYXBwZXI6bm90KDpsYXN0LWNoaWxkKSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDQ4cHg7IH0gfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDkwZW0pIHtcbiAgICAgIC52aXJ0dWFsLXJhY2VzLXNlY3Rpb24gLmltYWdlLWNvbC1sZWZ0IC5pbWFnZS13cmFwcGVyOm5vdCg6bGFzdC1jaGlsZCkge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiA0OHB4OyB9IH1cblxuLnZpcnR1YWwtcmFjZXMtc2VjdGlvbiAuaW1hZ2Utd3JhcHBlciB7XG4gIHdpZHRoOiAxMDAlOyB9XG5cbi52aXJ0dWFsLXJhY2VzLXNlY3Rpb24gLnZpcnR1YWwtcmFjZS1zZWN0aW9uLWltYWdlIHtcbiAgYm9yZGVyLXJhZGl1czogMjBweDtcbiAgb2JqZWN0LWZpdDogY292ZXI7XG4gIGJveC1zaGFkb3c6IDByZW0gNHB4IDQwcHggcmdiYSgwLCAwLCAwLCAwLjEpO1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogYXV0bzsgfVxuICAudmlydHVhbC1yYWNlcy1zZWN0aW9uIC52aXJ0dWFsLXJhY2Utc2VjdGlvbi1pbWFnZS0tMSB7XG4gICAgaGVpZ2h0OiAxOS4zNzVyZW07IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgLnZpcnR1YWwtcmFjZXMtc2VjdGlvbiAudmlydHVhbC1yYWNlLXNlY3Rpb24taW1hZ2UtLTEge1xuICAgICAgICBoZWlnaHQ6IDE5LjM3NXJlbTsgfSB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgIC52aXJ0dWFsLXJhY2VzLXNlY3Rpb24gLnZpcnR1YWwtcmFjZS1zZWN0aW9uLWltYWdlLS0xIHtcbiAgICAgICAgaGVpZ2h0OiAzMS4yNXJlbTsgfSB9XG4gIC52aXJ0dWFsLXJhY2VzLXNlY3Rpb24gLnZpcnR1YWwtcmFjZS1zZWN0aW9uLWltYWdlLS0yIHtcbiAgICBoZWlnaHQ6IDE5LjM3NXJlbTsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAudmlydHVhbC1yYWNlcy1zZWN0aW9uIC52aXJ0dWFsLXJhY2Utc2VjdGlvbi1pbWFnZS0tMiB7XG4gICAgICAgIGhlaWdodDogMTIuNjI1cmVtOyB9IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgLnZpcnR1YWwtcmFjZXMtc2VjdGlvbiAudmlydHVhbC1yYWNlLXNlY3Rpb24taW1hZ2UtLTIge1xuICAgICAgICBoZWlnaHQ6IDIwLjc1cmVtOyB9IH1cbiAgLnZpcnR1YWwtcmFjZXMtc2VjdGlvbiAudmlydHVhbC1yYWNlLXNlY3Rpb24taW1hZ2UtLTMge1xuICAgIGhlaWdodDogMTkuMzc1cmVtOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIC52aXJ0dWFsLXJhY2VzLXNlY3Rpb24gLnZpcnR1YWwtcmFjZS1zZWN0aW9uLWltYWdlLS0zIHtcbiAgICAgICAgaGVpZ2h0OiAxNS43NXJlbTsgfSB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgIC52aXJ0dWFsLXJhY2VzLXNlY3Rpb24gLnZpcnR1YWwtcmFjZS1zZWN0aW9uLWltYWdlLS0zIHtcbiAgICAgICAgaGVpZ2h0OiAyNS43NXJlbTsgfSB9XG5cbi52aXJ0dWFsLXJhY2VzLXNlY3Rpb24gLmNvbnRlbnQtY29sIHtcbiAgcGFkZGluZy10b3A6IDIuMjVyZW07XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgcGFkZGluZy1sZWZ0OiAxOHB4OyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLnZpcnR1YWwtcmFjZXMtc2VjdGlvbiAuY29udGVudC1jb2wge1xuICAgICAgcGFkZGluZy10b3A6IDQuMzc1cmVtOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAudmlydHVhbC1yYWNlcy1zZWN0aW9uIC5jb250ZW50LWNvbCB7XG4gICAgICBwYWRkaW5nLXRvcDogMy43NXJlbTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICAudmlydHVhbC1yYWNlcy1zZWN0aW9uIC5jb250ZW50LWNvbCB7XG4gICAgICBwYWRkaW5nLXRvcDogNC41cmVtOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTBlbSkge1xuICAgIC52aXJ0dWFsLXJhY2VzLXNlY3Rpb24gLmNvbnRlbnQtY29sIHtcbiAgICAgIHBhZGRpbmctdG9wOiA0LjVyZW07IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC52aXJ0dWFsLXJhY2VzLXNlY3Rpb24gLmNvbnRlbnQtY29sIHtcbiAgICAgIHBhZGRpbmctbGVmdDogMjBweDsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLnZpcnR1YWwtcmFjZXMtc2VjdGlvbiAuY29udGVudC1jb2wge1xuICAgICAgcGFkZGluZy1sZWZ0OiAyNHB4OyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgIC52aXJ0dWFsLXJhY2VzLXNlY3Rpb24gLmNvbnRlbnQtY29sIHtcbiAgICAgIHBhZGRpbmctbGVmdDogMjRweDsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDkwZW0pIHtcbiAgICAudmlydHVhbC1yYWNlcy1zZWN0aW9uIC5jb250ZW50LWNvbCB7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDI0cHg7IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45Mzc1ZW0pIHtcbiAgICAudmlydHVhbC1yYWNlcy1zZWN0aW9uIC5jb250ZW50LWNvbCB7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDA7IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC52aXJ0dWFsLXJhY2VzLXNlY3Rpb24gLmNvbnRlbnQtY29sIHtcbiAgICAgIHBhZGRpbmctdG9wOiAxLjEyNXJlbTsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC52aXJ0dWFsLXJhY2VzLXNlY3Rpb24gLmNvbnRlbnQtY29sIHtcbiAgICAgIHBhZGRpbmctdG9wOiAyLjE4NzVyZW07IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkgYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAudmlydHVhbC1yYWNlcy1zZWN0aW9uIC5jb250ZW50LWNvbCB7XG4gICAgICBwYWRkaW5nLXRvcDogMS44NzVyZW07IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgIC52aXJ0dWFsLXJhY2VzLXNlY3Rpb24gLmNvbnRlbnQtY29sIHtcbiAgICAgIHBhZGRpbmctdG9wOiAyLjI1cmVtOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkgYW5kIChtaW4td2lkdGg6IDkwZW0pIHtcbiAgICAudmlydHVhbC1yYWNlcy1zZWN0aW9uIC5jb250ZW50LWNvbCB7XG4gICAgICBwYWRkaW5nLXRvcDogMi4yNXJlbTsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLnZpcnR1YWwtcmFjZXMtc2VjdGlvbiAuY29udGVudC1jb2wge1xuICAgICAgcGFkZGluZy10b3A6IDA7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTEwLjM3NXJlbSk7XG4gICAgICBtYXJnaW4tYm90dG9tOiAtMTAuMzc1cmVtOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTM3NWVtKSB7XG4gICAgLnZpcnR1YWwtcmFjZXMtc2VjdGlvbiAuY29udGVudC1jb2wgLmNvbnRlbnQtd3JhcHBlciB7XG4gICAgICBtYXJnaW46IDAgYXV0bztcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjsgfSB9XG4gIC52aXJ0dWFsLXJhY2VzLXNlY3Rpb24gLmNvbnRlbnQtY29sIC5jb250ZW50LXdyYXBwZXIgLmJ1YmJsZS1waW4ge1xuICAgIG1hcmdpbjogMCBhdXRvIDEuNXJlbTsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAudmlydHVhbC1yYWNlcy1zZWN0aW9uIC5jb250ZW50LWNvbCAuY29udGVudC13cmFwcGVyIC5idWJibGUtcGluIHtcbiAgICAgICAgbWFyZ2luOiAwIDAgMS41cmVtOyB9IH1cbiAgLnZpcnR1YWwtcmFjZXMtc2VjdGlvbiAuY29udGVudC1jb2wgLmNvbnRlbnQtd3JhcHBlciAudmlydHVhbC1yYWNlLXNlY3Rpb24tdGl0bGUge1xuICAgIG1hcmdpbi1ib3R0b206IDIuMjVyZW07IH1cblxuLnNpZ24tdXAtc2VjdGlvbiB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgcGFkZGluZy10b3A6IDIuMjVyZW07XG4gIHBhZGRpbmctYm90dG9tOiAxOHJlbTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5zaWduLXVwLXNlY3Rpb24ge1xuICAgICAgcGFkZGluZy10b3A6IDQuMzc1cmVtOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuc2lnbi11cC1zZWN0aW9uIHtcbiAgICAgIHBhZGRpbmctdG9wOiAzLjc1cmVtOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgIC5zaWduLXVwLXNlY3Rpb24ge1xuICAgICAgcGFkZGluZy10b3A6IDQuNXJlbTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDkwZW0pIHtcbiAgICAuc2lnbi11cC1zZWN0aW9uIHtcbiAgICAgIHBhZGRpbmctdG9wOiA0LjVyZW07IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5zaWduLXVwLXNlY3Rpb24ge1xuICAgICAgcGFkZGluZy1ib3R0b206IDM1cmVtOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuc2lnbi11cC1zZWN0aW9uIHtcbiAgICAgIHBhZGRpbmctYm90dG9tOiAzMHJlbTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICAuc2lnbi11cC1zZWN0aW9uIHtcbiAgICAgIHBhZGRpbmctYm90dG9tOiAzNnJlbTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDkwZW0pIHtcbiAgICAuc2lnbi11cC1zZWN0aW9uIHtcbiAgICAgIHBhZGRpbmctYm90dG9tOiAzNnJlbTsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLnNpZ24tdXAtc2VjdGlvbiB7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogOXJlbTsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5zaWduLXVwLXNlY3Rpb24ge1xuICAgICAgcGFkZGluZy1ib3R0b206IDE3LjVyZW07IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkgYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuc2lnbi11cC1zZWN0aW9uIHtcbiAgICAgIHBhZGRpbmctYm90dG9tOiAxNXJlbTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgLnNpZ24tdXAtc2VjdGlvbiB7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogMThyZW07IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSBhbmQgKG1pbi13aWR0aDogOTBlbSkge1xuICAgIC5zaWduLXVwLXNlY3Rpb24ge1xuICAgICAgcGFkZGluZy1ib3R0b206IDE4cmVtOyB9IH1cbiAgLnNpZ24tdXAtc2VjdGlvbjo6YWZ0ZXIge1xuICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgwZGVnLCByZ2JhKDI1NSwgMjU1LCAyNTUsIDApIDAlLCAjZmZmZmZmIDc5LjE5JSk7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIHRvcDogMDtcbiAgICBib3R0b206IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgbGVmdDogMDsgfVxuICAuc2lnbi11cC1zZWN0aW9uID4gKiB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHotaW5kZXg6IDI7IH1cblxuLnVwLXNlbGwtc2VjdGlvbiB7XG4gIHBhZGRpbmctdG9wOiA0LjVyZW07IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAudXAtc2VsbC1zZWN0aW9uIHtcbiAgICAgIHBhZGRpbmctdG9wOiA4Ljc1cmVtOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAudXAtc2VsbC1zZWN0aW9uIHtcbiAgICAgIHBhZGRpbmctdG9wOiA3LjVyZW07IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgLnVwLXNlbGwtc2VjdGlvbiB7XG4gICAgICBwYWRkaW5nLXRvcDogOXJlbTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDkwZW0pIHtcbiAgICAudXAtc2VsbC1zZWN0aW9uIHtcbiAgICAgIHBhZGRpbmctdG9wOiA5cmVtOyB9IH1cbiAgLnVwLXNlbGwtc2VjdGlvbiAudXAtc2VsbC1zZWN0aW9uLWdyaWQge1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTM3NWVtKSB7XG4gICAgICAudXAtc2VsbC1zZWN0aW9uIC51cC1zZWxsLXNlY3Rpb24tZ3JpZCB7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyOyB9IH1cbiAgLnVwLXNlbGwtc2VjdGlvbiAuY29udGVudC1jb2wge1xuICAgIHBhZGRpbmctdG9wOiAyLjI1cmVtO1xuICAgIHBhZGRpbmctYm90dG9tOiA0LjVyZW07IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgLnVwLXNlbGwtc2VjdGlvbiAuY29udGVudC1jb2wge1xuICAgICAgICBwYWRkaW5nLXRvcDogNC4zNzVyZW07IH0gfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAudXAtc2VsbC1zZWN0aW9uIC5jb250ZW50LWNvbCB7XG4gICAgICAgIHBhZGRpbmctdG9wOiAzLjc1cmVtOyB9IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgICAudXAtc2VsbC1zZWN0aW9uIC5jb250ZW50LWNvbCB7XG4gICAgICAgIHBhZGRpbmctdG9wOiA0LjVyZW07IH0gfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDkwZW0pIHtcbiAgICAgIC51cC1zZWxsLXNlY3Rpb24gLmNvbnRlbnQtY29sIHtcbiAgICAgICAgcGFkZGluZy10b3A6IDQuNXJlbTsgfSB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIC51cC1zZWxsLXNlY3Rpb24gLmNvbnRlbnQtY29sIHtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDguNzVyZW07IH0gfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAudXAtc2VsbC1zZWN0aW9uIC5jb250ZW50LWNvbCB7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiA3LjVyZW07IH0gfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICAgIC51cC1zZWxsLXNlY3Rpb24gLmNvbnRlbnQtY29sIHtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDlyZW07IH0gfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDkwZW0pIHtcbiAgICAgIC51cC1zZWxsLXNlY3Rpb24gLmNvbnRlbnQtY29sIHtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDlyZW07IH0gfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5LjkzNzVlbSkge1xuICAgICAgLnVwLXNlbGwtc2VjdGlvbiAuY29udGVudC1jb2wge1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH0gfVxuICAgIC51cC1zZWxsLXNlY3Rpb24gLmNvbnRlbnQtY29sIC5ydW5rZWVwZXItbG9nbyB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAxLjVyZW07IH1cbiAgICAudXAtc2VsbC1zZWN0aW9uIC5jb250ZW50LWNvbCAudXAtc2VsbC1zZWN0aW9uLXRpdGxlIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDEuNzVyZW07IH1cbiAgICAudXAtc2VsbC1zZWN0aW9uIC5jb250ZW50LWNvbCAudXAtc2VsbC1zZWN0aW9uLWNvbnRlbnQge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMS41cmVtOyB9XG4gIC51cC1zZWxsLXNlY3Rpb24gLmltYWdlLWNvbCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gICAgLnVwLXNlbGwtc2VjdGlvbiAuaW1hZ2UtY29sIC5pbWFnZS13cmFwcGVyIHtcbiAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gIC51cC1zZWxsLXNlY3Rpb24gLmFwcC1pbWFnZSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IGF1dG87XG4gICAgYm9yZGVyLXJhZGl1czogNDBweCA0MHB4IDAgMDsgfVxuICAgIC51cC1zZWxsLXNlY3Rpb24gLmFwcC1pbWFnZS0tMSB7XG4gICAgICBib3gtc2hhZG93OiAwcmVtIDRweCA0MHB4IHJnYmEoMCwgMCwgMCwgMC4xKTtcbiAgICAgIGhlaWdodDogMzEuMjVyZW07XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICB6LWluZGV4OiAxOyB9XG4gICAgLnVwLXNlbGwtc2VjdGlvbiAuYXBwLWltYWdlLS0yIHtcbiAgICAgIGhlaWdodDogMzcuNXJlbTtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHJpZ2h0OiAwO1xuICAgICAgdG9wOiAwO1xuICAgICAgei1pbmRleDogMjsgfVxuXG4uZmVhdHVyZWQtYXV0aG9yIHtcbiAgcGFkZGluZy10b3A6IDIuMjVyZW07XG4gIHBhZGRpbmctYm90dG9tOiAyLjI1cmVtO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDAxRTYyOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLmZlYXR1cmVkLWF1dGhvciB7XG4gICAgICBwYWRkaW5nLXRvcDogNC4zNzVyZW07XG4gICAgICBwYWRkaW5nLWJvdHRvbTogNC4zNzVyZW07IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5mZWF0dXJlZC1hdXRob3Ige1xuICAgICAgcGFkZGluZy10b3A6IDMuNzVyZW07XG4gICAgICBwYWRkaW5nLWJvdHRvbTogMy43NXJlbTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICAuZmVhdHVyZWQtYXV0aG9yIHtcbiAgICAgIHBhZGRpbmctdG9wOiA0LjVyZW07XG4gICAgICBwYWRkaW5nLWJvdHRvbTogNC41cmVtOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTBlbSkge1xuICAgIC5mZWF0dXJlZC1hdXRob3Ige1xuICAgICAgcGFkZGluZy10b3A6IDQuNXJlbTtcbiAgICAgIHBhZGRpbmctYm90dG9tOiA0LjVyZW07IH0gfVxuICAuZmVhdHVyZWQtYXV0aG9yIC5ncmlkLXggLmltYWdlLWNlbGwgaW1nIHtcbiAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgd2lkdGg6IDI3NXB4O1xuICAgIGhlaWdodDogMjc1cHg7XG4gICAgb2JqZWN0LWZpdDogY292ZXI7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzQuOTM3NWVtKSB7XG4gICAgLmZlYXR1cmVkLWF1dGhvciAuZ3JpZC14IC5pbWFnZS1jZWxsIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDEuNXJlbTtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NC45Mzc1ZW0pIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLmZlYXR1cmVkLWF1dGhvciAuZ3JpZC14IC5pbWFnZS1jZWxsIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDIuOTE2NjdyZW07IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NC45Mzc1ZW0pIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmZlYXR1cmVkLWF1dGhvciAuZ3JpZC14IC5pbWFnZS1jZWxsIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDIuNXJlbTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc0LjkzNzVlbSkgYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICAuZmVhdHVyZWQtYXV0aG9yIC5ncmlkLXggLmltYWdlLWNlbGwge1xuICAgICAgbWFyZ2luLWJvdHRvbTogM3JlbTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc0LjkzNzVlbSkgYW5kIChtaW4td2lkdGg6IDkwZW0pIHtcbiAgICAuZmVhdHVyZWQtYXV0aG9yIC5ncmlkLXggLmltYWdlLWNlbGwge1xuICAgICAgbWFyZ2luLWJvdHRvbTogM3JlbTsgfSB9XG4gIC5mZWF0dXJlZC1hdXRob3IgLmdyaWQteCAuY29udGVudC1jZWxsIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgICAgLmZlYXR1cmVkLWF1dGhvciAuZ3JpZC14IC5jb250ZW50LWNlbGwge1xuICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0OyB9IH1cbiAgICAuZmVhdHVyZWQtYXV0aG9yIC5ncmlkLXggLmNvbnRlbnQtY2VsbCAuYXV0aG9yLW5hbWUge1xuICAgICAgY29sb3I6ICMyREM5RDc7IH1cbiAgICAuZmVhdHVyZWQtYXV0aG9yIC5ncmlkLXggLmNvbnRlbnQtY2VsbCAuYXV0aG9yLWRlc2NyaXB0aW9uIHtcbiAgICAgIGNvbG9yOiAjZmZmZmZmO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDsgfVxuICAgICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgICAgLmZlYXR1cmVkLWF1dGhvciAuZ3JpZC14IC5jb250ZW50LWNlbGwgLmF1dGhvci1kZXNjcmlwdGlvbiB7XG4gICAgICAgICAgZm9udC1zaXplOiAxLjEyNXJlbTsgfSB9XG4gICAgLmZlYXR1cmVkLWF1dGhvciAuZ3JpZC14IC5jb250ZW50LWNlbGwgLmluc3RhZ3JhbS1saW5rLXdyYXAge1xuICAgICAgbWFyZ2luLXRvcDogMnJlbTsgfVxuICAgICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgICAgLmZlYXR1cmVkLWF1dGhvciAuZ3JpZC14IC5jb250ZW50LWNlbGwgLmluc3RhZ3JhbS1saW5rLXdyYXAge1xuICAgICAgICAgIG1hcmdpbi10b3A6IDFyZW07IH0gfVxuICAgICAgLmZlYXR1cmVkLWF1dGhvciAuZ3JpZC14IC5jb250ZW50LWNlbGwgLmluc3RhZ3JhbS1saW5rLXdyYXAgLmlnLWxpbmsge1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjsgfVxuICAgICAgICAuZmVhdHVyZWQtYXV0aG9yIC5ncmlkLXggLmNvbnRlbnQtY2VsbCAuaW5zdGFncmFtLWxpbmstd3JhcCAuaWctbGluazpob3ZlciBzcGFuIHtcbiAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTsgfVxuICAgICAgLmZlYXR1cmVkLWF1dGhvciAuZ3JpZC14IC5jb250ZW50LWNlbGwgLmluc3RhZ3JhbS1saW5rLXdyYXAgaSB7XG4gICAgICAgIG1hcmdpbi1yaWdodDogLjVyZW07XG4gICAgICAgIGZvbnQtc2l6ZTogMS41cmVtOyB9XG4gICAgICAuZmVhdHVyZWQtYXV0aG9yIC5ncmlkLXggLmNvbnRlbnQtY2VsbCAuaW5zdGFncmFtLWxpbmstd3JhcCBzcGFuIHtcbiAgICAgICAgZm9udC1zaXplOiAxcmVtOyB9XG4gICAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgICAuZmVhdHVyZWQtYXV0aG9yIC5ncmlkLXggLmNvbnRlbnQtY2VsbCAuaW5zdGFncmFtLWxpbmstd3JhcCB7XG4gICAgICAgICAgbWFyZ2luLXRvcDogMi41cmVtOyB9IH1cblxuLmJsb2ctbmF2aWdhdGlvbiB7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoNDUsIDIwMSwgMjE1LCAwLjEpOyB9XG4gIC5ibG9nLW5hdmlnYXRpb24uaGVpZ2h0IHtcbiAgICBoZWlnaHQ6IDc5cHggIWltcG9ydGFudDsgfVxuICAuYmxvZy1uYXZpZ2F0aW9uLnNjcm9sbGVkIHtcbiAgICBoZWlnaHQ6IDA7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgdG9wOiA2NXB4O1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNFNUY5RkE7XG4gICAgei1pbmRleDogMTAxO1xuICAgIHRyYW5zaXRpb246IGhlaWdodCAuM3MgZWFzZSAhaW1wb3J0YW50OyB9XG4gIC5ibG9nLW5hdmlnYXRpb24gLmJsb2ctbmF2LWdyaWQgLmJsb2ctbmF2LWNvbnRyb2xsZXIuaGlkZGVuLXdoaWxlLXNlYXJjaC1vcGVuIHtcbiAgICBvcGFjaXR5OiAwOyB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTBlbSkge1xuICAgICAgLmJsb2ctbmF2aWdhdGlvbiAuYmxvZy1uYXYtZ3JpZCAuYmxvZy1uYXYtY29udHJvbGxlci5oaWRkZW4td2hpbGUtc2VhcmNoLW9wZW4ge1xuICAgICAgICBvcGFjaXR5OiAxOyB9IH1cbiAgLmJsb2ctbmF2aWdhdGlvbiAuYmxvZy1uYXYtZ3JpZCAubmF2LWNvbCB7XG4gICAgcGFkZGluZy10b3A6IDFyZW07XG4gICAgcGFkZGluZy1ib3R0b206IDFyZW07IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgLmJsb2ctbmF2aWdhdGlvbiAuYmxvZy1uYXYtZ3JpZCAubmF2LWNvbCB7XG4gICAgICAgIHBhZGRpbmctdG9wOiAwO1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogMDsgfSB9XG4gICAgLmJsb2ctbmF2aWdhdGlvbiAuYmxvZy1uYXYtZ3JpZCAubmF2LWNvbCAuYmxvZy1uYXYtbW9iaWxlIHtcbiAgICAgIG1hcmdpbjogMDsgfVxuICAgIC5ibG9nLW5hdmlnYXRpb24gLmJsb2ctbmF2LWdyaWQgLm5hdi1jb2wgLmJsb2ctbmF2LWRlc2t0b3Age1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGZsZXgtZmxvdzogcm93IG5vd3JhcDsgfVxuICAgICAgLmJsb2ctbmF2aWdhdGlvbiAuYmxvZy1uYXYtZ3JpZCAubmF2LWNvbCAuYmxvZy1uYXYtZGVza3RvcCAuYmxvZy1uYXYtaXRlbSB7XG4gICAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrOyB9XG4gICAgICAgIC5ibG9nLW5hdmlnYXRpb24gLmJsb2ctbmF2LWdyaWQgLm5hdi1jb2wgLmJsb2ctbmF2LWRlc2t0b3AgLmJsb2ctbmF2LWl0ZW0gYSB7XG4gICAgICAgICAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICBwYWRkaW5nOiAycmVtIDEuNXJlbTtcbiAgICAgICAgICBjb2xvcjogIzAwMDAwMDtcbiAgICAgICAgICBmb250LWZhbWlseTogXCJnb3JkaXRhbWVkaXVtXCIsIC1hcHBsZS1zeXN0ZW0sIEJsaW5rTWFjU3lzdGVtRm9udCwgXCJTZWdvZSBVSVwiLCBcIlJvYm90b1wiLCBcIk94eWdlblwiLCBcIlVidW50dVwiLCBcIkNhbnRhcmVsbFwiLCBcIkZpcmEgU2Fuc1wiLCBcIkRyb2lkIFNhbnNcIiwgXCJIZWx2ZXRpY2EgTmV1ZVwiLCBzYW5zLXNlcmlmOyB9XG4gICAgICAgICAgLmJsb2ctbmF2aWdhdGlvbiAuYmxvZy1uYXYtZ3JpZCAubmF2LWNvbCAuYmxvZy1uYXYtZGVza3RvcCAuYmxvZy1uYXYtaXRlbSBhLmlzLWFjdGl2ZSB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmZmZmO1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gICAgICAgICAgICAuYmxvZy1uYXZpZ2F0aW9uIC5ibG9nLW5hdi1ncmlkIC5uYXYtY29sIC5ibG9nLW5hdi1kZXNrdG9wIC5ibG9nLW5hdi1pdGVtIGEuaXMtYWN0aXZlOjphZnRlciB7XG4gICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgICAgICAgIGhlaWdodDogNHB4O1xuICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMkRDOUQ3O1xuICAgICAgICAgICAgICBib3R0b206IDA7XG4gICAgICAgICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICAgICAgICBsZWZ0OiAwOyB9XG4gICAgICAgICAgLmJsb2ctbmF2aWdhdGlvbiAuYmxvZy1uYXYtZ3JpZCAubmF2LWNvbCAuYmxvZy1uYXYtZGVza3RvcCAuYmxvZy1uYXYtaXRlbSBhOmhvdmVyLCAuYmxvZy1uYXZpZ2F0aW9uIC5ibG9nLW5hdi1ncmlkIC5uYXYtY29sIC5ibG9nLW5hdi1kZXNrdG9wIC5ibG9nLW5hdi1pdGVtIGE6YWN0aXZlLCAuYmxvZy1uYXZpZ2F0aW9uIC5ibG9nLW5hdi1ncmlkIC5uYXYtY29sIC5ibG9nLW5hdi1kZXNrdG9wIC5ibG9nLW5hdi1pdGVtIGE6Zm9jdXMge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZmZmZjsgfVxuICAuYmxvZy1uYXZpZ2F0aW9uIC5ibG9nLW5hdi1ncmlkIC5zZWFyY2gtY29sIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgICAuYmxvZy1uYXZpZ2F0aW9uIC5ibG9nLW5hdi1ncmlkIC5zZWFyY2gtY29sIC5ibG9nLW5hdi1zZWFyY2hmb3JtLWNvbnQge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiAwO1xuICAgICAgYm90dG9tOiAwO1xuICAgICAgcmlnaHQ6IDA7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjsgfVxuICAgICAgLmJsb2ctbmF2aWdhdGlvbiAuYmxvZy1uYXYtZ3JpZCAuc2VhcmNoLWNvbCAuYmxvZy1uYXYtc2VhcmNoZm9ybS1jb250IGZvcm0gLmlucHV0LWdyb3VwIHtcbiAgICAgICAgbWFyZ2luOiAwOyB9XG4gICAgICAgIC5ibG9nLW5hdmlnYXRpb24gLmJsb2ctbmF2LWdyaWQgLnNlYXJjaC1jb2wgLmJsb2ctbmF2LXNlYXJjaGZvcm0tY29udCBmb3JtIC5pbnB1dC1ncm91cCAuaW5wdXQtZ3JvdXAtYnV0dG9uIHtcbiAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgZGlzcGxheTogZmxleDsgfVxuICAgICAgLmJsb2ctbmF2aWdhdGlvbiAuYmxvZy1uYXYtZ3JpZCAuc2VhcmNoLWNvbCAuYmxvZy1uYXYtc2VhcmNoZm9ybS1jb250IGZvcm0gLmlucHV0LWdyb3VwLWZpZWxkIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMS41NjI1cmVtO1xuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKDQ1LCAyMDEsIDIxNSwgMC41KTtcbiAgICAgICAgbWluLXdpZHRoOiAyNzJweDtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgcmlnaHQ6IC0zNnB4OyB9XG4gICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDkwZW0pIHtcbiAgICAgICAgICAuYmxvZy1uYXZpZ2F0aW9uIC5ibG9nLW5hdi1ncmlkIC5zZWFyY2gtY29sIC5ibG9nLW5hdi1zZWFyY2hmb3JtLWNvbnQgZm9ybSAuaW5wdXQtZ3JvdXAtZmllbGQge1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7IH0gfVxuICAgICAgLmJsb2ctbmF2aWdhdGlvbiAuYmxvZy1uYXYtZ3JpZCAuc2VhcmNoLWNvbCAuYmxvZy1uYXYtc2VhcmNoZm9ybS1jb250IGZvcm0uZm9ybS1hY3RpdmUgLmlucHV0LWdyb3VwLWZpZWxkIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7IH1cblxuLmFkbWluLWJhciAuYmxvZy1uYXZpZ2F0aW9uLnNjcm9sbGVkIHtcbiAgdG9wOiBjYWxjKDQ2cHggKyA2NXB4KSAhaW1wb3J0YW50OyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLmFkbWluLWJhciAuYmxvZy1uYXZpZ2F0aW9uLnNjcm9sbGVkIHtcbiAgICAgIHRvcDogY2FsYyg2NXB4ICsgMzJweCkgIWltcG9ydGFudDsgfSB9XG5cbi5wb3N0LWNhcmQtcm93LWltYWdlIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgYm9yZGVyLXJhZGl1czogMjBweDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBtYXJnaW4tYm90dG9tOiAxLjVyZW07XG4gIGhlaWdodDogMjEuMTI1cmVtOyB9XG4gIC5wb3N0LWNhcmQtcm93LWltYWdlOmhvdmVyIC5jYXJkLXBsYXktYnV0dG9uIHN2ZyBwYXRoLCAucG9zdC1jYXJkLXJvdy1pbWFnZTphY3RpdmUgLmNhcmQtcGxheS1idXR0b24gc3ZnIHBhdGgsIC5wb3N0LWNhcmQtcm93LWltYWdlOmZvY3VzIC5jYXJkLXBsYXktYnV0dG9uIHN2ZyBwYXRoIHtcbiAgICBmaWxsOiAjRkNCNTM2OyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICAucG9zdC1jYXJkLXJvdy1pbWFnZSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwOyB9IH1cbiAgLnBvc3QtY2FyZC1yb3ctaW1hZ2UgLmZlYXR1cmVkLWltYWdlIHtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgbWluLXdpZHRoOiAxMDAlO1xuICAgIG9iamVjdC1maXQ6IGNvdmVyOyB9XG4gIC5wb3N0LWNhcmQtcm93LWltYWdlIC5lbWJlZC1jb250YWluZXIge1xuICAgIGhlaWdodDogMTAwJTsgfVxuICAucG9zdC1jYXJkLXJvdy1pbWFnZSAuY2FyZC1wbGF5LWJ1dHRvbiB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGJvdHRvbTogMS41cmVtO1xuICAgIHJpZ2h0OiAxLjVyZW07IH1cbiAgICAucG9zdC1jYXJkLXJvdy1pbWFnZSAuY2FyZC1wbGF5LWJ1dHRvbiBzdmcgcGF0aCB7XG4gICAgICB0cmFuc2l0aW9uOiBmaWxsIC4yNXMgZWFzZTsgfVxuXG4ucG9zdC1jYXJkLXJvdy1jb250ZW50IHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAucG9zdC1jYXJkLXJvdy1jb250ZW50IHtcbiAgICAgIHBhZGRpbmctbGVmdDogMS41cmVtOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLnBvc3QtY2FyZC1yb3ctY29udGVudCB7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDIuOTE2NjdyZW07IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkgYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAucG9zdC1jYXJkLXJvdy1jb250ZW50IHtcbiAgICAgIHBhZGRpbmctbGVmdDogMi41cmVtOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkgYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICAucG9zdC1jYXJkLXJvdy1jb250ZW50IHtcbiAgICAgIHBhZGRpbmctbGVmdDogM3JlbTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIGFuZCAobWluLXdpZHRoOiA5MGVtKSB7XG4gICAgLnBvc3QtY2FyZC1yb3ctY29udGVudCB7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDNyZW07IH0gfVxuICAucG9zdC1jYXJkLXJvdy1jb250ZW50IC5jYXQtbmFtZSB7XG4gICAgY29sb3I6ICMwMDFFNjI7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICBtYXJnaW4tYm90dG9tOiAxcmVtOyB9XG4gICAgLnBvc3QtY2FyZC1yb3ctY29udGVudCAuY2F0LW5hbWU6aG92ZXIsIC5wb3N0LWNhcmQtcm93LWNvbnRlbnQgLmNhdC1uYW1lOmFjdGl2ZSwgLnBvc3QtY2FyZC1yb3ctY29udGVudCAuY2F0LW5hbWU6Zm9jdXMge1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7IH1cbiAgLnBvc3QtY2FyZC1yb3ctY29udGVudCAucG9zdC10aXRsZSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICBjb2xvcjogIzIxMjEyMTsgfVxuICAgIC5wb3N0LWNhcmQtcm93LWNvbnRlbnQgLnBvc3QtdGl0bGU6aG92ZXIsIC5wb3N0LWNhcmQtcm93LWNvbnRlbnQgLnBvc3QtdGl0bGU6YWN0aXZlLCAucG9zdC1jYXJkLXJvdy1jb250ZW50IC5wb3N0LXRpdGxlOmZvY3VzIHtcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICAgICAgY29sb3I6ICMwMDAwMDA7IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgLnBvc3QtY2FyZC1yb3ctY29udGVudCAucG9zdC10aXRsZSB7XG4gICAgICAgIG1heC13aWR0aDogNjYuNjY3JTsgfSB9XG4gIC5wb3N0LWNhcmQtcm93LWNvbnRlbnQgLnBvc3QtZXhjZXJwdCB7XG4gICAgbWFyZ2luLXRvcDogMS41cmVtOyB9XG4gICAgLnBvc3QtY2FyZC1yb3ctY29udGVudCAucG9zdC1leGNlcnB0ID4gKiB7XG4gICAgICBjb2xvcjogcmdiYSg1MSwgNTEsIDUxLCAwLjUpOyB9XG4gICAgLnBvc3QtY2FyZC1yb3ctY29udGVudCAucG9zdC1leGNlcnB0ID4gcDpsYXN0LWNoaWxkIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7IH1cblxuQGtleWZyYW1lcyBsb2FkU2hpbW1lciB7XG4gIDAlIHtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwcHggMDsgfVxuICAxMDAlIHtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAxMDBlbSAwOyB9IH1cblxuLmMtYW5pbWF0ZWQtYmFja2dyb3VuZCB7XG4gIGFuaW1hdGlvbi1kdXJhdGlvbjogOHM7XG4gIGFuaW1hdGlvbi1maWxsLW1vZGU6IGZvcndhcmRzO1xuICBhbmltYXRpb24taXRlcmF0aW9uLWNvdW50OiBpbmZpbml0ZTtcbiAgYW5pbWF0aW9uLW5hbWU6IGxvYWRTaGltbWVyO1xuICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7XG4gIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCh0byByaWdodCwgI2VlZWVlZSA4JSwgI2RkZGRkZCAxOCUsICNlZWVlZWUgMzMlKTsgfVxuXG4ucG9zdC1jYXJkLXJvdy1ncmlkIHtcbiAgbWFyZ2luLWJvdHRvbTogMi4yNXJlbTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5wb3N0LWNhcmQtcm93LWdyaWQge1xuICAgICAgbWFyZ2luLWJvdHRvbTogNC4zNzVyZW07IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5wb3N0LWNhcmQtcm93LWdyaWQge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMy43NXJlbTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICAucG9zdC1jYXJkLXJvdy1ncmlkIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDQuNXJlbTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDkwZW0pIHtcbiAgICAucG9zdC1jYXJkLXJvdy1ncmlkIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDQuNXJlbTsgfSB9XG4gIC5wb3N0LWNhcmQtcm93LWdyaWQgLmxvYWQtbW9yZS1jZWxsIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7IH1cbiAgICAucG9zdC1jYXJkLXJvdy1ncmlkIC5sb2FkLW1vcmUtY2VsbCAuYnV0dG9uIHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIG1hcmdpbi10b3A6IDEuNXJlbTsgfVxuICAgICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgICAgLnBvc3QtY2FyZC1yb3ctZ3JpZCAubG9hZC1tb3JlLWNlbGwgLmJ1dHRvbiB7XG4gICAgICAgICAgbWFyZ2luLXRvcDogMi45MTY2N3JlbTsgfSB9XG4gICAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgICAucG9zdC1jYXJkLXJvdy1ncmlkIC5sb2FkLW1vcmUtY2VsbCAuYnV0dG9uIHtcbiAgICAgICAgICBtYXJnaW4tdG9wOiAyLjVyZW07IH0gfVxuICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgICAgICAucG9zdC1jYXJkLXJvdy1ncmlkIC5sb2FkLW1vcmUtY2VsbCAuYnV0dG9uIHtcbiAgICAgICAgICBtYXJnaW4tdG9wOiAzcmVtOyB9IH1cbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDkwZW0pIHtcbiAgICAgICAgLnBvc3QtY2FyZC1yb3ctZ3JpZCAubG9hZC1tb3JlLWNlbGwgLmJ1dHRvbiB7XG4gICAgICAgICAgbWFyZ2luLXRvcDogM3JlbTsgfSB9XG4gIC5wb3N0LWNhcmQtcm93LWdyaWQgLnBvc3QtY2FyZC1pdGVtOm5vdCguaXRlbS0xKSB7XG4gICAgbWFyZ2luLXRvcDogM3JlbTsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAucG9zdC1jYXJkLXJvdy1ncmlkIC5wb3N0LWNhcmQtaXRlbTpub3QoLml0ZW0tMSkge1xuICAgICAgICBtYXJnaW4tdG9wOiAxLjVyZW07IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkgYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAucG9zdC1jYXJkLXJvdy1ncmlkIC5wb3N0LWNhcmQtaXRlbTpub3QoLml0ZW0tMSkge1xuICAgICAgbWFyZ2luLXRvcDogMi45MTY2N3JlbTsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5wb3N0LWNhcmQtcm93LWdyaWQgLnBvc3QtY2FyZC1pdGVtOm5vdCguaXRlbS0xKSB7XG4gICAgICBtYXJnaW4tdG9wOiAyLjVyZW07IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgIC5wb3N0LWNhcmQtcm93LWdyaWQgLnBvc3QtY2FyZC1pdGVtOm5vdCguaXRlbS0xKSB7XG4gICAgICBtYXJnaW4tdG9wOiAzcmVtOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkgYW5kIChtaW4td2lkdGg6IDkwZW0pIHtcbiAgICAucG9zdC1jYXJkLXJvdy1ncmlkIC5wb3N0LWNhcmQtaXRlbTpub3QoLml0ZW0tMSkge1xuICAgICAgbWFyZ2luLXRvcDogM3JlbTsgfSB9XG5cbi5wb3N0LWNhcmQtZmVhdHVyZWQge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZmxvdzogY29sdW1uOyB9XG4gIC5wb3N0LWNhcmQtZmVhdHVyZWQgYSB7XG4gICAgZGlzcGxheTogYmxvY2s7IH1cbiAgICAucG9zdC1jYXJkLWZlYXR1cmVkIGE6aG92ZXIsIC5wb3N0LWNhcmQtZmVhdHVyZWQgYTphY3RpdmUsIC5wb3N0LWNhcmQtZmVhdHVyZWQgYTpmb2N1cyB7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTsgfVxuICAucG9zdC1jYXJkLWZlYXR1cmVkIC5mZWF0dXJlZC1wb3N0LWltYWdlIHtcbiAgICBtYXJnaW46IDAgYXV0byAxcmVtO1xuICAgIGhlaWdodDogMTYuMTI1cmVtO1xuICAgIHdpZHRoOiAyMi42MjVyZW07XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGJvcmRlci1yYWRpdXM6IDIwcHg7IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgLnBvc3QtY2FyZC1mZWF0dXJlZCAuZmVhdHVyZWQtcG9zdC1pbWFnZSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDEuNXJlbTsgfSB9XG4gIC5wb3N0LWNhcmQtZmVhdHVyZWQgLmNhdGVnb3J5LWxpbmsge1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgICBjb2xvcjogIzAwMUU2MjtcbiAgICBtYXJnaW4tYm90dG9tOiAxcmVtOyB9XG4gIC5wb3N0LWNhcmQtZmVhdHVyZWQgLnBvc3QtdGl0bGUtbGluayB7XG4gICAgY29sb3I6ICMzMzMzMzM7XG4gICAgcGFkZGluZy1sZWZ0OiAwLjVyZW07XG4gICAgcGFkZGluZy1yaWdodDogMC41cmVtOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIC5wb3N0LWNhcmQtZmVhdHVyZWQgLnBvc3QtdGl0bGUtbGluayB7XG4gICAgICAgIHBhZGRpbmctbGVmdDogMS40NTgzM3JlbTtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMS40NTgzM3JlbTsgfSB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgIC5wb3N0LWNhcmQtZmVhdHVyZWQgLnBvc3QtdGl0bGUtbGluayB7XG4gICAgICAgIHBhZGRpbmctbGVmdDogMi4wODMzM3JlbTtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMi4wODMzM3JlbTsgfSB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgICAgLnBvc3QtY2FyZC1mZWF0dXJlZCAucG9zdC10aXRsZS1saW5rIHtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAyLjVyZW07XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDIuNXJlbTsgfSB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTBlbSkge1xuICAgICAgLnBvc3QtY2FyZC1mZWF0dXJlZCAucG9zdC10aXRsZS1saW5rIHtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAyLjVyZW07XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDIuNXJlbTsgfSB9XG4gICAgLnBvc3QtY2FyZC1mZWF0dXJlZCAucG9zdC10aXRsZS1saW5rIC5wb3N0LXRpdGxlIHtcbiAgICAgIGNvbG9yOiAjMzMzMzMzO1xuICAgICAgZm9udC1zaXplOiAxLjM3NXJlbTtcbiAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7IH1cbiAgICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAgIC5wb3N0LWNhcmQtZmVhdHVyZWQgLnBvc3QtdGl0bGUtbGluayAucG9zdC10aXRsZSB7XG4gICAgICAgICAgZm9udC1zaXplOiAxLjYyNXJlbTsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjkzNzVlbSkge1xuICAudG9wLXBvc3QgLmdyaWQtY29udGFpbmVyLCAudG9wLXBvc3QgLnRvcC1iYXIge1xuICAgIHBhZGRpbmc6IDA7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45Mzc1ZW0pIHtcbiAgLnRvcC1wb3N0IC50b3AtcG9zdC1ncmlkIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAudG9wLXBvc3QgLnRvcC1wb3N0LWdyaWQge1xuICAgIGJvcmRlci1yYWRpdXM6IDIwcHg7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjsgfSB9XG5cbi50b3AtcG9zdCAudG9wLXBvc3QtZ3JpZCAuaW1hZ2UtY29sIHtcbiAgYm9yZGVyLXJhZGl1czogMDtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5LjkzNzVlbSkge1xuICAgIC50b3AtcG9zdCAudG9wLXBvc3QtZ3JpZCAuaW1hZ2UtY29sIHtcbiAgICAgIHotaW5kZXg6IDE7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDA7XG4gICAgICBib3R0b206IDA7XG4gICAgICByaWdodDogMDtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50OyB9XG4gICAgICAudG9wLXBvc3QgLnRvcC1wb3N0LWdyaWQgLmltYWdlLWNvbDo6YmVmb3JlIHtcbiAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDMwLCA5OCwgMC44KTtcbiAgICAgICAgei1pbmRleDogMjsgfSB9XG4gIC50b3AtcG9zdCAudG9wLXBvc3QtZ3JpZCAuaW1hZ2UtY29sIC5mZWF0dXJlZC1pbWFnZSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHotaW5kZXg6IDA7IH1cblxuLnRvcC1wb3N0IC50b3AtcG9zdC1ncmlkIC5jb250ZW50LWNvbCB7XG4gIG1pbi1oZWlnaHQ6IDIxLjEyNXJlbTtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAwMUU2MjtcbiAgY29sb3I6ICNmZmZmZmY7XG4gIHBhZGRpbmctdG9wOiA0LjVyZW07XG4gIHBhZGRpbmctYm90dG9tOiA0LjVyZW07XG4gIHBhZGRpbmctbGVmdDogMC43NXJlbTtcbiAgcGFkZGluZy1yaWdodDogMC43NXJlbTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB6LWluZGV4OiAzOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLnRvcC1wb3N0IC50b3AtcG9zdC1ncmlkIC5jb250ZW50LWNvbCB7XG4gICAgICBwYWRkaW5nLXRvcDogOC43NXJlbTtcbiAgICAgIHBhZGRpbmctYm90dG9tOiA4Ljc1cmVtOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAudG9wLXBvc3QgLnRvcC1wb3N0LWdyaWQgLmNvbnRlbnQtY29sIHtcbiAgICAgIHBhZGRpbmctdG9wOiA3LjVyZW07XG4gICAgICBwYWRkaW5nLWJvdHRvbTogNy41cmVtOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgIC50b3AtcG9zdCAudG9wLXBvc3QtZ3JpZCAuY29udGVudC1jb2wge1xuICAgICAgcGFkZGluZy10b3A6IDlyZW07XG4gICAgICBwYWRkaW5nLWJvdHRvbTogOXJlbTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDkwZW0pIHtcbiAgICAudG9wLXBvc3QgLnRvcC1wb3N0LWdyaWQgLmNvbnRlbnQtY29sIHtcbiAgICAgIHBhZGRpbmctdG9wOiA5cmVtO1xuICAgICAgcGFkZGluZy1ib3R0b206IDlyZW07IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC50b3AtcG9zdCAudG9wLXBvc3QtZ3JpZCAuY29udGVudC1jb2wge1xuICAgICAgcGFkZGluZy1sZWZ0OiAyLjE4NzVyZW07XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAyLjE4NzVyZW07IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC50b3AtcG9zdCAudG9wLXBvc3QtZ3JpZCAuY29udGVudC1jb2wge1xuICAgICAgcGFkZGluZy1sZWZ0OiAzLjEyNXJlbTtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDMuMTI1cmVtOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgIC50b3AtcG9zdCAudG9wLXBvc3QtZ3JpZCAuY29udGVudC1jb2wge1xuICAgICAgcGFkZGluZy1sZWZ0OiAzLjc1cmVtO1xuICAgICAgcGFkZGluZy1yaWdodDogMy43NXJlbTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDkwZW0pIHtcbiAgICAudG9wLXBvc3QgLnRvcC1wb3N0LWdyaWQgLmNvbnRlbnQtY29sIHtcbiAgICAgIHBhZGRpbmctbGVmdDogMy43NXJlbTtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDMuNzVyZW07IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45Mzc1ZW0pIHtcbiAgICAudG9wLXBvc3QgLnRvcC1wb3N0LWdyaWQgLmNvbnRlbnQtY29sIHtcbiAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50OyB9IH1cbiAgLnRvcC1wb3N0IC50b3AtcG9zdC1ncmlkIC5jb250ZW50LWNvbCBhIHtcbiAgICBkaXNwbGF5OiBibG9jazsgfVxuICAgIC50b3AtcG9zdCAudG9wLXBvc3QtZ3JpZCAuY29udGVudC1jb2wgYTpob3ZlciwgLnRvcC1wb3N0IC50b3AtcG9zdC1ncmlkIC5jb250ZW50LWNvbCBhOmFjdGl2ZSwgLnRvcC1wb3N0IC50b3AtcG9zdC1ncmlkIC5jb250ZW50LWNvbCBhOmZvY3VzIHtcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lOyB9XG4gIC50b3AtcG9zdCAudG9wLXBvc3QtZ3JpZCAuY29udGVudC1jb2wgLmNhdGVnb3J5LWxpbmsge1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgICBtYXJnaW4tYm90dG9tOiAxcmVtOyB9XG4gIC50b3AtcG9zdCAudG9wLXBvc3QtZ3JpZCAuY29udGVudC1jb2wgLnBvc3QtdGl0bGUtbGluayB7XG4gICAgbWFyZ2luLWJvdHRvbTogMS41cmVtOyB9XG4gICAgLnRvcC1wb3N0IC50b3AtcG9zdC1ncmlkIC5jb250ZW50LWNvbCAucG9zdC10aXRsZS1saW5rIC5wb3N0LXRpdGxlIHtcbiAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7IH1cblxuLnRvcC1wb3N0LnRvcC1wb3N0LXZpZGVvIHtcbiAgbWFyZ2luLWJvdHRvbTogMS41cmVtOyB9XG4gIC50b3AtcG9zdC50b3AtcG9zdC12aWRlbyAudG9wLXBvc3Qtcm93IHtcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMyMTIxMjE7IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgLnRvcC1wb3N0LnRvcC1wb3N0LXZpZGVvIC50b3AtcG9zdC1yb3cge1xuICAgICAgICBib3JkZXItcmFkaXVzOiAyMHB4OyB9IH1cbiAgLnRvcC1wb3N0LnRvcC1wb3N0LXZpZGVvIC50b3AtcG9zdC1yb3ctaW1hZ2Uge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuNXMgZWFzZTtcbiAgICB6LWluZGV4OiA2OyB9XG4gICAgLnRvcC1wb3N0LnRvcC1wb3N0LXZpZGVvIC50b3AtcG9zdC1yb3ctaW1hZ2Uub3BhY2l0eS0wIHtcbiAgICAgIG9wYWNpdHk6IDA7XG4gICAgICB6LWluZGV4OiAtMTsgfVxuICAgIC50b3AtcG9zdC50b3AtcG9zdC12aWRlbyAudG9wLXBvc3Qtcm93LWltYWdlOjphZnRlciB7XG4gICAgICBjb250ZW50OiAnJztcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMzAsIDk4LCAwLjUpO1xuICAgICAgdG9wOiAwO1xuICAgICAgYm90dG9tOiAwO1xuICAgICAgcmlnaHQ6IDA7XG4gICAgICBsZWZ0OiAwOyB9XG4gICAgLnRvcC1wb3N0LnRvcC1wb3N0LXZpZGVvIC50b3AtcG9zdC1yb3ctaW1hZ2UgLnRvcC1wb3N0LWNvbnRyb2xzLWxpbmtzIHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIHotaW5kZXg6IDI7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDAuNzVyZW07XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwLjc1cmVtO1xuICAgICAgcGFkZGluZy10b3A6IDQuNXJlbTtcbiAgICAgIHBhZGRpbmctYm90dG9tOiA0LjVyZW07XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgZmxleC1mbG93OiBjb2x1bW47XG4gICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAgIC50b3AtcG9zdC50b3AtcG9zdC12aWRlbyAudG9wLXBvc3Qtcm93LWltYWdlIC50b3AtcG9zdC1jb250cm9scy1saW5rcyB7XG4gICAgICAgICAgcGFkZGluZy1sZWZ0OiAyLjE4NzVyZW07XG4gICAgICAgICAgcGFkZGluZy1yaWdodDogMi4xODc1cmVtOyB9IH1cbiAgICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAgIC50b3AtcG9zdC50b3AtcG9zdC12aWRlbyAudG9wLXBvc3Qtcm93LWltYWdlIC50b3AtcG9zdC1jb250cm9scy1saW5rcyB7XG4gICAgICAgICAgcGFkZGluZy1sZWZ0OiAzLjEyNXJlbTtcbiAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAzLjEyNXJlbTsgfSB9XG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgICAgIC50b3AtcG9zdC50b3AtcG9zdC12aWRlbyAudG9wLXBvc3Qtcm93LWltYWdlIC50b3AtcG9zdC1jb250cm9scy1saW5rcyB7XG4gICAgICAgICAgcGFkZGluZy1sZWZ0OiAzLjc1cmVtO1xuICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDMuNzVyZW07IH0gfVxuICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTBlbSkge1xuICAgICAgICAudG9wLXBvc3QudG9wLXBvc3QtdmlkZW8gLnRvcC1wb3N0LXJvdy1pbWFnZSAudG9wLXBvc3QtY29udHJvbHMtbGlua3Mge1xuICAgICAgICAgIHBhZGRpbmctbGVmdDogMy43NXJlbTtcbiAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAzLjc1cmVtOyB9IH1cbiAgICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAgIC50b3AtcG9zdC50b3AtcG9zdC12aWRlbyAudG9wLXBvc3Qtcm93LWltYWdlIC50b3AtcG9zdC1jb250cm9scy1saW5rcyB7XG4gICAgICAgICAgcGFkZGluZy10b3A6IDguNzVyZW07XG4gICAgICAgICAgcGFkZGluZy1ib3R0b206IDguNzVyZW07IH0gfVxuICAgICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgICAgLnRvcC1wb3N0LnRvcC1wb3N0LXZpZGVvIC50b3AtcG9zdC1yb3ctaW1hZ2UgLnRvcC1wb3N0LWNvbnRyb2xzLWxpbmtzIHtcbiAgICAgICAgICBwYWRkaW5nLXRvcDogNy41cmVtO1xuICAgICAgICAgIHBhZGRpbmctYm90dG9tOiA3LjVyZW07IH0gfVxuICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgICAgICAudG9wLXBvc3QudG9wLXBvc3QtdmlkZW8gLnRvcC1wb3N0LXJvdy1pbWFnZSAudG9wLXBvc3QtY29udHJvbHMtbGlua3Mge1xuICAgICAgICAgIHBhZGRpbmctdG9wOiA5cmVtO1xuICAgICAgICAgIHBhZGRpbmctYm90dG9tOiA5cmVtOyB9IH1cbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDkwZW0pIHtcbiAgICAgICAgLnRvcC1wb3N0LnRvcC1wb3N0LXZpZGVvIC50b3AtcG9zdC1yb3ctaW1hZ2UgLnRvcC1wb3N0LWNvbnRyb2xzLWxpbmtzIHtcbiAgICAgICAgICBwYWRkaW5nLXRvcDogOXJlbTtcbiAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogOXJlbTsgfSB9XG4gICAgICAudG9wLXBvc3QudG9wLXBvc3QtdmlkZW8gLnRvcC1wb3N0LXJvdy1pbWFnZSAudG9wLXBvc3QtY29udHJvbHMtbGlua3MgLmNhdGVnb3J5LWxpbmsge1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICBmb250LXNpemU6IDAuODc1cmVtO1xuICAgICAgICBjb2xvcjogI2ZmZmZmZjtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMXJlbTsgfVxuICAgICAgICAudG9wLXBvc3QudG9wLXBvc3QtdmlkZW8gLnRvcC1wb3N0LXJvdy1pbWFnZSAudG9wLXBvc3QtY29udHJvbHMtbGlua3MgLmNhdGVnb3J5LWxpbms6aG92ZXIsIC50b3AtcG9zdC50b3AtcG9zdC12aWRlbyAudG9wLXBvc3Qtcm93LWltYWdlIC50b3AtcG9zdC1jb250cm9scy1saW5rcyAuY2F0ZWdvcnktbGluazphY3RpdmUsIC50b3AtcG9zdC50b3AtcG9zdC12aWRlbyAudG9wLXBvc3Qtcm93LWltYWdlIC50b3AtcG9zdC1jb250cm9scy1saW5rcyAuY2F0ZWdvcnktbGluazpmb2N1cyB7XG4gICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7IH1cbiAgICAgIC50b3AtcG9zdC50b3AtcG9zdC12aWRlbyAudG9wLXBvc3Qtcm93LWltYWdlIC50b3AtcG9zdC1jb250cm9scy1saW5rcyAucG9zdC10aXRsZSB7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgY29sb3I6ICNmZmZmZmY7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDJyZW07IH1cbiAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTM3NWVtKSB7XG4gICAgICAgICAgLnRvcC1wb3N0LnRvcC1wb3N0LXZpZGVvIC50b3AtcG9zdC1yb3ctaW1hZ2UgLnRvcC1wb3N0LWNvbnRyb2xzLWxpbmtzIC5wb3N0LXRpdGxlIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMS44NzVyZW07IH0gfVxuICAgICAgICAudG9wLXBvc3QudG9wLXBvc3QtdmlkZW8gLnRvcC1wb3N0LXJvdy1pbWFnZSAudG9wLXBvc3QtY29udHJvbHMtbGlua3MgLnBvc3QtdGl0bGU6aG92ZXIsIC50b3AtcG9zdC50b3AtcG9zdC12aWRlbyAudG9wLXBvc3Qtcm93LWltYWdlIC50b3AtcG9zdC1jb250cm9scy1saW5rcyAucG9zdC10aXRsZTphY3RpdmUsIC50b3AtcG9zdC50b3AtcG9zdC12aWRlbyAudG9wLXBvc3Qtcm93LWltYWdlIC50b3AtcG9zdC1jb250cm9scy1saW5rcyAucG9zdC10aXRsZTpmb2N1cyB7XG4gICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7IH1cbiAgICAgIC50b3AtcG9zdC50b3AtcG9zdC12aWRlbyAudG9wLXBvc3Qtcm93LWltYWdlIC50b3AtcG9zdC1jb250cm9scy1saW5rcyAuY2FyZC1wbGF5LWJ1dHRvbiB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgdG9wOiB1bnNldDtcbiAgICAgICAgYm90dG9tOiB1bnNldDtcbiAgICAgICAgcmlnaHQ6IHVuc2V0O1xuICAgICAgICBsZWZ0OiB1bnNldDtcbiAgICAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgICAgIGhlaWdodDogNHJlbTtcbiAgICAgICAgd2lkdGg6IDRyZW07IH1cbiAgICAgICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgICAgICAudG9wLXBvc3QudG9wLXBvc3QtdmlkZW8gLnRvcC1wb3N0LXJvdy1pbWFnZSAudG9wLXBvc3QtY29udHJvbHMtbGlua3MgLmNhcmQtcGxheS1idXR0b24ge1xuICAgICAgICAgICAgaGVpZ2h0OiA2cmVtO1xuICAgICAgICAgICAgd2lkdGg6IDZyZW07IH0gfVxuICAgICAgICAudG9wLXBvc3QudG9wLXBvc3QtdmlkZW8gLnRvcC1wb3N0LXJvdy1pbWFnZSAudG9wLXBvc3QtY29udHJvbHMtbGlua3MgLmNhcmQtcGxheS1idXR0b24gc3ZnIHtcbiAgICAgICAgICBtYXgtaGVpZ2h0OiAxLjVyZW07IH1cbiAgICAgICAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgICAgICAgLnRvcC1wb3N0LnRvcC1wb3N0LXZpZGVvIC50b3AtcG9zdC1yb3ctaW1hZ2UgLnRvcC1wb3N0LWNvbnRyb2xzLWxpbmtzIC5jYXJkLXBsYXktYnV0dG9uIHN2ZyB7XG4gICAgICAgICAgICAgIG1heC1oZWlnaHQ6IDJyZW07IH0gfVxuICAgICAgICAudG9wLXBvc3QudG9wLXBvc3QtdmlkZW8gLnRvcC1wb3N0LXJvdy1pbWFnZSAudG9wLXBvc3QtY29udHJvbHMtbGlua3MgLmNhcmQtcGxheS1idXR0b246aG92ZXIsIC50b3AtcG9zdC50b3AtcG9zdC12aWRlbyAudG9wLXBvc3Qtcm93LWltYWdlIC50b3AtcG9zdC1jb250cm9scy1saW5rcyAuY2FyZC1wbGF5LWJ1dHRvbjphY3RpdmUsIC50b3AtcG9zdC50b3AtcG9zdC12aWRlbyAudG9wLXBvc3Qtcm93LWltYWdlIC50b3AtcG9zdC1jb250cm9scy1saW5rcyAuY2FyZC1wbGF5LWJ1dHRvbjpmb2N1cyB7XG4gICAgICAgICAgY3Vyc29yOiBwb2ludGVyOyB9XG4gICAgICAgICAgLnRvcC1wb3N0LnRvcC1wb3N0LXZpZGVvIC50b3AtcG9zdC1yb3ctaW1hZ2UgLnRvcC1wb3N0LWNvbnRyb2xzLWxpbmtzIC5jYXJkLXBsYXktYnV0dG9uOmhvdmVyIHN2ZyBwYXRoLCAudG9wLXBvc3QudG9wLXBvc3QtdmlkZW8gLnRvcC1wb3N0LXJvdy1pbWFnZSAudG9wLXBvc3QtY29udHJvbHMtbGlua3MgLmNhcmQtcGxheS1idXR0b246YWN0aXZlIHN2ZyBwYXRoLCAudG9wLXBvc3QudG9wLXBvc3QtdmlkZW8gLnRvcC1wb3N0LXJvdy1pbWFnZSAudG9wLXBvc3QtY29udHJvbHMtbGlua3MgLmNhcmQtcGxheS1idXR0b246Zm9jdXMgc3ZnIHBhdGgge1xuICAgICAgICAgICAgZmlsbDogI0ZDQjUzNjsgfVxuICAudG9wLXBvc3QudG9wLXBvc3QtdmlkZW8gLmVtYmVkLWNvbnRhaW5lciB7XG4gICAgYm9yZGVyLXJhZGl1czogMDtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiA1MCU7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGxlZnQ6IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgei1pbmRleDogMTsgfVxuICAgIC50b3AtcG9zdC50b3AtcG9zdC12aWRlbyAuZW1iZWQtY29udGFpbmVyIGlmcmFtZSB7XG4gICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94OyB9XG5cbi50b3AtcG9zdCAuYXJ0aWNsZS1jb2wge1xuICBwYWRkaW5nLXRvcDogMC43NXJlbTtcbiAgcGFkZGluZy1ib3R0b206IDAuNzVyZW07XG4gIHBhZGRpbmctbGVmdDogMC4zNzVyZW07XG4gIHBhZGRpbmctcmlnaHQ6IDAuMzc1cmVtOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLnRvcC1wb3N0IC5hcnRpY2xlLWNvbCB7XG4gICAgICBwYWRkaW5nLXRvcDogMS40NTgzM3JlbTtcbiAgICAgIHBhZGRpbmctYm90dG9tOiAxLjQ1ODMzcmVtOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAudG9wLXBvc3QgLmFydGljbGUtY29sIHtcbiAgICAgIHBhZGRpbmctdG9wOiAxLjI1cmVtO1xuICAgICAgcGFkZGluZy1ib3R0b206IDEuMjVyZW07IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgLnRvcC1wb3N0IC5hcnRpY2xlLWNvbCB7XG4gICAgICBwYWRkaW5nLXRvcDogMS41cmVtO1xuICAgICAgcGFkZGluZy1ib3R0b206IDEuNXJlbTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDkwZW0pIHtcbiAgICAudG9wLXBvc3QgLmFydGljbGUtY29sIHtcbiAgICAgIHBhZGRpbmctdG9wOiAxLjVyZW07XG4gICAgICBwYWRkaW5nLWJvdHRvbTogMS41cmVtOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAudG9wLXBvc3QgLmFydGljbGUtY29sIHtcbiAgICAgIHBhZGRpbmctbGVmdDogMS4wOTM3NXJlbTtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDEuMDkzNzVyZW07IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC50b3AtcG9zdCAuYXJ0aWNsZS1jb2wge1xuICAgICAgcGFkZGluZy1sZWZ0OiAxLjU2MjVyZW07XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAxLjU2MjVyZW07IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgLnRvcC1wb3N0IC5hcnRpY2xlLWNvbCB7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDEuODc1cmVtO1xuICAgICAgcGFkZGluZy1yaWdodDogMS44NzVyZW07IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5MGVtKSB7XG4gICAgLnRvcC1wb3N0IC5hcnRpY2xlLWNvbCB7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDEuODc1cmVtO1xuICAgICAgcGFkZGluZy1yaWdodDogMS44NzVyZW07IH0gfVxuICAudG9wLXBvc3QgLmFydGljbGUtY29sIC5nby10by1hcnRpY2xlLXRleHQge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIGNvbG9yOiAjMDAxRTYyOyB9XG4gICAgLnRvcC1wb3N0IC5hcnRpY2xlLWNvbCAuZ28tdG8tYXJ0aWNsZS10ZXh0OmhvdmVyLCAudG9wLXBvc3QgLmFydGljbGUtY29sIC5nby10by1hcnRpY2xlLXRleHQ6YWN0aXZlLCAudG9wLXBvc3QgLmFydGljbGUtY29sIC5nby10by1hcnRpY2xlLXRleHQ6Zm9jdXMge1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7IH1cblxuLmZlYXR1cmVkLXBvc3RzIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSg0NSwgMjAxLCAyMTUsIDAuMSk7XG4gIHBhZGRpbmctdG9wOiAxLjVyZW07XG4gIHBhZGRpbmctYm90dG9tOiAxLjVyZW07IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuZmVhdHVyZWQtcG9zdHMge1xuICAgICAgcGFkZGluZy10b3A6IDIuOTE2NjdyZW07XG4gICAgICBwYWRkaW5nLWJvdHRvbTogMi45MTY2N3JlbTsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmZlYXR1cmVkLXBvc3RzIHtcbiAgICAgIHBhZGRpbmctdG9wOiAyLjVyZW07XG4gICAgICBwYWRkaW5nLWJvdHRvbTogMi41cmVtOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgIC5mZWF0dXJlZC1wb3N0cyB7XG4gICAgICBwYWRkaW5nLXRvcDogM3JlbTtcbiAgICAgIHBhZGRpbmctYm90dG9tOiAzcmVtOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTBlbSkge1xuICAgIC5mZWF0dXJlZC1wb3N0cyB7XG4gICAgICBwYWRkaW5nLXRvcDogM3JlbTtcbiAgICAgIHBhZGRpbmctYm90dG9tOiAzcmVtOyB9IH1cbiAgLmZlYXR1cmVkLXBvc3RzIC5mZWF0dXJlZC1wb3N0cy10aXRsZSB7XG4gICAgY29sb3I6ICMwMDFFNjI7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIG1hcmdpbi1ib3R0b206IDEuNXJlbTsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAuZmVhdHVyZWQtcG9zdHMgLmZlYXR1cmVkLXBvc3RzLXRpdGxlIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMi45MTY2N3JlbTsgfSB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgIC5mZWF0dXJlZC1wb3N0cyAuZmVhdHVyZWQtcG9zdHMtdGl0bGUge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAyLjVyZW07IH0gfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICAgIC5mZWF0dXJlZC1wb3N0cyAuZmVhdHVyZWQtcG9zdHMtdGl0bGUge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAzcmVtOyB9IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5MGVtKSB7XG4gICAgICAuZmVhdHVyZWQtcG9zdHMgLmZlYXR1cmVkLXBvc3RzLXRpdGxlIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogM3JlbTsgfSB9XG4gIC5mZWF0dXJlZC1wb3N0cyAuZmVhdHVyZWQtcG9zdHMtc2xpZGVyIC5zbGljay1hcnJvdyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZmZmZjtcbiAgICBjb2xvcjogIzAwMDAwMDtcbiAgICB3aWR0aDogMi41cmVtO1xuICAgIGhlaWdodDogMi41cmVtO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB6LWluZGV4OiAxMTsgfVxuICAgIC5mZWF0dXJlZC1wb3N0cyAuZmVhdHVyZWQtcG9zdHMtc2xpZGVyIC5zbGljay1hcnJvdzo6YmVmb3JlIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGZvbnQtZmFtaWx5OiAnRm9udCBBd2Vzb21lIDUgUHJvJztcbiAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICAgIGhlaWdodDogMC43NXJlbTtcbiAgICAgIHdpZHRoOiAwLjc1cmVtO1xuICAgICAgY29sb3I6ICMwMDAwMDA7XG4gICAgICBvcGFjaXR5OiAxO1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICB0b3A6IDUwJTtcbiAgICAgIGxlZnQ6IDUwJTtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpOyB9XG4gICAgLmZlYXR1cmVkLXBvc3RzIC5mZWF0dXJlZC1wb3N0cy1zbGlkZXIgLnNsaWNrLWFycm93LnNsaWNrLXByZXYge1xuICAgICAgbGVmdDogMDsgfVxuICAgICAgLmZlYXR1cmVkLXBvc3RzIC5mZWF0dXJlZC1wb3N0cy1zbGlkZXIgLnNsaWNrLWFycm93LnNsaWNrLXByZXY6OmJlZm9yZSB7XG4gICAgICAgIGNvbnRlbnQ6ICdcXGYxMDQnOyB9XG4gICAgLmZlYXR1cmVkLXBvc3RzIC5mZWF0dXJlZC1wb3N0cy1zbGlkZXIgLnNsaWNrLWFycm93LnNsaWNrLW5leHQge1xuICAgICAgcmlnaHQ6IDA7IH1cbiAgICAgIC5mZWF0dXJlZC1wb3N0cyAuZmVhdHVyZWQtcG9zdHMtc2xpZGVyIC5zbGljay1hcnJvdy5zbGljay1uZXh0OjpiZWZvcmUge1xuICAgICAgICBjb250ZW50OiAnXFxmMTA1JzsgfVxuXG4ucG9zdC1zaGFyZSB7XG4gIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjkzNzVlbSkge1xuICAgIC5wb3N0LXNoYXJlLnNoYXJlLWNvbHVtbiB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMi4yNXJlbTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjkzNzVlbSkgYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAucG9zdC1zaGFyZS5zaGFyZS1jb2x1bW4ge1xuICAgICAgbWFyZ2luLWJvdHRvbTogNC4zNzVyZW07IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45Mzc1ZW0pIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLnBvc3Qtc2hhcmUuc2hhcmUtY29sdW1uIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDMuNzVyZW07IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45Mzc1ZW0pIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgLnBvc3Qtc2hhcmUuc2hhcmUtY29sdW1uIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDQuNXJlbTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjkzNzVlbSkgYW5kIChtaW4td2lkdGg6IDkwZW0pIHtcbiAgICAucG9zdC1zaGFyZS5zaGFyZS1jb2x1bW4ge1xuICAgICAgbWFyZ2luLWJvdHRvbTogNC41cmVtOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTM3NWVtKSB7XG4gICAgICAucG9zdC1zaGFyZS5zaGFyZS1jb2x1bW4gLnNoYXJlLWljb246bm90KDpsYXN0LWNoaWxkKSB7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMXJlbTsgfSB9XG4gIC5wb3N0LXNoYXJlLnNoYXJlLWNvbHVtbiAuc2hhcmUtaWNvbiBpIHtcbiAgICBmb250LXNpemU6IDEuNXJlbTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5wb3N0LXNoYXJlLnNoYXJlLWNvbHVtbiB7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgcmlnaHQ6IDA7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7IH1cbiAgICAgIC5wb3N0LXNoYXJlLnNoYXJlLWNvbHVtbiAuc2hhcmUtaWNvbjpub3QoOmxhc3QtY2hpbGQpIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMS41cmVtOyB9IH1cbiAgLnBvc3Qtc2hhcmUuc2hhcmUtcm93IC5zaGFyZS1pY29uOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICBtYXJnaW4tbGVmdDogMXJlbTsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAucG9zdC1zaGFyZS5zaGFyZS1yb3cgLnNoYXJlLWljb246bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgICBtYXJnaW4tbGVmdDogMS41cmVtOyB9IH1cbiAgLnBvc3Qtc2hhcmUgLnNoYXJlLWljb24gaSB7XG4gICAgZm9udC1zaXplOiAxLjVyZW07XG4gICAgZm9udC13ZWlnaHQ6IDQwMDsgfVxuXG4ucG9zdC1tZXRhIHtcbiAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7IH1cbiAgLnBvc3QtbWV0YSBpbWcge1xuICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICBoZWlnaHQ6IDQ4cHg7XG4gICAgd2lkdGg6IDQ4cHg7IH1cbiAgLnBvc3QtbWV0YTpob3ZlciAuYXV0aG9yLW5hbWUge1xuICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lOyB9XG4gIC5wb3N0LW1ldGEubGFyZ2UgaW1nIHtcbiAgICBoZWlnaHQ6IDgwcHg7XG4gICAgd2lkdGg6IDgwcHg7IH1cbiAgLnBvc3QtbWV0YSAuYXV0aG9yLW5hbWUge1xuICAgIG1hcmdpbi1sZWZ0OiAxcmVtO1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgY29sb3I6ICMyMTIxMjE7IH1cblxuLmJyb3dzZS1ieS1jYXRlZ29yeSAuYnJvd3NlLWJ5LWNhdGVnb3J5LXRpdGxlIHtcbiAgY29sb3I6ICMwMDFFNjI7XG4gIG1hcmdpbi1ib3R0b206IDEuNXJlbTtcbiAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLmJyb3dzZS1ieS1jYXRlZ29yeSAuYnJvd3NlLWJ5LWNhdGVnb3J5LXRpdGxlIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDIuOTE2NjdyZW07IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5icm93c2UtYnktY2F0ZWdvcnkgLmJyb3dzZS1ieS1jYXRlZ29yeS10aXRsZSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAyLjVyZW07IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgLmJyb3dzZS1ieS1jYXRlZ29yeSAuYnJvd3NlLWJ5LWNhdGVnb3J5LXRpdGxlIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDNyZW07IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5MGVtKSB7XG4gICAgLmJyb3dzZS1ieS1jYXRlZ29yeSAuYnJvd3NlLWJ5LWNhdGVnb3J5LXRpdGxlIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDNyZW07IH0gfVxuXG4uYnJvd3NlLWJ5LWNhdGVnb3J5IC5jYXRlZ29yeS1jZWxsIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSg0NSwgMjAxLCAyMTUsIDAuMSk7XG4gIGJvcmRlci1yYWRpdXM6IDIwcHg7XG4gIG92ZXJmbG93OiBoaWRkZW47IH1cbiAgLmJyb3dzZS1ieS1jYXRlZ29yeSAuY2F0ZWdvcnktY2VsbCAuaW1hZ2UtY29sIGltZyB7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG9iamVjdC1maXQ6IGNvdmVyO1xuICAgIG9iamVjdC1wb3NpdGlvbjogY2VudGVyOyB9XG4gIC5icm93c2UtYnktY2F0ZWdvcnkgLmNhdGVnb3J5LWNlbGwgLmNvbnRlbnQtY29sIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgbWluLWhlaWdodDogNi4yNXJlbTtcbiAgICBwYWRkaW5nLXRvcDogMi4yNXJlbTtcbiAgICBwYWRkaW5nLWJvdHRvbTogMi4yNXJlbTtcbiAgICBwYWRkaW5nLWxlZnQ6IDEuNXJlbTtcbiAgICBwYWRkaW5nLXJpZ2h0OiAxLjVyZW07IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgLmJyb3dzZS1ieS1jYXRlZ29yeSAuY2F0ZWdvcnktY2VsbCAuY29udGVudC1jb2wge1xuICAgICAgICBwYWRkaW5nLXRvcDogNC4zNzVyZW07XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiA0LjM3NXJlbTsgfSB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgIC5icm93c2UtYnktY2F0ZWdvcnkgLmNhdGVnb3J5LWNlbGwgLmNvbnRlbnQtY29sIHtcbiAgICAgICAgcGFkZGluZy10b3A6IDMuNzVyZW07XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAzLjc1cmVtOyB9IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgICAuYnJvd3NlLWJ5LWNhdGVnb3J5IC5jYXRlZ29yeS1jZWxsIC5jb250ZW50LWNvbCB7XG4gICAgICAgIHBhZGRpbmctdG9wOiA0LjVyZW07XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiA0LjVyZW07IH0gfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDkwZW0pIHtcbiAgICAgIC5icm93c2UtYnktY2F0ZWdvcnkgLmNhdGVnb3J5LWNlbGwgLmNvbnRlbnQtY29sIHtcbiAgICAgICAgcGFkZGluZy10b3A6IDQuNXJlbTtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDQuNXJlbTsgfSB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIC5icm93c2UtYnktY2F0ZWdvcnkgLmNhdGVnb3J5LWNlbGwgLmNvbnRlbnQtY29sIHtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiA0LjM3NXJlbTtcbiAgICAgICAgcGFkZGluZy1yaWdodDogNC4zNzVyZW07IH0gfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAuYnJvd3NlLWJ5LWNhdGVnb3J5IC5jYXRlZ29yeS1jZWxsIC5jb250ZW50LWNvbCB7XG4gICAgICAgIHBhZGRpbmctbGVmdDogNi4yNXJlbTtcbiAgICAgICAgcGFkZGluZy1yaWdodDogNi4yNXJlbTsgfSB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgICAgLmJyb3dzZS1ieS1jYXRlZ29yeSAuY2F0ZWdvcnktY2VsbCAuY29udGVudC1jb2wge1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDcuNXJlbTtcbiAgICAgICAgcGFkZGluZy1yaWdodDogNy41cmVtOyB9IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5MGVtKSB7XG4gICAgICAuYnJvd3NlLWJ5LWNhdGVnb3J5IC5jYXRlZ29yeS1jZWxsIC5jb250ZW50LWNvbCB7XG4gICAgICAgIHBhZGRpbmctbGVmdDogNy41cmVtO1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiA3LjVyZW07IH0gfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIGFuZCAobWF4LXdpZHRoOiA2My45Mzc1ZW0pIHtcbiAgICAgIC5icm93c2UtYnktY2F0ZWdvcnkgLmNhdGVnb3J5LWNlbGwgLmNvbnRlbnQtY29sIHtcbiAgICAgICAgcGFkZGluZy10b3A6IDEuNXJlbTtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDEuNXJlbTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIGFuZCAobWF4LXdpZHRoOiA2My45Mzc1ZW0pIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLmJyb3dzZS1ieS1jYXRlZ29yeSAuY2F0ZWdvcnktY2VsbCAuY29udGVudC1jb2wge1xuICAgICAgcGFkZGluZy10b3A6IDIuOTE2NjdyZW07XG4gICAgICBwYWRkaW5nLWJvdHRvbTogMi45MTY2N3JlbTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIGFuZCAobWF4LXdpZHRoOiA2My45Mzc1ZW0pIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmJyb3dzZS1ieS1jYXRlZ29yeSAuY2F0ZWdvcnktY2VsbCAuY29udGVudC1jb2wge1xuICAgICAgcGFkZGluZy10b3A6IDIuNXJlbTtcbiAgICAgIHBhZGRpbmctYm90dG9tOiAyLjVyZW07IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSBhbmQgKG1heC13aWR0aDogNjMuOTM3NWVtKSBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgIC5icm93c2UtYnktY2F0ZWdvcnkgLmNhdGVnb3J5LWNlbGwgLmNvbnRlbnQtY29sIHtcbiAgICAgIHBhZGRpbmctdG9wOiAzcmVtO1xuICAgICAgcGFkZGluZy1ib3R0b206IDNyZW07IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSBhbmQgKG1heC13aWR0aDogNjMuOTM3NWVtKSBhbmQgKG1pbi13aWR0aDogOTBlbSkge1xuICAgIC5icm93c2UtYnktY2F0ZWdvcnkgLmNhdGVnb3J5LWNlbGwgLmNvbnRlbnQtY29sIHtcbiAgICAgIHBhZGRpbmctdG9wOiAzcmVtO1xuICAgICAgcGFkZGluZy1ib3R0b206IDNyZW07IH0gfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAuYnJvd3NlLWJ5LWNhdGVnb3J5IC5jYXRlZ29yeS1jZWxsIC5jb250ZW50LWNvbCB7XG4gICAgICAgIHBhZGRpbmctbGVmdDogMC41cmVtO1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwLjVyZW07IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkgYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuYnJvd3NlLWJ5LWNhdGVnb3J5IC5jYXRlZ29yeS1jZWxsIC5jb250ZW50LWNvbCB7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDEuNDU4MzNyZW07XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAxLjQ1ODMzcmVtOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmJyb3dzZS1ieS1jYXRlZ29yeSAuY2F0ZWdvcnktY2VsbCAuY29udGVudC1jb2wge1xuICAgICAgcGFkZGluZy1sZWZ0OiAyLjA4MzMzcmVtO1xuICAgICAgcGFkZGluZy1yaWdodDogMi4wODMzM3JlbTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgLmJyb3dzZS1ieS1jYXRlZ29yeSAuY2F0ZWdvcnktY2VsbCAuY29udGVudC1jb2wge1xuICAgICAgcGFkZGluZy1sZWZ0OiAyLjVyZW07XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAyLjVyZW07IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSBhbmQgKG1pbi13aWR0aDogOTBlbSkge1xuICAgIC5icm93c2UtYnktY2F0ZWdvcnkgLmNhdGVnb3J5LWNlbGwgLmNvbnRlbnQtY29sIHtcbiAgICAgIHBhZGRpbmctbGVmdDogMi41cmVtO1xuICAgICAgcGFkZGluZy1yaWdodDogMi41cmVtOyB9IH1cbiAgICAuYnJvd3NlLWJ5LWNhdGVnb3J5IC5jYXRlZ29yeS1jZWxsIC5jb250ZW50LWNvbCAuY2F0ZWdvcnktdGl0bGUge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgIGNvbG9yOiAjMDAxRTYyO1xuICAgICAgd2lkdGg6IDEwMCU7IH1cbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5LjkzNzVlbSkge1xuICAgICAgICAuYnJvd3NlLWJ5LWNhdGVnb3J5IC5jYXRlZ29yeS1jZWxsIC5jb250ZW50LWNvbCAuY2F0ZWdvcnktdGl0bGUge1xuICAgICAgICAgIGZvbnQtc2l6ZTogMS4xMjVyZW07IH0gfVxuICAgICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgICAgLmJyb3dzZS1ieS1jYXRlZ29yeSAuY2F0ZWdvcnktY2VsbCAuY29udGVudC1jb2wgLmNhdGVnb3J5LXRpdGxlIHtcbiAgICAgICAgICBmb250LXNpemU6IDEuNjI1cmVtOyB9IH1cbiAgLmJyb3dzZS1ieS1jYXRlZ29yeSAuY2F0ZWdvcnktY2VsbDpob3ZlciAuY29udGVudC1jb2wgLmNhdGVnb3J5LXRpdGxlLCAuYnJvd3NlLWJ5LWNhdGVnb3J5IC5jYXRlZ29yeS1jZWxsOmFjdGl2ZSAuY29udGVudC1jb2wgLmNhdGVnb3J5LXRpdGxlLCAuYnJvd3NlLWJ5LWNhdGVnb3J5IC5jYXRlZ29yeS1jZWxsOmZvY3VzIC5jb250ZW50LWNvbCAuY2F0ZWdvcnktdGl0bGUge1xuICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lOyB9XG5cbi5zZWFyY2gtcmVzdWx0LWl0ZW0ge1xuICBwYWRkaW5nLXRvcDogMC43NXJlbTtcbiAgcGFkZGluZy1ib3R0b206IDAuNzVyZW07IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuc2VhcmNoLXJlc3VsdC1pdGVtIHtcbiAgICAgIHBhZGRpbmctdG9wOiAxLjQ1ODMzcmVtO1xuICAgICAgcGFkZGluZy1ib3R0b206IDEuNDU4MzNyZW07IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5zZWFyY2gtcmVzdWx0LWl0ZW0ge1xuICAgICAgcGFkZGluZy10b3A6IDEuMjVyZW07XG4gICAgICBwYWRkaW5nLWJvdHRvbTogMS4yNXJlbTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICAuc2VhcmNoLXJlc3VsdC1pdGVtIHtcbiAgICAgIHBhZGRpbmctdG9wOiAxLjVyZW07XG4gICAgICBwYWRkaW5nLWJvdHRvbTogMS41cmVtOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTBlbSkge1xuICAgIC5zZWFyY2gtcmVzdWx0LWl0ZW0ge1xuICAgICAgcGFkZGluZy10b3A6IDEuNXJlbTtcbiAgICAgIHBhZGRpbmctYm90dG9tOiAxLjVyZW07IH0gfVxuICAuc2VhcmNoLXJlc3VsdC1pdGVtIC5pbWFnZS1saW5rIHtcbiAgICBib3JkZXItcmFkaXVzOiAyMHB4O1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICB3aWR0aDogMTAwJTsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5LjkzNzVlbSkge1xuICAgICAgLnNlYXJjaC1yZXN1bHQtaXRlbSAuaW1hZ2UtbGluayB7XG4gICAgICAgIG1pbi1oZWlnaHQ6IDE1cmVtOyB9IH1cbiAgICAuc2VhcmNoLXJlc3VsdC1pdGVtIC5pbWFnZS1saW5rOmhvdmVyIGltZywgLnNlYXJjaC1yZXN1bHQtaXRlbSAuaW1hZ2UtbGluazphY3RpdmUgaW1nLCAuc2VhcmNoLXJlc3VsdC1pdGVtIC5pbWFnZS1saW5rOmZvY3VzIGltZyB7XG4gICAgICB0cmFuc2Zvcm06IHNjYWxlKDEuMDUpOyB9XG4gICAgLnNlYXJjaC1yZXN1bHQtaXRlbSAuaW1hZ2UtbGluayBpbWcge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAuMjVzIGVhc2U7IH1cbiAgLnNlYXJjaC1yZXN1bHQtaXRlbSAuY29udGVudC1jZWxsIHtcbiAgICBwYWRkaW5nLXRvcDogMS41cmVtO1xuICAgIHBhZGRpbmctYm90dG9tOiAxLjVyZW07IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgLnNlYXJjaC1yZXN1bHQtaXRlbSAuY29udGVudC1jZWxsIHtcbiAgICAgICAgcGFkZGluZy10b3A6IDIuOTE2NjdyZW07XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAyLjkxNjY3cmVtOyB9IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgLnNlYXJjaC1yZXN1bHQtaXRlbSAuY29udGVudC1jZWxsIHtcbiAgICAgICAgcGFkZGluZy10b3A6IDIuNXJlbTtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDIuNXJlbTsgfSB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgICAgLnNlYXJjaC1yZXN1bHQtaXRlbSAuY29udGVudC1jZWxsIHtcbiAgICAgICAgcGFkZGluZy10b3A6IDNyZW07XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAzcmVtOyB9IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5MGVtKSB7XG4gICAgICAuc2VhcmNoLXJlc3VsdC1pdGVtIC5jb250ZW50LWNlbGwge1xuICAgICAgICBwYWRkaW5nLXRvcDogM3JlbTtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDNyZW07IH0gfVxuICAgIC5zZWFyY2gtcmVzdWx0LWl0ZW0gLmNvbnRlbnQtY2VsbCAuaXRlbS10aXRsZSB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIG1hcmdpbi1ib3R0b206IC41cmVtO1xuICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgIGNvbG9yOiAjMjEyMTIxOyB9XG4gICAgLnNlYXJjaC1yZXN1bHQtaXRlbSAuY29udGVudC1jZWxsIC5kZXNjcmlwdGlvbiB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwOyB9XG4gICAgLnNlYXJjaC1yZXN1bHQtaXRlbSAuY29udGVudC1jZWxsIC5jYXQtbmFtZSB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIG1hcmdpbi1ib3R0b206IC41cmVtO1xuICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgIGNvbG9yOiAjMDAxRTYyOyB9XG4gICAgLnNlYXJjaC1yZXN1bHQtaXRlbSAuY29udGVudC1jZWxsIC5pdGVtLXRpdGxlOmhvdmVyLCAuc2VhcmNoLXJlc3VsdC1pdGVtIC5jb250ZW50LWNlbGwgLml0ZW0tdGl0bGU6YWN0aXZlLCAuc2VhcmNoLXJlc3VsdC1pdGVtIC5jb250ZW50LWNlbGwgLml0ZW0tdGl0bGU6Zm9jdXMsIC5zZWFyY2gtcmVzdWx0LWl0ZW0gLmNvbnRlbnQtY2VsbCBhLmNhdC1uYW1lOmhvdmVyLCAuc2VhcmNoLXJlc3VsdC1pdGVtIC5jb250ZW50LWNlbGwgYS5jYXQtbmFtZTphY3RpdmUsIC5zZWFyY2gtcmVzdWx0LWl0ZW0gLmNvbnRlbnQtY2VsbCBhLmNhdC1uYW1lOmZvY3VzIHtcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIC5zZWFyY2gtcmVzdWx0LWl0ZW0gLmNvbnRlbnQtY2VsbCB7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDEuNXJlbTsgfSB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgIC5zZWFyY2gtcmVzdWx0LWl0ZW0gLmNvbnRlbnQtY2VsbCB7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDNyZW07IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuaW5zdGFncmFtLWZlZWQgI3NiX2luc3RhZ3JhbSB7XG4gICAgZGlzcGxheTogZmxleDsgfSB9XG5cbi5pbnN0YWdyYW0tZmVlZCAjc2JfaW5zdGFncmFtIC5zYl9pbnN0YWdyYW1faGVhZGVyIHtcbiAgbWFyZ2luOiAwICFpbXBvcnRhbnQ7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuaW5zdGFncmFtLWZlZWQgI3NiX2luc3RhZ3JhbSAuc2JfaW5zdGFncmFtX2hlYWRlciB7XG4gICAgICB3aWR0aDogMjAlOyB9IH1cbiAgLmluc3RhZ3JhbS1mZWVkICNzYl9pbnN0YWdyYW0gLnNiX2luc3RhZ3JhbV9oZWFkZXIgYS5zYmlfaGVhZGVyX2xpbmsge1xuICAgIHBhZGRpbmctdG9wOiA0LjVyZW07XG4gICAgcGFkZGluZy1ib3R0b206IDQuNXJlbTtcbiAgICBwYWRkaW5nLWxlZnQ6IDEuNXJlbTtcbiAgICBwYWRkaW5nLXJpZ2h0OiAxLjVyZW07XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWZsb3c6IGNvbHVtbi1yZXZlcnNlO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmN2Y3Zjc7IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgLmluc3RhZ3JhbS1mZWVkICNzYl9pbnN0YWdyYW0gLnNiX2luc3RhZ3JhbV9oZWFkZXIgYS5zYmlfaGVhZGVyX2xpbmsge1xuICAgICAgICBwYWRkaW5nLXRvcDogOC43NXJlbTtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDguNzVyZW07IH0gfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAuaW5zdGFncmFtLWZlZWQgI3NiX2luc3RhZ3JhbSAuc2JfaW5zdGFncmFtX2hlYWRlciBhLnNiaV9oZWFkZXJfbGluayB7XG4gICAgICAgIHBhZGRpbmctdG9wOiA3LjVyZW07XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiA3LjVyZW07IH0gfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICAgIC5pbnN0YWdyYW0tZmVlZCAjc2JfaW5zdGFncmFtIC5zYl9pbnN0YWdyYW1faGVhZGVyIGEuc2JpX2hlYWRlcl9saW5rIHtcbiAgICAgICAgcGFkZGluZy10b3A6IDlyZW07XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiA5cmVtOyB9IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5MGVtKSB7XG4gICAgICAuaW5zdGFncmFtLWZlZWQgI3NiX2luc3RhZ3JhbSAuc2JfaW5zdGFncmFtX2hlYWRlciBhLnNiaV9oZWFkZXJfbGluayB7XG4gICAgICAgIHBhZGRpbmctdG9wOiA5cmVtO1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogOXJlbTsgfSB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIC5pbnN0YWdyYW0tZmVlZCAjc2JfaW5zdGFncmFtIC5zYl9pbnN0YWdyYW1faGVhZGVyIGEuc2JpX2hlYWRlcl9saW5rIHtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiA0LjM3NXJlbTtcbiAgICAgICAgcGFkZGluZy1yaWdodDogNC4zNzVyZW07IH0gfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAuaW5zdGFncmFtLWZlZWQgI3NiX2luc3RhZ3JhbSAuc2JfaW5zdGFncmFtX2hlYWRlciBhLnNiaV9oZWFkZXJfbGluayB7XG4gICAgICAgIHBhZGRpbmctbGVmdDogNi4yNXJlbTtcbiAgICAgICAgcGFkZGluZy1yaWdodDogNi4yNXJlbTsgfSB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgICAgLmluc3RhZ3JhbS1mZWVkICNzYl9pbnN0YWdyYW0gLnNiX2luc3RhZ3JhbV9oZWFkZXIgYS5zYmlfaGVhZGVyX2xpbmsge1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDcuNXJlbTtcbiAgICAgICAgcGFkZGluZy1yaWdodDogNy41cmVtOyB9IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5MGVtKSB7XG4gICAgICAuaW5zdGFncmFtLWZlZWQgI3NiX2luc3RhZ3JhbSAuc2JfaW5zdGFncmFtX2hlYWRlciBhLnNiaV9oZWFkZXJfbGluayB7XG4gICAgICAgIHBhZGRpbmctbGVmdDogNy41cmVtO1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiA3LjVyZW07IH0gfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAuaW5zdGFncmFtLWZlZWQgI3NiX2luc3RhZ3JhbSAuc2JfaW5zdGFncmFtX2hlYWRlciBhLnNiaV9oZWFkZXJfbGluayB7XG4gICAgICAgIHBhZGRpbmc6IDFyZW07IH0gfVxuICAgIC5pbnN0YWdyYW0tZmVlZCAjc2JfaW5zdGFncmFtIC5zYl9pbnN0YWdyYW1faGVhZGVyIGEuc2JpX2hlYWRlcl9saW5rIC5zYmlfaGVhZGVyX3RleHQge1xuICAgICAgcGFkZGluZzogMDtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBmbGV4LWZsb3c6IGNvbHVtbi1yZXZlcnNlO1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyOyB9XG4gICAgICAuaW5zdGFncmFtLWZlZWQgI3NiX2luc3RhZ3JhbSAuc2JfaW5zdGFncmFtX2hlYWRlciBhLnNiaV9oZWFkZXJfbGluayAuc2JpX2hlYWRlcl90ZXh0ICoge1xuICAgICAgICBtYXJnaW46IDAgYXV0byAhaW1wb3J0YW50O1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgICAgIGNvbG9yOiAjMDAxRTYyOyB9XG4gICAgICAuaW5zdGFncmFtLWZlZWQgI3NiX2luc3RhZ3JhbSAuc2JfaW5zdGFncmFtX2hlYWRlciBhLnNiaV9oZWFkZXJfbGluayAuc2JpX2hlYWRlcl90ZXh0IGgzIHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDFyZW0gIWltcG9ydGFudDtcbiAgICAgICAgZm9udC1zaXplOiAxcmVtO1xuICAgICAgICBmb250LWZhbWlseTogXCJnb3JkaXRhcmVndWxhclwiLCAtYXBwbGUtc3lzdGVtLCBCbGlua01hY1N5c3RlbUZvbnQsIFwiU2Vnb2UgVUlcIiwgXCJSb2JvdG9cIiwgXCJPeHlnZW5cIiwgXCJVYnVudHVcIiwgXCJDYW50YXJlbGxcIiwgXCJGaXJhIFNhbnNcIiwgXCJEcm9pZCBTYW5zXCIsIFwiSGVsdmV0aWNhIE5ldWVcIiwgc2Fucy1zZXJpZjsgfVxuICAgICAgICAuaW5zdGFncmFtLWZlZWQgI3NiX2luc3RhZ3JhbSAuc2JfaW5zdGFncmFtX2hlYWRlciBhLnNiaV9oZWFkZXJfbGluayAuc2JpX2hlYWRlcl90ZXh0IGgzOjpiZWZvcmUge1xuICAgICAgICAgIGNvbnRlbnQ6ICdAJztcbiAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgbGVmdDogMDsgfVxuICAgICAgLmluc3RhZ3JhbS1mZWVkICNzYl9pbnN0YWdyYW0gLnNiX2luc3RhZ3JhbV9oZWFkZXIgYS5zYmlfaGVhZGVyX2xpbmsgLnNiaV9oZWFkZXJfdGV4dCAuc2JpX2JpbyB7XG4gICAgICAgIGZvbnQtc2l6ZTogMS4yNXJlbTtcbiAgICAgICAgZm9udC1mYW1pbHk6IFwiZ29yZGl0YWJvbGRcIiwgLWFwcGxlLXN5c3RlbSwgQmxpbmtNYWNTeXN0ZW1Gb250LCBcIlNlZ29lIFVJXCIsIFwiUm9ib3RvXCIsIFwiT3h5Z2VuXCIsIFwiVWJ1bnR1XCIsIFwiQ2FudGFyZWxsXCIsIFwiRmlyYSBTYW5zXCIsIFwiRHJvaWQgU2Fuc1wiLCBcIkhlbHZldGljYSBOZXVlXCIsIHNhbnMtc2VyaWY7IH1cbiAgICAuaW5zdGFncmFtLWZlZWQgI3NiX2luc3RhZ3JhbSAuc2JfaW5zdGFncmFtX2hlYWRlciBhLnNiaV9oZWFkZXJfbGluayAuc2JpX2hlYWRlcl9pbWcge1xuICAgICAgbWFyZ2luOiAwICFpbXBvcnRhbnQ7XG4gICAgICBiYWNrZ3JvdW5kOiBub25lO1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgIGhlaWdodDogMnJlbTtcbiAgICAgIHdpZHRoOiAycmVtOyB9XG4gICAgICAuaW5zdGFncmFtLWZlZWQgI3NiX2luc3RhZ3JhbSAuc2JfaW5zdGFncmFtX2hlYWRlciBhLnNiaV9oZWFkZXJfbGluayAuc2JpX2hlYWRlcl9pbWcgLnNiaV9oZWFkZXJfaW1nX2hvdmVyIHtcbiAgICAgICAgb3BhY2l0eTogMSAhaW1wb3J0YW50O1xuICAgICAgICBiYWNrZ3JvdW5kOiBub25lICFpbXBvcnRhbnQ7IH1cbiAgICAgIC5pbnN0YWdyYW0tZmVlZCAjc2JfaW5zdGFncmFtIC5zYl9pbnN0YWdyYW1faGVhZGVyIGEuc2JpX2hlYWRlcl9saW5rIC5zYmlfaGVhZGVyX2ltZyBzdmcge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgaGVpZ2h0OiAycmVtO1xuICAgICAgICB3aWR0aDogMnJlbTtcbiAgICAgICAgdG9wOiBhdXRvO1xuICAgICAgICBsZWZ0OiBhdXRvO1xuICAgICAgICBjb2xvcjogIzAwMUU2MjsgfVxuICAgICAgLmluc3RhZ3JhbS1mZWVkICNzYl9pbnN0YWdyYW0gLnNiX2luc3RhZ3JhbV9oZWFkZXIgYS5zYmlfaGVhZGVyX2xpbmsgLnNiaV9oZWFkZXJfaW1nIGltZyB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuaW5zdGFncmFtLWZlZWQgI3NiX2luc3RhZ3JhbSAjc2JpX2ltYWdlcyB7XG4gICAgd2lkdGg6IDgwJTsgfSB9XG5cbi5pbnN0YWdyYW0tZmVlZCAjc2JfaW5zdGFncmFtICNzYmlfbG9hZCB7XG4gIGRpc3BsYXk6IG5vbmU7IH1cblxuLmFwcC1jdGEge1xuICBwYWRkaW5nLXRvcDogMi4yNXJlbTtcbiAgcGFkZGluZy1ib3R0b206IDIuMjVyZW07IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuYXBwLWN0YSB7XG4gICAgICBwYWRkaW5nLXRvcDogNC4zNzVyZW07XG4gICAgICBwYWRkaW5nLWJvdHRvbTogNC4zNzVyZW07IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5hcHAtY3RhIHtcbiAgICAgIHBhZGRpbmctdG9wOiAzLjc1cmVtO1xuICAgICAgcGFkZGluZy1ib3R0b206IDMuNzVyZW07IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgLmFwcC1jdGEge1xuICAgICAgcGFkZGluZy10b3A6IDQuNXJlbTtcbiAgICAgIHBhZGRpbmctYm90dG9tOiA0LjVyZW07IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5MGVtKSB7XG4gICAgLmFwcC1jdGEge1xuICAgICAgcGFkZGluZy10b3A6IDQuNXJlbTtcbiAgICAgIHBhZGRpbmctYm90dG9tOiA0LjVyZW07IH0gfVxuICAuYXBwLWN0YSAuYXBwLWN0YS1sb2dvIHtcbiAgICBtYXgtd2lkdGg6IDMwMHB4O1xuICAgIG1hcmdpbjogMCBhdXRvIDEuNXJlbTtcbiAgICBkaXNwbGF5OiBibG9jazsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAuYXBwLWN0YSAuYXBwLWN0YS1sb2dvIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMnJlbTsgfSB9XG4gIC5hcHAtY3RhIC5hcHAtY3RhLWNvbnRlbnQge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBmb250LXNpemU6IDEuMzc1cmVtO1xuICAgIG1hcmdpbi1ib3R0b206IDEuNXJlbTsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAuYXBwLWN0YSAuYXBwLWN0YS1jb250ZW50IHtcbiAgICAgICAgZm9udC1zaXplOiAxLjYyNXJlbTtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMnJlbTsgfSB9XG4gIC5hcHAtY3RhIC5hcHAtY3RhLWFjdGlvbi1saW5rIHtcbiAgICBtYXJnaW46IDAgYXV0bztcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogZml0LWNvbnRlbnQ7IH1cblxuLnNsYW50ZWQtYmctc2VjdGlvbiB7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAuc2xhbnRlZC1iZy1zZWN0aW9uLmNvbnRlbnQtbGVmdCAuaW1hZ2UtY2VsbDo6YWZ0ZXIge1xuICAgIGxlZnQ6IDA7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuc2xhbnRlZC1iZy1zZWN0aW9uLmNvbnRlbnQtbGVmdCAuYmctaW1hZ2Uge1xuICAgICAgbGVmdDogMDtcbiAgICAgIHJpZ2h0OiBhdXRvOyB9IH1cbiAgLnNsYW50ZWQtYmctc2VjdGlvbi5jb250ZW50LXJpZ2h0IC5pbWFnZS1jZWxsOjphZnRlciB7XG4gICAgcmlnaHQ6IDA7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuc2xhbnRlZC1iZy1zZWN0aW9uLmNvbnRlbnQtcmlnaHQgLmJnLWltYWdlIHtcbiAgICAgIHJpZ2h0OiAwO1xuICAgICAgbGVmdDogYXV0bzsgfSB9XG4gIC5zbGFudGVkLWJnLXNlY3Rpb24gLmltYWdlLWNlbGwge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB6LWluZGV4OiAxO1xuICAgIHBhZGRpbmctdG9wOiAzLjZyZW07XG4gICAgcGFkZGluZy1ib3R0b206IDMuNnJlbTsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAuc2xhbnRlZC1iZy1zZWN0aW9uIC5pbWFnZS1jZWxsIHtcbiAgICAgICAgcGFkZGluZy10b3A6IDdyZW07XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiA3cmVtOyB9IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgLnNsYW50ZWQtYmctc2VjdGlvbiAuaW1hZ2UtY2VsbCB7XG4gICAgICAgIHBhZGRpbmctdG9wOiA2cmVtO1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogNnJlbTsgfSB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgICAgLnNsYW50ZWQtYmctc2VjdGlvbiAuaW1hZ2UtY2VsbCB7XG4gICAgICAgIHBhZGRpbmctdG9wOiA3LjJyZW07XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiA3LjJyZW07IH0gfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDkwZW0pIHtcbiAgICAgIC5zbGFudGVkLWJnLXNlY3Rpb24gLmltYWdlLWNlbGwge1xuICAgICAgICBwYWRkaW5nLXRvcDogNy4ycmVtO1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogNy4ycmVtOyB9IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgLnNsYW50ZWQtYmctc2VjdGlvbiAuaW1hZ2UtY2VsbCB7XG4gICAgICAgIHBhZGRpbmctdG9wOiAzLjIxNDI5cmVtO1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogMy4yMTQyOXJlbTsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5zbGFudGVkLWJnLXNlY3Rpb24gLmltYWdlLWNlbGwge1xuICAgICAgcGFkZGluZy10b3A6IDYuMjVyZW07XG4gICAgICBwYWRkaW5nLWJvdHRvbTogNi4yNXJlbTsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5zbGFudGVkLWJnLXNlY3Rpb24gLmltYWdlLWNlbGwge1xuICAgICAgcGFkZGluZy10b3A6IDUuMzU3MTRyZW07XG4gICAgICBwYWRkaW5nLWJvdHRvbTogNS4zNTcxNHJlbTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgLnNsYW50ZWQtYmctc2VjdGlvbiAuaW1hZ2UtY2VsbCB7XG4gICAgICBwYWRkaW5nLXRvcDogNi40Mjg1N3JlbTtcbiAgICAgIHBhZGRpbmctYm90dG9tOiA2LjQyODU3cmVtOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkgYW5kIChtaW4td2lkdGg6IDkwZW0pIHtcbiAgICAuc2xhbnRlZC1iZy1zZWN0aW9uIC5pbWFnZS1jZWxsIHtcbiAgICAgIHBhZGRpbmctdG9wOiA2LjQyODU3cmVtO1xuICAgICAgcGFkZGluZy1ib3R0b206IDYuNDI4NTdyZW07IH0gfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAuc2xhbnRlZC1iZy1zZWN0aW9uIC5pbWFnZS1jZWxsIHtcbiAgICAgICAgcGFkZGluZy10b3A6IDNyZW07XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAzcmVtOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLnNsYW50ZWQtYmctc2VjdGlvbiAuaW1hZ2UtY2VsbCB7XG4gICAgICBwYWRkaW5nLXRvcDogNS44MzMzM3JlbTtcbiAgICAgIHBhZGRpbmctYm90dG9tOiA1LjgzMzMzcmVtOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLnNsYW50ZWQtYmctc2VjdGlvbiAuaW1hZ2UtY2VsbCB7XG4gICAgICBwYWRkaW5nLXRvcDogNXJlbTtcbiAgICAgIHBhZGRpbmctYm90dG9tOiA1cmVtOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkgYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICAuc2xhbnRlZC1iZy1zZWN0aW9uIC5pbWFnZS1jZWxsIHtcbiAgICAgIHBhZGRpbmctdG9wOiA2cmVtO1xuICAgICAgcGFkZGluZy1ib3R0b206IDZyZW07IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSBhbmQgKG1pbi13aWR0aDogOTBlbSkge1xuICAgIC5zbGFudGVkLWJnLXNlY3Rpb24gLmltYWdlLWNlbGwge1xuICAgICAgcGFkZGluZy10b3A6IDZyZW07XG4gICAgICBwYWRkaW5nLWJvdHRvbTogNnJlbTsgfSB9XG4gICAgLnNsYW50ZWQtYmctc2VjdGlvbiAuaW1hZ2UtY2VsbDo6YWZ0ZXIge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBib3R0b206IDA7XG4gICAgICB6LWluZGV4OiAxOyB9XG4gICAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgICAuc2xhbnRlZC1iZy1zZWN0aW9uIC5pbWFnZS1jZWxsOjphZnRlciB7XG4gICAgICAgICAgY29udGVudDogJyc7IH0gfVxuICAuc2xhbnRlZC1iZy1zZWN0aW9uIC5iZy1pbWFnZSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgei1pbmRleDogMDtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgIHdpZHRoOiBjYWxjKDEwMCUgKyAoMS41cmVtICoyKSk7XG4gICAgbGVmdDogMDtcbiAgICBtYXJnaW4tbGVmdDogLTEuNXJlbTsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAuc2xhbnRlZC1iZy1zZWN0aW9uIC5iZy1pbWFnZSB7XG4gICAgICAgIHdpZHRoOiA2MHZ3O1xuICAgICAgICBtYXJnaW4tbGVmdDogdW5zZXQ7IH0gfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIGFuZCAobWF4LXdpZHRoOiA3NC45Mzc1ZW0pIHtcbiAgICAgIC5zbGFudGVkLWJnLXNlY3Rpb24gLmJnLWltYWdlIHtcbiAgICAgICAgd2lkdGg6IDcwdnc7IH0gfVxuICAuc2xhbnRlZC1iZy1zZWN0aW9uIC5vdmVybGF5LWltZyB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHotaW5kZXg6IDI7XG4gICAgd2lkdGg6IGF1dG87XG4gICAgbWF4LXdpZHRoOiBub25lO1xuICAgIGRpc3BsYXk6IGJsb2NrOyB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTM3NWVtKSB7XG4gICAgICAuc2xhbnRlZC1iZy1zZWN0aW9uIC5vdmVybGF5LWltZyB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvOyB9IH1cbiAgICAuc2xhbnRlZC1iZy1zZWN0aW9uIC5vdmVybGF5LWltZzpub3QoLmdpdmUtc2hhZG93KSB7XG4gICAgICBtYXgtaGVpZ2h0OiAyNnJlbTtcbiAgICAgIGhlaWdodDogY2FsYygxMDAlICsgKDgwcHgqMikpO1xuICAgICAgbWFyZ2luLXRvcDogLTQwcHg7XG4gICAgICBtYXJnaW4tYm90dG9tOiAtNDBweDsgfVxuICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTM3NWVtKSB7XG4gICAgICAgIC5zbGFudGVkLWJnLXNlY3Rpb24gLm92ZXJsYXktaW1nOm5vdCguZ2l2ZS1zaGFkb3cpIHtcbiAgICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgICAgbWF4LWhlaWdodDogbm9uZTtcbiAgICAgICAgICB3aWR0aDogY2FsYyg1NSUgKyA4MHB4KTtcbiAgICAgICAgICBtYXJnaW4tcmlnaHQ6IC00MHB4OyB9IH1cbiAgICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAgIC5zbGFudGVkLWJnLXNlY3Rpb24gLm92ZXJsYXktaW1nOm5vdCguZ2l2ZS1zaGFkb3cpIHtcbiAgICAgICAgICBtYXgtaGVpZ2h0OiAzMHJlbTsgfSB9XG4gICAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgICAuc2xhbnRlZC1iZy1zZWN0aW9uIC5vdmVybGF5LWltZzpub3QoLmdpdmUtc2hhZG93KSB7XG4gICAgICAgICAgbWF4LWhlaWdodDogNDMuNzVyZW07IH0gfVxuICAgICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgICAgLnNsYW50ZWQtYmctc2VjdGlvbiAub3ZlcmxheS1pbWc6bm90KC5naXZlLXNoYWRvdykge1xuICAgICAgICAgIG1hcmdpbi10b3A6IC04MHB4O1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206IC04MHB4OyB9IH1cbiAgICAuc2xhbnRlZC1iZy1zZWN0aW9uIC5vdmVybGF5LWltZy5naXZlLXNoYWRvdyB7XG4gICAgICBib3JkZXItcmFkaXVzOiAxMHB4O1xuICAgICAgYm94LXNoYWRvdzogMHJlbSA0cHggNDBweCByZ2JhKDAsIDAsIDAsIDAuMSk7XG4gICAgICBoZWlnaHQ6IDE2cmVtOyB9XG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45Mzc1ZW0pIHtcbiAgICAgICAgLnNsYW50ZWQtYmctc2VjdGlvbiAub3ZlcmxheS1pbWcuZ2l2ZS1zaGFkb3cge1xuICAgICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgICBtYXgtaGVpZ2h0OiBub25lO1xuICAgICAgICAgIHdpZHRoOiA1MCU7IH0gfVxuICAgICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgICAgLnNsYW50ZWQtYmctc2VjdGlvbiAub3ZlcmxheS1pbWcuZ2l2ZS1zaGFkb3cge1xuICAgICAgICAgIGhlaWdodDogMjMuNzVyZW07IH0gfVxuICAgICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgICAgLnNsYW50ZWQtYmctc2VjdGlvbiAub3ZlcmxheS1pbWcuZ2l2ZS1zaGFkb3cge1xuICAgICAgICAgIGhlaWdodDogMzMuNzVyZW07IH0gfVxuICAgICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgICAgLnNsYW50ZWQtYmctc2VjdGlvbiAub3ZlcmxheS1pbWcuZ2l2ZS1zaGFkb3cge1xuICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDMwcHg7IH0gfVxuICAgICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgICAgLnNsYW50ZWQtYmctc2VjdGlvbiAub3ZlcmxheS1pbWcuZ2l2ZS1zaGFkb3cge1xuICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDQwcHg7IH0gfVxuICAuc2xhbnRlZC1iZy1zZWN0aW9uIC5jb250ZW50LWNlbGwge1xuICAgIHBhZGRpbmctdG9wOiA0LjVyZW07XG4gICAgcGFkZGluZy1ib3R0b206IDQuNXJlbTtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHotaW5kZXg6IDM7IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgLnNsYW50ZWQtYmctc2VjdGlvbiAuY29udGVudC1jZWxsIHtcbiAgICAgICAgcGFkZGluZy10b3A6IDguNzVyZW07XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiA4Ljc1cmVtOyB9IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgLnNsYW50ZWQtYmctc2VjdGlvbiAuY29udGVudC1jZWxsIHtcbiAgICAgICAgcGFkZGluZy10b3A6IDcuNXJlbTtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDcuNXJlbTsgfSB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgICAgLnNsYW50ZWQtYmctc2VjdGlvbiAuY29udGVudC1jZWxsIHtcbiAgICAgICAgcGFkZGluZy10b3A6IDlyZW07XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiA5cmVtOyB9IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5MGVtKSB7XG4gICAgICAuc2xhbnRlZC1iZy1zZWN0aW9uIC5jb250ZW50LWNlbGwge1xuICAgICAgICBwYWRkaW5nLXRvcDogOXJlbTtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDlyZW07IH0gfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIGFuZCAobWF4LXdpZHRoOiA2My45Mzc1ZW0pIHtcbiAgICAgIC5zbGFudGVkLWJnLXNlY3Rpb24gLmNvbnRlbnQtY2VsbCB7XG4gICAgICAgIHBhZGRpbmctdG9wOiAxLjEyNXJlbTtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDEuMTI1cmVtOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkgYW5kIChtYXgtd2lkdGg6IDYzLjkzNzVlbSkgYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuc2xhbnRlZC1iZy1zZWN0aW9uIC5jb250ZW50LWNlbGwge1xuICAgICAgcGFkZGluZy10b3A6IDIuMTg3NXJlbTtcbiAgICAgIHBhZGRpbmctYm90dG9tOiAyLjE4NzVyZW07IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSBhbmQgKG1heC13aWR0aDogNjMuOTM3NWVtKSBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5zbGFudGVkLWJnLXNlY3Rpb24gLmNvbnRlbnQtY2VsbCB7XG4gICAgICBwYWRkaW5nLXRvcDogMS44NzVyZW07XG4gICAgICBwYWRkaW5nLWJvdHRvbTogMS44NzVyZW07IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSBhbmQgKG1heC13aWR0aDogNjMuOTM3NWVtKSBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgIC5zbGFudGVkLWJnLXNlY3Rpb24gLmNvbnRlbnQtY2VsbCB7XG4gICAgICBwYWRkaW5nLXRvcDogMi4yNXJlbTtcbiAgICAgIHBhZGRpbmctYm90dG9tOiAyLjI1cmVtOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkgYW5kIChtYXgtd2lkdGg6IDYzLjkzNzVlbSkgYW5kIChtaW4td2lkdGg6IDkwZW0pIHtcbiAgICAuc2xhbnRlZC1iZy1zZWN0aW9uIC5jb250ZW50LWNlbGwge1xuICAgICAgcGFkZGluZy10b3A6IDIuMjVyZW07XG4gICAgICBwYWRkaW5nLWJvdHRvbTogMi4yNXJlbTsgfSB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgIC5zbGFudGVkLWJnLXNlY3Rpb24gLmNvbnRlbnQtY2VsbCB7XG4gICAgICAgIHBhZGRpbmctdG9wOiA0LjVyZW07XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiA0LjVyZW07IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkgYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuc2xhbnRlZC1iZy1zZWN0aW9uIC5jb250ZW50LWNlbGwge1xuICAgICAgcGFkZGluZy10b3A6IDguNzVyZW07XG4gICAgICBwYWRkaW5nLWJvdHRvbTogOC43NXJlbTsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5zbGFudGVkLWJnLXNlY3Rpb24gLmNvbnRlbnQtY2VsbCB7XG4gICAgICBwYWRkaW5nLXRvcDogNy41cmVtO1xuICAgICAgcGFkZGluZy1ib3R0b206IDcuNXJlbTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgLnNsYW50ZWQtYmctc2VjdGlvbiAuY29udGVudC1jZWxsIHtcbiAgICAgIHBhZGRpbmctdG9wOiA5cmVtO1xuICAgICAgcGFkZGluZy1ib3R0b206IDlyZW07IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSBhbmQgKG1pbi13aWR0aDogOTBlbSkge1xuICAgIC5zbGFudGVkLWJnLXNlY3Rpb24gLmNvbnRlbnQtY2VsbCB7XG4gICAgICBwYWRkaW5nLXRvcDogOXJlbTtcbiAgICAgIHBhZGRpbmctYm90dG9tOiA5cmVtOyB9IH1cbiAgICAuc2xhbnRlZC1iZy1zZWN0aW9uIC5jb250ZW50LWNlbGwgLnNlY3Rpb24tdGl0bGUsIC5zbGFudGVkLWJnLXNlY3Rpb24gLmNvbnRlbnQtY2VsbCAuYnVsbGV0LXBvaW50cyB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAxLjVyZW07IH1cbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICAgICAgLnNsYW50ZWQtYmctc2VjdGlvbiAuY29udGVudC1jZWxsIC5zZWN0aW9uLXRpdGxlLCAuc2xhbnRlZC1iZy1zZWN0aW9uIC5jb250ZW50LWNlbGwgLmJ1bGxldC1wb2ludHMge1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206IDIuNXJlbTsgfSB9XG5cbnNlY3Rpb24uc2xhbnRlZC1iZy1zZWN0aW9uOm50aC1vZi10eXBlKG9kZCkge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjdmN2Y3OyB9XG4gIHNlY3Rpb24uc2xhbnRlZC1iZy1zZWN0aW9uOm50aC1vZi10eXBlKG9kZCkgLmltYWdlLWNlbGw6OmFmdGVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjdmN2Y3O1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNjAlKSBza2V3WCgyMGRlZyk7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICBzZWN0aW9uLnNsYW50ZWQtYmctc2VjdGlvbjpudGgtb2YtdHlwZShvZGQpIC5vdmVybGF5LWltZyB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IGF1dG8gIWltcG9ydGFudDsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgc2VjdGlvbi5zbGFudGVkLWJnLXNlY3Rpb246bnRoLW9mLXR5cGUob2RkKSAub3ZlcmxheS1pbWcuZ2l2ZS1zaGFkb3cge1xuICAgICAgbWFyZ2luLWxlZnQ6IDQwcHg7IH0gfVxuXG5zZWN0aW9uLnNsYW50ZWQtYmctc2VjdGlvbjpudGgtb2YtdHlwZShldmVuKSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmZmZmY7IH1cbiAgc2VjdGlvbi5zbGFudGVkLWJnLXNlY3Rpb246bnRoLW9mLXR5cGUoZXZlbikgLmltYWdlLWNlbGw6OmFmdGVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmZmZmO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCg2MCUpIHNrZXdYKC0yMGRlZyk7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICBzZWN0aW9uLnNsYW50ZWQtYmctc2VjdGlvbjpudGgtb2YtdHlwZShldmVuKSAub3ZlcmxheS1pbWcge1xuICAgICAgbWFyZ2luLWxlZnQ6IGF1dG8gIWltcG9ydGFudDsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgc2VjdGlvbi5zbGFudGVkLWJnLXNlY3Rpb246bnRoLW9mLXR5cGUoZXZlbikgLm92ZXJsYXktaW1nLmdpdmUtc2hhZG93IHtcbiAgICAgIG1hcmdpbi1yaWdodDogNDBweDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5LjkzNzVlbSkge1xuICAuc2xhbnRlZC1iZy1zZWN0aW9uIC5iZy1pbWFnZSB7XG4gICAgd2lkdGg6IGNhbGMoMTUwJSArICgxLjVyZW0gKjIpKTtcbiAgICBtYXJnaW4tbGVmdDogLTUwJTtcbiAgICB0cmFuc2Zvcm06IG1hdHJpeCgtMSwgMCwgMCwgMSwgMCwgMCk7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5MC4wNjI1ZW0pIHtcbiAgLnNsYW50ZWQtYmctc2VjdGlvbiAuYmctaW1hZ2Uge1xuICAgIHdpZHRoOiA1MHZ3OyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTM3NWVtKSB7XG4gIC5zbGFudGVkLWJnLXNlY3Rpb24tMyAub3ZlcmxheS1pbWcge1xuICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgICBtYXJnaW4tbGVmdDogMDsgfVxuICAgIC5zbGFudGVkLWJnLXNlY3Rpb24tMyAub3ZlcmxheS1pbWc6bm90KC5naXZlLXNoYWRvdykge1xuICAgICAgbWFyZ2luLWxlZnQ6IC00MHB4OyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTM3NWVtKSB7XG4gIC5zbGFudGVkLWJnLXNlY3Rpb24tMyAuYmctaW1hZ2Uge1xuICAgIHdpZHRoOiAxNTAlOyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLnNsYW50ZWQtYmctc2VjdGlvbi0zIC5iZy1pbWFnZSB7XG4gICAgd2lkdGg6IDcwdnc7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSBhbmQgKG1heC13aWR0aDogNzQuOTM3NWVtKSB7XG4gIC5zbGFudGVkLWJnLXNlY3Rpb24tMyAuYmctaW1hZ2Uge1xuICAgIHdpZHRoOiA4MHZ3OyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTAuMDYyNWVtKSB7XG4gIC5zbGFudGVkLWJnLXNlY3Rpb24tMyAuYmctaW1hZ2Uge1xuICAgIHdpZHRoOiA1MHZ3OyB9IH1cblxuLnZpZGVvLXdpdGgtdGV4dC1zZWN0aW9uIHtcbiAgcGFkZGluZy10b3A6IDNyZW07XG4gIHBhZGRpbmctYm90dG9tOiAzcmVtOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLnZpZGVvLXdpdGgtdGV4dC1zZWN0aW9uIHtcbiAgICAgIHBhZGRpbmctdG9wOiA1LjgzMzMzcmVtO1xuICAgICAgcGFkZGluZy1ib3R0b206IDUuODMzMzNyZW07IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC52aWRlby13aXRoLXRleHQtc2VjdGlvbiB7XG4gICAgICBwYWRkaW5nLXRvcDogNXJlbTtcbiAgICAgIHBhZGRpbmctYm90dG9tOiA1cmVtOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgIC52aWRlby13aXRoLXRleHQtc2VjdGlvbiB7XG4gICAgICBwYWRkaW5nLXRvcDogNnJlbTtcbiAgICAgIHBhZGRpbmctYm90dG9tOiA2cmVtOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTBlbSkge1xuICAgIC52aWRlby13aXRoLXRleHQtc2VjdGlvbiB7XG4gICAgICBwYWRkaW5nLXRvcDogNnJlbTtcbiAgICAgIHBhZGRpbmctYm90dG9tOiA2cmVtOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAudmlkZW8td2l0aC10ZXh0LXNlY3Rpb24ge1xuICAgICAgcGFkZGluZy10b3A6IDZyZW07XG4gICAgICBwYWRkaW5nLWJvdHRvbTogNnJlbTsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC52aWRlby13aXRoLXRleHQtc2VjdGlvbiB7XG4gICAgICBwYWRkaW5nLXRvcDogMTEuNjY2NjdyZW07XG4gICAgICBwYWRkaW5nLWJvdHRvbTogMTEuNjY2NjdyZW07IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkgYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAudmlkZW8td2l0aC10ZXh0LXNlY3Rpb24ge1xuICAgICAgcGFkZGluZy10b3A6IDEwcmVtO1xuICAgICAgcGFkZGluZy1ib3R0b206IDEwcmVtOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkgYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICAudmlkZW8td2l0aC10ZXh0LXNlY3Rpb24ge1xuICAgICAgcGFkZGluZy10b3A6IDEycmVtO1xuICAgICAgcGFkZGluZy1ib3R0b206IDEycmVtOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkgYW5kIChtaW4td2lkdGg6IDkwZW0pIHtcbiAgICAudmlkZW8td2l0aC10ZXh0LXNlY3Rpb24ge1xuICAgICAgcGFkZGluZy10b3A6IDEycmVtO1xuICAgICAgcGFkZGluZy1ib3R0b206IDEycmVtOyB9IH1cbiAgLnZpZGVvLXdpdGgtdGV4dC1zZWN0aW9uIC5jb250ZW50LWNlbGwge1xuICAgIG1hcmdpbi10b3A6IDEuOHJlbTsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAudmlkZW8td2l0aC10ZXh0LXNlY3Rpb24gLmNvbnRlbnQtY2VsbCB7XG4gICAgICAgIG1hcmdpbi10b3A6IDMuNXJlbTsgfSB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgIC52aWRlby13aXRoLXRleHQtc2VjdGlvbiAuY29udGVudC1jZWxsIHtcbiAgICAgICAgbWFyZ2luLXRvcDogM3JlbTsgfSB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgICAgLnZpZGVvLXdpdGgtdGV4dC1zZWN0aW9uIC5jb250ZW50LWNlbGwge1xuICAgICAgICBtYXJnaW4tdG9wOiAzLjZyZW07IH0gfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDkwZW0pIHtcbiAgICAgIC52aWRlby13aXRoLXRleHQtc2VjdGlvbiAuY29udGVudC1jZWxsIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMy42cmVtOyB9IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgLnZpZGVvLXdpdGgtdGV4dC1zZWN0aW9uIC5jb250ZW50LWNlbGwge1xuICAgICAgICBtYXJnaW4tdG9wOiAwOyB9IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgICAudmlkZW8td2l0aC10ZXh0LXNlY3Rpb24gLmNvbnRlbnQtY2VsbCB7XG4gICAgICAgIG1hcmdpbi10b3A6IDIuMjVyZW07IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC52aWRlby13aXRoLXRleHQtc2VjdGlvbiAuY29udGVudC1jZWxsIHtcbiAgICAgIG1hcmdpbi10b3A6IDQuMzc1cmVtOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkgYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAudmlkZW8td2l0aC10ZXh0LXNlY3Rpb24gLmNvbnRlbnQtY2VsbCB7XG4gICAgICBtYXJnaW4tdG9wOiAzLjc1cmVtOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkgYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICAudmlkZW8td2l0aC10ZXh0LXNlY3Rpb24gLmNvbnRlbnQtY2VsbCB7XG4gICAgICBtYXJnaW4tdG9wOiA0LjVyZW07IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSBhbmQgKG1pbi13aWR0aDogOTBlbSkge1xuICAgIC52aWRlby13aXRoLXRleHQtc2VjdGlvbiAuY29udGVudC1jZWxsIHtcbiAgICAgIG1hcmdpbi10b3A6IDQuNXJlbTsgfSB9XG4gIC52aWRlby13aXRoLXRleHQtc2VjdGlvbiAuY29udGVudC13cmFwcGVyIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkgYW5kIChtYXgtd2lkdGg6IDYzLjkzNzVlbSkge1xuICAgICAgLnZpZGVvLXdpdGgtdGV4dC1zZWN0aW9uIC5jb250ZW50LXdyYXBwZXIge1xuICAgICAgICB3aWR0aDogY2FsYyg2Ni42NjY2NyUgLSAxLjI1cmVtKTtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAwLjYyNXJlbTtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDAuNjI1cmVtO1xuICAgICAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiBhdXRvOyB9IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgLnZpZGVvLXdpdGgtdGV4dC1zZWN0aW9uIC5jb250ZW50LXdyYXBwZXIge1xuICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0OyB9IH1cbiAgLnZpZGVvLXdpdGgtdGV4dC1zZWN0aW9uIC5zZWN0aW9uLXRpdGxlLCAudmlkZW8td2l0aC10ZXh0LXNlY3Rpb24gLnNlY3Rpb24tY29udGVudCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMS41cmVtOyB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgICAgLnZpZGVvLXdpdGgtdGV4dC1zZWN0aW9uIC5zZWN0aW9uLXRpdGxlLCAudmlkZW8td2l0aC10ZXh0LXNlY3Rpb24gLnNlY3Rpb24tY29udGVudCB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDIuNXJlbTsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLnZpZGVvLXdpdGgtdGV4dC1zZWN0aW9uIC5zZWN0aW9uLXRpdGxlIHtcbiAgICAgIGZvbnQtc2l6ZTogMS41cmVtOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLnZpZGVvLXdpdGgtdGV4dC1zZWN0aW9uIC5zZWN0aW9uLXRpdGxlIHtcbiAgICAgIGZvbnQtc2l6ZTogMS41cmVtOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLnZpZGVvLXdpdGgtdGV4dC1zZWN0aW9uIC5zZWN0aW9uLXRpdGxlIHtcbiAgICAgIGZvbnQtc2l6ZTogMS44NzVyZW07IH0gfVxuICAudmlkZW8td2l0aC10ZXh0LXNlY3Rpb24gLnZpZGVvLWZvb3RlciB7XG4gICAgbWFyZ2luLXRvcDogMXJlbTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgICAudmlkZW8td2l0aC10ZXh0LXNlY3Rpb24gLnZpZGVvLWZvb3RlciBhIHtcbiAgICAgIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gICAgICBjb2xvcjogIzAwMDAwMDtcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lOyB9XG4gICAgICAudmlkZW8td2l0aC10ZXh0LXNlY3Rpb24gLnZpZGVvLWZvb3RlciBhOmhvdmVyLCAudmlkZW8td2l0aC10ZXh0LXNlY3Rpb24gLnZpZGVvLWZvb3RlciBhOmZvY3VzIHtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgIC52aWRlby13aXRoLXRleHQtc2VjdGlvbiAudmlkZW8tZm9vdGVyIHtcbiAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgICAgbWFyZ2luLXRvcDogMC41cmVtOyB9IH1cblxuLnR3by1jb2wtY3RhLXNlY3Rpb24ge1xuICBwYWRkaW5nLXRvcDogM3JlbTtcbiAgcGFkZGluZy1ib3R0b206IDNyZW07XG4gIGJhY2tncm91bmQtY29sb3I6ICNmN2Y3Zjc7XG4gIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC50d28tY29sLWN0YS1zZWN0aW9uIHtcbiAgICAgIHBhZGRpbmctdG9wOiA1LjgzMzMzcmVtO1xuICAgICAgcGFkZGluZy1ib3R0b206IDUuODMzMzNyZW07IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC50d28tY29sLWN0YS1zZWN0aW9uIHtcbiAgICAgIHBhZGRpbmctdG9wOiA1cmVtO1xuICAgICAgcGFkZGluZy1ib3R0b206IDVyZW07IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgLnR3by1jb2wtY3RhLXNlY3Rpb24ge1xuICAgICAgcGFkZGluZy10b3A6IDZyZW07XG4gICAgICBwYWRkaW5nLWJvdHRvbTogNnJlbTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDkwZW0pIHtcbiAgICAudHdvLWNvbC1jdGEtc2VjdGlvbiB7XG4gICAgICBwYWRkaW5nLXRvcDogNnJlbTtcbiAgICAgIHBhZGRpbmctYm90dG9tOiA2cmVtOyB9IH1cbiAgLnR3by1jb2wtY3RhLXNlY3Rpb24gLm91dGVyLWdyaWQgLnNlY3Rpb24tdGl0bGUge1xuICAgIG1hcmdpbi1ib3R0b206IDFyZW07IH1cbiAgLnR3by1jb2wtY3RhLXNlY3Rpb24gLmlubmVyLWdyaWQge1xuICAgIG1hcmdpbi10b3A6IDIuMjVyZW07IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgLnR3by1jb2wtY3RhLXNlY3Rpb24gLmlubmVyLWdyaWQge1xuICAgICAgICBtYXJnaW4tdG9wOiA0LjM3NXJlbTsgfSB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgIC50d28tY29sLWN0YS1zZWN0aW9uIC5pbm5lci1ncmlkIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMy43NXJlbTsgfSB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgICAgLnR3by1jb2wtY3RhLXNlY3Rpb24gLmlubmVyLWdyaWQge1xuICAgICAgICBtYXJnaW4tdG9wOiA0LjVyZW07IH0gfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDkwZW0pIHtcbiAgICAgIC50d28tY29sLWN0YS1zZWN0aW9uIC5pbm5lci1ncmlkIHtcbiAgICAgICAgbWFyZ2luLXRvcDogNC41cmVtOyB9IH1cbiAgICAudHdvLWNvbC1jdGEtc2VjdGlvbiAuaW5uZXItZ3JpZCAuY2VsbDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICBtYXJnaW4tdG9wOiBjYWxjKDQuNXJlbSAvIDIpOyB9XG4gICAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgICAudHdvLWNvbC1jdGEtc2VjdGlvbiAuaW5uZXItZ3JpZCAuY2VsbDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICAgICAgbWFyZ2luLXRvcDogY2FsYyg4Ljc1cmVtIC8gMik7IH0gfVxuICAgICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgICAgLnR3by1jb2wtY3RhLXNlY3Rpb24gLmlubmVyLWdyaWQgLmNlbGw6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgICAgIG1hcmdpbi10b3A6IDA7IH0gfVxuICAudHdvLWNvbC1jdGEtc2VjdGlvbiAudGlsZS1uYWtlZCB7XG4gICAgdGV4dC1kZWNvcmF0aW9uLWNvbG9yOiAjMDAwMDAwOyB9XG4gICAgLnR3by1jb2wtY3RhLXNlY3Rpb24gLnRpbGUtbmFrZWQ6aG92ZXIsIC50d28tY29sLWN0YS1zZWN0aW9uIC50aWxlLW5ha2VkOmFjdGl2ZSwgLnR3by1jb2wtY3RhLXNlY3Rpb24gLnRpbGUtbmFrZWQ6Zm9jdXMge1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gICAgICB0ZXh0LWRlY29yYXRpb24tY29sb3I6ICMwMDAwMDA7IH1cbiAgICAudHdvLWNvbC1jdGEtc2VjdGlvbiAudGlsZS1uYWtlZCAuaW1hZ2Utd3JhcCB7XG4gICAgICBoZWlnaHQ6IDExLjEyNXJlbTtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjsgfVxuICAgICAgLnR3by1jb2wtY3RhLXNlY3Rpb24gLnRpbGUtbmFrZWQgLmltYWdlLXdyYXAgaW1nIHtcbiAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICAgIG1pbi13aWR0aDogMDtcbiAgICAgICAgbWF4LXdpZHRoOiBub25lO1xuICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgIG1heC1oZWlnaHQ6IDEwMCU7IH1cbiAgICAudHdvLWNvbC1jdGEtc2VjdGlvbiAudGlsZS1uYWtlZCAuaXRlbS10aXRsZSwgLnR3by1jb2wtY3RhLXNlY3Rpb24gLnRpbGUtbmFrZWQgLml0ZW0tZGVzY3JpcHRpb24ge1xuICAgICAgY29sb3I6ICMyMTIxMjE7IH1cblxuLmZyb250LWhlcm8ge1xuICBiYWNrZ3JvdW5kOiB1cmwoXCIuLi9pbWFnZXMvZGVtby9oZXJvLWJnLWZvdW5kYXRpb24tNi1zbWFsbC5zdmdcIikgYm90dG9tIGNlbnRlcjtcbiAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogYm90dG9tO1xuICBwYWRkaW5nOiA0LjA2MjVyZW0gMDtcbiAgbWFyZ2luOiAwIDAgMnJlbTtcbiAgaGVpZ2h0OiBhdXRvO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHRleHQtYWxpZ246IGxlZnQ7IH1cbiAgLmZyb250LWhlcm8gLm1hcmtldGluZyB7XG4gICAgcGFkZGluZy1yaWdodDogMS41cmVtO1xuICAgIHBhZGRpbmctbGVmdDogMS41cmVtO1xuICAgIG1heC13aWR0aDogNTVyZW07XG4gICAgbWFyZ2luOiAwIGF1dG87XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWZsb3c6IHJvdyB3cmFwOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIC5mcm9udC1oZXJvIC5tYXJrZXRpbmcge1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiA0LjM3NXJlbTtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiA0LjM3NXJlbTsgfSB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgIC5mcm9udC1oZXJvIC5tYXJrZXRpbmcge1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiA2LjI1cmVtO1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDYuMjVyZW07IH0gfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICAgIC5mcm9udC1oZXJvIC5tYXJrZXRpbmcge1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiA3LjVyZW07XG4gICAgICAgIHBhZGRpbmctbGVmdDogNy41cmVtOyB9IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5MGVtKSB7XG4gICAgICAuZnJvbnQtaGVybyAubWFya2V0aW5nIHtcbiAgICAgICAgcGFkZGluZy1yaWdodDogNy41cmVtO1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDcuNXJlbTsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLmZyb250LWhlcm8ge1xuICAgICAgYmFja2dyb3VuZDogdXJsKFwiLi4vaW1hZ2VzL2RlbW8vaGVyby1iZy1mb3VuZGF0aW9uLTYtbGFyZ2Uuc3ZnXCIpIGJvdHRvbSBjZW50ZXI7XG4gICAgICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuICAgICAgaGVpZ2h0OiA0Mi44MTI1cmVtO1xuICAgICAgbWFyZ2luOiAwIDAgNC41cmVtOyB9IH1cbiAgLmZyb250LWhlcm8gLndhdGNoIHtcbiAgICB3aWR0aDogY2FsYyg1OC4zMzMzMyUgLSAxLjEyNXJlbSk7XG4gICAgbWFyZ2luLXJpZ2h0OiAwLjU2MjVyZW07XG4gICAgbWFyZ2luLWxlZnQ6IDAuNTYyNXJlbTsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAuZnJvbnQtaGVybyAud2F0Y2gge1xuICAgICAgICB3aWR0aDogY2FsYygxMDAlIC0gMS4yNXJlbSk7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMC42MjVyZW07XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAwLjYyNXJlbTsgfSB9XG4gICAgLmZyb250LWhlcm8gLndhdGNoIGEge1xuICAgICAgY29sb3I6ICNCNEM5RDE7XG4gICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgbWFyZ2luLXJpZ2h0OiAxLjI1cmVtOyB9XG4gICAgLmZyb250LWhlcm8gLndhdGNoIGE6aG92ZXIge1xuICAgICAgY29sb3I6ICNmZmY7IH1cbiAgICAuZnJvbnQtaGVybyAud2F0Y2ggI3N0YXJnYXplcnMgOmJlZm9yZSB7XG4gICAgICBjb250ZW50OiBcIlxcZjA5YlwiO1xuICAgICAgZm9udC1mYW1pbHk6IEZvbnRBd2Vzb21lO1xuICAgICAgZm9udC1zdHlsZTogbm9ybWFsO1xuICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogaW5oZXJpdDtcbiAgICAgIGNvbG9yOiAjQjRDOUQxO1xuICAgICAgbWFyZ2luLXJpZ2h0OiAwLjVyZW07IH1cbiAgICAuZnJvbnQtaGVybyAud2F0Y2ggI3R3aXR0ZXIgOmJlZm9yZSB7XG4gICAgICBjb250ZW50OiBcIlxcZjA5OVwiO1xuICAgICAgZm9udC1mYW1pbHk6IEZvbnRBd2Vzb21lO1xuICAgICAgZm9udC1zdHlsZTogbm9ybWFsO1xuICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogaW5oZXJpdDtcbiAgICAgIGNvbG9yOiAjQjRDOUQxO1xuICAgICAgbWFyZ2luLXJpZ2h0OiAwLjVyZW07IH1cbiAgLmZyb250LWhlcm8gLnRhZ2xpbmUge1xuICAgIHdpZHRoOiBjYWxjKDY2LjY2NjY3JSAtIDEuMTI1cmVtKTtcbiAgICBtYXJnaW4tcmlnaHQ6IDAuNTYyNXJlbTtcbiAgICBtYXJnaW4tbGVmdDogMC41NjI1cmVtOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIC5mcm9udC1oZXJvIC50YWdsaW5lIHtcbiAgICAgICAgd2lkdGg6IGNhbGMoNDEuNjY2NjclIC0gMS4yNXJlbSk7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMC42MjVyZW07XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAwLjYyNXJlbTtcbiAgICAgICAgcGFkZGluZy10b3A6IDZyZW07IH0gfVxuICAuZnJvbnQtaGVybyBoMSB7XG4gICAgY29sb3I6ICNmZmY7XG4gICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICBmb250LXNpemU6IDIuMnJlbTsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAuZnJvbnQtaGVybyBoMSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMi44NzVyZW07IH0gfVxuICAuZnJvbnQtaGVybyBoNCB7XG4gICAgY29sb3I6ICNmZWZlZmU7XG4gICAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgICBmb250LXNpemU6IDEuMzEyNXJlbTsgfVxuICAuZnJvbnQtaGVybyAuZG93bmxvYWQge1xuICAgIG1hcmdpbi10b3A6IDEuMjVyZW07IH1cblxuLmludHJvIHtcbiAgcGFkZGluZy1yaWdodDogMS41cmVtO1xuICBwYWRkaW5nLWxlZnQ6IDEuNXJlbTtcbiAgbWF4LXdpZHRoOiA5MHJlbTtcbiAgbWFyZ2luOiAwIGF1dG87XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZmxvdzogcm93IHdyYXA7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuaW50cm8ge1xuICAgICAgcGFkZGluZy1yaWdodDogNC4zNzVyZW07XG4gICAgICBwYWRkaW5nLWxlZnQ6IDQuMzc1cmVtOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuaW50cm8ge1xuICAgICAgcGFkZGluZy1yaWdodDogNi4yNXJlbTtcbiAgICAgIHBhZGRpbmctbGVmdDogNi4yNXJlbTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICAuaW50cm8ge1xuICAgICAgcGFkZGluZy1yaWdodDogNy41cmVtO1xuICAgICAgcGFkZGluZy1sZWZ0OiA3LjVyZW07IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5MGVtKSB7XG4gICAgLmludHJvIHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDcuNXJlbTtcbiAgICAgIHBhZGRpbmctbGVmdDogNy41cmVtOyB9IH1cbiAgLmludHJvIC5mcC1pbnRybyB7XG4gICAgd2lkdGg6IGNhbGMoMTAwJSAtIDEuMTI1cmVtKTtcbiAgICBtYXJnaW4tcmlnaHQ6IDAuNTYyNXJlbTtcbiAgICBtYXJnaW4tbGVmdDogMC41NjI1cmVtOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIC5pbnRybyAuZnAtaW50cm8ge1xuICAgICAgICB3aWR0aDogY2FsYyg4My4zMzMzMyUgLSAxLjI1cmVtKTtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAwLjYyNXJlbTtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDAuNjI1cmVtO1xuICAgICAgICBtYXJnaW4tbGVmdDogY2FsYyg4LjMzMzMzJSArIDAuNTYyNXJlbSk7IH1cbiAgICAgICAgLmludHJvIC5mcC1pbnRybyBoMiB7XG4gICAgICAgICAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxLjVyZW07IH1cbiAgICAgICAgLmludHJvIC5mcC1pbnRybyBoNCB7XG4gICAgICAgICAgZm9udC1zaXplOiAxLjEyNXJlbTtcbiAgICAgICAgICBsaW5lLWhlaWdodDogMS42O1xuICAgICAgICAgIGNvbG9yOiAjNzc3O1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206IDJyZW07IH0gfVxuXG4uc2VjdGlvbi1kaXZpZGVyIHtcbiAgcGFkZGluZy1yaWdodDogMS41cmVtO1xuICBwYWRkaW5nLWxlZnQ6IDEuNXJlbTtcbiAgbWF4LXdpZHRoOiA5MHJlbTtcbiAgbWFyZ2luOiAwIGF1dG87XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZmxvdzogcm93IHdyYXA7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuc2VjdGlvbi1kaXZpZGVyIHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDQuMzc1cmVtO1xuICAgICAgcGFkZGluZy1sZWZ0OiA0LjM3NXJlbTsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLnNlY3Rpb24tZGl2aWRlciB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiA2LjI1cmVtO1xuICAgICAgcGFkZGluZy1sZWZ0OiA2LjI1cmVtOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgIC5zZWN0aW9uLWRpdmlkZXIge1xuICAgICAgcGFkZGluZy1yaWdodDogNy41cmVtO1xuICAgICAgcGFkZGluZy1sZWZ0OiA3LjVyZW07IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5MGVtKSB7XG4gICAgLnNlY3Rpb24tZGl2aWRlciB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiA3LjVyZW07XG4gICAgICBwYWRkaW5nLWxlZnQ6IDcuNXJlbTsgfSB9XG4gIC5zZWN0aW9uLWRpdmlkZXIgaHIge1xuICAgIHdpZHRoOiBjYWxjKDEwMCUgLSAxLjVyZW0pO1xuICAgIG1hcmdpbi1yaWdodDogMC43NXJlbTtcbiAgICBtYXJnaW4tbGVmdDogMC43NXJlbTtcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94OyB9XG5cbi5iZW5lZml0cyB7XG4gIHBhZGRpbmctcmlnaHQ6IDEuNXJlbTtcbiAgcGFkZGluZy1sZWZ0OiAxLjVyZW07XG4gIG1heC13aWR0aDogOTByZW07XG4gIG1hcmdpbjogMCBhdXRvO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWZsb3c6IHJvdyB3cmFwO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuYmVuZWZpdHMge1xuICAgICAgcGFkZGluZy1yaWdodDogNC4zNzVyZW07XG4gICAgICBwYWRkaW5nLWxlZnQ6IDQuMzc1cmVtOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuYmVuZWZpdHMge1xuICAgICAgcGFkZGluZy1yaWdodDogNi4yNXJlbTtcbiAgICAgIHBhZGRpbmctbGVmdDogNi4yNXJlbTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICAuYmVuZWZpdHMge1xuICAgICAgcGFkZGluZy1yaWdodDogNy41cmVtO1xuICAgICAgcGFkZGluZy1sZWZ0OiA3LjVyZW07IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5MGVtKSB7XG4gICAgLmJlbmVmaXRzIHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDcuNXJlbTtcbiAgICAgIHBhZGRpbmctbGVmdDogNy41cmVtOyB9IH1cbiAgLmJlbmVmaXRzIGhlYWRlciB7XG4gICAgd2lkdGg6IGNhbGMoMTAwJSAtIDEuNXJlbSk7XG4gICAgbWFyZ2luLXJpZ2h0OiAwLjc1cmVtO1xuICAgIG1hcmdpbi1sZWZ0OiAwLjc1cmVtOyB9XG4gICAgLmJlbmVmaXRzIGhlYWRlciBoMiB7XG4gICAgICBmb250LXdlaWdodDogMzAwOyB9XG4gICAgLmJlbmVmaXRzIGhlYWRlciBoNCB7XG4gICAgICBmb250LXNpemU6IDEuMTI1cmVtO1xuICAgICAgbGluZS1oZWlnaHQ6IDEuNjtcbiAgICAgIGNvbG9yOiAjNzc3OyB9XG4gIC5iZW5lZml0cyAuc2VtYW50aWMsXG4gIC5iZW5lZml0cyAucmVzcG9uc2l2ZSxcbiAgLmJlbmVmaXRzIC5jdXN0b21pemFibGUsXG4gIC5iZW5lZml0cyAucHJvZmVzc2lvbmFsIHtcbiAgICB3aWR0aDogY2FsYygxMDAlIC0gMS4xMjVyZW0pO1xuICAgIG1hcmdpbi1yaWdodDogMC41NjI1cmVtO1xuICAgIG1hcmdpbi1sZWZ0OiAwLjU2MjVyZW07IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgLmJlbmVmaXRzIC5zZW1hbnRpYyxcbiAgICAgIC5iZW5lZml0cyAucmVzcG9uc2l2ZSxcbiAgICAgIC5iZW5lZml0cyAuY3VzdG9taXphYmxlLFxuICAgICAgLmJlbmVmaXRzIC5wcm9mZXNzaW9uYWwge1xuICAgICAgICB3aWR0aDogY2FsYygyNSUgLSAxLjI1cmVtKTtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAwLjYyNXJlbTtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDAuNjI1cmVtOyB9IH1cbiAgICAuYmVuZWZpdHMgLnNlbWFudGljIGltZyxcbiAgICAuYmVuZWZpdHMgLnJlc3BvbnNpdmUgaW1nLFxuICAgIC5iZW5lZml0cyAuY3VzdG9taXphYmxlIGltZyxcbiAgICAuYmVuZWZpdHMgLnByb2Zlc3Npb25hbCBpbWcge1xuICAgICAgcGFkZGluZzogMS4yNXJlbTtcbiAgICAgIG1hcmdpbjogMXJlbSBhdXRvIDAgYXV0bzsgfVxuICAgIC5iZW5lZml0cyAuc2VtYW50aWMgaDMsXG4gICAgLmJlbmVmaXRzIC5yZXNwb25zaXZlIGgzLFxuICAgIC5iZW5lZml0cyAuY3VzdG9taXphYmxlIGgzLFxuICAgIC5iZW5lZml0cyAucHJvZmVzc2lvbmFsIGgzIHtcbiAgICAgIGNvbG9yOiAjMGEwYTBhO1xuICAgICAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgICAgIGZvbnQtc2l6ZTogMS43NXJlbTsgfVxuICAgIC5iZW5lZml0cyAuc2VtYW50aWMgcCxcbiAgICAuYmVuZWZpdHMgLnJlc3BvbnNpdmUgcCxcbiAgICAuYmVuZWZpdHMgLmN1c3RvbWl6YWJsZSBwLFxuICAgIC5iZW5lZml0cyAucHJvZmVzc2lvbmFsIHAge1xuICAgICAgZm9udC1zaXplOiAwLjkzNzVyZW07IH1cbiAgLmJlbmVmaXRzIC53aHktZm91bmRhdGlvbiB7XG4gICAgd2lkdGg6IGNhbGMoMTAwJSAtIDEuNXJlbSk7XG4gICAgbWFyZ2luLXJpZ2h0OiAwLjc1cmVtO1xuICAgIG1hcmdpbi1sZWZ0OiAwLjc1cmVtO1xuICAgIG1hcmdpbi10b3A6IDRyZW07IH1cblxuLmtpdGNoZW4tc2luay1oZWFkZXIge1xuICB3aWR0aDogY2FsYygxMDAlIC0gMS41cmVtKTtcbiAgbWFyZ2luLXJpZ2h0OiAwLjc1cmVtO1xuICBtYXJnaW4tbGVmdDogMC43NXJlbTsgfVxuXG4ua2l0Y2hlbi1zaW5rLWNvbXBvbmVudHMge1xuICB3aWR0aDogY2FsYygxMDAlIC0gMS4xMjVyZW0pO1xuICBtYXJnaW4tcmlnaHQ6IDAuNTYyNXJlbTtcbiAgbWFyZ2luLWxlZnQ6IDAuNTYyNXJlbTsgfVxuICAua2l0Y2hlbi1zaW5rLWNvbXBvbmVudHMgaHIge1xuICAgIG1hcmdpbjogM3JlbSAwOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmtpdGNoZW4tc2luay1jb21wb25lbnRzIHtcbiAgICAgIHdpZHRoOiBjYWxjKDc1JSAtIDEuNXJlbSk7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDAuNzVyZW07XG4gICAgICBtYXJnaW4tbGVmdDogMC43NXJlbTsgfSB9XG5cbi5raXRjaGVuLXNpbmstbmF2IHtcbiAgZGlzcGxheTogbm9uZTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5raXRjaGVuLXNpbmstbmF2IHtcbiAgICAgIHdpZHRoOiBjYWxjKDI1JSAtIDEuNXJlbSk7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDAuNzVyZW07XG4gICAgICBtYXJnaW4tbGVmdDogMC43NXJlbTtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgZmxvYXQ6IHJpZ2h0OyB9XG4gICAgICAua2l0Y2hlbi1zaW5rLW5hdiAuZG9jcy1zdWItbWVudSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMC44NXJlbTtcbiAgICAgICAgbWFyZ2luLXRvcDogMXJlbTsgfVxuICAgICAgLmtpdGNoZW4tc2luay1uYXYgLmRvY3MtbWVudS10aXRsZSB7XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgIGZvbnQtc2l6ZTogMC43NXJlbTtcbiAgICAgICAgY29sb3I6ICM4YThhOGE7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgICBsaW5lLWhlaWdodDogMTtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAwLjlyZW07XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDAuNXJlbTtcbiAgICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICNjYWNhY2E7XG4gICAgICAgIG1hcmdpbi10b3A6IDFyZW07XG4gICAgICAgIHBhZGRpbmctdG9wOiAxLjVyZW07IH1cbiAgICAgIC5raXRjaGVuLXNpbmstbmF2IC5kb2NzLXRvYyB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDRyZW07XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDFyZW07IH1cbiAgICAgIC5raXRjaGVuLXNpbmstbmF2IC5kb2NzLXRvYyAuYWN0aXZlIHtcbiAgICAgICAgYmFja2dyb3VuZDogIzIxOTllODtcbiAgICAgICAgY29sb3I6IHdoaXRlOyB9XG4gICAgICAua2l0Y2hlbi1zaW5rLW5hdiAuZG9jcy10b2MgLmRvY3Mtc3ViLW1lbnU6Zmlyc3QtY2hpbGQgLmRvY3MtbWVudS10aXRsZSB7XG4gICAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICAgIGJvcmRlci10b3A6IDA7XG4gICAgICAgIHBhZGRpbmctdG9wOiAwOyB9IH1cblxuLmtpdGNoZW4tc2luay1ncmlkIC5ncmlkLXgge1xuICBiYWNrZ3JvdW5kOiAjZDZlY2ZhO1xuICBmb250LXNpemU6IDEycHg7XG4gIGxpbmUtaGVpZ2h0OiAycmVtO1xuICBtYXJnaW4tYm90dG9tOiAxLjVyZW07IH1cbiAgLmtpdGNoZW4tc2luay1ncmlkIC5ncmlkLXggLmNlbGwsIC5raXRjaGVuLXNpbmstZ3JpZCAuZ3JpZC14IDpudGgtY2hpbGQob2RkKSB7XG4gICAgYmFja2dyb3VuZDogIzdiYzFlZjtcbiAgICBjb2xvcjogIzBhMGEwYTsgfVxuICAua2l0Y2hlbi1zaW5rLWdyaWQgLmdyaWQteCAuY2VsbDpudGgtY2hpbGQoZXZlbikge1xuICAgIGJhY2tncm91bmQ6ICMxNzc5YmE7XG4gICAgY29sb3I6ICNmZWZlZmU7IH1cblxuLnR5cGUtZXJyb3Ige1xuICBwYWRkaW5nLWJvdHRvbTogMy41cmVtO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAudHlwZS1lcnJvciB7XG4gICAgICBwYWRkaW5nLXRvcDogNS4zMTI1cmVtOyB9IH1cbiAgLnR5cGUtZXJyb3IgLmVudHJ5LXRpdGxlIHtcbiAgICBsaW5lLWhlaWdodDogMTtcbiAgICBjb2xvcjogIzJEQzlENzsgfVxuICAudHlwZS1lcnJvciBociB7XG4gICAgbWFyZ2luLXRvcDogMnJlbTtcbiAgICBtYXJnaW4tYm90dG9tOiAycmVtOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgIC50eXBlLWVycm9yIGhyIHtcbiAgICAgICAgbWFyZ2luLXRvcDogM3JlbTtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogM3JlbTsgfSB9XG4gIC50eXBlLWVycm9yIC5lbnRyeS1jb250ZW50IHtcbiAgICBtYXgtd2lkdGg6IDM3LjVyZW07XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiA5NSU7IH1cbiAgICAudHlwZS1lcnJvciAuZW50cnktY29udGVudCB1bCB7XG4gICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgbWF4LXdpZHRoOiAzNTBweDtcbiAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICAgICAgcGFkZGluZy10b3A6IDAuNXJlbTtcbiAgICAgIHBhZGRpbmctbGVmdDogM3JlbTsgfVxuICAgICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgICAgLnR5cGUtZXJyb3IgLmVudHJ5LWNvbnRlbnQgdWwge1xuICAgICAgICAgIHBhZGRpbmctdG9wOiAwLjVyZW07XG4gICAgICAgICAgcGFkZGluZy1sZWZ0OiA0cmVtOyB9IH1cbiAgICAgIC50eXBlLWVycm9yIC5lbnRyeS1jb250ZW50IHVsIGxpID4gYSB7XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiBjYXBpdGFsaXplO1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICAgICAgZGlzcGxheTogaW5saW5lOyB9XG4gIC50eXBlLWVycm9yIC5ib3R0b20ge1xuICAgIGZvbnQtc2l6ZTogMS4xcmVtO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjVyZW07IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgLnR5cGUtZXJyb3IgLmJvdHRvbSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMS4ycmVtO1xuICAgICAgICBsaW5lLWhlaWdodDogMS44cmVtOyB9IH1cbiAgLnR5cGUtZXJyb3IgLmVycm9yIHNwYW4ge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBjb2xvcjogIzJEQzlENztcbiAgICBmb250LXNpemU6IDEwcmVtOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIC50eXBlLWVycm9yIC5lcnJvciBzcGFuIHtcbiAgICAgICAgZm9udC1zaXplOiAxNXJlbTsgfSB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgIC50eXBlLWVycm9yIC5lcnJvciBzcGFuIHtcbiAgICAgICAgZm9udC1zaXplOiAyMHJlbTsgfSB9XG4gIC50eXBlLWVycm9yIC5pbmZvLWJsb2NrIHAge1xuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgbWFyZ2luLWJvdHRvbTogMDsgfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45Mzc1ZW0pIHtcbiAgLmJsb2ctaG9tZSA+IC50b3AtcG9zdDpmaXJzdC1jaGlsZCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5ibG9nLWhvbWUge1xuICAgIHBhZGRpbmctdG9wOiAyLjI1cmVtOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLmJsb2ctaG9tZSB7XG4gICAgICBwYWRkaW5nLXRvcDogNC4zNzVyZW07IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkgYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuYmxvZy1ob21lIHtcbiAgICAgIHBhZGRpbmctdG9wOiAzLjc1cmVtOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkgYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICAuYmxvZy1ob21lIHtcbiAgICAgIHBhZGRpbmctdG9wOiA0LjVyZW07IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSBhbmQgKG1pbi13aWR0aDogOTBlbSkge1xuICAgIC5ibG9nLWhvbWUge1xuICAgICAgcGFkZGluZy10b3A6IDQuNXJlbTsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjkzNzVlbSkge1xuICAuYmxvZy1ob21lID4gc2VjdGlvbjpub3QoOmxhc3Qtb2YtdHlwZSkge1xuICAgIG1hcmdpbi1ib3R0b206IDNyZW07IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuYmxvZy1ob21lID4gc2VjdGlvbjpub3QoOmxhc3Qtb2YtdHlwZSkge1xuICAgIG1hcmdpbi1ib3R0b206IDIuMjVyZW07IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkgYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuYmxvZy1ob21lID4gc2VjdGlvbjpub3QoOmxhc3Qtb2YtdHlwZSkge1xuICAgICAgbWFyZ2luLWJvdHRvbTogNC4zNzVyZW07IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkgYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuYmxvZy1ob21lID4gc2VjdGlvbjpub3QoOmxhc3Qtb2YtdHlwZSkge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMy43NXJlbTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgLmJsb2ctaG9tZSA+IHNlY3Rpb246bm90KDpsYXN0LW9mLXR5cGUpIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDQuNXJlbTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIGFuZCAobWluLXdpZHRoOiA5MGVtKSB7XG4gICAgLmJsb2ctaG9tZSA+IHNlY3Rpb246bm90KDpsYXN0LW9mLXR5cGUpIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDQuNXJlbTsgfSB9XG5cbi5ibG9nLWhvbWUgI2Jyb3dzZS1ieS1jYXRlZ29yeSB7XG4gIG1hcmdpbi10b3A6IDNyZW07IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuYmxvZy1ob21lICNicm93c2UtYnktY2F0ZWdvcnkge1xuICAgICAgbWFyZ2luLXRvcDogMDsgfSB9XG5cbi5ibG9nLWhvbWUgLmxhdGVzdC10aXRsZSB7XG4gIGNvbG9yOiAjMDAxRTYyO1xuICBtYXJnaW4tYm90dG9tOiAxLjVyZW07XG4gIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5ibG9nLWhvbWUgLmxhdGVzdC10aXRsZSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAyLjkxNjY3cmVtOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuYmxvZy1ob21lIC5sYXRlc3QtdGl0bGUge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMi41cmVtOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgIC5ibG9nLWhvbWUgLmxhdGVzdC10aXRsZSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAzcmVtOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTBlbSkge1xuICAgIC5ibG9nLWhvbWUgLmxhdGVzdC10aXRsZSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAzcmVtOyB9IH1cblxuLnVzZXItbG9naW4ge1xuICBoZWlnaHQ6IDUwdmg7XG4gIG1pbi1oZWlnaHQ6IDE4Ljc1cmVtO1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgLnVzZXItbG9naW4gYSB7XG4gICAgZGlzcGxheTogYmxvY2s7IH1cbiAgLnVzZXItbG9naW4gLmxvZ2luLXRpdGxlIHtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIG1hcmdpbi1ib3R0b206IDEuNXJlbTsgfVxuICAudXNlci1sb2dpbiAubG9naW4tbGluayB7XG4gICAgbWFyZ2luLWJvdHRvbTogMXJlbTsgfVxuICAudXNlci1sb2dpbiAuZm9yZ290LXBhc3N3b3JkLWxpbmsge1xuICAgIG1hcmdpbi1ib3R0b206IDFyZW07IH1cbiAgLnVzZXItbG9naW4gLnNpZ24tdXAtY29weSB7XG4gICAgY29sb3I6ICM4YThhOGE7IH1cbiAgLnVzZXItbG9naW4gLnNpZ24tdXAtbGluayB7XG4gICAgY29sb3I6ICMyREM5RDc7IH1cbiIsIi8qKlxuICogRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuICogVmVyc2lvbiA2LjQuM1xuICogZm91bmRhdGlvbi56dXJiLmNvbVxuICogTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG4gKi9cblxuLy8gRGVwZW5kZW5jaWVzXG5AaW1wb3J0ICcuLi9fdmVuZG9yL25vcm1hbGl6ZS1zY3NzL3Nhc3Mvbm9ybWFsaXplJztcbkBpbXBvcnQgJy4uL192ZW5kb3Ivc2Fzc3ktbGlzdHMvc3R5bGVzaGVldHMvaGVscGVycy9taXNzaW5nLWRlcGVuZGVuY2llcyc7XG5AaW1wb3J0ICcuLi9fdmVuZG9yL3Nhc3N5LWxpc3RzL3N0eWxlc2hlZXRzL2hlbHBlcnMvdHJ1ZSc7XG5AaW1wb3J0ICcuLi9fdmVuZG9yL3Nhc3N5LWxpc3RzL3N0eWxlc2hlZXRzL2Z1bmN0aW9ucy9jb250YWluJztcbkBpbXBvcnQgJy4uL192ZW5kb3Ivc2Fzc3ktbGlzdHMvc3R5bGVzaGVldHMvZnVuY3Rpb25zL3B1cmdlJztcbkBpbXBvcnQgJy4uL192ZW5kb3Ivc2Fzc3ktbGlzdHMvc3R5bGVzaGVldHMvZnVuY3Rpb25zL3JlbW92ZSc7XG5AaW1wb3J0ICcuLi9fdmVuZG9yL3Nhc3N5LWxpc3RzL3N0eWxlc2hlZXRzL2Z1bmN0aW9ucy9yZXBsYWNlJztcbkBpbXBvcnQgJy4uL192ZW5kb3Ivc2Fzc3ktbGlzdHMvc3R5bGVzaGVldHMvZnVuY3Rpb25zL3RvLWxpc3QnO1xuXG4vLyBTZXR0aW5nc1xuLy8gaW1wb3J0IHlvdXIgb3duIGBzZXR0aW5nc2AgaGVyZSBvclxuLy8gaW1wb3J0IGFuZCBtb2RpZnkgdGhlIGRlZmF1bHQgc2V0dGluZ3MgdGhyb3VnaFxuLy8gQGltcG9ydCAnc2V0dGluZ3Mvc2V0dGluZ3MnO1xuXG4vLyBTYXNzIHV0aWxpdGllc1xuQGltcG9ydCAndXRpbC91dGlsJztcblxuLy8gR2xvYmFsIHZhcmlhYmxlcyBhbmQgc3R5bGVzXG5AaW1wb3J0ICdnbG9iYWwnO1xuXG4vLyBDb21wb25lbnRzXG5AaW1wb3J0ICdncmlkL2dyaWQnO1xuQGltcG9ydCAneHktZ3JpZC94eS1ncmlkJztcbkBpbXBvcnQgJ3R5cG9ncmFwaHkvdHlwb2dyYXBoeSc7XG5AaW1wb3J0ICdmb3Jtcy9mb3Jtcyc7XG5AaW1wb3J0ICdjb21wb25lbnRzL3Zpc2liaWxpdHknO1xuQGltcG9ydCAnY29tcG9uZW50cy9mbG9hdCc7XG5AaW1wb3J0ICdjb21wb25lbnRzL2J1dHRvbic7XG5AaW1wb3J0ICdjb21wb25lbnRzL2J1dHRvbi1ncm91cCc7XG5AaW1wb3J0ICdjb21wb25lbnRzL2FjY29yZGlvbi1tZW51JztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvYWNjb3JkaW9uJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvYmFkZ2UnO1xuQGltcG9ydCAnY29tcG9uZW50cy9icmVhZGNydW1icyc7XG5AaW1wb3J0ICdjb21wb25lbnRzL2NhbGxvdXQnO1xuQGltcG9ydCAnY29tcG9uZW50cy9jYXJkJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvY2xvc2UtYnV0dG9uJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvZHJpbGxkb3duJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvZHJvcGRvd24tbWVudSc7XG5AaW1wb3J0ICdjb21wb25lbnRzL2Ryb3Bkb3duJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvZmxleCc7XG5AaW1wb3J0ICdjb21wb25lbnRzL3Jlc3BvbnNpdmUtZW1iZWQnO1xuQGltcG9ydCAnY29tcG9uZW50cy9sYWJlbCc7XG5AaW1wb3J0ICdjb21wb25lbnRzL21lZGlhLW9iamVjdCc7XG5AaW1wb3J0ICdjb21wb25lbnRzL21lbnUnO1xuQGltcG9ydCAnY29tcG9uZW50cy9tZW51LWljb24nO1xuQGltcG9ydCAnY29tcG9uZW50cy9vZmYtY2FudmFzJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvb3JiaXQnO1xuQGltcG9ydCAnY29tcG9uZW50cy9wYWdpbmF0aW9uJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvcHJvZ3Jlc3MtYmFyJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvcmV2ZWFsJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvc2xpZGVyJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvc3RpY2t5JztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvc3dpdGNoJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvdGFibGUnO1xuQGltcG9ydCAnY29tcG9uZW50cy90YWJzJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvdGl0bGUtYmFyJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvdG9wLWJhcic7XG5AaW1wb3J0ICdjb21wb25lbnRzL3RodW1ibmFpbCc7XG5AaW1wb3J0ICdjb21wb25lbnRzL3Rvb2x0aXAnO1xuQGltcG9ydCAncHJvdG90eXBlL3Byb3RvdHlwZSc7XG5cbkBtaXhpbiBmb3VuZGF0aW9uLWV2ZXJ5dGhpbmcoXG4gICRmbGV4OiB0cnVlLFxuICAkcHJvdG90eXBlOiBmYWxzZVxuKSB7XG4gIEBpZiAkZmxleCB7XG4gICAgJGdsb2JhbC1mbGV4Ym94OiB0cnVlICFnbG9iYWw7XG4gIH1cblxuICBAaW5jbHVkZSBmb3VuZGF0aW9uLWdsb2JhbC1zdHlsZXM7XG4gIEBpZiBub3QgJGZsZXgge1xuICAgIEBpbmNsdWRlIGZvdW5kYXRpb24tZ3JpZDtcbiAgfVxuICBAZWxzZSB7XG4gICAgQGlmICR4eS1ncmlkIHtcbiAgICAgIEBpbmNsdWRlIGZvdW5kYXRpb24teHktZ3JpZC1jbGFzc2VzO1xuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICBAaW5jbHVkZSBmb3VuZGF0aW9uLWZsZXgtZ3JpZDtcbiAgICB9XG4gIH1cbiAgQGluY2x1ZGUgZm91bmRhdGlvbi10eXBvZ3JhcGh5O1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLWZvcm1zO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLWJ1dHRvbjtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1hY2NvcmRpb247XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tYWNjb3JkaW9uLW1lbnU7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tYmFkZ2U7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tYnJlYWRjcnVtYnM7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tYnV0dG9uLWdyb3VwO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLWNhbGxvdXQ7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tY2FyZDtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1jbG9zZS1idXR0b247XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tbWVudTtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1tZW51LWljb247XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tZHJpbGxkb3duLW1lbnU7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tZHJvcGRvd247XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tZHJvcGRvd24tbWVudTtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1yZXNwb25zaXZlLWVtYmVkO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLWxhYmVsO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLW1lZGlhLW9iamVjdDtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1vZmYtY2FudmFzO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLW9yYml0O1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLXBhZ2luYXRpb247XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tcHJvZ3Jlc3MtYmFyO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLXNsaWRlcjtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1zdGlja3k7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tcmV2ZWFsO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLXN3aXRjaDtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi10YWJsZTtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi10YWJzO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLXRodW1ibmFpbDtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi10aXRsZS1iYXI7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tdG9vbHRpcDtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi10b3AtYmFyO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLXZpc2liaWxpdHktY2xhc3NlcztcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1mbG9hdC1jbGFzc2VzO1xuXG4gIEBpZiAkZmxleCB7XG4gICAgQGluY2x1ZGUgZm91bmRhdGlvbi1mbGV4LWNsYXNzZXM7XG4gIH1cblxuICBAaWYgJHByb3RvdHlwZSB7XG4gICAgQGluY2x1ZGUgZm91bmRhdGlvbi1wcm90b3R5cGUtY2xhc3NlcztcbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgYnJlYWtwb2ludHNcbi8vLy9cblxuLy8vIEEgbGlzdCBvZiBuYW1lZCBicmVha3BvaW50cy4gWW91IGNhbiB1c2UgdGhlc2Ugd2l0aCB0aGUgYGJyZWFrcG9pbnQoKWAgbWl4aW4gdG8gcXVpY2tseSBjcmVhdGUgbWVkaWEgcXVlcmllcy5cbi8vLyBAdHlwZSBNYXBcbiRicmVha3BvaW50czogKFxuICBzbWFsbDogMCxcbiAgbWVkaXVtOiA2NDBweCxcbiAgbGFyZ2U6IDEwMjRweCxcbiAgeGxhcmdlOiAxMjAwcHgsXG4gIHh4bGFyZ2U6IDE0NDBweCxcbikgIWRlZmF1bHQ7XG5cbi8vLyBUaGUgbGFyZ2VzdCBuYW1lZCBicmVha3BvaW50IGluIHdoaWNoIHRvIGluY2x1ZGUgcHJpbnQgYXMgYSBtZWRpYSB0eXBlXG4vLy8gQHR5cGUgS2V5d29yZFxuJHByaW50LWJyZWFrcG9pbnQ6IGxhcmdlICFkZWZhdWx0O1xuXG4kLXpmLXplcm8tYnJlYWtwb2ludDogc21hbGwgIWRlZmF1bHQ7XG5cbiQtemYtYnJlYWtwb2ludHMta2V5czogbWFwLXRvLWxpc3QoJGJyZWFrcG9pbnRzLCAna2V5cycpO1xuXG5AaWYgbnRoKG1hcC12YWx1ZXMoJGJyZWFrcG9pbnRzKSwgMSkgIT0gMCB7XG4gIEBlcnJvciAnWW91ciBzbWFsbGVzdCBicmVha3BvaW50IChkZWZpbmVkIGluICRicmVha3BvaW50cykgbXVzdCBiZSBzZXQgdG8gXCIwXCIuJztcbn1cbkBlbHNlIHtcbiAgJC16Zi16ZXJvLWJyZWFrcG9pbnQ6IG50aChtYXAta2V5cygkYnJlYWtwb2ludHMpLCAxKTtcbn1cblxuLy8vIEFsbCBvZiB0aGUgbmFtZXMgaW4gdGhpcyBsaXN0IHdpbGwgYmUgb3V0cHV0IGFzIGNsYXNzZXMgaW4geW91ciBDU1MsIGxpa2UgYC5zbWFsbC0xMmAsIGAubWVkaXVtLTZgLCBhbmQgc28gb24uIEVhY2ggdmFsdWUgaW4gdGhpcyBsaXN0IG11c3QgYWxzbyBiZSBpbiB0aGUgYCRicmVha3BvaW50c2AgbWFwLlxuLy8vIEB0eXBlIExpc3RcbiRicmVha3BvaW50LWNsYXNzZXM6IChzbWFsbCBtZWRpdW0gbGFyZ2UpICFkZWZhdWx0O1xuXG4vLy8gR2VuZXJhdGVzIGEgbWVkaWEgcXVlcnkgc3RyaW5nIG1hdGNoaW5nIHRoZSBpbnB1dCB2YWx1ZS4gUmVmZXIgdG8gdGhlIGRvY3VtZW50YXRpb24gZm9yIHRoZSBgYnJlYWtwb2ludCgpYCBtaXhpbiB0byBzZWUgd2hhdCB0aGUgcG9zc2libGUgaW5wdXRzIGFyZS5cbi8vL1xuLy8vIEBwYXJhbSB7S2V5d29yZHxOdW1iZXJ9ICR2YWwgW3NtYWxsXSAtIEJyZWFrcG9pbnQgbmFtZSwgb3IgcHgsIHJlbSwgb3IgZW0gdmFsdWUgdG8gcHJvY2Vzcy5cbkBmdW5jdGlvbiBicmVha3BvaW50KCR2YWw6ICQtemYtemVyby1icmVha3BvaW50KSB7XG4gIC8vIFNpemUgb3Iga2V5d29yZFxuICAkYnA6IG50aCgkdmFsLCAxKTtcbiAgLy8gVmFsdWUgZm9yIG1heC13aWR0aCBtZWRpYSBxdWVyaWVzXG4gICRicC1tYXg6IDA7XG4gIC8vIERpcmVjdGlvbiBvZiBtZWRpYSBxdWVyeSAodXAsIGRvd24sIG9yIG9ubHkpXG4gICRkaXI6IGlmKGxlbmd0aCgkdmFsKSA+IDEsIG50aCgkdmFsLCAyKSwgdXApO1xuICAvLyBFdmVudHVhbCBvdXRwdXRcbiAgJHN0cjogJyc7XG4gIC8vIElzIGl0IGEgbmFtZWQgbWVkaWEgcXVlcnk/XG4gICRuYW1lZDogZmFsc2U7XG5cbiAgLy8gT3JpZW50YXRpb24gbWVkaWEgcXVlcmllcyBoYXZlIGEgdW5pcXVlIHN5bnRheFxuICBAaWYgJGJwID09ICdsYW5kc2NhcGUnIG9yICRicCA9PSAncG9ydHJhaXQnIHtcbiAgICBAcmV0dXJuICcob3JpZW50YXRpb246ICN7JGJwfSknO1xuICB9XG4gIEBlbHNlIGlmICRicCA9PSAncmV0aW5hJyB7XG4gICAgQHJldHVybiAnKC13ZWJraXQtbWluLWRldmljZS1waXhlbC1yYXRpbzogMiksIChtaW4tcmVzb2x1dGlvbjogMTkyZHBpKSc7XG4gIH1cblxuICAvLyBUcnkgdG8gcHVsbCBhIG5hbWVkIGJyZWFrcG9pbnQgb3V0IG9mIHRoZSAkYnJlYWtwb2ludHMgbWFwXG4gIEBpZiB0eXBlLW9mKCRicCkgPT0gJ3N0cmluZycge1xuICAgIEBpZiBtYXAtaGFzLWtleSgkYnJlYWtwb2ludHMsICRicCkge1xuICAgICAgQGlmICRkaXIgPT0gJ29ubHknIG9yICRkaXIgPT0gJ2Rvd24nIHtcbiAgICAgICAgJGJwLW1heDogLXpmLW1hcC1uZXh0KCRicmVha3BvaW50cywgJGJwKTtcbiAgICAgIH1cblxuICAgICAgJGJwOiBtYXAtZ2V0KCRicmVha3BvaW50cywgJGJwKTtcbiAgICAgICRuYW1lZDogdHJ1ZTtcbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgJGJwOiAwO1xuICAgICAgQHdhcm4gJ2JyZWFrcG9pbnQoKTogXCIjeyR2YWx9XCIgaXMgbm90IGRlZmluZWQgaW4geW91ciAkYnJlYWtwb2ludHMgc2V0dGluZy4nO1xuICAgIH1cbiAgfVxuXG4gIC8vIENvbnZlcnQgYW55IHBpeGVsLCByZW0sIG9yIHVuaXRsZXNzIHZhbHVlIHRvIGVtXG4gICRicDogLXpmLWJwLXRvLWVtKCRicCk7XG4gIEBpZiAkYnAtbWF4IHtcbiAgICAkYnAtbWF4OiAtemYtYnAtdG8tZW0oJGJwLW1heCkgLSAoMS8xNik7XG4gIH1cblxuICAvLyBDb25kaXRpb25zIHRvIHNraXAgbWVkaWEgcXVlcnkgY3JlYXRpb25cbiAgLy8gLSBJdCdzIGEgbmFtZWQgYnJlYWtwb2ludCB0aGF0IHJlc29sdmVkIHRvIFwiMCBkb3duXCIgb3IgXCIwIHVwXCJcbiAgLy8gLSBJdCdzIGEgbnVtZXJpYyBicmVha3BvaW50IHRoYXQgcmVzb2x2ZWQgdG8gXCIwIFwiICsgYW55dGhpbmdcbiAgQGlmICRicCA+IDBlbSBvciAkZGlyID09ICdvbmx5JyBvciAkZGlyID09ICdkb3duJyB7XG4gICAgLy8gYG9ubHlgIHJhbmdlcyB1c2UgdGhlIGZvcm1hdCBgKG1pbi13aWR0aDogbikgYW5kIChtYXgtd2lkdGg6IG4pYFxuICAgIEBpZiAkZGlyID09ICdvbmx5JyB7XG4gICAgICAvLyBPbmx5IG5hbWVkIG1lZGlhIHF1ZXJpZXMgY2FuIGhhdmUgYW4gXCJvbmx5XCIgcmFuZ2VcbiAgICAgIEBpZiAkbmFtZWQgPT0gdHJ1ZSB7XG4gICAgICAgIC8vIE9ubHkgdXNlIFwibWluLXdpZHRoXCIgaWYgdGhlIGZsb29yIGlzIGdyZWF0ZXIgdGhhbiAwXG4gICAgICAgIEBpZiAkYnAgPiAwZW0ge1xuICAgICAgICAgICRzdHI6ICRzdHIgKyAnKG1pbi13aWR0aDogI3skYnB9KSc7XG5cbiAgICAgICAgICAvLyBPbmx5IGFkZCBcImFuZFwiIHRvIHRoZSBtZWRpYSBxdWVyeSBpZiB0aGVyZSdzIGEgY2VpbGluZ1xuICAgICAgICAgIEBpZiAkYnAtbWF4ICE9IG51bGwge1xuICAgICAgICAgICAgJHN0cjogJHN0ciArICcgYW5kICc7XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLy8gT25seSB1c2UgXCJtYXgtd2lkdGhcIiBpZiB0aGVyZSdzIGEgY2VpbGluZ1xuICAgICAgICBAaWYgJGJwLW1heCAhPSBudWxsIHtcbiAgICAgICAgICAkc3RyOiAkc3RyICsgJyhtYXgtd2lkdGg6ICN7JGJwLW1heH0pJztcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgQGVsc2Uge1xuICAgICAgICBAd2FybiAnYnJlYWtwb2ludCgpOiBPbmx5IG5hbWVkIG1lZGlhIHF1ZXJpZXMgY2FuIGhhdmUgYW4gYG9ubHlgIHJhbmdlLic7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gYGRvd25gIHJhbmdlcyB1c2UgdGhlIGZvcm1hdCBgKG1heC13aWR0aDogbilgXG4gICAgQGVsc2UgaWYgJGRpciA9PSAnZG93bicge1xuICAgICAgJG1heDogaWYoJG5hbWVkLCAkYnAtbWF4LCAkYnApO1xuXG4gICAgICAvLyBTa2lwIG1lZGlhIHF1ZXJ5IGNyZWF0aW9uIGlmIGlucHV0IHZhbHVlIGlzIGV4YWN0bHkgXCIwIGRvd25cIixcbiAgICAgIC8vIHVubGVzcyB0aGUgZnVuY3Rpb24gd2FzIGNhbGxlZCBhcyBcInNtYWxsIGRvd25cIiwgaW4gd2hpY2ggY2FzZSBpdCdzIGp1c3QgXCJzbWFsbCBvbmx5XCJcbiAgICAgIEBpZiAkbmFtZWQgb3IgJGJwID4gMGVtIHtcbiAgICAgICAgQGlmICRtYXggIT0gbnVsbCB7XG4gICAgICAgICAgJHN0cjogJHN0ciArICcobWF4LXdpZHRoOiAjeyRtYXh9KSc7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBgdXBgIHJhbmdlcyB1c2UgdGhlIGZvcm1hdCBgKG1pbi13aWR0aDogbilgXG4gICAgQGVsc2UgaWYgJGJwID4gMGVtIHtcbiAgICAgICRzdHI6ICRzdHIgKyAnKG1pbi13aWR0aDogI3skYnB9KSc7XG4gICAgfVxuICB9XG5cbiAgQHJldHVybiAkc3RyO1xufVxuXG4vLy8gV3JhcHMgYSBtZWRpYSBxdWVyeSBhcm91bmQgdGhlIGNvbnRlbnQgeW91IHB1dCBpbnNpZGUgdGhlIG1peGluLiBUaGlzIG1peGluIGFjY2VwdHMgYSBudW1iZXIgb2YgdmFsdWVzOlxuLy8vICAtIElmIGEgc3RyaW5nIGlzIHBhc3NlZCwgdGhlIG1peGluIHdpbGwgbG9vayBmb3IgaXQgaW4gdGhlIGAkYnJlYWtwb2ludHNgIG1hcCwgYW5kIHVzZSBhIG1lZGlhIHF1ZXJ5IHRoZXJlLlxuLy8vICAtIElmIGEgcGl4ZWwgdmFsdWUgaXMgcGFzc2VkLCBpdCB3aWxsIGJlIGNvbnZlcnRlZCB0byBhbiBlbSB2YWx1ZSB1c2luZyBgJGdsb2JhbC1mb250LXNpemVgIGFzIHRoZSBiYXNlLlxuLy8vICAtIElmIGEgcmVtIHZhbHVlIGlzIHBhc3NlZCwgdGhlIHVuaXQgd2lsbCBiZSBjaGFuZ2VkIHRvIGVtLlxuLy8vICAtIElmIGFuIGVtIHZhbHVlIGlzIHBhc3NlZCwgdGhlIHZhbHVlIHdpbGwgYmUgdXNlZCBhcy1pcy5cbi8vL1xuLy8vIEBwYXJhbSB7S2V5d29yZHxOdW1iZXJ9ICR2YWx1ZSAtIEJyZWFrcG9pbnQgbmFtZSwgb3IgcHgsIHJlbSwgb3IgZW0gdmFsdWUgdG8gcHJvY2Vzcy5cbi8vL1xuLy8vIEBvdXRwdXQgSWYgdGhlIGJyZWFrcG9pbnQgaXMgXCIwcHggYW5kIGxhcmdlclwiLCBvdXRwdXRzIHRoZSBjb250ZW50IGFzLWlzLiBPdGhlcndpc2UsIG91dHB1dHMgdGhlIGNvbnRlbnQgd3JhcHBlZCBpbiBhIG1lZGlhIHF1ZXJ5LlxuQG1peGluIGJyZWFrcG9pbnQoJHZhbHVlKSB7XG4gICRzdHI6IGJyZWFrcG9pbnQoJHZhbHVlKTtcbiAgJGJwOiBpbmRleCgkLXpmLWJyZWFrcG9pbnRzLWtleXMsICR2YWx1ZSk7XG4gICRwYnA6IGluZGV4KCQtemYtYnJlYWtwb2ludHMta2V5cywgJHByaW50LWJyZWFrcG9pbnQpO1xuXG4gICRvbGQtemYtc2l6ZTogbnVsbDtcblxuICAvLyBNYWtlIGJyZWFrcG9pbnQgc2l6ZSBhdmFpbGFibGUgYXMgYSB2YXJpYWJsZVxuICBAaWYgZ2xvYmFsLXZhcmlhYmxlLWV4aXN0cygtemYtc2l6ZSkge1xuICAgICRvbGQtemYtc2l6ZTogJC16Zi1zaXplO1xuICB9XG4gICQtemYtc2l6ZTogbnRoKCR2YWx1ZSwgMSkgIWdsb2JhbDsgLy8gZ2V0IHRoZSBmaXJzdCB2YWx1ZSB0byBhY2NvdW50IGZvciBgb25seWAgYW5kIGBkb3duYCBrZXl3b3Jkc1xuXG4gIC8vIElmICRzdHIgaXMgc3RpbGwgYW4gZW1wdHkgc3RyaW5nLCBubyBtZWRpYSBxdWVyeSBpcyBuZWVkZWRcbiAgQGlmICRzdHIgPT0gJycge1xuICAgIEBjb250ZW50O1xuICB9XG5cbiAgLy8gT3RoZXJ3aXNlLCB3cmFwIHRoZSBjb250ZW50IGluIGEgbWVkaWEgcXVlcnlcbiAgQGVsc2Uge1xuICAgIC8vIEZvciBuYW1lZCBicmVha3BvaW50cyBsZXNzIHRoYW4gb3IgZXF1YWwgdG8gJHByaW50LWJyZWFrcG9pbnQsIGFkZCBwcmludCB0byB0aGUgbWVkaWEgdHlwZXNcbiAgICBAaWYgJGJwICE9IG51bGwgYW5kICRicCA8PSAkcGJwIHtcbiAgICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAjeyRzdHJ9IHtcbiAgICAgICAgQGNvbnRlbnQ7XG4gICAgICAgfVxuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAjeyRzdHJ9IHtcbiAgICAgICAgQGNvbnRlbnQ7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgQGlmICRvbGQtemYtc2l6ZSAhPSBudWxsIHtcbiAgICAvLyBSZXN0b3JlIHRoZSBvbGQgYnJlYWtwb2ludCBzaXplXG4gICAgJC16Zi1zaXplOiAkb2xkLXpmLXNpemUgIWdsb2JhbDtcbiAgfSBAZWxzZSB7XG4gICAgJC16Zi1zaXplOiBudWxsICFnbG9iYWw7XG4gIH1cbn1cblxuLy8vIENvbnZlcnMgdGhlIGJyZWFrcG9pbnRzIG1hcCB0byBhIFVSTC1lbmNvZGVkIHN0cmluZywgbGlrZSB0aGlzOiBga2V5MT12YWx1ZTEma2V5Mj12YWx1ZTJgLiBUaGUgdmFsdWUgaXMgdGhlbiBkcm9wcGVkIGludG8gdGhlIENTUyBmb3IgYSBzcGVjaWFsIGA8bWV0YT5gIHRhZywgd2hpY2ggaXMgcmVhZCBieSB0aGUgRm91bmRhdGlvbiBKYXZhU2NyaXB0LiBUaGlzIGlzIGhvdyB3ZSB0cmFuc2ZlciB2YWx1ZXMgZnJvbSBTYXNzIHRvIEphdmFTY3JpcHQsIHNvIHRoZXkgY2FuIGJlIGRlZmluZWQgaW4gb25lIHBsYWNlLlxuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuLy8vXG4vLy8gQHBhcmFtIHtNYXB9ICRtYXAgLSBNYXAgdG8gY29udmVydC5cbi8vL1xuLy8vIEByZXR1cm5zIHtTdHJpbmd9IEEgc3RyaW5nIGNvbnRhaW5pbmcgdGhlIG1hcCdzIGNvbnRlbnRzLlxuQGZ1bmN0aW9uIC16Zi1icC1zZXJpYWxpemUoJG1hcCkge1xuICAkc3RyOiAnJztcbiAgQGVhY2ggJGtleSwgJHZhbHVlIGluICRtYXAge1xuICAgICRzdHI6ICRzdHIgKyAka2V5ICsgJz0nICsgLXpmLWJwLXRvLWVtKCR2YWx1ZSkgKyAnJic7XG4gIH1cbiAgJHN0cjogc3RyLXNsaWNlKCRzdHIsIDEsIC0yKTtcblxuICBAcmV0dXJuICRzdHI7XG59XG5cbi8vLyBGaW5kIHRoZSBuZXh0IGtleSBpbiBhIG1hcC5cbi8vLyBAYWNjZXNzIHByaXZhdGVcbi8vL1xuLy8vIEBwYXJhbSB7TWFwfSAkbWFwIC0gTWFwIHRvIHRyYXZlcnNlLlxuLy8vIEBwYXJhbSB7TWl4ZWR9ICRrZXkgLSBLZXkgdG8gdXNlIGFzIGEgc3RhcnRpbmcgcG9pbnQuXG4vLy9cbi8vLyBAcmV0dXJucyB7TWl4ZWR9IFRoZSB2YWx1ZSBmb3IgdGhlIGtleSBhZnRlciBgJGtleWAsIGlmIGAka2V5YCB3YXMgZm91bmQuIElmIGAka2V5YCB3YXMgbm90IGZvdW5kLCBvciBgJGtleWAgd2FzIHRoZSBsYXN0IHZhbHVlIGluIHRoZSBtYXAsIHJldHVybnMgYG51bGxgLlxuQGZ1bmN0aW9uIC16Zi1tYXAtbmV4dCgkbWFwLCAka2V5KSB7XG5cbiAgLy8gU3RvcmUgdGhlIGtleXMgb2YgdGhlIG1hcCBhcyBhIGxpc3RcbiAgJHZhbHVlczogbWFwLWtleXMoJG1hcCk7XG5cbiAgJGk6IDA7XG5cbiAgLy8gSWYgdGhlIEtleSBFeGlzdHMsIEdldCB0aGUgaW5kZXggb2YgdGhlIGtleSB3aXRoaW4gdGhlIG1hcCBhbmQgYWRkIDEgdG8gaXQgZm9yIHRoZSBuZXh0IGJyZWFrcG9pbnQgaW4gdGhlIG1hcFxuICBAaWYgKG1hcC1oYXMta2V5KCRtYXAsICRrZXkpKSB7XG4gICAgJGk6IGluZGV4KCR2YWx1ZXMsICRrZXkpICsgMTtcbiAgfVxuXG4gIC8vIElmIHRoZSBrZXkgZG9lc24ndCBleGlzdCwgb3IgaXQncyB0aGUgbGFzdCBrZXkgaW4gdGhlIG1hcCwgcmV0dXJuIG51bGxcbiAgQGlmICgkaSA+IGxlbmd0aCgkbWFwKSBvciAkaSA9PSAwKSB7XG4gICAgQHJldHVybiBudWxsO1xuICB9XG4gIC8vIE90aGVyd2lzZSwgcmV0dXJuIHRoZSB2YWx1ZVxuICBAZWxzZSB7XG4gICAgQHJldHVybiBtYXAtZ2V0KCRtYXAsIG50aCgkdmFsdWVzLCAkaSkpO1xuICB9XG5cbn1cblxuLy8vIFJldHVybiBhIGxpc3Qgb2Ygb3VyIG5hbWVkIGJyZWFrcG9pbnRzIGxlc3MgdGhhbiAka2V5LiBVc2VmdWwgZm9yIGRlYWxpbmcgd2l0aFxuLy8vIHJlc3BvbnNpdmUgZ3V0dGVycyBmb3IgdGhlIGdyaWQuXG4vLy8gQGFjY2VzcyBwcml2YXRlXG4vLy9cbi8vLyBAcGFyYW0ge1N0cmluZ30gJGtleSAtIEtleSB0byB1c2UgYXMgbGFzdCBicmVha3BvaW50LlxuLy8vXG4vLy8gQHJldHVybnMge0FycmF5fSBUaGUgbGlzdCBvZiBicmVha3BvaW50cyB1cCB0byBhbmQuIElmICRrZXkgaXMgYXV0bywgcmV0dXJucyBicmVha3BvaW50cyBhYm92ZSB0aGUgemVyb1xuQGZ1bmN0aW9uIC16Zi1icmVha3BvaW50cy1sZXNzLXRoYW4oJGtleSkge1xuICAkbGlzdDogKCk7XG4gICRmb3VuZF9rZXk6IGZhbHNlO1xuXG4gIEBlYWNoICRuYW1lIGluICQtemYtYnJlYWtwb2ludHMta2V5cyB7XG4gICAgQGlmICgkbmFtZSA9PSAka2V5KSB7XG4gICAgICAkZm91bmRfa2V5OiB0cnVlO1xuICAgIH1cbiAgICBAaWYgbm90ICRmb3VuZF9rZXkge1xuICAgICAgJGxpc3Q6IGFwcGVuZCgkbGlzdCwgJG5hbWUpO1xuICAgIH1cbiAgfVxuICBAcmV0dXJuICRsaXN0O1xufVxuXG4vLy8gUmV0dXJuIGEgbGlzdCBvZiBvdXIgbmFtZWQgYnJlYWtwb2ludHMgbGVzcyB0aGFuICRrZXkuIFVzZWZ1bCBmb3IgZGVhbGluZyB3aXRoXG4vLy8gcmVzcG9uc2l2ZSBndXR0ZXJzIGZvciB0aGUgZ3JpZC5cbi8vLyBAYWNjZXNzIHByaXZhdGVcbi8vL1xuLy8vIEBwYXJhbSB7U3RyaW5nfSAkYnJlYWtwb2luZyAtIGEgbmFtZWQgb3Igbm9uLW5hbWVkIGJyZWFrcG9pbmcuXG4vLy9cbi8vLyBAcmV0dXJucyB7QXJyYXl9IFRoZSBsaXN0IG9mIGJyZWFrcG9pbnRzIHVwIHRvIGFuZC4gSWYgJGtleSBpcyBhdXRvLCByZXR1cm5zIGJyZWFrcG9pbnRzIGFib3ZlIHRoZSB6ZXJvXG5AZnVuY3Rpb24gLXpmLWNsb3Nlc3QtbmFtZWQtYnJlYWtwb2ludCgkYnJlYWtwb2ludCkge1xuICAkbGFzdDogJC16Zi16ZXJvLWJyZWFrcG9pbnQ7XG4gICRmb3VuZDogZmFsc2U7XG5cbiAgJHZhbHVlOiB1bml0bGVzcy1jYWxjKCRicmVha3BvaW50LCAxcHgpO1xuICBAZWFjaCAka2V5LCAkdmFsIGluICRicmVha3BvaW50cyB7XG4gICAgQGlmIG5vdCAkZm91bmQge1xuICAgICAgQGlmIHVuaXRsZXNzLWNhbGMoJHZhbCkgPiAkdmFsdWUge1xuICAgICAgICAkZm91bmQ6IHRydWU7XG4gICAgICB9IEBlbHNlIHtcbiAgICAgICAgJGxhc3Q6ICRrZXk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgQHJldHVybiAkbGFzdDtcbn1cblxuLy8vIEdldCBhIHZhbHVlIGZvciBhIGJyZWFrcG9pbnQgZnJvbSBhIHJlc3BvbnNpdmUgY29uZmlnIG1hcCBvciBzaW5nbGUgdmFsdWUuXG4vLy8gLSBJZiB0aGUgY29uZmlnIGlzIGEgc2luZ2xlIHZhbHVlLCByZXR1cm4gaXQgcmVnYXJkbGVzcyBvZiBgJHZhbHVlYC5cbi8vLyAtIElmIHRoZSBjb25maWcgaXMgYSBtYXAgYW5kIGhhcyB0aGUga2V5IGAkdmFsdWVgLCB0aGUgZXhhY3QgYnJlYWtwb2ludCB2YWx1ZSBpcyByZXR1cm5lZC5cbi8vLyAtIElmIHRoZSBjb25maWcgaXMgYSBtYXAgYW5kIGRvZXMgKm5vdCogaGF2ZSB0aGUgYnJlYWtwb2ludCwgdGhlIHZhbHVlIG1hdGNoaW5nIHRoZSBuZXh0IGxvd2VzdCBicmVha3BvaW50IGluIHRoZSBjb25maWcgbWFwIGlzIHJldHVybmVkLlxuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuLy8vXG4vLy8gQHBhcmFtIHtOdW1iZXJ8TWFwfSAkbWFwIC0gUmVzcG9uc2l2ZSBjb25maWcgbWFwIG9yIHNpbmdsZSB2YWx1ZS5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICR2YWx1ZSAtIEJyZWFrcG9pbnQgbmFtZSB0byB1c2UuXG4vLy9cbi8vLyBAcmV0dXJuIHtNaXhlZH0gVGhlIGNvcnJlc3BvbmRpbmcgYnJlYWtwb2ludCB2YWx1ZS5cbkBmdW5jdGlvbiAtemYtZ2V0LWJwLXZhbCgkbWFwLCAkdmFsdWUpIHtcbiAgLy8gSWYgdGhlIGdpdmVuIG1hcCBpcyBhIHNpbmdsZSB2YWx1ZSwgcmV0dXJuIGl0XG4gIEBpZiB0eXBlLW9mKCRtYXApID09ICdudW1iZXInIHtcbiAgICBAcmV0dXJuICRtYXA7XG4gIH1cblxuXG4gIC8vIENoZWNrIGlmIHRoZSBicmVha3BvaW50IG5hbWUgZXhpc3RzIGdsb2JhbGx5XG4gIEBpZiBub3QgbWFwLWhhcy1rZXkoJGJyZWFrcG9pbnRzLCAkdmFsdWUpIHtcbiAgICBAaWYgdHlwZS1vZigkdmFsdWUpID09ICdudW1iZXInIHtcbiAgICAgICR2YWx1ZTogLXpmLWNsb3Nlc3QtbmFtZWQtYnJlYWtwb2ludCgkdmFsdWUpO1xuICAgIH0gQGVsc2Uge1xuICAgICAgQHJldHVybiBudWxsO1xuICAgIH1cbiAgfVxuICAvLyBDaGVjayBpZiB0aGUgYnJlYWtwb2ludCBuYW1lIGV4aXN0cyBpbiB0aGUgbG9jYWwgY29uZmlnIG1hcFxuICBAZWxzZSBpZiBtYXAtaGFzLWtleSgkbWFwLCAkdmFsdWUpIHtcbiAgICAvLyBJZiBpdCBkb2VzLCBqdXN0IHJldHVybiB0aGUgdmFsdWVcbiAgICBAcmV0dXJuIG1hcC1nZXQoJG1hcCwgJHZhbHVlKTtcbiAgfVxuICAvLyBPdGhlcndpc2UsIGZpbmQgdGhlIG5leHQgbG93ZXN0IGJyZWFrcG9pbnQgYW5kIHJldHVybiB0aGF0IHZhbHVlXG4gIEBlbHNlIHtcbiAgICAkYW5jaG9yOiBudWxsO1xuICAgICRmb3VuZDogZmFsc2U7XG5cbiAgICBAZWFjaCAka2V5LCAkdmFsIGluICRicmVha3BvaW50cyB7XG4gICAgICBAaWYgbm90ICRmb3VuZCB7XG4gICAgICAgIEBpZiBtYXAtaGFzLWtleSgkbWFwLCAka2V5KSB7XG4gICAgICAgICAgJGFuY2hvcjogJGtleTtcbiAgICAgICAgfVxuICAgICAgICBAaWYgJGtleSA9PSAkdmFsdWUge1xuICAgICAgICAgICRmb3VuZDogdHJ1ZTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIEByZXR1cm4gbWFwLWdldCgkbWFwLCAkYW5jaG9yKTtcbiAgfVxufVxuXG5AaWYgbWFwLWhhcy1rZXkoJGJyZWFrcG9pbnRzLCBzbWFsbCkge1xuICAkc21hbGwtdXA6IHNjcmVlbjtcbiAgJHNtYWxsLW9ubHk6IHVucXVvdGUoJ3NjcmVlbiBhbmQgI3ticmVha3BvaW50KHNtYWxsIG9ubHkpfScpO1xufVxuXG5AaWYgbWFwLWhhcy1rZXkoJGJyZWFrcG9pbnRzLCBtZWRpdW0pIHtcbiAgJG1lZGl1bS11cDogdW5xdW90ZSgnc2NyZWVuIGFuZCAje2JyZWFrcG9pbnQobWVkaXVtKX0nKTtcbiAgJG1lZGl1bS1vbmx5OiB1bnF1b3RlKCdzY3JlZW4gYW5kICN7YnJlYWtwb2ludChtZWRpdW0gb25seSl9Jyk7XG59XG5cbkBpZiBtYXAtaGFzLWtleSgkYnJlYWtwb2ludHMsIGxhcmdlKSB7XG4gICRsYXJnZS11cDogdW5xdW90ZSgnc2NyZWVuIGFuZCAje2JyZWFrcG9pbnQobGFyZ2UpfScpO1xuICAkbGFyZ2Utb25seTogdW5xdW90ZSgnc2NyZWVuIGFuZCAje2JyZWFrcG9pbnQobGFyZ2Ugb25seSl9Jyk7XG59XG5cbkBpZiBtYXAtaGFzLWtleSgkYnJlYWtwb2ludHMsIHhsYXJnZSkge1xuICAkeGxhcmdlLXVwOiB1bnF1b3RlKCdzY3JlZW4gYW5kICN7YnJlYWtwb2ludCh4bGFyZ2UpfScpO1xuICAkeGxhcmdlLW9ubHk6IHVucXVvdGUoJ3NjcmVlbiBhbmQgI3ticmVha3BvaW50KHhsYXJnZSBvbmx5KX0nKTtcbn1cblxuQGlmIG1hcC1oYXMta2V5KCRicmVha3BvaW50cywgeHhsYXJnZSkge1xuICAkeHhsYXJnZS11cDogdW5xdW90ZSgnc2NyZWVuIGFuZCAje2JyZWFrcG9pbnQoeHhsYXJnZSl9Jyk7XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCByZXZlYWxcbi8vLy9cblxuLy8vIERlZmF1bHQgYmFja2dyb3VuZCBjb2xvciBvZiBhIG1vZGFsLlxuLy8vIEB0eXBlIENvbG9yXG4kcmV2ZWFsLWJhY2tncm91bmQ6ICR3aGl0ZSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgd2lkdGggb2YgYSBtb2RhbCwgd2l0aCBubyBjbGFzcyBhcHBsaWVkLlxuLy8vIEB0eXBlIE51bWJlclxuJHJldmVhbC13aWR0aDogNjAwcHggIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IG1heGltdW0gd2lkdGggb2YgYSBtb2RhbC5cbi8vLyBAdHlwZSBOdW1iZXJcbiRyZXZlYWwtbWF4LXdpZHRoOiAkZ2xvYmFsLXdpZHRoICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBwYWRkaW5nIGluc2lkZSBhIG1vZGFsLlxuLy8vIEB0eXBlIE51bWJlclxuJHJldmVhbC1wYWRkaW5nOiAkZ2xvYmFsLXBhZGRpbmcgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGJvcmRlciBhcm91bmQgYSBtb2RhbC5cbi8vLyBAdHlwZSBOdW1iZXJcbiRyZXZlYWwtYm9yZGVyOiAxcHggc29saWQgJG1lZGl1bS1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCByYWRpdXMgZm9yIG1vZGFsLlxuLy8vIEB0eXBlIE51bWJlclxuJHJldmVhbC1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzICFkZWZhdWx0O1xuXG4vLy8gei1pbmRleCBmb3IgbW9kYWxzLiBUaGUgb3ZlcmxheSB1c2VzIHRoaXMgdmFsdWUsIHdoaWxlIHRoZSBtb2RhbCBpdHNlbGYgdXNlcyB0aGlzIHZhbHVlIHBsdXMgb25lLlxuLy8vIEB0eXBlIE51bWJlclxuJHJldmVhbC16aW5kZXg6IDEwMDUgIWRlZmF1bHQ7XG5cbi8vLyBCYWNrZ3JvdW5kIGNvbG9yIG9mIG1vZGFsIG92ZXJsYXlzLlxuLy8vIEB0eXBlIENvbG9yXG4kcmV2ZWFsLW92ZXJsYXktYmFja2dyb3VuZDogcmdiYSgkYmxhY2ssIDAuNDUpICFkZWZhdWx0O1xuXG5cbi8vIFBsYWNlaG9sZGVyIHNlbGVjdG9yIGZvciBtZWRpdW0tYW5kLXVwIG1vZGFsc1xuLy8gUHJldmVudHMgZHVwbGljYXRlIENTUyB3aGVuIGRlZmluaW5nIG11bHRpcGxlIFJldmVhbCBzaXplc1xuQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgJXJldmVhbC1jZW50ZXJlZCB7XG4gICAgcmlnaHQ6IGF1dG87XG4gICAgbGVmdDogYXV0bztcbiAgICBtYXJnaW46IDAgYXV0bztcbiAgfVxufVxuXG5cbi8vLyBBZGRzIHN0eWxlcyBmb3IgYSBtb2RhbCBvdmVybGF5LlxuLy8vIEBwYXJhbSB7Q29sb3J9ICRiYWNrZ3JvdW5kIFskcmV2ZWFsLW92ZXJsYXktYmFja2dyb3VuZF0gLSBCYWNrZ3JvdW5kIGNvbG9yIG9mIHRoZSBvdmVybGF5LlxuQG1peGluIHJldmVhbC1vdmVybGF5KCRiYWNrZ3JvdW5kOiAkcmV2ZWFsLW92ZXJsYXktYmFja2dyb3VuZCkge1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IDA7XG4gIGJvdHRvbTogMDtcbiAgbGVmdDogMDtcbiAgei1pbmRleDogJHJldmVhbC16aW5kZXg7XG5cbiAgZGlzcGxheTogbm9uZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGJhY2tncm91bmQ7XG4gIG92ZXJmbG93LXk6IHNjcm9sbDtcbn1cblxuLy8vIEFkZHMgYmFzZSBzdHlsZXMgZm9yIGEgbW9kYWwuXG5AbWl4aW4gcmV2ZWFsLW1vZGFsLWJhc2Uge1xuICBAaW5jbHVkZSBkaXNhYmxlLW1vdXNlLW91dGxpbmU7XG4gIHotaW5kZXg6ICRyZXZlYWwtemluZGV4ICsgMTtcbiAgLy8gV29ya2Fyb3VuZCBhbmRyb2lkIGJyb3dzZXIgei1pbmRleCBidWdcbiAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuXG4gIGRpc3BsYXk6IG5vbmU7XG4gIHBhZGRpbmc6ICRyZXZlYWwtcGFkZGluZztcblxuICBib3JkZXI6ICRyZXZlYWwtYm9yZGVyO1xuICBib3JkZXItcmFkaXVzOiAkcmV2ZWFsLXJhZGl1cztcbiAgYmFja2dyb3VuZC1jb2xvcjogJHJldmVhbC1iYWNrZ3JvdW5kO1xuXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgbWluLWhlaWdodDogMDtcbiAgfVxuXG4gIC8vIE1ha2Ugc3VyZSByb3dzIGRvbid0IGhhdmUgYSBtaW4td2lkdGggb24gdGhlbVxuICAuY29sdW1uIHtcbiAgICBtaW4td2lkdGg6IDA7XG4gIH1cblxuICAvLyBTdHJpcCBtYXJnaW5zIGZyb20gdGhlIGxhc3QgaXRlbSBpbiB0aGUgbW9kYWxcbiAgPiA6bGFzdC1jaGlsZCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgfVxufVxuXG4vLy8gQWRqdXN0cyB0aGUgd2lkdGggb2YgYSBtb2RhbC5cbi8vLyBAcGFyYW0ge051bWJlcn0gJHdpZHRoIC0gV2lkdGggb2YgdGhlIG1vZGFsLiBHZW5lcmFsbHkgYSBwZXJjZW50YWdlLlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkbWF4LXdpZHRoIFskcmV2ZWFsLW1heC13aWR0aF0gLSBNYXhpbXVtIHdpZHRoIG9mIHRoZSBtb2RhbC5cbkBtaXhpbiByZXZlYWwtbW9kYWwtd2lkdGgoXG4gICR3aWR0aDogJHJldmVhbC13aWR0aCxcbiAgJG1heC13aWR0aDogJHJldmVhbC1tYXgtd2lkdGhcbikge1xuICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgIEBleHRlbmQgJXJldmVhbC1jZW50ZXJlZDtcbiAgICB3aWR0aDogJHdpZHRoO1xuICAgIG1heC13aWR0aDogJG1heC13aWR0aDtcbiAgfVxufVxuXG4vLy8gQ3JlYXRlcyBhIGZ1bGwtc2NyZWVuIG1vZGFsLCB3aGljaCBzdHJldGNoZXMgdGhlIGZ1bGwgd2lkdGggYW5kIGhlaWdodCBvZiB0aGUgd2luZG93LlxuQG1peGluIHJldmVhbC1tb2RhbC1mdWxsc2NyZWVuIHtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuXG4gIHdpZHRoOiAxMDAlO1xuICBtYXgtd2lkdGg6IG5vbmU7XG4gIGhlaWdodDogMTAwJTtcbiAgaGVpZ2h0OiAxMDB2aDsgLy8gc2Fzcy1saW50OmRpc2FibGUtbGluZSBuby1kdXBsaWNhdGUtcHJvcGVydGllc1xuICBtaW4taGVpZ2h0OiAxMDB2aDtcbiAgbWFyZ2luLWxlZnQ6IDA7XG5cbiAgYm9yZGVyOiAwO1xuICBib3JkZXItcmFkaXVzOiAwO1xufVxuXG5AbWl4aW4gZm91bmRhdGlvbi1yZXZlYWwge1xuICAvLyBbVE9ET10gSXMgdGhpcyBuZWNlc3Nhcnk/XG4gIGJvZHkuaXMtcmV2ZWFsLW9wZW4geyAvLyBzYXNzLWxpbnQ6ZGlzYWJsZS1saW5lIG5vLXF1YWxpZnlpbmctZWxlbWVudHNcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICB9XG5cbiAgLy8gaHRtbCBnZXRzIHRoaXMgY2xhc3Mgb25seSBpbiBpT1NcbiAgaHRtbC5pcy1yZXZlYWwtb3BlbixcbiAgaHRtbC5pcy1yZXZlYWwtb3BlbiBib2R5IHtcbiAgICBtaW4taGVpZ2h0OiAxMDAlO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgcG9zaXRpb246IGZpeGVkO1xuICAgIHVzZXItc2VsZWN0OiBub25lO1xuICB9XG5cbiAgLy8gT3ZlcmxheVxuICAucmV2ZWFsLW92ZXJsYXkge1xuICAgIEBpbmNsdWRlIHJldmVhbC1vdmVybGF5O1xuICB9XG5cbiAgLy8gTW9kYWwgY29udGFpbmVyXG4gIC5yZXZlYWwge1xuICAgIEBpbmNsdWRlIHJldmVhbC1tb2RhbC1iYXNlO1xuICAgIEBpbmNsdWRlIHJldmVhbC1tb2RhbC13aWR0aCgkcmV2ZWFsLXdpZHRoKTtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgdG9wOiAxMDBweDtcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgb3ZlcmZsb3cteTogYXV0bztcblxuICAgIC8vIFJlbW92ZSBwYWRkaW5nXG4gICAgJi5jb2xsYXBzZSB7XG4gICAgICBwYWRkaW5nOiAwO1xuICAgIH1cblxuICAgIC8vIFNpemluZyBjbGFzc2VzXG4gICAgJi50aW55ICB7IEBpbmNsdWRlIHJldmVhbC1tb2RhbC13aWR0aCgzMCUpOyB9XG4gICAgJi5zbWFsbCB7IEBpbmNsdWRlIHJldmVhbC1tb2RhbC13aWR0aCg1MCUpOyB9XG4gICAgJi5sYXJnZSB7IEBpbmNsdWRlIHJldmVhbC1tb2RhbC13aWR0aCg5MCUpOyB9XG5cbiAgICAvLyBGdWxsLXNjcmVlbiBtb2RlXG4gICAgJi5mdWxsIHtcbiAgICAgIEBpbmNsdWRlIHJldmVhbC1tb2RhbC1mdWxsc2NyZWVuO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJC16Zi16ZXJvLWJyZWFrcG9pbnQgb25seSkge1xuICAgICAgQGluY2x1ZGUgcmV2ZWFsLW1vZGFsLWZ1bGxzY3JlZW47XG4gICAgfVxuXG4gICAgJi53aXRob3V0LW92ZXJsYXkge1xuICAgICAgcG9zaXRpb246IGZpeGVkO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gZ2VuZXJhdGUgdmFsdWUgYXMgbXVsdGlwbGUgb2YgOFxuQGZ1bmN0aW9uIHZhbHVlXzhwb2ludF9nZW5lcmF0b3JfcmVtKCRtdWx0aXBsZSkge1xuXHRAcmV0dXJuICRtdWx0aXBsZSAqIDAuNXJlbTsgLy8gOHB4XG59XG5cbi8vIGNyZWF0ZSBzcGFjaW5nIGNsYXNzZXNcbkBtaXhpbiBjcmVhdGUtc3BhY2luZy1jbGFzcygkbnVtLCAkdmFsLCAkYnJlYWtwb2ludDogZmFsc2UsICRpbXBvcnRhbnQ6IGZhbHNlKSB7XG5cdEBlYWNoICRzcGFjaW5nLXR5cGUsICR0eXBlIGluICRzcGFjaW5nLXR5cGVzIHtcblx0XHRAZWFjaCAkZWxlbWVudC1zaWRlLCAkc2lkZSBpbiAkZWxlbWVudC1zaWRlcyB7XG5cdFx0XHQuI3skdHlwZX0jeyRzaWRlfS0jeyRudW19IHtcblx0XHRcdFx0QGlmICRpbXBvcnRhbnQgPT0gdHJ1ZSB7XG5cdFx0XHRcdFx0I3skc3BhY2luZy10eXBlfS0jeyRlbGVtZW50LXNpZGV9OiAjeyR2YWx9ICFpbXBvcnRhbnQ7XG5cdFx0XHRcdH0gQGVsc2Uge1xuXHRcdFx0XHRcdCN7JHNwYWNpbmctdHlwZX0tI3skZWxlbWVudC1zaWRlfTogI3skdmFsfTtcblx0XHRcdFx0fVxuXHRcdFx0fVxuXG5cdFx0XHRAaWYgKCRicmVha3BvaW50KSB7XG5cdFx0XHRcdC4jeyR0eXBlfSN7JHNpZGV9LSN7JGJyZWFrcG9pbnR9LSN7JG51bX0ge1xuXHRcdFx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQoI3skYnJlYWtwb2ludH0pIHtcblx0XHRcdFx0XHRcdCN7JHNwYWNpbmctdHlwZX0tI3skZWxlbWVudC1zaWRlfTogI3skdmFsfSAhaW1wb3J0YW50O1xuXHRcdFx0XHRcdH1cblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdH1cblx0fVxufVxuXG4vLyBjcmVhdGUgc3BhY2luZyBjbGFzcyBmb3IgemVybyAoaS5lLiByZW1vdmUgc3BhY2luZylcbkBpbmNsdWRlIGNyZWF0ZS1zcGFjaW5nLWNsYXNzKDAsIDAsIGZhbHNlLCB0cnVlKTtcbkBpbmNsdWRlIGNyZWF0ZS1zcGFjaW5nLWNsYXNzKDAsIDAsICdsYXJnZScsIHRydWUpO1xuXG4vLyBzZXQgbXVsdGlwbGVzIGZvciBlYWNoIHNwYWNpbmcgY2xhc3MgbGV2ZWxcbiRzcGFjaW5nLWNsYXNzLWNvdW50OiAoXG5cdDE6IDAuMTI1LFxuXHQyOiAwLjI1LFxuXHQzOiAwLjUsXG5cdDQ6IDEsXG5cdDU6IDEuNVxuKTtcblxuQGVhY2ggJGNvdW50LCAkbXVsdGlwbGUgaW4gJHNwYWNpbmctY2xhc3MtY291bnQge1xuXHRAaW5jbHVkZSBjcmVhdGUtc3BhY2luZy1jbGFzcygkY291bnQsIG1hcC1nZXQoJHNlY3Rpb24tcGFkZGluZy1sZWZ0cmlnaHQsIG1lZGl1bSkgKiAoJG11bHRpcGxlICogMikpO1xuXHRAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuXHRcdEBpbmNsdWRlIGNyZWF0ZS1zcGFjaW5nLWNsYXNzKCRjb3VudCwgbWFwLWdldCgkc2VjdGlvbi1wYWRkaW5nLWxlZnRyaWdodCwgbGFyZ2UpICogJG11bHRpcGxlLCAnbWVkaXVtJyk7XG5cdH1cblx0QGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuXHRcdEBpbmNsdWRlIGNyZWF0ZS1zcGFjaW5nLWNsYXNzKCRjb3VudCwgbWFwLWdldCgkc2VjdGlvbi1wYWRkaW5nLWxlZnRyaWdodCwgbGFyZ2UpICogJG11bHRpcGxlLCAnbGFyZ2UnKTtcblx0fVxuXHRAaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSkge1xuXHRcdEBpbmNsdWRlIGNyZWF0ZS1zcGFjaW5nLWNsYXNzKCRjb3VudCwgbWFwLWdldCgkc2VjdGlvbi1wYWRkaW5nLWxlZnRyaWdodCwgeGxhcmdlKSAqICRtdWx0aXBsZSwgJ3hsYXJnZScpO1xuXHR9XG5cdEBpbmNsdWRlIGJyZWFrcG9pbnQoeHhsYXJnZSkge1xuXHRcdEBpbmNsdWRlIGNyZWF0ZS1zcGFjaW5nLWNsYXNzKCRjb3VudCwgbWFwLWdldCgkc2VjdGlvbi1wYWRkaW5nLWxlZnRyaWdodCwgeHhsYXJnZSkgKiAkbXVsdGlwbGUsICd4eGxhcmdlJyk7XG5cdH1cbn1cblxuLy8gY3JlYXRlIHNwYWNpbmcgY2xhc3NlcyBmb3IgYWxsIG11bHRpcGxlcyBvZiA4IHVwIHRvIDggKiA0NFxuLy8gOCBwdCBncmlkXG4kbGltaXQtOHB0OiA0NDtcbkBmb3IgJGkgZnJvbSAxIHRocm91Z2ggJGxpbWl0LThwdCB7XG5cdCRwb3N0Zml4OiAjeyRpfV84cHQ7XG5cdEBpbmNsdWRlIGNyZWF0ZS1zcGFjaW5nLWNsYXNzKCRwb3N0Zml4LCB2YWx1ZV84cG9pbnRfZ2VuZXJhdG9yX3JlbSgkaSkpO1xufVxuXG4vLyBjcmVhdGUgdGV4dCBjb2xvciBjbGFzc2VzXG5AZWFjaCAkdGV4dGNvbG9yLCAkY29sb3IgaW4gJHRleHQtY29sb3JzIHtcblx0LnRleHQtLSN7JHRleHRjb2xvcn0ge1xuXHRcdGNvbG9yOiAkY29sb3IgIWltcG9ydGFudDtcblx0fVxufVxuLy8gY3JlYXRlIGJhY2tncm91bmQgY29sb3IgY2xhc3Nlc1xuQGVhY2ggJGJnY29sb3IsICRjb2xvciBpbiAkYmFja2dyb3VuZC1jb2xvcnMge1xuXHQuYmctLSN7JGJnY29sb3J9IHtcblx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3IgIWltcG9ydGFudDtcblx0fVxufVxuLy8gY3JlYXRlIGJhY2tncm91bmQgZ3JhZGllbnQgY2xhc3Nlc1xuQGVhY2ggJGJnZ3JhZGllbnQsICRncmFkaWVudCBpbiAkZ3JhZGllbnRzIHtcbiAgLmJnLS0jeyRiZ2dyYWRpZW50fSB7XG4gICAgYmFja2dyb3VuZDogJGdyYWRpZW50IG5vLXJlcGVhdCAhaW1wb3J0YW50O1xuICB9XG59XG5cbi5saXN0LXN0eWxlLS1ub25lIHtcblx0bGlzdC1zdHlsZTogbm9uZTtcblx0bWFyZ2luLWxlZnQ6IDA7XG59XG5cbi5jbGVhcmZpeDo6YmVmb3JlLCAuY2xlYXJmaXg6OmFmdGVyIHtcblx0Y29udGVudDogJyAnO1xuXHRkaXNwbGF5OiB0YWJsZTtcblx0Y2xlYXI6IGJvdGg7XG59XG5cbi5mbGV4LWhhbGlnbi1jZW50ZXIge1xuXHRkaXNwbGF5OiBmbGV4O1xuXHQtd2Via2l0LWJveC1wYWNrOiBjZW50ZXI7XG5cdC13ZWJraXQtanVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG5cdC1tcy1mbGV4LXBhY2s6IGNlbnRlcjtcblx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG59XG5cbi5mbGV4LXZhbGlnbi1jZW50ZXIge1xuXHRkaXNwbGF5OiBmbGV4O1xuXHRhbGlnbi1pdGVtczogY2VudGVyO1xufVxuXG4lY2xlYXJmaXgge1xuXHQmOmFmdGVyIHtcblx0XHRjb250ZW50OiAnJztcblx0XHRkaXNwbGF5OiB0YWJsZTtcblx0XHRjbGVhcjogYm90aDtcblx0fVxufVxuXG4vLyBUaGlzIGNsYXNzIGlzIGV4dGVuZGVkIGEgbnVtYmVyIG9mIHBsYWNlcy4gbWFrZSBzdXJlIHRvIGJlIGNhcmVmdWwgd2hlbiBlZGl0aW5nLiBBbHNvIGtlZXAgdGhpcyBhIGNsYXNzIHZzIGEgJSBzbyB0aGF0IHdlIGNhbiB1c2UgaXQgaW4gdGhlIERPTSBpZiBuZWVkZWRcbi5oYXMtYmctaW1nIHtcblx0YmFja2dyb3VuZC1zaXplOiBjb3Zlcjtcblx0YmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuXHRiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiAkbGlnaHRlc3QtZ3JheTtcbn1cbiIsIi8vICBGb3VuZGF0aW9uUHJlc3Mgc2V0dGluZ3MuXG4vLyAgQmFzZWQgb24gRm91bmRhdGlvbiBmb3IgU2l0ZXMgdjYuNC4zXG4vLyAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi8vXG4vLyAgVGFibGUgb2YgQ29udGVudHM6XG4vL1xuLy8gICAxLiBHbG9iYWxcbi8vICAgMi4gQnJlYWtwb2ludHNcbi8vICAgMy4gVGhlIEdyaWRcbi8vICAgNC4gQmFzZSBUeXBvZ3JhcGh5XG4vLyAgIDUuIFR5cG9ncmFwaHkgSGVscGVyc1xuLy8gICA2LiBBYmlkZVxuLy8gICA3LiBBY2NvcmRpb25cbi8vICAgOC4gQWNjb3JkaW9uIE1lbnVcbi8vICAgOS4gQmFkZ2Vcbi8vICAxMC4gQnJlYWRjcnVtYnNcbi8vICAxMS4gQnV0dG9uXG4vLyAgMTIuIEJ1dHRvbiBHcm91cFxuLy8gIDEzLiBDYWxsb3V0XG4vLyAgMTQuIENhcmRcbi8vICAxNS4gQ2xvc2UgQnV0dG9uXG4vLyAgMTYuIERyaWxsZG93blxuLy8gIDE3LiBEcm9wZG93blxuLy8gIDE4LiBEcm9wZG93biBNZW51XG4vLyAgMTkuIEZsZXhib3ggVXRpbGl0aWVzXG4vLyAgMjAuIEZvcm1zXG4vLyAgMjEuIExhYmVsXG4vLyAgMjIuIE1lZGlhIE9iamVjdFxuLy8gIDIzLiBNZW51XG4vLyAgMjQuIE1ldGVyXG4vLyAgMjUuIE9mZi1jYW52YXNcbi8vICAyNi4gT3JiaXRcbi8vICAyNy4gUGFnaW5hdGlvblxuLy8gIDI4LiBQcm9ncmVzcyBCYXJcbi8vICAyOS4gUHJvdG90eXBlIEFycm93XG4vLyAgMzAuIFByb3RvdHlwZSBCb3JkZXItQm94XG4vLyAgMzEuIFByb3RvdHlwZSBCb3JkZXItTm9uZVxuLy8gIDMyLiBQcm90b3R5cGUgQm9yZGVyZWRcbi8vICAzMy4gUHJvdG90eXBlIERpc3BsYXlcbi8vICAzNC4gUHJvdG90eXBlIEZvbnQtU3R5bGluZ1xuLy8gIDM1LiBQcm90b3R5cGUgTGlzdC1TdHlsZS1UeXBlXG4vLyAgMzYuIFByb3RvdHlwZSBPdmVyZmxvd1xuLy8gIDM3LiBQcm90b3R5cGUgUG9zaXRpb25cbi8vICAzOC4gUHJvdG90eXBlIFJvdW5kZWRcbi8vICAzOS4gUHJvdG90eXBlIFNlcGFyYXRvclxuLy8gIDQwLiBQcm90b3R5cGUgU2hhZG93XG4vLyAgNDEuIFByb3RvdHlwZSBTaXppbmdcbi8vICA0Mi4gUHJvdG90eXBlIFNwYWNpbmdcbi8vICA0My4gUHJvdG90eXBlIFRleHQtRGVjb3JhdGlvblxuLy8gIDQ0LiBQcm90b3R5cGUgVGV4dC1UcmFuc2Zvcm1hdGlvblxuLy8gIDQ1LiBQcm90b3R5cGUgVGV4dC1VdGlsaXRpZXNcbi8vICA0Ni4gUmVzcG9uc2l2ZSBFbWJlZFxuLy8gIDQ3LiBSZXZlYWxcbi8vICA0OC4gU2xpZGVyXG4vLyAgNDkuIFN3aXRjaFxuLy8gIDUwLiBUYWJsZVxuLy8gIDUxLiBUYWJzXG4vLyAgNTIuIFRodW1ibmFpbFxuLy8gIDUzLiBUaXRsZSBCYXJcbi8vICA1NC4gVG9vbHRpcFxuLy8gIDU1LiBUb3AgQmFyXG4vLyAgNTYuIFh5IEdyaWRcblxuQGltcG9ydCAndXRpbC91dGlsJztcbi8vIEBpbXBvcnQgJ2dsb2JhbC9jb2xvcnMnO1xuXG4vLyAxLiBHbG9iYWxcbi8vIC0tLS0tLS0tLVxuXG4kZ2xvYmFsLWZvbnQtc2l6ZTogMTAwJTtcbiRnbG9iYWwtd2lkdGg6IHJlbS1jYWxjKDE0NDApO1xuJGdsb2JhbC1saW5laGVpZ2h0OiAxLjU7XG4vL2ZvbnRzXG4kZm9udC1yZWd1bGFyOlwiZ29yZGl0YXJlZ3VsYXJcIiwgLWFwcGxlLXN5c3RlbSwgQmxpbmtNYWNTeXN0ZW1Gb250LCBcIlNlZ29lIFVJXCIsIFwiUm9ib3RvXCIsIFwiT3h5Z2VuXCIsIFwiVWJ1bnR1XCIsIFwiQ2FudGFyZWxsXCIsIFwiRmlyYSBTYW5zXCIsIFwiRHJvaWQgU2Fuc1wiLCBcIkhlbHZldGljYSBOZXVlXCIsIHNhbnMtc2VyaWY7XG4kZm9udC1tZWRpdW06J2dvcmRpdGFtZWRpdW0nLCAtYXBwbGUtc3lzdGVtLCBCbGlua01hY1N5c3RlbUZvbnQsIFwiU2Vnb2UgVUlcIiwgXCJSb2JvdG9cIiwgXCJPeHlnZW5cIiwgXCJVYnVudHVcIiwgXCJDYW50YXJlbGxcIiwgXCJGaXJhIFNhbnNcIiwgXCJEcm9pZCBTYW5zXCIsIFwiSGVsdmV0aWNhIE5ldWVcIiwgc2Fucy1zZXJpZjtcbiRmb250LWJvbGQ6XCJnb3JkaXRhYm9sZFwiLCAtYXBwbGUtc3lzdGVtLCBCbGlua01hY1N5c3RlbUZvbnQsIFwiU2Vnb2UgVUlcIiwgXCJSb2JvdG9cIiwgXCJPeHlnZW5cIiwgXCJVYnVudHVcIiwgXCJDYW50YXJlbGxcIiwgXCJGaXJhIFNhbnNcIiwgXCJEcm9pZCBTYW5zXCIsIFwiSGVsdmV0aWNhIE5ldWVcIiwgc2Fucy1zZXJpZjtcbi8vIGRlZmluZSBjdXN0b20gY29sb3IgcGFsbGV0IGhlcmUsIHRoZW4gY2FycnkgdGhlc2UgdmFyaWFibGVzIGRvd24gdG8gdGhlIGRlZmF1bHQgcGFsbGV0cyAmIHZhcmlhYmxlcyBkZWZpbmVkIGJlbG93XG4kdHVycXVvaXNlOiAjMkRDOUQ3O1xuJHN1cGVybm92YTogI0ZDQjUzNjtcbiR0dXJ0bGUtZ3JlZW46IHJnYigzLCA0OCwgNTIpO1xuJG5pZ2h0LXJpZGVyOiAjMzMzMzMzO1xuJHJ1bmtlZXBlci1ibGFjazogIzIxMjEyMTtcbiRhc2ljcy1ibHVlOiAjMDAxRTYyO1xuXG4kZm91bmRhdGlvbi1wYWxldHRlOiAoXG4gIHByaW1hcnk6ICR0dXJxdW9pc2UsXG4gIHNlY29uZGFyeTogJHN1cGVybm92YSxcbiAgc3VjY2VzczogIzNhZGI3NixcbiAgd2FybmluZzogI2ZmYWUwMCxcbiAgYWxlcnQ6ICNjYzRiMzcsXG4pO1xuXG5AaW5jbHVkZSBhZGQtZm91bmRhdGlvbi1jb2xvcnM7XG5cbiRwcmltYXJ5LWEyMDpyZ2JhKCRwcmltYXJ5LWNvbG9yLCAwLjIpO1xuLy8gTkVVVFJBTFNcbi8vIGxpZ2h0ZXN0XG4kd2hpdGU6ICNmZmZmZmY7XG4kYWxtb3N0LXdoaXRlOiAjRjVGNUY1O1xuJGxpZ2h0ZXN0LWdyYXk6I2Y3ZjdmNztcbiRsaWdodC1ncmF5OiAjZTZlNmU2O1xuJG1lZGl1bS1ncmF5OiAjY2FjYWNhO1xuJGRhcmstZ3JheTogIzhhOGE4YTtcblxuJGxpZ2h0LWdyZXk6ICRsaWdodC1ncmF5O1xuJG1lZGl1bS1ncmV5OiAkbWVkaXVtLWdyYXk7XG4kZGFyay1ncmV5OiAkZGFyay1ncmF5O1xuXG4kYWxtb3N0LWJsYWNrOiAkcnVua2VlcGVyLWJsYWNrO1xuJGJsYWNrOiAjMDAwMDAwO1xuLy8gdG8gZGFya2VzdFxuJGRhcmstbmF2LWNvbG9yOiAjMkMzODQwO1xuXG4vLyBHUkFESUVOVFNcbiRncmFkaWVudC1wcmltYXJ5LXByaW1hcnlhMjA6bGluZWFyLWdyYWRpZW50KDkwZGVnLCAkcHJpbWFyeS1jb2xvciAwJSwgJHByaW1hcnktYTIwIDEwMCUpO1xuJGdyYWRpZW50LXByaW1hcnktcHJpbWFyeWEyMC00NTpsaW5lYXItZ3JhZGllbnQoNDVkZWcsICRwcmltYXJ5LWNvbG9yIDAlLCAkcHJpbWFyeS1hMjAgMTAwJSk7XG5cbiRncmFkaWVudHM6KFxuICBncmFkaWVudC1wcmltYXJ5LXByaW1hcnlhMjA6JGdyYWRpZW50LXByaW1hcnktcHJpbWFyeWEyMCxcbiAgZ3JhZGllbnQtcHJpbWFyeS1wcmltYXJ5YTIwLTQ1OiRncmFkaWVudC1wcmltYXJ5LXByaW1hcnlhMjAtNDVcbiAgLy8gQUREIE1PUkUgSEVSRVxuKTtcblxuLy8gdGhlc2UgYXJlIHVzZWQgdG8gZ2VuZXJhdGUgc29tZSBnZW5lcmFsIHV0aWxpdHkgY2xhc3NlcyBpbiBfdXRpbGl0eS1jbGFzc2VzLnNjc3Ncbi8vIGkuZS4gY2xhc3NlcyB0byBhbHRlciB0aGUgY29sb3Igb2YgZm9udHMgYW5kIGJhY2tncm91bmRzXG5cbiR0ZXh0LWNvbG9yczogKFxuICB3aGl0ZTogJHdoaXRlLFxuICBhbG1vc3Qtd2hpdGU6JGFsbW9zdC13aGl0ZSxcbiAgbGlnaHRlc3QtZ3JheTokbGlnaHRlc3QtZ3JheSxcbiAgbGlnaHQtZ3JheTokbGlnaHQtZ3JheSxcbiAgbWVkaXVtLWdyYXk6ICRtZWRpdW0tZ3JheSxcbiAgZGFyay1ncmF5OiAkZGFyay1ncmF5LFxuICBhbG1vc3QtYmxhY2s6ICRhbG1vc3QtYmxhY2ssXG4gIGJsYWNrOiAkYmxhY2ssXG4gIHByaW1hcnk6ICRwcmltYXJ5LWNvbG9yLFxuICBwcmltYXJ5LWEyMDokcHJpbWFyeS1hMjAsXG4gIHNlY29uZGFyeTogJHNlY29uZGFyeS1jb2xvclxuICAvLyBhZGQgaW4geW91ciBjdXN0b20gcGFsbGV0IGNvbG9ycyBpbiBoZXJlXG4pO1xuXG4kYmFja2dyb3VuZC1jb2xvcnM6IChcbiAgd2hpdGU6ICR3aGl0ZSxcbiAgYWxtb3N0LXdoaXRlOiRhbG1vc3Qtd2hpdGUsXG4gIGxpZ2h0ZXN0LWdyYXk6JGxpZ2h0ZXN0LWdyYXksXG4gIGxpZ2h0LWdyYXk6JGxpZ2h0LWdyYXksXG4gIG1lZGl1bS1ncmF5OiAkbWVkaXVtLWdyYXksXG4gIGRhcmstZ3JheTogJGRhcmstZ3JheSxcbiAgYWxtb3N0LWJsYWNrOiAkYWxtb3N0LWJsYWNrLFxuICBibGFjazogJGJsYWNrLFxuICBwcmltYXJ5OiAkcHJpbWFyeS1jb2xvcixcbiAgcHJpbWFyeS1hMjA6JHByaW1hcnktYTIwLFxuICBzZWNvbmRhcnk6ICRzZWNvbmRhcnktY29sb3IsXG4gIHRyYW5zcGFyZW50OiB0cmFuc3BhcmVudCxcbiAgLy8gYWRkIGluIHlvdXIgY3VzdG9tIHBhbGxldCBjb2xvcnMgaW4gaGVyZVxuKTtcblxuJGdsb2JhbC1ib3JkZXItcmFkaXVzLTIwOiAyMHB4O1xuJHJrLWJveC1zaGFkb3c6IDByZW0gNHB4IDQwcHggcmdiYSgkYmxhY2ssIDAuMSk7XG5cbiRib2R5LWJhY2tncm91bmQ6ICR3aGl0ZTtcbiRib2R5LWZvbnQtY29sb3I6ICRibGFjaztcbiRib2R5LWZvbnQtZmFtaWx5OiRmb250LXJlZ3VsYXI7XG4kYm9keS1mb250LXNpemUtc21hbGw6cmVtLWNhbGMoMTQpO1xuJGJvZHktZm9udC1zaXplLW1lZGl1bS11cDpyZW0tY2FsYygxNik7XG4kYm9keS1sZXR0ZXItc3BhY2luZzowLjVweDtcbiRib2R5LWFudGlhbGlhc2VkOiB0cnVlO1xuJGdsb2JhbC1tYXJnaW46IDFyZW07XG4kZ2xvYmFsLXBhZGRpbmc6IDFyZW07XG4kZ2xvYmFsLXBvc2l0aW9uOiAxcmVtO1xuJGdsb2JhbC13ZWlnaHQtbm9ybWFsOiA0MDA7XG4kZ2xvYmFsLXdlaWdodC1tZWRpdW06NTAwO1xuJGdsb2JhbC13ZWlnaHQtc2VtaWJvbGQ6NjAwO1xuJGdsb2JhbC13ZWlnaHQtYm9sZDogNzAwO1xuJGdsb2JhbC1yYWRpdXM6IDA7XG4kZ2xvYmFsLW1lbnUtcGFkZGluZzogMC43cmVtIDFyZW07XG4kZ2xvYmFsLW1lbnUtbmVzdGVkLW1hcmdpbjogMXJlbTtcbiRnbG9iYWwtdGV4dC1kaXJlY3Rpb246IGx0cjtcbiRnbG9iYWwtZmxleGJveDogdHJ1ZTtcbiRnbG9iYWwtcHJvdG90eXBlLWJyZWFrcG9pbnRzOiBmYWxzZTtcbiRnbG9iYWwtYnV0dG9uLWN1cnNvcjogYXV0bztcbiRnbG9iYWwtY29sb3ItcGljay1jb250cmFzdC10b2xlcmFuY2U6IDA7XG4kcHJpbnQtdHJhbnNwYXJlbnQtYmFja2dyb3VuZHM6IHRydWU7XG5cblxuLy8gMi4gQnJlYWtwb2ludHNcbi8vIC0tLS0tLS0tLS0tLS0tXG5cbiRicmVha3BvaW50czogKFxuICBzbWFsbDogMCxcbiAgbWVkaXVtOiA2NDBweCxcbiAgbGFyZ2U6IDEwMjRweCxcbiAgeGxhcmdlOiAxMjAwcHgsXG4gIHh4bGFyZ2U6IDE0NDBweCxcbik7XG4kcHJpbnQtYnJlYWtwb2ludDogbGFyZ2U7XG4kYnJlYWtwb2ludC1jbGFzc2VzOiAoc21hbGwgbWVkaXVtIGxhcmdlIHhsYXJnZSB4eGxhcmdlKTtcblxuLy8gMy4gVGhlIEdyaWRcbi8vIC0tLS0tLS0tLS0tXG5cbiRncmlkLXJvdy13aWR0aDogJGdsb2JhbC13aWR0aDtcbiRncmlkLWNvbHVtbi1jb3VudDogMTI7XG4kZ3JpZC1jb2x1bW4tZ3V0dGVyOiAoXG4gIHNtYWxsOiAyMHB4LFxuICBtZWRpdW06IDI0cHgsXG4gIGxhcmdlOiAyNHB4LFxuKTtcbiRncmlkLWNvbHVtbi1hbGlnbi1lZGdlOiB0cnVlO1xuJGdyaWQtY29sdW1uLWFsaWFzOiAnY29sdW1ucyc7XG4kYmxvY2stZ3JpZC1tYXg6IDg7XG5cbi8vIDQuIEJhc2UgVHlwb2dyYXBoeVxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tXG5cbiRoZWFkZXItZm9udC1mYW1pbHk6ICRmb250LWJvbGQ7XG4kaGVhZGVyLWZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ib2xkO1xuJGhlYWRlci1mb250LXN0eWxlOiBub3JtYWw7XG4kZm9udC1mYW1pbHktbW9ub3NwYWNlOiBDb25zb2xhcywgJ0xpYmVyYXRpb24gTW9ubycsIENvdXJpZXIsIG1vbm9zcGFjZTtcbiRoZWFkZXItY29sb3I6IGluaGVyaXQ7XG4kaGVhZGVyLWxpbmVoZWlnaHQ6IDEuMjIyO1xuJGhlYWRlci1tYXJnaW4tYm90dG9tOiAwLjVyZW07XG4kaGVhZGVyLXN0eWxlczogKFxuXHRzbWFsbDogKFxuXHRcdCdoMSc6ICgnZm9udC1zaXplJzogNDApLFxuXHRcdCdoMic6ICgnZm9udC1zaXplJzogMjgpLFxuXHRcdCdoMyc6ICgnZm9udC1zaXplJzogMjQpLFxuXHRcdCdoNCc6ICgnZm9udC1zaXplJzogMjEpLFxuXHRcdCdoNSc6ICgnZm9udC1zaXplJzogMTgpLFxuXHRcdCdoNic6ICgnZm9udC1zaXplJzogMTYpLFxuXHQpLFxuXHRtZWRpdW06IChcblx0XHQnaDEnOiAoJ2ZvbnQtc2l6ZSc6IDQ4KSxcblx0XHQnaDInOiAoJ2ZvbnQtc2l6ZSc6IDMwKSxcblx0XHQnaDMnOiAoJ2ZvbnQtc2l6ZSc6IDI0KSxcblx0XHQnaDQnOiAoJ2ZvbnQtc2l6ZSc6IDIxKSxcblx0XHQnaDUnOiAoJ2ZvbnQtc2l6ZSc6IDE4KSxcblx0XHQnaDYnOiAoJ2ZvbnQtc2l6ZSc6IDE2KSxcblx0KSxcblx0bGFyZ2U6IChcblx0XHQnaDEnOiAoJ2ZvbnQtc2l6ZSc6IDU0KSxcblx0XHQnaDInOiAoJ2ZvbnQtc2l6ZSc6IDM2KSxcblx0XHQnaDMnOiAoJ2ZvbnQtc2l6ZSc6IDMwKSxcblx0XHQnaDQnOiAoJ2ZvbnQtc2l6ZSc6IDIxKSxcblx0XHQnaDUnOiAoJ2ZvbnQtc2l6ZSc6IDE4KSxcblx0XHQnaDYnOiAoJ2ZvbnQtc2l6ZSc6IDE2KSxcblx0KSxcbik7XG4kaGVhZGVyLXRleHQtcmVuZGVyaW5nOiBvcHRpbWl6ZUxlZ2liaWxpdHk7XG4kc21hbGwtZm9udC1zaXplOiA4MCU7XG4kaGVhZGVyLXNtYWxsLWZvbnQtY29sb3I6ICRtZWRpdW0tZ3JheTtcbiRwYXJhZ3JhcGgtbGluZWhlaWdodDogJGdsb2JhbC1saW5laGVpZ2h0O1xuJHBhcmFncmFwaC1tYXJnaW4tYm90dG9tOiAxcmVtO1xuJHBhcmFncmFwaC10ZXh0LXJlbmRlcmluZzogb3B0aW1pemVMZWdpYmlsaXR5O1xuJGNvZGUtY29sb3I6ICRibGFjaztcbiRjb2RlLWZvbnQtZmFtaWx5OiAkZm9udC1mYW1pbHktbW9ub3NwYWNlO1xuJGNvZGUtZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LW5vcm1hbDtcbiRjb2RlLWJhY2tncm91bmQ6ICRsaWdodC1ncmF5O1xuJGNvZGUtYm9yZGVyOiAxcHggc29saWQgJG1lZGl1bS1ncmF5O1xuJGNvZGUtcGFkZGluZzogcmVtLWNhbGMoMiA1IDEpO1xuJGFuY2hvci1jb2xvcjogJHByaW1hcnktY29sb3I7XG4kYW5jaG9yLWNvbG9yLWhvdmVyOiBzY2FsZS1jb2xvcigkYW5jaG9yLWNvbG9yLCAkbGlnaHRuZXNzOiAtMTQlKTtcbiRhbmNob3ItdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuJGFuY2hvci10ZXh0LWRlY29yYXRpb24taG92ZXI6IG5vbmU7XG4kaHItd2lkdGg6ICRnbG9iYWwtd2lkdGg7XG4kaHItYm9yZGVyOiAxcHggc29saWQgJG1lZGl1bS1ncmF5O1xuJGhyLW1hcmdpbjogcmVtLWNhbGMoMjApIGF1dG87XG4kbGlzdC1saW5laGVpZ2h0OiAkcGFyYWdyYXBoLWxpbmVoZWlnaHQ7XG4kbGlzdC1tYXJnaW4tYm90dG9tOiAkcGFyYWdyYXBoLW1hcmdpbi1ib3R0b207XG4kbGlzdC1zdHlsZS10eXBlOiBkaXNjO1xuJGxpc3Qtc3R5bGUtcG9zaXRpb246IG91dHNpZGU7XG4kbGlzdC1zaWRlLW1hcmdpbjogMS4yNXJlbTtcbiRsaXN0LW5lc3RlZC1zaWRlLW1hcmdpbjogMS4yNXJlbTtcbiRkZWZubGlzdC1tYXJnaW4tYm90dG9tOiAxcmVtO1xuJGRlZm5saXN0LXRlcm0td2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ib2xkO1xuJGRlZm5saXN0LXRlcm0tbWFyZ2luLWJvdHRvbTogMC4zcmVtO1xuJGJsb2NrcXVvdGUtY29sb3I6ICRkYXJrLWdyYXk7XG4kYmxvY2txdW90ZS1wYWRkaW5nOiByZW0tY2FsYyg5IDIwIDAgMTkpO1xuJGJsb2NrcXVvdGUtYm9yZGVyOiAxcHggc29saWQgJG1lZGl1bS1ncmF5O1xuJGNpdGUtZm9udC1zaXplOiByZW0tY2FsYygxMyk7XG4kY2l0ZS1jb2xvcjogJGRhcmstZ3JheTtcbiRjaXRlLXBzZXVkby1jb250ZW50OiAnXFwyMDE0IFxcMDAyMCc7XG4ka2V5c3Ryb2tlLWZvbnQ6ICRmb250LWZhbWlseS1tb25vc3BhY2U7XG4ka2V5c3Ryb2tlLWNvbG9yOiAkYmxhY2s7XG4ka2V5c3Ryb2tlLWJhY2tncm91bmQ6ICRsaWdodC1ncmF5O1xuJGtleXN0cm9rZS1wYWRkaW5nOiByZW0tY2FsYygyIDQgMCk7XG4ka2V5c3Ryb2tlLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG4kYWJici11bmRlcmxpbmU6IDFweCBkb3R0ZWQgJGJsYWNrO1xuXG4vLyA1LiBUeXBvZ3JhcGh5IEhlbHBlcnNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4kbGVhZC1mb250LXNpemU6ICRnbG9iYWwtZm9udC1zaXplICogMS4yNTtcbiRsZWFkLWxpbmVoZWlnaHQ6IDEuNjtcbiRzdWJoZWFkZXItbGluZWhlaWdodDogMS40O1xuJHN1YmhlYWRlci1jb2xvcjogJGRhcmstZ3JheTtcbiRzdWJoZWFkZXItZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LW5vcm1hbDtcbiRzdWJoZWFkZXItbWFyZ2luLXRvcDogMC4ycmVtO1xuJHN1YmhlYWRlci1tYXJnaW4tYm90dG9tOiAwLjVyZW07XG4kc3RhdC1mb250LXNpemU6IDIuNXJlbTtcblxuLy8gNi4gQWJpZGVcbi8vIC0tLS0tLS0tXG5cbiRhYmlkZS1pbnB1dHM6IHRydWU7XG4kYWJpZGUtbGFiZWxzOiB0cnVlO1xuJGlucHV0LWJhY2tncm91bmQtaW52YWxpZDogZ2V0LWNvbG9yKGFsZXJ0KTtcbiRmb3JtLWxhYmVsLWNvbG9yLWludmFsaWQ6IGdldC1jb2xvcihhbGVydCk7XG4kaW5wdXQtZXJyb3ItY29sb3I6IGdldC1jb2xvcihhbGVydCk7XG4kaW5wdXQtZXJyb3ItZm9udC1zaXplOiByZW0tY2FsYygxMik7XG4kaW5wdXQtZXJyb3ItZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LWJvbGQ7XG5cbi8vIDcuIEFjY29yZGlvblxuLy8gLS0tLS0tLS0tLS0tXG5cbiRhY2NvcmRpb24tYmFja2dyb3VuZDogJHdoaXRlO1xuJGFjY29yZGlvbi1wbHVzbWludXM6IHRydWU7XG4kYWNjb3JkaW9uLXRpdGxlLWZvbnQtc2l6ZTogcmVtLWNhbGMoMTIpO1xuJGFjY29yZGlvbi1pdGVtLWNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbiRhY2NvcmRpb24taXRlbS1iYWNrZ3JvdW5kLWhvdmVyOiAkbGlnaHQtZ3JheTtcbiRhY2NvcmRpb24taXRlbS1wYWRkaW5nOiAxLjI1cmVtIDFyZW07XG4kYWNjb3JkaW9uLWNvbnRlbnQtYmFja2dyb3VuZDogJHdoaXRlO1xuJGFjY29yZGlvbi1jb250ZW50LWJvcmRlcjogMXB4IHNvbGlkICRsaWdodC1ncmF5O1xuJGFjY29yZGlvbi1jb250ZW50LWNvbG9yOiAkYm9keS1mb250LWNvbG9yO1xuJGFjY29yZGlvbi1jb250ZW50LXBhZGRpbmc6IDFyZW07XG5cbi8vIDguIEFjY29yZGlvbiBNZW51XG4vLyAtLS0tLS0tLS0tLS0tLS0tLVxuXG4kYWNjb3JkaW9ubWVudS1wYWRkaW5nOiAkZ2xvYmFsLW1lbnUtcGFkZGluZztcbiRhY2NvcmRpb25tZW51LW5lc3RlZC1tYXJnaW46ICRnbG9iYWwtbWVudS1uZXN0ZWQtbWFyZ2luO1xuJGFjY29yZGlvbm1lbnUtc3VibWVudS1wYWRkaW5nOiAkYWNjb3JkaW9ubWVudS1wYWRkaW5nO1xuJGFjY29yZGlvbm1lbnUtYXJyb3dzOiB0cnVlO1xuJGFjY29yZGlvbm1lbnUtYXJyb3ctY29sb3I6ICR3aGl0ZTtcbiRhY2NvcmRpb25tZW51LWl0ZW0tYmFja2dyb3VuZDogbnVsbDtcbiRhY2NvcmRpb25tZW51LWJvcmRlcjogbnVsbDtcbiRhY2NvcmRpb25tZW51LXN1Ym1lbnUtdG9nZ2xlLWJhY2tncm91bmQ6IG51bGw7XG4kYWNjb3JkaW9uLXN1Ym1lbnUtdG9nZ2xlLWJvcmRlcjogJGFjY29yZGlvbm1lbnUtYm9yZGVyO1xuJGFjY29yZGlvbm1lbnUtc3VibWVudS10b2dnbGUtd2lkdGg6IDQwcHg7XG4kYWNjb3JkaW9ubWVudS1zdWJtZW51LXRvZ2dsZS1oZWlnaHQ6ICRhY2NvcmRpb25tZW51LXN1Ym1lbnUtdG9nZ2xlLXdpZHRoO1xuJGFjY29yZGlvbm1lbnUtYXJyb3ctc2l6ZTogNnB4O1xuXG4vLyA5LiBCYWRnZVxuLy8gLS0tLS0tLS1cblxuJGJhZGdlLWJhY2tncm91bmQ6ICRwcmltYXJ5LWNvbG9yO1xuJGJhZGdlLWNvbG9yOiAkd2hpdGU7XG4kYmFkZ2UtY29sb3ItYWx0OiAkYmxhY2s7XG4kYmFkZ2UtcGFsZXR0ZTogJGZvdW5kYXRpb24tcGFsZXR0ZTtcbiRiYWRnZS1wYWRkaW5nOiAwLjNlbTtcbiRiYWRnZS1taW53aWR0aDogMi4xZW07XG4kYmFkZ2UtZm9udC1zaXplOiAwLjZyZW07XG5cbi8vIDEwLiBCcmVhZGNydW1ic1xuLy8gLS0tLS0tLS0tLS0tLS0tXG5cbiRicmVhZGNydW1icy1tYXJnaW46IDAgMCAkZ2xvYmFsLW1hcmdpbiAwO1xuJGJyZWFkY3J1bWJzLWl0ZW0tZm9udC1zaXplOiByZW0tY2FsYygxMSk7XG4kYnJlYWRjcnVtYnMtaXRlbS1jb2xvcjogJHByaW1hcnktY29sb3I7XG4kYnJlYWRjcnVtYnMtaXRlbS1jb2xvci1jdXJyZW50OiAkYmxhY2s7XG4kYnJlYWRjcnVtYnMtaXRlbS1jb2xvci1kaXNhYmxlZDogJG1lZGl1bS1ncmF5O1xuJGJyZWFkY3J1bWJzLWl0ZW0tbWFyZ2luOiAwLjc1cmVtO1xuJGJyZWFkY3J1bWJzLWl0ZW0tdXBwZXJjYXNlOiB0cnVlO1xuJGJyZWFkY3J1bWJzLWl0ZW0tc2VwYXJhdG9yOiB0cnVlO1xuJGJyZWFkY3J1bWJzLWl0ZW0tc2VwYXJhdG9yLWl0ZW06ICcvJztcbiRicmVhZGNydW1icy1pdGVtLXNlcGFyYXRvci1pdGVtLXJ0bDogJ1xcXFwnO1xuJGJyZWFkY3J1bWJzLWl0ZW0tc2VwYXJhdG9yLWNvbG9yOiAkbWVkaXVtLWdyYXk7XG5cbi8vIDExLiBCdXR0b25cbi8vIC0tLS0tLS0tLS1cblxuJGJ1dHRvbi1mb250LWZhbWlseTogaW5oZXJpdDtcbiRidXR0b24tcGFkZGluZzogMC44NWVtIDFlbTtcbiRidXR0b24tbWFyZ2luOiAwIDAgJGdsb2JhbC1tYXJnaW4gMDtcbiRidXR0b24tZmlsbDogc29saWQ7XG4kYnV0dG9uLWJhY2tncm91bmQ6ICRwcmltYXJ5LWNvbG9yO1xuJGJ1dHRvbi1iYWNrZ3JvdW5kLWhvdmVyOiBzY2FsZS1jb2xvcigkYnV0dG9uLWJhY2tncm91bmQsICRsaWdodG5lc3M6IC0xNSUpO1xuJGJ1dHRvbi1jb2xvcjogJHdoaXRlO1xuJGJ1dHRvbi1jb2xvci1hbHQ6ICRibGFjaztcbiRidXR0b24tcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcbiRidXR0b24taG9sbG93LWJvcmRlci13aWR0aDogMXB4O1xuJGJ1dHRvbi1zaXplczogKFxuICB0aW55OiAwLjZyZW0sXG4gIHNtYWxsOiAwLjc1cmVtLFxuICBkZWZhdWx0OiAwLjlyZW0sXG4gIGxhcmdlOiAxLjI1cmVtLFxuKTtcbiRidXR0b24tcGFsZXR0ZTogJGZvdW5kYXRpb24tcGFsZXR0ZTtcbiRidXR0b24tb3BhY2l0eS1kaXNhYmxlZDogMC4yNTtcbiRidXR0b24tYmFja2dyb3VuZC1ob3Zlci1saWdodG5lc3M6IC0yMCU7XG4kYnV0dG9uLWhvbGxvdy1ob3Zlci1saWdodG5lc3M6IC01MCU7XG4kYnV0dG9uLXRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMC4yNXMgZWFzZS1vdXQsIGNvbG9yIDAuMjVzIGVhc2Utb3V0O1xuXG4vLyAxMi4gQnV0dG9uIEdyb3VwXG4vLyAtLS0tLS0tLS0tLS0tLS0tXG5cbiRidXR0b25ncm91cC1tYXJnaW46IDFyZW07XG4kYnV0dG9uZ3JvdXAtc3BhY2luZzogMXB4O1xuJGJ1dHRvbmdyb3VwLWNoaWxkLXNlbGVjdG9yOiAnLmJ1dHRvbic7XG4kYnV0dG9uZ3JvdXAtZXhwYW5kLW1heDogNjtcbiRidXR0b25ncm91cC1yYWRpdXMtb24tZWFjaDogdHJ1ZTtcblxuLy8gMTMuIENhbGxvdXRcbi8vIC0tLS0tLS0tLS0tXG5cbiRjYWxsb3V0LWJhY2tncm91bmQ6ICR3aGl0ZTtcbiRjYWxsb3V0LWJhY2tncm91bmQtZmFkZTogODUlO1xuJGNhbGxvdXQtYm9yZGVyOiAxcHggc29saWQgcmdiYSgkYmxhY2ssIDAuMjUpO1xuJGNhbGxvdXQtbWFyZ2luOiAwIDAgMXJlbSAwO1xuJGNhbGxvdXQtcGFkZGluZzogMXJlbTtcbiRjYWxsb3V0LWZvbnQtY29sb3I6ICRib2R5LWZvbnQtY29sb3I7XG4kY2FsbG91dC1mb250LWNvbG9yLWFsdDogJGJvZHktYmFja2dyb3VuZDtcbiRjYWxsb3V0LXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG4kY2FsbG91dC1saW5rLXRpbnQ6IDMwJTtcblxuLy8gMTQuIENhcmRcbi8vIC0tLS0tLS0tXG5cbiRjYXJkLWJhY2tncm91bmQ6ICR3aGl0ZTtcbiRjYXJkLWZvbnQtY29sb3I6ICRib2R5LWZvbnQtY29sb3I7XG4kY2FyZC1kaXZpZGVyLWJhY2tncm91bmQ6ICRsaWdodC1ncmF5O1xuJGNhcmQtYm9yZGVyOiAxcHggc29saWQgJGxpZ2h0LWdyYXk7XG4kY2FyZC1zaGFkb3c6IG5vbmU7XG4kY2FyZC1ib3JkZXItcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcbiRjYXJkLXBhZGRpbmc6ICRnbG9iYWwtcGFkZGluZztcbiRjYXJkLW1hcmdpbi1ib3R0b206ICRnbG9iYWwtbWFyZ2luO1xuXG4vLyAxNS4gQ2xvc2UgQnV0dG9uXG4vLyAtLS0tLS0tLS0tLS0tLS0tXG5cbiRjbG9zZWJ1dHRvbi1wb3NpdGlvbjogcmlnaHQgdG9wO1xuJGNsb3NlYnV0dG9uLW9mZnNldC1ob3Jpem9udGFsOiAoXG4gIHNtYWxsOiAwLjY2cmVtLFxuICBtZWRpdW06IDFyZW0sXG4pO1xuJGNsb3NlYnV0dG9uLW9mZnNldC12ZXJ0aWNhbDogKFxuICBzbWFsbDogMC4zM2VtLFxuICBtZWRpdW06IDAuNXJlbSxcbik7XG4kY2xvc2VidXR0b24tc2l6ZTogKFxuICBzbWFsbDogMS41ZW0sXG4gIG1lZGl1bTogMmVtLFxuKTtcbiRjbG9zZWJ1dHRvbi1saW5laGVpZ2h0OiAxO1xuJGNsb3NlYnV0dG9uLWNvbG9yOiAkZGFyay1ncmF5O1xuJGNsb3NlYnV0dG9uLWNvbG9yLWhvdmVyOiAkYmxhY2s7XG5cbi8vIDE2LiBEcmlsbGRvd25cbi8vIC0tLS0tLS0tLS0tLS1cblxuJGRyaWxsZG93bi10cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4xNXMgbGluZWFyO1xuJGRyaWxsZG93bi1hcnJvd3M6IHRydWU7XG4kZHJpbGxkb3duLXBhZGRpbmc6ICRnbG9iYWwtbWVudS1wYWRkaW5nO1xuJGRyaWxsZG93bi1uZXN0ZWQtbWFyZ2luOiAwO1xuJGRyaWxsZG93bi1iYWNrZ3JvdW5kOiAkd2hpdGU7XG4kZHJpbGxkb3duLXN1Ym1lbnUtcGFkZGluZzogJGRyaWxsZG93bi1wYWRkaW5nO1xuJGRyaWxsZG93bi1zdWJtZW51LWJhY2tncm91bmQ6ICR3aGl0ZTtcbiRkcmlsbGRvd24tYXJyb3ctY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xuJGRyaWxsZG93bi1hcnJvdy1zaXplOiA2cHg7XG5cbi8vIDE3LiBEcm9wZG93blxuLy8gLS0tLS0tLS0tLS0tXG5cbiRkcm9wZG93bi1wYWRkaW5nOiAxcmVtO1xuJGRyb3Bkb3duLWJhY2tncm91bmQ6ICRib2R5LWJhY2tncm91bmQ7XG4kZHJvcGRvd24tYm9yZGVyOiAxcHggc29saWQgJG1lZGl1bS1ncmF5O1xuJGRyb3Bkb3duLWZvbnQtc2l6ZTogMXJlbTtcbiRkcm9wZG93bi13aWR0aDogMzAwcHg7XG4kZHJvcGRvd24tcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcbiRkcm9wZG93bi1zaXplczogKFxuICB0aW55OiAxMDBweCxcbiAgc21hbGw6IDIwMHB4LFxuICBsYXJnZTogNDAwcHgsXG4pO1xuXG4vLyAxOC4gRHJvcGRvd24gTWVudVxuLy8gLS0tLS0tLS0tLS0tLS0tLS1cblxuJGRyb3Bkb3dubWVudS1hcnJvd3M6IHRydWU7XG4kZHJvcGRvd25tZW51LWFycm93LWNvbG9yOiAkYW5jaG9yLWNvbG9yO1xuJGRyb3Bkb3dubWVudS1hcnJvdy1zaXplOiA2cHg7XG4kZHJvcGRvd25tZW51LWFycm93LXBhZGRpbmc6IDEuNXJlbTtcbiRkcm9wZG93bm1lbnUtbWluLXdpZHRoOiAyMDBweDtcbiRkcm9wZG93bm1lbnUtYmFja2dyb3VuZDogJHdoaXRlO1xuJGRyb3Bkb3dubWVudS1zdWJtZW51LWJhY2tncm91bmQ6ICRkcm9wZG93bm1lbnUtYmFja2dyb3VuZDtcbiRkcm9wZG93bm1lbnUtcGFkZGluZzogJGdsb2JhbC1tZW51LXBhZGRpbmc7XG4kZHJvcGRvd25tZW51LW5lc3RlZC1tYXJnaW46IDA7XG4kZHJvcGRvd25tZW51LXN1Ym1lbnUtcGFkZGluZzogJGRyb3Bkb3dubWVudS1wYWRkaW5nO1xuJGRyb3Bkb3dubWVudS1ib3JkZXI6IDFweCBzb2xpZCAkbWVkaXVtLWdyYXk7XG4kZHJvcGRvd24tbWVudS1pdGVtLWNvbG9yLWFjdGl2ZTogJGxpZ2h0LWdyYXk7XG4kZHJvcGRvd24tbWVudS1pdGVtLWJhY2tncm91bmQtYWN0aXZlOiB0cmFuc3BhcmVudDtcblxuLy8gMTkuIEZsZXhib3ggVXRpbGl0aWVzXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuJGZsZXgtc291cmNlLW9yZGVyaW5nLWNvdW50OiA2O1xuJGZsZXhib3gtcmVzcG9uc2l2ZS1icmVha3BvaW50czogdHJ1ZTtcblxuLy8gMjAuIEZvcm1zXG4vLyAtLS0tLS0tLS1cblxuJGZpZWxkc2V0LWJvcmRlcjogMXB4IHNvbGlkICRtZWRpdW0tZ3JheTtcbiRmaWVsZHNldC1wYWRkaW5nOiByZW0tY2FsYygyMCk7XG4kZmllbGRzZXQtbWFyZ2luOiByZW0tY2FsYygxOCAwKTtcbiRsZWdlbmQtcGFkZGluZzogcmVtLWNhbGMoMCAzKTtcbiRmb3JtLXNwYWNpbmc6IHJlbS1jYWxjKDE2KTtcbiRoZWxwdGV4dC1jb2xvcjogJGJsYWNrO1xuJGhlbHB0ZXh0LWZvbnQtc2l6ZTogcmVtLWNhbGMoMTMpO1xuJGhlbHB0ZXh0LWZvbnQtc3R5bGU6IGl0YWxpYztcbiRpbnB1dC1wcmVmaXgtY29sb3I6ICRibGFjaztcbiRpbnB1dC1wcmVmaXgtYmFja2dyb3VuZDogJGxpZ2h0ZXN0LWdyYXk7XG4kaW5wdXQtcHJlZml4LWJvcmRlcjogMXB4IHNvbGlkICRsaWdodC1ncmF5O1xuJGlucHV0LXByZWZpeC1wYWRkaW5nOiAxcmVtO1xuJGZvcm0tbGFiZWwtY29sb3I6IHJnYmEoJGJvZHktZm9udC1jb2xvciwgLjYpO1xuJGZvcm0tbGFiZWwtZm9udC1zaXplOiByZW0tY2FsYygxNCk7XG4kZm9ybS1sYWJlbC1mb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtbm9ybWFsO1xuJGZvcm0tbGFiZWwtbGluZS1oZWlnaHQ6IDEuMjtcbiRzZWxlY3QtYmFja2dyb3VuZDogJHdoaXRlO1xuJHNlbGVjdC10cmlhbmdsZS1jb2xvcjogJHByaW1hcnktY29sb3I7XG4kc2VsZWN0LXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG4kaW5wdXQtY29sb3I6ICRibGFjaztcbiRpbnB1dC1wbGFjZWhvbGRlci1jb2xvcjogJG1lZGl1bS1ncmF5O1xuJGlucHV0LWZvbnQtZmFtaWx5OiBpbmhlcml0O1xuJGlucHV0LWZvbnQtc2l6ZTogcmVtLWNhbGMoMTYpO1xuJGlucHV0LWZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ub3JtYWw7XG4kaW5wdXQtbGluZS1oZWlnaHQ6ICRnbG9iYWwtbGluZWhlaWdodDtcbiRpbnB1dC1iYWNrZ3JvdW5kOiAkbGlnaHRlc3QtZ3JheTtcbiRpbnB1dC1iYWNrZ3JvdW5kLWZvY3VzOiAkd2hpdGU7XG4kaW5wdXQtYmFja2dyb3VuZC1kaXNhYmxlZDogJGxpZ2h0ZXN0LWdyYXk7XG4kaW5wdXQtYm9yZGVyOiAxcHggc29saWQgJGxpZ2h0LWdyYXk7XG4kaW5wdXQtYm9yZGVyLWZvY3VzOiAycHggc29saWQgJHByaW1hcnktY29sb3I7XG4kaW5wdXQtcGFkZGluZzogKCRmb3JtLXNwYWNpbmcgLyA0KSAqIDM7XG4kaW5wdXQtc2hhZG93OiBub25lO1xuJGlucHV0LXNoYWRvdy1mb2N1czogbm9uZTtcbiRpbnB1dC1jdXJzb3ItZGlzYWJsZWQ6IG5vdC1hbGxvd2VkO1xuJGlucHV0LXRyYW5zaXRpb246IGJveC1zaGFkb3cgMC41cywgYm9yZGVyLWNvbG9yIDAuMjVzIGVhc2UtaW4tb3V0O1xuJGlucHV0LW51bWJlci1zcGlubmVyczogdHJ1ZTtcbiRpbnB1dC1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuJGZvcm0tYnV0dG9uLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG5cbi8vIDIxLiBMYWJlbFxuLy8gLS0tLS0tLS0tXG5cbiRsYWJlbC1iYWNrZ3JvdW5kOiAkcHJpbWFyeS1jb2xvcjtcbiRsYWJlbC1jb2xvcjogJHdoaXRlO1xuJGxhYmVsLWNvbG9yLWFsdDogJGJsYWNrO1xuJGxhYmVsLXBhbGV0dGU6ICRmb3VuZGF0aW9uLXBhbGV0dGU7XG4kbGFiZWwtZm9udC1zaXplOiAwLjhyZW07XG4kbGFiZWwtcGFkZGluZzogMC4zMzMzM3JlbSAwLjVyZW07XG4kbGFiZWwtcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcblxuLy8gMjIuIE1lZGlhIE9iamVjdFxuLy8gLS0tLS0tLS0tLS0tLS0tLVxuXG4kbWVkaWFvYmplY3QtbWFyZ2luLWJvdHRvbTogJGdsb2JhbC1tYXJnaW47XG4kbWVkaWFvYmplY3Qtc2VjdGlvbi1wYWRkaW5nOiAkZ2xvYmFsLXBhZGRpbmc7XG4kbWVkaWFvYmplY3QtaW1hZ2Utd2lkdGgtc3RhY2tlZDogMTAwJTtcblxuLy8gMjMuIE1lbnVcbi8vIC0tLS0tLS0tXG5cbiRtZW51LW1hcmdpbjogMDtcbiRtZW51LW5lc3RlZC1tYXJnaW46ICRnbG9iYWwtbWVudS1uZXN0ZWQtbWFyZ2luO1xuJG1lbnUtaXRlbXMtcGFkZGluZzogJGdsb2JhbC1tZW51LXBhZGRpbmc7XG4kbWVudS1zaW1wbGUtbWFyZ2luOiAxcmVtO1xuJG1lbnUtaXRlbS1jb2xvci1hY3RpdmU6ICR3aGl0ZTtcbiRtZW51LWl0ZW0tYmFja2dyb3VuZC1hY3RpdmU6IGdldC1jb2xvcihwcmltYXJ5KTtcbiRtZW51LWljb24tc3BhY2luZzogMC4yNXJlbTtcbiRtZW51LWl0ZW0tYmFja2dyb3VuZC1ob3ZlcjogJGxpZ2h0LWdyYXk7XG4kbWVudS1zdGF0ZS1iYWNrLWNvbXBhdDogdHJ1ZTtcbiRtZW51LWNlbnRlcmVkLWJhY2stY29tcGF0OiB0cnVlO1xuJG1lbnUtaWNvbnMtYmFjay1jb21wYXQ6IHRydWU7XG5cbi8vIDI0LiBNZXRlclxuLy8gLS0tLS0tLS0tXG5cbiRtZXRlci1oZWlnaHQ6IDFyZW07XG4kbWV0ZXItcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcbiRtZXRlci1iYWNrZ3JvdW5kOiAkbWVkaXVtLWdyYXk7XG4kbWV0ZXItZmlsbC1nb29kOiAkc3VjY2Vzcy1jb2xvcjtcbiRtZXRlci1maWxsLW1lZGl1bTogJHdhcm5pbmctY29sb3I7XG4kbWV0ZXItZmlsbC1iYWQ6ICRhbGVydC1jb2xvcjtcblxuLy8gMjUuIE9mZi1jYW52YXNcbi8vIC0tLS0tLS0tLS0tLS0tXG5cbiRvZmZjYW52YXMtc2l6ZXM6IChcbiAgc21hbGw6IDI1MHB4LFxuKTtcbiRvZmZjYW52YXMtdmVydGljYWwtc2l6ZXM6IChcbiAgc21hbGw6IDI1MHB4LFxuKTtcbiRvZmZjYW52YXMtYmFja2dyb3VuZDogJHdoaXRlO1xuJG9mZmNhbnZhcy1zaGFkb3c6IDAgMCAxMHB4IHJnYmEoJGJsYWNrLCAwLjcpO1xuJG9mZmNhbnZhcy1pbm5lci1zaGFkb3ctc2l6ZTogMjBweDtcbiRvZmZjYW52YXMtaW5uZXItc2hhZG93LWNvbG9yOiByZ2JhKCRibGFjaywgMC4yNSk7XG4kb2ZmY2FudmFzLW92ZXJsYXktemluZGV4OiAxMTtcbiRvZmZjYW52YXMtcHVzaC16aW5kZXg6IDEyO1xuJG9mZmNhbnZhcy1vdmVybGFwLXppbmRleDogMTM7XG4kb2ZmY2FudmFzLXJldmVhbC16aW5kZXg6IDEyO1xuJG9mZmNhbnZhcy10cmFuc2l0aW9uLWxlbmd0aDogMC41cztcbiRvZmZjYW52YXMtdHJhbnNpdGlvbi10aW1pbmc6IGVhc2U7XG4kb2ZmY2FudmFzLWZpeGVkLXJldmVhbDogdHJ1ZTtcbiRvZmZjYW52YXMtZXhpdC1iYWNrZ3JvdW5kOiByZ2JhKCR3aGl0ZSwgMC4yNSk7XG4kbWFpbmNvbnRlbnQtY2xhc3M6ICdvZmYtY2FudmFzLWNvbnRlbnQnO1xuXG4vLyAyNi4gT3JiaXRcbi8vIC0tLS0tLS0tLVxuXG4kb3JiaXQtYnVsbGV0LWJhY2tncm91bmQ6ICRtZWRpdW0tZ3JheTtcbiRvcmJpdC1idWxsZXQtYmFja2dyb3VuZC1hY3RpdmU6ICRkYXJrLWdyYXk7XG4kb3JiaXQtYnVsbGV0LWRpYW1ldGVyOiAxLjJyZW07XG4kb3JiaXQtYnVsbGV0LW1hcmdpbjogMC4xcmVtO1xuJG9yYml0LWJ1bGxldC1tYXJnaW4tdG9wOiAwLjhyZW07XG4kb3JiaXQtYnVsbGV0LW1hcmdpbi1ib3R0b206IDAuOHJlbTtcbiRvcmJpdC1jYXB0aW9uLWJhY2tncm91bmQ6IHJnYmEoJGJsYWNrLCAwLjUpO1xuJG9yYml0LWNhcHRpb24tcGFkZGluZzogMXJlbTtcbiRvcmJpdC1jb250cm9sLWJhY2tncm91bmQtaG92ZXI6IHJnYmEoJGJsYWNrLCAwLjUpO1xuJG9yYml0LWNvbnRyb2wtcGFkZGluZzogMXJlbTtcbiRvcmJpdC1jb250cm9sLXppbmRleDogMTA7XG5cbi8vIDI3LiBQYWdpbmF0aW9uXG4vLyAtLS0tLS0tLS0tLS0tLVxuXG4kcGFnaW5hdGlvbi1mb250LXNpemU6IHJlbS1jYWxjKDE0KTtcbiRwYWdpbmF0aW9uLW1hcmdpbi1ib3R0b206ICRnbG9iYWwtbWFyZ2luO1xuJHBhZ2luYXRpb24taXRlbS1jb2xvcjogJGJvZHktZm9udC1jb2xvcjtcbiRwYWdpbmF0aW9uLWl0ZW0tcGFkZGluZzogcmVtLWNhbGMoNSAxMCk7XG4kcGFnaW5hdGlvbi1pdGVtLXNwYWNpbmc6IHJlbS1jYWxjKDQpO1xuJHBhZ2luYXRpb24tcmFkaXVzOiAycHg7XG4kcGFnaW5hdGlvbi1pdGVtLWJhY2tncm91bmQtaG92ZXI6ICRsaWdodC1ncmF5O1xuJHBhZ2luYXRpb24taXRlbS1iYWNrZ3JvdW5kLWN1cnJlbnQ6ICRwcmltYXJ5LWNvbG9yO1xuJHBhZ2luYXRpb24taXRlbS1jb2xvci1jdXJyZW50OiAkd2hpdGU7XG4kcGFnaW5hdGlvbi1pdGVtLWNvbG9yLWRpc2FibGVkOiAkbWVkaXVtLWdyYXk7XG4kcGFnaW5hdGlvbi1lbGxpcHNpcy1jb2xvcjogJGJvZHktZm9udC1jb2xvcjtcbiRwYWdpbmF0aW9uLW1vYmlsZS1pdGVtczogZmFsc2U7XG4kcGFnaW5hdGlvbi1tb2JpbGUtY3VycmVudC1pdGVtOiBmYWxzZTtcbiRwYWdpbmF0aW9uLWFycm93czogdHJ1ZTtcblxuLy8gMjguIFByb2dyZXNzIEJhclxuLy8gLS0tLS0tLS0tLS0tLS0tLVxuXG4kcHJvZ3Jlc3MtaGVpZ2h0OiAxcmVtO1xuJHByb2dyZXNzLWJhY2tncm91bmQ6ICRtZWRpdW0tZ3JheTtcbiRwcm9ncmVzcy1tYXJnaW4tYm90dG9tOiAkZ2xvYmFsLW1hcmdpbjtcbiRwcm9ncmVzcy1tZXRlci1iYWNrZ3JvdW5kOiAkcHJpbWFyeS1jb2xvcjtcbiRwcm9ncmVzcy1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuXG4vLyAyOS4gUHJvdG90eXBlIEFycm93XG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tXG5cbiRwcm90b3R5cGUtYXJyb3ctZGlyZWN0aW9uczogKFxuICBkb3duLFxuICB1cCxcbiAgcmlnaHQsXG4gIGxlZnRcbik7XG4kcHJvdG90eXBlLWFycm93LXNpemU6IDAuNDM3NXJlbTtcbiRwcm90b3R5cGUtYXJyb3ctY29sb3I6ICRibGFjaztcblxuLy8gMzAuIFByb3RvdHlwZSBCb3JkZXItQm94XG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuJHByb3RvdHlwZS1ib3JkZXItYm94LWJyZWFrcG9pbnRzOiAkZ2xvYmFsLXByb3RvdHlwZS1icmVha3BvaW50cztcblxuLy8gMzEuIFByb3RvdHlwZSBCb3JkZXItTm9uZVxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4kcHJvdG90eXBlLWJvcmRlci1ub25lLWJyZWFrcG9pbnRzOiAkZ2xvYmFsLXByb3RvdHlwZS1icmVha3BvaW50cztcblxuLy8gMzIuIFByb3RvdHlwZSBCb3JkZXJlZFxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4kcHJvdG90eXBlLWJvcmRlcmVkLWJyZWFrcG9pbnRzOiAkZ2xvYmFsLXByb3RvdHlwZS1icmVha3BvaW50cztcbiRwcm90b3R5cGUtYm9yZGVyLXdpZHRoOiByZW0tY2FsYygxKTtcbiRwcm90b3R5cGUtYm9yZGVyLXR5cGU6IHNvbGlkO1xuJHByb3RvdHlwZS1ib3JkZXItY29sb3I6ICRtZWRpdW0tZ3JheTtcblxuLy8gMzMuIFByb3RvdHlwZSBEaXNwbGF5XG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuJHByb3RvdHlwZS1kaXNwbGF5LWJyZWFrcG9pbnRzOiAkZ2xvYmFsLXByb3RvdHlwZS1icmVha3BvaW50cztcbiRwcm90b3R5cGUtZGlzcGxheTogKFxuICBpbmxpbmUsXG4gIGlubGluZS1ibG9jayxcbiAgYmxvY2ssXG4gIHRhYmxlLFxuICB0YWJsZS1jZWxsXG4pO1xuXG4vLyAzNC4gUHJvdG90eXBlIEZvbnQtU3R5bGluZ1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuJHByb3RvdHlwZS1mb250LWJyZWFrcG9pbnRzOiAkZ2xvYmFsLXByb3RvdHlwZS1icmVha3BvaW50cztcbiRwcm90b3R5cGUtd2lkZS1sZXR0ZXItc3BhY2luZzogcmVtLWNhbGMoNCk7XG4kcHJvdG90eXBlLWZvbnQtbm9ybWFsOiAkZ2xvYmFsLXdlaWdodC1ub3JtYWw7XG4kcHJvdG90eXBlLWZvbnQtYm9sZDogJGdsb2JhbC13ZWlnaHQtYm9sZDtcblxuLy8gMzUuIFByb3RvdHlwZSBMaXN0LVN0eWxlLVR5cGVcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbiRwcm90b3R5cGUtbGlzdC1icmVha3BvaW50czogJGdsb2JhbC1wcm90b3R5cGUtYnJlYWtwb2ludHM7XG4kcHJvdG90eXBlLXN0eWxlLXR5cGUtdW5vcmRlcmVkOiAoXG4gIGRpc2MsXG4gIGNpcmNsZSxcbiAgc3F1YXJlXG4pO1xuJHByb3RvdHlwZS1zdHlsZS10eXBlLW9yZGVyZWQ6IChcbiAgZGVjaW1hbCxcbiAgbG93ZXItYWxwaGEsXG4gIGxvd2VyLWxhdGluLFxuICBsb3dlci1yb21hbixcbiAgdXBwZXItYWxwaGEsXG4gIHVwcGVyLWxhdGluLFxuICB1cHBlci1yb21hblxuKTtcblxuLy8gMzYuIFByb3RvdHlwZSBPdmVyZmxvd1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4kcHJvdG90eXBlLW92ZXJmbG93LWJyZWFrcG9pbnRzOiAkZ2xvYmFsLXByb3RvdHlwZS1icmVha3BvaW50cztcbiRwcm90b3R5cGUtb3ZlcmZsb3c6IChcbiAgdmlzaWJsZSxcbiAgaGlkZGVuLFxuICBzY3JvbGxcbik7XG5cbi8vIDM3LiBQcm90b3R5cGUgUG9zaXRpb25cbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuJHByb3RvdHlwZS1wb3NpdGlvbi1icmVha3BvaW50czogJGdsb2JhbC1wcm90b3R5cGUtYnJlYWtwb2ludHM7XG4kcHJvdG90eXBlLXBvc2l0aW9uOiAoXG4gIHN0YXRpYyxcbiAgcmVsYXRpdmUsXG4gIGFic29sdXRlLFxuICBmaXhlZFxuKTtcbiRwcm90b3R5cGUtcG9zaXRpb24tei1pbmRleDogOTc1O1xuXG4vLyAzOC4gUHJvdG90eXBlIFJvdW5kZWRcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4kcHJvdG90eXBlLXJvdW5kZWQtYnJlYWtwb2ludHM6ICRnbG9iYWwtcHJvdG90eXBlLWJyZWFrcG9pbnRzO1xuJHByb3RvdHlwZS1ib3JkZXItcmFkaXVzOiByZW0tY2FsYygzKTtcblxuLy8gMzkuIFByb3RvdHlwZSBTZXBhcmF0b3Jcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbiRwcm90b3R5cGUtc2VwYXJhdG9yLWJyZWFrcG9pbnRzOiAkZ2xvYmFsLXByb3RvdHlwZS1icmVha3BvaW50cztcbiRwcm90b3R5cGUtc2VwYXJhdG9yLWFsaWduOiBjZW50ZXI7XG4kcHJvdG90eXBlLXNlcGFyYXRvci1oZWlnaHQ6IHJlbS1jYWxjKDIpO1xuJHByb3RvdHlwZS1zZXBhcmF0b3Itd2lkdGg6IDNyZW07XG4kcHJvdG90eXBlLXNlcGFyYXRvci1iYWNrZ3JvdW5kOiAkcHJpbWFyeS1jb2xvcjtcbiRwcm90b3R5cGUtc2VwYXJhdG9yLW1hcmdpbi10b3A6ICRnbG9iYWwtbWFyZ2luO1xuXG4vLyA0MC4gUHJvdG90eXBlIFNoYWRvd1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuJHByb3RvdHlwZS1zaGFkb3ctYnJlYWtwb2ludHM6ICRnbG9iYWwtcHJvdG90eXBlLWJyZWFrcG9pbnRzO1xuJHByb3RvdHlwZS1ib3gtc2hhZG93OiAwIDJweCA1cHggMCByZ2JhKDAsMCwwLC4xNiksXG4gICAgICAgICAgICAgICAgICAgICAgIDAgMnB4IDEwcHggMCByZ2JhKDAsMCwwLC4xMik7XG5cbi8vIDQxLiBQcm90b3R5cGUgU2l6aW5nXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4kcHJvdG90eXBlLXNpemluZy1icmVha3BvaW50czogJGdsb2JhbC1wcm90b3R5cGUtYnJlYWtwb2ludHM7XG4kcHJvdG90eXBlLXNpemluZzogKFxuICB3aWR0aCxcbiAgaGVpZ2h0XG4pO1xuJHByb3RvdHlwZS1zaXplczogKFxuICAyNTogMjUlLFxuICA1MDogNTAlLFxuICA3NTogNzUlLFxuICAxMDA6IDEwMCVcbik7XG5cbi8vIDQyLiBQcm90b3R5cGUgU3BhY2luZ1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbiRwcm90b3R5cGUtc3BhY2luZy1icmVha3BvaW50czogJGdsb2JhbC1wcm90b3R5cGUtYnJlYWtwb2ludHM7XG4kcHJvdG90eXBlLXNwYWNlcnMtY291bnQ6IDM7XG5cbi8vIDQzLiBQcm90b3R5cGUgVGV4dC1EZWNvcmF0aW9uXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4kcHJvdG90eXBlLWRlY29yYXRpb24tYnJlYWtwb2ludHM6ICRnbG9iYWwtcHJvdG90eXBlLWJyZWFrcG9pbnRzO1xuJHByb3RvdHlwZS10ZXh0LWRlY29yYXRpb246IChcbiAgb3ZlcmxpbmUsXG4gIHVuZGVybGluZSxcbiAgbGluZS10aHJvdWdoLFxuKTtcblxuLy8gNDQuIFByb3RvdHlwZSBUZXh0LVRyYW5zZm9ybWF0aW9uXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuJHByb3RvdHlwZS10cmFuc2Zvcm1hdGlvbi1icmVha3BvaW50czogJGdsb2JhbC1wcm90b3R5cGUtYnJlYWtwb2ludHM7XG4kcHJvdG90eXBlLXRleHQtdHJhbnNmb3JtYXRpb246IChcbiAgbG93ZXJjYXNlLFxuICB1cHBlcmNhc2UsXG4gIGNhcGl0YWxpemVcbik7XG5cbi8vIDQ1LiBQcm90b3R5cGUgVGV4dC1VdGlsaXRpZXNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuJHByb3RvdHlwZS11dGlsaXRpZXMtYnJlYWtwb2ludHM6ICRnbG9iYWwtcHJvdG90eXBlLWJyZWFrcG9pbnRzO1xuJHByb3RvdHlwZS10ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcblxuLy8gNDYuIFJlc3BvbnNpdmUgRW1iZWRcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbiRyZXNwb25zaXZlLWVtYmVkLW1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDE2KTtcbiRyZXNwb25zaXZlLWVtYmVkLXJhdGlvczogKFxuICBkZWZhdWx0OiA0IGJ5IDMsXG4gIHdpZGVzY3JlZW46IDE2IGJ5IDksXG4pO1xuXG4vLyA0Ny4gUmV2ZWFsXG4vLyAtLS0tLS0tLS0tXG5cbiRyZXZlYWwtYmFja2dyb3VuZDogJHdoaXRlO1xuJHJldmVhbC13aWR0aDogNjAwcHg7XG4kcmV2ZWFsLW1heC13aWR0aDogJGdsb2JhbC13aWR0aDtcbiRyZXZlYWwtcGFkZGluZzogMnJlbTtcbiRyZXZlYWwtYm9yZGVyOiBub25lO1xuJHJldmVhbC1yYWRpdXM6IDNweDtcbiRyZXZlYWwtemluZGV4OiAxMDA1O1xuJHJldmVhbC1vdmVybGF5LWJhY2tncm91bmQ6IHJnYmEoJGJsYWNrLCAwLjg1KTtcblxuLy8gNDguIFNsaWRlclxuLy8gLS0tLS0tLS0tLVxuXG4kc2xpZGVyLXdpZHRoLXZlcnRpY2FsOiAwLjVyZW07XG4kc2xpZGVyLXRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2UtaW4tb3V0O1xuJHNsaWRlci1oZWlnaHQ6IDAuNXJlbTtcbiRzbGlkZXItYmFja2dyb3VuZDogJGxpZ2h0LWdyYXk7XG4kc2xpZGVyLWZpbGwtYmFja2dyb3VuZDogJG1lZGl1bS1ncmF5O1xuJHNsaWRlci1oYW5kbGUtaGVpZ2h0OiAxLjRyZW07XG4kc2xpZGVyLWhhbmRsZS13aWR0aDogMS40cmVtO1xuJHNsaWRlci1oYW5kbGUtYmFja2dyb3VuZDogJHByaW1hcnktY29sb3I7XG4kc2xpZGVyLW9wYWNpdHktZGlzYWJsZWQ6IDAuMjU7XG4kc2xpZGVyLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG5cbi8vIDQ5LiBTd2l0Y2hcbi8vIC0tLS0tLS0tLS1cblxuJHN3aXRjaC1iYWNrZ3JvdW5kOiAkbWVkaXVtLWdyYXk7XG4kc3dpdGNoLWJhY2tncm91bmQtYWN0aXZlOiAkcHJpbWFyeS1jb2xvcjtcbiRzd2l0Y2gtaGVpZ2h0OiAycmVtO1xuJHN3aXRjaC1oZWlnaHQtdGlueTogMS41cmVtO1xuJHN3aXRjaC1oZWlnaHQtc21hbGw6IDEuNzVyZW07XG4kc3dpdGNoLWhlaWdodC1sYXJnZTogMi41cmVtO1xuJHN3aXRjaC1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuJHN3aXRjaC1tYXJnaW46ICRnbG9iYWwtbWFyZ2luO1xuJHN3aXRjaC1wYWRkbGUtYmFja2dyb3VuZDogJHdoaXRlO1xuJHN3aXRjaC1wYWRkbGUtb2Zmc2V0OiAwLjI1cmVtO1xuJHN3aXRjaC1wYWRkbGUtcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcbiRzd2l0Y2gtcGFkZGxlLXRyYW5zaXRpb246IGFsbCAwLjI1cyBlYXNlLW91dDtcblxuLy8gNTAuIFRhYmxlXG4vLyAtLS0tLS0tLS1cblxuJHRhYmxlLWJhY2tncm91bmQ6ICR3aGl0ZTtcbiR0YWJsZS1jb2xvci1zY2FsZTogNSU7XG4kdGFibGUtYm9yZGVyOiAxcHggc29saWQgc21hcnQtc2NhbGUoJHRhYmxlLWJhY2tncm91bmQsICR0YWJsZS1jb2xvci1zY2FsZSk7XG4kdGFibGUtcGFkZGluZzogcmVtLWNhbGMoOCAxMCAxMCk7XG4kdGFibGUtaG92ZXItc2NhbGU6IDIlO1xuJHRhYmxlLXJvdy1ob3ZlcjogZGFya2VuKCR0YWJsZS1iYWNrZ3JvdW5kLCAkdGFibGUtaG92ZXItc2NhbGUpO1xuJHRhYmxlLXJvdy1zdHJpcGUtaG92ZXI6IGRhcmtlbigkdGFibGUtYmFja2dyb3VuZCwgJHRhYmxlLWNvbG9yLXNjYWxlICsgJHRhYmxlLWhvdmVyLXNjYWxlKTtcbiR0YWJsZS1pcy1zdHJpcGVkOiB0cnVlO1xuJHRhYmxlLXN0cmlwZWQtYmFja2dyb3VuZDogc21hcnQtc2NhbGUoJHRhYmxlLWJhY2tncm91bmQsICR0YWJsZS1jb2xvci1zY2FsZSk7XG4kdGFibGUtc3RyaXBlOiBldmVuO1xuJHRhYmxlLWhlYWQtYmFja2dyb3VuZDogc21hcnQtc2NhbGUoJHRhYmxlLWJhY2tncm91bmQsICR0YWJsZS1jb2xvci1zY2FsZSAvIDIpO1xuJHRhYmxlLWhlYWQtcm93LWhvdmVyOiBkYXJrZW4oJHRhYmxlLWhlYWQtYmFja2dyb3VuZCwgJHRhYmxlLWhvdmVyLXNjYWxlKTtcbiR0YWJsZS1mb290LWJhY2tncm91bmQ6IHNtYXJ0LXNjYWxlKCR0YWJsZS1iYWNrZ3JvdW5kLCAkdGFibGUtY29sb3Itc2NhbGUpO1xuJHRhYmxlLWZvb3Qtcm93LWhvdmVyOiBkYXJrZW4oJHRhYmxlLWZvb3QtYmFja2dyb3VuZCwgJHRhYmxlLWhvdmVyLXNjYWxlKTtcbiR0YWJsZS1oZWFkLWZvbnQtY29sb3I6ICRib2R5LWZvbnQtY29sb3I7XG4kdGFibGUtZm9vdC1mb250LWNvbG9yOiAkYm9keS1mb250LWNvbG9yO1xuJHNob3ctaGVhZGVyLWZvci1zdGFja2VkOiBmYWxzZTtcbiR0YWJsZS1zdGFjay1icmVha3BvaW50OiBtZWRpdW07XG5cbi8vIDUxLiBUYWJzXG4vLyAtLS0tLS0tLVxuXG4kdGFiLW1hcmdpbjogMDtcbiR0YWItYmFja2dyb3VuZDogJHdoaXRlO1xuJHRhYi1jb2xvcjogJHByaW1hcnktY29sb3I7XG4kdGFiLWJhY2tncm91bmQtYWN0aXZlOiAkbGlnaHQtZ3JheTtcbiR0YWItYWN0aXZlLWNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbiR0YWItaXRlbS1mb250LXNpemU6IHJlbS1jYWxjKDEyKTtcbiR0YWItaXRlbS1iYWNrZ3JvdW5kLWhvdmVyOiAkd2hpdGU7XG4kdGFiLWl0ZW0tcGFkZGluZzogMS4yNXJlbSAxLjVyZW07XG4kdGFiLWV4cGFuZC1tYXg6IDY7XG4kdGFiLWNvbnRlbnQtYmFja2dyb3VuZDogJHdoaXRlO1xuJHRhYi1jb250ZW50LWJvcmRlcjogJGxpZ2h0LWdyYXk7XG4kdGFiLWNvbnRlbnQtY29sb3I6ICRib2R5LWZvbnQtY29sb3I7XG4kdGFiLWNvbnRlbnQtcGFkZGluZzogMXJlbTtcblxuLy8gNTIuIFRodW1ibmFpbFxuLy8gLS0tLS0tLS0tLS0tLVxuXG4kdGh1bWJuYWlsLWJvcmRlcjogc29saWQgNHB4ICR3aGl0ZTtcbiR0aHVtYm5haWwtbWFyZ2luLWJvdHRvbTogJGdsb2JhbC1tYXJnaW47XG4kdGh1bWJuYWlsLXNoYWRvdzogMCAwIDAgMXB4IHJnYmEoJGJsYWNrLCAwLjIpO1xuJHRodW1ibmFpbC1zaGFkb3ctaG92ZXI6IDAgMCA2cHggMXB4IHJnYmEoJHByaW1hcnktY29sb3IsIDAuNSk7XG4kdGh1bWJuYWlsLXRyYW5zaXRpb246IGJveC1zaGFkb3cgMjAwbXMgZWFzZS1vdXQ7XG4kdGh1bWJuYWlsLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG5cbi8vIDUzLiBUaXRsZSBCYXJcbi8vIC0tLS0tLS0tLS0tLS1cblxuJHRpdGxlYmFyLWJhY2tncm91bmQ6ICRkYXJrLW5hdi1jb2xvcjtcbiR0aXRsZWJhci1jb2xvcjogJHdoaXRlO1xuJHRpdGxlYmFyLXBhZGRpbmc6IDAuNXJlbTtcbiR0aXRsZWJhci10ZXh0LWZvbnQtd2VpZ2h0OiBib2xkO1xuJHRpdGxlYmFyLWljb24tY29sb3I6ICR3aGl0ZTtcbiR0aXRsZWJhci1pY29uLWNvbG9yLWhvdmVyOiAkbWVkaXVtLWdyYXk7XG4kdGl0bGViYXItaWNvbi1zcGFjaW5nOiAwLjI1cmVtO1xuXG4vLyA1NC4gVG9vbHRpcFxuLy8gLS0tLS0tLS0tLS1cblxuJGhhcy10aXAtY3Vyc29yOiBoZWxwO1xuJGhhcy10aXAtZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LWJvbGQ7XG4kaGFzLXRpcC1ib3JkZXItYm90dG9tOiBkb3R0ZWQgMXB4ICRkYXJrLWdyYXk7XG4kdG9vbHRpcC1iYWNrZ3JvdW5kLWNvbG9yOiAkYmxhY2s7XG4kdG9vbHRpcC1jb2xvcjogJHdoaXRlO1xuJHRvb2x0aXAtcGFkZGluZzogMC43NXJlbTtcbiR0b29sdGlwLW1heC13aWR0aDogMTByZW07XG4kdG9vbHRpcC1mb250LXNpemU6ICRzbWFsbC1mb250LXNpemU7XG4kdG9vbHRpcC1waXAtd2lkdGg6IDAuNzVyZW07XG4kdG9vbHRpcC1waXAtaGVpZ2h0OiAkdG9vbHRpcC1waXAtd2lkdGggKiAwLjg2NjtcbiR0b29sdGlwLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG5cbi8vIDU1LiBUb3AgQmFyXG4vLyAtLS0tLS0tLS0tLVxuXG4kdG9wYmFyLXBhZGRpbmc6IDA7XG4kdG9wYmFyLWJhY2tncm91bmQ6ICRkYXJrLW5hdi1jb2xvcjtcbiR0b3BiYXItc3VibWVudS1iYWNrZ3JvdW5kOiAkdG9wYmFyLWJhY2tncm91bmQ7XG4kdG9wYmFyLXRpdGxlLXNwYWNpbmc6IDAuNXJlbSAxcmVtIDAuNXJlbSAwO1xuJHRvcGJhci1pbnB1dC13aWR0aDogMjAwcHg7XG4kdG9wYmFyLXVuc3RhY2stYnJlYWtwb2ludDogbWVkaXVtO1xuXG4vLyA1Ni4gWHkgR3JpZFxuLy8gLS0tLS0tLS0tLS1cblxuJHh5LWdyaWQ6IHRydWU7XG4kZ3JpZC1jb250YWluZXI6ICRnbG9iYWwtd2lkdGg7XG4kZ3JpZC1jb2x1bW5zOiAxMjtcbiRncmlkLW1hcmdpbi1ndXR0ZXJzOiAoXG4gIHNtYWxsOiAxOHB4LFxuICBtZWRpdW06IDIwcHgsXG4gIGxhcmdlOiAyNHB4LFxuICB4bGFyZ2U6IDI0cHgsXG4gIHh4bGFyZ2U6IDI0cHgsXG4pO1xuJGdyaWQtcGFkZGluZy1ndXR0ZXJzOiAkZ3JpZC1tYXJnaW4tZ3V0dGVycztcblxuLy9OT1RFOiB0aGVzZSBhcmUgdG90YWwgcGFkZGluZywgbm90IHBlci1zaWRlXG4vL3Blci1zaWRlIHBhZGRpbmcgd2lsbCBiZSBoYWxmIG9mIHRoaXMgaWYgdGhlIGl0ZW0gaXMgY2VudGVyZWRcbiRncmlkLWNvbnRhaW5lci1wYWRkaW5nOiAoXG4gIHNtYWxsOiByZW0tY2FsYyg0OCksXG4gIG1lZGl1bTogcmVtLWNhbGMoMTQwKSxcbiAgbGFyZ2U6IHJlbS1jYWxjKDIwMCksXG4gIHhsYXJnZTpyZW0tY2FsYygyNDApLFxuICB4eGxhcmdlOiByZW0tY2FsYygyNDApLFxuKTtcbiRncmlkLWNvbnRhaW5lci1tYXg6ICRnbG9iYWwtd2lkdGg7XG4keHktYmxvY2stZ3JpZC1tYXg6IDg7XG5cbi8vdGhlc2UgcGFkZGluZyB2YWx1ZXMgYXJlIHBlci1zaWRlXG4kc2VjdGlvbi1wYWRkaW5nLWxlZnRyaWdodDogKFxuICBzbWFsbDptYXAtZ2V0KCRncmlkLWNvbnRhaW5lci1wYWRkaW5nLHNtYWxsKSAvIDIsXG4gIG1lZGl1bTptYXAtZ2V0KCRncmlkLWNvbnRhaW5lci1wYWRkaW5nLG1lZGl1bSkgLyAyLFxuICBsYXJnZTptYXAtZ2V0KCRncmlkLWNvbnRhaW5lci1wYWRkaW5nLGxhcmdlKSAvIDIsXG4gIHhsYXJnZTptYXAtZ2V0KCRncmlkLWNvbnRhaW5lci1wYWRkaW5nLHhsYXJnZSkgLyAyLFxuICB4eGxhcmdlOm1hcC1nZXQoJGdyaWQtY29udGFpbmVyLXBhZGRpbmcseHhsYXJnZSkgLyAyLFxuKTtcblxuLy90aGVzZSBwYWRkaW5nIHZhbHVlcyBhcmUgcGVyLXNpZGVcbiRzZWN0aW9uLXBhZGRpbmctdG9wYm90dG9tOiAoXG4gIHNtYWxsOm1hcC1nZXQoJHNlY3Rpb24tcGFkZGluZy1sZWZ0cmlnaHQsc21hbGwpKjMsXG4gIG1lZGl1bTptYXAtZ2V0KCRzZWN0aW9uLXBhZGRpbmctbGVmdHJpZ2h0LG1lZGl1bSkqMixcbiAgbGFyZ2U6bWFwLWdldCgkc2VjdGlvbi1wYWRkaW5nLWxlZnRyaWdodCxsYXJnZSkqMS4yLFxuICB4bGFyZ2U6bWFwLWdldCgkc2VjdGlvbi1wYWRkaW5nLWxlZnRyaWdodCx4bGFyZ2UpKjEuMixcbiAgeHhsYXJnZTptYXAtZ2V0KCRzZWN0aW9uLXBhZGRpbmctbGVmdHJpZ2h0LHh4bGFyZ2UpKjEuMixcbik7XG5cbiRzZWN0aW9uLW1vYmlsZS1wYWRkaW5nOm1hcC1nZXQoJHNlY3Rpb24tcGFkZGluZy1sZWZ0cmlnaHQsc21hbGwpO1xuJHNlY3Rpb24tbWVkaXVtLXBhZGRpbmc6bWFwLWdldCgkc2VjdGlvbi1wYWRkaW5nLWxlZnRyaWdodCxtZWRpdW0pO1xuJHNlY3Rpb24tbGFyZ2UtcGFkZGluZzptYXAtZ2V0KCRzZWN0aW9uLXBhZGRpbmctbGVmdHJpZ2h0LGxhcmdlKTtcbiRzZWN0aW9uLXhsYXJnZS1wYWRkaW5nOm1hcC1nZXQoJHNlY3Rpb24tcGFkZGluZy1sZWZ0cmlnaHQseGxhcmdlKTtcbiRzZWN0aW9uLXh4bGFyZ2UtcGFkZGluZzptYXAtZ2V0KCRzZWN0aW9uLXBhZGRpbmctbGVmdHJpZ2h0LHh4bGFyZ2UpO1xuXG4kZWxlbWVudC1zaWRlczogKFxuXHR0b3A6IHQsXG5cdHJpZ2h0OiByLFxuXHRib3R0b206IGIsXG5cdGxlZnQ6IGwsXG5cdGFsbDphbGxcbik7XG5cbiRzcGFjaW5nLXR5cGVzOiAoXG5cdG1hcmdpbjogbSxcblx0cGFkZGluZzogcFxuKTtcbiIsIi8vIEhlbHBlciBmdW5jdGlvbiBmb3IgdGhlIG5vcm1hbGl6ZSgpIG1peGluLlxuQGZ1bmN0aW9uIF9ub3JtYWxpemUtaW5jbHVkZSgkc2VjdGlvbiwgJGV4Y2x1ZGU6IG51bGwpIHtcbiAgLy8gSW5pdGlhbGl6ZSB0aGUgZ2xvYmFsIHZhcmlhYmxlcyBuZWVkZWQgYnkgdGhpcyBmdW5jdGlvbi5cbiAgQGlmIG5vdCBnbG9iYWxfdmFyaWFibGVfZXhpc3RzKF9ub3JtYWxpemUtaW5jbHVkZSkge1xuICAgICRfbm9ybWFsaXplLWluY2x1ZGU6ICgpICFnbG9iYWw7XG4gICAgJF9ub3JtYWxpemUtZXhjbHVkZTogKCkgIWdsb2JhbDtcbiAgfVxuICAvLyBTaW5jZSB3ZSBhcmUgZ2l2ZW4gMiBwYXJhbWV0ZXJzLCBzZXQgdGhlIGdsb2JhbCB2YXJpYWJsZXMuXG4gIEBpZiAkZXhjbHVkZSAhPSBudWxsIHtcbiAgICAkaW5jbHVkZTogJHNlY3Rpb247XG4gICAgLy8gU2FzcyBkb2Vzbid0IGhhdmUgc3RhdGljIHZhcmlhYmxlcywgc28gdGhlIHdvcmstYXJvdW5kIGlzIHRvIHN0dWZmIHRoZXNlXG4gICAgLy8gdmFsdWVzIGludG8gZ2xvYmFsIHZhcmlhYmxlcyBzbyB3ZSBjYW4gYWNjZXNzIHRoZW0gaW4gZnV0dXJlIGNhbGxzLlxuICAgICRfbm9ybWFsaXplLWluY2x1ZGU6IGlmKHR5cGUtb2YoJGluY2x1ZGUpID09ICdsaXN0JywgJGluY2x1ZGUsICgkaW5jbHVkZSkpICFnbG9iYWw7XG4gICAgJF9ub3JtYWxpemUtZXhjbHVkZTogaWYodHlwZS1vZigkZXhjbHVkZSkgPT0gJ2xpc3QnLCAkZXhjbHVkZSwgKCRleGNsdWRlKSkgIWdsb2JhbDtcbiAgICBAcmV0dXJuIHRydWU7XG4gIH1cblxuICAvLyBDaGVjayBpZiAkc2VjdGlvbiBpcyBpbiB0aGUgJGluY2x1ZGUgbGlzdC5cbiAgQGlmIGluZGV4KCRfbm9ybWFsaXplLWluY2x1ZGUsICRzZWN0aW9uKSB7XG4gICAgQHJldHVybiB0cnVlO1xuICB9XG4gIC8vIElmICRpbmNsdWRlIGlzIHNldCB0byAoYWxsKSwgbWFrZSBzdXJlICRzZWN0aW9uIGlzIG5vdCBpbiAkZXhjbHVkZS5cbiAgQGVsc2UgaWYgbm90IGluZGV4KCRfbm9ybWFsaXplLWV4Y2x1ZGUsICRzZWN0aW9uKSBhbmQgaW5kZXgoJF9ub3JtYWxpemUtaW5jbHVkZSwgYWxsKSB7XG4gICAgQHJldHVybiB0cnVlO1xuICB9XG4gIEByZXR1cm4gZmFsc2U7XG59XG5cbkBtaXhpbiBub3JtYWxpemUoJGluY2x1ZGU6IChhbGwpLCAkZXhjbHVkZTogKCkpIHtcbiAgLy8gSW5pdGlhbGl6ZSB0aGUgaGVscGVyIGZ1bmN0aW9uIGJ5IHBhc3NpbmcgaXQgdGhpcyBtaXhpbidzIHBhcmFtZXRlcnMuXG4gICRpbml0OiBfbm9ybWFsaXplLWluY2x1ZGUoJGluY2x1ZGUsICRleGNsdWRlKTtcblxuICAvLyBJZiB3ZSd2ZSBjdXN0b21pemVkIGFueSBmb250IHZhcmlhYmxlcywgd2UnbGwgbmVlZCBleHRyYSBwcm9wZXJ0aWVzLlxuICBAaWYgJGJhc2UtZm9udC1zaXplICE9IDE2cHhcbiAgICBvciAkYmFzZS1saW5lLWhlaWdodCAhPSAyNHB4XG4gICAgb3IgJGJhc2UtdW5pdCAhPSAnZW0nXG4gICAgb3IgJGgxLWZvbnQtc2l6ZSAhPSAyICAgICogJGJhc2UtZm9udC1zaXplXG4gICAgb3IgJGgyLWZvbnQtc2l6ZSAhPSAxLjUgICogJGJhc2UtZm9udC1zaXplXG4gICAgb3IgJGgzLWZvbnQtc2l6ZSAhPSAxLjE3ICogJGJhc2UtZm9udC1zaXplXG4gICAgb3IgJGg0LWZvbnQtc2l6ZSAhPSAxICAgICogJGJhc2UtZm9udC1zaXplXG4gICAgb3IgJGg1LWZvbnQtc2l6ZSAhPSAwLjgzICogJGJhc2UtZm9udC1zaXplXG4gICAgb3IgJGg2LWZvbnQtc2l6ZSAhPSAwLjY3ICogJGJhc2UtZm9udC1zaXplIHtcbiAgICAkbm9ybWFsaXplLXZlcnRpY2FsLXJoeXRobTogdHJ1ZSAhZ2xvYmFsO1xuICB9XG5cbiAgLyohIG5vcm1hbGl6ZS1zY3NzIHwgTUlUL0dQTHYyIExpY2Vuc2UgfCBiaXQubHkvbm9ybWFsaXplLXNjc3MgKi9cblxuICBAaWYgX25vcm1hbGl6ZS1pbmNsdWRlKGRvY3VtZW50KSB7XG4gICAgLyogRG9jdW1lbnRcbiAgICAgICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4gICAgLyoqXG4gICAgICogMS4gQ2hhbmdlIHRoZSBkZWZhdWx0IGZvbnQgZmFtaWx5IGluIGFsbCBicm93c2VycyAob3BpbmlvbmF0ZWQpLlxuICAgICAqIDIuIENvcnJlY3QgdGhlIGxpbmUgaGVpZ2h0IGluIGFsbCBicm93c2Vycy5cbiAgICAgKiAzLiBQcmV2ZW50IGFkanVzdG1lbnRzIG9mIGZvbnQgc2l6ZSBhZnRlciBvcmllbnRhdGlvbiBjaGFuZ2VzIGluXG4gICAgICogICAgSUUgb24gV2luZG93cyBQaG9uZSBhbmQgaW4gaU9TLlxuICAgICAqL1xuXG4gICAgaHRtbCB7XG4gICAgICBmb250LWZhbWlseTogJGJhc2UtZm9udC1mYW1pbHk7IC8qIDEgKi9cbiAgICAgIEBpZiAkbm9ybWFsaXplLXZlcnRpY2FsLXJoeXRobSB7XG4gICAgICAgIC8vIENvcnJlY3Qgb2xkIGJyb3dzZXIgYnVnIHRoYXQgcHJldmVudGVkIGFjY2Vzc2libGUgcmVzaXppbmcgb2YgdGV4dFxuICAgICAgICAvLyB3aGVuIHJvb3QgZm9udC1zaXplIGlzIHNldCB3aXRoIHB4IG9yIGVtLlxuICAgICAgICBmb250LXNpemU6ICgkYmFzZS1mb250LXNpemUgLyAxNnB4KSAqIDEwMCU7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAoJGJhc2UtbGluZS1oZWlnaHQgLyAkYmFzZS1mb250LXNpemUpICogMWVtOyAvKiAyICovXG4gICAgICB9XG4gICAgICBAZWxzZSB7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxLjE1OyAvKiAyICovXG4gICAgICB9XG4gICAgICAtbXMtdGV4dC1zaXplLWFkanVzdDogMTAwJTsgLyogMyAqL1xuICAgICAgLXdlYmtpdC10ZXh0LXNpemUtYWRqdXN0OiAxMDAlOyAvKiAzICovXG4gICAgfVxuICB9XG5cbiAgQGlmIF9ub3JtYWxpemUtaW5jbHVkZShzZWN0aW9ucykge1xuICAgIC8qIFNlY3Rpb25zXG4gICAgICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuICAgIC8qKlxuICAgICAqIFJlbW92ZSB0aGUgbWFyZ2luIGluIGFsbCBicm93c2VycyAob3BpbmlvbmF0ZWQpLlxuICAgICAqL1xuXG4gICAgYm9keSB7XG4gICAgICBtYXJnaW46IDA7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUgOS0uXG4gICAgICovXG5cbiAgICBhcnRpY2xlLFxuICAgIGFzaWRlLFxuICAgIGZvb3RlcixcbiAgICBoZWFkZXIsXG4gICAgbmF2LFxuICAgIHNlY3Rpb24ge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQ29ycmVjdCB0aGUgZm9udCBzaXplIGFuZCBtYXJnaW4gb24gYGgxYCBlbGVtZW50cyB3aXRoaW4gYHNlY3Rpb25gIGFuZFxuICAgICAqIGBhcnRpY2xlYCBjb250ZXh0cyBpbiBDaHJvbWUsIEZpcmVmb3gsIGFuZCBTYWZhcmkuXG4gICAgICovXG5cbiAgICBoMSB7XG4gICAgICBAaW5jbHVkZSBub3JtYWxpemUtZm9udC1zaXplKCRoMS1mb250LXNpemUpO1xuICAgICAgQGlmICRub3JtYWxpemUtdmVydGljYWwtcmh5dGhtIHtcbiAgICAgICAgQGluY2x1ZGUgbm9ybWFsaXplLWxpbmUtaGVpZ2h0KCRoMS1mb250LXNpemUpO1xuICAgICAgfVxuXG4gICAgICBAaWYgJG5vcm1hbGl6ZS12ZXJ0aWNhbC1yaHl0aG0ge1xuICAgICAgICAvKiBTZXQgMSB1bml0IG9mIHZlcnRpY2FsIHJoeXRobSBvbiB0aGUgdG9wIGFuZCBib3R0b20gbWFyZ2lucy4gKi9cbiAgICAgICAgQGluY2x1ZGUgbm9ybWFsaXplLW1hcmdpbigxIDAsICRoMS1mb250LXNpemUpO1xuICAgICAgfVxuICAgICAgQGVsc2Uge1xuICAgICAgICBtYXJnaW46IDAuNjdlbSAwO1xuICAgICAgfVxuICAgIH1cblxuICAgIEBpZiAkbm9ybWFsaXplLXZlcnRpY2FsLXJoeXRobSB7XG4gICAgICBoMiB7XG4gICAgICAgIEBpbmNsdWRlIG5vcm1hbGl6ZS1mb250LXNpemUoJGgyLWZvbnQtc2l6ZSk7XG4gICAgICAgIEBpbmNsdWRlIG5vcm1hbGl6ZS1saW5lLWhlaWdodCgkaDItZm9udC1zaXplKTtcbiAgICAgICAgQGluY2x1ZGUgbm9ybWFsaXplLW1hcmdpbigxIDAsICRoMi1mb250LXNpemUpO1xuICAgICAgfVxuXG4gICAgICBoMyB7XG4gICAgICAgIEBpbmNsdWRlIG5vcm1hbGl6ZS1mb250LXNpemUoJGgzLWZvbnQtc2l6ZSk7XG4gICAgICAgIEBpbmNsdWRlIG5vcm1hbGl6ZS1saW5lLWhlaWdodCgkaDMtZm9udC1zaXplKTtcbiAgICAgICAgQGluY2x1ZGUgbm9ybWFsaXplLW1hcmdpbigxIDAsICRoMy1mb250LXNpemUpO1xuICAgICAgfVxuXG4gICAgICBoNCB7XG4gICAgICAgIEBpbmNsdWRlIG5vcm1hbGl6ZS1mb250LXNpemUoJGg0LWZvbnQtc2l6ZSk7XG4gICAgICAgIEBpbmNsdWRlIG5vcm1hbGl6ZS1saW5lLWhlaWdodCgkaDQtZm9udC1zaXplKTtcbiAgICAgICAgQGluY2x1ZGUgbm9ybWFsaXplLW1hcmdpbigxIDAsICRoNC1mb250LXNpemUpO1xuICAgICAgfVxuXG4gICAgICBoNSB7XG4gICAgICAgIEBpbmNsdWRlIG5vcm1hbGl6ZS1mb250LXNpemUoJGg1LWZvbnQtc2l6ZSk7XG4gICAgICAgIEBpbmNsdWRlIG5vcm1hbGl6ZS1saW5lLWhlaWdodCgkaDUtZm9udC1zaXplKTtcbiAgICAgICAgQGluY2x1ZGUgbm9ybWFsaXplLW1hcmdpbigxIDAsICRoNS1mb250LXNpemUpO1xuICAgICAgfVxuXG4gICAgICBoNiB7XG4gICAgICAgIEBpbmNsdWRlIG5vcm1hbGl6ZS1mb250LXNpemUoJGg2LWZvbnQtc2l6ZSk7XG4gICAgICAgIEBpbmNsdWRlIG5vcm1hbGl6ZS1saW5lLWhlaWdodCgkaDYtZm9udC1zaXplKTtcbiAgICAgICAgQGluY2x1ZGUgbm9ybWFsaXplLW1hcmdpbigxIDAsICRoNi1mb250LXNpemUpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIEBpZiBfbm9ybWFsaXplLWluY2x1ZGUoZ3JvdXBpbmcpIHtcbiAgICAvKiBHcm91cGluZyBjb250ZW50XG4gICAgICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuICAgIEBpZiAkbm9ybWFsaXplLXZlcnRpY2FsLXJoeXRobSB7XG4gICAgICAvKipcbiAgICAgICAqIFNldCAxIHVuaXQgb2YgdmVydGljYWwgcmh5dGhtIG9uIHRoZSB0b3AgYW5kIGJvdHRvbSBtYXJnaW4uXG4gICAgICAgKi9cblxuICAgICAgYmxvY2txdW90ZSB7XG4gICAgICAgIEBpbmNsdWRlIG5vcm1hbGl6ZS1tYXJnaW4oMSAkaW5kZW50LWFtb3VudCk7XG4gICAgICB9XG5cbiAgICAgIGRsLFxuICAgICAgb2wsXG4gICAgICB1bCB7XG4gICAgICAgIEBpbmNsdWRlIG5vcm1hbGl6ZS1tYXJnaW4oMSAwKTtcbiAgICAgIH1cblxuICAgICAgLyoqXG4gICAgICAgKiBUdXJuIG9mZiBtYXJnaW5zIG9uIG5lc3RlZCBsaXN0cy5cbiAgICAgICAqL1xuXG4gICAgICBvbCxcbiAgICAgIHVsIHtcbiAgICAgICAgb2wsXG4gICAgICAgIHVsIHtcbiAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgZGQge1xuICAgICAgICBtYXJnaW46IDAgMCAwICRpbmRlbnQtYW1vdW50O1xuICAgICAgfVxuXG4gICAgICBvbCxcbiAgICAgIHVsIHtcbiAgICAgICAgcGFkZGluZzogMCAwIDAgJGluZGVudC1hbW91bnQ7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUgOS0uXG4gICAgICovXG5cbiAgICBmaWdjYXB0aW9uLFxuICAgIGZpZ3VyZSB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBBZGQgdGhlIGNvcnJlY3QgbWFyZ2luIGluIElFIDguXG4gICAgICovXG5cbiAgICBmaWd1cmUge1xuICAgICAgQGlmICRub3JtYWxpemUtdmVydGljYWwtcmh5dGhtIHtcbiAgICAgICAgQGluY2x1ZGUgbm9ybWFsaXplLW1hcmdpbigxICRpbmRlbnQtYW1vdW50KTtcbiAgICAgIH1cbiAgICAgIEBlbHNlIHtcbiAgICAgICAgbWFyZ2luOiAxZW0gJGluZGVudC1hbW91bnQ7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogMS4gQWRkIHRoZSBjb3JyZWN0IGJveCBzaXppbmcgaW4gRmlyZWZveC5cbiAgICAgKiAyLiBTaG93IHRoZSBvdmVyZmxvdyBpbiBFZGdlIGFuZCBJRS5cbiAgICAgKi9cblxuICAgIGhyIHtcbiAgICAgIGJveC1zaXppbmc6IGNvbnRlbnQtYm94OyAvKiAxICovXG4gICAgICBoZWlnaHQ6IDA7IC8qIDEgKi9cbiAgICAgIG92ZXJmbG93OiB2aXNpYmxlOyAvKiAyICovXG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUuXG4gICAgICovXG5cbiAgICBtYWluIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIH1cblxuICAgIEBpZiAkbm9ybWFsaXplLXZlcnRpY2FsLXJoeXRobSB7XG4gICAgICAvKipcbiAgICAgICAqIFNldCAxIHVuaXQgb2YgdmVydGljYWwgcmh5dGhtIG9uIHRoZSB0b3AgYW5kIGJvdHRvbSBtYXJnaW4uXG4gICAgICAgKi9cblxuICAgICAgcCxcbiAgICAgIHByZSB7XG4gICAgICAgIEBpbmNsdWRlIG5vcm1hbGl6ZS1tYXJnaW4oMSAwKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiAxLiBDb3JyZWN0IHRoZSBpbmhlcml0YW5jZSBhbmQgc2NhbGluZyBvZiBmb250IHNpemUgaW4gYWxsIGJyb3dzZXJzLlxuICAgICAqIDIuIENvcnJlY3QgdGhlIG9kZCBgZW1gIGZvbnQgc2l6aW5nIGluIGFsbCBicm93c2Vycy5cbiAgICAgKi9cblxuICAgIHByZSB7XG4gICAgICBmb250LWZhbWlseTogbW9ub3NwYWNlLCBtb25vc3BhY2U7IC8qIDEgKi9cbiAgICAgIGZvbnQtc2l6ZTogMWVtOyAvKiAyICovXG4gICAgfVxuICB9XG5cbiAgQGlmIF9ub3JtYWxpemUtaW5jbHVkZShsaW5rcykge1xuICAgIC8qIExpbmtzXG4gICAgICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuICAgIC8qKlxuICAgICAqIDEuIFJlbW92ZSB0aGUgZ3JheSBiYWNrZ3JvdW5kIG9uIGFjdGl2ZSBsaW5rcyBpbiBJRSAxMC5cbiAgICAgKiAyLiBSZW1vdmUgZ2FwcyBpbiBsaW5rcyB1bmRlcmxpbmUgaW4gaU9TIDgrIGFuZCBTYWZhcmkgOCsuXG4gICAgICovXG5cbiAgICBhIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50OyAvKiAxICovXG4gICAgICAtd2Via2l0LXRleHQtZGVjb3JhdGlvbi1za2lwOiBvYmplY3RzOyAvKiAyICovXG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogUmVtb3ZlIHRoZSBvdXRsaW5lIG9uIGZvY3VzZWQgbGlua3Mgd2hlbiB0aGV5IGFyZSBhbHNvIGFjdGl2ZSBvciBob3ZlcmVkXG4gICAgICogaW4gYWxsIGJyb3dzZXJzIChvcGluaW9uYXRlZCkuXG4gICAgICovXG5cbiAgICBhOmFjdGl2ZSxcbiAgICBhOmhvdmVyIHtcbiAgICAgIG91dGxpbmUtd2lkdGg6IDA7XG4gICAgfVxuICB9XG5cbiAgQGlmIF9ub3JtYWxpemUtaW5jbHVkZSh0ZXh0KSB7XG4gICAgLyogVGV4dC1sZXZlbCBzZW1hbnRpY3NcbiAgICAgICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4gICAgLyoqXG4gICAgICogMS4gUmVtb3ZlIHRoZSBib3R0b20gYm9yZGVyIGluIEZpcmVmb3ggMzktLlxuICAgICAqIDIuIEFkZCB0aGUgY29ycmVjdCB0ZXh0IGRlY29yYXRpb24gaW4gQ2hyb21lLCBFZGdlLCBJRSwgT3BlcmEsIGFuZCBTYWZhcmkuXG4gICAgICovXG5cbiAgICBhYmJyW3RpdGxlXSB7XG4gICAgICBib3JkZXItYm90dG9tOiBub25lOyAvKiAxICovXG4gICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTsgLyogMiAqL1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmUgZG90dGVkOyAvKiAyICovXG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogUHJldmVudCB0aGUgZHVwbGljYXRlIGFwcGxpY2F0aW9uIG9mIGBib2xkZXJgIGJ5IHRoZSBuZXh0IHJ1bGUgaW4gU2FmYXJpIDYuXG4gICAgICovXG5cbiAgICBiLFxuICAgIHN0cm9uZyB7XG4gICAgICBmb250LXdlaWdodDogaW5oZXJpdDtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBBZGQgdGhlIGNvcnJlY3QgZm9udCB3ZWlnaHQgaW4gQ2hyb21lLCBFZGdlLCBhbmQgU2FmYXJpLlxuICAgICAqL1xuXG4gICAgYixcbiAgICBzdHJvbmcge1xuICAgICAgZm9udC13ZWlnaHQ6IGJvbGRlcjtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiAxLiBDb3JyZWN0IHRoZSBpbmhlcml0YW5jZSBhbmQgc2NhbGluZyBvZiBmb250IHNpemUgaW4gYWxsIGJyb3dzZXJzLlxuICAgICAqIDIuIENvcnJlY3QgdGhlIG9kZCBgZW1gIGZvbnQgc2l6aW5nIGluIGFsbCBicm93c2Vycy5cbiAgICAgKi9cblxuICAgIGNvZGUsXG4gICAga2JkLFxuICAgIHNhbXAge1xuICAgICAgZm9udC1mYW1pbHk6IG1vbm9zcGFjZSwgbW9ub3NwYWNlOyAvKiAxICovXG4gICAgICBmb250LXNpemU6IDFlbTsgLyogMiAqL1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIEFkZCB0aGUgY29ycmVjdCBmb250IHN0eWxlIGluIEFuZHJvaWQgNC4zLS5cbiAgICAgKi9cblxuICAgIGRmbiB7XG4gICAgICBmb250LXN0eWxlOiBpdGFsaWM7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQWRkIHRoZSBjb3JyZWN0IGJhY2tncm91bmQgYW5kIGNvbG9yIGluIElFIDktLlxuICAgICAqL1xuXG4gICAgbWFyayB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmYwO1xuICAgICAgY29sb3I6ICMwMDA7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQWRkIHRoZSBjb3JyZWN0IGZvbnQgc2l6ZSBpbiBhbGwgYnJvd3NlcnMuXG4gICAgICovXG5cbiAgICBzbWFsbCB7XG4gICAgICBmb250LXNpemU6IDgwJTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBQcmV2ZW50IGBzdWJgIGFuZCBgc3VwYCBlbGVtZW50cyBmcm9tIGFmZmVjdGluZyB0aGUgbGluZSBoZWlnaHQgaW5cbiAgICAgKiBhbGwgYnJvd3NlcnMuXG4gICAgICovXG5cbiAgICBzdWIsXG4gICAgc3VwIHtcbiAgICAgIGZvbnQtc2l6ZTogNzUlO1xuICAgICAgbGluZS1oZWlnaHQ6IDA7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG4gICAgfVxuXG4gICAgc3ViIHtcbiAgICAgIGJvdHRvbTogLTAuMjVlbTtcbiAgICB9XG5cbiAgICBzdXAge1xuICAgICAgdG9wOiAtMC41ZW07XG4gICAgfVxuICB9XG5cbiAgQGlmIF9ub3JtYWxpemUtaW5jbHVkZShlbWJlZGRlZCkge1xuICAgIC8qIEVtYmVkZGVkIGNvbnRlbnRcbiAgICAgICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4gICAgLyoqXG4gICAgICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUgOS0uXG4gICAgICovXG5cbiAgICBhdWRpbyxcbiAgICB2aWRlbyB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gaU9TIDQtNy5cbiAgICAgKi9cblxuICAgIGF1ZGlvOm5vdChbY29udHJvbHNdKSB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgaGVpZ2h0OiAwO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIFJlbW92ZSB0aGUgYm9yZGVyIG9uIGltYWdlcyBpbnNpZGUgbGlua3MgaW4gSUUgMTAtLlxuICAgICAqL1xuXG4gICAgaW1nIHtcbiAgICAgIGJvcmRlci1zdHlsZTogbm9uZTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBIaWRlIHRoZSBvdmVyZmxvdyBpbiBJRS5cbiAgICAgKi9cblxuICAgIHN2Zzpub3QoOnJvb3QpIHtcbiAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgfVxuICB9XG5cbiAgQGlmIF9ub3JtYWxpemUtaW5jbHVkZShmb3Jtcykge1xuICAgIC8qIEZvcm1zXG4gICAgICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuICAgIC8qKlxuICAgICAqIDEuIENoYW5nZSB0aGUgZm9udCBzdHlsZXMgaW4gYWxsIGJyb3dzZXJzIChvcGluaW9uYXRlZCkuXG4gICAgICogMi4gUmVtb3ZlIHRoZSBtYXJnaW4gaW4gRmlyZWZveCBhbmQgU2FmYXJpLlxuICAgICAqL1xuXG4gICAgYnV0dG9uLFxuICAgIGlucHV0LFxuICAgIG9wdGdyb3VwLFxuICAgIHNlbGVjdCxcbiAgICB0ZXh0YXJlYSB7XG4gICAgICBmb250LWZhbWlseTogJGJhc2UtZm9udC1mYW1pbHk7IC8qIDEgKi9cbiAgICAgIGZvbnQtc2l6ZTogMTAwJTsgLyogMSAqL1xuICAgICAgQGlmICRub3JtYWxpemUtdmVydGljYWwtcmh5dGhtIHtcbiAgICAgICAgbGluZS1oZWlnaHQ6ICgkYmFzZS1saW5lLWhlaWdodCAvICRiYXNlLWZvbnQtc2l6ZSkgKiAxZW07IC8qIDEgKi9cbiAgICAgIH1cbiAgICAgIEBlbHNlIHtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuMTU7IC8qIDEgKi9cbiAgICAgIH1cbiAgICAgIG1hcmdpbjogMDsgLyogMiAqL1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIFNob3cgdGhlIG92ZXJmbG93IGluIElFLlxuICAgICAqL1xuXG4gICAgYnV0dG9uIHtcbiAgICAgIG92ZXJmbG93OiB2aXNpYmxlO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIFJlbW92ZSB0aGUgaW5oZXJpdGFuY2Ugb2YgdGV4dCB0cmFuc2Zvcm0gaW4gRWRnZSwgRmlyZWZveCwgYW5kIElFLlxuICAgICAqIDEuIFJlbW92ZSB0aGUgaW5oZXJpdGFuY2Ugb2YgdGV4dCB0cmFuc2Zvcm0gaW4gRmlyZWZveC5cbiAgICAgKi9cblxuICAgIGJ1dHRvbixcbiAgICBzZWxlY3QgeyAvKiAxICovXG4gICAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiAxLiBQcmV2ZW50IGEgV2ViS2l0IGJ1ZyB3aGVyZSAoMikgZGVzdHJveXMgbmF0aXZlIGBhdWRpb2AgYW5kIGB2aWRlb2BcbiAgICAgKiAgICBjb250cm9scyBpbiBBbmRyb2lkIDQuXG4gICAgICogMi4gQ29ycmVjdCB0aGUgaW5hYmlsaXR5IHRvIHN0eWxlIGNsaWNrYWJsZSB0eXBlcyBpbiBpT1MgYW5kIFNhZmFyaS5cbiAgICAgKi9cblxuICAgIGJ1dHRvbixcbiAgICBodG1sIFt0eXBlPVwiYnV0dG9uXCJdLCAvKiAxICovXG4gICAgW3R5cGU9XCJyZXNldFwiXSxcbiAgICBbdHlwZT1cInN1Ym1pdFwiXSB7XG4gICAgICAtd2Via2l0LWFwcGVhcmFuY2U6IGJ1dHRvbjsgLyogMiAqL1xuICAgIH1cblxuICAgIGJ1dHRvbixcbiAgICBbdHlwZT1cImJ1dHRvblwiXSxcbiAgICBbdHlwZT1cInJlc2V0XCJdLFxuICAgIFt0eXBlPVwic3VibWl0XCJdIHtcblxuICAgICAgLyoqXG4gICAgICAgKiBSZW1vdmUgdGhlIGlubmVyIGJvcmRlciBhbmQgcGFkZGluZyBpbiBGaXJlZm94LlxuICAgICAgICovXG5cbiAgICAgICY6Oi1tb3otZm9jdXMtaW5uZXIge1xuICAgICAgICBib3JkZXItc3R5bGU6IG5vbmU7XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICB9XG5cbiAgICAgIC8qKlxuICAgICAgICogUmVzdG9yZSB0aGUgZm9jdXMgc3R5bGVzIHVuc2V0IGJ5IHRoZSBwcmV2aW91cyBydWxlLlxuICAgICAgICovXG5cbiAgICAgICY6LW1vei1mb2N1c3Jpbmcge1xuICAgICAgICBvdXRsaW5lOiAxcHggZG90dGVkIEJ1dHRvblRleHQ7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogU2hvdyB0aGUgb3ZlcmZsb3cgaW4gRWRnZS5cbiAgICAgKi9cblxuICAgIGlucHV0IHtcbiAgICAgIG92ZXJmbG93OiB2aXNpYmxlO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIDEuIEFkZCB0aGUgY29ycmVjdCBib3ggc2l6aW5nIGluIElFIDEwLS5cbiAgICAgKiAyLiBSZW1vdmUgdGhlIHBhZGRpbmcgaW4gSUUgMTAtLlxuICAgICAqL1xuXG4gICAgW3R5cGU9XCJjaGVja2JveFwiXSxcbiAgICBbdHlwZT1cInJhZGlvXCJdIHtcbiAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7IC8qIDEgKi9cbiAgICAgIHBhZGRpbmc6IDA7IC8qIDIgKi9cbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBDb3JyZWN0IHRoZSBjdXJzb3Igc3R5bGUgb2YgaW5jcmVtZW50IGFuZCBkZWNyZW1lbnQgYnV0dG9ucyBpbiBDaHJvbWUuXG4gICAgICovXG5cbiAgICBbdHlwZT1cIm51bWJlclwiXTo6LXdlYmtpdC1pbm5lci1zcGluLWJ1dHRvbixcbiAgICBbdHlwZT1cIm51bWJlclwiXTo6LXdlYmtpdC1vdXRlci1zcGluLWJ1dHRvbiB7XG4gICAgICBoZWlnaHQ6IGF1dG87XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogMS4gQ29ycmVjdCB0aGUgb2RkIGFwcGVhcmFuY2UgaW4gQ2hyb21lIGFuZCBTYWZhcmkuXG4gICAgICogMi4gQ29ycmVjdCB0aGUgb3V0bGluZSBzdHlsZSBpbiBTYWZhcmkuXG4gICAgICovXG5cbiAgICBbdHlwZT1cInNlYXJjaFwiXSB7XG4gICAgICAtd2Via2l0LWFwcGVhcmFuY2U6IHRleHRmaWVsZDsgLyogMSAqL1xuICAgICAgb3V0bGluZS1vZmZzZXQ6IC0ycHg7IC8qIDIgKi9cblxuICAgICAgLyoqXG4gICAgICAgKiBSZW1vdmUgdGhlIGlubmVyIHBhZGRpbmcgYW5kIGNhbmNlbCBidXR0b25zIGluIENocm9tZSBhbmQgU2FmYXJpIG9uIG1hY09TLlxuICAgICAgICovXG5cbiAgICAgICY6Oi13ZWJraXQtc2VhcmNoLWNhbmNlbC1idXR0b24sXG4gICAgICAmOjotd2Via2l0LXNlYXJjaC1kZWNvcmF0aW9uIHtcbiAgICAgICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xuICAgICAgfVxuICAgIH1cblxuICAgIC8qKlxuICAgICAqIDEuIENvcnJlY3QgdGhlIGluYWJpbGl0eSB0byBzdHlsZSBjbGlja2FibGUgdHlwZXMgaW4gaU9TIGFuZCBTYWZhcmkuXG4gICAgICogMi4gQ2hhbmdlIGZvbnQgcHJvcGVydGllcyB0byBgaW5oZXJpdGAgaW4gU2FmYXJpLlxuICAgICAqL1xuXG4gICAgOjotd2Via2l0LWZpbGUtdXBsb2FkLWJ1dHRvbiB7XG4gICAgICAtd2Via2l0LWFwcGVhcmFuY2U6IGJ1dHRvbjsgLyogMSAqL1xuICAgICAgZm9udDogaW5oZXJpdDsgLyogMiAqL1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIENoYW5nZSB0aGUgYm9yZGVyLCBtYXJnaW4sIGFuZCBwYWRkaW5nIGluIGFsbCBicm93c2VycyAob3BpbmlvbmF0ZWQpLlxuICAgICAqL1xuXG4gICAgZmllbGRzZXQge1xuICAgICAgYm9yZGVyOiAxcHggc29saWQgI2MwYzBjMDtcbiAgICAgIG1hcmdpbjogMCAycHg7XG4gICAgICBwYWRkaW5nOiAwLjM1ZW0gMC42MjVlbSAwLjc1ZW07XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogMS4gQ29ycmVjdCB0aGUgdGV4dCB3cmFwcGluZyBpbiBFZGdlIGFuZCBJRS5cbiAgICAgKiAyLiBDb3JyZWN0IHRoZSBjb2xvciBpbmhlcml0YW5jZSBmcm9tIGBmaWVsZHNldGAgZWxlbWVudHMgaW4gSUUuXG4gICAgICogMy4gUmVtb3ZlIHRoZSBwYWRkaW5nIHNvIGRldmVsb3BlcnMgYXJlIG5vdCBjYXVnaHQgb3V0IHdoZW4gdGhleSB6ZXJvIG91dFxuICAgICAqICAgIGBmaWVsZHNldGAgZWxlbWVudHMgaW4gYWxsIGJyb3dzZXJzLlxuICAgICAqL1xuXG4gICAgbGVnZW5kIHtcbiAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7IC8qIDEgKi9cbiAgICAgIGRpc3BsYXk6IHRhYmxlOyAvKiAxICovXG4gICAgICBtYXgtd2lkdGg6IDEwMCU7IC8qIDEgKi9cbiAgICAgIHBhZGRpbmc6IDA7IC8qIDMgKi9cbiAgICAgIGNvbG9yOiBpbmhlcml0OyAvKiAyICovXG4gICAgICB3aGl0ZS1zcGFjZTogbm9ybWFsOyAvKiAxICovXG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogMS4gQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUgOS0uXG4gICAgICogMi4gQWRkIHRoZSBjb3JyZWN0IHZlcnRpY2FsIGFsaWdubWVudCBpbiBDaHJvbWUsIEZpcmVmb3gsIGFuZCBPcGVyYS5cbiAgICAgKi9cblxuICAgIHByb2dyZXNzIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jazsgLyogMSAqL1xuICAgICAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lOyAvKiAyICovXG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogUmVtb3ZlIHRoZSBkZWZhdWx0IHZlcnRpY2FsIHNjcm9sbGJhciBpbiBJRS5cbiAgICAgKi9cblxuICAgIHRleHRhcmVhIHtcbiAgICAgIG92ZXJmbG93OiBhdXRvO1xuICAgIH1cbiAgfVxuXG4gIEBpZiBfbm9ybWFsaXplLWluY2x1ZGUoaW50ZXJhY3RpdmUpIHtcbiAgICAvKiBJbnRlcmFjdGl2ZVxuICAgICAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbiAgICAvKlxuICAgICAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIEVkZ2UsIElFLCBhbmQgRmlyZWZveC5cbiAgICAgKi9cblxuICAgIGRldGFpbHMge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgfVxuXG4gICAgLypcbiAgICAgKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBhbGwgYnJvd3NlcnMuXG4gICAgICovXG5cbiAgICBzdW1tYXJ5IHtcbiAgICAgIGRpc3BsYXk6IGxpc3QtaXRlbTtcbiAgICB9XG5cbiAgICAvKlxuICAgICAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFIDktLlxuICAgICAqL1xuXG4gICAgbWVudSB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcblxuICAgICAgQGlmICRub3JtYWxpemUtdmVydGljYWwtcmh5dGhtIHtcbiAgICAgICAgLypcbiAgICAgICAgICogMS4gU2V0IDEgdW5pdCBvZiB2ZXJ0aWNhbCByaHl0aG0gb24gdGhlIHRvcCBhbmQgYm90dG9tIG1hcmdpbi5cbiAgICAgICAgICogMi4gU2V0IGNvbnNpc3RlbnQgc3BhY2UgZm9yIHRoZSBsaXN0IHN0eWxlIGltYWdlLlxuICAgICAgICAgKi9cblxuICAgICAgICBAaW5jbHVkZSBub3JtYWxpemUtbWFyZ2luKDEgMCk7IC8qIDEgKi9cbiAgICAgICAgcGFkZGluZzogMCAwIDAgJGluZGVudC1hbW91bnQ7IC8qIDIgKi9cblxuICAgICAgICAvKipcbiAgICAgICAgICogVHVybiBvZmYgbWFyZ2lucyBvbiBuZXN0ZWQgbGlzdHMuXG4gICAgICAgICAqL1xuXG4gICAgICAgIG1lbnUgJixcbiAgICAgICAgb2wgJixcbiAgICAgICAgdWwgJiB7XG4gICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgQGlmIF9ub3JtYWxpemUtaW5jbHVkZShzY3JpcHRpbmcpIHtcbiAgICAvKiBTY3JpcHRpbmdcbiAgICAgICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4gICAgLyoqXG4gICAgICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUgOS0uXG4gICAgICovXG5cbiAgICBjYW52YXMge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFLlxuICAgICAqL1xuXG4gICAgdGVtcGxhdGUge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG4gIH1cblxuICBAaWYgX25vcm1hbGl6ZS1pbmNsdWRlKGhpZGRlbikge1xuICAgIC8qIEhpZGRlblxuICAgICAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbiAgICAvKipcbiAgICAgKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRSAxMC0uXG4gICAgICovXG5cbiAgICBbaGlkZGVuXSB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgfVxufVxuIiwiLy9cbi8vIFZhcmlhYmxlc1xuLy9cbi8vIFlvdSBjYW4gb3ZlcnJpZGUgdGhlIGRlZmF1bHQgdmFsdWVzIGJ5IHNldHRpbmcgdGhlIHZhcmlhYmxlcyBpbiB5b3VyIFNhc3Ncbi8vIGJlZm9yZSBpbXBvcnRpbmcgdGhlIG5vcm1hbGl6ZS1zY3NzIGxpYnJhcnkuXG5cbi8vIFRoZSBmb250IHNpemUgc2V0IG9uIHRoZSByb290IGh0bWwgZWxlbWVudC5cbiRiYXNlLWZvbnQtc2l6ZTogMTZweCAhZGVmYXVsdDtcblxuLy8gVGhlIGJhc2UgbGluZSBoZWlnaHQgZGV0ZXJtaW5lcyB0aGUgYmFzaWMgdW5pdCBvZiB2ZXJ0aWNhbCByaHl0aG0uXG4kYmFzZS1saW5lLWhlaWdodDogMjRweCAhZGVmYXVsdDtcblxuLy8gVGhlIGxlbmd0aCB1bml0IGluIHdoaWNoIHRvIG91dHB1dCB2ZXJ0aWNhbCByaHl0aG0gdmFsdWVzLlxuLy8gU3VwcG9ydGVkIHZhbHVlczogcHgsIGVtLCByZW0uXG4kYmFzZS11bml0OiAnZW0nICFkZWZhdWx0O1xuXG4vLyBUaGUgZGVmYXVsdCBmb250IGZhbWlseS5cbiRiYXNlLWZvbnQtZmFtaWx5OiBzYW5zLXNlcmlmICFkZWZhdWx0O1xuXG4vLyBUaGUgZm9udCBzaXplcyBmb3IgaDEtaDYuXG4kaDEtZm9udC1zaXplOiAyICAgICogJGJhc2UtZm9udC1zaXplICFkZWZhdWx0O1xuJGgyLWZvbnQtc2l6ZTogMS41ICAqICRiYXNlLWZvbnQtc2l6ZSAhZGVmYXVsdDtcbiRoMy1mb250LXNpemU6IDEuMTcgKiAkYmFzZS1mb250LXNpemUgIWRlZmF1bHQ7XG4kaDQtZm9udC1zaXplOiAxICAgICogJGJhc2UtZm9udC1zaXplICFkZWZhdWx0O1xuJGg1LWZvbnQtc2l6ZTogMC44MyAqICRiYXNlLWZvbnQtc2l6ZSAhZGVmYXVsdDtcbiRoNi1mb250LXNpemU6IDAuNjcgKiAkYmFzZS1mb250LXNpemUgIWRlZmF1bHQ7XG5cbi8vIFRoZSBhbW91bnQgbGlzdHMgYW5kIGJsb2NrcXVvdGVzIGFyZSBpbmRlbnRlZC5cbiRpbmRlbnQtYW1vdW50OiA0MHB4ICFkZWZhdWx0O1xuXG4vLyBUaGUgZm9sbG93aW5nIHZhcmlhYmxlIGNvbnRyb2xzIHdoZXRoZXIgbm9ybWFsaXplLXNjc3Mgd2lsbCBvdXRwdXRcbi8vIGZvbnQtc2l6ZXMsIGxpbmUtaGVpZ2h0cyBhbmQgYmxvY2stbGV2ZWwgdG9wL2JvdHRvbSBtYXJnaW5zIHRoYXQgZm9ybSBhIGJhc2ljXG4vLyB2ZXJ0aWNhbCByaHl0aG0gb24gdGhlIHBhZ2UsIHdoaWNoIGRpZmZlcnMgZnJvbSB0aGUgb3JpZ2luYWwgTm9ybWFsaXplLmNzcy5cbi8vIEhvd2V2ZXIsIGNoYW5naW5nIGFueSBvZiB0aGUgdmFyaWFibGVzIGFib3ZlIHdpbGwgY2F1c2Vcbi8vICRub3JtYWxpemUtdmVydGljYWwtcmh5dGhtIHRvIGJlIGF1dG9tYXRpY2FsbHkgc2V0IHRvIHRydWUuXG4kbm9ybWFsaXplLXZlcnRpY2FsLXJoeXRobTogZmFsc2UgIWRlZmF1bHQ7XG4iLCIvL1xuLy8gVmVydGljYWwgUmh5dGhtXG4vL1xuLy8gVGhpcyBpcyB0aGUgbWluaW1hbCBhbW91bnQgb2YgY29kZSBuZWVkZWQgdG8gY3JlYXRlIHZlcnRpY2FsIHJoeXRobSBpbiBvdXJcbi8vIENTUy4gSWYgeW91IGFyZSBsb29raW5nIGZvciBhIHJvYnVzdCBzb2x1dGlvbiwgbG9vayBhdCB0aGUgZXhjZWxsZW50IFR5cGV5XG4vLyBsaWJyYXJ5LiBAc2VlIGh0dHBzOi8vZ2l0aHViLmNvbS9qcHRhcmFudG8vdHlwZXlcblxuQGZ1bmN0aW9uIG5vcm1hbGl6ZS1yaHl0aG0oJHZhbHVlLCAkcmVsYXRpdmUtdG86ICRiYXNlLWZvbnQtc2l6ZSwgJHVuaXQ6ICRiYXNlLXVuaXQpIHtcbiAgQGlmIHVuaXQoJHZhbHVlKSAhPSBweCB7XG4gICAgQGVycm9yIFwiVGhlIG5vcm1hbGl6ZSB2ZXJ0aWNhbC1yaHl0aG0gbW9kdWxlIG9ubHkgc3VwcG9ydHMgcHggaW5wdXRzLiBUaGUgdHlwZXkgbGlicmFyeSBpcyBiZXR0ZXIuXCI7XG4gIH1cbiAgQGlmICR1bml0ID09IHJlbSB7XG4gICAgQHJldHVybiAoJHZhbHVlIC8gJGJhc2UtZm9udC1zaXplKSAqIDFyZW07XG4gIH1cbiAgQGVsc2UgaWYgJHVuaXQgPT0gZW0ge1xuICAgIEByZXR1cm4gKCR2YWx1ZSAvICRyZWxhdGl2ZS10bykgKiAxZW07XG4gIH1cbiAgQGVsc2UgeyAvLyAkdW5pdCA9PSBweFxuICAgIEByZXR1cm4gJHZhbHVlO1xuICB9XG59XG5cbkBtaXhpbiBub3JtYWxpemUtZm9udC1zaXplKCR2YWx1ZSwgJHJlbGF0aXZlLXRvOiAkYmFzZS1mb250LXNpemUpIHtcbiAgQGlmIHVuaXQoJHZhbHVlKSAhPSAncHgnIHtcbiAgICBAZXJyb3IgXCJub3JtYWxpemUtZm9udC1zaXplKCkgb25seSBzdXBwb3J0cyBweCBpbnB1dHMuIFRoZSB0eXBleSBsaWJyYXJ5IGlzIGJldHRlci5cIjtcbiAgfVxuICBmb250LXNpemU6IG5vcm1hbGl6ZS1yaHl0aG0oJHZhbHVlLCAkcmVsYXRpdmUtdG8pO1xufVxuXG5AbWl4aW4gbm9ybWFsaXplLXJoeXRobSgkcHJvcGVydHksICR2YWx1ZXMsICRyZWxhdGl2ZS10bzogJGJhc2UtZm9udC1zaXplKSB7XG4gICR2YWx1ZS1saXN0OiAkdmFsdWVzO1xuICAkc2VwOiBzcGFjZTtcbiAgQGlmIHR5cGUtb2YoJHZhbHVlcykgPT0gJ2xpc3QnIHtcbiAgICAkc2VwOiBsaXN0LXNlcGFyYXRvcigkdmFsdWVzKTtcbiAgfVxuICBAZWxzZSB7XG4gICAgJHZhbHVlLWxpc3Q6IGFwcGVuZCgoKSwgJHZhbHVlcyk7XG4gIH1cblxuICAkbm9ybWFsaXplZC12YWx1ZXM6ICgpO1xuICBAZWFjaCAkdmFsdWUgaW4gJHZhbHVlLWxpc3Qge1xuICAgIEBpZiB1bml0bGVzcygkdmFsdWUpIGFuZCAkdmFsdWUgIT0gMCB7XG4gICAgICAkdmFsdWU6ICR2YWx1ZSAqIG5vcm1hbGl6ZS1yaHl0aG0oJGJhc2UtbGluZS1oZWlnaHQsICRyZWxhdGl2ZS10byk7XG4gICAgfVxuICAgICRub3JtYWxpemVkLXZhbHVlczogYXBwZW5kKCRub3JtYWxpemVkLXZhbHVlcywgJHZhbHVlLCAkc2VwKTtcbiAgfVxuICAjeyRwcm9wZXJ0eX06ICRub3JtYWxpemVkLXZhbHVlcztcbn1cblxuQG1peGluIG5vcm1hbGl6ZS1tYXJnaW4oJHZhbHVlcywgJHJlbGF0aXZlLXRvOiAkYmFzZS1mb250LXNpemUpIHtcbiAgQGluY2x1ZGUgbm9ybWFsaXplLXJoeXRobShtYXJnaW4sICR2YWx1ZXMsICRyZWxhdGl2ZS10byk7XG59XG5cbkBtaXhpbiBub3JtYWxpemUtbGluZS1oZWlnaHQoJGZvbnQtc2l6ZSwgJG1pbi1saW5lLXBhZGRpbmc6IDJweCkge1xuICAkbGluZXM6IGNlaWwoJGZvbnQtc2l6ZSAvICRiYXNlLWxpbmUtaGVpZ2h0KTtcbiAgLy8gSWYgbGluZXMgYXJlIGNyYW1wZWQgaW5jbHVkZSBzb21lIGV4dHJhIGxlYWRpbmcuXG4gIEBpZiAoJGxpbmVzICogJGJhc2UtbGluZS1oZWlnaHQgLSAkZm9udC1zaXplKSA8ICgkbWluLWxpbmUtcGFkZGluZyAqIDIpIHtcbiAgICAkbGluZXM6ICRsaW5lcyArIDE7XG4gIH1cbiAgQGluY2x1ZGUgbm9ybWFsaXplLXJoeXRobShsaW5lLWhlaWdodCwgJGxpbmVzLCAkZm9udC1zaXplKTtcbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLyBzYXNzLWxpbnQ6ZGlzYWJsZSBmb3JjZS1hdHRyaWJ1dGUtbmVzdGluZywgZm9yY2UtcHNldWRvLW5lc3RpbmcsIG5vLWNvbG9yLWxpdGVyYWxzLCBuby1xdWFsaWZ5aW5nLWVsZW1lbnRzXG5cbi8vLy9cbi8vLyBAZ3JvdXAgZ2xvYmFsXG4vLy8vXG5cbi8vLyBGb250IHNpemUgYXR0cmlidXRlIGFwcGxpZWQgdG8gYDxodG1sPmAgYW5kIGA8Ym9keT5gLiBXZSB1c2UgMTAwJSBieSBkZWZhdWx0IHNvIHRoZSB2YWx1ZSBpcyBpbmhlcml0ZWQgZnJvbSB0aGUgdXNlcidzIGJyb3dzZXIgc2V0dGluZ3MuXG4vLy8gQHR5cGUgTnVtYmVyXG4kZ2xvYmFsLWZvbnQtc2l6ZTogMTAwJSAhZGVmYXVsdDtcblxuLy8vIEdsb2JhbCB3aWR0aCBvZiB5b3VyIHNpdGUuIFVzZWQgYnkgdGhlIGdyaWQgdG8gZGV0ZXJtaW5lIHJvdyB3aWR0aC5cbi8vLyBAdHlwZSBOdW1iZXJcbiRnbG9iYWwtd2lkdGg6IHJlbS1jYWxjKDEyMDApICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBsaW5lIGhlaWdodCBmb3IgYWxsIHR5cGUuIGAkZ2xvYmFsLWxpbmVoZWlnaHRgIGlzIDI0cHggd2hpbGUgYCRnbG9iYWwtZm9udC1zaXplYCBpcyAxNnB4XG4vLy8gQHR5cGUgTnVtYmVyXG4kZ2xvYmFsLWxpbmVoZWlnaHQ6IDEuNSAhZGVmYXVsdDtcblxuLy8vIENvbG9ycyB1c2VkIGZvciBidXR0b25zLCBjYWxsb3V0cywgbGlua3MsIGV0Yy4gVGhlcmUgbXVzdCBhbHdheXMgYmUgYSBjb2xvciBjYWxsZWQgYHByaW1hcnlgLlxuLy8vIEB0eXBlIE1hcFxuJGZvdW5kYXRpb24tcGFsZXR0ZTogKFxuICBwcmltYXJ5OiAjMTc3OWJhLFxuICBzZWNvbmRhcnk6ICM3Njc2NzYsXG4gIHN1Y2Nlc3M6ICMzYWRiNzYsXG4gIHdhcm5pbmc6ICNmZmFlMDAsXG4gIGFsZXJ0OiAjY2M0YjM3LFxuKSAhZGVmYXVsdDtcblxuLy8vIENvbG9yIHVzZWQgZm9yIGxpZ2h0IGdyYXkgVUkgaXRlbXMuXG4vLy8gQHR5cGUgQ29sb3JcbiRsaWdodC1ncmF5OiAjZTZlNmU2ICFkZWZhdWx0O1xuXG4vLy8gQ29sb3IgdXNlZCBmb3IgbWVkaXVtIGdyYXkgVUkgaXRlbXMuXG4vLy8gQHR5cGUgQ29sb3JcbiRtZWRpdW0tZ3JheTogI2NhY2FjYSAhZGVmYXVsdDtcblxuLy8vIENvbG9yIHVzZWQgZm9yIGRhcmsgZ3JheSBVSSBpdGVtcy5cbi8vLyBAdHlwZSBDb2xvclxuJGRhcmstZ3JheTogIzhhOGE4YSAhZGVmYXVsdDtcblxuLy8vIENvbG9yIHVzZWQgZm9yIGJsYWNrIHVpIGl0ZW1zLlxuLy8vIEB0eXBlIENvbG9yXG4kYmxhY2s6ICMwYTBhMGEgIWRlZmF1bHQ7XG5cbi8vLyBDb2xvciB1c2VkIGZvciB3aGl0ZSB1aSBpdGVtcy5cbi8vLyBAdHlwZSBDb2xvclxuJHdoaXRlOiAjZmVmZWZlICFkZWZhdWx0O1xuXG4vLy8gQmFja2dyb3VuZCBjb2xvciBvZiB0aGUgYm9keS5cbi8vLyBAdHlwZSBDb2xvclxuJGJvZHktYmFja2dyb3VuZDogJHdoaXRlICFkZWZhdWx0O1xuXG4vLy8gVGV4dCBjb2xvciBvZiB0aGUgYm9keS5cbi8vLyBAdHlwZSBDb2xvclxuJGJvZHktZm9udC1jb2xvcjogJGJsYWNrICFkZWZhdWx0O1xuXG4vLy8gRm9udCBzdGFjayBvZiB0aGUgYm9keS5cbi8vLyBAdHlwZSBMaXN0XG4kYm9keS1mb250LWZhbWlseTogJ0hlbHZldGljYSBOZXVlJywgSGVsdmV0aWNhLCBSb2JvdG8sIEFyaWFsLCBzYW5zLXNlcmlmICFkZWZhdWx0O1xuXG4vLy8gU2V0IHRvIGB0cnVlYCB0byBlbmFibGUgYW50aWFsaWFzZWQgdHlwZSwgdXNpbmcgdGhlIGAtd2Via2l0LWZvbnQtc21vb3RoaW5nYCBhbmQgYC1tb3otb3N4LWZvbnQtc21vb3RoaW5nYCBDU1MgcHJvcGVydGllcy5cbi8vLyBAdHlwZSBCb29sZWFuXG4kYm9keS1hbnRpYWxpYXNlZDogdHJ1ZSAhZGVmYXVsdDtcblxuLy8vIEdsb2JhbCB2YWx1ZSB1c2VkIGZvciBtYXJnaW4gb24gY29tcG9uZW50cy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRnbG9iYWwtbWFyZ2luOiAxcmVtICFkZWZhdWx0O1xuXG4vLy8gR2xvYmFsIHZhbHVlIHVzZWQgZm9yIHBhZGRpbmcgb24gY29tcG9uZW50cy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRnbG9iYWwtcGFkZGluZzogMXJlbSAhZGVmYXVsdDtcblxuLy8vIEdsb2JhbCB2YWx1ZSB1c2VkIGZvciBwb3NpdGlvbmluZyBvbiBjb21wb25lbnRzLlxuLy8vIEB0eXBlIE51bWJlclxuJGdsb2JhbC1wb3NpdGlvbjogMXJlbSAhZGVmYXVsdDtcblxuLy8vIEdsb2JhbCBmb250IHdlaWdodCB1c2VkIGZvciBub3JtYWwgdHlwZS5cbi8vLyBAdHlwZSBLZXl3b3JkIHwgTnVtYmVyXG4kZ2xvYmFsLXdlaWdodC1ub3JtYWw6IG5vcm1hbCAhZGVmYXVsdDtcblxuLy8vIEdsb2JhbCBmb250IHdlaWdodCB1c2VkIGZvciBib2xkIHR5cGUuXG4vLy8gQHR5cGUgS2V5d29yZCB8IE51bWJlclxuJGdsb2JhbC13ZWlnaHQtYm9sZDogYm9sZCAhZGVmYXVsdDtcblxuLy8vIEdsb2JhbCB2YWx1ZSB1c2VkIGZvciBhbGwgZWxlbWVudHMgdGhhdCBoYXZlIGEgYm9yZGVyIHJhZGl1cy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRnbG9iYWwtcmFkaXVzOiAwICFkZWZhdWx0O1xuXG4vLy8gR2xvYmFsIHZhbHVlIHVzZWQgZm9yIGFsbCBtZW51IHN0eWxlcy4gQ2FuIGJlIG92ZXJ3cml0dGVuIGF0IGluZGl2aWR1YWwgbWVudSBjb21wb25lbnQgbGV2ZWwuXG4vLy8gQHR5cGUgTnVtYmVyXG4kZ2xvYmFsLW1lbnUtcGFkZGluZzogMC43cmVtIDFyZW0gIWRlZmF1bHQ7XG5cbi8vLyBHbG9iYWwgdmFsdWUgdXNlZCBmb3IgYWxsIG1lbnUgc3R5bGVzLiBOZXN0ZWQgbWFyZ2luIGZvciBzdWJtZW51LlxuJGdsb2JhbC1tZW51LW5lc3RlZC1tYXJnaW46IDFyZW0gIWRlZmF1bHQ7XG5cbi8vLyBTZXRzIHRoZSB0ZXh0IGRpcmVjdGlvbiBvZiB0aGUgQ1NTLiBDYW4gYmUgZWl0aGVyIGBsdHJgIG9yIGBydGxgLlxuLy8vIEB0eXBlIEtleXdvcmRcbiRnbG9iYWwtdGV4dC1kaXJlY3Rpb246IGx0ciAhZGVmYXVsdDtcblxuLy8vIEVuYWJsZXMgZmxleGJveCBmb3IgY29tcG9uZW50cyB0aGF0IHN1cHBvcnQgaXQuXG4vLy8gQHR5cGUgQm9vbGVhblxuJGdsb2JhbC1mbGV4Ym94OiB0cnVlICFkZWZhdWx0O1xuXG4vLy8gRW5hYmxlZCByZXNwb25zaXZlIGJyZWFrcG9pbnRzIGZvciBwcm90b3R5cGVzIGlmIGFwcGxpY2FibGVcbi8vLyBAdHlwZSBCb29sZWFuXG4kZ2xvYmFsLXByb3RvdHlwZS1icmVha3BvaW50czogZmFsc2UgIWRlZmF1bHQ7XG5cbi8vLyBCdXR0b24gY3Vyc29yJ3MgdmFsdWUsIGBhdXRvYCBieSBkZWZhdWx0XG4vLy8gQHR5cGUgS2V5d29yZFxuJGdsb2JhbC1idXR0b24tY3Vyc29yOiBhdXRvICFkZWZhdWx0O1xuXG5AaWYgbm90IG1hcC1oYXMta2V5KCRmb3VuZGF0aW9uLXBhbGV0dGUsIHByaW1hcnkpIHtcbiAgQGVycm9yICdJbiAkZm91bmRhdGlvbi1wYWxldHRlLCB5b3UgbXVzdCBoYXZlIGEgY29sb3IgbmFtZWQgXCJwcmltYXJ5XCIuJztcbn1cblxuLy8gSW50ZXJuYWwgdmFyaWFibGVzIHVzZWQgZm9yIHRleHQgZGlyZWN0aW9uXG4kZ2xvYmFsLWxlZnQ6IGlmKCRnbG9iYWwtdGV4dC1kaXJlY3Rpb24gPT0gcnRsLCByaWdodCwgbGVmdCk7XG4kZ2xvYmFsLXJpZ2h0OiBpZigkZ2xvYmFsLXRleHQtZGlyZWN0aW9uID09IHJ0bCwgbGVmdCwgcmlnaHQpO1xuXG4vLy8gR2xvYmFsIHRvbGVyYW5jZSBmb3IgY29sb3IgcGljayBjb250cmFzdC5cbi8vLyBAdHlwZSBOdW1iZXJcbiRnbG9iYWwtY29sb3ItcGljay1jb250cmFzdC10b2xlcmFuY2U6IDAgIWRlZmF1bHQ7XG5cbi8vIEludGVybmFsIHZhcmlhYmxlcyB1c2VkIGZvciBjb2xvcnNcbiRwcmltYXJ5LWNvbG9yOiBnZXQtY29sb3IocHJpbWFyeSk7XG4kc2Vjb25kYXJ5LWNvbG9yOiBnZXQtY29sb3Ioc2Vjb25kYXJ5KTtcbiRzdWNjZXNzLWNvbG9yOiBnZXQtY29sb3Ioc3VjY2Vzcyk7XG4kd2FybmluZy1jb2xvcjogZ2V0LWNvbG9yKHdhcm5pbmcpO1xuJGFsZXJ0LWNvbG9yOiBnZXQtY29sb3IoYWxlcnQpO1xuXG5AbWl4aW4gZm91bmRhdGlvbi1nbG9iYWwtc3R5bGVzIHtcbiAgQGluY2x1ZGUgLXpmLW5vcm1hbGl6ZTtcblxuICAvLyBUaGVzZSBzdHlsZXMgYXJlIGFwcGxpZWQgdG8gYSA8bWV0YT4gdGFnLCB3aGljaCBpcyByZWFkIGJ5IHRoZSBGb3VuZGF0aW9uIEphdmFTY3JpcHRcbiAgLmZvdW5kYXRpb24tbXEge1xuICAgIGZvbnQtZmFtaWx5OiAnI3stemYtYnAtc2VyaWFsaXplKCRicmVha3BvaW50cyl9JztcbiAgfVxuXG4gIGh0bWwge1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgZm9udC1zaXplOiAkZ2xvYmFsLWZvbnQtc2l6ZTtcbiAgfVxuXG4gIC8vIFNldCBib3gtc2l6aW5nIGdsb2JhbGx5IHRvIGhhbmRsZSBwYWRkaW5nIGFuZCBib3JkZXIgd2lkdGhzXG4gICosXG4gICo6OmJlZm9yZSxcbiAgKjo6YWZ0ZXIge1xuICAgIGJveC1zaXppbmc6IGluaGVyaXQ7XG4gIH1cblxuICAvLyBEZWZhdWx0IGJvZHkgc3R5bGVzXG4gIGJvZHkge1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwO1xuXG4gICAgYmFja2dyb3VuZDogJGJvZHktYmFja2dyb3VuZDtcblxuICAgIGZvbnQtZmFtaWx5OiAkYm9keS1mb250LWZhbWlseTtcbiAgICBmb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtbm9ybWFsO1xuICAgIGxpbmUtaGVpZ2h0OiAkZ2xvYmFsLWxpbmVoZWlnaHQ7XG4gICAgY29sb3I6ICRib2R5LWZvbnQtY29sb3I7XG5cbiAgICBAaWYgKCRib2R5LWFudGlhbGlhc2VkKSB7XG4gICAgICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcbiAgICAgIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XG4gICAgfVxuICB9XG5cbiAgaW1nIHtcbiAgICAvLyBHZXQgcmlkIG9mIGdhcCB1bmRlciBpbWFnZXMgYnkgbWFraW5nIHRoZW0gZGlzcGxheTogaW5saW5lLWJsb2NrOyBieSBkZWZhdWx0XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG5cbiAgICAvLyBHcmlkIGRlZmF1bHRzIHRvIGdldCBpbWFnZXMgYW5kIGVtYmVkcyB0byB3b3JrIHByb3Blcmx5XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogYXV0bztcbiAgICAtbXMtaW50ZXJwb2xhdGlvbi1tb2RlOiBiaWN1YmljO1xuICB9XG5cbiAgLy8gTWFrZSBzdXJlIHRleHRhcmVhIHRha2VzIG9uIGhlaWdodCBhdXRvbWF0aWNhbGx5XG4gIHRleHRhcmVhIHtcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgbWluLWhlaWdodDogNTBweDtcbiAgICBib3JkZXItcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcbiAgfVxuXG4gIC8vIE1ha2Ugc2VsZWN0IGVsZW1lbnRzIGFyZSAxMDAlIHdpZHRoIGJ5IGRlZmF1bHRcbiAgc2VsZWN0IHtcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGJvcmRlci1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuICB9XG5cbiAgLy8gU3R5bGVzIEdvb2dsZSBNYXBzIGFuZCBNYXBRdWVzdCBlbWJlZHMgcHJvcGVybHlcbiAgLy8gc2Fzcy1saW50OmRpc2FibGUtbGluZSBuby1pZHNcbiAgLm1hcF9jYW52YXMsXG4gIC5tcWEtZGlzcGxheSB7XG4gICAgaW1nLFxuICAgIGVtYmVkLFxuICAgIG9iamVjdCB7XG4gICAgICBtYXgtd2lkdGg6IG5vbmUgIWltcG9ydGFudDtcbiAgICB9XG4gIH1cblxuICAvLyBSZXNldCA8YnV0dG9uPiBzdHlsZXMgY3JlYXRlZCBieSBtb3N0IGJyb3dzZXJzXG4gIGJ1dHRvbiB7XG4gICAgQGluY2x1ZGUgZGlzYWJsZS1tb3VzZS1vdXRsaW5lO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgYXBwZWFyYW5jZTogbm9uZTtcbiAgICBib3JkZXI6IDA7XG4gICAgYm9yZGVyLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG4gICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgY3Vyc29yOiAkZ2xvYmFsLWJ1dHRvbi1jdXJzb3I7XG4gIH1cblxuICAvLyBQcmV2ZW50IHRleHQgb3ZlcmZsb3cgb24gcHJlXG4gIHByZSB7XG4gICAgb3ZlcmZsb3c6IGF1dG87XG4gIH1cblxuICAvLyBNYWtlIHJlc2V0IGluaGVyaXQgZm9udC1mYW1pbHkgaW5zdGVhZCBvZiBzZXR0aW5ncyBzYW5zLXNlcmlmXG4gIGJ1dHRvbixcbiAgaW5wdXQsXG4gIG9wdGdyb3VwLFxuICBzZWxlY3QsXG4gIHRleHRhcmVhIHtcbiAgICBmb250LWZhbWlseTogaW5oZXJpdDtcbiAgfVxuXG4gIC8vIEludGVybmFsIGNsYXNzZXMgdG8gc2hvdy9oaWRlIGVsZW1lbnRzIGluIEphdmFTY3JpcHRcbiAgLmlzLXZpc2libGUge1xuICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuaXMtaGlkZGVuIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuLy8vIExvYWRzIG5vcm1hbGl6ZS5jc3MuXG4vLy8gQGFjY2VzcyBwcml2YXRlXG5AbWl4aW4gLXpmLW5vcm1hbGl6ZSB7XG4gIEBpbmNsdWRlIG5vcm1hbGl6ZSgpO1xufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgZnVuY3Rpb25zXG4vLy8vXG5cbi8vLyBDcmVhdGVzIGFuIGlubmVyIGJveC1zaGFkb3cgZm9yIG9ubHkgb25lIHNpZGVcbi8vLyBcbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRzaWRlIC0gU2lkZSB0aGUgc2hhZG93IGlzIHN1cHBvc2VkIHRvIGFwcGVhci4gQ2FuIGJlIGB0b3BgLCBgbGVmdGAsIGByaWdodGAgb3IgYGJvdHRvbWAuXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRzaXplIC0gV2lkdGggZm9yIHRoZSB0YXJnZXQgc2lkZS5cbi8vLyBAcGFyYW0ge0NvbG9yfSAkY29sb3IgLSBDb2xvciBvZiB0aGUgc2hhZG93LlxuQG1peGluIGlubmVyLXNpZGUtc2hhZG93KFxuICAkc2lkZTogYm90dG9tLFxuICAkc2l6ZTogMjBweCxcbiAgJGNvbG9yOiByZ2JhKCRibGFjaywgMC4yNSlcbikge1xuXG4gICRoZWxwZXI6IHJvdW5kKCRzaXplICogMC42NSk7XG5cbiAgQGlmICgkc2lkZSA9PSB0b3ApIHtcbiAgICBib3gtc2hhZG93OiBpbnNldCAwICRoZWxwZXIgJHNpemUgKC0xKSokaGVscGVyICRjb2xvcjtcbiAgfSBAZWxzZSBpZiAoJHNpZGUgPT0gbGVmdCkge1xuICAgIGJveC1zaGFkb3c6IGluc2V0ICRoZWxwZXIgMCAkc2l6ZSAoLTEpKiRoZWxwZXIgJGNvbG9yO1xuICB9IEBlbHNlIGlmICgkc2lkZSA9PSByaWdodCkge1xuICAgIGJveC1zaGFkb3c6IGluc2V0ICgtMSkqJGhlbHBlciAwICRzaXplICgtMSkqJGhlbHBlciAkY29sb3I7XG4gIH0gQGVsc2UgaWYgKCRzaWRlID09IGJvdHRvbSkge1xuICAgIGJveC1zaGFkb3c6IGluc2V0IDAgKC0xKSokaGVscGVyICRzaXplICgtMSkqJGhlbHBlciAkY29sb3I7XG4gIH1cbn1cblxuLy8vIENyZWF0ZXMgYSBDU1MgdHJpYW5nbGUsIHdoaWNoIGNhbiBiZSB1c2VkIGZvciBkcm9wZG93biBhcnJvd3MsIGRyb3Bkb3duIHBpcHMsIGFuZCBtb3JlLiBVc2UgdGhpcyBtaXhpbiBpbnNpZGUgYSBgJjo6YmVmb3JlYCBvciBgJjo6YWZ0ZXJgIHNlbGVjdG9yLCB0byBhdHRhY2ggdGhlIHRyaWFuZ2xlIHRvIGFuIGV4aXN0aW5nIGVsZW1lbnQuXG4vLy9cbi8vLyBAcGFyYW0ge051bWJlcn0gJHRyaWFuZ2xlLXNpemUgLSBXaWR0aCBvZiB0aGUgdHJpYW5nbGUuXG4vLy8gQHBhcmFtIHtDb2xvcn0gJHRyaWFuZ2xlLWNvbG9yIC0gQ29sb3Igb2YgdGhlIHRyaWFuZ2xlLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJHRyaWFuZ2xlLWRpcmVjdGlvbiAtIERpcmVjdGlvbiB0aGUgdHJpYW5nbGUgcG9pbnRzLiBDYW4gYmUgYHVwYCwgYHJpZ2h0YCwgYGRvd25gLCBvciBgbGVmdGAuXG5AbWl4aW4gY3NzLXRyaWFuZ2xlKFxuICAkdHJpYW5nbGUtc2l6ZSxcbiAgJHRyaWFuZ2xlLWNvbG9yLFxuICAkdHJpYW5nbGUtZGlyZWN0aW9uXG4pIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAwO1xuICBoZWlnaHQ6IDA7XG5cbiAgYm9yZGVyOiBpbnNldCAkdHJpYW5nbGUtc2l6ZTtcblxuICBjb250ZW50OiAnJztcblxuICBAaWYgKCR0cmlhbmdsZS1kaXJlY3Rpb24gPT0gZG93bikge1xuICAgIGJvcmRlci1ib3R0b20td2lkdGg6IDA7XG4gICAgYm9yZGVyLXRvcC1zdHlsZTogc29saWQ7XG4gICAgYm9yZGVyLWNvbG9yOiAkdHJpYW5nbGUtY29sb3IgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQ7XG4gIH1cbiAgQGlmICgkdHJpYW5nbGUtZGlyZWN0aW9uID09IHVwKSB7XG4gICAgYm9yZGVyLXRvcC13aWR0aDogMDtcbiAgICBib3JkZXItYm90dG9tLXN0eWxlOiBzb2xpZDtcbiAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50ICR0cmlhbmdsZS1jb2xvcjtcbiAgfVxuICBAaWYgKCR0cmlhbmdsZS1kaXJlY3Rpb24gPT0gcmlnaHQpIHtcbiAgICBib3JkZXItcmlnaHQtd2lkdGg6IDA7XG4gICAgYm9yZGVyLWxlZnQtc3R5bGU6IHNvbGlkO1xuICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgJHRyaWFuZ2xlLWNvbG9yO1xuICB9XG4gIEBpZiAoJHRyaWFuZ2xlLWRpcmVjdGlvbiA9PSBsZWZ0KSB7XG4gICAgYm9yZGVyLWxlZnQtd2lkdGg6IDA7XG4gICAgYm9yZGVyLXJpZ2h0LXN0eWxlOiBzb2xpZDtcbiAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50ICR0cmlhbmdsZS1jb2xvciB0cmFuc3BhcmVudCB0cmFuc3BhcmVudDtcbiAgfVxufVxuXG4vLy8gQ3JlYXRlcyBhIG1lbnUgaWNvbiB3aXRoIGEgc2V0IHdpZHRoLCBoZWlnaHQsIG51bWJlciBvZiBiYXJzLCBhbmQgY29sb3JzLiBUaGUgbWl4aW4gdXNlcyB0aGUgaGVpZ2h0IG9mIHRoZSBpY29uIGFuZCB0aGUgd2VpZ2h0IG9mIHRoZSBiYXJzIHRvIGRldGVybWluZSBzcGFjaW5nLiA8ZGl2IGNsYXNzPVwiZG9jcy1leGFtcGxlLWJ1cmdlclwiPjwvZGl2PlxuLy8vXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGNvbG9yIFskYmxhY2tdIC0gQ29sb3IgdG8gdXNlIGZvciB0aGUgaWNvbi5cbi8vLyBAcGFyYW0ge0NvbG9yfSAkY29sb3ItaG92ZXIgWyRkYXJrLWdyYXldIC0gQ29sb3IgdG8gdXNlIHdoZW4gdGhlIGljb24gaXMgaG92ZXJlZCBvdmVyLlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkd2lkdGggWzIwcHhdIC0gV2lkdGggb2YgdGhlIGljb24uXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRoZWlnaHQgWzE2cHhdIC0gSGVpZ2h0IG9mIHRoZSBpY29uLlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkd2VpZ2h0IFsycHhdIC0gSGVpZ2h0IG9mIGluZGl2aWR1YWwgYmFycyBpbiB0aGUgaWNvbi5cbi8vLyBAcGFyYW0ge051bWJlcn0gJGJhcnMgWzNdIC0gTnVtYmVyIG9mIGJhcnMgaW4gdGhlIGljb24uXG5AbWl4aW4gaGFtYnVyZ2VyKFxuICAkY29sb3I6ICRibGFjayxcbiAgJGNvbG9yLWhvdmVyOiAkZGFyay1ncmF5LFxuICAkd2lkdGg6IDIwcHgsXG4gICRoZWlnaHQ6IDE2cHgsXG4gICR3ZWlnaHQ6IDJweCxcbiAgJGJhcnM6IDNcbikge1xuICAvLyBib3gtc2hhZG93IENTUyBvdXRwdXRcbiAgJHNoYWRvdzogKCk7XG4gICRob3Zlci1zaGFkb3c6ICgpO1xuXG4gIC8vIFNwYWNpbmcgYmV0d2VlbiBiYXJzIGlzIGNhbGN1bGF0ZWQgYmFzZWQgb24gdGhlIHRvdGFsIGhlaWdodCBvZiB0aGUgaWNvbiBhbmQgdGhlIHdlaWdodCBvZiBlYWNoIGJhclxuICAkc3BhY2luZzogKCRoZWlnaHQgLSAoJHdlaWdodCAqICRiYXJzKSkgLyAoJGJhcnMgLSAxKTtcblxuICBAaWYgdW5pdCgkc3BhY2luZykgPT0gJ3B4JyB7XG4gICAgJHNwYWNpbmc6IGZsb29yKCRzcGFjaW5nKTtcbiAgfVxuXG4gIEBmb3IgJGkgZnJvbSAyIHRocm91Z2ggJGJhcnMge1xuICAgICRvZmZzZXQ6ICgkd2VpZ2h0ICsgJHNwYWNpbmcpICogKCRpIC0gMSk7XG4gICAgJHNoYWRvdzogYXBwZW5kKCRzaGFkb3csIDAgJG9mZnNldCAwICRjb2xvciwgY29tbWEpO1xuICB9XG5cbiAgLy8gSWNvbiBjb250YWluZXJcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIHdpZHRoOiAkd2lkdGg7XG4gIGhlaWdodDogJGhlaWdodDtcbiAgY3Vyc29yOiBwb2ludGVyO1xuXG4gIC8vIEljb24gYmFyc1xuICAmOjphZnRlciB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuXG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAkd2VpZ2h0O1xuXG4gICAgYmFja2dyb3VuZDogJGNvbG9yO1xuICAgIGJveC1zaGFkb3c6ICRzaGFkb3c7XG5cbiAgICBjb250ZW50OiAnJztcbiAgfVxuXG4gIC8vIEhvdmVyIHN0YXRlXG4gIEBpZiAkY29sb3ItaG92ZXIge1xuICAgIC8vIEdlbmVyYXRlIENTU1xuICAgIEBmb3IgJGkgZnJvbSAyIHRocm91Z2ggJGJhcnMge1xuICAgICAgJG9mZnNldDogKCR3ZWlnaHQgKyAkc3BhY2luZykgKiAoJGkgLSAxKTtcbiAgICAgICRob3Zlci1zaGFkb3c6IGFwcGVuZCgkaG92ZXItc2hhZG93LCAwICRvZmZzZXQgMCAkY29sb3ItaG92ZXIsIGNvbW1hKTtcbiAgICB9XG5cbiAgICAmOmhvdmVyOjphZnRlciB7XG4gICAgICBiYWNrZ3JvdW5kOiAkY29sb3ItaG92ZXI7XG4gICAgICBib3gtc2hhZG93OiAkaG92ZXItc2hhZG93O1xuICAgIH1cbiAgfVxufVxuXG4vLy8gQWRkcyBhIGRvd253YXJkLWZhY2luZyB0cmlhbmdsZSBhcyBhIGJhY2tncm91bmQgaW1hZ2UgdG8gYW4gZWxlbWVudC4gVGhlIGltYWdlIGlzIGZvcm1hdHRlZCBhcyBhbiBTVkcsIG1ha2luZyBpdCBlYXN5IHRvIGNoYW5nZSB0aGUgY29sb3IuIEJlY2F1c2UgSW50ZXJuZXQgRXhwbG9yZXIgZG9lc24ndCBzdXBwb3J0IGVuY29kZWQgU1ZHcyBhcyBiYWNrZ3JvdW5kIGltYWdlcywgYSBQTkcgZmFsbGJhY2sgaXMgYWxzbyBpbmNsdWRlZC5cbi8vLyBUaGVyZSBhcmUgdHdvIFBORyBmYWxsYmFja3M6IGEgYmxhY2sgdHJpYW5nbGUgYW5kIGEgd2hpdGUgdHJpYW5nbGUuIFRoZSBvbmUgdXNlZCBkZXBlbmRzIG9uIHRoZSBsaWdodG5lc3Mgb2YgdGhlIGlucHV0IGNvbG9yLlxuLy8vXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGNvbG9yIFskYmxhY2tdIC0gQ29sb3IgdG8gdXNlIGZvciB0aGUgdHJpYW5nbGUuXG5AbWl4aW4gYmFja2dyb3VuZC10cmlhbmdsZSgkY29sb3I6ICRibGFjaykge1xuICAkcmdiOiAncmdiJTI4I3tyb3VuZChyZWQoJGNvbG9yKSl9LCAje3JvdW5kKGdyZWVuKCRjb2xvcikpfSwgI3tyb3VuZChibHVlKCRjb2xvcikpfSUyOSc7XG5cbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sO3V0ZjgsPHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZlcnNpb249JzEuMScgd2lkdGg9JzMyJyBoZWlnaHQ9JzI0JyB2aWV3Qm94PScwIDAgMzIgMjQnPjxwb2x5Z29uIHBvaW50cz0nMCwwIDMyLDAgMTYsMjQnIHN0eWxlPSdmaWxsOiAjeyRyZ2J9Jz48L3BvbHlnb24+PC9zdmc+XCIpO1xuXG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6MFxcMCkge1xuICAgIEBpZiBsaWdodG5lc3MoJGNvbG9yKSA8IDYwJSB7XG4gICAgICAvLyBXaGl0ZSB0cmlhbmdsZVxuICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCdkYXRhOmltYWdlL3BuZztiYXNlNjQsaVZCT1J3MEtHZ29BQUFBTlNVaEVVZ0FBQUNBQUFBQVlDQVlBQUFDYlUvODBBQUFBR1hSRldIUlRiMlowZDJGeVpRQkJaRzlpWlNCSmJXRm5aVkpsWVdSNWNjbGxQQUFBQUlwSlJFRlVlTnJFa2NrTmdEQU1CQmZSa0V0ME9iUkJCZHNHWFVEZ21RZks0WGhIMm04Y3pRQUF5MjdSM3RzdzRRZmUyeDh1T082b1lMYjZHbE9vcjNHRitzd1VSQU9tVUorUnd0RUpzOVd2VEdFWXhCWHFJMU1RQVpoQ2ZVUUtSekRNVmorVHdyQUlWNmp2U1VFa1lBcjFMU2tjeVRCYi9WK0tZZlg3eEFldXNxM3NMRHRHSDNrRUdBQ1BXSWZsTlpmaFJRQUFBQUJKUlU1RXJrSmdnZz09Jyk7XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgIC8vIEJsYWNrIHRyaWFuZ2xlXG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJ2RhdGE6aW1hZ2UvcG5nO2Jhc2U2NCxpVkJPUncwS0dnb0FBQUFOU1VoRVVnQUFBQ0FBQUFBWUNBWUFBQUNiVS84MEFBQUFHWFJGV0hSVGIyWjBkMkZ5WlFCQlpHOWlaU0JKYldGblpWSmxZV1I1Y2NsbFBBQUFBTUJKUkVGVWVOckVsbHNPaENBTVJWc3pDOUlselU3S0NtVkhUSnNvTVdZTVV0cHl2OUJnYnVYUUI1WlNkZ0JZWVk0eWNnQml2azhLWUZzUU1mTWlUVEJQNG8zblV6Q0t6T2FiTEpiTHkyL2czMWV2R2tBZ2luUjQvWmVnS0g1cVgzYkpDc2NBM3QweDNrZ081dFFGeWhoRmY1MHhScUZMYnlNVU5KUXpneWpHUy93Z0Nwdktxa1JCcHVXckU0VjlkKzFFNGRQVVhxSWcxMDdTUU9FLzJEUlF4TXdURHlnSUluVkRFVDlUM2xDb2ovNmovVkNtR2paT2wybEtwWjhBQXdEUVA3eklpbURHRlFBQUFBQkpSVTVFcmtKZ2dnPT0nKTtcbiAgICB9XG4gIH1cbn1cblxuLy8vIEFwcGxpZXMgdGhlIG1pY3JvIGNsZWFyZml4IGhhY2sgcG9wdWxhcml6ZWQgYnkgTmljb2xhcyBHYWxsYWdoZXIuIEluY2x1ZGUgdGhpcyBtaXhpbiBvbiBhIGNvbnRhaW5lciBpZiBpdHMgY2hpbGRyZW4gYXJlIGFsbCBmbG9hdGVkLCB0byBnaXZlIHRoZSBjb250YWluZXIgYSBwcm9wZXIgaGVpZ2h0LlxuLy8vIFRoZSBjbGVhcmZpeCBpcyBhdWdtZW50ZWQgd2l0aCBzcGVjaWZpYyBzdHlsZXMgdG8gcHJldmVudCBib3JkZXJzIGluIGZsZXhib3ggZW52aXJvbm1lbnRzXG4vLy8gQGxpbmsgaHR0cDovL25pY29sYXNnYWxsYWdoZXIuY29tL21pY3JvLWNsZWFyZml4LWhhY2svIE1pY3JvIENsZWFyZml4IEhhY2tcbi8vLyBAbGluayBodHRwOi8vZGFuaXNhZGVzaWduZXIuY29tL2Jsb2cvZmxleGJveC1jbGVhci1maXgtcHNldWRvLWVsZW1lbnRzLyBGbGV4Ym94IGZpeFxuQG1peGluIGNsZWFyZml4IHtcbiAgJjo6YmVmb3JlLFxuICAmOjphZnRlciB7XG4gICAgZGlzcGxheTogdGFibGU7XG4gICAgY29udGVudDogJyAnO1xuXG4gICAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgICBmbGV4LWJhc2lzOiAwO1xuICAgICAgb3JkZXI6IDE7XG4gICAgfVxuICB9XG5cbiAgJjo6YWZ0ZXIge1xuICAgIGNsZWFyOiBib3RoO1xuICB9XG59XG5cbi8vLyBBZGRzIENTUyBmb3IgYSBcInF1YW50aXR5IHF1ZXJ5XCIgc2VsZWN0b3IgdGhhdCBhdXRvbWF0aWNhbGx5IHNpemVzIGVsZW1lbnRzIGJhc2VkIG9uIGhvdyBtYW55IHRoZXJlIGFyZSBpbnNpZGUgYSBjb250YWluZXIuXG4vLy8gQGxpbmsgaHR0cDovL2FsaXN0YXBhcnQuY29tL2FydGljbGUvcXVhbnRpdHktcXVlcmllcy1mb3ItY3NzIFF1YW50aXR5IFF1ZXJpZXMgZm9yIENTU1xuLy8vXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRtYXggLSBNYXhpbXVtIG51bWJlciBvZiBpdGVtcyB0byBkZXRlY3QuIFRoZSBoaWdoZXIgdGhpcyBudW1iZXIgaXMsIHRoZSBtb3JlIENTUyB0aGF0J3MgcmVxdWlyZWQgdG8gY292ZXIgZWFjaCBudW1iZXIgb2YgaXRlbXMuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkZWxlbSBbbGldIC0gVGFnIHRvIHVzZSBmb3Igc2libGluZyBzZWxlY3RvcnMuXG5AbWl4aW4gYXV0by13aWR0aCgkbWF4LCAkZWxlbTogbGkpIHtcbiAgQGZvciAkaSBmcm9tIDIgdGhyb3VnaCAkbWF4IHtcbiAgICAmOm50aC1sYXN0LWNoaWxkKCN7JGl9KTpmaXJzdC1jaGlsZCxcbiAgICAmOm50aC1sYXN0LWNoaWxkKCN7JGl9KTpmaXJzdC1jaGlsZCB+ICN7JGVsZW19IHtcbiAgICAgIHdpZHRoOiBwZXJjZW50YWdlKDEgLyAkaSk7XG4gICAgfVxuICB9XG59XG5cbi8vLyBSZW1vdmVzIHRoZSBmb2N1cyByaW5nIGFyb3VuZCBhbiBlbGVtZW50IHdoZW4gYSBtb3VzZSBpbnB1dCBpcyBkZXRlY3RlZC5cbkBtaXhpbiBkaXNhYmxlLW1vdXNlLW91dGxpbmUge1xuICBbZGF0YS13aGF0aW5wdXQ9J21vdXNlJ10gJiB7XG4gICAgb3V0bGluZTogMDtcbiAgfVxufVxuXG4vLy8gTWFrZXMgYW4gZWxlbWVudCB2aXN1YWxseSBoaWRkZW4sIGJ1dCBzdGlsbCBhY2Nlc3NpYmxlIHRvIGtleWJvYXJkcyBhbmQgYXNzaXN0aXZlIGRldmljZXMuXG4vLy8gQGxpbmsgaHR0cDovL3Nub29rLmNhL2FyY2hpdmVzL2h0bWxfYW5kX2Nzcy9oaWRpbmctY29udGVudC1mb3ItYWNjZXNzaWJpbGl0eSBIaWRpbmcgQ29udGVudCBmb3IgQWNjZXNzaWJpbGl0eVxuLy8vIEBsaW5rIGh0dHA6Ly9odWdvZ2lyYXVkZWwuY29tLzIwMTYvMTAvMTMvY3NzLWhpZGUtYW5kLXNlZWsvXG5AbWl4aW4gZWxlbWVudC1pbnZpc2libGUge1xuICBwb3NpdGlvbjogYWJzb2x1dGUgIWltcG9ydGFudDtcbiAgd2lkdGg6IDFweDtcbiAgaGVpZ2h0OiAxcHg7XG4gIHBhZGRpbmc6IDA7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGNsaXA6IHJlY3QoMCwwLDAsMCk7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIGNsaXAtcGF0aDogaW5zZXQoNTAlKTtcbiAgYm9yZGVyOiAwO1xufVxuXG4vLy8gUmV2ZXJzZXMgdGhlIENTUyBvdXRwdXQgY3JlYXRlZCBieSB0aGUgYGVsZW1lbnQtaW52aXNpYmxlKClgIG1peGluLlxuQG1peGluIGVsZW1lbnQtaW52aXNpYmxlLW9mZiB7XG4gIHBvc2l0aW9uOiBzdGF0aWMgIWltcG9ydGFudDtcbiAgd2lkdGg6IGF1dG87XG4gIGhlaWdodDogYXV0bztcbiAgb3ZlcmZsb3c6IHZpc2libGU7XG4gIGNsaXA6IGF1dG87XG4gIHdoaXRlLXNwYWNlOiBub3JtYWw7XG4gIGNsaXAtcGF0aDogbm9uZTtcbn1cblxuLy8vIFZlcnRpY2FsbHkgY2VudGVycyB0aGUgZWxlbWVudCBpbnNpZGUgb2YgaXRzIGZpcnN0IG5vbi1zdGF0aWMgcGFyZW50LFxuLy8vIEBsaW5rIGh0dHA6Ly93d3cuc2l0ZXBvaW50LmNvbS9jZW50ZXJpbmctd2l0aC1zYXNzLyBDZW50ZXJpbmcgV2l0aCBTYXNzXG5AbWl4aW4gdmVydGljYWwtY2VudGVyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDUwJTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xufVxuXG4vLy8gSG9yaXpvbnRhbGx5IGNlbnRlcnMgdGhlIGVsZW1lbnQgaW5zaWRlIG9mIGl0cyBmaXJzdCBub24tc3RhdGljIHBhcmVudCxcbi8vLyBAbGluayBodHRwOi8vd3d3LnNpdGVwb2ludC5jb20vY2VudGVyaW5nLXdpdGgtc2Fzcy8gQ2VudGVyaW5nIFdpdGggU2Fzc1xuQG1peGluIGhvcml6b250YWwtY2VudGVyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiA1MCU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcbn1cblxuLy8vIEFic29sdXRlbHkgY2VudGVycyB0aGUgZWxlbWVudCBpbnNpZGUgb2YgaXRzIGZpcnN0IG5vbi1zdGF0aWMgcGFyZW50LFxuLy8vIEBsaW5rIGh0dHA6Ly93d3cuc2l0ZXBvaW50LmNvbS9jZW50ZXJpbmctd2l0aC1zYXNzLyBDZW50ZXJpbmcgV2l0aCBTYXNzXG5AbWl4aW4gYWJzb2x1dGUtY2VudGVyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDUwJTtcbiAgbGVmdDogNTAlO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcbn1cblxuLy8vIEl0ZXJhdGVzIHRocm91Z2ggYnJlYWtwb2ludHMgZGVmaW5lZCBpbiBgJGJyZWFrcG9pbnQtY2xhc3Nlc2AgYW5kIHByaW50cyB0aGUgQ1NTIGluc2lkZSB0aGUgbWl4aW4gYXQgZWFjaCBicmVha3BvaW50J3MgbWVkaWEgcXVlcnkuIFVzZSB0aGlzIHdpdGggdGhlIGdyaWQsIG9yIGFueSBvdGhlciBjb21wb25lbnQgdGhhdCBoYXMgcmVzcG9uc2l2ZSBjbGFzc2VzLlxuLy8vXG4vLy8gQHBhcmFtIHtCb29sZWFufSAkc21hbGwgW3RydWVdIC0gSWYgYGZhbHNlYCwgdGhlIG1peGluIHdpbGwgc2tpcCB0aGUgYHNtYWxsYCBicmVha3BvaW50LiBVc2UgdGhpcyB3aXRoIGNvbXBvbmVudHMgdGhhdCBkb24ndCBwcmVmaXggY2xhc3NlcyB3aXRoIGBzbWFsbC1gLCBvbmx5IGBtZWRpdW0tYCBhbmQgdXAuXG4vLy8gQHBhcmFtIHtCb29sZWFufSAkYXV0by1pbnNlcnQtYnJlYWtwb2ludHMgW3RydWVdIC0gSWYgYGZhbHNlYCwgdGhlIG1peGluIHdpbGwgaXRlcmF0ZSBvdmVyIGJyZWFrcG9pbnRzIHdpdGhvdXQgZG9pbmcgdGhlIG1lZGlhIHF1ZXJ5IGl0c2VsZi4gVXNlZnVsIGZvciBtb3JlIGNvbXBsZXggbWVkaWEgcXVlcnkgZ2VuZXJhdGlvbiBhcyBpbiB0aGUgbWFyZ2luIGdyaWQuXG5AbWl4aW4gLXpmLWVhY2gtYnJlYWtwb2ludCgkc21hbGw6IHRydWUsICRhdXRvLWluc2VydC1icmVha3BvaW50czogdHJ1ZSkge1xuICAkbGlzdDogJGJyZWFrcG9pbnQtY2xhc3NlcztcblxuICBAaWYgbm90ICRzbWFsbCB7XG4gICAgJGxpc3Q6IHNsLXJlbW92ZSgkbGlzdCwgJC16Zi16ZXJvLWJyZWFrcG9pbnQpO1xuICB9XG5cbiAgQGVhY2ggJG5hbWUgaW4gJGxpc3Qge1xuICAgICQtemYtc2l6ZTogJG5hbWUgIWdsb2JhbDtcblxuICAgIEBpZiAkYXV0by1pbnNlcnQtYnJlYWtwb2ludHMge1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkbmFtZSkge1xuICAgICAgICBAY29udGVudDtcbiAgICAgIH1cbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9XG59XG5cbi8vLyBHZW5lcmF0ZSB0aGUgYEBjb250ZW50YCBwYXNzZWQgdG8gdGhlIG1peGluIHdpdGggYSB2YWx1ZSBgJC16Zi1icC12YWx1ZWAgcmVsYXRlZCB0byBhIGJyZWFrcG9pbnQsIGRlcGVuZGluZyBvbiB0aGUgYCRuYW1lYCBwYXJhbWV0ZXI6XG4vLy8gLSBGb3IgYSBzaW5nbGUgdmFsdWUsIGAkLXpmLWJwLXZhbHVlYCBpcyB0aGlzIHZhbHVlLlxuLy8vIC0gRm9yIGEgYnJlYWtwb2ludCBuYW1lLCBgJC16Zi1icC12YWx1ZWAgaXMgdGhlIGNvcnJlc3BvbmRpbmcgYnJlYWtwb2ludCB2YWx1ZSBpbiBgJG1hcGAuXG4vLy8gLSBGb3IgXCJhdXRvXCIsIGAkLXpmLWJwLXZhbHVlYCBpcyB0aGUgY29ycmVzcG9uZGluZyBicmVha3BvaW50IHZhbHVlIGluIGAkbWFwYCBhbmQgaXMgcGFzc2VkIHRvIGBAY29udGVudGAsIHdoaWNoIGlzIG1hZGUgcmVzcG9uc2l2ZSBmb3IgZWFjaCBicmVha3BvaW50IG9mIGAkbWFwYC5cbi8vLyBAcGFyYW0ge051bWJlcnxBcnJheXxLZXl3b3JkfSAkbmFtZSBbYXV0b10gLSBTaW5nbGUgdmFsdWUsIGJyZWFrcG9pbnQgbmFtZSwgb3IgbGlzdCBvZiBicmVha3BvaW50IG5hbWVzIHRvIHVzZS4gXCJhdXRvXCIgYnkgZGVmYXVsdC5cbi8vLyBAcGFyYW0ge051bWJlcnxNYXB9ICRtYXAgLSBNYXAgb2YgYnJlYWtwb2ludHMgYW5kIHZhbHVlcyBvciBzaW5nbGUgdmFsdWUgdG8gdXNlLlxuQG1peGluIC16Zi1icmVha3BvaW50LXZhbHVlKFxuICAkbmFtZTogYXV0byxcbiAgJG1hcDogbnVsbFxuKSB7XG4gIEBpZiAkbmFtZSA9PSBhdXRvIGFuZCB0eXBlLW9mKCRtYXApID09ICdtYXAnIHtcbiAgICAvLyBcImF1dG9cIlxuICAgIEBlYWNoICRrLCAkdiBpbiAkbWFwIHtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGspIHtcbiAgICAgICAgQGluY2x1ZGUgLXpmLWJyZWFrcG9pbnQtdmFsdWUoJHYsICRtYXApIHtcbiAgICAgICAgICBAY29udGVudDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuICBAZWxzZSB7XG4gICAgLy8gYnJlYWtwb2ludCBuYW1lXG4gICAgQGlmIHR5cGUtb2YoJG5hbWUpID09ICdzdHJpbmcnIHtcbiAgICAgICRuYW1lOiAtemYtZ2V0LWJwLXZhbCgkbWFwLCAkbmFtZSk7XG4gICAgfVxuXG4gICAgLy8gYnJlYWtwb2ludCB2YWx1ZVxuICAgICQtemYtYnAtdmFsdWU6ICRuYW1lICFnbG9iYWw7XG4gICAgQGNvbnRlbnQ7XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIHh5LWdyaWRcbi8vLy9cblxuLy8gTWFyZ2luIEdyaWQgY2xhc3Nlc1xuQG1peGluIHh5LWJhc2UtZ3JpZC1jbGFzc2VzIHtcblxuICAvLyBHcmlkIENvbnRhaW5lclxuICAuZ3JpZC1jb250YWluZXIge1xuICAgIEBpbmNsdWRlIHh5LWdyaWQtY29udGFpbmVyO1xuXG4gICAgJi5mbHVpZCB7XG4gICAgICBAaW5jbHVkZSB4eS1ncmlkLWNvbnRhaW5lcigxMDAlKTtcbiAgICB9XG5cbiAgICAmLmZ1bGwge1xuICAgICAgQGluY2x1ZGUgeHktZ3JpZC1jb250YWluZXIoMTAwJSwgMCk7XG4gICAgfVxuICB9XG5cbiAgLy8gQmFzZSBncmlkIHN0eWxlc1xuICAuZ3JpZC14IHtcbiAgICBAaW5jbHVkZSB4eS1ncmlkO1xuICB9XG5cbiAgLmNlbGwge1xuICAgIEBpbmNsdWRlIHh5LWNlbGwtYmFzZSgpO1xuICAgIEBpbmNsdWRlIHh5LWNlbGwtc3RhdGljKCRncmlkLWNvbHVtbnMsIGZhbHNlLCAkZ3V0dGVyLXR5cGU6IHBhZGRpbmcpO1xuXG4gICAgJi5hdXRvIHtcbiAgICAgIEBpbmNsdWRlIHh5LWNlbGwtYmFzZShhdXRvKTtcbiAgICB9XG5cbiAgICAmLnNocmluayB7XG4gICAgICBAaW5jbHVkZSB4eS1jZWxsLWJhc2Uoc2hyaW5rKTtcbiAgICB9XG5cbiAgfVxuICAuZ3JpZC14IHtcbiAgICA+IC5hdXRvIHtcbiAgICAgIEBpbmNsdWRlIHh5LWNlbGwtc3RhdGljKGF1dG8sIGZhbHNlKTtcbiAgICB9XG5cbiAgICA+IC5zaHJpbmsge1xuICAgICAgQGluY2x1ZGUgeHktY2VsbC1zdGF0aWMoc2hyaW5rLCBmYWxzZSk7XG4gICAgfVxuICB9XG5cbiAgLy8gQXV0byB3aWR0aFxuICBAaW5jbHVkZSAtemYtZWFjaC1icmVha3BvaW50KCkge1xuICAgIC8vIFRoaXMgaXMgYSBiaXQgb2YgYSBoYWNrL3dvcmthcm91bmQsIHNlZSB0aGVzZSBpc3N1ZXMgJiBQUnMgZm9yIHRoZSBiYWNrc3Rvcnk6XG4gICAgLy8gaHR0cHM6Ly9naXRodWIuY29tL3p1cmIvZm91bmRhdGlvbi1zaXRlcy9pc3N1ZXMvMTAyNDRcbiAgICAvLyBodHRwczovL2dpdGh1Yi5jb20venVyYi9mb3VuZGF0aW9uLXNpdGVzL3B1bGwvMTAyMjIgYW5kXG4gICAgLy8gaHR0cHM6Ly9naXRodWIuY29tL3p1cmIvZm91bmRhdGlvbi1zaXRlcy9wdWxsLzEwMTY0XG4gICAgLmdyaWQteCB7XG4gICAgICAkc3RyOiBcIj4gLiN7JC16Zi1zaXplfS1zaHJpbmssID4gLiN7JC16Zi1zaXplfS1mdWxsXCI7XG4gICAgICBAZm9yICRpIGZyb20gMSB0aHJvdWdoICRncmlkLWNvbHVtbnMge1xuICAgICAgICAkc3RyOiAkc3RyICsgXCIsID4gLiN7JC16Zi1zaXplfS0jeyRpfVwiXG4gICAgICB9XG4gICAgICAjeyRzdHJ9IHtcbiAgICAgICAgZmxleC1iYXNpczogYXV0bztcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBAaW5jbHVkZSAtemYtZWFjaC1icmVha3BvaW50KCkge1xuICAgIEBpZiBub3QoJC16Zi1zaXplID09IHNtYWxsKSB7XG4gICAgICAuZ3JpZC14ID4gLiN7JC16Zi1zaXplfS1hdXRvIHtcbiAgICAgICAgQGluY2x1ZGUgeHktY2VsbC1iYXNlKGF1dG8pO1xuICAgICAgICBAaW5jbHVkZSB4eS1jZWxsLXN0YXRpYyhhdXRvLCBmYWxzZSk7XG4gICAgICB9XG5cbiAgICAgIC5ncmlkLXggPiAuI3skLXpmLXNpemV9LXNocmluayB7XG4gICAgICAgIEBpbmNsdWRlIHh5LWNlbGwtYmFzZShzaHJpbmspO1xuICAgICAgICBAaW5jbHVkZSB4eS1jZWxsLXN0YXRpYyhzaHJpbmssIGZhbHNlKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBAZm9yICRpIGZyb20gMSB0aHJvdWdoICRncmlkLWNvbHVtbnMge1xuICAgICAgLy8gU2l6aW5nIChwZXJjZW50YWdlKVxuICAgICAgLmdyaWQteCA+IC4jeyQtemYtc2l6ZX0tI3skaX0ge1xuICAgICAgICBAaW5jbHVkZSB4eS1jZWxsLXN0YXRpYygkaSwgZmFsc2UsICRndXR0ZXItdHlwZTogcGFkZGluZyk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8gUmVzZXQgd2lkdGggd2hlbiB1c2luZyBgLmdyaWQtbWFyZ2luLXhgIG5vdCBvbiBgLmdyaWQteGBcbiAgLmdyaWQtbWFyZ2luLXg6bm90KC5ncmlkLXgpID4gLmNlbGwge1xuICAgIHdpZHRoOiBhdXRvO1xuICB9XG5cbiAgLy8gUmVzZXQgaGVpZ2h0IHdoZW4gdXNpbmcgYC5ncmlkLW1hcmdpbi15YCBub3Qgb24gYC5ncmlkLXlgXG4gIC5ncmlkLW1hcmdpbi15Om5vdCguZ3JpZC15KSA+IC5jZWxsIHtcbiAgICBoZWlnaHQ6IGF1dG87XG4gIH1cbn1cblxuQG1peGluIC14eS1icmVha3BvaW50LWNlbGwtY2xhc3NlcygkY2xhc3MtYnJlYWtwb2ludCwgJGd1dHRlci1icmVha3BvaW50LCAkdmVydGljYWwpIHtcbiAgJHByZWZpeDogaWYoJGNsYXNzLWJyZWFrcG9pbnQgPT0gJC16Zi16ZXJvLWJyZWFrcG9pbnQsICcnLCAnI3skY2xhc3MtYnJlYWtwb2ludH0tJyk7XG4gID4gLiN7JHByZWZpeH1hdXRvIHtcbiAgICBAaW5jbHVkZSB4eS1jZWxsLXN0YXRpYyhhdXRvLCBmYWxzZSwgJGJyZWFrcG9pbnQ6ICRndXR0ZXItYnJlYWtwb2ludCwgJHZlcnRpY2FsOiAkdmVydGljYWwpO1xuICB9XG5cbiAgPiAuI3skcHJlZml4fXNocmluayB7XG4gICAgQGluY2x1ZGUgeHktY2VsbC1zdGF0aWMoc2hyaW5rLCBmYWxzZSwgJGJyZWFrcG9pbnQ6ICRndXR0ZXItYnJlYWtwb2ludCwgJHZlcnRpY2FsOiAkdmVydGljYWwpO1xuICB9XG5cbiAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCAkZ3JpZC1jb2x1bW5zIHtcbiAgICAvLyBTaXppbmcgKHBlcmNlbnRhZ2UpXG4gICAgJGNsYXNzbmFtZTogaWYoJHZlcnRpY2FsLCAnLiN7JGNsYXNzLWJyZWFrcG9pbnR9LSN7JGl9JywgJy4jeyRjbGFzcy1icmVha3BvaW50fS0jeyRpfScpO1xuXG4gICAgPiAjeyRjbGFzc25hbWV9IHtcbiAgICAgIEBpbmNsdWRlIHh5LWNlbGwtc3RhdGljKCRpLCBmYWxzZSwgJGJyZWFrcG9pbnQ6ICRndXR0ZXItYnJlYWtwb2ludCwgJHZlcnRpY2FsOiAkdmVydGljYWwpO1xuICAgIH1cbiAgfVxufVxuXG4vLyBNYXJnaW4gR3JpZCBjbGFzc2VzXG5AbWl4aW4geHktbWFyZ2luLWdyaWQtY2xhc3NlcyhcbiAgJGd1dHRlci1wb3NpdGlvbjogbGVmdCByaWdodCxcbiAgJHZlcnRpY2FsOiBmYWxzZSxcbiAgJHdyYXBwaW5nLXNlbGVjdG9yOiAnLmdyaWQtbWFyZ2luLXgnXG4pe1xuICAjeyR3cmFwcGluZy1zZWxlY3Rvcn0ge1xuICAgIEBpbmNsdWRlIHh5LWd1dHRlcnMoJG5lZ2F0aXZlOiB0cnVlLCAkZ3V0dGVyLXBvc2l0aW9uOiAkZ3V0dGVyLXBvc2l0aW9uKTtcblxuICAgIC8vIEJhc2UgY2VsbCBzdHlsZXNcbiAgICA+IC5jZWxsIHtcbiAgICAgIEBpbmNsdWRlIHh5LWNlbGwtc3RhdGljKCR2ZXJ0aWNhbDogJHZlcnRpY2FsKTtcbiAgICB9XG5cbiAgICAvLyBiYXNlIHN0eWxlcyBuZWVkIHRvIGFsbCBiZSBiZWZvcmUgdGhlIGF1dG8gYW5kIHNocmluayBzdHlsZXNcbiAgICBAaW5jbHVkZSAtemYtZWFjaC1icmVha3BvaW50KCkge1xuICAgICAgQGlmKHR5cGUtb2YoJGdyaWQtbWFyZ2luLWd1dHRlcnMpID09ICdtYXAnIGFuZCBtYXAtaGFzLWtleSgkZ3JpZC1tYXJnaW4tZ3V0dGVycywgJC16Zi1zaXplKSBhbmQgJC16Zi1zaXplICE9ICQtemYtemVyby1icmVha3BvaW50KSB7XG4gICAgICAgID4gLmNlbGwge1xuICAgICAgICAgIEBpbmNsdWRlIHh5LWNlbGwtc3RhdGljKCRicmVha3BvaW50OiAkLXpmLXNpemUsICR2ZXJ0aWNhbDogJHZlcnRpY2FsKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIEBpbmNsdWRlIC16Zi1lYWNoLWJyZWFrcG9pbnQoKSB7XG5cbiAgICAgIC8vIFRoaXMgaXMgcHVyZWx5IGZvciByZXNwb25zaXZlIGd1dHRlcnMgLSB0aGUgbWFyZ2luIGdyaWQgaGFzIHRvIGdvIGJhY2sgYW5kIGFkanVzdCB3aWR0aHMgKG9yIGhlaWdodHMpXG4gICAgICAvLyBmb3IgcHJpb3IgYnJlYWtwb2ludHMgYmFzZWQgb24gdGhlIHJlc3BvbnNpdmUgZ3V0dGVyLlxuICAgICAgQGlmKHR5cGUtb2YoJGdyaWQtbWFyZ2luLWd1dHRlcnMpID09ICdtYXAnIGFuZCBtYXAtaGFzLWtleSgkZ3JpZC1tYXJnaW4tZ3V0dGVycywgJC16Zi1zaXplKSkge1xuICAgICAgICBAZWFjaCAkYnAgaW4gLXpmLWJyZWFrcG9pbnRzLWxlc3MtdGhhbigkLXpmLXNpemUpIHtcbiAgICAgICAgICBAaWYobWFwLWhhcy1rZXkoJGdyaWQtbWFyZ2luLWd1dHRlcnMsICRicCkpIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIC14eS1icmVha3BvaW50LWNlbGwtY2xhc3NlcygkYnAsICQtemYtc2l6ZSwgJHZlcnRpY2FsKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgQGluY2x1ZGUgLXh5LWJyZWFrcG9pbnQtY2VsbC1jbGFzc2VzKCQtemYtc2l6ZSwgJC16Zi1zaXplLCAkdmVydGljYWwpO1xuICAgIH1cbiAgfVxufVxuXG4vLyBQYWRkaW5nIEdyaWQgY2xhc3Nlc1xuQG1peGluIHh5LXBhZGRpbmctZ3JpZC1jbGFzc2VzIHtcbiAgLmdyaWQtcGFkZGluZy14IHtcblxuICAgIC8vIE5lZ2F0aXZlIG1hcmdpbiBmb3IgbmVzdGVkIGdyaWRzXG4gICAgLmdyaWQtcGFkZGluZy14IHtcbiAgICAgIEBpbmNsdWRlIHh5LWd1dHRlcnMoJG5lZ2F0aXZlOiB0cnVlKTtcbiAgICB9XG5cbiAgICAvLyBOZWdhdGl2ZSBtYXJnaW4gZm9yIGdyaWRzIHdpdGhpbiBgZ3JpZC1jb250YWluZXIvZ3JpZC1jb250YWluZXIuZmx1aWRgXG4gICAgLy8gVGhpcyBhbGxvd3MgbWFyZ2luIGFuZCBwYWRkaW5nIGdyaWRzIHRvIGxpbmUgdXAgd2l0aCBlYWNob3RoZXJcbiAgICAuZ3JpZC1jb250YWluZXI6bm90KC5mdWxsKSA+ICYge1xuICAgICAgQGluY2x1ZGUgeHktZ3V0dGVycygkbmVnYXRpdmU6IHRydWUpO1xuICAgIH1cblxuICAgIC8vIEJhc2UgY2VsbCBzdHlsZXNcbiAgICA+IC5jZWxsIHtcbiAgICAgIEBpbmNsdWRlIHh5LWd1dHRlcnMoJGd1dHRlcnM6ICRncmlkLXBhZGRpbmctZ3V0dGVycywgJGd1dHRlci10eXBlOiBwYWRkaW5nKTtcbiAgICB9XG4gIH1cbn1cblxuLy8gQmxvY2sgR3JpZCBjbGFzc2VzXG5AbWl4aW4geHktYmxvY2stZ3JpZC1jbGFzc2VzKCRtYXJnaW4tZ3JpZDogdHJ1ZSwgJHBhZGRpbmctZ3JpZDogdHJ1ZSkge1xuICBAaWYgJHBhZGRpbmctZ3JpZCB7XG4gICAgQGluY2x1ZGUgLXpmLWVhY2gtYnJlYWtwb2ludCB7XG4gICAgICBAZm9yICRpIGZyb20gMSB0aHJvdWdoICR4eS1ibG9jay1ncmlkLW1heCB7XG4gICAgICAgIC4jeyQtemYtc2l6ZX0tdXAtI3skaX0ge1xuICAgICAgICAgIEBpbmNsdWRlIHh5LWdyaWQtbGF5b3V0KCRpLCAnLmNlbGwnLCBmYWxzZSwgJGd1dHRlci10eXBlOiBwYWRkaW5nKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIEBpZiAkbWFyZ2luLWdyaWQge1xuICAgIEBpbmNsdWRlIC16Zi1lYWNoLWJyZWFrcG9pbnQge1xuICAgICAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCAkeHktYmxvY2stZ3JpZC1tYXgge1xuICAgICAgICAvLyBUaGlzIGlzIHB1cmVseSBmb3IgcmVzcG9uc2l2ZSBndXR0ZXJzIC0gdGhlIG1hcmdpbiBncmlkIGhhcyB0byBnbyBiYWNrIGFuZCBhZGp1c3Qgd2lkdGhzIChvciBoZWlnaHRzKVxuICAgICAgICAvLyBmb3IgcHJpb3IgYnJlYWtwb2ludHMgYmFzZWQgb24gdGhlIHJlc3BvbnNpdmUgZ3V0dGVyLlxuICAgICAgICBAaWYodHlwZS1vZigkZ3JpZC1tYXJnaW4tZ3V0dGVycykgPT0gJ21hcCcgYW5kIG1hcC1oYXMta2V5KCRncmlkLW1hcmdpbi1ndXR0ZXJzLCAkLXpmLXNpemUpKSB7XG4gICAgICAgICAgQGVhY2ggJGJwIGluIC16Zi1icmVha3BvaW50cy1sZXNzLXRoYW4oJC16Zi1zaXplKSB7XG4gICAgICAgICAgICBAaWYobWFwLWhhcy1rZXkoJGdyaWQtbWFyZ2luLWd1dHRlcnMsICRicCkpIHtcbiAgICAgICAgICAgICAgLmdyaWQtbWFyZ2luLXguI3skYnB9LXVwLSN7JGl9IHtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSB4eS1ncmlkLWxheW91dCgkaSwgJy5jZWxsJywgZmFsc2UsICRndXR0ZXItdHlwZTogbWFyZ2luLCAkYnJlYWtwb2ludDogJGJwKTtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCAkeHktYmxvY2stZ3JpZC1tYXgge1xuICAgICAgICAuZ3JpZC1tYXJnaW4teC4jeyQtemYtc2l6ZX0tdXAtI3skaX0ge1xuICAgICAgICAgIEBpbmNsdWRlIHh5LWdyaWQtbGF5b3V0KCRpLCAnLmNlbGwnLCBmYWxzZSwgJGd1dHRlci10eXBlOiBtYXJnaW4sICRicmVha3BvaW50OiAkLXpmLXNpemUpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8vIENvbGxhcHNlIGNsYXNzZXNcbkBtaXhpbiB4eS1jb2xsYXBzZS1ncmlkLWNsYXNzZXMoJG1hcmdpbi1ncmlkOiB0cnVlLCAkcGFkZGluZy1ncmlkOiB0cnVlKSB7XG4gIEBlYWNoICRicCBpbiAkYnJlYWtwb2ludC1jbGFzc2VzIHtcbiAgICBAaWYgJG1hcmdpbi1ncmlkIHtcbiAgICAgIC4jeyRicH0tbWFyZ2luLWNvbGxhcHNlIHtcbiAgICAgICAgQGluY2x1ZGUgeHktZ3JpZC1jb2xsYXBzZSgkZ3V0dGVyLXR5cGU6IG1hcmdpbiwgJG1pbi1icmVha3BvaW50OiAkYnApO1xuICAgICAgfVxuICAgIH1cblxuICAgIEBpZiAkcGFkZGluZy1ncmlkIHtcbiAgICAgIC4jeyRicH0tcGFkZGluZy1jb2xsYXBzZSB7XG4gICAgICAgIEBpbmNsdWRlIHh5LWdyaWQtY29sbGFwc2UoJGd1dHRlci10eXBlOiBwYWRkaW5nLCAkbWluLWJyZWFrcG9pbnQ6ICRicCk7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8vIE9mZnNldCBjbGFzc2VzXG5AbWl4aW4geHktb2Zmc2V0LWNlbGwtY2xhc3NlcyB7XG4gIEBpbmNsdWRlIC16Zi1lYWNoLWJyZWFrcG9pbnQge1xuICAgIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggJGdyaWQtY29sdW1ucyB7XG4gICAgICAvLyBPZmZzZXRzXG4gICAgICAkbzogJGkgLSAxO1xuXG4gICAgICAuI3skLXpmLXNpemV9LW9mZnNldC0jeyRvfSB7XG4gICAgICAgIEBpbmNsdWRlIHh5LWNlbGwtb2Zmc2V0KCRvLCAkZ3V0dGVyczogJGdyaWQtcGFkZGluZy1ndXR0ZXJzLCAkZ3V0dGVyLXR5cGU6IHBhZGRpbmcsICRicmVha3BvaW50OiAkLXpmLXNpemUpO1xuICAgICAgfVxuXG4gICAgICAuZ3JpZC1tYXJnaW4teCA+IC4jeyQtemYtc2l6ZX0tb2Zmc2V0LSN7JG99IHtcbiAgICAgICAgQGluY2x1ZGUgeHktY2VsbC1vZmZzZXQoJG8sICRicmVha3BvaW50OiAkLXpmLXNpemUpO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vLyBWZXJ0aWNhbCBHcmlkIGNsYXNzZXNcbkBtaXhpbiB4eS12ZXJ0aWNhbC1ncmlkLWNsYXNzZXMoXG4gICRtYXJnaW4tZ3JpZDogdHJ1ZSxcbiAgJHBhZGRpbmctZ3JpZDogdHJ1ZVxuKSB7XG5cbiAgQGluY2x1ZGUgLXpmLWVhY2gtYnJlYWtwb2ludCgpIHtcbiAgICBAaWYgbm90KCQtemYtc2l6ZSA9PSBzbWFsbCkge1xuICAgIH1cbiAgfVxuXG4gIC5ncmlkLXkge1xuICAgIEBpbmNsdWRlIHh5LWdyaWQodmVydGljYWwsIGZhbHNlKTtcblxuXG4gICAgPiAuY2VsbCB7XG4gICAgICBAaW5jbHVkZSB4eS1jZWxsLXJlc2V0KCk7XG4gICAgfVxuXG4gICAgPiAuYXV0byB7XG4gICAgICBAaW5jbHVkZSB4eS1jZWxsLXN0YXRpYyhhdXRvLCBmYWxzZSwgJGJyZWFrcG9pbnQ6ICQtemYtc2l6ZSwgJHZlcnRpY2FsOiB0cnVlKTtcbiAgICB9XG5cbiAgICA+IC5zaHJpbmsge1xuICAgICAgQGluY2x1ZGUgeHktY2VsbC1zdGF0aWMoc2hyaW5rLCBmYWxzZSwgJGJyZWFrcG9pbnQ6ICQtemYtc2l6ZSwgJHZlcnRpY2FsOiB0cnVlKTtcbiAgICB9XG5cblxuICAgIEBpbmNsdWRlIC16Zi1lYWNoLWJyZWFrcG9pbnQoKSB7XG4gICAgICAvLyBUaGlzIGlzIGEgYml0IG9mIGEgaGFjay93b3JrYXJvdW5kLCBzZWUgdGhlc2UgaXNzdWVzIGFuZCBQUnMgZm9yIHRoZSBiYWNrc3Rvcnk6XG4gICAgICAvLyBodHRwczovL2dpdGh1Yi5jb20venVyYi9mb3VuZGF0aW9uLXNpdGVzL2lzc3Vlcy8xMDI0NFxuICAgICAgLy8gaHR0cHM6Ly9naXRodWIuY29tL3p1cmIvZm91bmRhdGlvbi1zaXRlcy9wdWxsLzEwMjIyIGFuZFxuICAgICAgLy8gaHR0cHM6Ly9naXRodWIuY29tL3p1cmIvZm91bmRhdGlvbi1zaXRlcy9wdWxsLzEwMTY0XG4gICAgICAkc3RyOiBcIj4gLiN7JC16Zi1zaXplfS1zaHJpbmssID4gLiN7JC16Zi1zaXplfS1mdWxsXCI7XG4gICAgICBAZm9yICRpIGZyb20gMSB0aHJvdWdoICRncmlkLWNvbHVtbnMge1xuICAgICAgICAkc3RyOiAkc3RyICsgXCIsID4gLiN7JC16Zi1zaXplfS0jeyRpfVwiXG4gICAgICB9XG4gICAgICAjeyRzdHJ9IHtcbiAgICAgICAgZmxleC1iYXNpczogYXV0bztcbiAgICAgIH1cbiAgICB9XG5cbiAgICBAaW5jbHVkZSAtemYtZWFjaC1icmVha3BvaW50KCkge1xuICAgICAgQGlmIG5vdCgkLXpmLXNpemUgPT0gc21hbGwpIHtcbiAgICAgICAgPiAuI3skLXpmLXNpemV9LWF1dG8ge1xuICAgICAgICAgIEBpbmNsdWRlIHh5LWNlbGwtYmFzZShhdXRvKTtcbiAgICAgICAgICBAaW5jbHVkZSB4eS1jZWxsLXN0YXRpYyhhdXRvLCBmYWxzZSwgJGJyZWFrcG9pbnQ6ICQtemYtc2l6ZSwgJHZlcnRpY2FsOiB0cnVlKTtcbiAgICAgICAgfVxuXG4gICAgICAgID4gLiN7JC16Zi1zaXplfS1zaHJpbmsge1xuICAgICAgICAgIEBpbmNsdWRlIHh5LWNlbGwtc3RhdGljKHNocmluaywgZmFsc2UsICRicmVha3BvaW50OiAkLXpmLXNpemUsICR2ZXJ0aWNhbDogdHJ1ZSk7XG4gICAgICAgIH1cblxuICAgICAgfVxuXG4gICAgICBAZm9yICRpIGZyb20gMSB0aHJvdWdoICRncmlkLWNvbHVtbnMge1xuICAgICAgICAvLyBTaXppbmcgKHBlcmNlbnRhZ2UpXG4gICAgICAgID4gLiN7JC16Zi1zaXplfS0jeyRpfSB7XG4gICAgICAgICAgQGluY2x1ZGUgeHktY2VsbC1zdGF0aWMoJGksIGZhbHNlLCAkdmVydGljYWw6IHRydWUsICRndXR0ZXItdHlwZTogcGFkZGluZyk7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgIH1cbiAgfVxuXG4gIEBpZiAkcGFkZGluZy1ncmlkIHtcbiAgICAuZ3JpZC1wYWRkaW5nLXkge1xuICAgICAgLy8gTmVnYXRpdmUgbWFyZ2luIGZvciBuZXN0ZWQgZ3JpZHNcbiAgICAgIC5ncmlkLXBhZGRpbmcteSB7XG4gICAgICAgIEBpbmNsdWRlIHh5LWd1dHRlcnMoJG5lZ2F0aXZlOiB0cnVlLCAkZ3V0dGVyLXBvc2l0aW9uOiB0b3AgYm90dG9tKTtcbiAgICAgIH1cblxuICAgICAgLy8gQmFzZSBjZWxsIHN0eWxlc1xuICAgICAgPiAuY2VsbCB7XG4gICAgICAgIEBpbmNsdWRlIHh5LWd1dHRlcnMoJGd1dHRlcnM6ICRncmlkLXBhZGRpbmctZ3V0dGVycywgJGd1dHRlci10eXBlOiBwYWRkaW5nLCAkZ3V0dGVyLXBvc2l0aW9uOiB0b3AgYm90dG9tKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBAaWYgJG1hcmdpbi1ncmlkIHtcbiAgICBAaW5jbHVkZSB4eS1tYXJnaW4tZ3JpZC1jbGFzc2VzKHRvcCBib3R0b20sIHRydWUsICcuZ3JpZC1tYXJnaW4teScpO1xuICB9XG5cbn1cblxuQG1peGluIHh5LWZyYW1lLWdyaWQtY2xhc3NlcygkdmVydGljYWwtZ3JpZDogdHJ1ZSwgJG1hcmdpbi1ncmlkOiB0cnVlKSB7XG4gIC8vIEZyYW1lZCBncmlkIHN0eWxlc1xuICAuZ3JpZC1mcmFtZSB7XG4gICAgQGluY2x1ZGUgeHktZ3JpZC1mcmFtZTtcbiAgfVxuXG4gIC5jZWxsIC5ncmlkLWZyYW1lIHtcbiAgICB3aWR0aDogMTAwJTsgLy8gU2FtZSBhcyBpbmNsdWRlIHdpdGggJG5lc3RlZCwgYnV0IHdpdGggbGVzcyBjc3NcbiAgfVxuXG4gIC5jZWxsLWJsb2NrIHtcbiAgICBAaW5jbHVkZSB4eS1jZWxsLWJsb2NrKCk7XG4gIH1cblxuICAuY2VsbC1ibG9jay15IHtcbiAgICBAaW5jbHVkZSB4eS1jZWxsLWJsb2NrKHRydWUpO1xuICB9XG5cblxuICAuY2VsbC1ibG9jay1jb250YWluZXIge1xuICAgIEBpbmNsdWRlIHh5LWNlbGwtYmxvY2stY29udGFpbmVyKCk7XG4gIH1cblxuXG4gIEBpbmNsdWRlIC16Zi1lYWNoLWJyZWFrcG9pbnQoZmFsc2UpIHtcblxuICAgIC4jeyQtemYtc2l6ZX0tZ3JpZC1mcmFtZSB7XG4gICAgICBAaW5jbHVkZSB4eS1ncmlkLWZyYW1lO1xuICAgIH1cblxuICAgIC5jZWxsIC4jeyQtemYtc2l6ZX0tZ3JpZC1mcmFtZSB7XG4gICAgICB3aWR0aDogMTAwJTsgLy8gU2FtZSBhcyBpbmNsdWRlIHdpdGggJG5lc3RlZCwgYnV0IHdpdGggbGVzcyBjc3NcbiAgICB9XG5cbiAgICAuI3skLXpmLXNpemV9LWNlbGwtYmxvY2sge1xuICAgICAgQGluY2x1ZGUgeHktY2VsbC1ibG9jaygpO1xuICAgIH1cblxuICAgIC4jeyQtemYtc2l6ZX0tY2VsbC1ibG9jay1jb250YWluZXIge1xuICAgICAgQGluY2x1ZGUgeHktY2VsbC1ibG9jay1jb250YWluZXIoKTtcbiAgICB9XG5cbiAgICAuI3skLXpmLXNpemV9LWNlbGwtYmxvY2steSB7XG4gICAgICBAaW5jbHVkZSB4eS1jZWxsLWJsb2NrKHRydWUpO1xuICAgIH1cbiAgfVxuXG4gIEBpZiAkdmVydGljYWwtZ3JpZCB7XG4gICAgLmdyaWQteSB7XG4gICAgICAmLmdyaWQtZnJhbWUge1xuICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgICAgQGluY2x1ZGUgeHktZ3JpZC1mcmFtZSh0cnVlKTtcbiAgICAgIH1cblxuICAgICAgQGluY2x1ZGUgLXpmLWVhY2gtYnJlYWtwb2ludChmYWxzZSkge1xuICAgICAgICAmLiN7JC16Zi1zaXplfS1ncmlkLWZyYW1lIHtcbiAgICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgICAgICBAaW5jbHVkZSB4eS1ncmlkLWZyYW1lKHRydWUpO1xuICAgICAgICB9XG5cbiAgICAgIH1cbiAgICB9XG4gICAgLmNlbGwge1xuICAgICAgLmdyaWQteS5ncmlkLWZyYW1lIHtcbiAgICAgICAgaGVpZ2h0OiAxMDAlOyAvLyBTYW1lIGFzIGluY2x1ZGUgd2l0aCAkbmVzdGVkLCBidXQgd2l0aCBsZXNzIGNzc1xuICAgICAgfVxuICAgICAgQGluY2x1ZGUgLXpmLWVhY2gtYnJlYWtwb2ludChmYWxzZSkge1xuICAgICAgICAuZ3JpZC15LiN7JC16Zi1zaXplfS1ncmlkLWZyYW1lIHtcbiAgICAgICAgICBoZWlnaHQ6IDEwMCU7IC8vIFNhbWUgYXMgaW5jbHVkZSB3aXRoICRuZXN0ZWQsIGJ1dCB3aXRoIGxlc3MgY3NzXG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgQGlmICRtYXJnaW4tZ3JpZCB7XG4gICAgQGluY2x1ZGUgeHktbWFyZ2luLWdyaWQtY2xhc3Nlcyh0b3AgYm90dG9tLCB0cnVlLCAnLmdyaWQtbWFyZ2luLXknKTtcbiAgICAuZ3JpZC1mcmFtZS5ncmlkLW1hcmdpbi15IHtcbiAgICAgIEBpbmNsdWRlIHh5LWdyaWQtZnJhbWUodHJ1ZSwgZmFsc2UsICRncmlkLW1hcmdpbi1ndXR0ZXJzLCAkaW5jbHVkZS1iYXNlOiBmYWxzZSk7XG4gICAgfVxuICAgIEBpbmNsdWRlIC16Zi1lYWNoLWJyZWFrcG9pbnQoZmFsc2UpIHtcbiAgICAgIC5ncmlkLW1hcmdpbi15LiN7JC16Zi1zaXplfS1ncmlkLWZyYW1lIHtcbiAgICAgICAgQGluY2x1ZGUgeHktZ3JpZC1mcmFtZSh0cnVlLCBmYWxzZSwgJGdyaWQtbWFyZ2luLWd1dHRlcnMsICQtemYtc2l6ZSwgZmFsc2UpO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vLyBGaW5hbCBjbGFzc2VzXG5AbWl4aW4gZm91bmRhdGlvbi14eS1ncmlkLWNsYXNzZXMoXG4gICRiYXNlLWdyaWQ6IHRydWUsXG4gICRtYXJnaW4tZ3JpZDogdHJ1ZSxcbiAgJHBhZGRpbmctZ3JpZDogdHJ1ZSxcbiAgJGJsb2NrLWdyaWQ6IHRydWUsXG4gICRjb2xsYXBzZTogdHJ1ZSxcbiAgJG9mZnNldDogdHJ1ZSxcbiAgJHZlcnRpY2FsLWdyaWQ6IHRydWUsXG4gICRmcmFtZS1ncmlkOiB0cnVlXG4pIHtcblxuICAvLyBCYXNlIGdyaWQgc3R5bGVzXG4gIEBpZigkYmFzZS1ncmlkKSB7XG4gICAgQGluY2x1ZGUgeHktYmFzZS1ncmlkLWNsYXNzZXMoKTtcbiAgfVxuXG4gIC8vIE1hcmdpbiBncmlkXG4gIEBpZigkbWFyZ2luLWdyaWQpIHtcbiAgICBAaW5jbHVkZSB4eS1tYXJnaW4tZ3JpZC1jbGFzc2VzKCk7XG4gIH1cblxuICAvLyBQYWRkaW5nIGdyaWRcbiAgQGlmKCRwYWRkaW5nLWdyaWQpIHtcbiAgICBAaW5jbHVkZSB4eS1wYWRkaW5nLWdyaWQtY2xhc3NlcygpO1xuICB9XG5cbiAgLy8gQmxvY2sgZ3JpZFxuICBAaWYoJGJsb2NrLWdyaWQpIHtcbiAgICBAaW5jbHVkZSB4eS1ibG9jay1ncmlkLWNsYXNzZXMoJG1hcmdpbi1ncmlkLCAkcGFkZGluZy1ncmlkKTtcbiAgfVxuXG4gIC8vIENvbGxhcHNlIGd1dHRlcnNcbiAgQGlmKCRjb2xsYXBzZSkge1xuICAgIEBpbmNsdWRlIHh5LWNvbGxhcHNlLWdyaWQtY2xhc3NlcygkbWFyZ2luLWdyaWQsICRwYWRkaW5nLWdyaWQpO1xuICB9XG5cbiAgLy8gT2Zmc2V0IGd1dHRlcnNcbiAgQGlmKCRvZmZzZXQpIHtcbiAgICBAaW5jbHVkZSB4eS1vZmZzZXQtY2VsbC1jbGFzc2VzKCk7XG4gIH1cblxuICAvLyBWZXJ0aWNhbCBncmlkXG4gIEBpZigkdmVydGljYWwtZ3JpZCkge1xuICAgIEBpbmNsdWRlIHh5LXZlcnRpY2FsLWdyaWQtY2xhc3NlcygkbWFyZ2luLWdyaWQsICRwYWRkaW5nLWdyaWQpO1xuICB9XG5cbiAgQGlmICgkZnJhbWUtZ3JpZCkge1xuICAgIEBpbmNsdWRlIHh5LWZyYW1lLWdyaWQtY2xhc3NlcygkdmVydGljYWwtZ3JpZCwgJG1hcmdpbi1ncmlkKVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCB4eS1ncmlkXG4vLy8vXG5cbi8vLyBDcmVhdGUgZ3V0dGVycyBmb3IgYSBjZWxsL2NvbnRhaW5lci5cbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfE1hcH0gJGd1dHRlcnMgWyRncmlkLW1hcmdpbi1ndXR0ZXJzXSAtIE1hcCBvciBzaW5nbGUgdmFsdWUgZm9yIGd1dHRlcnMuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkZ3V0dGVyLXR5cGUgW21hcmdpbl0gLSBUeXBlIG9mIGd1dHRlciB0byBvdXRwdXQuIEFjY2VwdHMgZWl0aGVyIG1hcmdpbiBvciBwYWRkaW5nLlxuLy8vIEBwYXJhbSB7TGlzdH0gJGd1dHRlci1wb3NpdGlvbiBbcmlnaHQgbGVmdF0gLSBUaGUgcG9zaXRpb24gdG8gYXBwbHkgZ3V0dGVycyB0by4gQWNjZXB0cyBgdG9wYCwgYGJvdHRvbWAsIGBsZWZ0YCwgYHJpZ2h0YCBpbiBhbnkgY29tYmluYXRpb24uXG4vLy8gQHBhcmFtIHtCb29sZWFufSAkbmVnYXRpdmUgW2ZhbHNlXSAtIFdoZXRoZXIgdG8gYXBwbHkgdGhlIGd1dHRlciBhcyBhIG5lZ2F0aXZlIHZhbHVlLiBDb21tb25seSB1c2VkIGZvciBuZXN0ZWQgZ3JpZHMuXG5AbWl4aW4geHktZ3V0dGVycyhcbiAgJGd1dHRlcnM6ICRncmlkLW1hcmdpbi1ndXR0ZXJzLFxuICAkZ3V0dGVyLXR5cGU6IG1hcmdpbixcbiAgJGd1dHRlci1wb3NpdGlvbjogcmlnaHQgbGVmdCxcbiAgJG5lZ2F0aXZlOiBmYWxzZVxuKSB7XG4gICRvcGVyYXRvcjogaWYoJG5lZ2F0aXZlLCAnLScsICcnKTtcblxuICAvLyBJZiB3ZSBoYXZlIGRlY2xhcmVkIG5lZ2F0aXZlIGd1dHRlcnMsIGZvcmNlIHR5cGUgdG8gYG1hcmdpbi5cbiAgJGd1dHRlci10eXBlOiBpZigkbmVnYXRpdmUsICdtYXJnaW4nLCAkZ3V0dGVyLXR5cGUpO1xuXG4gIC8vIE91dHB1dCBvdXIgbWFyZ2luIGd1dHRlcnMuXG4gIEBpZiAodHlwZS1vZigkZ3V0dGVycykgPT0gJ21hcCcpIHtcbiAgICBAaW5jbHVkZSAtemYtYnJlYWtwb2ludC12YWx1ZShhdXRvLCAkZ3V0dGVycykge1xuICAgICAgJGd1dHRlcjogcmVtLWNhbGMoJC16Zi1icC12YWx1ZSkgLyAyO1xuXG4gICAgICAvLyBMb29wIHRocm91Z2ggZWFjaCBndXR0ZXIgcG9zaXRpb25cbiAgICAgIEBlYWNoICR2YWx1ZSBpbiAkZ3V0dGVyLXBvc2l0aW9uIHtcbiAgICAgICAgI3skZ3V0dGVyLXR5cGV9LSN7JHZhbHVlfTogI3skb3BlcmF0b3J9JGd1dHRlcjtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgQGVsc2VpZiAodHlwZS1vZigkZ3V0dGVycykgPT0gJ251bWJlcicpIHtcbiAgICAkZ3V0dGVyOiByZW0tY2FsYygkZ3V0dGVycykgLyAyO1xuXG4gICAgLy8gTG9vcCB0aHJvdWdoIGVhY2ggZ3V0dGVyIHBvc2l0aW9uXG4gICAgQGVhY2ggJHZhbHVlIGluICRndXR0ZXItcG9zaXRpb24ge1xuICAgICAgI3skZ3V0dGVyLXR5cGV9LSN7JHZhbHVlfTogI3skb3BlcmF0b3J9JGd1dHRlcjtcbiAgICB9XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIHh5LWdyaWRcbi8vLy9cblxuLy8vIENyZWF0ZXMgYSBtYXggd2lkdGggY29udGFpbmVyLCBkZXNpZ25lZCB0byBob3VzZSB5b3VyIGdyaWQgY29udGVudC5cbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfSAkd2lkdGggWyRncmlkLWNvbnRhaW5lcl0gLSBhIHdpZHRoIHRvIGxpbWl0IHRoZSBjb250YWluZXIgdG8uXG5AbWl4aW4geHktZ3JpZC1jb250YWluZXIoXG4gICR3aWR0aDogJGdyaWQtY29udGFpbmVyLFxuICAkcGFkZGluZzogJGdyaWQtY29udGFpbmVyLXBhZGRpbmdcbikge1xuICBAaW5jbHVkZSB4eS1ndXR0ZXJzKCRndXR0ZXJzOiAkcGFkZGluZywgJGd1dHRlci10eXBlOiBwYWRkaW5nKTtcblxuICBtYXgtd2lkdGg6ICR3aWR0aDtcbiAgbWFyZ2luOiAwIGF1dG87XG59XG5cbi8vLyBDcmVhdGVzIGEgY29udGFpbmVyIGZvciB5b3VyIGZsZXggY2VsbHMuXG4vLy9cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRkaXJlY3Rpb24gW2hvcml6b250YWxdIC0gRWl0aGVyIGhvcml6b250YWwgb3IgdmVydGljYWwgZGlyZWN0aW9uIG9mIGNlbGxzIHdpdGhpbi5cbi8vLyBAcGFyYW0ge0Jvb2xlYW59ICR3cmFwIFt0cnVlXSAtIElmIHRoZSBjZWxscyB3aXRoaW4gc2hvdWxkIHdyYXAgb3Igbm90LlxuQG1peGluIHh5LWdyaWQoXG4gICRkaXJlY3Rpb246IGhvcml6b250YWwsXG4gICR3cmFwOiB0cnVlXG4pIHtcbiAgJGRpcmVjdGlvbjogaWYoJGRpcmVjdGlvbiA9PSAnaG9yaXpvbnRhbCcsIHJvdywgY29sdW1uKTtcbiAgJHdyYXA6IGlmKCR3cmFwLCB3cmFwLCBub3dyYXApO1xuXG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZmxvdzogJGRpcmVjdGlvbiAkd3JhcDtcbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGZ1bmN0aW9uc1xuLy8vL1xuXG4kZ2xvYmFsLWZvbnQtc2l6ZTogMTAwJSAhZGVmYXVsdDtcblxuLy8vIFJlbW92ZXMgdGhlIHVuaXQgKGUuZy4gcHgsIGVtLCByZW0pIGZyb20gYSB2YWx1ZSwgcmV0dXJuaW5nIHRoZSBudW1iZXIgb25seS5cbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfSAkbnVtIC0gTnVtYmVyIHRvIHN0cmlwIHVuaXQgZnJvbS5cbi8vL1xuLy8vIEByZXR1cm5zIHtOdW1iZXJ9IFRoZSBzYW1lIG51bWJlciwgc2FucyB1bml0LlxuQGZ1bmN0aW9uIHN0cmlwLXVuaXQoJG51bSkge1xuICBAcmV0dXJuICRudW0gLyAoJG51bSAqIDAgKyAxKTtcbn1cblxuLy8vIENvbnZlcnRzIG9uZSBvciBtb3JlIHBpeGVsIHZhbHVlcyBpbnRvIG1hdGNoaW5nIHJlbSB2YWx1ZXMuXG4vLy9cbi8vLyBAcGFyYW0ge051bWJlcnxMaXN0fSAkdmFsdWVzIC0gT25lIG9yIG1vcmUgdmFsdWVzIHRvIGNvbnZlcnQuIEJlIHN1cmUgdG8gc2VwYXJhdGUgdGhlbSB3aXRoIHNwYWNlcyBhbmQgbm90IGNvbW1hcy4gSWYgeW91IG5lZWQgdG8gY29udmVydCBhIGNvbW1hLXNlcGFyYXRlZCBsaXN0LCB3cmFwIHRoZSBsaXN0IGluIHBhcmVudGhlc2VzLlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkYmFzZSBbbnVsbF0gLSBUaGUgYmFzZSB2YWx1ZSB0byB1c2Ugd2hlbiBjYWxjdWxhdGluZyB0aGUgYHJlbWAuIElmIHlvdSdyZSB1c2luZyBGb3VuZGF0aW9uIG91dCBvZiB0aGUgYm94LCB0aGlzIGlzIDE2cHguIElmIHRoaXMgcGFyYW1ldGVyIGlzIGBudWxsYCwgdGhlIGZ1bmN0aW9uIHdpbGwgcmVmZXJlbmNlIHRoZSBgJGJhc2UtZm9udC1zaXplYCB2YXJpYWJsZSBhcyB0aGUgYmFzZS5cbi8vL1xuLy8vIEByZXR1cm5zIHtMaXN0fSBBIGxpc3Qgb2YgY29udmVydGVkIHZhbHVlcy5cbkBmdW5jdGlvbiByZW0tY2FsYygkdmFsdWVzLCAkYmFzZTogbnVsbCkge1xuICAkcmVtLXZhbHVlczogKCk7XG4gICRjb3VudDogbGVuZ3RoKCR2YWx1ZXMpO1xuXG4gIC8vIElmIG5vIGJhc2UgaXMgZGVmaW5lZCwgZGVmZXIgdG8gdGhlIGdsb2JhbCBmb250IHNpemVcbiAgQGlmICRiYXNlID09IG51bGwge1xuICAgICRiYXNlOiAkZ2xvYmFsLWZvbnQtc2l6ZTtcbiAgfVxuXG4gIC8vIElmIHRoZSBiYXNlIGZvbnQgc2l6ZSBpcyBhICUsIHRoZW4gbXVsdGlwbHkgaXQgYnkgMTZweFxuICAvLyBUaGlzIGlzIGJlY2F1c2UgMTAwJSBmb250IHNpemUgPSAxNnB4IGluIG1vc3QgYWxsIGJyb3dzZXJzXG4gIEBpZiB1bml0KCRiYXNlKSA9PSAnJScge1xuICAgICRiYXNlOiAoJGJhc2UgLyAxMDAlKSAqIDE2cHg7XG4gIH1cblxuICAvLyBVc2luZyByZW0gYXMgYmFzZSBhbGxvd3MgY29ycmVjdCBzY2FsaW5nXG4gIEBpZiB1bml0KCRiYXNlKSA9PSAncmVtJyB7XG4gICAgJGJhc2U6IHN0cmlwLXVuaXQoJGJhc2UpICogMTZweDtcbiAgfVxuXG4gIEBpZiAkY291bnQgPT0gMSB7XG4gICAgQHJldHVybiAtemYtdG8tcmVtKCR2YWx1ZXMsICRiYXNlKTtcbiAgfVxuXG4gIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggJGNvdW50IHtcbiAgICAkcmVtLXZhbHVlczogYXBwZW5kKCRyZW0tdmFsdWVzLCAtemYtdG8tcmVtKG50aCgkdmFsdWVzLCAkaSksICRiYXNlKSk7XG4gIH1cblxuICBAcmV0dXJuICRyZW0tdmFsdWVzO1xufVxuXG4vLyBDb252ZXJ0cyBhIHVuaXRsZXNzLCBwaXhlbCwgb3IgcmVtIHZhbHVlIHRvIGVtLCBmb3IgdXNlIGluIGJyZWFrcG9pbnRzLlxuQGZ1bmN0aW9uIC16Zi1icC10by1lbSgkdmFsdWUpIHtcbiAgLy8gUGl4ZWwgYW5kIHVuaXRsZXNzIHZhbHVlcyBhcmUgY29udmVydGVkIHRvIHJlbXNcbiAgQGlmIHVuaXQoJHZhbHVlKSA9PSAncHgnIG9yIHVuaXRsZXNzKCR2YWx1ZSkge1xuICAgICR2YWx1ZTogcmVtLWNhbGMoJHZhbHVlLCAkYmFzZTogMTZweCk7XG4gIH1cblxuICAvLyBUaGVuIHRoZSB2YWx1ZSBpcyBjb252ZXJ0ZWQgdG8gZW1zXG4gIEByZXR1cm4gc3RyaXAtdW5pdCgkdmFsdWUpICogMWVtO1xufVxuXG4vLy8gQ29udmVydHMgYSBwaXhlbCB2YWx1ZSB0byBtYXRjaGluZyByZW0gdmFsdWUuICpBbnkqIHZhbHVlIHBhc3NlZCwgcmVnYXJkbGVzcyBvZiB1bml0LCBpcyBhc3N1bWVkIHRvIGJlIGEgcGl4ZWwgdmFsdWUuIEJ5IGRlZmF1bHQsIHRoZSBiYXNlIHBpeGVsIHZhbHVlIHVzZWQgdG8gY2FsY3VsYXRlIHRoZSByZW0gdmFsdWUgaXMgdGFrZW4gZnJvbSB0aGUgYCRnbG9iYWwtZm9udC1zaXplYCB2YXJpYWJsZS5cbi8vLyBAYWNjZXNzIHByaXZhdGVcbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfSAkdmFsdWUgLSBQaXhlbCB2YWx1ZSB0byBjb252ZXJ0LlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkYmFzZSBbbnVsbF0gLSBCYXNlIGZvciBwaXhlbCBjb252ZXJzaW9uLlxuLy8vXG4vLy8gQHJldHVybnMge051bWJlcn0gQSBudW1iZXIgaW4gcmVtcywgY2FsY3VsYXRlZCBiYXNlZCBvbiB0aGUgZ2l2ZW4gdmFsdWUgYW5kIHRoZSBiYXNlIHBpeGVsIHZhbHVlLiByZW0gdmFsdWVzIGFyZSBwYXNzZWQgdGhyb3VnaCBhcyBpcy5cbkBmdW5jdGlvbiAtemYtdG8tcmVtKCR2YWx1ZSwgJGJhc2U6IG51bGwpIHtcbiAgLy8gQ2hlY2sgaWYgdGhlIHZhbHVlIGlzIGEgbnVtYmVyXG4gIEBpZiB0eXBlLW9mKCR2YWx1ZSkgIT0gJ251bWJlcicge1xuICAgIEB3YXJuIGluc3BlY3QoJHZhbHVlKSArICcgd2FzIHBhc3NlZCB0byByZW0tY2FsYygpLCB3aGljaCBpcyBub3QgYSBudW1iZXIuJztcbiAgICBAcmV0dXJuICR2YWx1ZTtcbiAgfVxuXG4gIC8vIFRyYW5zZm9ybSBlbSBpbnRvIHJlbSBpZiBzb21lb25lIGhhbmRzIG92ZXIgJ2VtJ3NcbiAgQGlmIHVuaXQoJHZhbHVlKSA9PSAnZW0nIHtcbiAgICAkdmFsdWU6IHN0cmlwLXVuaXQoJHZhbHVlKSAqIDFyZW07XG4gIH1cblxuICAvLyBDYWxjdWxhdGUgcmVtIGlmIHVuaXRzIGZvciAkdmFsdWUgaXMgbm90IHJlbSBvciBlbVxuICBAaWYgdW5pdCgkdmFsdWUpICE9ICdyZW0nIHtcbiAgICAkdmFsdWU6IHN0cmlwLXVuaXQoJHZhbHVlKSAvIHN0cmlwLXVuaXQoJGJhc2UpICogMXJlbTtcbiAgfVxuXG4gIC8vIFR1cm4gMHJlbSBpbnRvIDBcbiAgQGlmICR2YWx1ZSA9PSAwcmVtIHtcbiAgICAkdmFsdWU6IDA7XG4gIH1cblxuICBAcmV0dXJuICR2YWx1ZTtcbn1cblxuLy8vIENvbnZlcnRzIGEgcGl4ZWwsIHBlcmNlbnRhZ2UsIHJlbSBvciBlbSB2YWx1ZSB0byBhIHVuaXRsZXNzIHZhbHVlIGJhc2VkIG9uIGEgZ2l2ZW4gZm9udCBzaXplLiBJZGVhbCBmb3Igd29ya2luZyBvdXQgdW5pdGxlc3MgbGluZSBoZWlnaHRzLlxuLy8vXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICR2YWx1ZSAtIFZhbHVlIHRvIGNvbnZlcnQgdG8gYSB1bml0bGVzcyBsaW5lIGhlaWdodFxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkYmFzZSAtIFRoZSBmb250IHNpemUgdG8gdXNlIHRvIHdvcmsgb3V0IHRoZSBsaW5lIGhlaWdodCAtIGRlZmF1bHRzIHRvICRnbG9iYWwtZm9udC1zaXplXG4vLy9cbi8vLyBAcmV0dXJuIHtOdW1iZXJ9IC0gVW5pdGxlc3MgbnVtYmVyXG5AZnVuY3Rpb24gdW5pdGxlc3MtY2FsYygkdmFsdWUsICRiYXNlOiBudWxsKSB7XG5cbiAgLy8gSWYgbm8gYmFzZSBpcyBkZWZpbmVkLCBkZWZlciB0byB0aGUgZ2xvYmFsIGZvbnQgc2l6ZVxuICBAaWYgJGJhc2UgPT0gbnVsbCB7XG4gICAgJGJhc2U6ICRnbG9iYWwtZm9udC1zaXplO1xuICB9XG5cbiAgLy8gRmlyc3QsIGxldHMgY29udmVydCBvdXIgJGJhc2UgdG8gcGl4ZWxzXG5cbiAgLy8gSWYgdGhlIGJhc2UgZm9udCBzaXplIGlzIGEgJSwgdGhlbiBtdWx0aXBseSBpdCBieSAxNnB4XG4gIEBpZiB1bml0KCRiYXNlKSA9PSAnJScge1xuICAgICRiYXNlOiAoJGJhc2UgLyAxMDAlKSAqIDE2cHg7XG4gIH1cblxuICBAaWYgdW5pdCgkYmFzZSkgPT0gJ3JlbScge1xuICAgICRiYXNlOiBzdHJpcC11bml0KCRiYXNlKSAqIDE2cHg7XG4gIH1cblxuICBAaWYgdW5pdCgkYmFzZSkgPT0gJ2VtJyB7XG4gICAgJGJhc2U6IHN0cmlwLXVuaXQoJGJhc2UpICogMTZweDtcbiAgfVxuXG4gIC8vIE5vdyBsZXRzIGNvbnZlcnQgb3VyIHZhbHVlIHRvIHBpeGVscyB0b29cbiAgQGlmIHVuaXQoJHZhbHVlKSA9PSAnJScge1xuICAgICR2YWx1ZTogKCR2YWx1ZSAvIDEwMCUpICogJGJhc2U7XG4gIH1cblxuICBAaWYgdW5pdCgkdmFsdWUpID09ICdyZW0nIHtcbiAgICAkdmFsdWU6IHN0cmlwLXVuaXQoJHZhbHVlKSAqICRiYXNlO1xuICB9XG5cbiAgQGlmIHVuaXQoJHZhbHVlKSA9PSAnZW0nIHtcbiAgICAkdmFsdWU6IHN0cmlwLXVuaXQoJHZhbHVlKSAqICRiYXNlO1xuICB9XG5cbiAgLy8gJ3B4J1xuICBAaWYgdW5pdCgkdmFsdWUpID09ICdweCcge1xuICAgIEByZXR1cm4gc3RyaXAtdW5pdCgkdmFsdWUpIC8gc3RyaXAtdW5pdCgkYmFzZSk7XG4gIH1cblxuICAvLyBhc3N1bWUgdGhhdCBsaW5lLWhlaWdodHMgZ3JlYXRlcm4gdGhlbiAxMCBhcmUgbWVhbnQgdG8gYmUgYWJzb2x1dGUgaW4gJ3B4J1xuICBAaWYgdW5pdGxlc3MoJHZhbHVlKSBhbmQgKCR2YWx1ZSA+IDEwKSB7XG4gICAgQHJldHVybiAkdmFsdWUgLyBzdHJpcC11bml0KCRiYXNlKTtcbiAgfVxuXG4gIEByZXR1cm4gJHZhbHVlO1xufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgeHktZ3JpZFxuLy8vL1xuXG4vLy8gQ2FsY3VsYXRlIHRoZSBwZXJjZW50YWdlIHNpemUgb2YgYSBjZWxsLlxuLy8vXG4vLy8gQHBhcmFtIHtOdW1iZXJ8TGlzdH0gJHNpemUgWyRncmlkLWNvbHVtbnNdIC0gU2l6ZSB0byBtYWtlIHRoZSBjZWxsLiBZb3UgY2FuIHBhc3MgYSB2YWx1ZSBpbiBtdWx0aXBsZSBmb3JtYXRzLCBzdWNoIGFzIGA2YCwgYDUwJWAsIGAxIG9mIDIgb3IgMS8zLlxuQGZ1bmN0aW9uIHh5LWNlbGwtc2l6ZShcbiAgJHNpemU6ICRncmlkLWNvbHVtbnNcbikge1xuICAvLyBQYXJzaW5nIHBlcmNlbnRzLCBkZWNpbWFscywgbiBvZiBuIGFuZCBudW1iZXIgY291bnRzXG4gIEBpZiB0eXBlLW9mKCRzaXplKSA9PSAnbnVtYmVyJyB7XG4gICAgQGlmIHVuaXQoJHNpemUpID09ICclJyB7XG4gICAgICAkc2l6ZTogJHNpemU7XG4gICAgfVxuICAgIEBlbHNlIGlmICRzaXplIDwgMSB7XG4gICAgICAkc2l6ZTogcGVyY2VudGFnZSgkc2l6ZSk7XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgICRzaXplOiBwZXJjZW50YWdlKCRzaXplIC8gJGdyaWQtY29sdW1ucyk7XG4gICAgfVxuICB9XG5cbiAgLy8gUGFyc2luZyBcIm4gb2YgblwiIG9yIFwibi9uXCIgZXhwcmVzc2lvbnNcbiAgQGVsc2VpZiB0eXBlLW9mKCRzaXplKSA9PSAnbGlzdCcge1xuICAgIEBpZiBsZW5ndGgoJHNpemUpICE9IDMge1xuICAgICAgQGVycm9yICdXcm9uZyBzeW50YXggZm9yIHh5LWNlbGwtc2l6ZSgpLiBVc2UgdGhlIGZvcm1hdCBcIm4gb2YgblwiIG9yIFwibi9uXCIuJztcbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgJHNpemU6IHBlcmNlbnRhZ2UobnRoKCRzaXplLCAxKSAvIG50aCgkc2l6ZSwgMykpO1xuICAgIH1cbiAgfVxuICAvLyBBbnl0aGluZyBlbHNlIGlzIGluY29ycmVjdFxuICBAZWxzZSB7XG4gICAgQGVycm9yICdXcm9uZyBzeW50YXggZm9yIHh5LWNlbGwtc2l6ZSgpLiBVc2UgYSBudW1iZXIsIGRlY2ltYWwsIHBlcmNlbnRhZ2UsIG9yIFwibiBvZiBuXCIgLyBcIm4vblwiLic7XG4gIH1cblxuICBAcmV0dXJuICRzaXplO1xufVxuXG4vLy8gU2V0cyBiYXNlIGZsZXggcHJvcGVydGllcyBmb3IgY2VsbHMuXG4vLy9cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRzaXplIFtmdWxsXSAtIFRoZSBzaXplIG9mIHlvdXIgY2VsbC4gQWNjZXB0cyBgZnVsbGAsIGBhdXRvYCBvciBgc2hyaW5rYC5cbkBtaXhpbiB4eS1jZWxsLWJhc2UoJHNpemU6IGZ1bGwpIHtcbiAgQGlmKCRzaXplID09ICdmdWxsJykge1xuICAgIC8vIFRoaXMgaXMgdGhlIGJhc2Ugc3R5bGUsIGFsbCBvdGhlcnMgaW5oZXJpdCBmcm9tIGl0XG4gICAgZmxleDogMCAwIGF1dG87XG4gICAgbWluLWhlaWdodDogMHB4O1xuICAgIG1pbi13aWR0aDogMHB4O1xuICB9XG4gIEBlbHNlaWYgKCRzaXplID09ICdhdXRvJykge1xuICAgIGZsZXg6IDEgMSAwcHg7IC8vIHNhc3MtbGludDpkaXNhYmxlLWxpbmUgemVyby11bml0XG4gIH1cbiAgQGVsc2VpZiAoJHNpemUgPT0gJ3NocmluaycpIHtcbiAgICBmbGV4OiAwIDAgYXV0bztcbiAgfVxufVxuXG4vLy8gUmVzZXRzIGEgY2VsbHMgd2lkdGggKG9yIGhlaWdodCBpZiB2ZXJ0aWNhbCBpcyB0cnVlKSBhcyB3ZWxsIGFzIHN0cmlwcyBpdHMgZ3V0dGVycy5cbi8vL1xuLy8vIEBwYXJhbSB7Qm9vbGVhbn0gJHZlcnRpY2FsIFtmYWxzZV0gLSBTZXQgdG8gdHJ1ZSB0byBvdXRwdXQgdmVydGljYWwgKGhlaWdodCkgc3R5bGVzIHJhdGhlciB0aGFuIHdpZHRocy5cbkBtaXhpbiB4eS1jZWxsLXJlc2V0KCR2ZXJ0aWNhbDogdHJ1ZSkge1xuICAkZGlyZWN0aW9uOiBpZigkdmVydGljYWwgPT0gdHJ1ZSwgd2lkdGgsIGhlaWdodCk7XG4gICN7JGRpcmVjdGlvbn06IGF1dG87XG59XG5cbi8vIFNldHMgb3VyIGNlbGwgd2lkdGhzIG9yIGhlaWdodHMgZGVwZW5kaW5nIG9uIGd1dHRlciB0eXBlLlxuQG1peGluIC14eS1jZWxsLXByb3BlcnRpZXMoJHNpemUsICRtYXJnaW4tZ3V0dGVyLCAkdmVydGljYWwpIHtcbiAgJGRpcmVjdGlvbjogaWYoJHZlcnRpY2FsID09IHRydWUsIGhlaWdodCwgd2lkdGgpO1xuICBAaWYoJHNpemUgPT0gJ2Z1bGwnKSB7XG4gICAgJHZhbDogaWYoJG1hcmdpbi1ndXR0ZXIgPT0gMCwgMTAwJSwgY2FsYygxMDAlIC0gI3tyZW0tY2FsYygkbWFyZ2luLWd1dHRlcil9KSk7XG4gICAgI3skZGlyZWN0aW9ufTogJHZhbDtcbiAgfVxuICBAZWxzZWlmICgkc2l6ZSA9PSAnYXV0bycpIHtcbiAgICAjeyRkaXJlY3Rpb259OiBhdXRvO1xuICAgICR2YWw6IGlmKCRtYXJnaW4tZ3V0dGVyID09IDAsIDEwMCUsIGNhbGMoMTAwJSAtICN7cmVtLWNhbGMoJG1hcmdpbi1ndXR0ZXIpfSkpO1xuICB9XG4gIEBlbHNlaWYgKCRzaXplID09ICdzaHJpbmsnKSB7XG4gICAgI3skZGlyZWN0aW9ufTogYXV0bztcbiAgfVxuICBAZWxzZSB7XG4gICAgJHZhbDogaWYoJG1hcmdpbi1ndXR0ZXIgPT0gMCwgI3t4eS1jZWxsLXNpemUoJHNpemUpfSwgY2FsYygje3h5LWNlbGwtc2l6ZSgkc2l6ZSl9IC0gI3tyZW0tY2FsYygkbWFyZ2luLWd1dHRlcil9KSk7XG4gICAgI3skZGlyZWN0aW9ufTogJHZhbDtcbiAgfVxufVxuXG4vLy8gQ3JlYXRlcyBhIGNlbGwgZm9yIHlvdXIgZ3JpZC5cbi8vL1xuLy8vIEBwYXJhbSB7S2V5d29yZHxOdW1iZXJ9ICRzaXplIFtmdWxsXSAtIFRoZSBzaXplIG9mIHlvdXIgY2VsbC4gQ2FuIGJlIGBmdWxsYCAoZGVmYXVsdCkgZm9yIDEwMCUgd2lkdGgsIGBhdXRvYCB0byB1c2UgdXAgYXZhaWxhYmxlIHNwYWNlIGFuZCBgc2hyaW5rYCB0byB1c2UgdXAgb25seSByZXF1aXJlZCBzcGFjZS5cbi8vLyBAcGFyYW0ge0Jvb2xlYW59ICRndXR0ZXItb3V0cHV0IFt0cnVlXSAtIFdoZXRoZXIgb3Igbm90IHRvIG91dHB1dCBndXR0ZXJzXG4vLy8gQHBhcmFtIHtOdW1iZXJ8TWFwfSAkZ3V0dGVycyBbJGdyaWQtbWFyZ2luLWd1dHRlcnNdIC0gTWFwIG9yIHNpbmdsZSB2YWx1ZSBmb3IgZ3V0dGVycy5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRndXR0ZXItdHlwZSBbbWFyZ2luXSAtIE1hcCBvciBzaW5nbGUgdmFsdWUgZm9yIGd1dHRlcnMuXG4vLy8gQHBhcmFtIHtMaXN0fSAkZ3V0dGVyLXBvc2l0aW9uIFtyaWdodCBsZWZ0XSAtIFRoZSBwb3NpdGlvbiB0byBhcHBseSBndXR0ZXJzIHRvLiBBY2NlcHRzIGB0b3BgLCBgYm90dG9tYCwgYGxlZnRgLCBgcmlnaHRgIGluIGFueSBjb21iaW5hdGlvbi5cbi8vLyBAcGFyYW0ge1N0cmluZ30gJGJyZWFrcG9pbnQgW251bGxdIC0gVGhlIG5hbWUgb2YgdGhlIGJyZWFrcG9pbnQgc2l6ZSBpbiB5b3VyIGd1dHRlcnMgbWFwIHRvIGdldCB0aGUgc2l6ZSBmcm9tLiBJZiB1c2luZyB3aXRoIHRoZSBgYnJlYWtwb2ludCgpYCBtaXhpbiB0aGlzIHdpbGwgYmUgc2V0IGF1dG9tYXRpY2FsbHkgdW5sZXNzIG1hbnVhbGx5IGVudGVyZWQuXG4vLy8gQHBhcmFtIHtCb29sZWFufSAkdmVydGljYWwgW2ZhbHNlXSAtIFNldCB0byB0cnVlIHRvIG91dHB1dCB2ZXJ0aWNhbCAoaGVpZ2h0KSBzdHlsZXMgcmF0aGVyIHRoYW4gd2lkdGhzLlxuQG1peGluIHh5LWNlbGwoXG4gICRzaXplOiBmdWxsLFxuICAkZ3V0dGVyLW91dHB1dDogdHJ1ZSxcbiAgJGd1dHRlcnM6ICRncmlkLW1hcmdpbi1ndXR0ZXJzLFxuICAkZ3V0dGVyLXR5cGU6IG1hcmdpbixcbiAgJGd1dHRlci1wb3NpdGlvbjogcmlnaHQgbGVmdCxcbiAgJGJyZWFrcG9pbnQ6IG51bGwsXG4gICR2ZXJ0aWNhbDogZmFsc2Vcbikge1xuICBAaWYoJGJyZWFrcG9pbnQgPT0gbnVsbCkge1xuICAgIC8vIElmIGAkYnAtc2l6ZWAgaXMgYXZhaWxhYmxlIHRoZW4gdXNlIHRoaXMsIG90aGVyd2lzZSByZXZlcnQgdG8gdGhlIHNtYWxsZXN0IGJwLlxuICAgIEBpZih2YXJpYWJsZS1leGlzdHMoLXpmLXNpemUpIGFuZCB0eXBlLW9mKCQtemYtc2l6ZSkgIT0gJ251bWJlcicpIGFuZCAkLXpmLXNpemUgIT0gbnVsbCB7XG4gICAgICAkYnJlYWtwb2ludDogJC16Zi1zaXplO1xuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICAkYnJlYWtwb2ludDogJC16Zi16ZXJvLWJyZWFrcG9pbnQ7XG4gICAgfVxuICB9XG5cbiAgLy8gR2V0IG91ciBndXR0ZXJzIGZyb20gbWFwIGlmIGF2YWlsYWJsZSwgaWYgbm90IG1hcCBqdXN0IHJldHVybiB0aGUgdmFsdWUuXG4gICRndXR0ZXI6IC16Zi1nZXQtYnAtdmFsKCRndXR0ZXJzLCAkYnJlYWtwb2ludCk7XG5cbiAgLy8gQmFzZSBmbGV4IHByb3BlcnRpZXNcbiAgQGluY2x1ZGUgeHktY2VsbC1iYXNlKCRzaXplKTtcblxuICBAaWYoJGd1dHRlci10eXBlID09ICdtYXJnaW4nKSB7XG4gICAgQGluY2x1ZGUgLXh5LWNlbGwtcHJvcGVydGllcygkc2l6ZSwgJGd1dHRlciwgJHZlcnRpY2FsKTtcbiAgfVxuICBAZWxzZSB7XG4gICAgQGluY2x1ZGUgLXh5LWNlbGwtcHJvcGVydGllcygkc2l6ZSwgMCwgJHZlcnRpY2FsKTtcbiAgfVxuXG4gIEBpZiAkZ3V0dGVyLW91dHB1dCB7XG4gICAgQGluY2x1ZGUgeHktZ3V0dGVycygkZ3V0dGVyLCAkZ3V0dGVyLXR5cGUsICRndXR0ZXItcG9zaXRpb24pO1xuICB9XG59XG5cbi8vLyBDcmVhdGVzIGEgc2luZ2xlIGJyZWFrcG9pbnQgc2l6ZWQgZ3JpZC4gVXNlZCB0byBnZW5lcmF0ZSBvdXIgZ3JpZCBjbGFzc2VzLlxuLy8vXG4vLy8gQHBhcmFtIHtLZXl3b3JkfE51bWJlcn0gJHNpemUgW2Z1bGxdIC0gVGhlIHNpemUgb2YgeW91ciBjZWxsLiBDYW4gYmUgYGZ1bGxgIChkZWZhdWx0KSBmb3IgMTAwJSB3aWR0aCwgYGF1dG9gIHRvIHVzZSB1cCBhdmFpbGFibGUgc3BhY2UgYW5kIGBzaHJpbmtgIHRvIHVzZSB1cCBvbmx5IHJlcXVpcmVkIHNwYWNlLlxuLy8vIEBwYXJhbSB7Qm9vbGVhbn0gJGd1dHRlci1vdXRwdXQgW3RydWVdIC0gV2hldGhlciBvciBub3QgdG8gb3V0cHV0IGd1dHRlcnNcbi8vLyBAcGFyYW0ge051bWJlcnxNYXB9ICRndXR0ZXJzIFskZ3JpZC1tYXJnaW4tZ3V0dGVyc10gLSBNYXAgb3Igc2luZ2xlIHZhbHVlIGZvciBndXR0ZXJzLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJGd1dHRlci10eXBlIFttYXJnaW5dIC0gTWFwIG9yIHNpbmdsZSB2YWx1ZSBmb3IgZ3V0dGVycy5cbi8vLyBAcGFyYW0ge1N0cmluZ30gJGJyZWFrcG9pbnQgW251bGxdIC0gVGhlIG5hbWUgb2YgdGhlIGJyZWFrcG9pbnQgc2l6ZSBpbiB5b3VyIGd1dHRlcnMgbWFwIHRvIGdldCB0aGUgc2l6ZSBmcm9tLiBJZiB1c2luZyB3aXRoIHRoZSBgYnJlYWtwb2ludCgpYCBtaXhpbiB0aGlzIHdpbGwgYmUgc2V0IGF1dG9tYXRpY2FsbHkgdW5sZXNzIG1hbnVhbGx5IGVudGVyZWQuXG4vLy8gQHBhcmFtIHtCb29sZWFufSAkdmVydGljYWwgW2ZhbHNlXSAtIFNldCB0byB0cnVlIHRvIG91dHB1dCB2ZXJ0aWNhbCAoaGVpZ2h0KSBzdHlsZXMgcmF0aGVyIHRoYW4gd2lkdGhzLlxuQG1peGluIHh5LWNlbGwtc3RhdGljKFxuICAkc2l6ZTogZnVsbCxcbiAgJGd1dHRlci1vdXRwdXQ6IHRydWUsXG4gICRndXR0ZXJzOiAkZ3JpZC1tYXJnaW4tZ3V0dGVycyxcbiAgJGd1dHRlci10eXBlOiBtYXJnaW4sXG4gICRicmVha3BvaW50OiAkLXpmLXplcm8tYnJlYWtwb2ludCxcbiAgJHZlcnRpY2FsOiBmYWxzZVxuKSB7XG5cbiAgJGd1dHRlcjogLXpmLWdldC1icC12YWwoJGd1dHRlcnMsICRicmVha3BvaW50KTtcbiAgJGd1dHRlci1wb3NpdGlvbjogaWYoJHZlcnRpY2FsID09IHRydWUsIHRvcCBib3R0b20sIGxlZnQgcmlnaHQpO1xuXG4gIEBpZigkZ3V0dGVyLXR5cGUgPT0gJ21hcmdpbicpIHtcbiAgICBAaW5jbHVkZSAteHktY2VsbC1wcm9wZXJ0aWVzKCRzaXplLCAkZ3V0dGVyLCAkdmVydGljYWwpO1xuICB9XG4gIEBlbHNlIHtcbiAgICBAaW5jbHVkZSAteHktY2VsbC1wcm9wZXJ0aWVzKCRzaXplLCAwLCAkdmVydGljYWwpO1xuICB9XG5cbiAgLy8gSWYgd2Ugd2FudCB0byBvdXRwdXQgdGhlIGd1dHRlcnNcbiAgQGlmKCRndXR0ZXItb3V0cHV0KSB7XG4gICAgLy8gVE9ETzogRmlndXJlIG91dCBpZiB3ZSBuZWVkIHRvIHBhc3MgYnJlYWtwb2ludCBpbiBoZXJlIHRvby5cbiAgICBAaW5jbHVkZSB4eS1ndXR0ZXJzKCRndXR0ZXIsICRndXR0ZXItdHlwZSwgJGd1dHRlci1wb3NpdGlvbik7XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIHh5LWdyaWRcbi8vLy9cblxuLy8vIFNpemVzIGNoaWxkIGVsZW1lbnRzIHNvIHRoYXQgYCRuYCBudW1iZXIgb2YgaXRlbXMgYXBwZWFyIG9uIGVhY2ggcm93LlxuLy8vXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRuIC0gTnVtYmVyIG9mIGVsZW1lbnRzIHRvIGRpc3BsYXkgcGVyIHJvdy5cbi8vLyBAcGFyYW0ge1N0cmluZ30gJHNlbGVjdG9yIFsnLmNlbGwnXSAtIFNlbGVjdG9yKHMpIHRvIHVzZSBmb3IgY2hpbGQgZWxlbWVudHMuXG4vLy8gQHBhcmFtIHtCb29sZWFufSAkZ3V0dGVyLW91dHB1dCBbdHJ1ZV0gLSBXaGV0aGVyIG9yIG5vdCB0byBvdXRwdXQgZ3V0dGVyc1xuLy8vIEBwYXJhbSB7TnVtYmVyfE1hcH0gJGd1dHRlcnMgWyRncmlkLW1hcmdpbi1ndXR0ZXJzXSAtIE1hcCBvciBzaW5nbGUgdmFsdWUgZm9yIGd1dHRlcnMuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkZ3V0dGVyLXR5cGUgW21hcmdpbl0gLSBUeXBlIG9mIGd1dHRlciB0byBvdXRwdXQuIEFjY2VwdHMgYG1hcmdpbmAgb3IgYHBhZGRpbmdgLlxuLy8vIEBwYXJhbSB7TGlzdH0gJGd1dHRlci1wb3NpdGlvbiBbcmlnaHQgbGVmdF0gLSBUaGUgcG9zaXRpb24gdG8gYXBwbHkgZ3V0dGVycyB0by4gQWNjZXB0cyBgdG9wYCwgYGJvdHRvbWAsIGBsZWZ0YCwgYHJpZ2h0YCBpbiBhbnkgY29tYmluYXRpb24uXG4vLy8gQHBhcmFtIHtCb29sZWFufSAkdmVydGljYWwgW2ZhbHNlXSAtIFNldCB0byB0cnVlIHRvIG91dHB1dCB2ZXJ0aWNhbCAoaGVpZ2h0KSBzdHlsZXMgcmF0aGVyIHRoYW4gd2lkdGhzLlxuQG1peGluIHh5LWdyaWQtbGF5b3V0KFxuICAkbixcbiAgJHNlbGVjdG9yOiAnLmNlbGwnLFxuICAkZ3V0dGVyLW91dHB1dDogdHJ1ZSxcbiAgJGd1dHRlcnM6ICRncmlkLW1hcmdpbi1ndXR0ZXJzLFxuICAkZ3V0dGVyLXR5cGU6IG1hcmdpbixcbiAgJGd1dHRlci1wb3NpdGlvbjogcmlnaHQgbGVmdCxcbiAgJGJyZWFrcG9pbnQ6ICQtemYtemVyby1icmVha3BvaW50LFxuICAkdmVydGljYWw6IGZhbHNlXG4pIHtcbiAgJHNpemU6IHBlcmNlbnRhZ2UoMS8kbik7XG5cbiAgJiA+ICN7JHNlbGVjdG9yfSB7XG4gICAgQGluY2x1ZGUgeHktY2VsbCgkc2l6ZSwgJGd1dHRlci1vdXRwdXQsICRndXR0ZXJzLCAkZ3V0dGVyLXR5cGUsICRndXR0ZXItcG9zaXRpb24sICRicmVha3BvaW50LCAkdmVydGljYWwpO1xuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCB4eS1ncmlkXG4vLy8vXG5cbi8vLyBDb2xsYXBzZXMgdGhlIGdyaWQgYSBjZWxscyB3aXRoaW4gaXQuXG4vLy9cbi8vLyBAcGFyYW0ge1N0cmluZ30gJHNlbGVjdG9yIFsuY2VsbF0gLSBUaGUgY2hpbGQgZWxlbWVudCB0byByZW1vdmUgdGhlIGd1dHRlciBmcm9tLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJGd1dHRlci10eXBlIFttYXJnaW5dIC0gVGhlIHR5cGUgb2YgZ3V0dGVyIHRvIHJlbW92ZS5cbi8vLyBAcGFyYW0ge0xpc3R9ICRndXR0ZXItcG9zaXRpb24gW3JpZ2h0IGxlZnRdIC0gVGhlIHBvc2l0aW9ucyB0byByZW1vdmUgZ3V0dGVycyBmcm9tLiBBY2NlcHRzIGB0b3BgLCBgYm90dG9tYCwgYGxlZnRgLCBgcmlnaHRgIGluIGFueSBjb21iaW5hdGlvbi5cbkBtaXhpbiB4eS1ncmlkLWNvbGxhcHNlKFxuICAkc2VsZWN0b3I6ICcuY2VsbCcsXG4gICRndXR0ZXItdHlwZTogbWFyZ2luLFxuICAkZ3V0dGVyLXBvc2l0aW9uOiByaWdodCBsZWZ0LFxuICAkbWluLWJyZWFrcG9pbnQ6ICQtemYtemVyby1icmVha3BvaW50XG4pIHtcbiAgLy8gRmlyc3QsIGxldHMgbmVnYXRlIGFueSBtYXJnaW5zIG9uIHRoZSB0b3AgbGV2ZWxcbiAgQGlmICgkZ3V0dGVyLXR5cGUgPT0gJ21hcmdpbicpIHtcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJG1pbi1icmVha3BvaW50KSB7XG4gICAgICBAZWFjaCAkdmFsdWUgaW4gJGd1dHRlci1wb3NpdGlvbiB7XG4gICAgICAgIG1hcmdpbi0jeyR2YWx1ZX06IDA7XG4gICAgICB9XG5cbiAgICAgID4gI3skc2VsZWN0b3J9IHtcbiAgICAgICAgQGVhY2ggJHZhbHVlIGluICRndXR0ZXItcG9zaXRpb24ge1xuICAgICAgICAgIG1hcmdpbi0jeyR2YWx1ZX06IDA7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAkZXhjbHVkZWQtYnBzOiAtemYtYnJlYWtwb2ludHMtbGVzcy10aGFuKCRtaW4tYnJlYWtwb2ludCk7XG5cbiAgICAvLyBPdXRwdXQgbmV3IHdpZHRocyB0byBub3QgaW5jbHVkZSBndXR0ZXJzXG4gICAgQGVhY2ggJGJwIGluICRicmVha3BvaW50LWNsYXNzZXMge1xuICAgICAgQGlmKHNsLWNvbnRhaW4oJGV4Y2x1ZGVkLWJwcywgJGJwKSkge1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRtaW4tYnJlYWtwb2ludCkge1xuICAgICAgICAgIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggJGdyaWQtY29sdW1ucyB7XG4gICAgICAgICAgICAvLyBTaXppbmcgKHBlcmNlbnRhZ2UpXG4gICAgICAgICAgICA+IC4jeyRicH0tI3skaX0ge1xuICAgICAgICAgICAgICBAaW5jbHVkZSB4eS1jZWxsLXN0YXRpYygkaSwgJGd1dHRlci1vdXRwdXQ6IGZhbHNlLCAkZ3V0dGVyLXR5cGU6IHBhZGRpbmcpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfSBAZWxzZSB7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGJwKSB7XG4gICAgICAgICAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCAkZ3JpZC1jb2x1bW5zIHtcbiAgICAgICAgICAgIC8vIFNpemluZyAocGVyY2VudGFnZSlcbiAgICAgICAgICAgID4gLiN7JGJwfS0jeyRpfSB7XG4gICAgICAgICAgICAgIEBpbmNsdWRlIHh5LWNlbGwtc3RhdGljKCRpLCAkZ3V0dGVyLW91dHB1dDogZmFsc2UsICRndXR0ZXItdHlwZTogcGFkZGluZyk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9IFxuICAgIH1cbiAgfVxuICBAZWxzZSB7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KCRtaW4tYnJlYWtwb2ludCkge1xuICAgICAgQGVhY2ggJHZhbHVlIGluICRndXR0ZXItcG9zaXRpb24ge1xuICAgICAgICBtYXJnaW4tI3skdmFsdWV9OiAwO1xuICAgICAgfVxuXG4gICAgICA+ICN7JHNlbGVjdG9yfSB7XG4gICAgICAgIEBlYWNoICR2YWx1ZSBpbiAkZ3V0dGVyLXBvc2l0aW9uIHtcbiAgICAgICAgICBwYWRkaW5nLSN7JHZhbHVlfTogMDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgeHktZ3JpZFxuLy8vL1xuXG4vLy8gT2Zmc2V0cyBhIGNvbHVtbiB0byB0aGUgcmlnaHQvYm90dG9tIGJ5IGAkbmAgY29sdW1ucy5cbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfExpc3R9ICRuIC0gU2l6ZSB0byBvZmZzZXQgYnkuIFlvdSBjYW4gcGFzcyBpbiBhbnkgdmFsdWUgYWNjZXB0ZWQgYnkgdGhlIGB6Zi1jZWxsKClgIG1peGluLCBzdWNoIGFzIGA2YCwgYDUwJWAsIG9yIGAxIG9mIDJgLlxuLy8vIEBwYXJhbSB7Qm9vbGVhbn0gJHZlcnRpY2FsIFtmYWxzZV0gU2V0cyB0aGUgZGlyZWN0aW9uIG9mIHRoZSBvZmZzZXQuIElmIHNldCB0byB0cnVlIHdpbGwgYXBwbHkgbWFyZ2luLXRvcCBpbnN0ZWFkLlxuQG1peGluIHh5LWNlbGwtb2Zmc2V0KFxuICRuLFxuICRndXR0ZXJzOiAkZ3JpZC1tYXJnaW4tZ3V0dGVycyxcbiAkZ3V0dGVyLXR5cGU6IG1hcmdpbixcbiAkYnJlYWtwb2ludDogJC16Zi16ZXJvLWJyZWFrcG9pbnQsXG4gJHZlcnRpY2FsOiBmYWxzZVxuKSB7XG4gICRkaXJlY3Rpb246IGlmKCR2ZXJ0aWNhbCwgJ3RvcCcsICRnbG9iYWwtbGVmdCk7XG5cbiAgQGluY2x1ZGUgLXpmLWJyZWFrcG9pbnQtdmFsdWUoJGJyZWFrcG9pbnQsICRndXR0ZXJzKSB7XG4gICAgJGd1dHRlcjogcmVtLWNhbGMoJC16Zi1icC12YWx1ZSkgLyAyO1xuICAgICRzaXplOiBpZigkZ3V0dGVyLXR5cGUgPT0gJ21hcmdpbicsIGNhbGMoI3t4eS1jZWxsLXNpemUoJG4pfSArICN7JGd1dHRlcn0pLCAje3h5LWNlbGwtc2l6ZSgkbil9KTtcblxuICAgIG1hcmdpbi0jeyRkaXJlY3Rpb259OiAjeyRzaXplfTtcbiAgfVxufVxuIiwiLy8vIE1vZGlmaWVzIGEgZ3JpZCB0byBnaXZlIGl0IFwiZnJhbWVcIiBiZWhhdmlvciAobm8gb3ZlcmZsb3csIG5vIHdyYXAsIHN0cmV0Y2ggYmVoYXZpb3IpXG4vLy9cbi8vLyBAcGFyYW0ge0Jvb2xlYW59ICR2ZXJ0aWNhbCBbZmFsc2VdIC0gSXMgZ3JpZCB2ZXJ0aWNhbCBvciBob3Jpem9udGFsLiBTaG91bGQgbWF0Y2ggZ3JpZC5cbi8vLyBAcGFyYW0ge0Jvb2xlYW59ICRuZXN0ZWQgW2ZhbHNlXSAtIElzIGdyaWQgbmVzdGVkIG9yIG5vdC4gSWYgbmVzdGVkIGlzIHRydWUgdGhpcyBzZXRzIHRoZSBmcmFtZSB0byAxMDAlIGhlaWdodCwgb3RoZXJ3aXNlIHdpbGwgYmUgMTAwdmguXG4vLy8gQHBhcmFtIHtOdW1iZXJ8TWFwfSAkZ3V0dGVycyBbbnVsbF0gLSBNYXAgb3Igc2luZ2xlIHZhbHVlIGZvciBndXR0ZXJzLlxuLy8vIEBwYXJhbSB7U3RyaW5nfSAkYnJlYWtwb2ludCBbbnVsbF0gLSBUaGUgbmFtZSBvZiB0aGUgYnJlYWtwb2ludCBzaXplIGluIHlvdXIgZ3V0dGVycyBtYXAgdG8gZ2V0IHRoZSBzaXplIGZyb20uXG4vLy8gQHBhcmFtIHtCb29sZWFufSAkaW5jbHVkZS1iYXNlIFt0cnVlXSAtIEluY2x1ZGUgdGhlIGJhc2Ugc3R5bGVzIHRoYXQgZG9uJ3QgdmFyeSBwZXIgYnJlYWtwb2ludC5cbkBtaXhpbiB4eS1ncmlkLWZyYW1lKFxuICAkdmVydGljYWw6IGZhbHNlLFxuICAkbmVzdGVkOiBmYWxzZSxcbiAgJGd1dHRlcnM6IG51bGwsXG4gICRicmVha3BvaW50OiBudWxsLFxuICAkaW5jbHVkZS1iYXNlOiB0cnVlXG4pIHtcblxuICBAaWYgJGluY2x1ZGUtYmFzZSB7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgZmxleC13cmFwOiBub3dyYXA7XG4gICAgYWxpZ24taXRlbXM6IHN0cmV0Y2g7XG4gIH1cblxuICBAaWYgJGJyZWFrcG9pbnQgPT0gbnVsbCBhbmQgdHlwZS1vZigkZ3V0dGVycykgPT0gJ21hcCcge1xuICAgIEBpbmNsdWRlIC16Zi1lYWNoLWJyZWFrcG9pbnQoKSB7XG4gICAgICBAaW5jbHVkZSB4eS1ncmlkLWZyYW1lKCR2ZXJ0aWNhbCwgJG5lc3RlZCwgJGd1dHRlcnMsICQtemYtc2l6ZSwgZmFsc2UpO1xuICAgIH1cbiAgfSBAZWxzZSB7XG4gICAgLy8gR2V0IG91ciBndXR0ZXJzIGlmIGFwcGxpY2FibGVcbiAgICAkZ3V0dGVyOiAtemYtZ2V0LWJwLXZhbCgkZ3V0dGVycywgJGJyZWFrcG9pbnQpO1xuXG4gICAgLy8gSWYgd2UgaGF2ZSBhIGd1dHRlciwgYWRkIGl0IHRvIHRoZSB3aWR0aC9oZWlnaHRcbiAgICBAaWYgJGd1dHRlciB7XG4gICAgICBAaWYgJHZlcnRpY2FsID09IHRydWUge1xuICAgICAgICAkdW5pdDogaWYoJG5lc3RlZCA9PSB0cnVlLCAxMDAlLCAxMDB2aCk7XG4gICAgICAgICRndXR0ZXI6IHJlbS1jYWxjKCRndXR0ZXIpO1xuICAgICAgICBoZWlnaHQ6IGNhbGMoI3skdW5pdH0gKyAjeyRndXR0ZXJ9KTtcbiAgICAgIH0gQGVsc2Uge1xuICAgICAgICAkdW5pdDogaWYoJG5lc3RlZCA9PSB0cnVlLCAxMDAlLCAxMDB2dyk7XG4gICAgICAgICRndXR0ZXI6IHJlbS1jYWxjKCRndXR0ZXIpO1xuICAgICAgICB3aWR0aDogY2FsYygjeyR1bml0fSArICN7JGd1dHRlcn0pO1xuICAgICAgfVxuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICBAaWYgJHZlcnRpY2FsID09IHRydWUge1xuICAgICAgICBoZWlnaHQ6IGlmKCRuZXN0ZWQgPT0gdHJ1ZSwgMTAwJSwgMTAwdmgpO1xuICAgICAgfSBAZWxzZSB7XG4gICAgICAgIHdpZHRoOiBpZigkbmVzdGVkID09IHRydWUsIDEwMCUsIDEwMHZ3KTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLy8vIE1vZGlmaWVzIGEgY2VsbCB0byBnaXZlIGl0IFwiYmxvY2tcIiBiZWhhdmlvciAob3ZlcmZsb3cgYXV0bywgaW5lcnRpYWwgc2Nyb2xsaW5nKVxuLy8vXG4vLy8gQHBhcmFtIHtCb29sZWFufSAkdmVydGljYWwgW2ZhbHNlXSAtIElzIGdyaWQgdmVydGljYWwgb3IgaG9yaXpvbnRhbC4gU2hvdWxkIG1hdGNoIGdyaWQuXG5AbWl4aW4geHktY2VsbC1ibG9jayhcbiAgJHZlcnRpY2FsOiBmYWxzZVxuKSB7XG4gICRwcm9wZXJ0eTogaWYoJHZlcnRpY2FsID09IHRydWUsICdvdmVyZmxvdy15JywgJ292ZXJmbG93LXgnKTtcblxuICBAaWYgJHZlcnRpY2FsID09IHRydWUge1xuICAgIG92ZXJmbG93LXk6IGF1dG87XG4gICAgbWF4LWhlaWdodDogMTAwJTtcbiAgfSBAZWxzZSB7XG4gICAgb3ZlcmZsb3cteDogYXV0bztcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gIH1cblxuICAtd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzogdG91Y2g7XG4gIC1tcy1vdmVyZmxvdy1zdHlwZTogLW1zLWF1dG9oaWRpbmctc2Nyb2xsYmFyO1xufVxuXG4vLy8gQ29udGFpbmVyIGZvciBpbnNpZGUgYSBncmlkIGZyYW1lIGNvbnRhaW5pbmcgbXVsdGlwbGUgYmxvY2tzLiBUeXBpY2FsbHkgdXNlZFxuLy8vIGFzIGEgbW9kaWZpZXIgZm9yIGEgYC5jZWxsYCB0byBhbGxvdyB0aGUgY2VsbCB0byBwYXNzIGFsb25nIGZsZXggc2l6aW5nXG4vLy8gY29uc3RyYWludHMgLyBmcm9tIHBhcmVudHMgdG8gY2hpbGRyZW4uXG5AbWl4aW4geHktY2VsbC1ibG9jay1jb250YWluZXIoKSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIG1heC1oZWlnaHQ6IDEwMCU7XG5cbiAgPiAuZ3JpZC14IHtcbiAgICBtYXgtaGVpZ2h0OiAxMDAlO1xuICAgIGZsZXgtd3JhcDogbm93cmFwO1xuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCB0eXBvZ3JhcGh5LWJhc2Vcbi8vLy9cblxuLy8gQmFzZSBUeXBvZ3JhcGh5XG4vLyAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLVxuLy8gVGhlc2UgYXJlIHN0eWxlcyBhcHBsaWVkIHRvIGJhc2ljIEhUTUwgdGFncywgaW5jbHVkaW5nOlxuLy8gICAtIFBhcmFncmFwaHMgPHA+XG4vLyAgIC0gQm9sZC9pdGFsaWNzIDxiPiA8c3Ryb25nPiA8aT4gPGVtPlxuLy8gICAtIFNtYWxsIHRleHQgPHNtYWxsPlxuLy8gICAtIEhlYWRpbmdzIDxoMT4tPGg2PlxuLy8gICAtIEFuY2hvcnMgPGE+XG4vLyAgIC0gRGl2aWRlcnMgPGhyPlxuLy8gICAtIExpc3RzIDx1bD4gPG9sPiA8ZGw+XG4vLyAgIC0gQmxvY2txdW90ZXMgPGJsb2NrcXVvdGU+XG4vLyAgIC0gQ29kZSBibG9ja3MgPGNvZGU+XG4vLyAgIC0gQWJicmV2aWF0aW9ucyA8YWJicj5cbi8vICAgLSBDaXRhdGlvbnMgPGNpdGU+XG4vLyAgIC0gS2V5c3Ryb2tlcyA8a2JkPlxuXG4vLy8gRm9udCBmYW1pbHkgZm9yIGhlYWRlciBlbGVtZW50cy5cbi8vLyBAdHlwZSBTdHJpbmcgfCBMaXN0XG4kaGVhZGVyLWZvbnQtZmFtaWx5OiAkYm9keS1mb250LWZhbWlseSAhZGVmYXVsdDtcblxuLy8vIEZvbnQgd2VpZ2h0IG9mIGhlYWRlcnMuXG4vLy8gQHR5cGUgU3RyaW5nXG4kaGVhZGVyLWZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ub3JtYWwgIWRlZmF1bHQ7XG5cbi8vLyBGb250IHN0eWxlIChlLmcuIGl0YWxpY2l6ZWQpIG9mIGhlYWRlcnMuXG4vLy8gQHR5cGUgU3RyaW5nXG4kaGVhZGVyLWZvbnQtc3R5bGU6IG5vcm1hbCAhZGVmYXVsdDtcblxuLy8vIEZvbnQgc3RhY2sgdXNlZCBmb3IgZWxlbWVudHMgdGhhdCB1c2UgbW9ub3NwYWNlZCB0eXBlLCBzdWNoIGFzIGNvZGUgc2FtcGxlc1xuLy8vIEB0eXBlIFN0cmluZyB8IExpc3RcbiRmb250LWZhbWlseS1tb25vc3BhY2U6IENvbnNvbGFzLCAnTGliZXJhdGlvbiBNb25vJywgQ291cmllciwgbW9ub3NwYWNlICFkZWZhdWx0O1xuXG4vLy8gQ29sb3Igb2YgaGVhZGVycy5cbi8vLyBAdHlwZSBDb2xvclxuJGhlYWRlci1jb2xvcjogaW5oZXJpdCAhZGVmYXVsdDtcblxuLy8vIExpbmUgaGVpZ2h0IG9mIGhlYWRlcnMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kaGVhZGVyLWxpbmVoZWlnaHQ6IDEuNCAhZGVmYXVsdDtcblxuLy8vIEJvdHRvbSBtYXJnaW4gb2YgaGVhZGVycy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRoZWFkZXItbWFyZ2luLWJvdHRvbTogMC41cmVtICFkZWZhdWx0O1xuXG4vLy8gU3R5bGVzIGZvciBoZWFkaW5ncyBhdCB2YXJpb3VzIHNjcmVlbiBzaXplcy4gRWFjaCBrZXkgaXMgYSBicmVha3BvaW50LCBhbmQgZWFjaCB2YWx1ZSBpcyBhIG1hcCBvZiBoZWFkaW5nIHN0eWxlcy5cbi8vLyBAdHlwZSBNYXBcbiRoZWFkZXItc3R5bGVzOiAoXG4gIHNtYWxsOiAoXG4gICAgJ2gxJzogKCdmb250LXNpemUnOiAyNCksXG4gICAgJ2gyJzogKCdmb250LXNpemUnOiAyMCksXG4gICAgJ2gzJzogKCdmb250LXNpemUnOiAxOSksXG4gICAgJ2g0JzogKCdmb250LXNpemUnOiAxOCksXG4gICAgJ2g1JzogKCdmb250LXNpemUnOiAxNyksXG4gICAgJ2g2JzogKCdmb250LXNpemUnOiAxNiksXG4gICksXG4gIG1lZGl1bTogKFxuICAgICdoMSc6ICgnZm9udC1zaXplJzogNDgpLFxuICAgICdoMic6ICgnZm9udC1zaXplJzogNDApLFxuICAgICdoMyc6ICgnZm9udC1zaXplJzogMzEpLFxuICAgICdoNCc6ICgnZm9udC1zaXplJzogMjUpLFxuICAgICdoNSc6ICgnZm9udC1zaXplJzogMjApLFxuICAgICdoNic6ICgnZm9udC1zaXplJzogMTYpLFxuICApLFxuKSAhZGVmYXVsdDtcblxuLy8gJGhlYWRlci1zdHlsZXMgbWFwIGlzIGJ1aWx0IGZyb20gJGhlYWRlci1zaXplcyBpbiBvcmRlciB0byBlbnN1cmUgZG93bndhcmQgY29tcGF0aWJpbGl0eVxuLy8gd2hlbiAkaGVhZGVyLXNpemVzIGlzIGRlcHJlY2lhdGVkLCAkaGVhZGVyLXN0eWxlcyBuZWVkcyB0byBnZXQgIWRlZmF1bHQgdmFsdWVzIGxpa2Ugc2V0dGluZ3Muc2Nzc1xuQGZ1bmN0aW9uIGJ1aWxkX2Zyb21faGVhZGVyLXNpemVzKCRoZWFkZXItc2l6ZXMpIHtcbiAgQHdhcm4gJ05vdGUsIHRoYXQgJGhlYWRlci1zaXplcyBoYXMgYmVlbiByZXBsYWNlZCB3aXRoICRoZWFkZXItc3R5bGVzLiAkaGVhZGVyLXNpemVzIHN0aWxsIHdvcmtzLCBidXQgaXQgaXMgZ29pbmcgdG8gYmUgZGVwcmVjaWF0ZWQuJztcbiAgJGhlYWRlci1zdHlsZXM6ICgpO1xuICBAZWFjaCAkc2l6ZSwgJGhlYWRlcnMgaW4gJGhlYWRlci1zaXplcyB7XG4gICAgJGhlYWRlci1tYXA6ICgpO1xuICAgIEBlYWNoICRoZWFkZXIsICRmb250LXNpemUgaW4gJGhlYWRlcnMge1xuICAgICAgJGhlYWRlci1tYXA6IG1hcC1tZXJnZSgkaGVhZGVyLW1hcCwgKCRoZWFkZXI6ICgnZm9udC1zaXplJzogJGZvbnQtc2l6ZSkpKTsgIFxuICAgIH1cbiAgICAkaGVhZGVyLXN0eWxlczogbWFwLW1lcmdlKCRoZWFkZXItc3R5bGVzLCAoJHNpemU6ICRoZWFkZXItbWFwKSk7XG4gIH1cbiAgQHJldHVybiAkaGVhZGVyLXN0eWxlcztcbn1cblxuLy8gSWYgaXQgZXhpc3RzICRoZWFkZXJzLXNpemVzIGlzIHVzZWQgdG8gYnVpbGQgJGhlYWRlci1zdHlsZXMuIFNlZSB0aGUgZG9jdW1lbnRhdGlvbi5cbkBpZiB2YXJpYWJsZS1leGlzdHMoaGVhZGVyLXNpemVzKSB7XG4gICRoZWFkZXItc3R5bGVzOiBidWlsZF9mcm9tX2hlYWRlci1zaXplcygkaGVhZGVyLXNpemVzKTtcbn1cblxuLy8vIFRleHQgcmVuZGVyaW5nIG1ldGhvZCBvZiBoZWFkZXJzLlxuLy8vIEB0eXBlIFN0cmluZ1xuJGhlYWRlci10ZXh0LXJlbmRlcmluZzogb3B0aW1pemVMZWdpYmlsaXR5ICFkZWZhdWx0O1xuXG4vLy8gRm9udCBzaXplIG9mIGA8c21hbGw+YCBlbGVtZW50cy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRzbWFsbC1mb250LXNpemU6IDgwJSAhZGVmYXVsdDtcblxuLy8vIENvbG9yIG9mIGA8c21hbGw+YCBlbGVtZW50cyB3aGVuIHBsYWNlZCBpbnNpZGUgaGVhZGVycy5cbi8vLyBAdHlwZSBDb2xvclxuJGhlYWRlci1zbWFsbC1mb250LWNvbG9yOiAkbWVkaXVtLWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBMaW5lIGhlaWdodCBvZiB0ZXh0IGluc2lkZSBgPHA+YCBlbGVtZW50cy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRwYXJhZ3JhcGgtbGluZWhlaWdodDogMS42ICFkZWZhdWx0O1xuXG4vLy8gQm90dG9tIG1hcmdpbiBvZiBwYXJhZ3JhcGhzLlxuLy8vIEB0eXBlIE51bWJlclxuJHBhcmFncmFwaC1tYXJnaW4tYm90dG9tOiAxcmVtICFkZWZhdWx0O1xuXG4vLy8gVGV4dCByZW5kZXJpbmcgbWV0aG9kIGZvciBwYXJhZ3JhcGggdGV4dC5cbi8vLyBAdHlwZSBTdHJpbmdcbiRwYXJhZ3JhcGgtdGV4dC1yZW5kZXJpbmc6IG9wdGltaXplTGVnaWJpbGl0eSAhZGVmYXVsdDtcblxuLy8vIFRleHQgY29sb3Igb2YgY29kZSBzYW1wbGVzLlxuLy8vIEB0eXBlIENvbG9yXG4kY29kZS1jb2xvcjogJGJsYWNrICFkZWZhdWx0O1xuXG4vLy8gRm9udCBmYW1pbHkgb2YgY29kZSBzYW1wbGVzLlxuLy8vIEB0eXBlIFN0cmluZyB8IExpc3RcbiRjb2RlLWZvbnQtZmFtaWx5OiAkZm9udC1mYW1pbHktbW9ub3NwYWNlICFkZWZhdWx0O1xuXG4vLy8gRm9udCB3ZWlnaHQgb2YgdGV4dCBpbiBjb2RlIHNhbXBsZXMuXG4vLy8gQHR5cGUgU3RyaW5nXG4kY29kZS1mb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtbm9ybWFsICFkZWZhdWx0O1xuXG4vLy8gQmFja2dyb3VuZCBjb2xvciBvZiBjb2RlIHNhbXBsZXMuXG4vLy8gQHR5cGUgQ29sb3JcbiRjb2RlLWJhY2tncm91bmQ6ICRsaWdodC1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gQm9yZGVyIGFyb3VuZCBjb2RlIHNhbXBsZXMuXG4vLy8gQHR5cGUgTGlzdFxuJGNvZGUtYm9yZGVyOiAxcHggc29saWQgJG1lZGl1bS1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gUGFkZGluZyBhcm91bmQgdGV4dCBvZiBjb2RlIHNhbXBsZXMuXG4vLy8gQHR5cGUgTnVtYmVyIHwgTGlzdFxuJGNvZGUtcGFkZGluZzogcmVtLWNhbGMoMiA1IDEpICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBjb2xvciBmb3IgbGlua3MuXG4vLy8gQHR5cGUgQ29sb3JcbiRhbmNob3ItY29sb3I6ICRwcmltYXJ5LWNvbG9yICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBjb2xvciBmb3IgbGlua3Mgb24gaG92ZXIuXG4vLy8gQHR5cGUgQ29sb3JcbiRhbmNob3ItY29sb3ItaG92ZXI6IHNjYWxlLWNvbG9yKCRhbmNob3ItY29sb3IsICRsaWdodG5lc3M6IC0xNCUpICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCB0ZXh0IGRlY29yYXRpb24gZm9yIGxpbmtzLlxuLy8vIEB0eXBlIFN0cmluZ1xuJGFuY2hvci10ZXh0LWRlY29yYXRpb246IG5vbmUgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHRleHQgZGVjb3JhdGlvbiBmb3IgbGlua3Mgb24gaG92ZXIuXG4vLy8gQHR5cGUgU3RyaW5nXG4kYW5jaG9yLXRleHQtZGVjb3JhdGlvbi1ob3Zlcjogbm9uZSAhZGVmYXVsdDtcblxuLy8vIE1heGltdW0gd2lkdGggb2YgYSBkaXZpZGVyLlxuLy8vIEB0eXBlIE51bWJlclxuJGhyLXdpZHRoOiAkZ2xvYmFsLXdpZHRoICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBib3JkZXIgZm9yIGEgZGl2aWRlci5cbi8vLyBAdHlwZSBMaXN0XG4kaHItYm9yZGVyOiAxcHggc29saWQgJG1lZGl1bS1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBtYXJnaW4gZm9yIGEgZGl2aWRlci5cbi8vLyBAdHlwZSBOdW1iZXIgfCBMaXN0XG4kaHItbWFyZ2luOiByZW0tY2FsYygyMCkgYXV0byAhZGVmYXVsdDtcblxuLy8vIExpbmUgaGVpZ2h0IGZvciBpdGVtcyBpbiBhIGxpc3QuXG4vLy8gQHR5cGUgTnVtYmVyXG4kbGlzdC1saW5laGVpZ2h0OiAkcGFyYWdyYXBoLWxpbmVoZWlnaHQgIWRlZmF1bHQ7XG5cbi8vLyBCb3R0b20gbWFyZ2luIGZvciBpdGVtcyBpbiBhIGxpc3QuXG4vLy8gQHR5cGUgTnVtYmVyXG4kbGlzdC1tYXJnaW4tYm90dG9tOiAkcGFyYWdyYXBoLW1hcmdpbi1ib3R0b20gIWRlZmF1bHQ7XG5cbi8vLyBCdWxsZXQgdHlwZSB0byB1c2UgZm9yIHVub3JkZXJlZCBsaXN0cyAoZS5nLiwgYHNxdWFyZWAsIGBjaXJjbGVgLCBgZGlzY2ApLlxuLy8vIEB0eXBlIFN0cmluZ1xuJGxpc3Qtc3R5bGUtdHlwZTogZGlzYyAhZGVmYXVsdDtcblxuLy8vIFBvc2l0aW9uaW5nIGZvciBidWxsZXRzIG9uIHVub3JkZXJlZCBsaXN0IGl0ZW1zLlxuLy8vIEB0eXBlIFN0cmluZ1xuJGxpc3Qtc3R5bGUtcG9zaXRpb246IG91dHNpZGUgIWRlZmF1bHQ7XG5cbi8vLyBMZWZ0IChvciByaWdodCkgbWFyZ2luIGZvciBsaXN0cy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRsaXN0LXNpZGUtbWFyZ2luOiAxLjI1cmVtICFkZWZhdWx0O1xuXG4vLy8gTGVmdCAob3IgcmlnaHQpIG1hcmdpbiBmb3IgYSBsaXN0IGluc2lkZSBhIGxpc3QuXG4vLy8gQHR5cGUgTnVtYmVyXG4kbGlzdC1uZXN0ZWQtc2lkZS1tYXJnaW46IDEuMjVyZW0gIWRlZmF1bHQ7XG5cbi8vLyBCb3R0b20gbWFyZ2luIGZvciBgPGRsPmAgZWxlbWVudHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kZGVmbmxpc3QtbWFyZ2luLWJvdHRvbTogMXJlbSAhZGVmYXVsdDtcblxuLy8vIEZvbnQgd2VpZ2h0IGZvciBgPGR0PmAgZWxlbWVudHMuXG4vLy8gQHR5cGUgU3RyaW5nXG4kZGVmbmxpc3QtdGVybS13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LWJvbGQgIWRlZmF1bHQ7XG5cbi8vLyBTcGFjaW5nIGJldHdlZW4gYDxkdD5gIGFuZCBgPGRkPmAgZWxlbWVudHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kZGVmbmxpc3QtdGVybS1tYXJnaW4tYm90dG9tOiAwLjNyZW0gIWRlZmF1bHQ7XG5cbi8vLyBUZXh0IGNvbG9yIG9mIGA8YmxvY2txdW90ZT5gIGVsZW1lbnRzLlxuLy8vIEB0eXBlIENvbG9yXG4kYmxvY2txdW90ZS1jb2xvcjogJGRhcmstZ3JheSAhZGVmYXVsdDtcblxuLy8vIFBhZGRpbmcgaW5zaWRlIGEgYDxibG9ja3F1b3RlPmAgZWxlbWVudC5cbi8vLyBAdHlwZSBOdW1iZXIgfCBMaXN0XG4kYmxvY2txdW90ZS1wYWRkaW5nOiByZW0tY2FsYyg5IDIwIDAgMTkpICFkZWZhdWx0O1xuXG4vLy8gU2lkZSBib3JkZXIgZm9yIGA8YmxvY2txdW90ZT5gIGVsZW1lbnRzLlxuLy8vIEB0eXBlIExpc3RcbiRibG9ja3F1b3RlLWJvcmRlcjogMXB4IHNvbGlkICRtZWRpdW0tZ3JheSAhZGVmYXVsdDtcblxuLy8vIEZvbnQgc2l6ZSBmb3IgYDxjaXRlPmAgZWxlbWVudHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kY2l0ZS1mb250LXNpemU6IHJlbS1jYWxjKDEzKSAhZGVmYXVsdDtcblxuLy8vIFRleHQgY29sb3IgZm9yIGA8Y2l0ZT5gIGVsZW1lbnRzLlxuLy8vIEB0eXBlIENvbG9yXG4kY2l0ZS1jb2xvcjogJGRhcmstZ3JheSAhZGVmYXVsdDtcblxuLy8vIFBzZXVkbyBjb250ZW50IGZvciBgPGNpdGU+YCBlbGVtZW50cy5cbi8vLyBAdHlwZSBTdHJpbmdcbiRjaXRlLXBzZXVkby1jb250ZW50OiAnXFwyMDE0IFxcMDAyMCcgIWRlZmF1bHQ7XG5cbi8vLyBGb250IGZhbWlseSBmb3IgYDxrYmQ+YCBlbGVtZW50cy5cbi8vLyBAdHlwZSBTdHJpbmcgfCBMaXN0XG4ka2V5c3Ryb2tlLWZvbnQ6ICRmb250LWZhbWlseS1tb25vc3BhY2UgIWRlZmF1bHQ7XG5cbi8vLyBUZXh0IGNvbG9yIGZvciBgPGtiZD5gIGVsZW1lbnRzLlxuLy8vIEB0eXBlIENvbG9yXG4ka2V5c3Ryb2tlLWNvbG9yOiAkYmxhY2sgIWRlZmF1bHQ7XG5cbi8vLyBCYWNrZ3JvdW5kIGNvbG9yIGZvciBgPGtiZD5gIGVsZW1lbnRzLlxuLy8vIEB0eXBlIENvbG9yXG4ka2V5c3Ryb2tlLWJhY2tncm91bmQ6ICRsaWdodC1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gUGFkZGluZyBmb3IgYDxrYmQ+YCBlbGVtZW50cy5cbi8vLyBAdHlwZSBOdW1iZXIgfCBMaXN0XG4ka2V5c3Ryb2tlLXBhZGRpbmc6IHJlbS1jYWxjKDIgNCAwKSAhZGVmYXVsdDtcblxuLy8vIEJvcmRlciByYWRpdXMgZm9yIGA8a2JkPmAgZWxlbWVudHMuXG4vLy8gQHR5cGUgTnVtYmVyIHwgTGlzdFxuJGtleXN0cm9rZS1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzICFkZWZhdWx0O1xuXG4vLy8gQm90dG9tIGJvcmRlciBzdHlsZSBmb3IgYDxhYmJyPmAgZWxlbWVudHMuXG4vLy8gQHR5cGUgTGlzdFxuJGFiYnItdW5kZXJsaW5lOiAxcHggZG90dGVkICRibGFjayAhZGVmYXVsdDtcblxuQG1peGluIGZvdW5kYXRpb24tdHlwb2dyYXBoeS1iYXNlIHtcbiAgLy8gVHlwb2dyYXBoeSByZXNldHNcbiAgZGl2LFxuICBkbCxcbiAgZHQsXG4gIGRkLFxuICB1bCxcbiAgb2wsXG4gIGxpLFxuICBoMSxcbiAgaDIsXG4gIGgzLFxuICBoNCxcbiAgaDUsXG4gIGg2LFxuICBwcmUsXG4gIGZvcm0sXG4gIHAsXG4gIGJsb2NrcXVvdGUsXG4gIHRoLFxuICB0ZCB7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDA7XG4gIH1cblxuICAvLyBQYXJhZ3JhcGhzXG4gIHAge1xuICAgIG1hcmdpbi1ib3R0b206ICRwYXJhZ3JhcGgtbWFyZ2luLWJvdHRvbTtcblxuICAgIGZvbnQtc2l6ZTogaW5oZXJpdDtcbiAgICBsaW5lLWhlaWdodDogJHBhcmFncmFwaC1saW5laGVpZ2h0O1xuICAgIHRleHQtcmVuZGVyaW5nOiAkcGFyYWdyYXBoLXRleHQtcmVuZGVyaW5nO1xuICB9XG5cbiAgLy8gRW1waGFzaXplZCB0ZXh0XG4gIGVtLFxuICBpIHtcbiAgICBmb250LXN0eWxlOiBpdGFsaWM7XG4gICAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7XG4gIH1cblxuICAvLyBTdHJvbmcgdGV4dFxuICBzdHJvbmcsXG4gIGIge1xuICAgIGZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ib2xkO1xuICAgIGxpbmUtaGVpZ2h0OiBpbmhlcml0O1xuICB9XG5cbiAgLy8gU21hbGwgdGV4dFxuICBzbWFsbCB7XG4gICAgZm9udC1zaXplOiAkc21hbGwtZm9udC1zaXplO1xuICAgIGxpbmUtaGVpZ2h0OiBpbmhlcml0O1xuICB9XG5cbiAgLy8gSGVhZGluZ3NcbiAgaDEsIC5oMSxcbiAgaDIsIC5oMixcbiAgaDMsIC5oMyxcbiAgaDQsIC5oNCxcbiAgaDUsIC5oNSxcbiAgaDYsIC5oNiB7XG4gICAgZm9udC1mYW1pbHk6ICRoZWFkZXItZm9udC1mYW1pbHk7XG4gICAgZm9udC1zdHlsZTogJGhlYWRlci1mb250LXN0eWxlO1xuICAgIGZvbnQtd2VpZ2h0OiAkaGVhZGVyLWZvbnQtd2VpZ2h0O1xuICAgIGNvbG9yOiAkaGVhZGVyLWNvbG9yO1xuICAgIHRleHQtcmVuZGVyaW5nOiAkaGVhZGVyLXRleHQtcmVuZGVyaW5nO1xuXG4gICAgc21hbGwge1xuICAgICAgbGluZS1oZWlnaHQ6IDA7XG4gICAgICBjb2xvcjogJGhlYWRlci1zbWFsbC1mb250LWNvbG9yO1xuICAgIH1cbiAgfVxuXG4gIC8vIEhlYWRpbmcgc3R5bGVzXG4gIEBlYWNoICRzaXplLCAkaGVhZGVycyBpbiAkaGVhZGVyLXN0eWxlcyB7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkc2l6ZSkge1xuICAgICAgQGVhY2ggJGhlYWRlciwgJGhlYWRlci1kZWZzIGluICRoZWFkZXJzIHtcbiAgICAgICAgJGZvbnQtc2l6ZS10ZW1wOiAxcmVtO1xuICAgICAgICAjeyRoZWFkZXJ9LCAuI3skaGVhZGVyfSB7XG5cbiAgICAgICAgICBAaWYgbWFwLWhhcy1rZXkoJGhlYWRlci1kZWZzLCBmb250LXNpemUpIHtcbiAgICAgICAgICAgICRmb250LXNpemUtdGVtcDogcmVtLWNhbGMobWFwLWdldCgkaGVhZGVyLWRlZnMsIGZvbnQtc2l6ZSkpO1xuICAgICAgICAgICAgZm9udC1zaXplOiAkZm9udC1zaXplLXRlbXA7XG4gICAgICAgICAgfSBAZWxzZSBpZiBtYXAtaGFzLWtleSgkaGVhZGVyLWRlZnMsIGZzKSB7XG4gICAgICAgICAgICAkZm9udC1zaXplLXRlbXA6IHJlbS1jYWxjKG1hcC1nZXQoJGhlYWRlci1kZWZzLCBmcykpO1xuICAgICAgICAgICAgZm9udC1zaXplOiAkZm9udC1zaXplLXRlbXA7XG4gICAgICAgICAgfSBAZWxzZSBpZiAkc2l6ZSA9PSAkLXpmLXplcm8tYnJlYWtwb2ludCB7XG4gICAgICAgICAgICBmb250LXNpemU6ICRmb250LXNpemUtdGVtcDtcbiAgICAgICAgICB9XG4gICAgICAgICAgQGlmIG1hcC1oYXMta2V5KCRoZWFkZXItZGVmcywgbGluZS1oZWlnaHQpIHtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiB1bml0bGVzcy1jYWxjKG1hcC1nZXQoJGhlYWRlci1kZWZzLCBsaW5lLWhlaWdodCksICRmb250LXNpemUtdGVtcCk7XG4gICAgICAgICAgfSBAZWxzZSBpZiBtYXAtaGFzLWtleSgkaGVhZGVyLWRlZnMsIGxoKSB7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogdW5pdGxlc3MtY2FsYyhtYXAtZ2V0KCRoZWFkZXItZGVmcywgbGgpLCAkZm9udC1zaXplLXRlbXApO1xuICAgICAgICAgIH0gQGVsc2UgaWYgJHNpemUgPT0gJC16Zi16ZXJvLWJyZWFrcG9pbnQge1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IHVuaXRsZXNzLWNhbGMoJGhlYWRlci1saW5laGVpZ2h0LCAkZm9udC1zaXplLXRlbXApO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIEBpZiBtYXAtaGFzLWtleSgkaGVhZGVyLWRlZnMsIG1hcmdpbi10b3ApIHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IHJlbS1jYWxjKG1hcC1nZXQoJGhlYWRlci1kZWZzLCBtYXJnaW4tdG9wKSk7XG4gICAgICAgICAgfSBAZWxzZSBpZiBtYXAtaGFzLWtleSgkaGVhZGVyLWRlZnMsIG10KSB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiByZW0tY2FsYyhtYXAtZ2V0KCRoZWFkZXItZGVmcywgbXQpKTtcbiAgICAgICAgICB9IEBlbHNlIGlmICRzaXplID09ICQtemYtemVyby1icmVha3BvaW50IHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICAgICAgfVxuICAgICAgICAgIEBpZiBtYXAtaGFzLWtleSgkaGVhZGVyLWRlZnMsIG1hcmdpbi1ib3R0b20pIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKG1hcC1nZXQoJGhlYWRlci1kZWZzLCBtYXJnaW4tYm90dG9tKSk7XG4gICAgICAgICAgfSBAZWxzZSBpZiBtYXAtaGFzLWtleSgkaGVhZGVyLWRlZnMsIG1iKSB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYyhtYXAtZ2V0KCRoZWFkZXItZGVmcywgbWIpKTtcbiAgICAgICAgICB9IEBlbHNlIGlmICRzaXplID09ICQtemYtemVyby1icmVha3BvaW50IHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKCRoZWFkZXItbWFyZ2luLWJvdHRvbSk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8gTGlua3NcbiAgYSB7XG4gICAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7XG4gICAgY29sb3I6ICRhbmNob3ItY29sb3I7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiAkYW5jaG9yLXRleHQtZGVjb3JhdGlvbjtcblxuICAgIGN1cnNvcjogcG9pbnRlcjtcblxuICAgICY6aG92ZXIsXG4gICAgJjpmb2N1cyB7XG4gICAgICBjb2xvcjogJGFuY2hvci1jb2xvci1ob3ZlcjtcbiAgICAgIEBpZiAkYW5jaG9yLXRleHQtZGVjb3JhdGlvbi1ob3ZlciAhPSAkYW5jaG9yLXRleHQtZGVjb3JhdGlvbiB7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogJGFuY2hvci10ZXh0LWRlY29yYXRpb24taG92ZXI7XG4gICAgICB9XG4gICAgfVxuXG4gICAgaW1nIHtcbiAgICAgIGJvcmRlcjogMDtcbiAgICB9XG4gIH1cblxuICAvLyBIb3Jpem9udGFsIHJ1bGVcbiAgaHIge1xuICAgIGNsZWFyOiBib3RoO1xuXG4gICAgbWF4LXdpZHRoOiAkaHItd2lkdGg7XG4gICAgaGVpZ2h0OiAwO1xuICAgIG1hcmdpbjogJGhyLW1hcmdpbjtcblxuICAgIGJvcmRlci10b3A6IDA7XG4gICAgYm9yZGVyLXJpZ2h0OiAwO1xuICAgIGJvcmRlci1ib3R0b206ICRoci1ib3JkZXI7XG4gICAgYm9yZGVyLWxlZnQ6IDA7XG4gIH1cblxuICAvLyBMaXN0c1xuICB1bCxcbiAgb2wsXG4gIGRsIHtcbiAgICBtYXJnaW4tYm90dG9tOiAkbGlzdC1tYXJnaW4tYm90dG9tO1xuICAgIGxpc3Qtc3R5bGUtcG9zaXRpb246ICRsaXN0LXN0eWxlLXBvc2l0aW9uO1xuICAgIGxpbmUtaGVpZ2h0OiAkbGlzdC1saW5laGVpZ2h0O1xuICB9XG5cbiAgLy8gTGlzdCBpdGVtc1xuICBsaSB7XG4gICAgZm9udC1zaXplOiBpbmhlcml0O1xuICB9XG5cbiAgLy8gVW5vcmRlcmVkIGxpc3RzXG4gIHVsIHtcbiAgICBtYXJnaW4tI3skZ2xvYmFsLWxlZnR9OiAkbGlzdC1zaWRlLW1hcmdpbjtcbiAgICBsaXN0LXN0eWxlLXR5cGU6ICRsaXN0LXN0eWxlLXR5cGU7XG4gIH1cblxuICAvLyBPcmRlcmVkIGxpc3RzXG4gIG9sIHtcbiAgICBtYXJnaW4tI3skZ2xvYmFsLWxlZnR9OiAkbGlzdC1zaWRlLW1hcmdpbjtcbiAgfVxuXG4gIC8vIE5lc3RlZCB1bm9yZGVyZWQvb3JkZXJlZCBsaXN0c1xuICB1bCwgb2wge1xuICAgICYgJiB7XG4gICAgICBtYXJnaW4tI3skZ2xvYmFsLWxlZnR9OiAkbGlzdC1uZXN0ZWQtc2lkZS1tYXJnaW47XG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIH1cbiAgfVxuXG4gIC8vIERlZmluaXRpb24gbGlzdHNcbiAgZGwge1xuICAgIG1hcmdpbi1ib3R0b206ICRkZWZubGlzdC1tYXJnaW4tYm90dG9tO1xuXG4gICAgZHQge1xuICAgICAgbWFyZ2luLWJvdHRvbTogJGRlZm5saXN0LXRlcm0tbWFyZ2luLWJvdHRvbTtcbiAgICAgIGZvbnQtd2VpZ2h0OiAkZGVmbmxpc3QtdGVybS13ZWlnaHQ7XG4gICAgfVxuICB9XG5cbiAgLy8gQmxvY2txdW90ZXNcbiAgYmxvY2txdW90ZSB7XG4gICAgbWFyZ2luOiAwIDAgJHBhcmFncmFwaC1tYXJnaW4tYm90dG9tO1xuICAgIHBhZGRpbmc6ICRibG9ja3F1b3RlLXBhZGRpbmc7XG4gICAgYm9yZGVyLSN7JGdsb2JhbC1sZWZ0fTogJGJsb2NrcXVvdGUtYm9yZGVyO1xuXG4gICAgJiwgcCB7XG4gICAgICBsaW5lLWhlaWdodDogJHBhcmFncmFwaC1saW5laGVpZ2h0O1xuICAgICAgY29sb3I6ICRibG9ja3F1b3RlLWNvbG9yO1xuICAgIH1cbiAgfVxuXG4gIC8vIENpdGF0aW9uc1xuICBjaXRlIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBmb250LXNpemU6ICRjaXRlLWZvbnQtc2l6ZTtcbiAgICBjb2xvcjogJGNpdGUtY29sb3I7XG5cbiAgICAmOmJlZm9yZSB7XG4gICAgICBjb250ZW50OiAkY2l0ZS1wc2V1ZG8tY29udGVudDtcbiAgICB9XG4gIH1cblxuICAvLyBBYmJyZXZpYXRpb25zXG4gIGFiYnIsIGFiYnJbdGl0bGVdIHtcbiAgICBib3JkZXItYm90dG9tOiAkYWJici11bmRlcmxpbmU7XG4gICAgY3Vyc29yOiBoZWxwO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgfVxuXG4gIC8vIEZpZ3VyZXNcbiAgZmlndXJlIHtcbiAgICBtYXJnaW46IDA7XG4gIH1cbiAgXG4gIC8vIENvZGVcbiAgY29kZSB7XG4gICAgcGFkZGluZzogJGNvZGUtcGFkZGluZztcblxuICAgIGJvcmRlcjogJGNvZGUtYm9yZGVyO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2RlLWJhY2tncm91bmQ7XG5cbiAgICBmb250LWZhbWlseTogJGNvZGUtZm9udC1mYW1pbHk7XG4gICAgZm9udC13ZWlnaHQ6ICRjb2RlLWZvbnQtd2VpZ2h0O1xuICAgIGNvbG9yOiAkY29kZS1jb2xvcjtcbiAgfVxuXG4gIC8vIEtleXN0cm9rZXNcbiAga2JkIHtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogJGtleXN0cm9rZS1wYWRkaW5nO1xuXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGtleXN0cm9rZS1iYWNrZ3JvdW5kO1xuXG4gICAgZm9udC1mYW1pbHk6ICRrZXlzdHJva2UtZm9udDtcbiAgICBjb2xvcjogJGtleXN0cm9rZS1jb2xvcjtcblxuICAgIEBpZiBoYXMtdmFsdWUoJGtleXN0cm9rZS1yYWRpdXMpIHtcbiAgICAgIGJvcmRlci1yYWRpdXM6ICRrZXlzdHJva2UtcmFkaXVzO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgdHlwb2dyYXBoeS1oZWxwZXJzXG4vLy8vXG5cbi8vLyBEZWZhdWx0IGZvbnQgc2l6ZSBmb3IgbGVhZCBwYXJhZ3JhcGhzLlxuLy8vIEB0eXBlIE51bWJlclxuJGxlYWQtZm9udC1zaXplOiAkZ2xvYmFsLWZvbnQtc2l6ZSAqIDEuMjUgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGxpbmUgaGVpZ2h0IGZvciBsZWFkIHBhcmFncmFwaHMuXG4vLy8gQHR5cGUgU3RyaW5nXG4kbGVhZC1saW5laGVpZ2h0OiAxLjYgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGxpbmUgaGVpZ2h0IGZvciBzdWJoZWFkZXJzLlxuLy8vIEB0eXBlIE51bWJlclxuJHN1YmhlYWRlci1saW5laGVpZ2h0OiAxLjQgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGZvbnQgY29sb3IgZm9yIHN1YmhlYWRlcnMuXG4vLy8gQHR5cGUgQ29sb3JcbiRzdWJoZWFkZXItY29sb3I6ICRkYXJrLWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGZvbnQgd2VpZ2h0IGZvciBzdWJoZWFkZXJzLlxuLy8vIEB0eXBlIFN0cmluZ1xuJHN1YmhlYWRlci1mb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtbm9ybWFsICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCB0b3AgbWFyZ2luIGZvciBzdWJoaGVhZGVycy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRzdWJoZWFkZXItbWFyZ2luLXRvcDogMC4ycmVtICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBib3R0b20gbWFyZ2luIGZvciBzdWJoZWFkZXJzLlxuLy8vIEB0eXBlIE51bWJlclxuJHN1YmhlYWRlci1tYXJnaW4tYm90dG9tOiAwLjVyZW0gIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGZvbnQgc2l6ZSBmb3Igc3RhdGlzdGljIG51bWJlcnMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kc3RhdC1mb250LXNpemU6IDIuNXJlbSAhZGVmYXVsdDtcblxuQG1peGluIGZvdW5kYXRpb24tdHlwb2dyYXBoeS1oZWxwZXJzIHtcbiAgLy8gVXNlIHRvIGNyZWF0ZSBhIHN1YmhlYWRpbmcgdW5kZXIgYSBtYWluIGhlYWRlclxuICAvLyBNYWtlIHN1cmUgeW91IHBhaXIgdGhlIHR3byBlbGVtZW50cyBpbiBhIDxoZWFkZXI+IGVsZW1lbnQsIGxpa2UgdGhpczpcbiAgLy8gPGhlYWRlcj5cbiAgLy8gICA8aDE+SGVhZGluZzwvaDE+XG4gIC8vICAgPGgyPlN1YmhlYWRpbmc8L2gyPlxuICAvLyA8L2hlYWRlcj5cbiAgLnN1YmhlYWRlciB7XG4gICAgbWFyZ2luLXRvcDogJHN1YmhlYWRlci1tYXJnaW4tdG9wO1xuICAgIG1hcmdpbi1ib3R0b206ICRzdWJoZWFkZXItbWFyZ2luLWJvdHRvbTtcblxuICAgIGZvbnQtd2VpZ2h0OiAkc3ViaGVhZGVyLWZvbnQtd2VpZ2h0O1xuICAgIGxpbmUtaGVpZ2h0OiAkc3ViaGVhZGVyLWxpbmVoZWlnaHQ7XG4gICAgY29sb3I6ICRzdWJoZWFkZXItY29sb3I7XG4gIH1cblxuICAvLyBVc2UgdG8gc3R5bGUgYW4gaW50cm9kdWN0b3J5IGxlYWQsIGRlY2ssIGJsdXJiLCBldGMuXG4gIC5sZWFkIHtcbiAgICBmb250LXNpemU6ICRsZWFkLWZvbnQtc2l6ZTtcbiAgICBsaW5lLWhlaWdodDogJGxlYWQtbGluZWhlaWdodDtcbiAgfVxuXG4gIC8vIFVzZSB0byBzdHlsZSBhIGxhcmdlIG51bWJlciB0byBkaXNwbGF5IGEgc3RhdGlzdGljXG4gIC5zdGF0IHtcbiAgICBmb250LXNpemU6ICRzdGF0LWZvbnQtc2l6ZTtcbiAgICBsaW5lLWhlaWdodDogMTtcblxuICAgIHAgKyAmIHtcbiAgICAgIG1hcmdpbi10b3A6IC0xcmVtO1xuICAgIH1cbiAgfVxuXG4gIHVsLCBvbCB7XG4gICAgLy8gVXNlIHRvIHJlbW92ZSBudW1iZXJzIGZyb20gb3JkZXJlZCBsaXN0ICYgYnVsbGV0cyBmcm9tIHVub3JkZXJlZCBsaXN0XG4gICAgJi5uby1idWxsZXQge1xuICAgICAgbWFyZ2luLSN7JGdsb2JhbC1sZWZ0fTogMDtcbiAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgfVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuQG1peGluIGZvdW5kYXRpb24tdGV4dC1hbGlnbm1lbnQge1xuICBAZWFjaCAkc2l6ZSBpbiAkYnJlYWtwb2ludC1jbGFzc2VzIHtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KCRzaXplKSB7XG4gICAgICBAZWFjaCAkYWxpZ24gaW4gKGxlZnQsIHJpZ2h0LCBjZW50ZXIsIGp1c3RpZnkpIHtcbiAgICAgICAgQGlmICRzaXplICE9ICQtemYtemVyby1icmVha3BvaW50IHtcbiAgICAgICAgICAuI3skc2l6ZX0tdGV4dC0jeyRhbGlnbn0ge1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogJGFsaWduO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBAZWxzZSB7XG4gICAgICAgICAgLnRleHQtI3skYWxpZ259IHtcbiAgICAgICAgICAgIHRleHQtYWxpZ246ICRhbGlnbjtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8gSWYgYHRydWVgLCBhbGwgZWxlbWVudHMgd2lsbCBoYXZlIHRyYW5zcGFyZW50IGJhY2tncm91bmRzIHdoZW4gcHJpbnRlZCwgdG8gc2F2ZSBvbiBpbmsuXG4vLy8gQHR5cGUgQm9vbGVhblxuLy8vIEBncm91cCBnbG9iYWxcbiRwcmludC10cmFuc3BhcmVudC1iYWNrZ3JvdW5kczogdHJ1ZSAhZGVmYXVsdDtcbiRwcmludC1ocmVmczogdHJ1ZSAhZGVmYXVsdDtcblxuLy8gc2Fzcy1saW50OmRpc2FibGUtYWxsXG5cbkBtaXhpbiBmb3VuZGF0aW9uLXByaW50LXN0eWxlcyB7XG4gIC5zaG93LWZvci1wcmludCB7IGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfVxuXG4gIEBtZWRpYSBwcmludCB7XG4gICAgKiB7XG4gICAgICBAaWYgJHByaW50LXRyYW5zcGFyZW50LWJhY2tncm91bmRzIHtcbiAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbiAgICAgIH1cblxuICAgICAgYm94LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xuXG4gICAgICBjb2xvcjogYmxhY2sgIWltcG9ydGFudDsgLy8gQmxhY2sgcHJpbnRzIGZhc3RlcjogaDVicC5jb20vc1xuICAgICAgdGV4dC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDtcbiAgICB9XG5cbiAgICAuc2hvdy1mb3ItcHJpbnQgeyBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50OyB9XG4gICAgLmhpZGUtZm9yLXByaW50IHsgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9XG5cbiAgICB0YWJsZS5zaG93LWZvci1wcmludCB7IGRpc3BsYXk6IHRhYmxlICFpbXBvcnRhbnQ7IH1cbiAgICB0aGVhZC5zaG93LWZvci1wcmludCB7IGRpc3BsYXk6IHRhYmxlLWhlYWRlci1ncm91cCAhaW1wb3J0YW50OyB9XG4gICAgdGJvZHkuc2hvdy1mb3ItcHJpbnQgeyBkaXNwbGF5OiB0YWJsZS1yb3ctZ3JvdXAgIWltcG9ydGFudDsgfVxuICAgIHRyLnNob3ctZm9yLXByaW50IHsgZGlzcGxheTogdGFibGUtcm93ICFpbXBvcnRhbnQ7IH1cbiAgICB0ZC5zaG93LWZvci1wcmludCB7IGRpc3BsYXk6IHRhYmxlLWNlbGwgIWltcG9ydGFudDsgfVxuICAgIHRoLnNob3ctZm9yLXByaW50IHsgZGlzcGxheTogdGFibGUtY2VsbCAhaW1wb3J0YW50OyB9XG5cbiAgICAvLyBEaXNwbGF5IHRoZSBVUkwgb2YgYSBsaW5rIGFmdGVyIHRoZSB0ZXh0XG4gICAgYSxcbiAgICBhOnZpc2l0ZWQgeyB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTt9XG4gICAgQGlmICRwcmludC1ocmVmcyB7XG4gICAgICBhW2hyZWZdOmFmdGVyIHsgY29udGVudDogJyAoJyBhdHRyKGhyZWYpICcpJzsgfVxuICAgIH1cblxuICAgIC8vIERvbid0IGRpc3BsYXkgdGhlIFVSTCBmb3IgaW1hZ2VzIG9yIEphdmFTY3JpcHQvaW50ZXJuYWwgbGlua3NcbiAgICAuaXIgYTphZnRlcixcbiAgICBhW2hyZWZePSdqYXZhc2NyaXB0OiddOmFmdGVyLFxuICAgIGFbaHJlZl49JyMnXTphZnRlciB7IGNvbnRlbnQ6ICcnOyB9XG5cbiAgICAvLyBEaXNwbGF5IHdoYXQgYW4gYWJicmV2aWF0aW9uIHN0YW5kcyBmb3IgYWZ0ZXIgdGhlIHRleHRcbiAgICBhYmJyW3RpdGxlXTphZnRlciB7IGNvbnRlbnQ6ICcgKCcgYXR0cih0aXRsZSkgJyknOyB9XG5cbiAgICAvLyBQcmV2ZW50IHBhZ2UgYnJlYWtzIGluIHRoZSBtaWRkbGUgb2YgYSBibG9ja3F1b3RlIG9yIHByZWZvcm1hdHRlZCB0ZXh0IGJsb2NrXG4gICAgcHJlLFxuICAgIGJsb2NrcXVvdGUge1xuICAgICAgYm9yZGVyOiAxcHggc29saWQgJGRhcmstZ3JheTtcbiAgICAgIHBhZ2UtYnJlYWstaW5zaWRlOiBhdm9pZDtcbiAgICB9XG5cbiAgICAvLyBoNWJwLmNvbS90XG4gICAgdGhlYWQgeyBkaXNwbGF5OiB0YWJsZS1oZWFkZXItZ3JvdXA7IH1cblxuICAgIHRyLFxuICAgIGltZyB7IHBhZ2UtYnJlYWstaW5zaWRlOiBhdm9pZDsgfVxuXG4gICAgaW1nIHsgbWF4LXdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7IH1cblxuICAgIEBwYWdlIHsgbWFyZ2luOiAwLjVjbTsgfVxuXG4gICAgcCxcbiAgICBoMixcbiAgICBoMyB7XG4gICAgICBvcnBoYW5zOiAzO1xuICAgICAgd2lkb3dzOiAzO1xuICAgIH1cblxuICAgIC8vIEF2b2lkIHBhZ2UgYnJlYWtzIGFmdGVyIGEgaGVhZGluZ1xuICAgIGgyLFxuICAgIGgzIHsgcGFnZS1icmVhay1hZnRlcjogYXZvaWQ7IH1cblxuICAgIC8vIEhlbHBlciB0byByZS1hbGxvdyBwYWdlIGJyZWFrcyBpbiB0aGUgbWlkZGxlIG9mIGNlcnRhaW4gZWxlbWVudHMgKGUuZy4gcHJlLCBibG9ja3F1b3RlLCB0cilcbiAgICAucHJpbnQtYnJlYWstaW5zaWRlIHtcbiAgICAgIHBhZ2UtYnJlYWstaW5zaWRlOiBhdXRvO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgYnV0dG9uXG4vLy8vXG5cbi8vLyBGb250IGZhbWlseSBmb3IgYnV0dG9uIGVsZW1lbnRzLlxuLy8vIEB0eXBlIEZvbnRcbiRidXR0b24tZm9udC1mYW1pbHk6IGluaGVyaXQgIWRlZmF1bHQ7XG5cbi8vLyBQYWRkaW5nIGluc2lkZSBidXR0b25zLlxuLy8vIEB0eXBlIExpc3RcbiRidXR0b24tcGFkZGluZzogMC44NWVtIDFlbSAhZGVmYXVsdDtcblxuLy8vIE1hcmdpbiBhcm91bmQgYnV0dG9ucy5cbi8vLyBAdHlwZSBMaXN0XG4kYnV0dG9uLW1hcmdpbjogMCAwICRnbG9iYWwtbWFyZ2luIDAgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGZpbGwgZm9yIGJ1dHRvbnMuIENhbiBlaXRoZXIgYmUgYHNvbGlkYCBvciBgaG9sbG93YC5cbi8vLyBAdHlwZSBLZXl3b3JkXG4kYnV0dG9uLWZpbGw6IHNvbGlkICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBiYWNrZ3JvdW5kIGNvbG9yIGZvciBidXR0b25zLlxuLy8vIEB0eXBlIENvbG9yXG4kYnV0dG9uLWJhY2tncm91bmQ6ICRwcmltYXJ5LWNvbG9yICFkZWZhdWx0O1xuXG4vLy8gQmFja2dyb3VuZCBjb2xvciBvbiBob3ZlciBmb3IgYnV0dG9ucy5cbi8vLyBAdHlwZSBDb2xvclxuJGJ1dHRvbi1iYWNrZ3JvdW5kLWhvdmVyOiBzY2FsZS1jb2xvcigkYnV0dG9uLWJhY2tncm91bmQsICRsaWdodG5lc3M6IC0xNSUpICFkZWZhdWx0O1xuXG4vLy8gRm9udCBjb2xvciBmb3IgYnV0dG9ucy5cbi8vLyBAdHlwZSBMaXN0XG4kYnV0dG9uLWNvbG9yOiAkd2hpdGUgIWRlZmF1bHQ7XG5cbi8vLyBBbHRlcm5hdGl2ZSBmb250IGNvbG9yIGZvciBidXR0b25zLlxuLy8vIEB0eXBlIExpc3RcbiRidXR0b24tY29sb3ItYWx0OiAkYmxhY2sgIWRlZmF1bHQ7XG5cbi8vLyBCb3JkZXIgcmFkaXVzIGZvciBidXR0b25zLCBkZWZhdWx0ZWQgdG8gZ2xvYmFsLXJhZGl1cy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRidXR0b24tcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cyAhZGVmYXVsdDtcblxuLy8vIEJvcmRlciB3aWR0aCBmb3IgaG9sbG93IG91dGxpbmUgYnV0dG9uc1xuLy8vIEB0eXBlIE51bWJlclxuJGJ1dHRvbi1ob2xsb3ctYm9yZGVyLXdpZHRoOiAxcHggIWRlZmF1bHQ7XG5cbi8vLyBTaXplcyBmb3IgYnV0dG9ucy5cbi8vLyBAdHlwZSBNYXBcbiRidXR0b24tc2l6ZXM6IChcbiAgdGlueTogMC42cmVtLFxuICBzbWFsbDogMC43NXJlbSxcbiAgZGVmYXVsdDogMC45cmVtLFxuICBsYXJnZTogMS4yNXJlbSxcbikgIWRlZmF1bHQ7XG5cbi8vLyBDb2xvcmluZyBjbGFzc2VzLiBBIG1hcCBvZiBjbGFzc2VzIHRvIG91dHB1dCBpbiB5b3VyIENTUywgbGlrZSBgLnNlY29uZGFyeWAsIGAuc3VjY2Vzc2AsIGFuZCBzbyBvbi5cbi8vLyBAdHlwZSBNYXBcbiRidXR0b24tcGFsZXR0ZTogJGZvdW5kYXRpb24tcGFsZXR0ZSAhZGVmYXVsdDtcblxuLy8vIG9wYWNpdHkgZm9yIGEgZGlzYWJsZWQgYnV0dG9uLlxuLy8vIEB0eXBlIExpc3RcbiRidXR0b24tb3BhY2l0eS1kaXNhYmxlZDogMC4yNSAhZGVmYXVsdDtcblxuLy8vIEJhY2tncm91bmQgY29sb3IgbGlnaHRuZXNzIG9uIGhvdmVyIGZvciBidXR0b25zLlxuLy8vIEB0eXBlIE51bWJlclxuJGJ1dHRvbi1iYWNrZ3JvdW5kLWhvdmVyLWxpZ2h0bmVzczogLTIwJSAhZGVmYXVsdDtcblxuLy8vIENvbG9yIGxpZ2h0bmVzcyBvbiBob3ZlciBmb3IgaG9sbG93IGJ1dHRvbnMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kYnV0dG9uLWhvbGxvdy1ob3Zlci1saWdodG5lc3M6IC01MCUgIWRlZmF1bHQ7XG5cbi8vIEludGVybmFsOiBmbGlwIGZyb20gbWFyZ2luLXJpZ2h0IHRvIG1hcmdpbi1sZWZ0IGZvciBkZWZhdWx0c1xuQGlmICRnbG9iYWwtdGV4dC1kaXJlY3Rpb24gPT0gJ3J0bCcge1xuICAkYnV0dG9uLW1hcmdpbjogMCAwICRnbG9iYWwtbWFyZ2luICRnbG9iYWwtbWFyZ2luICFkZWZhdWx0O1xufVxuXG4vLy8gdHJhbnNpdGlvbnMgZm9yIGJ1dHRvbnMuXG4vLy8gQHR5cGUgTGlzdFxuJGJ1dHRvbi10cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDAuMjVzIGVhc2Utb3V0LCBjb2xvciAwLjI1cyBlYXNlLW91dCAhZGVmYXVsdDtcblxuLy8gVE9ETzogRG9jdW1lbnQgYnV0dG9uLWJhc2UoKSBtaXhpblxuQG1peGluIGJ1dHRvbi1iYXNlIHtcbiAgQGluY2x1ZGUgZGlzYWJsZS1tb3VzZS1vdXRsaW5lO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIG1hcmdpbjogJGJ1dHRvbi1tYXJnaW47XG4gIGZvbnQtZmFtaWx5OiAkYnV0dG9uLWZvbnQtZmFtaWx5O1xuXG4gIEBpZiAodHlwZS1vZigkYnV0dG9uLXBhZGRpbmcpID09ICdtYXAnKSB7XG4gICAgQGVhY2ggJHNpemUsICRwYWRkaW5nIGluICRidXR0b24tcGFkZGluZyB7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRzaXplKSB7XG4gICAgICAgIHBhZGRpbmc6ICRwYWRkaW5nO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICBAZWxzZSB7XG4gICAgcGFkZGluZzogJGJ1dHRvbi1wYWRkaW5nO1xuICB9XG5cbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xuICBib3JkZXI6IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLXJhZGl1czogJGJ1dHRvbi1yYWRpdXM7XG4gIHRyYW5zaXRpb246ICRidXR0b24tdHJhbnNpdGlvbjtcblxuICBmb250LXNpemU6IG1hcC1nZXQoJGJ1dHRvbi1zaXplcywgZGVmYXVsdCk7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cblxuLy8vIEV4cGFuZHMgYSBidXR0b24gdG8gbWFrZSBpdCBmdWxsLXdpZHRoLlxuLy8vIEBwYXJhbSB7Qm9vbGVhbn0gJGV4cGFuZCBbdHJ1ZV0gLSBTZXQgdG8gYHRydWVgIHRvIGVuYWJsZSB0aGUgZXhwYW5kIGJlaGF2aW9yLiBTZXQgdG8gYGZhbHNlYCB0byByZXZlcnNlIHRoaXMgYmVoYXZpb3IuXG5AbWl4aW4gYnV0dG9uLWV4cGFuZCgkZXhwYW5kOiB0cnVlKSB7XG4gIEBpZiAkZXhwYW5kIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gIH1cbiAgQGVsc2Uge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB3aWR0aDogYXV0bztcbiAgICBtYXJnaW46ICRidXR0b24tbWFyZ2luO1xuICB9XG59XG5cbi8vLyBTZXRzIHRoZSB2aXN1YWwgc3R5bGUgb2YgYSBidXR0b24uXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGJhY2tncm91bmQgWyRidXR0b24tYmFja2dyb3VuZF0gLSBCYWNrZ3JvdW5kIGNvbG9yIG9mIHRoZSBidXR0b24uXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGJhY2tncm91bmQtaG92ZXIgWyRidXR0b24tYmFja2dyb3VuZC1ob3Zlcl0gLSBCYWNrZ3JvdW5kIGNvbG9yIG9mIHRoZSBidXR0b24gb24gaG92ZXIuIFNldCB0byBgYXV0b2AgdG8gaGF2ZSB0aGUgbWl4aW4gYXV0b21hdGljYWxseSBnZW5lcmF0ZSBhIGhvdmVyIGNvbG9yLlxuLy8vIEBwYXJhbSB7Q29sb3J9ICRjb2xvciBbJGJ1dHRvbi1jb2xvcl0gLSBUZXh0IGNvbG9yIG9mIHRoZSBidXR0b24uIFNldCB0byBgYXV0b2AgdG8gYXV0b21hdGljYWxseSBnZW5lcmF0ZSBhIGNvbG9yIGJhc2VkIG9uIHRoZSBiYWNrZ3JvdW5kIGNvbG9yLlxuQG1peGluIGJ1dHRvbi1zdHlsZShcbiAgJGJhY2tncm91bmQ6ICRidXR0b24tYmFja2dyb3VuZCxcbiAgJGJhY2tncm91bmQtaG92ZXI6ICRidXR0b24tYmFja2dyb3VuZC1ob3ZlcixcbiAgJGNvbG9yOiAkYnV0dG9uLWNvbG9yLFxuICAkYmFja2dyb3VuZC1ob3Zlci1saWdodG5lc3M6ICRidXR0b24tYmFja2dyb3VuZC1ob3Zlci1saWdodG5lc3Ncbikge1xuICBAaWYgJGNvbG9yID09IGF1dG8ge1xuICAgICRjb2xvcjogY29sb3ItcGljay1jb250cmFzdCgkYmFja2dyb3VuZCwgKCRidXR0b24tY29sb3IsICRidXR0b24tY29sb3ItYWx0KSk7XG4gIH1cblxuICBAaWYgJGJhY2tncm91bmQtaG92ZXIgPT0gYXV0byB7XG4gICAgJGJhY2tncm91bmQtaG92ZXI6IHNjYWxlLWNvbG9yKCRiYWNrZ3JvdW5kLCAkbGlnaHRuZXNzOiAkYmFja2dyb3VuZC1ob3Zlci1saWdodG5lc3MpO1xuICB9XG5cbiAgYmFja2dyb3VuZC1jb2xvcjogJGJhY2tncm91bmQ7XG4gIGNvbG9yOiAkY29sb3I7XG5cbiAgJjpob3ZlciwgJjpmb2N1cyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGJhY2tncm91bmQtaG92ZXI7XG4gICAgY29sb3I6ICRjb2xvcjtcbiAgfVxufVxuXG4vLy8gUmVtb3ZlcyBiYWNrZ3JvdW5kIGZpbGwgb24gaG92ZXIgYW5kIGZvY3VzIGZvciBob2xsb3cgYnV0dG9ucy5cbkBtaXhpbiBidXR0b24taG9sbG93IHtcbiAgJixcbiAgJjpob3ZlciwgJjpmb2N1cyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIH1cblxuICAmLmRpc2FibGVkLFxuICAmW2Rpc2FibGVkXSB7XG4gICAgJixcbiAgICAmOmhvdmVyLCAmOmZvY3VzIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gYnV0dG9uLWhvbGxvdy1zdHlsZShcbiAgJGNvbG9yOiAkYnV0dG9uLWJhY2tncm91bmQsXG4gICRob3Zlci1saWdodG5lc3M6ICRidXR0b24taG9sbG93LWhvdmVyLWxpZ2h0bmVzcyxcbiAgJGJvcmRlci13aWR0aDogJGJ1dHRvbi1ob2xsb3ctYm9yZGVyLXdpZHRoXG4pIHtcbiAgJGNvbG9yLWhvdmVyOiBzY2FsZS1jb2xvcigkY29sb3IsICRsaWdodG5lc3M6ICRob3Zlci1saWdodG5lc3MpO1xuXG4gIGJvcmRlcjogJGJvcmRlci13aWR0aCBzb2xpZCAkY29sb3I7XG4gIGNvbG9yOiAkY29sb3I7XG5cbiAgJjpob3ZlciwgJjpmb2N1cyB7XG4gICAgYm9yZGVyLWNvbG9yOiAkY29sb3ItaG92ZXI7XG4gICAgY29sb3I6ICRjb2xvci1ob3ZlcjtcbiAgICAmLmRpc2FibGVkLFxuICAgICZbZGlzYWJsZWRdIHtcbiAgICAgIGJvcmRlcjogJGJvcmRlci13aWR0aCBzb2xpZCAkY29sb3I7XG4gICAgICBjb2xvcjogJGNvbG9yO1xuICAgIH1cbiAgfVxufVxuXG4vLy8gQWRkcyBkaXNhYmxlZCBzdHlsZXMgdG8gYSBidXR0b24gYnkgZmFkaW5nIHRoZSBlbGVtZW50LCByZXNldGluZyB0aGUgY3Vyc29yLCBhbmQgZGlzYWJsaW5nIHBvaW50ZXIgZXZlbnRzLlxuLy8vIEBwYXJhbSBbQ29sb3JdICRiYWNrZ3JvdW5kIFskYnV0dG9uLWJhY2tncm91bmRdIC0gQmFja2dyb3VuZCBjb2xvciBvZiB0aGUgZGlzYWJsZWQgYnV0dG9uLlxuLy8vIEBwYXJhbSBbQ29sb3JdICRjb2xvciBbJGJ1dHRvbi1jb2xvcl0gLSBUZXh0IGNvbG9yIG9mIHRoZSBkaXNhYmxlZCBidXR0b24uIFNldCB0byBgYXV0b2AgdG8gaGF2ZSB0aGUgbWl4aW4gYXV0b21hdGljYWxseSBnZW5lcmF0ZSBhIGNvbG9yIGJhc2VkIG9uIHRoZSBiYWNrZ3JvdW5kIGNvbG9yLlxuQG1peGluIGJ1dHRvbi1kaXNhYmxlZChcbiAgJGJhY2tncm91bmQ6ICRidXR0b24tYmFja2dyb3VuZCxcbiAgJGNvbG9yOiAkYnV0dG9uLWNvbG9yXG4pIHtcbiAgQGlmICRjb2xvciA9PSBhdXRvIHtcbiAgICAkY29sb3I6IGNvbG9yLXBpY2stY29udHJhc3QoJGJhY2tncm91bmQsICgkYnV0dG9uLWNvbG9yLCAkYnV0dG9uLWNvbG9yLWFsdCkpO1xuICB9XG5cbiAgb3BhY2l0eTogJGJ1dHRvbi1vcGFjaXR5LWRpc2FibGVkO1xuICBjdXJzb3I6IG5vdC1hbGxvd2VkO1xuXG4gICYsICY6aG92ZXIsICY6Zm9jdXMge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRiYWNrZ3JvdW5kO1xuICAgIGNvbG9yOiAkY29sb3I7XG4gIH1cbn1cblxuLy8vIEFkZHMgYSBkcm9wZG93biBhcnJvdyB0byBhIGJ1dHRvbi5cbi8vLyBAcGFyYW0ge051bWJlcn0gJHNpemUgWzAuNGVtXSAtIFNpemUgb2YgdGhlIGFycm93LiBXZSByZWNvbW1lbmQgdXNpbmcgYW4gYGVtYCB2YWx1ZSBzbyB0aGUgdHJpYW5nbGUgc2NhbGVzIHdoZW4gdXNlZCBpbnNpZGUgZGlmZmVyZW50IHNpemVzIG9mIGJ1dHRvbnMuXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGNvbG9yIFt3aGl0ZV0gLSBDb2xvciBvZiB0aGUgYXJyb3cuXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRvZmZzZXQgWyRidXR0b24tcGFkZGluZ10gLSBEaXN0YW5jZSBiZXR3ZWVuIHRoZSBhcnJvdyBhbmQgdGhlIHRleHQgb2YgdGhlIGJ1dHRvbi4gRGVmYXVsdHMgdG8gd2hhdGV2ZXIgdGhlIHJpZ2h0IHBhZGRpbmcgb2YgYSBidXR0b24gaXMuXG5AbWl4aW4gYnV0dG9uLWRyb3Bkb3duKFxuICAkc2l6ZTogMC40ZW0sXG4gICRjb2xvcjogJHdoaXRlLFxuICAkb2Zmc2V0OiBnZXQtc2lkZSgkYnV0dG9uLXBhZGRpbmcsIHJpZ2h0KVxuKSB7XG4gICY6OmFmdGVyIHtcbiAgICBAaW5jbHVkZSBjc3MtdHJpYW5nbGUoJHNpemUsICRjb2xvciwgZG93bik7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHRvcDogMC40ZW07IC8vIEFsaWducyB0aGUgYXJyb3cgd2l0aCB0aGUgdGV4dCBvZiB0aGUgYnV0dG9uXG5cbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgZmxvYXQ6ICN7JGdsb2JhbC1yaWdodH07XG4gICAgbWFyZ2luLSN7JGdsb2JhbC1sZWZ0fTogJG9mZnNldDtcbiAgfVxufVxuXG4vLy8gQWRkcyBhbGwgc3R5bGVzIGZvciBhIGJ1dHRvbi4gRm9yIG1vcmUgZ3JhbnVsYXIgY29udHJvbCBvdmVyIHN0eWxlcywgdXNlIHRoZSBpbmRpdmlkdWFsIGJ1dHRvbiBtaXhpbnMuXG4vLy8gQHBhcmFtIHtCb29sZWFufSAkZXhwYW5kIFtmYWxzZV0gLSBTZXQgdG8gYHRydWVgIHRvIG1ha2UgdGhlIGJ1dHRvbiBmdWxsLXdpZHRoLlxuLy8vIEBwYXJhbSB7Q29sb3J9ICRiYWNrZ3JvdW5kIFskYnV0dG9uLWJhY2tncm91bmRdIC0gQmFja2dyb3VuZCBjb2xvciBvZiB0aGUgYnV0dG9uLlxuLy8vIEBwYXJhbSB7Q29sb3J9ICRiYWNrZ3JvdW5kLWhvdmVyIFskYnV0dG9uLWJhY2tncm91bmQtaG92ZXJdIC0gQmFja2dyb3VuZCBjb2xvciBvZiB0aGUgYnV0dG9uIG9uIGhvdmVyLiBTZXQgdG8gYGF1dG9gIHRvIGhhdmUgdGhlIG1peGluIGF1dG9tYXRpY2FsbHkgZ2VuZXJhdGUgYSBob3ZlciBjb2xvci5cbi8vLyBAcGFyYW0ge0NvbG9yfSAkY29sb3IgWyRidXR0b24tY29sb3JdIC0gVGV4dCBjb2xvciBvZiB0aGUgYnV0dG9uLiBTZXQgdG8gYGF1dG9gIHRvIGF1dG9tYXRpY2FsbHkgZ2VuZXJhdGUgYSBjb2xvciBiYXNlZCBvbiB0aGUgYmFja2dyb3VuZCBjb2xvci5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRzdHlsZSBbc29saWRdIC0gU2V0IHRvIGBob2xsb3dgIHRvIGNyZWF0ZSBhIGhvbGxvdyBidXR0b24uIFRoZSBjb2xvciBkZWZpbmVkIGluIGAkYmFja2dyb3VuZGAgd2lsbCBiZSB1c2VkIGFzIHRoZSBwcmltYXJ5IGNvbG9yIG9mIHRoZSBidXR0b24uXG5AbWl4aW4gYnV0dG9uKFxuICAkZXhwYW5kOiBmYWxzZSxcbiAgJGJhY2tncm91bmQ6ICRidXR0b24tYmFja2dyb3VuZCxcbiAgJGJhY2tncm91bmQtaG92ZXI6ICRidXR0b24tYmFja2dyb3VuZC1ob3ZlcixcbiAgJGNvbG9yOiAkYnV0dG9uLWNvbG9yLFxuICAkc3R5bGU6ICRidXR0b24tZmlsbFxuKSB7XG4gIEBpbmNsdWRlIGJ1dHRvbi1iYXNlO1xuXG4gIEBpZiAkc3R5bGUgPT0gc29saWQge1xuICAgIEBpbmNsdWRlIGJ1dHRvbi1zdHlsZSgkYmFja2dyb3VuZCwgJGJhY2tncm91bmQtaG92ZXIsICRjb2xvcik7XG4gIH1cbiAgQGVsc2UgaWYgJHN0eWxlID09IGhvbGxvdyB7XG4gICAgQGluY2x1ZGUgYnV0dG9uLWhvbGxvdztcbiAgICBAaW5jbHVkZSBidXR0b24taG9sbG93LXN0eWxlKCRiYWNrZ3JvdW5kKTtcbiAgfVxuXG4gIEBpZiAkZXhwYW5kIHtcbiAgICBAaW5jbHVkZSBidXR0b24tZXhwYW5kO1xuICB9XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLWJ1dHRvbiB7XG4gIC5idXR0b24ge1xuICAgIEBpbmNsdWRlIGJ1dHRvbjtcblxuICAgIC8vIFNpemVzXG4gICAgQGVhY2ggJHNpemUsICR2YWx1ZSBpbiBtYXAtcmVtb3ZlKCRidXR0b24tc2l6ZXMsIGRlZmF1bHQpIHtcbiAgICAgICYuI3skc2l6ZX0ge1xuICAgICAgICBmb250LXNpemU6ICR2YWx1ZTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmLmV4cGFuZGVkIHsgQGluY2x1ZGUgYnV0dG9uLWV4cGFuZDsgfVxuXG4gICAgLy8gQ29sb3JzXG4gICAgQGVhY2ggJG5hbWUsICRjb2xvciBpbiAkYnV0dG9uLXBhbGV0dGUge1xuICAgICAgQGlmICRidXR0b24tZmlsbCAhPSBob2xsb3cge1xuICAgICAgICAmLiN7JG5hbWV9IHtcbiAgICAgICAgICBAaW5jbHVkZSBidXR0b24tc3R5bGUoJGNvbG9yLCBhdXRvLCBhdXRvKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgQGVsc2Uge1xuICAgICAgICAmLiN7JG5hbWV9IHtcbiAgICAgICAgICBAaW5jbHVkZSBidXR0b24taG9sbG93LXN0eWxlKCRjb2xvcik7XG4gICAgICAgIH1cblxuICAgICAgICAmLiN7JG5hbWV9LmRyb3Bkb3duOjphZnRlciB7XG4gICAgICAgICAgYm9yZGVyLXRvcC1jb2xvcjogJGNvbG9yO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gRGlzYWJsZWQgc3R5bGVcbiAgICAmLmRpc2FibGVkLFxuICAgICZbZGlzYWJsZWRdIHtcbiAgICAgIEBpbmNsdWRlIGJ1dHRvbi1kaXNhYmxlZDtcblxuICAgICAgQGVhY2ggJG5hbWUsICRjb2xvciBpbiAkYnV0dG9uLXBhbGV0dGUge1xuICAgICAgICAmLiN7JG5hbWV9IHtcbiAgICAgICAgICBAaW5jbHVkZSBidXR0b24tZGlzYWJsZWQoJGNvbG9yLCBhdXRvKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC8vIEhvbGxvdyBzdHlsZVxuICAgIEBpZiAkYnV0dG9uLWZpbGwgIT0gaG9sbG93IHtcbiAgICAgICYuaG9sbG93IHtcbiAgICAgICAgQGluY2x1ZGUgYnV0dG9uLWhvbGxvdztcbiAgICAgICAgQGluY2x1ZGUgYnV0dG9uLWhvbGxvdy1zdHlsZTtcblxuICAgICAgICBAZWFjaCAkbmFtZSwgJGNvbG9yIGluICRidXR0b24tcGFsZXR0ZSB7XG4gICAgICAgICAgJi4jeyRuYW1lfSB7XG4gICAgICAgICAgICBAaW5jbHVkZSBidXR0b24taG9sbG93LXN0eWxlKCRjb2xvcik7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gQ2xlYXIgc3R5bGVcbiAgICBAaWYgJGJ1dHRvbi1maWxsICE9IGNsZWFyIHtcbiAgICAgICYuY2xlYXIge1xuICAgICAgICBAaW5jbHVkZSBidXR0b24taG9sbG93O1xuICAgICAgICBAaW5jbHVkZSBidXR0b24taG9sbG93LXN0eWxlO1xuXG4gICAgICAgICYsICY6aG92ZXIsICY6Zm9jdXMge1xuICAgICAgICAgICYsICYuZGlzYWJsZWQsICZbZGlzYWJsZWRdIHtcbiAgICAgICAgICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgQGVhY2ggJG5hbWUsICRjb2xvciBpbiAkYnV0dG9uLXBhbGV0dGUge1xuICAgICAgICAgICYuI3skbmFtZX0ge1xuICAgICAgICAgICAgQGluY2x1ZGUgYnV0dG9uLWhvbGxvdy1zdHlsZSgkY29sb3IpO1xuXG4gICAgICAgICAgICAmLCAmOmhvdmVyLFxuICAgICAgICAgICAgJjpmb2N1cyB7XG4gICAgICAgICAgICAgICYsXG4gICAgICAgICAgICAgICYuZGlzYWJsZWQsXG4gICAgICAgICAgICAgICZbZGlzYWJsZWRdIHtcbiAgICAgICAgICAgICAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gRHJvcGRvd24gYXJyb3dcbiAgICAmLmRyb3Bkb3duIHtcbiAgICAgIEBpbmNsdWRlIGJ1dHRvbi1kcm9wZG93bjtcblxuICAgICAgQGlmICRidXR0b24tZmlsbCA9PSBob2xsb3cge1xuICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgYm9yZGVyLXRvcC1jb2xvcjogJGJ1dHRvbi1iYWNrZ3JvdW5kO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgICYuaG9sbG93IHtcbiAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgIGJvcmRlci10b3AtY29sb3I6ICRidXR0b24tYmFja2dyb3VuZDtcbiAgICAgICAgfVxuXG4gICAgICAgIEBlYWNoICRuYW1lLCAkY29sb3IgaW4gJGJ1dHRvbi1wYWxldHRlIHtcbiAgICAgICAgICAmLiN7JG5hbWV9IHtcbiAgICAgICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICAgICAgYm9yZGVyLXRvcC1jb2xvcjogJGNvbG9yO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC8vIEJ1dHRvbiB3aXRoIGRyb3Bkb3duIGFycm93IG9ubHlcbiAgICAmLmFycm93LW9ubHk6OmFmdGVyIHtcbiAgICAgIHRvcDogLTAuMWVtO1xuICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgICBtYXJnaW4tI3skZ2xvYmFsLWxlZnR9OiAwO1xuICAgIH1cbiAgfVxuICBhLmJ1dHRvbiB7XG4gICAgJjpob3ZlcixcbiAgICAmOmZvY3VzIHtcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICB9XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGZvcm1zXG4vLy8vXG5cbi8vLyBGb250IGNvbG9yIG9mIHRleHQgaW5wdXRzLlxuLy8vIEB0eXBlIENvbG9yXG4kaW5wdXQtY29sb3I6ICRibGFjayAhZGVmYXVsdDtcblxuLy8vIEZvbnQgY29sb3Igb2YgcGxhY2Vob2xkZXIgdGV4dCB3aXRoaW4gdGV4dCBpbnB1dHMuXG4vLy8gQHR5cGUgQ29sb3JcbiRpbnB1dC1wbGFjZWhvbGRlci1jb2xvcjogJG1lZGl1bS1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gRm9udCBmYW1pbHkgb2YgdGV4dCBpbnB1dHMuXG4vLy8gQHR5cGUgRm9udFxuJGlucHV0LWZvbnQtZmFtaWx5OiBpbmhlcml0ICFkZWZhdWx0O1xuXG4vLy8gRm9udCBzaXplIG9mIHRleHQgaW5wdXRzLlxuLy8vIEB0eXBlIE51bWJlclxuJGlucHV0LWZvbnQtc2l6ZTogcmVtLWNhbGMoMTYpICFkZWZhdWx0O1xuXG4vLy8gRm9udCB3ZWlnaHQgb2YgdGV4dCBpbnB1dHMuXG4vLy8gQHR5cGUgS2V5d29yZFxuJGlucHV0LWZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ub3JtYWwgIWRlZmF1bHQ7XG5cbi8vLyBMaW5lIGhlaWdodCBvZiB0ZXh0IGlucHV0cy5cbi8vLyBAdHlwZSBLZXl3b3JkXG4kaW5wdXQtbGluZS1oZWlnaHQ6ICRnbG9iYWwtbGluZWhlaWdodCAhZGVmYXVsdDtcblxuLy8vIEJhY2tncm91bmQgY29sb3Igb2YgdGV4dCBpbnB1dHMuXG4vLy8gQHR5cGUgQ29sb3JcbiRpbnB1dC1iYWNrZ3JvdW5kOiAkd2hpdGUgIWRlZmF1bHQ7XG5cbi8vLyBCYWNrZ3JvdW5kIGNvbG9yIG9mIGZvY3VzZWQgb2YgdGV4dCBpbnB1dHMuXG4vLy8gQHR5cGUgQ29sb3JcbiRpbnB1dC1iYWNrZ3JvdW5kLWZvY3VzOiAkd2hpdGUgIWRlZmF1bHQ7XG5cbi8vLyBCYWNrZ3JvdW5kIGNvbG9yIG9mIGRpc2FibGVkIHRleHQgaW5wdXRzLlxuLy8vIEB0eXBlIENvbG9yXG4kaW5wdXQtYmFja2dyb3VuZC1kaXNhYmxlZDogJGxpZ2h0LWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBCb3JkZXIgYXJvdW5kIHRleHQgaW5wdXRzLlxuLy8vIEB0eXBlIEJvcmRlclxuJGlucHV0LWJvcmRlcjogMXB4IHNvbGlkICRtZWRpdW0tZ3JheSAhZGVmYXVsdDtcblxuLy8vIEJvcmRlciBhcm91bmQgZm9jdXNlZCB0ZXh0IGlucHV0cy5cbi8vLyBAdHlwZSBDb2xvclxuJGlucHV0LWJvcmRlci1mb2N1czogMXB4IHNvbGlkICRkYXJrLWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBQYWRkaW5nIG9mIHRleHQgaW5wdXRzLlxuLy8vIEB0eXBlIENvbG9yXG4kaW5wdXQtcGFkZGluZzogJGZvcm0tc3BhY2luZyAvIDIgIWRlZmF1bHQ7XG5cbi8vLyBCb3ggc2hhZG93IGluc2lkZSB0ZXh0IGlucHV0cyB3aGVuIG5vdCBmb2N1c2VkLlxuLy8vIEB0eXBlIFNoYWRvd1xuJGlucHV0LXNoYWRvdzogaW5zZXQgMCAxcHggMnB4IHJnYmEoJGJsYWNrLCAwLjEpICFkZWZhdWx0O1xuXG4vLy8gQm94IHNoYWRvdyBvdXRzaWRlIHRleHQgaW5wdXRzIHdoZW4gZm9jdXNlZC5cbi8vLyBAdHlwZSBTaGFkb3dcbiRpbnB1dC1zaGFkb3ctZm9jdXM6IDAgMCA1cHggJG1lZGl1bS1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gQ3Vyc29yIHRvIHVzZSB3aGVuIGhvdmVyaW5nIG92ZXIgYSBkaXNhYmxlZCB0ZXh0IGlucHV0LlxuLy8vIEB0eXBlIEN1cnNvclxuJGlucHV0LWN1cnNvci1kaXNhYmxlZDogbm90LWFsbG93ZWQgIWRlZmF1bHQ7XG5cbi8vLyBQcm9wZXJ0aWVzIHRvIHRyYW5zaXRpb24gb24gdGV4dCBpbnB1dHMuXG4vLy8gQHR5cGUgVHJhbnNpdGlvblxuJGlucHV0LXRyYW5zaXRpb246IGJveC1zaGFkb3cgMC41cywgYm9yZGVyLWNvbG9yIDAuMjVzIGVhc2UtaW4tb3V0ICFkZWZhdWx0O1xuXG4vLy8gRW5hYmxlcyB0aGUgdXAvZG93biBidXR0b25zIHRoYXQgQ2hyb21lIGFuZCBGaXJlZm94IGFkZCB0byBgPGlucHV0IHR5cGU9J251bWJlcic+YCBlbGVtZW50cy5cbi8vLyBAdHlwZSBCb29sZWFuXG4kaW5wdXQtbnVtYmVyLXNwaW5uZXJzOiB0cnVlICFkZWZhdWx0O1xuXG4vLy8gUmFkaXVzIGZvciB0ZXh0IGlucHV0cy5cbi8vLyBAdHlwZSBCb3JkZXJcbiRpbnB1dC1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzICFkZWZhdWx0O1xuXG4vLy8gQm9yZGVyIHJhZGl1cyBmb3IgZm9ybSBidXR0b25zLCBkZWZhdWx0ZWQgdG8gZ2xvYmFsLXJhZGl1cy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRmb3JtLWJ1dHRvbi1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzICFkZWZhdWx0O1xuXG5AbWl4aW4gZm9ybS1lbGVtZW50IHtcbiAgJGhlaWdodDogKCRpbnB1dC1mb250LXNpemUgKiB1bml0bGVzcy1jYWxjKCRpbnB1dC1saW5lLWhlaWdodCkpICsgKGdldC1zaWRlKCRpbnB1dC1wYWRkaW5nLCAndG9wJykgKyBnZXQtc2lkZSgkaW5wdXQtcGFkZGluZywgJ2JvdHRvbScpKSAtIHJlbS1jYWxjKDEpO1xuXG4gIGRpc3BsYXk6IGJsb2NrO1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAkaGVpZ2h0O1xuICBtYXJnaW46IDAgMCAkZm9ybS1zcGFjaW5nO1xuICBwYWRkaW5nOiAkaW5wdXQtcGFkZGluZztcblxuICBib3JkZXI6ICRpbnB1dC1ib3JkZXI7XG4gIGJvcmRlci1yYWRpdXM6ICRpbnB1dC1yYWRpdXM7XG4gIGJhY2tncm91bmQtY29sb3I6ICRpbnB1dC1iYWNrZ3JvdW5kO1xuICBib3gtc2hhZG93OiAkaW5wdXQtc2hhZG93O1xuXG4gIGZvbnQtZmFtaWx5OiAkaW5wdXQtZm9udC1mYW1pbHk7XG4gIGZvbnQtc2l6ZTogJGlucHV0LWZvbnQtc2l6ZTtcbiAgZm9udC13ZWlnaHQ6ICRpbnB1dC1mb250LXdlaWdodDtcbiAgbGluZS1oZWlnaHQ6ICRpbnB1dC1saW5lLWhlaWdodDtcbiAgY29sb3I6ICRpbnB1dC1jb2xvcjtcblxuICBAaWYgaGFzLXZhbHVlKCRpbnB1dC10cmFuc2l0aW9uKSB7XG4gICAgdHJhbnNpdGlvbjogJGlucHV0LXRyYW5zaXRpb247XG4gIH1cblxuICAvLyBGb2N1cyBzdGF0ZVxuICAmOmZvY3VzIHtcbiAgICBvdXRsaW5lOiBub25lO1xuICAgIGJvcmRlcjogJGlucHV0LWJvcmRlci1mb2N1cztcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaW5wdXQtYmFja2dyb3VuZC1mb2N1cztcbiAgICBib3gtc2hhZG93OiAkaW5wdXQtc2hhZG93LWZvY3VzO1xuXG4gICAgQGlmIGhhcy12YWx1ZSgkaW5wdXQtdHJhbnNpdGlvbikge1xuICAgICAgdHJhbnNpdGlvbjogJGlucHV0LXRyYW5zaXRpb247XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLWZvcm0tdGV4dCB7XG4gIC8vIFRleHQgaW5wdXRzXG4gICN7dGV4dC1pbnB1dHMoKX0sXG4gIHRleHRhcmVhIHtcbiAgICBAaW5jbHVkZSBmb3JtLWVsZW1lbnQ7XG4gICAgYXBwZWFyYW5jZTogbm9uZTtcbiAgfVxuXG4gIC8vIFRleHQgYXJlYXNcbiAgdGV4dGFyZWEge1xuICAgIG1heC13aWR0aDogMTAwJTtcblxuICAgICZbcm93c10ge1xuICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgIH1cbiAgfVxuXG4gIGlucHV0LFxuICB0ZXh0YXJlYSB7XG4gICAgLy8gUGxhY2Vob2xkZXIgdGV4dFxuICAgICY6OnBsYWNlaG9sZGVyIHtcbiAgICAgIGNvbG9yOiAkaW5wdXQtcGxhY2Vob2xkZXItY29sb3I7XG4gICAgfVxuXG4gICAgLy8gRGlzYWJsZWQvcmVhZG9ubHkgc3RhdGVcbiAgICAmOmRpc2FibGVkLFxuICAgICZbcmVhZG9ubHldIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRpbnB1dC1iYWNrZ3JvdW5kLWRpc2FibGVkO1xuICAgICAgY3Vyc29yOiAkaW5wdXQtY3Vyc29yLWRpc2FibGVkO1xuICAgIH1cbiAgfVxuXG4gIC8vIFJlc2V0IHN0eWxlcyBvbiBidXR0b24tbGlrZSBpbnB1dHNcbiAgW3R5cGU9J3N1Ym1pdCddLFxuICBbdHlwZT0nYnV0dG9uJ10ge1xuICAgIGFwcGVhcmFuY2U6IG5vbmU7XG4gICAgYm9yZGVyLXJhZGl1czogJGZvcm0tYnV0dG9uLXJhZGl1cztcbiAgfVxuXG4gIC8vIFJlc2V0IE5vcm1hbGl6ZSBzZXR0aW5nIGNvbnRlbnQtYm94IHRvIHNlYXJjaCBlbGVtZW50c1xuICBpbnB1dFt0eXBlPSdzZWFyY2gnXSB7IC8vIHNhc3MtbGludDpkaXNhYmxlLWxpbmUgbm8tcXVhbGlmeWluZy1lbGVtZW50c1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIH1cblxuICAvLyBOdW1iZXIgaW5wdXQgc3R5bGVzXG4gIFt0eXBlPSdudW1iZXInXSB7XG4gICAgQGlmIG5vdCAkaW5wdXQtbnVtYmVyLXNwaW5uZXJzIHtcbiAgICAgIC1tb3otYXBwZWFyYW5jZTogdGV4dGZpZWxkOyAvLyBzYXNzLWxpbnQ6ZGlzYWJsZS1saW5lIG5vLXZlbmRvci1wcmVmaXhcblxuICAgICAgJjo6LXdlYmtpdC1pbm5lci1zcGluLWJ1dHRvbixcbiAgICAgICY6Oi13ZWJraXQtb3V0ZXItc3Bpbi1idXR0b24ge1xuICAgICAgICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7IC8vIHNhc3MtbGludDpkaXNhYmxlLWxpbmUgbm8tdmVuZG9yLXByZWZpeFxuICAgICAgICBtYXJnaW46IDA7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBmb3Jtc1xuLy8vL1xuXG5AbWl4aW4gZm91bmRhdGlvbi1mb3JtLWNoZWNrYm94IHtcbiAgW3R5cGU9J2ZpbGUnXSxcbiAgW3R5cGU9J2NoZWNrYm94J10sXG4gIFt0eXBlPSdyYWRpbyddIHtcbiAgICBtYXJnaW46IDAgMCAkZm9ybS1zcGFjaW5nO1xuICB9XG5cbiAgLy8gU3R5bGVzIGZvciBpbnB1dC9sYWJlbCBzaWJsaW5nc1xuICBbdHlwZT0nY2hlY2tib3gnXSArIGxhYmVsLFxuICBbdHlwZT0ncmFkaW8nXSArIGxhYmVsIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xuXG4gICAgbWFyZ2luLSN7JGdsb2JhbC1sZWZ0fTogJGZvcm0tc3BhY2luZyAqIDAuNTtcbiAgICBtYXJnaW4tI3skZ2xvYmFsLXJpZ2h0fTogJGZvcm0tc3BhY2luZztcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuXG4gICAgJltmb3JdIHtcbiAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICB9XG4gIH1cblxuICAvLyBTdHlsZXMgZm9yIGlucHV0cyBpbnNpZGUgbGFiZWxzXG4gIGxhYmVsID4gW3R5cGU9J2NoZWNrYm94J10sXG4gIGxhYmVsID4gW3R5cGU9J3JhZGlvJ10ge1xuICAgIG1hcmdpbi0jeyRnbG9iYWwtcmlnaHR9OiAkZm9ybS1zcGFjaW5nICogMC41O1xuICB9XG5cbiAgLy8gTm9ybWFsaXplIGZpbGUgaW5wdXQgd2lkdGhcbiAgW3R5cGU9J2ZpbGUnXSB7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGZvcm1zXG4vLy8vXG5cbi8vLyBDb2xvciBmb3IgZm9ybSBsYWJlbHMuXG4vLy8gQHR5cGUgQ29sb3JcbiRmb3JtLWxhYmVsLWNvbG9yOiAkYmxhY2sgIWRlZmF1bHQ7XG5cbi8vLyBGb250IHNpemUgZm9yIGZvcm0gbGFiZWxzLlxuLy8vIEB0eXBlIE51bWJlclxuJGZvcm0tbGFiZWwtZm9udC1zaXplOiByZW0tY2FsYygxNCkgIWRlZmF1bHQ7XG5cbi8vLyBGb250IHdlaWdodCBmb3IgZm9ybSBsYWJlbHMuXG4vLy8gQHR5cGUgS2V5d29yZFxuJGZvcm0tbGFiZWwtZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LW5vcm1hbCAhZGVmYXVsdDtcblxuLy8vIExpbmUgaGVpZ2h0IGZvciBmb3JtIGxhYmVscy4gVGhlIGhpZ2hlciB0aGUgbnVtYmVyLCB0aGUgbW9yZSBzcGFjZSBiZXR3ZWVuIHRoZSBsYWJlbCBhbmQgaXRzIGlucHV0IGZpZWxkLlxuLy8vIEB0eXBlIE51bWJlclxuJGZvcm0tbGFiZWwtbGluZS1oZWlnaHQ6IDEuOCAhZGVmYXVsdDtcblxuQG1peGluIGZvcm0tbGFiZWwge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luOiAwO1xuXG4gIGZvbnQtc2l6ZTogJGZvcm0tbGFiZWwtZm9udC1zaXplO1xuICBmb250LXdlaWdodDogJGZvcm0tbGFiZWwtZm9udC13ZWlnaHQ7XG4gIGxpbmUtaGVpZ2h0OiAkZm9ybS1sYWJlbC1saW5lLWhlaWdodDtcbiAgY29sb3I6ICRmb3JtLWxhYmVsLWNvbG9yO1xufVxuXG5AbWl4aW4gZm9ybS1sYWJlbC1taWRkbGUge1xuICAkaW5wdXQtYm9yZGVyLXdpZHRoOiBnZXQtYm9yZGVyLXZhbHVlKCRpbnB1dC1ib3JkZXIsIHdpZHRoKTtcblxuICBtYXJnaW46IDAgMCAkZm9ybS1zcGFjaW5nO1xuICBwYWRkaW5nOiAoJGZvcm0tc3BhY2luZyAvIDIgKyByZW0tY2FsYygkaW5wdXQtYm9yZGVyLXdpZHRoKSkgMDtcbn1cblxuQG1peGluIGZvdW5kYXRpb24tZm9ybS1sYWJlbCB7XG4gIGxhYmVsIHtcbiAgICBAaW5jbHVkZSBmb3JtLWxhYmVsO1xuXG4gICAgJi5taWRkbGUge1xuICAgICAgQGluY2x1ZGUgZm9ybS1sYWJlbC1taWRkbGU7XG4gICAgfVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBmb3Jtc1xuLy8vL1xuXG4vLy8gRGVmYXVsdCBjb2xvciBmb3IgaGVscCB0ZXh0LlxuLy8vIEB0eXBlIENvbG9yXG4kaGVscHRleHQtY29sb3I6ICRibGFjayAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgZm9udCBzaXplIGZvciBoZWxwIHRleHQuXG4vLy8gQHR5cGUgTnVtYmVyXG4kaGVscHRleHQtZm9udC1zaXplOiByZW0tY2FsYygxMykgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGZvbnQgc3R5bGUgZm9yIGhlbHAgdGV4dC5cbi8vLyBAdHlwZSBLZXl3b3JkXG4kaGVscHRleHQtZm9udC1zdHlsZTogaXRhbGljICFkZWZhdWx0O1xuXG5AbWl4aW4gZm91bmRhdGlvbi1mb3JtLWhlbHB0ZXh0IHtcbiAgLmhlbHAtdGV4dCB7XG4gICAgJG1hcmdpbi10b3A6ICgkZm9ybS1zcGFjaW5nICogMC41KSAqIC0xO1xuXG4gICAgbWFyZ2luLXRvcDogJG1hcmdpbi10b3A7XG4gICAgZm9udC1zaXplOiAkaGVscHRleHQtZm9udC1zaXplO1xuICAgIGZvbnQtc3R5bGU6ICRoZWxwdGV4dC1mb250LXN0eWxlO1xuICAgIGNvbG9yOiAkaGVscHRleHQtY29sb3I7XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGZvcm1zXG4vLy8vXG5cbi8vLyBDb2xvciBvZiBsYWJlbHMgcHJlZml4ZWQgdG8gYW4gaW5wdXQuXG4vLy8gQHR5cGUgQ29sb3JcbiRpbnB1dC1wcmVmaXgtY29sb3I6ICRibGFjayAhZGVmYXVsdDtcblxuLy8vIEJhY2tncm91bmQgY29sb3Igb2YgbGFiZWxzIHByZWZpeGVkIHRvIGFuIGlucHV0LlxuLy8vIEB0eXBlIENvbG9yXG4kaW5wdXQtcHJlZml4LWJhY2tncm91bmQ6ICRsaWdodC1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gQm9yZGVyIGFyb3VuZCBsYWJlbHMgcHJlZml4ZWQgdG8gYW4gaW5wdXQuXG4vLy8gQHR5cGUgQm9yZGVyXG4kaW5wdXQtcHJlZml4LWJvcmRlcjogMXB4IHNvbGlkICRtZWRpdW0tZ3JheSAhZGVmYXVsdDtcblxuLy8vIExlZnQvcmlnaHQgcGFkZGluZyBvZiBhbiBwcmUvcG9zdGZpeGVkIGlucHV0IGxhYmVsXG4kaW5wdXQtcHJlZml4LXBhZGRpbmc6IDFyZW0gIWRlZmF1bHQ7XG5cbkBtaXhpbiBmb3VuZGF0aW9uLWZvcm0tcHJlcG9zdGZpeCB7XG4gICRoZWlnaHQ6ICgkaW5wdXQtZm9udC1zaXplICsgJGZvcm0tc3BhY2luZyAqIDEuNSk7XG5cbiAgLmlucHV0LWdyb3VwIHtcbiAgICBkaXNwbGF5OiBpZigkZ2xvYmFsLWZsZXhib3gsIGZsZXgsIHRhYmxlKTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXJnaW4tYm90dG9tOiAkZm9ybS1zcGFjaW5nO1xuXG4gICAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgICBhbGlnbi1pdGVtczogc3RyZXRjaDtcbiAgICB9XG5cbiAgICA+IDpmaXJzdC1jaGlsZCB7XG4gICAgICBib3JkZXItcmFkaXVzOiBpZigkZ2xvYmFsLXRleHQtZGlyZWN0aW9uID09IHJ0bCwgMCAkaW5wdXQtcmFkaXVzICRpbnB1dC1yYWRpdXMgMCwgJGlucHV0LXJhZGl1cyAwIDAgJGlucHV0LXJhZGl1cyk7XG4gICAgfVxuXG4gICAgPiA6bGFzdC1jaGlsZCB7XG4gICAgICA+ICoge1xuICAgICAgICBib3JkZXItcmFkaXVzOiBpZigkZ2xvYmFsLXRleHQtZGlyZWN0aW9uID09IHJ0bCwgJGlucHV0LXJhZGl1cyAwIDAgJGlucHV0LXJhZGl1cywgMCAkaW5wdXQtcmFkaXVzICRpbnB1dC1yYWRpdXMgMCk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgJWlucHV0LWdyb3VwLWNoaWxkIHtcbiAgICBtYXJnaW46IDA7XG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcblxuICAgIEBpZiBub3QgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAgIGRpc3BsYXk6IHRhYmxlLWNlbGw7XG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgIH1cbiAgfVxuXG4gIC5pbnB1dC1ncm91cC1sYWJlbCB7XG4gICAgQGV4dGVuZCAlaW5wdXQtZ3JvdXAtY2hpbGQ7XG4gICAgcGFkZGluZzogMCAkaW5wdXQtcHJlZml4LXBhZGRpbmc7XG4gICAgYm9yZGVyOiAkaW5wdXQtcHJlZml4LWJvcmRlcjtcbiAgICBiYWNrZ3JvdW5kOiAkaW5wdXQtcHJlZml4LWJhY2tncm91bmQ7XG5cbiAgICBjb2xvcjogJGlucHV0LXByZWZpeC1jb2xvcjtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcblxuICAgIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGZsZXg6IDAgMCBhdXRvO1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgd2lkdGg6IDElO1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgIH1cblxuICAgIEBpZiBoYXMtdmFsdWUoJGlucHV0LXByZWZpeC1ib3JkZXIpIHtcbiAgICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgICBib3JkZXItI3skZ2xvYmFsLXJpZ2h0fTogMDtcbiAgICAgIH1cblxuICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgYm9yZGVyLSN7JGdsb2JhbC1sZWZ0fTogMDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAuaW5wdXQtZ3JvdXAtZmllbGQge1xuICAgIEBleHRlbmQgJWlucHV0LWdyb3VwLWNoaWxkO1xuICAgIGJvcmRlci1yYWRpdXM6IDA7XG5cbiAgICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAgIGZsZXg6IDEgMSAwcHg7IC8vIHNhc3MtbGludDpkaXNhYmxlLWxpbmUgemVyby11bml0XG4gICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICBtaW4td2lkdGg6IDA7XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgIGhlaWdodDogJGhlaWdodDtcbiAgICB9XG4gIH1cblxuICAuaW5wdXQtZ3JvdXAtYnV0dG9uIHtcbiAgICBAZXh0ZW5kICVpbnB1dC1ncm91cC1jaGlsZDtcbiAgICBwYWRkaW5nLXRvcDogMDtcbiAgICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBmbGV4OiAwIDAgYXV0bztcbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgd2lkdGg6IDElO1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgIH1cblxuICAgIGEsXG4gICAgaW5wdXQsXG4gICAgYnV0dG9uLFxuICAgIGxhYmVsIHtcbiAgICAgIEBleHRlbmQgJWlucHV0LWdyb3VwLWNoaWxkO1xuXG4gICAgICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICBhbGlnbi1zZWxmOiBzdHJldGNoO1xuICAgICAgfVxuICAgICAgQGVsc2Uge1xuICAgICAgICBoZWlnaHQ6ICRoZWlnaHQ7XG4gICAgICB9XG4gICAgICBwYWRkaW5nLXRvcDogMDtcbiAgICAgIHBhZGRpbmctYm90dG9tOiAwO1xuICAgICAgZm9udC1zaXplOiAkaW5wdXQtZm9udC1zaXplO1xuICAgIH1cbiAgfVxuXG4gIC8vIFNwZWNpZmljaXR5IGJ1bXAgbmVlZGVkIHRvIHByZXZlbnQgb3ZlcnJpZGUgYnkgYnV0dG9uc1xuICBAaWYgbm90ICRnbG9iYWwtZmxleGJveCB7XG4gICAgICAuaW5wdXQtZ3JvdXAgLmlucHV0LWdyb3VwLWJ1dHRvbiB7XG4gICAgICAgICAgZGlzcGxheTogdGFibGUtY2VsbDtcbiAgICAgIH1cbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgZm9ybXNcbi8vLy9cblxuLy8vIERlZmF1bHQgYm9yZGVyIGFyb3VuZCBjdXN0b20gZmllbGRzZXRzLlxuLy8vIEB0eXBlIEJvcmRlclxuJGZpZWxkc2V0LWJvcmRlcjogMXB4IHNvbGlkICRtZWRpdW0tZ3JheSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgcGFkZGluZyBpbnNpZGUgY3VzdG9tIGZpZWxkc2V0cy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRmaWVsZHNldC1wYWRkaW5nOiByZW0tY2FsYygyMCkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IG1hcmdpbiBhcm91bmQgY3VzdG9tIGZpZWxkc2V0cy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRmaWVsZHNldC1tYXJnaW46IHJlbS1jYWxjKDE4IDApICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBwYWRkaW5nIGJldHdlZW4gdGhlIGxlZ2VuZCB0ZXh0IGFuZCBmaWVsZHNldCBib3JkZXIuXG4vLy8gQHR5cGUgTnVtYmVyXG4kbGVnZW5kLXBhZGRpbmc6IHJlbS1jYWxjKDAgMykgIWRlZmF1bHQ7XG5cbkBtaXhpbiBmaWVsZHNldCB7XG4gIG1hcmdpbjogJGZpZWxkc2V0LW1hcmdpbjtcbiAgcGFkZGluZzogJGZpZWxkc2V0LXBhZGRpbmc7XG4gIGJvcmRlcjogJGZpZWxkc2V0LWJvcmRlcjtcblxuICBsZWdlbmQge1xuICAgIC8vIENvdmVycyB1cCB0aGUgZmllbGRzZXQncyBib3JkZXIgdG8gY3JlYXRlIGFydGlmaWNpYWwgcGFkZGluZ1xuICAgIG1hcmdpbjogMDtcbiAgICBtYXJnaW4tI3skZ2xvYmFsLWxlZnR9OiByZW0tY2FsYygtMyk7XG4gICAgcGFkZGluZzogJGxlZ2VuZC1wYWRkaW5nO1xuICB9XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLWZvcm0tZmllbGRzZXQge1xuICBmaWVsZHNldCB7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgYm9yZGVyOiAwO1xuICB9XG5cbiAgbGVnZW5kIHtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgbWFyZ2luLWJvdHRvbTogJGZvcm0tc3BhY2luZyAqIDAuNTtcbiAgfVxuXG4gIC5maWVsZHNldCB7XG4gICAgQGluY2x1ZGUgZmllbGRzZXQ7XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGZvcm1zXG4vLy8vXG5cbi8vLyBCYWNrZ3JvdW5kIGNvbG9yIGZvciBzZWxlY3QgbWVudXMuXG4vLy8gQHR5cGUgQ29sb3JcbiRzZWxlY3QtYmFja2dyb3VuZDogJHdoaXRlICFkZWZhdWx0O1xuXG4vLy8gQ29sb3Igb2YgdGhlIGRyb3Bkb3duIHRyaWFuZ2xlIGluc2lkZSBzZWxlY3QgbWVudXMuIFNldCB0byBgdHJhbnNwYXJlbnRgIHRvIHJlbW92ZSBpdCBlbnRpcmVseS5cbi8vLyBAdHlwZSBDb2xvclxuJHNlbGVjdC10cmlhbmdsZS1jb2xvcjogJGRhcmstZ3JheSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgcmFkaXVzIGZvciBzZWxlY3QgbWVudXMuXG4vLy8gQHR5cGUgQ29sb3JcbiRzZWxlY3QtcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cyAhZGVmYXVsdDtcblxuQG1peGluIGZvcm0tc2VsZWN0IHtcbiAgJGhlaWdodDogKCRpbnB1dC1mb250LXNpemUgKiB1bml0bGVzcy1jYWxjKCRpbnB1dC1saW5lLWhlaWdodCkpICsgKGdldC1zaWRlKCRpbnB1dC1wYWRkaW5nLCAndG9wJykgKyBnZXQtc2lkZSgkaW5wdXQtcGFkZGluZywgJ2JvdHRvbScpKSAtIHJlbS1jYWxjKDEpO1xuXG4gIGhlaWdodDogJGhlaWdodDtcbiAgbWFyZ2luOiAwIDAgJGZvcm0tc3BhY2luZztcbiAgcGFkZGluZzogJGlucHV0LXBhZGRpbmc7XG5cbiAgYXBwZWFyYW5jZTogbm9uZTtcbiAgYm9yZGVyOiAkaW5wdXQtYm9yZGVyO1xuICBib3JkZXItcmFkaXVzOiAkc2VsZWN0LXJhZGl1cztcbiAgYmFja2dyb3VuZC1jb2xvcjogJHNlbGVjdC1iYWNrZ3JvdW5kO1xuXG4gIGZvbnQtZmFtaWx5OiAkaW5wdXQtZm9udC1mYW1pbHk7XG4gIGZvbnQtc2l6ZTogJGlucHV0LWZvbnQtc2l6ZTtcbiAgZm9udC13ZWlnaHQ6ICRpbnB1dC1mb250LXdlaWdodDtcbiAgbGluZS1oZWlnaHQ6ICRpbnB1dC1saW5lLWhlaWdodDtcbiAgY29sb3I6ICRpbnB1dC1jb2xvcjtcblxuICBAaWYgJHNlbGVjdC10cmlhbmdsZS1jb2xvciAhPSB0cmFuc3BhcmVudCB7XG4gICAgQGluY2x1ZGUgYmFja2dyb3VuZC10cmlhbmdsZSgkc2VsZWN0LXRyaWFuZ2xlLWNvbG9yKTtcbiAgICBiYWNrZ3JvdW5kLW9yaWdpbjogY29udGVudC1ib3g7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogJGdsb2JhbC1yaWdodCAoLSRmb3JtLXNwYWNpbmcpIGNlbnRlcjtcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgIGJhY2tncm91bmQtc2l6ZTogOXB4IDZweDtcblxuICAgIHBhZGRpbmctI3skZ2xvYmFsLXJpZ2h0fTogKCRmb3JtLXNwYWNpbmcgKiAxLjUpO1xuICB9XG5cbiAgQGlmIGhhcy12YWx1ZSgkaW5wdXQtdHJhbnNpdGlvbikge1xuICAgIHRyYW5zaXRpb246ICRpbnB1dC10cmFuc2l0aW9uO1xuICB9XG5cbiAgLy8gRm9jdXMgc3RhdGVcbiAgJjpmb2N1cyB7XG4gICAgb3V0bGluZTogbm9uZTtcbiAgICBib3JkZXI6ICRpbnB1dC1ib3JkZXItZm9jdXM7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGlucHV0LWJhY2tncm91bmQtZm9jdXM7XG4gICAgYm94LXNoYWRvdzogJGlucHV0LXNoYWRvdy1mb2N1cztcblxuICAgIEBpZiBoYXMtdmFsdWUoJGlucHV0LXRyYW5zaXRpb24pIHtcbiAgICAgIHRyYW5zaXRpb246ICRpbnB1dC10cmFuc2l0aW9uO1xuICAgIH1cbiAgfVxuXG4gIC8vIERpc2FibGVkIHN0YXRlXG4gICY6ZGlzYWJsZWQge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRpbnB1dC1iYWNrZ3JvdW5kLWRpc2FibGVkO1xuICAgIGN1cnNvcjogJGlucHV0LWN1cnNvci1kaXNhYmxlZDtcbiAgfVxuXG4gIC8vIEhpZGUgdGhlIGRyb3Bkb3duIGFycm93IHNob3duIGluIG5ld2VyIElFIHZlcnNpb25zXG4gICY6Oi1tcy1leHBhbmQge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cblxuICAmW211bHRpcGxlXSB7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XG4gIH1cbn1cblxuQG1peGluIGZvdW5kYXRpb24tZm9ybS1zZWxlY3Qge1xuICBzZWxlY3Qge1xuICAgIEBpbmNsdWRlIGZvcm0tc2VsZWN0O1xuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBhYmlkZVxuLy8vL1xuXG4vLy8gU2V0cyBpZiBlcnJvciBzdHlsZXMgc2hvdWxkIGJlIGFkZGVkIHRvIGlucHV0cy5cbi8vLyBAdHlwZSBCb29sZWFuXG4kYWJpZGUtaW5wdXRzOiB0cnVlICFkZWZhdWx0O1xuXG4vLy8gU2V0cyBpZiBlcnJvciBzdHlsZXMgc2hvdWxkIGJlIGFkZGVkIHRvIGxhYmVscy5cbi8vLyBAdHlwZSBCb29sZWFuXG4kYWJpZGUtbGFiZWxzOiB0cnVlICFkZWZhdWx0O1xuXG4vLy8gQmFja2dyb3VuZCBjb2xvciB0byB1c2UgZm9yIGludmFsaWQgdGV4dCBpbnB1dHMuXG4vLy8gQHR5cGUgQ29sb3JcbiRpbnB1dC1iYWNrZ3JvdW5kLWludmFsaWQ6IGdldC1jb2xvcihhbGVydCkgIWRlZmF1bHQ7XG5cbi8vLyBDb2xvciB0byB1c2UgZm9yIGxhYmVscyBvZiBpbnZhbGlkIGlucHV0cy5cbi8vLyBAdHlwZSBDb2xvclxuJGZvcm0tbGFiZWwtY29sb3ItaW52YWxpZDogZ2V0LWNvbG9yKGFsZXJ0KSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgZm9udCBjb2xvciBmb3IgZm9ybSBlcnJvciB0ZXh0LlxuLy8vIEB0eXBlIENvbG9yXG4kaW5wdXQtZXJyb3ItY29sb3I6IGdldC1jb2xvcihhbGVydCkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGZvbnQgc2l6ZSBmb3IgZm9ybSBlcnJvciB0ZXh0LlxuLy8vIEB0eXBlIE51bWJlclxuJGlucHV0LWVycm9yLWZvbnQtc2l6ZTogcmVtLWNhbGMoMTIpICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBmb250IHdlaWdodCBmb3IgZm9ybSBlcnJvciB0ZXh0LlxuLy8vIEB0eXBlIEtleXdvcmRcbiRpbnB1dC1lcnJvci1mb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtYm9sZCAhZGVmYXVsdDtcblxuLy8vIFN0eWxlcyB0aGUgYmFja2dyb3VuZCBhbmQgYm9yZGVyIG9mIGFuIGlucHV0IGZpZWxkIHRvIGhhdmUgYW4gZXJyb3Igc3RhdGUuXG4vLy9cbi8vLyBAcGFyYW0ge0NvbG9yfSAkYmFja2dyb3VuZCBbJGFsZXJ0LWNvbG9yXSAtIENvbG9yIHRvIHVzZSBmb3IgdGhlIGJhY2tncm91bmQgYW5kIGJvcmRlci5cbi8vLyBAcGFyYW0ge051bWJlcn0gJGJhY2tncm91bmQtbGlnaHRlbiBbMTAlXSAtIExpZ2h0bmVzcyBsZXZlbCBvZiB0aGUgYmFja2dyb3VuZCBjb2xvci5cbkBtaXhpbiBmb3JtLWlucHV0LWVycm9yKFxuICAkYmFja2dyb3VuZDogJGlucHV0LWJhY2tncm91bmQtaW52YWxpZCxcbiAgJGJhY2tncm91bmQtbGlnaHRlbjogMTAlXG4pIHtcbiAgJjpub3QoOmZvY3VzKSB7XG4gICAgYm9yZGVyLWNvbG9yOiAkYmFja2dyb3VuZDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBtaXgoJGJhY2tncm91bmQsICR3aGl0ZSwgJGJhY2tncm91bmQtbGlnaHRlbik7XG4gICAgJjo6cGxhY2Vob2xkZXIge1xuICAgICAgY29sb3I6ICRiYWNrZ3JvdW5kO1xuICAgIH1cbiAgfVxufVxuXG4vLy8gQWRkcyBlcnJvciBzdHlsZXMgdG8gYSBmb3JtIGVsZW1lbnQsIHVzaW5nIHRoZSB2YWx1ZXMgaW4gdGhlIHNldHRpbmdzIGZpbGUuXG5AbWl4aW4gZm9ybS1lcnJvciB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIG1hcmdpbi10b3A6ICRmb3JtLXNwYWNpbmcgKiAtMC41O1xuICBtYXJnaW4tYm90dG9tOiAkZm9ybS1zcGFjaW5nO1xuXG4gIGZvbnQtc2l6ZTogJGlucHV0LWVycm9yLWZvbnQtc2l6ZTtcbiAgZm9udC13ZWlnaHQ6ICRpbnB1dC1lcnJvci1mb250LXdlaWdodDtcbiAgY29sb3I6ICRpbnB1dC1lcnJvci1jb2xvcjtcbn1cblxuQG1peGluIGZvdW5kYXRpb24tZm9ybS1lcnJvciB7XG4gIEBpZiAkYWJpZGUtaW5wdXRzIHtcbiAgICAvLyBFcnJvciBjbGFzcyBmb3IgaW52YWxpZCBpbnB1dHNcbiAgICAuaXMtaW52YWxpZC1pbnB1dCB7XG4gICAgICBAaW5jbHVkZSBmb3JtLWlucHV0LWVycm9yO1xuICAgIH1cbiAgfVxuXG4gIEBpZiAkYWJpZGUtbGFiZWxzIHtcbiAgICAvLyBFcnJvciBjbGFzcyBmb3IgbGFiZWxzIG9mIGludmFsaWQgb3V0cHV0c1xuICAgIC5pcy1pbnZhbGlkLWxhYmVsIHtcbiAgICAgIGNvbG9yOiAkZm9ybS1sYWJlbC1jb2xvci1pbnZhbGlkO1xuICAgIH1cbiAgfVxuXG4gIC8vIEZvcm0gZXJyb3IgZWxlbWVudFxuICAuZm9ybS1lcnJvciB7XG4gICAgQGluY2x1ZGUgZm9ybS1lcnJvcjtcblxuICAgICYuaXMtdmlzaWJsZSB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICB9XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGFjY29yZGlvblxuLy8vL1xuXG4vLy8gRGVmYXVsdCBiYWNrZ3JvdW5kIGNvbG9yIG9mIGFuIGFjY29yZGlvbiBncm91cC5cbi8vLyBAdHlwZSBDb2xvclxuJGFjY29yZGlvbi1iYWNrZ3JvdW5kOiAkd2hpdGUgIWRlZmF1bHQ7XG5cbi8vLyBJZiBgdHJ1ZWAsIGFkZHMgcGx1cyBhbmQgbWludXMgaWNvbnMgdG8gdGhlIHNpZGUgb2YgZWFjaCBhY2NvcmRpb24gdGl0bGUuXG4vLy8gQHR5cGUgQm9vbGVhblxuJGFjY29yZGlvbi1wbHVzbWludXM6IHRydWUgIWRlZmF1bHQ7XG5cbi8vLyBGb250IHNpemUgb2YgYWNjb3JkaW9uIHRpdGxlcy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRhY2NvcmRpb24tdGl0bGUtZm9udC1zaXplOiByZW0tY2FsYygxMikgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHRleHQgY29sb3IgZm9yIGl0ZW1zIGluIGEgTWVudS5cbi8vLyBAdHlwZSBDb2xvclxuJGFjY29yZGlvbi1pdGVtLWNvbG9yOiAkcHJpbWFyeS1jb2xvciAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgYmFja2dyb3VuZCBjb2xvciBvbiBob3ZlciBmb3IgaXRlbXMgaW4gYSBNZW51LlxuLy8vIEB0eXBlIENvbG9yXG4kYWNjb3JkaW9uLWl0ZW0tYmFja2dyb3VuZC1ob3ZlcjogJGxpZ2h0LWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHBhZGRpbmcgb2YgYW4gYWNjb3JkaW9uIGl0ZW0uXG4vLy8gQHR5cGUgTnVtYmVyIHwgTGlzdFxuJGFjY29yZGlvbi1pdGVtLXBhZGRpbmc6IDEuMjVyZW0gMXJlbSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgYmFja2dyb3VuZCBjb2xvciBvZiB0YWIgY29udGVudC5cbi8vLyBAdHlwZSBDb2xvclxuJGFjY29yZGlvbi1jb250ZW50LWJhY2tncm91bmQ6ICR3aGl0ZSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgYm9yZGVyIGNvbG9yIG9mIHRhYiBjb250ZW50LlxuLy8vIEB0eXBlIENvbG9yXG4kYWNjb3JkaW9uLWNvbnRlbnQtYm9yZGVyOiAxcHggc29saWQgJGxpZ2h0LWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHRleHQgY29sb3Igb2YgdGFiIGNvbnRlbnQuXG4vLy8gQHR5cGUgQ29sb3JcbiRhY2NvcmRpb24tY29udGVudC1jb2xvcjogJGJvZHktZm9udC1jb2xvciAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgcGFkZGluZyBmb3IgdGFiIGNvbnRlbnQuXG4vLy8gQHR5cGUgTnVtYmVyIHwgTGlzdFxuJGFjY29yZGlvbi1jb250ZW50LXBhZGRpbmc6IDFyZW0gIWRlZmF1bHQ7XG5cbi8vLyBBZGRzIHN0eWxlcyBmb3IgYW4gYWNjb3JkaW9uIGNvbnRhaW5lci4gQXBwbHkgdGhpcyB0byB0aGUgc2FtZSBlbGVtZW50IHRoYXQgZ2V0cyBgZGF0YS1hY2NvcmRpb25gLlxuQG1peGluIGFjY29yZGlvbi1jb250YWluZXIgKFxuICAkYmFja2dyb3VuZDogJGFjY29yZGlvbi1iYWNrZ3JvdW5kXG4pIHtcbiAgbWFyZ2luLSN7JGdsb2JhbC1sZWZ0fTogMDtcbiAgYmFja2dyb3VuZDogJGJhY2tncm91bmQ7XG4gIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcbiAgJltkaXNhYmxlZF0ge1xuICAgIC5hY2NvcmRpb24tdGl0bGUge1xuICAgICAgY3Vyc29yOiBub3QtYWxsb3dlZDtcbiAgICB9XG4gIH1cbn1cblxuLy8vIEFkZHMgc3R5bGVzIGZvciB0aGUgYWNjb3JkaW9uIGl0ZW0uIEFwcGx5IHRoaXMgdG8gdGhlIGxpc3QgaXRlbSB3aXRoaW4gYW4gYWNjb3JkaW9uIHVsLlxuQG1peGluIGFjY29yZGlvbi1pdGVtIHtcbiAgJjpmaXJzdC1jaGlsZCA+IDpmaXJzdC1jaGlsZCB7XG4gICAgYm9yZGVyLXJhZGl1czogJGdsb2JhbC1yYWRpdXMgJGdsb2JhbC1yYWRpdXMgMCAwO1xuICB9XG5cbiAgJjpsYXN0LWNoaWxkID4gOmxhc3QtY2hpbGQge1xuICAgIGJvcmRlci1yYWRpdXM6IDAgMCAkZ2xvYmFsLXJhZGl1cyAkZ2xvYmFsLXJhZGl1cztcbiAgfVxufVxuXG4vLy8gQWRkcyBzdHlsZXMgZm9yIHRoZSB0aXRsZSBvZiBhbiBhY2NvcmRpb24gaXRlbS4gQXBwbHkgdGhpcyB0byB0aGUgbGluayB3aXRoaW4gYW4gYWNjb3JkaW9uIGl0ZW0uXG5AbWl4aW4gYWNjb3JkaW9uLXRpdGxlIChcbiAgJHBhZGRpbmc6ICRhY2NvcmRpb24taXRlbS1wYWRkaW5nLFxuICAkZm9udC1zaXplOiAkYWNjb3JkaW9uLXRpdGxlLWZvbnQtc2l6ZSxcbiAgJGNvbG9yOiAkYWNjb3JkaW9uLWl0ZW0tY29sb3IsXG4gICRib3JkZXI6ICRhY2NvcmRpb24tY29udGVudC1ib3JkZXIsXG4gICRiYWNrZ3JvdW5kLWhvdmVyOiAkYWNjb3JkaW9uLWl0ZW0tYmFja2dyb3VuZC1ob3ZlclxuKSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBhZGRpbmc6ICRwYWRkaW5nO1xuXG4gIGJvcmRlcjogJGJvcmRlcjtcbiAgYm9yZGVyLWJvdHRvbTogMDtcblxuICBmb250LXNpemU6ICRmb250LXNpemU7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICBjb2xvcjogJGNvbG9yO1xuXG4gIDpsYXN0LWNoaWxkOm5vdCguaXMtYWN0aXZlKSA+ICYge1xuICAgIGJvcmRlci1ib3R0b206ICRib3JkZXI7XG4gICAgYm9yZGVyLXJhZGl1czogMCAwICRnbG9iYWwtcmFkaXVzICRnbG9iYWwtcmFkaXVzO1xuICB9XG5cbiAgJjpob3ZlcixcbiAgJjpmb2N1cyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGJhY2tncm91bmQtaG92ZXI7XG4gIH1cblxuICBAaWYgJGFjY29yZGlvbi1wbHVzbWludXMge1xuICAgICY6OmJlZm9yZSB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDUwJTtcbiAgICAgICN7JGdsb2JhbC1yaWdodH06IDFyZW07XG4gICAgICBtYXJnaW4tdG9wOiAtMC41cmVtO1xuICAgICAgY29udGVudDogJysnO1xuICAgIH1cblxuICAgIC5pcy1hY3RpdmUgPiAmOjpiZWZvcmUge1xuICAgICAgY29udGVudDogJ1xcMjAxMyc7XG4gICAgfVxuICB9XG59XG5cbi8vLyBBZGRzIHN0eWxlcyBmb3IgYWNjb3JkaW9uIGNvbnRlbnQuIEFwcGx5IHRoaXMgdG8gdGhlIGNvbnRlbnQgcGFuZSBiZWxvdyBhbiBhY2NvcmRpb24gaXRlbSdzIHRpdGxlLlxuQG1peGluIGFjY29yZGlvbi1jb250ZW50IChcbiAgJHBhZGRpbmc6ICRhY2NvcmRpb24tY29udGVudC1wYWRkaW5nLFxuICAkYm9yZGVyOiAkYWNjb3JkaW9uLWNvbnRlbnQtYm9yZGVyLFxuICAkYmFja2dyb3VuZDogJGFjY29yZGlvbi1jb250ZW50LWJhY2tncm91bmQsXG4gICRjb2xvcjogJGFjY29yZGlvbi1jb250ZW50LWNvbG9yXG4pIHtcbiAgZGlzcGxheTogbm9uZTtcbiAgcGFkZGluZzogJHBhZGRpbmc7XG5cbiAgYm9yZGVyOiAkYm9yZGVyO1xuICBib3JkZXItYm90dG9tOiAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmFja2dyb3VuZDtcblxuICBjb2xvcjogJGNvbG9yO1xuXG4gIDpsYXN0LWNoaWxkID4gJjpsYXN0LWNoaWxkIHtcbiAgICBib3JkZXItYm90dG9tOiAkYm9yZGVyO1xuICB9XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLWFjY29yZGlvbiB7XG4gIC5hY2NvcmRpb24ge1xuICAgIEBpbmNsdWRlIGFjY29yZGlvbi1jb250YWluZXI7XG4gIH1cblxuICAuYWNjb3JkaW9uLWl0ZW0ge1xuICAgIEBpbmNsdWRlIGFjY29yZGlvbi1pdGVtO1xuICB9XG5cbiAgLmFjY29yZGlvbi10aXRsZSB7XG4gICAgQGluY2x1ZGUgYWNjb3JkaW9uLXRpdGxlO1xuICB9XG5cbiAgLmFjY29yZGlvbi1jb250ZW50IHtcbiAgICBAaW5jbHVkZSBhY2NvcmRpb24tY29udGVudDtcbiAgfVxufVxuIiwiLy8vL1xuLy8vIEBncm91cCBhY2NvcmRpb24tbWVudVxuLy8vL1xuXG4vLy8gU2V0cyBhY2NvcmRpb24gbWVudSBwYWRkaW5nLlxuLy8vIEB0eXBlIE51bWJlclxuJGFjY29yZGlvbm1lbnUtcGFkZGluZzogJGdsb2JhbC1tZW51LXBhZGRpbmcgIWRlZmF1bHQ7XG5cbi8vLyBTZXRzIGFjY29yZGlvbiBtZW51IG5lc3RlZCBtYXJnaW5cbi8vLyBAdHlwZSBOdW1iZXJcbiRhY2NvcmRpb25tZW51LW5lc3RlZC1tYXJnaW46ICRnbG9iYWwtbWVudS1uZXN0ZWQtbWFyZ2luICFkZWZhdWx0O1xuXG4vLy8gU2V0cyBhY2NvcmRpb24gbWVudSBzdWJtZW51IHBhZGRpbmcuXG4vLy8gQHR5cGUgTnVtYmVyXG4kYWNjb3JkaW9ubWVudS1zdWJtZW51LXBhZGRpbmc6ICRhY2NvcmRpb25tZW51LXBhZGRpbmcgIWRlZmF1bHQ7XG5cbi8vLyBTZXRzIGlmIGFjY29yZGlvbiBtZW51cyBoYXZlIHRoZSBkZWZhdWx0IGFycm93IHN0eWxlcy5cbi8vLyBAdHlwZSBCb29sZWFuXG4kYWNjb3JkaW9ubWVudS1hcnJvd3M6IHRydWUgIWRlZmF1bHQ7XG5cbi8vLyBTZXRzIGFjY29yZGlvbiBtZW51IGFycm93IGNvbG9yIGlmIGFycm93IGlzIHVzZWQuXG4vLy8gQHR5cGUgQ29sb3JcbiRhY2NvcmRpb25tZW51LWFycm93LWNvbG9yOiAkcHJpbWFyeS1jb2xvciAhZGVmYXVsdDtcblxuLy8vIFNldHMgYWNjb3JkaW9uIG1lbnUgaXRlbSBwYWRkaW5nLlxuLy8vIEB0eXBlIENvbG9yXG4kYWNjb3JkaW9ubWVudS1pdGVtLWJhY2tncm91bmQ6IG51bGwgIWRlZmF1bHQ7XG5cbi8vLyBTZXRzIGFjY29yZGlvbiBtZW51IGl0ZW0gYm9yZGVyLlxuLy8vIEB0eXBlIENvbG9yXG4kYWNjb3JkaW9ubWVudS1ib3JkZXI6IG51bGwgIWRlZmF1bHQ7XG5cbi8vLyBTZXRzIGFjY29yZGlvbiBtZW51IGl0ZW0gcGFkZGluZy5cbi8vLyBAdHlwZSBDb2xvclxuJGFjY29yZGlvbm1lbnUtc3VibWVudS10b2dnbGUtYmFja2dyb3VuZDogbnVsbCAhZGVmYXVsdDtcblxuLy8vIFNldHMgYWNjb3JkaW9uIG1lbnUgaXRlbSBwYWRkaW5nLlxuLy8vIEB0eXBlIExpc3RcbiRhY2NvcmRpb24tc3VibWVudS10b2dnbGUtYm9yZGVyOiAkYWNjb3JkaW9ubWVudS1ib3JkZXIgIWRlZmF1bHQ7XG5cbi8vLyBTZXRzIGFjY29yZGlvbiBtZW51IHN1Ym1lbnUgdG9nZ2xlIGJhY2tncm91bmQgd2lkdGguXG4vLy8gQHR5cGUgTnVtYmVyXG4kYWNjb3JkaW9ubWVudS1zdWJtZW51LXRvZ2dsZS13aWR0aDogNDBweCAhZGVmYXVsdDtcblxuLy8vIFNldHMgYWNjb3JkaW9uIG1lbnUgc3VibWVudSB0b2dnbGUgYmFja2dyb3VuZCBoZWlnaHQuXG4vLy8gQHR5cGUgTnVtYmVyXG4kYWNjb3JkaW9ubWVudS1zdWJtZW51LXRvZ2dsZS1oZWlnaHQ6ICRhY2NvcmRpb25tZW51LXN1Ym1lbnUtdG9nZ2xlLXdpZHRoICFkZWZhdWx0O1xuXG4vLy8gU2V0cyBhY2NvcmRpb24gbWVudSBhcnJvdyBzaXplIGlmIGFycm93IGlzIHVzZWQuXG4vLy8gQHR5cGUgTGVuZ3RoXG4kYWNjb3JkaW9ubWVudS1hcnJvdy1zaXplOiA2cHggIWRlZmF1bHQ7XG5cbkBtaXhpbiB6Zi1hY2NvcmRpb24tbWVudS1sZWZ0LXJpZ2h0LWFycm93cyB7XG4gIC5pcy1hY2NvcmRpb24tc3VibWVudS1wYXJlbnQ6bm90KC5oYXMtc3VibWVudS10b2dnbGUpID4gYSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgJjo6YWZ0ZXIge1xuICAgICAgQGluY2x1ZGUgY3NzLXRyaWFuZ2xlKCRhY2NvcmRpb25tZW51LWFycm93LXNpemUsICRhY2NvcmRpb25tZW51LWFycm93LWNvbG9yLCBkb3duKTtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogNTAlO1xuICAgICAgbWFyZ2luLXRvcDogLTEgKiAoJGFjY29yZGlvbm1lbnUtYXJyb3ctc2l6ZSAvIDIpO1xuICAgICAgI3skZ2xvYmFsLXJpZ2h0fTogMXJlbTtcbiAgICB9XG4gIH1cbiAgJi5hbGlnbi1sZWZ0IC5pcy1hY2NvcmRpb24tc3VibWVudS1wYXJlbnQgPiBhOjphZnRlciB7XG4gICAgbGVmdDogYXV0bztcbiAgICByaWdodDogMXJlbTtcbiAgfVxuICAmLmFsaWduLXJpZ2h0IC5pcy1hY2NvcmRpb24tc3VibWVudS1wYXJlbnQgPiBhOjphZnRlciB7XG4gICAgcmlnaHQ6IGF1dG87XG4gICAgbGVmdDogMXJlbTtcbiAgfVxufVxuQG1peGluIGZvdW5kYXRpb24tYWNjb3JkaW9uLW1lbnUge1xuXG4gIC5hY2NvcmRpb24tbWVudSB7XG4gICAgQGlmICRhY2NvcmRpb25tZW51LWJvcmRlciB7XG4gICAgICBib3JkZXItYm90dG9tOiAkYWNjb3JkaW9ubWVudS1ib3JkZXI7XG4gICAgfVxuXG4gICAgbGkge1xuICAgICAgQGlmICRhY2NvcmRpb25tZW51LWJvcmRlciB7XG4gICAgICAgIGJvcmRlci10b3A6ICRhY2NvcmRpb25tZW51LWJvcmRlcjtcbiAgICAgICAgYm9yZGVyLXJpZ2h0OiAkYWNjb3JkaW9ubWVudS1ib3JkZXI7XG4gICAgICAgIGJvcmRlci1sZWZ0OiAkYWNjb3JkaW9ubWVudS1ib3JkZXI7XG4gICAgICB9XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICB9XG5cbiAgICBhIHtcbiAgICAgIEBpZiAkYWNjb3JkaW9ubWVudS1pdGVtLWJhY2tncm91bmQge1xuICAgICAgICBiYWNrZ3JvdW5kOiAkYWNjb3JkaW9ubWVudS1pdGVtLWJhY2tncm91bmQ7XG4gICAgICB9XG4gICAgICBwYWRkaW5nOiAkYWNjb3JkaW9ubWVudS1wYWRkaW5nO1xuICAgIH1cbiAgICBcbiAgICAuaXMtYWNjb3JkaW9uLXN1Ym1lbnUgYSB7XG4gICAgICBwYWRkaW5nOiAkYWNjb3JkaW9ubWVudS1zdWJtZW51LXBhZGRpbmc7XG4gICAgfVxuXG4gICAgLm5lc3RlZC5pcy1hY2NvcmRpb24tc3VibWVudSB7XG4gICAgICBAaW5jbHVkZSBtZW51LW5lc3RlZCgkYWNjb3JkaW9ubWVudS1uZXN0ZWQtbWFyZ2luKTtcbiAgICB9XG5cbiAgICAmLmFsaWduLSN7JGdsb2JhbC1yaWdodH0ge1xuICAgICAgLm5lc3RlZC5pcy1hY2NvcmRpb24tc3VibWVudSB7XG4gICAgICAgIEBpbmNsdWRlIG1lbnUtbmVzdGVkKCRhY2NvcmRpb25tZW51LW5lc3RlZC1tYXJnaW4sIHJpZ2h0KTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBAaWYgJGFjY29yZGlvbm1lbnUtYXJyb3dzIHtcbiAgICAgIEBpbmNsdWRlIHpmLWFjY29yZGlvbi1tZW51LWxlZnQtcmlnaHQtYXJyb3dzO1xuXG4gICAgICAuaXMtYWNjb3JkaW9uLXN1Ym1lbnUtcGFyZW50W2FyaWEtZXhwYW5kZWQ9J3RydWUnXSA+IGE6OmFmdGVyIHtcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMTgwZGVnKTtcbiAgICAgICAgdHJhbnNmb3JtLW9yaWdpbjogNTAlIDUwJTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAuaXMtYWNjb3JkaW9uLXN1Ym1lbnUgbGkge1xuICAgIEBpZiAkYWNjb3JkaW9ubWVudS1ib3JkZXIge1xuICAgICAgYm9yZGVyLXJpZ2h0OiAwO1xuICAgICAgYm9yZGVyLWxlZnQ6IDA7XG4gICAgfVxuICB9XG5cbiAgLmlzLWFjY29yZGlvbi1zdWJtZW51LXBhcmVudCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB9XG5cbiAgLmhhcy1zdWJtZW51LXRvZ2dsZSA+IGEge1xuICAgIG1hcmdpbi0jeyRnbG9iYWwtcmlnaHR9OiAkYWNjb3JkaW9ubWVudS1zdWJtZW51LXRvZ2dsZS13aWR0aDtcbiAgfVxuXG4gIC8vIFN1Ym1lbnUgdG9nZ2xlXG4gIC5zdWJtZW51LXRvZ2dsZSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICAjeyRnbG9iYWwtcmlnaHR9OiAwO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcblxuICAgIHdpZHRoOiAkYWNjb3JkaW9ubWVudS1zdWJtZW51LXRvZ2dsZS13aWR0aDtcbiAgICBoZWlnaHQ6ICRhY2NvcmRpb25tZW51LXN1Ym1lbnUtdG9nZ2xlLWhlaWdodDtcblxuICAgIGJvcmRlci0jeyRnbG9iYWwtbGVmdH06ICRhY2NvcmRpb24tc3VibWVudS10b2dnbGUtYm9yZGVyO1xuXG4gICAgQGlmICRhY2NvcmRpb25tZW51LXN1Ym1lbnUtdG9nZ2xlLWJhY2tncm91bmQge1xuICAgICAgYmFja2dyb3VuZDogJGFjY29yZGlvbm1lbnUtc3VibWVudS10b2dnbGUtYmFja2dyb3VuZDtcbiAgICB9XG5cbiAgICAvLyBBZGQgdGhlIGFycm93IHRvIHRoZSB0b2dnbGVcbiAgICAmOjphZnRlciB7XG4gICAgICBAaW5jbHVkZSBjc3MtdHJpYW5nbGUoNnB4LCAkYWNjb3JkaW9ubWVudS1hcnJvdy1jb2xvciwgZG93bik7XG5cbiAgICAgIHRvcDogMDtcbiAgICAgIGJvdHRvbTogMDtcbiAgICAgIG1hcmdpbjogYXV0bztcbiAgICB9XG4gIH1cblxuICAvLyBSb3RhdGUgdGhlIGFycm93IHdoZW4gbWVudSBpcyBvcGVuXG4gIC5zdWJtZW51LXRvZ2dsZVthcmlhLWV4cGFuZGVkPSd0cnVlJ106OmFmdGVyIHtcbiAgICB0cmFuc2Zvcm06IHNjYWxlWSgtMSk7XG4gICAgdHJhbnNmb3JtLW9yaWdpbjogNTAlIDUwJTtcbiAgfVxuXG4gIC5zdWJtZW51LXRvZ2dsZS10ZXh0IHtcbiAgICBAaW5jbHVkZSBlbGVtZW50LWludmlzaWJsZTtcbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgbWVudVxuLy8vL1xuXG4vLy8gTWFyZ2luIG9mIGEgbWVudS5cbi8vLyBAdHlwZSBOdW1iZXJcbiRtZW51LW1hcmdpbjogMCAhZGVmYXVsdDtcblxuLy8vIExlZnQtaGFuZCBtYXJnaW4gb2YgYSBuZXN0ZWQgbWVudS5cbi8vLyBAdHlwZSBOdW1iZXJcbiRtZW51LW5lc3RlZC1tYXJnaW46ICRnbG9iYWwtbWVudS1uZXN0ZWQtbWFyZ2luICFkZWZhdWx0O1xuXG4vLy8gUGFkZGluZyBmb3IgaXRlbXMgaW4gYSBwaWxsIG1lbnUuXG4vLy8gQHR5cGUgTnVtYmVyXG4kbWVudS1pdGVtcy1wYWRkaW5nOiAkZ2xvYmFsLW1lbnUtcGFkZGluZyAhZGVmYXVsdDtcblxuLy8vIG1hcmdpbiBmb3IgaXRlbXMgaW4gYSBzaW1wbGUgbWVudS5cbi8vLyBAdHlwZSBOdW1iZXJcbiRtZW51LXNpbXBsZS1tYXJnaW46IDFyZW0gIWRlZmF1bHQ7XG5cbi8vLyBUZXh0IGNvbG9yIG9mIGFuIGFjdGl2ZSBtZW51IGl0ZW0uXG4vLy8gQHR5cGUgQ29sb3JcbiRtZW51LWl0ZW0tY29sb3ItYWN0aXZlOiAkd2hpdGUgIWRlZmF1bHQ7XG5cbi8vLyBCYWNrZ3JvdW5kIGNvbG9yIG9mIGFuIGFjdGl2ZSBtZW51IGl0ZW0uXG4vLy8gQHR5cGUgQ29sb3JcbiRtZW51LWl0ZW0tYmFja2dyb3VuZC1hY3RpdmU6IGdldC1jb2xvcihwcmltYXJ5KSAhZGVmYXVsdDtcblxuLy8vIFNwYWNpbmcgYmV0d2VlbiBhbiBpY29uIGFuZCB0ZXh0IGluIGEgbWVudSBpdGVtLlxuLy8vIEB0eXBlIE51bWJlclxuJG1lbnUtaWNvbi1zcGFjaW5nOiAwLjI1cmVtICFkZWZhdWx0O1xuXG4vLy8gQmFja2dyb3VuZCBjb2xvciBmb3IgYW4gaG92ZXJlZCBtZW51IGl0ZW0uXG4vLy8gQHR5cGUgQ29sb3JcbiRtZW51LWl0ZW0tYmFja2dyb3VuZC1ob3ZlcjogJGxpZ2h0LWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBCYWNrd2FyZCBjb21wYXRpYmlsaXR5IGZvciBtZW51IHN0YXRlLiBJZiB0cnVlLCB0aGlzIGR1cGxpY2F0ZSBgYWN0aXZlYCB3aXRoIGBpcy1hY3RpdmVgLiBcbi8vLyBCdXQgcGxlYXNlIG5vdGUgdGhhdCBgYWN0aXZlYCB3aWxsIGJlIHJlbW92ZWQgaW4gdXBjb21pbmcgdmVyc2lvbnMuXG4vLy8gQHR5cGUgQm9vbGVhblxuJG1lbnUtc3RhdGUtYmFjay1jb21wYXQ6IHRydWUgIWRlZmF1bHQ7XG5cbi8vLyBCYWNrd2FyZCBjb21wYXRpYmlsaXR5IGZvciBtZW51IGNlbnRlcmVkLiBJZiB0cnVlLCB0aGlzIGR1cGxpY2F0ZSBgLm1lbnUtY2VudGVyZWQgPiAubWVudWAgd2l0aCBgLm1lbnUuYWxpZ24tY2VudGVyYC4gXG4vLy8gQnV0IHBsZWFzZSBub3RlIHRoYXQgYG1lbnUtY2VudGVyZWRgIHdpbGwgYmUgcmVtb3ZlZCBpbiB1cGNvbWluZyB2ZXJzaW9ucy5cbi8vLyBAdHlwZSBCb29sZWFuXG4kbWVudS1jZW50ZXJlZC1iYWNrLWNvbXBhdDogdHJ1ZSAhZGVmYXVsdDtcblxuLy8vIEJhY2t3YXJkIGNvbXBhdGliaWxpdHkgZm9yIHVzaW5nIGBpY29uLSpgIGNsYXNzZXMgd2l0aG91dCBgLmljb25zYCBjbGFzc2VzXG4vLy8gQnV0IHBsZWFzZSBub3RlIHRoYXQgdGhpcyBiYWNrd2FyZCBjb21wYXRpYmlsaXR5IHdpbGwgYmUgcmVtb3ZlZCBpbiB1cGNvbWluZyB2ZXJzaW9ucy5cbi8vLyBAdHlwZSBCb29sZWFuXG4kbWVudS1pY29ucy1iYWNrLWNvbXBhdDogdHJ1ZSAhZGVmYXVsdDtcblxuLy8vIENyZWF0ZXMgdGhlIGJhc2Ugc3R5bGVzIGZvciBhIE1lbnUuXG5AbWl4aW4gbWVudS1iYXNlIHtcbiAgcGFkZGluZzogMDtcbiAgbWFyZ2luOiAwO1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LXdyYXA6IHdyYXA7XG4gIH1cblxuICBsaSB7XG4gICAgQGluY2x1ZGUgZGlzYWJsZS1tb3VzZS1vdXRsaW5lO1xuICB9XG5cbiAgYSxcbiAgLmJ1dHRvbiB7XG4gICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBhZGRpbmc6ICRtZW51LWl0ZW1zLXBhZGRpbmc7XG4gIH1cblxuICAvLyBSZXNldCBzdHlsZXMgb2YgaW5uZXIgZWxlbWVudHNcbiAgaW5wdXQsXG4gIHNlbGVjdCxcbiAgYSxcbiAgYnV0dG9uIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICB9XG5cbiAgaW5wdXQge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgfVxufVxuXG4vLy8gRXhwYW5kcyB0aGUgaXRlbXMgb2YgYSBNZW51LCBzbyBlYWNoIGl0ZW0gaXMgdGhlIHNhbWUgd2lkdGguXG5AbWl4aW4gbWVudS1leHBhbmQge1xuICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICBsaSB7XG4gICAgICBmbGV4OiAxIDEgMHB4OyAvLyBzYXNzLWxpbnQ6ZGlzYWJsZS1saW5lIHplcm8tdW5pdFxuICAgIH1cbiAgfVxuICBAZWxzZSB7XG4gICAgZGlzcGxheTogdGFibGU7XG4gICAgd2lkdGg6IDEwMCU7XG5cbiAgICA+IGxpIHtcbiAgICAgIGRpc3BsYXk6IHRhYmxlLWNlbGw7XG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgIH1cbiAgfVxufVxuXG4vLy8gQWxpZ24gbWVudSBpdGVtcy5cbkBtaXhpbiBtZW51LWFsaWduKCRhbGlnbm1lbnQpIHtcbiAgQGlmICRhbGlnbm1lbnQgPT0gbGVmdCB7XG4gICAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgIHRleHQtYWxpZ246ICRnbG9iYWwtbGVmdDtcbiAgICB9XG4gIH1cbiAgQGVsc2UgaWYgJGFsaWdubWVudCA9PSByaWdodCB7XG4gICAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgICBsaSB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG5cbiAgICAgICAgLnN1Ym1lbnUgbGkge1xuICAgICAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAmLnZlcnRpY2FsIGxpIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIHRleHQtYWxpZ246ICRnbG9iYWwtcmlnaHQ7XG5cbiAgICAgICAgLnN1Ym1lbnUgbGkge1xuICAgICAgICAgIHRleHQtYWxpZ246ICRnbG9iYWwtcmlnaHQ7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgdGV4dC1hbGlnbjogJGdsb2JhbC1yaWdodDtcblxuICAgICAgLnN1Ym1lbnUgbGkge1xuICAgICAgICB0ZXh0LWFsaWduOiAkZ2xvYmFsLWxlZnQ7XG4gICAgICB9XG5cbiAgICAgICYudmVydGljYWwge1xuICAgICAgICAuc3VibWVudSBsaSB7XG4gICAgICAgICAgdGV4dC1hbGlnbjogJGdsb2JhbC1yaWdodDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuICBAZWxzZSBpZiAkYWxpZ25tZW50ID09IGNlbnRlciB7XG4gICAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgICBsaSB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuXG4gICAgICAgIC5zdWJtZW51IGxpIHtcbiAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gICAgICAuc3VibWVudSBsaSB7XG4gICAgICAgIHRleHQtYWxpZ246ICRnbG9iYWwtbGVmdDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLy8vIFNldHMgdGhlIGRpcmVjdGlvbiBvZiBhIE1lbnUuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkZGlyIFtob3Jpem9udGFsXSAtIERpcmVjdGlvbiBvZiB0aGUgTWVudS4gQ2FuIGJlIGBob3Jpem9udGFsYCBvciBgdmVydGljYWxgLlxuQG1peGluIG1lbnUtZGlyZWN0aW9uKCRkaXI6IGhvcml6b250YWwpIHtcbiAgQGlmICRkaXIgPT0gaG9yaXpvbnRhbCB7XG4gICAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICBsaSB7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgQGVsc2UgaWYgJGRpciA9PSB2ZXJ0aWNhbCB7XG4gICAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgICBmbGV4LXdyYXA6IG5vd3JhcDtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgIGxpIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIEBlbHNlIHtcbiAgICBAd2FybiAnVGhlIGRpcmVjdGlvbiB1c2VkIGZvciBtZW51LWRpcmVjdGlvbigpIG11c3QgYmUgaG9yaXpvbnRhbCBvciB2ZXJ0aWNhbC4nO1xuICB9XG59XG5cbi8vLyBDcmVhdGVzIGEgc2ltcGxlIE1lbnUsIHdoaWNoIGhhcyBubyBwYWRkaW5nIG9yIGhvdmVyIHN0YXRlLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJGRpciBbJGdsb2JhbC1sZWZ0XSAtIERpcmVjdGlvbiBvZiB0aGUgbWVudS4gVGhpcyBlZmZlY3RzIHRoZSBzaWRlIG9mIHRoZSBgPGxpPmAgdGhhdCByZWNlaXZlcyB0aGUgbWFyZ2luLlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkbWFyZ2luIFskbWVudS1zaW1wbGUtbWFyZ2luXSAtIFRoZSBtYXJnaW4gdG8gYXBwbHkgdG8gZWFjaCBgPGxpPmAuXG5AbWl4aW4gbWVudS1zaW1wbGUoJGRpcjogJGdsb2JhbC1sZWZ0LCAkbWFyZ2luOiAkbWVudS1zaW1wbGUtbWFyZ2luKSB7XG4gIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIH1cblxuICBsaSArIGxpIHtcbiAgICBtYXJnaW4tI3skZGlyfTogJG1hcmdpbjtcbiAgfVxuXG4gIGEge1xuICAgIHBhZGRpbmc6IDA7XG4gIH1cbn1cblxuLy8vIEFkZHMgc3R5bGVzIGZvciBhIG5lc3RlZCBNZW51LCBieSBhZGRpbmcgYG1hcmdpbi1sZWZ0YCB0byB0aGUgbWVudS5cbi8vLyBAcGFyYW0ge0tleXdvcmR8TnVtYmVyfSAkbWFyZ2luIFskbWVudS1uZXN0ZWQtbWFyZ2luXSAtIExlbmd0aCBvZiB0aGUgbWFyZ2luLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJG5lc3RlZC1hbGlnbm1lbnQgW2xlZnRdIC0gQWxpZ25tZW50IG9mIHRoZSBuZXN0ZWQgY2xhc3NcbkBtaXhpbiBtZW51LW5lc3RlZChcbiAgJG1hcmdpbjogJG1lbnUtbmVzdGVkLW1hcmdpbixcbiAgJG5lc3RlZC1hbGlnbm1lbnQ6IGxlZnRcbikge1xuICBAaWYgJG5lc3RlZC1hbGlnbm1lbnQgPT0gcmlnaHQge1xuICAgIG1hcmdpbi0jeyRnbG9iYWwtcmlnaHR9OiAkbWFyZ2luO1xuICAgIG1hcmdpbi0jeyRnbG9iYWwtbGVmdH06IDA7XG4gIH1cbiAgQGVsc2Uge1xuICAgIG1hcmdpbi0jeyRnbG9iYWwtcmlnaHR9OiAwO1xuICAgIG1hcmdpbi0jeyRnbG9iYWwtbGVmdH06ICRtYXJnaW47XG4gIH1cblxufVxuXG4vLy8gQWRkcyBiYXNpYyBzdHlsZXMgZm9yIGljb25zIGluIG1lbnVzLlxuQG1peGluIG1lbnUtaWNvbnMoKSB7XG4gIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgIGEge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICB9XG4gIH1cbiAgQGVsc2Uge1xuICAgIGltZyxcbiAgICBpLFxuICAgIHN2ZyB7XG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuXG4gICAgICArIHNwYW4ge1xuICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vLy8gQWRkcyBwb3NpdGlvbiBjbGFzc2VzIGZvciBpY29ucyB3aXRoaW4gYSBtZW51LlxuQG1peGluIG1lbnUtaWNvbi1wb3NpdGlvbigkcG9zaXRpb246IGxlZnQsICRzcGFjaW5nOiAkbWVudS1pY29uLXNwYWNpbmcpIHtcbiAgQGlmICRwb3NpdGlvbiA9PSBsZWZ0IHtcbiAgICBsaSBhIHtcbiAgICAgIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgICAgICBmbGV4LWZsb3c6IHJvdyBub3dyYXA7XG4gICAgICB9XG5cbiAgICAgIGltZyxcbiAgICAgIGksXG4gICAgICBzdmcge1xuICAgICAgICBtYXJnaW4tI3skZ2xvYmFsLXJpZ2h0fTogJHNwYWNpbmc7XG5cbiAgICAgICAgQGlmIG5vdCAkZ2xvYmFsLWZsZXhib3gge1xuICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuICBAZWxzZSBpZiAkcG9zaXRpb24gPT0gcmlnaHQge1xuICAgIGxpIGEge1xuICAgICAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgICAgIGZsZXgtZmxvdzogcm93IG5vd3JhcDtcbiAgICAgIH1cblxuICAgICAgaW1nLFxuICAgICAgaSxcbiAgICAgIHN2ZyB7XG4gICAgICAgIG1hcmdpbi0jeyRnbG9iYWwtbGVmdH06ICRzcGFjaW5nO1xuXG4gICAgICAgIEBpZiBub3QgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgQGVsc2UgaWYgJHBvc2l0aW9uID09IHRvcCB7XG4gICAgbGkgYSB7XG4gICAgICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAgICAgZmxleC1mbG93OiBjb2x1bW4gbm93cmFwO1xuICAgICAgfVxuICAgICAgQGVsc2Uge1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICB9XG5cbiAgICAgIGltZyxcbiAgICAgIGksXG4gICAgICBzdmcge1xuICAgICAgICBAaWYgbm90ICRnbG9iYWwtZmxleGJveCB7XG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgbWFyZ2luOiAwIGF1dG8gJHNwYWNpbmc7XG4gICAgICAgIH1cbiAgICAgICAgQGVsc2Uge1xuICAgICAgICAgIGFsaWduLXNlbGY6IHN0cmV0Y2g7XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogJHNwYWNpbmc7XG4gICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG4gIEBlbHNlIGlmICRwb3NpdGlvbiA9PSBib3R0b20ge1xuICAgIGxpIGEge1xuICAgICAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgICAgIGZsZXgtZmxvdzogY29sdW1uIG5vd3JhcDtcbiAgICAgIH1cbiAgICAgIEBlbHNlIHtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgfVxuXG4gICAgICBpbWcsXG4gICAgICBpLFxuICAgICAgc3ZnIHtcbiAgICAgICAgQGlmIG5vdCAkZ2xvYmFsLWZsZXhib3gge1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgIG1hcmdpbjogJHNwYWNpbmcgYXV0byAwO1xuICAgICAgICB9XG4gICAgICAgIEBlbHNlIHtcbiAgICAgICAgICBhbGlnbi1zZWxmOiBzdHJldGNoO1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206ICRzcGFjaW5nO1xuICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gbWVudS10ZXh0IHtcbiAgcGFkZGluZzogJGdsb2JhbC1tZW51LXBhZGRpbmc7XG5cbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICBjb2xvcjogaW5oZXJpdDtcbn1cblxuQG1peGluIG1lbnUtc3RhdGUtYWN0aXZlIHtcbiAgYmFja2dyb3VuZDogJG1lbnUtaXRlbS1iYWNrZ3JvdW5kLWFjdGl2ZTtcbiAgY29sb3I6ICRtZW51LWl0ZW0tY29sb3ItYWN0aXZlO1xufVxuXG5AbWl4aW4gZm91bmRhdGlvbi1tZW51IHtcbiAgLm1lbnUge1xuICAgIEBpbmNsdWRlIG1lbnUtYmFzZTtcblxuICAgIC8vIERlZmF1bHQgb3JpZW50YXRpb246IGhvcml6b250YWxcbiAgICAmLCAmLmhvcml6b250YWwge1xuICAgICAgQGluY2x1ZGUgbWVudS1kaXJlY3Rpb24oaG9yaXpvbnRhbCk7XG4gICAgfVxuXG4gICAgLy8gVmVydGljYWwgb3JpZW50YXRpb24gbW9kaWZpZXJcbiAgICAmLnZlcnRpY2FsIHtcbiAgICAgIEBpbmNsdWRlIG1lbnUtZGlyZWN0aW9uKHZlcnRpY2FsKTtcbiAgICB9XG5cbiAgICAvLyBFdmVuLXdpZHRoIG1vZGlmaWVyIGZvciBob3Jpem9udGFsIG9yaWVudGF0aW9uXG4gICAgJi5leHBhbmRlZCB7XG4gICAgICBAaW5jbHVkZSBtZW51LWV4cGFuZDtcbiAgICB9XG5cbiAgICAvLyBTaW1wbGVcbiAgICAmLnNpbXBsZSB7XG4gICAgICBAaW5jbHVkZSBtZW51LXNpbXBsZTtcbiAgICB9XG5cbiAgICAvLyBCcmVha3BvaW50IHNwZWNpZmljIHZlcnNpb25zXG4gICAgQGluY2x1ZGUgLXpmLWVhY2gtYnJlYWtwb2ludCgkc21hbGw6IGZhbHNlKSB7XG4gICAgICAmLiN7JC16Zi1zaXplfS1ob3Jpem9udGFsIHtcbiAgICAgICAgQGluY2x1ZGUgbWVudS1kaXJlY3Rpb24oaG9yaXpvbnRhbCk7XG4gICAgICB9XG5cbiAgICAgICYuI3skLXpmLXNpemV9LXZlcnRpY2FsIHtcbiAgICAgICAgQGluY2x1ZGUgbWVudS1kaXJlY3Rpb24odmVydGljYWwpO1xuICAgICAgfVxuXG4gICAgICAmLiN7JC16Zi1zaXplfS1leHBhbmRlZCB7XG4gICAgICAgIEBpbmNsdWRlIG1lbnUtZXhwYW5kO1xuICAgICAgfVxuXG4gICAgICAmLiN7JC16Zi1zaXplfS1zaW1wbGUge1xuICAgICAgICBAaW5jbHVkZSBtZW51LWV4cGFuZDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBOZXN0aW5nXG4gICAgJi5uZXN0ZWQge1xuICAgICAgQGluY2x1ZGUgbWVudS1uZXN0ZWQ7XG4gICAgfVxuXG4gICAgLy8gSWNvbiBCYXNlIFN0eWxlc1xuICAgICYuaWNvbnMge1xuICAgICAgQGluY2x1ZGUgbWVudS1pY29ucztcbiAgICB9XG5cbiAgICAvLyBCYWNrd2FyZCBDb21wYXRpYmlsaXR5IGZvciBhY3RpdmUgc3RhdGVcbiAgICBAaWYgJG1lbnUtaWNvbnMtYmFjay1jb21wYXQge1xuICAgICAgJi5pY29uLXRvcCxcbiAgICAgICYuaWNvbi1yaWdodCxcbiAgICAgICYuaWNvbi1ib3R0b20sXG4gICAgICAmLmljb24tbGVmdCB7XG4gICAgICAgIEBpbmNsdWRlIG1lbnUtaWNvbnM7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gSWNvbiBMZWZ0XG4gICAgJi5pY29uLWxlZnQge1xuICAgICAgQGluY2x1ZGUgbWVudS1pY29uLXBvc2l0aW9uKGxlZnQpO1xuICAgIH1cblxuICAgIC8vIEljb24gUmlnaHRcbiAgICAmLmljb24tcmlnaHQge1xuICAgICAgQGluY2x1ZGUgbWVudS1pY29uLXBvc2l0aW9uKHJpZ2h0KTtcbiAgICB9XG5cbiAgICAvLyBJY29uIFRvcFxuICAgICYuaWNvbi10b3Age1xuICAgICAgQGluY2x1ZGUgbWVudS1pY29uLXBvc2l0aW9uKHRvcCk7XG4gICAgfVxuXG4gICAgLy8gSWNvbiBCb3R0b21cbiAgICAmLmljb24tYm90dG9tIHtcbiAgICAgIEBpbmNsdWRlIG1lbnUtaWNvbi1wb3NpdGlvbihib3R0b20pO1xuICAgIH1cblxuICAgIC8vIEFjdGl2ZSBzdGF0ZVxuICAgIC5pcy1hY3RpdmUgPiBhIHtcbiAgICAgIEBpbmNsdWRlIG1lbnUtc3RhdGUtYWN0aXZlO1xuICAgIH1cbiAgICBcbiAgICAvLyBCYWNrd2FyZCBDb21wYXRpYmlsaXR5IGZvciBhY3RpdmUgc3RhdGVcbiAgICBAaWYgJG1lbnUtc3RhdGUtYmFjay1jb21wYXQge1xuICAgICAgLmFjdGl2ZSA+IGEge1xuICAgICAgICBAaW5jbHVkZSBtZW51LXN0YXRlLWFjdGl2ZTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBBbGlnbiBsZWZ0XG4gICAgJi5hbGlnbi0jeyRnbG9iYWwtbGVmdH0ge1xuICAgICAgQGluY2x1ZGUgbWVudS1hbGlnbihsZWZ0KTtcbiAgICB9XG5cbiAgICAvLyBBbGlnbiByaWdodFxuICAgICYuYWxpZ24tI3skZ2xvYmFsLXJpZ2h0fSB7XG4gICAgICBAaW5jbHVkZSBtZW51LWFsaWduKHJpZ2h0KTtcblxuICAgICAgLm5lc3RlZCB7XG4gICAgICAgIEBpbmNsdWRlIG1lbnUtbmVzdGVkKCRuZXN0ZWQtYWxpZ25tZW50OiByaWdodCk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gQWxpZ24gY2VudGVyXG4gICAgJi5hbGlnbi1jZW50ZXIge1xuICAgICAgQGluY2x1ZGUgbWVudS1hbGlnbihjZW50ZXIpO1xuICAgIH1cblxuICAgIC5tZW51LXRleHQge1xuICAgICAgQGluY2x1ZGUgbWVudS10ZXh0O1xuICAgIH1cbiAgfVxuXG4gIEBpZiAkbWVudS1jZW50ZXJlZC1iYWNrLWNvbXBhdCB7XG4gICAgLm1lbnUtY2VudGVyZWQge1xuICAgICAgPiAubWVudSB7XG4gICAgICAgIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICBAaW5jbHVkZSBtZW51LWFsaWduKGNlbnRlcik7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8gUHJldmVudCBGT1VDIHdoZW4gdXNpbmcgdGhlIFJlc3BvbnNpdmUgTWVudSBwbHVnaW5cbiAgLm5vLWpzIFtkYXRhLXJlc3BvbnNpdmUtbWVudV0gdWwge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGJhZGdlXG4vLy8vXG5cbi8vLyBEZWZhdWx0IGJhY2tncm91bmQgY29sb3IgZm9yIGJhZGdlcy5cbi8vLyBAdHlwZSBDb2xvclxuJGJhZGdlLWJhY2tncm91bmQ6ICRwcmltYXJ5LWNvbG9yICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCB0ZXh0IGNvbG9yIGZvciBiYWRnZXMuXG4vLy8gQHR5cGUgQ29sb3JcbiRiYWRnZS1jb2xvcjogJHdoaXRlICFkZWZhdWx0O1xuXG4vLy8gQWx0ZXJuYXRlIHRleHQgY29sb3IgZm9yIGJhZGdlcy5cbi8vLyBAdHlwZSBDb2xvclxuJGJhZGdlLWNvbG9yLWFsdDogJGJsYWNrICFkZWZhdWx0O1xuXG4vLy8gQ29sb3JpbmcgY2xhc3Nlcy4gQSBtYXAgb2YgY2xhc3NlcyB0byBvdXRwdXQgaW4geW91ciBDU1MsIGxpa2UgYC5zZWNvbmRhcnlgLCBgLnN1Y2Nlc3NgLCBhbmQgc28gb24uXG4vLy8gQHR5cGUgTWFwXG4kYmFkZ2UtcGFsZXR0ZTogJGZvdW5kYXRpb24tcGFsZXR0ZSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgcGFkZGluZyBpbnNpZGUgYmFkZ2VzLlxuLy8vIEB0eXBlIE51bWJlclxuJGJhZGdlLXBhZGRpbmc6IDAuM2VtICFkZWZhdWx0O1xuXG4vLy8gTWluaW11bSB3aWR0aCBvZiBhIGJhZGdlLlxuLy8vIEB0eXBlIE51bWJlclxuJGJhZGdlLW1pbndpZHRoOiAyLjFlbSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgZm9udCBzaXplIGZvciBiYWRnZXMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kYmFkZ2UtZm9udC1zaXplOiAwLjZyZW0gIWRlZmF1bHQ7XG5cbi8vLyBHZW5lcmF0ZXMgdGhlIGJhc2Ugc3R5bGVzIGZvciBhIGJhZGdlLlxuQG1peGluIGJhZGdlIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBtaW4td2lkdGg6ICRiYWRnZS1taW53aWR0aDtcbiAgcGFkZGluZzogJGJhZGdlLXBhZGRpbmc7XG5cbiAgYm9yZGVyLXJhZGl1czogNTAlO1xuXG4gIGZvbnQtc2l6ZTogJGJhZGdlLWZvbnQtc2l6ZTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG5AbWl4aW4gZm91bmRhdGlvbi1iYWRnZSB7XG4gIC5iYWRnZSB7XG4gICAgQGluY2x1ZGUgYmFkZ2U7XG5cbiAgICBiYWNrZ3JvdW5kOiAkYmFkZ2UtYmFja2dyb3VuZDtcbiAgICBjb2xvcjogJGJhZGdlLWNvbG9yO1xuXG4gICAgQGVhY2ggJG5hbWUsICRjb2xvciBpbiAkYmFkZ2UtcGFsZXR0ZSB7XG4gICAgICAmLiN7JG5hbWV9IHtcbiAgICAgICAgYmFja2dyb3VuZDogJGNvbG9yO1xuICAgICAgICBjb2xvcjogY29sb3ItcGljay1jb250cmFzdCgkY29sb3IsICgkYmFkZ2UtY29sb3IsICRiYWRnZS1jb2xvci1hbHQpKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGJyZWFkY3J1bWJzXG4vLy8vXG5cbi8vLyBNYXJnaW4gYXJvdW5kIGEgYnJlYWRjcnVtYnMgY29udGFpbmVyLlxuLy8vIEB0eXBlIE51bWJlclxuJGJyZWFkY3J1bWJzLW1hcmdpbjogMCAwICRnbG9iYWwtbWFyZ2luIDAgIWRlZmF1bHQ7XG5cbi8vLyBGb250IHNpemUgb2YgYnJlYWRjcnVtYiBsaW5rcy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRicmVhZGNydW1icy1pdGVtLWZvbnQtc2l6ZTogcmVtLWNhbGMoMTEpICFkZWZhdWx0O1xuXG4vLy8gQ29sb3Igb2YgYnJlYWRjcnVtYiBsaW5rcy5cbi8vLyBAdHlwZSBDb2xvclxuJGJyZWFkY3J1bWJzLWl0ZW0tY29sb3I6ICRwcmltYXJ5LWNvbG9yICFkZWZhdWx0O1xuXG4vLy8gQ29sb3Igb2YgdGhlIGFjdGl2ZSBicmVhZGNydW1iIGxpbmsuXG4vLy8gQHR5cGUgQ29sb3JcbiRicmVhZGNydW1icy1pdGVtLWNvbG9yLWN1cnJlbnQ6ICRibGFjayAhZGVmYXVsdDtcblxuLy8vIE9wYWNpdHkgb2YgZGlzYWJsZWQgYnJlYWRjcnVtYiBsaW5rcy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRicmVhZGNydW1icy1pdGVtLWNvbG9yLWRpc2FibGVkOiAkbWVkaXVtLWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBNYXJnaW4gYmV0d2VlbiBicmVhZGNydW1iIGl0ZW1zLlxuLy8vIEB0eXBlIE51bWJlclxuJGJyZWFkY3J1bWJzLWl0ZW0tbWFyZ2luOiAwLjc1cmVtICFkZWZhdWx0O1xuXG4vLy8gSWYgYHRydWVgLCBtYWtlcyBicmVhZGNydW1iIGxpbmtzIHVwcGVyY2FzZS5cbi8vLyBAdHlwZSBCb29sZWFuXG4kYnJlYWRjcnVtYnMtaXRlbS11cHBlcmNhc2U6IHRydWUgIWRlZmF1bHQ7XG5cbi8vLyBJZiBgdHJ1ZWAsIGFkZHMgYSBzZXBlcmF0b3IgYmV0d2VlbiBicmVhZGNydW1iIGxpbmtzLlxuLy8vIEB0eXBlIEJvb2xlYW5cbiRicmVhZGNydW1icy1pdGVtLXNlcGFyYXRvcjogdHJ1ZSAhZGVmYXVsdDtcblxuLy8gSWYgaXQgZXhpc3RzICRicmVhZGNydW1icy1pdGVtLXNsYXNoIGlzIHVzZWQgdG8gYnVpbGQgJGJyZWFkY3J1bWJzLWl0ZW0tc2VwYXJhdG9yLiBTZWUgdGhlIGRvY3VtZW50YXRpb24uXG5AaWYgdmFyaWFibGUtZXhpc3RzKGJyZWFkY3J1bWJzLWl0ZW0tc2xhc2gpIHtcbiAgJGJyZWFkY3J1bWJzLWl0ZW0tc2VwYXJhdG9yOiAkYnJlYWRjcnVtYnMtaXRlbS1zbGFzaDtcbn1cblxuLy8vIFVzZWQgY2hhcmFjdGVyIGZvciB0aGUgYnJlYWRjcnVtYiBzZXBhcmF0b3IuXG4vLy8gQHR5cGUgQ29udGVudFxuJGJyZWFkY3J1bWJzLWl0ZW0tc2VwYXJhdG9yLWl0ZW06ICcvJyAhZGVmYXVsdDtcblxuLy8vIFVzZWQgY2hhcmFjdGVyIGZvciB0aGUgYnJlYWRjcnVtYiBzZXBhcmF0b3IgaW4gcnRsIG1vZGUuXG4vLy8gQHR5cGUgQ29udGVudFxuJGJyZWFkY3J1bWJzLWl0ZW0tc2VwYXJhdG9yLWl0ZW0tcnRsOiAnXFxcXCcgIWRlZmF1bHQ7XG5cbi8vLyBDb2xvciBvZiBicmVhZGNydW1iIGl0ZW0uXG4vLy8gQHR5cGUgQ29sb3JcbiRicmVhZGNydW1icy1pdGVtLXNlcGFyYXRvci1jb2xvcjogJG1lZGl1bS1ncmF5ICFkZWZhdWx0O1xuXG4vLyBJZiBpdCBleGlzdHMgJGJyZWFkY3J1bWJzLWl0ZW0tc2xhc2gtY29sb3IgaXMgdXNlZCB0byBidWlsZCAkYnJlYWRjcnVtYnMtaXRlbS1zZXBhcmF0b3ItY29sb3IuIFNlZSB0aGUgZG9jdW1lbnRhdGlvbi5cbkBpZiB2YXJpYWJsZS1leGlzdHMoYnJlYWRjcnVtYnMtaXRlbS1zbGFzaC1jb2xvcikge1xuICAkYnJlYWRjcnVtYnMtaXRlbS1zZXBhcmF0b3ItY29sb3I6ICRicmVhZGNydW1icy1pdGVtLXNsYXNoLWNvbG9yO1xufVxuXG4vLy8gQWRkcyBzdHlsZXMgZm9yIGEgYnJlYWRjcnVtYnMgY29udGFpbmVyLCBhbG9uZyB3aXRoIHRoZSBzdHlsZXMgZm9yIHRoZSBgPGxpPmAgYW5kIGA8YT5gIGVsZW1lbnRzIGluc2lkZSBvZiBpdC5cbkBtaXhpbiBicmVhZGNydW1icy1jb250YWluZXIge1xuICBAaW5jbHVkZSBjbGVhcmZpeDtcbiAgbWFyZ2luOiAkYnJlYWRjcnVtYnMtbWFyZ2luO1xuICBsaXN0LXN0eWxlOiBub25lO1xuXG4gIC8vIEl0ZW0gd3JhcHBlclxuICBsaSB7XG4gICAgZmxvYXQ6ICN7JGdsb2JhbC1sZWZ0fTtcblxuICAgIGZvbnQtc2l6ZTogJGJyZWFkY3J1bWJzLWl0ZW0tZm9udC1zaXplO1xuICAgIGNvbG9yOiAkYnJlYWRjcnVtYnMtaXRlbS1jb2xvci1jdXJyZW50O1xuICAgIGN1cnNvcjogZGVmYXVsdDtcblxuICAgIEBpZiAkYnJlYWRjcnVtYnMtaXRlbS11cHBlcmNhc2Uge1xuICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICB9XG5cbiAgICBAaWYgJGJyZWFkY3J1bWJzLWl0ZW0tc2VwYXJhdG9yIHtcbiAgICAgIC8vIE5lZWQgdG8gZXNjYXBlIHRoZSBiYWNrc2xhc2hcbiAgICAgICRzZXBhcmF0b3I6IGlmKCRnbG9iYWwtdGV4dC1kaXJlY3Rpb24gPT0gJ2x0cicsICRicmVhZGNydW1icy1pdGVtLXNlcGFyYXRvci1pdGVtLCAkYnJlYWRjcnVtYnMtaXRlbS1zZXBhcmF0b3ItaXRlbS1ydGwpO1xuXG4gICAgICAmOm5vdCg6bGFzdC1jaGlsZCk6OmFmdGVyIHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBtYXJnaW46IDAgJGJyZWFkY3J1bWJzLWl0ZW0tbWFyZ2luO1xuICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICBjb250ZW50OiAkc2VwYXJhdG9yO1xuICAgICAgICBjb2xvcjogJGJyZWFkY3J1bWJzLWl0ZW0tc2VwYXJhdG9yLWNvbG9yO1xuICAgICAgfVxuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICBtYXJnaW4tI3skZ2xvYmFsLXJpZ2h0fTogJGJyZWFkY3J1bWJzLWl0ZW0tbWFyZ2luO1xuICAgIH1cbiAgfVxuXG4gIC8vIFBhZ2UgbGlua3NcbiAgYSB7XG4gICAgY29sb3I6ICRicmVhZGNydW1icy1pdGVtLWNvbG9yO1xuXG4gICAgJjpob3ZlciB7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIGZvdW5kYXRpb24tYnJlYWRjcnVtYnMge1xuICAuYnJlYWRjcnVtYnMge1xuICAgIEBpbmNsdWRlIGJyZWFkY3J1bWJzLWNvbnRhaW5lcjtcblxuICAgIC5kaXNhYmxlZCB7XG4gICAgICBjb2xvcjogJGJyZWFkY3J1bWJzLWl0ZW0tY29sb3ItZGlzYWJsZWQ7XG4gICAgICBjdXJzb3I6IG5vdC1hbGxvd2VkO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgYnV0dG9uLWdyb3VwXG4vLy8vXG5cbi8vLyBNYXJnaW4gZm9yIGJ1dHRvbiBncm91cHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kYnV0dG9uZ3JvdXAtbWFyZ2luOiAxcmVtICFkZWZhdWx0O1xuXG4vLy8gTWFyZ2luIGJldHdlZW4gYnV0dG9ucyBpbiBhIGJ1dHRvbiBncm91cC5cbi8vLyBAdHlwZSBOdW1iZXJcbiRidXR0b25ncm91cC1zcGFjaW5nOiAxcHggIWRlZmF1bHQ7XG5cbi8vLyBTZWxlY3RvciBmb3IgdGhlIGJ1dHRvbnMgaW5zaWRlIGEgYnV0dG9uIGdyb3VwLlxuLy8vIEB0eXBlIFN0cmluZ1xuJGJ1dHRvbmdyb3VwLWNoaWxkLXNlbGVjdG9yOiAnLmJ1dHRvbicgIWRlZmF1bHQ7XG5cbi8vLyBNYXhpbXVtIG51bWJlciBvZiBidXR0b25zIHRoYXQgY2FuIGJlIGluIGFuIGV2ZW4td2lkdGggYnV0dG9uIGdyb3VwLlxuLy8vIEB0eXBlIE51bWJlclxuJGJ1dHRvbmdyb3VwLWV4cGFuZC1tYXg6IDYgIWRlZmF1bHQ7XG5cbi8vLyBEZXRlcm1pbmVzIGlmICRidXR0b24tcmFkaXVzIGlzIGFwcGxpZWQgdG8gZWFjaCBidXR0b24gb3IgdGhlIGJ1dHRvbiBncm91cCBhcyBhIHdob2xlLiBVc2UgJGdsb2JhbC1yYWRpdXMgaW4gX3NldHRpbmdzLnNjc3MgdG8gY2hhbmdlIHJhZGl1cy5cbi8vLyBAdHlwZSBCb29sZWFuXG4kYnV0dG9uZ3JvdXAtcmFkaXVzLW9uLWVhY2g6IHRydWUgIWRlZmF1bHQ7XG5cbi8vLyBBZGQgc3R5bGVzIGZvciBhIGJ1dHRvbiBncm91cCBjb250YWluZXIuXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRjaGlsZC1zZWxlY3RvciBbJGJ1dHRvbmdyb3VwLWNoaWxkLXNlbGVjdG9yXSAtIFNlbGVjdG9yIGZvciB0aGUgYnV0dG9ucyBpbnNpZGUgYSBidXR0b24gZ3JvdXAuXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRzcGFjaW5nIFskYnV0dG9uZ3JvdXAtc3BhY2luZ10gLSBTcGFjaW5nIGJldHdlZW4gYnV0dG9ucyBpbiBhIGJ1dHRvbiBncm91cC5cbkBtaXhpbiBidXR0b24tZ3JvdXAoXG4gICRjaGlsZC1zZWxlY3RvcjogJGJ1dHRvbmdyb3VwLWNoaWxkLXNlbGVjdG9yLFxuICAkc3BhY2luZzogJGJ1dHRvbmdyb3VwLXNwYWNpbmdcbikge1xuICBAaW5jbHVkZSBjbGVhcmZpeDtcbiAgbWFyZ2luLWJvdHRvbTogJGJ1dHRvbmdyb3VwLW1hcmdpbjtcblxuICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtd3JhcDogbm93cmFwO1xuICAgIGFsaWduLWl0ZW1zOiBzdHJldGNoO1xuICB9XG4gIEBlbHNlIHtcbiAgICBmb250LXNpemU6IDA7XG4gIH1cblxuICAjeyRjaGlsZC1zZWxlY3Rvcn0ge1xuICAgIG1hcmdpbjogMDtcbiAgICBtYXJnaW4tI3skZ2xvYmFsLXJpZ2h0fTogJHNwYWNpbmc7XG4gICAgbWFyZ2luLWJvdHRvbTogJHNwYWNpbmc7XG4gICAgZm9udC1zaXplOiBtYXAtZ2V0KCRidXR0b24tc2l6ZXMsIGRlZmF1bHQpO1xuXG4gICAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgICBmbGV4OiAwIDAgYXV0bztcbiAgICB9XG5cbiAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgbWFyZ2luLSN7JGdsb2JhbC1yaWdodH06IDA7XG4gICAgfVxuXG4gICAgQGlmIG5vdCAkYnV0dG9uZ3JvdXAtcmFkaXVzLW9uLWVhY2gge1xuICAgICAgYm9yZGVyLXJhZGl1czogMDtcblxuICAgICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAgIGJvcmRlci10b3AtI3skZ2xvYmFsLWxlZnR9LXJhZGl1czogJGJ1dHRvbi1yYWRpdXM7XG4gICAgICAgIGJvcmRlci1ib3R0b20tI3skZ2xvYmFsLWxlZnR9LXJhZGl1czogJGJ1dHRvbi1yYWRpdXM7XG4gICAgICB9XG5cbiAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgIGJvcmRlci10b3AtI3skZ2xvYmFsLXJpZ2h0fS1yYWRpdXM6ICRidXR0b24tcmFkaXVzO1xuICAgICAgICBib3JkZXItYm90dG9tLSN7JGdsb2JhbC1yaWdodH0tcmFkaXVzOiAkYnV0dG9uLXJhZGl1cztcbiAgICAgIH1cbiAgICB9XG5cbiAgfVxufVxuXG4vLy8gQ3JlYXRlcyBhIGZ1bGwtd2lkdGggYnV0dG9uIGdyb3VwLCBtYWtpbmcgZWFjaCBidXR0b24gZXF1YWwgd2lkdGguXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRzZWxlY3RvciBbJGJ1dHRvbmdyb3VwLWNoaWxkLXNlbGVjdG9yXSAtIFNlbGVjdG9yIGZvciB0aGUgYnV0dG9ucyBpbnNpZGUgYSBidXR0b24gZ3JvdXAuXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRzcGFjaW5nIFskYnV0dG9uZ3JvdXAtc3BhY2luZ10gLSBTcGFjaW5nIGJldHdlZW4gYnV0dG9ucyBpbiBhIGJ1dHRvbiBncm91cC5cbkBtaXhpbiBidXR0b24tZ3JvdXAtZXhwYW5kKFxuICAkc2VsZWN0b3I6ICRidXR0b25ncm91cC1jaGlsZC1zZWxlY3RvcixcbiAgJHNwYWNpbmc6ICRidXR0b25ncm91cC1zcGFjaW5nLFxuICAkY291bnQ6IG51bGxcbikge1xuICBAaWYgbm90ICRnbG9iYWwtZmxleGJveCB7XG4gICAgbWFyZ2luLSN7JGdsb2JhbC1yaWdodH06IC0kc3BhY2luZztcblxuICAgICY6OmJlZm9yZSxcbiAgICAmOjphZnRlciB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgfVxuXG4gICN7JHNlbGVjdG9yfSB7XG4gICAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgICBmbGV4OiAxIDEgMHB4OyAvLyBzYXNzLWxpbnQ6ZGlzYWJsZS1saW5lIHplcm8tdW5pdFxuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICAvLyBPbmUgY2hpbGRcbiAgICAgICY6Zmlyc3QtY2hpbGQ6bGFzdC1jaGlsZCB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgfVxuXG4gICAgICAvLyBUd28gb3IgbW9yZSBjaGlsZHJlZW5cbiAgICAgIEBmb3IgJGkgZnJvbSAyIHRocm91Z2ggJGJ1dHRvbmdyb3VwLWV4cGFuZC1tYXgge1xuICAgICAgICAmOmZpcnN0LWNoaWxkOm50aC1sYXN0LWNoaWxkKCN7JGl9KSB7XG4gICAgICAgICAgJiwgJjpmaXJzdC1jaGlsZDpudGgtbGFzdC1jaGlsZCgjeyRpfSkgfiAjeyRzZWxlY3Rvcn0ge1xuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgd2lkdGg6IGNhbGMoI3twZXJjZW50YWdlKDEgLyAkaSl9IC0gI3skc3BhY2luZ30pO1xuICAgICAgICAgICAgbWFyZ2luLSN7JGdsb2JhbC1yaWdodH06ICRzcGFjaW5nO1xuXG4gICAgICAgICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICAgICAgICBtYXJnaW4tI3skZ2xvYmFsLXJpZ2h0fTogJHNwYWNpbmcgKiAtJGJ1dHRvbmdyb3VwLWV4cGFuZC1tYXg7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8vLyBTdGFja3MgdGhlIGJ1dHRvbnMgaW4gYSBidXR0b24gZ3JvdXAuXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRzZWxlY3RvciBbJGJ1dHRvbmdyb3VwLWNoaWxkLXNlbGVjdG9yXSAtIFNlbGVjdG9yIGZvciB0aGUgYnV0dG9ucyBpbnNpZGUgdGhlIGJ1dHRvbiBncm91cC5cbkBtaXhpbiBidXR0b24tZ3JvdXAtc3RhY2soXG4gICRzZWxlY3RvcjogJGJ1dHRvbmdyb3VwLWNoaWxkLXNlbGVjdG9yXG4pIHtcbiAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgZmxleC13cmFwOiB3cmFwO1xuICB9XG5cbiAgI3skc2VsZWN0b3J9IHtcbiAgICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAgIGZsZXg6IDAgMCAxMDAlO1xuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICB9XG5cbiAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICB9XG5cblxuICAgIEBpZiBub3QgJGJ1dHRvbmdyb3VwLXJhZGl1cy1vbi1lYWNoIHtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDA7XG5cbiAgICAgICY6Zmlyc3QtY2hpbGR7XG4gICAgICAgIGJvcmRlci10b3AtI3skZ2xvYmFsLWxlZnR9LXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG4gICAgICAgIGJvcmRlci10b3AtI3skZ2xvYmFsLXJpZ2h0fS1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuICAgICAgfVxuXG4gICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICBib3JkZXItYm90dG9tLSN7JGdsb2JhbC1sZWZ0fS1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuICAgICAgICBib3JkZXItYm90dG9tLSN7JGdsb2JhbC1yaWdodH0tcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcbiAgICAgIH1cbiAgICB9XG5cbiAgfVxufVxuXG4vLy8gVW4tc3RhY2tzIHRoZSBidXR0b25zIGluIGEgYnV0dG9uIGdyb3VwLlxuLy8vIEBwYXJhbSB7U3RyaW5nfSAkc2VsZWN0b3IgWyRidXR0b25ncm91cC1jaGlsZC1zZWxlY3Rvcl0gLSBTZWxlY3RvciBmb3IgdGhlIGJ1dHRvbnMgaW5zaWRlIHRoZSBidXR0b24gZ3JvdXAuXG5AbWl4aW4gYnV0dG9uLWdyb3VwLXVuc3RhY2soXG4gICRzZWxlY3RvcjogJGJ1dHRvbmdyb3VwLWNoaWxkLXNlbGVjdG9yXG4pIHtcbiAgI3skc2VsZWN0b3J9IHtcbiAgICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAgIGZsZXg6IDEgMSAwcHg7IC8vIHNhc3MtbGludDpkaXNhYmxlLWxpbmUgemVyby11bml0XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgIHdpZHRoOiBhdXRvO1xuICAgIH1cbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuXG4gICAgQGlmIG5vdCAkYnV0dG9uZ3JvdXAtcmFkaXVzLW9uLWVhY2gge1xuICAgICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAgIGJvcmRlci10b3AtI3skZ2xvYmFsLWxlZnR9LXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG4gICAgICAgIGJvcmRlci10b3AtI3skZ2xvYmFsLXJpZ2h0fS1yYWRpdXM6IDA7XG4gICAgICAgIGJvcmRlci1ib3R0b20tI3skZ2xvYmFsLWxlZnR9LXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG4gICAgICB9XG5cbiAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgIGJvcmRlci10b3AtI3skZ2xvYmFsLXJpZ2h0fS1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuICAgICAgICBib3JkZXItYm90dG9tLSN7JGdsb2JhbC1yaWdodH0tcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcbiAgICAgICAgYm9yZGVyLWJvdHRvbS0jeyRnbG9iYWwtbGVmdH0tcmFkaXVzOiAwO1xuICAgICAgfVxuICAgIH1cblxuICB9XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLWJ1dHRvbi1ncm91cCB7XG4gIC5idXR0b24tZ3JvdXAge1xuICAgIEBpbmNsdWRlIGJ1dHRvbi1ncm91cDtcblxuICAgIC8vIFNpemVzXG4gICAgQGVhY2ggJHNpemUsICR2YWx1ZSBpbiBtYXAtcmVtb3ZlKCRidXR0b24tc2l6ZXMsIGRlZmF1bHQpIHtcbiAgICAgICYuI3skc2l6ZX0gI3skYnV0dG9uZ3JvdXAtY2hpbGQtc2VsZWN0b3J9IHtcbiAgICAgICAgZm9udC1zaXplOiAkdmFsdWU7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gRXZlbi13aWR0aCBHcm91cFxuICAgICYuZXhwYW5kZWQgeyBAaW5jbHVkZSBidXR0b24tZ3JvdXAtZXhwYW5kOyB9XG5cbiAgICAvLyBDb2xvcnNcbiAgICBAZWFjaCAkbmFtZSwgJGNvbG9yIGluICRmb3VuZGF0aW9uLXBhbGV0dGUge1xuICAgICAgQGlmICRidXR0b24tZmlsbCAhPSBob2xsb3cge1xuICAgICAgICAmLiN7JG5hbWV9ICN7JGJ1dHRvbmdyb3VwLWNoaWxkLXNlbGVjdG9yfSB7XG4gICAgICAgICAgQGluY2x1ZGUgYnV0dG9uLXN0eWxlKCRjb2xvciwgYXV0bywgYXV0byk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIEBlbHNlIHtcbiAgICAgICAgJi4jeyRuYW1lfSAjeyRidXR0b25ncm91cC1jaGlsZC1zZWxlY3Rvcn0ge1xuICAgICAgICAgIEBpbmNsdWRlIGJ1dHRvbi1ob2xsb3c7XG4gICAgICAgICAgQGluY2x1ZGUgYnV0dG9uLWhvbGxvdy1zdHlsZSgkY29sb3IpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgJi5zdGFja2VkLFxuICAgICYuc3RhY2tlZC1mb3Itc21hbGwsXG4gICAgJi5zdGFja2VkLWZvci1tZWRpdW0ge1xuICAgICAgQGluY2x1ZGUgYnV0dG9uLWdyb3VwLXN0YWNrO1xuICAgIH1cblxuICAgICYuc3RhY2tlZC1mb3Itc21hbGwge1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgQGluY2x1ZGUgYnV0dG9uLWdyb3VwLXVuc3RhY2s7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJi5zdGFja2VkLWZvci1tZWRpdW0ge1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICBAaW5jbHVkZSBidXR0b24tZ3JvdXAtdW5zdGFjaztcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmLnN0YWNrZWQtZm9yLXNtYWxsLmV4cGFuZGVkIHsgLy8gc2Fzcy1saW50OmRpc2FibGUtbGluZSBmb3JjZS1lbGVtZW50LW5lc3RpbmdcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcblxuICAgICAgICAjeyRidXR0b25ncm91cC1jaGlsZC1zZWxlY3Rvcn0ge1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgIG1hcmdpbi0jeyRnbG9iYWwtcmlnaHR9OiAwO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBjYWxsb3V0XG4vLy8vXG5cbi8vLyBEZWZhdWx0IGJhY2tncm91bmQgY29sb3IuXG4vLy8gQHR5cGUgQ29sb3JcbiRjYWxsb3V0LWJhY2tncm91bmQ6ICR3aGl0ZSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgZmFkZSB2YWx1ZSBmb3IgY2FsbG91dCBiYWNrZ3JvdW5kcy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRjYWxsb3V0LWJhY2tncm91bmQtZmFkZTogODUlICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBib3JkZXIgc3R5bGUgZm9yIGNhbGxvdXRzLlxuLy8vIEB0eXBlIExpc3RcbiRjYWxsb3V0LWJvcmRlcjogMXB4IHNvbGlkIHJnYmEoJGJsYWNrLCAwLjI1KSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgYm90dG9tIG1hcmdpbiBmb3IgY2FsbG91dHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kY2FsbG91dC1tYXJnaW46IDAgMCAxcmVtIDAgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGlubmVyIHBhZGRpbmcgZm9yIGNhbGxvdXRzLlxuLy8vIEB0eXBlIE51bWJlclxuJGNhbGxvdXQtcGFkZGluZzogMXJlbSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgZm9udCBjb2xvciBmb3IgY2FsbG91dHMuXG4vLy8gQHR5cGUgQ29sb3JcbiRjYWxsb3V0LWZvbnQtY29sb3I6ICRib2R5LWZvbnQtY29sb3IgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGZvbnQgY29sb3IgZm9yIGNhbGxvdXRzLCBpZiB0aGUgY2FsbG91dCBoYXMgYSBkYXJrIGJhY2tncm91bmQuXG4vLy8gQHR5cGUgQ29sb3JcbiRjYWxsb3V0LWZvbnQtY29sb3ItYWx0OiAkYm9keS1iYWNrZ3JvdW5kICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBib3JkZXIgcmFkaXVzIGZvciBjYWxsb3V0cy5cbi8vLyBAdHlwZSBDb2xvclxuJGNhbGxvdXQtcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cyAhZGVmYXVsdDtcblxuLy8vIEFtb3VudCB0byB0aW50IGxpbmtzIHVzZWQgd2l0aGluIGNvbG9yZWQgcGFuZWxzLiBTZXQgdG8gYGZhbHNlYCB0byBkaXNhYmxlIHRoaXMgZmVhdHVyZS5cbi8vLyBAdHlwZSBOdW1iZXIgfCBCb29sZWFuXG4kY2FsbG91dC1saW5rLXRpbnQ6IDMwJSAhZGVmYXVsdDtcblxuLy8vIEFkZHMgYmFzaWMgc3R5bGVzIGZvciBhIGNhbGxvdXQsIGluY2x1ZGluZyBwYWRkaW5nIGFuZCBtYXJnaW4uXG5AbWl4aW4gY2FsbG91dC1iYXNlKCkge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG1hcmdpbjogJGNhbGxvdXQtbWFyZ2luO1xuICBwYWRkaW5nOiAkY2FsbG91dC1wYWRkaW5nO1xuXG4gIGJvcmRlcjogJGNhbGxvdXQtYm9yZGVyO1xuICBib3JkZXItcmFkaXVzOiAkY2FsbG91dC1yYWRpdXM7XG5cbiAgLy8gUmVzcGVjdCB0aGUgcGFkZGluZywgZm9vbC5cbiAgPiA6Zmlyc3QtY2hpbGQge1xuICAgIG1hcmdpbi10b3A6IDA7XG4gIH1cblxuICA+IDpsYXN0LWNoaWxkIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICB9XG59XG5cbi8vLyBHZW5lcmF0ZSBxdWljayBzdHlsZXMgZm9yIGEgY2FsbG91dCB1c2luZyBhIHNpbmdsZSBjb2xvciBhcyBhIGJhc2VsaW5lLlxuLy8vIEBwYXJhbSB7Q29sb3J9ICRjb2xvciBbJGNhbGxvdXQtYmFja2dyb3VuZF0gLSBDb2xvciB0byB1c2UuXG5AbWl4aW4gY2FsbG91dC1zdHlsZSgkY29sb3I6ICRjYWxsb3V0LWJhY2tncm91bmQpIHtcbiAgJGJhY2tncm91bmQ6IHNjYWxlLWNvbG9yKCRjb2xvciwgJGxpZ2h0bmVzczogJGNhbGxvdXQtYmFja2dyb3VuZC1mYWRlKTtcblxuICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmFja2dyb3VuZDtcbiAgY29sb3I6IGNvbG9yLXBpY2stY29udHJhc3QoJGJhY2tncm91bmQsICgkY2FsbG91dC1mb250LWNvbG9yLCAkY2FsbG91dC1mb250LWNvbG9yLWFsdCkpO1xufVxuXG5AbWl4aW4gY2FsbG91dC1zaXplKCRwYWRkaW5nKSB7XG4gIHBhZGRpbmctdG9wOiAkcGFkZGluZztcbiAgcGFkZGluZy1yaWdodDogJHBhZGRpbmc7XG4gIHBhZGRpbmctYm90dG9tOiAkcGFkZGluZztcbiAgcGFkZGluZy1sZWZ0OiAkcGFkZGluZztcbn1cblxuXG4vLy8gQWRkcyBzdHlsZXMgZm9yIGEgY2FsbG91dC5cbi8vLyBAcGFyYW0ge0NvbG9yfSAkY29sb3IgWyRjYWxsb3V0LWJhY2tncm91bmRdIC0gQ29sb3IgdG8gdXNlLlxuQG1peGluIGNhbGxvdXQoJGNvbG9yOiAkY2FsbG91dC1iYWNrZ3JvdW5kKSB7XG4gIEBpbmNsdWRlIGNhbGxvdXQtYmFzZTtcbiAgQGluY2x1ZGUgY2FsbG91dC1zdHlsZSgkY29sb3IpO1xufVxuXG5AbWl4aW4gZm91bmRhdGlvbi1jYWxsb3V0IHtcbiAgLmNhbGxvdXQge1xuICAgIEBpbmNsdWRlIGNhbGxvdXQ7XG5cbiAgICBAZWFjaCAkbmFtZSwgJGNvbG9yIGluICRmb3VuZGF0aW9uLXBhbGV0dGUge1xuICAgICAgJi4jeyRuYW1lfSB7XG4gICAgICAgIEBpbmNsdWRlIGNhbGxvdXQtc3R5bGUoJGNvbG9yKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmLnNtYWxsIHtcbiAgICAgIEBpbmNsdWRlIGNhbGxvdXQtc2l6ZSgwLjVyZW0pO1xuICAgIH1cblxuICAgICYubGFyZ2Uge1xuICAgICAgQGluY2x1ZGUgY2FsbG91dC1zaXplKDNyZW0pO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgY2FyZFxuLy8vL1xuXG4vLy8gRGVmdWFsdCBiYWNrZ3JvdW5kIGNvbG9yLlxuLy8vIEB0eXBlIENvbG9yXG4kY2FyZC1iYWNrZ3JvdW5kOiAkd2hpdGUgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGZvbnQgY29sb3IgZm9yIGNhcmRzLlxuLy8vIEB0eXBlIENvbG9yXG4kY2FyZC1mb250LWNvbG9yOiAkYm9keS1mb250LWNvbG9yICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBiYWNrZ3JvdW5kLlxuLy8vIEB0eXBlIENvbG9yXG4kY2FyZC1kaXZpZGVyLWJhY2tncm91bmQ6ICRsaWdodC1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBib3JkZXIgc3R5bGUuXG4vLy8gQHR5cGUgTGlzdFxuJGNhcmQtYm9yZGVyOiAxcHggc29saWQgJGxpZ2h0LWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGNhcmQgc2hhZG93LlxuLy8vIEB0eXBlIExpc3RcbiRjYXJkLXNoYWRvdzogbm9uZSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgYm9yZGVyIHJhZGl1cy5cbi8vLyBAdHlwZSBMaXN0XG4kY2FyZC1ib3JkZXItcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cyAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgcGFkZGluZy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRjYXJkLXBhZGRpbmc6ICRnbG9iYWwtcGFkZGluZyAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgYm90dG9tIG1hcmdpbi5cbi8vLyBAdHlwZSBudW1iZXJcbiRjYXJkLW1hcmdpbi1ib3R0b206ICRnbG9iYWwtbWFyZ2luICFkZWZhdWx0O1xuXG4vLy8gQWRkcyBzdHlsZXMgZm9yIGEgY2FyZCBjb250YWluZXIuXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGJhY2tncm91bmQgLSBCYWNrZ3JvdW5kIGNvbG9yIG9mIHRoZSBjYXJkLlxuLy8vIEBwYXJhbSB7Q29sb3J9ICRjb2xvciAtIGZvbnQgY29sb3Igb2YgdGhlIGNhcmQuXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRtYXJnaW4gLSBCb3R0b20gbWFyZ2luIG9mIHRoZSBjYXJkLlxuLy8vIEBwYXJhbSB7TGlzdH0gJGJvcmRlciAtIEJvcmRlciBhcm91bmQgdGhlIGNhcmQuXG4vLy8gQHBhcmFtIHtMaXN0fSAkcmFkaXVzIC0gYm9yZGVyIHJhZGl1cyBvZiB0aGUgY2FyZC5cbi8vLyBAcGFyYW0ge0xpc3R9ICRzaGFkb3cgLSBib3ggc2hhZG93IG9mIHRoZSBjYXJkLlxuQG1peGluIGNhcmQtY29udGFpbmVyKFxuICAkYmFja2dyb3VuZDogJGNhcmQtYmFja2dyb3VuZCxcbiAgJGNvbG9yOiAkY2FyZC1mb250LWNvbG9yLFxuICAkbWFyZ2luOiAkY2FyZC1tYXJnaW4tYm90dG9tLFxuICAkYm9yZGVyOiAkY2FyZC1ib3JkZXIsXG4gICRyYWRpdXM6ICRjYXJkLWJvcmRlci1yYWRpdXMsXG4gICRzaGFkb3c6ICRjYXJkLXNoYWRvd1xuKSB7XG4gIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBmbGV4LWdyb3c6IDE7XG4gIH1cblxuICBtYXJnaW4tYm90dG9tOiAkbWFyZ2luO1xuXG4gIGJvcmRlcjogJGJvcmRlcjtcbiAgYm9yZGVyLXJhZGl1czogJHJhZGl1cztcblxuICBiYWNrZ3JvdW5kOiAkYmFja2dyb3VuZDtcbiAgYm94LXNoYWRvdzogJHNoYWRvdztcblxuICBvdmVyZmxvdzogaGlkZGVuO1xuICBjb2xvcjogJGNvbG9yO1xuXG4gICYgPiA6bGFzdC1jaGlsZCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgfVxufVxuXG4vLy8gQWRkcyBzdHlsZXMgZm9yIGEgY2FyZCBkaXZpZGVyLlxuQG1peGluIGNhcmQtZGl2aWRlcihcbiAgJGJhY2tncm91bmQ6ICRjYXJkLWRpdmlkZXItYmFja2dyb3VuZCxcbiAgJHBhZGRpbmc6ICRjYXJkLXBhZGRpbmdcbikge1xuICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICBmbGV4OiAwIDEgYXV0bztcbiAgICBkaXNwbGF5OiBmbGV4O1xuICB9XG5cbiAgcGFkZGluZzogJHBhZGRpbmc7XG4gIGJhY2tncm91bmQ6ICRiYWNrZ3JvdW5kO1xuXG4gICYgPiA6bGFzdC1jaGlsZCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgfVxufVxuXG4vLy8gQWRkcyBzdHlsZXMgZm9yIGEgY2FyZCBzZWN0aW9uLlxuQG1peGluIGNhcmQtc2VjdGlvbihcbiAgJHBhZGRpbmc6ICRjYXJkLXBhZGRpbmdcbikge1xuICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICBmbGV4OiAxIDAgYXV0bztcbiAgfVxuXG4gIHBhZGRpbmc6ICRwYWRkaW5nO1xuXG4gICYgPiA6bGFzdC1jaGlsZCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgfVxufVxuXG5AbWl4aW4gZm91bmRhdGlvbi1jYXJkIHtcbiAgLmNhcmQge1xuICAgIEBpbmNsdWRlIGNhcmQtY29udGFpbmVyO1xuICB9XG5cbiAgLmNhcmQtZGl2aWRlciB7XG4gICAgQGluY2x1ZGUgY2FyZC1kaXZpZGVyO1xuICB9XG5cbiAgLmNhcmQtc2VjdGlvbiB7XG4gICAgQGluY2x1ZGUgY2FyZC1zZWN0aW9uO1xuICB9XG5cbiAgLy8gRm9yIElFIDExIC0gRmxleGJ1Z1xuICAvLyBodHRwczovL2dpdGh1Yi5jb20vcGhpbGlwd2FsdG9uL2ZsZXhidWdzL2lzc3Vlcy83NVxuICAuY2FyZC1pbWFnZSB7XG4gICAgbWluLWhlaWdodDogMXB4O1xuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBjbG9zZS1idXR0b25cbi8vLy9cblxuLy8vIERlZmF1bHQgcG9zaXRpb24gb2YgdGhlIGNsb3NlIGJ1dHRvbi4gVGhlIGZpcnN0IHZhbHVlIHNob3VsZCBiZSBgcmlnaHRgIG9yIGBsZWZ0YCwgYW5kIHRoZSBzZWNvbmQgdmFsdWUgc2hvdWxkIGJlIGB0b3BgIG9yIGBib3R0b21gLlxuLy8vIEB0eXBlIExpc3RcbiRjbG9zZWJ1dHRvbi1wb3NpdGlvbjogcmlnaHQgdG9wICFkZWZhdWx0O1xuXG4vLy8gUmlnaHQgKG9yIGxlZnQpIG9mZnNldChzKSBmb3IgYSBjbG9zZSBidXR0b24uXG4vLy8gQHR5cGUgTnVtYmVyfE1hcFxuJGNsb3NlYnV0dG9uLW9mZnNldC1ob3Jpem9udGFsOiAoXG4gIHNtYWxsOiAwLjY2cmVtLFxuICBtZWRpdW06IDFyZW0sXG4pICFkZWZhdWx0O1xuXG4vLy8gVG9wIChvciBib3R0b20pIG9mZnNldChzKSBmb3IgYSBjbG9zZSBidXR0b24uXG4vLy8gQHR5cGUgTnVtYmVyfE1hcFxuJGNsb3NlYnV0dG9uLW9mZnNldC12ZXJ0aWNhbDogKFxuICBzbWFsbDogMC4zM2VtLFxuICBtZWRpdW06IDAuNXJlbSxcbikgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGZvbnQgc2l6ZShzKSBvZiB0aGUgY2xvc2UgYnV0dG9uLlxuLy8vIEB0eXBlIE51bWJlcnxNYXBcbiRjbG9zZWJ1dHRvbi1zaXplOiAoXG4gIHNtYWxsOiAxLjVlbSxcbiAgbWVkaXVtOiAyZW0sXG4pICFkZWZhdWx0O1xuXG4vLy8gVGhlIGxpbmUtaGVpZ2h0IG9mIHRoZSBjbG9zZSBidXR0b24uIEl0IGFmZmVjdHMgdGhlIHNwYWNpbmcgb2YgdGhlIGVsZW1lbnQuXG4vLy8gQHR5cGUgTnVtYmVyXG4kY2xvc2VidXR0b24tbGluZWhlaWdodDogMSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgY29sb3Igb2YgdGhlIGNsb3NlIGJ1dHRvbi5cbi8vLyBAdHlwZSBDb2xvclxuJGNsb3NlYnV0dG9uLWNvbG9yOiAkZGFyay1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBjb2xvciBvZiB0aGUgY2xvc2UgYnV0dG9uIHdoZW4gYmVpbmcgaG92ZXJlZCBvbi5cbi8vLyBAdHlwZSBDb2xvclxuJGNsb3NlYnV0dG9uLWNvbG9yLWhvdmVyOiAkYmxhY2sgIWRlZmF1bHQ7XG5cblxuLy8vIEdldCB0aGUgc2l6ZSBhbmQgcG9zaXRpb24gZm9yIGEgY2xvc2UgYnV0dG9uLiBJZiB0aGUgaW5wdXQgdmFsdWUgaXMgYSBudW1iZXIsIHRoZSBudW1iZXIgaXMgcmV0dXJuZWQuIElmIHRoZSBpbnB1dCB2YWx1ZSBpcyBhIGNvbmZpZyBtYXAgYW5kIHRoZSBtYXAgaGFzIHRoZSBrZXkgYCRzaXplYCwgdGhlIHZhbHVlIGlzIHJldHVybmVkLlxuLy8vXG4vLy8gQHBhcmFtIHtOdW1iZXJ8TWFwfSAkdmFsdWUgLSBBIG51bWJlciBvciBtYXAgdGhhdCByZXByZXNlbnRzIHRoZSBzaXplIG9yIHBvc2l0aW9uIHZhbHVlKHMpIG9mIHRoZSBjbG9zZSBidXR0b24uXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkc2l6ZSAtIFRoZSBzaXplIG9mIHRoZSBjbG9zZSBidXR0b24gdG8gdXNlLlxuLy8vXG4vLy8gQHJldHVybiB7TnVtYmVyfSBUaGUgZ2l2ZW4gbnVtYmVyIG9yIHRoZSB2YWx1ZSBmb3VuZCBpbiB0aGUgbWFwLlxuQGZ1bmN0aW9uIC16Zi1nZXQtc2l6ZS12YWwoJHZhbHVlLCAkc2l6ZSkge1xuICAvLyBDaGVjayBpZiB0aGUgdmFsdWUgaXMgYSBudW1iZXJcbiAgQGlmIHR5cGUtb2YoJHZhbHVlKSA9PSAnbnVtYmVyJyB7XG4gICAgLy8gSWYgaXQgaXMsIGp1c3QgcmV0dXJuIHRoZSBudW1iZXJcbiAgICBAcmV0dXJuICR2YWx1ZTtcbiAgfVxuXG4gIC8vIENoZWNrIGlmIHRoZSBzaXplIG5hbWUgZXhpc3RzIGluIHRoZSB2YWx1ZSBtYXBcbiAgQGVsc2UgaWYgbWFwLWhhcy1rZXkoJHZhbHVlLCAkc2l6ZSkge1xuICAgIC8vIElmIGl0IGRvZXMsIHJldHVybiB0aGUgdmFsdWVcbiAgICBAcmV0dXJuIG1hcC1nZXQoJHZhbHVlLCAkc2l6ZSk7XG4gIH1cbn1cblxuLy8vIFNldHMgdGhlIHNpemUgYW5kIHBvc2l0aW9uIG9mIGEgY2xvc2UgYnV0dG9uLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJHNpemUgW21lZGl1bV0gLSBUaGUgc2l6ZSB0byB1c2UuIFNldCB0byBgc21hbGxgIHRvIGNyZWF0ZSBhIHNtYWxsIGNsb3NlIGJ1dHRvbi4gVGhlICdtZWRpdW0nIHZhbHVlcyBkZWZpbmVkIGluIGAkY2xvc2VidXR0b24tKmAgdmFyaWFibGVzIHdpbGwgYmUgdXNlZCBhcyB0aGUgZGVmYXVsdCBzaXplIGFuZCBwb3NpdGlvbiBvZiB0aGUgY2xvc2UgYnV0dG9uLlxuQG1peGluIGNsb3NlLWJ1dHRvbi1zaXplKCRzaXplKSB7XG4gICR4OiBudGgoJGNsb3NlYnV0dG9uLXBvc2l0aW9uLCAxKTtcbiAgJHk6IG50aCgkY2xvc2VidXR0b24tcG9zaXRpb24sIDIpO1xuXG4gICN7JHh9OiAtemYtZ2V0LXNpemUtdmFsKCRjbG9zZWJ1dHRvbi1vZmZzZXQtaG9yaXpvbnRhbCwgJHNpemUpO1xuICAjeyR5fTogLXpmLWdldC1zaXplLXZhbCgkY2xvc2VidXR0b24tb2Zmc2V0LXZlcnRpY2FsLCAkc2l6ZSk7XG4gIGZvbnQtc2l6ZTogLXpmLWdldC1zaXplLXZhbCgkY2xvc2VidXR0b24tc2l6ZSwgJHNpemUpO1xuICBsaW5lLWhlaWdodDogLXpmLWdldC1zaXplLXZhbCgkY2xvc2VidXR0b24tbGluZWhlaWdodCwgJHNpemUpO1xufVxuXG4vLy8gQWRkcyBzdHlsZXMgZm9yIGEgY2xvc2UgYnV0dG9uLCB1c2luZyB0aGUgc3R5bGVzIGluIHRoZSBzZXR0aW5ncyB2YXJpYWJsZXMuXG5AbWl4aW4gY2xvc2UtYnV0dG9uIHtcbiAgJHg6IG50aCgkY2xvc2VidXR0b24tcG9zaXRpb24sIDEpO1xuICAkeTogbnRoKCRjbG9zZWJ1dHRvbi1wb3NpdGlvbiwgMik7XG5cbiAgQGluY2x1ZGUgZGlzYWJsZS1tb3VzZS1vdXRsaW5lO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGNvbG9yOiAkY2xvc2VidXR0b24tY29sb3I7XG4gIGN1cnNvcjogcG9pbnRlcjtcblxuICAmOmhvdmVyLFxuICAmOmZvY3VzIHtcbiAgICBjb2xvcjogJGNsb3NlYnV0dG9uLWNvbG9yLWhvdmVyO1xuICB9XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLWNsb3NlLWJ1dHRvbiB7XG4gIC5jbG9zZS1idXR0b24ge1xuICAgIEBpbmNsdWRlIGNsb3NlLWJ1dHRvbjtcblxuICAgICYuc21hbGwgeyBAaW5jbHVkZSBjbG9zZS1idXR0b24tc2l6ZShzbWFsbCkgfVxuICAgICYsICYubWVkaXVtIHsgQGluY2x1ZGUgY2xvc2UtYnV0dG9uLXNpemUobWVkaXVtKSB9XG4gIH1cbn1cbiIsIkBtaXhpbiBmb3VuZGF0aW9uLW1lbnUtaWNvbiB7XG4gIC5tZW51LWljb24ge1xuICAgIEBpbmNsdWRlIGhhbWJ1cmdlcigkY29sb3I6ICR0aXRsZWJhci1pY29uLWNvbG9yLCAkY29sb3ItaG92ZXI6ICR0aXRsZWJhci1pY29uLWNvbG9yLWhvdmVyKTtcbiAgfVxuXG4gIC5tZW51LWljb24uZGFyayB7XG4gICAgQGluY2x1ZGUgaGFtYnVyZ2VyO1xuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBkcmlsbGRvd25cbi8vLy9cblxuLy8vIFRyYW5zaXRpb24gcHJvcGVydHkgdG8gdXNlIGZvciBhbmltYXRpbmcgbWVudXMuXG4vLy8gQHR5cGUgVHJhbnNpdGlvblxuJGRyaWxsZG93bi10cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4xNXMgbGluZWFyICFkZWZhdWx0O1xuXG4vLy8gQWRkcyBhcnJvd3MgdG8gZHJpbGxkb3duIGl0ZW1zIHdpdGggc3VibWVudXMsIGFzIHdlbGwgYXMgdGhlIGJhY2sgYnV0dG9uLlxuLy8vIEB0eXBlIEJvb2xlYW5cbiRkcmlsbGRvd24tYXJyb3dzOiB0cnVlICFkZWZhdWx0O1xuXG4vLy8gU2V0cyBkcmlsbGRvd24gbWVudSBpdGVtIHBhZGRpbmcuXG4vLy8gQHR5cGUgTnVtYmVyXG4kZHJpbGxkb3duLXBhZGRpbmc6ICRnbG9iYWwtbWVudS1wYWRkaW5nICFkZWZhdWx0O1xuXG4vLy8gU2V0cyBkcmlsbGRvd24gbWVudSBuZXN0ZWQgbWFyZ2luXG4vLy8gQHR5cGUgTnVtYmVyXG4kZHJpbGxkb3duLW5lc3RlZC1tYXJnaW46IDAgIWRlZmF1bHQ7XG5cbi8vLyBCYWNrZ3JvdW5kIGNvbG9yIGZvciBkcmlsbGRvd24gdG9wIGxldmVsIGl0ZW1zLlxuLy8vIEB0eXBlIENvbG9yXG4kZHJpbGxkb3duLWJhY2tncm91bmQ6ICR3aGl0ZSAhZGVmYXVsdDtcblxuLy8vIFNldHMgZHJpbGxkb3duIG1lbnUgaXRlbSBwYWRkaW5nIGluIHRoZSBzdWJtZW51LlxuLy8vIEB0eXBlIE51bWJlclxuJGRyaWxsZG93bi1zdWJtZW51LXBhZGRpbmc6ICRkcmlsbGRvd24tcGFkZGluZyAhZGVmYXVsdDtcblxuLy8vIEJhY2tncm91bmQgY29sb3IgZm9yIGRyaWxsZG93biBzdWJtZW51cy5cbi8vLyBAdHlwZSBDb2xvclxuJGRyaWxsZG93bi1zdWJtZW51LWJhY2tncm91bmQ6ICR3aGl0ZSAhZGVmYXVsdDtcblxuLy8vIFNldHMgZHJpbGxkb3duIGFycm93IGNvbG9yIGlmIGFycm93IGlzIHVzZWQuXG4vLy8gQHR5cGUgQ29sb3JcbiRkcmlsbGRvd24tYXJyb3ctY29sb3I6ICRwcmltYXJ5LWNvbG9yICFkZWZhdWx0O1xuXG4vLy8gU2V0cyBkcmlsbGRvd24gYXJyb3cgc2l6ZSBpZiBhcnJvdyBpcyB1c2VkLlxuLy8vIEB0eXBlIExlbmd0aFxuJGRyaWxsZG93bi1hcnJvdy1zaXplOiA2cHggIWRlZmF1bHQ7XG5cbkBtaXhpbiB6Zi1kcmlsbGRvd24tbGVmdC1yaWdodC1hcnJvd3Mge1xuICAuaXMtZHJpbGxkb3duLXN1Ym1lbnUtcGFyZW50ID4gYSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICY6OmFmdGVyIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogNTAlO1xuICAgICAgbWFyZ2luLXRvcDogLTEgKiAkZHJpbGxkb3duLWFycm93LXNpemU7XG4gICAgICAjeyRnbG9iYWwtcmlnaHR9OiAxcmVtO1xuICAgICAgQGluY2x1ZGUgY3NzLXRyaWFuZ2xlKCRkcmlsbGRvd24tYXJyb3ctc2l6ZSwgJGRyaWxsZG93bi1hcnJvdy1jb2xvciwgJGdsb2JhbC1yaWdodCk7XG4gICAgfVxuICB9XG5cbiAgJi5hbGlnbi1sZWZ0IC5pcy1kcmlsbGRvd24tc3VibWVudS1wYXJlbnQgPiBhOjphZnRlciB7XG4gICAgbGVmdDogYXV0bztcbiAgICByaWdodDogMXJlbTtcbiAgICBAaW5jbHVkZSBjc3MtdHJpYW5nbGUoJGRyb3Bkb3dubWVudS1hcnJvdy1zaXplLCAkZHJvcGRvd25tZW51LWFycm93LWNvbG9yLCByaWdodCk7XG4gIH1cblxuICAmLmFsaWduLXJpZ2h0IC5pcy1kcmlsbGRvd24tc3VibWVudS1wYXJlbnQgPiBhOjphZnRlciB7XG4gICAgcmlnaHQ6IGF1dG87XG4gICAgbGVmdDogMXJlbTtcbiAgICBAaW5jbHVkZSBjc3MtdHJpYW5nbGUoJGRyb3Bkb3dubWVudS1hcnJvdy1zaXplLCAkZHJvcGRvd25tZW51LWFycm93LWNvbG9yLCBsZWZ0KTtcbiAgfVxuXG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLWRyaWxsZG93bi1tZW51IHtcbiAgLy8gQXBwbGllZCB0byB0aGUgTWVudSBjb250YWluZXJcbiAgLmlzLWRyaWxsZG93biB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG5cbiAgICBsaSB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICB9XG5cbiAgICAmLmFuaW1hdGUtaGVpZ2h0IHtcbiAgICAgIHRyYW5zaXRpb246IGhlaWdodCAwLjVzO1xuICAgIH1cbiAgfVxuXG4gIC8vIFRoZSB0b3AgbGV2ZWwgPHVsPlxuICAuZHJpbGxkb3duIHtcbiAgICBhIHtcbiAgICAgIHBhZGRpbmc6ICRkcmlsbGRvd24tcGFkZGluZztcbiAgICAgIGJhY2tncm91bmQ6ICRkcmlsbGRvd24tYmFja2dyb3VuZDtcbiAgICB9XG5cbiAgICAvLyBBcHBsaWVkIHRvIHN1Ym1lbnUgPHVsPnNcbiAgICAuaXMtZHJpbGxkb3duLXN1Ym1lbnUge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiAwO1xuICAgICAgI3skZ2xvYmFsLWxlZnR9OiAxMDAlO1xuICAgICAgei1pbmRleDogLTE7XG5cbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgYmFja2dyb3VuZDogJGRyaWxsZG93bi1zdWJtZW51LWJhY2tncm91bmQ7XG4gICAgICB0cmFuc2l0aW9uOiAkZHJpbGxkb3duLXRyYW5zaXRpb247XG5cbiAgICAgICYuaXMtYWN0aXZlIHtcbiAgICAgICAgei1pbmRleDogMTtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWChpZigkZ2xvYmFsLXRleHQtZGlyZWN0aW9uID09IGx0ciwgLTEwMCUsIDEwMCUpKTtcbiAgICAgIH1cblxuICAgICAgJi5pcy1jbG9zaW5nIHtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKGlmKCRnbG9iYWwtdGV4dC1kaXJlY3Rpb24gPT0gbHRyLCAxMDAlLCAtMTAwJSkpO1xuICAgICAgfVxuXG4gICAgICAvLyBTdWJtZW51IGl0ZW0gcGFkZGluZ1xuICAgICAgYSB7XG4gICAgICAgIHBhZGRpbmc6ICRkcmlsbGRvd24tc3VibWVudS1wYWRkaW5nO1xuICAgICAgfVxuICAgIH1cblxuICAgIC5uZXN0ZWQuaXMtZHJpbGxkb3duLXN1Ym1lbnUge1xuICAgICAgQGluY2x1ZGUgbWVudS1uZXN0ZWQoJGRyaWxsZG93bi1uZXN0ZWQtbWFyZ2luKTtcbiAgICB9XG5cbiAgICAuZHJpbGxkb3duLXN1Ym1lbnUtY292ZXItcHJldmlvdXMge1xuICAgICAgbWluLWhlaWdodDogMTAwJTtcbiAgICB9XG5cbiAgICBAaWYgJGRyaWxsZG93bi1hcnJvd3Mge1xuICAgICAgQGluY2x1ZGUgemYtZHJpbGxkb3duLWxlZnQtcmlnaHQtYXJyb3dzO1xuXG4gICAgICAuanMtZHJpbGxkb3duLWJhY2sgPiBhOjpiZWZvcmUge1xuICAgICAgICBAaW5jbHVkZSBjc3MtdHJpYW5nbGUoJGRyaWxsZG93bi1hcnJvdy1zaXplLCAkZHJpbGxkb3duLWFycm93LWNvbG9yLCAkZ2xvYmFsLWxlZnQpO1xuICAgICAgICBib3JkZXItI3skZ2xvYmFsLWxlZnR9LXdpZHRoOiAwO1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgICAgIG1hcmdpbi0jeyRnbG9iYWwtcmlnaHR9OiAwLjc1cmVtOyAvLyBDcmVhdGVzIHNwYWNlIGJldHdlZW4gdGhlIGFycm93IGFuZCB0aGUgdGV4dFxuXG4gICAgICAgIGJvcmRlci0jeyRnbG9iYWwtbGVmdH0td2lkdGg6IDA7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBkcm9wZG93blxuLy8vL1xuXG4vLy8gUGFkZGluZyBmb3IgZHJvcGRvd24gcGFuZXMuXG4vLy8gQHR5cGUgTGlzdFxuJGRyb3Bkb3duLXBhZGRpbmc6IDFyZW0gIWRlZmF1bHQ7XG5cbi8vLyBCYWNrZ3JvdW5kIGZvciBkcm9wZG93biBwYW5lcy5cbi8vLyBAdHlwZSBDb2xvclxuJGRyb3Bkb3duLWJhY2tncm91bmQ6ICRib2R5LWJhY2tncm91bmQgIWRlZmF1bHQ7XG5cbi8vLyBCb3JkZXIgZm9yIGRyb3Bkb3duIHBhbmVzLlxuLy8vIEB0eXBlIExpc3RcbiRkcm9wZG93bi1ib3JkZXI6IDFweCBzb2xpZCAkbWVkaXVtLWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBGb250IHNpemUgZm9yIGRyb3Bkb3duIHBhbmVzLlxuLy8vIEB0eXBlIExpc3RcbiRkcm9wZG93bi1mb250LXNpemU6IDFyZW0gIWRlZmF1bHQ7XG5cbi8vLyBXaWR0aCBmb3IgZHJvcGRvd24gcGFuZXMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kZHJvcGRvd24td2lkdGg6IDMwMHB4ICFkZWZhdWx0O1xuXG4vLy8gQm9yZGVyIHJhZGl1cyBkcm9wZG93biBwYW5lcy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRkcm9wZG93bi1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzICFkZWZhdWx0O1xuXG4vLy8gU2l6ZXMgZm9yIGRyb3Bkb3duIHBhbmVzLiBFYWNoIHNpemUgaXMgYSBDU1MgY2xhc3MgeW91IGNhbiBhcHBseS5cbi8vLyBAdHlwZSBNYXBcbiRkcm9wZG93bi1zaXplczogKFxuICB0aW55OiAxMDBweCxcbiAgc21hbGw6IDIwMHB4LFxuICBsYXJnZTogNDAwcHgsXG4pICFkZWZhdWx0O1xuXG4vLy8gQXBwbGllcyBzdHlsZXMgZm9yIGEgYmFzaWMgZHJvcGRvd24uXG5AbWl4aW4gZHJvcGRvd24tY29udGFpbmVyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB6LWluZGV4OiAxMDtcblxuICB3aWR0aDogJGRyb3Bkb3duLXdpZHRoO1xuICBwYWRkaW5nOiAkZHJvcGRvd24tcGFkZGluZztcblxuICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gIGRpc3BsYXk6IG5vbmU7XG4gIGJvcmRlcjogJGRyb3Bkb3duLWJvcmRlcjtcbiAgYm9yZGVyLXJhZGl1czogJGRyb3Bkb3duLXJhZGl1cztcbiAgYmFja2dyb3VuZC1jb2xvcjogJGRyb3Bkb3duLWJhY2tncm91bmQ7XG5cbiAgZm9udC1zaXplOiAkZHJvcGRvd24tZm9udC1zaXplO1xuXG5cbiAgLy8gQWxsb3cgYW4gaW50ZXJtaXR0ZW50IHN0YXRlIHRvIGRvIHBvc2l0aW9uaW5nIGJlZm9yZSBtYWtpbmcgdmlzaWJsZS5cbiAgJi5pcy1vcGVuaW5nIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxuXG4gICYuaXMtb3BlbiB7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxufVxuXG5AbWl4aW4gZm91bmRhdGlvbi1kcm9wZG93biB7XG4gIC5kcm9wZG93bi1wYW5lIHtcbiAgICBAaW5jbHVkZSBkcm9wZG93bi1jb250YWluZXI7XG4gIH1cblxuICBAZWFjaCAkbmFtZSwgJHNpemUgaW4gJGRyb3Bkb3duLXNpemVzIHtcbiAgICAuZHJvcGRvd24tcGFuZS4jeyRuYW1lfSB7XG4gICAgICB3aWR0aDogJHNpemU7XG4gICAgfVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBkcm9wZG93bi1tZW51XG4vLy8vXG5cbi8vLyBFbmFibGVzIGFycm93cyBmb3IgaXRlbXMgd2l0aCBkcm9wZG93biBtZW51cy5cbi8vLyBAdHlwZSBCb29sZWFuXG4kZHJvcGRvd25tZW51LWFycm93czogdHJ1ZSAhZGVmYXVsdDtcblxuLy8vIFNldHMgZHJvcGRvd24gbWVudSBhcnJvdyBjb2xvciBpZiBhcnJvdyBpcyB1c2VkLlxuLy8vIEB0eXBlIENvbG9yXG4kZHJvcGRvd25tZW51LWFycm93LWNvbG9yOiAkYW5jaG9yLWNvbG9yICFkZWZhdWx0O1xuXG4vLy8gU2V0cyBkcm9wZG93biBtZW51IGFycm93IHNpemUgaWYgYXJyb3cgaXMgdXNlZC5cbi8vLyBAdHlwZSBMZW5ndGhcbiRkcm9wZG93bm1lbnUtYXJyb3ctc2l6ZTogNnB4ICFkZWZhdWx0O1xuXG4vLy8gU2V0cyBkcm9wZG93biBtZW51IGFycm93IHBhZGRpbmcgZm9yIGFsaWduaW5nIHRoZSBhcnJvdyBjb3JyZWN0bHkuXG4vLy8gQHR5cGUgTGVuZ3RoXG4kZHJvcGRvd25tZW51LWFycm93LXBhZGRpbmc6IDEuNXJlbSAhZGVmYXVsdDtcblxuLy8vIE1pbmltdW0gd2lkdGggb2YgZHJvcGRvd24gc3ViLW1lbnVzLlxuLy8vIEB0eXBlIExlbmd0aFxuJGRyb3Bkb3dubWVudS1taW4td2lkdGg6IDIwMHB4ICFkZWZhdWx0O1xuXG4vLy8gQmFja2dyb3VuZCBjb2xvciBmb3IgdG9wIGxldmVsIGl0ZW1zLlxuLy8vIEB0eXBlIENvbG9yXG4kZHJvcGRvd25tZW51LWJhY2tncm91bmQ6ICR3aGl0ZSAhZGVmYXVsdDtcblxuLy8vIEJhY2tncm91bmQgY29sb3IgZm9yIGRyb3Bkb3ducy5cbi8vLyBAdHlwZSBDb2xvclxuJGRyb3Bkb3dubWVudS1zdWJtZW51LWJhY2tncm91bmQ6ICRkcm9wZG93bm1lbnUtYmFja2dyb3VuZCAhZGVmYXVsdDtcblxuLy8vIFBhZGRpbmcgZm9yIHRvcCBsZXZlbCBpdGVtcy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRkcm9wZG93bm1lbnUtcGFkZGluZzogJGdsb2JhbC1tZW51LXBhZGRpbmcgIWRlZmF1bHQ7XG5cbi8vLyBTZXRzIGRyb3Bkb3duIG1lbnUgbmVzdGVkIG1hcmdpblxuLy8vIEB0eXBlIE51bWJlclxuJGRyb3Bkb3dubWVudS1uZXN0ZWQtbWFyZ2luOiAwICFkZWZhdWx0O1xuXG4vLy8gUGFkZGluZyBmb3Igc3ViLW1lbnUgaXRlbXMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kZHJvcGRvd25tZW51LXN1Ym1lbnUtcGFkZGluZzogJGRyb3Bkb3dubWVudS1wYWRkaW5nICFkZWZhdWx0O1xuXG4vLy8gQm9yZGVyIGZvciBkcm9wZG93biBzdWItbWVudXMuXG4vLy8gQHR5cGUgTGlzdFxuJGRyb3Bkb3dubWVudS1ib3JkZXI6IDFweCBzb2xpZCAkbWVkaXVtLWdyYXkgIWRlZmF1bHQ7XG5cbi8vIEJvcmRlciB3aWR0aCBmb3IgZHJvcGRvd24gc3ViLW1lbnVzLlxuLy8gVXNlZCB0byBhZGp1c3QgdG9wIG1hcmdpbiBvZiBhIHN1Yi1tZW51IGlmIGEgYm9yZGVyIGlzIHVzZWQuXG4vLyBAdHlwZSBMZW5ndGhcbiRkcm9wZG93bm1lbnUtYm9yZGVyLXdpZHRoOiBudGgoJGRyb3Bkb3dubWVudS1ib3JkZXIsIDEpO1xuXG4vLy8gVGV4dCBjb2xvciBvZiBhbiBhY3RpdmUgZHJvcGRvd24gbWVudSBpdGVtLiBFeHBsaWNpdCBvdmVycmlkZSBmb3IgbWVudSBkZWZhdWx0c1xuLy8vIEB0eXBlIENvbG9yXG4kZHJvcGRvd24tbWVudS1pdGVtLWNvbG9yLWFjdGl2ZTogZ2V0LWNvbG9yKHByaW1hcnkpICFkZWZhdWx0O1xuXG4vLy8gQmFja2dyb3VuZCBjb2xvciBvZiBhbiBhY3RpdmUgZHJvcGRvd24gbWVudSBpdGVtLiBFeHBsaWNpdCBvdmVycmlkZSBmb3IgbWVudSBkZWZhdWx0c1xuLy8vIEB0eXBlIENvbG9yXG4kZHJvcGRvd24tbWVudS1pdGVtLWJhY2tncm91bmQtYWN0aXZlOiB0cmFuc3BhcmVudCAhZGVmYXVsdDtcblxuQG1peGluIHpmLWRyb3Bkb3duLWxlZnQtcmlnaHQtYXJyb3dzIHtcbiAgPiBhOjphZnRlciB7XG4gICAgI3skZ2xvYmFsLXJpZ2h0fTogMTRweDtcbiAgfVxuXG4gICYub3BlbnMtbGVmdCA+IGE6OmFmdGVyIHtcbiAgICByaWdodDogYXV0bztcbiAgICBsZWZ0OiA1cHg7XG4gICAgQGluY2x1ZGUgY3NzLXRyaWFuZ2xlKCRkcm9wZG93bm1lbnUtYXJyb3ctc2l6ZSwgJGRyb3Bkb3dubWVudS1hcnJvdy1jb2xvciwgbGVmdCk7XG4gIH1cblxuICAmLm9wZW5zLXJpZ2h0ID4gYTo6YWZ0ZXIge1xuICAgIEBpbmNsdWRlIGNzcy10cmlhbmdsZSgkZHJvcGRvd25tZW51LWFycm93LXNpemUsICRkcm9wZG93bm1lbnUtYXJyb3ctY29sb3IsIHJpZ2h0KTtcbiAgfVxufVxuXG5AbWl4aW4gZHJvcGRvd24tbWVudS1kaXJlY3Rpb24oJGRpcjogaG9yaXpvbnRhbCkge1xuICBAaWYgJGRpciA9PSBob3Jpem9udGFsIHtcbiAgICA+IGxpLm9wZW5zLWxlZnQge1xuICAgICAgPiAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gICAgICAgIHRvcDogMTAwJTtcbiAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgIGxlZnQ6IGF1dG87XG4gICAgICB9XG4gICAgfVxuXG4gICAgPiBsaS5vcGVucy1yaWdodCB7XG4gICAgICA+IC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgICAgICAgdG9wOiAxMDAlO1xuICAgICAgICByaWdodDogYXV0bztcbiAgICAgICAgbGVmdDogMDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBAaWYgJGRyb3Bkb3dubWVudS1hcnJvd3Mge1xuICAgICAgPiBsaS5pcy1kcm9wZG93bi1zdWJtZW51LXBhcmVudCA+IGEge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIHBhZGRpbmctI3skZ2xvYmFsLXJpZ2h0fTogJGRyb3Bkb3dubWVudS1hcnJvdy1wYWRkaW5nO1xuICAgICAgfVxuXG4gICAgICA+IGxpLmlzLWRyb3Bkb3duLXN1Ym1lbnUtcGFyZW50ID4gYTo6YWZ0ZXIge1xuICAgICAgICBAaW5jbHVkZSBjc3MtdHJpYW5nbGUoJGRyb3Bkb3dubWVudS1hcnJvdy1zaXplLCAkZHJvcGRvd25tZW51LWFycm93LWNvbG9yLCBkb3duKTtcbiAgICAgICAgI3skZ2xvYmFsLXJpZ2h0fTogNXB4O1xuICAgICAgICAjeyRnbG9iYWwtbGVmdH06IGF1dG87XG4gICAgICAgIG1hcmdpbi10b3A6IC0xICogKCRkcm9wZG93bm1lbnUtYXJyb3ctc2l6ZSAvIDIpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICBAZWxzZSBpZiAkZGlyID09IHZlcnRpY2FsIHtcbiAgICA+IGxpIHtcbiAgICAgIC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgfVxuXG4gICAgICAmLm9wZW5zLWxlZnQge1xuICAgICAgICA+IC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgICAgICAgICByaWdodDogMTAwJTtcbiAgICAgICAgICBsZWZ0OiBhdXRvO1xuICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAmLm9wZW5zLXJpZ2h0IHtcbiAgICAgICAgPiAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gICAgICAgICAgcmlnaHQ6IGF1dG87XG4gICAgICAgICAgbGVmdDogMTAwJTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICBAaWYgJGRyb3Bkb3dubWVudS1hcnJvd3Mge1xuICAgICAgICBAaW5jbHVkZSB6Zi1kcm9wZG93bi1sZWZ0LXJpZ2h0LWFycm93cztcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgQGVsc2Uge1xuICAgIEB3YXJuICdUaGUgZGlyZWN0aW9uIHVzZWQgZm9yIGRyb3Bkb3duLW1lbnUtZGlyZWN0aW9uKCkgbXVzdCBiZSBob3Jpem9udGFsIG9yIHZlcnRpY2FsLic7XG4gIH1cbn1cblxuQG1peGluIGZvdW5kYXRpb24tZHJvcGRvd24tbWVudSB7XG4gIC5kcm9wZG93bi5tZW51IHtcbiAgICBAaW5jbHVkZSBkcm9wZG93bi1tZW51LWRpcmVjdGlvbihob3Jpem9udGFsKTtcblxuICAgIGEge1xuICAgICAgQGluY2x1ZGUgZGlzYWJsZS1tb3VzZS1vdXRsaW5lO1xuICAgICAgcGFkZGluZzogJGRyb3Bkb3dubWVudS1wYWRkaW5nO1xuICAgIH1cblxuICAgIC8vIEFjdGl2ZSBzdGF0ZVxuICAgIC5pcy1hY3RpdmUgPiBhIHtcbiAgICAgIGJhY2tncm91bmQ6ICRkcm9wZG93bi1tZW51LWl0ZW0tYmFja2dyb3VuZC1hY3RpdmU7XG4gICAgICBjb2xvcjogJGRyb3Bkb3duLW1lbnUtaXRlbS1jb2xvci1hY3RpdmU7XG4gICAgfVxuXG4gICAgLm5vLWpzICYgdWwge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG5cbiAgICAubmVzdGVkLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICAgICAgQGluY2x1ZGUgbWVudS1uZXN0ZWQoJGRyb3Bkb3dubWVudS1uZXN0ZWQtbWFyZ2luKTtcbiAgICB9XG5cbiAgICAmLnZlcnRpY2FsIHtcbiAgICAgIEBpbmNsdWRlIGRyb3Bkb3duLW1lbnUtZGlyZWN0aW9uKHZlcnRpY2FsKTtcbiAgICB9XG5cbiAgICBAZWFjaCAkc2l6ZSBpbiAkYnJlYWtwb2ludC1jbGFzc2VzIHtcbiAgICAgIEBpZiAkc2l6ZSAhPSAkLXpmLXplcm8tYnJlYWtwb2ludCB7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJHNpemUpIHtcbiAgICAgICAgICAmLiN7JHNpemV9LWhvcml6b250YWwge1xuICAgICAgICAgICAgQGluY2x1ZGUgZHJvcGRvd24tbWVudS1kaXJlY3Rpb24oaG9yaXpvbnRhbCk7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgJi4jeyRzaXplfS12ZXJ0aWNhbCB7XG4gICAgICAgICAgICBAaW5jbHVkZSBkcm9wZG93bi1tZW51LWRpcmVjdGlvbih2ZXJ0aWNhbCk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgJi5hbGlnbi1yaWdodCB7XG4gICAgICAuaXMtZHJvcGRvd24tc3VibWVudS5maXJzdC1zdWIge1xuICAgICAgICB0b3A6IDEwMCU7XG4gICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICBsZWZ0OiBhdXRvO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5pcy1kcm9wZG93bi1tZW51LnZlcnRpY2FsIHtcbiAgICB3aWR0aDogMTAwcHg7XG5cbiAgICAmLmFsaWduLXJpZ2h0IHtcbiAgICAgIGZsb2F0OiByaWdodDtcbiAgICB9XG4gIH1cblxuICAuaXMtZHJvcGRvd24tc3VibWVudS1wYXJlbnQge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgIGE6OmFmdGVyIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogNTAlO1xuICAgICAgI3skZ2xvYmFsLXJpZ2h0fTogNXB4O1xuICAgICAgI3skZ2xvYmFsLWxlZnR9OiBhdXRvO1xuICAgICAgbWFyZ2luLXRvcDogLTEgKiAkZHJvcGRvd25tZW51LWFycm93LXNpemU7XG4gICAgfVxuXG4gICAgJi5vcGVucy1pbm5lciA+IC5pcy1kcm9wZG93bi1zdWJtZW51IHtcblxuICAgICAgdG9wOiAxMDAlO1xuICAgICAgQGlmICRnbG9iYWwtdGV4dC1kaXJlY3Rpb24gPT0gJ3J0bCcge1xuICAgICAgICByaWdodDogYXV0bztcbiAgICAgIH1cbiAgICAgIEBlbHNlIHtcbiAgICAgICAgbGVmdDogYXV0bztcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmLm9wZW5zLWxlZnQgPiAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gICAgICByaWdodDogMTAwJTtcbiAgICAgIGxlZnQ6IGF1dG87XG4gICAgfVxuXG4gICAgJi5vcGVucy1yaWdodCA+IC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgICAgIHJpZ2h0OiBhdXRvO1xuICAgICAgbGVmdDogMTAwJTtcbiAgICB9XG4gIH1cblxuICAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICAjeyRnbG9iYWwtbGVmdH06IDEwMCU7XG4gICAgei1pbmRleDogMTtcblxuICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgbWluLXdpZHRoOiAkZHJvcGRvd25tZW51LW1pbi13aWR0aDtcblxuICAgIGJvcmRlcjogJGRyb3Bkb3dubWVudS1ib3JkZXI7XG4gICAgYmFja2dyb3VuZDogJGRyb3Bkb3dubWVudS1zdWJtZW51LWJhY2tncm91bmQ7XG5cbiAgICAuZHJvcGRvd24gJiBhIHtcbiAgICAgIHBhZGRpbmc6ICRkcm9wZG93bm1lbnUtc3VibWVudS1wYWRkaW5nO1xuICAgIH1cblxuICAgIC5pcy1kcm9wZG93bi1zdWJtZW51LXBhcmVudCB7XG4gICAgICBAaWYgJGRyb3Bkb3dubWVudS1hcnJvd3Mge1xuICAgICAgICBAaW5jbHVkZSB6Zi1kcm9wZG93bi1sZWZ0LXJpZ2h0LWFycm93cztcbiAgICAgIH1cbiAgICB9XG5cbiAgICBAaWYgKHR5cGUtb2YoJGRyb3Bkb3dubWVudS1ib3JkZXItd2lkdGgpID09ICdudW1iZXInKSB7XG4gICAgICAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gICAgICAgIG1hcmdpbi10b3A6ICgtJGRyb3Bkb3dubWVudS1ib3JkZXItd2lkdGgpO1xuICAgICAgfVxuICAgIH1cblxuICAgID4gbGkge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgfVxuXG4gICAgLy8gW1RPRE9dIEN1dCBiYWNrIHNwZWNpZmljaXR5XG4gICAgLy8mOm5vdCguanMtZHJvcGRvd24tbm9ob3ZlcikgPiAuaXMtZHJvcGRvd24tc3VibWVudS1wYXJlbnQ6aG92ZXIgPiAmLCAvLyB3aHkgaXMgdGhpcyBsaW5lIG5lZWRlZD8gT3BlbmluZyBpcyBoYW5kbGVkIGJ5IEpTIGFuZCB0aGlzIGNhdXNlcyBzb21lIHVnbHkgZmxpY2tlcmluZyB3aGVuIHRoZSBzdWIgaXMgcmUtcG9zaXRpb25lZCBhdXRvbWF0aWNhbGx5Li4uXG4gICAgJi5qcy1kcm9wZG93bi1hY3RpdmUge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgfVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCByZXNwb25zaXZlLWVtYmVkXG4vLy8vXG5cbi8vLyBNYXJnaW4gYmVsb3cgYSByZXNwb25zaXZlIGVtYmVkIGNvbnRhaW5lci5cbi8vLyBAdHlwZSBOdW1iZXJcbiRyZXNwb25zaXZlLWVtYmVkLW1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDE2KSAhZGVmYXVsdDtcblxuLy8vIEFzcGVjdCByYXRpb3MgdXNlZCB0byBkZXRlcm1pbmUgcGFkZGluZy1ib3R0b20gb2YgcmVzcG9uc2l2ZSBlbWJlZCBjb250YWluZXJzLlxuLy8vIEB0eXBlIE1hcFxuJHJlc3BvbnNpdmUtZW1iZWQtcmF0aW9zOiAoXG4gIGRlZmF1bHQ6IDQgYnkgMyxcbiAgd2lkZXNjcmVlbjogMTYgYnkgOSxcbikgIWRlZmF1bHQ7XG5cbi8vIFdBUk5JTkc6IFdpbGwgYmUgcmVtb3ZlZCBpbiB2ZXJzaW9uIDYuNFxuJHJlc3BvbnNpdmUtZW1iZWQtcmF0aW86IGRlZmF1bHQ7XG5cbi8vLyBDcmVhdGVzIGEgcmVzcG9uc2l2ZSBlbWJlZCBjb250YWluZXIuXG4vLy8gQHBhcmFtIHtTdHJpbmd8TGlzdH0gJHJhdGlvIFtkZWZhdWx0XSAtIFJhdGlvIG9mIHRoZSBjb250YWluZXIuIENhbiBiZSBhIGtleSBmcm9tIHRoZSBgJHJlc3BvbnNpdmUtZW1iZWQtcmF0aW9zYCBtYXAgb3IgYSBsaXN0IGZvcm1hdHRlZCBhcyBgeCBieSB5YC5cbkBtaXhpbiByZXNwb25zaXZlLWVtYmVkKCRyYXRpbzogZGVmYXVsdCkge1xuICBAaWYgdHlwZS1vZigkcmF0aW8pID09ICdzdHJpbmcnIHtcbiAgICAkcmF0aW86IG1hcC1nZXQoJHJlc3BvbnNpdmUtZW1iZWQtcmF0aW9zLCAkcmF0aW8pO1xuICB9XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgaGVpZ2h0OiAwO1xuICBtYXJnaW4tYm90dG9tOiAkcmVzcG9uc2l2ZS1lbWJlZC1tYXJnaW4tYm90dG9tO1xuICBwYWRkaW5nLWJvdHRvbTogcmF0aW8tdG8tcGVyY2VudGFnZSgkcmF0aW8pO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuXG4gIGlmcmFtZSxcbiAgb2JqZWN0LFxuICBlbWJlZCxcbiAgdmlkZW8ge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgI3skZ2xvYmFsLWxlZnR9OiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgfVxufVxuXG5AbWl4aW4gZm91bmRhdGlvbi1yZXNwb25zaXZlLWVtYmVkIHtcbiAgLnJlc3BvbnNpdmUtZW1iZWQsXG4gIC5mbGV4LXZpZGVvIHtcbiAgICBAaW5jbHVkZSByZXNwb25zaXZlLWVtYmVkKCRyYXRpbzogZGVmYXVsdCk7XG5cbiAgICAkcmF0aW9zOiBtYXAtcmVtb3ZlKCRyZXNwb25zaXZlLWVtYmVkLXJhdGlvcyxkZWZhdWx0KTtcblxuICAgIEBlYWNoICRuYW1lLCAkcmF0aW8gaW4gJHJhdGlvcyB7XG4gICAgICAmLiN7JG5hbWV9IHtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IHJhdGlvLXRvLXBlcmNlbnRhZ2UoJHJhdGlvKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuQG1peGluIGZvdW5kYXRpb24tZmxleC12aWRlbyB7XG4gIEB3YXJuICdUaGlzIG1peGluIGlzIGJlaW5nIHJlcGxhY2VkIGJ5IGZvdW5kYXRpb24tcmVzcG9uc2l2ZS1lbWJlZCgpLiBmb3VuZGF0aW9uLWZsZXgtdmlkZW8oKSB3aWxsIGJlIHJlbW92ZWQgaW4gRm91bmRhdGlvbiA2LjQuJztcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1yZXNwb25zaXZlLWVtYmVkO1xufVxuXG5AbWl4aW4gZmxleC12aWRlbygkcmF0aW86ICRyZXNwb25zaXZlLWVtYmVkLXJhdGlvKSB7XG4gIEB3YXJuICdUaGlzIG1peGluIGlzIGJlaW5nIHJlcGxhY2VkIGJ5IHJlc3BvbnNpdmUtZW1iZWQoKS4gZmxleC12aWRlbygpIHdpbGwgYmUgcmVtb3ZlZCBpbiBGb3VuZGF0aW9uIDYuNC4nO1xuICBAaW5jbHVkZSByZXNwb25zaXZlLWVtYmVkKCRyYXRpbyk7XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBmdW5jdGlvbnNcbi8vLy9cblxuLy8vIEZpbmRzIHRoZSBncmVhdGVzdCBjb21tb24gZGl2aXNvciBvZiB0d28gaW50ZWdlcnMuXG4vLy9cbi8vLyBAcGFyYW0ge051bWJlcn0gJGEgLSBGaXJzdCBudW1iZXIgdG8gY29tcGFyZS5cbi8vLyBAcGFyYW0ge051bWJlcn0gJGIgLSBTZWNvbmQgbnVtYmVyIHRvIGNvbXBhcmUuXG4vLy9cbi8vLyBAcmV0dXJucyB7TnVtYmVyfSBUaGUgZ3JlYXRlc3QgY29tbW9uIGRpdmlzb3IuXG5AZnVuY3Rpb24gZ2NkKCRhLCAkYikge1xuICAvLyBGcm9tOiBodHRwOi8vcm9zZXR0YWNvZGUub3JnL3dpa2kvR3JlYXRlc3RfY29tbW9uX2Rpdmlzb3IjSmF2YVNjcmlwdFxuICBAaWYgKCRiICE9IDApIHtcbiAgICBAcmV0dXJuIGdjZCgkYiwgJGEgJSAkYik7XG4gIH1cbiAgQGVsc2Uge1xuICAgIEByZXR1cm4gYWJzKCRhKTtcbiAgfVxufVxuXG4vLy8gSGFuZGxlcyBkZWNpbWFsIGV4cG9uZW50cyBieSB0cnlpbmcgdG8gY29udmVydCB0aGVtIGludG8gYSBmcmFjdGlvbiBhbmQgdGhlbiB1c2UgYSBudGgtcm9vdC1hbGdvcml0aG0gZm9yIHBhcnRzIG9mIHRoZSBjYWxjdWxhdGlvblxuLy8vXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRiYXNlIC0gVGhlIGJhc2UgbnVtYmVyLlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkZXhwb25lbnQgLSBUaGUgZXhwb25lbnQuXG4vLy9cbi8vLyBAcmV0dXJucyB7TnVtYmVyfSBUaGUgcHJvZHVjdCBvZiB0aGUgZXhwb25lbnRpYXRpb24uXG5AZnVuY3Rpb24gcG93KCRiYXNlLCAkZXhwb25lbnQsICRwcmVjOiAxNikge1xuICBAaWYgKGZsb29yKCRleHBvbmVudCkgIT0gJGV4cG9uZW50KSB7XG4gICAgJHByZWMyIDogcG93KDEwLCAkcHJlYyk7XG4gICAgJGV4cG9uZW50OiByb3VuZCgkZXhwb25lbnQgKiAkcHJlYzIpO1xuICAgICRkZW5vbWluYXRvcjogZ2NkKCRleHBvbmVudCwgJHByZWMyKTtcbiAgICBAcmV0dXJuIG50aC1yb290KHBvdygkYmFzZSwgJGV4cG9uZW50IC8gJGRlbm9taW5hdG9yKSwgJHByZWMyIC8gJGRlbm9taW5hdG9yLCAkcHJlYyk7XG4gIH1cblxuICAkdmFsdWU6ICRiYXNlO1xuICBAaWYgJGV4cG9uZW50ID4gMSB7XG4gICAgQGZvciAkaSBmcm9tIDIgdGhyb3VnaCAkZXhwb25lbnQge1xuICAgICAgJHZhbHVlOiAkdmFsdWUgKiAkYmFzZTtcbiAgICB9XG4gIH1cbiAgQGVsc2UgaWYgJGV4cG9uZW50IDwgMSB7XG4gICAgQGZvciAkaSBmcm9tIDAgdGhyb3VnaCAtJGV4cG9uZW50IHtcbiAgICAgICR2YWx1ZTogJHZhbHVlIC8gJGJhc2U7XG4gICAgfVxuICB9XG5cbiAgQHJldHVybiAkdmFsdWU7XG59XG5cbkBmdW5jdGlvbiBudGgtcm9vdCgkbnVtLCAkbjogMiwgJHByZWM6IDEyKSB7XG4gIC8vIEZyb206IGh0dHA6Ly9yb3NldHRhY29kZS5vcmcvd2lraS9OdGhfcm9vdCNKYXZhU2NyaXB0XG4gICR4OiAxO1xuXG4gIEBmb3IgJGkgZnJvbSAwIHRocm91Z2ggJHByZWMge1xuICAgICR4OiAxIC8gJG4gKiAoKCRuIC0gMSkgKiAkeCArICgkbnVtIC8gcG93KCR4LCAkbiAtIDEpKSk7XG4gIH1cblxuICBAcmV0dXJuICR4O1xufVxuXG4vLy8gQ2FsY3VsYXRlcyB0aGUgaGVpZ2h0IGFzIGEgcGVyY2VudGFnZSBvZiB0aGUgd2lkdGggZm9yIGEgZ2l2ZW4gcmF0aW8uXG4vLy8gQHBhcmFtIHtMaXN0fSAkcmF0aW8gLSBSYXRpbyB0byB1c2UgdG8gY2FsY3VsYXRlIHRoZSBoZWlnaHQsIGZvcm1hdHRlZCBhcyBgeCBieSB5YC5cbi8vLyBAcmV0dXJuIHtOdW1iZXJ9IEEgcGVyY2VudGFnZSB2YWx1ZSBmb3IgdGhlIGhlaWdodCByZWxhdGl2ZSB0byB0aGUgd2lkdGggb2YgYSByZXNwb25zaXZlIGNvbnRhaW5lci5cbkBmdW5jdGlvbiByYXRpby10by1wZXJjZW50YWdlKCRyYXRpbykge1xuICAkdzogbnRoKCRyYXRpbywgMSk7XG4gICRoOiBudGgoJHJhdGlvLCAzKTtcbiAgQHJldHVybiAkaCAvICR3ICogMTAwJTtcbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGxhYmVsXG4vLy8vXG5cbi8vLyBEZWZhdWx0IGJhY2tncm91bmQgY29sb3IgZm9yIGxhYmVscy5cbi8vLyBAdHlwZSBDb2xvclxuJGxhYmVsLWJhY2tncm91bmQ6ICRwcmltYXJ5LWNvbG9yICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCB0ZXh0IGNvbG9yIGZvciBsYWJlbHMuXG4vLy8gQHR5cGUgQ29sb3JcbiRsYWJlbC1jb2xvcjogJHdoaXRlICFkZWZhdWx0O1xuXG4vLy8gQWx0ZXJuYXRlIHRleHQgY29sb3IgZm9yIGxhYmVscy5cbi8vLyBAdHlwZSBDb2xvclxuJGxhYmVsLWNvbG9yLWFsdDogJGJsYWNrICFkZWZhdWx0O1xuXG4vLy8gQ29sb3JpbmcgY2xhc3Nlcy4gQSBtYXAgb2YgY2xhc3NlcyB0byBvdXRwdXQgaW4geW91ciBDU1MsIGxpa2UgYC5zZWNvbmRhcnlgLCBgLnN1Y2Nlc3NgLCBhbmQgc28gb24uXG4vLy8gQHR5cGUgTWFwXG4kbGFiZWwtcGFsZXR0ZTogJGZvdW5kYXRpb24tcGFsZXR0ZSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgZm9udCBzaXplIGZvciBsYWJlbHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kbGFiZWwtZm9udC1zaXplOiAwLjhyZW0gIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHBhZGRpbmcgaW5zaWRlIGxhYmVscy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRsYWJlbC1wYWRkaW5nOiAwLjMzMzMzcmVtIDAuNXJlbSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgcmFkaXVzIG9mIGxhYmVscy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRsYWJlbC1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzICFkZWZhdWx0O1xuXG4vLy8gR2VuZXJhdGVzIGJhc2Ugc3R5bGVzIGZvciBhIGxhYmVsLlxuQG1peGluIGxhYmVsIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBwYWRkaW5nOiAkbGFiZWwtcGFkZGluZztcblxuICBib3JkZXItcmFkaXVzOiAkbGFiZWwtcmFkaXVzO1xuXG4gIGZvbnQtc2l6ZTogJGxhYmVsLWZvbnQtc2l6ZTtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIGN1cnNvcjogZGVmYXVsdDtcbn1cblxuQG1peGluIGZvdW5kYXRpb24tbGFiZWwge1xuICAubGFiZWwge1xuICAgIEBpbmNsdWRlIGxhYmVsO1xuXG4gICAgYmFja2dyb3VuZDogJGxhYmVsLWJhY2tncm91bmQ7XG4gICAgY29sb3I6ICRsYWJlbC1jb2xvcjtcblxuICAgIEBlYWNoICRuYW1lLCAkY29sb3IgaW4gJGxhYmVsLXBhbGV0dGUge1xuICAgICAgJi4jeyRuYW1lfSB7XG4gICAgICAgIGJhY2tncm91bmQ6ICRjb2xvcjtcbiAgICAgICAgY29sb3I6IGNvbG9yLXBpY2stY29udHJhc3QoJGNvbG9yLCAoJGxhYmVsLWNvbG9yLCAkbGFiZWwtY29sb3ItYWx0KSk7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBtZWRpYS1vYmplY3Rcbi8vLy9cblxuLy8vIEJvdHRvbSBtYXJnaW4gb2YgYSBtZWRpYSBvYmplY3QuXG4vLy8gQHR5cGUgTnVtYmVyXG4kbWVkaWFvYmplY3QtbWFyZ2luLWJvdHRvbTogJGdsb2JhbC1tYXJnaW4gIWRlZmF1bHQ7XG5cbi8vLyBMZWZ0IGFuZCByaWdodCBwYWRkaW5nIG9uIHNlY3Rpb25zIHdpdGhpbiBhIG1lZGlhIG9iamVjdC5cbi8vLyBAdHlwZSBOdW1iZXJcbiRtZWRpYW9iamVjdC1zZWN0aW9uLXBhZGRpbmc6ICRnbG9iYWwtcGFkZGluZyAhZGVmYXVsdDtcblxuLy8vIFdpZHRoIG9mIGltYWdlcyB3aXRoaW4gYSBtZWRpYSBvYmplY3QsIHdoZW4gdGhlIG9iamVjdCBpcyBzdGFja2VkIHZlcnRpY2FsbHkuIFNldCB0byAnYXV0bycgdG8gdXNlIHRoZSBpbWFnZSdzIG5hdHVyYWwgd2lkdGguXG4vLy8gQHR5cGUgTnVtYmVyXG4kbWVkaWFvYmplY3QtaW1hZ2Utd2lkdGgtc3RhY2tlZDogMTAwJSAhZGVmYXVsdDtcblxuLy8vIEFkZHMgc3R5bGVzIGZvciBhIG1lZGlhIG9iamVjdCBjb250YWluZXIuXG5AbWl4aW4gbWVkaWEtb2JqZWN0LWNvbnRhaW5lciB7XG4gIGRpc3BsYXk6IGlmKCRnbG9iYWwtZmxleGJveCwgZmxleCwgYmxvY2spO1xuICBtYXJnaW4tYm90dG9tOiAkbWVkaWFvYmplY3QtbWFyZ2luLWJvdHRvbTtcblxuICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICBmbGV4LXdyYXA6IG5vd3JhcDtcbiAgfVxufVxuXG4vLy8gQWRkcyBzdHlsZXMgZm9yIHNlY3Rpb25zIHdpdGhpbiBhIG1lZGlhIG9iamVjdC5cbi8vLyBAcGFyYW0ge051bWJlcn0gJHBhZGRpbmcgWyRtZWRpYW9iamVjdC1zZWN0aW9uLXBhZGRpbmddIC0gUGFkZGluZyBiZXR3ZWVuIHNlY3Rpb25zLlxuQG1peGluIG1lZGlhLW9iamVjdC1zZWN0aW9uKCRwYWRkaW5nOiAkbWVkaWFvYmplY3Qtc2VjdGlvbi1wYWRkaW5nKSB7XG4gIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgIGZsZXg6IDAgMSBhdXRvO1xuICB9XG4gIEBlbHNlIHtcbiAgICBkaXNwbGF5OiB0YWJsZS1jZWxsO1xuICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gIH1cblxuICAmOmZpcnN0LWNoaWxkIHtcbiAgICBwYWRkaW5nLSN7JGdsb2JhbC1yaWdodH06ICRwYWRkaW5nO1xuICB9XG5cbiAgJjpsYXN0LWNoaWxkOm5vdCg6bnRoLWNoaWxkKDIpKSB7XG4gICAgcGFkZGluZy0jeyRnbG9iYWwtbGVmdH06ICRwYWRkaW5nO1xuICB9XG5cbiAgPiA6bGFzdC1jaGlsZCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgfVxufVxuXG4vLy8gQWRkcyBzdHlsZXMgdG8gc3RhY2sgc2VjdGlvbnMgb2YgYSBtZWRpYSBvYmplY3QuIEFwcGx5IHRoaXMgdG8gdGhlIHNlY3Rpb24gZWxlbWVudHMsIG5vdCB0aGUgY29udGFpbmVyLlxuQG1peGluIG1lZGlhLW9iamVjdC1zdGFjayB7XG4gIHBhZGRpbmc6IDA7XG4gIHBhZGRpbmctYm90dG9tOiAkbWVkaWFvYmplY3Qtc2VjdGlvbi1wYWRkaW5nO1xuXG4gIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgIGZsZXgtYmFzaXM6IDEwMCU7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICB9XG4gIEBlbHNlIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxuXG4gIGltZyB7XG4gICAgd2lkdGg6ICRtZWRpYW9iamVjdC1pbWFnZS13aWR0aC1zdGFja2VkO1xuICB9XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLW1lZGlhLW9iamVjdCB7XG4gIC5tZWRpYS1vYmplY3Qge1xuICAgIEBpbmNsdWRlIG1lZGlhLW9iamVjdC1jb250YWluZXI7XG5cbiAgICBpbWcge1xuICAgICAgbWF4LXdpZHRoOiBub25lO1xuICAgIH1cblxuICAgIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgICAgJi5zdGFjay1mb3ItI3skLXpmLXplcm8tYnJlYWtwb2ludH0ge1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCQtemYtemVyby1icmVha3BvaW50IG9ubHkpIHtcbiAgICAgICAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAmLnN0YWNrLWZvci0jeyQtemYtemVyby1icmVha3BvaW50fSAubWVkaWEtb2JqZWN0LXNlY3Rpb24ge1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkLXpmLXplcm8tYnJlYWtwb2ludCBvbmx5KSB7XG4gICAgICAgIEBpbmNsdWRlIG1lZGlhLW9iamVjdC1zdGFjaztcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAubWVkaWEtb2JqZWN0LXNlY3Rpb24ge1xuICAgIEBpbmNsdWRlIG1lZGlhLW9iamVjdC1zZWN0aW9uO1xuXG4gICAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgICAmLm1haW4tc2VjdGlvbiB7XG4gICAgICAgIGZsZXg6IDEgMSAwcHg7IC8vIHNhc3MtbGludDpkaXNhYmxlLWxpbmUgemVyby11bml0XG4gICAgICB9XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgICYubWlkZGxlIHtcbiAgICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICAgIH1cblxuICAgICAgJi5ib3R0b20ge1xuICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogYm90dG9tO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgb2ZmLWNhbnZhc1xuLy8vL1xuXG4vLy8gV2lkdGggbWFwIG9mIGEgbGVmdC9yaWdodCBvZmYtY2FudmFzIHBhbmVsLlxuLy8vIEB0eXBlIE1hcFxuJG9mZmNhbnZhcy1zaXplczogKFxuICBzbWFsbDogMjUwcHgsXG4pICFkZWZhdWx0O1xuXG4vLy8gSGVpZ2h0IG1hcCBvZiBhIHRvcC9ib3R0b20gb2ZmLWNhbnZhcyBwYW5lbC5cbi8vLyBAdHlwZSBNYXBcbiRvZmZjYW52YXMtdmVydGljYWwtc2l6ZXM6IChcbiAgc21hbGw6IDI1MHB4LFxuKSAhZGVmYXVsdDtcblxuLy8vIEJhY2tncm91bmQgY29sb3Igb2YgYW4gb2ZmLWNhbnZhcyBwYW5lbC5cbi8vLyBAdHlwZSBDb2xvclxuJG9mZmNhbnZhcy1iYWNrZ3JvdW5kOiAkbGlnaHQtZ3JheSAhZGVmYXVsdDtcblxuLy8vIEJveCBzaGFkb3cgZm9yIHRoZSBvZmYtY2FudmFzIG92ZXJsYXAgcGFuZWwuXG4vLy8gQHR5cGUgU2hhZG93XG4kb2ZmY2FudmFzLXNoYWRvdzogMCAwIDEwcHggcmdiYSgkYmxhY2ssIDAuNykgIWRlZmF1bHQ7XG5cbi8vLyBJbm5lciBib3ggc2hhZG93IHNpemUgZm9yIHRoZSBvZmYtY2FudmFzIHB1c2ggcGFuZWwuXG4vLy8gQHR5cGUgTnVtYmVyXG4kb2ZmY2FudmFzLWlubmVyLXNoYWRvdy1zaXplOiAyMHB4ICFkZWZhdWx0O1xuXG4vLy8gSW5uZXIgYm94IHNoYWRvdyBjb2xvciBmb3IgdGhlIG9mZi1jYW52YXMgcHVzaCBwYW5lbC5cbi8vLyBAdHlwZSBDb2xvclxuJG9mZmNhbnZhcy1pbm5lci1zaGFkb3ctY29sb3I6IHJnYmEoJGJsYWNrLCAwLjI1KSAhZGVmYXVsdDtcblxuLy8vIFotaW5kZXggb2YgYW4gb2ZmLWNhbnZhcyBjb250ZW50IG92ZXJsYXkuXG4vLy8gQHR5cGUgTnVtYmVyXG4kb2ZmY2FudmFzLW92ZXJsYXktemluZGV4OiAxMSAhZGVmYXVsdDtcblxuLy8vIFotaW5kZXggb2YgYW4gb2ZmLWNhbnZhcyBwYW5lbCB3aXRoIHRoZSBgcHVzaGAgdHJhbnNpdGlvbi5cbi8vLyBAdHlwZSBOdW1iZXJcbiRvZmZjYW52YXMtcHVzaC16aW5kZXg6IDEyICFkZWZhdWx0O1xuXG4vLy8gWi1pbmRleCBvZiBhbiBvZmYtY2FudmFzIHBhbmVsIHdpdGggdGhlIGBvdmVybGFwYCB0cmFuc2l0aW9uLlxuLy8vIEB0eXBlIE51bWJlclxuJG9mZmNhbnZhcy1vdmVybGFwLXppbmRleDogMTMgIWRlZmF1bHQ7XG5cbi8vLyBaLWluZGV4IG9mIGFuIG9mZi1jYW52YXMgcGFuZWwgdXNpbmcgdGhlIGByZXZlYWwtZm9yLSpgIGNsYXNzZXMgb3IgbWl4aW4uXG4vLy8gQHR5cGUgTnVtYmVyXG4kb2ZmY2FudmFzLXJldmVhbC16aW5kZXg6IDEyICFkZWZhdWx0O1xuXG4vLy8gTGVuZ3RoIG9mIHRoZSBhbmltYXRpb24gb24gYW4gb2ZmLWNhbnZhcyBwYW5lbC5cbi8vLyBAdHlwZSBOdW1iZXJcbiRvZmZjYW52YXMtdHJhbnNpdGlvbi1sZW5ndGg6IDAuNXMgIWRlZmF1bHQ7XG5cbi8vLyBUaW1pbmcgZnVuY3Rpb24gb2YgdGhlIGFuaW1hdGlvbiBvbiBhbiBvZmYtY2FudmFzIHBhbmVsLlxuLy8vIEB0eXBlIEtleXdvcmRcbiRvZmZjYW52YXMtdHJhbnNpdGlvbi10aW1pbmc6IGVhc2UgIWRlZmF1bHQ7XG5cbi8vLyBJZiBgdHJ1ZWAsIGEgcmV2ZWFsZWQgb2ZmLWNhbnZhcyB3aWxsIGJlIGZpeGVkLXBvc2l0aW9uLCBhbmQgc2Nyb2xsIHdpdGggdGhlIHNjcmVlbi5cbi8vLyBAdHlwZSBCb29sXG4kb2ZmY2FudmFzLWZpeGVkLXJldmVhbDogdHJ1ZSAhZGVmYXVsdDtcblxuLy8vIEJhY2tncm91bmQgY29sb3IgZm9yIHRoZSBvdmVybGF5IHRoYXQgYXBwZWFycyB3aGVuIGFuIG9mZi1jYW52YXMgcGFuZWwgaXMgb3Blbi5cbi8vLyBAdHlwZSBDb2xvclxuJG9mZmNhbnZhcy1leGl0LWJhY2tncm91bmQ6IHJnYmEoJHdoaXRlLCAwLjI1KSAhZGVmYXVsdDtcblxuLy8vIENTUyBjbGFzcyB1c2VkIGZvciB0aGUgbWFpbiBjb250ZW50IGFyZWEuIFRoZSBvZmYtY2FudmFzIG1peGlucyB1c2UgdGhpcyB0byB0YXJnZXQgdGhlIHBhZ2UgY29udGVudC5cbiRtYWluY29udGVudC1jbGFzczogJ29mZi1jYW52YXMtY29udGVudCcgIWRlZmF1bHQ7XG5cbi8vLyBBZGRzIGJhc2VsaW5lIHN0eWxlcyBmb3Igb2ZmLWNhbnZhcy4gVGhpcyBDU1MgaXMgcmVxdWlyZWQgdG8gbWFrZSB0aGUgb3RoZXIgcGllY2VzIHdvcmsuXG5AbWl4aW4gb2ZmLWNhbnZhcy1iYXNpY3Mge1xuXG4gIC8vLyBUcmFuc2Zvcm0gZGVwcmVjYXRlZCBzaXplIHNldHRpbmdzIGludG8gbWFwICYgc2hvdyB3YXJuaW5nXG4gIEBpZiB2YXJpYWJsZS1leGlzdHMob2ZmY2FudmFzLXNpemUpIHtcbiAgICAkb2ZmY2FudmFzLXNpemVzOiAoc21hbGw6ICRvZmZjYW52YXMtc2l6ZSwgbWVkaXVtOiAkb2ZmY2FudmFzLXNpemUpICFnbG9iYWw7XG4gICAgQHdhcm4gJyRvZmZjYW52YXMtc2l6ZSBpcyBkZXByZWNhdGVkIGFuZCBub3QgdXNlZCBhbnltb3JlISBQbGVhc2UgdXBkYXRlIHlvdXIgc2V0dGluZ3MgYW5kIHVzZSB0aGUgbWFwICRvZmZjYW52YXMtc2l6ZXMgaW5zdGVhZCc7XG4gIH1cbiAgQGlmIHZhcmlhYmxlLWV4aXN0cyhvZmZjYW52YXMtdmVydGljYWwtc2l6ZSkge1xuICAgICRvZmZjYW52YXMtdmVydGljYWwtc2l6ZXM6IChzbWFsbDogJG9mZmNhbnZhcy12ZXJ0aWNhbC1zaXplLCBtZWRpdW06ICRvZmZjYW52YXMtdmVydGljYWwtc2l6ZSkgIWdsb2JhbDtcbiAgICBAd2FybiAnJG9mZmNhbnZhcy12ZXJ0aWNhbC1zaXplIGlzIGRlcHJlY2F0ZWQgYW5kIG5vdCB1c2VkIGFueW1vcmUhIFBsZWFzZSB1cGRhdGUgeW91ciBzZXR0aW5ncyBhbmQgdXNlIHRoZSBtYXAgJG9mZmNhbnZhcy12ZXJ0aWNhbC1zaXplcyBpbnN0ZWFkJztcbiAgfVxuXG4gIC8vIENoZWNrcyB0aGUgei1pbmRleGVzIGFuZCBpbmNyZWFzZSB0aGVtIGR1ZSB0byBiYWNrd2FyZHMgY29tcGF0aWJpbGl0eS5cbiAgLy8gVGhpcyBpcyBuZWNlc3NhcnkgYmVjYXVzZSB0aGUgb3ZlcmxheSdzIHotaW5kZXggaXMgbmV3IHNpbmNlIHY2LjQgYW5kIG1heSBiZSBpZGVudGljYWwgdG8gdGhlIHVzZXIgY3VzdG9tIHNldHRpbmdzIG9mIHRoZSBwdXNoIHotaW5kZXguXG4gIEBpZiAkb2ZmY2FudmFzLXB1c2gtemluZGV4IDw9ICRvZmZjYW52YXMtb3ZlcmxheS16aW5kZXggeyAkb2ZmY2FudmFzLXB1c2gtemluZGV4OiAkb2ZmY2FudmFzLW92ZXJsYXktemluZGV4ICsgMSAhZ2xvYmFsOyB9XG4gIEBpZiAkb2ZmY2FudmFzLW92ZXJsYXAtemluZGV4IDw9ICRvZmZjYW52YXMtcHVzaC16aW5kZXggeyAkb2ZmY2FudmFzLW92ZXJsYXAtemluZGV4OiAkb2ZmY2FudmFzLXB1c2gtemluZGV4ICsgMSAhZ2xvYmFsOyB9XG4gIEBpZiAkb2ZmY2FudmFzLXJldmVhbC16aW5kZXggPD0gJG9mZmNhbnZhcy1vdmVybGF5LXppbmRleCB7ICRvZmZjYW52YXMtcmV2ZWFsLXppbmRleDogJG9mZmNhbnZhcy1vdmVybGF5LXppbmRleCArIDEgIWdsb2JhbDsgfVxuXG4gIC8vIEhpZGVzIG92ZXJmbG93IG9uIGJvZHkgd2hlbiBhbiBvZmYtY2FudmFzIHBhbmVsIGlzIG9wZW4uXG4gIC5pcy1vZmYtY2FudmFzLW9wZW4ge1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gIH1cblxuICAvLyBPZmYtY2FudmFzIG92ZXJsYXkgKGdlbmVyYXRlZCBieSBKYXZhU2NyaXB0KVxuICAuanMtb2ZmLWNhbnZhcy1vdmVybGF5IHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgei1pbmRleDogJG9mZmNhbnZhcy1vdmVybGF5LXppbmRleDtcblxuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcblxuICAgIHRyYW5zaXRpb246IG9wYWNpdHkgJG9mZmNhbnZhcy10cmFuc2l0aW9uLWxlbmd0aCAkb2ZmY2FudmFzLXRyYW5zaXRpb24tdGltaW5nLCB2aXNpYmlsaXR5ICRvZmZjYW52YXMtdHJhbnNpdGlvbi1sZW5ndGggJG9mZmNhbnZhcy10cmFuc2l0aW9uLXRpbWluZztcblxuICAgIGJhY2tncm91bmQ6ICRvZmZjYW52YXMtZXhpdC1iYWNrZ3JvdW5kO1xuXG4gICAgb3BhY2l0eTogMDtcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG5cbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuXG4gICAgJi5pcy12aXNpYmxlIHtcbiAgICAgIG9wYWNpdHk6IDE7XG4gICAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICAgIH1cblxuICAgICYuaXMtY2xvc2FibGUge1xuICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIH1cblxuICAgICYuaXMtb3ZlcmxheS1hYnNvbHV0ZSB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgfVxuXG4gICAgJi5pcy1vdmVybGF5LWZpeGVkIHtcbiAgICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICB9XG4gIH1cbn1cblxuLy8gQWRkcyBiYXNpYyBzdHlsZXMgZm9yIGFuIG9mZi1jYW52YXMgd3JhcHBlci5cbkBtaXhpbiBvZmYtY2FudmFzLXdyYXBwZXIoKSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cblxuLy8vIEFkZHMgYmFzaWMgc3R5bGVzIGZvciBhbiBvZmYtY2FudmFzIHBhbmVsLlxuQG1peGluIG9mZi1jYW52YXMtYmFzZShcbiAgJGJhY2tncm91bmQ6ICRvZmZjYW52YXMtYmFja2dyb3VuZCxcbiAgJHRyYW5zaXRpb246ICRvZmZjYW52YXMtdHJhbnNpdGlvbi1sZW5ndGggJG9mZmNhbnZhcy10cmFuc2l0aW9uLXRpbWluZyxcbiAgJGZpeGVkOiB0cnVlXG4pIHtcbiAgQGluY2x1ZGUgZGlzYWJsZS1tb3VzZS1vdXRsaW5lO1xuXG4gIEBpZiAkZml4ZWQgPT0gdHJ1ZSB7XG4gICAgcG9zaXRpb246IGZpeGVkO1xuICB9XG4gIEBlbHNlIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIH1cblxuICAvLyBTZXQgdGhlIG9mZi1jYW52YXMgei1pbmRleC5cbiAgei1pbmRleDogJG9mZmNhbnZhcy1wdXNoLXppbmRleDtcblxuICAvLyBJbmNyZWFzZSBDU1Mgc3BlY2lmaWNpdHlcbiAgJi5pcy10cmFuc2l0aW9uLXB1c2gge1xuICAgIHotaW5kZXg6ICRvZmZjYW52YXMtcHVzaC16aW5kZXg7XG4gIH1cblxuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gJHRyYW5zaXRpb247XG4gIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcblxuICBiYWNrZ3JvdW5kOiAkYmFja2dyb3VuZDtcblxuICAvLyBIaWRlIGluYWN0aXZlIG9mZi1jYW52YXMgd2l0aGluIHRoZSBjb250ZW50IHRoYXQgaGF2ZSB0aGUgc2FtZSBwb3NpdGlvblxuICAmLmlzLWNsb3NlZCB7XG4gICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICB9XG5cbiAgLy8gT3ZlcmxhcCBvbmx5IHN0eWxlcy5cbiAgJi5pcy10cmFuc2l0aW9uLW92ZXJsYXAge1xuICAgIHotaW5kZXg6ICRvZmZjYW52YXMtb3ZlcmxhcC16aW5kZXg7XG5cbiAgICAmLmlzLW9wZW4ge1xuICAgICAgYm94LXNoYWRvdzogJG9mZmNhbnZhcy1zaGFkb3c7XG4gICAgfVxuICB9XG5cbiAgLy8gU2V0cyB0cmFuc2Zvcm0gdG8gMCB0byBzaG93IGFuIG9mZi1jYW52YXMgcGFuZWwuXG4gICYuaXMtb3BlbiB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgMCk7XG4gIH1cbn1cblxuLy8vIEFkZHMgc3R5bGVzIHRvIHBvc2l0aW9uIGFuIG9mZi1jYW52YXMgcGFuZWwgdG8gdGhlIGxlZnQvcmlnaHQvdG9wL2JvdHRvbS5cbkBtaXhpbiBvZmYtY2FudmFzLXBvc2l0aW9uKFxuICAkcG9zaXRpb246IGxlZnQsXG4gICRvcmllbnRhdGlvbjogaG9yaXpvbnRhbCxcbiAgJHNpemVzOiBpZigkb3JpZW50YXRpb24gPT0gaG9yaXpvbnRhbCwgJG9mZmNhbnZhcy1zaXplcywgJG9mZmNhbnZhcy12ZXJ0aWNhbC1zaXplcylcbikge1xuICBAaWYgJHBvc2l0aW9uID09IGxlZnQge1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBvdmVyZmxvdy15OiBhdXRvO1xuXG4gICAgQGVhY2ggJG5hbWUsICRzaXplIGluICRzaXplcyB7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRuYW1lKSB7XG4gICAgICAgIHdpZHRoOiAkc2l6ZTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0kc2l6ZSk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gU2V0cyB0aGUgcG9zaXRpb24gZm9yIG5lc3RlZCBvZmYtY2FudmFzIGVsZW1lbnRcbiAgICBAYXQtcm9vdCAuI3skbWFpbmNvbnRlbnQtY2xhc3N9IC5vZmYtY2FudmFzLnBvc2l0aW9uLSN7JHBvc2l0aW9ufSB7XG5cbiAgICAgIEBlYWNoICRuYW1lLCAkc2l6ZSBpbiAkc2l6ZXMge1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRuYW1lKSB7XG4gICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0kc2l6ZSk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgICYuaXMtdHJhbnNpdGlvbi1vdmVybGFwLmlzLW9wZW4ge1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAwKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBTZXRzIHRoZSBvcGVuIHBvc2l0aW9uIGZvciB0aGUgY29udGVudFxuICAgIEBhdC1yb290IC4jeyRtYWluY29udGVudC1jbGFzc30uaXMtb3Blbi0jeyRwb3NpdGlvbn0ge1xuICAgICAgJi5oYXMtdHJhbnNpdGlvbi1wdXNoIHtcbiAgICAgICAgQGVhY2ggJG5hbWUsICRzaXplIGluICRzaXplcyB7XG4gICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkbmFtZSkge1xuICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKCRzaXplKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgQGVsc2UgaWYgJHBvc2l0aW9uID09IHJpZ2h0IHtcbiAgICB0b3A6IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIG92ZXJmbG93LXk6IGF1dG87XG5cbiAgICBAZWFjaCAkbmFtZSwgJHNpemUgaW4gJHNpemVzIHtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJG5hbWUpIHtcbiAgICAgICAgd2lkdGg6ICRzaXplO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoJHNpemUpO1xuICAgICAgfVxuICAgIH1cblxuICAgIC8vIFNldHMgdGhlIHBvc2l0aW9uIGZvciBuZXN0ZWQgb2ZmLWNhbnZhcyBlbGVtZW50XG4gICAgQGF0LXJvb3QgLiN7JG1haW5jb250ZW50LWNsYXNzfSAub2ZmLWNhbnZhcy5wb3NpdGlvbi0jeyRwb3NpdGlvbn0ge1xuXG4gICAgICBAZWFjaCAkbmFtZSwgJHNpemUgaW4gJHNpemVzIHtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkbmFtZSkge1xuICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgkc2l6ZSk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgICYuaXMtdHJhbnNpdGlvbi1vdmVybGFwLmlzLW9wZW4ge1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAwKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBTZXRzIHRoZSBvcGVuIHBvc2l0aW9uIGZvciB0aGUgY29udGVudFxuICAgIEBhdC1yb290IC4jeyRtYWluY29udGVudC1jbGFzc30uaXMtb3Blbi0jeyRwb3NpdGlvbn0ge1xuICAgICAgJi5oYXMtdHJhbnNpdGlvbi1wdXNoIHtcbiAgICAgICAgQGVhY2ggJG5hbWUsICRzaXplIGluICRzaXplcyB7XG4gICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkbmFtZSkge1xuICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0kc2l6ZSk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG4gIEBlbHNlIGlmICRwb3NpdGlvbiA9PSB0b3Age1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG92ZXJmbG93LXg6IGF1dG87XG5cbiAgICBAZWFjaCAkbmFtZSwgJHNpemUgaW4gJHNpemVzIHtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJG5hbWUpIHtcbiAgICAgICAgaGVpZ2h0OiAkc2l6ZTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0kc2l6ZSk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gU2V0cyB0aGUgcG9zaXRpb24gZm9yIG5lc3RlZCBvZmYtY2FudmFzIGVsZW1lbnRcbiAgICBAYXQtcm9vdCAuI3skbWFpbmNvbnRlbnQtY2xhc3N9IC5vZmYtY2FudmFzLnBvc2l0aW9uLSN7JHBvc2l0aW9ufSB7XG4gICAgICBAZWFjaCAkbmFtZSwgJHNpemUgaW4gJHNpemVzIHtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkbmFtZSkge1xuICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtJHNpemUpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICAmLmlzLXRyYW5zaXRpb24tb3ZlcmxhcC5pcy1vcGVuIHtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgMCk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gU2V0cyB0aGUgb3BlbiBwb3NpdGlvbiBmb3IgdGhlIGNvbnRlbnRcbiAgICBAYXQtcm9vdCAuI3skbWFpbmNvbnRlbnQtY2xhc3N9LmlzLW9wZW4tI3skcG9zaXRpb259IHtcbiAgICAgICYuaGFzLXRyYW5zaXRpb24tcHVzaCB7XG4gICAgICAgIEBlYWNoICRuYW1lLCAkc2l6ZSBpbiAkc2l6ZXMge1xuICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJG5hbWUpIHtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgkc2l6ZSk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG4gIEBlbHNlIGlmICRwb3NpdGlvbiA9PSBib3R0b20ge1xuICAgIGJvdHRvbTogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG92ZXJmbG93LXg6IGF1dG87XG5cbiAgICBAZWFjaCAkbmFtZSwgJHNpemUgaW4gJHNpemVzIHtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJG5hbWUpIHtcbiAgICAgICAgaGVpZ2h0OiAkc2l6ZTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKCRzaXplKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBTZXRzIHRoZSBwb3NpdGlvbiBmb3IgbmVzdGVkIG9mZi1jYW52YXMgZWxlbWVudFxuICAgIEBhdC1yb290IC4jeyRtYWluY29udGVudC1jbGFzc30gLm9mZi1jYW52YXMucG9zaXRpb24tI3skcG9zaXRpb259IHtcbiAgICAgIEBlYWNoICRuYW1lLCAkc2l6ZSBpbiAkc2l6ZXMge1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRuYW1lKSB7XG4gICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKCRzaXplKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgJi5pcy10cmFuc2l0aW9uLW92ZXJsYXAuaXMtb3BlbiB7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIDApO1xuICAgICAgfVxuICAgIH1cblxuICAgIC8vIFNldHMgdGhlIG9wZW4gcG9zaXRpb24gZm9yIHRoZSBjb250ZW50XG4gICAgQGF0LXJvb3QgLiN7JG1haW5jb250ZW50LWNsYXNzfS5pcy1vcGVuLSN7JHBvc2l0aW9ufSB7XG4gICAgICAmLmhhcy10cmFuc2l0aW9uLXB1c2gge1xuICAgICAgICBAZWFjaCAkbmFtZSwgJHNpemUgaW4gJHNpemVzIHtcbiAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRuYW1lKSB7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLSRzaXplKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyBJZiAkb2ZmY2FudmFzLWlubmVyLXNoYWRvdy1zaXplIGlzIHNldCwgYWRkIGlubmVyIGJveC1zaGFkb3cuXG4gIC8vIFRoaXMgbWltaWNzIHRoZSBvZmYtY2FudmFzIHBhbmVsIGhhdmluZyBhIGxvd2VyIHotaW5kZXgsIHdpdGhvdXQgaGF2aW5nIHRvIGhhdmUgb25lLlxuICBAaWYgJG9mZmNhbnZhcy1pbm5lci1zaGFkb3ctc2l6ZSB7XG4gICAgJi5pcy10cmFuc2l0aW9uLXB1c2gge1xuICAgICAgQGlmICRwb3NpdGlvbiA9PSBsZWZ0IHtcbiAgICAgICAgQGluY2x1ZGUgaW5uZXItc2lkZS1zaGFkb3cocmlnaHQsICRvZmZjYW52YXMtaW5uZXItc2hhZG93LXNpemUsICRvZmZjYW52YXMtaW5uZXItc2hhZG93LWNvbG9yKTtcbiAgICAgIH1cbiAgICAgIEBlbHNlIGlmICRwb3NpdGlvbiA9PSByaWdodCB7XG4gICAgICAgIEBpbmNsdWRlIGlubmVyLXNpZGUtc2hhZG93KGxlZnQsICRvZmZjYW52YXMtaW5uZXItc2hhZG93LXNpemUsICRvZmZjYW52YXMtaW5uZXItc2hhZG93LWNvbG9yKTtcbiAgICAgIH1cbiAgICAgIEBlbHNlIGlmICRwb3NpdGlvbiA9PSB0b3Age1xuICAgICAgICBAaW5jbHVkZSBpbm5lci1zaWRlLXNoYWRvdyhib3R0b20sICRvZmZjYW52YXMtaW5uZXItc2hhZG93LXNpemUsICRvZmZjYW52YXMtaW5uZXItc2hhZG93LWNvbG9yKTtcbiAgICAgIH1cbiAgICAgIEBlbHNlIGlmICRwb3NpdGlvbiA9PSBib3R0b20ge1xuICAgICAgICBAaW5jbHVkZSBpbm5lci1zaWRlLXNoYWRvdyh0b3AsICRvZmZjYW52YXMtaW5uZXItc2hhZG93LXNpemUsICRvZmZjYW52YXMtaW5uZXItc2hhZG93LWNvbG9yKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxufVxuXG4vLy8gU2V0cyB0aGUgc3R5bGVzIGZvciB0aGUgY29udGVudCBjb250YWluZXIuXG5AbWl4aW4gb2ZmLWNhbnZhcy1jb250ZW50KCkge1xuICB0cmFuc2Zvcm06IG5vbmU7XG4gIHRyYW5zaXRpb246IHRyYW5zZm9ybSAkb2ZmY2FudmFzLXRyYW5zaXRpb24tbGVuZ3RoICRvZmZjYW52YXMtdHJhbnNpdGlvbi10aW1pbmc7XG4gIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcblxuICAvLyBUcmFuc2Zvcm0gc2NvcGUgdW50aWwgdGhlIGVsZW1lbnQgaXMgY2xvc2VkIChtYWtlcyBzdXJlIHRyYW5zaXRpb25lbmQgZ2V0cyB0cmlnZ2VyZWQpXG4gICYuaGFzLXRyYW5zaXRpb24tcHVzaCB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgMCk7XG4gIH1cblxuICAvLyBDb25zaWRlciBlbGVtZW50ICYgY29udGVudCwgbmVzdGVkIGluIGFub3RoZXIgY29udGVudFxuICAub2ZmLWNhbnZhcy5pcy1vcGVuIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAwKTtcbiAgfVxufVxuXG4vLy8gQWRkcyBzdHlsZXMgdGhhdCByZXZlYWwgYW4gb2ZmLWNhbnZhcyBwYW5lbC5cbkBtaXhpbiBvZmYtY2FudmFzLXJldmVhbChcbiRwb3NpdGlvbjogbGVmdCxcbiR6aW5kZXg6ICRvZmZjYW52YXMtcmV2ZWFsLXppbmRleCxcbiRjb250ZW50OiAkbWFpbmNvbnRlbnQtY2xhc3MsXG4kYnJlYWtwb2ludDogc21hbGxcbikge1xuICB0cmFuc2Zvcm06IG5vbmU7XG4gIHotaW5kZXg6ICR6aW5kZXg7XG4gIHRyYW5zaXRpb246IG5vbmU7XG4gIHZpc2liaWxpdHk6IHZpc2libGU7XG5cbiAgQGlmIG5vdCAkb2ZmY2FudmFzLWZpeGVkLXJldmVhbCB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICB9XG5cbiAgLmNsb3NlLWJ1dHRvbiB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuXG4gIC8vIENvbnNpZGVyIHJldmVhbGVkIGVsZW1lbnQgaXMgbmVzdGVkIGluIGNvbnRlbnRcbiAgLiN7JG1haW5jb250ZW50LWNsYXNzfSAmIHtcbiAgICB0cmFuc2Zvcm06IG5vbmU7XG4gIH1cblxuICBAYXQtcm9vdCAuI3skY29udGVudH0uaGFzLXJldmVhbC0jeyRwb3NpdGlvbn0ge1xuICAgIG1hcmdpbi0jeyRwb3NpdGlvbn06IC16Zi1nZXQtYnAtdmFsKCRvZmZjYW52YXMtc2l6ZXMsICRicmVha3BvaW50KTtcbiAgfVxuXG4gIC8vIGJhY2t3YXJkcyBjb21wYXRpYmlsaXR5IChwcmlvciB0byB2Ni40KVxuICAmIH4gLiN7JGNvbnRlbnR9IHtcbiAgICBtYXJnaW4tI3skcG9zaXRpb259OiAtemYtZ2V0LWJwLXZhbCgkb2ZmY2FudmFzLXNpemVzLCAkYnJlYWtwb2ludCk7XG4gIH1cbn1cblxuLy8vIE92ZXJyaWRlcyB0aGUgb2ZmLWNhbnZhcyBzdHlsZXNcbkBtaXhpbiBpbi1jYW52YXMoKSB7XG4gIHZpc2liaWxpdHk6IHZpc2libGU7XG4gIGhlaWdodDogYXV0bztcbiAgcG9zaXRpb246IHN0YXRpYztcbiAgYmFja2dyb3VuZDogaW5oZXJpdDtcbiAgd2lkdGg6IGluaGVyaXQ7XG4gIG92ZXJmbG93OiBpbmhlcml0O1xuICB0cmFuc2l0aW9uOiBpbmhlcml0O1xuXG4gIC8vIEluY3JlYXNlIENTUyBzcGVjaWZpY2l0eVxuICAmLnBvc2l0aW9uLWxlZnQsXG4gICYucG9zaXRpb24tcmlnaHQsXG4gICYucG9zaXRpb24tdG9wLFxuICAmLnBvc2l0aW9uLWJvdHRvbSB7XG4gICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICB0cmFuc2Zvcm06IG5vbmU7XG4gIH1cblxuICAuY2xvc2UtYnV0dG9uIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLW9mZi1jYW52YXMge1xuICBAaW5jbHVkZSBvZmYtY2FudmFzLWJhc2ljcztcblxuICAvLyBPZmYtY2FudmFzIHdyYXBwZXJcbiAgLm9mZi1jYW52YXMtd3JhcHBlciB7XG4gICAgQGluY2x1ZGUgb2ZmLWNhbnZhcy13cmFwcGVyO1xuICB9XG5cbiAgLy8gT2ZmLWNhbnZhcyBjb250YWluZXJcbiAgLm9mZi1jYW52YXMge1xuICAgIEBpbmNsdWRlIG9mZi1jYW52YXMtYmFzZTtcblxuICAgIC8vIEZvcmNlIHBvc2l0aW9uIGFic29sdXRlIGZvciBuZXN0ZWQgb2ZmLWNhbnZhcyBiZWNhdXNlIGZpeGVkIGRvZXNuJ3Qgd29yayBmb3IgcHVzaCB0cmFuc2l0aW9uIHdpdGhpbiB0aGUgdHJhbnNmb3JtIHNjb3BlLlxuICAgIEBhdC1yb290IC4jeyRtYWluY29udGVudC1jbGFzc30gJiB7XG4gICAgICAvLyBOT1RFOiBzaW5jZSBvdmVybGFwIHRyYW5zaXRpb24gaXMgY3VycmVudGx5IGZvcmNlZCBpZiBuZXN0ZWQsIHRoZXJlJ3Mgbm8gbmVlZCB0byBmb3JjZSBwb3NpdGlvbiBhYnNvbHV0ZSB1bnRpbCBuZXN0ZWQgcHVzaCB0cmFuc2l0aW9uIGlzIHN1cHBvcnRlZC5cbiAgICAgIC8vIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB9XG4gIH1cblxuICAvLyBPZmYtY2FudmFzIGNvbnRhaW5lciB3aXRoIGFic29sdXRlIHBvc2l0aW9uXG4gIC5vZmYtY2FudmFzLWFic29sdXRlIHtcbiAgICBAaW5jbHVkZSBvZmYtY2FudmFzLWJhc2UoJGZpeGVkOiBmYWxzZSk7XG4gIH1cblxuICAvLyBPZmYtY2FudmFzIHBvc2l0aW9uIGNsYXNzZXNcbiAgLnBvc2l0aW9uLWxlZnQgICAgeyBAaW5jbHVkZSBvZmYtY2FudmFzLXBvc2l0aW9uKGxlZnQsICAgaG9yaXpvbnRhbCk7IH1cbiAgLnBvc2l0aW9uLXJpZ2h0ICAgeyBAaW5jbHVkZSBvZmYtY2FudmFzLXBvc2l0aW9uKHJpZ2h0LCAgaG9yaXpvbnRhbCk7IH1cbiAgLnBvc2l0aW9uLXRvcCAgICAgeyBAaW5jbHVkZSBvZmYtY2FudmFzLXBvc2l0aW9uKHRvcCwgICAgdmVydGljYWwpOyB9XG4gIC5wb3NpdGlvbi1ib3R0b20gIHsgQGluY2x1ZGUgb2ZmLWNhbnZhcy1wb3NpdGlvbihib3R0b20sIHZlcnRpY2FsKTsgfVxuXG4gIC5vZmYtY2FudmFzLWNvbnRlbnQge1xuICAgIEBpbmNsdWRlIG9mZi1jYW52YXMtY29udGVudDtcbiAgfVxuXG4gIC8vIFJldmVhbCBvZmYtY2FudmFzIHBhbmVsIG9uIGxhcmdlciBzY3JlZW5zXG4gIEBlYWNoICRuYW1lLCAkdmFsdWUgaW4gJGJyZWFrcG9pbnQtY2xhc3NlcyB7XG4gICAgQGlmICRuYW1lICE9ICQtemYtemVyby1icmVha3BvaW50IHtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJG5hbWUpIHtcbiAgICAgICAgLnBvc2l0aW9uLWxlZnQucmV2ZWFsLWZvci0jeyRuYW1lfSB7XG4gICAgICAgICAgQGluY2x1ZGUgb2ZmLWNhbnZhcy1yZXZlYWwobGVmdCwgJG9mZmNhbnZhcy1yZXZlYWwtemluZGV4LCAkbWFpbmNvbnRlbnQtY2xhc3MsICRuYW1lKTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5wb3NpdGlvbi1yaWdodC5yZXZlYWwtZm9yLSN7JG5hbWV9IHtcbiAgICAgICAgICBAaW5jbHVkZSBvZmYtY2FudmFzLXJldmVhbChyaWdodCwgJG9mZmNhbnZhcy1yZXZlYWwtemluZGV4LCAkbWFpbmNvbnRlbnQtY2xhc3MsICRuYW1lKTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5wb3NpdGlvbi10b3AucmV2ZWFsLWZvci0jeyRuYW1lfSB7XG4gICAgICAgICAgQGluY2x1ZGUgb2ZmLWNhbnZhcy1yZXZlYWwodG9wLCAkb2ZmY2FudmFzLXJldmVhbC16aW5kZXgsICRtYWluY29udGVudC1jbGFzcywgJG5hbWUpO1xuICAgICAgICB9XG5cbiAgICAgICAgLnBvc2l0aW9uLWJvdHRvbS5yZXZlYWwtZm9yLSN7JG5hbWV9IHtcbiAgICAgICAgICBAaW5jbHVkZSBvZmYtY2FudmFzLXJldmVhbChib3R0b20sICRvZmZjYW52YXMtcmV2ZWFsLXppbmRleCwgJG1haW5jb250ZW50LWNsYXNzLCAkbmFtZSk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyBNb3ZlIGluLWNhbnZhcyBmb3IgbGFyZ2VyIHNjcmVlbnNcbiAgQGVhY2ggJG5hbWUsICR2YWx1ZSBpbiAkYnJlYWtwb2ludC1jbGFzc2VzIHtcbiAgICBAaWYgJG5hbWUgIT0gJC16Zi16ZXJvLWJyZWFrcG9pbnQge1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkbmFtZSkge1xuICAgICAgICAub2ZmLWNhbnZhcy5pbi1jYW52YXMtZm9yLSN7JG5hbWV9IHtcbiAgICAgICAgICBAaW5jbHVkZSBpbi1jYW52YXM7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgb3JiaXRcbi8vLy9cblxuLy8vIERlZmF1bHQgY29sb3IgZm9yIE9yYml0J3MgYnVsbGV0cy5cbi8vLyBAdHlwZSBDb2xvclxuJG9yYml0LWJ1bGxldC1iYWNrZ3JvdW5kOiAkbWVkaXVtLWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGFjdGl2ZSBjb2xvciBmb3IgT3JiaXQncyBidWxsZXRzLlxuLy8vIEB0eXBlIENvbG9yXG4kb3JiaXQtYnVsbGV0LWJhY2tncm91bmQtYWN0aXZlOiAkZGFyay1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBkaWFtZXRlciBmb3IgT3JiaXQncyBidWxsZXRzLlxuLy8vIEB0eXBlIE51bWJlclxuJG9yYml0LWJ1bGxldC1kaWFtZXRlcjogMS4ycmVtICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBtYXJnaW4gYmV0d2VlbiBPcmJpdCdzIGJ1bGxldHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kb3JiaXQtYnVsbGV0LW1hcmdpbjogMC4xcmVtICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBkaXN0YW5jZSBmcm9tIHNsaWRlIHJlZ2lvbiBmb3IgT3JiaXQncyBidWxsZXRzLlxuLy8vIEB0eXBlIE51bWJlclxuJG9yYml0LWJ1bGxldC1tYXJnaW4tdG9wOiAwLjhyZW0gIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGJvdHRvbSBtYXJnaW4gZnJvbSBPcmJpdCdzIGJ1bGxldHMgdG8gd2hhdGV2ZXIgY29udGVudCBtYXkgbHVyayBiZWxvdyBpdC5cbi8vLyBAdHlwZSBOdW1iZXJcbiRvcmJpdC1idWxsZXQtbWFyZ2luLWJvdHRvbTogMC44cmVtICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBiYWNrZ3JvdW5kIGNvbG9yIGZvciBPcmJpdCdzIGNhcHRpb24uXG4vLy8gQHR5cGUgQ29sb3JcbiRvcmJpdC1jYXB0aW9uLWJhY2tncm91bmQ6IHJnYmEoJGJsYWNrLCAwLjUpICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBwYWRkaW5nIGZvciBPcmJpdCdzIGNhcHRpb24uXG4vLy8gQHR5cGUgTnVtYmVyXG4kb3JiaXQtY2FwdGlvbi1wYWRkaW5nOiAxcmVtICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBiYWNrZ3JvdW5kIGNvbG9yIGZvciBPcmJpdCdzIGNvbnRyb2xzIHdoZW4gaG92ZXJlZC5cbi8vLyBAdHlwZSBDb2xvclxuJG9yYml0LWNvbnRyb2wtYmFja2dyb3VuZC1ob3ZlcjogcmdiYSgkYmxhY2ssIDAuNSkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHBhZGRpbmcgZm9yIE9yYml0J3MgY29udHJvbHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kb3JiaXQtY29udHJvbC1wYWRkaW5nOiAxcmVtICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCB6LWluZGV4IGZvciBPcmJpdCdzIGNvbnRyb2xzLlxuLy8vIEB0eXBlIE51bWJlclxuJG9yYml0LWNvbnRyb2wtemluZGV4OiAxMCAhZGVmYXVsdDtcblxuLy8vIEFkZHMgc3R5bGVzIGZvciB0aGUgb3V0ZXIgT3JiaXQgd3JhcHBlci4gVGhlc2Ugc3R5bGVzIGFyZSB1c2VkIG9uIHRoZSBgLm9yYml0YCBjbGFzcy5cbkBtaXhpbiBvcmJpdC13cmFwcGVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4vLy8gQWRkcyBzdHlsZXMgZm9yIHRoZSBpbm5lciBPcmJpdCBzbGlkZSBjb250YWluZXIuIFRoZXNlIHN0eWxlcyBhcmUgdXNlZCBvbiB0aGUgYC5vcmJpdC1jb250YWluZXJgIGNsYXNzLlxuQG1peGluIG9yYml0LWNvbnRhaW5lciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgaGVpZ2h0OiAwOyAvLyBQcmV2ZW50IEZPVUMgYnkgbm90IHNob3dpbmcgdW50aWwgSlMgc2V0cyBoZWlnaHRcbiAgbWFyZ2luOiAwO1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuXG4vLy8gQWRkcyBzdHlsZXMgZm9yIHRoZSBpbmRpdmlkdWFsIHNsaWRlcyBvZiBhbiBPcmJpdCBzbGlkZXIuIFRoZXNlIHN0eWxlcyBhcmUgdXNlZCBvbiB0aGUgYC5vcmJpdC1zbGlkZWAgY2xhc3MuXG5AbWl4aW4gb3JiaXQtc2xpZGUge1xuICB3aWR0aDogMTAwJTtcblxuICAmLm5vLW1vdGlvbnVpIHtcbiAgICAmLmlzLWFjdGl2ZSB7XG4gICAgICB0b3A6IDA7XG4gICAgICBsZWZ0OiAwO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gb3JiaXQtZmlndXJlIHtcbiAgbWFyZ2luOiAwO1xufVxuXG4vLy8gQWRkcyBzdHlsZXMgZm9yIGEgc2xpZGUgY29udGFpbmluZyBhbiBpbWFnZS4gVGhlc2Ugc3R5bGVzIGFyZSB1c2VkIG9uIHRoZSBgLm9yYml0LWltYWdlYCBjbGFzcy5cbkBtaXhpbiBvcmJpdC1pbWFnZSB7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIG1hcmdpbjogMDtcbn1cblxuLy8vIEFkZHMgc3R5bGVzIGZvciBhbiBvcmJpdCBzbGlkZSBjYXB0aW9uLiBUaGVzZSBzdHlsZXMgYXJlIHVzZWQgb24gdGhlIGAub3JiaXQtY2FwdGlvbmAgY2xhc3MuXG5AbWl4aW4gb3JiaXQtY2FwdGlvbiB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgYm90dG9tOiAwO1xuICB3aWR0aDogMTAwJTtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgcGFkZGluZzogJG9yYml0LWNhcHRpb24tcGFkZGluZztcblxuICBiYWNrZ3JvdW5kLWNvbG9yOiAkb3JiaXQtY2FwdGlvbi1iYWNrZ3JvdW5kO1xuICBjb2xvcjogY29sb3ItcGljay1jb250cmFzdCgkb3JiaXQtY2FwdGlvbi1iYWNrZ3JvdW5kKTtcbn1cblxuLy8vIEFkZHMgYmFzZSBzdHlsZXMgZm9yIHRoZSBuZXh0L3ByZXZpb3VzIGJ1dHRvbnMgaW4gYW4gT3JiaXQgc2xpZGVyLiBUaGVzZSBzdHlsZXMgYXJlIHNoYXJlZCBiZXR3ZWVuIHRoZSBgLm9yYml0LW5leHRgIGFuZCBgLm9yYml0LXByZXZpb3VzYCBjbGFzc2VzIGluIHRoZSBkZWZhdWx0IENTUy5cbkBtaXhpbiBvcmJpdC1jb250cm9sIHtcbiAgQGluY2x1ZGUgZGlzYWJsZS1tb3VzZS1vdXRsaW5lO1xuICBAaW5jbHVkZSB2ZXJ0aWNhbC1jZW50ZXI7XG4gIHotaW5kZXg6ICRvcmJpdC1jb250cm9sLXppbmRleDtcbiAgcGFkZGluZzogJG9yYml0LWNvbnRyb2wtcGFkZGluZztcbiAgY29sb3I6ICR3aGl0ZTtcblxuICAmOmhvdmVyLFxuICAmOmFjdGl2ZSxcbiAgJjpmb2N1cyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJG9yYml0LWNvbnRyb2wtYmFja2dyb3VuZC1ob3ZlcjtcbiAgfVxufVxuXG4vLy8gQWRkcyBzdHlsZXMgZm9yIHRoZSBPcmJpdCBwcmV2aW91cyBidXR0b24uIFRoZXNlIHN0eWxlcyBhcmUgdXNlZCBvbiB0aGUgYC5vcmJpdC1wcmV2aW91c2AgY2xhc3MuXG5AbWl4aW4gb3JiaXQtcHJldmlvdXMge1xuICAjeyRnbG9iYWwtbGVmdH06IDA7XG59XG5cbi8vLyBBZGRzIHN0eWxlcyBmb3IgdGhlIE9yYml0IG5leHQgYnV0dG9uLiBUaGVzZSBzdHlsZXMgYXJlIHVzZWQgb24gdGhlIGAub3JiaXQtbmV4dGAgY2xhc3MuXG5AbWl4aW4gb3JiaXQtbmV4dCB7XG4gICN7JGdsb2JhbC1sZWZ0fTogYXV0bztcbiAgI3skZ2xvYmFsLXJpZ2h0fTogMDtcbn1cblxuLy8vIEFkZHMgc3R5bGVzIGZvciBhIGNvbnRhaW5lciBvZiBPcmJpdCBidWxsZXRzLiAvLy8gQWRkcyBzdHlsZXMgZm9yIHRoZSBPcmJpdCBwcmV2aW91cyBidXR0b24uIFRoZXNlIHN0eWxlcyBhcmUgdXNlZCBvbiB0aGUgYC5vcmJpdC1idWxsZXRzYCBjbGFzcy5cbkBtaXhpbiBvcmJpdC1idWxsZXRzIHtcbiAgQGluY2x1ZGUgZGlzYWJsZS1tb3VzZS1vdXRsaW5lO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG1hcmdpbi10b3A6ICRvcmJpdC1idWxsZXQtbWFyZ2luLXRvcDtcbiAgbWFyZ2luLWJvdHRvbTogJG9yYml0LWJ1bGxldC1tYXJnaW4tYm90dG9tO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgYnV0dG9uIHtcbiAgICB3aWR0aDogJG9yYml0LWJ1bGxldC1kaWFtZXRlcjtcbiAgICBoZWlnaHQ6ICRvcmJpdC1idWxsZXQtZGlhbWV0ZXI7XG4gICAgbWFyZ2luOiAkb3JiaXQtYnVsbGV0LW1hcmdpbjtcblxuICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkb3JiaXQtYnVsbGV0LWJhY2tncm91bmQ7XG5cbiAgICAmOmhvdmVyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRvcmJpdC1idWxsZXQtYmFja2dyb3VuZC1hY3RpdmU7XG4gICAgfVxuXG4gICAgJi5pcy1hY3RpdmUge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJG9yYml0LWJ1bGxldC1iYWNrZ3JvdW5kLWFjdGl2ZTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIGZvdW5kYXRpb24tb3JiaXQge1xuICAub3JiaXQge1xuICAgIEBpbmNsdWRlIG9yYml0LXdyYXBwZXI7XG4gIH1cblxuICAub3JiaXQtY29udGFpbmVyIHtcbiAgICBAaW5jbHVkZSBvcmJpdC1jb250YWluZXI7XG4gIH1cblxuICAub3JiaXQtc2xpZGUge1xuICAgIEBpbmNsdWRlIG9yYml0LXNsaWRlO1xuICB9XG5cbiAgLm9yYml0LWZpZ3VyZSB7XG4gICAgQGluY2x1ZGUgb3JiaXQtZmlndXJlO1xuICB9XG5cbiAgLm9yYml0LWltYWdlIHtcbiAgICBAaW5jbHVkZSBvcmJpdC1pbWFnZTtcbiAgfVxuXG4gIC5vcmJpdC1jYXB0aW9uIHtcbiAgICBAaW5jbHVkZSBvcmJpdC1jYXB0aW9uO1xuICB9XG5cbiAgJW9yYml0LWNvbnRyb2wge1xuICAgIEBpbmNsdWRlIG9yYml0LWNvbnRyb2w7XG4gIH1cblxuICAub3JiaXQtcHJldmlvdXMge1xuICAgIEBleHRlbmQgJW9yYml0LWNvbnRyb2w7XG4gICAgQGluY2x1ZGUgb3JiaXQtcHJldmlvdXM7XG4gIH1cblxuICAub3JiaXQtbmV4dCB7XG4gICAgQGV4dGVuZCAlb3JiaXQtY29udHJvbDtcbiAgICBAaW5jbHVkZSBvcmJpdC1uZXh0O1xuICB9XG5cbiAgLm9yYml0LWJ1bGxldHMge1xuICAgIEBpbmNsdWRlIG9yYml0LWJ1bGxldHM7XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIHBhZ2luYXRpb25cbi8vLy9cblxuLy8vIEZvbnQgc2l6ZSBvZiBwYWdpbmF0aW9uIGl0ZW1zLlxuLy8vIEB0eXBlIE51bWJlclxuJHBhZ2luYXRpb24tZm9udC1zaXplOiByZW0tY2FsYygxNCkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGJvdHRvbSBtYXJnaW4gb2YgdGhlIHBhZ2luYXRpb24gb2JqZWN0LlxuLy8vIEB0eXBlIE51bWJlclxuJHBhZ2luYXRpb24tbWFyZ2luLWJvdHRvbTogJGdsb2JhbC1tYXJnaW4gIWRlZmF1bHQ7XG5cbi8vLyBUZXh0IGNvbG9yIG9mIHBhZ2luYXRpb24gaXRlbXMuXG4vLy8gQHR5cGUgQ29sb3JcbiRwYWdpbmF0aW9uLWl0ZW0tY29sb3I6ICRibGFjayAhZGVmYXVsdDtcblxuLy8vIFBhZGRpbmcgaW5zaWRlIG9mIHBhZ2luYXRpb24gaXRlbXMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kcGFnaW5hdGlvbi1pdGVtLXBhZGRpbmc6IHJlbS1jYWxjKDMgMTApICFkZWZhdWx0O1xuXG4vLy8gUmlnaHQgbWFyZ2luIHRvIHNlcGFyYXRlIHBhZ2luYXRpb24gaXRlbXMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kcGFnaW5hdGlvbi1pdGVtLXNwYWNpbmc6IHJlbS1jYWxjKDEpICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCByYWRpdXMgZm9yIHBhZ2luYXRpb24gaXRlbXMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kcGFnaW5hdGlvbi1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzICFkZWZhdWx0O1xuXG4vLy8gQmFja2dyb3VuZCBjb2xvciBvZiBwYWdpbmF0aW9uIGl0ZW1zIG9uIGhvdmVyLlxuLy8vIEB0eXBlIENvbG9yXG4kcGFnaW5hdGlvbi1pdGVtLWJhY2tncm91bmQtaG92ZXI6ICRsaWdodC1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gQmFja2dyb3VuZCBjb2xvciBvZiBwYWdpbmF0aW9uIGl0ZW0gZm9yIHRoZSBjdXJyZW50IHBhZ2UuXG4vLy8gQHR5cGUgQ29sb3JcbiRwYWdpbmF0aW9uLWl0ZW0tYmFja2dyb3VuZC1jdXJyZW50OiAkcHJpbWFyeS1jb2xvciAhZGVmYXVsdDtcblxuLy8vIFRleHQgY29sb3Igb2YgdGhlIHBhZ2luYXRpb24gaXRlbSBmb3IgdGhlIGN1cnJlbnQgcGFnZS5cbi8vLyBAdHlwZSBDb2xvclxuJHBhZ2luYXRpb24taXRlbS1jb2xvci1jdXJyZW50OiAkd2hpdGUgIWRlZmF1bHQ7XG5cbi8vLyBUZXh0IGNvbG9yIG9mIGEgZGlzYWJsZWQgcGFnaW5hdGlvbiBpdGVtLlxuLy8vIEB0eXBlIENvbG9yXG4kcGFnaW5hdGlvbi1pdGVtLWNvbG9yLWRpc2FibGVkOiAkbWVkaXVtLWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBDb2xvciBvZiB0aGUgZWxsaXBzaXMgaW4gYSBwYWdpbmF0aW9uIG1lbnUuXG4vLy8gQHR5cGUgQ29sb3JcbiRwYWdpbmF0aW9uLWVsbGlwc2lzLWNvbG9yOiAkYmxhY2sgIWRlZmF1bHQ7XG5cbi8vLyBJZiBgZmFsc2VgLCBkb24ndCBkaXNwbGF5IHBhZ2UgbnVtYmVyIGxpbmtzIG9uIG1vYmlsZSwgb25seSBuZXh0L3ByZXZpb3VzIGxpbmtzXG4vLy8gYW5kIG9wdGlvbmFsbHkgY3VycmVudCBwYWdlIG51bWJlci5cbi8vLyBAdHlwZSBCb29sZWFuXG4kcGFnaW5hdGlvbi1tb2JpbGUtaXRlbXM6IGZhbHNlICFkZWZhdWx0O1xuXG4vLy8gSWYgYHRydWVgLCBkaXNwbGF5IHRoZSBjdXJyZW50IHBhZ2UgbnVtYmVyIG9uIG1vYmlsZSBldmVuIGlmIGAkcGFnaW5hdGlvbi1tb2JpbGUtaXRlbXNgIGlzIHNldCB0byBgZmFsc2VgLlxuLy8vIFRoaXMgcGFyYW1ldGVyIHdpbGwgb25seSBvdmVycmlkZSB0aGUgdmlzaWJpbGl0eSBzZXR0aW5nIG9mIHRoZSBjdXJyZW50IGl0ZW0gZm9yIGAkcGFnaW5hdGlvbi1tb2JpbGUtaXRlbXM6IGZhbHNlO2AsXG4vLy8gaXQgd2lsbCBub3QgYWZmZWN0IHRoZSBjdXJyZW50IHBhZ2UgbnVtYmVyIHZpc2liaWxpdHkgd2hlbiBgJHBhZ2luYXRpb24tbW9iaWxlLWl0ZW1zYCBpcyBzZXQgdG8gYHRydWVgLlxuLy8vIEB0eXBlIEJvb2xlYW5cbiRwYWdpbmF0aW9uLW1vYmlsZS1jdXJyZW50LWl0ZW06IGZhbHNlICFkZWZhdWx0O1xuXG4vLy8gSWYgYHRydWVgLCBhcnJvd3MgYXJlIGFkZGVkIHRvIHRoZSBuZXh0IGFuZCBwcmV2aW91cyBsaW5rcyBvZiBwYWdpbmF0aW9uLlxuLy8vIEB0eXBlIEJvb2xlYW5cbiRwYWdpbmF0aW9uLWFycm93czogdHJ1ZSAhZGVmYXVsdDtcblxuLy8vIEFkZHMgc3R5bGVzIGZvciBhIHBhZ2luYXRpb24gY29udGFpbmVyLiBBcHBseSB0aGlzIHRvIGEgYDx1bD5gLlxuQG1peGluIHBhZ2luYXRpb24tY29udGFpbmVyIChcbiAgJG1hcmdpbi1ib3R0b206ICRwYWdpbmF0aW9uLW1hcmdpbi1ib3R0b20sXG4gICRmb250LXNpemU6ICRwYWdpbmF0aW9uLWZvbnQtc2l6ZSxcbiAgJHNwYWNpbmc6ICRwYWdpbmF0aW9uLWl0ZW0tc3BhY2luZyxcbiAgJHJhZGl1czogJHBhZ2luYXRpb24tcmFkaXVzLFxuICAkY29sb3I6ICRwYWdpbmF0aW9uLWl0ZW0tY29sb3IsXG4gICRwYWRkaW5nOiAkcGFnaW5hdGlvbi1pdGVtLXBhZGRpbmcsXG4gICRiYWNrZ3JvdW5kLWhvdmVyOiAkcGFnaW5hdGlvbi1pdGVtLWJhY2tncm91bmQtaG92ZXJcbikge1xuICBAaW5jbHVkZSBjbGVhcmZpeDtcbiAgbWFyZ2luLSN7JGdsb2JhbC1sZWZ0fTogMDtcbiAgbWFyZ2luLWJvdHRvbTogJG1hcmdpbi1ib3R0b207XG5cbiAgLy8gTGlzdCBpdGVtXG4gIGxpIHtcbiAgICBtYXJnaW4tI3skZ2xvYmFsLXJpZ2h0fTogJHNwYWNpbmc7XG4gICAgYm9yZGVyLXJhZGl1czogJHJhZGl1cztcbiAgICBmb250LXNpemU6ICRmb250LXNpemU7XG5cbiAgICBAaWYgJHBhZ2luYXRpb24tbW9iaWxlLWl0ZW1zIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgZGlzcGxheTogbm9uZTtcblxuICAgICAgJjpsYXN0LWNoaWxkLFxuICAgICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIH1cblxuICAgICAgQGlmICRwYWdpbmF0aW9uLW1vYmlsZS1jdXJyZW50LWl0ZW0ge1xuICAgICAgICAmLmN1cnJlbnQge1xuICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8gUGFnZSBsaW5rc1xuICBhLFxuICBidXR0b24ge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBhZGRpbmc6ICRwYWRkaW5nO1xuICAgIGJvcmRlci1yYWRpdXM6ICRyYWRpdXM7XG4gICAgY29sb3I6ICRjb2xvcjtcblxuICAgICY6aG92ZXIge1xuICAgICAgYmFja2dyb3VuZDogJGJhY2tncm91bmQtaG92ZXI7XG4gICAgfVxuICB9XG59XG5cbi8vLyBBZGRzIHN0eWxlcyBmb3IgdGhlIGN1cnJlbnQgcGFnaW5hdGlvbiBpdGVtLiBBcHBseSB0aGlzIHRvIGFuIGA8YT5gLlxuQG1peGluIHBhZ2luYXRpb24taXRlbS1jdXJyZW50IChcbiAgJHBhZGRpbmc6ICRwYWdpbmF0aW9uLWl0ZW0tcGFkZGluZyxcbiAgJGJhY2tncm91bmQtY3VycmVudDogJHBhZ2luYXRpb24taXRlbS1iYWNrZ3JvdW5kLWN1cnJlbnQsXG4gICRjb2xvci1jdXJyZW50OiAkcGFnaW5hdGlvbi1pdGVtLWNvbG9yLWN1cnJlbnRcbikge1xuICBwYWRkaW5nOiAkcGFkZGluZztcbiAgYmFja2dyb3VuZDogJGJhY2tncm91bmQtY3VycmVudDtcbiAgY29sb3I6ICRjb2xvci1jdXJyZW50O1xuICBjdXJzb3I6IGRlZmF1bHQ7XG59XG5cbi8vLyBBZGRzIHN0eWxlcyBmb3IgYSBkaXNhYmxlZCBwYWdpbmF0aW9uIGl0ZW0uIEFwcGx5IHRoaXMgdG8gYW4gYDxhPmAuXG5AbWl4aW4gcGFnaW5hdGlvbi1pdGVtLWRpc2FibGVkIChcbiAgJHBhZGRpbmc6ICRwYWdpbmF0aW9uLWl0ZW0tcGFkZGluZyxcbiAgJGNvbG9yOiAkcGFnaW5hdGlvbi1pdGVtLWNvbG9yLWRpc2FibGVkXG4pIHtcbiAgcGFkZGluZzogJHBhZGRpbmc7XG4gIGNvbG9yOiAkY29sb3I7XG4gIGN1cnNvcjogbm90LWFsbG93ZWQ7XG5cbiAgJjpob3ZlciB7XG4gICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gIH1cbn1cblxuLy8vIEFkZHMgc3R5bGVzIGZvciBhbiBlbGxpcHNpcyBmb3IgdXNlIGluIGEgcGFnaW5hdGlvbiBsaXN0LlxuQG1peGluIHBhZ2luYXRpb24tZWxsaXBzaXMgKFxuICAkcGFkZGluZzogJHBhZ2luYXRpb24taXRlbS1wYWRkaW5nLFxuICAkY29sb3I6ICRwYWdpbmF0aW9uLWVsbGlwc2lzLWNvbG9yXG4pIHtcbiAgcGFkZGluZzogJHBhZGRpbmc7XG4gIGNvbnRlbnQ6ICdcXDIwMjYnO1xuICBjb2xvcjogJGNvbG9yO1xufVxuXG5AbWl4aW4gZm91bmRhdGlvbi1wYWdpbmF0aW9uIHtcbiAgLnBhZ2luYXRpb24ge1xuICAgIEBpbmNsdWRlIHBhZ2luYXRpb24tY29udGFpbmVyO1xuXG4gICAgLmN1cnJlbnQge1xuICAgICAgQGluY2x1ZGUgcGFnaW5hdGlvbi1pdGVtLWN1cnJlbnQ7XG4gICAgfVxuXG4gICAgLmRpc2FibGVkIHtcbiAgICAgIEBpbmNsdWRlIHBhZ2luYXRpb24taXRlbS1kaXNhYmxlZDtcbiAgICB9XG5cbiAgICAuZWxsaXBzaXM6OmFmdGVyIHtcbiAgICAgIEBpbmNsdWRlIHBhZ2luYXRpb24tZWxsaXBzaXM7XG4gICAgfVxuICB9XG5cbiAgQGlmICRwYWdpbmF0aW9uLWFycm93cyB7XG4gICAgLnBhZ2luYXRpb24tcHJldmlvdXMgYTo6YmVmb3JlLFxuICAgIC5wYWdpbmF0aW9uLXByZXZpb3VzLmRpc2FibGVkOjpiZWZvcmUge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgbWFyZ2luLSN7JGdsb2JhbC1yaWdodH06IDAuNXJlbTtcbiAgICAgIGNvbnRlbnQ6ICdcXDAwYWInO1xuICAgIH1cblxuICAgIC5wYWdpbmF0aW9uLW5leHQgYTo6YWZ0ZXIsXG4gICAgLnBhZ2luYXRpb24tbmV4dC5kaXNhYmxlZDo6YWZ0ZXIge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgbWFyZ2luLSN7JGdsb2JhbC1sZWZ0fTogMC41cmVtO1xuICAgICAgY29udGVudDogJ1xcMDBiYic7XG4gICAgfVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vIEFkZHMgc3R5bGVzIGZvciBhIHByb2dyZXNzIGJhciBjb250YWluZXIuXG5AbWl4aW4gcHJvZ3Jlc3MtY29udGFpbmVyIHtcbiAgaGVpZ2h0OiAkcHJvZ3Jlc3MtaGVpZ2h0O1xuICBtYXJnaW4tYm90dG9tOiAkcHJvZ3Jlc3MtbWFyZ2luLWJvdHRvbTtcbiAgYm9yZGVyLXJhZGl1czogJHByb2dyZXNzLXJhZGl1cztcbiAgYmFja2dyb3VuZC1jb2xvcjogJHByb2dyZXNzLWJhY2tncm91bmQ7XG59XG5cbi8vLyBBZGRzIHN0eWxlcyBmb3IgdGhlIGlubmVyIG1ldGVyIG9mIGEgcHJvZ3Jlc3MgYmFyLlxuQG1peGluIHByb2dyZXNzLW1ldGVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIGJhY2tncm91bmQtY29sb3I6ICRwcm9ncmVzcy1tZXRlci1iYWNrZ3JvdW5kO1xuXG4gIEBpZiBoYXMtdmFsdWUoJHByb2dyZXNzLXJhZGl1cykge1xuICAgIGJvcmRlci1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuICB9XG59XG5cbi8vLyBBZGRzIHN0eWxlcyBmb3IgdGV4dCBpbiB0aGUgcHJvZ3Jlc3MgbWV0ZXIuXG5AbWl4aW4gcHJvZ3Jlc3MtbWV0ZXItdGV4dCB7XG4gIEBpbmNsdWRlIGFic29sdXRlLWNlbnRlcjtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBtYXJnaW46IDA7XG4gIGZvbnQtc2l6ZTogMC43NXJlbTtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIGNvbG9yOiAkd2hpdGU7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG5cbiAgQGlmIGhhcy12YWx1ZSgkcHJvZ3Jlc3MtcmFkaXVzKSB7XG4gICAgYm9yZGVyLXJhZGl1czogJHByb2dyZXNzLXJhZGl1cztcbiAgfVxufVxuXG5AbWl4aW4gZm91bmRhdGlvbi1wcm9ncmVzcy1iYXIge1xuICAvLyBQcm9ncmVzcyBiYXJcbiAgLnByb2dyZXNzIHtcbiAgICBAaW5jbHVkZSBwcm9ncmVzcy1jb250YWluZXI7XG5cbiAgICBAZWFjaCAkbmFtZSwgJGNvbG9yIGluICRmb3VuZGF0aW9uLXBhbGV0dGUge1xuICAgICAgJi4jeyRuYW1lfSB7XG4gICAgICAgIC5wcm9ncmVzcy1tZXRlciB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8gSW5uZXIgbWV0ZXJcbiAgLnByb2dyZXNzLW1ldGVyIHtcbiAgICBAaW5jbHVkZSBwcm9ncmVzcy1tZXRlcjtcbiAgfVxuXG4gIC8vIElubmVyIG1ldGVyIHRleHRcbiAgLnByb2dyZXNzLW1ldGVyLXRleHQge1xuICAgIEBpbmNsdWRlIHByb2dyZXNzLW1ldGVyLXRleHQ7XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLyBbVE9ET10gQ2hlY2sgaG93IHBsdWdpbiBjb25maXJtcyBkaXNhYmxlZCBvciB2ZXJ0aWNhbCBzdGF0dXNcbi8vIFtUT0RPXSBDaGVjayBpZiB0cmFuc2l0aW9uOiBhbGw7IGlzIG5lY2Vzc2FyeVxuXG4vLy8vXG4vLy8gQGdyb3VwIHNsaWRlclxuLy8vL1xuXG4vLy8gRGVmYXVsdCBzbGlkZXIgd2lkdGggb2YgYSB2ZXJ0aWNhbCBzbGlkZXIuIChEb2Vzbid0IGFwcGx5IHRvIHRoZSBuYXRpdmUgc2xpZGVyLilcbi8vLyBAdHlwZSBOdW1iZXJcbiRzbGlkZXItd2lkdGgtdmVydGljYWw6IDAuNXJlbSAhZGVmYXVsdDtcblxuLy8vIFRyYW5zaXRpb24gcHJvcGVydGllcyB0byBhcHBseSB0byB0aGUgc2xpZGVyIGhhbmRsZSBhbmQgZmlsbC4gKERvZXNuJ3QgYXBwbHkgdG8gdGhlIG5hdGl2ZSBzbGlkZXIuKVxuLy8vIEB0eXBlIFRyYW5zaXRpb25cbiRzbGlkZXItdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZS1pbi1vdXQgIWRlZmF1bHQ7XG5cbi8vLyBBZGRzIHRoZSBnZW5lcmFsIHN0eWxlcyBmb3Igc2xpZGVycy5cbkBtaXhpbiBzbGlkZXItY29udGFpbmVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBoZWlnaHQ6ICRzbGlkZXItaGVpZ2h0O1xuICBtYXJnaW4tdG9wOiAxLjI1cmVtO1xuICBtYXJnaW4tYm90dG9tOiAyLjI1cmVtO1xuXG4gIGJhY2tncm91bmQtY29sb3I6ICRzbGlkZXItYmFja2dyb3VuZDtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICB1c2VyLXNlbGVjdDogbm9uZTtcbiAgdG91Y2gtYWN0aW9uOiBub25lO1xufVxuXG4vLy8gQWRkcyB0aGUgZ2VuZXJhbCBzdHlsZXMgZm9yIGFjdGl2ZSBmaWxsIGZvciBzbGlkZXJzLlxuQG1peGluIHNsaWRlci1maWxsIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG5cbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogJHNsaWRlci1oZWlnaHQ7XG5cbiAgYmFja2dyb3VuZC1jb2xvcjogJHNsaWRlci1maWxsLWJhY2tncm91bmQ7XG4gIHRyYW5zaXRpb246ICRzbGlkZXItdHJhbnNpdGlvbjtcblxuICAmLmlzLWRyYWdnaW5nIHtcbiAgICB0cmFuc2l0aW9uOiBhbGwgMHMgbGluZWFyO1xuICB9XG59XG5cbi8vLyBBZGRzIHRoZSBnZW5lcmFsIHN0eWxlcyBmb3IgdGhlIHNsaWRlciBoYW5kbGVzLlxuQG1peGluIHNsaWRlci1oYW5kbGUge1xuICBAaW5jbHVkZSBkaXNhYmxlLW1vdXNlLW91dGxpbmU7XG4gIEBpbmNsdWRlIHZlcnRpY2FsLWNlbnRlcjtcbiAgbGVmdDogMDtcbiAgei1pbmRleDogMTtcblxuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHdpZHRoOiAkc2xpZGVyLWhhbmRsZS13aWR0aDtcbiAgaGVpZ2h0OiAkc2xpZGVyLWhhbmRsZS1oZWlnaHQ7XG5cbiAgYm9yZGVyLXJhZGl1czogJHNsaWRlci1yYWRpdXM7XG4gIGJhY2tncm91bmQtY29sb3I6ICRzbGlkZXItaGFuZGxlLWJhY2tncm91bmQ7XG4gIHRyYW5zaXRpb246ICRzbGlkZXItdHJhbnNpdGlvbjtcbiAgdG91Y2gtYWN0aW9uOiBtYW5pcHVsYXRpb247XG5cbiAgJjpob3ZlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogc2NhbGUtY29sb3IoJHNsaWRlci1oYW5kbGUtYmFja2dyb3VuZCwgJGxpZ2h0bmVzczogLTE1JSk7XG4gIH1cblxuICAmLmlzLWRyYWdnaW5nIHtcbiAgICB0cmFuc2l0aW9uOiBhbGwgMHMgbGluZWFyO1xuICB9XG59XG5cbkBtaXhpbiBzbGlkZXItZGlzYWJsZWQge1xuICBvcGFjaXR5OiAkc2xpZGVyLW9wYWNpdHktZGlzYWJsZWQ7XG4gIGN1cnNvcjogbm90LWFsbG93ZWQ7XG59XG5cbkBtaXhpbiBzbGlkZXItdmVydGljYWwge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHdpZHRoOiAkc2xpZGVyLXdpZHRoLXZlcnRpY2FsO1xuICBoZWlnaHQ6IDEyLjVyZW07XG4gIG1hcmdpbjogMCAxLjI1cmVtO1xuICB0cmFuc2Zvcm06IHNjYWxlKDEsIC0xKTtcblxuICAuc2xpZGVyLWZpbGwge1xuICAgIHRvcDogMDtcbiAgICB3aWR0aDogJHNsaWRlci13aWR0aC12ZXJ0aWNhbDtcbiAgICBtYXgtaGVpZ2h0OiAxMDAlO1xuICB9XG5cbiAgLnNsaWRlci1oYW5kbGUge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogNTAlO1xuICAgIHdpZHRoOiAkc2xpZGVyLWhhbmRsZS1oZWlnaHQ7XG4gICAgaGVpZ2h0OiAkc2xpZGVyLWhhbmRsZS13aWR0aDtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XG4gIH1cbn1cblxuQG1peGluIGZvdW5kYXRpb24tc2xpZGVyIHtcbiAgLy8gQ29udGFpbmVyXG4gIC5zbGlkZXIge1xuICAgIEBpbmNsdWRlIHNsaWRlci1jb250YWluZXI7XG4gIH1cblxuICAvLyBGaWxsIGFyZWFcbiAgLnNsaWRlci1maWxsIHtcbiAgICBAaW5jbHVkZSBzbGlkZXItZmlsbDtcbiAgfVxuXG4gIC8vIERyYWdnYWJsZSBoYW5kbGVcbiAgLnNsaWRlci1oYW5kbGUge1xuICAgIEBpbmNsdWRlIHNsaWRlci1oYW5kbGU7XG4gIH1cblxuICAvLyBEaXNhYmxlZCBzdGF0ZVxuICAuc2xpZGVyLmRpc2FibGVkLFxuICAuc2xpZGVyW2Rpc2FibGVkXSB7XG4gICAgQGluY2x1ZGUgc2xpZGVyLWRpc2FibGVkO1xuICB9XG5cbiAgLy8gVmVydGljYWwgc2xpZGVyXG4gIC5zbGlkZXIudmVydGljYWwge1xuICAgIEBpbmNsdWRlIHNsaWRlci12ZXJ0aWNhbDtcbiAgfVxuXG4gIC8vIFJUTCBzdXBwb3J0XG4gIEBpZiAkZ2xvYmFsLXRleHQtZGlyZWN0aW9uID09IHJ0bCB7XG4gICAgLnNsaWRlcjpub3QoLnZlcnRpY2FsKSB7XG4gICAgICB0cmFuc2Zvcm06IHNjYWxlKC0xLCAxKTtcbiAgICB9XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG5AbWl4aW4gZm91bmRhdGlvbi1zdGlja3kge1xuICAuc3RpY2t5LWNvbnRhaW5lciB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB9XG5cbiAgLnN0aWNreSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHotaW5kZXg6IDA7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgfVxuXG4gIC5zdGlja3kuaXMtc3R1Y2sge1xuICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICB6LWluZGV4OiA1O1xuICAgIHdpZHRoOiAxMDAlO1xuXG4gICAgJi5pcy1hdC10b3Age1xuICAgICAgdG9wOiAwO1xuICAgIH1cblxuICAgICYuaXMtYXQtYm90dG9tIHtcbiAgICAgIGJvdHRvbTogMDtcbiAgICB9XG4gIH1cblxuICAuc3RpY2t5LmlzLWFuY2hvcmVkIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgcmlnaHQ6IGF1dG87XG4gICAgbGVmdDogYXV0bztcblxuICAgICYuaXMtYXQtYm90dG9tIHtcbiAgICAgIGJvdHRvbTogMDtcbiAgICB9XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIHN3aXRjaFxuLy8vL1xuXG4vLy8gQmFja2dyb3VuZCBjb2xvciBvZiBhIHN3aXRjaC5cbi8vLyBAdHlwZSBDb2xvclxuJHN3aXRjaC1iYWNrZ3JvdW5kOiAkbWVkaXVtLWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBCYWNrZ3JvdW5kIGFjdGl2ZSBjb2xvciBvZiBhIHN3aXRjaC5cbi8vLyBAdHlwZSBDb2xvclxuJHN3aXRjaC1iYWNrZ3JvdW5kLWFjdGl2ZTogJHByaW1hcnktY29sb3IgIWRlZmF1bHQ7XG5cbi8vLyBIZWlnaHQgb2YgYSBzd2l0Y2gsIHdpdGggbm8gY2xhc3MgYXBwbGllZC5cbi8vLyBAdHlwZSBOdW1iZXJcbiRzd2l0Y2gtaGVpZ2h0OiAycmVtICFkZWZhdWx0O1xuXG4vLy8gSGVpZ2h0IG9mIGEgc3dpdGNoIHdpdGggLnRpbnkgY2xhc3MuXG4vLy8gQHR5cGUgTnVtYmVyXG4kc3dpdGNoLWhlaWdodC10aW55OiAxLjVyZW0gIWRlZmF1bHQ7XG5cbi8vLyBIZWlnaHQgb2YgYSBzd2l0Y2ggd2l0aCAuc21hbGwgY2xhc3MuXG4vLy8gQHR5cGUgTnVtYmVyXG4kc3dpdGNoLWhlaWdodC1zbWFsbDogMS43NXJlbSAhZGVmYXVsdDtcblxuLy8vIEhlaWdodCBvZiBhIHN3aXRjaCB3aXRoIC5sYXJnZSBjbGFzcy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRzd2l0Y2gtaGVpZ2h0LWxhcmdlOiAyLjVyZW0gIWRlZmF1bHQ7XG5cbi8vLyBCb3JkZXIgcmFkaXVzIG9mIHRoZSBzd2l0Y2hcbi8vLyBAdHlwZSBOdW1iZXJcbiRzd2l0Y2gtcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cyAhZGVmYXVsdDtcblxuLy8vIGJvcmRlciBhcm91bmQgYSBtb2RhbC5cbi8vLyBAdHlwZSBOdW1iZXJcbiRzd2l0Y2gtbWFyZ2luOiAkZ2xvYmFsLW1hcmdpbiAhZGVmYXVsdDtcblxuLy8vIEJhY2tncm91bmQgY29sb3IgZm9yIHRoZSBzd2l0Y2ggY29udGFpbmVyIGFuZCBwYWRkbGUuXG4vLy8gQHR5cGUgQ29sb3JcbiRzd2l0Y2gtcGFkZGxlLWJhY2tncm91bmQ6ICR3aGl0ZSAhZGVmYXVsdDtcblxuLy8vIFNwYWNpbmcgYmV0d2VlbiBhIHN3aXRjaCBwYWRkbGUgYW5kIHRoZSBlZGdlIG9mIHRoZSBib2R5LlxuLy8vIEB0eXBlIE51bWJlclxuJHN3aXRjaC1wYWRkbGUtb2Zmc2V0OiAwLjI1cmVtICFkZWZhdWx0O1xuXG4vLy8gYm9yZGVyIHJhZGl1cyBvZiB0aGUgc3dpdGNoIHBhZGRsZVxuLy8vIEB0eXBlIE51bWJlclxuJHN3aXRjaC1wYWRkbGUtcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cyAhZGVmYXVsdDtcblxuLy8vIHN3aXRjaCB0cmFuc2l0aW9uLlxuLy8vIEB0eXBlIE51bWJlclxuJHN3aXRjaC1wYWRkbGUtdHJhbnNpdGlvbjogYWxsIDAuMjVzIGVhc2Utb3V0ICFkZWZhdWx0O1xuXG4vLyBtYWtlIHRoZW0gdmFyaWFibGVzXG4vLyBhc2sgYWJvdXQgYWNjZXNzaWJpbGl0eSBvbiBsYWJlbFxuLy8gY2hhbmdlIGNsYXNzIG5hbWUgZm9yIHRleHRcblxuLy8vIEFkZHMgc3R5bGVzIGZvciBhIHN3aXRjaCBjb250YWluZXIuIEFwcGx5IHRoaXMgdG8gYSBjb250YWluZXIgY2xhc3MuXG5AbWl4aW4gc3dpdGNoLWNvbnRhaW5lciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbWFyZ2luLWJvdHRvbTogJHN3aXRjaC1tYXJnaW47XG4gIG91dGxpbmU6IDA7XG5cbiAgLy8gVGhlc2UgcHJvcGVydGllcyBjYXNjYWRlIGRvd24gdG8gdGhlIHN3aXRjaCB0ZXh0XG4gIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTQpO1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgY29sb3I6ICR3aGl0ZTtcblxuICB1c2VyLXNlbGVjdDogbm9uZTtcbn1cblxuLy8vIEFkZHMgc3R5bGVzIGZvciBhIHN3aXRjaCBpbnB1dC4gQXBwbHkgdGhpcyB0byBhbiBgPGlucHV0PmAgd2l0aGluIGEgc3dpdGNoLlxuQG1peGluIHN3aXRjaC1pbnB1dCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgb3BhY2l0eTogMDtcbn1cblxuLy8vIEFkZHMgc3R5bGVzIGZvciB0aGUgYmFja2dyb3VuZCBhbmQgcGFkZGxlIG9mIGEgc3dpdGNoLiBBcHBseSB0aGlzIHRvIGEgYDxsYWJlbD5gIHdpdGhpbiBhIHN3aXRjaC5cbkBtaXhpbiBzd2l0Y2gtcGFkZGxlIHtcbiAgJHN3aXRjaC13aWR0aDogJHN3aXRjaC1oZWlnaHQgKiAyO1xuICAkcGFkZGxlLWhlaWdodDogJHN3aXRjaC1oZWlnaHQgLSAoJHN3aXRjaC1wYWRkbGUtb2Zmc2V0ICogMik7XG4gICRwYWRkbGUtd2lkdGg6ICRzd2l0Y2gtaGVpZ2h0IC0gKCRzd2l0Y2gtcGFkZGxlLW9mZnNldCAqIDIpO1xuICAkcGFkZGxlLWFjdGl2ZS1vZmZlc3Q6ICRzd2l0Y2gtd2lkdGggLSAkcGFkZGxlLXdpZHRoIC0gJHN3aXRjaC1wYWRkbGUtb2Zmc2V0O1xuXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAkc3dpdGNoLXdpZHRoO1xuICBoZWlnaHQ6ICRzd2l0Y2gtaGVpZ2h0O1xuXG4gIGJvcmRlci1yYWRpdXM6ICRzd2l0Y2gtcmFkaXVzO1xuICBiYWNrZ3JvdW5kOiAkc3dpdGNoLWJhY2tncm91bmQ7XG4gIHRyYW5zaXRpb246ICRzd2l0Y2gtcGFkZGxlLXRyYW5zaXRpb247XG5cbiAgLy8gUmVzZXR0aW5nIHRoZXNlIDxsYWJlbD4gcHJlc2V0cyBzbyB0eXBlIHN0eWxlcyBjYXNjYWRlIGRvd25cbiAgZm9udC13ZWlnaHQ6IGluaGVyaXQ7XG4gIGNvbG9yOiBpbmhlcml0O1xuXG4gIGN1cnNvcjogcG9pbnRlcjtcblxuICAvLyBOZWVkZWQgdG8gb3ZlcnJpZGUgc3BlY2lmaWNpdHlcbiAgaW5wdXQgKyAmIHtcbiAgICBtYXJnaW46IDA7XG4gIH1cblxuICAvLyBUaGUgcGFkZGxlIGl0c2VsZlxuICAmOjphZnRlciB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogJHN3aXRjaC1wYWRkbGUtb2Zmc2V0O1xuICAgICN7JGdsb2JhbC1sZWZ0fTogJHN3aXRjaC1wYWRkbGUtb2Zmc2V0O1xuXG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6ICRwYWRkbGUtd2lkdGg7XG4gICAgaGVpZ2h0OiAkcGFkZGxlLWhlaWdodDtcblxuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gICAgYm9yZGVyLXJhZGl1czogJHN3aXRjaC1wYWRkbGUtcmFkaXVzO1xuICAgIGJhY2tncm91bmQ6ICRzd2l0Y2gtcGFkZGxlLWJhY2tncm91bmQ7XG4gICAgdHJhbnNpdGlvbjogJHN3aXRjaC1wYWRkbGUtdHJhbnNpdGlvbjtcbiAgICBjb250ZW50OiAnJztcbiAgfVxuXG4gIC8vIENoYW5nZSB0aGUgdmlzdWFsIHN0eWxlIHdoZW4gdGhlIHN3aXRjaCBpcyBhY3RpdmVcbiAgaW5wdXQ6Y2hlY2tlZCB+ICYge1xuICAgIGJhY2tncm91bmQ6ICRzd2l0Y2gtYmFja2dyb3VuZC1hY3RpdmU7XG5cbiAgICAmOjphZnRlciB7XG4gICAgICAjeyRnbG9iYWwtbGVmdH06ICRwYWRkbGUtYWN0aXZlLW9mZmVzdDtcbiAgICB9XG4gIH1cblxuICBpbnB1dDpmb2N1cyB+ICYge1xuICAgIEBpbmNsdWRlIGRpc2FibGUtbW91c2Utb3V0bGluZTtcbiAgfVxufVxuXG4vLy8gQWRkcyBiYXNlIHN0eWxlcyBmb3IgYWN0aXZlL2luYWN0aXZlIHRleHQgaW5zaWRlIGEgc3dpdGNoLiBBcHBseSB0aGlzIHRvIHRleHQgZWxlbWVudHMgaW5zaWRlIHRoZSBzd2l0Y2ggYDxsYWJlbD5gLlxuQG1peGluIHN3aXRjaC10ZXh0IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDUwJTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xufVxuXG4vLy8gQWRkcyBzdHlsZXMgZm9yIHRoZSBhY3RpdmUgc3RhdGUgdGV4dCB3aXRoaW4gYSBzd2l0Y2guXG5AbWl4aW4gc3dpdGNoLXRleHQtYWN0aXZlIHtcbiAgI3skZ2xvYmFsLWxlZnR9OiA4JTtcbiAgZGlzcGxheTogbm9uZTtcblxuICBpbnB1dDpjaGVja2VkICsgbGFiZWwgPiAmIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxufVxuXG4vLy8gQWRkcyBzdHlsZXMgZm9yIHRoZSBpbmFjdGl2ZSBzdGF0ZSB0ZXh0IHdpdGhpbiBhIHN3aXRjaC5cbkBtaXhpbiBzd2l0Y2gtdGV4dC1pbmFjdGl2ZSB7XG4gICN7JGdsb2JhbC1yaWdodH06IDE1JTtcblxuICBpbnB1dDpjaGVja2VkICsgbGFiZWwgPiAmIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG5cbi8vLyBDaGFuZ2VzIHRoZSBzaXplIG9mIGEgc3dpdGNoIGJ5IG1vZGlmeWluZyB0aGUgc2l6ZSBvZiB0aGUgYm9keSBhbmQgcGFkZGxlLiBBcHBseSB0aGlzIHRvIGEgc3dpdGNoIGNvbnRhaW5lci5cbi8vLyBAcGFyYW0ge051bWJlcn0gJGZvbnQtc2l6ZSBbMXJlbV0gLSBGb250IHNpemUgb2YgbGFiZWwgdGV4dCB3aXRoaW4gdGhlIHN3aXRjaC5cbi8vLyBAcGFyYW0ge051bWJlcn0gJHN3aXRjaC1oZWlnaHQgWzJyZW1dIC0gSGVpZ2h0IG9mIHRoZSBzd2l0Y2ggYm9keS5cbi8vLyBAcGFyYW0ge051bWJlcn0gJHBhZGRsZS1vZmZzZXQgWzAuMjVyZW1dIC0gU3BhY2luZyBiZXR3ZWVuIHRoZSBzd2l0Y2ggcGFkZGxlIGFuZCB0aGUgZWRnZSBvZiB0aGUgc3dpdGNoIGJvZHkuXG5AbWl4aW4gc3dpdGNoLXNpemUoXG4gICRmb250LXNpemU6IDFyZW0sXG4gICRzd2l0Y2gtaGVpZ2h0OiAycmVtLFxuICAkcGFkZGxlLW9mZnNldDogMC4yNXJlbVxuKSB7XG5cbiAgJHN3aXRjaC13aWR0aDogJHN3aXRjaC1oZWlnaHQgKiAyO1xuICAkcGFkZGxlLXdpZHRoOiAkc3dpdGNoLWhlaWdodCAtICgkcGFkZGxlLW9mZnNldCAqIDIpO1xuICAkcGFkZGxlLWhlaWdodDogJHN3aXRjaC1oZWlnaHQgLSAoJHBhZGRsZS1vZmZzZXQgKiAyKTtcbiAgJHBhZGRsZS1hY3RpdmUtb2ZmZXN0OiAkc3dpdGNoLXdpZHRoIC0gJHBhZGRsZS13aWR0aCAtICRwYWRkbGUtb2Zmc2V0O1xuXG4gIGhlaWdodDogJHN3aXRjaC1oZWlnaHQ7XG5cbiAgLnN3aXRjaC1wYWRkbGUge1xuICAgIHdpZHRoOiAkc3dpdGNoLXdpZHRoO1xuICAgIGhlaWdodDogJHN3aXRjaC1oZWlnaHQ7XG4gICAgZm9udC1zaXplOiAkZm9udC1zaXplO1xuICB9XG5cbiAgLnN3aXRjaC1wYWRkbGU6OmFmdGVyIHtcbiAgICB0b3A6ICRwYWRkbGUtb2Zmc2V0O1xuICAgICN7JGdsb2JhbC1sZWZ0fTogJHBhZGRsZS1vZmZzZXQ7XG4gICAgd2lkdGg6ICRwYWRkbGUtd2lkdGg7XG4gICAgaGVpZ2h0OiAkcGFkZGxlLWhlaWdodDtcbiAgfVxuXG4gIGlucHV0OmNoZWNrZWQgfiAuc3dpdGNoLXBhZGRsZTo6YWZ0ZXIge1xuICAgICN7JGdsb2JhbC1sZWZ0fTogJHBhZGRsZS1hY3RpdmUtb2ZmZXN0O1xuICB9XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLXN3aXRjaCB7XG4gIC8vIENvbnRhaW5lciBjbGFzc1xuICAuc3dpdGNoIHtcbiAgICBoZWlnaHQ6ICRzd2l0Y2gtaGVpZ2h0O1xuICAgIEBpbmNsdWRlIHN3aXRjaC1jb250YWluZXI7XG4gIH1cblxuICAvLyA8aW5wdXQ+IGVsZW1lbnRcbiAgLnN3aXRjaC1pbnB1dCB7XG4gICAgQGluY2x1ZGUgc3dpdGNoLWlucHV0O1xuICB9XG5cbiAgLy8gPGxhYmVsPiBlbGVtZW50XG4gIC5zd2l0Y2gtcGFkZGxlIHtcbiAgICBAaW5jbHVkZSBzd2l0Y2gtcGFkZGxlO1xuICB9XG5cbiAgLy8gQmFzZSBsYWJlbCB0ZXh0IHN0eWxlc1xuICAlc3dpdGNoLXRleHQge1xuICAgIEBpbmNsdWRlIHN3aXRjaC10ZXh0O1xuICB9XG5cbiAgLy8gQWN0aXZlIGxhYmVsIHRleHQgc3R5bGVzXG4gIC5zd2l0Y2gtYWN0aXZlIHtcbiAgICBAZXh0ZW5kICVzd2l0Y2gtdGV4dDtcbiAgICBAaW5jbHVkZSBzd2l0Y2gtdGV4dC1hY3RpdmU7XG4gIH1cblxuICAvLyBJbmFjdGl2ZSBsYWJlbCB0ZXh0IHN0eWxlc1xuICAuc3dpdGNoLWluYWN0aXZlIHtcbiAgICBAZXh0ZW5kICVzd2l0Y2gtdGV4dDtcbiAgICBAaW5jbHVkZSBzd2l0Y2gtdGV4dC1pbmFjdGl2ZTtcbiAgfVxuXG4gIC8vIFN3aXRjaCBzaXplc1xuICAuc3dpdGNoLnRpbnkge1xuICAgIEBpbmNsdWRlIHN3aXRjaC1zaXplKHJlbS1jYWxjKDEwKSwgJHN3aXRjaC1oZWlnaHQtdGlueSwgJHN3aXRjaC1wYWRkbGUtb2Zmc2V0KTtcbiAgfVxuXG4gIC5zd2l0Y2guc21hbGwge1xuICAgIEBpbmNsdWRlIHN3aXRjaC1zaXplKHJlbS1jYWxjKDEyKSwgJHN3aXRjaC1oZWlnaHQtc21hbGwsICRzd2l0Y2gtcGFkZGxlLW9mZnNldCk7XG4gIH1cblxuICAuc3dpdGNoLmxhcmdlIHtcbiAgICBAaW5jbHVkZSBzd2l0Y2gtc2l6ZShyZW0tY2FsYygxNiksICRzd2l0Y2gtaGVpZ2h0LWxhcmdlLCAkc3dpdGNoLXBhZGRsZS1vZmZzZXQpO1xuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8gc2Fzcy1saW50OmRpc2FibGUgZm9yY2UtZWxlbWVudC1uZXN0aW5nLCBuby1xdWFsaWZ5aW5nLWVsZW1lbnRzXG5cbi8vLy9cbi8vLyBAZ3JvdXAgdGFibGVcbi8vLy9cblxuLy8vIERlZmF1bHQgY29sb3IgZm9yIHRhYmxlIGJhY2tncm91bmQuXG4vLy8gQHR5cGUgQ29sb3JcbiR0YWJsZS1iYWNrZ3JvdW5kOiAkd2hpdGUgICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBzY2FsZSBmb3IgZGFya2VuaW5nIHRoZSBzdHJpcGVkIHRhYmxlIHJvd3MgYW5kIHRoZSB0YWJsZSBib3JkZXIuXG4vLy8gQHR5cGUgTnVtYmVyXG4kdGFibGUtY29sb3Itc2NhbGU6IDUlICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBzdHlsZSBmb3IgdGFibGUgYm9yZGVyLlxuLy8vIEB0eXBlIExpc3RcbiR0YWJsZS1ib3JkZXI6IDFweCBzb2xpZCBzbWFydC1zY2FsZSgkdGFibGUtYmFja2dyb3VuZCwgJHRhYmxlLWNvbG9yLXNjYWxlKSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgcGFkZGluZyBmb3IgdGFibGUuXG4vLy8gQHR5cGUgTnVtYmVyXG4kdGFibGUtcGFkZGluZzogcmVtLWNhbGMoOCAxMCAxMCkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHNjYWxlIGZvciBkYXJrZW5pbmcgdGhlIHRhYmxlIHJvd3Mgb24gaG92ZXIuXG4vLy8gQHR5cGUgTnVtYmVyXG4kdGFibGUtaG92ZXItc2NhbGU6IDIlICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBjb2xvciBvZiBzdGFuZGFyZCByb3dzIG9uIGhvdmVyLlxuLy8vIEB0eXBlIExpc3RcbiR0YWJsZS1yb3ctaG92ZXI6IGRhcmtlbigkdGFibGUtYmFja2dyb3VuZCwgJHRhYmxlLWhvdmVyLXNjYWxlKSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgY29sb3Igb2Ygc3RyaXBlZCByb3dzIG9uIGhvdmVyLlxuLy8vIEB0eXBlIExpc3RcbiR0YWJsZS1yb3ctc3RyaXBlLWhvdmVyOiBkYXJrZW4oJHRhYmxlLWJhY2tncm91bmQsICR0YWJsZS1jb2xvci1zY2FsZSArICR0YWJsZS1ob3Zlci1zY2FsZSkgIWRlZmF1bHQ7XG5cbi8vLyBJZiBgdHJ1ZWAsIHRhYmxlcyBhcmUgc3RyaXBlZCBieSBkZWZhdWx0IGFuZCBhbiAudW5zdHJpcGVkIGNsYXNzIGlzIGNyZWF0ZWQuIElmIGBmYWxzZWAsIGEgLnN0cmlwZWQgY2xhc3MgaXMgY3JlYXRlZC5cbi8vLyBAdHlwZSBCb29sZWFuXG4kdGFibGUtaXMtc3RyaXBlZDogdHJ1ZSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgYmFja2dyb3VuZCBjb2xvciBmb3Igc3RyaXBlZCByb3dzLlxuLy8vIEB0eXBlIENvbG9yXG4kdGFibGUtc3RyaXBlZC1iYWNrZ3JvdW5kOiBzbWFydC1zY2FsZSgkdGFibGUtYmFja2dyb3VuZCwgJHRhYmxlLWNvbG9yLXNjYWxlKSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgdmFsdWUgZm9yIHNob3dpbmcgdGhlIHN0cmlwZSBvbiByb3dzIG9mIHRoZSB0YWJsZXMsIGV4Y2x1ZGluZyB0aGUgaGVhZGVyIGFuZCBmb290ZXIuIElmIGV2ZW4sIHRoZSBldmVuIHJvd3Mgd2lsbCBoYXZlIGEgYmFja2dyb3VuZCBjb2xvci4gSWYgb2RkLCB0aGUgb2RkIHJvd3Mgd2lsbCBoYXZlIGEgYmFja2dyb3VuZCBjb2xvci4gSWYgZW1wdHksIG9yIGFueSBvdGhlciB2YWx1ZSwgdGhlIHRhYmxlIHJvd3Mgd2lsbCBoYXZlIG5vIHN0cmlwaW5nLlxuLy8vIEB0eXBlIEtleXdvcmRcbiR0YWJsZS1zdHJpcGU6IGV2ZW4gIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGNvbG9yIGZvciBoZWFkZXIgYmFja2dyb3VuZC5cbi8vLyBAdHlwZSBDb2xvclxuJHRhYmxlLWhlYWQtYmFja2dyb3VuZDogc21hcnQtc2NhbGUoJHRhYmxlLWJhY2tncm91bmQsICR0YWJsZS1jb2xvci1zY2FsZSAvIDIpICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBjb2xvciBvZiBoZWFkZXIgcm93cyBvbiBob3Zlci5cbi8vLyBAdHlwZSBMaXN0XG4kdGFibGUtaGVhZC1yb3ctaG92ZXI6IGRhcmtlbigkdGFibGUtaGVhZC1iYWNrZ3JvdW5kLCAkdGFibGUtaG92ZXItc2NhbGUpICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBjb2xvciBmb3IgZm9vdGVyIGJhY2tncm91bmQuXG4vLy8gQHR5cGUgQ29sb3JcbiR0YWJsZS1mb290LWJhY2tncm91bmQ6IHNtYXJ0LXNjYWxlKCR0YWJsZS1iYWNrZ3JvdW5kLCAkdGFibGUtY29sb3Itc2NhbGUpICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBjb2xvciBvZiBmb290ZXIgcm93cyBvbiBob3Zlci5cbi8vLyBAdHlwZSBMaXN0XG4kdGFibGUtZm9vdC1yb3ctaG92ZXI6IGRhcmtlbigkdGFibGUtZm9vdC1iYWNrZ3JvdW5kLCAkdGFibGUtaG92ZXItc2NhbGUpICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBmb250IGNvbG9yIGZvciBoZWFkZXIuXG4vLy8gQHR5cGUgQ29sb3JcbiR0YWJsZS1oZWFkLWZvbnQtY29sb3I6ICRib2R5LWZvbnQtY29sb3IgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGZvbnQgY29sb3IgZm9yIGZvb3Rlci5cbi8vLyBAdHlwZSBDb2xvclxuJHRhYmxlLWZvb3QtZm9udC1jb2xvcjogJGJvZHktZm9udC1jb2xvciAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgdmFsdWUgZm9yIHNob3dpbmcgdGhlIGhlYWRlciB3aGVuIHVzaW5nIHN0YWNrZWQgdGFibGVzLlxuLy8vIEB0eXBlIEJvb2xlYW5cbiRzaG93LWhlYWRlci1mb3Itc3RhY2tlZDogZmFsc2UgIWRlZmF1bHQ7XG5cbi8vLyBCcmVha3BvaW50IGF0IHdoaWNoIHN0YWNrZWQgdGFibGUgc3dpdGNoZXMgZnJvbSBtb2JpbGUgdG8gZGVza3RvcCB2aWV3LlxuLy8vIEB0eXBlIEJyZWFrcG9pbnRcbiR0YWJsZS1zdGFjay1icmVha3BvaW50OiBtZWRpdW0gIWRlZmF1bHQ7XG5cbkBtaXhpbiAtemYtdGFibGUtc3RyaXBlKCRzdHJpcGU6ICR0YWJsZS1zdHJpcGUpIHtcbiAgdHIge1xuICAgIC8vIElmIHN0cmlwZSBpcyBzZXQgdG8gZXZlbiwgZGFya2VuIHRoZSBldmVuIHJvd3MuXG4gICAgQGlmICRzdHJpcGUgPT0gZXZlbiB7XG4gICAgICAmOm50aC1jaGlsZChldmVuKSB7XG4gICAgICAgIGJvcmRlci1ib3R0b206IDA7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR0YWJsZS1zdHJpcGVkLWJhY2tncm91bmQ7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gSWYgc3RyaXBlIGlzIHNldCB0byBvZGQsIGRhcmtlbiB0aGUgb2RkIHJvd3MuXG4gICAgQGVsc2UgaWYgJHN0cmlwZSA9PSBvZGQge1xuICAgICAgJjpudGgtY2hpbGQob2RkKSB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR0YWJsZS1zdHJpcGVkLWJhY2tncm91bmQ7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiAtemYtdGFibGUtdW5zdHJpcGUoKSB7XG4gIHRyIHtcbiAgICBib3JkZXItYm90dG9tOiAwO1xuICAgIGJvcmRlci1ib3R0b206ICR0YWJsZS1ib3JkZXI7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHRhYmxlLWJhY2tncm91bmQ7XG4gIH1cbn1cblxuQG1peGluIC16Zi10YWJsZS1jaGlsZHJlbi1zdHlsZXMoJHN0cmlwZTogJHRhYmxlLXN0cmlwZSwgJGlzLXN0cmlwZWQ6ICR0YWJsZS1pcy1zdHJpcGVkKSB7XG4gIHRoZWFkLFxuICB0Ym9keSxcbiAgdGZvb3Qge1xuICAgIGJvcmRlcjogJHRhYmxlLWJvcmRlcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGFibGUtYmFja2dyb3VuZDtcbiAgfVxuXG4gIC8vIENhcHRpb25cbiAgY2FwdGlvbiB7XG4gICAgcGFkZGluZzogJHRhYmxlLXBhZGRpbmc7XG4gICAgZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LWJvbGQ7XG4gIH1cblxuICAvLyBUYWJsZSBoZWFkXG4gIHRoZWFkIHtcbiAgICBiYWNrZ3JvdW5kOiAkdGFibGUtaGVhZC1iYWNrZ3JvdW5kO1xuICAgIGNvbG9yOiAkdGFibGUtaGVhZC1mb250LWNvbG9yO1xuICB9XG5cbiAgLy8gVGFibGUgZm9vdFxuICB0Zm9vdCB7XG4gICAgYmFja2dyb3VuZDogJHRhYmxlLWZvb3QtYmFja2dyb3VuZDtcbiAgICBjb2xvcjogJHRhYmxlLWZvb3QtZm9udC1jb2xvcjtcbiAgfVxuXG4gIC8vIFRhYmxlIGhlYWQgYW5kIGZvb3RcbiAgdGhlYWQsXG4gIHRmb290IHtcbiAgICAvLyBSb3dzIHdpdGhpbiBoZWFkIGFuZCBmb290XG4gICAgdHIge1xuICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgfVxuXG4gICAgLy8gQ2VsbHMgd2l0aGluIGhlYWQgYW5kIGZvb3RcbiAgICB0aCxcbiAgICB0ZCB7XG4gICAgICBwYWRkaW5nOiAkdGFibGUtcGFkZGluZztcbiAgICAgIGZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ib2xkO1xuICAgICAgdGV4dC1hbGlnbjogI3skZ2xvYmFsLWxlZnR9O1xuICAgIH1cbiAgfVxuXG4gIC8vIFRhYmxlIHJvd3NcbiAgdGJvZHkge1xuICAgIHRoLFxuICAgIHRkIHtcbiAgICAgIHBhZGRpbmc6ICR0YWJsZS1wYWRkaW5nO1xuICAgIH1cbiAgfVxuXG4gIC8vIElmIHRhYmxlcyBhcmUgc3RyaXBlZFxuICBAaWYgJGlzLXN0cmlwZWQgPT0gdHJ1ZSB7XG4gICAgdGJvZHkge1xuICAgICAgQGluY2x1ZGUgLXpmLXRhYmxlLXN0cmlwZSgkc3RyaXBlKTtcbiAgICB9XG5cbiAgICAmLnVuc3RyaXBlZCB7XG4gICAgICB0Ym9keSB7XG4gICAgICAgIEBpbmNsdWRlIC16Zi10YWJsZS11bnN0cmlwZSgpO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGFibGUtYmFja2dyb3VuZDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyBJZiB0YWJsZXMgYXJlIG5vdCBzdHJpcGVkXG4gIEBlbHNlIGlmICRpcy1zdHJpcGVkID09IGZhbHNlIHtcbiAgICB0Ym9keSB7XG4gICAgICBAaW5jbHVkZSAtemYtdGFibGUtdW5zdHJpcGUoKTtcbiAgICB9XG5cbiAgICAmLnN0cmlwZWQge1xuICAgICAgdGJvZHkge1xuICAgICAgICBAaW5jbHVkZSAtemYtdGFibGUtc3RyaXBlKCRzdHJpcGUpO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vLy8gQWRkcyB0aGUgZ2VuZXJhbCBzdHlsZXMgZm9yIHRhYmxlcy5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRzdHJpcGUgWyR0YWJsZS1zdHJpcGVdIC0gVXNlcyBrZXl3b3JkcyBldmVuLCBvZGQsIG9yIG5vbmUgdG8gZGFya2VuIHJvd3Mgb2YgdGhlIHRhYmxlLiBUaGUgZGVmYXVsdCB2YWx1ZSBpcyBldmVuLlxuQG1peGluIHRhYmxlKFxuICAkc3RyaXBlOiAkdGFibGUtc3RyaXBlLFxuICAkbmVzdDogZmFsc2Vcbikge1xuICBib3JkZXItY29sbGFwc2U6IGNvbGxhcHNlO1xuICB3aWR0aDogMTAwJTtcbiAgbWFyZ2luLWJvdHRvbTogJGdsb2JhbC1tYXJnaW47XG4gIGJvcmRlci1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuXG4gIEBpZiAkbmVzdCB7XG4gICAgQGluY2x1ZGUgLXpmLXRhYmxlLWNoaWxkcmVuLXN0eWxlcygkc3RyaXBlKTtcbiAgfVxuICBAZWxzZSB7XG4gICAgQGF0LXJvb3Qge1xuICAgICAgQGluY2x1ZGUgLXpmLXRhYmxlLWNoaWxkcmVuLXN0eWxlcygkc3RyaXBlKTtcbiAgICB9XG4gIH1cbn1cblxuLy8vIEFkZHMgdGhlIGFiaWxpdHkgdG8gaG9yaXpvbnRhbGx5IHNjcm9sbCB0aGUgdGFibGUgd2hlbiB0aGUgY29udGVudCBvdmVyZmxvd3MgaG9yaXpvbnRhbGx5LlxuQG1peGluIHRhYmxlLXNjcm9sbCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTtcbiAgb3ZlcmZsb3cteDogYXV0bztcbn1cblxuLy8vIFNsaWdodGx5IGRhcmtlbnMgdGhlIHRhYmxlIHJvd3Mgb24gaG92ZXIuXG5AbWl4aW4gdGFibGUtaG92ZXIge1xuICB0aGVhZCB0ciB7XG4gICAgLy9EYXJrZW5zIHRoZSB0YWJsZSBoZWFkZXIgcm93cyBvbiBob3Zlci5cbiAgICAmOmhvdmVyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICR0YWJsZS1oZWFkLXJvdy1ob3ZlcjtcbiAgICB9XG4gIH1cblxuICB0Zm9vdCB0ciB7XG4gICAgLy9EYXJrZW5zIHRoZSB0YWJsZSBmb290ZXIgcm93cyBvbiBob3Zlci5cbiAgICAmOmhvdmVyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICR0YWJsZS1mb290LXJvdy1ob3ZlcjtcbiAgICB9XG4gIH1cblxuICB0Ym9keSB0ciB7XG4gICAgLy9EYXJrZW5zIHRoZSBub24tc3RyaXBlZCB0YWJsZSByb3dzIG9uIGhvdmVyLlxuICAgICY6aG92ZXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHRhYmxlLXJvdy1ob3ZlcjtcbiAgICB9XG4gIH1cblxuICBAaWYgJHRhYmxlLWlzLXN0cmlwZWQgPT0gdHJ1ZSB7XG4gICAgLy8gRGFya2VucyB0aGUgZXZlbiBzdHJpcGVkIHRhYmxlIHJvd3MuXG4gICAgQGlmKCR0YWJsZS1zdHJpcGUgPT0gZXZlbikge1xuICAgICAgJjpub3QoLnVuc3RyaXBlZCkgdHI6bnRoLW9mLXR5cGUoZXZlbik6aG92ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGFibGUtcm93LXN0cmlwZS1ob3ZlcjtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBEYXJrZW5zIHRoZSBvZGQgc3RyaXBlZCB0YWJsZSByb3dzLlxuICAgIEBlbHNlaWYoJHRhYmxlLXN0cmlwZSA9PSBvZGQpIHtcbiAgICAgICY6bm90KC51bnN0cmlwZWQpIHRyOm50aC1vZi10eXBlKG9kZCk6aG92ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGFibGUtcm93LXN0cmlwZS1ob3ZlcjtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBAZWxzZSBpZiAkdGFibGUtaXMtc3RyaXBlZCA9PSBmYWxzZSB7XG4gICAgLy8gRGFya2VucyB0aGUgZXZlbiBzdHJpcGVkIHRhYmxlIHJvd3MuXG4gICAgQGlmKCR0YWJsZS1zdHJpcGUgPT0gZXZlbikge1xuICAgICAgJi5zdHJpcGVkIHRyOm50aC1vZi10eXBlKGV2ZW4pOmhvdmVyIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHRhYmxlLXJvdy1zdHJpcGUtaG92ZXI7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gRGFya2VucyB0aGUgb2RkIHN0cmlwZWQgdGFibGUgcm93cy5cbiAgICBAZWxzZWlmKCR0YWJsZS1zdHJpcGUgPT0gb2RkKSB7XG4gICAgICAmLnN0cmlwZWQgdHI6bnRoLW9mLXR5cGUob2RkKTpob3ZlciB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR0YWJsZS1yb3ctc3RyaXBlLWhvdmVyO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vLy8gQWRkcyBzdHlsZXMgZm9yIGEgc3RhY2tlZCB0YWJsZS4gVXNlZnVsIGZvciBzbWFsbC1zY3JlZW4gbGF5b3V0cy5cbi8vLyBAcGFyYW0ge0Jvb2xlYW59ICRoZWFkZXIgWyRzaG93LWhlYWRlci1mb3Itc3RhY2tlZF0gLSBTaG93IHRoZSBmaXJzdCB0aCBvZiBoZWFkZXIgd2hlbiBzdGFja2VkLlxuQG1peGluIHRhYmxlLXN0YWNrKCRoZWFkZXI6ICRzaG93LWhlYWRlci1mb3Itc3RhY2tlZCkge1xuICBAaWYgJGhlYWRlciB7XG4gICAgdGhlYWQge1xuICAgICAgdGgge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgQGVsc2Uge1xuICAgIHRoZWFkIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuICB9XG5cbiAgdGZvb3Qge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cblxuICB0cixcbiAgdGgsXG4gIHRkIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxuXG4gIHRkIHtcbiAgICBib3JkZXItdG9wOiAwO1xuICB9XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLXRhYmxlKCRuZXN0OiBmYWxzZSkge1xuICB0YWJsZSB7XG4gICAgQGluY2x1ZGUgdGFibGUoJG5lc3Q6ICRuZXN0KTtcbiAgfVxuXG4gIHRhYmxlLnN0YWNrIHtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KCR0YWJsZS1zdGFjay1icmVha3BvaW50IGRvd24pIHtcbiAgICAgIEBpbmNsdWRlIHRhYmxlLXN0YWNrO1xuICAgIH1cbiAgfVxuXG4gIHRhYmxlLnNjcm9sbCB7XG4gICAgQGluY2x1ZGUgdGFibGUtc2Nyb2xsO1xuICB9XG5cbiAgdGFibGUuaG92ZXIge1xuICAgIEBpbmNsdWRlIHRhYmxlLWhvdmVyO1xuICB9XG5cbiAgLnRhYmxlLXNjcm9sbCB7XG4gICAgb3ZlcmZsb3cteDogYXV0bztcblxuICAgIHRhYmxlIHtcbiAgICAgIHdpZHRoOiBhdXRvO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbkBpbXBvcnQgJ21hdGgnO1xuXG4kY29udHJhc3Qtd2FybmluZ3M6IHRydWUgIWRlZmF1bHQ7XG5cbi8vLy9cbi8vLyBAZ3JvdXAgZnVuY3Rpb25zXG4vLy8vXG5cbi8vLyBDaGVja3MgdGhlIGx1bWluYW5jZSBvZiBgJGNvbG9yYC5cbi8vL1xuLy8vIEBwYXJhbSB7Q29sb3J9ICRjb2xvciAtIENvbG9yIHRvIGNoZWNrIHRoZSBsdW1pbmFuY2Ugb2YuXG4vLy9cbi8vLyBAcmV0dXJucyB7TnVtYmVyfSBUaGUgbHVtaW5hbmNlIG9mIGAkY29sb3JgLlxuQGZ1bmN0aW9uIGNvbG9yLWx1bWluYW5jZSgkY29sb3IpIHtcbiAgLy8gQWRhcHRlZCBmcm9tOiBodHRwczovL2dpdGh1Yi5jb20vTGVhVmVyb3UvY29udHJhc3QtcmF0aW8vYmxvYi9naC1wYWdlcy9jb2xvci5qc1xuICAvLyBGb3JtdWxhOiBodHRwOi8vd3d3LnczLm9yZy9UUi8yMDA4L1JFQy1XQ0FHMjAtMjAwODEyMTEvI3JlbGF0aXZlbHVtaW5hbmNlZGVmXG4gICRyZ2JhOiByZWQoJGNvbG9yKSwgZ3JlZW4oJGNvbG9yKSwgYmx1ZSgkY29sb3IpO1xuICAkcmdiYTI6ICgpO1xuXG4gIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggMyB7XG4gICAgJHJnYjogbnRoKCRyZ2JhLCAkaSk7XG4gICAgJHJnYjogJHJnYiAvIDI1NTtcblxuICAgICRyZ2I6IGlmKCRyZ2IgPCAwLjAzOTI4LCAkcmdiIC8gMTIuOTIsIHBvdygoJHJnYiArIDAuMDU1KSAvIDEuMDU1LCAyLjQpKTtcblxuICAgICRyZ2JhMjogYXBwZW5kKCRyZ2JhMiwgJHJnYik7XG4gIH1cblxuICBAcmV0dXJuIDAuMjEyNiAqIG50aCgkcmdiYTIsIDEpICsgMC43MTUyICogbnRoKCRyZ2JhMiwgMikgKyAwLjA3MjIgKiBudGgoJHJnYmEyLCAzKTtcbn1cblxuLy8vIENoZWNrcyB0aGUgY29udHJhc3QgcmF0aW8gb2YgdHdvIGNvbG9ycy5cbi8vL1xuLy8vIEBwYXJhbSB7Q29sb3J9ICRjb2xvcjEgLSBGaXJzdCBjb2xvciB0byBjb21wYXJlLlxuLy8vIEBwYXJhbSB7Q29sb3J9ICRjb2xvcjIgLSBTZWNvbmQgY29sb3IgdG8gY29tcGFyZS5cbi8vL1xuLy8vIEByZXR1cm5zIHtOdW1iZXJ9IFRoZSBjb250cmFzdCByYXRpbyBvZiB0aGUgY29tcGFyZWQgY29sb3JzLlxuQGZ1bmN0aW9uIGNvbG9yLWNvbnRyYXN0KCRjb2xvcjEsICRjb2xvcjIpIHtcbiAgLy8gQWRhcHRlZCBmcm9tOiBodHRwczovL2dpdGh1Yi5jb20vTGVhVmVyb3UvY29udHJhc3QtcmF0aW8vYmxvYi9naC1wYWdlcy9jb2xvci5qc1xuICAvLyBGb3JtdWxhOiBodHRwOi8vd3d3LnczLm9yZy9UUi8yMDA4L1JFQy1XQ0FHMjAtMjAwODEyMTEvI2NvbnRyYXN0LXJhdGlvZGVmXG4gICRsdW1pbmFuY2UxOiBjb2xvci1sdW1pbmFuY2UoJGNvbG9yMSkgKyAwLjA1O1xuICAkbHVtaW5hbmNlMjogY29sb3ItbHVtaW5hbmNlKCRjb2xvcjIpICsgMC4wNTtcbiAgJHJhdGlvOiAkbHVtaW5hbmNlMSAvICRsdW1pbmFuY2UyO1xuXG4gIEBpZiAkbHVtaW5hbmNlMiA+ICRsdW1pbmFuY2UxIHtcbiAgICAkcmF0aW86IDEgLyAkcmF0aW87XG4gIH1cblxuICAkcmF0aW86IHJvdW5kKCRyYXRpbyAqIDEwKSAvIDEwO1xuXG4gIEByZXR1cm4gJHJhdGlvO1xufVxuXG4vLy8gQ2hlY2tzIHRoZSBsdW1pbmFuY2Ugb2YgYCRiYXNlYCwgYW5kIHJldHVybnMgdGhlIGNvbG9yIGZyb20gYCRjb2xvcnNgIChsaXN0IG9mIGNvbG9ycykgdGhhdCBoYXMgdGhlIG1vc3QgY29udHJhc3QuXG4vLy9cbi8vLyBAcGFyYW0ge0NvbG9yfSAkYmFzZSAtIENvbG9yIHRvIGNoZWNrIGx1bWluYW5jZS5cbi8vLyBAcGFyYW0ge0xpc3R9ICRjb2xvcnMgWygkd2hpdGUsICRibGFjayldIC0gQ29sb3JzIHRvIGNvbXBhcmUuXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICR0b2xlcmFuY2UgWyRnbG9iYWwtY29sb3ItcGljay1jb250cmFzdC10b2xlcmFuY2VdIC0gQ29udHJhc3QgdG9sZXJhbmNlLlxuLy8vXG4vLy8gQHJldHVybnMge0NvbG9yfSB0aGUgY29sb3IgZnJvbSBgJGNvbG9yc2AgKGxpc3Qgb2YgY29sb3JzKSB0aGF0IGhhcyB0aGUgbW9zdCBjb250cmFzdC5cbkBmdW5jdGlvbiBjb2xvci1waWNrLWNvbnRyYXN0KCRiYXNlLCAkY29sb3JzOiAoJHdoaXRlLCAkYmxhY2spLCAkdG9sZXJhbmNlOiAkZ2xvYmFsLWNvbG9yLXBpY2stY29udHJhc3QtdG9sZXJhbmNlKSB7XG4gICRjb250cmFzdDogY29sb3ItY29udHJhc3QoJGJhc2UsIG50aCgkY29sb3JzLCAxKSk7XG4gICRiZXN0OiBudGgoJGNvbG9ycywgMSk7XG5cbiAgQGZvciAkaSBmcm9tIDIgdGhyb3VnaCBsZW5ndGgoJGNvbG9ycykge1xuICAgICRjdXJyZW50LWNvbnRyYXN0OiBjb2xvci1jb250cmFzdCgkYmFzZSwgbnRoKCRjb2xvcnMsICRpKSk7XG4gICAgQGlmICgkY3VycmVudC1jb250cmFzdCAtICRjb250cmFzdCA+ICR0b2xlcmFuY2UpIHtcbiAgICAgICRjb250cmFzdDogY29sb3ItY29udHJhc3QoJGJhc2UsIG50aCgkY29sb3JzLCAkaSkpO1xuICAgICAgJGJlc3Q6IG50aCgkY29sb3JzLCAkaSk7XG4gICAgfVxuICB9XG5cbiAgQGlmICgkY29udHJhc3Qtd2FybmluZ3MgYW5kICRjb250cmFzdCA8IDMpIHtcbiAgICBAd2FybiBcIkNvbnRyYXN0IHJhdGlvIG9mICN7JGJlc3R9IG9uICN7JGJhc2V9IGlzIHByZXR0eSBiYWQsIGp1c3QgI3skY29udHJhc3R9XCI7XG4gIH1cblxuICBAcmV0dXJuICRiZXN0O1xufVxuXG4vLy8gU2NhbGVzIGEgY29sb3IgdG8gYmUgZGFya2VyIGlmIGl0J3MgbGlnaHQsIG9yIGxpZ2h0ZXIgaWYgaXQncyBkYXJrLiBVc2UgdGhpcyBmdW5jdGlvbiB0byB0aW50IGEgY29sb3IgYXBwcm9wcmlhdGUgdG8gaXRzIGxpZ2h0bmVzcy5cbi8vL1xuLy8vIEBwYXJhbSB7Q29sb3J9ICRjb2xvciAtIENvbG9yIHRvIHNjYWxlLlxuLy8vIEBwYXJhbSB7UGVyY2VudGFnZX0gJHNjYWxlIFs1JV0gLSBBbW91bnQgdG8gc2NhbGUgdXAgb3IgZG93bi5cbi8vLyBAcGFyYW0ge1BlcmNlbnRhZ2V9ICR0aHJlc2hvbGQgWzQwJV0gLSBUaHJlc2hvbGQgb2YgbGlnaHRuZXNzIHRvIGNoZWNrIGFnYWluc3QuXG4vLy9cbi8vLyBAcmV0dXJucyB7Q29sb3J9IEEgc2NhbGVkIGNvbG9yLlxuQGZ1bmN0aW9uIHNtYXJ0LXNjYWxlKCRjb2xvciwgJHNjYWxlOiA1JSwgJHRocmVzaG9sZDogNDAlKSB7XG4gIEBpZiBsaWdodG5lc3MoJGNvbG9yKSA+ICR0aHJlc2hvbGQge1xuICAgICRzY2FsZTogLSRzY2FsZTtcbiAgfVxuICBAcmV0dXJuIHNjYWxlLWNvbG9yKCRjb2xvciwgJGxpZ2h0bmVzczogJHNjYWxlKTtcbn1cblxuLy8vIEdldCBjb2xvciBmcm9tIGZvdW5kYXRpb24tcGFsZXR0ZVxuLy8vXG4vLy8gQHBhcmFtIHtrZXl9IGNvbG9yIGtleSBmcm9tIGZvdW5kYXRpb24tcGFsZXR0ZVxuLy8vXG4vLy8gQHJldHVybnMge0NvbG9yfSBjb2xvciBmcm9tIGZvdW5kYXRpb24tcGFsZXR0ZVxuQGZ1bmN0aW9uIGdldC1jb2xvcigka2V5KSB7XG4gIEBpZiBtYXAtaGFzLWtleSgkZm91bmRhdGlvbi1wYWxldHRlLCAka2V5KSB7XG4gICAgQHJldHVybiBtYXAtZ2V0KCRmb3VuZGF0aW9uLXBhbGV0dGUsICRrZXkpO1xuICB9XG4gIEBlbHNlIHtcbiAgICBAZXJyb3IgJ2dpdmVuICRrZXkgaXMgbm90IGF2YWlsYWJsZSBpbiAkZm91bmRhdGlvbi1wYWxldHRlJztcbiAgfVxufVxuXG4vLy8gVHJhbnNmZXJzIHRoZSBjb2xvcnMgaW4gdGhlIGAkZm91bmRhdGlvbi1wYWxldHRlYG1hcCBpbnRvIHZhcmlhYmxlcywgc3VjaCBhcyBgJHByaW1hcnktY29sb3JgIGFuZCBgJHNlY29uZGFyeS1jb2xvcmAuIENhbGwgdGhpcyBtaXhpbiBiZWxvdyB0aGUgR2xvYmFsIHNlY3Rpb24gb2YgeW91ciBzZXR0aW5ncyBmaWxlIHRvIHByb3Blcmx5IG1pZ3JhdGUgeW91ciBjb2RlYmFzZS5cbkBtaXhpbiBhZGQtZm91bmRhdGlvbi1jb2xvcnMoKSB7XG4gIEBpZiBtYXAtaGFzLWtleSgkZm91bmRhdGlvbi1wYWxldHRlLCBwcmltYXJ5KSB7XG4gICAgJHByaW1hcnktY29sb3I6IG1hcC1nZXQoJGZvdW5kYXRpb24tcGFsZXR0ZSwgcHJpbWFyeSkgIWdsb2JhbDtcbiAgfVxuICBAaWYgbWFwLWhhcy1rZXkoJGZvdW5kYXRpb24tcGFsZXR0ZSwgc2Vjb25kYXJ5KSB7XG4gICAgJHNlY29uZGFyeS1jb2xvcjogbWFwLWdldCgkZm91bmRhdGlvbi1wYWxldHRlLCBzZWNvbmRhcnkpICFnbG9iYWw7XG4gIH1cbiAgQGlmIG1hcC1oYXMta2V5KCRmb3VuZGF0aW9uLXBhbGV0dGUsIHN1Y2Nlc3MpIHtcbiAgICAkc3VjY2Vzcy1jb2xvcjogbWFwLWdldCgkZm91bmRhdGlvbi1wYWxldHRlLCBzdWNjZXNzKSAhZ2xvYmFsO1xuICB9XG4gIEBpZiBtYXAtaGFzLWtleSgkZm91bmRhdGlvbi1wYWxldHRlLCB3YXJuaW5nKSB7XG4gICAgJHdhcm5pbmctY29sb3I6IG1hcC1nZXQoJGZvdW5kYXRpb24tcGFsZXR0ZSwgd2FybmluZykgIWdsb2JhbDtcbiAgfVxuICBAaWYgbWFwLWhhcy1rZXkoJGZvdW5kYXRpb24tcGFsZXR0ZSwgYWxlcnQpIHtcbiAgICAkYWxlcnQtY29sb3I6IG1hcC1nZXQoJGZvdW5kYXRpb24tcGFsZXR0ZSwgYWxlcnQpICFnbG9iYWw7XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIHRhYnNcbi8vLy9cblxuLy8vIERlZmF1bHQgbWFyZ2luIG9mIHRoZSB0YWIgYmFyLlxuLy8vIEB0eXBlIE51bWJlclxuJHRhYi1tYXJnaW46IDAgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGJhY2tncm91bmQgY29sb3Igb2YgYSB0YWIgYmFyLlxuLy8vIEB0eXBlIENvbG9yXG4kdGFiLWJhY2tncm91bmQ6ICR3aGl0ZSAhZGVmYXVsdDtcblxuLy8vIEZvbnQgY29sb3Igb2YgdGFiIGl0ZW0uXG4vLy8gQHR5cGUgQ29sb3JcbiR0YWItY29sb3I6ICRwcmltYXJ5LWNvbG9yICFkZWZhdWx0O1xuXG4vLy8gQWN0aXZlIGJhY2tncm91bmQgY29sb3Igb2YgYSB0YWIgYmFyLlxuLy8vIEB0eXBlIENvbG9yXG4kdGFiLWJhY2tncm91bmQtYWN0aXZlOiAkbGlnaHQtZ3JheSAhZGVmYXVsdDtcblxuLy8vIEFjdGl2ZSBmb250IGNvbG9yIG9mIHRhYiBpdGVtLlxuLy8vIEB0eXBlIENvbG9yXG4kdGFiLWFjdGl2ZS1jb2xvcjogJHByaW1hcnktY29sb3IgIWRlZmF1bHQ7XG5cbi8vLyBGb250IHNpemUgb2YgdGFiIGl0ZW1zLlxuLy8vIEB0eXBlIE51bWJlclxuJHRhYi1pdGVtLWZvbnQtc2l6ZTogcmVtLWNhbGMoMTIpICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBiYWNrZ3JvdW5kIGNvbG9yIG9uIGhvdmVyIGZvciBpdGVtcyBpbiBhIE1lbnUuXG4kdGFiLWl0ZW0tYmFja2dyb3VuZC1ob3ZlcjogJHdoaXRlICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBwYWRkaW5nIG9mIGEgdGFiIGl0ZW0uXG4vLy8gQHR5cGUgTnVtYmVyXG4kdGFiLWl0ZW0tcGFkZGluZzogMS4yNXJlbSAxLjVyZW0gIWRlZmF1bHQ7XG5cbi8vLyBNYXhpbXVtIG51bWJlciBvZiBgZXhwYW5kLW5gIGNsYXNzZXMgdG8gaW5jbHVkZSBpbiB0aGUgQ1NTLlxuLy8vIEB0eXBlIE51bWJlclxuJHRhYi1leHBhbmQtbWF4OiA2ICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBiYWNrZ3JvdW5kIGNvbG9yIG9mIHRhYiBjb250ZW50LlxuLy8vIEB0eXBlIENvbG9yXG4kdGFiLWNvbnRlbnQtYmFja2dyb3VuZDogJHdoaXRlICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBib3JkZXIgY29sb3Igb2YgdGFiIGNvbnRlbnQuXG4vLy8gQHR5cGUgQ29sb3JcbiR0YWItY29udGVudC1ib3JkZXI6ICRsaWdodC1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCB0ZXh0IGNvbG9yIG9mIHRhYiBjb250ZW50LlxuLy8vIEB0eXBlIENvbG9yXG4kdGFiLWNvbnRlbnQtY29sb3I6ICRib2R5LWZvbnQtY29sb3IgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHBhZGRpbmcgZm9yIHRhYiBjb250ZW50LlxuLy8vIEB0eXBlIE51bWJlciB8IExpc3RcbiR0YWItY29udGVudC1wYWRkaW5nOiAxcmVtICFkZWZhdWx0O1xuXG4vLy8gQWRkcyBzdHlsZXMgZm9yIGEgdGFiIGNvbnRhaW5lci4gQXBwbHkgdGhpcyB0byBhIGA8dWw+YC5cbkBtaXhpbiB0YWJzLWNvbnRhaW5lciAoXG4gICRtYXJnaW46ICR0YWItbWFyZ2luLFxuICAkYmFja2dyb3VuZDogJHRhYi1iYWNrZ3JvdW5kLFxuICAkYm9yZGVyLWNvbG9yOiAkdGFiLWNvbnRlbnQtYm9yZGVyXG4pIHtcbiAgQGluY2x1ZGUgY2xlYXJmaXg7XG4gIG1hcmdpbjogJG1hcmdpbjtcbiAgYm9yZGVyOiAxcHggc29saWQgJGJvcmRlci1jb2xvcjtcbiAgYmFja2dyb3VuZDogJGJhY2tncm91bmQ7XG4gIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcbn1cblxuLy8vIEF1Z21lbnRzIGEgdGFiIGNvbnRhaW5lciB0byBoYXZlIHZlcnRpY2FsIHRhYnMuIFVzZSB0aGlzIGluIGNvbmp1bmN0aW9uIHdpdGggYHRhYnMtY29udGFpbmVyKClgLlxuQG1peGluIHRhYnMtY29udGFpbmVyLXZlcnRpY2FsIHtcbiAgPiBsaSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgZmxvYXQ6IG5vbmU7XG4gICAgd2lkdGg6IGF1dG87XG4gIH1cbn1cblxuLy8vIEFkZHMgc3R5bGVzIGZvciB0aGUgbGlua3Mgd2l0aGluIGEgdGFiIGNvbnRhaW5lci4gQXBwbHkgdGhpcyB0byB0aGUgYDxsaT5gIGVsZW1lbnRzIGluc2lkZSBhIHRhYiBjb250YWluZXIuXG5AbWl4aW4gdGFicy10aXRsZSAoXG4gICRwYWRkaW5nOiAkdGFiLWl0ZW0tcGFkZGluZyxcbiAgJGZvbnQtc2l6ZTogJHRhYi1pdGVtLWZvbnQtc2l6ZSxcbiAgJGNvbG9yOiAkdGFiLWNvbG9yLFxuICAkY29sb3ItYWN0aXZlOiAkdGFiLWFjdGl2ZS1jb2xvcixcbiAgJGJhY2tncm91bmQtaG92ZXI6ICR0YWItaXRlbS1iYWNrZ3JvdW5kLWhvdmVyLFxuICAkYmFja2dyb3VuZC1hY3RpdmU6ICR0YWItYmFja2dyb3VuZC1hY3RpdmVcbikge1xuICBmbG9hdDogI3skZ2xvYmFsLWxlZnR9O1xuXG4gID4gYSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcGFkZGluZzogJHBhZGRpbmc7XG4gICAgZm9udC1zaXplOiAkZm9udC1zaXplO1xuICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgIGNvbG9yOiAkY29sb3I7XG5cbiAgICAmOmhvdmVyIHtcbiAgICAgIGJhY2tncm91bmQ6ICRiYWNrZ3JvdW5kLWhvdmVyO1xuICAgICAgY29sb3I6IHNjYWxlLWNvbG9yKCRjb2xvciwgJGxpZ2h0bmVzczogLTE0JSk7XG4gICAgfVxuXG4gICAgJjpmb2N1cyxcbiAgICAmW2FyaWEtc2VsZWN0ZWQ9J3RydWUnXSB7XG4gICAgICBiYWNrZ3JvdW5kOiAkYmFja2dyb3VuZC1hY3RpdmU7XG4gICAgICBjb2xvcjogJGNvbG9yLWFjdGl2ZTtcbiAgICB9XG4gIH1cbn1cblxuLy8vIEFkZHMgc3R5bGVzIGZvciB0aGUgd3JhcHBlciB0aGF0IHN1cnJvdW5kcyBhIHRhYiBncm91cCdzIGNvbnRlbnQgcGFuZXMuXG5AbWl4aW4gdGFicy1jb250ZW50IChcbiAgJGJhY2tncm91bmQ6ICR0YWItY29udGVudC1iYWNrZ3JvdW5kLFxuICAkY29sb3I6ICR0YWItY29udGVudC1jb2xvcixcbiAgJGJvcmRlci1jb2xvcjogJHRhYi1jb250ZW50LWJvcmRlclxuKSB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICRib3JkZXItY29sb3I7XG4gIGJvcmRlci10b3A6IDA7XG4gIGJhY2tncm91bmQ6ICRiYWNrZ3JvdW5kO1xuICBjb2xvcjogJGNvbG9yO1xuICB0cmFuc2l0aW9uOiBhbGwgMC41cyBlYXNlO1xufVxuXG4vLy8gQXVnbWVudHMgYSB0YWIgY29udGVudCBjb250YWluZXIgdG8gaGF2ZSBhIHZlcnRpY2FsIHN0eWxlLCBieSBzaGlmdGluZyB0aGUgYm9yZGVyIGFyb3VuZC4gVXNlIHRoaXMgaW4gY29uanVuY3Rpb24gd2l0aCBgdGFicy1jb250ZW50KClgLlxuQG1peGluIHRhYnMtY29udGVudC12ZXJ0aWNhbCAoXG4gICRib3JkZXItY29sb3I6ICR0YWItY29udGVudC1ib3JkZXJcbikge1xuICBib3JkZXI6IDFweCBzb2xpZCAkYm9yZGVyLWNvbG9yO1xuICBib3JkZXItI3skZ2xvYmFsLWxlZnR9OiAwO1xufVxuXG4vLy8gQWRkcyBzdHlsZXMgZm9yIGFuIGluZGl2aWR1YWwgdGFiIGNvbnRlbnQgcGFuZWwgd2l0aGluIHRoZSB0YWIgY29udGVudCBjb250YWluZXIuXG5AbWl4aW4gdGFicy1wYW5lbCAoXG4gICRwYWRkaW5nOiAkdGFiLWNvbnRlbnQtcGFkZGluZ1xuKSB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIHBhZGRpbmc6ICRwYWRkaW5nO1xuXG4gICYuaXMtYWN0aXZlIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxufVxuXG5AbWl4aW4gZm91bmRhdGlvbi10YWJzIHtcbiAgLnRhYnMge1xuICAgIEBpbmNsdWRlIHRhYnMtY29udGFpbmVyO1xuICB9XG5cbiAgLy8gVmVydGljYWxcbiAgLnRhYnMudmVydGljYWwge1xuICAgIEBpbmNsdWRlIHRhYnMtY29udGFpbmVyLXZlcnRpY2FsO1xuICB9XG5cbiAgLy8gU2ltcGxlXG4gIC50YWJzLnNpbXBsZSB7XG4gICAgPiBsaSA+IGEge1xuICAgICAgcGFkZGluZzogMDtcblxuICAgICAgJjpob3ZlciB7XG4gICAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vIFByaW1hcnkgY29sb3JcbiAgLnRhYnMucHJpbWFyeSB7XG4gICAgYmFja2dyb3VuZDogJHByaW1hcnktY29sb3I7XG5cbiAgICA+IGxpID4gYSB7XG4gICAgICBjb2xvcjogY29sb3ItcGljay1jb250cmFzdCgkcHJpbWFyeS1jb2xvcik7XG5cbiAgICAgICY6aG92ZXIsXG4gICAgICAmOmZvY3VzIHtcbiAgICAgICAgYmFja2dyb3VuZDogc21hcnQtc2NhbGUoJHByaW1hcnktY29sb3IpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC50YWJzLXRpdGxlIHtcbiAgICBAaW5jbHVkZSB0YWJzLXRpdGxlO1xuICB9XG5cbiAgLnRhYnMtY29udGVudCB7XG4gICAgQGluY2x1ZGUgdGFicy1jb250ZW50O1xuICB9XG5cbiAgLnRhYnMtY29udGVudC52ZXJ0aWNhbCB7XG4gICAgQGluY2x1ZGUgdGFicy1jb250ZW50LXZlcnRpY2FsO1xuICB9XG5cbiAgLnRhYnMtcGFuZWwge1xuICAgIEBpbmNsdWRlIHRhYnMtcGFuZWw7XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIHRodW1ibmFpbFxuLy8vL1xuXG4vLy8gQm9yZGVyIGFyb3VuZCB0aHVtYm5haWwgaW1hZ2VzLlxuLy8vIEB0eXBlIEJvcmRlclxuJHRodW1ibmFpbC1ib3JkZXI6IHNvbGlkIDRweCAkd2hpdGUgIWRlZmF1bHQ7XG5cbi8vLyBCb3R0b20gbWFyZ2luIGZvciB0aHVtYm5haWwgaW1hZ2VzLlxuLy8vIEB0eXBlIExlbmd0aFxuJHRodW1ibmFpbC1tYXJnaW4tYm90dG9tOiAkZ2xvYmFsLW1hcmdpbiAhZGVmYXVsdDtcblxuLy8vIEJveCBzaGFkb3cgdW5kZXIgdGh1bWJuYWlsIGltYWdlcy5cbi8vLyBAdHlwZSBTaGFkb3dcbiR0aHVtYm5haWwtc2hhZG93OiAwIDAgMCAxcHggcmdiYSgkYmxhY2ssIDAuMikgIWRlZmF1bHQ7XG5cbi8vLyBCb3ggc2hhZG93IHVuZGVyIHRodW1ibmFpbCBpbWFnZXMuXG4vLy8gQHR5cGUgU2hhZG93XG4kdGh1bWJuYWlsLXNoYWRvdy1ob3ZlcjogMCAwIDZweCAxcHggcmdiYSgkcHJpbWFyeS1jb2xvciwgMC41KSAhZGVmYXVsdDtcblxuLy8vIFRyYW5zaXRpb24gcHJvcHJ0aWVzIGZvciB0aHVtYm5haWwgaW1hZ2VzLlxuLy8vIEB0eXBlIFRyYW5zaXRpb25cbiR0aHVtYm5haWwtdHJhbnNpdGlvbjogYm94LXNoYWRvdyAyMDBtcyBlYXNlLW91dCAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgcmFkaXVzIGZvciB0aHVtYm5haWwgaW1hZ2VzLlxuLy8vIEB0eXBlIE51bWJlclxuJHRodW1ibmFpbC1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzICFkZWZhdWx0O1xuXG4vLy8gQWRkcyB0aHVtYm5haWwgc3R5bGVzIHRvIGFuIGVsZW1lbnQuXG5AbWl4aW4gdGh1bWJuYWlsIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIG1hcmdpbi1ib3R0b206ICR0aHVtYm5haWwtbWFyZ2luLWJvdHRvbTtcblxuICBib3JkZXI6ICR0aHVtYm5haWwtYm9yZGVyO1xuICBib3JkZXItcmFkaXVzOiAkdGh1bWJuYWlsLXJhZGl1cztcbiAgYm94LXNoYWRvdzogJHRodW1ibmFpbC1zaGFkb3c7XG5cbiAgbGluZS1oZWlnaHQ6IDA7XG59XG5cbkBtaXhpbiB0aHVtYm5haWwtbGluayB7XG4gIHRyYW5zaXRpb246ICR0aHVtYm5haWwtdHJhbnNpdGlvbjtcblxuICAmOmhvdmVyLFxuICAmOmZvY3VzIHtcbiAgICBib3gtc2hhZG93OiAkdGh1bWJuYWlsLXNoYWRvdy1ob3ZlcjtcbiAgfVxuXG4gIGltYWdlIHtcbiAgICBib3gtc2hhZG93OiBub25lO1xuICB9XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLXRodW1ibmFpbCB7XG4gIC50aHVtYm5haWwge1xuICAgIEBpbmNsdWRlIHRodW1ibmFpbDtcbiAgfVxuXG4gIGEudGh1bWJuYWlsIHtcbiAgICBAaW5jbHVkZSB0aHVtYm5haWwtbGluaztcbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgdGl0bGUtYmFyXG4vLy8vXG5cbi8vLyBCYWNrZ3JvdW5kIGNvbG9yIG9mIGEgdGl0bGUgYmFyLlxuLy8vIEB0eXBlIENvbG9yXG4kdGl0bGViYXItYmFja2dyb3VuZDogJGJsYWNrICFkZWZhdWx0O1xuXG4vLy8gQ29sb3Igb2YgdGV4dCBpbnNpZGUgYSB0aXRsZSBiYXIuXG4vLy8gQHR5cGUgQ29sb3JcbiR0aXRsZWJhci1jb2xvcjogJHdoaXRlICFkZWZhdWx0O1xuXG4vLy8gUGFkZGluZyBpbnNpZGUgYSB0aXRsZSBiYXIuXG4vLy8gQHR5cGUgTGVuZ3RoXG4kdGl0bGViYXItcGFkZGluZzogMC41cmVtICFkZWZhdWx0O1xuXG4vLy8gRm9udCB3ZWlnaHQgb2YgdGV4dCBpbnNpZGUgYSB0aXRsZSBiYXIuXG4vLy8gQHR5cGUgV2VpZ2h0XG4kdGl0bGViYXItdGV4dC1mb250LXdlaWdodDogYm9sZCAhZGVmYXVsdDtcblxuLy8vIENvbG9yIG9mIG1lbnUgaWNvbnMgaW5zaWRlIGEgdGl0bGUgYmFyLlxuLy8vIEB0eXBlIENvbG9yXG4kdGl0bGViYXItaWNvbi1jb2xvcjogJHdoaXRlICFkZWZhdWx0O1xuXG4vLy8gQ29sb3Igb2YgbWVudSBpY29ucyBpbnNpZGUgYSB0aXRsZSBiYXIgb24gaG92ZXIuXG4vLy8gQHR5cGUgQ29sb3JcbiR0aXRsZWJhci1pY29uLWNvbG9yLWhvdmVyOiAkbWVkaXVtLWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBTcGFjaW5nIGJldHdlZW4gdGhlIG1lbnUgaWNvbiBhbmQgdGV4dCBpbnNpZGUgYSB0aXRsZSBiYXIuXG4vLy8gQHR5cGUgTGVuZ3RoXG4kdGl0bGViYXItaWNvbi1zcGFjaW5nOiAwLjI1cmVtICFkZWZhdWx0O1xuXG5AbWl4aW4gZm91bmRhdGlvbi10aXRsZS1iYXIge1xuICAudGl0bGUtYmFyIHtcbiAgICBwYWRkaW5nOiAkdGl0bGViYXItcGFkZGluZztcbiAgICBiYWNrZ3JvdW5kOiAkdGl0bGViYXItYmFja2dyb3VuZDtcbiAgICBjb2xvcjogJHRpdGxlYmFyLWNvbG9yO1xuXG4gICAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgQGluY2x1ZGUgY2xlYXJmaXg7XG4gICAgfVxuXG4gICAgLm1lbnUtaWNvbiB7XG4gICAgICBtYXJnaW4tI3skZ2xvYmFsLWxlZnR9OiAkdGl0bGViYXItaWNvbi1zcGFjaW5nO1xuICAgICAgbWFyZ2luLSN7JGdsb2JhbC1yaWdodH06ICR0aXRsZWJhci1pY29uLXNwYWNpbmc7XG4gICAgfVxuICB9XG5cbiAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgLnRpdGxlLWJhci1sZWZ0LFxuICAgIC50aXRsZS1iYXItcmlnaHQge1xuICAgICAgZmxleDogMSAxIDBweDsgLy8gc2Fzcy1saW50OmRpc2FibGUtbGluZSB6ZXJvLXVuaXRcbiAgICB9XG5cbiAgICAudGl0bGUtYmFyLXJpZ2h0IHtcbiAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgIH1cbiAgfVxuICBAZWxzZSB7XG4gICAgLnRpdGxlLWJhci1sZWZ0IHtcbiAgICAgIGZsb2F0OiBsZWZ0O1xuICAgIH1cblxuICAgIC50aXRsZS1iYXItcmlnaHQge1xuICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gICAgfVxuICB9XG5cbiAgLnRpdGxlLWJhci10aXRsZSB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgZm9udC13ZWlnaHQ6ICR0aXRsZWJhci10ZXh0LWZvbnQtd2VpZ2h0O1xuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCB0b29sdGlwXG4vLy8vXG5cbi8vLyBEZWZhdWx0IGN1cnNvciBvZiB0aGUgZGVmaW5lZCB0ZXJtLlxuLy8vIEB0eXBlIEtleXdvcmRcbiRoYXMtdGlwLWN1cnNvcjogaGVscCAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgZm9udCB3ZWlnaHQgb2YgdGhlIGRlZmluZWQgdGVybS5cbi8vLyBAdHlwZSBLZXl3b3JkIHwgTnVtYmVyXG4kaGFzLXRpcC1mb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtYm9sZCAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgYm9yZGVyIGJvdHRvbSBvZiB0aGUgZGVmaW5lZCB0ZXJtLlxuLy8vIEB0eXBlIExpc3RcbiRoYXMtdGlwLWJvcmRlci1ib3R0b206IGRvdHRlZCAxcHggJGRhcmstZ3JheSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgY29sb3Igb2YgdGhlIHRvb2x0aXAgYmFja2dyb3VuZC5cbi8vLyBAdHlwZSBDb2xvclxuJHRvb2x0aXAtYmFja2dyb3VuZC1jb2xvcjogJGJsYWNrICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBjb2xvciBvZiB0aGUgdG9vbHRpcCBmb250LlxuLy8vIEB0eXBlIENvbG9yXG4kdG9vbHRpcC1jb2xvcjogJHdoaXRlICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBwYWRkaW5nIG9mIHRoZSB0b29sdGlwIGJhY2tncm91bmQuXG4vLy8gQHR5cGUgTnVtYmVyXG4kdG9vbHRpcC1wYWRkaW5nOiAwLjc1cmVtICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBtYXggd2lkdGggZm9yIHRvb2x0aXBzLlxuLy8vIEB0eXBlIE51bWJlclxuJHRvb2x0aXAtbWF4LXdpZHRoOiAxMHJlbSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgZm9udCBzaXplIG9mIHRoZSB0b29sdGlwIHRleHQuIEJ5IGRlZmF1bHQsIHdlIHJlY29tbWVuZCBhIHNtYWxsZXIgZm9udCBzaXplIHRoYW4gdGhlIGJvZHkgY29weS5cbi8vLyBAdHlwZSBOdW1iZXJcbiR0b29sdGlwLWZvbnQtc2l6ZTogJHNtYWxsLWZvbnQtc2l6ZSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgcGlwIHdpZHRoIGZvciB0b29sdGlwcy5cbi8vLyBAdHlwZSBOdW1iZXJcbiR0b29sdGlwLXBpcC13aWR0aDogMC43NXJlbSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgcGlwIGhlaWdodCBmb3IgdG9vbHRpcHMuIFRoaXMgaXMgaGVscGZ1bCBmb3IgY2FsY3VsYXRpbmcgdGhlIGRpc3RhbmNlIG9mIHRoZSB0b29sdGlwIGZyb20gdGhlIHRvb2x0aXAgd29yZC5cbi8vLyBAdHlwZSBOdW1iZXJcbiR0b29sdGlwLXBpcC1oZWlnaHQ6ICR0b29sdGlwLXBpcC13aWR0aCAqIDAuODY2ICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCByYWRpdXMgZm9yIHRvb2x0aXBzLlxuLy8vIEB0eXBlIE51bWJlclxuJHRvb2x0aXAtcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cyAhZGVmYXVsdDtcblxuQG1peGluIGhhcy10aXAge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcblxuICBib3JkZXItYm90dG9tOiAkaGFzLXRpcC1ib3JkZXItYm90dG9tO1xuICBmb250LXdlaWdodDogJGhhcy10aXAtZm9udC13ZWlnaHQ7XG4gIGN1cnNvcjogJGhhcy10aXAtY3Vyc29yO1xufVxuXG5AbWl4aW4gdG9vbHRpcCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiBjYWxjKDEwMCUgKyAjeyR0b29sdGlwLXBpcC1oZWlnaHR9KTtcbiAgei1pbmRleDogMTIwMDtcblxuICBtYXgtd2lkdGg6ICR0b29sdGlwLW1heC13aWR0aDtcbiAgcGFkZGluZzogJHRvb2x0aXAtcGFkZGluZztcblxuICBib3JkZXItcmFkaXVzOiAkdG9vbHRpcC1yYWRpdXM7XG4gIGJhY2tncm91bmQtY29sb3I6ICR0b29sdGlwLWJhY2tncm91bmQtY29sb3I7XG4gIGZvbnQtc2l6ZTogJHRvb2x0aXAtZm9udC1zaXplO1xuICBjb2xvcjogJHRvb2x0aXAtY29sb3I7XG5cbiAgJjo6YmVmb3JlIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIH1cblxuICAmLmJvdHRvbSB7XG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIEBpbmNsdWRlIGNzcy10cmlhbmdsZSgkdG9vbHRpcC1waXAtd2lkdGgsICR0b29sdGlwLWJhY2tncm91bmQtY29sb3IsIHVwKTtcbiAgICAgIGJvdHRvbTogMTAwJTtcbiAgICB9XG5cbiAgICAmLmFsaWduLWNlbnRlcjo6YmVmb3JlIHtcbiAgICAgIGxlZnQ6IDUwJTtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcbiAgICB9XG4gIH1cblxuICAmLnRvcCB7XG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIEBpbmNsdWRlIGNzcy10cmlhbmdsZSgkdG9vbHRpcC1waXAtd2lkdGgsICR0b29sdGlwLWJhY2tncm91bmQtY29sb3IsIGRvd24pO1xuICAgICAgdG9wOiAxMDAlO1xuICAgICAgYm90dG9tOiBhdXRvO1xuICAgIH1cblxuICAgICYuYWxpZ24tY2VudGVyOjpiZWZvcmUge1xuICAgICAgbGVmdDogNTAlO1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xuICAgIH1cbiAgfVxuXG4gICYubGVmdCB7XG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIEBpbmNsdWRlIGNzcy10cmlhbmdsZSgkdG9vbHRpcC1waXAtd2lkdGgsICR0b29sdGlwLWJhY2tncm91bmQtY29sb3IsIHJpZ2h0KTtcbiAgICAgIGxlZnQ6IDEwMCU7XG4gICAgfVxuXG4gICAgJi5hbGlnbi1jZW50ZXI6OmJlZm9yZSB7XG4gICAgICBib3R0b206IGF1dG87XG4gICAgICB0b3A6IDUwJTtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgICB9XG4gIH1cblxuICAmLnJpZ2h0IHtcbiAgICAmOjpiZWZvcmUge1xuICAgICAgQGluY2x1ZGUgY3NzLXRyaWFuZ2xlKCR0b29sdGlwLXBpcC13aWR0aCwgJHRvb2x0aXAtYmFja2dyb3VuZC1jb2xvciwgbGVmdCk7XG4gICAgICByaWdodDogMTAwJTtcbiAgICAgIGxlZnQ6IGF1dG87XG4gICAgfVxuXG4gICAgJi5hbGlnbi1jZW50ZXI6OmJlZm9yZSB7XG4gICAgICBib3R0b206IGF1dG87XG4gICAgICB0b3A6IDUwJTtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgICB9XG4gIH1cblxuICAmLmFsaWduLXRvcDo6YmVmb3JlIHtcbiAgICBib3R0b206IGF1dG87XG4gICAgdG9wOiAxMCU7XG4gIH1cblxuICAmLmFsaWduLWJvdHRvbTo6YmVmb3JlIHtcbiAgICBib3R0b206IDEwJTtcbiAgICB0b3A6IGF1dG87XG4gIH1cblxuICAmLmFsaWduLWxlZnQ6OmJlZm9yZSB7XG4gICAgbGVmdDogMTAlO1xuICAgIHJpZ2h0OiBhdXRvO1xuICB9XG5cbiAgJi5hbGlnbi1yaWdodDo6YmVmb3JlIHtcbiAgICBsZWZ0OiBhdXRvO1xuICAgIHJpZ2h0OiAxMCU7XG4gIH1cbn1cblxuQG1peGluIGZvdW5kYXRpb24tdG9vbHRpcCB7XG4gIC5oYXMtdGlwIHtcbiAgICBAaW5jbHVkZSBoYXMtdGlwO1xuICB9XG5cbiAgLnRvb2x0aXAge1xuICAgIEBpbmNsdWRlIHRvb2x0aXA7XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIHRvcC1iYXJcbi8vLy9cblxuLy8vIFBhZGRpbmcgZm9yIHRoZSB0b3AgYmFyLlxuLy8vIEB0eXBlIE51bWJlclxuJHRvcGJhci1wYWRkaW5nOiAwLjVyZW0gIWRlZmF1bHQ7XG5cbi8vLyBCYWNrZ3JvdW5kIGNvbG9yIGZvciB0aGUgdG9wIGJhci4gVGhpcyBjb2xvciBhbHNvIGNhc2NhZGVzIHRvIG1lbnVzIHdpdGhpbiB0aGUgdG9wIGJhci5cbi8vLyBAdHlwZSBDb2xvclxuJHRvcGJhci1iYWNrZ3JvdW5kOiAkbGlnaHQtZ3JheSAhZGVmYXVsdDtcblxuLy8vIEJhY2tncm91bmQgY29sb3Igc3VibWVudXMgd2l0aGluIHRoZSB0b3AgYmFyLiBVc2VmdWxsIGlmICR0b3BiYXItYmFja2dyb3VuZCBpcyB0cmFuc3BhcmVudC5cbi8vLyBAdHlwZSBDb2xvclxuJHRvcGJhci1zdWJtZW51LWJhY2tncm91bmQ6ICR0b3BiYXItYmFja2dyb3VuZCAhZGVmYXVsdDtcblxuLy8vIFNwYWNpbmcgZm9yIHRoZSB0b3AgYmFyIHRpdGxlLlxuLy8vIEB0eXBlIE51bWJlclxuJHRvcGJhci10aXRsZS1zcGFjaW5nOiAwLjVyZW0gMXJlbSAwLjVyZW0gMCAhZGVmYXVsdDtcblxuLy8vIE1heGltdW0gd2lkdGggb2YgYDxpbnB1dD5gIGVsZW1lbnRzIGluc2lkZSB0aGUgdG9wIGJhci5cbi8vLyBAdHlwZSBOdW1iZXJcbiR0b3BiYXItaW5wdXQtd2lkdGg6IDIwMHB4ICFkZWZhdWx0O1xuXG4vLy8gQnJlYWtwb2ludCBhdCB3aGljaCB0b3AgYmFyIHN3aXRjaGVzIGZyb20gbW9iaWxlIHRvIGRlc2t0b3Agdmlldy5cbi8vLyBAdHlwZSBCcmVha3BvaW50XG4kdG9wYmFyLXVuc3RhY2stYnJlYWtwb2ludDogbWVkaXVtICFkZWZhdWx0O1xuXG4vLy8gQWRkcyBzdHlsZXMgZm9yIGEgdG9wIGJhciBjb250YWluZXIuXG5AbWl4aW4gdG9wLWJhci1jb250YWluZXIge1xuICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtd3JhcDogbm93cmFwO1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICB9XG4gIEBlbHNlIHtcbiAgICBAaW5jbHVkZSBjbGVhcmZpeDtcbiAgfVxuXG4gIHBhZGRpbmc6ICR0b3BiYXItcGFkZGluZztcblxuICAmLFxuICB1bCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHRvcGJhci1iYWNrZ3JvdW5kO1xuICB9XG5cbiAgLy8gQ2hlY2sgaWYgJHRvcGJhci1iYWNrZ3JvdW5kIGlzIGRpZmZlcm50IGZyb20gJHRvcGJhci1iYWNrZ3JvdW5kLXN1Ym1lbnVcbiAgQGlmICgkdG9wYmFyLWJhY2tncm91bmQgIT0gJHRvcGJhci1zdWJtZW51LWJhY2tncm91bmQpIHtcbiAgICB1bCB1bCB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdG9wYmFyLXN1Ym1lbnUtYmFja2dyb3VuZDtcbiAgICB9XG4gIH1cblxuICAvLyBSZXN0cmFpbiB3aWR0aCBvZiBpbnB1dHMgYnkgZGVmYXVsdCB0byBtYWtlIHRoZW0gZWFzaWVyIHRvIGFycmFuZ2VcbiAgaW5wdXQge1xuICAgIG1heC13aWR0aDogJHRvcGJhci1pbnB1dC13aWR0aDtcbiAgICBtYXJnaW4tI3skZ2xvYmFsLXJpZ2h0fTogMXJlbTtcbiAgfVxuXG4gIC8vIFRoZSBhYm92ZSBzdHlsZXMgc2hvdWxkbid0IGFwcGx5IHRvIGlucHV0IGdyb3VwIGZpZWxkc1xuICAuaW5wdXQtZ3JvdXAtZmllbGQge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1hcmdpbi0jeyRnbG9iYWwtcmlnaHR9OiAwO1xuICB9XG5cbiAgaW5wdXQuYnV0dG9uIHsgLy8gc2Fzcy1saW50OmRpc2FibGUtbGluZSBuby1xdWFsaWZ5aW5nLWVsZW1lbnRzXG4gICAgd2lkdGg6IGF1dG87XG4gIH1cbn1cblxuLy8vIE1ha2VzIHNlY3Rpb25zIG9mIGEgdG9wIGJhciBzdGFjayBvbiB0b3Agb2YgZWFjaCBvdGhlci5cbkBtaXhpbiB0b3AtYmFyLXN0YWNrZWQge1xuICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICBmbGV4LXdyYXA6IHdyYXA7XG5cbiAgICAvLyBTdWItc2VjdGlvbnNcbiAgICAudG9wLWJhci1sZWZ0LFxuICAgIC50b3AtYmFyLXJpZ2h0IHtcbiAgICAgIGZsZXg6IDAgMCAxMDAlO1xuICAgICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgIH1cbiAgfVxuICBAZWxzZSB7XG4gICAgLy8gU3ViLXNlY3Rpb25zXG4gICAgLnRvcC1iYXItbGVmdCxcbiAgICAudG9wLWJhci1yaWdodCB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICB9XG4gIH1cbn1cblxuLy8vIFVuZG9lcyB0aGUgQ1NTIGFwcGxpZWQgYnkgdGhlIGB0b3AtYmFyLXN0YWNrZWQoKWAgbWl4aW4uXG5AbWl4aW4gdG9wLWJhci11bnN0YWNrIHtcbiAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgZmxleC13cmFwOiBub3dyYXA7XG5cbiAgICAudG9wLWJhci1sZWZ0IHtcbiAgICAgIGZsZXg6IDEgMSBhdXRvO1xuICAgICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICAgIH1cblxuICAgIC50b3AtYmFyLXJpZ2h0IHtcbiAgICAgIGZsZXg6IDAgMSBhdXRvO1xuICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgfVxuICB9XG4gIEBlbHNlIHtcbiAgICAudG9wLWJhci1sZWZ0LFxuICAgIC50b3AtYmFyLXJpZ2h0IHtcbiAgICAgIHdpZHRoOiBhdXRvO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gZm91bmRhdGlvbi10b3AtYmFyIHtcbiAgLy8gVG9wIGJhciBjb250YWluZXJcbiAgLnRvcC1iYXIge1xuICAgIEBpbmNsdWRlIHRvcC1iYXItY29udGFpbmVyO1xuXG4gICAgLy8gU3RhY2sgb24gc21hbGwgc2NyZWVucyBieSBkZWZhdWx0XG4gICAgQGluY2x1ZGUgdG9wLWJhci1zdGFja2VkO1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkdG9wYmFyLXVuc3RhY2stYnJlYWtwb2ludCkge1xuICAgICAgQGluY2x1ZGUgdG9wLWJhci11bnN0YWNrO1xuICAgIH1cblxuICAgIC8vIEdlbmVyYXRlIGNsYXNzZXMgZm9yIHN0YWNraW5nIG9uIGVhY2ggc2NyZWVuIHNpemUgKGRlZmluZWQgaW4gJGJyZWFrcG9pbnQtY2xhc3NlcylcbiAgICBAZWFjaCAkc2l6ZSBpbiAkYnJlYWtwb2ludC1jbGFzc2VzIHtcbiAgICAgIEBpZiAkc2l6ZSAhPSAkLXpmLXplcm8tYnJlYWtwb2ludCB7XG4gICAgICAgICYuc3RhY2tlZC1mb3ItI3skc2l6ZX0ge1xuICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJHNpemUgZG93bikge1xuICAgICAgICAgICAgQGluY2x1ZGUgdG9wLWJhci1zdGFja2VkO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vIFN1Yi1zZWN0aW9uc1xuICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAudG9wLWJhci10aXRsZSB7XG4gICAgICBmbGV4OiAwIDAgYXV0bztcbiAgICAgIG1hcmdpbjogJHRvcGJhci10aXRsZS1zcGFjaW5nO1xuICAgIH1cblxuICAgIC50b3AtYmFyLWxlZnQsXG4gICAgLnRvcC1iYXItcmlnaHQge1xuICAgICAgZmxleDogMCAwIGF1dG87XG4gICAgfVxuICB9XG4gIEBlbHNlIHtcbiAgICAudG9wLWJhci10aXRsZSB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICBmbG9hdDogbGVmdDtcbiAgICAgIHBhZGRpbmc6ICR0b3BiYXItdGl0bGUtc3BhY2luZztcblxuICAgICAgLm1lbnUtaWNvbiB7XG4gICAgICAgIGJvdHRvbTogMnB4O1xuICAgICAgfVxuICAgIH1cblxuICAgIC50b3AtYmFyLWxlZnQge1xuICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgfVxuXG4gICAgLnRvcC1iYXItcmlnaHQge1xuICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgIH1cbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLyBIaWRlIGFuIGVsZW1lbnQgYnkgZGVmYXVsdCwgb25seSBkaXNwbGF5aW5nIGl0IGFib3ZlIGEgY2VydGFpbiBzY3JlZW4gc2l6ZS5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRzaXplIC0gQnJlYWtwb2ludCB0byB1c2UuICoqTXVzdCBiZSBhIGJyZWFrcG9pbnQgZGVmaW5lZCBpbiBgJGJyZWFrcG9pbnRzYC4qKlxuQG1peGluIHNob3ctZm9yKCRzaXplKSB7XG4gICRzaXplOiBtYXAtZ2V0KCRicmVha3BvaW50cywgJHNpemUpO1xuICAkc2l6ZTogLXpmLWJwLXRvLWVtKCRzaXplKSAtICgxIC8gMTYpO1xuXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQoJHNpemUgZG93bikge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuXG4vLy8gSGlkZSBhbiBlbGVtZW50IGJ5IGRlZmF1bHQsIG9ubHkgZGlzcGxheWluZyBpdCB3aXRoaW4gYSBjZXJ0YWluIGJyZWFrcG9pbnQuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkc2l6ZSAtIEJyZWFrcG9pbnQgdG8gdXNlLiAqKk11c3QgYmUgYSBicmVha3BvaW50IGRlZmluZWQgaW4gYCRicmVha3BvaW50c2AuKipcbkBtaXhpbiBzaG93LWZvci1vbmx5KCRzaXplKSB7XG4gICRsb3dlci1ib3VuZC1zaXplOiBtYXAtZ2V0KCRicmVha3BvaW50cywgJHNpemUpO1xuICAkdXBwZXItYm91bmQtc2l6ZTogLXpmLW1hcC1uZXh0KCRicmVha3BvaW50cywgJHNpemUpO1xuXG4gIC8vIG1vcmUgb2Z0ZW4gdGhhbiBub3QgdGhpcyB3aWxsIGJlIGNvcnJlY3QsIGp1c3Qgb25lIHRpbWUgcm91bmQgdGhlIGxvb3AgaXQgd29uJ3Qgc28gc2V0IGluIHNjb3BlIGhlcmVcbiAgJGxvd2VyLWJvdW5kOiAtemYtYnAtdG8tZW0oJGxvd2VyLWJvdW5kLXNpemUpIC0gKDEgLyAxNik7XG4gIC8vIHRlc3QgYWN0dWFsIGxvd2VyLWJvdW5kLXNpemUsIGlmIDAgc2V0IGl0IHRvIDBlbVxuICBAaWYgc3RyaXAtdW5pdCgkbG93ZXItYm91bmQtc2l6ZSkgPT0gMCB7XG4gICAgJGxvd2VyLWJvdW5kOiAtemYtYnAtdG8tZW0oJGxvd2VyLWJvdW5kLXNpemUpO1xuICB9XG5cbiAgQGlmICR1cHBlci1ib3VuZC1zaXplID09IG51bGwge1xuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRsb3dlci1ib3VuZCkge1xuICAgICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICAgIH1cbiAgfVxuICBAZWxzZSB7XG4gICAgJHVwcGVyLWJvdW5kOiAtemYtYnAtdG8tZW0oJHVwcGVyLWJvdW5kLXNpemUpO1xuXG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJGxvd2VyLWJvdW5kKSwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAkdXBwZXItYm91bmQpIHtcbiAgICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgICB9XG4gIH1cbn1cblxuXG4vLy8gU2hvdyBhbiBlbGVtZW50IGJ5IGRlZmF1bHQsIGFuZCBoaWRlIGl0IGFib3ZlIGEgY2VydGFpbiBzY3JlZW4gc2l6ZS5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRzaXplIC0gQnJlYWtwb2ludCB0byB1c2UuICoqTXVzdCBiZSBhIGJyZWFrcG9pbnQgZGVmaW5lZCBpbiBgJGJyZWFrcG9pbnRzYC4qKlxuQG1peGluIGhpZGUtZm9yKCRzaXplKSB7XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQoJHNpemUpIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuLy8vIFNob3cgYW4gZWxlbWVudCBieSBkZWZhdWx0LCBhbmQgaGlkZSBpdCBhYm92ZSBhIGNlcnRhaW4gc2NyZWVuIHNpemUuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkc2l6ZSAtIEJyZWFrcG9pbnQgdG8gdXNlLiAqKk11c3QgYmUgYSBicmVha3BvaW50IGRlZmluZWQgaW4gYCRicmVha3BvaW50c2AuKipcbkBtaXhpbiBoaWRlLWZvci1vbmx5KCRzaXplKSB7XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQoJHNpemUgb25seSkge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuXG5AbWl4aW4gZm91bmRhdGlvbi12aXNpYmlsaXR5LWNsYXNzZXMge1xuICAvLyBCYXNpYyBoaWRpbmcgY2xhc3Nlc1xuICAuaGlkZSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmludmlzaWJsZSB7XG4gICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICB9XG5cbiAgLy8gUmVzcG9uc2l2ZSB2aXNpYmlsaXR5IGNsYXNzZXNcbiAgQGVhY2ggJHNpemUgaW4gJGJyZWFrcG9pbnQtY2xhc3NlcyB7XG4gICAgQGlmICRzaXplICE9ICQtemYtemVyby1icmVha3BvaW50IHtcbiAgICAgIC5oaWRlLWZvci0jeyRzaXplfSB7XG4gICAgICAgIEBpbmNsdWRlIGhpZGUtZm9yKCRzaXplKTtcbiAgICAgIH1cblxuICAgICAgLnNob3ctZm9yLSN7JHNpemV9IHtcbiAgICAgICAgQGluY2x1ZGUgc2hvdy1mb3IoJHNpemUpO1xuICAgICAgfVxuICAgIH1cblxuICAgIC5oaWRlLWZvci0jeyRzaXplfS1vbmx5IHtcbiAgICAgIEBpbmNsdWRlIGhpZGUtZm9yLW9ubHkoJHNpemUpO1xuICAgIH1cblxuICAgIC5zaG93LWZvci0jeyRzaXplfS1vbmx5IHtcbiAgICAgIEBpbmNsdWRlIHNob3ctZm9yLW9ubHkoJHNpemUpO1xuICAgIH1cbiAgfVxuXG4gIC8vIFNjcmVlbiByZWFkZXIgdmlzaWJpbGl0eSBjbGFzc2VzXG4gIC8vIE5lZWQgYSBcImhpZGUtZm9yLXNyXCIgY2xhc3M/IEFkZCBhcmlhLWhpZGRlbj0ndHJ1ZScgdG8gdGhlIGVsZW1lbnRcbiAgLnNob3ctZm9yLXNyLFxuICAuc2hvdy1vbi1mb2N1cyB7XG4gICAgQGluY2x1ZGUgZWxlbWVudC1pbnZpc2libGU7XG4gIH1cblxuICAvLyBPbmx5IGRpc3BsYXkgdGhlIGVsZW1lbnQgd2hlbiBpdCdzIGZvY3VzZWRcbiAgLnNob3ctb24tZm9jdXMge1xuICAgICY6YWN0aXZlLFxuICAgICY6Zm9jdXMge1xuICAgICAgQGluY2x1ZGUgZWxlbWVudC1pbnZpc2libGUtb2ZmO1xuICAgIH1cbiAgfVxuXG4gIC8vIExhbmRzY2FwZSBhbmQgcG9ydHJhaXQgdmlzaWJpbGl0eVxuICAuc2hvdy1mb3ItbGFuZHNjYXBlLFxuICAuaGlkZS1mb3ItcG9ydHJhaXQge1xuICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhbmRzY2FwZSkge1xuICAgICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHBvcnRyYWl0KSB7XG4gICAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gICAgfVxuICB9XG5cbiAgLmhpZGUtZm9yLWxhbmRzY2FwZSxcbiAgLnNob3ctZm9yLXBvcnRyYWl0IHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhbmRzY2FwZSkge1xuICAgICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQocG9ydHJhaXQpIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG4gICAgfVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBGbGV4Ym94IFV0aWxpdGllc1xuLy8vL1xuLy9cbi8vLyBEZWZhdWx0IHZhbHVlIGZvciB0aGUgY291bnQgb2Ygc291cmNlIG9yZGVyaW5nYFxuLy8vIEB0eXBlIE51bWJlclxuJGZsZXgtc291cmNlLW9yZGVyaW5nLWNvdW50OiA2ICFkZWZhdWx0O1xuXG4vLy8gUXVpY2tseSBkaXNhYmxlL2VuYWJsZSBSZXNwb25zaXZlIGJyZWFrcG9pbnRzIGZvciBWYW5pbGxhIEZsZXggSGVscGVycy5cbi8vLyBAdHlwZSBCb29sZWFuXG4kZmxleGJveC1yZXNwb25zaXZlLWJyZWFrcG9pbnRzOiB0cnVlICFkZWZhdWx0O1xuXG5AbWl4aW4gZmxleC1oZWxwZXJzIHtcbiAgLmZsZXgtY29udGFpbmVyIHtcbiAgICBAaW5jbHVkZSBmbGV4O1xuICB9XG5cbiAgLmZsZXgtY2hpbGQtYXV0byB7XG4gICAgZmxleDogMSAxIGF1dG87XG4gIH1cblxuICAuZmxleC1jaGlsZC1ncm93IHtcbiAgICBmbGV4OiAxIDAgYXV0bztcbiAgfVxuXG4gIC5mbGV4LWNoaWxkLXNocmluayB7XG4gICAgZmxleDogMCAxIGF1dG87XG4gIH1cblxuICBAZWFjaCAkZGlyLCAkcHJvcCBpbiAkLXpmLWZsZXgtZGlyZWN0aW9uIHtcbiAgICAuZmxleC1kaXItI3skZGlyfSB7XG4gICAgICBAaW5jbHVkZSBmbGV4LWRpcmVjdGlvbigkcHJvcCk7XG4gICAgfVxuICB9XG5cbiAgQGlmICgkZmxleGJveC1yZXNwb25zaXZlLWJyZWFrcG9pbnRzKSB7XG4gICAgLy8gTG9vcCB0aHJvdWdoIFJlc3BvbnNpdmUgQnJlYWtwb2ludHNcbiAgICBAZWFjaCAkc2l6ZSBpbiAkYnJlYWtwb2ludC1jbGFzc2VzIHtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJHNpemUpIHtcbiAgICAgICAgQGlmICRzaXplICE9ICQtemYtemVyby1icmVha3BvaW50IHtcbiAgICAgICAgICAuI3skc2l6ZX0tZmxleC1jb250YWluZXIge1xuICAgICAgICAgICAgQGluY2x1ZGUgZmxleDtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICAuI3skc2l6ZX0tZmxleC1jaGlsZC1hdXRvIHtcbiAgICAgICAgICAgIGZsZXg6IDEgMSBhdXRvO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIC4jeyRzaXplfS1mbGV4LWNoaWxkLWdyb3cge1xuICAgICAgICAgICAgZmxleDogMSAwIGF1dG87XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgLiN7JHNpemV9LWZsZXgtY2hpbGQtc2hyaW5rIHtcbiAgICAgICAgICAgIGZsZXg6IDAgMSBhdXRvO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIEBlYWNoICRkaXIsICRwcm9wIGluICQtemYtZmxleC1kaXJlY3Rpb24ge1xuICAgICAgICAgICAgLiN7JHNpemV9LWZsZXgtZGlyLSN7JGRpcn0ge1xuICAgICAgICAgICAgICBAaW5jbHVkZSBmbGV4LWRpcmVjdGlvbigkcHJvcCk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLWZsZXgtY2xhc3NlcyB7XG4gIC8vIEhvcml6b250YWwgYWxpZ25tZW50IHVzaW5nIGp1c3RpZnktY29udGVudFxuICBAZWFjaCAkaGRpciwgJHByb3AgaW4gbWFwLXJlbW92ZSgkLXpmLWZsZXgtanVzdGlmeSwgJ2xlZnQnKSB7XG4gICAgLmFsaWduLSN7JGhkaXJ9IHtcbiAgICAgIEBpbmNsdWRlIGZsZXgtYWxpZ24oJHg6ICRoZGlyKTtcbiAgICB9XG4gIH1cbiAgXG4gIC8vIEhvcml6b250YWwgYWxpZ25tZW50IFNwZWNpZmljYWxseSBmb3IgVmVydGljYWwgTWVudVxuICBAZWFjaCAkaGRpciwgJHByb3AgaW4gbWFwLXJlbW92ZSgkLXpmLWZsZXgtanVzdGlmeSwgJ2xlZnQnLCAnanVzdGlmeScsICdzcGFjZWQnKSB7XG4gICAgLmFsaWduLSN7JGhkaXJ9IHtcbiAgICAgICYudmVydGljYWwubWVudSA+IGxpID4gYSB7IFxuICAgICAgICBAaW5jbHVkZSBmbGV4LWFsaWduKCR4OiAkaGRpcik7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8gVmVydGljYWwgYWxpZ25tZW50IHVzaW5nIGFsaWduLWl0ZW1zIGFuZCBhbGlnbi1zZWxmXG4gIEBlYWNoICR2ZGlyLCAkcHJvcCBpbiAkLXpmLWZsZXgtYWxpZ24ge1xuICAgIC5hbGlnbi0jeyR2ZGlyfSB7XG4gICAgICBAaW5jbHVkZSBmbGV4LWFsaWduKCR5OiAkdmRpcik7XG4gICAgfVxuXG4gICAgLmFsaWduLXNlbGYtI3skdmRpcn0ge1xuICAgICAgQGluY2x1ZGUgZmxleC1hbGlnbi1zZWxmKCR5OiAkdmRpcik7XG4gICAgfVxuICB9XG5cbiAgLy8gQ2VudHJhbCBhbGlnbm1lbnQgb2YgY29udGVudFxuICAuYWxpZ24tY2VudGVyLW1pZGRsZSB7XG4gICAgQGluY2x1ZGUgZmxleC1hbGlnbigkeDogY2VudGVyLCAkeTogbWlkZGxlKTtcbiAgICBhbGlnbi1jb250ZW50OiBjZW50ZXI7XG4gIH1cblxuICAvLyBTb3VyY2Ugb3JkZXJpbmdcbiAgQGluY2x1ZGUgLXpmLWVhY2gtYnJlYWtwb2ludCB7XG4gICAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCAkZmxleC1zb3VyY2Utb3JkZXJpbmctY291bnQge1xuICAgICAgLiN7JC16Zi1zaXplfS1vcmRlci0jeyRpfSB7XG4gICAgICAgIEBpbmNsdWRlIGZsZXgtb3JkZXIoJGkpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vIFZhbmlsbGEgRmxleGJveCBIZWxwZXJzXG4gIEBpbmNsdWRlIGZsZXgtaGVscGVycztcbn1cbiIsIiQtemYtZmxleC1qdXN0aWZ5OiAoXG4gICdsZWZ0JzogZmxleC1zdGFydCxcbiAgJ3JpZ2h0JzogZmxleC1lbmQsXG4gICdjZW50ZXInOiBjZW50ZXIsXG4gICdqdXN0aWZ5Jzogc3BhY2UtYmV0d2VlbixcbiAgJ3NwYWNlZCc6IHNwYWNlLWFyb3VuZCxcbik7XG5cbiQtemYtZmxleC1hbGlnbjogKFxuICAndG9wJzogZmxleC1zdGFydCxcbiAgJ2JvdHRvbSc6IGZsZXgtZW5kLFxuICAnbWlkZGxlJzogY2VudGVyLFxuICAnc3RyZXRjaCc6IHN0cmV0Y2gsXG4pO1xuXG4kLXpmLWZsZXgtZGlyZWN0aW9uOiAoXG4gICdyb3cnOiByb3csXG4gICdyb3ctcmV2ZXJzZSc6IHJvdy1yZXZlcnNlLFxuICAnY29sdW1uJzogY29sdW1uLFxuICAnY29sdW1uLXJldmVyc2UnOiBjb2x1bW4tcmV2ZXJzZSxcbik7XG5cbi8vLyBFbmFibGVzIGZsZXhib3ggYnkgYWRkaW5nIGBkaXNwbGF5OiBmbGV4YCB0byB0aGUgZWxlbWVudC5cbkBtaXhpbiBmbGV4IHtcbiAgZGlzcGxheTogZmxleDtcbn1cblxuLy8vIEhvcml6b250YWxseSBvciB2ZXJ0aWNhbGx5IGFsaWducyB0aGUgaXRlbXMgd2l0aGluIGEgZmxleCBjb250YWluZXIuXG4vLy9cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICR4IFtudWxsXSAtIEhvcml6b250YWwgYWxpZ25tZW50IHRvIHVzZS4gQ2FuIGJlIGBsZWZ0YCwgYHJpZ2h0YCwgYGNlbnRlcmAsIGBqdXN0aWZ5YCwgb3IgYHNwYWNlZGAuIE9yLCBzZXQgaXQgdG8gYG51bGxgICh0aGUgZGVmYXVsdCkgdG8gbm90IHNldCBob3Jpem9udGFsIGFsaWdubWVudC5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICR5IFtudWxsXSAtIFZlcnRpY2FsIGFsaWdubWVudCB0byB1c2UuIENhbiBiZSBgdG9wYCwgYGJvdHRvbWAsIGBtaWRkbGVgLCBvciBgc3RyZXRjaGAuIE9yLCBzZXQgaXQgdG8gYG51bGxgICh0aGUgZGVmYXVsdCkgdG8gbm90IHNldCB2ZXJ0aWNhbCBhbGlnbm1lbnQuXG5AbWl4aW4gZmxleC1hbGlnbigkeDogbnVsbCwgJHk6IG51bGwpIHtcbiAgQGlmICR4IHtcbiAgICBAaWYgbWFwLWhhcy1rZXkoJC16Zi1mbGV4LWp1c3RpZnksICR4KSB7XG4gICAgICAkeDogbWFwLWdldCgkLXpmLWZsZXgtanVzdGlmeSwgJHgpO1xuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICBAd2FybiAnZmxleC1ncmlkLXJvdy1hbGlnbigpOiAjeyR4fSBpcyBub3QgYSB2YWxpZCB2YWx1ZSBmb3IgaG9yaXpvbnRhbCBhbGlnbm1lbnQuIFVzZSBsZWZ0LCByaWdodCwgY2VudGVyLCBqdXN0aWZ5LCBvciBzcGFjZWQuJztcbiAgICB9XG4gIH1cblxuICBAaWYgJHkge1xuICAgIEBpZiBtYXAtaGFzLWtleSgkLXpmLWZsZXgtYWxpZ24sICR5KSB7XG4gICAgICAkeTogbWFwLWdldCgkLXpmLWZsZXgtYWxpZ24sICR5KTtcbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgQHdhcm4gJ2ZsZXgtZ3JpZC1yb3ctYWxpZ24oKTogI3skeX0gaXMgbm90IGEgdmFsaWQgdmFsdWUgZm9yIHZlcnRpY2FsIGFsaWdubWVudC4gVXNlIHRvcCwgYm90dG9tLCBtaWRkbGUsIG9yIHN0cmV0Y2guJztcbiAgICB9XG4gIH1cblxuICBqdXN0aWZ5LWNvbnRlbnQ6ICR4O1xuICBhbGlnbi1pdGVtczogJHk7XG59XG5cbi8vLyBWZXJ0aWNhbGx5IGFsaWduIGEgc2luZ2xlIGNvbHVtbiB3aXRoaW4gYSBmbGV4IHJvdy4gQXBwbHkgdGhpcyBtaXhpbiB0byBhIGZsZXggY29sdW1uLlxuLy8vXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkeSBbbnVsbF0gLSBWZXJ0aWNhbCBhbGlnbm1lbnQgdG8gdXNlLiBDYW4gYmUgYHRvcGAsIGBib3R0b21gLCBgbWlkZGxlYCwgb3IgYHN0cmV0Y2hgLiBPciwgc2V0IGl0IHRvIGBudWxsYCAodGhlIGRlZmF1bHQpIHRvIG5vdCBzZXQgdmVydGljYWwgYWxpZ25tZW50LlxuQG1peGluIGZsZXgtYWxpZ24tc2VsZigkeTogbnVsbCkge1xuICBAaWYgJHkge1xuICAgIEBpZiBtYXAtaGFzLWtleSgkLXpmLWZsZXgtYWxpZ24sICR5KSB7XG4gICAgICAkeTogbWFwLWdldCgkLXpmLWZsZXgtYWxpZ24sICR5KTtcbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgQHdhcm4gJ2ZsZXgtZ3JpZC1jb2x1bW4tYWxpZ24oKTogI3skeX0gaXMgbm90IGEgdmFsaWQgdmFsdWUgZm9yIGFsaWdubWVudC4gVXNlIHRvcCwgYm90dG9tLCBtaWRkbGUsIG9yIHN0cmV0Y2guJztcbiAgICB9XG4gIH1cblxuICBhbGlnbi1zZWxmOiAkeTtcbn1cblxuLy8vIENoYW5nZXMgdGhlIHNvdXJjZSBvcmRlciBvZiBhIGZsZXggY2hpbGQuIENoaWxkcmVuIHdpdGggbG93ZXIgbnVtYmVycyBhcHBlYXIgZmlyc3QgaW4gdGhlIGxheW91dC5cbi8vLyBAcGFyYW0ge051bWJlcn0gJG9yZGVyIFswXSAtIE9yZGVyIG51bWJlciB0byBhcHBseS5cbkBtaXhpbiBmbGV4LW9yZGVyKCRvcmRlcjogMCkge1xuICBvcmRlcjogJG9yZGVyO1xufVxuXG4vLy8gQ2hhbmdlIGZsZXgtZGlyZWN0aW9uXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkZGlyZWN0aW9uIFtyb3ddIC0gRmxleCBkaXJlY3Rpb24gdG8gdXNlLiBDYW4gYmVcbi8vLyAgIC0gcm93IChkZWZhdWx0KTogc2FtZSBhcyB0ZXh0IGRpcmVjdGlvblxuLy8vICAgLSByb3ctcmV2ZXJzZTogb3Bwb3NpdGUgdG8gdGV4dCBkaXJlY3Rpb25cbi8vLyAgIC0gY29sdW1uOiBzYW1lIGFzIHJvdyBidXQgdG9wIHRvIGJvdHRvbVxuLy8vICAgLSBjb2x1bW4tcmV2ZXJzZTogc2FtZSBhcyByb3ctcmV2ZXJzZSB0b3AgdG8gYm90dG9tXG5AbWl4aW4gZmxleC1kaXJlY3Rpb24oJGRpcmVjdGlvbjogcm93KSB7XG4gIGZsZXgtZGlyZWN0aW9uOiAkZGlyZWN0aW9uO1xufVxuIiwiLy8vIEFwcGxpZXMgYmFzaWMgdHJhbnNpdGlvbiBzZXR0aW5ncyB0byBhbiBlbGVtZW50LlxuLy8vIEBwYXJhbSB7RHVyYXRpb259ICRkdXJhdGlvbiBbbnVsbF0gLSBMZW5ndGggKHNwZWVkKSBvZiB0aGUgdHJhbnNpdGlvbi5cbi8vLyBAcGFyYW0ge0tleXdvcmR8RnVuY3Rpb259ICR0aW1pbmcgW251bGxdIC0gRWFzaW5nIG9mIHRoZSB0cmFuc2l0aW9uLlxuLy8vIEBwYXJhbSB7RHVyYXRpb259ICRkZWxheSBbbnVsbF0gLSBEZWxheSBpbiBzZWNvbmRzIG9yIG1pbGxpc2Vjb25kcyBiZWZvcmUgdGhlIHRyYW5zaXRpb24gc3RhcnRzLlxuQG1peGluIHRyYW5zaXRpb24tYmFzaWNzKFxuICAkZHVyYXRpb246IG51bGwsXG4gICR0aW1pbmc6IG51bGwsXG4gICRkZWxheTogbnVsbFxuKSB7XG4gIEBpbmNsdWRlIC1tb3Rpb24tdWktZGVmYXVsdHM7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246ICRkdXJhdGlvbjtcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246ICR0aW1pbmc7XG4gIHRyYW5zaXRpb24tZGVsYXk6ICRkZWxheTtcbn1cblxuLy8vIFdyYXBzIHRoZSBjb250ZW50IGluIHRoZSBzZXR1cCBjbGFzcyBmb3IgYSB0cmFuc2l0aW9uLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJGRpciAtIFN0YXRlIHRvIHNldHVwIGZvciB0cmFuc2l0aW9uLlxuQG1peGluIHRyYW5zaXRpb24tc3RhcnQoJGRpcikge1xuICAkc2VsZWN0b3I6IC1tdWktYnVpbGQtc2VsZWN0b3IobWFwLWdldCgkbW90aW9uLXVpLXN0YXRlcywgJGRpcikpO1xuXG4gIEBhdC1yb290IHtcbiAgICAjeyRzZWxlY3Rvcn0ge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9XG59XG5cbi8vLyBXcmFwcyB0aGUgY29udGVudCBpbiB0aGUgYWN0aXZlIGNsYXNzIGZvciBhIHRyYW5zaXRpb24uXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkZGlyIC0gU3RhdGUgdG8gYWN0aXZhdGUgYSB0cmFuc2l0aW9uIG9uLlxuQG1peGluIHRyYW5zaXRpb24tZW5kKCRkaXIpIHtcbiAgJHNlbGVjdG9yOiAtbXVpLWJ1aWxkLXNlbGVjdG9yKG1hcC1nZXQoJG1vdGlvbi11aS1zdGF0ZXMsICRkaXIpLCB0cnVlKTtcblxuICBAYXQtcm9vdCB7XG4gICAgI3skc2VsZWN0b3J9IHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfVxufVxuXG4vLy8gQWRkcyBzdHlsZXMgZm9yIGEgc3RhZ2dlciBhbmltYXRpb24sIHdoaWNoIGNhbiBiZSB1c2VkIHdpdGggQW5ndWxhcidzIGBuZy1yZXBlYXRgLlxuLy8vIEBwYXJhbSB7RHVyYXRpb259ICRkZWxheS1hbW91bnQgLSBBbW91bnQgb2YgdGltZSBpbiBzZWNvbmRzIG9yIG1pbGxpc2Vjb25kcyB0byBhZGQgYmV0d2VlbiBlYWNoIGl0ZW0ncyBhbmltYXRpb24uXG5AbWl4aW4gc3RhZ2dlcigkZGVsYXktYW1vdW50KSB7XG4gIHRyYW5zaXRpb24tZGVsYXk6ICRkZWxheS1hbW91bnQ7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDA7IC8vIFByZXZlbnQgYWNjaWRlbnRhbCBDU1MgaW5oZXJpdGFuY2Vcbn1cbiIsIi8vIHNjc3MtbGludDpkaXNhYmxlIEltcG9ydGFudFJ1bGUsIFNwYWNlQWZ0ZXJDb21tYSwgU2luZ2xlTGluZVBlclByb3BlcnR5XG5cbkBtaXhpbiAtbW90aW9uLXVpLWRlZmF1bHRzIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogbWFwLWdldCgkbW90aW9uLXVpLXNwZWVkcywgZGVmYXVsdCk7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBtYXAtZ2V0KCRtb3Rpb24tdWktZWFzaW5ncywgZGVmYXVsdCk7XG59XG5cbi8vIFRyYW5zaXRpb25zXG4vLyAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLVxuQG1peGluIG1vdGlvbi11aS10cmFuc2l0aW9ucyB7XG4gIC8vIFNsaWRlXG4gIC5zbGlkZS1pbi1kb3duICAgIHsgQGluY2x1ZGUgbXVpLXNsaWRlKGluLCAgZG93bik7IH1cbiAgLnNsaWRlLWluLWxlZnQgICAgeyBAaW5jbHVkZSBtdWktc2xpZGUoaW4sICByaWdodCk7IH1cbiAgLnNsaWRlLWluLXVwICAgICAgeyBAaW5jbHVkZSBtdWktc2xpZGUoaW4sICB1cCk7IH1cbiAgLnNsaWRlLWluLXJpZ2h0ICAgeyBAaW5jbHVkZSBtdWktc2xpZGUoaW4sICBsZWZ0KTsgfVxuICAuc2xpZGUtb3V0LWRvd24gICB7IEBpbmNsdWRlIG11aS1zbGlkZShvdXQsIGRvd24pOyB9XG4gIC5zbGlkZS1vdXQtcmlnaHQgIHsgQGluY2x1ZGUgbXVpLXNsaWRlKG91dCwgcmlnaHQpOyB9XG4gIC5zbGlkZS1vdXQtdXAgICAgIHsgQGluY2x1ZGUgbXVpLXNsaWRlKG91dCwgdXApOyB9XG4gIC5zbGlkZS1vdXQtbGVmdCAgIHsgQGluY2x1ZGUgbXVpLXNsaWRlKG91dCwgbGVmdCk7IH1cblxuICAvLyBGYWRlXG4gIC5mYWRlLWluICB7IEBpbmNsdWRlIG11aS1mYWRlKGluLCAgMCwgMSk7IH1cbiAgLmZhZGUtb3V0IHsgQGluY2x1ZGUgbXVpLWZhZGUob3V0LCAxLCAwKTsgfVxuXG4gIC8vIEhpbmdlXG4gIC5oaW5nZS1pbi1mcm9tLXRvcCAgICAgIHsgQGluY2x1ZGUgbXVpLWhpbmdlKGluLCAgdG9wKTsgfVxuICAuaGluZ2UtaW4tZnJvbS1yaWdodCAgICB7IEBpbmNsdWRlIG11aS1oaW5nZShpbiwgIHJpZ2h0KTsgfVxuICAuaGluZ2UtaW4tZnJvbS1ib3R0b20gICB7IEBpbmNsdWRlIG11aS1oaW5nZShpbiwgIGJvdHRvbSk7IH1cbiAgLmhpbmdlLWluLWZyb20tbGVmdCAgICAgeyBAaW5jbHVkZSBtdWktaGluZ2UoaW4sICBsZWZ0KTsgfVxuICAuaGluZ2UtaW4tZnJvbS1taWRkbGUteCAgeyBAaW5jbHVkZSBtdWktaGluZ2UoaW4sICB0b3AsICAgY2VudGVyKTsgfVxuICAuaGluZ2UtaW4tZnJvbS1taWRkbGUteSAgeyBAaW5jbHVkZSBtdWktaGluZ2UoaW4sICByaWdodCwgY2VudGVyKTsgfVxuICAuaGluZ2Utb3V0LWZyb20tdG9wICAgICB7IEBpbmNsdWRlIG11aS1oaW5nZShvdXQsIHRvcCk7IH1cbiAgLmhpbmdlLW91dC1mcm9tLXJpZ2h0ICAgeyBAaW5jbHVkZSBtdWktaGluZ2Uob3V0LCByaWdodCk7IH1cbiAgLmhpbmdlLW91dC1mcm9tLWJvdHRvbSAgeyBAaW5jbHVkZSBtdWktaGluZ2Uob3V0LCBib3R0b20pOyB9XG4gIC5oaW5nZS1vdXQtZnJvbS1sZWZ0ICAgIHsgQGluY2x1ZGUgbXVpLWhpbmdlKG91dCwgbGVmdCk7IH1cbiAgLmhpbmdlLW91dC1mcm9tLW1pZGRsZS14IHsgQGluY2x1ZGUgbXVpLWhpbmdlKG91dCwgdG9wLCAgIGNlbnRlcik7IH1cbiAgLmhpbmdlLW91dC1mcm9tLW1pZGRsZS15IHsgQGluY2x1ZGUgbXVpLWhpbmdlKG91dCwgcmlnaHQsIGNlbnRlcik7IH1cblxuICAvLyBTY2FsZVxuICAuc2NhbGUtaW4tdXAgICAgeyBAaW5jbHVkZSBtdWktem9vbShpbiwgIDAuNSwgMSk7IH1cbiAgLnNjYWxlLWluLWRvd24gIHsgQGluY2x1ZGUgbXVpLXpvb20oaW4sICAxLjUsIDEpOyB9XG4gIC5zY2FsZS1vdXQtdXAgICB7IEBpbmNsdWRlIG11aS16b29tKG91dCwgMSwgMS41KTsgfVxuICAuc2NhbGUtb3V0LWRvd24geyBAaW5jbHVkZSBtdWktem9vbShvdXQsIDEsIDAuNSk7IH1cblxuICAvLyBTcGluXG4gIC5zcGluLWluICAgICB7IEBpbmNsdWRlIG11aS1zcGluKGluLCAgY3cpOyB9XG4gIC5zcGluLW91dCAgICB7IEBpbmNsdWRlIG11aS1zcGluKG91dCwgY3cpOyB9XG4gIC5zcGluLWluLWNjdyAgeyBAaW5jbHVkZSBtdWktc3BpbihpbiwgIGNjdyk7IH1cbiAgLnNwaW4tb3V0LWNjdyB7IEBpbmNsdWRlIG11aS1zcGluKG91dCwgY2N3KTsgfVxuXG4gIC8vIFRyYW5zaXRpb24gTW9kaWZpZXJzXG4gIC8vIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtXG5cbiAgQGVhY2ggJG5hbWUsICR2YWx1ZSBpbiAkbW90aW9uLXVpLXNwZWVkcyB7XG4gICAgQGlmICRuYW1lICE9IGRlZmF1bHQge1xuICAgICAgLiN7JG5hbWV9IHsgdHJhbnNpdGlvbi1kdXJhdGlvbjogJHZhbHVlICFpbXBvcnRhbnQ7IH1cbiAgICB9XG4gIH1cblxuICBAZWFjaCAkbmFtZSwgJHZhbHVlIGluICRtb3Rpb24tdWktZWFzaW5ncyB7XG4gICAgQGlmICRuYW1lICE9IGRlZmF1bHQge1xuICAgICAgLiN7JG5hbWV9IHsgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246ICR2YWx1ZSAhaW1wb3J0YW50OyB9XG4gICAgfVxuICB9XG5cbiAgQGVhY2ggJG5hbWUsICR2YWx1ZSBpbiAkbW90aW9uLXVpLWRlbGF5cyB7XG4gICAgQGlmICRuYW1lICE9IGRlZmF1bHQge1xuICAgICAgLiN7JG5hbWV9LWRlbGF5IHsgdHJhbnNpdGlvbi1kZWxheTogJHZhbHVlICFpbXBvcnRhbnQ7IH1cbiAgICB9XG4gIH1cbn1cblxuLy8gQW5pbWF0aW9uc1xuLy8gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC1cbkBtaXhpbiBtb3Rpb24tdWktYW5pbWF0aW9ucyB7XG4gIC5zaGFrZSAgICB7IEBpbmNsdWRlIG11aS1hbmltYXRpb24oc2hha2UpOyB9XG4gIC5zcGluLWN3ICB7IEBpbmNsdWRlIG11aS1hbmltYXRpb24oc3Bpbik7IH1cbiAgLnNwaW4tY2N3IHsgQGluY2x1ZGUgbXVpLWFuaW1hdGlvbihzcGluKGNjdykpOyB9XG4gIC53aWdnbGUgICB7IEBpbmNsdWRlIG11aS1hbmltYXRpb24od2lnZ2xlKTsgfVxuXG4gIC5zaGFrZSxcbiAgLnNwaW4tY3csXG4gIC5zcGluLWNjdyxcbiAgLndpZ2dsZSB7XG4gICAgYW5pbWF0aW9uLWR1cmF0aW9uOiBtYXAtZ2V0KCRtb3Rpb24tdWktc3BlZWRzLCBkZWZhdWx0KTtcbiAgfVxuXG4gIC8vIEFuaW1hdGlvbiBNb2RpZmllcnNcbiAgLy8gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC1cbiAgLmluZmluaXRlIHsgYW5pbWF0aW9uLWl0ZXJhdGlvbi1jb3VudDogaW5maW5pdGU7IH1cblxuICBAZWFjaCAkbmFtZSwgJHZhbHVlIGluICRtb3Rpb24tdWktc3BlZWRzIHtcbiAgICBAaWYgJG5hbWUgIT0gZGVmYXVsdCB7XG4gICAgICAuI3skbmFtZX0geyBhbmltYXRpb24tZHVyYXRpb246ICR2YWx1ZSAhaW1wb3J0YW50OyB9XG4gICAgfVxuICB9XG5cbiAgQGVhY2ggJG5hbWUsICR2YWx1ZSBpbiAkbW90aW9uLXVpLWVhc2luZ3Mge1xuICAgIEBpZiAkbmFtZSAhPSBkZWZhdWx0IHtcbiAgICAgIC4jeyRuYW1lfSB7IGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246ICR2YWx1ZSAhaW1wb3J0YW50OyB9XG4gICAgfVxuICB9XG5cbiAgQGVhY2ggJG5hbWUsICR2YWx1ZSBpbiAkbW90aW9uLXVpLWRlbGF5cyB7XG4gICAgQGlmICRuYW1lICE9IGRlZmF1bHQge1xuICAgICAgLiN7JG5hbWV9LWRlbGF5IHsgYW5pbWF0aW9uLWRlbGF5OiAkdmFsdWUgIWltcG9ydGFudDsgfVxuICAgIH1cbiAgfVxufVxuIiwiLy8vIEZvcm1hdCBmb3IgQ1NTIGNsYXNzZXMgY3JlYXRlZCB3aXRoIE1vdGlvbiBVSS5cbi8vLyBAdHlwZSBNYXBcbi8vLyBAcHJvcCB7Qm9vbGVhbn0gYXBwZW5kIFt0cnVlXSAtIERlZmluZXMgaWYgc2VsZWN0b3JzIGFyZSBjaGFpbmVkIHRvIHRoZSBzZWxlY3RvciAoYC5jbGFzcy5lbnRlcmApLCBvciBhcHBlbmRlZCBhcyBhIG5ldyBjbGFzcyAoYC5jbGFzcy1lbnRlcmApLlxuLy8vIEBwcm9wIHtTdHJpbmd9IHByZWZpeCBbJ211aS0nXSAtIFByZWZpeCB0byBhZGQgYmVmb3JlIHRoZSBzdGF0ZSBvZiBhIGNsYXNzLiBFbnRlciBhbiBlbXB0eSBzdHJpbmcgdG8gdXNlIG5vIHByZWZpeC5cbi8vLyBAcHJvcCB7U3RyaW5nfSBwcmVmaXggWyctYWN0aXZlJ10gLSBTdWZmaXggdG8gYWRkIHRvIHRoZSBhY3RpdmUgc3RhdGUgY2xhc3MuXG4kbW90aW9uLXVpLWNsYXNzZXM6IChcbiAgY2hhaW46IHRydWUsXG4gIHByZWZpeDogJ211aS0nLFxuICBhY3RpdmU6ICctYWN0aXZlJyxcbikgIWRlZmF1bHQ7XG5cbi8vLyBTdGF0ZSBuYW1lcyB0byByZWZlcmVuY2Ugd2hlbiB3cml0aW5nIG1vdGlvbiBjbGFzc2VzLiBUbyB1c2UgbXVsdGlwbGUgY2xhc3MgbmFtZXMgZm9yIG9uZSBzdGF0ZSwgZW50ZXIgYSBsaXN0IG9mIHN0cmluZ3MgaW5zdGVhZCBvZiBvbmUgc3RyaW5nLlxuLy8vIEB0eXBlIE1hcFxuJG1vdGlvbi11aS1zdGF0ZXM6IChcbiAgaW46ICdlbnRlcicsXG4gIG91dDogJ2xlYXZlJyxcbikgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHNwZWVkIHRoYXQgdHJhbnNpdGlvbnMgYW5kIGFuaW1hdGlvbnMgcGxheSBhdCwgYWxvbmcgd2l0aCB2YWx1ZXMgZm9yIG1vZGlmaWVyIGNsYXNzZXMgdG8gY2hhbmdlIHRoZSBzcGVlZC5cbi8vLyBAdHlwZSBNYXBcbiRtb3Rpb24tdWktc3BlZWRzOiAoXG4gIGRlZmF1bHQ6IDUwMG1zLFxuICBzbG93OiA3NTBtcyxcbiAgZmFzdDogMjUwbXMsXG4pICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBkZWxheSB0byBhZGQgYmVmb3JlIG1vdGlvbiwgYWxvbmcgd2l0aCB2YWx1ZXMgZm9yIG1vZGlmaWVyIGNsYXNzZXMgdG8gY2hhbmdlIHRoZSBkZWxheS5cbi8vLyBAdHlwZSBNYXBcbiRtb3Rpb24tdWktZGVsYXlzOiAoXG4gIGRlZmF1bHQ6IDAsXG4gIHNob3J0OiAzMDBtcyxcbiAgbG9uZzogNzAwbXMsXG4pICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBlYXNpbmcgZm9yIHRyYW5zaXRpb25zIGFuZCBhbmltYXRpb25zLCBhbG9uZyB3aXRoIHZhbHVlcyBmb3IgbW9kaWZpZXIgY2xhc3NlcyB0byBjaGFuZ2UgdGhlIGVhc2luZy5cbi8vLyBAdHlwZSBNYXBcbiRtb3Rpb24tdWktZWFzaW5nczogKFxuICBkZWZhdWx0OiBsaW5lYXIsXG4gIGxpbmVhcjogbGluZWFyLFxuICBlYXNlOiBlYXNlLFxuICBlYXNlLWluOiBlYXNlLWluLFxuICBlYXNlLW91dDogZWFzZS1vdXQsXG4gIGVhc2UtaW4tb3V0OiBlYXNlLWluLW91dCxcbiAgYm91bmNlLWluOiBjdWJpYy1iZXppZXIoMC40ODUsIDAuMTU1LCAwLjI0LCAxLjI0NSksXG4gIGJvdW5jZS1vdXQ6IGN1YmljLWJlemllcigwLjQ4NSwgMC4xNTUsIDAuNTE1LCAwLjg0NSksXG4gIGJvdW5jZS1pbi1vdXQ6IGN1YmljLWJlemllcigwLjc2LCAtMC4yNDUsIDAuMjQsIDEuMjQ1KSxcbikgIWRlZmF1bHQ7XG5cbi8vLyBNaXNjZWxsYW5lb3VzIHNldHRpbmdzIHJlbGF0ZWQgdG8gTW90aW9uIFVJLlxuLy8vIEB0eXBlIE1hcFxuLy8vIEBwcm9wIHtCb29sZWFufSBzbGlkZS1hbmQtZmFkZSBbZmFsc2VdIC0gRGVmaW5lcyBpZiBzbGlkZSBtb3Rpb25zIHNob3VsZCBhbHNvIGZhZGUgaW4vb3V0LlxuLy8vIEBwcm9wIHtCb29sZWFufSBzbGlkZS1hbmQtZmFkZSBbdHJ1ZV0gLSBEZWZpbmVzIGlmIGhpbmdlIG1vdGlvbnMgc2hvdWxkIGFsc28gZmFkZSBpbi9vdXQuXG4vLy8gQHByb3Age0Jvb2xlYW59IHNsaWRlLWFuZC1mYWRlIFt0cnVlXSAtIERlZmluZXMgaWYgc2NhbGUgbW90aW9ucyBzaG91bGQgYWxzbyBmYWRlIGluL291dC5cbi8vLyBAcHJvcCB7Qm9vbGVhbn0gc2xpZGUtYW5kLWZhZGUgW3RydWVdIC0gRGVmaW5lcyBpZiBzcGluIG1vdGlvbnMgc2hvdWxkIGFsc28gZmFkZSBpbi9vdXQuXG4kbW90aW9uLXVpLXNldHRpbmdzOiAoXG4gIHNsaWRlLWFuZC1mYWRlOiBmYWxzZSxcbiAgaGluZ2UtYW5kLWZhZGU6IHRydWUsXG4gIHNjYWxlLWFuZC1mYWRlOiB0cnVlLFxuICBzcGluLWFuZC1mYWRlOiB0cnVlLFxuICBhY3RpdmF0ZS1xdWV1ZS1jbGFzczogJ2lzLWFuaW1hdGluZycsXG4pICFkZWZhdWx0O1xuIiwiLy8gSW50ZXJuYWwgY291bnRlciBmb3IgY3JlYXRpbmcgdW5pcXVlIGtleWZyYW1lIG5hbWVzXG4kLW11aS1jdXN0b206IDA7XG5cbi8vLyBDcmVhdGVzIGEga2V5ZnJhbWUgZnJvbSBvbmUgb3IgbW9yZSBlZmZlY3QgZnVuY3Rpb25zLiBVc2UgdGhpcyBmdW5jdGlvbiBpbnN0ZWFkIG9mIGBtdWktYW5pbWF0aW9uYCBpZiB5b3Ugd2FudCB0byBjcmVhdGUgYSBrZXlmcmFtZSBhbmltYXRpb24gKndpdGhvdXQqIGF1dG9tYXRpY2FsbHkgYXNzaWduaW5nIGl0IHRvIHRoZSBlbGVtZW50LlxuLy8vIEBwYXJhbSB7U3RyaW5nfSAkbmFtZSAtIE5hbWUgb2YgdGhlIGtleWZyYW1lLlxuLy8vIEBwYXJhbSB7RnVuY3Rpb259ICRlZmZlY3RzLi4uIC0gT25lIG9yIG1vcmUgZWZmZWN0IGZ1bmN0aW9ucyB0byBidWlsZCB0aGUga2V5ZnJhbWUgd2l0aC5cbkBtaXhpbiBtdWkta2V5ZnJhbWVzKCRuYW1lLCAkZWZmZWN0cy4uLikge1xuICAkb2JqOiAtbXVpLXByb2Nlc3MtYXJncygkZWZmZWN0cy4uLik7XG4gICRvYmo6IG1hcC1yZW1vdmUoJG9iaiwgbmFtZSk7XG5cbiAgQGtleWZyYW1lcyAjeyRuYW1lfSB7XG4gICAgLy8gTm93IGl0ZXJhdGUgdGhyb3VnaCBlYWNoIGtleWZyYW1lIHBlcmNlbnRhZ2VcbiAgICBAZWFjaCAkcGN0LCAkcHJvcHMgaW4gJG9iaiB7XG4gICAgICAjey1tdWkta2V5ZnJhbWUtcGN0KCRwY3QpfSB7XG4gICAgICAgIC8vIExhc3RseSwgaXRlcmF0ZSB0aHJvdWdoIGVhY2ggQ1NTIHByb3BlcnR5IHdpdGhpbiBhIHBlcmNlbnRhZ2UgYW5kIHByaW50IGl0IG91dFxuICAgICAgICBAZWFjaCAkcHJvcCwgJHZhbHVlIGluICRwcm9wcyB7XG4gICAgICAgICAgI3skcHJvcH06ICN7JHZhbHVlfTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vLy8gQ3JlYXRlcyBhIHN0cmluZyBmb3IgYSBDU1Mga2V5ZnJhbWUsIGJ5IGNvbnZlcnRpbmcgYSBsaXN0IG9mIG51bWJlcnMgdG8gYSBjb21tYS1zZXBhcmF0ZWQgbGlzdCBvZiBwZXJjZW50YWdlIHZhbHVlcy5cbi8vLyBAcGFyYW0ge051bWJlcnxMaXN0fSAkaW5wdXQgLSBMaXN0IG9mIG51bWJlcnMgdG8gdXNlLlxuLy8vIEByZXR1cm4ge1N0cmluZ30gQSBzZXQgb2YgY29tbWEtc2VwYXJhdGVkIHBlcmNlbnRhZ2UgdmFsdWVzLlxuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuQGZ1bmN0aW9uIC1tdWkta2V5ZnJhbWUtcGN0KCRpbnB1dCkge1xuICAkb3V0cHV0OiAoKTtcblxuICBAaWYgdHlwZS1vZigkaW5wdXQpID09ICdudW1iZXInIHtcbiAgICAkb3V0cHV0OiAoJGlucHV0ICogMSUpO1xuICB9IEBlbHNlIGlmIHR5cGUtb2YoJGlucHV0KSA9PSAnbGlzdCcge1xuICAgIEBlYWNoICRpIGluICRpbnB1dCB7XG4gICAgICAkb3V0cHV0OiBhcHBlbmQoJG91dHB1dCwgKCRpICogMSUpLCBjb21tYSk7XG4gICAgfVxuICB9XG5cbiAgQHJldHVybiAkb3V0cHV0O1xufVxuXG4vLy8gUHJpbnRzIHRoZSBDU1MgcHJvcGVydGllcyBmcm9tIGEgc3BlY2lmaWMga2V5IGluIGEga2V5ZnJhbWVzIG1hcC4gVXNlZCB0byBib3Jyb3cgQ1NTIGZyb20ga2V5ZnJhbWUgZnVuY3Rpb25zIGZvciB1c2UgaW4gdHJhbnNpdGlvbnMuXG4vLy8gQHBhcmFtIHtNYXB9ICRrZiAtIEtleWZyYW1lIG1hcCB0byBleHRyYWN0IGZyb20uXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRrZXkgLSBLZXkgaW4gdGhlIG1hcCB0byBwcmludCB0aGUgQ1NTIG9mLlxuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuQG1peGluIC1tdWkta2V5ZnJhbWUtZ2V0KCRrZiwgJGtleSkge1xuICAkbWFwOiBtYXAtZ2V0KCRrZiwgJGtleSk7XG5cbiAgQGVhY2ggJHByb3AsICR2YWx1ZSBpbiAkbWFwIG9yICgpIHtcbiAgICAvLyBTb21lIGtleWZyYW1lIG1hcHMgc3RvcmUgdHJhbnNmb3JtcyBhcyBxdW90ZWQgc3RyaW5nc1xuICAgIEBpZiB0eXBlLW9mKCR2YWx1ZSkgPT0gJ3N0cmluZycge1xuICAgICAgJHZhbHVlOiB1bnF1b3RlKCR2YWx1ZSk7XG4gICAgfVxuICAgICN7JHByb3B9OiAkdmFsdWU7XG4gIH1cbn1cblxuLy8vIFJlZm9ybWF0cyBhIG1hcCBjb250YWluaW5nIGtleXMgd2l0aCBhIGxpc3Qgb2YgdmFsdWVzLCBzbyB0aGF0IGVhY2gga2V5IGlzIGEgc2luZ2xlIHZhbHVlLlxuLy8vIEBwYXJhbSB7TWFwfSAkbWFwIC0gTWFwIHRvIHNwbGl0IHVwLlxuLy8vIEByZXR1cm4ge01hcH0gQSByZWZvcm1hdHRlZCBtYXAuXG4vLy8gQGFjY2VzcyBwcml2YXRlXG5AZnVuY3Rpb24gLW11aS1rZXlmcmFtZS1zcGxpdCgkbWFwKSB7XG4gICRuZXctbWFwOiAoKTtcblxuICAvLyBTcGxpdCBrZXlzIHdpdGggbXVsdGlwbGUgdmFsdWVzIGludG8gaW5kaXZpZHVhbCBrZXlzXG4gIEBlYWNoICRrZXksICRpdGVtIGluICRtYXAge1xuICAgICRrZXktdHlwZTogdHlwZS1vZigka2V5KTtcblxuICAgIEBpZiAka2V5LXR5cGUgPT0gJ251bWJlcicge1xuICAgICAgJG5ldy1tYXA6IG1hcC1tZXJnZSgkbmV3LW1hcCwgKCRrZXk6ICRpdGVtKSk7XG4gICAgfSBAZWxzZSBpZiAka2V5LXR5cGUgPT0gJ2xpc3QnIHtcbiAgICAgIEBlYWNoICRrIGluICRrZXkge1xuICAgICAgICAkbmV3LW1hcDogbWFwLW1lcmdlKCRuZXctbWFwLCAoJGs6ICRpdGVtKSk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgQHJldHVybiAkbmV3LW1hcDtcbn1cblxuLy8vIENvbWJpbmVzIGEgc2VyaWVzIG9mIGtleWZyYW1lIG9iamVjdHMgaW50byBvbmUuXG4vLy8gQHBhcmFtIHtNYXB9ICRtYXBzLi4uIC0gQSBzZXJpZXMgb2YgbWFwcyB0byBtZXJnZSwgYXMgaW5kaXZpZHVhbCBwYXJhbWV0ZXJzLlxuLy8vIEByZXR1cm4ge01hcH0gQSBjb21iaW5lZCBrZXlmcmFtZSBvYmplY3QuXG4vLy8gQGFjY2VzcyBwcml2YXRlXG5AZnVuY3Rpb24gLW11aS1rZXlmcmFtZS1jb21iaW5lKCRtYXBzLi4uKSB7XG4gICRuZXctbWFwOiAoKTtcblxuICAvLyBJdGVyYXRlIHRocm91Z2ggZWFjaCBtYXAgcGFzc2VkIGluXG4gIEBlYWNoICRtYXAgaW4gJG1hcHMge1xuICAgIEBpZiB0eXBlLW9mKCRtYXApID09ICdzdHJpbmcnIHtcbiAgICAgICRtYXA6IGNhbGwoJG1hcCk7XG4gICAgfVxuXG4gICAgJG1hcDogLW11aS1rZXlmcmFtZS1zcGxpdCgkbWFwKTtcblxuICAgIC8vIEl0ZXJhdGUgdGhyb3VnaCBlYWNoIGtleWZyYW1lIGluIHRoZSBtYXBcbiAgICAvLyAka2V5IGlzIHRoZSBrZXlmcmFtZSBwZXJjZW50YWdlXG4gICAgLy8gJHZhbHVlIGlzIGEgbWFwIG9mIENTUyBwcm9wZXJ0aWVzXG4gICAgQGVhY2ggJGtleSwgJHZhbHVlIGluICRtYXAge1xuICAgICAgJG5ldy12YWx1ZTogKCk7XG5cbiAgICAgIEBpZiBtYXAtaGFzLWtleSgkbmV3LW1hcCwgJGtleSkge1xuICAgICAgICAvLyBJZiB0aGUgbWFwIGFscmVhZHkgaGFzIHRoZSBrZXlmcmFtZSAlLCBhcHBlbmQgdGhlIG5ldyBwcm9wZXJ0eVxuICAgICAgICAkbmV3LXZhbHVlOiAtbXVpLW1lcmdlLXByb3BlcnRpZXMobWFwLWdldCgkbmV3LW1hcCwgJGtleSksICR2YWx1ZSk7XG4gICAgICB9IEBlbHNlIHtcbiAgICAgICAgLy8gT3RoZXJ3aXNlLCBjcmVhdGUgYSBuZXcgbWFwIHdpdGggdGhlIG5ldyBwcm9wZXJ0eVxuICAgICAgICAkbmV3LXZhbHVlOiAkdmFsdWU7XG4gICAgICB9XG5cbiAgICAgIC8vIEZpbmFsbHksIG1lcmdlIHRoZSBtb2RpZmllZCBrZXlmcmFtZSB2YWx1ZSBpbnRvIHRoZSBvdXRwdXQgbWFwXG4gICAgICAkbmV3LW1hcDogbWFwLW1lcmdlKCRuZXctbWFwLCAoJGtleTogJG5ldy12YWx1ZSkpO1xuICAgIH1cbiAgfVxuXG4gIC8vIE1ha2UgYSBuYW1lIGZvciB0aGUga2V5ZnJhbWVzXG4gICQtbXVpLWN1c3RvbTogJC1tdWktY3VzdG9tICsgMSAhZ2xvYmFsO1xuICAkbWFwLW5hbWU6IChuYW1lOiAnY3VzdG9tLSN7JC1tdWktY3VzdG9tfScpO1xuICAkbmV3LW1hcDogbWFwLW1lcmdlKCRuZXctbWFwLCAkbWFwLW5hbWUpO1xuXG4gIEByZXR1cm4gJG5ldy1tYXA7XG59XG5cbi8vLyBDb21iaW5lcyB0d28gbWFwcyBvZiBDU1MgcHJvcGVydGllcyBpbnRvIG9uZSBtYXAuIElmIGJvdGggbWFwcyBoYXZlIGEgdHJhbnNmb3JtIHByb3BlcnR5LCB0aGUgdmFsdWVzIGZyb20gZWFjaCB3aWxsIGJlIGNvbWJpbmVkIGludG8gb25lIHByb3BlcnR5LlxuLy8vIEBwYXJhbSB7TWFwfSAkb25lIC0gRmlyc3QgbWFwIHRvIG1lcmdlLlxuLy8vIEBwYXJhbSB7TWFwfSAkdHdvIC0gU2Vjb25kIG1hcCB0byBtZXJnZS5cbi8vLyBAcmV0dXJuIHtNYXB9IEEgY29tYmluZWQgbWFwLlxuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuQGZ1bmN0aW9uIC1tdWktbWVyZ2UtcHJvcGVydGllcygkb25lLCAkdHdvKSB7XG4gIEBpZiBtYXAtaGFzLWtleSgkb25lLCB0cmFuc2Zvcm0pIGFuZCBtYXAtaGFzLWtleSgkdHdvLCB0cmFuc2Zvcm0pIHtcbiAgICAkdHJhbnNmb3JtOiBqb2luKG1hcC1nZXQoJG9uZSwgdHJhbnNmb3JtKSwgbWFwLWdldCgkdHdvLCB0cmFuc2Zvcm0pKTtcbiAgICAkb25lOiBtYXAtbWVyZ2UoJG9uZSwgKHRyYW5zZm9ybTogJHRyYW5zZm9ybSkpO1xuICAgICR0d286IG1hcC1yZW1vdmUoJHR3bywgdHJhbnNmb3JtKTtcbiAgfVxuXG4gIEByZXR1cm4gbWFwLW1lcmdlKCRvbmUsICR0d28pO1xufVxuIiwiLy8vIENyZWF0ZXMgYSBzbGlkaW5nIHRyYW5zaXRpb24gYnkgdHJhbnNsYXRpbmcgdGhlIGVsZW1lbnQgaG9yaXpvbnRhbGx5IG9yIHZlcnRpY2FsbHkuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkc3RhdGUgW2luXSAtIFN0YXRlIHRvIHRyYW5zaXRpb24gdG8uXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkZGlyZWN0aW9uIFtsZWZ0XSAtIERpcmVjdGlvbiB0byBzbGlkZSB0by4gQ2FuIGJlIGB1cGAsIGByaWdodGAsIGBkb3duYCwgb3IgYGxlZnRgLlxuLy8vIEBwYXJhbSB7TGVuZ3RofSAkYW1vdW50IFsxMDAlXSAtIExlbmd0aCBvZiB0aGUgc2xpZGUgYXMgYSBwZXJjZW50YWdlIHZhbHVlLlxuLy8vIEBwYXJhbSB7Qm9vbGVhbn0gJGZhZGUgW2ZhbHNlXSAtIFNldCB0byBgdHJ1ZWAgdG8gZmFkZSB0aGUgZWxlbWVudCBpbiBvciBvdXQgc2ltdWx0YW5lb3VzbHkuXG4vLy8gQHBhcmFtIHtEdXJhdGlvbn0gJGR1cmF0aW9uIFtudWxsXSAtIExlbmd0aCAoc3BlZWQpIG9mIHRoZSB0cmFuc2l0aW9uLlxuLy8vIEBwYXJhbSB7S2V5d29yZHxGdW5jdGlvbn0gJHRpbWluZyBbbnVsbF0gLSBFYXNpbmcgb2YgdGhlIHRyYW5zaXRpb24uXG4vLy8gQHBhcmFtIHtEdXJhdGlvbn0gJGRlbGF5IFtudWxsXSAtIERlbGF5IGluIHNlY29uZHMgb3IgbWlsbGlzZWNvbmRzIGJlZm9yZSB0aGUgdHJhbnNpdGlvbiBzdGFydHMuXG5AbWl4aW4gbXVpLXNsaWRlIChcbiAgJHN0YXRlOiBpbixcbiAgJGRpcmVjdGlvbjogbGVmdCxcbiAgJGFtb3VudDogMTAwJSxcbiAgJGZhZGU6IG1hcC1nZXQoJG1vdGlvbi11aS1zZXR0aW5ncywgc2xpZGUtYW5kLWZhZGUpLFxuICAkZHVyYXRpb246IG51bGwsXG4gICR0aW1pbmc6IG51bGwsXG4gICRkZWxheTogbnVsbFxuKSB7XG4gICRzbGlkZTogc2xpZGUoJHN0YXRlLCAkZGlyZWN0aW9uLCAkYW1vdW50KTtcblxuICAvLyBDU1MgT3V0cHV0XG4gIEBpbmNsdWRlIHRyYW5zaXRpb24tc3RhcnQoJHN0YXRlKSB7XG4gICAgQGluY2x1ZGUgdHJhbnNpdGlvbi1iYXNpY3MoJGR1cmF0aW9uLCAkdGltaW5nLCAkZGVsYXkpO1xuICAgIEBpbmNsdWRlIC1tdWkta2V5ZnJhbWUtZ2V0KCRzbGlkZSwgMCk7XG5cbiAgICBAaWYgJGZhZGUge1xuICAgICAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuICAgICAgb3BhY2l0eTogaWYoJHN0YXRlID09IGluLCAwLCAxKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgICB9XG5cbiAgICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gIH1cblxuICBAaW5jbHVkZSB0cmFuc2l0aW9uLWVuZCgkc3RhdGUpIHtcbiAgICBAaW5jbHVkZSAtbXVpLWtleWZyYW1lLWdldCgkc2xpZGUsIDEwMCk7XG5cbiAgICBAaWYgJGZhZGUge1xuICAgICAgb3BhY2l0eTogaWYoJHN0YXRlID09IGluLCAxLCAwKTtcbiAgICB9XG4gIH1cbn1cbiIsIi8vLyBDcmVhdGVzIGEgZmFkZSB0cmFuc2l0aW9uIGJ5IGFkanVzdGluZyB0aGUgb3BhY2l0eSBvZiB0aGUgZWxlbWVudC5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRzdGF0ZSBbaW5dIC0gU3RhdGUgdG8gdHJhbnNpdGlvbiB0by5cbi8vLyBAcGFyYW0ge051bWJlcn0gJGZyb20gWzBdIC0gT3BhY2l0eSB0byBzdGFydCBhdC4gTXVzdCBiZSBhIG51bWJlciBiZXR3ZWVuIDAgYW5kIDEuXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICR0byBbMV0gLSBPcGFjaXR5IHRvIGVuZCBvbi5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRkdXJhdGlvbiBbbnVsbF0gLSBMZW5ndGggKHNwZWVkKSBvZiB0aGUgdHJhbnNpdGlvbi5cbi8vLyBAcGFyYW0ge0tleXdvcmR8RnVuY3Rpb259ICR0aW1pbmcgW251bGxdIC0gRWFzaW5nIG9mIHRoZSB0cmFuc2l0aW9uLlxuLy8vIEBwYXJhbSB7RHVyYXRpb259ICRkZWxheSBbbnVsbF0gLSBEZWxheSBpbiBzZWNvbmRzIG9yIG1pbGxpc2Vjb25kcyBiZWZvcmUgdGhlIHRyYW5zaXRpb24gc3RhcnRzLlxuQG1peGluIG11aS1mYWRlKFxuICAkc3RhdGU6IGluLFxuICAkZnJvbTogMCxcbiAgJHRvOiAxLFxuICAkZHVyYXRpb246IG51bGwsXG4gICR0aW1pbmc6IG51bGwsXG4gICRkZWxheTogbnVsbFxuKSB7XG4gICRmYWRlOiBmYWRlKCRmcm9tLCAkdG8pO1xuXG4gIEBpbmNsdWRlIHRyYW5zaXRpb24tc3RhcnQoJHN0YXRlKSB7XG4gICAgQGluY2x1ZGUgdHJhbnNpdGlvbi1iYXNpY3MoJGR1cmF0aW9uLCAkdGltaW5nLCAkZGVsYXkpO1xuICAgIEBpbmNsdWRlIC1tdWkta2V5ZnJhbWUtZ2V0KCRmYWRlLCAwKTtcblxuICAgIHRyYW5zaXRpb24tcHJvcGVydHk6IG9wYWNpdHk7XG4gIH1cblxuICBAaW5jbHVkZSB0cmFuc2l0aW9uLWVuZCgkc3RhdGUpIHtcbiAgICBAaW5jbHVkZSAtbXVpLWtleWZyYW1lLWdldCgkZmFkZSwgMTAwKTtcbiAgfVxufVxuIiwiLy8vIENyZWF0ZXMgYSBoaW5nZSBlZmZlY3QgYnkgcm90YXRpbmcgdGhlIGVsZW1lbnQuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkc3RhdGUgW2luXSAtIFN0YXRlIHRvIHRyYW5zaXRpb24gdG8uXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkZnJvbSBbbGVmdF0gLSBFZGdlIG9mIHRoZSBlbGVtZW50IHRvIHJvdGF0ZSBmcm9tLiBDYW4gYmUgYHRvcGAsIGByaWdodGAsIGBib3R0b21gLCBvciBgbGVmdGAuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkYXhpcyBbZWRnZV0gLSBBeGlzIG9mIHRoZSBlbGVtZW50IHRvIHJvdGF0ZSBvbi4gQ2FuIGJlIGBlZGdlYCBvciBgY2VudGVyYC5cbi8vLyBAcGFyYW0ge051bWJlcn0gJHBlcnNwZWN0aXZlIFsyMDAwcHhdIC0gUGVyY2VpdmVkIGRpc3RhbmNlIGJldHdlZW4gdGhlIHZpZXdlciBhbmQgdGhlIGVsZW1lbnQuIEEgaGlnaGVyIG51bWJlciB3aWxsIG1ha2UgdGhlIHJvdGF0aW9uIGVmZmVjdCBtb3JlIHByb25vdW5jZWQuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkdHVybi1vcmlnaW4gW2Zyb20tYmFja10gLSBTaWRlIG9mIHRoZSBlbGVtZW50IHRvIHN0YXJ0IHRoZSByb3RhdGlvbiBmcm9tLiBDYW4gYmUgYGZyb20tYmFja2Agb3IgYGZyb20tZnJvbnRgLlxuQGZ1bmN0aW9uIGhpbmdlIChcbiAgJHN0YXRlOiBpbixcbiAgJGZyb206IGxlZnQsXG4gICRheGlzOiBlZGdlLFxuICAkcGVyc3BlY3RpdmU6IDIwMDBweCxcbiAgJHR1cm4tb3JpZ2luOiBmcm9tLWJhY2tcbikge1xuICAvLyBSb3RhdGlvbiBkaXJlY3Rpb25zIHdoZW4gaGluZ2luZyBmcm9tIGJhY2sgdnMuIGZyb250XG4gICRyb3RhdGlvbi1hbW91bnQ6IDkwZGVnO1xuICAkcm90YXRpb25zLWJhY2s6IChcbiAgICB0b3A6IHJvdGF0ZVgoJHJvdGF0aW9uLWFtb3VudCAqIC0xKSxcbiAgICByaWdodDogcm90YXRlWSgkcm90YXRpb24tYW1vdW50ICogLTEpLFxuICAgIGJvdHRvbTogcm90YXRlWCgkcm90YXRpb24tYW1vdW50KSxcbiAgICBsZWZ0OiByb3RhdGVZKCRyb3RhdGlvbi1hbW91bnQpLFxuICApO1xuICAkcm90YXRpb25zLWZyb206IChcbiAgICB0b3A6IHJvdGF0ZVgoJHJvdGF0aW9uLWFtb3VudCksXG4gICAgcmlnaHQ6IHJvdGF0ZVkoJHJvdGF0aW9uLWFtb3VudCksXG4gICAgYm90dG9tOiByb3RhdGVYKCRyb3RhdGlvbi1hbW91bnQgKiAtMSksXG4gICAgbGVmdDogcm90YXRlWSgkcm90YXRpb24tYW1vdW50ICogLTEpLFxuICApO1xuXG4gIC8vIFJvdGF0aW9uIG9yaWdpblxuICAkcm90YXRpb246ICcnO1xuICBAaWYgJHR1cm4tb3JpZ2luID09IGZyb20tZnJvbnQge1xuICAgICRyb3RhdGlvbjogbWFwLWdldCgkcm90YXRpb25zLWZyb20sICRmcm9tKTtcbiAgfSBAZWxzZSBpZiAkdHVybi1vcmlnaW4gPT0gZnJvbS1iYWNrIHtcbiAgICAkcm90YXRpb246IG1hcC1nZXQoJHJvdGF0aW9ucy1iYWNrLCAkZnJvbSk7XG4gIH0gQGVsc2Uge1xuICAgIEB3YXJuICckdHVybi1vcmlnaW4gbXVzdCBiZSBlaXRoZXIgXCJmcm9tLWJhY2tcIiBvciBcImZyb20tZnJvbnRcIic7XG4gIH1cblxuICAvLyBTdGFydCBhbmQgZW5kIHN0YXRlXG4gICRzdGFydDogJyc7XG4gICRlbmQ6ICcnO1xuICBAaWYgJHN0YXRlID09IGluIHtcbiAgICAkc3RhcnQ6IHBlcnNwZWN0aXZlKCRwZXJzcGVjdGl2ZSkgJHJvdGF0aW9uO1xuICAgICRlbmQ6IHBlcnNwZWN0aXZlKCRwZXJzcGVjdGl2ZSkgcm90YXRlKDBkZWcpO1xuICB9IEBlbHNlIHtcbiAgICAkc3RhcnQ6IHBlcnNwZWN0aXZlKCRwZXJzcGVjdGl2ZSkgcm90YXRlKDBkZWcpO1xuICAgICRlbmQ6IHBlcnNwZWN0aXZlKCRwZXJzcGVjdGl2ZSkgJHJvdGF0aW9uO1xuICB9XG5cbiAgLy8gVHVybiBheGlzXG4gICRvcmlnaW46ICcnO1xuICBAaWYgJGF4aXMgPT0gZWRnZSB7XG4gICAgJG9yaWdpbjogJGZyb207XG4gIH0gQGVsc2Uge1xuICAgICRvcmlnaW46IGNlbnRlcjtcbiAgfVxuXG4gICRrZXlmcmFtZXM6IChcbiAgICBuYW1lOiAnaGluZ2UtI3skc3RhdGV9LSN7JGZyb219LSN7JGF4aXN9LSN7JHR1cm4tb3JpZ2lufScsXG4gICAgMDogKHRyYW5zZm9ybTogJHN0YXJ0LCB0cmFuc2Zvcm0tb3JpZ2luOiAkb3JpZ2luKSxcbiAgICAxMDA6ICh0cmFuc2Zvcm06ICRlbmQpLFxuICApO1xuXG4gIEByZXR1cm4gJGtleWZyYW1lcztcbn1cbiIsIi8vLyBDcmVhdGVzIGEgaGluZ2UgdHJhbnNpdGlvbiBieSByb3RhdGluZyB0aGUgZWxlbWVudC5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRzdGF0ZSBbaW5dIC0gU3RhdGUgdG8gdHJhbnNpdGlvbiB0by5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRmcm9tIFtsZWZ0XSAtIEVkZ2Ugb2YgdGhlIGVsZW1lbnQgdG8gcm90YXRlIGZyb20uIENhbiBiZSBgdG9wYCwgYHJpZ2h0YCwgYGJvdHRvbWAsIG9yIGBsZWZ0YC5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRheGlzIFtlZGdlXSAtIEF4aXMgb2YgdGhlIGVsZW1lbnQgdG8gcm90YXRlIG9uLiBDYW4gYmUgYGVkZ2VgIG9yIGBjZW50ZXJgLlxuLy8vIEBwYXJhbSB7TGVuZ3RofSAkcGVyc3BlY3RpdmUgWzIwMDBweF0gLSBQZXJjZWl2ZWQgZGlzdGFuY2UgYmV0d2VlbiB0aGUgdmlld2VyIGFuZCB0aGUgZWxlbWVudC4gQSBoaWdoZXIgbnVtYmVyIHdpbGwgbWFrZSB0aGUgcm90YXRpb24gZWZmZWN0IG1vcmUgcHJvbm91bmNlZC5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICR0dXJuLW9yaWdpbiBbZnJvbS1iYWNrXSAtIFNpZGUgb2YgdGhlIGVsZW1lbnQgdG8gc3RhcnQgdGhlIHJvdGF0aW9uIGZyb20uIENhbiBiZSBgZnJvbS1iYWNrYCBvciBgZnJvbS1mcm9udGAuXG4vLy8gQHBhcmFtIHtCb29sZWFufSAkZmFkZSBbdHJ1ZV0gLSBTZXQgdG8gYHRydWVgIHRvIGZhZGUgdGhlIGVsZW1lbnQgaW4gb3Igb3V0IHNpbXVsdGFuZW91c2x5LlxuLy8vIEBwYXJhbSB7RHVyYXRpb259ICRkdXJhdGlvbiBbbnVsbF0gLSBMZW5ndGggKHNwZWVkKSBvZiB0aGUgdHJhbnNpdGlvbi5cbi8vLyBAcGFyYW0ge0tleXdvcmR8RnVuY3Rpb259ICR0aW1pbmcgW251bGxdIC0gRWFzaW5nIG9mIHRoZSB0cmFuc2l0aW9uLlxuLy8vIEBwYXJhbSB7RHVyYXRpb259ICRkZWxheSBbbnVsbF0gLSBEZWxheSBpbiBzZWNvbmRzIG9yIG1pbGxpc2Vjb25kcyBiZWZvcmUgdGhlIHRyYW5zaXRpb24gc3RhcnRzLlxuQG1peGluIG11aS1oaW5nZSAoXG4gICRzdGF0ZTogaW4sXG4gICRmcm9tOiBsZWZ0LFxuICAkYXhpczogZWRnZSxcbiAgJHBlcnNwZWN0aXZlOiAyMDAwcHgsXG4gICR0dXJuLW9yaWdpbjogZnJvbS1iYWNrLFxuICAkZmFkZTogbWFwLWdldCgkbW90aW9uLXVpLXNldHRpbmdzLCBoaW5nZS1hbmQtZmFkZSksXG4gICRkdXJhdGlvbjogbnVsbCxcbiAgJHRpbWluZzogbnVsbCxcbiAgJGRlbGF5OiBudWxsXG4pIHtcbiAgJGhpbmdlOiBoaW5nZSgkc3RhdGUsICRmcm9tLCAkYXhpcywgJHBlcnNwZWN0aXZlLCAkdHVybi1vcmlnaW4pO1xuXG4gIEBpbmNsdWRlIHRyYW5zaXRpb24tc3RhcnQoJHN0YXRlKSB7XG4gICAgQGluY2x1ZGUgdHJhbnNpdGlvbi1iYXNpY3MoJGR1cmF0aW9uLCAkdGltaW5nLCAkZGVsYXkpO1xuICAgIEBpbmNsdWRlIC1tdWkta2V5ZnJhbWUtZ2V0KCRoaW5nZSwgMCk7XG5cbiAgICBAaWYgJGZhZGUge1xuICAgICAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuICAgICAgb3BhY2l0eTogaWYoJHN0YXRlID09IGluLCAwLCAxKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgICB9XG4gIH1cblxuICBAaW5jbHVkZSB0cmFuc2l0aW9uLWVuZCgkc3RhdGUpIHtcbiAgICBAaW5jbHVkZSAtbXVpLWtleWZyYW1lLWdldCgkaGluZ2UsIDEwMCk7XG5cbiAgICBAaWYgJGZhZGUge1xuICAgICAgb3BhY2l0eTogaWYoJHN0YXRlID09IGluLCAxLCAwKTtcbiAgICB9XG4gIH1cbn1cbiIsIi8vLyBDcmVhdGVzIGEgc2NhbGluZyB0cmFuc2l0aW9uLiBBIHNjYWxlIG9mIGAxYCBtZWFucyB0aGUgZWxlbWVudCBpcyB0aGUgc2FtZSBzaXplLiBMYXJnZXIgbnVtYmVycyBtYWtlIHRoZSBlbGVtZW50IGJpZ2dlciwgd2hpbGUgbnVtYmVycyBsZXNzIHRoYW4gMSBtYWtlIHRoZSBlbGVtZW50IHNtYWxsZXIuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkc3RhdGUgW2luXSAtIFN0YXRlIHRvIHRyYW5zaXRpb24gdG8uXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRmcm9tIFsxLjVdIC0gU2l6ZSB0byBzdGFydCBhdC5cbi8vLyBAcGFyYW0ge051bWJlcn0gJGZyb20gWzFdIC0gU2l6ZSB0byBlbmQgYXQuXG4vLy8gQHBhcmFtIHtCb29sZWFufSAkZmFkZSBbdHJ1ZV0gLSBTZXQgdG8gYHRydWVgIHRvIGZhZGUgdGhlIGVsZW1lbnQgaW4gb3Igb3V0IHNpbXVsdGFuZW91c2x5LlxuLy8vIEBwYXJhbSB7RHVyYXRpb259ICRkdXJhdGlvbiBbbnVsbF0gLSBMZW5ndGggKHNwZWVkKSBvZiB0aGUgdHJhbnNpdGlvbi5cbi8vLyBAcGFyYW0ge0tleXdvcmR8RnVuY3Rpb259ICR0aW1pbmcgW251bGxdIC0gRWFzaW5nIG9mIHRoZSB0cmFuc2l0aW9uLlxuLy8vIEBwYXJhbSB7RHVyYXRpb259ICRkZWxheSBbbnVsbF0gLSBEZWxheSBpbiBzZWNvbmRzIG9yIG1pbGxpc2Vjb25kcyBiZWZvcmUgdGhlIHRyYW5zaXRpb24gc3RhcnRzLlxuQG1peGluIG11aS16b29tKFxuICAkc3RhdGU6IGluLFxuICAkZnJvbTogMS41LFxuICAkdG86IDEsXG4gICRmYWRlOiBtYXAtZ2V0KCRtb3Rpb24tdWktc2V0dGluZ3MsIHNjYWxlLWFuZC1mYWRlKSxcbiAgJGR1cmF0aW9uOiBudWxsLFxuICAkdGltaW5nOiBudWxsLFxuICAkZGVsYXk6IG51bGxcbikge1xuICAkc2NhbGU6IHpvb20oJGZyb20sICR0byk7XG5cbiAgQGluY2x1ZGUgdHJhbnNpdGlvbi1zdGFydCgkc3RhdGUpIHtcbiAgICBAaW5jbHVkZSB0cmFuc2l0aW9uLWJhc2ljcygkZHVyYXRpb24sICR0aW1pbmcsICRkZWxheSk7XG4gICAgQGluY2x1ZGUgLW11aS1rZXlmcmFtZS1nZXQoJHNjYWxlLCAwKTtcblxuICAgIEBpZiAkZmFkZSB7XG4gICAgICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG4gICAgICBvcGFjaXR5OiBpZigkc3RhdGUgPT0gaW4sIDAsIDEpO1xuICAgIH0gQGVsc2Uge1xuICAgICAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuICAgIH1cbiAgfVxuXG4gIEBpbmNsdWRlIHRyYW5zaXRpb24tZW5kKCRzdGF0ZSkge1xuICAgIEBpbmNsdWRlIC1tdWkta2V5ZnJhbWUtZ2V0KCRzY2FsZSwgMTAwKTtcblxuICAgIEBpZiAkZmFkZSB7XG4gICAgICBvcGFjaXR5OiBpZigkc3RhdGUgPT0gaW4sIDEsIDApO1xuICAgIH1cbiAgfVxufVxuIiwiLy8vIENyZWF0ZXMgYSBzcGlubmluZyB0cmFuc2l0aW9uIGJ5IHJvdGF0aW5nIHRoZSBlbGVtZW50LiBUaGUgYHR1cm5gIHVuaXQgaXMgdXNlZCB0byBzcGVjaWZ5IGhvdyBmYXIgdG8gcm90YXRlLiBgMXR1cm5gIGlzIGVxdWFsIHRvIGEgMzYwLWRlZ3JlZSBzcGluLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJHN0YXRlIFtpbl0gLSBTdGF0ZSB0byB0cmFuc2l0aW9uIHRvLlxuLy8vIEBwYXJhbSB7Qm9vbGVhbn0gJGRpcmVjdGlvbiBbY3ddIC0gRGlyZWN0aW9uIHRvIHNwaW4uIFNob3VsZCBiZSBgY3dgIChjbG9ja3dpc2UpIG9yIGBjY3dgIChjb3VudGVyY2xvY2t3aXNlKS5cbi8vLyBAcGFyYW0ge051bWJlcn0gJGFtb3VudCBbMC43NXR1cm5dIC0gQW1vdW50IHRvIGVsZW1lbnQgdGhlIGVsZW1lbnQuXG4vLy8gQHBhcmFtIHtCb29sZWFufSAkZmFkZSBbZmFsc2VdIC0gU2V0IHRvIGB0cnVlYCB0byBmYWRlIHRoZSBlbGVtZW50IGluIG9yIG91dCBzaW11bHRhbmVvdXNseS5cbi8vLyBAcGFyYW0ge0R1cmF0aW9ufSAkZHVyYXRpb24gW251bGxdIC0gTGVuZ3RoIChzcGVlZCkgb2YgdGhlIHRyYW5zaXRpb24uXG4vLy8gQHBhcmFtIHtLZXl3b3JkfEZ1bmN0aW9ufSAkdGltaW5nIFtudWxsXSAtIEVhc2luZyBvZiB0aGUgdHJhbnNpdGlvbi5cbi8vLyBAcGFyYW0ge0R1cmF0aW9ufSAkZGVsYXkgW251bGxdIC0gRGVsYXkgaW4gc2Vjb25kcyBvciBtaWxsaXNlY29uZHMgYmVmb3JlIHRoZSB0cmFuc2l0aW9uIHN0YXJ0cy5cbkBtaXhpbiBtdWktc3BpbihcbiAgJHN0YXRlOiBpbixcbiAgJGRpcmVjdGlvbjogY3csXG4gICRhbW91bnQ6IDAuNzV0dXJuLFxuICAkZmFkZTogbWFwLWdldCgkbW90aW9uLXVpLXNldHRpbmdzLCBzcGluLWFuZC1mYWRlKSxcbiAgJGR1cmF0aW9uOiBudWxsLFxuICAkdGltaW5nOiBudWxsLFxuICAkZGVsYXk6IG51bGxcbikge1xuICAkc3Bpbjogc3Bpbigkc3RhdGUsICRkaXJlY3Rpb24sICRhbW91bnQpO1xuXG4gIEBpbmNsdWRlIHRyYW5zaXRpb24tc3RhcnQoJHN0YXRlKSB7XG4gICAgQGluY2x1ZGUgdHJhbnNpdGlvbi1iYXNpY3MoJGR1cmF0aW9uLCAkdGltaW5nLCAkZGVsYXkpO1xuICAgIEBpbmNsdWRlIC1tdWkta2V5ZnJhbWUtZ2V0KCRzcGluLCAwKTtcblxuICAgIEBpZiAkZmFkZSB7XG4gICAgICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG4gICAgICBvcGFjaXR5OiBpZigkc3RhdGUgPT0gaW4sIDAsIDEpO1xuICAgIH0gQGVsc2Uge1xuICAgICAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuICAgIH1cbiAgfVxuXG4gIEBpbmNsdWRlIHRyYW5zaXRpb24tZW5kKCRzdGF0ZSkge1xuICAgIEBpbmNsdWRlIC1tdWkta2V5ZnJhbWUtZ2V0KCRzcGluLCAxMDApO1xuXG4gICAgQGlmICRmYWRlIHtcbiAgICAgIG9wYWNpdHk6IGlmKCRzdGF0ZSA9PSBpbiwgMSwgMCk7XG4gICAgfVxuICB9XG59XG4iLCIvLy8gQ3JlYXRlcyBhIGtleWZyYW1lIGZyb20gb25lIG9yIG1vcmUgZWZmZWN0IGZ1bmN0aW9ucyBhbmQgYXNzaWducyBpdCB0byB0aGUgZWxlbWVudCBieSBhZGRpbmcgdGhlIGBhbmltYXRpb24tbmFtZWAgcHJvcGVydHkuXG4vLy8gQHBhcmFtIHtGdW5jdGlvbn0gJGVmZmVjdHMuLi4gLSBPbmUgb3IgbW9yZSBlZmZlY3QgZnVuY3Rpb25zIHRvIGJ1aWxkIHRoZSBrZXlmcmFtZSB3aXRoLlxuQG1peGluIG11aS1hbmltYXRpb24oJGFyZ3MuLi4pIHtcbiAgJG5hbWU6IG1hcC1nZXQoLW11aS1wcm9jZXNzLWFyZ3MoJGFyZ3MuLi4pLCBuYW1lKTtcbiAgQGluY2x1ZGUgbXVpLWtleWZyYW1lcygkbmFtZSwgJGFyZ3MuLi4pO1xuICBhbmltYXRpb24tbmFtZTogdW5xdW90ZSgkbmFtZSk7XG59XG4iLCJAY2hhcnNldCAndXRmLTgnO1xuXG5cbkBpbXBvcnQgJ3NldHRpbmdzJztcbkBpbXBvcnQgJ2ZvdW5kYXRpb24nO1xuQGltcG9ydCAnbW90aW9uLXVpJztcbkBpbXBvcnQgXCJ1dGlsaXR5LWNsYXNzZXNcIjtcblxuQGluY2x1ZGUgZm91bmRhdGlvbi1nbG9iYWwtc3R5bGVzO1xuLy9AaW5jbHVkZSBmb3VuZGF0aW9uLWdyaWQ7XG4vL0BpbmNsdWRlIGZvdW5kYXRpb24tZmxleC1ncmlkO1xuXG5AaW5jbHVkZSBmb3VuZGF0aW9uLXh5LWdyaWQtY2xhc3NlcztcbkBpbmNsdWRlIGZvdW5kYXRpb24tdHlwb2dyYXBoeTtcbkBpbmNsdWRlIGZvdW5kYXRpb24tYnV0dG9uO1xuQGluY2x1ZGUgZm91bmRhdGlvbi1mb3Jtcztcbi8vIEBpbmNsdWRlIGZvdW5kYXRpb24tcmFuZ2UtaW5wdXQ7XG5AaW5jbHVkZSBmb3VuZGF0aW9uLWFjY29yZGlvbjtcbkBpbmNsdWRlIGZvdW5kYXRpb24tYWNjb3JkaW9uLW1lbnU7XG5AaW5jbHVkZSBmb3VuZGF0aW9uLWJhZGdlO1xuQGluY2x1ZGUgZm91bmRhdGlvbi1icmVhZGNydW1icztcbkBpbmNsdWRlIGZvdW5kYXRpb24tYnV0dG9uLWdyb3VwO1xuQGluY2x1ZGUgZm91bmRhdGlvbi1jYWxsb3V0O1xuQGluY2x1ZGUgZm91bmRhdGlvbi1jYXJkO1xuQGluY2x1ZGUgZm91bmRhdGlvbi1jbG9zZS1idXR0b247XG5AaW5jbHVkZSBmb3VuZGF0aW9uLW1lbnU7XG5AaW5jbHVkZSBmb3VuZGF0aW9uLW1lbnUtaWNvbjtcbkBpbmNsdWRlIGZvdW5kYXRpb24tZHJpbGxkb3duLW1lbnU7XG5AaW5jbHVkZSBmb3VuZGF0aW9uLWRyb3Bkb3duO1xuQGluY2x1ZGUgZm91bmRhdGlvbi1kcm9wZG93bi1tZW51O1xuQGluY2x1ZGUgZm91bmRhdGlvbi1yZXNwb25zaXZlLWVtYmVkO1xuQGluY2x1ZGUgZm91bmRhdGlvbi1sYWJlbDtcbkBpbmNsdWRlIGZvdW5kYXRpb24tbWVkaWEtb2JqZWN0O1xuQGluY2x1ZGUgZm91bmRhdGlvbi1vZmYtY2FudmFzO1xuQGluY2x1ZGUgZm91bmRhdGlvbi1vcmJpdDtcbkBpbmNsdWRlIGZvdW5kYXRpb24tcGFnaW5hdGlvbjtcbkBpbmNsdWRlIGZvdW5kYXRpb24tcHJvZ3Jlc3MtYmFyO1xuQGluY2x1ZGUgZm91bmRhdGlvbi1zbGlkZXI7XG5AaW5jbHVkZSBmb3VuZGF0aW9uLXN0aWNreTtcbkBpbmNsdWRlIGZvdW5kYXRpb24tcmV2ZWFsO1xuQGluY2x1ZGUgZm91bmRhdGlvbi1zd2l0Y2g7XG5AaW5jbHVkZSBmb3VuZGF0aW9uLXRhYmxlO1xuQGluY2x1ZGUgZm91bmRhdGlvbi10YWJzO1xuQGluY2x1ZGUgZm91bmRhdGlvbi10aHVtYm5haWw7XG5AaW5jbHVkZSBmb3VuZGF0aW9uLXRpdGxlLWJhcjtcbkBpbmNsdWRlIGZvdW5kYXRpb24tdG9vbHRpcDtcbkBpbmNsdWRlIGZvdW5kYXRpb24tdG9wLWJhcjtcbkBpbmNsdWRlIGZvdW5kYXRpb24tdmlzaWJpbGl0eS1jbGFzc2VzO1xuLy8gQGluY2x1ZGUgZm91bmRhdGlvbi1mbG9hdC1jbGFzc2VzO1xuQGluY2x1ZGUgZm91bmRhdGlvbi1mbGV4LWNsYXNzZXM7XG5cbi8vIEBpbmNsdWRlIGZvdW5kYXRpb24tcHJvdG90eXBlLWNsYXNzZXM7XG5cbkBpbmNsdWRlIG1vdGlvbi11aS10cmFuc2l0aW9ucztcbkBpbmNsdWRlIG1vdGlvbi11aS1hbmltYXRpb25zO1xuXG4vKlxuICBNeSBjdXN0b20gc3R5bGVzOlxuICBBZGQgeW91ciBzY3NzIGZpbGVzIGJlbG93IHRvIHN0cnVjdHVyZSB5b3VyIHByb2plY3Qgc3R5bGVzXG4qL1xuXG4vLyBHbG9iYWxcbkBpbXBvcnQgXCJnbG9iYWwvYWNjZXNzaWJpbGl0eVwiO1xuQGltcG9ydCBcImdsb2JhbC93cC1hZG1pblwiO1xuQGltcG9ydCBcImdsb2JhbC93cC1vdmVycmlkZXNcIjtcbkBpbXBvcnQgXCJnbG9iYWwvbWl4aW5zXCI7XG5cbi8vIE1vZHVsZXNcbkBpbXBvcnQgXCJtb2R1bGVzL25hdmlnYXRpb25cIjtcbkBpbXBvcnQgXCJtb2R1bGVzL2NvbnRlbnRcIjtcbkBpbXBvcnQgXCJtb2R1bGVzL2Zvb3RlclwiO1xuQGltcG9ydCBcIm1vZHVsZXMvZWRpdG9yLXN0eWxlXCI7XG5AaW1wb3J0IFwibW9kdWxlcy9mb3Jtc1wiO1xuQGltcG9ydCBcIm1vZHVsZXMvdHlwb2dyYXBoeVwiO1xuQGltcG9ydCBcIm1vZHVsZXMvcG9zdC1uYXZpZ2F0aW9uXCI7XG5AaW1wb3J0IFwibW9kdWxlcy9iYW5uZXItcGFnZS1icmVha1wiO1xuQGltcG9ydCBcIm1vZHVsZXMvaWNvbi10ZXh0LWdyaWRcIjtcbkBpbXBvcnQgXCJtb2R1bGVzL2ltYWdlLXdpdGgtYnViYmxlLWxpbmtcIjtcbkBpbXBvcnQgXCJtb2R1bGVzL2ljb24tYnViYmxlLXBpblwiO1xuQGltcG9ydCBcIm1vZHVsZXMvdGV4dC1jdGFcIjtcblxuLy8gQ29tcG9uZW50c1xuQGltcG9ydCBcImNvbXBvbmVudHMvYnV0dG9uc1wiO1xuQGltcG9ydCBcImNvbXBvbmVudHMvY2FyZHNcIjtcbkBpbXBvcnQgXCJjb21wb25lbnRzL2ZlYXR1cmVkLWltYWdlXCI7XG5AaW1wb3J0IFwiY29tcG9uZW50cy9kaXZpZGVyc1wiO1xuQGltcG9ydCBcImNvbXBvbmVudHMvbGlzdHNcIjtcbkBpbXBvcnQgXCJjb21wb25lbnRzL2xpbmtzXCI7XG5AaW1wb3J0IFwiY29tcG9uZW50cy9icmVhZGNydW1ic1wiO1xuQGltcG9ydCBcImNvbXBvbmVudHMvcmV2ZWFsLW1vZGFsXCI7XG5AaW1wb3J0IFwiY29tcG9uZW50cy9nZXQtc3RhcnRlZC1zZWN0aW9uXCI7XG5AaW1wb3J0IFwiY29tcG9uZW50cy9nb2FsLXNlY3Rpb25cIjtcbkBpbXBvcnQgXCJjb21wb25lbnRzL2d1aWRhbmNlLXNlY3Rpb25cIjtcbkBpbXBvcnQgXCJjb21wb25lbnRzL3RyYWNraW5nLXNlY3Rpb25cIjtcbkBpbXBvcnQgXCJjb21wb25lbnRzL3Byb2dyZXNzLXNlY3Rpb25cIjtcbkBpbXBvcnQgXCJjb21wb25lbnRzL2NvbW11bml0eS1zZWN0aW9uXCI7XG5AaW1wb3J0IFwiY29tcG9uZW50cy92aXJ0dWFsLXJhY2VzLXNlY3Rpb25cIjtcbkBpbXBvcnQgXCJjb21wb25lbnRzL3NpZ24tdXAtc2VjdGlvblwiO1xuQGltcG9ydCBcImNvbXBvbmVudHMvdXAtc2VsbC1zZWN0aW9uXCI7XG5AaW1wb3J0IFwiY29tcG9uZW50cy9mZWF0dXJlZC1hdXRob3JcIjtcbkBpbXBvcnQgXCJjb21wb25lbnRzL2Jsb2ctbmF2aWdhdGlvblwiO1xuQGltcG9ydCBcImNvbXBvbmVudHMvcG9zdC1jYXJkXCI7XG5AaW1wb3J0IFwiY29tcG9uZW50cy9mZWF0dXJlZC1wb3N0c1wiO1xuQGltcG9ydCBcImNvbXBvbmVudHMvcG9zdC1zaGFyZVwiO1xuQGltcG9ydCBcImNvbXBvbmVudHMvcG9zdC1tZXRhXCI7XG5AaW1wb3J0IFwiY29tcG9uZW50cy9icm93c2UtYnktY2F0ZWdvcnlcIjtcbkBpbXBvcnQgXCJjb21wb25lbnRzL3NlYXJjaC1yZXN1bHRcIjtcbkBpbXBvcnQgXCJjb21wb25lbnRzL2luc3RhZ3JhbS1mZWVkXCI7XG5AaW1wb3J0IFwiY29tcG9uZW50cy9hcHAtY3RhXCI7XG5cbi8vIFNlY3Rpb25zXG5AaW1wb3J0IFwic2VjdGlvbnMvc2xhbnRlZC1iZy1zZWN0aW9uXCI7XG5AaW1wb3J0IFwic2VjdGlvbnMvdmlkZW8td2l0aC10ZXh0LXNlY3Rpb25cIjtcbkBpbXBvcnQgXCJzZWN0aW9ucy90d28tY29sLWN0YS1zZWN0aW9uXCI7XG5cbi8vIFRlbXBsYXRlc1xuQGltcG9ydCBcInRlbXBsYXRlcy9mcm9udFwiO1xuQGltcG9ydCBcInRlbXBsYXRlcy9raXRjaGVuLXNpbmtcIjtcbkBpbXBvcnQgXCJ0ZW1wbGF0ZXMvNDA0XCI7XG5AaW1wb3J0IFwidGVtcGxhdGVzL2Jsb2ctaG9tZVwiO1xuQGltcG9ydCBcInRlbXBsYXRlcy91c2VyLWxvZ2luXCI7XG4iLCIvLyBUZXh0IG1lYW50IG9ubHkgZm9yIHNjcmVlbiByZWFkZXJzLiBBZGRyZXNzZXMgcGFydCBvZiB0aGVtZS1jaGVjayBpc3N1ZSAjODQwLlxuLy8gaHR0cHM6Ly9naXRodWIuY29tL0F1dG9tYXR0aWMvX3MvYmxvYi9tYXN0ZXIvc3R5bGUuY3NzXG4uc2NyZWVuLXJlYWRlci10ZXh0IHtcbiAgY2xpcDogcmVjdCgxcHgsIDFweCwgMXB4LCAxcHgpO1xuICBwb3NpdGlvbjogYWJzb2x1dGUgIWltcG9ydGFudDtcbiAgaGVpZ2h0OiAxcHg7XG4gIHdpZHRoOiAxcHg7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG5cbi5zY3JlZW4tcmVhZGVyLXRleHQ6Zm9jdXMge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjFmMWYxO1xuICBib3JkZXItcmFkaXVzOiAzcHg7XG4gIGJveC1zaGFkb3c6IDAgMCAycHggMnB4IHJnYmEoMCwgMCwgMCwgMC42KTtcbiAgY2xpcDogYXV0byAhaW1wb3J0YW50O1xuICBjb2xvcjogIzIxNzU5YjtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGZvbnQtc2l6ZTogMTRweDtcbiAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIGhlaWdodDogYXV0bztcbiAgbGVmdDogNXB4O1xuICBsaW5lLWhlaWdodDogbm9ybWFsO1xuICBwYWRkaW5nOiAxNXB4IDIzcHggMTRweDtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB0b3A6IDVweDtcbiAgd2lkdGg6IGF1dG87XG4gIHotaW5kZXg6IDEwMDAwMDsgLy8gQWJvdmUgV1AgdG9vbGJhci5cbn1cbiIsIi8vIEZpeCB0aGUgaXNzdWUgd2hlcmUgdGhlIFdQIGFkbWluLWJhciBvdmVybGFwcyB0aGUgbW9iaWxlIG1lbnVcbiN3cGFkbWluYmFyIHtcbiAgcG9zaXRpb246IGZpeGVkICFpbXBvcnRhbnQ7XG59XG5cbi8vIE1ha2Ugc3VyZSB0aGF0IHRoZSBXUCBhZG1pbi1iYXIgZG9lcyBub3Qgb3ZlcmxhcCBGb3VuZGF0aW9uIGNvbXBvbmVudHNcbmJvZHkuYWRtaW4tYmFyIHtcbiAgLy8gT2Zmc2V0IHN0aWNreSB0b3AgYmFyXG4gICYuZi10b3BiYXItZml4ZWQge1xuICAgIC5zdGlja3kuZml4ZWQge1xuICAgICAgbWFyZ2luLXRvcDogcmVtLWNhbGMoMzIpO1xuICAgIH1cbiAgfVxuICAvLyBPZmZzZXQgbW9iaWxlIG9mZi1jYW52YXMgbWVudVxuICAmLm9mZmNhbnZhcyB7XG4gICAgLm9mZi1jYW52YXMuaXMtb3BlbiB7XG4gICAgICB0b3A6IHJlbS1jYWxjKDQ2KTtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoNzgzKSB7XG4gICAgICAgIHRvcDogcmVtLWNhbGMoMzIpO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLndwLWNhcHRpb24gPiBmaWdjYXB0aW9uIHtcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBmb250LXNpemU6IDAuOHJlbTtcbiAgY29sb3I6ICM5OTk7XG4gIHBhZGRpbmc6IDAuMjVyZW0gMDtcbn1cblxucC53cC1jYXB0aW9uLXRleHR7XG4gIGZvbnQtc2l6ZTo5MCU7XG4gIGNvbG9yOiAjNjY2O1xuICBwYWRkaW5nOnJlbS1jYWxjKDEwKSAwO1xufVxuXG4uYWxpZ25sZWZ0IHtcbiAgZmxvYXQ6IGxlZnQ7XG4gIHBhZGRpbmctcmlnaHQ6IDFyZW07XG4gIG1hcmdpbjogMDtcbn1cblxuLmFsaWducmlnaHQge1xuICBmbG9hdDogcmlnaHQ7XG4gIHBhZGRpbmctbGVmdDogMXJlbTtcbiAgbWFyZ2luOiAwO1xufVxuXG4uYWxpZ25jZW50ZXIge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIG1hcmdpbi1yaWdodDogYXV0bztcbn1cbiIsIkBtaXhpbiBzZWN0aW9uLXBhZGRpbmctbGVmdHJpZ2h0KCRkaXZpc29yOjEsJG1hcDokc2VjdGlvbi1wYWRkaW5nLWxlZnRyaWdodCl7XG4gIEBpbmNsdWRlIC16Zi1icmVha3BvaW50LXZhbHVlKGF1dG8sICRtYXApIHtcbiAgICBwYWRkaW5nLWxlZnQ6JC16Zi1icC12YWx1ZSAvICRkaXZpc29yO1xuICAgIHBhZGRpbmctcmlnaHQ6JC16Zi1icC12YWx1ZSAvICRkaXZpc29yO1xuICB9XG59XG5AbWl4aW4gc2VjdGlvbi1wYWRkaW5nLXRvcGJvdHRvbSgkZGl2aXNvcjoxLCRtYXA6JHNlY3Rpb24tcGFkZGluZy10b3Bib3R0b20pe1xuICBAaW5jbHVkZSAtemYtYnJlYWtwb2ludC12YWx1ZShhdXRvLCAkbWFwKSB7XG4gICAgcGFkZGluZy10b3A6JC16Zi1icC12YWx1ZSAvICRkaXZpc29yO1xuICAgIHBhZGRpbmctYm90dG9tOiQtemYtYnAtdmFsdWUgLyAkZGl2aXNvcjtcbiAgfVxufVxuLy9OT1RFOiBmb3IgbmVnYXRpdmUgc3BhY2luZywgcGFzcyBpbiBhIG5lZ2F0aXZlIGRpdmlzb3IgdmFsdWVcbkBtaXhpbiBzZWN0aW9uLXNwYWNpbmctb3ZlcnJpZGUoJHNpZGUsJHR5cGU6cGFkZGluZywkZGl2aXNvcjoxLCRtYXA6JHNlY3Rpb24tcGFkZGluZy10b3Bib3R0b20pe1xuICBAaW5jbHVkZSAtemYtYnJlYWtwb2ludC12YWx1ZShhdXRvLCAkbWFwKSB7XG4gICAgI3skdHlwZX0tI3skc2lkZX06JC16Zi1icC12YWx1ZSAvICRkaXZpc29yO1xuICB9XG59XG5cbi5zZWN0aW9uLXBhZGRpbmctbHIge1xuICBAaW5jbHVkZSBzZWN0aW9uLXBhZGRpbmctbGVmdHJpZ2h0KCk7XG59XG4uc2VjdGlvbi1wYWRkaW5nLWx7XG4gIEBpbmNsdWRlIHNlY3Rpb24tc3BhY2luZy1vdmVycmlkZShsZWZ0LHBhZGRpbmcsMSwkc2VjdGlvbi1wYWRkaW5nLWxlZnRyaWdodCk7XG59XG4uc2VjdGlvbi1wYWRkaW5nLXJ7XG4gIEBpbmNsdWRlIHNlY3Rpb24tc3BhY2luZy1vdmVycmlkZShyaWdodCxwYWRkaW5nLDEsJHNlY3Rpb24tcGFkZGluZy1sZWZ0cmlnaHQpO1xufVxuLnNlY3Rpb24tcGFkZGluZy10YntcbiAgQGluY2x1ZGUgc2VjdGlvbi1wYWRkaW5nLXRvcGJvdHRvbSgpO1xufVxuLnNlY3Rpb24tcGFkZGluZy10e1xuICBAaW5jbHVkZSBzZWN0aW9uLXNwYWNpbmctb3ZlcnJpZGUodG9wLHBhZGRpbmcpO1xufVxuLnNlY3Rpb24tcGFkZGluZy1ie1xuICBAaW5jbHVkZSBzZWN0aW9uLXNwYWNpbmctb3ZlcnJpZGUoYm90dG9tLHBhZGRpbmcpO1xufVxuXG5AbWl4aW4gbWFyZ2luLWNlbnRlcigkZGlzcGxheTpibG9jayl7XG4gIG1hcmdpbi1sZWZ0OmF1dG87XG4gIG1hcmdpbi1yaWdodDphdXRvO1xuICBkaXNwbGF5OiRkaXNwbGF5O1xufVxuXG5AbWl4aW4gdW5kZXJsaW5lLWhvdmVyLWwtcigkYmFzZS1jb2xvcjokYmxhY2ssICRob3Zlci1jb2xvcjokcHJpbWFyeS1jb2xvciwgJGhlaWdodDoycHgsICRhZnRlcjp0cnVlKXtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBwYWRkaW5nLWJvdHRvbTowO1xuICBwb3NpdGlvbjpyZWxhdGl2ZTtcbiAgQGlmICRhZnRlcntcbiAgICAmOmFmdGVye1xuICAgICAgY29udGVudDogJyc7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIGhlaWdodDogJGhlaWdodDtcbiAgICAgIHdpZHRoOiAwO1xuICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgICB0cmFuc2l0aW9uOiB3aWR0aCAuNXMgZWFzZSwgYmFja2dyb3VuZC1jb2xvciAuNXMgZWFzZTtcbiAgICAgIG1hcmdpbi10b3A6KCRoZWlnaHQgKyAkaGVpZ2h0LzIpO1xuICAgIH1cbiAgICAmOmhvdmVyLCAmOmZvY3VzLCAmOmFjdGl2ZXtcbiAgICAgICY6YWZ0ZXJ7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBiYWNrZ3JvdW5kOiAkaG92ZXItY29sb3I7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIEBlbHNle1xuICAgICY6YmVmb3Jle1xuICAgICAgY29udGVudDogJyc7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIGhlaWdodDogJGhlaWdodDtcbiAgICAgIHdpZHRoOiAwO1xuICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgICB0cmFuc2l0aW9uOiB3aWR0aCAuNXMgZWFzZSwgYmFja2dyb3VuZC1jb2xvciAuNXMgZWFzZTtcbiAgICAgIG1hcmdpbi10b3A6LSRoZWlnaHQ7XG4gICAgICBwb3NpdGlvbjphYnNvbHV0ZTtcbiAgICAgIHJpZ2h0OmF1dG87XG4gICAgICBsZWZ0OjA7XG4gICAgICBib3R0b206LSRoZWlnaHQ7XG4gICAgICB0b3A6YXV0bztcbiAgICB9XG4gICAgJjpob3ZlciwgJjpmb2N1cywgJjphY3RpdmV7XG4gICAgICAmOmJlZm9yZXtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGJhY2tncm91bmQ6ICRob3Zlci1jb2xvcjtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuQG1peGluIGhlYWRlci1zaXplKCR0eXBlKXtcbiAgZm9udC1zaXplOiByZW0tY2FsYyhtYXAtZ2V0KG1hcC1nZXQobWFwLWdldCgkaGVhZGVyLXN0eWxlcywgXCJzbWFsbFwiKSwgJHR5cGUpLCBcImZvbnQtc2l6ZVwiKSAqIDFweCk7XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKXtcbiAgICBmb250LXNpemU6IHJlbS1jYWxjKG1hcC1nZXQobWFwLWdldChtYXAtZ2V0KCRoZWFkZXItc3R5bGVzLCBcIm1lZGl1bVwiKSwgJHR5cGUpLCBcImZvbnQtc2l6ZVwiKSAqIDFweCk7XG4gIH1cbiAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSl7XG4gICAgZm9udC1zaXplOiByZW0tY2FsYyhtYXAtZ2V0KG1hcC1nZXQobWFwLWdldCgkaGVhZGVyLXN0eWxlcywgXCJsYXJnZVwiKSwgJHR5cGUpLCBcImZvbnQtc2l6ZVwiKSAqIDFweCk7XG4gIH1cbn1cblxuQG1peGluIHByZWZpeC1hbmdsZSgkY29sb3I6JHByaW1hcnktY29sb3IsJHNpemU6cmVtLWNhbGMoMTIwKSwkYWZ0ZXI6ZmFsc2Upe1xuICBwb3NpdGlvbjphYnNvbHV0ZTtcbiAgb3ZlcmZsb3c6aGlkZGVuO1xuICBkaXNwbGF5OmJsb2NrO1xuICBAaWYgJGFmdGVyIHtcbiAgICAmOmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6JyAnO1xuICAgICAgcG9zaXRpb246YWJzb2x1dGU7XG4gICAgICBsZWZ0Oigkc2l6ZS8yKTtcbiAgICAgIHRvcDowcmVtO1xuICAgICAgYm90dG9tOjByZW07XG4gICAgICBoZWlnaHQ6MTA1JTtcbiAgICAgIHRyYW5zZm9ybTpza2V3KC0xNWRlZyk7XG4gICAgICB3aWR0aDooJHNpemUqMS41KTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6JGNvbG9yO1xuICAgICAgZGlzcGxheTpibG9jaztcbiAgICB9XG4gIH0gQGVsc2Uge1xuICAgICY6YmVmb3JlIHtcbiAgICAgIGNvbnRlbnQ6JyAnO1xuICAgICAgcG9zaXRpb246YWJzb2x1dGU7XG4gICAgICBsZWZ0Oigkc2l6ZS8yKTtcbiAgICAgIHRvcDowcmVtO1xuICAgICAgYm90dG9tOjByZW07XG4gICAgICBoZWlnaHQ6MTA1JTtcbiAgICAgIHRyYW5zZm9ybTpza2V3KC0xNWRlZyk7XG4gICAgICB3aWR0aDooJHNpemUqMS41KTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6JGNvbG9yO1xuICAgICAgZGlzcGxheTpibG9jaztcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHByZWZpeC1hbmdsZS1jb250YWluZXIoJGNvbG9yOiRwcmltYXJ5LWNvbG9yLCRzaXplOnJlbS1jYWxjKDEyMCksJGFmdGVyOmZhbHNlKXtcbiAgcG9zaXRpb246cmVsYXRpdmU7XG4gID4gLnByZWZpeC1hbmdsZSB7XG4gICAgdG9wOjByZW07XG4gICAgYm90dG9tOjByZW07XG4gICAgbGVmdDotKCRzaXplKTtcbiAgICB3aWR0aDokc2l6ZTtcbiAgICBoZWlnaHQ6MTAwJTtcbiAgICBAaW5jbHVkZSBwcmVmaXgtYW5nbGUoJGNvbG9yLCRzaXplLCRhZnRlcik7XG4gIH1cbn1cblxuQG1peGluIGFmdGVyLWV4dGVuZCgkY29sb3IsJGNvbnRhaW5lci13aWR0aDokZ2xvYmFsLXdpZHRoLCRsZWZ0OmZhbHNlLCRsZWF2ZS1zY3JvbGxiYXItcm9vbTp0cnVlKXtcbiAgcG9zaXRpb246cmVsYXRpdmU7XG4gICY6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6JyAnO1xuICAgIGRpc3BsYXk6YmxvY2s7XG4gICAgcG9zaXRpb246YWJzb2x1dGU7XG4gICAgdG9wOjByZW07XG4gICAgYm90dG9tOjByZW07XG4gICAgaGVpZ2h0OjEwMCU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjokY29sb3I7XG4gIH1cblxuICBAaWYgJGxlYXZlLXNjcm9sbGJhci1yb29tIHtcbiAgICAvL3RoZSA4IHBpeGVscyBoZXJlIGlzIGZvciB0aGUgc2Nyb2xsIGJhclxuICAgICRsZWZ0LW9mc3Q6Y2FsYygjeygkZ2xvYmFsLXdpZHRoLzIpIC0gcmVtLWNhbGMoOCl9IC0gNTB2dyk7XG4gICAgJGxlZnQtd2R0aDpjYWxjKDUwdncgLSAjeygkZ2xvYmFsLXdpZHRoLzIpIC0gcmVtLWNhbGMoOCl9KTtcbiAgICAkcmlnaHQtb2ZzdDpjYWxjKCN7KCRjb250YWluZXItd2lkdGgvMikgKyByZW0tY2FsYyg4KX0gLSA1MHZ3KTtcbiAgICAkcmlnaHQtd2R0aDpjYWxjKDUwdncgLSAjeygkY29udGFpbmVyLXdpZHRoLzIpICsgcmVtLWNhbGMoOCl9KTtcblxuICAgIEBpZiAkbGVmdCB7XG4gICAgICAmOmFmdGVyIHtcbiAgICAgICAgbGVmdDokbGVmdC1vZnN0O1xuICAgICAgICB3aWR0aDokbGVmdC13ZHRoO1xuICAgICAgfVxuICAgIH0gQGVsc2Uge1xuICAgICAgJjphZnRlciB7XG4gICAgICAgIHJpZ2h0OiRyaWdodC1vZnN0O1xuICAgICAgICB3aWR0aDokcmlnaHQtd2R0aDtcbiAgICAgIH1cbiAgICB9XG5cbiAgfSBAZWxzZSB7XG4gICAgJGxlZnQtb2ZzdDpjYWxjKCN7KCRnbG9iYWwtd2lkdGgvMil9IC0gNTB2dyk7XG4gICAgJGxlZnQtd2R0aDpjYWxjKDUwdncgLSAjeygkZ2xvYmFsLXdpZHRoLzIpfSk7XG4gICAgJHJpZ2h0LW9mc3Q6Y2FsYygjeygkY29udGFpbmVyLXdpZHRoLzIpfSAtIDUwdncpO1xuICAgICRyaWdodC13ZHRoOmNhbGMoNTB2dyAtICN7KCRjb250YWluZXItd2lkdGgvMil9KTtcblxuICAgIEBpZiAkbGVmdCB7XG4gICAgICAmOmFmdGVyIHtcbiAgICAgICAgbGVmdDokbGVmdC1vZnN0O1xuICAgICAgICB3aWR0aDokbGVmdC13ZHRoO1xuICAgICAgfVxuICAgIH0gQGVsc2Uge1xuICAgICAgJjphZnRlciB7XG4gICAgICAgIHJpZ2h0OiRyaWdodC1vZnN0O1xuICAgICAgICB3aWR0aDokcmlnaHQtd2R0aDtcbiAgICAgIH1cbiAgICB9XG5cbiAgfVxufVxuXG5AbWl4aW4gYnV0dG9uLXNoaW5lKCRjb2xvciwkZnVsbC13aWR0aC1vbi1tZWRpdW06ZmFsc2UsJGZ1bGwtd2lkdGgtb24tbGFyZ2U6ZmFsc2Upe1xuICB0cmFuc2l0aW9uOiAuNXM7XG4gIHBvc2l0aW9uOnJlbGF0aXZlO1xuICBvdmVyZmxvdzpoaWRkZW47XG4gICY6YmVmb3Jle1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBiYWNrZ3JvdW5kOiByZ2JhKDI1NSwyNTUsMjU1LDAuNSk7XG4gICAgd2lkdGg6IDYwcHg7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIGxlZnQ6IDA7XG4gICAgdG9wOiAwO1xuICAgIG9wYWNpdHk6IC41O1xuICAgIGZpbHRlcjogYmx1cigzMHB4KTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTEwMHB4KSAgc2tld1goLTE1ZGVnKTtcbiAgfVxuICAmOmFmdGVye1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBiYWNrZ3JvdW5kOiByZ2JhKDI1NSwyNTUsMjU1LDAuMik7XG4gICAgd2lkdGg6IDMwcHg7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIGxlZnQ6IDMwcHg7XG4gICAgdG9wOiAwO1xuICAgIG9wYWNpdHk6IDA7XG4gICAgZmlsdGVyOiBibHVyKDVweCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0xMDBweCkgc2tld1goLTE1ZGVnKTtcbiAgfVxuICAmOmhvdmVye1xuICAgIGJhY2tncm91bmQ6ICRjb2xvcjtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgJjpiZWZvcmV7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoOTV2dykgIHNrZXdYKC0xNWRlZyk7XG4gICAgICBvcGFjaXR5OiAwLjY7XG4gICAgICB0cmFuc2l0aW9uOiAuNXM7XG4gICAgfVxuICAgICY6YWZ0ZXJ7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoOTV2dykgc2tld1goLTE1ZGVnKTtcbiAgICAgIG9wYWNpdHk6IDE7XG4gICAgICB0cmFuc2l0aW9uOiAuNXM7XG4gICAgfVxuICB9XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgJjpob3ZlcntcbiAgICAgICY6YmVmb3Jle1xuICAgICAgICBAaWYgJGZ1bGwtd2lkdGgtb24tbWVkaXVtIHtcbiAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoOTV2dykgIHNrZXdYKC0xNWRlZyk7XG4gICAgICAgIH0gQGVsc2Uge1xuICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCg2MHZ3KSAgc2tld1goLTE1ZGVnKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgJjphZnRlcntcbiAgICAgICAgQGlmICRmdWxsLXdpZHRoLW9uLW1lZGl1bSB7XG4gICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDk1dncpICBza2V3WCgtMTVkZWcpO1xuICAgICAgICB9IEBlbHNlIHtcbiAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoNjB2dykgIHNrZXdYKC0xNWRlZyk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICY6aG92ZXJ7XG4gICAgICAmOmJlZm9yZXtcbiAgICAgICAgQGlmICRmdWxsLXdpZHRoLW9uLWxhcmdlIHtcbiAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoOTV2dykgIHNrZXdYKC0xNWRlZyk7XG4gICAgICAgIH0gQGVsc2Uge1xuICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCg1MHZ3KSAgc2tld1goLTE1ZGVnKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgJjphZnRlcntcbiAgICAgICAgQGlmICRmdWxsLXdpZHRoLW9uLWxhcmdlIHtcbiAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoOTV2dykgIHNrZXdYKC0xNWRlZyk7XG4gICAgICAgIH0gQGVsc2Uge1xuICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCg1MHZ3KSAgc2tld1goLTE1ZGVnKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gZWFzZS1hbGwoJHRpbWU6MC41cykge1xuICB0cmFuc2l0aW9uOmFsbCAkdGltZSBlYXNlO1xufVxuXG5AbWl4aW4gZXh0ZW5kLXBhc3QtZ3JpZC1jb250YWluZXItcGFkZGluZygkYnJlYWtwb2ludDonc21hbGwnLCAkc2lkZXM6J2JvdGgnKXtcbiAgLy8gd2lkdGggbXVsdGlwbGllclxuICAkbXVsdGlwbGllcjoyO1xuICBAaWYgJHNpZGVzICE9ICdib3RoJ3tcbiAgICAkbXVsdGlwbGllcjoxO1xuICB9XG5cbiAgQGlmICRicmVha3BvaW50PT0nYWxsJ3tcbiAgICAvKipcbiAgZXh0ZW5kIGVsZW1lbnQgdGhlIGRpc3RhbmNlIG9mIHRoZSBncmlkLWNvbnRhaW5lciBwYWRkaW5nIHNvIHRoYXRcbiAgaXQncyBmbHVzaCB3aXRoIGxlZnQvcmlnaHQgZWRnZXMgb2YgdGhlIHNjcmVlblxuICAgKi9cbiAgICBAaW5jbHVkZSAtemYtYnJlYWtwb2ludC12YWx1ZShhdXRvLCAkc2VjdGlvbi1wYWRkaW5nLWxlZnRyaWdodCkge1xuICAgICAgQGlmICRzaWRlcyA9PSAnbGVmdCd7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAkLXpmLWJwLXZhbHVlICogLTE7XG4gICAgICB9IEBlbHNlIGlmKCRzaWRlcyA9PSdyaWdodCcpe1xuICAgICAgICBtYXJnaW4tcmlnaHQ6ICQtemYtYnAtdmFsdWUgKiAtMTtcbiAgICAgIH0gQGVsc2Uge1xuICAgICAgICAvLyBib3RoXG4gICAgICAgIG1hcmdpbi1sZWZ0OiAkLXpmLWJwLXZhbHVlICogLTE7XG4gICAgICAgIG1hcmdpbi1yaWdodDogJC16Zi1icC12YWx1ZSAqIC0xO1xuICAgICAgfVxuXG5cbiAgICAgIC8vIGRvdWJsZSB3aWR0aCB0byBhY2NvdW50IGZvciBleHRlbnNpb25cbiAgICAgIHdpZHRoOmNhbGMoMTAwJSArICgjeyQtemYtYnAtdmFsdWV9ICogI3skbXVsdGlwbGllcn0pKTtcbiAgICB9XG5cbiAgfSBAZWxzZXtcbiAgICAvKipcbiAgZXh0ZW5kIGVsZW1lbnQgdGhlIGRpc3RhbmNlIG9mIHRoZSBncmlkLWNvbnRhaW5lciBwYWRkaW5nIHNvIHRoYXRcbiAgaXQncyBmbHVzaCB3aXRoIGxlZnQvcmlnaHQgZWRnZXMgb2YgdGhlIHNjcmVlblxuICAgKi9cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KCN7JGJyZWFrcG9pbnR9IG9ubHkpe1xuICAgICAgQGlmICRzaWRlcyA9PSAnbGVmdCd7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiBtYXAtZ2V0KCRzZWN0aW9uLXBhZGRpbmctbGVmdHJpZ2h0LCAkYnJlYWtwb2ludCkgKiAtMTtcbiAgICAgIH0gQGVsc2UgaWYoJHNpZGVzID09J3JpZ2h0Jyl7XG4gICAgICAgIG1hcmdpbi1yaWdodDogbWFwLWdldCgkc2VjdGlvbi1wYWRkaW5nLWxlZnRyaWdodCwgJGJyZWFrcG9pbnQpICogLTE7XG4gICAgICB9IEBlbHNlIHtcbiAgICAgICAgLy8gYm90aFxuICAgICAgICBtYXJnaW4tbGVmdDogbWFwLWdldCgkc2VjdGlvbi1wYWRkaW5nLWxlZnRyaWdodCwgJGJyZWFrcG9pbnQpICogLTE7XG4gICAgICAgIG1hcmdpbi1yaWdodDogbWFwLWdldCgkc2VjdGlvbi1wYWRkaW5nLWxlZnRyaWdodCwgJGJyZWFrcG9pbnQpICogLTE7XG4gICAgICB9XG5cbiAgICAgIC8vIGRvdWJsZSB3aWR0aCB0byBhY2NvdW50IGZvciBleHRlbnNpb25cbiAgICAgIHdpZHRoOmNhbGMoMTAwJSArICgje21hcC1nZXQoJHNlY3Rpb24tcGFkZGluZy1sZWZ0cmlnaHQsICRicmVha3BvaW50KX0gKiAjeyRtdWx0aXBsaWVyfSkpO1xuICAgIH1cbiAgfVxufVxuXG4vLyBhZGQgaW4gYSBwc2V1ZG8gZWxlbWVudCB0byB2ZXJ0aWNhbGx5IHNwbGl0IHVwIHRoZSBiZyBjb2xvciBvZiB0aGUgc2VjdGlvblxuQG1peGluIGJnLWNvbG9yLW9mZnNldC12KCRjb2xvciwkaGVpZ2h0OjU1JSl7XG4gIHBvc2l0aW9uOnJlbGF0aXZlO1xuICAvLyBtYWtlIHN1cmUgdGhhdCBvdmVybGF5IGRvZXNuJ3QgYXBwZWFyIGFib3ZlIGlubmVyIGNvbnRlbnRzXG4gICY+KntcbiAgICBwb3NpdGlvbjpyZWxhdGl2ZTtcbiAgICB6LWluZGV4OjE7XG4gIH1cbiAgJjpiZWZvcmV7XG4gICAgcG9zaXRpb246YWJzb2x1dGU7XG4gICAgY29udGVudDonICc7XG4gICAgZGlzcGxheTpibG9jaztcbiAgICBib3R0b206MDtcbiAgICB0b3A6MDtcbiAgICBsZWZ0OjA7XG4gICAgcmlnaHQ6MDtcbiAgICB3aWR0aDoxMDAlO1xuICAgIGhlaWdodDokaGVpZ2h0O1xuICAgIGJhY2tncm91bmQtY29sb3I6JGNvbG9yO1xuICAgIHotaW5kZXg6MDtcbiAgICAvLyBhYm92ZSAxNDQwcHgsIGV4dGVuZCBiZyB0byBlYWNoIGVkZ2Ugb2YgdGhlIHNjcmVlblxuICAgIC8vIGV2ZW4gdGhvdWdoIHRoZSBncmlkLWNvbnRhaW5lciBoYXMgYSBtYXgtd2lkdGhcbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxNDQxcHgpIHtcbiAgICAgIHdpZHRoOjEwMHZ3ICFpbXBvcnRhbnQ7XG4gICAgICBsZWZ0OjUwJTtcbiAgICAgIG1hcmdpbi1sZWZ0Oi01MHZ3ICFpbXBvcnRhbnQ7XG4gICAgfVxuICB9XG59XG5AbWl4aW4gc2V0LWh3LXJlc3BvbnNpdmVseSgkbWFwKXtcbiAgaGVpZ2h0OnJlbS1jYWxjKCBtYXAtZ2V0KCRtYXAsc21hbGwpICk7XG4gIG1heC1oZWlnaHQ6cmVtLWNhbGMoIG1hcC1nZXQoJG1hcCxzbWFsbCkgKTtcbiAgd2lkdGg6cmVtLWNhbGMoIG1hcC1nZXQoJG1hcCxzbWFsbCkgKTtcbiAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pe1xuICAgIGhlaWdodDpyZW0tY2FsYyggbWFwLWdldCgkbWFwLG1lZGl1bSkgKTtcbiAgICBtYXgtaGVpZ2h0OnJlbS1jYWxjKCBtYXAtZ2V0KCRtYXAsbWVkaXVtKSApO1xuICAgIHdpZHRoOnJlbS1jYWxjKCBtYXAtZ2V0KCRtYXAsbWVkaXVtKSApO1xuICB9XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2Upe1xuICAgIGhlaWdodDpyZW0tY2FsYyggbWFwLWdldCgkbWFwLGxhcmdlKSApO1xuICAgIG1heC1oZWlnaHQ6cmVtLWNhbGMoIG1hcC1nZXQoJG1hcCxsYXJnZSkgKTtcbiAgICB3aWR0aDpyZW0tY2FsYyggbWFwLWdldCgkbWFwLGxhcmdlKSApO1xuICB9XG59XG5cbkBtaXhpbiBzZXQtcHJvcC1yZXNwb25zaXZlbHkoJHByb3AsJG1hcCl7XG4gICN7JHByb3B9OnJlbS1jYWxjKCBtYXAtZ2V0KCRtYXAsc21hbGwpICk7XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKXtcbiAgICAjeyRwcm9wfTpyZW0tY2FsYyggbWFwLWdldCgkbWFwLG1lZGl1bSkgKTtcbiAgfVxuICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKXtcbiAgICAjeyRwcm9wfTpyZW0tY2FsYyggbWFwLWdldCgkbWFwLGxhcmdlKSApO1xuICB9XG59XG4iLCIvLyBOYXYgc3BlY2lmaWMgdmFyaWFibGVzXG4kc2VhcmNoLWlucHV0LWhlaWdodDoyLjVyZW07XG4kbW9iaWxlLXRpdGxlLWJhci1oZWlnaHQ6cmVtLWNhbGMoNjUpO1xuJG1vYmlsZS1tZW51LWljb24tc2l6ZToxLjVyZW07XG4kbW9iaWxlLW1lbnUtaWNvbi1wYWRkaW5nOjAuNXJlbTtcblxuLy8gTmF2aWdhdGlvbiBicmVha3BvaW50c1xuLm1vYmlsZS1tZW51LFxuLnRpdGxlLWJhciB7XG4gIEBpbmNsdWRlIGhpZGUtZm9yKGxhcmdlKTtcbn1cblxuLmRlc2t0b3AtbWVudSxcbi5zaXRlLW5hdmlnYXRpb24ge1xuICBAaW5jbHVkZSBzaG93LWZvcihsYXJnZSk7XG59XG5cbmEuc2lsZW50IHtcbiAgd2lkdGg6IGF1dG87XG4gIEBpbmNsdWRlIGVhc2UtYWxsKCk7XG59XG5cbi8qKlxuRW50aXJlIE5BViBjb250YWluZXIgKG1vYmlsZSAmIGRlc2t0b3ApXG4gKi9cbiNzaXRlLWhlYWRlciB7XG4gIHRyYW5zaXRpb246IGhlaWdodCAwLjNzIGVhc2UtaW4tb3V0LCB3aWR0aCAwLjNzIGVhc2UtaW4tb3V0O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiR3aGl0ZTtcbiAgLy8gc3RpY2t5IGFkanVzdG1lbnRzXG4gICYuc3RpY2t5IHtcbiAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgei1pbmRleDogMTAwO1xuICAgIGJveC1zaGFkb3c6IDBweCAxcHggMTBweCByZ2JhKCRibGFjaywgLjE1KTtcblxuICAgIC50b3AtYmFyLXItcHJlbWVudSB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cblxuICAgIGEuc2lsZW50IHtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2Upe1xuICAgICAgICBwYWRkaW5nLXRvcDogMC41cmVtO1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogMC41cmVtO1xuICAgICAgfVxuICAgIH1cbiAgICAuc2l0ZS1sb2dvLWNvbnR7XG4gICAgICBwYWRkaW5nOjA7XG4gICAgICBtYXJnaW46MDtcbiAgICB9XG4gICAgLnNpdGUtbG9nbyB7XG4gICAgICBtYXgtaGVpZ2h0OiByZW0tY2FsYyg0MCk7XG4gICAgfVxuICB9XG59XG5cbi8vIFNpdGUgdGl0bGUgLyBsb2dvXG4uc2l0ZS1sb2dvIHtcbiAgd2lkdGg6IGF1dG87XG4gIGhlaWdodDpyZW0tY2FsYygyNSk7XG4gIEBpbmNsdWRlIGVhc2UtYWxsKCk7XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2Upe1xuICAgIG1heC1oZWlnaHQ6bm9uZTtcbiAgICBoZWlnaHQ6IHJlbS1jYWxjKDM2KTtcbiAgICB3aWR0aDphdXRvO1xuICAgIG1heC13aWR0aDpub25lO1xuICB9XG59XG5cbi8vREVTS1RPUFxuLnRvcC1iYXItdGl0bGV7XG4gIG1hcmdpbi10b3A6MDtcbiAgbWFyZ2luLWJvdHRvbTowO1xufVxuLnNpdGUtZGVza3RvcC10aXRsZSBhIHtcbiAgZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LXNlbWlib2xkO1xuICBmb250LXNpemU6IDFyZW07XG4gIGhlaWdodDphdXRvO1xuICAuc2l0ZS1sb2dvLWNvbnR7XG4gICAgcGFkZGluZzoxcmVtO1xuICAgIHBvc2l0aW9uOnJlbGF0aXZlO1xuICAgIGRpc3BsYXk6aW5saW5lLWJsb2NrO1xuICAgIHdpZHRoOmF1dG87XG4gICAgPmltZ3tcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIHotaW5kZXg6MTtcbiAgICB9XG4gIH1cblxufVxuXG4vKipcbioqKioqKioqKioqKioqKioqKioqKlxuU1RBUlQgTU9CSUxFXG4qKioqKioqKioqKioqKioqKlxuICovXG4vLyBNb2JpbGUgbWVudVxuLm1vYmlsZS1tZW51IHtcbiAgZGlzcGxheTogbm9uZTsgLy8gcHJldmVudHMgcmVwYWludCBjYXVzZWQgYnkgSlMgaGlkaW5nIG1lbnUgb25sb2FkXG59XG4vLyBtb2JpbGUgbmF2IGJhclxuLnRpdGxlLWJhciB7XG4gIHRyYW5zaXRpb246IGFsbCAwLjVzIGVhc2U7XG4gIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcbiAgd2lkdGg6MTAwJTtcbiAgcGFkZGluZzowO1xuXG4gIC8vbW9iaWxlIHNpdGUgbG9nb1xuICAudGl0bGUtYmFyLWxlZnQge1xuICAgIHBhZGRpbmctdG9wOjAuNXJlbTtcbiAgICBwYWRkaW5nLWJvdHRvbTowLjVyZW07XG4gICAgQGluY2x1ZGUgc2VjdGlvbi1zcGFjaW5nLW92ZXJyaWRlKGxlZnQsIHBhZGRpbmcsIDEsICRzZWN0aW9uLXBhZGRpbmctbGVmdHJpZ2h0KTtcbiAgICBmbGV4OjEgMSAwcHg7XG4gIH1cbiAgLy9NT0JJTEUgTkFWIFJJR0hUIEJMT0NLXG4gIC50aXRsZS1iYXItcmlnaHQge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xuICAgIEBpbmNsdWRlIHNlY3Rpb24tc3BhY2luZy1vdmVycmlkZShyaWdodCwgcGFkZGluZywgMSwgJHNlY3Rpb24tcGFkZGluZy1sZWZ0cmlnaHQpO1xuICAgIGhlaWdodDokbW9iaWxlLXRpdGxlLWJhci1oZWlnaHQ7XG4gICAgZmxleDowIDEgMHB4O1xuXG5cbiAgICAuc2VhcmNoZm9ybS1jb250IHtcbiAgICAgIGZvcm0ge1xuICAgICAgICAuaW5wdXQtZ3JvdXAge1xuICAgICAgICAgIGJ1dHRvbi5zZWFyY2hzdWJtaXQge1xuICAgICAgICAgICAgJjpob3ZlciwgJjpmb2N1cywgJjphY3RpdmUge1xuICAgICAgICAgICAgICBjb2xvcjogJHByaW1hcnktY29sb3I7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8vIE1lbnUgaWNvblxuLmN1c3RvbS1tZW51LWljb24ge1xuICBmb250LXNpemU6ICRtb2JpbGUtbWVudS1pY29uLXNpemU7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgY29sb3I6JHByaW1hcnktY29sb3I7XG4gIHBhZGRpbmc6JG1vYmlsZS1tZW51LWljb24tcGFkZGluZztcbiAgYm9yZGVyLXJhZGl1czo0cHg7XG4gIGJhY2tncm91bmQtY29sb3I6dHJhbnNwYXJlbnQ7XG4gIG1hcmdpbi1yaWdodDotJG1vYmlsZS1tZW51LWljb24tcGFkZGluZztcblxuICAmOmhvdmVyLCAmOmFjdGl2ZSwgJjpmb2N1cyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjpyZ2JhKCRibGFjaywwLjA1KTtcbiAgICBzcGFuIHtcbiAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgIGNvbG9yOiAkYmxhY2s7XG4gICAgICB9XG4gICAgfVxuXG4gIH1cbn1cblxuLy9NT0JJTEUgdGl0bGUtYmFyXG4udGl0bGUtYmFyLXRpdGxlIHtcbiAgYSB7XG4gICAgZm9udC1zaXplOiAxcmVtO1xuICAgIGNvbG9yOiAkYm9keS1mb250LWNvbG9yO1xuICB9XG59XG5cbi8vIE9GRiBDQU5WQVMgTUVOVVxuLm9mZi1jYW52YXMge1xuICA+IHVsLm1lbnUge1xuICAgIGhlaWdodDogMTAwdmg7XG4gICAgcGFkZGluZzogMXJlbTtcblxuICAgIC8vIG92ZXJyaWRpbmcgc3R5bGluZyBzZXQgaW4gY29yZSBGb3VuZGF0aW9uXG4gICAgLmlzLWFjdGl2ZSB7XG4gICAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xuXG4gICAgICA+IGEge1xuICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAuY3VycmVudC1tZW51LWl0ZW0gPiBhIHtcbiAgICAgIGJvcmRlci1sZWZ0LWNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbiAgICB9XG5cbiAgICBhIHtcbiAgICAgIGNvbG9yOiAkYm9keS1mb250LWNvbG9yO1xuICAgICAgZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LXNlbWlib2xkO1xuICAgICAgZm9udC1zaXplOiByZW0tY2FsYygxNSk7XG4gICAgICBib3JkZXItbGVmdDogMnB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICBwYWRkaW5nOiAxcmVtIDAuN3JlbTtcblxuICAgICAgJjpob3ZlciwgJjphY3RpdmUsICY6Zm9jdXMge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKCRzZWNvbmRhcnktY29sb3IsIDAuMDUpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIHVsLm1lbnUubmVzdGVkIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgcGFkZGluZy1sZWZ0OiAxcmVtO1xuICAgIGJvcmRlci10b3A6IDJweCBzb2xpZCAkcHJpbWFyeS1hMjA7XG5cbiAgICBhIHtcbiAgICAgIGJvcmRlci1sZWZ0OiAycHggc29saWQgJHByaW1hcnktYTIwO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgkcHJpbWFyeS1jb2xvciwgMC4wNSk7XG5cbiAgICAgICY6aG92ZXIsICY6Zm9jdXMge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKCRwcmltYXJ5LWEyMCwgMC4yKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAuY3VycmVudC1tZW51LWl0ZW0gPiBhIHtcbiAgICAgIGJvcmRlci1sZWZ0LWNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbiAgICB9XG4gIH1cblxufVxuXG4ubW9iaWxlLW1lbnUsXG4ubW9iaWxlLW9mZi1jYW52YXMtbWVudSB7XG5cbiAgLm1lbnUgLmlzLWFjdGl2ZSA+IGEge1xuICAgIC8vIHNldHRpbmcgY3VycmVudCBwYWdlIHN0eWxpbmdcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBsaWdodGVuKCRkYXJrLW5hdi1jb2xvciwgNSUpO1xuICB9XG59XG4vLyBwYWdlIGNvbnRlbnQgdGhhdCBwdXNoZXMgb3ZlciB3aGVuIE9GRiBDQU5WQVMgTUVOVSBjb21lcyBpblxuLm9mZi1jYW52YXMtY29udGVudCB7XG4gIHRyYW5zaXRpb246IGFsbCAwLjVzIGVhc2U7XG5cbiAgJi5pcy1vcGVuLXJpZ2h0IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgLy8gT3ZlcmxheSBvdmVyIGNvbnRlbnQgd2hlbiBtZW51IGlzIG91dFxuICAgICY6YWZ0ZXIge1xuICAgICAgY29udGVudDogJyAnO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiAwcmVtO1xuICAgICAgYm90dG9tOiAwcmVtO1xuICAgICAgbGVmdDogMHJlbTtcbiAgICAgIHJpZ2h0OiAwcmVtO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgkYmxhY2ssIDAuOCk7XG4gICAgICB6LWluZGV4OiAxMDtcbiAgICB9XG4gIH1cbn1cbi8vIHJlbW92ZSBkZWZhdWx0IG92ZXJsYXlcbi5qcy1vZmYtY2FudmFzLW92ZXJsYXkuaXMtdmlzaWJsZSB7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xufVxuXG5ib2R5Lm9mZmNhbnZhcyB7XG4gICNzaXRlLWhlYWRlciB7XG4gICAgJi5zdGlja3kge1xuICAgICAgcG9zaXRpb246IGZpeGVkO1xuICAgICAgdG9wOiAwcmVtO1xuICAgICAgbGVmdDogMHJlbTtcbiAgICAgIHJpZ2h0OiAwcmVtO1xuICAgICAgei1pbmRleDogMTAwO1xuXG4gICAgICAmLm9mZi1jYW52YXMtcHVzaGVkIHtcbiAgICAgICAgei1pbmRleDogMjtcbiAgICAgICAgbGVmdDogLTI1MHB4O1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vLyBUYWJsZXQgYW5kIGRlc2t0b3AgbWVudVxuLnRvcC1iYXItcmlnaHQge1xuICBwb3NpdGlvbjpyZWxhdGl2ZTtcbiAgZmxleDogMSAxIGF1dG87XG4gIHotaW5kZXg6Mjtcbn1cbi50b3AtYmFyLWxlZnR7XG4gIHBvc2l0aW9uOnJlbGF0aXZlO1xuICB6LWluZGV4OjI7XG59XG5cbi50b3AtYmFyIHtcbiAgaGVpZ2h0OiBhdXRvO1xuICBtYXJnaW4tbGVmdDogYXV0bztcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICBAZXh0ZW5kIC5ncmlkLWNvbnRhaW5lcjtcbiAgLy8gYWRkIHNlY3Rpb24gcGFkZGluZyB0byBsZWZ0IHNpZGUgb2YgbmF2XG4gIC8vIHJpZ2h0IHNpZGUgbmVlZHMgY3VzdG9tIGFwcGxpY2F0aW9uIGJlY2F1c2Ugb2YgaG93IHRoZSBcImFmdGVyLWluY2x1ZGVcIiBtaXhpbiB3b3Jrc1xuICBAaW5jbHVkZSBzZWN0aW9uLXNwYWNpbmctb3ZlcnJpZGUobGVmdCxwYWRkaW5nLDEsICRzZWN0aW9uLXBhZGRpbmctbGVmdHJpZ2h0KTtcbiAgYmFja2dyb3VuZDp0cmFuc3BhcmVudDtcblxuICAvKipcbiAgUFJFLU1FTlUgbmF2IHN0eWxpbmdcbiAgICovXG4gICAudG9wLWJhci1yLXByZW1lbnUge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IHN0cmV0Y2g7XG4gICAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjokYWxtb3N0LXdoaXRlO1xuICAgIC8vIGNhcnJ5IHRoZSBiZyBjb2xvciB0byB0aGUgcmlnaHQgZWRnZSBvZiB0aGUgc2NyZWVuLCBhbHdheXNcbiAgICBAaW5jbHVkZSBhZnRlci1leHRlbmQoJGFsbW9zdC13aGl0ZSwgcmVtLWNhbGMoMTQ0MCksIGZhbHNlLCBmYWxzZSk7XG4gICAgLy8gYXBwbHkgc2VjdGlvbiBwYWRkaW5nIHRvIHRoZSByaWdodC5cbiAgICAvLyByZXF1aXJlZCB0byBiZSBhcHBsaWVkIHRvIGVhY2ggLnRvcC1iYXItci1wcmVtZW51ICYgLnRvcC1iYXItci1tZW51IGluZGl2aWR1YWxseSBiZWNhdXNlXG4gICAgLy8gb3RoZXJ3aXNlIGl0IHRocm93cyBvZmYgdGhlIFwiYWZ0ZXItZXh0ZW5kXCIgbWl4aW4gY2FsY3VsYXRpb25zIC5cbiAgICBAaW5jbHVkZSBzZWN0aW9uLXNwYWNpbmctb3ZlcnJpZGUocmlnaHQscGFkZGluZywxLCAkc2VjdGlvbi1wYWRkaW5nLWxlZnRyaWdodCk7XG5cbiAgICAubWVudSA+bGk6bm90KC5tZW51LXRleHQpe1xuICAgICAgLyoqXG4gICAgICBEZWZhdWx0IGxpbmsgc3R5bGluZyBmb3IgcHJlLW5hdlxuICAgICAgICovXG4gICAgICAmPmF7XG4gICAgICAgIGhlaWdodDokc2VhcmNoLWlucHV0LWhlaWdodDtcbiAgICAgICAgcGFkZGluZzowLjVyZW07XG4gICAgICAgIGZvbnQtc2l6ZTpyZW0tY2FsYygxNCk7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiRnbG9iYWwtd2VpZ2h0LW5vcm1hbDtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIGRpc3BsYXk6ZmxleDtcbiAgICAgIH1cbiAgICAgIC8vY3VycmVudCBwYWdlIHN0eWxpbmcgZm9yIHByZW1lbnVcbiAgICAgIC8vIHRvcCBsZXZlbCBjdXJyZW50IHBhZ2Ugc3R5bGlpbmdcbiAgICAgICYuY3VycmVudF9wYWdlX2l0ZW0gPiBhIHtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOnVuZGVybGluZTtcbiAgICAgICAgYm9yZGVyOm5vbmU7XG4gICAgICAgIGNvbG9yOmluaGVyaXQ7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLm1lbnUgPiBsaTpub3QoLm1lbnUtdGV4dCk6bGFzdC1vZi10eXBlIGE6YWZ0ZXIge1xuICAgICAgY29udGVudDogbm9uZTtcbiAgICB9XG5cbiAgICAucHJlbWVudS1jb250IHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgcGFkZGluZzogMDtcbiAgICB9XG5cbiAgICAuc2VhcmNoZm9ybS1jb250IHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBhbGlnbi1pdGVtczogc3RyZXRjaDtcbiAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgIHBhZGRpbmc6IDByZW07XG5cbiAgICAgIGlucHV0IHtcbiAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYygxNCk7XG4gICAgICB9XG5cbiAgICAgIG1hcmdpbi1yaWdodDogMXJlbTtcbiAgICB9XG4gIH1cblxuICAvKipcbiAgUHJpbWFyeSBOYXYgTWVudSBpbW1lZGlhdGUgcGFyZW50XG4gICAqL1xuICAudG9wLWJhci1yLW1lbnUge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xuICAgIEBpbmNsdWRlIHNlY3Rpb24tc3BhY2luZy1vdmVycmlkZShyaWdodCxwYWRkaW5nLDEsICRzZWN0aW9uLXBhZGRpbmctbGVmdHJpZ2h0KTtcbiAgfVxuXG4gIHVsIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgfVxuXG4gIC8vIGdlbmVyYWwgc3R5bGluZyBmb3IgYWxsIG5hdiBpdGVtc1xuICAubWVudSBhIHtcbiAgICBjb2xvcjogJGJvZHktZm9udC1jb2xvcjtcbiAgICBmb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtc2VtaWJvbGQ7XG4gICAgZm9udC1zaXplOiAwLjhyZW07XG4gICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgcGFkZGluZzogMXJlbSAxLjJyZW07XG5cbiAgICAmOmhvdmVyOm5vdCguYnV0dG9uKSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKCRwcmltYXJ5LWNvbG9yLCAwLjEpO1xuICAgICAgY29sb3I6ICRib2R5LWZvbnQtY29sb3I7XG4gICAgfVxuXG4gICAgJiA+IGxpOm5vdCgubWVudS10ZXh0KSA+IGEge1xuICAgICAgcGFkZGluZzogMXJlbTtcbiAgICB9XG4gIH1cbiAgLy8uZHJvcGRvd24ubWVudSA+IGxpLmlzLWRyb3Bkb3duLXN1Ym1lbnUtcGFyZW50LmlzLWFjdGl2ZSA+YXtcbiAgLy8gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoJHByaW1hcnktY29sb3IsIDAuMSk7XG4gIC8vICBjb2xvcjogJGJvZHktZm9udC1jb2xvcjtcbiAgLy99XG5cbiAgLy8gc3R5bGluZyBmb3IgdG9wIGxldmVsIG5hdiBpdGVtcyBpbiBwcmltYXJ5IG1lbnVcbiAgdWwubWVudTpub3QoLnN1Ym1lbnUpIHtcbiAgICAmID4gbGkge1xuICAgICAgLy90b3AgbGV2ZWxcbiAgICAgICYgPiBhIHtcbiAgICAgICAgcGFkZGluZzogcmVtLWNhbGMoMzIpIDAuNzVyZW07XG4gICAgICAgIGZvbnQtc2l6ZTogJGJvZHktZm9udC1zaXplLXNtYWxsO1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbiAgICAgICAgZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LWJvbGQ7XG4gICAgICAgIGJvcmRlci1ib3R0b206M3B4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSkge1xuICAgICAgICAgIHBhZGRpbmc6IHJlbS1jYWxjKDMyKSByZW0tY2FsYygyNCk7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgLy8gdG9wIGxldmVsIGN1cnJlbnQgcGFnZSBzdHlsaWluZ1xuICAgICAgJi5jdXJyZW50LW1lbnUtaXRlbSA+IGF7XG4gICAgICAgIGNvbG9yOiRib2R5LWZvbnQtY29sb3I7XG4gICAgICAgIGJvcmRlci1ib3R0b206M3B4IHNvbGlkICRwcmltYXJ5LWNvbG9yO1xuICAgICAgfVxuXG4gICAgICAvLyBkcm9wZG93biBtZW51IGNhcmQgc3R5bGluZ1xuICAgICAgJiA+IC5zdWJtZW51IHtcbiAgICAgICAgYm9yZGVyLXRvcDogbm9uZTtcbiAgICAgICAgYm94LXNoYWRvdzogMCA1cHggMTBweCByZ2JhKCRibGFjaywgLjIwKTtcbiAgICAgICAgei1pbmRleDogMDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAubWVudSA+IGxpLmlzLWFjdGl2ZSA+IGEge1xuICAgIGNvbG9yOiAkYm9keS1mb250LWNvbG9yO1xuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICB9XG5cbiAgLy8ubWVudSBsaTpub3QoOmxhc3QtY2hpbGQpIHsgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIzRlNGU0ZTsgfVxuXG4gIC8vLmRyb3Bkb3duLm1lbnUgLnN1Ym1lbnUgeyBib3JkZXI6IDA7IH1cbiAgLy8uZHJvcGRvd24ubWVudSAuaGFzLXN1Ym1lbnUuaXMtZG93bi1hcnJvdyBhIHsgcGFkZGluZy1yaWdodDogMXJlbTsgfVxuICAvLy5kcm9wZG93bi5tZW51IC5oYXMtc3VibWVudS5pcy1kb3duLWFycm93ID4gYTo6YWZ0ZXIgeyBib3JkZXI6IDA7IH1cblxuICAvLyBEcm9wZG93biBjYXJldC9hcnJvdyBmb3IgdGhlIHRvcC1sZXZlbCBuYXZcbiAgLmRyb3Bkb3duLm1lbnU6Zmlyc3QtY2hpbGQgPiBsaS5pcy1kcm9wZG93bi1zdWJtZW51LXBhcmVudCA+IGE6OmFmdGVyIHtcbiAgICByaWdodDogMXJlbTtcbiAgICBiYWNrZ3JvdW5kOnRyYW5zcGFyZW50IHVybCguLi9pbWFnZXMvaWNvbnMvbGluZWNhcmV0X2Rvd25fYmxhY2suc3ZnKSBjZW50ZXIgY2VudGVyO1xuICAgIHdpZHRoOjE4cHg7XG4gICAgaGVpZ2h0OjE4cHg7XG4gICAgYm9yZGVyOm5vbmU7XG4gICAgdG9wOjUwJTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gICAgbWFyZ2luLXRvcDoycHg7XG4gIH1cblxuICAuZHJvcGRvd24ubWVudSB7XG4gICAgLnN1Ym1lbnUge1xuICAgICAgYm9yZGVyOiAwO1xuICAgICAgLy8gY3VycmVudCBwYWdlIG5hdiBpdGVtIHN0eWxpbmcgZm9yIHN1Ym1lbnVzXG4gICAgICBsaS5jdXJyZW50LW1lbnUtaXRlbSA+IGF7XG4gICAgICAgIGJvcmRlci1sZWZ0OjNweCBzb2xpZCAkcHJpbWFyeS1jb2xvcjtcbiAgICAgICAgY29sb3I6JGJvZHktZm9udC1jb2xvcjtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAuaGFzLXN1Ym1lbnUuaXMtZG93bi1hcnJvdyB7XG4gICAgICBhIHtcbiAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgYm9yZGVyOiAwO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICBsaSB7XG4gICAgICAgIC5pcy1kcm9wZG93bi1zdWJtZW51LXBhcmVudCB7XG4gICAgICAgICAgYSB7XG4gICAgICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICBsaSB7XG4gICAgICAmLmlzLWRyb3Bkb3duLXN1Ym1lbnUtcGFyZW50IHtcbiAgICAgICAgJiA+IGEge1xuICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDIuNXJlbTtcbiAgICAgICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgICYub3BlbnMtbGVmdCB7XG4gICAgICAgIC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgICAgICAgICB6LWluZGV4OiA0O1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICB3aWR0aDogbWF4LWNvbnRlbnQ7XG4gICAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG59XG4udG9wLWJhci1jb250YWluZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG4gIHRyYW5zaXRpb246IGhlaWdodCAwLjNzIGVhc2UtaW4tb3V0LCB3aWR0aCAwLjNzIGVhc2UtaW4tb3V0O1xuICB3aWR0aDogMTAwJTtcbn1cblxuLnNpdGUtbmF2aWdhdGlvbiB7XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuICAgIHBhZGRpbmc6IDA7IC8vIHByZXZlbnRzIGNvbnRhaW5lciB2aXNpYmlsaXR5IG9uIHNtYWxsIHNjcmVlbnNcbiAgfVxufVxuXG4vLyBXUCBwb3N0IG5hdmlnYXRpb25cbi5wb3N0LW5hdmlnYXRpb24ge1xuICBAaW5jbHVkZSBjbGVhcmZpeDtcbn1cblxuLm5hdi1wcmV2aW91cyB7XG4gIGZsb2F0OmxlZnQ7XG59XG5cbi5uYXYtbmV4dCB7XG4gIGZsb2F0OnJpZ2h0O1xufVxuXG4vLyBnZW5lcmFsIHNlYXJjaCBpbnB1dCBjb250YWluZXJcbi5pbnB1dC1ncm91cCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAuaW5wdXQtZ3JvdXAtZmllbGQge1xuICAgIG1hcmdpbi1ib3R0b206IDByZW07XG4gICAgYm9yZGVyLXJhZGl1czogMDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAzcmVtO1xuICAgIGJvcmRlcjogMnB4IHNvbGlkICRtZWRpdW0tZ3JleTtcbiAgICBib3gtc2hhZG93OiBub25lO1xuICAgIGNvbG9yOiAkYXNpY3MtYmx1ZTtcblxuICAgICY6OnBsYWNlaG9sZGVyIHtcbiAgICAgIGNvbG9yOiByZ2JhKCRibGFjaywgMC4zKTtcbiAgICB9XG5cbiAgICAmOmZvY3VzIHtcbiAgICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gICAgICBib3JkZXI6IDJweCBzb2xpZCAkcHJpbWFyeS1jb2xvcjtcbiAgICB9XG4gIH1cblxuICAuaW5wdXQtZ3JvdXAtYnV0dG9uIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgcmlnaHQ6IDA7XG4gICAgdG9wOiAwO1xuICAgIGJvdHRvbTogMDtcbiAgICBmb250LXNpemU6IDEuMnJlbTtcblxuICAgIC5zZWFyY2hzdWJtaXQge1xuICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICBjb2xvcjogJGFzaWNzLWJsdWU7XG4gICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICB0cmFuc2l0aW9uOiAwLjVzIGVhc2U7XG4gICAgICBib3JkZXItcmFkaXVzOiAwcHggMnB4IDJweCAwcHg7XG5cbiAgICAgIC8vIHNlYXJjaCBpY29uXG4gICAgICAmOmJlZm9yZSB7XG4gICAgICAgIGZvbnQtZmFtaWx5OiAnRm9udCBBd2Vzb21lIDUgUHJvJztcbiAgICAgICAgZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LW5vcm1hbDtcbiAgICAgICAgY29udGVudDogXCJcXGYwMDJcIjtcbiAgICAgICAgcGFkZGluZzogMCAxcmVtIDAgMDtcbiAgICAgICAgZm9udC1zaXplOiAkbW9iaWxlLW1lbnUtaWNvbi1zaXplO1xuICAgICAgfVxuXG4gICAgICAmOmhvdmVyLFxuICAgICAgJjphY3RpdmUsXG4gICAgICAmOmZvY3VzIHtcbiAgICAgICAgY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vL2hlYWRlci1zcGVjaWZpYyBzZWFyY2ggaW5wdXQgYWRqdXN0bWVudHNcbi5oZWFkaW5nLXNlYXJjaGZvcm0tY29udCB7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIEBpbmNsdWRlIHNlY3Rpb24tc3BhY2luZy1vdmVycmlkZShyaWdodCwgbWFyZ2luLCAyLCAkbWFwOiAkc2VjdGlvbi1wYWRkaW5nLWxlZnRyaWdodCk7XG4gIEBpbmNsdWRlIHNlY3Rpb24tc3BhY2luZy1vdmVycmlkZShsZWZ0LCBtYXJnaW4sIDIsICRtYXA6ICRzZWN0aW9uLXBhZGRpbmctbGVmdHJpZ2h0KTtcbiAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICBtYXJnaW4tbGVmdDogMHJlbTtcbiAgfVxuICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKXtcbiAgICBAaW5jbHVkZSBzZWN0aW9uLXNwYWNpbmctb3ZlcnJpZGUocmlnaHQsIG1hcmdpbiwgMSwgJG1hcDogJHNlY3Rpb24tcGFkZGluZy1sZWZ0cmlnaHQpO1xuICAgIEBpbmNsdWRlIHNlY3Rpb24tc3BhY2luZy1vdmVycmlkZShsZWZ0LCBtYXJnaW4sIDEsICRtYXA6ICRzZWN0aW9uLXBhZGRpbmctbGVmdHJpZ2h0KTtcbiAgfVxuXG4gIC5pbnB1dC1ncm91cCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMHJlbTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgfVxuICAuaW5wdXQtZ3JvdXAtZmllbGQge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoJGJsYWNrLCAwLjA1KTtcbiAgICBjb2xvcjogJGJvZHktZm9udC1jb2xvcjtcbiAgICBib3gtc2hhZG93OiBub25lO1xuICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICBib3JkZXI6bm9uZTtcbiAgICB0cmFuc2l0aW9uOiB3aWR0aCAwLjVzIGVhc2UsIGJhY2tncm91bmQtY29sb3IgMC41cyBlYXNlLCBib3JkZXItY29sb3IgMC41cyBlYXNlO1xuICAgIHdpZHRoOiAyLjVyZW07XG4gICAgaGVpZ2h0OiAkbW9iaWxlLXRpdGxlLWJhci1oZWlnaHQ7XG4gICAgcGFkZGluZzogMDtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKXtcbiAgICAgIGhlaWdodDogJHNlYXJjaC1pbnB1dC1oZWlnaHQ7XG4gICAgICB3aWR0aDoycmVtO1xuICAgIH1cblxuICAgICY6aG92ZXIsICY6YWN0aXZlLCAmOmZvY3VzIHtcbiAgICAgIGNvbG9yOiAkYm9keS1mb250LWNvbG9yO1xuICAgIH1cblxuICAgICY6OnBsYWNlaG9sZGVyIHtcbiAgICAgIGNvbG9yOnRyYW5zcGFyZW50O1xuICAgICAgZm9udC1zaXplOiAxcmVtO1xuICAgIH1cbiAgfVxuICAuaW5wdXQtZ3JvdXAtYnV0dG9uIHtcbiAgICB0b3A6IDByZW07XG4gICAgYm90dG9tOiAwcmVtO1xuICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMC41cyBlYXNlLWluO1xuXG4gICAgLy8gc2VhcmNoIGJ1dHRvbiBzdHlsaW5nXG4gICAgLnNlYXJjaHN1Ym1pdCB7XG4gICAgICBwYWRkaW5nOiAwcmVtO1xuICAgICAgY29sb3I6IHJnYmEoJGJsYWNrLDAuNyk7XG4gICAgfVxuICB9XG4gIC8vc2VhcmNoIGZvcm0gSURzXG4gICNzZWFyY2hmb3JtLWRlc2t0b3AsICNzZWFyY2hmb3JtLW1vYmlsZSB7XG4gICAgQGluY2x1ZGUgZWFzZS1hbGwoKTtcblxuICAgICY6bm90KC5mb3JtLWFjdGl2ZSkge1xuICAgICAgLmlucHV0LWdyb3VwLWZpZWxkIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgIGNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBzdHlsaW5nIGZvciB3aGVuIGZvcm0gaXMgYWN0aXZlXG4gICAgJi5mb3JtLWFjdGl2ZSB7XG4gICAgICAuaW5wdXQtZ3JvdXAtZmllbGQge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcHJpbWFyeS1hMjA7XG4gICAgICAgIHBhZGRpbmctbGVmdDogMXJlbTtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMi41cmVtO1xuICAgICAgICB3aWR0aDogMTByZW07XG4gICAgICAgIGNvbG9yOiAkYm9keS1mb250LWNvbG9yO1xuICAgICAgICBib3JkZXItY29sb3I6ICRwcmltYXJ5LWEyMDtcbiAgICAgICAgZm9udC13ZWlnaHQ6JGdsb2JhbC13ZWlnaHQtc2VtaWJvbGQ7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2Upe1xuICAgICAgICAgIHBhZGRpbmctbGVmdDowLjVyZW07XG4gICAgICAgICAgcGFkZGluZy1yaWdodDoxcmVtO1xuICAgICAgICB9XG5cbiAgICAgICAgJjpmb2N1cyB7XG4gICAgICAgICAgYm9yZGVyLWNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiR3aGl0ZTtcbiAgICAgICAgfVxuXG4gICAgICAgICY6OnBsYWNlaG9sZGVyIHtcbiAgICAgICAgICB0cmFuc2l0aW9uLWRlbGF5OiB1bnNldDtcbiAgICAgICAgICBjb2xvcjogcmdiYSgkYm9keS1mb250LWNvbG9yLCAwLjYpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICAvLyBzZWFyY2ggYnV0dG9uIHN0eWxpbmcgd2hlbiBmb3JtIGlzIG9wZW5cbiAgICAgIC5pbnB1dC1ncm91cC1idXR0b24ge1xuICAgICAgICAuc2VhcmNoc3VibWl0IHtcbiAgICAgICAgICBjb2xvcjogJGJsYWNrO1xuICAgICAgICAgICY6aG92ZXIsICY6Zm9jdXN7XG4gICAgICAgICAgICBjb2xvcjokcHJpbWFyeS1jb2xvcjtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLy9hZGp1c3QgZm9yIHdvcmRwcmVzcyBhZG1pbiBiYXJcbmJvZHkubG9nZ2VkLWluLmFkbWluLWJhciB7XG4gICNzaXRlLWhlYWRlciB7XG4gICAgJi5zdGlja3kge1xuICAgICAgdG9wOiA0NnB4O1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgdG9wOiAzMnB4O1xuICAgICAgfVxuICAgIH1cbiAgfVxuICAvKiBtb2JpbGUgZmx5b3V0IG1lbnUgKi9cbiAgLm1vYmlsZS1mbHlvdXQge1xuICAgIHRvcDo0NnB4O1xuICAgIG1heC1oZWlnaHQ6Y2FsYygxMDB2aCAtIDQ2cHgpO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgIHRvcDozMnB4O1xuICAgICAgbWF4LWhlaWdodDpjYWxjKDEwMHZoIC0gMzJweCk7XG4gICAgfVxuICB9XG59XG5cbi8vIG1vYmlsZSBkcm9wZG93biBhcnJvd1xuLnN1Ym1lbnUtdG9nZ2xlOjphZnRlciB7XG4gIGJvcmRlci1jb2xvcjogJHByaW1hcnktY29sb3IgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQ7XG59XG5cbi8qKlxuVE9QIE9GIE5BViBFTUVSR0VOQ1kgQkFOTkVSXG4gKi9cbi5iYW5uZXItY3RhIHtcbiAgd2lkdGg6IDEwMCU7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgei1pbmRleDogMTAwMDtcbiAgYmFja2dyb3VuZDogJHNlY29uZGFyeS1jb2xvcjtcbiAgcGFkZGluZy10b3A6IC41cmVtO1xuICBwYWRkaW5nLWJvdHRvbTogLjVyZW07XG4gIC5jb250ZW50LWNlbGwge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAuY29udGVudC13cmFwIHtcbiAgICAgIC5iYW5uZXItdGV4dCB7XG4gICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgfVxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgICAgZGlzcGxheTogaW5saW5lO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICAuYmFubmVyLWxpbmsge1xuICAgICAgICBmb250LXNpemU6IDFyZW07XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICAgICAgICBjb2xvcjogcmdiYSgkd2hpdGUsIC44KTtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgICB9XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgICBmb250LXNpemU6IDEuMjVyZW07XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLyogbW9iaWxlIGZseW91dCBtZW51ICovXG4ubW9iaWxlLWZseW91dCB7XG4gIHBvc2l0aW9uOmZpeGVkO1xuICBib3gtc2hhZG93OiAkcmstYm94LXNoYWRvdztcbiAgdG9wOjByZW07XG4gIG1heC13aWR0aDoxMDB2dztcbiAgbWF4LWhlaWdodDoxMDB2aDtcbiAgdHJhbnNpdGlvbjphbGwgMC41cyBlYXNlO1xuICB6LWluZGV4OjEwMjtcbiAgYmFja2dyb3VuZC1jb2xvcjokd2hpdGU7XG4gIG92ZXJmbG93LXk6YXV0bztcbiAgJi5vcGVucy1yaWdodCB7XG4gICAgcmlnaHQ6LTEwMHZ3O1xuICAgICYuaXMtb3BlbiB7XG4gICAgICByaWdodDowdnc7XG4gICAgfVxuICB9XG4gICYub3BlbnMtbGVmdCB7XG4gICAgbGVmdDotMTAwdnc7XG4gICAgJi5pcy1vcGVuIHtcbiAgICAgIGxlZnQ6MHZ3O1xuICAgIH1cbiAgfVxuICAubWVudS1jbG9zZS1jb250IHtcbiAgICAuY3VzdG9tLW1lbnUtaWNvbiB7XG4gICAgICB3aWR0aDphdXRvO1xuICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgICBkaXNwbGF5OmZsZXg7XG4gICAgICBhbGlnbi1pdGVtczpjZW50ZXI7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6ZmxleC1lbmQ7XG4gICAgICBib3JkZXItcmFkaXVzOjByZW07XG4gICAgICB0cmFuc2l0aW9uOmFsbCAwLjVzIGVhc2U7XG4gICAgICBoZWlnaHQ6NC4wNjI1cmVtO1xuICAgICAgcGFkZGluZzoxLjVyZW07XG4gICAgICBjb2xvcjokcHJpbWFyeS1jb2xvcjtcbiAgICAgICY6aG92ZXIsICY6Zm9jdXMsICY6YWN0aXZlIHtcbiAgICAgICAgPiBzcGFuOjpiZWZvcmUge1xuICAgICAgICAgIGNvbG9yOiRibGFjaztcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgPiBzcGFuOjpiZWZvcmUge1xuICAgICAgICB0cmFuc2l0aW9uOmNvbG9yIDAuNXMgZWFzZTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgLm1lbnUge1xuICAgIG1pbi13aWR0aDpyZW0tY2FsYygzMjBweCk7XG4gICAgcGFkZGluZy1ib3R0b206MXJlbTtcbiAgICAubWVudS1pdGVtIHtcbiAgICAgICYubWVudS1zZWN0aW9uLXN0YXJ0IHtcbiAgICAgICAgbWFyZ2luLXRvcDowLjVyZW07XG4gICAgICAgIHBhZGRpbmctdG9wOjEuNXJlbTtcbiAgICAgICAgYm9yZGVyLXRvcDoxcHggc29saWQgJG1lZGl1bS1ncmF5O1xuICAgICAgfVxuICAgICAgJi5pcy1zdWJtZW51LWl0ZW0ge1xuICAgICAgICBib3JkZXItbGVmdDoxcHggc29saWQgJHByaW1hcnktY29sb3I7XG4gICAgICB9XG4gICAgICAmLmlzLWFjdGl2ZSA+IGEge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOnJnYmEoJHByaW1hcnktY29sb3IsMC4xNSk7XG4gICAgICB9XG4gICAgICBhIHtcbiAgICAgICAgY29sb3I6YmxhY2s7XG4gICAgICAgIHdpZHRoOjEwMCU7XG4gICAgICAgIHBhZGRpbmc6MXJlbSAycmVtO1xuICAgICAgICBmb250LXdlaWdodDokZ2xvYmFsLXdlaWdodC1ib2xkO1xuICAgICAgICAmOmhvdmVyLCAmOmZvY3VzLCAmOmFjdGl2ZSB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjpyZ2JhKCRwcmltYXJ5LWNvbG9yLDAuMjUpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbiIsIi5ib2R5LW1haW57XG4gIG92ZXJmbG93OmhpZGRlbjtcbn1cbi5wYWdlLXdyYXAge1xuICBtaW4taGVpZ2h0OjUwdmg7XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2Upe1xuICAgIG1pbi1oZWlnaHQ6IHJlbS1jYWxjKDQwMCk7XG4gIH1cbn1cbi5lbnRyeS1jb250ZW50LCBwe1xuICBhOm5vdCguYnV0dG9uKXtcbiAgICBAZXh0ZW5kIGEucmVnLWxpbms7XG4gIH1cbn1cbi5lbnRyeS1jb250ZW50IHtcblx0Y29sb3I6ICRuaWdodC1yaWRlcjtcblxuXHRoMSwgaDIsIGgzLCBoNCwgaDUsIGg2IHtcblx0XHRAaW5jbHVkZSBzZWN0aW9uLXNwYWNpbmctb3ZlcnJpZGUodG9wLCBtYXJnaW4sIDEuMzMpO1xuXHRcdEBpbmNsdWRlIHNlY3Rpb24tc3BhY2luZy1vdmVycmlkZShib3R0b20sIG1hcmdpbiwgOCk7XG5cdH1cbn1cblxuLnNpZGViYXIge1xuICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsKSB7XG4gICAgQGluY2x1ZGUgeHktY2VsbCgxMik7XG4gIH1cblxuICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgIEBpbmNsdWRlIHh5LWNlbGwoNCk7XG4gICAgbWFyZ2luLXRvcDogMXJlbTtcbiAgfVxufVxuLy8gcmVzdWx0cyBsaXN0IHN0eWxpbmdcbi5yZXN1bHQtaXRlbSB7XG4gIC5lbnRyeS10aXRsZSB7XG4gICAgQGV4dGVuZCAuc2hvdy1hcy1oNDtcbiAgICBtYXJnaW4tYm90dG9tOjAuNzVyZW07XG4gICAgZGlzcGxheTpibG9jaztcbiAgfVxuICAucG9zdC1mZWF0dXJlZC1pbWFnZSB7XG4gICAgJj5kaXZ7XG4gICAgICBiYWNrZ3JvdW5kLXNpemU6Y292ZXI7XG4gICAgICBiYWNrZ3JvdW5kLXJlcGVhdDpuby1yZXBlYXQ7XG4gICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOmNlbnRlciBjZW50ZXI7XG4gICAgICBoZWlnaHQ6cmVtLWNhbGMoNjApO1xuICAgICAgd2lkdGg6MTAwJTtcbiAgICAgIG1heC13aWR0aDpyZW0tY2FsYyg4MCk7XG4gICAgICBtYXJnaW4tbGVmdDphdXRvO1xuICAgICAgbWFyZ2luLXJpZ2h0OjA7XG4gICAgICBib3JkZXItcmFkaXVzOjJweDtcbiAgICAgIGJvcmRlcjoycHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgICBAaW5jbHVkZSBlYXNlLWFsbCgpO1xuICAgIH1cbiAgfVxuICAubWV0YS1jb250e1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKXtcbiAgICAgIG1hcmdpbi1ib3R0b206MC41cmVtO1xuICAgIH1cbiAgICAmPip7XG4gICAgICBmb250LXNpemU6cmVtLWNhbGMoMTQpO1xuICAgICAgY29sb3I6cmdiYSgkYm9keS1mb250LWNvbG9yLCAwLjcpO1xuICAgICAgbWFyZ2luLWJvdHRvbTowLjI1cmVtO1xuICAgICAgZGlzcGxheTpibG9jaztcbiAgICAgIGZvbnQtd2VpZ2h0OiRnbG9iYWwtd2VpZ2h0LXNlbWlib2xkO1xuICAgICAgbGluZS1oZWlnaHQ6IDEuMjtcbiAgICAgICY6bGFzdC1jaGlsZHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTowO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICBwe1xuICAgICY6bGFzdC1vZi10eXBle1xuICAgICAgbWFyZ2luLWJvdHRvbTowO1xuICAgIH1cbiAgfVxufVxuLnJlc3VsdC1saW5rIHtcbiAgZGlzcGxheTpibG9jaztcbiAgYmFja2dyb3VuZC1jb2xvcjokd2hpdGU7XG4gIGNvbG9yOiRib2R5LWZvbnQtY29sb3I7XG4gIGJvcmRlci1ib3R0b206MXB4IHNvbGlkICRsaWdodC1ncmF5O1xuICBwYWRkaW5nOjEuMjVyZW0gMS4yNXJlbSAxLjI1cmVtIDA7XG4gIHBvc2l0aW9uOnJlbGF0aXZlO1xuICAmOmFmdGVye1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGhlaWdodDogMnB4O1xuICAgIHdpZHRoOiAwO1xuICAgIHBvc2l0aW9uOmFic29sdXRlO1xuICAgIGxlZnQ6MDtcbiAgICBib3R0b206MDtcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICB0cmFuc2l0aW9uOiB3aWR0aCAuNXMgZWFzZSwgYmFja2dyb3VuZC1jb2xvciAuNXMgZWFzZTtcbiAgICBtYXJnaW4tdG9wOigycHggKyAycHgvMik7XG4gIH1cbiAgJjpob3ZlciwgJjpmb2N1cywgJjphY3RpdmUge1xuICAgIGJvcmRlci1jb2xvcjp0cmFuc3BhcmVudDtcbiAgICAmOmFmdGVye1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBiYWNrZ3JvdW5kOiAkcHJpbWFyeS1jb2xvcjtcbiAgICB9XG4gICAgLmVudHJ5LXRpdGxle1xuICAgICAgY29sb3I6JHByaW1hcnktY29sb3I7XG4gICAgfVxuICAgICY+Kjpub3QoLmVudHJ5LXRpdGxlKXtcbiAgICAgIGNvbG9yOiRib2R5LWZvbnQtY29sb3I7XG4gICAgfVxuICAgIC5wb3N0LWZlYXR1cmVkLWltYWdlIHtcbiAgICAgICY+ZGl2e1xuICAgICAgICBib3JkZXItY29sb3I6JHByaW1hcnktY29sb3I7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4udGFnLWxpc3R7XG4gIGNvbG9yOnJnYmEoJGJvZHktZm9udC1jb2xvciwgMC4zKTtcbiAgbWFyZ2luLWJvdHRvbTowLjVyZW07XG4gIC8vYmFja2dyb3VuZC1jb2xvcjokbGlnaHQtZ3JheTtcbiAgJj5he1xuICAgIHBhZGRpbmc6MC4yNXJlbSAwLjVyZW07XG4gICAgLy9iYWNrZ3JvdW5kLWNvbG9yOiRsaWdodC1ncmF5O1xuICAgIGNvbG9yOiRwcmltYXJ5LWNvbG9yO1xuICAgIGRpc3BsYXk6aW5saW5lLWJsb2NrO1xuICAgIHBvc2l0aW9uOnJlbGF0aXZlO1xuICAgIG92ZXJmbG93OmhpZGRlbjtcbiAgICB6LWluZGV4OjA7XG4gICAgYmFja2dyb3VuZC1jb2xvcjpyZ2JhKCRibGFjaywgMC4wNSk7XG4gICAgZm9udC1zaXplOnJlbS1jYWxjKDE1KTtcbiAgICAmOmJlZm9yZXtcbiAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgLy9kaXNwbGF5OiBibG9jaztcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgICB0cmFuc2l0aW9uOiBoZWlnaHQgLjJzIGVhc2UsIGJhY2tncm91bmQtY29sb3IgLjJzIGVhc2U7XG4gICAgICBwb3NpdGlvbjphYnNvbHV0ZTtcbiAgICAgIHJpZ2h0OjA7XG4gICAgICBsZWZ0OjA7XG4gICAgICBib3R0b206YXV0bztcbiAgICAgIHRvcDowO1xuICAgICAgaGVpZ2h0OjAlO1xuICAgICAgei1pbmRleDotMTtcbiAgICB9XG4gICAgJjpob3ZlciwgJjpmb2N1c3tcbiAgICAgIHRleHQtZGVjb3JhdGlvbjpub25lO1xuICAgICAgY29sb3I6JHdoaXRlO1xuICAgICAgJjpiZWZvcmV7XG4gICAgICAgIGhlaWdodDoxMDAlO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbi5uby1yZXN1bHRzLWNvbnRhaW5lcntcbiAgcGFkZGluZzoycmVtIDEuNXJlbTtcbiAgYmFja2dyb3VuZC1jb2xvcjpyZ2JhKCRibGFjaywgMC4xKTtcbiAgYm9yZGVyLXJhZGl1czokZ2xvYmFsLXJhZGl1cztcbiAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pe1xuICAgIHdpZHRoOjkwJTtcbiAgICBtYXJnaW4tbGVmdDowO1xuICAgIG1hcmdpbi1yaWdodDphdXRvO1xuICB9XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2Upe1xuICAgIHBhZGRpbmc6Mi41cmVtO1xuICB9XG59XG4ucGFnaW5hdGlvbntcbiAgJj5saXtcbiAgICAmPip7XG4gICAgICBib3JkZXItcmFkaXVzOiRwYWdpbmF0aW9uLXJhZGl1cztcbiAgICAgIGZvbnQtd2VpZ2h0OiRnbG9iYWwtd2VpZ2h0LXNlbWlib2xkO1xuICAgIH1cbiAgfVxufVxuXG4uYXJjaGl2ZS1jb250ZW50IHtcblx0QGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcblx0XHRwYWRkaW5nLXRvcDogMi43NXJlbTtcblx0fVxuXHQuZ3JpZC1jb250YWluZXIge1xuXHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuXHRcdFx0cGFkZGluZzogMXJlbTtcblx0XHR9XG5cdH1cblx0LnRpbGVzIHtcblx0XHQubWFpbi10aWxlLWNlbGwge1xuXHRcdFx0cGFkZGluZy1ib3R0b206IDFyZW07XG5cblx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuXHRcdFx0XHQmOmxhc3QtY2hpbGQge1xuXHRcdFx0XHRcdHBhZGRpbmctYm90dG9tOiAwO1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cblx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG5cdFx0XHRcdHBhZGRpbmctYm90dG9tOiAyLjEyNXJlbTtcblx0XHRcdH1cblx0XHR9XG5cdH1cblx0LmFyY2hpdmUtdGlsZSB7XG5cdFx0aGVpZ2h0OiAxMDAlO1xuXHRcdC50aWxlLXJlc3VsdC1saW5rIHtcblx0XHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdFx0YmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuXHRcdFx0Y29sb3I6ICRib2R5LWZvbnQtY29sb3I7XG5cdFx0XHRib3JkZXI6IDFweCBzb2xpZCAkbWVkaXVtLWdyYXk7XG5cdFx0XHRib3JkZXItcmFkaXVzOiAycHg7XG5cdFx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdFx0XHQmOmhvdmVyLCAmOmZvY3VzLCAmOmFjdGl2ZSB7XG5cdFx0XHRcdGJveC1zaGFkb3c6IDAgMC41cmVtIDEuMzc1cmVtIDAgcmdiYSgkYmxhY2ssMC4xMik7XG5cdFx0XHRcdCY6YWZ0ZXIge1xuXHRcdFx0XHRcdHdpZHRoOiAxMDAlO1xuXHRcdFx0XHRcdGJhY2tncm91bmQ6ICRwcmltYXJ5LWNvbG9yO1xuXHRcdFx0XHR9XG5cdFx0XHRcdC5lbnRyeS10aXRsZSB7XG5cdFx0XHRcdFx0Y29sb3I6ICRwcmltYXJ5LWNvbG9yO1xuXHRcdFx0XHR9XG5cdFx0XHRcdCYgPiAqOm5vdCguZW50cnktdGl0bGUpIHtcblx0XHRcdFx0XHRjb2xvcjogJGJvZHktZm9udC1jb2xvcjtcblx0XHRcdFx0fVxuXHRcdFx0XHQucG9zdC1mZWF0dXJlZC1pbWFnZSB7XG5cdFx0XHRcdFx0JiA+IGRpdiB7XG5cdFx0XHRcdFx0XHRib3JkZXItY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xuXHRcdFx0XHRcdH1cblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdFx0LmdyaWQteCB7XG5cdFx0XHRcdGhlaWdodDogMTAwJTtcblx0XHRcdH1cblx0XHR9XG5cdFx0LnBvc3QtZmVhdHVyZWQtaW1hZ2Uge1xuXHRcdFx0ZGl2IHtcblx0XHRcdFx0aGVpZ2h0OiAxMDAlO1xuXHRcdFx0XHRib3JkZXI6IG5vbmU7XG5cdFx0XHRcdG1heC13aWR0aDogdW5zZXQ7XG5cdFx0XHRcdGJvcmRlci1yYWRpdXM6IDA7XG5cdFx0XHRcdG1hcmdpbjogMDtcblx0XHRcdH1cblx0XHR9XG5cdFx0LmVudHJ5LWNvbnRlbnQge1xuXHRcdFx0cGFkZGluZzogMXJlbSAxLjE4NzVyZW0gMS4zNzVyZW0gMS4xMjVyZW07XG5cdFx0XHQubWV0YS1jb250IHtcblx0XHRcdFx0bWFyZ2luLWJvdHRvbTogMDtcblx0XHRcdFx0dGltZSB7XG5cdFx0XHRcdFx0Zm9udC1zaXplOiAwLjYyNXJlbTtcblx0XHRcdFx0XHRjb2xvcjogcmdiYSgkZGFyay1ncmV5LCAwLjgpO1xuXHRcdFx0XHRcdGxpbmUtaGVpZ2h0OiAxLjY7XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHRcdC5lbnRyeS10aXRsZSB7XG5cdFx0XHRcdEBleHRlbmQgLnNob3ctYXMtaDY7XG5cdFx0XHRcdGxpbmUtaGVpZ2h0OiAxLjI7XG5cdFx0XHRcdG1hcmdpbi1ib3R0b206IDAuNXJlbTtcblx0XHRcdH1cblx0XHRcdHAge1xuXHRcdFx0XHRjb2xvcjogJGRhcmstZ3JleTtcblx0XHRcdFx0Zm9udC1zaXplOiAwLjg3NXJlbTtcblx0XHRcdFx0bGluZS1oZWlnaHQ6IDEuMjE7XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG59XG5cbi5oaWRkZW4sIC5sb2FkLW1vcmUtaGlkZGVuIHtcblx0ZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xufVxuXG4uZW1iZWQtY29udGFpbmVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBwYWRkaW5nLWJvdHRvbTogNTYuMjUlO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogYXV0bztcbiAgYm9yZGVyLXJhZGl1czogJGdsb2JhbC1ib3JkZXItcmFkaXVzLTIwO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkcnVua2VlcGVyLWJsYWNrO1xuICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgbWluLWhlaWdodDogcmVtLWNhbGMoNDc0KTtcbiAgfVxufVxuXG4uZW1iZWQtY29udGFpbmVyIGlmcmFtZSxcbi5lbWJlZC1jb250YWluZXIgb2JqZWN0LFxuLmVtYmVkLWNvbnRhaW5lciBlbWJlZCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICB6LWluZGV4OiA1O1xufVxuXG4vLyBwb3N0IHNpbmdsZVxuLnNpbmdsZSB7XG4gIC50eXBlLXBvc3Qge1xuICAgIEBpbmNsdWRlIHNlY3Rpb24tc3BhY2luZy1vdmVycmlkZShib3R0b20sIG1hcmdpbiwgMik7XG4gICAgLnBvc3QtY29udGVudCB7XG4gICAgICAuY29udGVudC13cmFwIHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgICAgbWluLWhlaWdodDpyZW0tY2FsYygzMDApO1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBkb3duKSB7XG4gICAgICAgICAgQGluY2x1ZGUgc2VjdGlvbi1zcGFjaW5nLW92ZXJyaWRlKGJvdHRvbSwgbWFyZ2luLCAyKTtcbiAgICAgICAgfVxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgICAgQGluY2x1ZGUgc2VjdGlvbi1zcGFjaW5nLW92ZXJyaWRlKHJpZ2h0LCBwYWRkaW5nLCAyKTtcbiAgICAgICAgICBtaW4taGVpZ2h0OnJlbS1jYWxjKDYwMCk7XG4gICAgICAgIH1cblxuICAgICAgICBmaWd1cmU6bm90KC5jdXN0b20td2lkdGgpIGltZywgaW1nOm5vdCguY3VzdG9tLXdpZHRoKSB7XG4gICAgICAgICAgbWluLXdpZHRoOiAxMDAlO1xuICAgICAgICB9XG5cbiAgICAgICAgZmlndXJlLmN1c3RvbS13aWR0aCBpbWcsIGltZy5jdXN0b20td2lkdGgge1xuICAgICAgICAgIG1pbi13aWR0aDogaW5oZXJpdDtcbiAgICAgICAgfVxuXG4gICAgICAgIGltZyB7XG4gICAgICAgICAgb2JqZWN0LWZpdDogY292ZXI7XG4gICAgICAgICAgYm9yZGVyLXJhZGl1czogJGdsb2JhbC1ib3JkZXItcmFkaXVzLTIwO1xuICAgICAgICB9XG5cbiAgICAgICAgaDEsaDIsaDMsaDQsaDUsaDYge1xuICAgICAgICAgIEBpbmNsdWRlIHNlY3Rpb24tc3BhY2luZy1vdmVycmlkZSh0b3AsIG1hcmdpbiwgMyk7XG4gICAgICAgIH1cblxuICAgICAgICAmID4gKiB7XG4gICAgICAgICAgY29sb3I6ICRuaWdodC1yaWRlcjtcbiAgICAgICAgfVxuXG4gICAgICAgICYgPiBwIHtcbiAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDE4KTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIC5jb250ZW50LWZvb3RlciB7XG4gICAgICAgIHBhZGRpbmctdG9wOiAxcmVtO1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgICAgcGFkZGluZy10b3A6IHJlbS1jYWxjKDQwKTtcbiAgICAgICAgfVxuICAgICAgICAucG9zdC1tZXRhLXdyYXAge1xuICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAxcmVtO1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206IDFyZW07XG4gICAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHJnYmEoMzMsMzMsMzMsIC4xKTtcbiAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMnJlbTtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDEuNXJlbTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgLnNoYXJlLXRleHQge1xuICAgICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTYpO1xuICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgIH1cbiAgICAgICAgLnBvc3Qtc2hhcmUtd3JhcCB7XG4gICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XG4gICAgICAgICAgICAuc2hhcmUtdGV4dCB7XG4gICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLy8gYXV0aG9yIGFyY2hpdmVcbi5zaW5nbGUtYXV0aG9ycywgLmJsb2cge1xuICAuYXV0aG9yLWFyY2hpdmUge1xuICAgIEBpbmNsdWRlIHNlY3Rpb24tcGFkZGluZy10b3Bib3R0b20oMik7XG4gICAgLnNlY3Rpb24tdGl0bGUge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgIGNvbG9yOiAkYXNpY3MtYmx1ZTtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMnJlbTtcbiAgICAgIH1cbiAgICB9XG4gICAgLnBvc3QtY2FyZC1yb3ctZ3JpZCB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIH1cbiAgfVxufVxuXG4uY2FyZC1wbGF5LWJ1dHRvbiB7XG4gIGhlaWdodDogcmVtLWNhbGMoNDApO1xuICB3aWR0aDogcmVtLWNhbGMoNDApO1xuICBib3JkZXItcmFkaXVzOiA1MCU7XG4gIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcbiAgc3ZnIHtcbiAgICBtYXgtaGVpZ2h0OiAxcmVtO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDUwJTtcbiAgICBsZWZ0OiBjYWxjKDUwJSArIDJweCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG4gIH1cbn1cblxuLnBhZ2Utd3JhcC5wcmVzcy1wYWdlIHtcbiAgLmZlYXR1cmVkLXBvc3RzIHtcbiAgICBAaW5jbHVkZSBzZWN0aW9uLXNwYWNpbmctb3ZlcnJpZGUodG9wLCBtYXJnaW4sIDIpO1xuICAgIEBpbmNsdWRlIHNlY3Rpb24tc3BhY2luZy1vdmVycmlkZShib3R0b20sIG1hcmdpbik7XG4gIH1cblxuICBzZWN0aW9uOmxhc3Qtb2YtdHlwZSB7XG5cdCAgLmNvbnRlbnQtY2VsbCB7XG5cdFx0ICBtYXJnaW4tYm90dG9tOiAwO1xuXHQgIH1cbiAgfVxufVxuXG4ucGFnZS13cmFwLnR5cGUtcGFnZSB7XG5cdEBpbmNsdWRlIHNlY3Rpb24tc3BhY2luZy1vdmVycmlkZShib3R0b20sIG1hcmdpbiwgMik7XG59XG5cbi5zdGktbW9iaWxlLWJ0biB7XG4gIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbn1cblxuI3N0aS1ib3gge1xuICB6LWluZGV4OiA5ICFpbXBvcnRhbnQ7XG4gIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDIwcHg7XG4gICYuaGFzLWVsZW1zIHtcbiAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICB9XG59XG5cbi5wYWRkaW5nLXQtc21hbGwtb25seSB7XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuICAgIEBpbmNsdWRlIHNlY3Rpb24tc3BhY2luZy1vdmVycmlkZSh0b3AsIHBhZGRpbmcpO1xuICB9XG59XG5cbi8vIENvb2tpZSBwb3B1cCBib3ggc3R5bGUgb3ZlcnJpZGVzXG4ub3B0YW5vbi1hbGVydC1ib3gtd3JhcHBlciB7XG4gIC5jZW50ZXItdGlsZS1iYW5uZXItdGl0bGUge1xuICAgIG1hcmdpbi1ib3R0b206IDFyZW0gIWltcG9ydGFudDtcbiAgfVxuICAub3B0YW5vbi1hbGVydC1ib3gtYWNjZXB0LWJ1dHRvbiB7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIGJvcmRlci1yYWRpdXM6ICRnbG9iYWwtYm9yZGVyLXJhZGl1cy0yMCAhaW1wb3J0YW50O1xuICB9XG4gIC5jZW50ZXItdGlsZS1iYW5uZXItdGl0bGUsIC5vcHRhbm9uLWFsbG93LWFsbCB7XG4gICAgZm9udC1mYW1pbHk6ICRoZWFkZXItZm9udC1mYW1pbHkgIWltcG9ydGFudDtcbiAgfVxuICAub3B0YW5vbi1hbGxvdy1hbGwge1xuICAgIGZvbnQtc2l6ZTogMC44MjVyZW0gIWltcG9ydGFudDtcbiAgfVxuICAuY29va2llLXNldHRpbmdzLWJ1dHRvbiB7XG4gICAgZm9udC1mYW1pbHk6ICRib2R5LWZvbnQtZmFtaWx5ICFpbXBvcnRhbnQ7XG4gIH1cbiAgLm9wdGFub24tYWxlcnQtYm94LW5vdGljZSB7XG4gICAgZm9udC1mYW1pbHk6ICRib2R5LWZvbnQtZmFtaWx5ICFpbXBvcnRhbnQ7XG4gICAgbWFyZ2luLWJvdHRvbTogMjBweCAhaW1wb3J0YW50O1xuICB9XG59XG5cbi50eXBlLXNlYXJjaCB7XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuICAgIEBpbmNsdWRlIHNlY3Rpb24tc3BhY2luZy1vdmVycmlkZSh0b3AsIHBhZGRpbmcsIDIpO1xuICB9XG4gIC5zZWFyY2gtcmVzdWx0cyB7XG4gICAgLm1haW4tZ3JpZCB7XG4gICAgICBAaW5jbHVkZSBzZWN0aW9uLXNwYWNpbmctb3ZlcnJpZGUoYm90dG9tLCBtYXJnaW4sIDIpO1xuICAgIH1cbiAgICAubG9hZC1tb3JlLWNlbGwge1xuICAgICAgbWFyZ2luLXRvcDogMCAhaW1wb3J0YW50O1xuICAgICAgbWFyZ2luLWJvdHRvbTogMCAhaW1wb3J0YW50O1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgIC5idXR0b24ge1xuICAgICAgICBAaW5jbHVkZSBzZWN0aW9uLXNwYWNpbmctb3ZlcnJpZGUodG9wLCBtYXJnaW4sIDQpO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4ucmstcGxhY2Vob2xkZXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgaGVpZ2h0OiAxMDAlO1xuICB3aWR0aDogMTAwJTtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCcuLi9pbWFnZXMvcGxhY2Vob2xkZXJfYmxvZ190aWxlLnN2ZycpO1xuICBiYWNrZ3JvdW5kLXNpemU6IGNvbnRhaW47XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcbn1cblxuLnJldmVhbCNsYW5nLXN3aXRjaC1tb2RhbCB7XG4gIEBpbmNsdWRlIHNlY3Rpb24tcGFkZGluZy10b3Bib3R0b20oMik7XG4gIEBpbmNsdWRlIHNlY3Rpb24tcGFkZGluZy1sZWZ0cmlnaHQoMik7XG4gIHotaW5kZXg6IDk5OTk5OTk5OTk5OTtcbiAgLy8gaS5mYSB7XG4gIC8vICAgcG9zaXRpb246IGFic29sdXRlO1xuICAvLyAgIHRvcDogMDtcbiAgLy8gICByaWdodDogMDtcbiAgLy8gICBwYWRkaW5nOiAxcmVtO1xuICAvLyAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTgpO1xuICAvLyAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDRweDtcbiAgLy8gICBjb2xvcjogcmdiYSgkYmxhY2ssIC43NSk7XG4gIC8vICAgYmFja2dyb3VuZDogcmdiYSgkYmxhY2ssIC4xKTtcbiAgLy8gfVxuICAubW9kYWwtY29udGVudCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMS41cmVtO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDNyZW07XG4gICAgfVxuICB9XG59XG4iLCIuZm9vdGVyLWNvbnRhaW5lciB7XG5cdGJhY2tncm91bmQtY29sb3I6ICRsaWdodGVzdC1ncmF5O1xuXHRvdmVyZmxvdzpoaWRkZW47XG4gIGZvbnQtZmFtaWx5OiRmb250LW1lZGl1bTtcbiAgdGV4dC1hbGlnbjpjZW50ZXI7XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKXtcbiAgICB0ZXh0LWFsaWduOmxlZnQ7XG4gIH1cblx0LmdyaWQteHtcblx0XHRAaW5jbHVkZSBzZWN0aW9uLXBhZGRpbmctdG9wYm90dG9tKDIpO1xuXHRcdCY+LmNlbGx7XG5cdFx0XHRwYWRkaW5nLXRvcDoyLjVyZW07XG5cdFx0XHQmOmxhc3QtY2hpbGR7XG5cdFx0XHRcdHBhZGRpbmctYm90dG9tOjNyZW07XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG5cdC5mb290ZXItbWVudS1jb2wge1xuXHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKXtcblx0XHRcdEBpbmNsdWRlIHNlY3Rpb24tc3BhY2luZy1vdmVycmlkZShib3R0b20scGFkZGluZywyKTtcblx0XHR9XG5cdFx0QGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSl7XG5cdFx0XHRAaW5jbHVkZSBzZWN0aW9uLXNwYWNpbmctb3ZlcnJpZGUoYm90dG9tLHBhZGRpbmcpO1xuXHRcdH1cblx0XHQuZm9vdGVyLW1lbnUge1xuXHRcdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0XHR0ZXh0LWFsaWduOmNlbnRlcjtcblx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKXtcblx0XHRcdFx0Y29sdW1uczogMztcblx0XHRcdFx0dGV4dC1hbGlnbjpsZWZ0O1xuXHRcdFx0fVxuXG5cdFx0XHQubWVudS1pdGVtIHtcblx0XHRcdFx0Y29sb3I6ICRhbG1vc3QtYmxhY2s7XG5cdFx0XHRcdGEge1xuXHRcdFx0XHRcdGNvbG9yOiAkYWxtb3N0LWJsYWNrO1xuXHRcdFx0XHRcdHBhZGRpbmc6IDAgMCAwIDA7XG5cdFx0XHRcdFx0bWFyZ2luLWJvdHRvbTogMS41cmVtO1xuXHRcdFx0XHRcdGZvbnQtZmFtaWx5OiRmb250LW1lZGl1bTtcblx0XHRcdFx0XHQmOmhvdmVyIHtcblx0XHRcdFx0XHRcdHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuXHRcdFx0XHRcdH1cblx0XHRcdFx0fVxuXG5cdFx0XHRcdCYuaXMtYWN0aXZlIHtcblx0XHRcdFx0XHRhIHtcblx0XHRcdFx0XHRcdGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuXHRcdFx0XHRcdH1cblx0XHRcdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdH1cblx0fVxuXG5cdC5zb2NpYWwtaWNvbi1saXN0IHtcblx0XHRkaXNwbGF5OiBibG9jaztcblx0fVxuXG5cdC5mb290ZXItaW5mby1jZWxse1xuXHRcdHRleHQtYWxpZ246IGNlbnRlcjtcblxuXHR9XG4gIC5zdG9yZS1saW5rIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBtYXJnaW4tYm90dG9tOiAwLjVyZW07XG4gICAgPmltZ3tcbiAgICAgIGRpc3BsYXk6YmxvY2s7XG4gICAgICB3aWR0aDphdXRvO1xuICAgICAgaGVpZ2h0OnJlbS1jYWxjKDQwKTtcbiAgICAgIEBpbmNsdWRlIG1hcmdpbi1jZW50ZXIoKTtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIG9ubHkpe1xuICAgICAgICBoZWlnaHQ6cmVtLWNhbGMoNTApO1xuICAgICAgfVxuXG4gICAgfVxuICB9XG4gIGEuc3RvcmUtbGlua3tcbiAgICBAaW5jbHVkZSBlYXNlLWFsbCgpO1xuICAgICY6aG92ZXIsICY6Zm9jdXN7XG4gICAgIG9wYWNpdHk6MC43O1xuICAgIH1cbiAgfVxufVxuXG4iLCJib2R5I3RpbnltY2V7XG4gIGhlaWdodDogYXV0bzsgLy8gRml4IGVkaXRvciBzdHlsZSBidWdcbiAgbWF4LXdpZHRoOiAkZ3JpZC1yb3ctd2lkdGg7IC8vIEdpdmUgdGhlIGVkaXRvciBhIG1heC13aWR0aFxuICBwYWRkaW5nOiByZW0tY2FsYygyMCkgIWltcG9ydGFudDtcbn0iLCIuZ2Zvcm1fd3JhcHBlciB7XG5cdG1hcmdpbjogMCAhaW1wb3J0YW50O1xuXG5cdC5mb3JtLWhlYWRpbmcge1xuXHRcdG1hcmdpbi1ib3R0b206IDEuNXJlbTtcblx0fVxuXHR1bC5nZm9ybV9maWVsZHN7XG5cdFx0bGkuZ2ZpZWxke1xuXHRcdFx0c2VsZWN0LCB0ZXh0YXJlYSwgaW5wdXQ6bm90KFt0eXBlPXJhZGlvXSk6bm90KFt0eXBlPWNoZWNrYm94XSk6bm90KFt0eXBlPXN1Ym1pdF0pOm5vdChbdHlwZT1idXR0b25dKTpub3QoW3R5cGU9aW1hZ2VdKTpub3QoW3R5cGU9ZmlsZV0pe1xuXHRcdFx0XHRwYWRkaW5nLWxlZnQ6MXJlbTtcblx0XHRcdFx0cGFkZGluZy1yaWdodDoxcmVtO1xuXHRcdFx0XHRtYXJnaW4tYm90dG9tOjA7XG5cdFx0XHR9XG5cdFx0XHRzZWxlY3R7XG5cdFx0XHRcdGJhY2tncm91bmQtcG9zaXRpb246IHJpZ2h0IDAgY2VudGVyO1xuXHRcdFx0XHQmOmhvdmVye1xuXHRcdFx0XHRcdGN1cnNvcjpwb2ludGVyO1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0XHR0ZXh0YXJlYXtcblx0XHRcdFx0aGVpZ2h0OnJlbS1jYWxjKDE1MCk7XG5cdFx0XHR9XG5cdFx0XHRsYWJlbC5nZmllbGRfbGFiZWx7XG5cdFx0XHRcdGZvbnQtc2l6ZTokZm9ybS1sYWJlbC1mb250LXNpemU7XG5cdFx0XHR9XG5cdFx0XHQuZ2lucHV0X2NvbnRhaW5lcntcblx0XHRcdFx0bWFyZ2luLXRvcDo0cHg7XG5cdFx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2Upe1xuXHRcdFx0XHRcdG1hcmdpbi10b3A6OHB4O1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG5cdGZvcm0gLmZpZWxkX2Rlc2NyaXB0aW9uX2JlbG93IC5nZmllbGRfZGVzY3JpcHRpb257XG5cdFx0cGFkZGluZy10b3A6MC41cmVtO1xuXHR9XG5cdC8vdmFsaWRhdGlvblxuXHQmLmdmb3JtX3ZhbGlkYXRpb25fZXJyb3IgZm9ybSAuZ2Zvcm1fYm9keSB1bCBsaS5nZmllbGQuZ2ZpZWxkX2Vycm9yOm5vdCguZ2ZfbGVmdF9oYWxmKTpub3QoLmdmX3JpZ2h0X2hhbGYpe1xuXHRcdG1heC13aWR0aDpub25lICFpbXBvcnRhbnQ7XG5cdH1cblx0Zm9ybSAudmFsaWRhdGlvbl9tZXNzYWdle1xuXHRcdGNvbG9yOmRhcmtlbigkYWxlcnQtY29sb3IsIDEwJSk7XG5cdH1cblx0Zm9ybSBkaXYudmFsaWRhdGlvbl9lcnJvcntcblx0XHRib3JkZXI6bm9uZTtcblx0XHRiYWNrZ3JvdW5kLWNvbG9yOnJnYmEoJGFsZXJ0LWNvbG9yLCAuMSk7XG5cdFx0Y29sb3I6ZGFya2VuKCRhbGVydC1jb2xvciwgMSUpO1xuXHRcdGJvcmRlci1yYWRpdXM6NHB4O1xuXHRcdGxpbmUtaGVpZ2h0OiAkZ2xvYmFsLWxpbmVoZWlnaHQ7XG5cdH1cblx0Zm9ybSB1bC5nZm9ybV9maWVsZHMgbGkuZ2ZpZWxkLmdmaWVsZF9lcnJvciwgZm9ybSBsaS5nZmllbGQuZ2ZpZWxkX2Vycm9yLmdmaWVsZF9jb250YWluc19yZXF1aXJlZC5nZmllbGRfY3JlZGl0Y2FyZF93YXJuaW5ne1xuXHRcdGJvcmRlcjpub25lO1xuXHRcdGJhY2tncm91bmQ6bm9uZTtcblx0XHRwYWRkaW5nLXRvcDowO1xuXHRcdHBhZGRpbmctYm90dG9tOjA7XG5cdFx0bWFyZ2luLWJvdHRvbTowICFpbXBvcnRhbnQ7XG5cdFx0bGFiZWwuZ2ZpZWxkX2xhYmVse1xuXHRcdFx0Y29sb3I6JGFsZXJ0LWNvbG9yO1xuXHRcdH1cblx0XHQmLmdmaWVsZF9jb250YWluc19yZXF1aXJlZCB7XG5cdFx0XHRsYWJlbC5nZmllbGRfbGFiZWx7XG5cdFx0XHRcdG1hcmdpbi10b3A6MDtcblx0XHRcdH1cblx0XHRcdGRpdi5naW5wdXRfY29udGFpbmVye1xuXHRcdFx0XHRtYXJnaW4tdG9wOjRweDtcblx0XHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSl7XG5cdFx0XHRcdFx0bWFyZ2luLXRvcDo4cHg7XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHR9XG5cdFx0JiArIGxpLmdmaWVsZC5nZmllbGRfZXJyb3J7XG5cdFx0XHRtYXJnaW4tdG9wOiRmb3JtLXNwYWNpbmc7XG5cdFx0fVxuXHRcdHNlbGVjdCwgdGV4dGFyZWEsIGlucHV0Om5vdChbdHlwZT1yYWRpb10pOm5vdChbdHlwZT1jaGVja2JveF0pOm5vdChbdHlwZT1zdWJtaXRdKTpub3QoW3R5cGU9YnV0dG9uXSk6bm90KFt0eXBlPWltYWdlXSk6bm90KFt0eXBlPWZpbGVdKXtcblx0XHRcdGJvcmRlcjoxcHggc29saWQgJGFsZXJ0LWNvbG9yO1xuXHRcdH1cblx0fVxuXHQuZ2Zvcm1fYm9keSB7XG5cdFx0Lmdmb3JtX2ZpZWxkcyB7XG5cdFx0XHQuZ2ZpZWxkLCAuZ2ZfbGVmdF9oYWxmLCAuZ2ZfcmlnaHRfaGFsZiB7XG5cdFx0XHRcdC5naW5wdXRfY29udGFpbmVyIHtcblx0XHRcdFx0XHRpbnB1dCwgdGV4dGFyZWEge1xuXHRcdFx0XHRcdFx0Ji5nZm9ybV9idXR0b25fc2VsZWN0X2ZpbGVzIHtcblx0XHRcdFx0XHRcdFx0dGV4dC10cmFuc2Zvcm06IG5vbmU7XG5cdFx0XHRcdFx0XHRcdCY6aG92ZXIsICY6YWN0aXZlLCAmOmZvY3VzIHtcblx0XHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdH1cblx0XHRcdFx0fVxuXHRcdFx0fVxuXG5cdFx0XHQuZ2ZpZWxkIHtcblx0XHRcdFx0cGFkZGluZzogMDtcblx0XHRcdH1cblx0XHRcdC5nZmllbGQuZ2ZfbGVmdF9oYWxmIHtcblx0XHRcdFx0cGFkZGluZzogMCAwLjVyZW0gMCAwO1xuXG5cdFx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuXHRcdFx0XHRcdHBhZGRpbmc6IDA7XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHRcdC5nZmllbGQuZ2ZfcmlnaHRfaGFsZiB7XG5cdFx0XHRcdHBhZGRpbmc6IDAgMCAwIDAuNXJlbTtcblxuXHRcdFx0XHRAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcblx0XHRcdFx0XHRwYWRkaW5nOiAwO1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG59XG4vLyBjb25maXJtYXRpb25cbi5nZm9ybV9jb25maXJtYXRpb25fd3JhcHBlcntcblx0cGFkZGluZzoxLjVyZW07XG5cdGZvbnQtd2VpZ2h0OiRoZWFkZXItZm9udC13ZWlnaHQ7XG5cdGJvcmRlcjoxcHggc29saWQgJGxpZ2h0LWdyYXk7XG5cdHBvc2l0aW9uOnJlbGF0aXZlO1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiRsaWdodGVzdC1ncmF5O1xuXHRib3JkZXItcmFkaXVzOjRweDtcblx0bWFyZ2luLXRvcDoxLjVyZW07XG5cdG1hcmdpbi1ib3R0b206MS41cmVtO1xuXHR0ZXh0LWFsaWduOmNlbnRlcjtcblx0QGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSl7XG5cdFx0cGFkZGluZzoxLjVyZW0gMS41cmVtIDEuNXJlbSAzLjVyZW07XG5cdFx0dGV4dC1hbGlnbjpsZWZ0O1xuXHR9XG5cblx0JjpiZWZvcmV7XG5cdFx0ZGlzcGxheTppbmxpbmUtYmxvY2s7XG5cdFx0cGFkZGluZzowIDlweDtcblx0XHR3aWR0aDpyZW0tY2FsYygzNCk7XG5cdFx0aGVpZ2h0OnJlbS1jYWxjKDM0KTtcblx0XHRjb2xvcjokc3VjY2Vzcy1jb2xvcjtcblx0XHRib3JkZXItcmFkaXVzOjUwJTtcblx0XHRmb250LXNpemU6cmVtLWNhbGMoMTYpO1xuXHRcdGNvbnRlbnQ6J1xcZjAwYyc7XG5cdFx0YmFja2dyb3VuZC1jb2xvcjokd2hpdGU7XG5cdFx0Zm9udC1mYW1pbHk6Rm9udEF3ZXNvbWU7XG5cdFx0bGluZS1oZWlnaHQ6IDIuMjtcblx0XHRib3gtc2hhZG93OjAgMXB4IDZweCByZ2JhKCRzZWNvbmRhcnktY29sb3IsIC40KTtcblx0XHRtYXJnaW4tYm90dG9tOjAuNnJlbTtcblx0XHRAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKXtcblx0XHRcdHBvc2l0aW9uOmFic29sdXRlO1xuXHRcdFx0ZGlzcGxheTpibG9jaztcblx0XHRcdGxlZnQ6MC42NXJlbTtcblx0XHRcdHRvcDo1MCU7XG5cdFx0XHRtYXJnaW4tdG9wOnJlbS1jYWxjKC0zNCAvIDIpO1xuXHRcdH1cblx0fVxufVxuXG5zZWxlY3Qge1xuXHRwYWRkaW5nLXRvcDogMDtcblx0cGFkZGluZy1ib3R0b206IDA7XG5cdGJvcmRlci1yYWRpdXM6IDRweDtcblx0Ym9yZGVyOiAxcHggc29saWQgJGFzaWNzLWJsdWU7XG5cdC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbiAgICBhcHBlYXJhbmNlOiBub25lO1xuXHRiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vZm9udHMvZm9udGF3ZXNvbWUtcHJvLTUuMTMuMC13ZWIvc3Zncy9yZWd1bGFyL2NoZXZyb24tZG93bi5zdmcpO1xuXHRiYWNrZ3JvdW5kLXNpemU6IDAuNjI1cmVtO1xuXHRiYWNrZ3JvdW5kLXBvc2l0aW9uOiByaWdodDtcblx0YmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbn1cblxuaW5wdXRbdHlwZT0ndGV4dCddIHtcblx0YmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xufVxuXG4vLyB0aGlzIGlzIHRvIGZpeCB0aGUgXCJ6b29tXCIgYnVnIG9uIFNhZmFyaSBicm93c2Vyc1xuaW5wdXRbdHlwZT1cImNvbG9yXCJdLFxuaW5wdXRbdHlwZT1cImRhdGVcIl0sXG5pbnB1dFt0eXBlPVwiZGF0ZXRpbWVcIl0sXG5pbnB1dFt0eXBlPVwiZGF0ZXRpbWUtbG9jYWxcIl0sXG5pbnB1dFt0eXBlPVwiZW1haWxcIl0sXG5pbnB1dFt0eXBlPVwibW9udGhcIl0sXG5pbnB1dFt0eXBlPVwibnVtYmVyXCJdLFxuaW5wdXRbdHlwZT1cInBhc3N3b3JkXCJdLFxuaW5wdXRbdHlwZT1cInNlYXJjaFwiXSxcbmlucHV0W3R5cGU9XCJ0ZWxcIl0sXG5pbnB1dFt0eXBlPVwidGV4dFwiXSxcbmlucHV0W3R5cGU9XCJ0aW1lXCJdLFxuaW5wdXRbdHlwZT1cInVybFwiXSxcbmlucHV0W3R5cGU9XCJ3ZWVrXCJdLFxuc2VsZWN0OmZvY3VzLFxudGV4dGFyZWEge1xuICBmb250LXNpemU6IDE2cHg7XG59XG5cbnNlbGVjdCB7XG5cdCY6Zm9jdXMge1xuXHRcdGJveC1zaGFkb3c6IG5vbmU7XG5cdH1cbn0iLCIvLyBhZGQgZGVmYXVsdCBmb250IHN0eWxlcyBmb3IgaXRlbXMgd2hpY2ggd2VyZW4ndCBwcmUtZGVmaW5lZCBpbiBmb3VuZGF0aW9uIGZvciBzaXRlc1xuLy8gKGkuZS4gbm8gZ2xvYmFsIHZhcmlhYmxlcyBpbml0aWFsbHkgZXhpc3RlZCBmb3Igc2V0dGluZyB0aGVzZSBwYXJhbWV0ZXJzKVxuXG5ib2R5IHtcblx0Zm9udC1zaXplOiRib2R5LWZvbnQtc2l6ZS1zbWFsbDtcblx0bGV0dGVyLXNwYWNpbmc6JGJvZHktbGV0dGVyLXNwYWNpbmc7XG5cdEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG5cdFx0Zm9udC1zaXplOiRib2R5LWZvbnQtc2l6ZS1tZWRpdW0tdXA7XG5cdH1cbn1cbi5zaG93LWFzLWgxLFxuLnNob3ctYXMtaDIsXG4uc2hvdy1hcy1oMyxcbi5zaG93LWFzLWg0LFxuLnNob3ctYXMtaDUsXG4uc2hvdy1hcy1oNntcbiAgZm9udC13ZWlnaHQ6JGhlYWRlci1mb250LXdlaWdodDtcbiAgbGluZS1oZWlnaHQ6ICRoZWFkZXItbGluZWhlaWdodDtcbiAgZm9udC1mYW1pbHk6ICRoZWFkZXItZm9udC1mYW1pbHk7XG59XG4uc2hvdy1hcy1oMSB7XG5cdEBpbmNsdWRlIGhlYWRlci1zaXplKGgxKTtcbn1cblxuLnNob3ctYXMtaDIge1xuXHRAaW5jbHVkZSBoZWFkZXItc2l6ZShoMik7XG59XG5cbi5zaG93LWFzLWgzIHtcblx0QGluY2x1ZGUgaGVhZGVyLXNpemUoaDMpO1xufVxuXG4uc2hvdy1hcy1oNCB7XG5cdEBpbmNsdWRlIGhlYWRlci1zaXplKGg0KTtcbn1cblxuLnNob3ctYXMtaDUge1xuXHRAaW5jbHVkZSBoZWFkZXItc2l6ZShoNSk7XG59XG5cbi5zaG93LWFzLWg2IHtcblx0QGluY2x1ZGUgaGVhZGVyLXNpemUoaDYpO1xufVxuIiwiLnBvc3QtbmF2aWdhdGlvbiB7XG5cdGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcblx0cGFkZGluZzogMXJlbSAwIDEuNXJlbTtcblx0d2lkdGg6IDEwMCU7XG5cdGZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1zZW1pYm9sZDtcblx0Ym9yZGVyLXRvcDpzb2xpZCAxcHggJGxpZ2h0LWdyYXk7XG5cdEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKXtcblx0XHRwYWRkaW5nLXRvcDoycmVtO1xuXHRcdHBhZGRpbmctYm90dG9tOjIuNzVyZW07XG5cdH1cblx0QGluY2x1ZGUgYnJlYWtwb2ludCh4bGFyZ2Upe1xuXHRcdHBhZGRpbmctdG9wOjNyZW07XG5cdFx0cGFkZGluZy1ib3R0b206My41cmVtO1xuXHR9XG5cblx0LnByZXYtbGluaywgLm5leHQtbGluayB7XG5cdFx0bWFyZ2luLWJvdHRvbTogMXJlbTtcblx0XHR0ZXh0LWFsaWduOiBsZWZ0O1xuXG5cdFx0QGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcblx0XHRcdG1hcmdpbi1ib3R0b206IDA7XG5cdFx0XHRhbGlnbi1zZWxmOiBjZW50ZXI7XG5cdFx0fVxuXG5cdFx0PiBhIHtcblx0XHRcdEBpbmNsdWRlIHVuZGVybGluZS1ob3Zlci1sLXIodHJhbnNwYXJlbnQsJGJvZHktZm9udC1jb2xvciwycHgsdHJ1ZSk7XG5cdFx0XHRjb2xvcjokYm9keS1mb250LWNvbG9yO1xuXHRcdH1cblx0fVxuXG5cdC5wcmV2LWxpbmsgPiBhIHtcblx0XHQmOjphZnRlciB7XG5cdFx0XHRwb3NpdGlvbjphYnNvbHV0ZTtcblx0XHRcdHJpZ2h0OjByZW07XG5cdFx0XHRib3R0b206LTJweDtcblx0XHR9XG5cdH1cblxuXHQubmV4dC1saW5rIHtcblx0XHRtYXJnaW4tYm90dG9tOiAxcmVtO1xuXHRcdHRleHQtYWxpZ246IHJpZ2h0O1xuXG5cdFx0QGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcblx0XHRcdG1hcmdpbi1ib3R0b206IDA7XG5cdFx0XHRhbGlnbi1zZWxmOiBjZW50ZXI7XG5cdFx0fVxuXHR9XG5cblx0LnZpZXctYWxsLWJ1dHRvbiB7XG5cdFx0dGV4dC1hbGlnbjogY2VudGVyO1xuXHRcdEBleHRlbmQgLnNob3ctYXMtaDY7XG5cblx0XHRhIHtcblx0XHRcdGJvcmRlcjozcHggc29saWQgcmdiYSgxLDg2LDE1MSwwLjQpO1xuXHRcdFx0bGV0dGVyLXNwYWNpbmc6IDByZW07XG5cdFx0XHRwYWRkaW5nOiAwLjc1cmVtIDFyZW07XG5cdFx0XHRtYXJnaW4tYm90dG9tOjA7XG5cdFx0XHQmOmhvdmVyLCAmOmFjdGl2ZSwgJjpmb2N1cyB7XG5cdFx0XHRcdGNvbG9yOiR3aGl0ZTtcblx0XHRcdFx0YmFja2dyb3VuZC1jb2xvcjokcHJpbWFyeS1jb2xvcjtcblx0XHRcdH1cblx0XHR9XG5cdH1cbn1cbiIsIi5iYW5uZXItcGFnZS1icmVhayB7XG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0QGluY2x1ZGUgc2VjdGlvbi1wYWRkaW5nLXRvcGJvdHRvbSgwLjUpO1xuXHRjb2xvcjogJHdoaXRlO1xuXHQmOjphZnRlciB7XG5cdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdGNvbnRlbnQ6ICcnO1xuXHRcdGJhY2tncm91bmQtY29sb3I6IHJnYmEoJHR1cnRsZS1ncmVlbiwgMC4yKTtcblx0XHR0b3A6IDA7XG5cdFx0Ym90dG9tOiAwO1xuXHRcdHJpZ2h0OiAwO1xuXHRcdGxlZnQ6IDA7XG5cdFx0ei1pbmRleDoxO1xuXHR9XG5cdD4uZ3JpZC1jb250YWluZXJ7XG5cdFx0cG9zaXRpb246cmVsYXRpdmU7XG5cdFx0ei1pbmRleDoyO1xuXHR9XG5cblx0LmJhbm5lci1jb250ZW50IHtcblx0XHRAZXh0ZW5kIC5zaG93LWFzLWgxO1xuXHR9XG5cdC5hdXRob3ItbGluZXtcblx0XHRmb250LXdlaWdodDokZ2xvYmFsLXdlaWdodC1ib2xkICFpbXBvcnRhbnQ7XG5cdFx0QGV4dGVuZCAuc2hvdy1hcy1oNDtcblx0XHRAaW5jbHVkZSBzZWN0aW9uLXNwYWNpbmctb3ZlcnJpZGUodG9wLG1hcmdpbik7XG5cblx0XHRAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpe1xuXHRcdFx0Zm9udC1zaXplOnJlbS1jYWxjKDE4KTtcblx0XHR9XG5cdFx0QGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pe1xuXHRcdFx0QGluY2x1ZGUgc2VjdGlvbi1zcGFjaW5nLW92ZXJyaWRlKHRvcCxtYXJnaW4sNCk7XG5cdFx0fVxuXG4gIH1cblxuXHQuY29udGVudC13cmFwcGVyIHtcblx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdFx0ei1pbmRleDogMjtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cdFx0bWFyZ2luOiAwIGF1dG87XG5cblx0XHQmLmxlZnQge1xuXHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuXHRcdFx0XHRtYXJnaW46IDAgYXV0byAwIDA7XG5cdFx0XHRcdHRleHQtYWxpZ246IGxlZnQ7XG5cdFx0XHR9XG5cdFx0fVxuXG5cdFx0Ji5yaWdodCB7XG5cdFx0XHRAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG5cdFx0XHRcdG1hcmdpbjogMCAwIDAgYXV0bztcblx0XHRcdFx0dGV4dC1hbGlnbjogcmlnaHQ7XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG5cdC5iYW5uZXItaW1hZ2V7XG5cdFx0cG9zaXRpb246YWJzb2x1dGU7XG5cdFx0ei1pbmRleDowO1xuXHRcdG9iamVjdC1maXQ6IGNvdmVyO1xuXHRcdHRvcDowO1xuXHRcdGxlZnQ6MDtcblx0XHRyaWdodDowO1xuXHRcdGJvdHRvbTowO1xuXHRcdGhlaWdodDoxMDAlO1xuXHRcdHdpZHRoOjEwMCU7XG5cdH1cblxuXHQmI2Jhbm5lci1wYWdlLWJyZWFrLTMuYWRqdXN0ZWQtbW9iaWxlLWltYWdlIHtcblx0XHQuYmFubmVyLWltYWdlIHtcblx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuXHRcdFx0XHRvYmplY3QtcG9zaXRpb246IDcyJTtcblx0XHRcdH1cblx0XHR9XG5cdH1cbn1cbiIsIi5pY29uLXRleHQtZ3JpZCB7XG5cdEBpbmNsdWRlIHNlY3Rpb24tcGFkZGluZy10b3Bib3R0b20oMyk7XG5cdEBleHRlbmQgLmJnLS1saWdodGVzdC1ncmF5O1xuICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKXtcbiAgICBAaW5jbHVkZSBzZWN0aW9uLXBhZGRpbmctdG9wYm90dG9tKDQpO1xuICB9XG4gIC5pbm5lci1ncmlkIHtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBkb3duKXtcbiAgICAgIC8vIGFkZCBuZWdhdGl2ZSBtYXJnaW4gdG8gZ3JpZCB0byB2aXN1YWxseSByZW1vdmUgdGhlIGJvdHRvbSBtYXJnaW4gZnJvbSB0aGUgbGFzdCByb3cgb2YgdGlsZXNcbiAgICAgIEBpbmNsdWRlIHNlY3Rpb24tc3BhY2luZy1vdmVycmlkZShib3R0b20sbWFyZ2luLC00KTtcbiAgICB9XG4gICAgLmNlbGwge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIC8vIGFkZCBhIGJvdHRvbSBtYXJnaW4gdG8gYWxsIGNlbGxzXG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBkb3duKXtcbiAgICAgICAgQGluY2x1ZGUgc2VjdGlvbi1zcGFjaW5nLW92ZXJyaWRlKGJvdHRvbSxtYXJnaW4sNCk7XG4gICAgICB9XG4gICAgICAuY2VsbC1jb250ZW50IHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgLmljb24td3JhcHtcbiAgICBtaW4td2lkdGg6cmVtLWNhbGMoMjQpO1xuICAgID5pbWd7XG4gICAgICBkaXNwbGF5OmJsb2NrO1xuICAgICAgd2lkdGg6YXV0bztcbiAgICB9XG4gIH1cbiAgLmNvbnRlbnQtd3JhcHtcbiAgICBAaW5jbHVkZSAtemYtYnJlYWtwb2ludC12YWx1ZShhdXRvLCAkZ3JpZC1tYXJnaW4tZ3V0dGVycykge1xuICAgICAgcGFkZGluZy1sZWZ0OiAkLXpmLWJwLXZhbHVlLzI7XG4gICAgfVxuICB9XG59XG4iLCIuaW1hZ2Utd2l0aC1idWJibGUge1xuXHRAaW5jbHVkZSBzZWN0aW9uLXBhZGRpbmctdG9wYm90dG9tKCk7XG5cdEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIG9ubHkpIHtcblx0XHRAaW5jbHVkZSBzZWN0aW9uLXBhZGRpbmctdG9wYm90dG9tKDEuNSk7XG5cdH1cblx0LmltYWdlLWNlbGwge1xuXHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0XHRkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOmNvbHVtbjtcbiAgICBAaW5jbHVkZSBzZWN0aW9uLXNwYWNpbmctb3ZlcnJpZGUoYm90dG9tLG1hcmdpbiwyKTtcblx0XHRAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSl7XG4gICAgICBAaW5jbHVkZSBzZWN0aW9uLXNwYWNpbmctb3ZlcnJpZGUoYm90dG9tLG1hcmdpbiw0KTtcbiAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICB9XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSl7XG4gICAgICBtYXJnaW4tYm90dG9tOjA7XG4gICAgfVxuXHR9XG4gIC50ZXh0LW92ZXJsYXkge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBmb250LWZhbWlseTogJGhlYWRlci1mb250LWZhbWlseTtcbiAgICBjb2xvcjogJHJ1bmtlZXBlci1ibGFjaztcbiAgICB3aWR0aDo2MCU7XG4gICAgZm9udC1zaXplOnJlbS1jYWxjKDE0KTtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSl7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDA7XG4gICAgICB6LWluZGV4OiAzO1xuICAgICAgbGVmdDogMDtcbiAgICAgIHdpZHRoOmF1dG87XG4gICAgfVxuICAgIHNwYW4ge1xuICAgICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2Upe1xuICAgICAgICAgIGZvbnQtc2l6ZTogMS4xMjVyZW07XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgLmltYWdlLXdyYXAge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBoZWlnaHQ6MTAwJTtcbiAgICB3aWR0aDoxMDAlO1xuXG4gICAgJGctaW1nLWg6KFxuICAgICAgc21hbGw6MjU1LFxuICAgICAgbWVkaXVtOjMzNyxcbiAgICAgIGxhcmdlOjQ4MCxcbiAgICApO1xuXG4gICAgLnRleHQtb3ZlcmxheSB7XG4gICAgICBjb2xvcjokd2hpdGU7XG4gICAgICB0b3A6MjAlO1xuICAgICAgbGVmdDo1MCU7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTExMCUpO1xuICAgIH1cbiAgICAuYnViYmxlLWxpbmsge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgYm90dG9tOiAxLjVyZW07XG4gICAgICBwYWRkaW5nLWxlZnQ6MnJlbTtcbiAgICAgIHBhZGRpbmctcmlnaHQ6MnJlbTtcbiAgICAgIGxlZnQ6NTAlO1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKCAoMTAwJSArIChtYXAtZ2V0KCRnLWltZy1oLGxhcmdlKS8yKSAqLTEgKSApO1xuICAgIH1cbiAgICAuZ29hbC1pbWFnZSB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICAgIGRpc3BsYXk6YmxvY2s7XG4gICAgICBtYXJnaW4tcmlnaHQ6YXV0bztcbiAgICAgIG1hcmdpbi1sZWZ0OmF1dG87XG4gICAgICAvL3NldCBoZWlnaHQgJiB3aWR0aFxuICAgICAgQGluY2x1ZGUgc2V0LWh3LXJlc3BvbnNpdmVseSgkZy1pbWctaCk7XG4gICAgfVxuICB9XG5cdC5jb250ZW50LWNlbGwge1xuXHRcdGRpc3BsYXk6IGZsZXg7XG5cdFx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcblx0XHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcblx0fVxuICAuc2VjdGlvbi10aXRsZSwgLnNlY3Rpb24tY29udGVudCB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAxLjVyZW07XG4gICAgfVxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYyg0MCk7XG4gICAgfVxuICB9XG4gIC5zZWN0aW9uLWNvbnRlbnQge1xuICAgIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDQwKTtcbiAgICBwIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAmOm5vdCg6bGFzdC1jaGlsZCkge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICAuYnV0dG9uLXdyYXAge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgIH1cbiAgfVxufVxuIiwiLy8gaW5zcCBoZXJlIGh0dHBzOi8vY29kZXBlbi5pby9GbG9yaW5Qb3AxNy9wZW4vZHJKSnpLXG5Aa2V5ZnJhbWVzIGRhc2gtdGlja2VyLWRvd24ge1xuICBmcm9te1xuICAgIC8vIGhhcyB0byBiZSBhIG11bHRpcGwgb2YgOCBzbyB0aGlzIGlzIHNtb290aFxuICAgIHN0cm9rZS1kYXNob2Zmc2V0OjExMjtcbiAgfVxuICB0b3tcbiAgICBzdHJva2UtZGFzaG9mZnNldDogMDtcbiAgfVxufVxuQGtleWZyYW1lcyBkYXNoLXRpY2tlci11cCB7XG4gIGZyb217XG4gICAgLy8gaGFzIHRvIGJlIGEgbXVsdGlwbCBvZiA4IHNvIHRoaXMgaXMgc21vb3RoXG4gICAgc3Ryb2tlLWRhc2hvZmZzZXQ6ODtcbiAgfVxuICB0b3tcbiAgICBzdHJva2UtZGFzaG9mZnNldDogMTEyO1xuICB9XG59XG4uZGFzaC10aWNrZXItbGluZS1kb3due1xuICBwYXRoe1xuICAgIHN0cm9rZS1kYXNob2Zmc2V0OiA4O1xuICAgIGFuaW1hdGlvbjogZGFzaC10aWNrZXItZG93biA1cyBsaW5lYXIgaW5maW5pdGU7XG4gIH1cbn1cbi5kYXNoLXRpY2tlci1saW5lLXVwe1xuICBwYXRoe1xuICAgIHN0cm9rZS1kYXNob2Zmc2V0OiA4O1xuICAgIGFuaW1hdGlvbjogZGFzaC10aWNrZXItdXAgNXMgbGluZWFyIGluZmluaXRlO1xuICB9XG59XG5cblxuQGtleWZyYW1lcyBidWJibGUtcGluLXB1bHNlLXNtYWxsIHtcbiAgMCUge1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMC45NSkgdHJhbnNsYXRlKC01MCUsIC01MCUpO1xuICAgIGJveC1zaGFkb3c6IDAgMCAwIDAgcmdiYSgkcHJpbWFyeS1jb2xvciwgMC43KTtcbiAgfVxuXG4gIDcwJSB7XG5cdHRyYW5zZm9ybTogc2NhbGUoMC45NSkgdHJhbnNsYXRlKC01MCUsIC01MCUpO1xuICAgIGJveC1zaGFkb3c6IDAgMCAwIDUwcHggcmdiYSgkcHJpbWFyeS1jb2xvciwgMCk7XG4gIH1cblxuICAxMDAlIHtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDAuOTUpIHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcbiAgICBib3gtc2hhZG93OiAwIDAgMCAwIHJnYmEoJHByaW1hcnktY29sb3IsIDApO1xuICB9XG59XG5Aa2V5ZnJhbWVzIGJ1YmJsZS1waW4tcHVsc2Uge1xuICAwJSB7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgwLjk1KSB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG4gICAgYm94LXNoYWRvdzogMCAwIDAgMCByZ2JhKCRwcmltYXJ5LWNvbG9yLCAwLjcpO1xuICB9XG5cbiAgNzAlIHtcblx0dHJhbnNmb3JtOiBzY2FsZSgxLjEpIHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcbiAgICBib3gtc2hhZG93OiAwIDAgMCA1MHB4IHJnYmEoJHByaW1hcnktY29sb3IsIDApO1xuICB9XG5cbiAgMTAwJSB7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgwLjk1KSB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG4gICAgYm94LXNoYWRvdzogMCAwIDAgMCByZ2JhKCRwcmltYXJ5LWNvbG9yLCAwKTtcbiAgfVxufVxuXG4uaWNvbi1idWJibGUtcGluIHtcblx0JG1haW4tY2lyY2xlLXNpemU6cmVtLWNhbGMoMTI0KTtcblx0JGxvZ28tc2l6ZTpyZW0tY2FsYyg3Mik7XG5cdCRvdXRlci1yaW5nLXNjYWxlOjE3NSU7XG5cblx0JGRhc2hlZC1saW5lLWg6cmVtLWNhbGMoMTc1KTtcblx0JGRhc2hlZC1saW5lLW9mZnNldDokZGFzaGVkLWxpbmUtaCAtICgkbWFpbi1jaXJjbGUtc2l6ZS8yKTtcblxuXHRoZWlnaHQ6JG1haW4tY2lyY2xlLXNpemU7XG5cdHdpZHRoOiRtYWluLWNpcmNsZS1zaXplO1xuXHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdGRpc3BsYXk6ZmxleDtcblx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cdHBhZGRpbmc6MC41cmVtO1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiRwcmltYXJ5LWNvbG9yO1xuXHRib3JkZXItcmFkaXVzOiA1MCU7XG5cdG1hcmdpbi1sZWZ0OmF1dG87XG5cdG1hcmdpbi1yaWdodDphdXRvO1xuXHRtYXJnaW4tdG9wOiAoJG1haW4tY2lyY2xlLXNpemUqMS43NSkvNDtcblxuXHQvLyBsaW5lIGRvd24gaXMgdGhlIGRlZmF1bHRcblx0bWFyZ2luLWJvdHRvbTokZGFzaGVkLWxpbmUtb2Zmc2V0O1xuXG5cdC8vIG91dGVyIHJpbmdcblx0Jjo6YWZ0ZXIge1xuXHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHR0b3A6IDUwJTtcblx0XHRsZWZ0OiA1MCU7XG5cblx0XHRjb250ZW50OiAnJztcblx0XHRib3JkZXItcmFkaXVzOiA1MCU7XG5cdFx0YmFja2dyb3VuZC1jb2xvcjogcmdiYSgkcHJpbWFyeS1jb2xvciwgMC4zKTtcblx0XHRoZWlnaHQ6ICRvdXRlci1yaW5nLXNjYWxlO1xuXHRcdHdpZHRoOiAkb3V0ZXItcmluZy1zY2FsZTtcblx0XHR0cmFuc2Zvcm06IHNjYWxlKDEpIHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcblx0XHR0cmFuc2Zvcm0tb3JpZ2luOiAwIDA7XG5cblx0XHRhbmltYXRpb246IGJ1YmJsZS1waW4tcHVsc2Utc21hbGwgMnMgaW5maW5pdGU7XG5cdFx0QGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcblx0XHRcdGFuaW1hdGlvbjogYnViYmxlLXBpbi1wdWxzZSAycyBpbmZpbml0ZTtcblx0XHR9XG5cdFx0QG1lZGlhIHNjcmVlbiBhbmQgKC1tcy1oaWdoLWNvbnRyYXN0OiBhY3RpdmUpLCAoLW1zLWhpZ2gtY29udHJhc3Q6IG5vbmUpIHtcblx0XHRcdGFuaW1hdGlvbjogbm9uZTtcblx0XHR9XG5cdH1cblxuXHQmLmxpbmUtdG9we1xuXHRcdG1hcmdpbi10b3A6JGRhc2hlZC1saW5lLW9mZnNldDtcblx0XHRtYXJnaW4tYm90dG9tOiAoJG1haW4tY2lyY2xlLXNpemUqMS43NSkvNDtcblx0XHQuZGFzaGVkLWxpbmV7XG5cdFx0XHR0b3A6dW5zZXQ7XG5cdFx0XHRib3R0b206NTAlO1xuXHRcdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGVYKDUwJSk7XG5cdFx0fVxuXHR9XG5cblx0aW1nIHtcblx0XHR3aWR0aDoxMDAlO1xuXHRcdG1heC13aWR0aDogJGxvZ28tc2l6ZTtcblx0XHRtYXgtaGVpZ2h0OiAkbG9nby1zaXplO1xuXHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0XHR6LWluZGV4OiAyO1xuXHR9XG5cdC5kYXNoZWQtbGluZXtcblx0XHRoZWlnaHQ6JGRhc2hlZC1saW5lLWg7XG5cdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdHRvcDogNTAlO1xuXHRcdGxlZnQ6IDUwJTtcblx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XG5cdFx0QGV4dGVuZCAuZGFzaC10aWNrZXItbGluZS1kb3duO1xuXHR9XG59XG5cbkBrZXlmcmFtZXMgYnViYmxlLXBpbi1wdWxzZS1zbSB7XG4gIDAlIHtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDAuOTUpO1xuICAgIGJveC1zaGFkb3c6IDAgMCAwIDAgcmdiYSgkcHJpbWFyeS1jb2xvciwgMC43KTtcbiAgfVxuXG4gIDcwJSB7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgxLjEpO1xuICAgIGJveC1zaGFkb3c6IDAgMCAwIDIwcHggcmdiYSgkcHJpbWFyeS1jb2xvciwgMCk7XG4gIH1cblxuICAxMDAlIHtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDAuOTUpO1xuICAgIGJveC1zaGFkb3c6IDAgMCAwIDAgcmdiYSgkcHJpbWFyeS1jb2xvciwgMCk7XG4gIH1cbn1cblxuLmJ1YmJsZS1waW57XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZmxvdzogY29sdW1uO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgd2lkdGg6IDIwcHg7XG4gIHBvc2l0aW9uOnJlbGF0aXZlO1xuICAuZG90IHtcbiAgICBoZWlnaHQ6IDEuMjVyZW07XG4gICAgd2lkdGg6IDEuMjVyZW07XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHByaW1hcnktY29sb3I7XG5cdGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDEpO1xuICAgIGFuaW1hdGlvbjogYnViYmxlLXBpbi1wdWxzZS1zbSAycyBpbmZpbml0ZTtcbiAgfVxuXG4gIC5kYXNoZWQtbGluZXtcbiAgICBoZWlnaHQ6NDhweDtcbiAgICBAZXh0ZW5kIC5kYXNoLXRpY2tlci1saW5lLWRvd247XG4gIH1cbn1cbiIsIi50ZXh0LWN0YSB7XG5cdCYud2l0aC1yZXBlYXRlciB7XG5cdFx0LnNlY3Rpb24tY29udGVudCB7XG5cdFx0XHRAaW5jbHVkZSBzZWN0aW9uLXNwYWNpbmctb3ZlcnJpZGUoYm90dG9tLCBtYXJnaW4sIDMpO1xuXHRcdH1cblx0fVxuXG5cdC5jb250ZW50LWNlbGwge1xuXHRcdEBpbmNsdWRlIHNlY3Rpb24tcGFkZGluZy10b3Bib3R0b20oMik7XG5cdFx0QGluY2x1ZGUgc2VjdGlvbi1wYWRkaW5nLWxlZnRyaWdodCgpO1xuXHRcdEBpbmNsdWRlIHNlY3Rpb24tc3BhY2luZy1vdmVycmlkZShib3R0b20sIG1hcmdpbiwgMik7XG5cdFx0YmFja2dyb3VuZC1jb2xvcjogJGxpZ2h0ZXN0LWdyYXk7XG5cdFx0Ym9yZGVyLXJhZGl1czogJGdsb2JhbC1ib3JkZXItcmFkaXVzLTIwO1xuXHRcdHRleHQtYWxpZ246IGNlbnRlcjtcblx0XHQuc2VjdGlvbi10aXRsZSB7XG5cdFx0XHRtYXJnaW4tYm90dG9tOiAxcmVtO1xuXHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuXHRcdFx0XHRtYXJnaW4tYm90dG9tOiAxLjVyZW07XG5cdFx0XHR9XG5cdFx0fVxuXHRcdC5zZWN0aW9uLWNvbnRlbnQge1xuXHRcdFx0JiA+ICoge1xuXHRcdFx0XHRtYXJnaW4tYm90dG9tOiAwO1xuXHRcdFx0XHQmOm5vdCg6bGFzdC1jaGlsZCkge1xuXHRcdFx0XHRcdG1hcmdpbi1ib3R0b206IDFyZW07XG5cdFx0XHRcdH0gXG5cdFx0XHR9XG5cdFx0fVxuXG5cdFx0LmxvZ28tZ3JpZCB7XG5cdFx0XHRAaW5jbHVkZSBzZWN0aW9uLXNwYWNpbmctb3ZlcnJpZGUoYm90dG9tLCBtYXJnaW4sIDMpO1xuXHRcdFx0LmNlbGwge1xuXHRcdFx0XHRAaW5jbHVkZSBzZWN0aW9uLXBhZGRpbmctdG9wYm90dG9tKDMpO1xuXHRcdFx0XHRkaXNwbGF5OiBmbGV4O1xuXHRcdFx0XHRhbGlnbi1pdGVtczogY2VudGVyO1xuXHRcdFx0XHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcblx0XHRcdFx0cGFkZGluZy1yaWdodDogMS41cmVtO1xuXHRcdFx0XHRwYWRkaW5nLWxlZnQ6IDEuNXJlbTtcblx0XHRcdFx0JjpmaXJzdC1jaGlsZCB7XG5cdFx0XHRcdFx0YmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuXHRcdFx0XHR9XG5cdFx0XHRcdCY6bGFzdC1jaGlsZCB7XG5cdFx0XHRcdFx0YmFja2dyb3VuZC1jb2xvcjogJHByaW1hcnktY29sb3I7XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHR9XG5cblx0XHQuY29sdW1uLWdyaWQge1xuXHRcdFx0LmN0YS1pbWFnZSB7XG5cdFx0XHRcdG1hcmdpbi1ib3R0b206IDEuNXJlbTtcblx0XHRcdFx0Ym9yZGVyLXJhZGl1czogJGdsb2JhbC1ib3JkZXItcmFkaXVzLTIwO1xuXHRcdFx0fVxuXHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gZG93bikge1xuXHRcdFx0XHQuY2VsbCB7XG5cdFx0XHRcdFx0Jjpub3QoOmxhc3QtY2hpbGQpIHtcblx0XHRcdFx0XHRcdEBpbmNsdWRlIHNlY3Rpb24tc3BhY2luZy1vdmVycmlkZShib3R0b20sIG1hcmdpbiwgMik7XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG59IiwiXG4uYnV0dG9uLCBhLmJ1dHRvbiwgaW5wdXRbdHlwZT1cInN1Ym1pdFwiXSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICRzZWNvbmRhcnktY29sb3I7XG4gIGNvbG9yOiAkcnVua2VlcGVyLWJsYWNrO1xuICBmb250LWZhbWlseTogJGhlYWRlci1mb250LWZhbWlseTtcbiAgZm9udC1zaXplOiByZW0tY2FsYygxNCk7XG4gIHBhZGRpbmc6IDFyZW0gMS41cmVtO1xuICBib3JkZXI6IG5vbmU7XG4gIEBpbmNsdWRlIGVhc2UtYWxsKCk7XG4gIHdpZHRoOjEwMCU7XG4gIG1pbi13aWR0aDogMTQuNXJlbTtcbiAgYm9yZGVyLXJhZGl1czogMS41NjI1cmVtO1xuICB0ZXh0LWRlY29yYXRpb246bm9uZTtcbiAgbGluZS1oZWlnaHQ6IDEuMTtcbiAgbWFyZ2luLWJvdHRvbTowO1xuXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKXtcbiAgICB3aWR0aDphdXRvO1xuICAgIHBhZGRpbmc6MXJlbSAycmVtO1xuICB9XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2Upe1xuICAgIHBhZGRpbmc6MXJlbSAycmVtO1xuICB9XG5cbiAgLy8gZWFzZSBTVkcgcGF0aCB0cmFuc2l0aW9uc1xuICBzdmcgcGF0aHtcbiAgICBAaW5jbHVkZSBlYXNlLWFsbCgpO1xuICB9XG5cbiAgJjpob3ZlciwgJjphY3RpdmUsICY6Zm9jdXMge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNGMUE2MjI7XG4gICAgY29sb3I6JHJ1bmtlZXBlci1ibGFjaztcbiAgICBzdmcgcGF0aHtcbiAgICAgIGZpbGw6JHdoaXRlICFpbXBvcnRhbnQ7XG4gICAgfVxuICB9XG5cbiAgJGljb24td2lkdGg6MS41cmVtO1xuICAmLmJ1dHRvbi0taWNvbi1sZWZ0LCAmLmJ1dHRvbi0taWNvbi1yaWdodHtcbiAgICBwb3NpdGlvbjpyZWxhdGl2ZTtcbiAgICA+c3Bhbixpe1xuICAgICAgcG9zaXRpb246YWJzb2x1dGU7XG4gICAgICBoZWlnaHQ6JGljb24td2lkdGg7XG4gICAgICB3aWR0aDokaWNvbi13aWR0aDtcbiAgICAgIHRvcDo1MCU7XG4gICAgICB0cmFuc2Zvcm06dHJhbnNsYXRlWSgtNTAlKTtcbiAgICAgIGRpc3BsYXk6ZmxleDtcbiAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgID5pbWcsID5zdmd7XG4gICAgICAgIHdpZHRoOmF1dG87XG4gICAgICAgIGhlaWdodDokaWNvbi13aWR0aDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAmLmJ1dHRvbi0taWNvbi1vbmx5e1xuICAgIHBhZGRpbmc6MC43NXJlbTtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHh4bGFyZ2Upe1xuICAgICAgcGFkZGluZzoxcmVtO1xuICAgIH1cbiAgICBzdmd7XG4gICAgICBkaXNwbGF5OmJsb2NrO1xuICAgIH1cbiAgfVxuXG4gICYubGlnaHQtYmcge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMzMsIDMzLCAzMywgLjA1KTtcbiAgICAmOmhvdmVyLCAmOmFjdGl2ZSwgJjpmb2N1cyB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDMzLCAzMywgMzMsIC4xKTtcbiAgICB9XG4gIH1cblxuICAmLmJ1dHRvbi0taWNvbi1sZWZ0e1xuICAgIHBhZGRpbmctbGVmdDokaWNvbi13aWR0aCsxLjI1cmVtO1xuICAgID5zcGFuLGl7XG4gICAgICBsZWZ0OjAuNzVyZW07XG4gICAgfVxuICB9XG4gICYuYnV0dG9uLS1pY29uLXJpZ2h0e1xuICAgIHBhZGRpbmctcmlnaHQ6JGljb24td2lkdGgrMS4yNXJlbTtcbiAgICA+c3Bhbixpe1xuICAgICAgcmlnaHQ6MC43NXJlbTtcbiAgICB9XG4gIH1cblxuICAmLnRpbGUtYnV0dG9uLCAmLmludmVydGVkIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG4gICAgY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xuICAgIGJvcmRlcjogMC4xODc1cmVtIHNvbGlkIHJnYmEoJHByaW1hcnktY29sb3IsIDAuNCk7XG5cbiAgICAmOmhvdmVyLCAmOmFjdGl2ZSwgJjpmb2N1cyB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbiAgICAgIGJvcmRlci1jb2xvcjokcHJpbWFyeS1jb2xvcjtcbiAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgfVxuICB9XG4gICYuYnV0dG9uLS1zbWFsbHtcbiAgICBmb250LXNpemU6cmVtLWNhbGMoMTQpO1xuICAgIHBhZGRpbmc6MC41cmVtO1xuICB9XG59XG5cbi5idXR0b257XG4gICYtLW13e1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKXtcbiAgICAgIG1pbi13aWR0aDpyZW0tY2FsYygxOTApICFpbXBvcnRhbnQ7XG4gICAgfVxuICB9XG59XG4iLCIuY2FyZHMtY29udGFpbmVyIHtcblxuICBAaW5jbHVkZSB4eS1ncmlkO1xuXG4gIC5jYXJkIHtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsKSB7XG4gICAgICBAaW5jbHVkZSB4eS1jZWxsKDEyKTtcblxuICAgICAgLmNhcmQtY29udGVudCB7XG4gICAgICAgIHBhZGRpbmc6IDFyZW07XG4gICAgICB9XG5cbiAgICB9XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgQGluY2x1ZGUgeHktY2VsbCgxIG9mIDMsIHRydWUsIDAuN3JlbSApO1xuXG4gICAgfVxuXG4gIH1cbn1cbiIsIi5oZXJvLWhlaWdodCB7XG5cdG1pbi1oZWlnaHQ6cmVtLWNhbGMoNjAwKTtcblx0QGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pe1xuXHRcdG1pbi1oZWlnaHQ6cmVtLWNhbGMoNjAwKTtcblx0XHRoZWlnaHQ6cmVtLWNhbGMoNjAwKTtcblx0fVxuXHRAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKXtcblx0XHRtaW4taGVpZ2h0OnJlbS1jYWxjKDgwMCk7XG5cdFx0aGVpZ2h0OnJlbS1jYWxjKDgwMCk7XG5cdH1cbn1cblxuLmZlYXR1cmVkLWhlcm8ge1xuXHRAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBkb3duKSB7XG5cdFx0ZGlzcGxheTogZmxleDtcblx0XHRhbGlnbi1pdGVtczogY2VudGVyO1xuXHR9XG5cdCYucHJlc3MsICYuZGVmYXVsdC1oZXJvIHtcblx0XHRoZWlnaHQ6IHJlbS1jYWxjKDQwMCk7XG5cdFx0ZGlzcGxheTogZmxleDtcblx0XHRhbGlnbi1pdGVtczogY2VudGVyO1xuXHRcdGp1c3RpZnktY29udGVudDogY2VudGVyO1xuXHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0XHQmOmFmdGVye1xuXHRcdFx0Y29udGVudDonJztcblx0XHRcdHBvc2l0aW9uOmFic29sdXRlO1xuXHRcdFx0dG9wOjA7XG5cdFx0XHRsZWZ0OjA7XG5cdFx0XHRyaWdodDowO1xuXHRcdFx0Ym90dG9tOjA7XG5cdFx0XHR3aWR0aDoxMDAlO1xuXHRcdFx0aGVpZ2h0OjEwMCU7XG5cdFx0XHR6LWluZGV4OjE7XG5cdFx0XHRiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoOTBkZWcsIHJnYmEoJHR1cnRsZS1ncmVlbiwgMC42KSAxMCUsIHJnYmEoJHR1cnRsZS1ncmVlbiwgMC40KSA4MCUpO1xuXHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pe1xuXHRcdFx0ICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoOTBkZWcsIHJnYmEoJHR1cnRsZS1ncmVlbiwgMC42KSAwJSwgcmdiYSgkdHVydGxlLWdyZWVuLCAwLjEpIDEwMCUpO1xuXHRcdFx0fVxuXHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSl7XG5cdFx0XHQgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCg5MGRlZywgcmdiYSgkdHVydGxlLWdyZWVuLCAwLjYpIDAlLCByZ2JhKCR0dXJ0bGUtZ3JlZW4sIDApIDcwJSk7XG5cdFx0XHR9XG5cdFx0fVxuXHRcdC5ncmlkLWNvbnRhaW5lciB7XG5cdFx0XHR3aWR0aDogMTAwJTtcblx0XHR9XG5cdFx0QGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuXHRcdFx0aGVpZ2h0OiByZW0tY2FsYyg1MDApO1xuXHRcdH1cblx0fVxuICAmLnZpcC1oZXJve1xuICAgIEBpbmNsdWRlIHNlY3Rpb24tcGFkZGluZy10b3Bib3R0b20oMC41KTtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSl7XG4gICAgICBAaW5jbHVkZSBzZWN0aW9uLXBhZGRpbmctdG9wYm90dG9tKDAuNzUpO1xuICAgIH1cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKXtcbiAgICAgIEBpbmNsdWRlIHNlY3Rpb24tc3BhY2luZy1vdmVycmlkZShib3R0b20sIHBhZGRpbmcsMC42LCRzZWN0aW9uLXBhZGRpbmctdG9wYm90dG9tKTtcbiAgICB9XG4gICAgJi5oYXMtYmctaW1ne1xuICAgICAgcG9zaXRpb246cmVsYXRpdmU7XG4gICAgICBvdmVyZmxvdzpoaWRkZW47XG4gICAgICAmOmFmdGVye1xuICAgICAgICBjb250ZW50OicnO1xuICAgICAgICBwb3NpdGlvbjphYnNvbHV0ZTtcbiAgICAgICAgdG9wOjA7XG4gICAgICAgIGxlZnQ6MDtcbiAgICAgICAgcmlnaHQ6MDtcbiAgICAgICAgYm90dG9tOjA7XG4gICAgICAgIHdpZHRoOjEwMCU7XG4gICAgICAgIGhlaWdodDoxMDAlO1xuICAgICAgICB6LWluZGV4OjE7XG4gICAgICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCg5MGRlZywgcmdiYSgkdHVydGxlLWdyZWVuLCAwLjYpIDAlLCByZ2JhKCR0dXJ0bGUtZ3JlZW4sIDAuNCkgNzAlKTtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pe1xuICAgICAgICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCg5MGRlZywgcmdiYSgkdHVydGxlLWdyZWVuLCAwLjYpIDAlLCByZ2JhKCR0dXJ0bGUtZ3JlZW4sIDAuMSkgMTAwJSk7XG4gICAgICAgIH1cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSl7XG4gICAgICAgICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDkwZGVnLCByZ2JhKCR0dXJ0bGUtZ3JlZW4sIDAuNikgMCUsIHJnYmEoJHR1cnRsZS1ncmVlbiwgMCkgNzAlKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgPiAuZ3JpZC1jb250YWluZXJ7XG4gICAgICAgIHBvc2l0aW9uOnJlbGF0aXZlO1xuICAgICAgICB6LWluZGV4OjI7XG4gICAgICB9XG4gICAgfVxuICAgIC5mZWF0dXJlZC1pbWFnZXtcbiAgICAgIHBvc2l0aW9uOmFic29sdXRlO1xuICAgICAgdG9wOjA7XG4gICAgICBsZWZ0OjA7XG4gICAgICByaWdodDowO1xuICAgICAgYm90dG9tOjA7XG4gICAgICB3aWR0aDoxMDAlO1xuICAgICAgaGVpZ2h0OjEwMCU7XG4gICAgICB6LWluZGV4OjA7XG4gICAgICBAZXh0ZW5kIC5oYXMtYmctaW1nO1xuICAgIH1cblxuICAgICYuZnJvbnR7XG4gICAgICAuZmVhdHVyZWQtaW1hZ2V7XG4gICAgICAgIC8vIGJyZWFrcG9pbnQgc3BlY2lmaWMgcG9zaXRpb25pbmdcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gb25seSl7XG4gICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxLjQpO1xuICAgICAgICAgIHRvcDo2JTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICAvLyB1cGdyYWRlIHBhZ2Ugc3BlY2lmaWMgaGVybyBlZGl0c1xuICAgICYudXBncmFkZXtcbiAgICAgIEBpbmNsdWRlIHNlY3Rpb24tcGFkZGluZy10b3Bib3R0b20oMC42KTtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIG9ubHkpe1xuICAgICAgICBAaW5jbHVkZSBzZWN0aW9uLXBhZGRpbmctdG9wYm90dG9tKDAuOCk7XG4gICAgICB9XG4gICAgICAuZmVhdHVyZWQtaW1hZ2V7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIGRvd24pe1xuXHRcdFx0d2lkdGg6cmVtLWNhbGMoMTIyNCk7XG5cdFx0XHRyaWdodDogMHB4O1xuXHRcdFx0bGVmdDogdW5zZXQ7XG5cdFx0fVxuXHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuXHRcdFx0cmlnaHQ6IC0xMDBweDtcblx0XHRcdFxuXHRcdH1cbiAgICAgIH1cbiAgICAgIC8vIG9ubHkgY2hhbmdlIHRleHQgY29sb3IgaWYgdGhlcmUgaXMgYSBiZyBpbWFnZVxuICAgICAgJi5oYXMtYmctaW1ne1xuICAgICAgICAmOmFmdGVye1xuICAgICAgICAgIG9wYWNpdHk6MTtcbiAgICAgICAgICBiYWNrZ3JvdW5kOmxpbmVhci1ncmFkaWVudCg5MGRlZywgcmdiYSgkd2hpdGUsIC44KSAwJSwgcmdiYSgkd2hpdGUsIDApIDEwMCUpO1xuICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSl7XG4gICAgICAgICAgICB3aWR0aDoxNTAlO1xuICAgICAgICAgIH1cbiAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSl7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOmxpbmVhci1ncmFkaWVudCg5MGRlZywgcmdiYSgkd2hpdGUsIDAuNikgMCUsIHJnYmEoJHdoaXRlLCAwKSAxMDAlKTtcbiAgICAgICAgICB9XG4gICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSl7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOmxpbmVhci1ncmFkaWVudCg5MGRlZywgcmdiYSgkd2hpdGUsIDAuNikgMCUsIHJnYmEoJHdoaXRlLCAwKSA3MCUpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAuaGVyby1jb250ZW50e1xuICAgICAgICAgIC5wYWdlLXRpdGxlLCAucGFnZS1jb250ZW50e1xuICAgICAgICAgICAgY29sb3I6JGJvZHktZm9udC1jb2xvcjtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cblx0fVxuICB9XG4gIC5sb2dvLXdyYXBwZXJ7XG4gICAgQGluY2x1ZGUgc2VjdGlvbi1zcGFjaW5nLW92ZXJyaWRlKGJvdHRvbSxtYXJnaW4sMyk7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pe1xuICAgICAgQGluY2x1ZGUgc2VjdGlvbi1zcGFjaW5nLW92ZXJyaWRlKGJvdHRvbSxtYXJnaW4sNik7XG4gICAgfVxuICAgID5pbWd7XG4gICAgICBoZWlnaHQ6cmVtLWNhbGMoNDApO1xuICAgICAgd2lkdGg6YXV0bztcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKXtcbiAgICAgICAgaGVpZ2h0OnJlbS1jYWxjKDQ4KTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgLy8gd2hlbiBjb2x1bW4gaXMgY2VudGVyZWQsIGNlbnRlciBjb250ZW50IGluc2lkZVxuICAubWVkaXVtLW9mZnNldC0ze1xuICAgIC5oZXJvLWNvbnRlbnR7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBkb3duKXtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgICAgICAgdGV4dC1hbGlnbjpjZW50ZXI7XG4gICAgICB9XG4gICAgfVxuICB9XG5cdC5oZXJvLWNvbnRlbnQge1xuXHRcdGRpc3BsYXk6IGZsZXg7XG5cdFx0d2lkdGg6IDEwMCU7XG5cdFx0ZmxleC1mbG93OiBjb2x1bW47XG5cdFx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG5cblx0XHRAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcblx0XHRcdGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cdFx0XHRtYXJnaW4tbGVmdDogYXV0bztcblx0XHRcdG1hcmdpbi1yaWdodDogYXV0bztcbiAgICAgIFx0XHR0ZXh0LWFsaWduOmNlbnRlcjtcblx0XHR9XG4gICAgLnBhZ2UtdGl0bGUsIC5wYWdlLWNvbnRlbnR7XG4gICAgICBjb2xvcjokd2hpdGU7XG4gICAgfVxuXG5cdFx0LnBhZ2UtdGl0bGUge1xuXHRcdFx0Zm9udC13ZWlnaHQ6ICRoZWFkZXItZm9udC13ZWlnaHQ7XG4gICAgICBtYXJnaW4tYm90dG9tOjA7XG5cdFx0fVxuXG5cdFx0LnBhZ2UtY29udGVudCB7XG4gICAgICBsaW5lLWhlaWdodDokZ2xvYmFsLWxpbmVoZWlnaHQ7XG4gICAgICBAaW5jbHVkZSBzZWN0aW9uLXNwYWNpbmctb3ZlcnJpZGUodG9wLG1hcmdpbiwyKTtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKXtcbiAgICAgICAgQGluY2x1ZGUgc2VjdGlvbi1zcGFjaW5nLW92ZXJyaWRlKHRvcCxtYXJnaW4sNik7XG4gICAgICB9XG5cdFx0fVxuXG5cdFx0LmJ1dHRvbiB7XG4gICAgICBAaW5jbHVkZSBzZWN0aW9uLXNwYWNpbmctb3ZlcnJpZGUodG9wLG1hcmdpbiwxLjUpO1xuICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSl7XG4gICAgICAgQGluY2x1ZGUgc2VjdGlvbi1zcGFjaW5nLW92ZXJyaWRlKHRvcCxtYXJnaW4sNCk7XG4gICAgIH1cblx0XHRcdHdpZHRoOiBtYXgtY29udGVudDtcblx0XHR9XG5cdH1cblx0PiAqIHtcblx0XHR6LWluZGV4OiAyO1xuXHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0fVxuXG5cdCYudGl0bGUtb25seSB7XG5cdFx0JjphZnRlcntcblx0XHRcdGJhY2tncm91bmQ6ICR0dXJxdW9pc2U7XG5cdFx0fVxuXHR9XG59XG5cbi5ibG9nLWhlcm8ge1xuXHRAaW5jbHVkZSBzZWN0aW9uLXNwYWNpbmctb3ZlcnJpZGUoYm90dG9tLCBtYXJnaW4sIDIpO1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiAkYXNpY3MtYmx1ZTtcblx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRvdmVyZmxvdzogaGlkZGVuO1xuXHQuZ3JpZC14IHtcblx0XHQuY29udGVudC1jZWxsIHtcblx0XHRcdEBpbmNsdWRlIHNlY3Rpb24tc3BhY2luZy1vdmVycmlkZShib3R0b20sIHBhZGRpbmcsIDIuMjUpO1xuXHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XG5cdFx0XHRcdHBhZGRpbmctdG9wOiAzcmVtO1xuXHRcdFx0XHRwYWRkaW5nLWJvdHRvbTogM3JlbTtcblx0XHRcdH1cblx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG5cdFx0XHRcdEBpbmNsdWRlIHNlY3Rpb24tc3BhY2luZy1vdmVycmlkZSh0b3AsIHBhZGRpbmcsIDEuNzUpO1xuXHRcdFx0XHRAaW5jbHVkZSBzZWN0aW9uLXNwYWNpbmctb3ZlcnJpZGUocmlnaHQsIHBhZGRpbmcsIDQpO1xuXHRcdFx0fVxuXHRcdFx0ZGlzcGxheTogZmxleDtcblx0XHRcdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG5cdFx0XHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcblx0XHRcdC5wb3N0LXRpdGxlIHtcblx0XHRcdFx0Y29sb3I6ICR0dXJxdW9pc2U7XG5cdFx0XHRcdG1hcmdpbi1ib3R0b206IDFyZW07XG5cdFx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcblx0XHRcdFx0XHRtYXJnaW4tYm90dG9tOiAxLjVyZW07XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHRcdC5wb3N0LWV4Y2VycHQge1xuXHRcdFx0XHRjb2xvcjogJHdoaXRlO1xuXHRcdFx0XHRtYXJnaW4tYm90dG9tOiAwO1xuXHRcdFx0fVxuXG5cdFx0XHQuYnV0dG9uLXdyYXAge1xuXHRcdFx0XHRtYXJnaW4tdG9wOiAxcmVtO1xuXHRcdFx0XHRAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG5cdFx0XHRcdFx0bWFyZ2luLXRvcDogMS41cmVtO1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0fVxuXHRcdC5pbWFnZS1jZWxsIHtcblx0XHRcdGltZyB7XG5cdFx0XHRcdGhlaWdodDogcmVtLWNhbGMoMzAwKTtcblx0XHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcblx0XHRcdFx0XHRoZWlnaHQ6IHJlbS1jYWxjKDQwMCk7XG5cdFx0XHRcdH1cblx0XHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuXHRcdFx0XHRcdGhlaWdodDogcmVtLWNhbGMoNDc0KTtcblx0XHRcdFx0fVxuXG5cdFx0XHRcdG1pbi13aWR0aDogMTAwJTtcblx0XHRcdFx0b2JqZWN0LWZpdDogY292ZXI7XG5cdFx0XHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0XHRcdFx0dHJhbnNpdGlvbjogaGVpZ2h0IC4yNXMgZWFzZTtcblx0XHRcdFx0ei1pbmRleDogMjtcblx0XHRcdFx0ZGlzcGxheTpibG9jaztcblx0XHRcdH1cblx0XHR9XG5cdH1cblxuXHQmLmJsb2ctc2luZ2xlIHtcblx0XHQmLmhhcy1pbWFnZSwgJi5oYXMtdmlkZW8ge1xuXHRcdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRcdFx0Jjo6YmVmb3JlIHtcblxuXHRcdFx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0XHRcdGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcblx0XHRcdFx0aGVpZ2h0OiByZW0tY2FsYygxODkpO1xuXHRcdFx0XHR3aWR0aDogMTAwJTtcblx0XHRcdFx0Ym90dG9tOiAwO1xuXHRcdFx0XHRsZWZ0OiAwO1xuXHRcdFx0XHR6LWluZGV4OiAxO1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSl7XG4gICAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgIH1cblx0XHRcdH1cblx0XHR9XG5cdFx0LmdyaWQteCB7XG5cdFx0XHQuY29udGVudC1jZWxsIHtcblx0XHRcdFx0dGV4dC1hbGlnbjogY2VudGVyO1xuXHRcdFx0XHQuY2F0LWxpbmsge1xuXHRcdFx0XHRcdG1hcmdpbi1ib3R0b206IDFyZW07XG5cdFx0XHRcdFx0dGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcblx0XHRcdFx0fVxuXHRcdFx0XHQucG9zdC1leGNlcnB0IHtcblx0XHRcdFx0XHRtYXJnaW4tYm90dG9tOiAxcmVtO1xuXHRcdFx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcblx0XHRcdFx0XHRcdG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDQwKTtcblx0XHRcdFx0XHR9XG5cdFx0XHRcdH1cblx0XHRcdFx0LnBvc3QtbWV0YSB7XG5cdFx0XHRcdFx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG5cdFx0XHRcdFx0LmF1dGhvci1uYW1lIHtcblx0XHRcdFx0XHRcdGNvbG9yOiAkd2hpdGU7XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0XHQuaW1hZ2UtY2VsbCB7XG5cdFx0XHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0XHRcdFx0Ji5oYXMtdmlkZW8ge1xuICAgICAgICAgIC5mZWF0dXJlZC1tZWRpYS13cmFwcGVye1xuICAgICAgICAgICAgLy9wYWRkaW5nLWJvdHRvbTo1Ni4yNSU7XG4gICAgICAgICAgfVxuXHRcdFx0XHRcdCY6aG92ZXIsICY6YWN0aXZlLCAmOmZvY3VzIHtcblx0XHRcdFx0XHRcdGN1cnNvcjogcG9pbnRlcjtcblx0XHRcdFx0XHRcdC5wbGF5LWJ1dHRvbiB7XG5cdFx0XHRcdFx0XHRcdHRyYW5zaXRpb246IG9wYWNpdHkgLjI1cyBlYXNlO1xuXHRcdFx0XHRcdFx0XHRzdmcge1xuXHRcdFx0XHRcdFx0XHRcdHBhdGgge1xuXHRcdFx0XHRcdFx0XHRcdFx0ZmlsbDogJHN1cGVybm92YTtcblx0XHRcdFx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHR9XG5cblx0XHRcdFx0XHQucGxheS1idXR0b24ge1xuXHRcdFx0XHRcdFx0aGVpZ2h0OiByZW0tY2FsYyg2MCk7XG5cdFx0XHRcdFx0XHR3aWR0aDogcmVtLWNhbGMoNjApO1xuXHRcdFx0XHRcdFx0Ym9yZGVyLXJhZGl1czogNTAlO1xuXHRcdFx0XHRcdFx0YmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuXHRcdFx0XHRcdFx0ei1pbmRleDogMTA7XG5cdFx0XHRcdFx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0XHRcdFx0XHRyaWdodDogMS41cmVtO1xuXHRcdFx0XHRcdFx0Ym90dG9tOiAxLjVyZW07XG5cdFx0XHRcdFx0XHRwb2ludGVyLWV2ZW50czogbm9uZTtcblx0XHRcdFx0XHRcdHN2ZyB7XG5cdFx0XHRcdFx0XHRcdG1heC1oZWlnaHQ6IDJyZW07XG5cdFx0XHRcdFx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRcdFx0XHRcdFx0dG9wOiA1MCU7XG5cdFx0XHRcdFx0XHRcdGxlZnQ6IGNhbGMoNTAlICsgMnB4KTtcblx0XHRcdFx0XHRcdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG5cdFx0XHRcdFx0XHRcdHBhdGgge1xuXHRcdFx0XHRcdFx0XHRcdHRyYW5zaXRpb246IGZpbGwgLjI1cyBlYXNlO1xuXHRcdFx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHR9XG4gICAgICAgIC5mZWF0dXJlZC1tZWRpYS13cmFwcGVye1xuICAgICAgICAgIHBvc2l0aW9uOnJlbGF0aXZlO1xuICAgICAgICAgIEBpbmNsdWRlIGV4dGVuZC1wYXN0LWdyaWQtY29udGFpbmVyLXBhZGRpbmcoKTtcbiAgICAgICAgICAgIG1heC13aWR0aDpub25lO1xuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pe1xuICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiAkZ2xvYmFsLWJvcmRlci1yYWRpdXMtMjA7XG4gICAgICAgICAgICAgIG92ZXJmbG93OmhpZGRlbjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICBpbWd7XG4gICAgICAgICAgICB3aWR0aDoxMDAlO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXHRcdFx0XHQuZmVhdHVyZWQtaW1hZ2Uge1xuXHRcdFx0XHRcdHRyYW5zaXRpb246IG9wYWNpdHkgLjI1cyBlYXNlO1xuICAgICAgICAgIC8vJjpub3QoLm92ZXJsYXkpe1xuICAgICAgICAgIC8vICBAaW5jbHVkZSBleHRlbmQtcGFzdC1ncmlkLWNvbnRhaW5lci1wYWRkaW5nKCk7XG4gICAgICAgICAgLy8gIG1heC13aWR0aDpub25lO1xuICAgICAgICAgIC8vICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSl7XG4gICAgICAgICAgLy8gICAgYm9yZGVyLXJhZGl1czogJGdsb2JhbC1ib3JkZXItcmFkaXVzLTIwO1xuICAgICAgICAgIC8vICB9XG4gICAgICAgICAgLy99XG5cdFx0XHRcdFx0Ji5vdmVybGF5IHtcblx0XHRcdFx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRcdFx0XHRcdGhlaWdodDogMTAwJTtcblx0XHRcdFx0XHRcdHdpZHRoOiAxMDAlO1xuXHRcdFx0XHRcdFx0dG9wOiAwO1xuXHRcdFx0XHRcdFx0bGVmdDogMDtcbiAgICAgICAgICAgIHJpZ2h0OjA7XG5cdFx0XHRcdFx0XHR6LWluZGV4OiA5O1xuXHRcdFx0XHRcdH1cblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdH1cblx0fVxuXG5cdCYuYmxvZy10b3BpYyB7XG5cdFx0QGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XG5cdFx0XHQmOjpiZWZvcmUge1xuXHRcdFx0XHRjb250ZW50OiAnJztcblx0XHRcdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdFx0XHR3aWR0aDogMTAwJTtcblx0XHRcdFx0aGVpZ2h0OiAxMDAlO1xuXHRcdFx0XHR0b3A6IDA7XG5cdFx0XHRcdGxlZnQ6IDA7XG5cdFx0XHRcdGJhY2tncm91bmQtY29sb3I6IHJnYmEoJGFzaWNzLWJsdWUsIC44KTtcblx0XHRcdFx0ei1pbmRleDogMztcblx0XHRcdH1cblx0XHR9XG5cdFx0LmdyaWQteCB7XG5cdFx0XHQuY29udGVudC1jZWxsIHtcblx0XHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gZG93bikge1xuXHRcdFx0XHRcdEBpbmNsdWRlIHNlY3Rpb24tcGFkZGluZy10b3Bib3R0b20oKTtcblx0XHRcdFx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdFx0XHRcdFx0ei1pbmRleDogNDtcblx0XHRcdFx0fVxuXHRcdFx0XHQucG9zdC1leGNlcnB0IHtcblx0XHRcdFx0XHRAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG5cdFx0XHRcdFx0XHRmb250LXNpemU6IHJlbS1jYWxjKDE2KTtcblx0XHRcdFx0XHR9XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHRcdC5pbWFnZS1jZWxsIHtcblx0XHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XG5cdFx0XHRcdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdFx0XHRcdGhlaWdodDogMTAwJTtcblx0XHRcdFx0XHR3aWR0aDogMTAwJTtcblx0XHRcdFx0XHRsZWZ0OiAwO1xuXHRcdFx0XHRcdHRvcDogMDtcbiAgICAgICAgICA+aW1ne1xuICAgICAgICAgICAgZGlzcGxheTpibG9jaztcbiAgICAgICAgICAgIG9iamVjdC1maXQ6IGNvdmVyO1xuICAgICAgICAgICAgaGVpZ2h0OjEwMCU7XG4gICAgICAgICAgICB3aWR0aDphdXRvO1xuICAgICAgICAgIH1cblx0XHRcdFx0fVxuICAgICAgICAuZmVhdHVyZWQtbWVkaWEtd3JhcHBlcntcbiAgICAgICAgICBAaW5jbHVkZSBleHRlbmQtcGFzdC1ncmlkLWNvbnRhaW5lci1wYWRkaW5nKCdhbGwnLCdyaWdodCcpO1xuICAgICAgICAgIG1pbi1oZWlnaHQ6MTAwJTtcbiAgICAgICAgICBoZWlnaHQ6MTAwJTtcbiAgICAgICAgfVxuICAgICAgICBpbWd7XG4gICAgICAgICAgZGlzcGxheTpibG9jaztcbiAgICAgICAgICB3aWR0aDoxMDAlO1xuICAgICAgICAgIG1pbi1oZWlnaHQ6MTAwJTtcbiAgICAgICAgICBoZWlnaHQ6YXV0bztcbiAgICAgICAgICBtYXgtaGVpZ2h0OjEwMCU7XG4gICAgICAgIH1cblx0XHRcdH1cblx0XHR9XG5cblx0fVxufVxuXG4iLCIuZG90dGVkIHtcbiAgYm9yZGVyLXN0eWxlOiBkYXNoZWQ7XG4gIG1hcmdpbjogMnJlbSAwO1xufVxuIiwidWwge1xuICAmLmhvcml6b250YWwtbGlzdCB7XG4gICAgbGlzdC1zdHlsZS10eXBlOm5vbmU7XG4gICAgbWFyZ2luOjByZW07XG4gICAgZGlzcGxheTppbmxpbmUtYmxvY2s7XG4gICAgPiBsaSB7XG4gICAgICBkaXNwbGF5OmlubGluZS1ibG9jaztcbiAgICAgIHBhZGRpbmc6MHJlbSAwLjI1cmVtO1xuICAgIH1cbiAgICAmOmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6JyAnO1xuICAgICAgZGlzcGxheTpibG9jaztcbiAgICAgIGNsZWFyOmJvdGg7XG4gICAgfVxuICB9XG4gICYuc29jaWFsLWljb24tbGlzdCB7XG4gICAgYS5zb2NpYWwtbGluayB7XG4gICAgICAuZmFiLCAuZmFyLCAuZmFsLCAuZmEge1xuICAgICAgICBmb250LXNpemU6cmVtLWNhbGMoMjApO1xuICAgICAgfVxuICAgICAgJjpob3ZlciwgJjpmb2N1cywgJjphY3RpdmUge1xuICAgICAgICBvcGFjaXR5OjAuNjtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuIiwiLy8gQXBwbHkgb3V0bGluZSBzdHlsZXMgb25seSB3aGVuIGlucHV0IG1ldGhvZCBpcyBrZXlib2FyZFxuLy8gcmVtb3ZlIDpmb2N1cyBzdHlsZSB2aWEgV2hhdCBJbnB1dCB1c2luZyBwcm9ncmVzc2l2ZSBlbmhhbmNlbWVudFxuLy8gc28gOmZvY3VzIGlzbid0IGxlZnQgYnJva2VuIGlmIEphdmFTY3JpcHQgZmFpbHNcblxuW2RhdGEtd2hhdGlucHV0PVwibW91c2VcIl0gYTpmb2N1cywgYnV0dG9uOmZvY3VzXG5bZGF0YS13aGF0aW5wdXQ9XCJ0b3VjaFwiXSBhOmZvY3VzLCBidXR0b246Zm9jdXMge1xuICBvdXRsaW5lOiBub25lO1xufVxuXG5hIHtcbiAgdHJhbnNpdGlvbjowLjVzIGVhc2U7XG4gIG9wYWNpdHk6MTtcbiAgJi5yZWctbGlua3tcbiAgICBmb250LXdlaWdodDokZ2xvYmFsLXdlaWdodC1ib2xkO1xuICAgIGRpc3BsYXk6aW5saW5lLWJsb2NrO1xuICAgIGNvbG9yOiRib2R5LWZvbnQtY29sb3I7XG4gICAgYm9yZGVyLWJvdHRvbToxcHggZG90dGVkIHJnYmEoJGJvZHktZm9udC1jb2xvciwgMC41KTtcbiAgICB0ZXh0LWRlY29yYXRpb246bm9uZSAhaW1wb3J0YW50O1xuICAgIHBvc2l0aW9uOnJlbGF0aXZlO1xuICAgIHBhZGRpbmctbGVmdDowO1xuICAgIHBhZGRpbmctcmlnaHQ6MC4yNXJlbTtcbiAgICB6LWluZGV4OjA7XG4gICAgJjpiZWZvcmV7XG4gICAgICBjb250ZW50OiAnJztcbiAgICAgIC8vZGlzcGxheTogYmxvY2s7XG4gICAgICB3aWR0aDogMCU7XG4gICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICAgIHRyYW5zaXRpb246IHdpZHRoIC4ycyBlYXNlLCBiYWNrZ3JvdW5kLWNvbG9yIC4ycyBlYXNlO1xuICAgICAgcG9zaXRpb246YWJzb2x1dGU7XG4gICAgICAvL3JpZ2h0OjA7XG4gICAgICBsZWZ0OjA7XG4gICAgICBib3R0b206LTFweDtcbiAgICAgIHRvcDphdXRvO1xuICAgICAgaGVpZ2h0OjFweDtcbiAgICAgIHotaW5kZXg6LTE7XG4gICAgfVxuICAgICY6aG92ZXIsICY6Zm9jdXN7XG4gICAgICB0ZXh0LWRlY29yYXRpb246bm9uZTtcbiAgICAgIGNvbG9yOmRhcmtlbigkcHJpbWFyeS1jb2xvciwgMTAlKTtcbiAgICAgIC8vY29sb3I6JHdoaXRlO1xuICAgICAgJjpiZWZvcmV7XG4gICAgICAgIHdpZHRoOjEwMCU7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6JHByaW1hcnktY29sb3I7XG4gICAgICB9XG4gICAgfVxuICB9XG4gICYuc2lsZW50IHtcbiAgICBoZWlnaHQ6MTAwJTtcbiAgICB3aWR0aDoxMDAlO1xuICAgIGRpc3BsYXk6YmxvY2s7XG4gIH1cbiAgLyoqXG5TVkcgSWNvbiBMaW5rIFZhcmlhbnRzXG4gKi9cbiAgJGljb24td2lkdGg6MXJlbTtcbiAgJi5saW5rLS1pY29uLXJpZ2h0LCAmLmxpbmstLWljb24tbGVmdHtcbiAgICBwb3NpdGlvbjpyZWxhdGl2ZTtcbiAgICA+c3Bhbixpe1xuICAgICAgcG9zaXRpb246YWJzb2x1dGU7XG4gICAgICBoZWlnaHQ6JGljb24td2lkdGg7XG4gICAgICB3aWR0aDokaWNvbi13aWR0aDtcbiAgICAgIHRvcDo1MCU7XG4gICAgICB0cmFuc2Zvcm06dHJhbnNsYXRlWSgtNTAlKTtcbiAgICAgIGRpc3BsYXk6ZmxleDtcbiAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgIEBpbmNsdWRlIGVhc2UtYWxsKCk7XG4gICAgICA+aW1nLCA+c3Zne1xuICAgICAgICB3aWR0aDphdXRvO1xuICAgICAgICBoZWlnaHQ6JGljb24td2lkdGg7XG4gICAgICB9XG4gICAgfVxuICB9XG4gICYubGluay0taWNvbi1sZWZ0e1xuICAgID5zcGFuLGl7XG4gICAgICBsZWZ0OigkaWNvbi13aWR0aCswLjI1cmVtKSotMTtcbiAgICB9XG4gICAgJjpob3ZlciwgJjpmb2N1c3tcbiAgICAgID5zcGFuLGl7XG4gICAgICAgIGxlZnQ6KCRpY29uLXdpZHRoKzAuNXJlbSkqLTE7XG4gICAgICB9XG4gICAgfVxuICB9XG4gICYubGluay0taWNvbi1yaWdodHtcbiAgICA+c3Bhbixpe1xuICAgICAgcmlnaHQ6KCRpY29uLXdpZHRoKzAuMjVyZW0pKi0xO1xuICAgIH1cbiAgICAmOmhvdmVyLCAmOmZvY3Vze1xuICAgICAgPnNwYW4saXtcbiAgICAgICAgcmlnaHQ6KCRpY29uLXdpZHRoKzAuNXJlbSkqLTE7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIC8qKlxuICBERVBSRUNBVEVEXG4gICAqL1xuICAmLmFycm93LWxpbmsge1xuICAgIHBvc2l0aW9uOnJlbGF0aXZlO1xuICAgIGJveC1zaXppbmc6Ym9yZGVyLWJveDtcbiAgICAmOmFmdGVyIHtcbiAgICAgIGZvbnQtZmFtaWx5OidGb250QXdlc29tZSc7XG4gICAgICBjb250ZW50OidcXGYxNzgnO1xuICAgICAgY29sb3I6JHByaW1hcnktY29sb3I7XG4gICAgICBwb3NpdGlvbjphYnNvbHV0ZTtcbiAgICAgIGZvbnQtc2l6ZToxOHB4O1xuICAgICAgdG9wOmNhbGMoNTAlIC0gOXB4KTtcbiAgICAgIGJvdHRvbTpjYWxjKDUwJSAtIDlweCk7XG4gICAgICByaWdodDotMXJlbTtcbiAgICAgIHRyYW5zaXRpb246MC41cyBlYXNlO1xuICAgIH1cbiAgICAmOmhvdmVyLCAmOmZvY3VzLCAmOmFjdGl2ZSB7XG4gICAgICAmOmFmdGVyIHtcbiAgICAgICAgcmlnaHQ6LTJyZW07XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4kYnViYmxlLWxpbmstc3o6KFxuICBzbWFsbDoxMjAsXG4gIG1lZGl1bToxNjAsXG4gIGxhcmdlOjIxMlxuKTtcblxuLmJ1YmJsZS1saW5rIHtcbiAgZGlzcGxheTogZmxleDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgei1pbmRleDogMztcbiAgYmFja2dyb3VuZC1jb2xvcjogJHN1cGVybm92YTtcbiAgY29sb3I6ICRydW5rZWVwZXItYmxhY2s7XG4gIGZvbnQtZmFtaWx5OiAkaGVhZGVyLWZvbnQtZmFtaWx5O1xuICBib3JkZXItcmFkaXVzOiA1MCU7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIHBhZGRpbmc6IDFyZW0gMS41cmVtO1xuICBmb250LXNpemU6IHJlbS1jYWxjKDE0KTtcbiAgJjpob3ZlciwgJjpmb2N1c3tcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOmxpZ2h0ZW4oJHN1cGVybm92YSwxMCUpO1xuICAgIGNvbG9yOiRydW5rZWVwZXItYmxhY2s7XG4gICAgdGV4dC1kZWNvcmF0aW9uOm5vbmU7XG4gIH1cbiAgLy9zZXQgaGVpZ2h0ICYgd2lkdGhcbiAgQGluY2x1ZGUgc2V0LWh3LXJlc3BvbnNpdmVseSgkYnViYmxlLWxpbmstc3opO1xuXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQoIG1lZGl1bSl7XG4gICAgZm9udC1zaXplOiByZW0tY2FsYygyNCk7XG4gIH1cblxuXG5cbn1cbiIsIlxuLy9icmVhZGNydW1iIGFkanVzdG1lbnRzXG4uYnJlYWRjcnVtYi1zZWN0aW9uIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuICB1bC5icmVhZGNydW1icyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjp0cmFuc3BhcmVudDtcbiAgICBib3JkZXI6bm9uZTtcblx0bWFyZ2luOiAwO1xuXHRAaW5jbHVkZSBzZWN0aW9uLXBhZGRpbmctdG9wYm90dG9tKDIuNSk7XG4gICAgPiBsaSB7XG4gICAgICBmb250LXNpemU6MXJlbTtcbiAgICAgIHRleHQtdHJhbnNmb3JtOmNhcGl0YWxpemU7XG4gICAgICBmb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtc2VtaWJvbGQ7XG4gICAgICBjb2xvcjpyZ2JhKCRib2R5LWZvbnQtY29sb3IsIDAuNSk7XG4gICAgICA+IGEge1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTpjYXBpdGFsaXplO1xuICAgICAgICBjb2xvcjokYm9keS1mb250LWNvbG9yO1xuXHRcdHRleHQtZGVjb3JhdGlvbjpub25lO1xuICAgICAgICAmOmhvdmVyLCAmOmZvY3VzLCAmOmFjdGl2ZSB7XG5cdFx0XHR0ZXh0LWRlY29yYXRpb246dW5kZXJsaW5lO1xuICAgICAgICAgIGNvbG9yOiRwcmltYXJ5LWNvbG9yO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICAmOmJlZm9yZSB7XG4gICAgICAgIGNvbnRlbnQ6Jyc7XG4gICAgICAgIGRpc3BsYXk6bm9uZTtcbiAgICAgIH1cbiAgICAgICY6YWZ0ZXIge1xuICAgICAgICBjb2xvcjpyZ2JhKCRibGFjaywgMC4yKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgLmJyZWFkY3J1bWJzIGxpOm5vdCg6bGFzdC1jaGlsZCk6OmFmdGVyIHtcbiAgICBtYXJnaW46IDAgMC41cmVtO1xuICB9XG4gICYuc2VhcmNoLXJlc3VsdHMtYnJlYWRjcnVtYnMge1xuICAgIHBhZGRpbmctYm90dG9tOjA7XG4gICAgPiAuZ3JpZC1jb250YWluZXIge1xuICAgICAgcGFkZGluZy1ib3R0b206MDtcbiAgICB9XG4gICAgdWwuYnJlYWRjcnVtYnMge1xuICAgICAgbWFyZ2luLWJvdHRvbTowO1xuICAgIH1cbiAgfVxufVxuIiwiLnJldmVhbHtcbiAgaGVpZ2h0OmF1dG87XG4gIG1pbi1oZWlnaHQ6IGluaGVyaXQ7XG4gIHRleHQtYWxpZ246Y2VudGVyO1xuICAvL3BhZGRpbmctdG9wOjRyZW07XG4gIHBvc2l0aW9uOnJlbGF0aXZlO1xuICBvdmVyZmxvdzpoaWRkZW47XG4gIHBhZGRpbmc6NHJlbSAxLjVyZW0gMS41cmVtIDEuNXJlbTtcbiAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pe1xuICAgIHBhZGRpbmc6NHJlbSAkcmV2ZWFsLXBhZGRpbmcgJHJldmVhbC1wYWRkaW5nICRyZXZlYWwtcGFkZGluZztcbiAgfVxuXG4gIGJ1dHRvbi5jbG9zZS1idXR0b257XG4gICAgZm9udC1zaXplOjIuNXJlbTtcbiAgICBAaW5jbHVkZSBlYXNlLWFsbCgpO1xuICAgIGJhY2tncm91bmQtY29sb3I6cmdiYSgkYmxhY2ssIDAuMDUpO1xuICAgIGNvbG9yOiRib2R5LWZvbnQtY29sb3I7XG4gICAgcG9zaXRpb246YWJzb2x1dGU7XG4gICAgdG9wOjA7XG4gICAgcmlnaHQ6MDtcbiAgICBwYWRkaW5nOjAuMjVyZW0gMXJlbTtcbiAgICBsaW5lLWhlaWdodDogMTtcbiAgICAmOmZvY3VzLCAmOmhvdmVyLCAmOmFjdGl2ZXtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6JHByaW1hcnktY29sb3I7XG4gICAgICBjb2xvcjokd2hpdGU7XG4gICAgfVxuICB9XG4gIGE6bm90KC5idXR0b24pe1xuICAgIEBleHRlbmQgYS5yZWctbGluaztcbiAgfVxufSIsIi5nZXQtc3RhcnRlZC1zZWN0aW9uIHtcblx0cG9zaXRpb246IHJlbGF0aXZlO1xuICBAaW5jbHVkZSBzZWN0aW9uLXNwYWNpbmctb3ZlcnJpZGUodG9wLHBhZGRpbmcsMik7XG4gIEBpbmNsdWRlIHNlY3Rpb24tc3BhY2luZy1vdmVycmlkZShib3R0b20scGFkZGluZyk7XG5cdCY6OmFmdGVyIHtcblx0XHRiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMTgwZGVnLCByZ2JhKCR3aGl0ZSwgMCkgMCUsICR3aGl0ZSA4MCUpO1xuXHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRjb250ZW50OiAnJztcblx0XHR0b3A6IDA7XG5cdFx0Ym90dG9tOiAwO1xuXHRcdHJpZ2h0OiAwO1xuXHRcdGxlZnQ6IDA7XG4gICAgei1pbmRleDowO1xuXHR9XG5cblx0JiA+ICoge1xuXHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0XHR6LWluZGV4OiAyO1xuXHR9XG5cbn1cbi5idWJibGUtcGluLXNlY3Rpb257XG4gIHBvc2l0aW9uOnJlbGF0aXZlO1xuICAuc2VjdGlvbi1jZWxsIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZmxvdzogY29sdW1uO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIH1cbiAgLnRleHQtd3JhcHBlciB7XG5cdHRleHQtYWxpZ246IGNlbnRlcjtcblx0d2lkdGg6IDEwMCU7IC8vIG9uIElFIHRoaXMgaXMgbm90IGltcGxpY2l0XG4gICAgLnNlY3Rpb24tdGl0bGV7XG4gICAgICBtYXJnaW4tdG9wOjJyZW07XG4gICAgfVxuICAgIC5zZWN0aW9uLWNvbnRlbnR7XG4gICAgICBAaW5jbHVkZSBzZWN0aW9uLXNwYWNpbmctb3ZlcnJpZGUodG9wLG1hcmdpbiw0KTtcbiAgICB9XG4gIH1cbiAgLmJ1dHRvbntcbiAgICBAaW5jbHVkZSBzZWN0aW9uLXNwYWNpbmctb3ZlcnJpZGUodG9wLG1hcmdpbiw0KTtcbiAgfVxufVxuIiwiLmdvYWwtc2VjdGlvbiB7XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2Upe1xuICAgIEBpbmNsdWRlIHNlY3Rpb24tcGFkZGluZy10b3Bib3R0b20oMS41KTtcbiAgfVxuXHQuZ29hbC1zZWN0aW9uLWdyaWQge1xuXHRcdGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cdH1cblxuXHQuZ29hbC1jdGEtY29sIHtcblx0XHRkaXNwbGF5OiBmbGV4O1xuXHRcdGp1c3RpZnktY29udGVudDogY2VudGVyO1xuXG5cdFx0QGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuXHRcdFx0anVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcblx0XHR9XG4gICAgJGltZy1oLXNtYWxsOnJlbS1jYWxjKDM0MCk7XG4gICAgJGltZy1oLW1lZGl1bTpyZW0tY2FsYygzOTApO1xuICAgICRpbWctaC1sYXJnZTpyZW0tY2FsYyg1MDApO1xuXHRcdC5jdGEtd3JhcHBlciB7XG4gICAgICB3aWR0aDphdXRvO1xuICAgICAgcG9zaXRpb246cmVsYXRpdmU7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpe1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IGNhbGMoICgje21hcC1nZXQoJHNlY3Rpb24tcGFkZGluZy1sZWZ0cmlnaHQsICdzbWFsbCcpfSArIDIwJSkqLTEpO1xuXG4gICAgICAgIC8vIGRvdWJsZSB3aWR0aCB0byBhY2NvdW50IGZvciBleHRlbnNpb25cbiAgICAgICAgd2lkdGg6Y2FsYygxMDAlICsgKCN7bWFwLWdldCgkc2VjdGlvbi1wYWRkaW5nLWxlZnRyaWdodCwgJ3NtYWxsJyl9ICogMSkpO1xuICAgICAgICBtYXgtd2lkdGg6bm9uZTtcbiAgICAgIH1cblxuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pe1xuICAgICAgICBtYXgtd2lkdGg6Y2FsYygjeyRpbWctaC1tZWRpdW19ICsgMTAlKTtcbiAgICAgIH1cbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2Upe1xuICAgICAgICBtYXgtd2lkdGg6bm9uZTtcbiAgICAgIH1cbiAgICAgIC5tYWluLWltYWdle1xuICAgICAgICBib3JkZXItcmFkaXVzOiRnbG9iYWwtYm9yZGVyLXJhZGl1cy0yMDtcbiAgICAgICAgb2JqZWN0LWZpdDpjb3ZlcjtcbiAgICAgICAgd2lkdGg6MTAwJTtcbiAgICAgICAgaGVpZ2h0OiRpbWctaC1zbWFsbDtcbiAgICAgICAgcG9zaXRpb246cmVsYXRpdmU7XG4gICAgICAgIHotaW5kZXg6MDtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pe1xuICAgICAgICAgIGhlaWdodDokaW1nLWgtbWVkaXVtO1xuICAgICAgICB9XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2Upe1xuICAgICAgICAgIGhlaWdodDokaW1nLWgtbGFyZ2U7XG4gICAgICAgICAgd2lkdGg6OTAlO1xuICAgICAgICAgIG1heC13aWR0aDpub25lO1xuICAgICAgICAgIG1hcmdpbi1sZWZ0OjEwJTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgLmdyYXBoaWN7XG4gICAgICAgIHBvc2l0aW9uOmFic29sdXRlO1xuICAgICAgICB3aWR0aDphdXRvO1xuICAgICAgICBtYXgtd2lkdGg6bm9uZTtcbiAgICAgICAgaGVpZ2h0OnJlbS1jYWxjKDEzMCk7XG4gICAgICAgIGRpc3BsYXk6YmxvY2s7XG4gICAgICAgIGxlZnQ6MDtcbiAgICAgICAgYm90dG9tOjEwJTtcbiAgICAgICAgbWFyZ2luLWxlZnQ6Y2FsYygoMTUlICsgMjBweCkgKiAtMSk7XG4gICAgICAgIHotaW5kZXg6MTtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pe1xuICAgICAgICAgIGhlaWdodDpyZW0tY2FsYygxNjApO1xuICAgICAgICAgIG1hcmdpbi1sZWZ0OmNhbGMoKDE1JSArIDQwcHgpICogLTEpO1xuICAgICAgICB9XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2Upe1xuICAgICAgICAgIG1hcmdpbi1sZWZ0Oi00MHB4O1xuICAgICAgICB9XG4gICAgICB9XG5cdFx0fVxuXHR9XG5cblx0LmNvbnRlbnQtY29sIHtcblx0XHRwYWRkaW5nLXRvcDogMi4yNXJlbTtcblx0XHQuY29udGVudC13cmFwcGVyIHtcblx0XHRcdG1heC13aWR0aDogMjkuMTg3NXJlbTtcblx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIGRvd24pIHtcblx0XHRcdFx0bWFyZ2luOiAwIGF1dG87XG5cdFx0XHRcdHRleHQtYWxpZ246IGNlbnRlcjtcblx0XHRcdH1cblxuXHRcdFx0LmJ1YmJsZS1waW4ge1xuXHRcdFx0XHRAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBkb3duKSB7XG5cdFx0XHRcdFx0bWFyZ2luOiAwIGF1dG87XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHRcdC5nb2FsLXNlY3Rpb24tdGl0bGUge1xuXHRcdFx0XHRtYXJnaW4tdG9wOiAyLjI1cmVtO1xuXHRcdFx0XHRtYXJnaW4tYm90dG9tOiAyLjI1cmVtO1xuXHRcdFx0fVxuXHRcdH1cblx0fVxufVxuIiwiLmd1aWRhbmNlLXNlY3Rpb24ge1xuXHRAaW5jbHVkZSBzZWN0aW9uLXBhZGRpbmctdG9wYm90dG9tKDEpO1xuXG4gIC5pbWFnZS1jb2xsZWN0aW9uLXdyYXBwZXIge1xuICAgIEBpbmNsdWRlIGV4dGVuZC1wYXN0LWdyaWQtY29udGFpbmVyLXBhZGRpbmcoJ3NtYWxsJyk7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIC8vIHNoYWRvdyA9IDQwcHggKjIgYmVyIHNpZGVcbiAgICAvLyAyOTAgKyA4MCA9XG4gICAgJGNhcmQtc2hhZG93LXc6NDRweDtcbiAgICAkY2FyZC1oLXNtOnJlbS1jYWxjKDMxMCk7XG4gICAgJGNhcmQtaDpyZW0tY2FsYygzNzApO1xuXG4gICAgLmd1aWRhbmNlLXNlY3Rpb24tc2lkZS1pbWFnZSB7XG4gICAgICAkaW1nLWgtc206cmVtLWNhbGMoNTMxKTtcbiAgICAgICRpbWctaC1tZWQ6cmVtLWNhbGMoNDYwKTtcbiAgICAgICRpbWctaC1scmc6cmVtLWNhbGMoNjAwKTtcblxuICAgICAgaGVpZ2h0OiAkaW1nLWgtc207XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIG9iamVjdC1maXQ6IGNvdmVyO1xuICAgICAgQGluY2x1ZGUgc2VjdGlvbi1zcGFjaW5nLW92ZXJyaWRlKGJvdHRvbSxtYXJnaW4sMC43NSk7XG4gICAgICBwb3NpdGlvbjpyZWxhdGl2ZTtcbiAgICAgIHotaW5kZXg6MDtcblxuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pe1xuICAgICAgICBib3JkZXItcmFkaXVzOiAkZ2xvYmFsLWJvcmRlci1yYWRpdXMtMjA7XG4gICAgICAgIHdpZHRoOjcwJTtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OmF1dG87XG4gICAgICAgIG1hcmdpbi1sZWZ0OjA7XG4gICAgICAgIGhlaWdodDogJGltZy1oLW1lZDtcbiAgICAgICAgQGluY2x1ZGUgc2VjdGlvbi1zcGFjaW5nLW92ZXJyaWRlKGJvdHRvbSxtYXJnaW4sMik7XG4gICAgICB9XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKXtcbiAgICAgICAgd2lkdGg6MTAwJTtcbiAgICAgICAgaGVpZ2h0OiAkaW1nLWgtbHJnO1xuICAgICAgfVxuICAgIH1cblxuICAgIC5jYXJkLWdyYXBoaWN7XG4gICAgICBoZWlnaHQ6YXV0bztcbiAgICAgIHBvc2l0aW9uOmFic29sdXRlO1xuICAgICAgZGlzcGxheTpibG9jaztcbiAgICAgIGxlZnQ6NTAlO1xuICAgICAgb2JqZWN0LWZpdDogY29udGFpbjtcbiAgICAgIGJvdHRvbTotJGNhcmQtc2hhZG93LXc7XG4gICAgICB3aWR0aDoxMDAlO1xuICAgICAgbWF4LXdpZHRoOnJlbS1jYWxjKDMyMCk7XG4gICAgICB6LWluZGV4OjE7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpe1xuICAgICAgICBtYXJnaW4tbGVmdDpjYWxjKCAoICggI3skY2FyZC1oLXNtfSAvIDIpICsgKCN7JGNhcmQtc2hhZG93LXd9IC8gNikgKSAqLTEgKTtcbiAgICAgIH1cblxuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pe1xuICAgICAgICBoZWlnaHQ6JGNhcmQtaDtcbiAgICAgICAgcmlnaHQ6LSRjYXJkLXNoYWRvdy13O1xuICAgICAgICB3aWR0aDphdXRvO1xuICAgICAgICBtYXgtd2lkdGg6bm9uZTtcbiAgICAgICAgbGVmdDphdXRvO1xuICAgICAgfVxuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSl7XG4gICAgICAgIHJpZ2h0Oi0zMCU7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLmNvbnRlbnQtY29sIHtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICBAaW5jbHVkZSBzZWN0aW9uLXNwYWNpbmctb3ZlcnJpZGUobGVmdCwgcGFkZGluZywgMik7XG4gICAgfVxuICB9XG4gIC5jb250ZW50LXdyYXBwZXIge1xuICAgIEBpbmNsdWRlIHNlY3Rpb24tc3BhY2luZy1vdmVycmlkZSh0b3AscGFkZGluZyk7XG4gICAgbWFyZ2luOiAwIGF1dG87XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIG1heC13aWR0aDogMjFyZW07XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pe1xuICAgICAgQGluY2x1ZGUgc2VjdGlvbi1zcGFjaW5nLW92ZXJyaWRlKHRvcCxwYWRkaW5nLDIpO1xuICAgIH1cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICBwYWRkaW5nOiAwO1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICB9XG5cbiAgICAuYnViYmxlLXBpbiB7XG4gICAgICBtYXJnaW46IDAgYXV0byAxLjVyZW07XG5cbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgbWFyZ2luOiAwIDAgMS41cmVtO1xuICAgICAgfVxuICAgIH1cblxuICAgIC5ndWlkYW5jZS1zZWN0aW9uLXRpdGxlIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDEuNXJlbTtcbiAgICB9XG5cbiAgICAuZ3VpZGFuY2Utc2VjdGlvbi1jb250ZW50IHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDEuNXJlbTtcbiAgICB9XG4gIH1cbn1cbiIsIi50cmFja2luZy1zZWN0aW9uIHtcblx0QGluY2x1ZGUgc2VjdGlvbi1wYWRkaW5nLXRvcGJvdHRvbSgpO1xuXG5cdC5jb250ZW50LWNvbCB7XG5cdFx0QGluY2x1ZGUgc2VjdGlvbi1zcGFjaW5nLW92ZXJyaWRlKGJvdHRvbSwgbWFyZ2luLCAyKTtcblx0XHQuY29udGVudC13cmFwcGVyIHtcblx0XHRcdG1hcmdpbjogMCAwIDAgYXV0bztcblx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIGRvd24pIHtcblx0XHRcdFx0bWFyZ2luOiAwIGF1dG87XG5cdFx0XHRcdHRleHQtYWxpZ246IGNlbnRlcjtcblx0XHRcdH1cbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2Upe1xuICAgICAgICB3aWR0aDo5NSU7XG4gICAgICAgIG1hcmdpbi1yaWdodDphdXRvO1xuICAgICAgfVxuXG5cdFx0XHQuYnViYmxlLXBpbiB7XG5cdFx0XHRcdG1hcmdpbjogMCBhdXRvIDEuNXJlbTtcblxuXHRcdFx0XHRAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG5cdFx0XHRcdFx0bWFyZ2luOiAwIDAgMS41cmVtO1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0XHQudHJhY2tpbmctc2VjdGlvbi10aXRsZSB7XG5cdFx0XHRcdEBpbmNsdWRlIHNlY3Rpb24tc3BhY2luZy1vdmVycmlkZShib3R0b20sbWFyZ2luLDIpO1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSl7XG4gICAgICAgICAgQGluY2x1ZGUgc2VjdGlvbi1zcGFjaW5nLW92ZXJyaWRlKGJvdHRvbSxtYXJnaW4sNCk7XG4gICAgICAgIH1cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSl7XG4gICAgICAgICAgQGluY2x1ZGUgc2VjdGlvbi1zcGFjaW5nLW92ZXJyaWRlKGJvdHRvbSxtYXJnaW4sNCk7XG4gICAgICAgIH1cblx0XHRcdH1cblx0XHR9XG5cdH1cblxuXHQuaW1hZ2UtY29udCB7XG5cdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRcdC5pbWFnZS1jZWxsIHtcblx0XHRcdGRpc3BsYXk6IGZsZXg7XG5cdFx0XHRhbGlnbi1pdGVtczogYmFzZWxpbmU7XG5cdFx0XHQmLS0xIHtcblx0XHRcdFx0anVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcblx0XHRcdH1cblxuXHRcdFx0Ji0tMiB7XG5cdFx0XHRcdGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcblx0XHRcdH1cblx0XHR9XG5cdFx0LnRyYWNraW5nLXNlY3Rpb24taW1hZ2Uge1xuXHRcdFx0aGVpZ2h0OiBhdXRvO1xuICAgICAgYm94LXNoYWRvdzogJHJrLWJveC1zaGFkb3c7XG4gICAgICBib3JkZXItcmFkaXVzOiAzMHB4O1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KXtcbiAgICAgICAgLy8gZG91YmxlIHdpZHRoIHRvIGFjY291bnQgZm9yIGV4dGVuc2lvblxuICAgICAgICB3aWR0aDpjYWxjKDEwMCUgKyAoI3ttYXAtZ2V0KCRzZWN0aW9uLXBhZGRpbmctbGVmdHJpZ2h0LCAnc21hbGwnKX0gKiAyKSk7XG4gICAgICAgIG1heC13aWR0aDpub25lO1xuICAgICAgfVxuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pe1xuICAgICAgICB3aWR0aDogOTclO1xuICAgICAgfVxuXHRcdFx0Ji0tMSB7XG4gICAgICAgIG1hcmdpbi1yaWdodDphdXRvO1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpe1xuICAgICAgICAgIG1hcmdpbi1sZWZ0OiBtYXAtZ2V0KCRzZWN0aW9uLXBhZGRpbmctbGVmdHJpZ2h0LCAnc21hbGwnKSAqIC0xO1xuICAgICAgICB9XG5cdFx0XHR9XG5cdFx0XHQmLS0yIHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6YXV0bztcbiAgICAgICAgQGluY2x1ZGUgc2VjdGlvbi1zcGFjaW5nLW92ZXJyaWRlKHRvcCxtYXJnaW4sMC43NSk7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSl7XG4gICAgICAgICAgbWFyZ2luLXJpZ2h0OiBtYXAtZ2V0KCRzZWN0aW9uLXBhZGRpbmctbGVmdHJpZ2h0LCAnc21hbGwnKSAqIC0xO1xuICAgICAgICB9XG5cdFx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgICAgQGluY2x1ZGUgc2VjdGlvbi1zcGFjaW5nLW92ZXJyaWRlKHRvcCxtYXJnaW4pO1xuXHRcdFx0XHR9XG5cblx0XHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICAgIHdpZHRoOjk1JTtcblx0XHRcdFx0XHRAaW5jbHVkZSBzZWN0aW9uLXNwYWNpbmctb3ZlcnJpZGUodG9wLG1hcmdpbiwtMSk7XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHR9XG5cdH1cbn1cbiIsIi5wcm9ncmVzcy1zZWN0aW9uIHtcblx0QGluY2x1ZGUgc2VjdGlvbi1wYWRkaW5nLXRvcGJvdHRvbSgpO1xuXHQuaW1hZ2UtY29sbGVjdGlvbi13cmFwcGVyIHtcblx0XHRkaXNwbGF5OiBmbGV4O1xuXHRcdGFsaWduLWl0ZW1zOiBiYXNlbGluZTtcblx0XHRqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xuXHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuXHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG5cdFx0XHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcblx0XHR9XG5cblx0XHRAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG5cdFx0XHRqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xuICAgICAgaGVpZ2h0OjEwMCU7XG5cdFx0fVxuXHR9XG4gICRtYWluLWltZy1oLXNtOnJlbS1jYWxjKDMxNCk7XG4gICRtYWluLWltZy1oLW1lZDpyZW0tY2FsYygzOTYpO1xuICAkbWFpbi1pbWctaDpyZW0tY2FsYyg1MDApO1xuICAucHJvZ3Jlc3Mtc2VjdGlvbi1zaWRlLWltYWdlIHtcbiAgICBib3JkZXItcmFkaXVzOiAkZ2xvYmFsLWJvcmRlci1yYWRpdXMtMjA7XG4gICAgd2lkdGg6MTAwJTtcbiAgICBoZWlnaHQ6JG1haW4taW1nLWgtc207XG4gICAgb2JqZWN0LWZpdDogY292ZXI7XG4gICAgQGluY2x1ZGUgc2VjdGlvbi1zcGFjaW5nLW92ZXJyaWRlKHRvcCxtYXJnaW4sMik7XG4gICAgcG9zaXRpb246cmVsYXRpdmU7XG4gICAgei1pbmRleDowO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSl7XG4gICAgICBtYXJnaW4tbGVmdDogbWFwLWdldCgkc2VjdGlvbi1wYWRkaW5nLWxlZnRyaWdodCwgJ3NtYWxsJykgKiAtMTtcbiAgICAgIG1hcmdpbi1yaWdodDogMTAlO1xuICAgICAgLy8gZG91YmxlIHdpZHRoIHRvIGFjY291bnQgZm9yIGV4dGVuc2lvblxuICAgICAgd2lkdGg6Y2FsYygxMDAlICsgKCN7bWFwLWdldCgkc2VjdGlvbi1wYWRkaW5nLWxlZnRyaWdodCwgJ3NtYWxsJyl9ICogMikpO1xuICAgICAgbWF4LXdpZHRoOm5vbmU7XG4gICAgfVxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKXtcbiAgICAgIEBpbmNsdWRlIHNlY3Rpb24tc3BhY2luZy1vdmVycmlkZSh0b3AsbWFyZ2luKTtcbiAgICAgIHdpZHRoOjcwJTtcbiAgICAgIG1pbi1oZWlnaHQ6MDtcbiAgICAgIGhlaWdodDokbWFpbi1pbWctaC1tZWQ7XG4gICAgICBtYXJnaW4tcmlnaHQ6YXV0bztcbiAgICB9XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSl7XG4gICAgICB3aWR0aDoxMDAlO1xuICAgICAgaGVpZ2h0OmNhbGMoMTAwJSAtICN7bWFwLWdldCgkc2VjdGlvbi1wYWRkaW5nLXRvcGJvdHRvbSwgJ2xhcmdlJyl9KTtcbiAgICAgIG1pbi1oZWlnaHQ6JG1haW4taW1nLWg7XG4gICAgICBtYXJnaW4tbGVmdDphdXRvO1xuICAgICAgbWFyZ2luLXJpZ2h0OjA7XG4gICAgfVxuICB9XG4gICRjYXJkLXNoYWRvdy13OjQ0cHg7XG4gICRjYXJkLWgtc206cmVtLWNhbGMoMjQxKTtcbiAgJGNhcmQtaC1tZWQ6cmVtLWNhbGMoMjcyKTtcbiAgLy8yNDIgKyA4MHB4ICgkY2FyZC1zaGFkb3cgKjIpXG4gICRjYXJkLWgtbGc6cmVtLWNhbGMoMzIyKTtcbiAgLmNhcmQtZ3JhcGhpYyB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHdpZHRoOiBhdXRvO1xuICAgIGhlaWdodDogJGNhcmQtaC1zbTtcbiAgICBtYXgtd2lkdGg6bm9uZTtcbiAgICBkaXNwbGF5OmZsZXg7XG4gICAgdG9wOi0kY2FyZC1zaGFkb3ctdztcbiAgICBsZWZ0OjIwJTtcbiAgICB6LWluZGV4OjE7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pe1xuICAgICAgaGVpZ2h0OiRjYXJkLWgtbWVkO1xuICAgICAgcmlnaHQ6JGNhcmQtc2hhZG93LXcgKi0yO1xuICAgICAgbGVmdDp1bnNldDtcbiAgICB9XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgcmlnaHQ6LTUwJTtcbiAgICAgIGhlaWdodDokY2FyZC1oLWxnO1xuICAgIH1cbiAgfVxuXG5cdC5jb250ZW50LWNvbCB7XG5cdFx0QGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuXHRcdFx0cGFkZGluZy10b3A6IDA7XG4gICAgICBAaW5jbHVkZSBzZWN0aW9uLXNwYWNpbmctb3ZlcnJpZGUoYm90dG9tLCBtYXJnaW4sIDIpO1xuXHRcdH1cblx0XHQuY29udGVudC13cmFwcGVyIHtcblx0XHRcdG1hcmdpbi1yaWdodDogYXV0bztcblx0XHRcdG1hcmdpbi1sZWZ0OiBhdXRvO1xuXHRcdFx0QGluY2x1ZGUgc2VjdGlvbi1zcGFjaW5nLW92ZXJyaWRlKHRvcCwgcGFkZGluZyk7XG5cdFx0XHR0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKXtcbiAgICAgICAgQGluY2x1ZGUgc2VjdGlvbi1zcGFjaW5nLW92ZXJyaWRlKHRvcCwgcGFkZGluZywyKTtcbiAgICAgIH1cblx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcblx0XHRcdFx0dGV4dC1hbGlnbjogbGVmdDtcbiAgICAgICAgbWFyZ2luLXRvcDpjYWxjKCN7JGNhcmQtaC1sZ30gLSAjeyRjYXJkLXNoYWRvdy13fSk7XG4gICAgICAgIHBhZGRpbmctdG9wOjA7XG5cdFx0XHR9XG5cblx0XHRcdC5idWJibGUtcGluIHtcblx0XHRcdFx0bWFyZ2luOiAwIGF1dG8gMS41cmVtO1xuXG5cdFx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcblx0XHRcdFx0XHRtYXJnaW46IDAgMCAxLjVyZW07XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHRcdC5wcm9ncmVzcy1zZWN0aW9uLXRpdGxlIHtcblx0XHRcdFx0bWFyZ2luLWJvdHRvbTogMS41cmVtO1xuXHRcdFx0fVxuXHRcdH1cblx0fVxufVxuIiwiLmNvbW11bml0eS1zZWN0aW9uIHtcblx0QGluY2x1ZGUgc2VjdGlvbi1zcGFjaW5nLW92ZXJyaWRlKGJvdHRvbSwgbWFyZ2luKTtcblxuXHQuYmFubmVyLWltYWdlIHtcbiAgICBoZWlnaHQ6IHJlbS1jYWxjKDgwMCk7XG4gICAgei1pbmRleDoxO1xuICAgIHdpZHRoOjEwMCU7XG4gICAgb3ZlcmZsb3c6aGlkZGVuO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAmOjphZnRlciB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBjb250ZW50OiAnJztcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoJHR1cnRsZS1ncmVlbiwgMC4yKTtcbiAgICAgIHRvcDogMDtcbiAgICAgIGJvdHRvbTogMDtcbiAgICAgIHJpZ2h0OiAwO1xuICAgICAgbGVmdDogMDtcbiAgICAgIHotaW5kZXg6MDtcbiAgICB9XG5cbiAgICA+aW1ne1xuICAgICAgb2JqZWN0LWZpdDogY292ZXI7XG4gICAgICB3aWR0aDoxMDAlO1xuICAgICAgaGVpZ2h0OjEwMCU7XG4gICAgICBkaXNwbGF5OmJsb2NrO1xuICAgIH1cblx0fVxuXG4gICRjb21tLWNhcmQtaDooXG4gICAgc21hbGw6MzYwLFxuICAgIG1lZGl1bTo1MzAsXG4gICk7XG4gID4uZ3JpZC1jb250YWluZXJ7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHotaW5kZXg6MjtcblxuICAgICRvZmZzZXQtdi1zbTpyZW0tY2FsYyggbWFwLWdldCgkY29tbS1jYXJkLWgsc21hbGwpICkgLyAyO1xuICAgICRvZmZzZXQtdi1tZWQ6cmVtLWNhbGMoIG1hcC1nZXQoJGNvbW0tY2FyZC1oLG1lZGl1bSkgKSAvIDI7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKCRvZmZzZXQtdi1zbSAqIC0xKTtcbiAgICBtYXJnaW4tYm90dG9tOiRvZmZzZXQtdi1zbSAqLTE7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pe1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKCRvZmZzZXQtdi1tZWQgKiAtMSk7XG4gICAgICBtYXJnaW4tYm90dG9tOiRvZmZzZXQtdi1tZWQgKi0xO1xuICAgIH1cbiAgfVxuICAuY2FyZC1jb250YWluZXIge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB6LWluZGV4OiAyO1xuICAgIHdpZHRoOjEwMCU7XG4gICAgPmltZ3tcbiAgICAgIHdpZHRoOmF1dG87XG4gICAgICBib3gtc2hhZG93OiAkcmstYm94LXNoYWRvdztcbiAgICAgIGJvcmRlci1yYWRpdXM6ICRnbG9iYWwtYm9yZGVyLXJhZGl1cy0yMDtcbiAgICAgIG9iamVjdC1maXQ6IGNvbnRhaW47XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiR3aGl0ZTtcbiAgICAgIEBpbmNsdWRlIG1hcmdpbi1jZW50ZXIoKTtcbiAgICAgIGhlaWdodDpyZW0tY2FsYyhtYXAtZ2V0KCRjb21tLWNhcmQtaCxzbWFsbCkpO1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pe1xuICAgICAgICBoZWlnaHQ6cmVtLWNhbGMobWFwLWdldCgkY29tbS1jYXJkLWgsbWVkaXVtKSk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLmNvbnRlbnQtcm93e1xuICAgIEBpbmNsdWRlIHNlY3Rpb24tc3BhY2luZy1vdmVycmlkZSh0b3AsbWFyZ2luLDIpO1xuICB9XG4gIC5jb250ZW50LXdyYXBwZXIge1xuICAgIG1hcmdpbjogMCBhdXRvO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICAgIC5idWJibGUtcGluIHtcbiAgICAgIG1hcmdpbjogMCBhdXRvIDEuNXJlbTtcbiAgICB9XG4gICAgLnRyYWNraW5nLXNlY3Rpb24tdGl0bGUge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMi4yNXJlbTtcbiAgICB9XG4gIH1cblxuICAmLmFkanVzdGVkLW1vYmlsZS1pbWFnZS1lbiB7XG5cdCAgLmJhbm5lci1pbWFnZSBpbWcge1xuXHRcdCAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XG5cdFx0XHQgIG9iamVjdC1wb3NpdGlvbjogLTEwMHB4O1xuXHRcdCAgfVxuXHQgIH1cbiAgfVxuXG4gICYuYWRqdXN0ZWQtbW9iaWxlLWltYWdlLWphIHtcblx0ICAuYmFubmVyLWltYWdlIHtcblx0XHQgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuXHRcdFx0ICB3aWR0aDogMjUwJTtcblx0XHQgIH1cblx0ICB9XG4gIH1cbn1cbiIsIiR2cmFjZS1pbWctaDogKFxuICAxOihcbiAgICBzbWFsbDozMTAsXG4gICAgbWVkaXVtOjMxMCxcbiAgICBsYXJnZTo1MDBcbiAgKSxcblxuICAyOihcbiAgICBzbWFsbDozMTAsXG4gICAgbWVkaXVtOjIwMixcbiAgICBsYXJnZTozMzJcbiAgKSxcblxuICAzOihcbiAgICBzbWFsbDozMTAsXG4gICAgbWVkaXVtOjI1MixcbiAgICBsYXJnZTo0MTJcbiAgKSxcbik7XG5AZnVuY3Rpb24gZ2V0LXZpbWctaCgkbnVtLCAka2V5KXtcbiAgJG1hcDE6bWFwLWdldCgkdnJhY2UtaW1nLWgsJG51bSk7XG4gICR2YWwgOiBtYXAtZ2V0KCAkbWFwMSAsJGtleSk7XG4gIEByZXR1cm4gJHZhbDtcbn1cblxuQG1peGluIHNldC12aW1nLWhlaWdodCgkaW1nLW51bSl7XG4gICAgaGVpZ2h0OnJlbS1jYWxjKCBnZXQtdmltZy1oKCRpbWctbnVtLHNtYWxsKSApO1xuICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSl7XG4gICAgaGVpZ2h0OnJlbS1jYWxjKCBnZXQtdmltZy1oKCRpbWctbnVtLG1lZGl1bSkgKTtcbiAgfVxuICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKXtcbiAgICBoZWlnaHQ6cmVtLWNhbGMoIGdldC12aW1nLWgoJGltZy1udW0sbGFyZ2UpICk7XG4gIH1cbn1cblxuLnZpcnR1YWwtcmFjZXMtc2VjdGlvbiB7XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIGRvd24pIHtcbiAgICBAaW5jbHVkZSBzZWN0aW9uLXBhZGRpbmctdG9wYm90dG9tKCk7XG4gIH1cbiAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgIEBpbmNsdWRlIHNlY3Rpb24tc3BhY2luZy1vdmVycmlkZSh0b3AsIHBhZGRpbmcsIDIpO1xuICAgIEBpbmNsdWRlIHNlY3Rpb24tc3BhY2luZy1vdmVycmlkZShib3R0b20sIHBhZGRpbmcpO1xuICB9XG4gIC5pbWFnZS1ncmlkIHtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICB9XG4gIC5pbWFnZS1zdWItY29sIHtcblxuICB9XG4gIC5pbWFnZS1jb2wtcmlnaHR7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KXtcbiAgICAgIHBhZGRpbmctbGVmdDowO1xuICAgIH1cbiAgICBAaW5jbHVkZSAtemYtYnJlYWtwb2ludC12YWx1ZShhdXRvLCAkZ3JpZC1tYXJnaW4tZ3V0dGVycykge1xuICAgICAgcGFkZGluZy1sZWZ0OiAkLXpmLWJwLXZhbHVlO1xuICAgIH1cbiAgfVxuXG4gIC5pbWFnZS1jb2wtbGVmdCB7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KXtcbiAgICAgIHBhZGRpbmctcmlnaHQ6MDtcbiAgICB9XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBmbGV4LWZsb3c6IGNvbHVtbjtcbiAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LWVuZDtcbiAgICB9XG4gICAgQGluY2x1ZGUgLXpmLWJyZWFrcG9pbnQtdmFsdWUoYXV0bywgJGdyaWQtbWFyZ2luLWd1dHRlcnMpIHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6ICQtemYtYnAtdmFsdWU7XG4gICAgfVxuICAgIC5pbWFnZS13cmFwcGVye1xuICAgICAgJjpudGgtb2YtdHlwZSgyKXtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pe1xuICAgICAgICAgIC52aXJ0dWFsLXJhY2Utc2VjdGlvbi1pbWFnZXtcbiAgICAgICAgICAgIHdpZHRoOjgwJTtcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OmF1dG87XG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6MDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgICY6bm90KDpsYXN0LWNoaWxkKXtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KXtcbiAgICAgICAgICBAaW5jbHVkZSBzZWN0aW9uLXNwYWNpbmctb3ZlcnJpZGUoYm90dG9tLCBtYXJnaW4sIDEsJHNlY3Rpb24tcGFkZGluZy1sZWZ0cmlnaHQpO1xuICAgICAgICB9XG4gICAgICAgIEBpbmNsdWRlIC16Zi1icmVha3BvaW50LXZhbHVlKGF1dG8sICRncmlkLW1hcmdpbi1ndXR0ZXJzKSB7XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogJC16Zi1icC12YWx1ZSAqIDI7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgLmltYWdlLXdyYXBwZXIge1xuICAgIHdpZHRoOjEwMCU7XG4gIH1cbiAgLnZpcnR1YWwtcmFjZS1zZWN0aW9uLWltYWdle1xuICAgIGJvcmRlci1yYWRpdXM6JGdsb2JhbC1ib3JkZXItcmFkaXVzLTIwO1xuICAgIG9iamVjdC1maXQ6IGNvdmVyO1xuICAgIGJveC1zaGFkb3c6ICRyay1ib3gtc2hhZG93O1xuICAgIGRpc3BsYXk6YmxvY2s7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgICYtLTF7XG4gICAgICBAaW5jbHVkZSBzZXQtdmltZy1oZWlnaHQoMSk7XG4gICAgfVxuICAgICYtLTJ7XG4gICAgICBAaW5jbHVkZSBzZXQtdmltZy1oZWlnaHQoMik7XG4gICAgfVxuICAgICYtLTN7XG4gICAgICBAaW5jbHVkZSBzZXQtdmltZy1oZWlnaHQoMyk7XG5cbiAgICB9XG4gIH1cblxuXHQuY29udGVudC1jb2wge1xuXHRcdEBpbmNsdWRlIHNlY3Rpb24tc3BhY2luZy1vdmVycmlkZSh0b3AsIHBhZGRpbmcsMik7XG5cdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgQGluY2x1ZGUgLXpmLWJyZWFrcG9pbnQtdmFsdWUoYXV0bywgJGdyaWQtbWFyZ2luLWd1dHRlcnMpIHtcbiAgICAgIHBhZGRpbmctbGVmdDogJC16Zi1icC12YWx1ZTtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpe1xuICAgICAgcGFkZGluZy1sZWZ0OjA7XG4gICAgfVxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKXtcbiAgICAgIEBpbmNsdWRlIHNlY3Rpb24tc3BhY2luZy1vdmVycmlkZSh0b3AsIHBhZGRpbmcsNCk7XG4gICAgfVxuXHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgIHBhZGRpbmctdG9wOjA7XG4gICAgICAvL21vdmUgaXQgdXAgaGFsZiB0aGUgaGVpZ2h0IG9mIEltYWdlICMyXG4gICAgICAkb2Zmc2V0LXY6IHJlbS1jYWxjKCBnZXQtdmltZy1oKDIsbGFyZ2UpICogMC41KTtcblxuXHRcdFx0dHJhbnNmb3JtOnRyYW5zbGF0ZVkoJG9mZnNldC12ICogLTEpO1xuICAgICAgLy9yZXRyYWN0IHRoZSBib3R0b20gc3BhY2UgYmVsb3cgdG8gYWNjb3VudCBmb3IgdG9wIG5lZ2F0aXZlIG9mZnNldFxuICAgICAgbWFyZ2luLWJvdHRvbTokb2Zmc2V0LXYgKiAtMTtcblx0XHR9XG5cdFx0LmNvbnRlbnQtd3JhcHBlciB7XG5cdFx0XHRAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBkb3duKSB7XG5cdFx0XHRcdG1hcmdpbjogMCBhdXRvO1xuXHRcdFx0XHR0ZXh0LWFsaWduOiBjZW50ZXI7XG5cdFx0XHR9XG5cblx0XHRcdC5idWJibGUtcGluIHtcblx0XHRcdFx0bWFyZ2luOiAwIGF1dG8gMS41cmVtO1xuXHRcdFx0XHRAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG5cdFx0XHRcdFx0bWFyZ2luOiAwIDAgMS41cmVtO1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0XHQudmlydHVhbC1yYWNlLXNlY3Rpb24tdGl0bGUge1xuXHRcdFx0XHRtYXJnaW4tYm90dG9tOiAyLjI1cmVtO1xuXHRcdFx0fVxuXHRcdH1cblx0fVxufVxuIiwiLnNpZ24tdXAtc2VjdGlvbiB7XG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgQGluY2x1ZGUgc2VjdGlvbi1zcGFjaW5nLW92ZXJyaWRlKHRvcCxwYWRkaW5nLDIpO1xuXHRAaW5jbHVkZSBzZWN0aW9uLXNwYWNpbmctb3ZlcnJpZGUoYm90dG9tLHBhZGRpbmcsLjI1KTtcbiAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pe1xuICAgIEBpbmNsdWRlIHNlY3Rpb24tc3BhY2luZy1vdmVycmlkZShib3R0b20scGFkZGluZywuNSk7XG4gIH1cblx0Jjo6YWZ0ZXIge1xuXHRcdGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudChcblx0XHRcdDBkZWcsIHJnYmEoJHdoaXRlLCAwKSAwJSwgJHdoaXRlIDc5LjE5JSk7XG5cdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdGNvbnRlbnQ6ICcnO1xuXHRcdHRvcDogMDtcblx0XHRib3R0b206IDA7XG5cdFx0cmlnaHQ6IDA7XG5cdFx0bGVmdDogMDtcblx0fVxuXG4gICYgPiAqIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgei1pbmRleDogMjtcbiAgfVxufVxuIiwiLnVwLXNlbGwtc2VjdGlvbiB7XG4gIEBpbmNsdWRlIHNlY3Rpb24tc3BhY2luZy1vdmVycmlkZSh0b3AscGFkZGluZyk7XG5cdC51cC1zZWxsLXNlY3Rpb24tZ3JpZCB7XG5cdFx0YWxpZ24taXRlbXM6IGNlbnRlcjtcblx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdFx0QGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XG5cdFx0XHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcblx0XHR9XG5cdH1cblxuXHQuY29udGVudC1jb2wge1xuICAgIEBpbmNsdWRlIHNlY3Rpb24tc3BhY2luZy1vdmVycmlkZSh0b3AscGFkZGluZywyKTtcblx0XHRAaW5jbHVkZSBzZWN0aW9uLXNwYWNpbmctb3ZlcnJpZGUoYm90dG9tLHBhZGRpbmcpO1xuXHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuXHRcdFx0dGV4dC1hbGlnbjogY2VudGVyO1xuXHRcdH1cblx0XHQucnVua2VlcGVyLWxvZ28ge1xuXHRcdFx0bWFyZ2luLWJvdHRvbTogMS41cmVtO1xuXHRcdH1cblxuXHRcdC51cC1zZWxsLXNlY3Rpb24tdGl0bGUge1xuXHRcdFx0bWFyZ2luLWJvdHRvbTogMS43NXJlbTtcblx0XHR9XG5cblx0XHQudXAtc2VsbC1zZWN0aW9uLWNvbnRlbnQge1xuXHRcdFx0bWFyZ2luLWJvdHRvbTogMS41cmVtO1xuXHRcdH1cblx0fVxuXG5cdC5pbWFnZS1jb2wge1xuXHRcdHBvc2l0aW9uOnJlbGF0aXZlO1xuXHRcdC5pbWFnZS13cmFwcGVye1xuICAgICAgaGVpZ2h0OjEwMCU7XG4gICAgICB3aWR0aDoxMDAlO1xuICAgICAgcG9zaXRpb246cmVsYXRpdmU7XG4gICAgfVxuXHR9XG4gIC5hcHAtaW1hZ2V7XG4gICAgZGlzcGxheTpibG9jaztcbiAgICB3aWR0aDphdXRvO1xuICAgIGJvcmRlci1yYWRpdXM6IDQwcHggNDBweCAwIDA7XG4gICAgJi0tMXtcbiAgICAgIC8vYmFjayBsYXllclxuICAgICAgYm94LXNoYWRvdzogJHJrLWJveC1zaGFkb3c7XG4gICAgICBoZWlnaHQ6cmVtLWNhbGMoNTAwKTtcbiAgICAgIHBvc2l0aW9uOnJlbGF0aXZlO1xuICAgICAgei1pbmRleDoxO1xuICAgIH1cbiAgICAmLS0ye1xuICAgICAgLy9zbWFsbGVyLWluIGZyb250XG4gICAgICBoZWlnaHQ6cmVtLWNhbGMoNjAwKTtcbiAgICAgIHBvc2l0aW9uOmFic29sdXRlO1xuICAgICAgcmlnaHQ6MDtcbiAgICAgIHRvcDpyZW0tY2FsYygwKTtcbiAgICAgIHotaW5kZXg6MjtcbiAgICB9XG4gIH1cbn1cbiIsIi5mZWF0dXJlZC1hdXRob3Ige1xuXHRAaW5jbHVkZSBzZWN0aW9uLXBhZGRpbmctdG9wYm90dG9tKDIpO1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiAkYXNpY3MtYmx1ZTtcblx0LmdyaWQteCB7XG5cdFx0LmltYWdlLWNlbGwge1xuXHRcdFx0aW1nIHtcblx0XHRcdFx0Ym9yZGVyLXJhZGl1czogNTAlO1xuXHRcdFx0XHR3aWR0aDogMjc1cHg7XG5cdFx0XHRcdGhlaWdodDogMjc1cHg7XG5cdFx0XHRcdG9iamVjdC1maXQ6IGNvdmVyO1xuXHRcdFx0fVxuXHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSBkb3duKSB7XG5cdFx0XHRcdEBpbmNsdWRlIHNlY3Rpb24tc3BhY2luZy1vdmVycmlkZShib3R0b20sIG1hcmdpbiwgMyk7XG5cdFx0XHRcdGRpc3BsYXk6IGZsZXg7XG5cdFx0XHRcdGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cdFx0XHRcdGp1c3RpZnktY29udGVudDogY2VudGVyO1xuXHRcdFx0fVxuXHRcdH1cblx0XHQuY29udGVudC1jZWxsIHtcblx0XHRcdGRpc3BsYXk6IGZsZXg7XG5cdFx0XHRmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuXHRcdFx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG5cdFx0XHR0ZXh0LWFsaWduOiBjZW50ZXI7XG5cdFx0XHRAaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSkge1xuXHRcdFx0XHR0ZXh0LWFsaWduOiBsZWZ0O1xuXHRcdFx0fVxuXHRcdFx0LmF1dGhvci1uYW1lIHtcblx0XHRcdFx0Y29sb3I6ICR0dXJxdW9pc2U7XG5cdFx0XHR9XG5cdFx0XHQuYXV0aG9yLWRlc2NyaXB0aW9uIHtcblx0XHRcdFx0Y29sb3I6ICR3aGl0ZTtcblx0XHRcdFx0bWFyZ2luLWJvdHRvbTogMDtcblx0XHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuXHRcdFx0XHRcdGZvbnQtc2l6ZTogcmVtLWNhbGMoMTgpO1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0XHQuaW5zdGFncmFtLWxpbmstd3JhcCB7XG5cdFx0XHRcdG1hcmdpbi10b3A6IDJyZW07XG5cdFx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcblx0XHRcdFx0XHRtYXJnaW4tdG9wOiAxcmVtO1xuXHRcdFx0XHR9XG5cdFx0XHRcdC5pZy1saW5rIHtcblx0XHRcdFx0XHRkaXNwbGF5OiBpbmxpbmUtZmxleDtcblx0XHRcdFx0XHRhbGlnbi1pdGVtczogY2VudGVyO1xuXHRcdFx0XHRcdCY6aG92ZXIge1xuXHRcdFx0XHRcdFx0c3BhbiB7XG5cdFx0XHRcdFx0XHRcdHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuXHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdH1cblx0XHRcdFx0fVxuXHRcdFx0XHRpIHtcblx0XHRcdFx0XHRtYXJnaW4tcmlnaHQ6IC41cmVtO1xuXHRcdFx0XHRcdGZvbnQtc2l6ZTogcmVtLWNhbGMoMjQpO1xuXHRcdFx0XHR9XG5cdFx0XHRcdHNwYW4ge1xuXHRcdFx0XHRcdGZvbnQtc2l6ZTogMXJlbTtcblx0XHRcdFx0fVxuXHRcdFx0XHRAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG5cdFx0XHRcdFx0bWFyZ2luLXRvcDogcmVtLWNhbGMoNDApO1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG59IiwiLmJsb2ctbmF2aWdhdGlvbiB7XG5cdCYuaGVpZ2h0IHtcblx0XHRoZWlnaHQ6IDc5cHggIWltcG9ydGFudDtcblx0fVxuXHQmLnNjcm9sbGVkIHtcblx0XHRoZWlnaHQ6IDA7XG5cdFx0b3ZlcmZsb3c6IGhpZGRlbjtcblx0XHRwb3NpdGlvbjogZml4ZWQ7XG5cdFx0dG9wOiA2NXB4O1xuXHRcdHdpZHRoOiAxMDAlO1xuXHRcdGJhY2tncm91bmQtY29sb3I6ICNFNUY5RkE7XG5cdFx0ei1pbmRleDogMTAxO1xuXHRcdHRyYW5zaXRpb246IGhlaWdodCAuM3MgZWFzZSAhaW1wb3J0YW50O1xuXHR9XG5cblx0XG5cblx0YmFja2dyb3VuZC1jb2xvcjogcmdiYSgkcHJpbWFyeS1jb2xvciwgMC4xKTtcblxuXHQuYmxvZy1uYXYtZ3JpZCB7XG5cdFx0Ly8gYWxpZ24taXRlbXM6IGNlbnRlcjtcblx0XHQuYmxvZy1uYXYtY29udHJvbGxlciB7XG5cdFx0XHQmLmhpZGRlbi13aGlsZS1zZWFyY2gtb3BlbiB7XG5cdFx0XHRcdG9wYWNpdHk6IDA7XG5cdFx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQoeHhsYXJnZSkge1xuXHRcdFx0XHRcdG9wYWNpdHk6IDE7XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHR9XG5cdFx0Lm5hdi1jb2wge1xuXHRcdFx0cGFkZGluZy10b3A6IDFyZW07XG5cdFx0XHRwYWRkaW5nLWJvdHRvbTogMXJlbTtcblx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcblx0XHRcdFx0cGFkZGluZy10b3A6IDA7XG5cdFx0XHRcdHBhZGRpbmctYm90dG9tOiAwO1xuXHRcdFx0fVxuXG5cdFx0XHQuYmxvZy1uYXYtbW9iaWxlIHtcblx0XHRcdFx0bWFyZ2luOiAwO1xuXHRcdFx0fVxuXG5cdFx0XHQuYmxvZy1uYXYtZGVza3RvcCB7XG5cdFx0XHRcdG1hcmdpbjogMDtcblx0XHRcdFx0ZGlzcGxheTogZmxleDtcblx0XHRcdFx0ZmxleC1mbG93OiByb3cgbm93cmFwO1xuXHRcdFx0XHQuYmxvZy1uYXYtaXRlbSB7XG5cdFx0XHRcdFx0bGlzdC1zdHlsZTogbm9uZTtcblx0XHRcdFx0XHRkaXNwbGF5OiBibG9jaztcblxuXHRcdFx0XHRcdGEge1xuXHRcdFx0XHRcdFx0Zm9udC1zaXplOiAwLjg3NXJlbTtcblx0XHRcdFx0XHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdFx0XHRcdFx0cGFkZGluZzogMnJlbSAxLjVyZW07XG5cdFx0XHRcdFx0XHRjb2xvcjogJGJsYWNrO1xuICAgICAgICAgICAgZm9udC1mYW1pbHk6ICRmb250LW1lZGl1bTtcblxuXHRcdFx0XHRcdFx0Ji5pcy1hY3RpdmUge1xuXHRcdFx0XHRcdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG5cdFx0XHRcdFx0XHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0XHRcdFx0XHRcdFx0Jjo6YWZ0ZXIge1xuXHRcdFx0XHRcdFx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRcdFx0XHRcdFx0XHRjb250ZW50OiAnJztcblx0XHRcdFx0XHRcdFx0XHRoZWlnaHQ6IDRweDtcblx0XHRcdFx0XHRcdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcblx0XHRcdFx0XHRcdFx0XHQvLyB0b3A6IDA7XG5cdFx0XHRcdFx0XHRcdFx0Ym90dG9tOiAwO1xuXHRcdFx0XHRcdFx0XHRcdHJpZ2h0OiAwO1xuXHRcdFx0XHRcdFx0XHRcdGxlZnQ6IDA7XG5cdFx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHRcdH1cblxuXHRcdFx0XHRcdFx0Jjpob3ZlciwgJjphY3RpdmUsICY6Zm9jdXMge1xuXHRcdFx0XHRcdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG5cdFx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0fVxuXG5cdFx0LnNlYXJjaC1jb2wge1xuXHRcdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgJHNlYXJjaC1oOnJlbS1jYWxjKDUwKTtcblx0XHRcdC5ibG9nLW5hdi1zZWFyY2hmb3JtLWNvbnQge1xuXHRcdFx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0XHRcdHRvcDogMDtcblx0XHRcdFx0Ym90dG9tOiAwO1xuXHRcdFx0XHRyaWdodDogMDtcblx0XHRcdFx0ZGlzcGxheTogZmxleDtcblx0XHRcdFx0YWxpZ24taXRlbXM6IGNlbnRlcjtcblx0XHRcdFx0Zm9ybSB7XG5cdFx0XHRcdFx0LmlucHV0LWdyb3VwIHtcblx0XHRcdFx0XHRcdG1hcmdpbjogMDtcblx0XHRcdFx0XHRcdC5pbnB1dC1ncm91cC1idXR0b24ge1xuXHRcdFx0XHRcdFx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdFx0XHRcdFx0XHRcdGRpc3BsYXk6IGZsZXg7XG5cdFx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0fVxuXG5cdFx0XHRcdFx0LmlucHV0LWdyb3VwLWZpZWxkIHtcblx0XHRcdFx0XHRcdGRpc3BsYXk6IG5vbmU7XG5cdFx0XHRcdFx0XHRib3JkZXItcmFkaXVzOiAkc2VhcmNoLWgvMjtcblx0XHRcdFx0XHRcdGJvcmRlcjogMXB4IHNvbGlkIHJnYmEoJHByaW1hcnktY29sb3IsIDAuNSk7XG5cdFx0XHRcdFx0XHRtaW4td2lkdGg6IDI3MnB4O1xuXHRcdFx0XHRcdFx0d2lkdGg6IDEwMCU7XG5cdFx0XHRcdFx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdFx0XHRcdFx0XHRyaWdodDogLTM2cHg7XG5cblx0XHRcdFx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQoeHhsYXJnZSkge1xuXHRcdFx0XHRcdFx0XHRkaXNwbGF5OiBibG9jaztcblx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHR9XG5cblx0XHRcdFx0XHQmLmZvcm0tYWN0aXZlIHtcblx0XHRcdFx0XHRcdC5pbnB1dC1ncm91cC1maWVsZCB7XG5cdFx0XHRcdFx0XHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdH1cblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdH1cblx0fVxufVxuXG4uYWRtaW4tYmFyIHtcblx0LmJsb2ctbmF2aWdhdGlvbiB7XG5cdFx0Ji5zY3JvbGxlZCB7XG5cdFx0XHR0b3A6IGNhbGMoNDZweCArIDY1cHgpICFpbXBvcnRhbnQ7XG5cdFx0XHRAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuXHRcdFx0XHR0b3A6IGNhbGMoNjVweCArIDMycHgpICFpbXBvcnRhbnQ7XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG59IiwiLnBvc3QtY2FyZC1yb3ctaW1hZ2Uge1xuXHRkaXNwbGF5OiBibG9jaztcblx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRib3JkZXItcmFkaXVzOiAkZ2xvYmFsLWJvcmRlci1yYWRpdXMtMjA7XG5cdG92ZXJmbG93OiBoaWRkZW47XG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0bWFyZ2luLWJvdHRvbTogMS41cmVtO1xuXHRoZWlnaHQ6IHJlbS1jYWxjKDMzOCk7XG5cblx0Jjpob3ZlciwgJjphY3RpdmUsICY6Zm9jdXMge1xuXHRcdC5jYXJkLXBsYXktYnV0dG9uIHtcblx0XHRcdHN2ZyB7XG5cdFx0XHRcdHBhdGgge1xuXHRcdFx0XHRcdGZpbGw6ICRzdXBlcm5vdmE7XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHR9XG5cdH1cblxuXHRAaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSkge1xuXHRcdG1hcmdpbi1ib3R0b206IDA7XG5cdH1cblxuXHQuZmVhdHVyZWQtaW1hZ2Uge1xuXHRcdGhlaWdodDogMTAwJTtcblx0XHRtaW4td2lkdGg6IDEwMCU7XG5cdFx0b2JqZWN0LWZpdDogY292ZXI7XG5cdH1cblxuXHQuZW1iZWQtY29udGFpbmVyIHtcblx0XHRoZWlnaHQ6IDEwMCU7XG5cdH1cblxuXHQuY2FyZC1wbGF5LWJ1dHRvbiB7XG5cdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdGJvdHRvbTogMS41cmVtO1xuXHRcdHJpZ2h0OiAxLjVyZW07XG5cdFx0c3ZnIHtcblx0XHRcdHBhdGgge1xuXHRcdFx0XHR0cmFuc2l0aW9uOiBmaWxsIC4yNXMgZWFzZTtcblx0XHRcdH1cblx0XHR9XG5cdH1cbn1cblxuLnBvc3QtY2FyZC1yb3ctY29udGVudCB7XG5cdGRpc3BsYXk6IGZsZXg7XG5cdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG5cdGp1c3RpZnktY29udGVudDogY2VudGVyO1xuXHRAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG5cdFx0QGluY2x1ZGUgc2VjdGlvbi1zcGFjaW5nLW92ZXJyaWRlKGxlZnQsIHBhZGRpbmcsIDMpO1xuXHR9XG5cdC5jYXQtbmFtZSB7XG5cdFx0Y29sb3I6ICRhc2ljcy1ibHVlO1xuXHRcdHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG5cdFx0bWFyZ2luLWJvdHRvbTogMXJlbTtcblx0XHQmOmhvdmVyLCAmOmFjdGl2ZSwgJjpmb2N1cyB7XG5cdFx0XHR0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcblx0XHR9XG5cdH1cblx0LnBvc3QtdGl0bGUge1xuXHRcdEBleHRlbmQgLnNob3ctYXMtaDM7XG5cdFx0bWFyZ2luLWJvdHRvbTogMDtcblx0XHRjb2xvcjogJHJ1bmtlZXBlci1ibGFjaztcblx0XHQmOmhvdmVyLCAmOmFjdGl2ZSwgJjpmb2N1cyB7XG5cdFx0XHR0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcblx0XHRcdGNvbG9yOiAkYmxhY2s7XG5cdFx0fVxuXHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcblx0XHRcdG1heC13aWR0aDogNjYuNjY3JTtcblx0XHR9XG5cdH1cblx0LnBvc3QtZXhjZXJwdCB7XG5cdFx0bWFyZ2luLXRvcDogMS41cmVtO1xuXHRcdCYgPiAqIHtcblx0XHRcdGNvbG9yOiByZ2JhKCRuaWdodC1yaWRlciwgLjUpO1xuXHRcdH1cblx0XHQmID4gcCB7XG5cdFx0XHQmOmxhc3QtY2hpbGQge1xuXHRcdFx0XHRtYXJnaW4tYm90dG9tOiAwO1xuXHRcdFx0fVxuXHRcdH1cblx0fVxufVxuXG5Aa2V5ZnJhbWVzIGxvYWRTaGltbWVyIHtcblx0MCUge1xuXHQgIGJhY2tncm91bmQtcG9zaXRpb246IDBweCAwO1xuXHR9XG5cdDEwMCUge1xuXHQgIGJhY2tncm91bmQtcG9zaXRpb246IDEwMGVtIDA7XG5cdH1cbn1cblxuLmMtYW5pbWF0ZWQtYmFja2dyb3VuZCB7XG5cdGFuaW1hdGlvbi1kdXJhdGlvbjogOHM7XG5cdGFuaW1hdGlvbi1maWxsLW1vZGU6IGZvcndhcmRzO1xuXHRhbmltYXRpb24taXRlcmF0aW9uLWNvdW50OiBpbmZpbml0ZTtcblx0YW5pbWF0aW9uLW5hbWU6IGxvYWRTaGltbWVyO1xuXHRhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7XG5cdGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCh0byByaWdodCwgI2VlZWVlZSA4JSwgI2RkZGRkZCAxOCUsICNlZWVlZWUgMzMlKTtcbn1cblxuLnBvc3QtY2FyZC1yb3ctZ3JpZCB7XG5cdEBpbmNsdWRlIHNlY3Rpb24tc3BhY2luZy1vdmVycmlkZShib3R0b20sIG1hcmdpbiwgMik7XG5cdC5sb2FkLW1vcmUtY2VsbCB7XG5cdFx0ZGlzcGxheTogZmxleDtcblx0XHRhbGlnbi1pdGVtczogY2VudGVyO1xuXHRcdGp1c3RpZnktY29udGVudDogY2VudGVyO1xuXHRcdC5idXR0b24ge1xuXHRcdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRcdFx0QGluY2x1ZGUgc2VjdGlvbi1zcGFjaW5nLW92ZXJyaWRlKHRvcCwgbWFyZ2luLCAzKTtcblx0XHR9XG5cdH1cblx0LnBvc3QtY2FyZC1pdGVtIHtcblx0XHQmOm5vdCguaXRlbS0xKSB7XG5cdFx0XHRtYXJnaW4tdG9wOiAzcmVtO1xuXHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuXHRcdFx0XHRAaW5jbHVkZSBzZWN0aW9uLXNwYWNpbmctb3ZlcnJpZGUodG9wLCBtYXJnaW4sIDMpO1xuXHRcdFx0fVxuXHRcdH1cblx0fVxufVxuXG4ucG9zdC1jYXJkLWZlYXR1cmVkIHtcblx0dGV4dC1hbGlnbjogY2VudGVyO1xuXHRkaXNwbGF5OiBmbGV4O1xuXHRmbGV4LWZsb3c6IGNvbHVtbjtcblxuXHRhIHtcblx0XHRkaXNwbGF5OiBibG9jaztcblxuXHRcdCY6aG92ZXIsICY6YWN0aXZlLCAmOmZvY3VzIHtcblx0XHRcdHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuXHRcdH1cblx0fVxuXHQuZmVhdHVyZWQtcG9zdC1pbWFnZSB7XG5cdFx0bWFyZ2luOiAwIGF1dG8gMXJlbTtcblx0XHRoZWlnaHQ6IDE2LjEyNXJlbTtcblx0XHR3aWR0aDogMjIuNjI1cmVtO1xuXHRcdG1heC13aWR0aDogMTAwJTtcblx0XHRkaXNwbGF5OiBibG9jaztcblx0XHRib3JkZXItcmFkaXVzOiAkZ2xvYmFsLWJvcmRlci1yYWRpdXMtMjA7XG5cblx0XHRAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuXHRcdFx0bWFyZ2luLWJvdHRvbTogMS41cmVtO1xuXHRcdH1cblx0fVxuXG5cdC5jYXRlZ29yeS1saW5rIHtcblx0XHR0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuXHRcdGZvbnQtc2l6ZTogMC44NzVyZW07XG5cdFx0Y29sb3I6ICRhc2ljcy1ibHVlO1xuXHRcdG1hcmdpbi1ib3R0b206IDFyZW07XG5cdH1cblxuXHQucG9zdC10aXRsZS1saW5rIHtcblx0XHRjb2xvcjogJG5pZ2h0LXJpZGVyO1xuXHRcdEBpbmNsdWRlIHNlY3Rpb24tcGFkZGluZy1sZWZ0cmlnaHQoMyk7XG5cblx0XHQucG9zdC10aXRsZSB7XG5cdFx0XHRjb2xvcjogJG5pZ2h0LXJpZGVyO1xuXHRcdFx0Zm9udC1zaXplOiAxLjM3NXJlbTtcblx0XHRcdGZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ib2xkO1xuXG5cdFx0XHRAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG5cdFx0XHRcdGZvbnQtc2l6ZTogMS42MjVyZW07XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG59XG5cbi50b3AtcG9zdCB7XG5cdC5ncmlkLWNvbnRhaW5lciB7XG5cdFx0QGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gZG93bikge1xuXHRcdFx0cGFkZGluZzogMDtcblx0XHR9XG5cdH1cblx0LnRvcC1wb3N0LWdyaWQge1xuXHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuXHRcdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRcdH1cblx0XHRAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG5cdFx0XHRib3JkZXItcmFkaXVzOiAkZ2xvYmFsLWJvcmRlci1yYWRpdXMtMjA7XG5cdFx0XHRvdmVyZmxvdzogaGlkZGVuO1xuXG5cdFx0fVxuXHRcdC5pbWFnZS1jb2wge1xuXG5cdFx0XHRib3JkZXItcmFkaXVzOiAwO1xuXHRcdFx0bWFyZ2luLWJvdHRvbTogMDtcblx0XHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuICAgICAgICB6LWluZGV4OiAxO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICByaWdodDogMDtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgaGVpZ2h0OjEwMCU7XG4gICAgICAgIHdpZHRoOjEwMCU7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuXG5cdFx0XHRcdCY6OmJlZm9yZSB7XG5cdFx0XHRcdFx0Y29udGVudDogJyc7XG5cdFx0XHRcdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdFx0XHRcdHdpZHRoOiAxMDAlO1xuXHRcdFx0XHRcdGhlaWdodDogMTAwJTtcblx0XHRcdFx0XHR0b3A6IDA7XG5cdFx0XHRcdFx0bGVmdDogMDtcblx0XHRcdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKCRhc2ljcy1ibHVlLCAuOCk7XG5cdFx0XHRcdFx0ei1pbmRleDogMjtcblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdFx0LmZlYXR1cmVkLWltYWdlIHtcblx0XHRcdFx0cG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB6LWluZGV4OjA7XG5cdFx0XHR9XG5cdFx0fVxuXG5cdFx0LmNvbnRlbnQtY29sIHtcbiAgICAgIG1pbi1oZWlnaHQ6IHJlbS1jYWxjKDMzOCk7XG5cdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkYXNpY3MtYmx1ZTtcblx0XHRcdGNvbG9yOiAkd2hpdGU7XG5cdFx0XHRAaW5jbHVkZSBzZWN0aW9uLXBhZGRpbmctdG9wYm90dG9tKCk7XG5cdFx0XHRAaW5jbHVkZSBzZWN0aW9uLXBhZGRpbmctbGVmdHJpZ2h0KDIpO1xuXHRcdFx0dGV4dC1hbGlnbjogY2VudGVyO1xuXHRcdFx0ZGlzcGxheTogZmxleDtcblx0XHRcdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG5cdFx0XHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIHotaW5kZXg6MztcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSl7XG4gICAgICAgIGJhY2tncm91bmQ6dHJhbnNwYXJlbnQ7XG4gICAgICB9XG5cblx0XHRcdGEge1xuXHRcdFx0XHRkaXNwbGF5OiBibG9jaztcblxuXHRcdFx0XHQmOmhvdmVyLCAmOmFjdGl2ZSwgJjpmb2N1cyB7XG5cdFx0XHRcdFx0dGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG5cdFx0XHRcdH1cblx0XHRcdH1cblxuXHRcdFx0LmNhdGVnb3J5LWxpbmsge1xuXHRcdFx0XHR0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuXHRcdFx0XHRmb250LXNpemU6IDAuODc1cmVtO1xuXHRcdFx0XHRtYXJnaW4tYm90dG9tOiAxcmVtO1xuXHRcdFx0fVxuXG5cdFx0XHQucG9zdC10aXRsZS1saW5rIHtcblx0XHRcdFx0bWFyZ2luLWJvdHRvbTogMS41cmVtO1xuXHRcdFx0XHQucG9zdC10aXRsZSB7XG5cdFx0XHRcdFx0QGV4dGVuZCAuc2hvdy1hcy1oMTtcblx0XHRcdFx0XHRmb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtYm9sZDtcblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdH1cblx0fVxuXG5cdCYudG9wLXBvc3QtdmlkZW8ge1xuXHRcdG1hcmdpbi1ib3R0b206IDEuNXJlbTtcblx0XHQudG9wLXBvc3Qtcm93IHtcblx0XHRcdGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG5cdFx0XHRkaXNwbGF5OiBibG9jaztcblx0XHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0XHRcdG92ZXJmbG93OiBoaWRkZW47XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiRydW5rZWVwZXItYmxhY2s7XG5cdFx0XHRAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG5cdFx0XHRcdGJvcmRlci1yYWRpdXM6ICRnbG9iYWwtYm9yZGVyLXJhZGl1cy0yMDtcblx0XHRcdH1cblx0XHR9XG5cdFx0LnRvcC1wb3N0LXJvdy1pbWFnZSB7XG5cdFx0XHRwb3NpdGlvbjpyZWxhdGl2ZTtcblx0XHRcdHRyYW5zaXRpb246IG9wYWNpdHkgMC41cyBlYXNlO1xuICAgICAgei1pbmRleDogNjtcblxuXHRcdFx0Ji5vcGFjaXR5LTAge1xuXHRcdFx0XHRvcGFjaXR5OiAwO1xuXHRcdFx0XHR6LWluZGV4OiAtMTtcblx0XHRcdH1cblxuXHRcdFx0Jjo6YWZ0ZXIge1xuXHRcdFx0XHRjb250ZW50OiAnJztcblx0XHRcdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKCRhc2ljcy1ibHVlLCAwLjUpO1xuXHRcdFx0XHR0b3A6IDA7XG5cdFx0XHRcdGJvdHRvbTogMDtcblx0XHRcdFx0cmlnaHQ6IDA7XG5cdFx0XHRcdGxlZnQ6IDA7XG5cdFx0XHR9XG5cblx0XHRcdC50b3AtcG9zdC1jb250cm9scy1saW5rcyB7XG5cdFx0XHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0XHRcdFx0ei1pbmRleDogMjtcblx0XHRcdFx0QGluY2x1ZGUgc2VjdGlvbi1wYWRkaW5nLWxlZnRyaWdodCgyKTtcbiAgICAgICAgQGluY2x1ZGUgc2VjdGlvbi1wYWRkaW5nLXRvcGJvdHRvbSgpO1xuXHRcdFx0XHRkaXNwbGF5OiBmbGV4O1xuXHRcdFx0XHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcblx0XHRcdFx0YWxpZ24taXRlbXM6IGNlbnRlcjtcblx0XHRcdFx0ZmxleC1mbG93OiBjb2x1bW47XG5cdFx0XHRcdGhlaWdodDogMTAwJTtcblx0XHRcdFx0dGV4dC1hbGlnbjogY2VudGVyO1xuXG5cdFx0XHRcdC5jYXRlZ29yeS1saW5rIHtcblx0XHRcdFx0XHR0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuXHRcdFx0XHRcdGZvbnQtc2l6ZTogMC44NzVyZW07XG5cdFx0XHRcdFx0Y29sb3I6ICR3aGl0ZTtcblx0XHRcdFx0XHRtYXJnaW4tYm90dG9tOiAxcmVtO1xuXG5cdFx0XHRcdFx0Jjpob3ZlciwgJjphY3RpdmUsICY6Zm9jdXMge1xuXHRcdFx0XHRcdFx0dGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHR9XG5cblx0XHRcdFx0LnBvc3QtdGl0bGUge1xuXHRcdFx0XHRcdHRleHQtYWxpZ246IGNlbnRlcjtcblx0XHRcdFx0XHRjb2xvcjogJHdoaXRlO1xuXHRcdFx0XHRcdG1hcmdpbi1ib3R0b206IDJyZW07XG5cdFx0XHRcdFx0QGV4dGVuZCAuc2hvdy1hcy1oMTtcblx0XHRcdFx0XHRAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBkb3duKSB7XG5cdFx0XHRcdFx0XHRmb250LXNpemU6IDEuODc1cmVtO1xuXHRcdFx0XHRcdH1cblxuXHRcdFx0XHRcdCY6aG92ZXIsICY6YWN0aXZlLCAmOmZvY3VzIHtcblx0XHRcdFx0XHRcdHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuXHRcdFx0XHRcdH1cblx0XHRcdFx0fVxuXG5cdFx0XHRcdC5jYXJkLXBsYXktYnV0dG9uIHtcblx0XHRcdFx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdFx0XHRcdFx0dG9wOiB1bnNldDtcblx0XHRcdFx0XHRib3R0b206IHVuc2V0O1xuXHRcdFx0XHRcdHJpZ2h0OiB1bnNldDtcblx0XHRcdFx0XHRsZWZ0OiB1bnNldDtcblx0XHRcdFx0XHRtYXJnaW46IDAgYXV0bztcblx0XHRcdFx0XHRoZWlnaHQ6IDRyZW07XG5cdFx0XHRcdFx0d2lkdGg6IDRyZW07XG5cblx0XHRcdFx0XHRAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuXHRcdFx0XHRcdFx0aGVpZ2h0OiA2cmVtO1xuXHRcdFx0XHRcdFx0d2lkdGg6IDZyZW07XG5cdFx0XHRcdFx0fVxuXG5cdFx0XHRcdFx0c3ZnIHtcblx0XHRcdFx0XHRcdG1heC1oZWlnaHQ6IDEuNXJlbTtcbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKXtcbiAgICAgICAgICAgICAgbWF4LWhlaWdodDoycmVtO1xuICAgICAgICAgICAgfVxuXHRcdFx0XHRcdH1cblxuXHRcdFx0XHRcdCY6aG92ZXIsICY6YWN0aXZlLCAmOmZvY3VzIHtcbiAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcblx0XHRcdFx0XHRcdHN2ZyB7XG5cdFx0XHRcdFx0XHRcdHBhdGgge1xuXHRcdFx0XHRcdFx0XHRcdGZpbGw6ICRzdXBlcm5vdmE7XG5cdFx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHR9XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHR9XG5cblx0XHQuZW1iZWQtY29udGFpbmVyIHtcblx0XHRcdC8vbWluLWhlaWdodDogMjJyZW07XG4gICAgICBib3JkZXItcmFkaXVzOjA7XG5cdFx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6NTAlO1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICAgICAgd2lkdGg6MTAwJTtcbiAgICAgIGxlZnQ6MDtcbiAgICAgIHJpZ2h0OjA7XG4gICAgICB6LWluZGV4OjE7XG5cdFx0XHQvL3RvcDogMDtcblx0XHRcdC8vYm90dG9tOiAwO1xuXHRcdFx0Ly9yaWdodDogMDtcblx0XHRcdC8vbGVmdDogMDtcblx0XHRcdC8vYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICAgIC8vcGFkZGluZy10b3A6NTYuMjUlO1xuXG5cdFx0XHRAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBkb3duKSB7XG5cdFx0XHRcdC8vYm9yZGVyLXJhZGl1czogMDtcblx0XHRcdH1cblxuXHRcdFx0aWZyYW1lIHtcblx0XHRcdFx0Ym94LXNpemluZzogYm9yZGVyLWJveDtcblx0XHRcdH1cblx0XHR9XG5cdH1cblxuXHQuYXJ0aWNsZS1jb2wge1xuXHRcdEBpbmNsdWRlIHNlY3Rpb24tcGFkZGluZy10b3Bib3R0b20oNik7XG5cdFx0QGluY2x1ZGUgc2VjdGlvbi1wYWRkaW5nLWxlZnRyaWdodCg0KTtcblx0XHQuZ28tdG8tYXJ0aWNsZS10ZXh0IHtcblx0XHRcdHRleHQtYWxpZ246IGNlbnRlcjtcblx0XHRcdG1hcmdpbi1ib3R0b206IDA7XG5cdFx0XHRjb2xvcjogJGFzaWNzLWJsdWU7XG5cblx0XHRcdCY6aG92ZXIsICY6YWN0aXZlLCAmOmZvY3VzIHtcblx0XHRcdFx0dGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG59XG4iLCIuZmVhdHVyZWQtcG9zdHMge1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKCRwcmltYXJ5LWNvbG9yLCAwLjEpO1xuXHRAaW5jbHVkZSBzZWN0aW9uLXBhZGRpbmctdG9wYm90dG9tKDMpO1xuXHQuZmVhdHVyZWQtcG9zdHMtdGl0bGUge1xuXHRcdGNvbG9yOiAkYXNpY3MtYmx1ZTtcblx0XHR0ZXh0LWFsaWduOiBjZW50ZXI7XG5cdFx0QGluY2x1ZGUgc2VjdGlvbi1zcGFjaW5nLW92ZXJyaWRlKGJvdHRvbSwgbWFyZ2luLCAzKTtcblx0fVxuXG5cdC5mZWF0dXJlZC1wb3N0cy1zbGlkZXIge1xuXHRcdC8vIEBpbmNsdWRlIGV4dGVuZC1wYXN0LWdyaWQtY29udGFpbmVyLXBhZGRpbmcoJ3NtYWxsJyk7XG5cdFx0LnNsaWNrLWFycm93IHtcblx0XHRcdGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcblx0XHRcdGNvbG9yOiAkYmxhY2s7XG5cdFx0XHR3aWR0aDogMi41cmVtO1xuXHRcdFx0aGVpZ2h0OiAyLjVyZW07XG5cdFx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0XHR6LWluZGV4OiAxMTtcblx0XHRcdFxuXHRcdFx0Jjo6YmVmb3JlIHtcblx0XHRcdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdFx0XHRmb250LWZhbWlseTogJ0ZvbnQgQXdlc29tZSA1IFBybyc7XG5cdFx0XHRcdGZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ub3JtYWw7XG5cdFx0XHRcdGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG5cdFx0XHRcdGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcblx0XHRcdFx0YmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcblx0XHRcdFx0aGVpZ2h0OiAwLjc1cmVtO1xuXHRcdFx0XHR3aWR0aDogMC43NXJlbTtcblx0XHRcdFx0Y29sb3I6ICRibGFjaztcblx0XHRcdFx0b3BhY2l0eTogMTtcblx0XHRcdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0XHRcdHRvcDogNTAlO1xuXHRcdFx0XHRsZWZ0OiA1MCU7XG5cdFx0XHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xuXHRcdFx0fVxuXG5cdFx0XHQmLnNsaWNrLXByZXYge1xuXHRcdFx0XHRsZWZ0OiAwO1xuXG5cdFx0XHRcdCY6OmJlZm9yZSB7XG5cdFx0XHRcdFx0Y29udGVudDogJ1xcZjEwNCc7XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHRcdFxuXHRcdFx0Ji5zbGljay1uZXh0IHtcblx0XHRcdFx0cmlnaHQ6IDA7XG5cdFx0XHRcdFxuXHRcdFx0XHQmOjpiZWZvcmUge1xuXHRcdFx0XHRcdGNvbnRlbnQ6ICdcXGYxMDUnO1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG59XG4iLCIucG9zdC1zaGFyZSB7XG5cdGRpc3BsYXk6IGlubGluZS1mbGV4O1xuXHRhbGlnbi1pdGVtczogY2VudGVyO1xuXG5cdCYuc2hhcmUtY29sdW1uIHtcblx0XHRAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBkb3duKSB7XG5cdFx0XHRkaXNwbGF5OiBmbGV4O1xuXHRcdFx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG5cdFx0XHRhbGlnbi1pdGVtczogY2VudGVyO1xuXHRcdFx0QGluY2x1ZGUgc2VjdGlvbi1zcGFjaW5nLW92ZXJyaWRlKGJvdHRvbSwgbWFyZ2luLCAyKTtcblx0XHRcdC5zaGFyZS1pY29uIHtcblx0XHRcdFx0Jjpub3QoOmxhc3QtY2hpbGQpIHtcblx0XHRcdFx0XHRtYXJnaW4tcmlnaHQ6IDFyZW07XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHR9XG5cdFx0LnNoYXJlLWljb24ge1xuXHRcdFx0aSB7XG5cdFx0XHRcdGZvbnQtc2l6ZTogMS41cmVtO1xuXHRcdFx0fVxuXHRcdH1cblx0XHRAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG5cdFx0XHRmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuXHRcdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdFx0cmlnaHQ6IDA7XG5cdFx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XG5cdFx0XHQuc2hhcmUtaWNvbiB7XG5cdFx0XHRcdCY6bm90KDpsYXN0LWNoaWxkKSB7XG5cdFx0XHRcdFx0bWFyZ2luLWJvdHRvbTogMS41cmVtO1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG5cblx0Ji5zaGFyZS1yb3cge1xuXHRcdC5zaGFyZS1pY29uIHtcblx0XHRcdCY6bm90KDpmaXJzdC1jaGlsZCkge1xuXHRcdFx0XHRtYXJnaW4tbGVmdDogMXJlbTtcblx0XHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuXHRcdFx0XHRcdG1hcmdpbi1sZWZ0OiAxLjVyZW07XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHR9XG5cdH1cblxuXHQuc2hhcmUtaWNvbiB7XG5cdFx0aSB7XG5cdFx0XHRmb250LXNpemU6IDEuNXJlbTtcblx0XHRcdGZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ub3JtYWw7XG5cdFx0fVxuXHR9XG59IiwiLnBvc3QtbWV0YSB7XG5cdGRpc3BsYXk6IGlubGluZS1mbGV4O1xuXHRhbGlnbi1pdGVtczogY2VudGVyO1xuXHRcblx0aW1nIHtcblx0XHRib3JkZXItcmFkaXVzOiA1MCU7XG5cdFx0aGVpZ2h0OiA0OHB4O1xuXHRcdHdpZHRoOiA0OHB4O1xuXHR9XG5cblx0Jjpob3ZlciB7XG5cdFx0LmF1dGhvci1uYW1lIHtcblx0XHRcdHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuXHRcdH1cblx0fVxuXG5cdCYubGFyZ2Uge1xuXHRcdC5hdXRob3ItbmFtZSB7XG5cdFx0XHRAZXh0ZW5kIC5zaG93LWFzLWg1O1xuXHRcdH1cblx0XHRpbWcge1xuXHRcdFx0aGVpZ2h0OiA4MHB4O1xuXHRcdFx0d2lkdGg6IDgwcHg7XG5cdFx0fVxuXHR9XG5cblx0LmF1dGhvci1uYW1lIHtcblx0XHRtYXJnaW4tbGVmdDogMXJlbTtcblx0XHRtYXJnaW4tYm90dG9tOiAwO1xuXHRcdGNvbG9yOiAkcnVua2VlcGVyLWJsYWNrO1xuXHR9XG59IiwiLmJyb3dzZS1ieS1jYXRlZ29yeSB7XG5cdC5icm93c2UtYnktY2F0ZWdvcnktdGl0bGUge1xuXHRcdGNvbG9yOiAkYXNpY3MtYmx1ZTtcblx0XHRAaW5jbHVkZSBzZWN0aW9uLXNwYWNpbmctb3ZlcnJpZGUoYm90dG9tLCBtYXJnaW4sIDMpO1xuXHRcdHRleHQtYWxpZ246IGNlbnRlcjtcblx0XHRAZXh0ZW5kIC5zaG93LWFzLWgzO1xuXHR9XG5cblx0LmNhdGVnb3J5LWNlbGwge1xuXHRcdGJhY2tncm91bmQtY29sb3I6IHJnYmEoJHByaW1hcnktY29sb3IsIDAuMSk7XG5cdFx0Ym9yZGVyLXJhZGl1czogJGdsb2JhbC1ib3JkZXItcmFkaXVzLTIwO1xuXHRcdG92ZXJmbG93OiBoaWRkZW47XG5cdFx0LmltYWdlLWNvbCB7XG5cdFx0XHRpbWcge1xuXHRcdFx0XHRoZWlnaHQ6IDEwMCU7XG5cdFx0XHRcdHdpZHRoOiAxMDAlO1xuXHRcdFx0XHRvYmplY3QtZml0OiBjb3Zlcjtcblx0XHRcdFx0b2JqZWN0LXBvc2l0aW9uOiBjZW50ZXI7XG5cdFx0XHR9XG5cdFx0fVxuXG5cdFx0LmNvbnRlbnQtY29sIHtcblx0XHRcdGRpc3BsYXk6IGZsZXg7XG5cdFx0XHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcblx0XHRcdGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICBtaW4taGVpZ2h0OnJlbS1jYWxjKDEwMCk7XG4gICAgICBAaW5jbHVkZSBzZWN0aW9uLXBhZGRpbmctdG9wYm90dG9tKDIpO1xuICAgICAgQGluY2x1ZGUgc2VjdGlvbi1wYWRkaW5nLWxlZnRyaWdodCgpO1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gb25seSl7XG4gICAgICAgIEBpbmNsdWRlIHNlY3Rpb24tcGFkZGluZy10b3Bib3R0b20oMyk7XG4gICAgICB9XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSl7XG4gICAgICAgIEBpbmNsdWRlIHNlY3Rpb24tcGFkZGluZy1sZWZ0cmlnaHQoMyk7XG4gICAgICB9XG5cblx0XHRcdC5jYXRlZ29yeS10aXRsZSB7XG5cdFx0XHRcdG1hcmdpbi1ib3R0b206IDA7XG5cdFx0XHRcdGNvbG9yOiAkYXNpY3MtYmx1ZTtcbiAgICAgICAgd2lkdGg6MTAwJTtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KXtcbiAgICAgICAgICBmb250LXNpemU6cmVtLWNhbGMoMTgpO1xuICAgICAgICB9XG5cdFx0XHRcdEBleHRlbmQgLnNob3ctYXMtaDQ7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2Upe1xuICAgICAgICAgIGZvbnQtc2l6ZTpyZW0tY2FsYygyNik7XG4gICAgICAgIH1cblx0XHRcdH1cblx0XHR9XG5cblx0XHQmOmhvdmVyLCAmOmFjdGl2ZSwgJjpmb2N1cyB7XG5cdFx0XHQuY29udGVudC1jb2wge1xuXHRcdFx0XHQuY2F0ZWdvcnktdGl0bGUge1xuXHRcdFx0XHRcdHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG59XG4iLCIuc2VhcmNoLXJlc3VsdC1pdGVtIHtcbiAgQGluY2x1ZGUgc2VjdGlvbi1wYWRkaW5nLXRvcGJvdHRvbSg2KTtcbiAgLmltYWdlLWxpbmt7XG4gICAgYm9yZGVyLXJhZGl1czogJGdsb2JhbC1ib3JkZXItcmFkaXVzLTIwO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIGRpc3BsYXk6YmxvY2s7XG4gICAgaGVpZ2h0OjEwMCU7XG4gICAgd2lkdGg6MTAwJTtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcbiAgICAgIG1pbi1oZWlnaHQ6IDE1cmVtO1xuICAgIH1cbiAgICAmOmhvdmVyLCAmOmFjdGl2ZSwgJjpmb2N1cyB7XG4gICAgICBpbWcge1xuICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDEuMDUpO1xuICAgICAgfVxuICAgIH1cbiAgICBpbWcge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAuMjVzIGVhc2U7XG4gICAgfVxuICB9XG5cblx0LmNvbnRlbnQtY2VsbCB7XG5cdFx0QGluY2x1ZGUgc2VjdGlvbi1wYWRkaW5nLXRvcGJvdHRvbSgzKTtcblxuXHRcdC5pdGVtLXRpdGxlIHtcblx0XHRcdEBleHRlbmQgLnNob3ctYXMtaDQ7XG5cdFx0XHRkaXNwbGF5OiBibG9jaztcblx0XHRcdG1hcmdpbi1ib3R0b206IC41cmVtO1xuXHRcdFx0Zm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LWJvbGQ7XG5cdFx0XHRjb2xvcjogJHJ1bmtlZXBlci1ibGFjaztcblx0XHR9XG5cblx0XHQuZGVzY3JpcHRpb24ge1xuXHRcdFx0bWFyZ2luLWJvdHRvbTogMDtcblx0XHR9XG5cblx0XHQuY2F0LW5hbWUge1xuXHRcdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0XHRtYXJnaW4tYm90dG9tOiAuNXJlbTtcblx0XHRcdHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG5cdFx0XHRjb2xvcjogJGFzaWNzLWJsdWU7XG5cdFx0fVxuXG5cdFx0Lml0ZW0tdGl0bGUsIGEuY2F0LW5hbWUge1xuXHRcdFx0Jjpob3ZlciwgJjphY3RpdmUsICY6Zm9jdXMge1xuXHRcdFx0XHR0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcblx0XHRcdH1cblx0XHR9XG5cdFx0QGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcblx0XHRcdHBhZGRpbmctcmlnaHQ6IDEuNXJlbTtcblx0XHR9XG5cdFx0QGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuXHRcdFx0cGFkZGluZy1yaWdodDogM3JlbTtcblx0XHR9XG5cdH1cbn1cbiIsIi5pbnN0YWdyYW0tZmVlZCB7XG5cdCNzYl9pbnN0YWdyYW0ge1xuXG5cdFx0QGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuXHRcdFx0ZGlzcGxheTogZmxleDtcblx0XHR9XG5cdFx0LnNiX2luc3RhZ3JhbV9oZWFkZXIge1xuXHRcdFx0bWFyZ2luOiAwICFpbXBvcnRhbnQ7XG5cdFx0XHRAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG5cdFx0XHRcdHdpZHRoOiAyMCU7XG5cdFx0XHR9XG5cdFxuXHRcdFx0YS5zYmlfaGVhZGVyX2xpbmsge1xuXHRcdFx0XHRAaW5jbHVkZSBzZWN0aW9uLXBhZGRpbmctdG9wYm90dG9tKCk7XG5cdFx0XHRcdEBpbmNsdWRlIHNlY3Rpb24tcGFkZGluZy1sZWZ0cmlnaHQoKTtcblx0XHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuXHRcdFx0XHRcdHBhZGRpbmc6IDFyZW07XG5cdFx0XHRcdH1cblx0XHRcdFx0ZGlzcGxheTogZmxleDtcblx0XHRcdFx0ZmxleC1mbG93OiBjb2x1bW4tcmV2ZXJzZTtcblx0XHRcdFx0YWxpZ24taXRlbXM6IGNlbnRlcjtcblx0XHRcdFx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG5cdFx0XHRcdGhlaWdodDogMTAwJTtcblx0XHRcdFx0d2lkdGg6IDEwMCU7XG5cdFx0XHRcdGJhY2tncm91bmQtY29sb3I6ICRsaWdodGVzdC1ncmF5O1xuXG5cdFx0XHRcdC5zYmlfaGVhZGVyX3RleHQge1xuXHRcdFx0XHRcdHBhZGRpbmc6IDA7XG5cdFx0XHRcdFx0dGV4dC1hbGlnbjogY2VudGVyO1xuXHRcdFx0XHRcdGRpc3BsYXk6IGZsZXg7XG5cdFx0XHRcdFx0ZmxleC1mbG93OiBjb2x1bW4tcmV2ZXJzZTtcblx0XHRcdFx0XHRhbGlnbi1pdGVtczogY2VudGVyO1xuXHRcdFx0XHRcdGp1c3RpZnktY29udGVudDogY2VudGVyO1xuXHRcdFx0XHRcdCoge1xuXHRcdFx0XHRcdFx0bWFyZ2luOiAwIGF1dG8gIWltcG9ydGFudDtcblx0XHRcdFx0XHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdFx0XHRcdFx0ZmxvYXQ6IG5vbmU7XG5cdFx0XHRcdFx0XHRjb2xvcjogJGFzaWNzLWJsdWU7XG5cdFx0XHRcdFx0fVxuXG5cdFx0XHRcdFx0aDMge1xuXHRcdFx0XHRcdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRcdFx0XHRcdFx0cGFkZGluZy1sZWZ0OiAxcmVtICFpbXBvcnRhbnQ7XG5cdFx0XHRcdFx0XHRmb250LXNpemU6IDFyZW07XG5cdFx0XHRcdFx0XHRmb250LWZhbWlseTogJGZvbnQtcmVndWxhcjtcblxuXHRcdFx0XHRcdFx0Jjo6YmVmb3JlIHtcblx0XHRcdFx0XHRcdFx0Y29udGVudDogJ0AnO1xuXHRcdFx0XHRcdFx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0XHRcdFx0XHRcdGxlZnQ6IDA7XG5cdFx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0fVxuXG5cdFx0XHRcdFx0LnNiaV9iaW8ge1xuXHRcdFx0XHRcdFx0Zm9udC1zaXplOiAxLjI1cmVtO1xuXHRcdFx0XHRcdFx0Zm9udC1mYW1pbHk6ICRmb250LWJvbGQ7XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHR9XG5cblx0XHRcdFx0LnNiaV9oZWFkZXJfaW1nIHtcblx0XHRcdFx0XHRtYXJnaW46IDAgIWltcG9ydGFudDtcblx0XHRcdFx0XHRiYWNrZ3JvdW5kOiBub25lO1xuXHRcdFx0XHRcdGRpc3BsYXk6IGZsZXg7XG5cdFx0XHRcdFx0YWxpZ24taXRlbXM6IGNlbnRlcjtcblx0XHRcdFx0XHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcblx0XHRcdFx0XHRoZWlnaHQ6IDJyZW07XG5cdFx0XHRcdFx0d2lkdGg6IDJyZW07XG5cblx0XHRcdFx0XHQuc2JpX2hlYWRlcl9pbWdfaG92ZXIge1xuXHRcdFx0XHRcdFx0b3BhY2l0eTogMSAhaW1wb3J0YW50O1xuXHRcdFx0XHRcdFx0YmFja2dyb3VuZDogbm9uZSAhaW1wb3J0YW50O1xuXHRcdFx0XHRcdH1cblx0XHRcdFx0XHRzdmcge1xuXHRcdFx0XHRcdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRcdFx0XHRcdFx0bWFyZ2luOiAwO1xuXHRcdFx0XHRcdFx0aGVpZ2h0OiAycmVtO1xuXHRcdFx0XHRcdFx0d2lkdGg6IDJyZW07XG5cdFx0XHRcdFx0XHR0b3A6IGF1dG87XG5cdFx0XHRcdFx0XHRsZWZ0OiBhdXRvO1xuXHRcdFx0XHRcdFx0Y29sb3I6ICRhc2ljcy1ibHVlO1xuXHRcdFx0XHRcdH1cblxuXHRcdFx0XHRcdGltZyB7XG5cdFx0XHRcdFx0XHRkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0fVxuXG5cdFx0I3NiaV9pbWFnZXMge1xuXHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuXHRcdFx0XHR3aWR0aDogODAlO1xuXHRcdFx0fVxuXHRcdH1cblx0XG5cdFx0I3NiaV9sb2FkIHtcblx0XHRcdGRpc3BsYXk6IG5vbmU7XG5cdFx0fVxuXHR9XG59XG4iLCIuYXBwLWN0YSB7XG5cdEBpbmNsdWRlIHNlY3Rpb24tcGFkZGluZy10b3Bib3R0b20oMik7XG5cblx0LmFwcC1jdGEtbG9nbyB7XG5cdFx0bWF4LXdpZHRoOiAzMDBweDtcblx0XHRtYXJnaW46IDAgYXV0byAxLjVyZW07XG5cdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0QGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcblx0XHRcdG1hcmdpbi1ib3R0b206IDJyZW07XG5cdFx0fVxuXHR9XG5cblx0LmFwcC1jdGEtY29udGVudCB7XG5cdFx0dGV4dC1hbGlnbjogY2VudGVyO1xuXHRcdGZvbnQtc2l6ZTogMS4zNzVyZW07XG5cdFx0bWFyZ2luLWJvdHRvbTogMS41cmVtO1xuXHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG5cdFx0XHRmb250LXNpemU6IDEuNjI1cmVtO1xuXHRcdFx0bWFyZ2luLWJvdHRvbTogMnJlbTtcblx0XHR9XG5cdH1cblxuXHQuYXBwLWN0YS1hY3Rpb24tbGluayB7XG5cdFx0bWFyZ2luOiAwIGF1dG87XG5cdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0d2lkdGg6IGZpdC1jb250ZW50O1xuXHR9XG59XG4iLCJcbiRvdmVybGF5LWltZy1zaGFkb3ctc3o6ODBweDtcblxuLnNsYW50ZWQtYmctc2VjdGlvbiB7XG5cdG92ZXJmbG93OiBoaWRkZW47XG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuXHQmLmNvbnRlbnQtbGVmdCB7XG5cdFx0LmltYWdlLWNlbGw6OmFmdGVyIHtcblx0XHRcdGxlZnQ6IDA7XG5cdFx0fVxuICAgIC5iZy1pbWFnZXtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKXtcbiAgICAgICAgbGVmdDowO1xuICAgICAgICByaWdodDphdXRvO1xuICAgICAgfVxuICAgIH1cblx0fVxuXG5cdCYuY29udGVudC1yaWdodCB7XG5cdFx0LmltYWdlLWNlbGw6OmFmdGVyIHtcblx0XHRcdHJpZ2h0OiAwO1xuXHRcdH1cbiAgICAuYmctaW1hZ2V7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSl7XG4gICAgICAgIHJpZ2h0OjA7XG4gICAgICAgIGxlZnQ6YXV0bztcbiAgICAgIH1cbiAgICB9XG5cdH1cbiAgLmltYWdlLWNlbGx7XG4gICAgcG9zaXRpb246cmVsYXRpdmU7XG4gICAgei1pbmRleDoxO1xuICAgIEBpbmNsdWRlIHNlY3Rpb24tcGFkZGluZy10b3Bib3R0b20oMS4yNSk7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pe1xuICAgICAgQGluY2x1ZGUgc2VjdGlvbi1wYWRkaW5nLXRvcGJvdHRvbSgxLjQpO1xuICAgIH1cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKXtcbiAgICAgIEBpbmNsdWRlIHNlY3Rpb24tcGFkZGluZy10b3Bib3R0b20oMS41KTtcbiAgICB9XG4gICAgJjo6YWZ0ZXIge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgd2lkdGg6MTAwJTtcbiAgICAgIGJvdHRvbTogMDtcbiAgICAgIHotaW5kZXg6IDE7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSl7XG4gICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG5cdC5iZy1pbWFnZSB7XG5cdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdHRvcDogMDtcblx0XHRoZWlnaHQ6IDEwMCU7XG5cdFx0ei1pbmRleDogMDtcblx0XHRiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuXHRcdGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcblx0XHRiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgIHdpZHRoOmNhbGMoMTAwJSArICgje21hcC1nZXQoJHNlY3Rpb24tcGFkZGluZy1sZWZ0cmlnaHQsIHNtYWxsKX0gKjIpKTtcbiAgICBsZWZ0OjA7XG4gICAgbWFyZ2luLWxlZnQ6IG1hcC1nZXQoJHNlY3Rpb24tcGFkZGluZy1sZWZ0cmlnaHQsIHNtYWxsKSAqIC0xO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKXtcbiAgICAgIHdpZHRoOiA2MHZ3O1xuICAgICAgbWFyZ2luLWxlZnQ6dW5zZXQ7XG4gICAgfVxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2Ugb25seSl7XG4gICAgICB3aWR0aDo3MHZ3O1xuICAgIH1cblx0fVxuXG4gICRvdmVybGF5LWltZy1tYXgtaDooXG4gICAgc2hhZG93LWJ1aWx0LWluOihcbiAgICAgIHNtYWxsOjQxNixcbiAgICAgIG1lZGl1bTo0ODAsXG4gICAgICBsYXJnZTo3MDAsXG4gICAgKSxcbiAgICBjc3Mtc2hhZG93OihcbiAgICAgIHNtYWxsOjQxNiAtICgkb3ZlcmxheS1pbWctc2hhZG93LXN6KjIpLFxuICAgICAgbWVkaXVtOjU0MCAtICgkb3ZlcmxheS1pbWctc2hhZG93LXN6KjIpLFxuICAgICAgbGFyZ2U6NzAwIC0gKCRvdmVybGF5LWltZy1zaGFkb3ctc3oqMiksXG4gICAgKVxuICApO1xuICAub3ZlcmxheS1pbWd7XG4gICAgcG9zaXRpb246cmVsYXRpdmU7XG4gICAgei1pbmRleDoyO1xuICAgIHdpZHRoOmF1dG87XG4gICAgbWF4LXdpZHRoOm5vbmU7XG4gICAgZGlzcGxheTpibG9jaztcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpe1xuICAgICAgbWFyZ2luLWxlZnQ6YXV0bztcbiAgICB9XG4gICAgLy8gc2hhZG93IGJ1aWx0IGludG8gaW1hZ2VcbiAgICAmOm5vdCguZ2l2ZS1zaGFkb3cpe1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KXtcbiAgICAgICAgaGVpZ2h0OmF1dG87XG4gICAgICAgIG1heC1oZWlnaHQ6bm9uZTtcbiAgICAgICAgd2lkdGg6Y2FsYyg1NSUgKyAjeyRvdmVybGF5LWltZy1zaGFkb3ctc3p9KTtcbiAgICAgICAgbWFyZ2luLXJpZ2h0Oi0kb3ZlcmxheS1pbWctc2hhZG93LXN6LzI7XG4gICAgICB9XG4gICAgICBAaW5jbHVkZSBzZXQtcHJvcC1yZXNwb25zaXZlbHkobWF4LWhlaWdodCxtYXAtZ2V0KCRvdmVybGF5LWltZy1tYXgtaCxzaGFkb3ctYnVpbHQtaW4pKTtcbiAgICAgIGhlaWdodDpjYWxjKDEwMCUgKyAoI3skb3ZlcmxheS1pbWctc2hhZG93LXN6fSoyKSk7XG4gICAgICBtYXJnaW4tdG9wOi0kb3ZlcmxheS1pbWctc2hhZG93LXN6LzI7XG4gICAgICBtYXJnaW4tYm90dG9tOi0kb3ZlcmxheS1pbWctc2hhZG93LXN6LzI7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSl7XG4gICAgICAgIG1hcmdpbi10b3A6LSRvdmVybGF5LWltZy1zaGFkb3ctc3o7XG4gICAgICAgIG1hcmdpbi1ib3R0b206LSRvdmVybGF5LWltZy1zaGFkb3ctc3o7XG4gICAgICB9XG4gICAgfVxuICAgIC8vIG5vIHNoYWRvdyBpbiBpbWFnZSBzb1xuICAgICYuZ2l2ZS1zaGFkb3d7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpe1xuICAgICAgICBoZWlnaHQ6YXV0bztcbiAgICAgICAgbWF4LWhlaWdodDpub25lO1xuICAgICAgICB3aWR0aDo1MCU7XG4gICAgICB9XG4gICAgICBib3JkZXItcmFkaXVzOiAxMHB4O1xuICAgICAgYm94LXNoYWRvdzogJHJrLWJveC1zaGFkb3c7XG4gICAgICBAaW5jbHVkZSBzZXQtcHJvcC1yZXNwb25zaXZlbHkoaGVpZ2h0LG1hcC1nZXQoJG92ZXJsYXktaW1nLW1heC1oLGNzcy1zaGFkb3cpKTtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKXtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMzBweDtcbiAgICAgIH1cbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2Upe1xuICAgICAgICBib3JkZXItcmFkaXVzOjQwcHg7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIC5jb250ZW50LWNlbGwge1xuICAgIEBpbmNsdWRlIHNlY3Rpb24tcGFkZGluZy10b3Bib3R0b20oKTtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBvbmx5KXtcbiAgICAgIEBpbmNsdWRlIHNlY3Rpb24tcGFkZGluZy10b3Bib3R0b20oNCk7XG4gICAgfVxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2Upe1xuICAgICAgQGluY2x1ZGUgc2VjdGlvbi1wYWRkaW5nLXRvcGJvdHRvbSgpO1xuICAgIH1cblxuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICBwb3NpdGlvbjpyZWxhdGl2ZTtcbiAgICB6LWluZGV4OjM7XG4gICAgLnNlY3Rpb24tdGl0bGUsIC5idWxsZXQtcG9pbnRzIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDEuNXJlbTtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoeGxhcmdlKSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDQwKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbnNlY3Rpb24uc2xhbnRlZC1iZy1zZWN0aW9ue1xuICAmOm50aC1vZi10eXBlKG9kZCl7XG4gICAgYmFja2dyb3VuZC1jb2xvcjokbGlnaHRlc3QtZ3JheTtcbiAgICAuaW1hZ2UtY2VsbDo6YWZ0ZXJ7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiRsaWdodGVzdC1ncmF5O1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC02MCUpIHNrZXdYKDIwZGVnKTtcbiAgICB9XG4gICAgLm92ZXJsYXktaW1ne1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pe1xuICAgICAgICBtYXJnaW4tcmlnaHQ6YXV0byAhaW1wb3J0YW50O1xuICAgICAgfVxuICAgICAgJi5naXZlLXNoYWRvd3tcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSl7XG4gICAgICAgICAgbWFyZ2luLWxlZnQ6JG92ZXJsYXktaW1nLXNoYWRvdy1zei8yO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG4gICY6bnRoLW9mLXR5cGUoZXZlbil7XG4gICAgYmFja2dyb3VuZC1jb2xvcjokd2hpdGU7XG4gICAgLmltYWdlLWNlbGw6OmFmdGVye1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjokd2hpdGU7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoNjAlKSBza2V3WCgtMjBkZWcpO1xuICAgIH1cbiAgICAub3ZlcmxheS1pbWd7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSl7XG4gICAgICAgIG1hcmdpbi1sZWZ0OmF1dG8gIWltcG9ydGFudDtcbiAgICAgIH1cbiAgICAgICYuZ2l2ZS1zaGFkb3d7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2Upe1xuICAgICAgICAgIG1hcmdpbi1yaWdodDokb3ZlcmxheS1pbWctc2hhZG93LXN6LzI7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbi8vIGN1c3RvbSBzZWN0aW9uLXNwZWNpZmljIGNzc1xuLnNsYW50ZWQtYmctc2VjdGlvbntcbiAgLmJnLWltYWdle1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSl7XG4gICAgICB3aWR0aDpjYWxjKDE1MCUgKyAoI3ttYXAtZ2V0KCRzZWN0aW9uLXBhZGRpbmctbGVmdHJpZ2h0LCBzbWFsbCl9ICoyKSk7XG4gICAgICBtYXJnaW4tbGVmdDotNTAlO1xuICAgICAgLy8gZmxpcCBpbWFnZVxuICAgICAgdHJhbnNmb3JtOiBtYXRyaXgoLTEsIDAsIDAsIDEsIDAsIDApO1xuICAgIH1cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KDE0NDFweCl7XG4gICAgICB3aWR0aDo1MHZ3O1xuICAgIH1cbiAgfVxuICAmLTN7XG4gICAgLm92ZXJsYXktaW1ne1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KXtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OmF1dG87XG4gICAgICAgIG1hcmdpbi1sZWZ0OjA7XG4gICAgICAgICY6bm90KC5naXZlLXNoYWRvdyl7XG4gICAgICAgICAgbWFyZ2luLWxlZnQ6LSRvdmVybGF5LWltZy1zaGFkb3ctc3ovMjtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICAuYmctaW1hZ2V7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpe1xuICAgICAgIHdpZHRoOjE1MCU7XG4gICAgICB9XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSl7XG4gICAgICAgIHdpZHRoOjcwdnc7XG4gICAgICB9XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlIG9ubHkpe1xuICAgICAgICB3aWR0aDo4MHZ3O1xuICAgICAgfVxuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgxNDQxcHgpe1xuICAgICAgICB3aWR0aDo1MHZ3O1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLnZpZGVvLXdpdGgtdGV4dC1zZWN0aW9uIHtcbiAgQGluY2x1ZGUgc2VjdGlvbi1wYWRkaW5nLXRvcGJvdHRvbSgxLjUpO1xuXG5cdEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2Upe1xuICAgIEBpbmNsdWRlIHNlY3Rpb24tcGFkZGluZy10b3Bib3R0b20oMC43NSk7XG4gIH1cbiAgLmNvbnRlbnQtY2VsbHtcbiAgICBAaW5jbHVkZSBzZWN0aW9uLXNwYWNpbmctb3ZlcnJpZGUodG9wLG1hcmdpbiwyLjUpO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2Upe1xuICAgICAgbWFyZ2luLXRvcDowO1xuICAgIH1cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSl7XG4gICAgICBAaW5jbHVkZSBzZWN0aW9uLXNwYWNpbmctb3ZlcnJpZGUodG9wLG1hcmdpbiwyKTtcbiAgICB9XG4gIH1cblx0LmNvbnRlbnQtd3JhcHBlciB7XG5cdFx0ZGlzcGxheTogZmxleDtcblx0XHRmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuXHRcdGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIHRleHQtYWxpZ246Y2VudGVyO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIG9ubHkpe1xuICAgICAgQGluY2x1ZGUgeHktY2VsbCg4KTtcbiAgICAgIG1hcmdpbi1sZWZ0OmF1dG87XG4gICAgICBtYXJnaW4tcmlnaHQ6YXV0bztcbiAgICB9XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSl7XG4gICAgICB0ZXh0LWFsaWduOmxlZnQ7XG4gICAgfVxuXHR9XG4gIC5zZWN0aW9uLXRpdGxlLCAuc2VjdGlvbi1jb250ZW50IHtcbiAgICBtYXJnaW4tYm90dG9tOiAxLjVyZW07XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCh4bGFyZ2UpIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDQwKTtcbiAgICB9XG4gIH1cbiAgLnNlY3Rpb24tdGl0bGV7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSl7XG4gICAgICBAaW5jbHVkZSBoZWFkZXItc2l6ZShoMyk7XG4gICAgfVxuICB9XG4gIC52aWRlby1mb290ZXJ7XG4gICAgbWFyZ2luLXRvcDoxcmVtO1xuICAgIHRleHQtYWxpZ246Y2VudGVyO1xuICAgIGF7XG4gICAgICBmb250LXNpemU6cmVtLWNhbGMoMTQpO1xuICAgICAgY29sb3I6JGJvZHktZm9udC1jb2xvcjtcbiAgICAgIHRleHQtZGVjb3JhdGlvbjp1bmRlcmxpbmU7XG4gICAgICAmOmhvdmVyLCAmOmZvY3Vze1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246bm9uZTtcbiAgICAgIH1cbiAgICB9XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSl7XG4gICAgICB0ZXh0LWFsaWduOmxlZnQ7XG4gICAgICBtYXJnaW4tdG9wOjAuNXJlbTtcbiAgICB9XG4gIH1cbn1cbiIsIi50d28tY29sLWN0YS1zZWN0aW9uIHtcblx0QGluY2x1ZGUgc2VjdGlvbi1wYWRkaW5nLXRvcGJvdHRvbSgxLjUpO1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiAkbGlnaHRlc3QtZ3JheTtcblx0dGV4dC1hbGlnbjogY2VudGVyO1xuXHQub3V0ZXItZ3JpZCB7XG5cdFx0LnNlY3Rpb24tdGl0bGUge1xuXHRcdFx0bWFyZ2luLWJvdHRvbTogMXJlbTtcblx0XHR9XG5cdH1cbiAgLmlubmVyLWdyaWR7XG4gICAgQGluY2x1ZGUgc2VjdGlvbi1zcGFjaW5nLW92ZXJyaWRlKHRvcCxtYXJnaW4sMik7XG4gICAgLmNlbGw6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgbWFyZ2luLXRvcDogY2FsYygje21hcC1nZXQoJHNlY3Rpb24tcGFkZGluZy10b3Bib3R0b20sIHNtYWxsKX0gLyAyKTtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgIG1hcmdpbi10b3A6IGNhbGMoI3ttYXAtZ2V0KCRzZWN0aW9uLXBhZGRpbmctdG9wYm90dG9tLCBtZWRpdW0pfSAvIDIpO1xuICAgICAgfVxuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICAudGlsZS1uYWtlZCB7XG4gICAgdGV4dC1kZWNvcmF0aW9uLWNvbG9yOiRib2R5LWZvbnQtY29sb3I7XG4gICAgJjpob3ZlciwgJjphY3RpdmUsICY6Zm9jdXMge1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gICAgICB0ZXh0LWRlY29yYXRpb24tY29sb3I6JGJvZHktZm9udC1jb2xvcjtcbiAgICB9XG4gICAgLmltYWdlLXdyYXAge1xuICAgICAgaGVpZ2h0OiByZW0tY2FsYygxNzgpO1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgIG1hcmdpbi1ib3R0b206IDFyZW07XG4gICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuXG4gICAgICBpbWd7XG4gICAgICAgIHdpZHRoOmF1dG87XG4gICAgICAgIG1pbi13aWR0aDowO1xuICAgICAgICBtYXgtd2lkdGg6bm9uZTtcbiAgICAgICAgaGVpZ2h0OmF1dG87XG4gICAgICAgIG1heC1oZWlnaHQ6MTAwJTtcbiAgICAgIH1cbiAgICB9XG4gICAgLml0ZW0tdGl0bGUsIC5pdGVtLWRlc2NyaXB0aW9uIHtcbiAgICAgIGNvbG9yOiAkcnVua2VlcGVyLWJsYWNrO1xuICAgIH1cbiAgfVxufVxuIiwiXG4vLyBQYWdlIGhlYWRlclxuLmZyb250LWhlcm8ge1xuICAubWFya2V0aW5nIHtcbiAgICBAaW5jbHVkZSB4eS1ncmlkLWNvbnRhaW5lcig1NXJlbSk7XG4gICAgQGluY2x1ZGUgeHktZ3JpZDtcbiAgfVxuXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwpIHtcbiAgICBiYWNrZ3JvdW5kOiB1cmwoJy4uL2ltYWdlcy9kZW1vL2hlcm8tYmctZm91bmRhdGlvbi02LXNtYWxsLnN2ZycpIGJvdHRvbSBjZW50ZXI7XG4gICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBib3R0b207XG4gICAgcGFkZGluZzogcmVtLWNhbGMoNjUlKSAwO1xuICAgIG1hcmdpbjogMCAwIHJlbS1jYWxjKDMyKTtcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gIH1cblxuICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgIGJhY2tncm91bmQ6IHVybCgnLi4vaW1hZ2VzL2RlbW8vaGVyby1iZy1mb3VuZGF0aW9uLTYtbGFyZ2Uuc3ZnJykgYm90dG9tIGNlbnRlcjtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcbiAgICBoZWlnaHQ6IHJlbS1jYWxjKDY4NSk7XG4gICAgbWFyZ2luOiAwIDAgcmVtLWNhbGMoNzIpO1xuICB9XG5cbiAgLndhdGNoIHtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsKSB7XG4gICAgICBAaW5jbHVkZSB4eS1jZWxsKDcpO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICBAaW5jbHVkZSB4eS1jZWxsKDEyKTtcbiAgICB9XG5cbiAgICBhIHtcbiAgICAgIGNvbG9yOiAjQjRDOUQxO1xuICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgIG1hcmdpbi1yaWdodDogcmVtLWNhbGMoMjApO1xuICAgIH1cblxuICAgIGE6aG92ZXIge1xuICAgICAgY29sb3I6ICNmZmY7XG4gICAgfVxuXG4gICAgI3N0YXJnYXplcnMge1xuICAgICAgOmJlZm9yZSB7XG4gICAgICAgIGNvbnRlbnQ6IFwiXFxmMDliXCI7XG4gICAgICAgIGZvbnQtZmFtaWx5OiBGb250QXdlc29tZTtcbiAgICAgICAgZm9udC1zdHlsZTogbm9ybWFsO1xuICAgICAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IGluaGVyaXQ7XG4gICAgICAgIGNvbG9yOiAjQjRDOUQxO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IHJlbS1jYWxjKDgpO1xuICAgICAgfVxuICAgIH1cblxuICAgICN0d2l0dGVyIHtcbiAgICAgIDpiZWZvcmUge1xuICAgICAgICBjb250ZW50OiBcIlxcZjA5OVwiO1xuICAgICAgICBmb250LWZhbWlseTogRm9udEF3ZXNvbWU7XG4gICAgICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBpbmhlcml0O1xuICAgICAgICBjb2xvcjogI0I0QzlEMTtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiByZW0tY2FsYyg4KTtcbiAgICAgIH1cbiAgICB9XG5cbiAgfVxuXG4gIC50YWdsaW5lIHtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsKSB7XG4gICAgICBAaW5jbHVkZSB4eS1jZWxsKDgpO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICBAaW5jbHVkZSB4eS1jZWxsKDUpO1xuICAgICAgcGFkZGluZy10b3A6IDZyZW07XG4gICAgfVxuICB9XG5cbiAgaDEge1xuICAgIGNvbG9yOiAjZmZmO1xuICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsKSB7XG4gICAgICBmb250LXNpemU6IDIuMnJlbTtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgZm9udC1zaXplOiAyLjg3NXJlbTtcbiAgICB9XG4gIH1cblxuICBoNCB7XG4gICAgY29sb3I6ICNmZWZlZmU7XG4gICAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgICBmb250LXNpemU6IDEuMzEyNXJlbTtcbiAgfVxuXG4gIC5kb3dubG9hZCB7XG4gICAgbWFyZ2luLXRvcDogcmVtLWNhbGMoMjApO1xuICB9XG59XG5cbi8vIEludHJvXG4uaW50cm8ge1xuICBAaW5jbHVkZSB4eS1ncmlkLWNvbnRhaW5lcjtcbiAgQGluY2x1ZGUgeHktZ3JpZDtcblxuICAuZnAtaW50cm8ge1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwpIHtcbiAgICAgIEBpbmNsdWRlIHh5LWNlbGwoMTIpO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICBAaW5jbHVkZSB4eS1jZWxsKDEwKTtcbiAgICAgIEBpbmNsdWRlIHh5LWNlbGwtb2Zmc2V0KDEpO1xuXG4gICAgICBoMiB7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiAzMDA7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDEuNXJlbTtcbiAgICAgIH1cblxuICAgICAgaDQge1xuICAgICAgICBmb250LXNpemU6IDEuMTI1cmVtO1xuICAgICAgICBsaW5lLWhlaWdodDogMS42O1xuICAgICAgICBjb2xvcjogIzc3NztcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMnJlbTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLy8gU2VjdGlvbiBkaXZpZGVyXG4uc2VjdGlvbi1kaXZpZGVyIHtcbiAgQGluY2x1ZGUgeHktZ3JpZC1jb250YWluZXI7XG4gIEBpbmNsdWRlIHh5LWdyaWQ7XG5cbiAgaHIge1xuICAgIEBpbmNsdWRlIHh5LWNlbGwoMTIpO1xuICAgIEBleHRlbmQgLmRvdHRlZDtcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICB9XG59XG5cbi8vIEJlbmVmaXRzXG4uYmVuZWZpdHMge1xuICBAaW5jbHVkZSB4eS1ncmlkLWNvbnRhaW5lcjtcbiAgQGluY2x1ZGUgeHktZ3JpZDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gIGhlYWRlciB7XG4gICAgQGluY2x1ZGUgeHktY2VsbCgxMik7XG5cbiAgICBoMiB7XG4gICAgICBmb250LXdlaWdodDogMzAwO1xuICAgIH1cblxuICAgIGg0IHtcbiAgICAgIGZvbnQtc2l6ZTogMS4xMjVyZW07XG4gICAgICBsaW5lLWhlaWdodDogMS42O1xuICAgICAgY29sb3I6ICM3Nzc7XG4gICAgfVxuICB9XG5cbiAgLnNlbWFudGljLFxuICAucmVzcG9uc2l2ZSxcbiAgLmN1c3RvbWl6YWJsZSxcbiAgLnByb2Zlc3Npb25hbCB7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCkge1xuICAgICAgQGluY2x1ZGUgeHktY2VsbCgxMik7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgIEBpbmNsdWRlIHh5LWNlbGwoMyk7XG4gICAgfVxuXG4gICAgaW1nIHtcbiAgICAgIHBhZGRpbmc6IDEuMjVyZW07XG4gICAgICBtYXJnaW46IDFyZW0gYXV0byAwIGF1dG87XG4gICAgfVxuXG4gICAgaDMge1xuICAgICAgY29sb3I6ICMwYTBhMGE7XG4gICAgICBmb250LXdlaWdodDogMzAwO1xuICAgICAgZm9udC1zaXplOiAxLjc1cmVtO1xuICAgIH1cblxuICAgIHAge1xuICAgICAgZm9udC1zaXplOiAwLjkzNzVyZW07XG4gICAgfVxuICB9XG5cbiAgLndoeS1mb3VuZGF0aW9uIHtcbiAgICBAaW5jbHVkZSB4eS1jZWxsKDEyKTtcbiAgICBtYXJnaW4tdG9wOiA0cmVtO1xuICB9XG59XG4iLCIua2l0Y2hlbi1zaW5rLWhlYWRlciB7XG4gIEBpbmNsdWRlIHh5LWNlbGwoMTIpO1xufVxuXG5cbi5raXRjaGVuLXNpbmstY29tcG9uZW50cyB7XG4gIGhyIHtcbiAgICBtYXJnaW46IDNyZW0gMDtcbiAgfVxuXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwpIHtcbiAgICBAaW5jbHVkZSB4eS1jZWxsKDEyKTtcbiAgfVxuXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICBAaW5jbHVkZSB4eS1jZWxsKDkpO1xuICB9XG59XG5cbi5raXRjaGVuLXNpbmstbmF2IHtcbiAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCkge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cblxuICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgQGluY2x1ZGUgeHktY2VsbCgzKTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBmbG9hdDogcmlnaHQ7XG5cbiAgICAuZG9jcy1zdWItbWVudSB7XG4gICAgICBmb250LXNpemU6IDAuODVyZW07XG4gICAgICBtYXJnaW4tdG9wOiAxcmVtO1xuICAgIH1cblxuICAgIC5kb2NzLW1lbnUtdGl0bGUge1xuICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgIGZvbnQtc2l6ZTogMC43NXJlbTtcbiAgICAgIGNvbG9yOiAkZGFyay1ncmF5O1xuICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICBsaW5lLWhlaWdodDogMTtcbiAgICAgIHBhZGRpbmctbGVmdDogMC45cmVtO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMC41cmVtO1xuICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICRtZWRpdW0tZ3JheTtcbiAgICAgIG1hcmdpbi10b3A6IDFyZW07XG4gICAgICBwYWRkaW5nLXRvcDogMS41cmVtO1xuICAgIH1cblxuICAgIC5kb2NzLXRvYyB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIHBhZGRpbmctbGVmdDogNHJlbTtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDFyZW07XG4gICAgfVxuXG4gICAgLmRvY3MtdG9jIC5hY3RpdmUge1xuICAgICAgYmFja2dyb3VuZDogIzIxOTllODtcbiAgICAgIGNvbG9yOiB3aGl0ZTtcbiAgICB9XG5cbiAgICAuZG9jcy10b2MgLmRvY3Mtc3ViLW1lbnU6Zmlyc3QtY2hpbGQgLmRvY3MtbWVudS10aXRsZSB7XG4gICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgYm9yZGVyLXRvcDogMDtcbiAgICAgIHBhZGRpbmctdG9wOiAwO1xuICAgIH1cbiAgfVxufVxuXG4ua2l0Y2hlbi1zaW5rLWdyaWQge1xuICAuZ3JpZC14IHtcbiAgICBiYWNrZ3JvdW5kOiAjZDZlY2ZhO1xuICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgICBsaW5lLWhlaWdodDogMnJlbTtcbiAgICBtYXJnaW4tYm90dG9tOiAxLjVyZW07XG4gICAgXG4gICAgLmNlbGwsOm50aC1jaGlsZChvZGQpIHtcbiAgICAgIGJhY2tncm91bmQ6ICM3YmMxZWY7XG4gICAgICBjb2xvcjogIzBhMGEwYTtcbiAgICB9XG5cbiAgICAuY2VsbDpudGgtY2hpbGQoZXZlbikge1xuICAgICAgYmFja2dyb3VuZDogIzE3NzliYTtcbiAgICAgIGNvbG9yOiAjZmVmZWZlO1xuICAgIH1cbiAgfVxufVxuIiwiLnR5cGUtZXJyb3J7XG4gIHBhZGRpbmctYm90dG9tOjMuNXJlbTtcbiAgdGV4dC1hbGlnbjpjZW50ZXI7XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKXtcbiAgICBwYWRkaW5nLXRvcDpyZW0tY2FsYyg4NSk7XG4gIH1cbiAgLmVudHJ5LXRpdGxle1xuICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgIGNvbG9yOiRwcmltYXJ5LWNvbG9yO1xuICB9XG4gIGhye1xuICAgIG1hcmdpbi10b3A6MnJlbTtcbiAgICBtYXJnaW4tYm90dG9tOjJyZW07XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSl7XG4gICAgICBtYXJnaW4tdG9wOjNyZW07XG4gICAgICBtYXJnaW4tYm90dG9tOjNyZW07XG4gICAgfVxuICB9XG4gIC5lbnRyeS1jb250ZW50e1xuICAgIG1heC13aWR0aDpyZW0tY2FsYyg2MDApO1xuICAgIEBpbmNsdWRlIG1hcmdpbi1jZW50ZXIoKTtcbiAgICB3aWR0aDo5NSU7XG5cbiAgICB1bHtcbiAgICAgIHRleHQtYWxpZ246bGVmdDtcbiAgICAgIG1heC13aWR0aDogMzUwcHg7XG4gICAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgICAgIHBhZGRpbmctdG9wOiAwLjVyZW07XG4gICAgICBwYWRkaW5nLWxlZnQ6M3JlbTtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKXtcbiAgICAgICAgcGFkZGluZy10b3A6IDAuNXJlbTtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiA0cmVtO1xuICAgICAgfVxuICAgICAgbGl7XG4gICAgICAgICY+YXtcbiAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogY2FwaXRhbGl6ZTtcbiAgICAgICAgICB0ZXh0LWRlY29yYXRpb246dW5kZXJsaW5lO1xuICAgICAgICAgIGRpc3BsYXk6aW5saW5lO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG4gIC5ib3R0b217XG4gICAgZm9udC1zaXplOjEuMXJlbTtcbiAgICBsaW5lLWhlaWdodDogMS41cmVtO1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pe1xuICAgICAgZm9udC1zaXplOjEuMnJlbTtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxLjhyZW07XG4gICAgfVxuICB9XG4gIC5lcnJvcntcbiAgICBzcGFue1xuICAgICAgdGV4dC1hbGlnbjpjZW50ZXI7XG4gICAgICBjb2xvcjokcHJpbWFyeS1jb2xvcjtcbiAgICAgIGZvbnQtc2l6ZToxMHJlbTtcblxuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pe1xuICAgICAgICBmb250LXNpemU6MTVyZW07XG4gICAgICB9XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKXtcbiAgICAgICAgZm9udC1zaXplOjIwcmVtO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICAuaW5mby1ibG9ja3tcbiAgICBwe1xuICAgICAgZm9udC13ZWlnaHQ6JGdsb2JhbC13ZWlnaHQtc2VtaWJvbGQ7XG4gICAgICBtYXJnaW4tYm90dG9tOjA7XG4gICAgfVxuICB9XG59IiwiLmJsb2ctaG9tZXtcblxuXHRAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcblx0XHQmID4gLnRvcC1wb3N0IHtcblx0XHRcdCY6Zmlyc3QtY2hpbGQge1xuXHRcdFx0XHRtYXJnaW4tYm90dG9tOiAwO1xuXHRcdFx0fVxuXHRcdH1cblx0fVxuXHRAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG5cdFx0QGluY2x1ZGUgc2VjdGlvbi1zcGFjaW5nLW92ZXJyaWRlKHRvcCwgcGFkZGluZywgMik7XG5cdH1cblxuXHQmID4gc2VjdGlvbiB7XG5cdFx0Jjpub3QoOmxhc3Qtb2YtdHlwZSkge1xuXHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gZG93bikge1xuXHRcdFx0XHRtYXJnaW4tYm90dG9tOiAzcmVtO1xuXHRcdFx0fVxuXHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuXHRcdFx0XHRAaW5jbHVkZSBzZWN0aW9uLXNwYWNpbmctb3ZlcnJpZGUoYm90dG9tLG1hcmdpbiwyKTtcblx0XHRcdH1cblx0XHR9XG5cdH1cblxuXHQjYnJvd3NlLWJ5LWNhdGVnb3J5IHtcblx0XHRtYXJnaW4tdG9wOiAzcmVtO1xuXHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcblx0XHRcdG1hcmdpbi10b3A6IDA7XG5cdFx0fVxuXHR9XG5cblx0LmxhdGVzdC10aXRsZSB7XG5cdFx0Y29sb3I6ICRhc2ljcy1ibHVlO1xuXHRcdEBpbmNsdWRlIHNlY3Rpb24tc3BhY2luZy1vdmVycmlkZShib3R0b20sIG1hcmdpbiwgMyk7XG5cdFx0dGV4dC1hbGlnbjogY2VudGVyO1xuXHRcdEBleHRlbmQgLnNob3ctYXMtaDM7XG5cdH1cbn0iLCIudXNlci1sb2dpbiB7XG5cdGhlaWdodDogNTB2aDtcblx0bWluLWhlaWdodDogMTguNzVyZW07XG5cdGRpc3BsYXk6IGZsZXg7XG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cdHRleHQtYWxpZ246IGNlbnRlcjtcblx0XG5cdGEge1xuXHRcdGRpc3BsYXk6IGJsb2NrO1xuXHR9XG5cblx0LmxvZ2luLXRpdGxlIHtcblx0XHRAZXh0ZW5kIC5zaG93LWFzLWgyO1xuXHRcdHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG5cdFx0bWFyZ2luLWJvdHRvbTogMS41cmVtO1xuXHR9XG5cblx0LmxvZ2luLWxpbmsge1xuXHRcdG1hcmdpbi1ib3R0b206IDFyZW07XG5cdH1cblx0LmZvcmdvdC1wYXNzd29yZC1saW5rIHtcblx0XHRtYXJnaW4tYm90dG9tOiAxcmVtO1xuXHR9XG5cdC5zaWduLXVwLWNvcHkge1xuXHRcdGNvbG9yOiAkZGFyay1ncmF5O1xuXHR9XG5cdC5zaWduLXVwLWxpbmsge1xuXHRcdGNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcblx0fVxuXG59XG4iXX0= */
