/* ----------
 @ Bourbon
---------- */
/* ----------
 @ Bootstrap Variables
---------- */
/* ----------
 @ Custom Variables
---------- */
/* --------------------
 @@ Project Specific Variables
-------------------- */
/* ----------
 @ Options
---------- */
/* ----------
 @ Colors
---------- */
:root {
  --brand-primary: #0c2189;
  --brand-secondary: #09d6a1;
  --brand-tertiary: #e83452;
  --brand-success: #30be76;
  --brand-info: #0c2189;
  --brand-warning: #09d6a1;
  --brand-danger: #e83452;
  --brand-light-blue: #edf3f8;
  --brand-orange: #ffc200;
  --brand-light-grey: #F5F5F5;
  --brand-mid-grey: #707070;
  --brand-vigor: #0c2189;
  --brand-process: #09d6a1;
  --brand-energize: #e83452;
  --brand-pursuit: #00c3ff;
  --brand-ignite: #ffc200;
}

/* ----------
 @ Typography
---------- */
/* ----------
 @ Layout
---------- */
/* ----------
 @ Custom Utilities
---------- */
/* Project specific mixins */
/* --------------------
 @@ Mixins
-------------------- */
/* ----------
 @ Maintain Aspect Ratio
	- *** requires that the element has an inner container element if there is inner content
	- $x => x portion of ratio
	- $y => y portion of ratio
    - $c => set to 'false' to skip :first-child styling
---------- */
/* ----------
 @ Background Image
	- Shortcut for linking images in the configured images folder
	- $i => image file name (relative to images folder)
	- $rest => any additional 'background' property shortcut declarations (ie: no-repeat)
---------- */
/* ----------
 @ Size
 	- Shortcut for setting height and width
 	- $width => width of element
 	- $height => height of element
 	- Single value will set both values (e.g. size(100%);
---------- */
/* --------------------
 @@ Functions
-------------------- */
/* ----------
 @ Color Get
 	- get value from the $theme-colors map
---------- */
/* ----------
 @ Breakpoint Get
 	- get value from the $grid-breakpoints map
 	- $type => 'max' | 'min', depending on media query type
---------- */
/* ----------
 @ Rems
	- convert pixels to rems
	- $p => pixel value
	- $b => base size (to use in formula) - defaults to $font-sizes root variable
---------- */
/* ----------
 @ Map Deep Get
 	- get value from nested maps
---------- */
/* ----------
 @ Weight Get
 	- get value from the $font-weights map
---------- */
.c-simple-banner {
  background-color: #0c2189;
  color: #fff;
  position: relative;
  padding: 3.25rem Max(2rem, calc((100vw - 90ch) / 2)) 2.5rem;
  text-align: center;
  overflow: hidden;
}

.c-simple-banner__icon-holder {
  margin: 0 auto;
}

.c-simple-banner__icon-holder + .c-simple-banner__title {
  margin-top: 0.75rem;
}

.c-simple-banner__icon-holder svg {
  width: 85px;
  height: auto;
}

.c-simple-banner__title {
  color: #fff;
}

.c-simple-banner__blurb {
  font-size: 1.16667rem;
  line-height: 1.6;
  font-weight: 500;
  margin: 0 auto;
}

.c-simple-banner__arrow {
  color: rgba(255, 255, 255, 0.15);
  position: absolute;
  margin: 0;
  pointer-events: none;
  width: auto;
}

.c-simple-banner__arrow:nth-of-type(1) {
  height: calc(100% + 40px);
  inset: -20px auto -20px -80px;
}

.c-simple-banner__arrow:nth-of-type(2) {
  height: 50%;
  inset: 0 auto auto 330px;
}

.c-simple-banner__arrow:nth-of-type(3) {
  height: 40%;
  inset: auto 270px -13% auto;
}

.c-simple-banner__arrow:nth-of-type(4) {
  height: 90%;
  inset: -15% -45px auto auto;
}

.c-simple-banner__buttons {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 1rem;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-flow: row wrap;
          flex-flow: row wrap;
  margin-top: 1.5rem;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}

@media only screen and (max-width: 768px) {
  .c-simple-banner__arrow:nth-of-type(1) {
    height: 120px;
    inset: -20px auto auto -32px;
  }
  .c-simple-banner__arrow:nth-of-type(2) {
    height: 50px;
    inset: 4px auto auto 85px;
  }
  .c-simple-banner__arrow:nth-of-type(3) {
    height: 54px;
    inset: auto 75px -15px auto;
  }
  .c-simple-banner__arrow:nth-of-type(4) {
    height: 110px;
    inset: auto -19px -30px auto;
  }
}

.c-404-cta-card-grid {
  padding: 5rem var(--side-gutter) 2rem;
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: (1fr)[3];
  grid-template-columns: repeat(3, 1fr);
  gap: 2rem;
  margin: 0;
}

@media only screen and (max-width: 768px) {
  .c-404-cta-card-grid {
    padding: 2.5rem var(--side-gutter);
    -ms-grid-columns: 1fr;
    grid-template-columns: 1fr;
  }
}

.c-cta-card {
  position: relative;
  text-align: center;
  padding: 3.75rem 1rem;
  border-radius: 30px 0;
  -webkit-box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
          box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
  margin: 0;
  background-color: #fff;
  -webkit-transition: 150ms background ease, 150ms color ease, 150ms -webkit-transform ease, 150ms -webkit-box-shadow ease;
  transition: 150ms background ease, 150ms color ease, 150ms -webkit-transform ease, 150ms -webkit-box-shadow ease;
  transition: 150ms transform ease, 150ms box-shadow ease, 150ms background ease, 150ms color ease;
  transition: 150ms transform ease, 150ms box-shadow ease, 150ms background ease, 150ms color ease, 150ms -webkit-transform ease, 150ms -webkit-box-shadow ease;
  -webkit-transform: scale(1.001);
          transform: scale(1.001);
}

.c-cta-card--smaller {
  padding-top: 1.8rem;
  padding-bottom: 1.8rem;
}

.c-cta-card--align-left {
  text-align: left;
  padding-left: 2rem;
  padding-right: 2rem;
}

.c-cta-card--even-padding {
  padding: 2rem;
}

.c-cta-card:hover,
.c-cta-card:focus-within {
  -webkit-transform: scale(1.01);
          transform: scale(1.01);
  -webkit-box-shadow: 0 5px 15px rgba(0, 0, 0, 0.15);
          box-shadow: 0 5px 15px rgba(0, 0, 0, 0.15);
  background-color: #0c2189;
  color: #fff;
}

.c-cta-card:hover .c-cta-card__icon-holder svg,
.c-cta-card:focus-within .c-cta-card__icon-holder svg {
  --cie-icon-color: #fff !important;
}

.c-cta-card:hover .c-cta-card__title,
.c-cta-card:focus-within .c-cta-card__title {
  color: #fff;
}

.c-cta-card__icon-holder svg {
  height: 110px;
  width: auto;
}

.c-cta-card--smaller .c-cta-card__icon-holder svg {
  height: 80px;
}

.c-cta-card__title {
  margin-top: 0;
  color: #0c2189;
  font-size: 1.44444rem;
  line-height: 1.2;
  font-weight: 700;
}

.c-cta-card--smaller .c-cta-card__title {
  font-size: 1.16667rem;
  line-height: 1.4;
}

.c-cta-card__icon-holder + .c-cta-card__title {
  margin-top: 1rem;
}

.c-cta-card__blurb {
  margin-top: 0.5rem;
  line-height: 1.6;
}

.c-cta-card--smaller .c-cta-card__blurb {
  font-size: 0.88889rem;
  line-height: 1.5;
}

.c-cta-card__dummy-link {
  margin: 1.1rem auto 0;
  display: inline-block;
  --arrow-color-accent: #ffe180;
  --arrow-color-hover: #ffc200;
  --button-color-hover: #fff;
}

