/*
==========================================================================
    Import all SCSS parts here
==========================================================================
*/
/*
==========================================================================
	Mixins
==========================================================================
*/
/*
==========================================================================
	Functions
==========================================================================
*/
/*
==========================================================================
    Variables
==========================================================================
*/
/*!
 * Bootstrap v3.3.7 (http://getbootstrap.com)
 * Copyright 2011-2016 Twitter, Inc.
 * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
 */
.fade {
  opacity: 0;
  transition: opacity 0.15s linear; }
  .fade.in {
    opacity: 1; }

.collapse {
  display: none; }
  .collapse.in {
    display: block; }

tr.collapse.in {
  display: table-row; }

tbody.collapse.in {
  display: table-row-group; }

.collapsing {
  position: relative;
  height: 0;
  overflow: hidden;
  transition-property: height, visibility;
  transition-duration: 0.35s;
  transition-timing-function: ease; }

@-ms-viewport {
  width: device-width; }

.visible-xs {
  display: none !important; }

.visible-sm {
  display: none !important; }

.visible-md {
  display: none !important; }

.visible-lg {
  display: none !important; }

.visible-xs-block,
.visible-xs-inline,
.visible-xs-inline-block,
.visible-sm-block,
.visible-sm-inline,
.visible-sm-inline-block,
.visible-md-block,
.visible-md-inline,
.visible-md-inline-block,
.visible-lg-block,
.visible-lg-inline,
.visible-lg-inline-block {
  display: none !important; }

@media (max-width: 767px) {
  .visible-xs {
    display: block !important; }
  table.visible-xs {
    display: table !important; }
  tr.visible-xs {
    display: table-row !important; }
  th.visible-xs,
  td.visible-xs {
    display: table-cell !important; } }

@media (max-width: 767px) {
  .visible-xs-block {
    display: block !important; } }

@media (max-width: 767px) {
  .visible-xs-inline {
    display: inline !important; } }

@media (max-width: 767px) {
  .visible-xs-inline-block {
    display: inline-block !important; } }

@media (min-width: 768px) and (max-width: 991px) {
  .visible-sm {
    display: block !important; }
  table.visible-sm {
    display: table !important; }
  tr.visible-sm {
    display: table-row !important; }
  th.visible-sm,
  td.visible-sm {
    display: table-cell !important; } }

@media (min-width: 768px) and (max-width: 991px) {
  .visible-sm-block {
    display: block !important; } }

@media (min-width: 768px) and (max-width: 991px) {
  .visible-sm-inline {
    display: inline !important; } }

@media (min-width: 768px) and (max-width: 991px) {
  .visible-sm-inline-block {
    display: inline-block !important; } }

@media (min-width: 992px) and (max-width: 1199px) {
  .visible-md {
    display: block !important; }
  table.visible-md {
    display: table !important; }
  tr.visible-md {
    display: table-row !important; }
  th.visible-md,
  td.visible-md {
    display: table-cell !important; } }

@media (min-width: 992px) and (max-width: 1199px) {
  .visible-md-block {
    display: block !important; } }

@media (min-width: 992px) and (max-width: 1199px) {
  .visible-md-inline {
    display: inline !important; } }

@media (min-width: 992px) and (max-width: 1199px) {
  .visible-md-inline-block {
    display: inline-block !important; } }

@media (min-width: 1200px) {
  .visible-lg {
    display: block !important; }
  table.visible-lg {
    display: table !important; }
  tr.visible-lg {
    display: table-row !important; }
  th.visible-lg,
  td.visible-lg {
    display: table-cell !important; } }

@media (min-width: 1200px) {
  .visible-lg-block {
    display: block !important; } }

@media (min-width: 1200px) {
  .visible-lg-inline {
    display: inline !important; } }

@media (min-width: 1200px) {
  .visible-lg-inline-block {
    display: inline-block !important; } }

@media (max-width: 767px) {
  .hidden-xs {
    display: none !important; } }

@media (min-width: 768px) and (max-width: 991px) {
  .hidden-sm {
    display: none !important; } }

@media (min-width: 992px) and (max-width: 1199px) {
  .hidden-md {
    display: none !important; } }

@media (min-width: 1200px) {
  .hidden-lg {
    display: none !important; } }

.visible-print {
  display: none !important; }

@media print {
  .visible-print {
    display: block !important; }
  table.visible-print {
    display: table !important; }
  tr.visible-print {
    display: table-row !important; }
  th.visible-print,
  td.visible-print {
    display: table-cell !important; } }

.visible-print-block {
  display: none !important; }
  @media print {
    .visible-print-block {
      display: block !important; } }

.visible-print-inline {
  display: none !important; }
  @media print {
    .visible-print-inline {
      display: inline !important; } }

.visible-print-inline-block {
  display: none !important; }
  @media print {
    .visible-print-inline-block {
      display: inline-block !important; } }

@media print {
  .hidden-print {
    display: none !important; } }

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

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

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

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

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

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

/*
 * Nivo Lightbox v1.2.0
 * http://dev7studios.com/nivo-lightbox
 *
 * Copyright 2013, Dev7studios
 * Free to use and abuse under the MIT license.
 * http://www.opensource.org/licenses/mit-license.php
 */
.nivo-lightbox-overlay {
  position: fixed;
  top: 0;
  left: 0;
  z-index: 99998;
  width: 100%;
  height: 100%;
  overflow: hidden;
  visibility: hidden;
  opacity: 0;
  box-sizing: border-box; }

.nivo-lightbox-overlay.nivo-lightbox-open {
  visibility: visible;
  opacity: 1; }

.nivo-lightbox-wrap {
  position: absolute;
  top: 10%;
  bottom: 10%;
  left: 10%;
  right: 10%; }

.nivo-lightbox-content {
  width: 100%;
  height: 100%; }

.nivo-lightbox-title-wrap {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  z-index: 99999;
  text-align: center; }

.nivo-lightbox-nav {
  display: none; }

.nivo-lightbox-prev {
  position: absolute;
  top: 50%;
  left: 0; }

.nivo-lightbox-next {
  position: absolute;
  top: 50%;
  right: 0; }

.nivo-lightbox-close {
  position: absolute;
  top: 2%;
  right: 2%; }

.nivo-lightbox-image {
  text-align: center; }

.nivo-lightbox-image img {
  max-width: 100%;
  max-height: 100%;
  width: auto;
  height: auto;
  vertical-align: middle; }

.nivo-lightbox-content iframe {
  width: 100%;
  height: 100%; }

.nivo-lightbox-inline,
.nivo-lightbox-ajax {
  max-height: 100%;
  overflow: auto;
  box-sizing: border-box;
  /* https://bugzilla.mozilla.org/show_bug.cgi?id=308801 */ }

.nivo-lightbox-error {
  display: table;
  text-align: center;
  width: 100%;
  height: 100%;
  color: #fff;
  text-shadow: 0 1px 1px #000; }

.nivo-lightbox-error p, .nivo-lightbox-error .gform_wrapper .gform_fields .gfield.gsection .gsection_description, .gform_wrapper .gform_fields .gfield.gsection .nivo-lightbox-error .gsection_description {
  display: table-cell;
  vertical-align: middle; }

/* Effects
 **********************************************/
.nivo-lightbox-notouch .nivo-lightbox-effect-fade,
.nivo-lightbox-notouch .nivo-lightbox-effect-fadeScale,
.nivo-lightbox-notouch .nivo-lightbox-effect-slideLeft,
.nivo-lightbox-notouch .nivo-lightbox-effect-slideRight,
.nivo-lightbox-notouch .nivo-lightbox-effect-slideUp,
.nivo-lightbox-notouch .nivo-lightbox-effect-slideDown,
.nivo-lightbox-notouch .nivo-lightbox-effect-fall {
  transition: all 0.2s ease-in-out; }

/* fadeScale */
.nivo-lightbox-effect-fadeScale .nivo-lightbox-wrap {
  transition: all 0.3s;
  transform: scale(0.7); }

.nivo-lightbox-effect-fadeScale.nivo-lightbox-open .nivo-lightbox-wrap {
  transform: scale(1); }

/* slideLeft / slideRight / slideUp / slideDown */
.nivo-lightbox-effect-slideLeft .nivo-lightbox-wrap,
.nivo-lightbox-effect-slideRight .nivo-lightbox-wrap,
.nivo-lightbox-effect-slideUp .nivo-lightbox-wrap,
.nivo-lightbox-effect-slideDown .nivo-lightbox-wrap {
  transition: all 0.3s cubic-bezier(0.25, 0.5, 0.5, 0.9); }

.nivo-lightbox-effect-slideLeft .nivo-lightbox-wrap {
  transform: translateX(-10%); }

.nivo-lightbox-effect-slideRight .nivo-lightbox-wrap {
  transform: translateX(10%); }

.nivo-lightbox-effect-slideLeft.nivo-lightbox-open .nivo-lightbox-wrap,
.nivo-lightbox-effect-slideRight.nivo-lightbox-open .nivo-lightbox-wrap {
  transform: translateX(0); }

.nivo-lightbox-effect-slideDown .nivo-lightbox-wrap {
  transform: translateY(-10%); }

.nivo-lightbox-effect-slideUp .nivo-lightbox-wrap {
  transform: translateY(10%); }

.nivo-lightbox-effect-slideUp.nivo-lightbox-open .nivo-lightbox-wrap,
.nivo-lightbox-effect-slideDown.nivo-lightbox-open .nivo-lightbox-wrap {
  transform: translateY(0); }

/* fall */
.nivo-lightbox-body-effect-fall .nivo-lightbox-effect-fall {
  perspective: 1000px; }

.nivo-lightbox-effect-fall .nivo-lightbox-wrap {
  transition: all 0.3s ease-out;
  transform: translateZ(300px); }

.nivo-lightbox-effect-fall.nivo-lightbox-open .nivo-lightbox-wrap {
  transform: translateZ(0); }

/*
 * Nivo Lightbox Default Theme v1.0
 * http://dev7studios.com/nivo-lightbox
 *
 * Copyright 2013, Dev7studios
 * Free to use and abuse under the MIT license.
 * http://www.opensource.org/licenses/mit-license.php
 */
.nivo-lightbox-theme-default.nivo-lightbox-overlay {
  background: #666;
  background: rgba(0, 0, 0, 0.6); }

.nivo-lightbox-theme-default .nivo-lightbox-content.nivo-lightbox-loading {
  background: url(../sass/nivo-lightbox/themes/default/loading.gif) no-repeat 50% 50%; }

.nivo-lightbox-theme-default .nivo-lightbox-nav {
  top: 10%;
  width: 8%;
  height: 80%;
  text-indent: -9999px;
  background-repeat: no-repeat;
  background-position: 50% 50%;
  opacity: 0.5; }

.nivo-lightbox-theme-default .nivo-lightbox-nav:hover {
  opacity: 1;
  background-color: rgba(0, 0, 0, 0.5); }

.nivo-lightbox-theme-default .nivo-lightbox-prev {
  background-image: url(../sass/nivo-lightbox/themes/default/prev.png);
  border-radius: 0 3px 3px 0; }

.nivo-lightbox-theme-default .nivo-lightbox-next {
  background-image: url(../sass/nivo-lightbox/themes/default/next.png);
  border-radius: 3px 0 0 3px; }

.nivo-lightbox-theme-default .nivo-lightbox-close {
  display: block;
  background: url(../sass/nivo-lightbox/themes/default/close.png) no-repeat 5px 5px;
  width: 16px;
  height: 16px;
  text-indent: -9999px;
  padding: 5px;
  opacity: 0.5; }

.nivo-lightbox-theme-default .nivo-lightbox-close:hover {
  opacity: 1; }

.nivo-lightbox-theme-default .nivo-lightbox-title-wrap {
  bottom: -7%; }

.nivo-lightbox-theme-default .nivo-lightbox-title {
  font: 14px/20px 'Helvetica Neue', Helvetica, Arial, sans-serif;
  font-style: normal;
  font-weight: normal;
  background: #000;
  color: #fff;
  padding: 7px 15px;
  border-radius: 30px; }

.nivo-lightbox-theme-default .nivo-lightbox-image img {
  background: #fff;
  box-shadow: 0px 1px 1px rgba(0, 0, 0, 0.4); }

.nivo-lightbox-theme-default .nivo-lightbox-ajax,
.nivo-lightbox-theme-default .nivo-lightbox-inline {
  background: #fff;
  padding: 40px;
  box-shadow: 0px 1px 1px rgba(0, 0, 0, 0.4); }

@media (-webkit-min-device-pixel-ratio: 1.3), (min--moz-device-pixel-ratio: 1.3), (min-device-pixel-ratio: 1.3), (min-resolution: 1.3dppx) {
  .nivo-lightbox-theme-default .nivo-lightbox-content.nivo-lightbox-loading {
    background-image: url(../sass/nivo-lightbox/themes/default/loading@2x.gif);
    background-size: 32px 32px; }
  .nivo-lightbox-theme-default .nivo-lightbox-prev {
    background-image: url(../sass/nivo-lightbox/themes/default/prev@2x.png);
    background-size: 48px 48px; }
  .nivo-lightbox-theme-default .nivo-lightbox-next {
    background-image: url(../sass/nivo-lightbox/themes/default/next@2x.png);
    background-size: 48px 48px; }
  .nivo-lightbox-theme-default .nivo-lightbox-close {
    background-image: url(../sass/nivo-lightbox/themes/default/close@2x.png);
    background-size: 16px 16px; } }

.pika-single {
  position: relative;
  z-index: 9999;
  display: block;
  font-family: inherit;
  color: #333;
  *zoom: 1; }
  .pika-single:before, .pika-single:after {
    content: ' ';
    display: table; }
  .pika-single:after {
    clear: both; }
  .pika-single.is-hidden {
    display: none; }
  .pika-single.is-bound {
    position: absolute !important;
    box-shadow: 0 10px 25px -5px rgba(0, 0, 0, 0.25); }
  .pika-single .pika-lendar {
    float: left;
    padding: 0;
    width: 100%;
    background: #fff; }
    .pika-single .pika-lendar .pika-title {
      position: relative;
      margin: 0 0 10px;
      text-align: center; }
      .pika-single .pika-lendar .pika-title .pika-label {
        display: inline-block;
        *display: inline;
        position: relative;
        z-index: 9999;
        overflow: hidden;
        margin: 0;
        padding: 5px 3px;
        color: #333;
        font-size: 1em;
        line-height: 20px;
        font-weight: 700;
        background-color: #fff;
        transition: all .15s ease-in-out; }
        .pika-single .pika-lendar .pika-title .pika-label:hover {
          color: #001f82; }
        .pika-single .pika-lendar .pika-title .pika-label select {
          cursor: pointer;
          position: absolute;
          z-index: 9998;
          margin: 0;
          left: 0;
          top: 5px;
          height: auto;
          padding: 0;
          filter: alpha(opacity=0);
          opacity: 0; }
      .pika-single .pika-lendar .pika-title .pika-select {
        display: inline-block;
        *display: inline; }
    .pika-single .pika-lendar .pika-prev,
    .pika-single .pika-lendar .pika-next {
      display: block;
      cursor: pointer;
      position: relative;
      outline: none;
      border: 0;
      padding: 0;
      width: 20px;
      height: 30px;
      text-indent: 20px;
      /* hide text using text-indent trick, using width value (it's enough) */
      white-space: nowrap;
      overflow: hidden;
      background-color: transparent;
      background-position: center center;
      background-repeat: no-repeat;
      background-size: 75% 75%;
      opacity: .5;
      *position: absolute;
      *top: 0;
      transition: all .15s ease-in-out; }
      .pika-single .pika-lendar .pika-prev:hover,
      .pika-single .pika-lendar .pika-next:hover {
        opacity: 1; }
      .pika-single .pika-lendar .pika-prev.is-disabled,
      .pika-single .pika-lendar .pika-next.is-disabled {
        cursor: not-allowed;
        opacity: .2; }
    .pika-single .pika-lendar .pika-prev,
    .pika-single .pika-lendar .is-rtl .pika-next {
      float: left;
      background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAeCAYAAAAsEj5rAAAAUklEQVR42u3VMQoAIBADQf8Pgj+OD9hG2CtONJB2ymQkKe0HbwAP0xucDiQWARITIDEBEnMgMQ8S8+AqBIl6kKgHiXqQqAeJepBo/z38J/U0uAHlaBkBl9I4GwAAAABJRU5ErkJggg==");
      *left: 0; }
    .pika-single .pika-lendar .pika-next,
    .pika-single .pika-lendar .is-rtl .pika-prev {
      float: right;
      background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAeCAYAAAAsEj5rAAAAU0lEQVR42u3VOwoAMAgE0dwfAnNjU26bYkBCFGwfiL9VVWoO+BJ4Gf3gtsEKKoFBNTCoCAYVwaAiGNQGMUHMkjGbgjk2mIONuXo0nC8XnCf1JXgArVIZAQh5TKYAAAAASUVORK5CYII=");
      *right: 0; }
    .pika-single .pika-lendar .pika-table {
      width: 100%;
      border-collapse: collapse;
      border-spacing: 0;
      border: 0; }
      .pika-single .pika-lendar .pika-table th,
      .pika-single .pika-lendar .pika-table td {
        width: 14.285714285714286%;
        padding: 0; }
      .pika-single .pika-lendar .pika-table th {
        padding: 0 0 10px;
        color: #999999;
        font-size: 12px;
        line-height: 25px;
        font-weight: bold;
        text-align: center;
        text-transform: uppercase; }
      .pika-single .pika-lendar .pika-table abbr {
        cursor: default;
        border: 0;
        text-decoration: none; }
      .pika-single .pika-lendar .pika-table td {
        padding: 1px; }
        .pika-single .pika-lendar .pika-table td:nth-child(1) .pika-button, .pika-single .pika-lendar .pika-table td:nth-child(7) .pika-button {
          background-color: #d9ddec;
          color: #001f82;
          font-weight: 900; }
        .pika-single .pika-lendar .pika-table td.is-today .pika-button {
          background: #fff;
          font-weight: 900; }
        .pika-single .pika-lendar .pika-table td.is-selected .pika-button {
          background: #001f82;
          color: #fff;
          font-weight: 900; }
          .pika-single .pika-lendar .pika-table td.is-selected .pika-button:hover {
            background: #001f82; }
        .pika-single .pika-lendar .pika-table td.is-inrange .pika-button {
          background: #334c9b;
          color: #fff; }
        .pika-single .pika-lendar .pika-table td.is-startrange .pika-button, .pika-single .pika-lendar .pika-table td.is-endrange .pika-button {
          background: #001f82;
          color: #fff; }
        .pika-single .pika-lendar .pika-table td.is-disabled.is-startrange .pika-button, .pika-single .pika-lendar .pika-table td.is-disabled.is-endrange .pika-button, .pika-single .pika-lendar .pika-table td.is-outside-current-month.is-startrange .pika-button, .pika-single .pika-lendar .pika-table td.is-outside-current-month.is-endrange .pika-button {
          background: #001f82;
          color: #fff;
          opacity: 1; }
        .pika-single .pika-lendar .pika-table td.is-disabled.is-inrange .pika-button, .pika-single .pika-lendar .pika-table td.is-outside-current-month.is-inrange .pika-button {
          background: #334c9b;
          color: #fff;
          opacity: 1; }
        .pika-single .pika-lendar .pika-table td.is-disabled.is-today .pika-button, .pika-single .pika-lendar .pika-table td.is-outside-current-month.is-today .pika-button {
          background: #fff;
          color: #001f82;
          font-weight: 900;
          opacity: 1; }
        .pika-single .pika-lendar .pika-table td.is-disabled .pika-button, .pika-single .pika-lendar .pika-table td.is-outside-current-month .pika-button {
          pointer-events: none;
          background: #f9f9fc;
          color: #cccccc;
          cursor: default; }
        .pika-single .pika-lendar .pika-table td .pika-button {
          display: block;
          box-sizing: border-box;
          -moz-box-sizing: border-box;
          outline: none;
          width: 100%;
          padding: 12px 6px;
          margin: 0;
          border: 0;
          background-color: #e6e9f3;
          color: #001f82;
          font-family: inherit;
          font-size: .875em;
          line-height: 1em;
          text-align: center;
          cursor: pointer;
          transition: all .15s ease-in-out; }
          .pika-single .pika-lendar .pika-table td .pika-button:hover {
            background: #001f82;
            color: #fff; }
      .pika-single .pika-lendar .pika-table .pika-week {
        font-size: .75em;
        color: #999999; }

/*
==========================================================================
    Base styles
==========================================================================
*/
* {
  box-sizing: border-box !important;
  padding: 0px;
  margin: 0px; }

*:focus {
  outline: none !important; }

html {
  font-size: 16px;
  -webkit-text-size-adjust: 100%; }

body {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: column;
  flex-direction: column;
  -ms-flex-align: stretch;
  align-items: stretch;
  padding: 0;
  margin: 0;
  background: #fff;
  font-family: "Captura", system-ui, sans-serif;
  font-size: 1em;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  text-rendering: optimizeLegibility; }

a,
img,
a img {
  border: none; }

a {
  position: relative;
  top: 0;
  color: #001f82;
  text-decoration: none;
  transition: all .15s ease-in-out, top 0s;
  cursor: pointer; }
  a:hover, a:focus {
    color: #333;
    text-decoration: underline; }
  a:active {
    top: 1px; }

button {
  position: relative;
  top: 0;
  transition: all .15s ease-in-out, top 0s;
  cursor: pointer; }
  button:active {
    top: 1px; }

a .fa-arrow-left,
a .fa-arrow-right,
button .fa-arrow-left,
button .fa-arrow-right {
  position: relative;
  transition: transform .15s ease-in-out;
  will-change: transform; }

a:hover .fa-arrow-left, a:focus .fa-arrow-left,
button:hover .fa-arrow-left,
button:focus .fa-arrow-left {
  transform: translate3d(-0.25em, 0, 0); }

a:hover .fa-arrow-right, a:focus .fa-arrow-right,
button:hover .fa-arrow-right,
button:focus .fa-arrow-right {
  transform: translate3d(0.25em, 0, 0); }

p, .gform_wrapper .gform_fields .gfield.gsection .gsection_description {
  display: block;
  color: #333;
  font-size: 1em;
  line-height: 1.618em; }
  p.caption, .gform_wrapper .gform_fields .gfield.gsection .caption.gsection_description {
    color: #999;
    font-size: .875em; }

hr {
  display: block;
  clear: both;
  width: 100%;
  margin: 20px auto;
  padding: 0;
  height: 0;
  border: 0;
  border-top: 1px solid #ebebeb; }

h1,
h2,
h3,
h4,
h5,
h6 {
  padding: 0;
  margin: 0;
  font-family: "Captura", system-ui, sans-serif;
  color: #262626;
  line-height: 1.3em; }

.clear {
  display: block;
  width: 100%;
  clear: both;
  height: 0px; }

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

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

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

.text-justify {
  text-align: justify; }

.text-nowrap {
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis; }

.img-responsive {
  display: block;
  max-width: 100%;
  height: auto; }

.img-wide {
  display: block;
  width: 100%;
  height: auto; }

.icon-left {
  margin-right: .5em; }

.icon-right {
  margin-left: .5em; }

.icon-center {
  margin: 0 .5em; }

.icon-light {
  opacity: .5; }

.spacer {
  display: block;
  clear: both;
  width: 100%; }
  .spacer.spacer10 {
    height: 10px; }
  .spacer.spacer20 {
    height: 20px; }
  .spacer.spacer30 {
    height: 30px; }
  .spacer.spacer40 {
    height: 40px; }
  .spacer.spacer50 {
    height: 50px; }
  .spacer.spacer100 {
    height: 100px; }
  .spacer.spacer250 {
    height: 250px; }
  .spacer.spacer500 {
    height: 500px; }
  .spacer.spacer1000 {
    height: 1000px; }

.margin {
  margin: 2em 0; }
  .margin:first-child {
    margin-top: 0; }
  .margin:last-child {
    margin-bottom: 0; }
  .margin-top {
    margin-top: 2em; }
  .margin-bottom {
    margin-bottom: 2em; }
  .margin.margin--small {
    margin: 1em 0; }
    .margin.margin--small:first-child {
      margin-top: 0; }
    .margin.margin--small:last-child {
      margin-bottom: 0; }
    .margin.margin--small-top {
      margin-top: 1em; }
    .margin.margin--small-bottom {
      margin-bottom: 1em; }

.nomargin {
  margin: 0 !important; }
  .nomargin--top {
    margin-top: 0 !important; }
  .nomargin--bottom {
    margin-bottom: 0 !important; }

.nopadding {
  padding: 0 !important; }
  .nopadding--top {
    padding-top: 0 !important; }
  .nopadding--bottom {
    padding-bottom: 0 !important; }

.col-success {
  color: green; }

.col-warning {
  color: orange; }

.col-error {
  color: red; }

.slick-list,
.slick-track {
  height: 100%; }

.display-flex {
  display: -ms-flexbox;
  display: flex; }

.display-block {
  display: block; }

.display-inline {
  display: inline; }

.display-inline-block {
  display: inline-block; }

.float-left {
  float: left; }

.float-right {
  float: right; }

.clear-before:before {
  content: '';
  display: table;
  clear: both; }

.clear-after:after {
  content: '';
  display: table;
  clear: both; }

mark {
  padding: .1em .25em;
  border-radius: .5em;
  background-color: #d9ddec;
  color: #262626; }

.input-style-reset {
  -webkit-appearance: none;
  appearance: none;
  border-radius: 0;
  border: 0;
  background: none;
  font-family: inherit; }

.position-static {
  position: static; }

.position-relative {
  position: relative; }

.position-absolute {
  position: absolute; }

.flex-wrapper {
  display: -ms-flexbox;
  display: flex; }
  .flex-wrapper.direction-row {
    -ms-flex-direction: row;
    flex-direction: row; }
  .flex-wrapper.direction-row-reverse {
    -ms-flex-direction: row-reverse;
    flex-direction: row-reverse; }
  .flex-wrapper.direction-column {
    -ms-flex-direction: column;
    flex-direction: column; }
  .flex-wrapper.direction-column-reverse {
    -ms-flex-direction: column-reverse;
    flex-direction: column-reverse; }
  .flex-wrapper.flex-wrap {
    -ms-flex-wrap: wrap;
    flex-wrap: wrap; }
  .flex-wrapper.align-start {
    -ms-flex-align: start;
    align-items: flex-start; }
  .flex-wrapper.align-center {
    -ms-flex-align: center;
    align-items: center; }
  .flex-wrapper.align-end {
    -ms-flex-align: end;
    align-items: flex-end; }
  .flex-wrapper.align-stretch {
    -ms-flex-align: stretch;
    align-items: stretch; }
  .flex-wrapper.align-between {
    -ms-flex-align: space-between;
    align-items: space-between; }
  .flex-wrapper.align-around {
    -ms-flex-align: space-around;
    align-items: space-around; }
  .flex-wrapper.justify-start {
    -ms-flex-pack: start;
    justify-content: flex-start; }
  .flex-wrapper.justify-center {
    -ms-flex-pack: center;
    justify-content: center; }
  .flex-wrapper.justify-end {
    -ms-flex-pack: end;
    justify-content: flex-end; }
  .flex-wrapper.justify-between {
    -ms-flex-pack: justify;
    justify-content: space-between; }
  .flex-wrapper.justify-around {
    -ms-flex-pack: distribute;
    justify-content: space-around; }

.flex-spacer,
.flex-grow {
  -ms-flex-positive: 1;
  flex-grow: 1; }

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

::selection {
  background-color: #005eef;
  color: #fff; }

.hidden {
  display: none !important; }

.narrow {
  max-width: 900px !important; }

.centered {
  margin-left: auto !important;
  margin-right: auto !important; }

.col-prim {
  color: #001f82 !important; }

.col-sec {
  color: #005eef !important; }

.col-tert {
  color: #7705bc !important; }

/*
==========================================================================
    Font Face
==========================================================================
*/
@font-face {
  font-family: 'Captura';
  font-style: normal;
  font-weight: normal;
  src: url("../fonts/captura/captura-regular.woff2") format("woff2"), url("../fonts/captura/captura-regular.woff") format("woff"), url("../fonts/captura/captura-regular.otf") format("opentype"); }

@font-face {
  font-family: 'Captura';
  font-style: normal;
  font-weight: bold;
  src: url("../fonts/captura/captura-black.woff2") format("woff2"), url("../fonts/captura/captura-black.woff") format("woff"), url("../fonts/captura/captura-black.otf") format("opentype"); }

/*
==========================================================================
	Animations
    Great CSS animation resource: http://animista.net

    Animate IN
==========================================================================
*/
@keyframes fade-in {
  0% {
    opacity: 0; }
  100% {
    opacity: 1; } }

@keyframes fade-in-up {
  0% {
    opacity: 0;
    transform: translate3d(0, 10vh, 0); }
  100% {
    opacity: 1;
    transform: translate3d(0, 0, 0); } }

@keyframes fade-in-down {
  0% {
    opacity: 0;
    transform: translate3d(0, -10vh, 0); }
  100% {
    opacity: 1;
    transform: translate3d(0, 0, 0); } }

@keyframes fade-in-left {
  0% {
    opacity: 0;
    transform: translate3d(10vw, 0, 0); }
  100% {
    opacity: 1;
    transform: translate3d(0, 0, 0); } }

@keyframes fade-in-right {
  0% {
    opacity: 0;
    transform: translate3d(-10vw, 0, 0); }
  100% {
    opacity: 1;
    transform: translate3d(0, 0, 0); } }

@keyframes fade-in-scale-down {
  0% {
    opacity: 0;
    transform: scale(1.5); }
  100% {
    opacity: 1;
    transform: scale(1); } }

@keyframes fade-in-scale-up {
  0% {
    opacity: 0;
    transform: scale(0.5); }
  100% {
    opacity: 1;
    transform: scale(1); } }

/*
==========================================================================
    Animate OUT
==========================================================================
*/
@keyframes fade-out {
  0% {
    opacity: 1; }
  100% {
    opacity: 0; } }

@keyframes fade-out-up {
  0% {
    opacity: 1;
    transform: translate3d(0, 0, 0); }
  100% {
    opacity: 0;
    transform: translate3d(0, -10vh, 0); } }

@keyframes fade-out-down {
  0% {
    opacity: 1;
    transform: translate3d(0, 0, 0); }
  100% {
    opacity: 0;
    transform: translate3d(0, 10vh, 0); } }

@keyframes fade-out-left {
  0% {
    opacity: 1;
    transform: translate3d(0, 0, 0); }
  100% {
    opacity: 0;
    transform: translate3d(-10vw, 0, 0); } }

@keyframes fade-out-right {
  0% {
    opacity: 1;
    transform: translate3d(0, 0, 0); }
  100% {
    opacity: 0;
    transform: translate3d(10vw, 0, 0); } }

@keyframes fade-out-scale-down {
  0% {
    opacity: 1;
    transform: scale(1); }
  100% {
    opacity: 0;
    transform: scale(0.5); } }

@keyframes fade-out-scale-up {
  0% {
    opacity: 1;
    transform: scale(1); }
  100% {
    opacity: 0;
    transform: scale(1.5); } }

/*
==========================================================================
    Rotation
==========================================================================
*/
@keyframes rotate-90-clockwise {
  0% {
    transform: rotate(0deg); }
  100% {
    transform: rotate(90deg); } }

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

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

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

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

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

/**
 * Custom grid system
**/
.container {
  width: 100%;
  padding-right: 15px;
  padding-left: 15px;
  margin-right: auto;
  margin-left: auto; }
  .container.container--fluid {
    width: 100%; }
  .container.container--narrow {
    max-width: 991px; }

@media (min-width: 768px) {
  .container {
    width: 720px; } }

@media (min-width: 992px) {
  .container {
    width: 960px; } }

@media (min-width: 1200px) {
  .container {
    width: 1140px; } }

@media (min-width: 1400px) {
  .container {
    width: 1360px; } }

/*
==========================================================================
    .content-wrapper styles
==========================================================================
*/
.content.content--inverted {
  color: #fff; }
  .content.content--inverted * {
    color: inherit; }

.content.content--columns {
  column-count: 2;
  column-gap: 60px; }

.content.content--large {
  font-size: 1.125em; }

.content.content--small {
  font-size: .875em; }

.content.content--light {
  opacity: .5; }
  .content.content--light * {
    color: #262626; }

.content.content--margin {
  margin: 1.5em 0; }
  .content.content--margin:first-child {
    margin-top: 0; }
  .content.content--margin:last-child {
    margin-bottom: 0; }

.content .wp-caption {
  max-width: 100%;
  margin: 2em auto; }
  .content .wp-caption.alignleft {
    float: left;
    margin: 2em 2.5em 2em 0; }
  .content .wp-caption.alignright {
    float: right;
    margin: 2em 0 2em 2.5em; }
  .content .wp-caption.aligncenter {
    display: block;
    margin: 2em auto; }
  .content .wp-caption:first-child {
    margin-top: 0; }
  .content .wp-caption:last-child {
    margin-bottom: 0; }
  .content .wp-caption .wp-caption-text {
    margin: 1em 0 0;
    color: #333;
    font-size: .875em;
    font-style: italic; }

.content img {
  display: block;
  max-width: 100%;
  height: auto;
  border-radius: .25em; }
  .content img.alignnone {
    display: block;
    margin: 2em auto; }
  .content img.alignleft {
    float: left;
    margin: 2em 2.5em 2em 0; }
  .content img.alignright {
    float: right;
    margin: 2em 0 2em 2.5em; }
  .content img.aligncenter {
    display: block;
    margin: 2em auto; }

.content h1,
.content h2,
.content h3,
.content h4,
.content h5,
.content h6 {
  clear: both;
  margin: 1.5em 0 .25em; }
  .content h1:first-child,
  .content h2:first-child,
  .content h3:first-child,
  .content h4:first-child,
  .content h5:first-child,
  .content h6:first-child {
    margin-top: 0; }
  .content h1:last-child,
  .content h2:last-child,
  .content h3:last-child,
  .content h4:last-child,
  .content h5:last-child,
  .content h6:last-child {
    margin-bottom: 0; }
  .content h1 + p, .content .gform_wrapper .gform_fields .gfield.gsection h1 + .gsection_description, .gform_wrapper .gform_fields .gfield.gsection .content h1 + .gsection_description,
  .content h2 + p,
  .content .gform_wrapper .gform_fields .gfield.gsection h2 + .gsection_description, .gform_wrapper .gform_fields .gfield.gsection
  .content h2 + .gsection_description,
  .content h3 + p,
  .content .gform_wrapper .gform_fields .gfield.gsection h3 + .gsection_description, .gform_wrapper .gform_fields .gfield.gsection
  .content h3 + .gsection_description,
  .content h4 + p,
  .content .gform_wrapper .gform_fields .gfield.gsection h4 + .gsection_description, .gform_wrapper .gform_fields .gfield.gsection
  .content h4 + .gsection_description,
  .content h5 + p,
  .content .gform_wrapper .gform_fields .gfield.gsection h5 + .gsection_description, .gform_wrapper .gform_fields .gfield.gsection
  .content h5 + .gsection_description,
  .content h6 + p,
  .content .gform_wrapper .gform_fields .gfield.gsection h6 + .gsection_description, .gform_wrapper .gform_fields .gfield.gsection
  .content h6 + .gsection_description {
    margin-top: .75em; }

.content h1 {
  font-size: 3.5em; }

.content h2 {
  font-size: 2em; }

.content h3 {
  font-size: 1.5em; }

.content h4 {
  font-size: 1.25em; }

.content h5 {
  font-size: 1.125em; }

.content h6 {
  font-size: 1em; }

.content p, .content .gform_wrapper .gform_fields .gfield.gsection .gsection_description, .gform_wrapper .gform_fields .gfield.gsection .content .gsection_description {
  margin: 1.5em 0;
  line-height: 1.8em; }
  .content p:first-child, .content .gform_wrapper .gform_fields .gfield.gsection .gsection_description:first-child, .gform_wrapper .gform_fields .gfield.gsection .content .gsection_description:first-child {
    margin-top: 0; }
  .content p:last-child, .content .gform_wrapper .gform_fields .gfield.gsection .gsection_description:last-child, .gform_wrapper .gform_fields .gfield.gsection .content .gsection_description:last-child {
    margin-bottom: 0; }
  .content p a, .content .gform_wrapper .gform_fields .gfield.gsection .gsection_description a, .gform_wrapper .gform_fields .gfield.gsection .content .gsection_description a {
    text-decoration: underline; }
    .content p a:hover, .content .gform_wrapper .gform_fields .gfield.gsection .gsection_description a:hover, .gform_wrapper .gform_fields .gfield.gsection .content .gsection_description a:hover, .content p a:focus, .content .gform_wrapper .gform_fields .gfield.gsection .gsection_description a:focus, .gform_wrapper .gform_fields .gfield.gsection .content .gsection_description a:focus {
      text-decoration: none; }
  .content p .btn, .content .gform_wrapper .gform_fields .gfield.gsection .gsection_description .btn, .gform_wrapper .gform_fields .gfield.gsection .content .gsection_description .btn, .content p form input[type="button"], .content form p input[type="button"], .content .gform_wrapper .gform_fields .gfield.gsection .gsection_description form input[type="button"], .content form .gform_wrapper .gform_fields .gfield.gsection .gsection_description input[type="button"], .gform_wrapper .gform_fields .gfield.gsection .content .gsection_description form input[type="button"], .gform_wrapper .gform_fields .gfield.gsection .content form .gsection_description input[type="button"], .content p form input[type="submit"], .content form p input[type="submit"], .content .gform_wrapper .gform_fields .gfield.gsection .gsection_description form input[type="submit"], .content form .gform_wrapper .gform_fields .gfield.gsection .gsection_description input[type="submit"], .gform_wrapper .gform_fields .gfield.gsection .content .gsection_description form input[type="submit"], .gform_wrapper .gform_fields .gfield.gsection .content form .gsection_description input[type="submit"], .content p form button[type="submit"], .content form p button[type="submit"], .content .gform_wrapper .gform_fields .gfield.gsection .gsection_description form button[type="submit"], .content form .gform_wrapper .gform_fields .gfield.gsection .gsection_description button[type="submit"], .gform_wrapper .gform_fields .gfield.gsection .content .gsection_description form button[type="submit"], .gform_wrapper .gform_fields .gfield.gsection .content form .gsection_description button[type="submit"] {
    margin: 10px 5px 0; }
    .content p .btn:first-child, .content .gform_wrapper .gform_fields .gfield.gsection .gsection_description .btn:first-child, .gform_wrapper .gform_fields .gfield.gsection .content .gsection_description .btn:first-child, .content p form input[type="button"]:first-child, .content form p input[type="button"]:first-child, .content .gform_wrapper .gform_fields .gfield.gsection .gsection_description form input[type="button"]:first-child, .content form .gform_wrapper .gform_fields .gfield.gsection .gsection_description input[type="button"]:first-child, .gform_wrapper .gform_fields .gfield.gsection .content .gsection_description form input[type="button"]:first-child, .gform_wrapper .gform_fields .gfield.gsection .content form .gsection_description input[type="button"]:first-child, .content p form input[type="submit"]:first-child, .content form p input[type="submit"]:first-child, .content .gform_wrapper .gform_fields .gfield.gsection .gsection_description form input[type="submit"]:first-child, .content form .gform_wrapper .gform_fields .gfield.gsection .gsection_description input[type="submit"]:first-child, .gform_wrapper .gform_fields .gfield.gsection .content .gsection_description form input[type="submit"]:first-child, .gform_wrapper .gform_fields .gfield.gsection .content form .gsection_description input[type="submit"]:first-child, .content p form button[type="submit"]:first-child, .content form p button[type="submit"]:first-child, .content .gform_wrapper .gform_fields .gfield.gsection .gsection_description form button[type="submit"]:first-child, .content form .gform_wrapper .gform_fields .gfield.gsection .gsection_description button[type="submit"]:first-child, .gform_wrapper .gform_fields .gfield.gsection .content .gsection_description form button[type="submit"]:first-child, .gform_wrapper .gform_fields .gfield.gsection .content form .gsection_description button[type="submit"]:first-child {
      margin-left: 0; }
    .content p .btn:last-child, .content .gform_wrapper .gform_fields .gfield.gsection .gsection_description .btn:last-child, .gform_wrapper .gform_fields .gfield.gsection .content .gsection_description .btn:last-child, .content p form input[type="button"]:last-child, .content form p input[type="button"]:last-child, .content .gform_wrapper .gform_fields .gfield.gsection .gsection_description form input[type="button"]:last-child, .content form .gform_wrapper .gform_fields .gfield.gsection .gsection_description input[type="button"]:last-child, .gform_wrapper .gform_fields .gfield.gsection .content .gsection_description form input[type="button"]:last-child, .gform_wrapper .gform_fields .gfield.gsection .content form .gsection_description input[type="button"]:last-child, .content p form input[type="submit"]:last-child, .content form p input[type="submit"]:last-child, .content .gform_wrapper .gform_fields .gfield.gsection .gsection_description form input[type="submit"]:last-child, .content form .gform_wrapper .gform_fields .gfield.gsection .gsection_description input[type="submit"]:last-child, .gform_wrapper .gform_fields .gfield.gsection .content .gsection_description form input[type="submit"]:last-child, .gform_wrapper .gform_fields .gfield.gsection .content form .gsection_description input[type="submit"]:last-child, .content p form button[type="submit"]:last-child, .content form p button[type="submit"]:last-child, .content .gform_wrapper .gform_fields .gfield.gsection .gsection_description form button[type="submit"]:last-child, .content form .gform_wrapper .gform_fields .gfield.gsection .gsection_description button[type="submit"]:last-child, .gform_wrapper .gform_fields .gfield.gsection .content .gsection_description form button[type="submit"]:last-child, .gform_wrapper .gform_fields .gfield.gsection .content form .gsection_description button[type="submit"]:last-child {
      margin-right: 0; }
    .content p .btn.btn-full, .content .gform_wrapper .gform_fields .gfield.gsection .gsection_description .btn.btn-full, .gform_wrapper .gform_fields .gfield.gsection .content .gsection_description .btn.btn-full, .content p form input.btn-full[type="button"], .content form p input.btn-full[type="button"], .content .gform_wrapper .gform_fields .gfield.gsection .gsection_description form input.btn-full[type="button"], .content form .gform_wrapper .gform_fields .gfield.gsection .gsection_description input.btn-full[type="button"], .gform_wrapper .gform_fields .gfield.gsection .content .gsection_description form input.btn-full[type="button"], .gform_wrapper .gform_fields .gfield.gsection .content form .gsection_description input.btn-full[type="button"], .content p form input.btn-full[type="submit"], .content form p input.btn-full[type="submit"], .content .gform_wrapper .gform_fields .gfield.gsection .gsection_description form input.btn-full[type="submit"], .content form .gform_wrapper .gform_fields .gfield.gsection .gsection_description input.btn-full[type="submit"], .gform_wrapper .gform_fields .gfield.gsection .content .gsection_description form input.btn-full[type="submit"], .gform_wrapper .gform_fields .gfield.gsection .content form .gsection_description input.btn-full[type="submit"], .content p form button.btn-full[type="submit"], .content form p button.btn-full[type="submit"], .content .gform_wrapper .gform_fields .gfield.gsection .gsection_description form button.btn-full[type="submit"], .content form .gform_wrapper .gform_fields .gfield.gsection .gsection_description button.btn-full[type="submit"], .gform_wrapper .gform_fields .gfield.gsection .content .gsection_description form button.btn-full[type="submit"], .gform_wrapper .gform_fields .gfield.gsection .content form .gsection_description button.btn-full[type="submit"] {
      margin-left: 0;
      margin-right: 0; }
  .content p.intro, .content .gform_wrapper .gform_fields .gfield.gsection .intro.gsection_description, .gform_wrapper .gform_fields .gfield.gsection .content .intro.gsection_description {
    color: #666666;
    font-size: 1.5em; }
  .content p.micro, .content .gform_wrapper .gform_fields .gfield.gsection .micro.gsection_description, .gform_wrapper .gform_fields .gfield.gsection .content .micro.gsection_description {
    color: #999999;
    font-size: .75rem; }

.content ul,
.content ol {
  margin: 2em 0 2em 1.5em; }
  .content ul:first-child,
  .content ol:first-child {
    margin-top: 0; }
  .content ul:last-child,
  .content ol:last-child {
    margin-bottom: 0; }
  .content ul.list-icons,
  .content ol.list-icons {
    list-style: none;
    margin-left: 40px;
    text-align: left; }
    .content ul.list-icons li,
    .content ol.list-icons li {
      position: relative; }
      .content ul.list-icons li .item-icon,
      .content ol.list-icons li .item-icon {
        position: absolute;
        top: 50%;
        right: calc( 100% + 10px);
        width: 30px;
        margin-top: -.5em;
        color: #001f82;
        font-size: 1rem;
        line-height: 1em;
        text-align: center; }
  .content ul.list-checked,
  .content ol.list-checked {
    list-style: none;
    margin-left: 40px;
    text-align: left; }
    .content ul.list-checked li,
    .content ol.list-checked li {
      position: relative; }
      .content ul.list-checked li .item-icon,
      .content ol.list-checked li .item-icon {
        position: absolute;
        top: calc( 3px + .25rem);
        right: calc( 100% + 10px);
        width: 30px;
        color: #001f82;
        font-size: 1rem;
        line-height: 1em;
        text-align: center; }
  .content ul li,
  .content ol li {
    color: #333;
    line-height: 1.5em; }
    .content ul li:not(:first-child),
    .content ol li:not(:first-child) {
      margin-top: .5em; }

.content blockquote {
  max-width: 700px;
  margin: 2em auto;
  text-align: center; }
  .content blockquote:first-child {
    margin-top: 0; }
  .content blockquote:last-child {
    margin-bottom: 0; }
  .content blockquote p, .content blockquote .gform_wrapper .gform_fields .gfield.gsection .gsection_description, .gform_wrapper .gform_fields .gfield.gsection .content blockquote .gsection_description {
    font-family: "Captura", system-ui, sans-serif;
    color: #001f82;
    font-size: 1.5em;
    line-height: 1.5em;
    font-style: italic; }
    .content blockquote p:first-child:before, .content blockquote .gform_wrapper .gform_fields .gfield.gsection .gsection_description:first-child:before, .gform_wrapper .gform_fields .gfield.gsection .content blockquote .gsection_description:first-child:before {
      content: open-quote; }
    .content blockquote p:last-child:after, .content blockquote .gform_wrapper .gform_fields .gfield.gsection .gsection_description:last-child:after, .gform_wrapper .gform_fields .gfield.gsection .content blockquote .gsection_description:last-child:after {
      content: close-quote; }

.content .table-wrapper {
  position: relative;
  display: -ms-flexbox;
  display: flex;
  margin: 2em -15px;
  overflow-x: auto;
  padding: 0 15px;
  white-space: nowrap; }
  .content .table-wrapper:first-child {
    margin-top: 0; }
  .content .table-wrapper:last-child {
    margin-bottom: 0; }
  .content .table-wrapper:after {
    content: '';
    min-width: 15px; }
  .content .table-wrapper::-webkit-scrollbar {
    height: 0;
    width: 0; }

.content table {
  width: 100%;
  margin: 2em 0;
  border-collapse: collapse;
  color: #333;
  font-size: 1em; }
  .content table:first-child {
    margin-top: 0; }
  .content table:last-child {
    margin-bottom: 0; }
  .content table th,
  .content table td {
    padding: .75em; }
  .content table tr:nth-child(odd) {
    background-color: rgba(0, 0, 0, 0.025); }
  .content table tr:not(:last-child) th,
  .content table tr:not(:last-child) td {
    border-bottom: 2px solid #ebebeb; }

.content iframe {
  max-width: 100%;
  margin: 3em 0; }
  .content iframe:first-child {
    margin-top: 0; }
  .content iframe:last-child {
    margin-bottom: 0; }

.content pre {
  display: block;
  margin: 2em 0;
  padding: 1em 1.5em;
  border-radius: .5em;
  border: 1px solid #d6d6d6;
  background-color: whitesmoke;
  font-family: monospace;
  color: #333;
  font-size: 1em;
  line-height: 1.5em;
  white-space: normal; }
  .content pre:first-child {
    margin-top: 0; }
  .content pre:last-child {
    margin-bottom: 0; }

.content .content-highlight {
  display: block;
  margin: 3em -1.5em;
  padding: 1.5em;
  border-radius: .5em;
  border: 1px solid #808fc1;
  background-color: #e6e9f3;
  color: #001968; }
  .content .content-highlight:first-child {
    margin-top: 0; }
  .content .content-highlight:last-child {
    margin-bottom: 0; }
  .content .content-highlight * {
    color: inherit; }

/*
==========================================================================
    Components
==========================================================================
*/
.nivo-lightbox-theme-default .nivo-lightbox-close {
  background-position: center; }

.responsive-embed-container {
  position: relative;
  max-width: 100%;
  height: 0;
  padding-bottom: 56.25%;
  overflow: hidden;
  border-radius: 1em; }
  .responsive-embed-container.responsive-embed-container--map {
    min-height: 250px; }
  .responsive-embed-container.responsive-embed-container--overflow-visible {
    overflow: visible; }
  .responsive-embed-container iframe,
  .responsive-embed-container object,
  .responsive-embed-container embed {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%; }

.container > .responsive-embed-container,
.container > .content > .responsive-embed-container {
  box-shadow: 0 0.1em 0.35em rgba(0, 0, 0, 0.125);
  background-color: #ebebeb; }
  .container > .responsive-embed-container iframe,
  .container > .responsive-embed-container object,
  .container > .responsive-embed-container embed,
  .container > .content > .responsive-embed-container iframe,
  .container > .content > .responsive-embed-container object,
  .container > .content > .responsive-embed-container embed {
    border-radius: inherit; }

/* hide slick sliders on page load, show when initialized */
.slick-slider {
  display: none; }
  .slick-slider.slick-initialized {
    display: block; }

.page-wrapper {
  position: relative;
  overflow: hidden; }

.youtube-button {
  position: fixed;
  z-index: 55;
  display: block;
  top: 2em;
  right: 2em; }
  .youtube-button:active {
    top: calc(2em + 1px); }
  .youtube-button img {
    display: block;
    width: Min(8em, 10vw);
    height: auto; }

/*
==========================================================================
    Header
==========================================================================
*/
.masthead {
  position: absolute;
  z-index: 50;
  top: 0;
  left: 0;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
  align-items: center;
  -ms-flex-pack: center;
  justify-content: center;
  width: 100%;
  padding: 2em 0;
  background: linear-gradient(to bottom, rgba(0, 0, 0, 0.5), transparent); }
  .masthead.masthead--no-fade {
    background: none; }
  .masthead__logo {
    width: 8em; }
    .masthead__logo img {
      display: block;
      width: 100%;
      height: auto; }

/*
==========================================================================
	Footer
==========================================================================
*/
/*
==========================================================================
	Forms - Base element styling
==========================================================================
*/
.content form input:not([type="radio"]):not([type="checkbox"]):not([type="file"]):not([type="button"]):not([type="submit"]),
.content form textarea,
.content form select {
  -webkit-appearance: none;
  appearance: none;
  height: auto;
  width: auto;
  margin: 0;
  padding: 0;
  border-radius: 0;
  border: 0;
  background: none;
  font-family: inherit;
  font-size: 1rem;
  width: 100%;
  height: 50px;
  padding: 0 1em;
  border-radius: .25em;
  border: 2px solid #ebebeb;
  background-color: #fff;
  color: #333;
  transition: all .15s ease-in-out; }
  .content form input:not([type="radio"]):not([type="checkbox"]):not([type="file"]):not([type="button"]):not([type="submit"]):hover, .content form input:not([type="radio"]):not([type="checkbox"]):not([type="file"]):not([type="button"]):not([type="submit"]):focus,
  .content form textarea:hover,
  .content form textarea:focus,
  .content form select:hover,
  .content form select:focus {
    border-color: #c2c2c2; }
  .content form input:not([type="radio"]):not([type="checkbox"]):not([type="file"]):not([type="button"]):not([type="submit"])::-webkit-input-placeholder,
  .content form textarea::-webkit-input-placeholder,
  .content form select::-webkit-input-placeholder {
    /* Chrome/Opera/Safari */
    color: #cccccc; }
  .content form input:not([type="radio"]):not([type="checkbox"]):not([type="file"]):not([type="button"]):not([type="submit"])::-moz-placeholder,
  .content form textarea::-moz-placeholder,
  .content form select::-moz-placeholder {
    /* Firefox 19+ */
    color: #cccccc; }
  .content form input:not([type="radio"]):not([type="checkbox"]):not([type="file"]):not([type="button"]):not([type="submit"]):-ms-input-placeholder,
  .content form textarea:-ms-input-placeholder,
  .content form select:-ms-input-placeholder {
    /* IE 10+ */
    color: #cccccc; }
  .content form input:not([type="radio"]):not([type="checkbox"]):not([type="file"]):not([type="button"]):not([type="submit"]):-moz-placeholder,
  .content form textarea:-moz-placeholder,
  .content form select:-moz-placeholder {
    /* Firefox 18- */
    color: #cccccc; }
  .content form input:not([type="radio"]):not([type="checkbox"]):not([type="file"]):not([type="button"]):not([type="submit"]):disabled,
  .content form textarea:disabled,
  .content form select:disabled {
    border-color: #cccccc;
    background-color: #fafafa;
    color: #999999;
    cursor: not-allowed; }

.content form input:not([type="radio"]):not([type="checkbox"]):not([type="file"]):not([type="button"]):not([type="submit"]):read-only,
.content form textarea:read-only {
  border-color: #cccccc;
  background-color: #fafafa;
  color: #999999;
  cursor: not-allowed; }

.content form textarea {
  height: auto;
  padding: 1em;
  line-height: 1.5em; }

.content form select {
  cursor: pointer; }

/*
==========================================================================
    Forms - Gravity Forms markup
==========================================================================
*/
.gform_confirmation_wrapper .gform_confirmation_message {
  font-family: "Captura", system-ui, sans-serif;
  color: green;
  font-weight: bold; }

script + .gform_wrapper {
  margin-top: 0 !important; }

.content .gform_wrapper {
  padding: 2em;
  border-radius: .5em;
  border: 2px solid #ebebeb;
  background-color: #fafafa; }

.gform_wrapper {
  margin: 30px 0;
  font-family: "Captura", system-ui, sans-serif;
  font-size: 1rem;
  font-weight: normal;
  text-align: left; }
  .gform_wrapper:first-child {
    margin-top: 0; }
  .gform_wrapper:last-child {
    margin-bottom: 0; }
  .gform_wrapper .validation_error {
    margin: 1em 0;
    color: red; }
    .gform_wrapper .validation_error:first-child {
      margin-top: 0; }
    .gform_wrapper .validation_error:last-child {
      margin-bottom: 0; }
  .gform_wrapper .gform_hidden {
    display: none !important; }
  .gform_wrapper .gform_heading,
  .gform_wrapper .gform_body,
  .gform_wrapper .gform_footer {
    margin: 0 0 30px; }
    .gform_wrapper .gform_heading:first-child,
    .gform_wrapper .gform_body:first-child,
    .gform_wrapper .gform_footer:first-child {
      margin-top: 0; }
    .gform_wrapper .gform_heading:last-child,
    .gform_wrapper .gform_body:last-child,
    .gform_wrapper .gform_footer:last-child {
      margin-bottom: 0; }
  .gform_wrapper .gform_heading .gform_title {
    margin: 0;
    color: #001f82;
    font-size: 2em; }
  .gform_wrapper .gform_heading .gform_description {
    display: block;
    margin: 1em 0;
    color: #333;
    font-size: 1rem;
    line-height: 1.8em; }
    .gform_wrapper .gform_heading .gform_description:first-child {
      margin-top: 0; }
    .gform_wrapper .gform_heading .gform_description:last-child {
      margin-bottom: 0; }
  .gform_wrapper .gform_fields {
    list-style: none;
    margin: 0; }
    .gform_wrapper .gform_fields .gfield {
      display: block;
      padding: 0;
      margin-top: 30px; }
      .gform_wrapper .gform_fields .gfield:before {
        display: none; }
      .gform_wrapper .gform_fields .gfield:first-child {
        margin-top: 0; }
      .gform_wrapper .gform_fields .gfield.gfield_error .ginput_container.ginput_complex .error_icon {
        top: 10px !important;
        right: calc( 100% + .5em);
        margin-right: -5px; }
      .gform_wrapper .gform_fields .gfield.gfield_error .ginput_container:not(.ginput_container_checkbox):not(.ginput_container_radio):not(.ginput_container_select) {
        position: relative; }
        .gform_wrapper .gform_fields .gfield.gfield_error .ginput_container:not(.ginput_container_checkbox):not(.ginput_container_radio):not(.ginput_container_select) input:not([type="radio"]):not([type="checkbox"]):not([type="file"]):not([type="button"]):not([type="submit"]),
        .gform_wrapper .gform_fields .gfield.gfield_error .ginput_container:not(.ginput_container_checkbox):not(.ginput_container_radio):not(.ginput_container_select) textarea {
          border-color: red;
          background-color: #fff2f2; }
        .gform_wrapper .gform_fields .gfield.gfield_error .ginput_container:not(.ginput_container_checkbox):not(.ginput_container_radio):not(.ginput_container_select) .error_icon {
          top: 0;
          right: calc( 100% + .5em); }
      .gform_wrapper .gform_fields .gfield.gfield_error .gfield_description.validation_message {
        color: red;
        font-weight: bold; }
      .gform_wrapper .gform_fields .gfield.gfield_html {
        padding: 1em 1.25em;
        border-radius: .25em;
        border: 2px solid #bfc7e0;
        background-color: #e6e9f3;
        color: #000d36;
        font-size: .875em;
        line-height: 1.618em; }
      .gform_wrapper .gform_fields .gfield.gsection {
        padding: .5em 0; }
        .gform_wrapper .gform_fields .gfield.gsection .gsection_title {
          font-size: 1.125em;
          font-weight: bold; }
        .gform_wrapper .gform_fields .gfield.gsection .gsection_description {
          margin: .75em 0;
          font-size: .875em; }
          .gform_wrapper .gform_fields .gfield.gsection .gsection_description:first-child {
            margin-top: 0; }
          .gform_wrapper .gform_fields .gfield.gsection .gsection_description:last-child {
            margin-bottom: 0; }
      .gform_wrapper .gform_fields .gfield .gfield_label {
        display: block;
        padding: 0;
        margin: .5em 0;
        font-family: "Captura", system-ui, sans-serif;
        color: #333;
        font-size: 1em;
        font-weight: bold; }
        .gform_wrapper .gform_fields .gfield .gfield_label:first-child {
          margin-top: 0; }
        .gform_wrapper .gform_fields .gfield .gfield_label:last-child {
          margin-bottom: 0; }
        .gform_wrapper .gform_fields .gfield .gfield_label .gfield_required {
          position: relative;
          top: -.125em;
          display: inline-block;
          margin: 0 .75em;
          color: #001f82;
          font-size: .75rem; }
          .gform_wrapper .gform_fields .gfield .gfield_label .gfield_required .fa {
            color: inherit; }
      .gform_wrapper .gform_fields .gfield .clear-multi {
        display: -ms-flexbox;
        display: flex;
        -ms-flex-align: center;
        align-items: center;
        -ms-flex-pack: start;
        justify-content: flex-start;
        margin: -10px; }
        .gform_wrapper .gform_fields .gfield .clear-multi div {
          -ms-flex: 0 0 50%;
          flex: 0 0 50%;
          display: -ms-flexbox;
          display: flex;
          -ms-flex-align: center;
          align-items: center;
          -ms-flex-pack: start;
          justify-content: flex-start;
          padding: 10px; }
          .gform_wrapper .gform_fields .gfield .clear-multi div * {
            margin: 0 5px; }
            .gform_wrapper .gform_fields .gfield .clear-multi div *:first-child {
              margin-left: 0; }
            .gform_wrapper .gform_fields .gfield .clear-multi div *:last-child {
              margin-right: 0; }
          .gform_wrapper .gform_fields .gfield .clear-multi div i {
            font-style: normal; }
      .gform_wrapper .gform_fields .gfield .ginput_container.ginput_container_checkbox .gfield_checkbox {
        list-style: none;
        margin: 0; }
        .gform_wrapper .gform_fields .gfield .ginput_container.ginput_container_checkbox .gfield_checkbox > li {
          margin: .5em 0 0; }
          .gform_wrapper .gform_fields .gfield .ginput_container.ginput_container_checkbox .gfield_checkbox > li:first-child {
            margin-top: 0; }
          .gform_wrapper .gform_fields .gfield .ginput_container.ginput_container_checkbox .gfield_checkbox > li:last-child {
            margin-bottom: 0; }
          .gform_wrapper .gform_fields .gfield .ginput_container.ginput_container_checkbox .gfield_checkbox > li:before {
            display: none; }
      .gform_wrapper .gform_fields .gfield .ginput_container.ginput_container_checkbox input[type="checkbox"] {
        margin-right: .35em;
        font-size: 2em; }
        .gform_wrapper .gform_fields .gfield .ginput_container.ginput_container_checkbox input[type="checkbox"]:checked ~ label {
          color: #333;
          font-weight: bold; }
      .gform_wrapper .gform_fields .gfield .ginput_container.ginput_container_checkbox label {
        color: #666666;
        font-size: .875em;
        font-weight: normal;
        cursor: pointer; }
      .gform_wrapper .gform_fields .gfield .ginput_container.ginput_container_radio .gfield_radio {
        list-style: none;
        margin: 0; }
        .gform_wrapper .gform_fields .gfield .ginput_container.ginput_container_radio .gfield_radio > li {
          margin: .5em 0 0; }
          .gform_wrapper .gform_fields .gfield .ginput_container.ginput_container_radio .gfield_radio > li:first-child {
            margin-top: 0; }
          .gform_wrapper .gform_fields .gfield .ginput_container.ginput_container_radio .gfield_radio > li:last-child {
            margin-bottom: 0; }
          .gform_wrapper .gform_fields .gfield .ginput_container.ginput_container_radio .gfield_radio > li:before {
            display: none; }
      .gform_wrapper .gform_fields .gfield .ginput_container.ginput_container_radio input[type="radio"] {
        margin-right: .35em;
        font-size: 2em; }
        .gform_wrapper .gform_fields .gfield .ginput_container.ginput_container_radio input[type="radio"]:checked ~ label {
          color: #333;
          font-weight: bold; }
      .gform_wrapper .gform_fields .gfield .ginput_container.ginput_container_radio label {
        color: #666666;
        font-size: .875em;
        font-weight: normal;
        cursor: pointer; }
      .gform_wrapper .gform_fields .gfield .ginput_container.ginput_container_select {
        position: relative; }
        .gform_wrapper .gform_fields .gfield .ginput_container.ginput_container_select .field_icon {
          top: 0;
          right: .5em; }
        .gform_wrapper .gform_fields .gfield .ginput_container.ginput_container_select select {
          padding-right: 2em; }
      .gform_wrapper .gform_fields .gfield .ginput_container.ginput_container_multiselect select {
        height: 110px;
        padding: 10px;
        resize: none; }
        .gform_wrapper .gform_fields .gfield .ginput_container.ginput_container_multiselect select option {
          padding: .25em .5em; }
      .gform_wrapper .gform_fields .gfield .ginput_container.ginput_container_date {
        position: relative; }
        .gform_wrapper .gform_fields .gfield .ginput_container.ginput_container_date .field_icon {
          top: 0;
          left: .875em; }
        .gform_wrapper .gform_fields .gfield .ginput_container.ginput_container_date input.datepicker:not([type="radio"]):not([type="checkbox"]):not([type="button"]):not([type="submit"]):not([type="file"]) {
          padding-left: 2.5em; }
      .gform_wrapper .gform_fields .gfield .ginput_container.ginput_container_fileupload input[type="file"] {
        font-family: inherit;
        color: #333;
        font-size: .875em;
        line-height: 1ex; }
      .gform_wrapper .gform_fields .gfield .ginput_container.ginput_container_fileupload .gform_drop_area {
        display: -ms-flexbox;
        display: flex;
        -ms-flex-align: center;
        align-items: center;
        -ms-flex-pack: center;
        justify-content: center;
        width: 100%;
        height: 100px;
        border: 2px dashed #ebebeb;
        background-color: rgba(255, 255, 255, 0.5); }
        .gform_wrapper .gform_fields .gfield .ginput_container.ginput_container_fileupload .gform_drop_area .gform_drop_instructions {
          margin: 5px 10px;
          color: #333;
          font-size: .875em; }
        .gform_wrapper .gform_fields .gfield .ginput_container.ginput_container_fileupload .gform_drop_area input[type="button"] {
          padding: .5em 1em; }
      .gform_wrapper .gform_fields .gfield .ginput_container.ginput_container_fileupload .screen-reader-text {
        display: block;
        margin: .75em 0;
        font-size: .875em; }
        .gform_wrapper .gform_fields .gfield .ginput_container.ginput_container_fileupload .screen-reader-text:first-child {
          margin-top: 0; }
        .gform_wrapper .gform_fields .gfield .ginput_container.ginput_container_fileupload .screen-reader-text:last-child {
          margin-bottom: 0; }
      .gform_wrapper .gform_fields .gfield .ginput_container.ginput_container_list table.gfield_list {
        width: 100%;
        margin: 0;
        border: 0; }
        .gform_wrapper .gform_fields .gfield .ginput_container.ginput_container_list table.gfield_list tr {
          background: none; }
        .gform_wrapper .gform_fields .gfield .ginput_container.ginput_container_list table.gfield_list thead tr {
          vertical-align: bottom; }
          .gform_wrapper .gform_fields .gfield .ginput_container.ginput_container_list table.gfield_list thead tr th {
            padding-bottom: .5em;
            font-size: .875em;
            line-height: 1.3em; }
        .gform_wrapper .gform_fields .gfield .ginput_container.ginput_container_list table.gfield_list tbody tr.gfield_list_group:first-child td {
          padding-top: 0; }
        .gform_wrapper .gform_fields .gfield .ginput_container.ginput_container_list table.gfield_list tbody tr.gfield_list_group td {
          padding: 10px 10px 0 0;
          border: 0; }
          .gform_wrapper .gform_fields .gfield .ginput_container.ginput_container_list table.gfield_list tbody tr.gfield_list_group td:last-child {
            padding-right: 0; }
          .gform_wrapper .gform_fields .gfield .ginput_container.ginput_container_list table.gfield_list tbody tr.gfield_list_group td.gfield_list_icons {
            width: 15px; }
            .gform_wrapper .gform_fields .gfield .ginput_container.ginput_container_list table.gfield_list tbody tr.gfield_list_group td.gfield_list_icons img {
              display: inline;
              margin: 0; }
      .gform_wrapper .gform_fields .gfield .ginput_container.ginput_complex {
        display: -ms-flexbox;
        display: flex;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
        -ms-flex-align: start;
        align-items: flex-start;
        -ms-flex-pack: start;
        justify-content: flex-start;
        margin: -10px -5px; }
        .gform_wrapper .gform_fields .gfield .ginput_container.ginput_complex span {
          -ms-flex: 1;
          flex: 1;
          display: block;
          padding: 10px 5px; }
          .gform_wrapper .gform_fields .gfield .ginput_container.ginput_complex span.ginput_full {
            -ms-flex: 1 0 100%;
            flex: 1 0 100%; }
          .gform_wrapper .gform_fields .gfield .ginput_container.ginput_complex span.ginput_left, .gform_wrapper .gform_fields .gfield .ginput_container.ginput_complex span.ginput_right {
            -ms-flex: 1 0 50%;
            flex: 1 0 50%; }
        .gform_wrapper .gform_fields .gfield .ginput_container.ginput_complex label {
          display: block;
          margin: .5em 0 0;
          color: #666666;
          font-size: .875em; }
      .gform_wrapper .gform_fields .gfield .ginput_container .field_icon,
      .gform_wrapper .gform_fields .gfield .ginput_container .error_icon {
        position: absolute;
        display: -ms-flexbox;
        display: flex;
        -ms-flex-align: center;
        align-items: center;
        -ms-flex-pack: center;
        justify-content: center;
        height: 50px;
        width: 1em;
        font-size: 1rem;
        line-height: 1em;
        pointer-events: none; }
      .gform_wrapper .gform_fields .gfield .ginput_container .field_icon {
        color: #cccccc; }
      .gform_wrapper .gform_fields .gfield .ginput_container .error_icon {
        color: red; }
      .gform_wrapper .gform_fields .gfield .gfield_description {
        margin: .75em 0;
        color: #999999;
        font-size: .875em;
        font-weight: normal; }
        .gform_wrapper .gform_fields .gfield .gfield_description:first-child {
          margin-top: 0; }
        .gform_wrapper .gform_fields .gfield .gfield_description:last-child {
          margin-bottom: 0; }

.gform_validation_container,
.gform_wrapper .gform_validation_container,
body .gform_wrapper .gform_body ul.gform_fields li.gfield.gform_validation_container,
body .gform_wrapper li.gform_validation_container,
body .gform_wrapper ul.gform_fields li.gfield.gform_validation_container {
  position: absolute !important;
  left: -9000px;
  height: 0;
  overflow: hidden; }

label[for]:hover {
  cursor: pointer; }

.ui-datepicker {
  display: none;
  width: 300px;
  max-width: 100%;
  padding: 15px;
  border-radius: .5em;
  background-color: whitesmoke;
  box-shadow: 0 2px 5px rgba(0, 0, 0, 0.1), 0 0 0 1px rgba(0, 0, 0, 0.05); }
  .ui-datepicker .ui-datepicker-header {
    padding-bottom: 15px; }
    .ui-datepicker .ui-datepicker-header .ui-datepicker-prev,
    .ui-datepicker .ui-datepicker-header .ui-datepicker-next {
      display: none; }
    .ui-datepicker .ui-datepicker-header .ui-datepicker-title {
      display: -ms-flexbox;
      display: flex; }
      .ui-datepicker .ui-datepicker-header .ui-datepicker-title select {
        -webkit-appearance: none;
        appearance: none;
        border-radius: 0;
        border: 0;
        background: none;
        -ms-flex: 1;
        flex: 1;
        height: 30px;
        margin: 0 4px;
        padding: 0 10px;
        border-radius: .25em;
        border: 1px solid #d6d6d6;
        background-color: #fff;
        color: #333;
        font-size: .875em;
        transition: all .15s ease-in-out;
        cursor: pointer; }
        .ui-datepicker .ui-datepicker-header .ui-datepicker-title select:first-child {
          margin-left: 0; }
        .ui-datepicker .ui-datepicker-header .ui-datepicker-title select:last-child {
          margin-right: 0; }
        .ui-datepicker .ui-datepicker-header .ui-datepicker-title select:hover, .ui-datepicker .ui-datepicker-header .ui-datepicker-title select:focus {
          border-color: #001f82; }
  .ui-datepicker .ui-datepicker-calendar {
    width: 100%;
    border: 1px solid #d6d6d6;
    background-color: #fff;
    font-size: .875em; }
    .ui-datepicker .ui-datepicker-calendar tr {
      border-bottom: 1px solid #ebebeb; }
      .ui-datepicker .ui-datepicker-calendar tr:last-child {
        border: 0; }
      .ui-datepicker .ui-datepicker-calendar tr th {
        padding: 10px 0;
        border-bottom: 1px solid #ebebeb;
        color: #333; }
      .ui-datepicker .ui-datepicker-calendar tr th,
      .ui-datepicker .ui-datepicker-calendar tr td {
        text-align: center; }
        .ui-datepicker .ui-datepicker-calendar tr th a,
        .ui-datepicker .ui-datepicker-calendar tr td a {
          display: block;
          padding: 6px 0;
          color: #999999; }
          .ui-datepicker .ui-datepicker-calendar tr th a:hover, .ui-datepicker .ui-datepicker-calendar tr th a:focus,
          .ui-datepicker .ui-datepicker-calendar tr td a:hover,
          .ui-datepicker .ui-datepicker-calendar tr td a:focus {
            background-color: whitesmoke;
            text-decoration: none; }
          .ui-datepicker .ui-datepicker-calendar tr th a.ui-state-highlight,
          .ui-datepicker .ui-datepicker-calendar tr td a.ui-state-highlight {
            background-color: #001f82;
            color: #fff; }
          .ui-datepicker .ui-datepicker-calendar tr th a.ui-state-active,
          .ui-datepicker .ui-datepicker-calendar tr td a.ui-state-active {
            background-color: #005eef;
            color: #fff; }

.custom-steps {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: stretch;
  align-items: stretch; }
  .custom-steps__control {
    -webkit-appearance: none;
    appearance: none;
    height: auto;
    width: auto;
    margin: 0;
    padding: 0;
    border-radius: 0;
    border: 0;
    background: none;
    font-family: inherit;
    font-size: 1rem;
    -ms-flex-negative: 0;
    flex-shrink: 0;
    height: inherit;
    padding: 0 1em;
    background-color: whitesmoke;
    color: #001f82; }
    .custom-steps__control:hover, .custom-steps__control:focus {
      background-color: #ebebeb;
      color: #333; }
    .custom-steps__control:active {
      top: 0; }
    .custom-steps__control:disabled {
      background-color: #fafafa;
      color: #cccccc;
      cursor: not-allowed; }
  .custom-steps__input {
    -webkit-appearance: none;
    appearance: none;
    height: auto;
    width: auto;
    margin: 0;
    padding: 0;
    border-radius: 0;
    border: 0;
    background: none;
    font-family: inherit;
    font-size: 1rem;
    -ms-flex-negative: 0;
    flex-shrink: 0;
    width: 3em;
    height: inherit;
    padding: 0;
    font-family: "Captura", system-ui, sans-serif;
    color: #333;
    text-align: center; }
  .custom-steps__info {
    padding-right: 1em;
    margin-right: auto;
    -ms-flex-item-align: center;
    -ms-grid-row-align: center;
    align-self: center; }
  .custom-steps__label {
    font-family: "Captura", system-ui, sans-serif;
    color: #333; }
  .custom-steps__subtitle {
    color: #999999;
    font-size: .75rem; }

.custom-select {
  position: relative; }
  .custom-select.custom-select--open .custom-select__dropdown {
    opacity: 1;
    visibility: visible; }
  .custom-select.custom-select--empty .custom-select__label {
    color: #999999; }
  .custom-select__input {
    position: absolute;
    left: -9999px;
    opacity: 0; }
  .custom-select__fancy-input {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
    align-items: center;
    height: inherit;
    padding: 0 1em;
    cursor: pointer; }
  .custom-select__label {
    -ms-flex-positive: 1;
    flex-grow: 1;
    font-family: "Captura", system-ui, sans-serif;
    color: #333;
    -webkit-user-select: none;
    -ms-user-select: none;
    user-select: none; }
  .custom-select__icon {
    -ms-flex-negative: 0;
    flex-shrink: 0;
    margin-left: 1em;
    color: #cccccc; }
  .custom-select__dropdown {
    position: absolute;
    z-index: 1;
    top: 100%;
    left: 0;
    right: 0;
    padding: .5em 0;
    border-radius: 0 0 .25rem .25rem;
    background-color: #fff;
    box-shadow: 0 2px 5px rgba(0, 0, 0, 0.1), 0 0 0 1px rgba(0, 0, 0, 0.05);
    opacity: 0;
    visibility: hidden;
    transition: all .15s ease-in-out;
    will-change: opacity, visibility; }
  .custom-select .custom-steps {
    margin: .5em 0;
    padding: 0 1em; }
    .custom-select .custom-steps__input {
      border-top: 2px solid whitesmoke;
      border-bottom: 2px solid whitesmoke; }
    .custom-select .custom-steps__control--decrease {
      border-radius: .25em 0 0 .25em; }
    .custom-select .custom-steps__control--increase {
      border-radius: 0 .25em .25em 0; }
  .custom-select .custom-checkbox,
  .custom-select .custom-radio {
    padding: .5em 1em; }
    .custom-select .custom-checkbox:hover,
    .custom-select .custom-radio:hover {
      background-color: whitesmoke; }

.custom-checkbox,
.custom-radio {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-line-pack: center;
  align-content: center;
  cursor: pointer;
  -webkit-user-select: none;
  -ms-user-select: none;
  user-select: none; }
  .custom-checkbox__input,
  .custom-radio__input {
    position: absolute;
    left: -9999px;
    opacity: 0; }
  .custom-checkbox__fancy-input,
  .custom-radio__fancy-input {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-pack: center;
    justify-content: center;
    width: 1.5em;
    height: 1.5em;
    margin-right: .75em;
    background-color: #fff;
    color: #fff;
    font-size: 1em;
    line-height: 1em;
    box-shadow: inset 0 0 0 1px #d6d6d6, inset 0 0.125em 0.25em #ebebeb;
    transition: all .15s ease-in-out; }
  .custom-checkbox__label,
  .custom-radio__label {
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    font-family: "Captura", system-ui, sans-serif;
    color: #666666;
    line-height: 1.618em;
    transition: color .15s ease-in-out; }

.custom-checkbox:hover .custom-checkbox__fancy-input, .custom-checkbox:focus-within .custom-checkbox__fancy-input {
  box-shadow: inset 0 0 0 2px #999999, inset 0 0.125em 0.25em #ebebeb; }

.custom-checkbox__input:checked + .custom-checkbox__fancy-input {
  box-shadow: inset 0 0 0 0 #d6d6d6, inset 0 0 0 1em #001f82; }

.custom-checkbox__input:checked ~ .custom-checkbox__label {
  color: #333;
  font-weight: bold;
  font-style: italic; }

.custom-checkbox__fancy-input {
  border-radius: .25em; }

.custom-radio:hover .custom-radio__fancy-input, .custom-radio:focus-within .custom-radio__fancy-input {
  box-shadow: inset 0 0 0 2px #999999, inset 0 0.125em 0.25em #ebebeb; }

.custom-radio__input:checked + .custom-radio__fancy-input {
  box-shadow: inset 0 0 0 0 #d6d6d6, inset 0 0 0 1em #001f82; }

.custom-radio__input:checked ~ .custom-radio__label {
  color: #333;
  font-weight: bold;
  font-style: italic; }

.custom-radio__fancy-input {
  border-radius: 50%; }

/*
==========================================================================
	Filters
==========================================================================
*/
/*
==========================================================================
    Modals
==========================================================================
*/
/*
==========================================================================
    Popovers (Bootstrap)
==========================================================================
*/
.popover {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1060;
  display: none;
  max-width: 250px;
  padding: 0;
  font-style: normal;
  font-weight: normal;
  letter-spacing: normal;
  line-break: auto;
  text-align: left;
  text-align: start;
  text-decoration: none;
  text-shadow: none;
  text-transform: none;
  white-space: normal;
  word-break: normal;
  word-spacing: normal;
  word-wrap: normal;
  font-size: 1rem;
  background-clip: padding-box;
  border-radius: .25em;
  background-color: #005eef;
  box-shadow: 0 2px 5px rgba(0, 0, 0, 0.1), 0 0 0 1px rgba(0, 0, 0, 0.05); }
  .popover.top {
    margin-top: -15px; }
  .popover.right {
    margin-left: 15px; }
  .popover.bottom {
    margin-top: 15px; }
  .popover.left {
    margin-left: -15px; }

.popover-title {
  padding: 10px 15px;
  border-radius: .25em .25em 0 0;
  background-color: #1a6ef1;
  color: #fff;
  font-size: .875em; }

.popover-content {
  padding: 15px;
  color: #fff;
  font-size: .75em;
  line-height: 1.618em; }
  .popover-content * {
    color: inherit; }
  .popover-content h1,
  .popover-content h2,
  .popover-content h3,
  .popover-content h4,
  .popover-content h5,
  .popover-content h6 {
    margin: 1em 0 .25em; }
    .popover-content h1:first-child,
    .popover-content h2:first-child,
    .popover-content h3:first-child,
    .popover-content h4:first-child,
    .popover-content h5:first-child,
    .popover-content h6:first-child {
      margin-top: 0; }
    .popover-content h1:last-child,
    .popover-content h2:last-child,
    .popover-content h3:last-child,
    .popover-content h4:last-child,
    .popover-content h5:last-child,
    .popover-content h6:last-child {
      margin-bottom: 0; }
  .popover-content ul,
  .popover-content ol {
    margin: 10px 15px; }
    .popover-content ul:first-child,
    .popover-content ol:first-child {
      margin-top: 0; }
    .popover-content ul:last-child,
    .popover-content ol:last-child {
      margin-bottom: 0; }

.popover > .arrow, .popover > .arrow:after {
  position: absolute;
  display: block;
  width: 0;
  height: 0;
  border-color: transparent;
  border-style: solid; }

.popover > .arrow {
  border-width: 11px; }

.popover > .arrow:after {
  border-width: 10px;
  content: ""; }

.popover.top > .arrow {
  left: 50%;
  margin-left: -11px;
  border-bottom-width: 0;
  border-top-color: #0055d7;
  bottom: -11px; }
  .popover.top > .arrow:after {
    content: " ";
    bottom: 1px;
    margin-left: -10px;
    border-bottom-width: 0;
    border-top-color: #005eef; }

.popover.right > .arrow {
  top: 50%;
  left: -11px;
  margin-top: -11px;
  border-left-width: 0;
  border-right-color: #0055d7; }
  .popover.right > .arrow:after {
    content: " ";
    left: 1px;
    bottom: -10px;
    border-left-width: 0;
    border-right-color: #005eef; }

.popover.bottom > .arrow {
  left: 50%;
  margin-left: -11px;
  border-top-width: 0;
  border-bottom-color: #0055d7;
  top: -11px; }
  .popover.bottom > .arrow:after {
    content: " ";
    top: 1px;
    margin-left: -10px;
    border-top-width: 0;
    border-bottom-color: #005eef; }

.popover.left > .arrow {
  top: 50%;
  right: -11px;
  margin-top: -11px;
  border-right-width: 0;
  border-left-color: #0055d7; }
  .popover.left > .arrow:after {
    content: " ";
    right: 1px;
    border-right-width: 0;
    border-left-color: #005eef;
    bottom: -10px; }

/*
==========================================================================
    Tooltips (Bootstrap)
==========================================================================
*/
.tooltip {
  position: absolute;
  z-index: 5;
  display: block;
  font-family: "Captura", system-ui, sans-serif;
  font-size: .875em;
  line-height: 1.3em;
  font-weight: 600;
  opacity: 0; }
  .tooltip.in {
    opacity: 1; }
  .tooltip.top {
    margin-top: -3px;
    padding: 5px 0; }
  .tooltip.right {
    margin-left: 3px;
    padding: 0 5px; }
  .tooltip.bottom {
    margin-top: 3px;
    padding: 5px 0; }
  .tooltip.left {
    margin-left: -3px;
    padding: 0 5px; }

.tooltip-inner {
  max-width: 200px;
  padding: .5em 1em;
  color: #fff;
  text-align: center;
  background-color: #333;
  border-radius: .5em; }

.tooltip-arrow {
  position: absolute;
  width: 0;
  height: 0;
  border-color: transparent;
  border-style: solid; }

.tooltip.top .tooltip-arrow {
  bottom: 0;
  left: 50%;
  margin-left: -5px;
  border-width: 5px 5px 0;
  border-top-color: #333; }

.tooltip.top-left .tooltip-arrow {
  bottom: 0;
  right: 5px;
  margin-bottom: -5px;
  border-width: 5px 5px 0;
  border-top-color: #333; }

.tooltip.top-right .tooltip-arrow {
  bottom: 0;
  left: 5px;
  margin-bottom: -5px;
  border-width: 5px 5px 0;
  border-top-color: #333; }

.tooltip.right .tooltip-arrow {
  top: 50%;
  left: 0;
  margin-top: -5px;
  border-width: 5px 5px 5px 0;
  border-right-color: #333; }

.tooltip.left .tooltip-arrow {
  top: 50%;
  right: 0;
  margin-top: -5px;
  border-width: 5px 0 5px 5px;
  border-left-color: #333; }

.tooltip.bottom .tooltip-arrow {
  top: 0;
  left: 50%;
  margin-left: -5px;
  border-width: 0 5px 5px;
  border-bottom-color: #333; }

.tooltip.bottom-left .tooltip-arrow {
  top: 0;
  right: 5px;
  margin-top: -5px;
  border-width: 0 5px 5px;
  border-bottom-color: #333; }

.tooltip.bottom-right .tooltip-arrow {
  top: 0;
  left: 5px;
  margin-top: -5px;
  border-width: 0 5px 5px;
  border-bottom-color: #333; }

/*
==========================================================================
	Widgets
==========================================================================
*/
/*
==========================================================================
    Buttons
==========================================================================
*/
.btns {
  margin: 2em 0; }
  .btns:first-child {
    margin-top: 0; }
  .btns:last-child {
    margin-bottom: 0; }
  .btns.btns--centered .btns__inner {
    -ms-flex-pack: center;
    justify-content: center; }
  .btns.btns--vertical.btns--centered .btns__inner {
    -ms-flex-align: center;
    align-items: center; }
  .btns.btns--vertical .btns__inner {
    -ms-flex-direction: column;
    flex-direction: column;
    -ms-flex-align: start;
    align-items: flex-start;
    -ms-flex-pack: center;
    justify-content: center; }
  .btns__inner {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    margin: -.5rem; }
  .btns .btn, .btns .content form input[type="button"], .content form .btns input[type="button"], .btns
  .content form input[type="submit"],
  .content form .btns input[type="submit"], .btns
  .content form button[type="submit"],
  .content form .btns button[type="submit"] {
    margin: .5rem; }

.btn, .content form input[type="button"],
.content form input[type="submit"],
.content form button[type="submit"] {
  -webkit-appearance: none;
  appearance: none;
  height: auto;
  width: auto;
  margin: 0;
  padding: 0;
  border-radius: 0;
  border: 0;
  background: none;
  font-family: inherit;
  font-size: 1rem;
  position: relative;
  display: inline-block;
  padding: .75em 1em .5em;
  font-family: "Captura", system-ui, sans-serif;
  font-size: 1rem;
  line-height: 1.5em;
  font-weight: bold;
  text-align: center;
  text-decoration: none !important;
  -webkit-user-select: none;
  -ms-user-select: none;
  user-select: none;
  cursor: pointer;
  transition: all 0.15s ease-in-out, top 0s; }
  .btn:active, .content form input[type="button"]:active,
  .content form input[type="submit"]:active,
  .content form button[type="submit"]:active {
    top: 1px; }
  .btn:disabled, .content form input[type="button"]:disabled,
  .content form input[type="submit"]:disabled,
  .content form button[type="submit"]:disabled, .btn.btn--disabled, .content form input.btn--disabled[type="button"],
  .content form input.btn--disabled[type="submit"],
  .content form button.btn--disabled[type="submit"] {
    background-color: #ebebeb !important;
    color: #999999 !important;
    cursor: not-allowed; }
  .btn.btn--text-link, .content form input.btn--text-link[type="button"],
  .content form input.btn--text-link[type="submit"],
  .content form button.btn--text-link[type="submit"] {
    padding: .25em .25em .125em; }
    .btn.btn--text-link.btn--text-link-inverted, .content form input.btn--text-link.btn--text-link-inverted[type="button"],
    .content form input.btn--text-link.btn--text-link-inverted[type="submit"],
    .content form button.btn--text-link.btn--text-link-inverted[type="submit"] {
      color: #fff; }
  .btn.btn--default, .content form input.btn--default[type="button"],
  .content form input.btn--default[type="submit"],
  .content form button.btn--default[type="submit"] {
    background-color: whitesmoke;
    color: #333;
    box-shadow: inset 0 -3px 0 rgba(0, 0, 0, 0.075); }
    .btn.btn--default.btn--outline, .content form input.btn--default.btn--outline[type="button"],
    .content form input.btn--default.btn--outline[type="submit"],
    .content form button.btn--default.btn--outline[type="submit"] {
      background: transparent;
      color: #666666;
      box-shadow: inset 0 0 0 2px whitesmoke; }
      .btn.btn--default.btn--outline:active, .content form input.btn--default.btn--outline[type="button"]:active,
      .content form input.btn--default.btn--outline[type="submit"]:active,
      .content form button.btn--default.btn--outline[type="submit"]:active {
        box-shadow: inset 0 0 0 2px #e9e9e9; }
    .btn.btn--default:hover, .content form input.btn--default[type="button"]:hover,
    .content form input.btn--default[type="submit"]:hover,
    .content form button.btn--default[type="submit"]:hover, .btn.btn--default:focus, .content form input.btn--default[type="button"]:focus,
    .content form input.btn--default[type="submit"]:focus,
    .content form button.btn--default[type="submit"]:focus {
      background-color: #f6f6f6;
      color: #333; }
    .btn.btn--default:active, .content form input.btn--default[type="button"]:active,
    .content form input.btn--default[type="submit"]:active,
    .content form button.btn--default[type="submit"]:active {
      background-color: #e9e9e9; }
  .btn.btn--primary, .content form input[type="button"],
  .content form input[type="submit"],
  .content form button[type="submit"] {
    background-color: #005eef;
    color: #fff; }
    .btn.btn--primary.btn--outline, .content form input.btn--outline[type="button"],
    .content form input.btn--outline[type="submit"],
    .content form button.btn--outline[type="submit"] {
      background: transparent;
      color: #005eef;
      box-shadow: inset 0 0 0 2px #005eef; }
    .btn.btn--primary:hover, .content form input[type="button"]:hover,
    .content form input[type="submit"]:hover,
    .content form button[type="submit"]:hover, .btn.btn--primary:focus, .content form input[type="button"]:focus,
    .content form input[type="submit"]:focus,
    .content form button[type="submit"]:focus {
      background-color: #1a6ef1;
      color: #fff; }
    .btn.btn--primary:active, .content form input[type="button"]:active,
    .content form input[type="submit"]:active,
    .content form button[type="submit"]:active {
      background-color: #0055d7; }
  .btn.btn--secondary, .content form input.btn--secondary[type="button"],
  .content form input.btn--secondary[type="submit"],
  .content form button.btn--secondary[type="submit"] {
    background-color: #7705bc;
    color: #fff; }
    .btn.btn--secondary.btn--outline, .content form input.btn--secondary.btn--outline[type="button"],
    .content form input.btn--secondary.btn--outline[type="submit"],
    .content form button.btn--secondary.btn--outline[type="submit"] {
      background: transparent;
      color: #7705bc;
      box-shadow: inset 0 0 0 2px #7705bc; }
    .btn.btn--secondary:hover, .content form input.btn--secondary[type="button"]:hover,
    .content form input.btn--secondary[type="submit"]:hover,
    .content form button.btn--secondary[type="submit"]:hover, .btn.btn--secondary:focus, .content form input.btn--secondary[type="button"]:focus,
    .content form input.btn--secondary[type="submit"]:focus,
    .content form button.btn--secondary[type="submit"]:focus {
      background-color: #851ec3;
      color: #fff; }
    .btn.btn--secondary:active, .content form input.btn--secondary[type="button"]:active,
    .content form input.btn--secondary[type="submit"]:active,
    .content form button.btn--secondary[type="submit"]:active {
      background-color: #6b05a9; }
  .btn.btn--tertiary, .content form input.btn--tertiary[type="button"],
  .content form input.btn--tertiary[type="submit"],
  .content form button.btn--tertiary[type="submit"] {
    background-color: #77ddf5;
    color: #7705bc; }
    .btn.btn--tertiary.btn--outline, .content form input.btn--tertiary.btn--outline[type="button"],
    .content form input.btn--tertiary.btn--outline[type="submit"],
    .content form button.btn--tertiary.btn--outline[type="submit"] {
      background: transparent;
      box-shadow: inset 0 0 0 2px #77ddf5; }
    .btn.btn--tertiary:hover, .content form input.btn--tertiary[type="button"]:hover,
    .content form input.btn--tertiary[type="submit"]:hover,
    .content form button.btn--tertiary[type="submit"]:hover, .btn.btn--tertiary:focus, .content form input.btn--tertiary[type="button"]:focus,
    .content form input.btn--tertiary[type="submit"]:focus,
    .content form button.btn--tertiary[type="submit"]:focus {
      background-color: #ff9998;
      color: #7705bc; }
    .btn.btn--tertiary:active, .content form input.btn--tertiary[type="button"]:active,
    .content form input.btn--tertiary[type="submit"]:active,
    .content form button.btn--tertiary[type="submit"]:active {
      background-color: #e68a89; }
  .btn.btn--white, .content form input.btn--white[type="button"],
  .content form input.btn--white[type="submit"],
  .content form button.btn--white[type="submit"] {
    background-color: #fff;
    color: #001f82; }
    .btn.btn--white.btn--outline, .content form input.btn--white.btn--outline[type="button"],
    .content form input.btn--white.btn--outline[type="submit"],
    .content form button.btn--white.btn--outline[type="submit"] {
      background: transparent;
      box-shadow: inset 0 0 0 2px #fff;
      color: #fff; }
    .btn.btn--white:hover, .content form input.btn--white[type="button"]:hover,
    .content form input.btn--white[type="submit"]:hover,
    .content form button.btn--white[type="submit"]:hover, .btn.btn--white:focus, .content form input.btn--white[type="button"]:focus,
    .content form input.btn--white[type="submit"]:focus,
    .content form button.btn--white[type="submit"]:focus {
      background-color: #fff;
      color: #001f82;
      box-shadow: inset 0 0 0 0 #fff; }
    .btn.btn--white:active, .content form input.btn--white[type="button"]:active,
    .content form input.btn--white[type="submit"]:active,
    .content form button.btn--white[type="submit"]:active {
      background-color: #f2f2f2; }
  .btn.btn--small, .content form input.btn--small[type="button"],
  .content form input.btn--small[type="submit"],
  .content form button.btn--small[type="submit"] {
    font-size: .875rem; }
  .btn.btn--x-small, .content form input.btn--x-small[type="button"],
  .content form input.btn--x-small[type="submit"],
  .content form button.btn--x-small[type="submit"], .gform_wrapper .gform_fields .gfield .ginput_container.ginput_container_fileupload .gform_drop_area input.btn[type="button"], .gform_wrapper .gform_fields .gfield .ginput_container.ginput_container_fileupload .gform_drop_area .content form input[type="button"], .content form .gform_wrapper .gform_fields .gfield .ginput_container.ginput_container_fileupload .gform_drop_area input[type="button"] {
    font-size: .75rem; }
  .btn.btn--large, .content form input.btn--large[type="button"],
  .content form input.btn--large[type="submit"],
  .content form button.btn--large[type="submit"] {
    font-size: 1.125rem; }
  .btn.btn--x-large, .content form input.btn--x-large[type="button"],
  .content form input.btn--x-large[type="submit"],
  .content form button.btn--x-large[type="submit"] {
    font-size: 1.25rem; }
  .btn.btn--small-padding, .content form input.btn--small-padding[type="button"],
  .content form input.btn--small-padding[type="submit"],
  .content form button.btn--small-padding[type="submit"], .gform_wrapper .gform_fields .gfield .ginput_container.ginput_container_fileupload .gform_drop_area input.btn[type="button"], .gform_wrapper .gform_fields .gfield .ginput_container.ginput_container_fileupload .gform_drop_area .content form input[type="button"], .content form .gform_wrapper .gform_fields .gfield .ginput_container.ginput_container_fileupload .gform_drop_area input[type="button"] {
    padding: .5em .75em; }
  .btn.btn--wide, .content form input.btn--wide[type="button"],
  .content form input.btn--wide[type="submit"],
  .content form button.btn--wide[type="submit"], .btn.btn--full, .content form input.btn--full[type="button"],
  .content form input.btn--full[type="submit"],
  .content form button.btn--full[type="submit"] {
    width: 100%;
    padding-left: 1em;
    padding-right: 1em; }

/* == When screen is 480px or smaller == */
@media only screen and (max-width: 480px) {
  .btn:not(.btn--dont-expand), .content form input[type="button"]:not(.btn--dont-expand),
  .content form input[type="submit"]:not(.btn--dont-expand),
  .content form button[type="submit"]:not(.btn--dont-expand) {
    width: 100% !important;
    margin-left: 0 !important;
    margin-right: 0 !important; } }

/*
==========================================================================
    Sections
==========================================================================
*/
.section {
  position: relative;
  z-index: 1;
  padding: 0;
  margin: 7.5em 0; }
  .section.section--small-margin {
    margin: 3.25em 0; }
    .section.section--small-margin-top {
      margin-top: 3.25em; }
    .section.section--small-margin-bottom {
      margin-bottom: 3.25em; }
  .section.section--large-margin {
    margin: 10.75em 0; }
    .section.section--large-margin-top {
      margin-top: 10.75em; }
    .section.section--large-margin-bottom {
      margin-bottom: 10.75em; }
  .section.section--padding {
    margin: 0; }
    .section.section--padding.section--small-padding-top .section__inner {
      padding-top: 3.25em; }
    .section.section--padding.section--small-padding-bottom .section__inner {
      padding-bottom: 3.25em; }
    .section.section--padding.section--small-padding .section__inner {
      padding: 3.25em 0; }
    .section.section--padding.section--large-padding-top .section__inner {
      padding-top: 10.75em; }
    .section.section--padding.section--large-padding-bottom .section__inner {
      padding-bottom: 10.75em; }
    .section.section--padding.section--large-padding .section__inner {
      padding: 10.75em 0; }
    .section.section--padding .section__inner {
      padding: 7.5em 0; }
  .section.section--border-top {
    border-top: 1px solid rgba(0, 0, 0, 0.1); }
  .section.section--border-bottom {
    border-bottom: 1px solid rgba(0, 0, 0, 0.1); }
  .section.section--higher-zindex {
    z-index: 5; }
  .section.section--full {
    display: -ms-flexbox;
    display: flex; }
    .section.section--full .section__inner {
      display: -ms-flexbox;
      display: flex;
      -ms-flex-align: center;
      align-items: center;
      width: 100%;
      min-height: 100vh; }
  .section__background {
    position: absolute;
    z-index: 1;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    overflow: hidden; }
    .section__background.section__background--grey {
      background-color: whitesmoke; }
    .section__background.section__background--dark-grey {
      background-color: #ebebeb; }
    .section__background.section__background--prim {
      background-color: #001f82; }
    .section__background.section__background--sec {
      background-color: #005eef; }
    .section__background.section__background--tert {
      background-color: #7705bc; }
    .section__background.section__background--gradient-prim {
      background: linear-gradient(to bottom right, #001f82, #005eef);
      background-color: #001f82; }
    .section__background.section__background--image {
      background-size: cover;
      background-position: center;
      background-repeat: no-repeat; }
      .section__background.section__background--image.section__background--fixed {
        background-attachment: fixed; }
    .section__background.section__background--fade:after, .section__background.section__background--fade-light:after {
      content: '';
      position: absolute;
      top: 0;
      left: 0;
      height: 100%;
      width: 100%; }
    .section__background.section__background--fade:after {
      background-color: rgba(51, 51, 51, 0.5); }
    .section__background.section__background--fade-light:after {
      background-color: rgba(255, 255, 255, 0.5); }
    .section__background.section__background--logo-pattern:after {
      content: '';
      position: absolute;
      top: 0;
      left: 0;
      height: 100%;
      width: 100%;
      background: url("../img/theme/background-logo-pattern.svg") center/75% repeat;
      opacity: .05; }
    .section__background-video {
      position: absolute;
      top: 0;
      left: 0;
      height: 100%;
      width: 100%; }
      .section__background-video:after {
        content: '';
        position: absolute;
        z-index: 1;
        top: 0;
        left: 0;
        height: 100%;
        width: 100%; }
      .section__background-video .player {
        position: absolute;
        top: 0;
        left: 0;
        height: 100%;
        width: 100%;
        object-fit: cover; }
  .section__inner {
    position: relative;
    z-index: 2; }
  .section__footer {
    margin: 4em 0 0; }
    .section__footer.section__footer--small-margin {
      margin: 2em 0 0; }

/* == When screen is 580px or smaller == */
@media only screen and (max-width: 580px) {
  .section {
    margin: 4em 0; }
    .section.section--small-margin {
      margin: 2.5em 0; }
      .section.section--small-margin-top {
        margin-top: 2.5em; }
      .section.section--small-margin-bottom {
        margin-bottom: 2.5em; }
    .section.section--large-margin {
      margin: 6em 0; }
      .section.section--large-margin-top {
        margin-top: 6em; }
      .section.section--large-margin-bottom {
        margin-bottom: 6em; }
    .section.section--padding {
      margin: 0; }
      .section.section--padding.section--small-padding-top .section__inner {
        padding-top: 2.5em; }
      .section.section--padding.section--small-padding-bottom .section__inner {
        padding-bottom: 2.5em; }
      .section.section--padding.section--small-padding .section__inner {
        padding: 2.5em 0; }
      .section.section--padding.section--large-padding-top .section__inner {
        padding-top: 6em; }
      .section.section--padding.section--large-padding-bottom .section__inner {
        padding-bottom: 6em; }
      .section.section--padding.section--large-padding .section__inner {
        padding: 6em 0; }
      .section.section--padding .section__inner {
        padding: 4em 0; }
    .section__footer {
      margin: 3em 0 0; }
      .section__footer.section__footer--small-margin {
        margin: 1.5em 0 0; } }

/*
==========================================================================
    Section-title
==========================================================================
*/
.section-title {
  margin: 4em 0 2.5em; }
  .section-title:first-child {
    margin-top: 0; }
  .section-title:last-child {
    margin-bottom: 0; }
  .section-title.section-title--inverted .pretitle,
  .section-title.section-title--inverted .title,
  .section-title.section-title--inverted .subtitle {
    color: #fff; }
  .section-title.section-title--small {
    font-size: .75em; }
  .section-title.section-title--large {
    font-size: 1.25em; }
  .section-title.section-title--small-margin {
    margin: 2em 0 1.25em; }
    .section-title.section-title--small-margin:first-child {
      margin-top: 0; }
    .section-title.section-title--small-margin:last-child {
      margin-bottom: 0; }
  .section-title.text-center hr {
    margin-left: auto;
    margin-right: auto; }
  .section-title .pretitle,
  .section-title .subtitle {
    margin: .5em 0;
    color: #333;
    font-size: 1.5em; }
    .section-title .pretitle:first-child,
    .section-title .subtitle:first-child {
      margin-top: 0; }
    .section-title .pretitle:last-child,
    .section-title .subtitle:last-child {
      margin-bottom: 0; }
  .section-title .title {
    margin: .35em 0;
    color: #333;
    font-size: 3em;
    line-height: 1.25em; }
    .section-title .title:first-child {
      margin-top: 0; }
    .section-title .title:last-child {
      margin-bottom: 0; }

@media only screen and (max-width: 580px) {
  .section-title br,
  .section-title br:after {
    content: ' '; }
  .section-title .title {
    font-size: 2.5em; }
  .section-title .pretitle,
  .section-title .subtitle {
    font-size: 1.25em; } }

@media only screen and (max-width: 400px) {
  .section-title .title {
    font-size: 2em; } }

/*
==========================================================================
    Hero
==========================================================================
*/
.hero {
  position: relative;
  padding: 0;
  margin: 0; }
  .hero__background-image, .hero__background-video {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%; }
  .hero__background-image {
    z-index: 1;
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat; }
  .hero__background-video {
    z-index: 2;
    background-color: #000; }
    .hero__background-video:after {
      content: '';
      position: absolute;
      z-index: 2;
      height: 100%;
      width: 100%; }
  .hero__video-player {
    position: absolute;
    z-index: 1;
    top: 50%;
    left: 50%;
    width: 1920px;
    height: 1080px;
    margin: -540px 0 0 -960px; }
  .hero__inner {
    position: relative;
    z-index: 2; }
  .hero__title {
    margin: 0;
    font-size: 4em; }
  .hero__subtitle {
    margin: .5em 0 0;
    font-size: 2em; }
  .hero__description {
    margin: 1em 0 0;
    font-size: 1.25em; }
  .hero__btns {
    margin: 1em 0 0; }
  .hero__micro {
    margin: 1em 0 0;
    font-size: 1em; }

/*
==========================================================================
    Teaser
==========================================================================
*/
body.teaser-button-visible .section.section--teaser .teaser {
  transform: translate3d(0, 0, 0); }

body.teaser-button-visible .section.section--teaser .btns {
  opacity: 1;
  visibility: visible; }

.section.section--teaser {
  margin: 0; }
  .section.section--teaser .section__inner {
    padding: 14em 0 7em; }
  .section.section--teaser .section__footer {
    position: absolute;
    z-index: 2;
    left: 0;
    bottom: 2em;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-pack: center;
    justify-content: center;
    width: 100%;
    color: #fff;
    font-size: .875em;
    text-align: center;
    white-space: nowrap; }
    .section.section--teaser .section__footer a {
      display: -ms-flexbox;
      display: flex;
      -ms-flex-align: center;
      align-items: center;
      -ms-flex-pack: center;
      justify-content: center;
      color: inherit;
      opacity: .5; }
      .section.section--teaser .section__footer a:hover, .section.section--teaser .section__footer a:focus {
        opacity: 1;
        text-decoration: none; }
    .section.section--teaser .section__footer img {
      display: block;
      height: .875em;
      width: auto;
      margin: .5em; }
  .section.section--teaser .teaser {
    transform: translate3d(0, 4em, 0);
    transition: transform .5s ease-in-out; }
  .section.section--teaser .btns {
    opacity: 0;
    visibility: hidden;
    transition: all .5s ease-out .25s; }

.teaser {
  position: relative;
  max-width: 50em;
  margin: 3em auto; }
  .teaser:first-child {
    margin-top: 0; }
  .teaser:last-child {
    margin-bottom: 0; }
  .teaser__background {
    position: absolute;
    z-index: 1;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: #7705bc;
    transform: rotate(2deg); }
    .teaser__background:before, .teaser__background:after {
      content: '';
      position: absolute;
      top: 0;
      left: 0;
      width: 100%;
      height: 100%;
      transform: rotate(-4deg); }
    .teaser__background:before {
      z-index: 1;
      background-color: #005eef; }
    .teaser__background:after {
      z-index: 2;
      background: url("../img/theme/background-logo-pattern.svg") center/cover no-repeat;
      opacity: .075; }
  .teaser__content {
    position: relative;
    z-index: 2;
    padding: 3em 2em; }

/*
==========================================================================
    Teaser
==========================================================================
*/
.section.section--build {
  margin: 0; }
  .section.section--build .section__inner {
    padding: 13em 0 2em; }

.build {
  position: relative;
  padding: 0 20%; }
  .build__sidebar {
    position: absolute;
    top: 0;
    width: 20%; }
    .build__sidebar.build__sidebar--left {
      left: 0;
      padding-right: 3em; }
    .build__sidebar.build__sidebar--right {
      right: 0;
      padding-left: 3em; }
    .build__sidebar img {
      display: block;
      width: 100%;
      height: auto; }
      .build__sidebar img[src*=".jpg"] {
        box-shadow: 0 0 0 0.5em rgba(0, 0, 0, 0.25); }
    .build__sidebar img, .build__sidebar a {
      display: block;
      margin: 2em 0; }
      .build__sidebar img:first-child, .build__sidebar a:first-child {
        margin-top: 0; }
      .build__sidebar img:last-child, .build__sidebar a:last-child {
        margin-bottom: 0; }
    .build__sidebar .lightbox {
      cursor: zoom-in; }
  .build__container {
    -ms-flex-positive: 1;
    flex-grow: 1; }
  .build__window {
    position: relative;
    width: 100%;
    height: 0;
    padding-bottom: 56.25% !important;
    box-shadow: 0 0 0 0.5em rgba(0, 0, 0, 0.25); }
    .build__window-inner {
      position: absolute;
      top: 0;
      left: 0;
      width: 100%;
      height: 100%;
      background: url("../img/placeholder/build-placeholder.jpg") center/cover no-repeat #231f20; }
  .build__footer {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-pack: end;
    justify-content: flex-end;
    margin-top: 1.75em;
    font-size: .875em;
    color: #fff; }
    .build__footer a {
      color: inherit; }
  .build .logo,
  .build .progress {
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%); }
  .build .logo {
    background: url("../../TemplateData/progressLogo.Light.png") no-repeat center/contain;
    width: 154px;
    height: 130px; }
    .build .logo.Dark {
      background-image: url("../../TemplateData/progressLogo.Dark.png"); }
  .build .progress {
    height: 18px;
    width: 141px;
    margin-top: 90px; }
    .build .progress.Dark .empty {
      background-image: url("../../TemplateData/progressEmpty.Dark.png"); }
    .build .progress.Dark .full {
      background-image: url("../../TemplateData/progressFull.Dark.png"); }
    .build .progress .empty {
      background: url("../../TemplateData/progressEmpty.Light.png") no-repeat right/cover;
      float: right;
      width: 100%;
      height: 100%;
      display: inline-block; }
    .build .progress .full {
      background: url("../../TemplateData/progressFull.Light.png") no-repeat left/cover;
      float: left;
      width: 0%;
      height: 100%;
      display: inline-block; }

@media only screen and (min-width: 1401px) {
  .section.section--build .container {
    width: 85vw; } }

/*
==========================================================================
    Tiles
==========================================================================
*/
/*
==========================================================================
    Body classes
==========================================================================
*/
/*
==========================================================================
    Internet Explorer fixes
==========================================================================
*/
/*
==========================================================================
    iOS fixes
==========================================================================
*/
body.browser-ios .section__background.section__background--image.section__background--fixed {
  background-attachment: scroll; }

/*
==========================================================================
	Media queries
==========================================================================
*/
/**
* Large Devices, Wide Screens
**/
/* == When screen is 1400px or smaller == */
/* == When screen is larger than 1400px == */
/**
* Large Devices, Wide Screens
**/
/* == When screen is 1200px or smaller == */
/* == When screen is larger than 1200px == */
/**
* Medium Devices, Desktops
**/
/* == When screen is 991px or smaller == */
/* == When screen is larger than 991px == */
/**
* Small Devices, Tablets
**/
/* == When screen is 767px or smaller == */
/* == When screen is larger than 767px == */
/**
* Small Devices, Tablets
**/
/* == When screen is 675px or smaller == */
/* == When screen is larger than 675px == */
/**
* Small Devices, Tablets
**/
/* == When screen is 580px or smaller == */
/* == When screen is larger than 580px == */
/**
* Extra Small Devices, Phones
**/
/* == When screen is 480px or smaller == */
@media only screen and (max-width: 480px) {
  html {
    font-size: 14px; } }

/* == When screen is larger than 480px == */
/**
* Extra Small Devices, Phones
**/
/* == When screen is 400px or smaller == */
/* == When screen is larger than 400px == */
/**
* Extra Small Devices, Phones
**/
/* == When screen is 320px or smaller == */
/* == When screen is larger than 320px == */

/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXBwLmNzcyIsInNvdXJjZXMiOlsiYXBwLnNjc3MiLCJfbWl4aW5zLnNjc3MiLCJtaXhpbnMvX21peGluLWZhbWlseS5zY3NzIiwibWl4aW5zL19taXhpbi1mbGV4bWFyZ2luLnNjc3MiLCJtaXhpbnMvX21peGluLWlucHV0LXN0eWxlLXJlc2V0LnNjc3MiLCJtaXhpbnMvX21peGluLXRleHQtbm93cmFwLnNjc3MiLCJfZnVuY3Rpb25zLnNjc3MiLCJfdmFyaWFibGVzLnNjc3MiLCJfYm9vdHN0cmFwLnNjc3MiLCJib290c3RyYXAvX3ZhcmlhYmxlcy5zY3NzIiwiYm9vdHN0cmFwL19taXhpbnMuc2NzcyIsImJvb3RzdHJhcC9taXhpbnMvX2hpZGUtdGV4dC5zY3NzIiwiYm9vdHN0cmFwL21peGlucy9fb3BhY2l0eS5zY3NzIiwiYm9vdHN0cmFwL21peGlucy9faW1hZ2Uuc2NzcyIsImJvb3RzdHJhcC9taXhpbnMvX2xhYmVscy5zY3NzIiwiYm9vdHN0cmFwL21peGlucy9fcmVzZXQtZmlsdGVyLnNjc3MiLCJib290c3RyYXAvbWl4aW5zL19yZXNpemUuc2NzcyIsImJvb3RzdHJhcC9taXhpbnMvX3Jlc3BvbnNpdmUtdmlzaWJpbGl0eS5zY3NzIiwiYm9vdHN0cmFwL21peGlucy9fc2l6ZS5zY3NzIiwiYm9vdHN0cmFwL21peGlucy9fdGFiLWZvY3VzLnNjc3MiLCJib290c3RyYXAvbWl4aW5zL19yZXNldC10ZXh0LnNjc3MiLCJib290c3RyYXAvbWl4aW5zL190ZXh0LWVtcGhhc2lzLnNjc3MiLCJib290c3RyYXAvbWl4aW5zL190ZXh0LW92ZXJmbG93LnNjc3MiLCJib290c3RyYXAvbWl4aW5zL192ZW5kb3ItcHJlZml4ZXMuc2NzcyIsImJvb3RzdHJhcC9taXhpbnMvX2FsZXJ0cy5zY3NzIiwiYm9vdHN0cmFwL21peGlucy9fYnV0dG9ucy5zY3NzIiwiYm9vdHN0cmFwL21peGlucy9fcGFuZWxzLnNjc3MiLCJib290c3RyYXAvbWl4aW5zL19wYWdpbmF0aW9uLnNjc3MiLCJib290c3RyYXAvbWl4aW5zL19saXN0LWdyb3VwLnNjc3MiLCJib290c3RyYXAvbWl4aW5zL19uYXYtZGl2aWRlci5zY3NzIiwiYm9vdHN0cmFwL21peGlucy9fZm9ybXMuc2NzcyIsImJvb3RzdHJhcC9taXhpbnMvX3Byb2dyZXNzLWJhci5zY3NzIiwiYm9vdHN0cmFwL21peGlucy9fdGFibGUtcm93LnNjc3MiLCJib290c3RyYXAvbWl4aW5zL19iYWNrZ3JvdW5kLXZhcmlhbnQuc2NzcyIsImJvb3RzdHJhcC9taXhpbnMvX2JvcmRlci1yYWRpdXMuc2NzcyIsImJvb3RzdHJhcC9taXhpbnMvX2dyYWRpZW50cy5zY3NzIiwiYm9vdHN0cmFwL21peGlucy9fY2xlYXJmaXguc2NzcyIsImJvb3RzdHJhcC9taXhpbnMvX2NlbnRlci1ibG9jay5zY3NzIiwiYm9vdHN0cmFwL21peGlucy9fbmF2LXZlcnRpY2FsLWFsaWduLnNjc3MiLCJib290c3RyYXAvbWl4aW5zL19ncmlkLWZyYW1ld29yay5zY3NzIiwiYm9vdHN0cmFwL21peGlucy9fZ3JpZC5zY3NzIiwiYm9vdHN0cmFwL19jb21wb25lbnQtYW5pbWF0aW9ucy5zY3NzIiwiYm9vdHN0cmFwL19yZXNwb25zaXZlLXV0aWxpdGllcy5zY3NzIiwiX3NsaWNrLnNjc3MiLCJuaXZvLWxpZ2h0Ym94L25pdm8tbGlnaHRib3guc2NzcyIsIm5pdm8tbGlnaHRib3gvdGhlbWVzL2RlZmF1bHQvZGVmYXVsdC5zY3NzIiwiX3Bpa2FkYXkuc2NzcyIsIl9iYXNlLnNjc3MiLCJfZm9udC1mYWNlLnNjc3MiLCJfYW5pbWF0aW9ucy5zY3NzIiwiX2dyaWQuc2NzcyIsIl9jb250ZW50LnNjc3MiLCJfY29tcG9uZW50cy5zY3NzIiwiY29tcG9uZW50cy9fYmFzZS5zY3NzIiwiY29tcG9uZW50cy9fbWFzdGhlYWQuc2NzcyIsImNvbXBvbmVudHMvX2Zvb3Rlci5zY3NzIiwiY29tcG9uZW50cy9fZm9ybXMuc2NzcyIsImNvbXBvbmVudHMvX2ZpbHRlcnMuc2NzcyIsImNvbXBvbmVudHMvX21vZGFscy5zY3NzIiwiY29tcG9uZW50cy9fcG9wb3ZlcnMuc2NzcyIsImNvbXBvbmVudHMvX3Rvb2x0aXBzLnNjc3MiLCJjb21wb25lbnRzL193aWRnZXRzLnNjc3MiLCJjb21wb25lbnRzL19idG5zLnNjc3MiLCJjb21wb25lbnRzL19zZWN0aW9ucy5zY3NzIiwiY29tcG9uZW50cy9fc2VjdGlvbi10aXRsZS5zY3NzIiwiY29tcG9uZW50cy9faGVyby5zY3NzIiwiY29tcG9uZW50cy9fdGVhc2VyLnNjc3MiLCJjb21wb25lbnRzL19idWlsZC5zY3NzIiwiY29tcG9uZW50cy9fdGlsZXMuc2NzcyIsIl9ib2R5LWNsYXNzZXMuc2NzcyIsIl9pZS5zY3NzIiwiX2lvcy5zY3NzIiwiX21lZGlhcXVlcmllcy5zY3NzIiwibWVkaWFxdWVyaWVzL18xNDAwLnNjc3MiLCJtZWRpYXF1ZXJpZXMvXzEyMDAuc2NzcyIsIm1lZGlhcXVlcmllcy9fOTkxLnNjc3MiLCJtZWRpYXF1ZXJpZXMvXzc2Ny5zY3NzIiwibWVkaWFxdWVyaWVzL182NzUuc2NzcyIsIm1lZGlhcXVlcmllcy9fNTgwLnNjc3MiLCJtZWRpYXF1ZXJpZXMvXzQ4MC5zY3NzIiwibWVkaWFxdWVyaWVzL180MDAuc2NzcyIsIm1lZGlhcXVlcmllcy9fMzIwLnNjc3MiXSwic291cmNlc0NvbnRlbnQiOlsiLypcbj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICAgSW1wb3J0IGFsbCBTQ1NTIHBhcnRzIGhlcmVcbj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4qL1xuXG4vLyBpbXBvcnQgYmFzZSBjb21wb25lbnRzXG5AaW1wb3J0ICdtaXhpbnMnO1xuQGltcG9ydCAnZnVuY3Rpb25zJztcbkBpbXBvcnQgJ3ZhcmlhYmxlcyc7XG5cbi8vIGltcG9ydCBib290c3RyYXAgY29tcG9uZW50c1xuQGltcG9ydCAnYm9vdHN0cmFwJztcblxuLy8gaW1wb3J0IHBsdWdpbiBzdHlsZXNoZWV0c1xuQGltcG9ydCAnc2xpY2snO1xuQGltcG9ydCAnbml2by1saWdodGJveC9uaXZvLWxpZ2h0Ym94JztcbkBpbXBvcnQgJ25pdm8tbGlnaHRib3gvdGhlbWVzL2RlZmF1bHQvZGVmYXVsdCc7XG5AaW1wb3J0ICdwaWthZGF5JztcblxuLy8gaW1wb3J0IHNjc3MgcGFydHNcbkBpbXBvcnQgJ2Jhc2UnO1xuQGltcG9ydCAnZm9udC1mYWNlJztcbkBpbXBvcnQgJ2FuaW1hdGlvbnMnO1xuQGltcG9ydCAnZ3JpZCc7XG5AaW1wb3J0ICdjb250ZW50JztcbkBpbXBvcnQgJ2NvbXBvbmVudHMnO1xuQGltcG9ydCAnYm9keS1jbGFzc2VzJztcbkBpbXBvcnQgJ2llJztcbkBpbXBvcnQgJ2lvcyc7XG5AaW1wb3J0ICdtZWRpYXF1ZXJpZXMnO1xuIiwiLypcbj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cdE1peGluc1xuPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiovXG5cbkBpbXBvcnQgJ21peGlucy9taXhpbi1mYW1pbHknO1xuQGltcG9ydCAnbWl4aW5zL21peGluLWZsZXhtYXJnaW4nO1xuQGltcG9ydCAnbWl4aW5zL21peGluLWlucHV0LXN0eWxlLXJlc2V0JztcbkBpbXBvcnQgJ21peGlucy9taXhpbi10ZXh0LW5vd3JhcCc7IiwiLy8vIFNlbGVjdCBhbGwgY2hpbGRyZW4gZnJvbSB0aGUgZmlyc3QgdG8gYCRudW1gLlxuLy8vIEBncm91cCB3aXRoLWFyZ3VtZW50c1xuLy8vIEBjb250ZW50IFtXcml0ZSB0aGUgc3R5bGUgeW91IHdhbnQgdG8gYXBwbHkgdG8gdGhlIGNoaWxkcmVuLCBhbmQgaXQgd2lsbCBiZSBhZGRlZCB3aXRoaW4gdGhlIEBjb250ZW50IGRpcmVjdGl2ZV1cbi8vLyBAcGFyYW0ge251bWJlcn0gJG51bSAtIGlkIG9mIHRoZSBjaGlsZFxuQG1peGluIGZpcnN0KCRudW0pIHtcbiAgJjpudGgtY2hpbGQoLW4gKyAjeyRudW19KSB7XG4gICAgQGNvbnRlbnQ7XG4gIH1cbn1cblxuLy8vIFNlbGVjdCBhbGwgY2hpbGRyZW4gZnJvbSB0aGUgbGFzdCB0byBgJG51bWAuXG4vLy8gQGdyb3VwIHdpdGgtYXJndW1lbnRzXG4vLy8gQGNvbnRlbnQgW1dyaXRlIHRoZSBzdHlsZSB5b3Ugd2FudCB0byBhcHBseSB0byB0aGUgY2hpbGRyZW4sIGFuZCBpdCB3aWxsIGJlIGFkZGVkIHdpdGhpbiB0aGUgQGNvbnRlbnQgZGlyZWN0aXZlXVxuLy8vIEBwYXJhbSB7bnVtYmVyfSAkbnVtIC0gaWQgb2YgdGhlIGNoaWxkXG5AbWl4aW4gbGFzdCgkbnVtKSB7XG4gICAmOm50aC1sYXN0LWNoaWxkKC1uICsgI3skbnVtfSkge1xuICAgIEBjb250ZW50O1xuICB9XG59XG5cbi8vLyBTZWxlY3QgYWxsIGNoaWxkcmVuIGFmdGVyIHRoZSBmaXJzdCB0byBgJG51bWAuXG4vLy8gQGdyb3VwIHdpdGgtYXJndW1lbnRzXG4vLy8gQGNvbnRlbnQgW1dyaXRlIHRoZSBzdHlsZSB5b3Ugd2FudCB0byBhcHBseSB0byB0aGUgY2hpbGRyZW4sIGFuZCBpdCB3aWxsIGJlIGFkZGVkIHdpdGhpbiB0aGUgQGNvbnRlbnQgZGlyZWN0aXZlXVxuLy8vIEBwYXJhbSB7bnVtYmVyfSAkbnVtIC0gaWQgb2YgdGhlIGNoaWxkXG5AbWl4aW4gYWZ0ZXItZmlyc3QoJG51bSkge1xuICAmOm50aC1jaGlsZChuICsgI3skbnVtICsgMX0pIHtcbiAgICBAY29udGVudDtcbiAgfVxufVxuXG4vLy8gU2VsZWN0IGFsbCBjaGlsZHJlbiBiZWZvcmUgYCRudW1gIGZyb20gdGhlIGxhc3QuXG4vLy8gQGdyb3VwIHdpdGgtYXJndW1lbnRzXG4vLy8gQGNvbnRlbnQgW1dyaXRlIHRoZSBzdHlsZSB5b3Ugd2FudCB0byBhcHBseSB0byB0aGUgY2hpbGRyZW4sIGFuZCBpdCB3aWxsIGJlIGFkZGVkIHdpdGhpbiB0aGUgQGNvbnRlbnQgZGlyZWN0aXZlXVxuLy8vIEBwYXJhbSB7bnVtYmVyfSAkbnVtIC0gaWQgb2YgdGhlIGNoaWxkXG5AbWl4aW4gZnJvbS1lbmQoJG51bSkge1xuICAmOm50aC1sYXN0LWNoaWxkKCN7JG51bX0pIHtcbiAgIEBjb250ZW50O1xuICB9XG59XG5cbi8vLyBTZWxlY3QgYWxsIGNoaWxkcmVuIGJldHdlZW4gYCRmaXJzdGAgYW5kIGAkbGFzdGAuXG4vLy8gQGdyb3VwIHdpdGgtYXJndW1lbnRzXG4vLy8gQGNvbnRlbnQgW1dyaXRlIHRoZSBzdHlsZSB5b3Ugd2FudCB0byBhcHBseSB0byB0aGUgY2hpbGRyZW4sIGFuZCBpdCB3aWxsIGJlIGFkZGVkIHdpdGhpbiB0aGUgQGNvbnRlbnQgZGlyZWN0aXZlXVxuQG1peGluIGJldHdlZW4oJGZpcnN0LCAkbGFzdCkge1xuICAmOm50aC1jaGlsZChuICsgI3skZmlyc3R9KTpudGgtY2hpbGQoLW4gKyAjeyRsYXN0fSkge1xuICAgIEBjb250ZW50O1xuICB9XG59XG5cbi8vLyBTZWxlY3QgYWxsIGV2ZW4gY2hpbGRyZW4gYmV0d2VlbiBgJGZpcnN0YCBhbmQgYCRsYXN0YC5cbi8vLyBAZ3JvdXAgd2l0aC1hcmd1bWVudHNcbi8vLyBAY29udGVudCBbV3JpdGUgdGhlIHN0eWxlIHlvdSB3YW50IHRvIGFwcGx5IHRvIHRoZSBjaGlsZHJlbiwgYW5kIGl0IHdpbGwgYmUgYWRkZWQgd2l0aGluIHRoZSBAY29udGVudCBkaXJlY3RpdmVdXG5AbWl4aW4gcGFpci1iZXR3ZWVuKCRmaXJzdCwgJGxhc3QpIHtcbiAgJjpudGgtY2hpbGQoZXZlbik6bnRoLWNoaWxkKG4gKyAjeyRmaXJzdH0pOm50aC1jaGlsZCgtbiArICN7JGxhc3R9KSB7XG4gICAgQGNvbnRlbnQ7XG4gIH1cbn1cblxuLy8vIFNlbGVjdCBhbGwgb2RkIGNoaWxkcmVuIGJldHdlZW4gYCRmaXJzdGAgYW5kIGAkbGFzdGAuXG4vLy8gQGdyb3VwIHdpdGgtYXJndW1lbnRzXG4vLy8gQGNvbnRlbnQgW1dyaXRlIHRoZSBzdHlsZSB5b3Ugd2FudCB0byBhcHBseSB0byB0aGUgY2hpbGRyZW4sIGFuZCBpdCB3aWxsIGJlIGFkZGVkIHdpdGhpbiB0aGUgQGNvbnRlbnQgZGlyZWN0aXZlXVxuQG1peGluIGltcGFpci1iZXR3ZWVuKCRmaXJzdCwgJGxhc3QpIHtcbiAgJjpudGgtY2hpbGQob2RkKTpudGgtY2hpbGQobiArICN7JGZpcnN0fSk6bnRoLWNoaWxkKC1uICsgI3skbGFzdH0pIHtcbiAgICBAY29udGVudDtcbiAgfVxufVxuXG4vLy8gU2VsZWN0IGFsbCBgJG51bWAgY2hpbGRyZW4gYmV0d2VlbiBgJGZpcnN0YCBhbmQgYCRsYXN0YC5cbi8vLyBAZ3JvdXAgd2l0aC1hcmd1bWVudHNcbi8vLyBAY29udGVudCBbV3JpdGUgdGhlIHN0eWxlIHlvdSB3YW50IHRvIGFwcGx5IHRvIHRoZSBjaGlsZHJlbiwgYW5kIGl0IHdpbGwgYmUgYWRkZWQgd2l0aGluIHRoZSBAY29udGVudCBkaXJlY3RpdmVdXG5AbWl4aW4gbi1iZXR3ZWVuKCRudW0sICRmaXJzdCwgJGxhc3QpIHtcbiAgJjpudGgtY2hpbGQoI3skbnVtfW4pOm50aC1jaGlsZChuICsgI3skZmlyc3R9KTpudGgtY2hpbGQoLW4gKyAjeyRsYXN0fSkge1xuICAgIEBjb250ZW50O1xuICB9XG59XG5cblxuLy8vIFNlbGVjdCBhbGwgY2hpbGRyZW4gYnV0IGAkbnVtYC5cbi8vLyBAZ3JvdXAgd2l0aC1hcmd1bWVudHNcbi8vLyBAY29udGVudCBbV3JpdGUgdGhlIHN0eWxlIHlvdSB3YW50IHRvIGFwcGx5IHRvIHRoZSBjaGlsZHJlbiwgYW5kIGl0IHdpbGwgYmUgYWRkZWQgd2l0aGluIHRoZSBAY29udGVudCBkaXJlY3RpdmVdXG4vLy8gQHBhcmFtIHtudW1iZXJ9ICRudW0gLSBpZCBvZiB0aGUgY2hpbGRcbkBtaXhpbiBhbGwtYnV0KCRudW0pIHtcbiAgJjpub3QoOm50aC1jaGlsZCgjeyRudW19KSkge1xuICAgIEBjb250ZW50O1xuICB9XG59XG5cbi8vLyBTZWxlY3QgY2hpbGRyZW4gZWFjaCBgJG51bWAuXG4vLy8gQGdyb3VwIHdpdGgtYXJndW1lbnRzXG4vLy8gQGNvbnRlbnQgW1dyaXRlIHRoZSBzdHlsZSB5b3Ugd2FudCB0byBhcHBseSB0byB0aGUgY2hpbGRyZW4sIGFuZCBpdCB3aWxsIGJlIGFkZGVkIHdpdGhpbiB0aGUgQGNvbnRlbnQgZGlyZWN0aXZlXVxuLy8vIEBwYXJhbSB7bnVtYmVyfSAkbnVtIC0gaWQgb2YgdGhlIGNoaWxkXG4vLy8gQGFsaWFzIGV2ZXJ5XG5AbWl4aW4gZWFjaCgkbnVtKSB7XG4gICY6bnRoLWNoaWxkKCN7JG51bX1uKSB7XG4gICAgQGNvbnRlbnQ7XG4gIH1cbn1cblxuLy8vIFNlbGVjdCBjaGlsZHJlbiBlYWNoIGAkbnVtYC5cbi8vLyBAZ3JvdXAgd2l0aC1hcmd1bWVudHNcbi8vLyBAY29udGVudCBbV3JpdGUgdGhlIHN0eWxlIHlvdSB3YW50IHRvIGFwcGx5IHRvIHRoZSBjaGlsZHJlbiwgYW5kIGl0IHdpbGwgYmUgYWRkZWQgd2l0aGluIHRoZSBAY29udGVudCBkaXJlY3RpdmVdXG4vLy8gQHBhcmFtIHtudW1iZXJ9ICRudW0gLSBpZCBvZiB0aGUgY2hpbGRcbkBtaXhpbiBldmVyeSgkbnVtKSB7XG4gICY6bnRoLWNoaWxkKCN7JG51bX1uKSB7XG4gICAgQGNvbnRlbnQ7XG4gIH1cbn1cblxuLy8vIFNlbGVjdCB0aGUgYCRudW1gIGNoaWxkIGZyb20gdGhlIHN0YXJ0IGFuZCB0aGUgYCRudW1gIGNoaWxkIGZyb20gdGhlIGxhc3QuXG4vLy8gQGdyb3VwIHdpdGgtYXJndW1lbnRzXG4vLy8gQGNvbnRlbnQgW1dyaXRlIHRoZSBzdHlsZSB5b3Ugd2FudCB0byBhcHBseSB0byB0aGUgY2hpbGRyZW4sIGFuZCBpdCB3aWxsIGJlIGFkZGVkIHdpdGhpbiB0aGUgQGNvbnRlbnQgZGlyZWN0aXZlXVxuLy8vIEBwYXJhbSB7bnVtYmVyfSAkbnVtIC0gaWQgb2YgdGhlIGNoaWxkXG5AbWl4aW4gZnJvbS1maXJzdC1sYXN0KCRudW0pIHtcbiAgJjpudGgtY2hpbGQoI3skbnVtfSksXG4gICY6bnRoLWxhc3QtY2hpbGQoI3skbnVtfSkge1xuICAgIEBjb250ZW50O1xuICB9XG59XG5cblxuLy8vIFNlbGVjdCB0aGUgaXRlbSBpbiB0aGUgbWlkZGxlIG9mIGAkbnVtYCBjaGlsZC4gT25seSB3b3JrcyB3aXRoIG9kZCBudW1iZXJcbi8vLyBjaGFpbi5cbi8vLyBAZ3JvdXAgd2l0aC1hcmd1bWVudHNcbi8vLyBAY29udGVudCBbV3JpdGUgdGhlIHN0eWxlIHlvdSB3YW50IHRvIGFwcGx5IHRvIHRoZSBjaGlsZHJlbiwgYW5kIGl0IHdpbGwgYmUgYWRkZWQgd2l0aGluIHRoZSBAY29udGVudCBkaXJlY3RpdmVdXG4vLy8gQHBhcmFtIHtudW1iZXJ9ICRudW0gLSBpZCBvZiB0aGUgY2hpbGRcbkBtaXhpbiBtaWRkbGUoJG51bSkge1xuICAmOm50aC1jaGlsZCgje3JvdW5kKCRudW0gLyAyKX0pe1xuICAgIEBjb250ZW50O1xuICB9XG59XG5cblxuLy8vIFNlbGVjdCBhbGwgY2hpbGRyZW4gYmV0d2VlbiB0aGUgYCRudW1gIGZpcnN0IGFuZCB0aGUgYCRudW1gIGxhc3QuXG4vLy8gQGdyb3VwIHdpdGgtYXJndW1lbnRzXG4vLy8gQGNvbnRlbnQgW1dyaXRlIHRoZSBzdHlsZSB5b3Ugd2FudCB0byBhcHBseSB0byB0aGUgY2hpbGRyZW4sIGFuZCBpdCB3aWxsIGJlIGFkZGVkIHdpdGhpbiB0aGUgQGNvbnRlbnQgZGlyZWN0aXZlXVxuLy8vIEBwYXJhbSB7bnVtYmVyfSAkbnVtIC0gaWQgb2YgdGhlIGNoaWxkXG5AbWl4aW4gYWxsLWJ1dC1maXJzdC1sYXN0KCRudW0pIHtcbiAgJjpudGgtY2hpbGQobiArICN7JG51bX0pOm50aC1sYXN0LWNoaWxkKG4gKyAjeyRudW19KSB7XG4gICAgQGNvbnRlbnQ7XG4gIH1cbn1cblxuXG4vLy8gVGhpcyBJL08gbWl4aW4gd2lsbCBvbmx5IHNlbGVjdCB0aGUgZmlyc3Qgb2YgYCRsaW1pdGAgaXRlbXMuIEl0IHdpbGwgbm90XG4vLy8gd29yayBpZiB0aGVyZSBpcyBub3QgYXMgbXVjaCBhcyBpdGVtIGFzIHlvdSBzZXQgaW4gYCRsaW1pdGAuXG4vLy8gQGdyb3VwIGlvXG4vLy8gQHBhcmFtIHtudW1iZXJ9ICRsaW1pdFxuLy8vIEBjb250ZW50IFtXcml0ZSB0aGUgc3R5bGUgeW91IHdhbnQgdG8gYXBwbHkgdG8gdGhlIGNoaWxkcmVuLCBhbmQgaXQgd2lsbCBiZSBhZGRlZCB3aXRoaW4gdGhlIEBjb250ZW50IGRpcmVjdGl2ZV1cbkBtaXhpbiBmaXJzdC1vZigkbGltaXQpIHtcbiAgJjpudGgtbGFzdC1jaGlsZCgjeyRsaW1pdH0pOmZpcnN0LWNoaWxkIHtcbiAgIEBjb250ZW50O1xuICB9XG59XG5cbi8vLyBUaGlzIEkvTyBtaXhpbiB3aWxsIG9ubHkgc2VsZWN0IHRoZSBsYXN0IG9mIGAkbGltaXRgIGl0ZW1zLiBJdCB3aWxsIG5vdFxuLy8vIGlmIHRoZXJlIGlzIG5vdCBhcyBtdWNoIGFzIGl0ZW0gYXMgeW91IHNldCBpbiBgJGxpbWl0YC5cbi8vLyBAZ3JvdXAgaW9cbi8vLyBAcGFyYW0ge251bWJlcn0gJGxpbWl0XG4vLy8gQGNvbnRlbnQgW1dyaXRlIHRoZSBzdHlsZSB5b3Ugd2FudCB0byBhcHBseSB0byB0aGUgY2hpbGRyZW4sIGFuZCBpdCB3aWxsIGJlIGFkZGVkIHdpdGhpbiB0aGUgQGNvbnRlbnQgZGlyZWN0aXZlXVxuQG1peGluIGxhc3Qtb2YoJGxpbWl0KSB7XG4gICY6bnRoLW9mLXR5cGUoI3skbGltaXR9KTpudGgtbGFzdC1vZi10eXBlKDEpIHtcbiAgICBAY29udGVudDtcbiAgfVxufVxuXG4vLy8gU2VsZWN0IGFsbCBldmVuIGNoaWxkcmVuLlxuLy8vIEBncm91cCBuby1hcmd1bWVudHNcbi8vLyBAY29udGVudCBbV3JpdGUgdGhlIHN0eWxlIHlvdSB3YW50IHRvIGFwcGx5IHRvIHRoZSBjaGlsZHJlbiwgYW5kIGl0IHdpbGwgYmUgYWRkZWQgd2l0aGluIHRoZSBAY29udGVudCBkaXJlY3RpdmVdXG5AbWl4aW4gZXZlbigpIHtcbiAgJjpudGgtY2hpbGQoZXZlbikge1xuICAgIEBjb250ZW50O1xuICB9XG59XG5cbi8vLyBTZWxlY3QgYWxsIG9kZCBjaGlsZHJlbi5cbi8vLyBAZ3JvdXAgbm8tYXJndW1lbnRzXG4vLy8gQGNvbnRlbnQgW1dyaXRlIHRoZSBzdHlsZSB5b3Ugd2FudCB0byBhcHBseSB0byB0aGUgY2hpbGRyZW4sIGFuZCBpdCB3aWxsIGJlIGFkZGVkIHdpdGhpbiB0aGUgQGNvbnRlbnQgZGlyZWN0aXZlXVxuQG1peGluIG9kZCgpIHtcbiAgJjpudGgtY2hpbGQob2RkKSB7XG4gICAgQGNvbnRlbnQ7XG4gIH1cbn1cblxuLy8vIFNlbGVjdCBvbmx5IHRoZSBmaXJzdCBhbmQgbGFzdCBjaGlsZC5cbi8vLyBAZ3JvdXAgbm8tYXJndW1lbnRzXG4vLy8gQGNvbnRlbnQgW1dyaXRlIHRoZSBzdHlsZSB5b3Ugd2FudCB0byBhcHBseSB0byB0aGUgY2hpbGRyZW4sIGFuZCBpdCB3aWxsIGJlIGFkZGVkIHdpdGhpbiB0aGUgQGNvbnRlbnQgZGlyZWN0aXZlXVxuQG1peGluIGZpcnN0LWxhc3QoKSB7XG4gICY6Zmlyc3QtY2hpbGQsXG4gICY6bGFzdC1jaGlsZCB7XG4gICAgQGNvbnRlbnQ7XG4gIH1cbn1cblxuLy8vIFdpbGwgb25seSBzZWxlY3QgdGhlIGNoaWxkIGlmIGl04oCZcyB1bmlxdWUuXG4vLy8gQGdyb3VwIG5vLWFyZ3VtZW50c1xuLy8vIEBjb250ZW50IFtXcml0ZSB0aGUgc3R5bGUgeW91IHdhbnQgdG8gYXBwbHkgdG8gdGhlIGNoaWxkcmVuLCBhbmQgaXQgd2lsbCBiZSBhZGRlZCB3aXRoaW4gdGhlIEBjb250ZW50IGRpcmVjdGl2ZV1cbi8vLyBAYWxpYXMgb25seVxuQG1peGluIHVuaXF1ZSgpIHtcbiAgJjpvbmx5LWNoaWxkIHtcbiAgICBAY29udGVudDtcbiAgfVxufVxuXG4vLy8gV2lsbCBvbmx5IHNlbGVjdCB0aGUgY2hpbGQgaWYgaXTigJlzIHVuaXF1ZS5cbi8vLyBAZ3JvdXAgbm8tYXJndW1lbnRzXG4vLy8gQGNvbnRlbnQgW1dyaXRlIHRoZSBzdHlsZSB5b3Ugd2FudCB0byBhcHBseSB0byB0aGUgY2hpbGRyZW4sIGFuZCBpdCB3aWxsIGJlIGFkZGVkIHdpdGhpbiB0aGUgQGNvbnRlbnQgZGlyZWN0aXZlXVxuQG1peGluIG9ubHkoKSB7XG4gICY6b25seS1jaGlsZCB7XG4gICAgQGNvbnRlbnQ7XG4gIH1cbn1cblxuLy8vIFdpbGwgb25seSBzZWxlY3QgY2hpbGRyZW4gaWYgdGhleSBhcmUgbm90IHVuaXF1ZS4gTWVhbmluZyBpZiB0aGVyZSBpcyBhdFxuLy8vIGxlYXN0IDIgY2hpbGRyZW4sIHRoZSBzdHlsZSBpcyBhcHBsaWVkLlxuLy8vIEBncm91cCBuby1hcmd1bWVudHNcbi8vLyBAY29udGVudCBbV3JpdGUgdGhlIHN0eWxlIHlvdSB3YW50IHRvIGFwcGx5IHRvIHRoZSBjaGlsZHJlbiwgYW5kIGl0IHdpbGwgYmUgYWRkZWQgd2l0aGluIHRoZSBAY29udGVudCBkaXJlY3RpdmVdXG5AbWl4aW4gbm90LXVuaXF1ZSgpIHtcbiAgJjpub3QoOm9ubHktY2hpbGQpIHtcbiAgICBAY29udGVudDtcbiAgfVxufVxuXG5cbi8vLyBUaGlzIG1peGluIGlzIHVzZWQgdG8gYXV0b21hdGljYWxseSBzb3J0IHotaW5kZXggaW4gbnVtZXJpY2FsIG9yZGVyLiBCdXQgaXRcbi8vLyBjYW4gYWxzbyBzb3J0IHRoZW0gaW4gYW50aS1udW1lcmljYWwgb3JkZXIsIGRlcGVuZGluZyB0aGUgcGFyYW1ldGVycyB5b3UgdXNlLlxuLy8vIEBncm91cCB1c2luZyBmdW5jdGlvbnNcbi8vLyBAY29udGVudCBbV3JpdGUgdGhlIHN0eWxlIHlvdSB3YW50IHRvIGFwcGx5IHRvIHRoZSBjaGlsZHJlbiwgYW5kIGl0IHdpbGwgYmUgYWRkZWQgd2l0aGluIHRoZSBAY29udGVudCBkaXJlY3RpdmVdXG4vLy8gQHBhcmFtIHtudW1iZXJ9ICRudW0gLSBOdW1iZXIgb2YgY2hpbGRyZW5cbi8vLyBAcGFyYW0ge3N0cmluZ30gJGRpcmVjdGlvbiBbZm9yd2FyZF0gLSBEaXJlY3Rpb24gb2YgdGhlIHNvcnRcbi8vLyBAcGFyYW0ge251bWJlcn0gJGluZGV4IFswXSAtIEluZGV4IG9mIHRoZSBzb3J0aW5nXG5AbWl4aW4gY2hpbGQtaW5kZXgoJG51bSwgJGRpcmVjdGlvbjogJ2ZvcndhcmQnLCAkaW5kZXg6IDApIHtcbiAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCAkbnVtIHtcbiAgICBAaWYgKCRkaXJlY3Rpb24gPT0gJ2ZvcndhcmQnKSB7XG4gICAgICAmOm50aC1jaGlsZCgjeyRpfSkge1xuICAgICAgICB6LWluZGV4OiBvcmRlci1pbmRleCgkaSwgJGluZGV4KTtcbiAgICAgICAgQGNvbnRlbnQ7XG4gICAgICB9XG4gICAgfSBAZWxzZSBpZiAoJGRpcmVjdGlvbiA9PSAnYmFja3dhcmQnKSB7XG4gICAgICAmOm50aC1sYXN0LWNoaWxkKCN7JGl9KSB7XG4gICAgICAgIHotaW5kZXg6IG9yZGVyLWluZGV4KCRpLCAkaW5kZXgpO1xuICAgICAgICBAY29udGVudDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLy8vIFVzZWQgYnkgdGhlIGNoaWxkLWluZGV4IG1peGluLiBJdCB3aWxsIHJldHVybmVkIHRoZSBwcm9wZXIgc29ydGVkIG51bWJlcnNcbi8vLyBkZXBlbmRpbmcgb24gdGhlIGAkaW5kZXhgIHZhbHVlLlxuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuLy8vIEBwYXJhbSB7bnVtYmVyfSAkbnVtIC0gTnVtYmVyIG9mIGNoaWxkcmVuXG4vLy8gQHBhcmFtIHtudW1iZXJ9ICRpbmRleCAtIEluZGV4IG9mIHRoZSBzb3J0aW5nXG5AZnVuY3Rpb24gb3JkZXItaW5kZXgoJGksICRpbmRleCkge1xuICBAcmV0dXJuICgkaW5kZXggKyAkaSk7XG59XG4iLCJAbWl4aW4gZmxleG1hcmdpbigkZGlyZWN0aW9uOiB2ZXJ0aWNhbCkge1xuXG4gICAgQGlmICRkaXJlY3Rpb24gPT0gdmVydGljYWwge1xuXG4gICAgICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgICAgfVxuXG4gICAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgQGlmICRkaXJlY3Rpb24gPT0gaG9yaXpvbnRhbCB7XG5cbiAgICAgICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgICAgfVxuXG4gICAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICAgIH1cbiAgICB9XG59IiwiQG1peGluIGlucHV0LXN0eWxlLXJlc2V0IHtcbiAgICBhcHBlYXJhbmNlOiBub25lO1xuICAgIGhlaWdodDogYXV0bztcbiAgICB3aWR0aDogYXV0bztcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMDtcbiAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgIGJvcmRlcjogMDtcbiAgICBiYWNrZ3JvdW5kOiBub25lO1xuICAgIGZvbnQtZmFtaWx5OiBpbmhlcml0O1xuICAgIGZvbnQtc2l6ZTogMXJlbTtcbn0iLCJAbWl4aW4gdGV4dC1ub3dyYXAge1xuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbn0iLCIvKlxuPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblx0RnVuY3Rpb25zXG49PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuKi9cblxuQGZ1bmN0aW9uIHRpbnQoICRjb2xvciwgJHBlcmNlbnRhZ2UgKSB7XG4gICAgQHJldHVybiBtaXgoIHdoaXRlLCAkY29sb3IsICRwZXJjZW50YWdlICk7XG59XG5cbkBmdW5jdGlvbiBzaGFkZSggJGNvbG9yLCAkcGVyY2VudGFnZSApIHtcbiAgICBAcmV0dXJuIG1peCggYmxhY2ssICRjb2xvciwgJHBlcmNlbnRhZ2UgKTtcbn0iLCIvKlxuPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgICBWYXJpYWJsZXNcbj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4qL1xuXG4kZm9udC1wYXRoOiAnLi4vZm9udHMnICFkZWZhdWx0O1xuXG4kY29sLXByaW06ICMwMDFmODI7XG4kY29sLXNlYzogIzAwNWVlZjtcbiRjb2wtdGVydDogIzc3MDViYztcbiRjb2wtcXVhdDogIzc3ZGRmNTtcbiRjb2wtY2lucTogI2ZmOTk5ODtcblxuJGNvbC1ib2R5LWJnOiAjZmZmO1xuXG4kY29sLXRleHQ6ICMzMzM7XG4kY29sLXRleHQteC1kYXJrOiBzaGFkZSggJGNvbC10ZXh0LCA1MCUgKTtcbiRjb2wtdGV4dC1kYXJrOiBzaGFkZSggJGNvbC10ZXh0LCAyNSUgKTtcbiRjb2wtdGV4dC1tZWRpdW06IHRpbnQoICRjb2wtdGV4dCwgMjUlICk7XG4kY29sLXRleHQtbGlnaHQ6IHRpbnQoICRjb2wtdGV4dCwgNTAlICk7XG4kY29sLXRleHQteC1saWdodDogdGludCggJGNvbC10ZXh0LCA3NSUgKTtcblxuJGNvbC1ncmV5LXgtbGlnaHQ6IHRpbnQoICRjb2wtdGV4dCwgOTcuNSUgKTtcbiRjb2wtZ3JleS1saWdodDogdGludCggJGNvbC10ZXh0LCA5NSUgKTtcbiRjb2wtZ3JleTogdGludCggJGNvbC10ZXh0LCA5MCUgKTtcbiRjb2wtZ3JleS1tZWRpdW06IHRpbnQoICRjb2wtdGV4dCwgODUlICk7XG4kY29sLWdyZXktZGFyazogdGludCggJGNvbC10ZXh0LCA4MCUgKTtcbiRjb2wtZ3JleS14LWRhcms6IHRpbnQoICRjb2wtdGV4dCwgNzAlICk7XG5cbiRmb250LXByaW06ICdDYXB0dXJhJywgc3lzdGVtLXVpLCBzYW5zLXNlcmlmO1xuJGZvbnQtc2VjOiAkZm9udC1wcmltO1xuXG4kZm9udC1zaXplLWJhc2U6IDE2cHg7XG4kZm9udC1zaXplLWJhc2UtbW9iaWxlOiAxNHB4O1xuXG4kY29sLWVycm9yOiByZWQ7XG4kY29sLXdhcm5pbmc6IG9yYW5nZTtcbiRjb2wtc3VjY2VzczogZ3JlZW47XG5cbiRjb2wtdHdpdHRlcjogIzFkYTFmMjtcbiRjb2wtZmFjZWJvb2s6ICMyMTcyZjA7XG4kY29sLWxpbmtlZGluOiAjMDA3N2I1O1xuJGNvbC1nb29nbGU6ICNkZDRiMzk7XG4kY29sLXlvdXR1YmU6ICNmZjAwMDA7XG4kY29sLXZpbWVvOiAjMGZhZWYxO1xuJGNvbC1pbnN0YWdyYW06ICM0MDVkZTY7XG4kY29sLXdoYXRzYXBwOiAjMjVkMzY2O1xuJGNvbC1waW50ZXJlc3Q6ICNiZDA4MWM7XG4kY29sLWRyb3Bib3g6ICMwMDdlZTU7XG4kY29sLXBheXBhbDogIzAwNzBiYTsiLCIvKiFcbiAqIEJvb3RzdHJhcCB2My4zLjcgKGh0dHA6Ly9nZXRib290c3RyYXAuY29tKVxuICogQ29weXJpZ2h0IDIwMTEtMjAxNiBUd2l0dGVyLCBJbmMuXG4gKiBMaWNlbnNlZCB1bmRlciBNSVQgKGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9ibG9iL21hc3Rlci9MSUNFTlNFKVxuICovXG5cbi8vIENvcmUgdmFyaWFibGVzIGFuZCBtaXhpbnNcbkBpbXBvcnQgXCJib290c3RyYXAvdmFyaWFibGVzXCI7XG5AaW1wb3J0IFwiYm9vdHN0cmFwL21peGluc1wiO1xuXG4vLyBSZXNldCBhbmQgZGVwZW5kZW5jaWVzXG4vLyBAaW1wb3J0IFwiYm9vdHN0cmFwL25vcm1hbGl6ZVwiO1xuLy8gQGltcG9ydCBcImJvb3RzdHJhcC9wcmludFwiO1xuLy8gQGltcG9ydCBcImJvb3RzdHJhcC9nbHlwaGljb25zXCI7XG5cbi8vIENvcmUgQ1NTXG4vLyBAaW1wb3J0IFwiYm9vdHN0cmFwL3NjYWZmb2xkaW5nXCI7XG4vLyBAaW1wb3J0IFwiYm9vdHN0cmFwL3R5cGVcIjtcbi8vIEBpbXBvcnQgXCJib290c3RyYXAvY29kZVwiO1xuLy8gQGltcG9ydCBcImJvb3RzdHJhcC9ncmlkXCI7XG4vLyBAaW1wb3J0IFwiYm9vdHN0cmFwL3RhYmxlc1wiO1xuLy8gQGltcG9ydCBcImJvb3RzdHJhcC9mb3Jtc1wiO1xuLy8gQGltcG9ydCBcImJvb3RzdHJhcC9idXR0b25zXCI7XG5cbi8vIENvbXBvbmVudHNcbkBpbXBvcnQgXCJib290c3RyYXAvY29tcG9uZW50LWFuaW1hdGlvbnNcIjtcbi8vIEBpbXBvcnQgXCJib290c3RyYXAvZHJvcGRvd25zXCI7XG4vLyBAaW1wb3J0IFwiYm9vdHN0cmFwL2J1dHRvbi1ncm91cHNcIjtcbi8vIEBpbXBvcnQgXCJib290c3RyYXAvaW5wdXQtZ3JvdXBzXCI7XG4vLyBAaW1wb3J0IFwiYm9vdHN0cmFwL25hdnNcIjtcbi8vIEBpbXBvcnQgXCJib290c3RyYXAvbmF2YmFyXCI7XG4vLyBAaW1wb3J0IFwiYm9vdHN0cmFwL2JyZWFkY3J1bWJzXCI7XG4vLyBAaW1wb3J0IFwiYm9vdHN0cmFwL3BhZ2luYXRpb25cIjtcbi8vIEBpbXBvcnQgXCJib290c3RyYXAvcGFnZXJcIjtcbi8vIEBpbXBvcnQgXCJib290c3RyYXAvbGFiZWxzXCI7XG4vLyBAaW1wb3J0IFwiYm9vdHN0cmFwL2JhZGdlc1wiO1xuLy8gQGltcG9ydCBcImJvb3RzdHJhcC9qdW1ib3Ryb25cIjtcbi8vIEBpbXBvcnQgXCJib290c3RyYXAvdGh1bWJuYWlsc1wiO1xuLy8gQGltcG9ydCBcImJvb3RzdHJhcC9hbGVydHNcIjtcbi8vIEBpbXBvcnQgXCJib290c3RyYXAvcHJvZ3Jlc3MtYmFyc1wiO1xuLy8gQGltcG9ydCBcImJvb3RzdHJhcC9tZWRpYVwiO1xuLy8gQGltcG9ydCBcImJvb3RzdHJhcC9saXN0LWdyb3VwXCI7XG4vLyBAaW1wb3J0IFwiYm9vdHN0cmFwL3BhbmVsc1wiO1xuLy8gQGltcG9ydCBcImJvb3RzdHJhcC9yZXNwb25zaXZlLWVtYmVkXCI7XG4vLyBAaW1wb3J0IFwiYm9vdHN0cmFwL3dlbGxzXCI7XG4vLyBAaW1wb3J0IFwiYm9vdHN0cmFwL2Nsb3NlXCI7XG5cbi8vIENvbXBvbmVudHMgdy8gSmF2YVNjcmlwdFxuLy8gQGltcG9ydCBcImJvb3RzdHJhcC9tb2RhbHNcIjtcbi8vIEBpbXBvcnQgXCJib290c3RyYXAvdG9vbHRpcFwiO1xuLy8gQGltcG9ydCBcImJvb3RzdHJhcC9wb3BvdmVyc1wiO1xuLy8gQGltcG9ydCBcImJvb3RzdHJhcC9jYXJvdXNlbFwiO1xuXG4vLyBVdGlsaXR5IGNsYXNzZXNcbi8vIEBpbXBvcnQgXCJib290c3RyYXAvdXRpbGl0aWVzXCI7XG5AaW1wb3J0IFwiYm9vdHN0cmFwL3Jlc3BvbnNpdmUtdXRpbGl0aWVzXCI7IiwiJGJvb3RzdHJhcC1zYXNzLWFzc2V0LWhlbHBlcjogZmFsc2UgIWRlZmF1bHQ7XG4vL1xuLy8gVmFyaWFibGVzXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG5cbi8vPT0gQ29sb3JzXG4vL1xuLy8jIyBHcmF5IGFuZCBicmFuZCBjb2xvcnMgZm9yIHVzZSBhY3Jvc3MgQm9vdHN0cmFwLlxuXG4kZ3JheS1iYXNlOiAgICAgICAgICAgICAgIzAwMCAhZGVmYXVsdDtcbiRncmF5LWRhcmtlcjogICAgICAgICAgICBsaWdodGVuKCRncmF5LWJhc2UsIDEzLjUlKSAhZGVmYXVsdDsgLy8gIzIyMlxuJGdyYXktZGFyazogICAgICAgICAgICAgIGxpZ2h0ZW4oJGdyYXktYmFzZSwgMjAlKSAhZGVmYXVsdDsgICAvLyAjMzMzXG4kZ3JheTogICAgICAgICAgICAgICAgICAgbGlnaHRlbigkZ3JheS1iYXNlLCAzMy41JSkgIWRlZmF1bHQ7IC8vICM1NTVcbiRncmF5LWxpZ2h0OiAgICAgICAgICAgICBsaWdodGVuKCRncmF5LWJhc2UsIDQ2LjclKSAhZGVmYXVsdDsgLy8gIzc3N1xuJGdyYXktbGlnaHRlcjogICAgICAgICAgIGxpZ2h0ZW4oJGdyYXktYmFzZSwgOTMuNSUpICFkZWZhdWx0OyAvLyAjZWVlXG5cbiRicmFuZC1wcmltYXJ5OiAgICAgICAgIGRhcmtlbigjNDI4YmNhLCA2LjUlKSAhZGVmYXVsdDsgLy8gIzMzN2FiN1xuJGJyYW5kLXN1Y2Nlc3M6ICAgICAgICAgIzVjYjg1YyAhZGVmYXVsdDtcbiRicmFuZC1pbmZvOiAgICAgICAgICAgICM1YmMwZGUgIWRlZmF1bHQ7XG4kYnJhbmQtd2FybmluZzogICAgICAgICAjZjBhZDRlICFkZWZhdWx0O1xuJGJyYW5kLWRhbmdlcjogICAgICAgICAgI2Q5NTM0ZiAhZGVmYXVsdDtcblxuXG4vLz09IFNjYWZmb2xkaW5nXG4vL1xuLy8jIyBTZXR0aW5ncyBmb3Igc29tZSBvZiB0aGUgbW9zdCBnbG9iYWwgc3R5bGVzLlxuXG4vLyoqIEJhY2tncm91bmQgY29sb3IgZm9yIGA8Ym9keT5gLlxuJGJvZHktYmc6ICAgICAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcbi8vKiogR2xvYmFsIHRleHQgY29sb3Igb24gYDxib2R5PmAuXG4kdGV4dC1jb2xvcjogICAgICAgICAgICAkZ3JheS1kYXJrICFkZWZhdWx0O1xuXG4vLyoqIEdsb2JhbCB0ZXh0dWFsIGxpbmsgY29sb3IuXG4kbGluay1jb2xvcjogICAgICAgICAgICAkYnJhbmQtcHJpbWFyeSAhZGVmYXVsdDtcbi8vKiogTGluayBob3ZlciBjb2xvciBzZXQgdmlhIGBkYXJrZW4oKWAgZnVuY3Rpb24uXG4kbGluay1ob3Zlci1jb2xvcjogICAgICBkYXJrZW4oJGxpbmstY29sb3IsIDE1JSkgIWRlZmF1bHQ7XG4vLyoqIExpbmsgaG92ZXIgZGVjb3JhdGlvbi5cbiRsaW5rLWhvdmVyLWRlY29yYXRpb246IHVuZGVybGluZSAhZGVmYXVsdDtcblxuXG4vLz09IFR5cG9ncmFwaHlcbi8vXG4vLyMjIEZvbnQsIGxpbmUtaGVpZ2h0LCBhbmQgY29sb3IgZm9yIGJvZHkgdGV4dCwgaGVhZGluZ3MsIGFuZCBtb3JlLlxuXG4kZm9udC1mYW1pbHktc2Fucy1zZXJpZjogIFwiSGVsdmV0aWNhIE5ldWVcIiwgSGVsdmV0aWNhLCBBcmlhbCwgc2Fucy1zZXJpZiAhZGVmYXVsdDtcbiRmb250LWZhbWlseS1zZXJpZjogICAgICAgR2VvcmdpYSwgXCJUaW1lcyBOZXcgUm9tYW5cIiwgVGltZXMsIHNlcmlmICFkZWZhdWx0O1xuLy8qKiBEZWZhdWx0IG1vbm9zcGFjZSBmb250cyBmb3IgYDxjb2RlPmAsIGA8a2JkPmAsIGFuZCBgPHByZT5gLlxuJGZvbnQtZmFtaWx5LW1vbm9zcGFjZTogICBNZW5sbywgTW9uYWNvLCBDb25zb2xhcywgXCJDb3VyaWVyIE5ld1wiLCBtb25vc3BhY2UgIWRlZmF1bHQ7XG4kZm9udC1mYW1pbHktYmFzZTogICAgICAgICRmb250LWZhbWlseS1zYW5zLXNlcmlmICFkZWZhdWx0O1xuXG4kZm9udC1zaXplLWJhc2U6ICAgICAgICAgIDE0cHggIWRlZmF1bHQ7XG4kZm9udC1zaXplLWxhcmdlOiAgICAgICAgIGNlaWwoKCRmb250LXNpemUtYmFzZSAqIDEuMjUpKSAhZGVmYXVsdDsgLy8gfjE4cHhcbiRmb250LXNpemUtc21hbGw6ICAgICAgICAgY2VpbCgoJGZvbnQtc2l6ZS1iYXNlICogMC44NSkpICFkZWZhdWx0OyAvLyB+MTJweFxuXG4kZm9udC1zaXplLWgxOiAgICAgICAgICAgIGZsb29yKCgkZm9udC1zaXplLWJhc2UgKiAyLjYpKSAhZGVmYXVsdDsgLy8gfjM2cHhcbiRmb250LXNpemUtaDI6ICAgICAgICAgICAgZmxvb3IoKCRmb250LXNpemUtYmFzZSAqIDIuMTUpKSAhZGVmYXVsdDsgLy8gfjMwcHhcbiRmb250LXNpemUtaDM6ICAgICAgICAgICAgY2VpbCgoJGZvbnQtc2l6ZS1iYXNlICogMS43KSkgIWRlZmF1bHQ7IC8vIH4yNHB4XG4kZm9udC1zaXplLWg0OiAgICAgICAgICAgIGNlaWwoKCRmb250LXNpemUtYmFzZSAqIDEuMjUpKSAhZGVmYXVsdDsgLy8gfjE4cHhcbiRmb250LXNpemUtaDU6ICAgICAgICAgICAgJGZvbnQtc2l6ZS1iYXNlICFkZWZhdWx0O1xuJGZvbnQtc2l6ZS1oNjogICAgICAgICAgICBjZWlsKCgkZm9udC1zaXplLWJhc2UgKiAwLjg1KSkgIWRlZmF1bHQ7IC8vIH4xMnB4XG5cbi8vKiogVW5pdC1sZXNzIGBsaW5lLWhlaWdodGAgZm9yIHVzZSBpbiBjb21wb25lbnRzIGxpa2UgYnV0dG9ucy5cbiRsaW5lLWhlaWdodC1iYXNlOiAgICAgICAgMS40Mjg1NzE0MjkgIWRlZmF1bHQ7IC8vIDIwLzE0XG4vLyoqIENvbXB1dGVkIFwibGluZS1oZWlnaHRcIiAoYGZvbnQtc2l6ZWAgKiBgbGluZS1oZWlnaHRgKSBmb3IgdXNlIHdpdGggYG1hcmdpbmAsIGBwYWRkaW5nYCwgZXRjLlxuJGxpbmUtaGVpZ2h0LWNvbXB1dGVkOiAgICBmbG9vcigoJGZvbnQtc2l6ZS1iYXNlICogJGxpbmUtaGVpZ2h0LWJhc2UpKSAhZGVmYXVsdDsgLy8gfjIwcHhcblxuLy8qKiBCeSBkZWZhdWx0LCB0aGlzIGluaGVyaXRzIGZyb20gdGhlIGA8Ym9keT5gLlxuJGhlYWRpbmdzLWZvbnQtZmFtaWx5OiAgICBpbmhlcml0ICFkZWZhdWx0O1xuJGhlYWRpbmdzLWZvbnQtd2VpZ2h0OiAgICA1MDAgIWRlZmF1bHQ7XG4kaGVhZGluZ3MtbGluZS1oZWlnaHQ6ICAgIDEuMSAhZGVmYXVsdDtcbiRoZWFkaW5ncy1jb2xvcjogICAgICAgICAgaW5oZXJpdCAhZGVmYXVsdDtcblxuXG4vLz09IEljb25vZ3JhcGh5XG4vL1xuLy8jIyBTcGVjaWZ5IGN1c3RvbSBsb2NhdGlvbiBhbmQgZmlsZW5hbWUgb2YgdGhlIGluY2x1ZGVkIEdseXBoaWNvbnMgaWNvbiBmb250LiBVc2VmdWwgZm9yIHRob3NlIGluY2x1ZGluZyBCb290c3RyYXAgdmlhIEJvd2VyLlxuXG4vLyoqIExvYWQgZm9udHMgZnJvbSB0aGlzIGRpcmVjdG9yeS5cblxuLy8gW2NvbnZlcnRlcl0gSWYgJGJvb3RzdHJhcC1zYXNzLWFzc2V0LWhlbHBlciBpZiB1c2VkLCBwcm92aWRlIHBhdGggcmVsYXRpdmUgdG8gdGhlIGFzc2V0cyBsb2FkIHBhdGguXG4vLyBbY29udmVydGVyXSBUaGlzIGlzIGJlY2F1c2Ugc29tZSBhc3NldCBoZWxwZXJzLCBzdWNoIGFzIFNwcm9ja2V0cywgZG8gbm90IHdvcmsgd2l0aCBmaWxlLXJlbGF0aXZlIHBhdGhzLlxuJGljb24tZm9udC1wYXRoOiBpZigkYm9vdHN0cmFwLXNhc3MtYXNzZXQtaGVscGVyLCBcImJvb3RzdHJhcC9cIiwgXCIuLi9mb250cy9ib290c3RyYXAvXCIpICFkZWZhdWx0O1xuXG4vLyoqIEZpbGUgbmFtZSBmb3IgYWxsIGZvbnQgZmlsZXMuXG4kaWNvbi1mb250LW5hbWU6ICAgICAgICAgIFwiZ2x5cGhpY29ucy1oYWxmbGluZ3MtcmVndWxhclwiICFkZWZhdWx0O1xuLy8qKiBFbGVtZW50IElEIHdpdGhpbiBTVkcgaWNvbiBmaWxlLlxuJGljb24tZm9udC1zdmctaWQ6ICAgICAgICBcImdseXBoaWNvbnNfaGFsZmxpbmdzcmVndWxhclwiICFkZWZhdWx0O1xuXG5cbi8vPT0gQ29tcG9uZW50c1xuLy9cbi8vIyMgRGVmaW5lIGNvbW1vbiBwYWRkaW5nIGFuZCBib3JkZXIgcmFkaXVzIHNpemVzIGFuZCBtb3JlLiBWYWx1ZXMgYmFzZWQgb24gMTRweCB0ZXh0IGFuZCAxLjQyOCBsaW5lLWhlaWdodCAofjIwcHggdG8gc3RhcnQpLlxuXG4kcGFkZGluZy1iYXNlLXZlcnRpY2FsOiAgICAgNnB4ICFkZWZhdWx0O1xuJHBhZGRpbmctYmFzZS1ob3Jpem9udGFsOiAgIDEycHggIWRlZmF1bHQ7XG5cbiRwYWRkaW5nLWxhcmdlLXZlcnRpY2FsOiAgICAxMHB4ICFkZWZhdWx0O1xuJHBhZGRpbmctbGFyZ2UtaG9yaXpvbnRhbDogIDE2cHggIWRlZmF1bHQ7XG5cbiRwYWRkaW5nLXNtYWxsLXZlcnRpY2FsOiAgICA1cHggIWRlZmF1bHQ7XG4kcGFkZGluZy1zbWFsbC1ob3Jpem9udGFsOiAgMTBweCAhZGVmYXVsdDtcblxuJHBhZGRpbmcteHMtdmVydGljYWw6ICAgICAgIDFweCAhZGVmYXVsdDtcbiRwYWRkaW5nLXhzLWhvcml6b250YWw6ICAgICA1cHggIWRlZmF1bHQ7XG5cbiRsaW5lLWhlaWdodC1sYXJnZTogICAgICAgICAxLjMzMzMzMzMgIWRlZmF1bHQ7IC8vIGV4dHJhIGRlY2ltYWxzIGZvciBXaW4gOC4xIENocm9tZVxuJGxpbmUtaGVpZ2h0LXNtYWxsOiAgICAgICAgIDEuNSAhZGVmYXVsdDtcblxuJGJvcmRlci1yYWRpdXMtYmFzZTogICAgICAgIDRweCAhZGVmYXVsdDtcbiRib3JkZXItcmFkaXVzLWxhcmdlOiAgICAgICA2cHggIWRlZmF1bHQ7XG4kYm9yZGVyLXJhZGl1cy1zbWFsbDogICAgICAgM3B4ICFkZWZhdWx0O1xuXG4vLyoqIEdsb2JhbCBjb2xvciBmb3IgYWN0aXZlIGl0ZW1zIChlLmcuLCBuYXZzIG9yIGRyb3Bkb3ducykuXG4kY29tcG9uZW50LWFjdGl2ZS1jb2xvcjogICAgI2ZmZiAhZGVmYXVsdDtcbi8vKiogR2xvYmFsIGJhY2tncm91bmQgY29sb3IgZm9yIGFjdGl2ZSBpdGVtcyAoZS5nLiwgbmF2cyBvciBkcm9wZG93bnMpLlxuJGNvbXBvbmVudC1hY3RpdmUtYmc6ICAgICAgICRicmFuZC1wcmltYXJ5ICFkZWZhdWx0O1xuXG4vLyoqIFdpZHRoIG9mIHRoZSBgYm9yZGVyYCBmb3IgZ2VuZXJhdGluZyBjYXJldHMgdGhhdCBpbmRpY2F0ZSBkcm9wZG93bnMuXG4kY2FyZXQtd2lkdGgtYmFzZTogICAgICAgICAgNHB4ICFkZWZhdWx0O1xuLy8qKiBDYXJldHMgaW5jcmVhc2Ugc2xpZ2h0bHkgaW4gc2l6ZSBmb3IgbGFyZ2VyIGNvbXBvbmVudHMuXG4kY2FyZXQtd2lkdGgtbGFyZ2U6ICAgICAgICAgNXB4ICFkZWZhdWx0O1xuXG5cbi8vPT0gVGFibGVzXG4vL1xuLy8jIyBDdXN0b21pemVzIHRoZSBgLnRhYmxlYCBjb21wb25lbnQgd2l0aCBiYXNpYyB2YWx1ZXMsIGVhY2ggdXNlZCBhY3Jvc3MgYWxsIHRhYmxlIHZhcmlhdGlvbnMuXG5cbi8vKiogUGFkZGluZyBmb3IgYDx0aD5gcyBhbmQgYDx0ZD5gcy5cbiR0YWJsZS1jZWxsLXBhZGRpbmc6ICAgICAgICAgICAgOHB4ICFkZWZhdWx0O1xuLy8qKiBQYWRkaW5nIGZvciBjZWxscyBpbiBgLnRhYmxlLWNvbmRlbnNlZGAuXG4kdGFibGUtY29uZGVuc2VkLWNlbGwtcGFkZGluZzogIDVweCAhZGVmYXVsdDtcblxuLy8qKiBEZWZhdWx0IGJhY2tncm91bmQgY29sb3IgdXNlZCBmb3IgYWxsIHRhYmxlcy5cbiR0YWJsZS1iZzogICAgICAgICAgICAgICAgICAgICAgdHJhbnNwYXJlbnQgIWRlZmF1bHQ7XG4vLyoqIEJhY2tncm91bmQgY29sb3IgdXNlZCBmb3IgYC50YWJsZS1zdHJpcGVkYC5cbiR0YWJsZS1iZy1hY2NlbnQ6ICAgICAgICAgICAgICAgI2Y5ZjlmOSAhZGVmYXVsdDtcbi8vKiogQmFja2dyb3VuZCBjb2xvciB1c2VkIGZvciBgLnRhYmxlLWhvdmVyYC5cbiR0YWJsZS1iZy1ob3ZlcjogICAgICAgICAgICAgICAgI2Y1ZjVmNSAhZGVmYXVsdDtcbiR0YWJsZS1iZy1hY3RpdmU6ICAgICAgICAgICAgICAgJHRhYmxlLWJnLWhvdmVyICFkZWZhdWx0O1xuXG4vLyoqIEJvcmRlciBjb2xvciBmb3IgdGFibGUgYW5kIGNlbGwgYm9yZGVycy5cbiR0YWJsZS1ib3JkZXItY29sb3I6ICAgICAgICAgICAgI2RkZCAhZGVmYXVsdDtcblxuXG4vLz09IEJ1dHRvbnNcbi8vXG4vLyMjIEZvciBlYWNoIG9mIEJvb3RzdHJhcCdzIGJ1dHRvbnMsIGRlZmluZSB0ZXh0LCBiYWNrZ3JvdW5kIGFuZCBib3JkZXIgY29sb3IuXG5cbiRidG4tZm9udC13ZWlnaHQ6ICAgICAgICAgICAgICAgIG5vcm1hbCAhZGVmYXVsdDtcblxuJGJ0bi1kZWZhdWx0LWNvbG9yOiAgICAgICAgICAgICAgIzMzMyAhZGVmYXVsdDtcbiRidG4tZGVmYXVsdC1iZzogICAgICAgICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XG4kYnRuLWRlZmF1bHQtYm9yZGVyOiAgICAgICAgICAgICAjY2NjICFkZWZhdWx0O1xuXG4kYnRuLXByaW1hcnktY29sb3I6ICAgICAgICAgICAgICAjZmZmICFkZWZhdWx0O1xuJGJ0bi1wcmltYXJ5LWJnOiAgICAgICAgICAgICAgICAgJGJyYW5kLXByaW1hcnkgIWRlZmF1bHQ7XG4kYnRuLXByaW1hcnktYm9yZGVyOiAgICAgICAgICAgICBkYXJrZW4oJGJ0bi1wcmltYXJ5LWJnLCA1JSkgIWRlZmF1bHQ7XG5cbiRidG4tc3VjY2Vzcy1jb2xvcjogICAgICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XG4kYnRuLXN1Y2Nlc3MtYmc6ICAgICAgICAgICAgICAgICAkYnJhbmQtc3VjY2VzcyAhZGVmYXVsdDtcbiRidG4tc3VjY2Vzcy1ib3JkZXI6ICAgICAgICAgICAgIGRhcmtlbigkYnRuLXN1Y2Nlc3MtYmcsIDUlKSAhZGVmYXVsdDtcblxuJGJ0bi1pbmZvLWNvbG9yOiAgICAgICAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcbiRidG4taW5mby1iZzogICAgICAgICAgICAgICAgICAgICRicmFuZC1pbmZvICFkZWZhdWx0O1xuJGJ0bi1pbmZvLWJvcmRlcjogICAgICAgICAgICAgICAgZGFya2VuKCRidG4taW5mby1iZywgNSUpICFkZWZhdWx0O1xuXG4kYnRuLXdhcm5pbmctY29sb3I6ICAgICAgICAgICAgICAjZmZmICFkZWZhdWx0O1xuJGJ0bi13YXJuaW5nLWJnOiAgICAgICAgICAgICAgICAgJGJyYW5kLXdhcm5pbmcgIWRlZmF1bHQ7XG4kYnRuLXdhcm5pbmctYm9yZGVyOiAgICAgICAgICAgICBkYXJrZW4oJGJ0bi13YXJuaW5nLWJnLCA1JSkgIWRlZmF1bHQ7XG5cbiRidG4tZGFuZ2VyLWNvbG9yOiAgICAgICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XG4kYnRuLWRhbmdlci1iZzogICAgICAgICAgICAgICAgICAkYnJhbmQtZGFuZ2VyICFkZWZhdWx0O1xuJGJ0bi1kYW5nZXItYm9yZGVyOiAgICAgICAgICAgICAgZGFya2VuKCRidG4tZGFuZ2VyLWJnLCA1JSkgIWRlZmF1bHQ7XG5cbiRidG4tbGluay1kaXNhYmxlZC1jb2xvcjogICAgICAgICRncmF5LWxpZ2h0ICFkZWZhdWx0O1xuXG4vLyBBbGxvd3MgZm9yIGN1c3RvbWl6aW5nIGJ1dHRvbiByYWRpdXMgaW5kZXBlbmRlbnRseSBmcm9tIGdsb2JhbCBib3JkZXIgcmFkaXVzXG4kYnRuLWJvcmRlci1yYWRpdXMtYmFzZTogICAgICAgICAkYm9yZGVyLXJhZGl1cy1iYXNlICFkZWZhdWx0O1xuJGJ0bi1ib3JkZXItcmFkaXVzLWxhcmdlOiAgICAgICAgJGJvcmRlci1yYWRpdXMtbGFyZ2UgIWRlZmF1bHQ7XG4kYnRuLWJvcmRlci1yYWRpdXMtc21hbGw6ICAgICAgICAkYm9yZGVyLXJhZGl1cy1zbWFsbCAhZGVmYXVsdDtcblxuXG4vLz09IEZvcm1zXG4vL1xuLy8jI1xuXG4vLyoqIGA8aW5wdXQ+YCBiYWNrZ3JvdW5kIGNvbG9yXG4kaW5wdXQtYmc6ICAgICAgICAgICAgICAgICAgICAgICAjZmZmICFkZWZhdWx0O1xuLy8qKiBgPGlucHV0IGRpc2FibGVkPmAgYmFja2dyb3VuZCBjb2xvclxuJGlucHV0LWJnLWRpc2FibGVkOiAgICAgICAgICAgICAgJGdyYXktbGlnaHRlciAhZGVmYXVsdDtcblxuLy8qKiBUZXh0IGNvbG9yIGZvciBgPGlucHV0PmBzXG4kaW5wdXQtY29sb3I6ICAgICAgICAgICAgICAgICAgICAkZ3JheSAhZGVmYXVsdDtcbi8vKiogYDxpbnB1dD5gIGJvcmRlciBjb2xvclxuJGlucHV0LWJvcmRlcjogICAgICAgICAgICAgICAgICAgI2NjYyAhZGVmYXVsdDtcblxuLy8gVE9ETzogUmVuYW1lIGAkaW5wdXQtYm9yZGVyLXJhZGl1c2AgdG8gYCRpbnB1dC1ib3JkZXItcmFkaXVzLWJhc2VgIGluIHY0XG4vLyoqIERlZmF1bHQgYC5mb3JtLWNvbnRyb2xgIGJvcmRlciByYWRpdXNcbi8vIFRoaXMgaGFzIG5vIGVmZmVjdCBvbiBgPHNlbGVjdD5gcyBpbiBzb21lIGJyb3dzZXJzLCBkdWUgdG8gdGhlIGxpbWl0ZWQgc3R5bGFiaWxpdHkgb2YgYDxzZWxlY3Q+YHMgaW4gQ1NTLlxuJGlucHV0LWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAgJGJvcmRlci1yYWRpdXMtYmFzZSAhZGVmYXVsdDtcbi8vKiogTGFyZ2UgYC5mb3JtLWNvbnRyb2xgIGJvcmRlciByYWRpdXNcbiRpbnB1dC1ib3JkZXItcmFkaXVzLWxhcmdlOiAgICAgICRib3JkZXItcmFkaXVzLWxhcmdlICFkZWZhdWx0O1xuLy8qKiBTbWFsbCBgLmZvcm0tY29udHJvbGAgYm9yZGVyIHJhZGl1c1xuJGlucHV0LWJvcmRlci1yYWRpdXMtc21hbGw6ICAgICAgJGJvcmRlci1yYWRpdXMtc21hbGwgIWRlZmF1bHQ7XG5cbi8vKiogQm9yZGVyIGNvbG9yIGZvciBpbnB1dHMgb24gZm9jdXNcbiRpbnB1dC1ib3JkZXItZm9jdXM6ICAgICAgICAgICAgICM2NmFmZTkgIWRlZmF1bHQ7XG5cbi8vKiogUGxhY2Vob2xkZXIgdGV4dCBjb2xvclxuJGlucHV0LWNvbG9yLXBsYWNlaG9sZGVyOiAgICAgICAgIzk5OSAhZGVmYXVsdDtcblxuLy8qKiBEZWZhdWx0IGAuZm9ybS1jb250cm9sYCBoZWlnaHRcbiRpbnB1dC1oZWlnaHQtYmFzZTogICAgICAgICAgICAgICgkbGluZS1oZWlnaHQtY29tcHV0ZWQgKyAoJHBhZGRpbmctYmFzZS12ZXJ0aWNhbCAqIDIpICsgMikgIWRlZmF1bHQ7XG4vLyoqIExhcmdlIGAuZm9ybS1jb250cm9sYCBoZWlnaHRcbiRpbnB1dC1oZWlnaHQtbGFyZ2U6ICAgICAgICAgICAgIChjZWlsKCRmb250LXNpemUtbGFyZ2UgKiAkbGluZS1oZWlnaHQtbGFyZ2UpICsgKCRwYWRkaW5nLWxhcmdlLXZlcnRpY2FsICogMikgKyAyKSAhZGVmYXVsdDtcbi8vKiogU21hbGwgYC5mb3JtLWNvbnRyb2xgIGhlaWdodFxuJGlucHV0LWhlaWdodC1zbWFsbDogICAgICAgICAgICAgKGZsb29yKCRmb250LXNpemUtc21hbGwgKiAkbGluZS1oZWlnaHQtc21hbGwpICsgKCRwYWRkaW5nLXNtYWxsLXZlcnRpY2FsICogMikgKyAyKSAhZGVmYXVsdDtcblxuLy8qKiBgLmZvcm0tZ3JvdXBgIG1hcmdpblxuJGZvcm0tZ3JvdXAtbWFyZ2luLWJvdHRvbTogICAgICAgMTVweCAhZGVmYXVsdDtcblxuJGxlZ2VuZC1jb2xvcjogICAgICAgICAgICAgICAgICAgJGdyYXktZGFyayAhZGVmYXVsdDtcbiRsZWdlbmQtYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICNlNWU1ZTUgIWRlZmF1bHQ7XG5cbi8vKiogQmFja2dyb3VuZCBjb2xvciBmb3IgdGV4dHVhbCBpbnB1dCBhZGRvbnNcbiRpbnB1dC1ncm91cC1hZGRvbi1iZzogICAgICAgICAgICRncmF5LWxpZ2h0ZXIgIWRlZmF1bHQ7XG4vLyoqIEJvcmRlciBjb2xvciBmb3IgdGV4dHVhbCBpbnB1dCBhZGRvbnNcbiRpbnB1dC1ncm91cC1hZGRvbi1ib3JkZXItY29sb3I6ICRpbnB1dC1ib3JkZXIgIWRlZmF1bHQ7XG5cbi8vKiogRGlzYWJsZWQgY3Vyc29yIGZvciBmb3JtIGNvbnRyb2xzIGFuZCBidXR0b25zLlxuJGN1cnNvci1kaXNhYmxlZDogICAgICAgICAgICAgICAgbm90LWFsbG93ZWQgIWRlZmF1bHQ7XG5cblxuLy89PSBEcm9wZG93bnNcbi8vXG4vLyMjIERyb3Bkb3duIG1lbnUgY29udGFpbmVyIGFuZCBjb250ZW50cy5cblxuLy8qKiBCYWNrZ3JvdW5kIGZvciB0aGUgZHJvcGRvd24gbWVudS5cbiRkcm9wZG93bi1iZzogICAgICAgICAgICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XG4vLyoqIERyb3Bkb3duIG1lbnUgYGJvcmRlci1jb2xvcmAuXG4kZHJvcGRvd24tYm9yZGVyOiAgICAgICAgICAgICAgICByZ2JhKDAsMCwwLC4xNSkgIWRlZmF1bHQ7XG4vLyoqIERyb3Bkb3duIG1lbnUgYGJvcmRlci1jb2xvcmAgKipmb3IgSUU4KiouXG4kZHJvcGRvd24tZmFsbGJhY2stYm9yZGVyOiAgICAgICAjY2NjICFkZWZhdWx0O1xuLy8qKiBEaXZpZGVyIGNvbG9yIGZvciBiZXR3ZWVuIGRyb3Bkb3duIGl0ZW1zLlxuJGRyb3Bkb3duLWRpdmlkZXItYmc6ICAgICAgICAgICAgI2U1ZTVlNSAhZGVmYXVsdDtcblxuLy8qKiBEcm9wZG93biBsaW5rIHRleHQgY29sb3IuXG4kZHJvcGRvd24tbGluay1jb2xvcjogICAgICAgICAgICAkZ3JheS1kYXJrICFkZWZhdWx0O1xuLy8qKiBIb3ZlciBjb2xvciBmb3IgZHJvcGRvd24gbGlua3MuXG4kZHJvcGRvd24tbGluay1ob3Zlci1jb2xvcjogICAgICBkYXJrZW4oJGdyYXktZGFyaywgNSUpICFkZWZhdWx0O1xuLy8qKiBIb3ZlciBiYWNrZ3JvdW5kIGZvciBkcm9wZG93biBsaW5rcy5cbiRkcm9wZG93bi1saW5rLWhvdmVyLWJnOiAgICAgICAgICNmNWY1ZjUgIWRlZmF1bHQ7XG5cbi8vKiogQWN0aXZlIGRyb3Bkb3duIG1lbnUgaXRlbSB0ZXh0IGNvbG9yLlxuJGRyb3Bkb3duLWxpbmstYWN0aXZlLWNvbG9yOiAgICAgJGNvbXBvbmVudC1hY3RpdmUtY29sb3IgIWRlZmF1bHQ7XG4vLyoqIEFjdGl2ZSBkcm9wZG93biBtZW51IGl0ZW0gYmFja2dyb3VuZCBjb2xvci5cbiRkcm9wZG93bi1saW5rLWFjdGl2ZS1iZzogICAgICAgICRjb21wb25lbnQtYWN0aXZlLWJnICFkZWZhdWx0O1xuXG4vLyoqIERpc2FibGVkIGRyb3Bkb3duIG1lbnUgaXRlbSBiYWNrZ3JvdW5kIGNvbG9yLlxuJGRyb3Bkb3duLWxpbmstZGlzYWJsZWQtY29sb3I6ICAgJGdyYXktbGlnaHQgIWRlZmF1bHQ7XG5cbi8vKiogVGV4dCBjb2xvciBmb3IgaGVhZGVycyB3aXRoaW4gZHJvcGRvd24gbWVudXMuXG4kZHJvcGRvd24taGVhZGVyLWNvbG9yOiAgICAgICAgICAkZ3JheS1saWdodCAhZGVmYXVsdDtcblxuLy8qKiBEZXByZWNhdGVkIGAkZHJvcGRvd24tY2FyZXQtY29sb3JgIGFzIG9mIHYzLjEuMFxuJGRyb3Bkb3duLWNhcmV0LWNvbG9yOiAgICAgICAgICAgIzAwMCAhZGVmYXVsdDtcblxuXG4vLy0tIFotaW5kZXggbWFzdGVyIGxpc3Rcbi8vXG4vLyBXYXJuaW5nOiBBdm9pZCBjdXN0b21pemluZyB0aGVzZSB2YWx1ZXMuIFRoZXkncmUgdXNlZCBmb3IgYSBiaXJkJ3MgZXllIHZpZXdcbi8vIG9mIGNvbXBvbmVudHMgZGVwZW5kZW50IG9uIHRoZSB6LWF4aXMgYW5kIGFyZSBkZXNpZ25lZCB0byBhbGwgd29yayB0b2dldGhlci5cbi8vXG4vLyBOb3RlOiBUaGVzZSB2YXJpYWJsZXMgYXJlIG5vdCBnZW5lcmF0ZWQgaW50byB0aGUgQ3VzdG9taXplci5cblxuJHppbmRleC1uYXZiYXI6ICAgICAgICAgICAgMTAwMCAhZGVmYXVsdDtcbiR6aW5kZXgtZHJvcGRvd246ICAgICAgICAgIDEwMDAgIWRlZmF1bHQ7XG4kemluZGV4LXBvcG92ZXI6ICAgICAgICAgICAxMDYwICFkZWZhdWx0O1xuJHppbmRleC10b29sdGlwOiAgICAgICAgICAgMTA3MCAhZGVmYXVsdDtcbiR6aW5kZXgtbmF2YmFyLWZpeGVkOiAgICAgIDEwMzAgIWRlZmF1bHQ7XG4kemluZGV4LW1vZGFsLWJhY2tncm91bmQ6ICAxMDQwICFkZWZhdWx0O1xuJHppbmRleC1tb2RhbDogICAgICAgICAgICAgMTA1MCAhZGVmYXVsdDtcblxuXG4vLz09IE1lZGlhIHF1ZXJpZXMgYnJlYWtwb2ludHNcbi8vXG4vLyMjIERlZmluZSB0aGUgYnJlYWtwb2ludHMgYXQgd2hpY2ggeW91ciBsYXlvdXQgd2lsbCBjaGFuZ2UsIGFkYXB0aW5nIHRvIGRpZmZlcmVudCBzY3JlZW4gc2l6ZXMuXG5cbi8vIEV4dHJhIHNtYWxsIHNjcmVlbiAvIHBob25lXG4vLyoqIERlcHJlY2F0ZWQgYCRzY3JlZW4teHNgIGFzIG9mIHYzLjAuMVxuJHNjcmVlbi14czogICAgICAgICAgICAgICAgICA0ODBweCAhZGVmYXVsdDtcbi8vKiogRGVwcmVjYXRlZCBgJHNjcmVlbi14cy1taW5gIGFzIG9mIHYzLjIuMFxuJHNjcmVlbi14cy1taW46ICAgICAgICAgICAgICAkc2NyZWVuLXhzICFkZWZhdWx0O1xuLy8qKiBEZXByZWNhdGVkIGAkc2NyZWVuLXBob25lYCBhcyBvZiB2My4wLjFcbiRzY3JlZW4tcGhvbmU6ICAgICAgICAgICAgICAgJHNjcmVlbi14cy1taW4gIWRlZmF1bHQ7XG5cbi8vIFNtYWxsIHNjcmVlbiAvIHRhYmxldFxuLy8qKiBEZXByZWNhdGVkIGAkc2NyZWVuLXNtYCBhcyBvZiB2My4wLjFcbiRzY3JlZW4tc206ICAgICAgICAgICAgICAgICAgNzY4cHggIWRlZmF1bHQ7XG4kc2NyZWVuLXNtLW1pbjogICAgICAgICAgICAgICRzY3JlZW4tc20gIWRlZmF1bHQ7XG4vLyoqIERlcHJlY2F0ZWQgYCRzY3JlZW4tdGFibGV0YCBhcyBvZiB2My4wLjFcbiRzY3JlZW4tdGFibGV0OiAgICAgICAgICAgICAgJHNjcmVlbi1zbS1taW4gIWRlZmF1bHQ7XG5cbi8vIE1lZGl1bSBzY3JlZW4gLyBkZXNrdG9wXG4vLyoqIERlcHJlY2F0ZWQgYCRzY3JlZW4tbWRgIGFzIG9mIHYzLjAuMVxuJHNjcmVlbi1tZDogICAgICAgICAgICAgICAgICA5OTJweCAhZGVmYXVsdDtcbiRzY3JlZW4tbWQtbWluOiAgICAgICAgICAgICAgJHNjcmVlbi1tZCAhZGVmYXVsdDtcbi8vKiogRGVwcmVjYXRlZCBgJHNjcmVlbi1kZXNrdG9wYCBhcyBvZiB2My4wLjFcbiRzY3JlZW4tZGVza3RvcDogICAgICAgICAgICAgJHNjcmVlbi1tZC1taW4gIWRlZmF1bHQ7XG5cbi8vIExhcmdlIHNjcmVlbiAvIHdpZGUgZGVza3RvcFxuLy8qKiBEZXByZWNhdGVkIGAkc2NyZWVuLWxnYCBhcyBvZiB2My4wLjFcbiRzY3JlZW4tbGc6ICAgICAgICAgICAgICAgICAgMTIwMHB4ICFkZWZhdWx0O1xuJHNjcmVlbi1sZy1taW46ICAgICAgICAgICAgICAkc2NyZWVuLWxnICFkZWZhdWx0O1xuLy8qKiBEZXByZWNhdGVkIGAkc2NyZWVuLWxnLWRlc2t0b3BgIGFzIG9mIHYzLjAuMVxuJHNjcmVlbi1sZy1kZXNrdG9wOiAgICAgICAgICAkc2NyZWVuLWxnLW1pbiAhZGVmYXVsdDtcblxuLy8gU28gbWVkaWEgcXVlcmllcyBkb24ndCBvdmVybGFwIHdoZW4gcmVxdWlyZWQsIHByb3ZpZGUgYSBtYXhpbXVtXG4kc2NyZWVuLXhzLW1heDogICAgICAgICAgICAgICgkc2NyZWVuLXNtLW1pbiAtIDEpICFkZWZhdWx0O1xuJHNjcmVlbi1zbS1tYXg6ICAgICAgICAgICAgICAoJHNjcmVlbi1tZC1taW4gLSAxKSAhZGVmYXVsdDtcbiRzY3JlZW4tbWQtbWF4OiAgICAgICAgICAgICAgKCRzY3JlZW4tbGctbWluIC0gMSkgIWRlZmF1bHQ7XG5cblxuLy89PSBHcmlkIHN5c3RlbVxuLy9cbi8vIyMgRGVmaW5lIHlvdXIgY3VzdG9tIHJlc3BvbnNpdmUgZ3JpZC5cblxuLy8qKiBOdW1iZXIgb2YgY29sdW1ucyBpbiB0aGUgZ3JpZC5cbiRncmlkLWNvbHVtbnM6ICAgICAgICAgICAgICAxMiAhZGVmYXVsdDtcbi8vKiogUGFkZGluZyBiZXR3ZWVuIGNvbHVtbnMuIEdldHMgZGl2aWRlZCBpbiBoYWxmIGZvciB0aGUgbGVmdCBhbmQgcmlnaHQuXG4kZ3JpZC1ndXR0ZXItd2lkdGg6ICAgICAgICAgMzBweCAhZGVmYXVsdDtcbi8vIE5hdmJhciBjb2xsYXBzZVxuLy8qKiBQb2ludCBhdCB3aGljaCB0aGUgbmF2YmFyIGJlY29tZXMgdW5jb2xsYXBzZWQuXG4kZ3JpZC1mbG9hdC1icmVha3BvaW50OiAgICAgJHNjcmVlbi1zbS1taW4gIWRlZmF1bHQ7XG4vLyoqIFBvaW50IGF0IHdoaWNoIHRoZSBuYXZiYXIgYmVnaW5zIGNvbGxhcHNpbmcuXG4kZ3JpZC1mbG9hdC1icmVha3BvaW50LW1heDogKCRncmlkLWZsb2F0LWJyZWFrcG9pbnQgLSAxKSAhZGVmYXVsdDtcblxuXG4vLz09IENvbnRhaW5lciBzaXplc1xuLy9cbi8vIyMgRGVmaW5lIHRoZSBtYXhpbXVtIHdpZHRoIG9mIGAuY29udGFpbmVyYCBmb3IgZGlmZmVyZW50IHNjcmVlbiBzaXplcy5cblxuLy8gU21hbGwgc2NyZWVuIC8gdGFibGV0XG4kY29udGFpbmVyLXRhYmxldDogICAgICAgICAgICAgKDcyMHB4ICsgJGdyaWQtZ3V0dGVyLXdpZHRoKSAhZGVmYXVsdDtcbi8vKiogRm9yIGAkc2NyZWVuLXNtLW1pbmAgYW5kIHVwLlxuJGNvbnRhaW5lci1zbTogICAgICAgICAgICAgICAgICRjb250YWluZXItdGFibGV0ICFkZWZhdWx0O1xuXG4vLyBNZWRpdW0gc2NyZWVuIC8gZGVza3RvcFxuJGNvbnRhaW5lci1kZXNrdG9wOiAgICAgICAgICAgICg5NDBweCArICRncmlkLWd1dHRlci13aWR0aCkgIWRlZmF1bHQ7XG4vLyoqIEZvciBgJHNjcmVlbi1tZC1taW5gIGFuZCB1cC5cbiRjb250YWluZXItbWQ6ICAgICAgICAgICAgICAgICAkY29udGFpbmVyLWRlc2t0b3AgIWRlZmF1bHQ7XG5cbi8vIExhcmdlIHNjcmVlbiAvIHdpZGUgZGVza3RvcFxuJGNvbnRhaW5lci1sYXJnZS1kZXNrdG9wOiAgICAgICgxMTQwcHggKyAkZ3JpZC1ndXR0ZXItd2lkdGgpICFkZWZhdWx0O1xuLy8qKiBGb3IgYCRzY3JlZW4tbGctbWluYCBhbmQgdXAuXG4kY29udGFpbmVyLWxnOiAgICAgICAgICAgICAgICAgJGNvbnRhaW5lci1sYXJnZS1kZXNrdG9wICFkZWZhdWx0O1xuXG5cbi8vPT0gTmF2YmFyXG4vL1xuLy8jI1xuXG4vLyBCYXNpY3Mgb2YgYSBuYXZiYXJcbiRuYXZiYXItaGVpZ2h0OiAgICAgICAgICAgICAgICAgICAgNTBweCAhZGVmYXVsdDtcbiRuYXZiYXItbWFyZ2luLWJvdHRvbTogICAgICAgICAgICAgJGxpbmUtaGVpZ2h0LWNvbXB1dGVkICFkZWZhdWx0O1xuJG5hdmJhci1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgICAkYm9yZGVyLXJhZGl1cy1iYXNlICFkZWZhdWx0O1xuJG5hdmJhci1wYWRkaW5nLWhvcml6b250YWw6ICAgICAgICBmbG9vcigoJGdyaWQtZ3V0dGVyLXdpZHRoIC8gMikpICFkZWZhdWx0O1xuJG5hdmJhci1wYWRkaW5nLXZlcnRpY2FsOiAgICAgICAgICAoKCRuYXZiYXItaGVpZ2h0IC0gJGxpbmUtaGVpZ2h0LWNvbXB1dGVkKSAvIDIpICFkZWZhdWx0O1xuJG5hdmJhci1jb2xsYXBzZS1tYXgtaGVpZ2h0OiAgICAgICAzNDBweCAhZGVmYXVsdDtcblxuJG5hdmJhci1kZWZhdWx0LWNvbG9yOiAgICAgICAgICAgICAjNzc3ICFkZWZhdWx0O1xuJG5hdmJhci1kZWZhdWx0LWJnOiAgICAgICAgICAgICAgICAjZjhmOGY4ICFkZWZhdWx0O1xuJG5hdmJhci1kZWZhdWx0LWJvcmRlcjogICAgICAgICAgICBkYXJrZW4oJG5hdmJhci1kZWZhdWx0LWJnLCA2LjUlKSAhZGVmYXVsdDtcblxuLy8gTmF2YmFyIGxpbmtzXG4kbmF2YmFyLWRlZmF1bHQtbGluay1jb2xvcjogICAgICAgICAgICAgICAgIzc3NyAhZGVmYXVsdDtcbiRuYXZiYXItZGVmYXVsdC1saW5rLWhvdmVyLWNvbG9yOiAgICAgICAgICAjMzMzICFkZWZhdWx0O1xuJG5hdmJhci1kZWZhdWx0LWxpbmstaG92ZXItYmc6ICAgICAgICAgICAgIHRyYW5zcGFyZW50ICFkZWZhdWx0O1xuJG5hdmJhci1kZWZhdWx0LWxpbmstYWN0aXZlLWNvbG9yOiAgICAgICAgICM1NTUgIWRlZmF1bHQ7XG4kbmF2YmFyLWRlZmF1bHQtbGluay1hY3RpdmUtYmc6ICAgICAgICAgICAgZGFya2VuKCRuYXZiYXItZGVmYXVsdC1iZywgNi41JSkgIWRlZmF1bHQ7XG4kbmF2YmFyLWRlZmF1bHQtbGluay1kaXNhYmxlZC1jb2xvcjogICAgICAgI2NjYyAhZGVmYXVsdDtcbiRuYXZiYXItZGVmYXVsdC1saW5rLWRpc2FibGVkLWJnOiAgICAgICAgICB0cmFuc3BhcmVudCAhZGVmYXVsdDtcblxuLy8gTmF2YmFyIGJyYW5kIGxhYmVsXG4kbmF2YmFyLWRlZmF1bHQtYnJhbmQtY29sb3I6ICAgICAgICAgICAgICAgJG5hdmJhci1kZWZhdWx0LWxpbmstY29sb3IgIWRlZmF1bHQ7XG4kbmF2YmFyLWRlZmF1bHQtYnJhbmQtaG92ZXItY29sb3I6ICAgICAgICAgZGFya2VuKCRuYXZiYXItZGVmYXVsdC1icmFuZC1jb2xvciwgMTAlKSAhZGVmYXVsdDtcbiRuYXZiYXItZGVmYXVsdC1icmFuZC1ob3Zlci1iZzogICAgICAgICAgICB0cmFuc3BhcmVudCAhZGVmYXVsdDtcblxuLy8gTmF2YmFyIHRvZ2dsZVxuJG5hdmJhci1kZWZhdWx0LXRvZ2dsZS1ob3Zlci1iZzogICAgICAgICAgICNkZGQgIWRlZmF1bHQ7XG4kbmF2YmFyLWRlZmF1bHQtdG9nZ2xlLWljb24tYmFyLWJnOiAgICAgICAgIzg4OCAhZGVmYXVsdDtcbiRuYXZiYXItZGVmYXVsdC10b2dnbGUtYm9yZGVyLWNvbG9yOiAgICAgICAjZGRkICFkZWZhdWx0O1xuXG5cbi8vPT09IEludmVydGVkIG5hdmJhclxuLy8gUmVzZXQgaW52ZXJ0ZWQgbmF2YmFyIGJhc2ljc1xuJG5hdmJhci1pbnZlcnNlLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICBsaWdodGVuKCRncmF5LWxpZ2h0LCAxNSUpICFkZWZhdWx0O1xuJG5hdmJhci1pbnZlcnNlLWJnOiAgICAgICAgICAgICAgICAgICAgICAgICAjMjIyICFkZWZhdWx0O1xuJG5hdmJhci1pbnZlcnNlLWJvcmRlcjogICAgICAgICAgICAgICAgICAgICBkYXJrZW4oJG5hdmJhci1pbnZlcnNlLWJnLCAxMCUpICFkZWZhdWx0O1xuXG4vLyBJbnZlcnRlZCBuYXZiYXIgbGlua3NcbiRuYXZiYXItaW52ZXJzZS1saW5rLWNvbG9yOiAgICAgICAgICAgICAgICAgbGlnaHRlbigkZ3JheS1saWdodCwgMTUlKSAhZGVmYXVsdDtcbiRuYXZiYXItaW52ZXJzZS1saW5rLWhvdmVyLWNvbG9yOiAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcbiRuYXZiYXItaW52ZXJzZS1saW5rLWhvdmVyLWJnOiAgICAgICAgICAgICAgdHJhbnNwYXJlbnQgIWRlZmF1bHQ7XG4kbmF2YmFyLWludmVyc2UtbGluay1hY3RpdmUtY29sb3I6ICAgICAgICAgICRuYXZiYXItaW52ZXJzZS1saW5rLWhvdmVyLWNvbG9yICFkZWZhdWx0O1xuJG5hdmJhci1pbnZlcnNlLWxpbmstYWN0aXZlLWJnOiAgICAgICAgICAgICBkYXJrZW4oJG5hdmJhci1pbnZlcnNlLWJnLCAxMCUpICFkZWZhdWx0O1xuJG5hdmJhci1pbnZlcnNlLWxpbmstZGlzYWJsZWQtY29sb3I6ICAgICAgICAjNDQ0ICFkZWZhdWx0O1xuJG5hdmJhci1pbnZlcnNlLWxpbmstZGlzYWJsZWQtYmc6ICAgICAgICAgICB0cmFuc3BhcmVudCAhZGVmYXVsdDtcblxuLy8gSW52ZXJ0ZWQgbmF2YmFyIGJyYW5kIGxhYmVsXG4kbmF2YmFyLWludmVyc2UtYnJhbmQtY29sb3I6ICAgICAgICAgICAgICAgICRuYXZiYXItaW52ZXJzZS1saW5rLWNvbG9yICFkZWZhdWx0O1xuJG5hdmJhci1pbnZlcnNlLWJyYW5kLWhvdmVyLWNvbG9yOiAgICAgICAgICAjZmZmICFkZWZhdWx0O1xuJG5hdmJhci1pbnZlcnNlLWJyYW5kLWhvdmVyLWJnOiAgICAgICAgICAgICB0cmFuc3BhcmVudCAhZGVmYXVsdDtcblxuLy8gSW52ZXJ0ZWQgbmF2YmFyIHRvZ2dsZVxuJG5hdmJhci1pbnZlcnNlLXRvZ2dsZS1ob3Zlci1iZzogICAgICAgICAgICAjMzMzICFkZWZhdWx0O1xuJG5hdmJhci1pbnZlcnNlLXRvZ2dsZS1pY29uLWJhci1iZzogICAgICAgICAjZmZmICFkZWZhdWx0O1xuJG5hdmJhci1pbnZlcnNlLXRvZ2dsZS1ib3JkZXItY29sb3I6ICAgICAgICAjMzMzICFkZWZhdWx0O1xuXG5cbi8vPT0gTmF2c1xuLy9cbi8vIyNcblxuLy89PT0gU2hhcmVkIG5hdiBzdHlsZXNcbiRuYXYtbGluay1wYWRkaW5nOiAgICAgICAgICAgICAgICAgICAgICAgICAgMTBweCAxNXB4ICFkZWZhdWx0O1xuJG5hdi1saW5rLWhvdmVyLWJnOiAgICAgICAgICAgICAgICAgICAgICAgICAkZ3JheS1saWdodGVyICFkZWZhdWx0O1xuXG4kbmF2LWRpc2FibGVkLWxpbmstY29sb3I6ICAgICAgICAgICAgICAgICAgICRncmF5LWxpZ2h0ICFkZWZhdWx0O1xuJG5hdi1kaXNhYmxlZC1saW5rLWhvdmVyLWNvbG9yOiAgICAgICAgICAgICAkZ3JheS1saWdodCAhZGVmYXVsdDtcblxuLy89PSBUYWJzXG4kbmF2LXRhYnMtYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICNkZGQgIWRlZmF1bHQ7XG5cbiRuYXYtdGFicy1saW5rLWhvdmVyLWJvcmRlci1jb2xvcjogICAgICAgICAgJGdyYXktbGlnaHRlciAhZGVmYXVsdDtcblxuJG5hdi10YWJzLWFjdGl2ZS1saW5rLWhvdmVyLWJnOiAgICAgICAgICAgICAkYm9keS1iZyAhZGVmYXVsdDtcbiRuYXYtdGFicy1hY3RpdmUtbGluay1ob3Zlci1jb2xvcjogICAgICAgICAgJGdyYXkgIWRlZmF1bHQ7XG4kbmF2LXRhYnMtYWN0aXZlLWxpbmstaG92ZXItYm9yZGVyLWNvbG9yOiAgICNkZGQgIWRlZmF1bHQ7XG5cbiRuYXYtdGFicy1qdXN0aWZpZWQtbGluay1ib3JkZXItY29sb3I6ICAgICAgICAgICAgI2RkZCAhZGVmYXVsdDtcbiRuYXYtdGFicy1qdXN0aWZpZWQtYWN0aXZlLWxpbmstYm9yZGVyLWNvbG9yOiAgICAgJGJvZHktYmcgIWRlZmF1bHQ7XG5cbi8vPT0gUGlsbHNcbiRuYXYtcGlsbHMtYm9yZGVyLXJhZGl1czogICAgICAgICAgICAgICAgICAgJGJvcmRlci1yYWRpdXMtYmFzZSAhZGVmYXVsdDtcbiRuYXYtcGlsbHMtYWN0aXZlLWxpbmstaG92ZXItYmc6ICAgICAgICAgICAgJGNvbXBvbmVudC1hY3RpdmUtYmcgIWRlZmF1bHQ7XG4kbmF2LXBpbGxzLWFjdGl2ZS1saW5rLWhvdmVyLWNvbG9yOiAgICAgICAgICRjb21wb25lbnQtYWN0aXZlLWNvbG9yICFkZWZhdWx0O1xuXG5cbi8vPT0gUGFnaW5hdGlvblxuLy9cbi8vIyNcblxuJHBhZ2luYXRpb24tY29sb3I6ICAgICAgICAgICAgICAgICAgICAgJGxpbmstY29sb3IgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1iZzogICAgICAgICAgICAgICAgICAgICAgICAjZmZmICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tYm9yZGVyOiAgICAgICAgICAgICAgICAgICAgI2RkZCAhZGVmYXVsdDtcblxuJHBhZ2luYXRpb24taG92ZXItY29sb3I6ICAgICAgICAgICAgICAgJGxpbmstaG92ZXItY29sb3IgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1ob3Zlci1iZzogICAgICAgICAgICAgICAgICAkZ3JheS1saWdodGVyICFkZWZhdWx0O1xuJHBhZ2luYXRpb24taG92ZXItYm9yZGVyOiAgICAgICAgICAgICAgI2RkZCAhZGVmYXVsdDtcblxuJHBhZ2luYXRpb24tYWN0aXZlLWNvbG9yOiAgICAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWFjdGl2ZS1iZzogICAgICAgICAgICAgICAgICRicmFuZC1wcmltYXJ5ICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tYWN0aXZlLWJvcmRlcjogICAgICAgICAgICAgJGJyYW5kLXByaW1hcnkgIWRlZmF1bHQ7XG5cbiRwYWdpbmF0aW9uLWRpc2FibGVkLWNvbG9yOiAgICAgICAgICAgICRncmF5LWxpZ2h0ICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tZGlzYWJsZWQtYmc6ICAgICAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWRpc2FibGVkLWJvcmRlcjogICAgICAgICAgICNkZGQgIWRlZmF1bHQ7XG5cblxuLy89PSBQYWdlclxuLy9cbi8vIyNcblxuJHBhZ2VyLWJnOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJHBhZ2luYXRpb24tYmcgIWRlZmF1bHQ7XG4kcGFnZXItYm9yZGVyOiAgICAgICAgICAgICAgICAgICAgICAgICAkcGFnaW5hdGlvbi1ib3JkZXIgIWRlZmF1bHQ7XG4kcGFnZXItYm9yZGVyLXJhZGl1czogICAgICAgICAgICAgICAgICAxNXB4ICFkZWZhdWx0O1xuXG4kcGFnZXItaG92ZXItYmc6ICAgICAgICAgICAgICAgICAgICAgICAkcGFnaW5hdGlvbi1ob3Zlci1iZyAhZGVmYXVsdDtcblxuJHBhZ2VyLWFjdGl2ZS1iZzogICAgICAgICAgICAgICAgICAgICAgJHBhZ2luYXRpb24tYWN0aXZlLWJnICFkZWZhdWx0O1xuJHBhZ2VyLWFjdGl2ZS1jb2xvcjogICAgICAgICAgICAgICAgICAgJHBhZ2luYXRpb24tYWN0aXZlLWNvbG9yICFkZWZhdWx0O1xuXG4kcGFnZXItZGlzYWJsZWQtY29sb3I6ICAgICAgICAgICAgICAgICAkcGFnaW5hdGlvbi1kaXNhYmxlZC1jb2xvciAhZGVmYXVsdDtcblxuXG4vLz09IEp1bWJvdHJvblxuLy9cbi8vIyNcblxuJGp1bWJvdHJvbi1wYWRkaW5nOiAgICAgICAgICAgICAgMzBweCAhZGVmYXVsdDtcbiRqdW1ib3Ryb24tY29sb3I6ICAgICAgICAgICAgICAgIGluaGVyaXQgIWRlZmF1bHQ7XG4kanVtYm90cm9uLWJnOiAgICAgICAgICAgICAgICAgICAkZ3JheS1saWdodGVyICFkZWZhdWx0O1xuJGp1bWJvdHJvbi1oZWFkaW5nLWNvbG9yOiAgICAgICAgaW5oZXJpdCAhZGVmYXVsdDtcbiRqdW1ib3Ryb24tZm9udC1zaXplOiAgICAgICAgICAgIGNlaWwoKCRmb250LXNpemUtYmFzZSAqIDEuNSkpICFkZWZhdWx0O1xuJGp1bWJvdHJvbi1oZWFkaW5nLWZvbnQtc2l6ZTogICAgY2VpbCgoJGZvbnQtc2l6ZS1iYXNlICogNC41KSkgIWRlZmF1bHQ7XG5cblxuLy89PSBGb3JtIHN0YXRlcyBhbmQgYWxlcnRzXG4vL1xuLy8jIyBEZWZpbmUgY29sb3JzIGZvciBmb3JtIGZlZWRiYWNrIHN0YXRlcyBhbmQsIGJ5IGRlZmF1bHQsIGFsZXJ0cy5cblxuJHN0YXRlLXN1Y2Nlc3MtdGV4dDogICAgICAgICAgICAgIzNjNzYzZCAhZGVmYXVsdDtcbiRzdGF0ZS1zdWNjZXNzLWJnOiAgICAgICAgICAgICAgICNkZmYwZDggIWRlZmF1bHQ7XG4kc3RhdGUtc3VjY2Vzcy1ib3JkZXI6ICAgICAgICAgICBkYXJrZW4oYWRqdXN0LWh1ZSgkc3RhdGUtc3VjY2Vzcy1iZywgLTEwKSwgNSUpICFkZWZhdWx0O1xuXG4kc3RhdGUtaW5mby10ZXh0OiAgICAgICAgICAgICAgICAjMzE3MDhmICFkZWZhdWx0O1xuJHN0YXRlLWluZm8tYmc6ICAgICAgICAgICAgICAgICAgI2Q5ZWRmNyAhZGVmYXVsdDtcbiRzdGF0ZS1pbmZvLWJvcmRlcjogICAgICAgICAgICAgIGRhcmtlbihhZGp1c3QtaHVlKCRzdGF0ZS1pbmZvLWJnLCAtMTApLCA3JSkgIWRlZmF1bHQ7XG5cbiRzdGF0ZS13YXJuaW5nLXRleHQ6ICAgICAgICAgICAgICM4YTZkM2IgIWRlZmF1bHQ7XG4kc3RhdGUtd2FybmluZy1iZzogICAgICAgICAgICAgICAjZmNmOGUzICFkZWZhdWx0O1xuJHN0YXRlLXdhcm5pbmctYm9yZGVyOiAgICAgICAgICAgZGFya2VuKGFkanVzdC1odWUoJHN0YXRlLXdhcm5pbmctYmcsIC0xMCksIDUlKSAhZGVmYXVsdDtcblxuJHN0YXRlLWRhbmdlci10ZXh0OiAgICAgICAgICAgICAgI2E5NDQ0MiAhZGVmYXVsdDtcbiRzdGF0ZS1kYW5nZXItYmc6ICAgICAgICAgICAgICAgICNmMmRlZGUgIWRlZmF1bHQ7XG4kc3RhdGUtZGFuZ2VyLWJvcmRlcjogICAgICAgICAgICBkYXJrZW4oYWRqdXN0LWh1ZSgkc3RhdGUtZGFuZ2VyLWJnLCAtMTApLCA1JSkgIWRlZmF1bHQ7XG5cblxuLy89PSBUb29sdGlwc1xuLy9cbi8vIyNcblxuLy8qKiBUb29sdGlwIG1heCB3aWR0aFxuJHRvb2x0aXAtbWF4LXdpZHRoOiAgICAgICAgICAgMjAwcHggIWRlZmF1bHQ7XG4vLyoqIFRvb2x0aXAgdGV4dCBjb2xvclxuJHRvb2x0aXAtY29sb3I6ICAgICAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcbi8vKiogVG9vbHRpcCBiYWNrZ3JvdW5kIGNvbG9yXG4kdG9vbHRpcC1iZzogICAgICAgICAgICAgICAgICAjMDAwICFkZWZhdWx0O1xuJHRvb2x0aXAtb3BhY2l0eTogICAgICAgICAgICAgLjkgIWRlZmF1bHQ7XG5cbi8vKiogVG9vbHRpcCBhcnJvdyB3aWR0aFxuJHRvb2x0aXAtYXJyb3ctd2lkdGg6ICAgICAgICAgNXB4ICFkZWZhdWx0O1xuLy8qKiBUb29sdGlwIGFycm93IGNvbG9yXG4kdG9vbHRpcC1hcnJvdy1jb2xvcjogICAgICAgICAkdG9vbHRpcC1iZyAhZGVmYXVsdDtcblxuXG4vLz09IFBvcG92ZXJzXG4vL1xuLy8jI1xuXG4vLyoqIFBvcG92ZXIgYm9keSBiYWNrZ3JvdW5kIGNvbG9yXG4kcG9wb3Zlci1iZzogICAgICAgICAgICAgICAgICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XG4vLyoqIFBvcG92ZXIgbWF4aW11bSB3aWR0aFxuJHBvcG92ZXItbWF4LXdpZHRoOiAgICAgICAgICAgICAgICAgICAyNzZweCAhZGVmYXVsdDtcbi8vKiogUG9wb3ZlciBib3JkZXIgY29sb3JcbiRwb3BvdmVyLWJvcmRlci1jb2xvcjogICAgICAgICAgICAgICAgcmdiYSgwLDAsMCwuMikgIWRlZmF1bHQ7XG4vLyoqIFBvcG92ZXIgZmFsbGJhY2sgYm9yZGVyIGNvbG9yXG4kcG9wb3Zlci1mYWxsYmFjay1ib3JkZXItY29sb3I6ICAgICAgICNjY2MgIWRlZmF1bHQ7XG5cbi8vKiogUG9wb3ZlciB0aXRsZSBiYWNrZ3JvdW5kIGNvbG9yXG4kcG9wb3Zlci10aXRsZS1iZzogICAgICAgICAgICAgICAgICAgIGRhcmtlbigkcG9wb3Zlci1iZywgMyUpICFkZWZhdWx0O1xuXG4vLyoqIFBvcG92ZXIgYXJyb3cgd2lkdGhcbiRwb3BvdmVyLWFycm93LXdpZHRoOiAgICAgICAgICAgICAgICAgMTBweCAhZGVmYXVsdDtcbi8vKiogUG9wb3ZlciBhcnJvdyBjb2xvclxuJHBvcG92ZXItYXJyb3ctY29sb3I6ICAgICAgICAgICAgICAgICAkcG9wb3Zlci1iZyAhZGVmYXVsdDtcblxuLy8qKiBQb3BvdmVyIG91dGVyIGFycm93IHdpZHRoXG4kcG9wb3Zlci1hcnJvdy1vdXRlci13aWR0aDogICAgICAgICAgICgkcG9wb3Zlci1hcnJvdy13aWR0aCArIDEpICFkZWZhdWx0O1xuLy8qKiBQb3BvdmVyIG91dGVyIGFycm93IGNvbG9yXG4kcG9wb3Zlci1hcnJvdy1vdXRlci1jb2xvcjogICAgICAgICAgIGZhZGVfaW4oJHBvcG92ZXItYm9yZGVyLWNvbG9yLCAwLjA1KSAhZGVmYXVsdDtcbi8vKiogUG9wb3ZlciBvdXRlciBhcnJvdyBmYWxsYmFjayBjb2xvclxuJHBvcG92ZXItYXJyb3ctb3V0ZXItZmFsbGJhY2stY29sb3I6ICBkYXJrZW4oJHBvcG92ZXItZmFsbGJhY2stYm9yZGVyLWNvbG9yLCAyMCUpICFkZWZhdWx0O1xuXG5cbi8vPT0gTGFiZWxzXG4vL1xuLy8jI1xuXG4vLyoqIERlZmF1bHQgbGFiZWwgYmFja2dyb3VuZCBjb2xvclxuJGxhYmVsLWRlZmF1bHQtYmc6ICAgICAgICAgICAgJGdyYXktbGlnaHQgIWRlZmF1bHQ7XG4vLyoqIFByaW1hcnkgbGFiZWwgYmFja2dyb3VuZCBjb2xvclxuJGxhYmVsLXByaW1hcnktYmc6ICAgICAgICAgICAgJGJyYW5kLXByaW1hcnkgIWRlZmF1bHQ7XG4vLyoqIFN1Y2Nlc3MgbGFiZWwgYmFja2dyb3VuZCBjb2xvclxuJGxhYmVsLXN1Y2Nlc3MtYmc6ICAgICAgICAgICAgJGJyYW5kLXN1Y2Nlc3MgIWRlZmF1bHQ7XG4vLyoqIEluZm8gbGFiZWwgYmFja2dyb3VuZCBjb2xvclxuJGxhYmVsLWluZm8tYmc6ICAgICAgICAgICAgICAgJGJyYW5kLWluZm8gIWRlZmF1bHQ7XG4vLyoqIFdhcm5pbmcgbGFiZWwgYmFja2dyb3VuZCBjb2xvclxuJGxhYmVsLXdhcm5pbmctYmc6ICAgICAgICAgICAgJGJyYW5kLXdhcm5pbmcgIWRlZmF1bHQ7XG4vLyoqIERhbmdlciBsYWJlbCBiYWNrZ3JvdW5kIGNvbG9yXG4kbGFiZWwtZGFuZ2VyLWJnOiAgICAgICAgICAgICAkYnJhbmQtZGFuZ2VyICFkZWZhdWx0O1xuXG4vLyoqIERlZmF1bHQgbGFiZWwgdGV4dCBjb2xvclxuJGxhYmVsLWNvbG9yOiAgICAgICAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcbi8vKiogRGVmYXVsdCB0ZXh0IGNvbG9yIG9mIGEgbGlua2VkIGxhYmVsXG4kbGFiZWwtbGluay1ob3Zlci1jb2xvcjogICAgICAjZmZmICFkZWZhdWx0O1xuXG5cbi8vPT0gTW9kYWxzXG4vL1xuLy8jI1xuXG4vLyoqIFBhZGRpbmcgYXBwbGllZCB0byB0aGUgbW9kYWwgYm9keVxuJG1vZGFsLWlubmVyLXBhZGRpbmc6ICAgICAgICAgMTVweCAhZGVmYXVsdDtcblxuLy8qKiBQYWRkaW5nIGFwcGxpZWQgdG8gdGhlIG1vZGFsIHRpdGxlXG4kbW9kYWwtdGl0bGUtcGFkZGluZzogICAgICAgICAxNXB4ICFkZWZhdWx0O1xuLy8qKiBNb2RhbCB0aXRsZSBsaW5lLWhlaWdodFxuJG1vZGFsLXRpdGxlLWxpbmUtaGVpZ2h0OiAgICAgJGxpbmUtaGVpZ2h0LWJhc2UgIWRlZmF1bHQ7XG5cbi8vKiogQmFja2dyb3VuZCBjb2xvciBvZiBtb2RhbCBjb250ZW50IGFyZWFcbiRtb2RhbC1jb250ZW50LWJnOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcbi8vKiogTW9kYWwgY29udGVudCBib3JkZXIgY29sb3JcbiRtb2RhbC1jb250ZW50LWJvcmRlci1jb2xvcjogICAgICAgICAgICAgICAgICAgcmdiYSgwLDAsMCwuMikgIWRlZmF1bHQ7XG4vLyoqIE1vZGFsIGNvbnRlbnQgYm9yZGVyIGNvbG9yICoqZm9yIElFOCoqXG4kbW9kYWwtY29udGVudC1mYWxsYmFjay1ib3JkZXItY29sb3I6ICAgICAgICAgICM5OTkgIWRlZmF1bHQ7XG5cbi8vKiogTW9kYWwgYmFja2Ryb3AgYmFja2dyb3VuZCBjb2xvclxuJG1vZGFsLWJhY2tkcm9wLWJnOiAgICAgICAgICAgIzAwMCAhZGVmYXVsdDtcbi8vKiogTW9kYWwgYmFja2Ryb3Agb3BhY2l0eVxuJG1vZGFsLWJhY2tkcm9wLW9wYWNpdHk6ICAgICAgLjUgIWRlZmF1bHQ7XG4vLyoqIE1vZGFsIGhlYWRlciBib3JkZXIgY29sb3JcbiRtb2RhbC1oZWFkZXItYm9yZGVyLWNvbG9yOiAgICNlNWU1ZTUgIWRlZmF1bHQ7XG4vLyoqIE1vZGFsIGZvb3RlciBib3JkZXIgY29sb3JcbiRtb2RhbC1mb290ZXItYm9yZGVyLWNvbG9yOiAgICRtb2RhbC1oZWFkZXItYm9yZGVyLWNvbG9yICFkZWZhdWx0O1xuXG4kbW9kYWwtbGc6ICAgICAgICAgICAgICAgICAgICA5MDBweCAhZGVmYXVsdDtcbiRtb2RhbC1tZDogICAgICAgICAgICAgICAgICAgIDYwMHB4ICFkZWZhdWx0O1xuJG1vZGFsLXNtOiAgICAgICAgICAgICAgICAgICAgMzAwcHggIWRlZmF1bHQ7XG5cblxuLy89PSBBbGVydHNcbi8vXG4vLyMjIERlZmluZSBhbGVydCBjb2xvcnMsIGJvcmRlciByYWRpdXMsIGFuZCBwYWRkaW5nLlxuXG4kYWxlcnQtcGFkZGluZzogICAgICAgICAgICAgICAxNXB4ICFkZWZhdWx0O1xuJGFsZXJ0LWJvcmRlci1yYWRpdXM6ICAgICAgICAgJGJvcmRlci1yYWRpdXMtYmFzZSAhZGVmYXVsdDtcbiRhbGVydC1saW5rLWZvbnQtd2VpZ2h0OiAgICAgIGJvbGQgIWRlZmF1bHQ7XG5cbiRhbGVydC1zdWNjZXNzLWJnOiAgICAgICAgICAgICRzdGF0ZS1zdWNjZXNzLWJnICFkZWZhdWx0O1xuJGFsZXJ0LXN1Y2Nlc3MtdGV4dDogICAgICAgICAgJHN0YXRlLXN1Y2Nlc3MtdGV4dCAhZGVmYXVsdDtcbiRhbGVydC1zdWNjZXNzLWJvcmRlcjogICAgICAgICRzdGF0ZS1zdWNjZXNzLWJvcmRlciAhZGVmYXVsdDtcblxuJGFsZXJ0LWluZm8tYmc6ICAgICAgICAgICAgICAgJHN0YXRlLWluZm8tYmcgIWRlZmF1bHQ7XG4kYWxlcnQtaW5mby10ZXh0OiAgICAgICAgICAgICAkc3RhdGUtaW5mby10ZXh0ICFkZWZhdWx0O1xuJGFsZXJ0LWluZm8tYm9yZGVyOiAgICAgICAgICAgJHN0YXRlLWluZm8tYm9yZGVyICFkZWZhdWx0O1xuXG4kYWxlcnQtd2FybmluZy1iZzogICAgICAgICAgICAkc3RhdGUtd2FybmluZy1iZyAhZGVmYXVsdDtcbiRhbGVydC13YXJuaW5nLXRleHQ6ICAgICAgICAgICRzdGF0ZS13YXJuaW5nLXRleHQgIWRlZmF1bHQ7XG4kYWxlcnQtd2FybmluZy1ib3JkZXI6ICAgICAgICAkc3RhdGUtd2FybmluZy1ib3JkZXIgIWRlZmF1bHQ7XG5cbiRhbGVydC1kYW5nZXItYmc6ICAgICAgICAgICAgICRzdGF0ZS1kYW5nZXItYmcgIWRlZmF1bHQ7XG4kYWxlcnQtZGFuZ2VyLXRleHQ6ICAgICAgICAgICAkc3RhdGUtZGFuZ2VyLXRleHQgIWRlZmF1bHQ7XG4kYWxlcnQtZGFuZ2VyLWJvcmRlcjogICAgICAgICAkc3RhdGUtZGFuZ2VyLWJvcmRlciAhZGVmYXVsdDtcblxuXG4vLz09IFByb2dyZXNzIGJhcnNcbi8vXG4vLyMjXG5cbi8vKiogQmFja2dyb3VuZCBjb2xvciBvZiB0aGUgd2hvbGUgcHJvZ3Jlc3MgY29tcG9uZW50XG4kcHJvZ3Jlc3MtYmc6ICAgICAgICAgICAgICAgICAjZjVmNWY1ICFkZWZhdWx0O1xuLy8qKiBQcm9ncmVzcyBiYXIgdGV4dCBjb2xvclxuJHByb2dyZXNzLWJhci1jb2xvcjogICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcbi8vKiogVmFyaWFibGUgZm9yIHNldHRpbmcgcm91bmRlZCBjb3JuZXJzIG9uIHByb2dyZXNzIGJhci5cbiRwcm9ncmVzcy1ib3JkZXItcmFkaXVzOiAgICAgICRib3JkZXItcmFkaXVzLWJhc2UgIWRlZmF1bHQ7XG5cbi8vKiogRGVmYXVsdCBwcm9ncmVzcyBiYXIgY29sb3JcbiRwcm9ncmVzcy1iYXItYmc6ICAgICAgICAgICAgICRicmFuZC1wcmltYXJ5ICFkZWZhdWx0O1xuLy8qKiBTdWNjZXNzIHByb2dyZXNzIGJhciBjb2xvclxuJHByb2dyZXNzLWJhci1zdWNjZXNzLWJnOiAgICAgJGJyYW5kLXN1Y2Nlc3MgIWRlZmF1bHQ7XG4vLyoqIFdhcm5pbmcgcHJvZ3Jlc3MgYmFyIGNvbG9yXG4kcHJvZ3Jlc3MtYmFyLXdhcm5pbmctYmc6ICAgICAkYnJhbmQtd2FybmluZyAhZGVmYXVsdDtcbi8vKiogRGFuZ2VyIHByb2dyZXNzIGJhciBjb2xvclxuJHByb2dyZXNzLWJhci1kYW5nZXItYmc6ICAgICAgJGJyYW5kLWRhbmdlciAhZGVmYXVsdDtcbi8vKiogSW5mbyBwcm9ncmVzcyBiYXIgY29sb3JcbiRwcm9ncmVzcy1iYXItaW5mby1iZzogICAgICAgICRicmFuZC1pbmZvICFkZWZhdWx0O1xuXG5cbi8vPT0gTGlzdCBncm91cFxuLy9cbi8vIyNcblxuLy8qKiBCYWNrZ3JvdW5kIGNvbG9yIG9uIGAubGlzdC1ncm91cC1pdGVtYFxuJGxpc3QtZ3JvdXAtYmc6ICAgICAgICAgICAgICAgICAjZmZmICFkZWZhdWx0O1xuLy8qKiBgLmxpc3QtZ3JvdXAtaXRlbWAgYm9yZGVyIGNvbG9yXG4kbGlzdC1ncm91cC1ib3JkZXI6ICAgICAgICAgICAgICNkZGQgIWRlZmF1bHQ7XG4vLyoqIExpc3QgZ3JvdXAgYm9yZGVyIHJhZGl1c1xuJGxpc3QtZ3JvdXAtYm9yZGVyLXJhZGl1czogICAgICAkYm9yZGVyLXJhZGl1cy1iYXNlICFkZWZhdWx0O1xuXG4vLyoqIEJhY2tncm91bmQgY29sb3Igb2Ygc2luZ2xlIGxpc3QgaXRlbXMgb24gaG92ZXJcbiRsaXN0LWdyb3VwLWhvdmVyLWJnOiAgICAgICAgICAgI2Y1ZjVmNSAhZGVmYXVsdDtcbi8vKiogVGV4dCBjb2xvciBvZiBhY3RpdmUgbGlzdCBpdGVtc1xuJGxpc3QtZ3JvdXAtYWN0aXZlLWNvbG9yOiAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1jb2xvciAhZGVmYXVsdDtcbi8vKiogQmFja2dyb3VuZCBjb2xvciBvZiBhY3RpdmUgbGlzdCBpdGVtc1xuJGxpc3QtZ3JvdXAtYWN0aXZlLWJnOiAgICAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1iZyAhZGVmYXVsdDtcbi8vKiogQm9yZGVyIGNvbG9yIG9mIGFjdGl2ZSBsaXN0IGVsZW1lbnRzXG4kbGlzdC1ncm91cC1hY3RpdmUtYm9yZGVyOiAgICAgICRsaXN0LWdyb3VwLWFjdGl2ZS1iZyAhZGVmYXVsdDtcbi8vKiogVGV4dCBjb2xvciBmb3IgY29udGVudCB3aXRoaW4gYWN0aXZlIGxpc3QgaXRlbXNcbiRsaXN0LWdyb3VwLWFjdGl2ZS10ZXh0LWNvbG9yOiAgbGlnaHRlbigkbGlzdC1ncm91cC1hY3RpdmUtYmcsIDQwJSkgIWRlZmF1bHQ7XG5cbi8vKiogVGV4dCBjb2xvciBvZiBkaXNhYmxlZCBsaXN0IGl0ZW1zXG4kbGlzdC1ncm91cC1kaXNhYmxlZC1jb2xvcjogICAgICAkZ3JheS1saWdodCAhZGVmYXVsdDtcbi8vKiogQmFja2dyb3VuZCBjb2xvciBvZiBkaXNhYmxlZCBsaXN0IGl0ZW1zXG4kbGlzdC1ncm91cC1kaXNhYmxlZC1iZzogICAgICAgICAkZ3JheS1saWdodGVyICFkZWZhdWx0O1xuLy8qKiBUZXh0IGNvbG9yIGZvciBjb250ZW50IHdpdGhpbiBkaXNhYmxlZCBsaXN0IGl0ZW1zXG4kbGlzdC1ncm91cC1kaXNhYmxlZC10ZXh0LWNvbG9yOiAkbGlzdC1ncm91cC1kaXNhYmxlZC1jb2xvciAhZGVmYXVsdDtcblxuJGxpc3QtZ3JvdXAtbGluay1jb2xvcjogICAgICAgICAjNTU1ICFkZWZhdWx0O1xuJGxpc3QtZ3JvdXAtbGluay1ob3Zlci1jb2xvcjogICAkbGlzdC1ncm91cC1saW5rLWNvbG9yICFkZWZhdWx0O1xuJGxpc3QtZ3JvdXAtbGluay1oZWFkaW5nLWNvbG9yOiAjMzMzICFkZWZhdWx0O1xuXG5cbi8vPT0gUGFuZWxzXG4vL1xuLy8jI1xuXG4kcGFuZWwtYmc6ICAgICAgICAgICAgICAgICAgICAjZmZmICFkZWZhdWx0O1xuJHBhbmVsLWJvZHktcGFkZGluZzogICAgICAgICAgMTVweCAhZGVmYXVsdDtcbiRwYW5lbC1oZWFkaW5nLXBhZGRpbmc6ICAgICAgIDEwcHggMTVweCAhZGVmYXVsdDtcbiRwYW5lbC1mb290ZXItcGFkZGluZzogICAgICAgICRwYW5lbC1oZWFkaW5nLXBhZGRpbmcgIWRlZmF1bHQ7XG4kcGFuZWwtYm9yZGVyLXJhZGl1czogICAgICAgICAkYm9yZGVyLXJhZGl1cy1iYXNlICFkZWZhdWx0O1xuXG4vLyoqIEJvcmRlciBjb2xvciBmb3IgZWxlbWVudHMgd2l0aGluIHBhbmVsc1xuJHBhbmVsLWlubmVyLWJvcmRlcjogICAgICAgICAgI2RkZCAhZGVmYXVsdDtcbiRwYW5lbC1mb290ZXItYmc6ICAgICAgICAgICAgICNmNWY1ZjUgIWRlZmF1bHQ7XG5cbiRwYW5lbC1kZWZhdWx0LXRleHQ6ICAgICAgICAgICRncmF5LWRhcmsgIWRlZmF1bHQ7XG4kcGFuZWwtZGVmYXVsdC1ib3JkZXI6ICAgICAgICAjZGRkICFkZWZhdWx0O1xuJHBhbmVsLWRlZmF1bHQtaGVhZGluZy1iZzogICAgI2Y1ZjVmNSAhZGVmYXVsdDtcblxuJHBhbmVsLXByaW1hcnktdGV4dDogICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcbiRwYW5lbC1wcmltYXJ5LWJvcmRlcjogICAgICAgICRicmFuZC1wcmltYXJ5ICFkZWZhdWx0O1xuJHBhbmVsLXByaW1hcnktaGVhZGluZy1iZzogICAgJGJyYW5kLXByaW1hcnkgIWRlZmF1bHQ7XG5cbiRwYW5lbC1zdWNjZXNzLXRleHQ6ICAgICAgICAgICRzdGF0ZS1zdWNjZXNzLXRleHQgIWRlZmF1bHQ7XG4kcGFuZWwtc3VjY2Vzcy1ib3JkZXI6ICAgICAgICAkc3RhdGUtc3VjY2Vzcy1ib3JkZXIgIWRlZmF1bHQ7XG4kcGFuZWwtc3VjY2Vzcy1oZWFkaW5nLWJnOiAgICAkc3RhdGUtc3VjY2Vzcy1iZyAhZGVmYXVsdDtcblxuJHBhbmVsLWluZm8tdGV4dDogICAgICAgICAgICAgJHN0YXRlLWluZm8tdGV4dCAhZGVmYXVsdDtcbiRwYW5lbC1pbmZvLWJvcmRlcjogICAgICAgICAgICRzdGF0ZS1pbmZvLWJvcmRlciAhZGVmYXVsdDtcbiRwYW5lbC1pbmZvLWhlYWRpbmctYmc6ICAgICAgICRzdGF0ZS1pbmZvLWJnICFkZWZhdWx0O1xuXG4kcGFuZWwtd2FybmluZy10ZXh0OiAgICAgICAgICAkc3RhdGUtd2FybmluZy10ZXh0ICFkZWZhdWx0O1xuJHBhbmVsLXdhcm5pbmctYm9yZGVyOiAgICAgICAgJHN0YXRlLXdhcm5pbmctYm9yZGVyICFkZWZhdWx0O1xuJHBhbmVsLXdhcm5pbmctaGVhZGluZy1iZzogICAgJHN0YXRlLXdhcm5pbmctYmcgIWRlZmF1bHQ7XG5cbiRwYW5lbC1kYW5nZXItdGV4dDogICAgICAgICAgICRzdGF0ZS1kYW5nZXItdGV4dCAhZGVmYXVsdDtcbiRwYW5lbC1kYW5nZXItYm9yZGVyOiAgICAgICAgICRzdGF0ZS1kYW5nZXItYm9yZGVyICFkZWZhdWx0O1xuJHBhbmVsLWRhbmdlci1oZWFkaW5nLWJnOiAgICAgJHN0YXRlLWRhbmdlci1iZyAhZGVmYXVsdDtcblxuXG4vLz09IFRodW1ibmFpbHNcbi8vXG4vLyMjXG5cbi8vKiogUGFkZGluZyBhcm91bmQgdGhlIHRodW1ibmFpbCBpbWFnZVxuJHRodW1ibmFpbC1wYWRkaW5nOiAgICAgICAgICAgNHB4ICFkZWZhdWx0O1xuLy8qKiBUaHVtYm5haWwgYmFja2dyb3VuZCBjb2xvclxuJHRodW1ibmFpbC1iZzogICAgICAgICAgICAgICAgJGJvZHktYmcgIWRlZmF1bHQ7XG4vLyoqIFRodW1ibmFpbCBib3JkZXIgY29sb3JcbiR0aHVtYm5haWwtYm9yZGVyOiAgICAgICAgICAgICNkZGQgIWRlZmF1bHQ7XG4vLyoqIFRodW1ibmFpbCBib3JkZXIgcmFkaXVzXG4kdGh1bWJuYWlsLWJvcmRlci1yYWRpdXM6ICAgICAkYm9yZGVyLXJhZGl1cy1iYXNlICFkZWZhdWx0O1xuXG4vLyoqIEN1c3RvbSB0ZXh0IGNvbG9yIGZvciB0aHVtYm5haWwgY2FwdGlvbnNcbiR0aHVtYm5haWwtY2FwdGlvbi1jb2xvcjogICAgICR0ZXh0LWNvbG9yICFkZWZhdWx0O1xuLy8qKiBQYWRkaW5nIGFyb3VuZCB0aGUgdGh1bWJuYWlsIGNhcHRpb25cbiR0aHVtYm5haWwtY2FwdGlvbi1wYWRkaW5nOiAgIDlweCAhZGVmYXVsdDtcblxuXG4vLz09IFdlbGxzXG4vL1xuLy8jI1xuXG4kd2VsbC1iZzogICAgICAgICAgICAgICAgICAgICAjZjVmNWY1ICFkZWZhdWx0O1xuJHdlbGwtYm9yZGVyOiAgICAgICAgICAgICAgICAgZGFya2VuKCR3ZWxsLWJnLCA3JSkgIWRlZmF1bHQ7XG5cblxuLy89PSBCYWRnZXNcbi8vXG4vLyMjXG5cbiRiYWRnZS1jb2xvcjogICAgICAgICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XG4vLyoqIExpbmtlZCBiYWRnZSB0ZXh0IGNvbG9yIG9uIGhvdmVyXG4kYmFkZ2UtbGluay1ob3Zlci1jb2xvcjogICAgICAjZmZmICFkZWZhdWx0O1xuJGJhZGdlLWJnOiAgICAgICAgICAgICAgICAgICAgJGdyYXktbGlnaHQgIWRlZmF1bHQ7XG5cbi8vKiogQmFkZ2UgdGV4dCBjb2xvciBpbiBhY3RpdmUgbmF2IGxpbmtcbiRiYWRnZS1hY3RpdmUtY29sb3I6ICAgICAgICAgICRsaW5rLWNvbG9yICFkZWZhdWx0O1xuLy8qKiBCYWRnZSBiYWNrZ3JvdW5kIGNvbG9yIGluIGFjdGl2ZSBuYXYgbGlua1xuJGJhZGdlLWFjdGl2ZS1iZzogICAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcblxuJGJhZGdlLWZvbnQtd2VpZ2h0OiAgICAgICAgICAgYm9sZCAhZGVmYXVsdDtcbiRiYWRnZS1saW5lLWhlaWdodDogICAgICAgICAgIDEgIWRlZmF1bHQ7XG4kYmFkZ2UtYm9yZGVyLXJhZGl1czogICAgICAgICAxMHB4ICFkZWZhdWx0O1xuXG5cbi8vPT0gQnJlYWRjcnVtYnNcbi8vXG4vLyMjXG5cbiRicmVhZGNydW1iLXBhZGRpbmctdmVydGljYWw6ICAgOHB4ICFkZWZhdWx0O1xuJGJyZWFkY3J1bWItcGFkZGluZy1ob3Jpem9udGFsOiAxNXB4ICFkZWZhdWx0O1xuLy8qKiBCcmVhZGNydW1iIGJhY2tncm91bmQgY29sb3JcbiRicmVhZGNydW1iLWJnOiAgICAgICAgICAgICAgICAgI2Y1ZjVmNSAhZGVmYXVsdDtcbi8vKiogQnJlYWRjcnVtYiB0ZXh0IGNvbG9yXG4kYnJlYWRjcnVtYi1jb2xvcjogICAgICAgICAgICAgICNjY2MgIWRlZmF1bHQ7XG4vLyoqIFRleHQgY29sb3Igb2YgY3VycmVudCBwYWdlIGluIHRoZSBicmVhZGNydW1iXG4kYnJlYWRjcnVtYi1hY3RpdmUtY29sb3I6ICAgICAgICRncmF5LWxpZ2h0ICFkZWZhdWx0O1xuLy8qKiBUZXh0dWFsIHNlcGFyYXRvciBmb3IgYmV0d2VlbiBicmVhZGNydW1iIGVsZW1lbnRzXG4kYnJlYWRjcnVtYi1zZXBhcmF0b3I6ICAgICAgICAgIFwiL1wiICFkZWZhdWx0O1xuXG5cbi8vPT0gQ2Fyb3VzZWxcbi8vXG4vLyMjXG5cbiRjYXJvdXNlbC10ZXh0LXNoYWRvdzogICAgICAgICAgICAgICAgICAgICAgICAwIDFweCAycHggcmdiYSgwLDAsMCwuNikgIWRlZmF1bHQ7XG5cbiRjYXJvdXNlbC1jb250cm9sLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAjZmZmICFkZWZhdWx0O1xuJGNhcm91c2VsLWNvbnRyb2wtd2lkdGg6ICAgICAgICAgICAgICAgICAgICAgIDE1JSAhZGVmYXVsdDtcbiRjYXJvdXNlbC1jb250cm9sLW9wYWNpdHk6ICAgICAgICAgICAgICAgICAgICAuNSAhZGVmYXVsdDtcbiRjYXJvdXNlbC1jb250cm9sLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgICAyMHB4ICFkZWZhdWx0O1xuXG4kY2Fyb3VzZWwtaW5kaWNhdG9yLWFjdGl2ZS1iZzogICAgICAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcbiRjYXJvdXNlbC1pbmRpY2F0b3ItYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICAjZmZmICFkZWZhdWx0O1xuXG4kY2Fyb3VzZWwtY2FwdGlvbi1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcblxuXG4vLz09IENsb3NlXG4vL1xuLy8jI1xuXG4kY2xvc2UtZm9udC13ZWlnaHQ6ICAgICAgICAgICBib2xkICFkZWZhdWx0O1xuJGNsb3NlLWNvbG9yOiAgICAgICAgICAgICAgICAgIzAwMCAhZGVmYXVsdDtcbiRjbG9zZS10ZXh0LXNoYWRvdzogICAgICAgICAgIDAgMXB4IDAgI2ZmZiAhZGVmYXVsdDtcblxuXG4vLz09IENvZGVcbi8vXG4vLyMjXG5cbiRjb2RlLWNvbG9yOiAgICAgICAgICAgICAgICAgICNjNzI1NGUgIWRlZmF1bHQ7XG4kY29kZS1iZzogICAgICAgICAgICAgICAgICAgICAjZjlmMmY0ICFkZWZhdWx0O1xuXG4ka2JkLWNvbG9yOiAgICAgICAgICAgICAgICAgICAjZmZmICFkZWZhdWx0O1xuJGtiZC1iZzogICAgICAgICAgICAgICAgICAgICAgIzMzMyAhZGVmYXVsdDtcblxuJHByZS1iZzogICAgICAgICAgICAgICAgICAgICAgI2Y1ZjVmNSAhZGVmYXVsdDtcbiRwcmUtY29sb3I6ICAgICAgICAgICAgICAgICAgICRncmF5LWRhcmsgIWRlZmF1bHQ7XG4kcHJlLWJvcmRlci1jb2xvcjogICAgICAgICAgICAjY2NjICFkZWZhdWx0O1xuJHByZS1zY3JvbGxhYmxlLW1heC1oZWlnaHQ6ICAgMzQwcHggIWRlZmF1bHQ7XG5cblxuLy89PSBUeXBlXG4vL1xuLy8jI1xuXG4vLyoqIEhvcml6b250YWwgb2Zmc2V0IGZvciBmb3JtcyBhbmQgbGlzdHMuXG4kY29tcG9uZW50LW9mZnNldC1ob3Jpem9udGFsOiAxODBweCAhZGVmYXVsdDtcbi8vKiogVGV4dCBtdXRlZCBjb2xvclxuJHRleHQtbXV0ZWQ6ICAgICAgICAgICAgICAgICAgJGdyYXktbGlnaHQgIWRlZmF1bHQ7XG4vLyoqIEFiYnJldmlhdGlvbnMgYW5kIGFjcm9ueW1zIGJvcmRlciBjb2xvclxuJGFiYnItYm9yZGVyLWNvbG9yOiAgICAgICAgICAgJGdyYXktbGlnaHQgIWRlZmF1bHQ7XG4vLyoqIEhlYWRpbmdzIHNtYWxsIGNvbG9yXG4kaGVhZGluZ3Mtc21hbGwtY29sb3I6ICAgICAgICAkZ3JheS1saWdodCAhZGVmYXVsdDtcbi8vKiogQmxvY2txdW90ZSBzbWFsbCBjb2xvclxuJGJsb2NrcXVvdGUtc21hbGwtY29sb3I6ICAgICAgJGdyYXktbGlnaHQgIWRlZmF1bHQ7XG4vLyoqIEJsb2NrcXVvdGUgZm9udCBzaXplXG4kYmxvY2txdW90ZS1mb250LXNpemU6ICAgICAgICAoJGZvbnQtc2l6ZS1iYXNlICogMS4yNSkgIWRlZmF1bHQ7XG4vLyoqIEJsb2NrcXVvdGUgYm9yZGVyIGNvbG9yXG4kYmxvY2txdW90ZS1ib3JkZXItY29sb3I6ICAgICAkZ3JheS1saWdodGVyICFkZWZhdWx0O1xuLy8qKiBQYWdlIGhlYWRlciBib3JkZXIgY29sb3JcbiRwYWdlLWhlYWRlci1ib3JkZXItY29sb3I6ICAgICRncmF5LWxpZ2h0ZXIgIWRlZmF1bHQ7XG4vLyoqIFdpZHRoIG9mIGhvcml6b250YWwgZGVzY3JpcHRpb24gbGlzdCB0aXRsZXNcbiRkbC1ob3Jpem9udGFsLW9mZnNldDogICAgICAgICRjb21wb25lbnQtb2Zmc2V0LWhvcml6b250YWwgIWRlZmF1bHQ7XG4vLyoqIFBvaW50IGF0IHdoaWNoIC5kbC1ob3Jpem9udGFsIGJlY29tZXMgaG9yaXpvbnRhbFxuJGRsLWhvcml6b250YWwtYnJlYWtwb2ludDogICAgJGdyaWQtZmxvYXQtYnJlYWtwb2ludCAhZGVmYXVsdDtcbi8vKiogSG9yaXpvbnRhbCBsaW5lIGNvbG9yLlxuJGhyLWJvcmRlcjogICAgICAgICAgICAgICAgICAgJGdyYXktbGlnaHRlciAhZGVmYXVsdDtcbiIsIi8vIE1peGluc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLy8gVXRpbGl0aWVzXG5AaW1wb3J0IFwibWl4aW5zL2hpZGUtdGV4dFwiO1xuQGltcG9ydCBcIm1peGlucy9vcGFjaXR5XCI7XG5AaW1wb3J0IFwibWl4aW5zL2ltYWdlXCI7XG5AaW1wb3J0IFwibWl4aW5zL2xhYmVsc1wiO1xuQGltcG9ydCBcIm1peGlucy9yZXNldC1maWx0ZXJcIjtcbkBpbXBvcnQgXCJtaXhpbnMvcmVzaXplXCI7XG5AaW1wb3J0IFwibWl4aW5zL3Jlc3BvbnNpdmUtdmlzaWJpbGl0eVwiO1xuQGltcG9ydCBcIm1peGlucy9zaXplXCI7XG5AaW1wb3J0IFwibWl4aW5zL3RhYi1mb2N1c1wiO1xuQGltcG9ydCBcIm1peGlucy9yZXNldC10ZXh0XCI7XG5AaW1wb3J0IFwibWl4aW5zL3RleHQtZW1waGFzaXNcIjtcbkBpbXBvcnQgXCJtaXhpbnMvdGV4dC1vdmVyZmxvd1wiO1xuQGltcG9ydCBcIm1peGlucy92ZW5kb3ItcHJlZml4ZXNcIjtcblxuLy8gQ29tcG9uZW50c1xuQGltcG9ydCBcIm1peGlucy9hbGVydHNcIjtcbkBpbXBvcnQgXCJtaXhpbnMvYnV0dG9uc1wiO1xuQGltcG9ydCBcIm1peGlucy9wYW5lbHNcIjtcbkBpbXBvcnQgXCJtaXhpbnMvcGFnaW5hdGlvblwiO1xuQGltcG9ydCBcIm1peGlucy9saXN0LWdyb3VwXCI7XG5AaW1wb3J0IFwibWl4aW5zL25hdi1kaXZpZGVyXCI7XG5AaW1wb3J0IFwibWl4aW5zL2Zvcm1zXCI7XG5AaW1wb3J0IFwibWl4aW5zL3Byb2dyZXNzLWJhclwiO1xuQGltcG9ydCBcIm1peGlucy90YWJsZS1yb3dcIjtcblxuLy8gU2tpbnNcbkBpbXBvcnQgXCJtaXhpbnMvYmFja2dyb3VuZC12YXJpYW50XCI7XG5AaW1wb3J0IFwibWl4aW5zL2JvcmRlci1yYWRpdXNcIjtcbkBpbXBvcnQgXCJtaXhpbnMvZ3JhZGllbnRzXCI7XG5cbi8vIExheW91dFxuQGltcG9ydCBcIm1peGlucy9jbGVhcmZpeFwiO1xuQGltcG9ydCBcIm1peGlucy9jZW50ZXItYmxvY2tcIjtcbkBpbXBvcnQgXCJtaXhpbnMvbmF2LXZlcnRpY2FsLWFsaWduXCI7XG5AaW1wb3J0IFwibWl4aW5zL2dyaWQtZnJhbWV3b3JrXCI7XG5AaW1wb3J0IFwibWl4aW5zL2dyaWRcIjtcbiIsIi8vIENTUyBpbWFnZSByZXBsYWNlbWVudFxuLy9cbi8vIEhlYWRzIHVwISB2MyBsYXVuY2hlZCB3aXRoIG9ubHkgYC5oaWRlLXRleHQoKWAsIGJ1dCBwZXIgb3VyIHBhdHRlcm4gZm9yXG4vLyBtaXhpbnMgYmVpbmcgcmV1c2VkIGFzIGNsYXNzZXMgd2l0aCB0aGUgc2FtZSBuYW1lLCB0aGlzIGRvZXNuJ3QgaG9sZCB1cC4gQXNcbi8vIG9mIHYzLjAuMSB3ZSBoYXZlIGFkZGVkIGAudGV4dC1oaWRlKClgIGFuZCBkZXByZWNhdGVkIGAuaGlkZS10ZXh0KClgLlxuLy9cbi8vIFNvdXJjZTogaHR0cHM6Ly9naXRodWIuY29tL2g1YnAvaHRtbDUtYm9pbGVycGxhdGUvY29tbWl0L2FhMDM5NmVhZTc1N1xuXG4vLyBEZXByZWNhdGVkIGFzIG9mIHYzLjAuMSAoaGFzIGJlZW4gcmVtb3ZlZCBpbiB2NClcbkBtaXhpbiBoaWRlLXRleHQoKSB7XG4gIGZvbnQ6IDAvMCBhO1xuICBjb2xvcjogdHJhbnNwYXJlbnQ7XG4gIHRleHQtc2hhZG93OiBub25lO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgYm9yZGVyOiAwO1xufVxuXG4vLyBOZXcgbWl4aW4gdG8gdXNlIGFzIG9mIHYzLjAuMVxuQG1peGluIHRleHQtaGlkZSgpIHtcbiAgQGluY2x1ZGUgaGlkZS10ZXh0O1xufVxuIiwiLy8gT3BhY2l0eVxuXG5AbWl4aW4gb3BhY2l0eSgkb3BhY2l0eSkge1xuICBvcGFjaXR5OiAkb3BhY2l0eTtcbiAgLy8gSUU4IGZpbHRlclxuICAkb3BhY2l0eS1pZTogKCRvcGFjaXR5ICogMTAwKTtcbiAgZmlsdGVyOiBhbHBoYShvcGFjaXR5PSRvcGFjaXR5LWllKTtcbn1cbiIsIi8vIEltYWdlIE1peGluc1xuLy8gLSBSZXNwb25zaXZlIGltYWdlXG4vLyAtIFJldGluYSBpbWFnZVxuXG5cbi8vIFJlc3BvbnNpdmUgaW1hZ2Vcbi8vXG4vLyBLZWVwIGltYWdlcyBmcm9tIHNjYWxpbmcgYmV5b25kIHRoZSB3aWR0aCBvZiB0aGVpciBwYXJlbnRzLlxuQG1peGluIGltZy1yZXNwb25zaXZlKCRkaXNwbGF5OiBibG9jaykge1xuICBkaXNwbGF5OiAkZGlzcGxheTtcbiAgbWF4LXdpZHRoOiAxMDAlOyAvLyBQYXJ0IDE6IFNldCBhIG1heGltdW0gcmVsYXRpdmUgdG8gdGhlIHBhcmVudFxuICBoZWlnaHQ6IGF1dG87IC8vIFBhcnQgMjogU2NhbGUgdGhlIGhlaWdodCBhY2NvcmRpbmcgdG8gdGhlIHdpZHRoLCBvdGhlcndpc2UgeW91IGdldCBzdHJldGNoaW5nXG59XG5cblxuLy8gUmV0aW5hIGltYWdlXG4vL1xuLy8gU2hvcnQgcmV0aW5hIG1peGluIGZvciBzZXR0aW5nIGJhY2tncm91bmQtaW1hZ2UgYW5kIC1zaXplLiBOb3RlIHRoYXQgdGhlXG4vLyBzcGVsbGluZyBvZiBgbWluLS1tb3otZGV2aWNlLXBpeGVsLXJhdGlvYCBpcyBpbnRlbnRpb25hbC5cbkBtaXhpbiBpbWctcmV0aW5hKCRmaWxlLTF4LCAkZmlsZS0yeCwgJHdpZHRoLTF4LCAkaGVpZ2h0LTF4KSB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChpZigkYm9vdHN0cmFwLXNhc3MtYXNzZXQtaGVscGVyLCB0d2JzLWltYWdlLXBhdGgoXCIjeyRmaWxlLTF4fVwiKSwgXCIjeyRmaWxlLTF4fVwiKSk7XG5cbiAgQG1lZGlhXG4gIG9ubHkgc2NyZWVuIGFuZCAoLXdlYmtpdC1taW4tZGV2aWNlLXBpeGVsLXJhdGlvOiAyKSxcbiAgb25seSBzY3JlZW4gYW5kICggICBtaW4tLW1vei1kZXZpY2UtcGl4ZWwtcmF0aW86IDIpLFxuICBvbmx5IHNjcmVlbiBhbmQgKCAgICAgLW8tbWluLWRldmljZS1waXhlbC1yYXRpbzogMi8xKSxcbiAgb25seSBzY3JlZW4gYW5kICggICAgICAgIG1pbi1kZXZpY2UtcGl4ZWwtcmF0aW86IDIpLFxuICBvbmx5IHNjcmVlbiBhbmQgKCAgICAgICAgICAgICAgICBtaW4tcmVzb2x1dGlvbjogMTkyZHBpKSxcbiAgb25seSBzY3JlZW4gYW5kICggICAgICAgICAgICAgICAgbWluLXJlc29sdXRpb246IDJkcHB4KSB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKGlmKCRib290c3RyYXAtc2Fzcy1hc3NldC1oZWxwZXIsIHR3YnMtaW1hZ2UtcGF0aChcIiN7JGZpbGUtMnh9XCIpLCBcIiN7JGZpbGUtMnh9XCIpKTtcbiAgICBiYWNrZ3JvdW5kLXNpemU6ICR3aWR0aC0xeCAkaGVpZ2h0LTF4O1xuICB9XG59XG4iLCIvLyBMYWJlbHNcblxuQG1peGluIGxhYmVsLXZhcmlhbnQoJGNvbG9yKSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICRjb2xvcjtcblxuICAmW2hyZWZdIHtcbiAgICAmOmhvdmVyLFxuICAgICY6Zm9jdXMge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogZGFya2VuKCRjb2xvciwgMTAlKTtcbiAgICB9XG4gIH1cbn1cbiIsIi8vIFJlc2V0IGZpbHRlcnMgZm9yIElFXG4vL1xuLy8gV2hlbiB5b3UgbmVlZCB0byByZW1vdmUgYSBncmFkaWVudCBiYWNrZ3JvdW5kLCBkbyBub3QgZm9yZ2V0IHRvIHVzZSB0aGlzIHRvIHJlc2V0XG4vLyB0aGUgSUUgZmlsdGVyIGZvciBJRTkgYW5kIGJlbG93LlxuXG5AbWl4aW4gcmVzZXQtZmlsdGVyKCkge1xuICBmaWx0ZXI6IHByb2dpZDpEWEltYWdlVHJhbnNmb3JtLk1pY3Jvc29mdC5ncmFkaWVudChlbmFibGVkID0gZmFsc2UpO1xufVxuIiwiLy8gUmVzaXplIGFueXRoaW5nXG5cbkBtaXhpbiByZXNpemFibGUoJGRpcmVjdGlvbikge1xuICByZXNpemU6ICRkaXJlY3Rpb247IC8vIE9wdGlvbnM6IGhvcml6b250YWwsIHZlcnRpY2FsLCBib3RoXG4gIG92ZXJmbG93OiBhdXRvOyAvLyBQZXIgQ1NTMyBVSSwgYHJlc2l6ZWAgb25seSBhcHBsaWVzIHdoZW4gYG92ZXJmbG93YCBpc24ndCBgdmlzaWJsZWBcbn1cbiIsIi8vIFJlc3BvbnNpdmUgdXRpbGl0aWVzXG5cbi8vXG4vLyBNb3JlIGVhc2lseSBpbmNsdWRlIGFsbCB0aGUgc3RhdGVzIGZvciByZXNwb25zaXZlLXV0aWxpdGllcy5sZXNzLlxuLy8gW2NvbnZlcnRlcl0gJHBhcmVudCBoYWNrXG5AbWl4aW4gcmVzcG9uc2l2ZS12aXNpYmlsaXR5KCRwYXJlbnQpIHtcbiAgI3skcGFyZW50fSB7XG4gICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgfVxuICB0YWJsZSN7JHBhcmVudH0gIHsgZGlzcGxheTogdGFibGUgIWltcG9ydGFudDsgfVxuICB0ciN7JHBhcmVudH0gICAgIHsgZGlzcGxheTogdGFibGUtcm93ICFpbXBvcnRhbnQ7IH1cbiAgdGgjeyRwYXJlbnR9LFxuICB0ZCN7JHBhcmVudH0gICAgIHsgZGlzcGxheTogdGFibGUtY2VsbCAhaW1wb3J0YW50OyB9XG59XG5cbi8vIFtjb252ZXJ0ZXJdICRwYXJlbnQgaGFja1xuQG1peGluIHJlc3BvbnNpdmUtaW52aXNpYmlsaXR5KCRwYXJlbnQpIHtcbiAgI3skcGFyZW50fSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG4iLCIvLyBTaXppbmcgc2hvcnRjdXRzXG5cbkBtaXhpbiBzaXplKCR3aWR0aCwgJGhlaWdodCkge1xuICB3aWR0aDogJHdpZHRoO1xuICBoZWlnaHQ6ICRoZWlnaHQ7XG59XG5cbkBtaXhpbiBzcXVhcmUoJHNpemUpIHtcbiAgQGluY2x1ZGUgc2l6ZSgkc2l6ZSwgJHNpemUpO1xufVxuIiwiLy8gV2ViS2l0LXN0eWxlIGZvY3VzXG5cbkBtaXhpbiB0YWItZm9jdXMoKSB7XG4gIC8vIFdlYktpdC1zcGVjaWZpYy4gT3RoZXIgYnJvd3NlcnMgd2lsbCBrZWVwIHRoZWlyIGRlZmF1bHQgb3V0bGluZSBzdHlsZS5cbiAgLy8gKEluaXRpYWxseSB0cmllZCB0byBhbHNvIGZvcmNlIGRlZmF1bHQgdmlhIGBvdXRsaW5lOiBpbml0aWFsYCxcbiAgLy8gYnV0IHRoYXQgc2VlbXMgdG8gZXJyb25lb3VzbHkgcmVtb3ZlIHRoZSBvdXRsaW5lIGluIEZpcmVmb3ggYWx0b2dldGhlci4pXG4gIG91dGxpbmU6IDVweCBhdXRvIC13ZWJraXQtZm9jdXMtcmluZy1jb2xvcjtcbiAgb3V0bGluZS1vZmZzZXQ6IC0ycHg7XG59XG4iLCJAbWl4aW4gcmVzZXQtdGV4dCgpIHtcbiAgZm9udC1mYW1pbHk6ICRmb250LWZhbWlseS1iYXNlO1xuICAvLyBXZSBkZWxpYmVyYXRlbHkgZG8gTk9UIHJlc2V0IGZvbnQtc2l6ZS5cbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBsZXR0ZXItc3BhY2luZzogbm9ybWFsO1xuICBsaW5lLWJyZWFrOiBhdXRvO1xuICBsaW5lLWhlaWdodDogJGxpbmUtaGVpZ2h0LWJhc2U7XG4gIHRleHQtYWxpZ246IGxlZnQ7IC8vIEZhbGxiYWNrIGZvciB3aGVyZSBgc3RhcnRgIGlzIG5vdCBzdXBwb3J0ZWRcbiAgdGV4dC1hbGlnbjogc3RhcnQ7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgdGV4dC1zaGFkb3c6IG5vbmU7XG4gIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICB3aGl0ZS1zcGFjZTogbm9ybWFsO1xuICB3b3JkLWJyZWFrOiBub3JtYWw7XG4gIHdvcmQtc3BhY2luZzogbm9ybWFsO1xuICB3b3JkLXdyYXA6IG5vcm1hbDtcbn1cbiIsIi8vIFR5cG9ncmFwaHlcblxuLy8gW2NvbnZlcnRlcl0gJHBhcmVudCBoYWNrXG5AbWl4aW4gdGV4dC1lbXBoYXNpcy12YXJpYW50KCRwYXJlbnQsICRjb2xvcikge1xuICAjeyRwYXJlbnR9IHtcbiAgICBjb2xvcjogJGNvbG9yO1xuICB9XG4gIGEjeyRwYXJlbnR9OmhvdmVyLFxuICBhI3skcGFyZW50fTpmb2N1cyB7XG4gICAgY29sb3I6IGRhcmtlbigkY29sb3IsIDEwJSk7XG4gIH1cbn1cbiIsIi8vIFRleHQgb3ZlcmZsb3dcbi8vIFJlcXVpcmVzIGlubGluZS1ibG9jayBvciBibG9jayBmb3IgcHJvcGVyIHN0eWxpbmdcblxuQG1peGluIHRleHQtb3ZlcmZsb3coKSB7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xufVxuIiwiLy8gVmVuZG9yIFByZWZpeGVzXG4vL1xuLy8gQWxsIHZlbmRvciBtaXhpbnMgYXJlIGRlcHJlY2F0ZWQgYXMgb2YgdjMuMi4wIGR1ZSB0byB0aGUgaW50cm9kdWN0aW9uIG9mXG4vLyBBdXRvcHJlZml4ZXIgaW4gb3VyIEdydW50ZmlsZS4gVGhleSBoYXZlIGJlZW4gcmVtb3ZlZCBpbiB2NC5cblxuLy8gLSBBbmltYXRpb25zXG4vLyAtIEJhY2tmYWNlIHZpc2liaWxpdHlcbi8vIC0gQm94IHNoYWRvd1xuLy8gLSBCb3ggc2l6aW5nXG4vLyAtIENvbnRlbnQgY29sdW1uc1xuLy8gLSBIeXBoZW5zXG4vLyAtIFBsYWNlaG9sZGVyIHRleHRcbi8vIC0gVHJhbnNmb3JtYXRpb25zXG4vLyAtIFRyYW5zaXRpb25zXG4vLyAtIFVzZXIgU2VsZWN0XG5cblxuLy8gQW5pbWF0aW9uc1xuQG1peGluIGFuaW1hdGlvbigkYW5pbWF0aW9uKSB7XG4gIC13ZWJraXQtYW5pbWF0aW9uOiAkYW5pbWF0aW9uO1xuICAgICAgIC1vLWFuaW1hdGlvbjogJGFuaW1hdGlvbjtcbiAgICAgICAgICBhbmltYXRpb246ICRhbmltYXRpb247XG59XG5AbWl4aW4gYW5pbWF0aW9uLW5hbWUoJG5hbWUpIHtcbiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogJG5hbWU7XG4gICAgICAgICAgYW5pbWF0aW9uLW5hbWU6ICRuYW1lO1xufVxuQG1peGluIGFuaW1hdGlvbi1kdXJhdGlvbigkZHVyYXRpb24pIHtcbiAgLXdlYmtpdC1hbmltYXRpb24tZHVyYXRpb246ICRkdXJhdGlvbjtcbiAgICAgICAgICBhbmltYXRpb24tZHVyYXRpb246ICRkdXJhdGlvbjtcbn1cbkBtaXhpbiBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uKCR0aW1pbmctZnVuY3Rpb24pIHtcbiAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiAkdGltaW5nLWZ1bmN0aW9uO1xuICAgICAgICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246ICR0aW1pbmctZnVuY3Rpb247XG59XG5AbWl4aW4gYW5pbWF0aW9uLWRlbGF5KCRkZWxheSkge1xuICAtd2Via2l0LWFuaW1hdGlvbi1kZWxheTogJGRlbGF5O1xuICAgICAgICAgIGFuaW1hdGlvbi1kZWxheTogJGRlbGF5O1xufVxuQG1peGluIGFuaW1hdGlvbi1pdGVyYXRpb24tY291bnQoJGl0ZXJhdGlvbi1jb3VudCkge1xuICAtd2Via2l0LWFuaW1hdGlvbi1pdGVyYXRpb24tY291bnQ6ICRpdGVyYXRpb24tY291bnQ7XG4gICAgICAgICAgYW5pbWF0aW9uLWl0ZXJhdGlvbi1jb3VudDogJGl0ZXJhdGlvbi1jb3VudDtcbn1cbkBtaXhpbiBhbmltYXRpb24tZGlyZWN0aW9uKCRkaXJlY3Rpb24pIHtcbiAgLXdlYmtpdC1hbmltYXRpb24tZGlyZWN0aW9uOiAkZGlyZWN0aW9uO1xuICAgICAgICAgIGFuaW1hdGlvbi1kaXJlY3Rpb246ICRkaXJlY3Rpb247XG59XG5AbWl4aW4gYW5pbWF0aW9uLWZpbGwtbW9kZSgkZmlsbC1tb2RlKSB7XG4gIC13ZWJraXQtYW5pbWF0aW9uLWZpbGwtbW9kZTogJGZpbGwtbW9kZTtcbiAgICAgICAgICBhbmltYXRpb24tZmlsbC1tb2RlOiAkZmlsbC1tb2RlO1xufVxuXG4vLyBCYWNrZmFjZSB2aXNpYmlsaXR5XG4vLyBQcmV2ZW50IGJyb3dzZXJzIGZyb20gZmxpY2tlcmluZyB3aGVuIHVzaW5nIENTUyAzRCB0cmFuc2Zvcm1zLlxuLy8gRGVmYXVsdCB2YWx1ZSBpcyBgdmlzaWJsZWAsIGJ1dCBjYW4gYmUgY2hhbmdlZCB0byBgaGlkZGVuYFxuXG5AbWl4aW4gYmFja2ZhY2UtdmlzaWJpbGl0eSgkdmlzaWJpbGl0eSkge1xuICAtd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6ICR2aXNpYmlsaXR5O1xuICAgICAtbW96LWJhY2tmYWNlLXZpc2liaWxpdHk6ICR2aXNpYmlsaXR5O1xuICAgICAgICAgIGJhY2tmYWNlLXZpc2liaWxpdHk6ICR2aXNpYmlsaXR5O1xufVxuXG4vLyBEcm9wIHNoYWRvd3Ncbi8vXG4vLyBOb3RlOiBEZXByZWNhdGVkIGAuYm94LXNoYWRvdygpYCBhcyBvZiB2My4xLjAgc2luY2UgYWxsIG9mIEJvb3RzdHJhcCdzXG4vLyBzdXBwb3J0ZWQgYnJvd3NlcnMgdGhhdCBoYXZlIGJveCBzaGFkb3cgY2FwYWJpbGl0aWVzIG5vdyBzdXBwb3J0IGl0LlxuXG5AbWl4aW4gYm94LXNoYWRvdygkc2hhZG93Li4uKSB7XG4gIC13ZWJraXQtYm94LXNoYWRvdzogJHNoYWRvdzsgLy8gaU9TIDw0LjMgJiBBbmRyb2lkIDw0LjFcbiAgICAgICAgICBib3gtc2hhZG93OiAkc2hhZG93O1xufVxuXG4vLyBCb3ggc2l6aW5nXG5AbWl4aW4gYm94LXNpemluZygkYm94bW9kZWwpIHtcbiAgLXdlYmtpdC1ib3gtc2l6aW5nOiAkYm94bW9kZWw7XG4gICAgIC1tb3otYm94LXNpemluZzogJGJveG1vZGVsO1xuICAgICAgICAgIGJveC1zaXppbmc6ICRib3htb2RlbDtcbn1cblxuLy8gQ1NTMyBDb250ZW50IENvbHVtbnNcbkBtaXhpbiBjb250ZW50LWNvbHVtbnMoJGNvbHVtbi1jb3VudCwgJGNvbHVtbi1nYXA6ICRncmlkLWd1dHRlci13aWR0aCkge1xuICAtd2Via2l0LWNvbHVtbi1jb3VudDogJGNvbHVtbi1jb3VudDtcbiAgICAgLW1vei1jb2x1bW4tY291bnQ6ICRjb2x1bW4tY291bnQ7XG4gICAgICAgICAgY29sdW1uLWNvdW50OiAkY29sdW1uLWNvdW50O1xuICAtd2Via2l0LWNvbHVtbi1nYXA6ICRjb2x1bW4tZ2FwO1xuICAgICAtbW96LWNvbHVtbi1nYXA6ICRjb2x1bW4tZ2FwO1xuICAgICAgICAgIGNvbHVtbi1nYXA6ICRjb2x1bW4tZ2FwO1xufVxuXG4vLyBPcHRpb25hbCBoeXBoZW5hdGlvblxuQG1peGluIGh5cGhlbnMoJG1vZGU6IGF1dG8pIHtcbiAgd29yZC13cmFwOiBicmVhay13b3JkO1xuICAtd2Via2l0LWh5cGhlbnM6ICRtb2RlO1xuICAgICAtbW96LWh5cGhlbnM6ICRtb2RlO1xuICAgICAgLW1zLWh5cGhlbnM6ICRtb2RlOyAvLyBJRTEwK1xuICAgICAgIC1vLWh5cGhlbnM6ICRtb2RlO1xuICAgICAgICAgIGh5cGhlbnM6ICRtb2RlO1xufVxuXG4vLyBQbGFjZWhvbGRlciB0ZXh0XG5AbWl4aW4gcGxhY2Vob2xkZXIoJGNvbG9yOiAkaW5wdXQtY29sb3ItcGxhY2Vob2xkZXIpIHtcbiAgLy8gRmlyZWZveFxuICAmOjotbW96LXBsYWNlaG9sZGVyIHtcbiAgICBjb2xvcjogJGNvbG9yO1xuICAgIG9wYWNpdHk6IDE7IC8vIE92ZXJyaWRlIEZpcmVmb3gncyB1bnVzdWFsIGRlZmF1bHQgb3BhY2l0eTsgc2VlIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9wdWxsLzExNTI2XG4gIH1cbiAgJjotbXMtaW5wdXQtcGxhY2Vob2xkZXIgeyBjb2xvcjogJGNvbG9yOyB9IC8vIEludGVybmV0IEV4cGxvcmVyIDEwK1xuICAmOjotd2Via2l0LWlucHV0LXBsYWNlaG9sZGVyICB7IGNvbG9yOiAkY29sb3I7IH0gLy8gU2FmYXJpIGFuZCBDaHJvbWVcbn1cblxuLy8gVHJhbnNmb3JtYXRpb25zXG5AbWl4aW4gc2NhbGUoJHJhdGlvLi4uKSB7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgkcmF0aW8pO1xuICAgICAgLW1zLXRyYW5zZm9ybTogc2NhbGUoJHJhdGlvKTsgLy8gSUU5IG9ubHlcbiAgICAgICAtby10cmFuc2Zvcm06IHNjYWxlKCRyYXRpbyk7XG4gICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgkcmF0aW8pO1xufVxuXG5AbWl4aW4gc2NhbGVYKCRyYXRpbykge1xuICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGVYKCRyYXRpbyk7XG4gICAgICAtbXMtdHJhbnNmb3JtOiBzY2FsZVgoJHJhdGlvKTsgLy8gSUU5IG9ubHlcbiAgICAgICAtby10cmFuc2Zvcm06IHNjYWxlWCgkcmF0aW8pO1xuICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGVYKCRyYXRpbyk7XG59XG5AbWl4aW4gc2NhbGVZKCRyYXRpbykge1xuICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGVZKCRyYXRpbyk7XG4gICAgICAtbXMtdHJhbnNmb3JtOiBzY2FsZVkoJHJhdGlvKTsgLy8gSUU5IG9ubHlcbiAgICAgICAtby10cmFuc2Zvcm06IHNjYWxlWSgkcmF0aW8pO1xuICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGVZKCRyYXRpbyk7XG59XG5AbWl4aW4gc2tldygkeCwgJHkpIHtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHNrZXdYKCR4KSBza2V3WSgkeSk7XG4gICAgICAtbXMtdHJhbnNmb3JtOiBza2V3WCgkeCkgc2tld1koJHkpOyAvLyBTZWUgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy80ODg1OyBJRTkrXG4gICAgICAgLW8tdHJhbnNmb3JtOiBza2V3WCgkeCkgc2tld1koJHkpO1xuICAgICAgICAgIHRyYW5zZm9ybTogc2tld1goJHgpIHNrZXdZKCR5KTtcbn1cbkBtaXhpbiB0cmFuc2xhdGUoJHgsICR5KSB7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUoJHgsICR5KTtcbiAgICAgIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZSgkeCwgJHkpOyAvLyBJRTkgb25seVxuICAgICAgIC1vLXRyYW5zZm9ybTogdHJhbnNsYXRlKCR4LCAkeSk7XG4gICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoJHgsICR5KTtcbn1cbkBtaXhpbiB0cmFuc2xhdGUzZCgkeCwgJHksICR6KSB7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgkeCwgJHksICR6KTtcbiAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKCR4LCAkeSwgJHopO1xufVxuQG1peGluIHJvdGF0ZSgkZGVncmVlcykge1xuICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKCRkZWdyZWVzKTtcbiAgICAgIC1tcy10cmFuc2Zvcm06IHJvdGF0ZSgkZGVncmVlcyk7IC8vIElFOSBvbmx5XG4gICAgICAgLW8tdHJhbnNmb3JtOiByb3RhdGUoJGRlZ3JlZXMpO1xuICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKCRkZWdyZWVzKTtcbn1cbkBtaXhpbiByb3RhdGVYKCRkZWdyZWVzKSB7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGVYKCRkZWdyZWVzKTtcbiAgICAgIC1tcy10cmFuc2Zvcm06IHJvdGF0ZVgoJGRlZ3JlZXMpOyAvLyBJRTkgb25seVxuICAgICAgIC1vLXRyYW5zZm9ybTogcm90YXRlWCgkZGVncmVlcyk7XG4gICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGVYKCRkZWdyZWVzKTtcbn1cbkBtaXhpbiByb3RhdGVZKCRkZWdyZWVzKSB7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGVZKCRkZWdyZWVzKTtcbiAgICAgIC1tcy10cmFuc2Zvcm06IHJvdGF0ZVkoJGRlZ3JlZXMpOyAvLyBJRTkgb25seVxuICAgICAgIC1vLXRyYW5zZm9ybTogcm90YXRlWSgkZGVncmVlcyk7XG4gICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGVZKCRkZWdyZWVzKTtcbn1cbkBtaXhpbiBwZXJzcGVjdGl2ZSgkcGVyc3BlY3RpdmUpIHtcbiAgLXdlYmtpdC1wZXJzcGVjdGl2ZTogJHBlcnNwZWN0aXZlO1xuICAgICAtbW96LXBlcnNwZWN0aXZlOiAkcGVyc3BlY3RpdmU7XG4gICAgICAgICAgcGVyc3BlY3RpdmU6ICRwZXJzcGVjdGl2ZTtcbn1cbkBtaXhpbiBwZXJzcGVjdGl2ZS1vcmlnaW4oJHBlcnNwZWN0aXZlKSB7XG4gIC13ZWJraXQtcGVyc3BlY3RpdmUtb3JpZ2luOiAkcGVyc3BlY3RpdmU7XG4gICAgIC1tb3otcGVyc3BlY3RpdmUtb3JpZ2luOiAkcGVyc3BlY3RpdmU7XG4gICAgICAgICAgcGVyc3BlY3RpdmUtb3JpZ2luOiAkcGVyc3BlY3RpdmU7XG59XG5AbWl4aW4gdHJhbnNmb3JtLW9yaWdpbigkb3JpZ2luKSB7XG4gIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogJG9yaWdpbjtcbiAgICAgLW1vei10cmFuc2Zvcm0tb3JpZ2luOiAkb3JpZ2luO1xuICAgICAgLW1zLXRyYW5zZm9ybS1vcmlnaW46ICRvcmlnaW47IC8vIElFOSBvbmx5XG4gICAgICAgICAgdHJhbnNmb3JtLW9yaWdpbjogJG9yaWdpbjtcbn1cblxuXG4vLyBUcmFuc2l0aW9uc1xuXG5AbWl4aW4gdHJhbnNpdGlvbigkdHJhbnNpdGlvbi4uLikge1xuICAtd2Via2l0LXRyYW5zaXRpb246ICR0cmFuc2l0aW9uO1xuICAgICAgIC1vLXRyYW5zaXRpb246ICR0cmFuc2l0aW9uO1xuICAgICAgICAgIHRyYW5zaXRpb246ICR0cmFuc2l0aW9uO1xufVxuQG1peGluIHRyYW5zaXRpb24tcHJvcGVydHkoJHRyYW5zaXRpb24tcHJvcGVydHkuLi4pIHtcbiAgLXdlYmtpdC10cmFuc2l0aW9uLXByb3BlcnR5OiAkdHJhbnNpdGlvbi1wcm9wZXJ0eTtcbiAgICAgICAgICB0cmFuc2l0aW9uLXByb3BlcnR5OiAkdHJhbnNpdGlvbi1wcm9wZXJ0eTtcbn1cbkBtaXhpbiB0cmFuc2l0aW9uLWRlbGF5KCR0cmFuc2l0aW9uLWRlbGF5KSB7XG4gIC13ZWJraXQtdHJhbnNpdGlvbi1kZWxheTogJHRyYW5zaXRpb24tZGVsYXk7XG4gICAgICAgICAgdHJhbnNpdGlvbi1kZWxheTogJHRyYW5zaXRpb24tZGVsYXk7XG59XG5AbWl4aW4gdHJhbnNpdGlvbi1kdXJhdGlvbigkdHJhbnNpdGlvbi1kdXJhdGlvbi4uLikge1xuICAtd2Via2l0LXRyYW5zaXRpb24tZHVyYXRpb246ICR0cmFuc2l0aW9uLWR1cmF0aW9uO1xuICAgICAgICAgIHRyYW5zaXRpb24tZHVyYXRpb246ICR0cmFuc2l0aW9uLWR1cmF0aW9uO1xufVxuQG1peGluIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uKCR0aW1pbmctZnVuY3Rpb24pIHtcbiAgLXdlYmtpdC10cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogJHRpbWluZy1mdW5jdGlvbjtcbiAgICAgICAgICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogJHRpbWluZy1mdW5jdGlvbjtcbn1cbkBtaXhpbiB0cmFuc2l0aW9uLXRyYW5zZm9ybSgkdHJhbnNpdGlvbi4uLikge1xuICAtd2Via2l0LXRyYW5zaXRpb246IC13ZWJraXQtdHJhbnNmb3JtICR0cmFuc2l0aW9uO1xuICAgICAtbW96LXRyYW5zaXRpb246IC1tb3otdHJhbnNmb3JtICR0cmFuc2l0aW9uO1xuICAgICAgIC1vLXRyYW5zaXRpb246IC1vLXRyYW5zZm9ybSAkdHJhbnNpdGlvbjtcbiAgICAgICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gJHRyYW5zaXRpb247XG59XG5cblxuLy8gVXNlciBzZWxlY3Rcbi8vIEZvciBzZWxlY3RpbmcgdGV4dCBvbiB0aGUgcGFnZVxuXG5AbWl4aW4gdXNlci1zZWxlY3QoJHNlbGVjdCkge1xuICAtd2Via2l0LXVzZXItc2VsZWN0OiAkc2VsZWN0O1xuICAgICAtbW96LXVzZXItc2VsZWN0OiAkc2VsZWN0O1xuICAgICAgLW1zLXVzZXItc2VsZWN0OiAkc2VsZWN0OyAvLyBJRTEwK1xuICAgICAgICAgIHVzZXItc2VsZWN0OiAkc2VsZWN0O1xufVxuIiwiLy8gQWxlcnRzXG5cbkBtaXhpbiBhbGVydC12YXJpYW50KCRiYWNrZ3JvdW5kLCAkYm9yZGVyLCAkdGV4dC1jb2xvcikge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmFja2dyb3VuZDtcbiAgYm9yZGVyLWNvbG9yOiAkYm9yZGVyO1xuICBjb2xvcjogJHRleHQtY29sb3I7XG5cbiAgaHIge1xuICAgIGJvcmRlci10b3AtY29sb3I6IGRhcmtlbigkYm9yZGVyLCA1JSk7XG4gIH1cbiAgLmFsZXJ0LWxpbmsge1xuICAgIGNvbG9yOiBkYXJrZW4oJHRleHQtY29sb3IsIDEwJSk7XG4gIH1cbn1cbiIsIi8vIEJ1dHRvbiB2YXJpYW50c1xuLy9cbi8vIEVhc2lseSBwdW1wIG91dCBkZWZhdWx0IHN0eWxlcywgYXMgd2VsbCBhcyA6aG92ZXIsIDpmb2N1cywgOmFjdGl2ZSxcbi8vIGFuZCBkaXNhYmxlZCBvcHRpb25zIGZvciBhbGwgYnV0dG9uc1xuXG5AbWl4aW4gYnV0dG9uLXZhcmlhbnQoJGNvbG9yLCAkYmFja2dyb3VuZCwgJGJvcmRlcikge1xuICBjb2xvcjogJGNvbG9yO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmFja2dyb3VuZDtcbiAgYm9yZGVyLWNvbG9yOiAkYm9yZGVyO1xuXG4gICY6Zm9jdXMsXG4gICYuZm9jdXMge1xuICAgIGNvbG9yOiAkY29sb3I7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogZGFya2VuKCRiYWNrZ3JvdW5kLCAxMCUpO1xuICAgICAgICBib3JkZXItY29sb3I6IGRhcmtlbigkYm9yZGVyLCAyNSUpO1xuICB9XG4gICY6aG92ZXIge1xuICAgIGNvbG9yOiAkY29sb3I7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogZGFya2VuKCRiYWNrZ3JvdW5kLCAxMCUpO1xuICAgICAgICBib3JkZXItY29sb3I6IGRhcmtlbigkYm9yZGVyLCAxMiUpO1xuICB9XG4gICY6YWN0aXZlLFxuICAmLmFjdGl2ZSxcbiAgLm9wZW4gPiAmLmRyb3Bkb3duLXRvZ2dsZSB7XG4gICAgY29sb3I6ICRjb2xvcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBkYXJrZW4oJGJhY2tncm91bmQsIDEwJSk7XG4gICAgICAgIGJvcmRlci1jb2xvcjogZGFya2VuKCRib3JkZXIsIDEyJSk7XG5cbiAgICAmOmhvdmVyLFxuICAgICY6Zm9jdXMsXG4gICAgJi5mb2N1cyB7XG4gICAgICBjb2xvcjogJGNvbG9yO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogZGFya2VuKCRiYWNrZ3JvdW5kLCAxNyUpO1xuICAgICAgICAgIGJvcmRlci1jb2xvcjogZGFya2VuKCRib3JkZXIsIDI1JSk7XG4gICAgfVxuICB9XG4gICY6YWN0aXZlLFxuICAmLmFjdGl2ZSxcbiAgLm9wZW4gPiAmLmRyb3Bkb3duLXRvZ2dsZSB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTtcbiAgfVxuICAmLmRpc2FibGVkLFxuICAmW2Rpc2FibGVkXSxcbiAgZmllbGRzZXRbZGlzYWJsZWRdICYge1xuICAgICY6aG92ZXIsXG4gICAgJjpmb2N1cyxcbiAgICAmLmZvY3VzIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRiYWNrZ3JvdW5kO1xuICAgICAgICAgIGJvcmRlci1jb2xvcjogJGJvcmRlcjtcbiAgICB9XG4gIH1cblxuICAuYmFkZ2Uge1xuICAgIGNvbG9yOiAkYmFja2dyb3VuZDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3I7XG4gIH1cbn1cblxuLy8gQnV0dG9uIHNpemVzXG5AbWl4aW4gYnV0dG9uLXNpemUoJHBhZGRpbmctdmVydGljYWwsICRwYWRkaW5nLWhvcml6b250YWwsICRmb250LXNpemUsICRsaW5lLWhlaWdodCwgJGJvcmRlci1yYWRpdXMpIHtcbiAgcGFkZGluZzogJHBhZGRpbmctdmVydGljYWwgJHBhZGRpbmctaG9yaXpvbnRhbDtcbiAgZm9udC1zaXplOiAkZm9udC1zaXplO1xuICBsaW5lLWhlaWdodDogJGxpbmUtaGVpZ2h0O1xuICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cztcbn1cbiIsIi8vIFBhbmVsc1xuXG5AbWl4aW4gcGFuZWwtdmFyaWFudCgkYm9yZGVyLCAkaGVhZGluZy10ZXh0LWNvbG9yLCAkaGVhZGluZy1iZy1jb2xvciwgJGhlYWRpbmctYm9yZGVyKSB7XG4gIGJvcmRlci1jb2xvcjogJGJvcmRlcjtcblxuICAmID4gLnBhbmVsLWhlYWRpbmcge1xuICAgIGNvbG9yOiAkaGVhZGluZy10ZXh0LWNvbG9yO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRoZWFkaW5nLWJnLWNvbG9yO1xuICAgIGJvcmRlci1jb2xvcjogJGhlYWRpbmctYm9yZGVyO1xuXG4gICAgKyAucGFuZWwtY29sbGFwc2UgPiAucGFuZWwtYm9keSB7XG4gICAgICBib3JkZXItdG9wLWNvbG9yOiAkYm9yZGVyO1xuICAgIH1cbiAgICAuYmFkZ2Uge1xuICAgICAgY29sb3I6ICRoZWFkaW5nLWJnLWNvbG9yO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGhlYWRpbmctdGV4dC1jb2xvcjtcbiAgICB9XG4gIH1cbiAgJiA+IC5wYW5lbC1mb290ZXIge1xuICAgICsgLnBhbmVsLWNvbGxhcHNlID4gLnBhbmVsLWJvZHkge1xuICAgICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogJGJvcmRlcjtcbiAgICB9XG4gIH1cbn1cbiIsIi8vIFBhZ2luYXRpb25cblxuQG1peGluIHBhZ2luYXRpb24tc2l6ZSgkcGFkZGluZy12ZXJ0aWNhbCwgJHBhZGRpbmctaG9yaXpvbnRhbCwgJGZvbnQtc2l6ZSwgJGxpbmUtaGVpZ2h0LCAkYm9yZGVyLXJhZGl1cykge1xuICA+IGxpIHtcbiAgICA+IGEsXG4gICAgPiBzcGFuIHtcbiAgICAgIHBhZGRpbmc6ICRwYWRkaW5nLXZlcnRpY2FsICRwYWRkaW5nLWhvcml6b250YWw7XG4gICAgICBmb250LXNpemU6ICRmb250LXNpemU7XG4gICAgICBsaW5lLWhlaWdodDogJGxpbmUtaGVpZ2h0O1xuICAgIH1cbiAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgID4gYSxcbiAgICAgID4gc3BhbiB7XG4gICAgICAgIEBpbmNsdWRlIGJvcmRlci1sZWZ0LXJhZGl1cygkYm9yZGVyLXJhZGl1cyk7XG4gICAgICB9XG4gICAgfVxuICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICA+IGEsXG4gICAgICA+IHNwYW4ge1xuICAgICAgICBAaW5jbHVkZSBib3JkZXItcmlnaHQtcmFkaXVzKCRib3JkZXItcmFkaXVzKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8vIExpc3QgR3JvdXBzXG5cbkBtaXhpbiBsaXN0LWdyb3VwLWl0ZW0tdmFyaWFudCgkc3RhdGUsICRiYWNrZ3JvdW5kLCAkY29sb3IpIHtcbiAgLmxpc3QtZ3JvdXAtaXRlbS0jeyRzdGF0ZX0ge1xuICAgIGNvbG9yOiAkY29sb3I7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGJhY2tncm91bmQ7XG5cbiAgICAvLyBbY29udmVydGVyXSBleHRyYWN0ZWQgYSYsIGJ1dHRvbiYgdG8gYS5saXN0LWdyb3VwLWl0ZW0tI3skc3RhdGV9LCBidXR0b24ubGlzdC1ncm91cC1pdGVtLSN7JHN0YXRlfVxuICB9XG5cbiAgYS5saXN0LWdyb3VwLWl0ZW0tI3skc3RhdGV9LFxuICBidXR0b24ubGlzdC1ncm91cC1pdGVtLSN7JHN0YXRlfSB7XG4gICAgY29sb3I6ICRjb2xvcjtcblxuICAgIC5saXN0LWdyb3VwLWl0ZW0taGVhZGluZyB7XG4gICAgICBjb2xvcjogaW5oZXJpdDtcbiAgICB9XG5cbiAgICAmOmhvdmVyLFxuICAgICY6Zm9jdXMge1xuICAgICAgY29sb3I6ICRjb2xvcjtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IGRhcmtlbigkYmFja2dyb3VuZCwgNSUpO1xuICAgIH1cbiAgICAmLmFjdGl2ZSxcbiAgICAmLmFjdGl2ZTpob3ZlcixcbiAgICAmLmFjdGl2ZTpmb2N1cyB7XG4gICAgICBjb2xvcjogI2ZmZjtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvcjtcbiAgICAgIGJvcmRlci1jb2xvcjogJGNvbG9yO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gSG9yaXpvbnRhbCBkaXZpZGVyc1xuLy9cbi8vIERpdmlkZXJzIChiYXNpY2FsbHkgYW4gaHIpIHdpdGhpbiBkcm9wZG93bnMgYW5kIG5hdiBsaXN0c1xuXG5AbWl4aW4gbmF2LWRpdmlkZXIoJGNvbG9yOiAjZTVlNWU1KSB7XG4gIGhlaWdodDogMXB4O1xuICBtYXJnaW46ICgoJGxpbmUtaGVpZ2h0LWNvbXB1dGVkIC8gMikgLSAxKSAwO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3I7XG59XG4iLCIvLyBGb3JtIHZhbGlkYXRpb24gc3RhdGVzXG4vL1xuLy8gVXNlZCBpbiBmb3Jtcy5sZXNzIHRvIGdlbmVyYXRlIHRoZSBmb3JtIHZhbGlkYXRpb24gQ1NTIGZvciB3YXJuaW5ncywgZXJyb3JzLFxuLy8gYW5kIHN1Y2Nlc3Nlcy5cblxuQG1peGluIGZvcm0tY29udHJvbC12YWxpZGF0aW9uKCR0ZXh0LWNvbG9yOiAjNTU1LCAkYm9yZGVyLWNvbG9yOiAjY2NjLCAkYmFja2dyb3VuZC1jb2xvcjogI2Y1ZjVmNSkge1xuICAvLyBDb2xvciB0aGUgbGFiZWwgYW5kIGhlbHAgdGV4dFxuICAuaGVscC1ibG9jayxcbiAgLmNvbnRyb2wtbGFiZWwsXG4gIC5yYWRpbyxcbiAgLmNoZWNrYm94LFxuICAucmFkaW8taW5saW5lLFxuICAuY2hlY2tib3gtaW5saW5lLFxuICAmLnJhZGlvIGxhYmVsLFxuICAmLmNoZWNrYm94IGxhYmVsLFxuICAmLnJhZGlvLWlubGluZSBsYWJlbCxcbiAgJi5jaGVja2JveC1pbmxpbmUgbGFiZWwgIHtcbiAgICBjb2xvcjogJHRleHQtY29sb3I7XG4gIH1cbiAgLy8gU2V0IHRoZSBib3JkZXIgYW5kIGJveCBzaGFkb3cgb24gc3BlY2lmaWMgaW5wdXRzIHRvIG1hdGNoXG4gIC5mb3JtLWNvbnRyb2wge1xuICAgIGJvcmRlci1jb2xvcjogJGJvcmRlci1jb2xvcjtcbiAgICBAaW5jbHVkZSBib3gtc2hhZG93KGluc2V0IDAgMXB4IDFweCByZ2JhKDAsMCwwLC4wNzUpKTsgLy8gUmVkZWNsYXJlIHNvIHRyYW5zaXRpb25zIHdvcmtcbiAgICAmOmZvY3VzIHtcbiAgICAgIGJvcmRlci1jb2xvcjogZGFya2VuKCRib3JkZXItY29sb3IsIDEwJSk7XG4gICAgICAkc2hhZG93OiBpbnNldCAwIDFweCAxcHggcmdiYSgwLDAsMCwuMDc1KSwgMCAwIDZweCBsaWdodGVuKCRib3JkZXItY29sb3IsIDIwJSk7XG4gICAgICBAaW5jbHVkZSBib3gtc2hhZG93KCRzaGFkb3cpO1xuICAgIH1cbiAgfVxuICAvLyBTZXQgdmFsaWRhdGlvbiBzdGF0ZXMgYWxzbyBmb3IgYWRkb25zXG4gIC5pbnB1dC1ncm91cC1hZGRvbiB7XG4gICAgY29sb3I6ICR0ZXh0LWNvbG9yO1xuICAgIGJvcmRlci1jb2xvcjogJGJvcmRlci1jb2xvcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmFja2dyb3VuZC1jb2xvcjtcbiAgfVxuICAvLyBPcHRpb25hbCBmZWVkYmFjayBpY29uXG4gIC5mb3JtLWNvbnRyb2wtZmVlZGJhY2sge1xuICAgIGNvbG9yOiAkdGV4dC1jb2xvcjtcbiAgfVxufVxuXG5cbi8vIEZvcm0gY29udHJvbCBmb2N1cyBzdGF0ZVxuLy9cbi8vIEdlbmVyYXRlIGEgY3VzdG9taXplZCBmb2N1cyBzdGF0ZSBhbmQgZm9yIGFueSBpbnB1dCB3aXRoIHRoZSBzcGVjaWZpZWQgY29sb3IsXG4vLyB3aGljaCBkZWZhdWx0cyB0byB0aGUgYCRpbnB1dC1ib3JkZXItZm9jdXNgIHZhcmlhYmxlLlxuLy9cbi8vIFdlIGhpZ2hseSBlbmNvdXJhZ2UgeW91IHRvIG5vdCBjdXN0b21pemUgdGhlIGRlZmF1bHQgdmFsdWUsIGJ1dCBpbnN0ZWFkIHVzZVxuLy8gdGhpcyB0byB0d2VhayBjb2xvcnMgb24gYW4gYXMtbmVlZGVkIGJhc2lzLiBUaGlzIGFlc3RoZXRpYyBjaGFuZ2UgaXMgYmFzZWQgb25cbi8vIFdlYktpdCdzIGRlZmF1bHQgc3R5bGVzLCBidXQgYXBwbGljYWJsZSB0byBhIHdpZGVyIHJhbmdlIG9mIGJyb3dzZXJzLiBJdHNcbi8vIHVzYWJpbGl0eSBhbmQgYWNjZXNzaWJpbGl0eSBzaG91bGQgYmUgdGFrZW4gaW50byBhY2NvdW50IHdpdGggYW55IGNoYW5nZS5cbi8vXG4vLyBFeGFtcGxlIHVzYWdlOiBjaGFuZ2UgdGhlIGRlZmF1bHQgYmx1ZSBib3JkZXIgYW5kIHNoYWRvdyB0byB3aGl0ZSBmb3IgYmV0dGVyXG4vLyBjb250cmFzdCBhZ2FpbnN0IGEgZGFyayBncmF5IGJhY2tncm91bmQuXG5AbWl4aW4gZm9ybS1jb250cm9sLWZvY3VzKCRjb2xvcjogJGlucHV0LWJvcmRlci1mb2N1cykge1xuICAkY29sb3ItcmdiYTogcmdiYShyZWQoJGNvbG9yKSwgZ3JlZW4oJGNvbG9yKSwgYmx1ZSgkY29sb3IpLCAuNik7XG4gICY6Zm9jdXMge1xuICAgIGJvcmRlci1jb2xvcjogJGNvbG9yO1xuICAgIG91dGxpbmU6IDA7XG4gICAgQGluY2x1ZGUgYm94LXNoYWRvdyhpbnNldCAwIDFweCAxcHggcmdiYSgwLDAsMCwuMDc1KSwgMCAwIDhweCAkY29sb3ItcmdiYSk7XG4gIH1cbn1cblxuLy8gRm9ybSBjb250cm9sIHNpemluZ1xuLy9cbi8vIFJlbGF0aXZlIHRleHQgc2l6ZSwgcGFkZGluZywgYW5kIGJvcmRlci1yYWRpaSBjaGFuZ2VzIGZvciBmb3JtIGNvbnRyb2xzLiBGb3Jcbi8vIGhvcml6b250YWwgc2l6aW5nLCB3cmFwIGNvbnRyb2xzIGluIHRoZSBwcmVkZWZpbmVkIGdyaWQgY2xhc3Nlcy4gYDxzZWxlY3Q+YFxuLy8gZWxlbWVudCBnZXRzIHNwZWNpYWwgbG92ZSBiZWNhdXNlIGl0J3Mgc3BlY2lhbCwgYW5kIHRoYXQncyBhIGZhY3QhXG4vLyBbY29udmVydGVyXSAkcGFyZW50IGhhY2tcbkBtaXhpbiBpbnB1dC1zaXplKCRwYXJlbnQsICRpbnB1dC1oZWlnaHQsICRwYWRkaW5nLXZlcnRpY2FsLCAkcGFkZGluZy1ob3Jpem9udGFsLCAkZm9udC1zaXplLCAkbGluZS1oZWlnaHQsICRib3JkZXItcmFkaXVzKSB7XG4gICN7JHBhcmVudH0ge1xuICAgIGhlaWdodDogJGlucHV0LWhlaWdodDtcbiAgICBwYWRkaW5nOiAkcGFkZGluZy12ZXJ0aWNhbCAkcGFkZGluZy1ob3Jpem9udGFsO1xuICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZTtcbiAgICBsaW5lLWhlaWdodDogJGxpbmUtaGVpZ2h0O1xuICAgIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzO1xuICB9XG5cbiAgc2VsZWN0I3skcGFyZW50fSB7XG4gICAgaGVpZ2h0OiAkaW5wdXQtaGVpZ2h0O1xuICAgIGxpbmUtaGVpZ2h0OiAkaW5wdXQtaGVpZ2h0O1xuICB9XG5cbiAgdGV4dGFyZWEjeyRwYXJlbnR9LFxuICBzZWxlY3RbbXVsdGlwbGVdI3skcGFyZW50fSB7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICB9XG59XG4iLCIvLyBQcm9ncmVzcyBiYXJzXG5cbkBtaXhpbiBwcm9ncmVzcy1iYXItdmFyaWFudCgkY29sb3IpIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yO1xuXG4gIC8vIERlcHJlY2F0ZWQgcGFyZW50IGNsYXNzIHJlcXVpcmVtZW50IGFzIG9mIHYzLjIuMFxuICAucHJvZ3Jlc3Mtc3RyaXBlZCAmIHtcbiAgICBAaW5jbHVkZSBncmFkaWVudC1zdHJpcGVkO1xuICB9XG59XG4iLCIvLyBUYWJsZXNcblxuQG1peGluIHRhYmxlLXJvdy12YXJpYW50KCRzdGF0ZSwgJGJhY2tncm91bmQpIHtcbiAgLy8gRXhhY3Qgc2VsZWN0b3JzIGJlbG93IHJlcXVpcmVkIHRvIG92ZXJyaWRlIGAudGFibGUtc3RyaXBlZGAgYW5kIHByZXZlbnRcbiAgLy8gaW5oZXJpdGFuY2UgdG8gbmVzdGVkIHRhYmxlcy5cbiAgLnRhYmxlID4gdGhlYWQgPiB0cixcbiAgLnRhYmxlID4gdGJvZHkgPiB0cixcbiAgLnRhYmxlID4gdGZvb3QgPiB0ciB7XG4gICAgPiB0ZC4jeyRzdGF0ZX0sXG4gICAgPiB0aC4jeyRzdGF0ZX0sXG4gICAgJi4jeyRzdGF0ZX0gPiB0ZCxcbiAgICAmLiN7JHN0YXRlfSA+IHRoIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRiYWNrZ3JvdW5kO1xuICAgIH1cbiAgfVxuXG4gIC8vIEhvdmVyIHN0YXRlcyBmb3IgYC50YWJsZS1ob3ZlcmBcbiAgLy8gTm90ZTogdGhpcyBpcyBub3QgYXZhaWxhYmxlIGZvciBjZWxscyBvciByb3dzIHdpdGhpbiBgdGhlYWRgIG9yIGB0Zm9vdGAuXG4gIC50YWJsZS1ob3ZlciA+IHRib2R5ID4gdHIge1xuICAgID4gdGQuI3skc3RhdGV9OmhvdmVyLFxuICAgID4gdGguI3skc3RhdGV9OmhvdmVyLFxuICAgICYuI3skc3RhdGV9OmhvdmVyID4gdGQsXG4gICAgJjpob3ZlciA+IC4jeyRzdGF0ZX0sXG4gICAgJi4jeyRzdGF0ZX06aG92ZXIgPiB0aCB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBkYXJrZW4oJGJhY2tncm91bmQsIDUlKTtcbiAgICB9XG4gIH1cbn1cbiIsIi8vIENvbnRleHR1YWwgYmFja2dyb3VuZHNcblxuLy8gW2NvbnZlcnRlcl0gJHBhcmVudCBoYWNrXG5AbWl4aW4gYmctdmFyaWFudCgkcGFyZW50LCAkY29sb3IpIHtcbiAgI3skcGFyZW50fSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yO1xuICB9XG4gIGEjeyRwYXJlbnR9OmhvdmVyLFxuICBhI3skcGFyZW50fTpmb2N1cyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogZGFya2VuKCRjb2xvciwgMTAlKTtcbiAgfVxufVxuIiwiLy8gU2luZ2xlIHNpZGUgYm9yZGVyLXJhZGl1c1xuXG5AbWl4aW4gYm9yZGVyLXRvcC1yYWRpdXMoJHJhZGl1cykge1xuICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogJHJhZGl1cztcbiAgIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6ICRyYWRpdXM7XG59XG5AbWl4aW4gYm9yZGVyLXJpZ2h0LXJhZGl1cygkcmFkaXVzKSB7XG4gIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAkcmFkaXVzO1xuICAgICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogJHJhZGl1cztcbn1cbkBtaXhpbiBib3JkZXItYm90dG9tLXJhZGl1cygkcmFkaXVzKSB7XG4gIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAkcmFkaXVzO1xuICAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogJHJhZGl1cztcbn1cbkBtaXhpbiBib3JkZXItbGVmdC1yYWRpdXMoJHJhZGl1cykge1xuICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAkcmFkaXVzO1xuICAgICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAkcmFkaXVzO1xufVxuIiwiLy8gR3JhZGllbnRzXG5cblxuXG4vLyBIb3Jpem9udGFsIGdyYWRpZW50LCBmcm9tIGxlZnQgdG8gcmlnaHRcbi8vXG4vLyBDcmVhdGVzIHR3byBjb2xvciBzdG9wcywgc3RhcnQgYW5kIGVuZCwgYnkgc3BlY2lmeWluZyBhIGNvbG9yIGFuZCBwb3NpdGlvbiBmb3IgZWFjaCBjb2xvciBzdG9wLlxuLy8gQ29sb3Igc3RvcHMgYXJlIG5vdCBhdmFpbGFibGUgaW4gSUU5IGFuZCBiZWxvdy5cbkBtaXhpbiBncmFkaWVudC1ob3Jpem9udGFsKCRzdGFydC1jb2xvcjogIzU1NSwgJGVuZC1jb2xvcjogIzMzMywgJHN0YXJ0LXBlcmNlbnQ6IDAlLCAkZW5kLXBlcmNlbnQ6IDEwMCUpIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogLXdlYmtpdC1saW5lYXItZ3JhZGllbnQobGVmdCwgJHN0YXJ0LWNvbG9yICRzdGFydC1wZXJjZW50LCAkZW5kLWNvbG9yICRlbmQtcGVyY2VudCk7IC8vIFNhZmFyaSA1LjEtNiwgQ2hyb21lIDEwK1xuICBiYWNrZ3JvdW5kLWltYWdlOiAtby1saW5lYXItZ3JhZGllbnQobGVmdCwgJHN0YXJ0LWNvbG9yICRzdGFydC1wZXJjZW50LCAkZW5kLWNvbG9yICRlbmQtcGVyY2VudCk7IC8vIE9wZXJhIDEyXG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCh0byByaWdodCwgJHN0YXJ0LWNvbG9yICRzdGFydC1wZXJjZW50LCAkZW5kLWNvbG9yICRlbmQtcGVyY2VudCk7IC8vIFN0YW5kYXJkLCBJRTEwLCBGaXJlZm94IDE2KywgT3BlcmEgMTIuMTArLCBTYWZhcmkgNyssIENocm9tZSAyNitcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IHJlcGVhdC14O1xuICBmaWx0ZXI6IHByb2dpZDpEWEltYWdlVHJhbnNmb3JtLk1pY3Jvc29mdC5ncmFkaWVudChzdGFydENvbG9yc3RyPScje2llLWhleC1zdHIoJHN0YXJ0LWNvbG9yKX0nLCBlbmRDb2xvcnN0cj0nI3tpZS1oZXgtc3RyKCRlbmQtY29sb3IpfScsIEdyYWRpZW50VHlwZT0xKTsgLy8gSUU5IGFuZCBkb3duXG59XG5cbi8vIFZlcnRpY2FsIGdyYWRpZW50LCBmcm9tIHRvcCB0byBib3R0b21cbi8vXG4vLyBDcmVhdGVzIHR3byBjb2xvciBzdG9wcywgc3RhcnQgYW5kIGVuZCwgYnkgc3BlY2lmeWluZyBhIGNvbG9yIGFuZCBwb3NpdGlvbiBmb3IgZWFjaCBjb2xvciBzdG9wLlxuLy8gQ29sb3Igc3RvcHMgYXJlIG5vdCBhdmFpbGFibGUgaW4gSUU5IGFuZCBiZWxvdy5cbkBtaXhpbiBncmFkaWVudC12ZXJ0aWNhbCgkc3RhcnQtY29sb3I6ICM1NTUsICRlbmQtY29sb3I6ICMzMzMsICRzdGFydC1wZXJjZW50OiAwJSwgJGVuZC1wZXJjZW50OiAxMDAlKSB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IC13ZWJraXQtbGluZWFyLWdyYWRpZW50KHRvcCwgJHN0YXJ0LWNvbG9yICRzdGFydC1wZXJjZW50LCAkZW5kLWNvbG9yICRlbmQtcGVyY2VudCk7ICAvLyBTYWZhcmkgNS4xLTYsIENocm9tZSAxMCtcbiAgYmFja2dyb3VuZC1pbWFnZTogLW8tbGluZWFyLWdyYWRpZW50KHRvcCwgJHN0YXJ0LWNvbG9yICRzdGFydC1wZXJjZW50LCAkZW5kLWNvbG9yICRlbmQtcGVyY2VudCk7ICAvLyBPcGVyYSAxMlxuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodG8gYm90dG9tLCAkc3RhcnQtY29sb3IgJHN0YXJ0LXBlcmNlbnQsICRlbmQtY29sb3IgJGVuZC1wZXJjZW50KTsgLy8gU3RhbmRhcmQsIElFMTAsIEZpcmVmb3ggMTYrLCBPcGVyYSAxMi4xMCssIFNhZmFyaSA3KywgQ2hyb21lIDI2K1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogcmVwZWF0LXg7XG4gIGZpbHRlcjogcHJvZ2lkOkRYSW1hZ2VUcmFuc2Zvcm0uTWljcm9zb2Z0LmdyYWRpZW50KHN0YXJ0Q29sb3JzdHI9JyN7aWUtaGV4LXN0cigkc3RhcnQtY29sb3IpfScsIGVuZENvbG9yc3RyPScje2llLWhleC1zdHIoJGVuZC1jb2xvcil9JywgR3JhZGllbnRUeXBlPTApOyAvLyBJRTkgYW5kIGRvd25cbn1cblxuQG1peGluIGdyYWRpZW50LWRpcmVjdGlvbmFsKCRzdGFydC1jb2xvcjogIzU1NSwgJGVuZC1jb2xvcjogIzMzMywgJGRlZzogNDVkZWcpIHtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IHJlcGVhdC14O1xuICBiYWNrZ3JvdW5kLWltYWdlOiAtd2Via2l0LWxpbmVhci1ncmFkaWVudCgkZGVnLCAkc3RhcnQtY29sb3IsICRlbmQtY29sb3IpOyAvLyBTYWZhcmkgNS4xLTYsIENocm9tZSAxMCtcbiAgYmFja2dyb3VuZC1pbWFnZTogLW8tbGluZWFyLWdyYWRpZW50KCRkZWcsICRzdGFydC1jb2xvciwgJGVuZC1jb2xvcik7IC8vIE9wZXJhIDEyXG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCgkZGVnLCAkc3RhcnQtY29sb3IsICRlbmQtY29sb3IpOyAvLyBTdGFuZGFyZCwgSUUxMCwgRmlyZWZveCAxNissIE9wZXJhIDEyLjEwKywgU2FmYXJpIDcrLCBDaHJvbWUgMjYrXG59XG5AbWl4aW4gZ3JhZGllbnQtaG9yaXpvbnRhbC10aHJlZS1jb2xvcnMoJHN0YXJ0LWNvbG9yOiAjMDBiM2VlLCAkbWlkLWNvbG9yOiAjN2E0M2I2LCAkY29sb3Itc3RvcDogNTAlLCAkZW5kLWNvbG9yOiAjYzMzMjVmKSB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IC13ZWJraXQtbGluZWFyLWdyYWRpZW50KGxlZnQsICRzdGFydC1jb2xvciwgJG1pZC1jb2xvciAkY29sb3Itc3RvcCwgJGVuZC1jb2xvcik7XG4gIGJhY2tncm91bmQtaW1hZ2U6IC1vLWxpbmVhci1ncmFkaWVudChsZWZ0LCAkc3RhcnQtY29sb3IsICRtaWQtY29sb3IgJGNvbG9yLXN0b3AsICRlbmQtY29sb3IpO1xuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsICRzdGFydC1jb2xvciwgJG1pZC1jb2xvciAkY29sb3Itc3RvcCwgJGVuZC1jb2xvcik7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIGZpbHRlcjogcHJvZ2lkOkRYSW1hZ2VUcmFuc2Zvcm0uTWljcm9zb2Z0LmdyYWRpZW50KHN0YXJ0Q29sb3JzdHI9JyN7aWUtaGV4LXN0cigkc3RhcnQtY29sb3IpfScsIGVuZENvbG9yc3RyPScje2llLWhleC1zdHIoJGVuZC1jb2xvcil9JywgR3JhZGllbnRUeXBlPTEpOyAvLyBJRTkgYW5kIGRvd24sIGdldHMgbm8gY29sb3Itc3RvcCBhdCBhbGwgZm9yIHByb3BlciBmYWxsYmFja1xufVxuQG1peGluIGdyYWRpZW50LXZlcnRpY2FsLXRocmVlLWNvbG9ycygkc3RhcnQtY29sb3I6ICMwMGIzZWUsICRtaWQtY29sb3I6ICM3YTQzYjYsICRjb2xvci1zdG9wOiA1MCUsICRlbmQtY29sb3I6ICNjMzMyNWYpIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogLXdlYmtpdC1saW5lYXItZ3JhZGllbnQoJHN0YXJ0LWNvbG9yLCAkbWlkLWNvbG9yICRjb2xvci1zdG9wLCAkZW5kLWNvbG9yKTtcbiAgYmFja2dyb3VuZC1pbWFnZTogLW8tbGluZWFyLWdyYWRpZW50KCRzdGFydC1jb2xvciwgJG1pZC1jb2xvciAkY29sb3Itc3RvcCwgJGVuZC1jb2xvcik7XG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCgkc3RhcnQtY29sb3IsICRtaWQtY29sb3IgJGNvbG9yLXN0b3AsICRlbmQtY29sb3IpO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBmaWx0ZXI6IHByb2dpZDpEWEltYWdlVHJhbnNmb3JtLk1pY3Jvc29mdC5ncmFkaWVudChzdGFydENvbG9yc3RyPScje2llLWhleC1zdHIoJHN0YXJ0LWNvbG9yKX0nLCBlbmRDb2xvcnN0cj0nI3tpZS1oZXgtc3RyKCRlbmQtY29sb3IpfScsIEdyYWRpZW50VHlwZT0wKTsgLy8gSUU5IGFuZCBkb3duLCBnZXRzIG5vIGNvbG9yLXN0b3AgYXQgYWxsIGZvciBwcm9wZXIgZmFsbGJhY2tcbn1cbkBtaXhpbiBncmFkaWVudC1yYWRpYWwoJGlubmVyLWNvbG9yOiAjNTU1LCAkb3V0ZXItY29sb3I6ICMzMzMpIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogLXdlYmtpdC1yYWRpYWwtZ3JhZGllbnQoY2lyY2xlLCAkaW5uZXItY29sb3IsICRvdXRlci1jb2xvcik7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHJhZGlhbC1ncmFkaWVudChjaXJjbGUsICRpbm5lci1jb2xvciwgJG91dGVyLWNvbG9yKTtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbn1cbkBtaXhpbiBncmFkaWVudC1zdHJpcGVkKCRjb2xvcjogcmdiYSgyNTUsMjU1LDI1NSwuMTUpLCAkYW5nbGU6IDQ1ZGVnKSB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IC13ZWJraXQtbGluZWFyLWdyYWRpZW50KCRhbmdsZSwgJGNvbG9yIDI1JSwgdHJhbnNwYXJlbnQgMjUlLCB0cmFuc3BhcmVudCA1MCUsICRjb2xvciA1MCUsICRjb2xvciA3NSUsIHRyYW5zcGFyZW50IDc1JSwgdHJhbnNwYXJlbnQpO1xuICBiYWNrZ3JvdW5kLWltYWdlOiAtby1saW5lYXItZ3JhZGllbnQoJGFuZ2xlLCAkY29sb3IgMjUlLCB0cmFuc3BhcmVudCAyNSUsIHRyYW5zcGFyZW50IDUwJSwgJGNvbG9yIDUwJSwgJGNvbG9yIDc1JSwgdHJhbnNwYXJlbnQgNzUlLCB0cmFuc3BhcmVudCk7XG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCgkYW5nbGUsICRjb2xvciAyNSUsIHRyYW5zcGFyZW50IDI1JSwgdHJhbnNwYXJlbnQgNTAlLCAkY29sb3IgNTAlLCAkY29sb3IgNzUlLCB0cmFuc3BhcmVudCA3NSUsIHRyYW5zcGFyZW50KTtcbn1cbiIsIi8vIENsZWFyZml4XG4vL1xuLy8gRm9yIG1vZGVybiBicm93c2Vyc1xuLy8gMS4gVGhlIHNwYWNlIGNvbnRlbnQgaXMgb25lIHdheSB0byBhdm9pZCBhbiBPcGVyYSBidWcgd2hlbiB0aGVcbi8vICAgIGNvbnRlbnRlZGl0YWJsZSBhdHRyaWJ1dGUgaXMgaW5jbHVkZWQgYW55d2hlcmUgZWxzZSBpbiB0aGUgZG9jdW1lbnQuXG4vLyAgICBPdGhlcndpc2UgaXQgY2F1c2VzIHNwYWNlIHRvIGFwcGVhciBhdCB0aGUgdG9wIGFuZCBib3R0b20gb2YgZWxlbWVudHNcbi8vICAgIHRoYXQgYXJlIGNsZWFyZml4ZWQuXG4vLyAyLiBUaGUgdXNlIG9mIGB0YWJsZWAgcmF0aGVyIHRoYW4gYGJsb2NrYCBpcyBvbmx5IG5lY2Vzc2FyeSBpZiB1c2luZ1xuLy8gICAgYDpiZWZvcmVgIHRvIGNvbnRhaW4gdGhlIHRvcC1tYXJnaW5zIG9mIGNoaWxkIGVsZW1lbnRzLlxuLy9cbi8vIFNvdXJjZTogaHR0cDovL25pY29sYXNnYWxsYWdoZXIuY29tL21pY3JvLWNsZWFyZml4LWhhY2svXG5cbkBtaXhpbiBjbGVhcmZpeCgpIHtcbiAgJjpiZWZvcmUsXG4gICY6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwiIFwiOyAvLyAxXG4gICAgZGlzcGxheTogdGFibGU7IC8vIDJcbiAgfVxuICAmOmFmdGVyIHtcbiAgICBjbGVhcjogYm90aDtcbiAgfVxufVxuIiwiLy8gQ2VudGVyLWFsaWduIGEgYmxvY2sgbGV2ZWwgZWxlbWVudFxuXG5AbWl4aW4gY2VudGVyLWJsb2NrKCkge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIG1hcmdpbi1yaWdodDogYXV0bztcbn1cbiIsIi8vIE5hdmJhciB2ZXJ0aWNhbCBhbGlnblxuLy9cbi8vIFZlcnRpY2FsbHkgY2VudGVyIGVsZW1lbnRzIGluIHRoZSBuYXZiYXIuXG4vLyBFeGFtcGxlOiBhbiBlbGVtZW50IGhhcyBhIGhlaWdodCBvZiAzMHB4LCBzbyB3cml0ZSBvdXQgYC5uYXZiYXItdmVydGljYWwtYWxpZ24oMzBweCk7YCB0byBjYWxjdWxhdGUgdGhlIGFwcHJvcHJpYXRlIHRvcCBtYXJnaW4uXG5cbkBtaXhpbiBuYXZiYXItdmVydGljYWwtYWxpZ24oJGVsZW1lbnQtaGVpZ2h0KSB7XG4gIG1hcmdpbi10b3A6ICgoJG5hdmJhci1oZWlnaHQgLSAkZWxlbWVudC1oZWlnaHQpIC8gMik7XG4gIG1hcmdpbi1ib3R0b206ICgoJG5hdmJhci1oZWlnaHQgLSAkZWxlbWVudC1oZWlnaHQpIC8gMik7XG59XG4iLCIvLyBGcmFtZXdvcmsgZ3JpZCBnZW5lcmF0aW9uXG4vL1xuLy8gVXNlZCBvbmx5IGJ5IEJvb3RzdHJhcCB0byBnZW5lcmF0ZSB0aGUgY29ycmVjdCBudW1iZXIgb2YgZ3JpZCBjbGFzc2VzIGdpdmVuXG4vLyBhbnkgdmFsdWUgb2YgYCRncmlkLWNvbHVtbnNgLlxuXG4vLyBbY29udmVydGVyXSBUaGlzIGlzIGRlZmluZWQgcmVjdXJzaXZlbHkgaW4gTEVTUywgYnV0IFNhc3Mgc3VwcG9ydHMgcmVhbCBsb29wc1xuQG1peGluIG1ha2UtZ3JpZC1jb2x1bW5zKCRpOiAxLCAkbGlzdDogXCIuY29sLXhzLSN7JGl9LCAuY29sLXNtLSN7JGl9LCAuY29sLW1kLSN7JGl9LCAuY29sLWxnLSN7JGl9XCIpIHtcbiAgQGZvciAkaSBmcm9tICgxICsgMSkgdGhyb3VnaCAkZ3JpZC1jb2x1bW5zIHtcbiAgICAkbGlzdDogXCIjeyRsaXN0fSwgLmNvbC14cy0jeyRpfSwgLmNvbC1zbS0jeyRpfSwgLmNvbC1tZC0jeyRpfSwgLmNvbC1sZy0jeyRpfVwiO1xuICB9XG4gICN7JGxpc3R9IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgLy8gUHJldmVudCBjb2x1bW5zIGZyb20gY29sbGFwc2luZyB3aGVuIGVtcHR5XG4gICAgbWluLWhlaWdodDogMXB4O1xuICAgIC8vIElubmVyIGd1dHRlciB2aWEgcGFkZGluZ1xuICAgIHBhZGRpbmctbGVmdDogIGNlaWwoKCRncmlkLWd1dHRlci13aWR0aCAvIDIpKTtcbiAgICBwYWRkaW5nLXJpZ2h0OiBmbG9vcigoJGdyaWQtZ3V0dGVyLXdpZHRoIC8gMikpO1xuICB9XG59XG5cblxuLy8gW2NvbnZlcnRlcl0gVGhpcyBpcyBkZWZpbmVkIHJlY3Vyc2l2ZWx5IGluIExFU1MsIGJ1dCBTYXNzIHN1cHBvcnRzIHJlYWwgbG9vcHNcbkBtaXhpbiBmbG9hdC1ncmlkLWNvbHVtbnMoJGNsYXNzLCAkaTogMSwgJGxpc3Q6IFwiLmNvbC0jeyRjbGFzc30tI3skaX1cIikge1xuICBAZm9yICRpIGZyb20gKDEgKyAxKSB0aHJvdWdoICRncmlkLWNvbHVtbnMge1xuICAgICRsaXN0OiBcIiN7JGxpc3R9LCAuY29sLSN7JGNsYXNzfS0jeyRpfVwiO1xuICB9XG4gICN7JGxpc3R9IHtcbiAgICBmbG9hdDogbGVmdDtcbiAgfVxufVxuXG5cbkBtaXhpbiBjYWxjLWdyaWQtY29sdW1uKCRpbmRleCwgJGNsYXNzLCAkdHlwZSkge1xuICBAaWYgKCR0eXBlID09IHdpZHRoKSBhbmQgKCRpbmRleCA+IDApIHtcbiAgICAuY29sLSN7JGNsYXNzfS0jeyRpbmRleH0ge1xuICAgICAgd2lkdGg6IHBlcmNlbnRhZ2UoKCRpbmRleCAvICRncmlkLWNvbHVtbnMpKTtcbiAgICB9XG4gIH1cbiAgQGlmICgkdHlwZSA9PSBwdXNoKSBhbmQgKCRpbmRleCA+IDApIHtcbiAgICAuY29sLSN7JGNsYXNzfS1wdXNoLSN7JGluZGV4fSB7XG4gICAgICBsZWZ0OiBwZXJjZW50YWdlKCgkaW5kZXggLyAkZ3JpZC1jb2x1bW5zKSk7XG4gICAgfVxuICB9XG4gIEBpZiAoJHR5cGUgPT0gcHVzaCkgYW5kICgkaW5kZXggPT0gMCkge1xuICAgIC5jb2wtI3skY2xhc3N9LXB1c2gtMCB7XG4gICAgICBsZWZ0OiBhdXRvO1xuICAgIH1cbiAgfVxuICBAaWYgKCR0eXBlID09IHB1bGwpIGFuZCAoJGluZGV4ID4gMCkge1xuICAgIC5jb2wtI3skY2xhc3N9LXB1bGwtI3skaW5kZXh9IHtcbiAgICAgIHJpZ2h0OiBwZXJjZW50YWdlKCgkaW5kZXggLyAkZ3JpZC1jb2x1bW5zKSk7XG4gICAgfVxuICB9XG4gIEBpZiAoJHR5cGUgPT0gcHVsbCkgYW5kICgkaW5kZXggPT0gMCkge1xuICAgIC5jb2wtI3skY2xhc3N9LXB1bGwtMCB7XG4gICAgICByaWdodDogYXV0bztcbiAgICB9XG4gIH1cbiAgQGlmICgkdHlwZSA9PSBvZmZzZXQpIHtcbiAgICAuY29sLSN7JGNsYXNzfS1vZmZzZXQtI3skaW5kZXh9IHtcbiAgICAgIG1hcmdpbi1sZWZ0OiBwZXJjZW50YWdlKCgkaW5kZXggLyAkZ3JpZC1jb2x1bW5zKSk7XG4gICAgfVxuICB9XG59XG5cbi8vIFtjb252ZXJ0ZXJdIFRoaXMgaXMgZGVmaW5lZCByZWN1cnNpdmVseSBpbiBMRVNTLCBidXQgU2FzcyBzdXBwb3J0cyByZWFsIGxvb3BzXG5AbWl4aW4gbG9vcC1ncmlkLWNvbHVtbnMoJGNvbHVtbnMsICRjbGFzcywgJHR5cGUpIHtcbiAgQGZvciAkaSBmcm9tIDAgdGhyb3VnaCAkY29sdW1ucyB7XG4gICAgQGluY2x1ZGUgY2FsYy1ncmlkLWNvbHVtbigkaSwgJGNsYXNzLCAkdHlwZSk7XG4gIH1cbn1cblxuXG4vLyBDcmVhdGUgZ3JpZCBmb3Igc3BlY2lmaWMgY2xhc3NcbkBtaXhpbiBtYWtlLWdyaWQoJGNsYXNzKSB7XG4gIEBpbmNsdWRlIGZsb2F0LWdyaWQtY29sdW1ucygkY2xhc3MpO1xuICBAaW5jbHVkZSBsb29wLWdyaWQtY29sdW1ucygkZ3JpZC1jb2x1bW5zLCAkY2xhc3MsIHdpZHRoKTtcbiAgQGluY2x1ZGUgbG9vcC1ncmlkLWNvbHVtbnMoJGdyaWQtY29sdW1ucywgJGNsYXNzLCBwdWxsKTtcbiAgQGluY2x1ZGUgbG9vcC1ncmlkLWNvbHVtbnMoJGdyaWQtY29sdW1ucywgJGNsYXNzLCBwdXNoKTtcbiAgQGluY2x1ZGUgbG9vcC1ncmlkLWNvbHVtbnMoJGdyaWQtY29sdW1ucywgJGNsYXNzLCBvZmZzZXQpO1xufVxuIiwiLy8gR3JpZCBzeXN0ZW1cbi8vXG4vLyBHZW5lcmF0ZSBzZW1hbnRpYyBncmlkIGNvbHVtbnMgd2l0aCB0aGVzZSBtaXhpbnMuXG5cbi8vIENlbnRlcmVkIGNvbnRhaW5lciBlbGVtZW50XG5AbWl4aW4gY29udGFpbmVyLWZpeGVkKCRndXR0ZXI6ICRncmlkLWd1dHRlci13aWR0aCkge1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICBwYWRkaW5nLWxlZnQ6ICBmbG9vcigoJGd1dHRlciAvIDIpKTtcbiAgcGFkZGluZy1yaWdodDogY2VpbCgoJGd1dHRlciAvIDIpKTtcbiAgQGluY2x1ZGUgY2xlYXJmaXg7XG59XG5cbi8vIENyZWF0ZXMgYSB3cmFwcGVyIGZvciBhIHNlcmllcyBvZiBjb2x1bW5zXG5AbWl4aW4gbWFrZS1yb3coJGd1dHRlcjogJGdyaWQtZ3V0dGVyLXdpZHRoKSB7XG4gIG1hcmdpbi1sZWZ0OiAgY2VpbCgoJGd1dHRlciAvIC0yKSk7XG4gIG1hcmdpbi1yaWdodDogZmxvb3IoKCRndXR0ZXIgLyAtMikpO1xuICBAaW5jbHVkZSBjbGVhcmZpeDtcbn1cblxuLy8gR2VuZXJhdGUgdGhlIGV4dHJhIHNtYWxsIGNvbHVtbnNcbkBtaXhpbiBtYWtlLXhzLWNvbHVtbigkY29sdW1ucywgJGd1dHRlcjogJGdyaWQtZ3V0dGVyLXdpZHRoKSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZmxvYXQ6IGxlZnQ7XG4gIHdpZHRoOiBwZXJjZW50YWdlKCgkY29sdW1ucyAvICRncmlkLWNvbHVtbnMpKTtcbiAgbWluLWhlaWdodDogMXB4O1xuICBwYWRkaW5nLWxlZnQ6ICAoJGd1dHRlciAvIDIpO1xuICBwYWRkaW5nLXJpZ2h0OiAoJGd1dHRlciAvIDIpO1xufVxuQG1peGluIG1ha2UteHMtY29sdW1uLW9mZnNldCgkY29sdW1ucykge1xuICBtYXJnaW4tbGVmdDogcGVyY2VudGFnZSgoJGNvbHVtbnMgLyAkZ3JpZC1jb2x1bW5zKSk7XG59XG5AbWl4aW4gbWFrZS14cy1jb2x1bW4tcHVzaCgkY29sdW1ucykge1xuICBsZWZ0OiBwZXJjZW50YWdlKCgkY29sdW1ucyAvICRncmlkLWNvbHVtbnMpKTtcbn1cbkBtaXhpbiBtYWtlLXhzLWNvbHVtbi1wdWxsKCRjb2x1bW5zKSB7XG4gIHJpZ2h0OiBwZXJjZW50YWdlKCgkY29sdW1ucyAvICRncmlkLWNvbHVtbnMpKTtcbn1cblxuLy8gR2VuZXJhdGUgdGhlIHNtYWxsIGNvbHVtbnNcbkBtaXhpbiBtYWtlLXNtLWNvbHVtbigkY29sdW1ucywgJGd1dHRlcjogJGdyaWQtZ3V0dGVyLXdpZHRoKSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbWluLWhlaWdodDogMXB4O1xuICBwYWRkaW5nLWxlZnQ6ICAoJGd1dHRlciAvIDIpO1xuICBwYWRkaW5nLXJpZ2h0OiAoJGd1dHRlciAvIDIpO1xuXG4gIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLXNtLW1pbikge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIHdpZHRoOiBwZXJjZW50YWdlKCgkY29sdW1ucyAvICRncmlkLWNvbHVtbnMpKTtcbiAgfVxufVxuQG1peGluIG1ha2Utc20tY29sdW1uLW9mZnNldCgkY29sdW1ucykge1xuICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1zbS1taW4pIHtcbiAgICBtYXJnaW4tbGVmdDogcGVyY2VudGFnZSgoJGNvbHVtbnMgLyAkZ3JpZC1jb2x1bW5zKSk7XG4gIH1cbn1cbkBtaXhpbiBtYWtlLXNtLWNvbHVtbi1wdXNoKCRjb2x1bW5zKSB7XG4gIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLXNtLW1pbikge1xuICAgIGxlZnQ6IHBlcmNlbnRhZ2UoKCRjb2x1bW5zIC8gJGdyaWQtY29sdW1ucykpO1xuICB9XG59XG5AbWl4aW4gbWFrZS1zbS1jb2x1bW4tcHVsbCgkY29sdW1ucykge1xuICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1zbS1taW4pIHtcbiAgICByaWdodDogcGVyY2VudGFnZSgoJGNvbHVtbnMgLyAkZ3JpZC1jb2x1bW5zKSk7XG4gIH1cbn1cblxuLy8gR2VuZXJhdGUgdGhlIG1lZGl1bSBjb2x1bW5zXG5AbWl4aW4gbWFrZS1tZC1jb2x1bW4oJGNvbHVtbnMsICRndXR0ZXI6ICRncmlkLWd1dHRlci13aWR0aCkge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG1pbi1oZWlnaHQ6IDFweDtcbiAgcGFkZGluZy1sZWZ0OiAgKCRndXR0ZXIgLyAyKTtcbiAgcGFkZGluZy1yaWdodDogKCRndXR0ZXIgLyAyKTtcblxuICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1tZC1taW4pIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICB3aWR0aDogcGVyY2VudGFnZSgoJGNvbHVtbnMgLyAkZ3JpZC1jb2x1bW5zKSk7XG4gIH1cbn1cbkBtaXhpbiBtYWtlLW1kLWNvbHVtbi1vZmZzZXQoJGNvbHVtbnMpIHtcbiAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbWQtbWluKSB7XG4gICAgbWFyZ2luLWxlZnQ6IHBlcmNlbnRhZ2UoKCRjb2x1bW5zIC8gJGdyaWQtY29sdW1ucykpO1xuICB9XG59XG5AbWl4aW4gbWFrZS1tZC1jb2x1bW4tcHVzaCgkY29sdW1ucykge1xuICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1tZC1taW4pIHtcbiAgICBsZWZ0OiBwZXJjZW50YWdlKCgkY29sdW1ucyAvICRncmlkLWNvbHVtbnMpKTtcbiAgfVxufVxuQG1peGluIG1ha2UtbWQtY29sdW1uLXB1bGwoJGNvbHVtbnMpIHtcbiAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbWQtbWluKSB7XG4gICAgcmlnaHQ6IHBlcmNlbnRhZ2UoKCRjb2x1bW5zIC8gJGdyaWQtY29sdW1ucykpO1xuICB9XG59XG5cbi8vIEdlbmVyYXRlIHRoZSBsYXJnZSBjb2x1bW5zXG5AbWl4aW4gbWFrZS1sZy1jb2x1bW4oJGNvbHVtbnMsICRndXR0ZXI6ICRncmlkLWd1dHRlci13aWR0aCkge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG1pbi1oZWlnaHQ6IDFweDtcbiAgcGFkZGluZy1sZWZ0OiAgKCRndXR0ZXIgLyAyKTtcbiAgcGFkZGluZy1yaWdodDogKCRndXR0ZXIgLyAyKTtcblxuICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1sZy1taW4pIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICB3aWR0aDogcGVyY2VudGFnZSgoJGNvbHVtbnMgLyAkZ3JpZC1jb2x1bW5zKSk7XG4gIH1cbn1cbkBtaXhpbiBtYWtlLWxnLWNvbHVtbi1vZmZzZXQoJGNvbHVtbnMpIHtcbiAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbGctbWluKSB7XG4gICAgbWFyZ2luLWxlZnQ6IHBlcmNlbnRhZ2UoKCRjb2x1bW5zIC8gJGdyaWQtY29sdW1ucykpO1xuICB9XG59XG5AbWl4aW4gbWFrZS1sZy1jb2x1bW4tcHVzaCgkY29sdW1ucykge1xuICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1sZy1taW4pIHtcbiAgICBsZWZ0OiBwZXJjZW50YWdlKCgkY29sdW1ucyAvICRncmlkLWNvbHVtbnMpKTtcbiAgfVxufVxuQG1peGluIG1ha2UtbGctY29sdW1uLXB1bGwoJGNvbHVtbnMpIHtcbiAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbGctbWluKSB7XG4gICAgcmlnaHQ6IHBlcmNlbnRhZ2UoKCRjb2x1bW5zIC8gJGdyaWQtY29sdW1ucykpO1xuICB9XG59XG4iLCIvL1xuLy8gQ29tcG9uZW50IGFuaW1hdGlvbnNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi8vIEhlYWRzIHVwIVxuLy9cbi8vIFdlIGRvbid0IHVzZSB0aGUgYC5vcGFjaXR5KClgIG1peGluIGhlcmUgc2luY2UgaXQgY2F1c2VzIGEgYnVnIHdpdGggdGV4dFxuLy8gZmllbGRzIGluIElFNy04LiBTb3VyY2U6IGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9wdWxsLzM1NTIuXG5cbi5mYWRlIHtcbiAgb3BhY2l0eTogMDtcbiAgQGluY2x1ZGUgdHJhbnNpdGlvbihvcGFjaXR5IC4xNXMgbGluZWFyKTtcbiAgJi5pbiB7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxufVxuXG4uY29sbGFwc2Uge1xuICBkaXNwbGF5OiBub25lO1xuXG4gICYuaW4gICAgICB7IGRpc3BsYXk6IGJsb2NrOyB9XG4gIC8vIFtjb252ZXJ0ZXJdIGV4dHJhY3RlZCB0ciYuaW4gdG8gdHIuY29sbGFwc2UuaW5cbiAgLy8gW2NvbnZlcnRlcl0gZXh0cmFjdGVkIHRib2R5Ji5pbiB0byB0Ym9keS5jb2xsYXBzZS5pblxufVxuXG50ci5jb2xsYXBzZS5pbiAgICB7IGRpc3BsYXk6IHRhYmxlLXJvdzsgfVxuXG50Ym9keS5jb2xsYXBzZS5pbiB7IGRpc3BsYXk6IHRhYmxlLXJvdy1ncm91cDsgfVxuXG4uY29sbGFwc2luZyB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgaGVpZ2h0OiAwO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBAaW5jbHVkZSB0cmFuc2l0aW9uLXByb3BlcnR5KGhlaWdodCwgdmlzaWJpbGl0eSk7XG4gIEBpbmNsdWRlIHRyYW5zaXRpb24tZHVyYXRpb24oLjM1cyk7XG4gIEBpbmNsdWRlIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uKGVhc2UpO1xufVxuIiwiLy9cbi8vIFJlc3BvbnNpdmU6IFV0aWxpdHkgY2xhc3Nlc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuXG4vLyBJRTEwIGluIFdpbmRvd3MgKFBob25lKSA4XG4vL1xuLy8gU3VwcG9ydCBmb3IgcmVzcG9uc2l2ZSB2aWV3cyB2aWEgbWVkaWEgcXVlcmllcyBpcyBraW5kIG9mIGJvcmtlZCBpbiBJRTEwLCBmb3Jcbi8vIFN1cmZhY2UvZGVza3RvcCBpbiBzcGxpdCB2aWV3IGFuZCBmb3IgV2luZG93cyBQaG9uZSA4LiBUaGlzIHBhcnRpY3VsYXIgZml4XG4vLyBtdXN0IGJlIGFjY29tcGFuaWVkIGJ5IGEgc25pcHBldCBvZiBKYXZhU2NyaXB0IHRvIHNuaWZmIHRoZSB1c2VyIGFnZW50IGFuZFxuLy8gYXBwbHkgc29tZSBjb25kaXRpb25hbCBDU1MgdG8gKm9ubHkqIHRoZSBTdXJmYWNlL2Rlc2t0b3AgV2luZG93cyA4LiBMb29rIGF0XG4vLyBvdXIgR2V0dGluZyBTdGFydGVkIHBhZ2UgZm9yIG1vcmUgaW5mb3JtYXRpb24gb24gdGhpcyBidWcuXG4vL1xuLy8gRm9yIG1vcmUgaW5mb3JtYXRpb24sIHNlZSB0aGUgZm9sbG93aW5nOlxuLy9cbi8vIElzc3VlOiBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzEwNDk3XG4vLyBEb2NzOiBodHRwOi8vZ2V0Ym9vdHN0cmFwLmNvbS9nZXR0aW5nLXN0YXJ0ZWQvI3N1cHBvcnQtaWUxMC13aWR0aFxuLy8gU291cmNlOiBodHRwOi8vdGlta2FkbGVjLmNvbS8yMDEzLzAxL3dpbmRvd3MtcGhvbmUtOC1hbmQtZGV2aWNlLXdpZHRoL1xuLy8gU291cmNlOiBodHRwOi8vdGlta2FkbGVjLmNvbS8yMDEyLzEwL2llMTAtc25hcC1tb2RlLWFuZC1yZXNwb25zaXZlLWRlc2lnbi9cblxuQGF0LXJvb3Qge1xuICBALW1zLXZpZXdwb3J0IHtcbiAgICB3aWR0aDogZGV2aWNlLXdpZHRoO1xuICB9XG59XG5cblxuLy8gVmlzaWJpbGl0eSB1dGlsaXRpZXNcbi8vIE5vdGU6IERlcHJlY2F0ZWQgLnZpc2libGUteHMsIC52aXNpYmxlLXNtLCAudmlzaWJsZS1tZCwgYW5kIC52aXNpYmxlLWxnIGFzIG9mIHYzLjIuMFxuXG5AaW5jbHVkZSByZXNwb25zaXZlLWludmlzaWJpbGl0eSgnLnZpc2libGUteHMnKTtcbkBpbmNsdWRlIHJlc3BvbnNpdmUtaW52aXNpYmlsaXR5KCcudmlzaWJsZS1zbScpO1xuQGluY2x1ZGUgcmVzcG9uc2l2ZS1pbnZpc2liaWxpdHkoJy52aXNpYmxlLW1kJyk7XG5AaW5jbHVkZSByZXNwb25zaXZlLWludmlzaWJpbGl0eSgnLnZpc2libGUtbGcnKTtcblxuLnZpc2libGUteHMtYmxvY2ssXG4udmlzaWJsZS14cy1pbmxpbmUsXG4udmlzaWJsZS14cy1pbmxpbmUtYmxvY2ssXG4udmlzaWJsZS1zbS1ibG9jayxcbi52aXNpYmxlLXNtLWlubGluZSxcbi52aXNpYmxlLXNtLWlubGluZS1ibG9jayxcbi52aXNpYmxlLW1kLWJsb2NrLFxuLnZpc2libGUtbWQtaW5saW5lLFxuLnZpc2libGUtbWQtaW5saW5lLWJsb2NrLFxuLnZpc2libGUtbGctYmxvY2ssXG4udmlzaWJsZS1sZy1pbmxpbmUsXG4udmlzaWJsZS1sZy1pbmxpbmUtYmxvY2sge1xuICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiAkc2NyZWVuLXhzLW1heCkge1xuICBAaW5jbHVkZSByZXNwb25zaXZlLXZpc2liaWxpdHkoJy52aXNpYmxlLXhzJyk7XG59XG4udmlzaWJsZS14cy1ibG9jayB7XG4gIEBtZWRpYSAobWF4LXdpZHRoOiAkc2NyZWVuLXhzLW1heCkge1xuICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG4gIH1cbn1cbi52aXNpYmxlLXhzLWlubGluZSB7XG4gIEBtZWRpYSAobWF4LXdpZHRoOiAkc2NyZWVuLXhzLW1heCkge1xuICAgIGRpc3BsYXk6IGlubGluZSAhaW1wb3J0YW50O1xuICB9XG59XG4udmlzaWJsZS14cy1pbmxpbmUtYmxvY2sge1xuICBAbWVkaWEgKG1heC13aWR0aDogJHNjcmVlbi14cy1tYXgpIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2sgIWltcG9ydGFudDtcbiAgfVxufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1zbS1taW4pIGFuZCAobWF4LXdpZHRoOiAkc2NyZWVuLXNtLW1heCkge1xuICBAaW5jbHVkZSByZXNwb25zaXZlLXZpc2liaWxpdHkoJy52aXNpYmxlLXNtJyk7XG59XG4udmlzaWJsZS1zbS1ibG9jayB7XG4gIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLXNtLW1pbikgYW5kIChtYXgtd2lkdGg6ICRzY3JlZW4tc20tbWF4KSB7XG4gICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgfVxufVxuLnZpc2libGUtc20taW5saW5lIHtcbiAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tc20tbWluKSBhbmQgKG1heC13aWR0aDogJHNjcmVlbi1zbS1tYXgpIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUgIWltcG9ydGFudDtcbiAgfVxufVxuLnZpc2libGUtc20taW5saW5lLWJsb2NrIHtcbiAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tc20tbWluKSBhbmQgKG1heC13aWR0aDogJHNjcmVlbi1zbS1tYXgpIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2sgIWltcG9ydGFudDtcbiAgfVxufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1tZC1taW4pIGFuZCAobWF4LXdpZHRoOiAkc2NyZWVuLW1kLW1heCkge1xuICBAaW5jbHVkZSByZXNwb25zaXZlLXZpc2liaWxpdHkoJy52aXNpYmxlLW1kJyk7XG59XG4udmlzaWJsZS1tZC1ibG9jayB7XG4gIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLW1kLW1pbikgYW5kIChtYXgtd2lkdGg6ICRzY3JlZW4tbWQtbWF4KSB7XG4gICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgfVxufVxuLnZpc2libGUtbWQtaW5saW5lIHtcbiAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbWQtbWluKSBhbmQgKG1heC13aWR0aDogJHNjcmVlbi1tZC1tYXgpIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUgIWltcG9ydGFudDtcbiAgfVxufVxuLnZpc2libGUtbWQtaW5saW5lLWJsb2NrIHtcbiAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbWQtbWluKSBhbmQgKG1heC13aWR0aDogJHNjcmVlbi1tZC1tYXgpIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2sgIWltcG9ydGFudDtcbiAgfVxufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1sZy1taW4pIHtcbiAgQGluY2x1ZGUgcmVzcG9uc2l2ZS12aXNpYmlsaXR5KCcudmlzaWJsZS1sZycpO1xufVxuLnZpc2libGUtbGctYmxvY2sge1xuICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1sZy1taW4pIHtcbiAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICB9XG59XG4udmlzaWJsZS1sZy1pbmxpbmUge1xuICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1sZy1taW4pIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUgIWltcG9ydGFudDtcbiAgfVxufVxuLnZpc2libGUtbGctaW5saW5lLWJsb2NrIHtcbiAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbGctbWluKSB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6ICRzY3JlZW4teHMtbWF4KSB7XG4gIEBpbmNsdWRlIHJlc3BvbnNpdmUtaW52aXNpYmlsaXR5KCcuaGlkZGVuLXhzJyk7XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLXNtLW1pbikgYW5kIChtYXgtd2lkdGg6ICRzY3JlZW4tc20tbWF4KSB7XG4gIEBpbmNsdWRlIHJlc3BvbnNpdmUtaW52aXNpYmlsaXR5KCcuaGlkZGVuLXNtJyk7XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLW1kLW1pbikgYW5kIChtYXgtd2lkdGg6ICRzY3JlZW4tbWQtbWF4KSB7XG4gIEBpbmNsdWRlIHJlc3BvbnNpdmUtaW52aXNpYmlsaXR5KCcuaGlkZGVuLW1kJyk7XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLWxnLW1pbikge1xuICBAaW5jbHVkZSByZXNwb25zaXZlLWludmlzaWJpbGl0eSgnLmhpZGRlbi1sZycpO1xufVxuXG5cbi8vIFByaW50IHV0aWxpdGllc1xuLy9cbi8vIE1lZGlhIHF1ZXJpZXMgYXJlIHBsYWNlZCBvbiB0aGUgaW5zaWRlIHRvIGJlIG1peGluLWZyaWVuZGx5LlxuXG4vLyBOb3RlOiBEZXByZWNhdGVkIC52aXNpYmxlLXByaW50IGFzIG9mIHYzLjIuMFxuXG5AaW5jbHVkZSByZXNwb25zaXZlLWludmlzaWJpbGl0eSgnLnZpc2libGUtcHJpbnQnKTtcblxuQG1lZGlhIHByaW50IHtcbiAgQGluY2x1ZGUgcmVzcG9uc2l2ZS12aXNpYmlsaXR5KCcudmlzaWJsZS1wcmludCcpO1xufVxuLnZpc2libGUtcHJpbnQtYmxvY2sge1xuICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG5cbiAgQG1lZGlhIHByaW50IHtcbiAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICB9XG59XG4udmlzaWJsZS1wcmludC1pbmxpbmUge1xuICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG5cbiAgQG1lZGlhIHByaW50IHtcbiAgICBkaXNwbGF5OiBpbmxpbmUgIWltcG9ydGFudDtcbiAgfVxufVxuLnZpc2libGUtcHJpbnQtaW5saW5lLWJsb2NrIHtcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuXG4gIEBtZWRpYSBwcmludCB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuQG1lZGlhIHByaW50IHtcbiAgQGluY2x1ZGUgcmVzcG9uc2l2ZS1pbnZpc2liaWxpdHkoJy5oaWRkZW4tcHJpbnQnKTtcbn1cbiIsIi8qIFNsaWRlciAqL1xuXG4uc2xpY2stc2xpZGVyIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgLW1vei1ib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgLXdlYmtpdC10b3VjaC1jYWxsb3V0OiBub25lO1xuICAgIC13ZWJraXQtdXNlci1zZWxlY3Q6IG5vbmU7XG4gICAgLWtodG1sLXVzZXItc2VsZWN0OiBub25lO1xuICAgIC1tb3otdXNlci1zZWxlY3Q6IG5vbmU7XG4gICAgLW1zLXVzZXItc2VsZWN0OiBub25lO1xuICAgIHVzZXItc2VsZWN0OiBub25lO1xuICAgIC1tcy10b3VjaC1hY3Rpb246IHBhbi15O1xuICAgIHRvdWNoLWFjdGlvbjogcGFuLXk7XG4gICAgLXdlYmtpdC10YXAtaGlnaGxpZ2h0LWNvbG9yOiB0cmFuc3BhcmVudDtcbn1cbi5zbGljay1saXN0IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMDtcblxuICAgICY6Zm9jdXMge1xuICAgICAgICBvdXRsaW5lOiBub25lO1xuICAgIH1cblxuICAgICYuZHJhZ2dpbmcge1xuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgIGN1cnNvcjogaGFuZDtcbiAgICB9XG59XG4uc2xpY2stc2xpZGVyIC5zbGljay10cmFjayxcbi5zbGljay1zbGlkZXIgLnNsaWNrLWxpc3Qge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgICAtbW96LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gICAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gICAgLW8tdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xufVxuXG4uc2xpY2stdHJhY2sge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAwO1xuICAgIHRvcDogMDtcbiAgICBkaXNwbGF5OiBibG9jaztcblxuICAgICY6YmVmb3JlLFxuICAgICY6YWZ0ZXIge1xuICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICB9XG5cbiAgICAmOmFmdGVyIHtcbiAgICAgICAgY2xlYXI6IGJvdGg7XG4gICAgfVxuXG4gICAgLnNsaWNrLWxvYWRpbmcgJiB7XG4gICAgICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICB9XG59XG4uc2xpY2stc2xpZGUge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBtaW4taGVpZ2h0OiAxcHg7XG4gICAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgIH1cbiAgICBpbWcge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICB9XG4gICAgJi5zbGljay1sb2FkaW5nIGltZyB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuXG4gICAgZGlzcGxheTogbm9uZTtcblxuICAgICYuZHJhZ2dpbmcgaW1nIHtcbiAgICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgfVxuXG4gICAgLnNsaWNrLWluaXRpYWxpemVkICYge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICB9XG5cbiAgICAuc2xpY2stbG9hZGluZyAmIHtcbiAgICAgICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgIH1cblxuICAgIC5zbGljay12ZXJ0aWNhbCAmIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgfVxufVxuLnNsaWNrLWFycm93LnNsaWNrLWhpZGRlbiB7XG4gICAgZGlzcGxheTogbm9uZTtcbn1cbiIsIi8qXG4gKiBOaXZvIExpZ2h0Ym94IHYxLjIuMFxuICogaHR0cDovL2RldjdzdHVkaW9zLmNvbS9uaXZvLWxpZ2h0Ym94XG4gKlxuICogQ29weXJpZ2h0IDIwMTMsIERldjdzdHVkaW9zXG4gKiBGcmVlIHRvIHVzZSBhbmQgYWJ1c2UgdW5kZXIgdGhlIE1JVCBsaWNlbnNlLlxuICogaHR0cDovL3d3dy5vcGVuc291cmNlLm9yZy9saWNlbnNlcy9taXQtbGljZW5zZS5waHBcbiAqL1xuXG4ubml2by1saWdodGJveC1vdmVybGF5IHtcblx0cG9zaXRpb246IGZpeGVkO1xuXHR0b3A6IDA7XG5cdGxlZnQ6IDA7XG5cdHotaW5kZXg6IDk5OTk4O1xuXHR3aWR0aDogMTAwJTtcblx0aGVpZ2h0OiAxMDAlO1xuXHRvdmVyZmxvdzogaGlkZGVuO1xuXHR2aXNpYmlsaXR5OiBoaWRkZW47XG5cdG9wYWNpdHk6IDA7XG5cdC13ZWJraXQtYm94LXNpemluZzogYm9yZGVyLWJveDtcblx0LW1vei1ib3gtc2l6aW5nOiBib3JkZXItYm94O1xuXHRib3gtc2l6aW5nOiBib3JkZXItYm94O1xufVxuLm5pdm8tbGlnaHRib3gtb3ZlcmxheS5uaXZvLWxpZ2h0Ym94LW9wZW4ge1xuXHR2aXNpYmlsaXR5OiB2aXNpYmxlO1xuXHRvcGFjaXR5OiAxO1xufVxuLm5pdm8tbGlnaHRib3gtd3JhcCAge1xuXHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdHRvcDogMTAlO1xuXHRib3R0b206IDEwJTtcblx0bGVmdDogMTAlO1xuXHRyaWdodDogMTAlO1xufVxuLm5pdm8tbGlnaHRib3gtY29udGVudCB7XG5cdHdpZHRoOiAxMDAlO1xuXHRoZWlnaHQ6IDEwMCU7XG59XG4ubml2by1saWdodGJveC10aXRsZS13cmFwIHtcblx0cG9zaXRpb246IGFic29sdXRlO1xuXHRib3R0b206IDA7XG5cdGxlZnQ6IDA7XG5cdHdpZHRoOiAxMDAlO1xuXHR6LWluZGV4OiA5OTk5OTtcblx0dGV4dC1hbGlnbjogY2VudGVyO1xufVxuLm5pdm8tbGlnaHRib3gtbmF2IHsgZGlzcGxheTogbm9uZTsgfVxuLm5pdm8tbGlnaHRib3gtcHJldiB7XG5cdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0dG9wOiA1MCU7XG5cdGxlZnQ6IDA7XG59XG4ubml2by1saWdodGJveC1uZXh0IHtcblx0cG9zaXRpb246IGFic29sdXRlO1xuXHR0b3A6IDUwJTtcblx0cmlnaHQ6IDA7XG59XG4ubml2by1saWdodGJveC1jbG9zZSB7XG5cdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0dG9wOiAyJTtcblx0cmlnaHQ6IDIlO1xufVxuXG4ubml2by1saWdodGJveC1pbWFnZSB7IHRleHQtYWxpZ246IGNlbnRlcjsgfVxuLm5pdm8tbGlnaHRib3gtaW1hZ2UgaW1nIHtcblx0bWF4LXdpZHRoOiAxMDAlO1xuXHRtYXgtaGVpZ2h0OiAxMDAlO1xuXHR3aWR0aDogYXV0bztcblx0aGVpZ2h0OiBhdXRvO1xuXHR2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xufVxuLm5pdm8tbGlnaHRib3gtY29udGVudCBpZnJhbWUge1xuXHR3aWR0aDogMTAwJTtcblx0aGVpZ2h0OiAxMDAlO1xufVxuLm5pdm8tbGlnaHRib3gtaW5saW5lLFxuLm5pdm8tbGlnaHRib3gtYWpheCB7XG5cdG1heC1oZWlnaHQ6IDEwMCU7XG5cdG92ZXJmbG93OiBhdXRvO1xuXHQtd2Via2l0LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XG5cdC1tb3otYm94LXNpemluZzogYm9yZGVyLWJveDtcblx0Ym94LXNpemluZzogYm9yZGVyLWJveDtcblx0LyogaHR0cHM6Ly9idWd6aWxsYS5tb3ppbGxhLm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MzA4ODAxICovXG59XG4ubml2by1saWdodGJveC1lcnJvciB7XG5cdGRpc3BsYXk6IHRhYmxlO1xuXHR0ZXh0LWFsaWduOiBjZW50ZXI7XG5cdHdpZHRoOiAxMDAlO1xuXHRoZWlnaHQ6IDEwMCU7XG5cdGNvbG9yOiAjZmZmO1xuXHR0ZXh0LXNoYWRvdzogMCAxcHggMXB4ICMwMDA7XG59XG4ubml2by1saWdodGJveC1lcnJvciBwIHtcblx0ZGlzcGxheTogdGFibGUtY2VsbDtcblx0dmVydGljYWwtYWxpZ246IG1pZGRsZTtcbn1cblxuLyogRWZmZWN0c1xuICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4ubml2by1saWdodGJveC1ub3RvdWNoIC5uaXZvLWxpZ2h0Ym94LWVmZmVjdC1mYWRlLFxuLm5pdm8tbGlnaHRib3gtbm90b3VjaCAubml2by1saWdodGJveC1lZmZlY3QtZmFkZVNjYWxlLFxuLm5pdm8tbGlnaHRib3gtbm90b3VjaCAubml2by1saWdodGJveC1lZmZlY3Qtc2xpZGVMZWZ0LFxuLm5pdm8tbGlnaHRib3gtbm90b3VjaCAubml2by1saWdodGJveC1lZmZlY3Qtc2xpZGVSaWdodCxcbi5uaXZvLWxpZ2h0Ym94LW5vdG91Y2ggLm5pdm8tbGlnaHRib3gtZWZmZWN0LXNsaWRlVXAsXG4ubml2by1saWdodGJveC1ub3RvdWNoIC5uaXZvLWxpZ2h0Ym94LWVmZmVjdC1zbGlkZURvd24sXG4ubml2by1saWdodGJveC1ub3RvdWNoIC5uaXZvLWxpZ2h0Ym94LWVmZmVjdC1mYWxsIHtcblx0LXdlYmtpdC10cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlLWluLW91dDtcblx0ICAgLW1vei10cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlLWluLW91dDtcblx0ICAgIC1tcy10cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlLWluLW91dDtcblx0ICAgICAtby10cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlLWluLW91dDtcblx0ICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlLWluLW91dDtcbn1cblxuLyogZmFkZVNjYWxlICovXG4ubml2by1saWdodGJveC1lZmZlY3QtZmFkZVNjYWxlIC5uaXZvLWxpZ2h0Ym94LXdyYXAge1xuXHQtd2Via2l0LXRyYW5zaXRpb246IGFsbCAwLjNzO1xuXHQgICAtbW96LXRyYW5zaXRpb246IGFsbCAwLjNzO1xuXHQgICAgLW1zLXRyYW5zaXRpb246IGFsbCAwLjNzO1xuXHQgICAgIC1vLXRyYW5zaXRpb246IGFsbCAwLjNzO1xuXHQgICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjNzO1xuXHQtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMC43KTtcblx0ICAgLW1vei10cmFuc2Zvcm06IHNjYWxlKDAuNyk7XG5cdCAgICAtbXMtdHJhbnNmb3JtOiBzY2FsZSgwLjcpO1xuXHQgICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMC43KTtcbn1cbi5uaXZvLWxpZ2h0Ym94LWVmZmVjdC1mYWRlU2NhbGUubml2by1saWdodGJveC1vcGVuIC5uaXZvLWxpZ2h0Ym94LXdyYXAge1xuXHQtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMSk7XG5cdCAgIC1tb3otdHJhbnNmb3JtOiBzY2FsZSgxKTtcblx0ICAgIC1tcy10cmFuc2Zvcm06IHNjYWxlKDEpO1xuXHQgICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7XG59XG5cbi8qIHNsaWRlTGVmdCAvIHNsaWRlUmlnaHQgLyBzbGlkZVVwIC8gc2xpZGVEb3duICovXG4ubml2by1saWdodGJveC1lZmZlY3Qtc2xpZGVMZWZ0IC5uaXZvLWxpZ2h0Ym94LXdyYXAsXG4ubml2by1saWdodGJveC1lZmZlY3Qtc2xpZGVSaWdodCAubml2by1saWdodGJveC13cmFwLFxuLm5pdm8tbGlnaHRib3gtZWZmZWN0LXNsaWRlVXAgLm5pdm8tbGlnaHRib3gtd3JhcCxcbi5uaXZvLWxpZ2h0Ym94LWVmZmVjdC1zbGlkZURvd24gLm5pdm8tbGlnaHRib3gtd3JhcCB7XG5cdC13ZWJraXQtdHJhbnNpdGlvbjogYWxsIDAuM3MgY3ViaWMtYmV6aWVyKDAuMjUsIDAuNSwgMC41LCAwLjkpO1xuXHQgICAtbW96LXRyYW5zaXRpb246IGFsbCAwLjNzIGN1YmljLWJlemllcigwLjI1LCAwLjUsIDAuNSwgMC45KTtcblx0ICAgIC1tcy10cmFuc2l0aW9uOiBhbGwgMC4zcyBjdWJpYy1iZXppZXIoMC4yNSwgMC41LCAwLjUsIDAuOSk7XG5cdCAgICAgLW8tdHJhbnNpdGlvbjogYWxsIDAuM3MgY3ViaWMtYmV6aWVyKDAuMjUsIDAuNSwgMC41LCAwLjkpO1xuXHQgICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjNzIGN1YmljLWJlemllcigwLjI1LCAwLjUsIDAuNSwgMC45KTtcbn1cbi5uaXZvLWxpZ2h0Ym94LWVmZmVjdC1zbGlkZUxlZnQgLm5pdm8tbGlnaHRib3gtd3JhcCB7XG5cdC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0xMCUpO1xuXHQgICAtbW96LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMTAlKTtcblx0ICAgIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTEwJSk7XG5cdCAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0xMCUpO1xufVxuLm5pdm8tbGlnaHRib3gtZWZmZWN0LXNsaWRlUmlnaHQgLm5pdm8tbGlnaHRib3gtd3JhcCB7XG5cdC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDEwJSk7XG5cdCAgIC1tb3otdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDEwJSk7XG5cdCAgICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDEwJSk7XG5cdCAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDEwJSk7XG59XG4ubml2by1saWdodGJveC1lZmZlY3Qtc2xpZGVMZWZ0Lm5pdm8tbGlnaHRib3gtb3BlbiAubml2by1saWdodGJveC13cmFwLFxuLm5pdm8tbGlnaHRib3gtZWZmZWN0LXNsaWRlUmlnaHQubml2by1saWdodGJveC1vcGVuIC5uaXZvLWxpZ2h0Ym94LXdyYXAge1xuXHQtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTtcblx0ICAgLW1vei10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7XG5cdCAgICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApO1xuXHQgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTtcbn1cbi5uaXZvLWxpZ2h0Ym94LWVmZmVjdC1zbGlkZURvd24gLm5pdm8tbGlnaHRib3gtd3JhcCB7XG5cdC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xMCUpO1xuXHQgICAtbW96LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTAlKTtcblx0ICAgIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTEwJSk7XG5cdCAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xMCUpO1xufVxuLm5pdm8tbGlnaHRib3gtZWZmZWN0LXNsaWRlVXAgLm5pdm8tbGlnaHRib3gtd3JhcCB7XG5cdC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDEwJSk7XG5cdCAgIC1tb3otdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDEwJSk7XG5cdCAgICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDEwJSk7XG5cdCAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDEwJSk7XG59XG4ubml2by1saWdodGJveC1lZmZlY3Qtc2xpZGVVcC5uaXZvLWxpZ2h0Ym94LW9wZW4gLm5pdm8tbGlnaHRib3gtd3JhcCxcbi5uaXZvLWxpZ2h0Ym94LWVmZmVjdC1zbGlkZURvd24ubml2by1saWdodGJveC1vcGVuIC5uaXZvLWxpZ2h0Ym94LXdyYXAge1xuXHQtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcblx0ICAgLW1vei10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG5cdCAgICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuXHQgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbn1cblxuLyogZmFsbCAqL1xuLm5pdm8tbGlnaHRib3gtYm9keS1lZmZlY3QtZmFsbCAubml2by1saWdodGJveC1lZmZlY3QtZmFsbCB7XG5cdC13ZWJraXQtcGVyc3BlY3RpdmU6IDEwMDBweDtcblx0ICAgLW1vei1wZXJzcGVjdGl2ZTogMTAwMHB4O1xuXHQgICAgICAgIHBlcnNwZWN0aXZlOiAxMDAwcHg7XG59XG4ubml2by1saWdodGJveC1lZmZlY3QtZmFsbCAubml2by1saWdodGJveC13cmFwIHtcblx0LXdlYmtpdC10cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlLW91dDtcblx0ICAgLW1vei10cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlLW91dDtcblx0ICAgIC1tcy10cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlLW91dDtcblx0ICAgICAtby10cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlLW91dDtcblx0ICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlLW91dDtcblx0LXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVooMzAwcHgpO1xuXHQgICAtbW96LXRyYW5zZm9ybTogdHJhbnNsYXRlWigzMDBweCk7XG5cdCAgICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDMwMHB4KTtcblx0ICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVooMzAwcHgpO1xufVxuLm5pdm8tbGlnaHRib3gtZWZmZWN0LWZhbGwubml2by1saWdodGJveC1vcGVuIC5uaXZvLWxpZ2h0Ym94LXdyYXAge1xuXHQtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTtcblx0ICAgLW1vei10cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7XG5cdCAgICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApO1xuXHQgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTtcbn1cbiIsIi8qXG4gKiBOaXZvIExpZ2h0Ym94IERlZmF1bHQgVGhlbWUgdjEuMFxuICogaHR0cDovL2RldjdzdHVkaW9zLmNvbS9uaXZvLWxpZ2h0Ym94XG4gKlxuICogQ29weXJpZ2h0IDIwMTMsIERldjdzdHVkaW9zXG4gKiBGcmVlIHRvIHVzZSBhbmQgYWJ1c2UgdW5kZXIgdGhlIE1JVCBsaWNlbnNlLlxuICogaHR0cDovL3d3dy5vcGVuc291cmNlLm9yZy9saWNlbnNlcy9taXQtbGljZW5zZS5waHBcbiAqL1xuXG4kaW1nX3BhdGg6ICcuLi9zYXNzL25pdm8tbGlnaHRib3gvdGhlbWVzL2RlZmF1bHQvJztcblxuLm5pdm8tbGlnaHRib3gtdGhlbWUtZGVmYXVsdC5uaXZvLWxpZ2h0Ym94LW92ZXJsYXkge1xuXHRiYWNrZ3JvdW5kOiAjNjY2O1xuXHRiYWNrZ3JvdW5kOiByZ2JhKDAsMCwwLDAuNik7XG59XG4ubml2by1saWdodGJveC10aGVtZS1kZWZhdWx0IC5uaXZvLWxpZ2h0Ym94LWNvbnRlbnQubml2by1saWdodGJveC1sb2FkaW5nIHsgYmFja2dyb3VuZDogdXJsKCN7JGltZ19wYXRofWxvYWRpbmcuZ2lmKSBuby1yZXBlYXQgNTAlIDUwJTsgfVxuXG4ubml2by1saWdodGJveC10aGVtZS1kZWZhdWx0IC5uaXZvLWxpZ2h0Ym94LW5hdiB7XG5cdHRvcDogMTAlO1xuXHR3aWR0aDogOCU7XG5cdGhlaWdodDogODAlO1xuXHR0ZXh0LWluZGVudDogLTk5OTlweDtcblx0YmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcblx0YmFja2dyb3VuZC1wb3NpdGlvbjogNTAlIDUwJTtcblx0b3BhY2l0eTogMC41O1xufVxuLm5pdm8tbGlnaHRib3gtdGhlbWUtZGVmYXVsdCAubml2by1saWdodGJveC1uYXY6aG92ZXIge1xuXHRvcGFjaXR5OiAxO1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsMCwwLDAuNSk7XG59XG4ubml2by1saWdodGJveC10aGVtZS1kZWZhdWx0IC5uaXZvLWxpZ2h0Ym94LXByZXYge1xuXHRiYWNrZ3JvdW5kLWltYWdlOiB1cmwoI3skaW1nX3BhdGh9cHJldi5wbmcpO1xuXHRib3JkZXItcmFkaXVzOiAwIDNweCAzcHggMDtcbn1cbi5uaXZvLWxpZ2h0Ym94LXRoZW1lLWRlZmF1bHQgLm5pdm8tbGlnaHRib3gtbmV4dCB7XG5cdGJhY2tncm91bmQtaW1hZ2U6IHVybCgjeyRpbWdfcGF0aH1uZXh0LnBuZyk7XG5cdGJvcmRlci1yYWRpdXM6IDNweCAwIDAgM3B4O1xufVxuXG4ubml2by1saWdodGJveC10aGVtZS1kZWZhdWx0IC5uaXZvLWxpZ2h0Ym94LWNsb3NlIHtcblx0ZGlzcGxheTogYmxvY2s7XG5cdGJhY2tncm91bmQ6IHVybCgjeyRpbWdfcGF0aH1jbG9zZS5wbmcpIG5vLXJlcGVhdCA1cHggNXB4O1xuXHR3aWR0aDogMTZweDtcblx0aGVpZ2h0OiAxNnB4O1xuXHR0ZXh0LWluZGVudDogLTk5OTlweDtcblx0cGFkZGluZzogNXB4O1xuXHRvcGFjaXR5OiAwLjU7XG59XG4ubml2by1saWdodGJveC10aGVtZS1kZWZhdWx0IC5uaXZvLWxpZ2h0Ym94LWNsb3NlOmhvdmVyIHsgb3BhY2l0eTogMTsgfVxuXG4ubml2by1saWdodGJveC10aGVtZS1kZWZhdWx0IC5uaXZvLWxpZ2h0Ym94LXRpdGxlLXdyYXAgeyBib3R0b206IC03JTsgfVxuLm5pdm8tbGlnaHRib3gtdGhlbWUtZGVmYXVsdCAubml2by1saWdodGJveC10aXRsZSB7XG5cdGZvbnQ6IDE0cHgvMjBweCAnSGVsdmV0aWNhIE5ldWUnLCBIZWx2ZXRpY2EsIEFyaWFsLCBzYW5zLXNlcmlmO1xuXHRmb250LXN0eWxlOiBub3JtYWw7XG5cdGZvbnQtd2VpZ2h0OiBub3JtYWw7XG5cdGJhY2tncm91bmQ6ICMwMDA7XG5cdGNvbG9yOiAjZmZmO1xuXHRwYWRkaW5nOiA3cHggMTVweDtcblx0Ym9yZGVyLXJhZGl1czogMzBweDtcbn1cblxuLm5pdm8tbGlnaHRib3gtdGhlbWUtZGVmYXVsdCAubml2by1saWdodGJveC1pbWFnZSBpbWcge1xuXHRiYWNrZ3JvdW5kOiAjZmZmO1xuXHQtd2Via2l0LWJveC1zaGFkb3c6IDBweCAxcHggMXB4IHJnYmEoMCwwLDAsMC40KTtcblx0ICAgLW1vei1ib3gtc2hhZG93OiAwcHggMXB4IDFweCByZ2JhKDAsMCwwLDAuNCk7XG5cdCAgICAgICAgYm94LXNoYWRvdzogMHB4IDFweCAxcHggcmdiYSgwLDAsMCwwLjQpO1xufVxuLm5pdm8tbGlnaHRib3gtdGhlbWUtZGVmYXVsdCAubml2by1saWdodGJveC1hamF4LFxuLm5pdm8tbGlnaHRib3gtdGhlbWUtZGVmYXVsdCAubml2by1saWdodGJveC1pbmxpbmUge1xuXHRiYWNrZ3JvdW5kOiAjZmZmO1xuXHRwYWRkaW5nOiA0MHB4O1xuXHQtd2Via2l0LWJveC1zaGFkb3c6IDBweCAxcHggMXB4IHJnYmEoMCwwLDAsMC40KTtcblx0ICAgLW1vei1ib3gtc2hhZG93OiAwcHggMXB4IDFweCByZ2JhKDAsMCwwLDAuNCk7XG5cdCAgICAgICAgYm94LXNoYWRvdzogMHB4IDFweCAxcHggcmdiYSgwLDAsMCwwLjQpO1xufVxuXG5AbWVkaWEgKC13ZWJraXQtbWluLWRldmljZS1waXhlbC1yYXRpbzogMS4zKSxcbiAgICAgICAoLW8tbWluLWRldmljZS1waXhlbC1yYXRpbzogMi42LzIpLFxuICAgICAgIChtaW4tLW1vei1kZXZpY2UtcGl4ZWwtcmF0aW86IDEuMyksXG4gICAgICAgKG1pbi1kZXZpY2UtcGl4ZWwtcmF0aW86IDEuMyksXG4gICAgICAgKG1pbi1yZXNvbHV0aW9uOiAxLjNkcHB4KSB7XG5cblx0Lm5pdm8tbGlnaHRib3gtdGhlbWUtZGVmYXVsdCAubml2by1saWdodGJveC1jb250ZW50Lm5pdm8tbGlnaHRib3gtbG9hZGluZyB7XG5cdFx0YmFja2dyb3VuZC1pbWFnZTogdXJsKCN7JGltZ19wYXRofWxvYWRpbmdAMnguZ2lmKTtcblx0XHRiYWNrZ3JvdW5kLXNpemU6IDMycHggMzJweDtcblx0fVxuXHQubml2by1saWdodGJveC10aGVtZS1kZWZhdWx0IC5uaXZvLWxpZ2h0Ym94LXByZXYge1xuXHRcdGJhY2tncm91bmQtaW1hZ2U6IHVybCgjeyRpbWdfcGF0aH1wcmV2QDJ4LnBuZyk7XG5cdFx0YmFja2dyb3VuZC1zaXplOiA0OHB4IDQ4cHg7XG5cdH1cblx0Lm5pdm8tbGlnaHRib3gtdGhlbWUtZGVmYXVsdCAubml2by1saWdodGJveC1uZXh0IHtcblx0XHRiYWNrZ3JvdW5kLWltYWdlOiB1cmwoI3skaW1nX3BhdGh9bmV4dEAyeC5wbmcpO1xuXHRcdGJhY2tncm91bmQtc2l6ZTogNDhweCA0OHB4O1xuXHR9XG5cdC5uaXZvLWxpZ2h0Ym94LXRoZW1lLWRlZmF1bHQgLm5pdm8tbGlnaHRib3gtY2xvc2Uge1xuXHRcdGJhY2tncm91bmQtaW1hZ2U6IHVybCgjeyRpbWdfcGF0aH1jbG9zZUAyeC5wbmcpO1xuXHRcdGJhY2tncm91bmQtc2l6ZTogMTZweCAxNnB4O1xuXHR9XG5cbn0iLCIucGlrYS1zaW5nbGUge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB6LWluZGV4OiA5OTk5O1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGZvbnQtZmFtaWx5OiBpbmhlcml0O1xuICAgIGNvbG9yOiAkY29sLXRleHQ7XG4gICAgKnpvb206IDE7XG5cbiAgICAmOmJlZm9yZSxcbiAgICAmOmFmdGVyIHtcbiAgICAgICAgY29udGVudDogJyAnO1xuICAgICAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICB9XG5cbiAgICAmOmFmdGVyIHtcbiAgICAgICAgY2xlYXI6IGJvdGg7XG4gICAgfVxuXG4gICAgJi5pcy1oaWRkZW4ge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cblxuICAgICYuaXMtYm91bmQge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGUgIWltcG9ydGFudDtcbiAgICAgICAgYm94LXNoYWRvdzogMCAxMHB4IDI1cHggLTVweCByZ2JhKCAjMDAwLCAuMjUgKTtcbiAgICB9XG5cbiAgICAucGlrYS1sZW5kYXIge1xuICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGJhY2tncm91bmQ6ICNmZmY7XG5cbiAgICAgICAgLnBpa2EtdGl0bGUge1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgbWFyZ2luOiAwIDAgMTBweDtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICAgICAgICAgICAgLnBpa2EtbGFiZWwge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgICAgICAqZGlzcGxheTogaW5saW5lO1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgICAgICB6LWluZGV4OiA5OTk5O1xuICAgICAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDVweCAzcHg7XG4gICAgICAgICAgICAgICAgY29sb3I6ICRjb2wtdGV4dDtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDFlbTtcbiAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMjBweDtcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogYWxsIC4xNXMgZWFzZS1pbi1vdXQ7XG5cbiAgICAgICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRjb2wtcHJpbTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBzZWxlY3Qge1xuICAgICAgICAgICAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICAgICAgei1pbmRleDogOTk5ODtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgICAgICAgICB0b3A6IDVweDtcbiAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgICAgICAgICAgICBmaWx0ZXI6IGFscGhhKG9wYWNpdHk9MCk7XG4gICAgICAgICAgICAgICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAucGlrYS1zZWxlY3Qge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgICAgICAqZGlzcGxheTogaW5saW5lO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLnBpa2EtcHJldixcbiAgICAgICAgLnBpa2EtbmV4dCB7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgIG91dGxpbmU6IG5vbmU7XG4gICAgICAgICAgICBib3JkZXI6IDA7XG4gICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgICAgd2lkdGg6IDIwcHg7XG4gICAgICAgICAgICBoZWlnaHQ6IDMwcHg7XG4gICAgICAgICAgICB0ZXh0LWluZGVudDogMjBweDsgLyogaGlkZSB0ZXh0IHVzaW5nIHRleHQtaW5kZW50IHRyaWNrLCB1c2luZyB3aWR0aCB2YWx1ZSAoaXQncyBlbm91Z2gpICovXG4gICAgICAgICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIGNlbnRlcjtcbiAgICAgICAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IDc1JSA3NSU7XG4gICAgICAgICAgICBvcGFjaXR5OiAuNTtcbiAgICAgICAgICAgICpwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAqdG9wOiAwO1xuICAgICAgICAgICAgdHJhbnNpdGlvbjogYWxsIC4xNXMgZWFzZS1pbi1vdXQ7XG5cbiAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICYuaXMtZGlzYWJsZWQge1xuICAgICAgICAgICAgICAgIGN1cnNvcjogbm90LWFsbG93ZWQ7XG4gICAgICAgICAgICAgICAgb3BhY2l0eTogLjI7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAucGlrYS1wcmV2LFxuICAgICAgICAuaXMtcnRsIC5waWthLW5leHQge1xuICAgICAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJ2RhdGE6aW1hZ2UvcG5nO2Jhc2U2NCxpVkJPUncwS0dnb0FBQUFOU1VoRVVnQUFBQlFBQUFBZUNBWUFBQUFzRWo1ckFBQUFVa2xFUVZSNDJ1M1ZNUW9BSUJBRFFmOFBnaitPRDloRzJDdE9OSkIyeW1Ra0tlMEhid0FQMHh1Y0RpUVdBUklUSURFQkVuTWdNUThTOCtBcUJJbDZrS2dIaVhxUXFBZUplcEJvL3ozOEovVTB1QUhsYUJrQmw5STRHd0FBQUFCSlJVNUVya0pnZ2c9PScpO1xuICAgICAgICAgICAgKmxlZnQ6IDA7XG4gICAgICAgIH1cblxuICAgICAgICAucGlrYS1uZXh0LFxuICAgICAgICAuaXMtcnRsIC5waWthLXByZXYge1xuICAgICAgICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCdkYXRhOmltYWdlL3BuZztiYXNlNjQsaVZCT1J3MEtHZ29BQUFBTlNVaEVVZ0FBQUJRQUFBQWVDQVlBQUFBc0VqNXJBQUFBVTBsRVFWUjQydTNWT3dvQU1BZ0UwZHdmQW5OalUyNmJZa0JDRkd3ZmlMOVZWV29PK0JKNEdmM2d0c0VLS29GQk5UQ29DQVlWd2FBaUdOUUdNVUhNa2pHYmdqazJtSU9OdVhvMG5DOFhuQ2YxSlhnQXJWSVpBUWg1VEtZQUFBQUFTVVZPUks1Q1lJST0nKTtcbiAgICAgICAgICAgICpyaWdodDogMDtcbiAgICAgICAgfVxuXG4gICAgICAgIC5waWthLXRhYmxlIHtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgYm9yZGVyLWNvbGxhcHNlOiBjb2xsYXBzZTtcbiAgICAgICAgICAgIGJvcmRlci1zcGFjaW5nOiAwO1xuICAgICAgICAgICAgYm9yZGVyOiAwO1xuXG4gICAgICAgICAgICB0aCxcbiAgICAgICAgICAgIHRkIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogMTQuMjg1NzE0Mjg1NzE0Mjg2JTtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICB0aCB7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogMCAwIDEwcHg7XG4gICAgICAgICAgICAgICAgY29sb3I6ICRjb2wtdGV4dC1saWdodDtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDEycHg7XG4gICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDI1cHg7XG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGFiYnIge1xuICAgICAgICAgICAgICAgIGN1cnNvcjogZGVmYXVsdDtcbiAgICAgICAgICAgICAgICBib3JkZXI6IDA7XG4gICAgICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICB0ZCB7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogMXB4O1xuXG4gICAgICAgICAgICAgICAgLy8gd2Vla2VuZCBoaWdobGlnaHRpbmcgLSBpZiB3ZWVrbnVtYmVycyBhcmUgc2hvd24sIHVwZGF0ZSB0aGVzZSB2YWx1ZXMgKDEgJiA3LCB3aXRoIHdlZWtubyAyICYgOClcbiAgICAgICAgICAgICAgICAmOm50aC1jaGlsZCgxKSxcbiAgICAgICAgICAgICAgICAmOm50aC1jaGlsZCg3KSB7XG5cbiAgICAgICAgICAgICAgICAgICAgLnBpa2EtYnV0dG9uIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRpbnQoICRjb2wtcHJpbSwgODUlICk7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogJGNvbC1wcmltO1xuICAgICAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDkwMDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICYuaXMtdG9kYXkge1xuXG4gICAgICAgICAgICAgICAgICAgIC5waWthLWJ1dHRvbiB7XG4gICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiAjZmZmO1xuICAgICAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDkwMDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICYuaXMtc2VsZWN0ZWQge1xuXG4gICAgICAgICAgICAgICAgICAgIC5waWthLWJ1dHRvbiB7XG4gICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiAkY29sLXByaW07XG4gICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogI2ZmZjtcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA5MDA7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6ICRjb2wtcHJpbTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICYuaXMtaW5yYW5nZSB7XG5cbiAgICAgICAgICAgICAgICAgICAgLnBpa2EtYnV0dG9uIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IHRpbnQoICRjb2wtcHJpbSwgMjAlICk7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogI2ZmZjtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICYuaXMtc3RhcnRyYW5nZSxcbiAgICAgICAgICAgICAgICAmLmlzLWVuZHJhbmdlIHtcblxuICAgICAgICAgICAgICAgICAgICAucGlrYS1idXR0b24ge1xuICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogJGNvbC1wcmltO1xuICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6ICNmZmY7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAmLmlzLWRpc2FibGVkLFxuICAgICAgICAgICAgICAgICYuaXMtb3V0c2lkZS1jdXJyZW50LW1vbnRoIHtcblxuICAgICAgICAgICAgICAgICAgICAmLmlzLXN0YXJ0cmFuZ2UsXG4gICAgICAgICAgICAgICAgICAgICYuaXMtZW5kcmFuZ2Uge1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAucGlrYS1idXR0b24ge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6ICRjb2wtcHJpbTsgLy8gZGF0ZSBpcyBkaXNhYmxlZCwgYnV0IGlzIHN0YXJ0IG9yIGVuZCBvZiBzZWxlY3RlZCByYW5nZVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAmLmlzLWlucmFuZ2Uge1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAucGlrYS1idXR0b24ge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IHRpbnQoICRjb2wtcHJpbSwgMjAlICk7IC8vIGRhdGUgaXMgZGlzYWJsZWQsIGJ1dCBpcyBpbnJhbmdlXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6ICNmZmY7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICYuaXMtdG9kYXkge1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAucGlrYS1idXR0b24ge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6ICNmZmY7IC8vIGRhdGUgaXMgZGlzYWJsZWQsIGJ1dCBpcyBoaWdobGlnaHRlZCBhcyB0b2RheVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkY29sLXByaW07XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDkwMDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgLnBpa2EtYnV0dG9uIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogdGludCggJGNvbC1wcmltLCA5Ny41JSApO1xuICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRjb2wtdGV4dC14LWxpZ2h0O1xuICAgICAgICAgICAgICAgICAgICAgICAgY3Vyc29yOiBkZWZhdWx0O1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgLnBpa2EtYnV0dG9uIHtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgICAgICAgICAgICAgICAgIC1tb3otYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICAgICAgICAgICAgICAgICAgb3V0bGluZTogbm9uZTtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDEycHggNnB4O1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICAgICAgICAgIGJvcmRlcjogMDtcbiAgICAgICAgICAgICAgICAgICAgLy8gYm9yZGVyLXJhZGl1czogM3B4O1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0aW50KCAkY29sLXByaW0sIDkwJSApO1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogJGNvbC1wcmltO1xuICAgICAgICAgICAgICAgICAgICBmb250LWZhbWlseTogaW5oZXJpdDtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAuODc1ZW07XG4gICAgICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxZW07XG4gICAgICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiBhbGwgLjE1cyBlYXNlLWluLW91dDtcblxuICAgICAgICAgICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6ICRjb2wtcHJpbTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAucGlrYS13ZWVrIHtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IC43NWVtO1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkY29sLXRleHQtbGlnaHQ7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59IiwiLypcbj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICAgQmFzZSBzdHlsZXNcbj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4qL1xuXG4qIHtcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94ICFpbXBvcnRhbnQ7XG4gICAgcGFkZGluZzogMHB4O1xuICAgIG1hcmdpbjogMHB4O1xufVxuXG4qOmZvY3VzIHtcbiAgICBvdXRsaW5lOiBub25lICFpbXBvcnRhbnQ7XG59XG5cbmh0bWwge1xuICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1iYXNlO1xuICAgIC13ZWJraXQtdGV4dC1zaXplLWFkanVzdDogMTAwJTsgLy8gcHJldmVudCBpT1MgZnJvbSBhZGp1c3RpbmcgZm9udC1zaXplcyB3aGVuIGNoYW5naW5nIG9yaWVudGF0aW9uXG59XG5cbmJvZHkge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBhbGlnbi1pdGVtczogc3RyZXRjaDtcbiAgICBwYWRkaW5nOiAwO1xuICAgIG1hcmdpbjogMDtcbiAgICBiYWNrZ3JvdW5kOiAkY29sLWJvZHktYmc7XG4gICAgZm9udC1mYW1pbHk6ICRmb250LXByaW07XG4gICAgZm9udC1zaXplOiAxZW07XG4gICAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG4gICAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcbiAgICB0ZXh0LXJlbmRlcmluZzogb3B0aW1pemVMZWdpYmlsaXR5O1xufVxuXG5hLFxuaW1nLFxuYSBpbWcge1xuICAgIGJvcmRlcjogbm9uZTtcbn1cblxuYSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHRvcDogMDtcbiAgICBjb2xvcjogJGNvbC1wcmltO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICB0cmFuc2l0aW9uOiBhbGwgLjE1cyBlYXNlLWluLW91dCwgdG9wIDBzO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcblxuICAgICY6aG92ZXIsXG4gICAgJjpmb2N1cyB7XG4gICAgICAgIGNvbG9yOiAkY29sLXRleHQ7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICAgIH1cblxuICAgICY6YWN0aXZlIHtcbiAgICAgICAgdG9wOiAxcHg7XG4gICAgfVxufVxuXG5idXR0b24ge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB0b3A6IDA7XG4gICAgdHJhbnNpdGlvbjogYWxsIC4xNXMgZWFzZS1pbi1vdXQsIHRvcCAwcztcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG5cbiAgICAmOmFjdGl2ZSB7XG4gICAgICAgIHRvcDogMXB4O1xuICAgIH1cbn1cblxuYSxcbmJ1dHRvbiB7XG5cbiAgICAuZmEtYXJyb3ctbGVmdCxcbiAgICAuZmEtYXJyb3ctcmlnaHQge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAuMTVzIGVhc2UtaW4tb3V0O1xuICAgICAgICB3aWxsLWNoYW5nZTogdHJhbnNmb3JtO1xuICAgIH1cblxuICAgICY6aG92ZXIsXG4gICAgJjpmb2N1cyB7XG5cbiAgICAgICAgLmZhLWFycm93LWxlZnQge1xuICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtLjI1ZW0sIDAsIDApO1xuICAgICAgICB9XG5cbiAgICAgICAgLmZhLWFycm93LXJpZ2h0IHtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLjI1ZW0sIDAsIDApO1xuICAgICAgICB9XG4gICAgfVxufVxuXG5wIHtcbiAgICBkaXNwbGF5OiBibG9jazsgLy8gbGVhdmUgdGhpcyBmb3IgaW5saW5lIGVsZW1lbnRzIChsaWtlIHNwYW4pIGV4dGVuZGluZyBwXG4gICAgY29sb3I6ICRjb2wtdGV4dDtcbiAgICBmb250LXNpemU6IDFlbTtcbiAgICBsaW5lLWhlaWdodDogMS42MThlbTsgLy8gdGhlIGdvbGRlbiByYXRpb1xuXG4gICAgJi5jYXB0aW9uIHtcbiAgICAgICAgY29sb3I6ICM5OTk7XG4gICAgICAgIGZvbnQtc2l6ZTogLjg3NWVtO1xuICAgIH1cbn1cblxuaHIge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGNsZWFyOiBib3RoO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1hcmdpbjogMjBweCBhdXRvO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgaGVpZ2h0OiAwO1xuICAgIGJvcmRlcjogMDtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgJGNvbC1ncmV5O1xufVxuXG5oMSxcbmgyLFxuaDMsXG5oNCxcbmg1LFxuaDYge1xuICAgIHBhZGRpbmc6IDA7XG4gICAgbWFyZ2luOiAwO1xuICAgIGZvbnQtZmFtaWx5OiAkZm9udC1zZWM7XG4gICAgY29sb3I6ICRjb2wtdGV4dC1kYXJrO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjNlbTtcbn1cblxuLmNsZWFyIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMTAwJTtcbiAgICBjbGVhcjogYm90aDtcbiAgICBoZWlnaHQ6IDBweDtcbn1cblxuLnRleHQtbGVmdCB7XG4gICAgdGV4dC1hbGlnbjogbGVmdDtcbn1cblxuLnRleHQtcmlnaHQge1xuICAgIHRleHQtYWxpZ246IHJpZ2h0O1xufVxuXG4udGV4dC1jZW50ZXIge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuLnRleHQtanVzdGlmeSB7XG4gICAgdGV4dC1hbGlnbjoganVzdGlmeTtcbn1cblxuLnRleHQtbm93cmFwIHtcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG59XG5cbi5pbWctcmVzcG9uc2l2ZSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogYXV0bztcbn1cblxuLmltZy13aWRlIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IGF1dG87XG59XG5cbi5jb250YWluZXIge30gLy8gdXNpbmcgQm9vdHN0cmFwIGRlZmF1bHQgLmNvbnRhaW5lciBzdHlsaW5nXG5cbi5pY29uLWxlZnQge1xuICAgIG1hcmdpbi1yaWdodDogLjVlbTtcbn1cblxuLmljb24tcmlnaHQge1xuICAgIG1hcmdpbi1sZWZ0OiAuNWVtO1xufVxuXG4uaWNvbi1jZW50ZXIge1xuICAgIG1hcmdpbjogMCAuNWVtO1xufVxuXG4uaWNvbi1saWdodCB7XG4gICAgb3BhY2l0eTogLjU7XG59XG5cbi5zcGFjZXIge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGNsZWFyOiBib3RoO1xuICAgIHdpZHRoOiAxMDAlO1xuXG4gICAgJi5zcGFjZXIxMCB7XG4gICAgICAgIGhlaWdodDogMTBweDtcbiAgICB9XG5cbiAgICAmLnNwYWNlcjIwIHtcbiAgICAgICAgaGVpZ2h0OiAyMHB4O1xuICAgIH1cblxuICAgICYuc3BhY2VyMzAge1xuICAgICAgICBoZWlnaHQ6IDMwcHg7XG4gICAgfVxuXG4gICAgJi5zcGFjZXI0MCB7XG4gICAgICAgIGhlaWdodDogNDBweDtcbiAgICB9XG5cbiAgICAmLnNwYWNlcjUwIHtcbiAgICAgICAgaGVpZ2h0OiA1MHB4O1xuICAgIH1cblxuICAgICYuc3BhY2VyMTAwIHtcbiAgICAgICAgaGVpZ2h0OiAxMDBweDtcbiAgICB9XG5cbiAgICAmLnNwYWNlcjI1MCB7XG4gICAgICAgIGhlaWdodDogMjUwcHg7XG4gICAgfVxuXG4gICAgJi5zcGFjZXI1MDAge1xuICAgICAgICBoZWlnaHQ6IDUwMHB4O1xuICAgIH1cblxuICAgICYuc3BhY2VyMTAwMCB7XG4gICAgICAgIGhlaWdodDogMTAwMHB4O1xuICAgIH1cbn1cblxuLm1hcmdpbiB7XG4gICAgbWFyZ2luOiAyZW0gMDtcbiAgICBAaW5jbHVkZSBmbGV4bWFyZ2luO1xuXG4gICAgJi10b3Age1xuICAgICAgICBtYXJnaW4tdG9wOiAyZW07XG4gICAgfVxuXG4gICAgJi1ib3R0b20ge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAyZW07XG4gICAgfVxuXG4gICAgJi5tYXJnaW4tLXNtYWxsIHtcbiAgICAgICAgbWFyZ2luOiAxZW0gMDtcbiAgICAgICAgQGluY2x1ZGUgZmxleG1hcmdpbjtcblxuICAgICAgICAmLXRvcCB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAxZW07XG4gICAgICAgIH1cblxuICAgICAgICAmLWJvdHRvbSB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxZW07XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5ub21hcmdpbiB7XG4gICAgbWFyZ2luOiAwICFpbXBvcnRhbnQ7XG5cbiAgICAmLS10b3Age1xuICAgICAgICBtYXJnaW4tdG9wOiAwICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgJi0tYm90dG9tIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMCAhaW1wb3J0YW50O1xuICAgIH1cbn1cblxuLm5vcGFkZGluZyB7XG4gICAgcGFkZGluZzogMCAhaW1wb3J0YW50O1xuXG4gICAgJi0tdG9wIHtcbiAgICAgICAgcGFkZGluZy10b3A6IDAgIWltcG9ydGFudDtcbiAgICB9XG5cbiAgICAmLS1ib3R0b20ge1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogMCAhaW1wb3J0YW50O1xuICAgIH1cbn1cblxuLmNvbC1zdWNjZXNzIHtcbiAgICBjb2xvcjogJGNvbC1zdWNjZXNzO1xufVxuXG4uY29sLXdhcm5pbmcge1xuICAgIGNvbG9yOiAkY29sLXdhcm5pbmc7XG59XG5cbi5jb2wtZXJyb3Ige1xuICAgIGNvbG9yOiAkY29sLWVycm9yO1xufVxuXG4uc2xpY2stbGlzdCxcbi5zbGljay10cmFjayB7XG4gICAgaGVpZ2h0OiAxMDAlO1xufVxuXG4uZGlzcGxheS1mbGV4IHtcbiAgICBkaXNwbGF5OiBmbGV4O1xufVxuXG4uZGlzcGxheS1ibG9jayB7XG4gICAgZGlzcGxheTogYmxvY2s7XG59XG5cbi5kaXNwbGF5LWlubGluZSB7XG4gICAgZGlzcGxheTogaW5saW5lO1xufVxuXG4uZGlzcGxheS1pbmxpbmUtYmxvY2sge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbn1cblxuLmZsb2F0LWxlZnQge1xuICAgIGZsb2F0OiBsZWZ0O1xufVxuXG4uZmxvYXQtcmlnaHQge1xuICAgIGZsb2F0OiByaWdodDtcbn1cblxuLmNsZWFyLWJlZm9yZSB7XG5cbiAgICAmOmJlZm9yZSB7XG4gICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICAgICAgY2xlYXI6IGJvdGg7XG4gICAgfVxufVxuXG4uY2xlYXItYWZ0ZXIge1xuXG4gICAgJjphZnRlciB7XG4gICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICAgICAgY2xlYXI6IGJvdGg7XG4gICAgfVxufVxuXG5tYXJrIHtcbiAgICBwYWRkaW5nOiAuMWVtIC4yNWVtO1xuICAgIGJvcmRlci1yYWRpdXM6IC41ZW07XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdGludCggJGNvbC1wcmltLCA4NSUgKTtcbiAgICBjb2xvcjogJGNvbC10ZXh0LWRhcms7XG59XG5cbi5pbnB1dC1zdHlsZS1yZXNldCB7XG4gICAgYXBwZWFyYW5jZTogbm9uZTtcbiAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgIGJvcmRlcjogMDtcbiAgICBiYWNrZ3JvdW5kOiBub25lO1xuICAgIGZvbnQtZmFtaWx5OiBpbmhlcml0O1xufVxuXG4ucG9zaXRpb24tc3RhdGljIHtcbiAgICBwb3NpdGlvbjogc3RhdGljO1xufVxuXG4ucG9zaXRpb24tcmVsYXRpdmUge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLnBvc2l0aW9uLWFic29sdXRlIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG59XG5cbi5mbGV4LXdyYXBwZXIge1xuICAgIGRpc3BsYXk6IGZsZXg7XG5cbiAgICAmLmRpcmVjdGlvbi1yb3cge1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgIH1cblxuICAgICYuZGlyZWN0aW9uLXJvdy1yZXZlcnNlIHtcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IHJvdy1yZXZlcnNlO1xuICAgIH1cblxuICAgICYuZGlyZWN0aW9uLWNvbHVtbiB7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgfVxuXG4gICAgJi5kaXJlY3Rpb24tY29sdW1uLXJldmVyc2Uge1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uLXJldmVyc2U7XG4gICAgfVxuXG4gICAgJi5mbGV4LXdyYXAge1xuICAgICAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgfVxuXG4gICAgJi5hbGlnbi1zdGFydCB7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICAgIH1cblxuICAgICYuYWxpZ24tY2VudGVyIHtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICB9XG5cbiAgICAmLmFsaWduLWVuZCB7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LWVuZDtcbiAgICB9XG5cbiAgICAmLmFsaWduLXN0cmV0Y2gge1xuICAgICAgICBhbGlnbi1pdGVtczogc3RyZXRjaDtcbiAgICB9XG5cbiAgICAmLmFsaWduLWJldHdlZW4ge1xuICAgICAgICBhbGlnbi1pdGVtczogc3BhY2UtYmV0d2VlbjtcbiAgICB9XG5cbiAgICAmLmFsaWduLWFyb3VuZCB7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBzcGFjZS1hcm91bmQ7XG4gICAgfVxuXG4gICAgJi5qdXN0aWZ5LXN0YXJ0IHtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICAgIH1cblxuICAgICYuanVzdGlmeS1jZW50ZXIge1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICB9XG5cbiAgICAmLmp1c3RpZnktZW5kIHtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcbiAgICB9XG5cbiAgICAmLmp1c3RpZnktYmV0d2VlbiB7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICB9XG5cbiAgICAmLmp1c3RpZnktYXJvdW5kIHtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1hcm91bmQ7XG4gICAgfVxufVxuXG4uZmxleC1zcGFjZXIsXG4uZmxleC1ncm93IHtcbiAgICBmbGV4LWdyb3c6IDE7XG59XG5cbi5mbGV4LXNocmluayB7XG4gICAgZmxleC1zaHJpbms6IDE7XG59XG5cbjo6c2VsZWN0aW9uIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGNvbC1zZWM7XG4gIGNvbG9yOiAjZmZmO1xufVxuXG4uaGlkZGVuIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG59XG5cbi5uYXJyb3cge1xuICAgIG1heC13aWR0aDogOTAwcHggIWltcG9ydGFudDtcbn1cblxuLmNlbnRlcmVkIHtcbiAgICBtYXJnaW4tbGVmdDogYXV0byAhaW1wb3J0YW50O1xuICAgIG1hcmdpbi1yaWdodDogYXV0byAhaW1wb3J0YW50O1xufVxuXG4uY29sLXByaW0ge1xuICAgIGNvbG9yOiAkY29sLXByaW0gIWltcG9ydGFudDtcbn1cblxuLmNvbC1zZWMge1xuICAgIGNvbG9yOiAkY29sLXNlYyAhaW1wb3J0YW50O1xufVxuXG4uY29sLXRlcnQge1xuICAgIGNvbG9yOiAkY29sLXRlcnQgIWltcG9ydGFudDtcbn0iLCIvKlxuPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgICBGb250IEZhY2Vcbj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4qL1xuXG5AZm9udC1mYWNlIHtcbiAgICBmb250LWZhbWlseTogJ0NhcHR1cmEnO1xuICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgIHNyYzogdXJsKCcjeyRmb250LXBhdGh9L2NhcHR1cmEvY2FwdHVyYS1yZWd1bGFyLndvZmYyJykgZm9ybWF0KCd3b2ZmMicpLFxuICAgICAgICB1cmwoJyN7JGZvbnQtcGF0aH0vY2FwdHVyYS9jYXB0dXJhLXJlZ3VsYXIud29mZicpIGZvcm1hdCgnd29mZicpLFxuICAgICAgICB1cmwoJyN7JGZvbnQtcGF0aH0vY2FwdHVyYS9jYXB0dXJhLXJlZ3VsYXIub3RmJykgZm9ybWF0KFwib3BlbnR5cGVcIik7XG59XG5cbkBmb250LWZhY2Uge1xuICAgIGZvbnQtZmFtaWx5OiAnQ2FwdHVyYSc7XG4gICAgZm9udC1zdHlsZTogbm9ybWFsO1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgIHNyYzogdXJsKCcjeyRmb250LXBhdGh9L2NhcHR1cmEvY2FwdHVyYS1ibGFjay53b2ZmMicpIGZvcm1hdCgnd29mZjInKSxcbiAgICAgICAgdXJsKCcjeyRmb250LXBhdGh9L2NhcHR1cmEvY2FwdHVyYS1ibGFjay53b2ZmJykgZm9ybWF0KCd3b2ZmJyksXG4gICAgICAgIHVybCgnI3skZm9udC1wYXRofS9jYXB0dXJhL2NhcHR1cmEtYmxhY2sub3RmJykgZm9ybWF0KFwib3BlbnR5cGVcIik7XG59IiwiLypcbj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cdEFuaW1hdGlvbnNcbiAgICBHcmVhdCBDU1MgYW5pbWF0aW9uIHJlc291cmNlOiBodHRwOi8vYW5pbWlzdGEubmV0XG5cbiAgICBBbmltYXRlIElOXG49PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuKi9cblxuQGtleWZyYW1lcyBmYWRlLWluIHtcbiAgICAwJSB7XG4gICAgICAgIG9wYWNpdHk6IDA7XG4gICAgfVxuICAgIDEwMCUge1xuICAgICAgICBvcGFjaXR5OiAxO1xuICAgIH1cbn1cblxuQGtleWZyYW1lcyBmYWRlLWluLXVwIHtcbiAgICAwJSB7XG4gICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMTB2aCwgMCk7XG4gICAgfVxuICAgIDEwMCUge1xuICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICAgIH1cbn1cblxuQGtleWZyYW1lcyBmYWRlLWluLWRvd24ge1xuICAgIDAlIHtcbiAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMTB2aCwgMCk7XG4gICAgfVxuICAgIDEwMCUge1xuICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICAgIH1cbn1cblxuQGtleWZyYW1lcyBmYWRlLWluLWxlZnQge1xuICAgIDAlIHtcbiAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgxMHZ3LCAwLCAwKTtcbiAgICB9XG4gICAgMTAwJSB7XG4gICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gICAgfVxufVxuXG5Aa2V5ZnJhbWVzIGZhZGUtaW4tcmlnaHQge1xuICAgIDAlIHtcbiAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMTB2dywgMCwgMCk7XG4gICAgfVxuICAgIDEwMCUge1xuICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICAgIH1cbn1cblxuQGtleWZyYW1lcyBmYWRlLWluLXNjYWxlLWRvd24ge1xuICAgIDAlIHtcbiAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxLjUpO1xuICAgIH1cbiAgICAxMDAlIHtcbiAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxKTtcbiAgICB9XG59XG5cbkBrZXlmcmFtZXMgZmFkZS1pbi1zY2FsZS11cCB7XG4gICAgMCUge1xuICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKC41KTtcbiAgICB9XG4gICAgMTAwJSB7XG4gICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7XG4gICAgfVxufVxuXG4vKlxuPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgICBBbmltYXRlIE9VVFxuPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiovXG5cbkBrZXlmcmFtZXMgZmFkZS1vdXQge1xuICAgIDAlIHtcbiAgICAgICAgb3BhY2l0eTogMTtcbiAgICB9XG4gICAgMTAwJSB7XG4gICAgICAgIG9wYWNpdHk6IDA7XG4gICAgfVxufVxuXG5Aa2V5ZnJhbWVzIGZhZGUtb3V0LXVwIHtcbiAgICAwJSB7XG4gICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gICAgfVxuICAgIDEwMCUge1xuICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0xMHZoLCAwKTtcbiAgICB9XG59XG5cbkBrZXlmcmFtZXMgZmFkZS1vdXQtZG93biB7XG4gICAgMCUge1xuICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICAgIH1cbiAgICAxMDAlIHtcbiAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAxMHZoLCAwKTtcbiAgICB9XG59XG5cbkBrZXlmcmFtZXMgZmFkZS1vdXQtbGVmdCB7XG4gICAgMCUge1xuICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICAgIH1cbiAgICAxMDAlIHtcbiAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMTB2dywgMCwgMCk7XG4gICAgfVxufVxuXG5Aa2V5ZnJhbWVzIGZhZGUtb3V0LXJpZ2h0IHtcbiAgICAwJSB7XG4gICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gICAgfVxuICAgIDEwMCUge1xuICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDEwdncsIDAsIDApO1xuICAgIH1cbn1cblxuQGtleWZyYW1lcyBmYWRlLW91dC1zY2FsZS1kb3duIHtcbiAgICAwJSB7XG4gICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7XG4gICAgfVxuICAgIDEwMCUge1xuICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKC41KTtcbiAgICB9XG59XG5cbkBrZXlmcmFtZXMgZmFkZS1vdXQtc2NhbGUtdXAge1xuICAgIDAlIHtcbiAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxKTtcbiAgICB9XG4gICAgMTAwJSB7XG4gICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMS41KTtcbiAgICB9XG59XG5cbi8qXG49PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgIFJvdGF0aW9uXG49PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuKi9cblxuQGtleWZyYW1lcyByb3RhdGUtOTAtY2xvY2t3aXNlIHtcbiAgICAwJSB7XG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDBkZWcpO1xuICAgIH1cbiAgICAxMDAlIHtcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoOTBkZWcpO1xuICAgIH1cbn1cblxuQGtleWZyYW1lcyByb3RhdGUtOTAtY291bnRlci1jbG9ja3dpc2Uge1xuICAgIDAlIHtcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7XG4gICAgfVxuICAgIDEwMCUge1xuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtOTBkZWcpO1xuICAgIH1cbn1cblxuQGtleWZyYW1lcyByb3RhdGUtMTgwLWNsb2Nrd2lzZSB7XG4gICAgMCUge1xuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTtcbiAgICB9XG4gICAgMTAwJSB7XG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDE4MGRlZyk7XG4gICAgfVxufVxuXG5Aa2V5ZnJhbWVzIHJvdGF0ZS0xODAtY291bnRlci1jbG9ja3dpc2Uge1xuICAgIDAlIHtcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7XG4gICAgfVxuICAgIDEwMCUge1xuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtMTgwZGVnKTtcbiAgICB9XG59XG5cbkBrZXlmcmFtZXMgcm90YXRlLTM2MC1jbG9ja3dpc2Uge1xuICAgIDAlIHtcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7XG4gICAgfVxuICAgIDEwMCUge1xuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpO1xuICAgIH1cbn1cblxuQGtleWZyYW1lcyByb3RhdGUtMzYwLWNvdW50ZXItY2xvY2t3aXNlIHtcbiAgICAwJSB7XG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDBkZWcpO1xuICAgIH1cbiAgICAxMDAlIHtcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoLTM2MGRlZyk7XG4gICAgfVxufSIsIi8qKlxuICogQ3VzdG9tIGdyaWQgc3lzdGVtXG4qKi9cblxuLmNvbnRhaW5lciB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgcGFkZGluZy1yaWdodDogMTVweDtcbiAgICBwYWRkaW5nLWxlZnQ6IDE1cHg7XG4gICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuXG4gICAgJi5jb250YWluZXItLWZsdWlkIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgfVxuXG4gICAgJi5jb250YWluZXItLW5hcnJvdyB7XG4gICAgICAgIG1heC13aWR0aDogOTkxcHg7XG4gICAgfVxufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNTc2cHgpIHtcblxuICAgIC8vLmNvbnRhaW5lciB7XG4gICAgLy8gICAgd2lkdGg6IDU0MHB4O1xuICAgIC8vfVxuXG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuXG4gICAgLmNvbnRhaW5lciB7XG4gICAgICAgIHdpZHRoOiA3MjBweDtcbiAgICB9XG5cbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7XG5cbiAgICAuY29udGFpbmVyIHtcbiAgICAgICAgd2lkdGg6IDk2MHB4O1xuICAgIH1cblxufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogMTIwMHB4KSB7XG5cbiAgICAuY29udGFpbmVyIHtcbiAgICAgICAgd2lkdGg6IDExNDBweDtcbiAgICB9XG5cbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDE0MDBweCkge1xuXG4gICAgLmNvbnRhaW5lciB7XG4gICAgICAgIHdpZHRoOiAxMzYwcHg7XG4gICAgfVxuXG59IiwiLypcbj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICAgLmNvbnRlbnQtd3JhcHBlciBzdHlsZXNcbj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4qL1xuXG4uY29udGVudCB7XG5cbiAgICAmLmNvbnRlbnQtLWludmVydGVkIHtcbiAgICAgICAgY29sb3I6ICNmZmY7XG5cbiAgICAgICAgKiB7XG4gICAgICAgICAgICBjb2xvcjogaW5oZXJpdDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICYuY29udGVudC0tY29sdW1ucyB7XG4gICAgICAgIGNvbHVtbi1jb3VudDogMjtcbiAgICAgICAgY29sdW1uLWdhcDogNjBweDtcbiAgICB9XG5cbiAgICAmLmNvbnRlbnQtLWxhcmdlIHtcbiAgICAgICAgZm9udC1zaXplOiAxLjEyNWVtO1xuICAgIH1cblxuICAgICYuY29udGVudC0tc21hbGwge1xuICAgICAgICBmb250LXNpemU6IC44NzVlbTtcbiAgICB9XG5cbiAgICAmLmNvbnRlbnQtLWxpZ2h0IHtcbiAgICAgICAgb3BhY2l0eTogLjU7XG5cbiAgICAgICAgKiB7XG4gICAgICAgICAgICBjb2xvcjogJGNvbC10ZXh0LWRhcms7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmLmNvbnRlbnQtLW1hcmdpbiB7XG4gICAgICAgIG1hcmdpbjogMS41ZW0gMDtcbiAgICAgICAgQGluY2x1ZGUgZmxleG1hcmdpbjtcbiAgICB9XG5cbiAgICAud3AtY2FwdGlvbiAge1xuICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgICAgIG1hcmdpbjogMmVtIGF1dG87XG5cbiAgICAgICAgJi5hbGlnbmxlZnQge1xuICAgICAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgICAgICBtYXJnaW46IDJlbSAyLjVlbSAyZW0gMDtcbiAgICAgICAgfVxuXG4gICAgICAgICYuYWxpZ25yaWdodCB7XG4gICAgICAgICAgICBmbG9hdDogcmlnaHQ7XG4gICAgICAgICAgICBtYXJnaW46IDJlbSAwIDJlbSAyLjVlbTtcbiAgICAgICAgfVxuXG4gICAgICAgICYuYWxpZ25jZW50ZXIge1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICBtYXJnaW46IDJlbSBhdXRvO1xuICAgICAgICB9XG5cbiAgICAgICAgQGluY2x1ZGUgZmxleG1hcmdpbjtcblxuICAgICAgICAud3AtY2FwdGlvbi10ZXh0IHtcbiAgICAgICAgICAgIG1hcmdpbjogMWVtIDAgMDtcbiAgICAgICAgICAgIGNvbG9yOiAkY29sLXRleHQ7XG4gICAgICAgICAgICBmb250LXNpemU6IC44NzVlbTtcbiAgICAgICAgICAgIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgICAgICAgfVxuICAgIH1cblxuICAgIGltZyB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgYm9yZGVyLXJhZGl1czogLjI1ZW07XG5cbiAgICAgICAgJi5hbGlnbm5vbmUge1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICBtYXJnaW46IDJlbSBhdXRvO1xuICAgICAgICB9XG5cbiAgICAgICAgJi5hbGlnbmxlZnQge1xuICAgICAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgICAgICBtYXJnaW46IDJlbSAyLjVlbSAyZW0gMDtcbiAgICAgICAgfVxuXG4gICAgICAgICYuYWxpZ25yaWdodCB7XG4gICAgICAgICAgICBmbG9hdDogcmlnaHQ7XG4gICAgICAgICAgICBtYXJnaW46IDJlbSAwIDJlbSAyLjVlbTtcbiAgICAgICAgfVxuXG4gICAgICAgICYuYWxpZ25jZW50ZXIge1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICBtYXJnaW46IDJlbSBhdXRvO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgaDEsXG4gICAgaDIsXG4gICAgaDMsXG4gICAgaDQsXG4gICAgaDUsXG4gICAgaDYge1xuICAgICAgICBjbGVhcjogYm90aDtcbiAgICAgICAgbWFyZ2luOiAxLjVlbSAwIC4yNWVtO1xuICAgICAgICBAaW5jbHVkZSBmbGV4bWFyZ2luO1xuXG4gICAgICAgICYgKyBwIHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IC43NWVtO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgaDEge1xuICAgICAgICBmb250LXNpemU6IDMuNWVtO1xuICAgIH1cblxuICAgIGgyIHtcbiAgICAgICAgZm9udC1zaXplOiAyZW07XG4gICAgfVxuXG4gICAgaDMge1xuICAgICAgICBmb250LXNpemU6IDEuNWVtO1xuICAgIH1cblxuICAgIGg0IHtcbiAgICAgICAgZm9udC1zaXplOiAxLjI1ZW07XG4gICAgfVxuXG4gICAgaDUge1xuICAgICAgICBmb250LXNpemU6IDEuMTI1ZW07XG4gICAgfVxuXG4gICAgaDYge1xuICAgICAgICBmb250LXNpemU6IDFlbTtcbiAgICB9XG5cbiAgICBwIHtcbiAgICAgICAgbWFyZ2luOiAxLjVlbSAwO1xuICAgICAgICBAaW5jbHVkZSBmbGV4bWFyZ2luO1xuICAgICAgICBsaW5lLWhlaWdodDogMS44ZW07IC8vIGhpZ2hlciBsaW5lLWhlaWdodCBmb3IgZXZlbiBiZXR0ZXIgcmVhZGFiaWxpdHkgaW4gbG9uZyB0ZXh0c1xuXG4gICAgICAgIGEge1xuICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG5cbiAgICAgICAgICAgICY6aG92ZXIsXG4gICAgICAgICAgICAmOmZvY3VzIHtcbiAgICAgICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuYnRuIHtcbiAgICAgICAgICAgIG1hcmdpbjogMTBweCA1cHggMDtcbiAgICAgICAgICAgIEBpbmNsdWRlIGZsZXhtYXJnaW4oaG9yaXpvbnRhbCk7XG5cbiAgICAgICAgICAgICYuYnRuLWZ1bGwge1xuICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICYuaW50cm8ge1xuICAgICAgICAgICAgY29sb3I6ICRjb2wtdGV4dC1tZWRpdW07XG4gICAgICAgICAgICBmb250LXNpemU6IDEuNWVtO1xuICAgICAgICB9XG5cbiAgICAgICAgJi5taWNybyB7XG4gICAgICAgICAgICBjb2xvcjogJGNvbC10ZXh0LWxpZ2h0O1xuICAgICAgICAgICAgZm9udC1zaXplOiAuNzVyZW07XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBociB7fVxuXG4gICAgdWwsXG4gICAgb2wge1xuICAgICAgICBtYXJnaW46IDJlbSAwIDJlbSAxLjVlbTtcbiAgICAgICAgQGluY2x1ZGUgZmxleG1hcmdpbjtcblxuICAgICAgICAmLmxpc3QtaWNvbnMge1xuICAgICAgICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiA0MHB4O1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcblxuICAgICAgICAgICAgbGkge1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICAgICAgICAgICAgIC5pdGVtLWljb24ge1xuICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgICAgIHRvcDogNTAlO1xuICAgICAgICAgICAgICAgICAgICByaWdodDogY2FsYyggMTAwJSArIDEwcHggKTtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDMwcHg7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IC0uNWVtO1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogJGNvbC1wcmltO1xuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDFyZW07XG4gICAgICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxZW07XG4gICAgICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmLmxpc3QtY2hlY2tlZCB7XG4gICAgICAgICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDQwcHg7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuXG4gICAgICAgICAgICBsaSB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgICAgICAgICAgICAgLml0ZW0taWNvbiB7XG4gICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICAgICAgdG9wOiBjYWxjKCAzcHggKyAuMjVyZW0pO1xuICAgICAgICAgICAgICAgICAgICByaWdodDogY2FsYyggMTAwJSArIDEwcHggKTtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDMwcHg7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkY29sLXByaW07XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICAgICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDFlbTtcbiAgICAgICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIGxpIHtcbiAgICAgICAgICAgIGNvbG9yOiAkY29sLXRleHQ7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMS41ZW07XG5cbiAgICAgICAgICAgICY6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IC41ZW07XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBibG9ja3F1b3RlIHtcbiAgICAgICAgbWF4LXdpZHRoOiA3MDBweDtcbiAgICAgICAgbWFyZ2luOiAyZW0gYXV0bztcbiAgICAgICAgQGluY2x1ZGUgZmxleG1hcmdpbjtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gICAgICAgIHAge1xuICAgICAgICAgICAgZm9udC1mYW1pbHk6ICRmb250LXNlYztcbiAgICAgICAgICAgIGNvbG9yOiAkY29sLXByaW07XG4gICAgICAgICAgICBmb250LXNpemU6IDEuNWVtO1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuNWVtO1xuICAgICAgICAgICAgZm9udC1zdHlsZTogaXRhbGljO1xuXG4gICAgICAgICAgICAmOmZpcnN0LWNoaWxkOmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgY29udGVudDogb3Blbi1xdW90ZTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJjpsYXN0LWNoaWxkOmFmdGVyIHtcbiAgICAgICAgICAgICAgICBjb250ZW50OiBjbG9zZS1xdW90ZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC50YWJsZS13cmFwcGVyIHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBtYXJnaW46IDJlbSAtMTVweDtcbiAgICAgICAgQGluY2x1ZGUgZmxleG1hcmdpbjtcbiAgICAgICAgb3ZlcmZsb3cteDogYXV0bztcbiAgICAgICAgcGFkZGluZzogMCAxNXB4O1xuICAgICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuXG4gICAgICAgICY6YWZ0ZXIgeyAvLyBzaW11bGF0aW5nIHJpZ2h0IHBhZGRpbmdcbiAgICAgICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICAgICAgbWluLXdpZHRoOiAxNXB4O1xuICAgICAgICB9XG5cbiAgICAgICAgJjo6LXdlYmtpdC1zY3JvbGxiYXIge1xuICAgICAgICAgICAgaGVpZ2h0OiAwO1xuICAgICAgICAgICAgd2lkdGg6IDA7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICB0YWJsZSB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBtYXJnaW46IDJlbSAwO1xuICAgICAgICBAaW5jbHVkZSBmbGV4bWFyZ2luO1xuICAgICAgICBib3JkZXItY29sbGFwc2U6IGNvbGxhcHNlO1xuICAgICAgICBjb2xvcjogJGNvbC10ZXh0O1xuICAgICAgICBmb250LXNpemU6IDFlbTtcblxuICAgICAgICB0aCxcbiAgICAgICAgdGQge1xuICAgICAgICAgICAgcGFkZGluZzogLjc1ZW07XG4gICAgICAgIH1cblxuICAgICAgICB0ciB7XG5cbiAgICAgICAgICAgICY6bnRoLWNoaWxkKG9kZCkge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoICMwMDAsIC4wMjUgKTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJjpub3QoOmxhc3QtY2hpbGQpIHtcblxuICAgICAgICAgICAgICAgIHRoLFxuICAgICAgICAgICAgICAgIHRkIHtcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkICRjb2wtZ3JleTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICB0aGVhZCB7fVxuXG4gICAgICAgIHRib2R5IHt9XG4gICAgfVxuXG4gICAgaWZyYW1lIHtcbiAgICAgICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgICAgICBtYXJnaW46IDNlbSAwO1xuICAgICAgICBAaW5jbHVkZSBmbGV4bWFyZ2luO1xuICAgIH1cblxuICAgIHByZSB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBtYXJnaW46IDJlbSAwO1xuICAgICAgICBAaW5jbHVkZSBmbGV4bWFyZ2luO1xuICAgICAgICBwYWRkaW5nOiAxZW0gMS41ZW07XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IC41ZW07XG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICRjb2wtZ3JleS1kYXJrO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sLWdyZXktbGlnaHQ7XG4gICAgICAgIGZvbnQtZmFtaWx5OiBtb25vc3BhY2U7XG4gICAgICAgIGNvbG9yOiAkY29sLXRleHQ7XG4gICAgICAgIGZvbnQtc2l6ZTogMWVtO1xuICAgICAgICBsaW5lLWhlaWdodDogMS41ZW07XG4gICAgICAgIHdoaXRlLXNwYWNlOiBub3JtYWw7XG4gICAgfVxuXG4gICAgLmNvbnRlbnQtaGlnaGxpZ2h0IHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIG1hcmdpbjogM2VtIC0xLjVlbTtcbiAgICAgICAgcGFkZGluZzogMS41ZW07XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IC41ZW07XG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkIHRpbnQoICRjb2wtcHJpbSwgNTAlICk7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRpbnQoICRjb2wtcHJpbSwgOTAlICk7XG4gICAgICAgIEBpbmNsdWRlIGZsZXhtYXJnaW47XG4gICAgICAgIGNvbG9yOiBzaGFkZSggJGNvbC1wcmltLCAyMCUgKTtcblxuICAgICAgICAqIHtcbiAgICAgICAgICAgIGNvbG9yOiBpbmhlcml0O1xuICAgICAgICB9XG4gICAgfVxufSIsIi8qXG49PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgIENvbXBvbmVudHNcbj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4qL1xuXG4vLyBtYWluIGNvbXBvbmVudHNcbkBpbXBvcnQgJ2NvbXBvbmVudHMvYmFzZSc7XG5AaW1wb3J0ICdjb21wb25lbnRzL21hc3RoZWFkJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvZm9vdGVyJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvZm9ybXMnO1xuQGltcG9ydCAnY29tcG9uZW50cy9maWx0ZXJzJztcblxuLy8gZGVmYXVsdCBjb21wb25lbnRzXG5AaW1wb3J0ICdjb21wb25lbnRzL21vZGFscyc7XG5AaW1wb3J0ICdjb21wb25lbnRzL3BvcG92ZXJzJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvdG9vbHRpcHMnO1xuQGltcG9ydCAnY29tcG9uZW50cy93aWRnZXRzJztcblxuLy8gY29tcG9uZW50c1xuQGltcG9ydCAnY29tcG9uZW50cy9idG5zJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvc2VjdGlvbnMnO1xuQGltcG9ydCAnY29tcG9uZW50cy9zZWN0aW9uLXRpdGxlJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvaGVybyc7XG5AaW1wb3J0ICdjb21wb25lbnRzL3RlYXNlcic7XG5AaW1wb3J0ICdjb21wb25lbnRzL2J1aWxkJztcblxuLy8gdGlsZS9ncmlkIGNvbXBvbmVudHNcbkBpbXBvcnQgJ2NvbXBvbmVudHMvdGlsZXMnO1xuIiwiLm5pdm8tbGlnaHRib3gtdGhlbWUtZGVmYXVsdCB7XG5cbiAgICAubml2by1saWdodGJveC1jbG9zZSB7XG4gICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcbiAgICB9XG59XG5cbi5yZXNwb25zaXZlLWVtYmVkLWNvbnRhaW5lciB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDA7XG4gICAgcGFkZGluZy1ib3R0b206IDU2LjI1JTsgLy8gMTY6OSBhc3BlY3QgcmF0aW9cbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIGJvcmRlci1yYWRpdXM6IDFlbTtcblxuICAgICYucmVzcG9uc2l2ZS1lbWJlZC1jb250YWluZXItLW1hcCB7XG4gICAgICAgIG1pbi1oZWlnaHQ6IDI1MHB4O1xuICAgIH1cblxuICAgICYucmVzcG9uc2l2ZS1lbWJlZC1jb250YWluZXItLW92ZXJmbG93LXZpc2libGUge1xuICAgICAgICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgICB9XG5cbiAgICBpZnJhbWUsXG4gICAgb2JqZWN0LFxuICAgIGVtYmVkIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgfVxufVxuXG4uY29udGFpbmVyID4gLnJlc3BvbnNpdmUtZW1iZWQtY29udGFpbmVyLFxuLmNvbnRhaW5lciA+IC5jb250ZW50ID4gLnJlc3BvbnNpdmUtZW1iZWQtY29udGFpbmVyIHtcbiAgICBib3gtc2hhZG93OiAwIC4xZW0gLjM1ZW0gcmdiYSgjMDAwLCAuMTI1KTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sLWdyZXk7XG5cbiAgICBpZnJhbWUsXG4gICAgb2JqZWN0LFxuICAgIGVtYmVkIHtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogaW5oZXJpdDtcbiAgICB9XG59XG5cbi8qIGhpZGUgc2xpY2sgc2xpZGVycyBvbiBwYWdlIGxvYWQsIHNob3cgd2hlbiBpbml0aWFsaXplZCAqL1xuLnNsaWNrLXNsaWRlciB7XG4gICAgZGlzcGxheTogbm9uZTtcblxuICAgICYuc2xpY2staW5pdGlhbGl6ZWQge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICB9XG59XG5cbi5wYWdlLXdyYXBwZXIge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xufVxuXG4ueW91dHViZS1idXR0b24ge1xuICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICB6LWluZGV4OiA1NTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB0b3A6IDJlbTtcbiAgICByaWdodDogMmVtO1xuXG4gICAgJjphY3RpdmUge1xuICAgICAgICB0b3A6IGNhbGMoMmVtICsgMXB4KTtcbiAgICB9XG5cbiAgICBpbWcge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgd2lkdGg6IE1pbig4ZW0sIDEwdncpO1xuICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgfVxufSIsIi8qXG49PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgIEhlYWRlclxuPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiovXG5cbi5tYXN0aGVhZCB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHotaW5kZXg6IDUwO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBwYWRkaW5nOiAyZW0gMDtcbiAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQodG8gYm90dG9tLCByZ2JhKCMwMDAsIC41KSwgcmdiYSgjMDAwLCAwKSk7XG5cbiAgICAmLm1hc3RoZWFkLS1uby1mYWRlIHtcbiAgICAgICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICB9XG5cbiAgICAmX19sb2dvIHtcbiAgICAgICAgd2lkdGg6IDhlbTtcblxuICAgICAgICBpbWcge1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgfVxuICAgIH1cbn0iLCIvKlxuPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblx0Rm9vdGVyXG49PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuKi9cblxuZm9vdGVyLnNpdGUtZm9vdGVyIHtcblxufSIsIi8qXG49PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXHRGb3JtcyAtIEJhc2UgZWxlbWVudCBzdHlsaW5nXG49PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuKi9cblxuLmNvbnRlbnQge1xuXG4gICAgZm9ybSB7XG5cbiAgICAgICAgaW5wdXQ6bm90KFt0eXBlPVwicmFkaW9cIl0pOm5vdChbdHlwZT1cImNoZWNrYm94XCJdKTpub3QoW3R5cGU9XCJmaWxlXCJdKTpub3QoW3R5cGU9XCJidXR0b25cIl0pOm5vdChbdHlwZT1cInN1Ym1pdFwiXSksXG4gICAgICAgIHRleHRhcmVhLFxuICAgICAgICBzZWxlY3Qge1xuICAgICAgICAgICAgQGluY2x1ZGUgaW5wdXQtc3R5bGUtcmVzZXQ7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIGhlaWdodDogNTBweDtcbiAgICAgICAgICAgIHBhZGRpbmc6IDAgMWVtO1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogLjI1ZW07XG4gICAgICAgICAgICBib3JkZXI6IDJweCBzb2xpZCAkY29sLWdyZXk7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICAgICAgICAgICAgY29sb3I6ICRjb2wtdGV4dDtcbiAgICAgICAgICAgIHRyYW5zaXRpb246IGFsbCAuMTVzIGVhc2UtaW4tb3V0O1xuXG4gICAgICAgICAgICAmOmhvdmVyLFxuICAgICAgICAgICAgJjpmb2N1cyB7XG4gICAgICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiAkY29sLWdyZXkteC1kYXJrO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmOjotd2Via2l0LWlucHV0LXBsYWNlaG9sZGVyIHsgLyogQ2hyb21lL09wZXJhL1NhZmFyaSAqL1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkY29sLXRleHQteC1saWdodDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJjo6LW1vei1wbGFjZWhvbGRlciB7IC8qIEZpcmVmb3ggMTkrICovXG4gICAgICAgICAgICAgICAgY29sb3I6ICRjb2wtdGV4dC14LWxpZ2h0O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmOi1tcy1pbnB1dC1wbGFjZWhvbGRlciB7IC8qIElFIDEwKyAqL1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkY29sLXRleHQteC1saWdodDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJjotbW96LXBsYWNlaG9sZGVyIHsgLyogRmlyZWZveCAxOC0gKi9cbiAgICAgICAgICAgICAgICBjb2xvcjogJGNvbC10ZXh0LXgtbGlnaHQ7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICY6ZGlzYWJsZWQge1xuICAgICAgICAgICAgICAgIGJvcmRlci1jb2xvcjogJGNvbC10ZXh0LXgtbGlnaHQ7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbC1ncmV5LXgtbGlnaHQ7XG4gICAgICAgICAgICAgICAgY29sb3I6ICRjb2wtdGV4dC1saWdodDtcbiAgICAgICAgICAgICAgICBjdXJzb3I6IG5vdC1hbGxvd2VkO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgaW5wdXQ6bm90KFt0eXBlPVwicmFkaW9cIl0pOm5vdChbdHlwZT1cImNoZWNrYm94XCJdKTpub3QoW3R5cGU9XCJmaWxlXCJdKTpub3QoW3R5cGU9XCJidXR0b25cIl0pOm5vdChbdHlwZT1cInN1Ym1pdFwiXSksXG4gICAgICAgIHRleHRhcmVhIHtcblxuICAgICAgICAgICAgJjpyZWFkLW9ubHkge1xuICAgICAgICAgICAgICAgIGJvcmRlci1jb2xvcjogJGNvbC10ZXh0LXgtbGlnaHQ7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbC1ncmV5LXgtbGlnaHQ7XG4gICAgICAgICAgICAgICAgY29sb3I6ICRjb2wtdGV4dC1saWdodDtcbiAgICAgICAgICAgICAgICBjdXJzb3I6IG5vdC1hbGxvd2VkO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgdGV4dGFyZWEge1xuICAgICAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICAgICAgcGFkZGluZzogMWVtO1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuNWVtO1xuICAgICAgICB9XG5cbiAgICAgICAgc2VsZWN0IHtcbiAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgfVxuXG4gICAgICAgIGlucHV0W3R5cGU9XCJidXR0b25cIl0sXG4gICAgICAgIGlucHV0W3R5cGU9XCJzdWJtaXRcIl0sXG4gICAgICAgIGJ1dHRvblt0eXBlPVwic3VibWl0XCJdIHtcbiAgICAgICAgICAgIEBleHRlbmQgLmJ0bjtcbiAgICAgICAgICAgIEBleHRlbmQgLmJ0bi0tcHJpbWFyeTtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLypcbj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICAgRm9ybXMgLSBHcmF2aXR5IEZvcm1zIG1hcmt1cFxuPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiovXG5cbi5nZm9ybV9jb25maXJtYXRpb25fd3JhcHBlciB7XG5cbiAgICAuZ2Zvcm1fY29uZmlybWF0aW9uX21lc3NhZ2Uge1xuICAgICAgICBmb250LWZhbWlseTogJGZvbnQtcHJpbTtcbiAgICAgICAgY29sb3I6ICRjb2wtc3VjY2VzcztcbiAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgfVxufVxuXG5zY3JpcHQgKyAuZ2Zvcm1fd3JhcHBlciB7XG4gICAgbWFyZ2luLXRvcDogMCAhaW1wb3J0YW50O1xufVxuXG4uY29udGVudCAuZ2Zvcm1fd3JhcHBlciB7XG4gICAgcGFkZGluZzogMmVtO1xuICAgIGJvcmRlci1yYWRpdXM6IC41ZW07XG4gICAgYm9yZGVyOiAycHggc29saWQgJGNvbC1ncmV5O1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2wtZ3JleS14LWxpZ2h0O1xufVxuXG4uZ2Zvcm1fd3JhcHBlciB7XG4gICAgbWFyZ2luOiAzMHB4IDA7XG4gICAgQGluY2x1ZGUgZmxleG1hcmdpbjtcbiAgICBmb250LWZhbWlseTogJGZvbnQtcHJpbTtcbiAgICBmb250LXNpemU6IDFyZW07XG4gICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuXG4gICAgLnZhbGlkYXRpb25fZXJyb3Ige1xuICAgICAgICBtYXJnaW46IDFlbSAwO1xuICAgICAgICBAaW5jbHVkZSBmbGV4bWFyZ2luO1xuICAgICAgICBjb2xvcjogJGNvbC1lcnJvcjtcbiAgICB9XG5cbiAgICAuZ2Zvcm1faGlkZGVuIHtcbiAgICAgICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICAgIH1cblxuICAgIC5nZm9ybV9oZWFkaW5nLFxuICAgIC5nZm9ybV9ib2R5LFxuICAgIC5nZm9ybV9mb290ZXIge1xuICAgICAgICBtYXJnaW46IDAgMCAzMHB4O1xuICAgICAgICBAaW5jbHVkZSBmbGV4bWFyZ2luO1xuICAgIH1cblxuICAgIC5nZm9ybV9oZWFkaW5nIHtcblxuICAgICAgICAuZ2Zvcm1fdGl0bGUge1xuICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgICAgY29sb3I6ICRjb2wtcHJpbTtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMmVtO1xuICAgICAgICB9XG5cbiAgICAgICAgLmdmb3JtX2Rlc2NyaXB0aW9uIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgbWFyZ2luOiAxZW0gMDtcbiAgICAgICAgICAgIEBpbmNsdWRlIGZsZXhtYXJnaW47XG4gICAgICAgICAgICBjb2xvcjogJGNvbC10ZXh0O1xuICAgICAgICAgICAgZm9udC1zaXplOiAxcmVtO1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuOGVtO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmdmb3JtX2ZpZWxkcyB7XG4gICAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgICAgIG1hcmdpbjogMDtcblxuICAgICAgICAmLnRvcF9sYWJlbCB7fVxuXG4gICAgICAgICYubGVmdF9sYWJlbCB7fVxuXG4gICAgICAgICYucmlnaHRfbGFiZWwge31cblxuICAgICAgICAmLmZvcm1fc3VibGFiZWxfYWJvdmUge31cblxuICAgICAgICAmLmZvcm1fc3VibGFiZWxfYmVsb3cge31cblxuICAgICAgICAmLmRlc2NyaXB0aW9uX2Fib3ZlIHt9XG5cbiAgICAgICAgJi5kZXNjcmlwdGlvbl9iZWxvdyB7fVxuXG4gICAgICAgIC5nZmllbGQge1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogMzBweDtcblxuICAgICAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICYuZ2ZpZWxkX2Vycm9yIHtcblxuICAgICAgICAgICAgICAgIC5naW5wdXRfY29udGFpbmVyIHtcblxuICAgICAgICAgICAgICAgICAgICAmLmdpbnB1dF9jb21wbGV4IHtcblxuICAgICAgICAgICAgICAgICAgICAgICAgLmVycm9yX2ljb24ge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRvcDogMTBweCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJpZ2h0OiBjYWxjKCAxMDAlICsgLjVlbSApO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogLTVweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICY6bm90KC5naW5wdXRfY29udGFpbmVyX2NoZWNrYm94KTpub3QoLmdpbnB1dF9jb250YWluZXJfcmFkaW8pOm5vdCguZ2lucHV0X2NvbnRhaW5lcl9zZWxlY3Qpe1xuICAgICAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICBpbnB1dDpub3QoW3R5cGU9XCJyYWRpb1wiXSk6bm90KFt0eXBlPVwiY2hlY2tib3hcIl0pOm5vdChbdHlwZT1cImZpbGVcIl0pOm5vdChbdHlwZT1cImJ1dHRvblwiXSk6bm90KFt0eXBlPVwic3VibWl0XCJdKSxcbiAgICAgICAgICAgICAgICAgICAgICAgIHRleHRhcmVhIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBib3JkZXItY29sb3I6ICRjb2wtZXJyb3I7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdGludCggJGNvbC1lcnJvciwgOTUlICk7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgICAgIC5lcnJvcl9pY29uIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcmlnaHQ6IGNhbGMoIDEwMCUgKyAuNWVtICk7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAuZ2ZpZWxkX2Rlc2NyaXB0aW9uIHtcblxuICAgICAgICAgICAgICAgICAgICAmLnZhbGlkYXRpb25fbWVzc2FnZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogJGNvbC1lcnJvcjtcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmLmdmaWVsZF9odG1sIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAxZW0gMS4yNWVtO1xuICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IC4yNWVtO1xuICAgICAgICAgICAgICAgIGJvcmRlcjogMnB4IHNvbGlkIHRpbnQoJGNvbC1wcmltLCA3NSUpO1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRpbnQoJGNvbC1wcmltLCA5MCUpO1xuICAgICAgICAgICAgICAgIGNvbG9yOiBkYXJrZW4oJGNvbC1wcmltLCAxNSUpO1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogLjg3NWVtO1xuICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjYxOGVtO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmLmdzZWN0aW9uIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAuNWVtIDA7XG5cbiAgICAgICAgICAgICAgICAuZ3NlY3Rpb25fdGl0bGUge1xuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDEuMTI1ZW07XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIC5nc2VjdGlvbl9kZXNjcmlwdGlvbiB7XG4gICAgICAgICAgICAgICAgICAgIEBleHRlbmQgcDtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luOiAuNzVlbSAwO1xuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBmbGV4bWFyZ2luO1xuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IC44NzVlbTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICYuZmllbGRfc3VibGFiZWxfYWJvdmUge31cblxuICAgICAgICAgICAgJi5maWVsZF9zdWJsYWJlbF9iZWxvdyB7fVxuXG4gICAgICAgICAgICAmLmZpZWxkX2Rlc2NyaXB0aW9uX2Fib3ZlIHt9XG5cbiAgICAgICAgICAgICYuZmllbGRfZGVzY3JpcHRpb25fYmVsb3cge31cblxuICAgICAgICAgICAgLmdmaWVsZF9sYWJlbCB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICAgICAgICBtYXJnaW46IC41ZW0gMDtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBmbGV4bWFyZ2luO1xuICAgICAgICAgICAgICAgIGZvbnQtZmFtaWx5OiAkZm9udC1zZWM7XG4gICAgICAgICAgICAgICAgY29sb3I6ICRjb2wtdGV4dDtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDFlbTtcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogYm9sZDtcblxuICAgICAgICAgICAgICAgIC5nZmllbGRfcmVxdWlyZWQge1xuICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICAgICAgICAgIHRvcDogLS4xMjVlbTtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW46IDAgLjc1ZW07XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkY29sLXByaW07XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogLjc1cmVtO1xuXG4gICAgICAgICAgICAgICAgICAgIC5mYSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogaW5oZXJpdDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLmNsZWFyLW11bHRpIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICAgICAgICAgICAgICAgIG1hcmdpbjogLTEwcHg7XG5cbiAgICAgICAgICAgICAgICBkaXYge1xuICAgICAgICAgICAgICAgICAgICBmbGV4OiAwIDAgNTAlO1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDEwcHg7XG5cbiAgICAgICAgICAgICAgICAgICAgKiB7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW46IDAgNXB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgZmxleG1hcmdpbihob3Jpem9udGFsKTtcbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgIGkge1xuICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zdHlsZTogbm9ybWFsO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAuZ2lucHV0X2NvbnRhaW5lciB7XG5cbiAgICAgICAgICAgICAgICAmLmdpbnB1dF9jb250YWluZXJfY2hlY2tib3gge1xuXG4gICAgICAgICAgICAgICAgICAgIC5nZmllbGRfY2hlY2tib3gge1xuICAgICAgICAgICAgICAgICAgICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbjogMDtcblxuICAgICAgICAgICAgICAgICAgICAgICAgJiA+IGxpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW46IC41ZW0gMCAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGZsZXhtYXJnaW47XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogLjM1ZW07XG4gICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDJlbTtcblxuICAgICAgICAgICAgICAgICAgICAgICAgJjpjaGVja2VkIH4gbGFiZWwge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkY29sLXRleHQ7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICBsYWJlbCB7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogJGNvbC10ZXh0LW1lZGl1bTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogLjg3NWVtO1xuICAgICAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICYuZ2lucHV0X2NvbnRhaW5lcl9yYWRpbyB7XG5cbiAgICAgICAgICAgICAgICAgICAgLmdmaWVsZF9yYWRpbyB7XG4gICAgICAgICAgICAgICAgICAgICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luOiAwO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAmID4gbGkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbjogLjVlbSAwIDA7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgZmxleG1hcmdpbjtcblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICBpbnB1dFt0eXBlPVwicmFkaW9cIl0ge1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAuMzVlbTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMmVtO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAmOmNoZWNrZWQgfiBsYWJlbCB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRjb2wtdGV4dDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgIGxhYmVsIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkY29sLXRleHQtbWVkaXVtO1xuICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAuODc1ZW07XG4gICAgICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgICAgICAgICAgICAgICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgJi5naW5wdXRfY29udGFpbmVyX3NlbGVjdCB7XG4gICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICAgICAgICAgICAgICAgICAuZmllbGRfaWNvbiB7XG4gICAgICAgICAgICAgICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgICAgICAgICAgICAgICByaWdodDogLjVlbTtcbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgIHNlbGVjdCB7XG4gICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAyZW07XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAmLmdpbnB1dF9jb250YWluZXJfbXVsdGlzZWxlY3Qge1xuXG4gICAgICAgICAgICAgICAgICAgIHNlbGVjdCB7XG4gICAgICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDExMHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMTBweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIHJlc2l6ZTogbm9uZTtcblxuICAgICAgICAgICAgICAgICAgICAgICAgb3B0aW9uIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAuMjVlbSAuNWVtO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgJi5naW5wdXRfY29udGFpbmVyX2RhdGUge1xuICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAgICAgICAgICAgICAgICAgLmZpZWxkX2ljb24ge1xuICAgICAgICAgICAgICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgbGVmdDogLjg3NWVtO1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgaW5wdXQuZGF0ZXBpY2tlcjpub3QoW3R5cGU9XCJyYWRpb1wiXSk6bm90KFt0eXBlPVwiY2hlY2tib3hcIl0pOm5vdChbdHlwZT1cImJ1dHRvblwiXSk6bm90KFt0eXBlPVwic3VibWl0XCJdKTpub3QoW3R5cGU9XCJmaWxlXCJdKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDIuNWVtO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgJi5naW5wdXRfY29udGFpbmVyX2ZpbGV1cGxvYWQge1xuXG4gICAgICAgICAgICAgICAgICAgIGlucHV0W3R5cGU9XCJmaWxlXCJdIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtZmFtaWx5OiBpbmhlcml0O1xuICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRjb2wtdGV4dDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogLjg3NWVtO1xuICAgICAgICAgICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDFleDtcbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgIC5nZm9ybV9kcm9wX2FyZWEge1xuICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAxMDBweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlcjogMnB4IGRhc2hlZCAkY29sLWdyZXk7XG4gICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKCNmZmYsIC41KTtcblxuICAgICAgICAgICAgICAgICAgICAgICAgLmdmb3JtX2Ryb3BfaW5zdHJ1Y3Rpb25zIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW46IDVweCAxMHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkY29sLXRleHQ7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAuODc1ZW07XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgICAgIGlucHV0W3R5cGU9XCJidXR0b25cIl0ge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIEBleHRlbmQgLmJ0bi0tc21hbGwtcGFkZGluZztcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBAZXh0ZW5kIC5idG4tLXgtc21hbGw7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogLjVlbSAxZW07XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAuc2NyZWVuLXJlYWRlci10ZXh0IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luOiAuNzVlbSAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgZmxleG1hcmdpbjtcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogLjg3NWVtO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgJi5naW5wdXRfY29udGFpbmVyX2xpc3Qge1xuXG4gICAgICAgICAgICAgICAgICAgIHRhYmxlLmdmaWVsZF9saXN0IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyOiAwO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICB0ciB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAgICAgdGhlYWQge1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdHIge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogYm90dG9tO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAuNWVtO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAuODc1ZW07XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMS4zZW07XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgICAgIHRib2R5IHtcblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRyLmdmaWVsZF9saXN0X2dyb3VwIHtcblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmOmZpcnN0LWNoaWxkIHtcblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGQge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmctdG9wOiAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGQge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMTBweCAxMHB4IDAgMDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlcjogMDtcblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmLmdmaWVsZF9saXN0X2ljb25zIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTVweDtcblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICYuZ2lucHV0X2NvbXBsZXgge1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgICAgICAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICAgICAgICAgICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbjogLTEwcHggLTVweDtcblxuICAgICAgICAgICAgICAgICAgICAmLmdpbnB1dF9jb250YWluZXJfbmFtZSB7fVxuXG4gICAgICAgICAgICAgICAgICAgICYuZ2lucHV0X2NvbnRhaW5lcl9hZGRyZXNzIHt9XG5cbiAgICAgICAgICAgICAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICAgICAgICAgICAgICBmbGV4OiAxO1xuICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAxMHB4IDVweDtcblxuICAgICAgICAgICAgICAgICAgICAgICAgJi5naW5wdXRfZnVsbCB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZmxleDogMSAwIDEwMCU7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICYuZ2lucHV0X2xlZnQsXG4gICAgICAgICAgICAgICAgICAgICAgICAmLmdpbnB1dF9yaWdodCB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZmxleDogMSAwIDUwJTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgIGxhYmVsIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luOiAuNWVtIDAgMDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkY29sLXRleHQtbWVkaXVtO1xuICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAuODc1ZW07XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAuZmllbGRfaWNvbixcbiAgICAgICAgICAgICAgICAuZXJyb3JfaWNvbiB7IC8vIGluc2VydGVkIHdpdGggalF1ZXJ5XG4gICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgICAgIGhlaWdodDogNTBweDtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDFlbTtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxcmVtO1xuICAgICAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMWVtO1xuICAgICAgICAgICAgICAgICAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAuZmllbGRfaWNvbiB7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkY29sLXRleHQteC1saWdodDtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAuZXJyb3JfaWNvbiB7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkY29sLWVycm9yO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLmdmaWVsZF9kZXNjcmlwdGlvbiB7XG4gICAgICAgICAgICAgICAgbWFyZ2luOiAuNzVlbSAwO1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGZsZXhtYXJnaW47XG4gICAgICAgICAgICAgICAgY29sb3I6ICRjb2wtdGV4dC1saWdodDtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IC44NzVlbTtcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG4uZ2Zvcm1fdmFsaWRhdGlvbl9jb250YWluZXIsXG4uZ2Zvcm1fd3JhcHBlciAuZ2Zvcm1fdmFsaWRhdGlvbl9jb250YWluZXIsXG5ib2R5IC5nZm9ybV93cmFwcGVyIC5nZm9ybV9ib2R5IHVsLmdmb3JtX2ZpZWxkcyBsaS5nZmllbGQuZ2Zvcm1fdmFsaWRhdGlvbl9jb250YWluZXIsXG5ib2R5IC5nZm9ybV93cmFwcGVyIGxpLmdmb3JtX3ZhbGlkYXRpb25fY29udGFpbmVyLFxuYm9keSAuZ2Zvcm1fd3JhcHBlciB1bC5nZm9ybV9maWVsZHMgbGkuZ2ZpZWxkLmdmb3JtX3ZhbGlkYXRpb25fY29udGFpbmVyIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGUgIWltcG9ydGFudDtcbiAgICBsZWZ0OiAtOTAwMHB4O1xuICAgIGhlaWdodDogMDtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xufVxuXG5sYWJlbFtmb3JdOmhvdmVyIHtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG59XG5cbi51aS1kYXRlcGlja2VyIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICAgIHdpZHRoOiAzMDBweDtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgcGFkZGluZzogMTVweDtcbiAgICBib3JkZXItcmFkaXVzOiAuNWVtO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2wtZ3JleS1saWdodDtcbiAgICBib3gtc2hhZG93OiAwIDJweCA1cHggcmdiYSgjMDAwLCAuMSksIDAgMCAwIDFweCByZ2JhKCMwMDAsIC4wNSk7XG5cbiAgICAudWktZGF0ZXBpY2tlci1oZWFkZXIge1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogMTVweDtcblxuICAgICAgICAudWktZGF0ZXBpY2tlci1wcmV2LFxuICAgICAgICAudWktZGF0ZXBpY2tlci1uZXh0IHtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIH1cblxuICAgICAgICAudWktZGF0ZXBpY2tlci10aXRsZSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuXG4gICAgICAgICAgICBzZWxlY3Qge1xuICAgICAgICAgICAgICAgIGFwcGVhcmFuY2U6IG5vbmU7XG4gICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMDtcbiAgICAgICAgICAgICAgICBib3JkZXI6IDA7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICAgICAgICAgICAgICBmbGV4OiAxO1xuICAgICAgICAgICAgICAgIGhlaWdodDogMzBweDtcbiAgICAgICAgICAgICAgICBtYXJnaW46IDAgNHB4O1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDAgMTBweDtcbiAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiAuMjVlbTtcbiAgICAgICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAkY29sLWdyZXktZGFyaztcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkY29sLXRleHQ7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAuODc1ZW07XG4gICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogYWxsIC4xNXMgZWFzZS1pbi1vdXQ7XG4gICAgICAgICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuXG4gICAgICAgICAgICAgICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAmOmhvdmVyLFxuICAgICAgICAgICAgICAgICY6Zm9jdXMge1xuICAgICAgICAgICAgICAgICAgICBib3JkZXItY29sb3I6ICRjb2wtcHJpbTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAudWktZGF0ZXBpY2tlci1jYWxlbmRhciB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAkY29sLWdyZXktZGFyaztcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgICAgICAgZm9udC1zaXplOiAuODc1ZW07XG5cbiAgICAgICAgdHIge1xuICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRjb2wtZ3JleTtcblxuICAgICAgICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgICAgICAgICBib3JkZXI6IDA7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIHRoIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAxMHB4IDA7XG4gICAgICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRjb2wtZ3JleTtcbiAgICAgICAgICAgICAgICBjb2xvcjogJGNvbC10ZXh0O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICB0aCxcbiAgICAgICAgICAgIHRkIHtcbiAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgICAgICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDZweCAwO1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogJGNvbC10ZXh0LWxpZ2h0O1xuXG4gICAgICAgICAgICAgICAgICAgICY6aG92ZXIsXG4gICAgICAgICAgICAgICAgICAgICY6Zm9jdXMge1xuICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbC1ncmV5LWxpZ2h0O1xuICAgICAgICAgICAgICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgJi51aS1zdGF0ZS1kZWZhdWx0IHt9XG5cbiAgICAgICAgICAgICAgICAgICAgJi51aS1zdGF0ZS1oaWdobGlnaHQge1xuICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbC1wcmltO1xuICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6ICNmZmY7XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAmLnVpLXN0YXRlLWFjdGl2ZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sLXNlYztcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG4uY3VzdG9tLXN0ZXBzIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBzdHJldGNoO1xuXG4gICAgJl9fY29udHJvbCB7XG4gICAgICAgIEBpbmNsdWRlIGlucHV0LXN0eWxlLXJlc2V0O1xuICAgICAgICBmbGV4LXNocmluazogMDtcbiAgICAgICAgaGVpZ2h0OiBpbmhlcml0O1xuICAgICAgICBwYWRkaW5nOiAwIDFlbTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbC1ncmV5LWxpZ2h0O1xuICAgICAgICBjb2xvcjogJGNvbC1wcmltO1xuXG4gICAgICAgICY6aG92ZXIsXG4gICAgICAgICY6Zm9jdXMge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbC1ncmV5O1xuICAgICAgICAgICAgY29sb3I6ICRjb2wtdGV4dDtcbiAgICAgICAgfVxuXG4gICAgICAgICY6YWN0aXZlIHtcbiAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgfVxuXG4gICAgICAgICY6ZGlzYWJsZWQge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbC1ncmV5LXgtbGlnaHQ7XG4gICAgICAgICAgICBjb2xvcjogJGNvbC10ZXh0LXgtbGlnaHQ7XG4gICAgICAgICAgICBjdXJzb3I6IG5vdC1hbGxvd2VkO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJl9faW5wdXQge1xuICAgICAgICBAaW5jbHVkZSBpbnB1dC1zdHlsZS1yZXNldDtcbiAgICAgICAgZmxleC1zaHJpbms6IDA7XG4gICAgICAgIHdpZHRoOiAzZW07XG4gICAgICAgIGhlaWdodDogaW5oZXJpdDtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgZm9udC1mYW1pbHk6ICRmb250LXNlYztcbiAgICAgICAgY29sb3I6ICRjb2wtdGV4dDtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIH1cblxuICAgICZfX2luZm8ge1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAxZW07XG4gICAgICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgICAgICAgYWxpZ24tc2VsZjogY2VudGVyO1xuICAgIH1cblxuICAgICZfX2xhYmVsIHtcbiAgICAgICAgZm9udC1mYW1pbHk6ICRmb250LXNlYztcbiAgICAgICAgY29sb3I6ICRjb2wtdGV4dDtcbiAgICB9XG5cbiAgICAmX19zdWJ0aXRsZSB7XG4gICAgICAgIGNvbG9yOiAkY29sLXRleHQtbGlnaHQ7XG4gICAgICAgIGZvbnQtc2l6ZTogLjc1cmVtO1xuICAgIH1cbn1cblxuLmN1c3RvbS1zZWxlY3Qge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICYuY3VzdG9tLXNlbGVjdC0tb3BlbiAuY3VzdG9tLXNlbGVjdF9fZHJvcGRvd24ge1xuICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICAgIH1cblxuICAgICYuY3VzdG9tLXNlbGVjdC0tZW1wdHkgLmN1c3RvbS1zZWxlY3RfX2xhYmVsIHtcbiAgICAgICAgY29sb3I6ICRjb2wtdGV4dC1saWdodDtcbiAgICB9XG5cbiAgICAmX19pbnB1dCB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgbGVmdDogLTk5OTlweDtcbiAgICAgICAgb3BhY2l0eTogMDtcbiAgICB9XG5cbiAgICAmX19mYW5jeS1pbnB1dCB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIGhlaWdodDogaW5oZXJpdDtcbiAgICAgICAgcGFkZGluZzogMCAxZW07XG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICB9XG5cbiAgICAmX19sYWJlbCB7XG4gICAgICAgIGZsZXgtZ3JvdzogMTtcbiAgICAgICAgZm9udC1mYW1pbHk6ICRmb250LXNlYztcbiAgICAgICAgY29sb3I6ICRjb2wtdGV4dDtcbiAgICAgICAgdXNlci1zZWxlY3Q6IG5vbmU7XG4gICAgfVxuXG4gICAgJl9faWNvbiB7XG4gICAgICAgIGZsZXgtc2hyaW5rOiAwO1xuICAgICAgICBtYXJnaW4tbGVmdDogMWVtO1xuICAgICAgICBjb2xvcjogJGNvbC10ZXh0LXgtbGlnaHQ7XG4gICAgfVxuXG4gICAgJl9fZHJvcGRvd24ge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHotaW5kZXg6IDE7XG4gICAgICAgIHRvcDogMTAwJTtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgIHBhZGRpbmc6IC41ZW0gMDtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMCAwIC4yNXJlbSAuMjVyZW07XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gICAgICAgIGJveC1zaGFkb3c6IDAgMnB4IDVweCByZ2JhKCMwMDAsIC4xKSwgMCAwIDAgMXB4IHJnYmEoIzAwMCwgLjA1KTtcbiAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgICAgICB0cmFuc2l0aW9uOiBhbGwgLjE1cyBlYXNlLWluLW91dDtcbiAgICAgICAgd2lsbC1jaGFuZ2U6IG9wYWNpdHksIHZpc2liaWxpdHk7XG4gICAgfVxuXG4gICAgLmN1c3RvbS1zdGVwcyB7XG4gICAgICAgIG1hcmdpbjogLjVlbSAwO1xuICAgICAgICBwYWRkaW5nOiAwIDFlbTtcblxuICAgICAgICAmX19pbnB1dCB7XG4gICAgICAgICAgICBib3JkZXItdG9wOiAycHggc29saWQgJGNvbC1ncmV5LWxpZ2h0O1xuICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkICRjb2wtZ3JleS1saWdodDtcbiAgICAgICAgfVxuXG4gICAgICAgICZfX2NvbnRyb2wge1xuXG4gICAgICAgICAgICAmLS1kZWNyZWFzZSB7XG4gICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogLjI1ZW0gMCAwIC4yNWVtO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmLS1pbmNyZWFzZSB7XG4gICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMCAuMjVlbSAuMjVlbSAwO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmN1c3RvbS1jaGVja2JveCxcbiAgICAuY3VzdG9tLXJhZGlvIHtcbiAgICAgICAgcGFkZGluZzogLjVlbSAxZW07XG5cbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sLWdyZXktbGlnaHQ7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5jdXN0b20tY2hlY2tib3gsXG4uY3VzdG9tLXJhZGlvIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWNvbnRlbnQ6IGNlbnRlcjtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgdXNlci1zZWxlY3Q6IG5vbmU7XG5cbiAgICAmX19pbnB1dCB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgbGVmdDogLTk5OTlweDtcbiAgICAgICAgb3BhY2l0eTogMDtcbiAgICB9XG5cbiAgICAmX19mYW5jeS1pbnB1dCB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICB3aWR0aDogMS41ZW07XG4gICAgICAgIGhlaWdodDogMS41ZW07XG4gICAgICAgIG1hcmdpbi1yaWdodDogLjc1ZW07XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gICAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgICBmb250LXNpemU6IDFlbTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDFlbTtcbiAgICAgICAgYm94LXNoYWRvdzogaW5zZXQgMCAwIDAgMXB4ICRjb2wtZ3JleS1kYXJrLCBpbnNldCAwIC4xMjVlbSAuMjVlbSAkY29sLWdyZXk7XG4gICAgICAgIHRyYW5zaXRpb246IGFsbCAuMTVzIGVhc2UtaW4tb3V0O1xuICAgIH1cblxuICAgICZfX2xhYmVsIHtcbiAgICAgICAgQGluY2x1ZGUgdGV4dC1ub3dyYXA7XG4gICAgICAgIGZvbnQtZmFtaWx5OiAkZm9udC1zZWM7XG4gICAgICAgIGNvbG9yOiAkY29sLXRleHQtbWVkaXVtO1xuICAgICAgICBsaW5lLWhlaWdodDogMS42MThlbTtcbiAgICAgICAgdHJhbnNpdGlvbjogY29sb3IgLjE1cyBlYXNlLWluLW91dDtcbiAgICB9XG59XG5cbi5jdXN0b20tY2hlY2tib3gge1xuXG4gICAgJjpob3ZlcixcbiAgICAmOmZvY3VzLXdpdGhpbiB7XG5cbiAgICAgICAgLmN1c3RvbS1jaGVja2JveF9fZmFuY3ktaW5wdXQge1xuICAgICAgICAgICAgYm94LXNoYWRvdzogaW5zZXQgMCAwIDAgMnB4ICRjb2wtdGV4dC1saWdodCwgaW5zZXQgMCAuMTI1ZW0gLjI1ZW0gJGNvbC1ncmV5O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJl9faW5wdXQ6Y2hlY2tlZCB7XG5cbiAgICAgICAgJiArIC5jdXN0b20tY2hlY2tib3hfX2ZhbmN5LWlucHV0IHtcbiAgICAgICAgICAgIGJveC1zaGFkb3c6IGluc2V0IDAgMCAwIDAgJGNvbC1ncmV5LWRhcmssIGluc2V0IDAgMCAwIDFlbSAkY29sLXByaW07XG4gICAgICAgIH1cblxuICAgICAgICAmIH4gLmN1c3RvbS1jaGVja2JveF9fbGFiZWwge1xuICAgICAgICAgICAgY29sb3I6ICRjb2wtdGV4dDtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgICAgICAgZm9udC1zdHlsZTogaXRhbGljO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJl9fZmFuY3ktaW5wdXQge1xuICAgICAgICBib3JkZXItcmFkaXVzOiAuMjVlbTtcbiAgICB9XG59XG5cbi5jdXN0b20tcmFkaW8ge1xuXG4gICAgJjpob3ZlcixcbiAgICAmOmZvY3VzLXdpdGhpbiB7XG5cbiAgICAgICAgLmN1c3RvbS1yYWRpb19fZmFuY3ktaW5wdXQge1xuICAgICAgICAgICAgYm94LXNoYWRvdzogaW5zZXQgMCAwIDAgMnB4ICRjb2wtdGV4dC1saWdodCwgaW5zZXQgMCAuMTI1ZW0gLjI1ZW0gJGNvbC1ncmV5O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJl9faW5wdXQ6Y2hlY2tlZCB7XG5cbiAgICAgICAgJiArIC5jdXN0b20tcmFkaW9fX2ZhbmN5LWlucHV0IHtcbiAgICAgICAgICAgIGJveC1zaGFkb3c6IGluc2V0IDAgMCAwIDAgJGNvbC1ncmV5LWRhcmssIGluc2V0IDAgMCAwIDFlbSAkY29sLXByaW07XG4gICAgICAgIH1cblxuICAgICAgICAmIH4gLmN1c3RvbS1yYWRpb19fbGFiZWwge1xuICAgICAgICAgICAgY29sb3I6ICRjb2wtdGV4dDtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgICAgICAgZm9udC1zdHlsZTogaXRhbGljO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJl9fZmFuY3ktaW5wdXQge1xuICAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgfVxufSIsIi8qXG49PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXHRGaWx0ZXJzXG49PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuKi9cblxuLmZpbHRlcnMtd3JhcHBlciB7XG5cbiAgICAuZmlsdGVyIHtcblxuICAgICAgICAmX190aXRsZSB7fVxuICAgIH1cbn0iLCIvKlxuPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgICBNb2RhbHNcbj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4qL1xuXG4ubW9kYWxzLXdyYXBwZXIge1xuXG4gICAgLm1vZGFsIHtcblxuICAgICAgICAmX190aXRsZSB7fVxuICAgIH1cbn0iLCIvKlxuPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgICBQb3BvdmVycyAoQm9vdHN0cmFwKVxuPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiovXG5cbiRwb3BvdmVyLWJnOiAgICAgICAgICAgICAgICAgICAgICAgICAgJGNvbC1zZWM7XG4kcG9wb3Zlci1tYXgtd2lkdGg6ICAgICAgICAgICAgICAgICAgIDI1MHB4O1xuJHBvcG92ZXItYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICAgICByZ2JhKCAjMDAwLCAuMiApO1xuJHBvcG92ZXItdGl0bGUtYmc6ICAgICAgICAgICAgICAgICAgICB0aW50KCAkY29sLXNlYywgMTAlICk7XG4kcG9wb3Zlci1hcnJvdy13aWR0aDogICAgICAgICAgICAgICAgIDEwcHg7XG4kcG9wb3Zlci1hcnJvdy1jb2xvcjogICAgICAgICAgICAgICAgICRwb3BvdmVyLWJnO1xuJHBvcG92ZXItYXJyb3ctb3V0ZXItd2lkdGg6ICAgICAgICAgICAoJHBvcG92ZXItYXJyb3ctd2lkdGggKyAxKTtcbiRwb3BvdmVyLWFycm93LW91dGVyLWNvbG9yOiAgICAgICAgICAgc2hhZGUoICRwb3BvdmVyLWJnLCAxMCUgKTtcblxuLnBvcG92ZXIge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICB6LWluZGV4OiAkemluZGV4LXBvcG92ZXI7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgICBtYXgtd2lkdGg6ICRwb3BvdmVyLW1heC13aWR0aDtcbiAgICBwYWRkaW5nOiAwO1xuICAgIC8vIGZvbnQgcmVzZXRcbiAgICBmb250LXN0eWxlOiBub3JtYWw7XG4gICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICBsZXR0ZXItc3BhY2luZzogbm9ybWFsO1xuICAgIGxpbmUtYnJlYWs6IGF1dG87XG4gICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICB0ZXh0LWFsaWduOiBzdGFydDtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgdGV4dC1zaGFkb3c6IG5vbmU7XG4gICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gICAgd2hpdGUtc3BhY2U6IG5vcm1hbDtcbiAgICB3b3JkLWJyZWFrOiBub3JtYWw7XG4gICAgd29yZC1zcGFjaW5nOiBub3JtYWw7XG4gICAgd29yZC13cmFwOiBub3JtYWw7XG4gICAgZm9udC1zaXplOiAxcmVtO1xuICAgIC8vIGVuZCBmb250IHJlc2V0XG4gICAgYmFja2dyb3VuZC1jbGlwOiBwYWRkaW5nLWJveDtcbiAgICBib3JkZXItcmFkaXVzOiAuMjVlbTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcG9wb3Zlci1iZztcbiAgICBib3gtc2hhZG93OiAwIDJweCA1cHggcmdiYSggIzAwMCwgLjEgKSwgMCAwIDAgMXB4IHJnYmEoICMwMDAsIC4wNSApO1xuXG4gICAgLy8gT2Zmc2V0IHRoZSBwb3BvdmVyIHRvIGFjY291bnQgZm9yIHRoZSBwb3BvdmVyIGFycm93XG4gICAgJi50b3AgICAgIHsgbWFyZ2luLXRvcDogLSgkcG9wb3Zlci1hcnJvdy13aWR0aCArIDVweCk7IH1cbiAgICAmLnJpZ2h0ICAgeyBtYXJnaW4tbGVmdDogJHBvcG92ZXItYXJyb3ctd2lkdGggKyA1cHg7IH1cbiAgICAmLmJvdHRvbSAgeyBtYXJnaW4tdG9wOiAkcG9wb3Zlci1hcnJvdy13aWR0aCArIDVweDsgfVxuICAgICYubGVmdCAgICB7IG1hcmdpbi1sZWZ0OiAtKCRwb3BvdmVyLWFycm93LXdpZHRoICsgNXB4KTsgfVxufVxuXG4ucG9wb3Zlci10aXRsZSB7XG4gICAgcGFkZGluZzogMTBweCAxNXB4O1xuICAgIGJvcmRlci1yYWRpdXM6IC4yNWVtIC4yNWVtIDAgMDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcG9wb3Zlci10aXRsZS1iZztcbiAgICBjb2xvcjogI2ZmZjtcbiAgICBmb250LXNpemU6IC44NzVlbTtcbn1cblxuLnBvcG92ZXItY29udGVudCB7XG4gICAgcGFkZGluZzogMTVweDtcbiAgICBjb2xvcjogI2ZmZjtcbiAgICBmb250LXNpemU6IC43NWVtO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjYxOGVtO1xuXG4gICAgKiB7XG4gICAgICAgIGNvbG9yOiBpbmhlcml0O1xuICAgIH1cblxuICAgIGgxLFxuICAgIGgyLFxuICAgIGgzLFxuICAgIGg0LFxuICAgIGg1LFxuICAgIGg2IHtcbiAgICAgICAgbWFyZ2luOiAxZW0gMCAuMjVlbTtcbiAgICAgICAgQGluY2x1ZGUgZmxleG1hcmdpbjtcbiAgICB9XG5cbiAgICB1bCxcbiAgICBvbCB7XG4gICAgICAgIG1hcmdpbjogMTBweCAxNXB4O1xuICAgICAgICBAaW5jbHVkZSBmbGV4bWFyZ2luO1xuICAgIH1cbn1cblxuLy8gQXJyb3dzXG4vLyAuYXJyb3cgaXMgb3V0ZXIsIC5hcnJvdzphZnRlciBpcyBpbm5lclxuXG4ucG9wb3ZlciA+IC5hcnJvdyB7XG4gICAgJixcbiAgICAmOmFmdGVyIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgd2lkdGg6IDA7XG4gICAgICAgIGhlaWdodDogMDtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbiAgICB9XG59XG5cbi5wb3BvdmVyID4gLmFycm93IHtcbiAgICBib3JkZXItd2lkdGg6ICRwb3BvdmVyLWFycm93LW91dGVyLXdpZHRoO1xufVxuXG4ucG9wb3ZlciA+IC5hcnJvdzphZnRlciB7XG4gICAgYm9yZGVyLXdpZHRoOiAkcG9wb3Zlci1hcnJvdy13aWR0aDtcbiAgICBjb250ZW50OiBcIlwiO1xufVxuXG4ucG9wb3ZlciB7XG5cbiAgICAmLnRvcCA+IC5hcnJvdyB7XG4gICAgICAgIGxlZnQ6IDUwJTtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IC0kcG9wb3Zlci1hcnJvdy1vdXRlci13aWR0aDtcbiAgICAgICAgYm9yZGVyLWJvdHRvbS13aWR0aDogMDtcbiAgICAgICAgYm9yZGVyLXRvcC1jb2xvcjogJHBvcG92ZXItYXJyb3ctb3V0ZXItY29sb3I7XG4gICAgICAgIGJvdHRvbTogLSRwb3BvdmVyLWFycm93LW91dGVyLXdpZHRoO1xuXG4gICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgY29udGVudDogXCIgXCI7XG4gICAgICAgICAgICBib3R0b206IDFweDtcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAtJHBvcG92ZXItYXJyb3ctd2lkdGg7XG4gICAgICAgICAgICBib3JkZXItYm90dG9tLXdpZHRoOiAwO1xuICAgICAgICAgICAgYm9yZGVyLXRvcC1jb2xvcjogJHBvcG92ZXItYXJyb3ctY29sb3I7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmLnJpZ2h0ID4gLmFycm93IHtcbiAgICAgICAgdG9wOiA1MCU7XG4gICAgICAgIGxlZnQ6IC0kcG9wb3Zlci1hcnJvdy1vdXRlci13aWR0aDtcbiAgICAgICAgbWFyZ2luLXRvcDogLSRwb3BvdmVyLWFycm93LW91dGVyLXdpZHRoO1xuICAgICAgICBib3JkZXItbGVmdC13aWR0aDogMDtcbiAgICAgICAgYm9yZGVyLXJpZ2h0LWNvbG9yOiAkcG9wb3Zlci1hcnJvdy1vdXRlci1jb2xvcjtcblxuICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgIGNvbnRlbnQ6IFwiIFwiO1xuICAgICAgICAgICAgbGVmdDogMXB4O1xuICAgICAgICAgICAgYm90dG9tOiAtJHBvcG92ZXItYXJyb3ctd2lkdGg7XG4gICAgICAgICAgICBib3JkZXItbGVmdC13aWR0aDogMDtcbiAgICAgICAgICAgIGJvcmRlci1yaWdodC1jb2xvcjogJHBvcG92ZXItYXJyb3ctY29sb3I7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmLmJvdHRvbSA+IC5hcnJvdyB7XG4gICAgICAgIGxlZnQ6IDUwJTtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IC0kcG9wb3Zlci1hcnJvdy1vdXRlci13aWR0aDtcbiAgICAgICAgYm9yZGVyLXRvcC13aWR0aDogMDtcbiAgICAgICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogJHBvcG92ZXItYXJyb3ctb3V0ZXItY29sb3I7XG4gICAgICAgIHRvcDogLSRwb3BvdmVyLWFycm93LW91dGVyLXdpZHRoO1xuXG4gICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgY29udGVudDogXCIgXCI7XG4gICAgICAgICAgICB0b3A6IDFweDtcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAtJHBvcG92ZXItYXJyb3ctd2lkdGg7XG4gICAgICAgICAgICBib3JkZXItdG9wLXdpZHRoOiAwO1xuICAgICAgICAgICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogJHBvcG92ZXItYXJyb3ctY29sb3I7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmLmxlZnQgPiAuYXJyb3cge1xuICAgICAgICB0b3A6IDUwJTtcbiAgICAgICAgcmlnaHQ6IC0kcG9wb3Zlci1hcnJvdy1vdXRlci13aWR0aDtcbiAgICAgICAgbWFyZ2luLXRvcDogLSRwb3BvdmVyLWFycm93LW91dGVyLXdpZHRoO1xuICAgICAgICBib3JkZXItcmlnaHQtd2lkdGg6IDA7XG4gICAgICAgIGJvcmRlci1sZWZ0LWNvbG9yOiAkcG9wb3Zlci1hcnJvdy1vdXRlci1jb2xvcjtcblxuICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgIGNvbnRlbnQ6IFwiIFwiO1xuICAgICAgICAgICAgcmlnaHQ6IDFweDtcbiAgICAgICAgICAgIGJvcmRlci1yaWdodC13aWR0aDogMDtcbiAgICAgICAgICAgIGJvcmRlci1sZWZ0LWNvbG9yOiAkcG9wb3Zlci1hcnJvdy1jb2xvcjtcbiAgICAgICAgICAgIGJvdHRvbTogLSRwb3BvdmVyLWFycm93LXdpZHRoO1xuICAgICAgICB9XG4gICAgfVxufVxuIiwiLypcbj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICAgVG9vbHRpcHMgKEJvb3RzdHJhcClcbj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4qL1xuXG4kemluZGV4LXRvb2x0aXA6ICAgICAgICAgICAgICA1O1xuJHRvb2x0aXAtbWF4LXdpZHRoOiAgICAgICAgICAgMjAwcHg7XG4kdG9vbHRpcC1jb2xvcjogICAgICAgICAgICAgICAjZmZmO1xuJHRvb2x0aXAtYmc6ICAgICAgICAgICAgICAgICAgJGNvbC10ZXh0O1xuJHRvb2x0aXAtb3BhY2l0eTogICAgICAgICAgICAgMTtcbiR0b29sdGlwLWFycm93LXdpZHRoOiAgICAgICAgIDVweDtcbiR0b29sdGlwLWFycm93LWNvbG9yOiAgICAgICAgICR0b29sdGlwLWJnO1xuXG4vLyBCYXNlIGNsYXNzXG4udG9vbHRpcCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgei1pbmRleDogJHppbmRleC10b29sdGlwO1xuICBkaXNwbGF5OiBibG9jaztcbiAgZm9udC1mYW1pbHk6ICRmb250LXNlYztcbiAgZm9udC1zaXplOiAuODc1ZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjNlbTtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgb3BhY2l0eTogMDtcblxuICAmLmluICAgICB7IG9wYWNpdHk6ICR0b29sdGlwLW9wYWNpdHk7IH1cbiAgJi50b3AgICAgeyBtYXJnaW4tdG9wOiAgLTNweDsgcGFkZGluZzogJHRvb2x0aXAtYXJyb3ctd2lkdGggMDsgfVxuICAmLnJpZ2h0ICB7IG1hcmdpbi1sZWZ0OiAgM3B4OyBwYWRkaW5nOiAwICR0b29sdGlwLWFycm93LXdpZHRoOyB9XG4gICYuYm90dG9tIHsgbWFyZ2luLXRvcDogICAzcHg7IHBhZGRpbmc6ICR0b29sdGlwLWFycm93LXdpZHRoIDA7IH1cbiAgJi5sZWZ0ICAgeyBtYXJnaW4tbGVmdDogLTNweDsgcGFkZGluZzogMCAkdG9vbHRpcC1hcnJvdy13aWR0aDsgfVxufVxuXG4vLyBXcmFwcGVyIGZvciB0aGUgdG9vbHRpcCBjb250ZW50XG4udG9vbHRpcC1pbm5lciB7XG4gIG1heC13aWR0aDogJHRvb2x0aXAtbWF4LXdpZHRoO1xuICBwYWRkaW5nOiAuNWVtIDFlbTtcbiAgY29sb3I6ICR0b29sdGlwLWNvbG9yO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGJhY2tncm91bmQtY29sb3I6ICR0b29sdGlwLWJnO1xuICBib3JkZXItcmFkaXVzOiAuNWVtO1xufVxuXG4vLyBBcnJvd3Ncbi50b29sdGlwLWFycm93IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB3aWR0aDogMDtcbiAgaGVpZ2h0OiAwO1xuICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xuICBib3JkZXItc3R5bGU6IHNvbGlkO1xufVxuLy8gTm90ZTogRGVwcmVjYXRlZCAudG9wLWxlZnQsIC50b3AtcmlnaHQsIC5ib3R0b20tbGVmdCwgYW5kIC5ib3R0b20tcmlnaHQgYXMgb2YgdjMuMy4xXG4udG9vbHRpcCB7XG4gICYudG9wIC50b29sdGlwLWFycm93IHtcbiAgICBib3R0b206IDA7XG4gICAgbGVmdDogNTAlO1xuICAgIG1hcmdpbi1sZWZ0OiAtJHRvb2x0aXAtYXJyb3ctd2lkdGg7XG4gICAgYm9yZGVyLXdpZHRoOiAkdG9vbHRpcC1hcnJvdy13aWR0aCAkdG9vbHRpcC1hcnJvdy13aWR0aCAwO1xuICAgIGJvcmRlci10b3AtY29sb3I6ICR0b29sdGlwLWFycm93LWNvbG9yO1xuICB9XG4gICYudG9wLWxlZnQgLnRvb2x0aXAtYXJyb3cge1xuICAgIGJvdHRvbTogMDtcbiAgICByaWdodDogJHRvb2x0aXAtYXJyb3ctd2lkdGg7XG4gICAgbWFyZ2luLWJvdHRvbTogLSR0b29sdGlwLWFycm93LXdpZHRoO1xuICAgIGJvcmRlci13aWR0aDogJHRvb2x0aXAtYXJyb3ctd2lkdGggJHRvb2x0aXAtYXJyb3ctd2lkdGggMDtcbiAgICBib3JkZXItdG9wLWNvbG9yOiAkdG9vbHRpcC1hcnJvdy1jb2xvcjtcbiAgfVxuICAmLnRvcC1yaWdodCAudG9vbHRpcC1hcnJvdyB7XG4gICAgYm90dG9tOiAwO1xuICAgIGxlZnQ6ICR0b29sdGlwLWFycm93LXdpZHRoO1xuICAgIG1hcmdpbi1ib3R0b206IC0kdG9vbHRpcC1hcnJvdy13aWR0aDtcbiAgICBib3JkZXItd2lkdGg6ICR0b29sdGlwLWFycm93LXdpZHRoICR0b29sdGlwLWFycm93LXdpZHRoIDA7XG4gICAgYm9yZGVyLXRvcC1jb2xvcjogJHRvb2x0aXAtYXJyb3ctY29sb3I7XG4gIH1cbiAgJi5yaWdodCAudG9vbHRpcC1hcnJvdyB7XG4gICAgdG9wOiA1MCU7XG4gICAgbGVmdDogMDtcbiAgICBtYXJnaW4tdG9wOiAtJHRvb2x0aXAtYXJyb3ctd2lkdGg7XG4gICAgYm9yZGVyLXdpZHRoOiAkdG9vbHRpcC1hcnJvdy13aWR0aCAkdG9vbHRpcC1hcnJvdy13aWR0aCAkdG9vbHRpcC1hcnJvdy13aWR0aCAwO1xuICAgIGJvcmRlci1yaWdodC1jb2xvcjogJHRvb2x0aXAtYXJyb3ctY29sb3I7XG4gIH1cbiAgJi5sZWZ0IC50b29sdGlwLWFycm93IHtcbiAgICB0b3A6IDUwJTtcbiAgICByaWdodDogMDtcbiAgICBtYXJnaW4tdG9wOiAtJHRvb2x0aXAtYXJyb3ctd2lkdGg7XG4gICAgYm9yZGVyLXdpZHRoOiAkdG9vbHRpcC1hcnJvdy13aWR0aCAwICR0b29sdGlwLWFycm93LXdpZHRoICR0b29sdGlwLWFycm93LXdpZHRoO1xuICAgIGJvcmRlci1sZWZ0LWNvbG9yOiAkdG9vbHRpcC1hcnJvdy1jb2xvcjtcbiAgfVxuICAmLmJvdHRvbSAudG9vbHRpcC1hcnJvdyB7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDUwJTtcbiAgICBtYXJnaW4tbGVmdDogLSR0b29sdGlwLWFycm93LXdpZHRoO1xuICAgIGJvcmRlci13aWR0aDogMCAkdG9vbHRpcC1hcnJvdy13aWR0aCAkdG9vbHRpcC1hcnJvdy13aWR0aDtcbiAgICBib3JkZXItYm90dG9tLWNvbG9yOiAkdG9vbHRpcC1hcnJvdy1jb2xvcjtcbiAgfVxuICAmLmJvdHRvbS1sZWZ0IC50b29sdGlwLWFycm93IHtcbiAgICB0b3A6IDA7XG4gICAgcmlnaHQ6ICR0b29sdGlwLWFycm93LXdpZHRoO1xuICAgIG1hcmdpbi10b3A6IC0kdG9vbHRpcC1hcnJvdy13aWR0aDtcbiAgICBib3JkZXItd2lkdGg6IDAgJHRvb2x0aXAtYXJyb3ctd2lkdGggJHRvb2x0aXAtYXJyb3ctd2lkdGg7XG4gICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogJHRvb2x0aXAtYXJyb3ctY29sb3I7XG4gIH1cbiAgJi5ib3R0b20tcmlnaHQgLnRvb2x0aXAtYXJyb3cge1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAkdG9vbHRpcC1hcnJvdy13aWR0aDtcbiAgICBtYXJnaW4tdG9wOiAtJHRvb2x0aXAtYXJyb3ctd2lkdGg7XG4gICAgYm9yZGVyLXdpZHRoOiAwICR0b29sdGlwLWFycm93LXdpZHRoICR0b29sdGlwLWFycm93LXdpZHRoO1xuICAgIGJvcmRlci1ib3R0b20tY29sb3I6ICR0b29sdGlwLWFycm93LWNvbG9yO1xuICB9XG59IiwiLypcbj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cdFdpZGdldHNcbj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4qL1xuXG4ud2lkZ2V0cy13cmFwcGVyIHtcblxuICAgIC53aWRnZXQge1xuXG4gICAgICAgICZfX3RpdGxlIHtcblxuICAgICAgICB9XG4gICAgfVxufSIsIi8qXG49PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgIEJ1dHRvbnNcbj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4qL1xuXG4uYnRucyB7XG4gICAgbWFyZ2luOiAyZW0gMDtcbiAgICBAaW5jbHVkZSBmbGV4bWFyZ2luO1xuXG4gICAgJi5idG5zLS1jZW50ZXJlZCAuYnRuc19faW5uZXIge1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICB9XG5cbiAgICAmLmJ0bnMtLXZlcnRpY2FsIHtcblxuICAgICAgICAmLmJ0bnMtLWNlbnRlcmVkIC5idG5zX19pbm5lciB7XG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICB9XG5cbiAgICAgICAgLmJ0bnNfX2lubmVyIHtcbiAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgICAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJl9faW5uZXIge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgICAgIG1hcmdpbjogLS41cmVtO1xuICAgIH1cblxuICAgIC5idG4ge1xuICAgICAgICBtYXJnaW46IC41cmVtO1xuICAgIH1cbn1cblxuLmJ0biB7XG4gICAgQGluY2x1ZGUgaW5wdXQtc3R5bGUtcmVzZXQ7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBwYWRkaW5nOiAuNzVlbSAxZW0gLjVlbTtcbiAgICBmb250LWZhbWlseTogJGZvbnQtc2VjO1xuICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICBsaW5lLWhlaWdodDogMS41ZW07XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZSAhaW1wb3J0YW50O1xuICAgIHVzZXItc2VsZWN0OiBub25lO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICB0cmFuc2l0aW9uOiBhbGwgMC4xNXMgZWFzZS1pbi1vdXQsIHRvcCAwcztcblxuICAgICY6aG92ZXIsXG4gICAgJjpmb2N1cyB7fVxuXG4gICAgJjphY3RpdmUge1xuICAgICAgICB0b3A6IDFweDtcbiAgICB9XG5cbiAgICAmOmRpc2FibGVkLFxuICAgICYuYnRuLS1kaXNhYmxlZCB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2wtZ3JleSAhaW1wb3J0YW50O1xuICAgICAgICBjb2xvcjogJGNvbC10ZXh0LWxpZ2h0ICFpbXBvcnRhbnQ7XG4gICAgICAgIGN1cnNvcjogbm90LWFsbG93ZWQ7XG4gICAgfVxuXG4gICAgJi5idG4tLXRleHQtbGluayB7XG4gICAgICAgIHBhZGRpbmc6IC4yNWVtIC4yNWVtIC4xMjVlbTtcblxuICAgICAgICAmLmJ0bi0tdGV4dC1saW5rLWludmVydGVkIHtcbiAgICAgICAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJi5idG4tLWRlZmF1bHQge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sLWdyZXktbGlnaHQ7XG4gICAgICAgIGNvbG9yOiAkY29sLXRleHQ7XG4gICAgICAgIGJveC1zaGFkb3c6IGluc2V0IDAgLTNweCAwIHJnYmEoIzAwMCwgLjA3NSk7XG5cbiAgICAgICAgJi5idG4tLW91dGxpbmUge1xuICAgICAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICBjb2xvcjogJGNvbC10ZXh0LW1lZGl1bTtcbiAgICAgICAgICAgIGJveC1zaGFkb3c6IGluc2V0IDAgMCAwIDJweCAkY29sLWdyZXktbGlnaHQ7XG5cbiAgICAgICAgICAgICY6YWN0aXZlIHtcbiAgICAgICAgICAgICAgICBib3gtc2hhZG93OiBpbnNldCAwIDAgMCAycHggc2hhZGUoJGNvbC1ncmV5LWxpZ2h0LCA1JSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmLmJ0bi0tZ2hvc3Qge31cblxuICAgICAgICAmOmhvdmVyLFxuICAgICAgICAmOmZvY3VzIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRpbnQoJGNvbC1ncmV5LWxpZ2h0LCAxMCUpO1xuICAgICAgICAgICAgY29sb3I6ICRjb2wtdGV4dDtcbiAgICAgICAgfVxuXG4gICAgICAgICY6YWN0aXZlIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHNoYWRlKCRjb2wtZ3JleS1saWdodCwgNSUpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJi5idG4tLXByaW1hcnkge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sLXNlYztcbiAgICAgICAgY29sb3I6ICNmZmY7XG5cbiAgICAgICAgJi5idG4tLW91dGxpbmUge1xuICAgICAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICBjb2xvcjogJGNvbC1zZWM7XG4gICAgICAgICAgICBib3gtc2hhZG93OiBpbnNldCAwIDAgMCAycHggJGNvbC1zZWM7XG4gICAgICAgIH1cblxuICAgICAgICAmLmJ0bi0tZ2hvc3Qge31cblxuICAgICAgICAmOmhvdmVyLFxuICAgICAgICAmOmZvY3VzIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRpbnQoJGNvbC1zZWMsIDEwJSk7XG4gICAgICAgICAgICBjb2xvcjogI2ZmZjtcbiAgICAgICAgfVxuXG4gICAgICAgICY6YWN0aXZlIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHNoYWRlKCRjb2wtc2VjLCAxMCUpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJi5idG4tLXNlY29uZGFyeSB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2wtdGVydDtcbiAgICAgICAgY29sb3I6ICNmZmY7XG5cbiAgICAgICAgJi5idG4tLW91dGxpbmUge1xuICAgICAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICBjb2xvcjogJGNvbC10ZXJ0O1xuICAgICAgICAgICAgYm94LXNoYWRvdzogaW5zZXQgMCAwIDAgMnB4ICRjb2wtdGVydDtcbiAgICAgICAgfVxuXG4gICAgICAgICYuYnRuLS1naG9zdCB7fVxuXG4gICAgICAgICY6aG92ZXIsXG4gICAgICAgICY6Zm9jdXMge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdGludCgkY29sLXRlcnQsIDEwJSk7XG4gICAgICAgICAgICBjb2xvcjogI2ZmZjtcbiAgICAgICAgfVxuXG4gICAgICAgICY6YWN0aXZlIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHNoYWRlKCRjb2wtdGVydCwgMTAlKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICYuYnRuLS10ZXJ0aWFyeSB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2wtcXVhdDtcbiAgICAgICAgY29sb3I6ICRjb2wtdGVydDtcblxuICAgICAgICAmLmJ0bi0tb3V0bGluZSB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICAgICAgICAgIGJveC1zaGFkb3c6IGluc2V0IDAgMCAwIDJweCAkY29sLXF1YXQ7XG4gICAgICAgIH1cblxuICAgICAgICAmLmJ0bi0tZ2hvc3Qge31cblxuICAgICAgICAmOmhvdmVyLFxuICAgICAgICAmOmZvY3VzIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2wtY2lucTtcbiAgICAgICAgICAgIGNvbG9yOiAkY29sLXRlcnQ7XG4gICAgICAgIH1cblxuICAgICAgICAmOmFjdGl2ZSB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBzaGFkZSgkY29sLWNpbnEsIDEwJSk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmLmJ0bi0td2hpdGUge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICAgICAgICBjb2xvcjogJGNvbC1wcmltO1xuXG4gICAgICAgICYuYnRuLS1vdXRsaW5lIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgICAgICAgICAgYm94LXNoYWRvdzogaW5zZXQgMCAwIDAgMnB4ICNmZmY7XG4gICAgICAgICAgICBjb2xvcjogI2ZmZjtcbiAgICAgICAgfVxuXG4gICAgICAgICYuYnRuLS1naG9zdCB7fVxuXG4gICAgICAgICY6aG92ZXIsXG4gICAgICAgICY6Zm9jdXMge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgICAgICAgICAgIGNvbG9yOiAkY29sLXByaW07XG4gICAgICAgICAgICBib3gtc2hhZG93OiBpbnNldCAwIDAgMCAwICNmZmY7XG4gICAgICAgIH1cblxuICAgICAgICAmOmFjdGl2ZSB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBzaGFkZSgjZmZmLCA1JSk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmLmJ0bi0tc21hbGwge1xuICAgICAgICBmb250LXNpemU6IC44NzVyZW07XG4gICAgfVxuXG4gICAgJi5idG4tLXgtc21hbGwge1xuICAgICAgICBmb250LXNpemU6IC43NXJlbTtcbiAgICB9XG5cbiAgICAmLmJ0bi0tbGFyZ2Uge1xuICAgICAgICBmb250LXNpemU6IDEuMTI1cmVtO1xuICAgIH1cblxuICAgICYuYnRuLS14LWxhcmdlIHtcbiAgICAgICAgZm9udC1zaXplOiAxLjI1cmVtO1xuICAgIH1cblxuICAgICYuYnRuLS1zbWFsbC1wYWRkaW5nIHtcbiAgICAgICAgcGFkZGluZzogLjVlbSAuNzVlbTtcbiAgICB9XG5cbiAgICAmLmJ0bi0td2lkZSxcbiAgICAmLmJ0bi0tZnVsbCB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDFlbTtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMWVtO1xuICAgIH1cbn1cblxuLyogPT0gV2hlbiBzY3JlZW4gaXMgNDgwcHggb3Igc21hbGxlciA9PSAqL1xuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoIDogNDgwcHgpIHtcblxuICAgIC5idG4ge1xuXG4gICAgICAgICY6bm90KC5idG4tLWRvbnQtZXhwYW5kKSB7XG4gICAgICAgICAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDAgIWltcG9ydGFudDtcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMCAhaW1wb3J0YW50O1xuICAgICAgICB9XG4gICAgfVxuXG59IiwiLypcbj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICAgU2VjdGlvbnNcbj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4qL1xuXG4uc2VjdGlvbiB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHotaW5kZXg6IDE7XG4gICAgcGFkZGluZzogMDtcbiAgICBtYXJnaW46IDcuNWVtIDA7XG5cbiAgICAmLnNlY3Rpb24tLXNtYWxsLW1hcmdpbiB7XG4gICAgICAgIG1hcmdpbjogMy4yNWVtIDA7XG5cbiAgICAgICAgJi10b3Age1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogMy4yNWVtO1xuICAgICAgICB9XG5cbiAgICAgICAgJi1ib3R0b20ge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMy4yNWVtO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJi5zZWN0aW9uLS1sYXJnZS1tYXJnaW4ge1xuICAgICAgICBtYXJnaW46IDEwLjc1ZW0gMDtcblxuICAgICAgICAmLXRvcCB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAxMC43NWVtO1xuICAgICAgICB9XG5cbiAgICAgICAgJi1ib3R0b20ge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMTAuNzVlbTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICYuc2VjdGlvbi0tcGFkZGluZyB7XG4gICAgICAgIG1hcmdpbjogMDtcblxuICAgICAgICAmLnNlY3Rpb24tLXNtYWxsLXBhZGRpbmcge1xuXG4gICAgICAgICAgICAmLXRvcCAuc2VjdGlvbl9faW5uZXIge1xuICAgICAgICAgICAgICAgIHBhZGRpbmctdG9wOiAzLjI1ZW07XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICYtYm90dG9tIC5zZWN0aW9uX19pbm5lciB7XG4gICAgICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDMuMjVlbTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLnNlY3Rpb25fX2lubmVyIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAzLjI1ZW0gMDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICYuc2VjdGlvbi0tbGFyZ2UtcGFkZGluZyB7XG5cbiAgICAgICAgICAgICYtdG9wIC5zZWN0aW9uX19pbm5lciB7XG4gICAgICAgICAgICAgICAgcGFkZGluZy10b3A6IDEwLjc1ZW07XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICYtYm90dG9tIC5zZWN0aW9uX19pbm5lciB7XG4gICAgICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDEwLjc1ZW07XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5zZWN0aW9uX19pbm5lciB7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogMTAuNzVlbSAwO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLnNlY3Rpb25fX2lubmVyIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDcuNWVtIDA7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmLnNlY3Rpb24tLWJvcmRlci10b3Age1xuICAgICAgICBib3JkZXItdG9wOiAxcHggc29saWQgcmdiYSgjMDAwLCAuMSk7XG4gICAgfVxuXG4gICAgJi5zZWN0aW9uLS1ib3JkZXItYm90dG9tIHtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHJnYmEoIzAwMCwgLjEpO1xuICAgIH1cblxuICAgICYuc2VjdGlvbi0taGlnaGVyLXppbmRleCB7XG4gICAgICAgIHotaW5kZXg6IDU7XG4gICAgfVxuXG4gICAgJi5zZWN0aW9uLS1mdWxsIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcblxuICAgICAgICAuc2VjdGlvbl9faW5uZXIge1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIG1pbi1oZWlnaHQ6IDEwMHZoO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJl9fYmFja2dyb3VuZCB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgei1pbmRleDogMTtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuXG4gICAgICAgICYuc2VjdGlvbl9fYmFja2dyb3VuZC0tZ3JleSB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sLWdyZXktbGlnaHQ7XG4gICAgICAgIH1cblxuICAgICAgICAmLnNlY3Rpb25fX2JhY2tncm91bmQtLWRhcmstZ3JleSB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sLWdyZXk7XG4gICAgICAgIH1cblxuICAgICAgICAmLnNlY3Rpb25fX2JhY2tncm91bmQtLXByaW0ge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbC1wcmltO1xuICAgICAgICB9XG5cbiAgICAgICAgJi5zZWN0aW9uX19iYWNrZ3JvdW5kLS1zZWMge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbC1zZWM7XG4gICAgICAgIH1cblxuICAgICAgICAmLnNlY3Rpb25fX2JhY2tncm91bmQtLXRlcnQge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbC10ZXJ0O1xuICAgICAgICB9XG5cbiAgICAgICAgJi5zZWN0aW9uX19iYWNrZ3JvdW5kLS1ncmFkaWVudC1wcmltIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCh0byBib3R0b20gcmlnaHQsICRjb2wtcHJpbSwgJGNvbC1zZWMpO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbC1wcmltO1xuICAgICAgICB9XG5cbiAgICAgICAgJi5zZWN0aW9uX19iYWNrZ3JvdW5kLS1pbWFnZSB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcblxuICAgICAgICAgICAgJi5zZWN0aW9uX19iYWNrZ3JvdW5kLS1maXhlZCB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1hdHRhY2htZW50OiBmaXhlZDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICYuc2VjdGlvbl9fYmFja2dyb3VuZC0tZmFkZTphZnRlcixcbiAgICAgICAgJi5zZWN0aW9uX19iYWNrZ3JvdW5kLS1mYWRlLWxpZ2h0OmFmdGVyIHtcbiAgICAgICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICB9XG5cbiAgICAgICAgJi5zZWN0aW9uX19iYWNrZ3JvdW5kLS1mYWRlOmFmdGVyIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoJGNvbC10ZXh0LCAuNSk7XG4gICAgICAgIH1cblxuICAgICAgICAmLnNlY3Rpb25fX2JhY2tncm91bmQtLWZhZGUtbGlnaHQ6YWZ0ZXIge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgjZmZmLCAuNSk7XG4gICAgICAgIH1cblxuICAgICAgICAmLnNlY3Rpb25fX2JhY2tncm91bmQtLWxvZ28tcGF0dGVybiB7XG5cbiAgICAgICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogdXJsKCcuLi9pbWcvdGhlbWUvYmFja2dyb3VuZC1sb2dvLXBhdHRlcm4uc3ZnJykgY2VudGVyIC8gNzUlIHJlcGVhdDtcbiAgICAgICAgICAgICAgICBvcGFjaXR5OiAuMDU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmLXZpZGVvIHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcblxuICAgICAgICAgICAgJjphZnRlciB7IC8vIGxheWVyIGJsb2NraW5nIGludGVyYWN0aW9uIHdpdGggdmlkZW8gY29tcG9uZW50XG4gICAgICAgICAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgIHotaW5kZXg6IDE7XG4gICAgICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAucGxheWVyIHtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgIG9iamVjdC1maXQ6IGNvdmVyO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgJl9faW5uZXIge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIHotaW5kZXg6IDI7XG4gICAgfVxuXG4gICAgJl9fZm9vdGVyIHtcbiAgICAgICAgbWFyZ2luOiA0ZW0gMCAwO1xuXG4gICAgICAgICYuc2VjdGlvbl9fZm9vdGVyLS1zbWFsbC1tYXJnaW4ge1xuICAgICAgICAgICAgbWFyZ2luOiAyZW0gMCAwO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4vKiA9PSBXaGVuIHNjcmVlbiBpcyA1ODBweCBvciBzbWFsbGVyID09ICovXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGggOiA1ODBweCkge1xuXG4gICAgLnNlY3Rpb24ge1xuICAgICAgICBtYXJnaW46IDRlbSAwO1xuXG4gICAgICAgICYuc2VjdGlvbi0tc21hbGwtbWFyZ2luIHtcbiAgICAgICAgICAgIG1hcmdpbjogMi41ZW0gMDtcblxuICAgICAgICAgICAgJi10b3Age1xuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDIuNWVtO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmLWJvdHRvbSB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMi41ZW07XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmLnNlY3Rpb24tLWxhcmdlLW1hcmdpbiB7XG4gICAgICAgICAgICBtYXJnaW46IDZlbSAwO1xuXG4gICAgICAgICAgICAmLXRvcCB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogNmVtO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmLWJvdHRvbSB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogNmVtO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJi5zZWN0aW9uLS1wYWRkaW5nIHtcbiAgICAgICAgICAgIG1hcmdpbjogMDtcblxuICAgICAgICAgICAgJi5zZWN0aW9uLS1zbWFsbC1wYWRkaW5nIHtcblxuICAgICAgICAgICAgICAgICYtdG9wIC5zZWN0aW9uX19pbm5lciB7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmctdG9wOiAyLjVlbTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAmLWJvdHRvbSAuc2VjdGlvbl9faW5uZXIge1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMi41ZW07XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgLnNlY3Rpb25fX2lubmVyIHtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMi41ZW0gMDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICYuc2VjdGlvbi0tbGFyZ2UtcGFkZGluZyB7XG5cbiAgICAgICAgICAgICAgICAmLXRvcCAuc2VjdGlvbl9faW5uZXIge1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLXRvcDogNmVtO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICYtYm90dG9tIC5zZWN0aW9uX19pbm5lciB7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiA2ZW07XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgLnNlY3Rpb25fX2lubmVyIHtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogNmVtIDA7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAuc2VjdGlvbl9faW5uZXIge1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDRlbSAwO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJl9fZm9vdGVyIHtcbiAgICAgICAgICAgIG1hcmdpbjogM2VtIDAgMDtcblxuICAgICAgICAgICAgJi5zZWN0aW9uX19mb290ZXItLXNtYWxsLW1hcmdpbiB7XG4gICAgICAgICAgICAgICAgbWFyZ2luOiAxLjVlbSAwIDA7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbn0iLCIvKlxuPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgICBTZWN0aW9uLXRpdGxlXG49PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuKi9cblxuLnNlY3Rpb24tdGl0bGUge1xuICAgIG1hcmdpbjogNGVtIDAgMi41ZW07XG4gICAgQGluY2x1ZGUgZmxleG1hcmdpbjtcblxuICAgICYuc2VjdGlvbi10aXRsZS0taW52ZXJ0ZWQge1xuXG4gICAgICAgIC5wcmV0aXRsZSxcbiAgICAgICAgLnRpdGxlLFxuICAgICAgICAuc3VidGl0bGUge1xuICAgICAgICAgICAgY29sb3I6ICNmZmY7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmLnNlY3Rpb24tdGl0bGUtLXNtYWxsIHtcbiAgICAgICAgZm9udC1zaXplOiAuNzVlbTtcbiAgICB9XG5cbiAgICAmLnNlY3Rpb24tdGl0bGUtLWxhcmdlIHtcbiAgICAgICAgZm9udC1zaXplOiAxLjI1ZW07XG4gICAgfVxuXG4gICAgJi5zZWN0aW9uLXRpdGxlLS1zbWFsbC1tYXJnaW4ge1xuICAgICAgICBtYXJnaW46IDJlbSAwIDEuMjVlbTtcbiAgICAgICAgQGluY2x1ZGUgZmxleG1hcmdpbjtcbiAgICB9XG5cbiAgICAmLnRleHQtY2VudGVyIGhyIHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgICB9XG5cbiAgICAucHJldGl0bGUsXG4gICAgLnN1YnRpdGxlIHtcbiAgICAgICAgbWFyZ2luOiAuNWVtIDA7XG4gICAgICAgIEBpbmNsdWRlIGZsZXhtYXJnaW47XG4gICAgICAgIGNvbG9yOiAkY29sLXRleHQ7XG4gICAgICAgIGZvbnQtc2l6ZTogMS41ZW07XG4gICAgfVxuXG4gICAgLnRpdGxlIHtcbiAgICAgICAgbWFyZ2luOiAuMzVlbSAwO1xuICAgICAgICBAaW5jbHVkZSBmbGV4bWFyZ2luO1xuICAgICAgICBjb2xvcjogJGNvbC10ZXh0O1xuICAgICAgICBmb250LXNpemU6IDNlbTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuMjVlbTtcbiAgICB9XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aCA6IDU4MHB4KSB7XG5cbiAgICAuc2VjdGlvbi10aXRsZSB7XG5cbiAgICAgICAgLy8gY29udmVydCBsaW5lIGJyZWFrcyB0byBzcGFjZXMgb24gbW9iaWxlXG4gICAgICAgIGJyLFxuICAgICAgICBicjphZnRlciB7XG4gICAgICAgICAgICBjb250ZW50OiAnICc7XG4gICAgICAgIH1cblxuICAgICAgICAudGl0bGUge1xuICAgICAgICAgICAgZm9udC1zaXplOiAyLjVlbTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5wcmV0aXRsZSxcbiAgICAgICAgLnN1YnRpdGxlIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMS4yNWVtO1xuICAgICAgICB9XG4gICAgfVxuXG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aCA6IDQwMHB4KSB7XG5cbiAgICAuc2VjdGlvbi10aXRsZSB7XG5cbiAgICAgICAgLnRpdGxlIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMmVtO1xuICAgICAgICB9XG4gICAgfVxuXG59IiwiLypcbj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICAgSGVyb1xuPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiovXG5cbi5oZXJvIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgcGFkZGluZzogMDtcbiAgICBtYXJnaW46IDA7XG5cbiAgICAmLmhlcm8tLWhvbWUge31cblxuICAgICZfX2JhY2tncm91bmQtaW1hZ2UsXG4gICAgJl9fYmFja2dyb3VuZC12aWRlbyB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgIH1cblxuICAgICZfX2JhY2tncm91bmQtaW1hZ2Uge1xuICAgICAgICB6LWluZGV4OiAxO1xuICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7IC8vIHJlbW92ZSBpZiBjb250cm9sbGVkIGluLWxpbmUgKHZpYSBXUCBzZXR0aW5nKVxuICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgIH1cblxuICAgICZfX2JhY2tncm91bmQtdmlkZW8ge1xuICAgICAgICB6LWluZGV4OiAyO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDAwO1xuXG4gICAgICAgIC8vIGRpc2FibGUgY29udHJvbHMgb24gdmlkZW8gd2l0aCBvdmVybGF5XG4gICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICB6LWluZGV4OiAyO1xuICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmX192aWRlby1wbGF5ZXIge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHotaW5kZXg6IDE7XG4gICAgICAgIHRvcDogNTAlO1xuICAgICAgICBsZWZ0OiA1MCU7XG4gICAgICAgIHdpZHRoOiAxOTIwcHg7XG4gICAgICAgIGhlaWdodDogMTA4MHB4O1xuICAgICAgICBtYXJnaW46IC01NDBweCAwIDAgLTk2MHB4O1xuICAgIH1cblxuICAgICZfX2lubmVyIHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICB6LWluZGV4OiAyO1xuICAgIH1cblxuICAgICZfX2NvbnRlbnQge31cblxuICAgICZfX3RpdGxlIHtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICBmb250LXNpemU6IDRlbTtcbiAgICB9XG5cbiAgICAmX19zdWJ0aXRsZSB7XG4gICAgICAgIG1hcmdpbjogLjVlbSAwIDA7XG4gICAgICAgIGZvbnQtc2l6ZTogMmVtO1xuICAgIH1cblxuICAgICZfX2Rlc2NyaXB0aW9uIHtcbiAgICAgICAgbWFyZ2luOiAxZW0gMCAwO1xuICAgICAgICBmb250LXNpemU6IDEuMjVlbTtcbiAgICB9XG5cbiAgICAmX19idG5zIHtcbiAgICAgICAgbWFyZ2luOiAxZW0gMCAwO1xuICAgIH1cblxuICAgICZfX21pY3JvIHtcbiAgICAgICAgbWFyZ2luOiAxZW0gMCAwO1xuICAgICAgICBmb250LXNpemU6IDFlbTtcbiAgICB9XG59IiwiLypcbj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICAgVGVhc2VyXG49PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuKi9cblxuYm9keS50ZWFzZXItYnV0dG9uLXZpc2libGUge1xuXG4gICAgLnNlY3Rpb24uc2VjdGlvbi0tdGVhc2VyIHtcblxuICAgICAgICAudGVhc2VyIHtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gICAgICAgIH1cblxuICAgICAgICAuYnRucyB7XG4gICAgICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICAgICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLnNlY3Rpb24uc2VjdGlvbi0tdGVhc2VyIHtcbiAgICBtYXJnaW46IDA7XG5cbiAgICAuc2VjdGlvbl9faW5uZXIge1xuICAgICAgICBwYWRkaW5nOiAxNGVtIDAgN2VtO1xuICAgIH1cblxuICAgIC5zZWN0aW9uX19mb290ZXIge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHotaW5kZXg6IDI7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIGJvdHRvbTogMmVtO1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgICBmb250LXNpemU6IC44NzVlbTtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuXG4gICAgICAgIGEge1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgICAgIGNvbG9yOiBpbmhlcml0O1xuICAgICAgICAgICAgb3BhY2l0eTogLjU7XG5cbiAgICAgICAgICAgICY6aG92ZXIsXG4gICAgICAgICAgICAmOmZvY3VzIHtcbiAgICAgICAgICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIGltZyB7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIGhlaWdodDogLjg3NWVtO1xuICAgICAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICAgICAgICBtYXJnaW46IC41ZW07XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAudGVhc2VyIHtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCA0ZW0sIDApO1xuICAgICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gLjVzIGVhc2UtaW4tb3V0O1xuICAgIH1cblxuICAgIC5idG5zIHtcbiAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgICAgICB0cmFuc2l0aW9uOiBhbGwgLjVzIGVhc2Utb3V0IC4yNXM7XG4gICAgfVxufVxuXG4udGVhc2VyIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbWF4LXdpZHRoOiA1MGVtO1xuICAgIG1hcmdpbjogM2VtIGF1dG87XG4gICAgQGluY2x1ZGUgZmxleG1hcmdpbjtcblxuICAgICZfX2JhY2tncm91bmQge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHotaW5kZXg6IDE7XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbC10ZXJ0O1xuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgyZGVnKTtcblxuICAgICAgICAmOmJlZm9yZSxcbiAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKC00ZGVnKTtcbiAgICAgICAgfVxuXG4gICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgIHotaW5kZXg6IDE7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sLXNlYztcbiAgICAgICAgfVxuXG4gICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgei1pbmRleDogMjtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHVybCgnLi4vaW1nL3RoZW1lL2JhY2tncm91bmQtbG9nby1wYXR0ZXJuLnN2ZycpIGNlbnRlciAvIGNvdmVyIG5vLXJlcGVhdDtcbiAgICAgICAgICAgIG9wYWNpdHk6IC4wNzU7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmX19jb250ZW50IHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICB6LWluZGV4OiAyO1xuICAgICAgICBwYWRkaW5nOiAzZW0gMmVtO1xuICAgIH1cbn0iLCIvKlxuPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgICBUZWFzZXJcbj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4qL1xuXG4uc2VjdGlvbi5zZWN0aW9uLS1idWlsZCB7XG4gICAgbWFyZ2luOiAwO1xuXG4gICAgLnNlY3Rpb25fX2lubmVyIHtcbiAgICAgICAgcGFkZGluZzogMTNlbSAwIDJlbTtcbiAgICB9XG59XG5cbi5idWlsZCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHBhZGRpbmc6IDAgMjAlO1xuXG4gICAgJl9fc2lkZWJhciB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICB3aWR0aDogMjAlO1xuXG4gICAgICAgICYuYnVpbGRfX3NpZGViYXItLWxlZnQge1xuICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDNlbTtcbiAgICAgICAgfVxuXG4gICAgICAgICYuYnVpbGRfX3NpZGViYXItLXJpZ2h0IHtcbiAgICAgICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAzZW07XG4gICAgICAgIH1cblxuICAgICAgICBpbWcge1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIGhlaWdodDogYXV0bztcblxuICAgICAgICAgICAgJltzcmMqPVwiLmpwZ1wiXSB7XG4gICAgICAgICAgICAgICAgYm94LXNoYWRvdzogMCAwIDAgLjVlbSByZ2JhKCMwMDAsIC4yNSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICBpbWcsIGEge1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICBtYXJnaW46IDJlbSAwO1xuICAgICAgICAgICAgQGluY2x1ZGUgZmxleG1hcmdpbjtcbiAgICAgICAgfVxuXG4gICAgICAgIC5saWdodGJveCB7XG4gICAgICAgICAgICBjdXJzb3I6IHpvb20taW47XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmX19jb250YWluZXIge1xuICAgICAgICBmbGV4LWdyb3c6IDE7XG4gICAgfVxuXG4gICAgJl9fd2luZG93IHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgaGVpZ2h0OiAwO1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogNTYuMjUlICFpbXBvcnRhbnQ7XG4gICAgICAgIGJveC1zaGFkb3c6IDAgMCAwIC41ZW0gcmdiYSgjMDAwLCAuMjUpO1xuXG4gICAgICAgICYtaW5uZXIge1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICAgICAgYmFja2dyb3VuZDogdXJsKCcuLi9pbWcvcGxhY2Vob2xkZXIvYnVpbGQtcGxhY2Vob2xkZXIuanBnJykgY2VudGVyIC8gY292ZXIgbm8tcmVwZWF0IHJnYigzNSwgMzEsIDMyKTtcbiAgICAgICAgICAgIC8vIGJhY2tncm91bmQtY29sb3I6IHJnYigzNSwgMzEsIDMyKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICZfX2Zvb3RlciB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcbiAgICAgICAgbWFyZ2luLXRvcDogMS43NWVtO1xuICAgICAgICBmb250LXNpemU6IC44NzVlbTtcbiAgICAgICAgY29sb3I6ICNmZmY7XG5cbiAgICAgICAgYSB7XG4gICAgICAgICAgICBjb2xvcjogaW5oZXJpdDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5sb2dvLFxuICAgIC5wcm9ncmVzcyB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgbGVmdDogNTAlO1xuICAgICAgICB0b3A6IDUwJTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG4gICAgfVxuXG4gICAgLmxvZ28ge1xuICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoJy4uLy4uL1RlbXBsYXRlRGF0YS9wcm9ncmVzc0xvZ28uTGlnaHQucG5nJykgbm8tcmVwZWF0IGNlbnRlciAvIGNvbnRhaW47XG4gICAgICAgIHdpZHRoOiAxNTRweDtcbiAgICAgICAgaGVpZ2h0OiAxMzBweDtcblxuICAgICAgICAmLkRhcmsge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCcuLi8uLi9UZW1wbGF0ZURhdGEvcHJvZ3Jlc3NMb2dvLkRhcmsucG5nJyk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAucHJvZ3Jlc3Mge1xuICAgICAgICBoZWlnaHQ6IDE4cHg7XG4gICAgICAgIHdpZHRoOiAxNDFweDtcbiAgICAgICAgbWFyZ2luLXRvcDogOTBweDtcblxuICAgICAgICAmLkRhcmsge1xuXG4gICAgICAgICAgICAuZW1wdHkge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnLi4vLi4vVGVtcGxhdGVEYXRhL3Byb2dyZXNzRW1wdHkuRGFyay5wbmcnKTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLmZ1bGwge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnLi4vLi4vVGVtcGxhdGVEYXRhL3Byb2dyZXNzRnVsbC5EYXJrLnBuZycpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLmVtcHR5IHtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHVybCgnLi4vLi4vVGVtcGxhdGVEYXRhL3Byb2dyZXNzRW1wdHkuTGlnaHQucG5nJykgbm8tcmVwZWF0IHJpZ2h0IC8gY292ZXI7XG4gICAgICAgICAgICBmbG9hdDogcmlnaHQ7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgfVxuXG4gICAgICAgIC5mdWxsIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHVybCgnLi4vLi4vVGVtcGxhdGVEYXRhL3Byb2dyZXNzRnVsbC5MaWdodC5wbmcnKSBuby1yZXBlYXQgbGVmdCAvIGNvdmVyO1xuICAgICAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgICAgICB3aWR0aDogMCU7XG4gICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aCA6IDE0MDFweCkge1xuXG4gICAgLnNlY3Rpb24uc2VjdGlvbi0tYnVpbGQgLmNvbnRhaW5lciB7XG4gICAgICAgIHdpZHRoOiA4NXZ3O1xuICAgIH1cblxufSIsIi8qXG49PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgIFRpbGVzXG49PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuKi8iLCIvKlxuPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgICBCb2R5IGNsYXNzZXNcbj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4qL1xuXG5ib2R5IHtcblxuICAgICYuc2hvdy1tZW51IHt9XG5cbiAgICAmLnNob3ctc2VhcmNoIHt9XG5cbiAgICAmLnNob3ctY29va2llcy1ub3RpZmljYXRpb24ge31cbn0iLCIvKlxuPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgICBJbnRlcm5ldCBFeHBsb3JlciBmaXhlc1xuPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiovXG5cbmJvZHkuYnJvd3Nlci1pZSB7XG5cbn0iLCIvKlxuPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgICBpT1MgZml4ZXNcbj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4qL1xuXG5ib2R5LmJyb3dzZXItaW9zIHtcblxuICAgIC5zZWN0aW9uLnNlY3Rpb24tLWZ1bGwgLnNlY3Rpb25fX2lubmVyIHtcbiAgICAgICAgLy9taW4taGVpZ2h0OiAtd2Via2l0LWZpbGwtYXZhaWxhYmxlO1xuICAgIH1cblxuICAgIC5zZWN0aW9uX19iYWNrZ3JvdW5kIHtcblxuICAgICAgICAmLnNlY3Rpb25fX2JhY2tncm91bmQtLWltYWdlLnNlY3Rpb25fX2JhY2tncm91bmQtLWZpeGVkIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtYXR0YWNobWVudDogc2Nyb2xsO1xuICAgICAgICB9XG4gICAgfVxuXG59IiwiLypcbj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cdE1lZGlhIHF1ZXJpZXNcbj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4qL1xuXG5AaW1wb3J0ICdtZWRpYXF1ZXJpZXMvMTQwMCc7XG5AaW1wb3J0ICdtZWRpYXF1ZXJpZXMvMTIwMCc7XG5AaW1wb3J0ICdtZWRpYXF1ZXJpZXMvOTkxJztcbkBpbXBvcnQgJ21lZGlhcXVlcmllcy83NjcnO1xuQGltcG9ydCAnbWVkaWFxdWVyaWVzLzY3NSc7XG5AaW1wb3J0ICdtZWRpYXF1ZXJpZXMvNTgwJztcbkBpbXBvcnQgJ21lZGlhcXVlcmllcy80ODAnO1xuQGltcG9ydCAnbWVkaWFxdWVyaWVzLzQwMCc7XG5AaW1wb3J0ICdtZWRpYXF1ZXJpZXMvMzIwJzsiLCIvKipcbiogTGFyZ2UgRGV2aWNlcywgV2lkZSBTY3JlZW5zXG4qKi9cblxuLyogPT0gV2hlbiBzY3JlZW4gaXMgMTQwMHB4IG9yIHNtYWxsZXIgPT0gKi9cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aCA6IDE0MDBweCkge1xuXG59XG5cbi8qID09IFdoZW4gc2NyZWVuIGlzIGxhcmdlciB0aGFuIDE0MDBweCA9PSAqL1xuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoIDogMTQwMXB4KSB7XG5cbn0iLCIvKipcbiogTGFyZ2UgRGV2aWNlcywgV2lkZSBTY3JlZW5zXG4qKi9cblxuLyogPT0gV2hlbiBzY3JlZW4gaXMgMTIwMHB4IG9yIHNtYWxsZXIgPT0gKi9cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aCA6IDEyMDBweCkge1xuXG59XG5cbi8qID09IFdoZW4gc2NyZWVuIGlzIGxhcmdlciB0aGFuIDEyMDBweCA9PSAqL1xuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoIDogMTIwMXB4KSB7XG5cbn0iLCIvKipcbiogTWVkaXVtIERldmljZXMsIERlc2t0b3BzXG4qKi9cblxuLyogPT0gV2hlbiBzY3JlZW4gaXMgOTkxcHggb3Igc21hbGxlciA9PSAqL1xuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoIDogOTkxcHgpIHtcblxufVxuXG4vKiA9PSBXaGVuIHNjcmVlbiBpcyBsYXJnZXIgdGhhbiA5OTFweCA9PSAqL1xuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoIDogOTkycHgpIHtcblxufSIsIi8qKlxuKiBTbWFsbCBEZXZpY2VzLCBUYWJsZXRzXG4qKi9cblxuLyogPT0gV2hlbiBzY3JlZW4gaXMgNzY3cHggb3Igc21hbGxlciA9PSAqL1xuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoIDogNzY3cHgpIHtcblxufVxuXG4vKiA9PSBXaGVuIHNjcmVlbiBpcyBsYXJnZXIgdGhhbiA3NjdweCA9PSAqL1xuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoIDogNzY4cHgpIHtcblxufSIsIi8qKlxuKiBTbWFsbCBEZXZpY2VzLCBUYWJsZXRzXG4qKi9cblxuLyogPT0gV2hlbiBzY3JlZW4gaXMgNjc1cHggb3Igc21hbGxlciA9PSAqL1xuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoIDogNjc1cHgpIHtcblxufVxuXG4vKiA9PSBXaGVuIHNjcmVlbiBpcyBsYXJnZXIgdGhhbiA2NzVweCA9PSAqL1xuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoIDogNjc2cHgpIHtcblxufSIsIi8qKlxuKiBTbWFsbCBEZXZpY2VzLCBUYWJsZXRzXG4qKi9cblxuLyogPT0gV2hlbiBzY3JlZW4gaXMgNTgwcHggb3Igc21hbGxlciA9PSAqL1xuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoIDogNTgwcHgpIHtcblxufVxuXG4vKiA9PSBXaGVuIHNjcmVlbiBpcyBsYXJnZXIgdGhhbiA1ODBweCA9PSAqL1xuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoIDogNTgxcHgpIHtcblxufSIsIi8qKlxuKiBFeHRyYSBTbWFsbCBEZXZpY2VzLCBQaG9uZXNcbioqL1xuXG4vKiA9PSBXaGVuIHNjcmVlbiBpcyA0ODBweCBvciBzbWFsbGVyID09ICovXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGggOiA0ODBweCkge1xuXG4gICAgaHRtbCB7XG4gICAgICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1iYXNlLW1vYmlsZTtcbiAgICB9XG5cbn1cblxuLyogPT0gV2hlbiBzY3JlZW4gaXMgbGFyZ2VyIHRoYW4gNDgwcHggPT0gKi9cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aCA6IDQ4MXB4KSB7XG5cbn0iLCIvKipcbiogRXh0cmEgU21hbGwgRGV2aWNlcywgUGhvbmVzXG4qKi9cblxuLyogPT0gV2hlbiBzY3JlZW4gaXMgNDAwcHggb3Igc21hbGxlciA9PSAqL1xuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoIDogNDAwcHgpIHtcblxufVxuXG4vKiA9PSBXaGVuIHNjcmVlbiBpcyBsYXJnZXIgdGhhbiA0MDBweCA9PSAqL1xuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoIDogNDAxcHgpIHtcblxufSIsIi8qKlxuKiBFeHRyYSBTbWFsbCBEZXZpY2VzLCBQaG9uZXNcbioqL1xuXG4vKiA9PSBXaGVuIHNjcmVlbiBpcyAzMjBweCBvciBzbWFsbGVyID09ICovXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGggOiAzMjBweCkge1xuXG59XG5cbi8qID09IFdoZW4gc2NyZWVuIGlzIGxhcmdlciB0aGFuIDMyMHB4ID09ICovXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGggOiAzMjFweCkge1xuXG59Il0sIm1hcHBpbmdzIjoiQUFBQTs7OztFQUlFO0FDSkY7Ozs7RUFJRTtBS0pGOzs7O0VBSUU7QUNKRjs7OztFQUlFO0FDSkY7Ozs7R0FJRztBaUNLSCxBQUFBLEtBQUssQ0FBQztFQUNKLE9BQU8sRUFBRSxDQUFFO0VsQitLWCxrQkFBa0IsRWtCOUtFLE9BQU8sQ0FBQyxLQUFJLENBQUMsTUFBTTtFbEIrS2xDLGFBQWEsRWtCL0tFLE9BQU8sQ0FBQyxLQUFJLENBQUMsTUFBTTtFbEJnTC9CLFVBQVUsRWtCaExFLE9BQU8sQ0FBQyxLQUFJLENBQUMsTUFBTSxHQUl4QztFQU5ELEFBQUEsS0FBSyxBQUdGLEdBQUcsQ0FBQztJQUNILE9BQU8sRUFBRSxDQUFFLEdBQ1o7O0FBR0gsQUFBQSxTQUFTLENBQUM7RUFDUixPQUFPLEVBQUUsSUFBSyxHQUtmO0VBTkQsQUFBQSxTQUFTLEFBR04sR0FBRyxDQUFNO0lBQUUsT0FBTyxFQUFFLEtBQU0sR0FBSTs7QUFLakMsQUFBVyxFQUFULEFBQUEsU0FBUyxBQUFBLEdBQUcsQ0FBSTtFQUFFLE9BQU8sRUFBRSxTQUFVLEdBQUk7O0FBRTND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 */
