/* ----------
 @ Bourbon
---------- */
/* ----------
 @ Bootstrap Variables
---------- */
/* ----------
 @ Custom Variables
---------- */
/* --------------------
 @@ Project Specific Variables
-------------------- */
/* ----------
 @ Options
---------- */
/* ----------
 @ Colors
---------- */
/* ----------
 @ Typography
---------- */
/* ----------
 @ Layout
---------- */
/* ----------
 @ Misc
---------- */
/* ----------
 @ Custom Utilities
---------- */
/* ----------
 @ Rounded Corners
---------- */
/* --------------------
 @@ 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 {
  position: relative;
  height: 35rem;
  border-radius: 0 4rem 0 4rem;
  overflow: hidden;
  z-index: 0;
}

.c-banner-page__bg {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  margin: 0;
  -o-object-fit: cover;
     object-fit: cover;
  z-index: -1;
}

.c-banner-page__bg--low-res {
  -webkit-filter: blur(2px);
          filter: blur(2px);
}

.c-banner-page__title {
  position: absolute;
  left: 0;
  bottom: 0;
  width: 100%;
  padding: 1rem;
  font-size: 2.55556rem;
  text-align: center;
  color: #fff;
  background-color: rgba(60, 55, 120, 0.9);
}

@media only screen and (max-width: 768px) {
  .c-banner-page {
    height: auto;
    border-radius: 0 2rem 0 2rem;
  }
  .c-banner-page::before {
    content: '';
    display: inline-block;
    padding-bottom: 75%;
  }
  .c-banner-page__title {
    font-size: 1.33333rem;
  }
}

.c-big-accordions {
  border-bottom: 2px solid #d4d4d4;
}

.c-big-accordion {
  margin: 0;
  scroll-margin-top: 2rem;
}

.c-block-accordion__title {
  padding-left: calc(1440px / 12);
}

.c-big-accordion__title {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  padding: 1rem calc(1440px / 12);
  font-size: 1.55556rem;
  border-top: 2px solid #d4d4d4;
  border-radius: 0 0 0 3rem;
  background-color: #fff;
  cursor: pointer;
  -webkit-transition: background 100ms ease-out;
  transition: background 100ms ease-out;
}

.c-big-accordion__title::after {
  content: '\f078';
  position: absolute;
  top: 50%;
  right: calc(1440px / 12);
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  font-family: 'Font Awesome 5 Pro';
  font-size: 1.5rem;
  font-weight: 600;
  line-height: 1;
  color: #dc5936;
  -webkit-transition: -webkit-transform 250ms ease-out;
  transition: -webkit-transform 250ms ease-out;
  transition: transform 250ms ease-out;
  transition: transform 250ms ease-out, -webkit-transform 250ms ease-out;
}

.has-open-accordion .c-big-accordion__title {
  color: #fff;
  background-color: #3c3778;
  -webkit-transition: background 250ms ease-out;
  transition: background 250ms ease-out;
}

.has-open-accordion .c-big-accordion__title::after {
  color: #fff;
  -webkit-transform: translateY(-50%) rotate(180deg);
          transform: translateY(-50%) rotate(180deg);
}

.c-big-accordion__title svg,
.c-big-accordion__icon {
  width: 3rem;
  height: 3rem;
  margin-right: 3rem;
  fill: #dc5936;
  -webkit-transition: fill 100ms ease-out;
  transition: fill 100ms ease-out;
}

.has-open-accordion .c-big-accordion__title svg,
.has-open-accordion .c-big-accordion__icon {
  fill: #fff;
  border-color: #fff;
  -webkit-transition: fill 250ms ease-out;
  transition: fill 250ms ease-out;
}

.c-big-accordion__icon--program {
  margin-right: 4rem;
  -webkit-transition: border 250ms ease-out;
  transition: border 250ms ease-out;
}

.c-big-accordion__content {
  height: 0;
  margin-top: 0;
  overflow: hidden;
}

.c-big-accordion__content-inner {
  padding: 2rem calc(1440px / 12) 4rem;
}

@media only screen and (max-width: 991px) {
  .c-big-accordions {
    margin-left: -1rem;
    margin-right: -1rem;
  }
  .c-big-accordion__title {
    border-radius: 0 0 0 2rem;
  }
  .c-big-accordion__title svg,
  .c-big-accordion__icon {
    margin-right: 2rem;
  }
}

@media only screen and (max-width: 768px) {
  .c-big-accordion__title {
    position: relative;
    padding: 1rem 4rem 1rem 2rem;
  }
  .c-big-accordion__title::after {
    right: 2rem;
  }
  .c-big-accordion__content-inner {
    padding: 2rem 2rem;
  }
}

.c-simple-post + .c-simple-post {
  margin-top: 3rem;
}

.c-simple-post__title {
  font-size: 1.33333rem;
  font-weight: 600;
  color: #006b86;
}

.c-simple-post__title + .c-simple-post__blurb {
  margin-top: 0.75rem;
}

.c-simple-post__btn {
  margin-top: 2rem;
}

.c-workshops-intro-block {
  margin-top: 6rem;
}

.c-workshops-categories {
  margin-top: 6rem;
}

@media only screen and (max-width: 768px) {
  .c-workshops-intro-block {
    margin-top: 3rem;
  }
  .c-workshops-categories {
    margin-top: 3rem;
  }
}

/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIl91dGlsaXRpZXMuc2NzcyIsImFyY2hpdmUtd29ya3Nob3BzLmNzcyIsIl9jdXN0b20tdXRpbGl0aWVzLnNjc3MiLCJfdmFyaWFibGVzLnNjc3MiLCJfbWl4aW5zLnNjc3MiLCIuLi8uLi8uLi9iYXNlLXRoZW1lL2Fzc2V0cy9zY3NzL3V0aWxpdGllcy9fbWl4aW5zLnNjc3MiLCJjb21wb25lbnRzL19iYW5uZXItcGFnZS5zY3NzIiwiY29tcG9uZW50cy9fYmlnLWFjY29yZGlvbi5zY3NzIiwiY29tcG9uZW50cy9fc2ltcGxlLXBvc3Quc2NzcyIsImFyY2hpdmUtd29ya3Nob3BzLnNjc3MiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7O1lDRVk7QURJWjs7WUNEWTtBQ0xaOztZRFFZO0FFUlo7O3NCRldzQjtBRVB0Qjs7WUZVWTtBRUpaOztZRk9ZO0FFa0NaOztZRi9CWTtBRThFWjs7WUYzRVk7QUUrRlo7O1lGNUZZO0FDcEJaOztZRHVCWTtBRzdCWjs7WUhnQ1k7QUloQ1o7O3NCSm1Dc0I7QUkvQnRCOzs7Ozs7WUpzQ1k7QUlmWjs7Ozs7WUpxQlk7QUlWWjs7Ozs7O1lKaUJZO0FJTFo7O3NCSlFzQjtBSUp0Qjs7O1lKUVk7QUlFWjs7OztZSkdZO0FJWVo7Ozs7O1lKTlk7QUlpQlo7OztZSmJZO0FJeUJaOzs7WUpyQlk7QUtqRlo7RUFDSSxrQkFBa0I7RUFDbEIsYUFBYTtFRkdiLDRCRUY2QjtFQUM3QixnQkFBZ0I7RUFDaEIsVUFBVTtBTG1GZDs7QUtqRkE7RUFDSSxrQkFBa0I7RUFDbEIsTUFBTTtFQUNOLE9BQU87RUFDUCxXQUFXO0VBQ1gsWUFBWTtFQUNaLFNBQVM7RUFDVCxvQkFBaUI7S0FBakIsaUJBQWlCO0VBQ2pCLFdBQVc7QUxvRmY7O0FLbEZBO0VBQ0kseUJBQWlCO1VBQWpCLGlCQUFpQjtBTHFGckI7O0FLbkZBO0VBQ0ksa0JBQWtCO0VBQ2xCLE9BQU87RUFDUCxTQUFTO0VBQ1QsV0FBVztFQUNYLGFBQWE7RUFDYixxQkQ2RGdEO0VDNURoRCxrQkFBa0I7RUFDbEIsV0FBVztFQUNYLHdDSFoyQjtBRmtHL0I7O0FLbkZBO0VBQ0k7SUFDSSxZQUFZO0lGN0JoQiw0QkU4QmlDO0VMc0ZuQztFS3hGRTtJQUtRLFdBQVc7SUFDWCxxQkFBcUI7SUFDckIsbUJBQW1CO0VMc0Y3QjtFS25GRTtJQUNJLHFCRDJDNEM7RUowQ2xEO0FBQ0Y7O0FNbElBO0VBQ0ksZ0NKa0IyQjtBRm1IL0I7O0FNbklBO0VBQ0ksU0FBUztFQUNULHVCQUF1QjtBTnNJM0I7O0FNcElBO0VBQ0ksK0JBQTRDO0FOdUloRDs7QU1ySUE7RUFDSSxrQkFBa0I7RUFDbEIsb0JBQWE7RUFBYixvQkFBYTtFQUFiLGFBQWE7RUFDYix5QkFBbUI7TUFBbkIsc0JBQW1CO1VBQW5CLG1CQUFtQjtFQUNuQiwrQkFBNEM7RUFDNUMscUJGd0VnRDtFRXZFaEQsNkJKRzJCO0VJRjNCLHlCQUF5QjtFQUN6QixzQkFBc0I7RUFDdEIsZUFBZTtFQUNmLDZDQUFxQztFQUFyQyxxQ0FBcUM7QU53SXpDOztBTWxKQTtFQWFRLGdCQUFnQjtFQUNoQixrQkFBa0I7RUFDbEIsUUFBUTtFQUNSLHdCQUFxQztFQUNyQyxtQ0FBMkI7VUFBM0IsMkJBQTJCO0VBQzNCLGlDQUFpQztFQUNqQyxpQkFBaUI7RUFDakIsZ0JBQWdCO0VBQ2hCLGNBQWM7RUFDZCxjSmR1QjtFSWV2QixvREFBb0M7RUFBcEMsNENBQW9DO0VBQXBDLG9DQUFvQztFQUFwQyxzRUFBb0M7QU55STVDOztBTXRJQTtFQUNJLFdBQVc7RUFDWCx5QkpyQjJCO0VJc0IzQiw2Q0FBcUM7RUFBckMscUNBQXFDO0FOeUl6Qzs7QU01SUE7RUFNUSxXQUFXO0VBQ1gsa0RBQTBDO1VBQTFDLDBDQUEwQztBTjBJbEQ7O0FNdklBOztFQUVJLFdBQVc7RUFDWCxZQUFZO0VBQ1osa0JBQWtCO0VBQ2xCLGFKakMyQjtFSWtDM0IsdUNBQStCO0VBQS9CLCtCQUErQjtBTjBJbkM7O0FNeElBOztFQUVJLFVBQVU7RUFDVixrQkFBa0I7RUFDbEIsdUNBQStCO0VBQS9CLCtCQUErQjtBTjJJbkM7O0FNeklBO0VBQ0ksa0JBQWtCO0VBQ2xCLHlDQUFpQztFQUFqQyxpQ0FBaUM7QU40SXJDOztBTTFJQTtFQUNJLFNBQVM7RUFDVCxhQUFhO0VBQ2IsZ0JBQWdCO0FONklwQjs7QU0zSUE7RUFDSSxvQ0FBaUQ7QU44SXJEOztBTTNJQTtFQUNJO0lBQ0ksa0JKNEJnQztJSTNCaEMsbUJKMkJnQztFRm1IdEM7RU01SUU7SUFDSSx5QkFBeUI7RU44SS9CO0VNNUlFOztJQUVJLGtCQUFrQjtFTjhJeEI7QUFDRjs7QU0zSUE7RUFDSTtJQUNJLGtCQUFrQjtJQUNsQiw0QkFBNEI7RU44SWxDO0VNaEpFO0lBS1EsV0FBVztFTjhJckI7RU0zSUU7SUFDSSxrQkFBa0I7RU42SXhCO0FBQ0Y7O0FPL09BO0VBQ0ksZ0JBQWdCO0FQa1BwQjs7QU9oUEE7RUFDSSxxQkhtRmdEO0VHbEZoRCxnQkw0RWE7RUszRWIsY0xPMkI7QUY0Ty9COztBT2pQQTtFQUNJLG1CQUFtQjtBUG9QdkI7O0FPbFBBO0VBQ0ksZ0JBQWdCO0FQcVBwQjs7QVE1UEE7RUFDSSxnQkFBZ0I7QVIrUHBCOztBUTdQQTtFQUNJLGdCQUFnQjtBUmdRcEI7O0FRN1BBO0VBQ0k7SUFDSSxnQkFBZ0I7RVJnUXRCO0VROVBFO0lBQ0ksZ0JBQWdCO0VSZ1F0QjtBQUNGIiwiZmlsZSI6ImFyY2hpdmUtd29ya3Nob3BzLmNzcyIsInNvdXJjZXNDb250ZW50IjpbIi8qIC0tLS0tLS0tLS1cbiBAIEJvdXJib25cbi0tLS0tLS0tLS0gKi9cblxuQGltcG9ydCBcImJvdXJib24vY29yZS9fYm91cmJvbi5zY3NzXCI7XG5cbi8qIC0tLS0tLS0tLS1cbiBAIEJvb3RzdHJhcCBWYXJpYWJsZXNcbi0tLS0tLS0tLS0gKi9cblxuQGltcG9ydCBcImJvb3RzdHJhcC9zY3NzL2Z1bmN0aW9uc1wiO1xuQGltcG9ydCBcImJvb3RzdHJhcC9zY3NzL3ZhcmlhYmxlc1wiO1xuQGltcG9ydCBcImJvb3RzdHJhcC9zY3NzL21peGluc1wiOyIsIi8qIC0tLS0tLS0tLS1cbiBAIEJvdXJib25cbi0tLS0tLS0tLS0gKi9cbi8qIC0tLS0tLS0tLS1cbiBAIEJvb3RzdHJhcCBWYXJpYWJsZXNcbi0tLS0tLS0tLS0gKi9cbi8qIC0tLS0tLS0tLS1cbiBAIEN1c3RvbSBWYXJpYWJsZXNcbi0tLS0tLS0tLS0gKi9cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gQEAgUHJvamVjdCBTcGVjaWZpYyBWYXJpYWJsZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4vKiAtLS0tLS0tLS0tXG4gQCBPcHRpb25zXG4tLS0tLS0tLS0tICovXG4vKiAtLS0tLS0tLS0tXG4gQCBDb2xvcnNcbi0tLS0tLS0tLS0gKi9cbi8qIC0tLS0tLS0tLS1cbiBAIFR5cG9ncmFwaHlcbi0tLS0tLS0tLS0gKi9cbi8qIC0tLS0tLS0tLS1cbiBAIExheW91dFxuLS0tLS0tLS0tLSAqL1xuLyogLS0tLS0tLS0tLVxuIEAgTWlzY1xuLS0tLS0tLS0tLSAqL1xuLyogLS0tLS0tLS0tLVxuIEAgQ3VzdG9tIFV0aWxpdGllc1xuLS0tLS0tLS0tLSAqL1xuLyogLS0tLS0tLS0tLVxuIEAgUm91bmRlZCBDb3JuZXJzXG4tLS0tLS0tLS0tICovXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLVxuIEBAIE1peGluc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi8qIC0tLS0tLS0tLS1cbiBAIE1haW50YWluIEFzcGVjdCBSYXRpb1xuXHQtICoqKiByZXF1aXJlcyB0aGF0IHRoZSBlbGVtZW50IGhhcyBhbiBpbm5lciBjb250YWluZXIgZWxlbWVudCBpZiB0aGVyZSBpcyBpbm5lciBjb250ZW50XG5cdC0gJHggPT4geCBwb3J0aW9uIG9mIHJhdGlvXG5cdC0gJHkgPT4geSBwb3J0aW9uIG9mIHJhdGlvXG4gICAgLSAkYyA9PiBzZXQgdG8gJ2ZhbHNlJyB0byBza2lwIDpmaXJzdC1jaGlsZCBzdHlsaW5nXG4tLS0tLS0tLS0tICovXG4vKiAtLS0tLS0tLS0tXG4gQCBCYWNrZ3JvdW5kIEltYWdlXG5cdC0gU2hvcnRjdXQgZm9yIGxpbmtpbmcgaW1hZ2VzIGluIHRoZSBjb25maWd1cmVkIGltYWdlcyBmb2xkZXJcblx0LSAkaSA9PiBpbWFnZSBmaWxlIG5hbWUgKHJlbGF0aXZlIHRvIGltYWdlcyBmb2xkZXIpXG5cdC0gJHJlc3QgPT4gYW55IGFkZGl0aW9uYWwgJ2JhY2tncm91bmQnIHByb3BlcnR5IHNob3J0Y3V0IGRlY2xhcmF0aW9ucyAoaWU6IG5vLXJlcGVhdClcbi0tLS0tLS0tLS0gKi9cbi8qIC0tLS0tLS0tLS1cbiBAIFNpemVcbiBcdC0gU2hvcnRjdXQgZm9yIHNldHRpbmcgaGVpZ2h0IGFuZCB3aWR0aFxuIFx0LSAkd2lkdGggPT4gd2lkdGggb2YgZWxlbWVudFxuIFx0LSAkaGVpZ2h0ID0+IGhlaWdodCBvZiBlbGVtZW50XG4gXHQtIFNpbmdsZSB2YWx1ZSB3aWxsIHNldCBib3RoIHZhbHVlcyAoZS5nLiBzaXplKDEwMCUpO1xuLS0tLS0tLS0tLSAqL1xuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiBAQCBGdW5jdGlvbnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4vKiAtLS0tLS0tLS0tXG4gQCBDb2xvciBHZXRcbiBcdC0gZ2V0IHZhbHVlIGZyb20gdGhlICR0aGVtZS1jb2xvcnMgbWFwXG4tLS0tLS0tLS0tICovXG4vKiAtLS0tLS0tLS0tXG4gQCBCcmVha3BvaW50IEdldFxuIFx0LSBnZXQgdmFsdWUgZnJvbSB0aGUgJGdyaWQtYnJlYWtwb2ludHMgbWFwXG4gXHQtICR0eXBlID0+ICdtYXgnIHwgJ21pbicsIGRlcGVuZGluZyBvbiBtZWRpYSBxdWVyeSB0eXBlXG4tLS0tLS0tLS0tICovXG4vKiAtLS0tLS0tLS0tXG4gQCBSZW1zXG5cdC0gY29udmVydCBwaXhlbHMgdG8gcmVtc1xuXHQtICRwID0+IHBpeGVsIHZhbHVlXG5cdC0gJGIgPT4gYmFzZSBzaXplICh0byB1c2UgaW4gZm9ybXVsYSkgLSBkZWZhdWx0cyB0byAkZm9udC1zaXplcyByb290IHZhcmlhYmxlXG4tLS0tLS0tLS0tICovXG4vKiAtLS0tLS0tLS0tXG4gQCBNYXAgRGVlcCBHZXRcbiBcdC0gZ2V0IHZhbHVlIGZyb20gbmVzdGVkIG1hcHNcbi0tLS0tLS0tLS0gKi9cbi8qIC0tLS0tLS0tLS1cbiBAIFdlaWdodCBHZXRcbiBcdC0gZ2V0IHZhbHVlIGZyb20gdGhlICRmb250LXdlaWdodHMgbWFwXG4tLS0tLS0tLS0tICovXG4uYy1iYW5uZXItcGFnZSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgaGVpZ2h0OiAzNXJlbTtcbiAgYm9yZGVyLXJhZGl1czogMCA0cmVtIDAgNHJlbTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgei1pbmRleDogMDtcbn1cblxuLmMtYmFubmVyLXBhZ2VfX2JnIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIG1hcmdpbjogMDtcbiAgb2JqZWN0LWZpdDogY292ZXI7XG4gIHotaW5kZXg6IC0xO1xufVxuXG4uYy1iYW5uZXItcGFnZV9fYmctLWxvdy1yZXMge1xuICBmaWx0ZXI6IGJsdXIoMnB4KTtcbn1cblxuLmMtYmFubmVyLXBhZ2VfX3RpdGxlIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiAwO1xuICBib3R0b206IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBwYWRkaW5nOiAxcmVtO1xuICBmb250LXNpemU6IDIuNTU1NTZyZW07XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoNjAsIDU1LCAxMjAsIDAuOSk7XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzY4cHgpIHtcbiAgLmMtYmFubmVyLXBhZ2Uge1xuICAgIGhlaWdodDogYXV0bztcbiAgICBib3JkZXItcmFkaXVzOiAwIDJyZW0gMCAycmVtO1xuICB9XG4gIC5jLWJhbm5lci1wYWdlOjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBwYWRkaW5nLWJvdHRvbTogNzUlO1xuICB9XG4gIC5jLWJhbm5lci1wYWdlX190aXRsZSB7XG4gICAgZm9udC1zaXplOiAxLjMzMzMzcmVtO1xuICB9XG59XG5cbi5jLWJpZy1hY2NvcmRpb25zIHtcbiAgYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkICNkNGQ0ZDQ7XG59XG5cbi5jLWJpZy1hY2NvcmRpb24ge1xuICBtYXJnaW46IDA7XG4gIHNjcm9sbC1tYXJnaW4tdG9wOiAycmVtO1xufVxuXG4uYy1ibG9jay1hY2NvcmRpb25fX3RpdGxlIHtcbiAgcGFkZGluZy1sZWZ0OiBjYWxjKDE0NDBweCAvIDEyKTtcbn1cblxuLmMtYmlnLWFjY29yZGlvbl9fdGl0bGUge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIHBhZGRpbmc6IDFyZW0gY2FsYygxNDQwcHggLyAxMik7XG4gIGZvbnQtc2l6ZTogMS41NTU1NnJlbTtcbiAgYm9yZGVyLXRvcDogMnB4IHNvbGlkICNkNGQ0ZDQ7XG4gIGJvcmRlci1yYWRpdXM6IDAgMCAwIDNyZW07XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgdHJhbnNpdGlvbjogYmFja2dyb3VuZCAxMDBtcyBlYXNlLW91dDtcbn1cblxuLmMtYmlnLWFjY29yZGlvbl9fdGl0bGU6OmFmdGVyIHtcbiAgY29udGVudDogJ1xcZjA3OCc7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiA1MCU7XG4gIHJpZ2h0OiBjYWxjKDE0NDBweCAvIDEyKTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICBmb250LWZhbWlseTogJ0ZvbnQgQXdlc29tZSA1IFBybyc7XG4gIGZvbnQtc2l6ZTogMS41cmVtO1xuICBmb250LXdlaWdodDogNjAwO1xuICBsaW5lLWhlaWdodDogMTtcbiAgY29sb3I6ICNkYzU5MzY7XG4gIHRyYW5zaXRpb246IHRyYW5zZm9ybSAyNTBtcyBlYXNlLW91dDtcbn1cblxuLmhhcy1vcGVuLWFjY29yZGlvbiAuYy1iaWctYWNjb3JkaW9uX190aXRsZSB7XG4gIGNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjM2MzNzc4O1xuICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kIDI1MG1zIGVhc2Utb3V0O1xufVxuXG4uaGFzLW9wZW4tYWNjb3JkaW9uIC5jLWJpZy1hY2NvcmRpb25fX3RpdGxlOjphZnRlciB7XG4gIGNvbG9yOiAjZmZmO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSkgcm90YXRlKDE4MGRlZyk7XG59XG5cbi5jLWJpZy1hY2NvcmRpb25fX3RpdGxlIHN2Zyxcbi5jLWJpZy1hY2NvcmRpb25fX2ljb24ge1xuICB3aWR0aDogM3JlbTtcbiAgaGVpZ2h0OiAzcmVtO1xuICBtYXJnaW4tcmlnaHQ6IDNyZW07XG4gIGZpbGw6ICNkYzU5MzY7XG4gIHRyYW5zaXRpb246IGZpbGwgMTAwbXMgZWFzZS1vdXQ7XG59XG5cbi5oYXMtb3Blbi1hY2NvcmRpb24gLmMtYmlnLWFjY29yZGlvbl9fdGl0bGUgc3ZnLFxuLmhhcy1vcGVuLWFjY29yZGlvbiAuYy1iaWctYWNjb3JkaW9uX19pY29uIHtcbiAgZmlsbDogI2ZmZjtcbiAgYm9yZGVyLWNvbG9yOiAjZmZmO1xuICB0cmFuc2l0aW9uOiBmaWxsIDI1MG1zIGVhc2Utb3V0O1xufVxuXG4uYy1iaWctYWNjb3JkaW9uX19pY29uLS1wcm9ncmFtIHtcbiAgbWFyZ2luLXJpZ2h0OiA0cmVtO1xuICB0cmFuc2l0aW9uOiBib3JkZXIgMjUwbXMgZWFzZS1vdXQ7XG59XG5cbi5jLWJpZy1hY2NvcmRpb25fX2NvbnRlbnQge1xuICBoZWlnaHQ6IDA7XG4gIG1hcmdpbi10b3A6IDA7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG5cbi5jLWJpZy1hY2NvcmRpb25fX2NvbnRlbnQtaW5uZXIge1xuICBwYWRkaW5nOiAycmVtIGNhbGMoMTQ0MHB4IC8gMTIpIDRyZW07XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogOTkxcHgpIHtcbiAgLmMtYmlnLWFjY29yZGlvbnMge1xuICAgIG1hcmdpbi1sZWZ0OiAtMXJlbTtcbiAgICBtYXJnaW4tcmlnaHQ6IC0xcmVtO1xuICB9XG4gIC5jLWJpZy1hY2NvcmRpb25fX3RpdGxlIHtcbiAgICBib3JkZXItcmFkaXVzOiAwIDAgMCAycmVtO1xuICB9XG4gIC5jLWJpZy1hY2NvcmRpb25fX3RpdGxlIHN2ZyxcbiAgLmMtYmlnLWFjY29yZGlvbl9faWNvbiB7XG4gICAgbWFyZ2luLXJpZ2h0OiAycmVtO1xuICB9XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzY4cHgpIHtcbiAgLmMtYmlnLWFjY29yZGlvbl9fdGl0bGUge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBwYWRkaW5nOiAxcmVtIDRyZW0gMXJlbSAycmVtO1xuICB9XG4gIC5jLWJpZy1hY2NvcmRpb25fX3RpdGxlOjphZnRlciB7XG4gICAgcmlnaHQ6IDJyZW07XG4gIH1cbiAgLmMtYmlnLWFjY29yZGlvbl9fY29udGVudC1pbm5lciB7XG4gICAgcGFkZGluZzogMnJlbSAycmVtO1xuICB9XG59XG5cbi5jLXNpbXBsZS1wb3N0ICsgLmMtc2ltcGxlLXBvc3Qge1xuICBtYXJnaW4tdG9wOiAzcmVtO1xufVxuXG4uYy1zaW1wbGUtcG9zdF9fdGl0bGUge1xuICBmb250LXNpemU6IDEuMzMzMzNyZW07XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIGNvbG9yOiAjMDA2Yjg2O1xufVxuXG4uYy1zaW1wbGUtcG9zdF9fdGl0bGUgKyAuYy1zaW1wbGUtcG9zdF9fYmx1cmIge1xuICBtYXJnaW4tdG9wOiAwLjc1cmVtO1xufVxuXG4uYy1zaW1wbGUtcG9zdF9fYnRuIHtcbiAgbWFyZ2luLXRvcDogMnJlbTtcbn1cblxuLmMtd29ya3Nob3BzLWludHJvLWJsb2NrIHtcbiAgbWFyZ2luLXRvcDogNnJlbTtcbn1cblxuLmMtd29ya3Nob3BzLWNhdGVnb3JpZXMge1xuICBtYXJnaW4tdG9wOiA2cmVtO1xufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc2OHB4KSB7XG4gIC5jLXdvcmtzaG9wcy1pbnRyby1ibG9jayB7XG4gICAgbWFyZ2luLXRvcDogM3JlbTtcbiAgfVxuICAuYy13b3Jrc2hvcHMtY2F0ZWdvcmllcyB7XG4gICAgbWFyZ2luLXRvcDogM3JlbTtcbiAgfVxufVxuIiwiLyogLS0tLS0tLS0tLVxuIEAgQ3VzdG9tIFZhcmlhYmxlc1xuLS0tLS0tLS0tLSAqL1xuXG5AaW1wb3J0IFwiY2hpbGQtdGhlbWUvYXNzZXRzL3Njc3MvdmFyaWFibGVzXCI7XG5cbi8qIC0tLS0tLS0tLS1cbiBAIEN1c3RvbSBVdGlsaXRpZXNcbi0tLS0tLS0tLS0gKi9cblxuQGltcG9ydCBcImNoaWxkLXRoZW1lL2Fzc2V0cy9zY3NzL21peGluc1wiO1xuXG5AaW1wb3J0IFwiYmFzZS10aGVtZS9hc3NldHMvc2Nzcy91dGlsaXRpZXMvbWl4aW5zXCI7XG5AaW1wb3J0IFwiYmFzZS10aGVtZS9hc3NldHMvc2Nzcy91dGlsaXRpZXMvcmVzZXRcIjtcbkBpbXBvcnQgXCJiYXNlLXRoZW1lL2Fzc2V0cy9zY3NzL3V0aWxpdGllcy9iYXNlXCI7XG5AaW1wb3J0IFwiYmFzZS10aGVtZS9hc3NldHMvc2Nzcy91dGlsaXRpZXMvd3AtYmFzZVwiOyIsIi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gQEAgUHJvamVjdCBTcGVjaWZpYyBWYXJpYWJsZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5cbi8qIC0tLS0tLS0tLS1cbiBAIE9wdGlvbnNcbi0tLS0tLS0tLS0gKi9cblxuJGVuYWJsZS1yZXNwb25zaXZlLXRleHQ6XHR0cnVlO1xuXG4vKiAtLS0tLS0tLS0tXG4gQCBDb2xvcnNcbi0tLS0tLS0tLS0gKi9cbiRicmFuZC1kYXJrLXRlYWw6ICAgICAgICMwMDZiODY7XG4kYnJhbmQtdGVhbDogICAgICAgICAgICAjMDZhYmExO1xuJGJyYW5kLWxpZ2h0LWJsdWU6ICAgICAgI2U3ZjJmOTtcbiRicmFuZC1ibHVlOiAgICAgICAgICAgICMwMGFiZDY7XG4kYnJhbmQtZGFyay1ibHVlOiAgICAgICAjM2MzNzc4O1xuJGJyYW5kLW9yYW5nZTogICAgICAgICAgI2RjNTkzNjtcbiRicmFuZC1saWdodC1ncmV5OiAgICAgICNkNGQ0ZDQ7XG4kYnJhbmQtbGlnaHRlc3QtZ3JleTogICAjZWZlZmVmO1xuJGJyYW5kLXBpbms6ICAgICAgICAgICAgI2VkYWM5YTtcbiRicmFuZC1zaWx2ZXI6ICAgICAgICAgICM3NTc1NzU7XG4kYnJhbmQtY2hhcmNvYWw6ICAgICAgICAjMzAzMDMwO1xuXG4kdGhlbWUtY29sb3JzOiBtYXAtbWVyZ2UoJHRoZW1lLWNvbG9ycywgKFxuICAgIGRhcmstdGVhbDogJGJyYW5kLWRhcmstdGVhbCxcbiAgICB0ZWFsOiAkYnJhbmQtdGVhbCxcbiAgICBkYXJrLWJsdWU6ICRicmFuZC1kYXJrLWJsdWUsXG4gICAgYmx1ZTogJGJyYW5kLWJsdWUsXG4gICAgbGlnaHQtYmx1ZTogJGJyYW5kLWxpZ2h0LWJsdWUsXG4gICAgb3JhbmdlOiAkYnJhbmQtb3JhbmdlLFxuICAgIGxpZ2h0LWdyZXk6ICRicmFuZC1saWdodC1ncmV5LFxuICAgIGxpZ2h0ZXN0LWdyZXk6ICRicmFuZC1saWdodGVzdC1ncmV5LFxuICAgIHNpbHZlcjogJGJyYW5kLXNpbHZlcixcbiAgICBwaW5rOiAkYnJhbmQtcGluayxcbiAgICBjaGFyY29hbDogJGJyYW5kLWNoYXJjb2FsLFxuICAgIHN1Y2Nlc3M6ICRicmFuZC10ZWFsLFxuICAgIGluZm86ICRicmFuZC1ibHVlLFxuICAgIHdhcm5pbmc6ICRicmFuZC1vcmFuZ2UsXG4gICAgZGFuZ2VyOiAkYnJhbmQtb3JhbmdlXG4pKTtcblxuJGJvZHktYmc6ICAgICAgICAgICAgICAgI2ZmZjtcbiRib2R5LWNvbG9yOiAgICAgICAgICAgICMyYzJjMmM7XG5cbiRsaW5rLWNvbG9yOiAgICAgICAgICAgICRicmFuZC1kYXJrLXRlYWw7XG4kbGluay1ob3Zlci1jb2xvcjogICAgICBkYXJrZW4oJGxpbmstY29sb3IsIDE1JSk7XG5cbiRsaW5lLWNvbG9yOiBcdFx0XHQjZGRkO1xuXG4vKiAtLS0tLS0tLS0tXG4gQCBUeXBvZ3JhcGh5XG4tLS0tLS0tLS0tICovXG5cbiRmb250LXNpemVzOiAoXG4gICAgcm9vdDogMThweCxcbiAgICBoMTogMzZweCxcbiAgICBoMjogMzNweCxcbiAgICBoMzogMjhweCxcbiAgICBoNDogMjRweCxcbiAgICBoNTogMjBweCxcbiAgICBoNjogMThweCxcbiAgICBsZWFkOiAyNHB4LFxuICAgIGJsb2NrcXVvdGU6IDUwcHhcbik7XG5cbiRmb250LXNpemUtYmFzZTogMXJlbTtcbiRiYXNlRm9udFNpemU6IDE4cHg7IC8vIHRoaXMgaXMgdG8gZml4IGJvb3RzdHJhcCwgbm90IHN1cmUgd2h5IHRoaXMgaXMgYW4gaXNzdWVcblxuJGxlYWQtZm9udC1zaXplOiByZW1zKG1hcC1nZXQoJGZvbnQtc2l6ZXMsIGxlYWQpKTtcbiRibG9ja3F1b3RlLWZvbnQtc2l6ZTogcmVtcyhtYXAtZ2V0KCRmb250LXNpemVzLCBibG9ja3F1b3RlKSk7XG5cbiRmb250LWZhbWlseS1iYXNlOiAnaGFseWFyZC10ZXh0Jywgc2Fucy1zZXJpZjtcbiRmb250LWZhbWlseS1zYW5zLXNlcmlmOiAkZm9udC1mYW1pbHktYmFzZTtcbiRoZWFkaW5ncy1mb250LWZhbWlseTogJ2NsYXJlbmRvbi10ZXh0LXBybycsIHNlcmlmO1xuJGZhLWZvbnQtZmFtaWx5OiAnRm9udCBBd2Vzb21lIDUgUHJvJztcblxuJGZvbnQtd2VpZ2h0czogKFxuICAgIGJsYWNrOiA4MDAsXG4gICAgYm9sZDogNzAwLFxuICAgIHNlbWlib2xkOiA2MDAsXG4gICAgbWVkaXVtOiA1MDAsXG4gICAgcmVndWxhcjogNDAwLFxuICAgIGxpZ2h0OiAzMDAsXG4gICAgdGhpbjogMzAwXG4pO1xuXG4kZm9udC13ZWlnaHQtYmFzZTogbWFwLWdldCgkZm9udC13ZWlnaHRzLCByZWd1bGFyKTtcbiRoZWFkaW5ncy1mb250LXdlaWdodDogbWFwLWdldCgkZm9udC13ZWlnaHRzLCBib2xkKTtcbiRsZWFkLWZvbnQtd2VpZ2h0OiBtYXAtZ2V0KCRmb250LXdlaWdodHMsIHNlbWktYm9sZCk7XG5cbiRsaW5lLWhlaWdodC1iYXNlOiAxLjY1O1xuJGhlYWRpbmdzLWxpbmUtaGVpZ2h0OiAxLjQ7XG5cbiRsaW5rLWRlY29yYXRpb246IHVuZGVybGluZTtcbiRsaW5rLWhvdmVyLWRlY29yYXRpb246ICRsaW5rLWRlY29yYXRpb247XG5cbi8qIC0tLS0tLS0tLS1cbiBAIExheW91dFxuLS0tLS0tLS0tLSAqL1xuXG4kZ3JpZC1ndXR0ZXItd2lkdGg6IFx0IDJyZW07XG4kZ3JpZC1wYWRkaW5nOlx0XHRcdCAkZ3JpZC1ndXR0ZXItd2lkdGggLyAyO1xuXG4kdmVydGljYWwtbWFyZ2luLWJhc2U6XHQgMS41cmVtO1xuXG4kZ3JpZC1icmVha3BvaW50czogKFxuICAgIHhzOiAwLCAvLyBOb3Qgc3VyZSB3aHkgYnV0IHRoaXMgbXVzdCBiZSB6ZXJvXG4gICAgc206IDU3NnB4LFxuICAgIG1kOiA3NjlweCxcbiAgICBsZzogOTkycHgsXG4gICAgeGw6IDE0NDBweFxuKTtcblxuJGNvbnRhaW5lci13aWR0aDogbWFwLWdldCgkZ3JpZC1icmVha3BvaW50cywgeGwpO1xuJGNvbnRhaW5lci13aWR0aC13aXRoLWd1dHRlcnM6IG1hcC1nZXQoJGdyaWQtYnJlYWtwb2ludHMsIHhsKSArIChzdHJpcC11bml0KCRncmlkLWd1dHRlci13aWR0aCkgKiBzdHJpcC11bml0KCRiYXNlRm9udFNpemUpKTtcblxuLyogLS0tLS0tLS0tLVxuIEAgTWlzY1xuLS0tLS0tLS0tLSAqL1xuXG4kaHItYm9yZGVyLWNvbG9yOiAkbGluZS1jb2xvcjtcbiRoci1ib3JkZXItd2lkdGg6IDFweDtcblxuJGJvcmRlci1yYWRpdXM6IDAuMjVlbTtcbiRib3JkZXItcmFkaXVzLWxnOiAkYm9yZGVyLXJhZGl1cyAqIDEuNTtcbiRib3JkZXItcmFkaXVzLXNtOiAkYm9yZGVyLXJhZGl1cyAvIDEuNTsiLCIvKiAtLS0tLS0tLS0tXG4gQCBSb3VuZGVkIENvcm5lcnNcbi0tLS0tLS0tLS0gKi9cblxuQG1peGluIHJvdW5kZWQtY29ybmVycygkcmFkaXVzOiAxcmVtKSB7XG4gICAgYm9yZGVyLXJhZGl1czogMCAkcmFkaXVzIDAgJHJhZGl1cztcbn0gICIsIi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gQEAgTWl4aW5zXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuXG4vKiAtLS0tLS0tLS0tXG4gQCBNYWludGFpbiBBc3BlY3QgUmF0aW9cblx0LSAqKiogcmVxdWlyZXMgdGhhdCB0aGUgZWxlbWVudCBoYXMgYW4gaW5uZXIgY29udGFpbmVyIGVsZW1lbnQgaWYgdGhlcmUgaXMgaW5uZXIgY29udGVudFxuXHQtICR4ID0+IHggcG9ydGlvbiBvZiByYXRpb1xuXHQtICR5ID0+IHkgcG9ydGlvbiBvZiByYXRpb1xuICAgIC0gJGMgPT4gc2V0IHRvICdmYWxzZScgdG8gc2tpcCA6Zmlyc3QtY2hpbGQgc3R5bGluZ1xuLS0tLS0tLS0tLSAqL1xuXG5AbWl4aW4gYXNwZWN0LXJhdGlvKCR4OiAxLCAkeTogMSwgJGM6IHRydWUpIHtcblx0cG9zaXRpb246IHJlbGF0aXZlO1xuXG5cdCY6YmVmb3JlIHtcblx0XHRjb250ZW50OiBcIlwiO1xuXHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdHBhZGRpbmctdG9wOiBwZXJjZW50YWdlKCR5IC8gJHgpO1xuXHR9XG5cdEBpZiAoJGMgPT0gdHJ1ZSkge1xuXHRcdCYgPiA6Zmlyc3QtY2hpbGQge1xuXHRcdFx0QGluY2x1ZGUgcG9zaXRpb24oYWJzb2x1dGUsIDAgMCAwIDApO1xuXHRcdH1cblx0fVxufVxuXG4vKiAtLS0tLS0tLS0tXG4gQCBCYWNrZ3JvdW5kIEltYWdlXG5cdC0gU2hvcnRjdXQgZm9yIGxpbmtpbmcgaW1hZ2VzIGluIHRoZSBjb25maWd1cmVkIGltYWdlcyBmb2xkZXJcblx0LSAkaSA9PiBpbWFnZSBmaWxlIG5hbWUgKHJlbGF0aXZlIHRvIGltYWdlcyBmb2xkZXIpXG5cdC0gJHJlc3QgPT4gYW55IGFkZGl0aW9uYWwgJ2JhY2tncm91bmQnIHByb3BlcnR5IHNob3J0Y3V0IGRlY2xhcmF0aW9ucyAoaWU6IG5vLXJlcGVhdClcbi0tLS0tLS0tLS0gKi9cblxuQG1peGluIGJnLWltYWdlKCRpLCAkcmVzdC4uLikge1xuXHRiYWNrZ3JvdW5kOiB1cmwoXCIjeyRpbWFnZXMtZm9sZGVyfS8jeyRpfVwiKSAkcmVzdDtcbn1cblxuLyogLS0tLS0tLS0tLVxuIEAgU2l6ZVxuIFx0LSBTaG9ydGN1dCBmb3Igc2V0dGluZyBoZWlnaHQgYW5kIHdpZHRoXG4gXHQtICR3aWR0aCA9PiB3aWR0aCBvZiBlbGVtZW50XG4gXHQtICRoZWlnaHQgPT4gaGVpZ2h0IG9mIGVsZW1lbnRcbiBcdC0gU2luZ2xlIHZhbHVlIHdpbGwgc2V0IGJvdGggdmFsdWVzIChlLmcuIHNpemUoMTAwJSk7XG4tLS0tLS0tLS0tICovXG5AbWl4aW4gc2l6ZSgkd2lkdGgsICRoZWlnaHQ6ICR3aWR0aCkge1xuXHR3aWR0aDogJHdpZHRoO1xuXHRoZWlnaHQ6ICRoZWlnaHQ7XG59XG5cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gQEAgRnVuY3Rpb25zXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuXG4vKiAtLS0tLS0tLS0tXG4gQCBDb2xvciBHZXRcbiBcdC0gZ2V0IHZhbHVlIGZyb20gdGhlICR0aGVtZS1jb2xvcnMgbWFwXG4tLS0tLS0tLS0tICovXG5cbkBmdW5jdGlvbiBjb2xvci1nZXQoJGtleXMpIHtcblx0JGNvbG9yOiBtYXAtZGVlcC1nZXQoJHRoZW1lLWNvbG9ycywgJGtleXMpO1xuXHRAcmV0dXJuICRjb2xvcjtcbn1cblxuLyogLS0tLS0tLS0tLVxuIEAgQnJlYWtwb2ludCBHZXRcbiBcdC0gZ2V0IHZhbHVlIGZyb20gdGhlICRncmlkLWJyZWFrcG9pbnRzIG1hcFxuIFx0LSAkdHlwZSA9PiAnbWF4JyB8ICdtaW4nLCBkZXBlbmRpbmcgb24gbWVkaWEgcXVlcnkgdHlwZVxuLS0tLS0tLS0tLSAqL1xuXG5AZnVuY3Rpb24gYnJlYWtwb2ludC1nZXQoJHR5cGUsICRrZXlzKSB7XG5cdCRicmVha3BvaW50OiBtYXAtZGVlcC1nZXQoJGdyaWQtYnJlYWtwb2ludHMsICRrZXlzKTtcblx0QGlmICgkdHlwZSA9PSAnbWF4Jyl7XG5cdFx0QHJldHVybiAkYnJlYWtwb2ludCAtIDE7XG5cdH0gQGVsc2Uge1xuXHRcdEByZXR1cm4gJGJyZWFrcG9pbnQ7XG5cdH1cbn1cblxuLyogLS0tLS0tLS0tLVxuIEAgUmVtc1xuXHQtIGNvbnZlcnQgcGl4ZWxzIHRvIHJlbXNcblx0LSAkcCA9PiBwaXhlbCB2YWx1ZVxuXHQtICRiID0+IGJhc2Ugc2l6ZSAodG8gdXNlIGluIGZvcm11bGEpIC0gZGVmYXVsdHMgdG8gJGZvbnQtc2l6ZXMgcm9vdCB2YXJpYWJsZVxuLS0tLS0tLS0tLSAqL1xuXG5AZnVuY3Rpb24gcmVtcygkcCwgJGI6ICRiYXNlRm9udFNpemUpIHtcbiAgICBAcmV0dXJuIChzdHJpcC11bml0KCRwKSAvIHN0cmlwLXVuaXQoJGIpKSArIDByZW07XG59XG5cbi8qIC0tLS0tLS0tLS1cbiBAIE1hcCBEZWVwIEdldFxuIFx0LSBnZXQgdmFsdWUgZnJvbSBuZXN0ZWQgbWFwc1xuLS0tLS0tLS0tLSAqL1xuXG5AZnVuY3Rpb24gbWFwLWRlZXAtZ2V0KCRtYXAsICRrZXlzLi4uKSB7XG5cdEBlYWNoICRrZXkgaW4gJGtleXMge1xuXHRcdCRtYXA6IG1hcC1nZXQoJG1hcCwgJGtleSk7XG5cdH1cblx0QHJldHVybiAkbWFwO1xufVxuXG4vKiAtLS0tLS0tLS0tXG4gQCBXZWlnaHQgR2V0XG4gXHQtIGdldCB2YWx1ZSBmcm9tIHRoZSAkZm9udC13ZWlnaHRzIG1hcFxuLS0tLS0tLS0tLSAqL1xuXG5AZnVuY3Rpb24gd2VpZ2h0LWdldCgka2V5cykge1xuXHQkd2VpZ2h0OiBtYXAtZGVlcC1nZXQoJGZvbnQtd2VpZ2h0cywgJGtleXMpO1xuXHRAcmV0dXJuICR3ZWlnaHQ7XG59IiwiLmMtYmFubmVyLXBhZ2Uge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBoZWlnaHQ6IDM1cmVtO1xuICAgIEBpbmNsdWRlIHJvdW5kZWQtY29ybmVycyg0cmVtKTtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHotaW5kZXg6IDA7XG59XG4uYy1iYW5uZXItcGFnZV9fYmcge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgbWFyZ2luOiAwO1xuICAgIG9iamVjdC1maXQ6IGNvdmVyO1xuICAgIHotaW5kZXg6IC0xO1xufVxuLmMtYmFubmVyLXBhZ2VfX2JnLS1sb3ctcmVzIHtcbiAgICBmaWx0ZXI6IGJsdXIoMnB4KTtcbn1cbi5jLWJhbm5lci1wYWdlX190aXRsZSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGxlZnQ6IDA7XG4gICAgYm90dG9tOiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHBhZGRpbmc6IDFyZW07XG4gICAgZm9udC1zaXplOiByZW1zKDQ2cHgpO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBjb2xvcjogI2ZmZjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKGNvbG9yLWdldChkYXJrLWJsdWUpLCAwLjkpO1xufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IGJyZWFrcG9pbnQtZ2V0KCdtYXgnLCBtZCkpIHtcbiAgICAuYy1iYW5uZXItcGFnZSB7XG4gICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgQGluY2x1ZGUgcm91bmRlZC1jb3JuZXJzKDJyZW0pO1xuXG4gICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiA3NSU7XG4gICAgICAgIH1cbiAgICB9XG4gICAgLmMtYmFubmVyLXBhZ2VfX3RpdGxlIHtcbiAgICAgICAgZm9udC1zaXplOiByZW1zKDI0cHgpO1xuICAgIH1cbn0iLCIuYy1iaWctYWNjb3JkaW9ucyB7XG4gICAgYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkIGNvbG9yLWdldChsaWdodC1ncmV5KTtcbn1cbi5jLWJpZy1hY2NvcmRpb24ge1xuICAgIG1hcmdpbjogMDtcbiAgICBzY3JvbGwtbWFyZ2luLXRvcDogMnJlbTtcbn1cbi5jLWJsb2NrLWFjY29yZGlvbl9fdGl0bGUge1xuICAgIHBhZGRpbmctbGVmdDogY2FsYygjeyRjb250YWluZXItd2lkdGh9IC8gMTIpO1xufVxuLmMtYmlnLWFjY29yZGlvbl9fdGl0bGUge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgcGFkZGluZzogMXJlbSBjYWxjKCN7JGNvbnRhaW5lci13aWR0aH0gLyAxMik7XG4gICAgZm9udC1zaXplOiByZW1zKDI4cHgpO1xuICAgIGJvcmRlci10b3A6IDJweCBzb2xpZCBjb2xvci1nZXQobGlnaHQtZ3JleSk7XG4gICAgYm9yZGVyLXJhZGl1czogMCAwIDAgM3JlbTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kIDEwMG1zIGVhc2Utb3V0O1xuXG4gICAgJjo6YWZ0ZXIge1xuICAgICAgICBjb250ZW50OiAnXFxmMDc4JztcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IDUwJTtcbiAgICAgICAgcmlnaHQ6IGNhbGMoI3skY29udGFpbmVyLXdpZHRofSAvIDEyKTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICAgICAgICBmb250LWZhbWlseTogJ0ZvbnQgQXdlc29tZSA1IFBybyc7XG4gICAgICAgIGZvbnQtc2l6ZTogMS41cmVtO1xuICAgICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgICBsaW5lLWhlaWdodDogMTtcbiAgICAgICAgY29sb3I6IGNvbG9yLWdldChvcmFuZ2UpO1xuICAgICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMjUwbXMgZWFzZS1vdXQ7XG4gICAgfVxufVxuLmhhcy1vcGVuLWFjY29yZGlvbiAuYy1iaWctYWNjb3JkaW9uX190aXRsZSB7XG4gICAgY29sb3I6ICNmZmY7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogY29sb3ItZ2V0KGRhcmstYmx1ZSk7XG4gICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZCAyNTBtcyBlYXNlLW91dDtcblxuICAgICY6OmFmdGVyIHtcbiAgICAgICAgY29sb3I6ICNmZmY7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKSByb3RhdGUoMTgwZGVnKTtcbiAgICB9XG59XG4uYy1iaWctYWNjb3JkaW9uX190aXRsZSBzdmcsXG4uYy1iaWctYWNjb3JkaW9uX19pY29uIHtcbiAgICB3aWR0aDogM3JlbTtcbiAgICBoZWlnaHQ6IDNyZW07XG4gICAgbWFyZ2luLXJpZ2h0OiAzcmVtO1xuICAgIGZpbGw6IGNvbG9yLWdldChvcmFuZ2UpO1xuICAgIHRyYW5zaXRpb246IGZpbGwgMTAwbXMgZWFzZS1vdXQ7XG59XG4uaGFzLW9wZW4tYWNjb3JkaW9uIC5jLWJpZy1hY2NvcmRpb25fX3RpdGxlIHN2Zyxcbi5oYXMtb3Blbi1hY2NvcmRpb24gLmMtYmlnLWFjY29yZGlvbl9faWNvbiB7XG4gICAgZmlsbDogI2ZmZjtcbiAgICBib3JkZXItY29sb3I6ICNmZmY7XG4gICAgdHJhbnNpdGlvbjogZmlsbCAyNTBtcyBlYXNlLW91dDtcbn1cbi5jLWJpZy1hY2NvcmRpb25fX2ljb24tLXByb2dyYW0ge1xuICAgIG1hcmdpbi1yaWdodDogNHJlbTtcbiAgICB0cmFuc2l0aW9uOiBib3JkZXIgMjUwbXMgZWFzZS1vdXQ7XG59XG4uYy1iaWctYWNjb3JkaW9uX19jb250ZW50IHtcbiAgICBoZWlnaHQ6IDA7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xufVxuLmMtYmlnLWFjY29yZGlvbl9fY29udGVudC1pbm5lciB7XG4gICAgcGFkZGluZzogMnJlbSBjYWxjKCN7JGNvbnRhaW5lci13aWR0aH0gLyAxMikgNHJlbTtcbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiBicmVha3BvaW50LWdldCgnbWF4JywgbGcpKSB7XG4gICAgLmMtYmlnLWFjY29yZGlvbnMge1xuICAgICAgICBtYXJnaW4tbGVmdDogLSRncmlkLXBhZGRpbmc7XG4gICAgICAgIG1hcmdpbi1yaWdodDogLSRncmlkLXBhZGRpbmc7XG4gICAgfVxuICAgIC5jLWJpZy1hY2NvcmRpb25fX3RpdGxlIHtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMCAwIDAgMnJlbTtcbiAgICB9XG4gICAgLmMtYmlnLWFjY29yZGlvbl9fdGl0bGUgc3ZnLFxuICAgIC5jLWJpZy1hY2NvcmRpb25fX2ljb24ge1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDJyZW07XG4gICAgfVxufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IGJyZWFrcG9pbnQtZ2V0KCdtYXgnLCBtZCkpIHtcbiAgICAuYy1iaWctYWNjb3JkaW9uX190aXRsZSB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgcGFkZGluZzogMXJlbSA0cmVtIDFyZW0gMnJlbTtcblxuICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgICByaWdodDogMnJlbTtcbiAgICAgICAgfVxuICAgIH1cbiAgICAuYy1iaWctYWNjb3JkaW9uX19jb250ZW50LWlubmVyIHtcbiAgICAgICAgcGFkZGluZzogMnJlbSAycmVtO1xuICAgIH1cbn0iLCIuYy1zaW1wbGUtcG9zdCArIC5jLXNpbXBsZS1wb3N0IHtcbiAgICBtYXJnaW4tdG9wOiAzcmVtO1xufVxuLmMtc2ltcGxlLXBvc3RfX3RpdGxlIHtcbiAgICBmb250LXNpemU6IHJlbXMoMjRweCk7XG4gICAgZm9udC13ZWlnaHQ6IHdlaWdodC1nZXQoc2VtaWJvbGQpO1xuICAgIGNvbG9yOiBjb2xvci1nZXQoZGFyay10ZWFsKTtcbn1cbi5jLXNpbXBsZS1wb3N0X190aXRsZSArIC5jLXNpbXBsZS1wb3N0X19ibHVyYiB7XG4gICAgbWFyZ2luLXRvcDogMC43NXJlbTtcbn1cbi5jLXNpbXBsZS1wb3N0X19idG4ge1xuICAgIG1hcmdpbi10b3A6IDJyZW07XG59IiwiQGltcG9ydCBcImJhc2VcIjtcbkBpbXBvcnQgXCJjb21wb25lbnRzL2Jhbm5lci1wYWdlXCI7XG5AaW1wb3J0IFwiY29tcG9uZW50cy9iaWctYWNjb3JkaW9uXCI7XG5AaW1wb3J0IFwiY29tcG9uZW50cy9zaW1wbGUtcG9zdFwiO1xuXG4uYy13b3Jrc2hvcHMtaW50cm8tYmxvY2sge1xuICAgIG1hcmdpbi10b3A6IDZyZW07XG59XG4uYy13b3Jrc2hvcHMtY2F0ZWdvcmllcyB7XG4gICAgbWFyZ2luLXRvcDogNnJlbTtcbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiBicmVha3BvaW50LWdldCgnbWF4JywgbWQpKSB7XG4gICAgLmMtd29ya3Nob3BzLWludHJvLWJsb2NrIHtcbiAgICAgICAgbWFyZ2luLXRvcDogM3JlbTtcbiAgICB9XG4gICAgLmMtd29ya3Nob3BzLWNhdGVnb3JpZXMge1xuICAgICAgICBtYXJnaW4tdG9wOiAzcmVtO1xuICAgIH1cbn0iXX0= */