.c-cta-card__link {
  margin: 0;
  position: absolute;
  inset: 0;
  opacity: 0;
}

@media only screen and (max-width: 768px) {
  .c-cta-card {
    padding: 1.5rem 1rem;
  }
  .c-cta-card__title {
    font-size: 1.16667rem;
    line-height: 1.4;
  }
  .c-cta-card__blurb {
    font-size: 0.88889rem;
    line-height: 1.5;
  }
  .c-cta-card__icon-holder svg {
    height: 80px;
  }
}

/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIl91dGlsaXRpZXMuc2NzcyIsInBhZ2UtdGVtcGxhdGVzLzQwNC5jc3MiLCJfY3VzdG9tLXV0aWxpdGllcy5zY3NzIiwiX3ZhcmlhYmxlcy5zY3NzIiwiX21peGlucy5zY3NzIiwiLi4vLi4vLi4vYmFzZS10aGVtZS9hc3NldHMvc2Nzcy91dGlsaXRpZXMvX21peGlucy5zY3NzIiwiY29tcG9uZW50cy9fc2ltcGxlLWJhbm5lci5zY3NzIiwiY29tcG9uZW50cy9fNDA0LWN0YS1jYXJkLWdyaWQuc2NzcyIsImNvbXBvbmVudHMvX2N0YS1jYXJkLnNjc3MiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7O1lDRVk7QURJWjs7WUNEWTtBQ0xaOztZRFFZO0FFUlo7O3NCRldzQjtBRVB0Qjs7WUZVWTtBRUpaOztZRk9ZO0FFNkJaO0VBQ0ksd0JBQWdCO0VBQ2hCLDBCQUFrQjtFQUNsQix5QkFBaUI7RUFDakIsd0JBQWdCO0VBQ2hCLHFCQUFhO0VBQ2Isd0JBQWdCO0VBQ2hCLHVCQUFlO0VBQ2YsMkJBQW1CO0VBQ25CLHVCQUFlO0VBQ2YsMkJBQW1CO0VBQ25CLHlCQUFpQjtFQUNqQixzQkFBYztFQUNkLHdCQUFnQjtFQUNoQix5QkFBaUI7RUFDakIsd0JBQWdCO0VBQ2hCLHVCQUFlO0FGM0JuQjs7QUVzQ0E7O1lGbENZO0FFd0ZaOztZRnJGWTtBQ3BDWjs7WUR1Q1k7QUc3Q1osNEJBQUE7QUNBQTs7c0JKaURzQjtBSTdDdEI7Ozs7OztZSm9EWTtBSTdCWjs7Ozs7WUptQ1k7QUl4Qlo7Ozs7OztZSitCWTtBSW5CWjs7c0JKc0JzQjtBSWxCdEI7OztZSnNCWTtBSVpaOzs7O1lKaUJZO0FJRlo7Ozs7O1lKUVk7QUlHWjs7O1lKQ1k7QUlXWjs7O1lKUFk7QUsvRlo7RUFDSSx5QkhlMkI7RUdkM0IsV0FBVztFQUNYLGtCQUFrQjtFQUNsQiwyREFBeUU7RUFDekUsa0JBQWtCO0VBQ2xCLGdCQUFnQjtBTGlHcEI7O0FLL0ZBO0VBQ0ksY0FBYztBTGtHbEI7O0FLaEdB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QjtFUHdOdEI7RU90TkU7SUFDSSxZQUFZO0VQd05sQjtBQUNGIiwiZmlsZSI6InBhZ2UtdGVtcGxhdGVzLzQwNC5jc3MiLCJzb3VyY2VzQ29udGVudCI6WyIvKiAtLS0tLS0tLS0tXG4gQCBCb3VyYm9uXG4tLS0tLS0tLS0tICovXG5cbkBpbXBvcnQgXCJib3VyYm9uL2NvcmUvX2JvdXJib24uc2Nzc1wiO1xuXG4vKiAtLS0tLS0tLS0tXG4gQCBCb290c3RyYXAgVmFyaWFibGVzXG4tLS0tLS0tLS0tICovXG5cbkBpbXBvcnQgXCJib290c3RyYXAvc2Nzcy9mdW5jdGlvbnNcIjtcbkBpbXBvcnQgXCJib290c3RyYXAvc2Nzcy92YXJpYWJsZXNcIjtcbkBpbXBvcnQgXCJib290c3RyYXAvc2Nzcy9taXhpbnNcIjsiLCIvKiAtLS0tLS0tLS0tXG4gQCBCb3VyYm9uXG4tLS0tLS0tLS0tICovXG4vKiAtLS0tLS0tLS0tXG4gQCBCb290c3RyYXAgVmFyaWFibGVzXG4tLS0tLS0tLS0tICovXG4vKiAtLS0tLS0tLS0tXG4gQCBDdXN0b20gVmFyaWFibGVzXG4tLS0tLS0tLS0tICovXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLVxuIEBAIFByb2plY3QgU3BlY2lmaWMgVmFyaWFibGVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLyogLS0tLS0tLS0tLVxuIEAgT3B0aW9uc1xuLS0tLS0tLS0tLSAqL1xuLyogLS0tLS0tLS0tLVxuIEAgQ29sb3JzXG4tLS0tLS0tLS0tICovXG46cm9vdCB7XG4gIC0tYnJhbmQtcHJpbWFyeTogIzBjMjE4OTtcbiAgLS1icmFuZC1zZWNvbmRhcnk6ICMwOWQ2YTE7XG4gIC0tYnJhbmQtdGVydGlhcnk6ICNlODM0NTI7XG4gIC0tYnJhbmQtc3VjY2VzczogIzMwYmU3NjtcbiAgLS1icmFuZC1pbmZvOiAjMGMyMTg5O1xuICAtLWJyYW5kLXdhcm5pbmc6ICMwOWQ2YTE7XG4gIC0tYnJhbmQtZGFuZ2VyOiAjZTgzNDUyO1xuICAtLWJyYW5kLWxpZ2h0LWJsdWU6ICNlZGYzZjg7XG4gIC0tYnJhbmQtb3JhbmdlOiAjZmZjMjAwO1xuICAtLWJyYW5kLWxpZ2h0LWdyZXk6ICNGNUY1RjU7XG4gIC0tYnJhbmQtbWlkLWdyZXk6ICM3MDcwNzA7XG4gIC0tYnJhbmQtdmlnb3I6ICMwYzIxODk7XG4gIC0tYnJhbmQtcHJvY2VzczogIzA5ZDZhMTtcbiAgLS1icmFuZC1lbmVyZ2l6ZTogI2U4MzQ1MjtcbiAgLS1icmFuZC1wdXJzdWl0OiAjMDBjM2ZmO1xuICAtLWJyYW5kLWlnbml0ZTogI2ZmYzIwMDtcbn1cblxuLyogLS0tLS0tLS0tLVxuIEAgVHlwb2dyYXBoeVxuLS0tLS0tLS0tLSAqL1xuLyogLS0tLS0tLS0tLVxuIEAgTGF5b3V0XG4tLS0tLS0tLS0tICovXG4vKiAtLS0tLS0tLS0tXG4gQCBDdXN0b20gVXRpbGl0aWVzXG4tLS0tLS0tLS0tICovXG4vKiBQcm9qZWN0IHNwZWNpZmljIG1peGlucyAqL1xuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiBAQCBNaXhpbnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4vKiAtLS0tLS0tLS0tXG4gQCBNYWludGFpbiBBc3BlY3QgUmF0aW9cblx0LSAqKiogcmVxdWlyZXMgdGhhdCB0aGUgZWxlbWVudCBoYXMgYW4gaW5uZXIgY29udGFpbmVyIGVsZW1lbnQgaWYgdGhlcmUgaXMgaW5uZXIgY29udGVudFxuXHQtICR4ID0+IHggcG9ydGlvbiBvZiByYXRpb1xuXHQtICR5ID0+IHkgcG9ydGlvbiBvZiByYXRpb1xuICAgIC0gJGMgPT4gc2V0IHRvICdmYWxzZScgdG8gc2tpcCA6Zmlyc3QtY2hpbGQgc3R5bGluZ1xuLS0tLS0tLS0tLSAqL1xuLyogLS0tLS0tLS0tLVxuIEAgQmFja2dyb3VuZCBJbWFnZVxuXHQtIFNob3J0Y3V0IGZvciBsaW5raW5nIGltYWdlcyBpbiB0aGUgY29uZmlndXJlZCBpbWFnZXMgZm9sZGVyXG5cdC0gJGkgPT4gaW1hZ2UgZmlsZSBuYW1lIChyZWxhdGl2ZSB0byBpbWFnZXMgZm9sZGVyKVxuXHQtICRyZXN0ID0+IGFueSBhZGRpdGlvbmFsICdiYWNrZ3JvdW5kJyBwcm9wZXJ0eSBzaG9ydGN1dCBkZWNsYXJhdGlvbnMgKGllOiBuby1yZXBlYXQpXG4tLS0tLS0tLS0tICovXG4vKiAtLS0tLS0tLS0tXG4gQCBTaXplXG4gXHQtIFNob3J0Y3V0IGZvciBzZXR0aW5nIGhlaWdodCBhbmQgd2lkdGhcbiBcdC0gJHdpZHRoID0+IHdpZHRoIG9mIGVsZW1lbnRcbiBcdC0gJGhlaWdodCA9PiBoZWlnaHQgb2YgZWxlbWVudFxuIFx0LSBTaW5nbGUgdmFsdWUgd2lsbCBzZXQgYm90aCB2YWx1ZXMgKGUuZy4gc2l6ZSgxMDAlKTtcbi0tLS0tLS0tLS0gKi9cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gQEAgRnVuY3Rpb25zXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLyogLS0tLS0tLS0tLVxuIEAgQ29sb3IgR2V0XG4gXHQtIGdldCB2YWx1ZSBmcm9tIHRoZSAkdGhlbWUtY29sb3JzIG1hcFxuLS0tLS0tLS0tLSAqL1xuLyogLS0tLS0tLS0tLVxuIEAgQnJlYWtwb2ludCBHZXRcbiBcdC0gZ2V0IHZhbHVlIGZyb20gdGhlICRncmlkLWJyZWFrcG9pbnRzIG1hcFxuIFx0LSAkdHlwZSA9PiAnbWF4JyB8ICdtaW4nLCBkZXBlbmRpbmcgb24gbWVkaWEgcXVlcnkgdHlwZVxuLS0tLS0tLS0tLSAqL1xuLyogLS0tLS0tLS0tLVxuIEAgUmVtc1xuXHQtIGNvbnZlcnQgcGl4ZWxzIHRvIHJlbXNcblx0LSAkcCA9PiBwaXhlbCB2YWx1ZVxuXHQtICRiID0+IGJhc2Ugc2l6ZSAodG8gdXNlIGluIGZvcm11bGEpIC0gZGVmYXVsdHMgdG8gJGZvbnQtc2l6ZXMgcm9vdCB2YXJpYWJsZVxuLS0tLS0tLS0tLSAqL1xuLyogLS0tLS0tLS0tLVxuIEAgTWFwIERlZXAgR2V0XG4gXHQtIGdldCB2YWx1ZSBmcm9tIG5lc3RlZCBtYXBzXG4tLS0tLS0tLS0tICovXG4vKiAtLS0tLS0tLS0tXG4gQCBXZWlnaHQgR2V0XG4gXHQtIGdldCB2YWx1ZSBmcm9tIHRoZSAkZm9udC13ZWlnaHRzIG1hcFxuLS0tLS0tLS0tLSAqL1xuLmMtc2ltcGxlLWJhbm5lciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwYzIxODk7XG4gIGNvbG9yOiAjZmZmO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHBhZGRpbmc6IDMuMjVyZW0gTWF4KDJyZW0sIGNhbGMoKDEwMHZ3IC0gOTBjaCkgLyAyKSkgMi41cmVtO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG5cbi5jLXNpbXBsZS1iYW5uZXJfX2ljb24taG9sZGVyIHtcbiAgbWFyZ2luOiAwIGF1dG87XG59XG5cbi5jLXNpbXBsZS1iYW5uZXJfX2ljb24taG9sZGVyICsgLmMtc2ltcGxlLWJhbm5lcl9fdGl0bGUge1xuICBtYXJnaW4tdG9wOiAwLjc1cmVtO1xufVxuXG4uYy1zaW1wbGUtYmFubmVyX19pY29uLWhvbGRlciBzdmcge1xuICB3aWR0aDogODVweDtcbiAgaGVpZ2h0OiBhdXRvO1xufVxuXG4uYy1zaW1wbGUtYmFubmVyX190aXRsZSB7XG4gIGNvbG9yOiAjZmZmO1xufVxuXG4uYy1zaW1wbGUtYmFubmVyX19ibHVyYiB7XG4gIGZvbnQtc2l6ZTogMS4xNjY2N3JlbTtcbiAgbGluZS1oZWlnaHQ6IDEuNjtcbiAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgbWFyZ2luOiAwIGF1dG87XG59XG5cbi5jLXNpbXBsZS1iYW5uZXJfX2Fycm93IHtcbiAgY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4xNSk7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbWFyZ2luOiAwO1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgd2lkdGg6IGF1dG87XG59XG5cbi5jLXNpbXBsZS1iYW5uZXJfX2Fycm93Om50aC1vZi10eXBlKDEpIHtcbiAgaGVpZ2h0OiBjYWxjKDEwMCUgKyA0MHB4KTtcbiAgaW5zZXQ6IC0yMHB4IGF1dG8gLTIwcHggLTgwcHg7XG59XG5cbi5jLXNpbXBsZS1iYW5uZXJfX2Fycm93Om50aC1vZi10eXBlKDIpIHtcbiAgaGVpZ2h0OiA1MCU7XG4gIGluc2V0OiAwIGF1dG8gYXV0byAzMzBweDtcbn1cblxuLmMtc2ltcGxlLWJhbm5lcl9fYXJyb3c6bnRoLW9mLXR5cGUoMykge1xuICBoZWlnaHQ6IDQwJTtcbiAgaW5zZXQ6IGF1dG8gMjcwcHggLTEzJSBhdXRvO1xufVxuXG4uYy1zaW1wbGUtYmFubmVyX19hcnJvdzpudGgtb2YtdHlwZSg0KSB7XG4gIGhlaWdodDogOTAlO1xuICBpbnNldDogLTE1JSAtNDVweCBhdXRvIGF1dG87XG59XG5cbi5jLXNpbXBsZS1iYW5uZXJfX2J1dHRvbnMge1xuICBkaXNwbGF5OiBmbGV4O1xuICBnYXA6IDFyZW07XG4gIGZsZXgtZmxvdzogcm93IHdyYXA7XG4gIG1hcmdpbi10b3A6IDEuNXJlbTtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzY4cHgpIHtcbiAgLmMtc2ltcGxlLWJhbm5lcl9fYXJyb3c6bnRoLW9mLXR5cGUoMSkge1xuICAgIGhlaWdodDogMTIwcHg7XG4gICAgaW5zZXQ6IC0yMHB4IGF1dG8gYXV0byAtMzJweDtcbiAgfVxuICAuYy1zaW1wbGUtYmFubmVyX19hcnJvdzpudGgtb2YtdHlwZSgyKSB7XG4gICAgaGVpZ2h0OiA1MHB4O1xuICAgIGluc2V0OiA0cHggYXV0byBhdXRvIDg1cHg7XG4gIH1cbiAgLmMtc2ltcGxlLWJhbm5lcl9fYXJyb3c6bnRoLW9mLXR5cGUoMykge1xuICAgIGhlaWdodDogNTRweDtcbiAgICBpbnNldDogYXV0byA3NXB4IC0xNXB4IGF1dG87XG4gIH1cbiAgLmMtc2ltcGxlLWJhbm5lcl9fYXJyb3c6bnRoLW9mLXR5cGUoNCkge1xuICAgIGhlaWdodDogMTEwcHg7XG4gICAgaW5zZXQ6IGF1dG8gLTE5cHggLTMwcHggYXV0bztcbiAgfVxufVxuXG4uYy00MDQtY3RhLWNhcmQtZ3JpZCB7XG4gIHBhZGRpbmc6IDVyZW0gdmFyKC0tc2lkZS1ndXR0ZXIpIDJyZW07XG4gIGRpc3BsYXk6IGdyaWQ7XG4gIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDMsIDFmcik7XG4gIGdhcDogMnJlbTtcbiAgbWFyZ2luOiAwO1xufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc2OHB4KSB7XG4gIC5jLTQwNC1jdGEtY2FyZC1ncmlkIHtcbiAgICBwYWRkaW5nOiAyLjVyZW0gdmFyKC0tc2lkZS1ndXR0ZXIpO1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyO1xuICB9XG59XG5cbi5jLWN0YS1jYXJkIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHBhZGRpbmc6IDMuNzVyZW0gMXJlbTtcbiAgYm9yZGVyLXJhZGl1czogMzBweCAwO1xuICBib3gtc2hhZG93OiAwIDRweCAxMnB4IHJnYmEoMCwgMCwgMCwgMC4xNSk7XG4gIG1hcmdpbjogMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgdHJhbnNpdGlvbjogMTUwbXMgdHJhbnNmb3JtIGVhc2UsIDE1MG1zIGJveC1zaGFkb3cgZWFzZSwgMTUwbXMgYmFja2dyb3VuZCBlYXNlLCAxNTBtcyBjb2xvciBlYXNlO1xuICB0cmFuc2Zvcm06IHNjYWxlKDEuMDAxKTtcbn1cblxuLmMtY3RhLWNhcmQtLXNtYWxsZXIge1xuICBwYWRkaW5nLXRvcDogMS44cmVtO1xuICBwYWRkaW5nLWJvdHRvbTogMS44cmVtO1xufVxuXG4uYy1jdGEtY2FyZC0tYWxpZ24tbGVmdCB7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG4gIHBhZGRpbmctbGVmdDogMnJlbTtcbiAgcGFkZGluZy1yaWdodDogMnJlbTtcbn1cblxuLmMtY3RhLWNhcmQtLWV2ZW4tcGFkZGluZyB7XG4gIHBhZGRpbmc6IDJyZW07XG59XG5cbi5jLWN0YS1jYXJkOmhvdmVyLFxuLmMtY3RhLWNhcmQ6Zm9jdXMtd2l0aGluIHtcbiAgdHJhbnNmb3JtOiBzY2FsZSgxLjAxKTtcbiAgYm94LXNoYWRvdzogMCA1cHggMTVweCByZ2JhKDAsIDAsIDAsIDAuMTUpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMGMyMTg5O1xuICBjb2xvcjogI2ZmZjtcbn1cblxuLmMtY3RhLWNhcmQ6aG92ZXIgLmMtY3RhLWNhcmRfX2ljb24taG9sZGVyIHN2Zyxcbi5jLWN0YS1jYXJkOmZvY3VzLXdpdGhpbiAuYy1jdGEtY2FyZF9faWNvbi1ob2xkZXIgc3ZnIHtcbiAgLS1jaWUtaWNvbi1jb2xvcjogI2ZmZiAhaW1wb3J0YW50O1xufVxuXG4uYy1jdGEtY2FyZDpob3ZlciAuYy1jdGEtY2FyZF9fdGl0bGUsXG4uYy1jdGEtY2FyZDpmb2N1cy13aXRoaW4gLmMtY3RhLWNhcmRfX3RpdGxlIHtcbiAgY29sb3I6ICNmZmY7XG59XG5cbi5jLWN0YS1jYXJkX19pY29uLWhvbGRlciBzdmcge1xuICBoZWlnaHQ6IDExMHB4O1xuICB3aWR0aDogYXV0bztcbn1cblxuLmMtY3RhLWNhcmQtLXNtYWxsZXIgLmMtY3RhLWNhcmRfX2ljb24taG9sZGVyIHN2ZyB7XG4gIGhlaWdodDogODBweDtcbn1cblxuLmMtY3RhLWNhcmRfX3RpdGxlIHtcbiAgbWFyZ2luLXRvcDogMDtcbiAgY29sb3I6ICMwYzIxODk7XG4gIGZvbnQtc2l6ZTogMS40NDQ0NHJlbTtcbiAgbGluZS1oZWlnaHQ6IDEuMjtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbn1cblxuLmMtY3RhLWNhcmQtLXNtYWxsZXIgLmMtY3RhLWNhcmRfX3RpdGxlIHtcbiAgZm9udC1zaXplOiAxLjE2NjY3cmVtO1xuICBsaW5lLWhlaWdodDogMS40O1xufVxuXG4uYy1jdGEtY2FyZF9faWNvbi1ob2xkZXIgKyAuYy1jdGEtY2FyZF9fdGl0bGUge1xuICBtYXJnaW4tdG9wOiAxcmVtO1xufVxuXG4uYy1jdGEtY2FyZF9fYmx1cmIge1xuICBtYXJnaW4tdG9wOiAwLjVyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjY7XG59XG5cbi5jLWN0YS1jYXJkLS1zbWFsbGVyIC5jLWN0YS1jYXJkX19ibHVyYiB7XG4gIGZvbnQtc2l6ZTogMC44ODg4OXJlbTtcbiAgbGluZS1oZWlnaHQ6IDEuNTtcbn1cblxuLmMtY3RhLWNhcmRfX2R1bW15LWxpbmsge1xuICBtYXJnaW46IDEuMXJlbSBhdXRvIDA7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgLS1hcnJvdy1jb2xvci1hY2NlbnQ6ICNmZmUxODA7XG4gIC0tYXJyb3ctY29sb3ItaG92ZXI6ICNmZmMyMDA7XG4gIC0tYnV0dG9uLWNvbG9yLWhvdmVyOiAjZmZmO1xufVxuXG4uYy1jdGEtY2FyZF9fbGluayB7XG4gIG1hcmdpbjogMDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBpbnNldDogMDtcbiAgb3BhY2l0eTogMDtcbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NjhweCkge1xuICAuYy1jdGEtY2FyZCB7XG4gICAgcGFkZGluZzogMS41cmVtIDFyZW07XG4gIH1cbiAgLmMtY3RhLWNhcmRfX3RpdGxlIHtcbiAgICBmb250LXNpemU6IDEuMTY2NjdyZW07XG4gICAgbGluZS1oZWlnaHQ6IDEuNDtcbiAgfVxuICAuYy1jdGEtY2FyZF9fYmx1cmIge1xuICAgIGZvbnQtc2l6ZTogMC44ODg4OXJlbTtcbiAgICBsaW5lLWhlaWdodDogMS41O1xuICB9XG4gIC5jLWN0YS1jYXJkX19pY29uLWhvbGRlciBzdmcge1xuICAgIGhlaWdodDogODBweDtcbiAgfVxufVxuIiwiLyogLS0tLS0tLS0tLVxuIEAgQ3VzdG9tIFZhcmlhYmxlc1xuLS0tLS0tLS0tLSAqL1xuXG5AaW1wb3J0IFwiY2hpbGQtdGhlbWUvYXNzZXRzL3Njc3MvdmFyaWFibGVzXCI7XG5cbi8qIC0tLS0tLS0tLS1cbiBAIEN1c3RvbSBVdGlsaXRpZXNcbi0tLS0tLS0tLS0gKi9cblxuQGltcG9ydCBcImNoaWxkLXRoZW1lL2Fzc2V0cy9zY3NzL21peGluc1wiO1xuXG5AaW1wb3J0IFwiYmFzZS10aGVtZS9hc3NldHMvc2Nzcy91dGlsaXRpZXMvbWl4aW5zXCI7XG5AaW1wb3J0IFwiYmFzZS10aGVtZS9hc3NldHMvc2Nzcy91dGlsaXRpZXMvcmVzZXRcIjtcbkBpbXBvcnQgXCJiYXNlLXRoZW1lL2Fzc2V0cy9zY3NzL3V0aWxpdGllcy9iYXNlXCI7XG5AaW1wb3J0IFwiYmFzZS10aGVtZS9hc3NldHMvc2Nzcy91dGlsaXRpZXMvd3AtYmFzZVwiOyIsIi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gQEAgUHJvamVjdCBTcGVjaWZpYyBWYXJpYWJsZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5cbi8qIC0tLS0tLS0tLS1cbiBAIE9wdGlvbnNcbi0tLS0tLS0tLS0gKi9cblxuJGVuYWJsZS1yZXNwb25zaXZlLXRleHQ6XHR0cnVlO1xuXG4vKiAtLS0tLS0tLS0tXG4gQCBDb2xvcnNcbi0tLS0tLS0tLS0gKi9cblxuJGxpZ2h0LWJsdWU6ICAgICAgICAgICAgI2VkZjNmODtcblxuJGJyYW5kLXZpZ29yOiAgICAgICAgICAgIzBjMjE4OTtcbiRicmFuZC1wcm9jZXNzOiAgICAgICAgICMwOWQ2YTE7XG4kYnJhbmQtZW5lcmdpemU6ICAgICAgICAjZTgzNDUyO1xuJGJyYW5kLXB1cnN1aXQ6ICAgICAgICAgIzAwYzNmZjtcbiRicmFuZC1pZ25pdGU6ICAgICAgICAgICNmZmMyMDA7XG4kYnJhbmQtb3JhbmdlOiAgICAgICAgICAkYnJhbmQtaWduaXRlO1xuXG4kYnJhbmQtcHJpbWFyeTogICAgICAgICAkYnJhbmQtdmlnb3I7XG4kYnJhbmQtc2Vjb25kYXJ5OiAgICAgICAkYnJhbmQtcHJvY2VzcztcbiRicmFuZC10ZXJ0aWFyeTogICAgICAgICRicmFuZC1lbmVyZ2l6ZTtcblxuJHRoZW1lLWNvbG9yczogbWFwLW1lcmdlKCR0aGVtZS1jb2xvcnMsIChcbiAgICBwcmltYXJ5OiAkYnJhbmQtcHJpbWFyeSxcbiAgICBzZWNvbmRhcnk6ICRicmFuZC1zZWNvbmRhcnksXG4gICAgdGVydGlhcnk6ICRicmFuZC10ZXJ0aWFyeSxcbiAgICBzdWNjZXNzOiAjMzBiZTc2LFxuICAgIGluZm86ICRicmFuZC1wcmltYXJ5LFxuICAgIHdhcm5pbmc6ICRicmFuZC1zZWNvbmRhcnksXG4gICAgZGFuZ2VyOiAkYnJhbmQtdGVydGlhcnksXG4gICAgbGlnaHQtYmx1ZTogJGxpZ2h0LWJsdWUsICAgIFxuICAgIG9yYW5nZTogJGJyYW5kLW9yYW5nZSxcbiAgICBsaWdodC1ncmV5OiAjRjVGNUY1LFxuICAgIG1pZC1ncmV5OiAjNzA3MDcwLFxuICAgIHZpZ29yOiAkYnJhbmQtdmlnb3IsXG4gICAgcHJvY2VzczogJGJyYW5kLXByb2Nlc3MsXG4gICAgZW5lcmdpemU6ICRicmFuZC1lbmVyZ2l6ZSxcbiAgICBwdXJzdWl0OiAkYnJhbmQtcHVyc3VpdCxcbiAgICBpZ25pdGU6ICRicmFuZC1pZ25pdGVcbikpO1xuXG46cm9vdCB7XG4gICAgLS1icmFuZC1wcmltYXJ5OiAjeyRicmFuZC1wcmltYXJ5fTtcbiAgICAtLWJyYW5kLXNlY29uZGFyeTogI3skYnJhbmQtc2Vjb25kYXJ5fTtcbiAgICAtLWJyYW5kLXRlcnRpYXJ5OiAjeyRicmFuZC10ZXJ0aWFyeX07XG4gICAgLS1icmFuZC1zdWNjZXNzOiAjMzBiZTc2O1xuICAgIC0tYnJhbmQtaW5mbzogI3skYnJhbmQtcHJpbWFyeX07XG4gICAgLS1icmFuZC13YXJuaW5nOiAjeyRicmFuZC1zZWNvbmRhcnl9O1xuICAgIC0tYnJhbmQtZGFuZ2VyOiAjeyRicmFuZC10ZXJ0aWFyeX07XG4gICAgLS1icmFuZC1saWdodC1ibHVlOiAjeyRsaWdodC1ibHVlfTtcbiAgICAtLWJyYW5kLW9yYW5nZTogI3skYnJhbmQtb3JhbmdlfTtcbiAgICAtLWJyYW5kLWxpZ2h0LWdyZXk6ICNGNUY1RjU7XG4gICAgLS1icmFuZC1taWQtZ3JleTogIzcwNzA3MDtcbiAgICAtLWJyYW5kLXZpZ29yOiAjeyRicmFuZC12aWdvcn07XG4gICAgLS1icmFuZC1wcm9jZXNzOiAjeyRicmFuZC1wcm9jZXNzfTtcbiAgICAtLWJyYW5kLWVuZXJnaXplOiAjeyRicmFuZC1lbmVyZ2l6ZX07XG4gICAgLS1icmFuZC1wdXJzdWl0OiAjeyRicmFuZC1wdXJzdWl0fTtcbiAgICAtLWJyYW5kLWlnbml0ZTogI3skYnJhbmQtaWduaXRlfTtcbn1cblxuJGJvZHktYmc6ICAgICAgICAgICAgICAgI2ZmZjtcbiRib2R5LWNvbG9yOiAgICAgICAgICAgICMxZjFmMWY7XG5cbiRsaW5rLWNvbG9yOiAgICAgICAgICAgICRicmFuZC1wcmltYXJ5O1xuJGxpbmstaG92ZXItY29sb3I6ICAgICAgZGFya2VuKCRsaW5rLWNvbG9yLCAxNSUpO1xuXG4kbGluZS1jb2xvcjogXHRcdFx0I2UxZTJlMztcblxuLyogLS0tLS0tLS0tLVxuIEAgVHlwb2dyYXBoeVxuLS0tLS0tLS0tLSAqL1xuXG4kYmFzZUZvbnRTaXplOiAxOHB4O1xuXG4kcm9vdEZvbnRTaXplOiBzdHJpcC11bml0KCRiYXNlRm9udFNpemUpIC8gMTYgKiAxMDAlOyAvLyBGb3IgYWNjZXNzaWJpbGl0eSByZWFzb25zIHRoZSByb290IGZvbnQgc2l6ZSBzaG91bGQgYmUgc2V0IHRvICUsIG1vc3QgYnJvd3NlcnMgaGF2ZSBhIGJhc2UgZm9udCBzaXplIG9mIDE2cHhcblxuJGZvbnQtc2l6ZXM6IChcbiAgICByb290OiAkcm9vdEZvbnRTaXplLFxuICAgIGgxOiA2MHB4LFxuICAgIGgyOiA0NnB4LFxuICAgIGgzOiAzNnB4LFxuICAgIGg0OiAyNnB4LFxuICAgIGg1OiAyMXB4LFxuICAgIGg2OiAxOHB4LFxuICAgIGxlYWQ6IDIxcHgsXG4gICAgYmxvY2txdW90ZTogMjFweFxuKTtcblxuJGZvbnQtc2l6ZS1iYXNlOiAxcmVtO1xuXG4kbGVhZC1mb250LXNpemU6IHJlbXMobWFwLWdldCgkZm9udC1zaXplcywgbGVhZCkpO1xuJGJsb2NrcXVvdGUtZm9udC1zaXplOiByZW1zKG1hcC1nZXQoJGZvbnQtc2l6ZXMsIGJsb2NrcXVvdGUpKTtcblxuJGZvbnQtZmFtaWx5LWJhc2U6ICdNb250c2VycmF0Jywgc2Fucy1zZXJpZjtcbiRmb250LWZhbWlseS1zYW5zLXNlcmlmOiAkZm9udC1mYW1pbHktYmFzZTtcbiRoZWFkaW5ncy1mb250LWZhbWlseTogJGZvbnQtZmFtaWx5LXNhbnMtc2VyaWY7XG5cbiRmYS1mb250LWZhbWlseTogXCJGb250IEF3ZXNvbWUgNSBQcm9cIjtcblxuJGZvbnQtd2VpZ2h0czogKFxuICAgIGJsYWNrOiA5MDAsXG4gICAgZXh0cmEtYm9sZDogODAwLFxuICAgIGV4dHJhYm9sZDogODAwLFxuICAgIGJvbGQ6IDcwMCxcbiAgICBzZW1pLWJvbGQ6IDYwMCxcbiAgICBzZW1pYm9sZDogNjAwLFxuICAgIG1lZGl1bTogNTAwLFxuICAgIHJlZ3VsYXI6IDQwMCxcbiAgICBsaWdodDogNDAwLFxuICAgIHRoaW46IDQwMFxuKTtcblxuJGZvbnQtd2VpZ2h0LWJhc2U6IG1hcC1nZXQoJGZvbnQtd2VpZ2h0cywgcmVndWxhcik7XG4kaGVhZGluZ3MtZm9udC13ZWlnaHQ6IG1hcC1nZXQoJGZvbnQtd2VpZ2h0cywgYm9sZCk7XG4kbGVhZC1mb250LXdlaWdodDogbWFwLWdldCgkZm9udC13ZWlnaHRzLCBzZW1pLWJvbGQpO1xuXG4kbGluZS1oZWlnaHQtYmFzZTogMS42NTtcbiRoZWFkaW5ncy1saW5lLWhlaWdodDogMS40O1xuXG4kbGluay1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4kbGluay1ob3Zlci1kZWNvcmF0aW9uOiAkbGluay1kZWNvcmF0aW9uO1xuXG4vKiAtLS0tLS0tLS0tXG4gQCBMYXlvdXRcbi0tLS0tLS0tLS0gKi9cblxuJGdyaWQtZ3V0dGVyLXdpZHRoOiBcdCAycmVtO1xuJGdyaWQtcGFkZGluZzpcdFx0XHQgJGdyaWQtZ3V0dGVyLXdpZHRoIC8gMjtcblxuJHZlcnRpY2FsLW1hcmdpbi1iYXNlOlx0IDEuNXJlbTtcblxuJGdyaWQtYnJlYWtwb2ludHM6IChcbiAgICB4czogMCwgLy8gTm90IHN1cmUgd2h5IGJ1dCB0aGlzIG11c3QgYmUgemVyb1xuICAgIHNtOiA1NzZweCxcbiAgICBtZDogNzY5cHgsXG4gICAgbGc6IDk5MnB4LFxuICAgIHhsOiAxNjIwcHhcbik7XG5cbiRjb250YWluZXItd2lkdGg6IG1hcC1nZXQoJGdyaWQtYnJlYWtwb2ludHMsIHhsKSsoc3RyaXAtdW5pdCgkZ3JpZC1ndXR0ZXItd2lkdGgpICogc3RyaXAtdW5pdCgkYmFzZUZvbnRTaXplKSk7XG5cbiRpY29uLXBhdGg6ICcuLi9pbWcvaWNvbnMvJzsgXG5cbiRmb3JtLWVsZW1lbnQteC1wYWRkaW5nOiA1cHg7XG4kZm9ybS1lbGVtZW50LXktcGFkZGluZzogMC41cmVtOyIsIi8qIFByb2plY3Qgc3BlY2lmaWMgbWl4aW5zICovIiwiLyogLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiBAQCBNaXhpbnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5cbi8qIC0tLS0tLS0tLS1cbiBAIE1haW50YWluIEFzcGVjdCBSYXRpb1xuXHQtICoqKiByZXF1aXJlcyB0aGF0IHRoZSBlbGVtZW50IGhhcyBhbiBpbm5lciBjb250YWluZXIgZWxlbWVudCBpZiB0aGVyZSBpcyBpbm5lciBjb250ZW50XG5cdC0gJHggPT4geCBwb3J0aW9uIG9mIHJhdGlvXG5cdC0gJHkgPT4geSBwb3J0aW9uIG9mIHJhdGlvXG4gICAgLSAkYyA9PiBzZXQgdG8gJ2ZhbHNlJyB0byBza2lwIDpmaXJzdC1jaGlsZCBzdHlsaW5nXG4tLS0tLS0tLS0tICovXG5cbkBtaXhpbiBhc3BlY3QtcmF0aW8oJHg6IDEsICR5OiAxLCAkYzogdHJ1ZSkge1xuXHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cblx0JjpiZWZvcmUge1xuXHRcdGNvbnRlbnQ6IFwiXCI7XG5cdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0cGFkZGluZy10b3A6IHBlcmNlbnRhZ2UoJHkgLyAkeCk7XG5cdH1cblx0QGlmICgkYyA9PSB0cnVlKSB7XG5cdFx0JiA+IDpmaXJzdC1jaGlsZCB7XG5cdFx0XHRAaW5jbHVkZSBwb3NpdGlvbihhYnNvbHV0ZSwgMCAwIDAgMCk7XG5cdFx0fVxuXHR9XG59XG5cbi8qIC0tLS0tLS0tLS1cbiBAIEJhY2tncm91bmQgSW1hZ2Vcblx0LSBTaG9ydGN1dCBmb3IgbGlua2luZyBpbWFnZXMgaW4gdGhlIGNvbmZpZ3VyZWQgaW1hZ2VzIGZvbGRlclxuXHQtICRpID0+IGltYWdlIGZpbGUgbmFtZSAocmVsYXRpdmUgdG8gaW1hZ2VzIGZvbGRlcilcblx0LSAkcmVzdCA9PiBhbnkgYWRkaXRpb25hbCAnYmFja2dyb3VuZCcgcHJvcGVydHkgc2hvcnRjdXQgZGVjbGFyYXRpb25zIChpZTogbm8tcmVwZWF0KVxuLS0tLS0tLS0tLSAqL1xuXG5AbWl4aW4gYmctaW1hZ2UoJGksICRyZXN0Li4uKSB7XG5cdGJhY2tncm91bmQ6IHVybChcIiN7JGltYWdlcy1mb2xkZXJ9LyN7JGl9XCIpICRyZXN0O1xufVxuXG4vKiAtLS0tLS0tLS0tXG4gQCBTaXplXG4gXHQtIFNob3J0Y3V0IGZvciBzZXR0aW5nIGhlaWdodCBhbmQgd2lkdGhcbiBcdC0gJHdpZHRoID0+IHdpZHRoIG9mIGVsZW1lbnRcbiBcdC0gJGhlaWdodCA9PiBoZWlnaHQgb2YgZWxlbWVudFxuIFx0LSBTaW5nbGUgdmFsdWUgd2lsbCBzZXQgYm90aCB2YWx1ZXMgKGUuZy4gc2l6ZSgxMDAlKTtcbi0tLS0tLS0tLS0gKi9cbkBtaXhpbiBzaXplKCR3aWR0aCwgJGhlaWdodDogJHdpZHRoKSB7XG5cdHdpZHRoOiAkd2lkdGg7XG5cdGhlaWdodDogJGhlaWdodDtcbn1cblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiBAQCBGdW5jdGlvbnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5cbi8qIC0tLS0tLS0tLS1cbiBAIENvbG9yIEdldFxuIFx0LSBnZXQgdmFsdWUgZnJvbSB0aGUgJHRoZW1lLWNvbG9ycyBtYXBcbi0tLS0tLS0tLS0gKi9cblxuQGZ1bmN0aW9uIGNvbG9yLWdldCgka2V5cykge1xuXHQkY29sb3I6IG1hcC1kZWVwLWdldCgkdGhlbWUtY29sb3JzLCAka2V5cyk7XG5cdEByZXR1cm4gJGNvbG9yO1xufVxuXG4vKiAtLS0tLS0tLS0tXG4gQCBCcmVha3BvaW50IEdldFxuIFx0LSBnZXQgdmFsdWUgZnJvbSB0aGUgJGdyaWQtYnJlYWtwb2ludHMgbWFwXG4gXHQtICR0eXBlID0+ICdtYXgnIHwgJ21pbicsIGRlcGVuZGluZyBvbiBtZWRpYSBxdWVyeSB0eXBlXG4tLS0tLS0tLS0tICovXG5cbkBmdW5jdGlvbiBicmVha3BvaW50LWdldCgkdHlwZSwgJGtleXMpIHtcblx0JGJyZWFrcG9pbnQ6IG1hcC1kZWVwLWdldCgkZ3JpZC1icmVha3BvaW50cywgJGtleXMpO1xuXHRAaWYgKCR0eXBlID09ICdtYXgnKXtcblx0XHRAcmV0dXJuICRicmVha3BvaW50IC0gMTtcblx0fSBAZWxzZSB7XG5cdFx0QHJldHVybiAkYnJlYWtwb2ludDtcblx0fVxufVxuXG4vKiAtLS0tLS0tLS0tXG4gQCBSZW1zXG5cdC0gY29udmVydCBwaXhlbHMgdG8gcmVtc1xuXHQtICRwID0+IHBpeGVsIHZhbHVlXG5cdC0gJGIgPT4gYmFzZSBzaXplICh0byB1c2UgaW4gZm9ybXVsYSkgLSBkZWZhdWx0cyB0byAkZm9udC1zaXplcyByb290IHZhcmlhYmxlXG4tLS0tLS0tLS0tICovXG5cbkBmdW5jdGlvbiByZW1zKCRwLCAkYjogJGJhc2VGb250U2l6ZSkge1xuICAgIEByZXR1cm4gKHN0cmlwLXVuaXQoJHApIC8gc3RyaXAtdW5pdCgkYikpICsgMHJlbTtcbn1cblxuLyogLS0tLS0tLS0tLVxuIEAgTWFwIERlZXAgR2V0XG4gXHQtIGdldCB2YWx1ZSBmcm9tIG5lc3RlZCBtYXBzXG4tLS0tLS0tLS0tICovXG5cbkBmdW5jdGlvbiBtYXAtZGVlcC1nZXQoJG1hcCwgJGtleXMuLi4pIHtcblx0QGVhY2ggJGtleSBpbiAka2V5cyB7XG5cdFx0JG1hcDogbWFwLWdldCgkbWFwLCAka2V5KTtcblx0fVxuXHRAcmV0dXJuICRtYXA7XG59XG5cbi8qIC0tLS0tLS0tLS1cbiBAIFdlaWdodCBHZXRcbiBcdC0gZ2V0IHZhbHVlIGZyb20gdGhlICRmb250LXdlaWdodHMgbWFwXG4tLS0tLS0tLS0tICovXG5cbkBmdW5jdGlvbiB3ZWlnaHQtZ2V0KCRrZXlzKSB7XG5cdCR3ZWlnaHQ6IG1hcC1kZWVwLWdldCgkZm9udC13ZWlnaHRzLCAka2V5cyk7XG5cdEByZXR1cm4gJHdlaWdodDtcbn0iLCIuYy1zaW1wbGUtYmFubmVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBjb2xvci1nZXQocHJpbWFyeSk7XG4gICAgY29sb3I6ICNmZmY7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHBhZGRpbmc6IDMuMjVyZW0gTWF4KCRncmlkLWd1dHRlci13aWR0aCwgY2FsYygoMTAwdncgLSA5MGNoKSAvIDIpKSAyLjVyZW07XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG59XG4uYy1zaW1wbGUtYmFubmVyX19pY29uLWhvbGRlciB7XG4gICAgbWFyZ2luOiAwIGF1dG87XG59XG4uYy1zaW1wbGUtYmFubmVyX19pY29uLWhvbGRlciArIC5jLXNpbXBsZS1iYW5uZXJfX3RpdGxlIHtcbiAgICBtYXJnaW4tdG9wOiAwLjc1cmVtO1xufVxuLmMtc2ltcGxlLWJhbm5lcl9faWNvbi1ob2xkZXIgc3ZnIHtcbiAgICB3aWR0aDogODVweDtcbiAgICBoZWlnaHQ6IGF1dG87XG59XG4uYy1zaW1wbGUtYmFubmVyX190aXRsZSB7XG4gICAgY29sb3I6ICNmZmY7XG59XG4uYy1zaW1wbGUtYmFubmVyX19ibHVyYiB7XG4gICAgZm9udC1zaXplOiByZW1zKDIxcHgpO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjY7XG4gICAgZm9udC13ZWlnaHQ6IHdlaWdodC1nZXQobWVkaXVtKTtcbiAgICBtYXJnaW46IDAgYXV0bztcbiAgICAvL21heC13aWR0aDogNzRjaDtcbn1cbi5jLXNpbXBsZS1iYW5uZXJfX2Fycm93IHtcbiAgICBjb2xvcjogcmdiYSgjZmZmLCAwLjE1KTtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIHdpZHRoOiBhdXRvO1xuICAgIFxuICAgICY6bnRoLW9mLXR5cGUoMSkge1xuICAgICAgICAvL3dpZHRoOiBhdXRvO1xuICAgICAgICBoZWlnaHQ6IGNhbGMoMTAwJSArIDQwcHgpO1xuICAgICAgICBpbnNldDogLTIwcHggYXV0byAtMjBweCAtODBweDtcbiAgICB9XG4gICAgJjpudGgtb2YtdHlwZSgyKSB7XG4gICAgICAgIGhlaWdodDogNTAlO1xuICAgICAgICBpbnNldDogMCBhdXRvIGF1dG8gMzMwcHg7XG4gICAgfVxuICAgICY6bnRoLW9mLXR5cGUoMykge1xuICAgICAgICBoZWlnaHQ6IDQwJTtcbiAgICAgICAgaW5zZXQ6IGF1dG8gMjcwcHggLTEzJSBhdXRvO1xuICAgIH1cbiAgICAmOm50aC1vZi10eXBlKDQpIHtcbiAgICAgICAgaGVpZ2h0OiA5MCU7XG4gICAgICAgIGluc2V0OiAtMTUlIC00NXB4IGF1dG8gYXV0bztcbiAgICB9XG59XG4uYy1zaW1wbGUtYmFubmVyX19idXR0b25zIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGdhcDogJGdyaWQtcGFkZGluZztcbiAgICBmbGV4LWZsb3c6IHJvdyB3cmFwO1xuICAgIG1hcmdpbi10b3A6IDEuNXJlbTtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiBicmVha3BvaW50LWdldChtYXgsIG1kKSkge1xuICAgIC5jLXNpbXBsZS1iYW5uZXJfX2Fycm93IHtcbiAgICAgICAgJjpudGgtb2YtdHlwZSgxKSB7XG4gICAgICAgICAgICBoZWlnaHQ6IDEyMHB4O1xuICAgICAgICAgICAgaW5zZXQ6IC0yMHB4IGF1dG8gYXV0byAtMzJweDtcbiAgICAgICAgfVxuICAgICAgICAmOm50aC1vZi10eXBlKDIpIHtcbiAgICAgICAgICAgIGhlaWdodDogNTBweDtcbiAgICAgICAgICAgIGluc2V0OiA0cHggYXV0byBhdXRvIDg1cHg7XG4gICAgICAgIH1cbiAgICAgICAgJjpudGgtb2YtdHlwZSgzKSB7XG4gICAgICAgICAgICBoZWlnaHQ6IDU0cHg7XG4gICAgICAgICAgICBpbnNldDogYXV0byA3NXB4IC0xNXB4IGF1dG87XG4gICAgICAgIH1cbiAgICAgICAgJjpudGgtb2YtdHlwZSg0KSB7XG4gICAgICAgICAgICBoZWlnaHQ6IDExMHB4O1xuICAgICAgICAgICAgaW5zZXQ6IGF1dG8gLTE5cHggLTMwcHggYXV0bztcbiAgICAgICAgfVxuICAgIH1cbn1cbiIsIi5jLTQwNC1jdGEtY2FyZC1ncmlkIHtcbiAgICBwYWRkaW5nOiA1cmVtIHZhcigtLXNpZGUtZ3V0dGVyKSAycmVtO1xuICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMywgMWZyKTtcbiAgICBnYXA6ICRncmlkLWd1dHRlci13aWR0aDtcbiAgICBtYXJnaW46IDA7XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogYnJlYWtwb2ludC1nZXQoJ21heCcsIG1kKSkge1xuICAgIC5jLTQwNC1jdGEtY2FyZC1ncmlkIHtcbiAgICAgICAgcGFkZGluZzogMi41cmVtIHZhcigtLXNpZGUtZ3V0dGVyKTtcbiAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnI7XG4gICAgfVxufSIsIi5jLWN0YS1jYXJkIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIHBhZGRpbmc6IDMuNzVyZW0gJGdyaWQtcGFkZGluZztcbiAgICBib3JkZXItcmFkaXVzOiAzMHB4IDA7XG4gICAgYm94LXNoYWRvdzogMCA0cHggMTJweCByZ2JhKDAsMCwwLDAuMTUpO1xuICAgIG1hcmdpbjogMDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICAgIHRyYW5zaXRpb246IDE1MG1zIHRyYW5zZm9ybSBlYXNlLCAxNTBtcyBib3gtc2hhZG93IGVhc2UsIDE1MG1zIGJhY2tncm91bmQgZWFzZSwgMTUwbXMgY29sb3IgZWFzZTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDEuMDAxKTtcbn1cbi5jLWN0YS1jYXJkLS1zbWFsbGVyIHtcbiAgICBwYWRkaW5nLXRvcDogMS44cmVtO1xuICAgIHBhZGRpbmctYm90dG9tOiAxLjhyZW07XG59XG4uYy1jdGEtY2FyZC0tYWxpZ24tbGVmdCB7XG4gICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICBwYWRkaW5nLWxlZnQ6IDJyZW07XG4gICAgcGFkZGluZy1yaWdodDogMnJlbTtcbn1cbi5jLWN0YS1jYXJkLS1ldmVuLXBhZGRpbmcge1xuICAgIHBhZGRpbmc6IDJyZW07XG59XG4uYy1jdGEtY2FyZDpob3Zlcixcbi5jLWN0YS1jYXJkOmZvY3VzLXdpdGhpbiB7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgxLjAxKTtcbiAgICBib3gtc2hhZG93OiAwIDVweCAxNXB4IHJnYmEoMCwwLDAsMC4xNSk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogY29sb3ItZ2V0KHZpZ29yKTtcbiAgICBjb2xvcjogI2ZmZjtcblxuICAgIC5jLWN0YS1jYXJkX19pY29uLWhvbGRlciBzdmcge1xuICAgICAgICAtLWNpZS1pY29uLWNvbG9yOiAjZmZmICFpbXBvcnRhbnQ7XG4gICAgfVxuICAgIC5jLWN0YS1jYXJkX190aXRsZSB7XG4gICAgICAgIGNvbG9yOiAjZmZmO1xuICAgIH1cbn1cbi5jLWN0YS1jYXJkX19pY29uLWhvbGRlciBzdmcge1xuICAgIGhlaWdodDogMTEwcHg7XG4gICAgd2lkdGg6IGF1dG87XG59XG4uYy1jdGEtY2FyZC0tc21hbGxlciAuYy1jdGEtY2FyZF9faWNvbi1ob2xkZXIgc3ZnIHtcbiAgICBoZWlnaHQ6IDgwcHg7XG59XG4uYy1jdGEtY2FyZF9fdGl0bGUge1xuICAgIG1hcmdpbi10b3A6IDA7XG4gICAgY29sb3I6IGNvbG9yLWdldCh2aWdvcik7XG4gICAgZm9udC1zaXplOiByZW1zKDI2cHgpO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjI7XG4gICAgZm9udC13ZWlnaHQ6IHdlaWdodC1nZXQoYm9sZCk7XG59XG4uYy1jdGEtY2FyZC0tc21hbGxlciAuYy1jdGEtY2FyZF9fdGl0bGUge1xuICAgIGZvbnQtc2l6ZTogcmVtcygyMXB4KTtcbiAgICBsaW5lLWhlaWdodDogMS40O1xufVxuLmMtY3RhLWNhcmRfX2ljb24taG9sZGVyICsgLmMtY3RhLWNhcmRfX3RpdGxlIHtcbiAgICBtYXJnaW4tdG9wOiAxcmVtO1xufVxuLmMtY3RhLWNhcmRfX2JsdXJiIHtcbiAgICBtYXJnaW4tdG9wOiAwLjVyZW07XG4gICAgbGluZS1oZWlnaHQ6IDEuNjtcbn1cbi5jLWN0YS1jYXJkLS1zbWFsbGVyIC5jLWN0YS1jYXJkX19ibHVyYiB7XG4gICAgZm9udC1zaXplOiByZW1zKDE2cHgpO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjU7XG59XG4uYy1jdGEtY2FyZF9fZHVtbXktbGluayB7XG4gICAgbWFyZ2luOiAxLjFyZW0gYXV0byAwO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAtLWFycm93LWNvbG9yLWFjY2VudDogI3tsaWdodGVuKGNvbG9yLWdldChpZ25pdGUpLCAyNSl9O1xuICAgIC0tYXJyb3ctY29sb3ItaG92ZXI6ICN7Y29sb3ItZ2V0KGlnbml0ZSl9O1xuICAgIC0tYnV0dG9uLWNvbG9yLWhvdmVyOiAjZmZmO1xufVxuLmMtY3RhLWNhcmRfX2xpbmsge1xuICAgIG1hcmdpbjogMDtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgaW5zZXQ6IDA7XG4gICAgb3BhY2l0eTogMDtcbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiBicmVha3BvaW50LWdldCgnbWF4JywgbWQpKSB7XG4gICAgLmMtY3RhLWNhcmQge1xuICAgICAgICBwYWRkaW5nOiAxLjVyZW0gJGdyaWQtcGFkZGluZztcbiAgICB9XG4gICAgLmMtY3RhLWNhcmRfX3RpdGxlIHtcbiAgICAgICAgZm9udC1zaXplOiByZW1zKDIxcHgpO1xuICAgICAgICBsaW5lLWhlaWdodDogMS40O1xuICAgIH1cbiAgICAuYy1jdGEtY2FyZF9fYmx1cmIge1xuICAgICAgICBmb250LXNpemU6IHJlbXMoMTZweCk7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxLjU7XG4gICAgfVxuICAgIC5jLWN0YS1jYXJkX19pY29uLWhvbGRlciBzdmcge1xuICAgICAgICBoZWlnaHQ6IDgwcHg7XG4gICAgfVxufSJdfQ== */
