@charset "UTF-8";
/**
Replace `$search` with `$replace` in `$string`
@param {String} $string - Initial string
@param {String} $search - Substring to replace
@param {String} $replace ('') - New value
@return {String} - Updated string
 */
/**
Example:
$font-scale : (
        base : 18px,
        step--0         : 1.125, // 18px
        step--u-1       : 1.500, // 24px
        step--u-2       : 2.000, // 32px
        step--u-3       : 2.688, // 43px
        step--u-4       : 3.562, // 57px
        step--d-1       : 0.875, // 14px
        step--d-2       : 0.625, // 10px
) !default;
 */
/**
fefs -> FramEeFontScaling
 */
/*
Learned from: https://utopia.fyi/blog/designing-with-a-fluid-space-palette
 */
/*
Learned from: https://utopia.fyi/blog/designing-with-a-fluid-space-palette
 */
/**
SITE COLORS
 */
/**
FONTS AND STYLES
 */
/**
BODY
 */
/**
HEADER
 */
/**
NAVBAR
 */
/**
GRID
 */
/**
TYPOGRAPHY
 */
/**
=== NAVIGATION ===
 */
/**
FOOTER
 */
/**
COPYRIGHT
 */
/**
=== MESSAGE BOX ===
 */
/**
BREADCRUMBS
 */
/**
CARD
 */
/**
FORM
 */
/**
LISTS
 */
/* Description list */
/**
=== PAGINATION ===
 */
/**
=== TABLE ===
 */
/**
=== LABEL === (not <label> in form)
 */
/**
=== HEADING ===
 */
/**
=== DIVIDER ===
 */
/**
SETTINGS
 */
/**
SITE COLORS
 */
/**
FONTS AND STYLES
 */
/**
BODY
 */
/**
HEADER
 */
/**
NAV
 */
/**
NAVBAR
 */
/**
GRID
 */
/**
TYPOGRAPHY
 */
/**
=== NAVIGATION ===
 */
/**
FOOTER
 */
/**
COPYRIGHT
 */
/**
=== MESSAGE BOX ===
 */
/**
BREADCRUMBS
 */
/**
CARD
 */
/**
FORM
 */
/**
LISTS
 */
/* Description list */
/**
=== PAGINATION ===
 */
/**
=== TABLE ===
 */
/**
=== LABEL === (not <label> in form)
 */
/**
=== HEADING ===
 */
/**
=== DIVIDER ===
 */
/**
SETTINGS
 */
/*
https://raw.githubusercontent.com/hankchizljaw/modern-css-reset/master/src/reset.css
 */
/* Box sizing rules */
*,
*::before,
*::after {
  box-sizing: border-box;
}

* {
  position: relative;
}

/* Remove default padding */
ul[class],
ol[class] {
  padding: 0;
}

/* Remove default margin */
body,
h1,
h2,
h3,
h4,
h5,
h6,
p,
ul[class],
ol[class],
figure,
blockquote,
dl,
dd {
  margin: 0;
}

/* Set core root defaults */
html {
  scroll-behavior: smooth;
  overflow-x: hidden;
}

/* Set core body defaults */
body {
  min-height: 100vh;
  text-rendering: optimizeSpeed;
  line-height: 1.5;
  overflow-x: hidden;
}

/* Remove list styles on ul, ol elements with a class attribute */
ul[class],
ol[class] {
  list-style: none;
}

/* A elements that don't have a class get default styles */
a:not([class]) {
  -webkit-text-decoration-skip: ink;
          text-decoration-skip-ink: auto;
}

/* Make images easier to work with */
img,
picture {
  max-width: 100%;
  display: block;
}

/* Natural flow and rhythm in articles by default */
article > * + * {
  margin-top: 1em;
}

/* Inherit fonts for inputs and buttons */
input,
button,
textarea,
select {
  font: inherit;
}

/* Blur images when they have no alt attribute */
img:not([alt]), img[alt=""] {
  filter: blur(10px);
}
img.fancybox__image, img.fancybox-image {
  filter: unset;
}

/* Remove all animations and transitions for people that prefer not to see them */
@media (prefers-reduced-motion: reduce) {
  * {
    -webkit-animation-duration: 0.01ms !important;
            animation-duration: 0.01ms !important;
    -webkit-animation-iteration-count: 1 !important;
            animation-iteration-count: 1 !important;
    transition-duration: 0.01ms !important;
    scroll-behavior: auto !important;
  }
}
/**
example:
    $spacing-map : (
        sm--u-1 : (37px,2.643),
        sm--0   : (23px,1.643),
        sm--d-1 : (14px,1),
        sm--d-2 : (9px,0.643),
        sm--d-3 : (6px,0.429),
        sm--d-4 : (4px,0.286),
    );
 */
/**
Inject page specific mixins
 */
:root {
  --fesp-3xs: clamp(0.21875rem,calc(0.2008928571rem + 0.0892857143vw), 0.28125rem );
  --fesp-2xs: clamp(0.4375rem,calc(0.4017857143rem + 0.1785714286vw), 0.5625rem );
  --fesp-xs: clamp(0.65625rem,calc(0.6026785714rem + 0.2678571429vw), 0.84375rem );
  --fesp-s: clamp(0.875rem,calc(0.8035714286rem + 0.3571428571vw), 1.125rem );
  --fesp-m: clamp(1.3125rem,calc(1.2053571429rem + 0.5357142857vw), 1.6875rem );
  --fesp-l: clamp(1.75rem,calc(1.6071428571rem + 0.7142857143vw), 2.25rem );
  --fesp-xl: clamp(2.625rem,calc(2.4107142857rem + 1.0714285714vw), 3.375rem );
  --fesp-2xl: clamp(3.5rem,calc(3.2142857143rem + 1.4285714286vw), 4.5rem );
  --fesp-3xl: clamp(5.25rem,calc(4.8214285714rem + 2.1428571429vw), 6.75rem );
  --fesp-4xl: clamp(7rem,calc(6.4285714286rem + 2.8571428571vw), 9rem );
  --fesp-5xl: clamp(8.75rem,calc(8.0357142857rem + 3.5714285714vw), 11.25rem );
  --fesp-3xs-2xs: clamp(0.21875rem,calc(0.1205357143rem + 0.4910714286vw), 0.5625rem );
  --fesp-2xs-xs: clamp(0.4375rem,calc(0.3214285714rem + 0.5803571429vw), 0.84375rem );
  --fesp-xs-s: clamp(0.65625rem,calc(0.5223214286rem + 0.6696428571vw), 1.125rem );
  --fesp-s-m: clamp(0.875rem,calc(0.6428571429rem + 1.1607142857vw), 1.6875rem );
  --fesp-m-l: clamp(1.3125rem,calc(1.0446428571rem + 1.3392857143vw), 2.25rem );
  --fesp-l-xl: clamp(1.75rem,calc(1.2857142857rem + 2.3214285714vw), 3.375rem );
  --fesp-xl-2xl: clamp(2.625rem,calc(2.0892857143rem + 2.6785714286vw), 4.5rem );
  --fesp-2xl-3xl: clamp(3.5rem,calc(2.5714285714rem + 4.6428571429vw), 6.75rem );
  --fesp-3xl-4xl: clamp(5.25rem,calc(4.1785714286rem + 5.3571428571vw), 9rem );
  --fesp-4xl-5xl: clamp(7rem,calc(5.7857142857rem + 6.0714285714vw), 11.25rem );
  --fesp-s-xl: clamp(0.875rem,calc(0.1607142857rem + 3.5714285714vw), 3.375rem );
  --fesp-m-2xl: clamp(1.3125rem,calc(0.4017857143rem + 4.5535714286vw), 4.5rem );
}

html {
  --font-scale__base: 16px;
  font-size: var(--font-scale__base, 16px);
}

body {
  font-family: "Raleway", sans-serif;
  font-style: normal;
  font-weight: normal;
}

p,
.paragraph {
  font-size: calc(var(--font-scale__base) * 1);
  line-height: 1.5;
  font-family: "Raleway", sans-serif;
  font-style: normal;
  font-weight: 400;
  color: #262626;
}
p.small,
.paragraph.small {
  font-size: calc(calc(var(--font-scale__base) * 1) * 0.8);
}
p a,
p a:visited,
.paragraph a,
.paragraph a:visited {
  color: #262626;
}

a:not(.fe-button) {
  outline: none;
  text-decoration: none;
  color: #262626;
}
a:not(.fe-button):link {
  color: #262626;
}
a:not(.fe-button):visited {
  color: #262626;
}
a:not(.fe-button):focus {
  color: #edece6;
}
a:not(.fe-button):hover {
  color: #edece6;
}
a:not(.fe-button):active {
  color: #262626;
}

address {
  font-style: normal;
}

h1, h2, h3, h4, h5, h6,
.h1, .h2, .h3, .h4, .h5, .h6 {
  font-family: "Cinzel", sans-serif;
}

@media screen and (min-width: 320px) {
  :root {
    --font-scale__base: 14px;
  }
  /**
  Reusable
  */
  html, body {
    font-size: calc(var(--font-scale__base) * 1);
    line-height: 1.5;
  }
  p:not(p:last-of-type, ul:last-of-type, ol:last-of-type, blockquote:last-of-type, pre:last-of-type, .alert:last-of-type, .note:last-of-type, .box:last-of-type, .footnotes:last-of-type), ul:not(p:last-of-type, ul:last-of-type, ol:last-of-type, blockquote:last-of-type, pre:last-of-type, .alert:last-of-type, .note:last-of-type, .box:last-of-type, .footnotes:last-of-type), ol:not(p:last-of-type, ul:last-of-type, ol:last-of-type, blockquote:last-of-type, pre:last-of-type, .alert:last-of-type, .note:last-of-type, .box:last-of-type, .footnotes:last-of-type), blockquote:not(p:last-of-type, ul:last-of-type, ol:last-of-type, blockquote:last-of-type, pre:last-of-type, .alert:last-of-type, .note:last-of-type, .box:last-of-type, .footnotes:last-of-type), pre:not(p:last-of-type, ul:last-of-type, ol:last-of-type, blockquote:last-of-type, pre:last-of-type, .alert:last-of-type, .note:last-of-type, .box:last-of-type, .footnotes:last-of-type), .alert:not(p:last-of-type, ul:last-of-type, ol:last-of-type, blockquote:last-of-type, pre:last-of-type, .alert:last-of-type, .note:last-of-type, .box:last-of-type, .footnotes:last-of-type), .note:not(p:last-of-type, ul:last-of-type, ol:last-of-type, blockquote:last-of-type, pre:last-of-type, .alert:last-of-type, .note:last-of-type, .box:last-of-type, .footnotes:last-of-type), .box:not(p:last-of-type, ul:last-of-type, ol:last-of-type, blockquote:last-of-type, pre:last-of-type, .alert:last-of-type, .note:last-of-type, .box:last-of-type, .footnotes:last-of-type), .footnotes:not(p:last-of-type, ul:last-of-type, ol:last-of-type, blockquote:last-of-type, pre:last-of-type, .alert:last-of-type, .note:last-of-type, .box:last-of-type, .footnotes:last-of-type) {
    margin-bottom: var(--space-base);
  }
  h1, .h1 {
    font-size: calc(var(--font-scale__base) * 3.157);
    line-height: 1.25;
  }
  h2, .h2 {
    font-size: calc(var(--font-scale__base) * 2.369);
    line-height: 1.25;
    font-weight: 400;
  }
  h3, .h3 {
    font-size: calc(var(--font-scale__base) * 1.777);
    line-height: 1.25;
    font-weight: 400;
  }
  h4, .h4 {
    font-size: calc(var(--font-scale__base) * 1.333);
    line-height: 1.25;
    font-weight: 400;
  }
  h5, .h5 {
    font-size: calc(var(--font-scale__base) * 1.333);
    line-height: 1.25;
    font-weight: 400;
  }
  h6, .h6 {
    font-size: calc(var(--font-scale__base) * 1.333);
    line-height: 1.25;
  }
}
@media screen and (min-width: 768px) {
  :root {
    --font-scale__base: 16px;
  }
}
@media screen and (min-width: 1680px) {
  :root {
    --font-scale__base: 18px;
  }
}
/* ========================================================================
   Component: Breadcrumbs
 ========================================================================== */
/*
 * Reset list
 */
.fe-breadcrumb {
  padding: 0;
  list-style: none;
  display: flex;
  align-items: center;
}

.fe-breadcrumb > * {
  display: contents;
}

/* Items
 ========================================================================== */
.fe-breadcrumb > * > * {
  font-size: calc(20px * 0.8);
  color: #999;
  line-height: 1.2;
}

/* Hover */
.fe-breadcrumb > * > :hover {
  color: #1a1a1a;
  text-decoration: none;
}

/* Disabled */
/* Active */
.fe-breadcrumb > :last-child > span,
.fe-breadcrumb > :last-child > a:not([href]) {
  color: #1a1a1a;
}

/*
 * Divider
 * `nth-child` makes it also work without JS if it's only one row
 */
.fe-breadcrumb > :nth-child(n+2):not(.fe-first-column)::before {
  content: "→";
  display: inline-flex;
  align-items: baseline;
  margin: 0 20px;
  font-size: calc(20px * 0.8);
  line-height: calc(calc(20px * 0.8) / 2);
  color: #999;
}

/*
 * Custom Svg Divider
 */
/* reset default divider */
.fe-breadcrumb.fe-breadcrumb-custom > :nth-child(n+2):not(.fe-first-column)::before {
  display: none;
  content: none;
}

.fe-breadcrumb.fe-breadcrumb-custom svg {
  margin: 0 20px;
  width: 15px;
  height: auto;
  -o-object-fit: contain;
     object-fit: contain;
}

/* hide last svg (if there is accidentally) */
.fe-breadcrumb > *:last-child svg {
  display: none;
}

/* ========================================================================
   Component: Button
 ========================================================================== */
.fe-button {
  margin: 0;
  border: none;
  overflow: visible;
  font: inherit;
  color: inherit;
  text-transform: none;
  -webkit-appearance: none;
  border-radius: 0;
  display: inline-block;
  box-sizing: border-box;
  padding: 0 24px;
  vertical-align: middle;
  font-size: calc(var(--font-scale__base) * 1);
  line-height: 115%;
  text-align: center;
  text-decoration: none;
  transition: 0.2s all;
  padding-top: var(--fesp-2xs);
  padding-bottom: var(--fesp-2xs);
}

.fe-button:not(:disabled) {
  cursor: pointer;
}

/*
 * Remove the inner border and padding in Firefox.
 */
.fe-button::-moz-focus-inner {
  border: 0;
  padding: 0;
}

/* Hover */
.fe-button:hover {
  text-decoration: none;
}

/* Style modifiers
 ========================================================================== */
.fe-button-secondary-bordered, .fe-button-primary-bordered, .fe-button-default-bordered {
  border: 1px solid #666;
}
.fe-button-secondary-bordered:hover, .fe-button-primary-bordered:hover, .fe-button-default-bordered:hover {
  border-color: #666;
}

/*
 * Default
 */
.fe-button-default {
  background-color: #f8f8f8;
  color: #666;
}
.fe-button-default-shadowed {
  box-shadow: rgba(102, 102, 102, 0.2) 0 7px 29px 0;
}

/* Hover */
.fe-button-default:hover {
  background-color: #ebebeb;
  color: #666;
}

/* OnClick + Active */
.fe-button-default:active,
.fe-button-default.fe-active {
  background-color: #dfdfdf;
  color: #666;
}

/*
 * Primary
 */
.fe-button-primary {
  background-color: #262626;
  color: #F7F6F3;
}
.fe-button-primary-bordered {
  border-color: #666;
}
.fe-button-primary-bordered:hover {
  border-color: #666;
}
.fe-button-primary-shadowed {
  box-shadow: rgba(38, 38, 38, 0.2) 0 7px 29px 0;
}

/* Hover */
.fe-button-primary:hover {
  background-color: #edece6;
  color: #262626;
}

/* OnClick + Active */
.fe-button-primary:active,
.fe-button-primary.fe-active {
  background-color: #F7F6F3;
  color: #262626;
}

/*
 * Secondary
 */
.fe-button-secondary {
  background-color: #888888;
  color: #262626;
}
.fe-button-secondary-bordered {
  border-color: #666;
}
.fe-button-secondary-bordered:hover {
  border-color: #666;
}
.fe-button-secondary-shadowed {
  box-shadow: rgba(136, 136, 136, 0.2) 0 7px 29px 0;
}

/* Hover */
.fe-button-secondary:hover {
  background-color: #7b7b7b;
  color: #262626;
}

/* OnClick + Active */
.fe-button-secondary:active,
.fe-button-secondary.fe-active {
  background-color: #6f6f6f;
  color: #262626;
}

/*
 * With image
 */
.fe-button-img {
  display: inline-grid;
  grid-template-columns: auto auto;
  grid-column-gap: 8px;
  align-items: center;
}
.fe-button-img svg {
  width: 16px;
  height: 16px;
  -o-object-fit: contain;
     object-fit: contain;
  -o-object-position: center;
     object-position: center;
}

/*
 * Underline
 */
.fe-button-underline::after {
  content: "";
  position: absolute;
  left: 0;
  bottom: -2px;
  height: 2px;
  width: 75%;
  background-color: #262626;
  transition: 0.25s all;
}

/* Hover */
.fe-button-underline:hover::after {
  width: calc(75% * 1.17);
}

/*
 * Danger
 */
.fe-button-danger {
  background-color: #f0506e;
  color: #fff;
}
.fe-button-danger-shadowed {
  box-shadow: rgba(240, 80, 110, 0.2) 0 7px 29px 0;
}

/* Hover */
.fe-button-danger:hover {
  background-color: #ee395b;
  color: #fff;
}

/* OnClick + Active */
.fe-button-danger:active,
.fe-button-danger.fe-active {
  background-color: #ec2147;
  color: #fff;
}

/*
 * Disabled
 * The same for all style modifiers
 */
.fe-button-default:disabled,
.fe-button-primary:disabled,
.fe-button-secondary:disabled,
.fe-button-danger:disabled {
  background-color: #f8f8f8;
  color: #999;
}

/* Size modifiers
 ========================================================================== */
.fe-button-small {
  padding: 0 15px;
  line-height: 115%;
  font-size: calc(var(--font-scale__base) * 1);
}

.fe-button-large {
  padding: 0 40px;
  line-height: 115%;
  font-size: calc(var(--font-scale__base) * 1);
}

/* Text modifiers
 ========================================================================== */
.fe-button-text {
  padding: 0;
  line-height: 1.5;
  background: none;
  color: #666;
}

/* Hover */
.fe-button-text:hover {
  color: #999;
}

/* Disabled */
.fe-button-text:disabled {
  color: #999;
}

.fe-button-link {
  padding: 0;
  line-height: 1.5;
  background: none;
  color: #666;
}

/* Hover */
.fe-button-link:hover {
  color: #999;
  text-decoration: none;
}

/* Disabled */
.fe-button-link:disabled {
  color: #999;
  text-decoration: none;
}

/* ========================================================================
   Component: Card
 ========================================================================== */
.fe-card {
  position: relative;
  box-sizing: border-box;
  transition: 0.25s all;
}

/* Sections
 ========================================================================== */
.fe-card-body {
  display: flow-root;
  padding: 30px 30px;
}

.fe-card-header {
  display: flow-root;
  padding: 15px 30px;
}

.fe-card-footer {
  display: flow-root;
  padding: 15px 30px;
}

/* Desktop and bigger */
@media (min-width: 1366px) {
  .fe-card-body {
    padding: 40px 40px;
  }
  .fe-card-header {
    padding: 20px 40px;
  }
  .fe-card-footer {
    padding: 20px 40px;
  }
}
/*
 * Remove margin from the last-child
 */
.fe-card-body > :last-child,
.fe-card-header > :last-child,
.fe-card-footer > :last-child {
  margin-bottom: 0;
}

/* Media
 ========================================================================== */
/*
 * Reserved alignment modifier to style the media element, e.g. with `border-radius`
 * Implemented by the theme
 */
/* Title
 ========================================================================== */
.fe-card-title {
  font-size: calc(20px * 1.25);
  line-height: 1.4;
}

/* Hover modifier
 ========================================================================== */
.fe-card-hover:not(.fe-card-default):not(.fe-card-primary):not(.fe-card-secondary):hover {
  background-color: #f8f8f8;
  box-shadow: 0 14px 25px rgba(0, 0, 0, 0.16);
}

/* Style modifiers
 ========================================================================== */
/*
 * Default
 * Note: Header and Footer are only implemented for the default style
 */
.fe-card-default {
  background-color: #f8f8f8;
  color: #1a1a1a;
  box-shadow: 0 5px 15px rgba(0, 0, 0, 0.08);
}

.fe-card-default .fe-card-title {
  color: #666;
}

.fe-card-default.fe-card-hover:hover {
  background-color: #ebebeb;
  box-shadow: 0 14px 25px rgba(0, 0, 0, 0.16);
}

.fe-card-default .fe-card-header {
  border-bottom: 1px solid #000000;
}

.fe-card-default .fe-card-footer {
  border-top: 1px solid #000000;
}

/*
 * Primary
 */
.fe-card-primary {
  background-color: #00988C;
  color: #fff;
  box-shadow: 0 5px 15px rgba(0, 0, 0, 0.08);
}

.fe-card-primary .fe-card-title {
  color: #fff;
}

.fe-card-primary.fe-card-hover:hover {
  background-color: #007f75;
  box-shadow: 0 14px 25px rgba(0, 0, 0, 0.16);
}

/*
 * Secondary
 */
.fe-card-secondary {
  background-color: #C3922E;
  color: #fff;
  box-shadow: 0 5px 15px rgba(0, 0, 0, 0.08);
}

.fe-card-secondary .fe-card-title {
  color: #fff;
}

.fe-card-secondary.fe-card-hover:hover {
  background-color: #ae8329;
  box-shadow: 0 14px 25px rgba(0, 0, 0, 0.16);
}

/* Size modifier
 ========================================================================== */
/*
 * Small
 */
.fe-card-small.fe-card-body,
.fe-card-small .fe-card-body {
  padding: 20px 20px;
}

.fe-card-small .fe-card-header {
  padding: 13px 20px;
}

.fe-card-small .fe-card-footer {
  padding: 13px 20px;
}

/*
 * Large
 */
/* Desktop and bigger */
@media (min-width: 1366px) {
  .fe-card-large.fe-card-body,
.fe-card-large .fe-card-body {
    padding: 70px 70px;
  }
  .fe-card-large .fe-card-header {
    padding: 35px 70px;
  }
  .fe-card-large .fe-card-footer {
    padding: 35px 70px;
  }
}
/* ========================================================================
   Component: Description list
 ========================================================================== */
/*
 * Term
 */
.fe-description-list > dt {
  color: #666;
  font-size: calc(20px * 0.8);
  font-weight: 400;
  text-transform: uppercase;
}

.fe-description-list > dt:nth-child(n+2) {
  margin-top: 20px;
}

/*
 * Description
 */
/* Style modifier
 ========================================================================== */
/*
 * Line
 */
.fe-description-list-divider > dt:nth-child(n+2) {
  margin-top: 20px;
  padding-top: 20px;
  border-top: 1px solid #000000;
}

/* ========================================================================
   Component: Divider
 ========================================================================== */
/*
 * 1. Reset default `hr`
 * 2. Set margin if a `div` is used for semantical reason
 */
[class*=fe-divider] {
  border: none;
  margin-bottom: 20px;
}

/* Add margin if adjacent element */
* + [class*=fe-divider] {
  margin-top: 20px;
}

/* Icon
 ========================================================================== */
.fe-divider-icon {
  position: relative;
  height: 20px;
  background-image: url("data:image/svg+xml;charset=UTF-8,%3Csvg%20width%3D%2220%22%20height%3D%2220%22%20viewBox%3D%220%200%2020%2020%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%20%20%20%20%3Ccircle%20fill%3D%22none%22%20stroke%3D%22%23000000%22%20stroke-width%3D%222%22%20cx%3D%2210%22%20cy%3D%2210%22%20r%3D%227%22%20%2F%3E%0A%3C%2Fsvg%3E%0A");
  background-repeat: no-repeat;
  background-position: 50% 50%;
  background-size: 20px;
}

.fe-divider-icon::before,
.fe-divider-icon::after {
  content: "";
  position: absolute;
  top: 50%;
  max-width: calc(50% - (50px / 2));
  border-bottom: 1px solid #000000;
}

.fe-divider-icon::before {
  right: calc(50% + (50px / 2));
  width: 100%;
}

.fe-divider-icon::after {
  left: calc(50% + (50px / 2));
  width: 100%;
}

/* Small
 ========================================================================== */
/*
 * 1. Fix height because of `inline-block`
 * 2. Using ::after and inline-block to make `text-align` work
 */
.fe-divider-small {
  line-height: 0;
}

.fe-divider-small::after {
  content: "";
  display: inline-block;
  width: 100px;
  max-width: 100%;
  border-top: 1px solid #000000;
  vertical-align: top;
}

/* Vertical
 ========================================================================== */
.fe-divider-vertical {
  width: 1px;
  height: 100px;
  margin-left: auto;
  margin-right: auto;
  border-left: 1px solid #000000;
}

.fe-input-control input, .fe-input-control textarea {
  font-size: calc(var(--font-scale__base) * 1);
}

fieldset {
  display: flex;
  flex-direction: column;
  row-gap: var(--fesp-s);
  border: unset;
  margin: unset;
  padding: unset;
  -webkit-margin-start: unset;
          margin-inline-start: unset;
  -webkit-margin-end: unset;
          margin-inline-end: unset;
  -webkit-padding-before: unset;
          padding-block-start: unset;
  -webkit-padding-after: unset;
          padding-block-end: unset;
  -webkit-padding-start: unset;
          padding-inline-start: unset;
  -webkit-padding-end: unset;
          padding-inline-end: unset;
}

/* ========================================================================
   Component: Form
 ========================================================================== */
.fe-input,
.fe-select,
.fe-textarea,
.fe-radio,
.fe-checkbox {
  box-sizing: border-box;
  margin: 0;
  border-radius: 0;
  font: inherit;
}

/*
 * Show the overflow in Edge.
 */
.fe-input {
  overflow: visible;
}

/*
 * Remove the inheritance of text transform in Firefox.
 */
.fe-select {
  text-transform: none;
}

/*
 * 1. Change font properties to `inherit` in all browsers
 * 2. Don't inherit the `font-weight` and use `bold` instead.
 * NOTE: Both declarations don't work in Chrome, Safari and Opera.
 */
.fe-select optgroup {
  font: inherit;
  font-weight: bold;
}

/*
 * Remove the default vertical scrollbar in IE 10+.
 */
.fe-textarea {
  overflow: auto;
}

/*
 * Remove the inner padding and cancel buttons in Chrome on OS X and Safari on OS X.
 */
.fe-input[type=search]::-webkit-search-cancel-button,
.fe-input[type=search]::-webkit-search-decoration {
  -webkit-appearance: none;
}

/*
 * Correct the cursor style of increment and decrement buttons in Chrome.
 */
.fe-input[type=number]::-webkit-inner-spin-button,
.fe-input[type=number]::-webkit-outer-spin-button {
  height: auto;
}

/*
 * Removes placeholder transparency in Firefox.
 */
.fe-input::-moz-placeholder,
.fe-textarea::-moz-placeholder {
  opacity: 1;
}

/*
 * Improves consistency of cursor style for clickable elements
 */
.fe-radio:not(:disabled),
.fe-checkbox:not(:disabled) {
  cursor: pointer;
}

/*
 * Define consistent border, margin, and padding.
 */
.fe-fieldset {
  border: none;
  margin: 0;
  padding: 0;
}

/* Input, select and textarea
 * Allowed: `text`, `password`, `datetime`, `datetime-local`, `date`,  `month`,
            `time`, `week`, `number`, `email`, `url`, `search`, `tel`, `color`
 * Disallowed: `range`, `radio`, `checkbox`, `file`, `submit`, `reset` and `image`
 ========================================================================== */
/*
 * Remove default style in iOS.
 */
.fe-input,
.fe-textarea {
  -webkit-appearance: none;
}

.fe-textarea {
  resize: vertical;
  min-height: 54px;
}

.fe-input,
.fe-select,
.fe-textarea {
  max-width: 100%;
  width: 100%;
  padding: 0 0;
  background: #f8f8f8;
  color: #262626;
  font-size: 20px;
  font-weight: 400;
  font-family: "Raleway", sans-serif;
  margin-top: var(--fesp-s);
  border: 0 solid #ccc;
  transition: 0.2s ease-in-out;
  transition-property: color, background-color, border;
}

/*
 * Single-line
 * 1. Allow any element to look like an `input` or `select` element
 * 2. Make sure line-height is not larger than height
 *    Also needed to center the text vertically
 */
.fe-input,
.fe-select:not([multiple]):not([size]) {
  height: 27px;
  vertical-align: middle;
  display: inline-block;
}

/* 2 */
.fe-input:not(input),
.fe-select:not(select) {
  line-height: 27px;
}

/*
 * Multi-line
 */
.fe-select[multiple],
.fe-select[size],
.fe-textarea {
  padding-top: 0;
  padding-bottom: 0;
  vertical-align: top;
}

.fe-select[multiple],
.fe-select[size] {
  resize: vertical;
}

/* Focus */
.fe-input:focus,
.fe-select:focus,
.fe-textarea:focus {
  outline: none;
  background-color: #ebebeb;
  color: #262626;
  border-color: #ccc;
}

/* Disabled */
.fe-input:disabled,
.fe-select:disabled,
.fe-textarea:disabled {
  background-color: #f8f8f8;
  color: #999;
  border-color: #1a1a1a;
}

/*
 * Placeholder
 */

.fe-input::-moz-placeholder {
  color: #888888;
  font-size: calc(var(--font-scale__base) * 1);
  font-weight: 300;
  font-family: "Raleway", sans-serif;
}

.fe-input::placeholder {
  color: #888888;
  font-size: calc(var(--font-scale__base) * 1);
  font-weight: 300;
  font-family: "Raleway", sans-serif;
}

.fe-textarea::-moz-placeholder {
  color: #888888;
  font-size: calc(var(--font-scale__base) * 1);
  font-weight: 300;
  font-family: "Raleway", sans-serif;
}

.fe-textarea::placeholder {
  color: #888888;
  font-size: calc(var(--font-scale__base) * 1);
  font-weight: 300;
  font-family: "Raleway", sans-serif;
}

/* Style modifier (`fe-input`, `fe-select` and `fe-textarea`)
 ========================================================================== */
/*
 * Error
 */
.fe-form-danger,
.fe-form-danger:focus {
  color: #f0506e;
  border-color: #f0506e;
}

/*
 * Success
 */
.fe-form-success,
.fe-form-success:focus {
  color: #16c785;
  border-color: #16c785;
}

/*
 * Blank
 */
.fe-form-blank {
  background: none;
}

/* Select
 ========================================================================== */
.fe-select:not([multiple]):not([size]) {
  -webkit-appearance: none;
  -moz-appearance: none;
  padding-right: 20px;
  background-image: url("data:image/svg+xml;charset=UTF-8,%3Csvg%20width%3D%2224%22%20height%3D%2216%22%20viewBox%3D%220%200%2024%2016%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%20%20%20%20%3Cpolygon%20fill%3D%22%231a1a1a%22%20points%3D%2212%201%209%206%2015%206%22%20%2F%3E%0A%20%20%20%20%3Cpolygon%20fill%3D%22%231a1a1a%22%20points%3D%2212%2013%209%208%2015%208%22%20%2F%3E%0A%3C%2Fsvg%3E%0A");
  background-repeat: no-repeat;
  background-position: 100% 50%;
}

.fe-select:not([multiple]):not([size])::-ms-expand {
  display: none;
}

.fe-select:not([multiple]):not([size]) option {
  color: #1a1a1a;
}

/*
 * Disabled
 */
.fe-select:not([multiple]):not([size]):disabled {
  background-image: url("data:image/svg+xml;charset=UTF-8,%3Csvg%20width%3D%2224%22%20height%3D%2216%22%20viewBox%3D%220%200%2024%2016%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%20%20%20%20%3Cpolygon%20fill%3D%22%23999%22%20points%3D%2212%201%209%206%2015%206%22%20%2F%3E%0A%20%20%20%20%3Cpolygon%20fill%3D%22%23999%22%20points%3D%2212%2013%209%208%2015%208%22%20%2F%3E%0A%3C%2Fsvg%3E%0A");
}

/* Datalist
 ========================================================================== */
.fe-input[list] {
  padding-right: 20px;
  background-repeat: no-repeat;
  background-position: 100% 50%;
}

.fe-input[list]:hover,
.fe-input[list]:focus {
  background-image: url("data:image/svg+xml;charset=UTF-8,%3Csvg%20width%3D%2224%22%20height%3D%2216%22%20viewBox%3D%220%200%2024%2016%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%20%20%20%20%3Cpolygon%20fill%3D%22%231a1a1a%22%20points%3D%2212%2012%208%206%2016%206%22%20%2F%3E%0A%3C%2Fsvg%3E%0A");
}

.fe-input[list]::-webkit-calendar-picker-indicator {
  display: none !important;
}

/* Radio and checkbox
 * Note: Does not work in IE11
 ========================================================================== */
.fe-radio,
.fe-checkbox {
  display: inline-block;
  height: 16px;
  width: 16px;
  overflow: hidden;
  margin-top: -4px;
  vertical-align: middle;
  -webkit-appearance: none;
  -moz-appearance: none;
  background-color: #ebebeb;
  background-repeat: no-repeat;
  background-position: 50% 50%;
  border: 1px solid #010101;
  transition: 0.2s ease-in-out;
  transition-property: background-color, border;
}

.fe-radio {
  border-radius: 50%;
}

/* Focus */
.fe-radio:focus,
.fe-checkbox:focus {
  background-color: #dfdfdf;
  outline: none;
  border-color: #00988C;
}

/*
 * Checked
 */
.fe-radio:checked,
.fe-checkbox:checked,
.fe-checkbox:indeterminate {
  background-color: #00988C;
  border-color: transparent;
}

/* Focus */
.fe-radio:checked:focus,
.fe-checkbox:checked:focus,
.fe-checkbox:indeterminate:focus {
  background-color: #00655d;
}

/*
 * Icons
 */
.fe-radio:checked {
  background-image: url("data:image/svg+xml;charset=UTF-8,%3Csvg%20width%3D%2216%22%20height%3D%2216%22%20viewBox%3D%220%200%2016%2016%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%20%20%20%20%3Ccircle%20fill%3D%22%23fff%22%20cx%3D%228%22%20cy%3D%228%22%20r%3D%222%22%20%2F%3E%0A%3C%2Fsvg%3E");
}

.fe-checkbox:checked {
  background-image: url("data:image/svg+xml;charset=UTF-8,%3Csvg%20width%3D%2214%22%20height%3D%2211%22%20viewBox%3D%220%200%2014%2011%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%20%20%20%20%3Cpolygon%20fill%3D%22%23fff%22%20points%3D%2212%201%205%207.5%202%205%201%205.5%205%2010%2013%201.5%22%20%2F%3E%0A%3C%2Fsvg%3E%0A");
}

.fe-checkbox:indeterminate {
  background-image: url("data:image/svg+xml;charset=UTF-8,%3Csvg%20width%3D%2216%22%20height%3D%2216%22%20viewBox%3D%220%200%2016%2016%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%20%20%20%20%3Crect%20fill%3D%22%23fff%22%20x%3D%223%22%20y%3D%228%22%20width%3D%2210%22%20height%3D%221%22%20%2F%3E%0A%3C%2Fsvg%3E");
}

/*
 * Disabled
 */
.fe-radio:disabled,
.fe-checkbox:disabled {
  background-color: #f8f8f8;
  border-color: #1a1a1a;
}

.fe-radio:disabled:checked {
  background-image: url("data:image/svg+xml;charset=UTF-8,%3Csvg%20width%3D%2216%22%20height%3D%2216%22%20viewBox%3D%220%200%2016%2016%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%20%20%20%20%3Ccircle%20fill%3D%22%23999%22%20cx%3D%228%22%20cy%3D%228%22%20r%3D%222%22%20%2F%3E%0A%3C%2Fsvg%3E");
}

.fe-checkbox:disabled:checked {
  background-image: url("data:image/svg+xml;charset=UTF-8,%3Csvg%20width%3D%2214%22%20height%3D%2211%22%20viewBox%3D%220%200%2014%2011%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%20%20%20%20%3Cpolygon%20fill%3D%22%23999%22%20points%3D%2212%201%205%207.5%202%205%201%205.5%205%2010%2013%201.5%22%20%2F%3E%0A%3C%2Fsvg%3E%0A");
}

.fe-checkbox:disabled:indeterminate {
  background-image: url("data:image/svg+xml;charset=UTF-8,%3Csvg%20width%3D%2216%22%20height%3D%2216%22%20viewBox%3D%220%200%2016%2016%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%20%20%20%20%3Crect%20fill%3D%22%23999%22%20x%3D%223%22%20y%3D%228%22%20width%3D%2210%22%20height%3D%221%22%20%2F%3E%0A%3C%2Fsvg%3E");
}

/* Label
 ========================================================================== */
.fe-form-label {
  font-size: calc(var(--font-scale__base) * 0.75);
  font-weight: 250;
  line-height: 115%;
  color: #262626;
  display: block;
  margin-top: var(--fesp-s);
}
.fe-form-label + .fe-input,
.fe-form-label + .fe-select,
.fe-form-label + .fe-textarea {
  margin-top: 0;
}

/* TODO
/* Icons
 ========================================================================== */
.fe-form-icon {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  width: 27px;
  display: inline-flex;
  justify-content: center;
  align-items: center;
  color: #999;
}

/*
 * Required for `a`.
 */
.fe-form-icon:hover {
  color: #1a1a1a;
}

/*
 * Make `input` element clickable through icon, e.g. if it's a `span`
 */
.fe-form-icon:not(a):not(button):not(input) {
  pointer-events: none;
}

/*
 * Input padding
 */
.fe-form-icon:not(.fe-form-icon-flip) ~ .fe-input {
  padding-left: 27px !important;
}

/*
 * Position modifier
 */
.fe-form-icon-flip {
  right: 0;
  left: auto;
}

.fe-form-icon-flip ~ .fe-input {
  padding-right: 27px !important;
}

/* ========================================================================
   Component: Heading
 ========================================================================== */
.fe-heading-small {
  font-size: 2.6rem;
  line-height: 1.2;
}

.fe-heading-medium {
  font-size: 2.8875rem;
  line-height: 1.1;
}

.fe-heading-large {
  font-size: 3.4rem;
  line-height: 1.1;
}

.fe-heading-xlarge {
  font-size: 4rem;
  line-height: 1;
}

.fe-heading-2xlarge {
  font-size: 6rem;
  line-height: 1;
}

/* Tablet Landscape and bigger */
@media (min-width: 960px) {
  .fe-heading-small {
    font-size: 3.25rem;
  }
  .fe-heading-medium {
    font-size: 3.5rem;
  }
  .fe-heading-large {
    font-size: 4rem;
  }
  .fe-heading-xlarge {
    font-size: 6rem;
  }
  .fe-heading-2xlarge {
    font-size: 8rem;
  }
}
/* Laptop and bigger */
@media (min-width: 1200px) {
  .fe-heading-medium {
    font-size: 4rem;
  }
  .fe-heading-large {
    font-size: 6rem;
  }
  .fe-heading-xlarge {
    font-size: 8rem;
  }
  .fe-heading-2xlarge {
    font-size: 11rem;
  }
}
/* Divider
 ========================================================================== */
.fe-heading-divider {
  padding-bottom: calc(5px + 0.1em);
  border-bottom: calc(0.2px + 0.05em) solid #000000;
}

/* Bullet
 ========================================================================== */
.fe-heading-bullet {
  position: relative;
}

/*
 * 1. Using `inline-block` to make it work with text alignment
 * 2. Center vertically
 * 3. Style
 */
.fe-heading-bullet::before {
  content: "";
  display: inline-block;
  position: relative;
  top: calc(-0.1 * 1em);
  vertical-align: middle;
  height: calc(4px + 0.7em);
  margin-right: calc(5px + 0.2em);
  border-left: calc(5px + 0.1em) solid #000000;
}

/* Line
 ========================================================================== */
/*
 * Clip the child element
 */
.fe-heading-line {
  overflow: hidden;
}

/*
 * Extra markup is needed to make it work with text align
 */
.fe-heading-line > * {
  display: inline-block;
  position: relative;
}

/*
 * 1. Center vertically
 * 2. Make the element as large as possible. It's clipped by the container.
 * 3. Style
 */
.fe-heading-line > ::before,
.fe-heading-line > ::after {
  content: "";
  position: absolute;
  top: calc(50% - (calc(0.2px + 0.05em) / 2));
  width: 2000px;
  border-bottom: calc(0.2px + 0.05em) solid #000000;
}

.fe-heading-line > ::before {
  right: 100%;
  margin-right: calc(5px + 0.3em);
}

.fe-heading-line > ::after {
  left: 100%;
  margin-left: calc(5px + 0.3em);
}

/* ========================================================================
   Component: Label
 ========================================================================== */
.fe-label {
  display: inline-block;
  padding: 2px 10px;
  background: #00988C;
  line-height: 1.5;
  font-size: calc(20px * 0.8);
  color: #fff;
  vertical-align: middle;
  white-space: nowrap;
  border-radius: 2px;
  text-transform: uppercase;
}

/* Color modifiers
 ========================================================================== */
/*
 * Success
 */
.fe-label-success {
  background-color: #16c785;
  color: #fff;
}

/*
 * Warning
 */
.fe-label-warning {
  background-color: #faa05a;
  color: #fff;
}

/*
 * Danger
 */
.fe-label-danger {
  background-color: #f0506e;
  color: #fff;
}

/* ========================================================================
   Component: List
 ========================================================================== */
ul {
  list-style: none;
  margin: 0;
  padding: 0;
}

.fe-list > :nth-child(n+2),
.fe-list ul {
  margin-top: var(--space-small);
}

/*
 * Type modifiers
 */
.fe-list-decimal {
  counter-reset: decimal;
}

.fe-list-decimal > * {
  counter-increment: decimal;
}

[class*=fe-list] > ::before {
  content: "";
  position: relative;
  left: 0;
  width: 30px;
  height: 10px;
  margin-bottom: -10px;
  display: list-item;
  list-style-position: outside;
  text-align: right;
}

.fe-list-disc > ::before {
  list-style-type: disc;
}

.fe-list-circle > ::before {
  list-style-type: circle;
}

.fe-list-square > ::before {
  list-style-type: square;
}

.fe-list-decimal > ::before {
  content: counter(decimal, decimal) " . ";
  left: -30px;
}

.fe-list-inside > * {
  padding-left: 30px;
}
.fe-list-inside > *::before {
  left: -30px;
  list-style-position: inside;
}

/*
 * Color modifiers
 */
.fe-list-primary > ::before {
  color: #00988C !important;
}
.fe-list-secondary > ::before {
  color: #C3922E !important;
}

/* Style modifiers
 ========================================================================== */
/*
 * Divider
 */
.fe-list-divider > :nth-child(n+2) {
  padding-top: var(--space-small);
  border-top: 1px solid #000000;
}

/*
 * Striped
 */
.fe-list-striped > * {
  padding: var(--space-small) var(--space-thin);
}

.fe-list-striped > :nth-of-type(odd) {
  background: #f8f8f8;
  border-top: 1px solid #000000;
  border-bottom: 1px solid #000000;
}

.fe-list-striped > :nth-child(n+2) {
  margin-top: 0;
}

.fe-message-box {
  border: 8px solid #888888;
  padding: var(--space-medium);
  margin-bottom: 20px;
  font-weight: 400;
  text-align: center;
  background-color: #262626;
}
.fe-message-box > *:first-child {
  font-weight: bold;
}
.fe-message-box--success {
  border-color: #82C708;
  color: #3A614D;
}
.fe-message-box--error {
  border-color: #f0506e;
  color: #f0506e;
}

.tingle-modal * {
  box-sizing: border-box;
}

.tingle-modal {
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 1000;
  display: flex;
  visibility: hidden;
  flex-direction: column;
  align-items: center;
  overflow: hidden;
  -webkit-overflow-scrolling: touch;
  background: rgba(0, 0, 0, 0.9);
  opacity: 0;
  cursor: url("data:image/svg+xml,%3Csvg width='19' height='19' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M15.514.535l-6.42 6.42L2.677.536a1.517 1.517 0 00-2.14 0 1.517 1.517 0 000 2.14l6.42 6.419-6.42 6.419a1.517 1.517 0 000 2.14 1.517 1.517 0 002.14 0l6.419-6.42 6.419 6.42a1.517 1.517 0 002.14 0 1.517 1.517 0 000-2.14l-6.42-6.42 6.42-6.418a1.517 1.517 0 000-2.14 1.516 1.516 0 00-2.14 0z' fill='%23FFF' fill-rule='nonzero'/%3E%3C/svg%3E"), auto;
}

@supports ((-webkit-backdrop-filter: blur(12px)) or (backdrop-filter: blur(12px))) {
  .tingle-modal {
    -webkit-backdrop-filter: blur(12px);
    backdrop-filter: blur(12px);
  }
}
.tingle-modal--confirm .tingle-modal-box {
  text-align: center;
}

.tingle-modal--noOverlayClose {
  cursor: default;
}

.tingle-modal--noClose .tingle-modal__close {
  display: none;
}

.tingle-modal__close {
  position: fixed;
  top: 2.5rem;
  right: 2.5rem;
  z-index: 1000;
  padding: 0;
  width: 2rem;
  height: 2rem;
  border: none;
  background-color: transparent;
  color: #fff;
  cursor: pointer;
}

.tingle-modal__close svg * {
  fill: currentColor;
}

.tingle-modal__closeLabel {
  display: none;
}

.tingle-modal__close:hover {
  color: #fff;
}

.tingle-modal-box {
  position: relative;
  flex-shrink: 0;
  margin-top: auto;
  margin-bottom: auto;
  width: 60%;
  border-radius: 4px;
  background: #fff;
  opacity: 1;
  cursor: auto;
  will-change: transform, opacity;
}

.tingle-modal-box__content {
  padding: 3rem 3rem;
}

.tingle-modal-box__footer {
  padding: 1.5rem 2rem;
  width: auto;
  border-bottom-right-radius: 4px;
  border-bottom-left-radius: 4px;
  background-color: #f5f5f5;
  cursor: auto;
}

.tingle-modal-box__footer::after {
  display: table;
  clear: both;
  content: "";
}

.tingle-modal-box__footer--sticky {
  position: fixed;
  bottom: -200px;
  z-index: 10001;
  opacity: 1;
  transition: bottom 0.3s ease-in-out 0.3s;
}

.tingle-enabled {
  position: fixed;
  right: 0;
  left: 0;
  overflow: hidden;
}

.tingle-modal--visible .tingle-modal-box__footer {
  bottom: 0;
}

.tingle-modal--visible {
  visibility: visible;
  opacity: 1;
}

.tingle-modal--visible .tingle-modal-box {
  -webkit-animation: scale 0.2s cubic-bezier(0.68, -0.55, 0.265, 1.55) forwards;
          animation: scale 0.2s cubic-bezier(0.68, -0.55, 0.265, 1.55) forwards;
}

.tingle-modal--overflow {
  overflow-y: scroll;
  padding-top: 8vh;
}

.tingle-btn {
  display: inline-block;
  margin: 0 0.5rem;
  padding: 1rem 2rem;
  border: none;
  background-color: grey;
  box-shadow: none;
  color: #fff;
  vertical-align: middle;
  text-decoration: none;
  font-size: inherit;
  font-family: inherit;
  line-height: normal;
  cursor: pointer;
  transition: background-color 0.4s ease;
}

.tingle-btn--primary {
  background-color: #3498db;
}

.tingle-btn--danger {
  background-color: #e74c3c;
}

.tingle-btn--default {
  background-color: #34495e;
}

.tingle-btn--pull-left {
  float: left;
}

.tingle-btn--pull-right {
  float: right;
}

@media (max-width: 540px) {
  .tingle-modal {
    top: 0;
    display: block;
    padding-top: 60px;
    width: 100%;
  }
  .tingle-modal-box {
    width: auto;
    border-radius: 0;
  }
  .tingle-modal-box__content {
    overflow-y: scroll;
  }
  .tingle-modal--noClose {
    top: 0;
  }
  .tingle-modal--noOverlayClose {
    padding-top: 0;
  }
  .tingle-modal-box__footer .tingle-btn {
    display: block;
    float: none;
    margin-bottom: 1rem;
    width: 100%;
  }
  .tingle-modal__close {
    top: 0;
    right: 0;
    left: 0;
    display: block;
    width: 100%;
    height: 60px;
    border: none;
    background-color: #2c3e50;
    box-shadow: none;
    color: #fff;
  }
  .tingle-modal__closeLabel {
    display: inline-block;
    vertical-align: middle;
    font-size: 1.6rem;
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen, Ubuntu, Cantarell, "Fira Sans", "Droid Sans", "Helvetica Neue", sans-serif;
  }
  .tingle-modal__closeIcon {
    display: inline-block;
    margin-right: 0.8rem;
    width: 1.6rem;
    vertical-align: middle;
    font-size: 0;
  }
}
@-webkit-keyframes scale {
  0% {
    opacity: 0;
    transform: scale(0.9);
  }
  100% {
    opacity: 1;
    transform: scale(1);
  }
}
@keyframes scale {
  0% {
    opacity: 0;
    transform: scale(0.9);
  }
  100% {
    opacity: 1;
    transform: scale(1);
  }
}
.fe-modal-container {
  display: none;
}

.tingle-modal {
  cursor: url("data:image/svg+xml,%3Csvg width='19' height='19' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M15.514.535l-6.42 6.42L2.677.536a1.517 1.517 0 00-2.14 0 1.517 1.517 0 000 2.14l6.42 6.419-6.42 6.419a1.517 1.517 0 000 2.14 1.517 1.517 0 002.14 0l6.419-6.42 6.419 6.42a1.517 1.517 0 002.14 0 1.517 1.517 0 000-2.14l-6.42-6.42 6.42-6.418a1.517 1.517 0 000-2.14 1.516 1.516 0 00-2.14 0z' fill='%23FFF' fill-rule='nonzero'/%3E%3C/svg%3E"), auto;
}
.tingle-modal-box__content {
  padding: 3rem 3rem;
}
.tingle-modal-box__footer {
  padding: 1.5rem 2rem;
}
.tingle-modal--overflow {
  padding: 8vh 0;
}

/* ========================================================================
   Component: Pagination
 ========================================================================== */
.fe-pagination {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  margin-left: 0;
  padding: 0;
  list-style: none;
}

.fe-pagination > * {
  flex: none;
  padding-left: 0;
  position: relative;
}

/* Items
 ========================================================================== */
.fe-pagination > * > * {
  display: block;
  padding: 5px 10px;
  color: #999;
  font-size: 20px;
}

/* Hover */
.fe-pagination > * > :hover {
  color: #1a1a1a;
  text-decoration: none;
}

/* Active */
.fe-pagination > .fe-active > * {
  color: #1a1a1a;
}

/* Disabled */
.fe-pagination > .fe-disabled > * {
  color: #999;
}

/* Previous and Next buttons */
.fe-pagination .fe-pagination-previous > * > *,
.fe-pagination .fe-pagination-next > * > * {
  line-height: 1;
  display: block;
  /* Hover */
}
.fe-pagination .fe-pagination-previous > * > *::before,
.fe-pagination .fe-pagination-next > * > *::before {
  content: "«";
  font-size: 35px;
  color: #999;
  cursor: pointer;
  transition: 0.25s all;
  line-height: 17.5px;
}
.fe-pagination .fe-pagination-previous > * > *:hover::before,
.fe-pagination .fe-pagination-next > * > *:hover::before {
  color: #1a1a1a;
}

.fe-pagination.fe-pagination .fe-pagination-next > * > *::before {
  content: "»";
}

/* Previous and Next buttons with custom SVG */
.fe-pagination-custom .fe-pagination-previous,
.fe-pagination-custom .fe-pagination-next {
  /* Hover */
}
.fe-pagination-custom .fe-pagination-previous svg,
.fe-pagination-custom .fe-pagination-next svg {
  width: 15px;
  height: auto;
  -o-object-fit: contain;
     object-fit: contain;
  transition: 0.25s all;
}
.fe-pagination-custom .fe-pagination-previous svg::before,
.fe-pagination-custom .fe-pagination-next svg::before {
  display: none;
}
.fe-pagination-custom .fe-pagination-previous:hover svg,
.fe-pagination-custom .fe-pagination-next:hover svg {
  transform: scale(1.3);
}

/* ========================================================================
   Component: Table
 ========================================================================== */
.fe-table {
  border-collapse: collapse;
  border-spacing: 0;
  width: 100%;
  margin-bottom: 20px;
}

/* Add margin if adjacent element */
* + .fe-table {
  margin-top: 20px;
}

/* Header cell
 ========================================================================== */
.fe-table th {
  padding: 16px 12px;
  text-align: left;
  vertical-align: bottom;
  font-size: 20px;
  font-weight: bold;
  color: #1a1a1a;
  text-transform: uppercase;
}

/* Cell
 ========================================================================== */
.fe-table td {
  padding: 16px 12px;
  vertical-align: top;
}

/*
 * Remove margin from the last-child
 */
.fe-table td > :last-child {
  margin-bottom: 0;
}

/* Footer
 ========================================================================== */
.fe-table tfoot {
  font-size: calc(20px * 0.8);
}

/* Caption
 ========================================================================== */
.fe-table caption {
  font-size: calc(20px * 0.8);
  text-align: left;
  color: #999;
}

/* Alignment modifier
 ========================================================================== */
.fe-table-middle,
.fe-table-middle td {
  vertical-align: middle !important;
}

/* Style modifiers
 ========================================================================== */
/*
 * Divider
 */
.fe-table-divider > tr:not(:first-child),
.fe-table-divider > :not(:first-child) > tr,
.fe-table-divider > :first-child > tr:not(:first-child) {
  border-top: 1px solid #000000;
}

/*
 * Striped
 */
.fe-table-striped > tr:nth-of-type(odd),
.fe-table-striped tbody tr:nth-of-type(odd) {
  background: #f8f8f8;
  border-top: 1px solid #000000;
  border-bottom: 1px solid #000000;
}

/*
 * Hover
 */
.fe-table-hover > tr:hover,
.fe-table-hover tbody tr:hover {
  background: #ffd;
}

/* Active state
 ========================================================================== */
.fe-table > tr.fe-active,
.fe-table tbody tr.fe-active {
  background: #ffd;
}

/* Justify modifier
 ========================================================================== */
.fe-table-justify th:first-child,
.fe-table-justify td:first-child {
  padding-left: 0;
}

.fe-table-justify th:last-child,
.fe-table-justify td:last-child {
  padding-right: 0;
}

/* Cell size modifier
 ========================================================================== */
.fe-table-shrink {
  width: 1px;
}

.fe-table-expand {
  min-width: 150px;
}

/* Cell link modifier
 ========================================================================== */
/*
 * Does not work with `fe-table-justify` at the moment
 */
.fe-table-link {
  padding: 0 !important;
}

.fe-table-link > a {
  display: block;
  padding: 16px 12px;
}

/* Responsive table
 ========================================================================== */
/* Phone landscape and smaller */
@media (max-width: 959px) {
  .fe-table-responsive,
.fe-table-responsive tbody,
.fe-table-responsive th,
.fe-table-responsive td,
.fe-table-responsive tr {
    display: block;
  }
  .fe-table-responsive thead {
    display: none;
  }
  .fe-table-responsive th,
.fe-table-responsive td {
    width: auto !important;
    max-width: none !important;
    min-width: 0 !important;
    overflow: visible !important;
    white-space: normal !important;
  }
  .fe-table-responsive th:not(:first-child):not(.fe-table-link),
.fe-table-responsive td:not(:first-child):not(.fe-table-link),
.fe-table-responsive .fe-table-link:not(:first-child) > a {
    padding-top: 5px !important;
  }
  .fe-table-responsive th:not(:last-child):not(.fe-table-link),
.fe-table-responsive td:not(:last-child):not(.fe-table-link),
.fe-table-responsive .fe-table-link:not(:last-child) > a {
    padding-bottom: 5px !important;
  }
  .fe-table-justify.fe-table-responsive th,
.fe-table-justify.fe-table-responsive td {
    padding-left: 0;
    padding-right: 0;
  }
}
/* new style */
.fe-table tbody tr {
  transition: background-color 0.1s linear;
}

.fe-table-striped > tr:nth-of-type(even):last-child,
.fe-table-striped tbody tr:nth-of-type(even):last-child {
  border-bottom: 1px solid #000000;
}

.site-dark-background {
  background-color: #edece6;
}

img,
picture {
  max-width: 100%;
  display: block;
  height: auto;
}

.color-primary {
  color: #262626;
}

.text-highlight {
  font-weight: 700;
}

.text-uppercase {
  text-transform: uppercase;
}

.hidden {
  display: none;
  opacity: 0;
}

main {
  position: relative;
}

html,
body {
  overflow-x: hidden;
}
html.noscroll,
body.noscroll {
  overflow-y: hidden;
}

body {
  background-color: #F7F6F3;
}

.content-container {
  max-width: 1800px;
  width: 100%;
  margin: 0 auto;
}

.content-wrapper {
  max-width: 1680px;
  margin: 0 auto;
  width: 100%;
}

@media screen and (min-width: 320px) {
  :root {
    --grid-container--content-padding: clamp(15px, 5vw, 20px);
  }
  main {
    margin-top: 56px;
  }
  section {
    margin-bottom: var(--space-x-large);
  }
  .content-container {
    padding: 0 var(--grid-container--content-padding, 15px);
  }
}
@media screen and (min-width: 768px) {
  :root {
    --grid-container--content-padding: clamp(30px, 5vw, 40px);
  }
}
@media screen and (min-width: 1200px) {
  :root {
    --grid-container--content-padding: clamp(35px, 4vw, 45px);
  }
}
@media screen and (min-width: 1440px) {
  main {
    margin-top: 0;
  }
  section {
    margin-bottom: var(--space--u-1);
  }
}
@media screen and (min-width: 1680px) {
  :root {
    --grid-container--content-padding: 0;
  }
}
@media screen and (min-width: 1818px) {
  main {
    margin-top: 100px;
  }
}
.section {
  margin-bottom: var(--fesp-2xl);
}

html {
  --font-scale__base: 16px;
  font-size: var(--font-scale__base, 16px);
}

body {
  font-family: "Raleway", sans-serif;
  font-style: normal;
  font-weight: normal;
}

p,
.paragraph {
  font-size: calc(var(--font-scale__base) * 1);
  line-height: 1.5;
  font-family: "Raleway", sans-serif;
  font-style: normal;
  font-weight: 400;
  color: #262626;
}
p.small,
.paragraph.small {
  font-size: calc(calc(var(--font-scale__base) * 1) * 0.8);
}
p a,
p a:visited,
.paragraph a,
.paragraph a:visited {
  color: #262626;
}

a:not(.fe-button) {
  outline: none;
  text-decoration: none;
  color: #262626;
}
a:not(.fe-button):link {
  color: #262626;
}
a:not(.fe-button):visited {
  color: #262626;
}
a:not(.fe-button):focus {
  color: #edece6;
}
a:not(.fe-button):hover {
  color: #edece6;
}
a:not(.fe-button):active {
  color: #262626;
}

address {
  font-style: normal;
}

h1, h2, h3, h4, h5, h6,
.h1, .h2, .h3, .h4, .h5, .h6 {
  font-family: "Cinzel", sans-serif;
}

@media screen and (min-width: 320px) {
  :root {
    --font-scale__base: 14px;
  }
  /**
  Reusable
  */
  html, body {
    font-size: calc(var(--font-scale__base) * 1);
    line-height: 1.5;
  }
  p:not(p:last-of-type, ul:last-of-type, ol:last-of-type, blockquote:last-of-type, pre:last-of-type, .alert:last-of-type, .note:last-of-type, .box:last-of-type, .footnotes:last-of-type), ul:not(p:last-of-type, ul:last-of-type, ol:last-of-type, blockquote:last-of-type, pre:last-of-type, .alert:last-of-type, .note:last-of-type, .box:last-of-type, .footnotes:last-of-type), ol:not(p:last-of-type, ul:last-of-type, ol:last-of-type, blockquote:last-of-type, pre:last-of-type, .alert:last-of-type, .note:last-of-type, .box:last-of-type, .footnotes:last-of-type), blockquote:not(p:last-of-type, ul:last-of-type, ol:last-of-type, blockquote:last-of-type, pre:last-of-type, .alert:last-of-type, .note:last-of-type, .box:last-of-type, .footnotes:last-of-type), pre:not(p:last-of-type, ul:last-of-type, ol:last-of-type, blockquote:last-of-type, pre:last-of-type, .alert:last-of-type, .note:last-of-type, .box:last-of-type, .footnotes:last-of-type), .alert:not(p:last-of-type, ul:last-of-type, ol:last-of-type, blockquote:last-of-type, pre:last-of-type, .alert:last-of-type, .note:last-of-type, .box:last-of-type, .footnotes:last-of-type), .note:not(p:last-of-type, ul:last-of-type, ol:last-of-type, blockquote:last-of-type, pre:last-of-type, .alert:last-of-type, .note:last-of-type, .box:last-of-type, .footnotes:last-of-type), .box:not(p:last-of-type, ul:last-of-type, ol:last-of-type, blockquote:last-of-type, pre:last-of-type, .alert:last-of-type, .note:last-of-type, .box:last-of-type, .footnotes:last-of-type), .footnotes:not(p:last-of-type, ul:last-of-type, ol:last-of-type, blockquote:last-of-type, pre:last-of-type, .alert:last-of-type, .note:last-of-type, .box:last-of-type, .footnotes:last-of-type) {
    margin-bottom: var(--space-base);
  }
  h1, .h1 {
    font-size: calc(var(--font-scale__base) * 3.157);
    line-height: 1.25;
  }
  h2, .h2 {
    font-size: calc(var(--font-scale__base) * 2.369);
    line-height: 1.25;
    font-weight: 400;
  }
  h3, .h3 {
    font-size: calc(var(--font-scale__base) * 1.777);
    line-height: 1.25;
    font-weight: 400;
  }
  h4, .h4 {
    font-size: calc(var(--font-scale__base) * 1.333);
    line-height: 1.25;
    font-weight: 400;
  }
  h5, .h5 {
    font-size: calc(var(--font-scale__base) * 1.333);
    line-height: 1.25;
    font-weight: 400;
  }
  h6, .h6 {
    font-size: calc(var(--font-scale__base) * 1.333);
    line-height: 1.25;
  }
}
@media screen and (min-width: 768px) {
  :root {
    --font-scale__base: 16px;
  }
}
@media screen and (min-width: 1680px) {
  :root {
    --font-scale__base: 18px;
  }
}
@media screen and (min-width: 1200px) {
  :root {
    --font-scale__base: 17px;
  }
}
.headingsCommon, h6, .h6, h5, .h5, h4, .h4, h3, .h3, h2, .h2, h1, .h1 {
  letter-spacing: 0.03em;
  font-weight: 400;
  line-height: 125%;
}

h1, .h1 {
  font-size: calc(var(--font-scale__base) * 3.157);
  line-height: 1.25;
}

h2, .h2 {
  font-size: calc(var(--font-scale__base) * 2.369);
  line-height: 1.25;
  font-weight: 400;
}

h3, .h3 {
  font-size: calc(var(--font-scale__base) * 1.777);
  line-height: 1.25;
  font-weight: 400;
}

h4, .h4 {
  font-size: calc(var(--font-scale__base) * 1.333);
  line-height: 1.25;
  font-weight: 400;
}

h5, .h5 {
  font-size: calc(var(--font-scale__base) * 1.333);
  line-height: 1.25;
  font-weight: 400;
}

h6, .h6 {
  font-size: calc(var(--font-scale__base) * 1.333);
  line-height: 1.25;
}

h1, .h1 {
  font-size: calc(var(--font-scale__base) * 4.209);
}

h2, .h2 {
  font-size: calc(var(--font-scale__base) * 3.157);
}

h3, .h3 {
  font-size: calc(var(--font-scale__base) * 2.369);
}

h4, .h4 {
  font-size: calc(var(--font-scale__base) * 1.333);
  letter-spacing: -0.03em;
}

h5, .h5 {
  font-size: calc(var(--font-scale__base) * 1.333);
  letter-spacing: 0.06em;
}

h6, .h6 {
  font-size: calc(var(--font-scale__base) * 1.333);
  letter-spacing: 0.06em;
  text-transform: uppercase;
}

.navigation {
  display: flex;
}
.navigation-direction--horizontal {
  flex-direction: row;
  flex-wrap: wrap;
}
.navigation-direction--vertical {
  flex-direction: column;
}
.navigation-list--links {
  gap: 10px;
}
.navigation-list--links a:hover {
  color: #262626;
}
.navigation-list--dropdown {
  display: flex;
  flex-direction: column;
}
.navigation-list--dropdown.navigation-place--header > * {
  order: 10;
}
.navigation-list--dropdown.navigation-place--header > .nav-item {
  position: relative;
}
.navigation-list--dropdown.navigation-place--header > .nav-item {
  display: none;
}
.navigation-list--dropdown.navigation-place--header > .nav-item--current {
  display: block;
}
.navigation-list--dropdown.navigation-place--header .nav-item .nav-link {
  width: 100%;
}
.navigation-list--dropdown.navigation-place--header:hover > .nav-item {
  display: block;
}

/**
DEFAULTS
 */
nav ul {
  margin: 0;
  padding: 0;
  list-style: none;
  display: flex;
}
nav ul li {
  opacity: 1;
}
nav ul li a {
  text-decoration: none;
}

/**
SPECIFIC
 */
.header-navigation ul li {
  display: flex;
  align-items: flex-end;
}
.header-navigation ul li a {
  font-family: "Cinzel", sans-serif;
  color: #274442;
  line-height: 1.15;
}
.header-navigation ul li:last-child {
  margin-right: 0;
}
.header-navigation ul li .nav-link {
  position: relative;
}
.header-navigation ul li .nav-link:hover {
  color: #262626;
}
.header-navigation ul li .nav-link.nav-link--current {
  color: #262626;
}

/** HAMBURGER **/
.button-container {
  height: 34px;
  width: 34px;
  padding: 8px 0 7px 0;
  position: relative;
  opacity: 1;
  background: #888888;
  border-radius: 100%;
  display: flex;
  flex-direction: column;
  align-items: center;
  cursor: pointer;
  margin-left: auto;
}
.button-container.active::before {
  transform: translateY(8px) rotate(135deg);
}
.button-container.active::after {
  transform: translateY(-8px) rotate(-135deg);
}
.button-container.active span {
  transform: scale(0);
}
.button-container::before, .button-container::after,
.button-container span {
  content: "";
  display: block;
  transition: 0.5s;
  background: #202026;
  border: none;
  height: 3px;
  width: 22px;
}
.button-container span {
  margin: 5px 0;
}

/**
RESPONSIVE NAVIGATION
 */
.overlay-menu {
  z-index: 5;
}
.overlay-menu.open {
  transform: translateX(0) translateY(0);
  visibility: visible;
}

.fe-nav__container.fe-navbar__navigation .fe-nav__item {
  color: #888888;
}
.fe-nav__container.fe-navbar__navigation .fe-nav__item:hover {
  color: #edece6;
}
.fe-nav__container.fe-navbar__navigation .fe-nav__link {
  font-size: 18px;
  font-weight: 600;
  font-family: "Raleway", sans-serif;
  line-height: 1.15;
  border-bottom: 2px dashed transparent;
}
.fe-nav__container.fe-navbar__navigation .fe-nav__link:hover {
  border-bottom-color: #262626;
}

@media screen and (min-width: 320px) {
  .header-navigation ul li a {
    font-size: 19px;
    font-weight: 400;
  }
  .overlay-menu {
    transform: translateX(-100%) translateY(0);
    visibility: hidden;
    transition: 0.25s all;
    background: #fff;
    width: 100%;
    height: calc(100% - 56px);
    position: fixed;
    top: 56px;
    left: 0;
    display: flex;
    overflow: hidden;
  }
  .overlay-menu--left-to-right {
    transform: translateX(-100%) translateY(0);
  }
  .overlay-menu--right-to-left {
    transform: translateX(100%) translateY(0);
  }
  .overlay-menu--bottom-to-up {
    transform: translateX(0) translateY(100%);
  }
  .overlay-menu--up-to-bottom {
    transform: translateX(0) translateY(-100%);
  }
  .overlay-menu ul {
    list-style: none;
    padding: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    position: relative;
  }
  .overlay-menu ul li {
    text-align: center;
  }
  .overlay-menu ul li:not(:first-child) {
    margin-top: 45px;
  }
  .overlay-menu ul li a {
    display: block;
    position: relative;
    text-decoration: none;
    text-transform: uppercase;
  }
  .overlay-menu ul li a:link, .overlay-menu ul li a:visited {
    color: #274442;
  }
}
@media screen and (min-width: 1000px) {
  .header-navigation ul li a {
    font-size: 14px;
  }
  /**
  @deprecated
   */
  #navigation-opener-toggle-button {
    display: none;
    height: 0;
    width: 0;
    opacity: 0;
  }
  /**
  @deprecated
   */
  .overlay-menu {
    margin: 0 auto;
    display: flex;
    flex-direction: row;
    position: relative;
    top: auto;
    left: auto;
    width: -webkit-fit-content;
    width: fit-content;
    width: -moz-fit-content;
    height: 100%;
    transform: translateX(0);
    visibility: visible;
  }
  .overlay-menu ul {
    width: -webkit-fit-content;
    width: fit-content;
    width: -moz-fit-content;
    height: 100%;
    flex-direction: row;
    justify-content: unset;
  }
  .overlay-menu ul li:not(:first-child) {
    margin: 0 0 0 20px;
  }
}
@media screen and (min-width: 1680px) {
  .header-navigation ul li a {
    font-size: 24px;
  }
}
@-webkit-keyframes fadeInRight {
  0% {
    opacity: 0;
    left: 20%;
  }
  100% {
    opacity: 1;
    left: 0;
  }
}
@keyframes fadeInRight {
  0% {
    opacity: 0;
    left: 20%;
  }
  100% {
    opacity: 1;
    left: 0;
  }
}
.fe-navbar__overlay {
  transform: translateX(-100%) translateY(0);
  visibility: hidden;
  transition: 0.25s all;
  background: #fff;
  width: 100%;
  height: calc(100% - 56px);
  position: fixed;
  top: 56px;
  left: 0;
  display: flex;
  overflow: hidden;
}
.fe-navbar__overlay--left-to-right {
  transform: translateX(-100%) translateY(0);
}
.fe-navbar__overlay--right-to-left {
  transform: translateX(100%) translateY(0);
}
.fe-navbar__overlay--bottom-to-up {
  transform: translateX(0) translateY(100%);
}
.fe-navbar__overlay--up-to-bottom {
  transform: translateX(0) translateY(-100%);
}
.fe-navbar__overlay .fe-navbar__navigation {
  list-style: none;
  position: relative;
}
.fe-navbar__overlay .fe-navbar__navigation li {
  text-align: center;
}
.fe-navbar__overlay .fe-navbar__navigation li a {
  display: block;
  position: relative;
  text-decoration: none;
  text-transform: uppercase;
}
.fe-navbar__overlay .fe-navbar__navigation li a:link, .fe-navbar__overlay .fe-navbar__navigation li a:visited {
  color: #274442;
}
.fe-navbar__overlay--opened {
  z-index: 5;
  transform: translateX(0) translateY(0);
  visibility: visible;
}
.fe-navbar__overlay--opened .fe-navbar__navigation {
  row-gap: var(--fesp-l);
}
.fe-navbar__container {
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
}
.fe-navbar-mobile-navigation-button__container {
  height: 40px;
  width: 40px;
  padding: 8px 0 8px 0;
  position: relative;
  opacity: 1;
  background: rgba(136, 136, 136, 0.2);
  border-radius: 0;
  display: flex;
  flex-direction: column;
  align-items: center;
  cursor: pointer;
  margin-left: auto;
}
.fe-navbar-mobile-navigation-button__container::before, .fe-navbar-mobile-navigation-button__container::after,
.fe-navbar-mobile-navigation-button__container span {
  content: "";
  display: block;
  transition: 0.5s;
  background: #202026;
  border: none;
  height: 3px;
  width: 22px;
}
.fe-navbar-mobile-navigation-button__container span {
  margin: 5px 0;
}
.fe-navbar-mobile-navigation-button__container--active::before {
  transform: translateY(8px) rotate(135deg);
}
.fe-navbar-mobile-navigation-button__container--active::after {
  transform: translateY(-8px) rotate(-135deg);
}
.fe-navbar-mobile-navigation-button__container--active span {
  transform: scale(0);
}
.fe-navbar__navigation {
  margin: 0;
  padding: 0;
  list-style: none;
  display: flex;
  width: 100%;
  height: 100%;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  position: relative;
}
.fe-navbar__navigation li {
  text-align: center;
  opacity: 1;
}
.fe-navbar__navigation li:not(:first-child) {
  margin-top: var(--fesp-m);
}
.fe-navbar__navigation li a {
  display: block;
  position: relative;
  text-decoration: none;
  text-transform: uppercase;
}
.fe-navbar__navigation li a:link, .fe-navbar__navigation li a:visited {
  color: #274442;
}

@media screen and (min-width: 1000px) {
  .fe-navbar__overlay {
    margin: 0 auto;
    display: flex;
    flex-direction: row;
    position: relative;
    top: auto;
    left: auto;
    width: -webkit-fit-content;
    width: fit-content;
    width: -moz-fit-content;
    height: 100%;
    transform: translateX(0);
    visibility: visible;
    background-color: #F7F6F3;
  }
  .fe-navbar__navigation {
    width: -webkit-fit-content;
    width: fit-content;
    width: -moz-fit-content;
    height: 100%;
    flex-direction: row;
    justify-content: unset;
    -moz-column-gap: var(--fesp-m);
         column-gap: var(--fesp-m);
  }
  .fe-navbar__navigation li:not(:first-child) {
    margin: unset;
  }
  #fe-navbar-navigation-opener-button {
    display: none;
    height: 0;
    width: 0;
    opacity: 0;
  }
}
.fe-nav__item--active .fe-nav__link {
  border-bottom: 2px dashed transparent;
  border-bottom-color: #262626;
}

.site-specific--pages_home .fe-navbar__overlay {
  background-color: #fff;
}

@media screen and (min-width: 1000px) {
  .fe-navbar__container {
    flex: 1;
  }
  .fe-navbar__overlay {
    flex-grow: 1;
  }
  .fe-navbar__navigation {
    -moz-column-gap: var(--fesp-l);
         column-gap: var(--fesp-l);
  }
}
.header__media-box {
  display: inline-flex;
  margin-left: auto;
  justify-content: flex-end;
  margin-right: var(--fesp-xl);
  -moz-column-gap: var(--fesp-m);
       column-gap: var(--fesp-m);
}

.fe-header__container .fe-logo__container {
  flex: 1;
}
.fe-header__container .fe-logo__link {
  width: 140px;
}

@media screen and (min-width: 1000px) {
  .fe-header__container .fe-logo__container {
    flex-grow: 0;
  }
  .header__media-box {
    order: 10;
    margin-left: unset;
    margin-right: unset;
    flex-grow: 0;
  }
  .header__media-box svg {
    width: auto;
    height: 24px;
  }
}
/**
@deprecated
 */
header {
  width: 100%;
  background: #F7F6F3;
  z-index: 5;
  /**
  @deprecated
   */
}
header.fe-mobile-fix {
  position: fixed;
  left: 0;
  top: 0;
}
header .content-container {
  display: flex;
  align-items: center;
  height: 100%;
}
header .content-wrapper,
header .navigation-wrapper {
  display: flex;
  align-items: center;
  height: 100%;
  width: 100%;
}
header .logo-container {
  width: -webkit-fit-content;
  width: fit-content;
  width: -moz-fit-content;
  height: 100%;
  display: flex;
  align-items: center;
  margin: 0;
}
header .logo-container svg, header .logo-container img {
  max-width: 100%;
  height: auto;
  display: block;
}

.fe-header__container {
  display: flex;
  flex-wrap: nowrap;
  align-items: center;
}
.fe-header__container-on-mobile--fixed {
  position: fixed;
  left: 0;
  top: 0;
}
.fe-header__container .fe-logo__container {
  width: 100px;
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: flex-start;
  margin: 0;
}
.fe-header__container .fe-logo__container svg, .fe-header__container .fe-logo__container img {
  max-width: 100%;
  height: auto;
  display: block;
}
@media screen and (min-width: 667px) {
  .fe-header__container .fe-logo__container {
    width: 11.72vw;
  }
  .fe-header__container .fe-logo__link {
    width: 160px;
  }
}
@media screen and (min-width: 1000px) {
  .site-specific--pages_home .fe-header__container {
    background-color: #fff;
  }
}

@media screen and (min-width: 320px) {
  header {
    height: 56px;
  }
  .fe-header {
    height: 56px;
  }
}
@media screen and (min-width: 1000px) {
  /**
  @deprecated
   */
  header {
    height: 100px;
    /**
    @deprecated
     */
  }
  header.fe-mobile-fix {
    position: relative;
    left: auto;
    top: auto;
  }
  .fe-header__container {
    height: 100px;
  }
  .fe-header__container-on-mobile--fixed {
    position: relative;
    left: auto;
    top: auto;
  }
}
@media screen and (min-width: 1680px) {
  .fe-header__container {
    height: 48px;
  }
  .fe-header__container .fe-logo__container {
    width: auto;
  }
  .fe-header__container .fe-logo__link {
    width: 226px;
  }
}
@media screen and (min-width: 1680px) {
  .header__wrapper {
    padding-top: 86px;
    padding-bottom: 56px;
  }
  .site-specific--pages_home .header__wrapper {
    background-color: #fff;
  }
}
.footer {
  margin-top: var(--fesp-xl);
}
.footer-content-section {
  display: grid;
  grid-template-columns: 1fr;
  grid-template-rows: auto;
  grid-gap: var(--fesp-xl);
}
.footer-block__title {
  font-size: calc(var(--font-scale__base) * 0.563);
  letter-spacing: 2px;
  text-transform: uppercase;
  color: #262626;
  font-weight: 600;
}
.footer-block__title + .fe-list {
  margin-top: var(--fesp-s);
}
.footer .cta-logotext {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-end;
  font-size: calc(var(--font-scale__base) * 2.369);
  font-weight: 275;
  line-height: 125%;
  color: #888888;
  letter-spacing: 0.03em;
}
.footer .cta-logotext svg {
  height: 32px;
  width: auto;
}
.footer-cta-wrapper {
  display: flex;
  flex-wrap: wrap;
  gap: var(--fesp-s);
}
.footer .fe-list .fe-link {
  font-size: calc(var(--font-scale__base) * 0.75);
  line-height: 125%;
  font-weight: 500;
}

.fe-copyright {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: center;
  border-top: solid 1px #888888;
  padding-top: var(--fesp-s);
  padding-bottom: var(--fesp-s);
  margin: 0 auto;
  margin-top: var(--fesp-s);
  row-gap: var(--fesp-xs);
}
.fe-copyright-logo__wrapper {
  height: 32px;
}
.fe-copyright-logo__wrapper svg {
  height: 100%;
  width: auto;
}
.fe-copyright-content__wrapper {
  color: #555;
  font-size: calc(var(--font-scale__base) * 0.75);
  line-height: 115%;
  font-weight: 500;
  flex-basis: 100%;
  order: 10;
}
.fe-copyright__media-box {
  align-items: center;
  display: flex;
  flex-wrap: nowrap;
  -moz-column-gap: var(--fesp-xs);
       column-gap: var(--fesp-xs);
}

@media screen and (min-width: 667px) {
  .footer-cta-wrapper {
    grid-column: 1/3;
  }
  .footer-content-section {
    grid-template-columns: 1fr 2fr;
  }
  .cta-logotext {
    flex-basis: 100%;
  }
  .fe-copyright-content__wrapper {
    flex-basis: auto;
  }
}
@media screen and (min-width: 834px) {
  .fe-copyright {
    -moz-column-gap: var(--fesp-xs);
         column-gap: var(--fesp-xs);
  }
  .fe-copyright-content__wrapper {
    margin-left: auto;
    order: 2;
  }
}
@media screen and (min-width: 1366px) {
  .footer-cta-wrapper {
    grid-column-end: 2;
  }
  .footer-content-section {
    grid-template-columns: -webkit-min-content 1fr auto;
    grid-template-columns: min-content 1fr auto;
    align-content: start;
    align-items: start;
  }
  .footer .cta-logotext {
    flex-wrap: nowrap;
    width: -webkit-max-content;
    width: -moz-max-content;
    width: max-content;
  }
}
footer {
  position: relative;
  bottom: 0;
  left: 0;
  height: auto;
  margin-bottom: 0;
  margin-top: 0;
  color: #262626;
  background: #F7F6F3;
  font-style: normal;
  font-size: 1rem;
  font-weight: 400;
  font-family: "Raleway", sans-serif;
  line-height: 1.16;
}

.footer .logo-link svg,
.fe-footer .logo-link svg {
  width: 100%;
  max-width: 100%;
  height: auto;
}
.footer__content,
.fe-footer__content {
  height: 100%;
  display: flex;
  flex: 1;
  flex-wrap: wrap;
  justify-content: center;
  padding: 0;
  flex-direction: column;
}

.fe-copyright {
  text-align: center;
  font-size: calc(var(--font-scale__base) * 0.75);
}
.fe-copyright a {
  text-decoration: none;
  color: inherit;
}
.contacts__wrapper {
  display: grid;
  grid-row-gap: 16px;
}

.contacts-data__container {
  display: flex;
  flex-direction: column;
  row-gap: 32px;
  order: 4;
}
.page__title {
  order: 2;
  grid-row: 1;
  grid-column: 1;
  z-index: 1;
  align-self: end;
  margin-top: var(--fesp-m);
}

.hero__media {
  order: 2;
  grid-row: 1;
  grid-column: 1;
}
.hero__media img {
  width: 64%;
  transform: translateX(var(--grid-container--content-padding, 15px));
  margin-left: auto;
}

.contact-form__container {
  order: 6;
  background-color: #fff;
  padding: 24px;
}
.contact-form__container .fe-button-submit {
  text-align: center;
}
.contact-form__title {
  font-size: calc(var(--font-scale__base) * 1.777);
}

.data-group__container {
  display: flex;
  flex-direction: column;
  row-gap: 8px;
}
.data-group__label {
  color: #888888;
  text-align: left;
  font-family: "Raleway", sans-serif;
  font-size: calc(var(--font-scale__base) * 1.333);
  font-style: normal;
  font-weight: 275;
  line-height: 125%; /* 30px */
  letter-spacing: -0.03em;
  text-transform: uppercase;
  margin-bottom: 8px;
}
.data-group__label--small {
  color: #888888;
  text-align: left;
  font-feature-settings: "clig" off, "liga" off;
  font-family: "Raleway", sans-serif;
  font-size: calc(var(--font-scale__base) * 0.563);
  font-style: normal;
  font-weight: 600;
  line-height: 100%; /* 12px */
  letter-spacing: 2px;
  text-transform: uppercase;
  margin-bottom: var(--fesp-s);
  display: block;
}
.data-group__value {
  color: #262626;
  text-align: left;
  font-family: "Raleway", sans-serif;
  font-size: calc(var(--font-scale__base) * 1.777);
  font-style: normal;
  font-weight: 400;
  line-height: 100%; /* 32px */
}
.data-value__social ul {
  display: flex;
  -moz-column-gap: 16px;
       column-gap: 16px;
}

@media screen and (min-width: 667px) {
  .hero__media img {
    width: unset;
    max-height: 400px;
  }
}
@media screen and (min-width: 768px) {
  .contacts__wrapper {
    grid-template-columns: 1fr 1fr;
    grid-row-gap: var(--fesp-xl);
    justify-items: right;
  }
  .contacts-data__container {
    order: 2;
    grid-column: 1;
    grid-row: 1;
    margin-top: var(--fesp-4xl);
  }
  .contacts-data__group > * {
    text-align: right;
  }
  .data-value__social ul {
    margin-left: auto;
    justify-content: flex-end;
  }
  .hero__media {
    order: 4;
    grid-row: 1;
    grid-column: 2;
    align-self: center;
    margin-top: var(--fesp-2xl);
  }
  .page__title {
    grid-row: 1;
    grid-column: 1;
    align-self: start;
  }
  .contact-form__container {
    grid-column: 1/3;
    width: 72%;
    justify-self: center;
  }
  .contact-form__container .fe-button-submit {
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
  }
}
@media screen and (min-width: 1000px) {
  .hero__media img {
    max-height: 560px;
  }
}
@media screen and (min-width: 1440px) {
  .contacts__wrapper {
    grid-template-columns: 1fr 1fr 1fr;
    grid-column-gap: 32px;
  }
  .hero__media {
    margin-top: unset;
  }
  .hero__media img {
    max-height: 960px;
    transform: unset;
  }
  .contact-form__container {
    grid-row: 1;
    grid-column: 3;
    width: 100%;
  }
}
@media screen and (min-width: 1680px) {
  .contacts__wrapper {
    gap: unset;
  }
  .contacts-data__container {
    margin-right: 64px;
    align-self: end;
  }
  .page__title {
    margin-right: 64px;
    margin-top: 24%;
    font-size: calc(var(--font-scale__base) * 4.209);
  }
  .hero__media {
    margin-top: unset;
  }
  .hero__media img {
    max-height: 100%;
    transform: unset;
  }
  .contact-form__title {
    font-size: calc(var(--font-scale__base) * 2.369);
  }
  .contact-form__container {
    margin-top: unset;
    height: 100%;
    align-self: end;
    padding: 56px;
    display: flex;
    flex-direction: column;
    justify-content: center;
  }
}

/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGhlbWUvY3NzL3BhZ2VzL2NvbnRhY3QuY3NzIiwibWFwcGluZ3MiOiJBQUFBLGdCQUFnQjtBQ0VoQjs7Ozs7O0VBQUE7QUF1R0E7Ozs7Ozs7Ozs7OztFQUFBO0FBaUJBOztFQUFBO0FDekhBOztFQUFBO0FDQUE7O0VBQUE7QUNEQTs7RUFBQTtBQWtCQTs7RUFBQTtBQWFBOztFQUFBO0FBS0E7O0VBQUE7QUFPQTs7RUFBQTtBQWtCQTs7RUFBQTtBQVdBOztFQUFBO0FBd0ZBOztFQUFBO0FBa0NBOztFQUFBO0FBWUE7O0VBQUE7QUFVQTs7RUFBQTtBQWdCQTs7RUFBQTtBQWlCQTs7RUFBQTtBQTJFQTs7RUFBQTtBQWlGQTs7RUFBQTtBQXlCQTtBQVlBOztFQUFBO0FBd0JBOztFQUFBO0FBK0JBOztFQUFBO0FBcUJBOztFQUFBO0FBNENBOztFQUFBO0FBMkJBOztFQUFBO0FDN2tCQTs7RUFBQTtBQWlCQTs7RUFBQTtBQWNBOztFQUFBO0FBS0E7O0VBQUE7QUFVQTs7RUFBQTtBQUtBOztFQUFBO0FBaUJBOztFQUFBO0FBV0E7O0VBQUE7QUF3RkE7O0VBQUE7QUFrQ0E7O0VBQUE7QUFZQTs7RUFBQTtBQVVBOztFQUFBO0FBZ0JBOztFQUFBO0FBaUJBOztFQUFBO0FBMkVBOztFQUFBO0FBaUZBOztFQUFBO0FBeUJBO0FBWUE7O0VBQUE7QUF3QkE7O0VBQUE7QUErQkE7O0VBQUE7QUFxQkE7O0VBQUE7QUE0Q0E7O0VBQUE7QUEyQkE7O0VBQUE7QUNwbEJBOztFQUFBO0FBSUE7QUFDQTs7O0VBR0k7QU5pS0o7O0FNOUpBO0VBQ0k7QU5pS0o7O0FNOUpBO0FBQ0E7O0VBRUk7QU5pS0o7O0FNOUpBO0FBQ0E7Ozs7Ozs7Ozs7Ozs7O0VBY0k7QU5pS0o7O0FNOUpBO0FBQ0E7RUFDSTtFQUNBO0FOaUtKOztBTTlKQTtBQUNBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7QU5pS0o7O0FNOUpBO0FBQ0E7O0VBRUk7QU5pS0o7O0FNOUpBO0FBQ0E7RUFDSTtVQUFBO0FOaUtKOztBTTlKQTtBQUNBOztFQUVJO0VBQ0E7QU5pS0o7O0FNOUpBO0FBQ0E7RUFDSTtBTmlLSjs7QU05SkE7QUFDQTs7OztFQUlJO0FOaUtKOztBTTlKQTtBQUVJO0VBRUk7QU4rSlI7QU01Skk7RUFFSTtBTjZKUjs7QU16SkE7QUFDQTtFQUNJO0lBQ0k7WUFBQTtJQUNBO1lBQUE7SUFDQTtJQUNBO0VONEpOO0FBQ0Y7QU9wUUE7Ozs7Ozs7Ozs7RUFBQTtBQ2tKQTs7RUFBQTtBQ3hERTtFQU1JO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFVQztFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQXFCSztFQUFBO0FUNEtaOztBVTFTQTtFQUNJO0VBQ0E7QVY2U0o7O0FVMVNBO0VBQ0ksa0NOY1c7RU1iWDtFQUNBO0FWNlNKOztBVTFTQTs7RUFFSTtFQUNBO0VBRUEsa0NOSVc7RU1IWCxrQk5LYztFTUpkLGdCTktlO0VNSmYsY05QVTtBSm1UZDtBVTFTSTs7RUFDSTtBVjZTUjtBVTFTSTs7OztFQUVJLGNOZ0RlO0FKOFB2Qjs7QVd6Tkk7RUFDSTtFQUNBO0VBQ0EsY1B2R007QUptVWQ7QVcxTlE7RUFDSSxjUDFHRTtBSnNVZDtBV3pOUTtFQUNJLGNQOUdFO0FKeVVkO0FXeE5RO0VBQ0ksY1B6SE07QUptVmxCO0FXdk5RO0VBQ0ksY1A3SE07QUpzVmxCO0FXdE5RO0VBQ0ksY1AzRFc7QUptUnZCOztBVXJUQTtFQUNJO0FWd1RKOztBVXJUQTs7RUFHSSxpQ04zQmE7QUprVmpCOztBVW5UQTtFQUNJO0lBQ0k7RVZzVE47RVduV0U7O0dBQUE7RUFHQTtJQUNJO0lBQ0E7RVhxV047RVdqV007SUFDSTtFWG1XVjtFVzNWRTtJQUNJO0lBQ0E7RVg2Vk47RVcxVkU7SUFDSTtJQUNBO0lBRUEsZ0JOUmM7RUxtV3BCO0VXeFZFO0lBQ0k7SUFDQTtJQUVBLGdCTmZjO0VMd1dwQjtFV3RWRTtJQUNJO0lBQ0E7SUFFQSxnQk50QmM7RUw2V3BCO0VXcFZFO0lBQ0k7SUFDQTtJQUVBLGdCTjdCYztFTGtYcEI7RVdsVkU7SUFDSTtJQUNBO0VYb1ZOO0FBQ0Y7QVVwVkE7RUFDSTtJQUNJO0VWc1ZOO0FBQ0Y7QVVuVkE7RUFDSTtJQUNJO0VWcVZOO0FBQ0Y7QVlqWUE7OzZFQUFBO0FBSUE7O0VBQUE7QUFJQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0FaaVlKOztBWTdYQTtFQUFxQjtBWmlZckI7O0FZL1hBOzZFQUFBO0FBR0E7RUFDSSwyQkNoQzZDO0VEaUM3QyxXQ3pCNkM7RUQwQjdDO0FaaVlKOztBWTdYQTtBQUNBO0VBQ0ksY0NsQzZDO0VEbUM3QyxxQlJtTG9DO0FKNk14Qzs7QVk1WEE7QUFLQTtBQUNBOztFQUVJLGNDL0M2QztBYjBhakQ7O0FZdlhBOzs7RUFBQTtBQUtBO0VBQ0ksWVJnS2lCO0VRL0pqQjtFQUNBO0VBQ0E7RUFDQSwyQkNuRTZDO0VEb0U3QztFQUNBLFdDN0Q2QztBYnNiakQ7O0FZclhBOztFQUFBO0FBSUE7QUFDQTtFQUNJO0VBQ0E7QVp1WEo7O0FZcFhBO0VBQ0k7RUFDQSxXUitJOEI7RVE5STlCO0VBQ0E7S0FBQTtBWnVYSjs7QVluWEE7QUFDQTtFQUNJO0Fac1hKOztBY2xZQTs7NkVBQUE7QUFJQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQSxvQlYrQjZDO0VVOUI3QztFQUNBLGdCVndDNkM7RVV2QzdDO0VBQ0E7RUFDQTtFQUNBO0VBQ0EsNENWNUI2QztFVTZCN0MsaUJWakM2QztFVWtDN0M7RUFDQTtFQUNBO0VDL0dIO0VBQ0E7QWZvZkQ7O0FjbFlBO0VBQTRCO0Fkc1k1Qjs7QWNwWUE7O0VBQUE7QUFJQTtFQUNJO0VBQ0E7QWRzWUo7O0FjbllBO0FBQ0E7RUFDSTtBZHNZSjs7QWNqWUE7NkVBQUE7QUFFQTtFQUNJO0Fkb1lKO0FjbFlJO0VBQ0ksa0JEM0h5QztBYitmakQ7O0FjaFlBOztFQUFBO0FBSUE7RUFDSSx5QkR0SDZDO0VDdUg3QyxXRHJJNkM7QWJ1Z0JqRDtBY3pYSTtFQUNJO0FkMlhSOztBY3ZYQTtBQUNBO0VBQ0kseUJWNUU2QztFVTZFN0MsV0R0SjZDO0FiZ2hCakQ7O0FjdFhBO0FBQ0E7O0VBRUkseUJWbEY2QztFVW1GN0MsV0Q5SjZDO0FidWhCakQ7O0FjclhBOztFQUFBO0FBSUE7RUFDSSx5QlZ4TGE7RVV5TGIsY1YzTGU7QUprakJuQjtBY3BYSTtFQUdJLGtCRDlLeUM7QWJraUJqRDtBY2xYUTtFQUNJLGtCRGpMcUM7QWJxaUJqRDtBY2hYSTtFQUNJO0Fka1hSOztBYzlXQTtBQUNBO0VBQ0kseUJWaE5jO0VVaU5kLGNWOU1hO0FKK2pCakI7O0FjN1dBO0FBQ0E7O0VBRUkseUJWdk5lO0VVd05mLGNWdE5hO0FKc2tCakI7O0FjNVdBOztFQUFBO0FBSUE7RUFDSSx5QlY5TmU7RVUrTmYsY1ZoT2E7QUo4a0JqQjtBYzNXSTtFQUdJLGtCRHJOeUM7QWJna0JqRDtBY3pXUTtFQUNJLGtCRHhOcUM7QWJta0JqRDtBY3ZXSTtFQUNJO0FkeVdSOztBY3JXQTtBQUNBO0VBQ0kseUJWNUk2QztFVTZJN0MsY1ZyUGE7QUo2bEJqQjs7QWNwV0E7QUFDQTs7RUFFSSx5QlZsSjZDO0VVbUo3QyxjVjdQYTtBSm9tQmpCOztBY25XQTs7RUFBQTtBQUlBO0VBQ0k7RUFDQTtFQUNBLG9CVnpKNkM7RVUwSjdDO0FkcVdKO0FjbldJO0VBQ0ksV1YvSnlDO0VVZ0t6QyxZVi9KeUM7RVVnS3pDO0tBQUE7RUFDQTtLQUFBO0FkcVdSOztBY2hXQTs7RUFBQTtBQUtJO0VBQ0k7RUFDQTtFQUNBO0VBQ0EsWVZ6S3lDO0VVMEt6QyxXVjVLeUM7RVU2S3pDLFVWOUt5QztFVStLekMseUJWaFNTO0VVaVNUO0FkaVdSOztBYzdWQTtBQUlRO0VBQ0k7QWQ2Vlo7O0FjeFZBOztFQUFBO0FBSUE7RUFDSSx5QkQvUTZDO0VDZ1I3QyxXRDdSNkM7QWJ1bkJqRDtBY3ZWSTtFQUNJO0FkeVZSOztBY3JWQTtBQUNBO0VBQ0kseUJWdk02QztFVXdNN0MsV0R4UzZDO0FiZ29CakQ7O0FjcFZBO0FBQ0E7O0VBRUkseUJWN002QztFVThNN0MsV0RoVDZDO0FidW9CakQ7O0FjblZBOzs7RUFBQTtBQUtBOzs7O0VBSUkseUJEdFQ2QztFQ3VUN0MsV0RwVTZDO0FieXBCakQ7O0FjaFZBOzZFQUFBO0FBR0E7RUFDSTtFQUNBLGlCVm5SNkM7RVVvUjdDLDRDVmhSNkM7QUprbUJqRDs7QWM5VUE7RUFDSTtFQUNBLGlCVnpSNkM7RVUwUjdDLDRDVnRSNkM7QUp1bUJqRDs7QWM1VUE7NkVBQUE7QUFHQTtFQUNJO0VBQ0EsZ0JEM1c2QztFQzRXN0M7RUFDQSxXRG5XNkM7QWJpckJqRDs7QWMxVUE7QUFDQTtFQUNJLFdEeFc2QztBYnFyQmpEOztBY3pVQTtBQUNBO0VBQ0ksV0Q5VzZDO0FiMHJCakQ7O0FjeFVBO0VBQ0k7RUFDQSxnQkQvWDZDO0VDZ1k3QztFQUNBLFdEdlg2QztBYmtzQmpEOztBY3ZVQTtBQUNBO0VBQ0ksV0Q1WDZDO0VDNlg3QyxxQlZ0UTZDO0FKZ2xCakQ7O0FjdlVBO0FBQ0E7RUFDSSxXRGxZNkM7RUNtWTdDO0FkMFVKOztBZ0J4b0JBOzs2RUFBQTtBQUlBO0VBQ0U7RUFDQTtFQUNBO0FoQjBvQkY7O0FnQnJvQkE7NkVBQUE7QUFHQTtFQUNFO0VBQ0E7QWhCdW9CRjs7QWdCbm9CQTtFQUNFO0VBQ0E7QWhCc29CRjs7QWdCbG9CQTtFQUNFO0VBQ0E7QWhCcW9CRjs7QWdCam9CQTtBQUNBO0VBRUU7SUFBZ0I7RWhCb29CaEI7RWdCbG9CQTtJQUFrQjtFaEJxb0JsQjtFZ0Jub0JBO0lBQWtCO0VoQnNvQmxCO0FBQ0Y7QWdCbm9CQTs7RUFBQTtBQUlBOzs7RUFFZ0M7QWhCcW9CaEM7O0FnQmxvQkE7NkVBQUE7QUFHQTs7O0VBQUE7QUE0QkE7NkVBQUE7QUFHQTtFQUNFLDRCSHRLK0M7RUd1Sy9DLGdCWnVGOEM7QUpvaEJoRDs7QWdCdm1CQTs2RUFBQTtBQUdBO0VBQ0UseUJIekorQztFRzBKL0MsMkNIckkrQztBYjh1QmpEOztBZ0JwbUJBOzZFQUFBO0FBR0E7OztFQUFBO0FBS0E7RUFDRSx5Qkh4SytDO0VHeUsvQyxjSHhMK0M7RUd5TC9DLDBDSHRKK0M7QWIydkJqRDs7QWdCam1CQTtFQUNFLFdIN0wrQztBYml5QmpEOztBZ0JobUJBO0VBQ0UseUJaMkQ4QztFWTFEOUMsMkNIaEsrQztBYm13QmpEOztBZ0IvbEJBO0VBQ0U7QWhCa21CRjs7QWdCOWxCQTtFQUNFO0FoQmltQkY7O0FnQjdsQkE7O0VBQUE7QUFJQTtFQUNFLHlCSHZNK0M7RUd3TS9DLFdIaE4rQztFR2lOL0MsMENIdEwrQztBYnF4QmpEOztBZ0IzbEJBO0VBQ0UsV0h0TitDO0Fib3pCakQ7O0FnQjFsQkE7RUFDRSx5QlpnQzhDO0VZL0I5QywyQ0hoTStDO0FiNnhCakQ7O0FnQm5sQkE7O0VBQUE7QUFJQTtFQUNFLHlCSGxPK0M7RUdtTy9DLFdINU8rQztFRzZPL0MsMENIbE4rQztBYnV5QmpEOztBZ0JqbEJBO0VBQ0UsV0hsUCtDO0FiczBCakQ7O0FnQmhsQkE7RUFDRSx5QlpVOEM7RVlUOUMsMkNINU4rQztBYit5QmpEOztBZ0J4a0JBOzZFQUFBO0FBR0E7O0VBQUE7QUFJQTs7RUFDK0I7QWhCMGtCL0I7O0FnQnhrQkE7RUFBaUM7QWhCNGtCakM7O0FnQjNrQkE7RUFBaUM7QWhCK2tCakM7O0FnQjdrQkE7O0VBQUE7QUFJQTtBQUNBO0VBRUU7O0lBQytCO0VoQitrQi9CO0VnQjdrQkE7SUFBaUM7RWhCZ2xCakM7RWdCL2tCQTtJQUFpQztFaEJrbEJqQztBQUNGO0FpQnQzQkE7OzZFQUFBO0FBSUE7O0VBQUE7QUFJQTtFQUNFLFdKUitDO0VJUy9DLDJCSmhCK0M7RUlpQi9DLGdCYitZK0M7RWE5WS9DLHlCYitZK0M7QUp1ZWpEOztBaUJsM0JBO0VBQ0UsZ0JKMkIrQztBYjAxQmpEOztBaUJsM0JBOztFQUFBO0FBU0E7NkVBQUE7QUFHQTs7RUFBQTtBQUlBO0VBQ0UsZ0JKTytDO0VJTi9DLGlCSk0rQztFSUwvQztBakI2MkJGOztBa0IxNEJBOzs2RUFBQTtBQUlBOzs7RUFBQTtBQUtBO0VBQ0U7RUFDQSxtQkx1QitDO0FibzNCakQ7O0FrQng0QkE7QUFDQTtFQUE0QixnQkxtQnFCO0FieTNCakQ7O0FrQno0QkE7NkVBQUE7QUFHQTtFQUNFO0VBQ0EsWWRnZ0IrQztFSTNhL0M7RVVuRkE7RUFDQTtFQUNBLHFCZDZmK0M7QUo4WWpEOztBa0J2NEJBOztFQUVFO0VBQ0E7RUFDQSxRZHVmK0M7RWN0Zi9DO0VBQ0E7QWxCMDRCRjs7QWtCdDRCQTtFQUNFO0VBQ0EsV2RnZitDO0FKeVpqRDs7QWtCcjRCQTtFQUNFO0VBQ0EsV2QwZStDO0FKOFpqRDs7QWtCbjRCQTs2RUFBQTtBQUdBOzs7RUFBQTtBQUtBO0VBQW9CO0FsQnE0QnBCOztBa0JuNEJBO0VBQ0U7RUFDQTtFQUNBLFlkOGQrQztFYzdkL0M7RUFDQTtFQUNBO0FsQnM0QkY7O0FrQmo0QkE7NkVBQUE7QUFHQTtFQUNFO0VBQ0EsYWRxZCtDO0VjcGQvQztFQUNBO0VBQ0E7QWxCbTRCRjs7QW1CLytCQztFQUNDO0FuQmsvQkY7O0FtQjkrQkE7RUFDQztFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtVQUFBO0VBQ0E7VUFBQTtFQUNBO1VBQUE7RUFDQTtVQUFBO0VBQ0E7VUFBQTtFQUNBO1VBQUE7QW5CaS9CRDs7QW9CejZCQTs7NkVBQUE7QUFJQTs7Ozs7RUFLSTtFQUNBO0VBQ0E7RUFDQTtBcEIyNkJKOztBb0J2NkJBOztFQUFBO0FBSUE7RUFBWTtBcEIwNkJaOztBb0J4NkJBOztFQUFBO0FBSUE7RUFBYTtBcEIyNkJiOztBb0J6NkJBOzs7O0VBQUE7QUFNQTtFQUNJO0VBQ0E7QXBCMjZCSjs7QW9CeDZCQTs7RUFBQTtBQUlBO0VBQWU7QXBCMjZCZjs7QW9CejZCQTs7RUFBQTtBQUlBOztFQUNzRDtBcEI0NkJ0RDs7QW9CejZCQTs7RUFBQTtBQUlBOztFQUNzRDtBcEI0NkJ0RDs7QW9CMTZCQTs7RUFBQTtBQUlBOztFQUNpQztBcEI2NkJqQzs7QW9CMzZCQTs7RUFBQTtBQUlBOztFQUM4QjtBcEI4NkI5Qjs7QW9CNTZCQTs7RUFBQTtBQUlBO0VBQ0k7RUFDQTtFQUNBO0FwQjg2Qko7O0FvQjE2QkE7Ozs7NkVBQUE7QUFNQTs7RUFBQTtBQUlBOztFQUNlO0FwQjQ2QmY7O0FvQjE2QkE7RUFDSTtFQUNBO0FwQjY2Qko7O0FvQjE2QkE7OztFQUdJO0VBQ0E7RUFDQTtFQUNBLG1CUHhLNkM7RU95SzdDLGNoQnhNYTtFZ0J5TWIsZVBuTTZDO0VPb003QyxnQmhCc0g2QztFZ0JySDdDLGtDaEIvTFc7RWdCZ01YLHlCaEJ5SDZDO0VnQnhIN0M7RUFDQTtFQUNBO0FwQjY2Qko7O0FvQno2QkE7Ozs7O0VBQUE7QUFPQTs7RUFFSSxZaEJ1RzZDO0VnQnRHN0M7RUFDQTtBcEIyNkJKOztBb0J2NkJBO0FBQ0E7O0VBQ3lCLGlCaEIrRndCO0FKNDBCakQ7O0FvQno2QkE7O0VBQUE7QUFJQTs7O0VBR0ksY2hCeUY2QztFZ0J4RjdDLGlCaEJ3RjZDO0VnQnZGN0M7QXBCMjZCSjs7QW9CdjZCQTs7RUFDbUI7QXBCMjZCbkI7O0FvQno2QkE7QUFDQTs7O0VBR0k7RUFDQSx5QmhCb0Y2QztFZ0JuRjdDLGNoQjVQYTtFZ0I2UGIsa0JoQjZFNkM7QUorMUJqRDs7QW9CeDZCQTtBQUNBOzs7RUFHSSx5QlB0TzZDO0VPdU83QyxXUHBQNkM7RU9xUDdDLHFCUHZQNkM7QWJrcUNqRDs7QW9CdjZCQTs7RUFBQTs7QUFVQTtFQUNJLGNoQnJSZTtFZ0JzUmYsNENoQmlFNkM7RWdCaEU3QyxnQmhCaUU2QztFZ0JoRTdDLGtDaEI3UVc7QUp1ckNmOztBb0I5NkJBO0VBQ0ksY2hCclJlO0VnQnNSZiw0Q2hCaUU2QztFZ0JoRTdDLGdCaEJpRTZDO0VnQmhFN0Msa0NoQjdRVztBSnVyQ2Y7O0FvQmo2QkE7RUFDSSxjaEJsU2U7RWdCbVNmLDRDaEJvRDZDO0VnQm5EN0MsZ0JoQm9ENkM7RWdCbkQ3QyxrQ2hCMVJXO0FKcXNDZjs7QW9CLzZCQTtFQUNJLGNoQmxTZTtFZ0JtU2YsNENoQm9ENkM7RWdCbkQ3QyxnQmhCb0Q2QztFZ0JuRDdDLGtDaEIxUlc7QUpxc0NmOztBb0J2NkJBOzZFQUFBO0FBR0E7O0VBQUE7QUFJQTs7RUFFSSxjUDlRNkM7RU8rUTdDLHFCUC9RNkM7QWJ1ckNqRDs7QW9CcDZCQTs7RUFBQTtBQUlBOztFQUVJLGNQM1I2QztFTzRSN0MscUJQNVI2QztBYmtzQ2pEOztBb0JsNkJBOztFQUFBO0FBSUE7RUFDSTtBcEJvNkJKOztBb0I1NUJBOzZFQUFBO0FBR0E7RUFDSTtFQUNBO0VBQ0EsbUJoQlc2QztFSTNOL0M7RVlrTkU7RUFDQTtBcEI4NUJKOztBb0IzNUJBO0VBQXFEO0FwQis1QnJEOztBb0I3NUJBO0VBQWdELGNQOVVDO0FiK3VDakQ7O0FvQi81QkE7O0VBQUE7QUFJQTtFWjlORTtBUmdvQ0Y7O0FvQjc1QkE7NkVBQUE7QUFHQTtFQUNJLG1CaEJQNkM7RWdCUTdDO0VBQ0E7QXBCKzVCSjs7QW9CNTVCQTs7RVo1T0U7QVI2b0NGOztBb0I5NUJBO0VBQXFEO0FwQms2QnJEOztBb0IvNUJBOzs2RUFBQTtBQUlBOztFQUVJO0VBQ0EsWWhCdEI2QztFZ0J1QjdDLFdoQnZCNkM7RWdCd0I3QztFQUNBLGdCaEJ4QjZDO0VnQnlCN0M7RUFDQTtFQUNBO0VBQ0EseUJoQjNCNkM7RWdCNEI3QztFQUNBO0VBQ0E7RUFDQTtFQUNBO0FwQmk2Qko7O0FvQjc1QkE7RUFBWTtBcEJpNkJaOztBb0IvNUJBO0FBQ0E7O0VBRUkseUJoQnJDNkM7RWdCc0M3QztFQUNBLHFCUHRYNkM7QWJ3eENqRDs7QW9COTVCQTs7RUFBQTtBQUlBOzs7RUFHSSx5QlBqWTZDO0VPa1k3Qyx5QmhCOUM2QztBSjg4QmpEOztBb0I1NUJBO0FBQ0E7OztFQUdJLHlCaEJwRDZDO0FKbTlCakQ7O0FvQjM1QkE7O0VBQUE7QUFJQTtFWjVTRTtBUjBzQ0Y7O0FvQjc1QkE7RVo3U0U7QVI4c0NGOztBb0JoNkJBO0VaOVNFO0FSa3RDRjs7QW9CbDZCQTs7RUFBQTtBQUlBOztFQUVJLHlCUDdaNkM7RU84WjdDLHFCUDdhNkM7QWJpMUNqRDs7QW9CaDZCQTtFWjNURTtBUit0Q0Y7O0FvQm42QkE7RVo1VEU7QVJtdUNGOztBb0J0NkJBO0VaN1RFO0FSdXVDRjs7QW9CdjZCQTs2RUFBQTtBQUdBO0VBQ0ksK0NoQjdFNkM7RWdCOEU3QyxnQmhCN0U2QztFZ0I4RTdDLGlCaEI3RTZDO0VnQjhFN0MsY2hCN2NhO0VnQjhjYjtFQUNBLHlCaEIxSTZDO0FKbWpDakQ7QW9CcjZCSTs7O0VBR0k7QXBCdTZCUjs7QW9CbjZCQTs7NkVBQUE7QUFJQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0EsV2hCaEs2QztFZ0JpSzdDO0VBQ0E7RUFDQTtFQUNBLFdQcmQ2QztBYjAzQ2pEOztBb0JsNkJBOztFQUFBO0FBSUE7RUFBc0IsY1A5ZDJCO0FibTRDakQ7O0FvQm42QkE7O0VBQUE7QUFJQTtFQUE4QztBcEJzNkI5Qzs7QW9CcDZCQTs7RUFBQTtBQUlBO0VBQW9EO0FwQnU2QnBEOztBb0JyNkJBOztFQUFBO0FBSUE7RUFDSTtFQUNBO0FwQnU2Qko7O0FvQnA2QkE7RUFBaUM7QXBCdzZCakM7O0FxQjMzQ0E7OzZFQUFBO0FBSUE7RUFDRSxpQmpCcWQrQztFaUJwZC9DLGdCakIwZCtDO0FKbTZCakQ7O0FxQnozQ0E7RUFDRSxvQmpCZ2QrQztFaUIvYy9DLGdCakJxZCtDO0FKdTZCakQ7O0FxQngzQ0E7RUFDRSxpQmpCMmMrQztFaUIxYy9DLGdCakJnZCtDO0FKMjZCakQ7O0FxQnYzQ0E7RUFDRSxlakJ3YitDO0VpQnZiL0MsY2pCMmMrQztBSis2QmpEOztBcUJ0M0NBO0VBQ0UsZWpCbWIrQztFaUJsYi9DLGNqQnNjK0M7QUptN0JqRDs7QXFCcjNDQTtBQUNBO0VBQ0U7SUFBb0Isa0JqQmdiMkI7RUp5OEIvQztFcUJ4M0NBO0lBQXFCLGlCakJnYjBCO0VKMjhCL0M7RXFCMTNDQTtJQUFvQixlakJ5YTJCO0VKbzlCL0M7RXFCNTNDQTtJQUFxQixlakJ5YTBCO0VKczlCL0M7RXFCOTNDQTtJQUFzQixlakJ5YXlCO0VKdzlCL0M7QUFDRjtBcUIvM0NBO0FBQ0E7RUFDRTtJQUFxQixlakJrYTBCO0VKZytCL0M7RXFCajRDQTtJQUFvQixlakJrYTJCO0VKaytCL0M7RXFCbjRDQTtJQUFxQixlakJrYTBCO0VKbytCL0M7RXFCcjRDQTtJQUFzQixnQmpCa2F5QjtFSnMrQi9DO0FBQ0Y7QXFCcjRDQTs2RUFBQTtBQUdBO0VBQ0UsaUNqQjhhK0M7RWlCN2EvQztBckJzNENGOztBcUJqNENBOzZFQUFBO0FBR0E7RUFBcUI7QXJCbzRDckI7O0FxQmw0Q0E7Ozs7RUFBQTtBQU1BO0VBQ0U7RUFDQTtFQUNBO0VBQ0EscUJqQjZaK0M7RWlCNVovQztFQUNBLHlCakI0WitDO0VpQjNaL0MsK0JqQjRaK0M7RWlCM1ovQztBckJvNENGOztBcUIvM0NBOzZFQUFBO0FBR0E7O0VBQUE7QUFJQTtFQUFtQjtBckJpNENuQjs7QXFCLzNDQTs7RUFBQTtBQUlBO0VBQ0U7RUFDQTtBckJpNENGOztBcUI5M0NBOzs7O0VBQUE7QUFNQTs7RUFFRTtFQUNBO0VBQ0E7RUFDQSxhakI4WCtDO0VpQjdYL0M7QXJCZzRDRjs7QXFCNTNDQTtFQUNFO0VBQ0EsK0JqQjJYK0M7QUpvZ0NqRDs7QXFCNzNDQTtFQUNFO0VBQ0EsOEJqQnVYK0M7QUp5Z0NqRDs7QXNCeGhEQTs7NkVBQUE7QUFJQTtFQUNFO0VBQ0E7RUFDQSxtQlRDK0M7RVNBL0MsZ0JUekIrQztFUzBCL0MsMkJUdkIrQztFU3dCL0MsV1RWK0M7RVNXL0M7RUFDQTtFQUNBLGtCbEJxZCtDO0VrQnBkL0MseUJsQnFkK0M7QUpxa0NqRDs7QXNCcmhEQTs2RUFBQTtBQUdBOztFQUFBO0FBSUE7RUFDRSx5QlRoQitDO0VTaUIvQyxXVDVCK0M7QWJrakRqRDs7QXNCbGhEQTs7RUFBQTtBQUlBO0VBQ0UseUJUekIrQztFUzBCL0MsV1R0QytDO0FiMGpEakQ7O0FzQmhoREE7O0VBQUE7QUFJQTtFQUNFLHlCVGxDK0M7RVNtQy9DLFdUaEQrQztBYmtrRGpEOztBdUI5akRBOzs2RUFBQTtBQUlBO0VBQ0k7RUFDQTtFQUNBO0F2QmdrREo7O0F1QjVqREk7O0VBRUksOEJuQnVXUztBSnd0Q2pCOztBdUIzakRBOztFQUFBO0FBSUE7RUFBbUI7QXZCOGpEbkI7O0F1QjdqREE7RUFBdUI7QXZCaWtEdkI7O0F1Qi9qREE7RUFDSTtFQUNBO0VBQ0E7RUFDQSxXbkIwVmdCO0VtQnpWaEIsWW5CMlZpQjtFbUIxVmpCO0VBQ0E7RUFDQTtFQUNBO0F2QmtrREo7O0F1Qi9qREE7RUFBMkI7QXZCbWtEM0I7O0F1QmxrREE7RUFBNkI7QXZCc2tEN0I7O0F1QnJrREE7RUFBNkI7QXZCeWtEN0I7O0F1QnhrREE7RUFDSTtFQUNBO0F2QjJrREo7O0F1QnZrREk7RUFDSSxrQm5Cd1VZO0FKa3dDcEI7QXVCeGtEUTtFQUNJO0VBQ0E7QXZCMGtEWjs7QXVCcmtEQTs7RUFBQTtBQU1RO0VBQWE7QXZCc2tEckI7QXVCbGtEUTtFQUFhO0F2QnFrRHJCOztBdUJoa0RBOzZFQUFBO0FBR0E7O0VBQUE7QUFJQTtFQUNJLCtCbkJpVHVCO0VtQmhUdkI7QXZCaWtESjs7QXVCOWpEQTs7RUFBQTtBQUlBO0VBQ0k7QXZCZ2tESjs7QXVCN2pEQTtFQUNJLG1CVnhGNkM7RVV5RjdDO0VBQ0E7QXZCZ2tESjs7QXVCN2pEQTtFQUFxQztBdkJpa0RyQzs7QXdCanJEQTtFQUNFLHlCcEJnTndCO0VvQi9NeEIsNEJwQndNZ0I7RW9Cdk1oQjtFQUNBLGdCcEJEaUI7RW9CRWpCO0VBQ0EseUJwQmxCZTtBSnNzRGpCO0F3Qm5yREU7RUFDRTtBeEJxckRKO0F3QmxyREU7RUFDRSxxQnBCNkwyQjtFb0I1TDNCLGNwQjJMeUI7QUp5L0M3QjtBd0JsckRFO0VBQ0UscUJYUzZDO0VXUjdDLGNYUTZDO0FiNHFEakQ7O0F5QjF0REE7RUFBZ0I7QXpCOHREaEI7O0F5Qjl0RHNDO0VBQWM7RUFBZTtFQUFNO0VBQVE7RUFBUztFQUFPO0VBQWE7RUFBYTtFQUFrQjtFQUFzQjtFQUFtQjtFQUFnQjtFQUFpQztFQUEwQjtFQUFVO0F6Qmd2RDNROztBeUJodkQ4c0I7RUFBaUY7SUFBYztJQUFtQztFekJzdkQ5MEI7QUFDRjtBeUJ2dkQ0MkI7RUFBeUM7QXpCMHZEcjVCOztBeUIxdkR1NkI7RUFBOEI7QXpCOHZEcjhCOztBeUI5dkRvOUI7RUFBNEM7QXpCa3dEaGdDOztBeUJsd0Q2Z0M7RUFBcUI7RUFBZTtFQUFXO0VBQWE7RUFBYTtFQUFVO0VBQVc7RUFBWTtFQUFZO0VBQTZCO0VBQVc7QXpCZ3hEM3FDOztBeUJoeEQwckM7RUFBMkI7QXpCb3hEcnRDOztBeUJweER1dUM7RUFBMEI7QXpCd3hEandDOztBeUJ4eEQ4d0M7RUFBMkI7QXpCNHhEenlDOztBeUI1eERvekM7RUFBa0I7RUFBa0I7RUFBYztFQUFnQjtFQUFtQjtFQUFVO0VBQWtCO0VBQWdCO0VBQVU7RUFBWTtBekJ5eUQzOEM7O0F5Qnp5RHkrQztFQUEyQjtBekI2eURwZ0Q7O0F5Qjd5RHNoRDtFQUEwQjtFQUFvQjtFQUFXO0VBQStCO0VBQThCO0VBQXlCO0F6QnN6RHJxRDs7QXlCdHpEaXJEO0VBQWlDO0VBQWM7RUFBVztBekI0ekQzdUQ7O0F5QjV6RHN2RDtFQUFrQztFQUFlO0VBQWM7RUFBYztFQUFVO0F6Qm8wRDcwRDs7QXlCcDBEbTNEO0VBQWdCO0VBQWU7RUFBUTtFQUFPO0F6QjIwRGo2RDs7QXlCMzBEaTdEO0VBQWlEO0F6QiswRGwrRDs7QXlCLzBEMitEO0VBQXVCO0VBQW1CO0F6Qm8xRHJoRTs7QXlCcDFEK2hFO0VBQXlDO1VBQUE7QXpCdzFEeGtFOztBeUJ4MURzb0U7RUFBd0I7RUFBa0I7QXpCNjFEaHJFOztBeUI3MURnc0U7RUFBWTtFQUFxQjtFQUFlO0VBQWtCO0VBQVk7RUFBc0I7RUFBZ0I7RUFBVztFQUFzQjtFQUFxQjtFQUFrQjtFQUFvQjtFQUFtQjtFQUFlO0F6QjgyRGw3RTs7QXlCOTJEdTlFO0VBQXFCO0F6QmszRDUrRTs7QXlCbDNEcWdGO0VBQW9CO0F6QnMzRHpoRjs7QXlCdDNEa2pGO0VBQXFCO0F6QjAzRHZrRjs7QXlCMTNEZ21GO0VBQXVCO0F6QjgzRHZuRjs7QXlCOTNEa29GO0VBQXdCO0F6Qms0RDFwRjs7QXlCbDREc3FGO0VBQTBCO0lBQWM7SUFBTTtJQUFjO0lBQWlCO0V6QjA0RGp2RjtFeUIxNEQ0dkY7SUFBa0I7SUFBVztFekI4NER6eEY7RXlCOTREeXlGO0lBQTJCO0V6Qmk1RHAwRjtFeUJqNURzMUY7SUFBdUI7RXpCbzVENzJGO0V5QnA1RG0zRjtJQUE4QjtFekJ1NURqNUY7RXlCdjVEKzVGO0lBQXNDO0lBQWM7SUFBVztJQUFtQjtFekI2NURqL0Y7RXlCNzVENC9GO0lBQXFCO0lBQU07SUFBUTtJQUFPO0lBQWM7SUFBVztJQUFZO0lBQVk7SUFBeUI7SUFBZ0I7RXpCeTZEaG9HO0V5Qno2RDJvRztJQUEwQjtJQUFxQjtJQUFzQjtJQUFpQjtFekIrNkRqdUc7RXlCLzZENjJHO0lBQXlCO0lBQXFCO0lBQW1CO0lBQWE7SUFBc0I7RXpCczdEajlHO0FBQ0Y7QXlCdjdEZytHO0VBQWlCO0lBQUc7SUFBVTtFekI0N0Q1L0c7RXlCNTdEZ2hIO0lBQUs7SUFBVTtFekJnOEQvaEg7QUFDRjtBeUJqOERnK0c7RUFBaUI7SUFBRztJQUFVO0V6QjQ3RDUvRztFeUI1N0RnaEg7SUFBSztJQUFVO0V6Qmc4RC9oSDtBQUNGO0EwQjU3REE7RUFDRTtBMUI4N0RGOztBMEJwNkRBO0VBQ0U7QTFCdTZERjtBMEJwNkRJO0VBQ0U7QTFCczZETjtBMEJuNkRJO0VBQ0U7QTFCcTZETjtBMEJqNkRFO0VBQ0U7QTFCbTZESjs7QTJCejZEQTs7NkVBQUE7QUFJQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBM0IyNkRGOztBMkJ2NkRBO0VBQ0U7RUFDQSxldkJzWStDO0V1QnJZL0M7QTNCMDZERjs7QTJCdDZEQTs2RUFBQTtBQUdBO0VBQ0U7RUFDQTtFQUNBLFdkeEMrQztFY3lDL0MsZWRyRCtDO0FiNjlEakQ7O0EyQnA2REE7QUFDQTtFQUNFLGNkakQrQztFY2tEL0MscUJ2QjBYK0M7QUo2aURqRDs7QTJCbjZEQTtBQUNBO0VBQ0UsY2R4RCtDO0FiODlEakQ7O0EyQmw2REE7QUFDQTtFQUNFLFdkNUQrQztBYmkrRGpEOztBMkJoNkRBO0FBRUE7O0VBRUU7RUFDQTtFQVdBO0EzQnc1REY7QTJCajZERTs7RUFDRSxZdkJxVzZDO0V1QnBXN0MsZXZCc1c2QztFdUJyVzdDLFdkM0U2QztFYzRFN0M7RUFDQTtFQUNBO0EzQm82REo7QTJCOTVESTs7RUFDRSxjZHZGMkM7QWJ3L0RqRDs7QTJCMzVERTtFQUNFLFl2Qm1WNkM7QUoya0RqRDs7QTJCMTVEQTtBQUVBOztFQWNFO0EzQmc1REY7QTJCNTVERTs7RUFDRSxXdkIrVTZDO0V1QjlVN0M7RUFDQTtLQUFBO0VBQ0E7QTNCKzVESjtBMkI1NURJOztFQUNFO0EzQis1RE47QTJCeDVESTs7RUFDRTtBM0IyNUROOztBNEJ2L0RBOzs2RUFBQTtBQUtBO0VBQ0k7RUFDQTtFQUNBO0VBQ0EsbUJmUzZDO0FiKytEakQ7O0E0QnAvREE7QUFDQTtFQUFnQixnQmZJaUM7QWJvL0RqRDs7QTRCci9EQTs2RUFBQTtBQUdBO0VBQ0k7RUFDQTtFQUNBO0VBQ0EsZWY1RDZDO0VlNkQ3QyxpQnhCZ1o2QztFd0IvWTdDLGNmcEQ2QztFZXFEN0M7QTVCdS9ESjs7QTRCbC9EQTs2RUFBQTtBQUdBO0VBQ0k7RUFDQTtBNUJvL0RKOztBNEJoL0RBOztFQUFBO0FBSUE7RUFBNkI7QTVCbS9EN0I7O0E0QmgvREE7NkVBQUE7QUFHQTtFQUNJLDJCZnBGNkM7QWJza0VqRDs7QTRCNytEQTs2RUFBQTtBQUdBO0VBQ0ksMkJmN0Y2QztFZThGN0M7RUFDQSxXZnZGNkM7QWJza0VqRDs7QTRCMStEQTs2RUFBQTtBQUdBOztFQUNzQjtBNUI2K0R0Qjs7QTRCMStEQTs2RUFBQTtBQUdBOztFQUFBO0FBSUE7OztFQUdJO0E1QjIrREo7O0E0QnYrREE7O0VBQUE7QUFJQTs7RUFFSSxtQmYxRzZDO0VlMkc3QztFQUNBO0E1QnkrREo7O0E0QnIrREE7O0VBQUE7QUFJQTs7RUFFSSxnQnhCc1U2QztBSmlxRGpEOztBNEJsK0RBOzZFQUFBO0FBR0E7O0VBRUksZ0J4QjRUNkM7QUp3cURqRDs7QTRCaCtEQTs2RUFBQTtBQUdBOztFQUNtQztBNUJtK0RuQzs7QTRCaitEQTs7RUFDa0M7QTVCcStEbEM7O0E0QmwrREE7NkVBQUE7QUFHQTtFQUFtQjtBNUJxK0RuQjs7QTRCcCtEQTtFQUFtQixnQnhCcVQ4QjtBSm1yRGpEOztBNEJyK0RBOzZFQUFBO0FBR0E7O0VBQUE7QUFJQTtFQUFpQjtBNUJ1K0RqQjs7QTRCcitEQTtFQUNJO0VBQ0E7QTVCdytESjs7QTRCcitEQTs2RUFBQTtBQUlBO0FBQ0E7RUFFSTs7Ozs7SUFJMEI7RTVCcytENUI7RTRCcCtERTtJQUE2QjtFNUJ1K0QvQjtFNEJyK0RFOztJQUVJO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7RTVCdStETjtFNEJwK0RFOzs7SUFFNEQ7RTVCdStEOUQ7RTRCcitERTs7O0lBRTJEO0U1QncrRDdEO0U0QnQrREU7O0lBRUk7SUFDQTtFNUJ3K0ROO0FBQ0Y7QTRCcCtEQTtBQUVBO0VBQXFCO0E1QnMrRHJCOztBNEJwK0RBOztFQUMwRDtBNUJ3K0QxRDs7QTZCdnRFQTtFQUNDLHlCekJKaUI7QUo4dEVsQjs7QThCcHVFQTs7RUFFSTtFQUNBO0VBQ0E7QTlCdXVFSjs7QThCcHVFQTtFQUNJLGMxQkNhO0FKc3VFakI7O0E4QnB1RUE7RUFDSSxnQjFCYWdCO0FKMHRFcEI7O0E4QnB1RUE7RUFDSTtBOUJ1dUVKOztBOEJwdUVBO0VBQ0k7RUFDQTtBOUJ1dUVKOztBK0JwdkVBO0VBQ0k7QS9CdXZFSjs7QStCcHZFQTs7RUFFSTtBL0J1dkVKO0ErQnJ2RUk7O0VBQWE7QS9CeXZFakI7O0ErQnR2RUE7RUFDSSx5QjNCYmU7QUpzd0VuQjs7QStCdHZFQTtFQUNJLGlCM0J3Q2E7RTJCdkNiO0VBQ0E7QS9CeXZFSjs7QStCdHZFQTtFQUNJLGlCM0JtQ1c7RTJCbENYO0VBRUE7QS9Cd3ZFSjs7QStCcHZFQTtFQUVJO0lBQ0k7RS9Cc3ZFTjtFK0JwdkVFO0lBQ0ksZ0IzQkpjO0VKMHZFcEI7RStCbnZFRTtJQUNJO0UvQnF2RU47RStCbHZFRTtJQUNJO0UvQm92RU47QUFDRjtBK0JodkVBO0VBQ0k7SUFDSTtFL0JrdkVOO0FBQ0Y7QStCL3VFQTtFQUNJO0lBQ0k7RS9CaXZFTjtBQUNGO0ErQjV1RUE7RUFHSTtJQUNJO0UvQjR1RU47RStCeHVFRTtJQUNJO0UvQjB1RU47QUFDRjtBK0J2dUVBO0VBQ0k7SUFDSTtFL0J5dUVOO0FBQ0Y7QStCcnVFQTtFQUNJO0lBQ0ksaUIzQnBEUTtFSjJ4RWQ7QUFDRjtBZ0MxekVFO0VBQ0M7QWhDNHpFSDs7QVV0MEVBO0VBQ0k7RUFDQTtBVnkwRUo7O0FVdDBFQTtFQUNJLGtDTmNXO0VNYlg7RUFDQTtBVnkwRUo7O0FVdDBFQTs7RUFFSTtFQUNBO0VBRUEsa0NOSVc7RU1IWCxrQk5LYztFTUpkLGdCTktlO0VNSmYsY05QVTtBSiswRWQ7QVV0MEVJOztFQUNJO0FWeTBFUjtBVXQwRUk7Ozs7RUFFSSxjTmdEZTtBSjB4RXZCOztBV3J2RUk7RUFDSTtFQUNBO0VBQ0EsY1B2R007QUorMUVkO0FXdHZFUTtFQUNJLGNQMUdFO0FKazJFZDtBV3J2RVE7RUFDSSxjUDlHRTtBSnEyRWQ7QVdwdkVRO0VBQ0ksY1B6SE07QUorMkVsQjtBV252RVE7RUFDSSxjUDdITTtBSmszRWxCO0FXbHZFUTtFQUNJLGNQM0RXO0FKK3lFdkI7O0FVajFFQTtFQUNJO0FWbzFFSjs7QVVqMUVBOztFQUdJLGlDTjNCYTtBSjgyRWpCOztBVS8wRUE7RUFDSTtJQUNJO0VWazFFTjtFVy8zRUU7O0dBQUE7RUFHQTtJQUNJO0lBQ0E7RVhpNEVOO0VXNzNFTTtJQUNJO0VYKzNFVjtFV3YzRUU7SUFDSTtJQUNBO0VYeTNFTjtFV3QzRUU7SUFDSTtJQUNBO0lBRUEsZ0JOUmM7RUwrM0VwQjtFV3AzRUU7SUFDSTtJQUNBO0lBRUEsZ0JOZmM7RUxvNEVwQjtFV2wzRUU7SUFDSTtJQUNBO0lBRUEsZ0JOdEJjO0VMeTRFcEI7RVdoM0VFO0lBQ0k7SUFDQTtJQUVBLGdCTjdCYztFTDg0RXBCO0VXOTJFRTtJQUNJO0lBQ0E7RVhnM0VOO0FBQ0Y7QVVoM0VBO0VBQ0k7SUFDSTtFVmszRU47QUFDRjtBVS8yRUE7RUFDSTtJQUNJO0VWaTNFTjtBQUNGO0FpQzk2RUM7RUFDQztJQUNDO0VqQ2c3RUQ7QUFDRjtBaUM3NkVDO0VBQ0M7RUFDQTtFQUNBO0FqQys2RUY7O0FXeDZFSTtFQUNJO0VBQ0E7QVgyNkVSOztBV3g2RUk7RUFDSTtFQUNBO0VBRUEsZ0JOUmM7QUxrN0V0Qjs7QVd2NkVJO0VBQ0k7RUFDQTtFQUVBLGdCTmZjO0FMdzdFdEI7O0FXdDZFSTtFQUNJO0VBQ0E7RUFFQSxnQk50QmM7QUw4N0V0Qjs7QVdyNkVJO0VBQ0k7RUFDQTtFQUVBLGdCTjdCYztBTG84RXRCOztBV3A2RUk7RUFDSTtFQUNBO0FYdTZFUjs7QWlDNThFRTtFQUNDO0FqQys4RUg7O0FpQzM4RUU7RUFDQztBakM4OEVIOztBaUMxOEVFO0VBQ0M7QWpDNjhFSDs7QWlDejhFRTtFQUNDO0VBRUE7QWpDMjhFSDs7QWlDeDhFRTtFQUNDO0VBRUE7QWpDMDhFSDs7QWlDdjhFRTtFQUNDO0VBRUE7RUFDQTtBakN5OEVIOztBa0MvL0VBO0VBQ0k7QWxDa2dGSjtBa0MvL0VRO0VBQ0k7RUFDQTtBbENpZ0ZaO0FrQy8vRVE7RUFDSTtBbENpZ0ZaO0FrQzUvRVE7RUFDSSxTQWxCZ0I7QWxDZ2hGNUI7QWtDMy9FZ0I7RUFDSSxjOUJiSDtBSjBnRmpCO0FrQ3gvRVE7RUFDSTtFQUNBO0FsQzAvRVo7QWtDdC9FZ0I7RUFDSTtBbEN3L0VwQjtBa0NyL0VnQjtFQUNJO0FsQ3UvRXBCO0FrQ2wvRW9CO0VBQ0k7QWxDby9FeEI7QWtDai9Fb0I7RUFDSTtBbENtL0V4QjtBa0M3K0VvQjtFQUNJO0FsQysrRXhCO0FrQzMrRW9CO0VBQ0k7QWxDNitFeEI7O0FtQ3JoRkE7O0VBQUE7QUFJSTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0FuQ3VoRlI7QW1DcmhGUTtFQUNJO0FuQ3VoRlo7QW1DdGhGWTtFQUNJO0FuQ3doRmhCOztBbUNsaEZBOztFQUFBO0FBS1E7RUFFSTtFQUNBO0FuQ2toRlo7QW1DamhGWTtFQUNJLGlDL0IzQkM7RStCNEJELGMvQmlIVTtFK0JoSFYsaUIvQnVIYTtBSjQ1RTdCO0FtQzlnRlk7RUFDSTtBbkNnaEZoQjtBbUM3Z0ZZO0VBQ0k7QW5DK2dGaEI7QW1DOWdGZ0I7RUFDSSxjL0J0REg7QUpza0ZqQjtBbUM1Z0ZvQjtFQUNJLGMvQjNEUDtBSnlrRmpCOztBbUNoZ0ZBO0FBRUE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0EsbUIvQmhGZTtFK0JpRmY7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FuQ2tnRko7QW1DLy9FUTtFQUNJO0FuQ2lnRlo7QW1DOS9FUTtFQUNJO0FuQ2dnRlo7QW1DNy9FUTtFQUNJO0FuQysvRVo7QW1DMy9FSTs7RUFHSTtFQUNBO0VBQ0E7RUFDQSxtQi9CMkRpQztFK0IxRGpDO0VBQ0E7RUFDQTtBbkM0L0VSO0FtQ3ovRUk7RUFDSTtBbkMyL0VSOztBbUN2L0VBOztFQUFBO0FBS0E7RUFDSTtBbkN3L0VKO0FtQ3QvRUk7RUFDSTtFQUNBO0FuQ3cvRVI7O0FtQy8rRVk7RUFDSSxjL0IzSUc7QUo2bkZuQjtBbUNoL0VnQjtFQUNJLGMvQmxKRjtBSm9vRmxCO0FtQzkrRVk7RUFDSSxlL0JwR1M7RStCcUdULGdCL0JwR1c7RStCcUdYLGtDL0IxSUQ7RStCMklDLGlCL0JyR2dCO0VnQzNDL0I7QXBDaW9GRDtBb0Nob0ZDO0VBQ0MsNEJoQ0xZO0FKdW9GZDs7QW1DNStFQTtFQUlnQjtJQUNJLGUvQk5RO0krQk9SO0VuQzQrRWxCO0VtQ3QrRUU7SUFDSTtJQUNBO0lBQ0E7SUFDQSxnQi9CVnNCO0krQld0QjtJQUNBO0lBQ0E7SUFDQSxTL0JySmM7SStCc0pkO0lBQ0E7SUFDQTtFbkN3K0VOO0VtQ3QrRU07SUFDSTtFbkN3K0VWO0VtQ3IrRU07SUFDSTtFbkN1K0VWO0VtQ3ArRU07SUFDSTtFbkNzK0VWO0VtQ24rRU07SUFDSTtFbkNxK0VWO0VtQ2wrRU07SUFDSTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7RW5DbytFVjtFbUNsK0VVO0lBQ0k7RW5DbytFZDtFbUNsK0VjO0lBQ0k7RW5DbytFbEI7RW1DaitFYztJQUNJO0lBQ0E7SUFDQTtJQUNBO0VuQ20rRWxCO0VtQ2orRWtCO0lBRUksYy9CeEVFO0VKMGlGeEI7QUFDRjtBbUN6OUVBO0VBSWdCO0lBQ0ksZS9CbEZpQjtFSjBpRm5DO0VtQ2g5RUU7O0lBQUE7RUFHQTtJQUNJO0lBQ0E7SUFDQTtJQUNBO0VuQ2s5RU47RW1DLzhFRTs7SUFBQTtFQUdBO0lBQ0k7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFBQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0VuQ2k5RU47RW1DLzhFTTtJQUNJO0lBQUE7SUFDQTtJQUNBO0lBQ0E7SUFDQTtFbkNpOUVWO0VtQzk4RWM7SUFDSTtFbkNnOUVsQjtBQUNGO0FtQ243RUE7RUFJZ0I7SUFDSSxlL0IvSkU7RUppbEZwQjtBQUNGO0FtQ2w2RUE7RUFDSTtJQUNJO0lBQ0E7RW5DbzZFTjtFbUNsNkVFO0lBQ0k7SUFDQTtFbkNvNkVOO0FBQ0Y7QW1DNTZFQTtFQUNJO0lBQ0k7SUFDQTtFbkNvNkVOO0VtQ2w2RUU7SUFDSTtJQUNBO0VuQ282RU47QUFDRjtBcUMxdkZDO0VBQ0M7RUFDQTtFQUNBO0VBQ0EsZ0JqQ2tDMkI7RWlDakMzQjtFQUNBO0VBQ0E7RUFDQSxTakNvQm9CO0VpQ25CcEI7RUFDQTtFQUNBO0FyQzR2RkY7QXFDMXZGRTtFQUNDO0FyQzR2Rkg7QXFDenZGRTtFQUNDO0FyQzJ2Rkg7QXFDeHZGRTtFQUNDO0FyQzB2Rkg7QXFDdnZGRTtFQUNDO0FyQ3l2Rkg7QXFDdHZGRTtFQUNDO0VBQ0E7QXJDd3ZGSDtBcUN0dkZHO0VBQ0M7QXJDd3ZGSjtBcUNwdkZJO0VBQ0M7RUFDQTtFQUNBO0VBQ0E7QXJDc3ZGTDtBcUNwdkZLO0VBRUMsY2pDMEdvQjtBSjJvRjFCO0FxQzN1RkU7RUFDQztFQUNBO0VBQ0E7QXJDNnVGSDtBc0MveUZDO0VBQ0M7QXRDaXpGRjtBcUMxdUZDO0VBQ0M7RUFDQTtFQUNBO0VBQ0E7QXJDNHVGRjtBcUN2dUZFO0VBQ0MsWWpDeEN1QztFaUN5Q3ZDLFdqQ3pDdUM7RWlDMEN2QztFQUNBO0VBQ0E7RUFDQSxvQ2pDNUNtQztFaUM2Q25DLGdCakM1Q3lDO0VpQzZDekM7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBckN5dUZIO0FxQ3Z1Rkc7O0VBR0M7RUFDQTtFQUNBO0VBQ0EsbUJqQ3dFcUM7RWlDdkVyQztFQUNBO0VBQ0E7QXJDd3VGSjtBcUNydUZHO0VBQ0M7QXJDdXVGSjtBcUNudUZJO0VBQ0M7QXJDcXVGTDtBcUNsdUZJO0VBQ0M7QXJDb3VGTDtBcUNqdUZJO0VBQ0M7QXJDbXVGTDtBcUMxdEZDO0VBQ0M7RUFDQTtFQUNBO0VBQ0E7RUFFQTtFQUNBO0VBRUE7RUFDQTtFQUNBO0VBQ0E7QXJDMHRGRjtBcUN4dEZFO0VBQ0M7RUFDQTtBckMwdEZIO0FxQ3p0Rkc7RUFDQztBckMydEZKO0FxQ3h0Rkc7RUFDQztFQUNBO0VBQ0E7RUFDQTtBckMwdEZKO0FxQ3h0Rkk7RUFFQztBckN5dEZMOztBcUM3c0ZBO0VBRUU7SUFDQztJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUFBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQSx5QmpDdExnQjtFSnE0RmpCO0VxQzVzRkE7SUFDQztJQUFBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtTQUFBO0VyQzhzRkQ7RXFDM3NGRTtJQUNDO0VyQzZzRkg7RXFDdHNGRDtJQUNDO0lBQ0E7SUFDQTtJQUNBO0VyQ3dzRkE7QUFDRjtBc0M5NEZFO0VBQ0M7RUFDQSw0QmxDTFc7QUpxNUZkOztBc0MzNEZFO0VBQ0M7QXRDODRGSDs7QXNDMTRGQztFQUVHO0lBQ0E7RXRDNDRGRjtFc0MxNEZDO0lBQ0M7RXRDNDRGRjtFc0MxNEZDO0lBQ0M7U0FBQTtFdEM0NEZGO0FBQ0Y7QXVDdDZGQztFQUNDO0VBQ0E7RUFFQTtFQUNBO0VBQ0E7T0FBQTtBdkN1NkZGOztBdUNqNkZFO0VBQ0M7QXZDbzZGSDtBdUNsNkZFO0VBQ0M7QXZDbzZGSDs7QXVDejRGQTtFQUtJO0lBQ0M7RXZDdzRGSDtFdUNqNEZBO0lBQ0M7SUFDQTtJQUNBO0lBQ0E7RXZDbTRGRDtFdUNqNEZDO0lBQ0M7SUFDQTtFdkNtNEZGO0FBQ0Y7QXdDbjhGQTs7RUFBQTtBQUdBO0VBQ0k7RUFDQSxtQnBDWGU7RW9DWWY7RUFFQTs7SUFBQTtBeENzOEZKO0F3Q244Rkk7RUFDSTtFQUNBO0VBQ0E7QXhDcThGUjtBd0NsOEZJO0VBQ0k7RUFDQTtFQUNBO0F4Q284RlI7QXdDajhGSTs7RUFFSTtFQUNBO0VBQ0E7RUFDQTtBeENtOEZSO0F3Q2g4Rkk7RUFDSTtFQUFBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBeENrOEZSO0F3Q2g4RlE7RUFDSTtFQUNBO0VBQ0E7QXhDazhGWjs7QXdDMzdGSTtFQUNJO0VBQ0E7RUFDQTtBeEM4N0ZSO0F3QzU3RlE7RUFDSTtFQUNBO0VBQ0E7QXhDODdGWjtBd0MxN0ZZO0VBRUksWW5DakNPO0VtQ2tDUCxZbkNqQ1E7RW1DbUNSO0VBQ0E7RUFDQTtFQUNBO0F4QzA3RmhCO0F3Q3g3RmdCO0VBQ0k7RUFDQTtFQUNBO0F4QzA3RnBCO0F1QzkrRkM7RUFJSTtJQUNDO0V2QzYrRko7RXVDMStGRztJQUNDO0V2QzQrRko7QUFDRjtBdUM5N0ZJO0VBREQ7SUFFRTtFdkNpOEZIO0FBQ0Y7O0F3Qy82RkE7RUFDSTtJQUNJLFlwQzFFYztFSjQvRnBCO0V3Q2g3RkU7SUFDSSxZcEM3RWM7RUorL0ZwQjtBQUNGO0F3Qy82RkE7RUFDSTs7SUFBQTtFQUdBO0lBQ0ksYXBDckZRO0lvQ3VGUjs7TUFBQTtFeENrN0ZOO0V3Qy82Rk07SUFDSTtJQUNBO0lBQ0E7RXhDaTdGVjtFd0M1NkZNO0lBQ0ksYXBDbkdJO0VKaWhHZDtFd0NsNkZVO0lBQ0k7SUFDQTtJQUNBO0V4Q282RmQ7QUFDRjtBdUMxOUZDO0VBR0U7SUFDQztFdkMwOUZGO0V1Q3g5Rkc7SUFDQztFdkMwOUZKO0V1Q3g5Rkc7SUFDQztFdkMwOUZKO0FBQ0Y7QXVDajlGQztFQUNDO0lBRUM7SUFDQTtFdkNrOUZEO0V1Qzk4RkM7SUFDQztFdkNnOUZGO0FBQ0Y7QXlDemtHQTtFQUNDO0F6QzJrR0Q7QXlDMWtHQztFQUNDO0VBQ0E7RUFDQTtFQUNBO0F6QzRrR0Y7QXlDemtHQztFQUNDO0VBQ0E7RUFDQTtFQUNBLGNyQ2RlO0VxQ2VmO0F6QzJrR0Y7QXlDemtHRTtFQUNDO0F6QzJrR0g7QXlDdmtHQztFQUNDO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBLGNyQzVCaUI7RXFDNkJqQjtBekN5a0dGO0F5Q3RrR0U7RUFDQztFQUNBO0F6Q3drR0g7QXlDcGtHQztFQUNDO0VBQ0E7RUFDQTtBekNza0dGO0F5Q25rR0M7RUFDQztFQUNBO0VBQ0E7QXpDcWtHRjs7QXlDamtHQTtFQUNDO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0F6Q29rR0Q7QXlDbmtHQztFQUNDO0F6Q3FrR0Y7QXlDcGtHRTtFQUNDO0VBQ0E7QXpDc2tHSDtBeUNua0dDO0VBQ0M7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0F6Q3FrR0Y7QXlDbGtHQztFQUNDO0VBQ0E7RUFDQTtFQUNBO09BQUE7QXpDb2tHRjs7QXlDL2pHQTtFQUVFO0lBQ0M7RXpDaWtHRDtFeUM5akdBO0lBQ0M7RXpDZ2tHRDtFeUM1akdEO0lBQ0M7RXpDOGpHQTtFeUMxakdBO0lBQ0M7RXpDNGpHRDtBQUNGO0F5Q3hqR0E7RUFDQztJQUNDO1NBQUE7RXpDMGpHQTtFeUN6akdBO0lBQ0M7SUFDQTtFekMyakdEO0FBQ0Y7QXlDdGpHQTtFQUVFO0lBQ0M7RXpDdWpHRDtFeUNwakdBO0lBQ0M7SUFBQTtJQUNBO0lBQXFCO0V6Q3VqR3RCO0V5Q25qR0E7SUFDQztJQUNBO0lBQUE7SUFBQTtFekNxakdEO0FBQ0Y7QTBDdHNHQTtFQUNJO0VBQ0E7RUFDQTtFQUNBLFl0Q3dNWTtFc0N2TVo7RUFDQTtFQUNBLGN0Q01VO0VzQ0xWLG1CdENEZTtFc0NFZjtFQUNBLGV0QzhMZTtFc0M3TGYsZ0J0QytMaUI7RXNDOUxqQixrQ3RDU1c7RXNDUlgsaUJ0QzRMaUI7QUo0Z0dyQjs7QTBDNXJHWTs7RUFDSTtFQUNBO0VBQ0E7QTFDZ3NHaEI7QTBDMXJHSTs7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0EsVXRDbUtTO0VzQ2xLVDtBMUM2ckdSOztBMEN0ckdBO0VBQ0k7RUFDQTtBMUN5ckdKO0EwQ3RyR0k7RUFDSTtFQUNBO0ExQ3dyR1I7QUE3dUdBO0VBQ0M7RUFDQTtBQSt1R0Q7O0FBM3VHQztFQUNDO0VBQ0E7RUFDQTtFQUNBO0FBOHVHRjtBQXh1R0E7RUFDQztFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QUEwdUdEOztBQXZ1R0E7RUFDQztFQUNBO0VBQ0E7QUEwdUdEO0FBeHVHQztFQUNDO0VBQ0E7RUFDQTtBQTB1R0Y7O0FBcnVHQztFQUNDO0VBQ0E7RUFDQTtBQXd1R0Y7QUF0dUdFO0VBQ0M7QUF3dUdIO0FBcHVHQztFQUNDO0FBc3VHRjs7QUFqdUdDO0VBQ0M7RUFDQTtFQUNBO0FBb3VHRjtBQWx1R0M7RUFDQyxjSXBEaUI7RUpxRGpCO0VBQ0Esa0NJM0NhO0VKNENiO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FBb3VHRjtBQWx1R0U7RUFDQyxjSWhFZ0I7RUppRWhCO0VBQ0E7RUFDQSxrQ0l4RFk7RUoyRFo7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBQWt1R0g7QUEvdEdDO0VBQ0MsY0lsRmU7RUptRmY7RUFDQSxrQ0l4RWE7RUp5RWI7RUFDQTtFQUNBO0VBQ0E7QUFpdUdGO0FBeHRHQztFQUNDO0VBQ0E7T0FBQTtBQTB0R0Y7O0FBcnRHQTtFQUVFO0lBQ0M7SUFDQTtFQXV0R0Q7QUFDRjtBQWp0R0E7RUFFQztJQUNDO0lBQ0E7SUFDQTtFQWt0R0E7RUE5c0dBO0lBQ0M7SUFDQTtJQUNBO0lBQ0E7RUFndEdEO0VBNXNHQztJQUNDO0VBOHNHRjtFQXZzR0E7SUFDQztJQUNBO0VBeXNHRDtFQXBzR0Q7SUFDQztJQUNBO0lBQ0E7SUFDQTtJQUNBO0VBc3NHQTtFQW5zR0Q7SUFDQztJQUNBO0lBQ0E7RUFxc0dBO0VBanNHQTtJQUNDO0lBQ0E7SUFDQTtFQW1zR0Q7RUFqc0dDO0lBQ0M7SUFBQTtJQUFBO0VBbXNHRjtBQUNGO0FBN3JHQTtFQUVFO0lBQ0M7RUE4ckdEO0FBQ0Y7QUExckdBO0VBQ0M7SUFDQztJQUNBO0VBNHJHQTtFQW5yR0Q7SUFDQztFQXFyR0E7RUFwckdBO0lBQ0M7SUFFQTtFQXFyR0Q7RUFockdBO0lBQ0M7SUFDQTtJQUNBO0VBa3JHRDtBQUNGO0FBN3FHQTtFQUNDO0lBQ0M7RUErcUdBO0VBM3FHQTtJQUNDO0lBQ0E7RUE2cUdEO0VBMXFHRDtJQUNDO0lBQ0E7SUFDQTtFQTRxR0E7RUF6cUdEO0lBQ0M7RUEycUdBO0VBMXFHQTtJQUNDO0lBRUE7RUEycUdEO0VBdHFHQTtJQUNDO0VBd3FHRDtFQXRxR0E7SUFDQztJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtFQXdxR0Q7QUFDRixDIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vLy4vcmVzb3VyY2VzL2RldmVsb3BtZW50L2Fzc2V0cy9zY3NzL3BhZ2VzL2NvbnRhY3Quc2NzcyIsIndlYnBhY2s6Ly8vLi92ZW5kb3IvbG9zdGlrYTg2L2ZyYW1lZS9zcmMvY29yZS9mdW5jdGlvbnMvX2Z1bmN0aW9ucy5zY3NzIiwid2VicGFjazovLy8uL3Jlc291cmNlcy9kZXZlbG9wbWVudC9hc3NldHMvc2Nzcy90aGVtZS9fZmx1aWRfc3BhY2UtdGhlbWUuc2NzcyIsIndlYnBhY2s6Ly8vLi92ZW5kb3IvbG9zdGlrYTg2L2ZyYW1lZS9zcmMvY29yZS9fZmx1aWRfc3BhY2Uuc2NzcyIsIndlYnBhY2s6Ly8vLi9yZXNvdXJjZXMvZGV2ZWxvcG1lbnQvYXNzZXRzL3Njc3MvdGhlbWUvX3ZhcmlhYmxlcy10aGVtZS5zY3NzIiwid2VicGFjazovLy8uL3ZlbmRvci9sb3N0aWthODYvZnJhbWVlL3NyYy9jb3JlL192YXJpYWJsZXMuc2NzcyIsIndlYnBhY2s6Ly8vLi92ZW5kb3IvbG9zdGlrYTg2L2ZyYW1lZS9zcmMvY29yZS9fcmVzb3VyY2VzL3Jlc2V0cy9faGFua3Jlc2V0LnNjc3MiLCJ3ZWJwYWNrOi8vLy4vdmVuZG9yL2xvc3Rpa2E4Ni9mcmFtZWUvc3JjL2NvcmUvbWl4aW5zL19ncmlkX21peC5zY3NzIiwid2VicGFjazovLy8uL3ZlbmRvci9sb3N0aWthODYvZnJhbWVlL3NyYy9jb3JlL19taXhpbnMuc2NzcyIsIndlYnBhY2s6Ly8vLi92ZW5kb3IvbG9zdGlrYTg2L2ZyYW1lZS9zcmMvY29yZS9taXhpbnMvX3NwYWNpbmdfbWl4aW5zLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vdmVuZG9yL2xvc3Rpa2E4Ni9mcmFtZWUvc3JjL2NvcmUvcGFydGlhbHMvX3R5cG9ncmFwaHkuc2NzcyIsIndlYnBhY2s6Ly8vLi92ZW5kb3IvbG9zdGlrYTg2L2ZyYW1lZS9zcmMvY29yZS9taXhpbnMvX3R5cG9ncmFwaHlfbWl4LnNjc3MiLCJ3ZWJwYWNrOi8vLy4vdmVuZG9yL2xvc3Rpa2E4Ni9mcmFtZWUvc3JjL2NvcmUvY29tcG9uZW50cy9fYnJlYWRjcnVtYnMuc2NzcyIsIndlYnBhY2s6Ly8vLi92ZW5kb3IvbG9zdGlrYTg2L2ZyYW1lZS9zcmMvY29yZS9jb21wb25lbnRzL192YXJpYWJsZXMuc2NzcyIsIndlYnBhY2s6Ly8vLi92ZW5kb3IvbG9zdGlrYTg2L2ZyYW1lZS9zcmMvY29yZS9jb21wb25lbnRzL19idXR0b24uc2NzcyIsIndlYnBhY2s6Ly8vLi9yZXNvdXJjZXMvZGV2ZWxvcG1lbnQvYXNzZXRzL3Njc3MvdGhlbWUvY29tcG9uZW50cy9fYnV0dG9uLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vdmVuZG9yL2xvc3Rpa2E4Ni9mcmFtZWUvc3JjL2NvcmUvY29tcG9uZW50cy9fY2FyZC5zY3NzIiwid2VicGFjazovLy8uL3ZlbmRvci9sb3N0aWthODYvZnJhbWVlL3NyYy9jb3JlL2NvbXBvbmVudHMvX2Rlc2NyaXB0aW9uX2xpc3Quc2NzcyIsIndlYnBhY2s6Ly8vLi92ZW5kb3IvbG9zdGlrYTg2L2ZyYW1lZS9zcmMvY29yZS9jb21wb25lbnRzL19kaXZpZGVyLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vcmVzb3VyY2VzL2RldmVsb3BtZW50L2Fzc2V0cy9zY3NzL3RoZW1lL2NvbXBvbmVudHMvX2Zvcm0uc2NzcyIsIndlYnBhY2s6Ly8vLi92ZW5kb3IvbG9zdGlrYTg2L2ZyYW1lZS9zcmMvY29yZS9jb21wb25lbnRzL19mb3JtLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vdmVuZG9yL2xvc3Rpa2E4Ni9mcmFtZWUvc3JjL2NvcmUvY29tcG9uZW50cy9faGVhZGluZy5zY3NzIiwid2VicGFjazovLy8uL3ZlbmRvci9sb3N0aWthODYvZnJhbWVlL3NyYy9jb3JlL2NvbXBvbmVudHMvX2xhYmVsLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vdmVuZG9yL2xvc3Rpa2E4Ni9mcmFtZWUvc3JjL2NvcmUvY29tcG9uZW50cy9fbGlzdHMuc2NzcyIsIndlYnBhY2s6Ly8vLi92ZW5kb3IvbG9zdGlrYTg2L2ZyYW1lZS9zcmMvY29yZS9jb21wb25lbnRzL19tZXNzYWdlX2JveC5zY3NzIiwid2VicGFjazovLy8uL3ZlbmRvci9sb3N0aWthODYvZnJhbWVlL3NyYy9jb3JlL3ZlbmRvci90aW5nbGUtbW9kYWwvdGluZ2xlLm1pbi5jc3MiLCJ3ZWJwYWNrOi8vLy4vdmVuZG9yL2xvc3Rpa2E4Ni9mcmFtZWUvc3JjL2NvcmUvY29tcG9uZW50cy9fbW9kYWwuc2NzcyIsIndlYnBhY2s6Ly8vLi92ZW5kb3IvbG9zdGlrYTg2L2ZyYW1lZS9zcmMvY29yZS9jb21wb25lbnRzL19wYWdpbmF0aW9uLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vdmVuZG9yL2xvc3Rpa2E4Ni9mcmFtZWUvc3JjL2NvcmUvY29tcG9uZW50cy9fdGFibGUuc2NzcyIsIndlYnBhY2s6Ly8vLi9yZXNvdXJjZXMvZGV2ZWxvcG1lbnQvYXNzZXRzL3Njc3MvdGhlbWUvY29tcG9uZW50cy9fdXRpbGl0aWVzLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vdmVuZG9yL2xvc3Rpa2E4Ni9mcmFtZWUvc3JjL2NvcmUvY29tcG9uZW50cy9fdXRpbGl0aWVzLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vdmVuZG9yL2xvc3Rpa2E4Ni9mcmFtZWUvc3JjL2NvcmUvcGFydGlhbHMvX2dyaWQuc2NzcyIsIndlYnBhY2s6Ly8vLi9yZXNvdXJjZXMvZGV2ZWxvcG1lbnQvYXNzZXRzL3Njc3MvdGhlbWUvcGFydGlhbHMvX2dyaWQuc2NzcyIsIndlYnBhY2s6Ly8vLi9yZXNvdXJjZXMvZGV2ZWxvcG1lbnQvYXNzZXRzL3Njc3MvdGhlbWUvcGFydGlhbHMvX3R5cG9ncmFwaHkuc2NzcyIsIndlYnBhY2s6Ly8vLi92ZW5kb3IvbG9zdGlrYTg2L2ZyYW1lZS9zcmMvY29yZS9wYXJ0aWFscy9fbmF2aWdhdGlvbi5zY3NzIiwid2VicGFjazovLy8uL3ZlbmRvci9sb3N0aWthODYvZnJhbWVlL3NyYy9jb3JlL3BhcnRpYWxzL19uYXYuc2NzcyIsIndlYnBhY2s6Ly8vLi9yZXNvdXJjZXMvZGV2ZWxvcG1lbnQvYXNzZXRzL3Njc3MvdGhlbWUvcGFydGlhbHMvX25hdi5zY3NzIiwid2VicGFjazovLy8uL3ZlbmRvci9sb3N0aWthODYvZnJhbWVlL3NyYy9jb3JlL3BhcnRpYWxzL19uYXZiYXIuc2NzcyIsIndlYnBhY2s6Ly8vLi9yZXNvdXJjZXMvZGV2ZWxvcG1lbnQvYXNzZXRzL3Njc3MvdGhlbWUvcGFydGlhbHMvX25hdmJhci5zY3NzIiwid2VicGFjazovLy8uL3Jlc291cmNlcy9kZXZlbG9wbWVudC9hc3NldHMvc2Nzcy90aGVtZS9wYXJ0aWFscy9faGVhZGVyLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vdmVuZG9yL2xvc3Rpa2E4Ni9mcmFtZWUvc3JjL2NvcmUvcGFydGlhbHMvX2hlYWRlci5zY3NzIiwid2VicGFjazovLy8uL3Jlc291cmNlcy9kZXZlbG9wbWVudC9hc3NldHMvc2Nzcy90aGVtZS9wYXJ0aWFscy9fZm9vdGVyLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vdmVuZG9yL2xvc3Rpa2E4Ni9mcmFtZWUvc3JjL2NvcmUvcGFydGlhbHMvX2Zvb3Rlci5zY3NzIl0sInNvdXJjZXNDb250ZW50IjpbIkBpbXBvcnQgXCIuLi90aGVtZS9mcmFtZWVfbG9hZGVyXCI7XHJcblxyXG4uY29udGFjdHNfX3dyYXBwZXJ7XHJcblx0ZGlzcGxheTogZ3JpZDtcclxuXHRncmlkLXJvdy1nYXA6IDE2cHg7XHJcbn1cclxuXHJcbi5jb250YWN0cy1kYXRhe1xyXG5cdCZfX2NvbnRhaW5lcntcclxuXHRcdGRpc3BsYXk6IGZsZXg7XHJcblx0XHRmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG5cdFx0cm93LWdhcDogMzJweDtcclxuXHRcdG9yZGVyOiA0O1xyXG5cdH1cclxuXHQmX19ncm91cHt9XHJcblx0Jl9fe31cclxufVxyXG5cclxuLnBhZ2VfX3RpdGxle1xyXG5cdG9yZGVyOiAyO1xyXG5cdGdyaWQtcm93OiAxO1xyXG5cdGdyaWQtY29sdW1uOiAxO1xyXG5cdHotaW5kZXg6IDE7XHJcblx0YWxpZ24tc2VsZjogZW5kO1xyXG5cdG1hcmdpbi10b3A6IGdldFNwYWNlKCdtJyk7XHJcbn1cclxuXHJcbi5oZXJvX19tZWRpYXtcclxuXHRvcmRlcjogMjtcclxuXHRncmlkLXJvdzogMTtcclxuXHRncmlkLWNvbHVtbjogMTtcclxuXHRcclxuXHRpbWd7XHJcblx0XHR3aWR0aDogNjQlO1xyXG5cdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGVYKCN7dmFyKC0tZ3JpZC1jb250YWluZXItLWNvbnRlbnQtcGFkZGluZywgMTVweCl9KTtcclxuXHRcdG1hcmdpbi1sZWZ0OiBhdXRvO1xyXG5cdH1cclxufVxyXG5cclxuLmNvbnRhY3QtZm9ybXtcclxuXHQmX19jb250YWluZXJ7XHJcblx0XHRvcmRlcjogNjtcclxuXHRcdGJhY2tncm91bmQtY29sb3I6ICNmZmY7XHJcblx0XHRwYWRkaW5nOiAyNHB4O1xyXG5cdFx0XHJcblx0XHQuZmUtYnV0dG9uLXN1Ym1pdHtcclxuXHRcdFx0dGV4dC1hbGlnbjogY2VudGVyO1xyXG5cdFx0XHRcclxuXHRcdH1cclxuXHR9XHJcblx0Jl9fdGl0bGV7XHJcblx0XHRmb250LXNpemU6IGZlZnMoc3RlcC0tdS0yKTtcclxuXHR9XHJcbn1cclxuXHJcbi5kYXRhLWdyb3Vwe1xyXG5cdCZfX2NvbnRhaW5lcntcclxuXHRcdGRpc3BsYXk6IGZsZXg7XHJcblx0XHRmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG5cdFx0cm93LWdhcDogOHB4O1xyXG5cdH1cclxuXHQmX19sYWJlbHtcclxuXHRcdGNvbG9yOiAkY29sb3ItLXNlY29uZGFyeTtcclxuXHRcdHRleHQtYWxpZ246IGxlZnQ7XHJcblx0XHRmb250LWZhbWlseTogJGZvbnQtcHJpbWFyeTtcclxuXHRcdGZvbnQtc2l6ZTogZmVmcyhzdGVwLS11LTEpO1xyXG5cdFx0Zm9udC1zdHlsZTogbm9ybWFsO1xyXG5cdFx0Zm9udC13ZWlnaHQ6IDI3NTtcclxuXHRcdGxpbmUtaGVpZ2h0OiAxMjUlOyAvKiAzMHB4ICovXHJcblx0XHRsZXR0ZXItc3BhY2luZzogLTAuMDNlbTtcclxuXHRcdHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcblx0XHRtYXJnaW4tYm90dG9tOiA4cHg7XHJcblx0XHRcclxuXHRcdCYtLXNtYWxse1xyXG5cdFx0XHRjb2xvcjogJGNvbG9yLS1zZWNvbmRhcnk7XHJcblx0XHRcdHRleHQtYWxpZ246IGxlZnQ7XHJcblx0XHRcdGZvbnQtZmVhdHVyZS1zZXR0aW5nczogJ2NsaWcnIG9mZiwgJ2xpZ2EnIG9mZjtcclxuXHRcdFx0Zm9udC1mYW1pbHk6ICRmb250LXByaW1hcnk7XHJcblx0XHRcdFxyXG5cdFx0XHRcclxuXHRcdFx0Zm9udC1zaXplOiBmZWZzKHN0ZXAtLWQtMik7XHJcblx0XHRcdGZvbnQtc3R5bGU6IG5vcm1hbDtcclxuXHRcdFx0Zm9udC13ZWlnaHQ6IDYwMDtcclxuXHRcdFx0bGluZS1oZWlnaHQ6IDEwMCU7IC8qIDEycHggKi9cclxuXHRcdFx0bGV0dGVyLXNwYWNpbmc6IDJweDtcclxuXHRcdFx0dGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxuXHRcdFx0bWFyZ2luLWJvdHRvbTogZ2V0U3BhY2UoJ3MnKTtcclxuXHRcdFx0ZGlzcGxheTogYmxvY2s7XHJcblx0XHR9XHJcblx0fVxyXG5cdCZfX3ZhbHVle1xyXG5cdFx0Y29sb3I6ICRjb2xvci0tcHJpbWFyeTtcclxuXHRcdHRleHQtYWxpZ246IGxlZnQ7XHJcblx0XHRmb250LWZhbWlseTogJGZvbnQtcHJpbWFyeTtcclxuXHRcdGZvbnQtc2l6ZTogZmVmcyhzdGVwLS11LTIpO1xyXG5cdFx0Zm9udC1zdHlsZTogbm9ybWFsO1xyXG5cdFx0Zm9udC13ZWlnaHQ6IDQwMDtcclxuXHRcdGxpbmUtaGVpZ2h0OiAxMDAlOyAvKiAzMnB4ICovXHJcblx0fVxyXG5cdCZfX3t9XHJcblx0Jl9fe31cclxufVxyXG5cclxuLmRhdGEtdmFsdWVfX3NvY2lhbHtcclxuXHRcclxuIFxyXG5cdHVse1xyXG5cdFx0ZGlzcGxheTogZmxleDtcclxuXHRcdGNvbHVtbi1nYXA6IDE2cHg7XHJcblx0fVxyXG59XHJcblxyXG5cclxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjY3cHgpe1xyXG5cdC5oZXJvX19tZWRpYSB7XHJcblx0XHRpbWcge1xyXG5cdFx0XHR3aWR0aDogdW5zZXQ7XHJcblx0XHRcdG1heC1oZWlnaHQ6IDQwMHB4O1xyXG5cdFx0fVxyXG5cdH1cclxuXHRcclxufVxyXG5cclxuXHJcbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KXtcclxuXHRcclxuXHQuY29udGFjdHNfX3dyYXBwZXJ7XHJcblx0XHRncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmciAxZnI7XHJcblx0XHRncmlkLXJvdy1nYXA6IGdldFNwYWNlKCd4bCcpO1xyXG5cdFx0anVzdGlmeS1pdGVtczogcmlnaHQ7XHJcblx0IFxyXG5cdH1cclxuXHQuY29udGFjdHMtZGF0YSB7XHJcblx0XHQmX19jb250YWluZXIge1xyXG5cdFx0XHRvcmRlcjogMjtcclxuXHRcdFx0Z3JpZC1jb2x1bW46IDE7XHJcblx0XHRcdGdyaWQtcm93OiAxO1xyXG5cdFx0XHRtYXJnaW4tdG9wOiBnZXRTcGFjZSgnNHhsJyk7XHJcblx0XHR9XHJcblx0XHRcclxuXHRcdCZfX2dyb3VwID4ge1xyXG5cdFx0XHQqe1xyXG5cdFx0XHRcdHRleHQtYWxpZ246IHJpZ2h0O1xyXG5cdFx0XHR9XHJcblx0XHQgXHJcblx0XHR9XHJcblx0fVxyXG5cdFxyXG5cdC5kYXRhLXZhbHVlX19zb2NpYWx7XHJcblx0XHR1bHtcclxuXHRcdFx0bWFyZ2luLWxlZnQ6IGF1dG87XHJcblx0XHRcdGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XHJcblx0XHR9XHJcblx0fVxyXG5cclxuXHRcclxuXHQuaGVyb19fbWVkaWEge1xyXG5cdFx0b3JkZXI6IDQ7XHJcblx0XHRncmlkLXJvdzogMTtcclxuXHRcdGdyaWQtY29sdW1uOiAyO1xyXG5cdFx0YWxpZ24tc2VsZjogY2VudGVyO1xyXG5cdFx0bWFyZ2luLXRvcDogZ2V0U3BhY2UoJzJ4bCcpO1xyXG5cdH1cclxuXHRcclxuXHQucGFnZV9fdGl0bGV7XHJcblx0XHRncmlkLXJvdzogMTtcclxuXHRcdGdyaWQtY29sdW1uOiAxO1xyXG5cdFx0YWxpZ24tc2VsZjogc3RhcnQ7XHJcblx0fVxyXG5cdFxyXG5cdC5jb250YWN0LWZvcm0ge1xyXG5cdFx0Jl9fY29udGFpbmVyIHtcclxuXHRcdFx0Z3JpZC1jb2x1bW46IDEvMztcclxuXHRcdFx0d2lkdGg6IDcyJTtcclxuXHRcdFx0anVzdGlmeS1zZWxmOiBjZW50ZXI7XHJcblx0XHRcdFxyXG5cdFx0XHQuZmUtYnV0dG9uLXN1Ym1pdHtcclxuXHRcdFx0XHR3aWR0aDogZml0LWNvbnRlbnQ7XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHR9XHJcblx0XHJcbn1cclxuXHJcbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEwMDBweCkge1xyXG5cdC5oZXJvX19tZWRpYSB7XHJcblx0XHRpbWcge1xyXG5cdFx0XHRtYXgtaGVpZ2h0OiA1NjBweDtcclxuXHRcdH1cclxuXHR9XHJcbn1cclxuXHJcbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDE0NDBweCkge1xyXG5cdC5jb250YWN0c19fd3JhcHBlciB7XHJcblx0XHRncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmciAxZnIgMWZyO1xyXG5cdFx0Z3JpZC1jb2x1bW4tZ2FwOiAzMnB4O1xyXG5cdH1cclxuXHRcclxuXHQuY29udGFjdHMtZGF0YSB7XHJcblx0XHQmX19jb250YWluZXIge1xyXG5cdFx0XHJcblx0XHR9XHJcblx0fVxyXG5cdFxyXG5cdC5oZXJvX19tZWRpYSB7XHJcblx0XHRtYXJnaW4tdG9wOiB1bnNldDtcclxuXHRcdGltZ3tcclxuXHRcdFx0bWF4LWhlaWdodDogOTYwcHg7XHJcblx0XHRcdFxyXG5cdFx0XHR0cmFuc2Zvcm06IHVuc2V0O1xyXG5cdFx0fVxyXG5cdH1cclxuXHRcclxuXHQuY29udGFjdC1mb3JtIHtcclxuXHRcdCZfX2NvbnRhaW5lciB7XHJcblx0XHRcdGdyaWQtcm93OiAxO1xyXG5cdFx0XHRncmlkLWNvbHVtbjogMztcclxuXHRcdFx0d2lkdGg6IDEwMCU7XHJcblx0XHR9XHJcblx0fVxyXG5cdFxyXG59XHJcblxyXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxNjgwcHgpIHtcclxuXHQuY29udGFjdHNfX3dyYXBwZXIge1xyXG5cdFx0Z2FwOiB1bnNldDtcclxuXHR9XHJcblx0XHJcblx0LmNvbnRhY3RzLWRhdGEge1xyXG5cdFx0Jl9fY29udGFpbmVyIHtcclxuXHRcdFx0bWFyZ2luLXJpZ2h0OiA2NHB4O1xyXG5cdFx0XHRhbGlnbi1zZWxmOiBlbmQ7XHJcblx0XHR9XHJcblx0fVxyXG5cdC5wYWdlX190aXRsZXtcclxuXHRcdG1hcmdpbi1yaWdodDogNjRweDtcclxuXHRcdG1hcmdpbi10b3A6IDI0JTtcclxuXHRcdGZvbnQtc2l6ZTogZmVmcyhzdGVwLS11LTUpO1xyXG5cdH1cclxuXHRcclxuXHQuaGVyb19fbWVkaWEge1xyXG5cdFx0bWFyZ2luLXRvcDogdW5zZXQ7XHJcblx0XHRpbWd7XHJcblx0XHRcdG1heC1oZWlnaHQ6IDEwMCU7XHJcblx0XHRcdFxyXG5cdFx0XHR0cmFuc2Zvcm06IHVuc2V0O1xyXG5cdFx0fVxyXG5cdH1cclxuXHRcclxuXHQuY29udGFjdC1mb3JtIHtcclxuXHRcdCZfX3RpdGxle1xyXG5cdFx0XHRmb250LXNpemU6IGZlZnMoc3RlcC0tdS0zKTtcclxuXHRcdH1cclxuXHRcdCZfX2NvbnRhaW5lciB7XHJcblx0XHRcdG1hcmdpbi10b3A6IHVuc2V0O1xyXG5cdFx0XHRoZWlnaHQ6IDEwMCU7XHJcblx0XHRcdGFsaWduLXNlbGY6IGVuZDtcclxuXHRcdFx0cGFkZGluZzogNTZweDtcclxuXHRcdFx0ZGlzcGxheTogZmxleDtcclxuXHRcdFx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuXHRcdFx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcblx0XHR9XHJcblx0fVxyXG59XHJcblxyXG4iLCJAdXNlIFwic2FzczptYXRoXCI7XG5cbi8qKlxuUmVwbGFjZSBgJHNlYXJjaGAgd2l0aCBgJHJlcGxhY2VgIGluIGAkc3RyaW5nYFxuQHBhcmFtIHtTdHJpbmd9ICRzdHJpbmcgLSBJbml0aWFsIHN0cmluZ1xuQHBhcmFtIHtTdHJpbmd9ICRzZWFyY2ggLSBTdWJzdHJpbmcgdG8gcmVwbGFjZVxuQHBhcmFtIHtTdHJpbmd9ICRyZXBsYWNlICgnJykgLSBOZXcgdmFsdWVcbkByZXR1cm4ge1N0cmluZ30gLSBVcGRhdGVkIHN0cmluZ1xuICovXG5cbkBmdW5jdGlvbiBzdHItcmVwbGFjZSgkc3RyaW5nLCAkc2VhcmNoLCAkcmVwbGFjZTogJycpIHtcbiAgICAkaW5kZXg6IHN0ci1pbmRleCgkc3RyaW5nLCAkc2VhcmNoKTtcblxuICAgIEBpZiAkaW5kZXgge1xuICAgICAgICBAcmV0dXJuIHN0ci1zbGljZSgkc3RyaW5nLCAxLCAkaW5kZXggLSAxKSArICRyZXBsYWNlICsgc3RyLXJlcGxhY2Uoc3RyLXNsaWNlKCRzdHJpbmcsICRpbmRleCArIHN0ci1sZW5ndGgoJHNlYXJjaCkpLCAkc2VhcmNoLCAkcmVwbGFjZSk7XG4gICAgfVxuXG4gICAgQHJldHVybiAkc3RyaW5nO1xufVxuXG5AZnVuY3Rpb24gZ2V0LXNjYWxlLXZhbHVlKCRrZXksJHNwYWNpbmctbWFwOiAkc3BhY2luZy1tYXApe1xuICAgICR2YWx1ZSA6IDA7XG5cbiAgICAka2V5IDogc3RyLXJlcGxhY2UoJGtleSwgJ3NjYWxlJywgJ3NtJyk7XG5cbiAgICBAaWYgbWFwLWhhcy1rZXkoJHNwYWNpbmctbWFwLCAka2V5KSB7XG4gICAgICAgICR2YWx1ZS1saXN0IDogbWFwLWdldCgkc3BhY2luZy1tYXAsICRrZXkpO1xuICAgICAgICAkdmFsdWUgOiBudGgoJHZhbHVlLWxpc3QsIDEpO1xuICAgIH1cblxuICAgIEByZXR1cm4gJHZhbHVlO1xufVxuXG5cbi8vLyBSZW1vdmUgdGhlIHVuaXQgb2YgYSBsZW5ndGhcbi8vLyBAcGFyYW0ge051bWJlcn0gJG51bWJlciAtIE51bWJlciB0byByZW1vdmUgdW5pdCBmcm9tXG4vLy8gQHJldHVybiB7TnVtYmVyfSAtIFVuaXRsZXNzIG51bWJlclxuQGZ1bmN0aW9uIHN0cmlwLXVuaXQoJG51bWJlcikge1xuICAgIEBpZiB0eXBlLW9mKCRudW1iZXIpID09ICdudW1iZXInIGFuZCBub3QgdW5pdGxlc3MoJG51bWJlcikge1xuICAgICAgICBAcmV0dXJuIG1hdGguZGl2KCRudW1iZXIsICAoJG51bWJlciAqIDAgKyAxKSk7XG4gICAgfVxuXG4gICAgQHJldHVybiAkbnVtYmVyO1xufVxuXG4vLyBVdGlsaXR5IGZ1bmN0aW9uIGZvciBkZXRlcm1pbmUgZm9udC1zaXplIHZhbHVlXG4vL0BmdW5jdGlvbiBnZXQtZm9udC1zaXplKCRmcy1mb250LWRlZmluaXRpb24sICRmcy1icmVha3BvaW50czogJGZvbnQtc2l6ZS1tYXApIHtcbi8vXG4vLyAgICAkZGVmaW5lZC1icmVha3BvaW50IDogJ2ZzbS0tMCc7XG4vLyAgICAkZnNtLWZvbnQtZGVmaW5pdGlvbjogbWFwLWdldCgkZnMtYnJlYWtwb2ludHMsICRkZWZpbmVkLWJyZWFrcG9pbnQpO1xuLy8gICAgJHZhbHVlIDogbnRoKCRmc20tZm9udC1kZWZpbml0aW9uLCAxKTtcbi8vXG4vLyAgICBAaWYgbWFwLWhhcy1rZXkoJGZzLWJyZWFrcG9pbnRzLCAkZnMtZm9udC1kZWZpbml0aW9uKSB7XG4vLyAgICAgICAgJGZzbS1mb250LWRlZmluaXRpb246IG1hcC1nZXQoJGZzLWJyZWFrcG9pbnRzLCAkZnMtZm9udC1kZWZpbml0aW9uKTtcbi8vICAgIH1cbi8vXG4vLyAgICBAaWYgdHlwZS1vZigkZnNtLWZvbnQtZGVmaW5pdGlvbikgPT0gXCJsaXN0XCIge1xuLy8gICAgICAgICR2YWx1ZSA6IG50aCgkZnNtLWZvbnQtZGVmaW5pdGlvbiwgMSk7XG4vLyAgICB9XG4vLyAgICBAZWxzZSB7XG4vLyAgICAgICAgJHZhbHVlIDogJGZzbS1mb250LWRlZmluaXRpb247XG4vLyAgICB9XG4vL1xuLy8gICAgQHJldHVybiAkdmFsdWU7XG4vL31cblxuLy8gVXRpbGl0eSBmdW5jdGlvbiBmb3IgZGV0ZXJtaW5lIGxpbmUtaGVpZ2h0IHZhbHVlXG4vL0BmdW5jdGlvbiBnZXQtbGluZS1oZWlnaHQoJGZzLWZvbnQtZGVmaW5pdGlvbiwgJGZzLWJyZWFrcG9pbnRzOiAkZm9udC1zaXplLW1hcCkge1xuLy9cbi8vICAgICRkZWZpbmVkLWJyZWFrcG9pbnQgOiAnZnNtLS0wJztcbi8vICAgICRmc20tZm9udC1kZWZpbml0aW9uOiBtYXAtZ2V0KCRmcy1icmVha3BvaW50cywgJGRlZmluZWQtYnJlYWtwb2ludCk7XG4vLyAgICAkdmFsdWUgOiBudGgoJGZzbS1mb250LWRlZmluaXRpb24sIDIpO1xuLy9cbi8vICAgIEBpZiBtYXAtaGFzLWtleSgkZnMtYnJlYWtwb2ludHMsICRmcy1mb250LWRlZmluaXRpb24pIHtcbi8vICAgICAgICAkZnNtLWZvbnQtZGVmaW5pdGlvbjogbWFwLWdldCgkZnMtYnJlYWtwb2ludHMsICRmcy1mb250LWRlZmluaXRpb24pO1xuLy8gICAgfVxuLy9cbi8vICAgIEBpZiB0eXBlLW9mKCRmc20tZm9udC1kZWZpbml0aW9uKSA9PSBcImxpc3RcIiB7XG4vLyAgICAgICAgJHZhbHVlIDogbnRoKCRmc20tZm9udC1kZWZpbml0aW9uLCAyKTtcbi8vICAgIH1cbi8vICAgIEBlbHNlIHtcbi8vICAgICAgICAkdmFsdWUgOiAxO1xuLy8gICAgfVxuLy9cbi8vICAgIEByZXR1cm4gJHZhbHVlO1xuLy99XG5cbi8vIENoYW5nZXMgdmFsdWUgdG8gYSBuZWdhdGl2ZSBmb3JtYXQuXG4vLyBBY2NlcHRzOiBweCwgZW0sIHJlbSwgJSwgdmFyKClcbkBmdW5jdGlvbiBuZWdhdGl2ZSgkdmFsdWUpe1xuICAgICRuZWdhdGl2ZSA6ICR2YWx1ZTtcbiAgICAvL0BkZWJ1ZyAkdmFsdWU7XG4gICAgQGlmIHR5cGUtb2YoJHZhbHVlKSA9PSBzdHJpbmcge1xuICAgICAgICBAaWYoc3RyLWluZGV4KCR2YWx1ZSwndmFyJykpe1xuICAgICAgICAgICAgJG5lZ2F0aXZlOiBjYWxjKCN7JHZhbHVlfSAqIC0xKTtcbiAgICAgICAgfVxuICAgIH1cbiAgICBAaWYgdHlwZS1vZigkdmFsdWUpID09IG51bWJlcntcbiAgICAgICAgJG5lZ2F0aXZlOiAtI3skdmFsdWV9O1xuICAgICAgICAvL0BkZWJ1ZyB1bml0KCR2YWx1ZSk7XG4gICAgfVxuICAgIC8vQGRlYnVnIHR5cGUtb2YoJHZhbHVlKTtcbiAgICBAcmV0dXJuICRuZWdhdGl2ZTtcbn1cblxuLyoqXG5FeGFtcGxlOlxuJGZvbnQtc2NhbGUgOiAoXG4gICAgICAgIGJhc2UgOiAxOHB4LFxuICAgICAgICBzdGVwLS0wICAgICAgICAgOiAxLjEyNSwgLy8gMThweFxuICAgICAgICBzdGVwLS11LTEgICAgICAgOiAxLjUwMCwgLy8gMjRweFxuICAgICAgICBzdGVwLS11LTIgICAgICAgOiAyLjAwMCwgLy8gMzJweFxuICAgICAgICBzdGVwLS11LTMgICAgICAgOiAyLjY4OCwgLy8gNDNweFxuICAgICAgICBzdGVwLS11LTQgICAgICAgOiAzLjU2MiwgLy8gNTdweFxuICAgICAgICBzdGVwLS1kLTEgICAgICAgOiAwLjg3NSwgLy8gMTRweFxuICAgICAgICBzdGVwLS1kLTIgICAgICAgOiAwLjYyNSwgLy8gMTBweFxuKSAhZGVmYXVsdDtcbiAqL1xuQGZ1bmN0aW9uIGZvbnQtc2NhbGUtdmFsdWUoJHN0ZXA6IHN0ZXAtLTAgKXtcbiAgICBAcmV0dXJuIG1hcC1nZXQoJGZvbnQtc2NhbGUsICRzdGVwKTtcbn1cblxuLyoqXG5mZWZzIC0+IEZyYW1FZUZvbnRTY2FsaW5nXG4gKi9cbkBmdW5jdGlvbiBmZWZzKCRzdGVwOiBzdGVwLS0wICl7XG4gICAgJHNjYWxlIDogZm9udC1zY2FsZS12YWx1ZSgkc3RlcCk7XG4gICAgLy8gcmVwbGFjZXM6XG4gICAgLy8gY2FsYygje3ZhcigtLWZvbnQtc2NhbGVfX2Jhc2UpfSAqICN7bWFwLWdldCgkZm9udC1zY2FsZSwgc3RlcC0tMCl9KVxuICAgIEByZXR1cm4gI3tjYWxjKCN7dmFyKC0tZm9udC1zY2FsZV9fYmFzZSl9ICogI3skc2NhbGV9KX07XG59XG5cblxuQGZ1bmN0aW9uIGdldFNwYWNlKCRzcGFjZUhhbmRsZTogJ3MnKXtcbiAgICBAcmV0dXJuIGdldEZlc3AoJHNwYWNlSGFuZGxlKTtcbiAgICAvL0ByZXR1cm4gI3sndmFyKC0tc3BhY2UtI3skc3BhY2VIYW5kbGV9KSd9O1xufVxuXG5AZnVuY3Rpb24gZ2V0RmVzcCgkc3BhY2VIYW5kbGU6ICdzJyl7XG4gICAgQHJldHVybiAjeyd2YXIoLS1mZXNwLSN7JHNwYWNlSGFuZGxlfSknfTtcbn1cblxuXG5AZnVuY3Rpb24gZmx1aWQtc3RlcC12YWx1ZS1ib3JkZXJzKCRmb250LXNpemUsICRkaXZpZGUtdmFsdWU6IDE2KXtcbiAgICAvLyAgLyogUGVyIHN0ZXAgc2l6ZSAqL1xuICAgIC8vICAtLWYtMC1taW46IDE7IC8vIE1pbiBmb250IHNpemVcbiAgICAvLyAgLS1mLTAtbWF4OiAyOyAvLyBNYXggZm9udCBzaXplXG4gICAgQHJldHVybiAgbWF0aC5kaXYoc3RyaXAtdW5pdCgkZm9udC1zaXplKSwgJGRpdmlkZS12YWx1ZSkgO1xuICAgIC8vQHJldHVybiAgc3RyaXAtdW5pdCgkZm9udC1zaXplKSAvICRkaXZpZGUtdmFsdWU7XG59XG5cbkBmdW5jdGlvbiBmZXNwLXN0ZXAtY3VycmVudCgkbWluLWZvbnQtc2l6ZSwgJG1heC1mb250LXNpemUpe1xuICAgIFxuICAgICRmZXNwLW1pbjogZmx1aWQtc3RlcC12YWx1ZS1ib3JkZXJzKCRtaW4tZm9udC1zaXplKSA7XG4gICAgJGZlc3AtbWF4OiBmbHVpZC1zdGVwLXZhbHVlLWJvcmRlcnMoJG1heC1mb250LXNpemUpICA7XG4gICAgXG4gICAgJGZlc3Atc2xvcGU6IG1hdGguZGl2KCRmZXNwLW1heCAtICRmZXNwLW1pbiwgJGZlc3AtbWF4LXcgLSAkZmVzcC1taW4tdyk7XG4gICAgLy8kZmVzcC1zbG9wZTogKCRmZXNwLW1heCAtICRmZXNwLW1pbikgLyAoJGZlc3AtbWF4LXcgLSAkZmVzcC1taW4tdyk7XG4gICAgJGZlc3AtaW5lcnNlY3Rpb246ICgtMSAqICRmZXNwLW1pbi13ICogJGZlc3Atc2xvcGUpICsgKCRmZXNwLW1pbik7XG4gICAgXG4gICAgJGNsYW1wLW1pbjogI3sxcmVtICogJGZlc3AtbWluIH07XG4gICAgJGNsYW1wLXByZWZlcnJlZDogIGNhbGMoI3skZmVzcC1pbmVyc2VjdGlvbiAqIDFyZW19ICArICAjeyRmZXNwLXNsb3BlICogMTAwdnd9KSA7XG4gICAgJGNsYW1wLW1heDogI3sxcmVtICogJGZlc3AtbWF4fTtcbiAgICBcbiAgICAkc3RlcC1jdXJyZW50IDogY2xhbXAoI3skY2xhbXAtbWlufSwjeyRjbGFtcC1wcmVmZXJyZWR9LCAjeyRjbGFtcC1tYXh9ICk7XG4gICAgXG4gICAgQGlmKCRmZXNwLW1heCA8ICRmZXNwLW1pbil7XG4gICAgICAgICRzdGVwLWN1cnJlbnQgOiBjbGFtcCgjeyRjbGFtcC1tYXh9LCN7JGNsYW1wLXByZWZlcnJlZH0sICN7JGNsYW1wLW1pbn0gKTtcbiAgICB9XG4gICAgXG4gICAgQHJldHVybiAkc3RlcC1jdXJyZW50O1xufVxuIiwiXHJcbi8qXHJcbkxlYXJuZWQgZnJvbTogaHR0cHM6Ly91dG9waWEuZnlpL2Jsb2cvZGVzaWduaW5nLXdpdGgtYS1mbHVpZC1zcGFjZS1wYWxldHRlXHJcbiAqL1xyXG5cclxuLy8gIC0tZi1tYXgtdzogOTA7IC8vIDE0NDBweCBpbiBSRU1cclxuLy8gIC0tZi1taW4tdzogMjA7IC8vIDMyMHB4IGluIFJFTVxyXG4kZmVzcC1tYXgtdzogOTAgIWRlZmF1bHQ7XHJcbiRmZXNwLW1pbi13OiAyMCAhZGVmYXVsdDtcclxuXHJcbiRmZXNwLW1pbi1mb250LXNpemU6IDE0cHggIWRlZmF1bHQ7XHJcbiRmZXNwLW1heC1mb250LXNpemU6IDE4cHggIWRlZmF1bHQ7XHJcblxyXG4kZmx1aWQtc3RlcHM6IChcclxuICAgICAgICAnM3hzJyA6IDAuMjUsXHJcbiAgICAgICAgJzJ4cycgOiAwLjUsXHJcbiAgICAgICAgJ3hzJyA6IDAuNzUsXHJcbiAgICAgICAgJ3MnIDogMS4wLCAvLyAncycgaXMgXCJiYXNlXCIgPT4gMS4wXHJcbiAgICAgICAgJ20nIDogMS41LFxyXG4gICAgICAgICdsJyA6IDIuMCxcclxuICAgICAgICAneGwnIDogMy4wLFxyXG4gICAgICAgICcyeGwnIDogNC4wLFxyXG4gICAgICAgICczeGwnIDogNi4wLFxyXG4gICAgICAgICc0eGwnIDogOC4wLFxyXG4gICAgICAgICc1eGwnIDogMTAuMCxcclxuKSAhZGVmYXVsdDtcclxuXHJcbiRmbHVpZC1zdGVwcy1jdXN0b21zOiAoXHJcblx0MSA6ICgncycsICd4bCcpLFxyXG5cdDIgOiAoJ20nLCAnMnhsJyksXHJcblx0Ly8yOiAoJ3hsJywgJ3hzJylcclxuKSAhZGVmYXVsdDtcclxuXHJcblxyXG5cclxuXHJcblxyXG5cclxuIiwiXG4vKlxuTGVhcm5lZCBmcm9tOiBodHRwczovL3V0b3BpYS5meWkvYmxvZy9kZXNpZ25pbmctd2l0aC1hLWZsdWlkLXNwYWNlLXBhbGV0dGVcbiAqL1xuXG4vLyAgLS1mLW1heC13OiA5MDsgLy8gMTQ0MHB4IGluIFJFTVxuLy8gIC0tZi1taW4tdzogMjA7IC8vIDMyMHB4IGluIFJFTVxuJGZlc3AtbWF4LXc6IDkwICFkZWZhdWx0O1xuJGZlc3AtbWluLXc6IDIwICFkZWZhdWx0O1xuXG4kZmVzcC1taW4tZm9udC1zaXplOiAxNHB4ICFkZWZhdWx0O1xuJGZlc3AtbWF4LWZvbnQtc2l6ZTogMThweCAhZGVmYXVsdDtcblxuJGZsdWlkLXN0ZXBzOiAoXG5cdFx0JzN4cycgOiAwLjI1LFxuXHRcdCcyeHMnIDogMC41LFxuXHRcdCd4cycgOiAwLjc1LFxuXHRcdCdzJyA6IDEuMCwgLy8gJ3MnIGlzIFwiYmFzZVwiID0+IDEuMFxuXHRcdCdtJyA6IDEuNSxcblx0XHQnbCcgOiAyLjAsXG5cdFx0J3hsJyA6IDMuMCxcblx0XHQnMnhsJyA6IDQuMCxcblx0XHQnM3hsJyA6IDYuMCxcblx0XHQnNHhsJyA6IDguMCxcblx0XHQnNXhsJyA6IDEwLjAsXG4pICFkZWZhdWx0O1xuXG4kZmx1aWQtc3RlcHMtY3VzdG9tczogKFxuXHRcdC8vMSA6ICgncycsICd4bCcpLFxuXHRcdC8vMjogKCd4bCcsICd4cycpXG4pICFkZWZhdWx0O1xuXG5cblxuXG5cblxuXG4iLCIvKipcclxuU0lURSBDT0xPUlNcclxuICovXHJcblxyXG4kY29sb3Itc2l0ZS1zcGVjaWZpYy0taGVhZGluZzogIzI3NDQ0MiAhZGVmYXVsdDtcclxuJGNvbG9yLXNpdGUtc3BlY2lmaWMtLWdyYXk6ICM5Nzk3OTcgIWRlZmF1bHQ7XHJcbiRjb2xvci1zaXRlLWRhcms6ICNlZGVjZTYgIWRlZmF1bHQ7XHJcbiRjb2xvci1zaXRlLWxpZ2h0OiAjRjdGNkYzICFkZWZhdWx0O1xyXG5cclxuJGNvbG9yLS1wcmltYXJ5OiAjMjYyNjI2ICFkZWZhdWx0O1xyXG4kY29sb3ItLXNlY29uZGFyeTogIzg4ODg4OCAhZGVmYXVsdDtcclxuJGNvbG9yLS1jb250cmFzdC1saWdodDogJGNvbG9yLXNpdGUtbGlnaHQgIWRlZmF1bHQ7XHJcbiRjb2xvci0tY29udHJhc3QtZGFyazogJGNvbG9yLXNpdGUtZGFyayAhZGVmYXVsdDtcclxuJGNvbG9yLS1kYXJrOiAjMjYyNjI2ICFkZWZhdWx0O1xyXG4kY29sb3ItLWJvZHk6ICRjb2xvci0tZGFyayAhZGVmYXVsdDtcclxuJGNvbG9yLS1iZy1saWdodDogJGNvbG9yLXNpdGUtbGlnaHQgIWRlZmF1bHQ7XHJcblxyXG5cclxuLyoqXHJcbkZPTlRTIEFORCBTVFlMRVNcclxuICovXHJcbiRmb250LXByaW1hcnk6ICdSYWxld2F5Jywgc2Fucy1zZXJpZiAhZGVmYXVsdDtcclxuJGZvbnQtc2Vjb25kYXJ5OiAnQ2luemVsJywgc2Fucy1zZXJpZiAhZGVmYXVsdDtcclxuJGJvZHktZm9udC1zdHlsZTogbm9ybWFsICFkZWZhdWx0O1xyXG4kYm9keS1mb250LXdlaWdodDogNDAwICFkZWZhdWx0O1xyXG4kZm9udC1ib2xkLXByaW1hcnk6IDcwMCAhZGVmYXVsdDtcclxuJGZvbnQtc2l0ZS1zcGVjaWZpYy0tbWVkaXVtOiA1MDAgIWRlZmF1bHQ7XHJcbiRmb250LXNpdGUtc3BlY2lmaWMtLWJsYWNrOiA4MDAgIWRlZmF1bHQ7XHJcblxyXG4kZm9udC1mYW1pbHktaGVhZGluZ3M6ICRmb250LXNlY29uZGFyeSAhZGVmYXVsdDtcclxuXHJcbi8qKlxyXG5CT0RZXHJcbiAqL1xyXG4kYm9keS1iYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3Itc2l0ZS1saWdodCAhZGVmYXVsdDtcclxuXHJcbi8qKlxyXG5IRUFERVJcclxuICovXHJcbiRoZWFkZXItbW9iaWwtaGVpZ2h0OiA1NnB4ICFkZWZhdWx0O1xyXG4kaGVhZGVyLWhlaWdodDogMTAwcHggIWRlZmF1bHQ7XHJcbiRoZWFkZXItYmctLWNvbG9yOiAkYm9keS1iYWNrZ3JvdW5kLWNvbG9yICFkZWZhdWx0O1xyXG5cclxuLyoqXHJcbk5BVkJBUlxyXG4gKi9cclxuJG1vYmlsZS1uYXZpZ2F0aW9uLWJ1dHRvbi1jb250YWluZXItc2l6ZTogNDBweCAhZGVmYXVsdDtcclxuJG1vYmlsZS1uYXZpZ2F0aW9uLWJ1dHRvbi1iYWNrZ3JvdW5kOiByZ2JhKCRjb2xvci0tc2Vjb25kYXJ5LCAuMikgIWRlZmF1bHQ7XHJcbiRtb2JpbGUtbmF2aWdhdGlvbi1idXR0b24tY29udGFpbmVyLXJhZGl1czogMCAhZGVmYXVsdDtcclxuJG5hdmJhci1vdmVybGF5LWJhY2tncm91bmQ6ICAjZmZmICAhZGVmYXVsdDtcclxuJG5hdmJhci1iYWNrZ3JvdW5kOiAkYm9keS1iYWNrZ3JvdW5kLWNvbG9yICFkZWZhdWx0O1xyXG5cclxuJG5hdmJhci1saW5rLWNvbG9yLS1kZWZhdWx0OiAkY29sb3ItLXNlY29uZGFyeSAhZGVmYXVsdDtcclxuJG5hdmJhci1saW5rLWNvbG9yLS1oaWdobGlnaHQ6ICRuYXZiYXItbGluay1jb2xvci0tZGVmYXVsdCAhZGVmYXVsdDtcclxuJG5hdmJhci1saW5rLWNvbG9yLS1ob3ZlcjogJGNvbG9yLS1jb250cmFzdC1kYXJrICFkZWZhdWx0O1xyXG4kbmF2YmFyLWxpbmstZm9udC0tc2l6ZS1tb2JpbDogMTlweCAhZGVmYXVsdDtcclxuJG5hdmJhci1saW5rLWZvbnQtLXNpemUtYmVmb3JlLWRlc2t0b3A6IDE0cHggIWRlZmF1bHQ7XHJcbiRuYXZiYXItbGluay1mb250LS1zaXplOiAxOHB4ICFkZWZhdWx0O1xyXG4kbmF2YmFyLWxpbmstZm9udC0td2VpZ2h0OiA2MDAgIWRlZmF1bHQ7XHJcbiRuYXZiYXItbGluay1mb250LS1saW5lLWhlaWdodDogMS4xNSAhZGVmYXVsdDtcclxuJG5hdmJhci1saW5rLWZvbnQtZmFtaWx5OiAkZm9udC1wcmltYXJ5ICFkZWZhdWx0O1xyXG4vKipcclxuR1JJRFxyXG4gKi9cclxuJGdyaWQtY29udGFpbmVyOiAxODAwcHggIWRlZmF1bHQ7XHJcbiRncmlkLXdyYXBwZXI6IDE2ODBweCAhZGVmYXVsdDtcclxuJGdyaWQtY29udGFpbmVyLS1jb250ZW50LXBhZGRpbmc6IDE1cHggIWRlZmF1bHQ7XHJcbiRncmlkLWNvbnRhaW5lci0tY29udGVudC1wYWRkaW5nLXNtOiBjbGFtcCgxNXB4LCA1dncsIDIwcHgpICFkZWZhdWx0O1xyXG4kZ3JpZC1jb250YWluZXItLWNvbnRlbnQtcGFkZGluZy1tZDogY2xhbXAoMzBweCwgNXZ3LCA0MHB4KSAhZGVmYXVsdDtcclxuJGdyaWQtY29udGFpbmVyLS1jb250ZW50LXBhZGRpbmctbGc6IGNsYW1wKDM1cHgsIDR2dywgNDVweCkgIWRlZmF1bHQ7XHJcbiRncmlkLWhlYWRlci0tbmF2LXNob3ctYXQ6IDEwMDBweCAhZGVmYXVsdDtcclxuXHJcbi8qKlxyXG5UWVBPR1JBUEhZXHJcbiAqL1xyXG4kbGluay1jb2xvci0tZGVmYXVsdCA6ICRjb2xvci0tYm9keSAhZGVmYXVsdDtcclxuJGxpbmstY29sb3ItLXZpc2l0ZWQgOiBsaWdodGVuKCRjb2xvci0tYm9keSwgMC4xKSAhZGVmYXVsdDtcclxuJGxpbmstY29sb3ItLWZvY3VzIDogJGNvbG9yLXNpdGUtZGFyayAhZGVmYXVsdDtcclxuJGxpbmstY29sb3ItLWhvdmVyIDogJGNvbG9yLXNpdGUtZGFyayAhZGVmYXVsdDtcclxuJGxpbmstY29sb3ItLWFjdGl2ZSA6ICRsaW5rLWNvbG9yLS12aXNpdGVkICFkZWZhdWx0O1xyXG5cclxuLy8vKipcclxuLy89PT0gQlVUVE9OID09PVxyXG4vLyAqL1xyXG5cclxuJGJ1dHRvbi1saW5lLWhlaWdodDogICAgICAgICAgICAgICAgICAgICAgICAgICAgIDExNSUgIWRlZmF1bHQ7XHJcbiRidXR0b24tc21hbGwtbGluZS1oZWlnaHQ6ICAgICAgICAgICAgICAgICAgICAgICAxMTUlICAhZGVmYXVsdDtcclxuJGJ1dHRvbi1sYXJnZS1saW5lLWhlaWdodDogICAgICAgICAgICAgICAgICAgICAgIDExNSUgICFkZWZhdWx0O1xyXG5cclxuJGJ1dHRvbi1mb250LXNpemU6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZlZnMoc3RlcC0tMCkgIWRlZmF1bHQ7XHJcbiRidXR0b24tc21hbGwtZm9udC1zaXplOiAgICAgICAgICAgICAgICAgICAgICAgICBmZWZzKHN0ZXAtLTApICFkZWZhdWx0O1xyXG4kYnV0dG9uLWxhcmdlLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgICAgICAgICAgZmVmcyhzdGVwLS0wKSAhZGVmYXVsdDtcclxuXHJcbiRidXR0b24tcGFkZGluZy1ob3Jpem9udGFsOiAgICAgICAgICAgICAgICAgICAgICAyNHB4ICFkZWZhdWx0O1xyXG4kYnV0dG9uLXNtYWxsLXBhZGRpbmctaG9yaXpvbnRhbDogICAgICAgICAgICAgICAgJGdsb2JhbC1zbWFsbC1ndXR0ZXIgIWRlZmF1bHQ7XHJcbiRidXR0b24tbGFyZ2UtcGFkZGluZy1ob3Jpem9udGFsOiAgICAgICAgICAgICAgICAkZ2xvYmFsLW1lZGl1bS1ndXR0ZXIgIWRlZmF1bHQ7XHJcblxyXG4kYnV0dG9uLWRlZmF1bHQtYmFja2dyb3VuZDogICAgICAgICAgICAgICAgICAgICAgJGdsb2JhbC1tdXRlZC1iYWNrZ3JvdW5kICFkZWZhdWx0O1xyXG4kYnV0dG9uLWRlZmF1bHQtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgICAgJGdsb2JhbC1lbXBoYXNpcy1jb2xvciAhZGVmYXVsdDtcclxuJGJ1dHRvbi1kZWZhdWx0LWhvdmVyLWJhY2tncm91bmQ6ICAgICAgICAgICAgICAgIGRhcmtlbigkYnV0dG9uLWRlZmF1bHQtYmFja2dyb3VuZCwgNSUpICFkZWZhdWx0O1xyXG4kYnV0dG9uLWRlZmF1bHQtaG92ZXItY29sb3I6ICAgICAgICAgICAgICAgICAgICAgJGdsb2JhbC1lbXBoYXNpcy1jb2xvciAhZGVmYXVsdDtcclxuJGJ1dHRvbi1kZWZhdWx0LWFjdGl2ZS1iYWNrZ3JvdW5kOiAgICAgICAgICAgICAgIGRhcmtlbigkYnV0dG9uLWRlZmF1bHQtYmFja2dyb3VuZCwgMTAlKSAhZGVmYXVsdDtcclxuJGJ1dHRvbi1kZWZhdWx0LWFjdGl2ZS1jb2xvcjogICAgICAgICAgICAgICAgICAgICRnbG9iYWwtZW1waGFzaXMtY29sb3IgIWRlZmF1bHQ7XHJcblxyXG4kYnV0dG9uLXByaW1hcnktYmFja2dyb3VuZDogICAgICAgICAgICAgICAgICAgICAgJGNvbG9yLS1wcmltYXJ5ICFkZWZhdWx0O1xyXG4kYnV0dG9uLXByaW1hcnktY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgICAgJGNvbG9yLXNpdGUtbGlnaHQgIWRlZmF1bHQ7XHJcbiRidXR0b24tcHJpbWFyeS1ob3Zlci1iYWNrZ3JvdW5kOiAgICAgICAgICAgICAgICAkY29sb3Itc2l0ZS1kYXJrICFkZWZhdWx0O1xyXG4kYnV0dG9uLXByaW1hcnktaG92ZXItY29sb3I6ICAgICAgICAgICAgICAgICAgICAgJGNvbG9yLS1wcmltYXJ5ICFkZWZhdWx0O1xyXG4kYnV0dG9uLXByaW1hcnktYWN0aXZlLWJhY2tncm91bmQ6ICAgICAgICAgICAgICAgJGNvbG9yLXNpdGUtbGlnaHQgIWRlZmF1bHQ7XHJcbiRidXR0b24tcHJpbWFyeS1hY3RpdmUtY29sb3I6ICAgICAgICAgICAgICAgICAgICAkY29sb3ItLXByaW1hcnkgIWRlZmF1bHQ7XHJcblxyXG4kYnV0dG9uLXNlY29uZGFyeS1iYWNrZ3JvdW5kOiAgICAgICAgICAgICAgICAgICAgJGNvbG9yLS1zZWNvbmRhcnkgIWRlZmF1bHQ7XHJcbiRidXR0b24tc2Vjb25kYXJ5LWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgICAkY29sb3ItLXByaW1hcnkgIWRlZmF1bHQ7XHJcbiRidXR0b24tc2Vjb25kYXJ5LWhvdmVyLWJhY2tncm91bmQ6ICAgICAgICAgICAgICBkYXJrZW4oJGJ1dHRvbi1zZWNvbmRhcnktYmFja2dyb3VuZCwgNSUpICFkZWZhdWx0O1xyXG4kYnV0dG9uLXNlY29uZGFyeS1ob3Zlci1jb2xvcjogICAgICAgICAgICAgICAgICAgJGNvbG9yLS1wcmltYXJ5ICFkZWZhdWx0O1xyXG4kYnV0dG9uLXNlY29uZGFyeS1hY3RpdmUtYmFja2dyb3VuZDogICAgICAgICAgICAgZGFya2VuKCRidXR0b24tc2Vjb25kYXJ5LWJhY2tncm91bmQsIDEwJSkgIWRlZmF1bHQ7XHJcbiRidXR0b24tc2Vjb25kYXJ5LWFjdGl2ZS1jb2xvcjogICAgICAgICAgICAgICAgICAkY29sb3ItLXByaW1hcnkgIWRlZmF1bHQ7XHJcblxyXG4kYnV0dG9uLWltYWdlLXdpZHRoOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMTZweCAhZGVmYXVsdDtcclxuJGJ1dHRvbi1pbWFnZS1oZWlnaHQ6ICAgICAgICAgICAgICAgICAgICAgICAgICAgIDE2cHggIWRlZmF1bHQ7XHJcbiRidXR0b24taW1hZ2UtZ2FwOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA4cHggIWRlZmF1bHQ7XHJcblxyXG4kYnV0dG9uLXVuZGVybGluZS1saW5lLXdpZHRoOiAgICAgICAgICAgICAgICAgICAgNzUlICFkZWZhdWx0O1xyXG4kYnV0dG9uLXVuZGVybGluZS1saW5lLWhlaWdodDogICAgICAgICAgICAgICAgICAgMnB4ICFkZWZhdWx0O1xyXG4kYnV0dG9uLXVuZGVybGluZS1saW5lLWJhY2tncm91bmQ6ICAgICAgICAgICAgICAgJGNvbG9yLS1wcmltYXJ5ICFkZWZhdWx0O1xyXG4kYnV0dG9uLXVuZGVybGluZS1saW5lLXBvc2l0aW9uOiAgICAgICAgICAgICAgICAgLTJweCAhZGVmYXVsdDtcclxuXHJcbiRidXR0b24tZGFuZ2VyLWJhY2tncm91bmQ6ICAgICAgICAgICAgICAgICAgICAgICAkZ2xvYmFsLWRhbmdlci1iYWNrZ3JvdW5kICFkZWZhdWx0O1xyXG4kYnV0dG9uLWRhbmdlci1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICAgICAgJGdsb2JhbC1pbnZlcnNlLWNvbG9yICFkZWZhdWx0O1xyXG4kYnV0dG9uLWRhbmdlci1ob3Zlci1iYWNrZ3JvdW5kOiAgICAgICAgICAgICAgICAgZGFya2VuKCRidXR0b24tZGFuZ2VyLWJhY2tncm91bmQsIDUlKSAhZGVmYXVsdDtcclxuJGJ1dHRvbi1kYW5nZXItaG92ZXItY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICRnbG9iYWwtaW52ZXJzZS1jb2xvciAhZGVmYXVsdDtcclxuJGJ1dHRvbi1kYW5nZXItYWN0aXZlLWJhY2tncm91bmQ6ICAgICAgICAgICAgICAgIGRhcmtlbigkYnV0dG9uLWRhbmdlci1iYWNrZ3JvdW5kLCAxMCUpICFkZWZhdWx0O1xyXG4kYnV0dG9uLWRhbmdlci1hY3RpdmUtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgJGdsb2JhbC1pbnZlcnNlLWNvbG9yICFkZWZhdWx0O1xyXG5cclxuJGJ1dHRvbi1kaXNhYmxlZC1iYWNrZ3JvdW5kOiAgICAgICAgICAgICAgICAgICAgICRnbG9iYWwtbXV0ZWQtYmFja2dyb3VuZCAhZGVmYXVsdDtcclxuJGJ1dHRvbi1kaXNhYmxlZC1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICAgICRnbG9iYWwtbXV0ZWQtY29sb3IgIWRlZmF1bHQ7XHJcblxyXG4kYnV0dG9uLXRleHQtbGluZS1oZWlnaHQ6ICAgICAgICAgICAgICAgICAgICAgICAgJGdsb2JhbC1saW5lLWhlaWdodCAhZGVmYXVsdDtcclxuJGJ1dHRvbi10ZXh0LWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICRnbG9iYWwtZW1waGFzaXMtY29sb3IgIWRlZmF1bHQ7XHJcbiRidXR0b24tdGV4dC1ob3Zlci1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICAkZ2xvYmFsLW11dGVkLWNvbG9yICFkZWZhdWx0O1xyXG4kYnV0dG9uLXRleHQtZGlzYWJsZWQtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgJGdsb2JhbC1tdXRlZC1jb2xvciAhZGVmYXVsdDtcclxuJGJ1dHRvbi10ZXh0LXRyYW5zZm9ybTogICAgICAgICAgICAgICAgICAgICAgICAgIG5vbmUgIWRlZmF1bHQ7XHJcblxyXG4kYnV0dG9uLWxpbmstbGluZS1oZWlnaHQ6ICAgICAgICAgICAgICAgICAgICAgICAgJGdsb2JhbC1saW5lLWhlaWdodCAhZGVmYXVsdDtcclxuJGJ1dHRvbi1saW5rLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICRnbG9iYWwtZW1waGFzaXMtY29sb3IgIWRlZmF1bHQ7XHJcbiRidXR0b24tbGluay1ob3Zlci1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICAkZ2xvYmFsLW11dGVkLWNvbG9yICFkZWZhdWx0O1xyXG4kYnV0dG9uLWxpbmstaG92ZXItdGV4dC1kZWNvcmF0aW9uOiAgICAgICAgICAgICAgbm9uZSAhZGVmYXVsdDtcclxuJGJ1dHRvbi1saW5rLWRpc2FibGVkLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICRnbG9iYWwtbXV0ZWQtY29sb3IgIWRlZmF1bHQ7XHJcblxyXG4kYnV0dG9uLWJvcmRlci13aWR0aDogICAgICAgICAgICAgICAgICAgICAgICAgICAgJGdsb2JhbC1ib3JkZXItd2lkdGggIWRlZmF1bHQ7XHJcbiRidXR0b24tYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAkYnV0dG9uLWRlZmF1bHQtY29sb3IgIWRlZmF1bHQ7XHJcbiRidXR0b24tYm9yZGVyLWhvdmVyLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAkYnV0dG9uLWRlZmF1bHQtaG92ZXItY29sb3IgIWRlZmF1bHQ7XHJcbiRidXR0b24tYm9yZGVyLXJhZGl1czogICAgICAgICAgICAgICAgICAgICAgICAgICAwICFkZWZhdWx0O1xyXG5cclxuJGJ1dHRvbi1wcmltYXJ5LWJvcmRlci1jb2xvcjogICAgICAgICAgICAgICAgICAgICRidXR0b24tYm9yZGVyLWNvbG9yICFkZWZhdWx0O1xyXG4kYnV0dG9uLXByaW1hcnktYm9yZGVyLWhvdmVyLWNvbG9yOiAgICAgICAgICAgICAgJGJ1dHRvbi1kZWZhdWx0LWhvdmVyLWNvbG9yICFkZWZhdWx0O1xyXG5cclxuJGJ1dHRvbi1zZWNvbmRhcnktYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICAgICAgICRidXR0b24tYm9yZGVyLWNvbG9yICFkZWZhdWx0O1xyXG4kYnV0dG9uLXNlY29uZGFyeS1ib3JkZXItaG92ZXItY29sb3I6ICAgICAgICAgICAgJGJ1dHRvbi1kZWZhdWx0LWhvdmVyLWNvbG9yICFkZWZhdWx0O1xyXG5cclxuLyoqXHJcbj09PSBOQVZJR0FUSU9OID09PVxyXG4gKi9cclxuJG5hdi1saW5rLWNvbG9yLS1kZWZhdWx0OiAjMjc0NDQyICFkZWZhdWx0O1xyXG4kbmF2LWxpbmstY29sb3ItLWhpZ2hsaWdodDogJG5hdi1saW5rLWNvbG9yLS1kZWZhdWx0ICFkZWZhdWx0O1xyXG4kbmF2LWxpbmstY29sb3ItLWhvdmVyOiAkY29sb3ItLXByaW1hcnkgIWRlZmF1bHQ7XHJcblxyXG4kbmF2LWxpbmstZm9udC0tc2l6ZS1tb2JpbDogMTlweCAhZGVmYXVsdDtcclxuJG5hdi1saW5rLWZvbnQtLXNpemUtYmVmb3JlLWRlc2t0b3A6IDE0cHggIWRlZmF1bHQ7XHJcbiRuYXYtbGluay1mb250LS1zaXplOiAyNHB4ICFkZWZhdWx0O1xyXG4kbmF2LWxpbmstZm9udC0tbGluZS1oZWlnaHQ6IDEuMTUgIWRlZmF1bHQ7XHJcbiRuYXYtbGluay1mb250LWZhbWlseTogJGZvbnQtc2Vjb25kYXJ5ICFkZWZhdWx0O1xyXG5cclxuJG5hdmlnYXRpb24tb3ZlcmxheS16LWluZGV4OiA1MDAgIWRlZmF1bHQ7XHJcbiRuYXZpZ2F0aW9uLW92ZXJsYXktYmctY29sb3I6ICNmZmYgIWRlZmF1bHQ7XHJcbiRuYXZpZ2F0aW9uLW92ZXJsYXktb3BhY2l0eS0tb3BlbjogMC45OTggIWRlZmF1bHQ7XHJcblxyXG4kbmF2aWdhdGlvbi1vcGVuZXItYnV0dG9uLWNvbG9yLS1hY3RpdmU6ICMyMDIwMjYgIWRlZmF1bHQ7XHJcbiRuYXZpZ2F0aW9uLW9wZW5lci1idXR0b24tY29sb3ItLWJhY2tncm91bmQ6ICRjb2xvci0tc2Vjb25kYXJ5ICFkZWZhdWx0O1xyXG4kbmF2aWdhdGlvbi1vcGVuZXItYnV0dG9uLWNvbG9yLS1iYWNrZ3JvdW5kLW9wYWNpdHk6IC4yICFkZWZhdWx0O1xyXG4kbmF2aWdhdGlvbi1vcGVuZXItYnV0dG9uLXdpZHRoOiAyMnB4ICFkZWZhdWx0O1xyXG4kbmF2aWdhdGlvbi1vcGVuZXItYnV0dG9uLWhlaWdodDogMTguODRweCAhZGVmYXVsdDtcclxuJG5hdmlnYXRpb24tb3BlbmVyLWJ1dHRvbi1kZXZpY2UtcGFkZGluZzogMHB4ICFkZWZhdWx0O1xyXG5cclxuJG5hdmlnYXRpb24tb3BlbmVkLWxpbmstY29sb3ItLWRlZmF1bHQ6ICRjb2xvci0tYm9keSAhZGVmYXVsdDtcclxuXHJcblxyXG4kei1kb3duLS0yIDogLTEwO1xyXG4kei1kb3duLS0xIDogLTE7XHJcbiR6LXVwLS0xIDogMTtcclxuJHotdXAtLTIgOiAxMDtcclxuJHotdXAtLTMgOiAyMDtcclxuJHotdXAtLTQgOiA0MDtcclxuXHJcbi8qKlxyXG5GT09URVJcclxuICovXHJcbiRmb290ZXItYmctY29sb3I6ICAkYm9keS1iYWNrZ3JvdW5kLWNvbG9yICFkZWZhdWx0O1xyXG4kZm9vdGVyLWNvbG9yOiAkY29sb3ItLWJvZHkgIWRlZmF1bHQ7XHJcbiRmb290ZXItZm9udC1mYW1pbHk6ICRmb250LXByaW1hcnkgIWRlZmF1bHQ7XHJcbiRmb290ZXItZm9udC1zaXplOiAxcmVtICFkZWZhdWx0O1xyXG4kZm9vdGVyLWxpbmUtaGVpZ2h0OiAxLjE2ICFkZWZhdWx0O1xyXG4kZm9vdGVyLWZvbnQtd2VpZ2h0OiA0MDAgIWRlZmF1bHQ7XHJcbiRmb290ZXItcGFkZGluZzogMCAhZGVmYXVsdDtcclxuJGZvb3Rlci1oZWlnaHQ6IGF1dG8gIWRlZmF1bHQ7XHJcblxyXG4vKipcclxuQ09QWVJJR0hUXHJcbiAqL1xyXG4kY29weXJpZ2h0LWZvbnQtLWZhbWlseTogJGZvbnQtcHJpbWFyeSAhZGVmYXVsdDtcclxuJGNvcHlyaWdodC1mb250LS1zdHlsZTogbm9ybWFsICFkZWZhdWx0O1xyXG4kY29weXJpZ2h0LWZvbnQtLXdlaWdodDogNTAwICFkZWZhdWx0O1xyXG4kY29weXJpZ2h0LWZvbnQtLXNpemU6IGNhbGMoI3t2YXIoLS1mb250LXNjYWxlX19iYXNlKX0gKiAje21hcC1nZXQoJGZvbnQtc2NhbGUsIHN0ZXAtLWQtMSl9KSAhZGVmYXVsdDtcclxuJGNvcHlyaWdodC1mb250LS1saW5lLWhlaWdodDogMS4xNSAhZGVmYXVsdDtcclxuJGNvcHlyaWdodC1mb250LS1jb2xvcjogJGNvbG9yLS1jb250cmFzdC1kYXJrICFkZWZhdWx0O1xyXG5cclxuLyoqXHJcbj09PSBNRVNTQUdFIEJPWCA9PT1cclxuICovXHJcbiRtc2ctYm94LWNvbG9yOiAjZmZmICFkZWZhdWx0O1xyXG4kbXNnLWJveC1iZy1jb2xvcjogJGNvbG9yLS1wcmltYXJ5ICFkZWZhdWx0O1xyXG4kbXNnLWJveC1zdWNjZXNzLXRleHQtY29sb3I6ICMzQTYxNEQgIWRlZmF1bHQ7XHJcbiRtc2ctYm94LXN1Y2Nlc3MtYm9yZGVyLWNvbG9yOiAjODJDNzA4ICFkZWZhdWx0O1xyXG4kbXNnLWJveC1wYWRkaW5nOiB2YXIoLS1zcGFjZS1tZWRpdW0pICFkZWZhdWx0O1xyXG4kbXNnLWJveC1mb250LWZhbWlseTogJGZvbnQtcHJpbWFyeSAhZGVmYXVsdDtcclxuJG1zZy1ib3gtZm9udC13ZWlnaHQ6ICRib2R5LWZvbnQtd2VpZ2h0ICFkZWZhdWx0O1xyXG4kbXNnLWJveC1mb250LXNpemU6IHZhcigtLWJhc2UtZm9udC1zaXplKSAhZGVmYXVsdDtcclxuJG1zZy1ib3gtbGluZS1oZWlnaHQ6IHZhcigtLWxobS0tMCkgIWRlZmF1bHQ7XHJcbiRtc2ctYm94LWJvcmRlci1jb2xvcjogJGNvbG9yLS1zZWNvbmRhcnkgIWRlZmF1bHQ7XHJcbiRtc2ctYm94LWJvcmRlci13aWR0aDogOHB4ICFkZWZhdWx0O1xyXG4kbXNnLWJveC1ib3JkZXItZGVmYXVsdHM6ICRtc2ctYm94LWJvcmRlci13aWR0aCBzb2xpZCAkbXNnLWJveC1ib3JkZXItY29sb3IgIWRlZmF1bHQ7XHJcblxyXG4vKipcclxuQlJFQURDUlVNQlNcclxuICovXHJcblxyXG4kYnJlYWRjcnVtYi1pdGVtLWZvbnQtc2l6ZTogJGdsb2JhbC1zbWFsbC1mb250LXNpemUgIWRlZmF1bHQ7XHJcbiRicmVhZGNydW1iLWl0ZW0tY29sb3I6ICRnbG9iYWwtbXV0ZWQtY29sb3IgIWRlZmF1bHQ7XHJcbiRicmVhZGNydW1iLWl0ZW0taG92ZXItY29sb3I6ICRnbG9iYWwtY29sb3IgIWRlZmF1bHQ7XHJcbiRicmVhZGNydW1iLWl0ZW0taG92ZXItdGV4dC1kZWNvcmF0aW9uOiBub25lICFkZWZhdWx0O1xyXG4kYnJlYWRjcnVtYi1pdGVtLWFjdGl2ZS1jb2xvcjogJGdsb2JhbC1jb2xvciAhZGVmYXVsdDtcclxuXHJcbiRicmVhZGNydW1iLWRpdmlkZXI6ICdcXDIxOTInICFkZWZhdWx0O1xyXG4kYnJlYWRjcnVtYi1kaXZpZGVyLW1hcmdpbi1ob3Jpem9udGFsOiAyMHB4ICFkZWZhdWx0O1xyXG4kYnJlYWRjcnVtYi1kaXZpZGVyLWZvbnQtc2l6ZTogJGJyZWFkY3J1bWItaXRlbS1mb250LXNpemUgIWRlZmF1bHQ7XHJcbiRicmVhZGNydW1iLWRpdmlkZXItY29sb3I6ICRnbG9iYWwtbXV0ZWQtY29sb3IgIWRlZmF1bHQ7XHJcblxyXG4kYnJlYWRjcnVtYi1jdXN0b20tZGl2aWRlci13aWR0aDogMTVweCAhZGVmYXVsdDtcclxuXHJcbi8qKlxyXG5DQVJEXHJcbiAqL1xyXG5cclxuJGNhcmQtYm9keS1wYWRkaW5nLWhvcml6b250YWw6ICAgICAgICAgICAgICAgICAgJGdsb2JhbC1ndXR0ZXIgIWRlZmF1bHQ7XHJcbiRjYXJkLWJvZHktcGFkZGluZy12ZXJ0aWNhbDogICAgICAgICAgICAgICAgICAgICRnbG9iYWwtZ3V0dGVyICFkZWZhdWx0O1xyXG5cclxuJGNhcmQtYm9keS1wYWRkaW5nLWhvcml6b250YWwtbDogICAgICAgICAgICAgICAgJGdsb2JhbC1tZWRpdW0tZ3V0dGVyICFkZWZhdWx0O1xyXG4kY2FyZC1ib2R5LXBhZGRpbmctdmVydGljYWwtbDogICAgICAgICAgICAgICAgICAkZ2xvYmFsLW1lZGl1bS1ndXR0ZXIgIWRlZmF1bHQ7XHJcblxyXG4kY2FyZC1oZWFkZXItcGFkZGluZy1ob3Jpem9udGFsOiAgICAgICAgICAgICAgICAkZ2xvYmFsLWd1dHRlciAhZGVmYXVsdDtcclxuJGNhcmQtaGVhZGVyLXBhZGRpbmctdmVydGljYWw6ICAgICAgICAgICAgICAgICAgcm91bmQoKCRnbG9iYWwtZ3V0dGVyICogMC41KSkgIWRlZmF1bHQ7XHJcblxyXG4kY2FyZC1oZWFkZXItcGFkZGluZy1ob3Jpem9udGFsLWw6ICAgICAgICAgICAgICAkZ2xvYmFsLW1lZGl1bS1ndXR0ZXIgIWRlZmF1bHQ7XHJcbiRjYXJkLWhlYWRlci1wYWRkaW5nLXZlcnRpY2FsLWw6ICAgICAgICAgICAgICAgIHJvdW5kKCgkZ2xvYmFsLW1lZGl1bS1ndXR0ZXIgKiAwLjUpKSAhZGVmYXVsdDtcclxuXHJcbiRjYXJkLWZvb3Rlci1wYWRkaW5nLWhvcml6b250YWw6ICAgICAgICAgICAgICAgICRnbG9iYWwtZ3V0dGVyICFkZWZhdWx0O1xyXG4kY2FyZC1mb290ZXItcGFkZGluZy12ZXJ0aWNhbDogICAgICAgICAgICAgICAgICAoJGdsb2JhbC1ndXR0ZXIgKiAwLjUpICFkZWZhdWx0O1xyXG5cclxuJGNhcmQtZm9vdGVyLXBhZGRpbmctaG9yaXpvbnRhbC1sOiAgICAgICAgICAgICAgJGdsb2JhbC1tZWRpdW0tZ3V0dGVyICFkZWZhdWx0O1xyXG4kY2FyZC1mb290ZXItcGFkZGluZy12ZXJ0aWNhbC1sOiAgICAgICAgICAgICAgICByb3VuZCgoJGdsb2JhbC1tZWRpdW0tZ3V0dGVyICogMC41KSkgIWRlZmF1bHQ7XHJcblxyXG4kY2FyZC10aXRsZS1mb250LXNpemU6ICAgICAgICAgICAgICAgICAgICAgICAgICAkZ2xvYmFsLW1lZGl1bS1mb250LXNpemUgIWRlZmF1bHQ7XHJcbiRjYXJkLXRpdGxlLWxpbmUtaGVpZ2h0OiAgICAgICAgICAgICAgICAgICAgICAgIDEuNCAhZGVmYXVsdDtcclxuXHJcbiRjYXJkLWhvdmVyLWJhY2tncm91bmQ6ICAgICAgICAgICAgICAgICAgICAgICAgICRnbG9iYWwtbXV0ZWQtYmFja2dyb3VuZCAhZGVmYXVsdDtcclxuXHJcbiRjYXJkLWRlZmF1bHQtYmFja2dyb3VuZDogICAgICAgICAgICAgICAgICAgICAgICRnbG9iYWwtbXV0ZWQtYmFja2dyb3VuZCAhZGVmYXVsdDtcclxuJGNhcmQtZGVmYXVsdC1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICAgICAgJGdsb2JhbC1jb2xvciAhZGVmYXVsdDtcclxuJGNhcmQtZGVmYXVsdC10aXRsZS1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgJGdsb2JhbC1lbXBoYXNpcy1jb2xvciAhZGVmYXVsdDtcclxuJGNhcmQtZGVmYXVsdC1ob3Zlci1iYWNrZ3JvdW5kOiAgICAgICAgICAgICAgICAgZGFya2VuKCRjYXJkLWRlZmF1bHQtYmFja2dyb3VuZCwgNSUpICFkZWZhdWx0O1xyXG5cclxuJGNhcmQtcHJpbWFyeS1iYWNrZ3JvdW5kOiAgICAgICAgICAgICAgICAgICAgICAgJGdsb2JhbC1wcmltYXJ5LWJhY2tncm91bmQgIWRlZmF1bHQ7XHJcbiRjYXJkLXByaW1hcnktY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICRnbG9iYWwtaW52ZXJzZS1jb2xvciAhZGVmYXVsdDtcclxuJGNhcmQtcHJpbWFyeS10aXRsZS1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgJGNhcmQtcHJpbWFyeS1jb2xvciAhZGVmYXVsdDtcclxuJGNhcmQtcHJpbWFyeS1ob3Zlci1iYWNrZ3JvdW5kOiAgICAgICAgICAgICAgICAgZGFya2VuKCRjYXJkLXByaW1hcnktYmFja2dyb3VuZCwgNSUpICFkZWZhdWx0O1xyXG4kY2FyZC1wcmltYXJ5LWNvbG9yLW1vZGU6ICAgICAgICAgICAgICAgICAgICAgICBsaWdodCAhZGVmYXVsdDtcclxuXHJcbiRjYXJkLXNlY29uZGFyeS1iYWNrZ3JvdW5kOiAgICAgICAgICAgICAgICAgICAgICRnbG9iYWwtc2Vjb25kYXJ5LWJhY2tncm91bmQgIWRlZmF1bHQ7XHJcbiRjYXJkLXNlY29uZGFyeS1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICAgICRnbG9iYWwtaW52ZXJzZS1jb2xvciAhZGVmYXVsdDtcclxuJGNhcmQtc2Vjb25kYXJ5LXRpdGxlLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgJGNhcmQtc2Vjb25kYXJ5LWNvbG9yICFkZWZhdWx0O1xyXG4kY2FyZC1zZWNvbmRhcnktaG92ZXItYmFja2dyb3VuZDogICAgICAgICAgICAgICBkYXJrZW4oJGNhcmQtc2Vjb25kYXJ5LWJhY2tncm91bmQsIDUlKSAhZGVmYXVsdDtcclxuJGNhcmQtc2Vjb25kYXJ5LWNvbG9yLW1vZGU6ICAgICAgICAgICAgICAgICAgICAgbGlnaHQgIWRlZmF1bHQ7XHJcblxyXG4kY2FyZC1zbWFsbC1ib2R5LXBhZGRpbmctaG9yaXpvbnRhbDogICAgICAgICAgICAkZ2xvYmFsLW1hcmdpbiAhZGVmYXVsdDtcclxuJGNhcmQtc21hbGwtYm9keS1wYWRkaW5nLXZlcnRpY2FsOiAgICAgICAgICAgICAgJGdsb2JhbC1tYXJnaW4gIWRlZmF1bHQ7XHJcbiRjYXJkLXNtYWxsLWhlYWRlci1wYWRkaW5nLWhvcml6b250YWw6ICAgICAgICAgICRnbG9iYWwtbWFyZ2luICFkZWZhdWx0O1xyXG4kY2FyZC1zbWFsbC1oZWFkZXItcGFkZGluZy12ZXJ0aWNhbDogICAgICAgICAgICByb3VuZCgoJGdsb2JhbC1tYXJnaW4gKiAwLjY2NjY3KSkgIWRlZmF1bHQ7XHJcbiRjYXJkLXNtYWxsLWZvb3Rlci1wYWRkaW5nLWhvcml6b250YWw6ICAgICAgICAgICRnbG9iYWwtbWFyZ2luICFkZWZhdWx0O1xyXG4kY2FyZC1zbWFsbC1mb290ZXItcGFkZGluZy12ZXJ0aWNhbDogICAgICAgICAgICByb3VuZCgoJGdsb2JhbC1tYXJnaW4gKiAwLjY2NjY3KSkgIWRlZmF1bHQ7XHJcblxyXG4kY2FyZC1sYXJnZS1ib2R5LXBhZGRpbmctaG9yaXpvbnRhbC1sOiAgICAgICAgICAkZ2xvYmFsLWxhcmdlLWd1dHRlciAhZGVmYXVsdDtcclxuJGNhcmQtbGFyZ2UtYm9keS1wYWRkaW5nLXZlcnRpY2FsLWw6ICAgICAgICAgICAgJGdsb2JhbC1sYXJnZS1ndXR0ZXIgIWRlZmF1bHQ7XHJcbiRjYXJkLWxhcmdlLWhlYWRlci1wYWRkaW5nLWhvcml6b250YWwtbDogICAgICAgICRnbG9iYWwtbGFyZ2UtZ3V0dGVyICFkZWZhdWx0O1xyXG4kY2FyZC1sYXJnZS1oZWFkZXItcGFkZGluZy12ZXJ0aWNhbC1sOiAgICAgICAgICByb3VuZCgoJGdsb2JhbC1sYXJnZS1ndXR0ZXIgKiAwLjUpKSAhZGVmYXVsdDtcclxuJGNhcmQtbGFyZ2UtZm9vdGVyLXBhZGRpbmctaG9yaXpvbnRhbC1sOiAgICAgICAgJGdsb2JhbC1sYXJnZS1ndXR0ZXIgIWRlZmF1bHQ7XHJcbiRjYXJkLWxhcmdlLWZvb3Rlci1wYWRkaW5nLXZlcnRpY2FsLWw6ICAgICAgICAgIHJvdW5kKCgkZ2xvYmFsLWxhcmdlLWd1dHRlciAqIDAuNSkpICFkZWZhdWx0O1xyXG5cclxuJGNhcmQtaG92ZXItYm94LXNoYWRvdzogICAgICAgICAgICAgICAgICAgICAgICAgJGdsb2JhbC1sYXJnZS1ib3gtc2hhZG93ICFkZWZhdWx0O1xyXG5cclxuJGNhcmQtZGVmYXVsdC1ib3gtc2hhZG93OiAgICAgICAgICAgICAgICAgICAgICAgJGdsb2JhbC1tZWRpdW0tYm94LXNoYWRvdyAhZGVmYXVsdDtcclxuJGNhcmQtZGVmYXVsdC1ob3Zlci1ib3gtc2hhZG93OiAgICAgICAgICAgICAgICAgJGdsb2JhbC1sYXJnZS1ib3gtc2hhZG93ICFkZWZhdWx0O1xyXG5cclxuJGNhcmQtZGVmYXVsdC1oZWFkZXItYm9yZGVyLXdpZHRoOiAgICAgICAgICAgICAgJGdsb2JhbC1ib3JkZXItd2lkdGggIWRlZmF1bHQ7XHJcbiRjYXJkLWRlZmF1bHQtaGVhZGVyLWJvcmRlcjogICAgICAgICAgICAgICAgICAgICRnbG9iYWwtYm9yZGVyLWNvbG9yICFkZWZhdWx0O1xyXG5cclxuJGNhcmQtZGVmYXVsdC1mb290ZXItYm9yZGVyLXdpZHRoOiAgICAgICAgICAgICAgJGdsb2JhbC1ib3JkZXItd2lkdGggIWRlZmF1bHQ7XHJcbiRjYXJkLWRlZmF1bHQtZm9vdGVyLWJvcmRlcjogICAgICAgICAgICAgICAgICAgICRnbG9iYWwtYm9yZGVyLWNvbG9yICFkZWZhdWx0O1xyXG5cclxuJGNhcmQtcHJpbWFyeS1ib3gtc2hhZG93OiAgICAgICAgICAgICAgICAgICAgICAgJGdsb2JhbC1tZWRpdW0tYm94LXNoYWRvdyAhZGVmYXVsdDtcclxuJGNhcmQtcHJpbWFyeS1ob3Zlci1ib3gtc2hhZG93OiAgICAgICAgICAgICAgICAgJGdsb2JhbC1sYXJnZS1ib3gtc2hhZG93ICFkZWZhdWx0O1xyXG5cclxuJGNhcmQtc2Vjb25kYXJ5LWJveC1zaGFkb3c6ICAgICAgICAgICAgICAgICAgICAgJGdsb2JhbC1tZWRpdW0tYm94LXNoYWRvdyAhZGVmYXVsdDtcclxuJGNhcmQtc2Vjb25kYXJ5LWhvdmVyLWJveC1zaGFkb3c6ICAgICAgICAgICAgICAgJGdsb2JhbC1sYXJnZS1ib3gtc2hhZG93ICFkZWZhdWx0O1xyXG5cclxuLyoqXHJcbkZPUk1cclxuICovXHJcblxyXG4kZm9ybS1mb250LXNpemU6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJGdsb2JhbC1mb250LXNpemUgIWRlZmF1bHQ7XHJcbiRmb3JtLWZvbnQtd2VpZ2h0OiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA0MDAgIWRlZmF1bHQ7XHJcbiRmb3JtLWZvbnQtZmFtaWx5OiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkZm9udC1wcmltYXJ5O1xyXG5cclxuJGZvcm0taGVpZ2h0OiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDI3cHg7XHJcbiRmb3JtLWxpbmUtaGVpZ2h0OiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkZm9ybS1oZWlnaHQgIWRlZmF1bHQ7XHJcbiRmb3JtLWxpbmUtZ2FwOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBnZXRTcGFjZSgncycpO1xyXG4kZm9ybS1wYWRkaW5nLWhvcml6b250YWw6ICAgICAgICAgICAgICAgICAgICAgICAgMDtcclxuJGZvcm0tcGFkZGluZy12ZXJ0aWNhbDogICAgICAgICAgICAgICAgICAgICAgICAgICRmb3JtLXBhZGRpbmctaG9yaXpvbnRhbCAhZGVmYXVsdDtcclxuXHJcbiRmb3JtLWJvcmRlci13aWR0aDogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAwO1xyXG4kZm9ybS1ib3JkZXItY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgI2NjYztcclxuXHJcbiRmb3JtLWJhY2tncm91bmQ6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkZ2xvYmFsLW11dGVkLWJhY2tncm91bmQgIWRlZmF1bHQ7XHJcbiRmb3JtLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkY29sb3ItLXByaW1hcnk7XHJcblxyXG4kZm9ybS1mb2N1cy1iYWNrZ3JvdW5kOiAgICAgICAgICAgICAgICAgICAgICAgICAgZGFya2VuKCRmb3JtLWJhY2tncm91bmQsIDUlKSAhZGVmYXVsdDtcclxuJGZvcm0tZm9jdXMtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICRjb2xvci0tcHJpbWFyeSAhZGVmYXVsdDtcclxuJGZvcm0tZm9jdXMtYm9yZGVyOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICRmb3JtLWJvcmRlci1jb2xvcjtcclxuXHJcbiRmb3JtLWRpc2FibGVkLWJhY2tncm91bmQ6ICAgICAgICAgICAgICAgICAgICAgICAkZ2xvYmFsLW11dGVkLWJhY2tncm91bmQgIWRlZmF1bHQ7XHJcbiRmb3JtLWRpc2FibGVkLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAkZ2xvYmFsLW11dGVkLWNvbG9yICFkZWZhdWx0O1xyXG4kZm9ybS1kaXNhYmxlZC1ib3JkZXI6ICAgICAgICAgICAgICAgICAgICAgICAgICAgJGdsb2JhbC1jb2xvciAhZGVmYXVsdDtcclxuXHJcbiRmb3JtLXBsYWNlaG9sZGVyLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgICAkY29sb3ItLXNlY29uZGFyeTtcclxuJGZvcm0tcGxhY2Vob2xkZXItZm9udC1zaXplOiAgICAgICAgICAgICAgICAgICAgIGZlZnMoc3RlcC0tMCk7XHJcbiRmb3JtLXBsYWNlaG9sZGVyLWZvbnQtd2VpZ2h0OiAgICAgICAgICAgICAgICAgICAzMDA7XHJcbiRmb3JtLXBsYWNlaG9sZGVyLWZvbnQtZmFtaWx5OiAgICAgICAgICAgICAgICAgICAkZm9ybS1mb250LWZhbWlseSAhZGVmYXVsdDtcclxuXHJcbiRmb3JtLWRhbmdlci1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkZ2xvYmFsLWRhbmdlci1iYWNrZ3JvdW5kICFkZWZhdWx0O1xyXG4kZm9ybS1kYW5nZXItYm9yZGVyOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJGdsb2JhbC1kYW5nZXItYmFja2dyb3VuZCAhZGVmYXVsdDtcclxuJGZvcm0tc3VjY2Vzcy1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICAgICAgICRnbG9iYWwtc3VjY2Vzcy1iYWNrZ3JvdW5kICFkZWZhdWx0O1xyXG4kZm9ybS1zdWNjZXNzLWJvcmRlcjogICAgICAgICAgICAgICAgICAgICAgICAgICAgJGdsb2JhbC1zdWNjZXNzLWJhY2tncm91bmQgIWRlZmF1bHQ7XHJcblxyXG4kZm9ybS1zZWxlY3QtcGFkZGluZy1yaWdodDogICAgICAgICAgICAgICAgICAgICAgMjBweCAhZGVmYXVsdDtcclxuJGZvcm0tc2VsZWN0LWljb24tY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgICRnbG9iYWwtY29sb3IgIWRlZmF1bHQ7XHJcbiRmb3JtLXNlbGVjdC1vcHRpb24tY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAkZ2xvYmFsLWNvbG9yICFkZWZhdWx0O1xyXG4kZm9ybS1zZWxlY3QtZGlzYWJsZWQtaWNvbi1jb2xvcjogICAgICAgICAgICAgICAgJGdsb2JhbC1tdXRlZC1jb2xvciAhZGVmYXVsdDtcclxuXHJcbiRmb3JtLWRhdGFsaXN0LXBhZGRpbmctcmlnaHQ6ICAgICAgICAgICAgICAgICAgICAyMHB4ICFkZWZhdWx0O1xyXG4kZm9ybS1kYXRhbGlzdC1pY29uLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgJGdsb2JhbC1jb2xvciAhZGVmYXVsdDtcclxuXHJcbiRmb3JtLXJhZGlvLXNpemU6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAxNnB4ICFkZWZhdWx0O1xyXG4kZm9ybS1yYWRpby1tYXJnaW4tdG9wOiAgICAgICAgICAgICAgICAgICAgICAgICAgLTRweCAhZGVmYXVsdDtcclxuJGZvcm0tcmFkaW8tYmFja2dyb3VuZDogICAgICAgICAgICAgICAgICAgICAgICAgIGRhcmtlbigkZ2xvYmFsLW11dGVkLWJhY2tncm91bmQsIDUlKSAhZGVmYXVsdDtcclxuJGZvcm0tcmFkaW8tYm9yZGVyLXdpZHRoOiAgICAgICAgICAgICAgICAgICAgICAgICRnbG9iYWwtYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xyXG4kZm9ybS1yYWRpby1ib3JkZXI6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGFya2VuKCRnbG9iYWwtY29sb3IsIDEwJSkgIWRlZmF1bHQ7XHJcblxyXG4kZm9ybS1yYWRpby1mb2N1cy1iYWNrZ3JvdW5kOiAgICAgICAgICAgICAgICAgICAgZGFya2VuKCRmb3JtLXJhZGlvLWJhY2tncm91bmQsIDUlKSAhZGVmYXVsdDtcclxuJGZvcm0tcmFkaW8tZm9jdXMtYm9yZGVyOiAgICAgICAgICAgICAgICAgICAgICAgICRnbG9iYWwtcHJpbWFyeS1iYWNrZ3JvdW5kICFkZWZhdWx0O1xyXG5cclxuJGZvcm0tcmFkaW8tY2hlY2tlZC1iYWNrZ3JvdW5kOiAgICAgICAgICAgICAgICAgICRnbG9iYWwtcHJpbWFyeS1iYWNrZ3JvdW5kICFkZWZhdWx0O1xyXG4kZm9ybS1yYWRpby1jaGVja2VkLWljb24tY29sb3I6ICAgICAgICAgICAgICAgICAgJGdsb2JhbC1pbnZlcnNlLWNvbG9yICFkZWZhdWx0O1xyXG4kZm9ybS1yYWRpby1jaGVja2VkLWJvcmRlcjogICAgICAgICAgICAgICAgICAgICAgdHJhbnNwYXJlbnQgIWRlZmF1bHQ7XHJcblxyXG4kZm9ybS1yYWRpby1jaGVja2VkLWZvY3VzLWJhY2tncm91bmQ6ICAgICAgICAgICAgZGFya2VuKCRnbG9iYWwtcHJpbWFyeS1iYWNrZ3JvdW5kLCAxMCUpICFkZWZhdWx0O1xyXG5cclxuJGZvcm0tcmFkaW8tZGlzYWJsZWQtYmFja2dyb3VuZDogICAgICAgICAgICAgICAgICRnbG9iYWwtbXV0ZWQtYmFja2dyb3VuZCAhZGVmYXVsdDtcclxuJGZvcm0tcmFkaW8tZGlzYWJsZWQtaWNvbi1jb2xvcjogICAgICAgICAgICAgICAgICRnbG9iYWwtbXV0ZWQtY29sb3IgIWRlZmF1bHQ7XHJcbiRmb3JtLXJhZGlvLWRpc2FibGVkLWJvcmRlcjogICAgICAgICAgICAgICAgICAgICAkZ2xvYmFsLWNvbG9yICFkZWZhdWx0O1xyXG5cclxuJGZvcm0tbGFiZWwtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICRjb2xvci0tcHJpbWFyeTtcclxuJGZvcm0tbGFiZWwtZm9udC1zaXplOiAgICAgICAgICAgICAgICAgICAgICAgICAgIGZlZnMoc3RlcC0tZC0xKTtcclxuJGZvcm0tbGFiZWwtZm9udC13ZWlnaHQ6ICAgICAgICAgICAgICAgICAgICAgICAgIDI1MDtcclxuJGZvcm0tbGFiZWwtbGluZS1oZWlnaHQ6ICAgICAgICAgICAgICAgICAgICAgICAgIDExNSU7XHJcblxyXG4kZm9ybS1pY29uLXdpZHRoOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJGZvcm0taGVpZ2h0ICFkZWZhdWx0O1xyXG4kZm9ybS1pY29uLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJGdsb2JhbC1tdXRlZC1jb2xvciAhZGVmYXVsdDtcclxuJGZvcm0taWNvbi1ob3Zlci1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICAgICRnbG9iYWwtY29sb3IgIWRlZmF1bHQ7XHJcblxyXG4kaW50ZXJuYWwtZm9ybS1zZWxlY3QtaW1hZ2U6IFwiZGF0YTppbWFnZS9zdmcreG1sO2NoYXJzZXQ9VVRGLTgsJTNDc3ZnJTIwd2lkdGglM0QlMjIyNCUyMiUyMGhlaWdodCUzRCUyMjE2JTIyJTIwdmlld0JveCUzRCUyMjAlMjAwJTIwMjQlMjAxNiUyMiUyMHhtbG5zJTNEJTIyaHR0cCUzQSUyRiUyRnd3dy53My5vcmclMkYyMDAwJTJGc3ZnJTIyJTNFJTBBJTIwJTIwJTIwJTIwJTNDcG9seWdvbiUyMGZpbGwlM0QlMjIjMDAwJTIyJTIwcG9pbnRzJTNEJTIyMTIlMjAxJTIwOSUyMDYlMjAxNSUyMDYlMjIlMjAlMkYlM0UlMEElMjAlMjAlMjAlMjAlM0Nwb2x5Z29uJTIwZmlsbCUzRCUyMiMwMDAlMjIlMjBwb2ludHMlM0QlMjIxMiUyMDEzJTIwOSUyMDglMjAxNSUyMDglMjIlMjAlMkYlM0UlMEElM0MlMkZzdmclM0UlMEFcIiAhZGVmYXVsdDtcclxuJGludGVybmFsLWZvcm0tZGF0YWxpc3QtaW1hZ2U6IFwiZGF0YTppbWFnZS9zdmcreG1sO2NoYXJzZXQ9VVRGLTgsJTNDc3ZnJTIwd2lkdGglM0QlMjIyNCUyMiUyMGhlaWdodCUzRCUyMjE2JTIyJTIwdmlld0JveCUzRCUyMjAlMjAwJTIwMjQlMjAxNiUyMiUyMHhtbG5zJTNEJTIyaHR0cCUzQSUyRiUyRnd3dy53My5vcmclMkYyMDAwJTJGc3ZnJTIyJTNFJTBBJTIwJTIwJTIwJTIwJTNDcG9seWdvbiUyMGZpbGwlM0QlMjIjMDAwJTIyJTIwcG9pbnRzJTNEJTIyMTIlMjAxMiUyMDglMjA2JTIwMTYlMjA2JTIyJTIwJTJGJTNFJTBBJTNDJTJGc3ZnJTNFJTBBXCIgIWRlZmF1bHQ7XHJcbiRpbnRlcm5hbC1mb3JtLXJhZGlvLWltYWdlOiBcImRhdGE6aW1hZ2Uvc3ZnK3htbDtjaGFyc2V0PVVURi04LCUzQ3N2ZyUyMHdpZHRoJTNEJTIyMTYlMjIlMjBoZWlnaHQlM0QlMjIxNiUyMiUyMHZpZXdCb3glM0QlMjIwJTIwMCUyMDE2JTIwMTYlMjIlMjB4bWxucyUzRCUyMmh0dHAlM0ElMkYlMkZ3d3cudzMub3JnJTJGMjAwMCUyRnN2ZyUyMiUzRSUwQSUyMCUyMCUyMCUyMCUzQ2NpcmNsZSUyMGZpbGwlM0QlMjIjMDAwJTIyJTIwY3glM0QlMjI4JTIyJTIwY3klM0QlMjI4JTIyJTIwciUzRCUyMjIlMjIlMjAlMkYlM0UlMEElM0MlMkZzdmclM0VcIiAhZGVmYXVsdDtcclxuJGludGVybmFsLWZvcm0tY2hlY2tib3gtaW1hZ2U6IFwiZGF0YTppbWFnZS9zdmcreG1sO2NoYXJzZXQ9VVRGLTgsJTNDc3ZnJTIwd2lkdGglM0QlMjIxNCUyMiUyMGhlaWdodCUzRCUyMjExJTIyJTIwdmlld0JveCUzRCUyMjAlMjAwJTIwMTQlMjAxMSUyMiUyMHhtbG5zJTNEJTIyaHR0cCUzQSUyRiUyRnd3dy53My5vcmclMkYyMDAwJTJGc3ZnJTIyJTNFJTBBJTIwJTIwJTIwJTIwJTNDcG9seWdvbiUyMGZpbGwlM0QlMjIjMDAwJTIyJTIwcG9pbnRzJTNEJTIyMTIlMjAxJTIwNSUyMDcuNSUyMDIlMjA1JTIwMSUyMDUuNSUyMDUlMjAxMCUyMDEzJTIwMS41JTIyJTIwJTJGJTNFJTBBJTNDJTJGc3ZnJTNFJTBBXCIgIWRlZmF1bHQ7XHJcbiRpbnRlcm5hbC1mb3JtLWNoZWNrYm94LWluZGV0ZXJtaW5hdGUtaW1hZ2U6IFwiZGF0YTppbWFnZS9zdmcreG1sO2NoYXJzZXQ9VVRGLTgsJTNDc3ZnJTIwd2lkdGglM0QlMjIxNiUyMiUyMGhlaWdodCUzRCUyMjE2JTIyJTIwdmlld0JveCUzRCUyMjAlMjAwJTIwMTYlMjAxNiUyMiUyMHhtbG5zJTNEJTIyaHR0cCUzQSUyRiUyRnd3dy53My5vcmclMkYyMDAwJTJGc3ZnJTIyJTNFJTBBJTIwJTIwJTIwJTIwJTNDcmVjdCUyMGZpbGwlM0QlMjIjMDAwJTIyJTIweCUzRCUyMjMlMjIlMjB5JTNEJTIyOCUyMiUyMHdpZHRoJTNEJTIyMTAlMjIlMjBoZWlnaHQlM0QlMjIxJTIyJTIwJTJGJTNFJTBBJTNDJTJGc3ZnJTNFXCIgIWRlZmF1bHQ7XHJcblxyXG5cclxuLyoqXHJcbkxJU1RTXHJcbiAqL1xyXG5cclxuJGxpc3QtaXRlbXMtZ2FwOiB2YXIoLS1zcGFjZS1zbWFsbCkgIWRlZmF1bHQ7XHJcblxyXG4kbGlzdC1wYWRkaW5nLWxlZnQ6IDMwcHggIWRlZmF1bHQ7XHJcblxyXG4kbGlzdC1tYXJrZXItaGVpZ2h0OiAxMHB4ICFkZWZhdWx0O1xyXG5cclxuJGxpc3QtcHJpbWFyeS1jb2xvcjogJGdsb2JhbC1wcmltYXJ5LWJhY2tncm91bmQgIWRlZmF1bHQ7XHJcbiRsaXN0LXNlY29uZGFyeS1jb2xvcjogJGdsb2JhbC1zZWNvbmRhcnktYmFja2dyb3VuZCAhZGVmYXVsdDtcclxuXHJcbiRsaXN0LWJ1bGxldC1pY29uLWNvbG9yOiAkZ2xvYmFsLWNvbG9yICFkZWZhdWx0O1xyXG5cclxuJGxpc3QtZGl2aWRlci1wYWRkaW5nLXRvcDogdmFyKC0tc3BhY2Utc21hbGwpICFkZWZhdWx0O1xyXG4kbGlzdC1kaXZpZGVyLWJvcmRlci13aWR0aDogJGdsb2JhbC1ib3JkZXItd2lkdGggIWRlZmF1bHQ7XHJcbiRsaXN0LWRpdmlkZXItYm9yZGVyLWNvbG9yOiAkZ2xvYmFsLWJvcmRlci1jb2xvciAhZGVmYXVsdDtcclxuXHJcbiRsaXN0LXN0cmlwZWQtcGFkZGluZy12ZXJ0aWNhbDogdmFyKC0tc3BhY2Utc21hbGwpICFkZWZhdWx0O1xyXG4kbGlzdC1zdHJpcGVkLXBhZGRpbmctaG9yaXpvbnRhbDogdmFyKC0tc3BhY2UtdGhpbikgIWRlZmF1bHQ7XHJcbiRsaXN0LXN0cmlwZWQtYmFja2dyb3VuZDogJGdsb2JhbC1tdXRlZC1iYWNrZ3JvdW5kICFkZWZhdWx0O1xyXG4kbGlzdC1zdHJpcGVkLWJvcmRlci13aWR0aDogJGdsb2JhbC1ib3JkZXItd2lkdGggIWRlZmF1bHQ7XHJcbiRsaXN0LXN0cmlwZWQtYm9yZGVyLWNvbG9yOiAkZ2xvYmFsLWJvcmRlci1jb2xvciAhZGVmYXVsdDtcclxuXHJcbi8qIERlc2NyaXB0aW9uIGxpc3QgKi9cclxuJGRlc2NyaXB0aW9uLWxpc3QtdGVybS1jb2xvcjogICAgICAgICAgICAgICAgICAgICRnbG9iYWwtZW1waGFzaXMtY29sb3IgIWRlZmF1bHQ7XHJcbiRkZXNjcmlwdGlvbi1saXN0LXRlcm0tbWFyZ2luLXRvcDogICAgICAgICAgICAgICAkZ2xvYmFsLW1hcmdpbiAhZGVmYXVsdDtcclxuXHJcbiRkZXNjcmlwdGlvbi1saXN0LXRlcm0tZm9udC1zaXplOiAgICAgICAgICAgICAgICAkZ2xvYmFsLXNtYWxsLWZvbnQtc2l6ZSAhZGVmYXVsdDtcclxuJGRlc2NyaXB0aW9uLWxpc3QtdGVybS1mb250LXdlaWdodDogICAgICAgICAgICAgIDQwMCAhZGVmYXVsdDtcclxuJGRlc2NyaXB0aW9uLWxpc3QtdGVybS10ZXh0LXRyYW5zZm9ybTogICAgICAgICAgIHVwcGVyY2FzZSAhZGVmYXVsdDtcclxuXHJcbiRkZXNjcmlwdGlvbi1saXN0LWRpdmlkZXItdGVybS1tYXJnaW4tdG9wOiAgICAgICAkZ2xvYmFsLW1hcmdpbiAhZGVmYXVsdDtcclxuJGRlc2NyaXB0aW9uLWxpc3QtZGl2aWRlci10ZXJtLWJvcmRlci13aWR0aDogICAgICRnbG9iYWwtYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xyXG4kZGVzY3JpcHRpb24tbGlzdC1kaXZpZGVyLXRlcm0tYm9yZGVyOiAgICAgICAgICAgJGdsb2JhbC1ib3JkZXItY29sb3IgIWRlZmF1bHQ7XHJcblxyXG4vKipcclxuPT09IFBBR0lOQVRJT04gPT09XHJcbiAqL1xyXG5cclxuJHBhZ2luYXRpb24tbWFyZ2luLWhvcml6b250YWw6ICAgICAgICAgICAgICAgICAgIDAgIWRlZmF1bHQ7XHJcblxyXG4kcGFnaW5hdGlvbi1pdGVtLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgICAgICAgJGdsb2JhbC1mb250LXNpemUgIWRlZmF1bHQ7XHJcbiRwYWdpbmF0aW9uLWl0ZW0tcGFkZGluZy12ZXJ0aWNhbDogICAgICAgICAgICAgICA1cHggIWRlZmF1bHQ7XHJcbiRwYWdpbmF0aW9uLWl0ZW0tcGFkZGluZy1ob3Jpem9udGFsOiAgICAgICAgICAgICAxMHB4ICFkZWZhdWx0O1xyXG4kcGFnaW5hdGlvbi1pdGVtLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgICAgJGdsb2JhbC1tdXRlZC1jb2xvciAhZGVmYXVsdDtcclxuJHBhZ2luYXRpb24taXRlbS1ob3Zlci1jb2xvcjogICAgICAgICAgICAgICAgICAgICRnbG9iYWwtY29sb3IgIWRlZmF1bHQ7XHJcbiRwYWdpbmF0aW9uLWl0ZW0taG92ZXItdGV4dC1kZWNvcmF0aW9uOiAgICAgICAgICBub25lICFkZWZhdWx0O1xyXG4kcGFnaW5hdGlvbi1pdGVtLWFjdGl2ZS1jb2xvcjogICAgICAgICAgICAgICAgICAgJGdsb2JhbC1jb2xvciAhZGVmYXVsdDtcclxuJHBhZ2luYXRpb24taXRlbS1kaXNhYmxlZC1jb2xvcjogICAgICAgICAgICAgICAgICRnbG9iYWwtbXV0ZWQtY29sb3IgIWRlZmF1bHQ7XHJcblxyXG4kcGFnaW5hdGlvbi1hcnJvdy1sZWZ0LXNpZGU6ICAgICAgICAgICAgICAgICAgICAgJ1xcMDBBQicgIWRlZmF1bHQ7XHJcbiRwYWdpbmF0aW9uLWFycm93LXJpZ2h0LXNpZGU6ICAgICAgICAgICAgICAgICAgICAnXFwwMEJCJyAhZGVmYXVsdDtcclxuJHBhZ2luYXRpb24tYXJyb3ctc2l6ZTogICAgICAgICAgICAgICAgICAgICAgICAgICgkcGFnaW5hdGlvbi1pdGVtLWZvbnQtc2l6ZSAqIDEuNzUpICFkZWZhdWx0O1xyXG4kcGFnaW5hdGlvbi1hcnJvdy1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICAgJHBhZ2luYXRpb24taXRlbS1jb2xvciAhZGVmYXVsdDtcclxuJHBhZ2luYXRpb24tYXJyb3ctaG92ZXItY29sb3I6ICAgICAgICAgICAgICAgICAgICRwYWdpbmF0aW9uLWl0ZW0taG92ZXItY29sb3IgIWRlZmF1bHQ7XHJcblxyXG4kcGFnaW5hdGlvbi1jdXN0b20tYXJyb3ctd2lkdGg6ICAgICAgICAgICAgICAgICAgMTVweCAhZGVmYXVsdDtcclxuXHJcblxyXG4vKipcclxuPT09IFRBQkxFID09PVxyXG4gKi9cclxuXHJcbiR0YWJsZS1tYXJnaW4tdmVydGljYWw6ICAgICAgICAgICAgICAgICAgICAgICAgICAkZ2xvYmFsLW1hcmdpbiAhZGVmYXVsdDtcclxuXHJcbiR0YWJsZS1jZWxsLXBhZGRpbmctdmVydGljYWw6ICAgICAgICAgICAgICAgICAgICAxNnB4ICFkZWZhdWx0O1xyXG4kdGFibGUtY2VsbC1wYWRkaW5nLWhvcml6b250YWw6ICAgICAgICAgICAgICAgICAgMTJweCAhZGVmYXVsdDtcclxuXHJcbiR0YWJsZS1oZWFkZXItY2VsbC1mb250LXNpemU6ICAgICAgICAgICAgICAgICAgICAkZ2xvYmFsLWZvbnQtc2l6ZSAhZGVmYXVsdDtcclxuJHRhYmxlLWhlYWRlci1jZWxsLWZvbnQtd2VpZ2h0OiAgICAgICAgICAgICAgICAgIGJvbGQgIWRlZmF1bHQ7XHJcbiR0YWJsZS1oZWFkZXItY2VsbC1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICAkZ2xvYmFsLWNvbG9yICFkZWZhdWx0O1xyXG5cclxuJHRhYmxlLWZvb3Rlci1mb250LXNpemU6ICAgICAgICAgICAgICAgICAgICAgICAgICRnbG9iYWwtc21hbGwtZm9udC1zaXplICFkZWZhdWx0O1xyXG5cclxuJHRhYmxlLWNhcHRpb24tZm9udC1zaXplOiAgICAgICAgICAgICAgICAgICAgICAgICRnbG9iYWwtc21hbGwtZm9udC1zaXplICFkZWZhdWx0O1xyXG4kdGFibGUtY2FwdGlvbi1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICAgICAgJGdsb2JhbC1tdXRlZC1jb2xvciAhZGVmYXVsdDtcclxuXHJcbiR0YWJsZS1yb3ctYWN0aXZlLWJhY2tncm91bmQ6ICAgICAgICAgICAgICAgICAgICAjZmZkICFkZWZhdWx0O1xyXG5cclxuJHRhYmxlLWRpdmlkZXItYm9yZGVyLXdpZHRoOiAgICAgICAgICAgICAgICAgICAgICRnbG9iYWwtYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xyXG4kdGFibGUtZGl2aWRlci1ib3JkZXI6ICAgICAgICAgICAgICAgICAgICAgICAgICAgJGdsb2JhbC1ib3JkZXItY29sb3IgIWRlZmF1bHQ7XHJcblxyXG4kdGFibGUtc3RyaXBlZC1yb3ctYmFja2dyb3VuZDogICAgICAgICAgICAgICAgICAgJGdsb2JhbC1tdXRlZC1iYWNrZ3JvdW5kICFkZWZhdWx0O1xyXG4kdGFibGUtc3RyaXBlZC1ib3JkZXItd2lkdGg6ICAgICAgICAgICAgICAgICAgICAgJGdsb2JhbC1ib3JkZXItd2lkdGggIWRlZmF1bHQ7XHJcbiR0YWJsZS1zdHJpcGVkLWJvcmRlcjogICAgICAgICAgICAgICAgICAgICAgICAgICAkZ2xvYmFsLWJvcmRlci1jb2xvciAhZGVmYXVsdDtcclxuXHJcbiR0YWJsZS1ob3Zlci1yb3ctYmFja2dyb3VuZDogICAgICAgICAgICAgICAgICAgICAkdGFibGUtcm93LWFjdGl2ZS1iYWNrZ3JvdW5kICFkZWZhdWx0O1xyXG5cclxuJHRhYmxlLWV4cGFuZC1taW4td2lkdGg6ICAgICAgICAgICAgICAgICAgICAgICAgIDE1MHB4ICFkZWZhdWx0O1xyXG5cclxuLyoqXHJcbj09PSBMQUJFTCA9PT0gKG5vdCA8bGFiZWw+IGluIGZvcm0pXHJcbiAqL1xyXG5cclxuJGxhYmVsLXBhZGRpbmctdmVydGljYWw6ICAgICAgICAgICAgICAgICAgICAgICAgIDJweCAhZGVmYXVsdDtcclxuJGxhYmVsLXBhZGRpbmctaG9yaXpvbnRhbDogICAgICAgICAgICAgICAgICAgICAgIDEwcHggIWRlZmF1bHQ7XHJcbiRsYWJlbC1iYWNrZ3JvdW5kOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkZ2xvYmFsLXByaW1hcnktYmFja2dyb3VuZCAhZGVmYXVsdDtcclxuJGxhYmVsLWxpbmUtaGVpZ2h0OiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICRnbG9iYWwtbGluZS1oZWlnaHQgIWRlZmF1bHQ7XHJcbiRsYWJlbC1mb250LXNpemU6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkZ2xvYmFsLXNtYWxsLWZvbnQtc2l6ZSAhZGVmYXVsdDtcclxuJGxhYmVsLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICRnbG9iYWwtaW52ZXJzZS1jb2xvciAhZGVmYXVsdDtcclxuXHJcbiRsYWJlbC1zdWNjZXNzLWJhY2tncm91bmQ6ICAgICAgICAgICAgICAgICAgICAgICAkZ2xvYmFsLXN1Y2Nlc3MtYmFja2dyb3VuZCAhZGVmYXVsdDtcclxuJGxhYmVsLXN1Y2Nlc3MtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICRnbG9iYWwtaW52ZXJzZS1jb2xvciAhZGVmYXVsdDtcclxuJGxhYmVsLXdhcm5pbmctYmFja2dyb3VuZDogICAgICAgICAgICAgICAgICAgICAgICRnbG9iYWwtd2FybmluZy1iYWNrZ3JvdW5kICFkZWZhdWx0O1xyXG4kbGFiZWwtd2FybmluZy1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICAgICAgJGdsb2JhbC1pbnZlcnNlLWNvbG9yICFkZWZhdWx0O1xyXG4kbGFiZWwtZGFuZ2VyLWJhY2tncm91bmQ6ICAgICAgICAgICAgICAgICAgICAgICAgJGdsb2JhbC1kYW5nZXItYmFja2dyb3VuZCAhZGVmYXVsdDtcclxuJGxhYmVsLWRhbmdlci1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICAgICAgICRnbG9iYWwtaW52ZXJzZS1jb2xvciAhZGVmYXVsdDtcclxuXHJcbiRsYWJlbC1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAycHggIWRlZmF1bHQ7XHJcbiRsYWJlbC10ZXh0LXRyYW5zZm9ybTogICAgICAgICAgICAgICAgICAgICAgICAgICB1cHBlcmNhc2UgIWRlZmF1bHQ7XHJcblxyXG4vKipcclxuPT09IEhFQURJTkcgPT09XHJcbiAqL1xyXG5cclxuJGhlYWRpbmctbWVkaXVtLWZvbnQtc2l6ZS1sOiAgICAgICAgICAgICAgICAgICAgIDRyZW0gIWRlZmF1bHQ7ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvLyA2NHB4XHJcbiRoZWFkaW5nLWxhcmdlLWZvbnQtc2l6ZS1sOiAgICAgICAgICAgICAgICAgICAgICA2cmVtICFkZWZhdWx0OyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLy8gOTZweFxyXG4kaGVhZGluZy14bGFyZ2UtZm9udC1zaXplLWw6ICAgICAgICAgICAgICAgICAgICAgOHJlbSAhZGVmYXVsdDsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vIDEyOHB4XHJcbiRoZWFkaW5nLTJ4bGFyZ2UtZm9udC1zaXplLWw6ICAgICAgICAgICAgICAgICAgICAxMXJlbSAhZGVmYXVsdDsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLy8gMTc2cHhcclxuXHJcbiRoZWFkaW5nLXNtYWxsLWZvbnQtc2l6ZS1tOiAgICAgICAgICAgICAgICAgICAgICAkaGVhZGluZy1tZWRpdW0tZm9udC1zaXplLWwgKiAwLjgxMjUgIWRlZmF1bHQ7ICAgLy8gMy4yNXJlbSAvIDUycHhcclxuJGhlYWRpbmctbWVkaXVtLWZvbnQtc2l6ZS1tOiAgICAgICAgICAgICAgICAgICAgICRoZWFkaW5nLW1lZGl1bS1mb250LXNpemUtbCAqIDAuODc1ICFkZWZhdWx0OyAgICAvLyAzLjVyZW0gLyA1NnB4XHJcbiRoZWFkaW5nLWxhcmdlLWZvbnQtc2l6ZS1tOiAgICAgICAgICAgICAgICAgICAgICAkaGVhZGluZy1tZWRpdW0tZm9udC1zaXplLWwgIWRlZmF1bHQ7ICAgICAgICAgICAgLy8gNHJlbSAvIDY0cHhcclxuJGhlYWRpbmcteGxhcmdlLWZvbnQtc2l6ZS1tOiAgICAgICAgICAgICAgICAgICAgICRoZWFkaW5nLWxhcmdlLWZvbnQtc2l6ZS1sICFkZWZhdWx0OyAgICAgICAgICAgICAvLyA2cmVtIC8gOTZweFxyXG4kaGVhZGluZy0yeGxhcmdlLWZvbnQtc2l6ZS1tOiAgICAgICAgICAgICAgICAgICAgJGhlYWRpbmcteGxhcmdlLWZvbnQtc2l6ZS1sICFkZWZhdWx0OyAgICAgICAgICAgIC8vIDhyZW0gLyAxMjhweFxyXG5cclxuJGhlYWRpbmctc21hbGwtZm9udC1zaXplOiAgICAgICAgICAgICAgICAgICAgICAgICRoZWFkaW5nLXNtYWxsLWZvbnQtc2l6ZS1tICogMC44ICFkZWZhdWx0OyAgICAgIC8vIDM4cHggMC43M1xyXG4kaGVhZGluZy1tZWRpdW0tZm9udC1zaXplOiAgICAgICAgICAgICAgICAgICAgICAgJGhlYWRpbmctbWVkaXVtLWZvbnQtc2l6ZS1tICogMC44MjUgIWRlZmF1bHQ7ICAgICAvLyA0MHB4IDAuNzE0XHJcbiRoZWFkaW5nLWxhcmdlLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgICAgICAgICAkaGVhZGluZy1sYXJnZS1mb250LXNpemUtbSAqIDAuODUgIWRlZmF1bHQ7ICAgICAgLy8gNTBweCAwLjc4XHJcbiRoZWFkaW5nLXhsYXJnZS1mb250LXNpemU6ICAgICAgICAgICAgICAgICAgICAgICAkaGVhZGluZy1sYXJnZS1mb250LXNpemUtbSAhZGVmYXVsdDsgICAgICAgICAgICAgLy8gNHJlbSAvIDY0cHhcclxuJGhlYWRpbmctMnhsYXJnZS1mb250LXNpemU6ICAgICAgICAgICAgICAgICAgICAgICRoZWFkaW5nLXhsYXJnZS1mb250LXNpemUtbSAhZGVmYXVsdDsgICAgICAgICAgICAvLyA2cmVtIC8gOTZweFxyXG5cclxuJGhlYWRpbmctc21hbGwtbGluZS1oZWlnaHQ6ICAgICAgICAgICAgICAgICAgICAgIDEuMiAhZGVmYXVsdDtcclxuJGhlYWRpbmctbWVkaXVtLWxpbmUtaGVpZ2h0OiAgICAgICAgICAgICAgICAgICAgIDEuMSAhZGVmYXVsdDtcclxuJGhlYWRpbmctbGFyZ2UtbGluZS1oZWlnaHQ6ICAgICAgICAgICAgICAgICAgICAgIDEuMSAhZGVmYXVsdDtcclxuJGhlYWRpbmcteGxhcmdlLWxpbmUtaGVpZ2h0OiAgICAgICAgICAgICAgICAgICAgIDEgIWRlZmF1bHQ7XHJcbiRoZWFkaW5nLTJ4bGFyZ2UtbGluZS1oZWlnaHQ6ICAgICAgICAgICAgICAgICAgICAxICFkZWZhdWx0O1xyXG5cclxuJGhlYWRpbmctZGl2aWRlci1wYWRkaW5nLWJvdHRvbTogICAgICAgICAgICAgICAgIHVucXVvdGUoJ2NhbGMoNXB4ICsgMC4xZW0pJykgIWRlZmF1bHQ7XHJcbiRoZWFkaW5nLWRpdmlkZXItYm9yZGVyLXdpZHRoOiAgICAgICAgICAgICAgICAgICB1bnF1b3RlKCdjYWxjKDAuMnB4ICsgMC4wNWVtKScpICFkZWZhdWx0O1xyXG4kaGVhZGluZy1kaXZpZGVyLWJvcmRlcjogICAgICAgICAgICAgICAgICAgICAgICAgJGdsb2JhbC1ib3JkZXItY29sb3IgIWRlZmF1bHQ7XHJcblxyXG4kaGVhZGluZy1idWxsZXQtdG9wOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdW5xdW90ZSgnY2FsYygtMC4xICogMWVtKScpICFkZWZhdWx0O1xyXG4kaGVhZGluZy1idWxsZXQtaGVpZ2h0OiAgICAgICAgICAgICAgICAgICAgICAgICAgdW5xdW90ZSgnY2FsYyg0cHggKyAwLjdlbSknKSAhZGVmYXVsdDtcclxuJGhlYWRpbmctYnVsbGV0LW1hcmdpbi1yaWdodDogICAgICAgICAgICAgICAgICAgIHVucXVvdGUoJ2NhbGMoNXB4ICsgMC4yZW0pJykgIWRlZmF1bHQ7XHJcbiRoZWFkaW5nLWJ1bGxldC1ib3JkZXItd2lkdGg6ICAgICAgICAgICAgICAgICAgICB1bnF1b3RlKCdjYWxjKDVweCArIDAuMWVtKScpICFkZWZhdWx0O1xyXG4kaGVhZGluZy1idWxsZXQtYm9yZGVyOiAgICAgICAgICAgICAgICAgICAgICAgICAgJGdsb2JhbC1ib3JkZXItY29sb3IgIWRlZmF1bHQ7XHJcblxyXG4kaGVhZGluZy1saW5lLXRvcDogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgNTAlICFkZWZhdWx0O1xyXG4kaGVhZGluZy1saW5lLXdpZHRoOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMjAwMHB4ICFkZWZhdWx0O1xyXG4kaGVhZGluZy1saW5lLWJvcmRlci13aWR0aDogICAgICAgICAgICAgICAgICAgICAgdW5xdW90ZSgnY2FsYygwLjJweCArIDAuMDVlbSknKSAhZGVmYXVsdDtcclxuJGhlYWRpbmctbGluZS1ib3JkZXI6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICRnbG9iYWwtYm9yZGVyLWNvbG9yICFkZWZhdWx0O1xyXG4kaGVhZGluZy1saW5lLWhlaWdodDogICAgICAgICAgICAgICAgICAgICAgICAgICAgJGhlYWRpbmctbGluZS1ib3JkZXItd2lkdGggIWRlZmF1bHQ7XHJcbiRoZWFkaW5nLWxpbmUtbWFyZ2luLWhvcml6b250YWw6ICAgICAgICAgICAgICAgICB1bnF1b3RlKCdjYWxjKDVweCArIDAuM2VtKScpICFkZWZhdWx0O1xyXG5cclxuLyoqXHJcbj09PSBESVZJREVSID09PVxyXG4gKi9cclxuXHJcblxyXG4kZGl2aWRlci1tYXJnaW4tdmVydGljYWw6ICAgICAgICAgICAgICAgICAgICAgICAgJGdsb2JhbC1tYXJnaW4gIWRlZmF1bHQ7XHJcblxyXG4kZGl2aWRlci1pY29uLWNvbnRhaW5lci13aWR0aDogICAgICAgICAgICAgICAgICAgNTBweCAhZGVmYXVsdDtcclxuJGRpdmlkZXItaWNvbi1jb250YWluZXItaGVpZ2h0OiAgICAgICAgICAgICAgICAgIDIwcHggIWRlZmF1bHQ7XHJcbiRkaXZpZGVyLWljb24tc2l6ZTogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAyMHB4ICFkZWZhdWx0O1xyXG4kZGl2aWRlci1pY29uLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJGdsb2JhbC1ib3JkZXItY29sb3IgIWRlZmF1bHQ7XHJcbiRkaXZpZGVyLWljb24tbGluZS10b3A6ICAgICAgICAgICAgICAgICAgICAgICAgICA1MCUgIWRlZmF1bHQ7XHJcbiRkaXZpZGVyLWljb24tbGluZS13aWR0aDogICAgICAgICAgICAgICAgICAgICAgICAxMDAlICFkZWZhdWx0O1xyXG4kZGl2aWRlci1pY29uLWxpbmUtYm9yZGVyLXdpZHRoOiAgICAgICAgICAgICAgICAgJGdsb2JhbC1ib3JkZXItd2lkdGggIWRlZmF1bHQ7XHJcbiRkaXZpZGVyLWljb24tbGluZS1ib3JkZXI6ICAgICAgICAgICAgICAgICAgICAgICAkZ2xvYmFsLWJvcmRlci1jb2xvciAhZGVmYXVsdDtcclxuXHJcbiRpbnRlcm5hbC1kaXZpZGVyLWljb24taW1hZ2U6IFwiZGF0YTppbWFnZS9zdmcreG1sO2NoYXJzZXQ9VVRGLTgsJTNDc3ZnJTIwd2lkdGglM0QlMjIyMCUyMiUyMGhlaWdodCUzRCUyMjIwJTIyJTIwdmlld0JveCUzRCUyMjAlMjAwJTIwMjAlMjAyMCUyMiUyMHhtbG5zJTNEJTIyaHR0cCUzQSUyRiUyRnd3dy53My5vcmclMkYyMDAwJTJGc3ZnJTIyJTNFJTBBJTIwJTIwJTIwJTIwJTNDY2lyY2xlJTIwZmlsbCUzRCUyMm5vbmUlMjIlMjBzdHJva2UlM0QlMjIjMDAwJTIyJTIwc3Ryb2tlLXdpZHRoJTNEJTIyMiUyMiUyMGN4JTNEJTIyMTAlMjIlMjBjeSUzRCUyMjEwJTIyJTIwciUzRCUyMjclMjIlMjAlMkYlM0UlMEElM0MlMkZzdmclM0UlMEFcIiAhZGVmYXVsdDtcclxuXHJcbiRkaXZpZGVyLXNtYWxsLXdpZHRoOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAxMDBweCAhZGVmYXVsdDtcclxuJGRpdmlkZXItc21hbGwtYm9yZGVyLXdpZHRoOiAgICAgICAgICAgICAgICAgICAgICRnbG9iYWwtYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xyXG4kZGl2aWRlci1zbWFsbC1ib3JkZXI6ICAgICAgICAgICAgICAgICAgICAgICAgICAgJGdsb2JhbC1ib3JkZXItY29sb3IgIWRlZmF1bHQ7XHJcblxyXG4kZGl2aWRlci12ZXJ0aWNhbC1oZWlnaHQ6ICAgICAgICAgICAgICAgICAgICAgICAgMTAwcHggIWRlZmF1bHQ7XHJcbiRkaXZpZGVyLXZlcnRpY2FsLWJvcmRlci13aWR0aDogICAgICAgICAgICAgICAgICAkZ2xvYmFsLWJvcmRlci13aWR0aCAhZGVmYXVsdDtcclxuJGRpdmlkZXItdmVydGljYWwtYm9yZGVyOiAgICAgICAgICAgICAgICAgICAgICAgICRnbG9iYWwtYm9yZGVyLWNvbG9yICFkZWZhdWx0O1xyXG5cclxuXHJcbi8qKlxyXG5TRVRUSU5HU1xyXG4gKi9cclxuLy92YWx1ZXM6ICdjbGFtcCcgfCAnY2FsYydcclxuJHNldHRpbmdzLXNwYWNlLXVzZXM6ICdjbGFtcCc7XHJcbiIsIi8qKlxuU0lURSBDT0xPUlNcbiAqL1xuXG4kY29sb3ItLXByaW1hcnk6ICRnbG9iYWwtcHJpbWFyeS1iYWNrZ3JvdW5kICFkZWZhdWx0O1xuJGNvbG9yLS1zZWNvbmRhcnk6ICRnbG9iYWwtc2Vjb25kYXJ5LWJhY2tncm91bmQgIWRlZmF1bHQ7XG4kY29sb3ItLWNvbnRyYXN0LWxpZ2h0OiAkY29sb3ItLXByaW1hcnkgIWRlZmF1bHQ7XG4kY29sb3ItLWNvbnRyYXN0LWRhcms6ICMyNzQ0NDIgIWRlZmF1bHQ7XG4kY29sb3ItLWRhcms6ICMwMTAxMDEgIWRlZmF1bHQ7XG4kY29sb3ItLWJvZHk6ICMyNzQ0NDIgIWRlZmF1bHQ7XG4kY29sb3ItLWJnLWxpZ2h0OiAkY29sb3ItLXByaW1hcnkgIWRlZmF1bHQ7XG5cbiRjb2xvci1zaXRlLXNwZWNpZmljLS1oZWFkaW5nOiAjMjc0NDQyICFkZWZhdWx0O1xuJGNvbG9yLXNpdGUtc3BlY2lmaWMtLWdyYXk6ICNmMWYxZjEgIWRlZmF1bHQ7XG4kY29sb3Itc2l0ZS1zcGVjaWZpYy0tbGlnaHQtZ3JheTogI0Y0RjRGNCAhZGVmYXVsdDtcbiRjb2xvci1zaXRlLXNwZWNpZmljLS1saWdodGVyLWdyYXk6ICNmNmY2ZjYgIWRlZmF1bHQ7XG5cbi8qKlxuRk9OVFMgQU5EIFNUWUxFU1xuICovXG4kZm9udC1wcmltYXJ5OiAnTW9udHNlcnJhdCcsIHNhbnMtc2VyaWYgIWRlZmF1bHQ7XG4kZm9udC1zZWNvbmRhcnk6ICdNYW5yb3BlJywgc2Fucy1zZXJpZiAhZGVmYXVsdDtcbiRib2R5LWZvbnQtc3R5bGU6IG5vcm1hbCAhZGVmYXVsdDtcbiRib2R5LWZvbnQtd2VpZ2h0OiAzMDAgIWRlZmF1bHQ7XG4kZm9udC1ib2xkLXByaW1hcnk6IDcwMCAhZGVmYXVsdDtcbiRmb250LXNpdGUtc3BlY2lmaWMtLW1lZGl1bTogNTAwICFkZWZhdWx0O1xuJGZvbnQtc2l0ZS1zcGVjaWZpYy0tYmxhY2s6IDgwMCAhZGVmYXVsdDtcblxuJGZvbnQtZmFtaWx5LWhlYWRpbmdzOiAkZm9udC1zZWNvbmRhcnkgIWRlZmF1bHQ7XG4kZm9udC13aWR0aC1oZWFkaW5nczogNDAwICFkZWZhdWx0O1xuXG4vKipcbkJPRFlcbiAqL1xuJGJvZHktYmFja2dyb3VuZC1jb2xvcjogJGdsb2JhbC1iYWNrZ3JvdW5kICFkZWZhdWx0O1xuXG4vKipcbkhFQURFUlxuICovXG4kaGVhZGVyLW1vYmlsLWhlaWdodDogNTZweCAhZGVmYXVsdDtcbiRoZWFkZXItaGVpZ2h0OiAxMDBweCAhZGVmYXVsdDtcbiRoZWFkZXItYmctLWNvbG9yOiAkYm9keS1iYWNrZ3JvdW5kLWNvbG9yICFkZWZhdWx0O1xuXG4kbG9nby1jb250YWluZXItd2lkdGg6IDEwMHB4ICFkZWZhdWx0O1xuJGxvZ28tY29udGFpbmVyLWhlaWdodDogMTAwJSAhZGVmYXVsdDtcblxuLyoqXG5OQVZcbiAqL1xuXG5cbi8qKlxuTkFWQkFSXG4gKi9cbiRtb2JpbGUtbmF2aWdhdGlvbi1idXR0b24tY29udGFpbmVyLXNpemU6IDQwcHggIWRlZmF1bHQ7XG4kbW9iaWxlLW5hdmlnYXRpb24tYnV0dG9uLWJhY2tncm91bmQ6IHJnYmEoJGNvbG9yLS1zZWNvbmRhcnksIC4yKSAhZGVmYXVsdDtcbiRtb2JpbGUtbmF2aWdhdGlvbi1idXR0b24tY29udGFpbmVyLXJhZGl1czogMCAhZGVmYXVsdDtcbiRuYXZiYXItb3ZlcmxheS1iYWNrZ3JvdW5kOiAjZmZmICFkZWZhdWx0O1xuJG5hdmJhci1iYWNrZ3JvdW5kOiAkbmF2YmFyLW92ZXJsYXktYmFja2dyb3VuZCAhZGVmYXVsdDtcblxuJG5hdmJhci1saW5rLWNvbG9yLS1kZWZhdWx0OiAkY29sb3ItLXNlY29uZGFyeSAhZGVmYXVsdDtcbiRuYXZiYXItbGluay1jb2xvci0taGlnaGxpZ2h0OiAkZ2xvYmFsLXByaW1hcnktYmFja2dyb3VuZCAhZGVmYXVsdDtcbiRuYXZiYXItbGluay1jb2xvci0taG92ZXI6ICRjb2xvci0tY29udHJhc3QtZGFyayAhZGVmYXVsdDtcbiRuYXZiYXItbGluay1mb250LS1zaXplLW1vYmlsOiAxOXB4ICFkZWZhdWx0O1xuJG5hdmJhci1saW5rLWZvbnQtLXNpemUtYmVmb3JlLWRlc2t0b3A6IDE0cHggIWRlZmF1bHQ7XG4kbmF2YmFyLWxpbmstZm9udC0tc2l6ZTogMThweCAhZGVmYXVsdDtcbiRuYXZiYXItbGluay1mb250LS1saW5lLWhlaWdodDogMS4xNSAhZGVmYXVsdDtcbiRuYXZiYXItbGluay1mb250LWZhbWlseTogJGZvbnQtc2Vjb25kYXJ5ICFkZWZhdWx0O1xuLyoqXG5HUklEXG4gKi9cbiRncmlkLWNvbnRhaW5lcjogMTYwMHB4ICFkZWZhdWx0O1xuJGdyaWQtd3JhcHBlcjogMTQ2MHB4ICFkZWZhdWx0O1xuJGdyaWQtY29udGFpbmVyLS1jb250ZW50LXBhZGRpbmc6IDE1cHggIWRlZmF1bHQ7XG4kZ3JpZC1jb250YWluZXItLWNvbnRlbnQtcGFkZGluZy1zbTogY2xhbXAoMTVweCwgNXZ3LCAyMHB4KSAhZGVmYXVsdDtcbiRncmlkLWNvbnRhaW5lci0tY29udGVudC1wYWRkaW5nLW1kOiBjbGFtcCgzMHB4LCA1dncsIDQwcHgpICFkZWZhdWx0O1xuJGdyaWQtY29udGFpbmVyLS1jb250ZW50LXBhZGRpbmctbGc6IGNsYW1wKDM1cHgsIDR2dywgNDVweCkgIWRlZmF1bHQ7XG4kZ3JpZC1oZWFkZXItLW5hdi1zaG93LWF0OiAxMDAwcHggIWRlZmF1bHQ7XG5cbi8qKlxuVFlQT0dSQVBIWVxuICovXG4kbGluay1jb2xvci0tZGVmYXVsdCA6ICRjb2xvci0tY29udHJhc3QtbGlnaHQgIWRlZmF1bHQ7XG4kbGluay1jb2xvci0tdmlzaXRlZCA6ICRjb2xvci0tY29udHJhc3QtZGFyayAhZGVmYXVsdDtcbiRsaW5rLWNvbG9yLS1mb2N1cyA6ICRjb2xvci0tc2Vjb25kYXJ5ICFkZWZhdWx0O1xuJGxpbmstY29sb3ItLWhvdmVyIDogJGNvbG9yLS1zZWNvbmRhcnkgIWRlZmF1bHQ7XG4kbGluay1jb2xvci0tYWN0aXZlIDogJGNvbG9yLS1zZWNvbmRhcnkgIWRlZmF1bHQ7XG5cbi8vLyoqXG4vLz09PSBCVVRUT04gPT09XG4vLyAqL1xuXG4kYnV0dG9uLWxpbmUtaGVpZ2h0OiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJGdsb2JhbC1jb250cm9sLWhlaWdodCAhZGVmYXVsdDtcbiRidXR0b24tc21hbGwtbGluZS1oZWlnaHQ6ICAgICAgICAgICAgICAgICAgICAgICAkZ2xvYmFsLWNvbnRyb2wtc21hbGwtaGVpZ2h0ICFkZWZhdWx0O1xuJGJ1dHRvbi1sYXJnZS1saW5lLWhlaWdodDogICAgICAgICAgICAgICAgICAgICAgICRnbG9iYWwtY29udHJvbC1sYXJnZS1oZWlnaHQgIWRlZmF1bHQ7XG5cbiRidXR0b24tZm9udC1zaXplOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkZ2xvYmFsLWZvbnQtc2l6ZSAhZGVmYXVsdDtcbiRidXR0b24tc21hbGwtZm9udC1zaXplOiAgICAgICAgICAgICAgICAgICAgICAgICAkZ2xvYmFsLXNtYWxsLWZvbnQtc2l6ZSAhZGVmYXVsdDtcbiRidXR0b24tbGFyZ2UtZm9udC1zaXplOiAgICAgICAgICAgICAgICAgICAgICAgICAkZ2xvYmFsLW1lZGl1bS1mb250LXNpemUgIWRlZmF1bHQ7XG5cbiRidXR0b24tcGFkZGluZy1ob3Jpem9udGFsOiAgICAgICAgICAgICAgICAgICAgICAkZ2xvYmFsLWd1dHRlciAhZGVmYXVsdDtcbiRidXR0b24tc21hbGwtcGFkZGluZy1ob3Jpem9udGFsOiAgICAgICAgICAgICAgICAkZ2xvYmFsLXNtYWxsLWd1dHRlciAhZGVmYXVsdDtcbiRidXR0b24tbGFyZ2UtcGFkZGluZy1ob3Jpem9udGFsOiAgICAgICAgICAgICAgICAkZ2xvYmFsLW1lZGl1bS1ndXR0ZXIgIWRlZmF1bHQ7XG5cbiRidXR0b24tZGVmYXVsdC1iYWNrZ3JvdW5kOiAgICAgICAgICAgICAgICAgICAgICAkZ2xvYmFsLW11dGVkLWJhY2tncm91bmQgIWRlZmF1bHQ7XG4kYnV0dG9uLWRlZmF1bHQtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgICAgJGdsb2JhbC1lbXBoYXNpcy1jb2xvciAhZGVmYXVsdDtcbiRidXR0b24tZGVmYXVsdC1ob3Zlci1iYWNrZ3JvdW5kOiAgICAgICAgICAgICAgICBkYXJrZW4oJGJ1dHRvbi1kZWZhdWx0LWJhY2tncm91bmQsIDUlKSAhZGVmYXVsdDtcbiRidXR0b24tZGVmYXVsdC1ob3Zlci1jb2xvcjogICAgICAgICAgICAgICAgICAgICAkZ2xvYmFsLWVtcGhhc2lzLWNvbG9yICFkZWZhdWx0O1xuJGJ1dHRvbi1kZWZhdWx0LWFjdGl2ZS1iYWNrZ3JvdW5kOiAgICAgICAgICAgICAgIGRhcmtlbigkYnV0dG9uLWRlZmF1bHQtYmFja2dyb3VuZCwgMTAlKSAhZGVmYXVsdDtcbiRidXR0b24tZGVmYXVsdC1hY3RpdmUtY29sb3I6ICAgICAgICAgICAgICAgICAgICAkZ2xvYmFsLWVtcGhhc2lzLWNvbG9yICFkZWZhdWx0O1xuXG4kYnV0dG9uLXByaW1hcnktYmFja2dyb3VuZDogICAgICAgICAgICAgICAgICAgICAgJGdsb2JhbC1wcmltYXJ5LWJhY2tncm91bmQgIWRlZmF1bHQ7XG4kYnV0dG9uLXByaW1hcnktY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgICAgJGdsb2JhbC1pbnZlcnNlLWNvbG9yICFkZWZhdWx0O1xuJGJ1dHRvbi1wcmltYXJ5LWhvdmVyLWJhY2tncm91bmQ6ICAgICAgICAgICAgICAgIGRhcmtlbigkYnV0dG9uLXByaW1hcnktYmFja2dyb3VuZCwgNSUpICFkZWZhdWx0O1xuJGJ1dHRvbi1wcmltYXJ5LWhvdmVyLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICRnbG9iYWwtaW52ZXJzZS1jb2xvciAhZGVmYXVsdDtcbiRidXR0b24tcHJpbWFyeS1hY3RpdmUtYmFja2dyb3VuZDogICAgICAgICAgICAgICBkYXJrZW4oJGJ1dHRvbi1wcmltYXJ5LWJhY2tncm91bmQsIDEwJSkgIWRlZmF1bHQ7XG4kYnV0dG9uLXByaW1hcnktYWN0aXZlLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgJGdsb2JhbC1pbnZlcnNlLWNvbG9yICFkZWZhdWx0O1xuXG4kYnV0dG9uLXNlY29uZGFyeS1iYWNrZ3JvdW5kOiAgICAgICAgICAgICAgICAgICAgJGdsb2JhbC1zZWNvbmRhcnktYmFja2dyb3VuZCAhZGVmYXVsdDtcbiRidXR0b24tc2Vjb25kYXJ5LWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgICAkZ2xvYmFsLWludmVyc2UtY29sb3IgIWRlZmF1bHQ7XG4kYnV0dG9uLXNlY29uZGFyeS1ob3Zlci1iYWNrZ3JvdW5kOiAgICAgICAgICAgICAgZGFya2VuKCRidXR0b24tc2Vjb25kYXJ5LWJhY2tncm91bmQsIDUlKSAhZGVmYXVsdDtcbiRidXR0b24tc2Vjb25kYXJ5LWhvdmVyLWNvbG9yOiAgICAgICAgICAgICAgICAgICAkZ2xvYmFsLWludmVyc2UtY29sb3IgIWRlZmF1bHQ7XG4kYnV0dG9uLXNlY29uZGFyeS1hY3RpdmUtYmFja2dyb3VuZDogICAgICAgICAgICAgZGFya2VuKCRidXR0b24tc2Vjb25kYXJ5LWJhY2tncm91bmQsIDEwJSkgIWRlZmF1bHQ7XG4kYnV0dG9uLXNlY29uZGFyeS1hY3RpdmUtY29sb3I6ICAgICAgICAgICAgICAgICAgJGdsb2JhbC1pbnZlcnNlLWNvbG9yICFkZWZhdWx0O1xuXG4kYnV0dG9uLWltYWdlLXdpZHRoOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMzBweCAhZGVmYXVsdDtcbiRidXR0b24taW1hZ2UtaGVpZ2h0OiAgICAgICAgICAgICAgICAgICAgICAgICAgICAyNXB4ICFkZWZhdWx0O1xuJGJ1dHRvbi1pbWFnZS1nYXA6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDE1cHggIWRlZmF1bHQ7XG5cbiRidXR0b24tdW5kZXJsaW5lLWxpbmUtd2lkdGg6ICAgICAgICAgICAgICAgICAgICA3NSUgIWRlZmF1bHQ7XG4kYnV0dG9uLXVuZGVybGluZS1saW5lLWhlaWdodDogICAgICAgICAgICAgICAgICAgMnB4ICFkZWZhdWx0O1xuJGJ1dHRvbi11bmRlcmxpbmUtbGluZS1iYWNrZ3JvdW5kOiAgICAgICAgICAgICAgICRnbG9iYWwtcHJpbWFyeS1iYWNrZ3JvdW5kICFkZWZhdWx0O1xuJGJ1dHRvbi11bmRlcmxpbmUtbGluZS1wb3NpdGlvbjogICAgICAgICAgICAgICAgIC0ycHggIWRlZmF1bHQ7XG5cbiRidXR0b24tZGFuZ2VyLWJhY2tncm91bmQ6ICAgICAgICAgICAgICAgICAgICAgICAkZ2xvYmFsLWRhbmdlci1iYWNrZ3JvdW5kICFkZWZhdWx0O1xuJGJ1dHRvbi1kYW5nZXItY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICRnbG9iYWwtaW52ZXJzZS1jb2xvciAhZGVmYXVsdDtcbiRidXR0b24tZGFuZ2VyLWhvdmVyLWJhY2tncm91bmQ6ICAgICAgICAgICAgICAgICBkYXJrZW4oJGJ1dHRvbi1kYW5nZXItYmFja2dyb3VuZCwgNSUpICFkZWZhdWx0O1xuJGJ1dHRvbi1kYW5nZXItaG92ZXItY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICRnbG9iYWwtaW52ZXJzZS1jb2xvciAhZGVmYXVsdDtcbiRidXR0b24tZGFuZ2VyLWFjdGl2ZS1iYWNrZ3JvdW5kOiAgICAgICAgICAgICAgICBkYXJrZW4oJGJ1dHRvbi1kYW5nZXItYmFja2dyb3VuZCwgMTAlKSAhZGVmYXVsdDtcbiRidXR0b24tZGFuZ2VyLWFjdGl2ZS1jb2xvcjogICAgICAgICAgICAgICAgICAgICAkZ2xvYmFsLWludmVyc2UtY29sb3IgIWRlZmF1bHQ7XG5cbiRidXR0b24tZGlzYWJsZWQtYmFja2dyb3VuZDogICAgICAgICAgICAgICAgICAgICAkZ2xvYmFsLW11dGVkLWJhY2tncm91bmQgIWRlZmF1bHQ7XG4kYnV0dG9uLWRpc2FibGVkLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgICAgJGdsb2JhbC1tdXRlZC1jb2xvciAhZGVmYXVsdDtcblxuJGJ1dHRvbi10ZXh0LWxpbmUtaGVpZ2h0OiAgICAgICAgICAgICAgICAgICAgICAgICRnbG9iYWwtbGluZS1oZWlnaHQgIWRlZmF1bHQ7XG4kYnV0dG9uLXRleHQtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJGdsb2JhbC1lbXBoYXNpcy1jb2xvciAhZGVmYXVsdDtcbiRidXR0b24tdGV4dC1ob3Zlci1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICAkZ2xvYmFsLW11dGVkLWNvbG9yICFkZWZhdWx0O1xuJGJ1dHRvbi10ZXh0LWRpc2FibGVkLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICRnbG9iYWwtbXV0ZWQtY29sb3IgIWRlZmF1bHQ7XG4kYnV0dG9uLXRleHQtdHJhbnNmb3JtOiAgICAgICAgICAgICAgICAgICAgICAgICAgbm9uZSAhZGVmYXVsdDtcblxuJGJ1dHRvbi1saW5rLWxpbmUtaGVpZ2h0OiAgICAgICAgICAgICAgICAgICAgICAgICRnbG9iYWwtbGluZS1oZWlnaHQgIWRlZmF1bHQ7XG4kYnV0dG9uLWxpbmstY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJGdsb2JhbC1lbXBoYXNpcy1jb2xvciAhZGVmYXVsdDtcbiRidXR0b24tbGluay1ob3Zlci1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICAkZ2xvYmFsLW11dGVkLWNvbG9yICFkZWZhdWx0O1xuJGJ1dHRvbi1saW5rLWhvdmVyLXRleHQtZGVjb3JhdGlvbjogICAgICAgICAgICAgIG5vbmUgIWRlZmF1bHQ7XG4kYnV0dG9uLWxpbmstZGlzYWJsZWQtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgJGdsb2JhbC1tdXRlZC1jb2xvciAhZGVmYXVsdDtcblxuJGJ1dHRvbi1ib3JkZXItd2lkdGg6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICRnbG9iYWwtYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJGJ1dHRvbi1ib3JkZXItY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICRidXR0b24tZGVmYXVsdC1jb2xvciAhZGVmYXVsdDtcbiRidXR0b24tYm9yZGVyLWhvdmVyLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAkYnV0dG9uLWRlZmF1bHQtaG92ZXItY29sb3IgIWRlZmF1bHQ7XG4kYnV0dG9uLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAgICAgICAgICAgICAgICAgMCAhZGVmYXVsdDtcblxuJGJ1dHRvbi1wcmltYXJ5LWJvcmRlci1jb2xvcjogICAgICAgICAgICAgICAgICAgICRidXR0b24tYm9yZGVyLWNvbG9yICFkZWZhdWx0O1xuJGJ1dHRvbi1wcmltYXJ5LWJvcmRlci1ob3Zlci1jb2xvcjogICAgICAgICAgICAgICRidXR0b24tZGVmYXVsdC1ob3Zlci1jb2xvciAhZGVmYXVsdDtcblxuJGJ1dHRvbi1zZWNvbmRhcnktYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICAgICAgICRidXR0b24tYm9yZGVyLWNvbG9yICFkZWZhdWx0O1xuJGJ1dHRvbi1zZWNvbmRhcnktYm9yZGVyLWhvdmVyLWNvbG9yOiAgICAgICAgICAgICRidXR0b24tZGVmYXVsdC1ob3Zlci1jb2xvciAhZGVmYXVsdDtcblxuLyoqXG49PT0gTkFWSUdBVElPTiA9PT1cbiAqL1xuJG5hdi1saW5rLWNvbG9yLS1kZWZhdWx0OiAjMjc0NDQyICFkZWZhdWx0O1xuJG5hdi1saW5rLWNvbG9yLS1oaWdobGlnaHQ6ICRuYXYtbGluay1jb2xvci0tZGVmYXVsdCAhZGVmYXVsdDtcbiRuYXYtbGluay1jb2xvci0taG92ZXI6ICRjb2xvci0tcHJpbWFyeSAhZGVmYXVsdDtcblxuJG5hdi1saW5rLWZvbnQtLXNpemUtbW9iaWw6IDE5cHggIWRlZmF1bHQ7XG4kbmF2LWxpbmstZm9udC0tc2l6ZS1iZWZvcmUtZGVza3RvcDogMTRweCAhZGVmYXVsdDtcbiRuYXYtbGluay1mb250LS1zaXplOiAyNHB4ICFkZWZhdWx0O1xuJG5hdi1saW5rLWZvbnQtLWxpbmUtaGVpZ2h0OiAxLjE1ICFkZWZhdWx0O1xuJG5hdi1saW5rLWZvbnQtZmFtaWx5OiAkZm9udC1zZWNvbmRhcnkgIWRlZmF1bHQ7XG5cbiRuYXZpZ2F0aW9uLW92ZXJsYXktei1pbmRleDogNTAwICFkZWZhdWx0O1xuJG5hdmlnYXRpb24tb3ZlcmxheS1iZy1jb2xvcjogI2ZmZiAhZGVmYXVsdDtcbiRuYXZpZ2F0aW9uLW92ZXJsYXktb3BhY2l0eS0tb3BlbjogMC45OTggIWRlZmF1bHQ7XG5cbiRuYXZpZ2F0aW9uLW9wZW5lci1idXR0b24tY29sb3ItLWFjdGl2ZTogIzIwMjAyNiAhZGVmYXVsdDtcbiRuYXZpZ2F0aW9uLW9wZW5lci1idXR0b24tY29sb3ItLWJhY2tncm91bmQ6ICRjb2xvci0tc2Vjb25kYXJ5ICFkZWZhdWx0O1xuJG5hdmlnYXRpb24tb3BlbmVyLWJ1dHRvbi1jb2xvci0tYmFja2dyb3VuZC1vcGFjaXR5OiAuMiAhZGVmYXVsdDtcbiRuYXZpZ2F0aW9uLW9wZW5lci1idXR0b24td2lkdGg6IDIycHggIWRlZmF1bHQ7XG4kbmF2aWdhdGlvbi1vcGVuZXItYnV0dG9uLWhlaWdodDogMTguODRweCAhZGVmYXVsdDtcbiRuYXZpZ2F0aW9uLW9wZW5lci1idXR0b24tZGV2aWNlLXBhZGRpbmc6IDBweCAhZGVmYXVsdDtcblxuJG5hdmlnYXRpb24tb3BlbmVkLWxpbmstY29sb3ItLWRlZmF1bHQ6ICRjb2xvci0tYm9keSAhZGVmYXVsdDtcblxuXG4kei1kb3duLS0yIDogLTEwO1xuJHotZG93bi0tMSA6IC0xO1xuJHotdXAtLTEgOiAxO1xuJHotdXAtLTIgOiAxMDtcbiR6LXVwLS0zIDogMjA7XG4kei11cC0tNCA6IDQwO1xuXG4vKipcbkZPT1RFUlxuICovXG4kZm9vdGVyLWJnLWNvbG9yOiAgJGJvZHktYmFja2dyb3VuZC1jb2xvciAhZGVmYXVsdDtcbiRmb290ZXItY29sb3I6ICRjb2xvci0tYm9keSAhZGVmYXVsdDtcbiRmb290ZXItZm9udC1mYW1pbHk6ICRmb250LXByaW1hcnkgIWRlZmF1bHQ7XG4kZm9vdGVyLWZvbnQtc2l6ZTogMXJlbSAhZGVmYXVsdDtcbiRmb290ZXItbGluZS1oZWlnaHQ6IDEuMTYgIWRlZmF1bHQ7XG4kZm9vdGVyLWZvbnQtd2VpZ2h0OiA0MDAgIWRlZmF1bHQ7XG4kZm9vdGVyLXBhZGRpbmc6IDAgIWRlZmF1bHQ7XG4kZm9vdGVyLWhlaWdodDogYXV0byAhZGVmYXVsdDtcblxuLyoqXG5DT1BZUklHSFRcbiAqL1xuJGNvcHlyaWdodC1mb250LS1mYW1pbHk6ICRmb250LXByaW1hcnkgIWRlZmF1bHQ7XG4kY29weXJpZ2h0LWZvbnQtLXN0eWxlOiBub3JtYWwgIWRlZmF1bHQ7XG4kY29weXJpZ2h0LWZvbnQtLXdlaWdodDogNTAwICFkZWZhdWx0O1xuJGNvcHlyaWdodC1mb250LS1zaXplOiBjYWxjKCN7dmFyKC0tZm9udC1zY2FsZV9fYmFzZSl9ICogI3ttYXAtZ2V0KCRmb250LXNjYWxlLCBzdGVwLS1kLTEpfSkgIWRlZmF1bHQ7XG4kY29weXJpZ2h0LWZvbnQtLWxpbmUtaGVpZ2h0OiAxLjE1ICFkZWZhdWx0O1xuJGNvcHlyaWdodC1mb250LS1jb2xvcjogJGNvbG9yLS1jb250cmFzdC1kYXJrICFkZWZhdWx0O1xuXG4vKipcbj09PSBNRVNTQUdFIEJPWCA9PT1cbiAqL1xuJG1zZy1ib3gtY29sb3I6ICNmZmYgIWRlZmF1bHQ7XG4kbXNnLWJveC1iZy1jb2xvcjogJGNvbG9yLS1wcmltYXJ5ICFkZWZhdWx0O1xuJG1zZy1ib3gtc3VjY2Vzcy10ZXh0LWNvbG9yOiAjM0E2MTREICFkZWZhdWx0O1xuJG1zZy1ib3gtc3VjY2Vzcy1ib3JkZXItY29sb3I6ICM4MkM3MDggIWRlZmF1bHQ7XG4kbXNnLWJveC1wYWRkaW5nOiB2YXIoLS1zcGFjZS1tZWRpdW0pICFkZWZhdWx0O1xuJG1zZy1ib3gtZm9udC1mYW1pbHk6ICRmb250LXByaW1hcnkgIWRlZmF1bHQ7XG4kbXNnLWJveC1mb250LXdlaWdodDogJGJvZHktZm9udC13ZWlnaHQgIWRlZmF1bHQ7XG4kbXNnLWJveC1mb250LXNpemU6IHZhcigtLWJhc2UtZm9udC1zaXplKSAhZGVmYXVsdDtcbiRtc2ctYm94LWxpbmUtaGVpZ2h0OiB2YXIoLS1saG0tLTApICFkZWZhdWx0O1xuJG1zZy1ib3gtYm9yZGVyLWNvbG9yOiAkY29sb3ItLXNlY29uZGFyeSAhZGVmYXVsdDtcbiRtc2ctYm94LWJvcmRlci13aWR0aDogOHB4ICFkZWZhdWx0O1xuJG1zZy1ib3gtYm9yZGVyLWRlZmF1bHRzOiAkbXNnLWJveC1ib3JkZXItd2lkdGggc29saWQgJG1zZy1ib3gtYm9yZGVyLWNvbG9yICFkZWZhdWx0O1xuXG4vKipcbkJSRUFEQ1JVTUJTXG4gKi9cblxuJGJyZWFkY3J1bWItaXRlbS1mb250LXNpemU6ICRnbG9iYWwtc21hbGwtZm9udC1zaXplICFkZWZhdWx0O1xuJGJyZWFkY3J1bWItaXRlbS1jb2xvcjogJGdsb2JhbC1tdXRlZC1jb2xvciAhZGVmYXVsdDtcbiRicmVhZGNydW1iLWl0ZW0taG92ZXItY29sb3I6ICRnbG9iYWwtY29sb3IgIWRlZmF1bHQ7XG4kYnJlYWRjcnVtYi1pdGVtLWhvdmVyLXRleHQtZGVjb3JhdGlvbjogbm9uZSAhZGVmYXVsdDtcbiRicmVhZGNydW1iLWl0ZW0tYWN0aXZlLWNvbG9yOiAkZ2xvYmFsLWNvbG9yICFkZWZhdWx0O1xuXG4kYnJlYWRjcnVtYi1kaXZpZGVyOiAnXFwyMTkyJyAhZGVmYXVsdDtcbiRicmVhZGNydW1iLWRpdmlkZXItbWFyZ2luLWhvcml6b250YWw6IDIwcHggIWRlZmF1bHQ7XG4kYnJlYWRjcnVtYi1kaXZpZGVyLWZvbnQtc2l6ZTogJGJyZWFkY3J1bWItaXRlbS1mb250LXNpemUgIWRlZmF1bHQ7XG4kYnJlYWRjcnVtYi1kaXZpZGVyLWNvbG9yOiAkZ2xvYmFsLW11dGVkLWNvbG9yICFkZWZhdWx0O1xuXG4kYnJlYWRjcnVtYi1jdXN0b20tZGl2aWRlci13aWR0aDogMTVweCAhZGVmYXVsdDtcblxuLyoqXG5DQVJEXG4gKi9cblxuJGNhcmQtYm9keS1wYWRkaW5nLWhvcml6b250YWw6ICAgICAgICAgICAgICAgICAgJGdsb2JhbC1ndXR0ZXIgIWRlZmF1bHQ7XG4kY2FyZC1ib2R5LXBhZGRpbmctdmVydGljYWw6ICAgICAgICAgICAgICAgICAgICAkZ2xvYmFsLWd1dHRlciAhZGVmYXVsdDtcblxuJGNhcmQtYm9keS1wYWRkaW5nLWhvcml6b250YWwtbDogICAgICAgICAgICAgICAgJGdsb2JhbC1tZWRpdW0tZ3V0dGVyICFkZWZhdWx0O1xuJGNhcmQtYm9keS1wYWRkaW5nLXZlcnRpY2FsLWw6ICAgICAgICAgICAgICAgICAgJGdsb2JhbC1tZWRpdW0tZ3V0dGVyICFkZWZhdWx0O1xuXG4kY2FyZC1oZWFkZXItcGFkZGluZy1ob3Jpem9udGFsOiAgICAgICAgICAgICAgICAkZ2xvYmFsLWd1dHRlciAhZGVmYXVsdDtcbiRjYXJkLWhlYWRlci1wYWRkaW5nLXZlcnRpY2FsOiAgICAgICAgICAgICAgICAgIHJvdW5kKCgkZ2xvYmFsLWd1dHRlciAqIDAuNSkpICFkZWZhdWx0O1xuXG4kY2FyZC1oZWFkZXItcGFkZGluZy1ob3Jpem9udGFsLWw6ICAgICAgICAgICAgICAkZ2xvYmFsLW1lZGl1bS1ndXR0ZXIgIWRlZmF1bHQ7XG4kY2FyZC1oZWFkZXItcGFkZGluZy12ZXJ0aWNhbC1sOiAgICAgICAgICAgICAgICByb3VuZCgoJGdsb2JhbC1tZWRpdW0tZ3V0dGVyICogMC41KSkgIWRlZmF1bHQ7XG5cbiRjYXJkLWZvb3Rlci1wYWRkaW5nLWhvcml6b250YWw6ICAgICAgICAgICAgICAgICRnbG9iYWwtZ3V0dGVyICFkZWZhdWx0O1xuJGNhcmQtZm9vdGVyLXBhZGRpbmctdmVydGljYWw6ICAgICAgICAgICAgICAgICAgKCRnbG9iYWwtZ3V0dGVyICogMC41KSAhZGVmYXVsdDtcblxuJGNhcmQtZm9vdGVyLXBhZGRpbmctaG9yaXpvbnRhbC1sOiAgICAgICAgICAgICAgJGdsb2JhbC1tZWRpdW0tZ3V0dGVyICFkZWZhdWx0O1xuJGNhcmQtZm9vdGVyLXBhZGRpbmctdmVydGljYWwtbDogICAgICAgICAgICAgICAgcm91bmQoKCRnbG9iYWwtbWVkaXVtLWd1dHRlciAqIDAuNSkpICFkZWZhdWx0O1xuXG4kY2FyZC10aXRsZS1mb250LXNpemU6ICAgICAgICAgICAgICAgICAgICAgICAgICAkZ2xvYmFsLW1lZGl1bS1mb250LXNpemUgIWRlZmF1bHQ7XG4kY2FyZC10aXRsZS1saW5lLWhlaWdodDogICAgICAgICAgICAgICAgICAgICAgICAxLjQgIWRlZmF1bHQ7XG5cbiRjYXJkLWhvdmVyLWJhY2tncm91bmQ6ICAgICAgICAgICAgICAgICAgICAgICAgICRnbG9iYWwtbXV0ZWQtYmFja2dyb3VuZCAhZGVmYXVsdDtcblxuJGNhcmQtZGVmYXVsdC1iYWNrZ3JvdW5kOiAgICAgICAgICAgICAgICAgICAgICAgJGdsb2JhbC1tdXRlZC1iYWNrZ3JvdW5kICFkZWZhdWx0O1xuJGNhcmQtZGVmYXVsdC1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICAgICAgJGdsb2JhbC1jb2xvciAhZGVmYXVsdDtcbiRjYXJkLWRlZmF1bHQtdGl0bGUtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICRnbG9iYWwtZW1waGFzaXMtY29sb3IgIWRlZmF1bHQ7XG4kY2FyZC1kZWZhdWx0LWhvdmVyLWJhY2tncm91bmQ6ICAgICAgICAgICAgICAgICBkYXJrZW4oJGNhcmQtZGVmYXVsdC1iYWNrZ3JvdW5kLCA1JSkgIWRlZmF1bHQ7XG5cbiRjYXJkLXByaW1hcnktYmFja2dyb3VuZDogICAgICAgICAgICAgICAgICAgICAgICRnbG9iYWwtcHJpbWFyeS1iYWNrZ3JvdW5kICFkZWZhdWx0O1xuJGNhcmQtcHJpbWFyeS1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICAgICAgJGdsb2JhbC1pbnZlcnNlLWNvbG9yICFkZWZhdWx0O1xuJGNhcmQtcHJpbWFyeS10aXRsZS1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgJGNhcmQtcHJpbWFyeS1jb2xvciAhZGVmYXVsdDtcbiRjYXJkLXByaW1hcnktaG92ZXItYmFja2dyb3VuZDogICAgICAgICAgICAgICAgIGRhcmtlbigkY2FyZC1wcmltYXJ5LWJhY2tncm91bmQsIDUlKSAhZGVmYXVsdDtcbiRjYXJkLXByaW1hcnktY29sb3ItbW9kZTogICAgICAgICAgICAgICAgICAgICAgIGxpZ2h0ICFkZWZhdWx0O1xuXG4kY2FyZC1zZWNvbmRhcnktYmFja2dyb3VuZDogICAgICAgICAgICAgICAgICAgICAkZ2xvYmFsLXNlY29uZGFyeS1iYWNrZ3JvdW5kICFkZWZhdWx0O1xuJGNhcmQtc2Vjb25kYXJ5LWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgICAgJGdsb2JhbC1pbnZlcnNlLWNvbG9yICFkZWZhdWx0O1xuJGNhcmQtc2Vjb25kYXJ5LXRpdGxlLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgJGNhcmQtc2Vjb25kYXJ5LWNvbG9yICFkZWZhdWx0O1xuJGNhcmQtc2Vjb25kYXJ5LWhvdmVyLWJhY2tncm91bmQ6ICAgICAgICAgICAgICAgZGFya2VuKCRjYXJkLXNlY29uZGFyeS1iYWNrZ3JvdW5kLCA1JSkgIWRlZmF1bHQ7XG4kY2FyZC1zZWNvbmRhcnktY29sb3ItbW9kZTogICAgICAgICAgICAgICAgICAgICBsaWdodCAhZGVmYXVsdDtcblxuJGNhcmQtc21hbGwtYm9keS1wYWRkaW5nLWhvcml6b250YWw6ICAgICAgICAgICAgJGdsb2JhbC1tYXJnaW4gIWRlZmF1bHQ7XG4kY2FyZC1zbWFsbC1ib2R5LXBhZGRpbmctdmVydGljYWw6ICAgICAgICAgICAgICAkZ2xvYmFsLW1hcmdpbiAhZGVmYXVsdDtcbiRjYXJkLXNtYWxsLWhlYWRlci1wYWRkaW5nLWhvcml6b250YWw6ICAgICAgICAgICRnbG9iYWwtbWFyZ2luICFkZWZhdWx0O1xuJGNhcmQtc21hbGwtaGVhZGVyLXBhZGRpbmctdmVydGljYWw6ICAgICAgICAgICAgcm91bmQoKCRnbG9iYWwtbWFyZ2luICogMC42NjY2NykpICFkZWZhdWx0O1xuJGNhcmQtc21hbGwtZm9vdGVyLXBhZGRpbmctaG9yaXpvbnRhbDogICAgICAgICAgJGdsb2JhbC1tYXJnaW4gIWRlZmF1bHQ7XG4kY2FyZC1zbWFsbC1mb290ZXItcGFkZGluZy12ZXJ0aWNhbDogICAgICAgICAgICByb3VuZCgoJGdsb2JhbC1tYXJnaW4gKiAwLjY2NjY3KSkgIWRlZmF1bHQ7XG5cbiRjYXJkLWxhcmdlLWJvZHktcGFkZGluZy1ob3Jpem9udGFsLWw6ICAgICAgICAgICRnbG9iYWwtbGFyZ2UtZ3V0dGVyICFkZWZhdWx0O1xuJGNhcmQtbGFyZ2UtYm9keS1wYWRkaW5nLXZlcnRpY2FsLWw6ICAgICAgICAgICAgJGdsb2JhbC1sYXJnZS1ndXR0ZXIgIWRlZmF1bHQ7XG4kY2FyZC1sYXJnZS1oZWFkZXItcGFkZGluZy1ob3Jpem9udGFsLWw6ICAgICAgICAkZ2xvYmFsLWxhcmdlLWd1dHRlciAhZGVmYXVsdDtcbiRjYXJkLWxhcmdlLWhlYWRlci1wYWRkaW5nLXZlcnRpY2FsLWw6ICAgICAgICAgIHJvdW5kKCgkZ2xvYmFsLWxhcmdlLWd1dHRlciAqIDAuNSkpICFkZWZhdWx0O1xuJGNhcmQtbGFyZ2UtZm9vdGVyLXBhZGRpbmctaG9yaXpvbnRhbC1sOiAgICAgICAgJGdsb2JhbC1sYXJnZS1ndXR0ZXIgIWRlZmF1bHQ7XG4kY2FyZC1sYXJnZS1mb290ZXItcGFkZGluZy12ZXJ0aWNhbC1sOiAgICAgICAgICByb3VuZCgoJGdsb2JhbC1sYXJnZS1ndXR0ZXIgKiAwLjUpKSAhZGVmYXVsdDtcblxuJGNhcmQtaG92ZXItYm94LXNoYWRvdzogICAgICAgICAgICAgICAgICAgICAgICAgJGdsb2JhbC1sYXJnZS1ib3gtc2hhZG93ICFkZWZhdWx0O1xuXG4kY2FyZC1kZWZhdWx0LWJveC1zaGFkb3c6ICAgICAgICAgICAgICAgICAgICAgICAkZ2xvYmFsLW1lZGl1bS1ib3gtc2hhZG93ICFkZWZhdWx0O1xuJGNhcmQtZGVmYXVsdC1ob3Zlci1ib3gtc2hhZG93OiAgICAgICAgICAgICAgICAgJGdsb2JhbC1sYXJnZS1ib3gtc2hhZG93ICFkZWZhdWx0O1xuXG4kY2FyZC1kZWZhdWx0LWhlYWRlci1ib3JkZXItd2lkdGg6ICAgICAgICAgICAgICAkZ2xvYmFsLWJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiRjYXJkLWRlZmF1bHQtaGVhZGVyLWJvcmRlcjogICAgICAgICAgICAgICAgICAgICRnbG9iYWwtYm9yZGVyLWNvbG9yICFkZWZhdWx0O1xuXG4kY2FyZC1kZWZhdWx0LWZvb3Rlci1ib3JkZXItd2lkdGg6ICAgICAgICAgICAgICAkZ2xvYmFsLWJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiRjYXJkLWRlZmF1bHQtZm9vdGVyLWJvcmRlcjogICAgICAgICAgICAgICAgICAgICRnbG9iYWwtYm9yZGVyLWNvbG9yICFkZWZhdWx0O1xuXG4kY2FyZC1wcmltYXJ5LWJveC1zaGFkb3c6ICAgICAgICAgICAgICAgICAgICAgICAkZ2xvYmFsLW1lZGl1bS1ib3gtc2hhZG93ICFkZWZhdWx0O1xuJGNhcmQtcHJpbWFyeS1ob3Zlci1ib3gtc2hhZG93OiAgICAgICAgICAgICAgICAgJGdsb2JhbC1sYXJnZS1ib3gtc2hhZG93ICFkZWZhdWx0O1xuXG4kY2FyZC1zZWNvbmRhcnktYm94LXNoYWRvdzogICAgICAgICAgICAgICAgICAgICAkZ2xvYmFsLW1lZGl1bS1ib3gtc2hhZG93ICFkZWZhdWx0O1xuJGNhcmQtc2Vjb25kYXJ5LWhvdmVyLWJveC1zaGFkb3c6ICAgICAgICAgICAgICAgJGdsb2JhbC1sYXJnZS1ib3gtc2hhZG93ICFkZWZhdWx0O1xuXG4vKipcbkZPUk1cbiAqL1xuXG4kZm9ybS1mb250LXNpemU6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJGdsb2JhbC1mb250LXNpemUgIWRlZmF1bHQ7XG4kZm9ybS1mb250LXdlaWdodDogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgNDAwICFkZWZhdWx0O1xuJGZvcm0tZm9udC1mYW1pbHk6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICRnbG9iYWwtZm9udC1mYW1pbHkgIWRlZmF1bHQ7XG5cbiRmb3JtLWhlaWdodDogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkZ2xvYmFsLWNvbnRyb2wtaGVpZ2h0ICFkZWZhdWx0O1xuJGZvcm0tbGluZS1oZWlnaHQ6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICRmb3JtLWhlaWdodCAhZGVmYXVsdDtcbiRmb3JtLWxpbmUtZ2FwOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2YXIoLS1zcGFjZS1zbWFsbCkgIWRlZmF1bHQ7XG4kZm9ybS1wYWRkaW5nLWhvcml6b250YWw6ICAgICAgICAgICAgICAgICAgICAgICAgMTBweCAhZGVmYXVsdDtcbiRmb3JtLXBhZGRpbmctdmVydGljYWw6ICAgICAgICAgICAgICAgICAgICAgICAgICAkZm9ybS1wYWRkaW5nLWhvcml6b250YWwgIWRlZmF1bHQ7XG5cbiRmb3JtLWJvcmRlci13aWR0aDogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkZ2xvYmFsLWJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiRmb3JtLWJvcmRlci1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkZ2xvYmFsLWNvbG9yICFkZWZhdWx0O1xuXG4kZm9ybS1iYWNrZ3JvdW5kOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJGdsb2JhbC1tdXRlZC1iYWNrZ3JvdW5kICFkZWZhdWx0O1xuJGZvcm0tY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICRnbG9iYWwtY29sb3IgIWRlZmF1bHQ7XG5cbiRmb3JtLWZvY3VzLWJhY2tncm91bmQ6ICAgICAgICAgICAgICAgICAgICAgICAgICBkYXJrZW4oJGZvcm0tYmFja2dyb3VuZCwgNSUpICFkZWZhdWx0O1xuJGZvcm0tZm9jdXMtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICRnbG9iYWwtY29sb3IgIWRlZmF1bHQ7XG4kZm9ybS1mb2N1cy1ib3JkZXI6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJGdsb2JhbC1wcmltYXJ5LWJhY2tncm91bmQgIWRlZmF1bHQ7XG5cbiRmb3JtLWRpc2FibGVkLWJhY2tncm91bmQ6ICAgICAgICAgICAgICAgICAgICAgICAkZ2xvYmFsLW11dGVkLWJhY2tncm91bmQgIWRlZmF1bHQ7XG4kZm9ybS1kaXNhYmxlZC1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICAgICAgJGdsb2JhbC1tdXRlZC1jb2xvciAhZGVmYXVsdDtcbiRmb3JtLWRpc2FibGVkLWJvcmRlcjogICAgICAgICAgICAgICAgICAgICAgICAgICAkZ2xvYmFsLWNvbG9yICFkZWZhdWx0O1xuXG4kZm9ybS1wbGFjZWhvbGRlci1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICAgJGdsb2JhbC1tdXRlZC1jb2xvciAhZGVmYXVsdDtcbiRmb3JtLXBsYWNlaG9sZGVyLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgICAgICAkZm9ybS1mb250LXNpemUgIWRlZmF1bHQ7XG4kZm9ybS1wbGFjZWhvbGRlci1mb250LXdlaWdodDogICAgICAgICAgICAgICAgICAgJGZvcm0tZm9udC13ZWlnaHQgIWRlZmF1bHQ7XG4kZm9ybS1wbGFjZWhvbGRlci1mb250LWZhbWlseTogICAgICAgICAgICAgICAgICAgJGZvcm0tZm9udC1mYW1pbHkgIWRlZmF1bHQ7XG5cbiRmb3JtLWRhbmdlci1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkZ2xvYmFsLWRhbmdlci1iYWNrZ3JvdW5kICFkZWZhdWx0O1xuJGZvcm0tZGFuZ2VyLWJvcmRlcjogICAgICAgICAgICAgICAgICAgICAgICAgICAgICRnbG9iYWwtZGFuZ2VyLWJhY2tncm91bmQgIWRlZmF1bHQ7XG4kZm9ybS1zdWNjZXNzLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJGdsb2JhbC1zdWNjZXNzLWJhY2tncm91bmQgIWRlZmF1bHQ7XG4kZm9ybS1zdWNjZXNzLWJvcmRlcjogICAgICAgICAgICAgICAgICAgICAgICAgICAgJGdsb2JhbC1zdWNjZXNzLWJhY2tncm91bmQgIWRlZmF1bHQ7XG5cbiRmb3JtLXNlbGVjdC1wYWRkaW5nLXJpZ2h0OiAgICAgICAgICAgICAgICAgICAgICAyMHB4ICFkZWZhdWx0O1xuJGZvcm0tc2VsZWN0LWljb24tY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgICRnbG9iYWwtY29sb3IgIWRlZmF1bHQ7XG4kZm9ybS1zZWxlY3Qtb3B0aW9uLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgJGdsb2JhbC1jb2xvciAhZGVmYXVsdDtcbiRmb3JtLXNlbGVjdC1kaXNhYmxlZC1pY29uLWNvbG9yOiAgICAgICAgICAgICAgICAkZ2xvYmFsLW11dGVkLWNvbG9yICFkZWZhdWx0O1xuXG4kZm9ybS1kYXRhbGlzdC1wYWRkaW5nLXJpZ2h0OiAgICAgICAgICAgICAgICAgICAgMjBweCAhZGVmYXVsdDtcbiRmb3JtLWRhdGFsaXN0LWljb24tY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAkZ2xvYmFsLWNvbG9yICFkZWZhdWx0O1xuXG4kZm9ybS1yYWRpby1zaXplOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMTZweCAhZGVmYXVsdDtcbiRmb3JtLXJhZGlvLW1hcmdpbi10b3A6ICAgICAgICAgICAgICAgICAgICAgICAgICAtNHB4ICFkZWZhdWx0O1xuJGZvcm0tcmFkaW8tYmFja2dyb3VuZDogICAgICAgICAgICAgICAgICAgICAgICAgIGRhcmtlbigkZ2xvYmFsLW11dGVkLWJhY2tncm91bmQsIDUlKSAhZGVmYXVsdDtcbiRmb3JtLXJhZGlvLWJvcmRlci13aWR0aDogICAgICAgICAgICAgICAgICAgICAgICAkZ2xvYmFsLWJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiRmb3JtLXJhZGlvLWJvcmRlcjogICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkYXJrZW4oJGdsb2JhbC1jb2xvciwgMTAlKSAhZGVmYXVsdDtcblxuJGZvcm0tcmFkaW8tZm9jdXMtYmFja2dyb3VuZDogICAgICAgICAgICAgICAgICAgIGRhcmtlbigkZm9ybS1yYWRpby1iYWNrZ3JvdW5kLCA1JSkgIWRlZmF1bHQ7XG4kZm9ybS1yYWRpby1mb2N1cy1ib3JkZXI6ICAgICAgICAgICAgICAgICAgICAgICAgJGdsb2JhbC1wcmltYXJ5LWJhY2tncm91bmQgIWRlZmF1bHQ7XG5cbiRmb3JtLXJhZGlvLWNoZWNrZWQtYmFja2dyb3VuZDogICAgICAgICAgICAgICAgICAkZ2xvYmFsLXByaW1hcnktYmFja2dyb3VuZCAhZGVmYXVsdDtcbiRmb3JtLXJhZGlvLWNoZWNrZWQtaWNvbi1jb2xvcjogICAgICAgICAgICAgICAgICAkZ2xvYmFsLWludmVyc2UtY29sb3IgIWRlZmF1bHQ7XG4kZm9ybS1yYWRpby1jaGVja2VkLWJvcmRlcjogICAgICAgICAgICAgICAgICAgICAgdHJhbnNwYXJlbnQgIWRlZmF1bHQ7XG5cbiRmb3JtLXJhZGlvLWNoZWNrZWQtZm9jdXMtYmFja2dyb3VuZDogICAgICAgICAgICBkYXJrZW4oJGdsb2JhbC1wcmltYXJ5LWJhY2tncm91bmQsIDEwJSkgIWRlZmF1bHQ7XG5cbiRmb3JtLXJhZGlvLWRpc2FibGVkLWJhY2tncm91bmQ6ICAgICAgICAgICAgICAgICAkZ2xvYmFsLW11dGVkLWJhY2tncm91bmQgIWRlZmF1bHQ7XG4kZm9ybS1yYWRpby1kaXNhYmxlZC1pY29uLWNvbG9yOiAgICAgICAgICAgICAgICAgJGdsb2JhbC1tdXRlZC1jb2xvciAhZGVmYXVsdDtcbiRmb3JtLXJhZGlvLWRpc2FibGVkLWJvcmRlcjogICAgICAgICAgICAgICAgICAgICAkZ2xvYmFsLWNvbG9yICFkZWZhdWx0O1xuXG4kZm9ybS1sYWJlbC1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJGZvcm0tY29sb3IgIWRlZmF1bHQ7XG4kZm9ybS1sYWJlbC1mb250LXNpemU6ICAgICAgICAgICAgICAgICAgICAgICAgICAgJGdsb2JhbC1mb250LXNpemUgIWRlZmF1bHQ7XG4kZm9ybS1sYWJlbC1mb250LXdlaWdodDogICAgICAgICAgICAgICAgICAgICAgICAgNDAwICFkZWZhdWx0O1xuJGZvcm0tbGFiZWwtbGluZS1oZWlnaHQ6ICAgICAgICAgICAgICAgICAgICAgICAgIDEuNCAhZGVmYXVsdDtcblxuJGZvcm0taWNvbi13aWR0aDogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICRmb3JtLWhlaWdodCAhZGVmYXVsdDtcbiRmb3JtLWljb24tY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkZ2xvYmFsLW11dGVkLWNvbG9yICFkZWZhdWx0O1xuJGZvcm0taWNvbi1ob3Zlci1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICAgICRnbG9iYWwtY29sb3IgIWRlZmF1bHQ7XG5cbiRpbnRlcm5hbC1mb3JtLXNlbGVjdC1pbWFnZTogXCJkYXRhOmltYWdlL3N2Zyt4bWw7Y2hhcnNldD1VVEYtOCwlM0NzdmclMjB3aWR0aCUzRCUyMjI0JTIyJTIwaGVpZ2h0JTNEJTIyMTYlMjIlMjB2aWV3Qm94JTNEJTIyMCUyMDAlMjAyNCUyMDE2JTIyJTIweG1sbnMlM0QlMjJodHRwJTNBJTJGJTJGd3d3LnczLm9yZyUyRjIwMDAlMkZzdmclMjIlM0UlMEElMjAlMjAlMjAlMjAlM0Nwb2x5Z29uJTIwZmlsbCUzRCUyMiMwMDAlMjIlMjBwb2ludHMlM0QlMjIxMiUyMDElMjA5JTIwNiUyMDE1JTIwNiUyMiUyMCUyRiUzRSUwQSUyMCUyMCUyMCUyMCUzQ3BvbHlnb24lMjBmaWxsJTNEJTIyIzAwMCUyMiUyMHBvaW50cyUzRCUyMjEyJTIwMTMlMjA5JTIwOCUyMDE1JTIwOCUyMiUyMCUyRiUzRSUwQSUzQyUyRnN2ZyUzRSUwQVwiICFkZWZhdWx0O1xuJGludGVybmFsLWZvcm0tZGF0YWxpc3QtaW1hZ2U6IFwiZGF0YTppbWFnZS9zdmcreG1sO2NoYXJzZXQ9VVRGLTgsJTNDc3ZnJTIwd2lkdGglM0QlMjIyNCUyMiUyMGhlaWdodCUzRCUyMjE2JTIyJTIwdmlld0JveCUzRCUyMjAlMjAwJTIwMjQlMjAxNiUyMiUyMHhtbG5zJTNEJTIyaHR0cCUzQSUyRiUyRnd3dy53My5vcmclMkYyMDAwJTJGc3ZnJTIyJTNFJTBBJTIwJTIwJTIwJTIwJTNDcG9seWdvbiUyMGZpbGwlM0QlMjIjMDAwJTIyJTIwcG9pbnRzJTNEJTIyMTIlMjAxMiUyMDglMjA2JTIwMTYlMjA2JTIyJTIwJTJGJTNFJTBBJTNDJTJGc3ZnJTNFJTBBXCIgIWRlZmF1bHQ7XG4kaW50ZXJuYWwtZm9ybS1yYWRpby1pbWFnZTogXCJkYXRhOmltYWdlL3N2Zyt4bWw7Y2hhcnNldD1VVEYtOCwlM0NzdmclMjB3aWR0aCUzRCUyMjE2JTIyJTIwaGVpZ2h0JTNEJTIyMTYlMjIlMjB2aWV3Qm94JTNEJTIyMCUyMDAlMjAxNiUyMDE2JTIyJTIweG1sbnMlM0QlMjJodHRwJTNBJTJGJTJGd3d3LnczLm9yZyUyRjIwMDAlMkZzdmclMjIlM0UlMEElMjAlMjAlMjAlMjAlM0NjaXJjbGUlMjBmaWxsJTNEJTIyIzAwMCUyMiUyMGN4JTNEJTIyOCUyMiUyMGN5JTNEJTIyOCUyMiUyMHIlM0QlMjIyJTIyJTIwJTJGJTNFJTBBJTNDJTJGc3ZnJTNFXCIgIWRlZmF1bHQ7XG4kaW50ZXJuYWwtZm9ybS1jaGVja2JveC1pbWFnZTogXCJkYXRhOmltYWdlL3N2Zyt4bWw7Y2hhcnNldD1VVEYtOCwlM0NzdmclMjB3aWR0aCUzRCUyMjE0JTIyJTIwaGVpZ2h0JTNEJTIyMTElMjIlMjB2aWV3Qm94JTNEJTIyMCUyMDAlMjAxNCUyMDExJTIyJTIweG1sbnMlM0QlMjJodHRwJTNBJTJGJTJGd3d3LnczLm9yZyUyRjIwMDAlMkZzdmclMjIlM0UlMEElMjAlMjAlMjAlMjAlM0Nwb2x5Z29uJTIwZmlsbCUzRCUyMiMwMDAlMjIlMjBwb2ludHMlM0QlMjIxMiUyMDElMjA1JTIwNy41JTIwMiUyMDUlMjAxJTIwNS41JTIwNSUyMDEwJTIwMTMlMjAxLjUlMjIlMjAlMkYlM0UlMEElM0MlMkZzdmclM0UlMEFcIiAhZGVmYXVsdDtcbiRpbnRlcm5hbC1mb3JtLWNoZWNrYm94LWluZGV0ZXJtaW5hdGUtaW1hZ2U6IFwiZGF0YTppbWFnZS9zdmcreG1sO2NoYXJzZXQ9VVRGLTgsJTNDc3ZnJTIwd2lkdGglM0QlMjIxNiUyMiUyMGhlaWdodCUzRCUyMjE2JTIyJTIwdmlld0JveCUzRCUyMjAlMjAwJTIwMTYlMjAxNiUyMiUyMHhtbG5zJTNEJTIyaHR0cCUzQSUyRiUyRnd3dy53My5vcmclMkYyMDAwJTJGc3ZnJTIyJTNFJTBBJTIwJTIwJTIwJTIwJTNDcmVjdCUyMGZpbGwlM0QlMjIjMDAwJTIyJTIweCUzRCUyMjMlMjIlMjB5JTNEJTIyOCUyMiUyMHdpZHRoJTNEJTIyMTAlMjIlMjBoZWlnaHQlM0QlMjIxJTIyJTIwJTJGJTNFJTBBJTNDJTJGc3ZnJTNFXCIgIWRlZmF1bHQ7XG5cblxuLyoqXG5MSVNUU1xuICovXG5cbiRsaXN0LWl0ZW1zLWdhcDogdmFyKC0tc3BhY2Utc21hbGwpICFkZWZhdWx0O1xuXG4kbGlzdC1wYWRkaW5nLWxlZnQ6IDMwcHggIWRlZmF1bHQ7XG5cbiRsaXN0LW1hcmtlci1oZWlnaHQ6IDEwcHggIWRlZmF1bHQ7XG5cbiRsaXN0LXByaW1hcnktY29sb3I6ICRnbG9iYWwtcHJpbWFyeS1iYWNrZ3JvdW5kICFkZWZhdWx0O1xuJGxpc3Qtc2Vjb25kYXJ5LWNvbG9yOiAkZ2xvYmFsLXNlY29uZGFyeS1iYWNrZ3JvdW5kICFkZWZhdWx0O1xuXG4kbGlzdC1idWxsZXQtaWNvbi1jb2xvcjogJGdsb2JhbC1jb2xvciAhZGVmYXVsdDtcblxuJGxpc3QtZGl2aWRlci1wYWRkaW5nLXRvcDogdmFyKC0tc3BhY2Utc21hbGwpICFkZWZhdWx0O1xuJGxpc3QtZGl2aWRlci1ib3JkZXItd2lkdGg6ICRnbG9iYWwtYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJGxpc3QtZGl2aWRlci1ib3JkZXItY29sb3I6ICRnbG9iYWwtYm9yZGVyLWNvbG9yICFkZWZhdWx0O1xuXG4kbGlzdC1zdHJpcGVkLXBhZGRpbmctdmVydGljYWw6IHZhcigtLXNwYWNlLXNtYWxsKSAhZGVmYXVsdDtcbiRsaXN0LXN0cmlwZWQtcGFkZGluZy1ob3Jpem9udGFsOiB2YXIoLS1zcGFjZS10aGluKSAhZGVmYXVsdDtcbiRsaXN0LXN0cmlwZWQtYmFja2dyb3VuZDogJGdsb2JhbC1tdXRlZC1iYWNrZ3JvdW5kICFkZWZhdWx0O1xuJGxpc3Qtc3RyaXBlZC1ib3JkZXItd2lkdGg6ICRnbG9iYWwtYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJGxpc3Qtc3RyaXBlZC1ib3JkZXItY29sb3I6ICRnbG9iYWwtYm9yZGVyLWNvbG9yICFkZWZhdWx0O1xuXG4vKiBEZXNjcmlwdGlvbiBsaXN0ICovXG4kZGVzY3JpcHRpb24tbGlzdC10ZXJtLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgJGdsb2JhbC1lbXBoYXNpcy1jb2xvciAhZGVmYXVsdDtcbiRkZXNjcmlwdGlvbi1saXN0LXRlcm0tbWFyZ2luLXRvcDogICAgICAgICAgICAgICAkZ2xvYmFsLW1hcmdpbiAhZGVmYXVsdDtcblxuJGRlc2NyaXB0aW9uLWxpc3QtdGVybS1mb250LXNpemU6ICAgICAgICAgICAgICAgICRnbG9iYWwtc21hbGwtZm9udC1zaXplICFkZWZhdWx0O1xuJGRlc2NyaXB0aW9uLWxpc3QtdGVybS1mb250LXdlaWdodDogICAgICAgICAgICAgIDQwMCAhZGVmYXVsdDtcbiRkZXNjcmlwdGlvbi1saXN0LXRlcm0tdGV4dC10cmFuc2Zvcm06ICAgICAgICAgICB1cHBlcmNhc2UgIWRlZmF1bHQ7XG5cbiRkZXNjcmlwdGlvbi1saXN0LWRpdmlkZXItdGVybS1tYXJnaW4tdG9wOiAgICAgICAkZ2xvYmFsLW1hcmdpbiAhZGVmYXVsdDtcbiRkZXNjcmlwdGlvbi1saXN0LWRpdmlkZXItdGVybS1ib3JkZXItd2lkdGg6ICAgICAkZ2xvYmFsLWJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiRkZXNjcmlwdGlvbi1saXN0LWRpdmlkZXItdGVybS1ib3JkZXI6ICAgICAgICAgICAkZ2xvYmFsLWJvcmRlci1jb2xvciAhZGVmYXVsdDtcblxuLyoqXG49PT0gUEFHSU5BVElPTiA9PT1cbiAqL1xuXG4kcGFnaW5hdGlvbi1tYXJnaW4taG9yaXpvbnRhbDogICAgICAgICAgICAgICAgICAgMCAhZGVmYXVsdDtcblxuJHBhZ2luYXRpb24taXRlbS1mb250LXNpemU6ICAgICAgICAgICAgICAgICAgICAgICRnbG9iYWwtZm9udC1zaXplICFkZWZhdWx0O1xuJHBhZ2luYXRpb24taXRlbS1wYWRkaW5nLXZlcnRpY2FsOiAgICAgICAgICAgICAgIDVweCAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWl0ZW0tcGFkZGluZy1ob3Jpem9udGFsOiAgICAgICAgICAgICAxMHB4ICFkZWZhdWx0O1xuJHBhZ2luYXRpb24taXRlbS1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICAgICRnbG9iYWwtbXV0ZWQtY29sb3IgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1pdGVtLWhvdmVyLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgJGdsb2JhbC1jb2xvciAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWl0ZW0taG92ZXItdGV4dC1kZWNvcmF0aW9uOiAgICAgICAgICBub25lICFkZWZhdWx0O1xuJHBhZ2luYXRpb24taXRlbS1hY3RpdmUtY29sb3I6ICAgICAgICAgICAgICAgICAgICRnbG9iYWwtY29sb3IgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1pdGVtLWRpc2FibGVkLWNvbG9yOiAgICAgICAgICAgICAgICAgJGdsb2JhbC1tdXRlZC1jb2xvciAhZGVmYXVsdDtcblxuJHBhZ2luYXRpb24tYXJyb3ctbGVmdC1zaWRlOiAgICAgICAgICAgICAgICAgICAgICdcXDAwQUInICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tYXJyb3ctcmlnaHQtc2lkZTogICAgICAgICAgICAgICAgICAgICdcXDAwQkInICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tYXJyb3ctc2l6ZTogICAgICAgICAgICAgICAgICAgICAgICAgICgkcGFnaW5hdGlvbi1pdGVtLWZvbnQtc2l6ZSAqIDEuNzUpICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tYXJyb3ctY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgICRwYWdpbmF0aW9uLWl0ZW0tY29sb3IgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1hcnJvdy1ob3Zlci1jb2xvcjogICAgICAgICAgICAgICAgICAgJHBhZ2luYXRpb24taXRlbS1ob3Zlci1jb2xvciAhZGVmYXVsdDtcblxuJHBhZ2luYXRpb24tY3VzdG9tLWFycm93LXdpZHRoOiAgICAgICAgICAgICAgICAgIDE1cHggIWRlZmF1bHQ7XG5cblxuLyoqXG49PT0gVEFCTEUgPT09XG4gKi9cblxuJHRhYmxlLW1hcmdpbi12ZXJ0aWNhbDogICAgICAgICAgICAgICAgICAgICAgICAgICRnbG9iYWwtbWFyZ2luICFkZWZhdWx0O1xuXG4kdGFibGUtY2VsbC1wYWRkaW5nLXZlcnRpY2FsOiAgICAgICAgICAgICAgICAgICAgMTZweCAhZGVmYXVsdDtcbiR0YWJsZS1jZWxsLXBhZGRpbmctaG9yaXpvbnRhbDogICAgICAgICAgICAgICAgICAxMnB4ICFkZWZhdWx0O1xuXG4kdGFibGUtaGVhZGVyLWNlbGwtZm9udC1zaXplOiAgICAgICAgICAgICAgICAgICAgJGdsb2JhbC1mb250LXNpemUgIWRlZmF1bHQ7XG4kdGFibGUtaGVhZGVyLWNlbGwtZm9udC13ZWlnaHQ6ICAgICAgICAgICAgICAgICAgYm9sZCAhZGVmYXVsdDtcbiR0YWJsZS1oZWFkZXItY2VsbC1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICAkZ2xvYmFsLWNvbG9yICFkZWZhdWx0O1xuXG4kdGFibGUtZm9vdGVyLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgICAgICAgICAgJGdsb2JhbC1zbWFsbC1mb250LXNpemUgIWRlZmF1bHQ7XG5cbiR0YWJsZS1jYXB0aW9uLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgICAgICAgICAkZ2xvYmFsLXNtYWxsLWZvbnQtc2l6ZSAhZGVmYXVsdDtcbiR0YWJsZS1jYXB0aW9uLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAkZ2xvYmFsLW11dGVkLWNvbG9yICFkZWZhdWx0O1xuXG4kdGFibGUtcm93LWFjdGl2ZS1iYWNrZ3JvdW5kOiAgICAgICAgICAgICAgICAgICAgI2ZmZCAhZGVmYXVsdDtcblxuJHRhYmxlLWRpdmlkZXItYm9yZGVyLXdpZHRoOiAgICAgICAgICAgICAgICAgICAgICRnbG9iYWwtYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJHRhYmxlLWRpdmlkZXItYm9yZGVyOiAgICAgICAgICAgICAgICAgICAgICAgICAgICRnbG9iYWwtYm9yZGVyLWNvbG9yICFkZWZhdWx0O1xuXG4kdGFibGUtc3RyaXBlZC1yb3ctYmFja2dyb3VuZDogICAgICAgICAgICAgICAgICAgJGdsb2JhbC1tdXRlZC1iYWNrZ3JvdW5kICFkZWZhdWx0O1xuJHRhYmxlLXN0cmlwZWQtYm9yZGVyLXdpZHRoOiAgICAgICAgICAgICAgICAgICAgICRnbG9iYWwtYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJHRhYmxlLXN0cmlwZWQtYm9yZGVyOiAgICAgICAgICAgICAgICAgICAgICAgICAgICRnbG9iYWwtYm9yZGVyLWNvbG9yICFkZWZhdWx0O1xuXG4kdGFibGUtaG92ZXItcm93LWJhY2tncm91bmQ6ICAgICAgICAgICAgICAgICAgICAgJHRhYmxlLXJvdy1hY3RpdmUtYmFja2dyb3VuZCAhZGVmYXVsdDtcblxuJHRhYmxlLWV4cGFuZC1taW4td2lkdGg6ICAgICAgICAgICAgICAgICAgICAgICAgIDE1MHB4ICFkZWZhdWx0O1xuXG4vKipcbj09PSBMQUJFTCA9PT0gKG5vdCA8bGFiZWw+IGluIGZvcm0pXG4gKi9cblxuJGxhYmVsLXBhZGRpbmctdmVydGljYWw6ICAgICAgICAgICAgICAgICAgICAgICAgIDJweCAhZGVmYXVsdDtcbiRsYWJlbC1wYWRkaW5nLWhvcml6b250YWw6ICAgICAgICAgICAgICAgICAgICAgICAxMHB4ICFkZWZhdWx0O1xuJGxhYmVsLWJhY2tncm91bmQ6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICRnbG9iYWwtcHJpbWFyeS1iYWNrZ3JvdW5kICFkZWZhdWx0O1xuJGxhYmVsLWxpbmUtaGVpZ2h0OiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICRnbG9iYWwtbGluZS1oZWlnaHQgIWRlZmF1bHQ7XG4kbGFiZWwtZm9udC1zaXplOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJGdsb2JhbC1zbWFsbC1mb250LXNpemUgIWRlZmF1bHQ7XG4kbGFiZWwtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJGdsb2JhbC1pbnZlcnNlLWNvbG9yICFkZWZhdWx0O1xuXG4kbGFiZWwtc3VjY2Vzcy1iYWNrZ3JvdW5kOiAgICAgICAgICAgICAgICAgICAgICAgJGdsb2JhbC1zdWNjZXNzLWJhY2tncm91bmQgIWRlZmF1bHQ7XG4kbGFiZWwtc3VjY2Vzcy1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICAgICAgJGdsb2JhbC1pbnZlcnNlLWNvbG9yICFkZWZhdWx0O1xuJGxhYmVsLXdhcm5pbmctYmFja2dyb3VuZDogICAgICAgICAgICAgICAgICAgICAgICRnbG9iYWwtd2FybmluZy1iYWNrZ3JvdW5kICFkZWZhdWx0O1xuJGxhYmVsLXdhcm5pbmctY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICRnbG9iYWwtaW52ZXJzZS1jb2xvciAhZGVmYXVsdDtcbiRsYWJlbC1kYW5nZXItYmFja2dyb3VuZDogICAgICAgICAgICAgICAgICAgICAgICAkZ2xvYmFsLWRhbmdlci1iYWNrZ3JvdW5kICFkZWZhdWx0O1xuJGxhYmVsLWRhbmdlci1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICAgICAgICRnbG9iYWwtaW52ZXJzZS1jb2xvciAhZGVmYXVsdDtcblxuJGxhYmVsLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAgICAgICAgICAgICAgICAgIDJweCAhZGVmYXVsdDtcbiRsYWJlbC10ZXh0LXRyYW5zZm9ybTogICAgICAgICAgICAgICAgICAgICAgICAgICB1cHBlcmNhc2UgIWRlZmF1bHQ7XG5cbi8qKlxuPT09IEhFQURJTkcgPT09XG4gKi9cblxuJGhlYWRpbmctbWVkaXVtLWZvbnQtc2l6ZS1sOiAgICAgICAgICAgICAgICAgICAgIDRyZW0gIWRlZmF1bHQ7ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvLyA2NHB4XG4kaGVhZGluZy1sYXJnZS1mb250LXNpemUtbDogICAgICAgICAgICAgICAgICAgICAgNnJlbSAhZGVmYXVsdDsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vIDk2cHhcbiRoZWFkaW5nLXhsYXJnZS1mb250LXNpemUtbDogICAgICAgICAgICAgICAgICAgICA4cmVtICFkZWZhdWx0OyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLy8gMTI4cHhcbiRoZWFkaW5nLTJ4bGFyZ2UtZm9udC1zaXplLWw6ICAgICAgICAgICAgICAgICAgICAxMXJlbSAhZGVmYXVsdDsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLy8gMTc2cHhcblxuJGhlYWRpbmctc21hbGwtZm9udC1zaXplLW06ICAgICAgICAgICAgICAgICAgICAgICRoZWFkaW5nLW1lZGl1bS1mb250LXNpemUtbCAqIDAuODEyNSAhZGVmYXVsdDsgICAvLyAzLjI1cmVtIC8gNTJweFxuJGhlYWRpbmctbWVkaXVtLWZvbnQtc2l6ZS1tOiAgICAgICAgICAgICAgICAgICAgICRoZWFkaW5nLW1lZGl1bS1mb250LXNpemUtbCAqIDAuODc1ICFkZWZhdWx0OyAgICAvLyAzLjVyZW0gLyA1NnB4XG4kaGVhZGluZy1sYXJnZS1mb250LXNpemUtbTogICAgICAgICAgICAgICAgICAgICAgJGhlYWRpbmctbWVkaXVtLWZvbnQtc2l6ZS1sICFkZWZhdWx0OyAgICAgICAgICAgIC8vIDRyZW0gLyA2NHB4XG4kaGVhZGluZy14bGFyZ2UtZm9udC1zaXplLW06ICAgICAgICAgICAgICAgICAgICAgJGhlYWRpbmctbGFyZ2UtZm9udC1zaXplLWwgIWRlZmF1bHQ7ICAgICAgICAgICAgIC8vIDZyZW0gLyA5NnB4XG4kaGVhZGluZy0yeGxhcmdlLWZvbnQtc2l6ZS1tOiAgICAgICAgICAgICAgICAgICAgJGhlYWRpbmcteGxhcmdlLWZvbnQtc2l6ZS1sICFkZWZhdWx0OyAgICAgICAgICAgIC8vIDhyZW0gLyAxMjhweFxuXG4kaGVhZGluZy1zbWFsbC1mb250LXNpemU6ICAgICAgICAgICAgICAgICAgICAgICAgJGhlYWRpbmctc21hbGwtZm9udC1zaXplLW0gKiAwLjggIWRlZmF1bHQ7ICAgICAgLy8gMzhweCAwLjczXG4kaGVhZGluZy1tZWRpdW0tZm9udC1zaXplOiAgICAgICAgICAgICAgICAgICAgICAgJGhlYWRpbmctbWVkaXVtLWZvbnQtc2l6ZS1tICogMC44MjUgIWRlZmF1bHQ7ICAgICAvLyA0MHB4IDAuNzE0XG4kaGVhZGluZy1sYXJnZS1mb250LXNpemU6ICAgICAgICAgICAgICAgICAgICAgICAgJGhlYWRpbmctbGFyZ2UtZm9udC1zaXplLW0gKiAwLjg1ICFkZWZhdWx0OyAgICAgIC8vIDUwcHggMC43OFxuJGhlYWRpbmcteGxhcmdlLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgICAgICAgICRoZWFkaW5nLWxhcmdlLWZvbnQtc2l6ZS1tICFkZWZhdWx0OyAgICAgICAgICAgICAvLyA0cmVtIC8gNjRweFxuJGhlYWRpbmctMnhsYXJnZS1mb250LXNpemU6ICAgICAgICAgICAgICAgICAgICAgICRoZWFkaW5nLXhsYXJnZS1mb250LXNpemUtbSAhZGVmYXVsdDsgICAgICAgICAgICAvLyA2cmVtIC8gOTZweFxuXG4kaGVhZGluZy1zbWFsbC1saW5lLWhlaWdodDogICAgICAgICAgICAgICAgICAgICAgMS4yICFkZWZhdWx0O1xuJGhlYWRpbmctbWVkaXVtLWxpbmUtaGVpZ2h0OiAgICAgICAgICAgICAgICAgICAgIDEuMSAhZGVmYXVsdDtcbiRoZWFkaW5nLWxhcmdlLWxpbmUtaGVpZ2h0OiAgICAgICAgICAgICAgICAgICAgICAxLjEgIWRlZmF1bHQ7XG4kaGVhZGluZy14bGFyZ2UtbGluZS1oZWlnaHQ6ICAgICAgICAgICAgICAgICAgICAgMSAhZGVmYXVsdDtcbiRoZWFkaW5nLTJ4bGFyZ2UtbGluZS1oZWlnaHQ6ICAgICAgICAgICAgICAgICAgICAxICFkZWZhdWx0O1xuXG4kaGVhZGluZy1kaXZpZGVyLXBhZGRpbmctYm90dG9tOiAgICAgICAgICAgICAgICAgdW5xdW90ZSgnY2FsYyg1cHggKyAwLjFlbSknKSAhZGVmYXVsdDtcbiRoZWFkaW5nLWRpdmlkZXItYm9yZGVyLXdpZHRoOiAgICAgICAgICAgICAgICAgICB1bnF1b3RlKCdjYWxjKDAuMnB4ICsgMC4wNWVtKScpICFkZWZhdWx0O1xuJGhlYWRpbmctZGl2aWRlci1ib3JkZXI6ICAgICAgICAgICAgICAgICAgICAgICAgICRnbG9iYWwtYm9yZGVyLWNvbG9yICFkZWZhdWx0O1xuXG4kaGVhZGluZy1idWxsZXQtdG9wOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdW5xdW90ZSgnY2FsYygtMC4xICogMWVtKScpICFkZWZhdWx0O1xuJGhlYWRpbmctYnVsbGV0LWhlaWdodDogICAgICAgICAgICAgICAgICAgICAgICAgIHVucXVvdGUoJ2NhbGMoNHB4ICsgMC43ZW0pJykgIWRlZmF1bHQ7XG4kaGVhZGluZy1idWxsZXQtbWFyZ2luLXJpZ2h0OiAgICAgICAgICAgICAgICAgICAgdW5xdW90ZSgnY2FsYyg1cHggKyAwLjJlbSknKSAhZGVmYXVsdDtcbiRoZWFkaW5nLWJ1bGxldC1ib3JkZXItd2lkdGg6ICAgICAgICAgICAgICAgICAgICB1bnF1b3RlKCdjYWxjKDVweCArIDAuMWVtKScpICFkZWZhdWx0O1xuJGhlYWRpbmctYnVsbGV0LWJvcmRlcjogICAgICAgICAgICAgICAgICAgICAgICAgICRnbG9iYWwtYm9yZGVyLWNvbG9yICFkZWZhdWx0O1xuXG4kaGVhZGluZy1saW5lLXRvcDogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgNTAlICFkZWZhdWx0O1xuJGhlYWRpbmctbGluZS13aWR0aDogICAgICAgICAgICAgICAgICAgICAgICAgICAgIDIwMDBweCAhZGVmYXVsdDtcbiRoZWFkaW5nLWxpbmUtYm9yZGVyLXdpZHRoOiAgICAgICAgICAgICAgICAgICAgICB1bnF1b3RlKCdjYWxjKDAuMnB4ICsgMC4wNWVtKScpICFkZWZhdWx0O1xuJGhlYWRpbmctbGluZS1ib3JkZXI6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICRnbG9iYWwtYm9yZGVyLWNvbG9yICFkZWZhdWx0O1xuJGhlYWRpbmctbGluZS1oZWlnaHQ6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICRoZWFkaW5nLWxpbmUtYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJGhlYWRpbmctbGluZS1tYXJnaW4taG9yaXpvbnRhbDogICAgICAgICAgICAgICAgIHVucXVvdGUoJ2NhbGMoNXB4ICsgMC4zZW0pJykgIWRlZmF1bHQ7XG5cbi8qKlxuPT09IERJVklERVIgPT09XG4gKi9cblxuXG4kZGl2aWRlci1tYXJnaW4tdmVydGljYWw6ICAgICAgICAgICAgICAgICAgICAgICAgJGdsb2JhbC1tYXJnaW4gIWRlZmF1bHQ7XG5cbiRkaXZpZGVyLWljb24tY29udGFpbmVyLXdpZHRoOiAgICAgICAgICAgICAgICAgICA1MHB4ICFkZWZhdWx0O1xuJGRpdmlkZXItaWNvbi1jb250YWluZXItaGVpZ2h0OiAgICAgICAgICAgICAgICAgIDIwcHggIWRlZmF1bHQ7XG4kZGl2aWRlci1pY29uLXNpemU6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMjBweCAhZGVmYXVsdDtcbiRkaXZpZGVyLWljb24tY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkZ2xvYmFsLWJvcmRlci1jb2xvciAhZGVmYXVsdDtcbiRkaXZpZGVyLWljb24tbGluZS10b3A6ICAgICAgICAgICAgICAgICAgICAgICAgICA1MCUgIWRlZmF1bHQ7XG4kZGl2aWRlci1pY29uLWxpbmUtd2lkdGg6ICAgICAgICAgICAgICAgICAgICAgICAgMTAwJSAhZGVmYXVsdDtcbiRkaXZpZGVyLWljb24tbGluZS1ib3JkZXItd2lkdGg6ICAgICAgICAgICAgICAgICAkZ2xvYmFsLWJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiRkaXZpZGVyLWljb24tbGluZS1ib3JkZXI6ICAgICAgICAgICAgICAgICAgICAgICAkZ2xvYmFsLWJvcmRlci1jb2xvciAhZGVmYXVsdDtcblxuJGludGVybmFsLWRpdmlkZXItaWNvbi1pbWFnZTogXCJkYXRhOmltYWdlL3N2Zyt4bWw7Y2hhcnNldD1VVEYtOCwlM0NzdmclMjB3aWR0aCUzRCUyMjIwJTIyJTIwaGVpZ2h0JTNEJTIyMjAlMjIlMjB2aWV3Qm94JTNEJTIyMCUyMDAlMjAyMCUyMDIwJTIyJTIweG1sbnMlM0QlMjJodHRwJTNBJTJGJTJGd3d3LnczLm9yZyUyRjIwMDAlMkZzdmclMjIlM0UlMEElMjAlMjAlMjAlMjAlM0NjaXJjbGUlMjBmaWxsJTNEJTIybm9uZSUyMiUyMHN0cm9rZSUzRCUyMiMwMDAlMjIlMjBzdHJva2Utd2lkdGglM0QlMjIyJTIyJTIwY3glM0QlMjIxMCUyMiUyMGN5JTNEJTIyMTAlMjIlMjByJTNEJTIyNyUyMiUyMCUyRiUzRSUwQSUzQyUyRnN2ZyUzRSUwQVwiICFkZWZhdWx0O1xuXG4kZGl2aWRlci1zbWFsbC13aWR0aDogICAgICAgICAgICAgICAgICAgICAgICAgICAgMTAwcHggIWRlZmF1bHQ7XG4kZGl2aWRlci1zbWFsbC1ib3JkZXItd2lkdGg6ICAgICAgICAgICAgICAgICAgICAgJGdsb2JhbC1ib3JkZXItd2lkdGggIWRlZmF1bHQ7XG4kZGl2aWRlci1zbWFsbC1ib3JkZXI6ICAgICAgICAgICAgICAgICAgICAgICAgICAgJGdsb2JhbC1ib3JkZXItY29sb3IgIWRlZmF1bHQ7XG5cbiRkaXZpZGVyLXZlcnRpY2FsLWhlaWdodDogICAgICAgICAgICAgICAgICAgICAgICAxMDBweCAhZGVmYXVsdDtcbiRkaXZpZGVyLXZlcnRpY2FsLWJvcmRlci13aWR0aDogICAgICAgICAgICAgICAgICAkZ2xvYmFsLWJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiRkaXZpZGVyLXZlcnRpY2FsLWJvcmRlcjogICAgICAgICAgICAgICAgICAgICAgICAkZ2xvYmFsLWJvcmRlci1jb2xvciAhZGVmYXVsdDtcblxuXG4vKipcblNFVFRJTkdTXG4gKi9cbi8vdmFsdWVzOiAnY2xhbXAnIHwgJ2NhbGMnXG4kc2V0dGluZ3Mtc3BhY2UtdXNlczogJ2NsYW1wJztcbiIsIi8qXG5odHRwczovL3Jhdy5naXRodWJ1c2VyY29udGVudC5jb20vaGFua2NoaXpsamF3L21vZGVybi1jc3MtcmVzZXQvbWFzdGVyL3NyYy9yZXNldC5jc3NcbiAqL1xuXG4vKiBCb3ggc2l6aW5nIHJ1bGVzICovXG4qLFxuKjo6YmVmb3JlLFxuKjo6YWZ0ZXIge1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG59XG5cbioge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLyogUmVtb3ZlIGRlZmF1bHQgcGFkZGluZyAqL1xudWxbY2xhc3NdLFxub2xbY2xhc3NdIHtcbiAgICBwYWRkaW5nOiAwO1xufVxuXG4vKiBSZW1vdmUgZGVmYXVsdCBtYXJnaW4gKi9cbmJvZHksXG5oMSxcbmgyLFxuaDMsXG5oNCxcbmg1LFxuaDYsXG5wLFxudWxbY2xhc3NdLFxub2xbY2xhc3NdLFxuZmlndXJlLFxuYmxvY2txdW90ZSxcbmRsLFxuZGQge1xuICAgIG1hcmdpbjogMDtcbn1cblxuLyogU2V0IGNvcmUgcm9vdCBkZWZhdWx0cyAqL1xuaHRtbCB7XG4gICAgc2Nyb2xsLWJlaGF2aW9yOiBzbW9vdGg7XG4gICAgb3ZlcmZsb3cteDogaGlkZGVuO1xufVxuXG4vKiBTZXQgY29yZSBib2R5IGRlZmF1bHRzICovXG5ib2R5IHtcbiAgICBtaW4taGVpZ2h0OiAxMDB2aDtcbiAgICB0ZXh0LXJlbmRlcmluZzogb3B0aW1pemVTcGVlZDtcbiAgICBsaW5lLWhlaWdodDogMS41O1xuICAgIG92ZXJmbG93LXg6IGhpZGRlbjtcbn1cblxuLyogUmVtb3ZlIGxpc3Qgc3R5bGVzIG9uIHVsLCBvbCBlbGVtZW50cyB3aXRoIGEgY2xhc3MgYXR0cmlidXRlICovXG51bFtjbGFzc10sXG5vbFtjbGFzc10ge1xuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG59XG5cbi8qIEEgZWxlbWVudHMgdGhhdCBkb24ndCBoYXZlIGEgY2xhc3MgZ2V0IGRlZmF1bHQgc3R5bGVzICovXG5hOm5vdChbY2xhc3NdKSB7XG4gICAgdGV4dC1kZWNvcmF0aW9uLXNraXAtaW5rOiBhdXRvO1xufVxuXG4vKiBNYWtlIGltYWdlcyBlYXNpZXIgdG8gd29yayB3aXRoICovXG5pbWcsXG5waWN0dXJlIHtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgZGlzcGxheTogYmxvY2s7XG59XG5cbi8qIE5hdHVyYWwgZmxvdyBhbmQgcmh5dGhtIGluIGFydGljbGVzIGJ5IGRlZmF1bHQgKi9cbmFydGljbGUgPiAqICsgKiB7XG4gICAgbWFyZ2luLXRvcDogMWVtO1xufVxuXG4vKiBJbmhlcml0IGZvbnRzIGZvciBpbnB1dHMgYW5kIGJ1dHRvbnMgKi9cbmlucHV0LFxuYnV0dG9uLFxudGV4dGFyZWEsXG5zZWxlY3Qge1xuICAgIGZvbnQ6IGluaGVyaXQ7XG59XG5cbi8qIEJsdXIgaW1hZ2VzIHdoZW4gdGhleSBoYXZlIG5vIGFsdCBhdHRyaWJ1dGUgKi9cbmltZ3tcbiAgICAmOm5vdChbYWx0XSksXG4gICAgJlthbHQ9XCJcIl0ge1xuICAgICAgICBmaWx0ZXI6IGJsdXIoMTBweCk7XG4gICAgfVxuXG4gICAgJi5mYW5jeWJveF9faW1hZ2UsXG4gICAgJi5mYW5jeWJveC1pbWFnZXtcbiAgICAgICAgZmlsdGVyOiB1bnNldDtcbiAgICB9XG59XG5cbi8qIFJlbW92ZSBhbGwgYW5pbWF0aW9ucyBhbmQgdHJhbnNpdGlvbnMgZm9yIHBlb3BsZSB0aGF0IHByZWZlciBub3QgdG8gc2VlIHRoZW0gKi9cbkBtZWRpYSAocHJlZmVycy1yZWR1Y2VkLW1vdGlvbjogcmVkdWNlKSB7XG4gICAgKiB7XG4gICAgICAgIGFuaW1hdGlvbi1kdXJhdGlvbjogMC4wMW1zICFpbXBvcnRhbnQ7XG4gICAgICAgIGFuaW1hdGlvbi1pdGVyYXRpb24tY291bnQ6IDEgIWltcG9ydGFudDtcbiAgICAgICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4wMW1zICFpbXBvcnRhbnQ7XG4gICAgICAgIHNjcm9sbC1iZWhhdmlvcjogYXV0byAhaW1wb3J0YW50O1xuICAgIH1cbn1cbiIsIi8qKlxuZXhhbXBsZTpcbiAgICAkc3BhY2luZy1tYXAgOiAoXG4gICAgICAgIHNtLS11LTEgOiAoMzdweCwyLjY0MyksXG4gICAgICAgIHNtLS0wICAgOiAoMjNweCwxLjY0MyksXG4gICAgICAgIHNtLS1kLTEgOiAoMTRweCwxKSxcbiAgICAgICAgc20tLWQtMiA6ICg5cHgsMC42NDMpLFxuICAgICAgICBzbS0tZC0zIDogKDZweCwwLjQyOSksXG4gICAgICAgIHNtLS1kLTQgOiAoNHB4LDAuMjg2KSxcbiAgICApO1xuICovXG4vL0BtaXhpbiBtYWtlLXNjYWxlcygkc3BhY2luZy1tYXA6ICRzcGFjaW5nLW1hcCl7XG4vL1xuLy8gICAgQGVhY2ggJG5hbWUsICR2YWx1ZS1saXN0IGluICRzcGFjaW5nLW1hcCB7XG4vLyAgICAgICAgJGF0dHJpYnV0ZSA6IHN0ci1yZXBsYWNlKCRuYW1lLCdzbScsJ3NjYWxlJyk7XG4vLyAgICB9XG4vL1xuLy99XG5cblxuIiwiQGltcG9ydCBcIm1peGlucy9zcGFjaW5nX21peGluc1wiO1xuQGltcG9ydCBcIm1peGlucy9idXR0b25fbWl4XCI7XG5AaW1wb3J0IFwibWl4aW5zL2dyaWRfbWl4XCI7XG5AaW1wb3J0IFwibWl4aW5zL3R5cG9ncmFwaHlfbWl4XCI7XG5AaW1wb3J0IFwibWl4aW5zL3ZhcmlhYmxlc19taXhcIjtcblxuLy8gZXogYWxhYmJpIHRhbGFuIG5lbSBrZWxsIG1lcnQgYSBsb2FkZXJiZW4gZWxvcmViYiBtYXIgdGhlbWUgbWl4aW4gaG9va1xuLy8gcmVzb3VyY2VzL2RldmVsb3BtZW50L2Fzc2V0cy9zY3NzL3RoZW1lL19mcmFtZWVfbG9hZGVyLnNjc3M6MTBcbi8vQG1peGluIGhvb2stYnJlYWRjcnVtYigpe31cbi8vQG1peGluIGhvb2stYnJlYWRjcnVtYi1pdGVtKCl7fVxuLy9AbWl4aW4gaG9vay1icmVhZGNydW1iLWl0ZW0taG92ZXIoKXt9XG4vL0BtaXhpbiBob29rLWJyZWFkY3J1bWItaXRlbS1kaXNhYmxlZCgpe31cbi8vQG1peGluIGhvb2stYnJlYWRjcnVtYi1pdGVtLWFjdGl2ZSgpe31cbi8vQG1peGluIGhvb2stYnJlYWRjcnVtYi1kaXZpZGVyKCl7fVxuLy9AbWl4aW4gaG9vay1icmVhZGNydW1iLWRpdmlkZXItY3VzdG9tKCl7fVxuLy9cbi8vQG1peGluIGhvb2stYnV0dG9uKCl7fVxuLy9AbWl4aW4gaG9vay1idXR0b24taG92ZXIoKXt9XG4vL0BtaXhpbiBob29rLWJ1dHRvbi1kZWZhdWx0KCl7fVxuLy9AbWl4aW4gaG9vay1idXR0b24tZGVmYXVsdC1ob3Zlcigpe31cbi8vQG1peGluIGhvb2stYnV0dG9uLWRlZmF1bHQtYWN0aXZlKCl7fVxuLy9AbWl4aW4gaG9vay1idXR0b24tcHJpbWFyeSgpe31cbi8vQG1peGluIGhvb2stYnV0dG9uLXByaW1hcnktaG92ZXIoKXt9XG4vL0BtaXhpbiBob29rLWJ1dHRvbi1wcmltYXJ5LWFjdGl2ZSgpe31cbi8vQG1peGluIGhvb2stYnV0dG9uLXNlY29uZGFyeSgpe31cbi8vQG1peGluIGhvb2stYnV0dG9uLXNlY29uZGFyeS1ob3Zlcigpe31cbi8vQG1peGluIGhvb2stYnV0dG9uLXNlY29uZGFyeS1hY3RpdmUoKXt9XG4vL0BtaXhpbiBob29rLWJ1dHRvbi1kYW5nZXIoKXt9XG4vL0BtaXhpbiBob29rLWJ1dHRvbi1kYW5nZXItaG92ZXIoKXt9XG4vL0BtaXhpbiBob29rLWJ1dHRvbi1kYW5nZXItYWN0aXZlKCl7fVxuLy9AbWl4aW4gaG9vay1idXR0b24tZGlzYWJsZWQoKXt9XG4vL0BtaXhpbiBob29rLWJ1dHRvbi1zbWFsbCgpe31cbi8vQG1peGluIGhvb2stYnV0dG9uLWxhcmdlKCl7fVxuLy9AbWl4aW4gaG9vay1idXR0b24tdGV4dCgpe31cbi8vQG1peGluIGhvb2stYnV0dG9uLXRleHQtaG92ZXIoKXt9XG4vL0BtaXhpbiBob29rLWJ1dHRvbi10ZXh0LWRpc2FibGVkKCl7fVxuLy9AbWl4aW4gaG9vay1idXR0b24tbGluaygpe31cbi8vXG4vL0BtaXhpbiBob29rLWNhcmQoKXt9XG4vL0BtaXhpbiBob29rLWNhcmQtYm9keSgpe31cbi8vQG1peGluIGhvb2stY2FyZC1oZWFkZXIoKXt9XG4vL0BtaXhpbiBob29rLWNhcmQtZm9vdGVyKCl7fVxuLy9AbWl4aW4gaG9vay1jYXJkLW1lZGlhKCl7fVxuLy9AbWl4aW4gaG9vay1jYXJkLW1lZGlhLXRvcCgpe31cbi8vQG1peGluIGhvb2stY2FyZC1tZWRpYS1ib3R0b20oKXt9XG4vL0BtaXhpbiBob29rLWNhcmQtbWVkaWEtbGVmdCgpe31cbi8vQG1peGluIGhvb2stY2FyZC1tZWRpYS1yaWdodCgpe31cbi8vQG1peGluIGhvb2stY2FyZC10aXRsZSgpe31cbi8vQG1peGluIGhvb2stY2FyZC1iYWRnZSgpe31cbi8vQG1peGluIGhvb2stY2FyZC1ob3Zlcigpe31cbi8vQG1peGluIGhvb2stY2FyZC1kZWZhdWx0KCl7fVxuLy9AbWl4aW4gaG9vay1jYXJkLWRlZmF1bHQtdGl0bGUoKXt9XG4vL0BtaXhpbiBob29rLWNhcmQtZGVmYXVsdC1ob3Zlcigpe31cbi8vQG1peGluIGhvb2stY2FyZC1kZWZhdWx0LWhlYWRlcigpe31cbi8vQG1peGluIGhvb2stY2FyZC1kZWZhdWx0LWZvb3Rlcigpe31cbi8vQG1peGluIGhvb2stY2FyZC1wcmltYXJ5KCl7fVxuLy9AbWl4aW4gaG9vay1jYXJkLXByaW1hcnktdGl0bGUoKXt9XG4vL0BtaXhpbiBob29rLWNhcmQtcHJpbWFyeS1ob3Zlcigpe31cbi8vQG1peGluIGhvb2stY2FyZC1zZWNvbmRhcnkoKXt9XG4vL0BtaXhpbiBob29rLWNhcmQtc2Vjb25kYXJ5LXRpdGxlKCl7fVxuLy9AbWl4aW4gaG9vay1jYXJkLXNlY29uZGFyeS1ob3Zlcigpe31cbi8vXG4vL0BtaXhpbiBob29rLWRlc2NyaXB0aW9uLWxpc3QtdGVybSgpe31cbi8vQG1peGluIGhvb2stZGVzY3JpcHRpb24tbGlzdC1kZXNjcmlwdGlvbigpe31cbi8vQG1peGluIGhvb2stZGVzY3JpcHRpb24tbGlzdC1kaXZpZGVyLXRlcm0oKXt9XG4vL1xuLy9AbWl4aW4gaG9vay1kaXZpZGVyLWljb24oKXt9XG4vL0BtaXhpbiBob29rLWRpdmlkZXItaWNvbi1saW5lKCl7fVxuLy9AbWl4aW4gaG9vay1kaXZpZGVyLWljb24tbGluZS1sZWZ0KCl7fVxuLy9AbWl4aW4gaG9vay1kaXZpZGVyLWljb24tbGluZS1yaWdodCgpe31cbi8vQG1peGluIGhvb2stZGl2aWRlci1zbWFsbCgpe31cbi8vQG1peGluIGhvb2stZGl2aWRlci12ZXJ0aWNhbCgpe31cbi8vXG4vL0BtaXhpbiBob29rLWZvcm0oKXt9XG4vL0BtaXhpbiBob29rLWZvcm0tc2luZ2xlLWxpbmUoKXt9XG4vL0BtaXhpbiBob29rLWZvcm0tbXVsdGktbGluZSgpe31cbi8vQG1peGluIGhvb2stZm9ybS1mb2N1cygpe31cbi8vQG1peGluIGhvb2stZm9ybS1kaXNhYmxlZCgpe31cbi8vQG1peGluIGhvb2stZm9ybS1kYW5nZXIoKXt9XG4vL0BtaXhpbiBob29rLWZvcm0tc3VjY2Vzcygpe31cbi8vQG1peGluIGhvb2stZm9ybS1ibGFuaygpe31cbi8vQG1peGluIGhvb2stZm9ybS1ibGFuay1mb2N1cygpe31cbi8vQG1peGluIGhvb2stZm9ybS1yYWRpbygpe31cbi8vQG1peGluIGhvb2stZm9ybS1yYWRpby1mb2N1cygpe31cbi8vQG1peGluIGhvb2stZm9ybS1yYWRpby1jaGVja2VkKCl7fVxuLy9AbWl4aW4gaG9vay1mb3JtLXJhZGlvLWNoZWNrZWQtZm9jdXMoKXt9XG4vL0BtaXhpbiBob29rLWZvcm0tcmFkaW8tZGlzYWJsZWQoKXt9XG4vL0BtaXhpbiBob29rLWZvcm0tbGFiZWwoKXt9XG4vL1xuLy9AbWl4aW4gaG9vay1oZWFkaW5nLXNtYWxsKCl7fVxuLy9AbWl4aW4gaG9vay1oZWFkaW5nLW1lZGl1bSgpe31cbi8vQG1peGluIGhvb2staGVhZGluZy1sYXJnZSgpe31cbi8vQG1peGluIGhvb2staGVhZGluZy14bGFyZ2UoKXt9XG4vL0BtaXhpbiBob29rLWhlYWRpbmctMnhsYXJnZSgpe31cbi8vQG1peGluIGhvb2staGVhZGluZy1kaXZpZGVyKCl7fVxuLy9AbWl4aW4gaG9vay1oZWFkaW5nLWJ1bGxldCgpe31cbi8vQG1peGluIGhvb2staGVhZGluZy1saW5lKCl7fVxuLy9cbi8vQG1peGluIGhvb2stbGFiZWwoKXt9XG4vL0BtaXhpbiBob29rLWxhYmVsLXN1Y2Nlc3MoKXt9XG4vL0BtaXhpbiBob29rLWxhYmVsLXdhcm5pbmcoKXt9XG4vL0BtaXhpbiBob29rLWxhYmVsLWRhbmdlcigpe31cbi8vXG4vL0BtaXhpbiBob29rLXBhZ2luYXRpb24oKXt9XG4vL0BtaXhpbiBob29rLXBhZ2luYXRpb24taXRlbSgpe31cbi8vQG1peGluIGhvb2stcGFnaW5hdGlvbi1pdGVtLWhvdmVyKCl7fVxuLy9AbWl4aW4gaG9vay1wYWdpbmF0aW9uLWl0ZW0tYWN0aXZlKCl7fVxuLy9AbWl4aW4gaG9vay1wYWdpbmF0aW9uLWl0ZW0tZGlzYWJsZWQoKXt9XG4vL0BtaXhpbiBob29rLXBhZ2luYXRpb24tY3VzdG9tLWFycm93KCkge31cbi8vXG4vL0BtaXhpbiBob29rLXRhYmxlKCl7fVxuLy9AbWl4aW4gaG9vay10YWJsZS1oZWFkZXItY2VsbCgpe31cbi8vQG1peGluIGhvb2stdGFibGUtY2VsbCgpe31cbi8vQG1peGluIGhvb2stdGFibGUtZm9vdGVyKCl7fVxuLy9AbWl4aW4gaG9vay10YWJsZS1jYXB0aW9uKCl7fVxuLy9AbWl4aW4gaG9vay10YWJsZS1yb3ctYWN0aXZlKCl7fVxuLy9AbWl4aW4gaG9vay10YWJsZS1kaXZpZGVyKCl7fVxuLy9AbWl4aW4gaG9vay10YWJsZS1zdHJpcGVkKCl7fVxuLy9AbWl4aW4gaG9vay10YWJsZS1ob3Zlcigpe31cblxuLy8gU1ZHXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuLy8vIFJlcGxhY2UgYCRzZWFyY2hgIHdpdGggYCRyZXBsYWNlYCBpbiBgJHN0cmluZ2Bcbi8vLyBAYXV0aG9yIEh1Z28gR2lyYXVkZWxcbi8vLyBAcGFyYW0ge1N0cmluZ30gJHN0cmluZyAtIEluaXRpYWwgc3RyaW5nXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRzZWFyY2ggLSBTdWJzdHJpbmcgdG8gcmVwbGFjZVxuLy8vIEBwYXJhbSB7U3RyaW5nfSAkcmVwbGFjZSAoJycpIC0gTmV3IHZhbHVlXG4vLy8gQHJldHVybiB7U3RyaW5nfSAtIFVwZGF0ZWQgc3RyaW5nXG5AZnVuY3Rpb24gc3RyLXJlcGxhY2UoJHN0cmluZywgJHNlYXJjaCwgJHJlcGxhY2U6ICcnKSB7XG4gICRpbmRleDogc3RyLWluZGV4KCRzdHJpbmcsICRzZWFyY2gpO1xuXG4gIEBpZiAkaW5kZXgge1xuICAgIEByZXR1cm4gc3RyLXNsaWNlKCRzdHJpbmcsIDEsICRpbmRleCAtIDEpICsgJHJlcGxhY2UgKyBzdHItcmVwbGFjZShzdHItc2xpY2UoJHN0cmluZywgJGluZGV4ICsgc3RyLWxlbmd0aCgkc2VhcmNoKSksICRzZWFyY2gsICRyZXBsYWNlKTtcbiAgfVxuXG4gIEByZXR1cm4gJHN0cmluZztcbn1cblxuQG1peGluIHN2Zy1maWxsKCRzcmMsICRjb2xvci1kZWZhdWx0LCAkY29sb3ItbmV3KXtcblxuICAkcmVwbGFjZS1zcmM6IHN0ci1yZXBsYWNlKCRzcmMsICRjb2xvci1kZWZhdWx0LCAkY29sb3ItbmV3KSAhZGVmYXVsdDtcbiAgJHJlcGxhY2Utc3JjOiBzdHItcmVwbGFjZSgkcmVwbGFjZS1zcmMsIFwiI1wiLCBcIiUyM1wiKTtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKHF1b3RlKCRyZXBsYWNlLXNyYykpO1xufVxuXG4vKipcbkluamVjdCBwYWdlIHNwZWNpZmljIG1peGluc1xuICovXG4vL0BpbXBvcnQgXCIuLi90aGVtZS9wYWdlX3NwZWNpZmljL19taXhpbnMvc3BlY2lhbHNcIjtcbiIsIlxuQG1peGluIGZsdWlkLW1pbi1hbmQtbWF4KCRmbHVpZC1zdGVwcyl7XG5cbiAgOnJvb3R7XG4gICAgLS1mbHVpZC1taW4td2lkdGg6IDMyMDtcbiAgICAtLWZsdWlkLW1heC13aWR0aDogMTkyMDtcbiAgICAtLWZsdWlkLXNjcmVlbjogMTAwdnc7XG4gICAgLS1mbHVpZC1icDogY2FsYygodmFyKC0tZmx1aWQtc2NyZWVuKSAtIHZhcigtLWZsdWlkLW1pbi13aWR0aCkgLyAxNiAqIDFyZW0pIC8gKHZhcigtLWZsdWlkLW1heC13aWR0aCkgLSB2YXIoLS1mbHVpZC1taW4td2lkdGgpKSk7XG4gIFxuICAgIEBlYWNoICRsYWJlbCwgJHN0ZXAgaW4gJGZsdWlkLXN0ZXBze1xuICAgICAgQGlmKCRsYWJlbCA9PSAncycpe1xuICAgICAgICAtLXNwYWNlLXMtbWluOiAodmFyKC0tZi0wLW1pbiwgMTYgKSk7XG4gICAgICAgIC0tc3BhY2Utcy1tYXg6ICh2YXIoLS1mLTAtbWF4LCAzNCApKTtcbiAgICAgIH1cbiAgICAgIEBlbHNlIHtcbiAgICAgICAgLS1zcGFjZS0jeyRsYWJlbH0tbWluOiAodmFyKC0tc3BhY2Utcy1taW4pICogI3skc3RlcH0pO1xuICAgICAgICAtLXNwYWNlLSN7JGxhYmVsfS1tYXg6ICh2YXIoLS1zcGFjZS1zLW1heCkgKiAjeyRzdGVwfSk7XG4gICAgICB9XG4gICAgfVxuICAgIFxuICAgIFxuICAgIFxuICAgIC8qIFQtc2hpcnQgc2l6ZXMgKi9cbiAgICBAZWFjaCAkbGFiZWwsICRzdGVwIGluICRmbHVpZC1zdGVwc3tcbiAgICAgIEBpZigkbGFiZWwgPT0gJ3MnKXtcbiAgICAgICAgLS1zcGFjZS1zOiBjYWxjKCgodmFyKC0tc3BhY2Utcy1taW4pIC8gMTYpICogMXJlbSkgKyAodmFyKC0tc3BhY2Utcy1tYXgpIC0gdmFyKC0tc3BhY2Utcy1taW4pKSAqIHZhcigtLWZsdWlkLWJwKSk7XG4gICAgICB9XG4gICAgICBAZWxzZSB7XG4gICAgICAgIC0tc3BhY2UtI3skbGFiZWx9OiBjYWxjKCgodmFyKC0tc3BhY2UtI3skbGFiZWx9LW1pbikgLyAxNikgKiAxcmVtKSArICh2YXIoLS1zcGFjZS0jeyRsYWJlbH0tbWF4KSAtIHZhcigtLXNwYWNlLSN7JGxhYmVsfS1taW4pKSAqIHZhcigtLWZsdWlkLWJwKSk7XG4gICAgICB9XG4gICAgfVxuICAgIFxuICAgIFxuICAgIC8qIE9uZS11cCBwYWlycyAqL1xuICAgIC8vLS1zcGFjZS0zeHMtMnhzOiBjYWxjKCgodmFyKC0tc3BhY2UtM3hzLW1pbikgLyAxNikgKiAxcmVtKSArICh2YXIoLS1zcGFjZS0yeHMtbWF4KSAtIHZhcigtLXNwYWNlLTN4cy1taW4pKSAqIHZhcigtLWZsdWlkLWJwKSk7XG4gICAgLy8tLXNwYWNlLTJ4cy14czogY2FsYygoKHZhcigtLXNwYWNlLTJ4cy1taW4pIC8gMTYpICogMXJlbSkgKyAodmFyKC0tc3BhY2UteHMtbWF4KSAtIHZhcigtLXNwYWNlLTJ4cy1taW4pKSAqIHZhcigtLWZsdWlkLWJwKSk7XG4gICAgLy8tLXNwYWNlLXhzLXM6IGNhbGMoKCh2YXIoLS1zcGFjZS14cy1taW4pIC8gMTYpICogMXJlbSkgKyAodmFyKC0tc3BhY2Utcy1tYXgpIC0gdmFyKC0tc3BhY2UteHMtbWluKSkgKiB2YXIoLS1mbHVpZC1icCkpO1xuICAgIC8vLS1zcGFjZS1zLW06IGNhbGMoKCh2YXIoLS1zcGFjZS1zLW1pbikgLyAxNikgKiAxcmVtKSArICh2YXIoLS1zcGFjZS1tLW1heCkgLSB2YXIoLS1zcGFjZS1zLW1pbikpICogdmFyKC0tZmx1aWQtYnApKTtcbiAgICAvLy0tc3BhY2UtbS1sOiBjYWxjKCgodmFyKC0tc3BhY2UtbS1taW4pIC8gMTYpICogMXJlbSkgKyAodmFyKC0tc3BhY2UtbC1tYXgpIC0gdmFyKC0tc3BhY2UtbS1taW4pKSAqIHZhcigtLWZsdWlkLWJwKSk7XG4gICAgLy8tLXNwYWNlLWwteGw6IGNhbGMoKCh2YXIoLS1zcGFjZS1sLW1pbikgLyAxNikgKiAxcmVtKSArICh2YXIoLS1zcGFjZS14bC1tYXgpIC0gdmFyKC0tc3BhY2UtbC1taW4pKSAqIHZhcigtLWZsdWlkLWJwKSk7XG4gICAgLy8tLXNwYWNlLXhsLTJ4bDogY2FsYygoKHZhcigtLXNwYWNlLXhsLW1pbikgLyAxNikgKiAxcmVtKSArICh2YXIoLS1zcGFjZS0yeGwtbWF4KSAtIHZhcigtLXNwYWNlLXhsLW1pbikpICogdmFyKC0tZmx1aWQtYnApKTtcbiAgICAvLy0tc3BhY2UtMnhsLTN4bDogY2FsYygoKHZhcigtLXNwYWNlLTJ4bC1taW4pIC8gMTYpICogMXJlbSkgKyAodmFyKC0tc3BhY2UtM3hsLW1heCkgLSB2YXIoLS1zcGFjZS0yeGwtbWluKSkgKiB2YXIoLS1mbHVpZC1icCkpO1xuICAgIC8vLS1zcGFjZS0zeGwtNHhsOiBjYWxjKCgodmFyKC0tc3BhY2UtM3hsLW1pbikgLyAxNikgKiAxcmVtKSArICh2YXIoLS1zcGFjZS00eGwtbWF4KSAtIHZhcigtLXNwYWNlLTN4bC1taW4pKSAqIHZhcigtLWZsdWlkLWJwKSk7XG4gICAgLy8tLXNwYWNlLTR4bC01eGw6IGNhbGMoKCh2YXIoLS1zcGFjZS00eGwtbWluKSAvIDE2KSAqIDFyZW0pICsgKHZhcigtLXNwYWNlLTV4bC1tYXgpIC0gdmFyKC0tc3BhY2UtNHhsLW1pbikpICogdmFyKC0tZmx1aWQtYnApKTtcbiAgICBcbiAgICAvLyBob3cgbG9uZyBpcyBvdXIgZmx1aWQtc3RlcHMgbWFwL2FycmF5XG4gICAgJGZsdWlkLXN0ZXBzLWxlbmd0aCA6IGxlbmd0aCgkZmx1aWQtc3RlcHMpO1xuICAgICRzdGVwLWluZGV4OiAwO1xuICAgIFxuICAgIEBlYWNoICRsYWJlbCwgJHN0ZXAgaW4gJGZsdWlkLXN0ZXBze1xuICAgICAgJHN0ZXAtaW5kZXggOiAkc3RlcC1pbmRleCAgKyAxO1xuICAgICAgJG5leHQtc3RlcC1pbmRleDogJHN0ZXAtaW5kZXggICsgMTtcbiAgICAgIC8vIG1ha2UgbmV4dCBzdGVwIG51bWJlclxuICAgICAgQGlmKCRmbHVpZC1zdGVwcy1sZW5ndGggPiAkc3RlcC1pbmRleCl7IC8vIGRvIG5vdCBzdGVwIG9mZiBvdXIgbWFwLCB0aGUgbGFzdCBpdGVtIGRvZXMgbm90IGhhdmUgbmV4dCwgc3J5XG4gICAgICAgICRuZXh0LXN0ZXAtbGFiZWw6IG50aChtYXAta2V5cygkZmx1aWQtc3RlcHMpLCAkbmV4dC1zdGVwLWluZGV4KTtcbiAgICAgICAgLS1zcGFjZS0jeyRsYWJlbH0tI3skbmV4dC1zdGVwLWxhYmVsfTogY2FsYygoKHZhcigtLXNwYWNlLSN7JGxhYmVsfS1taW4pIC8gMTYpICogMXJlbSkgKyAodmFyKC0tc3BhY2UtI3skbmV4dC1zdGVwLWxhYmVsfS1tYXgpIC0gdmFyKC0tc3BhY2UtI3skbGFiZWx9LW1pbikpICogdmFyKC0tZmx1aWQtYnApKTtcbiAgICAgIH1cbiAgICB9XG4gICAgXG4gICAgLyogQ3VzdG9tIHBhaXJzICovXG4gICAgLy8gVE9ETyBjdXN0b20gcGFpcnMgaWYgbmVlZGVkXG4gICAgLy8tLXNwYWNlLXMtbDogY2FsYygoKHZhcigtLXNwYWNlLXMtbWluKSAvIDE2KSAqIDFyZW0pICsgKHZhcigtLXNwYWNlLWwtbWF4KSAtIHZhcigtLXNwYWNlLXMtbWluKSkgKiB2YXIoLS1mbHVpZC1icCkpO1xuICAgIFxuICB9XG4gIFxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxOTIwcHgpIHtcbiAgICA6cm9vdCB7XG4gICAgICAtLWZsdWlkLXNjcmVlbjogY2FsYyh2YXIoLS1mbHVpZC1tYXgtd2lkdGgpICogMXB4KTtcbiAgICB9XG4gIH1cbiAgXG59XG5cbkBtaXhpbiBmbHVpZC1zcGFjZS1zdGVwcGVyKCRmbHVpZC1zdGVwcyl7XG4gIFxuICAvLzpyb290IHtcbiAgLy8gIC0tZi1tYXgtdzogOTA7IC8vIDE0NDBweCBpbiBSRU1cbiAgLy8gIC0tZi1taW4tdzogMjA7IC8vIDMyMHB4IGluIFJFTVxuICAvLyAgLS1mLW1pbnVzOiAoLTEgKiB2YXIoLS1mLW1pbi13KSk7IC8vIFByZWNhbGN1YXRpb24gZm9yIHRoZSAtTWluV2lkdGggd2UgbmVlZFxuICAvLyAgLS1mLXc6ICh2YXIoLS1mLW1heC13KSAtIHZhcigtLWYtbWluLXcpKTsgLy8gUHJlY2FsY3VsYXRpb24gZm9yIHRoZSAoTWF4V2lkdGggLSBNaW5XaWR0aCkgd2UgbmVlZFxuICAvL1xuICAvLyAgLyogUGVyIHN0ZXAgc2l6ZSAqL1xuICAvLyAgLS1mLTAtbWluOiAxOyAvLyBNaW4gZm9udCBzaXplXG4gIC8vICAtLWYtMC1tYXg6IDI7IC8vIE1heCBmb250IHNpemVcbiAgLy8gIC0tZi0wLXNsb3BlOiAodmFyKC0tZi0wLW1heCkgLSB2YXIoLS1mLTAtbWluKSkgLyAodmFyKC0tZi1tYXgtdykgLSB2YXIoLS1mLW1pbi13KSk7XG4gIC8vICAtLWYtMC1pbnRlcnNlY3Rpb246ICgoLTEgKiB2YXIoLS1mLW1pbi13KSkgKiB2YXIoLS1mLXNsb3BlKSArIHZhcigtLWYtMC1taW4pKTtcbiAgLy8gIC0tc3RlcC0wOiBjbGFtcCh2YXIoLS1mLTAtbWluKSAqIDFyZW0sIHZhcigtLWYtMC1pbnRlcnNlY3Rpb24pICogMXJlbSArIHZhcigtLWYtMC1zbG9wZSkgKiAxMDB2dywgdmFyKC0tZi0wLW1heCkgKiAxcmVtKTtcbiAgLy99XG4gIFxuICBcbiAgOnJvb3R7XG4gICAgQGVhY2ggJGxhYmVsLCAkc3RlcCBpbiAkZmx1aWQtc3RlcHN7XG4gICAgXG4gICAgICAkbWluLWZvbnQtc2l6ZTogJHN0ZXAgKiAkZmVzcC1taW4tZm9udC1zaXplO1xuICAgICAgJG1heC1mb250LXNpemU6ICRzdGVwICogJGZlc3AtbWF4LWZvbnQtc2l6ZTtcbiAgICBcbiAgICAgIC0tZmVzcC0jeyRsYWJlbH06ICN7ZmVzcC1zdGVwLWN1cnJlbnQoJG1pbi1mb250LXNpemUsICRtYXgtZm9udC1zaXplKX07XG4gICAgfVxuICBcbiAgICAkc3RlcHMtYW1vdW50OiBsZW5ndGgoJGZsdWlkLXN0ZXBzKTtcbiAgICAkc3RlcC1jdXJyZW50LWtleTogJyc7XG4gICAgQGVhY2ggJGxhYmVsLCAkc3RlcCBpbiAkZmx1aWQtc3RlcHN7XG4gICAgICBcbiAgICAgIEBpZiAoc3RyLWxlbmd0aCgkc3RlcC1jdXJyZW50LWtleSkgPiAwKXtcbiAgICAgICAgJG1pbi1mb250LXNpemU6IG1hcC1nZXQoJGZsdWlkLXN0ZXBzLCAkc3RlcC1jdXJyZW50LWtleSkgKiAkZmVzcC1taW4tZm9udC1zaXplO1xuICAgICAgICAkbWF4LWZvbnQtc2l6ZTogbWFwLWdldCgkZmx1aWQtc3RlcHMsICRsYWJlbCkgICogJGZlc3AtbWF4LWZvbnQtc2l6ZTtcbiAgICAgICAtLWZlc3AtI3skc3RlcC1jdXJyZW50LWtleX0tI3skbGFiZWx9OiAgI3tmZXNwLXN0ZXAtY3VycmVudCgkbWluLWZvbnQtc2l6ZSwgJG1heC1mb250LXNpemUpfTtcbiAgICAgIH1cbiAgICAgICRzdGVwLWN1cnJlbnQta2V5OiAkbGFiZWw7XG4gICAgXG4gICAgfVxuICBcbiAgICAvLyRmbHVpZC1zdGVwcy1jdXN0b21zOiAoXG4gICAgLy8gIDEgOiAoJ3MnLCAneGwnKSxcbiAgICAvLyAgMjogKCd4bCcsICd4cycpXG4gICAgLy8pICFkZWZhdWx0O1xuICAgIEBpZihsZW5ndGgoJGZsdWlkLXN0ZXBzLWN1c3RvbXMpID4gMCl7XG4gICAgICBAZWFjaCAkaW5kZXgsICRjdXN0b21zIGluICRmbHVpZC1zdGVwcy1jdXN0b21ze1xuICAgICAgICBAaWYobGVuZ3RoKCRjdXN0b21zKSA9PSAyKXtcbiAgICAgICAgICAkZnJvbTogbnRoKCRjdXN0b21zLCAxKTtcbiAgICAgICAgICAkdG86IG50aCgkY3VzdG9tcywgMik7XG4gICAgICAgICAgQGlmKG1hcC1oYXMta2V5KCRmbHVpZC1zdGVwcywgJGZyb20pIGFuZCBtYXAtaGFzLWtleSgkZmx1aWQtc3RlcHMsICR0bykpe1xuICAgICAgICAgICAgJHN0ZXBWYWx1ZUZyb206IG1hcC1nZXQoJGZsdWlkLXN0ZXBzLCAgJGZyb20pO1xuICAgICAgICAgICAgJHN0ZXBWYWx1ZVRvOiBtYXAtZ2V0KCRmbHVpZC1zdGVwcywgICR0byk7XG4gICAgICAgICAgICAkbWluLWZvbnQtc2l6ZTogJHN0ZXBWYWx1ZUZyb20gKiAkZmVzcC1taW4tZm9udC1zaXplO1xuICAgICAgICAgICAgJG1heC1mb250LXNpemU6ICRzdGVwVmFsdWVUbyAgKiAkZmVzcC1tYXgtZm9udC1zaXplO1xuICAgICAgICAgICAgXG4gICAgICAgICAgICAtLWZlc3AtI3skZnJvbX0tI3skdG99OiAgI3tmZXNwLXN0ZXAtY3VycmVudCgkbWluLWZvbnQtc2l6ZSwgJG1heC1mb250LXNpemUpfTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxufVxuIiwiXG5odG1se1xuICAgIC0tZm9udC1zY2FsZV9fYmFzZTogI3tmb250LXNjYWxlLXZhbHVlKGJhc2UpfTtcbiAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2NhbGVfX2Jhc2UsIDE2cHgpO1xufVxuXG5ib2R5e1xuICAgIGZvbnQtZmFtaWx5OiAkZm9udC1wcmltYXJ5O1xuICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgICBmb250LXdlaWdodDogbm9ybWFsO1xufVxuXG5wLFxuLnBhcmFncmFwaCB7XG4gICAgZm9udC1zaXplOiBmZWZzKHN0ZXAtLTApO1xuICAgIGxpbmUtaGVpZ2h0OiBtYXAtZ2V0KCRmb250LWxpbmUtaGVpZ2h0LCBiYXNlKTtcblxuICAgIGZvbnQtZmFtaWx5OiAkZm9udC1wcmltYXJ5O1xuICAgIGZvbnQtc3R5bGU6ICRib2R5LWZvbnQtc3R5bGU7XG4gICAgZm9udC13ZWlnaHQ6ICRib2R5LWZvbnQtd2VpZ2h0O1xuICAgIGNvbG9yOiAkY29sb3ItLWJvZHk7XG5cbiAgICAmLnNtYWxsIHtcbiAgICAgICAgZm9udC1zaXplOiBjYWxjKCN7ZmVmcyhzdGVwLS0wKX0gKiAwLjgpO1xuICAgIH1cblxuICAgIGEsXG4gICAgYTp2aXNpdGVke1xuICAgICAgICBjb2xvcjogJGxpbmstY29sb3ItLXZpc2l0ZWQ7XG4gICAgfVxufVxuXG5AaW5jbHVkZSBhbmNob3JzKCk7XG5cbi5sZWFke1xuICAgIC8vZm9udC13ZWlnaHQ6IDkwMDtcbiAgICAvL2ZvbnQtc2l6ZTogNzJweDtcbiAgICAvL2xpbmUtaGVpZ2h0OiAxMDAlO1xuICAgIC8vbGV0dGVyLXNwYWNpbmc6IC0wLjAzZW07XG4gICAgLy9tYXJnaW4tYm90dG9tOiAzMHB4O1xufVxuXG5hZGRyZXNze1xuICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbn1cblxuaDEsIGgyLCBoMywgaDQsIGg1LCBoNixcbi5oMSwgLmgyLCAuaDMsIC5oNCwgLmg1LCAuaDYsXG57XG4gICAgZm9udC1mYW1pbHk6ICRmb250LWZhbWlseS1oZWFkaW5ncztcbn1cblxuXG5AbWVkaWEgc2NyZWVuIGFuZCAgKG1pbi13aWR0aDogMzIwcHgpe1xuICAgIDpyb290e1xuICAgICAgICAtLWZvbnQtc2NhbGVfX2Jhc2U6IDE0cHg7XG4gICAgfVxuXG4gICAgLy8kZm9udC1zaXplLW1hcCA6IG1hcC1nZXQoJGZvbnQtc2l6aW5nLCAzMjApO1xuICAgIC8vJHNwYWNlLW1hcCA6IG1hcC1nZXQoJHNwYWNpbmcsMzIwKTtcblxuICAgIEBpbmNsdWRlIGZvbnQoKTtcbn07XG5cbkBtZWRpYSBzY3JlZW4gYW5kICAobWluLXdpZHRoOiA3NjhweCl7XG4gICAgOnJvb3R7XG4gICAgICAgIC0tZm9udC1zY2FsZV9fYmFzZTogMTZweDtcbiAgICB9XG59O1xuXG5AbWVkaWEgc2NyZWVuIGFuZCAgKG1pbi13aWR0aDogMTY4MHB4KXtcbiAgICA6cm9vdHtcbiAgICAgICAgLS1mb250LXNjYWxlX19iYXNlOiAxOHB4O1xuICAgIH1cbn07XG5cblxuLy8gSG9va3Ncbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4vLyBAbWl4aW4gaG9vay10eXBvZ3JhcGh5LW1pc2MoKXt9XG5cbkBpZihtaXhpbi1leGlzdHMoaG9vay10eXBvZ3JhcGh5LW1pc2MpKSB7QGluY2x1ZGUgaG9vay10eXBvZ3JhcGh5LW1pc2MoKTt9XG4iLCIvL0BtaXhpbiBodG1sKCRtYXA6ICRtYXAsICRpbmRleDogJGluZGV4KXtcbi8vICAgIC8vZm9udC1zaXplOiAkYmFzZS1mb250LXNpemU7XG4vLyAgICAvL2xpbmUtaGVpZ2h0OiAkYmFzZS1saW5lLWhlaWdodDtcbi8vICAgICRiZ2MgOiBtYXAtZ2V0KCRtYXAsJGluZGV4KTtcbi8vICAgIGJhY2tncm91bmQtY29sb3I6ICRiZ2M7XG4vL1xuLy8gICAgQGNvbnRlbnRcbi8vfVxuXG5AbWl4aW4gYmFzZSgpe1xuICAgIC8qKlxuICAgIFJldXNhYmxlXG4gICAgKi9cbiAgICBodG1sLCBib2R5e1xuICAgICAgICBmb250LXNpemU6IGZlZnMoc3RlcC0tMCk7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiBtYXAtZ2V0KCRmb250LWxpbmUtaGVpZ2h0LCBiYXNlKTtcbiAgICB9XG4gICAgXG4gICAgcCwgIHVsLCAgb2wsICBibG9ja3F1b3RlLCAgcHJlLCAgLmFsZXJ0LCAgLm5vdGUsICAuYm94LCAgLmZvb3Rub3RlcyB7XG4gICAgICAgICY6bm90KCY6bGFzdC1vZi10eXBlKXtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IHZhcigtLXNwYWNlLWJhc2UpO1xuICAgICAgICB9XG4gICAgfVxuICAgIFxuICAgIEBjb250ZW50XG59XG5cbkBtaXhpbiBoZWFkaW5ncygpIHtcbiAgICBoMSwgLmgxe1xuICAgICAgICBmb250LXNpemU6IGZlZnMoc3RlcC0tdS00KTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IG1hcC1nZXQoJGZvbnQtbGluZS1oZWlnaHQsIGhlYWRpbmcpO1xuICAgIH1cbiAgICBcbiAgICBoMiwgLmgye1xuICAgICAgICBmb250LXNpemU6IGZlZnMoc3RlcC0tdS0zKTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IG1hcC1nZXQoJGZvbnQtbGluZS1oZWlnaHQsIGhlYWRpbmcpO1xuICAgICAgICBcbiAgICAgICAgZm9udC13ZWlnaHQ6ICRmb250LXdpZHRoLWhlYWRpbmdzO1xuICAgIH1cbiAgICBcbiAgICBoMywgLmgze1xuICAgICAgICBmb250LXNpemU6IGZlZnMoc3RlcC0tdS0yKTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IG1hcC1nZXQoJGZvbnQtbGluZS1oZWlnaHQsIGhlYWRpbmcpO1xuICAgICAgICBcbiAgICAgICAgZm9udC13ZWlnaHQ6ICRmb250LXdpZHRoLWhlYWRpbmdzO1xuICAgIH1cbiAgICBcbiAgICBoNCwgLmg0e1xuICAgICAgICBmb250LXNpemU6IGZlZnMoc3RlcC0tdS0xKTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IG1hcC1nZXQoJGZvbnQtbGluZS1oZWlnaHQsIGhlYWRpbmcpO1xuICAgICAgICBcbiAgICAgICAgZm9udC13ZWlnaHQ6ICRmb250LXdpZHRoLWhlYWRpbmdzO1xuICAgIH1cbiAgICBcbiAgICBoNSwgLmg1e1xuICAgICAgICBmb250LXNpemU6IGZlZnMoc3RlcC0tdS0xKTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IG1hcC1nZXQoJGZvbnQtbGluZS1oZWlnaHQsIGhlYWRpbmcpO1xuICAgICAgICBcbiAgICAgICAgZm9udC13ZWlnaHQ6ICRmb250LXdpZHRoLWhlYWRpbmdzO1xuICAgIH1cbiAgICBcbiAgICBoNiwgLmg2e1xuICAgICAgICBmb250LXNpemU6IGZlZnMoc3RlcC0tdS0xKTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IG1hcC1nZXQoJGZvbnQtbGluZS1oZWlnaHQsIGhlYWRpbmcpO1xuICAgIH1cbiAgICBAY29udGVudFxufVxuXG5AbWl4aW4gZm9udCgpe1xuICAgIC8vJGJhc2UtZm9udC1zaXplIDogZ2V0LWZvbnQtc2l6ZShmc20tLTAsICRmb250LXNpemUtbWFwKTtcbiAgICAvLyRiYXNlLWxpbmUtaGVpZ2h0IDogZ2V0LWxpbmUtaGVpZ2h0KGZzbS0tMCwkZm9udC1zaXplLW1hcCk7XG5cbiAgICAvL0RlZmluZSBodG1sIGJhc2Ugc3R5bGVzXG4gICAgQGluY2x1ZGUgYmFzZSgpO1xuXG4gICAgLy8gQWRkIGhlYWRpbmcgZm9udCBzaXplc1xuICAgIEBpbmNsdWRlIGhlYWRpbmdzKCk7XG4gICAgXG4gICAgaDEsIC5oMXtcbiAgICAgICAgLy9tYXJnaW4tYm90dG9tOiBnZXQtc2NhbGUtdmFsdWUoc2NhbGUtLTAsICRzcGFjaW5nLW1hcCk7XG4gICAgICAgIC8vbWFyZ2luLXRvcDogZ2V0LXNjYWxlLXZhbHVlKHNtLS1kLTMsICRzcGFjaW5nLW1hcCk7XG4gICAgfVxuICAgIFxuICAgIGgyLCAuaDJ7XG4gICAgICAgIC8vbWFyZ2luLWJvdHRvbTogZ2V0LXNjYWxlLXZhbHVlKHNjYWxlLS1kLTEsICRzcGFjaW5nLW1hcCk7XG4gICAgICAgIC8vbWFyZ2luLXRvcDogZ2V0LXNjYWxlLXZhbHVlKHNtLS1kLTMsICRzcGFjaW5nLW1hcCk7XG4gICAgfVxuICAgIFxuICAgIGgzLCAuaDN7XG4gICAgICAgIC8vbWFyZ2luLWJvdHRvbTogZ2V0LXNjYWxlLXZhbHVlKHNjYWxlLS1kLTIsICRzcGFjaW5nLW1hcCk7XG4gICAgICAgIC8vbWFyZ2luLXRvcDogZ2V0LXNjYWxlLXZhbHVlKHNtLS1kLTMsICRzcGFjaW5nLW1hcCk7XG4gICAgfVxuICAgIFxuICAgIGg0LCAuaDR7XG4gICAgICAgIC8vbWFyZ2luLWJvdHRvbTogZ2V0LXNjYWxlLXZhbHVlKHNjYWxlLS1kLTMsICRzcGFjaW5nLW1hcCk7XG4gICAgICAgIC8vbWFyZ2luLXRvcDogZ2V0LXNjYWxlLXZhbHVlKHNtLS1kLTMsICRzcGFjaW5nLW1hcCk7XG4gICAgfVxuICAgIFxuICAgIGg1LCAuaDV7XG4gICAgICAgIC8vbWFyZ2luLWJvdHRvbTogZ2V0LXNjYWxlLXZhbHVlKHNjYWxlLS1kLTMsICRzcGFjaW5nLW1hcCk7XG4gICAgICAgIC8vbWFyZ2luLXRvcDogZ2V0LXNjYWxlLXZhbHVlKHNtLS1kLTMsICRzcGFjaW5nLW1hcCk7XG4gICAgfVxuICAgIFxuICAgIGg2LCAuaDZ7XG4gICAgICAgIC8vbWFyZ2luLWJvdHRvbTogZ2V0LXNjYWxlLXZhbHVlKHNjYWxlLS1kLTQsICRzcGFjaW5nLW1hcCk7XG4gICAgICAgIC8vbWFyZ2luLXRvcDogZ2V0LXNjYWxlLXZhbHVlKHNtLS1kLTMsICRzcGFjaW5nLW1hcCk7XG4gICAgfVxuXG4gICAgQGNvbnRlbnQ7XG59XG5cbkBtaXhpbiBhbmNob3Jze1xuICAgIFxuICAgIGE6bm90KC5mZS1idXR0b24pIHtcbiAgICAgICAgb3V0bGluZTogbm9uZTtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICBjb2xvcjogJGxpbmstY29sb3ItLWRlZmF1bHQ7XG4gICAgICAgIFxuICAgICAgICAmOmxpbmsge1xuICAgICAgICAgICAgY29sb3I6ICRsaW5rLWNvbG9yLS1kZWZhdWx0O1xuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICAmOnZpc2l0ZWQge1xuICAgICAgICAgICAgY29sb3I6ICRsaW5rLWNvbG9yLS1kZWZhdWx0O1xuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICAmOmZvY3VzIHtcbiAgICAgICAgICAgIGNvbG9yOiAkbGluay1jb2xvci0tZm9jdXM7XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgY29sb3I6ICRsaW5rLWNvbG9yLS1ob3ZlcjtcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgJjphY3RpdmUge1xuICAgICAgICAgICAgY29sb3I6ICRsaW5rLWNvbG9yLS1hY3RpdmU7XG4gICAgICAgIH1cbiAgICB9XG4gICAgXG4gICAgQGNvbnRlbnRcbn1cbiIsIi8vIE5hbWU6ICAgICAgICAgICAgQnJlYWRjcnVtYnNcbi8vIERlc2NyaXB0aW9uOiAgICAgQ29tcG9uZW50IHRvIGNyZWF0ZSBhIGJyZWFkY3J1bWIgbmF2aWdhdGlvblxuLy9cbi8vIENvbXBvbmVudDogICAgICAgYGZlLWJyZWFkY3J1bWJzYFxuLy9cbi8vIEFkZC1vbnMgICAgICAgICAgYGZlLWJyZWFkY3J1bWJzLWN1c3RvbWAgICEgcGxzIHB1dCBjdXN0b20gc3ZnIGFmdGVyIGxpbmsgIVxuLy9cbi8vIFN0YXRlczogICAgICAgICAgYGZlLWRpc2FibGVkYFxuLy9cbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5cbi8vIFZhcmlhYmxlc1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbiRicmVhZGNydW1iLWl0ZW0tZm9udC1zaXplOiAgICAgICAgICAgICAgICAgICAgICAgICAgJGdsb2JhbC1zbWFsbC1mb250LXNpemUgIWRlZmF1bHQ7XG4kYnJlYWRjcnVtYi1pdGVtLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICRnbG9iYWwtbXV0ZWQtY29sb3IgIWRlZmF1bHQ7XG4kYnJlYWRjcnVtYi1pdGVtLWhvdmVyLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgICRnbG9iYWwtY29sb3IgIWRlZmF1bHQ7XG4kYnJlYWRjcnVtYi1pdGVtLWhvdmVyLXRleHQtZGVjb3JhdGlvbjogICAgICAgICAgICAgIG5vbmUgIWRlZmF1bHQ7XG4kYnJlYWRjcnVtYi1pdGVtLWFjdGl2ZS1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICRnbG9iYWwtY29sb3IgIWRlZmF1bHQ7XG5cbiRicmVhZGNydW1iLWRpdmlkZXI6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJ1xcMjE5MicgIWRlZmF1bHQ7XG4kYnJlYWRjcnVtYi1kaXZpZGVyLW1hcmdpbi1ob3Jpem9udGFsOiAgICAgICAgICAgICAgIDIwcHggIWRlZmF1bHQ7XG4kYnJlYWRjcnVtYi1kaXZpZGVyLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgICAgICAgICRicmVhZGNydW1iLWl0ZW0tZm9udC1zaXplICFkZWZhdWx0O1xuJGJyZWFkY3J1bWItZGl2aWRlci1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICAgICAkZ2xvYmFsLW11dGVkLWNvbG9yICFkZWZhdWx0O1xuXG4kYnJlYWRjcnVtYi1jdXN0b20tZGl2aWRlci13aWR0aDogICAgICAgICAgICAgICAgICAgIDE1cHggIWRlZmF1bHQ7XG5cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICBDb21wb25lbnQ6IEJyZWFkY3J1bWJzXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLypcbiAqIFJlc2V0IGxpc3RcbiAqL1xuXG4uZmUtYnJlYWRjcnVtYiB7XG4gICAgcGFkZGluZzogMDtcbiAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2stYnJlYWRjcnVtYikpIHtAaW5jbHVkZSBob29rLWJyZWFkY3J1bWIoKTt9XG59XG5cbi5mZS1icmVhZGNydW1iID4gKiB7IGRpc3BsYXk6IGNvbnRlbnRzOyB9XG5cbi8qIEl0ZW1zXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLmZlLWJyZWFkY3J1bWIgPiAqID4gKiB7XG4gICAgZm9udC1zaXplOiAkYnJlYWRjcnVtYi1pdGVtLWZvbnQtc2l6ZTtcbiAgICBjb2xvcjogJGJyZWFkY3J1bWItaXRlbS1jb2xvcjtcbiAgICBsaW5lLWhlaWdodDogMS4yO1xuICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1icmVhZGNydW1iLWl0ZW0pKSB7QGluY2x1ZGUgaG9vay1icmVhZGNydW1iLWl0ZW0oKTt9XG59XG5cbi8qIEhvdmVyICovXG4uZmUtYnJlYWRjcnVtYiA+ICogPiA6aG92ZXIge1xuICAgIGNvbG9yOiAkYnJlYWRjcnVtYi1pdGVtLWhvdmVyLWNvbG9yO1xuICAgIHRleHQtZGVjb3JhdGlvbjogJGJyZWFkY3J1bWItaXRlbS1ob3Zlci10ZXh0LWRlY29yYXRpb247XG4gICAgQGlmKG1peGluLWV4aXN0cyhob29rLWJyZWFkY3J1bWItaXRlbS1ob3ZlcikpIHtAaW5jbHVkZSBob29rLWJyZWFkY3J1bWItaXRlbS1ob3ZlcigpO31cbn1cblxuLyogRGlzYWJsZWQgKi9cbi5mZS1icmVhZGNydW1iID4gLmZlLWRpc2FibGVkID4gKiB7XG4gICAgQGlmKG1peGluLWV4aXN0cyhob29rLWJyZWFkY3J1bWItaXRlbS1kaXNhYmxlZCkpIHtAaW5jbHVkZSBob29rLWJyZWFkY3J1bWItaXRlbS1kaXNhYmxlZCgpO31cbn1cblxuLyogQWN0aXZlICovXG4uZmUtYnJlYWRjcnVtYiA+IDpsYXN0LWNoaWxkID4gc3Bhbixcbi5mZS1icmVhZGNydW1iID4gOmxhc3QtY2hpbGQgPiBhOm5vdChbaHJlZl0pIHtcbiAgICBjb2xvcjogJGJyZWFkY3J1bWItaXRlbS1hY3RpdmUtY29sb3I7XG4gICAgQGlmKG1peGluLWV4aXN0cyhob29rLWJyZWFkY3J1bWItaXRlbS1hY3RpdmUpKSB7QGluY2x1ZGUgaG9vay1icmVhZGNydW1iLWl0ZW0tYWN0aXZlKCk7fVxufVxuXG4vKlxuICogRGl2aWRlclxuICogYG50aC1jaGlsZGAgbWFrZXMgaXQgYWxzbyB3b3JrIHdpdGhvdXQgSlMgaWYgaXQncyBvbmx5IG9uZSByb3dcbiAqL1xuXG4uZmUtYnJlYWRjcnVtYiA+IDpudGgtY2hpbGQobisyKTpub3QoLmZlLWZpcnN0LWNvbHVtbik6OmJlZm9yZSB7XG4gICAgY29udGVudDogJGJyZWFkY3J1bWItZGl2aWRlcjtcbiAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgICBhbGlnbi1pdGVtczogYmFzZWxpbmU7XG4gICAgbWFyZ2luOiAwICRicmVhZGNydW1iLWRpdmlkZXItbWFyZ2luLWhvcml6b250YWw7XG4gICAgZm9udC1zaXplOiAkYnJlYWRjcnVtYi1kaXZpZGVyLWZvbnQtc2l6ZTtcbiAgICBsaW5lLWhlaWdodDogY2FsYygjeyRicmVhZGNydW1iLWRpdmlkZXItZm9udC1zaXplfSAvIDIpO1xuICAgIGNvbG9yOiAkYnJlYWRjcnVtYi1kaXZpZGVyLWNvbG9yO1xuICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1icmVhZGNydW1iLWRpdmlkZXIpKSB7QGluY2x1ZGUgaG9vay1icmVhZGNydW1iLWRpdmlkZXIoKTt9XG59XG5cbi8qXG4gKiBDdXN0b20gU3ZnIERpdmlkZXJcbiAqL1xuXG4vKiByZXNldCBkZWZhdWx0IGRpdmlkZXIgKi9cbi5mZS1icmVhZGNydW1iLmZlLWJyZWFkY3J1bWItY3VzdG9tID4gOm50aC1jaGlsZChuKzIpOm5vdCguZmUtZmlyc3QtY29sdW1uKTo6YmVmb3JlIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICAgIGNvbnRlbnQ6IG5vbmU7XG59XG5cbi5mZS1icmVhZGNydW1iLmZlLWJyZWFkY3J1bWItY3VzdG9tIHN2ZyB7XG4gICAgbWFyZ2luOiAwICRicmVhZGNydW1iLWRpdmlkZXItbWFyZ2luLWhvcml6b250YWw7XG4gICAgd2lkdGg6ICRicmVhZGNydW1iLWN1c3RvbS1kaXZpZGVyLXdpZHRoO1xuICAgIGhlaWdodDogYXV0bztcbiAgICBvYmplY3QtZml0OiBjb250YWluO1xuICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1icmVhZGNydW1iLWRpdmlkZXItY3VzdG9tKSkge0BpbmNsdWRlIGhvb2stYnJlYWRjcnVtYi1kaXZpZGVyLWN1c3RvbSgpO31cbn1cblxuLyogaGlkZSBsYXN0IHN2ZyAoaWYgdGhlcmUgaXMgYWNjaWRlbnRhbGx5KSAqL1xuLmZlLWJyZWFkY3J1bWIgPiAqOmxhc3QtY2hpbGQgc3ZnIHtcbiAgICBkaXNwbGF5OiBub25lO1xufSIsIi8vXG4vLyBDb21wb25lbnQ6ICAgICAgIFZhcmlhYmxlc1xuLy8gRGVzY3JpcHRpb246ICAgICBEZWZpbmVzIGNvbW1vbiB2YWx1ZXMgd2hpY2ggYXJlIHVzZWQgYWNyb3NzIGFsbCBjb21wb25lbnRzLFxuLy8gICAgICAgICAgICAgICAgICBEbyBub3QgY29tcGFyZSB3aXRoIHZhcmlhYmxlcy5zY3NzLFxuLy8gICAgICAgICAgICAgICAgICB2YXJpYWJsZXMuc2NzcyBjb3BpZWQgdG8gdmFyaWFibGVzLXRoZW1lLnNjc3MsIGJlY2F1c2UgbXVzdCBoYXZlIGFsbCBzY3NzIHZhcmlhYmxlcyB0b29cbi8vXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuLy8gR2xvYmFsIHZhcmlhYmxlc1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbi8vXG4vLyBUeXBvZ3JhcGh5XG4vL1xuJGdsb2JhbC1mb250LWZhbWlseTogICAgICAgICAgICAgICAgICAgICAgICAgICAgIC1hcHBsZS1zeXN0ZW0sIEJsaW5rTWFjU3lzdGVtRm9udCwgXCJTZWdvZSBVSVwiLCBSb2JvdG8sIFwiSGVsdmV0aWNhIE5ldWVcIiwgQXJpYWwsIFwiTm90byBTYW5zXCIsIHNhbnMtc2VyaWYsIFwiQXBwbGUgQ29sb3IgRW1vamlcIiwgXCJTZWdvZSBVSSBFbW9qaVwiLCBcIlNlZ29lIFVJIFN5bWJvbFwiLCBcIk5vdG8gQ29sb3IgRW1vamlcIiAhZGVmYXVsdDtcbiRnbG9iYWwtZm9udC1zaXplOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAyMHB4ICFkZWZhdWx0O1xuJGdsb2JhbC1saW5lLWhlaWdodDogICAgICAgICAgICAgICAgICAgICAgICAgICAgIDEuNSAhZGVmYXVsdDsgICAgICAvLyAzMHB4XG5cbiRnbG9iYWwtbWVkaXVtLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgICAgICAgICBjYWxjKCN7JGdsb2JhbC1mb250LXNpemV9ICogMS4yNSkgIWRlZmF1bHQ7ICAvLyAyNXB4XG4kZ2xvYmFsLXNtYWxsLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgICAgICAgICAgY2FsYygjeyRnbG9iYWwtZm9udC1zaXplfSAqIDAuOCkgIWRlZmF1bHQ7ICAgLy8gMTZweFxuXG5cbi8vXG4vLyBDb2xvcnNcbi8vXG4kZ2xvYmFsLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIzFhMWExYSAhZGVmYXVsdDtcbiRnbG9iYWwtZW1waGFzaXMtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgICAjNjY2ICFkZWZhdWx0O1xuJGdsb2JhbC1tdXRlZC1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICAgICAgICM5OTkgIWRlZmF1bHQ7XG5cbiRnbG9iYWwtbGluay1jb2xvcjogIzA0MmEyNiAhZGVmYXVsdDtcbiRnbG9iYWwtbGluay1ob3Zlci1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICAjMjc0NDQyICFkZWZhdWx0O1xuXG5cbiRnbG9iYWwtaW52ZXJzZS1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICAgICAjZmZmICFkZWZhdWx0O1xuXG4vL1xuLy8gQmFja2dyb3VuZHNcbi8vXG4kZ2xvYmFsLWJhY2tncm91bmQ6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcblxuJGdsb2JhbC1tdXRlZC1iYWNrZ3JvdW5kOiAgICAgICAgICAgICAgICAgICAgICAgICNmOGY4ZjggIWRlZmF1bHQ7XG4kZ2xvYmFsLXByaW1hcnktYmFja2dyb3VuZDogICAgICAgICAgICAgICAgICAgICAgIzAwOTg4QyAhZGVmYXVsdDtcbiRnbG9iYWwtc2Vjb25kYXJ5LWJhY2tncm91bmQ6ICAgICAgICAgICAgICAgICAgICAjQzM5MjJFICFkZWZhdWx0O1xuXG4kZ2xvYmFsLXN1Y2Nlc3MtYmFja2dyb3VuZDogICAgICAgICAgICAgICAgICAgICAgIzE2Yzc4NSAhZGVmYXVsdDtcbiRnbG9iYWwtd2FybmluZy1iYWNrZ3JvdW5kOiAgICAgICAgICAgICAgICAgICAgICAjZmFhMDVhICFkZWZhdWx0O1xuJGdsb2JhbC1kYW5nZXItYmFja2dyb3VuZDogICAgICAgICAgICAgICAgICAgICAgICNmMDUwNmUgIWRlZmF1bHQ7XG5cblxuLy9cbi8vIEJvcmRlcnNcbi8vXG4kZ2xvYmFsLWJvcmRlci13aWR0aDogICAgICAgICAgICAgICAgICAgICAgICAgICAgMXB4ICFkZWZhdWx0O1xuJGdsb2JhbC1ib3JkZXItY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICMwMDAwMDAgIWRlZmF1bHQ7XG5cblxuLy9cbi8vIEJveC1TaGFkb3dzXG4vL1xuJGdsb2JhbC1zbWFsbC1ib3gtc2hhZG93OiAgICAgICAgICAgICAgICAgICAgICAgIDAgMnB4IDhweCByZ2JhKDAsMCwwLDAuMDgpICFkZWZhdWx0O1xuJGdsb2JhbC1tZWRpdW0tYm94LXNoYWRvdzogICAgICAgICAgICAgICAgICAgICAgIDAgNXB4IDE1cHggcmdiYSgwLDAsMCwwLjA4KSAhZGVmYXVsdDtcbiRnbG9iYWwtbGFyZ2UtYm94LXNoYWRvdzogICAgICAgICAgICAgICAgICAgICAgICAwIDE0cHggMjVweCByZ2JhKDAsMCwwLDAuMTYpICFkZWZhdWx0O1xuJGdsb2JhbC14bGFyZ2UtYm94LXNoYWRvdzogICAgICAgICAgICAgICAgICAgICAgIDAgMjhweCA1MHB4IHJnYmEoMCwwLDAsMC4xNikgIWRlZmF1bHQ7XG5cbi8vXG4vLyBTcGFjaW5nc1xuLy9cblxuLy8gVXNlZCBpbiBtYXJnaW4sIHNlY3Rpb24sIGxpc3RcbiRnbG9iYWwtbWFyZ2luOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAyMHB4ICFkZWZhdWx0O1xuXG4vLyBVc2VkIGluIGdyaWQsIGNvbHVtbiwgY29udGFpbmVyLCBhbGlnbiwgY2FyZCwgcGFkZGluZ1xuJGdsb2JhbC1ndXR0ZXI6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDMwcHggIWRlZmF1bHQ7XG4kZ2xvYmFsLXNtYWxsLWd1dHRlcjogICAgICAgICAgICAgICAgICAgICAgICAgICAgMTVweCAhZGVmYXVsdDtcbiRnbG9iYWwtbWVkaXVtLWd1dHRlcjogICAgICAgICAgICAgICAgICAgICAgICAgICA0MHB4ICFkZWZhdWx0O1xuJGdsb2JhbC1sYXJnZS1ndXR0ZXI6ICAgICAgICAgICAgICAgICAgICAgICAgICAgIDcwcHggIWRlZmF1bHQ7XG5cbi8vXG4vLyBDb250cm9sc1xuLy9cblxuJGdsb2JhbC1jb250cm9sLXNtYWxsLWhlaWdodDogICAgICAgICAgICAgICAgICAgIDMwcHggIWRlZmF1bHQ7XG4kZ2xvYmFsLWNvbnRyb2wtaGVpZ2h0OiAgICAgICAgICAgICAgICAgICAgICAgICAgNDBweCAhZGVmYXVsdDtcbiRnbG9iYWwtY29udHJvbC1sYXJnZS1oZWlnaHQ6ICAgICAgICAgICAgICAgICAgICA1NXB4ICFkZWZhdWx0O1xuXG5cbi8vXG4vLyBaLWluZGV4XG4vL1xuJGdsb2JhbC16LWluZGV4OiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDEwMDAgIWRlZmF1bHQ7XG4iLCIvLyBOYW1lOiAgICAgICAgICAgIEJ1dHRvblxuLy8gRGVzY3JpcHRpb246ICAgICBTdHlsZXMgZm9yIGJ1dHRvbnNcbi8vXG4vLyBDb21wb25lbnQ6ICAgICAgIGBmZS1idXR0b25gXG4vL1xuLy8gTW9kaWZpZXJzOiAgICAgICBgZmUtYnV0dG9uLWRlZmF1bHQgICAgICBmZS1idXR0b24tZGVmYXVsdC1ib3JkZXJlZCAgICAgIGZlLWJ1dHRvbi1kZWZhdWx0LXNoYWRvd2VkYFxuLy8gICAgICAgICAgICAgICAgICBgZmUtYnV0dG9uLXByaW1hcnkgICAgICBmZS1idXR0b24tcHJpbWFyeS1ib3JkZXJlZCAgICAgIGZlLWJ1dHRvbi1wcmltYXJ5LXNoYWRvd2VkYFxuLy8gICAgICAgICAgICAgICAgICBgZmUtYnV0dG9uLXNlY29uZGFyeSAgICBmZS1idXR0b24tc2Vjb25kYXJ5LWJvcmRlcmVkICAgIGZlLWJ1dHRvbi1zZWNvbmRhcnktc2hhZG93ZWRgXG4vLyAgICAgICAgICAgICAgICAgIGBmZS1idXR0b24taW1nYFxuLy8gICAgICAgICAgICAgICAgICBgZmUtYnV0dG9uLXVuZGVybGluZWAgICByZWNvbW1lbmRlZCB0byB1c2Ugd2l0aCBmZS1idXR0b24tdGV4dFxuLy8gICAgICAgICAgICAgICAgICBgZmUtYnV0dG9uLWRhbmdlciAgICAgICBmZS1idXR0b24tZGFuZ2VyLXNoYWRvd2VkYFxuLy8gICAgICAgICAgICAgICAgICBgZmUtYnV0dG9uLXRleHRgXG4vLyAgICAgICAgICAgICAgICAgIGBmZS1idXR0b24tbGlua2Bcbi8vICAgICAgICAgICAgICAgICAgYGZlLWJ1dHRvbi1zbWFsbGBcbi8vICAgICAgICAgICAgICAgICAgYGZlLWJ1dHRvbi1sYXJnZWBcbi8vXG4vL1xuLy8gU3RhdGVzOiAgICAgICAgICBgZmUtYWN0aXZlYFxuLy9cbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5cbi8vIFZhcmlhYmxlc1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbiRidXR0b24tbGluZS1oZWlnaHQ6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkZ2xvYmFsLWNvbnRyb2wtaGVpZ2h0ICFkZWZhdWx0O1xuJGJ1dHRvbi1zbWFsbC1saW5lLWhlaWdodDogICAgICAgICAgICAgICAgICAgICAgICRnbG9iYWwtY29udHJvbC1zbWFsbC1oZWlnaHQgIWRlZmF1bHQ7XG4kYnV0dG9uLWxhcmdlLWxpbmUtaGVpZ2h0OiAgICAgICAgICAgICAgICAgICAgICAgJGdsb2JhbC1jb250cm9sLWxhcmdlLWhlaWdodCAhZGVmYXVsdDtcblxuJGJ1dHRvbi1mb250LXNpemU6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICRnbG9iYWwtZm9udC1zaXplICFkZWZhdWx0O1xuJGJ1dHRvbi1zbWFsbC1mb250LXNpemU6ICAgICAgICAgICAgICAgICAgICAgICAgICRnbG9iYWwtc21hbGwtZm9udC1zaXplICFkZWZhdWx0O1xuJGJ1dHRvbi1sYXJnZS1mb250LXNpemU6ICAgICAgICAgICAgICAgICAgICAgICAgICRnbG9iYWwtbWVkaXVtLWZvbnQtc2l6ZSAhZGVmYXVsdDtcblxuJGJ1dHRvbi1wYWRkaW5nLWhvcml6b250YWw6ICAgICAgICAgICAgICAgICAgICAgICRnbG9iYWwtZ3V0dGVyICFkZWZhdWx0O1xuJGJ1dHRvbi1zbWFsbC1wYWRkaW5nLWhvcml6b250YWw6ICAgICAgICAgICAgICAgICRnbG9iYWwtc21hbGwtZ3V0dGVyICFkZWZhdWx0O1xuJGJ1dHRvbi1sYXJnZS1wYWRkaW5nLWhvcml6b250YWw6ICAgICAgICAgICAgICAgICRnbG9iYWwtbWVkaXVtLWd1dHRlciAhZGVmYXVsdDtcblxuJGJ1dHRvbi1kZWZhdWx0LWJhY2tncm91bmQ6ICAgICAgICAgICAgICAgICAgICAgICRnbG9iYWwtbXV0ZWQtYmFja2dyb3VuZCAhZGVmYXVsdDtcbiRidXR0b24tZGVmYXVsdC1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICAgICAkZ2xvYmFsLWVtcGhhc2lzLWNvbG9yICFkZWZhdWx0O1xuJGJ1dHRvbi1kZWZhdWx0LWhvdmVyLWJhY2tncm91bmQ6ICAgICAgICAgICAgICAgIGRhcmtlbigkYnV0dG9uLWRlZmF1bHQtYmFja2dyb3VuZCwgNSUpICFkZWZhdWx0O1xuJGJ1dHRvbi1kZWZhdWx0LWhvdmVyLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICRnbG9iYWwtZW1waGFzaXMtY29sb3IgIWRlZmF1bHQ7XG4kYnV0dG9uLWRlZmF1bHQtYWN0aXZlLWJhY2tncm91bmQ6ICAgICAgICAgICAgICAgZGFya2VuKCRidXR0b24tZGVmYXVsdC1iYWNrZ3JvdW5kLCAxMCUpICFkZWZhdWx0O1xuJGJ1dHRvbi1kZWZhdWx0LWFjdGl2ZS1jb2xvcjogICAgICAgICAgICAgICAgICAgICRnbG9iYWwtZW1waGFzaXMtY29sb3IgIWRlZmF1bHQ7XG5cbiRidXR0b24tcHJpbWFyeS1iYWNrZ3JvdW5kOiAgICAgICAgICAgICAgICAgICAgICAkZ2xvYmFsLXByaW1hcnktYmFja2dyb3VuZCAhZGVmYXVsdDtcbiRidXR0b24tcHJpbWFyeS1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICAgICAkZ2xvYmFsLWludmVyc2UtY29sb3IgIWRlZmF1bHQ7XG4kYnV0dG9uLXByaW1hcnktaG92ZXItYmFja2dyb3VuZDogICAgICAgICAgICAgICAgZGFya2VuKCRidXR0b24tcHJpbWFyeS1iYWNrZ3JvdW5kLCA1JSkgIWRlZmF1bHQ7XG4kYnV0dG9uLXByaW1hcnktaG92ZXItY29sb3I6ICAgICAgICAgICAgICAgICAgICAgJGdsb2JhbC1pbnZlcnNlLWNvbG9yICFkZWZhdWx0O1xuJGJ1dHRvbi1wcmltYXJ5LWFjdGl2ZS1iYWNrZ3JvdW5kOiAgICAgICAgICAgICAgIGRhcmtlbigkYnV0dG9uLXByaW1hcnktYmFja2dyb3VuZCwgMTAlKSAhZGVmYXVsdDtcbiRidXR0b24tcHJpbWFyeS1hY3RpdmUtY29sb3I6ICAgICAgICAgICAgICAgICAgICAkZ2xvYmFsLWludmVyc2UtY29sb3IgIWRlZmF1bHQ7XG5cbiRidXR0b24tc2Vjb25kYXJ5LWJhY2tncm91bmQ6ICAgICAgICAgICAgICAgICAgICAkZ2xvYmFsLXNlY29uZGFyeS1iYWNrZ3JvdW5kICFkZWZhdWx0O1xuJGJ1dHRvbi1zZWNvbmRhcnktY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgICRnbG9iYWwtaW52ZXJzZS1jb2xvciAhZGVmYXVsdDtcbiRidXR0b24tc2Vjb25kYXJ5LWhvdmVyLWJhY2tncm91bmQ6ICAgICAgICAgICAgICBkYXJrZW4oJGJ1dHRvbi1zZWNvbmRhcnktYmFja2dyb3VuZCwgNSUpICFkZWZhdWx0O1xuJGJ1dHRvbi1zZWNvbmRhcnktaG92ZXItY29sb3I6ICAgICAgICAgICAgICAgICAgICRnbG9iYWwtaW52ZXJzZS1jb2xvciAhZGVmYXVsdDtcbiRidXR0b24tc2Vjb25kYXJ5LWFjdGl2ZS1iYWNrZ3JvdW5kOiAgICAgICAgICAgICBkYXJrZW4oJGJ1dHRvbi1zZWNvbmRhcnktYmFja2dyb3VuZCwgMTAlKSAhZGVmYXVsdDtcbiRidXR0b24tc2Vjb25kYXJ5LWFjdGl2ZS1jb2xvcjogICAgICAgICAgICAgICAgICAkZ2xvYmFsLWludmVyc2UtY29sb3IgIWRlZmF1bHQ7XG5cbiRidXR0b24taW1hZ2Utd2lkdGg6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAzMHB4ICFkZWZhdWx0O1xuJGJ1dHRvbi1pbWFnZS1oZWlnaHQ6ICAgICAgICAgICAgICAgICAgICAgICAgICAgIDI1cHggIWRlZmF1bHQ7XG4kYnV0dG9uLWltYWdlLWdhcDogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMTVweCAhZGVmYXVsdDtcblxuJGJ1dHRvbi11bmRlcmxpbmUtbGluZS13aWR0aDogICAgICAgICAgICAgICAgICAgIDc1JSAhZGVmYXVsdDtcbiRidXR0b24tdW5kZXJsaW5lLWxpbmUtaGVpZ2h0OiAgICAgICAgICAgICAgICAgICAycHggIWRlZmF1bHQ7XG4kYnV0dG9uLXVuZGVybGluZS1saW5lLWJhY2tncm91bmQ6ICAgICAgICAgICAgICAgJGdsb2JhbC1wcmltYXJ5LWJhY2tncm91bmQgIWRlZmF1bHQ7XG4kYnV0dG9uLXVuZGVybGluZS1saW5lLXBvc2l0aW9uOiAgICAgICAgICAgICAgICAgLTJweCAhZGVmYXVsdDtcblxuJGJ1dHRvbi1kYW5nZXItYmFja2dyb3VuZDogICAgICAgICAgICAgICAgICAgICAgICRnbG9iYWwtZGFuZ2VyLWJhY2tncm91bmQgIWRlZmF1bHQ7XG4kYnV0dG9uLWRhbmdlci1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICAgICAgJGdsb2JhbC1pbnZlcnNlLWNvbG9yICFkZWZhdWx0O1xuJGJ1dHRvbi1kYW5nZXItaG92ZXItYmFja2dyb3VuZDogICAgICAgICAgICAgICAgIGRhcmtlbigkYnV0dG9uLWRhbmdlci1iYWNrZ3JvdW5kLCA1JSkgIWRlZmF1bHQ7XG4kYnV0dG9uLWRhbmdlci1ob3Zlci1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgJGdsb2JhbC1pbnZlcnNlLWNvbG9yICFkZWZhdWx0O1xuJGJ1dHRvbi1kYW5nZXItYWN0aXZlLWJhY2tncm91bmQ6ICAgICAgICAgICAgICAgIGRhcmtlbigkYnV0dG9uLWRhbmdlci1iYWNrZ3JvdW5kLCAxMCUpICFkZWZhdWx0O1xuJGJ1dHRvbi1kYW5nZXItYWN0aXZlLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICRnbG9iYWwtaW52ZXJzZS1jb2xvciAhZGVmYXVsdDtcblxuJGJ1dHRvbi1kaXNhYmxlZC1iYWNrZ3JvdW5kOiAgICAgICAgICAgICAgICAgICAgICRnbG9iYWwtbXV0ZWQtYmFja2dyb3VuZCAhZGVmYXVsdDtcbiRidXR0b24tZGlzYWJsZWQtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgICAkZ2xvYmFsLW11dGVkLWNvbG9yICFkZWZhdWx0O1xuXG4kYnV0dG9uLXRleHQtbGluZS1oZWlnaHQ6ICAgICAgICAgICAgICAgICAgICAgICAgJGdsb2JhbC1saW5lLWhlaWdodCAhZGVmYXVsdDtcbiRidXR0b24tdGV4dC1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkZ2xvYmFsLWVtcGhhc2lzLWNvbG9yICFkZWZhdWx0O1xuJGJ1dHRvbi10ZXh0LWhvdmVyLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgICRnbG9iYWwtbXV0ZWQtY29sb3IgIWRlZmF1bHQ7XG4kYnV0dG9uLXRleHQtZGlzYWJsZWQtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgJGdsb2JhbC1tdXRlZC1jb2xvciAhZGVmYXVsdDtcbiRidXR0b24tdGV4dC10cmFuc2Zvcm06ICAgICAgICAgICAgICAgICAgICAgICAgICBub25lICFkZWZhdWx0O1xuXG4kYnV0dG9uLWxpbmstbGluZS1oZWlnaHQ6ICAgICAgICAgICAgICAgICAgICAgICAgJGdsb2JhbC1saW5lLWhlaWdodCAhZGVmYXVsdDtcbiRidXR0b24tbGluay1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkZ2xvYmFsLWVtcGhhc2lzLWNvbG9yICFkZWZhdWx0O1xuJGJ1dHRvbi1saW5rLWhvdmVyLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgICRnbG9iYWwtbXV0ZWQtY29sb3IgIWRlZmF1bHQ7XG4kYnV0dG9uLWxpbmstaG92ZXItdGV4dC1kZWNvcmF0aW9uOiAgICAgICAgICAgICAgbm9uZSAhZGVmYXVsdDtcbiRidXR0b24tbGluay1kaXNhYmxlZC1jb2xvcjogICAgICAgICAgICAgICAgICAgICAkZ2xvYmFsLW11dGVkLWNvbG9yICFkZWZhdWx0O1xuXG4kYnV0dG9uLWJvcmRlci13aWR0aDogICAgICAgICAgICAgICAgICAgICAgICAgICAgJGdsb2JhbC1ib3JkZXItd2lkdGggIWRlZmF1bHQ7XG4kYnV0dG9uLWJvcmRlci1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICAgICAgJGJ1dHRvbi1kZWZhdWx0LWNvbG9yICFkZWZhdWx0O1xuJGJ1dHRvbi1ib3JkZXItaG92ZXItY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICRidXR0b24tZGVmYXVsdC1ob3Zlci1jb2xvciAhZGVmYXVsdDtcbiRidXR0b24tYm9yZGVyLXJhZGl1czogICAgICAgICAgICAgICAgICAgICAgICAgICAwICFkZWZhdWx0O1xuXG4kYnV0dG9uLXByaW1hcnktYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgJGJ1dHRvbi1ib3JkZXItY29sb3IgIWRlZmF1bHQ7XG4kYnV0dG9uLXByaW1hcnktYm9yZGVyLWhvdmVyLWNvbG9yOiAgICAgICAgICAgICAgJGJ1dHRvbi1kZWZhdWx0LWhvdmVyLWNvbG9yICFkZWZhdWx0O1xuXG4kYnV0dG9uLXNlY29uZGFyeS1ib3JkZXItY29sb3I6ICAgICAgICAgICAgICAgICAgJGJ1dHRvbi1ib3JkZXItY29sb3IgIWRlZmF1bHQ7XG4kYnV0dG9uLXNlY29uZGFyeS1ib3JkZXItaG92ZXItY29sb3I6ICAgICAgICAgICAgJGJ1dHRvbi1kZWZhdWx0LWhvdmVyLWNvbG9yICFkZWZhdWx0O1xuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgIENvbXBvbmVudDogQnV0dG9uXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLmZlLWJ1dHRvbiB7XG4gICAgbWFyZ2luOiAwO1xuICAgIGJvcmRlcjogbm9uZTtcbiAgICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgICBmb250OiBpbmhlcml0O1xuICAgIGNvbG9yOiBpbmhlcml0O1xuICAgIHRleHQtdHJhbnNmb3JtOiAkYnV0dG9uLXRleHQtdHJhbnNmb3JtO1xuICAgIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbiAgICBib3JkZXItcmFkaXVzOiAkYnV0dG9uLWJvcmRlci1yYWRpdXM7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgcGFkZGluZzogMCAkYnV0dG9uLXBhZGRpbmctaG9yaXpvbnRhbDtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgIGZvbnQtc2l6ZTogJGJ1dHRvbi1mb250LXNpemU7XG4gICAgbGluZS1oZWlnaHQ6ICRidXR0b24tbGluZS1oZWlnaHQ7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICB0cmFuc2l0aW9uOiAuMnMgYWxsO1xuICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1idXR0b24pKSB7QGluY2x1ZGUgaG9vay1idXR0b24oKTt9XG59XG5cbi5mZS1idXR0b246bm90KDpkaXNhYmxlZCkgeyBjdXJzb3I6IHBvaW50ZXI7IH1cblxuLypcbiAqIFJlbW92ZSB0aGUgaW5uZXIgYm9yZGVyIGFuZCBwYWRkaW5nIGluIEZpcmVmb3guXG4gKi9cblxuLmZlLWJ1dHRvbjo6LW1vei1mb2N1cy1pbm5lciB7XG4gICAgYm9yZGVyOiAwO1xuICAgIHBhZGRpbmc6IDA7XG59XG5cbi8qIEhvdmVyICovXG4uZmUtYnV0dG9uOmhvdmVyIHtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgQGlmKG1peGluLWV4aXN0cyhob29rLWJ1dHRvbi1ob3ZlcikpIHtAaW5jbHVkZSBob29rLWJ1dHRvbi1ob3ZlcigpO31cbn1cblxuXG4vKiBTdHlsZSBtb2RpZmllcnNcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuJWZlLWJ1dHRvbi1ib3JkZXJlZHtcbiAgICBib3JkZXI6ICRidXR0b24tYm9yZGVyLXdpZHRoIHNvbGlkICRidXR0b24tYm9yZGVyLWNvbG9yO1xuXG4gICAgJjpob3ZlciB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogJGJ1dHRvbi1ib3JkZXItaG92ZXItY29sb3I7XG4gICAgfVxufVxuXG4vKlxuICogRGVmYXVsdFxuICovXG5cbi5mZS1idXR0b24tZGVmYXVsdCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGJ1dHRvbi1kZWZhdWx0LWJhY2tncm91bmQ7XG4gICAgY29sb3I6ICRidXR0b24tZGVmYXVsdC1jb2xvcjtcbiAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2stYnV0dG9uLWRlZmF1bHQpKSB7XG4gICAgICAgIEBpbmNsdWRlIGhvb2stYnV0dG9uLWRlZmF1bHQoKTtcbiAgICB9XG5cbiAgICAmLWJvcmRlcmVke1xuICAgICAgICBAZXh0ZW5kICVmZS1idXR0b24tYm9yZGVyZWQ7XG4gICAgfVxuXG4gICAgJi1zaGFkb3dlZCB7XG4gICAgICAgIGJveC1zaGFkb3c6IHJnYmEoJGJ1dHRvbi1kZWZhdWx0LWNvbG9yLCAwLjIpIDAgN3B4IDI5cHggMDtcbiAgICB9XG59XG5cbi8qIEhvdmVyICovXG4uZmUtYnV0dG9uLWRlZmF1bHQ6aG92ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRidXR0b24tZGVmYXVsdC1ob3Zlci1iYWNrZ3JvdW5kO1xuICAgIGNvbG9yOiAkYnV0dG9uLWRlZmF1bHQtaG92ZXItY29sb3I7XG4gICAgQGlmKG1peGluLWV4aXN0cyhob29rLWJ1dHRvbi1kZWZhdWx0LWhvdmVyKSkge0BpbmNsdWRlIGhvb2stYnV0dG9uLWRlZmF1bHQtaG92ZXIoKTt9XG59XG5cbi8qIE9uQ2xpY2sgKyBBY3RpdmUgKi9cbi5mZS1idXR0b24tZGVmYXVsdDphY3RpdmUsXG4uZmUtYnV0dG9uLWRlZmF1bHQuZmUtYWN0aXZlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYnV0dG9uLWRlZmF1bHQtYWN0aXZlLWJhY2tncm91bmQ7XG4gICAgY29sb3I6ICRidXR0b24tZGVmYXVsdC1hY3RpdmUtY29sb3I7XG4gICAgQGlmKG1peGluLWV4aXN0cyhob29rLWJ1dHRvbi1kZWZhdWx0LWFjdGl2ZSkpIHtAaW5jbHVkZSBob29rLWJ1dHRvbi1kZWZhdWx0LWFjdGl2ZSgpO31cbn1cblxuLypcbiAqIFByaW1hcnlcbiAqL1xuXG4uZmUtYnV0dG9uLXByaW1hcnkge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRidXR0b24tcHJpbWFyeS1iYWNrZ3JvdW5kO1xuICAgIGNvbG9yOiAkYnV0dG9uLXByaW1hcnktY29sb3I7XG4gICAgQGlmKG1peGluLWV4aXN0cyhob29rLWJ1dHRvbi1wcmltYXJ5KSkge0BpbmNsdWRlIGhvb2stYnV0dG9uLXByaW1hcnkoKTt9XG5cbiAgICAmLWJvcmRlcmVke1xuICAgICAgICBAZXh0ZW5kICVmZS1idXR0b24tYm9yZGVyZWQ7XG5cbiAgICAgICAgYm9yZGVyLWNvbG9yOiAkYnV0dG9uLXByaW1hcnktYm9yZGVyLWNvbG9yO1xuXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiAkYnV0dG9uLXByaW1hcnktYm9yZGVyLWhvdmVyLWNvbG9yO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJi1zaGFkb3dlZCB7XG4gICAgICAgIGJveC1zaGFkb3c6IHJnYmEoJGJ1dHRvbi1wcmltYXJ5LWJhY2tncm91bmQsIDAuMikgMCA3cHggMjlweCAwO1xuICAgIH1cbn1cblxuLyogSG92ZXIgKi9cbi5mZS1idXR0b24tcHJpbWFyeTpob3ZlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGJ1dHRvbi1wcmltYXJ5LWhvdmVyLWJhY2tncm91bmQ7XG4gICAgY29sb3I6ICRidXR0b24tcHJpbWFyeS1ob3Zlci1jb2xvcjtcbiAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2stYnV0dG9uLXByaW1hcnktaG92ZXIpKSB7QGluY2x1ZGUgaG9vay1idXR0b24tcHJpbWFyeS1ob3ZlcigpO31cbn1cblxuLyogT25DbGljayArIEFjdGl2ZSAqL1xuLmZlLWJ1dHRvbi1wcmltYXJ5OmFjdGl2ZSxcbi5mZS1idXR0b24tcHJpbWFyeS5mZS1hY3RpdmUge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRidXR0b24tcHJpbWFyeS1hY3RpdmUtYmFja2dyb3VuZDtcbiAgICBjb2xvcjogJGJ1dHRvbi1wcmltYXJ5LWFjdGl2ZS1jb2xvcjtcbiAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2stYnV0dG9uLXByaW1hcnktYWN0aXZlKSkge0BpbmNsdWRlIGhvb2stYnV0dG9uLXByaW1hcnktYWN0aXZlKCk7fVxufVxuXG4vKlxuICogU2Vjb25kYXJ5XG4gKi9cblxuLmZlLWJ1dHRvbi1zZWNvbmRhcnkge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRidXR0b24tc2Vjb25kYXJ5LWJhY2tncm91bmQ7XG4gICAgY29sb3I6ICRidXR0b24tc2Vjb25kYXJ5LWNvbG9yO1xuICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1idXR0b24tc2Vjb25kYXJ5KSkge0BpbmNsdWRlIGhvb2stYnV0dG9uLXNlY29uZGFyeSgpO31cblxuICAgICYtYm9yZGVyZWR7XG4gICAgICAgIEBleHRlbmQgJWZlLWJ1dHRvbi1ib3JkZXJlZDtcblxuICAgICAgICBib3JkZXItY29sb3I6ICRidXR0b24tc2Vjb25kYXJ5LWJvcmRlci1jb2xvcjtcblxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIGJvcmRlci1jb2xvcjogJGJ1dHRvbi1zZWNvbmRhcnktYm9yZGVyLWhvdmVyLWNvbG9yO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJi1zaGFkb3dlZCB7XG4gICAgICAgIGJveC1zaGFkb3c6IHJnYmEoJGJ1dHRvbi1zZWNvbmRhcnktYmFja2dyb3VuZCwgMC4yKSAwIDdweCAyOXB4IDA7XG4gICAgfVxufVxuXG4vKiBIb3ZlciAqL1xuLmZlLWJ1dHRvbi1zZWNvbmRhcnk6aG92ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRidXR0b24tc2Vjb25kYXJ5LWhvdmVyLWJhY2tncm91bmQ7XG4gICAgY29sb3I6ICRidXR0b24tc2Vjb25kYXJ5LWhvdmVyLWNvbG9yO1xuICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1idXR0b24tc2Vjb25kYXJ5LWhvdmVyKSkge0BpbmNsdWRlIGhvb2stYnV0dG9uLXNlY29uZGFyeS1ob3ZlcigpO31cbn1cblxuLyogT25DbGljayArIEFjdGl2ZSAqL1xuLmZlLWJ1dHRvbi1zZWNvbmRhcnk6YWN0aXZlLFxuLmZlLWJ1dHRvbi1zZWNvbmRhcnkuZmUtYWN0aXZlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYnV0dG9uLXNlY29uZGFyeS1hY3RpdmUtYmFja2dyb3VuZDtcbiAgICBjb2xvcjogJGJ1dHRvbi1zZWNvbmRhcnktYWN0aXZlLWNvbG9yO1xuICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1idXR0b24tc2Vjb25kYXJ5LWFjdGl2ZSkpIHtAaW5jbHVkZSBob29rLWJ1dHRvbi1zZWNvbmRhcnktYWN0aXZlKCk7fVxufVxuXG4vKlxuICogV2l0aCBpbWFnZVxuICovXG5cbi5mZS1idXR0b24taW1nIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtZ3JpZDtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IGF1dG8gYXV0bztcbiAgICBncmlkLWNvbHVtbi1nYXA6ICRidXR0b24taW1hZ2UtZ2FwO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cbiAgICBzdmcge1xuICAgICAgICB3aWR0aDogJGJ1dHRvbi1pbWFnZS13aWR0aDtcbiAgICAgICAgaGVpZ2h0OiAkYnV0dG9uLWltYWdlLWhlaWdodDtcbiAgICAgICAgb2JqZWN0LWZpdDogY29udGFpbjtcbiAgICAgICAgb2JqZWN0LXBvc2l0aW9uOiBjZW50ZXI7XG4gICAgfVxuICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1idXR0b24taW1nKSkge0BpbmNsdWRlIGhvb2stYnV0dG9uLWltZygpO31cbn1cblxuLypcbiAqIFVuZGVybGluZVxuICovXG5cbi5mZS1idXR0b24tdW5kZXJsaW5lIHtcbiAgICAmOjphZnRlciB7XG4gICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIGJvdHRvbTogJGJ1dHRvbi11bmRlcmxpbmUtbGluZS1wb3NpdGlvbjtcbiAgICAgICAgaGVpZ2h0OiAkYnV0dG9uLXVuZGVybGluZS1saW5lLWhlaWdodDtcbiAgICAgICAgd2lkdGg6ICRidXR0b24tdW5kZXJsaW5lLWxpbmUtd2lkdGg7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRidXR0b24tdW5kZXJsaW5lLWxpbmUtYmFja2dyb3VuZDtcbiAgICAgICAgdHJhbnNpdGlvbjogLjI1cyBhbGw7XG4gICAgfVxufVxuXG4vKiBIb3ZlciAqL1xuXG4uZmUtYnV0dG9uLXVuZGVybGluZSB7XG4gICAgJjpob3ZlciB7XG4gICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICAgIHdpZHRoOiBjYWxjKCN7JGJ1dHRvbi11bmRlcmxpbmUtbGluZS13aWR0aH0gKiAxLjE3KTtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLypcbiAqIERhbmdlclxuICovXG5cbi5mZS1idXR0b24tZGFuZ2VyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYnV0dG9uLWRhbmdlci1iYWNrZ3JvdW5kO1xuICAgIGNvbG9yOiAkYnV0dG9uLWRhbmdlci1jb2xvcjtcbiAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2stYnV0dG9uLWRhbmdlcikpIHtAaW5jbHVkZSBob29rLWJ1dHRvbi1kYW5nZXIoKTt9XG5cbiAgICAmLXNoYWRvd2VkIHtcbiAgICAgICAgYm94LXNoYWRvdzogcmdiYSgkYnV0dG9uLWRhbmdlci1iYWNrZ3JvdW5kLCAwLjIpIDAgN3B4IDI5cHggMDtcbiAgICB9XG59XG5cbi8qIEhvdmVyICovXG4uZmUtYnV0dG9uLWRhbmdlcjpob3ZlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGJ1dHRvbi1kYW5nZXItaG92ZXItYmFja2dyb3VuZDtcbiAgICBjb2xvcjogJGJ1dHRvbi1kYW5nZXItaG92ZXItY29sb3I7XG4gICAgQGlmKG1peGluLWV4aXN0cyhob29rLWJ1dHRvbi1kYW5nZXItaG92ZXIpKSB7QGluY2x1ZGUgaG9vay1idXR0b24tZGFuZ2VyLWhvdmVyKCk7fVxufVxuXG4vKiBPbkNsaWNrICsgQWN0aXZlICovXG4uZmUtYnV0dG9uLWRhbmdlcjphY3RpdmUsXG4uZmUtYnV0dG9uLWRhbmdlci5mZS1hY3RpdmUge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRidXR0b24tZGFuZ2VyLWFjdGl2ZS1iYWNrZ3JvdW5kO1xuICAgIGNvbG9yOiAkYnV0dG9uLWRhbmdlci1hY3RpdmUtY29sb3I7XG4gICAgQGlmKG1peGluLWV4aXN0cyhob29rLWJ1dHRvbi1kYW5nZXItYWN0aXZlKSkge0BpbmNsdWRlIGhvb2stYnV0dG9uLWRhbmdlci1hY3RpdmUoKTt9XG59XG5cbi8qXG4gKiBEaXNhYmxlZFxuICogVGhlIHNhbWUgZm9yIGFsbCBzdHlsZSBtb2RpZmllcnNcbiAqL1xuXG4uZmUtYnV0dG9uLWRlZmF1bHQ6ZGlzYWJsZWQsXG4uZmUtYnV0dG9uLXByaW1hcnk6ZGlzYWJsZWQsXG4uZmUtYnV0dG9uLXNlY29uZGFyeTpkaXNhYmxlZCxcbi5mZS1idXR0b24tZGFuZ2VyOmRpc2FibGVkIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYnV0dG9uLWRpc2FibGVkLWJhY2tncm91bmQ7XG4gICAgY29sb3I6ICRidXR0b24tZGlzYWJsZWQtY29sb3I7XG4gICAgQGlmKG1peGluLWV4aXN0cyhob29rLWJ1dHRvbi1kaXNhYmxlZCkpIHtAaW5jbHVkZSBob29rLWJ1dHRvbi1kaXNhYmxlZCgpO31cbn1cblxuXG4vKiBTaXplIG1vZGlmaWVyc1xuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi5mZS1idXR0b24tc21hbGwge1xuICAgIHBhZGRpbmc6IDAgJGJ1dHRvbi1zbWFsbC1wYWRkaW5nLWhvcml6b250YWw7XG4gICAgbGluZS1oZWlnaHQ6ICRidXR0b24tc21hbGwtbGluZS1oZWlnaHQ7XG4gICAgZm9udC1zaXplOiAkYnV0dG9uLXNtYWxsLWZvbnQtc2l6ZTtcbiAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2stYnV0dG9uLXNtYWxsKSkge0BpbmNsdWRlIGhvb2stYnV0dG9uLXNtYWxsKCk7fVxufVxuXG4uZmUtYnV0dG9uLWxhcmdlIHtcbiAgICBwYWRkaW5nOiAwICRidXR0b24tbGFyZ2UtcGFkZGluZy1ob3Jpem9udGFsO1xuICAgIGxpbmUtaGVpZ2h0OiAkYnV0dG9uLWxhcmdlLWxpbmUtaGVpZ2h0O1xuICAgIGZvbnQtc2l6ZTogJGJ1dHRvbi1sYXJnZS1mb250LXNpemU7XG4gICAgQGlmKG1peGluLWV4aXN0cyhob29rLWJ1dHRvbi1sYXJnZSkpIHtAaW5jbHVkZSBob29rLWJ1dHRvbi1sYXJnZSgpO31cbn1cblxuXG4vKiBUZXh0IG1vZGlmaWVyc1xuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi5mZS1idXR0b24tdGV4dCB7XG4gICAgcGFkZGluZzogMDtcbiAgICBsaW5lLWhlaWdodDogJGJ1dHRvbi10ZXh0LWxpbmUtaGVpZ2h0O1xuICAgIGJhY2tncm91bmQ6IG5vbmU7XG4gICAgY29sb3I6ICRidXR0b24tdGV4dC1jb2xvcjtcbiAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2stYnV0dG9uLXRleHQpKSB7QGluY2x1ZGUgaG9vay1idXR0b24tdGV4dCgpO31cbn1cblxuLyogSG92ZXIgKi9cbi5mZS1idXR0b24tdGV4dDpob3ZlciB7XG4gICAgY29sb3I6ICRidXR0b24tdGV4dC1ob3Zlci1jb2xvcjtcbiAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2stYnV0dG9uLXRleHQtaG92ZXIpKSB7QGluY2x1ZGUgaG9vay1idXR0b24tdGV4dC1ob3ZlcigpO31cbn1cblxuLyogRGlzYWJsZWQgKi9cbi5mZS1idXR0b24tdGV4dDpkaXNhYmxlZCB7XG4gICAgY29sb3I6ICRidXR0b24tdGV4dC1kaXNhYmxlZC1jb2xvcjtcbiAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2stYnV0dG9uLXRleHQtZGlzYWJsZWQpKSB7QGluY2x1ZGUgaG9vay1idXR0b24tdGV4dC1kaXNhYmxlZCgpO31cbn1cblxuLmZlLWJ1dHRvbi1saW5rIHtcbiAgICBwYWRkaW5nOiAwO1xuICAgIGxpbmUtaGVpZ2h0OiAkYnV0dG9uLWxpbmstbGluZS1oZWlnaHQ7XG4gICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICBjb2xvcjogJGJ1dHRvbi1saW5rLWNvbG9yO1xuICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1idXR0b24tbGluaykpIHtAaW5jbHVkZSBob29rLWJ1dHRvbi1saW5rKCk7fVxufVxuXG4vKiBIb3ZlciAqL1xuLmZlLWJ1dHRvbi1saW5rOmhvdmVyIHtcbiAgICBjb2xvcjogJGJ1dHRvbi1saW5rLWhvdmVyLWNvbG9yO1xuICAgIHRleHQtZGVjb3JhdGlvbjogJGJ1dHRvbi1saW5rLWhvdmVyLXRleHQtZGVjb3JhdGlvbjtcbn1cblxuLyogRGlzYWJsZWQgKi9cbi5mZS1idXR0b24tbGluazpkaXNhYmxlZCB7XG4gICAgY29sb3I6ICRidXR0b24tbGluay1kaXNhYmxlZC1jb2xvcjtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG5cbkBpZihtaXhpbi1leGlzdHMoaG9vay1idXR0b24tbWlzYykpIHtAaW5jbHVkZSBob29rLWJ1dHRvbi1taXNjKCk7fVxuIiwiLy9cbi8vIExvYWRlcjogQnV0dG9uXG4vL1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cblxuLy8gVmFyaWFibGVzXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuQG1peGluIGhvb2stYnV0dG9uKCl7XG5cdHBhZGRpbmctdG9wOiBnZXRTcGFjZSgnMnhzJyk7XG5cdHBhZGRpbmctYm90dG9tOiBnZXRTcGFjZSgnMnhzJyk7XG59XG4iLCIvLyBOYW1lOiAgICAgICAgICAgIENhcmRcbi8vIERlc2NyaXB0aW9uOiAgICAgQ29tcG9uZW50IHRvIGNyZWF0ZSBib3hlZCBjb250ZW50IGNvbnRhaW5lcnNcbi8vXG4vLyBDb21wb25lbnQ6ICAgICAgIGBmZS1jYXJkYFxuLy9cbi8vIFN1Yi1vYmplY3RzOiAgICAgYGZlLWNhcmQtYm9keWAgICAgICAgICAgQWRkIHRoaXMgY2xhc3MgdG8gdGhlIGNhcmQgdG8gY3JlYXRlIHBhZGRpbmcgYmV0d2VlbiB0aGUgY2FyZCBhbmQgaXRzIGNvbnRlbnQuXG4vLyAgICAgICAgICAgICAgICAgIGBmZS1jYXJkLWhlYWRlcmAgICAgICAgIEFkZCB0aGlzIGNsYXNzIHRvIGEgaGVhZGluZyB0byBkZWZpbmUgYSBjYXJkIHRpdGxlLlxuLy8gICAgICAgICAgICAgICAgICBgZmUtY2FyZC1mb290ZXJgXG4vLyAgICAgICAgICAgICAgICAgIGBmZS1jYXJkLW1lZGlhLSpgXG4vLyAgICAgICAgICAgICAgICAgIGBmZS1jYXJkLXRpdGxlYFxuLy9cbi8vIE1vZGlmaWVyczogICAgICAgYGZlLWNhcmQtaG92ZXJgXG4vLyAgICAgICAgICAgICAgICAgIGBmZS1jYXJkLWRlZmF1bHRgXG4vLyAgICAgICAgICAgICAgICAgIGBmZS1jYXJkLXByaW1hcnlgXG4vLyAgICAgICAgICAgICAgICAgIGBmZS1jYXJkLXNlY29uZGFyeWBcbi8vICAgICAgICAgICAgICAgICAgYGZlLWNhcmQtc21hbGxgXG4vLyAgICAgICAgICAgICAgICAgIGBmZS1jYXJkLWxhcmdlYFxuLy9cbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5cbi8vIFZhcmlhYmxlc1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbiRjYXJkLWJvZHktcGFkZGluZy1ob3Jpem9udGFsOiAgICAgICAgICAgICAgICAgICRnbG9iYWwtZ3V0dGVyICFkZWZhdWx0O1xuJGNhcmQtYm9keS1wYWRkaW5nLXZlcnRpY2FsOiAgICAgICAgICAgICAgICAgICAgJGdsb2JhbC1ndXR0ZXIgIWRlZmF1bHQ7XG5cbiRjYXJkLWJvZHktcGFkZGluZy1ob3Jpem9udGFsLWw6ICAgICAgICAgICAgICAgICRnbG9iYWwtbWVkaXVtLWd1dHRlciAhZGVmYXVsdDtcbiRjYXJkLWJvZHktcGFkZGluZy12ZXJ0aWNhbC1sOiAgICAgICAgICAgICAgICAgICRnbG9iYWwtbWVkaXVtLWd1dHRlciAhZGVmYXVsdDtcblxuJGNhcmQtaGVhZGVyLXBhZGRpbmctaG9yaXpvbnRhbDogICAgICAgICAgICAgICAgJGdsb2JhbC1ndXR0ZXIgIWRlZmF1bHQ7XG4kY2FyZC1oZWFkZXItcGFkZGluZy12ZXJ0aWNhbDogICAgICAgICAgICAgICAgICByb3VuZCgoJGdsb2JhbC1ndXR0ZXIgKiAwLjUpKSAhZGVmYXVsdDtcblxuJGNhcmQtaGVhZGVyLXBhZGRpbmctaG9yaXpvbnRhbC1sOiAgICAgICAgICAgICAgJGdsb2JhbC1tZWRpdW0tZ3V0dGVyICFkZWZhdWx0O1xuJGNhcmQtaGVhZGVyLXBhZGRpbmctdmVydGljYWwtbDogICAgICAgICAgICAgICAgcm91bmQoKCRnbG9iYWwtbWVkaXVtLWd1dHRlciAqIDAuNSkpICFkZWZhdWx0O1xuXG4kY2FyZC1mb290ZXItcGFkZGluZy1ob3Jpem9udGFsOiAgICAgICAgICAgICAgICAkZ2xvYmFsLWd1dHRlciAhZGVmYXVsdDtcbiRjYXJkLWZvb3Rlci1wYWRkaW5nLXZlcnRpY2FsOiAgICAgICAgICAgICAgICAgICgkZ2xvYmFsLWd1dHRlciAqIDAuNSkgIWRlZmF1bHQ7XG5cbiRjYXJkLWZvb3Rlci1wYWRkaW5nLWhvcml6b250YWwtbDogICAgICAgICAgICAgICRnbG9iYWwtbWVkaXVtLWd1dHRlciAhZGVmYXVsdDtcbiRjYXJkLWZvb3Rlci1wYWRkaW5nLXZlcnRpY2FsLWw6ICAgICAgICAgICAgICAgIHJvdW5kKCgkZ2xvYmFsLW1lZGl1bS1ndXR0ZXIgKiAwLjUpKSAhZGVmYXVsdDtcblxuJGNhcmQtdGl0bGUtZm9udC1zaXplOiAgICAgICAgICAgICAgICAgICAgICAgICAgJGdsb2JhbC1tZWRpdW0tZm9udC1zaXplICFkZWZhdWx0O1xuJGNhcmQtdGl0bGUtbGluZS1oZWlnaHQ6ICAgICAgICAgICAgICAgICAgICAgICAgMS40ICFkZWZhdWx0O1xuXG4kY2FyZC1ob3Zlci1iYWNrZ3JvdW5kOiAgICAgICAgICAgICAgICAgICAgICAgICAkZ2xvYmFsLW11dGVkLWJhY2tncm91bmQgIWRlZmF1bHQ7XG5cbiRjYXJkLWRlZmF1bHQtYmFja2dyb3VuZDogICAgICAgICAgICAgICAgICAgICAgICRnbG9iYWwtbXV0ZWQtYmFja2dyb3VuZCAhZGVmYXVsdDtcbiRjYXJkLWRlZmF1bHQtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICRnbG9iYWwtY29sb3IgIWRlZmF1bHQ7XG4kY2FyZC1kZWZhdWx0LXRpdGxlLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAkZ2xvYmFsLWVtcGhhc2lzLWNvbG9yICFkZWZhdWx0O1xuJGNhcmQtZGVmYXVsdC1ob3Zlci1iYWNrZ3JvdW5kOiAgICAgICAgICAgICAgICAgZGFya2VuKCRjYXJkLWRlZmF1bHQtYmFja2dyb3VuZCwgNSUpICFkZWZhdWx0O1xuXG4kY2FyZC1wcmltYXJ5LWJhY2tncm91bmQ6ICAgICAgICAgICAgICAgICAgICAgICAkZ2xvYmFsLXByaW1hcnktYmFja2dyb3VuZCAhZGVmYXVsdDtcbiRjYXJkLXByaW1hcnktY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICRnbG9iYWwtaW52ZXJzZS1jb2xvciAhZGVmYXVsdDtcbiRjYXJkLXByaW1hcnktdGl0bGUtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICRjYXJkLXByaW1hcnktY29sb3IgIWRlZmF1bHQ7XG4kY2FyZC1wcmltYXJ5LWhvdmVyLWJhY2tncm91bmQ6ICAgICAgICAgICAgICAgICBkYXJrZW4oJGNhcmQtcHJpbWFyeS1iYWNrZ3JvdW5kLCA1JSkgIWRlZmF1bHQ7XG4kY2FyZC1wcmltYXJ5LWNvbG9yLW1vZGU6ICAgICAgICAgICAgICAgICAgICAgICBsaWdodCAhZGVmYXVsdDtcblxuJGNhcmQtc2Vjb25kYXJ5LWJhY2tncm91bmQ6ICAgICAgICAgICAgICAgICAgICAgJGdsb2JhbC1zZWNvbmRhcnktYmFja2dyb3VuZCAhZGVmYXVsdDtcbiRjYXJkLXNlY29uZGFyeS1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICAgICRnbG9iYWwtaW52ZXJzZS1jb2xvciAhZGVmYXVsdDtcbiRjYXJkLXNlY29uZGFyeS10aXRsZS1jb2xvcjogICAgICAgICAgICAgICAgICAgICRjYXJkLXNlY29uZGFyeS1jb2xvciAhZGVmYXVsdDtcbiRjYXJkLXNlY29uZGFyeS1ob3Zlci1iYWNrZ3JvdW5kOiAgICAgICAgICAgICAgIGRhcmtlbigkY2FyZC1zZWNvbmRhcnktYmFja2dyb3VuZCwgNSUpICFkZWZhdWx0O1xuJGNhcmQtc2Vjb25kYXJ5LWNvbG9yLW1vZGU6ICAgICAgICAgICAgICAgICAgICAgbGlnaHQgIWRlZmF1bHQ7XG5cbiRjYXJkLXNtYWxsLWJvZHktcGFkZGluZy1ob3Jpem9udGFsOiAgICAgICAgICAgICRnbG9iYWwtbWFyZ2luICFkZWZhdWx0O1xuJGNhcmQtc21hbGwtYm9keS1wYWRkaW5nLXZlcnRpY2FsOiAgICAgICAgICAgICAgJGdsb2JhbC1tYXJnaW4gIWRlZmF1bHQ7XG4kY2FyZC1zbWFsbC1oZWFkZXItcGFkZGluZy1ob3Jpem9udGFsOiAgICAgICAgICAkZ2xvYmFsLW1hcmdpbiAhZGVmYXVsdDtcbiRjYXJkLXNtYWxsLWhlYWRlci1wYWRkaW5nLXZlcnRpY2FsOiAgICAgICAgICAgIHJvdW5kKCgkZ2xvYmFsLW1hcmdpbiAqIDAuNjY2NjcpKSAhZGVmYXVsdDtcbiRjYXJkLXNtYWxsLWZvb3Rlci1wYWRkaW5nLWhvcml6b250YWw6ICAgICAgICAgICRnbG9iYWwtbWFyZ2luICFkZWZhdWx0O1xuJGNhcmQtc21hbGwtZm9vdGVyLXBhZGRpbmctdmVydGljYWw6ICAgICAgICAgICAgcm91bmQoKCRnbG9iYWwtbWFyZ2luICogMC42NjY2NykpICFkZWZhdWx0O1xuXG4kY2FyZC1sYXJnZS1ib2R5LXBhZGRpbmctaG9yaXpvbnRhbC1sOiAgICAgICAgICAkZ2xvYmFsLWxhcmdlLWd1dHRlciAhZGVmYXVsdDtcbiRjYXJkLWxhcmdlLWJvZHktcGFkZGluZy12ZXJ0aWNhbC1sOiAgICAgICAgICAgICRnbG9iYWwtbGFyZ2UtZ3V0dGVyICFkZWZhdWx0O1xuJGNhcmQtbGFyZ2UtaGVhZGVyLXBhZGRpbmctaG9yaXpvbnRhbC1sOiAgICAgICAgJGdsb2JhbC1sYXJnZS1ndXR0ZXIgIWRlZmF1bHQ7XG4kY2FyZC1sYXJnZS1oZWFkZXItcGFkZGluZy12ZXJ0aWNhbC1sOiAgICAgICAgICByb3VuZCgoJGdsb2JhbC1sYXJnZS1ndXR0ZXIgKiAwLjUpKSAhZGVmYXVsdDtcbiRjYXJkLWxhcmdlLWZvb3Rlci1wYWRkaW5nLWhvcml6b250YWwtbDogICAgICAgICRnbG9iYWwtbGFyZ2UtZ3V0dGVyICFkZWZhdWx0O1xuJGNhcmQtbGFyZ2UtZm9vdGVyLXBhZGRpbmctdmVydGljYWwtbDogICAgICAgICAgcm91bmQoKCRnbG9iYWwtbGFyZ2UtZ3V0dGVyICogMC41KSkgIWRlZmF1bHQ7XG5cbiRjYXJkLWhvdmVyLWJveC1zaGFkb3c6ICAgICAgICAgICAgICAgICAgICAgICAgICRnbG9iYWwtbGFyZ2UtYm94LXNoYWRvdyAhZGVmYXVsdDtcblxuJGNhcmQtZGVmYXVsdC1ib3gtc2hhZG93OiAgICAgICAgICAgICAgICAgICAgICAgJGdsb2JhbC1tZWRpdW0tYm94LXNoYWRvdyAhZGVmYXVsdDtcbiRjYXJkLWRlZmF1bHQtaG92ZXItYm94LXNoYWRvdzogICAgICAgICAgICAgICAgICRnbG9iYWwtbGFyZ2UtYm94LXNoYWRvdyAhZGVmYXVsdDtcblxuJGNhcmQtZGVmYXVsdC1oZWFkZXItYm9yZGVyLXdpZHRoOiAgICAgICAgICAgICAgJGdsb2JhbC1ib3JkZXItd2lkdGggIWRlZmF1bHQ7XG4kY2FyZC1kZWZhdWx0LWhlYWRlci1ib3JkZXI6ICAgICAgICAgICAgICAgICAgICAkZ2xvYmFsLWJvcmRlci1jb2xvciAhZGVmYXVsdDtcblxuJGNhcmQtZGVmYXVsdC1mb290ZXItYm9yZGVyLXdpZHRoOiAgICAgICAgICAgICAgJGdsb2JhbC1ib3JkZXItd2lkdGggIWRlZmF1bHQ7XG4kY2FyZC1kZWZhdWx0LWZvb3Rlci1ib3JkZXI6ICAgICAgICAgICAgICAgICAgICAkZ2xvYmFsLWJvcmRlci1jb2xvciAhZGVmYXVsdDtcblxuJGNhcmQtcHJpbWFyeS1ib3gtc2hhZG93OiAgICAgICAgICAgICAgICAgICAgICAgJGdsb2JhbC1tZWRpdW0tYm94LXNoYWRvdyAhZGVmYXVsdDtcbiRjYXJkLXByaW1hcnktaG92ZXItYm94LXNoYWRvdzogICAgICAgICAgICAgICAgICRnbG9iYWwtbGFyZ2UtYm94LXNoYWRvdyAhZGVmYXVsdDtcblxuJGNhcmQtc2Vjb25kYXJ5LWJveC1zaGFkb3c6ICAgICAgICAgICAgICAgICAgICAgJGdsb2JhbC1tZWRpdW0tYm94LXNoYWRvdyAhZGVmYXVsdDtcbiRjYXJkLXNlY29uZGFyeS1ob3Zlci1ib3gtc2hhZG93OiAgICAgICAgICAgICAgICRnbG9iYWwtbGFyZ2UtYm94LXNoYWRvdyAhZGVmYXVsdDtcblxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgIENvbXBvbmVudDogQ2FyZFxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi5mZS1jYXJkIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICB0cmFuc2l0aW9uOiAuMjVzIGFsbDtcbiAgQGlmKG1peGluLWV4aXN0cyhob29rLWNhcmQpKSB7QGluY2x1ZGUgaG9vay1jYXJkKCk7fVxufVxuXG5cbi8qIFNlY3Rpb25zXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLmZlLWNhcmQtYm9keSB7XG4gIGRpc3BsYXk6IGZsb3ctcm9vdDtcbiAgcGFkZGluZzogJGNhcmQtYm9keS1wYWRkaW5nLXZlcnRpY2FsICRjYXJkLWJvZHktcGFkZGluZy1ob3Jpem9udGFsO1xuICBAaWYobWl4aW4tZXhpc3RzKGhvb2stY2FyZC1ib2R5KSkge0BpbmNsdWRlIGhvb2stY2FyZC1ib2R5KCk7fVxufVxuXG4uZmUtY2FyZC1oZWFkZXIge1xuICBkaXNwbGF5OiBmbG93LXJvb3Q7XG4gIHBhZGRpbmc6ICRjYXJkLWhlYWRlci1wYWRkaW5nLXZlcnRpY2FsICRjYXJkLWhlYWRlci1wYWRkaW5nLWhvcml6b250YWw7XG4gIEBpZihtaXhpbi1leGlzdHMoaG9vay1jYXJkLWhlYWRlcikpIHtAaW5jbHVkZSBob29rLWNhcmQtaGVhZGVyKCk7fVxufVxuXG4uZmUtY2FyZC1mb290ZXIge1xuICBkaXNwbGF5OiBmbG93LXJvb3Q7XG4gIHBhZGRpbmc6ICRjYXJkLWZvb3Rlci1wYWRkaW5nLXZlcnRpY2FsICRjYXJkLWZvb3Rlci1wYWRkaW5nLWhvcml6b250YWw7XG4gIEBpZihtaXhpbi1leGlzdHMoaG9vay1jYXJkLWZvb3RlcikpIHtAaW5jbHVkZSBob29rLWNhcmQtZm9vdGVyKCk7fVxufVxuXG4vKiBEZXNrdG9wIGFuZCBiaWdnZXIgKi9cbkBtZWRpYSAobWluLXdpZHRoOiAxMzY2cHgpIHtcblxuICAuZmUtY2FyZC1ib2R5IHsgcGFkZGluZzogJGNhcmQtYm9keS1wYWRkaW5nLXZlcnRpY2FsLWwgJGNhcmQtYm9keS1wYWRkaW5nLWhvcml6b250YWwtbDsgfVxuXG4gIC5mZS1jYXJkLWhlYWRlciB7IHBhZGRpbmc6ICRjYXJkLWhlYWRlci1wYWRkaW5nLXZlcnRpY2FsLWwgJGNhcmQtaGVhZGVyLXBhZGRpbmctaG9yaXpvbnRhbC1sOyB9XG5cbiAgLmZlLWNhcmQtZm9vdGVyIHsgcGFkZGluZzogJGNhcmQtZm9vdGVyLXBhZGRpbmctdmVydGljYWwtbCAkY2FyZC1mb290ZXItcGFkZGluZy1ob3Jpem9udGFsLWw7IH1cblxufVxuXG4vKlxuICogUmVtb3ZlIG1hcmdpbiBmcm9tIHRoZSBsYXN0LWNoaWxkXG4gKi9cblxuLmZlLWNhcmQtYm9keSA+IDpsYXN0LWNoaWxkLFxuLmZlLWNhcmQtaGVhZGVyID4gOmxhc3QtY2hpbGQsXG4uZmUtY2FyZC1mb290ZXIgPiA6bGFzdC1jaGlsZCB7IG1hcmdpbi1ib3R0b206IDA7IH1cblxuXG4vKiBNZWRpYVxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qXG4gKiBSZXNlcnZlZCBhbGlnbm1lbnQgbW9kaWZpZXIgdG8gc3R5bGUgdGhlIG1lZGlhIGVsZW1lbnQsIGUuZy4gd2l0aCBgYm9yZGVyLXJhZGl1c2BcbiAqIEltcGxlbWVudGVkIGJ5IHRoZSB0aGVtZVxuICovXG5cbltjbGFzcyo9J2ZlLWNhcmQtbWVkaWEnXSB7XG4gIEBpZihtaXhpbi1leGlzdHMoaG9vay1jYXJkLW1lZGlhKSkge0BpbmNsdWRlIGhvb2stY2FyZC1tZWRpYSgpO31cbn1cblxuLmZlLWNhcmQtbWVkaWEtdG9wLFxuLmZlLWdyaWQtc3RhY2sgPiAuZmUtY2FyZC1tZWRpYS1sZWZ0LFxuLmZlLWdyaWQtc3RhY2sgPiAuZmUtY2FyZC1tZWRpYS1yaWdodCAge1xuICBAaWYobWl4aW4tZXhpc3RzKGhvb2stY2FyZC1tZWRpYS10b3ApKSB7QGluY2x1ZGUgaG9vay1jYXJkLW1lZGlhLXRvcCgpO31cbn1cblxuLmZlLWNhcmQtbWVkaWEtYm90dG9tIHtcbiAgQGlmKG1peGluLWV4aXN0cyhob29rLWNhcmQtbWVkaWEtYm90dG9tKSkge0BpbmNsdWRlIGhvb2stY2FyZC1tZWRpYS1ib3R0b20oKTt9XG59XG5cbjpub3QoLmZlLWdyaWQtc3RhY2spID4gLmZlLWNhcmQtbWVkaWEtbGVmdCB7XG4gIEBpZihtaXhpbi1leGlzdHMoaG9vay1jYXJkLW1lZGlhLWxlZnQpKSB7QGluY2x1ZGUgaG9vay1jYXJkLW1lZGlhLWxlZnQoKTt9XG59XG5cbjpub3QoLmZlLWdyaWQtc3RhY2spID4gLmZlLWNhcmQtbWVkaWEtcmlnaHQge1xuICBAaWYobWl4aW4tZXhpc3RzKGhvb2stY2FyZC1tZWRpYS1yaWdodCkpIHtAaW5jbHVkZSBob29rLWNhcmQtbWVkaWEtcmlnaHQoKTt9XG59XG5cblxuLyogVGl0bGVcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4uZmUtY2FyZC10aXRsZSB7XG4gIGZvbnQtc2l6ZTogJGNhcmQtdGl0bGUtZm9udC1zaXplO1xuICBsaW5lLWhlaWdodDogJGNhcmQtdGl0bGUtbGluZS1oZWlnaHQ7XG4gIEBpZihtaXhpbi1leGlzdHMoaG9vay1jYXJkLXRpdGxlKSkge0BpbmNsdWRlIGhvb2stY2FyZC10aXRsZSgpO31cbn1cblxuLyogSG92ZXIgbW9kaWZpZXJcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4uZmUtY2FyZC1ob3Zlcjpub3QoLmZlLWNhcmQtZGVmYXVsdCk6bm90KC5mZS1jYXJkLXByaW1hcnkpOm5vdCguZmUtY2FyZC1zZWNvbmRhcnkpOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGNhcmQtaG92ZXItYmFja2dyb3VuZDtcbiAgYm94LXNoYWRvdzogJGNhcmQtaG92ZXItYm94LXNoYWRvdztcbiAgQGlmKG1peGluLWV4aXN0cyhob29rLWNhcmQtaG92ZXIpKSB7QGluY2x1ZGUgaG9vay1jYXJkLWhvdmVyKCk7fVxufVxuXG5cbi8qIFN0eWxlIG1vZGlmaWVyc1xuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qXG4gKiBEZWZhdWx0XG4gKiBOb3RlOiBIZWFkZXIgYW5kIEZvb3RlciBhcmUgb25seSBpbXBsZW1lbnRlZCBmb3IgdGhlIGRlZmF1bHQgc3R5bGVcbiAqL1xuXG4uZmUtY2FyZC1kZWZhdWx0IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGNhcmQtZGVmYXVsdC1iYWNrZ3JvdW5kO1xuICBjb2xvcjogJGNhcmQtZGVmYXVsdC1jb2xvcjtcbiAgYm94LXNoYWRvdzogJGNhcmQtZGVmYXVsdC1ib3gtc2hhZG93O1xuICBAaWYobWl4aW4tZXhpc3RzKGhvb2stY2FyZC1kZWZhdWx0KSkge0BpbmNsdWRlIGhvb2stY2FyZC1kZWZhdWx0KCk7fVxufVxuXG4uZmUtY2FyZC1kZWZhdWx0IC5mZS1jYXJkLXRpdGxlIHtcbiAgY29sb3I6ICRjYXJkLWRlZmF1bHQtdGl0bGUtY29sb3I7XG4gIEBpZihtaXhpbi1leGlzdHMoaG9vay1jYXJkLWRlZmF1bHQtdGl0bGUpKSB7QGluY2x1ZGUgaG9vay1jYXJkLWRlZmF1bHQtdGl0bGUoKTt9XG59XG5cbi5mZS1jYXJkLWRlZmF1bHQuZmUtY2FyZC1ob3Zlcjpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICRjYXJkLWRlZmF1bHQtaG92ZXItYmFja2dyb3VuZDtcbiAgYm94LXNoYWRvdzogJGNhcmQtZGVmYXVsdC1ob3Zlci1ib3gtc2hhZG93O1xuICBAaWYobWl4aW4tZXhpc3RzKGhvb2stY2FyZC1kZWZhdWx0LWhvdmVyKSkge0BpbmNsdWRlIGhvb2stY2FyZC1kZWZhdWx0LWhvdmVyKCk7fVxufVxuXG4uZmUtY2FyZC1kZWZhdWx0IC5mZS1jYXJkLWhlYWRlciB7XG4gIGJvcmRlci1ib3R0b206ICRjYXJkLWRlZmF1bHQtaGVhZGVyLWJvcmRlci13aWR0aCBzb2xpZCAkY2FyZC1kZWZhdWx0LWhlYWRlci1ib3JkZXI7XG4gIEBpZihtaXhpbi1leGlzdHMoaG9vay1jYXJkLWRlZmF1bHQtaGVhZGVyKSkge0BpbmNsdWRlIGhvb2stY2FyZC1kZWZhdWx0LWhlYWRlcigpO31cbn1cblxuLmZlLWNhcmQtZGVmYXVsdCAuZmUtY2FyZC1mb290ZXIge1xuICBib3JkZXItdG9wOiAkY2FyZC1kZWZhdWx0LWZvb3Rlci1ib3JkZXItd2lkdGggIHNvbGlkICRjYXJkLWRlZmF1bHQtZm9vdGVyLWJvcmRlcjtcbiAgQGlmKG1peGluLWV4aXN0cyhob29rLWNhcmQtZGVmYXVsdC1mb290ZXIpKSB7QGluY2x1ZGUgaG9vay1jYXJkLWRlZmF1bHQtZm9vdGVyKCk7fVxufVxuXG4vKlxuICogUHJpbWFyeVxuICovXG5cbi5mZS1jYXJkLXByaW1hcnkge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkY2FyZC1wcmltYXJ5LWJhY2tncm91bmQ7XG4gIGNvbG9yOiAkY2FyZC1wcmltYXJ5LWNvbG9yO1xuICBib3gtc2hhZG93OiAkY2FyZC1wcmltYXJ5LWJveC1zaGFkb3c7XG4gIEBpZihtaXhpbi1leGlzdHMoaG9vay1jYXJkLXByaW1hcnkpKSB7QGluY2x1ZGUgaG9vay1jYXJkLXByaW1hcnkoKTt9XG59XG5cbi5mZS1jYXJkLXByaW1hcnkgLmZlLWNhcmQtdGl0bGUge1xuICBjb2xvcjogJGNhcmQtcHJpbWFyeS10aXRsZS1jb2xvcjtcbiAgQGlmKG1peGluLWV4aXN0cyhob29rLWNhcmQtcHJpbWFyeS10aXRsZSkpIHtAaW5jbHVkZSBob29rLWNhcmQtcHJpbWFyeS10aXRsZSgpO31cbn1cblxuLmZlLWNhcmQtcHJpbWFyeS5mZS1jYXJkLWhvdmVyOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGNhcmQtcHJpbWFyeS1ob3Zlci1iYWNrZ3JvdW5kO1xuICBib3gtc2hhZG93OiAkY2FyZC1wcmltYXJ5LWhvdmVyLWJveC1zaGFkb3c7XG4gIEBpZihtaXhpbi1leGlzdHMoaG9vay1jYXJkLXByaW1hcnktaG92ZXIpKSB7QGluY2x1ZGUgaG9vay1jYXJkLXByaW1hcnktaG92ZXIoKTt9XG59XG5cbi8vIENvbG9yIE1vZGVcbkBpZiAoICRjYXJkLXByaW1hcnktY29sb3ItbW9kZSA9PSBsaWdodCApIHsgLmZlLWNhcmQtcHJpbWFyeS5mZS1jYXJkLWJvZHkgeyBAZXh0ZW5kIC5mZS1saWdodCAhb3B0aW9uYWw7fSB9XG5AaWYgKCAkY2FyZC1wcmltYXJ5LWNvbG9yLW1vZGUgPT0gbGlnaHQgKSB7IC5mZS1jYXJkLXByaW1hcnkgPiA6bm90KFtjbGFzcyo9J2ZlLWNhcmQtbWVkaWEnXSkgeyBAZXh0ZW5kIC5mZS1saWdodCAhb3B0aW9uYWw7fSB9XG5AaWYgKCAkY2FyZC1wcmltYXJ5LWNvbG9yLW1vZGUgPT0gZGFyayApIHsgLmZlLWNhcmQtcHJpbWFyeS5mZS1jYXJkLWJvZHkgeyBAZXh0ZW5kIC5mZS1kYXJrICFvcHRpb25hbDt9IH1cbkBpZiAoICRjYXJkLXByaW1hcnktY29sb3ItbW9kZSA9PSBkYXJrICkgeyAuZmUtY2FyZC1wcmltYXJ5ID4gOm5vdChbY2xhc3MqPSdmZS1jYXJkLW1lZGlhJ10pIHsgQGV4dGVuZCAuZmUtZGFyayAhb3B0aW9uYWw7fSB9XG5cbi8qXG4gKiBTZWNvbmRhcnlcbiAqL1xuXG4uZmUtY2FyZC1zZWNvbmRhcnkge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkY2FyZC1zZWNvbmRhcnktYmFja2dyb3VuZDtcbiAgY29sb3I6ICRjYXJkLXNlY29uZGFyeS1jb2xvcjtcbiAgYm94LXNoYWRvdzogJGNhcmQtc2Vjb25kYXJ5LWJveC1zaGFkb3c7XG4gIEBpZihtaXhpbi1leGlzdHMoaG9vay1jYXJkLXNlY29uZGFyeSkpIHtAaW5jbHVkZSBob29rLWNhcmQtc2Vjb25kYXJ5KCk7fVxufVxuXG4uZmUtY2FyZC1zZWNvbmRhcnkgLmZlLWNhcmQtdGl0bGUge1xuICBjb2xvcjogJGNhcmQtc2Vjb25kYXJ5LXRpdGxlLWNvbG9yO1xuICBAaWYobWl4aW4tZXhpc3RzKGhvb2stY2FyZC1zZWNvbmRhcnktdGl0bGUpKSB7QGluY2x1ZGUgaG9vay1jYXJkLXNlY29uZGFyeS10aXRsZSgpO31cbn1cblxuLmZlLWNhcmQtc2Vjb25kYXJ5LmZlLWNhcmQtaG92ZXI6aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkY2FyZC1zZWNvbmRhcnktaG92ZXItYmFja2dyb3VuZDtcbiAgYm94LXNoYWRvdzogJGNhcmQtc2Vjb25kYXJ5LWhvdmVyLWJveC1zaGFkb3c7XG4gIEBpZihtaXhpbi1leGlzdHMoaG9vay1jYXJkLXNlY29uZGFyeS1ob3ZlcikpIHtAaW5jbHVkZSBob29rLWNhcmQtc2Vjb25kYXJ5LWhvdmVyKCk7fVxufVxuXG4vLyBDb2xvciBNb2RlXG5AaWYgKCAkY2FyZC1zZWNvbmRhcnktY29sb3ItbW9kZSA9PSBsaWdodCApIHsgLmZlLWNhcmQtc2Vjb25kYXJ5LmZlLWNhcmQtYm9keSB7IEBleHRlbmQgLmZlLWxpZ2h0ICFvcHRpb25hbDt9IH1cbkBpZiAoICRjYXJkLXNlY29uZGFyeS1jb2xvci1tb2RlID09IGxpZ2h0ICkgeyAuZmUtY2FyZC1zZWNvbmRhcnkgPiA6bm90KFtjbGFzcyo9J2ZlLWNhcmQtbWVkaWEnXSkgeyBAZXh0ZW5kIC5mZS1saWdodCAhb3B0aW9uYWw7fSB9XG5AaWYgKCAkY2FyZC1zZWNvbmRhcnktY29sb3ItbW9kZSA9PSBkYXJrICkgeyAuZmUtY2FyZC1zZWNvbmRhcnkuZmUtY2FyZC1ib2R5IHsgQGV4dGVuZCAuZmUtZGFyayAhb3B0aW9uYWw7fSB9XG5AaWYgKCAkY2FyZC1zZWNvbmRhcnktY29sb3ItbW9kZSA9PSBkYXJrICkgeyAuZmUtY2FyZC1zZWNvbmRhcnkgPiA6bm90KFtjbGFzcyo9J2ZlLWNhcmQtbWVkaWEnXSkgeyBAZXh0ZW5kIC5mZS1kYXJrICFvcHRpb25hbDt9IH1cblxuXG4vKiBTaXplIG1vZGlmaWVyXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLypcbiAqIFNtYWxsXG4gKi9cblxuLmZlLWNhcmQtc21hbGwuZmUtY2FyZC1ib2R5LFxuLmZlLWNhcmQtc21hbGwgLmZlLWNhcmQtYm9keSB7IHBhZGRpbmc6ICRjYXJkLXNtYWxsLWJvZHktcGFkZGluZy12ZXJ0aWNhbCAkY2FyZC1zbWFsbC1ib2R5LXBhZGRpbmctaG9yaXpvbnRhbDsgfVxuXG4uZmUtY2FyZC1zbWFsbCAuZmUtY2FyZC1oZWFkZXIgeyBwYWRkaW5nOiAkY2FyZC1zbWFsbC1oZWFkZXItcGFkZGluZy12ZXJ0aWNhbCAkY2FyZC1zbWFsbC1oZWFkZXItcGFkZGluZy1ob3Jpem9udGFsOyB9XG4uZmUtY2FyZC1zbWFsbCAuZmUtY2FyZC1mb290ZXIgeyBwYWRkaW5nOiAkY2FyZC1zbWFsbC1mb290ZXItcGFkZGluZy12ZXJ0aWNhbCAkY2FyZC1zbWFsbC1mb290ZXItcGFkZGluZy1ob3Jpem9udGFsOyB9XG5cbi8qXG4gKiBMYXJnZVxuICovXG5cbi8qIERlc2t0b3AgYW5kIGJpZ2dlciAqL1xuQG1lZGlhIChtaW4td2lkdGg6IDEzNjZweCkge1xuXG4gIC5mZS1jYXJkLWxhcmdlLmZlLWNhcmQtYm9keSxcbiAgLmZlLWNhcmQtbGFyZ2UgLmZlLWNhcmQtYm9keSB7IHBhZGRpbmc6ICRjYXJkLWxhcmdlLWJvZHktcGFkZGluZy12ZXJ0aWNhbC1sICRjYXJkLWxhcmdlLWJvZHktcGFkZGluZy1ob3Jpem9udGFsLWw7IH1cblxuICAuZmUtY2FyZC1sYXJnZSAuZmUtY2FyZC1oZWFkZXIgeyBwYWRkaW5nOiAkY2FyZC1sYXJnZS1oZWFkZXItcGFkZGluZy12ZXJ0aWNhbC1sICRjYXJkLWxhcmdlLWhlYWRlci1wYWRkaW5nLWhvcml6b250YWwtbDsgfVxuICAuZmUtY2FyZC1sYXJnZSAuZmUtY2FyZC1mb290ZXIgeyBwYWRkaW5nOiAkY2FyZC1sYXJnZS1mb290ZXItcGFkZGluZy12ZXJ0aWNhbC1sICRjYXJkLWxhcmdlLWZvb3Rlci1wYWRkaW5nLWhvcml6b250YWwtbDsgfVxuXG59XG4iLCIvLyBOYW1lOiAgICAgICAgICAgIERlc2NyaXB0aW9uIGxpc3Rcbi8vIERlc2NyaXB0aW9uOiAgICAgU3R5bGVzIGZvciBkZXNjcmlwdGlvbiBsaXN0c1xuLy9cbi8vIENvbXBvbmVudDogICAgICAgYGZlLWRlc2NyaXB0aW9uLWxpc3RgXG4vL1xuLy8gTW9kaWZpZXJzOiAgICAgICBgZmUtZGVzY3JpcHRpb24tbGlzdC1kaXZpZGVyYFxuLy9cbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5cbi8vIFZhcmlhYmxlc1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbiRkZXNjcmlwdGlvbi1saXN0LXRlcm0tY29sb3I6ICAgICAgICAgICAgICAgICAgICAkZ2xvYmFsLWVtcGhhc2lzLWNvbG9yICFkZWZhdWx0O1xuJGRlc2NyaXB0aW9uLWxpc3QtdGVybS1tYXJnaW4tdG9wOiAgICAgICAgICAgICAgICRnbG9iYWwtbWFyZ2luICFkZWZhdWx0O1xuXG4kZGVzY3JpcHRpb24tbGlzdC10ZXJtLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgJGdsb2JhbC1zbWFsbC1mb250LXNpemUgIWRlZmF1bHQ7XG4kZGVzY3JpcHRpb24tbGlzdC10ZXJtLWZvbnQtd2VpZ2h0OiAgICAgICAgICAgICAgNDAwICFkZWZhdWx0O1xuJGRlc2NyaXB0aW9uLWxpc3QtdGVybS10ZXh0LXRyYW5zZm9ybTogICAgICAgICAgIHVwcGVyY2FzZSAhZGVmYXVsdDtcblxuJGRlc2NyaXB0aW9uLWxpc3QtZGl2aWRlci10ZXJtLW1hcmdpbi10b3A6ICAgICAgICRnbG9iYWwtbWFyZ2luICFkZWZhdWx0O1xuJGRlc2NyaXB0aW9uLWxpc3QtZGl2aWRlci10ZXJtLWJvcmRlci13aWR0aDogICAgICRnbG9iYWwtYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJGRlc2NyaXB0aW9uLWxpc3QtZGl2aWRlci10ZXJtLWJvcmRlcjogICAgICAgICAgICRnbG9iYWwtYm9yZGVyLWNvbG9yICFkZWZhdWx0O1xuXG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgQ29tcG9uZW50OiBEZXNjcmlwdGlvbiBsaXN0XG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLypcbiAqIFRlcm1cbiAqL1xuXG4uZmUtZGVzY3JpcHRpb24tbGlzdCA+IGR0IHtcbiAgY29sb3I6ICRkZXNjcmlwdGlvbi1saXN0LXRlcm0tY29sb3I7XG4gIGZvbnQtc2l6ZTogJGRlc2NyaXB0aW9uLWxpc3QtdGVybS1mb250LXNpemU7XG4gIGZvbnQtd2VpZ2h0OiAkZGVzY3JpcHRpb24tbGlzdC10ZXJtLWZvbnQtd2VpZ2h0O1xuICB0ZXh0LXRyYW5zZm9ybTogJGRlc2NyaXB0aW9uLWxpc3QtdGVybS10ZXh0LXRyYW5zZm9ybTtcbiAgQGlmKG1peGluLWV4aXN0cyhob29rLWRlc2NyaXB0aW9uLWxpc3QtdGVybSkpIHtAaW5jbHVkZSBob29rLWRlc2NyaXB0aW9uLWxpc3QtdGVybSgpO31cbn1cblxuLmZlLWRlc2NyaXB0aW9uLWxpc3QgPiBkdDpudGgtY2hpbGQobisyKSB7XG4gIG1hcmdpbi10b3A6ICRkZXNjcmlwdGlvbi1saXN0LXRlcm0tbWFyZ2luLXRvcDtcbn1cblxuLypcbiAqIERlc2NyaXB0aW9uXG4gKi9cblxuLmZlLWRlc2NyaXB0aW9uLWxpc3QgPiBkZCB7XG4gIEBpZihtaXhpbi1leGlzdHMoaG9vay1kZXNjcmlwdGlvbi1saXN0LWRlc2NyaXB0aW9uKSkge0BpbmNsdWRlIGhvb2stZGVzY3JpcHRpb24tbGlzdC1kZXNjcmlwdGlvbigpO31cbn1cblxuXG4vKiBTdHlsZSBtb2RpZmllclxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qXG4gKiBMaW5lXG4gKi9cblxuLmZlLWRlc2NyaXB0aW9uLWxpc3QtZGl2aWRlciA+IGR0Om50aC1jaGlsZChuKzIpIHtcbiAgbWFyZ2luLXRvcDogJGRlc2NyaXB0aW9uLWxpc3QtZGl2aWRlci10ZXJtLW1hcmdpbi10b3A7XG4gIHBhZGRpbmctdG9wOiAkZGVzY3JpcHRpb24tbGlzdC1kaXZpZGVyLXRlcm0tbWFyZ2luLXRvcDtcbiAgYm9yZGVyLXRvcDogJGRlc2NyaXB0aW9uLWxpc3QtZGl2aWRlci10ZXJtLWJvcmRlci13aWR0aCBzb2xpZCAkZGVzY3JpcHRpb24tbGlzdC1kaXZpZGVyLXRlcm0tYm9yZGVyO1xuICBAaWYobWl4aW4tZXhpc3RzKGhvb2stZGVzY3JpcHRpb24tbGlzdC1kaXZpZGVyLXRlcm0pKSB7QGluY2x1ZGUgaG9vay1kZXNjcmlwdGlvbi1saXN0LWRpdmlkZXItdGVybSgpO31cbn1cbiIsIi8vIE5hbWU6ICAgICAgICAgICAgRGl2aWRlclxuLy8gRGVzY3JpcHRpb246ICAgICBTdHlsZXMgZm9yIGRpdmlkZXJzXG4vL1xuLy8gQ29tcG9uZW50OiAgICAgICBgZmUtZGl2aWRlci1pY29uYFxuLy8gICAgICAgICAgICAgICAgICBgZmUtZGl2aWRlci1zbWFsbGBcbi8vICAgICAgICAgICAgICAgICAgYGZlLWRpdmlkZXItdmVydGljYWxgXG4vL1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cblxuLy8gVmFyaWFibGVzXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuJGRpdmlkZXItbWFyZ2luLXZlcnRpY2FsOiAgICAgICAgICAgICAgICAgICAgICAgICRnbG9iYWwtbWFyZ2luICFkZWZhdWx0O1xuXG4kZGl2aWRlci1pY29uLWNvbnRhaW5lci13aWR0aDogICAgICAgICAgICAgICAgICAgNTBweCAhZGVmYXVsdDtcbiRkaXZpZGVyLWljb24tY29udGFpbmVyLWhlaWdodDogICAgICAgICAgICAgICAgICAyMHB4ICFkZWZhdWx0O1xuJGRpdmlkZXItaWNvbi1zaXplOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDIwcHggIWRlZmF1bHQ7XG4kZGl2aWRlci1pY29uLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJGdsb2JhbC1ib3JkZXItY29sb3IgIWRlZmF1bHQ7XG4kZGl2aWRlci1pY29uLWxpbmUtdG9wOiAgICAgICAgICAgICAgICAgICAgICAgICAgNTAlICFkZWZhdWx0O1xuJGRpdmlkZXItaWNvbi1saW5lLXdpZHRoOiAgICAgICAgICAgICAgICAgICAgICAgIDEwMCUgIWRlZmF1bHQ7XG4kZGl2aWRlci1pY29uLWxpbmUtYm9yZGVyLXdpZHRoOiAgICAgICAgICAgICAgICAgJGdsb2JhbC1ib3JkZXItd2lkdGggIWRlZmF1bHQ7XG4kZGl2aWRlci1pY29uLWxpbmUtYm9yZGVyOiAgICAgICAgICAgICAgICAgICAgICAgJGdsb2JhbC1ib3JkZXItY29sb3IgIWRlZmF1bHQ7XG5cbiRpbnRlcm5hbC1kaXZpZGVyLWljb24taW1hZ2U6IFwiZGF0YTppbWFnZS9zdmcreG1sO2NoYXJzZXQ9VVRGLTgsJTNDc3ZnJTIwd2lkdGglM0QlMjIyMCUyMiUyMGhlaWdodCUzRCUyMjIwJTIyJTIwdmlld0JveCUzRCUyMjAlMjAwJTIwMjAlMjAyMCUyMiUyMHhtbG5zJTNEJTIyaHR0cCUzQSUyRiUyRnd3dy53My5vcmclMkYyMDAwJTJGc3ZnJTIyJTNFJTBBJTIwJTIwJTIwJTIwJTNDY2lyY2xlJTIwZmlsbCUzRCUyMm5vbmUlMjIlMjBzdHJva2UlM0QlMjIjMDAwJTIyJTIwc3Ryb2tlLXdpZHRoJTNEJTIyMiUyMiUyMGN4JTNEJTIyMTAlMjIlMjBjeSUzRCUyMjEwJTIyJTIwciUzRCUyMjclMjIlMjAlMkYlM0UlMEElM0MlMkZzdmclM0UlMEFcIiAhZGVmYXVsdDtcblxuJGRpdmlkZXItc21hbGwtd2lkdGg6ICAgICAgICAgICAgICAgICAgICAgICAgICAgIDEwMHB4ICFkZWZhdWx0O1xuJGRpdmlkZXItc21hbGwtYm9yZGVyLXdpZHRoOiAgICAgICAgICAgICAgICAgICAgICRnbG9iYWwtYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJGRpdmlkZXItc21hbGwtYm9yZGVyOiAgICAgICAgICAgICAgICAgICAgICAgICAgICRnbG9iYWwtYm9yZGVyLWNvbG9yICFkZWZhdWx0O1xuXG4kZGl2aWRlci12ZXJ0aWNhbC1oZWlnaHQ6ICAgICAgICAgICAgICAgICAgICAgICAgMTAwcHggIWRlZmF1bHQ7XG4kZGl2aWRlci12ZXJ0aWNhbC1ib3JkZXItd2lkdGg6ICAgICAgICAgICAgICAgICAgJGdsb2JhbC1ib3JkZXItd2lkdGggIWRlZmF1bHQ7XG4kZGl2aWRlci12ZXJ0aWNhbC1ib3JkZXI6ICAgICAgICAgICAgICAgICAgICAgICAgJGdsb2JhbC1ib3JkZXItY29sb3IgIWRlZmF1bHQ7XG5cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICBDb21wb25lbnQ6IERpdmlkZXJcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKlxuICogMS4gUmVzZXQgZGVmYXVsdCBgaHJgXG4gKiAyLiBTZXQgbWFyZ2luIGlmIGEgYGRpdmAgaXMgdXNlZCBmb3Igc2VtYW50aWNhbCByZWFzb25cbiAqL1xuXG5bY2xhc3MqPSdmZS1kaXZpZGVyJ10ge1xuICBib3JkZXI6IG5vbmU7XG4gIG1hcmdpbi1ib3R0b206ICRkaXZpZGVyLW1hcmdpbi12ZXJ0aWNhbDtcbn1cblxuLyogQWRkIG1hcmdpbiBpZiBhZGphY2VudCBlbGVtZW50ICovXG4qICsgW2NsYXNzKj0nZmUtZGl2aWRlciddIHsgbWFyZ2luLXRvcDogJGRpdmlkZXItbWFyZ2luLXZlcnRpY2FsOyB9XG5cblxuLyogSWNvblxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi5mZS1kaXZpZGVyLWljb24ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGhlaWdodDogJGRpdmlkZXItaWNvbi1jb250YWluZXItaGVpZ2h0O1xuICBAaW5jbHVkZSBzdmctZmlsbCgkaW50ZXJuYWwtZGl2aWRlci1pY29uLWltYWdlLCBcIiMwMDBcIiwgJGRpdmlkZXItaWNvbi1jb2xvcik7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IDUwJSA1MCU7XG4gIGJhY2tncm91bmQtc2l6ZTogJGRpdmlkZXItaWNvbi1zaXplO1xuICBAaWYobWl4aW4tZXhpc3RzKGhvb2stZGl2aWRlci1pY29uKSkge0BpbmNsdWRlIGhvb2stZGl2aWRlci1pY29uKCk7fVxufVxuXG4uZmUtZGl2aWRlci1pY29uOjpiZWZvcmUsXG4uZmUtZGl2aWRlci1pY29uOjphZnRlciB7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAkZGl2aWRlci1pY29uLWxpbmUtdG9wO1xuICBtYXgtd2lkdGg6IHVucXVvdGUoJ2NhbGMoNTAlIC0gKCN7JGRpdmlkZXItaWNvbi1jb250YWluZXItd2lkdGh9IC8gMikpJyk7XG4gIGJvcmRlci1ib3R0b206ICRkaXZpZGVyLWljb24tbGluZS1ib3JkZXItd2lkdGggc29saWQgJGRpdmlkZXItaWNvbi1saW5lLWJvcmRlcjtcbiAgQGlmKG1peGluLWV4aXN0cyhob29rLWRpdmlkZXItaWNvbi1saW5lKSkge0BpbmNsdWRlIGhvb2stZGl2aWRlci1pY29uLWxpbmUoKTt9XG59XG5cbi5mZS1kaXZpZGVyLWljb246OmJlZm9yZSB7XG4gIHJpZ2h0OiB1bnF1b3RlKCdjYWxjKDUwJSArICgjeyRkaXZpZGVyLWljb24tY29udGFpbmVyLXdpZHRofSAvIDIpKScpO1xuICB3aWR0aDogJGRpdmlkZXItaWNvbi1saW5lLXdpZHRoO1xuICBAaWYobWl4aW4tZXhpc3RzKGhvb2stZGl2aWRlci1pY29uLWxpbmUtbGVmdCkpIHtAaW5jbHVkZSBob29rLWRpdmlkZXItaWNvbi1saW5lLWxlZnQoKTt9XG59XG5cbi5mZS1kaXZpZGVyLWljb246OmFmdGVyIHtcbiAgbGVmdDogdW5xdW90ZSgnY2FsYyg1MCUgKyAoI3skZGl2aWRlci1pY29uLWNvbnRhaW5lci13aWR0aH0gLyAyKSknKTtcbiAgd2lkdGg6ICRkaXZpZGVyLWljb24tbGluZS13aWR0aDtcbiAgQGlmKG1peGluLWV4aXN0cyhob29rLWRpdmlkZXItaWNvbi1saW5lLXJpZ2h0KSkge0BpbmNsdWRlIGhvb2stZGl2aWRlci1pY29uLWxpbmUtcmlnaHQoKTt9XG59XG5cblxuLyogU21hbGxcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKlxuICogMS4gRml4IGhlaWdodCBiZWNhdXNlIG9mIGBpbmxpbmUtYmxvY2tgXG4gKiAyLiBVc2luZyA6OmFmdGVyIGFuZCBpbmxpbmUtYmxvY2sgdG8gbWFrZSBgdGV4dC1hbGlnbmAgd29ya1xuICovXG5cbi5mZS1kaXZpZGVyLXNtYWxsIHsgbGluZS1oZWlnaHQ6IDA7IH1cblxuLmZlLWRpdmlkZXItc21hbGw6OmFmdGVyIHtcbiAgY29udGVudDogXCJcIjtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB3aWR0aDogJGRpdmlkZXItc21hbGwtd2lkdGg7XG4gIG1heC13aWR0aDogMTAwJTtcbiAgYm9yZGVyLXRvcDogJGRpdmlkZXItc21hbGwtYm9yZGVyLXdpZHRoIHNvbGlkICRkaXZpZGVyLXNtYWxsLWJvcmRlcjtcbiAgdmVydGljYWwtYWxpZ246IHRvcDtcbiAgQGlmKG1peGluLWV4aXN0cyhob29rLWRpdmlkZXItc21hbGwpKSB7QGluY2x1ZGUgaG9vay1kaXZpZGVyLXNtYWxsKCk7fVxufVxuXG5cbi8qIFZlcnRpY2FsXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLmZlLWRpdmlkZXItdmVydGljYWwge1xuICB3aWR0aDogMXB4O1xuICBoZWlnaHQ6ICRkaXZpZGVyLXZlcnRpY2FsLWhlaWdodDtcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIG1hcmdpbi1yaWdodDogYXV0bztcbiAgYm9yZGVyLWxlZnQ6ICRkaXZpZGVyLXZlcnRpY2FsLWJvcmRlci13aWR0aCBzb2xpZCAkZGl2aWRlci12ZXJ0aWNhbC1ib3JkZXI7XG4gIEBpZihtaXhpbi1leGlzdHMoaG9vay1kaXZpZGVyLXZlcnRpY2FsKSkge0BpbmNsdWRlIGhvb2stZGl2aWRlci12ZXJ0aWNhbCgpO31cbn1cblxuXG4vLyBIb29rc1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbi8vIEBtaXhpbiBob29rLWRpdmlkZXItaWNvbigpe31cbi8vIEBtaXhpbiBob29rLWRpdmlkZXItaWNvbi1saW5lKCl7fVxuLy8gQG1peGluIGhvb2stZGl2aWRlci1pY29uLWxpbmUtbGVmdCgpe31cbi8vIEBtaXhpbiBob29rLWRpdmlkZXItaWNvbi1saW5lLXJpZ2h0KCl7fVxuLy8gQG1peGluIGhvb2stZGl2aWRlci1zbWFsbCgpe31cbi8vIEBtaXhpbiBob29rLWRpdmlkZXItdmVydGljYWwoKXt9XG4iLCIvL1xuLy8gTG9hZGVyOiBGb3JtXG4vL1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cblxuLy8gVmFyaWFibGVzXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuLmZlLWlucHV0LWNvbnRyb2x7XG5cdGlucHV0LCB0ZXh0YXJlYXtcblx0XHRmb250LXNpemU6IGZlZnMoc3RlcC0tMCk7XG5cdH1cbn1cblxuZmllbGRzZXR7XG5cdGRpc3BsYXk6IGZsZXg7XG5cdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG5cdHJvdy1nYXA6IGdldFNwYWNlKCdzJyk7XG5cdGJvcmRlcjogdW5zZXQ7XG5cdG1hcmdpbjogdW5zZXQ7XG5cdHBhZGRpbmc6IHVuc2V0O1xuXHRtYXJnaW4taW5saW5lLXN0YXJ0OiB1bnNldDtcblx0bWFyZ2luLWlubGluZS1lbmQ6IHVuc2V0O1xuXHRwYWRkaW5nLWJsb2NrLXN0YXJ0OiB1bnNldDtcblx0cGFkZGluZy1ibG9jay1lbmQ6IHVuc2V0O1xuXHRwYWRkaW5nLWlubGluZS1zdGFydDogdW5zZXQ7XG5cdHBhZGRpbmctaW5saW5lLWVuZDogdW5zZXQ7XG59XG5cbiIsIi8vIE5hbWU6ICAgICAgICAgICAgRm9ybVxuLy8gRGVzY3JpcHRpb246ICAgICBTdHlsZXMgZm9yIGZvcm1zXG4vL1xuLy8gQ29tcG9uZW50OiAgICAgICBgZmUtaW5wdXRgXG4vLyAgICAgICAgICAgICAgICAgIGBmZS1zZWxlY3RgXG4vLyAgICAgICAgICAgICAgICAgIGBmZS10ZXh0YXJlYWBcbi8vICAgICAgICAgICAgICAgICAgYGZlLXJhZGlvYFxuLy8gICAgICAgICAgICAgICAgICBgZmUtY2hlY2tib3hgXG4vLyAgICAgICAgICAgICAgICAgIGBmZS1maWVsZHNldGBcbi8vXG4vLyBTdWItb2JqZWN0czogICAgIGBmZS1mb3JtLWxhYmVsYFxuLy8gICAgICAgICAgICAgICAgICBgZmUtZm9ybS1pY29uYFxuLy8gICAgICAgICAgICAgICAgICBgZmUtZm9ybS1pY29uLWZsaXBgXG4vL1xuLy8gTW9kaWZpZXJzOiAgICAgICBgZmUtZm9ybS1kYW5nZXJgXG4vLyAgICAgICAgICAgICAgICAgIGBmZS1mb3JtLXN1Y2Nlc3NgXG4vLyAgICAgICAgICAgICAgICAgIGBmZS1mb3JtLWNvbnRyb2xzLXRleHRgXG4vL1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4vLyBWYXJpYWJsZXNcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4kZm9ybS1mb250LXNpemU6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJGdsb2JhbC1mb250LXNpemUgIWRlZmF1bHQ7XG4kZm9ybS1mb250LXdlaWdodDogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgNDAwICFkZWZhdWx0O1xuJGZvcm0tZm9udC1mYW1pbHk6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICRnbG9iYWwtZm9udC1mYW1pbHkgIWRlZmF1bHQ7XG5cbiRmb3JtLWhlaWdodDogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkZ2xvYmFsLWNvbnRyb2wtaGVpZ2h0ICFkZWZhdWx0O1xuJGZvcm0tbGluZS1oZWlnaHQ6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICRmb3JtLWhlaWdodCAhZGVmYXVsdDtcbiRmb3JtLWxpbmUtZ2FwOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2YXIoLS1zcGFjZS1zbWFsbCkgIWRlZmF1bHQ7XG4kZm9ybS1wYWRkaW5nLWhvcml6b250YWw6ICAgICAgICAgICAgICAgICAgICAgICAgMTBweCAhZGVmYXVsdDtcbiRmb3JtLXBhZGRpbmctdmVydGljYWw6ICAgICAgICAgICAgICAgICAgICAgICAgICAkZm9ybS1wYWRkaW5nLWhvcml6b250YWwgIWRlZmF1bHQ7XG5cbiRmb3JtLWJvcmRlci13aWR0aDogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkZ2xvYmFsLWJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiRmb3JtLWJvcmRlci1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkZ2xvYmFsLWNvbG9yICFkZWZhdWx0O1xuXG4kZm9ybS1iYWNrZ3JvdW5kOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJGdsb2JhbC1tdXRlZC1iYWNrZ3JvdW5kICFkZWZhdWx0O1xuJGZvcm0tY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICRnbG9iYWwtY29sb3IgIWRlZmF1bHQ7XG5cbiRmb3JtLWZvY3VzLWJhY2tncm91bmQ6ICAgICAgICAgICAgICAgICAgICAgICAgICBkYXJrZW4oJGZvcm0tYmFja2dyb3VuZCwgNSUpICFkZWZhdWx0O1xuJGZvcm0tZm9jdXMtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICRnbG9iYWwtY29sb3IgIWRlZmF1bHQ7XG4kZm9ybS1mb2N1cy1ib3JkZXI6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJGdsb2JhbC1wcmltYXJ5LWJhY2tncm91bmQgIWRlZmF1bHQ7XG5cbiRmb3JtLWRpc2FibGVkLWJhY2tncm91bmQ6ICAgICAgICAgICAgICAgICAgICAgICAkZ2xvYmFsLW11dGVkLWJhY2tncm91bmQgIWRlZmF1bHQ7XG4kZm9ybS1kaXNhYmxlZC1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICAgICAgJGdsb2JhbC1tdXRlZC1jb2xvciAhZGVmYXVsdDtcbiRmb3JtLWRpc2FibGVkLWJvcmRlcjogICAgICAgICAgICAgICAgICAgICAgICAgICAkZ2xvYmFsLWNvbG9yICFkZWZhdWx0O1xuXG4kZm9ybS1wbGFjZWhvbGRlci1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICAgJGdsb2JhbC1tdXRlZC1jb2xvciAhZGVmYXVsdDtcbiRmb3JtLXBsYWNlaG9sZGVyLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgICAgICAkZm9ybS1mb250LXNpemUgIWRlZmF1bHQ7XG4kZm9ybS1wbGFjZWhvbGRlci1mb250LXdlaWdodDogICAgICAgICAgICAgICAgICAgJGZvcm0tZm9udC13ZWlnaHQgIWRlZmF1bHQ7XG4kZm9ybS1wbGFjZWhvbGRlci1mb250LWZhbWlseTogICAgICAgICAgICAgICAgICAgJGZvcm0tZm9udC1mYW1pbHkgIWRlZmF1bHQ7XG5cbiRmb3JtLWRhbmdlci1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkZ2xvYmFsLWRhbmdlci1iYWNrZ3JvdW5kICFkZWZhdWx0O1xuJGZvcm0tZGFuZ2VyLWJvcmRlcjogICAgICAgICAgICAgICAgICAgICAgICAgICAgICRnbG9iYWwtZGFuZ2VyLWJhY2tncm91bmQgIWRlZmF1bHQ7XG4kZm9ybS1zdWNjZXNzLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJGdsb2JhbC1zdWNjZXNzLWJhY2tncm91bmQgIWRlZmF1bHQ7XG4kZm9ybS1zdWNjZXNzLWJvcmRlcjogICAgICAgICAgICAgICAgICAgICAgICAgICAgJGdsb2JhbC1zdWNjZXNzLWJhY2tncm91bmQgIWRlZmF1bHQ7XG5cbiRmb3JtLXNlbGVjdC1wYWRkaW5nLXJpZ2h0OiAgICAgICAgICAgICAgICAgICAgICAyMHB4ICFkZWZhdWx0O1xuJGZvcm0tc2VsZWN0LWljb24tY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgICRnbG9iYWwtY29sb3IgIWRlZmF1bHQ7XG4kZm9ybS1zZWxlY3Qtb3B0aW9uLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgJGdsb2JhbC1jb2xvciAhZGVmYXVsdDtcbiRmb3JtLXNlbGVjdC1kaXNhYmxlZC1pY29uLWNvbG9yOiAgICAgICAgICAgICAgICAkZ2xvYmFsLW11dGVkLWNvbG9yICFkZWZhdWx0O1xuXG4kZm9ybS1kYXRhbGlzdC1wYWRkaW5nLXJpZ2h0OiAgICAgICAgICAgICAgICAgICAgMjBweCAhZGVmYXVsdDtcbiRmb3JtLWRhdGFsaXN0LWljb24tY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAkZ2xvYmFsLWNvbG9yICFkZWZhdWx0O1xuXG4kZm9ybS1yYWRpby1zaXplOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMTZweCAhZGVmYXVsdDtcbiRmb3JtLXJhZGlvLW1hcmdpbi10b3A6ICAgICAgICAgICAgICAgICAgICAgICAgICAtNHB4ICFkZWZhdWx0O1xuJGZvcm0tcmFkaW8tYmFja2dyb3VuZDogICAgICAgICAgICAgICAgICAgICAgICAgIGRhcmtlbigkZ2xvYmFsLW11dGVkLWJhY2tncm91bmQsIDUlKSAhZGVmYXVsdDtcbiRmb3JtLXJhZGlvLWJvcmRlci13aWR0aDogICAgICAgICAgICAgICAgICAgICAgICAkZ2xvYmFsLWJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiRmb3JtLXJhZGlvLWJvcmRlcjogICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkYXJrZW4oJGdsb2JhbC1jb2xvciwgMTAlKSAhZGVmYXVsdDtcblxuJGZvcm0tcmFkaW8tZm9jdXMtYmFja2dyb3VuZDogICAgICAgICAgICAgICAgICAgIGRhcmtlbigkZm9ybS1yYWRpby1iYWNrZ3JvdW5kLCA1JSkgIWRlZmF1bHQ7XG4kZm9ybS1yYWRpby1mb2N1cy1ib3JkZXI6ICAgICAgICAgICAgICAgICAgICAgICAgJGdsb2JhbC1wcmltYXJ5LWJhY2tncm91bmQgIWRlZmF1bHQ7XG5cbiRmb3JtLXJhZGlvLWNoZWNrZWQtYmFja2dyb3VuZDogICAgICAgICAgICAgICAgICAkZ2xvYmFsLXByaW1hcnktYmFja2dyb3VuZCAhZGVmYXVsdDtcbiRmb3JtLXJhZGlvLWNoZWNrZWQtaWNvbi1jb2xvcjogICAgICAgICAgICAgICAgICAkZ2xvYmFsLWludmVyc2UtY29sb3IgIWRlZmF1bHQ7XG4kZm9ybS1yYWRpby1jaGVja2VkLWJvcmRlcjogICAgICAgICAgICAgICAgICAgICAgdHJhbnNwYXJlbnQgIWRlZmF1bHQ7XG5cbiRmb3JtLXJhZGlvLWNoZWNrZWQtZm9jdXMtYmFja2dyb3VuZDogICAgICAgICAgICBkYXJrZW4oJGdsb2JhbC1wcmltYXJ5LWJhY2tncm91bmQsIDEwJSkgIWRlZmF1bHQ7XG5cbiRmb3JtLXJhZGlvLWRpc2FibGVkLWJhY2tncm91bmQ6ICAgICAgICAgICAgICAgICAkZ2xvYmFsLW11dGVkLWJhY2tncm91bmQgIWRlZmF1bHQ7XG4kZm9ybS1yYWRpby1kaXNhYmxlZC1pY29uLWNvbG9yOiAgICAgICAgICAgICAgICAgJGdsb2JhbC1tdXRlZC1jb2xvciAhZGVmYXVsdDtcbiRmb3JtLXJhZGlvLWRpc2FibGVkLWJvcmRlcjogICAgICAgICAgICAgICAgICAgICAkZ2xvYmFsLWNvbG9yICFkZWZhdWx0O1xuXG4kZm9ybS1sYWJlbC1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJGZvcm0tY29sb3IgIWRlZmF1bHQ7XG4kZm9ybS1sYWJlbC1mb250LXNpemU6ICAgICAgICAgICAgICAgICAgICAgICAgICAgJGdsb2JhbC1mb250LXNpemUgIWRlZmF1bHQ7XG4kZm9ybS1sYWJlbC1mb250LXdlaWdodDogICAgICAgICAgICAgICAgICAgICAgICAgNDAwICFkZWZhdWx0O1xuJGZvcm0tbGFiZWwtbGluZS1oZWlnaHQ6ICAgICAgICAgICAgICAgICAgICAgICAgIDEuNCAhZGVmYXVsdDtcblxuJGZvcm0taWNvbi13aWR0aDogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICRmb3JtLWhlaWdodCAhZGVmYXVsdDtcbiRmb3JtLWljb24tY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkZ2xvYmFsLW11dGVkLWNvbG9yICFkZWZhdWx0O1xuJGZvcm0taWNvbi1ob3Zlci1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICAgICRnbG9iYWwtY29sb3IgIWRlZmF1bHQ7XG5cbiRpbnRlcm5hbC1mb3JtLXNlbGVjdC1pbWFnZTogXCJkYXRhOmltYWdlL3N2Zyt4bWw7Y2hhcnNldD1VVEYtOCwlM0NzdmclMjB3aWR0aCUzRCUyMjI0JTIyJTIwaGVpZ2h0JTNEJTIyMTYlMjIlMjB2aWV3Qm94JTNEJTIyMCUyMDAlMjAyNCUyMDE2JTIyJTIweG1sbnMlM0QlMjJodHRwJTNBJTJGJTJGd3d3LnczLm9yZyUyRjIwMDAlMkZzdmclMjIlM0UlMEElMjAlMjAlMjAlMjAlM0Nwb2x5Z29uJTIwZmlsbCUzRCUyMiMwMDAlMjIlMjBwb2ludHMlM0QlMjIxMiUyMDElMjA5JTIwNiUyMDE1JTIwNiUyMiUyMCUyRiUzRSUwQSUyMCUyMCUyMCUyMCUzQ3BvbHlnb24lMjBmaWxsJTNEJTIyIzAwMCUyMiUyMHBvaW50cyUzRCUyMjEyJTIwMTMlMjA5JTIwOCUyMDE1JTIwOCUyMiUyMCUyRiUzRSUwQSUzQyUyRnN2ZyUzRSUwQVwiICFkZWZhdWx0O1xuJGludGVybmFsLWZvcm0tZGF0YWxpc3QtaW1hZ2U6IFwiZGF0YTppbWFnZS9zdmcreG1sO2NoYXJzZXQ9VVRGLTgsJTNDc3ZnJTIwd2lkdGglM0QlMjIyNCUyMiUyMGhlaWdodCUzRCUyMjE2JTIyJTIwdmlld0JveCUzRCUyMjAlMjAwJTIwMjQlMjAxNiUyMiUyMHhtbG5zJTNEJTIyaHR0cCUzQSUyRiUyRnd3dy53My5vcmclMkYyMDAwJTJGc3ZnJTIyJTNFJTBBJTIwJTIwJTIwJTIwJTNDcG9seWdvbiUyMGZpbGwlM0QlMjIjMDAwJTIyJTIwcG9pbnRzJTNEJTIyMTIlMjAxMiUyMDglMjA2JTIwMTYlMjA2JTIyJTIwJTJGJTNFJTBBJTNDJTJGc3ZnJTNFJTBBXCIgIWRlZmF1bHQ7XG4kaW50ZXJuYWwtZm9ybS1yYWRpby1pbWFnZTogXCJkYXRhOmltYWdlL3N2Zyt4bWw7Y2hhcnNldD1VVEYtOCwlM0NzdmclMjB3aWR0aCUzRCUyMjE2JTIyJTIwaGVpZ2h0JTNEJTIyMTYlMjIlMjB2aWV3Qm94JTNEJTIyMCUyMDAlMjAxNiUyMDE2JTIyJTIweG1sbnMlM0QlMjJodHRwJTNBJTJGJTJGd3d3LnczLm9yZyUyRjIwMDAlMkZzdmclMjIlM0UlMEElMjAlMjAlMjAlMjAlM0NjaXJjbGUlMjBmaWxsJTNEJTIyIzAwMCUyMiUyMGN4JTNEJTIyOCUyMiUyMGN5JTNEJTIyOCUyMiUyMHIlM0QlMjIyJTIyJTIwJTJGJTNFJTBBJTNDJTJGc3ZnJTNFXCIgIWRlZmF1bHQ7XG4kaW50ZXJuYWwtZm9ybS1jaGVja2JveC1pbWFnZTogXCJkYXRhOmltYWdlL3N2Zyt4bWw7Y2hhcnNldD1VVEYtOCwlM0NzdmclMjB3aWR0aCUzRCUyMjE0JTIyJTIwaGVpZ2h0JTNEJTIyMTElMjIlMjB2aWV3Qm94JTNEJTIyMCUyMDAlMjAxNCUyMDExJTIyJTIweG1sbnMlM0QlMjJodHRwJTNBJTJGJTJGd3d3LnczLm9yZyUyRjIwMDAlMkZzdmclMjIlM0UlMEElMjAlMjAlMjAlMjAlM0Nwb2x5Z29uJTIwZmlsbCUzRCUyMiMwMDAlMjIlMjBwb2ludHMlM0QlMjIxMiUyMDElMjA1JTIwNy41JTIwMiUyMDUlMjAxJTIwNS41JTIwNSUyMDEwJTIwMTMlMjAxLjUlMjIlMjAlMkYlM0UlMEElM0MlMkZzdmclM0UlMEFcIiAhZGVmYXVsdDtcbiRpbnRlcm5hbC1mb3JtLWNoZWNrYm94LWluZGV0ZXJtaW5hdGUtaW1hZ2U6IFwiZGF0YTppbWFnZS9zdmcreG1sO2NoYXJzZXQ9VVRGLTgsJTNDc3ZnJTIwd2lkdGglM0QlMjIxNiUyMiUyMGhlaWdodCUzRCUyMjE2JTIyJTIwdmlld0JveCUzRCUyMjAlMjAwJTIwMTYlMjAxNiUyMiUyMHhtbG5zJTNEJTIyaHR0cCUzQSUyRiUyRnd3dy53My5vcmclMkYyMDAwJTJGc3ZnJTIyJTNFJTBBJTIwJTIwJTIwJTIwJTNDcmVjdCUyMGZpbGwlM0QlMjIjMDAwJTIyJTIweCUzRCUyMjMlMjIlMjB5JTNEJTIyOCUyMiUyMHdpZHRoJTNEJTIyMTAlMjIlMjBoZWlnaHQlM0QlMjIxJTIyJTIwJTJGJTNFJTBBJTNDJTJGc3ZnJTNFXCIgIWRlZmF1bHQ7XG5cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICBDb21wb25lbnQ6IEZvcm1cbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4uZmUtaW5wdXQsXG4uZmUtc2VsZWN0LFxuLmZlLXRleHRhcmVhLFxuLmZlLXJhZGlvLFxuLmZlLWNoZWNrYm94IHtcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgIG1hcmdpbjogMDtcbiAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgIGZvbnQ6IGluaGVyaXQ7XG59XG5cblxuLypcbiAqIFNob3cgdGhlIG92ZXJmbG93IGluIEVkZ2UuXG4gKi9cblxuLmZlLWlucHV0IHsgb3ZlcmZsb3c6IHZpc2libGU7IH1cblxuLypcbiAqIFJlbW92ZSB0aGUgaW5oZXJpdGFuY2Ugb2YgdGV4dCB0cmFuc2Zvcm0gaW4gRmlyZWZveC5cbiAqL1xuXG4uZmUtc2VsZWN0IHsgdGV4dC10cmFuc2Zvcm06IG5vbmU7IH1cblxuLypcbiAqIDEuIENoYW5nZSBmb250IHByb3BlcnRpZXMgdG8gYGluaGVyaXRgIGluIGFsbCBicm93c2Vyc1xuICogMi4gRG9uJ3QgaW5oZXJpdCB0aGUgYGZvbnQtd2VpZ2h0YCBhbmQgdXNlIGBib2xkYCBpbnN0ZWFkLlxuICogTk9URTogQm90aCBkZWNsYXJhdGlvbnMgZG9uJ3Qgd29yayBpbiBDaHJvbWUsIFNhZmFyaSBhbmQgT3BlcmEuXG4gKi9cblxuLmZlLXNlbGVjdCBvcHRncm91cCB7XG4gICAgZm9udDogaW5oZXJpdDtcbiAgICBmb250LXdlaWdodDogYm9sZDtcbn1cblxuLypcbiAqIFJlbW92ZSB0aGUgZGVmYXVsdCB2ZXJ0aWNhbCBzY3JvbGxiYXIgaW4gSUUgMTArLlxuICovXG5cbi5mZS10ZXh0YXJlYSB7IG92ZXJmbG93OiBhdXRvOyB9XG5cbi8qXG4gKiBSZW1vdmUgdGhlIGlubmVyIHBhZGRpbmcgYW5kIGNhbmNlbCBidXR0b25zIGluIENocm9tZSBvbiBPUyBYIGFuZCBTYWZhcmkgb24gT1MgWC5cbiAqL1xuXG4uZmUtaW5wdXRbdHlwZT1cInNlYXJjaFwiXTo6LXdlYmtpdC1zZWFyY2gtY2FuY2VsLWJ1dHRvbixcbi5mZS1pbnB1dFt0eXBlPVwic2VhcmNoXCJdOjotd2Via2l0LXNlYXJjaC1kZWNvcmF0aW9uIHsgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lOyB9XG5cblxuLypcbiAqIENvcnJlY3QgdGhlIGN1cnNvciBzdHlsZSBvZiBpbmNyZW1lbnQgYW5kIGRlY3JlbWVudCBidXR0b25zIGluIENocm9tZS5cbiAqL1xuXG4uZmUtaW5wdXRbdHlwZT1cIm51bWJlclwiXTo6LXdlYmtpdC1pbm5lci1zcGluLWJ1dHRvbixcbi5mZS1pbnB1dFt0eXBlPVwibnVtYmVyXCJdOjotd2Via2l0LW91dGVyLXNwaW4tYnV0dG9uIHsgaGVpZ2h0OiBhdXRvOyB9XG5cbi8qXG4gKiBSZW1vdmVzIHBsYWNlaG9sZGVyIHRyYW5zcGFyZW5jeSBpbiBGaXJlZm94LlxuICovXG5cbi5mZS1pbnB1dDo6LW1vei1wbGFjZWhvbGRlcixcbi5mZS10ZXh0YXJlYTo6LW1vei1wbGFjZWhvbGRlciB7IG9wYWNpdHk6IDE7IH1cblxuLypcbiAqIEltcHJvdmVzIGNvbnNpc3RlbmN5IG9mIGN1cnNvciBzdHlsZSBmb3IgY2xpY2thYmxlIGVsZW1lbnRzXG4gKi9cblxuLmZlLXJhZGlvOm5vdCg6ZGlzYWJsZWQpLFxuLmZlLWNoZWNrYm94Om5vdCg6ZGlzYWJsZWQpIHsgY3Vyc29yOiBwb2ludGVyOyB9XG5cbi8qXG4gKiBEZWZpbmUgY29uc2lzdGVudCBib3JkZXIsIG1hcmdpbiwgYW5kIHBhZGRpbmcuXG4gKi9cblxuLmZlLWZpZWxkc2V0IHtcbiAgICBib3JkZXI6IG5vbmU7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDA7XG59XG5cblxuLyogSW5wdXQsIHNlbGVjdCBhbmQgdGV4dGFyZWFcbiAqIEFsbG93ZWQ6IGB0ZXh0YCwgYHBhc3N3b3JkYCwgYGRhdGV0aW1lYCwgYGRhdGV0aW1lLWxvY2FsYCwgYGRhdGVgLCAgYG1vbnRoYCxcbiAgICAgICAgICAgIGB0aW1lYCwgYHdlZWtgLCBgbnVtYmVyYCwgYGVtYWlsYCwgYHVybGAsIGBzZWFyY2hgLCBgdGVsYCwgYGNvbG9yYFxuICogRGlzYWxsb3dlZDogYHJhbmdlYCwgYHJhZGlvYCwgYGNoZWNrYm94YCwgYGZpbGVgLCBgc3VibWl0YCwgYHJlc2V0YCBhbmQgYGltYWdlYFxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qXG4gKiBSZW1vdmUgZGVmYXVsdCBzdHlsZSBpbiBpT1MuXG4gKi9cblxuLmZlLWlucHV0LFxuLmZlLXRleHRhcmVhIHsgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lOyB9XG5cbi5mZS10ZXh0YXJlYSB7XG4gICAgcmVzaXplOiB2ZXJ0aWNhbDtcbiAgICBtaW4taGVpZ2h0OiAoJGZvcm0taGVpZ2h0ICogMik7XG59XG5cbi5mZS1pbnB1dCxcbi5mZS1zZWxlY3QsXG4uZmUtdGV4dGFyZWEge1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBwYWRkaW5nOiAwICRmb3JtLXBhZGRpbmctaG9yaXpvbnRhbDtcbiAgICBiYWNrZ3JvdW5kOiAkZm9ybS1iYWNrZ3JvdW5kO1xuICAgIGNvbG9yOiAkZm9ybS1jb2xvcjtcbiAgICBmb250LXNpemU6ICRmb3JtLWZvbnQtc2l6ZTtcbiAgICBmb250LXdlaWdodDogJGZvcm0tZm9udC13ZWlnaHQ7XG4gICAgZm9udC1mYW1pbHk6ICRmb3JtLWZvbnQtZmFtaWx5O1xuICAgIG1hcmdpbi10b3A6ICRmb3JtLWxpbmUtZ2FwO1xuICAgIGJvcmRlcjogJGZvcm0tYm9yZGVyLXdpZHRoIHNvbGlkICRmb3JtLWJvcmRlci1jb2xvcjtcbiAgICB0cmFuc2l0aW9uOiAwLjJzIGVhc2UtaW4tb3V0O1xuICAgIHRyYW5zaXRpb24tcHJvcGVydHk6IGNvbG9yLCBiYWNrZ3JvdW5kLWNvbG9yLCBib3JkZXI7XG4gICAgQGlmKG1peGluLWV4aXN0cyhob29rLWZvcm0pKSB7QGluY2x1ZGUgaG9vay1mb3JtKCk7fVxufVxuXG4vKlxuICogU2luZ2xlLWxpbmVcbiAqIDEuIEFsbG93IGFueSBlbGVtZW50IHRvIGxvb2sgbGlrZSBhbiBgaW5wdXRgIG9yIGBzZWxlY3RgIGVsZW1lbnRcbiAqIDIuIE1ha2Ugc3VyZSBsaW5lLWhlaWdodCBpcyBub3QgbGFyZ2VyIHRoYW4gaGVpZ2h0XG4gKiAgICBBbHNvIG5lZWRlZCB0byBjZW50ZXIgdGhlIHRleHQgdmVydGljYWxseVxuICovXG5cbi5mZS1pbnB1dCxcbi5mZS1zZWxlY3Q6bm90KFttdWx0aXBsZV0pOm5vdChbc2l6ZV0pIHtcbiAgICBoZWlnaHQ6ICRmb3JtLWhlaWdodDtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2stZm9ybS1zaW5nbGUtbGluZSkpIHtAaW5jbHVkZSBob29rLWZvcm0tc2luZ2xlLWxpbmUoKTt9XG59XG5cbi8qIDIgKi9cbi5mZS1pbnB1dDpub3QoaW5wdXQpLFxuLmZlLXNlbGVjdDpub3Qoc2VsZWN0KSB7IGxpbmUtaGVpZ2h0OiAkZm9ybS1saW5lLWhlaWdodDsgfVxuXG4vKlxuICogTXVsdGktbGluZVxuICovXG5cbi5mZS1zZWxlY3RbbXVsdGlwbGVdLFxuLmZlLXNlbGVjdFtzaXplXSxcbi5mZS10ZXh0YXJlYSB7XG4gICAgcGFkZGluZy10b3A6ICRmb3JtLXBhZGRpbmctdmVydGljYWw7XG4gICAgcGFkZGluZy1ib3R0b206ICRmb3JtLXBhZGRpbmctdmVydGljYWw7XG4gICAgdmVydGljYWwtYWxpZ246IHRvcDtcbiAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2stZm9ybS1tdWx0aS1saW5lKSkge0BpbmNsdWRlIGhvb2stZm9ybS1tdWx0aS1saW5lKCk7fVxufVxuXG4uZmUtc2VsZWN0W211bHRpcGxlXSxcbi5mZS1zZWxlY3Rbc2l6ZV0geyByZXNpemU6IHZlcnRpY2FsOyB9XG5cbi8qIEZvY3VzICovXG4uZmUtaW5wdXQ6Zm9jdXMsXG4uZmUtc2VsZWN0OmZvY3VzLFxuLmZlLXRleHRhcmVhOmZvY3VzIHtcbiAgICBvdXRsaW5lOiBub25lO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRmb3JtLWZvY3VzLWJhY2tncm91bmQ7XG4gICAgY29sb3I6ICRmb3JtLWZvY3VzLWNvbG9yO1xuICAgIGJvcmRlci1jb2xvcjogJGZvcm0tZm9jdXMtYm9yZGVyO1xuICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1mb3JtLWZvY3VzKSkge0BpbmNsdWRlIGhvb2stZm9ybS1mb2N1cygpO31cbn1cblxuLyogRGlzYWJsZWQgKi9cbi5mZS1pbnB1dDpkaXNhYmxlZCxcbi5mZS1zZWxlY3Q6ZGlzYWJsZWQsXG4uZmUtdGV4dGFyZWE6ZGlzYWJsZWQge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRmb3JtLWRpc2FibGVkLWJhY2tncm91bmQ7XG4gICAgY29sb3I6ICRmb3JtLWRpc2FibGVkLWNvbG9yO1xuICAgIGJvcmRlci1jb2xvcjogJGZvcm0tZGlzYWJsZWQtYm9yZGVyO1xuICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1mb3JtLWRpc2FibGVkKSkge0BpbmNsdWRlIGhvb2stZm9ybS1kaXNhYmxlZCgpO31cbn1cblxuLypcbiAqIFBsYWNlaG9sZGVyXG4gKi9cblxuLmZlLWlucHV0OjotbXMtaW5wdXQtcGxhY2Vob2xkZXIge1xuICAgIGNvbG9yOiAkZm9ybS1wbGFjZWhvbGRlci1jb2xvciAhaW1wb3J0YW50O1xuICAgIGZvbnQtc2l6ZTogJGZvcm0tcGxhY2Vob2xkZXItZm9udC1zaXplO1xuICAgIGZvbnQtd2VpZ2h0OiAkZm9ybS1wbGFjZWhvbGRlci1mb250LXdlaWdodDtcbiAgICBmb250LWZhbWlseTogJGZvcm0tcGxhY2Vob2xkZXItZm9udC1mYW1pbHk7XG59XG4uZmUtaW5wdXQ6OnBsYWNlaG9sZGVyIHtcbiAgICBjb2xvcjogJGZvcm0tcGxhY2Vob2xkZXItY29sb3I7XG4gICAgZm9udC1zaXplOiAkZm9ybS1wbGFjZWhvbGRlci1mb250LXNpemU7XG4gICAgZm9udC13ZWlnaHQ6ICRmb3JtLXBsYWNlaG9sZGVyLWZvbnQtd2VpZ2h0O1xuICAgIGZvbnQtZmFtaWx5OiAkZm9ybS1wbGFjZWhvbGRlci1mb250LWZhbWlseTtcbn1cblxuLmZlLXRleHRhcmVhOjotbXMtaW5wdXQtcGxhY2Vob2xkZXIge1xuICAgIGNvbG9yOiAkZm9ybS1wbGFjZWhvbGRlci1jb2xvciAhaW1wb3J0YW50O1xuICAgIGZvbnQtc2l6ZTogJGZvcm0tcGxhY2Vob2xkZXItZm9udC1zaXplO1xuICAgIGZvbnQtd2VpZ2h0OiAkZm9ybS1wbGFjZWhvbGRlci1mb250LXdlaWdodDtcbiAgICBmb250LWZhbWlseTogJGZvcm0tcGxhY2Vob2xkZXItZm9udC1mYW1pbHk7XG59XG4uZmUtdGV4dGFyZWE6OnBsYWNlaG9sZGVyIHtcbiAgICBjb2xvcjogJGZvcm0tcGxhY2Vob2xkZXItY29sb3I7XG4gICAgZm9udC1zaXplOiAkZm9ybS1wbGFjZWhvbGRlci1mb250LXNpemU7XG4gICAgZm9udC13ZWlnaHQ6ICRmb3JtLXBsYWNlaG9sZGVyLWZvbnQtd2VpZ2h0O1xuICAgIGZvbnQtZmFtaWx5OiAkZm9ybS1wbGFjZWhvbGRlci1mb250LWZhbWlseTtcbn1cblxuXG4vKiBTdHlsZSBtb2RpZmllciAoYGZlLWlucHV0YCwgYGZlLXNlbGVjdGAgYW5kIGBmZS10ZXh0YXJlYWApXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLypcbiAqIEVycm9yXG4gKi9cblxuLmZlLWZvcm0tZGFuZ2VyLFxuLmZlLWZvcm0tZGFuZ2VyOmZvY3VzIHtcbiAgICBjb2xvcjogJGZvcm0tZGFuZ2VyLWNvbG9yO1xuICAgIGJvcmRlci1jb2xvcjogJGZvcm0tZGFuZ2VyLWJvcmRlcjtcbiAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2stZm9ybS1kYW5nZXIpKSB7QGluY2x1ZGUgaG9vay1mb3JtLWRhbmdlcigpO31cbn1cblxuLypcbiAqIFN1Y2Nlc3NcbiAqL1xuXG4uZmUtZm9ybS1zdWNjZXNzLFxuLmZlLWZvcm0tc3VjY2Vzczpmb2N1cyAge1xuICAgIGNvbG9yOiAkZm9ybS1zdWNjZXNzLWNvbG9yO1xuICAgIGJvcmRlci1jb2xvcjogJGZvcm0tc3VjY2Vzcy1ib3JkZXI7XG4gICAgQGlmKG1peGluLWV4aXN0cyhob29rLWZvcm0tc3VjY2VzcykpIHtAaW5jbHVkZSBob29rLWZvcm0tc3VjY2VzcygpO31cbn1cblxuLypcbiAqIEJsYW5rXG4gKi9cblxuLmZlLWZvcm0tYmxhbmsge1xuICAgIGJhY2tncm91bmQ6IG5vbmU7XG4gICAgQGlmKG1peGluLWV4aXN0cyhob29rLWZvcm0tYmxhbmspKSB7QGluY2x1ZGUgaG9vay1mb3JtLWJsYW5rKCk7fVxufVxuXG4uZmUtZm9ybS1ibGFuazpmb2N1cyB7XG4gICAgQGlmKG1peGluLWV4aXN0cyhob29rLWZvcm0tYmxhbmstZm9jdXMpKSB7QGluY2x1ZGUgaG9vay1mb3JtLWJsYW5rLWZvY3VzKCk7fVxufVxuXG4vKiBTZWxlY3RcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4uZmUtc2VsZWN0Om5vdChbbXVsdGlwbGVdKTpub3QoW3NpemVdKSB7XG4gICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xuICAgIC1tb3otYXBwZWFyYW5jZTogbm9uZTtcbiAgICBwYWRkaW5nLXJpZ2h0OiAkZm9ybS1zZWxlY3QtcGFkZGluZy1yaWdodDtcbiAgICBAaW5jbHVkZSBzdmctZmlsbCgkaW50ZXJuYWwtZm9ybS1zZWxlY3QtaW1hZ2UsIFwiIzAwMFwiLCAkZm9ybS1zZWxlY3QtaWNvbi1jb2xvcik7XG4gICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAxMDAlIDUwJTtcbn1cblxuLmZlLXNlbGVjdDpub3QoW211bHRpcGxlXSk6bm90KFtzaXplXSk6Oi1tcy1leHBhbmQgeyBkaXNwbGF5OiBub25lOyB9XG5cbi5mZS1zZWxlY3Q6bm90KFttdWx0aXBsZV0pOm5vdChbc2l6ZV0pIG9wdGlvbiB7IGNvbG9yOiAkZm9ybS1zZWxlY3Qtb3B0aW9uLWNvbG9yOyB9XG5cbi8qXG4gKiBEaXNhYmxlZFxuICovXG5cbi5mZS1zZWxlY3Q6bm90KFttdWx0aXBsZV0pOm5vdChbc2l6ZV0pOmRpc2FibGVkIHtcbiAgICBAaW5jbHVkZSBzdmctZmlsbCgkaW50ZXJuYWwtZm9ybS1zZWxlY3QtaW1hZ2UsIFwiIzAwMFwiLCAkZm9ybS1zZWxlY3QtZGlzYWJsZWQtaWNvbi1jb2xvcik7XG59XG5cblxuLyogRGF0YWxpc3RcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4uZmUtaW5wdXRbbGlzdF0ge1xuICAgIHBhZGRpbmctcmlnaHQ6ICRmb3JtLWRhdGFsaXN0LXBhZGRpbmctcmlnaHQ7XG4gICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAxMDAlIDUwJTtcbn1cblxuLmZlLWlucHV0W2xpc3RdOmhvdmVyLFxuLmZlLWlucHV0W2xpc3RdOmZvY3VzIHsgQGluY2x1ZGUgc3ZnLWZpbGwoJGludGVybmFsLWZvcm0tZGF0YWxpc3QtaW1hZ2UsIFwiIzAwMFwiLCAkZm9ybS1kYXRhbGlzdC1pY29uLWNvbG9yKTsgfVxuXG4uZmUtaW5wdXRbbGlzdF06Oi13ZWJraXQtY2FsZW5kYXItcGlja2VyLWluZGljYXRvciB7IGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfVxuXG5cbi8qIFJhZGlvIGFuZCBjaGVja2JveFxuICogTm90ZTogRG9lcyBub3Qgd29yayBpbiBJRTExXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLmZlLXJhZGlvLFxuLmZlLWNoZWNrYm94IHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgaGVpZ2h0OiAkZm9ybS1yYWRpby1zaXplO1xuICAgIHdpZHRoOiAkZm9ybS1yYWRpby1zaXplO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgbWFyZ2luLXRvcDogJGZvcm0tcmFkaW8tbWFyZ2luLXRvcDtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbiAgICAtbW96LWFwcGVhcmFuY2U6IG5vbmU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGZvcm0tcmFkaW8tYmFja2dyb3VuZDtcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IDUwJSA1MCU7XG4gICAgYm9yZGVyOiAkZm9ybS1yYWRpby1ib3JkZXItd2lkdGggc29saWQgJGZvcm0tcmFkaW8tYm9yZGVyO1xuICAgIHRyYW5zaXRpb246IDAuMnMgZWFzZS1pbi1vdXQ7XG4gICAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogYmFja2dyb3VuZC1jb2xvciwgYm9yZGVyO1xuICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1mb3JtLXJhZGlvKSkge0BpbmNsdWRlIGhvb2stZm9ybS1yYWRpbygpO31cbn1cblxuLmZlLXJhZGlvIHsgYm9yZGVyLXJhZGl1czogNTAlOyB9XG5cbi8qIEZvY3VzICovXG4uZmUtcmFkaW86Zm9jdXMsXG4uZmUtY2hlY2tib3g6Zm9jdXMge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRmb3JtLXJhZGlvLWZvY3VzLWJhY2tncm91bmQ7XG4gICAgb3V0bGluZTogbm9uZTtcbiAgICBib3JkZXItY29sb3I6ICRmb3JtLXJhZGlvLWZvY3VzLWJvcmRlcjtcbiAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2stZm9ybS1yYWRpby1mb2N1cykpIHtAaW5jbHVkZSBob29rLWZvcm0tcmFkaW8tZm9jdXMoKTt9XG59XG5cbi8qXG4gKiBDaGVja2VkXG4gKi9cblxuLmZlLXJhZGlvOmNoZWNrZWQsXG4uZmUtY2hlY2tib3g6Y2hlY2tlZCxcbi5mZS1jaGVja2JveDppbmRldGVybWluYXRlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZm9ybS1yYWRpby1jaGVja2VkLWJhY2tncm91bmQ7XG4gICAgYm9yZGVyLWNvbG9yOiAkZm9ybS1yYWRpby1jaGVja2VkLWJvcmRlcjtcbiAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2stZm9ybS1yYWRpby1jaGVja2VkKSkge0BpbmNsdWRlIGhvb2stZm9ybS1yYWRpby1jaGVja2VkKCk7fVxufVxuXG4vKiBGb2N1cyAqL1xuLmZlLXJhZGlvOmNoZWNrZWQ6Zm9jdXMsXG4uZmUtY2hlY2tib3g6Y2hlY2tlZDpmb2N1cyxcbi5mZS1jaGVja2JveDppbmRldGVybWluYXRlOmZvY3VzIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZm9ybS1yYWRpby1jaGVja2VkLWZvY3VzLWJhY2tncm91bmQ7XG4gICAgQGlmKG1peGluLWV4aXN0cyhob29rLWZvcm0tcmFkaW8tY2hlY2tlZC1mb2N1cykpIHtAaW5jbHVkZSBob29rLWZvcm0tcmFkaW8tY2hlY2tlZC1mb2N1cygpO31cbn1cblxuLypcbiAqIEljb25zXG4gKi9cblxuLmZlLXJhZGlvOmNoZWNrZWQgeyBAaW5jbHVkZSBzdmctZmlsbCgkaW50ZXJuYWwtZm9ybS1yYWRpby1pbWFnZSwgXCIjMDAwXCIsICRmb3JtLXJhZGlvLWNoZWNrZWQtaWNvbi1jb2xvcik7IH1cbi5mZS1jaGVja2JveDpjaGVja2VkIHsgQGluY2x1ZGUgc3ZnLWZpbGwoJGludGVybmFsLWZvcm0tY2hlY2tib3gtaW1hZ2UsIFwiIzAwMFwiLCAkZm9ybS1yYWRpby1jaGVja2VkLWljb24tY29sb3IpOyB9XG4uZmUtY2hlY2tib3g6aW5kZXRlcm1pbmF0ZSB7IEBpbmNsdWRlIHN2Zy1maWxsKCRpbnRlcm5hbC1mb3JtLWNoZWNrYm94LWluZGV0ZXJtaW5hdGUtaW1hZ2UsIFwiIzAwMFwiLCAkZm9ybS1yYWRpby1jaGVja2VkLWljb24tY29sb3IpOyB9XG5cbi8qXG4gKiBEaXNhYmxlZFxuICovXG5cbi5mZS1yYWRpbzpkaXNhYmxlZCxcbi5mZS1jaGVja2JveDpkaXNhYmxlZCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGZvcm0tcmFkaW8tZGlzYWJsZWQtYmFja2dyb3VuZDtcbiAgICBib3JkZXItY29sb3I6ICRmb3JtLXJhZGlvLWRpc2FibGVkLWJvcmRlcjtcbiAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2stZm9ybS1yYWRpby1kaXNhYmxlZCkpIHtAaW5jbHVkZSBob29rLWZvcm0tcmFkaW8tZGlzYWJsZWQoKTt9XG59XG5cbi5mZS1yYWRpbzpkaXNhYmxlZDpjaGVja2VkIHsgQGluY2x1ZGUgc3ZnLWZpbGwoJGludGVybmFsLWZvcm0tcmFkaW8taW1hZ2UsIFwiIzAwMFwiLCAkZm9ybS1yYWRpby1kaXNhYmxlZC1pY29uLWNvbG9yKTsgfVxuLmZlLWNoZWNrYm94OmRpc2FibGVkOmNoZWNrZWQgeyBAaW5jbHVkZSBzdmctZmlsbCgkaW50ZXJuYWwtZm9ybS1jaGVja2JveC1pbWFnZSwgXCIjMDAwXCIsICRmb3JtLXJhZGlvLWRpc2FibGVkLWljb24tY29sb3IpOyB9XG4uZmUtY2hlY2tib3g6ZGlzYWJsZWQ6aW5kZXRlcm1pbmF0ZSB7IEBpbmNsdWRlIHN2Zy1maWxsKCRpbnRlcm5hbC1mb3JtLWNoZWNrYm94LWluZGV0ZXJtaW5hdGUtaW1hZ2UsIFwiIzAwMFwiLCAkZm9ybS1yYWRpby1kaXNhYmxlZC1pY29uLWNvbG9yKTsgfVxuXG5cbi8qIExhYmVsXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLmZlLWZvcm0tbGFiZWwge1xuICAgIGZvbnQtc2l6ZTogJGZvcm0tbGFiZWwtZm9udC1zaXplO1xuICAgIGZvbnQtd2VpZ2h0OiAkZm9ybS1sYWJlbC1mb250LXdlaWdodDtcbiAgICBsaW5lLWhlaWdodDogJGZvcm0tbGFiZWwtbGluZS1oZWlnaHQ7XG4gICAgY29sb3I6ICRmb3JtLWxhYmVsLWNvbG9yO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG1hcmdpbi10b3A6ICRmb3JtLWxpbmUtZ2FwO1xuICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1mb3JtLWxhYmVsKSkge0BpbmNsdWRlIGhvb2stZm9ybS1sYWJlbCgpO31cblxuICAgIC8vLS0gZGVsZXRlIG1hcmdpbiBpZiBpbnB1dCBpcyBkaXJlY3RseSBhZnRlciBhIGxhYmVsXG4gICAgKyAuZmUtaW5wdXQsXG4gICAgKyAuZmUtc2VsZWN0LFxuICAgICsgLmZlLXRleHRhcmVhIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICB9XG59XG5cbi8qIFRPRE9cbi8qIEljb25zXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLmZlLWZvcm0taWNvbiB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBib3R0b206IDA7XG4gICAgbGVmdDogMDtcbiAgICB3aWR0aDogJGZvcm0taWNvbi13aWR0aDtcbiAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGNvbG9yOiAkZm9ybS1pY29uLWNvbG9yO1xufVxuXG4vKlxuICogUmVxdWlyZWQgZm9yIGBhYC5cbiAqL1xuXG4uZmUtZm9ybS1pY29uOmhvdmVyIHsgY29sb3I6ICRmb3JtLWljb24taG92ZXItY29sb3I7IH1cblxuLypcbiAqIE1ha2UgYGlucHV0YCBlbGVtZW50IGNsaWNrYWJsZSB0aHJvdWdoIGljb24sIGUuZy4gaWYgaXQncyBhIGBzcGFuYFxuICovXG5cbi5mZS1mb3JtLWljb246bm90KGEpOm5vdChidXR0b24pOm5vdChpbnB1dCkgeyBwb2ludGVyLWV2ZW50czogbm9uZTsgfVxuXG4vKlxuICogSW5wdXQgcGFkZGluZ1xuICovXG5cbi5mZS1mb3JtLWljb246bm90KC5mZS1mb3JtLWljb24tZmxpcCkgfiAuZmUtaW5wdXQgeyBwYWRkaW5nLWxlZnQ6ICRmb3JtLWljb24td2lkdGggIWltcG9ydGFudDsgfVxuXG4vKlxuICogUG9zaXRpb24gbW9kaWZpZXJcbiAqL1xuXG4uZmUtZm9ybS1pY29uLWZsaXAge1xuICAgIHJpZ2h0OiAwO1xuICAgIGxlZnQ6IGF1dG87XG59XG5cbi5mZS1mb3JtLWljb24tZmxpcCB+IC5mZS1pbnB1dCB7IHBhZGRpbmctcmlnaHQ6ICRmb3JtLWljb24td2lkdGggIWltcG9ydGFudDsgfSIsIi8vIE5hbWU6ICAgICAgICAgICAgSGVhZGluZ1xuLy8gRGVzY3JpcHRpb246ICAgICBTdHlsZXMgZm9yIGhlYWRpbmdzXG4vL1xuLy8gQ29tcG9uZW50OiAgICAgICBgZmUtaGVhZGluZy1zbWFsbGBcbi8vICAgICAgICAgICAgICAgICAgYGZlLWhlYWRpbmctbWVkaXVtYFxuLy8gICAgICAgICAgICAgICAgICBgZmUtaGVhZGluZy1sYXJnZWBcbi8vICAgICAgICAgICAgICAgICAgYGZlLWhlYWRpbmcteGxhcmdlYFxuLy8gICAgICAgICAgICAgICAgICBgZmUtaGVhZGluZy0yeGxhcmdlYFxuLy8gICAgICAgICAgICAgICAgICBgZmUtaGVhZGluZy1kaXZpZGVyYFxuLy8gICAgICAgICAgICAgICAgICBgZmUtaGVhZGluZy1idWxsZXRgXG4vLyAgICAgICAgICAgICAgICAgIGBmZS1oZWFkaW5nLWxpbmVgXG4vL1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cblxuLy8gVmFyaWFibGVzXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuJGhlYWRpbmctbWVkaXVtLWZvbnQtc2l6ZS1sOiAgICAgICAgICAgICAgICAgICAgIDRyZW0gIWRlZmF1bHQ7ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvLyA2NHB4XG4kaGVhZGluZy1sYXJnZS1mb250LXNpemUtbDogICAgICAgICAgICAgICAgICAgICAgNnJlbSAhZGVmYXVsdDsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vIDk2cHhcbiRoZWFkaW5nLXhsYXJnZS1mb250LXNpemUtbDogICAgICAgICAgICAgICAgICAgICA4cmVtICFkZWZhdWx0OyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLy8gMTI4cHhcbiRoZWFkaW5nLTJ4bGFyZ2UtZm9udC1zaXplLWw6ICAgICAgICAgICAgICAgICAgICAxMXJlbSAhZGVmYXVsdDsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLy8gMTc2cHhcblxuJGhlYWRpbmctc21hbGwtZm9udC1zaXplLW06ICAgICAgICAgICAgICAgICAgICAgICRoZWFkaW5nLW1lZGl1bS1mb250LXNpemUtbCAqIDAuODEyNSAhZGVmYXVsdDsgICAvLyAzLjI1cmVtIC8gNTJweFxuJGhlYWRpbmctbWVkaXVtLWZvbnQtc2l6ZS1tOiAgICAgICAgICAgICAgICAgICAgICRoZWFkaW5nLW1lZGl1bS1mb250LXNpemUtbCAqIDAuODc1ICFkZWZhdWx0OyAgICAvLyAzLjVyZW0gLyA1NnB4XG4kaGVhZGluZy1sYXJnZS1mb250LXNpemUtbTogICAgICAgICAgICAgICAgICAgICAgJGhlYWRpbmctbWVkaXVtLWZvbnQtc2l6ZS1sICFkZWZhdWx0OyAgICAgICAgICAgIC8vIDRyZW0gLyA2NHB4XG4kaGVhZGluZy14bGFyZ2UtZm9udC1zaXplLW06ICAgICAgICAgICAgICAgICAgICAgJGhlYWRpbmctbGFyZ2UtZm9udC1zaXplLWwgIWRlZmF1bHQ7ICAgICAgICAgICAgIC8vIDZyZW0gLyA5NnB4XG4kaGVhZGluZy0yeGxhcmdlLWZvbnQtc2l6ZS1tOiAgICAgICAgICAgICAgICAgICAgJGhlYWRpbmcteGxhcmdlLWZvbnQtc2l6ZS1sICFkZWZhdWx0OyAgICAgICAgICAgIC8vIDhyZW0gLyAxMjhweFxuXG4kaGVhZGluZy1zbWFsbC1mb250LXNpemU6ICAgICAgICAgICAgICAgICAgICAgICAgJGhlYWRpbmctc21hbGwtZm9udC1zaXplLW0gKiAwLjggIWRlZmF1bHQ7ICAgICAgLy8gMzhweCAwLjczXG4kaGVhZGluZy1tZWRpdW0tZm9udC1zaXplOiAgICAgICAgICAgICAgICAgICAgICAgJGhlYWRpbmctbWVkaXVtLWZvbnQtc2l6ZS1tICogMC44MjUgIWRlZmF1bHQ7ICAgICAvLyA0MHB4IDAuNzE0XG4kaGVhZGluZy1sYXJnZS1mb250LXNpemU6ICAgICAgICAgICAgICAgICAgICAgICAgJGhlYWRpbmctbGFyZ2UtZm9udC1zaXplLW0gKiAwLjg1ICFkZWZhdWx0OyAgICAgIC8vIDUwcHggMC43OFxuJGhlYWRpbmcteGxhcmdlLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgICAgICAgICRoZWFkaW5nLWxhcmdlLWZvbnQtc2l6ZS1tICFkZWZhdWx0OyAgICAgICAgICAgICAvLyA0cmVtIC8gNjRweFxuJGhlYWRpbmctMnhsYXJnZS1mb250LXNpemU6ICAgICAgICAgICAgICAgICAgICAgICRoZWFkaW5nLXhsYXJnZS1mb250LXNpemUtbSAhZGVmYXVsdDsgICAgICAgICAgICAvLyA2cmVtIC8gOTZweFxuXG4kaGVhZGluZy1zbWFsbC1saW5lLWhlaWdodDogICAgICAgICAgICAgICAgICAgICAgMS4yICFkZWZhdWx0O1xuJGhlYWRpbmctbWVkaXVtLWxpbmUtaGVpZ2h0OiAgICAgICAgICAgICAgICAgICAgIDEuMSAhZGVmYXVsdDtcbiRoZWFkaW5nLWxhcmdlLWxpbmUtaGVpZ2h0OiAgICAgICAgICAgICAgICAgICAgICAxLjEgIWRlZmF1bHQ7XG4kaGVhZGluZy14bGFyZ2UtbGluZS1oZWlnaHQ6ICAgICAgICAgICAgICAgICAgICAgMSAhZGVmYXVsdDtcbiRoZWFkaW5nLTJ4bGFyZ2UtbGluZS1oZWlnaHQ6ICAgICAgICAgICAgICAgICAgICAxICFkZWZhdWx0O1xuXG4kaGVhZGluZy1kaXZpZGVyLXBhZGRpbmctYm90dG9tOiAgICAgICAgICAgICAgICAgdW5xdW90ZSgnY2FsYyg1cHggKyAwLjFlbSknKSAhZGVmYXVsdDtcbiRoZWFkaW5nLWRpdmlkZXItYm9yZGVyLXdpZHRoOiAgICAgICAgICAgICAgICAgICB1bnF1b3RlKCdjYWxjKDAuMnB4ICsgMC4wNWVtKScpICFkZWZhdWx0O1xuJGhlYWRpbmctZGl2aWRlci1ib3JkZXI6ICAgICAgICAgICAgICAgICAgICAgICAgICRnbG9iYWwtYm9yZGVyLWNvbG9yICFkZWZhdWx0O1xuXG4kaGVhZGluZy1idWxsZXQtdG9wOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdW5xdW90ZSgnY2FsYygtMC4xICogMWVtKScpICFkZWZhdWx0O1xuJGhlYWRpbmctYnVsbGV0LWhlaWdodDogICAgICAgICAgICAgICAgICAgICAgICAgIHVucXVvdGUoJ2NhbGMoNHB4ICsgMC43ZW0pJykgIWRlZmF1bHQ7XG4kaGVhZGluZy1idWxsZXQtbWFyZ2luLXJpZ2h0OiAgICAgICAgICAgICAgICAgICAgdW5xdW90ZSgnY2FsYyg1cHggKyAwLjJlbSknKSAhZGVmYXVsdDtcbiRoZWFkaW5nLWJ1bGxldC1ib3JkZXItd2lkdGg6ICAgICAgICAgICAgICAgICAgICB1bnF1b3RlKCdjYWxjKDVweCArIDAuMWVtKScpICFkZWZhdWx0O1xuJGhlYWRpbmctYnVsbGV0LWJvcmRlcjogICAgICAgICAgICAgICAgICAgICAgICAgICRnbG9iYWwtYm9yZGVyLWNvbG9yICFkZWZhdWx0O1xuXG4kaGVhZGluZy1saW5lLXRvcDogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgNTAlICFkZWZhdWx0O1xuJGhlYWRpbmctbGluZS13aWR0aDogICAgICAgICAgICAgICAgICAgICAgICAgICAgIDIwMDBweCAhZGVmYXVsdDtcbiRoZWFkaW5nLWxpbmUtYm9yZGVyLXdpZHRoOiAgICAgICAgICAgICAgICAgICAgICB1bnF1b3RlKCdjYWxjKDAuMnB4ICsgMC4wNWVtKScpICFkZWZhdWx0O1xuJGhlYWRpbmctbGluZS1ib3JkZXI6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICRnbG9iYWwtYm9yZGVyLWNvbG9yICFkZWZhdWx0O1xuJGhlYWRpbmctbGluZS1oZWlnaHQ6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICRoZWFkaW5nLWxpbmUtYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJGhlYWRpbmctbGluZS1tYXJnaW4taG9yaXpvbnRhbDogICAgICAgICAgICAgICAgIHVucXVvdGUoJ2NhbGMoNXB4ICsgMC4zZW0pJykgIWRlZmF1bHQ7XG5cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICBDb21wb25lbnQ6IEhlYWRpbmdcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4uZmUtaGVhZGluZy1zbWFsbCB7XG4gIGZvbnQtc2l6ZTogJGhlYWRpbmctc21hbGwtZm9udC1zaXplO1xuICBsaW5lLWhlaWdodDogJGhlYWRpbmctc21hbGwtbGluZS1oZWlnaHQ7XG4gIEBpZihtaXhpbi1leGlzdHMoaG9vay1oZWFkaW5nLXNtYWxsKSkge0BpbmNsdWRlIGhvb2staGVhZGluZy1zbWFsbCgpO31cbn1cblxuLmZlLWhlYWRpbmctbWVkaXVtIHtcbiAgZm9udC1zaXplOiAkaGVhZGluZy1tZWRpdW0tZm9udC1zaXplO1xuICBsaW5lLWhlaWdodDogJGhlYWRpbmctbWVkaXVtLWxpbmUtaGVpZ2h0O1xuICBAaWYobWl4aW4tZXhpc3RzKGhvb2staGVhZGluZy1tZWRpdW0pKSB7QGluY2x1ZGUgaG9vay1oZWFkaW5nLW1lZGl1bSgpO31cbn1cblxuLmZlLWhlYWRpbmctbGFyZ2Uge1xuICBmb250LXNpemU6ICRoZWFkaW5nLWxhcmdlLWZvbnQtc2l6ZTtcbiAgbGluZS1oZWlnaHQ6ICRoZWFkaW5nLWxhcmdlLWxpbmUtaGVpZ2h0O1xuICBAaWYobWl4aW4tZXhpc3RzKGhvb2staGVhZGluZy1sYXJnZSkpIHtAaW5jbHVkZSBob29rLWhlYWRpbmctbGFyZ2UoKTt9XG59XG5cbi5mZS1oZWFkaW5nLXhsYXJnZSB7XG4gIGZvbnQtc2l6ZTogJGhlYWRpbmcteGxhcmdlLWZvbnQtc2l6ZTtcbiAgbGluZS1oZWlnaHQ6ICRoZWFkaW5nLXhsYXJnZS1saW5lLWhlaWdodDtcbiAgQGlmKG1peGluLWV4aXN0cyhob29rLWhlYWRpbmcteGxhcmdlKSkge0BpbmNsdWRlIGhvb2staGVhZGluZy14bGFyZ2UoKTt9XG59XG5cbi5mZS1oZWFkaW5nLTJ4bGFyZ2Uge1xuICBmb250LXNpemU6ICRoZWFkaW5nLTJ4bGFyZ2UtZm9udC1zaXplO1xuICBsaW5lLWhlaWdodDogJGhlYWRpbmctMnhsYXJnZS1saW5lLWhlaWdodDtcbiAgQGlmKG1peGluLWV4aXN0cyhob29rLWhlYWRpbmctMnhsYXJnZSkpIHtAaW5jbHVkZSBob29rLWhlYWRpbmctMnhsYXJnZSgpO31cbn1cblxuLyogVGFibGV0IExhbmRzY2FwZSBhbmQgYmlnZ2VyICovXG5AbWVkaWEgKG1pbi13aWR0aDogOTYwcHgpIHtcbiAgLmZlLWhlYWRpbmctc21hbGwgeyBmb250LXNpemU6ICRoZWFkaW5nLXNtYWxsLWZvbnQtc2l6ZS1tOyB9XG4gIC5mZS1oZWFkaW5nLW1lZGl1bSB7IGZvbnQtc2l6ZTogJGhlYWRpbmctbWVkaXVtLWZvbnQtc2l6ZS1tOyB9XG4gIC5mZS1oZWFkaW5nLWxhcmdlIHsgZm9udC1zaXplOiAkaGVhZGluZy1sYXJnZS1mb250LXNpemUtbTsgfVxuICAuZmUtaGVhZGluZy14bGFyZ2UgeyBmb250LXNpemU6ICRoZWFkaW5nLXhsYXJnZS1mb250LXNpemUtbTsgfVxuICAuZmUtaGVhZGluZy0yeGxhcmdlIHsgZm9udC1zaXplOiAkaGVhZGluZy0yeGxhcmdlLWZvbnQtc2l6ZS1tOyB9XG59XG5cbi8qIExhcHRvcCBhbmQgYmlnZ2VyICovXG5AbWVkaWEgKG1pbi13aWR0aDogMTIwMHB4KSB7XG4gIC5mZS1oZWFkaW5nLW1lZGl1bSB7IGZvbnQtc2l6ZTogJGhlYWRpbmctbWVkaXVtLWZvbnQtc2l6ZS1sOyB9XG4gIC5mZS1oZWFkaW5nLWxhcmdlIHsgZm9udC1zaXplOiAkaGVhZGluZy1sYXJnZS1mb250LXNpemUtbDsgfVxuICAuZmUtaGVhZGluZy14bGFyZ2UgeyBmb250LXNpemU6ICRoZWFkaW5nLXhsYXJnZS1mb250LXNpemUtbDsgfVxuICAuZmUtaGVhZGluZy0yeGxhcmdlIHsgZm9udC1zaXplOiAkaGVhZGluZy0yeGxhcmdlLWZvbnQtc2l6ZS1sOyB9XG59XG5cblxuLyogRGl2aWRlclxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi5mZS1oZWFkaW5nLWRpdmlkZXIge1xuICBwYWRkaW5nLWJvdHRvbTogJGhlYWRpbmctZGl2aWRlci1wYWRkaW5nLWJvdHRvbTtcbiAgYm9yZGVyLWJvdHRvbTogJGhlYWRpbmctZGl2aWRlci1ib3JkZXItd2lkdGggc29saWQgJGhlYWRpbmctZGl2aWRlci1ib3JkZXI7XG4gIEBpZihtaXhpbi1leGlzdHMoaG9vay1oZWFkaW5nLWRpdmlkZXIpKSB7QGluY2x1ZGUgaG9vay1oZWFkaW5nLWRpdmlkZXIoKTt9XG59XG5cblxuLyogQnVsbGV0XG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLmZlLWhlYWRpbmctYnVsbGV0IHsgcG9zaXRpb246IHJlbGF0aXZlOyB9XG5cbi8qXG4gKiAxLiBVc2luZyBgaW5saW5lLWJsb2NrYCB0byBtYWtlIGl0IHdvcmsgd2l0aCB0ZXh0IGFsaWdubWVudFxuICogMi4gQ2VudGVyIHZlcnRpY2FsbHlcbiAqIDMuIFN0eWxlXG4gKi9cblxuLmZlLWhlYWRpbmctYnVsbGV0OjpiZWZvcmUge1xuICBjb250ZW50OiBcIlwiO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdG9wOiAkaGVhZGluZy1idWxsZXQtdG9wO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICBoZWlnaHQ6ICRoZWFkaW5nLWJ1bGxldC1oZWlnaHQ7XG4gIG1hcmdpbi1yaWdodDogJGhlYWRpbmctYnVsbGV0LW1hcmdpbi1yaWdodDtcbiAgYm9yZGVyLWxlZnQ6ICRoZWFkaW5nLWJ1bGxldC1ib3JkZXItd2lkdGggc29saWQgJGhlYWRpbmctYnVsbGV0LWJvcmRlcjtcbiAgQGlmKG1peGluLWV4aXN0cyhob29rLWhlYWRpbmctYnVsbGV0KSkge0BpbmNsdWRlIGhvb2staGVhZGluZy1idWxsZXQoKTt9XG59XG5cblxuLyogTGluZVxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qXG4gKiBDbGlwIHRoZSBjaGlsZCBlbGVtZW50XG4gKi9cblxuLmZlLWhlYWRpbmctbGluZSB7IG92ZXJmbG93OiBoaWRkZW47IH1cblxuLypcbiAqIEV4dHJhIG1hcmt1cCBpcyBuZWVkZWQgdG8gbWFrZSBpdCB3b3JrIHdpdGggdGV4dCBhbGlnblxuICovXG5cbi5mZS1oZWFkaW5nLWxpbmUgPiAqIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi8qXG4gKiAxLiBDZW50ZXIgdmVydGljYWxseVxuICogMi4gTWFrZSB0aGUgZWxlbWVudCBhcyBsYXJnZSBhcyBwb3NzaWJsZS4gSXQncyBjbGlwcGVkIGJ5IHRoZSBjb250YWluZXIuXG4gKiAzLiBTdHlsZVxuICovXG5cbi5mZS1oZWFkaW5nLWxpbmUgPiA6OmJlZm9yZSxcbi5mZS1oZWFkaW5nLWxpbmUgPiA6OmFmdGVyIHtcbiAgY29udGVudDogXCJcIjtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IHVucXVvdGUoJ2NhbGMoI3skaGVhZGluZy1saW5lLXRvcH0gLSAoI3skaGVhZGluZy1saW5lLWhlaWdodH0gLyAyKSknKTtcbiAgd2lkdGg6ICRoZWFkaW5nLWxpbmUtd2lkdGg7XG4gIGJvcmRlci1ib3R0b206ICRoZWFkaW5nLWxpbmUtYm9yZGVyLXdpZHRoIHNvbGlkICRoZWFkaW5nLWxpbmUtYm9yZGVyO1xuICBAaWYobWl4aW4tZXhpc3RzKGhvb2staGVhZGluZy1saW5lKSkge0BpbmNsdWRlIGhvb2staGVhZGluZy1saW5lKCk7fVxufVxuXG4uZmUtaGVhZGluZy1saW5lID4gOjpiZWZvcmUge1xuICByaWdodDogMTAwJTtcbiAgbWFyZ2luLXJpZ2h0OiAkaGVhZGluZy1saW5lLW1hcmdpbi1ob3Jpem9udGFsO1xufVxuLmZlLWhlYWRpbmctbGluZSA+IDo6YWZ0ZXIge1xuICBsZWZ0OiAxMDAlO1xuICBtYXJnaW4tbGVmdDogJGhlYWRpbmctbGluZS1tYXJnaW4taG9yaXpvbnRhbDtcbn1cbiIsIi8vIE5hbWU6ICAgICAgICAgICAgTGFiZWxcbi8vIERlc2NyaXB0aW9uOiAgICAgQ29tcG9uZW50IHRvIGluZGljYXRlIGltcG9ydGFudCBub3Rlc1xuLy9cbi8vIENvbXBvbmVudDogICAgICAgYGZlLWxhYmVsYFxuLy9cbi8vIE1vZGlmaWVyczogICAgICAgYGZlLWxhYmVsLXN1Y2Nlc3NgXG4vLyAgICAgICAgICAgICAgICAgIGBmZS1sYWJlbC13YXJuaW5nYFxuLy8gICAgICAgICAgICAgICAgICBgZmUtbGFiZWwtZGFuZ2VyYFxuLy9cbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5cbi8vIFZhcmlhYmxlc1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbiRsYWJlbC1wYWRkaW5nLXZlcnRpY2FsOiAgICAgICAgICAgICAgICAgICAgICAgICAycHggIWRlZmF1bHQ7XG4kbGFiZWwtcGFkZGluZy1ob3Jpem9udGFsOiAgICAgICAgICAgICAgICAgICAgICAgMTBweCAhZGVmYXVsdDtcbiRsYWJlbC1iYWNrZ3JvdW5kOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkZ2xvYmFsLXByaW1hcnktYmFja2dyb3VuZCAhZGVmYXVsdDtcbiRsYWJlbC1saW5lLWhlaWdodDogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkZ2xvYmFsLWxpbmUtaGVpZ2h0ICFkZWZhdWx0O1xuJGxhYmVsLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICRnbG9iYWwtc21hbGwtZm9udC1zaXplICFkZWZhdWx0O1xuJGxhYmVsLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICRnbG9iYWwtaW52ZXJzZS1jb2xvciAhZGVmYXVsdDtcblxuJGxhYmVsLXN1Y2Nlc3MtYmFja2dyb3VuZDogICAgICAgICAgICAgICAgICAgICAgICRnbG9iYWwtc3VjY2Vzcy1iYWNrZ3JvdW5kICFkZWZhdWx0O1xuJGxhYmVsLXN1Y2Nlc3MtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICRnbG9iYWwtaW52ZXJzZS1jb2xvciAhZGVmYXVsdDtcbiRsYWJlbC13YXJuaW5nLWJhY2tncm91bmQ6ICAgICAgICAgICAgICAgICAgICAgICAkZ2xvYmFsLXdhcm5pbmctYmFja2dyb3VuZCAhZGVmYXVsdDtcbiRsYWJlbC13YXJuaW5nLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAkZ2xvYmFsLWludmVyc2UtY29sb3IgIWRlZmF1bHQ7XG4kbGFiZWwtZGFuZ2VyLWJhY2tncm91bmQ6ICAgICAgICAgICAgICAgICAgICAgICAgJGdsb2JhbC1kYW5nZXItYmFja2dyb3VuZCAhZGVmYXVsdDtcbiRsYWJlbC1kYW5nZXItY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkZ2xvYmFsLWludmVyc2UtY29sb3IgIWRlZmF1bHQ7XG5cbiRsYWJlbC1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAycHggIWRlZmF1bHQ7XG4kbGFiZWwtdGV4dC10cmFuc2Zvcm06ICAgICAgICAgICAgICAgICAgICAgICAgICAgdXBwZXJjYXNlICFkZWZhdWx0O1xuXG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgQ29tcG9uZW50OiBMYWJlbFxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi5mZS1sYWJlbCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgcGFkZGluZzogJGxhYmVsLXBhZGRpbmctdmVydGljYWwgJGxhYmVsLXBhZGRpbmctaG9yaXpvbnRhbDtcbiAgYmFja2dyb3VuZDogJGxhYmVsLWJhY2tncm91bmQ7XG4gIGxpbmUtaGVpZ2h0OiAkbGFiZWwtbGluZS1oZWlnaHQ7XG4gIGZvbnQtc2l6ZTogJGxhYmVsLWZvbnQtc2l6ZTtcbiAgY29sb3I6ICRsYWJlbC1jb2xvcjtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgYm9yZGVyLXJhZGl1czogJGxhYmVsLWJvcmRlci1yYWRpdXM7XG4gIHRleHQtdHJhbnNmb3JtOiAkbGFiZWwtdGV4dC10cmFuc2Zvcm07XG4gIEBpZihtaXhpbi1leGlzdHMoaG9vay1sYWJlbCkpIHtAaW5jbHVkZSBob29rLWxhYmVsKCk7fVxufVxuXG5cbi8qIENvbG9yIG1vZGlmaWVyc1xuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qXG4gKiBTdWNjZXNzXG4gKi9cblxuLmZlLWxhYmVsLXN1Y2Nlc3Mge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkbGFiZWwtc3VjY2Vzcy1iYWNrZ3JvdW5kO1xuICBjb2xvcjogJGxhYmVsLXN1Y2Nlc3MtY29sb3I7XG4gIEBpZihtaXhpbi1leGlzdHMoaG9vay1sYWJlbC1zdWNjZXNzKSkge0BpbmNsdWRlIGhvb2stbGFiZWwtc3VjY2VzcygpO31cbn1cblxuLypcbiAqIFdhcm5pbmdcbiAqL1xuXG4uZmUtbGFiZWwtd2FybmluZyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICRsYWJlbC13YXJuaW5nLWJhY2tncm91bmQ7XG4gIGNvbG9yOiAkbGFiZWwtd2FybmluZy1jb2xvcjtcbiAgQGlmKG1peGluLWV4aXN0cyhob29rLWxhYmVsLXdhcm5pbmcpKSB7QGluY2x1ZGUgaG9vay1sYWJlbC13YXJuaW5nKCk7fVxufVxuXG4vKlxuICogRGFuZ2VyXG4gKi9cblxuLmZlLWxhYmVsLWRhbmdlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICRsYWJlbC1kYW5nZXItYmFja2dyb3VuZDtcbiAgY29sb3I6ICRsYWJlbC1kYW5nZXItY29sb3I7XG4gIEBpZihtaXhpbi1leGlzdHMoaG9vay1sYWJlbC1kYW5nZXIpKSB7QGluY2x1ZGUgaG9vay1sYWJlbC1kYW5nZXIoKTt9XG59XG5cblxuLy8gSG9va3Ncbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4vLyBAbWl4aW4gaG9vay1sYWJlbCgpe31cbi8vIEBtaXhpbiBob29rLWxhYmVsLXN1Y2Nlc3MoKXt9XG4vLyBAbWl4aW4gaG9vay1sYWJlbC13YXJuaW5nKCl7fVxuLy8gQG1peGluIGhvb2stbGFiZWwtZGFuZ2VyKCl7fVxuXG4iLCIvLyBOYW1lOiAgICAgICAgICAgIExpc3RzXG4vLyBEZXNjcmlwdGlvbjogICAgIFN0eWxlcyBmb3IgbGlzdHNcbi8vXG4vLyBDb21wb25lbnQ6ICAgICAgIGBmZS1saXN0YFxuLy9cbi8vIE1vZGlmaWVyczogICAgICAgYGZlLWxpc3QtZGlzY2Bcbi8vICAgICAgICAgICAgICAgICAgYGZlLWxpc3QtY2lyY2xlYFxuLy8gICAgICAgICAgICAgICAgICBgZmUtbGlzdC1zcXVhcmVgXG4vLyAgICAgICAgICAgICAgICAgIGBmZS1saXN0LWRlY2ltYWxgXG4vLyAgICAgICAgICAgICAgICAgIGBmZS1saXN0LXByaW1hcnlgXG4vLyAgICAgICAgICAgICAgICAgIGBmZS1saXN0LXNlY29uZGFyeWBcbi8vICAgICAgICAgICAgICAgICAgYGZlLWxpc3QtZGl2aWRlcmBcblxuLy8gVmFyaWFibGVzXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuJGxpc3QtaXRlbXMtZ2FwOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZhcigtLXNwYWNlLXNtYWxsKSAhZGVmYXVsdDtcblxuJGxpc3QtcGFkZGluZy1sZWZ0OiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDMwcHggIWRlZmF1bHQ7XG5cbiRsaXN0LW1hcmtlci1oZWlnaHQ6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAxMHB4ICFkZWZhdWx0O1xuXG4kbGlzdC1wcmltYXJ5LWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJGdsb2JhbC1wcmltYXJ5LWJhY2tncm91bmQgIWRlZmF1bHQ7XG4kbGlzdC1zZWNvbmRhcnktY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgICAgJGdsb2JhbC1zZWNvbmRhcnktYmFja2dyb3VuZCAhZGVmYXVsdDtcblxuJGxpc3QtYnVsbGV0LWljb24tY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgICRnbG9iYWwtY29sb3IgIWRlZmF1bHQ7XG5cbiRsaXN0LWRpdmlkZXItcGFkZGluZy10b3A6ICAgICAgICAgICAgICAgICAgICAgICB2YXIoLS1zcGFjZS1zbWFsbCkgIWRlZmF1bHQ7XG4kbGlzdC1kaXZpZGVyLWJvcmRlci13aWR0aDogICAgICAgICAgICAgICAgICAgICAgJGdsb2JhbC1ib3JkZXItd2lkdGggIWRlZmF1bHQ7XG4kbGlzdC1kaXZpZGVyLWJvcmRlci1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgJGdsb2JhbC1ib3JkZXItY29sb3IgIWRlZmF1bHQ7XG5cbiRsaXN0LXN0cmlwZWQtcGFkZGluZy12ZXJ0aWNhbDogICAgICAgICAgICAgICAgICB2YXIoLS1zcGFjZS1zbWFsbCkgIWRlZmF1bHQ7XG4kbGlzdC1zdHJpcGVkLXBhZGRpbmctaG9yaXpvbnRhbDogICAgICAgICAgICAgICAgdmFyKC0tc3BhY2UtdGhpbikgIWRlZmF1bHQ7XG4kbGlzdC1zdHJpcGVkLWJhY2tncm91bmQ6ICAgICAgICAgICAgICAgICAgICAgICAgJGdsb2JhbC1tdXRlZC1iYWNrZ3JvdW5kICFkZWZhdWx0O1xuJGxpc3Qtc3RyaXBlZC1ib3JkZXItd2lkdGg6ICAgICAgICAgICAgICAgICAgICAgICRnbG9iYWwtYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJGxpc3Qtc3RyaXBlZC1ib3JkZXItY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICRnbG9iYWwtYm9yZGVyLWNvbG9yICFkZWZhdWx0O1xuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgIENvbXBvbmVudDogTGlzdFxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbnVsIHtcbiAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwO1xufVxuXG4uZmUtbGlzdCB7XG4gICAgPjpudGgtY2hpbGQobisyKSxcbiAgICB1bCB7XG4gICAgICAgIG1hcmdpbi10b3A6ICRsaXN0LWl0ZW1zLWdhcDtcbiAgICB9XG59XG5cbi8qXG4gKiBUeXBlIG1vZGlmaWVyc1xuICovXG5cbi5mZS1saXN0LWRlY2ltYWwgeyBjb3VudGVyLXJlc2V0OiBkZWNpbWFsOyB9XG4uZmUtbGlzdC1kZWNpbWFsID4gKiB7IGNvdW50ZXItaW5jcmVtZW50OiBkZWNpbWFsOyB9XG5cbltjbGFzcyo9J2ZlLWxpc3QnXSA+IDo6YmVmb3JlIHtcbiAgICBjb250ZW50OiAnJztcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogMDtcbiAgICB3aWR0aDogJGxpc3QtcGFkZGluZy1sZWZ0O1xuICAgIGhlaWdodDogJGxpc3QtbWFya2VyLWhlaWdodDtcbiAgICBtYXJnaW4tYm90dG9tOiAoLSRsaXN0LW1hcmtlci1oZWlnaHQpO1xuICAgIGRpc3BsYXk6IGxpc3QtaXRlbTtcbiAgICBsaXN0LXN0eWxlLXBvc2l0aW9uOiBvdXRzaWRlO1xuICAgIHRleHQtYWxpZ246IHJpZ2h0O1xufVxuXG4uZmUtbGlzdC1kaXNjID4gOjpiZWZvcmUgeyBsaXN0LXN0eWxlLXR5cGU6IGRpc2M7IH1cbi5mZS1saXN0LWNpcmNsZSA+IDo6YmVmb3JlIHsgbGlzdC1zdHlsZS10eXBlOiBjaXJjbGU7IH1cbi5mZS1saXN0LXNxdWFyZSA+IDo6YmVmb3JlIHsgbGlzdC1zdHlsZS10eXBlOiBzcXVhcmU7IH1cbi5mZS1saXN0LWRlY2ltYWwgPiA6OmJlZm9yZSB7XG4gICAgY29udGVudDogY291bnRlcihkZWNpbWFsLCBkZWNpbWFsKSAnXFwyMDBBLlxcMDBBMCc7XG4gICAgbGVmdDogKC0kbGlzdC1wYWRkaW5nLWxlZnQpO1xufVxuXG4uZmUtbGlzdC1pbnNpZGUge1xuICAgID4gKiB7XG4gICAgICAgIHBhZGRpbmctbGVmdDogJGxpc3QtcGFkZGluZy1sZWZ0O1xuXG4gICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgICBsZWZ0OiAoLSRsaXN0LXBhZGRpbmctbGVmdCk7XG4gICAgICAgICAgICBsaXN0LXN0eWxlLXBvc2l0aW9uOiBpbnNpZGU7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi8qXG4gKiBDb2xvciBtb2RpZmllcnNcbiAqL1xuXG4uZmUtbGlzdCB7XG4gICAgJi1wcmltYXJ5IHtcbiAgICAgICAgPiA6OmJlZm9yZSB7IGNvbG9yOiAkbGlzdC1wcmltYXJ5LWNvbG9yICFpbXBvcnRhbnQ7IH1cbiAgICB9XG5cbiAgICAmLXNlY29uZGFyeSB7XG4gICAgICAgID4gOjpiZWZvcmUgeyBjb2xvcjogJGxpc3Qtc2Vjb25kYXJ5LWNvbG9yICFpbXBvcnRhbnQ7IH1cbiAgICB9XG59XG5cblxuLyogU3R5bGUgbW9kaWZpZXJzXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLypcbiAqIERpdmlkZXJcbiAqL1xuXG4uZmUtbGlzdC1kaXZpZGVyID4gOm50aC1jaGlsZChuKzIpIHtcbiAgICBwYWRkaW5nLXRvcDogJGxpc3QtZGl2aWRlci1wYWRkaW5nLXRvcDtcbiAgICBib3JkZXItdG9wOiAkbGlzdC1kaXZpZGVyLWJvcmRlci13aWR0aCBzb2xpZCAkbGlzdC1kaXZpZGVyLWJvcmRlci1jb2xvcjtcbn1cblxuLypcbiAqIFN0cmlwZWRcbiAqL1xuXG4uZmUtbGlzdC1zdHJpcGVkID4gKiB7XG4gICAgcGFkZGluZzogJGxpc3Qtc3RyaXBlZC1wYWRkaW5nLXZlcnRpY2FsICRsaXN0LXN0cmlwZWQtcGFkZGluZy1ob3Jpem9udGFsO1xufVxuXG4uZmUtbGlzdC1zdHJpcGVkID4gOm50aC1vZi10eXBlKG9kZCkge1xuICAgIGJhY2tncm91bmQ6ICRsaXN0LXN0cmlwZWQtYmFja2dyb3VuZDtcbiAgICBib3JkZXItdG9wOiAkbGlzdC1zdHJpcGVkLWJvcmRlci13aWR0aCBzb2xpZCAkbGlzdC1zdHJpcGVkLWJvcmRlci1jb2xvcjtcbiAgICBib3JkZXItYm90dG9tOiAkbGlzdC1zdHJpcGVkLWJvcmRlci13aWR0aCBzb2xpZCAkbGlzdC1zdHJpcGVkLWJvcmRlci1jb2xvcjtcbn1cblxuLmZlLWxpc3Qtc3RyaXBlZCA+IDpudGgtY2hpbGQobisyKSB7IG1hcmdpbi10b3A6IDA7IH1cbiIsIi8vIE5hbWU6ICAgICAgICAgICAgTWVzc2FnZS1Cb3hcbi8vIERlc2NyaXB0aW9uOiAgICAgU3R5bGVzIGZvciBtZXNzYWdlIGJveFxuLy9cbi8vIENvbXBvbmVudDogICAgICAgYGZlLW1lc3NhZ2UtYm94YFxuXG4vLyBWYXJpYWJsZXNcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4kbXNnLWJveC1jb2xvcjogI2ZmZiAhZGVmYXVsdDtcbiRtc2ctYm94LWJnLWNvbG9yOiAkY29sb3ItLXByaW1hcnkgIWRlZmF1bHQ7XG4kbXNnLWJveC1zdWNjZXNzLXRleHQtY29sb3I6ICMzQTYxNEQgIWRlZmF1bHQ7XG4kbXNnLWJveC1zdWNjZXNzLWJvcmRlci1jb2xvcjogIzgyQzcwOCAhZGVmYXVsdDtcbiRtc2ctYm94LXBhZGRpbmc6IHZhcigtLXNwYWNlLW1lZGl1bSkgIWRlZmF1bHQ7XG4kbXNnLWJveC1mb250LWZhbWlseTogJGZvbnQtcHJpbWFyeSAhZGVmYXVsdDtcbiRtc2ctYm94LWZvbnQtd2VpZ2h0OiAkYm9keS1mb250LXdlaWdodCAhZGVmYXVsdDtcbiRtc2ctYm94LWZvbnQtc2l6ZTogdmFyKC0tYmFzZS1mb250LXNpemUpICFkZWZhdWx0O1xuJG1zZy1ib3gtbGluZS1oZWlnaHQ6IHZhcigtLWxobS0tMCkgIWRlZmF1bHQ7XG4kbXNnLWJveC1ib3JkZXItY29sb3I6ICRjb2xvci0tc2Vjb25kYXJ5ICFkZWZhdWx0O1xuJG1zZy1ib3gtYm9yZGVyLXdpZHRoOiA4cHggIWRlZmF1bHQ7XG4kbXNnLWJveC1ib3JkZXItZGVmYXVsdHM6ICRtc2ctYm94LWJvcmRlci13aWR0aCBzb2xpZCAkbXNnLWJveC1ib3JkZXItY29sb3IgIWRlZmF1bHQ7XG5cbi5mZS1tZXNzYWdlLWJveHtcbiAgYm9yZGVyOiAkbXNnLWJveC1ib3JkZXItZGVmYXVsdHM7XG4gIHBhZGRpbmc6ICRtc2ctYm94LXBhZGRpbmc7XG4gIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gIGZvbnQtd2VpZ2h0OiAkbXNnLWJveC1mb250LXdlaWdodDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkbXNnLWJveC1iZy1jb2xvcjtcbiAgJiA+ICo6Zmlyc3QtY2hpbGR7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIH1cblxuICAmLS1zdWNjZXNze1xuICAgIGJvcmRlci1jb2xvcjogJG1zZy1ib3gtc3VjY2Vzcy1ib3JkZXItY29sb3I7XG4gICAgY29sb3I6ICRtc2ctYm94LXN1Y2Nlc3MtdGV4dC1jb2xvcjtcbiAgfVxuICAmLS1lcnJvcntcbiAgICBib3JkZXItY29sb3I6ICRmb3JtLWRhbmdlci1jb2xvcjtcbiAgICBjb2xvcjogJGZvcm0tZGFuZ2VyLWNvbG9yO1xuICB9XG4gIFxuICBAaWYobWl4aW4tZXhpc3RzKGhvb2stbWVzc2FnZV9ib3gpKSB7QGluY2x1ZGUgaG9vay1tZXNzYWdlX2JveCgpO31cbn1cblxuQGlmKG1peGluLWV4aXN0cyhob29rLW1lc3NhZ2VfYm94LW1pc2MpKSB7QGluY2x1ZGUgaG9vay1tZXNzYWdlX2JveC1taXNjKCk7fVxuIiwiLnRpbmdsZS1tb2RhbCAqe2JveC1zaXppbmc6Ym9yZGVyLWJveH0udGluZ2xlLW1vZGFse3Bvc2l0aW9uOmZpeGVkO3RvcDowO3JpZ2h0OjA7Ym90dG9tOjA7bGVmdDowO3otaW5kZXg6MTAwMDtkaXNwbGF5OmZsZXg7dmlzaWJpbGl0eTpoaWRkZW47ZmxleC1kaXJlY3Rpb246Y29sdW1uO2FsaWduLWl0ZW1zOmNlbnRlcjtvdmVyZmxvdzpoaWRkZW47LXdlYmtpdC1vdmVyZmxvdy1zY3JvbGxpbmc6dG91Y2g7YmFja2dyb3VuZDpyZ2JhKDAsMCwwLC45KTtvcGFjaXR5OjA7Y3Vyc29yOnVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCwlM0Nzdmcgd2lkdGg9JzE5JyBoZWlnaHQ9JzE5JyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnJTNFJTNDcGF0aCBkPSdNMTUuNTE0LjUzNWwtNi40MiA2LjQyTDIuNjc3LjUzNmExLjUxNyAxLjUxNyAwIDAwLTIuMTQgMCAxLjUxNyAxLjUxNyAwIDAwMCAyLjE0bDYuNDIgNi40MTktNi40MiA2LjQxOWExLjUxNyAxLjUxNyAwIDAwMCAyLjE0IDEuNTE3IDEuNTE3IDAgMDAyLjE0IDBsNi40MTktNi40MiA2LjQxOSA2LjQyYTEuNTE3IDEuNTE3IDAgMDAyLjE0IDAgMS41MTcgMS41MTcgMCAwMDAtMi4xNGwtNi40Mi02LjQyIDYuNDItNi40MThhMS41MTcgMS41MTcgMCAwMDAtMi4xNCAxLjUxNiAxLjUxNiAwIDAwLTIuMTQgMHonIGZpbGw9JyUyM0ZGRicgZmlsbC1ydWxlPSdub256ZXJvJy8lM0UlM0Mvc3ZnJTNFXCIpLGF1dG99QHN1cHBvcnRzICgoLXdlYmtpdC1iYWNrZHJvcC1maWx0ZXI6Ymx1cigxMnB4KSkgb3IgKGJhY2tkcm9wLWZpbHRlcjpibHVyKDEycHgpKSl7LnRpbmdsZS1tb2RhbHstd2Via2l0LWJhY2tkcm9wLWZpbHRlcjpibHVyKDEycHgpO2JhY2tkcm9wLWZpbHRlcjpibHVyKDEycHgpfX0udGluZ2xlLW1vZGFsLS1jb25maXJtIC50aW5nbGUtbW9kYWwtYm94e3RleHQtYWxpZ246Y2VudGVyfS50aW5nbGUtbW9kYWwtLW5vT3ZlcmxheUNsb3Nle2N1cnNvcjpkZWZhdWx0fS50aW5nbGUtbW9kYWwtLW5vQ2xvc2UgLnRpbmdsZS1tb2RhbF9fY2xvc2V7ZGlzcGxheTpub25lfS50aW5nbGUtbW9kYWxfX2Nsb3Nle3Bvc2l0aW9uOmZpeGVkO3RvcDoyLjVyZW07cmlnaHQ6Mi41cmVtO3otaW5kZXg6MTAwMDtwYWRkaW5nOjA7d2lkdGg6MnJlbTtoZWlnaHQ6MnJlbTtib3JkZXI6bm9uZTtiYWNrZ3JvdW5kLWNvbG9yOnRyYW5zcGFyZW50O2NvbG9yOiNmZmY7Y3Vyc29yOnBvaW50ZXJ9LnRpbmdsZS1tb2RhbF9fY2xvc2Ugc3ZnICp7ZmlsbDpjdXJyZW50Q29sb3J9LnRpbmdsZS1tb2RhbF9fY2xvc2VMYWJlbHtkaXNwbGF5Om5vbmV9LnRpbmdsZS1tb2RhbF9fY2xvc2U6aG92ZXJ7Y29sb3I6I2ZmZn0udGluZ2xlLW1vZGFsLWJveHtwb3NpdGlvbjpyZWxhdGl2ZTtmbGV4LXNocmluazowO21hcmdpbi10b3A6YXV0bzttYXJnaW4tYm90dG9tOmF1dG87d2lkdGg6NjAlO2JvcmRlci1yYWRpdXM6NHB4O2JhY2tncm91bmQ6I2ZmZjtvcGFjaXR5OjE7Y3Vyc29yOmF1dG87d2lsbC1jaGFuZ2U6dHJhbnNmb3JtLG9wYWNpdHl9LnRpbmdsZS1tb2RhbC1ib3hfX2NvbnRlbnR7cGFkZGluZzozcmVtIDNyZW19LnRpbmdsZS1tb2RhbC1ib3hfX2Zvb3RlcntwYWRkaW5nOjEuNXJlbSAycmVtO3dpZHRoOmF1dG87Ym9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6NHB4O2JvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6NHB4O2JhY2tncm91bmQtY29sb3I6I2Y1ZjVmNTtjdXJzb3I6YXV0b30udGluZ2xlLW1vZGFsLWJveF9fZm9vdGVyOjphZnRlcntkaXNwbGF5OnRhYmxlO2NsZWFyOmJvdGg7Y29udGVudDpcIlwifS50aW5nbGUtbW9kYWwtYm94X19mb290ZXItLXN0aWNreXtwb3NpdGlvbjpmaXhlZDtib3R0b206LTIwMHB4O3otaW5kZXg6MTAwMDE7b3BhY2l0eToxO3RyYW5zaXRpb246Ym90dG9tIC4zcyBlYXNlLWluLW91dCAuM3N9LnRpbmdsZS1lbmFibGVke3Bvc2l0aW9uOmZpeGVkO3JpZ2h0OjA7bGVmdDowO292ZXJmbG93OmhpZGRlbn0udGluZ2xlLW1vZGFsLS12aXNpYmxlIC50aW5nbGUtbW9kYWwtYm94X19mb290ZXJ7Ym90dG9tOjB9LnRpbmdsZS1tb2RhbC0tdmlzaWJsZXt2aXNpYmlsaXR5OnZpc2libGU7b3BhY2l0eToxfS50aW5nbGUtbW9kYWwtLXZpc2libGUgLnRpbmdsZS1tb2RhbC1ib3h7YW5pbWF0aW9uOnNjYWxlIC4ycyBjdWJpYy1iZXppZXIoLjY4LC0uNTUsLjI2NSwxLjU1KSBmb3J3YXJkc30udGluZ2xlLW1vZGFsLS1vdmVyZmxvd3tvdmVyZmxvdy15OnNjcm9sbDtwYWRkaW5nLXRvcDo4dmh9LnRpbmdsZS1idG57ZGlzcGxheTppbmxpbmUtYmxvY2s7bWFyZ2luOjAgLjVyZW07cGFkZGluZzoxcmVtIDJyZW07Ym9yZGVyOm5vbmU7YmFja2dyb3VuZC1jb2xvcjpncmV5O2JveC1zaGFkb3c6bm9uZTtjb2xvcjojZmZmO3ZlcnRpY2FsLWFsaWduOm1pZGRsZTt0ZXh0LWRlY29yYXRpb246bm9uZTtmb250LXNpemU6aW5oZXJpdDtmb250LWZhbWlseTppbmhlcml0O2xpbmUtaGVpZ2h0Om5vcm1hbDtjdXJzb3I6cG9pbnRlcjt0cmFuc2l0aW9uOmJhY2tncm91bmQtY29sb3IgLjRzIGVhc2V9LnRpbmdsZS1idG4tLXByaW1hcnl7YmFja2dyb3VuZC1jb2xvcjojMzQ5OGRifS50aW5nbGUtYnRuLS1kYW5nZXJ7YmFja2dyb3VuZC1jb2xvcjojZTc0YzNjfS50aW5nbGUtYnRuLS1kZWZhdWx0e2JhY2tncm91bmQtY29sb3I6IzM0NDk1ZX0udGluZ2xlLWJ0bi0tcHVsbC1sZWZ0e2Zsb2F0OmxlZnR9LnRpbmdsZS1idG4tLXB1bGwtcmlnaHR7ZmxvYXQ6cmlnaHR9QG1lZGlhIChtYXgtd2lkdGggOjU0MHB4KXsudGluZ2xlLW1vZGFse3RvcDowO2Rpc3BsYXk6YmxvY2s7cGFkZGluZy10b3A6NjBweDt3aWR0aDoxMDAlfS50aW5nbGUtbW9kYWwtYm94e3dpZHRoOmF1dG87Ym9yZGVyLXJhZGl1czowfS50aW5nbGUtbW9kYWwtYm94X19jb250ZW50e292ZXJmbG93LXk6c2Nyb2xsfS50aW5nbGUtbW9kYWwtLW5vQ2xvc2V7dG9wOjB9LnRpbmdsZS1tb2RhbC0tbm9PdmVybGF5Q2xvc2V7cGFkZGluZy10b3A6MH0udGluZ2xlLW1vZGFsLWJveF9fZm9vdGVyIC50aW5nbGUtYnRue2Rpc3BsYXk6YmxvY2s7ZmxvYXQ6bm9uZTttYXJnaW4tYm90dG9tOjFyZW07d2lkdGg6MTAwJX0udGluZ2xlLW1vZGFsX19jbG9zZXt0b3A6MDtyaWdodDowO2xlZnQ6MDtkaXNwbGF5OmJsb2NrO3dpZHRoOjEwMCU7aGVpZ2h0OjYwcHg7Ym9yZGVyOm5vbmU7YmFja2dyb3VuZC1jb2xvcjojMmMzZTUwO2JveC1zaGFkb3c6bm9uZTtjb2xvcjojZmZmfS50aW5nbGUtbW9kYWxfX2Nsb3NlTGFiZWx7ZGlzcGxheTppbmxpbmUtYmxvY2s7dmVydGljYWwtYWxpZ246bWlkZGxlO2ZvbnQtc2l6ZToxLjZyZW07Zm9udC1mYW1pbHk6LWFwcGxlLXN5c3RlbSxCbGlua01hY1N5c3RlbUZvbnQsXCJTZWdvZSBVSVwiLFJvYm90byxPeHlnZW4sVWJ1bnR1LENhbnRhcmVsbCxcIkZpcmEgU2Fuc1wiLFwiRHJvaWQgU2Fuc1wiLFwiSGVsdmV0aWNhIE5ldWVcIixzYW5zLXNlcmlmfS50aW5nbGUtbW9kYWxfX2Nsb3NlSWNvbntkaXNwbGF5OmlubGluZS1ibG9jazttYXJnaW4tcmlnaHQ6LjhyZW07d2lkdGg6MS42cmVtO3ZlcnRpY2FsLWFsaWduOm1pZGRsZTtmb250LXNpemU6MH19QGtleWZyYW1lcyBzY2FsZXswJXtvcGFjaXR5OjA7dHJhbnNmb3JtOnNjYWxlKC45KX0xMDAle29wYWNpdHk6MTt0cmFuc2Zvcm06c2NhbGUoMSl9fSIsIi8vIHRpbmdsZS5qcyBkb2N1bWVudGF0aW9uXG4vLyBodHRwczovL3RpbmdsZS5yb2JpbnBhcmlzaS5jb20vXG5cbkBpbXBvcnQgXCIuLi92ZW5kb3IvdGluZ2xlLW1vZGFsL3RpbmdsZS5taW5cIjtcblxuLmZlLW1vZGFsLWNvbnRhaW5lciB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi8vIE5hbWU6ICAgICAgICAgICAgTW9kYWwgKHRpbmdsZS5qcylcbi8vIERlc2NyaXB0aW9uOiAgICAgU3R5bGVzIGZvciBtb2RhbFxuLy9cbi8vIENvbXBvbmVudDogICAgICAgYGZlLW1vZGFsLWNvbnRhaW5lcmBcbi8vXG4vL1xuXG4vLyBUT0RPIGNvbnRpbnVlXG5cbi8vIFZhcmlhYmxlc1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbiRtb2RhbC1ib3gtcGFkZGluZy1ob3Jpem9udGFsOiAgICAgICAgICAgICAgICAgICAzcmVtICFkZWZhdWx0O1xuJG1vZGFsLWJveC1wYWRkaW5nLXZlcnRpY2FsOiAgICAgICAgICAgICAgICAgICAgIDNyZW0gIWRlZmF1bHQ7XG5cbiRtb2RhbC1ib3gtZm9vdGVyLXBhZGRpbmctaG9yaXpvbnRhbDogICAgICAgICAgICAycmVtICFkZWZhdWx0O1xuJG1vZGFsLWJveC1mb290ZXItcGFkZGluZy12ZXJ0aWNhbDogICAgICAgICAgICAgIDEuNXJlbSAhZGVmYXVsdDtcblxuJG1vZGFsLWNvbnRhaW5lci1wYWRkaW5nLXZlcnRpY2FsOiAgICAgICAgICAgICAgIDh2aCAhZGVmYXVsdDtcbiRtb2RhbC1jb250YWluZXItY3Vyc29yOiAgICAgICAgICAgICAgICAgICAgICAgICBcImRhdGE6aW1hZ2Uvc3ZnK3htbCwlM0Nzdmcgd2lkdGg9JzE5JyBoZWlnaHQ9JzE5JyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnJTNFJTNDcGF0aCBkPSdNMTUuNTE0LjUzNWwtNi40MiA2LjQyTDIuNjc3LjUzNmExLjUxNyAxLjUxNyAwIDAwLTIuMTQgMCAxLjUxNyAxLjUxNyAwIDAwMCAyLjE0bDYuNDIgNi40MTktNi40MiA2LjQxOWExLjUxNyAxLjUxNyAwIDAwMCAyLjE0IDEuNTE3IDEuNTE3IDAgMDAyLjE0IDBsNi40MTktNi40MiA2LjQxOSA2LjQyYTEuNTE3IDEuNTE3IDAgMDAyLjE0IDAgMS41MTcgMS41MTcgMCAwMDAtMi4xNGwtNi40Mi02LjQyIDYuNDItNi40MThhMS41MTcgMS41MTcgMCAwMDAtMi4xNCAxLjUxNiAxLjUxNiAwIDAwLTIuMTQgMHonIGZpbGw9JyUyM0ZGRicgZmlsbC1ydWxlPSdub256ZXJvJy8lM0UlM0Mvc3ZnJTNFXCIgIWRlZmF1bHQ7XG5cblxuXG4udGluZ2xlLW1vZGFsIHtcbiAgY3Vyc29yOiB1cmwoJG1vZGFsLWNvbnRhaW5lci1jdXJzb3IpLCBhdXRvO1xuXG4gICYtYm94IHtcbiAgICAmX19jb250ZW50IHtcbiAgICAgIHBhZGRpbmc6ICRtb2RhbC1ib3gtcGFkZGluZy12ZXJ0aWNhbCAkbW9kYWwtYm94LXBhZGRpbmctaG9yaXpvbnRhbDtcbiAgICB9XG5cbiAgICAmX19mb290ZXIge1xuICAgICAgcGFkZGluZzogJG1vZGFsLWJveC1mb290ZXItcGFkZGluZy12ZXJ0aWNhbCAkbW9kYWwtYm94LWZvb3Rlci1wYWRkaW5nLWhvcml6b250YWw7XG4gICAgfVxuICB9XG5cbiAgJi0tb3ZlcmZsb3cge1xuICAgIHBhZGRpbmc6ICRtb2RhbC1jb250YWluZXItcGFkZGluZy12ZXJ0aWNhbCAwO1xuICB9XG59XG5cbiIsIi8vIE5hbWU6ICAgICAgICAgICAgUGFnaW5hdGlvblxuLy8gRGVzY3JpcHRpb246ICAgICBDb21wb25lbnQgdG8gY3JlYXRlIGEgcGFnZSBuYXZpZ2F0aW9uXG4vL1xuLy8gQ29tcG9uZW50OiAgICAgICBgZmUtcGFnaW5hdGlvbmBcbi8vXG4vLyBBZGQtb25zICAgICAgICAgIGBmZS1wYWdpbmF0aW9uLWN1c3RvbWAgICEgcGxzIHB1dCBjdXN0b20gc3ZnIGFmdGVyIDxhPiB0YWcgIVxuLy9cbi8vIEFkb3B0ZWQ6ICAgICAgICAgYGZlLXBhZ2luYXRpb24tbmV4dGBcbi8vICAgICAgICAgICAgICAgICAgYGZlLXBhZ2luYXRpb24tcHJldmlvdXNgXG4vL1xuLy8gU3RhdGVzOiAgICAgICAgICBgZmUtYWN0aXZlYFxuLy8gICAgICAgICAgICAgICAgICBgZmUtZGlzYWJsZWRgXG4vL1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5AdXNlIFwic2FzczptYXRoXCI7XG5cbi8vIFZhcmlhYmxlc1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbiRwYWdpbmF0aW9uLW1hcmdpbi1ob3Jpem9udGFsOiAgICAgICAgICAgICAgICAgICAwICFkZWZhdWx0O1xuXG4kcGFnaW5hdGlvbi1pdGVtLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgICAgICAgJGdsb2JhbC1mb250LXNpemUgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1pdGVtLXBhZGRpbmctdmVydGljYWw6ICAgICAgICAgICAgICAgNXB4ICFkZWZhdWx0O1xuJHBhZ2luYXRpb24taXRlbS1wYWRkaW5nLWhvcml6b250YWw6ICAgICAgICAgICAgIDEwcHggIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1pdGVtLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgICAgJGdsb2JhbC1tdXRlZC1jb2xvciAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWl0ZW0taG92ZXItY29sb3I6ICAgICAgICAgICAgICAgICAgICAkZ2xvYmFsLWNvbG9yICFkZWZhdWx0O1xuJHBhZ2luYXRpb24taXRlbS1ob3Zlci10ZXh0LWRlY29yYXRpb246ICAgICAgICAgIG5vbmUgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1pdGVtLWFjdGl2ZS1jb2xvcjogICAgICAgICAgICAgICAgICAgJGdsb2JhbC1jb2xvciAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWl0ZW0tZGlzYWJsZWQtY29sb3I6ICAgICAgICAgICAgICAgICAkZ2xvYmFsLW11dGVkLWNvbG9yICFkZWZhdWx0O1xuXG4kcGFnaW5hdGlvbi1hcnJvdy1sZWZ0LXNpZGU6ICAgICAgICAgICAgICAgICAgICAgJ1xcMDBBQicgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1hcnJvdy1yaWdodC1zaWRlOiAgICAgICAgICAgICAgICAgICAgJ1xcMDBCQicgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1hcnJvdy1zaXplOiAgICAgICAgICAgICAgICAgICAgICAgICAgKCRwYWdpbmF0aW9uLWl0ZW0tZm9udC1zaXplICogMS43NSkgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1hcnJvdy1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICAgJHBhZ2luYXRpb24taXRlbS1jb2xvciAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWFycm93LWhvdmVyLWNvbG9yOiAgICAgICAgICAgICAgICAgICAkcGFnaW5hdGlvbi1pdGVtLWhvdmVyLWNvbG9yICFkZWZhdWx0O1xuXG4kcGFnaW5hdGlvbi1jdXN0b20tYXJyb3ctd2lkdGg6ICAgICAgICAgICAgICAgICAgMTVweCAhZGVmYXVsdDtcblxuXG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgQ29tcG9uZW50OiBQYWdpbmF0aW9uXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLmZlLXBhZ2luYXRpb24ge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIG1hcmdpbi1sZWZ0OiAoLSRwYWdpbmF0aW9uLW1hcmdpbi1ob3Jpem9udGFsKTtcbiAgcGFkZGluZzogMDtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgQGlmKG1peGluLWV4aXN0cyhob29rLXBhZ2luYXRpb24pKSB7QGluY2x1ZGUgaG9vay1wYWdpbmF0aW9uKCk7fVxufVxuXG4uZmUtcGFnaW5hdGlvbiA+ICoge1xuICBmbGV4OiBub25lO1xuICBwYWRkaW5nLWxlZnQ6ICRwYWdpbmF0aW9uLW1hcmdpbi1ob3Jpem9udGFsO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cblxuLyogSXRlbXNcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4uZmUtcGFnaW5hdGlvbiA+ICogPiAqIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBhZGRpbmc6ICRwYWdpbmF0aW9uLWl0ZW0tcGFkZGluZy12ZXJ0aWNhbCAkcGFnaW5hdGlvbi1pdGVtLXBhZGRpbmctaG9yaXpvbnRhbDtcbiAgY29sb3I6ICRwYWdpbmF0aW9uLWl0ZW0tY29sb3I7XG4gIGZvbnQtc2l6ZTogJHBhZ2luYXRpb24taXRlbS1mb250LXNpemU7XG4gIEBpZihtaXhpbi1leGlzdHMoaG9vay1wYWdpbmF0aW9uLWl0ZW0pKSB7QGluY2x1ZGUgaG9vay1wYWdpbmF0aW9uLWl0ZW0oKTt9XG59XG5cbi8qIEhvdmVyICovXG4uZmUtcGFnaW5hdGlvbiA+ICogPiA6aG92ZXIge1xuICBjb2xvcjogJHBhZ2luYXRpb24taXRlbS1ob3Zlci1jb2xvcjtcbiAgdGV4dC1kZWNvcmF0aW9uOiAkcGFnaW5hdGlvbi1pdGVtLWhvdmVyLXRleHQtZGVjb3JhdGlvbjtcbiAgQGlmKG1peGluLWV4aXN0cyhob29rLXBhZ2luYXRpb24taXRlbS1ob3ZlcikpIHtAaW5jbHVkZSBob29rLXBhZ2luYXRpb24taXRlbS1ob3ZlcigpO31cbn1cblxuLyogQWN0aXZlICovXG4uZmUtcGFnaW5hdGlvbiA+IC5mZS1hY3RpdmUgPiAqIHtcbiAgY29sb3I6ICRwYWdpbmF0aW9uLWl0ZW0tYWN0aXZlLWNvbG9yO1xuICBAaWYobWl4aW4tZXhpc3RzKGhvb2stcGFnaW5hdGlvbi1pdGVtLWFjdGl2ZSkpIHtAaW5jbHVkZSBob29rLXBhZ2luYXRpb24taXRlbS1hY3RpdmUoKTt9XG59XG5cbi8qIERpc2FibGVkICovXG4uZmUtcGFnaW5hdGlvbiA+IC5mZS1kaXNhYmxlZCA+ICoge1xuICBjb2xvcjogJHBhZ2luYXRpb24taXRlbS1kaXNhYmxlZC1jb2xvcjtcbiAgQGlmKG1peGluLWV4aXN0cyhob29rLXBhZ2luYXRpb24taXRlbS1kaXNhYmxlZCkpIHtAaW5jbHVkZSBob29rLXBhZ2luYXRpb24taXRlbS1kaXNhYmxlZCgpO31cbn1cblxuXG4vKiBQcmV2aW91cyBhbmQgTmV4dCBidXR0b25zICovXG5cbi5mZS1wYWdpbmF0aW9uIC5mZS1wYWdpbmF0aW9uLXByZXZpb3VzID4gKiA+ICosXG4uZmUtcGFnaW5hdGlvbiAuZmUtcGFnaW5hdGlvbi1uZXh0ID4gKiA+ICoge1xuICBsaW5lLWhlaWdodDogMTtcbiAgZGlzcGxheTogYmxvY2s7XG5cbiAgJjo6YmVmb3JlIHtcbiAgICBjb250ZW50OiAkcGFnaW5hdGlvbi1hcnJvdy1sZWZ0LXNpZGU7XG4gICAgZm9udC1zaXplOiAkcGFnaW5hdGlvbi1hcnJvdy1zaXplO1xuICAgIGNvbG9yOiAkcGFnaW5hdGlvbi1hcnJvdy1jb2xvcjtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgdHJhbnNpdGlvbjogLjI1cyBhbGw7XG4gICAgbGluZS1oZWlnaHQ6IG1hdGguZGl2KCRwYWdpbmF0aW9uLWFycm93LXNpemUsIDIpO1xuICB9XG5cbiAgLyogSG92ZXIgKi9cblxuICAmOmhvdmVyIHtcbiAgICAmOjpiZWZvcmUge1xuICAgICAgY29sb3I6ICRwYWdpbmF0aW9uLWFycm93LWhvdmVyLWNvbG9yO1xuICAgIH1cbiAgfVxufVxuXG4uZmUtcGFnaW5hdGlvbi5mZS1wYWdpbmF0aW9uIC5mZS1wYWdpbmF0aW9uLW5leHQgPiAqID4gKiB7XG4gICY6OmJlZm9yZSB7XG4gICAgY29udGVudDogJHBhZ2luYXRpb24tYXJyb3ctcmlnaHQtc2lkZTtcbiAgfVxufVxuXG4vKiBQcmV2aW91cyBhbmQgTmV4dCBidXR0b25zIHdpdGggY3VzdG9tIFNWRyAqL1xuXG4uZmUtcGFnaW5hdGlvbi1jdXN0b20gLmZlLXBhZ2luYXRpb24tcHJldmlvdXMsXG4uZmUtcGFnaW5hdGlvbi1jdXN0b20gLmZlLXBhZ2luYXRpb24tbmV4dCB7XG4gIHN2ZyB7XG4gICAgd2lkdGg6ICRwYWdpbmF0aW9uLWN1c3RvbS1hcnJvdy13aWR0aDtcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgb2JqZWN0LWZpdDogY29udGFpbjtcbiAgICB0cmFuc2l0aW9uOiAuMjVzIGFsbDtcbiAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2stcGFnaW5hdGlvbi1jdXN0b20tYXJyb3cpKSB7QGluY2x1ZGUgaG9vay1wYWdpbmF0aW9uLWN1c3RvbS1hcnJvdygpO31cblxuICAgICY6OmJlZm9yZSB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgfVxuXG4gIC8qIEhvdmVyICovXG5cbiAgJjpob3ZlciB7XG4gICAgc3ZnIHtcbiAgICAgIHRyYW5zZm9ybTogc2NhbGUoMS4zKTtcbiAgICB9XG4gIH1cbn1cbiIsIi8vIE5hbWU6ICAgICAgICAgICAgVGFibGVcbi8vIERlc2NyaXB0aW9uOiAgICAgU3R5bGVzIGZvciB0YWJsZXNcbi8vXG4vLyBDb21wb25lbnQ6ICAgICAgIGBmZS10YWJsZWBcbi8vXG4vLyBNb2RpZmllcnM6ICAgICAgIGBmZS10YWJsZS1taWRkbGVgXG4vLyAgICAgICAgICAgICAgICAgIGBmZS10YWJsZS1kaXZpZGVyYFxuLy8gICAgICAgICAgICAgICAgICBgZmUtdGFibGUtc3RyaXBlZGBcbi8vICAgICAgICAgICAgICAgICAgYGZlLXRhYmxlLWhvdmVyYFxuLy8gICAgICAgICAgICAgICAgICBgZmUtdGFibGUtanVzdGlmeWAgICAgICBUbyByZW1vdmUgdGhlIG91dGVyIHBhZGRpbmcgb2YgdGhlIGZpcnN0IGFuZCBsYXN0IGNvbHVtbiBzbyB0aGF0IHRoZXkgYXJlIGZsdXNoIHdpdGggdGhlIHRhYmxlLCBhZGQgdGhlIC5mZS10YWJsZS1qdXN0aWZ5IGNsYXNzXG4vLyAgICAgICAgICAgICAgICAgIGBmZS10YWJsZS1zaHJpbmtgXG4vLyAgICAgICAgICAgICAgICAgIGBmZS10YWJsZS1leHBhbmRgXG4vLyAgICAgICAgICAgICAgICAgIGBmZS10YWJsZS1saW5rYFxuLy8gICAgICAgICAgICAgICAgICBgZmUtdGFibGUtcmVzcG9uc2l2ZWBcbi8vXG4vLyBTdGF0ZXM6ICAgICAgICAgIGBmZS1hY3RpdmVgXG4vL1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cblxuLy8gVmFyaWFibGVzXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuJHRhYmxlLW1hcmdpbi12ZXJ0aWNhbDogICAgICAgICAgICAgICAgICAgICAgICAgICRnbG9iYWwtbWFyZ2luICFkZWZhdWx0O1xuXG4kdGFibGUtY2VsbC1wYWRkaW5nLXZlcnRpY2FsOiAgICAgICAgICAgICAgICAgICAgMTZweCAhZGVmYXVsdDtcbiR0YWJsZS1jZWxsLXBhZGRpbmctaG9yaXpvbnRhbDogICAgICAgICAgICAgICAgICAxMnB4ICFkZWZhdWx0O1xuXG4kdGFibGUtaGVhZGVyLWNlbGwtZm9udC1zaXplOiAgICAgICAgICAgICAgICAgICAgJGdsb2JhbC1mb250LXNpemUgIWRlZmF1bHQ7XG4kdGFibGUtaGVhZGVyLWNlbGwtZm9udC13ZWlnaHQ6ICAgICAgICAgICAgICAgICAgYm9sZCAhZGVmYXVsdDtcbiR0YWJsZS1oZWFkZXItY2VsbC1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICAkZ2xvYmFsLWNvbG9yICFkZWZhdWx0O1xuXG4kdGFibGUtZm9vdGVyLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgICAgICAgICAgJGdsb2JhbC1zbWFsbC1mb250LXNpemUgIWRlZmF1bHQ7XG5cbiR0YWJsZS1jYXB0aW9uLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgICAgICAgICAkZ2xvYmFsLXNtYWxsLWZvbnQtc2l6ZSAhZGVmYXVsdDtcbiR0YWJsZS1jYXB0aW9uLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAkZ2xvYmFsLW11dGVkLWNvbG9yICFkZWZhdWx0O1xuXG4kdGFibGUtcm93LWFjdGl2ZS1iYWNrZ3JvdW5kOiAgICAgICAgICAgICAgICAgICAgI2ZmZCAhZGVmYXVsdDtcblxuJHRhYmxlLWRpdmlkZXItYm9yZGVyLXdpZHRoOiAgICAgICAgICAgICAgICAgICAgICRnbG9iYWwtYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJHRhYmxlLWRpdmlkZXItYm9yZGVyOiAgICAgICAgICAgICAgICAgICAgICAgICAgICRnbG9iYWwtYm9yZGVyLWNvbG9yICFkZWZhdWx0O1xuXG4kdGFibGUtc3RyaXBlZC1yb3ctYmFja2dyb3VuZDogICAgICAgICAgICAgICAgICAgJGdsb2JhbC1tdXRlZC1iYWNrZ3JvdW5kICFkZWZhdWx0O1xuJHRhYmxlLXN0cmlwZWQtYm9yZGVyLXdpZHRoOiAgICAgICAgICAgICAgICAgICAgICRnbG9iYWwtYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJHRhYmxlLXN0cmlwZWQtYm9yZGVyOiAgICAgICAgICAgICAgICAgICAgICAgICAgICRnbG9iYWwtYm9yZGVyLWNvbG9yICFkZWZhdWx0O1xuXG4kdGFibGUtaG92ZXItcm93LWJhY2tncm91bmQ6ICAgICAgICAgICAgICAgICAgICAgJHRhYmxlLXJvdy1hY3RpdmUtYmFja2dyb3VuZCAhZGVmYXVsdDtcblxuJHRhYmxlLWV4cGFuZC1taW4td2lkdGg6ICAgICAgICAgICAgICAgICAgICAgICAgIDE1MHB4ICFkZWZhdWx0O1xuXG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgQ29tcG9uZW50OiBUYWJsZVxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cblxuLmZlLXRhYmxlIHtcbiAgICBib3JkZXItY29sbGFwc2U6IGNvbGxhcHNlO1xuICAgIGJvcmRlci1zcGFjaW5nOiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1hcmdpbi1ib3R0b206ICR0YWJsZS1tYXJnaW4tdmVydGljYWw7XG4gICAgQGlmKG1peGluLWV4aXN0cyhob29rLXRhYmxlKSkge0BpbmNsdWRlIGhvb2stdGFibGUoKTt9XG59XG5cbi8qIEFkZCBtYXJnaW4gaWYgYWRqYWNlbnQgZWxlbWVudCAqL1xuKiArIC5mZS10YWJsZSB7IG1hcmdpbi10b3A6ICR0YWJsZS1tYXJnaW4tdmVydGljYWw7IH1cblxuXG4vKiBIZWFkZXIgY2VsbFxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi5mZS10YWJsZSB0aCB7XG4gICAgcGFkZGluZzogJHRhYmxlLWNlbGwtcGFkZGluZy12ZXJ0aWNhbCAkdGFibGUtY2VsbC1wYWRkaW5nLWhvcml6b250YWw7XG4gICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogYm90dG9tO1xuICAgIGZvbnQtc2l6ZTogJHRhYmxlLWhlYWRlci1jZWxsLWZvbnQtc2l6ZTtcbiAgICBmb250LXdlaWdodDogJHRhYmxlLWhlYWRlci1jZWxsLWZvbnQtd2VpZ2h0O1xuICAgIGNvbG9yOiAkdGFibGUtaGVhZGVyLWNlbGwtY29sb3I7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2stdGFibGUtaGVhZGVyLWNlbGwpKSB7QGluY2x1ZGUgaG9vay10YWJsZS1oZWFkZXItY2VsbCgpO31cbn1cblxuXG4vKiBDZWxsXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLmZlLXRhYmxlIHRkIHtcbiAgICBwYWRkaW5nOiAkdGFibGUtY2VsbC1wYWRkaW5nLXZlcnRpY2FsICR0YWJsZS1jZWxsLXBhZGRpbmctaG9yaXpvbnRhbDtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay10YWJsZS1jZWxsKSkge0BpbmNsdWRlIGhvb2stdGFibGUtY2VsbCgpO31cbn1cblxuLypcbiAqIFJlbW92ZSBtYXJnaW4gZnJvbSB0aGUgbGFzdC1jaGlsZFxuICovXG5cbi5mZS10YWJsZSB0ZCA+IDpsYXN0LWNoaWxkIHsgbWFyZ2luLWJvdHRvbTogMDsgfVxuXG5cbi8qIEZvb3RlclxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi5mZS10YWJsZSB0Zm9vdCB7XG4gICAgZm9udC1zaXplOiAkdGFibGUtZm9vdGVyLWZvbnQtc2l6ZTtcbiAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2stdGFibGUtZm9vdGVyKSkge0BpbmNsdWRlIGhvb2stdGFibGUtZm9vdGVyKCk7fVxufVxuXG5cbi8qIENhcHRpb25cbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4uZmUtdGFibGUgY2FwdGlvbiB7XG4gICAgZm9udC1zaXplOiAkdGFibGUtY2FwdGlvbi1mb250LXNpemU7XG4gICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICBjb2xvcjogJHRhYmxlLWNhcHRpb24tY29sb3I7XG4gICAgQGlmKG1peGluLWV4aXN0cyhob29rLXRhYmxlLWNhcHRpb24pKSB7QGluY2x1ZGUgaG9vay10YWJsZS1jYXB0aW9uKCk7fVxufVxuXG5cbi8qIEFsaWdubWVudCBtb2RpZmllclxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi5mZS10YWJsZS1taWRkbGUsXG4uZmUtdGFibGUtbWlkZGxlIHRkIHsgdmVydGljYWwtYWxpZ246IG1pZGRsZSAhaW1wb3J0YW50OyB9XG5cblxuLyogU3R5bGUgbW9kaWZpZXJzXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLypcbiAqIERpdmlkZXJcbiAqL1xuXG4uZmUtdGFibGUtZGl2aWRlciA+IHRyOm5vdCg6Zmlyc3QtY2hpbGQpLFxuLmZlLXRhYmxlLWRpdmlkZXIgPiA6bm90KDpmaXJzdC1jaGlsZCkgPiB0cixcbi5mZS10YWJsZS1kaXZpZGVyID4gOmZpcnN0LWNoaWxkID4gdHI6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgIGJvcmRlci10b3A6ICR0YWJsZS1kaXZpZGVyLWJvcmRlci13aWR0aCBzb2xpZCAkdGFibGUtZGl2aWRlci1ib3JkZXI7XG4gICAgQGlmKG1peGluLWV4aXN0cyhob29rLXRhYmxlLWRpdmlkZXIpKSB7QGluY2x1ZGUgaG9vay10YWJsZS1kaXZpZGVyKCk7fVxufVxuXG4vKlxuICogU3RyaXBlZFxuICovXG5cbi5mZS10YWJsZS1zdHJpcGVkID4gdHI6bnRoLW9mLXR5cGUob2RkKSxcbi5mZS10YWJsZS1zdHJpcGVkIHRib2R5IHRyOm50aC1vZi10eXBlKG9kZCkge1xuICAgIGJhY2tncm91bmQ6ICR0YWJsZS1zdHJpcGVkLXJvdy1iYWNrZ3JvdW5kO1xuICAgIGJvcmRlci10b3A6ICR0YWJsZS1zdHJpcGVkLWJvcmRlci13aWR0aCBzb2xpZCAkdGFibGUtc3RyaXBlZC1ib3JkZXI7XG4gICAgYm9yZGVyLWJvdHRvbTogJHRhYmxlLXN0cmlwZWQtYm9yZGVyLXdpZHRoIHNvbGlkICR0YWJsZS1zdHJpcGVkLWJvcmRlcjtcbiAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2stdGFibGUtc3RyaXBlZCkpIHtAaW5jbHVkZSBob29rLXRhYmxlLXN0cmlwZWQoKTt9XG59XG5cbi8qXG4gKiBIb3ZlclxuICovXG5cbi5mZS10YWJsZS1ob3ZlciA+IHRyOmhvdmVyLFxuLmZlLXRhYmxlLWhvdmVyIHRib2R5IHRyOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kOiAkdGFibGUtaG92ZXItcm93LWJhY2tncm91bmQ7XG4gICAgQGlmKG1peGluLWV4aXN0cyhob29rLXRhYmxlLWhvdmVyKSkge0BpbmNsdWRlIGhvb2stdGFibGUtaG92ZXIoKTt9XG59XG5cblxuLyogQWN0aXZlIHN0YXRlXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLmZlLXRhYmxlID4gdHIuZmUtYWN0aXZlLFxuLmZlLXRhYmxlIHRib2R5IHRyLmZlLWFjdGl2ZSB7XG4gICAgYmFja2dyb3VuZDogJHRhYmxlLXJvdy1hY3RpdmUtYmFja2dyb3VuZDtcbiAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2stdGFibGUtcm93LWFjdGl2ZSkpIHtAaW5jbHVkZSBob29rLXRhYmxlLXJvdy1hY3RpdmUoKTt9XG59XG5cbi8qIEp1c3RpZnkgbW9kaWZpZXJcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4uZmUtdGFibGUtanVzdGlmeSB0aDpmaXJzdC1jaGlsZCxcbi5mZS10YWJsZS1qdXN0aWZ5IHRkOmZpcnN0LWNoaWxkIHsgcGFkZGluZy1sZWZ0OiAwOyB9XG5cbi5mZS10YWJsZS1qdXN0aWZ5IHRoOmxhc3QtY2hpbGQsXG4uZmUtdGFibGUtanVzdGlmeSB0ZDpsYXN0LWNoaWxkIHsgcGFkZGluZy1yaWdodDogMDsgfVxuXG5cbi8qIENlbGwgc2l6ZSBtb2RpZmllclxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi5mZS10YWJsZS1zaHJpbmsgeyB3aWR0aDogMXB4OyB9XG4uZmUtdGFibGUtZXhwYW5kIHsgbWluLXdpZHRoOiAkdGFibGUtZXhwYW5kLW1pbi13aWR0aDsgfVxuXG5cbi8qIENlbGwgbGluayBtb2RpZmllclxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qXG4gKiBEb2VzIG5vdCB3b3JrIHdpdGggYGZlLXRhYmxlLWp1c3RpZnlgIGF0IHRoZSBtb21lbnRcbiAqL1xuXG4uZmUtdGFibGUtbGluayB7IHBhZGRpbmc6IDAgIWltcG9ydGFudDsgfVxuXG4uZmUtdGFibGUtbGluayA+IGEge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBhZGRpbmc6ICR0YWJsZS1jZWxsLXBhZGRpbmctdmVydGljYWwgJHRhYmxlLWNlbGwtcGFkZGluZy1ob3Jpem9udGFsO1xufVxuXG4vKiBSZXNwb25zaXZlIHRhYmxlXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuXG4vKiBQaG9uZSBsYW5kc2NhcGUgYW5kIHNtYWxsZXIgKi9cbkBtZWRpYSAobWF4LXdpZHRoOiA5NTlweCkge1xuXG4gICAgLmZlLXRhYmxlLXJlc3BvbnNpdmUsXG4gICAgLmZlLXRhYmxlLXJlc3BvbnNpdmUgdGJvZHksXG4gICAgLmZlLXRhYmxlLXJlc3BvbnNpdmUgdGgsXG4gICAgLmZlLXRhYmxlLXJlc3BvbnNpdmUgdGQsXG4gICAgLmZlLXRhYmxlLXJlc3BvbnNpdmUgdHIgeyBkaXNwbGF5OiBibG9jazsgfVxuXG4gICAgLmZlLXRhYmxlLXJlc3BvbnNpdmUgdGhlYWQgeyBkaXNwbGF5OiBub25lOyB9XG5cbiAgICAuZmUtdGFibGUtcmVzcG9uc2l2ZSB0aCxcbiAgICAuZmUtdGFibGUtcmVzcG9uc2l2ZSB0ZCB7XG4gICAgICAgIHdpZHRoOiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgICAgIG1heC13aWR0aDogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgICBtaW4td2lkdGg6IDAgIWltcG9ydGFudDtcbiAgICAgICAgb3ZlcmZsb3c6IHZpc2libGUgIWltcG9ydGFudDtcbiAgICAgICAgd2hpdGUtc3BhY2U6IG5vcm1hbCAhaW1wb3J0YW50O1xuICAgIH1cblxuICAgIC5mZS10YWJsZS1yZXNwb25zaXZlIHRoOm5vdCg6Zmlyc3QtY2hpbGQpOm5vdCguZmUtdGFibGUtbGluayksXG4gICAgLmZlLXRhYmxlLXJlc3BvbnNpdmUgdGQ6bm90KDpmaXJzdC1jaGlsZCk6bm90KC5mZS10YWJsZS1saW5rKSxcbiAgICAuZmUtdGFibGUtcmVzcG9uc2l2ZSAuZmUtdGFibGUtbGluazpub3QoOmZpcnN0LWNoaWxkKSA+IGEgeyBwYWRkaW5nLXRvcDogcm91bmQoKCR0YWJsZS1jZWxsLXBhZGRpbmctdmVydGljYWwgKiAwLjMzMzMzKSkgIWltcG9ydGFudDsgfVxuXG4gICAgLmZlLXRhYmxlLXJlc3BvbnNpdmUgdGg6bm90KDpsYXN0LWNoaWxkKTpub3QoLmZlLXRhYmxlLWxpbmspLFxuICAgIC5mZS10YWJsZS1yZXNwb25zaXZlIHRkOm5vdCg6bGFzdC1jaGlsZCk6bm90KC5mZS10YWJsZS1saW5rKSxcbiAgICAuZmUtdGFibGUtcmVzcG9uc2l2ZSAuZmUtdGFibGUtbGluazpub3QoOmxhc3QtY2hpbGQpID4gYSB7IHBhZGRpbmctYm90dG9tOiByb3VuZCgoJHRhYmxlLWNlbGwtcGFkZGluZy12ZXJ0aWNhbCAqIDAuMzMzMzMpKSAhaW1wb3J0YW50OyB9XG5cbiAgICAuZmUtdGFibGUtanVzdGlmeS5mZS10YWJsZS1yZXNwb25zaXZlIHRoLFxuICAgIC5mZS10YWJsZS1qdXN0aWZ5LmZlLXRhYmxlLXJlc3BvbnNpdmUgdGQge1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgfVxuXG59XG5cbi8qIG5ldyBzdHlsZSAqL1xuXG4uZmUtdGFibGUgdGJvZHkgdHIgeyB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDAuMXMgbGluZWFyOyB9XG5cbi5mZS10YWJsZS1zdHJpcGVkID4gdHI6bnRoLW9mLXR5cGUoZXZlbik6bGFzdC1jaGlsZCxcbi5mZS10YWJsZS1zdHJpcGVkIHRib2R5IHRyOm50aC1vZi10eXBlKGV2ZW4pOmxhc3QtY2hpbGQgeyBib3JkZXItYm90dG9tOiAkdGFibGUtc3RyaXBlZC1ib3JkZXItd2lkdGggc29saWQgJHRhYmxlLXN0cmlwZWQtYm9yZGVyOyB9XG4iLCIvL1xuLy8gTG9hZGVyOiBVdGlsaXRpZXNcbi8vXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuXG4vLyBWYXJpYWJsZXNcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4uc2l0ZS1kYXJrLWJhY2tncm91bmR7XG5cdGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1zaXRlLWRhcms7XG59XG5cbiIsImltZyxcbnBpY3R1cmUge1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBoZWlnaHQ6IGF1dG87XG59XG5cbi5jb2xvci1wcmltYXJ5e1xuICAgIGNvbG9yOiAkY29sb3ItLXByaW1hcnk7XG59XG5cbi50ZXh0LWhpZ2hsaWdodHtcbiAgICBmb250LXdlaWdodDogJGZvbnQtYm9sZC1wcmltYXJ5O1xufVxuXG4udGV4dC11cHBlcmNhc2V7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbn1cblxuLmhpZGRlbntcbiAgICBkaXNwbGF5OiBub25lO1xuICAgIG9wYWNpdHk6IDA7XG59XG5cblxuLy9AaW1wb3J0IFwiLi4vLi4vdGhlbWUvY29tcG9uZW50cy91dGlsaXRpZXNcIjtcbiIsIi8vIFZhcmlhYmxlc1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4kYm9keS1iYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3ItLXBhZ2UtYmFja2dyb3VuZCAhZGVmYXVsdDtcbiRncmlkLWNvbnRhaW5lcjogMTYwMHB4ICFkZWZhdWx0O1xuJGdyaWQtd3JhcHBlcjogMTQ2MHB4ICFkZWZhdWx0O1xuJGdyaWQtY29udGFpbmVyLS1jb250ZW50LXBhZGRpbmctc206IGNsYW1wKDE1cHgsIDV2dywgMjBweCkgIWRlZmF1bHQ7XG4kZ3JpZC1jb250YWluZXItLWNvbnRlbnQtcGFkZGluZy1tZDogY2xhbXAoMzBweCwgNXZ3LCA0MHB4KSAhZGVmYXVsdDtcbiRncmlkLWNvbnRhaW5lci0tY29udGVudC1wYWRkaW5nLWxnOiBjbGFtcCgzNXB4LCA0dncsIDQ1cHgpICFkZWZhdWx0O1xubWFpbntcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbmh0bWwsXG5ib2R5IHtcbiAgICBvdmVyZmxvdy14OiBoaWRkZW47XG5cbiAgICAmLm5vc2Nyb2xsIHsgb3ZlcmZsb3cteTogaGlkZGVuOyB9XG59XG5cbmJvZHl7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGJvZHktYmFja2dyb3VuZC1jb2xvcjtcbn1cblxuLmNvbnRlbnQtY29udGFpbmVye1xuICAgIG1heC13aWR0aDogJGdyaWQtY29udGFpbmVyO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1hcmdpbjogMCBhdXRvO1xufVxuXG4uY29udGVudC13cmFwcGVye1xuICAgIG1heC13aWR0aDogJGdyaWQtd3JhcHBlcjtcbiAgICBtYXJnaW46IDAgYXV0bztcblxuICAgIHdpZHRoOiAxMDAlO1xufVxuXG5cbkBtZWRpYSBzY3JlZW4gYW5kICAobWluLXdpZHRoOiAzMjBweCl7XG4gICAgLy8kc3BhY2UtbWFwIDogbWFwLWdldCgkc3BhY2luZywgMzIwKTtcbiAgICA6cm9vdHtcbiAgICAgICAgLS1ncmlkLWNvbnRhaW5lci0tY29udGVudC1wYWRkaW5nOiAjeyRncmlkLWNvbnRhaW5lci0tY29udGVudC1wYWRkaW5nLXNtfTtcbiAgICB9XG4gICAgbWFpbntcbiAgICAgICAgbWFyZ2luLXRvcDogJGhlYWRlci1tb2JpbC1oZWlnaHQ7O1xuICAgIH1cblxuICAgIHNlY3Rpb257XG4gICAgICAgIG1hcmdpbi1ib3R0b206IHZhcigtLXNwYWNlLXgtbGFyZ2UpO1xuICAgIH1cblxuICAgIC5jb250ZW50LWNvbnRhaW5lcntcbiAgICAgICAgcGFkZGluZzogMCB2YXIoLS1ncmlkLWNvbnRhaW5lci0tY29udGVudC1wYWRkaW5nLCAxNXB4KTtcblxuICAgIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgIChtaW4td2lkdGg6IDc2OHB4KXtcbiAgICA6cm9vdHtcbiAgICAgICAgLS1ncmlkLWNvbnRhaW5lci0tY29udGVudC1wYWRkaW5nOiAjeyRncmlkLWNvbnRhaW5lci0tY29udGVudC1wYWRkaW5nLW1kfTtcbiAgICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kICAobWluLXdpZHRoOiAxMjAwcHgpe1xuICAgIDpyb290e1xuICAgICAgICAtLWdyaWQtY29udGFpbmVyLS1jb250ZW50LXBhZGRpbmc6ICN7JGdyaWQtY29udGFpbmVyLS1jb250ZW50LXBhZGRpbmctbGd9O1xuICAgIH1cbn1cblxuXG5cbkBtZWRpYSBzY3JlZW4gYW5kICAobWluLXdpZHRoOiAxNDQwcHgpe1xuICAgIC8vJHNwYWNlLW1hcCA6IG1hcC1nZXQoJHNwYWNpbmcsIDE0NDApO1xuICAgICRncmlkLWNvbnRhaW5lci0tY29udGVudC1wYWRkaW5nOiAyNXB4O1xuICAgIG1haW57XG4gICAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgfVxuXG5cbiAgICBzZWN0aW9ue1xuICAgICAgICBtYXJnaW4tYm90dG9tOiB2YXIoLS1zcGFjZS0tdS0xKTtcbiAgICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDE2ODBweCkge1xuICAgIDpyb290e1xuICAgICAgICAtLWdyaWQtY29udGFpbmVyLS1jb250ZW50LXBhZGRpbmc6IDA7XG4gICAgfVxufVxuXG5cbkBtZWRpYSBzY3JlZW4gYW5kICAobWluLXdpZHRoOiAxODE4cHgpe1xuICAgIG1haW57XG4gICAgICAgIG1hcmdpbi10b3A6ICRoZWFkZXItaGVpZ2h0O1xuICAgIH1cbn1cblxuQGlmKG1peGluLWV4aXN0cyhob29rLWdyaWQtbWlzYykpIHtAaW5jbHVkZSBob29rLWdyaWQtbWlzYygpO31cblxuLy8gSG9va3Ncbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuLy8gQG1peGluIGhvb2stZ3JpZC1taXNjKCl7fVxuIiwiLy9cbi8vIFBhcnRpYWw6IEdyaWRcbi8vXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuXG4vLyBWYXJpYWJsZXNcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4gQG1peGluIGhvb2stZ3JpZC1taXNjKCl7XG5cdCAuc2VjdGlvbntcblx0XHQgbWFyZ2luLWJvdHRvbTogZ2V0U3BhY2UoJzJ4bCcpO1xuXHQgfVxuXHQgXG5cdCBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxNjgwcHgpIHtcblx0XHQgOnJvb3R7XG5cdFx0XHQgLy8tLWdyaWQtY29udGFpbmVyLS1jb250ZW50LXBhZGRpbmc6IDA7XG5cdFx0IH1cblx0IH1cbiB9XG4iLCIvL1xuLy8gUGFydGlhbDogVHlwb2dyYXBoeVxuLy9cbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5cbi8vIFZhcmlhYmxlc1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cblxuQG1peGluIGhvb2stdHlwb2dyYXBoeS1taXNjKCl7XG5cdFxuXHRAbWVkaWEgc2NyZWVuIGFuZCAgKG1pbi13aWR0aDogMTIwMHB4KXtcblx0XHQ6cm9vdHtcblx0XHRcdC0tZm9udC1zY2FsZV9fYmFzZTogMTdweDtcblx0XHR9XG5cdH07XG5cdFxuXHQuaGVhZGluZ3NDb21tb257XG5cdFx0bGV0dGVyLXNwYWNpbmc6IDAuMDNlbTtcblx0XHRmb250LXdlaWdodDogNDAwO1xuXHRcdGxpbmUtaGVpZ2h0OiAxMjUlO1xuXHR9XG5cdFxuXHRAaW5jbHVkZSBoZWFkaW5ncygpIHtcblx0IFxuXHRcdGgxLCAuaDF7XG5cdFx0XHRmb250LXNpemU6IGZlZnMoc3RlcC0tdS01KTtcblx0XHRcdEBleHRlbmQgLmhlYWRpbmdzQ29tbW9uO1xuXHRcdH1cblx0XHRcblx0XHRoMiwgLmgye1xuXHRcdFx0Zm9udC1zaXplOiBmZWZzKHN0ZXAtLXUtNCk7XG5cdFx0XHRAZXh0ZW5kIC5oZWFkaW5nc0NvbW1vbjtcblx0XHR9XG5cdFx0XG5cdFx0aDMsIC5oM3tcblx0XHRcdGZvbnQtc2l6ZTogZmVmcyhzdGVwLS11LTMpO1xuXHRcdFx0QGV4dGVuZCAuaGVhZGluZ3NDb21tb247XG5cdFx0fVxuXHRcdFxuXHRcdGg0LCAuaDR7XG5cdFx0XHRmb250LXNpemU6IGZlZnMoc3RlcC0tdS0xKTtcblx0XHRcdEBleHRlbmQgLmhlYWRpbmdzQ29tbW9uO1xuXHRcdFx0bGV0dGVyLXNwYWNpbmc6IC0wLjAzZW07XG5cdFx0fVxuXHRcdFxuXHRcdGg1LCAuaDV7XG5cdFx0XHRmb250LXNpemU6IGZlZnMoc3RlcC0tdS0xKTtcblx0XHRcdEBleHRlbmQgLmhlYWRpbmdzQ29tbW9uO1xuXHRcdFx0bGV0dGVyLXNwYWNpbmc6IDAuMDZlbTtcblx0XHR9XG5cdFx0XG5cdFx0aDYsIC5oNntcblx0XHRcdGZvbnQtc2l6ZTogZmVmcyhzdGVwLS11LTEpO1xuXHRcdFx0QGV4dGVuZCAuaGVhZGluZ3NDb21tb247XG5cdFx0XHRsZXR0ZXItc3BhY2luZzogMC4wNmVtO1xuXHRcdFx0dGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcblx0XHR9XG5cdFx0XG5cdH1cbn1cbiIsIiRuYXZpZ2F0aW9uLWxpc3QtbGlua3MtZ2FwOiAxMHB4ICFkZWZhdWx0O1xuJG5hdmlnYXRpb24tbGlzdC1saW5rcy1jb2xvci0taG92ZXI6ICRuYXYtbGluay1jb2xvci0taG92ZXIgIWRlZmF1bHQ7XG5cbi5uYXZpZ2F0aW9ue1xuICAgIGRpc3BsYXk6IGZsZXg7XG5cbiAgICAmLWRpcmVjdGlvbntcbiAgICAgICAgJi0taG9yaXpvbnRhbHtcbiAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgICAgICAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgICAgIH1cbiAgICAgICAgJi0tdmVydGljYWx7XG4gICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJi1saXN0e1xuICAgICAgICAmLS1saW5rc3tcbiAgICAgICAgICAgIGdhcDogJG5hdmlnYXRpb24tbGlzdC1saW5rcy1nYXA7XG4gICAgICAgICAgICBcbiAgICAgICAgICAgIGF7XG4gICAgICAgICAgICAgICAgJjpob3ZlcntcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRuYXZpZ2F0aW9uLWxpc3QtbGlua3MtY29sb3ItLWhvdmVyO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICYtLWRyb3Bkb3due1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG5cblxuICAgICAgICAgICAgJi5uYXZpZ2F0aW9uLXBsYWNlLS1oZWFkZXJ7XG4gICAgICAgICAgICAgICAgPiAqIHtcbiAgICAgICAgICAgICAgICAgICAgb3JkZXI6IDEwO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgID4gLm5hdi1pdGVtIHtcbiAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgICAgICAgICAvLyY6bnRoLWNoaWxkKG4rMil7XG4gICAgICAgICAgICAgICAgICAgIC8vICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICAgICAgICAgIC8vXG4gICAgICAgICAgICAgICAgICAgIC8vfVxuICAgICAgICAgICAgICAgICAgICAme1xuICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICYtLWN1cnJlbnR7XG4gICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICAgICAgfVxuXG5cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgLm5hdi1pdGVte1xuICAgICAgICAgICAgICAgICAgICAubmF2LWxpbmt7XG4gICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAmOmhvdmVye1xuICAgICAgICAgICAgICAgICAgICA+IC5uYXYtaXRlbXtcbiAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuXG5cbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG4iLCIvLyBWYXJpYWJsZXNcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuJG1vYmlsZS1uYXZpZ2F0aW9uLWJ1dHRvbi1jb250YWluZXItc2l6ZTogMzRweCAhZGVmYXVsdDtcbiRtb2JpbGUtbmF2aWdhdGlvbi1idXR0b24tYmFja2dyb3VuZDogcmdiYSgkbmF2aWdhdGlvbi1vcGVuZXItYnV0dG9uLWNvbG9yLS1iYWNrZ3JvdW5kLCAuMikgIWRlZmF1bHQ7XG4kbW9iaWxlLW5hdmlnYXRpb24tYnV0dG9uLWNvbnRhaW5lci1yYWRpdXM6IDEwMCUgIWRlZmF1bHQ7XG4kbmF2YmFyLWxpbmstY29sb3ItLWRlZmF1bHQ6ICRjb2xvci0tc2Vjb25kYXJ5ICFkZWZhdWx0O1xuJG5hdmJhci1saW5rLWNvbG9yLS1oaWdobGlnaHQ6ICRuYXZiYXItbGluay1jb2xvci0tZGVmYXVsdCAhZGVmYXVsdDtcbiRuYXZiYXItbGluay1jb2xvci0taG92ZXI6ICRjb2xvci0tY29udHJhc3QtZGFyayAhZGVmYXVsdDtcbiRuYXZiYXItbGluay1mb250LS1zaXplLW1vYmlsOiAxOXB4ICFkZWZhdWx0O1xuJG5hdmJhci1saW5rLWZvbnQtLXNpemUtYmVmb3JlLWRlc2t0b3A6IDE0cHggIWRlZmF1bHQ7XG4kbmF2YmFyLWxpbmstZm9udC0tc2l6ZTogMThweCAhZGVmYXVsdDtcbiRuYXZiYXItbGluay1mb250LS13ZWlnaHQ6IDQwMCAhZGVmYXVsdDtcbiRuYXZiYXItbGluay1mb250LS1saW5lLWhlaWdodDogMS4xNSAhZGVmYXVsdDtcbiRuYXZiYXItbGluay1mb250LWZhbWlseTogJGZvbnQtc2Vjb25kYXJ5ICFkZWZhdWx0O1xuXG5cbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5cblxuLyoqXG5ERUZBVUxUU1xuICovXG5uYXZ7XG4gICAgdWx7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICAgICAgZGlzcGxheTogZmxleDtcblxuICAgICAgICBsaXtcbiAgICAgICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgICAgICBhe1xuICAgICAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuLyoqXG5TUEVDSUZJQ1xuICovXG4uaGVhZGVyLW5hdmlnYXRpb257XG4gICAgdWx7XG4gICAgICAgIGxpe1xuICAgICAgICAgICAgLy9tYXJnaW4tcmlnaHQ6IDY2cHg7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGZsZXgtZW5kO1xuICAgICAgICAgICAgYXtcbiAgICAgICAgICAgICAgICBmb250LWZhbWlseTogJG5hdi1saW5rLWZvbnQtZmFtaWx5O1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkbmF2LWxpbmstY29sb3ItLWRlZmF1bHQ7XG4gICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6ICRuYXYtbGluay1mb250LS1saW5lLWhlaWdodDtcbiAgICAgICAgICAgICAgICBcbiAgICBcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJjpsYXN0LWNoaWxke1xuICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLm5hdi1saW5re1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgICAgICAmOmhvdmVye1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogJG5hdi1saW5rLWNvbG9yLS1ob3ZlcjtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgJi5uYXYtbGlua3tcblxuICAgICAgICAgICAgICAgICAgICAmLS1jdXJyZW50e1xuICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRuYXYtbGluay1jb2xvci0taG92ZXI7XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIH1cbiAgICBcbiAgICAgICAgICAgICAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2stbmF2LWxpbmspKSB7QGluY2x1ZGUgaG9vay1uYXYtbGluaygpO31cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbiAgICBcbiAgICBcbiAgICBcbn1cblxuLyoqIEhBTUJVUkdFUiAqKi9cblxuLmJ1dHRvbi1jb250YWluZXIge1xuICAgIGhlaWdodDogMzRweDtcbiAgICB3aWR0aDogMzRweDtcbiAgICBwYWRkaW5nOiA4cHggMCA3cHggMDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgb3BhY2l0eTogMTtcbiAgICBiYWNrZ3JvdW5kOiAkbmF2aWdhdGlvbi1vcGVuZXItYnV0dG9uLWNvbG9yLS1iYWNrZ3JvdW5kO1xuICAgIGJvcmRlci1yYWRpdXM6IDEwMCU7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuXG4gICAgJi5hY3RpdmUge1xuICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDhweCkgcm90YXRlKDEzNWRlZyk7XG4gICAgICAgIH1cblxuICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLThweCkgcm90YXRlKC0xMzVkZWcpO1xuICAgICAgICB9XG5cbiAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDApO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJjo6YmVmb3JlLFxuICAgICY6OmFmdGVyLFxuICAgIHNwYW4ge1xuICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgdHJhbnNpdGlvbjogMC41cztcbiAgICAgICAgYmFja2dyb3VuZDogJG5hdmlnYXRpb24tb3BlbmVyLWJ1dHRvbi1jb2xvci0tYWN0aXZlO1xuICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgIGhlaWdodDogM3B4O1xuICAgICAgICB3aWR0aDogMjJweDtcbiAgICB9XG5cbiAgICBzcGFuIHtcbiAgICAgICAgbWFyZ2luOiA1cHggMDtcbiAgICB9XG59XG5cbi8qKlxuUkVTUE9OU0lWRSBOQVZJR0FUSU9OXG4gKi9cblxuXG4ub3ZlcmxheS1tZW51IHtcbiAgICB6LWluZGV4OiA1O1xuXG4gICAgJi5vcGVue1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCkgdHJhbnNsYXRlWSgwKTtcbiAgICAgICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgICB9XG59XG5cbi5mZS1uYXZ7XG4gICAgJGZlLW5hdjogJjtcbiAgICAmX19jb250YWluZXJ7XG4gXG4gICAgICAgICYuZmUtbmF2YmFyX19uYXZpZ2F0aW9ue1xuICAgICAgICAgICAgI3skZmUtbmF2fV9faXRlbXtcbiAgICAgICAgICAgICAgICBjb2xvcjogJG5hdmJhci1saW5rLWNvbG9yLS1kZWZhdWx0O1xuICAgIFxuICAgICAgICAgICAgICAgICY6aG92ZXJ7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkbmF2YmFyLWxpbmstY29sb3ItLWhvdmVyO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2stbmF2YmFyLW5hdmlnYXRpb24tbmF2LWNvbnRhaW5lci1uYXYtaXRlbSkpIHtAaW5jbHVkZSBob29rLW5hdmJhci1uYXZpZ2F0aW9uLW5hdi1jb250YWluZXItbmF2LWl0ZW0oKTt9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAjeyRmZS1uYXZ9X19saW5re1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogJG5hdmJhci1saW5rLWZvbnQtLXNpemU7XG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6ICRuYXZiYXItbGluay1mb250LS13ZWlnaHQ7XG4gICAgICAgICAgICAgICAgZm9udC1mYW1pbHk6ICRuYXZiYXItbGluay1mb250LWZhbWlseTtcbiAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogJG5hdmJhci1saW5rLWZvbnQtLWxpbmUtaGVpZ2h0O1xuICAgICAgICAgICAgICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1uYXZiYXItbmF2aWdhdGlvbi1uYXYtY29udGFpbmVyLW5hdi1saW5rKSkge0BpbmNsdWRlIGhvb2stbmF2YmFyLW5hdmlnYXRpb24tbmF2LWNvbnRhaW5lci1uYXYtbGluaygpO31cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1uYXZiYXItbmF2aWdhdGlvbi1uYXYtY29udGFpbmVyKSkge0BpbmNsdWRlIGhvb2stbmF2YmFyLW5hdmlnYXRpb24tbmF2LWNvbnRhaW5lcigpO31cbiAgICAgICAgfVxuICAgIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgIChtaW4td2lkdGg6IDMyMHB4KSB7XG4gICAgLmhlYWRlci1uYXZpZ2F0aW9uIHtcbiAgICAgICAgdWwge1xuICAgICAgICAgICAgbGkge1xuICAgICAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6ICRuYXYtbGluay1mb250LS1zaXplLW1vYmlsO1xuICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5vdmVybGF5LW1lbnV7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMTAwJSkgdHJhbnNsYXRlWSgwKTsgLy8gZGVmYXVsdFxuICAgICAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgICAgIHRyYW5zaXRpb246IC4yNXMgYWxsO1xuICAgICAgICBiYWNrZ3JvdW5kOiAkbmF2aWdhdGlvbi1vdmVybGF5LWJnLWNvbG9yO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgaGVpZ2h0OiBjYWxjKDEwMCUgLSAjeyRoZWFkZXItbW9iaWwtaGVpZ2h0fSk7XG4gICAgICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICAgICAgdG9wOiAkaGVhZGVyLW1vYmlsLWhlaWdodDtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcblxuICAgICAgICAmLS1sZWZ0LXRvLXJpZ2h0IHtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMTAwJSkgdHJhbnNsYXRlWSgwKTtcbiAgICAgICAgfVxuXG4gICAgICAgICYtLXJpZ2h0LXRvLWxlZnQge1xuICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDEwMCUpIHRyYW5zbGF0ZVkoMCk7XG4gICAgICAgIH1cblxuICAgICAgICAmLS1ib3R0b20tdG8tdXAge1xuICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApIHRyYW5zbGF0ZVkoMTAwJSk7XG4gICAgICAgIH1cblxuICAgICAgICAmLS11cC10by1ib3R0b20ge1xuICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApIHRyYW5zbGF0ZVkoLTEwMCUpO1xuICAgICAgICB9XG5cbiAgICAgICAgdWwge1xuICAgICAgICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgICAgICAgICBsaSB7XG4gICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gICAgICAgICAgICAgICAgJjpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDQ1cHg7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcblxuICAgICAgICAgICAgICAgICAgICAmOmxpbmssXG4gICAgICAgICAgICAgICAgICAgICY6dmlzaXRlZCB7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogJG5hdi1saW5rLWNvbG9yLS1kZWZhdWx0O1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgXG4gICAgICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1uYXZpZ2F0aW9uLW92ZXJsYXktbWVudSkpIHtAaW5jbHVkZSBob29rLW5hdmlnYXRpb24tb3ZlcmxheS1tZW51KCk7fVxuICAgIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgIChtaW4td2lkdGg6ICRncmlkLWhlYWRlci0tbmF2LXNob3ctYXQpe1xuICAgIC5oZWFkZXItbmF2aWdhdGlvbiB7XG4gICAgICAgIHVsIHtcbiAgICAgICAgICAgIGxpIHtcbiAgICAgICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAkbmF2LWxpbmstZm9udC0tc2l6ZS1iZWZvcmUtZGVza3RvcDtcbiAgICAgICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1uYXYtaGVhZGVyLW5hdmlnYXRpb24pKSB7QGluY2x1ZGUgaG9vay1uYXYtaGVhZGVyLW5hdmlnYXRpb24oKTt9XG4gICAgfVxuXG4gICAgLyoqXG4gICAgQGRlcHJlY2F0ZWRcbiAgICAgKi9cbiAgICAjbmF2aWdhdGlvbi1vcGVuZXItdG9nZ2xlLWJ1dHRvbiB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIGhlaWdodDogMDtcbiAgICAgICAgd2lkdGg6IDA7XG4gICAgICAgIG9wYWNpdHk6IDA7XG4gICAgfVxuICAgIFxuICAgIC8qKlxuICAgIEBkZXByZWNhdGVkXG4gICAgICovXG4gICAgLm92ZXJsYXktbWVudXtcbiAgICAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgdG9wOiBhdXRvO1xuICAgICAgICBsZWZ0OiBhdXRvO1xuICAgICAgICB3aWR0aDogZml0LWNvbnRlbnQ7XG4gICAgICAgIHdpZHRoOiAtbW96LWZpdC1jb250ZW50O1xuICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTtcbiAgICAgICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcblxuICAgICAgICB1bCB7XG4gICAgICAgICAgICB3aWR0aDogZml0LWNvbnRlbnQ7XG4gICAgICAgICAgICB3aWR0aDogLW1vei1maXQtY29udGVudDtcbiAgICAgICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHVuc2V0O1xuXG4gICAgICAgICAgICBsaSB7XG4gICAgICAgICAgICAgICAgJjpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbjogMCAwIDAgMjBweDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEzMDBweCkge1xuICAgIC5oZWFkZXItbmF2aWdhdGlvbiB7XG4gICAgICAgIHVsIHtcbiAgICAgICAgICAgIGxpIHtcbiAgICAgICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICAgICAgLy9mb250LXNpemU6IGNhbGMoMS4zMyAqICN7JG5hdi1saW5rLWZvbnQtLXNpemUtYmVmb3JlLWRlc2t0b3B9KTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cblxuICAgIC5vdmVybGF5LW1lbnUge1xuICAgICAgICB1bCB7XG4gICAgICAgICAgICBsaSB7XG4gICAgICAgICAgICAgICAgJjpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICAgICAgICAgICAgICAgIC8vbWFyZ2luOiAwIDAgMCAzNXB4O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTY4MHB4KSB7XG4gICAgLmhlYWRlci1uYXZpZ2F0aW9uIHtcbiAgICAgICAgdWwge1xuICAgICAgICAgICAgbGkge1xuICAgICAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6ICRuYXYtbGluay1mb250LS1zaXplO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5vdmVybGF5LW1lbnUge1xuICAgICAgICB1bCB7XG4gICAgICAgICAgICBsaSB7XG4gICAgICAgICAgICAgICAgJjpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICAgICAgICAgICAgICAgIC8vbWFyZ2luOiAwIDAgMCA0OXB4O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuQGtleWZyYW1lcyBmYWRlSW5SaWdodCB7XG4gICAgMCUge1xuICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICBsZWZ0OiAyMCU7XG4gICAgfVxuICAgIDEwMCUge1xuICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICBsZWZ0OiAwO1xuICAgIH1cbn1cblxuLy8gSG9va3Ncbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4vLyBAbWl4aW4gaG9vay1uYXYtbGluaygpe31cbi8vIEBtaXhpbiBob29rLW5hdmlnYXRpb24tb3ZlcmxheS1tZW51KCl7fVxuLy8gQG1peGluIGhvb2stbmF2LWhlYWRlci1uYXZpZ2F0aW9uKCl7fVxuLy8gQG1peGluIGhvb2stbmF2YmFyLW5hdmlnYXRpb24tbmF2LWNvbnRhaW5lci1uYXYtaXRlbSgpe31cbi8vIEBtaXhpbiBob29rLW5hdmJhci1uYXZpZ2F0aW9uLW5hdi1jb250YWluZXItbmF2LWxpbmsoKXt9XG4vLyBAbWl4aW4gaG9vay1uYXZiYXItbmF2aWdhdGlvbi1uYXYtY29udGFpbmVyKCl7fVxuXG4vLyBAbWl4aW4gaG9vay1uYXYtbWlzYygpe31cblxuQGlmKG1peGluLWV4aXN0cyhob29rLW5hdi1taXNjKSkge0BpbmNsdWRlIGhvb2stbmF2LW1pc2MoKTt9XG4iLCIvL1xuLy8gUGFydGlhbDogTmF2XG4vL1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cblxuLy8gVmFyaWFibGVzXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuQG1peGluIGhvb2stbmF2YmFyLW5hdmlnYXRpb24tbmF2LWNvbnRhaW5lci1uYXYtbGlua3tcblx0bGV0dGVyLXNwYWNpbmc6IDAuMDJlbTtcblx0dGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcblx0XG59XG5cbkBtaXhpbiBob29rLW5hdmJhci1uYXZpZ2F0aW9uLW5hdi1jb250YWluZXItbmF2LWxpbmt7XG5cdGJvcmRlci1ib3R0b206IDJweCBkYXNoZWQgdHJhbnNwYXJlbnQ7XG5cdCY6aG92ZXJ7XG5cdFx0Ym9yZGVyLWJvdHRvbS1jb2xvcjogJGNvbG9yLS1kYXJrO1xuXHR9XG59XG4iLCIvLyBWYXJpYWJsZXNcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4kbW9iaWxlLW5hdmlnYXRpb24tYnV0dG9uLWNvbnRhaW5lci1zaXplOiA0MHB4ICFkZWZhdWx0O1xuJG1vYmlsZS1uYXZpZ2F0aW9uLWJ1dHRvbi1iYWNrZ3JvdW5kOiByZ2JhKCRjb2xvci0tc2Vjb25kYXJ5LCAuMikgIWRlZmF1bHQ7XG4kbW9iaWxlLW5hdmlnYXRpb24tYnV0dG9uLWNvbnRhaW5lci1yYWRpdXM6IDAgIWRlZmF1bHQ7XG4kbmF2YmFyLW92ZXJsYXktYmFja2dyb3VuZDogI2ZmZiAhZGVmYXVsdDtcbiRuYXZiYXItYmFja2dyb3VuZDogJG5hdmJhci1vdmVybGF5LWJhY2tncm91bmQgIWRlZmF1bHQ7XG5cbi5mZS1uYXZiYXJ7XG5cdCRmZS1uYXZiYXI6ICY7XG5cdCZfX292ZXJsYXl7XG5cdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0xMDAlKSB0cmFuc2xhdGVZKDApOyAvLyBkZWZhdWx0XG5cdFx0dmlzaWJpbGl0eTogaGlkZGVuO1xuXHRcdHRyYW5zaXRpb246IC4yNXMgYWxsO1xuXHRcdGJhY2tncm91bmQ6ICRuYXZiYXItb3ZlcmxheS1iYWNrZ3JvdW5kO1xuXHRcdHdpZHRoOiAxMDAlO1xuXHRcdGhlaWdodDogY2FsYygxMDAlIC0gI3skaGVhZGVyLW1vYmlsLWhlaWdodH0pO1xuXHRcdHBvc2l0aW9uOiBmaXhlZDtcblx0XHR0b3A6ICRoZWFkZXItbW9iaWwtaGVpZ2h0O1xuXHRcdGxlZnQ6IDA7XG5cdFx0ZGlzcGxheTogZmxleDtcblx0XHRvdmVyZmxvdzogaGlkZGVuO1xuXHRcdFxuXHRcdCYtLWxlZnQtdG8tcmlnaHQge1xuXHRcdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0xMDAlKSB0cmFuc2xhdGVZKDApO1xuXHRcdH1cblx0XHRcblx0XHQmLS1yaWdodC10by1sZWZ0IHtcblx0XHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlWCgxMDAlKSB0cmFuc2xhdGVZKDApO1xuXHRcdH1cblx0XHRcblx0XHQmLS1ib3R0b20tdG8tdXAge1xuXHRcdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApIHRyYW5zbGF0ZVkoMTAwJSk7XG5cdFx0fVxuXHRcdFxuXHRcdCYtLXVwLXRvLWJvdHRvbSB7XG5cdFx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCkgdHJhbnNsYXRlWSgtMTAwJSk7XG5cdFx0fVxuXHRcdFxuXHRcdCN7JGZlLW5hdmJhcn1fX25hdmlnYXRpb257XG5cdFx0XHRsaXN0LXN0eWxlOiBub25lO1xuXHRcdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRcdFx0XG5cdFx0XHRsaSB7XG5cdFx0XHRcdHRleHQtYWxpZ246IGNlbnRlcjtcblx0XHRcdFx0XG5cdCBcblx0XHRcdFx0XG5cdFx0XHRcdGEge1xuXHRcdFx0XHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdFx0XHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0XHRcdFx0XHR0ZXh0LWRlY29yYXRpb246IG5vbmU7XG5cdFx0XHRcdFx0dGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcblx0XHRcdFx0XHRcblx0XHRcdFx0XHQmOmxpbmssXG5cdFx0XHRcdFx0Jjp2aXNpdGVkIHtcblx0XHRcdFx0XHRcdGNvbG9yOiAkbmF2LWxpbmstY29sb3ItLWRlZmF1bHQ7XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0XHRAaWYobWl4aW4tZXhpc3RzKGhvb2stbmF2YmFyLW92ZXJsYXktbmF2aWdhdGlvbikpIHtAaW5jbHVkZSBob29rLW5hdmJhci1vdmVybGF5LW5hdmlnYXRpb24oKTt9XG5cdFx0XHRcblx0XHR9XG5cdFx0XG5cdFx0QGlmKG1peGluLWV4aXN0cyhob29rLW5hdmJhci1vdmVybGF5KSkge0BpbmNsdWRlIGhvb2stbmF2YmFyLW92ZXJsYXkoKTt9XG5cdFx0XG5cdFx0Ji0tb3BlbmVke1xuXHRcdFx0ei1pbmRleDogNTtcblx0XHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKSB0cmFuc2xhdGVZKDApO1xuXHRcdFx0dmlzaWJpbGl0eTogdmlzaWJsZTtcblx0XHRcdFxuXHRcdFx0QGlmKG1peGluLWV4aXN0cyhob29rLW5hdmJhci1vdmVybGF5LW9wZW5lZCkpIHtAaW5jbHVkZSBob29rLW5hdmJhci1vdmVybGF5LW9wZW5lZCgpO31cblx0XHR9XG5cdFx0XG5cdH1cblx0Jl9fY29udGFpbmVye1xuXHRcdHdpZHRoOiAxMDAlO1xuXHRcdGRpc3BsYXk6IGZsZXg7XG5cdFx0YWxpZ24taXRlbXM6IGNlbnRlcjtcblx0XHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcblx0XHRcblx0XHRAaWYobWl4aW4tZXhpc3RzKGhvb2stbmF2YmFyLWNvbnRhaW5lcikpIHtAaW5jbHVkZSBob29rLW5hdmJhci1jb250YWluZXIoKTt9XG5cdH1cblx0Ji1tb2JpbGUtbmF2aWdhdGlvbi1idXR0b257XG5cdFx0Jl9fY29udGFpbmVye1xuXHRcdFx0aGVpZ2h0OiAkbW9iaWxlLW5hdmlnYXRpb24tYnV0dG9uLWNvbnRhaW5lci1zaXplO1xuXHRcdFx0d2lkdGg6ICRtb2JpbGUtbmF2aWdhdGlvbi1idXR0b24tY29udGFpbmVyLXNpemU7XG5cdFx0XHRwYWRkaW5nOiA4cHggMCA4cHggMDtcblx0XHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0XHRcdG9wYWNpdHk6IDE7XG5cdFx0XHRiYWNrZ3JvdW5kOiAkbW9iaWxlLW5hdmlnYXRpb24tYnV0dG9uLWJhY2tncm91bmQ7XG5cdFx0XHRib3JkZXItcmFkaXVzOiAkbW9iaWxlLW5hdmlnYXRpb24tYnV0dG9uLWNvbnRhaW5lci1yYWRpdXM7XG5cdFx0XHRkaXNwbGF5OiBmbGV4O1xuXHRcdFx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcblx0XHRcdGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cdFx0XHRjdXJzb3I6IHBvaW50ZXI7XG5cdFx0XHRtYXJnaW4tbGVmdDogYXV0bztcblx0XHRcdFxuXHRcdFx0Jjo6YmVmb3JlLFxuXHRcdFx0Jjo6YWZ0ZXIsXG5cdFx0XHRzcGFuIHtcblx0XHRcdFx0Y29udGVudDogXCJcIjtcblx0XHRcdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0XHRcdHRyYW5zaXRpb246IDAuNXM7XG5cdFx0XHRcdGJhY2tncm91bmQ6ICRuYXZpZ2F0aW9uLW9wZW5lci1idXR0b24tY29sb3ItLWFjdGl2ZTtcblx0XHRcdFx0Ym9yZGVyOiBub25lO1xuXHRcdFx0XHRoZWlnaHQ6IDNweDtcblx0XHRcdFx0d2lkdGg6IDIycHg7XG5cdFx0XHR9XG5cdFx0XHRcblx0XHRcdHNwYW4ge1xuXHRcdFx0XHRtYXJnaW46IDVweCAwO1xuXHRcdFx0fVxuXHRcdFx0XG5cdFx0XHQmLS1hY3RpdmUge1xuXHRcdFx0XHQmOjpiZWZvcmUge1xuXHRcdFx0XHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlWSg4cHgpIHJvdGF0ZSgxMzVkZWcpO1xuXHRcdFx0XHR9XG5cdFx0XHRcdFxuXHRcdFx0XHQmOjphZnRlciB7XG5cdFx0XHRcdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGVZKC04cHgpIHJvdGF0ZSgtMTM1ZGVnKTtcblx0XHRcdFx0fVxuXHRcdFx0XHRcblx0XHRcdFx0c3BhbiB7XG5cdFx0XHRcdFx0dHJhbnNmb3JtOiBzY2FsZSgwKTtcblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdFx0XG5cdFx0XHRAaWYobWl4aW4tZXhpc3RzKGhvb2stbW9iaWxlLW5hdmlnYXRpb24tYnV0dG9uLWNvbnRhaW5lcikpIHtAaW5jbHVkZSBob29rLW1vYmlsZS1uYXZpZ2F0aW9uLWJ1dHRvbi1jb250YWluZXIoKTt9XG5cdFx0XHRcblx0XHRcdFxuXHRcdH1cblx0fVxuXHQmX19uYXZpZ2F0aW9ue1xuXHRcdG1hcmdpbjogMDtcblx0XHRwYWRkaW5nOiAwO1xuXHRcdGxpc3Qtc3R5bGU6IG5vbmU7XG5cdFx0ZGlzcGxheTogZmxleDtcblx0IFxuXHRcdHdpZHRoOiAxMDAlO1xuXHRcdGhlaWdodDogMTAwJTtcbiBcblx0XHRmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuXHRcdGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cdFx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG5cdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRcdFxuXHRcdGxpe1xuXHRcdFx0dGV4dC1hbGlnbjogY2VudGVyO1xuXHRcdFx0b3BhY2l0eTogMTtcblx0XHRcdCY6bm90KDpmaXJzdC1jaGlsZCkge1xuXHRcdFx0XHRtYXJnaW4tdG9wOiBnZXRTcGFjZSgnbScpO1xuXHRcdFx0fVxuXHRcdFx0XG5cdFx0XHRhIHtcblx0XHRcdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0XHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0XHRcdFx0dGV4dC1kZWNvcmF0aW9uOiBub25lO1xuXHRcdFx0XHR0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuXHRcdFx0XHRcblx0XHRcdFx0JjpsaW5rLFxuXHRcdFx0XHQmOnZpc2l0ZWQge1xuXHRcdFx0XHRcdGNvbG9yOiAkbmF2LWxpbmstY29sb3ItLWRlZmF1bHQ7XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHRcdFxuXHRcdH1cblx0XHRcblx0XHRAaWYobWl4aW4tZXhpc3RzKGhvb2stbmF2YmFyLW5hdmlnYXRpb24pKSB7QGluY2x1ZGUgaG9vay1uYXZiYXItbmF2aWdhdGlvbigpO31cblx0XHRcblx0fVxuXHRcbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgIChtaW4td2lkdGg6ICRncmlkLWhlYWRlci0tbmF2LXNob3ctYXQpe1xuXHQuZmUtbmF2YmFyIHtcblx0XHQmX19vdmVybGF5IHtcblx0XHRcdG1hcmdpbjogMCBhdXRvO1xuXHRcdFx0ZGlzcGxheTogZmxleDtcblx0XHRcdGZsZXgtZGlyZWN0aW9uOiByb3c7XG5cdFx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdFx0XHR0b3A6IGF1dG87XG5cdFx0XHRsZWZ0OiBhdXRvO1xuXHRcdFx0d2lkdGg6IGZpdC1jb250ZW50O1xuXHRcdFx0d2lkdGg6IC1tb3otZml0LWNvbnRlbnQ7XG5cdFx0XHRoZWlnaHQ6IDEwMCU7XG5cdFx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7XG5cdFx0XHR2aXNpYmlsaXR5OiB2aXNpYmxlO1xuXHRcdFx0YmFja2dyb3VuZC1jb2xvcjogJG5hdmJhci1iYWNrZ3JvdW5kO1xuXHRcdH1cblx0XHRcblx0XHQmX19uYXZpZ2F0aW9ue1xuXHRcdFx0d2lkdGg6IGZpdC1jb250ZW50O1xuXHRcdFx0d2lkdGg6IC1tb3otZml0LWNvbnRlbnQ7XG5cdFx0XHRoZWlnaHQ6IDEwMCU7XG5cdFx0XHRmbGV4LWRpcmVjdGlvbjogcm93O1xuXHRcdFx0anVzdGlmeS1jb250ZW50OiB1bnNldDtcblx0XHRcdGNvbHVtbi1nYXA6IGdldFNwYWNlKCdtJyk7XG5cdFx0XHRcblx0XHRcdGxpIHtcblx0XHRcdFx0Jjpub3QoOmZpcnN0LWNoaWxkKSB7XG5cdFx0XHRcdFx0bWFyZ2luOiB1bnNldDtcblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdH1cblx0XHRcblx0fVxuXHRcblx0I2ZlLW5hdmJhci1uYXZpZ2F0aW9uLW9wZW5lci1idXR0b24ge1xuXHRcdGRpc3BsYXk6IG5vbmU7XG5cdFx0aGVpZ2h0OiAwO1xuXHRcdHdpZHRoOiAwO1xuXHRcdG9wYWNpdHk6IDA7XG5cdH1cblx0XG59XG5cbi8vIEhvb2tzXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuLy8gQG1peGluIGhvb2stbmF2YmFyLW92ZXJsYXkoKXt9XG4vLyBAbWl4aW4gaG9vay1uYXZiYXItb3ZlcmxheS1uYXZpZ2F0aW9uKCl7fVxuLy8gQG1peGluIGhvb2stbmF2YmFyLW92ZXJsYXktb3BlbmVkKCl7fVxuLy8gQG1peGluIGhvb2stbmF2YmFyLWNvbnRhaW5lcigpe31cbi8vIEBtaXhpbiBob29rLW5hdmJhci1uYXZpZ2F0aW9uKCl7fVxuLy8gQG1peGluIGhvb2stbW9iaWxlLW5hdmlnYXRpb24tYnV0dG9uLWNvbnRhaW5lcigpe31cbi8vIEBtaXhpbiBob29rLWhlYWRlci1taXNjKCl7fVxuXG5AaWYobWl4aW4tZXhpc3RzKGhvb2stbmF2YmFyLW1pc2MpKSB7QGluY2x1ZGUgaG9vay1uYXZiYXItbWlzYygpO31cbiIsIlxyXG5cclxuXHJcbkBtaXhpbiBob29rLW5hdmJhci1vdmVybGF5LW9wZW5lZHtcclxuXHQuZmUtbmF2YmFyX19uYXZpZ2F0aW9ue1xyXG5cdFx0cm93LWdhcDogZ2V0RmVzcCgnbCcpO1xyXG5cdH1cclxufVxyXG5cclxuXHJcblxyXG5cclxuXHJcbkBtaXhpbiBob29rLW5hdmJhci1taXNje1xyXG5cdFxyXG5cdC5mZS1uYXZfX2l0ZW0tLWFjdGl2ZXtcclxuXHRcdC5mZS1uYXZfX2xpbmt7XHJcblx0XHRcdGJvcmRlci1ib3R0b206IDJweCBkYXNoZWQgdHJhbnNwYXJlbnQ7XHJcblx0XHRcdGJvcmRlci1ib3R0b20tY29sb3I6ICRjb2xvci0tZGFyaztcclxuXHRcdH1cclxuXHR9XHJcblx0XHJcblx0LnNpdGUtc3BlY2lmaWMtLXBhZ2VzX2hvbWV7XHJcblx0XHQuZmUtbmF2YmFyX19vdmVybGF5e1xyXG5cdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xyXG5cdFx0fVxyXG5cdH1cclxuXHRcclxuXHRAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAkZ3JpZC1oZWFkZXItLW5hdi1zaG93LWF0KXtcclxuXHRcdC5mZS1uYXZiYXIge1xyXG5cdFx0IFx0Jl9fY29udGFpbmVye1xyXG5cdFx0XHRcdGZsZXg6IDE7XHJcblx0XHRcdH1cclxuXHRcdFx0Jl9fb3ZlcmxheXtcclxuXHRcdFx0XHRmbGV4LWdyb3c6IDE7XHJcblx0XHRcdH1cclxuXHRcdFx0Jl9fbmF2aWdhdGlvbiB7XHJcblx0XHRcdFx0Y29sdW1uLWdhcDogZ2V0RmVzcCgnbCcpO1xyXG5cdFx0XHRcdFxyXG5cdFx0XHR9XHJcblx0XHR9XHJcblx0fVxyXG5cdFxyXG5cdFxyXG59XHJcbiIsIi8vXG4vLyBQYXJ0aWFsOiBIZWFkZXJcbi8vXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuXG4vLyBWYXJpYWJsZXNcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5cblxuLmhlYWRlcntcblx0Jl9fbWVkaWEtYm94e1xuXHRcdGRpc3BsYXk6IGlubGluZS1mbGV4O1xuXHRcdG1hcmdpbi1sZWZ0OiBhdXRvO1xuXHRcdC8vZmxleC1ncm93OiAxO1xuXHRcdGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG5cdFx0bWFyZ2luLXJpZ2h0OiBnZXRGZXNwKCd4bCcpO1xuXHRcdGNvbHVtbi1nYXA6IGdldEZlc3AoJ20nKTtcblx0fVxufVxuXG4uZmUtaGVhZGVyX19jb250YWluZXJ7XG5cdC5mZS1sb2dve1xuXHRcdCZfX2NvbnRhaW5lcntcblx0XHRcdGZsZXg6IDE7XG5cdFx0fVxuXHRcdCZfX2xpbmt7XG5cdFx0XHR3aWR0aDogMTQwcHg7XG5cdFx0XHRcblx0XHR9XG5cdH1cbn1cblxuQG1peGluIGhvb2staGVhZGVyLWxvZ28tY29udGFpbmVye1xuXHRAbWVkaWEgc2NyZWVuIGFuZCAgKG1pbi13aWR0aDogNjY3cHgpe1xuXHRcdC5mZS1oZWFkZXIge1xuXHRcdFx0Jl9fY29udGFpbmVyIHtcblx0XHRcdFx0LmZlLWxvZ28ge1xuXHRcdFx0XHRcdCZfX2NvbnRhaW5lciB7XG5cdFx0XHRcdFx0XHR3aWR0aDogMTEuNzJ2dztcblx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0XG5cdFx0XHRcdFx0Jl9fbGlua3tcblx0XHRcdFx0XHRcdHdpZHRoOiAxNjBweDtcblx0XHRcdFx0XHRcdFxuXHRcdFx0XHRcdH1cblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdH1cblx0XHRcblx0fVxufVxuXG5cbkBtZWRpYSBzY3JlZW4gYW5kICAobWluLXdpZHRoOiAkZ3JpZC1oZWFkZXItLW5hdi1zaG93LWF0KSB7XG5cblx0LmZlLWhlYWRlciB7XG5cdFx0Jl9fY29udGFpbmVyIHtcblx0XHRcdC5mZS1sb2dvIHtcblx0XHRcdFx0Jl9fY29udGFpbmVyIHtcblx0XHRcdFx0XHRmbGV4LWdyb3c6IDA7XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHR9XG5cdH1cblx0XG5cdC5oZWFkZXIge1xuXHRcdCZfX21lZGlhLWJveCB7XG5cdFx0XHRvcmRlcjogMTA7XG5cdFx0XHRtYXJnaW4tbGVmdDogdW5zZXQ7XG5cdFx0XHRtYXJnaW4tcmlnaHQ6IHVuc2V0O1xuXHRcdFx0ZmxleC1ncm93OiAwO1xuXHRcdFx0XG5cdFx0XHRzdmd7XG5cdFx0XHRcdHdpZHRoOiBhdXRvO1xuXHRcdFx0XHRoZWlnaHQ6IDI0cHg7XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG5cdFxufVxuXG5cblxuXG5AbWl4aW4gaG9vay1oZWFkZXItY29udGFpbmVyKCl7XG5cdFxuXHQuc2l0ZS1zcGVjaWZpYy0tcGFnZXNfaG9tZXtcblx0XHQuZmUtaGVhZGVyIHtcblx0XHRcdCZfX2NvbnRhaW5lciB7XG5cdFx0XHRcdEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6ICRncmlkLWhlYWRlci0tbmF2LXNob3ctYXQpe1xuXHRcdFx0XHRcdGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHR9XG5cdH1cblxufVxuXG5AbWl4aW4gaG9vay1oZWFkZXItbWlzY3tcblx0QG1lZGlhIHNjcmVlbiBhbmQgIChtaW4td2lkdGg6IDE2ODBweCl7XG5cdFx0XG5cdFx0LmZlLWhlYWRlciB7XG5cdFx0XHQmX19jb250YWluZXIge1xuXHRcdFx0XHRoZWlnaHQ6IDQ4cHg7XG5cdFx0XHRcdC5mZS1sb2dvIHtcblx0XHRcdFx0XHQmX19jb250YWluZXIge1xuXHRcdFx0XHRcdFx0d2lkdGg6IGF1dG87XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHRcdCZfX2xpbmsge1xuXHRcdFx0XHRcdFx0d2lkdGg6IDIyNnB4O1xuXHRcdFx0XHRcdH1cblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdH1cblx0XHRcblx0XHRcblx0fVxuXHRcblx0XG5cdEBtZWRpYSBzY3JlZW4gYW5kICAobWluLXdpZHRoOiAxNjgwcHgpe1xuXHRcdC5oZWFkZXJfX3dyYXBwZXJ7XG5cdFx0XHQvL2JhY2tncm91bmQtY29sb3I6ICNmZmY7XG5cdFx0XHRwYWRkaW5nLXRvcDogODZweDtcblx0XHRcdHBhZGRpbmctYm90dG9tOiA1NnB4O1xuXHRcdH1cblx0XHRcblx0XHQuc2l0ZS1zcGVjaWZpYy0tcGFnZXNfaG9tZXtcblx0XHRcdC5oZWFkZXJfX3dyYXBwZXJ7XG5cdFx0XHRcdGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG5cdFx0XHQgXG5cdFx0XHR9XG5cdFx0fVxuXHRcdC5mZS1oZWFkZXIge1xuXHRcdFx0Jl9fY29udGFpbmVyIHtcblx0XHRcdFxuXHRcdFx0fVxuXHRcdH1cblx0XHRcblx0XHRcblx0fVxufVxuIiwiLy8gTmFtZTogICAgICAgICAgICBIZWFkZXJcbi8vIERlc2NyaXB0aW9uOiAgICAgU3R5bGVzIGZvciBoZWFkZXJcbi8vXG4vLyBDb21wb25lbnQ6ICAgICAgIGBoZWFkZXJgXG4vL1xuLy8gTW9kaWZpZXJzOiAgICAgICBgZmUtbW9iaWxlLWZpeGAgLS0tIGlmIGl0cyBpbiB1c2UsIG5lZWQgdG8gYWRkIHRvIDxodG1sPiBwYWRkaW5nLXRvcDogJGhlYWRlci1tb2JpbC1oZWlnaHQ7XG4kaGVhZGVyLWJnLS1jb2xvcjogJGJvZHktYmFja2dyb3VuZC1jb2xvciAhZGVmYXVsdDtcbiRoZWFkZXItbW9iaWwtaGVpZ2h0OiA1NnB4ICFkZWZhdWx0O1xuJGhlYWRlci1oZWlnaHQ6IDEwMHB4ICFkZWZhdWx0O1xuXG4kbG9nby1jb250YWluZXItd2lkdGg6IDEwMHB4ICFkZWZhdWx0O1xuJGxvZ28tY29udGFpbmVyLWhlaWdodDogMTAwJSAhZGVmYXVsdDtcblxuLyoqXG5AZGVwcmVjYXRlZFxuICovXG5oZWFkZXJ7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgYmFja2dyb3VuZDogJGhlYWRlci1iZy0tY29sb3I7XG4gICAgei1pbmRleDogNTtcblxuICAgIC8qKlxuICAgIEBkZXByZWNhdGVkXG4gICAgICovXG4gICAgJi5mZS1tb2JpbGUtZml4IHtcbiAgICAgICAgcG9zaXRpb246IGZpeGVkO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICB0b3A6IDA7XG4gICAgfVxuXG4gICAgLmNvbnRlbnQtY29udGFpbmVye1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgfVxuXG4gICAgLmNvbnRlbnQtd3JhcHBlcixcbiAgICAubmF2aWdhdGlvbi13cmFwcGVyIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICB9XG5cbiAgICAubG9nby1jb250YWluZXJ7XG4gICAgICAgIHdpZHRoOiBmaXQtY29udGVudDtcbiAgICAgICAgd2lkdGg6IC1tb3otZml0LWNvbnRlbnQ7XG4gICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgbWFyZ2luOiAwO1xuXG4gICAgICAgIHN2ZywgaW1ne1xuICAgICAgICAgICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIH1cbiAgICB9XG4gICAgXG59XG5cbi5mZS1oZWFkZXJ7XG4gICAgJl9fY29udGFpbmVye1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBmbGV4LXdyYXA6IG5vd3JhcDtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgXG4gICAgICAgICYtb24tbW9iaWxlLS1maXhlZHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIC5mZS1sb2dve1xuICAgICAgICAgICAgJl9fY29udGFpbmVye1xuICAgIFxuICAgICAgICAgICAgICAgIHdpZHRoOiAkbG9nby1jb250YWluZXItd2lkdGg7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAkbG9nby1jb250YWluZXItaGVpZ2h0O1xuICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG4gICAgICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgIFxuICAgICAgICAgICAgICAgIHN2ZywgaW1ne1xuICAgICAgICAgICAgICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgXG4gICAgICAgICAgICAmX19saW5re1xuICAgIFxuICAgICAgICAgICAgXG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBcbiAgICBcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgXG4gICAgfVxuICAgIFxufVxuXG5AaWYobWl4aW4tZXhpc3RzKGhvb2staGVhZGVyLWxvZ28tY29udGFpbmVyKSkge0BpbmNsdWRlIGhvb2staGVhZGVyLWxvZ28tY29udGFpbmVyKCk7fVxuQGlmKG1peGluLWV4aXN0cyhob29rLWhlYWRlci1sb2dvLWxpbmspKSB7QGluY2x1ZGUgaG9vay1oZWFkZXItbG9nby1saW5rKCk7fVxuQGlmKG1peGluLWV4aXN0cyhob29rLWhlYWRlci1sb2dvKSkge0BpbmNsdWRlIGhvb2staGVhZGVyLWxvZ28oKTt9XG5AaWYobWl4aW4tZXhpc3RzKGhvb2staGVhZGVyLWNvbnRhaW5lcikpIHtAaW5jbHVkZSBob29rLWhlYWRlci1jb250YWluZXIoKTt9XG5cblxuQG1lZGlhIHNjcmVlbiBhbmQgIChtaW4td2lkdGg6IDMyMHB4KSB7XG4gICAgaGVhZGVyIHtcbiAgICAgICAgaGVpZ2h0OiAkaGVhZGVyLW1vYmlsLWhlaWdodDtcbiAgICB9XG4gICAgLmZlLWhlYWRlciB7XG4gICAgICAgIGhlaWdodDogJGhlYWRlci1tb2JpbC1oZWlnaHQ7XG4gICAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAgKG1pbi13aWR0aDogJGdyaWQtaGVhZGVyLS1uYXYtc2hvdy1hdCkge1xuICAgIC8qKlxuICAgIEBkZXByZWNhdGVkXG4gICAgICovXG4gICAgaGVhZGVyIHtcbiAgICAgICAgaGVpZ2h0OiAkaGVhZGVyLWhlaWdodDtcbiAgICBcbiAgICAgICAgLyoqXG4gICAgICAgIEBkZXByZWNhdGVkXG4gICAgICAgICAqL1xuICAgICAgICAmLmZlLW1vYmlsZS1maXgge1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgbGVmdDogYXV0bztcbiAgICAgICAgICAgIHRvcDogYXV0bztcbiAgICAgICAgfVxuICAgIH1cbiAgICBcbiAgICAuZmUtaGVhZGVyIHtcbiAgICAgICAgJl9fY29udGFpbmVyIHtcbiAgICAgICAgICAgIGhlaWdodDogJGhlYWRlci1oZWlnaHQ7XG4gICAgICAgICAgICAuZmUtbG9nbyB7XG4gICAgICAgICAgICAgICAgJl9fY29udGFpbmVyIHtcbiAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG4gICAgXG4gICAgXG4gICAgLmZlLWhlYWRlciB7XG4gICAgICAgICZfX2NvbnRhaW5lciB7XG4gICAgICAgICAgICAmLW9uLW1vYmlsZS0tZml4ZWQge1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgICAgICBsZWZ0OiBhdXRvO1xuICAgICAgICAgICAgICAgIHRvcDogYXV0bztcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbiAgICBcbiAgICBcbn1cbi8vIEhvb2tzXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuLy8gQG1peGluIGhvb2staGVhZGVyLWNvbnRhaW5lcigpe31cbi8vIEBtaXhpbiBob29rLWhlYWRlci1sb2dvKCl7fVxuLy8gQG1peGluIGhvb2staGVhZGVyLWxvZ28tY29udGFpbmVyKCl7fVxuLy8gQG1peGluIGhvb2staGVhZGVyLWxvZ28tbGluaygpe31cbi8vIEBtaXhpbiBob29rLWhlYWRlci1taXNjKCl7fVxuXG5AaWYobWl4aW4tZXhpc3RzKGhvb2staGVhZGVyLW1pc2MpKSB7QGluY2x1ZGUgaG9vay1oZWFkZXItbWlzYygpO31cbiIsIi8vXG4vLyBQYXJ0aWFsOiBGb290ZXJcbi8vXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuXG4vLyBWYXJpYWJsZXNcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5cbi5mb290ZXJ7XG5cdG1hcmdpbi10b3A6IGdldFNwYWNlKCd4bCcpO1xuXHQmLWNvbnRlbnQtc2VjdGlvbntcblx0XHRkaXNwbGF5OiBncmlkO1xuXHRcdGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyO1xuXHRcdGdyaWQtdGVtcGxhdGUtcm93czogYXV0bztcblx0XHRncmlkLWdhcDogZ2V0U3BhY2UoJ3hsJyk7XG5cdH1cblx0XG5cdCYtYmxvY2tfX3RpdGxle1xuXHRcdGZvbnQtc2l6ZTogZmVmcyhzdGVwLS1kLTIpO1xuXHRcdGxldHRlci1zcGFjaW5nOiAycHg7XG5cdFx0dGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcblx0XHRjb2xvcjogJGNvbG9yLS1wcmltYXJ5O1xuXHRcdGZvbnQtd2VpZ2h0OiA2MDA7XG5cdFx0XG5cdFx0JiArIC5mZS1saXN0e1xuXHRcdFx0bWFyZ2luLXRvcDogZ2V0U3BhY2UoJ3MnKTtcblx0XHR9XG5cdH1cblx0XG5cdC5jdGEtbG9nb3RleHR7XG5cdFx0ZGlzcGxheTogZmxleDtcblx0XHRmbGV4LXdyYXA6IHdyYXA7XG5cdFx0YWxpZ24taXRlbXM6IGZsZXgtZW5kO1xuXHRcdGZvbnQtc2l6ZTogZmVmcyhzdGVwLS11LTMpO1xuXHRcdGZvbnQtd2VpZ2h0OiAyNzU7XG5cdFx0bGluZS1oZWlnaHQ6IDEyNSU7XG5cdFx0Y29sb3I6ICRjb2xvci0tc2Vjb25kYXJ5O1xuXHRcdGxldHRlci1zcGFjaW5nOiAwLjAzZW07XG5cdFx0XG5cdFx0XG5cdFx0c3Zne1xuXHRcdFx0aGVpZ2h0OiAzMnB4O1xuXHRcdFx0d2lkdGg6IGF1dG87XG5cdFx0fVxuXHR9XG5cdFxuXHQmLWN0YS13cmFwcGVye1xuXHRcdGRpc3BsYXk6IGZsZXg7XG5cdFx0ZmxleC13cmFwOiB3cmFwO1xuXHRcdGdhcDogZ2V0U3BhY2UoJ3MnKTtcblx0fVxuXHRcblx0LmZlLWxpc3QgLmZlLWxpbmt7XG5cdFx0Zm9udC1zaXplOiBmZWZzKHN0ZXAtLWQtMSk7XG5cdFx0bGluZS1oZWlnaHQ6IDEyNSU7XG5cdFx0Zm9udC13ZWlnaHQ6IDUwMDtcblx0fVxufVxuXG4uZmUtY29weXJpZ2h0e1xuXHRkaXNwbGF5OiBmbGV4O1xuXHRmbGV4LXdyYXA6IHdyYXA7XG5cdGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2Vlbjtcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcblx0Ym9yZGVyLXRvcDogc29saWQgMXB4ICRjb2xvci0tc2Vjb25kYXJ5O1xuXHRwYWRkaW5nLXRvcDogZ2V0U3BhY2UoJ3MnKTtcblx0cGFkZGluZy1ib3R0b206IGdldFNwYWNlKCdzJyk7XG5cdG1hcmdpbjogMCBhdXRvO1xuXHRtYXJnaW4tdG9wOiBnZXRTcGFjZSgncycpO1xuXHRyb3ctZ2FwOiBnZXRTcGFjZSgneHMnKTtcblx0Ji1sb2dvX193cmFwcGVye1xuXHRcdGhlaWdodDogMzJweDtcblx0XHRzdmd7XG5cdFx0XHRoZWlnaHQ6IDEwMCU7XG5cdFx0XHR3aWR0aDogYXV0bztcblx0XHR9XG5cdH1cblx0Ji1jb250ZW50X193cmFwcGVye1xuXHRcdGNvbG9yOiAjNTU1O1xuXHRcdGZvbnQtc2l6ZTogZmVmcyhzdGVwLS1kLTEpO1xuXHRcdGxpbmUtaGVpZ2h0OiAxMTUlO1xuXHRcdGZvbnQtd2VpZ2h0OiA1MDA7XG5cdFx0ZmxleC1iYXNpczogMTAwJTtcblx0XHRvcmRlcjogMTA7XG5cdH1cblx0XG5cdCZfX21lZGlhLWJveHtcblx0XHRhbGlnbi1pdGVtczogY2VudGVyO1xuXHRcdGRpc3BsYXk6IGZsZXg7XG5cdFx0ZmxleC13cmFwOiBub3dyYXA7XG5cdFx0Y29sdW1uLWdhcDogZ2V0U3BhY2UoJ3hzJyk7XG5cdH1cbn1cblxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NjdweCkge1xuXHQuZm9vdGVyIHtcblx0XHQmLWN0YS13cmFwcGVyIHtcblx0XHRcdGdyaWQtY29sdW1uOiAxLzM7XG5cdFx0fVxuXHRcdFxuXHRcdCYtY29udGVudC1zZWN0aW9ue1xuXHRcdFx0Z3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnIgMmZyO1xuXHRcdH1cblx0fVxuXHRcblx0LmN0YS1sb2dvdGV4dHtcblx0XHRmbGV4LWJhc2lzOiAxMDAlO1xuXHR9XG5cdFxuXHQuZmUtY29weXJpZ2h0IHtcblx0XHQmLWNvbnRlbnRfX3dyYXBwZXIge1xuXHRcdFx0ZmxleC1iYXNpczogYXV0bztcblx0XHR9XG5cdH1cblx0XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA4MzRweCkge1xuXHQuZmUtY29weXJpZ2h0IHtcblx0XHRjb2x1bW4tZ2FwOiBnZXRTcGFjZSgneHMnKTtcblx0XHQmLWNvbnRlbnRfX3dyYXBwZXJ7XG5cdFx0XHRtYXJnaW4tbGVmdDogYXV0bztcblx0XHRcdG9yZGVyOiAyO1xuXHRcdH1cblx0fVxufVxuXG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEzNjZweCkge1xuXHQuZm9vdGVyIHtcblx0XHQmLWN0YS13cmFwcGVyIHtcblx0XHRcdGdyaWQtY29sdW1uLWVuZDogMjtcblx0XHR9XG5cdFx0XG5cdFx0Ji1jb250ZW50LXNlY3Rpb257XG5cdFx0XHRncmlkLXRlbXBsYXRlLWNvbHVtbnM6IG1pbi1jb250ZW50IDFmciBhdXRvO1xuXHRcdFx0YWxpZ24tY29udGVudDogc3RhcnQ7YWxpZ24taXRlbXM6IHN0YXJ0O1xuXHRcdFx0XG5cdFx0fVxuXHRcdFxuXHRcdC5jdGEtbG9nb3RleHR7XG5cdFx0XHRmbGV4LXdyYXA6IG5vd3JhcDtcblx0XHRcdHdpZHRoOiBtYXgtY29udGVudDtcblx0XHR9XG5cdH1cblx0XG5cdFxuXHRcblx0XG59XG5cblxuIiwiZm9vdGVye1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBib3R0b206IDA7XG4gICAgbGVmdDogMDtcbiAgICBoZWlnaHQ6ICRmb290ZXItaGVpZ2h0O1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgICBjb2xvcjogJGZvb3Rlci1jb2xvcjtcbiAgICBiYWNrZ3JvdW5kOiAkZm9vdGVyLWJnLWNvbG9yO1xuICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgICBmb250LXNpemU6ICRmb290ZXItZm9udC1zaXplO1xuICAgIGZvbnQtd2VpZ2h0OiAkZm9vdGVyLWZvbnQtd2VpZ2h0O1xuICAgIGZvbnQtZmFtaWx5OiAkZm9vdGVyLWZvbnQtZmFtaWx5O1xuICAgIGxpbmUtaGVpZ2h0OiAkZm9vdGVyLWxpbmUtaGVpZ2h0O1xuXG59XG5cbi5mb290ZXIsXG4uZmUtZm9vdGVye1xuICAgIC5sb2dve1xuICAgICAgICAmLWNvbnRhaW5lcntcbiAgICAgICAgICAgICYtLWZvb3RlcntcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAmLWxpbmt7XG4gICAgICAgICAgICBzdmd7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbiAgICAmX19jb250YWluZXJ7fVxuICAgICZfX3dyYXBwZXJ7fVxuICAgICZfX2NvbnRlbnR7XG4gICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgZmxleDogMTtcbiAgICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgcGFkZGluZzogJGZvb3Rlci1wYWRkaW5nO1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIH1cbiAgICBcbiAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2stZm9vdGVyLW1pc2MpKSB7QGluY2x1ZGUgaG9vay1mb290ZXItbWlzYygpO31cbiAgICBcbn1cblxuLmZlLWNvcHlyaWdodHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgZm9udC1zaXplOiBmZWZzKHN0ZXAtLWQtMSk7XG4gICAgXG4gICAgQGlmKG1peGluLWV4aXN0cyhob29rLWZvb3Rlci1jb3B5cmlnaHQtY29udGFpbmVyKSkge0BpbmNsdWRlIGhvb2stZm9vdGVyLWNvcHlyaWdodC1jb250YWluZXIoKTt9XG4gICAgYXtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICBjb2xvcjogaW5oZXJpdDtcbiAgICAgICAgLmZlLXJlZmVyZXItbGlua3tcbiAgICAgICAgXG4gICAgICAgIH1cbiAgICB9XG4gICAgXG4gICAgJl9fY29udGVudHtcbiAgICBcbiAgICAgICAgQGlmKG1peGluLWV4aXN0cyhob29rLWZvb3Rlci1jb3B5cmlnaHQtY29udGVudCkpIHtAaW5jbHVkZSBob29rLWZvb3Rlci1jb3B5cmlnaHQtY29udGVudCgpO31cbiAgICB9XG4gICAgXG4gICAgQGlmKG1peGluLWV4aXN0cyhob29rLWZvb3Rlci1jb3B5cmlnaHQtbWlzYykpIHtAaW5jbHVkZSBob29rLWZvb3Rlci1jb3B5cmlnaHQtbWlzYygpO31cbn1cblxuXG4vLyBIb29rc1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbi8vIEBtaXhpbiBob29rLWZvb3Rlci1taXNjKCl7fVxuLy8gQG1peGluIGhvb2stZm9vdGVyLWNvcHlyaWdodC1taXNjKCl7fVxuLy8gQG1peGluIGhvb2stZm9vdGVyLWNvcHlyaWdodC1jb250YWluZXIoKXt9XG4vLyBAbWl4aW4gaG9vay1mb290ZXItY29weXJpZ2h0LWNvbnRlbnQoKXt9XG5cblxuIl0sIm5hbWVzIjpbXSwic291cmNlUm9vdCI6IiJ9*/