@charset "UTF-8";
/*  1 - SETTINGS
 *  Global variables, site-wide settings,
 *  config switches etc.
 *
 *  The order in which these Sass files
 *  are loaded is critical!
 *  So please be careful when editing
  =========================================================== */
/* =========================================================
   Organize color variables in a Sass Map.
   This way, the colors can be iterated, are more organized,
   and are more intuitive to reference.
   ========================================================= */
/**
 *	A simple function for accessing the colors from our mapping
 *	To access colors in our palette, we use a very simple custom Sass function
 *  This function is placed here, (and not in the toolbox)
 *  because we want to use it in our other setting files

	USAGE:

	.demo {
		color: palette(primary, 500);
	}

 */
/* ========================================
   Config settings
   ======================================== */
/*
	[1]		Logo dark or light can be set in header.blade.php / footer.blade.php &
	[2] 	Set this to true when bgColor gets a dark color that contrast the body bg color
*/
/* ==========================================================
 	 Defines the typographic baseline.
   We define every size in pixels, the underlying system
   converts the respective units to the responsive REM value.
 	 ========================================================== */
/**
 *	Here we assign short names for the font families
 */
/* ============================================
   Define breakpoints for given formats
   ============================================ */
/*  2 - TOOLS
 *  Site wide mixins and functions
 =========================================================== */
/* ==========================================================================
  Functions used in grid calculation
  ========================================================================== */
/**
  * Return percentage based on amount of columns
  * Use parent column size to adjust the origin
  */
/**
  * Default function for columns
  * Return as percentage
  */
/**
  * Return as viewport width
  */
/* ==========================================================================
 * Font related functions
 * ========================================================================== */
/**
 *  Mixin for setting font-size in REM through a Sass Map with all available sizes

    USAGE:

    .myClass {
        @include fs(24);
    }

 */
/**
 * Fluid type plugin (https://codepen.io/MadeByMike/pen/vNrvdZ)
 * Requires the calc-interpolation function which can also be used independently
 *
 * Usage:
 *
 * .demo {
 *     @include interpolate(font-size, 320px, 1366px, 14px, 20px);
 * }
 *
 * Multiple properties with same values:
 *
 * h1,h2,h3,h4,h5 {
 *   @include interpolate((padding-top, padding-bottom), 20rem, 70rem, 0rem, .5rem);
 * }
 *
 */
/* Media query mixin for writing Mobile First
 * ========================================== */
/* =============================================
   Toolbox functions
   ================================================ */
/**
 *  Remove the unit of a length
 *  @param {Number} $number - Number to remove unit from
 *  @return {Number} - Unitless number
 */
/* Check if value is number */
/* Value to Em */
/* Value to Rem */
/*
 * Set vertical spacing only for mobile viewport

 USAGE:

 .example {
	 @include vspacing-s(
				'margin-top' 1
		);
  }

 */
/*
 * Set vertical spacing for viewport larger than mobile
 * In flexible units (vw) and on max viewport in a fixed amount (px)

 USAGE:

 .example {
	 @include vspacing-m-up(
				'padding-top' 0.33,
				'margin-bottom' 0.5
		);
  }

 */
/*
 * From values given return the correct v-spacing for each breakpoint
 */
/**
 *	A simple function for setting a consistent border-radius

	USAGE:

	.card {
		@include border-radius;
	}

	.card--alt {
		@include border-radius(l);
	}

 */
/**
 * Lobotomized Owl Selector mixin:
 * - Set spacing for consecutive items with margin-top on all but the first item

	USAGE:



	.card__item {
		@include owl;
	}

 */
/**
 *  Show hyphens for every browser supporting it
 *  and will break lines in every other browser
 */
/*
 *  Restrict an element to a max-width for creating gutters on the side
 */
/*
 *	A mixin to set elements to its own named grid-area
 */
/** =================================================================================================
 *  The 'z-index-map' is used for managing the elements stacking order in the 'root' stacking context
 *  This way we have a overview of all the z-index values that are used across the project.
 ==================================================================================================== */
/**
    USAGE:

    @include z(z-modal);

 */
/* ==========================================================================
  Keyframe Animations
  ========================================================================== */
@keyframes phone-rings {
  0%, 100% {
    transform: rotate(0deg);
  }
  10%, 20%, 30% {
    transform: rotate(10.5deg);
  }
  15%, 25%, 35% {
    transform: rotate(-3deg);
  }
}
@keyframes mailing {
  0%, 100% {
    transform: translateX(0);
  }
  50% {
    transform: translateX(2px);
  }
}
/*  3 - ELEMENTS
 *  Plain old simple HTML elements without a class (type selectors)
 =========================================================== */
/* ==========================================================================
 * Basic elements (no class selectors allowed)
 * ========================================================================== */
/**
 * Set up the html
 *
 * 1. Makes sure that some fonts are better rendered
 * 2. Set font to lining figures
 *
 * 3. Avoid the IE 10-11 `min-height` bug.
 * 4. Use `%` instead of `vh` since `vh` is buggy in older mobile Safari.
 */
html {
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  text-rendering: optimizeLegibility;
  font-feature-settings: "lnum";
  box-sizing: border-box;
  height: 100%;
}

body {
  font-size: 0.9375rem;
  line-height: 1.6;
  position: relative;
  font-family: "Montserrat", sans-serif;
  margin: 0;
  color: #16293D;
  background: #FFFFFF;
  overflow-x: hidden;
  display: flex;
  flex-direction: column;
  height: 100%;
  /* 3, 4 */
}

footer {
  flex: 1 0 auto;
  display: flex;
  flex-direction: column;
}

/**
 * [1] Make sure elements like input and textarea inherit some base properties
 *     https://www.smashingmagazine.com/2016/11/css-inheritance-cascade-global-scope-new-old-worst-best-friends/
 *
 * [2] Setting box-sizing the best way per:
 *     https://css-tricks.com/inheriting-box-sizing-probably-slightly-better-best-practice/
 */
* {
  font-family: inherit;
  line-height: inherit;
  color: inherit;
}
*, *:before, *:after {
  box-sizing: inherit;
}

/**
 * [1] Turn off text-shadow when selecting text for better readability
 */
::selection {
  background: #16293D;
  color: #FFFFFF;
  text-shadow: none;
  /* [1] */
}

/* Remove default margin around figure
 */
figure {
  margin: 0;
}

/**
 * [1] Setting 'vertical-align' removes the whitespace that appears under 'img'
 *	   elements when they are dropped into a page as-is. Safer alternative to
 *	   using 'display: block;'.
 * [2] Remove border / especially on older browsers
 */
img, svg {
  vertical-align: middle;
  /*[1]*/
  border: none;
  /*[2]*/
  max-width: 100%;
}

/**
 *  Needed for iOS to prevent input zooming
 *  https://uxcellence.com/2014/01/15/quick-fix-increase-font-size-to-16px-to-fix-input-zoom
 */
input,
select,
textarea {
  font-size: 16px;
}

a:not([class]) {
  position: relative;
  color: #4079B8;
  text-decoration: none;
  -webkit-text-decoration-skip: ink;
          text-decoration-skip-ink: auto;
}
a:not([class])::after {
  position: absolute;
  top: 100%;
  left: 0;
  width: 100%;
  height: 1px;
  background: #4079B8;
  content: "";
  opacity: 0;
  transition: height 0.3s, opacity 0.3s, transform 0.3s;
  transform: translateY(-5px);
}
a:not([class]):hover::after {
  height: 2px;
  opacity: 1;
  transform: translateY(0px);
}

h1, h2, h3, h4, h5, h6, hgroup,
ul, ol, dd,
p, figure,
pre, table, fieldset, hr {
  margin-top: 0;
  margin-bottom: 0;
}

h1, .h1 {
  font-family: "Poppins", sans-serif;
  line-height: 1.3333;
  font-weight: 600;
  letter-spacing: -0.32px;
}
h1, .h1 {
  font-size: 24px;
}
@media screen and (min-width: 375px) {
  h1, .h1 {
    font-size: calc(9.6vw - 12px);
  }
}
@media screen and (min-width: 500px) {
  h1, .h1 {
    font-size: 36px;
  }
}

h2, .h2 {
  font-family: "Poppins", sans-serif;
  line-height: 1.3333;
  font-weight: 600;
  letter-spacing: -0.32px;
}
h2, .h2 {
  font-size: 20px;
}
@media screen and (min-width: 375px) {
  h2, .h2 {
    font-size: calc(4.8vw + 2px);
  }
}
@media screen and (min-width: 500px) {
  h2, .h2 {
    font-size: 26px;
  }
}

h3, .h3 {
  font-family: "Poppins", sans-serif;
  line-height: 1.6;
  font-weight: 600;
  letter-spacing: -0.2px;
}
h3, .h3 {
  font-size: 18px;
}
@media screen and (min-width: 375px) {
  h3, .h3 {
    font-size: calc(3.2vw + 6px);
  }
}
@media screen and (min-width: 500px) {
  h3, .h3 {
    font-size: 22px;
  }
}

h4, .h4 {
  font-family: "Poppins", sans-serif;
  line-height: 1.6;
  font-weight: 600;
  letter-spacing: 0;
}
h4, .h4 {
  font-size: 16px;
}
@media screen and (min-width: 375px) {
  h4, .h4 {
    font-size: calc(3.2vw + 4px);
  }
}
@media screen and (min-width: 500px) {
  h4, .h4 {
    font-size: 20px;
  }
}

/** =====================================================================================
 *  Lists
 ===================================================================================== */
/**
 *	Default indentation value for lists
 */
ul,
ol {
  padding: 0;
  margin: 0;
  margin-left: 1.125em;
}

dd {
  margin-left: 0;
}

/**
 *	Remove extra vertical spacing when nesting lists.
 */
li > ul,
li > ol {
  margin-bottom: 0;
}

/*  4 - Layout elements
 *  Design patterns (e.g. grids or media object)
 =========================================================== */
/*==========================================================================
 * Contain
 * ========================================================================== */
.l-contain {
  width: calc(100% - 12vw);
  margin-left: auto;
  margin-right: auto;
}
@media screen and (min-width: 840px) {
  .l-contain {
    width: calc((100% / 10) * 8);
  }
}
@media screen and (min-width: 1152px) {
  .l-contain {
    width: calc((100% / 14) * 12);
    max-width: 1440px;
  }
}

.l-contain--small {
  width: 552px;
}
@media screen and (max-width: 551px) {
  .l-contain--small {
    width: 100%;
  }
}

/*===============================================================================
 * Split layout in 2 equal columns
 *
 * Until viewport is wide enough the columns are stacked vertically
 * ============================================================================== */
.l-split {
  position: relative;
  height: 100%;
}
@media screen and (min-width: 840px) {
  .l-split {
    display: flex;
    justify-content: space-between;
  }
}

/**
 * Special contain version for split.
 * Doesn't restrain content on medium viewport
 */
.l-split--contain {
  width: calc(100% - 12vw);
  margin-left: auto;
  margin-right: auto;
}
@media screen and (min-width: 840px) {
  .l-split--contain {
    width: 100%;
  }
}
@media screen and (min-width: 1152px) {
  .l-split--contain {
    width: calc((100% / 14) * 12);
    max-width: 1440px;
  }
}

@media screen and (min-width: 1152px) {
  .l-split__column {
    width: 50%;
  }
}
@media screen and (min-width: 840px) and (max-width: 1151px) {
  .l-split__column:first-child {
    width: 62.5%;
    padding-right: 12.5%;
  }
}
@media screen and (max-width: 839px) {
  .l-split__column:last-child {
    margin-top: 6vw;
  }
}
@media screen and (min-width: 840px) and (max-width: 1151px) {
  .l-split__column:last-child {
    padding-left: 0;
    width: 37.5%;
  }
}
@media screen and (min-width: 1152px) {
  .l-split__column:last-child {
    padding-left: 8.3333333333%;
  }
}
.l-split--is-reversed .l-split__column {
  padding-left: 0;
  padding-right: 0;
}
.l-split--is-reversed .l-split__column:first-child {
  order: 2;
  padding-left: 0;
}
@media screen and (min-width: 840px) and (max-width: 1151px) {
  .l-split--is-reversed .l-split__column:first-child {
    padding-left: 8.3333333333%;
    padding-right: 0;
  }
}
@media screen and (min-width: 1152px) {
  .l-split--is-reversed .l-split__column:first-child {
    padding-left: 8.3333333333%;
    padding-right: 0;
  }
}

@media screen and (min-width: 840px) and (max-width: 1151px) {
  .l-split--breakout-on-m .l-split__column:first-child {
    width: 60%;
    padding-left: 10%;
    padding-right: 10%;
  }
  .l-split--breakout-on-m .l-split__column:last-child {
    width: 40%;
  }
}
/**
 * When there is only 1 column, align it to the middle and contain the width
 * Only one column is used e.g. in the tabslider when there is no image set
 */
@media screen and (min-width: 840px) {
  .l-split__column:only-child {
    margin: 0 auto;
    width: 75%;
    padding-left: 0;
    padding-right: 0;
  }
}
@media screen and (min-width: 1152px) {
  .l-split__column:only-child {
    width: 50%;
    padding-left: 0 !important;
  }
}

.l-split__column--vpad {
  display: flex;
  flex-direction: column;
  justify-content: center;
}

@media screen and (min-width: 1152px) {
  .l-split__column--leftpad {
    padding-left: 8.3333333333%;
  }
}
/*==========================================================================
 * Contain
 * ========================================================================== */
.l-component[data-gap=default] {
  margin: clamp(72px, 7.2vw, 120px) 0;
}

/*  5 - COMPONENTS
 *  Discrete complete chunks of UI.
 *  Designed components
 =========================================================== */
/** ==========================================================================
 * Components
 * =========================================================================*/
.c-breadcrumb {
  padding-bottom: 4px;
}

.c-breadcrumb__list {
  margin: 0;
  list-style: none;
  display: flex;
  flex-wrap: wrap;
}

.c-breadcrumb__item {
  display: flex;
  align-items: center;
}
.c-breadcrumb__item:nth-child(n+2) .c-breadcrumb__icon {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 24px;
  height: 24px;
  margin-left: 8px;
  margin-right: 8px;
  transform: rotate(0.75turn);
  color: #FFFFFF;
}

.c-breadcrumb__link {
  color: #FFFFFF;
  text-decoration: none;
}
.c-breadcrumb__item--last .c-breadcrumb__link {
  font-weight: bold;
}

.c-button {
  border-radius: 8px;
  font-size: 0.9375rem;
  width: max-content;
  font-weight: 500;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: #FFFFFF;
  background-color: #ff8a15;
  border: none;
  padding: 16px 0;
  position: relative;
  overflow: hidden;
  cursor: pointer;
  text-decoration: none;
}
.c-button:focus {
  outline: none;
  box-shadow: 0 0 0 1px #FFFFFF, 0 0 5px 2px #ff8a15;
}
.c-button:active:not(:disabled) {
  outline: none;
  box-shadow: none;
}
.c-button:disabled {
  opacity: 0.5;
  cursor: not-allowed;
}
.c-button::after {
  content: "";
  position: absolute;
  z-index: 1;
  top: calc(50% - 2px);
  left: calc(50% - 2px);
  width: 4px;
  height: 4px;
  opacity: 0;
  border-radius: 50%;
  background: #ff7514;
  pointer-events: none;
  transition-property: opacity, transform;
  transition-duration: 0.5s;
}
.c-button:hover:not(:disabled)::after {
  opacity: 1;
  transform: scale(100);
}

.c-button__text {
  position: relative;
  z-index: 2;
  padding: 0 24px;
  text-align: center;
  font-weight: 600;
}
.c-button--icon .c-button__text {
  padding-right: 16px;
}

.c-button__icon {
  display: none;
  position: relative;
  z-index: 2;
  top: -1px;
  margin-right: 15px;
  transition: transform 0.3s;
}
.c-button:hover:not(:disabled) .c-button__icon {
  transform: translateX(3px);
}
.c-button__icon:first-child {
  margin-right: 0;
  margin-left: 15px;
}
.c-button--icon .c-button__icon {
  display: block;
  width: 16px;
}

.c-button--light {
  color: #193E8A;
  background-color: #FFFFFF;
}
.c-button--light::after {
  background: #B6CEF0;
}

.c-button--blue {
  color: #FFFFFF;
  background-color: #638DE0;
}
.c-button--blue::after {
  background: #426AB8;
}

.c-button--full-width {
  width: 100%;
  max-width: 90vw;
}

.c-button--left {
  margin-right: 15px;
}

.c-button--small {
  padding: 7px 0;
}

/* ==========================================================================
 * Default button
 * ========================================================================== */
.c-ghostbutton {
  border-radius: 8px;
  font-size: 0.875rem;
  font-weight: 500;
  display: inline-flex;
  justify-content: center;
  align-items: center;
  color: #FFFFFF;
  background: transparent;
  text-shadow: 0 0 4px rgba(0, 0, 0, 0.2);
  border: 1px solid currentColor;
  padding: 16px 0;
  text-transform: uppercase;
  position: relative;
  cursor: pointer;
  text-decoration: none;
}
.c-ghostbutton:focus {
  outline: none;
  box-shadow: 0 0 4px 2px rgba(255, 255, 255, 0.5);
}
.c-ghostbutton:active:not(:disabled) {
  outline: none;
  box-shadow: none !important;
}
.c-ghostbutton:disabled {
  opacity: 0.5;
  cursor: not-allowed;
}
.c-ghostbutton::after {
  border-radius: 8px;
  border: 1px solid transparent;
  background: rgba(255, 255, 255, 0.07);
  background-clip: content-box;
  content: "";
  position: absolute;
  top: -1px;
  bottom: -1px;
  right: -1px;
  left: -1px;
  transform: scaleX(0);
  opacity: 0;
  pointer-events: none;
  transition-duration: 0.5s;
}
.c-ghostbutton:hover:not(:disabled)::after {
  transform: scaleX(1);
  opacity: 1;
  transition-property: opacity, transform;
  transition-duration: 0.35s;
  transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
}

.c-ghostbutton__text {
  position: relative;
  z-index: 2;
  padding: 0 24px;
  text-align: center;
}
.c-button--icon .c-ghostbutton__text {
  padding-right: 16px;
}

.c-ghostbutton__icon {
  display: none;
  position: relative;
  z-index: 2;
  top: -1px;
  margin-right: 15px;
  transition: transform 0.3s;
}
.c-ghostbutton:hover:not(:disabled) .c-ghostbutton__icon {
  transform: translateX(3px);
}
.c-ghostbutton--icon .c-ghostbutton__icon {
  display: block;
  width: 16px;
}
.c-ghostbutton__icon:first-child {
  margin-right: 0;
  margin-left: 15px;
}

.c-card {
  position: relative;
  display: flex;
  flex-direction: column;
  height: 100%;
  padding-left: 24px;
  padding-right: 32px;
  background-color: #FFFFFF;
  border-radius: 8px;
  box-shadow: 0 24px 24px 0 rgba(47, 53, 72, 0.05);
  text-decoration: none;
}
@media screen and (min-width: 641px) {
  .c-card {
    padding-left: 40px;
    padding-right: 40px;
  }
}

.c-card__icon {
  margin-top: 24px;
  margin-bottom: 16px;
}
@media screen and (min-width: 641px) {
  .c-card__icon {
    margin-top: 40px;
    margin-bottom: 32px;
  }
}

.c-card__body {
  margin-bottom: 40px;
}

.c-card__bottom {
  position: relative;
  display: flex;
}
.c-card__bottom:before, .c-card__bottom:after {
  content: "";
  position: absolute;
  top: 50%;
  left: 0;
  height: 2px;
}
.c-card__bottom:before {
  transform: translateY(-50%);
  width: calc(100% - 44px);
  background-color: #E6E7EB;
}
.c-card__bottom:after {
  width: calc(50% - 10px);
  background-color: #ff8a15;
  opacity: 0;
  transform: scaleX(0.8);
  transform-origin: 0 50%;
  transition: transform 0s ease-out 0.2s, opacity 0.2s linear;
}
.c-card:hover .c-card__bottom:after {
  transform: scaleX(1);
  opacity: 1;
  transition: transform 0.3s ease-out, opacity 0.2s linear;
}
@media screen and (min-width: 641px) {
  .c-card__bottom {
    flex-direction: row-reverse;
    margin-top: auto;
    margin-bottom: 40px;
    width: 100%;
  }
}
@media screen and (max-width: 640px) {
  .c-card__bottom {
    position: absolute;
    top: 0;
    right: 0;
    height: 100%;
    width: 16px;
    align-items: center;
    justify-content: center;
    background-color: #638DE0;
    border-radius: 0 8px 8px 0;
    transition: background-color 0.3s;
  }
  .c-card:hover .c-card__bottom {
    background-color: #426AB8;
  }
}

.c-card__button {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 40px;
  height: 40px;
  border-radius: 50%;
  color: #193E8A;
  border: 1px solid #C9CACD;
}
.c-card__button:after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
  border-radius: 50%;
  background-image: linear-gradient(180deg, #FF7F15 50%, #FF7B2F 100%);
  box-shadow: 0 8px 12px 0 rgba(255, 127, 21, 0.08);
  opacity: 0;
  transition: opacity 0.2s;
}
.c-card:hover .c-card__button {
  border-color: #ff8a15;
  color: white;
}
.c-card:hover .c-card__button:after {
  opacity: 1;
}
@media screen and (max-width: 640px) {
  .c-card__button {
    border: none;
    color: white;
  }
  .c-card__button:after {
    display: none;
  }
}

.c-card__button-icon {
  position: relative;
  left: 1px;
  z-index: 2;
  transform: rotate(270deg);
}

.c-card__car {
  position: absolute;
  z-index: 2;
  left: calc(50% - 44px);
  opacity: 0;
  transform: translateX(-40px);
  transition: transform 0s ease-out 0.2s, opacity 0.2s linear;
}
.c-card:hover .c-card__car {
  opacity: 1;
  transform: translateX(0);
  transition: transform 0.3s ease-out, opacity 0.4s linear;
}
@media screen and (max-width: 640px) {
  .c-card__car {
    display: none;
  }
}

.c-card--has-action {
  z-index: 0;
}

.c-card__title {
  font-size: 1.0625rem;
  line-height: 1.4117647059;
  font-weight: 600;
  color: #193E8A;
  font-family: "Poppins", sans-serif;
  margin-bottom: 8px;
}
@media screen and (min-width: 641px) {
  .c-card__title {
    margin-bottom: 16px;
  }
}

.c-close {
  display: flex;
  align-items: center;
  justify-content: center;
  align-self: center;
  position: relative;
  width: 40px;
  height: 40px;
  padding: 0;
  background: none;
  border: none;
  outline: none;
  cursor: pointer;
  transition: transform 180ms ease-out;
}
.c-close:focus {
  box-shadow: 0 0 3px 2px #ff8a15;
}
.c-close:after, .c-close:before {
  content: "";
  position: absolute;
  top: 20px;
  right: 20%;
  left: 20%;
  height: 2px;
  margin-top: -2px;
  pointer-events: none;
  background: #ff8a15;
  border-radius: 3px;
}
.c-close:before {
  transform: rotate(45deg);
}
.c-close:after {
  transform: rotate(-45deg);
}
.c-close:hover {
  transform: scale(1.2);
}

.c-connect {
  display: inline-flex;
  flex-direction: column;
  align-items: center;
}
@media screen and (min-width: 840px) {
  .c-connect {
    flex-direction: row;
  }
}

.c-connect__phone {
  font-size: 1.125rem;
  font-weight: bold;
  text-decoration: none;
  color: #25313D;
  transition: opacity 300ms;
}
.c-connect__phone:hover, .c-connect__phone:active {
  outline: none !important;
}
.c-connect__phone:hover {
  opacity: 0.7;
  text-decoration: underline;
}
.c-connect__phone:focus {
  outline-color: currentColor;
  outline-style: solid;
  outline-offset: 1px;
  outline-width: 2px;
}

.c-connect__or {
  margin: 0 16px;
  color: #FFFFFF;
}
@media screen and (max-width: 839px) {
  .c-connect__or {
    margin: 8px 0 16px;
  }
}

.c-data {
  margin: 16px 0;
}

.c-data__line {
  display: flex;
}

.c-data__label {
  min-width: 64px;
  font-weight: bold;
  color: #25313D;
}

.c-data__value {
  color: #FFFFFF;
  text-decoration: none;
}
.c-data__value[href]:hover, .c-data__value[href]:active {
  outline: none !important;
}
.c-data__value[href]:hover {
  text-decoration: underline;
}
.c-data__value[href]:focus {
  outline-color: currentColor;
  outline-style: solid;
  outline-offset: 1px;
  outline-width: 2px;
}

.c-date-label {
  display: inline-block;
  padding: 4px 24px;
  font-weight: bold;
}

.c-date-label--secondary {
  background-color: #F0F2F5;
  color: #FFFFFF;
}

.c-date-label__day {
  font-size: 1.5rem;
  display: inline-block;
}

.c-date-label__month {
  font-size: 1.125rem;
  display: inline-block;
}

.c-date-label__seperator {
  font-size: 0.75rem;
}

.c-event-card {
  display: flex;
  flex-direction: column;
  height: 100%;
  text-decoration: none;
  position: relative;
  overflow: hidden;
  z-index: 0;
}
.c-event-card:hover, .c-event-card:active {
  outline: none !important;
}
.c-event-card:focus {
  outline-color: #ff8a15;
  outline-style: solid;
  outline-offset: 1px;
  outline-width: 2px;
}

.c-event-card__picture {
  width: 100%;
  flex: none;
  display: block;
  position: relative;
}
.c-event-card__picture::before {
  content: "";
  position: absolute;
  z-index: 0;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  background-color: rgba(0, 0, 0, 0.25);
  background-image: linear-gradient(to bottom, rgba(255, 138, 21, 0.7), rgba(255, 138, 21, 0.1));
  opacity: 0;
  pointer-events: none;
  transition: all 200ms linear;
}
.c-event-card:hover .c-event-card__picture::before {
  opacity: 1;
}

.c-event-card__img {
  object-fit: cover;
  width: 100%;
  height: auto;
}

.c-event-card__date {
  position: absolute;
  z-index: 1;
  bottom: 0;
  left: 0;
  background-color: #F0F2F5;
  color: #FFFFFF;
  transform-origin: left bottom;
  transition: all 200ms linear;
}
.c-event-card:hover .c-event-card__date {
  background-color: #ff8a15;
  color: #FFFFFF;
}

.c-event-card__info {
  flex: 1;
  padding: 16px 24px;
  background-color: #E6E7EB;
  position: relative;
  transition: all 200ms linear;
}
.c-event-card:hover .c-event-card__info {
  background-color: #ff8a15;
}

.c-event-card__title {
  font-size: 0.9375rem;
  position: relative;
  z-index: 2;
  font-weight: bold;
  color: #25313D;
  transition: all 200ms linear;
}
.c-event-card:hover .c-event-card__title {
  color: #FFFFFF !important;
}

.c-event-card__subtitle {
  font-size: 0.9375rem;
  position: relative;
  z-index: 2;
  color: #FFFFFF;
  transition: all 200ms linear;
}
.c-event-card:hover .c-event-card__subtitle {
  color: #FFFFFF !important;
}

.c-event-card__type {
  font-size: 0.9375rem;
  position: relative;
  z-index: 2;
  margin-top: 8px;
  color: #C9CACD;
  transition: all 200ms linear;
}
.c-event-card:hover .c-event-card__type {
  color: #FFFFFF !important;
}

.c-file-upload__main {
  position: relative;
}

.c-file-upload__input {
  opacity: 0;
  position: absolute;
  top: 0;
  left: 0;
}

.c-file-upload__button {
  border-radius: 8px;
  font-size: 0.875rem;
  font-weight: 500;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: #FFFFFF;
  background-color: #FFFFFF;
  border: 1px solid #FFFFFF;
  margin-right: 8px;
  padding: 16px 24px;
  text-transform: uppercase;
  position: relative;
  overflow: hidden;
  cursor: pointer;
  text-decoration: none;
  transition: all 150ms;
}
.c-file-upload__button::after {
  content: "";
  background-image: url(/img/add.svg);
  background-repeat: no-repeat;
  width: 16px;
  height: 16px;
  margin-left: 16px;
}
.c-file-upload__button:hover {
  opacity: 0.7;
}

.c-file-upload__list {
  margin-left: 0;
  margin-bottom: 24px;
  list-style: none;
  overflow: hidden;
}
.c-file-upload__list > li {
  display: flex;
  justify-content: flex-start;
  align-items: center;
  border-bottom: 1px solid #C9CACD;
  padding: 4px 0;
  animation: expand 0.5s ease-in-out;
}
.c-file-upload__list > li::before {
  content: "";
  display: flex;
  align-items: center;
  justify-content: center;
  width: 16px;
  height: 16px;
  margin-right: 8px;
  background: url("/img/file.svg") no-repeat;
}
.c-file-upload__list > li > button {
  font-size: 24px;
  line-height: 16px;
  color: #FFFFFF;
  margin-left: auto;
  border: none;
  background-color: transparent;
  cursor: pointer;
  outline: none;
  transition: color 150ms linear;
}
.c-file-upload__list > li > button:hover {
  color: red;
}
.c-file-upload__list > li > button::before {
  content: "×";
}

.c-file-upload__note {
  color: #FFFFFF;
}

@keyframes expand {
  from {
    transform: translateX(-100%);
    transform-origin: top;
    opacity: 0;
    background: #4079B8;
  }
}
.c-form-group__label {
  font-size: 0.9375rem;
  display: block;
  padding: 4px 0;
  color: #FFFFFF;
}

.c-form-group__error {
  display: none;
}
.has-error .c-form-group__error:not(:empty) {
  font-size: 0.875rem;
  display: block;
  padding: 8px;
  color: #4079B8;
  background-color: rgba(64, 121, 184, 0.1);
  border: 1px solid #4079B8;
  border-top: none;
  border-radius: 0 0 4px 4px;
}

.c-form-feedback {
  font-size: 0.9375rem;
  border-radius: 4px;
  margin: 0 0 8px;
  padding: 24px 32px;
  color: #25313D;
  background-color: rgba(255, 211, 58, 0.2);
  border: 1px solid #ffd33a;
}
.c-form-feedback:not(:empty) {
  display: block;
}
.c-form-feedback:before {
  content: attr(data-feedback);
  display: inline-block;
  margin-left: -16px;
  margin-bottom: 8px;
  font-weight: 500;
}
.c-form-feedback li::first-letter {
  text-transform: uppercase;
}

.c-hamburger {
  display: flex;
  justify-content: center;
  align-items: center;
  align-self: center;
  position: relative;
  width: 64px;
  height: 64px;
  padding: 0;
  color: #ff8a15;
  background: none;
  border: none;
  outline: none;
  cursor: pointer;
}
.c-hamburger:focus {
  outline-color: currentColor;
  outline-style: solid;
  outline-offset: 1px;
  outline-width: 2px;
}

.c-hamburger__icon {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: flex-end;
  width: 24px;
  height: 18px;
}
.c-hamburger__icon > span, .c-hamburger__icon:after, .c-hamburger__icon:before {
  content: "";
  position: absolute;
  width: 24px;
  right: 0;
  height: 2px;
  margin-top: -2px;
  pointer-events: none;
  background: currentColor;
  border-radius: 3px;
  transform-origin: right;
  transition-property: transform;
  transition-duration: 150ms;
  transition-timing-function: ease-out;
  transition-delay: 100ms;
}
.c-hamburger__icon:before {
  top: 0;
}
.c-hamburger__icon:after {
  bottom: 0;
  transform: scaleX(0.5);
}
.c-hamburger__icon:hover > span {
  transform: scaleX(0.8);
}
.c-hamburger__icon:hover:after, .c-hamburger__icon:hover:before {
  transform: scaleX(1);
}
.is-overlay-menu-active .c-hamburger__icon > span {
  transform: scaleX(1) !important;
}
.is-overlay-menu-active .c-hamburger__icon:before {
  transform: translateY(3px) scaleX(1) !important;
  transition-delay: 0s;
}
.is-overlay-menu-active .c-hamburger__icon:after {
  transform: translateY(-3px) scaleX(1) !important;
  transition-delay: 0s;
}

.c-heading {
  font-size: 2rem;
  margin: 40px 0;
  color: #25313D;
}

@media screen and (min-width: 1152px) {
  .c-heading--indent {
    padding-left: 8.3333333333%;
  }
}

@media screen and (min-width: 840px) {
  .c-hero {
    width: calc(100% - 12vw);
    margin-left: auto;
    margin-right: auto;
  }
}
@media screen and (min-width: 840px) and (min-width: 840px) {
  .c-hero {
    width: calc((100% / 10) * 8);
  }
}
@media screen and (min-width: 840px) and (min-width: 1152px) {
  .c-hero {
    width: calc((100% / 14) * 12);
    max-width: 1440px;
  }
}

.c-hero__main {
  position: relative;
  background-color: #FFFFFF;
}

.c-hero__slider {
  overflow: hidden;
  position: relative;
  padding-bottom: 55.556%;
}
@media screen and (min-width: 840px) and (max-width: 1151px) {
  .c-hero__slider {
    padding-bottom: 50%;
  }
}

.c-hero__picture {
  position: absolute;
  top: 0;
  left: 0;
  opacity: 0;
  transition-property: opacity, filter;
  transition-duration: 500ms;
  transition-timing-function: linear;
  filter: blur(5px);
}
.c-hero__picture.is-active {
  opacity: 1;
  transform: translateY(0) scale(1);
  filter: none;
}

.c-hero__image {
  width: 100%;
}

.c-hero__caption {
  font-size: calc(16px + 1vw);
  font-weight: bold;
  position: relative;
  padding: 24px;
  line-height: 1.2;
  text-align: center;
  color: #FFFFFF;
  background-color: rgba(255, 255, 255, 0.6);
}
@media screen and (min-width: 840px) {
  .c-hero__caption {
    position: absolute;
    bottom: 0;
    max-width: 50%;
    padding: 32px;
    text-align: left;
  }
}
@media screen and (min-width: 840px) and (max-width: 1679px) {
  .c-hero__caption {
    padding: 2.6vw;
    font-size: 3.5vw;
    line-height: 1.2;
  }
}
@media screen and (min-width: 1680px) {
  .c-hero__caption {
    font-size: 3rem;
    line-height: 1.25;
    padding-left: 5%;
  }
}

.c-hero__controls {
  position: absolute;
  bottom: 0;
  right: 0;
  width: 100%;
  padding: 8px;
}
.c-hero__controls::before {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  height: 48px;
  width: 100%;
  background: linear-gradient(to top, black, transparent);
  opacity: 0.3;
}

.c-input {
  border-radius: 6px;
  font-size: 0.9375rem;
  width: 100%;
  padding: 16px;
  color: #25313D;
  background-color: #FFFFFF;
  border: 1px solid #F0F2F5;
  outline: none;
}
.has-error .c-input {
  box-shadow: 0 0 7px -3px #ffd33a;
  border-color: #ffd33a;
  background-color: rgba(255, 211, 58, 0.05);
}
.c-input:focus {
  box-shadow: 0 0 7px -3px #FFFFFF;
  border-color: #FFFFFF;
}
textarea.c-input {
  display: block;
  padding: 16px;
  min-height: 158px;
  line-height: 24px;
  resize: vertical;
}

.c-input:-ms-input-placeholder {
  font-size: 0.75rem;
  line-height: 2;
  color: #25313D;
}

.c-input::placeholder {
  font-size: 0.75rem;
  line-height: 2;
  color: #25313D;
}

.c-language {
  position: relative;
}

.c-language__button {
  font-size: 0.9375rem;
  border-radius: 4px;
  display: flex;
  position: relative;
  width: 100%;
  padding: 8px;
  text-align: left;
  background: transparent;
  color: rgba(37, 49, 61, 0.5);
  border: none;
  -webkit-appearance: none;
          appearance: none;
  transition: background-color 0.15s, box-shadow 0.15s;
}
.c-language__button:focus {
  outline: none;
}

.c-language__icon {
  flex: none;
  pointer-events: none;
}

.c-language__label {
  margin-left: 4px;
  font-weight: bold;
}

.c-language__dropdown {
  position: absolute;
  right: 0;
  top: 100%;
  min-width: 100%;
  margin: 0;
  opacity: 0;
  list-style: none;
  border-radius: 4px;
  box-shadow: 0 0 12px 1px rgba(255, 255, 255, 0.15);
  pointer-events: none;
  transform: translate3d(0, -5px, 0);
  transition: opacity 0.3s, transform 0.3s;
}
.c-language:hover .c-language__dropdown {
  opacity: 1;
  pointer-events: all;
  transform: translate3d(0, 0, 0);
}

.c-language__item {
  background-color: #FFFFFF;
  overflow: hidden;
}
.c-language__item:nth-child(even) {
  background-color: #f2f2f2;
}
.c-language__item:first-child {
  border-radius: 4px 4px 0 0;
}
.c-language__item:last-child {
  border-radius: 0 0 4px 4px;
}
.c-language__item:first-child:last-child {
  border-radius: 4px;
}

.c-language__link {
  display: block;
  padding: 4px 8px;
  text-align: center;
  font-weight: bold;
  text-decoration: none;
  color: #FFFFFF;
  transition: background-color 0.3s;
}
.c-language__link:hover {
  color: #FFFFFF;
  background-color: #F0F2F5;
}

/*
	Colors get defined in _settings.config.scss
*/
.c-nav {
  height: 100%;
  padding: 0;
}

.c-nav__list {
  display: flex;
  justify-content: flex-end;
  margin-left: 0;
  padding: 0;
  list-style: none;
  height: 100%;
}

.c-nav__item {
  display: flex;
  font-size: 0.9375rem;
  white-space: nowrap;
}
.c-nav__item:last-child {
  margin-right: 0;
}
.c-nav__item > .c-nav__link {
  display: flex;
  align-items: center;
  padding: 40px 12px;
  transition: background-color 0.2s, color 0.2s;
}
.c-nav__item > .c-nav__link:hover {
  background-color: rgba(240, 242, 245, 0.5);
  color: #2751A3;
}

.c-nav__item--centered {
  align-items: center;
}

.c-nav__item--has-dropdown {
  position: relative;
}
.c-nav__item--has-dropdown:hover .c-nav__dropdown {
  display: block;
}

.c-nav__dropdown-icon {
  display: inline-block;
}

.c-nav__button.c-button {
  padding: 12px 0;
}

.c-nav__link {
  position: relative;
  padding: 4px;
  color: #25313D;
  text-decoration: none;
  -webkit-user-select: none;
      -ms-user-select: none;
          user-select: none;
  transition: color 150ms linear;
}
.c-nav__link:hover, .c-nav__link:active {
  outline: none !important;
}
.c-nav__link:hover {
  color: #25313D;
}
.c-nav__link.is-active {
  font-weight: 500;
  color: #25313D;
}
.c-nav__link.is-active:after {
  position: absolute;
  content: "";
  width: 100%;
  height: 4px;
  border-radius: 2px 2px 0 0;
  background-color: #638DE0;
  left: 0;
  bottom: -1px;
}
.c-nav__link:focus {
  outline-color: currentColor;
  outline-style: solid;
  outline-offset: 1px;
  outline-width: 2px;
}

.c-nav__dropdown {
  display: none;
  position: absolute;
  top: calc(100% + 1px);
  min-width: max-content;
  padding: 16px;
  border: 1px solid #F0F2F5;
  border-radius: 0 0 12px 12px;
  margin: 0;
  background-color: #FFFFFF;
  box-shadow: 0 8px 16px 0 rgba(58, 61, 72, 0.08);
}

.c-nav__dropdown-item {
  height: 36px;
  margin: 0;
  padding: 0;
  list-style-type: none;
  margin-bottom: 8px;
  color: #16293D;
}
.c-nav__dropdown-item:last-of-type {
  margin-bottom: 0;
}
.c-nav__dropdown-item:hover {
  background-color: #F0F2F5;
  border-radius: 4px;
  color: #2751A3;
}

.c-nav__dropdown-item-link {
  height: 100%;
  text-decoration: none;
  display: block;
}
.c-nav__dropdown-item-link span {
  padding-right: 8px;
}

.c-nav__dropdown-item-icon {
  width: 24px;
  height: 24px;
  margin: 6px;
}

.c-pagination {
  display: inline-flex;
  justify-content: center;
  align-items: center;
  border-radius: 8px;
  border: 1px solid #C8C8C8;
  list-style: none;
  margin-left: 0;
  overflow: hidden;
}

.c-pagination__item {
  display: flex;
  justify-content: center;
  align-items: center;
}
@media screen and (max-width: 839px) {
  .c-pagination__item {
    display: none;
  }
  .c-pagination__item:first-child, .c-pagination__item:last-child, .c-pagination__item.is-last-page, .c-pagination__item.is-active {
    display: flex;
  }
  .c-pagination__item.is-last-page {
    pointer-events: none;
  }
}
.c-pagination__item + .c-pagination__item {
  border-left: 1px solid;
  border-color: inherit;
}

.c-pagination__text,
.c-pagination__link,
.c-pagination__prev,
.c-pagination__next {
  display: flex;
  justify-content: center;
  align-items: center;
  min-width: 48px;
  min-height: 48px;
  padding: 8px;
}

.c-pagination__text {
  color: #25313D;
  opacity: 0.35;
}

.c-pagination__link {
  color: #25313D;
  text-decoration: none;
  transition: color 0.2s, background-color 0.2s;
}
.c-pagination__link:hover {
  color: #1a222b;
  background: #E6E7EB;
}
.is-active > .c-pagination__link {
  box-shadow: inset 0 0 10px -5px #ff8a15;
  font-weight: bold;
  color: #ff8a15;
  cursor: default;
}

.c-pagination__prev,
.c-pagination__next {
  transition: background 0.2s;
  transform: rotate(0.75turn);
}
.c-pagination__prev.is-inactive,
.c-pagination__next.is-inactive {
  color: rgba(37, 49, 61, 0.4);
  background: transparent;
}

.c-pagination__prev {
  transform: rotate(0.25turn);
}

/*
 * Page title
 */
.c-page-title {
  width: calc(100% - 12vw);
  margin-left: auto;
  margin-right: auto;
  overflow-wrap: break-word;
  word-wrap: break-word;
  -webkit-hyphens: auto;
  -ms-hyphens: auto;
  hyphens: auto;
  padding-top: 16px;
  padding-bottom: 16px;
  color: #25313D;
}
@media screen and (min-width: 840px) {
  .c-page-title {
    width: calc((100% / 10) * 8);
  }
}
@media screen and (min-width: 1152px) {
  .c-page-title {
    width: calc((100% / 14) * 12);
    max-width: 1440px;
  }
}
@media screen and (min-width: 840px) {
  .c-page-title {
    padding-top: 48px;
    padding-bottom: 48px;
  }
}

.c-page-title--center {
  text-align: center;
  margin-left: auto;
  margin-right: auto;
}
@media screen and (min-width: 840px) {
  .c-page-title--center {
    width: 75%;
  }
}
@media screen and (min-width: 1152px) {
  .c-page-title--center {
    width: 66.6666666667%;
  }
}

@media screen and (min-width: 840px) {
  .c-page-title__preheading {
    margin-top: -8px;
    margin-bottom: 8px;
  }
}

.c-page-title__heading {
  font-size: 3.5rem;
  line-height: 1.3;
}

.c-page-title__heading-small {
  font-size: 1.25rem;
  display: block;
}

.c-page-title__subheading {
  font-size: 0.9375rem;
  color: #FFFFFF;
}

.c-pre-title {
  font-size: 1rem;
  line-height: 1.5;
  font-weight: 600;
  color: #638DE0;
}

.c-projector {
  position: relative;
  height: 100%;
}

.c-projector__figure {
  display: grid;
  grid-template-rows: 1fr;
  grid-template-columns: 1fr;
  height: 100%;
}

.c-projector__caption {
  font-size: 0.9375rem;
  grid-column: 1;
  grid-row: 2;
  -webkit-user-select: text;
      -ms-user-select: text;
          user-select: text;
  margin-top: 8px;
}

.c-projector__picture {
  grid-column: 1;
  grid-row: 1;
  align-self: end;
  height: 100%;
  min-height: 360px;
  display: block;
  background-color: #E6E7EB;
  opacity: 0;
  transition: opacity 0.5s;
  border-radius: 12px;
}
.ie .c-projector--single-image .c-projector__picture {
  min-height: 400px;
}
.c-projector__picture.is-active {
  opacity: 1;
}

.c-projector__control {
  grid-column: 1;
  grid-row: 1;
  align-self: end;
  margin-bottom: 8px;
  margin-right: 8px;
}

.c-projector__img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  border-radius: 12px;
}
@media screen and (max-width: 839px) {
  .c-projector__img {
    max-height: 78vh;
  }
}

.c-sitemap__item {
  font-size: 1.25rem;
  line-height: 1.2;
}

.c-sitemap__link {
  display: block;
  padding: 4px 0;
  text-decoration: none;
  color: #193E8A;
}
.c-sitemap__link:hover {
  color: #16293D;
  text-decoration: underline;
}

/*
 * Skip Link
 */
.c-skip-link {
  font-size: 0.9375rem;
  position: fixed;
  top: -100vh;
  left: 50%;
  transform: translateX(-50%);
  color: #4079B8;
  text-decoration: none;
}
.c-skip-link:focus {
  outline-color: currentColor;
  outline-style: solid;
  outline-offset: 1px;
  outline-width: 2px;
  top: 5px;
  /* Now the link will appear */
}

.c-slide-indicator {
  display: flex;
  justify-content: flex-end;
  align-items: center;
}

.c-slide-indicator__button {
  position: relative;
  border: none;
  background-color: #F0F2F5;
  color: #FFFFFF;
  height: 40px;
  width: 40px;
}
.c-slide-indicator__button + .c-slide-indicator__button {
  margin-left: 8px;
}
.c-slide-indicator__button[aria-label=previous] > svg {
  transform: rotate(90deg);
}
.c-slide-indicator__button[aria-label=next] > svg {
  transform: rotate(-90deg);
}
.c-slide-indicator__button:hover {
  cursor: pointer;
  background-color: #d3d9e2;
}
.c-slide-indicator__button:focus {
  outline: none;
  background-color: #d3d9e2;
}

.c-slide-indicator__dot {
  position: relative;
  display: inline-block;
  width: 30px;
  height: 30px;
  background-color: transparent;
  border: none;
  cursor: pointer;
  transition-property: background-color, opacity;
  transition-duration: 250ms;
}
.c-slide-indicator__dot:focus {
  outline: none;
}
.c-slide-indicator__dot:hover:not(.is-active), .c-slide-indicator__dot:focus:not(.is-active) {
  opacity: 0.5;
}
.c-slide-indicator__dot:before, .c-slide-indicator__dot:after {
  content: "";
  position: absolute;
  background-clip: content-box;
  transition-property: transform, background-color, opacity;
  transition-duration: 0.3s;
  transition-timing-function: ease-in-out;
  border-radius: 100%;
}
.c-slide-indicator__dot:before {
  top: calc((30px - 8px) / 2);
  right: calc((30px - 8px) / 2);
  bottom: calc((30px - 8px) / 2);
  left: calc((30px - 8px) / 2);
  background-color: #FFFFFF;
}
.c-slide-indicator__dot:after {
  top: calc((30px - 12px) / 2);
  right: calc((30px - 12px) / 2);
  bottom: calc((30px - 12px) / 2);
  left: calc((30px - 12px) / 2);
  border: 1px solid #FFFFFF;
  transform: scale(1.4);
  opacity: 0;
}
.c-slide-indicator__dot.is-active:before {
  background-color: #FFFFFF;
  border-color: rgba(255, 255, 255, 0.9);
  transform: scale(0.75);
}
.c-slide-indicator__dot.is-active:after {
  opacity: 0.9;
  transform: scale(1);
}
.c-slide-indicator__dot:focus {
  opacity: 1 !important;
}
.c-slide-indicator__dot:focus:before {
  box-shadow: 0 0 0 2px black, 0 0 10px 1px white;
}
.c-slide-indicator__dot:focus:after {
  box-shadow: 0 0 0 2px black, 0 0 10px 1px white;
}

/**
 * 1. Color gets inherited and used for nested elements with 'currentColor' property
 * 2. Reset default button styling
 */
.c-textbutton {
  display: inline-flex;
  justify-content: center;
  align-items: center;
  color: #193E8A;
  /* 1 */
  padding: 0;
  /* 2 */
  background-color: transparent;
  /* 2 */
  border: none;
  /* 2 */
  cursor: pointer;
  text-decoration: none;
  transition: color 0.3s;
}
.c-textbutton:hover, .c-textbutton:active {
  outline: none !important;
}
.c-textbutton:hover:not(:disabled) {
  color: #0f2553;
}
.c-textbutton:disabled {
  opacity: 0.5;
  cursor: not-allowed;
}
.c-textbutton:focus {
  outline-color: currentColor;
  outline-style: solid;
  outline-offset: 1px;
  outline-width: 2px;
}

.c-textbutton__text {
  font-size: 0.8125rem;
  line-height: 1;
}

.c-textbutton__icon {
  position: relative;
  margin-left: 8px;
  transition: transform 0.3s;
}
.c-textbutton--icon .c-textbutton__icon {
  display: block;
}

.c-textbutton__icon--right {
  transform: rotate(-90deg);
  color: #ff8a15;
}

.c-textbutton--is-reversed .c-textbutton__text {
  order: 2;
}
.c-textbutton--is-reversed .c-textbutton__icon {
  order: 1;
  top: 1px;
  margin-left: 0;
  margin-right: 8px;
  transform: rotate(0.5turn);
}
.c-textbutton--is-reversed:hover:not(:disabled) .c-textbutton__icon {
  transform: rotate(0.5turn) translateX(3px);
}

.c-toggle {
  list-style: none;
  margin-left: 0;
}

.c-toggle__item {
  border-radius: 8px;
  border: 1px solid #C9CACD;
}
.c-toggle__item + .c-toggle__item {
  margin-top: 16px;
}

.c-toggle__title {
  position: relative;
  padding-left: 96px;
}
.c-toggle__title[data-toggle-id] {
  cursor: pointer;
}

.c-toggle__icon {
  position: absolute;
  top: 18px;
  left: calc(48px);
  width: 20px;
  height: 20px;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  color: #ff8a15;
  border: 2px solid currentColor;
  transform: translateX(-50%);
  transition: all 150ms linear;
}
.c-toggle__icon > svg {
  width: 10px;
}
.c-toggle__icon.plus {
  display: flex;
}
.c-toggle__title.is-active .c-toggle__icon.plus {
  display: none;
}
.c-toggle__title.is-active .c-toggle__icon.minus {
  display: flex;
}
.c-toggle__icon.check {
  display: flex;
  border: none;
}
.c-toggle__icon.check > svg {
  width: 24px;
}
.c-toggle__title[data-toggle-id]:not(.is-active):hover .c-toggle__icon {
  color: #FFFFFF;
}

.c-toggle__label {
  font-size: 0.9375rem;
  display: flex;
  padding: 16px 0;
  font-weight: bold;
  color: #ff8a15;
  transition: all 150ms linear;
}
.c-toggle__title[data-toggle-id]:not(.is-active):hover .c-toggle__label {
  color: #FFFFFF;
}

.c-toggle__content {
  max-height: 0;
  opacity: 0;
  padding-left: 96px;
  padding-right: 48px;
  pointer-events: none;
  transition: all 250ms ease-in-out;
}
.is-active ~ .c-toggle__content {
  padding-bottom: 16px;
  max-height: 1000px;
  opacity: 1;
  pointer-events: all;
}

.c-trademark {
  font-size: 0.875rem;
  line-height: 1.7142857143;
  display: inline-flex;
  align-items: center;
  color: rgba(255, 255, 255, 0.6);
  text-decoration: none;
  transition: color 0.15s ease-in-out;
}
.c-trademark:hover {
  color: white;
}

.c-trademark__komma-logo {
  margin-right: 2px;
}
.c-trademark:hover .c-trademark__komma-logo {
  transform-origin: 12px 12px;
  animation: logo-spin 1.8s ease-in-out infinite;
  color: #ff6a14;
}

.c-trademark__heart {
  color: #ff6a14;
  --heart-opacity: 0;
}
.c-trademark:hover .c-trademark__heart {
  --heart-opacity: 1;
}

.c-trademark__text {
  display: flex;
  margin: -2px;
}
.c-trademark__text > * {
  margin: 2px;
  display: flex;
  align-items: center;
}

.c-trademark__icon {
  margin-left: 8px;
}

@keyframes logo-spin {
  from {
    transform: rotate(0);
  }
  to {
    transform: rotate(-1turn);
  }
}
.c-vacancy-properties {
  list-style: none;
  display: flex;
  flex-wrap: wrap;
  margin-left: 0;
}

.c-vacancy-properties__item {
  display: flex;
  align-items: center;
  color: #4079B8;
  margin-top: 4px;
  margin-bottom: 4px;
}
.c-vacancy-properties__item:nth-last-child(n+2) {
  margin-right: 32px;
}

.c-vacancy-properties__icon {
  display: flex;
  align-items: center;
  width: 24px;
  height: 24px;
  margin-right: 8px;
}

.c-video {
  position: relative;
  height: 0;
  width: 100%;
  padding-bottom: 56.25%;
  background-color: #FFFFFF;
}

.c-video__iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.c-hero-card {
  position: relative;
  width: 100%;
  display: flex;
  flex-direction: column;
  gap: 24px;
  max-width: 570px;
  margin-left: auto;
  margin-right: auto;
  padding-block: clamp(32px, 4vw, 64px);
  padding-inline: clamp(32px, 3vw, 48px);
  color: white;
  border-radius: 24px;
  background-image: linear-gradient(0deg, #193E8A 0%, #2751A3 100%);
}
@media screen and (min-width: 790px) {
  .c-hero-card {
    display: none;
  }
}
.c-hero-card__buttons {
  width: 100%;
  display: flex;
  justify-content: space-between;
}

.c-faq__group-title {
  margin-bottom: clamp(24px, 2vw, 32px);
}

.c-faq__list {
  list-style: none;
  margin-left: 0;
  color: #25313D;
}

.c-faq__item {
  border-bottom: 1px solid rgba(99, 141, 224, 0.3);
}

.c-faq__question {
  display: flex;
  align-items: flex-start;
  padding: 12px 0;
  font-size: 0.9375rem;
  line-height: 1.6;
  font-weight: 400;
  cursor: pointer;
  transition: background-color 250ms;
}
.c-faq__item.is-active .c-faq__question {
  background-color: transparent !important;
}
.c-faq__question:hover {
  background-color: #F0F2F5;
}

.c-faq__icon {
  margin-top: -1px;
  color: #ff8a15;
  flex: 0 0 40px;
  padding: 0 0 0 8px;
}
.c-faq__item.is-active .c-faq__icon svg {
  transform: rotate(180deg);
}

.c-faq__title {
  transition: color 200ms;
}
.c-faq__item.is-active .c-faq__title {
  font-weight: 600;
  color: #193E8A;
}

.c-faq__answer {
  opacity: 0;
  max-height: 0;
  overflow: hidden;
  padding-right: 40px;
  padding-left: 40px;
  transform: translateX(55px);
  transition: opacity 200ms ease-out, padding 200ms cubic-bezier(0, 0.5, 0.5, 1) 200ms, transform 200ms cubic-bezier(0, 0.5, 0.5, 1) 200ms, max-height 200ms cubic-bezier(0, 0.5, 0.5, 1) 200ms;
}
.c-faq__item.is-active .c-faq__answer {
  opacity: 1;
  max-height: 500px;
  padding-bottom: 24px;
  transform: none;
  transition: max-height 200ms cubic-bezier(0, 0, 1, 0.15), padding 200ms cubic-bezier(0, 0, 1, 0.15), transform 200ms cubic-bezier(0, 0, 1, 0.15), opacity 200ms ease-out 200ms;
}

.c-insurer__title {
  margin-bottom: clamp(40px, 3.6vw, 60px);
  text-align: center;
}

.c-insurer__grid {
  position: relative;
  display: grid;
  grid-template-columns: 1fr 1fr;
  grid-gap: 40px;
}
@media screen and (max-width: 649px) {
  .c-insurer__grid > *:nth-child(odd) {
    justify-self: flex-end;
  }
}
@media screen and (min-width: 650px) {
  .c-insurer__grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(156px, 1fr));
    grid-gap: 56px 72px;
    margin: 0 clamp(24px, 1.9vw, 48px);
  }
}

.c-insurer {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  max-width: 120px;
}
@media screen and (min-width: 650px) {
  .c-insurer {
    min-width: 156px;
    max-width: 100%;
  }
}

.c-insurer__gradient {
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  background-image: linear-gradient(0deg, #FFFFFF 0%, rgba(255, 255, 255, 0) 100%);
  height: clamp(65px, 6vw, 100px);
}

.c-usps {
  margin: 0;
  list-style-type: none;
}
@media screen and (max-width: 899px) {
  .c-usps > * + * {
    margin-top: 40px;
  }
}
@media screen and (min-width: 900px) and (max-width: 1339px) {
  .c-usps {
    max-width: 820px;
    margin: 0 auto;
  }
}
@media screen and (min-width: 900px) {
  .c-usps {
    display: grid;
    grid-template-columns: repeat(auto-fit, 216px);
    grid-gap: 48px 16px;
    justify-content: space-between;
  }
  .c-usps[data-items="1"] {
    justify-content: center;
  }
  .c-usps[data-items="2"] {
    max-width: 600px;
    margin-left: auto;
    margin-right: auto;
  }
  .c-usps[data-items="3"] {
    max-width: 800px;
    margin-left: auto;
    margin-right: auto;
  }
  .c-usps[data-items="4"] {
    max-width: 1000px;
    margin-left: auto;
    margin-right: auto;
  }
}

@media screen and (max-width: 899px) {
  .c-usps__item {
    display: flex;
  }
  .c-usps__item > * + * {
    margin-left: 16px;
  }
}
@media screen and (min-width: 900px) {
  .c-usps__item {
    text-align: center;
  }
}

.c-usps__item-icon {
  flex: 0 0 auto;
  background-color: #638DE0;
  width: 48px;
  height: 48px;
  border-radius: 50%;
  display: flex;
  justify-content: center;
  align-items: center;
  margin: -12px 0 0;
}
.c-usps__item-icon img {
  max-width: 24px;
  height: auto;
}
@media screen and (min-width: 900px) {
  .c-usps__item-icon {
    width: 96px;
    height: 96px;
    margin: 0 auto 16px;
  }
  .c-usps__item-icon img {
    max-width: 48px;
  }
}

.c-usps__item-icon--number {
  color: white;
  font-size: 1.125rem;
  line-height: 1.2222222222;
  font-weight: 600;
}
@media screen and (min-width: 900px) {
  .c-usps__item-icon--number {
    font-size: 2rem;
    line-height: 1.0625;
  }
}

.c-usps__header {
  margin-bottom: 4px;
  font-family: "Poppins", sans-serif;
  font-size: 1.0625rem;
  line-height: 1.4117647059;
  font-weight: 600;
  color: #193E8A;
}
@media screen and (min-width: 900px) {
  .c-usps__header {
    margin-bottom: 16px;
  }
}

.c-repair-types {
  position: relative;
}
.c-repair-types .swiper {
  position: relative;
  left: -12px;
  width: 100%;
}
@media screen and (max-width: 640px) {
  .c-repair-types .swiper {
    width: 100vw;
    left: -6vw;
  }
}
.c-repair-types .swiper:not(.c-repair-types .swiper.swiper-initialized) {
  max-height: 114px;
  overflow: hidden;
}
.c-repair-types .swiper:after {
  display: none;
  position: absolute;
  content: "";
  bottom: 0;
  width: 100px;
  height: 140px;
  background-color: transparent;
  z-index: 2;
  pointer-events: none;
  right: 0;
  background-image: linear-gradient(270deg, #fff 0%, rgba(255, 255, 255, 0) 100%);
}
@media screen and (min-width: 641px) {
  .c-repair-types .swiper:after {
    display: block;
  }
}

.c-repair__header {
  font-size: 1.25rem;
  line-height: 1.6;
  font-weight: 600;
  color: #193E8A;
  margin-bottom: 32px;
}

.c-repair-types__item {
  min-width: 128px;
  height: 116px;
  display: flex;
  flex-direction: column;
  text-decoration: none;
  text-align: center;
  transition-duration: 0.3s;
}
.c-repair-types__item p {
  margin-top: 8px;
}
.c-repair-types__item:hover {
  transform: scale(1.04);
}

.c-repair-types__icon {
  background-color: #FFFFFF;
  border: 1px solid rgba(230, 231, 235, 0.48);
  box-shadow: 0 6px 9px 0 rgba(58, 61, 72, 0.08);
  border-radius: 8px;
  min-height: 80px;
  display: flex;
  justify-content: center;
}

.c-repair-types__button {
  display: none;
  width: 50px;
  height: 100%;
  position: absolute;
  right: 0;
  bottom: 0;
  z-index: 4;
  border: none;
  background: transparent;
  cursor: pointer;
}
@media screen and (min-width: 641px) {
  .c-repair-types__button {
    display: block;
  }
}
.c-repair-types__button.swiper-button-disabled {
  display: none;
}

.c-repair-types__button-icon {
  position: absolute;
  width: 12px;
  height: 7px;
  right: 0;
  top: 50%;
  transform: rotate(-90deg) translateX(50%);
  color: #ff8a15;
}

.c-before-after {
  position: relative;
  padding-top: 64px;
}
.c-before-after:after {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: calc(100% - 64px);
  background-image: linear-gradient(180deg, #2751A3 0%, #193E8A 75%);
}
@media screen and (max-width: 939px) {
  .c-before-after {
    display: none;
  }
}

.c-before-after__header {
  font-family: "Poppins", sans-serif;
  font-size: 20px;
  color: #193E8A;
  letter-spacing: -0.2px;
  text-align: center;
  line-height: 32px;
  margin-bottom: 16px;
  font-weight: 600;
}
@media screen and (max-width: 939px) {
  .c-before-after__header {
    display: none;
  }
}

.c-before-after__placeholder {
  position: relative;
  z-index: 1;
  width: 75%;
  max-width: 960px;
  margin: auto;
  -webkit-user-select: none;
      -ms-user-select: none;
          user-select: none;
}

.c-before-after__wrapper {
  position: relative;
  width: 100%;
  height: 0;
  border-radius: 24px;
  overflow: hidden;
}
.c-before-after__wrapper img {
  vertical-align: middle;
  border: none;
  max-width: none;
}

.c-before-after__before,
.c-before-after__after {
  width: 100%;
  height: 100%;
  background-repeat: no-repeat;
  background-color: white;
  background-size: cover;
  background-position: center;
  position: absolute;
  top: 0;
  left: 0;
  pointer-events: none;
  overflow: hidden;
}

.c-before-after__before:after,
.c-before-after__after:after {
  color: #FFFFFF;
  font-size: 0.9375rem;
  line-height: 1.6;
  font-weight: 600;
  padding-bottom: 16px;
  position: absolute;
  bottom: 0;
}

.c-before-after__before:after {
  content: attr(data-label);
  left: 0;
  padding-left: 16px;
}

.c-before-after__after:after {
  content: attr(data-label);
  right: 0;
  padding-right: 16px;
}

.content-image {
  height: 100%;
}

.c-before-after__scroller {
  position: absolute;
  left: 50%;
  display: flex;
  align-items: center;
  width: 48px;
  height: 100%;
}

.c-before-after__scroll-button {
  position: relative;
  z-index: 2;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 48px;
  height: 48px;
  background-color: #ff8a15;
  border-radius: 50%;
  cursor: pointer;
}

.c-before-after__scroller:hover {
  opacity: 1;
}

.scrolling {
  pointer-events: none;
  opacity: 1;
}

.c-before-after__scroller:before {
  content: "";
  position: absolute;
  top: 0;
  left: 50%;
  display: block;
  height: 100%;
  width: 2px;
  margin-left: -1px;
  background: #FFFFFF;
}

.c-before-after__car {
  position: absolute;
  bottom: 100%;
  width: 44px;
  transform: translateY(-4px);
}

.c-reviews {
  display: flex;
  justify-content: space-between;
  color: #FFFFFF;
  text-align: center;
}
@media screen and (min-width: 840px) {
  .c-reviews {
    margin-bottom: clamp(160px, 12vw, 200px);
  }
}
@media screen and (max-width: 839px) {
  .c-reviews {
    flex-direction: column;
  }
}

.c-reviews__card {
  position: relative;
  top: 80px;
  display: flex;
  flex-direction: column;
  justify-content: center;
  width: 41.6666666667%;
  background-color: #ff8a15;
  border-radius: 24px;
  padding: 3.4vw;
}
@media screen and (max-width: 839px) {
  .c-reviews__card {
    top: -72px;
    margin: 0;
    width: 100%;
    padding: 48px 8px;
  }
}

.c-reviews__card-header {
  font-size: 1.25rem;
  line-height: 1.4;
  font-weight: 600;
}
@media screen and (max-width: 839px) {
  .c-reviews__card-header {
    max-width: 66%;
    margin-left: auto;
    margin-right: auto;
    font-size: 0.9375rem;
    line-height: 1.6;
    font-family: "Montserrat", sans-serif;
    font-weight: 400;
  }
}

.c-reviews__card-score {
  font-weight: 600;
}
.c-reviews__card-score {
  font-size: 84px;
}
@media screen and (min-width: 1000px) {
  .c-reviews__card-score {
    font-size: calc(4vw + 44px);
  }
}
@media screen and (min-width: 1300px) {
  .c-reviews__card-score {
    font-size: 96px;
  }
}

.c-reviews__card-logo {
  width: 130px;
  margin: 16px auto 0;
}

.c-review-slider {
  display: flex;
  align-items: center;
  padding-top: 64px;
  padding-bottom: 64px;
}
@media screen and (max-width: 839px) {
  .c-review-slider {
    padding-top: 0;
  }
}
@media screen and (min-width: 840px) and (max-width: 1399px) {
  .c-review-slider {
    width: 58.3333333333%;
  }
}
@media screen and (min-width: 1400px) {
  .c-review-slider {
    width: 50%;
  }
}
.c-review-slider .swiper:not(.c-review-slider .swiper.swiper-initialized) {
  max-height: 0;
  overflow: hidden;
}

.c-review-slider--in-cta {
  width: 100%;
  padding-top: 0;
  text-align: center;
}

.c-review-slider__slider-wrapper {
  display: flex;
  align-items: flex-start;
  width: 100%;
}
@media screen and (max-width: 839px) {
  .c-review-slider__slider-wrapper {
    flex-wrap: wrap;
    justify-content: center;
  }
}

.c-review {
  font-size: 0.9375rem;
  line-height: 1.6;
  display: flex;
  flex-direction: column;
  justify-content: center;
  min-height: 100%;
}

.c-review__name {
  font-weight: 600;
  margin-top: 40px;
}
.c-review-slider--in-cta .c-review__name {
  color: #193E8A;
}

.c-review__score {
  font-weight: 600;
  margin-bottom: 40px;
  display: flex;
  justify-content: center;
}
.c-review__score span {
  padding-left: 6px;
}

.c-review__button {
  flex: 0 0 auto;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 40px;
  height: 40px;
  border: 1px solid #FFFFFF;
  border-radius: 50%;
  background: transparent;
  margin-top: 64px;
  position: relative;
  opacity: 0.5;
  transition: opacity 0.3s;
}
@media screen and (max-width: 839px) {
  .c-review__button {
    margin-top: 32px;
    margin-left: 8px;
    margin-right: 8px;
  }
}
@media screen and (min-width: 840px) and (max-width: 1399px) {
  .c-review__button {
    margin-left: 24px;
    margin-right: 24px;
  }
}
@media screen and (min-width: 1400px) {
  .c-review__button {
    width: 56px;
    height: 56px;
  }
}
.c-review__button:hover {
  opacity: 1;
}
@media screen and (max-width: 839px) {
  .c-review__button {
    order: 2;
  }
}
.c-review-slider--in-cta .c-review__button {
  opacity: 1;
  color: #193E8A;
  border-color: #193E8A;
}
.c-review-slider--in-cta .c-review__button:hover {
  opacity: 0.5;
}

@media screen and (min-width: 1400px) {
  .c-review__button--right {
    margin-left: 40px;
  }
}
.c-review__button--right svg {
  transform: rotate(270deg);
}

@media screen and (min-width: 1400px) {
  .c-review__button--left {
    margin-right: 40px;
  }
}
.c-review__button--left svg {
  transform: rotate(90deg);
}

.swiper-container {
  height: 100%;
  max-height: 100vw;
  min-height: 0;
  min-width: 0;
  max-width: 100vw;
  width: 100%;
  overflow: hidden;
}
.swiper-container .swiper-slide {
  width: auto;
  flex-shrink: 0;
  display: block;
  height: 100%;
  max-height: 100%;
}
.swiper-container .swiper-wrapper {
  max-height: 100%;
  height: 100% t;
  display: flex;
}

.c-header-top {
  width: calc(100% - 12vw);
  margin-left: auto;
  margin-right: auto;
}
@media screen and (min-width: 840px) {
  .c-header-top {
    width: calc((100% / 10) * 8);
  }
}
@media screen and (min-width: 1152px) {
  .c-header-top {
    width: calc((100% / 14) * 12);
    max-width: 1440px;
  }
}
@media screen and (min-width: 500px) {
  .c-header-top {
    display: flex;
    justify-content: space-between;
    align-items: center;
    min-height: 48px;
  }
}

.c-header-top__container {
  height: 100%;
}

.c-header-top__item {
  font-size: 0.8125rem;
}

.c-header-top__item--location {
  width: 200px;
}
.c-header-top__item--location svg {
  color: #C9CACD;
  width: 17px;
  height: 12px;
}
@media screen and (max-width: 1099px) {
  .c-header-top__item--location {
    display: none;
  }
}

.c-header-top__item--phone {
  align-self: stretch;
  display: flex;
  align-items: center;
  justify-content: center;
}
@media screen and (max-width: 499px) {
  .c-header-top__item--phone {
    width: 100%;
    min-height: 48px;
  }
}
@media screen and (min-width: 500px) {
  .c-header-top__item--phone {
    justify-content: flex-end;
    width: 200px;
  }
}

.c-header-top__is-open {
  font-size: 0.8125rem;
  position: relative;
  padding-right: 16px;
}
.c-header-top__is-open:before {
  content: "";
  display: inline-block;
  margin-right: 12px;
  width: 6px;
  height: 6px;
  border-radius: 50%;
  transform: translateY(-2px);
}
.c-header-top__is-open.open:before {
  background-color: #16C85E;
}
.c-header-top__is-open.closed:before {
  background-color: red;
}
.c-header-top__is-open:after {
  content: "";
  position: absolute;
  right: 0;
  top: 50%;
  display: inline-block;
  width: 8px;
  height: 1px;
  background-color: #C9CACD;
}
@media screen and (max-width: 1099px) {
  .c-header-top__is-open {
    padding-right: 0;
  }
  .c-header-top__is-open:after {
    display: none;
  }
}
@media screen and (max-width: 499px) {
  .c-header-top__is-open {
    display: none;
  }
}

.c-header-top__hours {
  color: #98a1a9;
  padding-left: 8px;
}
@media screen and (max-width: 1099px) {
  .c-header-top__hours {
    display: none;
  }
}

.c-header-top__phone {
  text-decoration: none;
}
.c-header-top__phone:hover {
  text-decoration: underline;
}

.c-stars {
  display: flex;
  justify-content: center;
  align-items: center;
  width: max-content;
}

.c-stars__star {
  width: 14px;
  height: 14px;
  margin-left: 4px;
}
.c-stars__star:first-of-type {
  margin-left: 0;
}

.c-footer-card {
  width: 264px;
  background-color: #638DE0;
  border-radius: 24px;
  padding: 32px;
}
.c-footer-card svg {
  margin-bottom: 8px;
}

.c-footer-card__text {
  font-size: 0.75rem;
}

.c-text-image-faq h5 {
  font-size: 20px;
  font-weight: 600;
  color: #193E8A;
  padding-bottom: 24px;
}

.c-text-image-hours {
  color: #2751A3;
  margin-bottom: 40px;
}

.c-text-image-hours--on-dark {
  color: #FFFFFF;
}

.c-team-card {
  display: flex;
  flex-direction: column;
}

.c-team-card__img {
  border-radius: 12px;
  width: 100%;
  height: auto;
}

.c-team-card__info {
  color: #193E8A;
}

.c-team-card__heading {
  font-size: 1.25rem;
  line-height: 1.6;
}

.c-team-card__subheading {
  font-size: 0.9375rem;
  line-height: 1.6;
}

.c-damage-form {
  position: relative;
  margin-bottom: 40px;
  padding: 48px;
  color: #FFFFFF;
  background-image: linear-gradient(180deg, #2751A3 0%, #193E8A 75%);
  border-radius: 24px;
}
@media screen and (max-width: 551px) {
  .c-damage-form {
    padding-left: 24px;
    padding-right: 24px;
  }
}

.c-damage-form__header {
  font-size: 1.25rem;
  line-height: 1.6;
}
@media screen and (min-width: 360px) and (max-width: 1439px) {
  .c-damage-form__header {
    font-size: calc(1.1111111111vw + 16px);
    line-height: calc(1.1111111111vw + 28px);
  }
}
@media screen and (min-width: 1440px) {
  .c-damage-form__header {
    font-size: 2rem;
    line-height: 1.375;
  }
}

.c-damage-form__subheader {
  font-size: 1.25rem;
  line-height: 1.6;
  font-family: "Poppins", sans-serif;
}

.c-damage-form__list-item {
  list-style-image: url("/img/check/checked.svg");
  padding-left: 11px;
  font-size: 0.9375rem;
  line-height: 1.6;
  color: #B6CEF0;
}

.c-damage-form__name-inputs {
  display: grid;
  grid-template-columns: 10fr 7fr 10fr;
  gap: 16px;
  color: #25313D;
}
@media screen and (max-width: 551px) {
  .c-damage-form__name-inputs {
    grid-template-columns: 2fr 3fr;
  }
  .c-damage-form__name-inputs .c-damage-form__input:first-child {
    grid-column: 1/span 2;
  }
}

.c-damage-form__input {
  position: relative;
}
.c-damage-form__input input {
  font-size: 0.9375rem;
  line-height: 1.6;
  color: #25313D;
  border: 1px solid #FFFFFF;
  border-radius: 6px;
  display: block;
  padding: 16px;
  width: 100%;
}
.c-damage-form__input input.down {
  padding-top: 24px;
  padding-bottom: 8px;
}
.c-damage-form__input input.error {
  border: 1px solid #ff6a14;
  background-color: #ffe7d9;
}
.c-damage-form__input svg {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  right: 16px;
  color: #16C85E;
}
.c-damage-form__input .fieldName {
  font-size: 0.75rem;
  line-height: 1.3333333333;
  color: #16C85E;
  position: absolute;
  top: 8px;
  left: 16px;
  -webkit-user-select: none;
      -ms-user-select: none;
          user-select: none;
  pointer-events: none;
  display: none;
}
.c-damage-form__input .fieldName.visible {
  display: initial;
}

.c-damage-form__input--full-width {
  width: 100%;
}

.c-damage-form__input--chassis-number {
  margin-top: 16px;
}

.c-damage-form__name-input-label {
  font-size: 0.9375rem;
  line-height: 1.6;
  margin-bottom: 8px;
  font-weight: 600;
}
@media screen and (min-width: 700px) {
  .c-damage-form__name-input-label {
    font-size: 1.25rem;
    line-height: 1.6;
    font-weight: 400;
    margin-bottom: 16px;
  }
}

.c-damage-form__notification {
  display: flex;
  padding: 13px 12px 13px 16px;
  min-height: 48px;
  background: rgba(0, 20, 61, 0.16);
  border-radius: 6px;
  font-size: 13px;
  color: #B6CEF0;
}
.c-damage-form__notification svg {
  margin-top: 2px;
  flex: 0 0 auto;
  margin-right: 8px;
  color: #B6CEF0;
}

.c-damage-form__validation-error {
  position: relative;
  margin-top: 8px;
  margin-bottom: 8px;
  padding: 11px 16px 11px 39px;
  background: rgba(0, 20, 61, 0.16);
  border-radius: 6px;
  font-size: 13px;
  color: #B6CEF0;
  width: 100%;
}
.c-damage-form__validation-error svg {
  position: absolute;
  left: 16px;
  top: 50%;
  transform: translateY(-50%);
  color: #B6CEF0;
}

.c-damage-form__date-label {
  margin-bottom: 8px;
  text-align: right;
  font-size: 0.9375rem;
  line-height: 1.6;
  color: #B6CEF0;
}
@media screen and (max-width: 551px) {
  .c-damage-form__date-label {
    display: none;
  }
}

.c-damage-form__date-label--mobile {
  display: none;
  text-align: left;
}
@media screen and (max-width: 551px) {
  .c-damage-form__date-label--mobile {
    display: block;
  }
}

.c-damage-form__dark {
  background-color: #193e87;
  padding: 24px;
  border-radius: 12px;
}

.c-damage-form__row {
  width: 100%;
  display: flex;
  gap: 16px;
  justify-content: space-between;
}
.c-damage-form__row + .c-damage-form__row {
  margin-top: 24px;
}
@media screen and (max-width: 551px) {
  .c-damage-form__row {
    flex-direction: column;
  }
}

.c-damage-form__step-icon {
  position: absolute;
  top: 3px;
  left: -68px;
  width: 40px;
  height: 40px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  background-color: #638DE0;
}
@media screen and (max-width: 619px) {
  .c-damage-form__step-icon {
    display: none;
  }
}
.c-damage-form__image-steps .c-damage-form__step-icon {
  top: 0;
  left: -92px;
}

.c-damage-form__licence-plate-date-wrapper {
  display: grid;
  grid-template-columns: 1fr 50%;
  column-gap: 16px;
}
@media screen and (max-width: 551px) {
  .c-damage-form__licence-plate-date-wrapper {
    grid-template-columns: 100%;
  }
}

.c-damage-form__licence-plate {
  position: relative;
  color: #25313D;
}
.c-damage-form__licence-plate input {
  width: 100%;
  height: 56px;
  border: none;
  border-radius: 8px 6px 6px 8px;
  padding-top: 4px;
  padding-left: 45px;
}
.c-damage-form__licence-plate.error {
  border: 1px solid #ff6a14;
  background-color: #ffe7d9;
  border-radius: 6px;
}
.c-damage-form__licence-plate.error input {
  background-color: transparent;
}

.c-damage-form__licence-plate-figure {
  position: absolute;
  left: 0;
  top: 0;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: space-between;
  width: 32px;
  height: 100%;
  padding: 6px 0 4px;
  background-color: #638DE0;
  border-top-left-radius: 6px;
  border-bottom-left-radius: 6px;
  text-align: center;
  color: white;
  -webkit-user-select: none;
      -ms-user-select: none;
          user-select: none;
  cursor: pointer;
}

.c-damage-form__licence-plate-check {
  position: absolute;
  top: 50%;
  right: 16px;
  color: #16C85E;
  transform: translateY(-50%);
}

.c-damage-form__date-wrapper {
  position: relative;
  max-height: 58px;
}
.c-damage-form__date-wrapper.error {
  border: 1px solid #ff6a14;
  background-color: #ffe7d9;
  border-radius: 6px;
}
.c-damage-form__date-wrapper.error input {
  background: transparent;
}

.c-damage-form__date-icon {
  position: absolute;
  right: 16px;
  top: 50%;
  pointer-events: none;
  transform: translateY(-50%);
  color: #638DE0;
}

.c-damage-form__date-icon--green {
  color: #16C85E;
}

.c-damage-form__date-icon--red {
  color: red;
}

.c-damage-form__date {
  max-width: 100%;
  color: #25313D;
  border-radius: 6px;
  height: 56px;
  border: none;
  padding-top: 4px;
  padding-left: 16px;
}
@media screen and (max-width: 551px) {
  .c-damage-form__date {
    width: 100%;
  }
}

.c-damage-form__question-wrapper {
  margin-top: 32px;
}

.c-damage-form__question {
  font-size: 0.9375rem;
  line-height: 1.6;
  font-weight: 600;
}

.c-damage-form__country-toggle {
  margin-top: 8px;
  cursor: pointer;
  font-size: 0.8125rem;
  line-height: 1.3846153846;
  text-decoration: underline;
}

.c-damage-form__checkbox {
  width: 16px;
  height: 16px;
  margin: 24px 12px 0 0;
  -webkit-appearance: none;
          appearance: none;
  border: 1px solid #FFFFFF;
  border-radius: 2px;
  transform: translateY(3px);
}
.c-damage-form__checkbox:checked {
  border: 1px solid #16C85E;
  background-color: #16C85E;
  background-image: url("/img/check/checkbox-check.svg");
  background-repeat: no-repeat;
  background-position: center;
}

.c-damage-form__radio {
  -webkit-appearance: none;
          appearance: none;
  width: 16px;
  height: 16px;
  border: 1px solid #FFFFFF;
  border-radius: 50%;
  margin: 0 12px 0 0;
  transform: translateY(3px);
}
.c-damage-form__radio:checked {
  border: 5px solid #16C85E;
  background-color: #FFFFFF;
}
.c-damage-form__radio.error {
  border-color: #ff8a15;
}

.c-damage-form__label {
  margin-right: 40px;
}

.c-damage-form__location-input-wrapper {
  width: 100%;
}

.c-damage-form__location-label {
  margin-bottom: 8px;
  margin-top: 24px;
  font-size: 0.9375rem;
  line-height: 1.6;
  color: #B6CEF0;
}

.c-damage-form__location-input {
  position: relative;
}
.c-damage-form__location-input input {
  display: block;
  width: 100%;
  padding: 16px;
  font-size: 0.9375rem;
  line-height: 1.6;
  border: none;
  border-radius: 6px;
  color: #25313D;
}
.c-damage-form__location-input input:last-of-type {
  margin-right: 0;
}
.c-damage-form__location-input input.down {
  padding-top: 24px;
  padding-bottom: 8px;
}
.c-damage-form__location-input svg {
  position: absolute;
  right: 16px;
  top: 50%;
  transform: translateY(-50%);
  color: #16C85E;
}
.c-damage-form__location-input .fieldName {
  font-size: 0.75rem;
  line-height: 1.3333333333;
  color: #16C85E;
  position: absolute;
  top: 8px;
  left: 16px;
  -webkit-user-select: none;
      -ms-user-select: none;
          user-select: none;
  pointer-events: none;
  display: none;
}
.c-damage-form__location-input .fieldName.visible {
  display: initial;
}
.c-damage-form__location-input.error {
  border: 1px solid #ff6a14;
  background-color: #ffe7d9;
  border-radius: 6px;
}
.c-damage-form__location-input.error input {
  background: transparent;
}

.c-damage-form__select {
  position: relative;
  display: block;
  width: 100%;
  font-size: 0.9375rem;
  line-height: 1.6;
  border: none;
  border-radius: 6px;
  color: #25313D;
  background-color: white;
  cursor: pointer;
}
.c-damage-form__select select {
  -webkit-appearance: none;
          appearance: none;
  background-color: transparent;
  border: none;
  margin: 0;
  width: 100%;
  font-family: inherit;
  font-size: inherit;
  cursor: inherit;
  line-height: inherit;
  outline: none;
  padding: 16px;
}
.c-damage-form__select svg {
  position: absolute;
  right: 16px;
  top: 50%;
  transform: translateY(-50%);
  color: #16C85E;
}
.c-damage-form__select svg.check {
  color: #25313D;
}
.c-damage-form__select.error {
  border: 1px solid #ff6a14;
  background-color: #ffe7d9;
}

.c-damage-form__location-input--wide {
  width: 61%;
}
@media screen and (max-width: 551px) {
  .c-damage-form__location-input--wide {
    width: 100%;
  }
}

.c-damage-form__location-input--extra-wide {
  width: 70%;
}
@media screen and (max-width: 551px) {
  .c-damage-form__location-input--extra-wide {
    width: 100%;
  }
}

.c-damage-form__image-steps {
  position: relative;
  display: flex;
  justify-content: space-between;
}
@media screen and (max-width: 551px) {
  .c-damage-form__image-steps {
    flex-direction: column;
    gap: 12px;
  }
}

.c-damage-form__image-step {
  position: relative;
  display: flex;
  flex-direction: column;
}
.c-damage-form__image-step p {
  font-size: 13px;
  margin-bottom: 8px;
}
@media screen and (max-width: 551px) {
  .c-damage-form__image-step {
    flex-direction: row;
    align-items: baseline;
  }
  .c-damage-form__image-step p {
    order: 1;
    margin-left: 24px;
  }
}

.c-damage-form__blue-bold {
  font-weight: 600;
  color: #B6CEF0;
}

.c-damage-form__blue {
  color: #B6CEF0;
}

.c-damage-form__email {
  text-decoration: underline;
}

.c-damage-form_upload-input {
  display: none;
}

.c-damage-form_upload-label {
  cursor: pointer;
  min-width: 128px;
}
.c-damage-form_upload-label div {
  width: 128px;
}
.c-damage-form_upload-label div svg {
  margin-right: 8px;
}

.c-damage-form__frame {
  display: flex;
  z-index: 4;
  align-items: center;
  width: 128px;
  height: 80px;
}
.c-damage-form__frame:before {
  content: "";
  position: absolute;
  z-index: -1;
  left: 0;
  top: 0;
  right: 0;
  bottom: 0;
  background-color: rgba(182, 206, 240, 0.1);
  border-radius: 6px;
}
.c-damage-form__frame .corners img {
  position: absolute;
  z-index: 2;
}
.c-damage-form__frame .corners img:nth-child(1) {
  top: 0;
  left: 0;
}
.c-damage-form__frame .corners img:nth-child(2) {
  top: 0;
  right: 0;
  transform: rotate(90deg);
}
.c-damage-form__frame .corners img:nth-child(3) {
  bottom: 0;
  right: 0;
  transform: rotate(180deg);
}
.c-damage-form__frame .corners img:nth-child(4) {
  bottom: 0;
  left: 0;
  transform: rotate(270deg);
}

.c-damage-form__placeholder-img {
  opacity: 0.5;
  transition: opacity 0.3s;
}
.c-damage-form__frame:hover .c-damage-form__placeholder-img {
  opacity: 1;
}

.c-damage-form__add {
  display: flex;
  align-items: center;
  width: 100%;
  padding: 9px 8px 7px;
  background-color: #638DE0;
  border-radius: 16px;
  font-size: 13px;
  line-height: 1.2;
  font-weight: 600;
  color: #FFFFFF;
  transition: background-color 0.3s;
}
.c-damage-form__add svg {
  flex: 0 0 auto;
  margin-top: -1px;
  margin-right: 8px;
}
.c-damage-form__add:hover {
  background-color: #B6CEF0;
}
@media screen and (max-width: 551px) {
  .c-damage-form__add {
    display: none;
  }
}

.c-damage-form__uploaded-img {
  object-fit: cover;
}

.c-damage-form__image-delete {
  position: absolute;
  color: #ff8a15;
  right: 8px;
  top: 8px;
  cursor: pointer;
}

.c-damage-form__image-frame {
  position: absolute;
  pointer-events: none;
  top: 0;
  left: 0;
}

.c-damage-form__image-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 12px;
}

.c-faq-menu {
  border-radius: 24px;
  background: linear-gradient(180deg, #2751A3 0%, #193E8A 75%);
  padding: 40px 32px 40px 40px;
}

.c-faq-menu__list {
  list-style: none;
  margin-left: 0;
}
.c-faq-menu__list > * + * {
  margin-top: 8px;
}

.c-faq-menu__list-item {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  padding: 4px 0;
  font-size: 1rem;
  line-height: 1.625;
  color: #C9CACD;
  cursor: pointer;
}
.c-faq-menu__list-item:hover {
  color: #E6E7EB;
}
.c-faq-menu__list-item.is-active {
  font-weight: 600;
  color: white;
}

.c-faq-menu__list-arrow {
  transform: rotate(-0.25turn);
  color: #C9CACD;
  transition: color 0.2s;
}
.c-faq-menu__list-item:hover .c-faq-menu__list-arrow {
  color: white;
}
.c-faq-menu__list-item.is-active .c-faq-menu__list-arrow {
  color: #ff8a15;
}

.c-cta {
  max-width: 496px;
}

.c-cta--in-cta-form {
  max-width: 90vw;
  width: 100%;
}
@media screen and (max-width: 1229px) {
  .c-cta--in-cta-form {
    margin: 0 auto;
  }
}

.c-cta__name {
  font-size: 0.9375rem;
  line-height: 1.2;
  color: #193E8A;
  text-align: right;
}

.c-cta__main {
  display: flex;
  justify-content: space-between;
  border-radius: 24px;
  padding: 0 12px 0 16px;
}
@media screen and (min-width: 580px) {
  .c-cta__main {
    padding: 0 24px 0 48px;
  }
}

.c-cta__person {
  margin-top: -12px;
  margin-left: -10px;
}
@media screen and (min-width: 580px) {
  .c-cta__person {
    margin-top: -24px;
  }
}

.cta__person-image {
  width: clamp(112px, 27.5vw, 160px);
  height: auto;
}

.c-cta__phone-icon {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 28px;
  height: 28px;
  color: rgba(25, 62, 138, 0.5);
  border: 1px solid currentColor;
  border-radius: 50%;
  transition: background-color 0.2s, color 0.2s;
}
@media screen and (min-width: 450px) {
  .c-cta__phone-icon {
    width: 40px;
    height: 40px;
  }
}
@media screen and (max-width: 359px) {
  .c-cta__phone-icon {
    display: none;
  }
}
.c-cta__phone-icon svg {
  animation-name: phone-rings;
  animation-duration: 1.4s;
  animation-iteration-count: infinite;
  animation-play-state: paused;
}
@media screen and (max-width: 449px) {
  .c-cta__phone-icon svg {
    width: 12px;
    height: 12px;
  }
}
.c-cta__action:hover .c-cta__phone-icon {
  background-color: rgba(25, 62, 138, 0.1);
  color: rgba(25, 62, 138, 0.75);
}
.c-cta__action:hover .c-cta__phone-icon svg {
  animation-play-state: running;
}

.c-cta__action {
  display: flex;
  text-decoration: none;
  align-self: center;
  align-items: center;
}
.c-cta__action > * + * {
  margin-left: 8px;
}
@media screen and (min-width: 450px) {
  .c-cta__action > * + * {
    margin-left: 16px;
  }
}

@media screen and (max-width: 449px) {
  .c-cta__teaser {
    font-size: 0.8125rem;
    line-height: 1.6923076923;
  }
}

.c-cta__link {
  font-size: 1rem;
  line-height: 1.375;
  font-weight: 600;
  color: #193E8A;
}
@media screen and (min-width: 450px) {
  .c-cta__link {
    font-size: 1.125rem;
    line-height: 1.4444444444;
  }
}
.c-cta__action:hover .c-cta__link {
  color: #16293D;
  text-decoration: underline;
}

.c-fire-alert-overlay {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.5);
  z-index: 9998;
  animation: fadeIn 0.3s ease-out;
}

.c-fire-alert {
  position: fixed;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  z-index: 9999;
  background-color: #f14343;
  color: #FFFFFF;
  padding: 16px;
  border-radius: 4px;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
  animation: fadeInScale 0.5s ease-out;
  width: calc(100% - 40px);
  max-width: 800px;
  height: 250px;
}

.c-fire-alert__content {
  display: flex;
  align-items: center;
  justify-content: center;
  height: 100%;
}

.c-fire-alert__text {
  font-family: "Montserrat", sans-serif;
  font-size: 24px;
  line-height: 1.4;
  text-align: left;
  padding-inline: 64px;
}
@media screen and (max-width: 839px) {
  .c-fire-alert__text {
    font-size: 18px;
  }
}
.c-fire-alert__text strong {
  font-weight: 600;
}

.c-fire-alert__close {
  position: absolute;
  top: 16px;
  right: 16px;
  flex-shrink: 0;
  width: 24px;
  height: 24px;
}
.c-fire-alert__close:before, .c-fire-alert__close:after {
  background: #FFFFFF;
  top: 12px;
}

@keyframes fadeIn {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
@keyframes fadeInScale {
  from {
    transform: translate(-50%, -50%) scale(0.9);
    opacity: 0;
  }
  to {
    transform: translate(-50%, -50%) scale(1);
    opacity: 1;
  }
}
.c-statistics {
  background-color: #F2F2F4;
  padding: 48px 0 80px;
}

.c-statistics__grid {
  display: grid;
  grid-template-columns: 1fr;
  grid-gap: 24px;
}
@media screen and (min-width: 500px) and (max-width: 839px) {
  .c-statistics__grid {
    grid-template-columns: repeat(2, 1fr);
    grid-gap: 24px;
  }
}
@media screen and (min-width: 840px) {
  .c-statistics__grid {
    grid-template-columns: repeat(4, 1fr);
    grid-gap: 24px;
  }
}
@media screen and (max-width: 1239px) {
  .c-statistics__grid {
    padding: 0 32px;
  }
}
@media screen and (min-width: 1240px) {
  .c-statistics__grid {
    width: calc(100% - 12vw);
    margin-left: auto;
    margin-right: auto;
  }
}
@media screen and (min-width: 1240px) and (min-width: 840px) {
  .c-statistics__grid {
    width: calc((100% / 10) * 8);
  }
}
@media screen and (min-width: 1240px) and (min-width: 1152px) {
  .c-statistics__grid {
    width: calc((100% / 14) * 12);
    max-width: 1440px;
  }
}

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

.c-statistics__number {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 16px 4px;
  line-height: 1.2;
  color: #638DE0;
  font-weight: 600;
  background: white;
  border: 1px solid rgba(230, 231, 235, 0.48);
  box-shadow: 0 8px 16px 0 rgba(58, 61, 72, 0.08);
  border-radius: 12px;
}
.c-statistics__number {
  min-height: 128px;
}
@media screen and (min-width: 1000px) {
  .c-statistics__number {
    min-height: calc(8.2352941176vw + 45.6470588235px);
  }
}
@media screen and (min-width: 1680px) {
  .c-statistics__number {
    min-height: 184px;
  }
}
.c-statistics__number {
  font-size: 38px;
}
@media screen and (min-width: 375px) {
  .c-statistics__number {
    font-size: calc(2.8108108108vw + 27.4594594595px);
  }
}
@media screen and (min-width: 1300px) {
  .c-statistics__number {
    font-size: 64px;
  }
}

.c-statistics__line {
  font-size: 0.9375rem;
  line-height: 1.6;
  color: #25313D;
}

.c-damage-flow__logo {
  display: block;
  margin: 24px auto 70px;
}

.c-damage-form__round-up .c-cta {
  max-width: none;
}

.c-damage-flow__logos {
  margin-top: 40px;
  margin-bottom: 120px;
  display: flex;
  width: 100%;
  justify-content: center;
}
.c-damage-flow__logos svg {
  margin-right: 24px;
  color: #9da2a8;
}

.c-damage-steps {
  font-size: 0.75rem;
  line-height: 1.5;
  margin-top: 24px;
  margin-bottom: 24px;
  background-color: #F0F2F5;
  color: #25313D;
  height: 48px;
  border-radius: 24px;
  display: flex;
}
@media screen and (max-width: 551px) {
  .c-damage-steps {
    margin-left: 16px;
    margin-right: 16px;
  }
}

.c-damage-steps__step {
  width: 33%;
  position: relative;
  display: flex;
  align-items: center;
}
.c-damage-steps__step:first-of-type {
  padding-left: 16px;
}
.c-damage-steps__step:last-of-type {
  margin-right: 16px;
}

.c-damage-steps__button {
  border-radius: 50%;
  width: 16px;
  height: 16px;
  border: 1px solid #5C5E66;
  margin-right: 4px;
}
.c-damage-steps__button.active {
  background-color: #ff8a15;
  border: 1px solid #ff8a15;
}
.c-damage-steps__button.active:hover {
  background-color: #ff8a15;
  opacity: 0.5;
  border: none;
  transition: background-color 400ms, border 400ms;
  transition-timing-function: ease-in-out;
}

.c-damage-steps__progress {
  width: 100%;
  background-color: #E6E7EB;
  height: 2px;
  transform: translateY(-50%);
  position: relative;
  top: 50%;
  margin-left: 4px;
  margin-right: 4px;
}
.c-damage-steps__progress.half:before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 50%;
  height: 2px;
  background-color: #ff8a15;
}
.c-damage-steps__progress.full:before {
  width: 100%;
}

.c-damage-steps__progress-car {
  position: absolute;
  top: -44px;
  left: 50%;
  transform: translateX(-50%);
  color: #5c5d66;
}

.c-damage-steps-small {
  display: flex;
  justify-content: space-between;
  height: 48px;
  margin-top: 24px;
  margin-bottom: 24px;
  font-size: 0.75rem;
  line-height: 1.5;
  background-color: #F0F2F5;
  color: #25313D;
  border-radius: 24px;
}
@media screen and (max-width: 551px) {
  .c-damage-steps-small {
    margin-left: 16px;
    margin-right: 16px;
  }
}

.c-damage-steps-small__step {
  position: relative;
  display: flex;
  align-items: center;
}
.c-damage-steps-small__step:first-of-type {
  padding-left: 16px;
}
.c-damage-steps-small__step:last-of-type {
  margin-right: 16px;
}

.c-damage-steps-small__button {
  width: 16px;
  height: 16px;
  border-radius: 50%;
  margin-right: 4px;
  border: 1px solid #5C5E66;
}
.c-damage-steps-small__button.active {
  background-color: #ff8a15;
  border: 1px solid #ff8a15;
}
.c-damage-steps-small__button.active:hover {
  background-color: #ff8a15;
  opacity: 0.5;
  border: none;
  transition: background-color 400ms, border 400ms;
  transition-timing-function: ease-in-out;
}

.c-damage-steps-small__progress {
  position: relative;
  top: 50%;
  height: 2px;
  width: 50%;
  margin-left: 4px;
  margin-right: 4px;
  background-color: #E6E7EB;
  transform: translateY(-50%);
}
.c-damage-steps-small__progress.half:before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 50%;
  height: 2px;
  background-color: #ff8a15;
}
.c-damage-steps-small__progress.full:before {
  width: 100%;
}
.c-damage-steps-small__progress.small {
  width: 48px;
}

.c-damage-steps-small__progress-car {
  position: absolute;
  top: -44px;
  left: 50%;
  transform: translateX(-50%);
  color: #5c5d66;
}

.c-damage-steps-small__progress-car--last {
  top: -21px;
}

.c-mobile-insurers {
  margin-bottom: clamp(40px, 12vw, 64px);
}
@media screen and (min-width: 790px) {
  .c-mobile-insurers {
    display: none;
  }
}
.c-mobile-insurers .swiper-wrapper {
  align-items: center;
}

.c-mobile-insurers__button {
  display: inline-block;
  margin-top: 8px;
  margin-left: 24px;
  text-decoration: none;
}

/*  6 - ORGANISMS
 *  Large blocks composed of multiple components.
 =========================================================== */
/** ==========================================================================
 * Organisms
 * =========================================================================*/
@media screen and (max-width: 839px) {
  .o-apply {
    padding-top: 6vw;
    padding-bottom: 12vw;
  }
}
@media screen and (min-width: 840px) and (max-width: 1151px) {
  .o-apply {
    padding-top: 0.0005vw;
    padding-bottom: 0.001vw;
  }
}
@media screen and (min-width: 1152px) and (max-width: 1679px) {
  .o-apply {
    padding-top: 0.0003571429vw;
    padding-bottom: 0.0007142857vw;
  }
}
@media screen and (min-width: 1680px) {
  .o-apply {
    padding-top: 60px;
    padding-bottom: 120px;
  }
}

.o-apply__heading {
  padding-bottom: 48px;
  color: #FFFFFF;
}

@media screen and (min-width: 700px) {
  .o-apply__body {
    display: flex;
  }
}

@media screen and (min-width: 700px) {
  .o-apply__left {
    width: calc(50% + 48px);
    padding-right: 48px;
  }
}

.o-apply__right {
  margin-top: 16px;
}
@media screen and (min-width: 700px) {
  .o-apply__right {
    width: 50%;
    margin-top: 0;
  }
}

.o-apply__row + .o-apply__row {
  margin-top: 16px;
}

@media screen and (min-width: 700px) {
  .o-apply__fileupload {
    margin-top: 40px;
  }
}

.o-apply__footer {
  border-top: 1px solid #C9CACD;
  margin-top: 48px;
  padding-top: 48px;
  text-align: center;
}

.o-apply__feedback {
  margin-top: 32px;
}

@media screen and (max-width: 839px) {
  .o-block {
    margin-bottom: 12vw;
  }
}
@media screen and (min-width: 840px) and (max-width: 1151px) {
  .o-block {
    margin-bottom: 0.001vw;
  }
}
@media screen and (min-width: 1152px) and (max-width: 1679px) {
  .o-block {
    margin-bottom: 0.0007142857vw;
  }
}
@media screen and (min-width: 1680px) {
  .o-block {
    margin-bottom: 120px;
  }
}
@media screen and (max-width: 839px) {
  .o-block + .o-block {
    margin-top: 12vw;
  }
}
@media screen and (min-width: 840px) and (max-width: 1151px) {
  .o-block + .o-block {
    margin-top: 0.001vw;
  }
}
@media screen and (min-width: 1152px) and (max-width: 1679px) {
  .o-block + .o-block {
    margin-top: 0.0007142857vw;
  }
}
@media screen and (min-width: 1680px) {
  .o-block + .o-block {
    margin-top: 120px;
  }
}

/*
* Wrapper of the main body
* (between the header and the footer)
*/
.o-body {
  z-index: 40;
  position: relative;
  flex: 1 0 auto;
}

.o-callout-bar {
  overflow-wrap: break-word;
  word-wrap: break-word;
  -webkit-hyphens: auto;
  -ms-hyphens: auto;
  hyphens: auto;
  color: #25313D;
  background-color: #E6E7EB;
  text-align: center;
}

.o-callout-bar__main {
  width: calc(100% - 12vw);
  margin-left: auto;
  margin-right: auto;
}
@media screen and (min-width: 840px) {
  .o-callout-bar__main {
    width: calc((100% / 10) * 8);
  }
}
@media screen and (min-width: 1152px) {
  .o-callout-bar__main {
    width: calc((100% / 14) * 12);
    max-width: 1440px;
  }
}
@media screen and (max-width: 839px) {
  .o-callout-bar__main {
    padding-top: 12vw;
    padding-bottom: 12vw;
  }
}
@media screen and (min-width: 840px) and (max-width: 1151px) {
  .o-callout-bar__main {
    padding-top: 0.001vw;
    padding-bottom: 0.001vw;
  }
}
@media screen and (min-width: 1152px) and (max-width: 1679px) {
  .o-callout-bar__main {
    padding-top: 0.0007142857vw;
    padding-bottom: 0.0007142857vw;
  }
}
@media screen and (min-width: 1680px) {
  .o-callout-bar__main {
    padding-top: 120px;
    padding-bottom: 120px;
  }
}
@media screen and (max-width: 839px) {
  .o-callout-bar__main > * + * {
    margin-top: 6vw;
  }
}
@media screen and (min-width: 840px) and (max-width: 1151px) {
  .o-callout-bar__main > * + * {
    margin-top: 0.0005vw;
  }
}
@media screen and (min-width: 1152px) and (max-width: 1679px) {
  .o-callout-bar__main > * + * {
    margin-top: 0.0003571429vw;
  }
}
@media screen and (min-width: 1680px) {
  .o-callout-bar__main > * + * {
    margin-top: 60px;
  }
}

.o-callout-bar__body {
  display: inline-block;
}

.o-callout-bar__heading {
  font-size: 2rem;
}

/*
 * Card grid
 *
 */
.o-card-grid {
  padding-top: 80px;
  padding-bottom: 120px;
  background-color: #F0F2F5;
}

.o-card-grid__main {
  width: calc(100% - 12vw);
  margin-left: auto;
  margin-right: auto;
}
@media screen and (min-width: 840px) {
  .o-card-grid__main {
    width: calc((100% / 10) * 8);
  }
}
@media screen and (min-width: 1152px) {
  .o-card-grid__main {
    width: calc((100% / 14) * 12);
    max-width: 1440px;
  }
}
@media screen and (min-width: 641px) {
  .o-card-grid__main {
    display: flex;
    flex-wrap: wrap;
  }
}

@media screen and (max-width: 640px) {
  .o-card-grid__item + .o-card-grid__item {
    margin-top: 32px;
  }
}
@media screen and (max-width: 640px) {
  .o-card-grid__item {
    margin: 0 auto;
  }
}
@media screen and (min-width: 641px) and (max-width: 1151px) {
  .o-card-grid__item {
    flex: 0;
    flex-basis: calc(50% - ((2 - 1) / 2 * 32px));
    margin-left: 32px;
  }
  .o-card-grid__item:nth-child(2n+1) {
    margin-left: 0;
  }
  .o-card-grid__item:nth-child(n+3) {
    margin-top: 32px;
  }
}
@media screen and (min-width: 1152px) {
  .o-card-grid__item {
    flex: 0;
    flex-basis: calc(33.3333333333% - ((3 - 1) / 3 * 32px));
    margin-left: 32px;
  }
  .o-card-grid__item:nth-child(3n+1) {
    margin-left: 0;
  }
  .o-card-grid__item:nth-child(n+4) {
    margin-top: 32px;
  }
}

.o-contact {
  margin-top: clamp(40px, 3.8vw, 64px);
  margin-bottom: clamp(72px, 7.2vw, 120px);
}
.o-contact__info {
  grid-area: info;
  display: block;
  width: 100%;
}
.o-contact__figure {
  grid-area: figure;
  display: block;
  width: 100%;
}
.o-contact__form {
  grid-area: form;
  display: block;
  width: 100%;
}
.o-contact__team-members {
  grid-area: team-members;
  display: block;
  width: 100%;
}
@media screen and (max-width: 1199px) {
  .o-contact > * {
    max-width: 600px;
  }
  .o-contact > * + * {
    margin-top: 48px;
  }
}
@media screen and (min-width: 1200px) {
  .o-contact {
    display: grid;
    grid-template-columns: 1fr minmax(auto, 552px);
    grid-template-rows: repeat(2, auto);
    grid-gap: 64px 48px;
    grid-template-areas: "info form" "figure team-members";
  }
}

@media screen and (min-width: 1200px) {
  .o-contact__info {
    max-width: 552px;
  }
}
.o-contact__info .s-text h1, .o-contact__info .s-text h2, .o-contact__info .s-text h3, .o-contact__info .s-text h4 {
  color: #638DE0;
}

.o-contact__form {
  padding: 48px 24px 24px;
  background-image: linear-gradient(180deg, #2751A3 0%, #193E8A 75%);
  border-radius: 24px;
}
@media screen and (min-width: 460px) {
  .o-contact__form {
    padding: 64px 48px 48px;
  }
}
.o-contact__form .s-text {
  font-size: 1.25rem;
  line-height: 1.6;
  letter-spacing: -0.2px;
}

@media screen and (max-width: 499px) {
  .o-contact__team-members > * + * {
    margin-top: 24px;
  }
}
@media screen and (min-width: 500px) {
  .o-contact__team-members {
    display: flex;
  }
  .o-contact__team-members > * + * {
    margin-left: 24px;
  }
}

.o-contact__team-member {
  max-width: 206px;
}

.o-contact__section {
  margin-top: clamp(24px, 1.9vw, 48px);
}

.o-contact__item {
  position: relative;
  padding-left: 30px;
}
.o-contact__item svg {
  position: absolute;
  left: 0;
  top: 6px;
  color: #193E8A;
}

.o-contact__link {
  text-decoration: none;
}

.o-contact__item--phone {
  color: #193E8A;
  font-size: 1.0625rem;
  line-height: 1.4117647059;
  font-weight: 600;
  margin-bottom: 5px;
}
.o-contact__item--phone svg {
  left: 2px;
}

.o-contact__item--mail {
  margin-bottom: 4px;
}
.o-contact__item--mail svg {
  transform: scale(0.9);
}

.o-contact__item--location svg {
  top: 6px;
  left: 3px;
  transform: scale(1.1);
}
.o-contact__item--location span {
  line-height: 24px;
}
.o-contact__item--location a {
  margin-top: 19px;
}

.o-contact__heading {
  font-size: 0.75rem;
  font-weight: bold;
  color: #25313D;
  text-transform: uppercase;
  margin-bottom: 4px;
}

.o-contact__hours {
  color: #2751A3;
  margin-top: clamp(24px, 1.9vw, 48px);
}

.o-contact__numbers {
  color: #2751A3;
  margin: 0;
  list-style: none;
  display: inline-grid;
  grid-template-columns: repeat(2, auto);
  grid-column-gap: 16px;
}

.o-contact__image {
  border-radius: 12px;
}

/*===============================================================================
 * Double image in 2 equal columns
 *
 * Until viewport is wide enough the pictures are stacked vertically
 * ============================================================================== */
.o-double-image {
  margin: -1px;
  text-align: center;
}
@media screen and (min-width: 1100px) {
  .o-double-image {
    display: flex;
  }
}

.o-double-image__picture {
  display: block;
  margin: 1px;
  order: 1;
  min-height: 360px;
}
@media screen and (min-width: 1100px) {
  .o-double-image__picture {
    width: 50%;
    display: flex;
    justify-content: flex-end;
  }
  .o-double-image__picture:last-child {
    justify-content: flex-start;
  }
}

.o-double-image__img {
  object-fit: cover;
  max-height: 85vh;
}

.o-double-image--is-reversed .o-double-image__picture {
  justify-content: flex-start;
}
.o-double-image--is-reversed .o-double-image__picture:last-child {
  order: 0;
  justify-content: flex-end;
}

/*===============================================================================
 * Double layout in 2 equal columns
 *
 * Until viewport is wide enough the columns are stacked vertically
 * ============================================================================== */
.o-double-text {
  position: relative;
  background-color: #FFFFFF;
  height: 100%;
}
@media screen and (min-width: 840px) {
  .o-double-text {
    display: flex;
  }
}

@media screen and (min-width: 1152px) {
  .o-double-text__column {
    width: 50%;
  }
}
@media screen and (min-width: 840px) and (max-width: 1151px) {
  .o-double-text__column:first-child {
    width: 62.5%;
    padding-right: 12.5%;
  }
}
@media screen and (min-width: 1152px) {
  .o-double-text__column:first-child {
    padding-left: 8.3333333333%;
  }
}
@media screen and (max-width: 839px) {
  .o-double-text__column:last-child {
    margin-top: 6vw;
  }
}
@media screen and (min-width: 840px) and (max-width: 1151px) {
  .o-double-text__column:last-child {
    width: 37.5%;
  }
}
@media screen and (min-width: 1152px) {
  .o-double-text__column:last-child {
    padding-left: 8.3333333333%;
    padding-right: 8.3333333333%;
  }
}

@media screen and (max-width: 1151px) {
  .o-double-usp {
    background-color: #ff8a15;
  }
}

.o-double-usp__main {
  width: calc(100% - 12vw);
  margin-left: auto;
  margin-right: auto;
  padding-top: 48px;
  padding-bottom: 48px;
}
@media screen and (min-width: 840px) {
  .o-double-usp__main {
    width: calc((100% / 10) * 8);
  }
}
@media screen and (min-width: 1152px) {
  .o-double-usp__main {
    width: calc((100% / 14) * 12);
    max-width: 1440px;
  }
}
@media screen and (min-width: 840px) {
  .o-double-usp__main {
    display: flex;
  }
}

@media screen and (max-width: 839px) {
  .o-double-usp__left {
    margin-bottom: 48px;
  }
}
@media screen and (min-width: 840px) {
  .o-double-usp__left {
    width: 58.3333333333%;
    padding-right: 8.3333333333%;
  }
}

@media screen and (min-width: 840px) {
  .o-double-usp__right {
    width: 50%;
  }
}

.o-double-usp__heading {
  font-size: 2rem;
  margin-bottom: 24px;
  color: #FFFFFF;
}

.o-double-usp__list {
  list-style-type: none;
  margin-left: 16px;
}

.o-double-usp__item {
  position: relative;
  padding-left: 16px;
  color: #FFFFFF;
}
.o-double-usp__item + .o-double-usp__item {
  margin-top: 16px;
}
.o-double-usp__item::before {
  content: "";
  position: absolute;
  top: 5px;
  left: -16px;
  width: 16px;
  height: 12px;
  background-image: url(/img/check/checked.svg);
  background-size: 16px 12px;
}

.o-footer {
  color: #FFFFFF;
  background-color: #193E8A;
  flex: 1 0 auto;
}
@media screen and (max-width: 959px) {
  .o-footer {
    position: relative;
  }
  .o-footer:before, .o-footer:after {
    content: "";
    position: absolute;
    top: -24px;
    display: block;
    width: 24px;
    height: 24px;
    background: transparent;
  }
  .o-footer:before {
    left: 0;
    box-shadow: -46px 0 0 48px #193E8A;
    -webkit-clip-path: inset(1px 1px -2px -2px);
            clip-path: inset(1px 1px -2px -2px);
    border-bottom-left-radius: 100%;
  }
  .o-footer:after {
    right: 0;
    box-shadow: 48px 0 0 48px #193E8A;
    -webkit-clip-path: inset(1px 0px -2px -2px);
            clip-path: inset(1px 0px -2px -2px);
    border-bottom-right-radius: 100%;
  }
}

.o-footer__left {
  width: 100%;
  margin-right: 10%;
}
@media screen and (max-width: 839px) {
  .o-footer__left {
    margin-right: 0;
  }
}

.o-footer__main {
  width: calc(100% - 12vw);
  margin-left: auto;
  margin-right: auto;
  padding-top: 72px;
  padding-bottom: 40px;
}
@media screen and (min-width: 840px) {
  .o-footer__main {
    width: calc((100% / 10) * 8);
  }
}
@media screen and (min-width: 1152px) {
  .o-footer__main {
    width: calc((100% / 14) * 12);
    max-width: 1440px;
  }
}
@media screen and (min-width: 1200px) {
  .o-footer__main {
    display: flex;
    justify-content: space-between;
    padding-top: min(5.5vw, 80px);
    padding-bottom: min(5.5vw, 80px);
  }
}

@media screen and (min-width: 840px) {
  .o-footer__columns {
    display: flex;
    justify-content: space-between;
  }
}

.o-footer__brand {
  margin-bottom: 40px;
  display: inline-block;
  transition: opacity 200ms linear;
}
.o-footer__brand:hover {
  opacity: 0.5;
}
@media screen and (min-width: 1200px) {
  .o-footer__brand {
    margin-bottom: min(3.75vw, 55px);
  }
}

.o-footer__logo {
  height: 48px;
}
@media screen and (max-width: 839px) {
  .o-footer__logo {
    margin: 16px 0;
  }
}

.o-footer__address a {
  text-decoration: none;
}

.o-footer__list {
  list-style: none;
  margin: 0;
}

.o-footer__item {
  margin-bottom: 8px;
}
@media screen and (max-width: 839px) {
  .o-footer__item {
    margin-bottom: 0;
  }
}

.o-footer__address-item {
  margin-bottom: 8px;
  position: relative;
  padding-left: 32px;
}
.o-footer__address-item svg {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  left: 0;
}

@media screen and (max-width: 839px) {
  .o-footer__hours {
    display: none;
  }
}

.o-footer__link {
  display: inline-block;
  position: relative;
  z-index: 0;
  color: #FFFFFF;
  text-decoration: none;
  cursor: pointer;
  -webkit-user-select: none;
      -ms-user-select: none;
          user-select: none;
}
.o-footer__link:hover, .o-footer__link:active {
  outline: none !important;
}
.o-footer__link::before {
  border-radius: 4px;
  opacity: 0;
  content: "";
  display: block;
  position: absolute;
  z-index: -1;
  top: 0;
  bottom: 0;
  left: -8px;
  right: -8px;
  background-color: rgba(0, 0, 0, 0.2);
  transition: opacity 150ms linear;
}
.o-footer__link:hover::before {
  opacity: 1;
}
.o-footer__link:focus {
  outline-color: currentColor;
  outline-style: solid;
  outline-offset: 1px;
  outline-width: 2px;
}

.o-footer__link--nav svg {
  display: none;
}
@media screen and (max-width: 839px) {
  .o-footer__link--nav {
    display: flex;
    align-items: center;
    text-decoration: none;
    border-top: 1px solid #2751A3;
    padding: 16px 0;
  }
  .o-footer__link--nav svg {
    display: block;
    width: 12px;
    height: 12px;
    transform: rotate(-90deg);
    color: #ff8a15;
    margin-left: auto;
  }
  .o-footer__link--nav:last-of-type {
    border-bottom: 1px solid #2751A3;
  }
}

@media screen and (min-width: 1200px) {
  .o-footer__info {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
  }
}

.o-footer__social {
  display: flex;
  list-style: none;
  margin: 32px 0 48px;
}
@media screen and (min-width: 1200px) {
  .o-footer__social {
    margin: 0;
  }
}

.o-footer__channel {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 32px;
  height: 32px;
  margin-right: 16px;
}

.o-footer__icon {
  flex: auto;
  display: flex;
  align-items: center;
  justify-content: center;
  height: 100%;
  background-repeat: no-repeat;
  background-position: center;
  transition-property: opacity;
  transition-duration: 0.3s;
}
.o-footer__icon:before {
  left: 0;
  right: 0;
}
.o-footer__icon:focus {
  outline-color: #4079B8;
}

.o-footer__day {
  display: inline-block;
  min-width: 32px;
}

@media screen and (max-width: 1199px) {
  .o-footer__card {
    display: none;
  }
}

.o-footer__labels {
  margin-top: 55px;
  display: flex;
  justify-content: space-between;
  color: #FFFFFF;
}

.o-form__header {
  margin-bottom: 40px;
}

.o-form__footer {
  margin-top: 48px;
}

.o-form__row + .o-form__row {
  margin-top: 22px;
}

@media screen and (max-width: 459px) {
  .o-form__row--split > * + * {
    margin-top: 16px;
  }
}
@media screen and (min-width: 460px) {
  .o-form__row--split {
    display: flex;
    justify-content: space-between;
    gap: 16px;
  }
}
.o-form__row--split div {
  width: 100%;
}

.o-form__pot {
  opacity: 0;
  position: absolute;
  top: 0;
  left: 0;
  height: 0;
  width: 0;
  z-index: -1;
}

/*
	Colors get defined in _settings.config.scss
*/
.o-header {
  z-index: 50;
  background-color: #FFFFFF;
  position: relative;
  border-bottom: 1px solid #E6E7EB;
}
.o-header.is-sticky {
  opacity: 0;
  position: fixed;
  z-index: 50;
  top: 0;
  left: 0;
  width: 100%;
  padding-top: 32px;
  padding-bottom: 32px;
  box-shadow: 0 -5px 30px black;
  transform: translateY(-100%);
  transition-property: transform, opacity;
  transition-duration: 300ms;
  transition-delay: 0s, 300ms;
  transition-timing-function: cubic-bezier(0.4, 0, 0.6, 1);
}
@media screen and (min-width: 1100px) {
  .o-header.is-sticky {
    display: none;
  }
}
.is-sticky-header-visible .o-header.is-sticky {
  opacity: 1;
  transform: none;
  transition-delay: 0s;
}

.o-header__top {
  color: #FFFFFF;
  background-color: #16293D;
}

.o-header__main {
  display: flex;
  justify-content: space-between;
  align-items: center;
}
@media screen and (max-width: 839px) {
  .o-header__main {
    padding: 0 calc(6vw - 20px) 0 6vw;
  }
}
@media screen and (min-width: 840px) {
  .o-header__main {
    width: calc(100% - 12vw);
    margin-left: auto;
    margin-right: auto;
  }
}
@media screen and (min-width: 840px) and (min-width: 840px) {
  .o-header__main {
    width: calc((100% / 10) * 8);
  }
}
@media screen and (min-width: 840px) and (min-width: 1152px) {
  .o-header__main {
    width: calc((100% / 14) * 12);
    max-width: 1440px;
  }
}
@media screen and (min-width: 1100px) {
  .o-header__main {
    min-height: 75px;
  }
}

@media screen and (max-width: 1099px) {
  .o-header__nav {
    display: none;
  }
}

.o-header__logo {
  margin-top: -6px;
}
.o-header__logo:hover, .o-header__logo:active {
  outline: none !important;
}
.o-header__logo:focus {
  outline-color: currentColor;
  outline-style: solid;
  outline-offset: 1px;
  outline-width: 2px;
}
@media screen and (min-width: 1200px) {
  .o-header__logo {
    margin-top: -11px;
  }
}

.o-header__img {
  width: 240px;
  height: auto;
}
@media screen and (min-width: 1200px) {
  .o-header__img {
    width: 340px;
  }
}

@media screen and (min-width: 840px) and (max-width: 1099px) {
  .o-header__toggle {
    margin-right: -20px;
  }
}
@media screen and (min-width: 1100px) {
  .o-header__toggle {
    display: none;
  }
}

.o-intro {
  position: relative;
  z-index: 0;
  background-color: #FFFFFF;
}

.o-intro__body {
  position: relative;
}
@media screen and (max-width: 839px) {
  .o-intro__body {
    margin-bottom: 12vw;
  }
}
@media screen and (min-width: 840px) and (max-width: 1151px) {
  .o-intro__body {
    margin-bottom: 0.001vw;
  }
}
@media screen and (min-width: 1152px) and (max-width: 1679px) {
  .o-intro__body {
    margin-bottom: 0.0007142857vw;
  }
}
@media screen and (min-width: 1680px) {
  .o-intro__body {
    margin-bottom: 120px;
  }
}
@media screen and (max-width: 839px) {
  .o-intro--mobile-break-out .o-intro__body {
    width: 100vw;
    margin-left: 50%;
    transform: translateX(-50%);
  }
}
@media screen and (min-width: 840px) {
  .o-intro__body::before {
    content: "";
    position: absolute;
    z-index: 0;
    top: 50%;
    right: 0;
    bottom: 0;
    left: 0;
  }
  .o-intro--bottom-bar-hidden .o-intro__body::before {
    display: none;
  }
}

.o-intro__content {
  background-color: #FFFFFF;
  position: relative;
}
@media screen and (min-width: 840px) {
  .o-intro__content {
    display: flex;
  }
}
@media screen and (min-width: 1152px) {
  .o-intro__content {
    width: calc(7.1428571429% * 12);
    max-width: 1440px;
    margin-left: auto;
    margin-right: auto;
  }
}

.o-intro__image {
  margin-top: 32px;
}
@media screen and (min-width: 840px) {
  .o-intro__image {
    order: -1;
    width: 41.6666666667%;
    margin-top: 0;
  }
}
@media screen and (min-width: 1152px) {
  .o-intro__image {
    width: 50%;
  }
}

.o-intro__text {
  padding-top: 32px;
  padding-left: 6vw;
  padding-right: 6vw;
}
@media screen and (min-width: 840px) {
  .o-intro__text {
    width: 58.3333333333%;
    padding: 80px 8.3333333333%;
  }
}
@media screen and (min-width: 1152px) {
  .o-intro__text {
    width: 50%;
  }
}

.o-intro__title,
.o-intro__heading {
  color: #FFFFFF !important;
}

.o-intro__button {
  color: #4079B8 !important;
}

.o-map a:after {
  display: none;
}

.o-overlay {
  display: none;
  width: 100vw;
  min-height: 100vh;
  position: absolute;
  top: 0;
  left: 0;
  background-color: rgba(22, 41, 61, 0.6);
  -webkit-backdrop-filter: blur(5px);
          backdrop-filter: blur(5px);
  z-index: 100;
}
.o-overlay.active {
  display: block;
}

.o-overlay-menu {
  z-index: 100;
  display: flex;
  flex-direction: column;
  opacity: 0;
  position: fixed;
  height: 100%;
  width: calc(100% - 24px);
  left: 24px;
  top: 0;
  background-color: #FFFFFF;
  border-top-left-radius: 24px;
  border-bottom-left-radius: 24px;
  transform: translateX(120vw);
  transition-property: transform, opacity;
  transition-duration: 400ms, 200ms;
  transition-delay: 0s, 400ms;
  transition-timing-function: cubic-bezier(0.5, 0.15, 0.1, 1), linear;
}
.is-overlay-menu-active .o-overlay-menu {
  opacity: 1;
  transform: none;
  transition-delay: 200ms, 0s;
}
.o-overlay-menu::before {
  display: block;
  content: "";
  position: absolute;
  top: 0;
  right: -120vw;
  width: 120vw;
  height: 100%;
  background: rgba(0, 0, 0, 0.6);
  pointer-events: none;
  opacity: 0;
  transition-property: opacity;
  transition-duration: 200ms;
  transition-delay: 400ms;
  transition-timing-function: linear;
}
.is-overlay-menu-active .o-overlay-menu::before {
  opacity: 1;
  transition-delay: 0s;
}
.o-overlay-menu::after {
  display: block;
  content: "";
  position: absolute;
  top: 0;
  right: -20%;
  width: 20%;
  height: 100%;
  background: linear-gradient(-86deg, transparent 50%, #FFFFFF 50%);
}
@media screen and (min-width: 1100px) {
  .o-overlay-menu {
    display: none;
  }
}

.o-overlay-menu__bar {
  width: calc(100% - 12vw);
  margin-left: auto;
  margin-right: auto;
  display: flex;
  justify-content: flex-end;
  align-items: center;
  padding-top: 24px;
  padding-bottom: 24px;
}
@media screen and (min-width: 840px) {
  .o-overlay-menu__bar {
    width: calc((100% / 10) * 8);
  }
}
@media screen and (min-width: 1152px) {
  .o-overlay-menu__bar {
    width: calc((100% / 14) * 12);
    max-width: 1440px;
  }
}

.o-overlay-menu__toggle {
  transform: rotate(-0.5turn);
  transition: transform 600ms ease-out;
  transition-delay: 200ms;
}
.is-overlay-menu-active .o-overlay-menu__toggle {
  transform: none;
}

.o-overlay-menu__nav {
  margin-left: 24px;
  margin-right: 24px;
}

.o-overlay-menu__list {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  margin: 0;
  list-style: none;
}

.o-overlay-menu__item {
  padding: 16px 0;
  border-bottom: 1px solid #E6E7EB;
}

.o-overlay-menu__link {
  display: flex;
  justify-content: space-between;
  align-items: center;
  color: #16293D;
  text-decoration: none;
  transition: opacity 200ms linear;
}
.o-overlay-menu__link:hover {
  color: rgba(22, 41, 61, 0.7);
}
.o-overlay-menu__link:focus {
  outline-offset: 2px;
  outline-color: rgba(22, 41, 61, 0.3);
}
.o-overlay-menu__link.is-active {
  position: relative;
  opacity: 1;
  font-weight: bold;
}
.o-overlay-menu__link svg {
  width: 12px;
  height: 12px;
  color: #ff8a15;
  transform: rotate(-90deg);
}

.o-overlay-menu__sub-items.hidden {
  display: none;
}

.o-overlay-menu__back-button {
  border: 1px solid #E6E7EB;
  color: #193E8A;
  background: #FFFFFF;
  border-radius: 6px;
  padding: 5px 6px;
  margin-bottom: 24px;
}
.o-overlay-menu__back-button svg {
  width: 12px;
  height: 12px;
  transform: translateY(-1px) rotate(90deg);
  margin-right: 10px;
}

.o-overlay-menu__sub-item {
  list-style: none;
  padding: 16px 0;
  border-bottom: 1px solid #E6E7EB;
}

.o-overlay-menu__sub-item__link {
  display: flex;
  align-items: center;
  color: #16293D;
  text-decoration: none;
  width: 100%;
}
.o-overlay-menu__sub-item__link img {
  width: 24px;
  margin-right: 16px;
}
.o-overlay-menu__sub-item__link svg {
  width: 12px;
  height: 12px;
  transform: rotate(-90deg);
  color: #ff8a15;
  margin-left: auto;
}

.o-overlay-menu__bottom {
  margin: 24px;
}
.o-overlay-menu__bottom svg {
  width: 44px;
  height: 21px;
  margin-bottom: 10px;
}

.o-overlay-menu__bottom-text {
  padding-bottom: 24px;
  font-size: 1.25rem;
  line-height: 1.6;
  color: #16293D;
  letter-spacing: -0.2;
}

.o-quote {
  width: calc(100% - 12vw);
  margin-left: auto;
  margin-right: auto;
}
@media screen and (min-width: 840px) {
  .o-quote {
    width: calc((100% / 10) * 8);
  }
}
@media screen and (min-width: 1152px) {
  .o-quote {
    width: calc((100% / 14) * 12);
    max-width: 1440px;
  }
}

@media screen and (min-width: 840px) {
  .o-quote {
    display: flex;
  }
}

@media screen and (min-width: 840px) {
  .o-quote__body {
    width: 50%;
  }
}
@media screen and (min-width: 1152px) {
  .o-quote__body {
    margin-left: 8.3333333333%;
    width: 66.6666666667%;
  }
}

.o-quote__picture {
  display: block;
}
@media screen and (max-width: 839px) {
  .o-quote__picture {
    margin-top: 32px;
  }
}
@media screen and (min-width: 840px) {
  .o-quote__picture {
    width: 37.5%;
    margin-left: 12.5%;
  }
}
@media screen and (min-width: 1152px) {
  .o-quote__picture {
    width: 33.3333333333%;
    margin-left: 8.3333333333%;
    margin-right: 8.3333333333%;
  }
}

.o-quote__img {
  display: block;
  margin: 0 auto;
}

.o-quote__text {
  font-size: 1.125rem;
  quotes: "“" "”";
}
.o-quote__text::before {
  content: open-quote;
}
.o-quote__text::after {
  content: close-quote;
}

.o-quote__author {
  margin-top: 24px;
  margin-left: 8.3333333333%;
}

.o-quote__heading {
  font-size: 0.9375rem;
  color: #FFFFFF;
}

.o-quote__subheading {
  font-size: 0.9375rem;
  color: #FFFFFF;
}

.o-subfooter {
  color: rgba(255, 255, 255, 0.6);
  background-color: #16293D;
  padding-bottom: 54px;
  transition: padding 0.6s;
}
.is-cookies-accepted .o-subfooter {
  padding-bottom: 0;
}
@media screen and (max-width: 959px) {
  .o-subfooter {
    position: relative;
    z-index: 40;
  }
  .o-subfooter:before, .o-subfooter:after {
    content: "";
    position: absolute;
    top: -24px;
    display: block;
    width: 24px;
    height: 24px;
    background: transparent;
  }
  .o-subfooter:before {
    left: 0;
    box-shadow: -46px 0 0 48px #16293D;
    -webkit-clip-path: inset(1px 1px -2px -2px);
            clip-path: inset(1px 1px -2px -2px);
    border-bottom-left-radius: 100%;
  }
  .o-subfooter:after {
    right: 0;
    box-shadow: 48px 0 0 48px #16293D;
    -webkit-clip-path: inset(1px 0px -2px -2px);
            clip-path: inset(1px 0px -2px -2px);
    border-bottom-right-radius: 100%;
  }
}

.o-subfooter__main {
  width: calc(100% - 12vw);
  margin-left: auto;
  margin-right: auto;
  font-size: 0.8125rem;
  margin-top: 24px;
  margin-bottom: 24px;
}
@media screen and (min-width: 840px) {
  .o-subfooter__main {
    width: calc((100% / 10) * 8);
  }
}
@media screen and (min-width: 1152px) {
  .o-subfooter__main {
    width: calc((100% / 14) * 12);
    max-width: 1440px;
  }
}
@media screen and (min-width: 960px) {
  .o-subfooter__main {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-start;
    align-items: center;
    margin-top: 12px;
    margin-bottom: 12px;
  }
}

@media screen and (min-width: 1200px) {
  .o-subfooter__copyright {
    order: 1;
  }
}
@media screen and (min-width: 960px) {
  .o-subfooter__copyright {
    margin-right: 32px;
  }
}
@media screen and (max-width: 959px) {
  .o-subfooter__copyright {
    margin-top: 16px;
    padding-top: 16px;
    border-top: 1px solid rgba(255, 255, 255, 0.4);
  }
}

.o-subfooter__nav {
  margin-right: auto;
}
@media screen and (min-width: 1200px) {
  .o-subfooter__nav {
    order: 2;
  }
}

.o-subfooter__back-to-site {
  margin-right: auto;
  color: white;
  -webkit-text-decoration-color: transparent;
          text-decoration-color: transparent;
  transition: -webkit-text-decoration-color 0.3s;
  transition: text-decoration-color 0.3s;
  transition: text-decoration-color 0.3s, -webkit-text-decoration-color 0.3s;
}
@media screen and (max-width: 959px) {
  .o-subfooter__back-to-site {
    width: 100%;
    display: block;
    padding-bottom: 16px;
    margin-bottom: 16px;
    border-bottom: 1px solid rgba(255, 255, 255, 0.4);
  }
}
.o-subfooter__back-to-site svg {
  margin-right: 8px;
  transform: rotate(90deg);
  color: #ff8a15;
  transition: transform 0.3s;
}
.o-subfooter__back-to-site:hover {
  -webkit-text-decoration-color: white;
          text-decoration-color: white;
}
.o-subfooter__back-to-site:hover svg {
  transform: translateX(-4px) rotate(90deg);
}

.o-subfooter__list {
  list-style-type: none;
  margin: 0;
}
@media screen and (min-width: 960px) {
  .o-subfooter__list {
    display: flex;
    flex-wrap: wrap;
  }
  .o-subfooter__list > * + * {
    margin-left: 32px;
  }
}

.o-subfooter__link {
  color: rgba(255, 255, 255, 0.6);
  text-decoration: none;
  transition: color 200ms;
}
.o-subfooter__link:hover, .o-subfooter__link:active {
  outline: none !important;
}
.o-subfooter__link:hover {
  color: white;
}
.o-subfooter__link:focus {
  outline-color: currentColor;
  outline-style: solid;
  outline-offset: 1px;
  outline-width: 2px;
}
@media screen and (max-width: 959px) {
  .o-subfooter__link {
    display: block;
    padding: 8px 0;
  }
}

@media screen and (max-width: 1199px) {
  .o-subfooter__trademark {
    margin-top: 12px;
  }
}
@media screen and (min-width: 1200px) {
  .o-subfooter__trademark {
    margin-left: auto;
    order: 3;
  }
}

.o-team__heading {
  color: #193E8A;
  margin-bottom: 48px;
}

.o-team__matrix {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  grid-gap: 32px 12px;
}
@media screen and (min-width: 425px) {
  .o-team__matrix {
    grid-template-columns: repeat(2, 1fr);
    grid-gap: 48px 24px;
  }
}
@media screen and (min-width: 624px) and (max-width: 1199px) {
  .o-team__matrix {
    grid-template-columns: repeat(auto-fit, 184px);
    grid-gap: 48px 24px;
  }
}
@media screen and (min-width: 1200px) {
  .o-team__matrix {
    grid-template-columns: repeat(5, 1fr);
    grid-gap: 48px 24px;
  }
}

.o-thanks {
  width: calc(100% - 12vw);
  margin-left: auto;
  margin-right: auto;
}
@media screen and (min-width: 840px) {
  .o-thanks {
    width: calc((100% / 10) * 8);
  }
}
@media screen and (min-width: 1152px) {
  .o-thanks {
    width: calc((100% / 14) * 12);
    max-width: 1440px;
  }
}
@media screen and (max-width: 839px) {
  .o-thanks {
    padding-bottom: 12vw;
  }
}
@media screen and (min-width: 840px) and (max-width: 1151px) {
  .o-thanks {
    padding-bottom: 0.001vw;
  }
}
@media screen and (min-width: 1152px) and (max-width: 1679px) {
  .o-thanks {
    padding-bottom: 0.0007142857vw;
  }
}
@media screen and (min-width: 1680px) {
  .o-thanks {
    padding-bottom: 120px;
  }
}
@media screen and (min-width: 1110px) {
  .o-thanks {
    display: flex;
  }
}

@media screen and (min-width: 1110px) {
  .o-thanks__left {
    width: calc(50% + 48px);
    padding-right: 48px;
  }
}

.o-thanks__right {
  margin-top: 40px;
}
@media screen and (min-width: 1110px) {
  .o-thanks__right {
    width: 50%;
    margin-top: 0;
  }
}

@media screen and (max-width: 1151px) {
  .o-usp {
    background-color: #ff8a15;
  }
}

@media screen and (min-width: 840px) {
  .o-usp__main {
    display: flex;
  }
}

.o-usp__text {
  padding: 32px 0;
  color: #FFFFFF;
  background-color: #ff8a15;
}
@media screen and (min-width: 840px) {
  .o-usp__text {
    width: 62.5%;
    padding-top: 6.25%;
    padding-bottom: 6.25%;
    padding-left: 0;
    padding-right: 12.5%;
  }
}
@media screen and (min-width: 1152px) {
  .o-usp__text {
    width: 60%;
    padding: 5% 10%;
  }
}

.o-usp__image {
  background-position: 50% 50%;
  background-size: cover;
}
@media screen and (max-width: 839px) {
  .o-usp__image {
    margin-left: -6vw;
    margin-right: -6vw;
    padding-bottom: 65%;
    min-height: 360px;
  }
}
@media screen and (min-width: 840px) and (max-width: 1151px) {
  .o-usp__image {
    width: 50%;
    margin-right: -12.5%;
  }
}
@media screen and (min-width: 1152px) {
  .o-usp__image {
    width: 60%;
  }
}

.o-usp__heading {
  font-size: 2rem;
  margin-bottom: 24px;
  color: #FFFFFF;
}

.o-usp__list {
  list-style-type: none;
  margin-left: 16px;
}

.o-usp__item {
  position: relative;
  padding-left: 16px;
}
.o-usp__item + .o-usp__item {
  margin-top: 16px;
}
.o-usp__item::before {
  content: "";
  position: absolute;
  top: 5px;
  left: -16px;
  width: 16px;
  height: 12px;
  background-image: url(/img/check/checked.svg);
  background-size: 16px 12px;
}

.o-usp__action {
  margin-top: 48px;
}

.o-usp__image {
  background-color: #E6E7EB;
  background-repeat: no-repeat;
}

.o-video-hero {
  display: grid;
  grid-template-columns: auto;
  grid-template-rows: 1fr auto auto auto;
  position: relative;
  color: #FFFFFF;
  margin-bottom: -24px;
  isolation: isolate;
  max-height: 65vh;
}
@media screen and (min-width: 790px) {
  .o-video-hero {
    margin-bottom: clamp(40px, 5vw, 80px);
  }
}

.o-video-hero__vid {
  position: relative;
  grid-row: 1/-2;
  grid-column: 1;
  z-index: -1;
  width: 100%;
  height: 100%;
  aspect-ratio: 1.9403794;
  overflow: hidden;
}
.o-video-hero__vid video {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.o-video-hero__vid:before {
  content: "";
  position: absolute;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.3);
}

.o-video-hero__header {
  grid-row: 1;
  grid-column: 1;
  align-self: center;
  padding-block: 2em 3em;
}
.o-video-hero__header .o-video-hero__header--small {
  font-weight: 100;
}
.o-video-hero__header .o-video-hero__header--underline {
  position: relative;
}
.o-video-hero__header .o-video-hero__header--underline img {
  position: absolute;
  left: 0;
  top: 100%;
  width: 142px;
}

.o-video-hero__header-inner {
  font-size: clamp(20px, 5vw, 56px);
  max-width: 640px;
  font-weight: 600;
}

.o-video-hero__content {
  display: none;
}
@media screen and (min-width: 790px) {
  .o-video-hero__content {
    grid-row: 2;
    grid-column: 1;
    display: flex;
    flex-direction: column;
    gap: 24px;
  }
}

.o-video-hero__buttons {
  display: flex;
  flex-wrap: wrap;
  gap: 16px;
  max-width: 480px;
}
.o-video-hero__buttons > * {
  flex-grow: 1;
}

.o-video-hero__bar {
  --bar-padding-block: 22px;
  grid-row: 3;
  grid-column: 1;
  background: rgba(16, 17, 20, 0.16);
  -webkit-backdrop-filter: blur(12px);
          backdrop-filter: blur(12px);
  padding-top: var(--bar-padding-block);
  padding-bottom: calc(var(--bar-padding-block) + var(--card-padding, 0px));
}
@media screen and (max-width: 789px) {
  .o-video-hero__bar {
    --bar-padding-block: 14px;
    --card-padding: 24px;
  }
}

.o-video-hero__bar-inner {
  display: flex;
  flex-wrap: wrap;
  gap: 24px;
  align-items: center;
  justify-content: space-between;
}

.o-video-hero__sub {
  grid-row: 4;
  grid-column: 1;
}

.o-video-hero__insurers {
  display: grid;
  grid-template-columns: repeat(4, minmax(48px, 78px));
  gap: clamp(16px, 2.3vw, 32px);
}
@media screen and (max-width: 789px) {
  .o-video-hero__insurers {
    display: none;
  }
}

.o-video-hero__insurer {
  opacity: 0.8;
}
.o-video-hero__insurer img {
  width: auto;
  height: 36px;
}

.o-video-hero__more-insurers {
  display: block;
  text-align: right;
  margin-top: 16px;
}
@media screen and (max-width: 789px) {
  .o-video-hero__more-insurers {
    display: none;
  }
}

.o-video-hero__contain {
  width: calc(100% - 12vw);
  margin-left: auto;
  margin-right: auto;
}
@media screen and (min-width: 840px) {
  .o-video-hero__contain {
    width: calc((100% / 10) * 8);
  }
}
@media screen and (min-width: 1152px) {
  .o-video-hero__contain {
    width: calc((100% / 14) * 12);
    max-width: 1440px;
  }
}

.o-video-hero__insocial {
  display: flex;
  align-items: center;
  white-space: nowrap;
}

.o-video-hero__score {
  font-weight: 600;
}

.o-video-hero__logo {
  margin-left: 8px;
  width: 78px;
}

.o-video-hero__star {
  margin-right: 6px;
}

.o-video-hero__usps {
  padding-bottom: 48px;
}
@media screen and (max-width: 789px) {
  .o-video-hero__usps {
    padding-bottom: 24px;
  }
}

.o-reviews {
  position: relative;
  background-image: linear-gradient(180deg, #2751A3 0%, #193E8A 70%);
}
@media screen and (max-width: 839px) {
  .o-reviews {
    margin-bottom: clamp(120px, 7.2vw, 200px);
  }
}

.o-repair-types {
  margin-bottom: clamp(72px, 7.2vw, 120px);
}
.o-repair-types + .o-repair-types {
  margin-top: clamp(72px, 7.2vw, 120px);
}

.o-text-image {
  padding-top: 80px;
  padding-bottom: 80px;
}

.o-text-image--dark {
  background-image: linear-gradient(0deg, #193E8A 32%, #2751A3 100%);
  color: white;
}
.o-text-image--dark .o-text-image__header {
  color: white !important;
}
.o-text-image--dark .o-text-image__page-name {
  color: white;
}

.o-text-image__text {
  max-width: 600px;
}

.o-text-image__header {
  font-size: 32px;
  margin-top: 0;
  margin-bottom: 16px;
  color: #193E8A;
}
@media screen and (max-width: 839px) {
  .o-text-image__header {
    font-size: 20px;
  }
}

.o-text-image__page-name {
  font-size: 0.9375rem;
  color: #638DE0;
  font-weight: 600;
}

@media screen and (max-width: 839px) {
  #component-item-1 .o-text-image {
    margin-top: 0;
    width: 100vw;
    padding: 0;
  }
  #component-item-1 .o-text-image .l-contain {
    width: 100%;
  }
  #component-item-1 .c-projector__img {
    border-top-right-radius: 0;
    border-top-left-radius: 0;
  }
  #component-item-1 .l-split__column:last-of-type {
    width: calc(100% - 12vw);
    margin-left: auto;
    margin-right: auto;
    padding-bottom: 72px;
  }
}
@media screen and (max-width: 839px) and (min-width: 840px) {
  #component-item-1 .l-split__column:last-of-type {
    width: calc((100% / 10) * 8);
  }
}
@media screen and (max-width: 839px) and (min-width: 1152px) {
  #component-item-1 .l-split__column:last-of-type {
    width: calc((100% / 14) * 12);
    max-width: 1440px;
  }
}

#component-item-1 .o-text-image .l-split {
  align-items: flex-start;
}

.o-usps {
  margin: clamp(24px, 2.4vw, 40px) 0;
  padding: clamp(48px, 4.8vw, 80px) 0;
}

.o-usps--dark {
  background-color: #F0F2F5;
}

.o-alert {
  text-align: center;
  font-size: 0.8125rem;
  line-height: 1.3846153846;
  font-weight: 600;
  padding: 8px 6vw;
  color: #FFFFFF;
  background-color: #638DE0;
  position: relative;
}
.o-alert svg {
  margin-right: 8px;
  transform: translateY(-1px);
}

.o-cta-form {
  display: grid;
  grid-template-columns: 58.3333333333% 41.6666666667%;
  justify-content: space-between;
}
@media screen and (max-width: 1229px) {
  .o-cta-form {
    grid-template-columns: 100%;
  }
}
@media screen and (min-width: 700px) {
  .o-cta-form {
    width: calc(100% - 12vw);
    margin-left: auto;
    margin-right: auto;
  }
}
@media screen and (min-width: 700px) and (min-width: 840px) {
  .o-cta-form {
    width: calc((100% / 10) * 8);
  }
}
@media screen and (min-width: 700px) and (min-width: 1152px) {
  .o-cta-form {
    width: calc((100% / 14) * 12);
    max-width: 1440px;
  }
}
.o-cta-form.o-cta-form--reversed {
  grid-template-columns: 41.6666666667% 58.3333333333%;
}
@media screen and (max-width: 1229px) {
  .o-cta-form.o-cta-form--reversed {
    grid-template-columns: 100%;
  }
}

.o-cta-form--reversed .o-cta-form__column--form {
  order: -1;
}

.o-cta-form__column--additional-component {
  margin-right: 120px;
}
@media screen and (max-width: 1229px) {
  .o-cta-form__column--additional-component {
    max-width: calc(100% - 12vw);
    margin: 0 auto 48px;
  }
}
.o-cta-form--reversed .o-cta-form__column--additional-component {
  margin-left: 120px;
}
@media screen and (max-width: 1229px) {
  .o-cta-form--reversed .o-cta-form__column--additional-component {
    margin: 0 auto;
  }
}

/*  7 - Templates
 *  Override styling for a specific template
 =========================================================== */
/** ==========================================================================
 * Templates
 * =========================================================================*/
.t-faq {
  margin-top: clamp(40px, 3.8vw, 64px);
}

.t-faq__title {
  margin-bottom: clamp(24px, 2vw, 40px);
}

@media screen and (min-width: 1120px) {
  .t-faq__main {
    display: flex;
    justify-content: space-between;
  }
}

.t-faq__content {
  flex: 1 1 auto;
}

.t-faq__menu {
  flex: 0 0 clamp(296px, 18vw, 340px);
  margin-right: clamp(64px, 5.2vw, 88px);
}
@media screen and (max-width: 1119px) {
  .t-faq__menu {
    display: none;
  }
}

.t-faq__categories {
  display: grid;
  grid-template-columns: 1fr;
  grid-template-rows: 1fr;
  grid-template-areas: "full";
  max-width: 744px;
}
@media screen and (max-width: 1119px) {
  .t-faq__categories {
    display: block;
  }
}

@media screen and (max-width: 1119px) {
  .t-faq__category + .t-faq__category {
    margin-top: 40px;
  }
}
@media screen and (min-width: 1120px) {
  .t-faq__category {
    opacity: 0;
    grid-area: full;
    pointer-events: none;
    transition: opacity 125ms linear;
  }
}
.t-faq__category.is-active {
  pointer-events: auto;
  opacity: 1;
  transition: opacity 125ms linear 175ms;
}

.t-faq__cta {
  margin-top: clamp(64px, 6.2vw, 105px);
}

#insurers #component-item-1 {
  margin: clamp(40px, 2.5vw, 64px) 0;
}
#insurers #component-item-1.l-component--text .l-restrict-narrow {
  max-width: 720px;
}

.t-damage-flow {
  overflow-y: scroll;
}

/*  8 - SCOPES
 *  Elements and classes that are scoped by a parent class
 =========================================================== */
.s-checklist {
  list-style: none;
  margin-left: 0;
}
.s-checklist li {
  display: flex;
  vertical-align: middle;
  margin-top: 5px;
  line-height: 1.45;
}
.s-checklist li::before {
  content: "";
  background-image: url(/img/check/checked.svg);
  background-repeat: no-repeat;
  width: 12px;
  height: 12px;
  margin-right: 8px;
  transform: translateY(7px);
}

/**
 * All text elements that can be added by the user through a CMS
 */
.s-text h1, .s-text h2, .s-text h3, .s-text h4 {
  color: #193E8A;
}
.s-text > * + * {
  margin-top: 24px;
}
.s-text > :first-child {
  margin-top: 0 !important;
}
.s-text .c-pre-title + h1,
.s-text .c-pre-title + h2,
.s-text .c-pre-title + h3,
.s-text .c-pre-title + h4 {
  margin-top: 0;
}
.s-text > * + .c-button {
  margin-top: 40px;
}
.s-text > ul:not([class]) {
  list-style: none;
}
.s-text > ul:not([class]) > li {
  position: relative;
  margin-left: -1.125em;
  margin-bottom: 4px;
  padding-left: 32px;
  color: #193E8A;
  font-size: 0.9375rem;
  line-height: 1.6;
  font-weight: 600;
}
.s-text > ul:not([class]) > li::before {
  position: absolute;
  top: -7px;
  left: 0;
  content: url(/img/check/checked.svg);
  font-size: 1.5rem;
}
.s-text > ol:not([class]) {
  list-style: none;
  counter-reset: ol-counter;
}
.s-text > ol:not([class]) > li {
  counter-increment: ol-counter;
  position: relative;
  margin-left: -1.125em;
  padding-left: 1.8em;
}
.s-text > ol:not([class]) > li::before {
  content: counter(ol-counter) ". ";
  position: absolute;
  top: 0;
  left: 0;
  width: 1.275em;
  text-align: right;
}

.s-text--on-dark {
  color: white;
}
.s-text--on-dark h1, .s-text--on-dark h2, .s-text--on-dark h3, .s-text--on-dark h4 {
  color: white;
}

/*  9 - UTILITIES
 *  High-specificity, very explicit selectors.
 *  Overrides and helper classes.
 =========================================================== */
/** =====================================================================================
 *  Color
 ===================================================================================== */
/**
 * Here we print out all our helper classes for our defined colors
 * Based on these articles:
 * - http://erskinedesign.com/blog/friendlier-colour-names-sass-maps/
 * - https://blog.atechmedia.com/css-for-multiple-themes/
 * Output is in the form of:

   .u-color-primary {
      color: #bada55;
   }

  .u-bg-neutral--900 {
    background-color: #decaff;
  }
 */
.u-color-primary--500 {
  color: #ff8a15;
}

.u-bg-primary--500 {
  background-color: #ff8a15;
}

.u-color-primary--600 {
  color: #ff6a14;
}

.u-bg-primary--600 {
  background-color: #ff6a14;
}

.u-color-secondary--50 {
  color: #F0F2F5;
}

.u-bg-secondary--50 {
  background-color: #F0F2F5;
}

.u-color-secondary--300 {
  color: #B6CEF0;
}

.u-bg-secondary--300 {
  background-color: #B6CEF0;
}

.u-color-secondary--400 {
  color: #638DE0;
}

.u-bg-secondary--400 {
  background-color: #638DE0;
}

.u-color-secondary--450 {
  color: #426AB8;
}

.u-bg-secondary--450 {
  background-color: #426AB8;
}

.u-color-secondary--550 {
  color: #2751A3;
}

.u-bg-secondary--550 {
  background-color: #2751A3;
}

.u-color-secondary--600 {
  color: #193E8A;
}

.u-bg-secondary--600 {
  background-color: #193E8A;
}

.u-color-secondary--800 {
  color: #16293D;
}

.u-bg-secondary--800 {
  background-color: #16293D;
}

.u-color-tertiary--500 {
  color: #16C85E;
}

.u-bg-tertiary--500 {
  background-color: #16C85E;
}

.u-color-neutral--0 {
  color: #FFFFFF;
}

.u-bg-neutral--0 {
  background-color: #FFFFFF;
}

.u-color-neutral--50 {
  color: #F2F2F4;
}

.u-bg-neutral--50 {
  background-color: #F2F2F4;
}

.u-color-neutral--100 {
  color: #E6E7EB;
}

.u-bg-neutral--100 {
  background-color: #E6E7EB;
}

.u-color-neutral--300 {
  color: #C9CACD;
}

.u-bg-neutral--300 {
  background-color: #C9CACD;
}

.u-color-neutral--600 {
  color: #5C5E66;
}

.u-bg-neutral--600 {
  background-color: #5C5E66;
}

.u-color-neutral--800 {
  color: #25313D;
}

.u-bg-neutral--800 {
  background-color: #25313D;
}

.u-color-feedback--action {
  color: #4079B8;
}

.u-bg-feedback--action {
  background-color: #4079B8;
}

.u-color-feedback--warning {
  color: #ffd33a;
}

.u-bg-feedback--warning {
  background-color: #ffd33a;
}

.u-color-feedback--alert {
  color: #ff8100;
}

.u-bg-feedback--alert {
  background-color: #ff8100;
}

.u-color-feedback--negative {
  color: #ffe7d9;
}

.u-bg-feedback--negative {
  background-color: #ffe7d9;
}

.u-color-feedback--positive {
  color: #3ecf8e;
}

.u-bg-feedback--positive {
  background-color: #3ecf8e;
}

.u-color-border--0 {
  color: #fff;
}

.u-bg-border--0 {
  background-color: #fff;
}

.u-color-border--300 {
  color: #C8C8C8;
}

.u-bg-border--300 {
  background-color: #C8C8C8;
}

.u-color-border--500 {
  color: #656565;
}

.u-bg-border--500 {
  background-color: #656565;
}

.u-opacity-1 {
  opacity: 0.1;
}

.u-opacity-2 {
  opacity: 0.2;
}

.u-opacity-3 {
  opacity: 0.3;
}

.u-opacity-4 {
  opacity: 0.4;
}

.u-opacity-5 {
  opacity: 0.5;
}

.u-opacity-6 {
  opacity: 0.6;
}

.u-opacity-7 {
  opacity: 0.7;
}

.u-opacity-8 {
  opacity: 0.8;
}

.u-opacity-9 {
  opacity: 0.9;
}

.u-opacity-10 {
  opacity: 1;
}

/** =====================================================================================
 *  Fonts
 ===================================================================================== */
/**
 * Here we print out all our helper classes for our defined $font-sizes map
 * Output of the classes in the this form:

   .u-fs-12 {}
   .u-fs-24 {}
   ... etc

 */
/**
 * Here we print out all our helper classes for our defined $font-weights map
 * Output of the classes in the this form:

   .u-fw-regular {}
   .u-fw-semiBold {}
   ... etc

 */
.u-fw-book {
  font-weight: 400;
}

.u-fw-regular {
  font-weight: 500;
}

.u-fw-medium {
  font-weight: 600;
}

.u-fw-semiBold {
  font-weight: 600;
}

.u-relative {
  position: relative;
}

.u-hidden {
  display: none !important;
}

.u-placeholder-image {
  height: 100% !important;
  width: 100% !important;
  object-fit: cover !important;
}

.u-text-align-center {
  text-align: center !important;
}

.nowrap {
  white-space: nowrap;
}

.u-usp {
  font-size: 0.8125rem;
  list-style-image: url("/img/check/checked.svg");
  padding-left: 12px;
}

/*
* If you need to make a quick fix, you can do it here.
* Later when you have the time, you can move the fix into the correct place in the structure
*/
.u-spacing-mt0 {
  margin-top: 0px !important;
}

.u-spacing-mr0 {
  margin-right: 0px !important;
}

.u-spacing-mb0 {
  margin-bottom: 0px !important;
}

.u-spacing-ml0 {
  margin-left: 0px !important;
}

.u-spacing-pt0 {
  padding-top: 0px !important;
}

.u-spacing-pr0 {
  padding-right: 0px !important;
}

.u-spacing-pb0 {
  padding-bottom: 0px !important;
}

.u-spacing-pl0 {
  padding-left: 0px !important;
}

.u-spacing-mt1 {
  margin-top: 8px !important;
}

.u-spacing-mr1 {
  margin-right: 8px !important;
}

.u-spacing-mb1 {
  margin-bottom: 8px !important;
}

.u-spacing-ml1 {
  margin-left: 8px !important;
}

.u-spacing-pt1 {
  padding-top: 8px !important;
}

.u-spacing-pr1 {
  padding-right: 8px !important;
}

.u-spacing-pb1 {
  padding-bottom: 8px !important;
}

.u-spacing-pl1 {
  padding-left: 8px !important;
}

.u-spacing-mt2 {
  margin-top: 16px !important;
}

.u-spacing-mr2 {
  margin-right: 16px !important;
}

.u-spacing-mb2 {
  margin-bottom: 16px !important;
}

.u-spacing-ml2 {
  margin-left: 16px !important;
}

.u-spacing-pt2 {
  padding-top: 16px !important;
}

.u-spacing-pr2 {
  padding-right: 16px !important;
}

.u-spacing-pb2 {
  padding-bottom: 16px !important;
}

.u-spacing-pl2 {
  padding-left: 16px !important;
}

.u-spacing-mt3 {
  margin-top: 24px !important;
}

.u-spacing-mr3 {
  margin-right: 24px !important;
}

.u-spacing-mb3 {
  margin-bottom: 24px !important;
}

.u-spacing-ml3 {
  margin-left: 24px !important;
}

.u-spacing-pt3 {
  padding-top: 24px !important;
}

.u-spacing-pr3 {
  padding-right: 24px !important;
}

.u-spacing-pb3 {
  padding-bottom: 24px !important;
}

.u-spacing-pl3 {
  padding-left: 24px !important;
}

.u-spacing-mt4 {
  margin-top: 32px !important;
}

.u-spacing-mr4 {
  margin-right: 32px !important;
}

.u-spacing-mb4 {
  margin-bottom: 32px !important;
}

.u-spacing-ml4 {
  margin-left: 32px !important;
}

.u-spacing-pt4 {
  padding-top: 32px !important;
}

.u-spacing-pr4 {
  padding-right: 32px !important;
}

.u-spacing-pb4 {
  padding-bottom: 32px !important;
}

.u-spacing-pl4 {
  padding-left: 32px !important;
}

.u-spacing-mt5 {
  margin-top: 40px !important;
}

.u-spacing-mr5 {
  margin-right: 40px !important;
}

.u-spacing-mb5 {
  margin-bottom: 40px !important;
}

.u-spacing-ml5 {
  margin-left: 40px !important;
}

.u-spacing-pt5 {
  padding-top: 40px !important;
}

.u-spacing-pr5 {
  padding-right: 40px !important;
}

.u-spacing-pb5 {
  padding-bottom: 40px !important;
}

.u-spacing-pl5 {
  padding-left: 40px !important;
}

.u-spacing-mt6 {
  margin-top: 48px !important;
}

.u-spacing-mr6 {
  margin-right: 48px !important;
}

.u-spacing-mb6 {
  margin-bottom: 48px !important;
}

.u-spacing-ml6 {
  margin-left: 48px !important;
}

.u-spacing-pt6 {
  padding-top: 48px !important;
}

.u-spacing-pr6 {
  padding-right: 48px !important;
}

.u-spacing-pb6 {
  padding-bottom: 48px !important;
}

.u-spacing-pl6 {
  padding-left: 48px !important;
}

.u-spacing-mt7 {
  margin-top: 56px !important;
}

.u-spacing-mr7 {
  margin-right: 56px !important;
}

.u-spacing-mb7 {
  margin-bottom: 56px !important;
}

.u-spacing-ml7 {
  margin-left: 56px !important;
}

.u-spacing-pt7 {
  padding-top: 56px !important;
}

.u-spacing-pr7 {
  padding-right: 56px !important;
}

.u-spacing-pb7 {
  padding-bottom: 56px !important;
}

.u-spacing-pl7 {
  padding-left: 56px !important;
}

.u-spacing-mt8 {
  margin-top: 64px !important;
}

.u-spacing-mr8 {
  margin-right: 64px !important;
}

.u-spacing-mb8 {
  margin-bottom: 64px !important;
}

.u-spacing-ml8 {
  margin-left: 64px !important;
}

.u-spacing-pt8 {
  padding-top: 64px !important;
}

.u-spacing-pr8 {
  padding-right: 64px !important;
}

.u-spacing-pb8 {
  padding-bottom: 64px !important;
}

.u-spacing-pl8 {
  padding-left: 64px !important;
}

.u-spacing-mt9 {
  margin-top: 72px !important;
}

.u-spacing-mr9 {
  margin-right: 72px !important;
}

.u-spacing-mb9 {
  margin-bottom: 72px !important;
}

.u-spacing-ml9 {
  margin-left: 72px !important;
}

.u-spacing-pt9 {
  padding-top: 72px !important;
}

.u-spacing-pr9 {
  padding-right: 72px !important;
}

.u-spacing-pb9 {
  padding-bottom: 72px !important;
}

.u-spacing-pl9 {
  padding-left: 72px !important;
}

.u-spacing-mt10 {
  margin-top: 80px !important;
}

.u-spacing-mr10 {
  margin-right: 80px !important;
}

.u-spacing-mb10 {
  margin-bottom: 80px !important;
}

.u-spacing-ml10 {
  margin-left: 80px !important;
}

.u-spacing-pt10 {
  padding-top: 80px !important;
}

.u-spacing-pr10 {
  padding-right: 80px !important;
}

.u-spacing-pb10 {
  padding-bottom: 80px !important;
}

.u-spacing-pl10 {
  padding-left: 80px !important;
}

.u-spacing-mt11 {
  margin-top: 88px !important;
}

.u-spacing-mr11 {
  margin-right: 88px !important;
}

.u-spacing-mb11 {
  margin-bottom: 88px !important;
}

.u-spacing-ml11 {
  margin-left: 88px !important;
}

.u-spacing-pt11 {
  padding-top: 88px !important;
}

.u-spacing-pr11 {
  padding-right: 88px !important;
}

.u-spacing-pb11 {
  padding-bottom: 88px !important;
}

.u-spacing-pl11 {
  padding-left: 88px !important;
}

.u-spacing-mt12 {
  margin-top: 96px !important;
}

.u-spacing-mr12 {
  margin-right: 96px !important;
}

.u-spacing-mb12 {
  margin-bottom: 96px !important;
}

.u-spacing-ml12 {
  margin-left: 96px !important;
}

.u-spacing-pt12 {
  padding-top: 96px !important;
}

.u-spacing-pr12 {
  padding-right: 96px !important;
}

.u-spacing-pb12 {
  padding-bottom: 96px !important;
}

.u-spacing-pl12 {
  padding-left: 96px !important;
}

.u-spacing-mt13 {
  margin-top: 104px !important;
}

.u-spacing-mr13 {
  margin-right: 104px !important;
}

.u-spacing-mb13 {
  margin-bottom: 104px !important;
}

.u-spacing-ml13 {
  margin-left: 104px !important;
}

.u-spacing-pt13 {
  padding-top: 104px !important;
}

.u-spacing-pr13 {
  padding-right: 104px !important;
}

.u-spacing-pb13 {
  padding-bottom: 104px !important;
}

.u-spacing-pl13 {
  padding-left: 104px !important;
}

.u-spacing-mt14 {
  margin-top: 112px !important;
}

.u-spacing-mr14 {
  margin-right: 112px !important;
}

.u-spacing-mb14 {
  margin-bottom: 112px !important;
}

.u-spacing-ml14 {
  margin-left: 112px !important;
}

.u-spacing-pt14 {
  padding-top: 112px !important;
}

.u-spacing-pr14 {
  padding-right: 112px !important;
}

.u-spacing-pb14 {
  padding-bottom: 112px !important;
}

.u-spacing-pl14 {
  padding-left: 112px !important;
}

.u-spacing-mt15 {
  margin-top: 120px !important;
}

.u-spacing-mr15 {
  margin-right: 120px !important;
}

.u-spacing-mb15 {
  margin-bottom: 120px !important;
}

.u-spacing-ml15 {
  margin-left: 120px !important;
}

.u-spacing-pt15 {
  padding-top: 120px !important;
}

.u-spacing-pr15 {
  padding-right: 120px !important;
}

.u-spacing-pb15 {
  padding-bottom: 120px !important;
}

.u-spacing-pl15 {
  padding-left: 120px !important;
}

.u-spacing-mt16 {
  margin-top: 128px !important;
}

.u-spacing-mr16 {
  margin-right: 128px !important;
}

.u-spacing-mb16 {
  margin-bottom: 128px !important;
}

.u-spacing-ml16 {
  margin-left: 128px !important;
}

.u-spacing-pt16 {
  padding-top: 128px !important;
}

.u-spacing-pr16 {
  padding-right: 128px !important;
}

.u-spacing-pb16 {
  padding-bottom: 128px !important;
}

.u-spacing-pl16 {
  padding-left: 128px !important;
}

.u-spacing-mt17 {
  margin-top: 136px !important;
}

.u-spacing-mr17 {
  margin-right: 136px !important;
}

.u-spacing-mb17 {
  margin-bottom: 136px !important;
}

.u-spacing-ml17 {
  margin-left: 136px !important;
}

.u-spacing-pt17 {
  padding-top: 136px !important;
}

.u-spacing-pr17 {
  padding-right: 136px !important;
}

.u-spacing-pb17 {
  padding-bottom: 136px !important;
}

.u-spacing-pl17 {
  padding-left: 136px !important;
}

.u-spacing-mt18 {
  margin-top: 144px !important;
}

.u-spacing-mr18 {
  margin-right: 144px !important;
}

.u-spacing-mb18 {
  margin-bottom: 144px !important;
}

.u-spacing-ml18 {
  margin-left: 144px !important;
}

.u-spacing-pt18 {
  padding-top: 144px !important;
}

.u-spacing-pr18 {
  padding-right: 144px !important;
}

.u-spacing-pb18 {
  padding-bottom: 144px !important;
}

.u-spacing-pl18 {
  padding-left: 144px !important;
}

.u-spacing-mt19 {
  margin-top: 152px !important;
}

.u-spacing-mr19 {
  margin-right: 152px !important;
}

.u-spacing-mb19 {
  margin-bottom: 152px !important;
}

.u-spacing-ml19 {
  margin-left: 152px !important;
}

.u-spacing-pt19 {
  padding-top: 152px !important;
}

.u-spacing-pr19 {
  padding-right: 152px !important;
}

.u-spacing-pb19 {
  padding-bottom: 152px !important;
}

.u-spacing-pl19 {
  padding-left: 152px !important;
}

.u-spacing-mt20 {
  margin-top: 160px !important;
}

.u-spacing-mr20 {
  margin-right: 160px !important;
}

.u-spacing-mb20 {
  margin-bottom: 160px !important;
}

.u-spacing-ml20 {
  margin-left: 160px !important;
}

.u-spacing-pt20 {
  padding-top: 160px !important;
}

.u-spacing-pr20 {
  padding-right: 160px !important;
}

.u-spacing-pb20 {
  padding-bottom: 160px !important;
}

.u-spacing-pl20 {
  padding-left: 160px !important;
}

.u-spacing-mt0-5 {
  margin-top: 4px !important;
}

.u-spacing-mr0-5 {
  margin-right: 4px !important;
}

.u-spacing-mb0-5 {
  margin-bottom: 4px !important;
}

.u-spacing-ml0-5 {
  margin-left: 4px !important;
}

@media screen and (max-width: 839px) {
  .u-spacing-pv {
    padding-top: 12vw;
    padding-bottom: 12vw;
  }
}
@media screen and (min-width: 840px) and (max-width: 1151px) {
  .u-spacing-pv {
    padding-top: 0.001vw;
    padding-bottom: 0.001vw;
  }
}
@media screen and (min-width: 1152px) and (max-width: 1679px) {
  .u-spacing-pv {
    padding-top: 0.0007142857vw;
    padding-bottom: 0.0007142857vw;
  }
}
@media screen and (min-width: 1680px) {
  .u-spacing-pv {
    padding-top: 120px;
    padding-bottom: 120px;
  }
}

@media screen and (min-width: 1152px) {
  .u-spacing-pr0\@l {
    padding-right: 0 !important;
  }
}

/*# sourceMappingURL=data:application/json;charset=utf-8;base64,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QUF6WkE7OzhEQUFBO0FlOUJBOzsrRUFBQTtBQUtBO0VOK0xDO0VBQ0E7RUFDQTtBVDZQRDtBUTVaQztFT2xDRDtJTnFNSTtFVDZQRjtBQUNGO0FRamFDO0VPbENEO0lONE1FO0lBQ0E7RVQyUEE7QUFDRjs7QWVyY0E7RUFDRTtBZndjRjtBUTNhQztFTzlCRDtJQUdJO0VmMGNGO0FBQ0Y7O0FnQnZkQTs7OzttRkFBQTtBQU9BO0VBQ0M7RUFDQTtBaEJ3ZEQ7QVExYkM7RVFoQ0Q7SUFNRTtJQUNBO0VoQndkQTtBQUNGOztBZ0JwZEE7OztFQUFBO0FBS0E7RVA0S0M7RUFDQTtFQUNBO0FUMlNEO0FRMWNDO0VRZkQ7SVBvTEc7RVR5U0Q7QUFDRjtBUS9jQztFUWZEO0lQeUxFO0lBQ0E7RVR5U0E7QUFDRjs7QVFyZEM7RVFWRDtJQUlFO0VoQmdlQTtBQUNGO0FRM2RDO0VRRkE7SUFFRTtJQUNBO0VoQitkRDtBQUNGO0FRamVDO0VRVUE7SVB1Qks7RVRvY0o7QUFDRjtBUXRlQztFUVVBO0lBUUU7SUFDQTtFaEJ3ZEQ7QUFDRjtBUTVlQztFUVVBO0lBYUU7RWhCeWREO0FBQ0Y7QWdCcmRDO0VBQ0M7RUFDQTtBaEJ1ZEY7QWdCcmRFO0VBQ0M7RUFDQTtBaEJ1ZEg7QVF6ZkM7RVFnQ0M7SUFJRTtJQUNBO0VoQnlkRjtBQUNGO0FRL2ZDO0VRZ0NDO0lBUUU7SUFDQTtFaEIyZEY7QUFDRjs7QVFyZ0JDO0VRa0RFO0lBQ0M7SUFDQTtJQUNBO0VoQnVkRjtFZ0JyZEM7SUFDQztFaEJ1ZEY7QUFDRjtBZ0JqZEE7OztFQUFBO0FSL0RDO0VRbUVEO0lBRUU7SUFDQTtJQUNBO0lBQ0E7RWhCbWRBO0FBQ0Y7QVE1aEJDO0VRbUVEO0lBUUU7SUFDQTtFaEJxZEE7QUFDRjs7QWdCL2NBO0VBQ0M7RUFDQTtFQUNBO0FoQmtkRDs7QVF4aUJDO0VRNEZBO0lBQ0M7RWhCZ2RBO0FBQ0Y7QWlCcmxCQTs7K0VBQUE7QUFNRTtFQUNFO0FqQm9sQko7O0FBcmpCQTs7OzhEQUFBO0FrQnRDQTs7NkVBQUE7QUNBQTtFQUNDO0FuQnFtQkQ7O0FtQmxtQkE7RUFDQztFQUNBO0VBQ0E7RUFDQTtBbkJxbUJEOztBbUJqbUJBO0VBQ0M7RUFDQTtBbkJvbUJEO0FtQmptQkU7RUFDQztFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBRUE7QW5Ca21CSDs7QW1CN2xCQTtFQUNDO0VBQ0E7QW5CZ21CRDtBbUI5bEJDO0VBQ0M7QW5CZ21CRjs7QW9Cam5CQTtFWHNIRTtFSHRIRTtFY0dIO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FwQm9uQkQ7QW9CbG5CQztFQUNDO0VBQ0E7QXBCb25CRjtBb0JsbkJDO0VBQ0M7RUFDQTtBcEJvbkJGO0FvQmxuQkM7RUFDQztFQUNBO0FwQm9uQkY7QW9CaG5CQztFQUNDO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FwQmtuQkY7QW9CL21CQztFQUNDO0VBQ0E7QXBCaW5CRjs7QW9CN21CQTtFQUNDO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QXBCZ25CRDtBb0I5bUJDO0VBQ0M7QXBCZ25CRjs7QW9CNW1CQTtFQUNDO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBcEIrbUJEO0FvQjdtQkM7RUFDQztBcEIrbUJGO0FvQjNtQkM7RUFDQztFQUNBO0FwQjZtQkY7QW9CMW1CQztFQUNDO0VBQ0E7QXBCNG1CRjs7QW9CeG1CQTtFQUNDO0VBQ0E7QXBCMm1CRDtBb0J6bUJDO0VBQ0M7QXBCMm1CRjs7QW9Cdm1CQTtFQUNDO0VBQ0E7QXBCMG1CRDtBb0J4bUJDO0VBQ0M7QXBCMG1CRjs7QW9CdG1CQTtFQUNDO0VBQ0E7QXBCeW1CRDs7QW9Ccm1CQTtFQUNDO0FwQndtQkQ7O0FvQnJtQkE7RUFDQztBcEJ3bUJEOztBcUJsdkJBOzsrRUFBQTtBQVNBO0VaaUlFO0VIdEhFO0VlUkg7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7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RUFDQTtFQUNBO0F4QnNoQ0Y7O0F3QmpoQ0E7RUFDQztFQUNBO0F4Qm9oQ0Q7QVE1aENDO0VnQk1EO0lBS0U7RXhCcWhDQTtBQUNGOztBeUI3akNBO0VBQ0M7QXpCZ2tDRDs7QXlCN2pDQTtFQUNDO0F6QmdrQ0Q7O0F5QjdqQ0E7RUFDQztFQUNBO0VBQ0E7QXpCZ2tDRDs7QXlCN2pDQTtFQUNJO0VBQ0g7QXpCZ2tDRDtBU3A2QkM7RUFFQztBVHE2QkY7QXlCOWpDRTtFQUNDO0F6QmdrQ0g7QXlCOWpDRTtFQUNDO0VBQ0E7RUFDQTtFQUNBO0F6QmdrQ0g7O0EwQnZtQ0E7RUFDQztFQUNBO0VBQ0E7QTFCMG1DRDs7QTBCdG1DQTtFQUNDO0VBQ0E7QTFCeW1DRDs7QTBCcm1DQTtFcEJPSTtFb0JMSDtBMUJ3bUNEOztBMEJwbUNBO0VwQkNJO0VvQkNIO0ExQnVtQ0Q7O0EwQnBtQ0E7RXBCSkk7QU40bUNKOztBMkJybkNBO0VBRUM7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTNCdW5DRDtBU245QkM7RUFFQztBVG85QkY7QTJCeG5DQztFQUNDO0VBQ0E7RUFDQTtFQUNBO0EzQjBuQ0Y7O0EyQnJuQ0E7RUFDQztFQUNBO0VBQ0E7RUFDQTtBM0J3bkNEO0EyQnRuQ0M7RUFDQztFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTNCd25DRjtBMkJwbkNFO0VBQ0M7QTNCc25DSDs7QTJCaG5DQTtFQUNDO0VBQ0E7RUFDQTtBM0JtbkNEOztBMkIvbUNBO0VBQ0M7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBM0JrbkNEO0EyQmhuQ0M7RUFDQztFQUNBO0EzQmtuQ0Y7O0EyQjdtQ0E7RUFDQztFQUNBO0VBQ0E7RUFDQTtFQUNBO0EzQmduQ0Q7QTJCOW1DQztFQUNDO0EzQmduQ0Y7O0EyQjNtQ0E7RXJCNUVJO0VxQjhFSDtFQUNBO0VBQ0E7RUFDQTtFQUNBO0EzQjhtQ0Q7QTJCNW1DQztFQUNDO0EzQjhtQ0Y7O0EyQnptQ0E7RXJCMUZJO0VxQjRGSDtFQUNBO0VBQ0E7RUFDQTtBM0I0bUNEO0EyQjFtQ0M7RUFDQztBM0I0bUNGOztBMkJ2bUNBO0VyQnZHSTtFcUJ5R0g7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBM0IwbUNEO0EyQnhtQ0M7RUFDQztBM0IwbUNGOztBNEJsdUNBO0VBQ0M7QTVCcXVDRDs7QTRCanVDQTtFQUNDO0VBQ0E7RUFDQTtFQUNBO0E1Qm91Q0Q7O0E0Qmh1Q0E7RW5CaUhFO0VIdEhFO0VzQlFIO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBNUJtdUNEO0E0Qmp1Q0M7RUFDQztFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTVCbXVDRjtBNEJodUNDO0VBQ0M7QTVCa3VDRjs7QTRCN3RDQTtFQUNDO0VBQ0E7RUFDQTtFQUNBO0E1Qmd1Q0Q7QTRCOXRDQztFQUNDO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBNUJndUNGO0E0Qjl0Q0U7RUFDQztFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0E1Qmd1Q0g7QTRCNXRDRTtFQUNDO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBNUI4dENIO0E0QjV0Q0c7RUFDQztBNUI4dENKO0E0QjN0Q0c7RUFDQztBNUI2dENKOztBNEJ0dENBO0VBQ0M7QTVCeXRDRDs7QTRCcnRDQTtFQUNDO0lBQ0M7SUFDQTtJQUNBO0lBQ0E7RTVCd3RDQTtBQUNGO0E2QnAwQ0E7RXZCU0k7RXVCUEY7RUFDQTtFQUNBO0E3QnMwQ0Y7O0E2Qm4wQ0E7RUFDRTtBN0JzMENGO0E2QnAwQ0U7RXZCREU7RXVCR0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTdCczBDSjs7QThCdjFDQTtFeEJRSTtFR21IRjtFcUJ4SEE7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBOUIwMUNGO0E4QngxQ0U7RUFDRTtBOUIwMUNKO0E4QnYxQ0U7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0E5QnkxQ0o7QThCdDFDRTtFQUNFO0E5QncxQ0o7O0ErQnIzQ0E7RUFDQztFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBL0J3M0NEO0ErQnQzQ0M7RUFDQztFQUNBO0VBQ0E7RUFDQTtBL0J3M0NGOztBK0JsM0NBO0VBQ0M7RUFDQTtFQUNBO0VBQ0E7RUFDRTtFQUNGO0EvQnEzQ0Q7QStCbjNDQztFQUdDO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QS9CbTNDRjtBK0JoM0NDO0VBQ0M7QS9CazNDRjtBK0I5MkNDO0VBQ0M7RUFDQTtBL0JnM0NGO0ErQjUyQ0U7RUFDQztBL0I4MkNIO0ErQjUyQ0U7RUFFQztBL0I2MkNIO0ErQngyQ0U7RUFDQztBL0IwMkNIO0ErQngyQ0U7RUFDQztFQUNBO0EvQjAyQ0g7QStCeDJDRTtFQUNDO0VBQ0E7QS9CMDJDSDs7QWdDajhDQTtFMUJvQkk7RTBCbEJIO0VBQ0E7QWhDbzhDRDs7QVFoNkNDO0V3QmpDRDtJQUVFO0VoQ284Q0E7QUFDRjs7QVF0NkNDO0V5QjVCRDtJeEJ5TEM7SUFDQTtJQUNBO0VUOHdDQztBQUNGO0FROTZDQztFeUI1QkQ7SXhCK0xJO0VUK3dDRjtBQUNGO0FRbjdDQztFeUI1QkQ7SXhCc01FO0lBQ0E7RVQ2d0NBO0FBQ0Y7O0FpQy84Q0E7RUFDQztFQUNBO0FqQ2s5Q0Q7O0FpQy84Q0E7RUFDQztFQUNBO0VBQ0E7QWpDazlDRDtBUXA4Q0M7RXlCakJEO0lBTUU7RWpDbTlDQTtBQUNGOztBaUNoOUNBO0VBQ0M7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBakNtOUNEO0FpQ2o5Q0M7RUFDQztFQUNBO0VBQ0E7QWpDbTlDRjs7QWlDLzhDQTtFQUNDO0FqQ2s5Q0Q7O0FpQy84Q0E7RUFFQztFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FqQ2k5Q0Q7QVF4K0NDO0V5QmNEO0lBWUU7SUFDQTtJQUNBO0lBQ0E7SUFDQTtFakNrOUNBO0FBQ0Y7QVFqL0NDO0V5QmNEO0lBcUJFO0lBQ0E7SUFDQTtFakNrOUNBO0FBQ0Y7QVF4L0NDO0V5QmNEO0kzQmpDSTtJMkI2REY7SUFDQTtFakNtOUNBO0FBQ0Y7O0FpQ2g5Q0E7RUFDQztFQUNBO0VBQ0E7RUFDQTtFQUNBO0FqQ205Q0Q7QWlDajlDQztFQUNDO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QWpDbTlDRjs7QWtDemlEQTtFQUNDO0U1QklHO0U0QkZIO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBbEM0aUREO0FrQzFpREM7RUFDQztFQUNBO0VBQ0E7QWxDNGlERjtBa0N6aURDO0VBQ0M7RUFDQTtBbEMyaURGO0FrQ3hpRFU7RUFDUjtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FsQzBpREY7O0FrQ3ZpREM7RTVCeEJHO0VBTUE7RTRCb0JGO0FsQzJpREY7O0FrQzdpREM7RTVCeEJHO0VBTUE7RTRCb0JGO0FsQzJpREY7O0FtQzNrREE7RUFDQztBbkM4a0REOztBbUMza0RBO0U3QkVJO0VHbUhGO0UwQmxIRDtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7VUFBQTtFQUNBO0FuQzhrREQ7QW1DNWtEQztFQUNDO0FuQzhrREY7O0FtQ3RrREE7RUFDQztFQUNBO0FuQ3lrREQ7O0FtQ3RrREE7RUFDQztFQUNBO0FuQ3lrREQ7O0FtQ3RrREE7RUFDQztFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QW5DeWtERDtBbUN2a0RDO0VBQ0M7RUFDQTtFQUNBO0FuQ3lrREY7O0FtQ3JrREE7RUFDQztFQUNBO0FuQ3drREQ7QW1DdGtEQztFQUNDO0FuQ3drREY7QW1DcmtEQztFQUNDO0FuQ3VrREY7QW1DcGtEQztFQUNDO0FuQ3NrREY7QW1DbmtEQztFQUNDO0FuQ3FrREY7O0FtQ2prREE7RUFDQztFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBbkNva0REO0FtQ2xrREM7RUFDQztFQUNBO0FuQ29rREY7O0FvQ3hxREE7O0NBQUE7QUFXQTtFQUNDO0VBQ0E7QXBDbXFERDs7QW9DaHFEQTtFQUNDO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBcENtcUREOztBb0MvcERBO0VBQ0M7RTlCWEc7RThCYUg7QXBDa3FERDtBb0NocURDO0VBQ0M7QXBDa3FERjtBb0MvcERDO0VBQ007RUFDTDtFQUNBO0VBQ0E7QXBDaXFERjtBb0MvcERFO0VBQ0M7RUFDQTtBcENpcURIOztBb0M1cERBO0VBQ0M7QXBDK3BERDs7QW9DNXBEQTtFQUNDO0FwQytwREQ7QW9DNXBERTtFQUNDO0FwQzhwREg7O0FvQ3pwREE7RUFDQztBcEM0cEREOztBb0N6cERBO0VBQ0M7QXBDNHBERDs7QW9DeHBEQTtFQUVDO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7TUFBQTtVQUFBO0VBQ0E7QXBDMHBERDtBU3JqREM7RUFFQztBVHNqREY7QW9DM3BEQztFQUNDO0FwQzZwREY7QW9DMXBEQztFQUNDO0VBQ0E7QXBDNHBERjtBb0MxcERFO0VBQ0M7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBcEM0cERIO0FvQ3hwREM7RUFDQztFQUNBO0VBQ0E7RUFDQTtBcEMwcERGOztBb0N0cERBO0VBQ0M7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QXBDeXBERDs7QW9DcnBEQTtFQUNDO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBcEN3cEREO0FvQ3RwREM7RUFDQztBcEN3cERGO0FvQ3JwREM7RUFDQztFQUNBO0VBQ0E7QXBDdXBERjs7QW9DbnBEQTtFQUNDO0VBQ0E7RUFDQTtBcENzcEREO0FvQ3BwREM7RUFDQztBcENzcERGOztBb0NscERBO0VBQ0M7RUFDQTtFQUNBO0FwQ3FwREQ7O0FxQ3Z5REE7RUFDQztFQUNBO0VBQ0E7RTVCMkhDO0U0QnpIRDtFQUNBO0VBQ0E7RUFDQTtBckMweUREOztBcUN2eURBO0VBQ0M7RUFDQTtFQUNBO0FyQzB5REQ7QVE3eERDO0U2QmhCRDtJQU9FO0VyQzB5REE7RXFDeHlEQTtJQUlDO0VyQ3V5REQ7RXFDcHlEQTtJQUNDO0VyQ3N5REQ7QUFDRjtBcUNueURDO0VBQ0M7RUFDQTtBckNxeURGOztBcUNqeURBOzs7O0VBSUM7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FyQ295REQ7O0FxQ2p5REE7RUFDQztFQUNBO0FyQ295REQ7O0FxQ2p5REE7RUFDQztFQUNBO0VBQ0E7QXJDb3lERDtBcUNseURDO0VBQ0M7RUFDQTtBckNveURGO0FxQ2p5REM7RUFDQztFQUNBO0VBQ0E7RUFDQTtBckNteURGOztBcUMveERBOztFQUVDO0VBQ0E7QXJDa3lERDtBcUNoeURDOztFQUNDO0VBQ0E7QXJDbXlERjs7QXFDL3hEQTtFQUNDO0FyQ2t5REQ7O0FzQ240REE7O0VBQUE7QUFJQTtFN0JnTUM7RUFDQTtFQUNBO0VBekJBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RTZCMUtDO0VBQ0E7RUFDQTtBdEMyNERGO0FRNzJEQztFOEJuQ0Q7STdCc01JO0VUOHNERjtBQUNGO0FRbDNEQztFOEJuQ0Q7STdCNk1FO0lBQ0E7RVQ0c0RBO0FBQ0Y7QVF4M0RDO0U4Qm5DRDtJQVFJO0lBQ0E7RXRDdTVERjtBQUNGOztBc0NwNURBO0VBQ0U7RUFDQTtFQUNBO0F0Q3U1REY7QVFwNERDO0U4QnRCRDtJQU1JO0V0Q3c1REY7QUFDRjtBUXo0REM7RThCdEJEO0lBU0k7RXRDMDVERjtBQUNGOztBUTk0REM7RThCVEQ7SUFFSTtJQUNBO0V0QzA1REY7QUFDRjs7QXNDdjVEQTtFaENqQkk7RWdDbUJGO0F0QzA1REY7O0FzQ3Y1REE7RWhDdEJJO0VnQ3dCRjtBdEMwNURGOztBc0N0NURBO0VoQzVCSTtFZ0M4QkY7QXRDeTVERjs7QXVDMzhEQTtFakNvQkk7RUFNQTtFQU1BO0VpQzdCRjtBdkMrOERGOztBd0NsOURBO0VBQ0M7RUFDQTtBeENxOUREOztBd0NqOURBO0VBQ0M7RUFDQTtFQUNBO0VBQ0E7QXhDbzlERDs7QXdDaDlEQTtFbENNSTtFa0NKSDtFQUNBO0VBQ0E7TUFBQTtVQUFBO0VBQ0E7QXhDbTlERDs7QXdDLzhEQTtFQUNDO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0F4Q2s5REQ7QXdDaDlEQztFQUNDO0F4Q2s5REY7QXdDLzhEQztFQUNDO0F4Q2k5REY7O0F3QzU4REE7RUFDQztFQUNBO0VBQ0E7RUFDQTtFQUNBO0F4Qys4REQ7O0F3QzM4REE7RUFFQztFQUNBO0VBQ0E7RUFDQTtBeEM2OEREO0FRaitEQztFZ0NlRDtJQVFFO0V4Qzg4REE7QUFDRjs7QXlDN2dFQTtFbkNvQkk7RUFNQTtBTncvREo7O0F5QzlnRUE7RUFDQztFQUNBO0VBQ0E7RUFDQTtBekNpaEVEO0F5Qy9nRUM7RUFDQztFQUNBO0F6Q2loRUY7O0EwQzdoRUE7O0VBQUE7QUFJQTtFcENnQkk7RW9DZEY7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0ExQytoRUY7QTBDN2hFRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFBVTtBMUNnaUVkOztBMkMzaEVBO0VBQ0M7RUFDQTtFQUNBO0EzQzhoRUQ7O0EyQzNoRUE7RUFDQztFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTNDOGhFRDtBMkM1aEVDO0VBQ0M7QTNDOGhFRjtBMkMzaEVDO0VBQ0M7QTNDNmhFRjtBMkMxaEVDO0VBQ0M7QTNDNGhFRjtBMkN6aEVDO0VBQ0M7RUFDQTtBM0MyaEVGO0EyQ3hoRUM7RUFDQztFQUNBO0EzQzBoRUY7O0EyQ3RoRUE7RUFDQztFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTNDeWhFRDtBMkN2aEVDO0VBQ0M7QTNDeWhFRjtBMkN0aEVDO0VBRUM7QTNDdWhFRjtBMkNwaEVDO0VBRUM7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBRUM7QTNDb2hFSDtBMkNoaEVDO0VBRUMsMkJBRFM7RUFFVCw2QkFGUztFQUdULDhCQUhTO0VBSVQsNEJBSlM7RUFLVDtBM0NpaEVGO0EyQzlnRUM7RUFFQyw0QkFEUztFQUVULDhCQUZTO0VBR1QsK0JBSFM7RUFJVCw2QkFKUztFQUtUO0VBQ0E7RUFDQTtBM0MrZ0VGO0EyQzNnRUU7RUFDQztFQUNBO0VBQ0E7QTNDNmdFSDtBMkMxZ0VFO0VBQ0M7RUFDQTtBM0M0Z0VIO0EyQ3hnRUM7RUFDQztBM0MwZ0VGO0EyQ3hnRUU7RUFFQztBM0N5Z0VIO0EyQ3RnRUU7RUFFQztBM0N1Z0VIOztBNENyb0VBOzs7RUFBQTtBQUtBO0VBRUM7RUFDQTtFQUNBO0VBQ0E7RUFBd0M7RUFDeEM7RUFBWTtFQUNaO0VBQStCO0VBQy9CO0VBQWM7RUFDZDtFQUNBO0VBQ0E7QTVDMG9FRDtBUzcrREM7RUFFQztBVDgrREY7QTRDM29FQztFQUNDO0E1QzZvRUY7QTRDM29FQztFQUNDO0VBQ0E7QTVDNm9FRjtBNEMzb0VDO0VBQ0M7RUFDQTtFQUNBO0VBQ0E7QTVDNm9FRjs7QTRDem9FQTtFdEN2Qkk7RUFNQTtBTitwRUo7O0E0QzFvRUE7RUFDQztFQUNBO0VBQ0E7QTVDNm9FRDtBNEN2b0VDO0VBQ0M7QTVDeW9FRjs7QTRDcm9FQTtFQUNDO0VBQ0E7QTVDd29FRDs7QTRDbm9FQztFQUFzQjtBNUN1b0V2QjtBNEN0b0VDO0VBQ0M7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBNUN3b0VGO0E0Q3RvRUM7RUFDQztBNUN3b0VGOztBNkMzc0VBO0VBQ0M7RUFDQTtBN0M4c0VEOztBNkMxc0VBO0VwQzBIRTtFb0N2SEQ7QTdDNHNFRDtBUzdqRUM7RUFDQyxnQm9DbEpZO0E3Q2l0RWQ7O0E2QzNzRUE7RUFDQztFQUNBLGtCQXBCbUI7QTdDa3VFcEI7QTZDNXNFQztFQUNDO0E3QzhzRUY7O0E2Q3pzRUE7RUFDQztFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTdDNHNFRDtBNkMxc0VDO0VBQ0M7QTdDNHNFRjtBNkN6c0VDO0VBQVM7QTdDNHNFVjtBNkN6c0VFO0VBQVM7QTdDNHNFWDtBNkMzc0VFO0VBQVU7QTdDOHNFWjtBNkMzc0VDO0VBQ0M7RUFDQTtBN0M2c0VGO0E2QzNzRUU7RUFDQztBN0M2c0VIO0E2Q3pzRUM7RUFDQyxjQTdEcUI7QTdDd3dFdkI7O0E2Q3RzRUE7RXZDckRJO0V1Q3VESDtFQUNBO0VBQ0E7RUFDQTtFQUNBO0E3Q3lzRUQ7QTZDdnNFQztFQUNDLGNBM0VxQjtBN0NveEV2Qjs7QTZDcHNFQTtFQUNDO0VBQ0E7RUFDQSxrQkFyRm1CO0VBc0ZuQixtQkFyRm9CO0VBc0ZwQjtFQUNBO0E3Q3VzRUQ7QTZDcnNFQztFQUNDO0VBQ0E7RUFDQTtFQUNBO0E3Q3VzRUY7O0E4QzF5RUE7RXhDb0JJO0VBTUE7RXdDeEJIO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTlDOHlFRDtBOEM1eUVDO0VBQ0M7QTlDOHlFRjs7QThDMXlFQTtFQUNDO0E5QzZ5RUQ7QThDM3lFQztFQUNDO0VBQ0E7RUFDQTtBOUM2eUVGOztBOEN6eUVBO0VBQ0M7RUFDQTtBOUM0eUVEO0E4QzF5RUM7RUFDQztBOUM0eUVGOztBOEN4eUVBO0VBQ0M7RUFDQTtBOUMyeUVEO0E4Q3p5RUM7RUFDQztFQUNBO0VBQ0E7QTlDMnlFRjs7QThDdnlFQTtFQUNDO0E5QzB5RUQ7O0E4Q3R5RUE7RUFDQztJQUFPO0U5QzB5RU47RThDenlFRDtJQUFLO0U5QzR5RUo7QUFDRjtBK0MvMUVBO0VBQ0M7RUFDQTtFQUNBO0VBQ0E7QS9DaTJFRDs7QStDNzFFQTtFQUNDO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QS9DZzJFRDtBK0M5MUVDO0VBQ0M7QS9DZzJFRjs7QStDMzFFQTtFQUNDO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QS9DODFFRDs7QWdEeDNFQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QWhEMjNFRjs7QWdEeDNFQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QWhEMjNFRjs7QWlEeDRFQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFFQTtFQUNBO0FqRDA0RUY7QVFqM0VDO0V5Q3ZDRDtJQWlCSTtFakQyNEVGO0FBQ0Y7QWlEcDRFQTtFQUNFO0VBQ0E7RUFDQTtBakRzNEVGOztBa0Q3NUVBO0VBQ0M7QWxEZzZFRDs7QWtENzVFQTtFQUNDO0VBQ0E7RUFDQTtBbERnNkVEOztBa0Q3NUVBO0VBQ0M7QWxEZzZFRDs7QWtENzVFQTtFQUNDO0VBQ0E7RUFDQTtFNUNGRztFQU1BO0U0Q0ZIO0VBQ0E7RUFDQTtBbERpNkVEO0FrRC81RUM7RUFDQztBbERpNkVGO0FrRDk1RUM7RUFDQztBbERnNkVGOztBa0Q1NUVBO0VBQ0M7RUFDQTtFQUNBO0VBQ0E7QWxEKzVFRDtBa0Q1NUVFO0VBQ0M7QWxEODVFSDs7QWtEejVFQTtFQUNDO0FsRDQ1RUQ7QWtEMTVFQztFQUNDO0VBQ0E7QWxENDVFRjs7QWtEdDVFQTtFQUtDO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUVBO0FsRG81RUQ7QWtEOTRFQztFQUNDO0VBQ0E7RUFDQTtFQUNBO0VBRUE7QWxEKzRFRjs7QW1EcCtFQTtFQUNFO0VBQ0E7QW5EdStFRjs7QW1EcCtFQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0FuRHUrRUY7QVF6OEVDO0UyQzFCRztJQUNFO0VuRHMrRUo7QUFDRjtBUTk4RUM7RTJDbENEO0lBY0k7SUFDQTtJQUNBO0lBQ0E7RW5EcytFRjtBQUNGOztBbURuK0VBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBbkRzK0VGO0FROTlFQztFMkNiRDtJQVFJO0lBQ0E7RW5EdStFRjtBQUNGOztBbURwK0VBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FuRHUrRUY7O0FvRGxoRkE7RUFDRTtFQUNBO0FwRHFoRkY7QVFsL0VDO0U0Q2hDRztJQUNFO0VwRHFoRko7QUFDRjtBUXYvRUM7RTRDckNEO0lBV0k7SUFDQTtFcERxaEZGO0FBQ0Y7QVE3L0VDO0U0Q3JDRDtJQWdCSTtJQUNBO0lBQ0E7SUFDQTtFcERzaEZGO0VvRHBoRkU7SUFDRTtFcERzaEZKO0VvRG5oRkU7SUFDRTtJQUNBO0lBQ0E7RXBEcWhGSjtFb0RsaEZFO0lBQ0U7SUFDQTtJQUNBO0VwRG9oRko7RW9EamhGRTtJQUNFO0lBQ0E7SUFDQTtFcERtaEZKO0FBQ0Y7O0FRdmhGQztFNENRRDtJQUVJO0VwRGtoRkY7RW9EaGhGRTtJQUNFO0VwRGtoRko7QUFDRjtBUWhpRkM7RTRDUUQ7SUFVSTtFcERraEZGO0FBQ0Y7O0FvRC9nRkE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QXBEa2hGRjtBb0RoaEZFO0VBQ0U7RUFDQTtBcERraEZKO0FRcmpGQztFNENzQkQ7SUFpQkk7SUFDQTtJQUNBO0VwRGtoRkY7RW9EaGhGRTtJQUNFO0VwRGtoRko7QUFDRjs7QW9EOWdGQTtFQUNFO0U5Q3JFRTtFQU1BO0VBTUE7QU42a0ZKO0FRdGtGQztFNENpREQ7STlDcEVJO0lBTUE7RU53bEZGO0FBQ0Y7O0FvRGpoRkE7RUFDRTtFQUNBLGtDakQvRWE7RUdEWDtFQU1BO0VBTUE7RThDdUVGO0FwRHFoRkY7QVFybEZDO0U0QzJERDtJQVFJO0VwRHNoRkY7QUFDRjs7QXFEam9GQTtFQUNFO0FyRG9vRkY7QXFEbG9GRTtFQUVFO0VBQ0E7RUFDQTtBckRtb0ZKO0FRbm1GQztFNkNwQ0M7SUFPSTtJQUNBO0VyRG9vRko7QUFDRjtBcURqb0ZJO0VBQ0U7RUFDQTtBckRtb0ZOO0FxRGhvRkk7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FyRGtvRk47QVExbkZDO0U2Q25CRztJQWNJO0VyRG1vRk47QUFDRjs7QXFENW5GQTtFL0N0Qkk7RUFNQTtFK0NrQkY7RUFDQTtFQUNBO0FyRGdvRkY7O0FxRDduRkE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFFQTtBckQrbkZGO0FxRDduRkU7RUFDRTtBckQrbkZKO0FxRDVuRkU7RUFDRTtBckQ4bkZKOztBcUR6bkZBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QXJENG5GRjs7QXFEem5GQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FyRDRuRkY7QVE5cUZDO0U2Q3dDRDtJQWNJO0VyRDRuRkY7QUFDRjtBcUQxbkZFO0VBQ0U7QXJENG5GSjs7QXFEeG5GQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FyRDJuRkY7O0FzRGh1RkE7RUFDRTtFQUNBO0F0RG11RkY7QXNEanVGRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0F0RG11Rko7QVE5c0ZDO0U4Q2hDRDtJQWdCSTtFdERrdUZGO0FBQ0Y7O0FzRC90RkE7RUFDRSxrQ25EUGE7RW1EUWI7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QXREa3VGRjtBUTl0RkM7RThDWkQ7SUFXSTtFdERtdUZGO0FBQ0Y7O0FzRGh1RkE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7TUFBQTtVQUFBO0F0RG11RkY7O0FzRGh1RkE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0F0RG11RkY7QXNEanVGRTtFQUNFO0VBQ0E7RUFDQTtBdERtdUZKOztBc0QvdEZBOztFQUVFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QXREa3VGRjs7QXNEOXRGQTs7RUFHRSxjQS9FMkI7RWhEZXpCO0VBTUE7RWdENERGO0VBQ0E7RUFDQTtFQUNBO0F0RGl1RkY7O0FzRDl0RkE7RUFDRTtFQUNBO0VBQ0E7QXREaXVGRjs7QXNEOXRGQTtFQUNFO0VBQ0E7RUFDQTtBdERpdUZGOztBc0Q5dEZBO0VBQ0U7QXREaXVGRjs7QXNEOXRGQTtFQUNFO0VBQ0E7RUFFQTtFQUNBO0VBQ0EsV0FoSDZCO0VBaUg3QjtBdERndUZGOztBc0Q3dEZBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBLFdBMUg2QjtFQTJIN0IsWUEzSDZCO0VBNkg3Qix5QkE1SHlDO0VBNkh6QztFQUNBO0F0RCt0RkY7O0FzRDV0RkE7RUFDRTtBdEQrdEZGOztBc0Q1dEZBO0VBQ0U7RUFDQTtBdEQrdEZGOztBc0Q1dEZBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBLG1CQWxKMEI7QXREaTNGNUI7O0FzRDV0RkE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtBdEQrdEZGOztBdUQ1M0ZBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QXZEKzNGRjtBUTUxRkM7RStDdkNEO0lBT0k7RXZEZzRGRjtBQUNGO0FRajJGQztFK0N2Q0Q7SUFXSTtFdkRpNEZGO0FBQ0Y7O0F1RDkzRkE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFFQTtFQUNBO0VBQ0E7QXZEZzRGRjtBUWwzRkM7RStDeEJEO0lBYUk7SUFDQTtJQUNBO0lBQ0E7RXZEaTRGRjtBQUNGOztBdUQ5M0ZBO0VqRGZJO0VBTUE7RWlEV0Y7QXZEazRGRjtBUWg0RkM7RStDSkQ7SUFNSTtJQUNBO0lBQ0E7SWpEdkJBO0lBTUE7SWlEb0JBLHFDcEQxQmM7SW9EMkJkO0V2RGs0RkY7QUFDRjs7QXVELzNGQTtFQUVFO0F2RGk0RkY7QU9qNkZFO0VBRUksZWdENkI0QztBdkRxNEZsRDtBTy81Rkk7RUFMRjtJQU9NO0VQaTZGTjtBQUNGO0FPOTVGSTtFQVhGO0lBYU0sZWdEa0JnRDtFdkQ4NEZ0RDtBQUNGOztBdUQzNEZBO0VBQ0U7RUFDQTtBdkQ4NEZGOztBd0R4OEZBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QXhEMjhGRjtBUXg2RkM7RWdEdkNEO0lBT0k7RXhENDhGRjtBQUNGO0FRNzZGQztFZ0R2Q0Q7SUFXSTtFeEQ2OEZGO0FBQ0Y7QVFsN0ZDO0VnRHZDRDtJQWVJO0V4RDg4RkY7QUFDRjtBd0QxOEZJO0VBQ0U7RUFDQTtBeEQ0OEZOOztBd0R2OEZBO0VBQ0U7RUFDQTtFQUVBO0F4RHk4RkY7O0F3RHI4RkE7RUFDRTtFQUNBO0VBQ0E7QXhEdzhGRjtBUXY4RkM7RWdESkQ7SUFNSTtJQUNBO0V4RHk4RkY7QUFDRjs7QXdEcjhGQTtFbEQzQkk7RUFNQTtFa0R1QkY7RUFDQTtFQUNBO0VBQ0E7QXhEeThGRjs7QXdEdDhGQTtFQUNFO0VBQ0E7QXhEeThGRjtBd0R2OEZFO0VBQ0U7QXhEeThGSjs7QXdEcjhGQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0F4RHc4RkY7QXdEdDhGRTtFQUNFO0F4RHc4Rko7O0F3RHA4RkE7RUFDRTtFQUNBO0VBRUE7RUFDQTtFQUNBO0VBRUE7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUVBO0VBQ0E7RUFDQTtFQUNBO0F4RG84RkY7QVF6L0ZDO0VnRG9DRDtJQW9CSTtJQUNBO0lBQ0E7RXhEcThGRjtBQUNGO0FRaGdHQztFZ0RvQ0Q7SUEwQkk7SUFDQTtFeERzOEZGO0FBQ0Y7QVF0Z0dDO0VnRG9DRDtJQStCSTtJQUNBO0V4RHU4RkY7QUFDRjtBd0RyOEZFO0VBQ0U7QXhEdThGSjtBUS9nR0M7RWdEb0NEO0lBd0NJO0V4RHU4RkY7QUFDRjtBd0RyOEZFO0VBQ0U7RUFDQTtFQUNBO0F4RHU4Rko7QXdEcjhGSTtFQUNFO0F4RHU4Rk47O0FRNWhHQztFZ0QwRkQ7SUFHSTtFeERvOEZGO0FBQ0Y7QXdEbDhGRTtFQUNFO0F4RG84Rko7O0FRcmlHQztFZ0RxR0Q7SUFHSTtFeERrOEZGO0FBQ0Y7QXdEaDhGRTtFQUNFO0F4RGs4Rko7O0F3RDc3RkE7RUFDRTtFQUNBO0VBR0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBeEQ4N0ZGO0F3RDc3RkU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0F4RCs3Rko7QXdENTdGRTtFQUNFO0VBQ0E7RUFDQTtBeEQ4N0ZKOztBeUQzbUdBO0VoRG9NQztFQUNBO0VBQ0E7QVQyNkZEO0FRMWtHQztFaUR2Q0Q7SWhEME1JO0VUMjZGRjtBQUNGO0FRL2tHQztFaUR2Q0Q7SWhEaU5FO0lBQ0E7RVR5NkZBO0FBQ0Y7QVFybEdDO0VpRHZDRDtJQUlJO0lBQ0E7SUFDQTtJQUNBO0V6RDRuR0Y7QUFDRjs7QXlEem5HQTtFQUNFO0F6RDRuR0Y7O0F5RHpuR0E7RW5ES0k7QU53bkdKOztBeUR6bkdBO0VBQ0U7QXpENG5HRjtBeUQxbkdFO0VBQ0U7RUFDQTtFQUNBO0F6RDRuR0o7QVE5bUdDO0VpRHBCRDtJQVVJO0V6RDRuR0Y7QUFDRjs7QXlEem5HQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0F6RDRuR0Y7QVExbkdDO0VpRE5EO0lBT0k7SUFDQTtFekQ2bkdGO0FBQ0Y7QVFob0dDO0VpRE5EO0lBWUk7SUFDQTtFekQ4bkdGO0FBQ0Y7O0F5RDNuR0E7RW5EOUJJO0VtRGdDRjtFQUNBO0F6RDhuR0Y7QXlENW5HRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0F6RDhuR0o7QXlEM25HRTtFQUNFO0F6RDZuR0o7QXlEM25HRTtFQUNFO0F6RDZuR0o7QXlEMW5HRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QXpENG5HSjtBUXJxR0M7RWlEV0Q7SUFrQ0k7RXpENG5HRjtFeUQzbkdFO0lBQ0U7RXpENm5HSjtBQUNGO0FRN3FHQztFaURXRDtJQXdDSTtFekQ4bkdGO0FBQ0Y7O0F5RDNuR0E7RUFDRTtFQUNBO0F6RDhuR0Y7QVF2ckdDO0VpRHVERDtJQUtJO0V6RCtuR0Y7QUFDRjs7QXlENW5HQTtFQUNFO0F6RCtuR0Y7QXlEN25HRTtFQUNFO0F6RCtuR0o7O0EwRDF1R0E7RUFDRTtFQUNBO0VBQ0E7RUFDQTtBMUQ2dUdGOztBMEQxdUdBO0VBQ0U7RUFDQTtFQUNBO0ExRDZ1R0Y7QTBENXVHRTtFQUNFO0ExRDh1R0o7O0EyRDF2R0E7RUFDRTtFQUNBO0VBQ0E7RUFDQTtBM0Q2dkdGO0EyRDN2R0U7RUFDRTtBM0Q2dkdKOztBMkR6dkdBO0VyRFNJO0FOb3ZHSjs7QTREdndHRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0E1RDB3R0o7O0E2RC93R0E7RUFDRTtFQUNBO0E3RGt4R0Y7O0E2RC93R0E7RUFDRTtBN0RreEdGOztBOER4eEdBO0VBR0U7RUFDQTtBOUR5eEdGOztBOER0eEdBO0VBQ0U7RUFDQTtFQUNBO0E5RHl4R0Y7O0E4RHR4R0E7RUFDRTtBOUR5eEdGOztBOER0eEdBO0V4REdJO0VBTUE7QU5reEdKOztBOER2eEdBO0V4RERJO0VBTUE7QU51eEdKOztBK0RqekdBO0VBQ0U7RUFDQTtFQUNBO0VBRUE7RUFDQTtFQUNBO0EvRG16R0Y7QVFueEdDO0V1RHZDRDtJQVVJO0lBQ0E7RS9Eb3pHRjtBQUNGOztBK0RqekdBO0V6REtJO0VBTUE7QU4yeUdKO0FROXhHQztFdUR4QkQ7SUFHSTtJQUNBO0UvRHV6R0Y7QUFDRjtBUXB5R0M7RXVEeEJEO0l6REtJO0lBTUE7RU5zekdGO0FBQ0Y7O0ErRHZ6R0E7RXpETkk7RUFNQTtFeURFRixrQzVEUGE7QUhrMEdmOztBK0R4ekdBO0VBQ0U7RUFDQTtFekRiRTtFQU1BO0V5RFNGO0EvRDR6R0Y7O0ErRHp6R0E7RUFDRTtFQUNBO0VBQ0E7RUFFQTtBL0QyekdGO0FRL3pHQztFdURERDtJQVFJO0UvRDR6R0Y7RStEMXpHRTtJQUNFO0UvRDR6R0o7QUFDRjs7QStEeHpHQTtFQUNFO0EvRDJ6R0Y7QStEenpHRTtFekRyQ0U7RUFNQTtFeURpQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0EvRDR6R0o7QStEMXpHSTtFQUNFO0VBQ0E7QS9ENHpHTjtBK0R6ekdJO0VBQ0U7RUFDQTtBL0QyekdOO0ErRHZ6R0U7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0EvRHl6R0o7QStEdHpHRTtFekRqRUU7RUFNQTtFeUQ2REE7RUFDQTtFQUNBO0VBQ0E7RUFDQTtNQUFBO1VBQUE7RUFDQTtFQUNBO0EvRHl6R0o7QStEdnpHSTtFQUNFO0EvRHl6R047O0ErRHB6R0E7RUFDRTtBL0R1ekdGOztBK0RwekdBO0VBQ0U7QS9EdXpHRjs7QStEcHpHQTtFekR6Rkk7RUFNQTtFeURzRkY7RUFDQTtBL0R1ekdGO0FRajRHQztFdURzRUQ7SXpEekZJO0lBTUE7SXlEMkZBO0lBQ0E7RS9EeXpHRjtBQUNGOztBK0R0ekdBO0VBQ0U7RUFDQTtFQUNBO0VBRUE7RUFDQTtFQUNBO0VBQ0E7QS9Ed3pHRjtBK0R0ekdFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QS9Ed3pHSjs7QStEcHpHQTtFQUNFO0VBQ0E7RUFDQTtFQUVBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBL0RzekdGO0ErRHB6R0U7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUVBO0EvRHF6R0o7O0ErRGp6R0E7RUFDRTtFQUVBO0V6RGpKRTtFQU1BO0V5RDZJRjtBL0RvekdGO0FRcDdHQztFdUQySEQ7SUFPSTtFL0RzekdGO0FBQ0Y7O0ErRG56R0E7RUFDRTtFQUNBO0EvRHN6R0Y7QVE5N0dDO0V1RHNJRDtJQUtJO0UvRHV6R0Y7QUFDRjs7QStEcHpHQTtFQUNFO0VBQ0E7RUFDQTtBL0R1ekdGOztBK0RwekdBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QS9EdXpHRjtBK0RyekdFO0VBQ0U7QS9EdXpHSjtBUW45R0M7RXVEcUpEO0lBV0k7RS9EdXpHRjtBQUNGOztBK0RwekdBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QS9EdXpHRjtBUXIrR0M7RXVEb0tEO0lBYUk7RS9Ed3pHRjtBQUNGO0ErRHR6R0U7RUFDRTtFQUNBO0EvRHd6R0o7O0ErRGx6R0E7RUFDRTtFQUNBO0VBRUE7QS9Eb3pHRjtBUXAvR0M7RXVENExEO0lBT0k7RS9EcXpHRjtBQUNGOztBK0RsekdBO0VBQ0U7RUFDQTtBL0RxekdGO0ErRG56R0U7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QS9EcXpHSjtBK0RsekdFO0VBQ0U7RUFDQTtFQUNBO0EvRG96R0o7QStEbHpHSTtFQUNFO0EvRG96R047O0ErRC95R0E7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUVBO0VBQ0E7RUFDQTtFQUVBO0VBQ0E7RUFDQTtNQUFBO1VBQUE7RUFDQTtBL0RnekdGOztBK0QzeUdBO0VBQ0U7RUFDQTtFQUNBO0VBRUE7RUFDQTtBL0Q2eUdGOztBK0QxeUdBO0VBQ0U7RUFDQTtBL0Q2eUdGO0ErRDN5R0U7RUFDRTtFQUNBO0VBRUE7QS9ENHlHSjtBK0Q3eUdJO0VBQU87QS9EZ3pHWDs7QStEM3lHQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBL0Q4eUdGOztBK0QzeUdBO0VBQ0U7QS9EOHlHRjs7QStEM3lHQTtFQUNFO0EvRDh5R0Y7O0ErRDN5R0E7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBL0Q4eUdGO0FRbGxIQztFdUQ2UkQ7SUFVSTtFL0QreUdGO0FBQ0Y7O0ErRDV5R0E7RUFDRTtBL0QreUdGOztBK0Q1eUdBO0V6RGxVSTtFQU1BO0VBV0UsZ0J5RG1UUTtBL0RnekdkOztBK0Q3eUdBO0VBQ0U7RUFDQTtFekR6VUU7RUFNQTtFeURxVUY7QS9EaXpHRjs7QStEOXlHQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO1VBQUE7RUFFQTtFQUNBO0VBQ0E7QS9EZ3pHRjtBK0Q5eUdFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBL0RnekdKOztBK0Q1eUdBO0VBQ0U7VUFBQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBL0QreUdGO0ErRDd5R0U7RUFDRTtFQUNBO0EvRCt5R0o7QStENXlHRTtFQUNFO0EvRDh5R0o7O0ErRDF5R0E7RUFDRTtBL0Q2eUdGOztBK0QxeUdBO0VBQ0U7QS9ENnlHRjs7QStEMXlHQTtFQUNFO0VBQ0E7RXpEOVhFO0VBTUE7RXlEMlhGO0EvRDZ5R0Y7O0ErRDF5R0E7RUFDRTtBL0Q2eUdGO0ErRDN5R0U7RUFDRTtFQUNBO0VBQ0E7RXpEMVlBO0VBTUE7RXlEdVlBO0VBQ0E7RUFDQTtBL0Q2eUdKO0ErRDN5R0k7RUFDRTtBL0Q2eUdOO0ErRDF5R0k7RUFDRTtFQUNBO0EvRDR5R047QStEeHlHRTtFQUNFO0VBQ0E7RUFDQTtFQUVBO0VBQ0E7QS9EeXlHSjtBK0R0eUdFO0V6RHBhRTtFQU1BO0V5RGdhQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO01BQUE7VUFBQTtFQUNBO0VBQ0E7QS9EeXlHSjtBK0R2eUdJO0VBQ0U7QS9EeXlHTjtBK0RyeUdFO0VBQ0U7RUFDQTtFQUNBO0EvRHV5R0o7QStEdHlHSTtFQUFPO0EvRHl5R1g7O0ErRHJ5R0E7RUFnQkU7RUFDQTtFQUNBO0V6RDdjRTtFQU1BO0V5RDBjRjtFQUNBO0VBQ0E7RUFDQTtFQUNBO0EvRHl4R0Y7QStEaHpHRTtFQUNFO1VBQUE7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBL0RrekdKO0ErRHB5R0U7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0EvRHN5R0o7QStEcHlHSTtFQUNFO0EvRHN5R047QStEbHlHRTtFQUNFO0VBQ0E7QS9Eb3lHSjs7QStEL3hHQTtFQUNFO0EvRGt5R0Y7QVF6dkhDO0V1RHNkRDtJQUlJO0UvRG15R0Y7QUFDRjs7QStEaHlHQTtFQUNFO0EvRG15R0Y7QVFsd0hDO0V1RDhkRDtJQUlJO0UvRG95R0Y7QUFDRjs7QStEanlHQTtFQUNFO0VBQ0E7RUFDQTtBL0RveUdGO0FRN3dIQztFdURzZUQ7SUFNSTtJQUNBO0UvRHF5R0Y7QUFDRjs7QStEanlHQTtFQUNFO0VBQ0E7RUFDQTtBL0RveUdGO0ErRGx5R0U7RUFDRTtFQUNBO0EvRG95R0o7QVE3eEhDO0V1RGtmRDtJQVdJO0lBQ0E7RS9Eb3lHRjtFK0RseUdFO0lBQ0U7SUFDQTtFL0RveUdKO0FBQ0Y7O0ErRGh5R0E7RUFDRTtFQUNBO0EvRG15R0Y7O0ErRGh5R0E7RUFDRTtBL0RteUdGOztBK0RoeUdBO0VBQ0U7QS9EbXlHRjs7QStEaHlHQTtFQUNFO0EvRG15R0Y7O0ErRGh5R0E7RUFDRTtFQUNBO0EvRG15R0Y7QStEbHlHRTtFQUNFO0EvRG95R0o7QStEbnlHSTtFQUNFO0EvRHF5R047O0ErRGh5R0E7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0EvRG15R0Y7QStEanlHRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBRUE7RUFDQTtBL0RreUdKO0ErRDl4R0k7RUFDRTtFQUNBO0EvRGd5R047QStEOXhHTTtFQUNFO0VBQ0E7QS9EZ3lHUjtBK0Q3eEdNO0VBQ0U7RUFDQTtFQUNBO0EvRCt4R1I7QStENXhHTTtFQUNFO0VBQ0E7RUFDQTtBL0Q4eEdSO0ErRDN4R007RUFDRTtFQUNBO0VBQ0E7QS9ENnhHUjs7QStEdnhHQTtFQUNFO0VBQ0E7QS9EMHhHRjtBK0R4eEdFO0VBQ0U7QS9EMHhHSjs7QStEdHhHQTtFQUNFO0VBQ0E7RUFD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RDtJaEVvRU07SUFBQTtFVG84SUo7QUFDRjtBUXQrSUM7RWlFbkNEO0loRTJGTTtJQUFBO0VUbTdJSjtBQUNGO0FRNStJQztFaUVuQ0Q7SWhFZ0dNO0lBQUE7RVRvN0lKO0FBQ0Y7QVFsL0lDO0VpRW5DRDtJaEVxR007SUFBQTtFVHE3SUo7QUFDRjs7QXlFcGhKQTtFQUNDO0VBQ0E7QXpFdWhKRDs7QVE3L0lDO0VpRXRCRDtJQUVFO0V6RXNoSkE7QUFDRjs7QVFuZ0pDO0VpRWZEO0lBRUU7SUFDQSxtQkExQlk7RXpFK2lKWjtBQUNGOztBeUVqaEpBO0VBQ0M7QXpFb2hKRDtBUTlnSkM7RWlFUEQ7SUFJRTtJQUNBO0V6RXFoSkE7QUFDRjs7QVN6NUlDO0VBQ0MsZ0JnRXhIWTtBekVvaEpkOztBUXhoSkM7RWlFUUQ7SUFFRTtFekVtaEpBO0FBQ0Y7O0F5RS9nSkE7RUFDQztFQUNBO0VBQ0E7RUFDQTtBekVraEpEOztBeUUvZ0pBO0VBQ0M7QXpFa2hKRDs7QVF6aUpDO0VrRXZDRDtJakV3RU07RVQ2Z0pKO0FBQ0Y7QVEvaUpDO0VrRXZDRDtJakUrRk07RVQyL0lKO0FBQ0Y7QVFwakpDO0VrRXZDRDtJakVvR007RVQyL0lKO0FBQ0Y7QVF6akpDO0VrRXZDRDtJakV5R007RVQyL0lKO0FBQ0Y7QVE5akpDO0VrRWpDQTtJakVrRUs7RVRpaUpKO0FBQ0Y7QVFua0pDO0VrRWpDQTtJakV5Rks7RVQrZ0pKO0FBQ0Y7QVF4a0pDO0VrRWpDQTtJakU4Rks7RVQrZ0pKO0FBQ0Y7QVE3a0pDO0VrRWpDQTtJakVtR0s7RVQrZ0pKO0FBQ0Y7O0EyRXpuSkM7OztDQUFBO0FBTUQ7RWpFa0JFO0VpRWhCRDtFQUNBO0EzRTBuSkQ7O0E0RXhuSkE7RW5Fa0tDO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RW1FcEtBO0VBQ0E7RUFDRTtBNUUrbkpIOztBNEU1bkpBO0VuRWtMQztFQUNBO0VBQ0E7QVQ4OElEO0FRN21KQztFb0VyQkQ7SW5Fd0xJO0VUODhJRjtBQUNGO0FRbG5KQztFb0VyQkQ7SW5FK0xFO0lBQ0E7RVQ0OElBO0FBQ0Y7QVF4bkpDO0VvRXJCRDtJbkVzRE07SUFBQTtFVDRsSko7QUFDRjtBUTluSkM7RW9FckJEO0luRTZFTTtJQUFBO0VUMmtKSjtBQUNGO0FRcG9KQztFb0VyQkQ7SW5Fa0ZNO0lBQUE7RVQ0a0pKO0FBQ0Y7QVExb0pDO0VvRXJCRDtJbkV1Rk07SUFBQTtFVDZrSko7QUFDRjtBUWhwSkM7RW9FYkE7SW5FOENLO0VUbW5KSjtBQUNGO0FRcnBKQztFb0ViQTtJbkVxRUs7RVRpbUpKO0FBQ0Y7QVExcEpDO0VvRWJBO0luRTBFSztFVGltSko7QUFDRjtBUS9wSkM7RW9FYkE7SW5FK0VLO0VUaW1KSjtBQUNGOztBNEV6cUpBO0VBQ0M7QTVFNHFKRDs7QTRFeHFKQTtFdEVuQkk7QU4rckpKOztBNkVudEpBOzs7RUFBQTtBQWlCQTtFQUNFO0VBQ0E7RUFDQSx5QkFMb0I7QTdFOHNKdEI7O0E2RXRzSkE7RXBFNktDO0VBQ0E7RUFDQTtBVDZoSkQ7QVE1ckpDO0VxRWhCRDtJcEVtTEk7RVQ2aEpGO0FBQ0Y7QVFqc0pDO0VxRWhCRDtJcEUwTEU7SUFDQTtFVDJoSkE7QUFDRjtBUXZzSkM7RXFFaEJEO0lBR0k7SUFDQTtFN0V3dEpGO0FBQ0Y7O0FRN3NKQztFcUVMRztJQUNFO0U3RXN0Sko7QUFDRjtBUW50SkM7RXFFUkQ7SUFVSTtFN0VxdEpGO0FBQ0Y7QVF4dEpDO0VxRVJEO0lBZUk7SUFFQTtJQUNBO0U3RW90SkY7RTZFbHRKRTtJQUNFO0U3RW90Sko7RTZFanRKRTtJQUNFO0U3RW10Sko7QUFDRjtBUXJ1SkM7RXFFUkQ7SUErQkk7SUFFQTtJQUNBO0U3RWl0SkY7RTZFL3NKRTtJQUNFO0U3RWl0Sko7RTZFOXNKRTtJQUNFLGdCQTlEa0I7RTdFOHdKdEI7QUFDRjs7QThFbHhKQTtFQUdDO0VBQ0E7QTlFbXhKRDtBU3BqSkU7RUFDQyxlcUVuT0Y7RXJFb09FO0VBQ0E7QVRzakpIO0FTempKRTtFQUNDLGlCcUVuT0Y7RXJFb09FO0VBQ0E7QVQyakpIO0FTOWpKRTtFQUNDLGVxRW5PRjtFckVvT0U7RUFDQTtBVGdrSkg7QVNua0pFO0VBQ0MsdUJxRW5PRjtFckVvT0U7RUFDQTtBVHFrSkg7QVEzd0pDO0VzRXhCQztJQUNDO0U5RXN5SkQ7RThFbnlKQTtJQUNDO0U5RXF5SkQ7QUFDRjtBUW54SkM7RXNFaENEO0lBa0JFO0lBQ0E7SUFDQTtJQUNBO0lBQ0Esc0RBQ0E7RTlFb3lKQTtBQUNGOztBUTV4SkM7RXNFSEQ7SUFHRTtFOUVpeUpBO0FBQ0Y7QThFOXhKRTtFQUNDO0E5RWd5Skg7O0E4RXZ4SkE7RUFDQztFQUNBO0VBQ0E7QTlFMHhKRDtBUTN5SkM7RXNFY0Q7SUFNRTtFOUUyeEpBO0FBQ0Y7QThFenhKQztFeEUxQ0c7RUFNQTtFd0VzQ0Y7QTlFNHhKRjs7QVFyekpDO0VzRStCQztJQUNDO0U5RTB4SkQ7QUFDRjtBUTN6SkM7RXNFNkJEO0lBUUU7RTlFMHhKQTtFOEV4eEpBO0lBQ0M7RTlFMHhKRDtBQUNGOztBOEV0eEpBO0VBQ0M7QTlFeXhKRDs7QThFdHhKQTtFQUNDO0E5RXl4SkQ7O0E4RXR4SkE7RUFDQztFQUNBO0E5RXl4SkQ7QThFeHhKQztFQUNDO0VBQ0E7RUFDQTtFQUNBO0E5RTB4SkY7O0E4RXR4SkE7RUFDQztBOUV5eEpEOztBOEV0eEpBO0VBSUM7RXhFM0ZHO0VBTUE7RXdFdUZIO0VBQ0E7QTlFdXhKRDtBOEU3eEpDO0VBQ0M7QTlFK3hKRjs7QThFdHhKQTtFQUNDO0E5RXl4SkQ7QThFeHhKQztFQUNDO0E5RTB4SkY7O0E4RXJ4SkM7RUFDQztFQUNBO0VBQ0E7QTlFd3hKRjtBOEV0eEpDO0VBQ0M7QTlFd3hKRjtBOEV0eEpDO0VBQ0M7QTlFd3hKRjs7QThFbHhKQTtFeEV6SEk7RXdFMkhIO0VBQ0E7RUFDQTtFQUNBO0E5RXF4SkQ7O0E4RWx4SkE7RUFDQztFQUNBO0E5RXF4SkQ7O0E4RWx4SkE7RUFDQztFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTlFcXhKRDs7QThFOXdKQTtFQUNDO0E5RWl4SkQ7O0ErRXo3SkE7Ozs7bUZBQUE7QUFRQTtFQUNDO0VBQ0E7QS9FeTdKRDtBUTU1SkM7RXVFL0JEO0lBT0U7RS9FdzdKQTtBQUNGOztBK0VwN0pBO0VBQ0M7RUFDQTtFQUNBO0VBQ0E7QS9FdTdKRDtBUXg2SkM7RXVFbkJEO0lBT0U7SUFDQTtJQUNBO0UvRXc3SkE7RStFdDdKQTtJQUNDO0UvRXc3SkQ7QUFDRjs7QStFbjdKQTtFQUNDO0VBQ0E7QS9FczdKRDs7QStFajdKQztFQUNDO0EvRW83SkY7QStFbDdKRTtFQUNDO0VBQ0E7QS9FbzdKSDs7QWdGdCtKQTs7OzttRkFBQTtBQU9BO0VBQ0M7RUFDQTtFQUNBO0FoRnUrSkQ7QVExOEpDO0V3RWhDRDtJQU9FO0VoRnUrSkE7QUFDRjs7QVEvOEpDO0V3RXBCRDtJQUdFO0VoRnErSkE7QUFDRjtBUXI5SkM7RXdFZEE7SUFFRTtJQUNBO0VoRnErSkQ7QUFDRjtBUTM5SkM7RXdFZEE7SUFNRTtFaEZ1K0pEO0FBQ0Y7QVFoK0pDO0V3RUpBO0l2RXFDSztFVG04Sko7QUFDRjtBUXIrSkM7RXdFSkE7SUFNRTtFaEZ1K0pEO0FBQ0Y7QVExK0pDO0V3RUpBO0lBU0U7SUFDQTtFaEZ5K0pEO0FBQ0Y7O0FRaC9KQztFeUUvQkQ7SUFFRTtFakZraEtBO0FBQ0Y7O0FpRjlnS0E7RXhFcUxDO0VBQ0E7RUFDQTtFd0VyTEE7RUFDQTtBakZtaEtEO0FROS9KQztFeUV4QkQ7SXhFMkxJO0VUKzFKRjtBQUNGO0FRbmdLQztFeUV4QkQ7SXhFa01FO0lBQ0E7RVQ2MUpBO0FBQ0Y7QVF6Z0tDO0V5RXhCRDtJQU1FO0VqRitoS0E7QUFDRjs7QVE5Z0tDO0V5RWJEO0lBRUU7RWpGOGhLQTtBQUNGO0FRcGhLQztFeUViRDtJQU1FO0lBQ0E7RWpGK2hLQTtBQUNGOztBUTFoS0M7RXlFRkQ7SUFFRTtFakYraEtBO0FBQ0Y7O0FpRjVoS0E7RTNFdkJJO0UyRXlCSDtFQUNBO0FqRitoS0Q7O0FpRjNoS0E7RUFDQztFQUNBO0FqRjhoS0Q7O0FpRjFoS0E7RUFFQztFQUNBO0VBQ0E7QWpGNGhLRDtBU3Q3SkM7RUFDQyxnQndFMUdZO0FqRmtpS2Q7QWlGN2hLQztFQUlDO0VBQ0E7RUFDQTtFQUNB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RWZEO0VBQ0E7RUFDQTtBcEY4NEtEO0FvRjU0S0M7RUFDQztFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FwRjg0S0Y7QVFsNEtDO0U0RTFCQTtJQWlCRTtFcEYrNEtEO0FBQ0Y7QW9GNzRLRTtFQUNDO0VBQ0E7RUFDQTtBcEYrNEtIOztBb0YxNEtBO0VBQ0M7RUFDQTtBcEY2NEtEOztBb0YxNEtBO0VBQ0M7RUFDQTtFQUNBO0FwRjY0S0Q7QVF2NUtDO0U0RU9EO0lBTUU7RXBGODRLQTtBQUNGO0FRNTVLQztFNEVPRDtJM0VzSkM7SUFDQTtJQUNBO0VUbXdLQztBQUNGO0FRbjZLQztFNEVPRDtJM0U0Skk7RVRvd0tGO0FBQ0Y7QVF4NktDO0U0RU9EO0kzRW1LRTtJQUNBO0VUa3dLQTtBQUNGO0FROTZLQztFNEVPRDtJQWNFO0VwRjY1S0E7QUFDRjs7QVFuN0tDO0U0RXlCRDtJQUVFO0VwRjY1S0E7QUFDRjs7QW9GajVLQTtFQUVDO0FwRm01S0Q7QVM3eUtDO0VBRUM7QVQ4eUtGO0FvRnA1S0M7RUFDQztFQUNBO0VBQ0E7RUFDQTtBcEZzNUtGO0FRdDhLQztFNEV3Q0Q7SUFZRTtFcEZzNUtBO0FBQ0Y7O0FvRm41S0E7RUFDQztFQUNBO0FwRnM1S0Q7QVFoOUtDO0U0RXdERDtJQUtFO0VwRnU1S0E7QUFDRjs7QVFyOUtDO0U0RWlFRDtJQUdFO0VwRnM1S0E7QUFDRjtBUTM5S0M7RTRFaUVEO0lBT0U7RXBGdTVLQTtBQUNGOztBcUZsZ0xBO0VBQ0M7RUFDQTtFQUNBO0FyRnFnTEQ7O0FxRjEvS0E7RUFDQztBckY2L0tEO0FRMStLQztFNkVwQkQ7STVFcURNO0VUNjhLSjtBQUNGO0FRLytLQztFNkVwQkQ7STVFNEVNO0VUMjdLSjtBQUNGO0FRcC9LQztFNkVwQkQ7STVFaUZNO0VUMjdLSjtBQUNGO0FRei9LQztFNkVwQkQ7STVFc0ZNO0VUMjdLSjtBQUNGO0FROS9LQztFNkVaQztJQUNDO0lBQ0E7SUFDQTtFckY2Z0xEO0FBQ0Y7QVFyZ0xDO0U2RUpDO0lBQ0M7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7RXJGNGdMRDtFcUZ6Z0xDO0lBQ0M7RXJGMmdMRjtBQUNGOztBcUZyZ0xBO0VBQ0M7RUFDQTtBckZ3Z0xEO0FReGhMQztFNkVjRDtJQUtFO0VyRnlnTEE7QUFDRjtBUTdoTEM7RTZFY0Q7SUFTRTtJQUNBO0lBQ0E7SUFDQTtFckYwZ0xBO0FBQ0Y7O0FxRnRnTEE7RUFDQztBckZ5Z0xEO0FRemlMQztFNkUrQkQ7SUFJRTtJQUNBO0lBQ0E7RXJGMGdMQTtBQUNGO0FRaGpMQztFNkUrQkQ7SUFVRTtFckYyZ0xBO0FBQ0Y7O0FxRnZnTEE7RUFDQztFQUNBLGlCbkZuRHdCO0VtRm9EeEIsa0JuRnBEd0I7QUY4akx6QjtBUTNqTEM7RTZFOENEO0lBTUU7SUFDQTtFckYyZ0xBO0FBQ0Y7QVFqa0xDO0U2RThDRDtJQVdFO0VyRjRnTEE7QUFDRjs7QXFGeGdMQTs7RUFFQztBckYyZ0xEOztBcUZ2Z0xBO0VBQ0M7QXJGMGdMRDs7QXNGbG5MRTtFQUNDO0F0RnFuTEg7O0F1RjVtTEE7RUFDQztFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO1VBQUE7RUFDQTtBdkYrbUxEO0F1RjdtTEM7RUFDQztBdkYrbUxGOztBdUYzbUxBO0U3RU5FO0U2RVFEO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFHQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0F2RjRtTEQ7QXVGem1MQztFQUNDO0VBQ0E7RUFDQTtBdkYybUxGO0F1RnZtTEM7RUFDQztFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0F2RnltTEY7QXVGdm1MRTtFQUNDO0VBQ0E7QXZGeW1MSDtBdUZwbUxDO0VBQ0M7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBdkZzbUxGO0FRenBMQztFK0VURDtJQWlFRTtFdkZxbUxBO0FBQ0Y7O0F1RmptTEE7RTlFZ0dDO0VBQ0E7RUFDQTtFOEVoR0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBdkZzbUxEO0FRenFMQztFK0U2REQ7STlFc0dJO0VUMGdMRjtBQUNGO0FROXFMQztFK0U2REQ7STlFNkdFO0lBQ0E7RVR3Z0xBO0FBQ0Y7O0F1RnhtTEE7RUFDQztFQUNBO0VBQ0E7QXZGMm1MRDtBdUZ6bUxDO0VBQ0M7QXZGMm1MRjs7QXVGdm1MQTtFQUNDO0VBQ0E7QXZGMG1MRDs7QXVGdm1MQTtFQUNDO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QXZGMG1MRDs7QXVGdG1MQTtFQUNDO0VBQ0E7QXZGeW1MRDs7QXVGcm1MQTtFQUNDO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBdkZ3bUxEO0F1RnRtTEM7RUFDQztBdkZ3bUxGO0F1RnJtTEM7RUFDQztFQUNBO0F2RnVtTEY7QXVGcG1MQztFQUNDO0VBQ0E7RUFDQTtBdkZzbUxGO0F1Rm5tTEM7RUFDQztFQUNBO0VBQ0E7RUFDQTtBdkZxbUxGOztBdUZobUxDO0VBQ0M7QXZGbW1MRjs7QXVGL2xMQTtFQUNDO0VBQ0E7RUFDQTtFQUNFO0VBQ0Y7RUFDQTtBdkZrbUxEO0F1RmhtTEM7RUFDQztFQUNBO0VBQ0E7RUFDQTtBdkZrbUxGOztBdUY5bExBO0VBQ0M7RUFDRTtFQUNBO0F2RmltTEg7O0F1RjlsTEE7RUFDQztFQUNBO0VBQ0E7RUFDQTtFQUNBO0F2RmltTEQ7QXVGL2xMQztFQUNDO0VBQ0E7QXZGaW1MRjtBdUY5bExDO0VBQ0M7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBdkZnbUxGOztBdUY1bExBO0VBQ0M7QXZGK2xMRDtBdUY5bExDO0VBQ0M7RUFDQTtFQUNBO0F2RmdtTEY7O0F1RjVsTEE7RUFDQztFakZ2Tkc7RUFNQTtFaUZtTkg7RUFDQTtBdkZnbUxEOztBd0Y5MExBO0UvRW9NQztFQUNBO0VBQ0E7QVQ4b0xEO0FRN3lMQztFZ0Z2Q0Q7SS9FME1JO0VUOG9MRjtBQUNGO0FRbHpMQztFZ0Z2Q0Q7SS9FaU5FO0lBQ0E7RVQ0b0xBO0FBQ0Y7O0FReHpMQztFZ0ZuQ0Q7SUFFRTtFeEY4MUxBO0FBQ0Y7O0FROXpMQztFZ0Y3QkQ7SUFFRTtFeEY4MUxBO0FBQ0Y7QVFwMExDO0VnRjdCRDtJQU1FO0lBQ0E7RXhGKzFMQTtBQUNGOztBd0Y1MUxBO0VBQ0M7QXhGKzFMRDtBUTkwTEM7RWdGbEJEO0lBSUU7RXhGZzJMQTtBQUNGO0FRbjFMQztFZ0ZsQkQ7SUFRRTtJQUNBO0V4RmkyTEE7QUFDRjtBUXoxTEM7RWdGbEJEO0lBWUU7SUFDQTtJQUNBO0V4Rm0yTEE7QUFDRjs7QXdGaDJMQTtFQUNDO0VBQ0E7QXhGbTJMRDs7QXdGaDJMQTtFbEZ4Qkk7RWtGMEJIO0F4Rm0yTEQ7QXdGajJMQztFQUFZO0F4Rm8yTGI7QXdGbjJMQztFQUFZO0F4RnMyTGI7O0F3Rm4yTEE7RUFDQztFQUNBO0F4RnMyTEQ7O0F3Rm4yTEE7RWxGckNJO0VrRnVDSDtBeEZzMkxEOztBd0ZuMkxBO0VsRjFDSTtFa0Y0Q0g7QXhGczJMRDs7QXlGdjVMQTtFQUNDO0VBQ0E7RUFDQSxvQnZGbUIyQjtFdUZsQjNCO0F6RjA1TEQ7QXlGeDVMQztFQUNDO0F6RjA1TEY7QVF6NExDO0VpRnhCRDtJQVdFO0kvRUZBO0VWNjVMQTtFeUZ4NUxBO0lBRUM7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7RXpGeTVMRDtFeUZ0NUxBO0lBQ0M7SUFDQTtJQUNBO1lBQUE7SUFDQTtFekZ3NUxEO0V5RnI1TEE7SUFDQztJQUNBO0lBQ0E7WUFBQTtJQUNBO0V6RnU1TEQ7QUFDRjs7QXlGbDVMQTtFaEYySUM7RUFDQTtFQUNBO0VIbExHO0VtRnlDSDtFQUNBO0F6RnM1TEQ7QVE3NkxDO0VpRmtCRDtJaEZpSkk7RVQ4d0xGO0FBQ0Y7QVFsN0xDO0VpRmtCRDtJaEZ3SkU7SUFDQTtFVDR3TEE7QUFDRjtBUXg3TEM7RWlGa0JEO0lBUUU7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0V6Rms2TEE7QUFDRjs7QVFsOExDO0VpRm9DRDtJQUdFO0V6Rmc2TEE7QUFDRjtBUXg4TEM7RWlGb0NEO0lBT0U7RXpGaTZMQTtBQUNGO0FRNzhMQztFaUZvQ0Q7SUFXRTtJQUNBO0lBQ0E7RXpGazZMQTtBQUNGOztBeUY5NUxBO0VBQ0M7QXpGaTZMRDtBUXg5TEM7RWlGc0REO0lBSUU7RXpGazZMQTtBQUNGOztBeUYvNUxBO0VBQ0M7RUFDQTtFQUNBO1VBQUE7RUFDQTtFQUFBO0VBQUE7QXpGazZMRDtBUXArTEM7RWlGOEREO0lBT0U7SUFDQTtJQUNBO0lBQ0E7SUFDQTtFekZtNkxBO0FBQ0Y7QXlGLzVMQztFQUNDO0VBQ0E7RUFDQTtFQUNBO0F6Rmk2TEY7QXlGOTVMQztFQUNDO1VBQUE7QXpGZzZMRjtBeUYvNUxFO0VBQ0M7QXpGaTZMSDs7QXlGMTVMQTtFQUNDO0VBQ0E7QXpGNjVMRDtBUTkvTEM7RWlGK0ZEO0lBS0U7SUFDQTtFekY4NUxBO0V5RjU1TEE7SUFDQztFekY4NUxEO0FBQ0Y7O0F5Rno1TEE7RUFFQztFQUNBO0VBQ0E7QXpGMjVMRDtBUzczTEM7RUFFQztBVDgzTEY7QXlGNTVMQztFQUNDO0F6Rjg1TEY7QXlGMzVMQztFQUNDO0VBQ0E7RUFDQTtFQUNBO0F6RjY1TEY7QVF6aE1DO0VpRjhHRDtJQWtCRTtJQUNBO0V6RjY1TEE7QUFDRjs7QVEvaE1DO0VpRnNJRDtJQUdFO0V6RjI1TEE7QUFDRjtBUXJpTUM7RWlGc0lEO0lBT0U7SUFDQTtFekY0NUxBO0FBQ0Y7O0EwRmxsTUE7RUFDRTtFQUNBO0ExRnFsTUY7O0EwRmxsTUE7RUFDRTtFQUNBO0VBQ0E7QTFGcWxNRjtBUXRqTUM7RWtGbENEO0lBTUk7SUFDQTtFMUZzbE1GO0FBQ0Y7QVE1ak1DO0VrRmxDRDtJQVlJO0lBQ0E7RTFGc2xNRjtBQUNGO0FRbGtNQztFa0ZsQ0Q7SUFpQkk7SUFDQTtFMUZ1bE1GO0FBQ0Y7O0EyRjNtTUE7RWxGZ01DO0VBQ0E7RUFDQTtBVCs2TEQ7QVE5a01DO0VtRm5DRDtJbEZzTUk7RVQrNkxGO0FBQ0Y7QVFubE1DO0VtRm5DRDtJbEY2TUU7SUFDQTtFVDY2TEE7QUFDRjtBUXpsTUM7RW1GbkNEO0lsRm9FTTtFVDRqTUo7QUFDRjtBUTlsTUM7RW1GbkNEO0lsRjJGTTtFVDBpTUo7QUFDRjtBUW5tTUM7RW1GbkNEO0lsRmdHTTtFVDBpTUo7QUFDRjtBUXhtTUM7RW1GbkNEO0lsRnFHTTtFVDBpTUo7QUFDRjtBUTdtTUM7RW1GbkNEO0lBT0U7RTNGNm9NQTtBQUNGOztBUWxuTUM7RW1GdkJEO0lBRUU7SUFDQSxtQkFsQmE7RTNGOHBNYjtBQUNGOztBMkZ4b01BO0VBQ0M7QTNGMm9NRDtBUTduTUM7RW1GZkQ7SUFJRTtJQUNBO0UzRjRvTUE7QUFDRjs7QVFub01DO0VvRjVCRDtJQUVFO0U1RmtxTUE7QUFDRjs7QVF6b01DO0VvRnRCRDtJQUVFO0U1RmtxTUE7QUFDRjs7QTRGL3BNQTtFQUNDO0VBQ0E7RUFDQTtBNUZrcU1EO0FRcnBNQztFb0ZoQkQ7SUFNRTtJQUVDO0lBQ0E7SUFDQTtJQUNBO0U1RmtxTUQ7QUFDRjtBUTlwTUM7RW9GaEJEO0lBZ0JFO0lBQ0E7RTVGa3FNQTtBQUNGOztBNEYvcE1BO0VBQ0M7RUFDQTtBNUZrcU1EO0FRenFNQztFb0ZLRDtJQUtFO0lBQ0E7SUFDQTtJQUNBO0U1Rm1xTUE7QUFDRjtBUWpyTUM7RW9GS0Q7SUFZRTtJQUNBO0U1Rm9xTUE7QUFDRjtBUXZyTUM7RW9GS0Q7SUFpQkU7RTVGcXFNQTtBQUNGOztBNEZscU1BO0V0RjdDSTtFc0YrQ0g7RUFDQTtBNUZxcU1EOztBNEZscU1BO0VBQ0M7RUFDQTtBNUZxcU1EOztBNEZscU1BO0VBRUM7RUFDQTtBNUZvcU1EO0FTamxNQztFQUNDLGdCbUZ0Rlk7QTVGeXFNZDtBNEZycU1DO0VBSUM7RUFDQTtFQUNBO0VBQ0E7RUFDQSxXQVBRO0VBUVIsWUFQUztFQVFUO0VBQ0E7QTVGb3FNRjs7QTRGaHFNQTtFQUNDO0E1Rm1xTUQ7O0E0RmhxTUE7RUFDQztFQUNBO0E1Rm1xTUQ7O0E2Rnp3TUE7RUFDQztFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0E3RjR3TUQ7QVE3dU1DO0VxRnZDRDtJQVdFO0U3RjZ3TUE7QUFDRjs7QTZGendNQTtFQUNDO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTdGNHdNRDtBNkYxd01DO0VBQ0M7RUFDQTtFQUNBO0E3RjR3TUY7QTZGendNQztFQUNDO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTdGMndNRjs7QTZGdHdNQTtFQUNDO0VBQ0E7RUFDQTtFQUNBO0E3Rnl3TUQ7QTZGdndNQztFQUNDO0E3Rnl3TUY7QTZGdHdNQztFQUNDO0E3Rnd3TUY7QTZGdHdNRTtFQUNDO0VBQ0E7RUFDQTtFQUNBO0E3Rnd3TUg7O0E2Rm53TUE7RUFDQztFQUNBO0VBQ0E7QTdGc3dNRDs7QTZGbHdNQTtFQUNDO0E3RnF3TUQ7QVF0eU1DO0VxRmdDRDtJQUlFO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7RTdGc3dNQTtBQUNGOztBNkZsd01BO0VBQ0M7RUFDQTtFQUNBO0VBQ0E7QTdGcXdNRDtBNkZud01DO0VBQ0M7QTdGcXdNRjs7QTZGL3ZNQTtFQUNDO0VBRUE7RUFDQTtFQUNBO0VBQ0E7VUFBQTtFQUNBO0VBQ0E7QTdGaXdNRDtBUW4wTUM7RXFGMEREO0lBV0U7SUFDQTtFN0Zrd01BO0FBQ0Y7O0E2Rjl2TUE7RUFDQztFQUNBO0VBQ0E7RUFDQTtFQUNBO0E3Rml3TUQ7O0E2RnZ2TUE7RUFDQztFQUNBO0E3RjB2TUQ7O0E2RnR2TUE7RUFDQztFQUNBO0VBQ0E7QTdGeXZNRDtBUTUxTUM7RXFGZ0dEO0lBTUU7RTdGMHZNQTtBQUNGOztBNkZ0dk1BO0VBQ0M7QTdGeXZNRDtBNkZ2dk1DO0VBQ0M7RUFDQTtBN0Z5dk1GOztBNkZwdk1BO0VBQ0M7RUFDQTtFQUNBO0E3RnV2TUQ7QVEvMk1DO0VxRnFIRDtJQU1FO0U3Rnd2TUE7QUFDRjs7QTZGcHZNQTtFcEY2QkM7RUFDQTtFQUNBO0FUMnRNRDtBUTEzTUM7RXFGZ0lEO0lwRm1DSTtFVDJ0TUY7QUFDRjtBUS8zTUM7RXFGZ0lEO0lwRjBDRTtJQUNBO0VUeXRNQTtBQUNGOztBNkYvdk1BO0VBQ0M7RUFDQTtFQUNBO0E3Rmt3TUQ7O0E2Rjl2TUE7RUFDQztBN0Zpd01EOztBNkY5dk1BO0VBQ0M7RUFDQTtBN0Zpd01EOztBNkY5dk1BO0VBQ0M7QTdGaXdNRDs7QTZGN3ZNQTtFQUNDO0E3Rmd3TUQ7QVE1NU1DO0VxRjJKRDtJQUlFO0U3Rml3TUE7QUFDRjs7QThGeDhNQTtFQUNFO0VBQ0E7QTlGMjhNRjtBUXQ2TUM7RXNGdkNEO0lBS0k7RTlGNDhNRjtBQUNGOztBK0ZsOU1BO0VBQ0U7QS9GcTlNRjtBK0ZsOU1FO0VBQ0U7QS9GbzlNSjs7QWdHejlNQTtFQUNFO0VBQ0E7QWhHNDlNRjs7QWdHejlNQTtFQUNFO0VBQ0E7QWhHNDlNRjtBZ0cxOU1FO0VBQ0U7QWhHNDlNSjtBZ0d6OU1FO0VBQ0U7QWhHMjlNSjs7QWdHdjlNQTtFQUNFO0FoRzA5TUY7O0FnR3Y5TUE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtBaEcwOU1GO0FRNzhNQztFd0ZqQkQ7SUFPSTtFaEcyOU1GO0FBQ0Y7O0FnR3g5TUE7RTFGYkk7RTBGZUY7RUFDQTtBaEcyOU1GOztBUXg5TUM7RXdGR0c7SUFDRTtJQUNBO0lBQ0E7RWhHeTlNSjtFZ0d2OU1JO0lBQ0U7RWhHeTlNTjtFZ0dyOU1FO0lBQ0U7SUFDQTtFaEd1OU1KO0VnR245TUU7SXZGMElIO0lBQ0E7SUFDQTtJdUYxSUs7RWhHdTlNSjtBQUNGO0FRNytNQztFd0ZtQkc7SXZGZ0pBO0VUODBNRjtBQUNGO0FRbC9NQztFd0ZtQkc7SXZGdUpGO0lBQ0E7RVQ0ME1BO0FBQ0Y7O0FnRzM5TUk7RUFDRTtBaEc4OU1OOztBaUdoaU5BO0VBQ0M7RUFDQTtBakdtaU5EOztBaUdoaU5BO0VBQ0M7QWpHbWlORDs7QWtHNWlOQTtFQUNFO0U1Rm1CRTtFQU1BO0U0RnZCRjtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FsR2dqTkY7QWtHOWlORTtFQUNFO0VBQ0E7QWxHZ2pOSjs7QW1HM2pOQTtFQUNFO0VBQ0E7RUFFQTtBbkc2ak5GO0FRMWhOQztFMkZ2Q0Q7SUFPSTtFbkc4ak5GO0FBQ0Y7QVEvaE5DO0UyRnZDRDtJMUZvTUM7SUFDQTtJQUNBO0VUczRNQztBQUNGO0FRdGlOQztFMkZ2Q0Q7STFGME1JO0VUdTRNRjtBQUNGO0FRM2lOQztFMkZ2Q0Q7STFGaU5FO0lBQ0E7RVRxNE1BO0FBQ0Y7QW1HMWtORTtFQUNFO0FuRzRrTko7QVFwak5DO0UyRnpCQztJQUlJO0VuRzZrTko7QUFDRjs7QW1HdmtORTtFQUNFO0FuRzBrTko7O0FtR3RrTkE7RUFDRTtBbkd5a05GO0FRamtOQztFMkZURDtJQUlJO0lBQ0E7RW5HMGtORjtBQUNGO0FtR3hrTkU7RUFDRTtBbkcwa05KO0FRMWtOQztFMkZEQztJQUlJO0VuRzJrTko7QUFDRjs7QUEvak5BOzs4REFBQTtBb0d2REE7OzZFQUFBO0FDRUE7RUFDQztBckc2bk5EOztBcUcxbk5BO0VBQ0M7QXJHNm5ORDs7QVE3bE5DO0U2RjdCRDtJQUVFO0lBQ0E7RXJHNm5OQTtBQUNGOztBcUcxbk5BO0VBQ0M7QXJHNm5ORDs7QXFHMW5OQTtFQUNDO0VBQ0E7QXJHNm5ORDtBUTdtTkM7RTZGbEJEO0lBS0U7RXJHOG5OQTtBQUNGOztBcUczbk5BO0VBQ0M7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBckc4bk5EO0FRMW5OQztFNkZURDtJQVFFO0VyRytuTkE7QUFDRjs7QVEvbk5DO0U2Rk1DO0lBQ0M7RXJHNm5ORDtBQUNGO0FRcm9OQztFNkZJRDtJQVFFO0lBQ0E7SUFDQTtJQUNBO0VyRzZuTkE7QUFDRjtBcUcxbk5DO0VBQ0M7RUFDQTtFQUNBO0FyRzRuTkY7O0FxR3huTkE7RUFDQztBckcybk5EOztBc0czck5FO0VBQ0U7QXRHOHJOSjtBc0czck5NO0VBQ0U7QXRHNnJOUjs7QXVHcHNOQTtFQUNDO0F2R3VzTkQ7O0FBem9OQTs7OERBQUE7QXdHL0RBO0VBQ0M7RUFDQTtBeEc4c05EO0F3RzVzTkM7RUFDQztFQUNBO0VBQ0E7RUFDQTtBeEc4c05GO0F3RzVzTkU7RUFDQztFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBeEc4c05IOztBeUcvdE5BOztFQUFBO0FBT0M7RUFDQztBekc4dE5GO0F5RzF0TkM7RUFDQztBekc0dE5GO0F5R3h0TkM7RUFDQztBekcwdE5GO0F5R3R0TkU7Ozs7RUFJQztBekd3dE5IO0F5R3B0TkM7RUFDQztBekdzdE5GO0F5R250TkM7RUFDQztBekdxdE5GO0F5R250TkU7RUFDQztFQUVBO0VBQ0E7RUFDQTtFQUVBO0VuR3hCQztFQU1BO0VtR29CRDtBekdvdE5IO0F5R2x0Tkc7RUFDQztFQUNBO0VBQ0E7RUFDQTtFbkdoQ0E7QU5xdk5KO0F5RzlzTkM7RUFDQztFQUNBO0F6R2d0TkY7QXlHOXNORTtFQUNDO0VBQ0E7RUFDQTtFQUNBO0F6R2d0Tkg7QXlHOXNORztFQUNDO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBekdndE5KOztBeUcxc05BO0VBQ0M7QXpHNnNORDtBeUczc05DO0VBQ0M7QXpHNnNORjs7QUEzdE5BOzs7OERBQUE7QTBHdkVBOzt3RkFBQTtBQU1BOzs7Ozs7Ozs7Ozs7OztFQUFBO0FBMEJHO0VBQ0M7QTFHMnhOSjs7QTBHenhORztFQUNDO0ExRzR4Tko7O0EwR2h5Tkc7RUFDQztBMUdteU5KOztBMEdqeU5HO0VBQ0M7QTFHb3lOSjs7QTBHeHlORztFQUNDO0ExRzJ5Tko7O0EwR3p5Tkc7RUFDQztBMUc0eU5KOztBMEdoek5HO0VBQ0M7QTFHbXpOSjs7QTBHanpORztFQUNDO0ExR296Tko7O0EwR3h6Tkc7RUFDQztBMUcyek5KOztBMEd6ek5HO0VBQ0M7QTFHNHpOSjs7QTBHaDBORztFQUNDO0ExR20wTko7O0EwR2owTkc7RUFDQztBMUdvME5KOztBMEd4ME5HO0VBQ0M7QTFHMjBOSjs7QTBHejBORztFQUNDO0ExRzQwTko7O0EwR2gxTkc7RUFDQztBMUdtMU5KOztBMEdqMU5HO0VBQ0M7QTFHbzFOSjs7QTBHeDFORztFQUNDO0ExRzIxTko7O0EwR3oxTkc7RUFDQztBMUc0MU5KOztBMEdoMk5HO0VBQ0M7QTFHbTJOSjs7QTBHajJORztFQUNDO0ExR28yTko7O0EwR3gyTkc7RUFDQztBMUcyMk5KOztBMEd6Mk5HO0VBQ0M7QTFHNDJOSjs7QTBHaDNORztFQUNDO0ExR20zTko7O0EwR2ozTkc7RUFDQztBMUdvM05KOztBMEd4M05HO0VBQ0M7QTFHMjNOSjs7QTBHejNORztFQUNDO0ExRzQzTko7O0EwR2g0Tkc7RUFDQztBMUdtNE5KOztBMEdqNE5HO0VBQ0M7QTFHbzROSjs7QTBHeDRORztFQUNDO0ExRzI0Tko7O0EwR3o0Tkc7RUFDQztBMUc0NE5KOztBMEdoNU5HO0VBQ0M7QTFHbTVOSjs7QTBHajVORztFQUNDO0ExR281Tko7O0EwR3g1Tkc7RUFDQztBMUcyNU5KOztBMEd6NU5HO0VBQ0M7QTFHNDVOSjs7QTBHaDZORztFQUNDO0ExR202Tko7O0EwR2o2Tkc7RUFDQztBMUdvNk5KOztBMEd4Nk5HO0VBQ0M7QTFHMjZOSjs7QTBHejZORztFQUNDO0ExRzQ2Tko7O0EwR2g3Tkc7RUFDQztBMUdtN05KOztBMEdqN05HO0VBQ0M7QTFHbzdOSjs7QTBHeDdORztFQUNDO0ExRzI3Tko7O0EwR3o3Tkc7RUFDQztBMUc0N05KOztBMEdoOE5HO0VBQ0M7QTFHbThOSjs7QTBHajhORztFQUNDO0ExR284Tko7O0EwR3g4Tkc7RUFDQztBMUcyOE5KOztBMEd6OE5HO0VBQ0M7QTFHNDhOSjs7QTBHaDlORztFQUNDO0ExR205Tko7O0EwR2o5Tkc7RUFDQztBMUdvOU5KOztBMEc3OE5DO0VBQ0M7QTFHZzlORjs7QTBHajlOQztFQUNDO0ExR285TkY7O0EwR3I5TkM7RUFDQztBMUd3OU5GOztBMEd6OU5DO0VBQ0M7QTFHNDlORjs7QTBHNzlOQztFQUNDO0ExR2crTkY7O0EwR2orTkM7RUFDQztBMUdvK05GOztBMEdyK05DO0VBQ0M7QTFHdytORjs7QTBHeitOQztFQUNDO0ExRzQrTkY7O0EwRzcrTkM7RUFDQztBMUdnL05GOztBMEdqL05DO0VBQ0M7QTFHby9ORjs7QTJHaGlPQTs7d0ZBQUE7QUFLQTs7Ozs7Ozs7RUFBQTtBQXNCQTs7Ozs7Ozs7RUFBQTtBQVlFO0VyR1BFO0FOeWhPSjs7QTJHbGhPRTtFckdQRTtBTjZoT0o7O0EyR3RoT0U7RXJHUEU7QU5paU9KOztBMkcxaE9FO0VyR1BFO0FOcWlPSjs7QTRHcmtPQTtFQUNDO0E1R3drT0Q7O0E0R3JrT0E7RUFDQztBNUd3a09EOztBNEdya09BO0VBQ0M7RUFDQTtFQUNBO0E1R3drT0Q7O0E0R3JrT0E7RUFDQztBNUd3a09EOztBNEdya09BO0VBQ0M7QTVHd2tPRDs7QTRHcmtPQTtFdEdGSTtFc0dJSDtFQUNBO0E1R3drT0Q7O0E2R2ptT0E7OztDQUFBO0FDRUM7RUFBeUI7QTlHdW1PMUI7O0E4R3RtT0M7RUFBeUI7QTlHMG1PMUI7O0E4R3ptT0M7RUFBeUI7QTlHNm1PMUI7O0E4RzVtT0M7RUFBeUI7QTlHZ25PMUI7O0E4RzdtT0M7RUFBeUI7QTlHaW5PMUI7O0E4R2huT0M7RUFBeUI7QTlHb25PMUI7O0E4R25uT0M7RUFBeUI7QTlHdW5PMUI7O0E4R3RuT0M7RUFBeUI7QTlHMG5PMUI7O0E4R25vT0M7RUFBeUI7QTlHdW9PMUI7O0E4R3RvT0M7RUFBeUI7QTlHMG9PMUI7O0E4R3pvT0M7RUFBeUI7QTlHNm9PMUI7O0E4RzVvT0M7RUFBeUI7QTlHZ3BPMUI7O0E4RzdvT0M7RUFBeUI7QTlHaXBPMUI7O0E4R2hwT0M7RUFBeUI7QTlHb3BPMUI7O0E4R25wT0M7RUFBeUI7QTlHdXBPMUI7O0E4R3RwT0M7RUFBeUI7QTlHMHBPMUI7O0E4R25xT0M7RUFBeUI7QTlHdXFPMUI7O0E4R3RxT0M7RUFBeUI7QTlHMHFPMUI7O0E4R3pxT0M7RUFBeUI7QTlHNnFPMUI7O0E4RzVxT0M7RUFBeUI7QTlHZ3JPMUI7O0E4RzdxT0M7RUFBeUI7QTlHaXJPMUI7O0E4R2hyT0M7RUFBeUI7QTlHb3JPMUI7O0E4R25yT0M7RUFBeUI7QTlHdXJPMUI7O0E4R3RyT0M7RUFBeUI7QTlHMHJPMUI7O0E4R25zT0M7RUFBeUI7QTlHdXNPMUI7O0E4R3RzT0M7RUFBeUI7QTlHMHNPMUI7O0E4R3pzT0M7RUFBeUI7QTlHNnNPMUI7O0E4RzVzT0M7RUFBeUI7QTlHZ3RPMUI7O0E4RzdzT0M7RUFBeUI7QTlHaXRPMUI7O0E4R2h0T0M7RUFBeUI7QTlHb3RPMUI7O0E4R250T0M7RUFBeUI7QTlHdXRPMUI7O0E4R3R0T0M7RUFBeUI7QTlHMHRPMUI7O0E4R251T0M7RUFBeUI7QTlHdXVPMUI7O0E4R3R1T0M7RUFBeUI7QTlHMHVPMUI7O0E4R3p1T0M7RUFBeUI7QTlHNnVPMUI7O0E4RzV1T0M7RUFBeUI7QTlHZ3ZPMUI7O0E4Rzd1T0M7RUFBeUI7QTlHaXZPMUI7O0E4R2h2T0M7RUFBeUI7QTlHb3ZPMUI7O0E4R252T0M7RUFBeUI7QTlHdXZPMUI7O0E4R3R2T0M7RUFBeUI7QTlHMHZPMUI7O0E4R253T0M7RUFBeUI7QTlHdXdPMUI7O0E4R3R3T0M7RUFBeUI7QTlHMHdPMUI7O0E4R3p3T0M7RUFBeUI7QTlHNndPMUI7O0E4RzV3T0M7RUFBeUI7QTlHZ3hPMUI7O0E4Rzd3T0M7RUFBeUI7QTlHaXhPMUI7O0E4R2h4T0M7RUFBeUI7QTlHb3hPMUI7O0E4R254T0M7RUFBeUI7QTlHdXhPMUI7O0E4R3R4T0M7RUFBeUI7QTlHMHhPMUI7O0E4R255T0M7RUFBeUI7QTlHdXlPMUI7O0E4R3R5T0M7RUFBeUI7QTlHMHlPMUI7O0E4R3p5T0M7RUFBeUI7QTlHNnlPMUI7O0E4RzV5T0M7RUFBeUI7QTlHZ3pPMUI7O0E4Rzd5T0M7RUFBeUI7QTlHaXpPMUI7O0E4R2h6T0M7RUFBeUI7QTlHb3pPMUI7O0E4R256T0M7RUFBeUI7QTlHdXpPMUI7O0E4R3R6T0M7RUFBeUI7QTlHMHpPMUI7O0E4R24wT0M7RUFBeUI7QTlHdTBPMUI7O0E4R3QwT0M7RUFBeUI7QTlHMDBPMUI7O0E4R3owT0M7RUFBeUI7QTlHNjBPMUI7O0E4RzUwT0M7RUFBeUI7QTlHZzFPMUI7O0E4RzcwT0M7RUFBeUI7QTlHaTFPMUI7O0E4R2gxT0M7RUFBeUI7QTlHbzFPMUI7O0E4R24xT0M7RUFBeUI7QTlHdTFPMUI7O0E4R3QxT0M7RUFBeUI7QTlHMDFPMUI7O0E4R24yT0M7RUFBeUI7QTlHdTJPMUI7O0E4R3QyT0M7RUFBeUI7QTlHMDJPMUI7O0E4R3oyT0M7RUFBeUI7QTlHNjJPMUI7O0E4RzUyT0M7RUFBeUI7QTlHZzNPMUI7O0E4RzcyT0M7RUFBeUI7QTlHaTNPMUI7O0E4R2gzT0M7RUFBeUI7QTlHbzNPMUI7O0E4R24zT0M7RUFBeUI7QTlHdTNPMUI7O0E4R3QzT0M7RUFBeUI7QTlHMDNPMUI7O0E4R240T0M7RUFBeUI7QTlHdTRPMUI7O0E4R3Q0T0M7RUFBeUI7QTlHMDRPMUI7O0E4R3o0T0M7RUFBeUI7QTlHNjRPMUI7O0E4RzU0T0M7RUFBeUI7QTlHZzVPMUI7O0E4Rzc0T0M7RUFBeUI7QTlHaTVPMUI7O0E4R2g1T0M7RUFBeUI7QTlHbzVPMUI7O0E4R241T0M7RUFBeUI7QTlHdTVPMUI7O0E4R3Q1T0M7RUFBeUI7QTlHMDVPMUI7O0E4R242T0M7RUFBeUI7QTlHdTZPMUI7O0E4R3Q2T0M7RUFBeUI7QTlHMDZPMUI7O0E4R3o2T0M7RUFBeUI7QTlHNjZPMUI7O0E4RzU2T0M7RUFBeUI7QTlHZzdPMUI7O0E4Rzc2T0M7RUFBeUI7QTlHaTdPMUI7O0E4R2g3T0M7RUFBeUI7QTlHbzdPMUI7O0E4R243T0M7RUFBeUI7QTlHdTdPMUI7O0E4R3Q3T0M7RUFBeUI7QTlHMDdPMUI7O0E4R244T0M7RUFBeUI7QTlHdThPMUI7O0E4R3Q4T0M7RUFBeUI7QTlHMDhPMUI7O0E4R3o4T0M7RUFBeUI7QTlHNjhPMUI7O0E4RzU4T0M7RUFBeUI7QTlHZzlPMUI7O0E4Rzc4T0M7RUFBeUI7QTlHaTlPMUI7O0E4R2g5T0M7RUFBeUI7QTlHbzlPMUI7O0E4R245T0M7RUFBeUI7QTlHdTlPMUI7O0E4R3Q5T0M7RUFBeUI7QTlHMDlPMUI7O0E4R24rT0M7RUFBeUI7QTlHdStPMUI7O0E4R3QrT0M7RUFBeUI7QTlHMCtPMUI7O0E4R3orT0M7RUFBeUI7QTlHNitPMUI7O0E4RzUrT0M7RUFBeUI7QTlHZy9PMUI7O0E4RzcrT0M7RUFBeUI7QTlHaS9PMUI7O0E4R2gvT0M7RUFBeUI7QTlHby9PMUI7O0E4R24vT0M7RUFBeUI7QTlHdS9PMUI7O0E4R3QvT0M7RUFBeUI7QTlHMC9PMUI7O0E4R25nUEM7RUFBeUI7QTlHdWdQMUI7O0E4R3RnUEM7RUFBeUI7QTlHMGdQMUI7O0E4R3pnUEM7RUFBeUI7QTlHNmdQMUI7O0E4RzVnUEM7RUFBeUI7QTlHZ2hQMUI7O0E4RzdnUEM7RUFBeUI7QTlHaWhQMUI7O0E4R2hoUEM7RUFBeUI7QTlHb2hQMUI7O0E4R25oUEM7RUFBeUI7QTlHdWhQMUI7O0E4R3RoUEM7RUFBeUI7QTlHMGhQMUI7O0E4R25pUEM7RUFBeUI7QTlHdWlQMUI7O0E4R3RpUEM7RUFBeUI7QTlHMGlQMUI7O0E4R3ppUEM7RUFBeUI7QTlHNmlQMUI7O0E4RzVpUEM7RUFBeUI7QTlHZ2pQMUI7O0E4RzdpUEM7RUFBeUI7QTlHaWpQMUI7O0E4R2hqUEM7RUFBeUI7QTlHb2pQMUI7O0E4R25qUEM7RUFBeUI7QTlHdWpQMUI7O0E4R3RqUEM7RUFBeUI7QTlHMGpQMUI7O0E4R25rUEM7RUFBeUI7QTlHdWtQMUI7O0E4R3RrUEM7RUFBeUI7QTlHMGtQMUI7O0E4R3prUEM7RUFBeUI7QTlHNmtQMUI7O0E4RzVrUEM7RUFBeUI7QTlHZ2xQMUI7O0E4RzdrUEM7RUFBeUI7QTlHaWxQMUI7O0E4R2hsUEM7RUFBeUI7QTlHb2xQMUI7O0E4R25sUEM7RUFBeUI7QTlHdWxQMUI7O0E4R3RsUEM7RUFBeUI7QTlHMGxQMUI7O0E4R25tUEM7RUFBeUI7QTlHdW1QMUI7O0E4R3RtUEM7RUFBeUI7QTlHMG1QMUI7O0E4R3ptUEM7RUFBeUI7QTlHNm1QMUI7O0E4RzVtUEM7RUFBeUI7QTlHZ25QMUI7O0E4RzdtUEM7RUFBeUI7QTlHaW5QMUI7O0E4R2huUEM7RUFBeUI7QTlHb25QMUI7O0E4R25uUEM7RUFBeUI7QTlHdW5QMUI7O0E4R3RuUEM7RUFBeUI7QTlHMG5QMUI7O0E4R25vUEM7RUFBeUI7QTlHdW9QMUI7O0E4R3RvUEM7RUFBeUI7QTlHMG9QMUI7O0E4R3pvUEM7RUFBeUI7QTlHNm9QMUI7O0E4RzVvUEM7RUFBeUI7QTlHZ3BQMUI7O0E4RzdvUEM7RUFBeUI7QTlHaXBQMUI7O0E4R2hwUEM7RUFBeUI7QTlHb3BQMUI7O0E4R25wUEM7RUFBeUI7QTlHdXBQMUI7O0E4R3RwUEM7RUFBeUI7QTlHMHBQMUI7O0E4R25xUEM7RUFBeUI7QTlHdXFQMUI7O0E4R3RxUEM7RUFBeUI7QTlHMHFQMUI7O0E4R3pxUEM7RUFBeUI7QTlHNnFQMUI7O0E4RzVxUEM7RUFBeUI7QTlHZ3JQMUI7O0E4RzdxUEM7RUFBeUI7QTlHaXJQMUI7O0E4R2hyUEM7RUFBeUI7QTlHb3JQMUI7O0E4R25yUEM7RUFBeUI7QTlHdXJQMUI7O0E4R3RyUEM7RUFBeUI7QTlHMHJQMUI7O0E4R25zUEM7RUFBeUI7QTlHdXNQMUI7O0E4R3RzUEM7RUFBeUI7QTlHMHNQMUI7O0E4R3pzUEM7RUFBeUI7QTlHNnNQMUI7O0E4RzVzUEM7RUFBeUI7QTlHZ3RQMUI7O0E4RzdzUEM7RUFBeUI7QTlHaXRQMUI7O0E4R2h0UEM7RUFBeUI7QTlHb3RQMUI7O0E4R250UEM7RUFBeUI7QTlHdXRQMUI7O0E4R3R0UEM7RUFBeUI7QTlHMHRQMUI7O0E4R251UEM7RUFBeUI7QTlHdXVQMUI7O0E4R3R1UEM7RUFBeUI7QTlHMHVQMUI7O0E4R3p1UEM7RUFBeUI7QTlHNnVQMUI7O0E4RzV1UEM7RUFBeUI7QTlHZ3ZQMUI7O0E4Rzd1UEM7RUFBeUI7QTlHaXZQMUI7O0E4R2h2UEM7RUFBeUI7QTlHb3ZQMUI7O0E4R252UEM7RUFBeUI7QTlHdXZQMUI7O0E4R3R2UEM7RUFBeUI7QTlHMHZQMUI7O0E4R3Z2UEE7RUFBdUI7QTlHMnZQdkI7O0E4RzF2UEE7RUFBdUI7QTlHOHZQdkI7O0E4Rzd2UEE7RUFBdUI7QTlHaXdQdkI7O0E4R2h3UEE7RUFBdUI7QTlHb3dQdkI7O0FROXVQQztFc0dwQkQ7SXJHcURNO0lBQUE7RVRtdFBKO0FBQ0Y7QVFydlBDO0VzR3BCRDtJckc0RU07SUFBQTtFVGtzUEo7QUFDRjtBUTN2UEM7RXNHcEJEO0lyR2lGTTtJQUFBO0VUbXNQSjtBQUNGO0FRandQQztFc0dwQkQ7SXJHc0ZNO0lBQUE7RVRvc1BKO0FBQ0Y7O0FRdndQQztFc0daQTtJQUNDO0U5R3V4UEE7QUFDRixDIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vLy4vcmVzb3VyY2VzL3Nhc3Mvc3R5bGUuc2NzcyIsIndlYnBhY2s6Ly8vLi9yZXNvdXJjZXMvc2Fzcy8xLVNldHRpbmdzL19zZXR0aW5ncy5jb2xvcnMuc2NzcyIsIndlYnBhY2s6Ly8vLi9yZXNvdXJjZXMvc2Fzcy8xLVNldHRpbmdzL19zZXR0aW5ncy5jb25maWcuc2NzcyIsIndlYnBhY2s6Ly8vLi9yZXNvdXJjZXMvc2Fzcy8xLVNldHRpbmdzL19zZXR0aW5ncy50eXBvZ3JhcGh5LnNjc3MiLCJ3ZWJwYWNrOi8vLy4vcmVzb3VyY2VzL3Nhc3MvMS1TZXR0aW5ncy9fc2V0dGluZ3MuYnJlYWtwb2ludHMuc2NzcyIsIndlYnBhY2s6Ly8vLi9yZXNvdXJjZXMvc2Fzcy8yLVRvb2xzL190b29scy5jb2x1bW4uc2NzcyIsIndlYnBhY2s6Ly8vLi9yZXNvdXJjZXMvc2Fzcy8yLVRvb2xzL190b29scy5mb250cy5zY3NzIiwid2VicGFjazovLy8uL3Jlc291cmNlcy9zYXNzLzItVG9vbHMvX3Rvb2xzLmludGVycG9sYXRlLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vcmVzb3VyY2VzL3Nhc3MvMi1Ub29scy9fdG9vbHMubWVkaWFRdWVyaWVzLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vcmVzb3VyY2VzL3Nhc3MvMi1Ub29scy9fdG9vbHMudG9vbGJveC5zY3NzIiwid2VicGFjazovLy8uL3Jlc291cmNlcy9zYXNzLzItVG9vbHMvX3Rvb2xzLnppbmRleC5zY3NzIiwid2VicGFjazovLy8uL3Jlc291cmNlcy9zYXNzLzItVG9vbHMvX3Rvb2xzLmFuaW1hdGlvbnMuc2NzcyIsIndlYnBhY2s6Ly8vLi9yZXNvdXJjZXMvc2Fzcy8zLUVsZW1lbnRzL19lbGVtZW50cy5iYXNlLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vcmVzb3VyY2VzL3Nhc3MvMy1FbGVtZW50cy9fZWxlbWVudHMuaGVhZGluZ3Muc2NzcyIsIndlYnBhY2s6Ly8vLi9yZXNvdXJjZXMvc2Fzcy8zLUVsZW1lbnRzL19lbGVtZW50cy5saXN0cy5zY3NzIiwid2VicGFjazovLy8uL3Jlc291cmNlcy9zYXNzLzQtTGF5b3V0cy9fbGF5b3V0cy5jb250YWluLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vcmVzb3VyY2VzL3Nhc3MvNC1MYXlvdXRzL19sYXlvdXRzLnNwbGl0LnNjc3MiLCJ3ZWJwYWNrOi8vLy4vcmVzb3VyY2VzL3Nhc3MvNC1MYXlvdXRzL19sYXlvdXRzLmNvbXBvbmVudC5zY3NzIiwid2VicGFjazovLy8uL3Jlc291cmNlcy9zYXNzLzUtQ29tcG9uZW50cy9fY29tcG9uZW50cy5zY3NzIiwid2VicGFjazovLy8uL3Jlc291cmNlcy9zYXNzLzUtQ29tcG9uZW50cy9fY29tcG9uZW50cy5icmVhZGNydW1iLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vcmVzb3VyY2VzL3Nhc3MvNS1Db21wb25lbnRzL19jb21wb25lbnRzLmJ1dHRvbi5zY3NzIiwid2VicGFjazovLy8uL3Jlc291cmNlcy9zYXNzLzUtQ29tcG9uZW50cy9fY29tcG9uZW50cy5naG9zdGJ1dHRvbi5zY3NzIiwid2VicGFjazovLy8uL3Jlc291cmNlcy9zYXNzLzUtQ29tcG9uZW50cy9fY29tcG9uZW50cy5jYXJkLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vcmVzb3VyY2VzL3Nhc3MvNS1Db21wb25lbnRzL19jb21wb25lbnRzLmNsb3NlLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vcmVzb3VyY2VzL3Nhc3MvNS1Db21wb25lbnRzL19jb21wb25lbnRzLmNvbm5lY3Quc2NzcyIsIndlYnBhY2s6Ly8vLi9yZXNvdXJjZXMvc2Fzcy81LUNvbXBvbmVudHMvX2NvbXBvbmVudHMuZGF0YS5zY3NzIiwid2VicGFjazovLy8uL3Jlc291cmNlcy9zYXNzLzUtQ29tcG9uZW50cy9fY29tcG9uZW50cy5kYXRlTGFiZWwuc2NzcyIsIndlYnBhY2s6Ly8vLi9yZXNvdXJjZXMvc2Fzcy81LUNvbXBvbmVudHMvX2NvbXBvbmVudHMuZXZlbnRDYXJkLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vcmVzb3VyY2VzL3Nhc3MvNS1Db21wb25lbnRzL19jb21wb25lbnRzLmZpbGVVcGxvYWQuc2NzcyIsIndlYnBhY2s6Ly8vLi9yZXNvdXJjZXMvc2Fzcy81LUNvbXBvbmVudHMvX2NvbXBvbmVudHMuZm9ybUdyb3VwLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vcmVzb3VyY2VzL3Nhc3MvNS1Db21wb25lbnRzL19jb21wb25lbnRzLmZvcm1GZWVkYmFjay5zY3NzIiwid2VicGFjazovLy8uL3Jlc291cmNlcy9zYXNzLzUtQ29tcG9uZW50cy9fY29tcG9uZW50cy5oYW1idXJnZXIuc2NzcyIsIndlYnBhY2s6Ly8vLi9yZXNvdXJjZXMvc2Fzcy81LUNvbXBvbmVudHMvX2NvbXBvbmVudHMuaGVhZGluZy5zY3NzIiwid2VicGFjazovLy8uL3Jlc291cmNlcy9zYXNzLzUtQ29tcG9uZW50cy9fY29tcG9uZW50cy5oZXJvLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vcmVzb3VyY2VzL3Nhc3MvNS1Db21wb25lbnRzL19jb21wb25lbnRzLmlucHV0LnNjc3MiLCJ3ZWJwYWNrOi8vLy4vcmVzb3VyY2VzL3Nhc3MvNS1Db21wb25lbnRzL19jb21wb25lbnRzLmxhbmd1YWdlLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vcmVzb3VyY2VzL3Nhc3MvNS1Db21wb25lbnRzL19jb21wb25lbnRzLm5hdi5zY3NzIiwid2VicGFjazovLy8uL3Jlc291cmNlcy9zYXNzLzUtQ29tcG9uZW50cy9fY29tcG9uZW50cy5wYWdpbmF0aW9uLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vcmVzb3VyY2VzL3Nhc3MvNS1Db21wb25lbnRzL19jb21wb25lbnRzLnBhZ2VUaXRsZS5zY3NzIiwid2VicGFjazovLy8uL3Jlc291cmNlcy9zYXNzLzUtQ29tcG9uZW50cy9fY29tcG9uZW50cy5wcmVUaXRsZS5zY3NzIiwid2VicGFjazovLy8uL3Jlc291cmNlcy9zYXNzLzUtQ29tcG9uZW50cy9fY29tcG9uZW50cy5wcm9qZWN0b3Iuc2NzcyIsIndlYnBhY2s6Ly8vLi9yZXNvdXJjZXMvc2Fzcy81LUNvbXBvbmVudHMvX2NvbXBvbmVudHMuc2l0ZW1hcC5zY3NzIiwid2VicGFjazovLy8uL3Jlc291cmNlcy9zYXNzLzUtQ29tcG9uZW50cy9fY29tcG9uZW50cy5za2lwTGluay5zY3NzIiwid2VicGFjazovLy8uL3Jlc291cmNlcy9zYXNzLzUtQ29tcG9uZW50cy9fY29tcG9uZW50cy5zbGlkZS1pbmRpY2F0b3Iuc2NzcyIsIndlYnBhY2s6Ly8vLi9yZXNvdXJjZXMvc2Fzcy81LUNvbXBvbmVudHMvX2NvbXBvbmVudHMudGV4dC1idXR0b24uc2NzcyIsIndlYnBhY2s6Ly8vLi9yZXNvdXJjZXMvc2Fzcy81LUNvbXBvbmVudHMvX2NvbXBvbmVudHMudG9nZ2xlLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vcmVzb3VyY2VzL3Nhc3MvNS1Db21wb25lbnRzL19jb21wb25lbnRzLnRyYWRlbWFyay5zY3NzIiwid2VicGFjazovLy8uL3Jlc291cmNlcy9zYXNzLzUtQ29tcG9uZW50cy9fY29tcG9uZW50cy52YWNhbmN5UHJvcGVydGllcy5zY3NzIiwid2VicGFjazovLy8uL3Jlc291cmNlcy9zYXNzLzUtQ29tcG9uZW50cy9fY29tcG9uZW50cy52aWRlby5zY3NzIiwid2VicGFjazovLy8uL3Jlc291cmNlcy9zYXNzLzUtQ29tcG9uZW50cy9fY29tcG9uZW50cy5oZXJvQ2FyZC5zY3NzIiwid2VicGFjazovLy8uL3Jlc291cmNlcy9zYXNzLzUtQ29tcG9uZW50cy9fY29tcG9uZW50cy5mYXEuc2NzcyIsIndlYnBhY2s6Ly8vLi9yZXNvdXJjZXMvc2Fzcy81LUNvbXBvbmVudHMvX2NvbXBvbmVudHMuaW5zdXJlckdyaWQuc2NzcyIsIndlYnBhY2s6Ly8vLi9yZXNvdXJjZXMvc2Fzcy81LUNvbXBvbmVudHMvX2NvbXBvbmVudHMudXNwcy5zY3NzIiwid2VicGFjazovLy8uL3Jlc291cmNlcy9zYXNzLzUtQ29tcG9uZW50cy9fY29tcG9uZW50cy5yZXBhaXJMaXN0LnNjc3MiLCJ3ZWJwYWNrOi8vLy4vcmVzb3VyY2VzL3Nhc3MvNS1Db21wb25lbnRzL19jb21wb25lbnRzLmJlZm9yZUFmdGVyU2xpZGVyLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vcmVzb3VyY2VzL3Nhc3MvNS1Db21wb25lbnRzL19jb21wb25lbnRzLnJldmlld3Muc2NzcyIsIndlYnBhY2s6Ly8vLi9yZXNvdXJjZXMvc2Fzcy81LUNvbXBvbmVudHMvX2NvbXBvbmVudHMucmV2aWV3U2xpZGVyLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vcmVzb3VyY2VzL3Nhc3MvNS1Db21wb25lbnRzL19jb21wb25lbnRzLmhlYWRlclRvcC5zY3NzIiwid2VicGFjazovLy8uL3Jlc291cmNlcy9zYXNzLzUtQ29tcG9uZW50cy9fY29tcG9uZW50cy5zdGFycy5zY3NzIiwid2VicGFjazovLy8uL3Jlc291cmNlcy9zYXNzLzUtQ29tcG9uZW50cy9fY29tcG9uZW50cy5mb290ZXJDYXJkLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vcmVzb3VyY2VzL3Nhc3MvNS1Db21wb25lbnRzL19jb21wb25lbnRzLnRleHRJbWFnZUZhcS5zY3NzIiwid2VicGFjazovLy8uL3Jlc291cmNlcy9zYXNzLzUtQ29tcG9uZW50cy9fY29tcG9uZW50cy50ZXh0SW1hZ2VIb3Vycy5zY3NzIiwid2VicGFjazovLy8uL3Jlc291cmNlcy9zYXNzLzUtQ29tcG9uZW50cy9fY29tcG9uZW50cy50ZWFtQ2FyZC5zY3NzIiwid2VicGFjazovLy8uL3Jlc291cmNlcy9zYXNzLzUtQ29tcG9uZW50cy9fY29tcG9uZW50cy5kYW1hZ2VGb3JtLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vcmVzb3VyY2VzL3Nhc3MvNS1Db21wb25lbnRzL19jb21wb25lbnRzLmZhcU1lbnUuc2NzcyIsIndlYnBhY2s6Ly8vLi9yZXNvdXJjZXMvc2Fzcy81LUNvbXBvbmVudHMvX2NvbXBvbmVudHMuY3RhLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vcmVzb3VyY2VzL3Nhc3MvNS1Db21wb25lbnRzL19jb21wb25lbnRzLmZpcmUtYWxlcnQuc2NzcyIsIndlYnBhY2s6Ly8vLi9yZXNvdXJjZXMvc2Fzcy81LUNvbXBvbmVudHMvX2NvbXBvbmVudHMuc3RhdGlzdGljcy5zY3NzIiwid2VicGFjazovLy8uL3Jlc291cmNlcy9zYXNzLzUtQ29tcG9uZW50cy9fY29tcG9uZW50cy5kYW1hZ2VGbG93LnNjc3MiLCJ3ZWJwYWNrOi8vLy4vcmVzb3VyY2VzL3Nhc3MvNS1Db21wb25lbnRzL19jb21wb25lbnRzLmRhbWFnZVN0ZXBzLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vcmVzb3VyY2VzL3Nhc3MvNS1Db21wb25lbnRzL19jb21wb25lbnRzLmRhbWFnZVN0ZXBzU21hbGwuc2NzcyIsIndlYnBhY2s6Ly8vLi9yZXNvdXJjZXMvc2Fzcy81LUNvbXBvbmVudHMvX2NvbXBvbmVudHMubW9iaWxlSW5zdXJlclJvdy5zY3NzIiwid2VicGFjazovLy8uL3Jlc291cmNlcy9zYXNzLzYtT3JnYW5pc21zL19vcmdhbmlzbXMuc2NzcyIsIndlYnBhY2s6Ly8vLi9yZXNvdXJjZXMvc2Fzcy82LU9yZ2FuaXNtcy9fb3JnYW5pc21zLmFwcGx5LnNjc3MiLCJ3ZWJwYWNrOi8vLy4vcmVzb3VyY2VzL3Nhc3MvNi1PcmdhbmlzbXMvX29yZ2FuaXNtcy5ibG9jay5zY3NzIiwid2VicGFjazovLy8uL3Jlc291cmNlcy9zYXNzLzYtT3JnYW5pc21zL19vcmdhbmlzbXMuYm9keS5zY3NzIiwid2VicGFjazovLy8uL3Jlc291cmNlcy9zYXNzLzYtT3JnYW5pc21zL19vcmdhbmlzbXMuY2FsbG91dEJhci5zY3NzIiwid2VicGFjazovLy8uL3Jlc291cmNlcy9zYXNzLzYtT3JnYW5pc21zL19vcmdhbmlzbXMuY2FyZC1ncmlkLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vcmVzb3VyY2VzL3Nhc3MvNi1PcmdhbmlzbXMvX29yZ2FuaXNtcy5jb250YWN0LnNjc3MiLCJ3ZWJwYWNrOi8vLy4vcmVzb3VyY2VzL3Nhc3MvNi1PcmdhbmlzbXMvX29yZ2FuaXNtcy5kb3VibGVJbWFnZS5zY3NzIiwid2VicGFjazovLy8uL3Jlc291cmNlcy9zYXNzLzYtT3JnYW5pc21zL19vcmdhbmlzbXMuZG91YmxlVGV4dC5zY3NzIiwid2VicGFjazovLy8uL3Jlc291cmNlcy9zYXNzLzYtT3JnYW5pc21zL19vcmdhbmlzbXMuZG91YmxlVXNwLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vcmVzb3VyY2VzL3Nhc3MvNi1PcmdhbmlzbXMvX29yZ2FuaXNtcy5mb290ZXIuc2NzcyIsIndlYnBhY2s6Ly8vLi9yZXNvdXJjZXMvc2Fzcy82LU9yZ2FuaXNtcy9fb3JnYW5pc21zLmZvcm0uc2NzcyIsIndlYnBhY2s6Ly8vLi9yZXNvdXJjZXMvc2Fzcy82LU9yZ2FuaXNtcy9fb3JnYW5pc21zLmhlYWRlci5zY3NzIiwid2VicGFjazovLy8uL3Jlc291cmNlcy9zYXNzLzYtT3JnYW5pc21zL19vcmdhbmlzbXMuaW50cm8uc2NzcyIsIndlYnBhY2s6Ly8vLi9yZXNvdXJjZXMvc2Fzcy82LU9yZ2FuaXNtcy9fb3JnYW5pc21zLm1hcC5zY3NzIiwid2VicGFjazovLy8uL3Jlc291cmNlcy9zYXNzLzYtT3JnYW5pc21zL19vcmdhbmlzbXMub3ZlcmxheU1lbnUuc2NzcyIsIndlYnBhY2s6Ly8vLi9yZXNvdXJjZXMvc2Fzcy82LU9yZ2FuaXNtcy9fb3JnYW5pc21zLnF1b3RlLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vcmVzb3VyY2VzL3Nhc3MvNi1PcmdhbmlzbXMvX29yZ2FuaXNtcy5zdWJmb290ZXIuc2NzcyIsIndlYnBhY2s6Ly8vLi9yZXNvdXJjZXMvc2Fzcy82LU9yZ2FuaXNtcy9fb3JnYW5pc21zLnRlYW0uc2NzcyIsIndlYnBhY2s6Ly8vLi9yZXNvdXJjZXMvc2Fzcy82LU9yZ2FuaXNtcy9fb3JnYW5pc21zLnRoYW5rcy5zY3NzIiwid2VicGFjazovLy8uL3Jlc291cmNlcy9zYXNzLzYtT3JnYW5pc21zL19vcmdhbmlzbXMudXNwLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vcmVzb3VyY2VzL3Nhc3MvNi1PcmdhbmlzbXMvX29yZ2FuaXNtcy52aWRlb0hlcm8uc2NzcyIsIndlYnBhY2s6Ly8vLi9yZXNvdXJjZXMvc2Fzcy82LU9yZ2FuaXNtcy9fb3JnYW5pc21zLnJldmlld3Muc2NzcyIsIndlYnBhY2s6Ly8vLi9yZXNvdXJjZXMvc2Fzcy82LU9yZ2FuaXNtcy9fb3JnYW5pc21zLnJlcGFpclR5cGVzLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vcmVzb3VyY2VzL3Nhc3MvNi1PcmdhbmlzbXMvX29yZ2FuaXNtcy50ZXh0SW1hZ2Uuc2NzcyIsIndlYnBhY2s6Ly8vLi9yZXNvdXJjZXMvc2Fzcy82LU9yZ2FuaXNtcy9fb3JnYW5pc21zLnVzcHMuc2NzcyIsIndlYnBhY2s6Ly8vLi9yZXNvdXJjZXMvc2Fzcy82LU9yZ2FuaXNtcy9fb3JnYW5pc21zLmFsZXJ0LnNjc3MiLCJ3ZWJwYWNrOi8vLy4vcmVzb3VyY2VzL3Nhc3MvNi1PcmdhbmlzbXMvX29yZ2FuaXNtcy5jdGFGb3JtLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vcmVzb3VyY2VzL3Nhc3MvNy1UZW1wbGF0ZXMvX3RlbXBsYXRlcy5zY3NzIiwid2VicGFjazovLy8uL3Jlc291cmNlcy9zYXNzLzctVGVtcGxhdGVzL190ZW1wbGF0ZXMuZmFxLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vcmVzb3VyY2VzL3Nhc3MvNy1UZW1wbGF0ZXMvX3RlbXBsYXRlcy5pbnN1cmVycy5zY3NzIiwid2VicGFjazovLy8uL3Jlc291cmNlcy9zYXNzLzctVGVtcGxhdGVzL190ZW1wbGF0ZXMuZGFtYWdlRmxvdy5zY3NzIiwid2VicGFjazovLy8uL3Jlc291cmNlcy9zYXNzLzgtU2NvcGVzL19zY29wZXMuY2hlY2tsaXN0LnNjc3MiLCJ3ZWJwYWNrOi8vLy4vcmVzb3VyY2VzL3Nhc3MvOC1TY29wZXMvX3Njb3Blcy50ZXh0LnNjc3MiLCJ3ZWJwYWNrOi8vLy4vcmVzb3VyY2VzL3Nhc3MvOS1VdGlsaXRpZXMvX3V0aWxpdGllcy5jb2xvcnMuc2NzcyIsIndlYnBhY2s6Ly8vLi9yZXNvdXJjZXMvc2Fzcy85LVV0aWxpdGllcy9fdXRpbGl0aWVzLmZvbnRzLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vcmVzb3VyY2VzL3Nhc3MvOS1VdGlsaXRpZXMvX3V0aWxpdGllcy5oZWxwZXJzLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vcmVzb3VyY2VzL3Nhc3MvOS1VdGlsaXRpZXMvX3V0aWxpdGllcy5zaGFtZS5zY3NzIiwid2VicGFjazovLy8uL3Jlc291cmNlcy9zYXNzLzktVXRpbGl0aWVzL191dGlsaXRpZXMuc3BhY2luZy5zY3NzIl0sInNvdXJjZXNDb250ZW50IjpbIlxuLyogIDEgLSBTRVRUSU5HU1xuICogIEdsb2JhbCB2YXJpYWJsZXMsIHNpdGUtd2lkZSBzZXR0aW5ncyxcbiAqICBjb25maWcgc3dpdGNoZXMgZXRjLlxuICpcbiAqICBUaGUgb3JkZXIgaW4gd2hpY2ggdGhlc2UgU2FzcyBmaWxlc1xuICogIGFyZSBsb2FkZWQgaXMgY3JpdGljYWwhXG4gKiAgU28gcGxlYXNlIGJlIGNhcmVmdWwgd2hlbiBlZGl0aW5nXG4gID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbkBpbXBvcnQgJ3Jlc291cmNlcy9zYXNzLzEtU2V0dGluZ3Mvc2V0dGluZ3MnO1xuXG5cblxuLyogIDIgLSBUT09MU1xuICogIFNpdGUgd2lkZSBtaXhpbnMgYW5kIGZ1bmN0aW9uc1xuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbkBpbXBvcnQgJ3Jlc291cmNlcy9zYXNzLzItVG9vbHMvdG9vbHMnO1xuXG5cblxuLyogIDMgLSBFTEVNRU5UU1xuICogIFBsYWluIG9sZCBzaW1wbGUgSFRNTCBlbGVtZW50cyB3aXRob3V0IGEgY2xhc3MgKHR5cGUgc2VsZWN0b3JzKVxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbkBpbXBvcnQgJ3Jlc291cmNlcy9zYXNzLzMtRWxlbWVudHMvZWxlbWVudHMnO1xuXG5cblxuLyogIDQgLSBMYXlvdXQgZWxlbWVudHNcbiAqICBEZXNpZ24gcGF0dGVybnMgKGUuZy4gZ3JpZHMgb3IgbWVkaWEgb2JqZWN0KVxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbkBpbXBvcnQgJ3Jlc291cmNlcy9zYXNzLzQtTGF5b3V0cy9sYXlvdXRzJztcblxuXG5cbi8qICA1IC0gQ09NUE9ORU5UU1xuICogIERpc2NyZXRlIGNvbXBsZXRlIGNodW5rcyBvZiBVSS5cbiAqICBEZXNpZ25lZCBjb21wb25lbnRzXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuQGltcG9ydCAncmVzb3VyY2VzL3Nhc3MvNS1Db21wb25lbnRzL2NvbXBvbmVudHMnO1xuXG5cblxuLyogIDYgLSBPUkdBTklTTVNcbiAqICBMYXJnZSBibG9ja3MgY29tcG9zZWQgb2YgbXVsdGlwbGUgY29tcG9uZW50cy5cbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG5AaW1wb3J0IFwicmVzb3VyY2VzL3Nhc3MvNi1PcmdhbmlzbXMvb3JnYW5pc21zXCI7XG5cblxuXG4vKiAgNyAtIFRlbXBsYXRlc1xuICogIE92ZXJyaWRlIHN0eWxpbmcgZm9yIGEgc3BlY2lmaWMgdGVtcGxhdGVcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG5AaW1wb3J0ICdyZXNvdXJjZXMvc2Fzcy83LVRlbXBsYXRlcy90ZW1wbGF0ZXMnO1xuXG5cblxuLyogIDggLSBTQ09QRVNcbiAqICBFbGVtZW50cyBhbmQgY2xhc3NlcyB0aGF0IGFyZSBzY29wZWQgYnkgYSBwYXJlbnQgY2xhc3NcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG5AaW1wb3J0ICdyZXNvdXJjZXMvc2Fzcy84LVNjb3Blcy9zY29wZXMnO1xuXG5cblxuLyogIDkgLSBVVElMSVRJRVNcbiAqICBIaWdoLXNwZWNpZmljaXR5LCB2ZXJ5IGV4cGxpY2l0IHNlbGVjdG9ycy5cbiAqICBPdmVycmlkZXMgYW5kIGhlbHBlciBjbGFzc2VzLlxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbkBpbXBvcnQgJ3Jlc291cmNlcy9zYXNzLzktVXRpbGl0aWVzL3V0aWxpdGllcyc7IiwiLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICBPcmdhbml6ZSBjb2xvciB2YXJpYWJsZXMgaW4gYSBTYXNzIE1hcC5cbiAgIFRoaXMgd2F5LCB0aGUgY29sb3JzIGNhbiBiZSBpdGVyYXRlZCwgYXJlIG1vcmUgb3JnYW5pemVkLFxuICAgYW5kIGFyZSBtb3JlIGludHVpdGl2ZSB0byByZWZlcmVuY2UuXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuXG4kcGFsZXR0ZXM6IChcblxuICAncHJpbWFyeSc6IChcbiAgICA1MDA6ICNmZjhhMTUsXG4gICAgNjAwOiAjZmY2YTE0LFxuICApLFxuXG4gICdzZWNvbmRhcnknOiAoXG4gICAgNTA6ICNGMEYyRjUsXG4gICAgMzAwOiAjQjZDRUYwLFxuICAgIDQwMDogIzYzOERFMCxcbiAgICA0NTA6ICM0MjZBQjgsXG4gICAgNTUwOiAjMjc1MUEzLFxuICAgIDYwMDogIzE5M0U4QSxcbiAgICA4MDA6ICMxNjI5M0QsXG4gICksXG5cblxuICAndGVydGlhcnknOiAoXG4gICAgICAgICAgNTAwOiAjMTZDODVFLFxuICApLFxuXG4gICduZXV0cmFsJzogKFxuICAgIDA6ICAgI0ZGRkZGRixcbiAgICA1MDogICNGMkYyRjQsXG4gICAgMTAwOiAjRTZFN0VCLFxuICAgIDMwMDogI0M5Q0FDRCxcbiAgICA2MDA6ICM1QzVFNjYsXG4gICAgODAwOiAjMjUzMTNELFxuICApLFxuXG4gICdmZWVkYmFjayc6IChcbiAgICBhY3Rpb246ICM0MDc5QjgsXG4gICAgd2FybmluZzogI2ZmZDMzYSxcbiAgICBhbGVydDogI2ZmODEwMCxcbiAgICBuZWdhdGl2ZTogI2ZmZTdkOSxcbiAgICBwb3NpdGl2ZTogIzNlY2Y4ZSxcbiAgKSxcblxuICAnYm9yZGVyJzogKFxuICAgIDA6ICAgI2ZmZixcbiAgICAzMDA6ICNDOEM4QzgsXG4gICAgNTAwOiAjNjU2NTY1LFxuICApLFxuKTtcblxuJGJsdWVHcmFkaWVudDogbGluZWFyLWdyYWRpZW50KDE4MGRlZywgIzI3NTFBMyAwJSwgIzE5M0U4QSA3NSUpO1xuXG4vKipcbiAqXHRBIHNpbXBsZSBmdW5jdGlvbiBmb3IgYWNjZXNzaW5nIHRoZSBjb2xvcnMgZnJvbSBvdXIgbWFwcGluZ1xuICpcdFRvIGFjY2VzcyBjb2xvcnMgaW4gb3VyIHBhbGV0dGUsIHdlIHVzZSBhIHZlcnkgc2ltcGxlIGN1c3RvbSBTYXNzIGZ1bmN0aW9uXG4gKiAgVGhpcyBmdW5jdGlvbiBpcyBwbGFjZWQgaGVyZSwgKGFuZCBub3QgaW4gdGhlIHRvb2xib3gpXG4gKiAgYmVjYXVzZSB3ZSB3YW50IHRvIHVzZSBpdCBpbiBvdXIgb3RoZXIgc2V0dGluZyBmaWxlc1xuXG5cdFVTQUdFOlxuXG5cdC5kZW1vIHtcblx0XHRjb2xvcjogcGFsZXR0ZShwcmltYXJ5LCA1MDApO1xuXHR9XG5cbiAqL1xuXG5AZnVuY3Rpb24gcGFsZXR0ZSgkcGFsZXR0ZSwgJGxldmVsOiAxKSB7XG4gIEBpZiBtYXAtaGFzLWtleSgkcGFsZXR0ZXMsICRwYWxldHRlKSB7XG4gICAgQGlmIG1hcC1oYXMta2V5KG1hcC1nZXQoJHBhbGV0dGVzLCAkcGFsZXR0ZSksICRsZXZlbCkge1xuICAgICAgQHJldHVybiBtYXAtZ2V0KG1hcC1nZXQoJHBhbGV0dGVzLCAkcGFsZXR0ZSksICRsZXZlbCk7XG4gICAgfSBAZWxzZSB7XG4gICAgICAvLyBJZiBsZXZlbCBkb2Vzbid0IGV4aXN0IGluIG1hcCwgZ2l2ZSB0aGUgZmlyc3QgdmFsdWUgb2YgdGhlIHBhbGV0dGVcbiAgICAgIEByZXR1cm4gbnRoKG50aChtYXAtZ2V0KCRwYWxldHRlcywgJHBhbGV0dGUpLCAxKSwgMik7XG4gICAgfVxuICB9XG5cbiAgQHdhcm4gXCJVbmtub3duIGNvbG9yOiBgI3skcGFsZXR0ZX1gIGluICRwYWxldHRlLiBcIjtcbiAgQHJldHVybiBob3RwaW5rO1xufSIsIi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgIENvbmZpZyBzZXR0aW5nc1xuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKlxuXHRbMV1cdFx0TG9nbyBkYXJrIG9yIGxpZ2h0IGNhbiBiZSBzZXQgaW4gaGVhZGVyLmJsYWRlLnBocCAvIGZvb3Rlci5ibGFkZS5waHAgJlxuXHRbMl0gXHRTZXQgdGhpcyB0byB0cnVlIHdoZW4gYmdDb2xvciBnZXRzIGEgZGFyayBjb2xvciB0aGF0IGNvbnRyYXN0IHRoZSBib2R5IGJnIGNvbG9yXG4qL1xuXG4kc2l0ZS1oZWFkZXI6IChcblx0J2JnQ29sb3InOlx0XHRcdFx0XHRwYWxldHRlKG5ldXRyYWwsIDApLFxuXHQndGV4dENvbG9yJzpcdFx0XHRcdHBhbGV0dGUobmV1dHJhbCwgODAwKSxcblx0J3RleHRDb2xvckhvdmVyJzpcdFx0XHRwYWxldHRlKG5ldXRyYWwsIDgwMCksXG5cdCd0ZXh0Q29sb3JBY3RpdmUnOlx0XHRcdHBhbGV0dGUobmV1dHJhbCwgODAwKSxcblx0J2RlY29yYXRpb25Db2xvcic6XHRcdFx0cGFsZXR0ZShuZXV0cmFsLCAzMDApLFxuXHQnZGVjb3JhdGlvbkNvbG9yQWN0aXZlJzpcdHBhbGV0dGUocHJpbWFyeSwgNzAwKSxcblx0J2xvZ28taGVpZ2h0JzpcdFx0XHRcdDU0cHgsXG4pO1xuXG5cbiRzaXRlLWludHJvOiAoXG5cdCdpc0RhcmsnOlx0XHRcdFx0XHRmYWxzZSwgLy8gWzJdXG5cdCdiZ0NvbG9yJzpcdFx0XHRcdFx0cGFsZXR0ZShuZXV0cmFsLCAwKSxcblx0J2NvbG9yJzpcdFx0XHRcdFx0cGFsZXR0ZShuZXV0cmFsLCA5MDApLFxuXHQnbGlua0NvbG9yJzpcdFx0XHRcdHBhbGV0dGUoZmVlZGJhY2ssIGFjdGlvbiksXG5cdCdzdWJuYXZCZ0NvbG9yJzpcdFx0XHRwYWxldHRlKG5ldXRyYWwsIDEwMCksXG4pO1xuXG5cbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4vLyBTb21lIGdsb2JhbCBzZXR0aW5ncyB0aGF0IHdlIHByb2JhYmx5IGRvbid0IG5lZWQgdG8gY2hhbmdlXG5cbiRzaXRlLWNvbHVtbnMtczpcdFx0XHQ0O1xuJHNpdGUtY29sdW1ucy1tOlx0XHRcdDg7XG4kc2l0ZS1jb2x1bW5zLWw6XHRcdFx0MTI7XG4kc2l0ZS1jb2x1bW4tc2l6ZTpcdFx0ICAgIDEyMDsgLy8gU2l6ZSBvZiBhIHNpbmdsZSBjb2x1bW4gd2hlbiB2aWV3cG9ydCBpcyBhdCBpdHMgbWF4IHdpZHRoICh1c2VkIGZvciBjYWxjdWxhdGluZyBtYXgtd2lkdGgpLlxuJHNpdGUtZ3V0dGVyLXdpZHRoOiBcdCAgICA2dnc7IC8vIFVzZWQgb25seSBmb3Igc21hbGwgc2NyZWVucy4gTXVzdCBiZSBbdnddIG9yIFtweF0sIE5PVCBbJV0uXG4kc2l0ZS1jb29raWVCYXItaGVpZ2h0OiAgICAgNTRweDsgLy8gRml4ZWQgc2l6ZSBzbyB3ZSBjYW4gb2Zmc2V0IHBhZGRpbmctYm90dG9tIG9uIHRoZSBib2R5XG5cblxuXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi8vIENhbGN1bGF0aW9ucyB0aGF0IGFyZSBkb25lIHdpdGggc29tZSBvZiB0aGUgZ2l2ZW4gdmFsdWVzIGFib3ZlIHRoaXMgbGluZVxuXG4kc2l0ZS1tYXgtd2lkdGg6ICRzaXRlLWNvbHVtbi1zaXplICogJHNpdGUtY29sdW1ucy1sOyAvLyBNYWluIGNvbnRhaW5lciBtYXgtd2lkdGggKHdpdGhvdXQgZ3V0dGVyKVxuXG5cbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLy8gVGhlIGRlZmF1bHQgYm9yZGVyLXJhZGl1cyB2YWx1ZXMgdXNlZCBpbiB0aGUgYm9yZGVyIG1peGluXG5cbiRib3JkZXItcmFkaXVzOiAoXG5cdHM6IDRweCxcblx0bTogOHB4LFxuXHRsOiAxNnB4XG4pOyIsIi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiBcdCBEZWZpbmVzIHRoZSB0eXBvZ3JhcGhpYyBiYXNlbGluZS5cbiAgIFdlIGRlZmluZSBldmVyeSBzaXplIGluIHBpeGVscywgdGhlIHVuZGVybHlpbmcgc3lzdGVtXG4gICBjb252ZXJ0cyB0aGUgcmVzcGVjdGl2ZSB1bml0cyB0byB0aGUgcmVzcG9uc2l2ZSBSRU0gdmFsdWUuXG4gXHQgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4kZm9udC13ZWlnaHRzOiAoXG5cdCdib29rJzogXHRcdDQwMCxcblx0J3JlZ3VsYXInOiBcdFx0NTAwLFxuXHQnbWVkaXVtJzogXHRcdDYwMCxcblx0J3NlbWlCb2xkJzogXHQ2MDAsXG4pO1xuXG4vKipcbiAqXHRIZXJlIHdlIGFzc2lnbiBzaG9ydCBuYW1lcyBmb3IgdGhlIGZvbnQgZmFtaWxpZXNcbiAqL1xuXG4kZm9udC1zeXN0ZW06XHRcdC1hcHBsZS1zeXN0ZW0sIEJsaW5rTWFjU3lzdGVtRm9udCwgXCJTZWdvZSBVSVwiLCBSb2JvdG8sIEhlbHZldGljYSwgQXJpYWwsIHNhbnMtc2VyaWYsIFwiQXBwbGUgQ29sb3IgRW1vamlcIiwgXCJTZWdvZSBVSSBFbW9qaVwiLCBcIlNlZ29lIFVJIFN5bWJvbFwiO1xuXG4vLyBPcmlnaW5hbCBkZXNpZ24gdXNlcyBBdmVybmlyIE5leHQsIHdlIHdpbGwgdXNlIE1vbnRzZXJyYXQgc2luY2UgdGhpcyBpcyB0aGUgbW9zdCBzaW1pbGFyIEdvb2dsZSBGb250XG4kZm9udC1tb250c2VycmF0OiAnTW9udHNlcnJhdCcsIHNhbnMtc2VyaWY7XG4kZm9udC1wb3BwaW5zOiAnUG9wcGlucycsIHNhbnMtc2VyaWY7IiwiLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgIERlZmluZSBicmVha3BvaW50cyBmb3IgZ2l2ZW4gZm9ybWF0c1xuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuQHVzZSBcInNhc3M6bWF0aFwiO1xuXG4vLyBEZWZhdWx0IGJyZWFrcG9pbnRzXG4kYnJlYWtwb2ludHM6IChcblx0czogNjQxLFxuXHRtOiA4NDAsXG5cdGw6IDExNTIsXG4pO1xuXG4vLyBEZXRlcm1pbmUgYXQgd2hpY2ggdmlld3BvcnQgc2l6ZSB3ZSBjYW4gZml0IGluIGEgaG9yaXpvbnRhbCBtZW51IGluc3RlYWQgb2YgdGhlIGhhbWJ1cmdlciBtZW51IHRvZ2dsZVxuJGJwLWhlYWRlci1sYXJnZTogMTEwMDtcbiRicC12aWRlby1oZXJvOiA3OTA7XG5cblxuXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi8vIENhbGN1bGF0ZSB2aWV3cG9ydCBzaXplIHdoZW4gY29udGFpbmVyIGNhbid0IGdyb3cgYW55bW9yZVxuJGJwLW1heDogJHNpdGUtbWF4LXdpZHRoICsgKG1hdGguZGl2KCRzaXRlLW1heC13aWR0aCwgJHNpdGUtY29sdW1ucy1sKSAqIDIpOyIsIi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gIEZ1bmN0aW9ucyB1c2VkIGluIGdyaWQgY2FsY3VsYXRpb25cbiAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuQHVzZSBcInNhc3M6bWF0aFwiO1xuXG4vKipcbiAgKiBSZXR1cm4gcGVyY2VudGFnZSBiYXNlZCBvbiBhbW91bnQgb2YgY29sdW1uc1xuICAqIFVzZSBwYXJlbnQgY29sdW1uIHNpemUgdG8gYWRqdXN0IHRoZSBvcmlnaW5cbiAgKi9cbkBmdW5jdGlvbiBjYWxjdWxhdGVDb2x1bW5TaXplKCRjb2x1bW5Db3VudCA6IDEsICRvcmlnaW4gOiAkc2l0ZS1jb2x1bW5zLWwpIHtcblx0Ly8gQ2FsY3VsYXRlIHRoZSB3aWR0aCBmb3IgYSBzaW5nbGUgY29sdW1uIG9uIGEgZnVsbCBncmlkXG5cdCRzaW5nbGVDb2x1bW5TaXplOiBtYXRoLmRpdigxMDAsICRzaXRlLWNvbHVtbnMtbCk7XG5cblx0Ly8gR2V0IHRoZSBvcmlnaW4gc2l6ZSBpbiBwZXJjZW50YWdlIGZyb20gdGhlIGZ1bGwgZ3JpZFxuXHQkb3JpZ2luUGVyY2VudGFnZTogbWF0aC5kaXYoJG9yaWdpbiwgJHNpdGUtY29sdW1ucy1sKSAqIDEwMDtcblxuXHQvLyBDYWxjdWxhdGUgc2luZ2xlIGNvbHVtbiBmcm9tIG5ldyBvcmlnaW5cblx0JG5ld1NpbmdsZUNvbHVtblNpemU6IG1hdGguZGl2KCRzaW5nbGVDb2x1bW5TaXplLCAkb3JpZ2luUGVyY2VudGFnZSkgKiAxMDA7XG5cblx0Ly8gUmV0dXJuIGFtb3VudCBvZiBjb2x1bW5zIGFzIHBlcmNlbnRhZ2Vcblx0QHJldHVybiAoJG5ld1NpbmdsZUNvbHVtblNpemUgKiAkY29sdW1uQ291bnQpO1xufVxuXG4vKipcbiAgKiBEZWZhdWx0IGZ1bmN0aW9uIGZvciBjb2x1bW5zXG4gICogUmV0dXJuIGFzIHBlcmNlbnRhZ2VcbiAgKi9cbkBmdW5jdGlvbiBjb2x1bW4oJGNvbHVtbkNvdW50IDogMSwgJG9yaWdpbiA6ICgkc2l0ZS1jb2x1bW5zLWwgLSAyKSkge1xuXHRAcmV0dXJuIGNhbGN1bGF0ZUNvbHVtblNpemUoJGNvbHVtbkNvdW50LCAkb3JpZ2luKSAqIDElO1xufVxuXG4vKipcbiAgKiBSZXR1cm4gYXMgdmlld3BvcnQgd2lkdGhcbiAgKi9cbkBmdW5jdGlvbiBjb2x1bW5WdygkY29sdW1uQ291bnQgOiAxLCAkb3JpZ2luIDogKCRzaXRlLWNvbHVtbnMtbCAtIDIpKSB7XG5cdEByZXR1cm4gY2FsY3VsYXRlQ29sdW1uU2l6ZSgkY29sdW1uQ291bnQsICRvcmlnaW4pICogMXZ3O1xufSIsIi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gKiBGb250IHJlbGF0ZWQgZnVuY3Rpb25zXG4gKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG5cbi8qKlxuICogIE1peGluIGZvciBzZXR0aW5nIGZvbnQtc2l6ZSBpbiBSRU0gdGhyb3VnaCBhIFNhc3MgTWFwIHdpdGggYWxsIGF2YWlsYWJsZSBzaXplc1xuXG4gICAgVVNBR0U6XG5cbiAgICAubXlDbGFzcyB7XG4gICAgICAgIEBpbmNsdWRlIGZzKDI0KTtcbiAgICB9XG5cbiAqL1xuQHVzZSBcInNhc3M6bWF0aFwiO1xuXG5AbWl4aW4gZnMoJGZzLCAkbGg6IG51bGwpIHtcbiAgLy8gQ2FsY3VsYXRlIGlmIG51bWJlci12YWx1ZSB3YXMgZ2l2ZW4gYW5kIHJldHVybiBSRU0gdmFsdWVcbiAgQGlmIGlzLW51bWJlcigkZnMpIHtcbiAgICBmb250LXNpemU6IHZhbHVlVG9SZW0oJGZzKTtcbiAgfVxuICBAZWxzZSB7XG4gICAgQHdhcm4gXCIgYCN7JGZzfWAgbXVzdCBiZSBhIG51bWJlciB2YWx1ZSB0byBiZSB2YWxpZC5cIjtcbiAgfVxuICBAaWYgJGxoICE9IG51bGwgYW5kIGlzLW51bWJlcigkbGgpIGFuZCBpcy1udW1iZXIoJGZzKSB7XG4gICAgbGluZS1oZWlnaHQ6IG1hdGguZGl2KHN0cmlwLXVuaXQoJGxoKSwgc3RyaXAtdW5pdCgkZnMpKTtcbiAgfVxufVxuXG5AbWl4aW4gZncoJHdlaWdodCkge1xuICBAaWYgbWFwLWdldCgkZm9udC13ZWlnaHRzLCAkd2VpZ2h0KSB7XG4gICAgZm9udC13ZWlnaHQ6IG1hcC1nZXQoJGZvbnQtd2VpZ2h0cywgJHdlaWdodCk7XG4gIH1cbiAgQGVsc2Uge1xuICAgIEBpZiBpcy1udW1iZXIoJHdlaWdodCkge1xuICAgICAgQHdhcm4gJ1BsZWFzZSBjaGVjazogR2l2ZW4gdmFsdWU6IGAjeyR3ZWlnaHR9YCBpcyBhIG51bWJlci4gSXQgc2hvdWxkIGJlIGEga2V5IGluIGAkZm9udC13ZWlnaHRzYC1tYXAuJztcbiAgICAgIGZvbnQtd2VpZ2h0OiAkd2VpZ2h0O1xuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICBAd2FybiAnR2l2ZW4gdmFsdWU6IGAjeyR3ZWlnaHR9YCBpcyBub3QgYW4gb3B0aW9uIGFzIGZvbnQtd2VpZ2h0IGluIHRoZSBgJGZvbnQtd2VpZ2h0c2AtbWFwJztcbiAgICB9XG4gIH1cbn0iLCIvKipcbiAqIEZsdWlkIHR5cGUgcGx1Z2luIChodHRwczovL2NvZGVwZW4uaW8vTWFkZUJ5TWlrZS9wZW4vdk5ydmRaKVxuICogUmVxdWlyZXMgdGhlIGNhbGMtaW50ZXJwb2xhdGlvbiBmdW5jdGlvbiB3aGljaCBjYW4gYWxzbyBiZSB1c2VkIGluZGVwZW5kZW50bHlcbiAqXG4gKiBVc2FnZTpcbiAqXG4gKiAuZGVtbyB7XG4gKiAgICAgQGluY2x1ZGUgaW50ZXJwb2xhdGUoZm9udC1zaXplLCAzMjBweCwgMTM2NnB4LCAxNHB4LCAyMHB4KTtcbiAqIH1cbiAqXG4gKiBNdWx0aXBsZSBwcm9wZXJ0aWVzIHdpdGggc2FtZSB2YWx1ZXM6XG4gKlxuICogaDEsaDIsaDMsaDQsaDUge1xuICogICBAaW5jbHVkZSBpbnRlcnBvbGF0ZSgocGFkZGluZy10b3AsIHBhZGRpbmctYm90dG9tKSwgMjByZW0sIDcwcmVtLCAwcmVtLCAuNXJlbSk7XG4gKiB9XG4gKlxuICovXG5cbkB1c2UgXCJzYXNzOm1hdGhcIjtcblxuQG1peGluIGludGVycG9sYXRlKCRwcm9wZXJ0aWVzLCAkbWluLXNjcmVlbiwgJG1heC1zY3JlZW4sICRtaW4tdmFsdWUsICRtYXgtdmFsdWUpIHtcbiAgJiB7XG4gICAgQGVhY2ggJHByb3BlcnR5IGluICRwcm9wZXJ0aWVzIHtcbiAgICAgICN7JHByb3BlcnR5fTogJG1pbi12YWx1ZTtcbiAgICB9XG5cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAkbWluLXNjcmVlbikge1xuICAgICAgQGVhY2ggJHByb3BlcnR5IGluICRwcm9wZXJ0aWVzIHtcbiAgICAgICAgI3skcHJvcGVydHl9OiBjYWxjLWludGVycG9sYXRpb24oJG1pbi1zY3JlZW4sICRtaW4tdmFsdWUsICRtYXgtc2NyZWVuLCAkbWF4LXZhbHVlKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAkbWF4LXNjcmVlbikge1xuICAgICAgQGVhY2ggJHByb3BlcnR5IGluICRwcm9wZXJ0aWVzIHtcbiAgICAgICAgI3skcHJvcGVydHl9OiAkbWF4LXZhbHVlO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vLyBIZWxwZXIgZnVuY3Rpb24gZm9yIHRoZSBpbnRlcnBvbGF0ZSBtaXhpbiwgY2FuIGFsc28gYmUgdXNlZCBpbmRlcGVuZGVudGx5XG5AZnVuY3Rpb24gY2FsYy1pbnRlcnBvbGF0aW9uKCRtaW4tc2NyZWVuLCAkbWluLXZhbHVlLCAkbWF4LXNjcmVlbiwgJG1heC12YWx1ZSkge1xuICAkYTogbWF0aC5kaXYoKCRtYXgtdmFsdWUgIC0gICRtaW4tdmFsdWUpLCAoJG1heC1zY3JlZW4gIC0gICRtaW4tc2NyZWVuKSk7XG4gICRiOiAkbWluLXZhbHVlIC0gJGEgKiAkbWluLXNjcmVlbjtcblxuICAkc2lnbjogXCIrXCI7XG4gIEBpZiAoJGIgPCAwKSB7XG4gICAgJHNpZ246IFwiLVwiO1xuICAgICRiOiBhYnMoJGIpO1xuICB9XG5cbiAgQHJldHVybiBjYWxjKCN7JGEqMTAwfXZ3ICN7JHNpZ259ICN7JGJ9KTtcbn0iLCIvKiBNZWRpYSBxdWVyeSBtaXhpbiBmb3Igd3JpdGluZyBNb2JpbGUgRmlyc3RcbiAqID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG5AZnVuY3Rpb24gY29udmVydEJyZWFrcG9pbnRLZXlUb1ZhbHVlKCRicmVha3BvaW50KSB7XG5cblx0QGlmIG1hcC1oYXMta2V5KCRicmVha3BvaW50cywgJGJyZWFrcG9pbnQpIHtcblx0XHRAcmV0dXJuIG1hcC1nZXQoJGJyZWFrcG9pbnRzLCAkYnJlYWtwb2ludCk7XG5cdH1cblxuXHRAd2FybiBcIlVua25vd24gYnJlYWtwb2ludDogYCN7JGJyZWFrcG9pbnR9YCBpbiAkYnJlYWtwb2ludHMuXCI7XG5cdEByZXR1cm4gbnVsbDtcbn1cblxuQG1peGluIG1xKCRtaW46IG51bGwsICRtYXg6IG51bGwpIHtcblx0JHF1ZXJ5OiBcImFsbFwiICFkZWZhdWx0O1xuXG5cdC8vIFRyeSB0byBjb252ZXJ0ICRtaW4gdmFsdWUgaWYgbm90IG51bWJlciBvciBudWxsXG5cdEBpZih0eXBlLW9mKCRtaW4pICE9IG51bWJlciBhbmQgJG1pbiAhPSBudWxsKXtcblx0XHQkbWluOiBjb252ZXJ0QnJlYWtwb2ludEtleVRvVmFsdWUoJG1pbik7XG5cdH1cblxuXHQvLyBUcnkgdG8gY29udmVydCAkbWF4IHZhbHVlIGlmIG5vdCBudW1iZXIgb3IgbnVsbFxuXHRAaWYodHlwZS1vZigkbWF4KSAhPSBudW1iZXIgYW5kICRtYXggIT0gbnVsbCl7XG5cdFx0JG1heDogY29udmVydEJyZWFrcG9pbnRLZXlUb1ZhbHVlKCRtYXgpO1xuXHR9XG5cblx0Ly8gc2V0IGJvdGggbWluIGFuZCBtYXhcblx0QGlmICgkbWluICE9IG51bGwgYW5kICRtYXggIT0gbnVsbCkge1xuXHRcdCRxdWVyeTogXCIobWluLXdpZHRoOiAjeyRtaW59cHgpIGFuZCAobWF4LXdpZHRoOiAjeyRtYXggLSAxfXB4KVwiO1xuXHR9XG5cdC8vIHNldCBqdXN0IG1pblxuXHRAZWxzZSBpZiAoJG1pbiAhPSBudWxsIGFuZCAkbWF4ID09IG51bGwpIHtcblx0XHQkcXVlcnk6IFwiKG1pbi13aWR0aDogI3skbWlufXB4KVwiO1xuXHR9XG5cdC8vIHNldCBqdXN0IG1heFxuXHRAZWxzZSBpZiAoJG1pbiA9PSBudWxsIGFuZCAkbWF4ICE9IG51bGwpIHtcblx0XHQkcXVlcnk6IFwiKG1heC13aWR0aDogI3skbWF4IC0gMX1weClcIjtcblx0fVxuXG5cdEBtZWRpYSBzY3JlZW4gYW5kICN7JHF1ZXJ5fSB7XG5cdFx0QGNvbnRlbnQ7XG5cdH1cbn0iLCIvKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgIFRvb2xib3ggZnVuY3Rpb25zXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuQHVzZSBcInNhc3M6bWF0aFwiO1xuXG4vKipcbiAqICBSZW1vdmUgdGhlIHVuaXQgb2YgYSBsZW5ndGhcbiAqICBAcGFyYW0ge051bWJlcn0gJG51bWJlciAtIE51bWJlciB0byByZW1vdmUgdW5pdCBmcm9tXG4gKiAgQHJldHVybiB7TnVtYmVyfSAtIFVuaXRsZXNzIG51bWJlclxuICovXG5cbkBmdW5jdGlvbiBzdHJpcC11bml0KCRudW1iZXIpIHtcblx0QGlmIHR5cGUtb2YoJG51bWJlcikgPT0gJ251bWJlcicgYW5kIG5vdCB1bml0bGVzcygkbnVtYmVyKSB7XG5cdFx0QHJldHVybiBtYXRoLmRpdigkbnVtYmVyLCAoJG51bWJlciAqIDAgKyAxKSk7XG5cdH1cblxuXHRAcmV0dXJuICRudW1iZXI7XG59XG5cblxuLyogQ2hlY2sgaWYgdmFsdWUgaXMgbnVtYmVyICovXG5cbkBmdW5jdGlvbiBpcy1udW1iZXIoJHZhbHVlKSB7XG5cdEByZXR1cm4gdHlwZS1vZigkdmFsdWUpID09ICdudW1iZXInO1xufVxuXG5cbi8qIFZhbHVlIHRvIEVtICovXG5cbkBmdW5jdGlvbiB2YWx1ZVRvUmVtKCR2YWx1ZSkge1xuXHQkbm9Vbml0czogc3RyaXAtdW5pdCgkdmFsdWUpO1xuXHRAcmV0dXJuICN7bWF0aC5kaXYoJG5vVW5pdHMsIDE2KSAqIDFyZW19O1xufVxuXG4vKiBWYWx1ZSB0byBSZW0gKi9cblxuQGZ1bmN0aW9uIHZhbHVlVG9FbSgkdmFsdWUpIHtcblx0JG5vVW5pdHM6IHN0cmlwLXVuaXQoJHZhbHVlKTtcblx0QHJldHVybiAje21hdGguZGl2KCRub1VuaXRzLCAxNikgKiAxZW19O1xufVxuXG5cblxuXG4vLyBTZXQgYSBmaXhlZCBzcGFjZSBiYXNlZCBvbiB0aGUgOHB0IGdyaWRcbi8vIEp1c3QgcGFzcyB0aGUgZnVuY3Rpb24gYSBudW1iZXIgZXF1YWwgdG8gdGhlIG51bWJlciBvZiAoOClwb2ludHMgeW91IG5lZWRcbkBmdW5jdGlvbiBzcGFjZSgkc2l6ZTogJzEnKSB7XG4gIEByZXR1cm4gOHB4ICogJHNpemU7XG59XG5cblxuXG4vKlxuICogU2V0IHZlcnRpY2FsIHNwYWNpbmcgb25seSBmb3IgbW9iaWxlIHZpZXdwb3J0XG5cbiBVU0FHRTpcblxuIC5leGFtcGxlIHtcblx0IEBpbmNsdWRlIHZzcGFjaW5nLXMoXG5cdFx0XHRcdCdtYXJnaW4tdG9wJyAxXG5cdFx0KTtcbiAgfVxuXG4gKi9cblxuXG5cbkBtaXhpbiB2c3BhY2luZy1zKCR2YWx1ZXMuLi4pIHtcbiAgQGluY2x1ZGUgbXEoJG1heDogbSkge1xuICAgIEBlYWNoICRpIGluICR2YWx1ZXMge1xuICAgICAgLy8gQnkgc2V0dGluZyBndXR0ZXIgc2l6ZSBhcyBhIGhhbHZlIGNvbHVtbiB3aWR0aCB3ZSBjYW4gbWFrZSAnc3F1YXJlcycgb24gbW9iaWxlXG4gICAgICAje250aCgkaSwgMSl9OiAjeygkc2l0ZS1ndXR0ZXItd2lkdGggKiAyKSAqIG50aCgkaSwgMil9O1xuICAgIH1cbiAgfVxufVxuXG4vKlxuICogU2V0IHZlcnRpY2FsIHNwYWNpbmcgZm9yIHZpZXdwb3J0IGxhcmdlciB0aGFuIG1vYmlsZVxuICogSW4gZmxleGlibGUgdW5pdHMgKHZ3KSBhbmQgb24gbWF4IHZpZXdwb3J0IGluIGEgZml4ZWQgYW1vdW50IChweClcblxuIFVTQUdFOlxuXG4gLmV4YW1wbGUge1xuXHQgQGluY2x1ZGUgdnNwYWNpbmctbS11cChcblx0XHRcdFx0J3BhZGRpbmctdG9wJyAwLjMzLFxuXHRcdFx0XHQnbWFyZ2luLWJvdHRvbScgMC41XG5cdFx0KTtcbiAgfVxuXG4gKi9cblxuQG1peGluIHZzcGFjaW5nLW0tdXAoJHZhbHVlcy4uLikge1xuICBAaW5jbHVkZSBtcShtLCBsKSB7XG4gICAgQGVhY2ggJGkgaW4gJHZhbHVlcyB7XG4gICAgICAje250aCgkaSwgMSl9OiAje21hdGguZGl2KDEsICgkc2l0ZS1jb2x1bW5zLW0gKyAyKSAqIDEwMCkgKiBudGgoJGksIDIpfXZ3O1xuICAgIH1cbiAgfVxuICBAaW5jbHVkZSBtcShsLCAkYnAtbWF4KSB7XG4gICAgQGVhY2ggJGkgaW4gJHZhbHVlcyB7XG4gICAgICAje250aCgkaSwgMSl9OiAje21hdGguZGl2KDEsICgkc2l0ZS1jb2x1bW5zLWwgKyAyKSAqIDEwMCkgKiBudGgoJGksIDIpfXZ3O1xuICAgIH1cbiAgfVxuICBAaW5jbHVkZSBtcSgkYnAtbWF4KSB7XG4gICAgQGVhY2ggJGkgaW4gJHZhbHVlcyB7XG4gICAgICAje250aCgkaSwgMSl9OiAje21hdGguZGl2KCRzaXRlLW1heC13aWR0aCwgJHNpdGUtY29sdW1ucy1sKSAqIG50aCgkaSwgMil9cHg7XG4gICAgfVxuICB9XG59XG5cbi8qXG4gKiBGcm9tIHZhbHVlcyBnaXZlbiByZXR1cm4gdGhlIGNvcnJlY3Qgdi1zcGFjaW5nIGZvciBlYWNoIGJyZWFrcG9pbnRcbiAqL1xuQG1peGluIHZzcGFjaW5nKCR2YWx1ZXMuLi4pIHtcblx0QGluY2x1ZGUgdnNwYWNpbmctcygkdmFsdWVzLi4uKTtcblx0QGluY2x1ZGUgdnNwYWNpbmctbS11cCgkdmFsdWVzLi4uKTtcbn1cblxuXG4vKipcbiAqXHRBIHNpbXBsZSBmdW5jdGlvbiBmb3Igc2V0dGluZyBhIGNvbnNpc3RlbnQgYm9yZGVyLXJhZGl1c1xuXG5cdFVTQUdFOlxuXG5cdC5jYXJkIHtcblx0XHRAaW5jbHVkZSBib3JkZXItcmFkaXVzO1xuXHR9XG5cblx0LmNhcmQtLWFsdCB7XG5cdFx0QGluY2x1ZGUgYm9yZGVyLXJhZGl1cyhsKTtcblx0fVxuXG4gKi9cbkBtaXhpbiBib3JkZXItcmFkaXVzKCR0eXBlOiBzKSB7XG5cdEBpZiAoJHR5cGUgPT0gJ3MnKSB7XG5cdFx0Ym9yZGVyLXJhZGl1czogbWFwLWdldCgkYm9yZGVyLXJhZGl1cywgcyk7XG5cdH1cblx0QGlmICgkdHlwZSA9PSAnbScpIHtcblx0XHRib3JkZXItcmFkaXVzOiBtYXAtZ2V0KCRib3JkZXItcmFkaXVzLCBtKTtcblx0fVxuXHRAaWYgKCR0eXBlID09ICdsJykge1xuXHRcdGJvcmRlci1yYWRpdXM6IG1hcC1nZXQoJGJvcmRlci1yYWRpdXMsIGwpO1xuXHR9XG59XG5cbi8qKlxuICogTG9ib3RvbWl6ZWQgT3dsIFNlbGVjdG9yIG1peGluOlxuICogLSBTZXQgc3BhY2luZyBmb3IgY29uc2VjdXRpdmUgaXRlbXMgd2l0aCBtYXJnaW4tdG9wIG9uIGFsbCBidXQgdGhlIGZpcnN0IGl0ZW1cblxuXHRVU0FHRTpcblxuXG5cblx0LmNhcmRfX2l0ZW0ge1xuXHRcdEBpbmNsdWRlIG93bDtcblx0fVxuXG4gKi9cblxuXG4vLyBHaXZlcyB0aGUgZWxlbWVudCBpdHNlbGYgc3BhY2luZ1xuQG1peGluIG93bCgkbWFyZ2luOiAycmVtKSB7XG5cdCYgKyAmIHtcblx0XHRtYXJnaW4tdG9wOiAkbWFyZ2luO1xuXHR9XG59XG5cbi8qKlxuICogIFNob3cgaHlwaGVucyBmb3IgZXZlcnkgYnJvd3NlciBzdXBwb3J0aW5nIGl0XG4gKiAgYW5kIHdpbGwgYnJlYWsgbGluZXMgaW4gZXZlcnkgb3RoZXIgYnJvd3NlclxuICovXG5cbkBtaXhpbiBoeXBoZW5hdGUge1xuXHRvdmVyZmxvdy13cmFwOiBicmVhay13b3JkO1xuXHR3b3JkLXdyYXA6IGJyZWFrLXdvcmQ7XG5cdC13ZWJraXQtaHlwaGVuczogYXV0bztcblx0LW1zLWh5cGhlbnM6IGF1dG87XG5cdGh5cGhlbnM6IGF1dG87XG59XG5cblxuLy8gd2hlbiBob3ZlciBvciBhY3RpdmUgZGlzYWJsZSBvdXRsaW5lIHN0eWxpbmdcbkBtaXhpbiBkaXNhYmxlT3V0bGluZUZvck1vdXNlIHtcblx0Jjpob3Zlcixcblx0JjphY3RpdmUge1xuXHRcdG91dGxpbmU6IG5vbmUgIWltcG9ydGFudDtcblx0fVxufVxuXG5cblxuLypcbiAqICBSZXN0cmljdCBhbiBlbGVtZW50IHRvIGEgbWF4LXdpZHRoIGZvciBjcmVhdGluZyBndXR0ZXJzIG9uIHRoZSBzaWRlXG4gKi9cblxuQG1peGluIGNvbnRhaW4oJG9uTWVkaXVtOiB0cnVlKSB7XG5cdHdpZHRoOiBjYWxjKDEwMCUgLSAjeyRzaXRlLWd1dHRlci13aWR0aCAqIDJ9KTsgLy8gTWFraW5nIHN1cmUgaXQgZG9lc27igJl0IGdldCB0byBzbWFsbCB3aXRoIGxpdHRsZSBjb250ZW50XG5cdG1hcmdpbi1sZWZ0OiBhdXRvO1xuXHRtYXJnaW4tcmlnaHQ6IGF1dG87XG5cblx0QGluY2x1ZGUgbXEobSkge1xuXHRcdEBpZigkb25NZWRpdW0gPT0gdHJ1ZSkge1xuXHRcdFx0XHR3aWR0aDogY2FsYygoMTAwJSAvICN7JHNpdGUtY29sdW1ucy1tICsgMn0pICogI3skc2l0ZS1jb2x1bW5zLW19KTtcbiAgICB9IEBlbHNlIHtcblx0XHRcdHdpZHRoOiAxMDAlO1xuXHRcdH1cbiAgfVxuXG5cdEBpbmNsdWRlIG1xKGwpIHtcblx0XHR3aWR0aDogY2FsYygoMTAwJSAvICN7JHNpdGUtY29sdW1ucy1sICsgMn0pICogI3skc2l0ZS1jb2x1bW5zLWx9KTtcblx0XHRtYXgtd2lkdGg6ICN7JHNpdGUtbWF4LXdpZHRofXB4O1xuXHR9XG59XG5cblxuQG1peGluIGd1dHRlclBhZGRpbmcoJG1xKXtcblx0JGNvbHVtbkNvdW50OiAkc2l0ZS1jb2x1bW5zLXM7XG5cblx0QGlmKCRtcSA9PSBtKSB7ICRjb2x1bW5Db3VudDogJHNpdGUtY29sdW1ucy1tOyB9XG5cdEBpZigkbXEgPT0gbCkgeyAkY29sdW1uQ291bnQ6ICRzaXRlLWNvbHVtbnMtbDsgfVxuXG5cdEBpbmNsdWRlIG1xKCRtcSkge1xuXHRcdHBhZGRpbmctbGVmdDogcGVyY2VudGFnZSgxIC8gKCRjb2x1bW5Db3VudCArIDIpKTtcblx0XHRwYWRkaW5nLXJpZ2h0OiBwZXJjZW50YWdlKDEgLyAoJGNvbHVtbkNvdW50ICsgMikpO1xuXHR9XG59XG5cblxuLypcbiAqXHRBIG1peGluIHRvIHNldCBlbGVtZW50cyB0byBpdHMgb3duIG5hbWVkIGdyaWQtYXJlYVxuICovXG5cbkBtaXhpbiB0ZW1wbGF0ZSgkZWxlbWVudHMuLi4pIHtcblx0QGVhY2ggJGVsZW1lbnQgaW4gJGVsZW1lbnRzIHtcblx0XHQmX18jeyRlbGVtZW50fSB7XG5cdFx0XHRncmlkLWFyZWE6ICRlbGVtZW50O1xuXHRcdFx0ZGlzcGxheTogYmxvY2s7IC8vIEluIElFIGdyaWQgaXRlbXMgY2FuJ3QgYmUgaW5saW5lXG5cdFx0XHR3aWR0aDogMTAwJTtcblx0XHR9XG5cdH1cbn1cbiIsIi8qKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gKiAgVGhlICd6LWluZGV4LW1hcCcgaXMgdXNlZCBmb3IgbWFuYWdpbmcgdGhlIGVsZW1lbnRzIHN0YWNraW5nIG9yZGVyIGluIHRoZSAncm9vdCcgc3RhY2tpbmcgY29udGV4dFxuICogIFRoaXMgd2F5IHdlIGhhdmUgYSBvdmVydmlldyBvZiBhbGwgdGhlIHotaW5kZXggdmFsdWVzIHRoYXQgYXJlIHVzZWQgYWNyb3NzIHRoZSBwcm9qZWN0LlxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuXG4kei1pbmRleDogKFxuICB6LXZpc2libGUtZ3JpZDogMTAwMDAsXG4gIHotY29va2llOiA5OTk5LFxuICB6LW92ZXJsYXktbWVudTogMTAwLFxuICB6LWhlYWRlcjogNTAsXG4gIHotYm9keTogNDAsXG4gIHotc3ViZm9vdGVyOiA0MCxcbik7XG5cblxuLyoqXG4gICAgVVNBR0U6XG5cbiAgICBAaW5jbHVkZSB6KHotbW9kYWwpO1xuXG4gKi9cblxuQG1peGluIHooJGxhYmVsKSB7XG4gIHotaW5kZXg6IG1hcC1nZXQoJHotaW5kZXgsICRsYWJlbCk7XG59IiwiLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgS2V5ZnJhbWUgQW5pbWF0aW9uc1xuICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG5Aa2V5ZnJhbWVzIHBob25lLXJpbmdzIHtcbiAgMCUsIDEwMCUge1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDBkZWcpXG4gIH1cblxuICAxMCUsIDIwJSwgMzAlIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgxMC41ZGVnKVxuICB9XG5cbiAgMTUlLCAyNSUsIDM1JSB7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoLTNkZWcpXG4gIH1cbn1cblxuQGtleWZyYW1lcyBtYWlsaW5nIHtcbiAgMCUsIDEwMCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTtcbiAgfVxuICA1MCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgycHgpO1xuICB9XG59IiwiLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAqIEJhc2ljIGVsZW1lbnRzIChubyBjbGFzcyBzZWxlY3RvcnMgYWxsb3dlZClcbiAqID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qKlxuICogU2V0IHVwIHRoZSBodG1sXG4gKlxuICogMS4gTWFrZXMgc3VyZSB0aGF0IHNvbWUgZm9udHMgYXJlIGJldHRlciByZW5kZXJlZFxuICogMi4gU2V0IGZvbnQgdG8gbGluaW5nIGZpZ3VyZXNcbiAqXG4gKiAzLiBBdm9pZCB0aGUgSUUgMTAtMTEgYG1pbi1oZWlnaHRgIGJ1Zy5cbiAqIDQuIFVzZSBgJWAgaW5zdGVhZCBvZiBgdmhgIHNpbmNlIGB2aGAgaXMgYnVnZ3kgaW4gb2xkZXIgbW9iaWxlIFNhZmFyaS5cbiAqL1xuXG5odG1sIHtcbiAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG4gIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XG4gIHRleHQtcmVuZGVyaW5nOiBvcHRpbWl6ZUxlZ2liaWxpdHk7XG4gIGZvbnQtZmVhdHVyZS1zZXR0aW5nczogXCJsbnVtXCI7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIGhlaWdodDogMTAwJTtcbn1cblxuYm9keSB7XG4gIEBpbmNsdWRlIGZzKDE1LCAyNCk7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZm9udC1mYW1pbHk6ICRmb250LW1vbnRzZXJyYXQ7XG4gIG1hcmdpbjogMDtcbiAgY29sb3I6IHBhbGV0dGUoc2Vjb25kYXJ5LCA4MDApO1xuICBiYWNrZ3JvdW5kOiBwYWxldHRlKG5ldXRyYWwsIDApO1xuICBvdmVyZmxvdy14OiBoaWRkZW47XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGhlaWdodDogMTAwJTsgLyogMywgNCAqL1xufVxuXG5mb290ZXIge1xuICBmbGV4OiAxIDAgYXV0bztcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbn1cblxuXG4vKipcbiAqIFsxXSBNYWtlIHN1cmUgZWxlbWVudHMgbGlrZSBpbnB1dCBhbmQgdGV4dGFyZWEgaW5oZXJpdCBzb21lIGJhc2UgcHJvcGVydGllc1xuICogICAgIGh0dHBzOi8vd3d3LnNtYXNoaW5nbWFnYXppbmUuY29tLzIwMTYvMTEvY3NzLWluaGVyaXRhbmNlLWNhc2NhZGUtZ2xvYmFsLXNjb3BlLW5ldy1vbGQtd29yc3QtYmVzdC1mcmllbmRzL1xuICpcbiAqIFsyXSBTZXR0aW5nIGJveC1zaXppbmcgdGhlIGJlc3Qgd2F5IHBlcjpcbiAqICAgICBodHRwczovL2Nzcy10cmlja3MuY29tL2luaGVyaXRpbmctYm94LXNpemluZy1wcm9iYWJseS1zbGlnaHRseS1iZXR0ZXItYmVzdC1wcmFjdGljZS9cbiAqL1xuKiB7XG4gIGZvbnQtZmFtaWx5OiBpbmhlcml0O1xuICBsaW5lLWhlaWdodDogaW5oZXJpdDtcbiAgY29sb3I6IGluaGVyaXQ7XG5cbiAgJixcbiAgJjpiZWZvcmUsXG4gICY6YWZ0ZXIge1xuICAgIGJveC1zaXppbmc6IGluaGVyaXQ7XG4gIH1cbn1cblxuLyoqXG4gKiBbMV0gVHVybiBvZmYgdGV4dC1zaGFkb3cgd2hlbiBzZWxlY3RpbmcgdGV4dCBmb3IgYmV0dGVyIHJlYWRhYmlsaXR5XG4gKi9cbjo6c2VsZWN0aW9uIHtcbiAgYmFja2dyb3VuZDogcGFsZXR0ZShzZWNvbmRhcnksIDgwMCk7XG4gIGNvbG9yOiBwYWxldHRlKG5ldXRyYWwsIDApO1xuICB0ZXh0LXNoYWRvdzogbm9uZTsgLyogWzFdICovXG59XG5cbi8qIFJlbW92ZSBkZWZhdWx0IG1hcmdpbiBhcm91bmQgZmlndXJlXG4gKi9cbmZpZ3VyZSB7XG4gIG1hcmdpbjogMDtcbn1cblxuLyoqXG4gKiBbMV0gU2V0dGluZyAndmVydGljYWwtYWxpZ24nIHJlbW92ZXMgdGhlIHdoaXRlc3BhY2UgdGhhdCBhcHBlYXJzIHVuZGVyICdpbWcnXG4gKlx0ICAgZWxlbWVudHMgd2hlbiB0aGV5IGFyZSBkcm9wcGVkIGludG8gYSBwYWdlIGFzLWlzLiBTYWZlciBhbHRlcm5hdGl2ZSB0b1xuICpcdCAgIHVzaW5nICdkaXNwbGF5OiBibG9jazsnLlxuICogWzJdIFJlbW92ZSBib3JkZXIgLyBlc3BlY2lhbGx5IG9uIG9sZGVyIGJyb3dzZXJzXG4gKi9cbmltZywgc3ZnIHtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTsgLypbMV0qL1xuICBib3JkZXI6IG5vbmU7IC8qWzJdKi9cbiAgbWF4LXdpZHRoOiAxMDAlO1xufVxuXG4vKipcbiAqICBOZWVkZWQgZm9yIGlPUyB0byBwcmV2ZW50IGlucHV0IHpvb21pbmdcbiAqICBodHRwczovL3V4Y2VsbGVuY2UuY29tLzIwMTQvMDEvMTUvcXVpY2stZml4LWluY3JlYXNlLWZvbnQtc2l6ZS10by0xNnB4LXRvLWZpeC1pbnB1dC16b29tXG4gKi9cbmlucHV0LFxuc2VsZWN0LFxudGV4dGFyZWEge1xuICBmb250LXNpemU6IDE2cHg7XG59XG5cblxuLy8gTGlua3Mgd2l0aCBubyBjbGFzcyBnZXQgYSBkZWZhdWx0IGhvdmVyXG5hOm5vdChbY2xhc3NdKSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgY29sb3I6IHBhbGV0dGUoZmVlZGJhY2ssIGFjdGlvbik7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgdGV4dC1kZWNvcmF0aW9uLXNraXAtaW5rOiBhdXRvOyAvLyBwcmV0dHkgdW5kZXJsaW5pbmcgbGlua3NcblxuICAmOjphZnRlciB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMTAwJTtcbiAgICBsZWZ0OiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMXB4O1xuICAgIGJhY2tncm91bmQ6IHBhbGV0dGUoZmVlZGJhY2ssIGFjdGlvbik7XG4gICAgY29udGVudDogJyc7XG4gICAgb3BhY2l0eTogMDtcbiAgICB0cmFuc2l0aW9uOiBoZWlnaHQgMC4zcywgb3BhY2l0eSAwLjNzLCB0cmFuc2Zvcm0gMC4zcztcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTVweCk7XG4gIH1cblxuICAmOmhvdmVyIHtcbiAgICAmOjphZnRlciB7XG4gICAgICBoZWlnaHQ6IDJweDtcbiAgICAgIG9wYWNpdHk6IDE7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMHB4KTtcbiAgICB9XG4gIH1cbn1cblxuXG4vLyBUT0RPOiBJcyB0aGlzIHRoZSByaWdodCB3YXkgdG8gcmVzZXQgYWxsIG1hcmdpbj8/XG4vLyBSZXNldCBhbGwgdG9wIG1hcmdpbnNcbmgxLGgyLGgzLGg0LGg1LGg2LGhncm91cCxcbnVsLG9sLGRkLFxucCxmaWd1cmUsXG5wcmUsdGFibGUsZmllbGRzZXQsaHIge1xuICBtYXJnaW4tdG9wOiAwO1xuICBtYXJnaW4tYm90dG9tOiAwO1xufSIsImgxLCAuaDEge1xuXHRmb250LWZhbWlseTogJGZvbnQtcG9wcGlucztcblx0QGluY2x1ZGUgaW50ZXJwb2xhdGUoZm9udC1zaXplLCAzNzVweCwgNTAwcHgsIDI0cHgsIDM2cHgpO1xuXHRsaW5lLWhlaWdodDogMS4zMzMzO1xuXHRAaW5jbHVkZSBmdyhzZW1pQm9sZCk7XG5cdGxldHRlci1zcGFjaW5nOiAtMC4zMnB4O1xufVxuXG5oMiwgLmgyIHtcblx0Zm9udC1mYW1pbHk6ICRmb250LXBvcHBpbnM7XG5cdEBpbmNsdWRlIGludGVycG9sYXRlKGZvbnQtc2l6ZSwgMzc1cHgsIDUwMHB4LCAyMHB4LCAyNnB4KTtcblx0bGluZS1oZWlnaHQ6IDEuMzMzMztcblx0QGluY2x1ZGUgZncoc2VtaUJvbGQpO1xuXHRsZXR0ZXItc3BhY2luZzogLTAuMzJweDtcbn1cblxuaDMsIC5oMyB7XG5cdGZvbnQtZmFtaWx5OiAkZm9udC1wb3BwaW5zO1xuXHRAaW5jbHVkZSBpbnRlcnBvbGF0ZShmb250LXNpemUsIDM3NXB4LCA1MDBweCwgMThweCwgMjJweCk7XG5cdGxpbmUtaGVpZ2h0OiAxLjY7XG5cdEBpbmNsdWRlIGZ3KHNlbWlCb2xkKTtcblx0bGV0dGVyLXNwYWNpbmc6IC0wLjJweDtcbn1cblxuaDQsIC5oNCB7XG5cdGZvbnQtZmFtaWx5OiAkZm9udC1wb3BwaW5zO1xuXHRAaW5jbHVkZSBpbnRlcnBvbGF0ZShmb250LXNpemUsIDM3NXB4LCA1MDBweCwgMTZweCwgMjBweCk7XG5cdGxpbmUtaGVpZ2h0OiAxLjY7XG5cdEBpbmNsdWRlIGZ3KHNlbWlCb2xkKTtcblx0bGV0dGVyLXNwYWNpbmc6IDA7XG59IiwiLyoqID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAqICBMaXN0c1xuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuXG4vKipcbiAqXHREZWZhdWx0IGluZGVudGF0aW9uIHZhbHVlIGZvciBsaXN0c1xuICovXG5cbnVsLFxub2x7XG5cdHBhZGRpbmc6IDA7XG5cdG1hcmdpbjogMDtcblx0bWFyZ2luLWxlZnQ6IDEuMTI1ZW07XG59XG5cbmRke1xuXHRtYXJnaW4tbGVmdDogMDtcbn1cblxuXG5cbi8qKlxuICpcdFJlbW92ZSBleHRyYSB2ZXJ0aWNhbCBzcGFjaW5nIHdoZW4gbmVzdGluZyBsaXN0cy5cbiAqL1xuXG5saSB7XG5cdD4gdWwsXG5cdD4gb2wge1xuXHRcdG1hcmdpbi1ib3R0b206IDA7XG5cdH1cbn0iLCIvKj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gKiBDb250YWluXG4gKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG5cbi5sLWNvbnRhaW4ge1xuICBAaW5jbHVkZSBjb250YWluO1xufVxuXG4ubC1jb250YWluLS1zbWFsbCB7XG4gIHdpZHRoOiA1NTJweDtcbiAgQGluY2x1ZGUgbXEoJG1heDogNTUyKSB7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbn0iLCIvKj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAqIFNwbGl0IGxheW91dCBpbiAyIGVxdWFsIGNvbHVtbnNcbiAqXG4gKiBVbnRpbCB2aWV3cG9ydCBpcyB3aWRlIGVub3VnaCB0aGUgY29sdW1ucyBhcmUgc3RhY2tlZCB2ZXJ0aWNhbGx5XG4gKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuXG4ubC1zcGxpdCB7XG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0aGVpZ2h0OiAxMDAlOyAvLyBzdHJldGNoIGl0IG91dCBpbiBpdHMgY29udGFpbmVyXG5cblx0Ly8gU2V0IHNpZGUgYnkgc2lkZSBmcm9tIG1lZGl1bSB2aWV3cG9ydHMgYW5kIHVwXG5cdEBpbmNsdWRlIG1xKG0pIHtcblx0XHRkaXNwbGF5OiBmbGV4O1xuXHRcdGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2Vlbjtcblx0fVxufVxuXG5cbi8qKlxuICogU3BlY2lhbCBjb250YWluIHZlcnNpb24gZm9yIHNwbGl0LlxuICogRG9lc24ndCByZXN0cmFpbiBjb250ZW50IG9uIG1lZGl1bSB2aWV3cG9ydFxuICovXG5cbi5sLXNwbGl0LS1jb250YWluIHtcblx0QGluY2x1ZGUgY29udGFpbigkb25NZWRpdW06IGZhbHNlKTtcbn1cblxuXG4ubC1zcGxpdF9fY29sdW1uIHtcblxuXHQvLyBPbiBkZXNrdG9wIGNvbHVtbnMgYXJlIDUwLzUwXG5cdEBpbmNsdWRlIG1xKGwpIHtcblx0XHR3aWR0aDogY29sdW1uKDYsIDEyKTtcblx0fVxuXG5cdC8vIE1haW4gY29udGVudCBnb2VzIGZpcnN0LCB1c3VhbGx5IHRleHRcblx0JjpmaXJzdC1jaGlsZCB7XG5cdFx0QGluY2x1ZGUgbXEobSwgbCkge1xuXHRcdFx0d2lkdGg6IGNvbHVtbig1LCA4KTtcblx0XHRcdHBhZGRpbmctcmlnaHQ6IGNvbHVtbigxLCA4KTtcblx0XHR9XG5cdFx0QGluY2x1ZGUgbXEobCkge1xuXHRcdFx0Ly9wYWRkaW5nLWxlZnQ6IGNvbHVtbigxLCAxMik7XG5cdFx0XHQvL3BhZGRpbmctcmlnaHQ6IGNvbHVtbigxLCAxMik7XG5cdFx0fVxuXHR9XG5cblx0Ly8gc2Vjb25kYXJ5IGNvbnRlbnQgZ29lcyBsYXN0LCB1c3VhbGx5IGFuIGltYWdlIG9yIGFzaWRlIHRleHRcblx0JjpsYXN0LWNoaWxkIHtcblx0XHQvL3BhZGRpbmctbGVmdDogY29sdW1uKDEsIDEyKTtcblxuXHRcdC8vIENyZWF0ZSB2ZXJ0aWNhbCBzcGFjaW5nIG9uIG1vYmlsZVxuXHRcdEBpbmNsdWRlIHZzcGFjaW5nLXMoXG5cdFx0XHRcdCdtYXJnaW4tdG9wJyAwLjVcblx0XHQpO1xuXHRcdEBpbmNsdWRlIG1xKG0sIGwpIHtcblx0XHRcdHBhZGRpbmctbGVmdDogMDtcblx0XHRcdHdpZHRoOiBjb2x1bW4oMywgOCk7XG5cdFx0fVxuXG5cdFx0QGluY2x1ZGUgbXEobCkge1xuXHRcdFx0cGFkZGluZy1sZWZ0OiBjb2x1bW4oMSwgMTIpO1xuXHRcdH1cblx0fVxuXG5cdC8vIFZpc3VhbGx5IHN3aXRjaCBjb2x1bW5zIG9uIG1lZGl1bSAmIGxhcmdlIHZpZXdwb3J0c1xuXHQubC1zcGxpdC0taXMtcmV2ZXJzZWQgJiB7XG5cdFx0cGFkZGluZy1sZWZ0OiAwO1xuXHRcdHBhZGRpbmctcmlnaHQ6IDA7XG5cblx0XHQmOmZpcnN0LWNoaWxkIHtcblx0XHRcdG9yZGVyOiAyO1xuXHRcdFx0cGFkZGluZy1sZWZ0OiAwO1xuXHRcdFx0QGluY2x1ZGUgbXEobSwgbCkge1xuXHRcdFx0XHRwYWRkaW5nLWxlZnQ6IGNvbHVtbigxLDEyKTtcblx0XHRcdFx0cGFkZGluZy1yaWdodDogMDtcblx0XHRcdH1cblx0XHRcdEBpbmNsdWRlIG1xKGwpIHtcblx0XHRcdFx0cGFkZGluZy1sZWZ0OiBjb2x1bW4oMSwxMik7XG5cdFx0XHRcdHBhZGRpbmctcmlnaHQ6IDA7XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG59XG5cbkBpbmNsdWRlIG1xKG0sIGwpIHtcblx0Lmwtc3BsaXQtLWJyZWFrb3V0LW9uLW0ge1xuXHRcdC5sLXNwbGl0X19jb2x1bW4ge1xuXHRcdFx0JjpmaXJzdC1jaGlsZCB7XG5cdFx0XHRcdHdpZHRoOiBjb2x1bW4oNiwgMTApO1xuXHRcdFx0XHRwYWRkaW5nLWxlZnQ6IGNvbHVtbigxLCAxMCk7XG5cdFx0XHRcdHBhZGRpbmctcmlnaHQ6IGNvbHVtbigxLCAxMCk7XG5cdFx0XHR9XG5cdFx0XHQmOmxhc3QtY2hpbGQge1xuXHRcdFx0XHR3aWR0aDogY29sdW1uKDQsIDEwKTtcblx0XHRcdH1cblx0XHR9XG5cdH1cbn1cblxuXG4vKipcbiAqIFdoZW4gdGhlcmUgaXMgb25seSAxIGNvbHVtbiwgYWxpZ24gaXQgdG8gdGhlIG1pZGRsZSBhbmQgY29udGFpbiB0aGUgd2lkdGhcbiAqIE9ubHkgb25lIGNvbHVtbiBpcyB1c2VkIGUuZy4gaW4gdGhlIHRhYnNsaWRlciB3aGVuIHRoZXJlIGlzIG5vIGltYWdlIHNldFxuICovXG4ubC1zcGxpdF9fY29sdW1uOm9ubHktY2hpbGQge1xuXHRAaW5jbHVkZSBtcShtKSB7XG5cdFx0bWFyZ2luOiAwIGF1dG87XG5cdFx0d2lkdGg6IGNvbHVtbig2LCA4KTtcblx0XHRwYWRkaW5nLWxlZnQ6IDA7XG5cdFx0cGFkZGluZy1yaWdodDogMDtcblx0fVxuXHRAaW5jbHVkZSBtcShsKSB7XG5cdFx0d2lkdGg6IGNvbHVtbig2LCAxMik7XG5cdFx0cGFkZGluZy1sZWZ0OiAwICFpbXBvcnRhbnQ7XG5cdH1cbn1cblxuXG4vLyBDb2x1bW5zIHRoYXQgaGF2ZSB0ZXh0IGluc3RlYWQgb2YgYW4gaW1hZ2UgbmVlZCBzb21lIHBhZGRpbmcgb24gdG9wXG4vLyB0byBhbGlnbiB0aGVtIHdpdGggdGhlIG90aGVyIGNvbHVtbiB0aGF0IGhhcyBwYWRkaW5nLXRvcCB0b29cbi5sLXNwbGl0X19jb2x1bW4tLXZwYWQge1xuXHRkaXNwbGF5OiBmbGV4O1xuXHRmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuXHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbn1cblxuXG4vLyBDcmVhdGUgYSBjb2x1bW4gZXh0cmEgd2hpdGUgc3BhY2UgdG8gdGhlIGxlZnQgKG9uIGxhcmdlIHZpZXdwb3J0cylcbkBpbmNsdWRlIG1xKGwpIHtcblx0Lmwtc3BsaXRfX2NvbHVtbi0tbGVmdHBhZCB7XG5cdFx0cGFkZGluZy1sZWZ0OiBjb2x1bW4oMSwxMik7XG5cdH1cbn1cblxuXG4iLCIvKj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gKiBDb250YWluXG4gKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4ubC1jb21wb25lbnQge1xuXG4gICZbZGF0YS1nYXA9J2RlZmF1bHQnXSB7XG4gICAgbWFyZ2luOiBjbGFtcCg3MnB4LCA3LjJ2dyAsIDEyMHB4KSAwO1xuICB9XG5cbn0iLCIvKiogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAqIENvbXBvbmVudHNcbiAqID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0qL1xuXG5AaW1wb3J0IFwiY29tcG9uZW50cy5icmVhZGNydW1iXCI7XG5AaW1wb3J0IFwiY29tcG9uZW50cy5idXR0b25cIjtcbkBpbXBvcnQgXCJjb21wb25lbnRzLmdob3N0YnV0dG9uXCI7XG5AaW1wb3J0IFwiY29tcG9uZW50cy5jYXJkXCI7XG5AaW1wb3J0IFwiY29tcG9uZW50cy5jbG9zZVwiO1xuQGltcG9ydCBcImNvbXBvbmVudHMuY29ubmVjdFwiO1xuQGltcG9ydCBcImNvbXBvbmVudHMuZGF0YVwiO1xuQGltcG9ydCBcImNvbXBvbmVudHMuZGF0ZUxhYmVsXCI7XG5AaW1wb3J0IFwiY29tcG9uZW50cy5ldmVudENhcmRcIjtcbkBpbXBvcnQgXCJjb21wb25lbnRzLmZpbGVVcGxvYWRcIjtcbkBpbXBvcnQgXCJjb21wb25lbnRzLmZvcm1Hcm91cFwiO1xuQGltcG9ydCBcImNvbXBvbmVudHMuZm9ybUZlZWRiYWNrXCI7XG5AaW1wb3J0IFwiY29tcG9uZW50cy5oYW1idXJnZXJcIjtcbkBpbXBvcnQgXCJjb21wb25lbnRzLmhlYWRpbmdcIjtcbkBpbXBvcnQgXCJjb21wb25lbnRzLmhlcm9cIjtcbkBpbXBvcnQgXCJjb21wb25lbnRzLmlucHV0XCI7XG5AaW1wb3J0IFwiY29tcG9uZW50cy5sYW5ndWFnZVwiO1xuQGltcG9ydCBcImNvbXBvbmVudHMubmF2XCI7XG5AaW1wb3J0IFwiY29tcG9uZW50cy5wYWdpbmF0aW9uXCI7XG5AaW1wb3J0IFwiY29tcG9uZW50cy5wYWdlVGl0bGVcIjtcbkBpbXBvcnQgXCJjb21wb25lbnRzLnByZVRpdGxlXCI7XG5AaW1wb3J0IFwiY29tcG9uZW50cy5wcm9qZWN0b3JcIjtcbkBpbXBvcnQgXCJjb21wb25lbnRzLnNpdGVtYXBcIjtcbkBpbXBvcnQgXCJjb21wb25lbnRzLnNraXBMaW5rXCI7XG5AaW1wb3J0IFwiY29tcG9uZW50cy5zbGlkZS1pbmRpY2F0b3JcIjtcbkBpbXBvcnQgXCJjb21wb25lbnRzLnRleHQtYnV0dG9uXCI7XG5AaW1wb3J0IFwiY29tcG9uZW50cy50b2dnbGVcIjtcbkBpbXBvcnQgXCJjb21wb25lbnRzLnRyYWRlbWFya1wiO1xuQGltcG9ydCBcImNvbXBvbmVudHMudmFjYW5jeVByb3BlcnRpZXNcIjtcbkBpbXBvcnQgXCJjb21wb25lbnRzLnZpZGVvXCI7XG5AaW1wb3J0IFwiY29tcG9uZW50cy5oZXJvQ2FyZFwiO1xuQGltcG9ydCBcImNvbXBvbmVudHMuZmFxXCI7XG5AaW1wb3J0IFwiY29tcG9uZW50cy5pbnN1cmVyR3JpZFwiO1xuQGltcG9ydCBcImNvbXBvbmVudHMudXNwc1wiO1xuQGltcG9ydCBcImNvbXBvbmVudHMucmVwYWlyTGlzdFwiO1xuQGltcG9ydCBcImNvbXBvbmVudHMuYmVmb3JlQWZ0ZXJTbGlkZXJcIjtcbkBpbXBvcnQgXCJjb21wb25lbnRzLnJldmlld3NcIjtcbkBpbXBvcnQgXCJjb21wb25lbnRzLnJldmlld1NsaWRlclwiO1xuQGltcG9ydCBcImNvbXBvbmVudHMuaGVhZGVyVG9wXCI7XG5AaW1wb3J0IFwiY29tcG9uZW50cy5zdGFyc1wiO1xuQGltcG9ydCBcImNvbXBvbmVudHMuZm9vdGVyQ2FyZFwiO1xuQGltcG9ydCBcImNvbXBvbmVudHMudGV4dEltYWdlRmFxXCI7XG5AaW1wb3J0IFwiY29tcG9uZW50cy50ZXh0SW1hZ2VIb3Vyc1wiO1xuQGltcG9ydCBcImNvbXBvbmVudHMudGVhbUNhcmRcIjtcbkBpbXBvcnQgXCJjb21wb25lbnRzLmRhbWFnZUZvcm1cIjtcbkBpbXBvcnQgXCJjb21wb25lbnRzLmZhcU1lbnVcIjtcbkBpbXBvcnQgXCJjb21wb25lbnRzLmN0YVwiO1xuQGltcG9ydCBcImNvbXBvbmVudHMuZmlyZS1hbGVydFwiO1xuQGltcG9ydCBcImNvbXBvbmVudHMuc3RhdGlzdGljc1wiO1xuQGltcG9ydCBcImNvbXBvbmVudHMuZGFtYWdlRmxvd1wiO1xuQGltcG9ydCBcImNvbXBvbmVudHMuZGFtYWdlU3RlcHNcIjtcbkBpbXBvcnQgXCJjb21wb25lbnRzLmRhbWFnZVN0ZXBzU21hbGxcIjtcbkBpbXBvcnQgXCJjb21wb25lbnRzLm1vYmlsZUluc3VyZXJSb3dcIjsiLCIuYy1icmVhZGNydW1iIHtcblx0cGFkZGluZy1ib3R0b206IDRweDsgLy8gbWFrZSBzdXJlIHRvdGFsIGhlaWdodCB3aWxsIGJlIGRpdmlzaWJsZSBieSA4XG4gfVxuXG4uYy1icmVhZGNydW1iX19saXN0IHtcblx0bWFyZ2luOiAwO1xuXHRsaXN0LXN0eWxlOiBub25lO1xuXHRkaXNwbGF5OiBmbGV4O1xuXHRmbGV4LXdyYXA6IHdyYXA7XG59XG5cblxuLmMtYnJlYWRjcnVtYl9faXRlbSB7XG5cdGRpc3BsYXk6IGZsZXg7XG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cblx0JjpudGgtY2hpbGQobisyKSB7XG5cdFx0JiAuYy1icmVhZGNydW1iX19pY29uIHtcblx0XHRcdGRpc3BsYXk6IGZsZXg7XG5cdFx0XHRhbGlnbi1pdGVtczogY2VudGVyO1xuXHRcdFx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG5cdFx0XHR3aWR0aDogc3BhY2UoMyk7XG5cdFx0XHRoZWlnaHQ6IHNwYWNlKDMpO1xuXHRcdFx0bWFyZ2luLWxlZnQ6IHNwYWNlKDEpO1xuXHRcdFx0bWFyZ2luLXJpZ2h0OiBzcGFjZSgxKTtcblx0XHRcdHRyYW5zZm9ybTogcm90YXRlKDAuNzV0dXJuKTtcblx0XHRcdC8vY29sb3I6IHBhbGV0dGUocHJpbWFyeSwgNTAwKTtcblx0XHRcdGNvbG9yOiBwYWxldHRlKG5ldXRyYWwsIDkwMCk7XG5cdFx0fVxuXHR9XG59XG5cbi5jLWJyZWFkY3J1bWJfX2xpbmsge1xuXHRjb2xvcjogcGFsZXR0ZShuZXV0cmFsLCA1MDApO1xuXHR0ZXh0LWRlY29yYXRpb246IG5vbmU7XG5cblx0LmMtYnJlYWRjcnVtYl9faXRlbS0tbGFzdCAmIHtcblx0XHRmb250LXdlaWdodDogYm9sZDtcblx0fVxufSIsIi8vIENvbXBvbmVudCBzZXR0aW5nczogQnV0dG9uXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuJGMtYnV0dG9uOiAoXG5cdCdjb2xvcic6XHRcdFx0cGFsZXR0ZShuZXV0cmFsLCAwKSxcblx0J2JnY29sb3InOlx0XHRcdHBhbGV0dGUocHJpbWFyeSwgNTAwKSxcblx0J2JnY29sb3ItaG92ZXInOlx0I2ZmNzUxNCxcblxuXHQnbGlnaHQtY29sb3InOiBwYWxldHRlKHNlY29uZGFyeSwgNjAwKSxcblx0J2xpZ2h0LWJnY29sb3InOiBwYWxldHRlKG5ldXRyYWwsIDApLFxuXHQnbGlnaHQtYmdjb2xvci1ob3Zlcic6IHBhbGV0dGUoc2Vjb25kYXJ5LCAzMDApLFxuXG5cdCdibHVlLWNvbG9yJzogcGFsZXR0ZShuZXV0cmFsLCAwKSxcblx0J2JsdWUtYmdjb2xvcic6IHBhbGV0dGUoc2Vjb25kYXJ5LCA0MDApLFxuXHQnYmx1ZS1iZ2NvbG9yLWhvdmVyJzogcGFsZXR0ZShzZWNvbmRhcnksIDQ1MClcbik7XG5cbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG5cbi5jLWJ1dHRvbiB7XG5cdEBpbmNsdWRlIGJvcmRlci1yYWRpdXMobSk7XG5cdEBpbmNsdWRlIGZzKDE1KTtcblx0d2lkdGg6IG1heC1jb250ZW50O1xuXHRmb250LXdlaWdodDogNTAwO1xuXHRkaXNwbGF5OiBpbmxpbmUtZmxleDtcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcblx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG5cdGNvbG9yOiBtYXAtZ2V0KCRjLWJ1dHRvbiwgJ2NvbG9yJyk7XG5cdGJhY2tncm91bmQtY29sb3I6IG1hcC1nZXQoJGMtYnV0dG9uLCAnYmdjb2xvcicpO1xuXHRib3JkZXI6IG5vbmU7XG5cdHBhZGRpbmc6IHNwYWNlKDIpIDA7XG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0b3ZlcmZsb3c6IGhpZGRlbjtcblx0Y3Vyc29yOiBwb2ludGVyO1xuXHR0ZXh0LWRlY29yYXRpb246IG5vbmU7XG5cblx0Jjpmb2N1cyB7XG5cdFx0b3V0bGluZTogbm9uZTtcblx0XHRib3gtc2hhZG93OiAwIDAgMCAxcHggcGFsZXR0ZShuZXV0cmFsLCAwKSwgMCAwIDVweCAycHggbWFwLWdldCgkYy1idXR0b24sICdiZ2NvbG9yJyk7XG5cdH1cblx0JjphY3RpdmU6bm90KDpkaXNhYmxlZCkge1xuXHRcdG91dGxpbmU6IG5vbmU7XG5cdFx0Ym94LXNoYWRvdzogbm9uZTtcblx0fVxuXHQmOmRpc2FibGVkIHtcblx0XHRvcGFjaXR5OiAwLjU7XG5cdFx0Y3Vyc29yOiBub3QtYWxsb3dlZDtcblx0fVxuXG5cdC8vIFBzZXVkbyBlbGVtZW50IGZvciBhbmltYXRpbmcgaG92ZXJcblx0Jjo6YWZ0ZXIge1xuXHRcdGNvbnRlbnQ6IFwiXCI7XG5cdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdHotaW5kZXg6IDE7XG5cdFx0dG9wOiBjYWxjKDUwJSAtIDJweCk7XG5cdFx0bGVmdDogY2FsYyg1MCUgLSAycHgpO1xuXHRcdHdpZHRoOiA0cHg7XG5cdFx0aGVpZ2h0OiA0cHg7XG5cdFx0b3BhY2l0eTogMDtcblx0XHRib3JkZXItcmFkaXVzOiA1MCU7XG5cdFx0YmFja2dyb3VuZDogbWFwLWdldCgkYy1idXR0b24sICdiZ2NvbG9yLWhvdmVyJyk7XG5cdFx0cG9pbnRlci1ldmVudHM6IG5vbmU7XG5cdFx0dHJhbnNpdGlvbi1wcm9wZXJ0eTogb3BhY2l0eSwgdHJhbnNmb3JtO1xuXHRcdHRyYW5zaXRpb24tZHVyYXRpb246IDAuNXM7XG5cdH1cblxuXHQmOmhvdmVyOm5vdCg6ZGlzYWJsZWQpOjphZnRlciB7XG5cdFx0b3BhY2l0eTogMTtcblx0XHR0cmFuc2Zvcm06IHNjYWxlKDEwMCk7XG5cdH1cbn1cblxuLmMtYnV0dG9uX190ZXh0IHtcblx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHR6LWluZGV4OiAyO1xuXHRwYWRkaW5nOiAwIHNwYWNlKDMpO1xuXHR0ZXh0LWFsaWduOiBjZW50ZXI7XG5cdGZvbnQtd2VpZ2h0OiA2MDA7XG5cblx0LmMtYnV0dG9uLS1pY29uICYge1xuXHRcdHBhZGRpbmctcmlnaHQ6IHNwYWNlKDIpO1xuXHR9XG59XG5cbi5jLWJ1dHRvbl9faWNvbiB7XG5cdGRpc3BsYXk6IG5vbmU7IC8vIEJ5IGRlZmF1bHQgaWNvbiBpcyBoaWRkZW5cblx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHR6LWluZGV4OiAyO1xuXHR0b3A6IC0xcHg7XG5cdG1hcmdpbi1yaWdodDogMTVweDtcblx0dHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuM3M7XG5cblx0LmMtYnV0dG9uOmhvdmVyOm5vdCg6ZGlzYWJsZWQpICYge1xuXHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlWCgzcHgpO1xuXHR9XG5cblx0Ly8gV2hlbiBpY29uIGNvbWVzIGJlZm9yZSB0aGUgdGV4dCAoaW4gdGhlIERPTSkgc3dpdGNoIHRoZSBtYXJnaW5cblx0JjpmaXJzdC1jaGlsZCB7XG5cdFx0bWFyZ2luLXJpZ2h0OiAwO1xuXHRcdG1hcmdpbi1sZWZ0OiAxNXB4O1xuXHR9XG5cblx0LmMtYnV0dG9uLS1pY29uICYge1xuXHRcdGRpc3BsYXk6IGJsb2NrOyAvLyBTaG93IHdoZW4gaGFzIGljb24gbW9kaWZpZXJcblx0XHR3aWR0aDogMTZweDtcblx0fVxufVxuXG4uYy1idXR0b24tLWxpZ2h0IHtcblx0Y29sb3I6IG1hcC1nZXQoJGMtYnV0dG9uLCAnbGlnaHQtY29sb3InKTtcblx0YmFja2dyb3VuZC1jb2xvcjogbWFwLWdldCgkYy1idXR0b24sICdsaWdodC1iZ2NvbG9yJyk7XG5cblx0Jjo6YWZ0ZXIge1xuXHRcdGJhY2tncm91bmQ6IG1hcC1nZXQoJGMtYnV0dG9uLCAnbGlnaHQtYmdjb2xvci1ob3ZlcicpO1xuXHR9XG59XG5cbi5jLWJ1dHRvbi0tYmx1ZSB7XG5cdGNvbG9yOiBtYXAtZ2V0KCRjLWJ1dHRvbiwgJ2JsdWUtY29sb3InKTtcblx0YmFja2dyb3VuZC1jb2xvcjogbWFwLWdldCgkYy1idXR0b24sICdibHVlLWJnY29sb3InKTtcblxuXHQmOjphZnRlciB7XG5cdFx0YmFja2dyb3VuZDogbWFwLWdldCgkYy1idXR0b24sICdibHVlLWJnY29sb3ItaG92ZXInKTtcblx0fVxufVxuXG4uYy1idXR0b24tLWZ1bGwtd2lkdGgge1xuXHR3aWR0aDogMTAwJTtcblx0bWF4LXdpZHRoOiA5MHZ3O1xuXG59XG5cbi5jLWJ1dHRvbi0tbGVmdCB7XG5cdG1hcmdpbi1yaWdodDogMTVweDtcbn1cblxuLmMtYnV0dG9uLS1zbWFsbCB7XG5cdHBhZGRpbmc6IDdweCAwO1xufSIsIi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gKiBEZWZhdWx0IGJ1dHRvblxuICogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuJGMtZ2hvc3QtYnV0dG9uOiAoXG5cdCdjb2xvcic6XHRwYWxldHRlKG5ldXRyYWwsIDApLFxuKTtcblxuXG4uYy1naG9zdGJ1dHRvbiB7XG5cdEBpbmNsdWRlIGJvcmRlci1yYWRpdXMobSk7XG5cdEBpbmNsdWRlIGZzKDE0KTtcblx0Zm9udC13ZWlnaHQ6IDUwMDtcblx0ZGlzcGxheTogaW5saW5lLWZsZXg7XG5cdGp1c3RpZnktY29udGVudDogY2VudGVyO1xuXHRhbGlnbi1pdGVtczogY2VudGVyO1xuXHRjb2xvcjogbWFwLWdldCgkYy1naG9zdC1idXR0b24sICdjb2xvcicpO1xuXHRiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcblx0dGV4dC1zaGFkb3c6IDAgMCA0cHggcmdiYSgwLDAsMCwwLjIpO1xuXHRib3JkZXI6IDFweCBzb2xpZCBjdXJyZW50Q29sb3I7XG5cdHBhZGRpbmc6IHNwYWNlKDIpIDA7XG5cdHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0Y3Vyc29yOiBwb2ludGVyO1xuXHR0ZXh0LWRlY29yYXRpb246IG5vbmU7XG5cblx0Jjpmb2N1cyB7XG5cdFx0b3V0bGluZTogbm9uZTtcblx0XHRib3gtc2hhZG93OiAwIDAgNHB4IDJweCByZ2JhKG1hcC1nZXQoJGMtZ2hvc3QtYnV0dG9uLCAnY29sb3InKSwgMC41KTtcblxuXHR9XG5cdCY6YWN0aXZlOm5vdCg6ZGlzYWJsZWQpIHtcblx0XHRvdXRsaW5lOiBub25lO1xuXHRcdGJveC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDtcblx0fVxuXHQmOmRpc2FibGVkIHtcblx0XHRvcGFjaXR5OiAwLjU7XG5cdFx0Y3Vyc29yOiBub3QtYWxsb3dlZDtcblx0fVxuXG5cdC8vIEJvcmRlciB3aXRoIHBzZXVkbyBlbGVtZW50IGZvciBhbmltYXRpb25cblx0Jjo6YWZ0ZXIge1xuXHRcdEBpbmNsdWRlIGJvcmRlci1yYWRpdXMobSk7XG5cdFx0Ym9yZGVyOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XG5cdFx0YmFja2dyb3VuZDogcmdiYShwYWxldHRlKG5ldXRyYWwsIDEwMDApLCAwLjA3KTtcblx0XHRiYWNrZ3JvdW5kLWNsaXA6IGNvbnRlbnQtYm94O1xuXHRcdGNvbnRlbnQ6IFwiXCI7XG5cdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdHRvcDogLTFweDtcblx0XHRib3R0b206IC0xcHg7XG5cdFx0cmlnaHQ6IC0xcHg7XG5cdFx0bGVmdDogLTFweDtcblx0XHR0cmFuc2Zvcm06IHNjYWxlWCgwKTtcblx0XHRvcGFjaXR5OiAwO1xuXHRcdHBvaW50ZXItZXZlbnRzOiBub25lO1xuXHRcdHRyYW5zaXRpb24tZHVyYXRpb246IC41cztcblx0fVxuXG5cdCY6aG92ZXI6bm90KDpkaXNhYmxlZCkge1xuXHRcdCY6OmFmdGVyIHtcblx0XHRcdHRyYW5zZm9ybTogc2NhbGVYKDEpO1xuXHRcdFx0b3BhY2l0eTogMTtcblx0XHRcdHRyYW5zaXRpb24tcHJvcGVydHk6IG9wYWNpdHksIHRyYW5zZm9ybTtcblx0XHRcdHRyYW5zaXRpb24tZHVyYXRpb246IC4zNXM7XG5cdFx0XHR0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKC4yMTUsLjYxLC4zNTUsMSk7XG5cdFx0fVxuXHR9XG59XG5cbi5jLWdob3N0YnV0dG9uX190ZXh0IHtcblx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHR6LWluZGV4OiAyO1xuXHRwYWRkaW5nOiAwIHNwYWNlKDMpO1xuXHR0ZXh0LWFsaWduOiBjZW50ZXI7XG5cblx0LmMtYnV0dG9uLS1pY29uICYge1xuXHRcdHBhZGRpbmctcmlnaHQ6IHNwYWNlKDIpO1xuXHR9XG59XG5cbi5jLWdob3N0YnV0dG9uX19pY29uIHtcblx0ZGlzcGxheTogbm9uZTsgLy8gQnkgZGVmYXVsdCBpY29uIGlzIGhpZGRlblxuXHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdHotaW5kZXg6IDI7XG5cdHRvcDogLTFweDtcblx0bWFyZ2luLXJpZ2h0OiAxNXB4O1xuXHR0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4zcztcblxuXHQuYy1naG9zdGJ1dHRvbjpob3Zlcjpub3QoOmRpc2FibGVkKSAmIHtcblx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoM3B4KTtcblx0fVxuXG5cdC5jLWdob3N0YnV0dG9uLS1pY29uICYge1xuXHRcdGRpc3BsYXk6IGJsb2NrOyAvLyBTaG93IHdoZW4gaGFzIGljb24gbW9kaWZpZXJcblx0XHR3aWR0aDogMTZweDtcblx0fVxuXG5cdC8vIFdoZW4gaWNvbiBjb21lcyBiZWZvcmUgdGhlIHRleHQgKGluIHRoZSBET00pIHN3aXRjaCB0aGUgbWFyZ2luXG5cdCY6Zmlyc3QtY2hpbGQge1xuXHRcdG1hcmdpbi1yaWdodDogMDtcblx0XHRtYXJnaW4tbGVmdDogMTVweDtcblx0fVxufSIsIi8vIENvbXBvbmVudCBzZXR0aW5nczogQ2FyZFxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbiRjLWNhcmQ6IChcblx0J2JnY29sb3InOiBcdFx0XHRcdHBhbGV0dGUobmV1dHJhbCwgMCksXG5cdCd0cmFuc2l0aW9uLWR1cmF0aW9uJzogIDMwMG1zLCAvL1RPRE8gaW1wbGVtZW50IHRyYW5zaXRpb25zXG5cdCdicmVha3BvaW50Jzo2NDFcbik7XG5cbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG5cbi5jLWNhcmQge1xuXHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdGRpc3BsYXk6IGZsZXg7XG5cdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG5cdGhlaWdodDogMTAwJTtcblx0cGFkZGluZy1sZWZ0OiBzcGFjZSgzKTtcblx0cGFkZGluZy1yaWdodDogc3BhY2UoNCk7XG5cblx0YmFja2dyb3VuZC1jb2xvcjogbWFwLWdldCgkYy1jYXJkLCdiZ2NvbG9yJyk7XG5cdGJvcmRlci1yYWRpdXM6IDhweDtcblx0Ym94LXNoYWRvdzogMCAyNHB4IDI0cHggMCByZ2JhKDQ3LDUzLDcyLDAuMDUpO1xuXG5cdHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblxuXHRAaW5jbHVkZSBtcShtYXAtZ2V0KCRjLWNhcmQsICdicmVha3BvaW50JykpIHtcblx0XHRwYWRkaW5nLWxlZnQ6IHNwYWNlKDUpO1xuXHRcdHBhZGRpbmctcmlnaHQ6IHNwYWNlKDUpO1xuXHR9XG59XG5cbi5jLWNhcmRfX2ljb24ge1xuXHRtYXJnaW4tdG9wOiBzcGFjZSgzKTtcblx0bWFyZ2luLWJvdHRvbTogc3BhY2UoMik7XG5cblx0QGluY2x1ZGUgbXEobWFwLWdldCgkYy1jYXJkLCAnYnJlYWtwb2ludCcpKSB7XG5cdFx0bWFyZ2luLXRvcDogc3BhY2UoNSk7XG5cdFx0bWFyZ2luLWJvdHRvbTogc3BhY2UoNCk7XG5cdH1cbn1cblxuLmMtY2FyZF9fYm9keSB7XG5cdG1hcmdpbi1ib3R0b206IHNwYWNlKDUpO1xufVxuXG4uYy1jYXJkX19ib3R0b20ge1xuXHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdGRpc3BsYXk6IGZsZXg7XG5cblx0JjpiZWZvcmUsXG5cdCY6YWZ0ZXIge1xuXHRcdGNvbnRlbnQ6IFwiXCI7XG5cdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdHRvcDogNTAlO1xuXHRcdGxlZnQ6IDA7XG5cdFx0aGVpZ2h0OiAycHg7XG5cdH1cblxuXHQmOmJlZm9yZSB7XG5cdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuXHRcdHdpZHRoOiBjYWxjKDEwMCUgLSA0NHB4KTtcblx0XHRiYWNrZ3JvdW5kLWNvbG9yOiBwYWxldHRlKG5ldXRyYWwsIDEwMCk7XG5cdH1cblxuXHQmOmFmdGVyIHtcblx0XHR3aWR0aDogY2FsYyg1MCUgLSAxMHB4KTtcblx0XHRiYWNrZ3JvdW5kLWNvbG9yOiBwYWxldHRlKHByaW1hcnksIDUwMCk7XG5cdFx0b3BhY2l0eTogMDtcblx0XHR0cmFuc2Zvcm06IHNjYWxlWCgwLjgpO1xuXHRcdHRyYW5zZm9ybS1vcmlnaW46IDAgNTAlO1xuXHRcdHRyYW5zaXRpb246IHRyYW5zZm9ybSAwcyBlYXNlLW91dCAwLjJzLCBvcGFjaXR5IDAuMnMgbGluZWFyO1xuXHR9XG5cblx0LmMtY2FyZDpob3ZlciAmIHtcblx0XHQmOmFmdGVyIHtcblx0XHRcdHRyYW5zZm9ybTogc2NhbGVYKDEpO1xuXHRcdFx0b3BhY2l0eTogMTtcblx0XHRcdHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjNzIGVhc2Utb3V0LCBvcGFjaXR5IDAuMnMgbGluZWFyO1xuXHRcdH1cblx0fVxuXG5cdEBpbmNsdWRlIG1xKG1hcC1nZXQoJGMtY2FyZCwgJ2JyZWFrcG9pbnQnKSkge1xuXHRcdGZsZXgtZGlyZWN0aW9uOiByb3ctcmV2ZXJzZTtcblx0XHRtYXJnaW4tdG9wOiBhdXRvO1xuXHRcdG1hcmdpbi1ib3R0b206IHNwYWNlKDUpO1xuXHRcdHdpZHRoOiAxMDAlO1xuXHR9XG5cblx0QGluY2x1ZGUgbXEoJG1heDogbWFwLWdldCgkYy1jYXJkLCAnYnJlYWtwb2ludCcpKSB7XG5cdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdHRvcDogMDtcblx0XHRyaWdodDogMDtcblx0XHRoZWlnaHQ6IDEwMCU7XG5cdFx0d2lkdGg6IDE2cHg7XG5cdFx0YWxpZ24taXRlbXM6IGNlbnRlcjtcblx0XHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcblx0XHRiYWNrZ3JvdW5kLWNvbG9yOiBwYWxldHRlKHNlY29uZGFyeSwgNDAwKTtcblx0XHRib3JkZXItcmFkaXVzOiAwIDhweCA4cHggMDtcblx0XHR0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDAuM3M7XG5cblx0XHQuYy1jYXJkOmhvdmVyICYge1xuXHRcdFx0YmFja2dyb3VuZC1jb2xvcjogcGFsZXR0ZShzZWNvbmRhcnksIDQ1MCk7XG5cdFx0fVxuXHR9XG59XG5cbi5jLWNhcmRfX2J1dHRvbiB7XG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0ZGlzcGxheTogZmxleDtcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcblx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG5cdHdpZHRoOiBzcGFjZSg1KTtcblx0aGVpZ2h0OiBzcGFjZSg1KTtcblx0Ym9yZGVyLXJhZGl1czogNTAlO1xuXHRjb2xvcjogcGFsZXR0ZShzZWNvbmRhcnksIDYwMCk7XG5cdGJvcmRlcjogMXB4IHNvbGlkIHBhbGV0dGUobmV1dHJhbCwgMzAwKTtcblxuXHQmOmFmdGVyIHtcblx0XHRjb250ZW50OiAnJztcblx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0bGVmdDogMDtcblx0XHRyaWdodDogMDtcblx0XHR0b3A6IDA7XG5cdFx0Ym90dG9tOiAwO1xuXHRcdGJvcmRlci1yYWRpdXM6IDUwJTtcblx0XHRiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQoMTgwZGVnLCAjRkY3RjE1IDUwJSwgI0ZGN0IyRiAxMDAlKTtcblx0XHRib3gtc2hhZG93OiAwIDhweCAxMnB4IDAgcmdiYSgyNTUsMTI3LDIxLDAuMDgpO1xuXHRcdG9wYWNpdHk6IDA7XG5cdFx0dHJhbnNpdGlvbjogb3BhY2l0eSAwLjJzO1xuXHR9XG5cblx0LmMtY2FyZDpob3ZlciAmIHtcblx0XHRib3JkZXItY29sb3I6IHBhbGV0dGUocHJpbWFyeSwgNTAwKTtcblx0XHRjb2xvcjogd2hpdGU7XG5cblx0XHQmOmFmdGVyIHtcblx0XHRcdG9wYWNpdHk6IDE7XG5cblx0XHR9XG5cdH1cblxuXHRAaW5jbHVkZSBtcSgkbWF4OiBtYXAtZ2V0KCRjLWNhcmQsICdicmVha3BvaW50JykpIHtcblx0XHRib3JkZXI6IG5vbmU7XG5cdFx0Y29sb3I6IHdoaXRlO1xuXG5cdFx0JjphZnRlciB7XG5cdFx0XHRkaXNwbGF5OiBub25lIDtcblx0XHR9XG5cdH1cbn1cblxuLmMtY2FyZF9fYnV0dG9uLWljb24ge1xuXHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdGxlZnQ6IDFweDtcblx0ei1pbmRleDogMjtcblx0dHJhbnNmb3JtOiByb3RhdGUoMjcwZGVnKTtcbn1cblxuLmMtY2FyZF9fY2FyIHtcblx0cG9zaXRpb246IGFic29sdXRlO1xuXHR6LWluZGV4OiAyO1xuXHRsZWZ0OiBjYWxjKDUwJSAtIDQ0cHgpO1xuXHRvcGFjaXR5OiAwO1xuXHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTQwcHgpO1xuXHR0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMHMgZWFzZS1vdXQgMC4ycywgb3BhY2l0eSAwLjJzIGxpbmVhcjtcblxuXHQuYy1jYXJkOmhvdmVyICYge1xuXHRcdG9wYWNpdHk6IDE7XG5cdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApO1xuXHRcdHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjNzIGVhc2Utb3V0LCBvcGFjaXR5IDAuNHMgbGluZWFyO1xuXHR9XG5cblx0QGluY2x1ZGUgbXEoJG1heDogbWFwLWdldCgkYy1jYXJkLCAnYnJlYWtwb2ludCcpKSB7XG5cdFx0ZGlzcGxheTogbm9uZTtcblx0fVxufVxuXG4uYy1jYXJkLS1oYXMtYWN0aW9uIHtcblx0ei1pbmRleDogMDtcbn1cblxuLmMtY2FyZF9fdGl0bGUge1xuXHRAaW5jbHVkZSBmcygxN3B4LCAyNHB4KTtcblx0Zm9udC13ZWlnaHQ6IDYwMDtcblx0Y29sb3I6IHBhbGV0dGUoc2Vjb25kYXJ5LCA2MDApO1xuXHRmb250LWZhbWlseTogJGZvbnQtcG9wcGlucztcblx0bWFyZ2luLWJvdHRvbTogc3BhY2UoMSk7XG5cblx0QGluY2x1ZGUgbXEobWFwLWdldCgkYy1jYXJkLCAnYnJlYWtwb2ludCcpKSB7XG5cdFx0bWFyZ2luLWJvdHRvbTogc3BhY2UoMik7XG5cdH1cbn1cbiIsIi8vIENvbXBvbmVudCBzZXR0aW5nczogQ2xvc2Vcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4kYy1jbG9zZTogKFxuXHQnY29sb3InOiAgcGFsZXR0ZShwcmltYXJ5LCA1MDApLFxuKTtcblxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cblxuLmMtY2xvc2Uge1xuXHRkaXNwbGF5OiBmbGV4O1xuXHRhbGlnbi1pdGVtczogY2VudGVyO1xuXHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcblx0YWxpZ24tc2VsZjogY2VudGVyO1xuXHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdHdpZHRoOiBzcGFjZSg1KTtcblx0aGVpZ2h0OiBzcGFjZSg1KTtcblx0cGFkZGluZzogMDtcblx0YmFja2dyb3VuZDogbm9uZTtcblx0Ym9yZGVyOiBub25lO1xuXHRvdXRsaW5lOiBub25lO1xuXHRjdXJzb3I6IHBvaW50ZXI7XG5cdHRyYW5zaXRpb246IHRyYW5zZm9ybSAxODBtcyBlYXNlLW91dDtcblxuXHQmOmZvY3VzIHtcblx0XHRib3gtc2hhZG93OiAwIDAgM3B4IDJweCBtYXAtZ2V0KCRjLWNsb3NlLCAnY29sb3InKTtcblx0fVxuXG5cdCY6YWZ0ZXIsXG5cdCY6YmVmb3JlIHtcblx0XHRjb250ZW50OiAnJztcblx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0dG9wOiAyMHB4O1xuXHRcdHJpZ2h0OiAyMCU7XG5cdFx0bGVmdDogMjAlO1xuXHRcdGhlaWdodDogMnB4O1xuXHRcdG1hcmdpbi10b3A6IC0ycHg7XG5cdFx0cG9pbnRlci1ldmVudHM6IG5vbmU7XG5cdFx0YmFja2dyb3VuZDogbWFwLWdldCgkYy1jbG9zZSwgJ2NvbG9yJyk7XG5cdFx0Ym9yZGVyLXJhZGl1czogM3B4O1xuXHR9XG5cdCY6YmVmb3JlIHtcblx0XHR0cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZyk7XG5cdH1cblx0JjphZnRlciB7XG5cdFx0dHJhbnNmb3JtOiByb3RhdGUoLTQ1ZGVnKTtcblx0fVxuXG5cdCY6aG92ZXIge1xuXHRcdHRyYW5zZm9ybTogc2NhbGUoMS4yKTtcblx0fVxufSIsIi8vIENvbXBvbmVudCBzZXR0aW5nczogQ29ubmVjdFxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbiRjLWNvbm5lY3Q6IChcblx0J2NvbG9yJzpcdFx0cGFsZXR0ZShuZXV0cmFsLCA4MDApLFxuXHQnY29sb3ItYWx0JzpcdHBhbGV0dGUobmV1dHJhbCwgNTAwKSxcbik7XG5cbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG5cblxuLmMtY29ubmVjdCB7XG5cdGRpc3BsYXk6IGlubGluZS1mbGV4O1xuXHRmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuXHRhbGlnbi1pdGVtczogY2VudGVyO1xuXG5cdEBpbmNsdWRlIG1xKG0pe1xuXHRcdGZsZXgtZGlyZWN0aW9uOiByb3c7XG5cdH1cbn1cblxuXG4uYy1jb25uZWN0X19waG9uZSB7XG5cdEBpbmNsdWRlIGRpc2FibGVPdXRsaW5lRm9yTW91c2U7XG5cdEBpbmNsdWRlIGZzKDE4KTtcblx0Zm9udC13ZWlnaHQ6IGJvbGQ7XG5cdHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblx0Y29sb3I6IG1hcC1nZXQoJGMtY29ubmVjdCwgJ2NvbG9yJyk7XG5cdHRyYW5zaXRpb246IG9wYWNpdHkgMzAwbXM7XG5cblx0Jjpob3ZlciB7XG5cdFx0b3BhY2l0eTogMC43O1xuXHRcdHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuXHR9XG5cblx0Jjpmb2N1cyB7XG5cdFx0b3V0bGluZS1jb2xvcjogY3VycmVudENvbG9yO1xuXHRcdG91dGxpbmUtc3R5bGU6IHNvbGlkO1xuXHRcdG91dGxpbmUtb2Zmc2V0OiAxcHg7XG5cdFx0b3V0bGluZS13aWR0aDogMnB4O1xuXHR9XG59XG5cblxuLmMtY29ubmVjdF9fb3Ige1xuXHRtYXJnaW46IDAgc3BhY2UoMik7XG5cdGNvbG9yOiBtYXAtZ2V0KCRjLWNvbm5lY3QsICdjb2xvci1hbHQnKTtcblxuXHRAaW5jbHVkZSBtcSgkbWF4OiBtKSB7XG5cdFx0bWFyZ2luOiBzcGFjZSgxKSAwIHNwYWNlKDIpO1xuXHR9XG59IiwiLy8gQ29tcG9uZW50IHNldHRpbmdzOiBEYXRhXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuJGMtZGF0YTogKFxuICAnY29sb3InOlx0XHRcdHBhbGV0dGUobmV1dHJhbCwgODAwKSxcbiAgJ2NvbG9yLWFsdCc6XHRcdHBhbGV0dGUobmV1dHJhbCwgNTAwKSxcbiAgJ2JnY29sb3ItaG92ZXInOlx0c2NhbGUtY29sb3IocGFsZXR0ZShzZWNvbmRhcnksIDUwMCksICRsaWdodG5lc3M6IC0yMCUpLFxuKTtcblxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi5jLWRhdGEge1xuXHRtYXJnaW46IHNwYWNlKDIpIDA7XG59XG5cbi5jLWRhdGFfX2xpbmUge1xuXHRkaXNwbGF5OiBmbGV4O1xufVxuXG4uYy1kYXRhX19sYWJlbCB7XG5cdG1pbi13aWR0aDogc3BhY2UoOCk7XG5cdGZvbnQtd2VpZ2h0OiBib2xkO1xuXHRjb2xvcjogbWFwLWdldCgkYy1kYXRhLCAnY29sb3InKTtcbn1cblxuLmMtZGF0YV9fdmFsdWUge1xuICAgIGNvbG9yOiBtYXAtZ2V0KCRjLWRhdGEsICdjb2xvci1hbHQnKTtcblx0dGV4dC1kZWNvcmF0aW9uOiBub25lO1xuXG5cdCZbaHJlZl0ge1xuXHRcdEBpbmNsdWRlIGRpc2FibGVPdXRsaW5lRm9yTW91c2U7XG5cblx0XHQmOmhvdmVyIHtcblx0XHRcdHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuXHRcdH1cblx0XHQmOmZvY3VzIHtcblx0XHRcdG91dGxpbmUtY29sb3I6IGN1cnJlbnRDb2xvcjtcblx0XHRcdG91dGxpbmUtc3R5bGU6IHNvbGlkO1xuXHRcdFx0b3V0bGluZS1vZmZzZXQ6IDFweDtcblx0XHRcdG91dGxpbmUtd2lkdGg6IDJweDtcblx0XHR9XG5cdH1cbn0iLCIuYy1kYXRlLWxhYmVsIHtcblx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXHRwYWRkaW5nOiBzcGFjZSgwLjUpIHNwYWNlKDMpO1xuXHRmb250LXdlaWdodDogYm9sZDtcbn1cblxuXG4uYy1kYXRlLWxhYmVsLS1zZWNvbmRhcnkge1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiBwYWxldHRlKHNlY29uZGFyeSwgNTAwKTtcblx0Y29sb3I6IHBhbGV0dGUobmV1dHJhbCwgMCk7XG59XG5cblxuLmMtZGF0ZS1sYWJlbF9fZGF5IHtcblx0QGluY2x1ZGUgZnMoMjQpO1xuXHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IC8vIHRpbWUgZWxlbWVudCBkb2Vzbid0IHNlZW0gdG8gaGF2ZSBhIGRlZmF1bHRcbn1cblxuXG4uYy1kYXRlLWxhYmVsX19tb250aCB7XG5cdEBpbmNsdWRlIGZzKDE4KTtcblx0ZGlzcGxheTogaW5saW5lLWJsb2NrOyAvLyB0aW1lIGVsZW1lbnQgZG9lc24ndCBzZWVtIHRvIGhhdmUgYSBkZWZhdWx0XG59XG5cbi5jLWRhdGUtbGFiZWxfX3NlcGVyYXRvciB7XG5cdEBpbmNsdWRlIGZzKDEyKTtcbn0iLCIvLyBDb21wb25lbnQgc2V0dGluZ3M6IENhcmRcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4kYy1ldmVudC1jYXJkOiAoXG5cdCdiZ2NvbG9yLWhvdmVyJzpcdFx0cGFsZXR0ZShwcmltYXJ5LCA1MDApLFxuXHQnY29sb3ItaG92ZXInOlx0XHQgICAgcGFsZXR0ZShuZXV0cmFsLCAwKSxcbik7XG5cbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG5cbi5jLWV2ZW50LWNhcmQge1xuXHRAaW5jbHVkZSBkaXNhYmxlT3V0bGluZUZvck1vdXNlO1xuXHRkaXNwbGF5OiBmbGV4O1xuXHRmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuXHRoZWlnaHQ6IDEwMCU7XG5cdHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRvdmVyZmxvdzogaGlkZGVuOyAvLyBiZWNhdXNlIG9mIHBzZXVkbyBlbGVtZW50XG5cdHotaW5kZXg6IDA7XG5cblx0Jjpmb2N1cyB7XG5cdFx0b3V0bGluZS1jb2xvcjogbWFwLWdldCgkYy1ldmVudC1jYXJkLCdiZ2NvbG9yLWhvdmVyJyk7XG5cdFx0b3V0bGluZS1zdHlsZTogc29saWQ7XG5cdFx0b3V0bGluZS1vZmZzZXQ6IDFweDtcblx0XHRvdXRsaW5lLXdpZHRoOiAycHg7XG5cdH1cbn1cblxuXG4uYy1ldmVudC1jYXJkX19waWN0dXJlIHtcblx0d2lkdGg6IDEwMCU7XG5cdGZsZXg6IG5vbmU7XG5cdGRpc3BsYXk6IGJsb2NrO1xuXHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cblx0Jjo6YmVmb3JlIHtcblx0XHRjb250ZW50OiAnJztcblx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0ei1pbmRleDogMDtcblx0XHR0b3A6IDA7XG5cdFx0cmlnaHQ6IDA7XG5cdFx0Ym90dG9tOiAwO1xuXHRcdGxlZnQ6IDA7XG5cdFx0YmFja2dyb3VuZC1jb2xvcjogcmdiYShibGFjaywgMC4yNSk7XG5cdFx0YmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHRvIGJvdHRvbSwgcmdiYShtYXAtZ2V0KCRjLWV2ZW50LWNhcmQsJ2JnY29sb3ItaG92ZXInKSwgMC43KSwgcmdiYShtYXAtZ2V0KCRjLWV2ZW50LWNhcmQsJ2JnY29sb3ItaG92ZXInKSwgMC4xKSk7XG5cdFx0b3BhY2l0eTogMDtcblx0XHRwb2ludGVyLWV2ZW50czogbm9uZTtcblx0XHR0cmFuc2l0aW9uOiBhbGwgMjAwbXMgbGluZWFyO1xuXHR9XG5cblx0LmMtZXZlbnQtY2FyZDpob3ZlciAmIHtcblx0XHQmOjpiZWZvcmUge1xuXHRcdFx0b3BhY2l0eTogMTtcblx0XHR9XG5cdH1cbn1cblxuXG4uYy1ldmVudC1jYXJkX19pbWcge1xuXHRvYmplY3QtZml0OiBjb3Zlcjtcblx0d2lkdGg6IDEwMCU7XG5cdGhlaWdodDogYXV0bztcbn1cblxuXG4uYy1ldmVudC1jYXJkX19kYXRlIHtcblx0cG9zaXRpb246IGFic29sdXRlO1xuXHR6LWluZGV4OiAxO1xuXHRib3R0b206IDA7XG5cdGxlZnQ6IDA7XG5cdGJhY2tncm91bmQtY29sb3I6IHBhbGV0dGUoc2Vjb25kYXJ5LCA1MDApO1xuXHRjb2xvcjogcGFsZXR0ZShuZXV0cmFsLCAwKTtcblx0dHJhbnNmb3JtLW9yaWdpbjogbGVmdCBib3R0b207XG5cdHRyYW5zaXRpb246IGFsbCAyMDBtcyBsaW5lYXI7XG5cblx0LmMtZXZlbnQtY2FyZDpob3ZlciAmIHtcblx0XHRiYWNrZ3JvdW5kLWNvbG9yOiBtYXAtZ2V0KCRjLWV2ZW50LWNhcmQsICdiZ2NvbG9yLWhvdmVyJyk7XG5cdFx0Y29sb3I6IG1hcC1nZXQoJGMtZXZlbnQtY2FyZCwgJ2NvbG9yLWhvdmVyJyk7XG5cdH1cbn1cblxuXG4uYy1ldmVudC1jYXJkX19pbmZvIHtcblx0ZmxleDogMTtcblx0cGFkZGluZzogc3BhY2UoMikgc3BhY2UoMyk7XG5cdGJhY2tncm91bmQtY29sb3I6IHBhbGV0dGUobmV1dHJhbCwgMTAwKTtcblx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHR0cmFuc2l0aW9uOiBhbGwgMjAwbXMgbGluZWFyO1xuXG5cdC5jLWV2ZW50LWNhcmQ6aG92ZXIgJiB7XG5cdFx0YmFja2dyb3VuZC1jb2xvcjogbWFwLWdldCgkYy1ldmVudC1jYXJkLCdiZ2NvbG9yLWhvdmVyJyk7XG5cdH1cbn1cblxuXG4uYy1ldmVudC1jYXJkX190aXRsZSB7XG5cdEBpbmNsdWRlIGZzKDE1KTtcblx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHR6LWluZGV4OiAyO1xuXHRmb250LXdlaWdodDogYm9sZDtcblx0Y29sb3I6IHBhbGV0dGUobmV1dHJhbCwgODAwKTtcblx0dHJhbnNpdGlvbjogYWxsIDIwMG1zIGxpbmVhcjtcblxuXHQuYy1ldmVudC1jYXJkOmhvdmVyICYge1xuXHRcdGNvbG9yOiBtYXAtZ2V0KCRjLWV2ZW50LWNhcmQsICdjb2xvci1ob3ZlcicpICFpbXBvcnRhbnQ7XG5cdH1cbn1cblxuXG4uYy1ldmVudC1jYXJkX19zdWJ0aXRsZSB7XG5cdEBpbmNsdWRlIGZzKDE1KTtcblx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHR6LWluZGV4OiAyO1xuXHRjb2xvcjogcGFsZXR0ZShuZXV0cmFsLCA0MDApO1xuXHR0cmFuc2l0aW9uOiBhbGwgMjAwbXMgbGluZWFyO1xuXG5cdC5jLWV2ZW50LWNhcmQ6aG92ZXIgJiB7XG5cdFx0Y29sb3I6IG1hcC1nZXQoJGMtZXZlbnQtY2FyZCwgJ2NvbG9yLWhvdmVyJykgIWltcG9ydGFudDtcblx0fVxufVxuXG5cbi5jLWV2ZW50LWNhcmRfX3R5cGUge1xuXHRAaW5jbHVkZSBmcygxNSk7XG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0ei1pbmRleDogMjtcblx0bWFyZ2luLXRvcDogc3BhY2UoMSk7XG5cdGNvbG9yOiBwYWxldHRlKG5ldXRyYWwsIDMwMCk7XG5cdHRyYW5zaXRpb246IGFsbCAyMDBtcyBsaW5lYXI7XG5cblx0LmMtZXZlbnQtY2FyZDpob3ZlciAmIHtcblx0XHRjb2xvcjogbWFwLWdldCgkYy1ldmVudC1jYXJkLCAnY29sb3ItaG92ZXInKSAhaW1wb3J0YW50O1xuXHR9XG59IiwiLy8gQ29tcG9uZW50IHNldHRpbmdzOiBmaWxlXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuJGMtZmlsZS11cGxvYWQ6IChcblx0J2NvbG9yJzpcdFx0XHRwYWxldHRlKG5ldXRyYWwsIDkwMCksXG5cdCdiZ2NvbG9yJzpcdFx0XHRwYWxldHRlKG5ldXRyYWwsIDApLFxuXHQnYmdjb2xvci1ob3Zlcic6XHRzY2FsZS1jb2xvcihwYWxldHRlKHNlY29uZGFyeSksICRsaWdodG5lc3M6IC0yMCUpLFxuKTtcblxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cblxuLmMtZmlsZS11cGxvYWRfX21haW4ge1xuXHRwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cblxuLmMtZmlsZS11cGxvYWRfX2lucHV0IHtcblx0b3BhY2l0eTogMDtcblx0cG9zaXRpb246IGFic29sdXRlO1xuXHR0b3A6IDA7XG5cdGxlZnQ6IDA7XG59XG5cblxuLmMtZmlsZS11cGxvYWRfX2J1dHRvbiB7XG5cdEBpbmNsdWRlIGJvcmRlci1yYWRpdXMobSk7XG5cdEBpbmNsdWRlIGZzKDE0KTtcblx0Zm9udC13ZWlnaHQ6IDUwMDtcblx0ZGlzcGxheTogaW5saW5lLWZsZXg7XG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cdGp1c3RpZnktY29udGVudDogY2VudGVyO1xuXHRjb2xvcjogbWFwLWdldCgkYy1maWxlLXVwbG9hZCwgJ2NvbG9yJyk7XG5cdGJhY2tncm91bmQtY29sb3I6IG1hcC1nZXQoJGMtZmlsZS11cGxvYWQsICdiZ2NvbG9yJyk7XG5cdGJvcmRlcjogMXB4IHNvbGlkIHBhbGV0dGUobmV1dHJhbCwgNTAwKTtcblx0bWFyZ2luLXJpZ2h0OiBzcGFjZSgxKTtcblx0cGFkZGluZzogc3BhY2UoMikgc3BhY2UoMyk7XG5cdHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0b3ZlcmZsb3c6IGhpZGRlbjtcblx0Y3Vyc29yOiBwb2ludGVyO1xuXHR0ZXh0LWRlY29yYXRpb246IG5vbmU7XG5cdHRyYW5zaXRpb246IGFsbCAxNTBtcztcblxuXHQmOjphZnRlciB7XG5cdFx0Y29udGVudDogJyc7XG5cdFx0YmFja2dyb3VuZC1pbWFnZTogdXJsKC9pbWcvYWRkLnN2Zyk7XG5cdFx0YmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcblx0XHR3aWR0aDogMTZweDtcblx0XHRoZWlnaHQ6IDE2cHg7XG5cdFx0bWFyZ2luLWxlZnQ6IHNwYWNlKDIpO1xuXHR9XG5cblx0Jjpob3ZlciB7XG5cdFx0b3BhY2l0eTogMC43O1xuXHR9XG59XG5cblxuLmMtZmlsZS11cGxvYWRfX2xpc3Qge1xuXHRtYXJnaW4tbGVmdDogMDtcblx0bWFyZ2luLWJvdHRvbTogc3BhY2UoMyk7XG5cdGxpc3Qtc3R5bGU6IG5vbmU7XG5cdG92ZXJmbG93OiBoaWRkZW47XG5cblx0JiA+IGxpIHtcblx0XHRkaXNwbGF5OiBmbGV4O1xuXHRcdGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcblx0XHRhbGlnbi1pdGVtczogY2VudGVyO1xuXHRcdGJvcmRlci1ib3R0b206IDFweCBzb2xpZCBwYWxldHRlKG5ldXRyYWwsIDMwMCk7XG5cdFx0cGFkZGluZzogc3BhY2UoMC41KSAwO1xuXHRcdGFuaW1hdGlvbjogZXhwYW5kIC41cyBlYXNlLWluLW91dDtcblxuXHRcdCY6OmJlZm9yZSB7XG5cdFx0XHRjb250ZW50OiAnJztcblx0XHRcdGRpc3BsYXk6IGZsZXg7XG5cdFx0XHRhbGlnbi1pdGVtczogY2VudGVyO1xuXHRcdFx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG5cdFx0XHR3aWR0aDogMTZweDtcblx0XHRcdGhlaWdodDogMTZweDtcblx0XHRcdG1hcmdpbi1yaWdodDogc3BhY2UoMSk7XG5cdFx0XHRiYWNrZ3JvdW5kOiB1cmwoXCIvaW1nL2ZpbGUuc3ZnXCIpIG5vLXJlcGVhdDtcblx0XHR9XG5cblx0XHQvLyBkZWxldGUgYnV0dG9uXG5cdFx0JiA+IGJ1dHRvbiB7XG5cdFx0XHRmb250LXNpemU6IDI0cHg7XG5cdFx0XHRsaW5lLWhlaWdodDogMTZweDtcblx0XHRcdGNvbG9yOiBwYWxldHRlKG5ldXRyYWwsIDEwMDApO1xuXHRcdFx0bWFyZ2luLWxlZnQ6IGF1dG87XG5cdFx0XHRib3JkZXI6IG5vbmU7XG5cdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcblx0XHRcdGN1cnNvcjogcG9pbnRlcjtcblx0XHRcdG91dGxpbmU6IG5vbmU7XG5cdFx0XHR0cmFuc2l0aW9uOiBjb2xvciAxNTBtcyBsaW5lYXI7XG5cblx0XHRcdCY6aG92ZXIge1xuXHRcdFx0XHRjb2xvcjogcmVkO1xuXHRcdFx0fVxuXG5cdFx0XHQmOjpiZWZvcmUge1xuXHRcdFx0XHRjb250ZW50OiAnXFwwMEQ3Jztcblx0XHRcdH1cblx0XHR9XG5cdH1cbn1cblxuXG4uYy1maWxlLXVwbG9hZF9fbm90ZSB7XG5cdGNvbG9yOiBwYWxldHRlKG5ldXRyYWwsIDQwMCk7XG59XG5cblxuQGtleWZyYW1lcyBleHBhbmQge1xuXHRmcm9tIHtcblx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTEwMCUpO1xuXHRcdHRyYW5zZm9ybS1vcmlnaW46IHRvcDtcblx0XHRvcGFjaXR5OiAwO1xuXHRcdGJhY2tncm91bmQ6IHBhbGV0dGUoZmVlZGJhY2ssIGFjdGlvbik7XG5cdH1cbn1cbiIsIi8vIENvbXBvbmVudCBzZXR0aW5nczogRm9ybSBncm91cFxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbiRjLWZvcm0tZ3JvdXA6IChcbiAgJ2NvbG9yJzpcdFx0XHRcdFx0ICAgIHBhbGV0dGUobmV1dHJhbCwgNDAwKSxcbiAgJ2Vycm9yLWNvbG9yJzpcdFx0XHRcdHBhbGV0dGUoZmVlZGJhY2ssIGFjdGlvbiksXG4pO1xuXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuXG4uYy1mb3JtLWdyb3VwX19sYWJlbCB7XG4gIEBpbmNsdWRlIGZzKDE1KTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBhZGRpbmc6IHNwYWNlKDAuNSkgMDtcbiAgY29sb3I6IG1hcC1nZXQoJGMtZm9ybS1ncm91cCwgJ2NvbG9yJyk7XG59XG5cbi5jLWZvcm0tZ3JvdXBfX2Vycm9yIHtcbiAgZGlzcGxheTogbm9uZTtcblxuICAuaGFzLWVycm9yICY6bm90KDplbXB0eSkge1xuICAgIEBpbmNsdWRlIGZzKDE0KTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwYWRkaW5nOiBzcGFjZSgxKTtcbiAgICBjb2xvcjogbWFwLWdldCgkYy1mb3JtLWdyb3VwLCAnZXJyb3ItY29sb3InKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKG1hcC1nZXQoJGMtZm9ybS1ncm91cCwgJ2Vycm9yLWNvbG9yJyksIDAuMSk7XG4gICAgYm9yZGVyOiAxcHggc29saWQgbWFwLWdldCgkYy1mb3JtLWdyb3VwLCAnZXJyb3ItY29sb3InKTtcbiAgICBib3JkZXItdG9wOiBub25lO1xuICAgIGJvcmRlci1yYWRpdXM6IDAgMCBtYXAtZ2V0KCRib3JkZXItcmFkaXVzLCBzKSBtYXAtZ2V0KCRib3JkZXItcmFkaXVzLCBzKTtcbiAgfVxufSIsIi8vIENvbXBvbmVudCBzZXR0aW5nczogRm9ybSBmZWVkYmFja1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbiRjLWZvcm0tZmVlZGJhY2s6IChcbiAgJ2NvbG9yJzpcdFx0cGFsZXR0ZShuZXV0cmFsLCA4MDApLFxuICAnYmdjb2xvcic6XHRyZ2JhKHBhbGV0dGUoZmVlZGJhY2ssIHdhcm5pbmcpLCAwLjIpLFxuICAnYm9yZGVyJzogXHRwYWxldHRlKGZlZWRiYWNrLCB3YXJuaW5nKSxcbik7XG5cbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG5cbi5jLWZvcm0tZmVlZGJhY2sge1xuICBAaW5jbHVkZSBmcygxNSk7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMocyk7XG4gIG1hcmdpbjogMCAwIHNwYWNlKDEpO1xuICBwYWRkaW5nOiBzcGFjZSgzKSBzcGFjZSg0KTtcbiAgY29sb3I6IG1hcC1nZXQoJGMtZm9ybS1mZWVkYmFjaywgJ2NvbG9yJyk7XG4gIGJhY2tncm91bmQtY29sb3I6IG1hcC1nZXQoJGMtZm9ybS1mZWVkYmFjaywgJ2JnY29sb3InKTtcbiAgYm9yZGVyOiAxcHggc29saWQgbWFwLWdldCgkYy1mb3JtLWZlZWRiYWNrLCAnYm9yZGVyJyk7XG5cbiAgJjpub3QoOmVtcHR5KSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cblxuICAmOmJlZm9yZXtcbiAgICBjb250ZW50OiBhdHRyKGRhdGEtZmVlZGJhY2spO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBtYXJnaW4tbGVmdDogc3BhY2UoLTIpO1xuICAgIG1hcmdpbi1ib3R0b206IHNwYWNlKDEpO1xuICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gIH1cblxuICBsaTo6Zmlyc3QtbGV0dGVyIHtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICB9XG59IiwiLy8gQ29tcG9uZW50IHNldHRpbmdzOiBIYW1idXJnZXJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLmMtaGFtYnVyZ2VyIHtcblx0ZGlzcGxheTogZmxleDtcblx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cdGFsaWduLXNlbGY6IGNlbnRlcjtcblx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHR3aWR0aDogc3BhY2UoOCk7XG5cdGhlaWdodDogc3BhY2UoOCk7XG5cdHBhZGRpbmc6IDA7XG5cdGNvbG9yOiBwYWxldHRlKHByaW1hcnksIDUwMCk7XG5cdGJhY2tncm91bmQ6IG5vbmU7XG5cdGJvcmRlcjogbm9uZTtcblx0b3V0bGluZTogbm9uZTtcblx0Y3Vyc29yOiBwb2ludGVyO1xuXG5cdCY6Zm9jdXMge1xuXHRcdG91dGxpbmUtY29sb3I6IGN1cnJlbnRDb2xvcjtcblx0XHRvdXRsaW5lLXN0eWxlOiBzb2xpZDtcblx0XHRvdXRsaW5lLW9mZnNldDogMXB4O1xuXHRcdG91dGxpbmUtd2lkdGg6IDJweDtcblx0fVxuXG5cbn1cblxuLmMtaGFtYnVyZ2VyX19pY29uIHtcblx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRkaXNwbGF5OiBmbGV4O1xuXHRhbGlnbi1pdGVtczogY2VudGVyO1xuXHRqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xuICBcdHdpZHRoOiAyNHB4O1xuXHRoZWlnaHQ6IDE4cHg7XG5cblx0JiA+IHNwYW4sXG5cdCY6YWZ0ZXIsXG5cdCY6YmVmb3JlIHtcblx0XHRjb250ZW50OiAnJztcblx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0d2lkdGg6IDI0cHg7XG5cdFx0cmlnaHQ6IDA7XG5cdFx0aGVpZ2h0OiAycHg7XG5cdFx0bWFyZ2luLXRvcDogLTJweDtcblx0XHRwb2ludGVyLWV2ZW50czogbm9uZTtcblx0XHRiYWNrZ3JvdW5kOiBjdXJyZW50Q29sb3I7XG5cdFx0Ym9yZGVyLXJhZGl1czogM3B4O1xuXHRcdHRyYW5zZm9ybS1vcmlnaW46IHJpZ2h0O1xuXHRcdHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybTtcblx0XHR0cmFuc2l0aW9uLWR1cmF0aW9uOiAxNTBtcztcblx0XHR0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1vdXQ7XG5cdFx0dHJhbnNpdGlvbi1kZWxheTogMTAwbXM7XG5cdH1cblxuXHQmOmJlZm9yZSB7XG5cdFx0dG9wOiAwO1xuXHRcdC8vdHJhbnNmb3JtOiBzY2FsZVgoMC44KTtcblx0fVxuXG5cdCY6YWZ0ZXIge1xuXHRcdGJvdHRvbTogMDtcblx0XHR0cmFuc2Zvcm06IHNjYWxlWCgwLjUpO1xuXHR9XG5cblx0Jjpob3ZlciB7XG5cdFx0JiA+IHNwYW4ge1xuXHRcdFx0dHJhbnNmb3JtOiBzY2FsZVgoMC44KTtcblx0XHR9XG5cdFx0JjphZnRlcixcblx0XHQmOmJlZm9yZSB7XG5cdFx0XHR0cmFuc2Zvcm06IHNjYWxlWCgxKTtcblx0XHR9XG5cdH1cblxuXHQuaXMtb3ZlcmxheS1tZW51LWFjdGl2ZSAmIHtcblx0XHQmID4gc3BhbiB7XG5cdFx0XHR0cmFuc2Zvcm06IHNjYWxlWCgxKSAhaW1wb3J0YW50O1xuXHRcdH1cblx0XHQmOmJlZm9yZSB7XG5cdFx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoM3B4KSBzY2FsZVgoMSkgIWltcG9ydGFudDtcblx0XHRcdHRyYW5zaXRpb24tZGVsYXk6IDBzO1xuXHRcdH1cblx0XHQmOmFmdGVyIHtcblx0XHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtM3B4KSBzY2FsZVgoMSkgIWltcG9ydGFudDtcblx0XHRcdHRyYW5zaXRpb24tZGVsYXk6IDBzO1xuXHRcdH1cblx0fVxufSIsIi5jLWhlYWRpbmcge1xuXHRAaW5jbHVkZSBmcygzMik7XG5cdG1hcmdpbjogc3BhY2UoNSkgMDtcblx0Y29sb3I6IHBhbGV0dGUobmV1dHJhbCwgODAwKTtcbn1cblxuLmMtaGVhZGluZy0taW5kZW50IHtcblx0QGluY2x1ZGUgbXEobCkge1xuXHRcdHBhZGRpbmctbGVmdDogY29sdW1uKDEsIDEyKTtcblx0fVxufSIsIi8vIENvbXBvbmVudCBzZXR0aW5nczogSGVyb1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbiRjLWhlcm86IChcblx0J2NhcHRpb24tYmdjb2xvcic6XHRcdHJnYmEocGFsZXR0ZShuZXV0cmFsLCA5MDApLCAwLjYpLFxuXHQnY2FwdGlvbi1jb2xvcic6XHRcdHBhbGV0dGUobmV1dHJhbCwgMCksXG4pO1xuXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuXG4uYy1oZXJvIHtcblx0QGluY2x1ZGUgbXEobSkge1xuXHRcdEBpbmNsdWRlIGNvbnRhaW47XG5cdH1cbn1cblxuLmMtaGVyb19fbWFpbiB7XG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0YmFja2dyb3VuZC1jb2xvcjogcGFsZXR0ZShuZXV0cmFsLCAwKTtcbn1cblxuLmMtaGVyb19fc2xpZGVyIHtcblx0b3ZlcmZsb3c6IGhpZGRlbjtcblx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRwYWRkaW5nLWJvdHRvbTogNTUuNTU2JTsgLy8gUmF0aW8gdXNlZCBmb3IgbW9iaWxlIGltYWdlXG5cblx0QGluY2x1ZGUgbXEobSwgbCkge1xuXHRcdHBhZGRpbmctYm90dG9tOiA1MCU7IC8vIFJhdGlvIHVzZWQgZm9yIGltYWdlXG5cdH1cbn1cblxuLmMtaGVyb19fcGljdHVyZSB7XG5cdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0dG9wOiAwO1xuXHRsZWZ0OiAwO1xuXHRvcGFjaXR5OiAwO1xuXHR0cmFuc2l0aW9uLXByb3BlcnR5OiBvcGFjaXR5LCBmaWx0ZXI7XG5cdHRyYW5zaXRpb24tZHVyYXRpb246IDUwMG1zO1xuXHR0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyO1xuXHRmaWx0ZXI6IGJsdXIoNXB4KTtcblxuXHQmLmlzLWFjdGl2ZSB7XG5cdFx0b3BhY2l0eTogMTtcblx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCkgc2NhbGUoMSk7XG5cdFx0ZmlsdGVyOiBub25lO1xuXHR9XG59XG5cbi5jLWhlcm9fX2ltYWdlIHtcblx0d2lkdGg6IDEwMCU7XG59XG5cbi5jLWhlcm9fX2NhcHRpb24ge1xuXHQvL0BpbmNsdWRlIGh5cGhlbmF0ZTtcblx0Zm9udC1zaXplOiBjYWxjKDE2cHggKyAxdncpO1xuXHRmb250LXdlaWdodDogYm9sZDtcblx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRwYWRkaW5nOiBzcGFjZSgzKTtcblx0bGluZS1oZWlnaHQ6IDEuMjtcblx0dGV4dC1hbGlnbjogY2VudGVyO1xuXHRjb2xvcjogbWFwLWdldCgkYy1oZXJvLCAnY2FwdGlvbi1jb2xvcicpO1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiBtYXAtZ2V0KCRjLWhlcm8sICdjYXB0aW9uLWJnY29sb3InKTtcblxuXHRAaW5jbHVkZSBtcShtKSB7XG5cdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdGJvdHRvbTogMDtcblx0XHRtYXgtd2lkdGg6IGNvbHVtbig2LDEyKTtcblx0XHRwYWRkaW5nOiBzcGFjZSg0KTtcblx0XHR0ZXh0LWFsaWduOiBsZWZ0O1xuXHR9XG5cblx0Ly8gRm9udC1sb2NrIHRvIHNjYWxlIGZvbnQtc2l6ZSBwcm9wb3J0aW9uYWxseVxuXHRAaW5jbHVkZSBtcShtLCAkYnAtbWF4KSB7XG5cdFx0cGFkZGluZzogMi42dnc7IC8vIE1hZ2ljIHZhbHVlIHNvIHRleHQgc2NhbGVzIG5pY2VseVxuXHRcdGZvbnQtc2l6ZTogMy41dnc7IC8vIE1hZ2ljIHZhbHVlIHNvIHRleHQgc2NhbGVzIG5pY2VseVxuXHRcdGxpbmUtaGVpZ2h0OiAxLjI7XG5cdH1cblxuXHRAaW5jbHVkZSBtcSgkYnAtbWF4KSB7XG5cdFx0QGluY2x1ZGUgZnMoNDgpO1xuXHRcdGxpbmUtaGVpZ2h0OiAxLjI1O1xuXHRcdHBhZGRpbmctbGVmdDogY29sdW1uKDAuNSk7XG5cdH1cbn1cblxuLmMtaGVyb19fY29udHJvbHMge1xuXHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdGJvdHRvbTogMDtcblx0cmlnaHQ6IDA7XG5cdHdpZHRoOiAxMDAlO1xuXHRwYWRkaW5nOiBzcGFjZSgxKTtcblxuXHQmOjpiZWZvcmUge1xuXHRcdGNvbnRlbnQ6ICcnO1xuXHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRib3R0b206IDA7XG5cdFx0bGVmdDogMDtcblx0XHRoZWlnaHQ6IHNwYWNlKDYpO1xuXHRcdHdpZHRoOiAxMDAlO1xuXHRcdGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCh0byB0b3AsIGJsYWNrLCB0cmFuc3BhcmVudCk7XG5cdFx0b3BhY2l0eTogMC4zO1xuXHR9XG59XG4iLCIvLyBDb21wb25lbnQgc2V0dGluZ3M6IElucHV0XG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuJGMtaW5wdXQ6IChcblx0J2NvbG9yJzpcdFx0cGFsZXR0ZShuZXV0cmFsLCA4MDApLFxuXHQnYmdjb2xvcic6XHRcdHBhbGV0dGUobmV1dHJhbCwgMCksXG5cdCdib3JkZXInOlx0XHRwYWxldHRlKHNlY29uZGFyeSwgMTAwKSxcblx0J2ZvY3VzJzpcdFx0cGFsZXR0ZShuZXV0cmFsLCA5MDApLFxuXHQnZXJyb3InOlx0XHRwYWxldHRlKGZlZWRiYWNrLCB3YXJuaW5nKSxcblx0J2JvcmRlci1zaXplJzpcdDFweCxcbik7XG5cbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG5cbi5jLWlucHV0IHtcblx0Ym9yZGVyLXJhZGl1czogNnB4O1xuXHRAaW5jbHVkZSBmcygxNSk7XG5cdHdpZHRoOiAxMDAlO1xuXHRwYWRkaW5nOiBzcGFjZSgyKTtcblx0Y29sb3I6IG1hcC1nZXQoJGMtaW5wdXQsICdjb2xvcicpO1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiBtYXAtZ2V0KCRjLWlucHV0LCAnYmdjb2xvcicpO1xuXHRib3JkZXI6IG1hcC1nZXQoJGMtaW5wdXQsICdib3JkZXItc2l6ZScpIHNvbGlkIG1hcC1nZXQoJGMtaW5wdXQsICdib3JkZXInKTtcblx0b3V0bGluZTogbm9uZTtcblxuXHQuaGFzLWVycm9yICYge1xuXHRcdGJveC1zaGFkb3c6IDAgMCA3cHggLTNweCBtYXAtZ2V0KCRjLWlucHV0LCAnZXJyb3InKTtcblx0XHRib3JkZXItY29sb3I6IG1hcC1nZXQoJGMtaW5wdXQsICdlcnJvcicpO1xuXHRcdGJhY2tncm91bmQtY29sb3I6IHJnYmEobWFwLWdldCgkYy1pbnB1dCwgJ2Vycm9yJyksIDAuMDUpO1xuXHR9XG5cblx0Jjpmb2N1cyB7XG5cdFx0Ym94LXNoYWRvdzogMCAwIDdweCAtM3B4IG1hcC1nZXQoJGMtaW5wdXQsICdmb2N1cycpO1xuXHRcdGJvcmRlci1jb2xvcjogbWFwLWdldCgkYy1pbnB1dCwgJ2ZvY3VzJyk7XG5cdH1cblxuXHRAYXQtcm9vdCB0ZXh0YXJlYSN7Jn0ge1xuXHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdHBhZGRpbmc6IHNwYWNlKDIpO1xuXHRcdG1pbi1oZWlnaHQ6IHNwYWNlKDIwKSAtIG1hcC1nZXQoJGMtaW5wdXQsICdib3JkZXItc2l6ZScpICogMjtcblx0XHRsaW5lLWhlaWdodDogc3BhY2UoMyk7XG5cdFx0cmVzaXplOiB2ZXJ0aWNhbDtcblx0fVxuXG5cdCY6OnBsYWNlaG9sZGVyIHtcblx0XHRAaW5jbHVkZSBmcygxMiwgMjQpO1xuXHRcdGNvbG9yOiBwYWxldHRlKG5ldXRyYWwsIDgwMCk7XG5cblx0fVxufVxuXG5cbiIsIi8vIENvbXBvbmVudCBzZXR0aW5nczogTGFuZ3VhZ2Vcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4kYy1sYW5ndWFnZTogKFxuXHQnYmdjb2xvcic6XHRcdFx0XHRcdHBhbGV0dGUobmV1dHJhbCwgMCksXG5cdCdiZ2NvbG9yLWFsdCc6XHRcdFx0ICBcdGRhcmtlbihwYWxldHRlKG5ldXRyYWwsIDApLCA1JSksXG5cdCdjb2xvcic6XHRcdFx0XHRcdHBhbGV0dGUobmV1dHJhbCwgNTAwKSxcblx0J2NvbG9yLWhvdmVyJzpcdFx0XHRcdHBhbGV0dGUobmV1dHJhbCwgMCksXG5cdCdiZ2NvbG9yLWhvdmVyJzpcdFx0XHRwYWxldHRlKHNlY29uZGFyeSwgNTAwKSxcbik7XG5cbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG5cbi5jLWxhbmd1YWdlIHtcblx0cG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4uYy1sYW5ndWFnZV9fYnV0dG9uIHtcblx0QGluY2x1ZGUgZnMoMTUpO1xuXHRAaW5jbHVkZSBib3JkZXItcmFkaXVzO1xuXHRkaXNwbGF5OiBmbGV4O1xuXHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdHdpZHRoOiAxMDAlO1xuXHRwYWRkaW5nOiBzcGFjZSgxKTtcblx0dGV4dC1hbGlnbjogbGVmdDtcblx0YmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG5cdGNvbG9yOiByZ2JhKG1hcC1nZXQoJHNpdGUtaGVhZGVyLCAndGV4dENvbG9yJyksIDAuNSk7XG5cdGJvcmRlcjogbm9uZTtcblx0YXBwZWFyYW5jZTogbm9uZTtcblx0dHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjE1cywgYm94LXNoYWRvdyAwLjE1cztcblxuXHQmOmZvY3VzIHtcblx0XHRvdXRsaW5lOiBub25lO1xuXHR9XG5cblx0Ly8uYy1sYW5ndWFnZTpob3ZlciAmIHtcblx0Ly9cdGNvbG9yOiBtYXAtZ2V0KCRzaXRlLWhlYWRlciwgJ3RleHRDb2xvcicpO1xuXHQvL31cbn1cblxuLmMtbGFuZ3VhZ2VfX2ljb24ge1xuXHRmbGV4OiBub25lO1xuXHRwb2ludGVyLWV2ZW50czogbm9uZTtcbn1cblxuLmMtbGFuZ3VhZ2VfX2xhYmVsIHtcblx0bWFyZ2luLWxlZnQ6IHNwYWNlKDAuNSk7XG5cdGZvbnQtd2VpZ2h0OiBib2xkO1xufVxuXG4uYy1sYW5ndWFnZV9fZHJvcGRvd24ge1xuXHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdHJpZ2h0OiAwO1xuXHR0b3A6IDEwMCU7XG5cdG1pbi13aWR0aDogMTAwJTtcblx0bWFyZ2luOiAwO1xuXHRvcGFjaXR5OiAwO1xuXHRsaXN0LXN0eWxlOiBub25lO1xuXHRib3JkZXItcmFkaXVzOiBtYXAtZ2V0KCRib3JkZXItcmFkaXVzLCBzKTtcblx0Ym94LXNoYWRvdzogMCAwIDEycHggMXB4IHJnYmEocGFsZXR0ZShuZXV0cmFsLCAxMDAwKSwgMC4xNSk7XG5cdHBvaW50ZXItZXZlbnRzOiBub25lO1xuXHR0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC01cHgsIDApO1xuXHR0cmFuc2l0aW9uOiBvcGFjaXR5IDAuM3MsIHRyYW5zZm9ybSAwLjNzO1xuXG5cdC5jLWxhbmd1YWdlOmhvdmVyICYge1xuXHRcdG9wYWNpdHk6IDE7XG5cdFx0cG9pbnRlci1ldmVudHM6IGFsbDtcblx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsMCwwKTtcblx0fVxufVxuXG4uYy1sYW5ndWFnZV9faXRlbSB7XG5cdGJhY2tncm91bmQtY29sb3I6bWFwLWdldCgkYy1sYW5ndWFnZSwgJ2JnY29sb3InKTtcblx0b3ZlcmZsb3c6IGhpZGRlbjtcblxuXHQmOm50aC1jaGlsZChldmVuKSB7XG5cdFx0YmFja2dyb3VuZC1jb2xvcjogbWFwLWdldCgkYy1sYW5ndWFnZSwgJ2JnY29sb3ItYWx0Jyk7XG5cdH1cblxuXHQmOmZpcnN0LWNoaWxkIHtcblx0XHRib3JkZXItcmFkaXVzOiBtYXAtZ2V0KCRib3JkZXItcmFkaXVzLCBzKSBtYXAtZ2V0KCRib3JkZXItcmFkaXVzLCBzKSAwIDA7XG5cdH1cblxuXHQmOmxhc3QtY2hpbGQge1xuXHRcdGJvcmRlci1yYWRpdXM6IDAgMCBtYXAtZ2V0KCRib3JkZXItcmFkaXVzLCBzKSBtYXAtZ2V0KCRib3JkZXItcmFkaXVzLCBzKTtcblx0fVxuXG5cdCY6Zmlyc3QtY2hpbGQ6bGFzdC1jaGlsZCB7XG5cdFx0Ym9yZGVyLXJhZGl1czogbWFwLWdldCgkYm9yZGVyLXJhZGl1cywgcyk7XG5cdH1cbn1cblxuLmMtbGFuZ3VhZ2VfX2xpbmsge1xuXHRkaXNwbGF5OiBibG9jaztcblx0cGFkZGluZzogc3BhY2UoMC41KSBzcGFjZSgxKTtcblx0dGV4dC1hbGlnbjogY2VudGVyO1xuXHRmb250LXdlaWdodDogYm9sZDtcblx0dGV4dC1kZWNvcmF0aW9uOiBub25lO1xuXHRjb2xvcjogbWFwLWdldCgkYy1sYW5ndWFnZSwgJ2NvbG9yJyk7XG5cdHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMC4zcztcblxuXHQmOmhvdmVyIHtcblx0XHRjb2xvcjogbWFwLWdldCgkYy1sYW5ndWFnZSwgJ2NvbG9yLWhvdmVyJyk7XG5cdFx0YmFja2dyb3VuZC1jb2xvcjogbWFwLWdldCgkYy1sYW5ndWFnZSwgJ2JnY29sb3ItaG92ZXInKTtcblx0fVxufVxuXG4iLCIvLyBDb21wb25lbnQgc2V0dGluZ3M6IE5hdlxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cblxuLypcblx0Q29sb3JzIGdldCBkZWZpbmVkIGluIF9zZXR0aW5ncy5jb25maWcuc2Nzc1xuKi9cblxuJGMtbmF2OiAoXG5cdCdsaW5rLXBhZGRpbmcnOiA0cHgsXG4pO1xuXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuXG4uYy1uYXYge1xuXHRoZWlnaHQ6IDEwMCU7XG5cdHBhZGRpbmc6IDA7XG59XG5cbi5jLW5hdl9fbGlzdCB7XG5cdGRpc3BsYXk6IGZsZXg7XG5cdGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG5cdG1hcmdpbi1sZWZ0OiAwO1xuXHRwYWRkaW5nOiAwO1xuXHRsaXN0LXN0eWxlOiBub25lO1xuXHRoZWlnaHQ6IDEwMCU7XG59XG5cblxuLmMtbmF2X19pdGVtIHtcblx0ZGlzcGxheTpmbGV4O1xuXHRAaW5jbHVkZSBmcygxNSk7XG5cdHdoaXRlLXNwYWNlOiBub3dyYXA7XG5cblx0JjpsYXN0LWNoaWxkIHtcblx0XHRtYXJnaW4tcmlnaHQ6IDA7XG5cdH1cblxuXHQ+IC5jLW5hdl9fbGluayB7XG4gICAgICBcdGRpc3BsYXk6IGZsZXg7XG5cdFx0YWxpZ24taXRlbXM6IGNlbnRlcjtcblx0XHRwYWRkaW5nOiBzcGFjZSg1KSBzcGFjZSgxLjUpO1xuXHRcdHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMC4ycywgY29sb3IgMC4ycztcblxuXHRcdCY6aG92ZXIge1xuXHRcdFx0YmFja2dyb3VuZC1jb2xvcjogcmdiYShwYWxldHRlKHNlY29uZGFyeSwgNTApLCAwLjUpO1xuXHRcdFx0Y29sb3I6IHBhbGV0dGUoc2Vjb25kYXJ5LCA1NTApO1xuXHRcdH1cblx0fVxufVxuXG4uYy1uYXZfX2l0ZW0tLWNlbnRlcmVkIHtcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcbn1cblxuLmMtbmF2X19pdGVtLS1oYXMtZHJvcGRvd24ge1xuXHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cblx0Jjpob3ZlciB7XG5cdFx0LmMtbmF2X19kcm9wZG93biB7XG5cdFx0XHRkaXNwbGF5OiBibG9jaztcblx0XHR9XG5cdH1cbn1cblxuLmMtbmF2X19kcm9wZG93bi1pY29uIHtcblx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xufVxuXG4uYy1uYXZfX2J1dHRvbi5jLWJ1dHRvbiB7XG5cdHBhZGRpbmc6IHNwYWNlKDEuNSkgMDtcbn1cblxuXG4uYy1uYXZfX2xpbmsge1xuXHRAaW5jbHVkZSBkaXNhYmxlT3V0bGluZUZvck1vdXNlO1xuXHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdHBhZGRpbmc6IG1hcC1nZXQoJGMtbmF2LCAnbGluay1wYWRkaW5nJyk7XG5cdGNvbG9yOiBtYXAtZ2V0KCRzaXRlLWhlYWRlciwgJ3RleHRDb2xvcicpO1xuXHR0ZXh0LWRlY29yYXRpb246IG5vbmU7XG5cdHVzZXItc2VsZWN0OiBub25lO1xuXHR0cmFuc2l0aW9uOiBjb2xvciAxNTBtcyBsaW5lYXI7XG5cblx0Jjpob3ZlciB7XG5cdFx0Y29sb3I6IG1hcC1nZXQoJHNpdGUtaGVhZGVyLCAndGV4dENvbG9ySG92ZXInKTtcblx0fVxuXG5cdCYuaXMtYWN0aXZlIHtcblx0XHRmb250LXdlaWdodDogNTAwO1xuXHRcdGNvbG9yOiBtYXAtZ2V0KCRzaXRlLWhlYWRlciwgJ3RleHRDb2xvckFjdGl2ZScpO1xuXG5cdFx0JjphZnRlciB7XG5cdFx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0XHRjb250ZW50OiBcIlwiO1xuXHRcdFx0d2lkdGg6IDEwMCU7XG5cdFx0XHRoZWlnaHQ6IDRweDtcblx0XHRcdGJvcmRlci1yYWRpdXM6IDJweCAycHggMCAwO1xuXHRcdFx0YmFja2dyb3VuZC1jb2xvcjogcGFsZXR0ZShzZWNvbmRhcnksIDQwMCk7XG5cdFx0XHRsZWZ0OiAwO1xuXHRcdFx0Ym90dG9tOiAtMXB4O1xuXHRcdH1cblx0fVxuXG5cdCY6Zm9jdXMge1xuXHRcdG91dGxpbmUtY29sb3I6IGN1cnJlbnRDb2xvcjtcblx0XHRvdXRsaW5lLXN0eWxlOiBzb2xpZDtcblx0XHRvdXRsaW5lLW9mZnNldDogMXB4O1xuXHRcdG91dGxpbmUtd2lkdGg6IDJweDtcblx0fVxufVxuXG4uYy1uYXZfX2Ryb3Bkb3duIHtcblx0ZGlzcGxheTogbm9uZTtcblx0cG9zaXRpb246IGFic29sdXRlO1xuXHR0b3A6IGNhbGMoMTAwJSArIDFweCk7XG5cdG1pbi13aWR0aDogbWF4LWNvbnRlbnQ7XG5cdHBhZGRpbmc6IHNwYWNlKDIpO1xuXHRib3JkZXI6IDFweCBzb2xpZCBwYWxldHRlKHNlY29uZGFyeSwgMTAwKTtcblx0Ym9yZGVyLXJhZGl1czogMCAwIDEycHggMTJweDtcblx0bWFyZ2luOiAwO1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiBwYWxldHRlKG5ldXRyYWwsIDApO1xuXHRib3gtc2hhZG93OiAwIDhweCAxNnB4IDAgcmdiYSg1OCw2MSw3MiwwLjA4KTtcbn1cblxuXG4uYy1uYXZfX2Ryb3Bkb3duLWl0ZW0ge1xuXHRoZWlnaHQ6IDM2cHg7XG5cdG1hcmdpbjowO1xuXHRwYWRkaW5nOiAwO1xuXHRsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG5cdG1hcmdpbi1ib3R0b206IHNwYWNlKDEpO1xuXHRjb2xvcjogcGFsZXR0ZShzZWNvbmRhcnksIDgwMCk7XG5cblx0JjpsYXN0LW9mLXR5cGUge1xuXHRcdG1hcmdpbi1ib3R0b206IDA7XG5cdH1cblxuXHQmOmhvdmVyIHtcblx0XHRiYWNrZ3JvdW5kLWNvbG9yOiBwYWxldHRlKHNlY29uZGFyeSwgNTApO1xuXHRcdGJvcmRlci1yYWRpdXM6IDRweDtcblx0XHRjb2xvcjogcGFsZXR0ZShzZWNvbmRhcnksIDU1MCk7XG5cdH1cbn1cblxuLmMtbmF2X19kcm9wZG93bi1pdGVtLWxpbmsge1xuXHRoZWlnaHQ6IDEwMCU7XG5cdHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblx0ZGlzcGxheTogYmxvY2s7XG5cblx0c3BhbiB7XG5cdFx0cGFkZGluZy1yaWdodDogOHB4O1xuXHR9XG59XG5cbi5jLW5hdl9fZHJvcGRvd24taXRlbS1pY29uIHtcblx0d2lkdGg6IDI0cHg7XG5cdGhlaWdodDogMjRweDtcblx0bWFyZ2luOiA2cHg7XG59IiwiLy8gQ29tcG9uZW50IHNldHRpbmdzOiBQYWdpbmF0aW9uXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuJGMtcGFnaW5hdGlvbjogKFxuXHQnY29sb3InOlx0XHRcdHBhbGV0dGUobmV1dHJhbCwgODAwKSxcblx0J2FjdGl2ZS1jb2xvcic6XHRcdHBhbGV0dGUocHJpbWFyeSwgNTAwKSxcblx0J2JvcmRlci1jb2xvcic6XHRcdHBhbGV0dGUoYm9yZGVyLCAzMDApLFxuKTtcblxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cblxuLmMtcGFnaW5hdGlvbiB7XG5cdGRpc3BsYXk6IGlubGluZS1mbGV4O1xuXHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcblx0QGluY2x1ZGUgYm9yZGVyLXJhZGl1cyhtKTtcblx0Ym9yZGVyOiAxcHggc29saWQgbWFwLWdldCgkYy1wYWdpbmF0aW9uLCAnYm9yZGVyLWNvbG9yJyk7XG5cdGxpc3Qtc3R5bGU6IG5vbmU7XG5cdG1hcmdpbi1sZWZ0OiAwO1xuXHRvdmVyZmxvdzogaGlkZGVuO1xufVxuXG4uYy1wYWdpbmF0aW9uX19pdGVtIHtcblx0ZGlzcGxheTogZmxleDtcblx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cblx0Ly8gT24gc21hbGwgc2NyZWVucyBoaWRlIGFsbCBpdGVtcyBidXQgdGhlIGFycm93cywgZmlyc3QgcGFnZSwgbGFzdCBwYWdlIGFuZCBhY3RpdmVcblx0QGluY2x1ZGUgbXEoJG1heDogbSl7XG5cdFx0ZGlzcGxheTogbm9uZTtcblxuXHRcdCY6Zmlyc3QtY2hpbGQsXG5cdFx0JjpsYXN0LWNoaWxkLFxuXHRcdCYuaXMtbGFzdC1wYWdlLFxuXHRcdCYuaXMtYWN0aXZlIHtcblx0XHRcdGRpc3BsYXk6IGZsZXg7XG5cdFx0fVxuXG5cdFx0Ji5pcy1sYXN0LXBhZ2Uge1xuXHRcdFx0cG9pbnRlci1ldmVudHM6IG5vbmU7XG5cdFx0fVxuXHR9XG5cblx0JiArICYge1xuXHRcdGJvcmRlci1sZWZ0OiAxcHggc29saWQ7XG5cdFx0Ym9yZGVyLWNvbG9yOiBpbmhlcml0O1xuXHR9XG59XG5cbi5jLXBhZ2luYXRpb25fX3RleHQsXG4uYy1wYWdpbmF0aW9uX19saW5rLFxuLmMtcGFnaW5hdGlvbl9fcHJldixcbi5jLXBhZ2luYXRpb25fX25leHR7XG5cdGRpc3BsYXk6IGZsZXg7XG5cdGp1c3RpZnktY29udGVudDogY2VudGVyO1xuXHRhbGlnbi1pdGVtczogY2VudGVyO1xuXHRtaW4td2lkdGg6IHNwYWNlKDYpO1xuXHRtaW4taGVpZ2h0OiBzcGFjZSg2KTtcblx0cGFkZGluZzogc3BhY2UoMSk7XG59XG5cbi5jLXBhZ2luYXRpb25fX3RleHQge1xuXHRjb2xvcjogbWFwLWdldCgkYy1wYWdpbmF0aW9uLCAnY29sb3InKTtcblx0b3BhY2l0eTogMC4zNTtcbn1cblxuLmMtcGFnaW5hdGlvbl9fbGluayB7XG5cdGNvbG9yOiBtYXAtZ2V0KCRjLXBhZ2luYXRpb24sICdjb2xvcicpO1xuXHR0ZXh0LWRlY29yYXRpb246IG5vbmU7XG5cdHRyYW5zaXRpb246IGNvbG9yIDAuMnMsIGJhY2tncm91bmQtY29sb3IgMC4ycztcblxuXHQmOmhvdmVyIHtcblx0XHRjb2xvcjogc2NhbGUtY29sb3IobWFwLWdldCgkYy1wYWdpbmF0aW9uLCAnY29sb3InKSwgJGxpZ2h0bmVzczogLTMwJSk7XG5cdFx0YmFja2dyb3VuZDogcGFsZXR0ZShuZXV0cmFsLCAxMDApO1xuXHR9XG5cblx0LmlzLWFjdGl2ZSA+ICYge1xuXHRcdGJveC1zaGFkb3c6IGluc2V0IDAgMCAxMHB4IC01cHggbWFwLWdldCgkYy1wYWdpbmF0aW9uLCAnYWN0aXZlLWNvbG9yJyk7XG5cdFx0Zm9udC13ZWlnaHQ6IGJvbGQ7XG5cdFx0Y29sb3I6IG1hcC1nZXQoJGMtcGFnaW5hdGlvbiwgJ2FjdGl2ZS1jb2xvcicpO1xuXHRcdGN1cnNvcjogZGVmYXVsdDtcblx0fVxufVxuXG4uYy1wYWdpbmF0aW9uX19wcmV2LFxuLmMtcGFnaW5hdGlvbl9fbmV4dCB7XG5cdHRyYW5zaXRpb246IGJhY2tncm91bmQgMC4ycztcblx0dHJhbnNmb3JtOiByb3RhdGUoMC43NXR1cm4pO1xuXG5cdCYuaXMtaW5hY3RpdmUge1xuXHRcdGNvbG9yOiByZ2JhKG1hcC1nZXQoJGMtcGFnaW5hdGlvbiwgJ2NvbG9yJyksIDAuNCk7XG5cdFx0YmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG5cdH1cbn1cblxuLmMtcGFnaW5hdGlvbl9fcHJldiB7XG5cdHRyYW5zZm9ybTogcm90YXRlKDAuMjV0dXJuKTtcbn0iLCIvKlxuICogUGFnZSB0aXRsZVxuICovXG5cbi5jLXBhZ2UtdGl0bGUge1xuICBAaW5jbHVkZSBjb250YWluO1xuICBAaW5jbHVkZSBoeXBoZW5hdGU7XG4gIHBhZGRpbmctdG9wOiBzcGFjZSgyKTtcbiAgcGFkZGluZy1ib3R0b206IHNwYWNlKDIpO1xuICBjb2xvcjogcGFsZXR0ZShuZXV0cmFsLCA4MDApO1xuXG4gIEBpbmNsdWRlIG1xKG0pIHtcbiAgICBwYWRkaW5nLXRvcDogc3BhY2UoNik7XG4gICAgcGFkZGluZy1ib3R0b206IHNwYWNlKDYpO1xuICB9XG59XG5cbi5jLXBhZ2UtdGl0bGUtLWNlbnRlciB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIG1hcmdpbi1yaWdodDogYXV0bztcblxuICBAaW5jbHVkZSBtcShtKSB7XG4gICAgd2lkdGg6IGNvbHVtbig2LCA4KTtcbiAgfVxuICBAaW5jbHVkZSBtcShsKSB7XG4gICAgd2lkdGg6IGNvbHVtbig4LCAxMik7XG4gIH1cbn1cblxuLmMtcGFnZS10aXRsZV9fcHJlaGVhZGluZyB7XG4gIEBpbmNsdWRlIG1xKG0pIHtcbiAgICBtYXJnaW4tdG9wOiBzcGFjZSgtMSk7XG4gICAgbWFyZ2luLWJvdHRvbTogc3BhY2UoMSk7XG4gIH1cbn1cblxuLmMtcGFnZS10aXRsZV9faGVhZGluZyB7XG4gIEBpbmNsdWRlIGZzKDU2KTtcbiAgbGluZS1oZWlnaHQ6IDEuMztcbn1cblxuLmMtcGFnZS10aXRsZV9faGVhZGluZy1zbWFsbCB7XG4gIEBpbmNsdWRlIGZzKDIwKTtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cblxuLmMtcGFnZS10aXRsZV9fc3ViaGVhZGluZyB7XG4gIEBpbmNsdWRlIGZzKDE1KTtcbiAgY29sb3I6IHBhbGV0dGUobmV1dHJhbCwgNDAwKTtcbn0iLCIuYy1wcmUtdGl0bGUge1xuICBAaW5jbHVkZSBmcygxNiwgMjQpO1xuICBAaW5jbHVkZSBmdyhzZW1pQm9sZCk7XG4gIGNvbG9yOiBwYWxldHRlKHNlY29uZGFyeSwgNDAwKTtcbn0iLCIuYy1wcm9qZWN0b3Ige1xuXHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdGhlaWdodDogMTAwJTtcbn1cblxuXG4uYy1wcm9qZWN0b3JfX2ZpZ3VyZSB7XG5cdGRpc3BsYXk6IGdyaWQ7XG5cdGdyaWQtdGVtcGxhdGUtcm93czogMWZyO1xuXHRncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmcjtcblx0aGVpZ2h0OiAxMDAlO1xufVxuXG5cbi5jLXByb2plY3Rvcl9fY2FwdGlvbiB7XG5cdEBpbmNsdWRlIGZzKDE1KTtcblx0Z3JpZC1jb2x1bW46IDE7XG5cdGdyaWQtcm93OiAyO1xuXHR1c2VyLXNlbGVjdDogdGV4dDtcblx0bWFyZ2luLXRvcDogc3BhY2UoMSk7XG59XG5cblxuLmMtcHJvamVjdG9yX19waWN0dXJlIHtcblx0Z3JpZC1jb2x1bW46IDE7XG5cdGdyaWQtcm93OiAxO1xuXHRhbGlnbi1zZWxmOiBlbmQ7XG5cdGhlaWdodDogMTAwJTtcblx0bWluLWhlaWdodDogMzYwcHg7IC8vIG5lZWRlZCBmb3IgSUVcblx0ZGlzcGxheTogYmxvY2s7IC8vIE5lZWRlZCBmb3IgSUVcblx0YmFja2dyb3VuZC1jb2xvcjogcGFsZXR0ZShuZXV0cmFsLCAxMDApO1xuXHRvcGFjaXR5OiAwO1xuXHR0cmFuc2l0aW9uOiBvcGFjaXR5IDAuNXM7XG5cdGJvcmRlci1yYWRpdXM6IDEycHg7XG5cblx0LmllIC5jLXByb2plY3Rvci0tc2luZ2xlLWltYWdlICYge1xuXHRcdG1pbi1oZWlnaHQ6IDQwMHB4O1xuXHR9XG5cblx0Ji5pcy1hY3RpdmUge1xuXHRcdG9wYWNpdHk6IDE7XG5cdH1cbn1cblxuXG4uYy1wcm9qZWN0b3JfX2NvbnRyb2wge1xuXHRncmlkLWNvbHVtbjogMTtcblx0Z3JpZC1yb3c6IDE7XG5cdGFsaWduLXNlbGY6IGVuZDtcblx0bWFyZ2luLWJvdHRvbTogc3BhY2UoMSk7XG5cdG1hcmdpbi1yaWdodDogc3BhY2UoMSk7XG59XG5cblxuLmMtcHJvamVjdG9yX19pbWcge1xuXHQvLyBtYWtlIHN1cmUgaXQgc3RyZXRjaGVzIHRoZSBjb250YWluZXJcblx0d2lkdGg6IDEwMCU7XG5cdGhlaWdodDogMTAwJTtcblx0b2JqZWN0LWZpdDogY292ZXI7IC8vIEZhbGxiYWNrIGZvciBJRSB2aWEgSlMgcG9seWZpbGwsIG1pbi1oZWlnaHQgaXMgc2V0IG9uIHRoZSB3cmFwcGVyXG5cdGJvcmRlci1yYWRpdXM6IDEycHg7XG5cblx0QGluY2x1ZGUgbXEoJG1heDogbSkge1xuXHRcdG1heC1oZWlnaHQ6IDc4dmg7IC8vIE1ha2Ugc3VyZSBpbWFnZXMgYXJlIHZpc2libGUgZW50aXJlbHkgb24gc21hbGwgZGV2aWNlcyBpbiBsYW5kc2NhcGUpXG5cdH1cbn0iLCIuYy1zaXRlbWFwX19pdGVtIHtcblx0QGluY2x1ZGUgZnMoMjAsIDI0KTtcbn1cblxuLmMtc2l0ZW1hcF9fbGluayB7XG5cdGRpc3BsYXk6IGJsb2NrO1xuXHRwYWRkaW5nOiBzcGFjZSgwLjUpIDA7XG5cdHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblx0Y29sb3I6IHBhbGV0dGUoc2Vjb25kYXJ5LCA2MDApO1xuXG5cdCY6aG92ZXIge1xuXHRcdGNvbG9yOiBwYWxldHRlKHNlY29uZGFyeSwgODAwKTtcblx0XHR0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcblx0fVxufSIsIi8qXG4gKiBTa2lwIExpbmtcbiAqL1xuXG4uYy1za2lwLWxpbmsge1xuICBAaW5jbHVkZSBmcygxNSk7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgdG9wOiAtMTAwdmg7XG4gIGxlZnQ6IDUwJTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xuICBjb2xvcjogcGFsZXR0ZShmZWVkYmFjaywgYWN0aW9uKTtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuXG4gICY6Zm9jdXMge1xuICAgIG91dGxpbmUtY29sb3I6IGN1cnJlbnRDb2xvcjtcbiAgICBvdXRsaW5lLXN0eWxlOiBzb2xpZDtcbiAgICBvdXRsaW5lLW9mZnNldDogMXB4O1xuICAgIG91dGxpbmUtd2lkdGg6IDJweDtcbiAgICB0b3A6IDVweDsgLyogTm93IHRoZSBsaW5rIHdpbGwgYXBwZWFyICovXG4gIH1cbn0iLCIvLyBDb21wb25lbnQgc2V0dGluZ3M6IFNsaWRlIGluZGljYXRvclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbkB1c2UgXCJzYXNzOm1hdGhcIjtcblxuJGMtc2xpZGUtaW5kaWNhdG9yOiAoXG5cdCdkb3QtY29sb3InOlx0XHRcdFx0cGFsZXR0ZShuZXV0cmFsLCAwKSxcblx0J2RvdC1jb2xvci1hY3RpdmUnOlx0XHRcdHBhbGV0dGUobmV1dHJhbCwgMTAwMCksXG5cdCdkb3QtcmluZy1jb2xvci1hY3RpdmUnOlx0cGFsZXR0ZShuZXV0cmFsLCAwKSxcblx0J2RvdC1zaXplJzpcdFx0XHRcdFx0OHB4LFxuXHQnZG90LXNpemUtYWN0aXZlJzpcdFx0XHQ2cHgsXG5cdCdkb3QtcmluZy1zaXplLWFjdGl2ZSc6XHRcdDEycHgsXG5cdCdkb3Qtc2l6ZS10YXJnZXRib3gnOlx0XHQzMHB4LFxuXHQnZG90LWlzLXJvdW5kZWQnOlx0XHRcdHRydWUsXG5cdCdidXR0b24taWNvbi1jb2xvcic6XHRcdHBhbGV0dGUobmV1dHJhbCwgMCksXG5cdCdidXR0b24tYmctY29sb3InOlx0XHRcdHBhbGV0dGUoc2Vjb25kYXJ5LCA1MDApLFxuXHQnYnV0dG9uLWJnLWNvbG9yLWhvdmVyJzpcdHNjYWxlX2NvbG9yKHBhbGV0dGUoc2Vjb25kYXJ5LCA1MDApLCAkbGlnaHRuZXNzOiAtMTAlKSxcblx0J2J1dHRvbi1zaXplJzpcdFx0XHRcdDQwcHgsXG4pO1xuXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuXG4uYy1zbGlkZS1pbmRpY2F0b3Ige1xuXHRkaXNwbGF5OiBmbGV4O1xuXHRqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xuXHRhbGlnbi1pdGVtczogY2VudGVyO1xufVxuXG4uYy1zbGlkZS1pbmRpY2F0b3JfX2J1dHRvbiB7XG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0Ym9yZGVyOiBub25lO1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiBtYXAtZ2V0KCRjLXNsaWRlLWluZGljYXRvciwgJ2J1dHRvbi1iZy1jb2xvcicpO1xuXHRjb2xvcjogbWFwLWdldCgkYy1zbGlkZS1pbmRpY2F0b3IsICdidXR0b24taWNvbi1jb2xvcicpO1xuXHRoZWlnaHQ6IG1hcC1nZXQoJGMtc2xpZGUtaW5kaWNhdG9yLCAnYnV0dG9uLXNpemUnKTtcblx0d2lkdGg6IG1hcC1nZXQoJGMtc2xpZGUtaW5kaWNhdG9yLCAnYnV0dG9uLXNpemUnKTtcblxuXHQmICsgJiB7XG5cdFx0bWFyZ2luLWxlZnQ6IDhweDtcblx0fVxuXG5cdCZbYXJpYS1sYWJlbD0ncHJldmlvdXMnXSA+IHN2ZyB7XG5cdFx0dHJhbnNmb3JtOiByb3RhdGUoOTBkZWcpO1xuXHR9XG5cblx0JlthcmlhLWxhYmVsPSduZXh0J10gPiBzdmcge1xuXHRcdHRyYW5zZm9ybTogcm90YXRlKC05MGRlZyk7XG5cdH1cblxuXHQmOmhvdmVyIHtcblx0XHRjdXJzb3I6IHBvaW50ZXI7XG5cdFx0YmFja2dyb3VuZC1jb2xvcjogbWFwLWdldCgkYy1zbGlkZS1pbmRpY2F0b3IsICdidXR0b24tYmctY29sb3ItaG92ZXInKTtcblx0fVxuXG5cdCY6Zm9jdXMge1xuXHRcdG91dGxpbmU6IG5vbmU7XG5cdFx0YmFja2dyb3VuZC1jb2xvcjogbWFwLWdldCgkYy1zbGlkZS1pbmRpY2F0b3IsICdidXR0b24tYmctY29sb3ItaG92ZXInKTtcblx0fVxufVxuXG4uYy1zbGlkZS1pbmRpY2F0b3JfX2RvdCB7XG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXHR3aWR0aDogbWFwLWdldCgkYy1zbGlkZS1pbmRpY2F0b3IsICdkb3Qtc2l6ZS10YXJnZXRib3gnKTtcblx0aGVpZ2h0OiBtYXAtZ2V0KCRjLXNsaWRlLWluZGljYXRvciwgJ2RvdC1zaXplLXRhcmdldGJveCcpO1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcblx0Ym9yZGVyOiBub25lO1xuXHRjdXJzb3I6IHBvaW50ZXI7XG5cdHRyYW5zaXRpb24tcHJvcGVydHk6IGJhY2tncm91bmQtY29sb3IsIG9wYWNpdHk7XG5cdHRyYW5zaXRpb24tZHVyYXRpb246IDI1MG1zO1xuXG5cdCY6Zm9jdXMge1xuXHRcdG91dGxpbmU6IG5vbmU7XG5cdH1cblxuXHQmOmhvdmVyOm5vdCguaXMtYWN0aXZlKSxcblx0Jjpmb2N1czpub3QoLmlzLWFjdGl2ZSkge1xuXHRcdG9wYWNpdHk6IDAuNTtcblx0fVxuXG5cdCY6YmVmb3JlLFxuXHQmOmFmdGVyIHtcblx0XHRjb250ZW50OiAnJztcblx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0YmFja2dyb3VuZC1jbGlwOiBjb250ZW50LWJveDtcblx0XHR0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIGJhY2tncm91bmQtY29sb3IsIG9wYWNpdHk7XG5cdFx0dHJhbnNpdGlvbi1kdXJhdGlvbjogMC4zcztcblx0XHR0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbi1vdXQ7XG5cdFx0QGlmIChtYXAtZ2V0KCRjLXNsaWRlLWluZGljYXRvciwgJ2RvdC1pcy1yb3VuZGVkJykgPT0gdHJ1ZSkge1xuXHRcdFx0Ym9yZGVyLXJhZGl1czogMTAwJTtcblx0XHR9XG5cdH1cblxuXHQmOmJlZm9yZSB7XG5cdFx0JG9mZnNldDogY2FsYygoI3ttYXAtZ2V0KCRjLXNsaWRlLWluZGljYXRvciwgJ2RvdC1zaXplLXRhcmdldGJveCcpfSAtICN7bWFwLWdldCgkYy1zbGlkZS1pbmRpY2F0b3IsICdkb3Qtc2l6ZScpfSkgLyAyKTtcblx0XHR0b3A6ICRvZmZzZXQ7XG5cdFx0cmlnaHQ6ICRvZmZzZXQ7XG5cdFx0Ym90dG9tOiAkb2Zmc2V0O1xuXHRcdGxlZnQ6ICRvZmZzZXQ7XG5cdFx0YmFja2dyb3VuZC1jb2xvcjogbWFwLWdldCgkYy1zbGlkZS1pbmRpY2F0b3IsICdkb3QtY29sb3InKTtcblx0fVxuXG5cdCY6YWZ0ZXIge1xuXHRcdCRvZmZzZXQ6IGNhbGMoKCN7bWFwLWdldCgkYy1zbGlkZS1pbmRpY2F0b3IsICdkb3Qtc2l6ZS10YXJnZXRib3gnKX0gLSAje21hcC1nZXQoJGMtc2xpZGUtaW5kaWNhdG9yLCAnZG90LXJpbmctc2l6ZS1hY3RpdmUnKX0pIC8gMik7XG5cdFx0dG9wOiAkb2Zmc2V0O1xuXHRcdHJpZ2h0OiAkb2Zmc2V0O1xuXHRcdGJvdHRvbTogJG9mZnNldDtcblx0XHRsZWZ0OiAkb2Zmc2V0O1xuXHRcdGJvcmRlcjogMXB4IHNvbGlkIG1hcC1nZXQoJGMtc2xpZGUtaW5kaWNhdG9yLCAnZG90LXJpbmctY29sb3ItYWN0aXZlJyk7XG5cdFx0dHJhbnNmb3JtOiBzY2FsZSgxLjQpO1xuXHRcdG9wYWNpdHk6IDA7XG5cdH1cblxuXHQmLmlzLWFjdGl2ZSB7XG5cdFx0JjpiZWZvcmUge1xuXHRcdFx0YmFja2dyb3VuZC1jb2xvcjogbWFwLWdldCgkYy1zbGlkZS1pbmRpY2F0b3IsICdkb3QtY29sb3ItYWN0aXZlJyk7XG5cdFx0XHRib3JkZXItY29sb3I6IHJnYmEobWFwLWdldCgkYy1zbGlkZS1pbmRpY2F0b3IsICdkb3QtcmluZy1jb2xvci1hY3RpdmUnKSwgMC45KTtcblx0XHRcdHRyYW5zZm9ybTogc2NhbGUobWF0aC5kaXYoc3RyaXAtdW5pdChtYXAtZ2V0KCRjLXNsaWRlLWluZGljYXRvciwgJ2RvdC1zaXplLWFjdGl2ZScpKSwgc3RyaXAtdW5pdChtYXAtZ2V0KCRjLXNsaWRlLWluZGljYXRvciwgJ2RvdC1zaXplJykpKSk7XG5cdFx0fVxuXG5cdFx0JjphZnRlciB7XG5cdFx0XHRvcGFjaXR5OiAwLjk7XG5cdFx0XHR0cmFuc2Zvcm06IHNjYWxlKDEpO1xuXHRcdH1cblx0fVxuXG5cdCY6Zm9jdXMge1xuXHRcdG9wYWNpdHk6IDEgIWltcG9ydGFudDtcblxuXHRcdCY6YmVmb3JlIHtcblx0XHRcdC8vYmFja2dyb3VuZC1jb2xvcjogcGFsZXR0ZShzZWNvbmRhcnksIDUwMCk7XG5cdFx0XHRib3gtc2hhZG93OiAwIDAgMCAycHggYmxhY2ssIDAgMCAxMHB4IDFweCB3aGl0ZTtcblx0XHR9XG5cblx0XHQmOmFmdGVyIHtcblx0XHRcdC8vYmFja2dyb3VuZC1jb2xvcjogcGFsZXR0ZShzZWNvbmRhcnksIDUwMCk7XG5cdFx0XHRib3gtc2hhZG93OiAwIDAgMCAycHggYmxhY2ssIDAgMCAxMHB4IDFweCB3aGl0ZTtcblx0XHR9XG5cdH1cbn0iLCIvLyBDb21wb25lbnQgc2V0dGluZ3M6IFRleHQgQnV0dG9uXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuJGMtdGV4dGJ1dHRvbjogKFxuXHQnY29sb3InOlx0XHRcdHBhbGV0dGUoc2Vjb25kYXJ5LCA2MDApLFxuXHQnY29sb3JBbHQnOlx0XHRcdHBhbGV0dGUobmV1dHJhbCwgMCksXG4pO1xuXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLyoqXG4gKiAxLiBDb2xvciBnZXRzIGluaGVyaXRlZCBhbmQgdXNlZCBmb3IgbmVzdGVkIGVsZW1lbnRzIHdpdGggJ2N1cnJlbnRDb2xvcicgcHJvcGVydHlcbiAqIDIuIFJlc2V0IGRlZmF1bHQgYnV0dG9uIHN0eWxpbmdcbiAqL1xuXG4uYy10ZXh0YnV0dG9uIHtcblx0QGluY2x1ZGUgZGlzYWJsZU91dGxpbmVGb3JNb3VzZTtcblx0ZGlzcGxheTogaW5saW5lLWZsZXg7XG5cdGp1c3RpZnktY29udGVudDogY2VudGVyO1xuXHRhbGlnbi1pdGVtczogY2VudGVyO1xuXHRjb2xvcjogbWFwLWdldCgkYy10ZXh0YnV0dG9uLCAnY29sb3InKTsgLyogMSAqL1xuXHRwYWRkaW5nOiAwOyAvKiAyICovXG5cdGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50OyAvKiAyICovXG5cdGJvcmRlcjogbm9uZTsgLyogMiAqL1xuXHRjdXJzb3I6IHBvaW50ZXI7XG5cdHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblx0dHJhbnNpdGlvbjogY29sb3IgMC4zcztcblxuXHQmOmhvdmVyOm5vdCg6ZGlzYWJsZWQpIHtcblx0XHRjb2xvcjogc2NhbGUtY29sb3IobWFwLWdldCgkYy10ZXh0YnV0dG9uLCAnY29sb3InKSwgJGxpZ2h0bmVzczogLTQwJSk7XG5cdH1cblx0JjpkaXNhYmxlZCB7XG5cdFx0b3BhY2l0eTogMC41O1xuXHRcdGN1cnNvcjogbm90LWFsbG93ZWQ7XG5cdH1cblx0Jjpmb2N1cyB7XG5cdFx0b3V0bGluZS1jb2xvcjogY3VycmVudENvbG9yO1xuXHRcdG91dGxpbmUtc3R5bGU6IHNvbGlkO1xuXHRcdG91dGxpbmUtb2Zmc2V0OiAxcHg7XG5cdFx0b3V0bGluZS13aWR0aDogMnB4O1xuXHR9XG59XG5cbi5jLXRleHRidXR0b25fX3RleHQge1xuXHRAaW5jbHVkZSBmcygxMywxMyk7XG59XG5cbi5jLXRleHRidXR0b25fX2ljb24ge1xuXHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdG1hcmdpbi1sZWZ0OiBzcGFjZSgxKTtcblx0dHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuM3M7XG5cblx0Ly8uYy10ZXh0YnV0dG9uOmhvdmVyOm5vdCg6ZGlzYWJsZWQpICYge1xuXHQvL1x0dHJhbnNmb3JtOiB0cmFuc2xhdGVYKDNweCk7XG5cdC8vfVxuXG5cdC5jLXRleHRidXR0b24tLWljb24gJntcblx0XHRkaXNwbGF5OiBibG9jazsgLy8gU2hvdyB3aGVuIGhhcyBpY29uIG1vZGlmaWVyXG5cdH1cbn1cblxuLmMtdGV4dGJ1dHRvbl9faWNvbi0tcmlnaHQge1xuXHR0cmFuc2Zvcm06IHJvdGF0ZSgtOTBkZWcpO1xuXHRjb2xvcjogcGFsZXR0ZShwcmltYXJ5LCA1MDApO1xufVxuXG4vLyBDaGFuZ2UgZGlyZWN0aW9uIG9mIGljb24gKGFycm93KVxuLmMtdGV4dGJ1dHRvbi0taXMtcmV2ZXJzZWQge1xuXHQuYy10ZXh0YnV0dG9uX190ZXh0IHsgb3JkZXI6IDI7XHR9XG5cdC5jLXRleHRidXR0b25fX2ljb24ge1xuXHRcdG9yZGVyOiAxO1xuXHRcdHRvcDogMXB4O1xuXHRcdG1hcmdpbi1sZWZ0OiAwO1xuXHRcdG1hcmdpbi1yaWdodDogc3BhY2UoMSk7XG5cdFx0dHJhbnNmb3JtOiByb3RhdGUoMC41dHVybik7XG5cdH1cblx0Jjpob3Zlcjpub3QoOmRpc2FibGVkKSAuYy10ZXh0YnV0dG9uX19pY29uIHtcblx0XHR0cmFuc2Zvcm06IHJvdGF0ZSgwLjV0dXJuKSB0cmFuc2xhdGVYKDNweCk7XG5cdH1cbn0iLCJcbkB1c2UgXCJzYXNzOm1hdGhcIjtcblxuJGMtdG9nZ2xlLXRyYW5zaXRpb24tc3BlZWQ6IDI1MG1zO1xuJGMtdG9nZ2xlLXRyYW5zaXRpb24tZWFzZTogZWFzZS1pbi1vdXQ7XG4kYy10b2dnbGUtbGVmdC1wYWQ6IHNwYWNlKDEyKTtcbiRjLXRvZ2dsZS1yaWdodC1wYWQ6IHNwYWNlKDYpO1xuJGMtdG9nZ2xlLWhvdmVyLWNvbG9yOiBwYWxldHRlKG5ldXRyYWwsIDkwMCk7XG5cblxuLmMtdG9nZ2xlIHtcblx0bGlzdC1zdHlsZTogbm9uZTtcblx0bWFyZ2luLWxlZnQ6IDA7XG59XG5cblxuLmMtdG9nZ2xlX19pdGVtIHtcblx0QGluY2x1ZGUgb3dsKHNwYWNlKDIpKTtcblx0QGluY2x1ZGUgYm9yZGVyLXJhZGl1cyhtKTtcblx0Ym9yZGVyOiAxcHggc29saWQgcGFsZXR0ZShuZXV0cmFsLCAzMDApO1xufVxuXG5cbi5jLXRvZ2dsZV9fdGl0bGUge1xuXHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdHBhZGRpbmctbGVmdDogJGMtdG9nZ2xlLWxlZnQtcGFkO1xuXG5cdCZbZGF0YS10b2dnbGUtaWRdIHtcblx0XHRjdXJzb3I6IHBvaW50ZXI7XG5cdH1cbn1cblxuXG4uYy10b2dnbGVfX2ljb24ge1xuXHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdHRvcDogMThweDtcblx0bGVmdDogY2FsYygje21hdGguZGl2KCRjLXRvZ2dsZS1sZWZ0LXBhZCwgMil9KTtcblx0d2lkdGg6IDIwcHg7XG5cdGhlaWdodDogMjBweDtcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcblx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG5cdGJvcmRlci1yYWRpdXM6IDUwJTtcblx0Y29sb3I6IHBhbGV0dGUocHJpbWFyeSwgNzAwKTtcblx0Ym9yZGVyOiAycHggc29saWQgY3VycmVudENvbG9yO1xuXHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XG5cdHRyYW5zaXRpb246IGFsbCAxNTBtcyBsaW5lYXI7XG5cblx0JiA+IHN2ZyB7XG5cdFx0d2lkdGg6IDEwcHg7XG5cdH1cblxuXHQmLnBsdXMgeyBkaXNwbGF5OiBmbGV4OyB9XG5cblx0LmMtdG9nZ2xlX190aXRsZS5pcy1hY3RpdmUgJiB7XG5cdFx0Ji5wbHVzIHsgZGlzcGxheTogbm9uZTsgfVxuXHRcdCYubWludXMgeyBkaXNwbGF5OiBmbGV4OyB9XG5cdH1cblxuXHQmLmNoZWNrIHtcblx0XHRkaXNwbGF5OiBmbGV4O1xuXHRcdGJvcmRlcjogbm9uZTtcblxuXHRcdCYgPiBzdmcge1xuXHRcdFx0d2lkdGg6IDI0cHg7XG5cdFx0fVxuXHR9XG5cblx0LmMtdG9nZ2xlX190aXRsZVtkYXRhLXRvZ2dsZS1pZF06bm90KC5pcy1hY3RpdmUpOmhvdmVyICYge1xuXHRcdGNvbG9yOiAkYy10b2dnbGUtaG92ZXItY29sb3I7XG5cdH1cbn1cblxuXG4uYy10b2dnbGVfX2xhYmVsIHtcblx0QGluY2x1ZGUgZnMoMTUpO1xuXHRkaXNwbGF5OiBmbGV4O1xuXHRwYWRkaW5nOiBzcGFjZSgyKSAwO1xuXHRmb250LXdlaWdodDogYm9sZDtcblx0Y29sb3I6IHBhbGV0dGUocHJpbWFyeSwgNzAwKTtcblx0dHJhbnNpdGlvbjogYWxsIDE1MG1zIGxpbmVhcjtcblxuXHQuYy10b2dnbGVfX3RpdGxlW2RhdGEtdG9nZ2xlLWlkXTpub3QoLmlzLWFjdGl2ZSk6aG92ZXIgJiB7XG5cdFx0Y29sb3I6ICRjLXRvZ2dsZS1ob3Zlci1jb2xvcjtcblx0fVxufVxuXG5cbi5jLXRvZ2dsZV9fY29udGVudCB7XG5cdG1heC1oZWlnaHQ6IDA7XG5cdG9wYWNpdHk6IDA7XG5cdHBhZGRpbmctbGVmdDogJGMtdG9nZ2xlLWxlZnQtcGFkO1xuXHRwYWRkaW5nLXJpZ2h0OiAkYy10b2dnbGUtcmlnaHQtcGFkO1xuXHRwb2ludGVyLWV2ZW50czogbm9uZTsgLy8gTmVlZGVkIHNvIHdlIGRvbid0IGNsaWNrIG9uIGl0IHdoZW4gaXQgaXMgaGlkZGVuXG5cdHRyYW5zaXRpb246IGFsbCAkYy10b2dnbGUtdHJhbnNpdGlvbi1zcGVlZCAkYy10b2dnbGUtdHJhbnNpdGlvbi1lYXNlO1xuXG5cdC5pcy1hY3RpdmUgfiAmIHtcblx0XHRwYWRkaW5nLWJvdHRvbTogc3BhY2UoMik7XG5cdFx0bWF4LWhlaWdodDogMTAwMHB4O1xuXHRcdG9wYWNpdHk6IDE7XG5cdFx0cG9pbnRlci1ldmVudHM6IGFsbDtcblx0fVxufSIsIi5jLXRyYWRlbWFyayB7XG5cdEBpbmNsdWRlIGZzKDE0LDI0KTtcblx0ZGlzcGxheTogaW5saW5lLWZsZXg7XG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cdGNvbG9yOiByZ2JhKHdoaXRlLCAwLjYpO1xuXHR0ZXh0LWRlY29yYXRpb246IG5vbmU7XG5cdHRyYW5zaXRpb246IGNvbG9yIDAuMTVzIGVhc2UtaW4tb3V0O1xuXG5cdCY6aG92ZXIge1xuXHRcdGNvbG9yOiB3aGl0ZTtcblx0fVxufVxuXG4uYy10cmFkZW1hcmtfX2tvbW1hLWxvZ28ge1xuXHRtYXJnaW4tcmlnaHQ6IDJweDtcblxuXHQuYy10cmFkZW1hcms6aG92ZXIgJiB7XG5cdFx0dHJhbnNmb3JtLW9yaWdpbjogMTJweCAxMnB4O1xuXHRcdGFuaW1hdGlvbjogbG9nby1zcGluIDEuOHMgZWFzZS1pbi1vdXQgaW5maW5pdGU7XG5cdFx0Y29sb3I6IHBhbGV0dGUocHJpbWFyeSwgNjAwKTtcblx0fVxufVxuXG4uYy10cmFkZW1hcmtfX2hlYXJ0IHtcblx0Y29sb3I6IHBhbGV0dGUocHJpbWFyeSwgNjAwKTtcblx0LS1oZWFydC1vcGFjaXR5OiAwO1xuXG5cdC5jLXRyYWRlbWFyazpob3ZlciAmIHtcblx0XHQtLWhlYXJ0LW9wYWNpdHk6IDE7XG5cdH1cbn1cblxuLmMtdHJhZGVtYXJrX190ZXh0IHtcblx0ZGlzcGxheTogZmxleDtcblx0bWFyZ2luOiAtMnB4O1xuXG5cdCYgPiAqIHtcblx0XHRtYXJnaW46IDJweDtcblx0XHRkaXNwbGF5OiBmbGV4O1xuXHRcdGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cdH1cbn1cblxuLmMtdHJhZGVtYXJrX19pY29uIHtcblx0bWFyZ2luLWxlZnQ6IHNwYWNlKDEpO1xufVxuXG5cbkBrZXlmcmFtZXMgbG9nby1zcGluIHtcblx0ZnJvbSB7IHRyYW5zZm9ybTogcm90YXRlKDApOyB9XG5cdHRvIHsgdHJhbnNmb3JtOiByb3RhdGUoLTF0dXJuKTsgfVxufSIsIi5jLXZhY2FuY3ktcHJvcGVydGllcyB7XG5cdGxpc3Qtc3R5bGU6IG5vbmU7XG5cdGRpc3BsYXk6IGZsZXg7XG5cdGZsZXgtd3JhcDogd3JhcDtcblx0bWFyZ2luLWxlZnQ6IDA7XG59XG5cblxuLmMtdmFjYW5jeS1wcm9wZXJ0aWVzX19pdGVtIHtcblx0ZGlzcGxheTogZmxleDtcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcblx0Y29sb3I6IHBhbGV0dGUoZmVlZGJhY2ssIGFjdGlvbik7XG5cdG1hcmdpbi10b3A6IDRweDtcblx0bWFyZ2luLWJvdHRvbTogNHB4O1xuXG5cdCY6bnRoLWxhc3QtY2hpbGQobisyKSB7XG5cdFx0bWFyZ2luLXJpZ2h0OiBzcGFjZSg0KTtcblx0fVxufVxuXG5cbi5jLXZhY2FuY3ktcHJvcGVydGllc19faWNvbiB7XG5cdGRpc3BsYXk6IGZsZXg7XG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cdHdpZHRoOiAyNHB4O1xuXHRoZWlnaHQ6IDI0cHg7XG5cdG1hcmdpbi1yaWdodDogc3BhY2UoMSk7XG59IiwiLmMtdmlkZW97XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgaGVpZ2h0OiAwO1xuICB3aWR0aDogMTAwJTtcbiAgcGFkZGluZy1ib3R0b206IDU2LjI1JTsgLy8gQXNwZWN0IFJhdGlvOiAxNjo5XG4gIGJhY2tncm91bmQtY29sb3I6IHBhbGV0dGUobmV1dHJhbCwgMjAwKTtcbn1cblxuLmMtdmlkZW9fX2lmcmFtZXtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG59IiwiLmMtaGVyby1jYXJkIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB3aWR0aDogMTAwJTtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgZ2FwOiBzcGFjZSgzKTtcbiAgbWF4LXdpZHRoOiA1NzBweDtcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIG1hcmdpbi1yaWdodDogYXV0bztcbiAgcGFkZGluZy1ibG9jazogY2xhbXAoc3BhY2UoNCksIDR2dywgc3BhY2UoOCkpO1xuICBwYWRkaW5nLWlubGluZTogY2xhbXAoc3BhY2UoNCksIDN2dywgc3BhY2UoNikpO1xuICBjb2xvcjogd2hpdGU7XG4gIC8vdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0yNHB4KTtcbiAgYm9yZGVyLXJhZGl1czogMjRweDtcbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KDBkZWcsICMxOTNFOEEgMCUsICMyNzUxQTMgMTAwJSk7XG5cbiAgQGluY2x1ZGUgbXEoJGJwLXZpZGVvLWhlcm8pIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG5cbiAgQGluY2x1ZGUgbXEoJG1heDogMTEwMCkge1xuICB9XG59XG5cblxuLmMtaGVyby1jYXJkX19idXR0b25zIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2Vlbjtcbn1cblxuXG4iLCIkYy1mYXEtYnAxOiA0ODA7XG5cbi5jLWZhcSB7XG59XG5cbi5jLWZhcV9fZ3JvdXAtdGl0bGUge1xuXHRtYXJnaW4tYm90dG9tOiBjbGFtcCgyNHB4LCAydncsIDMycHgpO1xufVxuXG4uYy1mYXFfX2xpc3Qge1xuXHRsaXN0LXN0eWxlOiBub25lO1xuXHRtYXJnaW4tbGVmdDogMDtcblx0Y29sb3I6IHBhbGV0dGUobmV1dHJhbCwgODAwKTtcbn1cblxuLmMtZmFxX19pdGVtIHtcblx0Ym9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHJnYmEocGFsZXR0ZShzZWNvbmRhcnksIDQwMCksIDAuMyk7XG59XG5cbi5jLWZhcV9fcXVlc3Rpb24ge1xuXHRkaXNwbGF5OiBmbGV4O1xuXHRhbGlnbi1pdGVtczogZmxleC1zdGFydDtcblx0cGFkZGluZzogc3BhY2UoMS41KSAwO1xuXHRAaW5jbHVkZSBmcygxNSwgMjQpO1xuXHRmb250LXdlaWdodDogNDAwO1xuXHRjdXJzb3I6IHBvaW50ZXI7XG5cdHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMjUwbXM7XG5cblx0LmMtZmFxX19pdGVtLmlzLWFjdGl2ZSAmIHtcblx0XHRiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xuXHR9XG5cblx0Jjpob3ZlciB7XG5cdFx0YmFja2dyb3VuZC1jb2xvcjogcGFsZXR0ZShzZWNvbmRhcnksIDUwKTtcblx0fVxufVxuXG4uYy1mYXFfX2ljb24ge1xuXHRtYXJnaW4tdG9wOiAtMXB4O1xuXHRjb2xvcjogcGFsZXR0ZShwcmltYXJ5LCA1MDApO1xuXHRmbGV4OiAwIDAgc3BhY2UoNSk7XG5cdHBhZGRpbmc6IDAgMCAwIHNwYWNlKDEpO1xuXG5cdC5jLWZhcV9faXRlbS5pcy1hY3RpdmUgJiB7XG5cdFx0c3ZnIHtcblx0XHRcdHRyYW5zZm9ybTogcm90YXRlKDE4MGRlZyk7XG5cdFx0fVxuXHR9XG59XG5cbi5jLWZhcV9fdGl0bGUge1xuXHR0cmFuc2l0aW9uOiBjb2xvciAyMDBtcztcblxuXHQuYy1mYXFfX2l0ZW0uaXMtYWN0aXZlICYge1xuXHRcdGZvbnQtd2VpZ2h0OiA2MDA7XG5cdFx0Y29sb3I6IHBhbGV0dGUoc2Vjb25kYXJ5LCA2MDApO1xuXHR9XG59XG5cblxuLy8gSGlkZGVuIGJ5IGRlZmF1bHRcbi5jLWZhcV9fYW5zd2VyIHtcblx0JG8tZmFxLWFuc3dlci10b2dnbGUtc3BlZWQ6IDIwMG1zO1xuXHQkby1mYXEtYW5zd2VyLWZhZGUtc3BlZWQ6IDIwMG1zO1xuXHQkby1mYXEtYW5zd2VyLW9wZW4tZWFzZTogY3ViaWMtYmV6aWVyKDAsMCwxLDAuMTUpO1xuXHQkby1mYXEtYW5zd2VyLWNsb3NlLWVhc2U6IGN1YmljLWJlemllcigwLDAuNSwwLjUsMSk7XG5cdG9wYWNpdHk6IDA7XG5cdG1heC1oZWlnaHQ6IDA7XG5cdG92ZXJmbG93OiBoaWRkZW47XG5cdHBhZGRpbmctcmlnaHQ6IDI0cHggKyBzcGFjZSgyKTtcblx0cGFkZGluZy1sZWZ0OiBzcGFjZSg1KTtcblx0dHJhbnNmb3JtOiB0cmFuc2xhdGVYKDU1cHgpO1xuXHQvLyBjbG9zZSBhbmltYXRpb25cblx0dHJhbnNpdGlvbjogb3BhY2l0eSAkby1mYXEtYW5zd2VyLWZhZGUtc3BlZWQgZWFzZS1vdXQsXG5cdFx0XHRcdHBhZGRpbmcgJG8tZmFxLWFuc3dlci10b2dnbGUtc3BlZWQgJG8tZmFxLWFuc3dlci1jbG9zZS1lYXNlICRvLWZhcS1hbnN3ZXItZmFkZS1zcGVlZCxcblx0XHRcdFx0dHJhbnNmb3JtICRvLWZhcS1hbnN3ZXItdG9nZ2xlLXNwZWVkICRvLWZhcS1hbnN3ZXItY2xvc2UtZWFzZSAkby1mYXEtYW5zd2VyLWZhZGUtc3BlZWQsXG5cdFx0XHRcdG1heC1oZWlnaHQgJG8tZmFxLWFuc3dlci10b2dnbGUtc3BlZWQgJG8tZmFxLWFuc3dlci1jbG9zZS1lYXNlICRvLWZhcS1hbnN3ZXItZmFkZS1zcGVlZDtcblxuXG5cdC5jLWZhcV9faXRlbS5pcy1hY3RpdmUgJiB7XG5cdFx0b3BhY2l0eTogMTtcblx0XHRtYXgtaGVpZ2h0OiA1MDBweDtcblx0XHRwYWRkaW5nLWJvdHRvbTogc3BhY2UoMyk7XG5cdFx0dHJhbnNmb3JtOiBub25lO1xuXHRcdC8vIG9wZW4gYW5pbWF0aW9uXG5cdFx0dHJhbnNpdGlvbjogbWF4LWhlaWdodCAkby1mYXEtYW5zd2VyLXRvZ2dsZS1zcGVlZCAkby1mYXEtYW5zd2VyLW9wZW4tZWFzZSxcblx0XHRcdFx0XHRwYWRkaW5nICRvLWZhcS1hbnN3ZXItdG9nZ2xlLXNwZWVkICRvLWZhcS1hbnN3ZXItb3Blbi1lYXNlLFxuXHRcdFx0XHRcdHRyYW5zZm9ybSAkby1mYXEtYW5zd2VyLXRvZ2dsZS1zcGVlZCAkby1mYXEtYW5zd2VyLW9wZW4tZWFzZSxcblx0XHRcdFx0XHRvcGFjaXR5ICRvLWZhcS1hbnN3ZXItZmFkZS1zcGVlZCBlYXNlLW91dCAkby1mYXEtYW5zd2VyLXRvZ2dsZS1zcGVlZDtcblxuXHR9XG59XG5cbi8vXG4vLy5jLWZhcV9faXRlbS0tc21hbGwge1xuLy9cdC5jLWZhcV9fcXVlc3Rpb24ge1xuLy9cdFx0cGFkZGluZzogc3BhY2UoMSk7XG4vL1x0XHRmb250LWZhbWlseTogJGZvbnQtbW9udHNlcnJhdDtcbi8vXHRcdGZvbnQtd2VpZ2h0OiA0MDA7XG4vL1x0XHRmb250LXNpemU6IDE1cHg7XG4vL1x0XHRjb2xvcjogcGFsZXR0ZShzZWNvbmRhcnksIDgwMCk7XG4vL1x0fVxuLy99IiwiLmMtaW5zdXJlcl9fdGl0bGUge1xuICBtYXJnaW4tYm90dG9tOiBjbGFtcCg0MHB4LCAzLjZ2dywgNjBweCk7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuLmMtaW5zdXJlcl9fZ3JpZCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogZ3JpZDtcbiAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnIgMWZyO1xuICBncmlkLWdhcDogc3BhY2UoNSk7XG5cbiAgQGluY2x1ZGUgbXEoJG1heDogNjUwKSB7XG5cbiAgICA+ICo6bnRoLWNoaWxkKG9kZCkge1xuICAgICAganVzdGlmeS1zZWxmOiBmbGV4LWVuZDtcbiAgICB9XG4gIH1cblxuICBAaW5jbHVkZSBtcSg2NTApIHtcbiAgICBkaXNwbGF5OiBncmlkO1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KGF1dG8tZml0LCBtaW5tYXgoMTU2cHgsIDFmcikpO1xuICAgIGdyaWQtZ2FwOiBzcGFjZSg3KSBzcGFjZSg5KTtcbiAgICBtYXJnaW46IDAgY2xhbXAoMjRweCwgMS45dncsIDQ4cHgpO1xuICB9XG59XG5cbi5jLWluc3VyZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgbWF4LXdpZHRoOiAxMjBweDtcblxuICBAaW5jbHVkZSBtcSg2NTApIHtcbiAgICBtaW4td2lkdGg6IDE1NnB4O1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgfVxufVxuXG4uYy1pbnN1cmVyX19ncmFkaWVudCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogMDtcbiAgcmlnaHQ6IDA7XG4gIGJvdHRvbTogMDtcbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KDBkZWcsICNGRkZGRkYgMCUsIHJnYmEoMjU1LDI1NSwyNTUsMC4wMCkgMTAwJSk7XG4gIGhlaWdodDogY2xhbXAoNjVweCwgNnZ3LCAxMDBweCk7XG59IiwiJHVzcEJwOiA5MDA7XG5cbi5jLXVzcHMge1xuICBtYXJnaW46IDA7XG4gIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcblxuICBAaW5jbHVkZSBtcSgkbWF4OiAkdXNwQnApIHtcbiAgICA+ICogKyAqIHtcbiAgICAgIG1hcmdpbi10b3A6IHNwYWNlKDUpO1xuICAgIH1cbiAgfVxuXG4gIEBpbmNsdWRlIG1xKCR1c3BCcCwgMTM0MCkge1xuICAgIG1heC13aWR0aDogODIwcHg7XG4gICAgbWFyZ2luOiAwIGF1dG87XG4gIH1cblxuICBAaW5jbHVkZSBtcSgkdXNwQnApIHtcbiAgICBkaXNwbGF5OiBncmlkO1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KGF1dG8tZml0LCAyMTZweCk7XG4gICAgZ3JpZC1nYXA6IHNwYWNlKDYpIHNwYWNlKDIpO1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcblxuICAgICZbZGF0YS1pdGVtcz0nMSddIHtcbiAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIH1cblxuICAgICZbZGF0YS1pdGVtcz0nMiddIHtcbiAgICAgIG1heC13aWR0aDogNjAwcHg7XG4gICAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgICB9XG5cbiAgICAmW2RhdGEtaXRlbXM9JzMnXSB7XG4gICAgICBtYXgtd2lkdGg6IDgwMHB4O1xuICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgfVxuXG4gICAgJltkYXRhLWl0ZW1zPSc0J10ge1xuICAgICAgbWF4LXdpZHRoOiAxMDAwcHg7XG4gICAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgICB9XG4gIH1cbn1cblxuLmMtdXNwc19faXRlbSB7XG4gIEBpbmNsdWRlIG1xKCRtYXg6ICR1c3BCcCkge1xuICAgIGRpc3BsYXk6IGZsZXg7XG5cbiAgICA+ICogKyAqIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiBzcGFjZSgyKTtcbiAgICB9XG4gIH1cblxuICBAaW5jbHVkZSBtcSgkdXNwQnApIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIH1cbn1cblxuLmMtdXNwc19faXRlbS1pY29uIHtcbiAgZmxleDogMCAwIGF1dG87XG4gIGJhY2tncm91bmQtY29sb3I6IHBhbGV0dGUoc2Vjb25kYXJ5LCA0MDApO1xuICB3aWR0aDogNDhweDtcbiAgaGVpZ2h0OiA0OHB4O1xuICBib3JkZXItcmFkaXVzOiA1MCU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBtYXJnaW46IHNwYWNlKC0xLjUpIDAgMDtcblxuICBpbWcge1xuICAgIG1heC13aWR0aDogMjRweDtcbiAgICBoZWlnaHQ6IGF1dG87XG4gIH1cblxuICBAaW5jbHVkZSBtcSgkdXNwQnApIHtcbiAgICB3aWR0aDogOTZweDtcbiAgICBoZWlnaHQ6IDk2cHg7XG4gICAgbWFyZ2luOiAwIGF1dG8gc3BhY2UoMik7XG5cbiAgICBpbWcge1xuICAgICAgbWF4LXdpZHRoOiA0OHB4O1xuICAgIH1cbiAgfVxufVxuXG4uYy11c3BzX19pdGVtLWljb24tLW51bWJlciB7XG4gIGNvbG9yOiB3aGl0ZTtcbiAgQGluY2x1ZGUgZnMoMTgsIDIyKTtcbiAgQGluY2x1ZGUgZncoc2VtaUJvbGQpO1xuXG4gIEBpbmNsdWRlIG1xKCR1c3BCcCkge1xuICAgIEBpbmNsdWRlIGZzKDMyLCAzNCk7XG4gIH1cbn1cblxuLmMtdXNwc19faGVhZGVyIHtcbiAgbWFyZ2luLWJvdHRvbTogNHB4O1xuICBmb250LWZhbWlseTogJGZvbnQtcG9wcGlucztcbiAgQGluY2x1ZGUgZnMoMTcsIDI0KTtcbiAgQGluY2x1ZGUgZncoc2VtaUJvbGQpO1xuICBjb2xvcjogcGFsZXR0ZShzZWNvbmRhcnksIDYwMCk7XG5cbiAgQGluY2x1ZGUgbXEoJHVzcEJwKSB7XG4gICAgbWFyZ2luLWJvdHRvbTogc3BhY2UoMik7XG4gIH1cbn1cblxuLmMtdXNwc19fZGVzY3JpcHRpb24ge1xuXG59IiwiLmMtcmVwYWlyLXR5cGVzIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gIC5zd2lwZXIge1xuICAgIC8vIHByZXZlbnQganVtcGluZ1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAtMTJweDtcbiAgICB3aWR0aDogMTAwJTtcblxuICAgIEBpbmNsdWRlIG1xKCRtYXg6cykge1xuICAgICAgd2lkdGg6IDEwMHZ3O1xuICAgICAgbGVmdDogLTZ2dztcblxuICAgIH1cblxuICAgICY6bm90KCYuc3dpcGVyLWluaXRpYWxpemVkKSB7XG4gICAgICBtYXgtaGVpZ2h0OiAxMTRweDtcbiAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgfVxuXG4gICAgJjphZnRlciB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgY29udGVudDogXCJcIjtcbiAgICAgIGJvdHRvbTogMDtcbiAgICAgIHdpZHRoOiAxMDBweDtcbiAgICAgIGhlaWdodDogMTQwcHg7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgIHotaW5kZXg6IDI7XG4gICAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICAgIHJpZ2h0OiAwO1xuICAgICAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KDI3MGRlZywgI2ZmZiAwJSwgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjAwKSAxMDAlKTtcblxuICAgICAgQGluY2x1ZGUgbXEocykge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIH1cbiAgICB9XG4gIH1cblxufVxuXG5cbi5jLXJlcGFpcl9faGVhZGVyIHtcbiAgQGluY2x1ZGUgZnMoMjAsIDMyKTtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgY29sb3I6IHBhbGV0dGUoc2Vjb25kYXJ5LCA2MDApO1xuICBtYXJnaW4tYm90dG9tOiBzcGFjZSg0KTtcbn1cblxuLmMtcmVwYWlyLXR5cGVzX19pdGVtIHtcbiAgbWluLXdpZHRoOiAxMjhweDtcbiAgaGVpZ2h0OiAxMTZweDs7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gIHRyYW5zaXRpb24tZHVyYXRpb246IC4zcztcblxuICBwIHtcbiAgICBtYXJnaW4tdG9wOiBzcGFjZSgxKTtcbiAgfVxuXG4gICY6aG92ZXIge1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMS4wNCk7XG4gIH1cblxufVxuXG4uYy1yZXBhaXItdHlwZXNfX2ljb24ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiBwYWxldHRlKG5ldXRyYWwsIDApO1xuICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKDIzMCwyMzEsMjM1LDAuNDgpO1xuICBib3gtc2hhZG93OiAwIDZweCA5cHggMCByZ2JhKDU4LDYxLDcyLDAuMDgpO1xuICBib3JkZXItcmFkaXVzOiA4cHg7XG4gIG1pbi1oZWlnaHQ6IDgwcHg7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xufVxuXG4uYy1yZXBhaXItdHlwZXNfX2J1dHRvbiB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIHdpZHRoOiA1MHB4O1xuICBoZWlnaHQ6IDEwMCU7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgcmlnaHQ6IDA7XG4gIGJvdHRvbTogMDtcbiAgei1pbmRleDogNDtcbiAgYm9yZGVyOiBub25lO1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgY3Vyc29yOiBwb2ludGVyO1xuXG5cbiAgQGluY2x1ZGUgbXEocykge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG5cbiAgJi5zd2lwZXItYnV0dG9uLWRpc2FibGVkIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG5cbi5jLXJlcGFpci10eXBlc19fYnV0dG9uLWljb24ge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHdpZHRoOiAxMnB4O1xuICBoZWlnaHQ6IDdweDtcbiAgcmlnaHQ6IDA7XG4gIHRvcDogNTAlO1xuICB0cmFuc2Zvcm06IHJvdGF0ZSgtOTBkZWcpIHRyYW5zbGF0ZVgoNTAlKTtcbiAgY29sb3I6IHBhbGV0dGUocHJpbWFyeSwgNTAwKTtcbn1cblxuIiwiQHVzZSBcInNhc3M6bWF0aFwiO1xuXG4kYy1iZWZvcmUtYWZ0ZXItc2Nyb2xsZXItc2l6ZTogc3BhY2UoNik7XG4kYy1iZWZvcmUtYWZ0ZXItc2Nyb2xsZXItYmFja2dyb3VuZC1jb2xvcjogcGFsZXR0ZShwcmltYXJ5LCA1MDApO1xuJGMtYmVmb3JlLWFmdGVyLWxpbmUtY29sb3I6IHBhbGV0dGUobmV1dHJhbCwgMCk7XG4kYy1iZWZvcmUtYWZ0ZXItbGFiZWwtY29sb3I6IHBhbGV0dGUobmV1dHJhbCwgMCk7XG5cbi5jLWJlZm9yZS1hZnRlciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgcGFkZGluZy10b3A6IHNwYWNlKDgpO1xuXG4gICY6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBsZWZ0OiAwO1xuICAgIHRvcDogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IGNhbGMoMTAwJSAtICN7c3BhY2UoOCl9KTtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQoMTgwZGVnLCAjMjc1MUEzIDAlLCAjMTkzRThBIDc1JSk7XG4gIH1cblxuXG4gIEBpbmNsdWRlIG1xKCRtYXg6IDk0MCkge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cblxuLmMtYmVmb3JlLWFmdGVyX19oZWFkZXIge1xuICBmb250LWZhbWlseTogJGZvbnQtcG9wcGlucztcbiAgZm9udC1zaXplOiAyMHB4O1xuICBjb2xvcjogIzE5M0U4QTtcbiAgbGV0dGVyLXNwYWNpbmc6IC0wLjJweDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBsaW5lLWhlaWdodDogMzJweDtcbiAgbWFyZ2luLWJvdHRvbTogc3BhY2UoMik7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG5cbiAgQGluY2x1ZGUgbXEoJG1heDogOTQwKSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuXG4uYy1iZWZvcmUtYWZ0ZXJfX3BsYWNlaG9sZGVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB6LWluZGV4OiAxO1xuICB3aWR0aDogY29sdW1uKDksIDEyKTtcbiAgbWF4LXdpZHRoOiBzcGFjZSgxMjApO1xuICBtYXJnaW46IGF1dG87XG4gIHVzZXItc2VsZWN0OiBub25lO1xufVxuXG4uYy1iZWZvcmUtYWZ0ZXJfX3dyYXBwZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDA7XG4gIGJvcmRlci1yYWRpdXM6IDI0cHg7XG4gIG92ZXJmbG93OiBoaWRkZW47XG5cbiAgaW1nIHtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgIGJvcmRlcjogbm9uZTtcbiAgICBtYXgtd2lkdGg6IG5vbmU7XG4gIH1cbn1cblxuLmMtYmVmb3JlLWFmdGVyX19iZWZvcmUsXG4uYy1iZWZvcmUtYWZ0ZXJfX2FmdGVyIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7XG4gIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuXG5cbi5jLWJlZm9yZS1hZnRlcl9fYmVmb3JlOmFmdGVyLFxuLmMtYmVmb3JlLWFmdGVyX19hZnRlcjphZnRlclxue1xuICBjb2xvcjogJGMtYmVmb3JlLWFmdGVyLWxhYmVsLWNvbG9yO1xuICBAaW5jbHVkZSBmcygxNSwgMjQpO1xuICBmb250LXdlaWdodDogNjAwO1xuICBwYWRkaW5nLWJvdHRvbTogc3BhY2UoMik7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgYm90dG9tOiAwO1xufVxuXG4uYy1iZWZvcmUtYWZ0ZXJfX2JlZm9yZTphZnRlciB7XG4gIGNvbnRlbnQ6IGF0dHIoZGF0YS1sYWJlbCk7XG4gIGxlZnQ6IDA7XG4gIHBhZGRpbmctbGVmdDogc3BhY2UoMik7XG59XG5cbi5jLWJlZm9yZS1hZnRlcl9fYWZ0ZXI6YWZ0ZXIge1xuICBjb250ZW50OiBhdHRyKGRhdGEtbGFiZWwpO1xuICByaWdodDogMDtcbiAgcGFkZGluZy1yaWdodDogc3BhY2UoMik7XG59XG5cbi5jb250ZW50LWltYWdle1xuICBoZWlnaHQ6IDEwMCU7XG59XG5cbi5jLWJlZm9yZS1hZnRlcl9fc2Nyb2xsZXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IDUwJTtcblxuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICB3aWR0aDogJGMtYmVmb3JlLWFmdGVyLXNjcm9sbGVyLXNpemU7XG4gIGhlaWdodDogMTAwJTtcbn1cblxuLmMtYmVmb3JlLWFmdGVyX19zY3JvbGwtYnV0dG9uIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB6LWluZGV4OiAyO1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgd2lkdGg6ICRjLWJlZm9yZS1hZnRlci1zY3JvbGxlci1zaXplO1xuICBoZWlnaHQ6ICRjLWJlZm9yZS1hZnRlci1zY3JvbGxlci1zaXplO1xuXG4gIGJhY2tncm91bmQtY29sb3I6ICRjLWJlZm9yZS1hZnRlci1zY3JvbGxlci1iYWNrZ3JvdW5kLWNvbG9yO1xuICBib3JkZXItcmFkaXVzOiA1MCU7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cblxuLmMtYmVmb3JlLWFmdGVyX19zY3JvbGxlcjpob3ZlcntcbiAgb3BhY2l0eToxO1xufVxuXG4uc2Nyb2xsaW5ne1xuICBwb2ludGVyLWV2ZW50czpub25lO1xuICBvcGFjaXR5OjE7XG59XG5cbi5jLWJlZm9yZS1hZnRlcl9fc2Nyb2xsZXI6YmVmb3JlIHtcbiAgY29udGVudDogXCJcIjtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDUwJTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGhlaWdodDogMTAwJTtcbiAgd2lkdGg6IDJweDtcbiAgbWFyZ2luLWxlZnQ6IC0xcHg7XG4gIGJhY2tncm91bmQ6ICRjLWJlZm9yZS1hZnRlci1saW5lLWNvbG9yO1xufVxuXG4uYy1iZWZvcmUtYWZ0ZXJfX2NhciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgYm90dG9tOiAxMDAlO1xuICB3aWR0aDogNDRweDtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC00cHgpO1xufSIsIi5jLXJldmlld3Mge1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIGNvbG9yOiBwYWxldHRlKG5ldXRyYWwsIDApO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgQGluY2x1ZGUgbXEobSkge1xuICAgIG1hcmdpbi1ib3R0b206IGNsYW1wKDE2MHB4LCAxMnZ3LCAyMDBweCk7XG4gIH1cblxuICBAaW5jbHVkZSBtcSgkbWF4OiBtKSB7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgfVxufVxuXG4uYy1yZXZpZXdzX19jYXJkIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB0b3A6IHNwYWNlKDEwKTtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIHdpZHRoOiBjb2x1bW4oNSwgMTIpO1xuXG4gIGJhY2tncm91bmQtY29sb3I6IHBhbGV0dGUocHJpbWFyeSwgNTAwKTtcbiAgYm9yZGVyLXJhZGl1czogMjRweDtcbiAgcGFkZGluZzogMy40dnc7XG5cbiAgQGluY2x1ZGUgbXEoJG1heDogbSkge1xuICAgIHRvcDogc3BhY2UoLTkpO1xuICAgIG1hcmdpbjogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBwYWRkaW5nOiBzcGFjZSg2KSBzcGFjZSgxKTtcbiAgfVxufVxuXG4uYy1yZXZpZXdzX19jYXJkLWhlYWRlciB7XG4gIEBpbmNsdWRlIGZzKDIwLCAyOCk7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIC8vIFRPRE8gQVBQRU5EIC0wLjI/XG5cbiAgQGluY2x1ZGUgIG1xKCRtYXg6IG0pIHtcbiAgICBtYXgtd2lkdGg6IDY2JTtcbiAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG5cbiAgICBAaW5jbHVkZSBmcygxNSwgMjQpO1xuICAgIGZvbnQtZmFtaWx5OiAkZm9udC1tb250c2VycmF0O1xuICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIH1cbn1cblxuLmMtcmV2aWV3c19fY2FyZC1zY29yZSB7XG4gIEBpbmNsdWRlIGludGVycG9sYXRlKGZvbnQtc2l6ZSwgMTAwMHB4LCAxMzAwcHgsIDg0cHgsIDk2cHgpO1xuICBmb250LXdlaWdodDogNjAwO1xufVxuXG4uYy1yZXZpZXdzX19jYXJkLWxvZ28ge1xuICB3aWR0aDogMTMwcHg7XG4gIG1hcmdpbjogc3BhY2UoMikgYXV0byAwO1xufVxuXG4vLy5jLXJldmlld3NfX3Jldmlld3Mge1xuLy8gIGRpc3BsYXk6IGZsZXg7XG4vLyAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbi8vICBwYWRkaW5nLXRvcDogc3BhY2UoOCk7XG4vLyAgcGFkZGluZy1ib3R0b206IHNwYWNlKDgpO1xuLy9cbi8vICBAaW5jbHVkZSBtcSgkbWF4OiBtKSB7XG4vLyAgICBwYWRkaW5nLXRvcDogMDtcbi8vICB9XG4vL1xuLy8gIEBpbmNsdWRlIG1xKG0sIDE0MDApIHtcbi8vICAgIHdpZHRoOiBjb2x1bW4oNywgMTIpO1xuLy8gIH1cbi8vXG4vLyAgQGluY2x1ZGUgbXEoMTQwMCkge1xuLy8gICAgd2lkdGg6IGNvbHVtbig2LCAxMik7XG4vLyAgfVxuLy9cbi8vICAvLyBwcmV2ZW50IGp1bXBpbmdcbi8vICAuc3dpcGVyIHtcbi8vICAgICY6bm90KCYuc3dpcGVyLWluaXRpYWxpemVkKSB7XG4vLyAgICAgIG1heC1oZWlnaHQ6IDA7XG4vLyAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4vLyAgICB9XG4vLyAgfVxuLy99XG4vL1xuLy8uYy1yZXZpZXdzX19yZXZpZXdzLXNsaWRlci13cmFwcGVyIHtcbi8vICBkaXNwbGF5OiBmbGV4O1xuLy8gIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuLy8gIHdpZHRoOiAxMDAlO1xuLy9cbi8vICBAaW5jbHVkZSBtcSgkbWF4OiBtKSB7XG4vLyAgICBmbGV4LXdyYXA6IHdyYXA7XG4vLyAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbi8vICB9XG4vL1xuLy99XG4vL1xuLy8uYy1yZXZpZXcge1xuLy8gIEBpbmNsdWRlIGZzKDE1LCAyNCk7XG4vLyAgZGlzcGxheTogZmxleDtcbi8vICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuLy8gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuLy8gIG1pbi1oZWlnaHQ6IDEwMCU7XG4vL31cbi8vXG4vLy5jLXJldmlld19fbmFtZSB7XG4vLyAgZm9udC13ZWlnaHQ6IDYwMDtcbi8vICBtYXJnaW4tdG9wOiBzcGFjZSg1KTtcbi8vfVxuLy9cbi8vLmMtcmV2aWV3X19zY29yZSB7XG4vLyAgZm9udC13ZWlnaHQ6IDYwMDtcbi8vICBtYXJnaW4tYm90dG9tOiBzcGFjZSg1KTtcbi8vICBkaXNwbGF5OiBmbGV4O1xuLy8gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuLy9cbi8vICBzcGFuIHtcbi8vICAgIHBhZGRpbmctbGVmdDogNnB4O1xuLy8gIH1cbi8vfVxuLy9cbi8vLmMtcmV2aWV3X19idXR0b24ge1xuLy8gIGZsZXg6IDAgMCBhdXRvO1xuLy8gIGN1cnNvcjogcG9pbnRlcjtcbi8vXG4vLyAgZGlzcGxheTogZmxleDtcbi8vICBhbGlnbi1pdGVtczogY2VudGVyO1xuLy8gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuLy9cbi8vICB3aWR0aDogNDBweDtcbi8vICBoZWlnaHQ6IDQwcHg7XG4vLyAgYm9yZGVyOiAxcHggc29saWQgcGFsZXR0ZShuZXV0cmFsLCAwKTtcbi8vICBib3JkZXItcmFkaXVzOiA1MCU7XG4vLyAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4vL1xuLy8gIG1hcmdpbi10b3A6IHNwYWNlKDgpO1xuLy8gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbi8vICBvcGFjaXR5OiAwLjU7XG4vLyAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjNzO1xuLy9cbi8vICBAaW5jbHVkZSBtcSgkbWF4OiBtKSB7XG4vLyAgICBtYXJnaW4tdG9wOiBzcGFjZSg0KTtcbi8vICAgIG1hcmdpbi1sZWZ0OiBzcGFjZSgxKTtcbi8vICAgIG1hcmdpbi1yaWdodDogc3BhY2UoMSk7XG4vLyAgfVxuLy9cbi8vICBAaW5jbHVkZSBtcShtLCAxNDAwKSB7XG4vLyAgICBtYXJnaW4tbGVmdDogc3BhY2UoMyk7XG4vLyAgICBtYXJnaW4tcmlnaHQ6IHNwYWNlKDMpO1xuLy8gIH1cbi8vXG4vLyAgQGluY2x1ZGUgbXEoMTQwMCkge1xuLy8gICAgd2lkdGg6IDU2cHg7XG4vLyAgICBoZWlnaHQ6IDU2cHg7XG4vLyAgfVxuLy9cbi8vICAmOmhvdmVyIHtcbi8vICAgIG9wYWNpdHk6IDE7XG4vLyAgfVxuLy9cbi8vXG4vLyAgQGluY2x1ZGUgbXEoJG1heDogbSkge1xuLy8gICAgb3JkZXI6IDI7XG4vLyAgfVxuLy99XG4vL1xuLy8uYy1yZXZpZXdfX2J1dHRvbi0tcmlnaHQge1xuLy9cbi8vICBAaW5jbHVkZSBtcSgxNDAwKSB7XG4vLyAgICBtYXJnaW4tbGVmdDogc3BhY2UoNSk7XG4vLyAgfVxuLy9cbi8vICBzdmcge1xuLy8gICAgdHJhbnNmb3JtOiByb3RhdGUoMjcwZGVnKTtcbi8vICB9XG4vL31cbi8vXG4vLy5jLXJldmlld19fYnV0dG9uLS1sZWZ0IHtcbi8vXG4vLyAgQGluY2x1ZGUgbXEoMTQwMCkge1xuLy8gICAgbWFyZ2luLXJpZ2h0OiBzcGFjZSg1KTtcbi8vICB9XG4vL1xuLy8gIHN2ZyB7XG4vLyAgICB0cmFuc2Zvcm06IHJvdGF0ZSg5MGRlZyk7XG4vLyAgfVxuLy99IiwiLmMtcmV2aWV3LXNsaWRlciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIHBhZGRpbmctdG9wOiBzcGFjZSg4KTtcbiAgcGFkZGluZy1ib3R0b206IHNwYWNlKDgpO1xuXG4gIEBpbmNsdWRlIG1xKCRtYXg6IG0pIHtcbiAgICBwYWRkaW5nLXRvcDogMDtcbiAgfVxuXG4gIEBpbmNsdWRlIG1xKG0sIDE0MDApIHtcbiAgICB3aWR0aDogY29sdW1uKDcsIDEyKTtcbiAgfVxuXG4gIEBpbmNsdWRlIG1xKDE0MDApIHtcbiAgICB3aWR0aDogY29sdW1uKDYsIDEyKTtcbiAgfVxuXG4gIC8vIHByZXZlbnQganVtcGluZ1xuICAuc3dpcGVyIHtcbiAgICAmOm5vdCgmLnN3aXBlci1pbml0aWFsaXplZCkge1xuICAgICAgbWF4LWhlaWdodDogMDtcbiAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgfVxuICB9XG59XG5cbi5jLXJldmlldy1zbGlkZXItLWluLWN0YSB7XG4gIHdpZHRoOiAxMDAlO1xuICBwYWRkaW5nLXRvcDogMDtcblxuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbn1cblxuLmMtcmV2aWV3LXNsaWRlcl9fc2xpZGVyLXdyYXBwZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAgd2lkdGg6IDEwMCU7XG5cbiAgQGluY2x1ZGUgbXEoJG1heDogbSkge1xuICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgfVxuXG59XG5cbi5jLXJldmlldyB7XG4gIEBpbmNsdWRlIGZzKDE1LCAyNCk7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBtaW4taGVpZ2h0OiAxMDAlO1xufVxuXG4uYy1yZXZpZXdfX25hbWUge1xuICBmb250LXdlaWdodDogNjAwO1xuICBtYXJnaW4tdG9wOiBzcGFjZSg1KTtcblxuICAuYy1yZXZpZXctc2xpZGVyLS1pbi1jdGEgJiB7XG4gICAgY29sb3I6IHBhbGV0dGUoc2Vjb25kYXJ5LCA2MDApO1xuICB9XG59XG5cbi5jLXJldmlld19fc2NvcmUge1xuICBmb250LXdlaWdodDogNjAwO1xuICBtYXJnaW4tYm90dG9tOiBzcGFjZSg1KTtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG5cbiAgc3BhbiB7XG4gICAgcGFkZGluZy1sZWZ0OiA2cHg7XG4gIH1cbn1cblxuLmMtcmV2aWV3X19idXR0b24ge1xuICBmbGV4OiAwIDAgYXV0bztcbiAgY3Vyc29yOiBwb2ludGVyO1xuXG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuXG4gIHdpZHRoOiA0MHB4O1xuICBoZWlnaHQ6IDQwcHg7XG4gIGJvcmRlcjogMXB4IHNvbGlkIHBhbGV0dGUobmV1dHJhbCwgMCk7XG4gIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG5cbiAgbWFyZ2luLXRvcDogc3BhY2UoOCk7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgb3BhY2l0eTogMC41O1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuM3M7XG5cbiAgQGluY2x1ZGUgbXEoJG1heDogbSkge1xuICAgIG1hcmdpbi10b3A6IHNwYWNlKDQpO1xuICAgIG1hcmdpbi1sZWZ0OiBzcGFjZSgxKTtcbiAgICBtYXJnaW4tcmlnaHQ6IHNwYWNlKDEpO1xuICB9XG5cbiAgQGluY2x1ZGUgbXEobSwgMTQwMCkge1xuICAgIG1hcmdpbi1sZWZ0OiBzcGFjZSgzKTtcbiAgICBtYXJnaW4tcmlnaHQ6IHNwYWNlKDMpO1xuICB9XG5cbiAgQGluY2x1ZGUgbXEoMTQwMCkge1xuICAgIHdpZHRoOiA1NnB4O1xuICAgIGhlaWdodDogNTZweDtcbiAgfVxuXG4gICY6aG92ZXIge1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cblxuICBAaW5jbHVkZSBtcSgkbWF4OiBtKSB7XG4gICAgb3JkZXI6IDI7XG4gIH1cblxuICAuYy1yZXZpZXctc2xpZGVyLS1pbi1jdGEgJiB7XG4gICAgb3BhY2l0eTogMTtcbiAgICBjb2xvcjogcGFsZXR0ZShzZWNvbmRhcnksIDYwMCk7XG4gICAgYm9yZGVyLWNvbG9yOiBwYWxldHRlKHNlY29uZGFyeSwgNjAwKTtcblxuICAgICY6aG92ZXIge1xuICAgICAgb3BhY2l0eTogLjU7XG4gICAgfVxuICB9XG59XG5cbi5jLXJldmlld19fYnV0dG9uLS1yaWdodCB7XG5cbiAgQGluY2x1ZGUgbXEoMTQwMCkge1xuICAgIG1hcmdpbi1sZWZ0OiBzcGFjZSg1KTtcbiAgfVxuXG4gIHN2ZyB7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoMjcwZGVnKTtcbiAgfVxufVxuXG4uYy1yZXZpZXdfX2J1dHRvbi0tbGVmdCB7XG5cbiAgQGluY2x1ZGUgbXEoMTQwMCkge1xuICAgIG1hcmdpbi1yaWdodDogc3BhY2UoNSk7XG4gIH1cblxuICBzdmcge1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDkwZGVnKTtcbiAgfVxufVxuXG5cbi5zd2lwZXItY29udGFpbmVyIHtcbiAgaGVpZ2h0OiAxMDAlO1xuICBtYXgtaGVpZ2h0OiAxMDB2dztcbiAgLy8gQ1NTIEdyaWQvRmxleGJveCBidWcgc2l6ZSB3b3JrYXJvdW5kXG4gIC8vIEBzZWUgaHR0cHM6Ly9naXRodWIuY29tL2tlbndoZWVsZXIvc2xpY2svaXNzdWVzLzk4MlxuICBtaW4taGVpZ2h0OiAwO1xuICBtaW4td2lkdGg6IDA7XG4gIG1heC13aWR0aDogMTAwdnc7XG4gIHdpZHRoOiAxMDAlO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICAuc3dpcGVyLXNsaWRle1xuICAgIHdpZHRoOiBhdXRvO1xuICAgIGZsZXgtc2hyaW5rOiAwO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBtYXgtaGVpZ2h0OiAxMDAlO1xuICB9XG5cbiAgLnN3aXBlci13cmFwcGVye1xuICAgIG1heC1oZWlnaHQ6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAldDtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICB9XG59IiwiLmMtaGVhZGVyLXRvcCB7XG4gIEBpbmNsdWRlIGNvbnRhaW4oKTtcblxuICBAaW5jbHVkZSBtcSg1MDApIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIG1pbi1oZWlnaHQ6IDQ4cHg7XG4gIH1cbn1cblxuLmMtaGVhZGVyLXRvcF9fY29udGFpbmVyIHtcbiAgaGVpZ2h0OiAxMDAlO1xufVxuXG4uYy1oZWFkZXItdG9wX19pdGVtIHtcbiAgQGluY2x1ZGUgZnMoMTMpO1xufVxuXG4uYy1oZWFkZXItdG9wX19pdGVtLS1sb2NhdGlvbiB7XG4gIHdpZHRoOiAyMDBweDtcblxuICBzdmcge1xuICAgIGNvbG9yOiBwYWxldHRlKG5ldXRyYWwsIDMwMCk7XG4gICAgd2lkdGg6IDE3cHg7XG4gICAgaGVpZ2h0OiAxMnB4O1xuICB9XG5cbiAgQGluY2x1ZGUgbXEoJG1heDogJGJwLWhlYWRlci1sYXJnZSkge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cblxuLmMtaGVhZGVyLXRvcF9faXRlbS0tcGhvbmUge1xuICBhbGlnbi1zZWxmOiBzdHJldGNoO1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcblxuICBAaW5jbHVkZSBtcSgkbWF4OiA1MDApIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtaW4taGVpZ2h0OiA0OHB4O1xuICB9XG5cbiAgQGluY2x1ZGUgbXEoNTAwKSB7XG4gICAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcbiAgICB3aWR0aDogMjAwcHg7XG4gIH1cbn1cblxuLmMtaGVhZGVyLXRvcF9faXMtb3BlbiB7XG4gIEBpbmNsdWRlIGZzKDEzKTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBwYWRkaW5nLXJpZ2h0OiAxNnB4O1xuXG4gICY6YmVmb3JlIHtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBtYXJnaW4tcmlnaHQ6IHNwYWNlKDEuNSk7XG4gICAgd2lkdGg6IDZweDtcbiAgICBoZWlnaHQ6IDZweDtcbiAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0ycHgpO1xuICB9XG5cbiAgJi5vcGVuOmJlZm9yZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogcGFsZXR0ZSh0ZXJ0aWFyeSwgNTAwKTtcbiAgfVxuICAmLmNsb3NlZDpiZWZvcmUge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHJlZDtcbiAgfVxuXG4gICY6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHJpZ2h0OiAwO1xuICAgIHRvcDogNTAlO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB3aWR0aDogOHB4O1xuICAgIGhlaWdodDogMXB4O1xuICAgIGJhY2tncm91bmQtY29sb3I6IHBhbGV0dGUobmV1dHJhbCwgMzAwKTtcbiAgfVxuXG4gIEBpbmNsdWRlIG1xKCRtYXg6ICRicC1oZWFkZXItbGFyZ2UpIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgICY6YWZ0ZXIge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG4gIH1cbiAgQGluY2x1ZGUgbXEoJG1heDogNTAwKSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuXG4uYy1oZWFkZXItdG9wX19ob3VycyB7XG4gIGNvbG9yOiAjOThhMWE5O1xuICBwYWRkaW5nLWxlZnQ6IDhweDtcblxuICBAaW5jbHVkZSBtcSgkbWF4OiAkYnAtaGVhZGVyLWxhcmdlKSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuXG4uYy1oZWFkZXItdG9wX19waG9uZSB7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblxuICAmOmhvdmVyIHtcbiAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgfVxufSIsIi5jLXN0YXJzIHtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIHdpZHRoOiBtYXgtY29udGVudDtcbn1cblxuLmMtc3RhcnNfX3N0YXIge1xuICB3aWR0aDogMTRweDtcbiAgaGVpZ2h0OiAxNHB4O1xuICBtYXJnaW4tbGVmdDogNHB4O1xuICAmOmZpcnN0LW9mLXR5cGUge1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICB9XG59IiwiLmMtZm9vdGVyLWNhcmQge1xuICB3aWR0aDogMjY0cHg7XG4gIGJhY2tncm91bmQtY29sb3I6IHBhbGV0dGUoc2Vjb25kYXJ5LCA0MDApO1xuICBib3JkZXItcmFkaXVzOiBzcGFjZSgzKTtcbiAgcGFkZGluZzogc3BhY2UoNCk7XG5cbiAgc3ZnIHtcbiAgICBtYXJnaW4tYm90dG9tOiBzcGFjZSgxKTtcbiAgfVxufVxuXG4uYy1mb290ZXItY2FyZF9fdGV4dCB7XG4gIEBpbmNsdWRlIGZzKDEyKVxufSIsIi5jLXRleHQtaW1hZ2UtZmFxIHtcbiAgaDUge1xuICAgIGZvbnQtc2l6ZTogMjBweDtcbiAgICBmb250LXdlaWdodDogNjAwO1xuICAgIGNvbG9yOiBwYWxldHRlKHNlY29uZGFyeSwgNjAwKTtcbiAgICBwYWRkaW5nLWJvdHRvbTogc3BhY2UoMyk7XG5cblxuICB9XG59IiwiLmMtdGV4dC1pbWFnZS1ob3VycyB7XG4gIGNvbG9yOiBwYWxldHRlKHNlY29uZGFyeSwgNTUwKTtcbiAgbWFyZ2luLWJvdHRvbTogc3BhY2UoNSk7XG59XG5cbi5jLXRleHQtaW1hZ2UtaG91cnMtLW9uLWRhcmsge1xuICBjb2xvcjogcGFsZXR0ZShuZXV0cmFsLCAwKTtcbn0iLCIuYy10ZWFtLWNhcmQge1xuICAvL3dpZHRoOiAyMDZweDtcbiAgLy9oZWlnaHQ6IDMzNnB4O1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xufVxuXG4uYy10ZWFtLWNhcmRfX2ltZyB7XG4gIGJvcmRlci1yYWRpdXM6IDEycHg7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IGF1dG87XG59XG5cbi5jLXRlYW0tY2FyZF9faW5mbyB7XG4gIGNvbG9yOiBwYWxldHRlKHNlY29uZGFyeSwgNjAwKTtcbn1cblxuLmMtdGVhbS1jYXJkX19oZWFkaW5nIHtcbiAgQGluY2x1ZGUgZnMoMjAsIDMyKVxufVxuXG4uYy10ZWFtLWNhcmRfX3N1YmhlYWRpbmcge1xuICBAaW5jbHVkZSBmcygxNSwgMjQpXG59IiwiLmMtZGFtYWdlLWZvcm0ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG1hcmdpbi1ib3R0b206IHNwYWNlKDUpO1xuICBwYWRkaW5nOiBzcGFjZSg2KTtcblxuICBjb2xvcjogcGFsZXR0ZShuZXV0cmFsLDApO1xuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQoMTgwZGVnLCAjMjc1MUEzIDAlLCAjMTkzRThBIDc1JSk7XG4gIGJvcmRlci1yYWRpdXM6IDI0cHg7XG5cbiAgQGluY2x1ZGUgbXEoJG1heDogNTUyKSB7XG4gICAgcGFkZGluZy1sZWZ0OiBzcGFjZSgzKTtcbiAgICBwYWRkaW5nLXJpZ2h0OiBzcGFjZSgzKTtcbiAgfVxufVxuXG4uYy1kYW1hZ2UtZm9ybV9faGVhZGVyIHtcbiAgQGluY2x1ZGUgZnMoMjAsIDMyKTtcbiAgQGluY2x1ZGUgbXEoMzYwLCAxNDQwKSB7XG4gICAgZm9udC1zaXplOiBjYWxjLWludGVycG9sYXRpb24oMzYwcHgsIDIwcHgsIDE0NDBweCwgMzJweCk7XG4gICAgbGluZS1oZWlnaHQ6IGNhbGMtaW50ZXJwb2xhdGlvbigzNjBweCwgMzJweCwgMTQ0MHB4LCA0NHB4KTtcbiAgfVxuICBAaW5jbHVkZSBtcSgxNDQwKSB7XG4gICAgQGluY2x1ZGUgZnMoMzIsIDQ0KTtcbiAgfVxufVxuXG4uYy1kYW1hZ2UtZm9ybV9fc3ViaGVhZGVyIHtcbiAgQGluY2x1ZGUgZnMoMjAsIDMyKTtcbiAgZm9udC1mYW1pbHk6ICRmb250LXBvcHBpbnM7XG59XG5cbi5jLWRhbWFnZS1mb3JtX19saXN0LWl0ZW0ge1xuICBsaXN0LXN0eWxlLWltYWdlOiB1cmwoJy9pbWcvY2hlY2svY2hlY2tlZC5zdmcnKTtcbiAgcGFkZGluZy1sZWZ0OiAxMXB4O1xuICBAaW5jbHVkZSBmcygxNSwgMjQpO1xuICBjb2xvcjogcGFsZXR0ZShzZWNvbmRhcnksIDMwMClcbn1cblxuLmMtZGFtYWdlLWZvcm1fX25hbWUtaW5wdXRzIHtcbiAgZGlzcGxheTogZ3JpZDtcbiAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxMGZyIDdmciAxMGZyO1xuICBnYXA6IHNwYWNlKDIpO1xuXG4gIGNvbG9yOiBwYWxldHRlKG5ldXRyYWwsIDgwMCk7XG5cbiAgQGluY2x1ZGUgbXEoJG1heDogNTUyKSB7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAyZnIgM2ZyO1xuXG4gICAgLmMtZGFtYWdlLWZvcm1fX2lucHV0OmZpcnN0LWNoaWxkIHtcbiAgICAgIGdyaWQtY29sdW1uOiAxIC8gc3BhbiAyXG4gICAgfVxuICB9XG59XG5cbi5jLWRhbWFnZS1mb3JtX19pbnB1dCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICBpbnB1dCB7XG4gICAgQGluY2x1ZGUgZnMoMTUsIDI0KTtcbiAgICBjb2xvcjogcGFsZXR0ZShuZXV0cmFsLCA4MDApO1xuICAgIGJvcmRlcjogMXB4IHNvbGlkIHBhbGV0dGUobmV1dHJhbCwgMCk7XG4gICAgYm9yZGVyLXJhZGl1czogNnB4O1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBhZGRpbmc6IHNwYWNlKDIpO1xuICAgIHdpZHRoOiAxMDAlO1xuXG4gICAgJi5kb3duIHtcbiAgICAgIHBhZGRpbmctdG9wOiBzcGFjZSgzKTtcbiAgICAgIHBhZGRpbmctYm90dG9tOiBzcGFjZSgxKTtcbiAgICB9XG5cbiAgICAmLmVycm9yIHtcbiAgICAgIGJvcmRlcjogMXB4IHNvbGlkIHBhbGV0dGUocHJpbWFyeSwgNjAwKTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmU3ZDk7XG4gICAgfVxuICB9XG5cbiAgc3ZnIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiA1MCU7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICAgIHJpZ2h0OiBzcGFjZSgyKTtcbiAgICBjb2xvcjogcGFsZXR0ZSh0ZXJ0aWFyeSwgNTAwKTtcbiAgfVxuXG4gIC5maWVsZE5hbWUge1xuICAgIEBpbmNsdWRlIGZzKDEyLCAxNik7XG4gICAgY29sb3I6IHBhbGV0dGUodGVydGlhcnksIDUwMCk7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogc3BhY2UoMSk7XG4gICAgbGVmdDogc3BhY2UoMik7XG4gICAgdXNlci1zZWxlY3Q6IG5vbmU7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgZGlzcGxheTogbm9uZTtcblxuICAgICYudmlzaWJsZSB7XG4gICAgICBkaXNwbGF5OiBpbml0aWFsO1xuICAgIH1cbiAgfVxufVxuXG4uYy1kYW1hZ2UtZm9ybV9faW5wdXQtLWZ1bGwtd2lkdGgge1xuICB3aWR0aDogMTAwJTtcbn1cblxuLmMtZGFtYWdlLWZvcm1fX2lucHV0LS1jaGFzc2lzLW51bWJlciB7XG4gIG1hcmdpbi10b3A6IHNwYWNlKDIpO1xufVxuXG4uYy1kYW1hZ2UtZm9ybV9fbmFtZS1pbnB1dC1sYWJlbCB7XG5cbiAgQGluY2x1ZGUgZnMoMTUsIDI0KTtcbiAgbWFyZ2luLWJvdHRvbTogc3BhY2UoMSk7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG5cbiAgQGluY2x1ZGUgbXEoNzAwKSB7XG4gICAgQGluY2x1ZGUgZnMoMjAsIDMyKTtcbiAgICBmb250LXdlaWdodDogNDAwO1xuICAgIG1hcmdpbi1ib3R0b206IHNwYWNlKDIpO1xuICB9XG59XG5cbi5jLWRhbWFnZS1mb3JtX19ub3RpZmljYXRpb24ge1xuICBkaXNwbGF5OiBmbGV4O1xuICBwYWRkaW5nOiAxM3B4IDEycHggMTNweCAxNnB4O1xuICBtaW4taGVpZ2h0OiBzcGFjZSg2KTtcblxuICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDIwLCA2MSwgMC4xNik7XG4gIGJvcmRlci1yYWRpdXM6IDZweDtcbiAgZm9udC1zaXplOiAxM3B4O1xuICBjb2xvcjogI0I2Q0VGMDtcblxuICBzdmcge1xuICAgIG1hcmdpbi10b3A6IDJweDtcbiAgICBmbGV4OiAwIDAgYXV0bztcbiAgICBtYXJnaW4tcmlnaHQ6IHNwYWNlKDEpO1xuICAgIGNvbG9yOiAjQjZDRUYwO1xuICB9XG59XG5cbi5jLWRhbWFnZS1mb3JtX192YWxpZGF0aW9uLWVycm9yIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBtYXJnaW4tdG9wOiBzcGFjZSgxKTtcbiAgbWFyZ2luLWJvdHRvbTogc3BhY2UoMSk7XG5cbiAgcGFkZGluZzogMTFweCBzcGFjZSgyKSAxMXB4IDM5cHg7XG4gIGJhY2tncm91bmQ6IHJnYmEoMCwgMjAsIDYxLCAwLjE2KTtcbiAgYm9yZGVyLXJhZGl1czogNnB4O1xuICBmb250LXNpemU6IDEzcHg7XG4gIGNvbG9yOiAjQjZDRUYwO1xuICB3aWR0aDogMTAwJTtcblxuICBzdmcge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBsZWZ0OiBzcGFjZSgyKTtcbiAgICB0b3A6IDUwJTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG5cbiAgICBjb2xvcjogI0I2Q0VGMDtcbiAgfVxufVxuXG4uYy1kYW1hZ2UtZm9ybV9fZGF0ZS1sYWJlbCB7XG4gIG1hcmdpbi1ib3R0b206IHNwYWNlKDEpO1xuXG4gIHRleHQtYWxpZ246IHJpZ2h0O1xuICBAaW5jbHVkZSBmcygxNSwgMjQpO1xuICBjb2xvcjogcGFsZXR0ZShzZWNvbmRhcnksIDMwMCk7XG4gIEBpbmNsdWRlIG1xKCRtYXg6IDU1Mikge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cblxuLmMtZGFtYWdlLWZvcm1fX2RhdGUtbGFiZWwtLW1vYmlsZSB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG5cbiAgQGluY2x1ZGUgbXEoJG1heDogNTUyKSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cbn1cblxuLmMtZGFtYWdlLWZvcm1fX2Rhcmsge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMTkzZTg3O1xuICBwYWRkaW5nOiBzcGFjZSgzKTtcbiAgYm9yZGVyLXJhZGl1czogMTJweDtcbn1cblxuLmMtZGFtYWdlLWZvcm1fX3JvdyB7XG4gIHdpZHRoOiAxMDAlO1xuICBkaXNwbGF5OiBmbGV4O1xuICBnYXA6IHNwYWNlKDIpO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG5cbiAgJiArICYge1xuICAgIG1hcmdpbi10b3A6IHNwYWNlKDMpO1xuICB9XG5cbiAgQGluY2x1ZGUgbXEoJG1heDogNTUyKSB7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgfVxufVxuXG4uYy1kYW1hZ2UtZm9ybV9fc3RlcC1pY29uIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDNweDtcbiAgbGVmdDogI3soc3BhY2UoNikgKyAyMHB4KSAqIC0xfTsgLy8gUGFkZGluZyArIGhhbGYgb2Ygd2lkdGhcbiAgd2lkdGg6IDQwcHg7XG4gIGhlaWdodDogNDBweDtcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogcGFsZXR0ZShzZWNvbmRhcnksIDQwMCk7XG5cbiAgQGluY2x1ZGUgbXEoJG1heDogNjIwKSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuXG4gIC5jLWRhbWFnZS1mb3JtX19pbWFnZS1zdGVwcyAmIHtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogI3soc3BhY2UoNikgKyBzcGFjZSgzKSArIDIwcHgpICogLTF9OyAvLyBQYWRkaW5nICsgcGFkZGluZyBkYXJrIGJveCArIGhhbGYgb2Ygd2lkdGhcbiAgfVxuXG59XG5cblxuLmMtZGFtYWdlLWZvcm1fX2xpY2VuY2UtcGxhdGUtZGF0ZS13cmFwcGVyIHtcbiAgZGlzcGxheTogZ3JpZDtcbiAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnIgNTAlO1xuXG4gIGNvbHVtbi1nYXA6IHNwYWNlKDIpO1xuXG4gIEBpbmNsdWRlIG1xKCRtYXg6IDU1Mikge1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMTAwJTtcbiAgfVxufVxuXG4uYy1kYW1hZ2UtZm9ybV9fbGljZW5jZS1wbGF0ZSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgY29sb3I6IHBhbGV0dGUobmV1dHJhbCwgODAwKTtcblxuICBpbnB1dCB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiA1NnB4O1xuICAgIGJvcmRlcjogbm9uZTtcbiAgICBib3JkZXItcmFkaXVzOiA4cHggNnB4IDZweCA4cHg7XG4gICAgcGFkZGluZy10b3A6IDRweDtcbiAgICBwYWRkaW5nLWxlZnQ6IDQ1cHg7XG4gIH1cblxuICAmLmVycm9yIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCBwYWxldHRlKHByaW1hcnksIDYwMCk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZTdkOTtcbiAgICBib3JkZXItcmFkaXVzOiA2cHg7XG5cbiAgICBpbnB1dCB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICB9XG4gIH1cbn1cblxuLmMtZGFtYWdlLWZvcm1fX2xpY2VuY2UtcGxhdGUtZmlndXJlIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiAwO1xuICB0b3A6IDA7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgd2lkdGg6IDMycHg7XG4gIGhlaWdodDogMTAwJTtcbiAgcGFkZGluZzogc3BhY2UoMC43NSkgMCBzcGFjZSgwLjUpO1xuXG4gIGJhY2tncm91bmQtY29sb3I6IHBhbGV0dGUoc2Vjb25kYXJ5LCA0MDApO1xuICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiA2cHg7XG4gIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDZweDtcblxuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGNvbG9yOiB3aGl0ZTtcbiAgdXNlci1zZWxlY3Q6IG5vbmU7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cblxuXG5cbi5jLWRhbWFnZS1mb3JtX19saWNlbmNlLXBsYXRlLWNoZWNrIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDUwJTtcbiAgcmlnaHQ6IHNwYWNlKDIpO1xuXG4gIGNvbG9yOiBwYWxldHRlKHRlcnRpYXJ5LCA1MDApO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG59XG5cbi5jLWRhbWFnZS1mb3JtX19kYXRlLXdyYXBwZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG1heC1oZWlnaHQ6IDU4cHg7XG5cbiAgJi5lcnJvciB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgcGFsZXR0ZShwcmltYXJ5LCA2MDApO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmU3ZDk7XG4gICAgaW5wdXQge2JhY2tncm91bmQ6IHRyYW5zcGFyZW50O31cbiAgICBib3JkZXItcmFkaXVzOiA2cHg7XG4gIH1cbn1cblxuLmMtZGFtYWdlLWZvcm1fX2RhdGUtaWNvbiB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgcmlnaHQ6IHNwYWNlKDIpO1xuICB0b3A6IDUwJTtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgY29sb3I6IHBhbGV0dGUoc2Vjb25kYXJ5LCA0MDApO1xufVxuXG4uYy1kYW1hZ2UtZm9ybV9fZGF0ZS1pY29uLS1ncmVlbiB7XG4gIGNvbG9yOiBwYWxldHRlKHRlcnRpYXJ5LCA1MDApO1xufVxuXG4uYy1kYW1hZ2UtZm9ybV9fZGF0ZS1pY29uLS1yZWQge1xuICBjb2xvcjogcmVkO1xufVxuXG4uYy1kYW1hZ2UtZm9ybV9fZGF0ZSB7XG4gIG1heC13aWR0aDogMTAwJTtcbiAgY29sb3I6IHBhbGV0dGUobmV1dHJhbCwgODAwKTtcbiAgYm9yZGVyLXJhZGl1czogNnB4O1xuICBoZWlnaHQ6IDU2cHg7XG4gIGJvcmRlcjogbm9uZTtcbiAgcGFkZGluZy10b3A6IDRweDtcbiAgcGFkZGluZy1sZWZ0OiBzcGFjZSgyKTtcblxuICBAaW5jbHVkZSBtcSgkbWF4OiA1NTIpIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxufVxuXG4uYy1kYW1hZ2UtZm9ybV9fcXVlc3Rpb24td3JhcHBlciB7XG4gIG1hcmdpbi10b3A6IHNwYWNlKDQpO1xufVxuXG4uYy1kYW1hZ2UtZm9ybV9fcXVlc3Rpb24ge1xuICBAaW5jbHVkZSBmcygxNSwgMjQpO1xuICBAaW5jbHVkZSBmdyg2MDApO1xufVxuXG4uYy1kYW1hZ2UtZm9ybV9fY291bnRyeS10b2dnbGUge1xuICBtYXJnaW4tdG9wOiBzcGFjZSgxKTtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBAaW5jbHVkZSBmcygxMywgMTgpO1xuICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbn1cblxuLmMtZGFtYWdlLWZvcm1fX2NoZWNrYm94IHtcbiAgd2lkdGg6IDE2cHg7XG4gIGhlaWdodDogMTZweDtcbiAgbWFyZ2luOiBzcGFjZSgzKSAxMnB4IDAgMDtcbiAgYXBwZWFyYW5jZTogbm9uZTtcblxuICBib3JkZXI6IDFweCBzb2xpZCBwYWxldHRlKG5ldXRyYWwsIDApO1xuICBib3JkZXItcmFkaXVzOiAycHg7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgzcHgpO1xuXG4gICY6Y2hlY2tlZCB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgcGFsZXR0ZSh0ZXJ0aWFyeSwgNTAwKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBwYWxldHRlKHRlcnRpYXJ5LCA1MDApO1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi9pbWcvY2hlY2svY2hlY2tib3gtY2hlY2suc3ZnXCIpO1xuICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuICB9XG59XG5cbi5jLWRhbWFnZS1mb3JtX19yYWRpbyB7XG4gIGFwcGVhcmFuY2U6IG5vbmU7XG4gIHdpZHRoOiAxNnB4O1xuICBoZWlnaHQ6IDE2cHg7XG4gIGJvcmRlcjogMXB4IHNvbGlkIHBhbGV0dGUobmV1dHJhbCwgMCk7XG4gIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgbWFyZ2luOiAwIDEycHggMCAwO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoM3B4KTtcblxuICAmOmNoZWNrZWQge1xuICAgIGJvcmRlcjogNXB4IHNvbGlkIHBhbGV0dGUodGVydGlhcnksIDUwMCk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogcGFsZXR0ZShuZXV0cmFsLCAwKTtcbiAgfVxuXG4gICYuZXJyb3Ige1xuICAgIGJvcmRlci1jb2xvcjogcGFsZXR0ZShwcmltYXJ5LCA1MDApO1xuICB9XG59XG5cbi5jLWRhbWFnZS1mb3JtX19sYWJlbCB7XG4gIG1hcmdpbi1yaWdodDogNDBweDtcbn1cblxuLmMtZGFtYWdlLWZvcm1fX2xvY2F0aW9uLWlucHV0LXdyYXBwZXIge1xuICB3aWR0aDogMTAwJTtcbn1cblxuLmMtZGFtYWdlLWZvcm1fX2xvY2F0aW9uLWxhYmVsIHtcbiAgbWFyZ2luLWJvdHRvbTogc3BhY2UoMSk7XG4gIG1hcmdpbi10b3A6IHNwYWNlKDMpO1xuXG4gIEBpbmNsdWRlIGZzKDE1LCAyNCk7XG4gIGNvbG9yOiBwYWxldHRlKHNlY29uZGFyeSwgMzAwKTtcbn1cblxuLmMtZGFtYWdlLWZvcm1fX2xvY2F0aW9uLWlucHV0IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gIGlucHV0IHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMTAwJTtcbiAgICBwYWRkaW5nOiBzcGFjZSgyKTtcblxuICAgIEBpbmNsdWRlIGZzKDE1LCAyNCk7XG4gICAgYm9yZGVyOiBub25lO1xuICAgIGJvcmRlci1yYWRpdXM6IDZweDtcbiAgICBjb2xvcjogcGFsZXR0ZShuZXV0cmFsLCA4MDApO1xuXG4gICAgJjpsYXN0LW9mLXR5cGUge1xuICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgIH1cblxuICAgICYuZG93biB7XG4gICAgICBwYWRkaW5nLXRvcDogc3BhY2UoMyk7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogc3BhY2UoMSk7XG4gICAgfVxuICB9XG5cbiAgc3ZnIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgcmlnaHQ6IHNwYWNlKDIpO1xuICAgIHRvcDogNTAlO1xuXG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICAgIGNvbG9yOiBwYWxldHRlKHRlcnRpYXJ5LCA1MDApO1xuICB9XG5cbiAgLmZpZWxkTmFtZSB7XG4gICAgQGluY2x1ZGUgZnMoMTIsIDE2KTtcbiAgICBjb2xvcjogcGFsZXR0ZSh0ZXJ0aWFyeSwgNTAwKTtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiBzcGFjZSgxKTtcbiAgICBsZWZ0OiBzcGFjZSgyKTtcbiAgICB1c2VyLXNlbGVjdDogbm9uZTtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICBkaXNwbGF5OiBub25lO1xuXG4gICAgJi52aXNpYmxlIHtcbiAgICAgIGRpc3BsYXk6IGluaXRpYWw7XG4gICAgfVxuICB9XG5cbiAgJi5lcnJvciB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgcGFsZXR0ZShwcmltYXJ5LCA2MDApO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmU3ZDk7XG4gICAgYm9yZGVyLXJhZGl1czogNnB4O1xuICAgIGlucHV0IHtiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDt9XG4gIH1cbn1cblxuLmMtZGFtYWdlLWZvcm1fX3NlbGVjdCB7XG4gIC8vIHJlc2V0XG4gIHNlbGVjdCB7XG4gICAgYXBwZWFyYW5jZTogbm9uZTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBib3JkZXI6IG5vbmU7XG4gICAgbWFyZ2luOiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGZvbnQtZmFtaWx5OiBpbmhlcml0O1xuICAgIGZvbnQtc2l6ZTogaW5oZXJpdDtcbiAgICBjdXJzb3I6IGluaGVyaXQ7XG4gICAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7XG4gICAgb3V0bGluZTogbm9uZTtcbiAgICBwYWRkaW5nOiBzcGFjZSgyKTtcbiAgfVxuXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xuXG4gIEBpbmNsdWRlIGZzKDE1LCAyNCk7XG4gIGJvcmRlcjogbm9uZTtcbiAgYm9yZGVyLXJhZGl1czogNnB4O1xuICBjb2xvcjogcGFsZXR0ZShuZXV0cmFsLCA4MDApO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTtcbiAgY3Vyc29yOiBwb2ludGVyO1xuXG4gIHN2ZyB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHJpZ2h0OiAxNnB4O1xuICAgIHRvcDogNTAlO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgICBjb2xvcjogcGFsZXR0ZSh0ZXJ0aWFyeSwgNTAwKTtcblxuICAgICYuY2hlY2sge1xuICAgICAgY29sb3I6IHBhbGV0dGUobmV1dHJhbCwgODAwKTtcbiAgICB9XG4gIH1cblxuICAmLmVycm9yIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCBwYWxldHRlKHByaW1hcnksIDYwMCk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZTdkOTtcbiAgfVxuXG59XG5cbi5jLWRhbWFnZS1mb3JtX19sb2NhdGlvbi1pbnB1dC0td2lkZSB7XG4gIHdpZHRoOiA2MSU7XG5cbiAgQGluY2x1ZGUgbXEoJG1heDogNTUyKSB7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbn1cblxuLmMtZGFtYWdlLWZvcm1fX2xvY2F0aW9uLWlucHV0LS1leHRyYS13aWRlIHtcbiAgd2lkdGg6IDcwJTtcblxuICBAaW5jbHVkZSBtcSgkbWF4OiA1NTIpIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxufVxuXG4uYy1kYW1hZ2UtZm9ybV9faW1hZ2Utc3RlcHMge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcblxuICBAaW5jbHVkZSBtcSgkbWF4OiA1NTIpIHtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIGdhcDogMTJweDtcbiAgfVxufVxuXG5cbi5jLWRhbWFnZS1mb3JtX19pbWFnZS1zdGVwIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuXG4gIHAge1xuICAgIGZvbnQtc2l6ZTogMTNweDtcbiAgICBtYXJnaW4tYm90dG9tOiBzcGFjZSgxKTtcbiAgfVxuXG4gIEBpbmNsdWRlIG1xKCRtYXg6IDU1Mikge1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgYWxpZ24taXRlbXM6IGJhc2VsaW5lO1xuXG4gICAgcCB7XG4gICAgICBvcmRlcjogMTtcbiAgICAgIG1hcmdpbi1sZWZ0OiBzcGFjZSgzKTtcbiAgICB9XG4gIH1cbn1cblxuLmMtZGFtYWdlLWZvcm1fX2JsdWUtYm9sZCB7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIGNvbG9yOiBwYWxldHRlKHNlY29uZGFyeSwgMzAwKTtcbn1cblxuLmMtZGFtYWdlLWZvcm1fX2JsdWV7XG4gIGNvbG9yOiBwYWxldHRlKHNlY29uZGFyeSwgMzAwKTtcbn1cblxuLmMtZGFtYWdlLWZvcm1fX2VtYWlsIHtcbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG59XG5cbi5jLWRhbWFnZS1mb3JtX3VwbG9hZC1pbnB1dCB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi5jLWRhbWFnZS1mb3JtX3VwbG9hZC1sYWJlbCB7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgbWluLXdpZHRoOiAxMjhweDtcbiAgZGl2IHtcbiAgICB3aWR0aDogMTI4cHg7XG4gICAgc3ZnIHtcbiAgICAgIG1hcmdpbi1yaWdodDogc3BhY2UoMSk7XG4gICAgfVxuICB9XG59XG5cbi5jLWRhbWFnZS1mb3JtX19mcmFtZSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIHotaW5kZXg6IDQ7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIHdpZHRoOiAxMjhweDtcbiAgaGVpZ2h0OiA4MHB4O1xuXG4gICY6YmVmb3JlIHtcbiAgICBjb250ZW50OiAnJztcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgei1pbmRleDogLTE7XG4gICAgbGVmdDogMDtcbiAgICB0b3A6IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgYm90dG9tOiAwO1xuXG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYShwYWxldHRlKHNlY29uZGFyeSwgMzAwKSwgMC4xKTtcbiAgICBib3JkZXItcmFkaXVzOiA2cHg7XG4gIH1cblxuICAuY29ybmVycyB7XG4gICAgaW1nIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHotaW5kZXg6IDI7XG5cbiAgICAgICY6bnRoLWNoaWxkKDEpIHtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgfVxuXG4gICAgICAmOm50aC1jaGlsZCgyKSB7XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDkwZGVnKTtcbiAgICAgIH1cblxuICAgICAgJjpudGgtY2hpbGQoMykge1xuICAgICAgICBib3R0b206IDA7XG4gICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgxODBkZWcpO1xuICAgICAgfVxuXG4gICAgICAmOm50aC1jaGlsZCg0KSB7XG4gICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMjcwZGVnKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLmMtZGFtYWdlLWZvcm1fX3BsYWNlaG9sZGVyLWltZyB7XG4gIG9wYWNpdHk6IDAuNTtcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjNzO1xuXG4gIC5jLWRhbWFnZS1mb3JtX19mcmFtZTpob3ZlciAmIHtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG59XG5cbi5jLWRhbWFnZS1mb3JtX19hZGQge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICB3aWR0aDogMTAwJTtcbiAgcGFkZGluZzogOXB4IHNwYWNlKDEpIDdweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogcGFsZXR0ZShzZWNvbmRhcnksIDQwMCk7XG4gIGJvcmRlci1yYWRpdXM6IHNwYWNlKDIpO1xuICBmb250LXNpemU6IDEzcHg7XG4gIGxpbmUtaGVpZ2h0OiAxLjI7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIGNvbG9yOiBwYWxldHRlKG5ldXRyYWwsIDApO1xuICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDAuM3M7XG5cbiAgc3ZnIHtcbiAgICBmbGV4OiAwIDAgYXV0bztcbiAgICBtYXJnaW4tdG9wOiAtMXB4O1xuICAgIG1hcmdpbi1yaWdodDogc3BhY2UoMSk7XG4gIH1cblxuICAmOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBwYWxldHRlKHNlY29uZGFyeSwgMzAwKTtcbiAgfVxuXG4gIEBpbmNsdWRlIG1xKCRtYXg6IDU1Mikge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cblxuLmMtZGFtYWdlLWZvcm1fX3VwbG9hZGVkLWltZyB7XG4gIG9iamVjdC1maXQ6IGNvdmVyO1xufVxuXG4uYy1kYW1hZ2UtZm9ybV9faW1hZ2UtZGVsZXRlIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBjb2xvcjogcGFsZXR0ZShwcmltYXJ5LCA1MDApO1xuICByaWdodDogc3BhY2UoMSk7XG4gIHRvcDogc3BhY2UoMSk7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cblxuLmMtZGFtYWdlLWZvcm1fX2ltYWdlLWZyYW1lIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xufVxuXG4uYy1kYW1hZ2UtZm9ybV9faW1hZ2UtZ3JpZCB7XG4gIGRpc3BsYXk6IGdyaWQ7XG4gIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDMsIDFmcik7XG4gIGdhcDogMTJweDtcblxufSIsIi5jLWZhcS1tZW51IHtcblx0Ym9yZGVyLXJhZGl1czogMjRweDtcblx0YmFja2dyb3VuZDogJGJsdWVHcmFkaWVudDtcblx0cGFkZGluZzogc3BhY2UoNSkgc3BhY2UoNCkgc3BhY2UoNSkgc3BhY2UoNSk7XG59XG5cbi5jLWZhcS1tZW51X19saXN0IHtcblx0bGlzdC1zdHlsZTogbm9uZTtcblx0bWFyZ2luLWxlZnQ6IDA7XG5cblx0PiAqICsgKiB7XG5cdFx0bWFyZ2luLXRvcDogc3BhY2UoMSk7XG5cdH1cbn1cblxuLmMtZmFxLW1lbnVfX2xpc3QtaXRlbSB7XG4gIFx0ZGlzcGxheTogZmxleDtcblx0anVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuXHRhbGlnbi1pdGVtczogZmxleC1zdGFydDtcblx0cGFkZGluZzogc3BhY2UoMC41KSAwO1xuXG5cdEBpbmNsdWRlIGZzKDE2LCAyNik7XG5cdGNvbG9yOiBwYWxldHRlKG5ldXRyYWwsIDMwMCk7XG5cdGN1cnNvcjogcG9pbnRlcjtcblxuXHQmOmhvdmVyIHtcblx0XHRjb2xvcjogcGFsZXR0ZShuZXV0cmFsLCAxMDApO1xuXHR9XG5cblx0Ji5pcy1hY3RpdmUge1xuXHRcdGZvbnQtd2VpZ2h0OiA2MDA7XG5cdFx0Y29sb3I6IHdoaXRlO1xuXHR9XG59XG5cbi5jLWZhcS1tZW51X19saXN0LWFycm93IHtcblx0dHJhbnNmb3JtOiByb3RhdGUoLTAuMjV0dXJuKTtcblx0Y29sb3I6IHBhbGV0dGUobmV1dHJhbCwgMzAwKTtcblx0dHJhbnNpdGlvbjogY29sb3IgMC4ycztcblxuXHQuYy1mYXEtbWVudV9fbGlzdC1pdGVtOmhvdmVyICYge1xuXHRcdGNvbG9yOiB3aGl0ZTtcblx0fVxuXG5cdC5jLWZhcS1tZW51X19saXN0LWl0ZW0uaXMtYWN0aXZlICYge1xuXHRcdGNvbG9yOiBwYWxldHRlKHByaW1hcnksIDUwMCk7XG5cdH1cbn0iLCIuYy1jdGEge1xuICBtYXgtd2lkdGg6IDQ5NnB4O1xufVxuXG4uYy1jdGEtLWluLWN0YS1mb3JtIHtcbiAgbWF4LXdpZHRoOiA5MHZ3O1xuICB3aWR0aDogMTAwJTtcblxuICBAaW5jbHVkZSBtcSgkbWF4OiAxMjMwKSB7XG4gICAgbWFyZ2luOiAwIGF1dG87XG4gIH1cbn1cblxuLmMtY3RhX19uYW1lIHtcbiAgQGluY2x1ZGUgZnMoMTUsIDE4KTtcbiAgY29sb3I6IHBhbGV0dGUoc2Vjb25kYXJ5LCA2MDApO1xuICB0ZXh0LWFsaWduOiByaWdodDtcbn1cblxuLmMtY3RhX19tYWluIHtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICBib3JkZXItcmFkaXVzOiAyNHB4O1xuICBwYWRkaW5nOiAwIHNwYWNlKDEuNSkgMCBzcGFjZSgyKTtcblxuICBAaW5jbHVkZSBtcSg1ODApIHtcbiAgICBwYWRkaW5nOiAwIHNwYWNlKDMpIDAgc3BhY2UoNik7XG4gIH1cbn1cblxuLmMtY3RhX19wZXJzb24ge1xuICBtYXJnaW4tdG9wOiBzcGFjZSgtMS41KTtcbiAgbWFyZ2luLWxlZnQ6IC0xMHB4O1xuXG4gIEBpbmNsdWRlIG1xKDU4MCkge1xuICAgIG1hcmdpbi10b3A6IHNwYWNlKC0zKTtcbiAgfVxufVxuXG4uY3RhX19wZXJzb24taW1hZ2Uge1xuICB3aWR0aDogY2xhbXAoMTEycHgsIDI3LjV2dywgMTYwcHgpO1xuICBoZWlnaHQ6IGF1dG87XG59XG5cbi5jLWN0YV9fcGhvbmUtaWNvbiB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICB3aWR0aDogMjhweDtcbiAgaGVpZ2h0OiAyOHB4O1xuICBjb2xvcjogcmdiYShwYWxldHRlKHNlY29uZGFyeSwgNjAwKSwgMC41KTtcbiAgYm9yZGVyOiAxcHggc29saWQgY3VycmVudENvbG9yO1xuICBib3JkZXItcmFkaXVzOiA1MCU7XG4gIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMC4ycywgY29sb3IgMC4ycztcblxuICBAaW5jbHVkZSBtcSg0NTApIHtcbiAgICB3aWR0aDogNDBweDtcbiAgICBoZWlnaHQ6IDQwcHg7XG4gIH1cblxuICBAaW5jbHVkZSBtcSgkbWF4OiAzNjApIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cblxuICBzdmcge1xuICAgIGFuaW1hdGlvbjoge1xuICAgICAgbmFtZTogcGhvbmUtcmluZ3M7XG4gICAgICBkdXJhdGlvbjogMS40cztcbiAgICAgIGl0ZXJhdGlvbi1jb3VudDogaW5maW5pdGU7XG4gICAgICBwbGF5LXN0YXRlOiBwYXVzZWQ7XG4gICAgfTtcblxuICAgIEBpbmNsdWRlIG1xKCRtYXg6IDQ1MCkge1xuICAgICAgd2lkdGg6IDEycHg7XG4gICAgICBoZWlnaHQ6IDEycHg7XG4gICAgfVxuICB9XG5cbiAgLmMtY3RhX19hY3Rpb246aG92ZXIgJiB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYShwYWxldHRlKHNlY29uZGFyeSwgNjAwKSwgMC4xKTtcbiAgICBjb2xvcjogcmdiYShwYWxldHRlKHNlY29uZGFyeSwgNjAwKSwgMC43NSk7XG5cbiAgICBzdmcge1xuICAgICAgYW5pbWF0aW9uLXBsYXktc3RhdGU6IHJ1bm5pbmc7XG4gICAgfVxuICB9XG59XG5cbi5jLWN0YV9fYWN0aW9uIHtcbiAgZGlzcGxheTogZmxleDtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICBhbGlnbi1zZWxmOiBjZW50ZXI7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cbiAgPiAqICsgKiB7XG4gICAgbWFyZ2luLWxlZnQ6IHNwYWNlKDEpO1xuXG4gICAgQGluY2x1ZGUgbXEoNDUwKSB7XG4gICAgICBtYXJnaW4tbGVmdDogc3BhY2UoMik7XG4gICAgfVxuICB9XG59XG5cbi5jLWN0YV9fdGVhc2VyIHtcbiAgQGluY2x1ZGUgbXEoJG1heDogNDUwKSB7XG4gICAgQGluY2x1ZGUgZnMoMTMsIDIyKTtcbiAgfVxufVxuXG4uYy1jdGFfX2xpbmsge1xuICBAaW5jbHVkZSBmcygxNiwgMjIpO1xuICBAaW5jbHVkZSBmdyhzZW1pQm9sZCk7XG4gIGNvbG9yOiBwYWxldHRlKHNlY29uZGFyeSwgNjAwKTtcblxuICBAaW5jbHVkZSBtcSg0NTApIHtcbiAgICBAaW5jbHVkZSBmcygxOCwgMjYpO1xuICB9XG5cbiAgLmMtY3RhX19hY3Rpb246aG92ZXIgJiB7XG4gICAgY29sb3I6IHBhbGV0dGUoc2Vjb25kYXJ5LCA4MDApO1xuICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICB9XG59IiwiLmMtZmlyZS1hbGVydC1vdmVybGF5IHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC41KTtcbiAgei1pbmRleDogOTk5ODtcbiAgYW5pbWF0aW9uOiBmYWRlSW4gMC4zcyBlYXNlLW91dDtcbn1cblxuLmMtZmlyZS1hbGVydCB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgdG9wOiA1MCU7XG4gIGxlZnQ6IDUwJTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG4gIHotaW5kZXg6IDk5OTk7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmMTQzNDM7XG4gIGNvbG9yOiBwYWxldHRlKG5ldXRyYWwsIDApO1xuICBwYWRkaW5nOiBzcGFjZSgyKTtcbiAgYm9yZGVyLXJhZGl1czogNHB4O1xuICBib3gtc2hhZG93OiAwIDRweCAxMnB4IHJnYmEoMCwgMCwgMCwgMC4xNSk7XG4gIGFuaW1hdGlvbjogZmFkZUluU2NhbGUgMC41cyBlYXNlLW91dDtcbiAgd2lkdGg6IGNhbGMoMTAwJSAtIDQwcHgpO1xuICBtYXgtd2lkdGg6IDgwMHB4O1xuICBoZWlnaHQ6IDI1MHB4O1xufVxuXG4uYy1maXJlLWFsZXJ0X19jb250ZW50IHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGhlaWdodDogMTAwJTtcbn1cblxuLmMtZmlyZS1hbGVydF9fdGV4dCB7XG4gIGZvbnQtZmFtaWx5OiAnTW9udHNlcnJhdCcsIHNhbnMtc2VyaWY7XG4gIGZvbnQtc2l6ZTogMjRweDtcbiAgbGluZS1oZWlnaHQ6IDEuNDtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbiAgcGFkZGluZy1pbmxpbmU6IHNwYWNlKDgpO1xuXG4gIEBpbmNsdWRlIG1xKG51bGwsIG0pIHtcbiAgICBmb250LXNpemU6IDE4cHg7XG4gIH1cblxuICBzdHJvbmcge1xuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIH1cbn1cblxuLmMtZmlyZS1hbGVydF9fY2xvc2Uge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogc3BhY2UoMik7XG4gIHJpZ2h0OiBzcGFjZSgyKTtcbiAgZmxleC1zaHJpbms6IDA7XG4gIHdpZHRoOiAyNHB4O1xuICBoZWlnaHQ6IDI0cHg7XG5cbiAgJjpiZWZvcmUsXG4gICY6YWZ0ZXIge1xuICAgIGJhY2tncm91bmQ6IHBhbGV0dGUobmV1dHJhbCwgMCk7XG4gICAgdG9wOiAxMnB4O1xuICB9XG59XG5cbkBrZXlmcmFtZXMgZmFkZUluIHtcbiAgZnJvbSB7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxuICB0byB7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIGZhZGVJblNjYWxlIHtcbiAgZnJvbSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSkgc2NhbGUoMC45KTtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG4gIHRvIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKSBzY2FsZSgxKTtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG59XG4iLCIuYy1zdGF0aXN0aWNzIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogcGFsZXR0ZShuZXV0cmFsLCA1MCk7XG4gIHBhZGRpbmc6IHNwYWNlKDYpIDAgc3BhY2UoMTApO1xufVxuXG4uYy1zdGF0aXN0aWNzX19ncmlkIHtcbiAgZGlzcGxheTogZ3JpZDtcbiAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnI7XG4gIGdyaWQtZ2FwOiBzcGFjZSgzKTtcblxuICBAaW5jbHVkZSBtcSg1MDAsIDg0MCkge1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDIsIDFmcik7XG4gICAgZ3JpZC1nYXA6IHNwYWNlKDMpO1xuICB9XG5cbiAgQGluY2x1ZGUgbXEoODQwKSB7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoNCwgMWZyKTtcbiAgICBncmlkLWdhcDogc3BhY2UoMyk7XG4gIH1cblxuICBAaW5jbHVkZSBtcSgkbWF4OiAxMjQwKSB7XG4gICAgcGFkZGluZzogMCBzcGFjZSg0KTtcbiAgfVxuXG4gIEBpbmNsdWRlIG1xKDEyNDApIHtcbiAgICBAaW5jbHVkZSBjb250YWluKClcbiAgfVxufVxuXG4uYy1zdGF0aXN0aWNzX19pdGVtIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG4uYy1zdGF0aXN0aWNzX19udW1iZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgcGFkZGluZzogc3BhY2UoMikgc3BhY2UoMC41KTtcbiAgQGluY2x1ZGUgaW50ZXJwb2xhdGUobWluLWhlaWdodCwgMTAwMHB4LCAxNjgwcHgsIDEyOHB4LCAxODRweCk7XG5cbiAgQGluY2x1ZGUgaW50ZXJwb2xhdGUoZm9udC1zaXplLCAzNzVweCwgMTMwMHB4LCAzOHB4LCA2NHB4KTtcbiAgbGluZS1oZWlnaHQ6IDEuMjtcbiAgY29sb3I6IHBhbGV0dGUoc2Vjb25kYXJ5LCA0MDApO1xuICBAaW5jbHVkZSBmdyhzZW1pQm9sZCk7XG5cbiAgYmFja2dyb3VuZDogd2hpdGU7XG4gIGJvcmRlcjogMXB4IHNvbGlkIHJnYmEoMjMwLDIzMSwyMzUsMC40OCk7XG4gIGJveC1zaGFkb3c6IDAgOHB4IDE2cHggMCByZ2JhKDU4LDYxLDcyLDAuMDgpO1xuICBib3JkZXItcmFkaXVzOiAxMnB4O1xufVxuXG4uYy1zdGF0aXN0aWNzX19saW5lIHtcbiAgQGluY2x1ZGUgZnMoMTUsIDI0KTtcbiAgY29sb3I6IHBhbGV0dGUobmV1dHJhbCwgODAwKTtcbn0iLCIuYy1kYW1hZ2UtZmxvdyB7XG5cbn1cblxuLmMtZGFtYWdlLWZsb3dfX2xvZ28ge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luOiBzcGFjZSgzKSBhdXRvIDcwcHg7XG59XG5cbi5jLWRhbWFnZS1mb3JtX19yb3VuZC11cCB7XG4gIC5jLWN0YSB7XG4gICAgbWF4LXdpZHRoOiBub25lO1xuICB9XG59XG5cbi5jLWRhbWFnZS1mbG93X19sb2dvcyB7XG4gIG1hcmdpbi10b3A6IHNwYWNlKDUpO1xuICBtYXJnaW4tYm90dG9tOiBzcGFjZSgxNSk7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIHdpZHRoOiAxMDAlO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcblxuICBzdmcge1xuICAgIG1hcmdpbi1yaWdodDogc3BhY2UoMyk7XG4gICAgY29sb3I6ICM5ZGEyYTg7XG4gIH1cbn0iLCIuYy1kYW1hZ2Utc3RlcHMge1xuICBAaW5jbHVkZSBmcygxMiwgMTgpO1xuICBtYXJnaW4tdG9wOiBzcGFjZSgzKTtcbiAgbWFyZ2luLWJvdHRvbTogc3BhY2UoMyk7XG4gIGJhY2tncm91bmQtY29sb3I6IHBhbGV0dGUoc2Vjb25kYXJ5LCA1MCk7XG4gIGNvbG9yOiBwYWxldHRlKG5ldXRyYWwsIDgwMCk7XG4gIGhlaWdodDogc3BhY2UoNik7XG4gIGJvcmRlci1yYWRpdXM6IDI0cHg7XG4gIGRpc3BsYXk6IGZsZXg7XG5cbiAgQGluY2x1ZGUgbXEoJG1heDogNTUyKSB7XG4gICAgbWFyZ2luLWxlZnQ6IHNwYWNlKDIpO1xuICAgIG1hcmdpbi1yaWdodDogc3BhY2UoMik7XG4gIH1cbn1cblxuLmMtZGFtYWdlLXN0ZXBzX19zdGVwIHtcbiAgd2lkdGg6IDMzJTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuXG4gICY6Zmlyc3Qtb2YtdHlwZSB7XG4gICAgcGFkZGluZy1sZWZ0OiAxNnB4O1xuICB9XG5cbiAgJjpsYXN0LW9mLXR5cGUge1xuICAgIG1hcmdpbi1yaWdodDogMTZweDtcbiAgfVxufVxuXG4uYy1kYW1hZ2Utc3RlcHNfX2J1dHRvbiB7XG4gIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgd2lkdGg6IHNwYWNlKDIpO1xuICBoZWlnaHQ6IHNwYWNlKDIpO1xuICBib3JkZXI6IDFweCBzb2xpZCBwYWxldHRlKG5ldXRyYWwsIDYwMCk7XG4gIG1hcmdpbi1yaWdodDogNHB4O1xuICAmLmFjdGl2ZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogcGFsZXR0ZShwcmltYXJ5LCA1MDApO1xuICAgIGJvcmRlcjogMXB4IHNvbGlkIHBhbGV0dGUocHJpbWFyeSwgNTAwKTtcbiAgICAmOmhvdmVyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHBhbGV0dGUocHJpbWFyeSwgNTApO1xuICAgICAgb3BhY2l0eTogLjU7XG4gICAgICBib3JkZXI6IG5vbmU7XG4gICAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDQwMG1zLCBib3JkZXIgNDAwbXM7XG4gICAgICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbi1vdXQ7XG4gICAgfVxuICB9XG59XG5cbi5jLWRhbWFnZS1zdGVwc19fcHJvZ3Jlc3Mge1xuICB3aWR0aDogMTAwJTtcbiAgYmFja2dyb3VuZC1jb2xvcjogcGFsZXR0ZShuZXV0cmFsLCAxMDApO1xuICBoZWlnaHQ6IDJweDtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHRvcDogNTAlO1xuICBtYXJnaW4tbGVmdDogNHB4O1xuICBtYXJnaW4tcmlnaHQ6IDRweDtcbiAgJi5oYWxmIHtcbiAgICAmOmJlZm9yZSB7XG4gICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiAwO1xuICAgICAgbGVmdDogMDtcbiAgICAgIHdpZHRoOiA1MCU7XG4gICAgICBoZWlnaHQ6IDJweDtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHBhbGV0dGUocHJpbWFyeSwgNTAwKTtcbiAgICB9XG4gIH1cbiAgJi5mdWxsIHtcbiAgICAmOmJlZm9yZSB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICB9XG4gIH1cbn1cblxuLmMtZGFtYWdlLXN0ZXBzX19wcm9ncmVzcy1jYXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogLTQ0cHg7XG4gIGxlZnQ6IDUwJTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xuICBjb2xvcjogIzVjNWQ2Njtcbn0iLCIuYy1kYW1hZ2Utc3RlcHMtc21hbGwge1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIGhlaWdodDogc3BhY2UoNik7XG4gIG1hcmdpbi10b3A6IHNwYWNlKDMpO1xuICBtYXJnaW4tYm90dG9tOiBzcGFjZSgzKTtcblxuXG4gIEBpbmNsdWRlIGZzKDEyLCAxOCk7XG4gIGJhY2tncm91bmQtY29sb3I6IHBhbGV0dGUoc2Vjb25kYXJ5LCA1MCk7XG4gIGNvbG9yOiBwYWxldHRlKG5ldXRyYWwsIDgwMCk7XG4gIGJvcmRlci1yYWRpdXM6IDI0cHg7XG5cbiAgQGluY2x1ZGUgbXEoJG1heDogNTUyKSB7XG4gICAgbWFyZ2luLWxlZnQ6IHNwYWNlKDIpO1xuICAgIG1hcmdpbi1yaWdodDogc3BhY2UoMik7XG4gIH1cbn1cblxuLmMtZGFtYWdlLXN0ZXBzLXNtYWxsX19zdGVwIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuXG4gICY6Zmlyc3Qtb2YtdHlwZSB7XG4gICAgcGFkZGluZy1sZWZ0OiAxNnB4O1xuICB9XG5cbiAgJjpsYXN0LW9mLXR5cGUge1xuICAgIG1hcmdpbi1yaWdodDogMTZweDtcbiAgfVxufVxuXG4uYy1kYW1hZ2Utc3RlcHMtc21hbGxfX2J1dHRvbiB7XG4gIHdpZHRoOiBzcGFjZSgyKTtcbiAgaGVpZ2h0OiBzcGFjZSgyKTtcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xuICBtYXJnaW4tcmlnaHQ6IDRweDtcbiAgYm9yZGVyOiAxcHggc29saWQgcGFsZXR0ZShuZXV0cmFsLCA2MDApO1xuICAmLmFjdGl2ZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogcGFsZXR0ZShwcmltYXJ5LCA1MDApO1xuICAgIGJvcmRlcjogMXB4IHNvbGlkIHBhbGV0dGUocHJpbWFyeSwgNTAwKTtcbiAgICAmOmhvdmVyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHBhbGV0dGUocHJpbWFyeSwgNTApO1xuICAgICAgb3BhY2l0eTogLjU7XG4gICAgICBib3JkZXI6IG5vbmU7XG4gICAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDQwMG1zLCBib3JkZXIgNDAwbXM7XG4gICAgICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbi1vdXQ7XG4gICAgfVxuICB9XG59XG5cbi5jLWRhbWFnZS1zdGVwcy1zbWFsbF9fcHJvZ3Jlc3Mge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHRvcDogNTAlO1xuICBoZWlnaHQ6IDJweDtcbiAgd2lkdGg6IDUwJTtcblxuICBtYXJnaW4tbGVmdDogNHB4O1xuICBtYXJnaW4tcmlnaHQ6IDRweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogcGFsZXR0ZShuZXV0cmFsLCAxMDApO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gICYuaGFsZiB7XG4gICAgJjpiZWZvcmUge1xuICAgICAgY29udGVudDogXCJcIjtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogMDtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICB3aWR0aDogNTAlO1xuICAgICAgaGVpZ2h0OiAycHg7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBwYWxldHRlKHByaW1hcnksIDUwMCk7XG4gICAgfVxuICB9XG4gICYuZnVsbCB7XG4gICAgJjpiZWZvcmUge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgfVxuICB9XG5cbiAgJi5zbWFsbCB7XG4gICAgd2lkdGg6IDQ4cHg7XG4gIH1cblxufVxuXG5cbi5jLWRhbWFnZS1zdGVwcy1zbWFsbF9fcHJvZ3Jlc3MtY2FyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IC00NHB4O1xuICBsZWZ0OiA1MCU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcbiAgY29sb3I6ICM1YzVkNjY7XG59XG5cbi5jLWRhbWFnZS1zdGVwcy1zbWFsbF9fcHJvZ3Jlc3MtY2FyLS1sYXN0IHtcbiAgdG9wOiAtMjFweDtcblxufSIsIi5jLW1vYmlsZS1pbnN1cmVycyB7XG4gIG1hcmdpbi1ib3R0b206IGNsYW1wKHNwYWNlKDUpLCAxMnZ3LCBzcGFjZSg4KSk7XG5cbiAgQGluY2x1ZGUgbXEoJGJwLXZpZGVvLWhlcm8pIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG5cbiAgLnN3aXBlci13cmFwcGVyIHtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICB9XG5cbn1cblxuLmMtbW9iaWxlLWluc3VyZXJzX19idXR0b24ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIG1hcmdpbi10b3A6IHNwYWNlKDEpO1xuICBtYXJnaW4tbGVmdDogc3BhY2UoMyk7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cbiIsIi8qKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICogT3JnYW5pc21zXG4gKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ki9cblxuQGltcG9ydCBcIm9yZ2FuaXNtcy5hcHBseVwiO1xuQGltcG9ydCBcIm9yZ2FuaXNtcy5ibG9ja1wiO1xuQGltcG9ydCBcIm9yZ2FuaXNtcy5ib2R5XCI7XG5AaW1wb3J0IFwib3JnYW5pc21zLmNhbGxvdXRCYXJcIjtcbkBpbXBvcnQgXCJvcmdhbmlzbXMuY2FyZC1ncmlkXCI7XG5AaW1wb3J0IFwib3JnYW5pc21zLmNvbnRhY3RcIjtcbkBpbXBvcnQgXCJvcmdhbmlzbXMuZG91YmxlSW1hZ2VcIjtcbkBpbXBvcnQgXCJvcmdhbmlzbXMuZG91YmxlVGV4dFwiO1xuQGltcG9ydCBcIm9yZ2FuaXNtcy5kb3VibGVVc3BcIjtcbkBpbXBvcnQgXCJvcmdhbmlzbXMuZm9vdGVyXCI7XG5AaW1wb3J0IFwib3JnYW5pc21zLmZvcm1cIjtcbkBpbXBvcnQgXCJvcmdhbmlzbXMuaGVhZGVyXCI7XG5AaW1wb3J0IFwib3JnYW5pc21zLmludHJvXCI7XG5AaW1wb3J0IFwib3JnYW5pc21zLm1hcFwiO1xuQGltcG9ydCBcIm9yZ2FuaXNtcy5vdmVybGF5TWVudVwiO1xuQGltcG9ydCBcIm9yZ2FuaXNtcy5xdW90ZVwiO1xuQGltcG9ydCBcIm9yZ2FuaXNtcy5zdWJmb290ZXJcIjtcbkBpbXBvcnQgXCJvcmdhbmlzbXMudGVhbVwiO1xuQGltcG9ydCBcIm9yZ2FuaXNtcy50aGFua3NcIjtcbi8vQGltcG9ydCBcIm9yZ2FuaXNtcy50b3AtYmFyXCI7XG5AaW1wb3J0IFwib3JnYW5pc21zLnVzcFwiO1xuQGltcG9ydCBcIm9yZ2FuaXNtcy52aWRlb0hlcm9cIjtcbkBpbXBvcnQgXCJvcmdhbmlzbXMucmV2aWV3c1wiO1xuQGltcG9ydCBcIm9yZ2FuaXNtcy5yZXBhaXJUeXBlc1wiO1xuQGltcG9ydCBcIm9yZ2FuaXNtcy50ZXh0SW1hZ2VcIjtcbkBpbXBvcnQgXCJvcmdhbmlzbXMudXNwc1wiO1xuQGltcG9ydCBcIm9yZ2FuaXNtcy5hbGVydFwiO1xuQGltcG9ydCBcIm9yZ2FuaXNtcy5jdGFGb3JtXCI7IiwiJG8tYXBwbHktYnAxOiA3MDA7XG4kby1hcHBseS1nYXA6IHNwYWNlKDYpO1xuXG5cbi5vLWFwcGx5IHtcblx0QGluY2x1ZGUgdnNwYWNpbmcoXG5cdFx0J3BhZGRpbmctdG9wJyAwLjUsXG5cdFx0J3BhZGRpbmctYm90dG9tJyAxXG5cdCk7XG59XG5cbi5vLWFwcGx5X19oZWFkaW5nIHtcblx0cGFkZGluZy1ib3R0b206IHNwYWNlKDYpO1xuXHRjb2xvcjogcGFsZXR0ZShuZXV0cmFsLCA5MDApO1xufVxuXG5cbi5vLWFwcGx5X19ib2R5IHtcblx0QGluY2x1ZGUgbXEoJG8tYXBwbHktYnAxKSB7XG5cdFx0ZGlzcGxheTogZmxleDtcblx0fVxufVxuXG5cbi5vLWFwcGx5X19sZWZ0IHtcblx0QGluY2x1ZGUgbXEoJG8tYXBwbHktYnAxKSB7XG5cdFx0d2lkdGg6IGNhbGMoI3tjb2x1bW4oNiwxMil9ICsgI3skby1hcHBseS1nYXB9KTtcblx0XHRwYWRkaW5nLXJpZ2h0OiAkby1hcHBseS1nYXA7XG5cdH1cbn1cblxuXG4uby1hcHBseV9fcmlnaHQge1xuXHRtYXJnaW4tdG9wOiBzcGFjZSgyKTtcblxuXHRAaW5jbHVkZSBtcSgkby1hcHBseS1icDEpIHtcblx0XHR3aWR0aDogY29sdW1uKDYsMTIpO1xuXHRcdG1hcmdpbi10b3A6IDA7XG5cdH1cbn1cblxuXG4uby1hcHBseV9fcm93IHtcblx0QGluY2x1ZGUgb3dsKHNwYWNlKDIpKTtcbn1cblxuXG4uby1hcHBseV9fZmlsZXVwbG9hZCB7XG5cdEBpbmNsdWRlIG1xKCRvLWFwcGx5LWJwMSkge1xuXHRcdG1hcmdpbi10b3A6IHNwYWNlKDUpO1xuXHR9XG59XG5cblxuLm8tYXBwbHlfX2Zvb3RlciB7XG5cdGJvcmRlci10b3A6IDFweCBzb2xpZCBwYWxldHRlKG5ldXRyYWwsIDMwMCk7XG5cdG1hcmdpbi10b3A6IHNwYWNlKDYpO1xuXHRwYWRkaW5nLXRvcDogc3BhY2UoNik7XG5cdHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuLm8tYXBwbHlfX2ZlZWRiYWNrIHtcblx0bWFyZ2luLXRvcDogc3BhY2UoNCk7XG59IiwiLm8tYmxvY2sge1xuXHRAaW5jbHVkZSB2c3BhY2luZyhcblx0XHRcdCdtYXJnaW4tYm90dG9tJyAxXG5cdCk7XG5cblx0Ly8gVG9wIG1hcmdpbiBvbmx5IG9uIGNvbnNlY3V0aXZlIGJsb2Nrc1xuXHQmICsgJiB7XG5cdFx0QGluY2x1ZGUgdnNwYWNpbmcoXG5cdFx0XHRcdCdtYXJnaW4tdG9wJyAxXG5cdFx0KTtcblx0fVxufSIsIiAvKlxuICogV3JhcHBlciBvZiB0aGUgbWFpbiBib2R5XG4gKiAoYmV0d2VlbiB0aGUgaGVhZGVyIGFuZCB0aGUgZm9vdGVyKVxuICovXG5cblxuLm8tYm9keSB7XG5cdEBpbmNsdWRlIHooei1ib2R5KTtcblx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRmbGV4OiAxIDAgYXV0bztcbn0iLCIvLyBDb21wb25lbnQgc2V0dGluZ3M6IENhbGxvdXQgYmFyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuJG8tY2FsbG91dC1iYXI6IChcblx0J2NvbG9yJzogIFx0XHRwYWxldHRlKG5ldXRyYWwsIDgwMCksXG5cdCdiZ2NvbG9yJzogIFx0cGFsZXR0ZShuZXV0cmFsLCAxMDApLFxuKTtcblxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cblxuLm8tY2FsbG91dC1iYXIge1xuXHRAaW5jbHVkZSBoeXBoZW5hdGU7XG5cdGNvbG9yOiBtYXAtZ2V0KCRvLWNhbGxvdXQtYmFyLCAnY29sb3InKTtcblx0YmFja2dyb3VuZC1jb2xvcjogbWFwLWdldCgkby1jYWxsb3V0LWJhciwgJ2JnY29sb3InKTtcbiAgXHR0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5cbi5vLWNhbGxvdXQtYmFyX19tYWluIHtcblx0QGluY2x1ZGUgY29udGFpbjtcbiAgICBAaW5jbHVkZSB2c3BhY2luZyhcbiAgICAgICAgJ3BhZGRpbmctdG9wJyAxLFxuICAgICAgICAncGFkZGluZy1ib3R0b20nIDFcbiAgICApO1xuXG5cdC8vIFZlcnRpY2FsIHNwYWNpbmcgZm9yIGVsZW1lbnRzIHRoYXQgcHJvY2VlZCBhbm90aGVyIGVsZW1lbnRcblx0JiA+ICogKyAqIHtcblx0XHRAaW5jbHVkZSB2c3BhY2luZyhcblx0XHRcdCdtYXJnaW4tdG9wJyAwLjVcblx0XHQpO1xuXHR9XG59XG5cblxuLm8tY2FsbG91dC1iYXJfX2JvZHkge1xuXHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG59XG5cblxuLm8tY2FsbG91dC1iYXJfX2hlYWRpbmcge1xuXHRAaW5jbHVkZSBmcygzMik7XG59IiwiLypcbiAqIENhcmQgZ3JpZFxuICpcbiAqL1xuXG5AdXNlIFwic2FzczptYXRoXCI7XG5cbiRvLWNhcmQtZ3JpZC1pdGVtcy1tOiAgIDI7IC8vIE51bWJlciBvZiBjYXJkcyB3aGVuIGluIG1lZGl1bSB2aWV3cG9ydFxuJG8tY2FyZC1ncmlkLWl0ZW1zLWw6ICAgMzsgLy8gTnVtYmVyIG9mIGNhcmRzIHdoZW4gaW4gbGFyZ2Ugdmlld3BvcnRcbiRvLWNhcmQtZ3JpZC1tLWJwOiAgICAgIDY0MTsgLy8gQ3VzdG9tIGJyZWFrcG9pbnQgd2hlbiBzd2l0Y2hpbmcgZnJvbSBzdGFja2VkIGNhcmRzIHRvIHJvd3NcbiRvLWNhcmQtZ3JpZC1zcGFjaW5nOiAgIHNwYWNlKDQpO1xuXG4kby1jYXJkLWdyaWQtc2l6ZS1tOiAgICBwZXJjZW50YWdlKG1hdGguZGl2KDEsICRvLWNhcmQtZ3JpZC1pdGVtcy1tKSk7XG4kby1jYXJkLWdyaWQtc2l6ZS1sOiAgICBwZXJjZW50YWdlKG1hdGguZGl2KDEsICRvLWNhcmQtZ3JpZC1pdGVtcy1sKSk7XG5cbiRvLWNhcmQtZ3JpZC1iZ2NvbG9yOiBwYWxldHRlKHNlY29uZGFyeSwgNTApO1xuXG4uby1jYXJkLWdyaWQge1xuICBwYWRkaW5nLXRvcDogc3BhY2UoMTApO1xuICBwYWRkaW5nLWJvdHRvbTogc3BhY2UoMTUpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkby1jYXJkLWdyaWQtYmdjb2xvcjtcbn1cblxuLm8tY2FyZC1ncmlkX19tYWluIHtcbiAgQGluY2x1ZGUgY29udGFpbigpO1xuICBAaW5jbHVkZSBtcSgkby1jYXJkLWdyaWQtbS1icCkge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC13cmFwOiB3cmFwO1xuICB9XG59XG5cbi5vLWNhcmQtZ3JpZF9faXRlbSB7XG4gIC8vIENyZWF0ZSBuaWNlIHZlcnRpY2FsIHNwYWNpbmcgb24gbW9iaWxlXG4gIEBpbmNsdWRlIG1xKCRtYXg6ICRvLWNhcmQtZ3JpZC1tLWJwKXtcbiAgICAmICsgJiB7XG4gICAgICBtYXJnaW4tdG9wOiBzcGFjZSg0KTtcbiAgICB9XG4gIH1cblxuICAvLyBTaW5nbGUgY29sdW1uIChzdGFja2VkKVxuICBAaW5jbHVkZSBtcSgkbWF4OiAkby1jYXJkLWdyaWQtbS1icCkge1xuICAgIG1hcmdpbjogMCBhdXRvO1xuICB9XG5cbiAgLy8gVHdvIGNvbHVtbnNcbiAgQGluY2x1ZGUgbXEoJG8tY2FyZC1ncmlkLW0tYnAsICRtYXg6IGwpIHtcbiAgICBmbGV4OiAwO1xuICAgIC8vIFdlIGNhbGN1bGF0ZSB0aGUgc2l6ZSBvZiB0aGUgaXRlbSBiYXNlZCBvbiB0aGUgc2V0dGluZ3MgYW5kIHB1dCBpdCBpbiBhIGxvbmdoYW5kIGZsZXggdmFsdWUgYmVjYXVzZSBvZiBJRSBzdXBwb3J0XG4gICAgZmxleC1iYXNpczogY2FsYygjeyRvLWNhcmQtZ3JpZC1zaXplLW19IC0gKCgjeyRvLWNhcmQtZ3JpZC1pdGVtcy1tfSAtIDEpIC8gI3skby1jYXJkLWdyaWQtaXRlbXMtbX0gKiAjeyRvLWNhcmQtZ3JpZC1zcGFjaW5nfSkpO1xuICAgIG1hcmdpbi1sZWZ0OiAjeyRvLWNhcmQtZ3JpZC1zcGFjaW5nfTtcblxuICAgICY6bnRoLWNoaWxkKCN7JG8tY2FyZC1ncmlkLWl0ZW1zLW19biArIDEpIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgIH1cblxuICAgICY6bnRoLWNoaWxkKG4gKyAjeyRvLWNhcmQtZ3JpZC1pdGVtcy1tICsgMX0pIHtcbiAgICAgIG1hcmdpbi10b3A6ICN7JG8tY2FyZC1ncmlkLXNwYWNpbmd9O1xuICAgIH1cbiAgfVxuXG4gIC8vIEZvdXIgY29sdW1uc1xuICBAaW5jbHVkZSBtcShsKSB7XG4gICAgZmxleDogMDtcbiAgICAvLyBXZSBjYWxjdWxhdGUgdGhlIHNpemUgb2YgdGhlIGl0ZW0gYmFzZWQgb24gdGhlIHNldHRpbmdzIGFuZCBwdXQgaXQgaW4gYSBsb25naGFuZCBmbGV4IHZhbHVlIGJlY2F1c2Ugb2YgSUUgc3VwcG9ydFxuICAgIGZsZXgtYmFzaXM6IGNhbGMoI3skby1jYXJkLWdyaWQtc2l6ZS1sfSAtICgoI3skby1jYXJkLWdyaWQtaXRlbXMtbH0gLSAxKSAvICN7JG8tY2FyZC1ncmlkLWl0ZW1zLWx9ICogI3skby1jYXJkLWdyaWQtc3BhY2luZ30pKTtcbiAgICBtYXJnaW4tbGVmdDogI3skby1jYXJkLWdyaWQtc3BhY2luZ307XG5cbiAgICAmOm50aC1jaGlsZCgjeyRvLWNhcmQtZ3JpZC1pdGVtcy1sfW4gKyAxKSB7XG4gICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICB9XG5cbiAgICAmOm50aC1jaGlsZChuICsgI3skby1jYXJkLWdyaWQtaXRlbXMtbCArIDF9KSB7XG4gICAgICBtYXJnaW4tdG9wOiAkby1jYXJkLWdyaWQtc3BhY2luZztcbiAgICB9XG4gIH1cbn0iLCIvLyBDb21wb25lbnQgc2V0dGluZ3M6IENvbnRhY3Rcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4kY29udGFjdEJwTGFyZ2U6IDEyMDA7XG5cbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4uby1jb250YWN0IHtcblx0QGluY2x1ZGUgdGVtcGxhdGUoaW5mbywgZmlndXJlLCBmb3JtLCB0ZWFtLW1lbWJlcnMpO1xuXG5cdG1hcmdpbi10b3A6IGNsYW1wKDQwcHgsIDMuOHZ3LCA2NHB4KTtcblx0bWFyZ2luLWJvdHRvbTogY2xhbXAoNzJweCwgNy4ydncgLCAxMjBweCk7XG5cblx0QGluY2x1ZGUgbXEoJG1heDogJGNvbnRhY3RCcExhcmdlKSB7XG5cblx0XHQ+ICoge1xuXHRcdFx0bWF4LXdpZHRoOiA2MDBweDtcblx0XHR9XG5cblx0XHQ+ICogKyAqIHtcblx0XHRcdG1hcmdpbi10b3A6IHNwYWNlKDYpO1xuXHRcdH1cblx0fVxuXG5cdEBpbmNsdWRlIG1xKCRjb250YWN0QnBMYXJnZSkge1xuXHRcdGRpc3BsYXk6IGdyaWQ7XG5cdFx0Z3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnIgbWlubWF4KGF1dG8sIDU1MnB4KTtcblx0XHRncmlkLXRlbXBsYXRlLXJvd3M6IHJlcGVhdCgyLCBhdXRvKTtcblx0XHRncmlkLWdhcDogc3BhY2UoOCkgc3BhY2UoNik7XG5cdFx0Z3JpZC10ZW1wbGF0ZS1hcmVhczpcblx0XHRcImluZm8gZm9ybVwiXG5cdFx0XCJmaWd1cmUgdGVhbS1tZW1iZXJzXCI7XG5cdH1cbn1cblxuXG4uby1jb250YWN0X19pbmZvIHtcblxuXHRAaW5jbHVkZSBtcSgkY29udGFjdEJwTGFyZ2UpIHtcblx0XHRtYXgtd2lkdGg6IDU1MnB4O1xuXHR9XG5cblx0LnMtdGV4dCB7XG5cdFx0aDEsIGgyLCBoMywgaDQge1xuXHRcdFx0Y29sb3I6IHBhbGV0dGUoc2Vjb25kYXJ5LCA0MDApO1xuXHRcdH1cblx0fVxufVxuXG5cbi5vLWNvbnRhY3RfX2Zvcm0td3JhcHBlciB7XG59XG5cbi5vLWNvbnRhY3RfX2Zvcm0ge1xuXHRwYWRkaW5nOiBzcGFjZSg2KSBzcGFjZSgzKSBzcGFjZSgzKTtcblx0YmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KDE4MGRlZywgIzI3NTFBMyAwJSwgIzE5M0U4QSA3NSUpO1xuXHRib3JkZXItcmFkaXVzOiAyNHB4O1xuXG5cdEBpbmNsdWRlIG1xKDQ2MCkge1xuXHRcdHBhZGRpbmc6IHNwYWNlKDgpIHNwYWNlKDYpIHNwYWNlKDYpO1xuXHR9XG5cblx0LnMtdGV4dCB7XG5cdFx0QGluY2x1ZGUgZnMoMjAsIDMyKTtcblx0XHRsZXR0ZXItc3BhY2luZzogLTAuMnB4O1xuXHR9XG59XG5cbi5vLWNvbnRhY3RfX3RlYW0tbWVtYmVycyB7XG5cdEBpbmNsdWRlIG1xKCRtYXg6IDUwMCkge1xuXHRcdD4gKiArICoge1xuXHRcdFx0bWFyZ2luLXRvcDogc3BhY2UoMyk7XG5cdFx0fVxuXHR9XG5cblx0QGluY2x1ZGUgbXEoNTAwKSB7XG5cdFx0ZGlzcGxheTogZmxleDtcblxuXHRcdD4gKiArICoge1xuXHRcdFx0bWFyZ2luLWxlZnQ6IHNwYWNlKDMpO1xuXHRcdH1cblx0fVxufVxuXG4uby1jb250YWN0X190ZWFtLW1lbWJlciB7XG5cdG1heC13aWR0aDogMjA2cHg7XG59XG5cbi5vLWNvbnRhY3RfX3NlY3Rpb24ge1xuXHRtYXJnaW4tdG9wOiBjbGFtcCgyNHB4LCAxLjl2dywgNDhweCk7XG59XG5cbi5vLWNvbnRhY3RfX2l0ZW0ge1xuXHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdHBhZGRpbmctbGVmdDogMzBweDtcblx0c3ZnIHtcblx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0bGVmdDogMDtcblx0XHR0b3A6IDZweDtcblx0XHRjb2xvcjogcGFsZXR0ZShzZWNvbmRhcnksIDYwMCk7XG5cdH1cbn1cblxuLm8tY29udGFjdF9fbGluayB7XG5cdHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cblxuLm8tY29udGFjdF9faXRlbS0tcGhvbmUge1xuXHRzdmcge1xuXHRcdGxlZnQ6IDJweDtcblx0fVxuXHRjb2xvcjogcGFsZXR0ZShzZWNvbmRhcnksIDYwMCk7XG5cdEBpbmNsdWRlIGZzKDE3LCAyNCk7XG5cdGZvbnQtd2VpZ2h0OiA2MDA7XG5cdG1hcmdpbi1ib3R0b206IDVweDtcbn1cblxuXG4uby1jb250YWN0X19pdGVtLS1tYWlsIHtcblx0bWFyZ2luLWJvdHRvbTogNHB4O1xuXHRzdmcge1xuXHRcdHRyYW5zZm9ybTogc2NhbGUoMC45MCk7XG5cdH1cbn1cblxuLm8tY29udGFjdF9faXRlbS0tbG9jYXRpb24ge1xuXHRzdmcge1xuXHRcdHRvcDogNnB4O1xuXHRcdGxlZnQ6IDNweDtcblx0XHR0cmFuc2Zvcm06IHNjYWxlKDEuMSk7XG5cdH1cblx0c3BhbiB7XG5cdFx0bGluZS1oZWlnaHQ6IDI0cHg7XG5cdH1cblx0YSB7XG5cdFx0bWFyZ2luLXRvcDogMTlweDtcblx0fVxufVxuXG5cblxuLm8tY29udGFjdF9faGVhZGluZyB7XG5cdEBpbmNsdWRlIGZzKDEyKTtcblx0Zm9udC13ZWlnaHQ6IGJvbGQ7XG5cdGNvbG9yOiBwYWxldHRlKG5ldXRyYWwsIDgwMCk7XG5cdHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG5cdG1hcmdpbi1ib3R0b206IHNwYWNlKDAuNSk7XG59XG5cbi5vLWNvbnRhY3RfX2hvdXJzIHtcblx0Y29sb3I6IHBhbGV0dGUoc2Vjb25kYXJ5LCA1NTApO1xuXHRtYXJnaW4tdG9wOiBjbGFtcCgyNHB4LCAxLjl2dywgNDhweCk7XG59XG5cbi5vLWNvbnRhY3RfX251bWJlcnMge1xuXHRjb2xvcjogcGFsZXR0ZShzZWNvbmRhcnksIDU1MCk7XG5cdG1hcmdpbjogMDtcblx0bGlzdC1zdHlsZTogbm9uZTtcblx0ZGlzcGxheTogaW5saW5lLWdyaWQ7XG5cdGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDIsIGF1dG8pO1xuXHRncmlkLWNvbHVtbi1nYXA6IHNwYWNlKDIpO1xufVxuXG4uby1jb250YWN0X19maWd1cmUge1xuXHQvL21hcmdpbi10b3A6IHNwYWNlKDgpO1xufVxuXG4uby1jb250YWN0X19pbWFnZSB7XG5cdGJvcmRlci1yYWRpdXM6IDEycHg7XG59IiwiLyo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gKiBEb3VibGUgaW1hZ2UgaW4gMiBlcXVhbCBjb2x1bW5zXG4gKlxuICogVW50aWwgdmlld3BvcnQgaXMgd2lkZSBlbm91Z2ggdGhlIHBpY3R1cmVzIGFyZSBzdGFja2VkIHZlcnRpY2FsbHlcbiAqID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4kby1kb3VibGUtaW1hZ2UtYnAxOiAxMTAwO1xuXG4uby1kb3VibGUtaW1hZ2Uge1xuXHRtYXJnaW46IC0xcHg7XG5cdHRleHQtYWxpZ246IGNlbnRlcjtcblxuXG5cdC8vIFNldCBzaWRlIGJ5IHNpZGUgZnJvbSBtZWRpdW0gdmlld3BvcnRzIGFuZCB1cFxuXHRAaW5jbHVkZSBtcSgkby1kb3VibGUtaW1hZ2UtYnAxKSB7XG5cdFx0ZGlzcGxheTogZmxleDtcblx0fVxufVxuXG5cbi5vLWRvdWJsZS1pbWFnZV9fcGljdHVyZSB7XG5cdGRpc3BsYXk6IGJsb2NrO1xuXHRtYXJnaW46IDFweDtcblx0b3JkZXI6IDE7XG5cdG1pbi1oZWlnaHQ6IDM2MHB4OyAvLyBuZWVkZWQgZm9yIElFXG5cblx0QGluY2x1ZGUgbXEoJG8tZG91YmxlLWltYWdlLWJwMSkge1xuXHRcdHdpZHRoOiBjb2x1bW4oNiwgMTIpO1xuXHRcdGRpc3BsYXk6IGZsZXg7XG5cdFx0anVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcblxuXHRcdCY6bGFzdC1jaGlsZCB7XG5cdFx0XHRqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG5cdFx0fVxuXHR9XG59XG5cblxuLm8tZG91YmxlLWltYWdlX19pbWcge1xuXHRvYmplY3QtZml0OiBjb3ZlcjsgLy8gRmFsbGJhY2sgZm9yIElFIHZpYSBKUyBwb2x5ZmlsbCwgbWluLWhlaWdodCBjYW4gYmUgbmVlZGVkLi5cblx0bWF4LWhlaWdodDogODV2aDtcbn1cblxuXG4uby1kb3VibGUtaW1hZ2UtLWlzLXJldmVyc2VkIHtcblx0JiAuby1kb3VibGUtaW1hZ2VfX3BpY3R1cmUge1xuXHRcdGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcblxuXHRcdCY6bGFzdC1jaGlsZCB7XG5cdFx0XHRvcmRlcjogMDtcblx0XHRcdGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG5cdFx0fVxuXHR9XG59IiwiLyo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gKiBEb3VibGUgbGF5b3V0IGluIDIgZXF1YWwgY29sdW1uc1xuICpcbiAqIFVudGlsIHZpZXdwb3J0IGlzIHdpZGUgZW5vdWdoIHRoZSBjb2x1bW5zIGFyZSBzdGFja2VkIHZlcnRpY2FsbHlcbiAqID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG5cbi5vLWRvdWJsZS10ZXh0IHtcblx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiBwYWxldHRlKG5ldXRyYWwsIDApO1xuXHRoZWlnaHQ6IDEwMCU7IC8vIHN0cmV0Y2ggaXQgb3V0IGluIGl0cyBjb250YWluZXJcblxuXHQvLyBTZXQgc2lkZSBieSBzaWRlIGZyb20gbWVkaXVtIHZpZXdwb3J0cyBhbmQgdXBcblx0QGluY2x1ZGUgbXEobSkge1xuXHRcdGRpc3BsYXk6IGZsZXg7XG5cdH1cbn1cblxuXG4uby1kb3VibGUtdGV4dF9fY29sdW1uIHtcblxuXHRAaW5jbHVkZSBtcShsKSB7XG5cdFx0d2lkdGg6IGNvbHVtbig2LCAxMik7XG5cdH1cblxuXHQmOmZpcnN0LWNoaWxkIHtcblx0XHRAaW5jbHVkZSBtcShtLCBsKSB7XG5cdFx0XHR3aWR0aDogY29sdW1uKDUsIDgpO1xuXHRcdFx0cGFkZGluZy1yaWdodDogY29sdW1uKDEsIDgpO1xuXHRcdH1cblx0XHRAaW5jbHVkZSBtcShsKSB7XG5cdFx0XHRwYWRkaW5nLWxlZnQ6IGNvbHVtbigxLCAxMik7XG5cdFx0fVxuXHR9XG5cblx0JjpsYXN0LWNoaWxkIHtcblx0XHQvLyBDcmVhdGUgdmVydGljYWwgc3BhY2luZyBvbiBtb2JpbGVcblx0XHRAaW5jbHVkZSB2c3BhY2luZy1zKFxuXHRcdFx0J21hcmdpbi10b3AnIDAuNVxuXHRcdCk7XG5cdFx0QGluY2x1ZGUgbXEobSwgbCkge1xuXHRcdFx0d2lkdGg6IGNvbHVtbigzLCA4KTtcblx0XHR9XG5cdFx0QGluY2x1ZGUgbXEobCkge1xuXHRcdFx0cGFkZGluZy1sZWZ0OiBjb2x1bW4oMSwgMTIpO1xuXHRcdFx0cGFkZGluZy1yaWdodDogY29sdW1uKDEsIDEyKTtcblx0XHR9XG5cdH1cbn0iLCIkby1kb3VibGUtdXNwOiAoXG5cdCdiYWNrZ3JvdW5kLWNvbG9yJzogIFx0cGFsZXR0ZShwcmltYXJ5KSxcblx0J3RleHQtY29sb3InOlx0XHRcdHBhbGV0dGUobmV1dHJhbCwgMCksXG4pO1xuXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuXG4uby1kb3VibGUtdXNwIHtcblx0QGluY2x1ZGUgbXEoJG1heDogbCkge1xuXHRcdGJhY2tncm91bmQtY29sb3I6IG1hcC1nZXQoJG8tZG91YmxlLXVzcCwgJ2JhY2tncm91bmQtY29sb3InKTtcblx0fVxufVxuXG5cbi5vLWRvdWJsZS11c3BfX21haW4ge1xuXHRAaW5jbHVkZSBjb250YWluO1xuXHRwYWRkaW5nLXRvcDogc3BhY2UoNik7XG5cdHBhZGRpbmctYm90dG9tOiBzcGFjZSg2KTtcblxuXHRAaW5jbHVkZSBtcShtKXtcblx0XHRkaXNwbGF5OiBmbGV4O1xuXHR9XG59XG5cblxuLm8tZG91YmxlLXVzcF9fbGVmdCB7XG5cdEBpbmNsdWRlIG1xKCRtYXg6IG0pe1xuXHRcdG1hcmdpbi1ib3R0b206IHNwYWNlKDYpO1xuXHR9XG5cblx0QGluY2x1ZGUgbXEobSl7XG5cdFx0d2lkdGg6IGNvbHVtbig3LCAxMik7XG5cdFx0cGFkZGluZy1yaWdodDogY29sdW1uKDEsIDEyKTtcblx0fVxufVxuXG4uby1kb3VibGUtdXNwX19yaWdodHtcblx0QGluY2x1ZGUgbXEobSl7XG5cdFx0d2lkdGg6IGNvbHVtbig2LCAxMik7XG5cdH1cbn1cblxuLm8tZG91YmxlLXVzcF9faGVhZGluZyB7XG5cdEBpbmNsdWRlIGZzKDMyKTtcblx0bWFyZ2luLWJvdHRvbTogc3BhY2UoMyk7XG5cdGNvbG9yOiBtYXAtZ2V0KCRvLWRvdWJsZS11c3AsICd0ZXh0LWNvbG9yJyk7XG59XG5cblxuLm8tZG91YmxlLXVzcF9fbGlzdCB7XG5cdGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcblx0bWFyZ2luLWxlZnQ6IDE2cHg7XG59XG5cblxuLm8tZG91YmxlLXVzcF9faXRlbSB7XG5cdEBpbmNsdWRlIG93bChzcGFjZSgyKSk7XG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0cGFkZGluZy1sZWZ0OiBzcGFjZSgyKTtcblx0Y29sb3I6IG1hcC1nZXQoJG8tZG91YmxlLXVzcCwgJ3RleHQtY29sb3InKTtcblxuXHQmOjpiZWZvcmUge1xuXHRcdCR3aWR0aDogMTZweDtcblx0XHQkaGVpZ2h0OiAxMnB4O1xuXG5cdFx0Y29udGVudDonJztcblx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0dG9wOiA1cHg7XG5cdFx0bGVmdDogLSN7JHdpZHRofTtcblx0XHR3aWR0aDogJHdpZHRoO1xuXHRcdGhlaWdodDogJGhlaWdodDtcblx0XHRiYWNrZ3JvdW5kLWltYWdlOiB1cmwoL2ltZy9jaGVjay9jaGVja2VkLnN2Zyk7XG5cdFx0YmFja2dyb3VuZC1zaXplOiAkd2lkdGggJGhlaWdodDtcblx0fVxufSIsIi8vIENvbXBvbmVudCBzZXR0aW5nczogRm9vdGVyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuJG8tZm9vdGVyOiAoXG5cdCdiZ2NvbG9yJzogcGFsZXR0ZShzZWNvbmRhcnksIDYwMCksXG5cdCd0ZXh0Q29sb3InOiBwYWxldHRlKG5ldXRyYWwsIDApLFxuXHQnbW9iaWxlQnAnOiAxMjAwLFxuKTtcblxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cblxuLm8tZm9vdGVyIHtcblx0Y29sb3I6IG1hcC1nZXQoJG8tZm9vdGVyLCAndGV4dENvbG9yJyk7XG5cdGJhY2tncm91bmQtY29sb3I6IG1hcC1nZXQoJG8tZm9vdGVyLCAnYmdjb2xvcicpO1xuXHRmbGV4OiAxIDAgYXV0bztcblxuXHRAaW5jbHVkZSBtcSgkbWF4OiA5NjApIHtcblx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cblx0XHQmOmJlZm9yZSxcblx0XHQmOmFmdGVyIHtcblx0XHRcdGNvbnRlbnQ6ICcnO1xuXHRcdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdFx0dG9wOiAtMjRweDtcblx0XHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdFx0d2lkdGg6IDI0cHg7XG5cdFx0XHRoZWlnaHQ6IDI0cHg7XG5cdFx0XHRiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcblx0XHR9XG5cblx0XHQmOmJlZm9yZSB7XG5cdFx0XHRsZWZ0OiAwO1xuXHRcdFx0Ym94LXNoYWRvdzogLTQ2cHggMCAwIDQ4cHggbWFwLWdldCgkby1mb290ZXIsICdiZ2NvbG9yJyk7XG5cdFx0XHRjbGlwLXBhdGg6IGluc2V0KDFweCAxcHggLTJweCAtMnB4KTtcblx0XHRcdGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDEwMCU7XG5cdFx0fVxuXG5cdFx0JjphZnRlciB7XG5cdFx0XHRyaWdodDogMDtcblx0XHRcdGJveC1zaGFkb3c6IDQ4cHggMCAwIDQ4cHggbWFwLWdldCgkby1mb290ZXIsICdiZ2NvbG9yJyk7XG5cdFx0XHRjbGlwLXBhdGg6IGluc2V0KDFweCAwcHggLTJweCAtMnB4KTtcblx0XHRcdGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAxMDAlO1xuXHRcdH1cblx0fVxufVxuXG4uby1mb290ZXJfX2xlZnQge1xuXHR3aWR0aDogMTAwJTtcblx0bWFyZ2luLXJpZ2h0OiAxMCU7XG5cblx0QGluY2x1ZGUgbXEoJG1heDogbSkge1xuXHRcdG1hcmdpbi1yaWdodDogMDtcblx0fVxufVxuXG4uby1mb290ZXJfX21haW4ge1xuXHRAaW5jbHVkZSBjb250YWluO1xuXHRwYWRkaW5nLXRvcDogNzJweDtcblx0cGFkZGluZy1ib3R0b206IDQwcHg7XG5cblx0QGluY2x1ZGUgbXEobWFwLWdldCgkby1mb290ZXIsICdtb2JpbGVCcCcpKSB7XG5cdFx0ZGlzcGxheTogZmxleDtcblx0XHRqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG5cdFx0cGFkZGluZy10b3A6IG1pbig1LjV2dywgODBweCk7XG5cdFx0cGFkZGluZy1ib3R0b206IG1pbig1LjV2dywgODBweCk7XG5cdH1cbn1cblxuXG4uby1mb290ZXJfX2NvbHVtbnMge1xuXHRAaW5jbHVkZSBtcShtKSB7XG5cdFx0ZGlzcGxheTogZmxleDtcblx0XHRqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG5cdH1cbn1cblxuXG4uby1mb290ZXJfX2JyYW5kIHtcblx0bWFyZ2luLWJvdHRvbTogNDBweDtcblx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXHR0cmFuc2l0aW9uOiBvcGFjaXR5IDIwMG1zIGxpbmVhcjtcblxuXHQmOmhvdmVyIHtcblx0XHRvcGFjaXR5OiAwLjU7XG5cdH1cblxuXHRAaW5jbHVkZSBtcShtYXAtZ2V0KCRvLWZvb3RlciwgJ21vYmlsZUJwJykpIHtcblx0XHRtYXJnaW4tYm90dG9tOiBtaW4oMy43NXZ3LCA1NXB4KTtcblx0fVxuXG59XG5cblxuLm8tZm9vdGVyX19sb2dvIHtcblx0aGVpZ2h0OiA0OHB4O1xuXG5cdEBpbmNsdWRlIG1xKCRtYXg6IG0pIHtcblx0XHRtYXJnaW46IHNwYWNlKDIpIDA7XG5cdH1cbn1cblxuLm8tZm9vdGVyX19hZGRyZXNzIHtcblx0YSB7XG5cdFx0dGV4dC1kZWNvcmF0aW9uOiBub25lO1xuXHR9XG59XG5cbi5vLWZvb3Rlcl9fbGlzdCB7XG5cdGxpc3Qtc3R5bGU6IG5vbmU7XG5cdG1hcmdpbjogMDtcbn1cblxuLm8tZm9vdGVyX19pdGVtIHtcblx0bWFyZ2luLWJvdHRvbTogc3BhY2UoMSk7XG5cdEBpbmNsdWRlIG1xKCRtYXg6IG0pIHtcblx0XHRtYXJnaW4tYm90dG9tOiAwO1xuXHR9XG59XG5cbi5vLWZvb3Rlcl9fYWRkcmVzcy1pdGVtIHtcblx0bWFyZ2luLWJvdHRvbTogc3BhY2UoMSk7XG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0cGFkZGluZy1sZWZ0OiBzcGFjZSg0KTtcblxuXHRzdmcge1xuXHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHR0b3A6IDUwJTtcblx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG5cdFx0bGVmdDogMDtcblx0fVxufVxuXG4uby1mb290ZXJfX2hvdXJzIHtcblx0QGluY2x1ZGUgbXEoJG1heDogbSkge1xuXHRcdGRpc3BsYXk6IG5vbmU7XG5cdH1cbn1cblxuLm8tZm9vdGVyX19saW5rIHtcblx0QGluY2x1ZGUgZGlzYWJsZU91dGxpbmVGb3JNb3VzZTtcblx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdHotaW5kZXg6IDA7XG5cdGNvbG9yOiBtYXAtZ2V0KCRvLWZvb3RlciwgJ3RleHRDb2xvcicpO1xuXHR0ZXh0LWRlY29yYXRpb246IG5vbmU7XG5cdGN1cnNvcjogcG9pbnRlcjtcblx0dXNlci1zZWxlY3Q6IG5vbmU7XG5cblx0Jjo6YmVmb3JlIHtcblx0XHRAaW5jbHVkZSBib3JkZXItcmFkaXVzKHMpO1xuXHRcdG9wYWNpdHk6IDA7XG5cdFx0Y29udGVudDogJyc7XG5cdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdHotaW5kZXg6IC0xO1xuXHRcdHRvcDogMDtcblx0XHRib3R0b206IDA7XG5cdFx0bGVmdDogc3BhY2UoLTEpO1xuXHRcdHJpZ2h0OiBzcGFjZSgtMSk7XG5cdFx0YmFja2dyb3VuZC1jb2xvcjogcmdiYShpbnZlcnQobWFwLWdldCgkby1mb290ZXIsICd0ZXh0Q29sb3InKSksIDAuMik7XG5cdFx0dHJhbnNpdGlvbjogb3BhY2l0eSAxNTBtcyBsaW5lYXI7XG5cdH1cblxuXHQmOmhvdmVyIHtcblx0XHQmOjpiZWZvcmUge1xuXHRcdFx0b3BhY2l0eTogMTtcblx0XHR9XG5cdH1cblxuXHQmOmZvY3VzIHtcblx0XHRvdXRsaW5lLWNvbG9yOiBjdXJyZW50Q29sb3I7XG5cdFx0b3V0bGluZS1zdHlsZTogc29saWQ7XG5cdFx0b3V0bGluZS1vZmZzZXQ6IDFweDtcblx0XHRvdXRsaW5lLXdpZHRoOiAycHg7XG5cdH1cbn1cblxuLm8tZm9vdGVyX19saW5rLS1uYXYge1xuXHRzdmcge1xuXHRcdGRpc3BsYXk6IG5vbmU7XG5cdH1cblxuXHRAaW5jbHVkZSBtcSgkbWF4OiBtKSB7XG5cdFx0ZGlzcGxheTogZmxleDtcblx0XHRhbGlnbi1pdGVtczogY2VudGVyO1xuXHRcdHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblxuXHRcdGJvcmRlci10b3A6IDFweCBzb2xpZCBwYWxldHRlKHNlY29uZGFyeSwgNTUwKTtcblx0XHRwYWRkaW5nOiBzcGFjZSgyKSAwO1xuXG5cdFx0c3ZnIHtcblx0XHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdFx0d2lkdGg6IDEycHg7XG5cdFx0XHRoZWlnaHQ6IDEycHg7XG5cdFx0XHR0cmFuc2Zvcm06IHJvdGF0ZSgtOTBkZWcpO1xuXHRcdFx0Y29sb3I6IHBhbGV0dGUocHJpbWFyeSwgNTAwKTtcblx0XHRcdG1hcmdpbi1sZWZ0OiBhdXRvO1xuXHRcdH1cblxuXHRcdCY6bGFzdC1vZi10eXBlIHtcblx0XHRcdGJvcmRlci1ib3R0b206IDFweCBzb2xpZCBwYWxldHRlKHNlY29uZGFyeSwgNTUwKTtcblx0XHR9XG5cdH1cbn1cblxuLm8tZm9vdGVyX19pbmZvIHtcblx0QGluY2x1ZGUgbXEobWFwLWdldCgkby1mb290ZXIsICdtb2JpbGVCcCcpKSB7XG5cdFx0ZGlzcGxheTogZmxleDtcblx0XHRmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuXHRcdGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2Vlbjtcblx0fVxufVxuXG4uby1mb290ZXJfX3NvY2lhbCB7XG5cdGRpc3BsYXk6IGZsZXg7XG5cdGxpc3Qtc3R5bGU6IG5vbmU7XG5cdG1hcmdpbjogc3BhY2UoNCkgMCBzcGFjZSg2KTtcblxuXHRAaW5jbHVkZSBtcShtYXAtZ2V0KCRvLWZvb3RlciwgJ21vYmlsZUJwJykpIHtcblx0XHRtYXJnaW46IDA7XG5cdH1cbn1cblxuXG4uby1mb290ZXJfX2NoYW5uZWwge1xuXHRkaXNwbGF5OiBmbGV4O1xuXHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcblx0d2lkdGg6IDMycHg7XG5cdGhlaWdodDogMzJweDtcblx0bWFyZ2luLXJpZ2h0OiBzcGFjZSgyKTtcbn1cblxuXG4uby1mb290ZXJfX2ljb24ge1xuXHRmbGV4OiBhdXRvO1xuXHRkaXNwbGF5OiBmbGV4O1xuXHRhbGlnbi1pdGVtczogY2VudGVyO1xuXHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcblx0aGVpZ2h0OiAxMDAlO1xuXHRiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuXHRiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG5cdHRyYW5zaXRpb24tcHJvcGVydHk6IG9wYWNpdHk7XG5cdHRyYW5zaXRpb24tZHVyYXRpb246IDAuM3M7XG5cblx0JjpiZWZvcmUge1xuXHRcdGxlZnQ6IDA7XG5cdFx0cmlnaHQ6IDA7XG5cdH1cblxuXHQmOmZvY3VzIHtcblx0XHRvdXRsaW5lLWNvbG9yOiBwYWxldHRlKGZlZWRiYWNrLCBhY3Rpb24pO1xuXHR9XG59XG5cbi5vLWZvb3Rlcl9fZGF5IHtcblx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXHRtaW4td2lkdGg6IHNwYWNlKDQpO1xufVxuXG4uby1mb290ZXJfX2NhcmQge1xuXHRAaW5jbHVkZSBtcSgkbWF4OiBtYXAtZ2V0KCRvLWZvb3RlciwgJ21vYmlsZUJwJykpIHtcblx0XHRkaXNwbGF5OiBub25lO1xuXHR9XG59XG5cbi5vLWZvb3Rlcl9fbGFiZWxzIHtcblx0bWFyZ2luLXRvcDogNTVweDtcblx0ZGlzcGxheTogZmxleDtcblx0anVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuXHRjb2xvcjogcGFsZXR0ZShuZXV0cmFsLCAwKTtcbn0iLCIuby1mb3JtIHt9XG5cbi5vLWZvcm1fX2hlYWRlciB7XG5cdG1hcmdpbi1ib3R0b206IHNwYWNlKDUpO1xufVxuXG4uby1mb3JtX19ib2R5IHt9XG5cbi5vLWZvcm1fX2Zvb3RlciB7XG5cdG1hcmdpbi10b3A6IHNwYWNlKDYpO1xufVxuXG4uby1mb3JtX19yb3cge1xuXHQmICsgJiB7XG5cdFx0bWFyZ2luLXRvcDogMjJweDtcblx0fVxufVxuXG4uby1mb3JtX19yb3ctLXNwbGl0IHtcblx0QGluY2x1ZGUgbXEoJG1heDogNDYwKSB7XG5cdFx0PiAqICsgKiB7XG5cdFx0XHRtYXJnaW4tdG9wOiBzcGFjZSgyKTtcblx0XHR9XG5cdH1cblxuXHRAaW5jbHVkZSBtcSg0NjApIHtcblx0XHRkaXNwbGF5OiBmbGV4O1xuXHRcdGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2Vlbjtcblx0XHRnYXA6IHNwYWNlKDIpO1xuXHR9XG5cblx0ZGl2IHtcblx0XHR3aWR0aDogMTAwJTtcblx0fVxufVxuXG4vLyBBIGhpZGRlbiB3cmFwcGVyIGZvciBob25leSBwb3Qgc3R1ZmZcbi5vLWZvcm1fX3BvdCB7XG5cdG9wYWNpdHk6IDA7XG5cdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0dG9wOiAwO1xuXHRsZWZ0OiAwO1xuXHRoZWlnaHQ6IDA7XG5cdHdpZHRoOiAwO1xuXHR6LWluZGV4OiAtMTtcbn0iLCIvLyBDb21wb25lbnQgc2V0dGluZ3M6IEhlYWRlclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi8qXG5cdENvbG9ycyBnZXQgZGVmaW5lZCBpbiBfc2V0dGluZ3MuY29uZmlnLnNjc3NcbiovXG5cbi5vLWhlYWRlciB7XG5cdEBpbmNsdWRlIHooei1oZWFkZXIpO1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiBtYXAtZ2V0KCRzaXRlLWhlYWRlciwgJ2JnQ29sb3InKTtcblx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRib3JkZXItYm90dG9tOiAxcHggc29saWQgcGFsZXR0ZShuZXV0cmFsLCAxMDApO1xuXG5cdCYuaXMtc3RpY2t5IHtcblx0XHRvcGFjaXR5OiAwO1xuXHRcdHBvc2l0aW9uOiBmaXhlZDtcblx0XHR6LWluZGV4OiA1MDtcblx0XHR0b3A6IDA7XG5cdFx0bGVmdDogMDtcblx0XHR3aWR0aDogMTAwJTtcblx0XHRwYWRkaW5nLXRvcDogc3BhY2UoNCk7XG5cdFx0cGFkZGluZy1ib3R0b206IHNwYWNlKDQpO1xuXHRcdGJveC1zaGFkb3c6IDAgLTVweCAzMHB4IGJsYWNrO1xuXHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTAwJSk7XG5cdFx0dHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuXHRcdHRyYW5zaXRpb24tZHVyYXRpb246IDMwMG1zO1xuXHRcdHRyYW5zaXRpb24tZGVsYXk6IDBzLCAzMDBtcztcblx0XHR0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNCwgMCwgMC42LCAxKTtcblxuXHRcdEBpbmNsdWRlIG1xKCRicC1oZWFkZXItbGFyZ2UpIHtcblx0XHRcdGRpc3BsYXk6IG5vbmU7XG5cdFx0fVxuXG5cdFx0LmlzLXN0aWNreS1oZWFkZXItdmlzaWJsZSAmIHtcblx0XHRcdG9wYWNpdHk6IDE7XG5cdFx0XHR0cmFuc2Zvcm06IG5vbmU7XG5cdFx0XHR0cmFuc2l0aW9uLWRlbGF5OiAwcztcblx0XHR9XG5cdH1cbn1cblxuLm8taGVhZGVyX190b3Age1xuXHRjb2xvcjogcGFsZXR0ZShuZXV0cmFsLCAwKTtcblx0YmFja2dyb3VuZC1jb2xvcjogcGFsZXR0ZShzZWNvbmRhcnksIDgwMCk7XG59XG5cbi5vLWhlYWRlcl9fbWFpbiB7XG5cdGRpc3BsYXk6IGZsZXg7XG5cdGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2Vlbjtcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcblxuXHRAaW5jbHVkZSBtcSgkbWF4OiBtKSB7XG5cdFx0cGFkZGluZzogMCBjYWxjKDZ2dyAtIDIwcHgpIDAgNnZ3O1xuXHR9XG5cblx0QGluY2x1ZGUgbXEobSkge1xuXHRcdEBpbmNsdWRlIGNvbnRhaW47XG5cdH1cblxuXHRAaW5jbHVkZSBtcSgxMTAwKSB7XG5cdFx0bWluLWhlaWdodDogNzVweDtcblx0fVxufVxuXG4uby1oZWFkZXJfX25hdiB7XG5cdEBpbmNsdWRlIG1xKCRtYXg6ICRicC1oZWFkZXItbGFyZ2UpIHtcblx0XHRkaXNwbGF5OiBub25lO1xuXHR9XG59XG5cbi8vLm8taGVhZGVyX19sYW5ndWFnZSB7XG4vL1x0ZmxleDogbm9uZTtcbi8vXHRtYXJnaW4tbGVmdDogc3BhY2UoMik7XG4vL1xuLy9cdEBpbmNsdWRlIG1xKCRtYXg6ICRicC1oZWFkZXItbGFyZ2UpIHtcbi8vXHRcdG1hcmdpbi1sZWZ0OiBhdXRvO1xuLy9cdH1cbi8vfVxuXG4uby1oZWFkZXJfX2xvZ28ge1xuXHRAaW5jbHVkZSBkaXNhYmxlT3V0bGluZUZvck1vdXNlO1xuXHRtYXJnaW4tdG9wOiAtNnB4O1xuXG5cdCY6Zm9jdXMge1xuXHRcdG91dGxpbmUtY29sb3I6IGN1cnJlbnRDb2xvcjtcblx0XHRvdXRsaW5lLXN0eWxlOiBzb2xpZDtcblx0XHRvdXRsaW5lLW9mZnNldDogMXB4O1xuXHRcdG91dGxpbmUtd2lkdGg6IDJweDtcblx0fVxuXG5cdEBpbmNsdWRlIG1xKDEyMDApIHtcblx0XHRtYXJnaW4tdG9wOiAtMTFweDtcblx0fVxufVxuXG4uby1oZWFkZXJfX2ltZyB7XG5cdHdpZHRoOiAyNDBweDtcblx0aGVpZ2h0OiBhdXRvO1xuXG5cdEBpbmNsdWRlIG1xKDEyMDApIHtcblx0XHR3aWR0aDogMzQwcHg7XG5cdH1cbn1cblxuLm8taGVhZGVyX190b2dnbGUge1xuXG5cdEBpbmNsdWRlIG1xKG0sICRicC1oZWFkZXItbGFyZ2UpIHtcblx0XHRtYXJnaW4tcmlnaHQ6IC0yMHB4O1xuXHR9XG5cblx0QGluY2x1ZGUgbXEoJGJwLWhlYWRlci1sYXJnZSkge1xuXHRcdGRpc3BsYXk6IG5vbmU7XG5cdH1cbn0iLCIvLyBDb21wb25lbnQgc2V0dGluZ3M6IEludHJvXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuQHVzZSBcInNhc3M6bWF0aFwiO1xuXG4uby1pbnRybyB7XG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0ei1pbmRleDogMDtcblx0YmFja2dyb3VuZC1jb2xvcjogbWFwLWdldCgkc2l0ZS1pbnRybywgJ2JnQ29sb3InKTtcblxuXHQvLyBXaGVuIGludHJvIGlzIGRhcmtlciB0aGVuIGJvZHkgd2UgbmVlZCB0byBhZGQgZXh0cmEgbWFyZ2luXG5cdEBpZiBtYXAtZ2V0KCRzaXRlLWludHJvLCAnaXNEYXJrJyl7XG5cdFx0QGluY2x1ZGUgdnNwYWNpbmcoXG5cdFx0XHQnbWFyZ2luLWJvdHRvbScgMVxuXHRcdCk7XG5cdH1cbn1cblxuXG4uby1pbnRyb19fYm9keSB7XG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuXHRAaW5jbHVkZSB2c3BhY2luZyhcblx0XHQnbWFyZ2luLWJvdHRvbScgMVxuXHQpO1xuXG5cdEBpbmNsdWRlIG1xKCRtYXg6IG0pIHtcblx0XHQuby1pbnRyby0tbW9iaWxlLWJyZWFrLW91dCAmIHtcblx0XHRcdHdpZHRoOiAxMDB2dztcblx0XHRcdG1hcmdpbi1sZWZ0OiA1MCU7XG5cdFx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XG5cdFx0fVxuXHR9XG5cblx0QGluY2x1ZGUgbXEobSkge1xuXHRcdCY6OmJlZm9yZSB7XG5cdFx0XHRjb250ZW50OiAnJztcblx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRcdHotaW5kZXg6IDA7XG5cdFx0XHR0b3A6IDUwJTtcblx0XHRcdHJpZ2h0OiAwO1xuXHRcdFx0Ym90dG9tOiAwO1xuXHRcdFx0bGVmdDogMDtcblx0XHRcdGJhY2tncm91bmQtY29sb3I6IG1hcC1nZXQoJHNpdGUtaW50cm8sICdiYXJDb2xvcicpO1xuXG5cdFx0XHQuby1pbnRyby0tYm90dG9tLWJhci1oaWRkZW4gJiB7XG5cdFx0XHRcdGRpc3BsYXk6IG5vbmU7XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG59XG5cblxuLm8taW50cm9fX2NvbnRlbnQge1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiBwYWxldHRlKG5ldXRyYWwsIDApO1xuXHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cblx0QGluY2x1ZGUgbXEobSkge1xuXHRcdGRpc3BsYXk6IGZsZXg7XG5cdH1cblxuXHRAaW5jbHVkZSBtcShsKSB7XG5cdFx0d2lkdGg6IGNhbGMoI3ttYXRoLmRpdigxMDAlLCAkc2l0ZS1jb2x1bW5zLWwgKyAyKX0gKiAjeyRzaXRlLWNvbHVtbnMtbH0pO1xuXHRcdG1heC13aWR0aDogI3skc2l0ZS1tYXgtd2lkdGh9cHg7XG5cdFx0bWFyZ2luLWxlZnQ6IGF1dG87XG5cdFx0bWFyZ2luLXJpZ2h0OiBhdXRvO1xuXHR9XG59XG5cblxuLm8taW50cm9fX2ltYWdlIHtcblx0bWFyZ2luLXRvcDogc3BhY2UoNCk7XG5cblx0QGluY2x1ZGUgbXEobSkge1xuXHRcdG9yZGVyOiAtMTtcblx0XHR3aWR0aDogY29sdW1uKDUsMTIpO1xuXHRcdG1hcmdpbi10b3A6IDA7XG5cdH1cblxuXHRAaW5jbHVkZSBtcShsKSB7XG5cdFx0d2lkdGg6IGNvbHVtbig2LDEyKTtcblx0fVxufVxuXG5cbi5vLWludHJvX190ZXh0IHtcblx0cGFkZGluZy10b3A6IHNwYWNlKDQpO1xuXHRwYWRkaW5nLWxlZnQ6ICRzaXRlLWd1dHRlci13aWR0aDtcblx0cGFkZGluZy1yaWdodDogJHNpdGUtZ3V0dGVyLXdpZHRoO1xuXG5cdEBpbmNsdWRlIG1xKG0pIHtcblx0XHR3aWR0aDogY29sdW1uKDcsMTIpO1xuXHRcdHBhZGRpbmc6IHNwYWNlKDEwKSBjb2x1bW4oMSwxMik7XG5cdH1cblxuXHRAaW5jbHVkZSBtcShsKSB7XG5cdFx0d2lkdGg6IGNvbHVtbig2LDEyKTtcblx0fVxufVxuXG5cbi5vLWludHJvX190aXRsZSxcbi5vLWludHJvX19oZWFkaW5nIHtcblx0Y29sb3I6IG1hcC1nZXQoJHNpdGUtaW50cm8sICdjb2xvcicpICFpbXBvcnRhbnQ7XG59XG5cblxuLm8taW50cm9fX2J1dHRvbiB7XG5cdGNvbG9yOiBtYXAtZ2V0KCRzaXRlLWludHJvLCAnbGlua0NvbG9yJykgIWltcG9ydGFudDtcbn0iLCIuby1tYXAge1xuXG5cdC8vIFJlc2V0IHNvbWUgc3R5bGluZyBmb3IgZ29vZ2xlIG1hcHNcblx0YSB7XG5cdFx0JjphZnRlciB7XG5cdFx0XHRkaXNwbGF5OiBub25lO1xuXHRcdH1cblx0fVxufSIsIi8vIENvbXBvbmVudCBzZXR0aW5nczogT3ZlcmxheSBtZW51XG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuJG8tb3ZlcmxheS1tZW51OiAoXG5cdCdiZ2NvbG9yJzogICAgICAgICAgcGFsZXR0ZShuZXV0cmFsLCAwKSxcblx0J2NvbG9yJzogICAgICAgICAgICBwYWxldHRlKHNlY29uZGFyeSwgODAwKSxcblx0J2hvdmVyLWNvbG9yJzogICAgICByZ2JhKHBhbGV0dGUoc2Vjb25kYXJ5LCA4MDApLCAwLjcpLFxuXHQnc2hhZGVyLWNvbG9yJzogICAgIHJnYmEoMCwgMCwgMCwgMC42KSxcblx0J21vdmUtc3BlZWQnOiAgICAgICA0MDBtcyxcblx0J29wYWNpdHktc3BlZWQnOiAgICAyMDBtcyxcbik7XG5cbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4uby1vdmVybGF5IHtcblx0ZGlzcGxheTogbm9uZTtcblx0d2lkdGg6IDEwMHZ3O1xuXHRtaW4taGVpZ2h0OiAxMDB2aDtcblx0cG9zaXRpb246IGFic29sdXRlO1xuXHR0b3A6IDA7XG5cdGxlZnQ6IDA7XG5cdGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjIsIDQxLCA2MSwgLjYpO1xuXHRiYWNrZHJvcC1maWx0ZXI6IGJsdXIoNXB4KTtcblx0ei1pbmRleDogMTAwO1xuXG5cdCYuYWN0aXZlIHtcblx0XHRkaXNwbGF5OiBibG9jaztcblx0fVxufVxuXG4uby1vdmVybGF5LW1lbnUge1xuXHRAaW5jbHVkZSB6KHotb3ZlcmxheS1tZW51KTtcblx0ZGlzcGxheTogZmxleDtcblx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcblx0b3BhY2l0eTogMDtcblx0cG9zaXRpb246IGZpeGVkO1xuXHRoZWlnaHQ6IDEwMCU7XG5cdHdpZHRoOiBjYWxjKDEwMCUgLSAyNHB4KTtcblx0bGVmdDogMjRweDtcblx0dG9wOiAwO1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiBtYXAtZ2V0KCRvLW92ZXJsYXktbWVudSwgJ2JnY29sb3InKTtcblx0Ym9yZGVyLXRvcC1sZWZ0LXJhZGl1czogc3BhY2UoMyk7XG5cdGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IHNwYWNlKDMpO1xuXG5cdC8vIFdoZW4gaXQgZGlzYXBwZWFycyBvdXQgb2Ygdmlld1xuXHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMTIwdncpO1xuXHR0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG5cdHRyYW5zaXRpb24tZHVyYXRpb246IG1hcC1nZXQoJG8tb3ZlcmxheS1tZW51LCAnbW92ZS1zcGVlZCcpLCBtYXAtZ2V0KCRvLW92ZXJsYXktbWVudSwgJ29wYWNpdHktc3BlZWQnKTtcblx0dHJhbnNpdGlvbi1kZWxheTogMHMsIG1hcC1nZXQoJG8tb3ZlcmxheS1tZW51LCAnbW92ZS1zcGVlZCcpO1xuXHR0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNSwgMC4xNSwgMC4xLCAxKSwgbGluZWFyO1xuXG5cdC8vIFdoZW4gaXQgY29tZXMgaW50byB2aWV3XG5cdC5pcy1vdmVybGF5LW1lbnUtYWN0aXZlICYge1xuXHRcdG9wYWNpdHk6IDE7XG5cdFx0dHJhbnNmb3JtOiBub25lO1xuXHRcdHRyYW5zaXRpb24tZGVsYXk6IG1hcC1nZXQoJG8tb3ZlcmxheS1tZW51LCAnb3BhY2l0eS1zcGVlZCcpLCAwcztcblx0fVxuXG5cdC8vIFNoYWRlclxuXHQmOjpiZWZvcmUge1xuXHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdGNvbnRlbnQ6ICcnO1xuXHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHR0b3A6IDA7XG5cdFx0cmlnaHQ6IC0xMjB2dztcblx0XHR3aWR0aDogMTIwdnc7XG5cdFx0aGVpZ2h0OiAxMDAlO1xuXHRcdGJhY2tncm91bmQ6IG1hcC1nZXQoJG8tb3ZlcmxheS1tZW51LCAnc2hhZGVyLWNvbG9yJyk7XG5cdFx0cG9pbnRlci1ldmVudHM6IG5vbmU7XG5cdFx0b3BhY2l0eTogMDtcblx0XHR0cmFuc2l0aW9uLXByb3BlcnR5OiBvcGFjaXR5O1xuXHRcdHRyYW5zaXRpb24tZHVyYXRpb246IG1hcC1nZXQoJG8tb3ZlcmxheS1tZW51LCAnb3BhY2l0eS1zcGVlZCcpO1xuXHRcdHRyYW5zaXRpb24tZGVsYXk6IG1hcC1nZXQoJG8tb3ZlcmxheS1tZW51LCAnbW92ZS1zcGVlZCcpO1xuXHRcdHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7XG5cblx0XHQuaXMtb3ZlcmxheS1tZW51LWFjdGl2ZSAmIHtcblx0XHRcdG9wYWNpdHk6IDE7XG5cdFx0XHR0cmFuc2l0aW9uLWRlbGF5OiAwcztcblx0XHR9XG5cdH1cblxuXHQvLyBEaWFnb25hbCBzaGFwZSBvbiB0aGUgcmlnaHRcblx0Jjo6YWZ0ZXIge1xuXHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdGNvbnRlbnQ6ICcnO1xuXHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHR0b3A6IDA7XG5cdFx0cmlnaHQ6IC0yMCU7XG5cdFx0d2lkdGg6IDIwJTtcblx0XHRoZWlnaHQ6IDEwMCU7XG5cdFx0YmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KC04NmRlZywgdHJhbnNwYXJlbnQgNTAlLCBtYXAtZ2V0KCRvLW92ZXJsYXktbWVudSwgJ2JnY29sb3InKSA1MCUpO1xuXHR9XG5cblx0Ly8gSGlkZSBvdmVybGF5IG1lbnUgb24gbGFyZ2VyIHZpZXdwb3J0c1xuXHRAaW5jbHVkZSBtcSgkYnAtaGVhZGVyLWxhcmdlKSB7XG5cdFx0ZGlzcGxheTogbm9uZTtcblx0fVxufVxuXG5cbi5vLW92ZXJsYXktbWVudV9fYmFyIHtcblx0QGluY2x1ZGUgY29udGFpbjtcblx0ZGlzcGxheTogZmxleDtcblx0anVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcblx0cGFkZGluZy10b3A6IHNwYWNlKDMpO1xuXHRwYWRkaW5nLWJvdHRvbTogc3BhY2UoMyk7XG59XG5cblxuLy8uby1vdmVybGF5LW1lbnVfX2ltZyB7XG4vL1x0aGVpZ2h0OiBzcGFjZSg2KTtcbi8vfVxuXG5cbi5vLW92ZXJsYXktbWVudV9fdG9nZ2xlIHtcblx0dHJhbnNmb3JtOiByb3RhdGUoLTAuNXR1cm4pO1xuXHR0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gNjAwbXMgZWFzZS1vdXQ7XG5cdHRyYW5zaXRpb24tZGVsYXk6IDIwMG1zO1xuXG5cdC5pcy1vdmVybGF5LW1lbnUtYWN0aXZlICYge1xuXHRcdHRyYW5zZm9ybTogbm9uZTtcblx0fVxufVxuXG4uby1vdmVybGF5LW1lbnVfX25hdiB7XG5cdG1hcmdpbi1sZWZ0OiBzcGFjZSgzKTtcblx0bWFyZ2luLXJpZ2h0OiBzcGFjZSgzKTtcbn1cblxuLm8tb3ZlcmxheS1tZW51X19saXN0IHtcblx0ZGlzcGxheTogZmxleDtcblx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcblx0anVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuXHRtYXJnaW46IDA7XG5cdGxpc3Qtc3R5bGU6IG5vbmU7XG59XG5cblxuLm8tb3ZlcmxheS1tZW51X19pdGVtIHtcblx0cGFkZGluZzogc3BhY2UoMikgMDtcblx0Ym9yZGVyLWJvdHRvbTogIDFweCBzb2xpZCBwYWxldHRlKG5ldXRyYWwsIDEwMCk7XG59XG5cblxuLm8tb3ZlcmxheS1tZW51X19saW5rIHtcblx0ZGlzcGxheTogZmxleDtcblx0anVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuXHRhbGlnbi1pdGVtczogY2VudGVyO1xuXHRjb2xvcjogbWFwLWdldCgkby1vdmVybGF5LW1lbnUsICdjb2xvcicpO1xuXHR0ZXh0LWRlY29yYXRpb246IG5vbmU7XG5cdHRyYW5zaXRpb246IG9wYWNpdHkgMjAwbXMgbGluZWFyO1xuXG5cdCY6aG92ZXIge1xuXHRcdGNvbG9yOiBtYXAtZ2V0KCRvLW92ZXJsYXktbWVudSwgJ2hvdmVyLWNvbG9yJyk7XG5cdH1cblxuXHQmOmZvY3VzIHtcblx0XHRvdXRsaW5lLW9mZnNldDogMnB4O1xuXHRcdG91dGxpbmUtY29sb3I6IHJnYmEobWFwLWdldCgkby1vdmVybGF5LW1lbnUsICdjb2xvcicpLCAwLjMpO1xuXHR9XG5cblx0Ji5pcy1hY3RpdmUge1xuXHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0XHRvcGFjaXR5OiAxO1xuXHRcdGZvbnQtd2VpZ2h0OiBib2xkO1xuXHR9XG5cblx0c3ZnIHtcblx0XHR3aWR0aDogMTJweDtcblx0XHRoZWlnaHQ6IDEycHg7XG5cdFx0Y29sb3I6IHBhbGV0dGUocHJpbWFyeSwgNTAwKTtcblx0XHR0cmFuc2Zvcm06IHJvdGF0ZSgtOTBkZWcpO1xuXHR9XG59XG5cbi5vLW92ZXJsYXktbWVudV9fc3ViLWl0ZW1zIHtcblx0Ji5oaWRkZW4ge1xuXHRcdGRpc3BsYXk6IG5vbmU7XG5cdH1cbn1cblxuLm8tb3ZlcmxheS1tZW51X19iYWNrLWJ1dHRvbiB7XG5cdGJvcmRlcjogMXB4IHNvbGlkIHBhbGV0dGUobmV1dHJhbCwgMTAwKTtcblx0Y29sb3I6IHBhbGV0dGUoc2Vjb25kYXJ5LCA2MDApO1xuXHRiYWNrZ3JvdW5kOiBwYWxldHRlKG5ldXRyYWwsIDApO1xuICBcdGJvcmRlci1yYWRpdXM6IDZweDtcblx0cGFkZGluZzogNXB4IDZweDtcblx0bWFyZ2luLWJvdHRvbTogc3BhY2UoMyk7XG5cblx0c3ZnIHtcblx0XHR3aWR0aDogMTJweDtcblx0XHRoZWlnaHQ6IDEycHg7XG5cdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xcHgpIHJvdGF0ZSg5MGRlZyk7XG5cdFx0bWFyZ2luLXJpZ2h0OiAxMHB4O1xuXHR9XG59XG5cbi5vLW92ZXJsYXktbWVudV9fc3ViLWl0ZW0ge1xuXHRsaXN0LXN0eWxlOiBub25lO1xuICBcdHBhZGRpbmc6IHNwYWNlKDIpIDA7XG4gIFx0Ym9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHBhbGV0dGUobmV1dHJhbCwgMTAwKTtcbn1cblxuLm8tb3ZlcmxheS1tZW51X19zdWItaXRlbV9fbGluayB7XG5cdGRpc3BsYXk6IGZsZXg7XG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cdGNvbG9yOiBwYWxldHRlKHNlY29uZGFyeSwgODAwKTtcblx0dGV4dC1kZWNvcmF0aW9uOiBub25lO1xuXHR3aWR0aDogMTAwJTtcblxuXHRpbWcge1xuXHRcdHdpZHRoOiAyNHB4O1xuXHRcdG1hcmdpbi1yaWdodDogc3BhY2UoMik7XG5cdH1cblxuXHRzdmcge1xuXHRcdHdpZHRoOiAxMnB4O1xuXHRcdGhlaWdodDogMTJweDtcblx0XHR0cmFuc2Zvcm06IHJvdGF0ZSgtOTBkZWcpO1xuXHRcdGNvbG9yOiBwYWxldHRlKHByaW1hcnksIDUwMCk7XG5cdFx0bWFyZ2luLWxlZnQ6IGF1dG87XG5cdH1cbn1cblxuLm8tb3ZlcmxheS1tZW51X19ib3R0b20ge1xuXHRtYXJnaW46IHNwYWNlKDMpO1xuXHRzdmcge1xuXHRcdHdpZHRoOiA0NHB4O1xuXHRcdGhlaWdodDogMjFweDtcblx0XHRtYXJnaW4tYm90dG9tOiAxMHB4O1xuXHR9XG59XG5cbi5vLW92ZXJsYXktbWVudV9fYm90dG9tLXRleHQge1xuXHRwYWRkaW5nLWJvdHRvbTogc3BhY2UoMyk7XG5cdEBpbmNsdWRlIGZzKDIwLCAzMik7XG5cdGNvbG9yOiBwYWxldHRlKHNlY29uZGFyeSwgODAwKTtcblx0bGV0dGVyLXNwYWNpbmc6IC0wLjI7XG59IiwiLm8tcXVvdGUge1xuXHRAaW5jbHVkZSBjb250YWluO1xufVxuXG4uby1xdW90ZSB7XG5cdEBpbmNsdWRlIG1xKG0pIHtcblx0XHRkaXNwbGF5OiBmbGV4O1xuXHR9XG59XG5cbi5vLXF1b3RlX19ib2R5IHtcblx0QGluY2x1ZGUgbXEobSkge1xuXHRcdHdpZHRoOiBjb2x1bW4oNCw4KTtcblx0fVxuXG5cdEBpbmNsdWRlIG1xKGwpIHtcblx0XHRtYXJnaW4tbGVmdDogY29sdW1uKDEsMTIpO1xuXHRcdHdpZHRoOiBjb2x1bW4oOCwxMik7XG5cdH1cbn1cblxuLm8tcXVvdGVfX3BpY3R1cmUge1xuXHRkaXNwbGF5OiBibG9jaztcblxuXHRAaW5jbHVkZSBtcSgkbWF4OiBtKSB7XG5cdFx0bWFyZ2luLXRvcDogc3BhY2UoNCk7XG5cdH1cblxuXHRAaW5jbHVkZSBtcShtKSB7XG5cdFx0d2lkdGg6IGNvbHVtbigzLDgpO1xuXHRcdG1hcmdpbi1sZWZ0OiBjb2x1bW4oMSw4KTtcblx0fVxuXHRAaW5jbHVkZSBtcShsKSB7XG5cdFx0d2lkdGg6IGNvbHVtbig0LDEyKTtcblx0XHRtYXJnaW4tbGVmdDogY29sdW1uKDEsMTIpO1xuXHRcdG1hcmdpbi1yaWdodDogY29sdW1uKDEsMTIpO1xuXHR9XG59XG5cbi5vLXF1b3RlX19pbWcge1xuXHRkaXNwbGF5OiBibG9jaztcblx0bWFyZ2luOiAwIGF1dG87XG59XG5cbi5vLXF1b3RlX190ZXh0IHtcblx0QGluY2x1ZGUgZnMoMTgpO1xuXHRxdW90ZXM6ICdcXDIwMWMnICdcXDIwMWQnO1xuXG5cdCY6OmJlZm9yZSB7IGNvbnRlbnQ6IG9wZW4tcXVvdGU7IH1cblx0Jjo6YWZ0ZXIgIHsgY29udGVudDogY2xvc2UtcXVvdGU7IH1cbn1cblxuLm8tcXVvdGVfX2F1dGhvciB7XG5cdG1hcmdpbi10b3A6IHNwYWNlKDMpO1xuXHRtYXJnaW4tbGVmdDogY29sdW1uKDAuNSwgNik7XG59XG5cbi5vLXF1b3RlX19oZWFkaW5nIHtcblx0QGluY2x1ZGUgZnMoMTUpO1xuXHRjb2xvcjogcGFsZXR0ZShuZXV0cmFsLCA1MDApO1xufVxuXG4uby1xdW90ZV9fc3ViaGVhZGluZyB7XG5cdEBpbmNsdWRlIGZzKDE1KTtcblx0Y29sb3I6IHBhbGV0dGUobmV1dHJhbCwgNDAwKTtcbn0iLCIvLyBDb21wb25lbnQgc2V0dGluZ3M6IFN1YiBGb290ZXJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4kby1zdWJmb290ZXI6IChcblx0J2JnY29sb3InOiAgXHRcdFx0cGFsZXR0ZShzZWNvbmRhcnksIDgwMCksXG5cdCdjb2xvcic6ICBcdFx0XHRcdHJnYmEod2hpdGUsIDAuNiksXG5cdCdjb2xvci1ob3Zlcic6ICBcdFx0d2hpdGUsXG5cdCdzcGFjaW5nLWhvcml6b250YWwnOlx0c3BhY2UoNCksXG5cdCd0YWJsZXRCcCc6IDEyMDAsXG5cdCdtb2JpbGVCcCc6IDk2MCxcbik7XG5cbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG5cbi5vLXN1YmZvb3RlciB7XG5cdGNvbG9yOiBtYXAtZ2V0KCRvLXN1YmZvb3RlciwgJ2NvbG9yJyk7XG5cdGJhY2tncm91bmQtY29sb3I6IG1hcC1nZXQoJG8tc3ViZm9vdGVyLCAnYmdjb2xvcicpO1xuXHRwYWRkaW5nLWJvdHRvbTogJHNpdGUtY29va2llQmFyLWhlaWdodDtcblx0dHJhbnNpdGlvbjogcGFkZGluZyAwLjZzO1xuXG5cdC5pcy1jb29raWVzLWFjY2VwdGVkICYge1xuXHRcdHBhZGRpbmctYm90dG9tOiAwO1xuXHR9XG5cblx0QGluY2x1ZGUgbXEoJG1heDogbWFwLWdldCgkby1zdWJmb290ZXIsICdtb2JpbGVCcCcpKSB7XG5cdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRcdEBpbmNsdWRlIHooei1zdWJmb290ZXIpO1xuXG5cdFx0JjpiZWZvcmUsXG5cdFx0JjphZnRlciB7XG5cdFx0XHRjb250ZW50OiAnJztcblx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRcdHRvcDogLTI0cHg7XG5cdFx0XHRkaXNwbGF5OiBibG9jaztcblx0XHRcdHdpZHRoOiAyNHB4O1xuXHRcdFx0aGVpZ2h0OiAyNHB4O1xuXHRcdFx0YmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG5cdFx0fVxuXG5cdFx0JjpiZWZvcmUge1xuXHRcdFx0bGVmdDogMDtcblx0XHRcdGJveC1zaGFkb3c6IC00NnB4IDAgMCA0OHB4IG1hcC1nZXQoJG8tc3ViZm9vdGVyLCAnYmdjb2xvcicpO1xuXHRcdFx0Y2xpcC1wYXRoOiBpbnNldCgxcHggMXB4IC0ycHggLTJweCk7XG5cdFx0XHRib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAxMDAlO1xuXHRcdH1cblxuXHRcdCY6YWZ0ZXIge1xuXHRcdFx0cmlnaHQ6IDA7XG5cdFx0XHRib3gtc2hhZG93OiA0OHB4IDAgMCA0OHB4IG1hcC1nZXQoJG8tc3ViZm9vdGVyLCAnYmdjb2xvcicpO1xuXHRcdFx0Y2xpcC1wYXRoOiBpbnNldCgxcHggMHB4IC0ycHggLTJweCk7XG5cdFx0XHRib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogMTAwJTtcblx0XHR9XG5cdH1cbn1cblxuXG4uby1zdWJmb290ZXJfX21haW4ge1xuXHRAaW5jbHVkZSBjb250YWluO1xuXHRAaW5jbHVkZSBmcygxMyk7XG5cblx0bWFyZ2luLXRvcDogc3BhY2UoMyk7XG5cdG1hcmdpbi1ib3R0b206IHNwYWNlKDMpO1xuXG5cdEBpbmNsdWRlIG1xKG1hcC1nZXQoJG8tc3ViZm9vdGVyLCAnbW9iaWxlQnAnKSkge1xuXHRcdGRpc3BsYXk6IGZsZXg7XG5cdFx0ZmxleC13cmFwOiB3cmFwO1xuXHRcdGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcblx0XHRhbGlnbi1pdGVtczogY2VudGVyO1xuXHRcdG1hcmdpbi10b3A6IHNwYWNlKDEuNSk7XG5cdFx0bWFyZ2luLWJvdHRvbTogc3BhY2UoMS41KTtcblx0fVxufVxuXG5cbi5vLXN1YmZvb3Rlcl9fY29weXJpZ2h0IHtcblxuXHRAaW5jbHVkZSBtcShtYXAtZ2V0KCRvLXN1YmZvb3RlciwgJ3RhYmxldEJwJykpIHtcblx0XHRvcmRlcjogMTtcblx0fVxuXG5cdEBpbmNsdWRlIG1xKG1hcC1nZXQoJG8tc3ViZm9vdGVyLCAnbW9iaWxlQnAnKSkge1xuXHRcdG1hcmdpbi1yaWdodDogbWFwLWdldCgkby1zdWJmb290ZXIsICdzcGFjaW5nLWhvcml6b250YWwnKTtcblx0fVxuXG5cdEBpbmNsdWRlIG1xKCRtYXg6IG1hcC1nZXQoJG8tc3ViZm9vdGVyLCAnbW9iaWxlQnAnKSkge1xuXHRcdG1hcmdpbi10b3A6IHNwYWNlKDIpO1xuXHRcdHBhZGRpbmctdG9wOiBzcGFjZSgyKTtcblx0XHRib3JkZXItdG9wOiAxcHggc29saWQgcmdiYSh3aGl0ZSwgMC40KTtcblx0fVxufVxuXG5cbi5vLXN1YmZvb3Rlcl9fbmF2IHtcblx0bWFyZ2luLXJpZ2h0OiBhdXRvO1xuXG5cdEBpbmNsdWRlIG1xKG1hcC1nZXQoJG8tc3ViZm9vdGVyLCAndGFibGV0QnAnKSkge1xuXHRcdG9yZGVyOiAyO1xuXHR9XG59XG5cbi5vLXN1YmZvb3Rlcl9fYmFjay10by1zaXRlIHtcblx0bWFyZ2luLXJpZ2h0OiBhdXRvO1xuXHRjb2xvcjogd2hpdGU7XG5cdHRleHQtZGVjb3JhdGlvbi1jb2xvcjogdHJhbnNwYXJlbnQ7XG5cdHRyYW5zaXRpb246IHRleHQtZGVjb3JhdGlvbi1jb2xvciAuM3MgO1xuXG5cdEBpbmNsdWRlIG1xKCRtYXg6IG1hcC1nZXQoJG8tc3ViZm9vdGVyLCAnbW9iaWxlQnAnKSkge1xuXHRcdHdpZHRoOiAxMDAlO1xuXHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdHBhZGRpbmctYm90dG9tOiBzcGFjZSgyKTtcblx0XHRtYXJnaW4tYm90dG9tOiBzcGFjZSgyKTtcblx0XHRib3JkZXItYm90dG9tOiAxcHggc29saWQgcmdiYSh3aGl0ZSwgMC40KTtcblxuXHR9XG5cblxuXHRzdmcge1xuXHRcdG1hcmdpbi1yaWdodDogc3BhY2UoMSk7XG5cdFx0dHJhbnNmb3JtOiByb3RhdGUoOTBkZWcpO1xuXHRcdGNvbG9yOiBwYWxldHRlKHByaW1hcnksIDUwMCk7XG5cdFx0dHJhbnNpdGlvbjogdHJhbnNmb3JtIC4zcztcblx0fVxuXG5cdCY6aG92ZXIge1xuXHRcdHRleHQtZGVjb3JhdGlvbi1jb2xvcjogd2hpdGU7XG5cdFx0c3ZnIHtcblx0XHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNHB4KSByb3RhdGUoOTBkZWcpIDtcblx0XHR9XG5cdH1cblxuXG59XG5cbi5vLXN1YmZvb3Rlcl9fbGlzdCB7XG5cdGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcblx0bWFyZ2luOiAwO1xuXG5cdEBpbmNsdWRlIG1xKG1hcC1nZXQoJG8tc3ViZm9vdGVyLCAnbW9iaWxlQnAnKSkge1xuXHRcdGRpc3BsYXk6IGZsZXg7XG5cdFx0ZmxleC13cmFwOiB3cmFwO1xuXG5cdFx0PiAqICsgKiB7XG5cdFx0XHRtYXJnaW4tbGVmdDogbWFwLWdldCgkby1zdWJmb290ZXIsICdzcGFjaW5nLWhvcml6b250YWwnKTtcblx0XHR9XG5cdH1cbn1cblxuXG4uby1zdWJmb290ZXJfX2xpbmsge1xuXHRAaW5jbHVkZSBkaXNhYmxlT3V0bGluZUZvck1vdXNlO1xuXHRjb2xvcjogbWFwLWdldCgkby1zdWJmb290ZXIsICdjb2xvcicpO1xuXHR0ZXh0LWRlY29yYXRpb246IG5vbmU7XG5cdHRyYW5zaXRpb246IGNvbG9yIDIwMG1zO1xuXG5cdCY6aG92ZXIge1xuXHRcdGNvbG9yOiBtYXAtZ2V0KCRvLXN1YmZvb3RlciwgJ2NvbG9yLWhvdmVyJyk7XG5cdH1cblxuXHQmOmZvY3VzIHtcblx0XHRvdXRsaW5lLWNvbG9yOiBjdXJyZW50Q29sb3I7XG5cdFx0b3V0bGluZS1zdHlsZTogc29saWQ7XG5cdFx0b3V0bGluZS1vZmZzZXQ6IDFweDtcblx0XHRvdXRsaW5lLXdpZHRoOiAycHg7XG5cdH1cblxuXHRAaW5jbHVkZSBtcSgkbWF4OiBtYXAtZ2V0KCRvLXN1YmZvb3RlciwgJ21vYmlsZUJwJykpIHtcblx0XHRkaXNwbGF5OiBibG9jaztcblx0XHRwYWRkaW5nOiBzcGFjZSgxKSAwO1xuXHR9XG59XG5cblxuLm8tc3ViZm9vdGVyX190cmFkZW1hcmsge1xuXG5cdEBpbmNsdWRlIG1xKCRtYXg6IG1hcC1nZXQoJG8tc3ViZm9vdGVyLCAndGFibGV0QnAnKSkge1xuXHRcdG1hcmdpbi10b3A6IHNwYWNlKDEuNSk7XG5cdH1cblxuXHRAaW5jbHVkZSBtcShtYXAtZ2V0KCRvLXN1YmZvb3RlciwgJ3RhYmxldEJwJykpIHtcblx0XHRtYXJnaW4tbGVmdDogYXV0bztcblx0XHRvcmRlcjogMztcblx0fVxufSIsIi5vLXRlYW1fX2hlYWRpbmcge1xuICBjb2xvcjogcGFsZXR0ZShzZWNvbmRhcnksIDYwMCk7XG4gIG1hcmdpbi1ib3R0b206IHNwYWNlKDYpO1xufVxuXG4uby10ZWFtX19tYXRyaXgge1xuICBkaXNwbGF5OiBncmlkO1xuICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgyLCAxZnIpO1xuICBncmlkLWdhcDogc3BhY2UoNCkgc3BhY2UoMS41KTtcblxuICBAaW5jbHVkZSBtcSg0MjUpIHtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgyLCAxZnIpO1xuICAgIGdyaWQtZ2FwOiBzcGFjZSg2KSBzcGFjZSgzKTtcbiAgfVxuXG5cbiAgQGluY2x1ZGUgbXEoNjI0LCAxMjAwKSB7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoYXV0by1maXQsIDE4NHB4KTtcbiAgICBncmlkLWdhcDogc3BhY2UoNikgc3BhY2UoMyk7XG4gIH1cblxuICBAaW5jbHVkZSBtcSgxMjAwKSB7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoNSwgMWZyKTtcbiAgICBncmlkLWdhcDogc3BhY2UoNikgc3BhY2UoMyk7XG4gIH1cbn0iLCIkby10aGFua3MtYnAxOiAxMTEwO1xuJG8tdGhhbmtzLWdhcDogc3BhY2UoNik7XG5cblxuLm8tdGhhbmtzIHtcblx0QGluY2x1ZGUgY29udGFpbjtcblx0QGluY2x1ZGUgdnNwYWNpbmcoXG5cdFx0J3BhZGRpbmctYm90dG9tJyAxXG5cdCk7XG5cblx0QGluY2x1ZGUgbXEoJG8tdGhhbmtzLWJwMSkge1xuXHRcdGRpc3BsYXk6IGZsZXg7XG5cdH1cbn1cblxuXG4uby10aGFua3NfX2xlZnQge1xuXHRAaW5jbHVkZSBtcSgkby10aGFua3MtYnAxKSB7XG5cdFx0d2lkdGg6IGNhbGMoI3tjb2x1bW4oNiwxMil9ICsgI3skby10aGFua3MtZ2FwfSk7XG5cdFx0cGFkZGluZy1yaWdodDogJG8tdGhhbmtzLWdhcDtcblx0fVxufVxuXG5cbi5vLXRoYW5rc19fcmlnaHQge1xuXHRtYXJnaW4tdG9wOiBzcGFjZSg1KTtcblxuXHRAaW5jbHVkZSBtcSgkby10aGFua3MtYnAxKSB7XG5cdFx0d2lkdGg6IGNvbHVtbig2LDEyKTtcblx0XHRtYXJnaW4tdG9wOiAwO1xuXHR9XG59IiwiLy8gQ29tcG9uZW50IHNldHRpbmdzOiBVU1Bcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4kby11c3A6IChcblx0J2JhY2tncm91bmQtY29sb3InOiAgXHRwYWxldHRlKHByaW1hcnksIDUwMCksXG5cdCd0ZXh0LWNvbG9yJzpcdFx0XHRwYWxldHRlKG5ldXRyYWwsIDApLFxuKTtcblxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cblxuLm8tdXNwIHtcblx0QGluY2x1ZGUgbXEoJG1heDogbCkge1xuXHRcdGJhY2tncm91bmQtY29sb3I6IG1hcC1nZXQoJG8tdXNwLCAnYmFja2dyb3VuZC1jb2xvcicpO1xuXHR9XG59XG5cbi5vLXVzcF9fbWFpbiB7XG5cdEBpbmNsdWRlIG1xKG0pe1xuXHRcdGRpc3BsYXk6IGZsZXg7XG5cdH1cbn1cblxuLm8tdXNwX190ZXh0IHtcblx0cGFkZGluZzogc3BhY2UoNCkgMDtcblx0Y29sb3I6IG1hcC1nZXQoJG8tdXNwLCAndGV4dC1jb2xvcicpO1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiBtYXAtZ2V0KCRvLXVzcCwgJ2JhY2tncm91bmQtY29sb3InKTtcblxuXHRAaW5jbHVkZSBtcShtKSB7XG5cdFx0d2lkdGg6IGNvbHVtbig1LCA4KTtcblx0XHRwYWRkaW5nOiB7XG5cdFx0XHR0b3A6IGNvbHVtbigwLjUsIDgpO1xuXHRcdFx0Ym90dG9tOiBjb2x1bW4oMC41LCA4KTtcblx0XHRcdGxlZnQ6IDA7XG5cdFx0XHRyaWdodDogY29sdW1uKDEsIDgpO1xuXHRcdH1cblx0fVxuXG5cdEBpbmNsdWRlIG1xKGwpIHtcblx0XHR3aWR0aDogY29sdW1uKDYpO1xuXHRcdHBhZGRpbmc6IGNvbHVtbigwLjUpIGNvbHVtbigxKTtcblx0fVxufVxuXG4uby11c3BfX2ltYWdlIHtcblx0YmFja2dyb3VuZC1wb3NpdGlvbjogNTAlIDUwJTtcblx0YmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcblxuXHRAaW5jbHVkZSBtcSgkbWF4OiBtKSB7XG5cdFx0bWFyZ2luLWxlZnQ6IC0kc2l0ZS1ndXR0ZXItd2lkdGg7XG5cdFx0bWFyZ2luLXJpZ2h0OiAtJHNpdGUtZ3V0dGVyLXdpZHRoO1xuXHRcdHBhZGRpbmctYm90dG9tOiA2NSU7XG5cdFx0bWluLWhlaWdodDogMzYwcHg7XG5cdH1cblxuXHRAaW5jbHVkZSBtcShtLCBsKSB7XG5cdFx0d2lkdGg6IGNvbHVtbig0LCA4KTtcblx0XHRtYXJnaW4tcmlnaHQ6IGNvbHVtbigtMSwgOCk7XG5cdH1cblxuXHRAaW5jbHVkZSBtcShsKSB7XG5cdFx0d2lkdGg6IGNvbHVtbig2KTtcblx0fVxufVxuXG4uby11c3BfX2hlYWRpbmcge1xuXHRAaW5jbHVkZSBmcygzMik7XG5cdG1hcmdpbi1ib3R0b206IHNwYWNlKDMpO1xuXHRjb2xvcjogbWFwLWdldCgkby11c3AsICd0ZXh0LWNvbG9yJyk7XG59XG5cbi5vLXVzcF9fbGlzdCB7XG5cdGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcblx0bWFyZ2luLWxlZnQ6IDE2cHg7XG59XG5cbi5vLXVzcF9faXRlbSB7XG5cdEBpbmNsdWRlIG93bChzcGFjZSgyKSk7XG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0cGFkZGluZy1sZWZ0OiBzcGFjZSgyKTtcblxuXHQmOjpiZWZvcmUge1xuXHRcdCR3aWR0aDogMTZweDtcblx0XHQkaGVpZ2h0OiAxMnB4O1xuXG5cdFx0Y29udGVudDonJztcblx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0dG9wOiA1cHg7XG5cdFx0bGVmdDogLSN7JHdpZHRofTtcblx0XHR3aWR0aDogJHdpZHRoO1xuXHRcdGhlaWdodDogJGhlaWdodDtcblx0XHRiYWNrZ3JvdW5kLWltYWdlOiB1cmwoL2ltZy9jaGVjay9jaGVja2VkLnN2Zyk7XG5cdFx0YmFja2dyb3VuZC1zaXplOiAkd2lkdGggJGhlaWdodDtcblx0fVxufVxuXG4uby11c3BfX2FjdGlvbiB7XG5cdG1hcmdpbi10b3A6IHNwYWNlKDYpO1xufVxuXG4uby11c3BfX2ltYWdlIHtcblx0YmFja2dyb3VuZC1jb2xvcjogcGFsZXR0ZShuZXV0cmFsLCAxMDApO1xuXHRiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xufSIsIi5vLXZpZGVvLWhlcm8ge1xuXHRkaXNwbGF5OiBncmlkO1xuXHRncmlkLXRlbXBsYXRlLWNvbHVtbnM6IGF1dG87XG5cdGdyaWQtdGVtcGxhdGUtcm93czogMWZyIGF1dG8gYXV0byBhdXRvO1xuXHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdGNvbG9yOiBwYWxldHRlKG5ldXRyYWwsIDApO1xuXHRtYXJnaW4tYm90dG9tOiAtMjRweDtcblx0aXNvbGF0aW9uOiBpc29sYXRlO1xuXHRtYXgtaGVpZ2h0OiA2NXZoO1xuXG5cdEBpbmNsdWRlIG1xKCRicC12aWRlby1oZXJvKSB7XG5cdFx0bWFyZ2luLWJvdHRvbTogY2xhbXAoc3BhY2UoNSksIDV2dywgc3BhY2UoMTApKTtcblx0fVxufVxuXG5cbi5vLXZpZGVvLWhlcm9fX3ZpZCB7XG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0Z3JpZC1yb3c6IDEgLyAtMjtcblx0Z3JpZC1jb2x1bW46IDE7XG5cdHotaW5kZXg6IC0xO1xuXHR3aWR0aDogMTAwJTtcblx0aGVpZ2h0OiAxMDAlO1xuXHRhc3BlY3QtcmF0aW86IDEuOTQwMzc5NDtcblx0b3ZlcmZsb3c6IGhpZGRlbjtcblxuXHR2aWRlbyB7XG5cdFx0d2lkdGg6IDEwMCU7XG5cdFx0aGVpZ2h0OiAxMDAlO1xuXHRcdG9iamVjdC1maXQ6IGNvdmVyO1xuXHR9XG5cblx0JjpiZWZvcmUge1xuXHRcdGNvbnRlbnQ6IFwiXCI7XG5cdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdHdpZHRoOiAxMDAlO1xuXHRcdGhlaWdodDogMTAwJTtcblx0XHRiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMyk7XG5cdH1cbn1cblxuXG4uby12aWRlby1oZXJvX19oZWFkZXIge1xuXHRncmlkLXJvdzogMTtcblx0Z3JpZC1jb2x1bW46IDE7XG5cdGFsaWduLXNlbGY6IGNlbnRlcjtcblx0cGFkZGluZy1ibG9jazogMmVtIDNlbTtcblxuXHQuby12aWRlby1oZXJvX19oZWFkZXItLXNtYWxsIHtcblx0XHRmb250LXdlaWdodDogMTAwO1xuXHR9XG5cblx0Lm8tdmlkZW8taGVyb19faGVhZGVyLS11bmRlcmxpbmUge1xuXHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuXHRcdGltZyB7XG5cdFx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0XHRsZWZ0OiAwO1xuXHRcdFx0dG9wOiAxMDAlO1xuXHRcdFx0d2lkdGg6IDE0MnB4O1xuXHRcdH1cblx0fVxufVxuXG4uby12aWRlby1oZXJvX19oZWFkZXItaW5uZXIge1xuXHRmb250LXNpemU6IGNsYW1wKDIwcHgsIDV2dywgNTZweCk7XG5cdG1heC13aWR0aDogNjQwcHg7XG5cdGZvbnQtd2VpZ2h0OiA2MDA7XG59XG5cblxuLm8tdmlkZW8taGVyb19fY29udGVudCB7XG5cdGRpc3BsYXk6IG5vbmU7XG5cblx0QGluY2x1ZGUgbXEoJGJwLXZpZGVvLWhlcm8pIHtcblx0XHRncmlkLXJvdzogMjtcblx0XHRncmlkLWNvbHVtbjogMTtcblx0XHRkaXNwbGF5OiBmbGV4O1xuXHRcdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG5cdFx0Z2FwOiBzcGFjZSgzKTtcblx0fVxufVxuXG5cbi5vLXZpZGVvLWhlcm9fX2J1dHRvbnMge1xuXHRkaXNwbGF5OiBmbGV4O1xuXHRmbGV4LXdyYXA6IHdyYXA7XG5cdGdhcDogc3BhY2UoMik7XG5cdG1heC13aWR0aDogNDgwcHg7XG5cblx0JiA+ICoge1xuXHRcdGZsZXgtZ3JvdzogMTtcblx0fVxufVxuXG5cblxuLm8tdmlkZW8taGVyb19fYmFyIHtcblx0LS1iYXItcGFkZGluZy1ibG9jazogMjJweDtcblxuXHRncmlkLXJvdzogMztcblx0Z3JpZC1jb2x1bW46IDE7XG5cdGJhY2tncm91bmQ6IHJnYmEoMTYsMTcsMjAsMC4xNik7XG5cdGJhY2tkcm9wLWZpbHRlcjogYmx1cigxMnB4KTtcblx0cGFkZGluZy10b3A6IHZhcigtLWJhci1wYWRkaW5nLWJsb2NrKTtcblx0cGFkZGluZy1ib3R0b206IGNhbGModmFyKC0tYmFyLXBhZGRpbmctYmxvY2spICsgdmFyKC0tY2FyZC1wYWRkaW5nLCAwcHgpKTtcblxuXHRAaW5jbHVkZSBtcSgkbWF4OiAkYnAtdmlkZW8taGVybykge1xuXHRcdC0tYmFyLXBhZGRpbmctYmxvY2s6IDE0cHg7XG5cdFx0LS1jYXJkLXBhZGRpbmc6ICN7c3BhY2UoMyl9O1xuXHR9XG59XG5cblxuLm8tdmlkZW8taGVyb19fYmFyLWlubmVyIHtcblx0ZGlzcGxheTogZmxleDtcblx0ZmxleC13cmFwOiB3cmFwO1xuXHRnYXA6IHNwYWNlKDMpO1xuXHRhbGlnbi1pdGVtczogY2VudGVyO1xuXHRqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG59XG5cblxuLm8tdmlkZW8taGVyb19faW5zb2NpYWwge1xuXHQvL0BpbmNsdWRlIG1xKCRtYXg6IDcwMCkge1xuXHQvL1x0ZGlzcGxheTogbm9uZTtcblx0Ly99XG59XG5cbi5vLXZpZGVvLWhlcm9fX3N1YiB7XG5cdGdyaWQtcm93OiA0O1xuXHRncmlkLWNvbHVtbjogMTtcbn1cblxuXG4uby12aWRlby1oZXJvX19pbnN1cmVycyB7XG5cdGRpc3BsYXk6IGdyaWQ7XG5cdGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDQsIG1pbm1heCg0OHB4LCA3OHB4KSk7XG5cdGdhcDogY2xhbXAoc3BhY2UoMiksIDIuM3Z3LCBzcGFjZSg0KSk7XG5cblx0QGluY2x1ZGUgbXEoJG1heDogJGJwLXZpZGVvLWhlcm8pIHtcblx0XHRkaXNwbGF5OiBub25lO1xuXHR9XG59XG5cblxuLm8tdmlkZW8taGVyb19faW5zdXJlciB7XG5cdG9wYWNpdHk6IC44O1xuXG5cdGltZyB7XG5cdFx0d2lkdGg6IGF1dG87XG5cdFx0aGVpZ2h0OiAzNnB4O1xuXHR9XG59XG5cblxuLm8tdmlkZW8taGVyb19fbW9yZS1pbnN1cmVycyB7XG5cdGRpc3BsYXk6IGJsb2NrO1xuXHR0ZXh0LWFsaWduOiByaWdodDtcblx0bWFyZ2luLXRvcDogc3BhY2UoMik7XG5cblx0QGluY2x1ZGUgbXEoJG1heDogJGJwLXZpZGVvLWhlcm8pIHtcblx0XHRkaXNwbGF5OiBub25lO1xuXHR9XG59XG5cblxuLm8tdmlkZW8taGVyb19fY29udGFpbiB7XG5cdEBpbmNsdWRlIGNvbnRhaW47XG59XG5cblxuXG4uby12aWRlby1oZXJvX19pbnNvY2lhbCB7XG5cdGRpc3BsYXk6IGZsZXg7XG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cdHdoaXRlLXNwYWNlOiBub3dyYXA7XG59XG5cblxuLm8tdmlkZW8taGVyb19fc2NvcmUge1xuXHRmb250LXdlaWdodDogNjAwO1xufVxuXG4uby12aWRlby1oZXJvX19sb2dvIHtcblx0bWFyZ2luLWxlZnQ6IDhweDtcblx0d2lkdGg6IDc4cHg7XG59XG5cbi5vLXZpZGVvLWhlcm9fX3N0YXIge1xuXHRtYXJnaW4tcmlnaHQ6IDZweDtcbn1cblxuXG4uby12aWRlby1oZXJvX191c3BzIHtcblx0cGFkZGluZy1ib3R0b206IHNwYWNlKDYpO1xuXG5cdEBpbmNsdWRlIG1xKCRtYXg6ICRicC12aWRlby1oZXJvKSB7XG5cdFx0cGFkZGluZy1ib3R0b206IHNwYWNlKDMpO1xuXHR9XG59IiwiLm8tcmV2aWV3cyB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KDE4MGRlZywgIzI3NTFBMyAwJSwgIzE5M0U4QSA3MCUpO1xuXG4gIEBpbmNsdWRlIG1xKCRtYXg6IG0pIHtcbiAgICBtYXJnaW4tYm90dG9tOiBjbGFtcCgxMjBweCwgNy4ydncgLCAyMDBweCk7XG4gIH1cbn0iLCIuby1yZXBhaXItdHlwZXMge1xuICBtYXJnaW4tYm90dG9tOiBjbGFtcCg3MnB4LCA3LjJ2dyAsIDEyMHB4KTtcblxuICAvLyBUb3AgbWFyZ2luIG9ubHkgb24gY29uc2VjdXRpdmUgYmxvY2tzXG4gICYgKyAmIHtcbiAgICBtYXJnaW4tdG9wOiBjbGFtcCg3MnB4LCA3LjJ2dyAsIDEyMHB4KTtcbiAgfVxufSIsIi5vLXRleHQtaW1hZ2Uge1xuICBwYWRkaW5nLXRvcDogc3BhY2UoMTApO1xuICBwYWRkaW5nLWJvdHRvbTogc3BhY2UoMTApO1xufVxuXG4uby10ZXh0LWltYWdlLS1kYXJrIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KDBkZWcsICMxOTNFOEEgMzIlLCAjMjc1MUEzIDEwMCUpO1xuICBjb2xvcjogd2hpdGU7XG5cbiAgLm8tdGV4dC1pbWFnZV9faGVhZGVyIHtcbiAgICBjb2xvcjogd2hpdGUgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5vLXRleHQtaW1hZ2VfX3BhZ2UtbmFtZSB7XG4gICAgY29sb3I6IHdoaXRlO1xuICB9XG59XG5cbi5vLXRleHQtaW1hZ2VfX3RleHQge1xuICBtYXgtd2lkdGg6IDYwMHB4O1xufVxuXG4uby10ZXh0LWltYWdlX19oZWFkZXIge1xuICBmb250LXNpemU6IDMycHg7XG4gIG1hcmdpbi10b3A6IDA7XG4gIG1hcmdpbi1ib3R0b206IHNwYWNlKDIpO1xuICBjb2xvcjogcGFsZXR0ZShzZWNvbmRhcnksIDYwMCk7XG5cbiAgQGluY2x1ZGUgbXEoJG1heDogbSkge1xuICAgIGZvbnQtc2l6ZTogMjBweDtcbiAgfVxufVxuXG4uby10ZXh0LWltYWdlX19wYWdlLW5hbWUge1xuICBAaW5jbHVkZSBmcygxNSk7XG4gIGNvbG9yOiBwYWxldHRlKHNlY29uZGFyeSwgNDAwKTtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbn1cblxuLy8gZmlyc3QgZWxlbWVudCBvbiBtb2JpbGVcbiNjb21wb25lbnQtaXRlbS0xIHtcbiAgQGluY2x1ZGUgbXEoJG1heDogbSkge1xuICAgIC5vLXRleHQtaW1hZ2Uge1xuICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgIHdpZHRoOiAxMDB2dztcbiAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgIC5sLWNvbnRhaW4ge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAuYy1wcm9qZWN0b3JfX2ltZyB7XG4gICAgICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogMDtcbiAgICAgIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDA7XG4gICAgfVxuXG4gICAgLy8gY29udGFpbiBvbmx5IHRoZSB0ZXh0XG4gICAgLmwtc3BsaXRfX2NvbHVtbjpsYXN0LW9mLXR5cGUge1xuICAgICAgQGluY2x1ZGUgY29udGFpbigpO1xuICAgICAgcGFkZGluZy1ib3R0b206IHNwYWNlKDkpO1xuICAgIH1cbiAgfVxufVxuXG4vLyBhbGlnbiBoZXJvIHRleHQgdG8gdG9wXG4jY29tcG9uZW50LWl0ZW0tMSB7XG4gIC5vLXRleHQtaW1hZ2Uge1xuICAgIC5sLXNwbGl0IHtcbiAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICAgIH1cbiAgfVxufSIsIi8vIENvbXBvbmVudCBzZXR0aW5nczogVVNQU1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi5vLXVzcHMge1xuXHRtYXJnaW46IGNsYW1wKDI0cHgsIDIuNHZ3LCA0MHB4KSAwO1xuXHRwYWRkaW5nOiBjbGFtcCg0OHB4LCA0Ljh2dywgODBweCkgMDtcbn1cblxuLm8tdXNwcy0tZGFyayB7XG5cdGJhY2tncm91bmQtY29sb3I6IHBhbGV0dGUoc2Vjb25kYXJ5LCA1MCk7XG59IiwiLm8tYWxlcnQge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIEBpbmNsdWRlIGZzKDEzLCAxOCk7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIHBhZGRpbmc6IHNwYWNlKDEpIDZ2dztcbiAgY29sb3I6IHBhbGV0dGUobmV1dHJhbCwgMCk7XG4gIGJhY2tncm91bmQtY29sb3I6IHBhbGV0dGUoc2Vjb25kYXJ5LCA0MDApO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgc3ZnIHtcbiAgICBtYXJnaW4tcmlnaHQ6IHNwYWNlKDEpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMXB4KTtcbiAgfVxufVxuIiwiLm8tY3RhLWZvcm0ge1xuICBkaXNwbGF5OiBncmlkO1xuICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IGNvbHVtbig3LCAxMikgY29sdW1uKDUsIDEyKTtcblxuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG5cbiAgQGluY2x1ZGUgbXEoJG1heDogMTIzMCkge1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMTAwJTtcbiAgfVxuXG4gIEBpbmNsdWRlIG1xKDcwMCkge1xuICAgIEBpbmNsdWRlIGNvbnRhaW4oKTtcbiAgfVxuXG4gICYuby1jdGEtZm9ybS0tcmV2ZXJzZWQge1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogY29sdW1uKDUsIDEyKSBjb2x1bW4oNywgMTIpO1xuXG4gICAgQGluY2x1ZGUgbXEoJG1heDogMTIzMCkge1xuICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxMDAlO1xuICAgIH1cbiAgfVxuXG59XG5cbi5vLWN0YS1mb3JtLS1yZXZlcnNlZCB7XG4gIC5vLWN0YS1mb3JtX19jb2x1bW4tLWZvcm0ge1xuICAgIG9yZGVyOiAtMTtcbiAgfVxufVxuXG4uby1jdGEtZm9ybV9fY29sdW1uLS1hZGRpdGlvbmFsLWNvbXBvbmVudCB7XG4gIG1hcmdpbi1yaWdodDogMTIwcHg7XG5cbiAgQGluY2x1ZGUgbXEoJG1heDogMTIzMCkge1xuICAgIG1heC13aWR0aDogY2FsYygxMDAlIC0gMTJ2dyk7XG4gICAgbWFyZ2luOiAwIGF1dG8gc3BhY2UoNik7XG4gIH1cblxuICAuby1jdGEtZm9ybS0tcmV2ZXJzZWQgJiB7XG4gICAgbWFyZ2luLWxlZnQ6IDEyMHB4O1xuXG4gICAgQGluY2x1ZGUgbXEoJG1heDogMTIzMCkge1xuICAgICAgbWFyZ2luOiAwIGF1dG87XG5cbiAgICB9XG4gIH1cbn0iLCIvKiogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAqIFRlbXBsYXRlc1xuICogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSovXG5cbkBpbXBvcnQgXCJ0ZW1wbGF0ZXMuZmFxXCI7XG5AaW1wb3J0IFwidGVtcGxhdGVzLmluc3VyZXJzXCI7XG5AaW1wb3J0IFwidGVtcGxhdGVzLmRhbWFnZUZsb3dcIjsiLCIkdC1mYXEtbW9iaWxlQnA6IDExMjA7XG5cbi50LWZhcSB7XG5cdG1hcmdpbi10b3A6IGNsYW1wKDQwcHgsIDMuOHZ3LCA2NHB4KTtcbn1cblxuLnQtZmFxX190aXRsZSB7XG5cdG1hcmdpbi1ib3R0b206IGNsYW1wKDI0cHgsIDJ2dywgNDBweCk7XG59XG5cbi50LWZhcV9fbWFpbiB7XG5cdEBpbmNsdWRlIG1xKCR0LWZhcS1tb2JpbGVCcCkge1xuXHRcdGRpc3BsYXk6IGZsZXg7XG5cdFx0anVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuXHR9XG59XG5cbi50LWZhcV9fY29udGVudCB7XG5cdGZsZXg6IDEgMSBhdXRvO1xufVxuXG4udC1mYXFfX21lbnUge1xuXHRmbGV4OiAwIDAgY2xhbXAoMjk2cHgsIDE4dncsIDM0MHB4KTtcblx0bWFyZ2luLXJpZ2h0OiBjbGFtcCg2NHB4LCA1LjJ2dywgODhweCk7XG5cblx0QGluY2x1ZGUgbXEoJG1heDogJHQtZmFxLW1vYmlsZUJwKSB7XG5cdFx0ZGlzcGxheTogbm9uZTtcblx0fVxufVxuXG4udC1mYXFfX2NhdGVnb3JpZXMge1xuXHRkaXNwbGF5OiBncmlkO1xuXHRncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmcjtcblx0Z3JpZC10ZW1wbGF0ZS1yb3dzOiAxZnI7XG5cdGdyaWQtdGVtcGxhdGUtYXJlYXM6IFwiZnVsbFwiO1xuXHRtYXgtd2lkdGg6IDc0NHB4O1xuXG5cdEBpbmNsdWRlIG1xKCRtYXg6ICR0LWZhcS1tb2JpbGVCcCkge1xuXHRcdGRpc3BsYXk6IGJsb2NrO1xuXHR9XG59XG5cblxuLnQtZmFxX19jYXRlZ29yeSB7XG5cdEBpbmNsdWRlIG1xKCRtYXg6ICR0LWZhcS1tb2JpbGVCcCkge1xuXHRcdCYgKyAmIHtcblx0XHRcdG1hcmdpbi10b3A6IHNwYWNlKDUpO1xuXHRcdH1cblx0fVxuXG5cdEBpbmNsdWRlIG1xKCR0LWZhcS1tb2JpbGVCcCkge1xuXHRcdG9wYWNpdHk6IDA7XG5cdFx0Z3JpZC1hcmVhOiBmdWxsO1xuXHRcdHBvaW50ZXItZXZlbnRzOiBub25lO1xuXHRcdHRyYW5zaXRpb246IG9wYWNpdHkgMTI1bXMgbGluZWFyO1xuXHR9XG5cblx0Ly8gYmVjb21lcyB2aXNpYmxlXG5cdCYuaXMtYWN0aXZlIHtcblx0XHRwb2ludGVyLWV2ZW50czogYXV0bztcblx0XHRvcGFjaXR5OiAxO1xuXHRcdHRyYW5zaXRpb246IG9wYWNpdHkgMTI1bXMgbGluZWFyIDE3NW1zO1xuXHR9XG59XG5cbi50LWZhcV9fY3RhIHtcblx0bWFyZ2luLXRvcDogY2xhbXAoNjRweCwgNi4ydncsIDEwNXB4KTtcbn0iLCIjaW5zdXJlcnMge1xuXG4gICNjb21wb25lbnQtaXRlbS0xIHtcbiAgICBtYXJnaW46IGNsYW1wKDQwcHgsIDIuNXZ3LCA2NHB4KSAwO1xuXG4gICAgJi5sLWNvbXBvbmVudC0tdGV4dCB7XG4gICAgICAubC1yZXN0cmljdC1uYXJyb3cge1xuICAgICAgICBtYXgtd2lkdGg6IDcyMHB4O1xuICAgICAgfVxuICAgIH1cbiAgfVxufSIsIi50LWRhbWFnZS1mbG93IHtcblx0b3ZlcmZsb3cteTogc2Nyb2xsO1xufSIsIi5zLWNoZWNrbGlzdCB7XG5cdGxpc3Qtc3R5bGU6IG5vbmU7XG5cdG1hcmdpbi1sZWZ0OiAwO1xuXG5cdGxpIHtcblx0XHRkaXNwbGF5OiBmbGV4O1xuXHRcdHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG5cdFx0bWFyZ2luLXRvcDogNXB4O1xuXHRcdGxpbmUtaGVpZ2h0OiAxLjQ1O1xuXG5cdFx0Jjo6YmVmb3JlIHtcblx0XHRcdGNvbnRlbnQ6ICcnO1xuXHRcdFx0YmFja2dyb3VuZC1pbWFnZTogdXJsKC9pbWcvY2hlY2svY2hlY2tlZC5zdmcpO1xuXHRcdFx0YmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcblx0XHRcdHdpZHRoOiAxMnB4O1xuXHRcdFx0aGVpZ2h0OiAxMnB4O1xuXHRcdFx0bWFyZ2luLXJpZ2h0OiA4cHg7XG5cdFx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoN3B4KTtcblx0XHR9XG5cdH1cbn0iLCIvKipcbiAqIEFsbCB0ZXh0IGVsZW1lbnRzIHRoYXQgY2FuIGJlIGFkZGVkIGJ5IHRoZSB1c2VyIHRocm91Z2ggYSBDTVNcbiAqL1xuXG5cbi5zLXRleHQge1xuXG5cdGgxLCBoMiwgaDMsIGg0IHtcblx0XHRjb2xvcjogcGFsZXR0ZShzZWNvbmRhcnksIDYwMCk7XG5cdH1cblxuXHQvLyBGaXJzdCB0aGUgb3dsIHNlbGVjdG9yIGZvciBzZXR0aW5nIGEgZGVmYXVsdCB2ZXJ0aWNhbCByaHl0aG1cblx0JiA+ICogKyAqIHtcblx0XHRtYXJnaW4tdG9wOiBzcGFjZSgzKTtcblx0fVxuXG5cdC8vIE1ha2Ugc3VyZSBmaXJzdCBpdGVtIGluIHNjb3BlZCB0ZXh0IGhhcyBubyBtYXJnaW4gb24gdG9wXG5cdCYgPiA6Zmlyc3QtY2hpbGQge1xuXHRcdG1hcmdpbi10b3A6IDAgIWltcG9ydGFudDtcblx0fVxuXG5cdC5jLXByZS10aXRsZSB7XG5cdFx0KyBoMSxcblx0XHQrIGgyLFxuXHRcdCsgaDMsXG5cdFx0KyBoNCB7XG5cdFx0XHRtYXJnaW4tdG9wOiAwO1xuXHRcdH1cblx0fVxuXG5cdCYgPiAqICsgLmMtYnV0dG9uIHtcblx0XHRtYXJnaW4tdG9wOiBzcGFjZSg1KTtcblx0fVxuXG5cdCYgPiB1bDpub3QoW2NsYXNzXSkge1xuXHRcdGxpc3Qtc3R5bGU6IG5vbmU7XG5cblx0XHQmID4gbGkge1xuXHRcdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXG5cdFx0XHRtYXJnaW4tbGVmdDogLTEuMTI1ZW07XG5cdFx0XHRtYXJnaW4tYm90dG9tOiA0cHg7XG5cdFx0XHRwYWRkaW5nLWxlZnQ6IHNwYWNlKDQpO1xuXG5cdFx0XHRjb2xvcjogcGFsZXR0ZShzZWNvbmRhcnksIDYwMCk7XG5cdFx0XHRAaW5jbHVkZSBmcygxNSwgMjQpO1xuXHRcdFx0Zm9udC13ZWlnaHQ6IDYwMDtcblxuXHRcdFx0Jjo6YmVmb3JlIHtcblx0XHRcdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdFx0XHR0b3A6IC03cHg7XG5cdFx0XHRcdGxlZnQ6IDA7XG5cdFx0XHRcdGNvbnRlbnQ6IHVybCgvaW1nL2NoZWNrL2NoZWNrZWQuc3ZnKTtcblxuXHRcdFx0XHRAaW5jbHVkZSBmcygyNCk7XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG5cblx0JiA+IG9sOm5vdChbY2xhc3NdKSB7XG5cdFx0bGlzdC1zdHlsZTogbm9uZTtcblx0XHRjb3VudGVyLXJlc2V0OiBvbC1jb3VudGVyO1xuXG5cdFx0JiA+IGxpIHtcblx0XHRcdGNvdW50ZXItaW5jcmVtZW50OiBvbC1jb3VudGVyO1xuXHRcdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRcdFx0bWFyZ2luLWxlZnQ6IC0xLjEyNWVtO1xuXHRcdFx0cGFkZGluZy1sZWZ0OiAxLjhlbTtcblxuXHRcdFx0Jjo6YmVmb3JlIHtcblx0XHRcdFx0Y29udGVudDogY291bnRlcihvbC1jb3VudGVyKSBcIi4gXCI7XG5cdFx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRcdFx0dG9wOiAwO1xuXHRcdFx0XHRsZWZ0OiAwO1xuXHRcdFx0XHR3aWR0aDogMS4yNzVlbTtcblx0XHRcdFx0dGV4dC1hbGlnbjogcmlnaHQ7XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG59XG5cbi5zLXRleHQtLW9uLWRhcmsge1xuXHRjb2xvcjogd2hpdGU7XG5cblx0aDEsIGgyLCBoMywgaDQge1xuXHRcdGNvbG9yOiB3aGl0ZTtcblx0fVxufSIsIi8qKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gKiAgQ29sb3JcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbkB1c2UgXCJzYXNzOm1hdGhcIjtcblxuLyoqXG4gKiBIZXJlIHdlIHByaW50IG91dCBhbGwgb3VyIGhlbHBlciBjbGFzc2VzIGZvciBvdXIgZGVmaW5lZCBjb2xvcnNcbiAqIEJhc2VkIG9uIHRoZXNlIGFydGljbGVzOlxuICogLSBodHRwOi8vZXJza2luZWRlc2lnbi5jb20vYmxvZy9mcmllbmRsaWVyLWNvbG91ci1uYW1lcy1zYXNzLW1hcHMvXG4gKiAtIGh0dHBzOi8vYmxvZy5hdGVjaG1lZGlhLmNvbS9jc3MtZm9yLW11bHRpcGxlLXRoZW1lcy9cbiAqIE91dHB1dCBpcyBpbiB0aGUgZm9ybSBvZjpcblxuICAgLnUtY29sb3ItcHJpbWFyeSB7XG4gICAgICBjb2xvcjogI2JhZGE1NTtcbiAgIH1cblxuICAudS1iZy1uZXV0cmFsLS05MDAge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNkZWNhZmY7XG4gIH1cbiAqL1xuXG5AZWFjaCAkbGV2ZWwsICRwYWxldHRlIGluICRwYWxldHRlcyB7XG5cdEBlYWNoICR0eXBlLCAkY29sb3IgaW4gJHBhbGV0dGUge1xuXHRcdEBpZigkdHlwZSA9PSAnYmFzZScpe1xuXHRcdFx0LnUtY29sb3ItI3skbGV2ZWx9IHtcblx0XHRcdFx0Y29sb3I6ICN7JGNvbG9yfTtcblx0XHRcdH1cblx0XHRcdC51LWJnLSN7JGxldmVsfSB7XG5cdFx0XHRcdGJhY2tncm91bmQtY29sb3I6ICN7JGNvbG9yfTtcblx0XHRcdH1cblx0XHR9IEBlbHNlIHtcblx0XHRcdC51LWNvbG9yLSN7JGxldmVsfS0tI3skdHlwZX0ge1xuXHRcdFx0XHRjb2xvcjogI3skY29sb3J9O1xuXHRcdFx0fVxuXHRcdFx0LnUtYmctI3skbGV2ZWx9LS0jeyR0eXBlfSB7XG5cdFx0XHRcdGJhY2tncm91bmQtY29sb3I6ICN7JGNvbG9yfTtcblx0XHRcdH1cblx0XHR9XG5cdH1cbn1cblxuQGZvciAkaSBmcm9tIDEgdGhyb3VnaCAxMCB7XG5cdC51LW9wYWNpdHktI3skaX0ge1xuXHRcdG9wYWNpdHk6IG1hdGguZGl2KCRpLCAxMCk7XG5cdH1cbn0iLCIvKiogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICogIEZvbnRzXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG5cbi8qKlxuICogSGVyZSB3ZSBwcmludCBvdXQgYWxsIG91ciBoZWxwZXIgY2xhc3NlcyBmb3Igb3VyIGRlZmluZWQgJGZvbnQtc2l6ZXMgbWFwXG4gKiBPdXRwdXQgb2YgdGhlIGNsYXNzZXMgaW4gdGhlIHRoaXMgZm9ybTpcblxuICAgLnUtZnMtMTIge31cbiAgIC51LWZzLTI0IHt9XG4gICAuLi4gZXRjXG5cbiAqL1xuXG5AaWYgdmFyaWFibGUtZXhpc3RzKGZvbnQtc2l6ZXMpIHtcblx0QGVhY2ggJHZhbCwgJHNpemUgaW4gKDEyLDEzLDE0LDE2LDIwLDI0LDMyKSB7XG5cdFx0QGVhY2ggJHR5cGUsICRjb2xvciBpbiAkc2l6ZSB7XG5cdFx0XHQudS1mcy0jeyR2YWx9IHtcblx0XHRcdFx0QGluY2x1ZGUgZnMoJHZhbCk7XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG59XG5cblxuXG4vKipcbiAqIEhlcmUgd2UgcHJpbnQgb3V0IGFsbCBvdXIgaGVscGVyIGNsYXNzZXMgZm9yIG91ciBkZWZpbmVkICRmb250LXdlaWdodHMgbWFwXG4gKiBPdXRwdXQgb2YgdGhlIGNsYXNzZXMgaW4gdGhlIHRoaXMgZm9ybTpcblxuICAgLnUtZnctcmVndWxhciB7fVxuICAgLnUtZnctc2VtaUJvbGQge31cbiAgIC4uLiBldGNcblxuICovXG5cbkBpZiB2YXJpYWJsZS1leGlzdHMoZm9udC13ZWlnaHRzKSB7XG5cdEBlYWNoICRuYW1lLCAkc2l6ZSBpbiAkZm9udC13ZWlnaHRzIHtcblx0XHQudS1mdy0jeyRuYW1lfSB7XG5cdFx0XHRAaW5jbHVkZSBmdygkbmFtZSk7XG5cdFx0fVxuXHR9XG59XG5cbiIsIi51LXJlbGF0aXZlIHtcblx0cG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4udS1oaWRkZW4ge1xuXHRkaXNwbGF5OiBub25lICFpbXBvcnRhbnRcbn1cblxuLnUtcGxhY2Vob2xkZXItaW1hZ2Uge1xuXHRoZWlnaHQ6IDEwMCUgIWltcG9ydGFudDtcblx0d2lkdGg6IDEwMCUgIWltcG9ydGFudDtcblx0b2JqZWN0LWZpdDogY292ZXIgIWltcG9ydGFudDtcbn1cblxuLnUtdGV4dC1hbGlnbi1jZW50ZXIge1xuXHR0ZXh0LWFsaWduOiBjZW50ZXIhaW1wb3J0YW50O1xufVxuXG4ubm93cmFwIHtcblx0d2hpdGUtc3BhY2U6IG5vd3JhcDtcbn1cblxuLnUtdXNwIHtcblx0QGluY2x1ZGUgZnMoMTNweCk7XG5cdGxpc3Qtc3R5bGUtaW1hZ2U6IHVybChcIi9pbWcvY2hlY2svY2hlY2tlZC5zdmdcIik7XG5cdHBhZGRpbmctbGVmdDogMTJweDtcbn0iLCIvKlxuKiBJZiB5b3UgbmVlZCB0byBtYWtlIGEgcXVpY2sgZml4LCB5b3UgY2FuIGRvIGl0IGhlcmUuXG4qIExhdGVyIHdoZW4geW91IGhhdmUgdGhlIHRpbWUsIHlvdSBjYW4gbW92ZSB0aGUgZml4IGludG8gdGhlIGNvcnJlY3QgcGxhY2UgaW4gdGhlIHN0cnVjdHVyZVxuKi9cblxuXG5cbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi8vIE5vdGhpbmcgaGVyZSB5ZXQsIEdvb2Qgam9iISEiLCJAZm9yICRpIGZyb20gMCB0aHJvdWdoIDIwIHtcblx0Ly8gTWFyZ2luXG5cdC51LXNwYWNpbmctbXQjeyRpfSAgICAgeyBtYXJnaW4tdG9wOiBcdHNwYWNlKCRpKSAhaW1wb3J0YW50OyB9XG5cdC51LXNwYWNpbmctbXIjeyRpfSAgICAgeyBtYXJnaW4tcmlnaHQ6IFx0c3BhY2UoJGkpICFpbXBvcnRhbnQ7IH1cblx0LnUtc3BhY2luZy1tYiN7JGl9ICAgICB7IG1hcmdpbi1ib3R0b206IHNwYWNlKCRpKSAhaW1wb3J0YW50OyB9XG5cdC51LXNwYWNpbmctbWwjeyRpfSAgICAgeyBtYXJnaW4tbGVmdDogXHRzcGFjZSgkaSkgIWltcG9ydGFudDsgfVxuXG5cdC8vIFBhZGRpbmdcblx0LnUtc3BhY2luZy1wdCN7JGl9ICAgICB7IHBhZGRpbmctdG9wOiBcdHNwYWNlKCRpKSAhaW1wb3J0YW50OyB9XG5cdC51LXNwYWNpbmctcHIjeyRpfSAgICAgeyBwYWRkaW5nLXJpZ2h0OiBzcGFjZSgkaSkgIWltcG9ydGFudDsgfVxuXHQudS1zcGFjaW5nLXBiI3skaX0gICAgIHsgcGFkZGluZy1ib3R0b206c3BhY2UoJGkpICFpbXBvcnRhbnQ7IH1cblx0LnUtc3BhY2luZy1wbCN7JGl9ICAgICB7IHBhZGRpbmctbGVmdDogXHRzcGFjZSgkaSkgIWltcG9ydGFudDsgfVxufVxuXG4udS1zcGFjaW5nLW10MC01ICAgICB7IG1hcmdpbi10b3A6IFx0c3BhY2UoMC41KSAhaW1wb3J0YW50OyB9XG4udS1zcGFjaW5nLW1yMC01ICAgICB7IG1hcmdpbi1yaWdodDogXHRzcGFjZSgwLjUpICFpbXBvcnRhbnQ7IH1cbi51LXNwYWNpbmctbWIwLTUgICAgIHsgbWFyZ2luLWJvdHRvbTogc3BhY2UoMC41KSAhaW1wb3J0YW50OyB9XG4udS1zcGFjaW5nLW1sMC01ICAgICB7IG1hcmdpbi1sZWZ0OiBcdHNwYWNlKDAuNSkgIWltcG9ydGFudDsgfVxuXG4udS1zcGFjaW5nLXB2IHtcblx0QGluY2x1ZGUgdnNwYWNpbmcoXG5cdFx0J3BhZGRpbmctdG9wJyAxLFxuXHRcdCdwYWRkaW5nLWJvdHRvbScgMVxuXHQpXG59XG5cbkBpbmNsdWRlIG1xKGwpIHtcblx0LnUtc3BhY2luZy1wcjBcXEBsIHtcblx0XHRwYWRkaW5nLXJpZ2h0OiAwICFpbXBvcnRhbnQ7XG5cdH1cbn0iXSwibmFtZXMiOltdLCJzb3VyY2VSb290IjoiIn0=*/