/* ----------
 @ 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-banner-page {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  position: relative;
  min-height: 25rem;
  padding: 0 0 0 var(--side-gutter);
  background-color: #F5F5F5;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  border-radius: 0 0 3.72rem 0;
  gap: 0 4.17rem;
}

.c-banner-page__content {
  position: relative;
  max-width: calc(1656px / 12 * 6);
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  margin: 0;
  -ms-flex-item-align: center;
      -ms-grid-row-align: center;
      align-self: center;
}

.c-banner-page__image-container {
  position: relative;
  max-width: 46rem;
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  margin: 0;
}

.c-banner-page__image {
  width: 100%;
  height: 100%;
  margin: 0;
  -o-object-fit: cover;
     object-fit: cover;
  aspect-ratio: 826/476;
  clip-path: url(#c-banner-page__clip--desktop);
}

.c-banner-page__image-clip-container {
  border-radius: 0 0 3.72rem 0;
  overflow: hidden;
  margin: 0;
  width: 100%;
  height: 100%;
  position: relative;
  display: block;
}

.c-banner-page__stripes {
  position: absolute;
  left: -3rem;
  bottom: -1.47rem;
  width: 18.72rem;
  z-index: 1;
}

.c-banner-page__label {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  margin: 0;
  color: #fff;
}

.c-banner-page__label::after {
  content: '';
  width: 5em;
  height: 3px;
  margin-top: 0.5em;
  background-color: #09d6a1;
  -webkit-transition: width 150ms ease-in-out;
  transition: width 150ms ease-in-out;
}

.c-banner-page__title {
  margin: 0.7rem 0 0 0;
}

.c-banner-page__btn {
  margin-top: 2rem;
}

.c-banner-page .c-strut-dropdown__value {
  color: #1f1f1f;
}

.c-banner-page__clip {
  position: absolute;
  display: block;
  inset: 0;
  height: 100%;
  width: 100%;
  margin: 0;
  z-index: -1;
}

.c-banner-page__clip--mobile {
  display: none;
}

.c-banner-page__blurb {
  margin-top: 0.75rem;
}

@media only screen and (max-width: 991px) {
  .c-banner-page {
    min-height: 100%;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    padding: 0;
    border-radius: unset;
  }
  .c-banner-page .c-breadcrumbs__crumb:last-child {
    display: none;
  }
  .c-banner-page__image-container {
    max-width: 100%;
    -webkit-box-flex: 0;
        -ms-flex: none;
            flex: none;
  }
  .c-banner-page__image-clip-container {
    border-radius: unset;
  }
  .c-banner-page__stripes {
    position: absolute;
    left: 5%;
    bottom: auto;
    top: 1.17rem;
    width: 34.6%;
    z-index: 1;
  }
  .c-banner-page__content {
    -webkit-box-ordinal-group: 2;
        -ms-flex-order: 1;
            order: 1;
    max-width: 100%;
    padding: 1.25rem 1.25rem var(--section-vertical-margin);
    -ms-flex-item-align: auto;
        -ms-grid-row-align: auto;
        align-self: auto;
  }
  .c-banner-page__clip--desktop {
    display: none;
  }
  .c-banner-page__clip--mobile {
    display: block;
  }
  .c-banner-page__image {
    clip-path: url(#c-banner-page__clip--mobile);
  }
}

.c-intro-block {
  position: relative;
  width: 100%;
  max-width: calc(1656px / 12 * 8);
  margin: 0 auto;
  padding: 5rem 0 3rem;
}

.c-intro-block--align-left {
  text-align: left;
}

.c-intro-block__icon {
  display: inline-block;
  width: 4rem;
}

.c-intro-block__btn {
  margin-top: 2rem;
}

@media only screen and (max-width: 768px) {
  .c-intro-block {
    padding: 3rem 0;
  }
}

.c-grouped-listings {
  margin-bottom: 5rem;
}

.c-grouped-listing {
  margin-top: 3rem;
  scroll-margin-top: 1rem;
}

.c-grouped-listing:first-child {
  margin-top: 0;
}

.c-grouped-listing__title {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
}

.c-grouped-listing__title::after {
  content: '';
  width: 4em;
  height: 3px;
  margin-top: 0.25em;
  background-color: #ffc200;
}

.c-grouped-listing__list {
  -webkit-columns: 2;
     -moz-columns: 2;
          columns: 2;
  margin-top: 2rem;
}

.c-grouped-listing__list__item {
  margin: 0;
  line-height: 2;
}

.c-grouped-listing__list__link {
  font-weight: 600;
  text-decoration: none;
  color: #0c2189;
}

.c-grouped-listing__list__link:hover, .c-grouped-listing__list__link:focus {
  text-decoration: underline;
  color: #0c2189;
}

@media only screen and (max-width: 768px) {
  .c-grouped-listings {
    margin-bottom: 3rem;
  }
  .c-grouped-listing__list {
    -webkit-columns: 1;
       -moz-columns: 1;
            columns: 1;
    margin-top: 2rem;
  }
}

/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIl91dGlsaXRpZXMuc2NzcyIsInBhZ2UtdGVtcGxhdGVzL3BhZ2UtcmVzb3VyY2UtbGlzdGluZy5jc3MiLCJfY3VzdG9tLXV0aWxpdGllcy5zY3NzIiwiX3ZhcmlhYmxlcy5zY3NzIiwiX21peGlucy5zY3NzIiwiLi4vLi4vLi4vYmFzZS10aGVtZS9hc3NldHMvc2Nzcy91dGlsaXRpZXMvX21peGlucy5zY3NzIiwiY29tcG9uZW50cy9fYmFubmVyLXBhZ2Uuc2NzcyIsImNvbXBvbmVudHMvX2ludHJvLWJsb2NrLnNjc3MiLCJwYWdlLXRlbXBsYXRlcy9wYWdlLXJlc291cmNlLWxpc3Rpbmcuc2NzcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7WUNFWTtBRElaOztZQ0RZO0FDTFo7O1lEUVk7QUVSWjs7c0JGV3NCO0FFUHRCOztZRlVZO0FFSlo7O1lGT1k7QUU2Qlo7RUFDSSx3QkFBZ0I7RUFDaEIsMEJBQWtCO0VBQ2xCLHlCQUFpQjtFQUNqQix3QkFBZ0I7RUFDaEIscUJBQWE7RUFDYix3QkFBZ0I7RUFDaEIsdUJBQWU7RUFDZiwyQkFBbUI7RUFDbkIsdUJBQWU7RUFDZiwyQkFBbUI7RUFDbkIseUJBQWlCO0VBQ2pCLHNCQUFjO0VBQ2Qsd0JBQWdCO0VBQ2hCLHlCQUFpQjtFQUNqQix3QkFBZ0I7RUFDaEIsdUJBQWU7QUYzQm5COztBRXNDQTs7WUZsQ1k7QUV3Rlo7O1lGckZZO0FDcENaOztZRHVDWTtBRzdDWiw0QkFBQTtBQ0FBOztzQkppRHNCO0FJN0N0Qjs7Ozs7O1lKb0RZO0FJN0JaOzs7OztZSm1DWTtBSXhCWjs7Ozs7O1lKK0JZO0FJbkJaOztzQkpzQnNCO0FJbEJ0Qjs7O1lKc0JZO0FJWlo7Ozs7WUppQlk7QUlGWjs7Ozs7WUpRWTtBSUdaOzs7WUpDWTtBSVdaOzs7WUpQWTtBSy9GWjtFQUNJLG9CQUFhO0VBQWIsb0JBQWE7RUFBYixhQUFhO0VBQ2Isa0JBQWtCO0VBQ2xCLGlCQUFpQjtFQUNqQixpQ0FBaUM7RUFDakMseUJBQXlCO0VB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c0I7TUFBdEIsMEJBQXNCO1VBQXRCLHNCQUFzQjtFQUN0Qix3QkFBdUI7TUFBdkIscUJBQXVCO1VBQXZCLHVCQUF1QjtBUHdRM0I7O0FPM1FBO0VBTVEsV0FBVztFQUNYLFVBQVU7RUFDVixXQUFXO0VBQ1gsa0JBQWtCO0VBQ2xCLHlCTEx1QjtBRjhRL0I7O0FPdFFBO0VBQ0ksa0JBQVU7S0FBVixlQUFVO1VBQVYsVUFBVTtFQUNWLGdCQUFnQjtBUHlRcEI7O0FPdlFBO0VBQ0ksU0FBUztFQUNULGNBQWM7QVAwUWxCOztBT3hRQTtFQUNJLGdCTHlFYTtFS3hFYixxQkFBcUI7RUFDckIsY0x2QjJCO0FGa1MvQjs7QU85UUE7RUFPUSwwQkFBMEI7RUFDMUIsY0w1QnVCO0FGdVMvQjs7QU92UUE7RUFFSTtJQUNJLG1CQUFtQjtFUHlRekI7RU92UUU7SUFDSSxrQkFBVTtPQUFWLGVBQVU7WUFBVixVQUFVO0lBQ1YsZ0JBQWdCO0VQeVF0QjtBQUNGIiwiZmlsZSI6InBhZ2UtdGVtcGxhdGVzL3BhZ2UtcmVzb3VyY2UtbGlzdGluZy5jc3MiLCJzb3VyY2VzQ29udGVudCI6WyIvKiAtLS0tLS0tLS0tXG4gQCBCb3VyYm9uXG4tLS0tLS0tLS0tICovXG5cbkBpbXBvcnQgXCJib3VyYm9uL2NvcmUvX2JvdXJib24uc2Nzc1wiO1xuXG4vKiAtLS0tLS0tLS0tXG4gQCBCb290c3RyYXAgVmFyaWFibGVzXG4tLS0tLS0tLS0tICovXG5cbkBpbXBvcnQgXCJib290c3RyYXAvc2Nzcy9mdW5jdGlvbnNcIjtcbkBpbXBvcnQgXCJib290c3RyYXAvc2Nzcy92YXJpYWJsZXNcIjtcbkBpbXBvcnQgXCJib290c3RyYXAvc2Nzcy9taXhpbnNcIjsiLCIvKiAtLS0tLS0tLS0tXG4gQCBCb3VyYm9uXG4tLS0tLS0tLS0tICovXG4vKiAtLS0tLS0tLS0tXG4gQCBCb290c3RyYXAgVmFyaWFibGVzXG4tLS0tLS0tLS0tICovXG4vKiAtLS0tLS0tLS0tXG4gQCBDdXN0b20gVmFyaWFibGVzXG4tLS0tLS0tLS0tICovXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLVxuIEBAIFByb2plY3QgU3BlY2lmaWMgVmFyaWFibGVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLyogLS0tLS0tLS0tLVxuIEAgT3B0aW9uc1xuLS0tLS0tLS0tLSAqL1xuLyogLS0tLS0tLS0tLVxuIEAgQ29sb3JzXG4tLS0tLS0tLS0tICovXG46cm9vdCB7XG4gIC0tYnJhbmQtcHJpbWFyeTogIzBjMjE4OTtcbiAgLS1icmFuZC1zZWNvbmRhcnk6ICMwOWQ2YTE7XG4gIC0tYnJhbmQtdGVydGlhcnk6ICNlODM0NTI7XG4gIC0tYnJhbmQtc3VjY2VzczogIzMwYmU3NjtcbiAgLS1icmFuZC1pbmZvOiAjMGMyMTg5O1xuICAtLWJyYW5kLXdhcm5pbmc6ICMwOWQ2YTE7XG4gIC0tYnJhbmQtZGFuZ2VyOiAjZTgzNDUyO1xuICAtLWJyYW5kLWxpZ2h0LWJsdWU6ICNlZGYzZjg7XG4gIC0tYnJhbmQtb3JhbmdlOiAjZmZjMjAwO1xuICAtLWJyYW5kLWxpZ2h0LWdyZXk6ICNGNUY1RjU7XG4gIC0tYnJhbmQtbWlkLWdyZXk6ICM3MDcwNzA7XG4gIC0tYnJhbmQtdmlnb3I6ICMwYzIxODk7XG4gIC0tYnJhbmQtcHJvY2VzczogIzA5ZDZhMTtcbiAgLS1icmFuZC1lbmVyZ2l6ZTogI2U4MzQ1MjtcbiAgLS1icmFuZC1wdXJzdWl0OiAjMDBjM2ZmO1xuICAtLWJyYW5kLWlnbml0ZTogI2ZmYzIwMDtcbn1cblxuLyogLS0tLS0tLS0tLVxuIEAgVHlwb2dyYXBoeVxuLS0tLS0tLS0tLSAqL1xuLyogLS0tLS0tLS0tLVxuIEAgTGF5b3V0XG4tLS0tLS0tLS0tICovXG4vKiAtLS0tLS0tLS0tXG4gQCBDdXN0b20gVXRpbGl0aWVzXG4tLS0tLS0tLS0tICovXG4vKiBQcm9qZWN0IHNwZWNpZmljIG1peGlucyAqL1xuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiBAQCBNaXhpbnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4vKiAtLS0tLS0tLS0tXG4gQCBNYWludGFpbiBBc3BlY3QgUmF0aW9cblx0LSAqKiogcmVxdWlyZXMgdGhhdCB0aGUgZWxlbWVudCBoYXMgYW4gaW5uZXIgY29udGFpbmVyIGVsZW1lbnQgaWYgdGhlcmUgaXMgaW5uZXIgY29udGVudFxuXHQtICR4ID0+IHggcG9ydGlvbiBvZiByYXRpb1xuXHQtICR5ID0+IHkgcG9ydGlvbiBvZiByYXRpb1xuICAgIC0gJGMgPT4gc2V0IHRvICdmYWxzZScgdG8gc2tpcCA6Zmlyc3QtY2hpbGQgc3R5bGluZ1xuLS0tLS0tLS0tLSAqL1xuLyogLS0tLS0tLS0tLVxuIEAgQmFja2dyb3VuZCBJbWFnZVxuXHQtIFNob3J0Y3V0IGZvciBsaW5raW5nIGltYWdlcyBpbiB0aGUgY29uZmlndXJlZCBpbWFnZXMgZm9sZGVyXG5cdC0gJGkgPT4gaW1hZ2UgZmlsZSBuYW1lIChyZWxhdGl2ZSB0byBpbWFnZXMgZm9sZGVyKVxuXHQtICRyZXN0ID0+IGFueSBhZGRpdGlvbmFsICdiYWNrZ3JvdW5kJyBwcm9wZXJ0eSBzaG9ydGN1dCBkZWNsYXJhdGlvbnMgKGllOiBuby1yZXBlYXQpXG4tLS0tLS0tLS0tICovXG4vKiAtLS0tLS0tLS0tXG4gQCBTaXplXG4gXHQtIFNob3J0Y3V0IGZvciBzZXR0aW5nIGhlaWdodCBhbmQgd2lkdGhcbiBcdC0gJHdpZHRoID0+IHdpZHRoIG9mIGVsZW1lbnRcbiBcdC0gJGhlaWdodCA9PiBoZWlnaHQgb2YgZWxlbWVudFxuIFx0LSBTaW5nbGUgdmFsdWUgd2lsbCBzZXQgYm90aCB2YWx1ZXMgKGUuZy4gc2l6ZSgxMDAlKTtcbi0tLS0tLS0tLS0gKi9cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gQEAgRnVuY3Rpb25zXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLyogLS0tLS0tLS0tLVxuIEAgQ29sb3IgR2V0XG4gXHQtIGdldCB2YWx1ZSBmcm9tIHRoZSAkdGhlbWUtY29sb3JzIG1hcFxuLS0tLS0tLS0tLSAqL1xuLyogLS0tLS0tLS0tLVxuIEAgQnJlYWtwb2ludCBHZXRcbiBcdC0gZ2V0IHZhbHVlIGZyb20gdGhlICRncmlkLWJyZWFrcG9pbnRzIG1hcFxuIFx0LSAkdHlwZSA9PiAnbWF4JyB8ICdtaW4nLCBkZXBlbmRpbmcgb24gbWVkaWEgcXVlcnkgdHlwZVxuLS0tLS0tLS0tLSAqL1xuLyogLS0tLS0tLS0tLVxuIEAgUmVtc1xuXHQtIGNvbnZlcnQgcGl4ZWxzIHRvIHJlbXNcblx0LSAkcCA9PiBwaXhlbCB2YWx1ZVxuXHQtICRiID0+IGJhc2Ugc2l6ZSAodG8gdXNlIGluIGZvcm11bGEpIC0gZGVmYXVsdHMgdG8gJGZvbnQtc2l6ZXMgcm9vdCB2YXJpYWJsZVxuLS0tLS0tLS0tLSAqL1xuLyogLS0tLS0tLS0tLVxuIEAgTWFwIERlZXAgR2V0XG4gXHQtIGdldCB2YWx1ZSBmcm9tIG5lc3RlZCBtYXBzXG4tLS0tLS0tLS0tICovXG4vKiAtLS0tLS0tLS0tXG4gQCBXZWlnaHQgR2V0XG4gXHQtIGdldCB2YWx1ZSBmcm9tIHRoZSAkZm9udC13ZWlnaHRzIG1hcFxuLS0tLS0tLS0tLSAqL1xuLmMtYmFubmVyLXBhZ2Uge1xuICBkaXNwbGF5OiBmbGV4O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG1pbi1oZWlnaHQ6IDI1cmVtO1xuICBwYWRkaW5nOiAwIDAgMCB2YXIoLS1zaWRlLWd1dHRlcik7XG4gIGJhY2tncm91bmQtY29sb3I6ICNGNUY1RjU7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgYm9yZGVyLXJhZGl1czogMCAwIDMuNzJyZW0gMDtcbiAgZ2FwOiAwIDQuMTdyZW07XG59XG5cbi5jLWJhbm5lci1wYWdlX19jb250ZW50IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBtYXgtd2lkdGg6IGNhbGMoMTY1NnB4IC8gMTIgKiA2KTtcbiAgZmxleDogMTtcbiAgbWFyZ2luOiAwO1xuICBhbGlnbi1zZWxmOiBjZW50ZXI7XG59XG5cbi5jLWJhbm5lci1wYWdlX19pbWFnZS1jb250YWluZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG1heC13aWR0aDogNDZyZW07XG4gIGZsZXg6IDE7XG4gIG1hcmdpbjogMDtcbn1cblxuLmMtYmFubmVyLXBhZ2VfX2ltYWdlIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgbWFyZ2luOiAwO1xuICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgYXNwZWN0LXJhdGlvOiA4MjYvNDc2O1xuICBjbGlwLXBhdGg6IHVybCgjYy1iYW5uZXItcGFnZV9fY2xpcC0tZGVza3RvcCk7XG59XG5cbi5jLWJhbm5lci1wYWdlX19pbWFnZS1jbGlwLWNvbnRhaW5lciB7XG4gIGJvcmRlci1yYWRpdXM6IDAgMCAzLjcycmVtIDA7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIG1hcmdpbjogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLmMtYmFubmVyLXBhZ2VfX3N0cmlwZXMge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IC0zcmVtO1xuICBib3R0b206IC0xLjQ3cmVtO1xuICB3aWR0aDogMTguNzJyZW07XG4gIHotaW5kZXg6IDE7XG59XG5cbi5jLWJhbm5lci1wYWdlX19sYWJlbCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIG1hcmdpbjogMDtcbiAgY29sb3I6ICNmZmY7XG59XG5cbi5jLWJhbm5lci1wYWdlX19sYWJlbDo6YWZ0ZXIge1xuICBjb250ZW50OiAnJztcbiAgd2lkdGg6IDVlbTtcbiAgaGVpZ2h0OiAzcHg7XG4gIG1hcmdpbi10b3A6IDAuNWVtO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDlkNmExO1xuICB0cmFuc2l0aW9uOiB3aWR0aCAxNTBtcyBlYXNlLWluLW91dDtcbn1cblxuLmMtYmFubmVyLXBhZ2VfX3RpdGxlIHtcbiAgbWFyZ2luOiAwLjdyZW0gMCAwIDA7XG59XG5cbi5jLWJhbm5lci1wYWdlX19idG4ge1xuICBtYXJnaW4tdG9wOiAycmVtO1xufVxuXG4uYy1iYW5uZXItcGFnZSAuYy1zdHJ1dC1kcm9wZG93bl9fdmFsdWUge1xuICBjb2xvcjogIzFmMWYxZjtcbn1cblxuLmMtYmFubmVyLXBhZ2VfX2NsaXAge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBpbnNldDogMDtcbiAgaGVpZ2h0OiAxMDAlO1xuICB3aWR0aDogMTAwJTtcbiAgbWFyZ2luOiAwO1xuICB6LWluZGV4OiAtMTtcbn1cblxuLmMtYmFubmVyLXBhZ2VfX2NsaXAtLW1vYmlsZSB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi5jLWJhbm5lci1wYWdlX19ibHVyYiB7XG4gIG1hcmdpbi10b3A6IDAuNzVyZW07XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogOTkxcHgpIHtcbiAgLmMtYmFubmVyLXBhZ2Uge1xuICAgIG1pbi1oZWlnaHQ6IDEwMCU7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBwYWRkaW5nOiAwO1xuICAgIGJvcmRlci1yYWRpdXM6IHVuc2V0O1xuICB9XG4gIC5jLWJhbm5lci1wYWdlIC5jLWJyZWFkY3J1bWJzX19jcnVtYjpsYXN0LWNoaWxkIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG4gIC5jLWJhbm5lci1wYWdlX19pbWFnZS1jb250YWluZXIge1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgICBmbGV4OiBub25lO1xuICB9XG4gIC5jLWJhbm5lci1wYWdlX19pbWFnZS1jbGlwLWNvbnRhaW5lciB7XG4gICAgYm9yZGVyLXJhZGl1czogdW5zZXQ7XG4gIH1cbiAgLmMtYmFubmVyLXBhZ2VfX3N0cmlwZXMge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBsZWZ0OiA1JTtcbiAgICBib3R0b206IGF1dG87XG4gICAgdG9wOiAxLjE3cmVtO1xuICAgIHdpZHRoOiAzNC42JTtcbiAgICB6LWluZGV4OiAxO1xuICB9XG4gIC5jLWJhbm5lci1wYWdlX19jb250ZW50IHtcbiAgICBvcmRlcjogMTtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgcGFkZGluZzogMS4yNXJlbSAxLjI1cmVtIHZhcigtLXNlY3Rpb24tdmVydGljYWwtbWFyZ2luKTtcbiAgICBhbGlnbi1zZWxmOiBhdXRvO1xuICB9XG4gIC5jLWJhbm5lci1wYWdlX19jbGlwLS1kZXNrdG9wIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG4gIC5jLWJhbm5lci1wYWdlX19jbGlwLS1tb2JpbGUge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG4gIC5jLWJhbm5lci1wYWdlX19pbWFnZSB7XG4gICAgY2xpcC1wYXRoOiB1cmwoI2MtYmFubmVyLXBhZ2VfX2NsaXAtLW1vYmlsZSk7XG4gIH1cbn1cblxuLmMtaW50cm8tYmxvY2sge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXgtd2lkdGg6IGNhbGMoMTY1NnB4IC8gMTIgKiA4KTtcbiAgbWFyZ2luOiAwIGF1dG87XG4gIHBhZGRpbmc6IDVyZW0gMCAzcmVtO1xufVxuXG4uYy1pbnRyby1ibG9jay0tYWxpZ24tbGVmdCB7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG59XG5cbi5jLWludHJvLWJsb2NrX19pY29uIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB3aWR0aDogNHJlbTtcbn1cblxuLmMtaW50cm8tYmxvY2tfX2J0biB7XG4gIG1hcmdpbi10b3A6IDJyZW07XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzY4cHgpIHtcbiAgLmMtaW50cm8tYmxvY2sge1xuICAgIHBhZGRpbmc6IDNyZW0gMDtcbiAgfVxufVxuXG4uYy1ncm91cGVkLWxpc3RpbmdzIHtcbiAgbWFyZ2luLWJvdHRvbTogNXJlbTtcbn1cblxuLmMtZ3JvdXBlZC1saXN0aW5nIHtcbiAgbWFyZ2luLXRvcDogM3JlbTtcbiAgc2Nyb2xsLW1hcmdpbi10b3A6IDFyZW07XG59XG5cbi5jLWdyb3VwZWQtbGlzdGluZzpmaXJzdC1jaGlsZCB7XG4gIG1hcmdpbi10b3A6IDA7XG59XG5cbi5jLWdyb3VwZWQtbGlzdGluZ19fdGl0bGUge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbn1cblxuLmMtZ3JvdXBlZC1saXN0aW5nX190aXRsZTo6YWZ0ZXIge1xuICBjb250ZW50OiAnJztcbiAgd2lkdGg6IDRlbTtcbiAgaGVpZ2h0OiAzcHg7XG4gIG1hcmdpbi10b3A6IDAuMjVlbTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmYzIwMDtcbn1cblxuLmMtZ3JvdXBlZC1saXN0aW5nX19saXN0IHtcbiAgY29sdW1uczogMjtcbiAgbWFyZ2luLXRvcDogMnJlbTtcbn1cblxuLmMtZ3JvdXBlZC1saXN0aW5nX19saXN0X19pdGVtIHtcbiAgbWFyZ2luOiAwO1xuICBsaW5lLWhlaWdodDogMjtcbn1cblxuLmMtZ3JvdXBlZC1saXN0aW5nX19saXN0X19saW5rIHtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICBjb2xvcjogIzBjMjE4OTtcbn1cblxuLmMtZ3JvdXBlZC1saXN0aW5nX19saXN0X19saW5rOmhvdmVyLCAuYy1ncm91cGVkLWxpc3RpbmdfX2xpc3RfX2xpbms6Zm9jdXMge1xuICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgY29sb3I6ICMwYzIxODk7XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzY4cHgpIHtcbiAgLmMtZ3JvdXBlZC1saXN0aW5ncyB7XG4gICAgbWFyZ2luLWJvdHRvbTogM3JlbTtcbiAgfVxuICAuYy1ncm91cGVkLWxpc3RpbmdfX2xpc3Qge1xuICAgIGNvbHVtbnM6IDE7XG4gICAgbWFyZ2luLXRvcDogMnJlbTtcbiAgfVxufVxuIiwiLyogLS0tLS0tLS0tLVxuIEAgQ3VzdG9tIFZhcmlhYmxlc1xuLS0tLS0tLS0tLSAqL1xuXG5AaW1wb3J0IFwiY2hpbGQtdGhlbWUvYXNzZXRzL3Njc3MvdmFyaWFibGVzXCI7XG5cbi8qIC0tLS0tLS0tLS1cbiBAIEN1c3RvbSBVdGlsaXRpZXNcbi0tLS0tLS0tLS0gKi9cblxuQGltcG9ydCBcImNoaWxkLXRoZW1lL2Fzc2V0cy9zY3NzL21peGluc1wiO1xuXG5AaW1wb3J0IFwiYmFzZS10aGVtZS9hc3NldHMvc2Nzcy91dGlsaXRpZXMvbWl4aW5zXCI7XG5AaW1wb3J0IFwiYmFzZS10aGVtZS9hc3NldHMvc2Nzcy91dGlsaXRpZXMvcmVzZXRcIjtcbkBpbXBvcnQgXCJiYXNlLXRoZW1lL2Fzc2V0cy9zY3NzL3V0aWxpdGllcy9iYXNlXCI7XG5AaW1wb3J0IFwiYmFzZS10aGVtZS9hc3NldHMvc2Nzcy91dGlsaXRpZXMvd3AtYmFzZVwiOyIsIi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gQEAgUHJvamVjdCBTcGVjaWZpYyBWYXJpYWJsZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5cbi8qIC0tLS0tLS0tLS1cbiBAIE9wdGlvbnNcbi0tLS0tLS0tLS0gKi9cblxuJGVuYWJsZS1yZXNwb25zaXZlLXRleHQ6XHR0cnVlO1xuXG4vKiAtLS0tLS0tLS0tXG4gQCBDb2xvcnNcbi0tLS0tLS0tLS0gKi9cblxuJGxpZ2h0LWJsdWU6ICAgICAgICAgICAgI2VkZjNmODtcblxuJGJyYW5kLXZpZ29yOiAgICAgICAgICAgIzBjMjE4OTtcbiRicmFuZC1wcm9jZXNzOiAgICAgICAgICMwOWQ2YTE7XG4kYnJhbmQtZW5lcmdpemU6ICAgICAgICAjZTgzNDUyO1xuJGJyYW5kLXB1cnN1aXQ6ICAgICAgICAgIzAwYzNmZjtcbiRicmFuZC1pZ25pdGU6ICAgICAgICAgICNmZmMyMDA7XG4kYnJhbmQtb3JhbmdlOiAgICAgICAgICAkYnJhbmQtaWduaXRlO1xuXG4kYnJhbmQtcHJpbWFyeTogICAgICAgICAkYnJhbmQtdmlnb3I7XG4kYnJhbmQtc2Vjb25kYXJ5OiAgICAgICAkYnJhbmQtcHJvY2VzcztcbiRicmFuZC10ZXJ0aWFyeTogICAgICAgICRicmFuZC1lbmVyZ2l6ZTtcblxuJHRoZW1lLWNvbG9yczogbWFwLW1lcmdlKCR0aGVtZS1jb2xvcnMsIChcbiAgICBwcmltYXJ5OiAkYnJhbmQtcHJpbWFyeSxcbiAgICBzZWNvbmRhcnk6ICRicmFuZC1zZWNvbmRhcnksXG4gICAgdGVydGlhcnk6ICRicmFuZC10ZXJ0aWFyeSxcbiAgICBzdWNjZXNzOiAjMzBiZTc2LFxuICAgIGluZm86ICRicmFuZC1wcmltYXJ5LFxuICAgIHdhcm5pbmc6ICRicmFuZC1zZWNvbmRhcnksXG4gICAgZGFuZ2VyOiAkYnJhbmQtdGVydGlhcnksXG4gICAgbGlnaHQtYmx1ZTogJGxpZ2h0LWJsdWUsICAgIFxuICAgIG9yYW5nZTogJGJyYW5kLW9yYW5nZSxcbiAgICBsaWdodC1ncmV5OiAjRjVGNUY1LFxuICAgIG1pZC1ncmV5OiAjNzA3MDcwLFxuICAgIHZpZ29yOiAkYnJhbmQtdmlnb3IsXG4gICAgcHJvY2VzczogJGJyYW5kLXByb2Nlc3MsXG4gICAgZW5lcmdpemU6ICRicmFuZC1lbmVyZ2l6ZSxcbiAgICBwdXJzdWl0OiAkYnJhbmQtcHVyc3VpdCxcbiAgICBpZ25pdGU6ICRicmFuZC1pZ25pdGVcbikpO1xuXG46cm9vdCB7XG4gICAgLS1icmFuZC1wcmltYXJ5OiAjeyRicmFuZC1wcmltYXJ5fTtcbiAgICAtLWJyYW5kLXNlY29uZGFyeTogI3skYnJhbmQtc2Vjb25kYXJ5fTtcbiAgICAtLWJyYW5kLXRlcnRpYXJ5OiAjeyRicmFuZC10ZXJ0aWFyeX07XG4gICAgLS1icmFuZC1zdWNjZXNzOiAjMzBiZTc2O1xuICAgIC0tYnJhbmQtaW5mbzogI3skYnJhbmQtcHJpbWFyeX07XG4gICAgLS1icmFuZC13YXJuaW5nOiAjeyRicmFuZC1zZWNvbmRhcnl9O1xuICAgIC0tYnJhbmQtZGFuZ2VyOiAjeyRicmFuZC10ZXJ0aWFyeX07XG4gICAgLS1icmFuZC1saWdodC1ibHVlOiAjeyRsaWdodC1ibHVlfTtcbiAgICAtLWJyYW5kLW9yYW5nZTogI3skYnJhbmQtb3JhbmdlfTtcbiAgICAtLWJyYW5kLWxpZ2h0LWdyZXk6ICNGNUY1RjU7XG4gICAgLS1icmFuZC1taWQtZ3JleTogIzcwNzA3MDtcbiAgICAtLWJyYW5kLXZpZ29yOiAjeyRicmFuZC12aWdvcn07XG4gICAgLS1icmFuZC1wcm9jZXNzOiAjeyRicmFuZC1wcm9jZXNzfTtcbiAgICAtLWJyYW5kLWVuZXJnaXplOiAjeyRicmFuZC1lbmVyZ2l6ZX07XG4gICAgLS1icmFuZC1wdXJzdWl0OiAjeyRicmFuZC1wdXJzdWl0fTtcbiAgICAtLWJyYW5kLWlnbml0ZTogI3skYnJhbmQtaWduaXRlfTtcbn1cblxuJGJvZHktYmc6ICAgICAgICAgICAgICAgI2ZmZjtcbiRib2R5LWNvbG9yOiAgICAgICAgICAgICMxZjFmMWY7XG5cbiRsaW5rLWNvbG9yOiAgICAgICAgICAgICRicmFuZC1wcmltYXJ5O1xuJGxpbmstaG92ZXItY29sb3I6ICAgICAgZGFya2VuKCRsaW5rLWNvbG9yLCAxNSUpO1xuXG4kbGluZS1jb2xvcjogXHRcdFx0I2UxZTJlMztcblxuLyogLS0tLS0tLS0tLVxuIEAgVHlwb2dyYXBoeVxuLS0tLS0tLS0tLSAqL1xuXG4kYmFzZUZvbnRTaXplOiAxOHB4O1xuXG4kcm9vdEZvbnRTaXplOiBzdHJpcC11bml0KCRiYXNlRm9udFNpemUpIC8gMTYgKiAxMDAlOyAvLyBGb3IgYWNjZXNzaWJpbGl0eSByZWFzb25zIHRoZSByb290IGZvbnQgc2l6ZSBzaG91bGQgYmUgc2V0IHRvICUsIG1vc3QgYnJvd3NlcnMgaGF2ZSBhIGJhc2UgZm9udCBzaXplIG9mIDE2cHhcblxuJGZvbnQtc2l6ZXM6IChcbiAgICByb290OiAkcm9vdEZvbnRTaXplLFxuICAgIGgxOiA2MHB4LFxuICAgIGgyOiA0NnB4LFxuICAgIGgzOiAzNnB4LFxuICAgIGg0OiAyNnB4LFxuICAgIGg1OiAyMXB4LFxuICAgIGg2OiAxOHB4LFxuICAgIGxlYWQ6IDIxcHgsXG4gICAgYmxvY2txdW90ZTogMjFweFxuKTtcblxuJGZvbnQtc2l6ZS1iYXNlOiAxcmVtO1xuXG4kbGVhZC1mb250LXNpemU6IHJlbXMobWFwLWdldCgkZm9udC1zaXplcywgbGVhZCkpO1xuJGJsb2NrcXVvdGUtZm9udC1zaXplOiByZW1zKG1hcC1nZXQoJGZvbnQtc2l6ZXMsIGJsb2NrcXVvdGUpKTtcblxuJGZvbnQtZmFtaWx5LWJhc2U6ICdNb250c2VycmF0Jywgc2Fucy1zZXJpZjtcbiRmb250LWZhbWlseS1zYW5zLXNlcmlmOiAkZm9udC1mYW1pbHktYmFzZTtcbiRoZWFkaW5ncy1mb250LWZhbWlseTogJGZvbnQtZmFtaWx5LXNhbnMtc2VyaWY7XG5cbiRmYS1mb250LWZhbWlseTogXCJGb250IEF3ZXNvbWUgNSBQcm9cIjtcblxuJGZvbnQtd2VpZ2h0czogKFxuICAgIGJsYWNrOiA5MDAsXG4gICAgZXh0cmEtYm9sZDogODAwLFxuICAgIGV4dHJhYm9sZDogODAwLFxuICAgIGJvbGQ6IDcwMCxcbiAgICBzZW1pLWJvbGQ6IDYwMCxcbiAgICBzZW1pYm9sZDogNjAwLFxuICAgIG1lZGl1bTogNTAwLFxuICAgIHJlZ3VsYXI6IDQwMCxcbiAgICBsaWdodDogNDAwLFxuICAgIHRoaW46IDQwMFxuKTtcblxuJGZvbnQtd2VpZ2h0LWJhc2U6IG1hcC1nZXQoJGZvbnQtd2VpZ2h0cywgcmVndWxhcik7XG4kaGVhZGluZ3MtZm9udC13ZWlnaHQ6IG1hcC1nZXQoJGZvbnQtd2VpZ2h0cywgYm9sZCk7XG4kbGVhZC1mb250LXdlaWdodDogbWFwLWdldCgkZm9udC13ZWlnaHRzLCBzZW1pLWJvbGQpO1xuXG4kbGluZS1oZWlnaHQtYmFzZTogMS42NTtcbiRoZWFkaW5ncy1saW5lLWhlaWdodDogMS40O1xuXG4kbGluay1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4kbGluay1ob3Zlci1kZWNvcmF0aW9uOiAkbGluay1kZWNvcmF0aW9uO1xuXG4vKiAtLS0tLS0tLS0tXG4gQCBMYXlvdXRcbi0tLS0tLS0tLS0gKi9cblxuJGdyaWQtZ3V0dGVyLXdpZHRoOiBcdCAycmVtO1xuJGdyaWQtcGFkZGluZzpcdFx0XHQgJGdyaWQtZ3V0dGVyLXdpZHRoIC8gMjtcblxuJHZlcnRpY2FsLW1hcmdpbi1iYXNlOlx0IDEuNXJlbTtcblxuJGdyaWQtYnJlYWtwb2ludHM6IChcbiAgICB4czogMCwgLy8gTm90IHN1cmUgd2h5IGJ1dCB0aGlzIG11c3QgYmUgemVyb1xuICAgIHNtOiA1NzZweCxcbiAgICBtZDogNzY5cHgsXG4gICAgbGc6IDk5MnB4LFxuICAgIHhsOiAxNjIwcHhcbik7XG5cbiRjb250YWluZXItd2lkdGg6IG1hcC1nZXQoJGdyaWQtYnJlYWtwb2ludHMsIHhsKSsoc3RyaXAtdW5pdCgkZ3JpZC1ndXR0ZXItd2lkdGgpICogc3RyaXAtdW5pdCgkYmFzZUZvbnRTaXplKSk7XG5cbiRpY29uLXBhdGg6ICcuLi9pbWcvaWNvbnMvJzsgXG5cbiRmb3JtLWVsZW1lbnQteC1wYWRkaW5nOiA1cHg7XG4kZm9ybS1lbGVtZW50LXktcGFkZGluZzogMC41cmVtOyIsIi8qIFByb2plY3Qgc3BlY2lmaWMgbWl4aW5zICovIiwiLyogLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiBAQCBNaXhpbnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5cbi8qIC0tLS0tLS0tLS1cbiBAIE1haW50YWluIEFzcGVjdCBSYXRpb1xuXHQtICoqKiByZXF1aXJlcyB0aGF0IHRoZSBlbGVtZW50IGhhcyBhbiBpbm5lciBjb250YWluZXIgZWxlbWVudCBpZiB0aGVyZSBpcyBpbm5lciBjb250ZW50XG5cdC0gJHggPT4geCBwb3J0aW9uIG9mIHJhdGlvXG5cdC0gJHkgPT4geSBwb3J0aW9uIG9mIHJhdGlvXG4gICAgLSAkYyA9PiBzZXQgdG8gJ2ZhbHNlJyB0byBza2lwIDpmaXJzdC1jaGlsZCBzdHlsaW5nXG4tLS0tLS0tLS0tICovXG5cbkBtaXhpbiBhc3BlY3QtcmF0aW8oJHg6IDEsICR5OiAxLCAkYzogdHJ1ZSkge1xuXHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cblx0JjpiZWZvcmUge1xuXHRcdGNvbnRlbnQ6IFwiXCI7XG5cdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0cGFkZGluZy10b3A6IHBlcmNlbnRhZ2UoJHkgLyAkeCk7XG5cdH1cblx0QGlmICgkYyA9PSB0cnVlKSB7XG5cdFx0JiA+IDpmaXJzdC1jaGlsZCB7XG5cdFx0XHRAaW5jbHVkZSBwb3NpdGlvbihhYnNvbHV0ZSwgMCAwIDAgMCk7XG5cdFx0fVxuXHR9XG59XG5cbi8qIC0tLS0tLS0tLS1cbiBAIEJhY2tncm91bmQgSW1hZ2Vcblx0LSBTaG9ydGN1dCBmb3IgbGlua2luZyBpbWFnZXMgaW4gdGhlIGNvbmZpZ3VyZWQgaW1hZ2VzIGZvbGRlclxuXHQtICRpID0+IGltYWdlIGZpbGUgbmFtZSAocmVsYXRpdmUgdG8gaW1hZ2VzIGZvbGRlcilcblx0LSAkcmVzdCA9PiBhbnkgYWRkaXRpb25hbCAnYmFja2dyb3VuZCcgcHJvcGVydHkgc2hvcnRjdXQgZGVjbGFyYXRpb25zIChpZTogbm8tcmVwZWF0KVxuLS0tLS0tLS0tLSAqL1xuXG5AbWl4aW4gYmctaW1hZ2UoJGksICRyZXN0Li4uKSB7XG5cdGJhY2tncm91bmQ6IHVybChcIiN7JGltYWdlcy1mb2xkZXJ9LyN7JGl9XCIpICRyZXN0O1xufVxuXG4vKiAtLS0tLS0tLS0tXG4gQCBTaXplXG4gXHQtIFNob3J0Y3V0IGZvciBzZXR0aW5nIGhlaWdodCBhbmQgd2lkdGhcbiBcdC0gJHdpZHRoID0+IHdpZHRoIG9mIGVsZW1lbnRcbiBcdC0gJGhlaWdodCA9PiBoZWlnaHQgb2YgZWxlbWVudFxuIFx0LSBTaW5nbGUgdmFsdWUgd2lsbCBzZXQgYm90aCB2YWx1ZXMgKGUuZy4gc2l6ZSgxMDAlKTtcbi0tLS0tLS0tLS0gKi9cbkBtaXhpbiBzaXplKCR3aWR0aCwgJGhlaWdodDogJHdpZHRoKSB7XG5cdHdpZHRoOiAkd2lkdGg7XG5cdGhlaWdodDogJGhlaWdodDtcbn1cblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiBAQCBGdW5jdGlvbnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5cbi8qIC0tLS0tLS0tLS1cbiBAIENvbG9yIEdldFxuIFx0LSBnZXQgdmFsdWUgZnJvbSB0aGUgJHRoZW1lLWNvbG9ycyBtYXBcbi0tLS0tLS0tLS0gKi9cblxuQGZ1bmN0aW9uIGNvbG9yLWdldCgka2V5cykge1xuXHQkY29sb3I6IG1hcC1kZWVwLWdldCgkdGhlbWUtY29sb3JzLCAka2V5cyk7XG5cdEByZXR1cm4gJGNvbG9yO1xufVxuXG4vKiAtLS0tLS0tLS0tXG4gQCBCcmVha3BvaW50IEdldFxuIFx0LSBnZXQgdmFsdWUgZnJvbSB0aGUgJGdyaWQtYnJlYWtwb2ludHMgbWFwXG4gXHQtICR0eXBlID0+ICdtYXgnIHwgJ21pbicsIGRlcGVuZGluZyBvbiBtZWRpYSBxdWVyeSB0eXBlXG4tLS0tLS0tLS0tICovXG5cbkBmdW5jdGlvbiBicmVha3BvaW50LWdldCgkdHlwZSwgJGtleXMpIHtcblx0JGJyZWFrcG9pbnQ6IG1hcC1kZWVwLWdldCgkZ3JpZC1icmVha3BvaW50cywgJGtleXMpO1xuXHRAaWYgKCR0eXBlID09ICdtYXgnKXtcblx0XHRAcmV0dXJuICRicmVha3BvaW50IC0gMTtcblx0fSBAZWxzZSB7XG5cdFx0QHJldHVybiAkYnJlYWtwb2ludDtcblx0fVxufVxuXG4vKiAtLS0tLS0tLS0tXG4gQCBSZW1zXG5cdC0gY29udmVydCBwaXhlbHMgdG8gcmVtc1xuXHQtICRwID0+IHBpeGVsIHZhbHVlXG5cdC0gJGIgPT4gYmFzZSBzaXplICh0byB1c2UgaW4gZm9ybXVsYSkgLSBkZWZhdWx0cyB0byAkZm9udC1zaXplcyByb290IHZhcmlhYmxlXG4tLS0tLS0tLS0tICovXG5cbkBmdW5jdGlvbiByZW1zKCRwLCAkYjogJGJhc2VGb250U2l6ZSkge1xuICAgIEByZXR1cm4gKHN0cmlwLXVuaXQoJHApIC8gc3RyaXAtdW5pdCgkYikpICsgMHJlbTtcbn1cblxuLyogLS0tLS0tLS0tLVxuIEAgTWFwIERlZXAgR2V0XG4gXHQtIGdldCB2YWx1ZSBmcm9tIG5lc3RlZCBtYXBzXG4tLS0tLS0tLS0tICovXG5cbkBmdW5jdGlvbiBtYXAtZGVlcC1nZXQoJG1hcCwgJGtleXMuLi4pIHtcblx0QGVhY2ggJGtleSBpbiAka2V5cyB7XG5cdFx0JG1hcDogbWFwLWdldCgkbWFwLCAka2V5KTtcblx0fVxuXHRAcmV0dXJuICRtYXA7XG59XG5cbi8qIC0tLS0tLS0tLS1cbiBAIFdlaWdodCBHZXRcbiBcdC0gZ2V0IHZhbHVlIGZyb20gdGhlICRmb250LXdlaWdodHMgbWFwXG4tLS0tLS0tLS0tICovXG5cbkBmdW5jdGlvbiB3ZWlnaHQtZ2V0KCRrZXlzKSB7XG5cdCR3ZWlnaHQ6IG1hcC1kZWVwLWdldCgkZm9udC13ZWlnaHRzLCAka2V5cyk7XG5cdEByZXR1cm4gJHdlaWdodDtcbn0iLCIuYy1iYW5uZXItcGFnZSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbWluLWhlaWdodDogMjVyZW07XG4gICAgcGFkZGluZzogMCAwIDAgdmFyKC0tc2lkZS1ndXR0ZXIpO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNGNUY1RjU7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgIGJvcmRlci1yYWRpdXM6IDAgMCAzLjcycmVtIDA7XG4gICAgZ2FwOiAwIDQuMTdyZW07XG59XG4uYy1iYW5uZXItcGFnZV9fY29udGVudCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIG1heC13aWR0aDogY2FsYygjeyRjb250YWluZXItd2lkdGh9IC8gMTIgKiA2KTtcbiAgICBmbGV4OiAxO1xuICAgIG1hcmdpbjogMDtcbiAgICBhbGlnbi1zZWxmOiBjZW50ZXI7XG59XG4uYy1iYW5uZXItcGFnZV9faW1hZ2UtY29udGFpbmVyIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbWF4LXdpZHRoOiA0NnJlbTtcbiAgICBmbGV4OiAxO1xuICAgIG1hcmdpbjogMDtcbn1cbi5jLWJhbm5lci1wYWdlX19pbWFnZSB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIG1hcmdpbjogMDtcbiAgICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgICBhc3BlY3QtcmF0aW86IDgyNi80NzY7XG4gICAgY2xpcC1wYXRoOiB1cmwoI2MtYmFubmVyLXBhZ2VfX2NsaXAtLWRlc2t0b3ApO1xufVxuLmMtYmFubmVyLXBhZ2VfX2ltYWdlLWNsaXAtY29udGFpbmVyIHtcbiAgICBib3JkZXItcmFkaXVzOiAwIDAgMy43MnJlbSAwO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgbWFyZ2luOiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgZGlzcGxheTogYmxvY2s7XG59XG4uYy1iYW5uZXItcGFnZV9fc3RyaXBlcyB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGxlZnQ6IC0zcmVtO1xuICAgIGJvdHRvbTogLTEuNDdyZW07XG4gICAgd2lkdGg6IDE4LjcycmVtO1xuICAgIHotaW5kZXg6IDE7XG59XG4uYy1iYW5uZXItcGFnZV9fbGFiZWwge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIG1hcmdpbjogMDtcbiAgICBjb2xvcjogI2ZmZjtcblxuICAgICY6OmFmdGVyIHtcbiAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgIHdpZHRoOiA1ZW07XG4gICAgICAgIGhlaWdodDogM3B4O1xuICAgICAgICBtYXJnaW4tdG9wOiAwLjVlbTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogY29sb3ItZ2V0KHNlY29uZGFyeSk7XG4gICAgICAgIHRyYW5zaXRpb246IHdpZHRoIDE1MG1zIGVhc2UtaW4tb3V0O1xuICAgIH1cbn1cbi5jLWJhbm5lci1wYWdlX190aXRsZSB7XG4gICAgbWFyZ2luOiAwLjdyZW0gMCAwIDA7XG59XG4uYy1iYW5uZXItcGFnZV9fYnRuIHtcbiAgICBtYXJnaW4tdG9wOiAycmVtO1xufVxuLmMtYmFubmVyLXBhZ2UgLmMtc3RydXQtZHJvcGRvd25fX3ZhbHVlIHtcbiAgICBjb2xvcjogJGJvZHktY29sb3I7XG59XG4uYy1iYW5uZXItcGFnZV9fY2xpcCB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGluc2V0OiAwO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXJnaW46IDA7XG4gICAgei1pbmRleDogLTE7XG59XG4uYy1iYW5uZXItcGFnZV9fY2xpcC0tbW9iaWxlIHtcbiAgICBkaXNwbGF5OiBub25lO1xufVxuLmMtYmFubmVyLXBhZ2VfX2JsdXJiIHtcbiAgICBtYXJnaW4tdG9wOiAwLjc1cmVtO1xufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IGJyZWFrcG9pbnQtZ2V0KCdtYXgnLCBsZykpIHtcbiAgICAuYy1iYW5uZXItcGFnZSB7XG4gICAgICAgIG1pbi1oZWlnaHQ6IDEwMCU7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IHVuc2V0O1xuICAgIH1cbiAgICAuYy1iYW5uZXItcGFnZSAuYy1icmVhZGNydW1ic19fY3J1bWI6bGFzdC1jaGlsZCB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuICAgIC5jLWJhbm5lci1wYWdlX19pbWFnZS1jb250YWluZXIge1xuICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgICAgIGZsZXg6IG5vbmU7XG4gICAgfVxuICAgIC5jLWJhbm5lci1wYWdlX19pbWFnZS1jbGlwLWNvbnRhaW5lciB7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IHVuc2V0O1xuICAgIH1cbiAgICAuYy1iYW5uZXItcGFnZV9fc3RyaXBlcyB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgbGVmdDogNSU7XG4gICAgICAgIGJvdHRvbTogYXV0bztcbiAgICAgICAgdG9wOiAxLjE3cmVtO1xuICAgICAgICB3aWR0aDogMzQuNiU7XG4gICAgICAgIHotaW5kZXg6IDE7XG4gICAgfVxuICAgIC5jLWJhbm5lci1wYWdlX19jb250ZW50IHtcbiAgICAgICAgb3JkZXI6IDE7XG4gICAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICAgICAgcGFkZGluZzogMS4yNXJlbSAxLjI1cmVtIHZhcigtLXNlY3Rpb24tdmVydGljYWwtbWFyZ2luKTtcbiAgICAgICAgYWxpZ24tc2VsZjogYXV0bztcbiAgICB9XG4gICAgXG4gICAgLmMtYmFubmVyLXBhZ2VfX2NsaXAtLWRlc2t0b3Age1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgICAuYy1iYW5uZXItcGFnZV9fY2xpcC0tbW9iaWxlIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgfVxuICAgIC5jLWJhbm5lci1wYWdlX19pbWFnZSB7XG4gICAgICAgIGNsaXAtcGF0aDogdXJsKCNjLWJhbm5lci1wYWdlX19jbGlwLS1tb2JpbGUpO1xuICAgIH1cbn0iLCIuYy1pbnRyby1ibG9jayB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1heC13aWR0aDogY2FsYygjeyRjb250YWluZXItd2lkdGh9IC8gMTIgKiA4KTtcbiAgICBtYXJnaW46IDAgYXV0bztcbiAgICBwYWRkaW5nOiA1cmVtIDAgM3JlbTtcbn1cbi5jLWludHJvLWJsb2NrLS1hbGlnbi1sZWZ0IHtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xufVxuLmMtaW50cm8tYmxvY2tfX2ljb24ge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB3aWR0aDogNHJlbTtcbn1cbi5jLWludHJvLWJsb2NrX19idG4ge1xuICAgIG1hcmdpbi10b3A6IDJyZW07XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogYnJlYWtwb2ludC1nZXQoJ21heCcsIG1kKSkge1xuICAgIC5jLWludHJvLWJsb2NrIHtcbiAgICAgICAgcGFkZGluZzogM3JlbSAwO1xuICAgIH1cbn0iLCJAaW1wb3J0IFwiLi4vYmFzZVwiO1xuQGltcG9ydCBcIi4uL2NvbXBvbmVudHMvYmFubmVyLXBhZ2VcIjtcbkBpbXBvcnQgXCIuLi9jb21wb25lbnRzL2ludHJvLWJsb2NrXCI7XG5cbi5jLWdyb3VwZWQtbGlzdGluZ3Mge1xuICAgIG1hcmdpbi1ib3R0b206IDVyZW07XG59XG4uYy1ncm91cGVkLWxpc3Rpbmcge1xuICAgIG1hcmdpbi10b3A6IDNyZW07XG4gICAgc2Nyb2xsLW1hcmdpbi10b3A6IDFyZW07XG5cbiAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICB9XG59XG4uYy1ncm91cGVkLWxpc3RpbmdfX3RpdGxlIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG5cbiAgICAmOjphZnRlciB7XG4gICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICB3aWR0aDogNGVtO1xuICAgICAgICBoZWlnaHQ6IDNweDtcbiAgICAgICAgbWFyZ2luLXRvcDogMC4yNWVtO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBjb2xvci1nZXQob3JhbmdlKTtcbiAgICB9XG59XG4uYy1ncm91cGVkLWxpc3RpbmdfX2xpc3Qge1xuICAgIGNvbHVtbnM6IDI7XG4gICAgbWFyZ2luLXRvcDogMnJlbTtcbn1cbi5jLWdyb3VwZWQtbGlzdGluZ19fbGlzdF9faXRlbSB7XG4gICAgbWFyZ2luOiAwO1xuICAgIGxpbmUtaGVpZ2h0OiAyO1xufVxuLmMtZ3JvdXBlZC1saXN0aW5nX19saXN0X19saW5rIHtcbiAgICBmb250LXdlaWdodDogd2VpZ2h0LWdldChzZW1pYm9sZCk7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIGNvbG9yOiBjb2xvci1nZXQocHJpbWFyeSk7XG5cbiAgICAmOmhvdmVyLFxuICAgICY6Zm9jdXMge1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICAgICAgY29sb3I6IGNvbG9yLWdldChwcmltYXJ5KTtcbiAgICB9XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogYnJlYWtwb2ludC1nZXQoJ21heCcsIG1kKSkge1xuXG4gICAgLmMtZ3JvdXBlZC1saXN0aW5ncyB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDNyZW07XG4gICAgfVxuICAgIC5jLWdyb3VwZWQtbGlzdGluZ19fbGlzdCB7XG4gICAgICAgIGNvbHVtbnM6IDE7XG4gICAgICAgIG1hcmdpbi10b3A6IDJyZW07XG4gICAgfVxufSJdfQ== */
